@switchbot/homebridge-switchbot 3.8.3 → 4.0.0-beta.1

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.
Files changed (205) hide show
  1. package/.github/npm-version-script.cjs +81 -0
  2. package/.github/workflows/beta-release.yml +12 -4
  3. package/CHANGELOG.md +15 -1
  4. package/config.schema.json +583 -937
  5. package/dist/device/blindtilt.d.ts +1 -4
  6. package/dist/device/blindtilt.d.ts.map +1 -1
  7. package/dist/device/blindtilt.js +68 -66
  8. package/dist/device/blindtilt.js.map +1 -1
  9. package/dist/device/bot.d.ts +1 -4
  10. package/dist/device/bot.d.ts.map +1 -1
  11. package/dist/device/bot.js +63 -59
  12. package/dist/device/bot.js.map +1 -1
  13. package/dist/device/ceilinglight.d.ts +1 -4
  14. package/dist/device/ceilinglight.d.ts.map +1 -1
  15. package/dist/device/ceilinglight.js +56 -65
  16. package/dist/device/ceilinglight.js.map +1 -1
  17. package/dist/device/colorbulb.d.ts +1 -4
  18. package/dist/device/colorbulb.d.ts.map +1 -1
  19. package/dist/device/colorbulb.js +73 -80
  20. package/dist/device/colorbulb.js.map +1 -1
  21. package/dist/device/contact.d.ts +1 -4
  22. package/dist/device/contact.d.ts.map +1 -1
  23. package/dist/device/contact.js +38 -38
  24. package/dist/device/contact.js.map +1 -1
  25. package/dist/device/curtain.d.ts +1 -4
  26. package/dist/device/curtain.d.ts.map +1 -1
  27. package/dist/device/curtain.js +60 -60
  28. package/dist/device/curtain.js.map +1 -1
  29. package/dist/device/device.d.ts +6 -6
  30. package/dist/device/device.d.ts.map +1 -1
  31. package/dist/device/device.js +86 -20
  32. package/dist/device/device.js.map +1 -1
  33. package/dist/device/fan.d.ts +1 -4
  34. package/dist/device/fan.d.ts.map +1 -1
  35. package/dist/device/fan.js +50 -51
  36. package/dist/device/fan.js.map +1 -1
  37. package/dist/device/hub.d.ts +1 -4
  38. package/dist/device/hub.d.ts.map +1 -1
  39. package/dist/device/hub.js +48 -48
  40. package/dist/device/hub.js.map +1 -1
  41. package/dist/device/humidifier.d.ts +1 -4
  42. package/dist/device/humidifier.d.ts.map +1 -1
  43. package/dist/device/humidifier.js +53 -55
  44. package/dist/device/humidifier.js.map +1 -1
  45. package/dist/device/iosensor.d.ts +1 -4
  46. package/dist/device/iosensor.d.ts.map +1 -1
  47. package/dist/device/iosensor.js +35 -35
  48. package/dist/device/iosensor.js.map +1 -1
  49. package/dist/device/lightstrip.d.ts +1 -4
  50. package/dist/device/lightstrip.d.ts.map +1 -1
  51. package/dist/device/lightstrip.js +57 -65
  52. package/dist/device/lightstrip.js.map +1 -1
  53. package/dist/device/lock.d.ts +1 -4
  54. package/dist/device/lock.d.ts.map +1 -1
  55. package/dist/device/lock.js +38 -39
  56. package/dist/device/lock.js.map +1 -1
  57. package/dist/device/meter.d.ts +1 -4
  58. package/dist/device/meter.d.ts.map +1 -1
  59. package/dist/device/meter.js +35 -35
  60. package/dist/device/meter.js.map +1 -1
  61. package/dist/device/meterplus.d.ts +1 -4
  62. package/dist/device/meterplus.d.ts.map +1 -1
  63. package/dist/device/meterplus.js +35 -35
  64. package/dist/device/meterplus.js.map +1 -1
  65. package/dist/device/motion.d.ts +1 -4
  66. package/dist/device/motion.d.ts.map +1 -1
  67. package/dist/device/motion.js +27 -27
  68. package/dist/device/motion.js.map +1 -1
  69. package/dist/device/plug.d.ts +1 -4
  70. package/dist/device/plug.d.ts.map +1 -1
  71. package/dist/device/plug.js +32 -32
  72. package/dist/device/plug.js.map +1 -1
  73. package/dist/device/robotvacuumcleaner.d.ts +1 -4
  74. package/dist/device/robotvacuumcleaner.d.ts.map +1 -1
  75. package/dist/device/robotvacuumcleaner.js +39 -40
  76. package/dist/device/robotvacuumcleaner.js.map +1 -1
  77. package/dist/device/waterdetector.d.ts +1 -4
  78. package/dist/device/waterdetector.d.ts.map +1 -1
  79. package/dist/device/waterdetector.js +28 -28
  80. package/dist/device/waterdetector.js.map +1 -1
  81. package/dist/irdevice/airconditioner.d.ts +1 -1
  82. package/dist/irdevice/airconditioner.d.ts.map +1 -1
  83. package/dist/irdevice/airconditioner.js +31 -32
  84. package/dist/irdevice/airconditioner.js.map +1 -1
  85. package/dist/irdevice/airpurifier.d.ts +1 -1
  86. package/dist/irdevice/airpurifier.d.ts.map +1 -1
  87. package/dist/irdevice/airpurifier.js +11 -12
  88. package/dist/irdevice/airpurifier.js.map +1 -1
  89. package/dist/irdevice/camera.d.ts +1 -1
  90. package/dist/irdevice/camera.d.ts.map +1 -1
  91. package/dist/irdevice/camera.js +9 -10
  92. package/dist/irdevice/camera.js.map +1 -1
  93. package/dist/irdevice/fan.d.ts +1 -1
  94. package/dist/irdevice/fan.d.ts.map +1 -1
  95. package/dist/irdevice/fan.js +22 -23
  96. package/dist/irdevice/fan.js.map +1 -1
  97. package/dist/irdevice/irdevice.d.ts +6 -6
  98. package/dist/irdevice/irdevice.d.ts.map +1 -1
  99. package/dist/irdevice/irdevice.js +28 -14
  100. package/dist/irdevice/irdevice.js.map +1 -1
  101. package/dist/irdevice/light.d.ts +1 -1
  102. package/dist/irdevice/light.d.ts.map +1 -1
  103. package/dist/irdevice/light.js +12 -13
  104. package/dist/irdevice/light.js.map +1 -1
  105. package/dist/irdevice/other.d.ts +1 -1
  106. package/dist/irdevice/other.d.ts.map +1 -1
  107. package/dist/irdevice/other.js +12 -15
  108. package/dist/irdevice/other.js.map +1 -1
  109. package/dist/irdevice/tv.d.ts +1 -1
  110. package/dist/irdevice/tv.d.ts.map +1 -1
  111. package/dist/irdevice/tv.js +27 -28
  112. package/dist/irdevice/tv.js.map +1 -1
  113. package/dist/irdevice/vacuumcleaner.d.ts +1 -1
  114. package/dist/irdevice/vacuumcleaner.d.ts.map +1 -1
  115. package/dist/irdevice/vacuumcleaner.js +9 -10
  116. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  117. package/dist/irdevice/waterheater.d.ts +1 -1
  118. package/dist/irdevice/waterheater.d.ts.map +1 -1
  119. package/dist/irdevice/waterheater.js +9 -10
  120. package/dist/irdevice/waterheater.js.map +1 -1
  121. package/dist/platform.d.ts +9 -22
  122. package/dist/platform.d.ts.map +1 -1
  123. package/dist/platform.js +154 -260
  124. package/dist/platform.js.map +1 -1
  125. package/dist/settings.d.ts +64 -82
  126. package/dist/settings.d.ts.map +1 -1
  127. package/dist/settings.js +0 -20
  128. package/dist/settings.js.map +1 -1
  129. package/dist/utils.d.ts +1 -102
  130. package/dist/utils.d.ts.map +1 -1
  131. package/dist/utils.js +0 -105
  132. package/dist/utils.js.map +1 -1
  133. package/docs/assets/highlight.css +42 -0
  134. package/docs/assets/main.js +1 -1
  135. package/docs/functions/default.html +1 -1
  136. package/docs/index.html +61 -50
  137. package/docs/media/security-privacy-bluetooth.png +0 -0
  138. package/package.json +5 -7
  139. package/src/device/blindtilt.ts +74 -74
  140. package/src/device/bot.ts +68 -67
  141. package/src/device/ceilinglight.ts +59 -70
  142. package/src/device/colorbulb.ts +79 -88
  143. package/src/device/contact.ts +40 -43
  144. package/src/device/curtain.ts +66 -68
  145. package/src/device/device.ts +86 -40
  146. package/src/device/fan.ts +52 -56
  147. package/src/device/hub.ts +50 -53
  148. package/src/device/humidifier.ts +56 -61
  149. package/src/device/iosensor.ts +37 -40
  150. package/src/device/lightstrip.ts +62 -72
  151. package/src/device/lock.ts +41 -45
  152. package/src/device/meter.ts +37 -40
  153. package/src/device/meterplus.ts +37 -40
  154. package/src/device/motion.ts +29 -32
  155. package/src/device/plug.ts +34 -37
  156. package/src/device/robotvacuumcleaner.ts +41 -49
  157. package/src/device/waterdetector.ts +30 -33
  158. package/src/irdevice/airconditioner.ts +33 -35
  159. package/src/irdevice/airpurifier.ts +12 -13
  160. package/src/irdevice/camera.ts +10 -11
  161. package/src/irdevice/fan.ts +24 -25
  162. package/src/irdevice/irdevice.ts +31 -27
  163. package/src/irdevice/light.ts +14 -15
  164. package/src/irdevice/other.ts +14 -17
  165. package/src/irdevice/tv.ts +28 -29
  166. package/src/irdevice/vacuumcleaner.ts +10 -11
  167. package/src/irdevice/waterheater.ts +10 -11
  168. package/src/platform.ts +178 -287
  169. package/src/settings.ts +67 -88
  170. package/src/utils.ts +2 -106
  171. package/dist/types/bledevicestatus.d.ts +0 -281
  172. package/dist/types/bledevicestatus.d.ts.map +0 -1
  173. package/dist/types/bledevicestatus.js +0 -2
  174. package/dist/types/bledevicestatus.js.map +0 -1
  175. package/dist/types/devicelist.d.ts +0 -89
  176. package/dist/types/devicelist.d.ts.map +0 -1
  177. package/dist/types/devicelist.js +0 -6
  178. package/dist/types/devicelist.js.map +0 -1
  179. package/dist/types/deviceresponse.d.ts +0 -13
  180. package/dist/types/deviceresponse.d.ts.map +0 -1
  181. package/dist/types/deviceresponse.js +0 -2
  182. package/dist/types/deviceresponse.js.map +0 -1
  183. package/dist/types/devicestatus.d.ts +0 -149
  184. package/dist/types/devicestatus.d.ts.map +0 -1
  185. package/dist/types/devicestatus.js +0 -3
  186. package/dist/types/devicestatus.js.map +0 -1
  187. package/dist/types/devicewebhookstatus.d.ts +0 -156
  188. package/dist/types/devicewebhookstatus.d.ts.map +0 -1
  189. package/dist/types/devicewebhookstatus.js +0 -2
  190. package/dist/types/devicewebhookstatus.js.map +0 -1
  191. package/dist/types/irdevicelist.d.ts +0 -10
  192. package/dist/types/irdevicelist.d.ts.map +0 -1
  193. package/dist/types/irdevicelist.js +0 -2
  194. package/dist/types/irdevicelist.js.map +0 -1
  195. package/dist/types/pushbody.d.ts +0 -6
  196. package/dist/types/pushbody.d.ts.map +0 -1
  197. package/dist/types/pushbody.js +0 -2
  198. package/dist/types/pushbody.js.map +0 -1
  199. package/src/types/bledevicestatus.ts +0 -303
  200. package/src/types/devicelist.ts +0 -124
  201. package/src/types/deviceresponse.ts +0 -14
  202. package/src/types/devicestatus.ts +0 -178
  203. package/src/types/devicewebhookstatus.ts +0 -191
  204. package/src/types/irdevicelist.ts +0 -15
  205. package/src/types/pushbody.ts +0 -9
@@ -1,12 +1,12 @@
1
1
  import { hostname } from 'node:os';
2
+ import { debounceTime, interval, skipWhile, Subject, take, tap } from 'rxjs';
3
+ import { formatDeviceIdAsMac } from '../utils.js';
4
+ import { deviceBase } from './device.js';
2
5
  /*
3
6
  * For Testing Locally:
4
7
  * import { SwitchBotBLEModel, SwitchBotBLEModelName } from '/Users/Shared/GitHub/OpenWonderLabs/node-switchbot/dist/index.js';
5
8
  */
6
9
  import { SwitchBotBLEModel, SwitchBotBLEModelName } from 'node-switchbot';
7
- import { debounceTime, interval, skipWhile, Subject, take, tap } from 'rxjs';
8
- import { formatDeviceIdAsMac } from '../utils.js';
9
- import { deviceBase } from './device.js';
10
10
  export class Curtain extends deviceBase {
11
11
  platform;
12
12
  // Services
@@ -56,7 +56,7 @@ export class Curtain extends deviceBase {
56
56
  });
57
57
  // Initialize WindowCovering CurrentPosition
58
58
  this.WindowCovering.Service.getCharacteristic(this.hap.Characteristic.CurrentPosition).setProps({
59
- minStep: device.curtain?.set_minStep ?? 1,
59
+ minStep: device.set_minStep ?? 1,
60
60
  minValue: 0,
61
61
  maxValue: 100,
62
62
  validValueRanges: [0, 100],
@@ -65,7 +65,7 @@ export class Curtain extends deviceBase {
65
65
  });
66
66
  // Initialize WindowCovering TargetPosition
67
67
  this.WindowCovering.Service.getCharacteristic(this.hap.Characteristic.TargetPosition).setProps({
68
- minStep: device.curtain?.set_minStep ?? 1,
68
+ minStep: device.set_minStep ?? 1,
69
69
  minValue: 0,
70
70
  maxValue: 100,
71
71
  validValueRanges: [0, 100],
@@ -97,7 +97,7 @@ export class Curtain extends deviceBase {
97
97
  return this.Battery.ChargingState;
98
98
  });
99
99
  // Initialize LightSensor Service
100
- if (device.curtain?.hide_lightsensor || (device.deviceType !== 'curtain' && device.deviceType !== 'curtain3')) {
100
+ if (device.hide_lightsensor || (device.deviceType !== 'curtain' && device.deviceType !== 'curtain3')) {
101
101
  if (this.LightSensor?.Service) {
102
102
  this.debugLog('Removing Light Sensor Service');
103
103
  this.LightSensor.Service = this.accessory.getService(this.hap.Service.LightSensor);
@@ -119,7 +119,7 @@ export class Curtain extends deviceBase {
119
119
  });
120
120
  }
121
121
  // Initialize Open Mode Switch Service
122
- if (!device.curtain?.silentModeSwitch) {
122
+ if (!device.silentModeSwitch) {
123
123
  if (this.OpenModeSwitch?.Service) {
124
124
  this.debugLog('Removing Open Mode Switch Service');
125
125
  this.OpenModeSwitch.Service = this.accessory.getService(this.hap.Service.Switch);
@@ -145,7 +145,7 @@ export class Curtain extends deviceBase {
145
145
  this.OpenModeSwitch.Service.getCharacteristic(this.hap.Characteristic.On).onSet(this.OpenModeSwitchSet.bind(this));
146
146
  }
147
147
  // Initialize Close Mode Switch Service
148
- if (!device.curtain?.silentModeSwitch) {
148
+ if (!device.silentModeSwitch) {
149
149
  if (this.CloseModeSwitch?.Service) {
150
150
  this.debugLog('Removing Close Mode Switch Service');
151
151
  this.CloseModeSwitch.Service = this.accessory.getService(this.hap.Service.Switch);
@@ -176,7 +176,7 @@ export class Curtain extends deviceBase {
176
176
  this.refreshStatus();
177
177
  }
178
178
  catch (e) {
179
- this.errorLog(`failed to retrieve initial values and update Homekit, Error: ${e}`);
179
+ this.errorLog(`failed to retrieve initial values and update Homekit, Error: ${e.message ?? e}`);
180
180
  }
181
181
  // regisiter webhook event handler if enabled
182
182
  try {
@@ -184,7 +184,7 @@ export class Curtain extends deviceBase {
184
184
  this.registerWebhook();
185
185
  }
186
186
  catch (e) {
187
- this.errorLog(`failed to registerWebhook, Error: ${e}`);
187
+ this.errorLog(`failed to registerWebhook, Error: ${e.message ?? e}`);
188
188
  }
189
189
  // regisiter platform BLE event handler if enabled
190
190
  try {
@@ -192,7 +192,7 @@ export class Curtain extends deviceBase {
192
192
  this.registerPlatformBLE();
193
193
  }
194
194
  catch (e) {
195
- this.errorLog(`failed to registerPlatformBLE, Error: ${e}`);
195
+ this.errorLog(`failed to registerPlatformBLE, Error: ${e.message ?? e}`);
196
196
  }
197
197
  // History
198
198
  this.history();
@@ -302,9 +302,9 @@ export class Curtain extends deviceBase {
302
302
  this.WindowCovering.CurrentPosition = 100 - this.serviceData.position;
303
303
  await this.getCurrentPostion();
304
304
  // CurrentAmbientLightLevel
305
- if (!this.device.curtain?.hide_lightsensor && this.LightSensor?.Service) {
306
- const set_minLux = this.device.curtain?.set_minLux ?? 1;
307
- const set_maxLux = this.device.curtain?.set_maxLux ?? 6001;
305
+ if (!this.device.hide_lightsensor && this.LightSensor?.Service) {
306
+ const set_minLux = this.device.set_minLux ?? 1;
307
+ const set_maxLux = this.device.set_maxLux ?? 6001;
308
308
  const lightLevel = this.serviceData.lightLevel;
309
309
  this.LightSensor.CurrentAmbientLightLevel = await this.getLightLevel(lightLevel, set_minLux, set_maxLux, 19);
310
310
  this.debugLog(`LightLevel: ${this.serviceData.lightLevel}, CurrentAmbientLightLevel: ${this.LightSensor.CurrentAmbientLightLevel}`);
@@ -325,9 +325,9 @@ export class Curtain extends deviceBase {
325
325
  this.WindowCovering.CurrentPosition = 100 - this.deviceStatus.slidePosition;
326
326
  await this.getCurrentPostion();
327
327
  // Brightness
328
- if (!this.device.curtain?.hide_lightsensor && this.LightSensor?.Service) {
329
- const set_minLux = this.device.curtain?.set_minLux ?? 1;
330
- const set_maxLux = this.device.curtain?.set_maxLux ?? 6001;
328
+ if (!this.device.hide_lightsensor && this.LightSensor?.Service) {
329
+ const set_minLux = this.device.set_minLux ?? 1;
330
+ const set_maxLux = this.device.set_maxLux ?? 6001;
331
331
  const lightLevel = this.deviceStatus.lightLevel === 'bright' ? set_maxLux : set_minLux;
332
332
  this.LightSensor.CurrentAmbientLightLevel = await this.getLightLevel(lightLevel, set_minLux, set_maxLux, 2);
333
333
  await this.debugLog(`CurrentAmbientLightLevel: ${this.LightSensor.CurrentAmbientLightLevel}`);
@@ -390,15 +390,15 @@ export class Curtain extends deviceBase {
390
390
  }
391
391
  async BLERefreshStatus() {
392
392
  await this.debugLog('BLERefreshStatus');
393
- const switchbot = await this.switchbotBLE();
394
- if (switchbot === undefined) {
395
- await this.BLERefreshConnection(switchbot);
393
+ const switchBotBLE = await this.switchbotBLE();
394
+ if (switchBotBLE === undefined) {
395
+ await this.BLERefreshConnection(switchBotBLE);
396
396
  }
397
397
  else {
398
398
  // Start to monitor advertisement packets
399
399
  (async () => {
400
400
  // Start to monitor advertisement packets
401
- const serviceData = await this.monitorAdvertisementPackets(switchbot);
401
+ const serviceData = await this.monitorAdvertisementPackets(switchBotBLE);
402
402
  // Update HomeKit
403
403
  if ((serviceData.model === SwitchBotBLEModel.Curtain || SwitchBotBLEModel.Curtain3)
404
404
  && (serviceData.modelName === SwitchBotBLEModelName.Curtain || SwitchBotBLEModelName.Curtain3)) {
@@ -407,8 +407,8 @@ export class Curtain extends deviceBase {
407
407
  await this.updateHomeKitCharacteristics();
408
408
  }
409
409
  else {
410
- await this.errorLog(`failed to get serviceData, serviceData: ${serviceData}`);
411
- await this.BLERefreshConnection(switchbot);
410
+ await this.errorLog(`failed to get serviceData, serviceData: ${JSON.stringify(serviceData)}`);
411
+ await this.BLERefreshConnection(switchBotBLE);
412
412
  }
413
413
  })();
414
414
  }
@@ -416,18 +416,18 @@ export class Curtain extends deviceBase {
416
416
  async openAPIRefreshStatus() {
417
417
  await this.debugLog('openAPIRefreshStatus');
418
418
  try {
419
- const { body, statusCode } = await this.deviceRefreshStatus();
420
- const deviceStatus = await body.json();
421
- await this.debugLog(`statusCode: ${statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
422
- if (await this.successfulStatusCodes(statusCode, deviceStatus)) {
423
- await this.debugSuccessLog(`statusCode: ${statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
419
+ const { body } = await this.deviceRefreshStatus();
420
+ const deviceStatus = await body;
421
+ await this.debugLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
422
+ if (await this.successfulStatusCodes(deviceStatus)) {
423
+ await this.debugSuccessLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
424
424
  this.deviceStatus = deviceStatus.body;
425
425
  await this.openAPIparseStatus();
426
426
  await this.updateHomeKitCharacteristics();
427
427
  }
428
428
  else {
429
- await this.debugWarnLog(`statusCode: ${statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
430
- await this.debugWarnLog(statusCode, deviceStatus);
429
+ await this.debugWarnLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
430
+ await this.debugWarnLog(deviceStatus);
431
431
  }
432
432
  }
433
433
  catch (e) {
@@ -446,7 +446,7 @@ export class Curtain extends deviceBase {
446
446
  await this.updateHomeKitCharacteristics();
447
447
  }
448
448
  catch (e) {
449
- await this.errorLog(`failed to handle webhook. Received: ${JSON.stringify(context)} Error: ${e}`);
449
+ await this.errorLog(`failed to handle webhook. Received: ${JSON.stringify(context)} Error: ${e.message ?? e}`);
450
450
  }
451
451
  };
452
452
  }
@@ -470,7 +470,7 @@ export class Curtain extends deviceBase {
470
470
  await this.updateHomeKitCharacteristics();
471
471
  }
472
472
  catch (e) {
473
- await this.errorLog(`failed to handle BLE. Received: ${JSON.stringify(context)} Error: ${e}`);
473
+ await this.errorLog(`failed to handle BLE. Received: ${JSON.stringify(context)} Error: ${e.message ?? e}`);
474
474
  }
475
475
  };
476
476
  }
@@ -510,7 +510,7 @@ export class Curtain extends deviceBase {
510
510
  async BLEpushChanges() {
511
511
  await this.debugLog('BLEpushChanges');
512
512
  if (this.WindowCovering.TargetPosition !== this.WindowCovering.CurrentPosition) {
513
- const switchbot = await this.platform.connectBLE(this.accessory, this.device);
513
+ const switchBotBLE = await this.platform.connectBLE(this.accessory, this.device);
514
514
  try {
515
515
  const formattedDeviceId = formatDeviceIdAsMac(this.device.deviceId);
516
516
  this.device.bleMac = formattedDeviceId;
@@ -518,14 +518,15 @@ export class Curtain extends deviceBase {
518
518
  const { setPositionMode, Mode } = await this.setPerformance();
519
519
  const adjustedMode = setPositionMode === 1 ? 0x01 : 0xFF;
520
520
  await this.debugLog(`Mode: ${Mode}, setPositionMode: ${setPositionMode}`);
521
- if (switchbot !== false) {
522
- switchbot
521
+ if (switchBotBLE !== false) {
522
+ switchBotBLE
523
523
  .discover({ model: this.device.bleModel, quick: true, id: this.device.bleMac })
524
524
  .then(async (device_list) => {
525
+ const deviceList = device_list;
525
526
  return await this.retryBLE({
526
527
  max: await this.maxRetryBLE(),
527
528
  fn: async () => {
528
- return await device_list[0].runToPos(100 - Number(this.WindowCovering.TargetPosition), adjustedMode);
529
+ return await deviceList[0].runToPos(100 - Number(this.WindowCovering.TargetPosition), adjustedMode);
529
530
  },
530
531
  });
531
532
  })
@@ -540,7 +541,7 @@ export class Curtain extends deviceBase {
540
541
  });
541
542
  }
542
543
  else {
543
- await this.errorLog(`wasn't able to establish BLE Connection, node-switchbot: ${switchbot}`);
544
+ await this.errorLog(`wasn't able to establish BLE Connection, node-switchbot: ${JSON.stringify(switchBotBLE)}`);
544
545
  await this.BLEPushConnection();
545
546
  }
546
547
  }
@@ -562,30 +563,29 @@ export class Curtain extends deviceBase {
562
563
  const adjustedMode = setPositionMode || 'ff';
563
564
  let bodyChange;
564
565
  if (this.WindowCovering.HoldPosition) {
565
- bodyChange = JSON.stringify({
566
+ bodyChange = {
566
567
  command: 'pause',
567
568
  parameter: 'default',
568
569
  commandType: 'command',
569
- });
570
+ };
570
571
  }
571
572
  else {
572
- bodyChange = JSON.stringify({
573
+ bodyChange = {
573
574
  command: 'setPosition',
574
575
  parameter: `0,${adjustedMode},${adjustedTargetPosition}`,
575
576
  commandType: 'command',
576
- });
577
+ };
577
578
  }
578
579
  await this.debugLog(`SwitchBot OpenAPI bodyChange: ${JSON.stringify(bodyChange)}`);
579
580
  try {
580
- const { body, statusCode } = await this.pushChangeRequest(bodyChange);
581
- const deviceStatus = await body.json();
582
- await this.debugLog(`statusCode: ${statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
583
- if (await this.successfulStatusCodes(statusCode, deviceStatus)) {
584
- await this.debugSuccessLog(`statusCode: ${statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
581
+ const { body } = await this.pushChangeRequest(bodyChange);
582
+ const deviceStatus = await body;
583
+ await this.debugLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
584
+ if (await this.successfulStatusCodes(deviceStatus)) {
585
+ await this.debugSuccessLog(`statusCode: ${deviceStatus.statusCode}, deviceStatus: ${JSON.stringify(deviceStatus)}`);
585
586
  await this.updateHomeKitCharacteristics();
586
587
  }
587
588
  else {
588
- await this.statusCode(statusCode);
589
589
  await this.statusCode(deviceStatus.statusCode);
590
590
  }
591
591
  }
@@ -661,7 +661,7 @@ export class Curtain extends deviceBase {
661
661
  * Handle requests to set the value of the "Target Position" characteristic
662
662
  */
663
663
  async OpenModeSwitchSet(value) {
664
- if (this.OpenModeSwitch && this.device.curtain?.silentModeSwitch) {
664
+ if (this.OpenModeSwitch && this.device.silentModeSwitch) {
665
665
  this.debugLog(`Silent Open Mode: ${value}`);
666
666
  this.OpenModeSwitch.On = value;
667
667
  this.accessory.context.OpenModeSwitch.On = value;
@@ -674,7 +674,7 @@ export class Curtain extends deviceBase {
674
674
  * Handle requests to set the value of the "Target Position" characteristic
675
675
  */
676
676
  async CloseModeSwitchSet(value) {
677
- if (this.CloseModeSwitch && this.device.curtain?.silentModeSwitch) {
677
+ if (this.CloseModeSwitch && this.device.silentModeSwitch) {
678
678
  this.debugLog(`Silent Close Mode: ${value}`);
679
679
  this.CloseModeSwitch.On = value;
680
680
  this.accessory.context.CloseModeSwitch.On = value;
@@ -694,7 +694,7 @@ export class Curtain extends deviceBase {
694
694
  // HoldPosition
695
695
  await this.updateCharacteristic(this.WindowCovering.Service, this.hap.Characteristic.HoldPosition, this.WindowCovering.HoldPosition, 'HoldPosition');
696
696
  // CurrentAmbientLightLevel
697
- if (!this.device.curtain?.hide_lightsensor && this.LightSensor?.Service) {
697
+ if (!this.device.hide_lightsensor && this.LightSensor?.Service) {
698
698
  const history = { time: Math.round(new Date().valueOf() / 1000), lux: this.LightSensor.CurrentAmbientLightLevel };
699
699
  await this.updateCharacteristic(this.LightSensor?.Service, this.hap.Characteristic.CurrentAmbientLightLevel, this.LightSensor?.CurrentAmbientLightLevel, 'CurrentAmbientLightLevel', history);
700
700
  }
@@ -722,11 +722,11 @@ export class Curtain extends deviceBase {
722
722
  let setPositionMode;
723
723
  let Mode;
724
724
  if (Number(this.WindowCovering.TargetPosition) > 50) {
725
- if (this.device.curtain?.setOpenMode === '1' || this.OpenModeSwitch?.On) {
725
+ if (this.device.setOpenMode === '1' || this.OpenModeSwitch?.On) {
726
726
  setPositionMode = 1;
727
727
  Mode = 'Silent Mode';
728
728
  }
729
- else if (this.device.curtain?.setOpenMode === '0' || !this.OpenModeSwitch?.On) {
729
+ else if (this.device.setOpenMode === '0' || !this.OpenModeSwitch?.On) {
730
730
  setPositionMode = 0;
731
731
  Mode = 'Performance Mode';
732
732
  }
@@ -736,11 +736,11 @@ export class Curtain extends deviceBase {
736
736
  }
737
737
  }
738
738
  else {
739
- if (this.device.curtain?.setCloseMode === '1' || this.CloseModeSwitch?.On) {
739
+ if (this.device.setCloseMode === '1' || this.CloseModeSwitch?.On) {
740
740
  setPositionMode = 1;
741
741
  Mode = 'Silent Mode';
742
742
  }
743
- else if (this.device.curtain?.setCloseMode === '0' || !this.CloseModeSwitch?.On) {
743
+ else if (this.device.setCloseMode === '0' || !this.CloseModeSwitch?.On) {
744
744
  setPositionMode = 0;
745
745
  Mode = 'Performance Mode';
746
746
  }
@@ -756,7 +756,7 @@ export class Curtain extends deviceBase {
756
756
  await this.setMinMax();
757
757
  await this.debugLog(`CurrentPosition ${this.WindowCovering.CurrentPosition}`);
758
758
  this.hasLoggedStandby = this.hasLoggedStandby ?? false;
759
- if (this.setNewTarget || this.deviceStatus.moving) {
759
+ if (this.deviceStatus ? (this.setNewTarget || this.deviceStatus.moving) : this.setNewTarget) {
760
760
  this.hasLoggedStandby = false;
761
761
  this.infoLog('Checking Status ...');
762
762
  this.curtainMoving = true;
@@ -794,13 +794,13 @@ export class Curtain extends deviceBase {
794
794
  await this.debugLog(`CurrentPosition: ${this.WindowCovering.CurrentPosition}, TargetPosition: ${this.WindowCovering.TargetPosition}, PositionState: ${this.WindowCovering.PositionState},`);
795
795
  }
796
796
  async setMinMax() {
797
- if (this.device.curtain?.set_min) {
798
- if (Number(this.WindowCovering.CurrentPosition) <= this.device.curtain?.set_min) {
797
+ if (this.device.set_min) {
798
+ if (Number(this.WindowCovering.CurrentPosition) <= this.device.set_min) {
799
799
  this.WindowCovering.CurrentPosition = 0;
800
800
  }
801
801
  }
802
- if (this.device.curtain?.set_max) {
803
- if (Number(this.WindowCovering.CurrentPosition) >= this.device.curtain?.set_max) {
802
+ if (this.device.set_max) {
803
+ if (Number(this.WindowCovering.CurrentPosition) >= this.device.set_max) {
804
804
  this.WindowCovering.CurrentPosition = 100;
805
805
  }
806
806
  }
@@ -824,7 +824,7 @@ export class Curtain extends deviceBase {
824
824
  this.Battery.Service.updateCharacteristic(this.hap.Characteristic.BatteryLevel, e);
825
825
  this.Battery.Service.updateCharacteristic(this.hap.Characteristic.StatusLowBattery, e);
826
826
  this.Battery.Service.updateCharacteristic(this.hap.Characteristic.ChargingState, e);
827
- if (!this.device.curtain?.hide_lightsensor && this.LightSensor?.Service) {
827
+ if (!this.device.hide_lightsensor && this.LightSensor?.Service) {
828
828
  this.LightSensor.Service.updateCharacteristic(this.hap.Characteristic.CurrentAmbientLightLevel, e);
829
829
  this.LightSensor.Service.updateCharacteristic(this.hap.Characteristic.StatusActive, e);
830
830
  }
@@ -1 +1 @@
1
- {"version":3,"file":"curtain.js","sourceRoot":"","sources":["../../src/device/curtain.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAElC;;;EAGE;AACF,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAA;AACzE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAE5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,MAAM,OAAO,OAAQ,SAAQ,UAAU;IAyD1B;IAxDX,WAAW;IACH,cAAc,CAOrB;IAEO,OAAO,CAMd;IAEO,WAAW,CAIlB;IAEO,cAAc,CAIrB;IAEO,eAAe,CAItB;IAED,UAAU;IACV,YAAY,CAAgB;IAE5B,UAAU;IACV,cAAc,CAAiD;IAE/D,MAAM;IACN,WAAW,CAA2C;IAEtD,SAAS;IACT,gBAAgB,CAAU;IAC1B,YAAY,CAAU;IACtB,iBAAiB,CAAiB;IAElC,UAAU;IACV,aAAa,CAAU;IACvB,uBAAuB,CAAU;IACjC,eAAe,CAAgB;IAE/B,YACW,QAA2B,EACpC,SAA4B,EAC5B,MAA8B;QAE9B,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAJzB,aAAQ,GAAR,QAAQ,CAAmB;QAKpC,eAAe;QACf,SAAS,CAAC,QAAQ,+CAAsC,CAAA;QAExD,oFAAoF;QACpF,IAAI,CAAC,eAAe,GAAG,IAAI,OAAO,EAAE,CAAA;QACpC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAA;QAC1B,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAA;QACpC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;QAEzB,oCAAoC;QACpC,SAAS,CAAC,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAA;QACzE,IAAI,CAAC,cAAc,GAAG;YACpB,IAAI,EAAE,SAAS,CAAC,WAAW;YAC3B,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAY;YAClI,aAAa,EAAE,SAAS,CAAC,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,OAAO;YAC/F,cAAc,EAAE,SAAS,CAAC,OAAO,CAAC,cAAc,IAAI,GAAG;YACvD,eAAe,EAAE,SAAS,CAAC,OAAO,CAAC,eAAe,IAAI,GAAG;YACzD,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC,YAAY,IAAI,KAAK;SACtD,CAAA;QACD,SAAS,CAAC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,cAAwB,CAAA;QAEhE,oCAAoC;QACpC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YAC9O,OAAO,IAAI,CAAC,cAAc,CAAC,aAAa,CAAA;QAC1C,CAAC,CAAC,CAAA;QAEF,4CAA4C;QAC5C,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC;YAC9F,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,WAAW,IAAI,CAAC;YACzC,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,GAAG;YACb,gBAAgB,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC;SAC3B,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACZ,OAAO,IAAI,CAAC,cAAc,CAAC,eAAe,CAAA;QAC5C,CAAC,CAAC,CAAA;QAEF,2CAA2C;QAC3C,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC;YAC7F,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,WAAW,IAAI,CAAC;YACzC,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,GAAG;YACb,gBAAgB,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC;SAC3B,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACZ,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc,CAAA;QAC3C,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAE3C,2CAA2C;QAC3C,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YAC7F,OAAO,IAAI,CAAC,cAAc,CAAC,YAAY,CAAA;QACzC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QAEzC,6BAA6B;QAC7B,SAAS,CAAC,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAA;QAC3D,IAAI,CAAC,OAAO,GAAG;YACb,IAAI,EAAE,GAAG,SAAS,CAAC,WAAW,UAAU;YACxC,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAY;YACpH,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC,YAAY,IAAI,GAAG;YACnD,gBAAgB,EAAE,SAAS,CAAC,OAAO,CAAC,gBAAgB,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,oBAAoB;YACrH,aAAa,EAAE,SAAS,CAAC,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,YAAY;SACrG,CAAA;QACD,SAAS,CAAC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAA;QAElD,6BAA6B;QAC7B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACzJ,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAA;QAClC,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YAC1F,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAA;QACtC,CAAC,CAAC,CAAA;QAEF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;YACvF,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAAA;QACnC,CAAC,CAAC,CAAA;QAEF,iCAAiC;QACjC,IAAI,MAAM,CAAC,OAAO,EAAE,gBAAgB,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,CAAC,EAAE,CAAC;YAC9G,IAAI,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;gBAC9B,IAAI,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAA;gBAC9C,IAAI,CAAC,WAAW,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAY,CAAA;gBAC7F,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAA;gBACjD,SAAS,CAAC,OAAO,CAAC,WAAW,GAAG,EAAE,CAAA;YACpC,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YAC/E,SAAS,CAAC,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,WAAW,IAAI,EAAE,CAAA;YACnE,IAAI,CAAC,WAAW,GAAG;gBACjB,IAAI,EAAE,GAAG,SAAS,CAAC,WAAW,eAAe;gBAC7C,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAY;gBACjI,wBAAwB,EAAE,SAAS,CAAC,OAAO,CAAC,wBAAwB,IAAI,MAAM;aAC/E,CAAA;YACD,SAAS,CAAC,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,WAAqB,CAAA;YAE1D,wCAAwC;YACxC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,wBAAwB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBAC3O,OAAO,IAAI,CAAC,WAAY,CAAC,wBAAyB,CAAA;YACpD,CAAC,CAAC,CAAA;QACJ,CAAC;QAED,sCAAsC;QACtC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;gBACjC,IAAI,CAAC,QAAQ,CAAC,mCAAmC,CAAC,CAAA;gBAClD,IAAI,CAAC,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAY,CAAA;gBAC3F,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAA;gBACpD,SAAS,CAAC,OAAO,CAAC,cAAc,GAAG,EAAE,CAAA;YACvC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAA;YACzE,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC,CAAA;YAChD,MAAM,IAAI,GAAG,GAAG,SAAS,CAAC,WAAW,mBAAmB,CAAA;YACxD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC7C,IAAI,CAAC,cAAc,GAAG;gBACpB,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAY;gBAC3G,EAAE,EAAE,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,IAAI,KAAK;aACjD,CAAA;YACD,SAAS,CAAC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,cAAwB,CAAA;YAEhE,sCAAsC;YACtC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACjP,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,IAAI,KAAK,CAAA;YACzC,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACpH,CAAC;QAED,uCAAuC;QACvC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;gBAClC,IAAI,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAA;gBACnD,IAAI,CAAC,eAAe,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAY,CAAA;gBAC5F,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;gBACrD,SAAS,CAAC,OAAO,CAAC,eAAe,GAAG,EAAE,CAAA;YACxC,CAAC;QACH,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC,OAAO,CAAC,eAAe,IAAI,EAAE,CAAA;YAC3E,IAAI,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAA;YACjD,MAAM,IAAI,GAAG,GAAG,SAAS,CAAC,WAAW,oBAAoB,CAAA;YACzD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC7C,IAAI,CAAC,eAAe,GAAG;gBACrB,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAY;gBAChH,EAAE,EAAE,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,IAAI,KAAK;aAClD,CAAA;YACD,SAAS,CAAC,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,eAAyB,CAAA;YAElE,uCAAuC;YACvC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACpP,OAAO,IAAI,CAAC,eAAe,EAAE,EAAE,IAAI,KAAK,CAAA;YAC1C,CAAC,CAAC,CAAA;YAEF,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACtH,CAAC;QAED,4CAA4C;QAC5C,IAAI,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,4CAA4C,CAAC,CAAA;YAC3D,IAAI,CAAC,aAAa,EAAE,CAAA;QACtB,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,gEAAgE,CAAC,EAAE,CAAC,CAAA;QACpF,CAAC;QAED,6CAA6C;QAC7C,IAAI,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,mCAAmC,CAAC,CAAA;YAClD,IAAI,CAAC,eAAe,EAAE,CAAA;QACxB,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,qCAAqC,CAAC,EAAE,CAAC,CAAA;QACzD,CAAC;QAED,kDAAkD;QAClD,IAAI,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,wCAAwC,CAAC,CAAA;YACvD,IAAI,CAAC,mBAAmB,EAAE,CAAA;QAC5B,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,IAAI,CAAC,QAAQ,CAAC,yCAAyC,CAAC,EAAE,CAAC,CAAA;QAC7D,CAAC;QAED,UAAU;QACV,IAAI,CAAC,OAAO,EAAE,CAAA;QAEd,2BAA2B;QAC3B,QAAQ,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;aACpC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;aACnD,SAAS,CAAC,KAAK,IAAI,EAAE;YACpB,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEJ,wBAAwB;QACxB,QAAQ,CAAC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;aACnC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;aAC1C,SAAS,CAAC,KAAK,IAAI,EAAE;YACpB,IAAI,IAAI,CAAC,cAAc,CAAC,aAAa,KAAK,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;gBACxF,OAAM;YACR,CAAC;YACD,MAAM,IAAI,CAAC,QAAQ,CAAC,8CAA8C,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,CAAA;YACtG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEJ,kCAAkC;QAClC,iEAAiE;QACjE,IAAI,CAAC,eAAe;aACjB,IAAI,CACH,GAAG,CAAC,GAAG,EAAE;YACP,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAA;QACrC,CAAC,CAAC,EACF,YAAY,CAAC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,CACzC;aACA,SAAS,CAAC,KAAK,IAAI,EAAE;YACpB,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;YAC1B,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;gBACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,2BAA2B,MAAM,CAAC,cAAc,+BAA+B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YACjI,CAAC;YACD,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAA;QACtC,CAAC,CAAC,CAAA;QAEJ,6BAA6B;QAC7B,IAAI,CAAC,mBAAmB,EAAE,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YACjC,mDAAmD;YACnD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,IAAI,CAAC,CAAA;QACpF,CAAC;aAAM,CAAC;YACN,iDAAiD;YACjD,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAA;QAC9C,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB;QACvB,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YACjC,OAAM;QACR,CAAC;QAED,IAAI,CAAC;YACH,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YACnE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,iBAAiB,CAAA;YACtC,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;YACpD,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE;gBAC5E,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG;gBACtB,OAAO,EAAE,IAAI;gBACb,QAAQ,EAAE,GAAG,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,eAAe;aAC3E,CAAC,CAAA;YACF,MAAM,MAAM,GACV,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC;mBACvD,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAA;YACrE,MAAM,CAAC,yBAAyB,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,cAAc,CAAC,CAAA;YAClF,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACpF,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc;oBAC1D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC;oBAC3F,CAAC,CAAC,CAAC,CAAA;gBACL,OAAO,cAAc,CAAA;YACvB,CAAC,CAAC,CAAA;YACF,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;YACtB,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,KAA2B,EAAE,EAAE;gBAC5G,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;oBACtC,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;oBACvE,MAAM,KAAK,GAAG;wBACZ,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;wBAC7C,MAAM,EAAE,KAAK,CAAC,QAAQ;qBACvB,CAAA;oBACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAA;oBAClD,MAAM,EAAE,oBAAoB,CAC1B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,cAAc,EAChD,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAC1F,CAAA;oBACD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACrC,CAAC;YACH,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,aAAa,EAAE,CAAA;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,QAAQ,CAAC,6CAA6C,KAAK,EAAE,CAAC,CAAA;QAC3E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACtE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;YAC3B,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC;YAC7C,MAAM;SACP,CAAC,CAAA;QACF,UAAU,CAAC,KAAK,IAAI,EAAE;YACpB,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAC5B,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;IACpB,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;QACrC,MAAM,IAAI,CAAC,QAAQ,CAAC,8BAA8B,IAAI,CAAC,WAAW,CAAC,QAAQ,KAAK,IAAI,CAAC,WAAW,CAAC,OAAO,eAAe,IAAI,CAAC,cAAc,CAAC,eAAe,KAAK,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,CAAC,CAAA;QAC5L,kBAAkB;QAClB,IAAI,CAAC,cAAc,CAAC,eAAe,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAA;QACrE,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;QAC9B,2BAA2B;QAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,IAAI,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YACxE,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,IAAI,CAAC,CAAA;YACvD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,IAAI,IAAI,CAAA;YAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,CAAA;YAC9C,IAAI,CAAC,WAAW,CAAC,wBAAwB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;YAC5G,IAAI,CAAC,QAAQ,CAAC,eAAe,IAAI,CAAC,WAAW,CAAC,UAAU,+BAA+B,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,CAAC,CAAA;QACrI,CAAC;QACD,eAAe;QACf,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAA;QACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;QACjE,mBAAmB;QACnB,IAAI,CAAC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,EAAE;YAC5D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,iBAAiB;YAC5D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,oBAAoB,CAAA;QACjE,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAA;IAC3E,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAA;QACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,gDAAgD,IAAI,CAAC,YAAY,CAAC,aAAa,KAAK,IAAI,CAAC,YAAY,CAAC,OAAO,KAAK,IAAI,CAAC,YAAY,CAAC,OAAO,eAAe,IAAI,CAAC,cAAc,CAAC,eAAe,KAAK,IAAI,CAAC,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAA;QACtR,kBAAkB;QAClB,IAAI,CAAC,cAAc,CAAC,eAAe,GAAG,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAA;QAC3E,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;QAE9B,aAAa;QACb,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,IAAI,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YACxE,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,IAAI,CAAC,CAAA;YACvD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,UAAU,IAAI,IAAI,CAAA;YAC1D,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAA;YACtF,IAAI,CAAC,WAAW,CAAC,wBAAwB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC,CAAA;YAC3G,MAAM,IAAI,CAAC,QAAQ,CAAC,6BAA6B,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,CAAC,CAAA;QAC/F,CAAC;QAED,eAAe;QACf,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAA;QACrD,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;QAEjE,mBAAmB;QACnB,IAAI,CAAC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,EAAE;YAC5D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,iBAAiB;YAC5D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,oBAAoB,CAAA;QACjE,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAA;QAEzE,mBAAmB;QACnB,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAA;YACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC,CAAA;YAC3E,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAA;YAChE,IAAI,CAAC,SAAS;iBACX,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAE;iBAClD,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,EAAE,aAAa,CAAC;iBAC1E,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,EAAE,aAAa,CAAC;iBAC1E,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC;iBAC3D,WAAW,CAAC,aAAa,CAAC,CAAA;YAC7B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,GAAG,aAAa,CAAA;YAC9C,MAAM,IAAI,CAAC,eAAe,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAA;QAC1E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAA;QACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,uCAAuC,IAAI,CAAC,cAAc,CAAC,aAAa,KAAK,IAAI,CAAC,cAAc,CAAC,OAAO,eAAe,IAAI,CAAC,cAAc,CAAC,eAAe,KAAK,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,CAAC,CAAA;QAEhN,kBAAkB;QAClB,IAAI,CAAC,cAAc,CAAC,eAAe,GAAG,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAA;QAC7E,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;QAE9B,eAAe;QACf,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAA;QACvD,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;QAEjE,mBAAmB;QACnB,IAAI,CAAC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,EAAE;YAC5D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,iBAAiB;YAC5D,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,oBAAoB,CAAA;QACjE,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAA;IAC3E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,qCAAqC,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAA;QAC5F,CAAC;aAAM,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAC/B,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC;YACnE,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QACnC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YACvB,MAAM,IAAI,CAAC,YAAY,CAAC,oBAAoB,IAAI,CAAC,MAAM,CAAC,cAAc,kCAAkC,CAAC,CAAA;QAC3G,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB;QACpB,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAA;QACvC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;QAC3C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;QAC5C,CAAC;aAAM,CAAC;YACN,yCAAyC;YACzC,CAAC,KAAK,IAAI,EAAE;gBACV,yCAAyC;gBACzC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,SAAS,CAA6C,CAAA;gBACjH,iBAAiB;gBACjB,IAAI,CAAC,WAAW,CAAC,KAAK,KAAK,iBAAiB,CAAC,OAAO,IAAI,iBAAiB,CAAC,QAAQ,CAAC;uBAC9E,CAAC,WAAW,CAAC,SAAS,KAAK,qBAAqB,CAAC,OAAO,IAAI,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACjG,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;oBAC9B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;oBAC3B,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAA;gBAC3C,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,QAAQ,CAAC,2CAA2C,WAAW,EAAE,CAAC,CAAA;oBAC7E,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAA;gBAC5C,CAAC;YACH,CAAC,CAAC,EAAE,CAAA;QACN,CAAC;IACH,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAA;QAC3C,IAAI,CAAC;YACH,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAA;YAC7D,MAAM,YAAY,GAAQ,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;YAC3C,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,UAAU,mBAAmB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;YAC/F,IAAI,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,CAAC;gBAC/D,MAAM,IAAI,CAAC,eAAe,CAAC,eAAe,UAAU,mBAAmB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;gBACtG,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,IAAI,CAAA;gBACrC,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;gBAC/B,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAA;YAC3C,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,UAAU,mBAAmB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;gBACnG,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,YAAY,CAAC,CAAA;YACnD,CAAC;QACH,CAAC;QAAC,OAAO,CAAM,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;YACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,oCAAoC,IAAI,CAAC,MAAM,CAAC,cAAc,+BAA+B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QAC/I,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAA;YAC5C,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,EAAE,OAAuD,EAAE,EAAE;gBAC1H,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;oBACnE,IAAI,CAAC,cAAc,GAAG,OAAO,CAAA;oBAC7B,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;oBAC/B,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAA;gBAC3C,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBAChB,MAAM,IAAI,CAAC,QAAQ,CAAC,uCAAuC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;gBACnG,CAAC;YACH,CAAC,CAAA;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAA;QAClD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,mBAAmB;QACvB,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAA;QAC1C,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC;YAC7B,MAAM,IAAI,CAAC,QAAQ,CAAC,+BAA+B,CAAC,CAAA;YACpD,IAAI,CAAC;gBACH,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;gBACnE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,iBAAiB,CAAA;gBACtC,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;gBACpD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,OAAiD,EAAE,EAAE;oBAC9G,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;wBAC/D,IAAI,CAAC,WAAW,GAAG,OAAO,CAAA;wBAC1B,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;wBAC3B,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAA;oBAC3C,CAAC;oBAAC,OAAO,CAAM,EAAE,CAAC;wBAChB,MAAM,IAAI,CAAC,QAAQ,CAAC,mCAAmC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;oBAC/F,CAAC;gBACH,CAAC,CAAA;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,CAAC,QAAQ,CAAC,6CAA6C,KAAK,EAAE,CAAC,CAAA;YAC3E,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAA;QACzD,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,mCAAmC,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAA;QAC1F,CAAC;aAAM,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACpB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;QAC7B,CAAC;aAAM,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC;YACnE,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACjC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,UAAU,EAAE,CAAA;YACvB,MAAM,IAAI,CAAC,YAAY,CAAC,oBAAoB,IAAI,CAAC,MAAM,CAAC,cAAc,gCAAgC,CAAC,CAAA;QACzG,CAAC;QACD,kCAAkC;QAClC,QAAQ,CAAC,KAAK,CAAC;aACZ,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;aACnD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACb,SAAS,CAAC,KAAK,IAAI,EAAE;YACpB,MAAM,IAAI,CAAC,aAAa,EAAE,CAAA;QAC5B,CAAC,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;QACrC,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,KAAK,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC;YAC/E,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YAC7E,IAAI,CAAC;gBACH,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;gBACnE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,iBAAiB,CAAA;gBACtC,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;gBACpD,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,GAA8C,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;gBACxG,MAAM,YAAY,GAAG,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;gBACxD,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,sBAAsB,eAAe,EAAE,CAAC,CAAA;gBACzE,IAAI,SAAS,KAAK,KAAK,EAAE,CAAC;oBACxB,SAAS;yBACN,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;yBAC9E,IAAI,CAAC,KAAK,EAAE,WAAgB,EAAE,EAAE;wBAC/B,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC;4BACzB,GAAG,EAAE,MAAM,IAAI,CAAC,WAAW,EAAE;4BAC7B,EAAE,EAAE,KAAK,IAAI,EAAE;gCACb,OAAO,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,YAAY,CAAC,CAAA;4BACtG,CAAC;yBACF,CAAC,CAAA;oBACJ,CAAC,CAAC;yBACD,IAAI,CAAC,KAAK,IAAI,EAAE;wBACf,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,IAAI,CAAC,cAAc,CAAC,cAAc,8CAA8C,CAAC,CAAA;wBACzH,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAA;oBAC3C,CAAC,CAAC;yBACD,KAAK,CAAC,KAAK,EAAE,CAAM,EAAE,EAAE;wBACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;wBACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,8BAA8B,IAAI,CAAC,MAAM,CAAC,cAAc,+BAA+B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;wBACvI,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;oBAChC,CAAC,CAAC,CAAA;gBACN,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,QAAQ,CAAC,4DAA4D,SAAS,EAAE,CAAC,CAAA;oBAC5F,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAA;gBAChC,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,CAAC,QAAQ,CAAC,6CAA6C,KAAK,EAAE,CAAC,CAAA;YAC3E,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,QAAQ,CAAC,gDAAgD,IAAI,CAAC,cAAc,CAAC,cAAc,sBAAsB,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAA;QACpK,CAAC;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAA;QACzC,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,KAAK,IAAI,CAAC,cAAc,CAAC,eAAe,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC7G,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAAA;YACpE,MAAM,sBAAsB,GAAG,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;YAC/E,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,GAA8C,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;YACxG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,sBAAsB,eAAe,EAAE,CAAC,CAAA;YACzE,MAAM,YAAY,GAAG,eAAe,IAAI,IAAI,CAAA;YAC5C,IAAI,UAAkB,CAAA;YACtB,IAAI,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC;gBACrC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;oBAC1B,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,SAAS;oBACpB,WAAW,EAAE,SAAS;iBACvB,CAAC,CAAA;YACJ,CAAC;iBAAM,CAAC;gBACN,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;oBAC1B,OAAO,EAAE,aAAa;oBACtB,SAAS,EAAE,KAAK,YAAY,IAAI,sBAAsB,EAAE;oBACxD,WAAW,EAAE,SAAS;iBACvB,CAAC,CAAA;YACJ,CAAC;YACD,MAAM,IAAI,CAAC,QAAQ,CAAC,iCAAiC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;YAClF,IAAI,CAAC;gBACH,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAA;gBACrE,MAAM,YAAY,GAAQ,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;gBAC3C,MAAM,IAAI,CAAC,QAAQ,CAAC,eAAe,UAAU,mBAAmB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;gBAC/F,IAAI,MAAM,IAAI,CAAC,qBAAqB,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,CAAC;oBAC/D,MAAM,IAAI,CAAC,eAAe,CAAC,eAAe,UAAU,mBAAmB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;oBACtG,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAA;gBAC3C,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAA;oBACjC,MAAM,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,CAAA;gBAChD,CAAC;YACH,CAAC;YAAC,OAAO,CAAM,EAAE,CAAC;gBAChB,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;gBACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,kCAAkC,IAAI,CAAC,MAAM,CAAC,cAAc,+BAA+B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAC7I,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,QAAQ,CAAC,qDAAqD,IAAI,CAAC,cAAc,CAAC,eAAe,qBAAqB,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAAA;QACxK,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAA0B;QAChD,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,KAAK,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YACjF,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,KAAK,EAAE,CAAC,CAAA;QACpD,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,QAAQ,CAAC,+BAA+B,KAAK,EAAE,CAAC,CAAA;QAC7D,CAAC;QAED,2DAA2D;QAC3D,IAAI,CAAC,cAAc,CAAC,YAAY,GAAG,KAAK,CAAA;QACxC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAA;QAExH,IAAI,CAAC,cAAc,CAAC,cAAc,GAAG,KAAK,CAAA;QAC1C,MAAM,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAA;QACrE,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAA;QACjE,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAA;IAC3C,CAAC;IAED,KAAK,CAAC,4BAA4B;QAChC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;QACtB,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC;YAC7E,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,UAAU,CAAA;YACpF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;YACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,cAAc,CAAC,cAAc,sBAAsB,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAA;QAC9H,CAAC;aAAM,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC;YACpF,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,UAAU,CAAA;YACpF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;YACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,cAAc,CAAC,cAAc,sBAAsB,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAA;QAC9H,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,OAAO,CAAA;YACjF,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;YACzB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,cAAc,CAAC,cAAc,sBAAsB,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAA;QAC9H,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;QACvH,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;QAEnI;;;WAGG;QACH,YAAY,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAA;QACpC,MAAM,IAAI,CAAC,QAAQ,CAAC,qBAAqB,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAA;QACjE,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC,iBAAiB,GAAG,UAAU,CAAC,KAAK,IAAI,EAAE;gBAC7C,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,IAAI,CAAC,YAAY,UAAU,CAAC,CAAA;gBAChE,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;YAC3B,CAAC,EAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAA;QAClC,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAA;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CAAC,KAA0B;QAC9C,IAAI,CAAC,QAAQ,CAAC,iBAAiB,KAAK,EAAE,CAAC,CAAA;QACvC,IAAI,CAAC,cAAc,CAAC,YAAY,GAAG,KAAK,CAAA;QACxC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAA;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAA0B;QAChD,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC;YACjE,IAAI,CAAC,QAAQ,CAAC,qBAAqB,KAAK,EAAE,CAAC,CAAA;YAC3C,IAAI,CAAC,cAAc,CAAC,EAAE,GAAG,KAAK,CAAA;YAC9B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,GAAG,KAAK,CAAA;YAChD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAA;YAC7C,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,KAA0B;QACjD,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC;YAClE,IAAI,CAAC,QAAQ,CAAC,sBAAsB,KAAK,EAAE,CAAC,CAAA;YAC5C,IAAI,CAAC,eAAe,CAAC,EAAE,GAAG,KAAK,CAAA;YAC/B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,GAAG,KAAK,CAAA;YACjD,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC;IACH,CAAC;IAED,KAAK,CAAC,4BAA4B;QAChC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;QACtB,kBAAkB;QAClB,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAA;QAC7J,gBAAgB;QAChB,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,eAAe,CAAC,CAAA;QACvJ,iBAAiB;QACjB,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAA;QAC1J,eAAe;QACf,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,cAAc,CAAC,CAAA;QACpJ,2BAA2B;QAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,IAAI,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YACxE,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,CAAA;YACjH,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,wBAAwB,EAAE,IAAI,CAAC,WAAW,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,OAAO,CAAC,CAAA;QAC/L,CAAC;QACD,eAAe;QACf,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,cAAc,CAAC,CAAA;QACtI,mBAAmB;QACnB,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAAA;QAClJ,gBAAgB;QAChB,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,eAAe,CAAC,CAAA;IAC3I,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,KAAK,aAAa,EAAE,CAAC;YAC5F,MAAM,IAAI,CAAC,OAAO,CAAC,0CAA0C,CAAC,CAAA;YAC9D,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACjC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,SAAc;QACvC,MAAM,IAAI,CAAC,QAAQ,CAAC,4DAA4D,SAAS,EAAE,CAAC,CAAA;QAC5F,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,KAAK,aAAa,EAAE,CAAC;YAC5F,MAAM,IAAI,CAAC,OAAO,CAAC,4CAA4C,CAAC,CAAA;YAChE,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAA;QACnC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc;QAClB,IAAI,eAAuB,CAAA;QAC3B,IAAI,IAAY,CAAA;QAChB,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG,EAAE,EAAE,CAAC;YACpD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,KAAK,GAAG,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,EAAE,CAAC;gBACxE,eAAe,GAAG,CAAC,CAAA;gBACnB,IAAI,GAAG,aAAa,CAAA;YACtB,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,EAAE,CAAC;gBAChF,eAAe,GAAG,CAAC,CAAA;gBACnB,IAAI,GAAG,kBAAkB,CAAA;YAC3B,CAAC;iBAAM,CAAC;gBACN,eAAe,GAAG,CAAC,CAAA;gBACnB,IAAI,GAAG,cAAc,CAAA;YACvB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,KAAK,GAAG,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,EAAE,CAAC;gBAC1E,eAAe,GAAG,CAAC,CAAA;gBACnB,IAAI,GAAG,aAAa,CAAA;YACtB,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,EAAE,CAAC;gBAClF,eAAe,GAAG,CAAC,CAAA;gBACnB,IAAI,GAAG,kBAAkB,CAAA;YAC3B,CAAC;iBAAM,CAAC;gBACN,eAAe,GAAG,CAAC,CAAA;gBACnB,IAAI,GAAG,cAAc,CAAA;YACvB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,kBAAkB,eAAe,WAAW,IAAI,EAAE,CAAC,CAAA;QAChE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,CAAA;IAClC,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;QACtB,MAAM,IAAI,CAAC,QAAQ,CAAC,mBAAmB,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAA;QAC7E,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,KAAK,CAAA;QACtD,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;YAClD,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAA;YAC7B,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAA;YACnC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAA;YACzB,MAAM,IAAI,CAAC,SAAS,EAAE,CAAA;YACtB,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC;gBAC7E,MAAM,IAAI,CAAC,QAAQ,CAAC,6BAA6B,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAA;gBACvF,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,UAAU,CAAA;gBACpF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;gBACnI,MAAM,IAAI,CAAC,QAAQ,CAAC,8BAA8B,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,CAAA;YACxF,CAAC;iBAAM,IAAI,IAAI,CAAC,cAAc,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC;gBACpF,MAAM,IAAI,CAAC,QAAQ,CAAC,6BAA6B,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAA;gBACvF,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,UAAU,CAAA;gBACpF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;gBACnI,MAAM,IAAI,CAAC,QAAQ,CAAC,8BAA8B,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,CAAA;YACxF,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,QAAQ,CAAC,6BAA6B,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAA;gBACvF,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,OAAO,CAAA;gBACjF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAA;gBACnI,MAAM,IAAI,CAAC,QAAQ,CAAC,2BAA2B,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,CAAA;YACrF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC3B,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;gBACjC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;YAC9B,CAAC;YACD,IAAI,CAAC,aAAa,GAAG,KAAK,CAAA;YAC1B,MAAM,IAAI,CAAC,QAAQ,CAAC,6BAA6B,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAA;YACvF,IAAI,CAAC,cAAc,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CAAA;YACxE,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,OAAO,CAAA;YACjF,MAAM,IAAI,CAAC,QAAQ,CAAC,2BAA2B,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,CAAA;QACrF,CAAC;QACD,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,IAAI,CAAC,cAAc,CAAC,eAAe,qBAAqB,IAAI,CAAC,cAAc,CAAC,cAAc,oBAAoB,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,CAAC,CAAA;IAC7L,CAAC;IAED,KAAK,CAAC,SAAS;QACb,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;YACjC,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;gBAChF,IAAI,CAAC,cAAc,CAAC,eAAe,GAAG,CAAC,CAAA;YACzC,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;YACjC,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC;gBAChF,IAAI,CAAC,cAAc,CAAC,eAAe,GAAG,GAAG,CAAA;YAC3C,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACxB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;YACvE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACrE,MAAM,EAAE,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,KAAK,CAAC,CAAA;QAC7E,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,GAAG,CAAC,CAAA;YAC9F,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,GAAG,CAAC,CAAA;YAC7F,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QACxI,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,CAAM;QACnB,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC,CAAC,CAAA;QAC5F,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,CAAC,CAAA;QAC1F,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA;QAC3F,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;QAClF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAA;QACtF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,aAAa,EAAE,CAAC,CAAC,CAAA;QACnF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,IAAI,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;YACxE,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAA;YAClG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,CAAA;QACxF,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"curtain.js","sourceRoot":"","sources":["../../src/device/curtain.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import type { API, CharacteristicValue, HAP, Logging, PlatformAccessory, Service } from 'homebridge';
2
2
  import type { MqttClient } from 'mqtt';
3
+ import type { bodyChange, device } from 'node-switchbot';
3
4
  import type { SwitchBotPlatform } from '../platform.js';
4
5
  import type { devicesConfig, SwitchBotPlatformConfig } from '../settings.js';
5
- import type { device } from '../types/devicelist.js';
6
6
  import { SwitchBotBLEModel, SwitchBotModel } from 'node-switchbot';
7
7
  export declare abstract class deviceBase {
8
8
  protected readonly platform: SwitchBotPlatform;
@@ -55,17 +55,17 @@ export declare abstract class deviceBase {
55
55
  getMqttSettings(device: device & devicesConfig): Promise<void>;
56
56
  setupHistoryService(accessory: PlatformAccessory, device: device & devicesConfig): Promise<void>;
57
57
  switchbotBLE(): Promise<any>;
58
- monitorAdvertisementPackets(switchbot: any): Promise<import("../types/bledevicestatus.js").botServiceData | import("../types/bledevicestatus.js").colorBulbServiceData | import("../types/bledevicestatus.js").contactSensorServiceData | import("../types/bledevicestatus.js").curtainServiceData | import("../types/bledevicestatus.js").curtain3ServiceData | import("../types/bledevicestatus.js").stripLightServiceData | import("../types/bledevicestatus.js").lockServiceData | import("../types/bledevicestatus.js").lockProServiceData | import("../types/bledevicestatus.js").meterServiceData | import("../types/bledevicestatus.js").meterPlusServiceData | import("../types/bledevicestatus.js").motionSensorServiceData | import("../types/bledevicestatus.js").outdoorMeterServiceData | import("../types/bledevicestatus.js").plugMiniUSServiceData | import("../types/bledevicestatus.js").plugMiniJPServiceData | import("../types/bledevicestatus.js").blindTiltServiceData | import("../types/bledevicestatus.js").ceilingLightServiceData | import("../types/bledevicestatus.js").ceilingLightProServiceData | import("../types/bledevicestatus.js").hub2ServiceData | import("../types/bledevicestatus.js").batteryCirculatorFanServiceData | import("../types/bledevicestatus.js").waterLeakDetectorServiceData | import("../types/bledevicestatus.js").humidifierServiceData | import("../types/bledevicestatus.js").robotVacuumCleanerServiceData>;
58
+ monitorAdvertisementPackets(switchbot: any): Promise<import("node-switchbot").botServiceData | import("node-switchbot").colorBulbServiceData | import("node-switchbot").contactSensorServiceData | import("node-switchbot").curtainServiceData | import("node-switchbot").curtain3ServiceData | import("node-switchbot").stripLightServiceData | import("node-switchbot").lockServiceData | import("node-switchbot").lockProServiceData | import("node-switchbot").meterServiceData | import("node-switchbot").meterPlusServiceData | import("node-switchbot").motionSensorServiceData | import("node-switchbot").outdoorMeterServiceData | import("node-switchbot").plugMiniUSServiceData | import("node-switchbot").plugMiniJPServiceData | import("node-switchbot").blindTiltServiceData | import("node-switchbot").ceilingLightServiceData | import("node-switchbot").ceilingLightProServiceData | import("node-switchbot").hub2ServiceData | import("node-switchbot").batteryCirculatorFanServiceData | import("node-switchbot").waterLeakDetectorServiceData | import("node-switchbot").humidifierServiceData | import("node-switchbot").robotVacuumCleanerServiceData>;
59
59
  getCustomBLEAddress(switchbot: any): Promise<void>;
60
- pushChangeRequest(bodyChange: string): Promise<{
60
+ pushChangeRequest(bodyChange: bodyChange): Promise<{
61
61
  body: any;
62
- statusCode: any;
62
+ statusCode: number;
63
63
  }>;
64
64
  deviceRefreshStatus(): Promise<{
65
65
  body: any;
66
- statusCode: any;
66
+ statusCode: number;
67
67
  }>;
68
- successfulStatusCodes(statusCode: any, deviceStatus: any): Promise<boolean>;
68
+ successfulStatusCodes(deviceStatus: any): Promise<boolean>;
69
69
  /**
70
70
  * Update the characteristic value and log the change.
71
71
  *
@@ -1 +1 @@
1
- {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/device/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../../src/device/device.ts"],"names":[],"mappings":"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"}