@zwave-js/cc 11.0.0 → 11.1.0

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.
@@ -99,6 +99,22 @@ const __assertType__number = $o => {
99
99
  }
100
100
  return _number($o);
101
101
  };
102
+ const __assertType__sa__number_ea_2 = $o => {
103
+ function _number($o) {
104
+ return typeof $o !== "number" ? {} : null;
105
+ }
106
+ function sa__number_ea_2($o) {
107
+ if (!Array.isArray($o))
108
+ return {};
109
+ for (let i = 0; i < $o.length; i++) {
110
+ const error = _number($o[i]);
111
+ if (error)
112
+ return error;
113
+ }
114
+ return null;
115
+ }
116
+ return sa__number_ea_2($o);
117
+ };
102
118
  const safe_1 = require("@zwave-js/core/safe");
103
119
  const safe_2 = require("@zwave-js/shared/safe");
104
120
  const math_1 = require("alcalzone-shared/math");
@@ -252,10 +268,12 @@ let IndicatorCCAPI = class IndicatorCCAPI extends API_1.CCAPI {
252
268
  supportsCommand(cmd) {
253
269
  switch (cmd) {
254
270
  case _Types_1.IndicatorCommand.Get:
271
+ case _Types_1.IndicatorCommand.Report:
255
272
  return this.isSinglecast();
256
273
  case _Types_1.IndicatorCommand.Set:
257
274
  return true; // This is mandatory
258
275
  case _Types_1.IndicatorCommand.SupportedGet:
276
+ case _Types_1.IndicatorCommand.SupportedReport:
259
277
  return this.version >= 2 && this.isSinglecast();
260
278
  case _Types_1.IndicatorCommand.DescriptionGet:
261
279
  return this.version >= 4 && this.isSinglecast();
@@ -322,7 +340,7 @@ let IndicatorCCAPI = class IndicatorCCAPI extends API_1.CCAPI {
322
340
  return;
323
341
  if (response.values)
324
342
  return response.values;
325
- return response.value;
343
+ return response.indicator0Value;
326
344
  }
327
345
  async set(value) {
328
346
  __assertType("value", undefined, __assertType__su__number_sa__5_ea_5_5_5_eu.bind(void 0, value));
@@ -354,6 +372,20 @@ let IndicatorCCAPI = class IndicatorCCAPI extends API_1.CCAPI {
354
372
  };
355
373
  }
356
374
  }
375
+ async reportSupported(indicatorId, supportedProperties, nextIndicatorId) {
376
+ __assertType("indicatorId", "number", __assertType__number.bind(void 0, indicatorId));
377
+ __assertType("supportedProperties", undefined, __assertType__sa__number_ea_2.bind(void 0, supportedProperties));
378
+ __assertType("nextIndicatorId", "number", __assertType__number.bind(void 0, nextIndicatorId));
379
+ this.assertSupportsCommand(_Types_1.IndicatorCommand, _Types_1.IndicatorCommand.SupportedReport);
380
+ const cc = new IndicatorCCSupportedReport(this.applHost, {
381
+ nodeId: this.endpoint.nodeId,
382
+ endpoint: this.endpoint.index,
383
+ indicatorId,
384
+ supportedProperties,
385
+ nextIndicatorId,
386
+ });
387
+ await this.applHost.sendCommand(cc, this.commandOptions);
388
+ }
357
389
  /**
358
390
  * Instructs the node to identify itself. Available starting with V3 of this CC.
359
391
  */
@@ -619,8 +651,24 @@ let IndicatorCCSet = class IndicatorCCSet extends IndicatorCC {
619
651
  constructor(host, options) {
620
652
  super(host, options);
621
653
  if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
622
- // TODO: Deserialize payload
623
- throw new safe_1.ZWaveError(`${this.constructor.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
654
+ (0, safe_1.validatePayload)(this.payload.length >= 1);
655
+ const objCount = this.payload.length >= 2 ? this.payload[1] & 0b11111 : 0;
656
+ if (objCount === 0) {
657
+ this.indicator0Value = this.payload[0];
658
+ }
659
+ else {
660
+ (0, safe_1.validatePayload)(this.payload.length >= 2 + 3 * objCount);
661
+ this.values = [];
662
+ for (let i = 0; i < objCount; i++) {
663
+ const offset = 2 + 3 * i;
664
+ const value = {
665
+ indicatorId: this.payload[offset],
666
+ propertyId: this.payload[offset + 1],
667
+ value: this.payload[offset + 2],
668
+ };
669
+ this.values.push(value);
670
+ }
671
+ }
624
672
  }
625
673
  else {
626
674
  if (this.version === 1) {
@@ -643,28 +691,24 @@ let IndicatorCCSet = class IndicatorCCSet extends IndicatorCC {
643
691
  }
644
692
  }
645
693
  serialize() {
646
- if (this.indicator0Value != undefined) {
647
- this.payload = Buffer.from([this.indicator0Value]);
694
+ if (this.values != undefined) {
695
+ // V2+
696
+ this.payload = Buffer.alloc(2 + 3 * this.values.length, 0);
697
+ // Byte 0 is the legacy value
698
+ const objCount = this.values.length & MAX_INDICATOR_OBJECTS;
699
+ this.payload[1] = objCount;
700
+ for (let i = 0; i < objCount; i++) {
701
+ const offset = 2 + 3 * i;
702
+ this.payload[offset] = this.values[i].indicatorId;
703
+ this.payload[offset + 1] = this.values[i].propertyId;
704
+ const value = this.values[i].value;
705
+ this.payload[offset + 2] =
706
+ value === true ? 0xff : value === false ? 0x00 : value;
707
+ }
648
708
  }
649
709
  else {
650
- const values = this.values;
651
- const objCount = values.length & MAX_INDICATOR_OBJECTS;
652
- const valuesFlat = values
653
- .slice(0, objCount + 1)
654
- .map((o) => [
655
- o.indicatorId,
656
- o.propertyId,
657
- typeof o.value === "number"
658
- ? o.value
659
- : o.value
660
- ? 0xff
661
- : 0x00,
662
- ])
663
- .reduce((acc, cur) => acc.concat(...cur), []);
664
- this.payload = Buffer.concat([
665
- Buffer.from([0, objCount]),
666
- Buffer.from(valuesFlat),
667
- ]);
710
+ // V1
711
+ this.payload = Buffer.from([this.indicator0Value ?? 0]);
668
712
  }
669
713
  return super.serialize();
670
714
  }
@@ -695,58 +739,71 @@ exports.IndicatorCCSet = IndicatorCCSet;
695
739
  let IndicatorCCReport = class IndicatorCCReport extends IndicatorCC {
696
740
  constructor(host, options) {
697
741
  super(host, options);
698
- (0, safe_1.validatePayload)(this.payload.length >= 1);
699
- const objCount = this.payload.length >= 2 ? this.payload[1] & 0b11111 : 0;
700
- if (objCount === 0) {
701
- this.value = this.payload[0];
742
+ if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
743
+ (0, safe_1.validatePayload)(this.payload.length >= 1);
744
+ const objCount = this.payload.length >= 2 ? this.payload[1] & 0b11111 : 0;
745
+ if (objCount === 0) {
746
+ this.indicator0Value = this.payload[0];
747
+ }
748
+ else {
749
+ (0, safe_1.validatePayload)(this.payload.length >= 2 + 3 * objCount);
750
+ this.values = [];
751
+ for (let i = 0; i < objCount; i++) {
752
+ const offset = 2 + 3 * i;
753
+ const value = {
754
+ indicatorId: this.payload[offset],
755
+ propertyId: this.payload[offset + 1],
756
+ value: this.payload[offset + 2],
757
+ };
758
+ this.values.push(value);
759
+ }
760
+ // TODO: Think if we want this:
761
+ // // If not all Property IDs are included in the command for the actual Indicator ID,
762
+ // // a controlling node MUST assume non-specified Property IDs values to be 0x00.
763
+ // const indicatorId = this.values[0].indicatorId;
764
+ // const supportedIndicatorProperties =
765
+ // valueDB.getValue<number[]>(
766
+ // getSupportedPropertyIDsValueID(
767
+ // this.endpointIndex,
768
+ // indicatorId,
769
+ // ),
770
+ // ) ?? [];
771
+ // // Find out which ones are missing
772
+ // const missingIndicatorProperties = supportedIndicatorProperties.filter(
773
+ // prop =>
774
+ // !this.values!.find(({ propertyId }) => prop === propertyId),
775
+ // );
776
+ // // And assume they are 0 (false)
777
+ // for (const missing of missingIndicatorProperties) {
778
+ // this.setIndicatorValue({
779
+ // indicatorId,
780
+ // propertyId: missing,
781
+ // value: 0,
782
+ // });
783
+ // }
784
+ }
702
785
  }
703
786
  else {
704
- (0, safe_1.validatePayload)(this.payload.length >= 2 + 3 * objCount);
705
- this.values = [];
706
- for (let i = 0; i < objCount; i++) {
707
- const offset = 2 + 3 * i;
708
- const value = {
709
- indicatorId: this.payload[offset],
710
- propertyId: this.payload[offset + 1],
711
- value: this.payload[offset + 2],
712
- };
713
- this.values.push(value);
787
+ if ("value" in options) {
788
+ this.indicator0Value = options.value;
789
+ }
790
+ else if ("values" in options) {
791
+ if (options.values.length > MAX_INDICATOR_OBJECTS) {
792
+ throw new safe_1.ZWaveError(`Only ${MAX_INDICATOR_OBJECTS} indicator values can be set at a time!`, safe_1.ZWaveErrorCodes.Argument_Invalid);
793
+ }
794
+ this.values = options.values;
714
795
  }
715
- // TODO: Think if we want this:
716
- // // If not all Property IDs are included in the command for the actual Indicator ID,
717
- // // a controlling node MUST assume non-specified Property IDs values to be 0x00.
718
- // const indicatorId = this.values[0].indicatorId;
719
- // const supportedIndicatorProperties =
720
- // valueDB.getValue<number[]>(
721
- // getSupportedPropertyIDsValueID(
722
- // this.endpointIndex,
723
- // indicatorId,
724
- // ),
725
- // ) ?? [];
726
- // // Find out which ones are missing
727
- // const missingIndicatorProperties = supportedIndicatorProperties.filter(
728
- // prop =>
729
- // !this.values!.find(({ propertyId }) => prop === propertyId),
730
- // );
731
- // // And assume they are 0 (false)
732
- // for (const missing of missingIndicatorProperties) {
733
- // this.setIndicatorValue({
734
- // indicatorId,
735
- // propertyId: missing,
736
- // value: 0,
737
- // });
738
- // }
739
796
  }
740
797
  }
741
798
  persistValues(applHost) {
742
799
  if (!super.persistValues(applHost))
743
800
  return false;
744
- if (this.value != undefined) {
801
+ if (this.indicator0Value != undefined) {
745
802
  if (!this.supportsV2Indicators(applHost)) {
746
803
  // Publish the value
747
804
  const valueV1 = exports.IndicatorCCValues.valueV1;
748
805
  this.setMetadata(applHost, valueV1);
749
- this.setValue(applHost, valueV1, this.value);
806
+ this.setValue(applHost, valueV1, this.indicator0Value);
750
807
  }
751
808
  else {
752
809
  if (this.isSinglecast()) {
@@ -795,10 +852,32 @@ let IndicatorCCReport = class IndicatorCCReport extends IndicatorCC {
795
852
  this.setMetadata(applHost, valueV2, metadata);
796
853
  this.setValue(applHost, valueV2, value.value);
797
854
  }
855
+ serialize() {
856
+ if (this.values != undefined) {
857
+ // V2+
858
+ this.payload = Buffer.alloc(2 + 3 * this.values.length, 0);
859
+ // Byte 0 is the legacy value
860
+ const objCount = this.values.length & MAX_INDICATOR_OBJECTS;
861
+ this.payload[1] = objCount;
862
+ for (let i = 0; i < objCount; i++) {
863
+ const offset = 2 + 3 * i;
864
+ this.payload[offset] = this.values[i].indicatorId;
865
+ this.payload[offset + 1] = this.values[i].propertyId;
866
+ const value = this.values[i].value;
867
+ this.payload[offset + 2] =
868
+ value === true ? 0xff : value === false ? 0x00 : value;
869
+ }
870
+ }
871
+ else {
872
+ // V1
873
+ this.payload = Buffer.from([this.indicator0Value ?? 0]);
874
+ }
875
+ return super.serialize();
876
+ }
798
877
  toLogEntry(applHost) {
799
878
  const message = {};
800
- if (this.value != undefined) {
801
- message["indicator 0 value"] = this.value;
879
+ if (this.indicator0Value != undefined) {
880
+ message["indicator 0 value"] = this.indicator0Value;
802
881
  }
803
882
  if (this.values != undefined) {
804
883
  message.values = `${this.values
@@ -822,8 +901,9 @@ let IndicatorCCGet = class IndicatorCCGet extends IndicatorCC {
822
901
  constructor(host, options) {
823
902
  super(host, options);
824
903
  if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
825
- // TODO: Deserialize payload
826
- throw new safe_1.ZWaveError(`${this.constructor.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
904
+ if (this.payload.length > 0) {
905
+ this.indicatorId = this.payload[0];
906
+ }
827
907
  }
828
908
  else {
829
909
  this.indicatorId = options.indicatorId;
@@ -852,17 +932,24 @@ exports.IndicatorCCGet = IndicatorCCGet;
852
932
  let IndicatorCCSupportedReport = class IndicatorCCSupportedReport extends IndicatorCC {
853
933
  constructor(host, options) {
854
934
  super(host, options);
855
- (0, safe_1.validatePayload)(this.payload.length >= 3);
856
- this.indicatorId = this.payload[0];
857
- this.nextIndicatorId = this.payload[1];
858
- const bitMaskLength = this.payload[2] & 0b11111;
859
- if (bitMaskLength === 0) {
860
- this.supportedProperties = [];
935
+ if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
936
+ (0, safe_1.validatePayload)(this.payload.length >= 3);
937
+ this.indicatorId = this.payload[0];
938
+ this.nextIndicatorId = this.payload[1];
939
+ const bitMaskLength = this.payload[2] & 0b11111;
940
+ if (bitMaskLength === 0) {
941
+ this.supportedProperties = [];
942
+ }
943
+ else {
944
+ (0, safe_1.validatePayload)(this.payload.length >= 3 + bitMaskLength);
945
+ // The bit mask starts at 0, but bit 0 is not used
946
+ this.supportedProperties = (0, safe_1.parseBitMask)(this.payload.slice(3, 3 + bitMaskLength), 0).filter((v) => v !== 0);
947
+ }
861
948
  }
862
949
  else {
863
- (0, safe_1.validatePayload)(this.payload.length >= 3 + bitMaskLength);
864
- // The bit mask starts at 0, but bit 0 is not used
865
- this.supportedProperties = (0, safe_1.parseBitMask)(this.payload.slice(3, 3 + bitMaskLength), 0).filter((v) => v !== 0);
950
+ this.indicatorId = options.indicatorId;
951
+ this.nextIndicatorId = options.nextIndicatorId;
952
+ this.supportedProperties = options.supportedProperties;
866
953
  }
867
954
  }
868
955
  persistValues(applHost) {
@@ -874,6 +961,20 @@ let IndicatorCCSupportedReport = class IndicatorCCSupportedReport extends Indica
874
961
  }
875
962
  return true;
876
963
  }
964
+ serialize() {
965
+ const bitmask = this.supportedProperties.length > 0
966
+ ? (0, safe_1.encodeBitMask)(this.supportedProperties, undefined, 0)
967
+ : Buffer.from([]);
968
+ this.payload = Buffer.concat([
969
+ Buffer.from([
970
+ this.indicatorId,
971
+ this.nextIndicatorId,
972
+ bitmask.length,
973
+ ]),
974
+ bitmask,
975
+ ]);
976
+ return super.serialize();
977
+ }
877
978
  toLogEntry(applHost) {
878
979
  return {
879
980
  ...super.toLogEntry(applHost),
@@ -899,8 +1000,8 @@ let IndicatorCCSupportedGet = class IndicatorCCSupportedGet extends IndicatorCC
899
1000
  constructor(host, options) {
900
1001
  super(host, options);
901
1002
  if ((0, CommandClass_1.gotDeserializationOptions)(options)) {
902
- // TODO: Deserialize payload
903
- throw new safe_1.ZWaveError(`${this.constructor.name}: deserialization not implemented`, safe_1.ZWaveErrorCodes.Deserialization_NotImplemented);
1003
+ (0, safe_1.validatePayload)(this.payload.length >= 1);
1004
+ this.indicatorId = this.payload[0];
904
1005
  }
905
1006
  else {
906
1007
  this.indicatorId = options.indicatorId;
@@ -1 +1 @@
1
- {"version":3,"file":"IndicatorCC.js","sourceRoot":"","sources":["../../src/cc/IndicatorCC.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IndicatorCC.js","sourceRoot":"","sources":["../../src/cc/IndicatorCC.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,8CAc6B;AAE7B,gDAAgD;AAEhD,gDAAuD;AACvD,4DAAsD;AACtD,oCAQoB;AACpB,sDAK6B;AAC7B,0EAQuC;AACvC,0CAAkC;AAClC,0CAAwE;AAExE,SAAS,8BAA8B,CAAC,WAAmB;IAC1D,OAAO,WAAW,IAAI,IAAI,IAAI,WAAW,IAAI,IAAI,CAAC;AACnD,CAAC;AAED,MAAM,kBAAkB,GACvB,qFAAqF,CAAC;AAEvF,SAAS,2BAA2B,CACnC,IAAY;IAEZ,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IACnC,gDAAgD;IAChD,MAAM,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,MAAO,CAAC;IAC3D,IAAI,CAAC,QAAQ,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU;QAAE,OAAO,SAAS,CAAC;IAE9D,MAAM,GAAG,GAAqB,EAAE,CAAC;IACjC,IAAI,QAAQ,EAAE;QACb,GAAG,CAAC,KAAK,GAAG,IAAA,YAAK,EAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;KAClD;IACD,IAAI,UAAU,EAAE;QACf,GAAG,CAAC,OAAO,GAAG,IAAA,YAAK,EAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;KACtD;IACD,IAAI,UAAU,EAAE;QACf,GAAG,CAAC,OAAO,GAAG,IAAA,YAAK,EAAC,IAAA,cAAO,EAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;KAClE;IAED,OAAO,GAAG,CAAC;AACZ,CAAC;AAED,SAAS,yBAAyB,CACjC,MAAyB;IAEzB,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACzC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAC/C,CAAC;IACF,IAAI,CAAC,aAAa,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAE5C,MAAM,KAAK,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,EAAE,KAAK;QACrE,CAAC,CAAW,CAAC;IACd,MAAM,OAAO,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,EAAE,KAAK;QACvE,CAAC,CAAW,CAAC;IACd,MAAM,OAAO,GACZ,IAAA,YAAK,EACH,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC;QAChD,EAAE,KAAgB,IAAI,CAAC,EACxB,CAAC,EACD,EAAE,CACF;QACD,IAAA,YAAK,EACH,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC;YAChD,EAAE,KAAgB,IAAI,CAAC,EACxB,CAAC,EACD,EAAE,CACF;YACA,GAAG,CAAC;IAEN,OAAO;QACN,KAAK;QACL,OAAO;QACP,OAAO;KACP,CAAC;AACH,CAAC;AAEY,QAAA,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC9C,GAAG,UAAC,CAAC,oBAAoB,CAAC,qBAAc,CAAC,SAAS,EAAE;QACnD,GAAG,UAAC,CAAC,cAAc,CAAC,uBAAuB,EAAE,SAAS,EAAE;YACvD,QAAQ,EAAE,IAAI;SACd,CAAC;QAEF,GAAG,UAAC,CAAC,sBAAsB,CAAC,SAAS,EAAE,OAAO,EAAE;YAC/C,GAAG,oBAAa,CAAC,KAAK;YACtB,KAAK,EAAE,iBAAiB;YACxB,UAAU,EAAE;gBACX,WAAW,EAAE,CAAC;aACd;SACQ,CAAC;QAEX,8EAA8E;QAC9E,GAAG,UAAC,CAAC,cAAc,CAClB,UAAU,EACV;YACC,GAAG,oBAAa,CAAC,gBAAgB;YACjC,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE;gBACP,IAAI,EAAE,UAAU;aAChB;SACQ,EACV,EAAE,UAAU,EAAE,CAAC,EAAW,CAC1B;QAED,GAAG,UAAC,CAAC,cAAc,CAClB,SAAS,EACT;YACC,GAAG,oBAAa,CAAC,MAAM;YACvB,KAAK,EAAE,SAAS;SACP,EACV,EAAE,UAAU,EAAE,CAAC,EAAW,CAC1B;KACD,CAAC;IAEF,GAAG,UAAC,CAAC,qBAAqB,CAAC,qBAAc,CAAC,SAAS,EAAE;QACpD,GAAG,UAAC,CAAC,6BAA6B,CACjC,sBAAsB,EACtB,sBAAsB,EACtB,CAAC,WAAmB,EAAE,EAAE,CAAC,WAAW,EACpC,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,EAAE,CAC7B,QAAQ,KAAK,sBAAsB;YACnC,OAAO,WAAW,KAAK,QAAQ,EAChC,SAAS,EACT,EAAE,QAAQ,EAAE,IAAI,EAAE,CAClB;QAED,GAAG,UAAC,CAAC,6BAA6B,CACjC,SAAS;QACT,6DAA6D;QAC7D,CAAC,WAAmB,EAAE,UAAkB,EAAE,EAAE,CAAC,WAAW,EACxD,CAAC,WAAmB,EAAE,UAAkB,EAAE,EAAE,CAAC,UAAU,EACvD,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,EAAE,EAAE,CAC7B,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,WAAW,KAAK,QAAQ;QAChE,iEAAiE;QACjE,6BAA6B;QAC7B,CAAC,WAAmB,EAAE,UAAkB,EAAE,EAAE,CAAC,CAAC;YAC7C,GAAG,oBAAa,CAAC,GAAG;YACpB,UAAU,EAAE;gBACX,WAAW;gBACX,UAAU;aACV;SACD,CAAC,EACF,EAAE,UAAU,EAAE,CAAC,EAAW,CAC1B;QAED,GAAG,UAAC,CAAC,uBAAuB,CAC3B,sBAAsB,EACtB,CAAC,WAAmB,EAAE,EAAE,CAAC,WAAW,EACpC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,OAAO,QAAQ,KAAK,QAAQ,EAC9C,SAAS,EACT,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAW,CAC1C;KACD,CAAC;CACF,CAAC,CAAC;AAEH;;GAEG;AACH,SAAS,oBAAoB,CAC5B,aAA4B,EAC5B,WAAmB,EACnB,UAAkB,EAClB,sBAA+B;IAE/B,MAAM,KAAK,GACV,sBAAsB,IAAI,aAAa,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,yBAAiB,CAAC,OAAO,CAC7C,WAAW,EACX,UAAU,CACV,CAAC,IAAI,CAAC;IACP,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE;QACpB,OAAO;YACN,GAAG,YAAY;YACf,GAAG,oBAAa,CAAC,KAAK;SACtB,CAAC;KACF;SAAM,IAAI,CAAC,IAAI,EAAE;QACjB,OAAO;YACN,GAAG,YAAY;YACf,GAAG,oBAAa,CAAC,KAAK;YACtB,KAAK;SACL,CAAC;KACF;SAAM;QACN,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;YAC5B,OAAO;gBACN,GAAG,YAAY;gBACf,GAAG,oBAAa,CAAC,OAAO;gBACxB,KAAK,EAAE,GAAG,KAAK,MAAM,IAAI,CAAC,KAAK,EAAE;gBACjC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ;aACxB,CAAC;SACF;aAAM;YACN,QAAQ;YACR,OAAO;gBACN,GAAG,YAAY;gBACf,GAAG,oBAAa,CAAC,KAAK;gBACtB,KAAK,EAAE,GAAG,KAAK,MAAM,IAAI,CAAC,KAAK,EAAE;gBACjC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ;aACxB,CAAC;SACF;KACD;AACF,CAAC;AAED,SAAS,gBAAgB,CACxB,aAA4B,EAC5B,WAA+B;IAE/B,IAAI,aAAa,GAAG,aAAa,CAAC;IAClC,IAAI,WAAW,EAAE;QAChB,aAAa,GAAG,GAAG,IAAA,cAAO,EAAC,WAAW,CAAC,KACtC,aAAa,CAAC,eAAe,CAAC,WAAW,CAAC,IAAI,SAC/C,GAAG,CAAC;KACJ;IACD,OAAO,aAAa,CAAC;AACtB,CAAC;AAED,MAAM,qBAAqB,GAAG,EAAE,CAAC;AAGjC,IAAa,cAAc,GAA3B,MAAa,cAAe,SAAQ,WAAK;IACjC,eAAe,CAAC,GAAqB;QAC3C,QAAQ,GAAG,EAAE;YACZ,KAAK,yBAAgB,CAAC,GAAG,CAAC;YAC1B,KAAK,yBAAgB,CAAC,MAAM;gBAC3B,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;YAC5B,KAAK,yBAAgB,CAAC,GAAG;gBACxB,OAAO,IAAI,CAAC,CAAC,oBAAoB;YAClC,KAAK,yBAAgB,CAAC,YAAY,CAAC;YACnC,KAAK,yBAAgB,CAAC,eAAe;gBACpC,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACjD,KAAK,yBAAgB,CAAC,cAAc;gBACnC,OAAO,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;SACjD;QACD,OAAO,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;IACnC,CAAC;IAED,IAAuB,CAAC,eAAS,CAAC;QACjC,OAAO,KAAK,WAEX,EAAE,QAAQ,EAAE,WAAW,EAAE,EACzB,KAAK;YAEL,IAAI,QAAQ,KAAK,OAAO,EAAE;gBACzB,WAAW;gBACX,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBAC9B,IAAA,yBAAmB,EAClB,IAAI,CAAC,IAAI,EACT,QAAQ,EACR,QAAQ,EACR,OAAO,KAAK,CACZ,CAAC;iBACF;gBACD,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;aACvB;iBAAM,IACN,OAAO,QAAQ,KAAK,QAAQ;gBAC5B,OAAO,WAAW,KAAK,QAAQ,EAC9B;gBACD,MAAM,WAAW,GAAG,QAAQ,CAAC;gBAC7B,MAAM,UAAU,GAAG,WAAW,CAAC;gBAC/B,MAAM,YAAY,GAAG,oBAAoB,CACxC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAC3B,WAAW,EACX,UAAU,CACV,CAAC,IAA4B,CAAC;gBAE/B,YAAY;gBACZ,IAAI,OAAO,KAAK,KAAK,YAAY,EAAE;oBAClC,IAAA,yBAAmB,EAClB,IAAI,CAAC,IAAI,EACT,QAAQ,EACR,YAAY,EACZ,OAAO,KAAK,CACZ,CAAC;iBACF;gBACD,OAAO,IAAI,CAAC,GAAG,CAAC;oBACf;wBACC,WAAW,EAAE,QAAQ;wBACrB,UAAU,EAAE,WAAW;wBACvB,KAAK,EAAE,KAAY;qBACnB;iBACD,CAAC,CAAC;aACH;iBAAM,IAAI,QAAQ,KAAK,UAAU,EAAE;gBACnC,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE;oBAC/B,IAAA,yBAAmB,EAClB,IAAI,CAAC,IAAI,EACT,QAAQ,EACR,SAAS,EACT,OAAO,KAAK,CACZ,CAAC;iBACF;gBACD,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;aACvB;iBAAM;gBACN,IAAA,8BAAwB,EAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;aAC9C;QACF,CAAC,CAAC;IACH,CAAC;IAED,IAAc,CAAC,gBAAU,CAAC;QACzB,OAAO,KAAK,WAAiC,EAAE,QAAQ,EAAE;YACxD,IAAI,QAAQ,KAAK,OAAO;gBAAE,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC;YAC5C,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;gBACjC,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;aAC1B;YAED,IAAA,8BAAwB,EAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC/C,CAAC,CAAC;IACH,CAAC;IAGM,KAAK,CAAC,GAAG,CACf,WAAoB;;QAEpB,IAAI,CAAC,qBAAqB,CAAC,yBAAgB,EAAE,yBAAgB,CAAC,GAAG,CAAC,CAAC;QAEnE,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC5C,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAC7B,WAAW;SACX,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAC/C,EAAE,EACF,IAAI,CAAC,cAAc,CACnB,CAAC;QACF,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,IAAI,QAAQ,CAAC,MAAM;YAAE,OAAO,QAAQ,CAAC,MAAM,CAAC;QAC5C,OAAO,QAAQ,CAAC,eAAgB,CAAC;KACjC;IAGM,KAAK,CAAC,GAAG,CACf,KAAiC;;QAEjC,IAAI,CAAC,qBAAqB,CAAC,yBAAgB,EAAE,yBAAgB,CAAC,GAAG,CAAC,CAAC;QAEnE,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE;YAC5C,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAC7B,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;SAC9D,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;KAC1D;IAGM,KAAK,CAAC,YAAY,CAAC,WAAmB;;QAQ5C,IAAI,CAAC,qBAAqB,CACzB,yBAAgB,EAChB,yBAAgB,CAAC,YAAY,CAC7B,CAAC;QAEF,MAAM,EAAE,GAAG,IAAI,uBAAuB,CAAC,IAAI,CAAC,QAAQ,EAAE;YACrD,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAC7B,WAAW;SACX,CAAC,CAAC;QACH,MAAM,QAAQ,GACb,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAC9B,EAAE,EACF,IAAI,CAAC,cAAc,CACnB,CAAC;QACH,IAAI,QAAQ,EAAE;YACb,OAAO;gBACN,wDAAwD;gBACxD,GAAG,CAAC,WAAW,KAAK,IAAI;oBACvB,CAAC,CAAC,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE;oBACvC,CAAC,CAAC,SAAS,CAAC;gBACb,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB;gBACjD,eAAe,EAAE,QAAQ,CAAC,eAAe;aACzC,CAAC;SACF;KACD;IAGM,KAAK,CAAC,eAAe,CAC3B,WAAmB,EACnB,mBAAsC,EACtC,eAAuB;;;;QAEvB,IAAI,CAAC,qBAAqB,CACzB,yBAAgB,EAChB,yBAAgB,CAAC,eAAe,CAChC,CAAC;QAEF,MAAM,EAAE,GAAG,IAAI,0BAA0B,CAAC,IAAI,CAAC,QAAQ,EAAE;YACxD,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAC7B,WAAW;YACX,mBAAmB;YACnB,eAAe;SACf,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;KACzD;IAED;;OAEG;IACI,KAAK,CAAC,QAAQ;QACpB,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE;YACrB,MAAM,IAAI,iBAAU,CACnB,4EAA4E,EAC5E,sBAAe,CAAC,eAAe,CAC/B,CAAC;SACF;QACD,OAAO,IAAI,CAAC,GAAG,CAAC;YACf;gBACC,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE,IAAI;aACX;YACD;gBACC,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE,IAAI;aACX;YACD;gBACC,WAAW,EAAE,IAAI;gBACjB,UAAU,EAAE,IAAI;gBAChB,KAAK,EAAE,IAAI;aACX;SACD,CAAC,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,UAAU,CACtB,WAAmB,EACnB,OAA8C;QAE9C,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE3C,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE;YACrB,MAAM,IAAI,iBAAU,CACnB,8EAA8E,EAC9E,sBAAe,CAAC,eAAe,CAC/B,CAAC;SACF;QAED,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAChC,IAAI,OAAO,KAAK,EAAE,EAAE;gBACnB,OAAO,GAAG,SAAS,CAAC;aACpB;iBAAM;gBACN,MAAM,MAAM,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;gBACpD,IAAI,CAAC,MAAM,EAAE;oBACZ,MAAM,IAAI,iBAAU,CACnB,uBAAuB,OAAO,gBAAgB,EAC9C,sBAAe,CAAC,gBAAgB,CAChC,CAAC;iBACF;gBACD,OAAO,GAAG,MAAM,CAAC;aACjB;SACD;QAED,MAAM,oBAAoB,GAAG,WAAW,CAAC,6BAA6B,CACrE,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,EACb,WAAW,CACX,CAAC;QAEF,MAAM,OAAO,GAAsB,EAAE,CAAC;QACtC,IAAI,OAAO,EAAE;YACZ,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC;YACrC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;YACjD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YAElE,IAAI,KAAK,EAAE;gBACV,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;oBAC1C,MAAM,IAAI,iBAAU,CACnB,iBAAiB,WAAW,gDAAgD,EAC5E,sBAAe,CAAC,gBAAgB,CAChC,CAAC;iBACF;gBACD,OAAO,CAAC,IAAI,CAAC;oBACZ,WAAW;oBACX,UAAU,EAAE,IAAI;oBAChB,KAAK,EAAE,KAAK;iBACZ,CAAC,CAAC;aACH;YAED,IAAI,OAAO,EAAE;gBACZ,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;oBAC1C,MAAM,IAAI,iBAAU,CACnB,iBAAiB,WAAW,kDAAkD,EAC9E,sBAAe,CAAC,gBAAgB,CAChC,CAAC;iBACF;gBACD,OAAO,CAAC,IAAI,CAAC;oBACZ,WAAW;oBACX,UAAU,EAAE,IAAI;oBAChB,KAAK,EAAE,OAAO;iBACd,CAAC,CAAC;aACH;YAED,IAAI,OAAO,EAAE;gBACZ,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;oBAC1C,MAAM,IAAI,iBAAU,CACnB,iBAAiB,WAAW,kDAAkD,EAC9E,sBAAe,CAAC,gBAAgB,CAChC,CAAC;iBACF;gBACD,OAAO,CAAC,IAAI,CAAC;oBACZ,WAAW;oBACX,UAAU,EAAE,IAAI;oBAChB,KAAK,EAAE,OAAO;iBACd,CAAC,CAAC;aACH;YAED,IAAI,UAAU,EAAE;gBACf,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE;oBAC1C,MAAM,IAAI,iBAAU,CACnB,iBAAiB,WAAW,wDAAwD,EACpF,sBAAe,CAAC,gBAAgB,CAChC,CAAC;iBACF;gBACD,OAAO,CAAC,IAAI,CAAC;oBACZ,WAAW;oBACX,UAAU,EAAE,IAAI;oBAChB,KAAK,EAAE,UAAU;iBACjB,CAAC,CAAC;aACH;SACD;QAED,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;YACpB,OAAO,CAAC,IAAI,CACX,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC3C,WAAW;gBACX,UAAU,EAAE,CAAC;gBACb,KAAK,EAAE,CAAC;aACR,CAAC,CAAC,CACH,CAAC;SACF;QAED,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,UAAU,CACtB,WAAmB;QAEnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAA,oBAAO,EAAC,MAAM,CAAC;YAAE,OAAO;QAE7B,OAAO,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAGM,KAAK,CAAC,cAAc,CAC1B,WAAmB;;QAEnB,IAAI,CAAC,qBAAqB,CACzB,yBAAgB,EAChB,yBAAgB,CAAC,cAAc,CAC/B,CAAC;QAEF,MAAM,EAAE,GAAG,IAAI,yBAAyB,CAAC,IAAI,CAAC,QAAQ,EAAE;YACvD,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,KAAK;YAC7B,WAAW;SACX,CAAC,CAAC;QACH,MAAM,QAAQ,GACb,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,CAC9B,EAAE,EACF,IAAI,CAAC,cAAc,CACnB,CAAC;QACH,OAAO,QAAQ,EAAE,WAAW,CAAC;KAC7B;CACD,CAAA;AAzWY,cAAc;IAD1B,IAAA,4BAAG,EAAC,qBAAc,CAAC,SAAS,CAAC;GACjB,cAAc,CAyW1B;AAzWY,wCAAc;AA8W3B,IAAa,WAAW,GAAxB,MAAa,WAAY,SAAQ,2BAAY;IAGrC,KAAK,CAAC,SAAS,CAAC,QAA8B;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,WAAK,CAAC,MAAM,CACvB,qBAAc,CAAC,SAAS,EACxB,QAAQ,EACR,QAAQ,CACR,CAAC,WAAW,CAAC;YACb,QAAQ,EAAE,sBAAe,CAAC,SAAS;SACnC,CAAC,CAAC;QAEH,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;YACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;YAC5B,OAAO,EAAE,gBAAgB,IAAI,CAAC,MAAM,KAAK;YACzC,SAAS,EAAE,MAAM;SACjB,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE;YACrB,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;gBACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;gBAC5B,OAAO,EAAE,qCAAqC;gBAC9C,SAAS,EAAE,UAAU;aACrB,CAAC,CAAC;YACH,2CAA2C;YAC3C,IAAI,KAAK,GAAG,IAAI,CAAC;YACjB,MAAM,qBAAqB,GAAa,EAAE,CAAC;YAC3C,GAAG;gBACF,MAAM,iBAAiB,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;gBACxD,IAAI,CAAC,iBAAiB,EAAE;oBACvB,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;wBACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;wBAC5B,OAAO,EACN,wEAAwE;wBACzE,KAAK,EAAE,MAAM;qBACb,CAAC,CAAC;oBACH,OAAO;iBACP;gBAED,qBAAqB,CAAC,IAAI,CACzB,iBAAiB,CAAC,WAAW,IAAI,KAAK,CACtC,CAAC;gBACF,KAAK,GAAG,iBAAiB,CAAC,eAAe,CAAC;aAC1C,QAAQ,KAAK,KAAK,IAAI,EAAE;YAEzB,uFAAuF;YACvF,IAAI,CAAC,QAAQ,CACZ,QAAQ,EACR,yBAAiB,CAAC,qBAAqB,EACvC,qBAAqB,CACrB,CAAC;YACF,MAAM,UAAU,GAAG,4BAA4B,qBAAqB,CAAC,IAAI,CACxE,IAAI,CACJ,EAAE,CAAC;YACJ,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;gBACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;gBAC5B,OAAO,EAAE,UAAU;gBACnB,SAAS,EAAE,SAAS;aACpB,CAAC,CAAC;YAEH,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE;gBACtB,MAAM,+BAA+B,GACpC,qBAAqB,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CACnC,8BAA8B,CAAC,EAAE,CAAC,CAClC,CAAC;gBACH,IAAI,+BAA+B,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC/C,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;wBACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;wBAC5B,OAAO,EACN,kEAAkE;wBACnE,SAAS,EAAE,UAAU;qBACrB,CAAC,CAAC;oBAEH,KAAK,MAAM,EAAE,IAAI,+BAA+B,EAAE;wBACjD,MAAM,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;qBAC7B;iBACD;aACD;SACD;QAED,uBAAuB;QACvB,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAEnC,0CAA0C;QAC1C,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,QAA8B;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,WAAK,CAAC,MAAM,CACvB,qBAAc,CAAC,SAAS,EACxB,QAAQ,EACR,QAAQ,CACR,CAAC,WAAW,CAAC;YACb,QAAQ,EAAE,sBAAe,CAAC,SAAS;SACnC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,OAAO,KAAK,CAAC,EAAE;YACvB,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;gBACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;gBAC5B,OAAO,EAAE,uCAAuC;gBAChD,SAAS,EAAE,UAAU;aACrB,CAAC,CAAC;YACH,MAAM,GAAG,CAAC,GAAG,EAAE,CAAC;SAChB;aAAM;YACN,MAAM,qBAAqB,GAC1B,IAAI,CAAC,QAAQ,CACZ,QAAQ,EACR,yBAAiB,CAAC,qBAAqB,CACvC,IAAI,EAAE,CAAC;YACT,KAAK,MAAM,WAAW,IAAI,qBAAqB,EAAE;gBAChD,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE;oBACvC,QAAQ,EAAE,IAAI,CAAC,aAAa;oBAC5B,OAAO,EAAE,4CAA4C,IAAA,cAAO,EAC3D,WAAW,CACX,MAAM;oBACP,SAAS,EAAE,UAAU;iBACrB,CAAC,CAAC;gBACH,MAAM,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;aAC3B;SACD;IACF,CAAC;IAEM,oBAAoB,CAC1B,QAA8B,EAC9B,QAAyB,EACzB,WAA4B;QAE5B,IAAI,QAAQ,KAAK,OAAO,EAAE;YACzB,0EAA0E;YAC1E,OAAO,SAAS,CAAC;SACjB;aAAM,IACN,OAAO,QAAQ,KAAK,QAAQ;YAC5B,OAAO,WAAW,KAAK,QAAQ,EAC9B;YACD,6CAA6C;YAC7C,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;YAChE,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC,KAAK,CAAC;SAC5B;QACD,OAAO,KAAK,CAAC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACpE,CAAC;IAEM,iBAAiB,CACvB,QAA8B,EAC9B,QAAyB,EACzB,WAA6B;QAE7B,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;YACpE,4CAA4C;YAC5C,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC/D,IAAI,KAAK;gBAAE,OAAO,KAAK,CAAC;SACxB;QACD,OAAO,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACjE,CAAC;IAES,oBAAoB,CAAC,QAA8B;QAC5D,oDAAoD;QACpD,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAC1C,QAAQ,EACR,yBAAiB,CAAC,qBAAqB,CACvC,CAAC;QACF,IAAI,CAAC,qBAAqB,EAAE,MAAM;YAAE,OAAO,KAAK,CAAC;QACjD,kDAAkD;QAClD,OAAO,qBAAqB,CAAC,IAAI,CAChC,CAAC,WAAW,EAAE,EAAE,CACf,CAAC,CAAC,IAAI,CAAC,QAAQ,CACd,QAAQ,EACR,yBAAiB,CAAC,oBAAoB,CAAC,WAAW,CAAC,CACnD,EAAE,MAAM,CACV,CAAC;IACH,CAAC;IAEM,MAAM,CAAC,6BAA6B,CAC1C,QAA8B,EAC9B,QAAwB,EACxB,WAAmB;QAEnB,OAAO,QAAQ;aACb,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC;aAC3B,QAAQ,CACR,yBAAiB,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,QAAQ,CAC3D,QAAQ,CAAC,KAAK,CACd,CACD,CAAC;IACJ,CAAC;CACD,CAAA;AA5LY,WAAW;IAHvB,IAAA,qCAAY,EAAC,qBAAc,CAAC,SAAS,CAAC;IACtC,IAAA,2CAAkB,EAAC,CAAC,CAAC;IACrB,IAAA,iCAAQ,EAAC,yBAAiB,CAAC;GACf,WAAW,CA4LvB;AA5LY,kCAAW;AA8MxB,IAAa,cAAc,GAA3B,MAAa,cAAe,SAAQ,WAAW;IAC9C,YACC,IAAe,EACf,OAE6C;QAE7C,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrB,IAAI,IAAA,wCAAyB,EAAC,OAAO,CAAC,EAAE;YACvC,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YAE1C,MAAM,QAAQ,GACb,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1D,IAAI,QAAQ,KAAK,CAAC,EAAE;gBACnB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;aACvC;iBAAM;gBACN,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;gBACzD,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;gBACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;oBAClC,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACzB,MAAM,KAAK,GAAoB;wBAC9B,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;wBACjC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;wBACpC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;qBAC/B,CAAC;oBACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBACxB;aACD;SACD;aAAM;YACN,IAAI,IAAI,CAAC,OAAO,KAAK,CAAC,EAAE;gBACvB,IAAI,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,EAAE;oBAC1B,MAAM,IAAI,iBAAU,CACnB,QACC,IAAI,CAAC,MACN,uEAAuE,EACvE,sBAAe,CAAC,gBAAgB,CAChC,CAAC;iBACF;gBACD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC;aACrC;iBAAM;gBACN,IAAI,OAAO,IAAI,OAAO,EAAE;oBACvB,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC;iBACrC;qBAAM;oBACN,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,qBAAqB,EAAE;wBAClD,MAAM,IAAI,iBAAU,CACnB,QAAQ,qBAAqB,yCAAyC,EACtE,sBAAe,CAAC,gBAAgB,CAChC,CAAC;qBACF;oBACD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;iBAC7B;aACD;SACD;IACF,CAAC;IAKM,SAAS;QACf,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE;YAC7B,MAAM;YACN,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC3D,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,qBAAqB,CAAC;YAC5D,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;gBAClC,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;gBAClD,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;gBACrD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBACnC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;oBACvB,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;aACxD;SACD;aAAM;YACN,KAAK;YACL,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,CAAC;SACxD;QACD,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,MAAM,OAAO,GAAkB,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,eAAe,IAAI,SAAS,EAAE;YACtC,OAAO,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;SACpD;QACD,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE;YAC7B,OAAO,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM;iBAC7B,GAAG,CACH,CAAC,CAAC,EAAE,EAAE,CAAC;iBACK,CAAC,CAAC,WAAW;iBACb,CAAC,CAAC,UAAU;iBACZ,CAAC,CAAC,KAAK,EAAE,CACrB;iBACA,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;SACb;QACD,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO;SACP,CAAC;IACH,CAAC;CACD,CAAA;AApGY,cAAc;IAF1B,IAAA,kCAAS,EAAC,yBAAgB,CAAC,GAAG,CAAC;IAC/B,IAAA,uCAAc,GAAE;GACJ,cAAc,CAoG1B;AApGY,wCAAc;AA+G3B,IAAa,iBAAiB,GAA9B,MAAa,iBAAkB,SAAQ,WAAW;IACjD,YACC,IAAe,EACf,OAEwD;QAExD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAErB,IAAI,IAAA,wCAAyB,EAAC,OAAO,CAAC,EAAE;YACvC,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YAE1C,MAAM,QAAQ,GACb,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1D,IAAI,QAAQ,KAAK,CAAC,EAAE;gBACnB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;aACvC;iBAAM;gBACN,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC;gBACzD,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;gBACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;oBAClC,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACzB,MAAM,KAAK,GAAoB;wBAC9B,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;wBACjC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;wBACpC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;qBAC/B,CAAC;oBACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBACxB;gBAED,+BAA+B;gBAE/B,sFAAsF;gBACtF,kFAAkF;gBAClF,kDAAkD;gBAClD,uCAAuC;gBACvC,+BAA+B;gBAC/B,oCAAoC;gBACpC,yBAAyB;gBACzB,kBAAkB;gBAClB,OAAO;gBACP,YAAY;gBACZ,qCAAqC;gBACrC,0EAA0E;gBAC1E,WAAW;gBACX,iEAAiE;gBACjE,KAAK;gBACL,mCAAmC;gBACnC,sDAAsD;gBACtD,4BAA4B;gBAC5B,iBAAiB;gBACjB,yBAAyB;gBACzB,cAAc;gBACd,OAAO;gBACP,IAAI;aACJ;SACD;aAAM;YACN,IAAI,OAAO,IAAI,OAAO,EAAE;gBACvB,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC;aACrC;iBAAM,IAAI,QAAQ,IAAI,OAAO,EAAE;gBAC/B,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,qBAAqB,EAAE;oBAClD,MAAM,IAAI,iBAAU,CACnB,QAAQ,qBAAqB,yCAAyC,EACtE,sBAAe,CAAC,gBAAgB,CAChC,CAAC;iBACF;gBACD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;aAC7B;SACD;IACF,CAAC;IAEM,aAAa,CAAC,QAA8B;QAClD,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAC;QAEjD,IAAI,IAAI,CAAC,eAAe,IAAI,SAAS,EAAE;YACtC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAAE;gBACzC,oBAAoB;gBACpB,MAAM,OAAO,GAAG,yBAAiB,CAAC,OAAO,CAAC;gBAC1C,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACpC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;aACvD;iBAAM;gBACN,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;oBACxB,SAAS;oBACT,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE;wBAC3C,OAAO,EAAE,sEAAsE;wBAC/E,SAAS,EAAE,MAAM;wBACjB,QAAQ,EAAE,IAAI,CAAC,aAAa;qBAC5B,CAAC,CAAC;iBACH;aACD;SACD;aAAM,IAAI,IAAI,CAAC,MAAM,EAAE;YACvB,gCAAgC;YAChC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE;gBAChC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;aACxC;YAED,oDAAoD;YAEpD,cAAc;YACd,MAAM,OAAO,GAAG,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvD,IAAI,OAAO,EAAE;gBACZ,IAAI,aAAa,GAAG,EAAE,CAAC;gBACvB,IAAI,OAAO,EAAE,KAAK;oBAAE,aAAa,IAAI,GAAG,OAAO,CAAC,KAAK,GAAG,CAAC;gBACzD,IAAI,OAAO,EAAE,OAAO;oBAAE,aAAa,IAAI,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC;gBAC7D,IAAI,OAAO,EAAE,OAAO;oBAAE,aAAa,IAAI,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC;gBAE7D,IAAI,CAAC,QAAQ,CACZ,QAAQ,EACR,yBAAiB,CAAC,OAAO,EACzB,aAAa,CACb,CAAC;aACF;SACD;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAKO,iBAAiB,CACxB,QAA8B,EAC9B,KAAsB;QAEtB,0DAA0D;QAC1D,MAAM,sBAAsB,GAAG,8BAA8B,CAC5D,KAAK,CAAC,WAAW,CACjB;YACA,CAAC,CAAC,IAAI,CAAC,QAAQ,CACb,QAAQ,EACR,yBAAiB,CAAC,oBAAoB,CAAC,KAAK,CAAC,WAAW,CAAC,CACxD;YACH,CAAC,CAAC,SAAS,CAAC;QAEb,MAAM,QAAQ,GAAG,oBAAoB,CACpC,QAAQ,CAAC,aAAa,EACtB,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,UAAU,EAChB,sBAAsB,CACtB,CAAC;QACF,mCAAmC;QACnC,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE;YAChC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;SAC5B;QAED,oBAAoB;QACpB,MAAM,OAAO,GAAG,yBAAiB,CAAC,OAAO,CACxC,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,UAAU,CAChB,CAAC;QACF,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9C,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAEM,SAAS;QACf,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE;YAC7B,MAAM;YACN,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC3D,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,qBAAqB,CAAC;YAC5D,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;gBAClC,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;gBAClD,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;gBACrD,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;gBACnC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;oBACvB,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;aACxD;SACD;aAAM;YACN,KAAK;YACL,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,CAAC,CAAC;SACxD;QACD,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,MAAM,OAAO,GAAkB,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,eAAe,IAAI,SAAS,EAAE;YACtC,OAAO,CAAC,mBAAmB,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;SACpD;QACD,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS,EAAE;YAC7B,OAAO,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM;iBAC7B,GAAG,CACH,CAAC,CAAC,EAAE,EAAE,CAAC;iBACK,CAAC,CAAC,WAAW;iBACb,CAAC,CAAC,UAAU;iBACZ,CAAC,CAAC,KAAK,EAAE,CACrB;iBACA,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;SACb;QACD,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO;SACP,CAAC;IACH,CAAC;CACD,CAAA;AAnMY,iBAAiB;IAD7B,IAAA,kCAAS,EAAC,yBAAgB,CAAC,MAAM,CAAC;GACtB,iBAAiB,CAmM7B;AAnMY,8CAAiB;AA2M9B,IAAa,cAAc,GAA3B,MAAa,cAAe,SAAQ,WAAW;IAC9C,YACC,IAAe,EACf,OAAmE;QAEnE,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrB,IAAI,IAAA,wCAAyB,EAAC,OAAO,CAAC,EAAE;YACvC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC5B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;aACnC;SACD;aAAM;YACN,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;SACvC;IACF,CAAC;IAIM,SAAS;QACf,IAAI,IAAI,CAAC,WAAW,IAAI,SAAS,EAAE;YAClC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;SAC/C;QACD,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE;gBACR,SAAS,EAAE,gBAAgB,CAC1B,QAAQ,CAAC,aAAa,EACtB,IAAI,CAAC,WAAW,CAChB;aACD;SACD,CAAC;IACH,CAAC;CACD,CAAA;AAnCY,cAAc;IAF1B,IAAA,kCAAS,EAAC,yBAAgB,CAAC,GAAG,CAAC;IAC/B,IAAA,2CAAkB,EAAC,iBAAiB,CAAC;GACzB,cAAc,CAmC1B;AAnCY,wCAAc;AA4C3B,IAAa,0BAA0B,GAAvC,MAAa,0BAA2B,SAAQ,WAAW;IAC1D,YACC,IAAe,EACf,OAEoC;QAEpC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAErB,IAAI,IAAA,wCAAyB,EAAC,OAAO,CAAC,EAAE;YACvC,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACnC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACvC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC;YAChD,IAAI,aAAa,KAAK,CAAC,EAAE;gBACxB,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;aAC9B;iBAAM;gBACN,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;gBAC1D,kDAAkD;gBAClD,IAAI,CAAC,mBAAmB,GAAG,IAAA,mBAAY,EACtC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,EACxC,CAAC,CACD,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;aACzB;SACD;aAAM;YACN,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACvC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;YAC/C,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;SACvD;IACF,CAAC;IAEM,aAAa,CAAC,QAA8B;QAClD,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAC;QAEjD,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE;YAC9B,4CAA4C;YAC5C,IAAI,CAAC,QAAQ,CACZ,QAAQ,EACR,yBAAiB,CAAC,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,EACxD,IAAI,CAAC,mBAAmB,CACxB,CAAC;SACF;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAMM,SAAS;QACf,MAAM,OAAO,GACZ,IAAI,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC;YAClC,CAAC,CAAC,IAAA,oBAAa,EAAC,IAAI,CAAC,mBAAmB,EAAE,SAAS,EAAE,CAAC,CAAC;YACvD,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC;gBACX,IAAI,CAAC,WAAW;gBAChB,IAAI,CAAC,eAAe;gBACpB,OAAO,CAAC,MAAM;aACd,CAAC;YACF,OAAO;SACP,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE;gBACR,SAAS,EAAE,gBAAgB,CAC1B,QAAQ,CAAC,aAAa,EACtB,IAAI,CAAC,WAAW,CAChB;gBACD,sBAAsB,EAAE,GAAG,IAAI,CAAC,mBAAmB;qBACjD,GAAG,CACH,CAAC,EAAE,EAAE,EAAE,CACN,QAAQ,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE,KAAK;oBAChD,YAAY,IAAA,cAAO,EAAC,EAAE,CAAC,GAAG,CAC3B;qBACA,IAAI,CAAC,IAAI,CAAC,EAAE;gBACd,gBAAgB,EAAE,gBAAgB,CACjC,QAAQ,CAAC,aAAa,EACtB,IAAI,CAAC,eAAe,CACpB;aACD;SACD,CAAC;IACH,CAAC;CACD,CAAA;AAxFY,0BAA0B;IADtC,IAAA,kCAAS,EAAC,yBAAgB,CAAC,eAAe,CAAC;GAC/B,0BAA0B,CAwFtC;AAxFY,gEAA0B;AA8FvC,SAAS,oCAAoC,CAC5C,IAA6B,EAC7B,QAAoC;IAEpC,OAAO,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,CAAC;AAC5E,CAAC;AAOD,IAAa,uBAAuB,GAApC,MAAa,uBAAwB,SAAQ,WAAW;IACvD,YACC,IAAe,EACf,OAEiC;QAEjC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrB,IAAI,IAAA,wCAAyB,EAAC,OAAO,CAAC,EAAE;YACvC,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SACnC;aAAM;YACN,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;SACvC;IACF,CAAC;IAIM,SAAS;QACf,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE;gBACR,SAAS,EAAE,gBAAgB,CAC1B,QAAQ,CAAC,aAAa,EACtB,IAAI,CAAC,WAAW,CAChB;aACD;SACD,CAAC;IACH,CAAC;CACD,CAAA;AAlCY,uBAAuB;IALnC,IAAA,kCAAS,EAAC,yBAAgB,CAAC,YAAY,CAAC;IACxC,IAAA,2CAAkB,EAClB,0BAA0B,EAC1B,oCAAoC,CACpC;GACY,uBAAuB,CAkCnC;AAlCY,0DAAuB;AAqCpC,IAAa,4BAA4B,GAAzC,MAAa,4BAA6B,SAAQ,WAAW;IAC5D,YACC,IAAe,EACf,OAA2C;QAE3C,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAErB,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzC,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;QAC7D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO;aAC7B,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,gBAAgB,CAAC;aAC9B,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC;IAKM,aAAa,CAAC,QAA8B;QAClD,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC;YAAE,OAAO,KAAK,CAAC;QAEjD,IAAI,IAAI,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,QAAQ,CACZ,QAAQ,EACR,yBAAiB,CAAC,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,EACxD,IAAI,CAAC,WAAW,CAChB,CAAC;SACF;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE;gBACR,cAAc,EAAE,IAAI,CAAC,WAAW;gBAChC,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,QAAQ;aACzC;SACD,CAAC;IACH,CAAC;CACD,CAAA;AA1CY,4BAA4B;IADxC,IAAA,kCAAS,EAAC,yBAAgB,CAAC,iBAAiB,CAAC;GACjC,4BAA4B,CA0CxC;AA1CY,oEAA4B;AAgDzC,SAAS,sCAAsC,CAC9C,IAA+B,EAC/B,QAAsC;IAEtC,OAAO,QAAQ,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW,CAAC;AAClD,CAAC;AAOD,IAAa,yBAAyB,GAAtC,MAAa,yBAA0B,SAAQ,WAAW;IACzD,YACC,IAAe,EACf,OAEmC;QAEnC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrB,IAAI,IAAA,wCAAyB,EAAC,OAAO,CAAC,EAAE;YACvC,IAAA,sBAAe,EAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YAC1C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SACnC;aAAM;YACN,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;YACvC,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;gBACtD,MAAM,IAAI,iBAAU,CACnB,gDAAgD,EAChD,sBAAe,CAAC,gBAAgB,CAChC,CAAC;aACF;SACD;IACF,CAAC;IAIM,SAAS;QACf,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAC/C,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;IAC1B,CAAC;IAEM,UAAU,CAAC,QAA8B;QAC/C,OAAO;YACN,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE;gBACR,cAAc,EAAE,IAAI,CAAC,WAAW;aAChC;SACD,CAAC;IACH,CAAC;CACD,CAAA;AArCY,yBAAyB;IALrC,IAAA,kCAAS,EAAC,yBAAgB,CAAC,cAAc,CAAC;IAC1C,IAAA,2CAAkB,EAClB,4BAA4B,EAC5B,sCAAsC,CACtC;GACY,yBAAyB,CAqCrC;AArCY,8DAAyB"}
@@ -94,7 +94,7 @@ export declare class ThermostatModeCCAPI extends CCAPI {
94
94
  protected get [POLL_VALUE](): PollValueImplementation;
95
95
  get(): Promise<Pick<ThermostatModeCCReport, "mode" | "manufacturerData"> | undefined>;
96
96
  set(mode: Exclude<ThermostatMode, (typeof ThermostatMode)["Manufacturer specific"]>): Promise<SupervisionResult | undefined>;
97
- set(mode: (typeof ThermostatMode)["Manufacturer specific"], manufacturerData: Buffer): Promise<SupervisionResult | undefined>;
97
+ set(mode: (typeof ThermostatMode)["Manufacturer specific"], manufacturerData: Buffer | string): Promise<SupervisionResult | undefined>;
98
98
  getSupportedModes(): Promise<MaybeNotKnown<readonly ThermostatMode[]>>;
99
99
  }
100
100
  export declare class ThermostatModeCC extends CommandClass {
@@ -1 +1 @@
1
- {"version":3,"file":"ThermostatModeCC.d.ts","sourceRoot":"","sources":["../../src/cc/ThermostatModeCC.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ThermostatModeCC.d.ts","sourceRoot":"","sources":["../../src/cc/ThermostatModeCC.ts"],"names":[],"mappings":"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"}
@@ -19,19 +19,31 @@ const __assertType__ThermostatMode = $o => {
19
19
  }
20
20
  return su__1__2__3__4__5__6__7__8__9__10__11__12__13__14__15__16_eu($o);
21
21
  };
22
- const __assertType__optional_Buffer = $o => {
22
+ const __assertType__optional_su__string__buffer_eu = $o => {
23
+ function _string($o) {
24
+ return typeof $o !== "string" ? {} : null;
25
+ }
23
26
  function _buffer($o) {
24
27
  return !Buffer.isBuffer($o) ? {} : null;
25
28
  }
26
- function optional__buffer($o) {
29
+ function su__string__buffer_eu($o) {
30
+ const conditions = [_string, _buffer];
31
+ for (const condition of conditions) {
32
+ const error = condition($o);
33
+ if (!error)
34
+ return null;
35
+ }
36
+ return {};
37
+ }
38
+ function optional_su__string__buffer_eu($o) {
27
39
  if ($o !== undefined) {
28
- const error = _buffer($o);
40
+ const error = su__string__buffer_eu($o);
29
41
  if (error)
30
42
  return error;
31
43
  }
32
44
  return null;
33
45
  }
34
- return optional__buffer($o);
46
+ return optional_su__string__buffer_eu($o);
35
47
  };
36
48
  const safe_1 = require("@zwave-js/core/safe");
37
49
  const safe_2 = require("@zwave-js/shared/safe");
@@ -107,8 +119,16 @@ let ThermostatModeCCAPI = class ThermostatModeCCAPI extends API_1.CCAPI {
107
119
  }
108
120
  async set(mode, manufacturerData) {
109
121
  __assertType("mode", "ThermostatMode", __assertType__ThermostatMode.bind(void 0, mode));
110
- __assertType("manufacturerData", "(optional) Buffer", __assertType__optional_Buffer.bind(void 0, manufacturerData));
122
+ __assertType("manufacturerData", undefined, __assertType__optional_su__string__buffer_eu.bind(void 0, manufacturerData));
111
123
  this.assertSupportsCommand(_Types_1.ThermostatModeCommand, _Types_1.ThermostatModeCommand.Set);
124
+ if (typeof manufacturerData === "string") {
125
+ // We accept the manufacturer data as a hex string. Make sure it's valid
126
+ if (manufacturerData.length % 2 !== 0 ||
127
+ !manufacturerData.match(/^[0-9a-f]+$/i)) {
128
+ throw new safe_1.ZWaveError(`Manufacturer data must be represented as hexadecimal when passed as a string!`, safe_1.ZWaveErrorCodes.Argument_Invalid);
129
+ }
130
+ manufacturerData = Buffer.from(manufacturerData, "hex");
131
+ }
112
132
  const cc = new ThermostatModeCCSet(this.applHost, {
113
133
  nodeId: this.endpoint.nodeId,
114
134
  endpoint: this.endpoint.index,
@@ -1 +1 @@
1
- {"version":3,"file":"ThermostatModeCC.js","sourceRoot":"","sources":["../../src/cc/ThermostatModeCC.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ThermostatModeCC.js","sourceRoot":"","sources":["../../src/cc/ThermostatModeCC.ts"],"names":[],"mappings":"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"}