@mp-consulting/homebridge-lg-thinq 1.0.7 → 1.0.8

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/CHANGELOG.md CHANGED
@@ -1,5 +1,23 @@
1
1
  # Change Log
2
2
 
3
+ ## v1.0.8
4
+
5
+ ### Refactoring
6
+
7
+ * Refactor Status classes to extend BaseStatus
8
+ - DehumidifierStatus now uses type-safe helper methods (getBool, getInt)
9
+ - WasherDryerStatus uses BaseStatus helpers with public data getter for legacy access
10
+ - StylerStatus uses getStatus() with explicit snapshot key
11
+ - Add RangeHoodStatus class (previously had no Status class)
12
+
13
+ * Move airCleanModels to centralized AC_MODEL_FEATURES
14
+ - Add airClean feature to AC_MODEL_FEATURES in constants.ts
15
+ - AirConditioner now uses hasModelFeature() helper
16
+
17
+ * Refactor AeroTower to use setDeviceControl helper
18
+ - Simplifies control methods from ~40 lines to ~8 lines
19
+ - Automatic snapshot updates on successful control
20
+
3
21
  ## v1.0.7
4
22
 
5
23
  ### Refactoring
@@ -33,61 +33,22 @@ export default class AeroTower extends AirPurifier {
33
33
  if (!this.Status.isPowerOn) {
34
34
  return;
35
35
  }
36
- const device = this.accessory.context.device;
37
36
  const isLightOn = value ? 1 : 0;
38
- try {
39
- const result = await this.platform.ThinQ?.deviceControl(device.id, {
40
- dataKey: 'airState.lightingState.displayControl',
41
- dataValue: isLightOn,
42
- });
43
- if (result) {
44
- device.data.snapshot['airState.lightingState.displayControl'] = isLightOn;
45
- this.updateAccessoryCharacteristic(device);
46
- }
47
- }
48
- catch (error) {
49
- this.logger.error('Error setting light state:', error);
50
- }
37
+ await this.setDeviceControl('airState.lightingState.displayControl', isLightOn);
51
38
  }
52
39
  async setUVMode(value) {
53
- const device = this.accessory.context.device;
54
40
  const uvModeValue = value ? 1 : 0;
55
- try {
56
- const result = await this.platform.ThinQ?.deviceControl(device.id, {
57
- dataKey: 'airState.miscFuncState.Uvnano',
58
- dataValue: uvModeValue,
59
- });
60
- if (result) {
61
- device.data.snapshot['airState.miscFuncState.Uvnano'] = uvModeValue;
62
- this.updateAccessoryCharacteristic(device);
63
- }
64
- }
65
- catch (error) {
66
- this.logger.error('Error setting UV mode:', error);
67
- }
41
+ await this.setDeviceControl('airState.miscFuncState.Uvnano', uvModeValue);
68
42
  }
69
43
  async setLightBrightness(value) {
70
44
  const vNum = normalizeNumber(value);
71
45
  if (vNum === null) {
72
46
  return;
73
47
  }
74
- const device = this.accessory.context.device;
75
48
  const brightnessValue = vNum - 1;
76
49
  const values = [LightBrightness.LEVEL_1, LightBrightness.LEVEL_2, LightBrightness.LEVEL_3];
77
50
  if (typeof values[brightnessValue] !== 'undefined') {
78
- try {
79
- const result = await this.platform.ThinQ?.deviceControl(device.id, {
80
- dataKey: 'airState.lightingState.displayControl',
81
- dataValue: values[brightnessValue],
82
- });
83
- if (result) {
84
- device.data.snapshot['airState.lightingState.displayControl'] = values[brightnessValue];
85
- this.updateAccessoryCharacteristic(device);
86
- }
87
- }
88
- catch (error) {
89
- this.logger.error('Error setting light brightness:', error);
90
- }
51
+ await this.setDeviceControl('airState.lightingState.displayControl', values[brightnessValue]);
91
52
  }
92
53
  }
93
54
  updateAccessoryCharacteristic(device) {
@@ -1 +1 @@
1
- {"version":3,"file":"AeroTower.js","sourceRoot":"","sources":["../../src/devices/AeroTower.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AeroTower.js","sourceRoot":"","sources":["../../src/devices/AeroTower.ts"],"names":[],"mappings":"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"}
@@ -64,6 +64,7 @@ export default class AirConditioner extends BaseDevice {
64
64
  protected quietModeModels: string[];
65
65
  /** @deprecated Use AC_MODEL_FEATURES from lib/constants.js instead */
66
66
  protected energySaveModeModels: string[];
67
+ /** @deprecated Use hasModelFeature('airClean', model) instead */
67
68
  protected airCleanModels: string[];
68
69
  protected currentTargetState: number;
69
70
  protected serviceLabelButtons: Service | undefined;
@@ -50,7 +50,8 @@ export default class AirConditioner extends BaseDevice {
50
50
  quietModeModels = AC_MODEL_FEATURES.quietMode;
51
51
  /** @deprecated Use AC_MODEL_FEATURES from lib/constants.js instead */
52
52
  energySaveModeModels = AC_MODEL_FEATURES.energySaveMode;
53
- airCleanModels = ['RAC_056905'];
53
+ /** @deprecated Use hasModelFeature('airClean', model) instead */
54
+ airCleanModels = AC_MODEL_FEATURES.airClean;
54
55
  currentTargetState = 2; // default target: COOL
55
56
  serviceLabelButtons;
56
57
  monitorInterval;
@@ -115,7 +116,7 @@ export default class AirConditioner extends BaseDevice {
115
116
  this.serviceEnergySaveMode.getCharacteristic(platform.Characteristic.On)
116
117
  .onSet(this.setEnergySaveActive.bind(this));
117
118
  }
118
- const enableAirClean = this.airCleanModels.includes(device.model) && this.config.ac_air_clean;
119
+ const enableAirClean = this.hasModelFeature('airClean') && this.config.ac_air_clean;
119
120
  this.serviceAirClean = this.ensureService(Switch, 'Air Purify', enableAirClean, 'Air Purify');
120
121
  if (this.serviceAirClean) {
121
122
  this.serviceAirClean.addOptionalCharacteristic(platform.Characteristic.ConfiguredName);
@@ -731,8 +732,7 @@ export default class AirConditioner extends BaseDevice {
731
732
  }
732
733
  updateAccessoryairCleanModelsCharacteristic() {
733
734
  const device = this.accessory.context.device;
734
- const model = device.model;
735
- if (this.airCleanModels.includes(model) && this.config.ac_air_clean) {
735
+ if (this.hasModelFeature('airClean') && this.config.ac_air_clean) {
736
736
  this.serviceAirClean?.updateCharacteristic(this.platform.Characteristic.On, !!device.snapshot['airState.wMode.airClean']);
737
737
  }
738
738
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AirConditioner.js","sourceRoot":"","sources":["../../src/devices/AirConditioner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAIhE,OAAO,EAAyB,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC3F,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,0BAA0B,EAC1B,aAAa,EACb,cAAc,EACd,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAE7B,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,4BAAa,CAAA;IACb,0BAAW,CAAA;AACb,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC;AAEhC,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,qCAAO,CAAA;IACP,mDAAc,CAAA;IACd,2CAAU,CAAA;IACV,qDAAe,CAAA;IACf,uCAAQ,CAAA;AACV,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB;AAED,MAAM,CAAN,IAAY,MAOX;AAPD,WAAY,MAAM;IAChB,mCAAQ,CAAA;IACR,mCAAQ,CAAA;IACR,mCAAQ,CAAA;IACR,iCAAO,CAAA;IACP,iCAAO,CAAA;IACP,6CAAa,CAAA;AACf,CAAC,EAPW,MAAM,KAAN,MAAM,QAOjB;AAkBD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,UAAU;IA0BlC;IACA;IA1BR,OAAO,CAAU;IACjB,iBAAiB,CAAsB;IACvC,aAAa,CAAsB;IACnC,qBAAqB,CAAsB;IAC3C,YAAY,CAAsB;IAClC,YAAY,CAAsB;IAE5C,eAAe;IACL,cAAc,CAAsB,CAAC,WAAW;IAChD,gBAAgB,CAAsB;IACtC,qBAAqB,CAAsB;IAC3C,eAAe,CAAsB;IAC/C,sEAAsE;IAC5D,aAAa,GAAG,iBAAiB,CAAC,OAAO,CAAC;IACpD,sEAAsE;IAC5D,eAAe,GAAG,iBAAiB,CAAC,SAAS,CAAC;IACxD,sEAAsE;IAC5D,oBAAoB,GAAG,iBAAiB,CAAC,cAAc,CAAC;IACxD,cAAc,GAAG,CAAC,YAAY,CAAC,CAAC;IAChC,kBAAkB,GAAG,CAAC,CAAC,CAAC,uBAAuB;IAE/C,mBAAmB,CAAsB;IACzC,eAAe,CAA6C;IAEtE,YACkB,QAAmC,EACnC,SAA8C,EAC9D,MAAc;QAEd,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAJnB,aAAQ,GAAR,QAAQ,CAA2B;QACnC,cAAS,GAAT,SAAS,CAAqC;QAK9D,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QAErD,MAAM,EACJ,OAAO,EAAE,EACP,iBAAiB,EACjB,cAAc,EACd,MAAM,EACN,SAAS,EACT,YAAY,GACb,GACF,GAAG,IAAI,CAAC,QAAQ,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QAElE,IAAI,CAAC,yBAAyB,EAAE,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;QAE7F,IAAI,IAAI,CAAC,MAAM,CAAC,cAAyB,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YACpE,IAAI,CAAC,uBAAuB,EAAE,CAAC;QACjC,CAAC;aAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAClC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,EAAE,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,qBAAgC,CAAC,CAAC;QAC/H,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YACrF,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAA6B,CAAC,CAAC;QAC9H,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;YAC7F,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,cAAyB,CAAC,CAAC;QAClG,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;iBAC5D,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC/B,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB;YACxC,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,CAAC,cAAyB,EAAE,CAAC;YAC1C,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC;aAAM,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YAC7B,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7C,CAAC;QAED,eAAe;QACf,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,cAAyB,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,UAAU,CAAC,CAAC;QACxF,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,CAAC,cAAc,CAAC,yBAAyB,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YACtF,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,GAAG,WAAW,CAAC,CAAC;YACzG,IAAI,CAAC,cAAc,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;iBAC9D,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC;QAC5H,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;YACvF,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;iBAChE,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAyB,CAAC;QACnH,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,CAAC,CAAC;QACxG,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,IAAI,CAAC,qBAAqB,CAAC,yBAAyB,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YAC7F,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,GAAG,cAAc,CAAC,CAAC;YACnH,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;iBACrE,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,YAAuB,CAAC;QACzG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,CAAC,CAAC;QAC9F,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,CAAC,yBAAyB,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YACvF,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,GAAG,aAAa,CAAC,CAAC;YAC5G,IAAI,CAAC,eAAe,CAAC,iBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;iBAC/D,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAEzB,kDAAkD;QAClD,kEAAkE;QAClE,iEAAiE;QACjE,MAAM,sBAAsB,GAAG,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QACvG,IAAI,sBAAsB,EAAE,CAAC;YAC3B,IAAI,CAAC,eAAe,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;gBAC5C,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAClB,IAAI,CAAC;wBACH,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;4BAClD,OAAO,EAAE,sBAAsB;4BAC/B,SAAS,EAAE,wBAAwB;yBACpC,EAAE,KAAK,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAC;oBACzC,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;oBACrE,CAAC;gBACH,CAAC;YACH,CAAC,EAAE,aAAa,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IAEM,OAAO;QACZ,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACpC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;QACnC,CAAC;IACH,CAAC;IAES,gBAAgB;QACxB,MAAM,EACJ,OAAO,EAAE,EACP,KAAK,GACN,EACD,cAAc,GACf,GAAG,IAAI,CAAC,QAAQ,CAAC;QAElB,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QAErD,iBAAiB;QACjB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;QACzE,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAEjD,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,cAAc,CAAC,MAAM,CAAC;aACvD,KAAK,CAAC,GAAG,EAAE;YACV,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC/F,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAA0B,EAAE,EAAE;YACpC,MAAM,IAAI,GAAG,KAAgB,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzE,OAAO;YACT,CAAC;YAED,yEAAyE;YACzE,UAAU,CAAC,GAAG,EAAE;gBAEd,IAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACtJ,IAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAClG,CAAC,EAAE,UAAU,CAAC,CAAC;QACjB,CAAC,CAAC;aACD,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAE/C,IAAI,CAAC,YAAY,CAAC,yBAAyB,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAC3E,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,cAAc,CAAC,cAAc,EAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,CAAC;QACzF,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,cAAc,CAAC,eAAe,CAAC;aAChE,KAAK,CAAC,GAAG,EAAE;YACV,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,QAAQ,CAAC;QACtH,CAAC,CAAC;aACD,QAAQ,CAAC;YACR,WAAW,EAAE,CAAC,cAAc,CAAC,eAAe,CAAC,QAAQ,EAAE,cAAc,CAAC,eAAe,CAAC,WAAW,CAAC;SACnG,CAAC;aACD,WAAW,CAAC,cAAc,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACxD,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,cAAc,CAAC,cAAc,CAAC;aAC/D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,cAAc,CAAC,aAAa,CAAC;aAC9D,QAAQ,CAAC;YACR,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC;YAC1C,OAAO,EAAE,GAAG;SACb,CAAC;aACD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,cAAc,CAAC,SAAS,CAAC;aAC1D,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aACnC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IAC3H,CAAC;IAES,uBAAuB;QAC/B,MAAM,EACJ,OAAO,EAAE,EACP,gBAAgB,GACjB,GACF,GAAG,IAAI,CAAC,QAAQ,CAAC;QAElB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;IACpF,CAAC;IAES,yBAAyB;QACjC,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACrD,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;QACzC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,MAAM,CAAC;aAClD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,wBAAwB,CAAC,CAAC;QAExE,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;YACnC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,uBAAuB,CAAC;iBACnE,QAAQ,CAAC;gBACR,WAAW,EAAE;oBACX,cAAc,CAAC,uBAAuB,CAAC,IAAI;oBAC3C,cAAc,CAAC,uBAAuB,CAAC,IAAI;oBAC3C,cAAc,CAAC,uBAAuB,CAAC,IAAI;iBAC5C;aACF,CAAC;iBACD,WAAW,CAAC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC7C,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,uBAAuB,CAAC;iBACnE,QAAQ,CAAC;gBACR,WAAW,EAAE;oBACX,cAAc,CAAC,uBAAuB,CAAC,IAAI;iBAC5C;aACF,CAAC;iBACD,WAAW,CAAC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC7C,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,uBAAuB,CAAC;iBACnE,QAAQ,CAAC;gBACR,WAAW,EAAE;oBACX,cAAc,CAAC,uBAAuB,CAAC,IAAI;iBAC5C;aACF,CAAC;iBACD,WAAW,CAAC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,uBAAuB,CAAC;aACnE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEzC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;YAC9B,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,cAAc,CAAC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAClG,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAGlE,MAAM,qBAAqB,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,6BAA6B,EAAE,CAAC,CAAC;QAEjG,IAAI,qBAAqB,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,MAAM,CAAC,wCAAwC,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YAC3F,MAAM,OAAO,GAAG,MAAM,CAAC,wCAAwC,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YAC3F,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,2BAA2B,CAAC;iBACvE,QAAQ,CAAC;gBACR,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,IAAI,gBAAgB,CAAC;gBACjE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,IAAI,gBAAgB,CAAC;gBACjE,OAAO,EAAE,qBAAqB,CAAC,IAAI,IAAI,IAAI;aAC5C,CAAC,CAAC;QACP,CAAC;QAED,MAAM,qBAAqB,GAAG,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,6BAA6B,EAAE,CAAC,CAAC;QAEjG,IAAI,qBAAqB,EAAE,CAAC;YAC1B,MAAM,OAAO,GAAG,MAAM,CAAC,wCAAwC,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YAC3F,MAAM,OAAO,GAAG,MAAM,CAAC,wCAAwC,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YAC3F,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,2BAA2B,CAAC;iBACvE,QAAQ,CAAC;gBACR,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,IAAI,gBAAgB,CAAC;gBACjE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,OAAO,IAAI,gBAAgB,CAAC;gBACjE,OAAO,EAAE,qBAAqB,CAAC,IAAI,IAAI,IAAI;aAC5C,CAAC,CAAC;QACP,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,2BAA2B,CAAC;aACvE,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,2BAA2B,CAAC;aACvE,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE/C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,aAAa,CAAC;iBACzD,QAAQ,CAAC;gBACR,QAAQ,EAAE,CAAC;gBACX,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC;gBAC1C,OAAO,EAAE,GAAG;aACb,CAAC;iBACD,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,SAAS,CAAC;aACrD,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACzC,CAAC;IAGD,IAAW,MAAM;QACf,OAAO,KAAK,CAAC,MAAgB,CAAC;IAChC,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACvH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,mBAAmB,CAAC,KAA0B;QAClD,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACrD,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kEAAkE,MAAM,CAAC,SAAS,WAAW,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAChI,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;gBAClD,OAAO,EAAE,0BAA0B;gBACnC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3B,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1F,IAAI,CAAC,iDAAiD,EAAE,CAAC;QAC3D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,iBAAiB,CAAC,KAA0B;QAChD,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,gEAAgE,MAAM,CAAC,SAAS,WAAW,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAC9H,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;gBAClD,OAAO,EAAE,yBAAyB;gBAClC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3B,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,yBAAyB,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACzF,IAAI,CAAC,2CAA2C,EAAE,CAAC;QACrD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,kBAAkB,CAAC,KAA0B;QACjD,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACrD,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4DAA4D,MAAM,CAAC,SAAS,WAAW,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAC1H,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;gBAClD,OAAO,EAAE,mCAAmC;gBAC5C,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3B,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,mCAAmC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnG,IAAI,CAAC,4CAA4C,EAAE,CAAC;QACtD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,gBAAgB,CAAC,KAA0B;QAC/C,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACrD,MAAM,OAAO,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0DAA0D,MAAM,CAAC,SAAS,WAAW,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YACxH,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;gBAClD,OAAO,EAAE,oBAAoB;gBAC7B,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3B,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpF,IAAI,CAAC,oCAAoC,EAAE,CAAC;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,WAAW,CAAC,KAA0B;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACrD,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC;QACxD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YACpC,MAAM,MAAM,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC1F,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC7D,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;gBAClD,OAAO,EAAE,uBAAuB;gBAChC,SAAS,EAAE,YAAY;aACxB,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,GAAG,YAAY,CAAC;YACpF,IAAI,CAAC,sCAAsC,EAAE,CAAC;YAC9C,IAAI,CAAC,kCAAkC,EAAE,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAGD;;;;OAIG;IACI,6BAA6B,CAAC,MAAc;QACjD,KAAK,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,CAAC,mCAAmC,EAAE,CAAC;QAC3C,IAAI,CAAC,+CAA+C,EAAE,CAAC;QACvD,IAAI,CAAC,mCAAmC,EAAE,CAAC;QAC3C,IAAI,CAAC,yCAAyC,EAAE,CAAC;QACjD,IAAI,CAAC,sCAAsC,EAAE,CAAC;QAC9C,IAAI,CAAC,6CAA6C,EAAE,CAAC;QACrD,IAAI,CAAC,uCAAuC,EAAE,CAAC;QAC/C,IAAI,CAAC,8CAA8C,EAAE,CAAC;QACtD,IAAI,CAAC,2CAA2C,EAAE,CAAC;QACnD,IAAI,CAAC,kCAAkC,EAAE,CAAC;QAC1C,IAAI,CAAC,uCAAuC,EAAE,CAAC;QAC/C,IAAI,CAAC,oCAAoC,EAAE,CAAC;QAC5C,IAAI,CAAC,4CAA4C,EAAE,CAAC;QACpD,IAAI,CAAC,iDAAiD,EAAE,CAAC;QACzD,IAAI,CAAC,2CAA2C,EAAE,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACI,mCAAmC;QACxC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EACnE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACvH,CAAC;IAED;;;;;;OAMG;IACI,+CAA+C;QACpD,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IACrH,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACI,mCAAmC;QACxC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,EACrF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;QACpE,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,EACrF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;YACjE,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EACpF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;YAC9C,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,EACrF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;YACjE,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EACpF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAC/D,CAAC;aAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACzE,0DAA0D;YAC1D,IAAI,IAAI,CAAC,MAAM,CAAC,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;gBACnE,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,EACrF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;gBACjE,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EACpF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,EACrF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;gBACjE,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EACpF,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;aAAM,CAAC;YACN,eAAe;QACjB,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACI,yCAAyC;QAC9C,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAClD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,CAAC,CAAC,KAAK,CAAC;QAEjH,IAAI,YAAY,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,CAAC,OAAO,EAAE,CAAC;YACnF,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,2BAA2B,CAAC,CAAC;YAC7G,MAAM,YAAY,GAAG,WAAW,CAAC,KAAe,CAAC;YACjD,MAAM,QAAQ,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,IAAI,gBAAgB,CAAC,CAAC;YAClE,MAAM,QAAQ,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,IAAI,gBAAgB,CAAC,CAAC;YAClE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;YACxE,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;gBACjC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,2BAA2B,EAAE,WAAW,CAAC,CAAC;YAC3G,CAAC;QACH,CAAC;QAED,IAAI,YAAY,KAAK,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,wBAAwB,CAAC,OAAO,EAAE,CAAC;YACnF,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,2BAA2B,CAAC,CAAC;YAC7G,MAAM,YAAY,GAAG,WAAW,CAAC,KAAe,CAAC;YACjD,MAAM,QAAQ,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,IAAI,gBAAgB,CAAC,CAAC;YAClE,MAAM,QAAQ,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,IAAI,gBAAgB,CAAC,CAAC;YAClE,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;YACxE,IAAI,YAAY,KAAK,WAAW,EAAE,CAAC;gBACjC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,2BAA2B,EAAE,WAAW,CAAC,CAAC;YAC3G,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,sCAAsC;QAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC;QAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QACxC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;QAC5F,mCAAmC;QACnC,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACtM,CAAC;IAED;;;;;;;;OAQG;IACI,6CAA6C;QAClD,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC1H,CAAC;IAED;;;;;;;;OAQG;IACI,uCAAuC;QAC5C,cAAc;QACd,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YAClH,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACrH,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;gBAC/B,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACrH,CAAC;YAED,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;gBAChC,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACrH,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACI,8CAA8C;QACnD,IAAI,IAAI,CAAC,MAAM,CAAC,qBAAgC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvE,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YACzH,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5G,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACI,2CAA2C;QAChD,kBAAkB;QAClB,IAAI,IAAI,CAAC,MAAM,CAAC,kBAA6B,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC5E,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,uBAAuB,EAAE,IAAI,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;YAC3I,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACpH,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACI,kCAAkC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACzC,qBAAqB;QACrB,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpD,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,EACxE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzG,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;gBAC9B,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACxI,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACxI,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;YACnG,CAAC;YACD,mCAAmC;YACnC,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC3M,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACI,uCAAuC;QAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;QACxC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpD,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IACM,oCAAoC;QACzC,eAAe;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;QAClD,IAAI,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxD,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC5I,CAAC;IACH,CAAC;IACM,4CAA4C;QACjD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QAC7C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAClE,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,mCAAmC,CAAC,CAAC,CAAC;QACtI,CAAC;IACH,CAAC;IACM,iDAAiD;QACtD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QAC7C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAyB,EAAE,CAAC;YACvF,IAAI,CAAC,qBAAqB,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACnI,CAAC;IACH,CAAC;IACM,2CAA2C;QAChD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QAC7C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,YAAuB,EAAE,CAAC;YAC/E,IAAI,CAAC,eAAe,EAAE,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAC5H,CAAC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,KAA0B;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC1D,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;YACrD,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;gBAClD,OAAO,EAAE,uCAAuC;gBAChD,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,uCAAuC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrG,IAAI,CAAC,uCAAuC,EAAE,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,KAAK,CAAC,CAAC;QACzD,CAAC;IAEH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,cAAc,CAAC,KAA0B;QAC7C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QAC/B,MAAM,EACJ,cAAc,EAAE,EACd,uBAAuB,GACxB,GACF,GAAG,IAAI,CAAC,QAAQ,CAAC;QAElB,mCAAmC;QACnC,IAAI,MAAM,CAAC;QACX,QAAQ,KAAK,EAAE,CAAC;YAChB,KAAK,uBAAuB,CAAC,IAAI;gBAC/B,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,qBAAqB;gBAC3C,MAAM;YACR,KAAK,uBAAuB,CAAC,IAAI;gBAC/B,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,qBAAqB;gBAC3C,MAAM;YACR,KAAK,uBAAuB,CAAC,IAAI;gBAC/B,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,qBAAqB;gBAC3C,MAAM;YACR;gBACE,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,oBAAoB;QACnD,CAAC;QAED,IAAI,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACjE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAA0B;QACxC,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACrD,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,WAAW,EAAE,oBAAoB,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC/F,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,WAAW,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;YAClG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;YACzF,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;gBAClE,OAAO,EAAE,oBAAoB;gBAC7B,SAAS,EAAE,WAAW;aACvB,EAAE,WAAW,CAAC,CAAC;YAChB,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,GAAG,WAAW,CAAC;gBAChF,IAAI,CAAC,mCAAmC,EAAE,CAAC;YAC7C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACH,KAAK,CAAC,oBAAoB,CAAC,KAA0B;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACjE,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACrD,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QACD,kDAAkD;QAClD,MAAM,aAAa,GAAG,MAAM,CAAC,wCAAwC,CAAC,IAAI,CAAC,CAAC;QAC5E,IAAI,OAAO,aAAa,KAAK,QAAQ,IAAI,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE,aAAa,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,IAAI,aAAa,KAAK,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAC;YACnF,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;gBAClD,OAAO,EAAE,2BAA2B;gBACpC,SAAS,EAAE,aAAa;aACzB,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,GAAG,aAAa,CAAC;YACzF,IAAI,CAAC,yCAAyC,EAAE,CAAC;YACjD,OAAO;QACT,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,KAAK,CAAC,WAAW,CAAC,KAA0B;QAC1C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO;QACT,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAEjD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;QAClD,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACrD,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QACxF,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;gBAClD,OAAO,EAAE,uBAAuB;gBAChC,SAAS,EAAE,YAAY;aACxB,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,uBAAuB,CAAC,GAAG,YAAY,CAAC;QACtF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,KAA0B;QAC3C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;YACzD,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,CAAC,CAAC,KAAgB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC;QAEvE,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QACrD,IAAI,CAAC;YACH,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,KAAK,MAAM,EAAE,CAAC;gBACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;oBAClD,OAAO,EAAE,IAAI;oBACb,SAAS,EAAE,IAAI;oBACf,WAAW,EAAE;wBACX,qBAAqB,EAAE,UAAU;wBACjC,qBAAqB,EAAE,UAAU;qBAClC;oBACD,WAAW,EAAE,IAAI;iBAClB,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;gBAC1B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,GAAG,UAAU,CAAC;gBAChF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,GAAG,UAAU,CAAC;YAClF,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;gBACpD,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;oBAClD,OAAO,EAAE,qBAAqB;oBAC9B,SAAS,EAAE,UAAU;iBACtB,CAAC,CAAC;gBACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,GAAG,UAAU,CAAC;YAClF,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,KAAK,YAAY,EAAE,CAAC;gBACtD,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE;oBAClD,OAAO,EAAE,qBAAqB;oBAC9B,SAAS,EAAE,UAAU;iBACtB,CAAC,CAAC;gBACH,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,GAAG,UAAU,CAAC;YAClF,CAAC;YACD,IAAI,CAAC,sCAAsC,EAAE,CAAC;YAC9C,IAAI,CAAC,kCAAkC,EAAE,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QACxD,CAAC;IAEH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAgB,EAAE,MAAc;QAC9C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,QAAQ,EAAE;gBAChE,OAAO,EAAE,iBAAiB;gBAC1B,SAAS,EAAE,MAAM;aAClB,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,MAAM,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;YAC1D,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAES,gBAAgB,CAAC,KAAa;QACtC,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB;IAC9D,CAAC;IAEM,WAAW,CAAC,MAAc;QAC/B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACnC,OAAO;QACT,CAAC;QAED,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC;eAC1D,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAEzF,4BAA4B;QAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxE,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvD,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QAClH,CAAC;IACH,CAAC;IAES,iBAAiB,CAAC,MAAc,EAAE,IAAY,EAAE,MAAc;QACtE,MAAM,EACJ,OAAO,EAAE,EACP,MAAM,GACP,EACD,cAAc,GACf,GAAG,IAAI,CAAC,QAAQ,CAAC;QAElB,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;YACrE,OAAO;QACT,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACvG,aAAa,CAAC,yBAAyB,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QACvE,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;QACrE,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;aAC7D,KAAK,CAAC,GAAG,EAAE;YACV,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC;QACvC,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,KAA0B,EAAE,EAAE;YACpC,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEL,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,kBAAkB,CAAC,KAA0B,EAAE,MAAc;QACjE,IAAI,KAAgB,EAAE,CAAC;YACrB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBAClC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC/D,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC;YAC1E,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;YACpE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;YAC7E,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;CACF;AAED,MAAM,OAAO,QAAQ;IACG;IAAqB;IAA0B;IAAwB;IAA7F,YAAsB,IAAS,EAAY,MAAc,EAAY,MAAc,EAAU,MAAc;QAArF,SAAI,GAAJ,IAAI,CAAK;QAAY,WAAM,GAAN,MAAM,CAAQ;QAAY,WAAM,GAAN,MAAM,CAAQ;QAAU,WAAM,GAAN,MAAM,CAAQ;IAC3G,CAAC;IAED;;;OAGG;IACH,IAAW,gBAAgB;QACzB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC;IACvE,CAAC;IAED;;;;OAIG;IACI,wCAAwC,CAAC,oBAAyC;QACvF,MAAM,OAAO,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,MAAM,uBAAuB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;YACzJ,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACrD,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBACzB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;oBACd,OAAO,CAAC,CAAC;gBACX,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uEAAuE,EAAE,CAAC,CAAC,CAAC;QAC/F,CAAC;QACD,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAED;;;OAGG;IACI,wCAAwC,CAAC,WAAmB;QACjE,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC3B,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;YACzI,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACrD,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBACzB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;oBACd,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;gBACzC,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uEAAuE,EAAE,CAAC,CAAC,CAAC;QAC/F,CAAC;QACD,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAChD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAW,CAAC;IAChD,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAY,CAAC;IACtD,CAAC;IAED,IAAW,uBAAuB;QAChC,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACtE,IAAI,QAAQ,GAAG,YAAY,EAAE,CAAC;YAC5B,OAAO,QAAQ,GAAG,gBAAgB,CAAC;QACrC,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAW,kBAAkB;QAC3B,OAAO,IAAI,CAAC,wCAAwC,CAAC,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAW,CAAC,CAAC;IAC1G,CAAC;IAED,IAAW,iBAAiB;QAC1B,OAAO,IAAI,CAAC,wCAAwC,CAAC,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAW,CAAC,CAAC;IACzG,CAAC;IAED,IAAW,UAAU;QACnB,4BAA4B;QAC5B,IAAI,CAAC,CAAC,0BAA0B,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,sBAAsB,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,uBAAuB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpI,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC;YAC/D,OAAO,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YAC5D,GAAG,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YACpD,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;SACvD,CAAC;IACJ,CAAC;IAED,4BAA4B;IAC5B,IAAW,YAAY;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAC5D,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAChB,IAAI,GAAG,KAAK,cAAc,EAAE,CAAC;gBAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACtD,CAAC;YACD,IAAI,GAAG,IAAI,aAAa,IAAI,GAAG,IAAI,aAAa,EAAE,CAAC;gBACjD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,aAAa,GAAG,aAAa,CAAC,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YACnG,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,IAAW,kBAAkB;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAC5D,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,cAAc,CAAC;IACxC,CAAC;IAED,IAAW,SAAS;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,EACrE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QACpE,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC;IAC3B,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;IAC9D,CAAC;IAED,IAAW,kBAAkB;QAC3B,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC3D,IAAI,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,CAAC;QACX,CAAC;QAED,OAAO,WAAW,GAAG,0BAA0B,CAAC;IAClD,CAAC;IAED,IAAW,IAAI;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,GAAG,CAAC;IACxE,CAAC;IAED;;;;;;;;;OASG;IACI,mBAAmB,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAyB;QACrE,IAAI,WAAW,GAAe;YAC5B,IAAI,EAAE,SAAS,CAAC,KAAK;YACrB,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,CAAC;YACN,IAAI,EAAE,IAAI;SACX,CAAC;QAEF,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;YAEzB,MAAM,eAAe,GAAa,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;YACpH,MAAM,eAAe,GAAa,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;YAEpH,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,WAAW,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACtE,CAAC;YACD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/B,WAAW,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;QAED,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;YACzD,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,6BAA6B,CAAe,CAAC;QAC3F,CAAC;QAED,IAAI,CAAC,WAAW,IAAI,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,CAAC;YACzD,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,2BAA2B,CAAe,CAAC;QACzF,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;;;;;OASG;IACI,6BAA6B;QAClC,IAAI,eAAe,EAAE,gBAAgB,CAAC;QAEtC,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;YACnC,eAAe,GAAG,6CAA6C,CAAC;YAChE,gBAAgB,GAAG,6CAA6C,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,eAAe,GAAG,sBAAsB,CAAC;YACzC,gBAAgB,GAAG,uBAAuB,CAAC;QAC7C,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,eAAe,CAAc,CAAC;QACrF,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,gBAAgB,CAAc,CAAC;QACtF,OAAO,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;IAC9C,CAAC;IAED;;;;;;;;;OASG;IACI,6BAA6B;QAClC,IAAI,eAAe,EAAE,gBAAgB,CAAC;QAEtC,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;YACnC,eAAe,GAAG,6CAA6C,CAAC;YAChE,gBAAgB,GAAG,6CAA6C,CAAC;QACnE,CAAC;aAAM,CAAC;YACN,eAAe,GAAG,sBAAsB,CAAC;YACzC,gBAAgB,GAAG,uBAAuB,CAAC;QAC7C,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,eAAe,CAAc,CAAC;QACrF,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,gBAAgB,CAAc,CAAC;QACtF,OAAO,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;IAC9C,CAAC;CACF"}
1
+ {"version":3,"file":"AirConditioner.js","sourceRoot":"","sources":["../../src/devices/AirConditioner.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { AccessoryContext, BaseDevice } from '../baseDevice.js';
2
2
  import { LGThinQHomebridgePlatform } from '../platform.js';
3
3
  import { CharacteristicValue, Logger, PlatformAccessory } from 'homebridge';
4
4
  import { Device } from '../lib/Device.js';
5
+ import { BaseStatus } from '../status/BaseStatus.js';
5
6
  export default class Dehumidifier extends BaseDevice {
6
7
  readonly platform: LGThinQHomebridgePlatform;
7
8
  readonly accessory: PlatformAccessory<AccessoryContext>;
@@ -14,15 +15,13 @@ export default class Dehumidifier extends BaseDevice {
14
15
  updateAccessoryCharacteristic(device: Device): void;
15
16
  get Status(): DehumidifierStatus;
16
17
  }
17
- export declare class DehumidifierStatus {
18
- protected data: any;
19
- constructor(data: any);
18
+ export declare class DehumidifierStatus extends BaseStatus {
20
19
  get isPowerOn(): boolean;
21
20
  get opMode(): number;
22
21
  get windStrength(): number;
23
22
  get isDehumidifying(): boolean;
24
- get humidityCurrent(): any;
25
- get humidityTarget(): any;
23
+ get humidityCurrent(): number;
24
+ get humidityTarget(): number;
26
25
  get rotationSpeed(): number;
27
26
  get isWaterTankFull(): boolean;
28
27
  }
@@ -1,6 +1,7 @@
1
1
  import { BaseDevice } from '../baseDevice.js';
2
- import { safeParseInt, normalizeNumber } from '../helper.js';
2
+ import { normalizeNumber, safeParseInt } from '../helper.js';
3
3
  import { FAN_SPEED_MIN, FAN_SPEED_MAX, HUMIDITY_MAX } from '../lib/constants.js';
4
+ import { BaseStatus } from '../status/BaseStatus.js';
4
5
  var RotateSpeed;
5
6
  (function (RotateSpeed) {
6
7
  RotateSpeed[RotateSpeed["LOW"] = 2] = "LOW";
@@ -139,38 +140,34 @@ export default class Dehumidifier extends BaseDevice {
139
140
  this.serviceHumiditySensor.updateCharacteristic(Characteristic.StatusActive, this.Status.isPowerOn);
140
141
  }
141
142
  get Status() {
142
- return new DehumidifierStatus(this.accessory.context.device.snapshot);
143
+ return this.getStatus(DehumidifierStatus);
143
144
  }
144
145
  }
145
- export class DehumidifierStatus {
146
- data;
147
- constructor(data) {
148
- this.data = data;
149
- }
146
+ export class DehumidifierStatus extends BaseStatus {
150
147
  get isPowerOn() {
151
- return this.data['airState.operation'];
148
+ return this.getBool('airState.operation');
152
149
  }
153
150
  get opMode() {
154
- return this.data['airState.opMode'];
151
+ return this.getInt('airState.opMode');
155
152
  }
156
153
  get windStrength() {
157
- return this.data['airState.windStrength'];
154
+ return this.getInt('airState.windStrength');
158
155
  }
159
156
  get isDehumidifying() {
160
157
  return DEHUMIDIFYING_MODES.includes(this.opMode) && this.humidityCurrent >= this.humidityTarget;
161
158
  }
162
159
  get humidityCurrent() {
163
- return this.data['airState.humidity.current'] || 0;
160
+ return this.getInt('airState.humidity.current');
164
161
  }
165
162
  get humidityTarget() {
166
- return this.data['airState.humidity.desired'] || 0;
163
+ return this.getInt('airState.humidity.desired');
167
164
  }
168
165
  get rotationSpeed() {
169
- const index = Object.keys(RotateSpeed).indexOf(safeParseInt(this.data['airState.windStrength']).toString());
166
+ const index = Object.keys(RotateSpeed).indexOf(this.windStrength.toString());
170
167
  return index !== -1 ? index + 1 : Object.keys(RotateSpeed).length / 2;
171
168
  }
172
169
  get isWaterTankFull() {
173
- return !!this.data['airState.notificationExt'];
170
+ return this.getBool('airState.notificationExt');
174
171
  }
175
172
  }
176
173
  //# sourceMappingURL=Dehumidifier.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Dehumidifier.js","sourceRoot":"","sources":["../../src/devices/Dehumidifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Dehumidifier.js","sourceRoot":"","sources":["../../src/devices/Dehumidifier.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { AccessoryContext, BaseDevice } from '../baseDevice.js';
2
2
  import { LGThinQHomebridgePlatform } from '../platform.js';
3
3
  import { CharacteristicValue, Logger, PlatformAccessory, Service } from 'homebridge';
4
4
  import { Device } from '../lib/Device.js';
5
+ import { BaseStatus } from '../status/BaseStatus.js';
5
6
  export default class RangeHood extends BaseDevice {
6
7
  readonly platform: LGThinQHomebridgePlatform;
7
8
  readonly accessory: PlatformAccessory<AccessoryContext>;
@@ -13,4 +14,11 @@ export default class RangeHood extends BaseDevice {
13
14
  setLightActive(value: CharacteristicValue): Promise<void>;
14
15
  setLightBrightness(value: CharacteristicValue): Promise<void>;
15
16
  updateAccessoryCharacteristic(device: Device): void;
17
+ get Status(): RangeHoodStatus;
18
+ }
19
+ export declare class RangeHoodStatus extends BaseStatus {
20
+ get isVentOn(): boolean;
21
+ get isLampOn(): boolean;
22
+ get ventLevel(): number;
23
+ get lampLevel(): number;
16
24
  }
@@ -1,5 +1,6 @@
1
1
  import { BaseDevice } from '../baseDevice.js';
2
2
  import { ValueType } from '../lib/DeviceModel.js';
3
+ import { BaseStatus } from '../status/BaseStatus.js';
3
4
  export default class RangeHood extends BaseDevice {
4
5
  platform;
5
6
  accessory;
@@ -86,14 +87,28 @@ export default class RangeHood extends BaseDevice {
86
87
  }
87
88
  updateAccessoryCharacteristic(device) {
88
89
  super.updateAccessoryCharacteristic(device);
89
- const hoodState = device.snapshot.hoodState;
90
- const isVentOn = hoodState.ventSet === device.deviceModel.lookupMonitorName('VentSet', '@CP_ENABLE_W');
91
- const isLampOn = hoodState.lampSet === device.deviceModel.lookupMonitorName('LampSet', '@CP_ENABLE_W');
92
90
  const { Characteristic, } = this.platform;
93
- this.serviceHood.updateCharacteristic(Characteristic.On, isVentOn);
94
- this.serviceHood.updateCharacteristic(Characteristic.RotationSpeed, hoodState.ventLevel);
95
- this.serviceLight.updateCharacteristic(Characteristic.On, isLampOn);
96
- this.serviceLight.updateCharacteristic(Characteristic.Brightness, hoodState.lampLevel);
91
+ this.serviceHood.updateCharacteristic(Characteristic.On, this.Status.isVentOn);
92
+ this.serviceHood.updateCharacteristic(Characteristic.RotationSpeed, this.Status.ventLevel);
93
+ this.serviceLight.updateCharacteristic(Characteristic.On, this.Status.isLampOn);
94
+ this.serviceLight.updateCharacteristic(Characteristic.Brightness, this.Status.lampLevel);
95
+ }
96
+ get Status() {
97
+ return this.getStatus(RangeHoodStatus, 'hoodState');
98
+ }
99
+ }
100
+ export class RangeHoodStatus extends BaseStatus {
101
+ get isVentOn() {
102
+ return this.getString('ventSet') === this.deviceModel.lookupMonitorName('VentSet', '@CP_ENABLE_W');
103
+ }
104
+ get isLampOn() {
105
+ return this.getString('lampSet') === this.deviceModel.lookupMonitorName('LampSet', '@CP_ENABLE_W');
106
+ }
107
+ get ventLevel() {
108
+ return this.getInt('ventLevel');
109
+ }
110
+ get lampLevel() {
111
+ return this.getInt('lampLevel');
97
112
  }
98
113
  }
99
114
  //# sourceMappingURL=RangeHood.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RangeHood.js","sourceRoot":"","sources":["../../src/devices/RangeHood.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RangeHood.js","sourceRoot":"","sources":["../../src/devices/RangeHood.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { AccessoryContext, BaseDevice } from '../baseDevice.js';
2
2
  import { LGThinQHomebridgePlatform } from '../platform.js';
3
3
  import { CharacteristicValue, Logger, PlatformAccessory, Service } from 'homebridge';
4
4
  import { Device } from '../lib/Device.js';
5
- import { DeviceModel } from '../lib/DeviceModel.js';
5
+ import { BaseStatus } from '../status/BaseStatus.js';
6
6
  /** @deprecated Use STYLER_NOT_RUNNING_STATUS from lib/constants.js instead */
7
7
  export declare const NOT_RUNNING_STATUS: string[];
8
8
  export default class Styler extends BaseDevice {
@@ -14,14 +14,10 @@ export default class Styler extends BaseDevice {
14
14
  setActive(value: CharacteristicValue): Promise<void>;
15
15
  get Status(): StylerStatus;
16
16
  }
17
- declare class StylerStatus {
18
- protected data: any;
19
- protected deviceModel: DeviceModel;
20
- constructor(data: any, deviceModel: DeviceModel);
17
+ export declare class StylerStatus extends BaseStatus {
21
18
  get isPowerOn(): boolean;
22
19
  get isRemoteStartOn(): boolean;
23
20
  get isRunning(): boolean;
24
21
  get isError(): boolean;
25
22
  get remainDuration(): number;
26
23
  }
27
- export {};
@@ -1,6 +1,7 @@
1
1
  import { BaseDevice } from '../baseDevice.js';
2
2
  import { STYLER_NOT_RUNNING_STATUS, ONE_DAY_IN_SECONDS } from '../lib/constants.js';
3
3
  import { toSeconds } from '../utils/normalize.js';
4
+ import { BaseStatus } from '../status/BaseStatus.js';
4
5
  /** @deprecated Use STYLER_NOT_RUNNING_STATUS from lib/constants.js instead */
5
6
  export const NOT_RUNNING_STATUS = STYLER_NOT_RUNNING_STATUS;
6
7
  export default class Styler extends BaseDevice {
@@ -42,30 +43,25 @@ export default class Styler extends BaseDevice {
42
43
  }
43
44
  }
44
45
  get Status() {
45
- return new StylerStatus(this.accessory.context.device.snapshot?.styler, this.accessory.context.device.deviceModel);
46
+ return this.getStatus(StylerStatus, 'styler');
46
47
  }
47
48
  }
48
- class StylerStatus {
49
- data;
50
- deviceModel;
51
- constructor(data, deviceModel) {
52
- this.data = data;
53
- this.deviceModel = deviceModel;
54
- }
49
+ export class StylerStatus extends BaseStatus {
55
50
  get isPowerOn() {
56
- return !['POWEROFF', 'POWERFAIL'].includes(this.data?.state);
51
+ return !['POWEROFF', 'POWERFAIL'].includes(this.getString('state'));
57
52
  }
58
53
  get isRemoteStartOn() {
59
- return this.data.remoteStart === this.deviceModel.lookupMonitorName('remoteStart', '@CP_ON_EN_W');
54
+ return this.getString('remoteStart') === this.deviceModel.lookupMonitorName('remoteStart', '@CP_ON_EN_W');
60
55
  }
61
56
  get isRunning() {
62
- return this.isPowerOn && !NOT_RUNNING_STATUS.includes(this.data?.state);
57
+ return this.isPowerOn && !NOT_RUNNING_STATUS.includes(this.getString('state'));
63
58
  }
64
59
  get isError() {
65
- return this.data?.state === 'ERROR';
60
+ return this.getString('state') === 'ERROR';
66
61
  }
67
62
  get remainDuration() {
68
- const remainTimeHour = this.data?.remainTimeHour || 0, remainTimeMinute = this.data?.remainTimeMinute || 0;
63
+ const remainTimeHour = this.getInt('remainTimeHour');
64
+ const remainTimeMinute = this.getInt('remainTimeMinute');
69
65
  let remainingDuration = 0;
70
66
  if (this.isRunning) {
71
67
  remainingDuration = toSeconds(remainTimeHour, remainTimeMinute);
@@ -1 +1 @@
1
- {"version":3,"file":"Styler.js","sourceRoot":"","sources":["../../src/devices/Styler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAKhE,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,kBAAkB,GAAG,yBAAyB,CAAC;AAE5D,MAAM,CAAC,OAAO,OAAO,MAAO,SAAQ,UAAU;IAI1B;IACA;IAJR,aAAa,CAAU;IAEjC,YACkB,QAAmC,EACnC,SAA8C,EAC9D,MAAc;QAEd,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAJnB,aAAQ,GAAR,QAAQ,CAA2B;QACnC,cAAS,GAAT,SAAS,CAAqC;QAK9D,MAAM,MAAM,GAAW,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC;QAErD,MAAM,EACJ,OAAO,EAAE,EACP,KAAK,GACN,EACD,cAAc,GACf,GAAG,IAAI,CAAC,QAAQ,CAAC;QAElB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,MAAM,CAAC;aACxD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAChC,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACvE,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACvG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5F,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC;YAC9E,QAAQ,EAAE,kBAAkB;SAC7B,CAAC,CAAC;IACL,CAAC;IAEM,6BAA6B,CAAC,MAAc;QACjD,KAAK,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC;QAE5C,MAAM,EACJ,cAAc,GACf,GAAG,IAAI,CAAC,QAAQ,CAAC;QAClB,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9F,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7F,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC;QACxG,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,KAAK,kBAAkB,EAAE,CAAC;YACtD,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACxG,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,cAAc,CAAC,WAAW,EAChE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC1G,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,KAA0B;QACxC,KAAK,KAAK,CAAC;QACX,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAChC,iBAAiB;QACnB,CAAC;IACH,CAAC;IAED,IAAW,MAAM;QACf,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACrH,CAAC;CACF;AAED,MAAM,YAAY;IACM;IAAqB;IAA3C,YAAsB,IAAS,EAAY,WAAwB;QAA7C,SAAI,GAAJ,IAAI,CAAK;QAAY,gBAAW,GAAX,WAAW,CAAa;IAAI,CAAC;IAExE,IAAW,SAAS;QAClB,OAAO,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IACpG,CAAC;IAED,IAAW,SAAS;QAClB,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IAED,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC;IACtC,CAAC;IAED,IAAW,cAAc;QACvB,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,EAAE,cAAc,IAAI,CAAC,EACnD,gBAAgB,GAAG,IAAI,CAAC,IAAI,EAAE,gBAAgB,IAAI,CAAC,CAAC;QAEtD,IAAI,iBAAiB,GAAG,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,iBAAiB,GAAG,SAAS,CAAC,cAAc,EAAE,gBAAgB,CAAC,CAAC;QAClE,CAAC;QAED,OAAO,iBAAiB,CAAC;IAC3B,CAAC;CACF"}
1
+ {"version":3,"file":"Styler.js","sourceRoot":"","sources":["../../src/devices/Styler.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { AccessoryContext, BaseDevice } from '../baseDevice.js';
2
2
  import { LGThinQHomebridgePlatform } from '../platform.js';
3
3
  import { CharacteristicValue, Logger, PlatformAccessory, Service } from 'homebridge';
4
4
  import { Device } from '../lib/Device.js';
5
- import { DeviceModel } from '../lib/DeviceModel.js';
5
+ import { BaseStatus } from '../status/BaseStatus.js';
6
6
  /** @deprecated Use WASHER_NOT_RUNNING_STATUS from lib/constants.js instead */
7
7
  export declare const NOT_RUNNING_STATUS: string[];
8
8
  export default class WasherDryer extends BaseDevice {
@@ -20,10 +20,7 @@ export default class WasherDryer extends BaseDevice {
20
20
  updateAccessoryCharacteristic(device: Device): void;
21
21
  update(snapshot: any): void;
22
22
  }
23
- export declare class WasherDryerStatus {
24
- data: any;
25
- protected deviceModel: DeviceModel;
26
- constructor(data: any, deviceModel: DeviceModel);
23
+ export declare class WasherDryerStatus extends BaseStatus {
27
24
  get isPowerOn(): boolean;
28
25
  get isRunning(): boolean;
29
26
  get isError(): boolean;
@@ -1,7 +1,7 @@
1
1
  import { BaseDevice } from '../baseDevice.js';
2
2
  import { PlatformType, WASHER_NOT_RUNNING_STATUS, ONE_DAY_IN_SECONDS, TEN_MINUTES_MS, TCL_MAINTENANCE_THRESHOLD } from '../lib/constants.js';
3
- import { safeParseInt } from '../utils/normalize.js';
4
3
  import { toSeconds } from '../utils/normalize.js';
4
+ import { BaseStatus } from '../status/BaseStatus.js';
5
5
  /** @deprecated Use WASHER_NOT_RUNNING_STATUS from lib/constants.js instead */
6
6
  export const NOT_RUNNING_STATUS = WASHER_NOT_RUNNING_STATUS;
7
7
  export default class WasherDryer extends BaseDevice {
@@ -122,34 +122,29 @@ export default class WasherDryer extends BaseDevice {
122
122
  }
123
123
  }
124
124
  }
125
- export class WasherDryerStatus {
126
- data;
127
- deviceModel;
128
- constructor(data, deviceModel) {
129
- this.data = data;
130
- this.deviceModel = deviceModel;
131
- }
125
+ export class WasherDryerStatus extends BaseStatus {
132
126
  get isPowerOn() {
133
- return !['POWEROFF', 'POWERFAIL'].includes(this.data?.state);
127
+ return !['POWEROFF', 'POWERFAIL'].includes(this.getString('state'));
134
128
  }
135
129
  get isRunning() {
136
- return this.isPowerOn && !NOT_RUNNING_STATUS.includes(this.data?.state);
130
+ return this.isPowerOn && !NOT_RUNNING_STATUS.includes(this.getString('state'));
137
131
  }
138
132
  get isError() {
139
- return this.data?.state === 'ERROR';
133
+ return this.getString('state') === 'ERROR';
140
134
  }
141
135
  get isRemoteStartEnable() {
142
- return this.data.remoteStart === this.deviceModel.lookupMonitorName('remoteStart', '@CP_ON_EN_W');
136
+ return this.getString('remoteStart') === this.deviceModel.lookupMonitorName('remoteStart', '@CP_ON_EN_W');
143
137
  }
144
138
  get isDoorLocked() {
145
139
  const current = this.deviceModel.lookupMonitorName('doorLock', '@CP_ON_EN_W');
146
140
  if (current === null) {
147
- return this.data.doorLock === 'DOORLOCK_ON';
141
+ return this.getString('doorLock') === 'DOORLOCK_ON';
148
142
  }
149
- return this.data.doorLock === current;
143
+ return this.getString('doorLock') === current;
150
144
  }
151
145
  get remainDuration() {
152
- const remainTimeHour = this.data?.remainTimeHour || 0, remainTimeMinute = this.data?.remainTimeMinute || 0;
146
+ const remainTimeHour = this.getInt('remainTimeHour');
147
+ const remainTimeMinute = this.getInt('remainTimeMinute');
153
148
  let remainingDuration = 0;
154
149
  if (this.isRunning) {
155
150
  remainingDuration = toSeconds(remainTimeHour, remainTimeMinute);
@@ -157,7 +152,7 @@ export class WasherDryerStatus {
157
152
  return remainingDuration;
158
153
  }
159
154
  get TCLCount() {
160
- return Math.min(safeParseInt(this.data?.TCLCount), TCL_MAINTENANCE_THRESHOLD);
155
+ return Math.min(this.getInt('TCLCount'), TCL_MAINTENANCE_THRESHOLD);
161
156
  }
162
157
  }
163
158
  //# sourceMappingURL=WasherDryer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WasherDryer.js","sourceRoot":"","sources":["../../src/devices/WasherDryer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WasherDryer.js","sourceRoot":"","sources":["../../src/devices/WasherDryer.ts"],"names":[],"mappings":"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"}
@@ -60,6 +60,7 @@ export declare const AC_MODEL_FEATURES: {
60
60
  jetMode: string[];
61
61
  quietMode: string[];
62
62
  energySaveMode: string[];
63
+ airClean: string[];
63
64
  /** Models that do NOT support the airState.mon.timeout command */
64
65
  noMonitorTimeout: string[];
65
66
  };
@@ -70,6 +70,7 @@ export const AC_MODEL_FEATURES = {
70
70
  jetMode: ['RAC_056905'],
71
71
  quietMode: ['WINF_056905'],
72
72
  energySaveMode: ['WINF_056905', 'RAC_056905'],
73
+ airClean: ['RAC_056905'],
73
74
  /** Models that do NOT support the airState.mon.timeout command */
74
75
  noMonitorTimeout: ['RAC_056905'],
75
76
  };
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"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"}
@@ -4,9 +4,11 @@ import { DeviceModel } from '../lib/DeviceModel.js';
4
4
  * Provides common utility methods for parsing and accessing device data.
5
5
  */
6
6
  export declare abstract class BaseStatus {
7
- protected readonly data: Record<string, unknown> | undefined;
7
+ protected readonly _data: Record<string, unknown> | undefined;
8
8
  protected readonly deviceModel: DeviceModel;
9
- constructor(data: Record<string, unknown> | undefined, deviceModel: DeviceModel);
9
+ constructor(_data: Record<string, unknown> | undefined, deviceModel: DeviceModel);
10
+ /** Raw data access for subclasses that need direct field access */
11
+ get data(): Record<string, any>;
10
12
  /**
11
13
  * Safely get an integer value from the data with a fallback.
12
14
  */
@@ -4,42 +4,46 @@ import { safeParseInt } from '../helper.js';
4
4
  * Provides common utility methods for parsing and accessing device data.
5
5
  */
6
6
  export class BaseStatus {
7
- data;
7
+ _data;
8
8
  deviceModel;
9
- constructor(data, deviceModel) {
10
- this.data = data;
9
+ constructor(_data, deviceModel) {
10
+ this._data = _data;
11
11
  this.deviceModel = deviceModel;
12
12
  }
13
+ /** Raw data access for subclasses that need direct field access */
14
+ get data() {
15
+ return this._data || {};
16
+ }
13
17
  /**
14
18
  * Safely get an integer value from the data with a fallback.
15
19
  */
16
20
  getInt(key, fallback = 0) {
17
- return safeParseInt(this.data?.[key], fallback);
21
+ return safeParseInt(this._data?.[key], fallback);
18
22
  }
19
23
  /**
20
24
  * Safely get a string value from the data with a fallback.
21
25
  */
22
26
  getString(key, fallback = '') {
23
- const value = this.data?.[key];
27
+ const value = this._data?.[key];
24
28
  return typeof value === 'string' ? value : fallback;
25
29
  }
26
30
  /**
27
31
  * Safely get a boolean value from the data.
28
32
  */
29
33
  getBool(key) {
30
- return !!this.data?.[key];
34
+ return !!this._data?.[key];
31
35
  }
32
36
  /**
33
37
  * Check if a key exists in the data.
34
38
  */
35
39
  has(key) {
36
- return this.data !== undefined && key in this.data;
40
+ return this._data !== undefined && key in this._data;
37
41
  }
38
42
  /**
39
43
  * Get the raw value for a key.
40
44
  */
41
45
  getRaw(key) {
42
- return this.data?.[key];
46
+ return this._data?.[key];
43
47
  }
44
48
  }
45
49
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BaseStatus.js","sourceRoot":"","sources":["../../src/status/BaseStatus.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C;;;GAGG;AACH,MAAM,OAAgB,UAAU;IAET;IACA;IAFrB,YACqB,IAAyC,EACzC,WAAwB;QADxB,SAAI,GAAJ,IAAI,CAAqC;QACzC,gBAAW,GAAX,WAAW,CAAa;IAC1C,CAAC;IAEJ;;OAEG;IACO,MAAM,CAAC,GAAW,EAAE,QAAQ,GAAG,CAAC;QACxC,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACO,SAAS,CAAC,GAAW,EAAE,QAAQ,GAAG,EAAE;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;QAC/B,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtD,CAAC;IAED;;OAEG;IACO,OAAO,CAAC,GAAW;QAC3B,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACO,GAAG,CAAC,GAAW;QACvB,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC;IACrD,CAAC;IAED;;OAEG;IACO,MAAM,CAAI,GAAW;QAC7B,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAkB,CAAC;IAC3C,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAgB,eAAgB,SAAQ,UAAU;IACtD;;OAEG;IACH,IAAW,cAAc;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;CAWF"}
1
+ {"version":3,"file":"BaseStatus.js","sourceRoot":"","sources":["../../src/status/BaseStatus.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C;;;GAGG;AACH,MAAM,OAAgB,UAAU;IAET;IACA;IAFrB,YACqB,KAA0C,EAC1C,WAAwB;QADxB,UAAK,GAAL,KAAK,CAAqC;QAC1C,gBAAW,GAAX,WAAW,CAAa;IAC1C,CAAC;IAEJ,mEAAmE;IACnE,IAAW,IAAI;QACb,OAAQ,IAAI,CAAC,KAA6B,IAAI,EAAE,CAAC;IACnD,CAAC;IAED;;OAEG;IACO,MAAM,CAAC,GAAW,EAAE,QAAQ,GAAG,CAAC;QACxC,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACO,SAAS,CAAC,GAAW,EAAE,QAAQ,GAAG,EAAE;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;QAChC,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtD,CAAC;IAED;;OAEG;IACO,OAAO,CAAC,GAAW;QAC3B,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACO,GAAG,CAAC,GAAW;QACvB,OAAO,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC;IACvD,CAAC;IAED;;OAEG;IACO,MAAM,CAAI,GAAW;QAC7B,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,GAAG,CAAkB,CAAC;IAC5C,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAgB,eAAgB,SAAQ,UAAU;IACtD;;OAEG;IACH,IAAW,cAAc;QACvB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,GAAG,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;CAWF"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "displayName": "Homebridge LG ThinQ",
3
3
  "name": "@mp-consulting/homebridge-lg-thinq",
4
- "version": "1.0.7",
4
+ "version": "1.0.8",
5
5
  "description": "A Homebridge plugin for controlling/monitoring LG ThinQ devices via LG ThinQ platform.",
6
6
  "author": {
7
7
  "name": "Mickael Palma",