hap-nodejs 0.10.0-beta.5 → 0.10.0-beta.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. package/dist/accessories/Camera_accessory.js +373 -1
  2. package/dist/accessories/Camera_accessory.js.map +1 -1
  3. package/dist/accessories/gstreamer-audioProducer.js +2 -3
  4. package/dist/accessories/gstreamer-audioProducer.js.map +1 -1
  5. package/dist/internal-types.d.ts +2 -0
  6. package/dist/internal-types.d.ts.map +1 -1
  7. package/dist/internal-types.js.map +1 -1
  8. package/dist/lib/Accessory.d.ts +1 -1
  9. package/dist/lib/Accessory.d.ts.map +1 -1
  10. package/dist/lib/Accessory.js +150 -134
  11. package/dist/lib/Accessory.js.map +1 -1
  12. package/dist/lib/Advertiser.d.ts +7 -4
  13. package/dist/lib/Advertiser.d.ts.map +1 -1
  14. package/dist/lib/Advertiser.js +136 -23
  15. package/dist/lib/Advertiser.js.map +1 -1
  16. package/dist/lib/Characteristic.d.ts.map +1 -1
  17. package/dist/lib/Characteristic.js +7 -6
  18. package/dist/lib/Characteristic.js.map +1 -1
  19. package/dist/lib/Service.d.ts.map +1 -1
  20. package/dist/lib/Service.js.map +1 -1
  21. package/dist/lib/camera/RTPStreamManagement.d.ts +40 -4
  22. package/dist/lib/camera/RTPStreamManagement.d.ts.map +1 -1
  23. package/dist/lib/camera/RTPStreamManagement.js +75 -5
  24. package/dist/lib/camera/RTPStreamManagement.js.map +1 -1
  25. package/dist/lib/camera/RecordingManagement.d.ts +267 -0
  26. package/dist/lib/camera/RecordingManagement.d.ts.map +1 -0
  27. package/dist/lib/camera/RecordingManagement.js +745 -0
  28. package/dist/lib/camera/RecordingManagement.js.map +1 -0
  29. package/dist/lib/camera/index.d.ts +1 -0
  30. package/dist/lib/camera/index.d.ts.map +1 -1
  31. package/dist/lib/camera/index.js +1 -0
  32. package/dist/lib/camera/index.js.map +1 -1
  33. package/dist/lib/controller/AdaptiveLightingController.d.ts.map +1 -1
  34. package/dist/lib/controller/AdaptiveLightingController.js +4 -2
  35. package/dist/lib/controller/AdaptiveLightingController.js.map +1 -1
  36. package/dist/lib/controller/CameraController.d.ts +252 -7
  37. package/dist/lib/controller/CameraController.d.ts.map +1 -1
  38. package/dist/lib/controller/CameraController.js +368 -23
  39. package/dist/lib/controller/CameraController.js.map +1 -1
  40. package/dist/lib/controller/DoorbellController.d.ts +43 -1
  41. package/dist/lib/controller/DoorbellController.d.ts.map +1 -1
  42. package/dist/lib/controller/DoorbellController.js +62 -11
  43. package/dist/lib/controller/DoorbellController.js.map +1 -1
  44. package/dist/lib/controller/RemoteController.d.ts +3 -3
  45. package/dist/lib/controller/RemoteController.d.ts.map +1 -1
  46. package/dist/lib/controller/RemoteController.js +13 -11
  47. package/dist/lib/controller/RemoteController.js.map +1 -1
  48. package/dist/lib/datastream/DataStreamManagement.d.ts.map +1 -1
  49. package/dist/lib/datastream/DataStreamManagement.js.map +1 -1
  50. package/dist/lib/datastream/DataStreamParser.d.ts.map +1 -1
  51. package/dist/lib/datastream/DataStreamParser.js +2 -1
  52. package/dist/lib/datastream/DataStreamParser.js.map +1 -1
  53. package/dist/lib/datastream/DataStreamServer.d.ts +23 -4
  54. package/dist/lib/datastream/DataStreamServer.d.ts.map +1 -1
  55. package/dist/lib/datastream/DataStreamServer.js +40 -11
  56. package/dist/lib/datastream/DataStreamServer.js.map +1 -1
  57. package/dist/lib/model/ControllerStorage.d.ts.map +1 -1
  58. package/dist/lib/model/ControllerStorage.js +1 -1
  59. package/dist/lib/util/eventedhttp.d.ts +1 -1
  60. package/dist/lib/util/eventedhttp.d.ts.map +1 -1
  61. package/dist/lib/util/eventedhttp.js +1 -1
  62. package/package.json +3 -3
@@ -550,7 +550,7 @@ var Accessory = /** @class */ (function (_super) {
550
550
  return; // ignore those services, as they get replaced by the RTPStreamManagement
551
551
  }
552
552
  // all other services get added. We can't really control possibly linking to any of those ignored services
553
- // so this is really only half baked stuff.
553
+ // so this is really only half-baked stuff.
554
554
  _this.addService(service);
555
555
  });
556
556
  // replace stream controllers; basically only to still support the "forceStop" call
@@ -586,8 +586,8 @@ var Accessory = /** @class */ (function (_super) {
586
586
  if (savedServiceMap) { // we found data to restore from
587
587
  var clonedServiceMap = (0, clone_1.clone)(savedServiceMap);
588
588
  var updatedServiceMap = controller.initWithServices(savedServiceMap); // init controller with existing services
589
- serviceMap = updatedServiceMap || savedServiceMap; // initWithServices could return a updated serviceMap, otherwise just use the existing one
590
- if (updatedServiceMap) { // controller returned a ServiceMap and thus signaled a updated set of services
589
+ serviceMap = updatedServiceMap || savedServiceMap; // initWithServices could return an updated serviceMap, otherwise just use the existing one
590
+ if (updatedServiceMap) { // controller returned a ServiceMap and thus signaled an updated set of services
591
591
  // clonedServiceMap is altered by this method, should not be touched again after this call (for the future people)
592
592
  this.handleUpdatedControllerServiceMap(clonedServiceMap, updatedServiceMap);
593
593
  }
@@ -912,136 +912,150 @@ var Accessory = /** @class */ (function (_super) {
912
912
  * new Accessory.
913
913
  */
914
914
  Accessory.prototype.publish = function (info, allowInsecureRequest) {
915
- var _this = this;
916
915
  var _a, _b;
917
- // noinspection JSDeprecatedSymbols
918
- if (!info.advertiser && info.useLegacyAdvertiser != null) {
919
- // noinspection JSDeprecatedSymbols
920
- info.advertiser = info.useLegacyAdvertiser ? "bonjour-hap" /* BONJOUR */ : "ciao" /* CIAO */;
921
- console.warn('DEPRECATED The PublishInfo.useLegacyAdvertiser option has been removed. Please use the PublishInfo.advertiser property to enable "ciao" (useLegacyAdvertiser=false) ' +
922
- 'or "bonjour-hap" (useLegacyAdvertiser=true) mdns advertiser libraries!');
923
- }
924
- // noinspection JSDeprecatedSymbols
925
- if (info.mdns && info.advertiser !== "bonjour-hap" /* BONJOUR */) {
926
- console.log("DEPRECATED user supplied a custom 'mdns' option. This option is deprecated and ignored. " +
927
- "Please move to the new 'bind' option.");
928
- }
929
- var service = this.getService(Service_1.Service.ProtocolInformation);
930
- if (!service) {
931
- service = this.addService(Service_1.Service.ProtocolInformation); // add the protocol information service to the primary accessory
932
- }
933
- service.setCharacteristic(Characteristic_1.Characteristic.Version, Advertiser_1.CiaoAdvertiser.protocolVersionService);
934
- if (this.lastKnownUsername && this.lastKnownUsername !== info.username) { // username changed since last publish
935
- Accessory.cleanupAccessoryData(this.lastKnownUsername); // delete old Accessory data
936
- }
937
- if (!this.initialized && ((_a = info.addIdentifyingMaterial) !== null && _a !== void 0 ? _a : true)) {
938
- // adding some identifying material to our displayName if its our first publish() call
939
- this.displayName = this.displayName + " " + crypto_1.default.createHash('sha512')
940
- .update(info.username, 'utf8')
941
- .digest('hex').slice(0, 4).toUpperCase();
942
- this.getService(Service_1.Service.AccessoryInformation).updateCharacteristic(Characteristic_1.Characteristic.Name, this.displayName);
943
- }
944
- // attempt to load existing AccessoryInfo from disk
945
- this._accessoryInfo = AccessoryInfo_1.AccessoryInfo.load(info.username);
946
- // if we don't have one, create a new one.
947
- if (!this._accessoryInfo) {
948
- debug("[%s] Creating new AccessoryInfo for our HAP server", this.displayName);
949
- this._accessoryInfo = AccessoryInfo_1.AccessoryInfo.create(info.username);
950
- }
951
- if (info.setupID) {
952
- this._setupID = info.setupID;
953
- }
954
- else if (this._accessoryInfo.setupID === undefined || this._accessoryInfo.setupID === "") {
955
- this._setupID = Accessory._generateSetupID();
956
- }
957
- else {
958
- this._setupID = this._accessoryInfo.setupID;
959
- }
960
- this._accessoryInfo.setupID = this._setupID;
961
- // make sure we have up-to-date values in AccessoryInfo, then save it in case they changed (or if we just created it)
962
- this._accessoryInfo.displayName = this.displayName;
963
- this._accessoryInfo.model = this.getService(Service_1.Service.AccessoryInformation).getCharacteristic(Characteristic_1.Characteristic.Model).value;
964
- this._accessoryInfo.category = info.category || 1 /* OTHER */;
965
- this._accessoryInfo.pincode = info.pincode;
966
- this._accessoryInfo.save();
967
- // create our IdentifierCache so we can provide clients with stable aid/iid's
968
- this._identifierCache = IdentifierCache_1.IdentifierCache.load(info.username);
969
- // if we don't have one, create a new one.
970
- if (!this._identifierCache) {
971
- debug("[%s] Creating new IdentifierCache", this.displayName);
972
- this._identifierCache = new IdentifierCache_1.IdentifierCache(info.username);
973
- }
974
- //If it's bridge and there are not accessories already assigned to the bridge
975
- //probably purge is not needed since it's going to delete all the ids
976
- //of accessories that might be added later. Useful when dynamically adding
977
- //accessories.
978
- if (this._isBridge && this.bridgedAccessories.length == 0) {
979
- this.disableUnusedIDPurge();
980
- this.controllerStorage.purgeUnidentifiedAccessoryData = false;
981
- }
982
- if (!this.initialized) { // controller storage is only loaded from disk the first time we publish!
983
- this.controllerStorage.load(info.username); // initializing controller data
984
- }
985
- // assign aid/iid
986
- this._assignIDs(this._identifierCache);
987
- // get our accessory information in HAP format and determine if our configuration (that is, our
988
- // Accessories/Services/Characteristics) has changed since the last time we were published. make
989
- // sure to omit actual values since these are not part of the "configuration".
990
- var config = this.internalHAPRepresentation(false); // TODO ensure this stuff is ordered
991
- // TODO queue this check until about 5 seconds after startup, allowing some last changes after the publish call
992
- // without constantly incrementing the current config number
993
- this._accessoryInfo.checkForCurrentConfigurationNumberIncrement(config, true);
994
- this.validateAccessory(true);
995
- // create our Advertiser which broadcasts our presence over mdns
996
- var parsed = Accessory.parseBindOption(info);
997
- switch ((_b = info.advertiser) !== null && _b !== void 0 ? _b : "bonjour-hap" /* BONJOUR */) {
998
- case "ciao" /* CIAO */:
999
- this._advertiser = new Advertiser_1.CiaoAdvertiser(this._accessoryInfo, {
1000
- interface: parsed.advertiserAddress
1001
- }, {
1002
- restrictedAddresses: parsed.serviceRestrictedAddress,
1003
- disabledIpv6: parsed.serviceDisableIpv6,
1004
- });
1005
- break;
1006
- case "bonjour-hap" /* BONJOUR */:
1007
- // noinspection JSDeprecatedSymbols
1008
- this._advertiser = new Advertiser_1.BonjourHAPAdvertiser(this._accessoryInfo, info.mdns, {
1009
- restrictedAddresses: parsed.serviceRestrictedAddress,
1010
- disabledIpv6: parsed.serviceDisableIpv6,
1011
- });
1012
- break;
1013
- case "avahi" /* AVAHI */:
1014
- this._advertiser = new Advertiser_1.AvahiAdvertiser(this._accessoryInfo);
1015
- break;
1016
- default:
1017
- throw new Error("Unsupported advertiser setting: '" + info.advertiser + "'");
1018
- }
1019
- this._advertiser.on("updated-name" /* UPDATED_NAME */, function (name) {
1020
- _this.displayName = name;
1021
- if (_this._accessoryInfo) {
1022
- _this._accessoryInfo.displayName = name;
1023
- _this._accessoryInfo.save();
1024
- }
1025
- // bonjour service name MUST match the name in the accessory information service
1026
- _this.getService(Service_1.Service.AccessoryInformation)
1027
- .updateCharacteristic(Characteristic_1.Characteristic.Name, name);
916
+ return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
917
+ var service, config, parsed, defaultAdvertiser, _c;
918
+ var _this = this;
919
+ return (0, tslib_1.__generator)(this, function (_d) {
920
+ switch (_d.label) {
921
+ case 0:
922
+ // noinspection JSDeprecatedSymbols
923
+ if (!info.advertiser && info.useLegacyAdvertiser != null) {
924
+ // noinspection JSDeprecatedSymbols
925
+ info.advertiser = info.useLegacyAdvertiser ? "bonjour-hap" /* BONJOUR */ : "ciao" /* CIAO */;
926
+ console.warn('DEPRECATED The PublishInfo.useLegacyAdvertiser option has been removed. Please use the PublishInfo.advertiser property to enable "ciao" (useLegacyAdvertiser=false) ' +
927
+ 'or "bonjour-hap" (useLegacyAdvertiser=true) mdns advertiser libraries!');
928
+ }
929
+ // noinspection JSDeprecatedSymbols
930
+ if (info.mdns && info.advertiser !== "bonjour-hap" /* BONJOUR */) {
931
+ console.log("DEPRECATED user supplied a custom 'mdns' option. This option is deprecated and ignored. " +
932
+ "Please move to the new 'bind' option.");
933
+ }
934
+ service = this.getService(Service_1.Service.ProtocolInformation);
935
+ if (!service) {
936
+ service = this.addService(Service_1.Service.ProtocolInformation); // add the protocol information service to the primary accessory
937
+ }
938
+ service.setCharacteristic(Characteristic_1.Characteristic.Version, Advertiser_1.CiaoAdvertiser.protocolVersionService);
939
+ if (this.lastKnownUsername && this.lastKnownUsername !== info.username) { // username changed since last publish
940
+ Accessory.cleanupAccessoryData(this.lastKnownUsername); // delete old Accessory data
941
+ }
942
+ if (!this.initialized && ((_a = info.addIdentifyingMaterial) !== null && _a !== void 0 ? _a : true)) {
943
+ // adding some identifying material to our displayName if its our first publish() call
944
+ this.displayName = this.displayName + " " + crypto_1.default.createHash('sha512')
945
+ .update(info.username, 'utf8')
946
+ .digest('hex').slice(0, 4).toUpperCase();
947
+ this.getService(Service_1.Service.AccessoryInformation).updateCharacteristic(Characteristic_1.Characteristic.Name, this.displayName);
948
+ }
949
+ // attempt to load existing AccessoryInfo from disk
950
+ this._accessoryInfo = AccessoryInfo_1.AccessoryInfo.load(info.username);
951
+ // if we don't have one, create a new one.
952
+ if (!this._accessoryInfo) {
953
+ debug("[%s] Creating new AccessoryInfo for our HAP server", this.displayName);
954
+ this._accessoryInfo = AccessoryInfo_1.AccessoryInfo.create(info.username);
955
+ }
956
+ if (info.setupID) {
957
+ this._setupID = info.setupID;
958
+ }
959
+ else if (this._accessoryInfo.setupID === undefined || this._accessoryInfo.setupID === "") {
960
+ this._setupID = Accessory._generateSetupID();
961
+ }
962
+ else {
963
+ this._setupID = this._accessoryInfo.setupID;
964
+ }
965
+ this._accessoryInfo.setupID = this._setupID;
966
+ // make sure we have up-to-date values in AccessoryInfo, then save it in case they changed (or if we just created it)
967
+ this._accessoryInfo.displayName = this.displayName;
968
+ this._accessoryInfo.model = this.getService(Service_1.Service.AccessoryInformation).getCharacteristic(Characteristic_1.Characteristic.Model).value;
969
+ this._accessoryInfo.category = info.category || 1 /* OTHER */;
970
+ this._accessoryInfo.pincode = info.pincode;
971
+ this._accessoryInfo.save();
972
+ // create our IdentifierCache so we can provide clients with stable aid/iid's
973
+ this._identifierCache = IdentifierCache_1.IdentifierCache.load(info.username);
974
+ // if we don't have one, create a new one.
975
+ if (!this._identifierCache) {
976
+ debug("[%s] Creating new IdentifierCache", this.displayName);
977
+ this._identifierCache = new IdentifierCache_1.IdentifierCache(info.username);
978
+ }
979
+ //If it's bridge and there are not accessories already assigned to the bridge
980
+ //probably purge is not needed since it's going to delete all the ids
981
+ //of accessories that might be added later. Useful when dynamically adding
982
+ //accessories.
983
+ if (this._isBridge && this.bridgedAccessories.length == 0) {
984
+ this.disableUnusedIDPurge();
985
+ this.controllerStorage.purgeUnidentifiedAccessoryData = false;
986
+ }
987
+ if (!this.initialized) { // controller storage is only loaded from disk the first time we publish!
988
+ this.controllerStorage.load(info.username); // initializing controller data
989
+ }
990
+ // assign aid/iid
991
+ this._assignIDs(this._identifierCache);
992
+ config = this.internalHAPRepresentation(false);
993
+ // TODO queue this check until about 5 seconds after startup, allowing some last changes after the publish call
994
+ // without constantly incrementing the current config number
995
+ this._accessoryInfo.checkForCurrentConfigurationNumberIncrement(config, true);
996
+ this.validateAccessory(true);
997
+ parsed = Accessory.parseBindOption(info);
998
+ if (!((_b = info.advertiser) !== null && _b !== void 0)) return [3 /*break*/, 1];
999
+ _c = _b;
1000
+ return [3 /*break*/, 3];
1001
+ case 1: return [4 /*yield*/, Advertiser_1.AvahiAdvertiser.isAvailable()];
1002
+ case 2:
1003
+ _c = ((_d.sent()) ? "avahi" /* AVAHI */ : "bonjour-hap" /* BONJOUR */);
1004
+ _d.label = 3;
1005
+ case 3:
1006
+ defaultAdvertiser = _c;
1007
+ switch (defaultAdvertiser) {
1008
+ case "ciao" /* CIAO */:
1009
+ this._advertiser = new Advertiser_1.CiaoAdvertiser(this._accessoryInfo, {
1010
+ interface: parsed.advertiserAddress
1011
+ }, {
1012
+ restrictedAddresses: parsed.serviceRestrictedAddress,
1013
+ disabledIpv6: parsed.serviceDisableIpv6,
1014
+ });
1015
+ break;
1016
+ case "bonjour-hap" /* BONJOUR */:
1017
+ // noinspection JSDeprecatedSymbols
1018
+ this._advertiser = new Advertiser_1.BonjourHAPAdvertiser(this._accessoryInfo, info.mdns, {
1019
+ restrictedAddresses: parsed.serviceRestrictedAddress,
1020
+ disabledIpv6: parsed.serviceDisableIpv6,
1021
+ });
1022
+ break;
1023
+ case "avahi" /* AVAHI */:
1024
+ this._advertiser = new Advertiser_1.AvahiAdvertiser(this._accessoryInfo);
1025
+ break;
1026
+ default:
1027
+ throw new Error("Unsupported advertiser setting: '" + info.advertiser + "'");
1028
+ }
1029
+ this._advertiser.on("updated-name" /* UPDATED_NAME */, function (name) {
1030
+ _this.displayName = name;
1031
+ if (_this._accessoryInfo) {
1032
+ _this._accessoryInfo.displayName = name;
1033
+ _this._accessoryInfo.save();
1034
+ }
1035
+ // bonjour service name MUST match the name in the accessory information service
1036
+ _this.getService(Service_1.Service.AccessoryInformation)
1037
+ .updateCharacteristic(Characteristic_1.Characteristic.Name, name);
1038
+ });
1039
+ // create our HAP server which handles all communication between iOS devices and us
1040
+ this._server = new HAPServer_1.HAPServer(this._accessoryInfo);
1041
+ this._server.allowInsecureRequest = !!allowInsecureRequest;
1042
+ this._server.on("listening" /* LISTENING */, this.onListening.bind(this));
1043
+ this._server.on("identify" /* IDENTIFY */, this.identificationRequest.bind(this, false));
1044
+ this._server.on("pair" /* PAIR */, this.handleInitialPairSetupFinished.bind(this));
1045
+ this._server.on("add-pairing" /* ADD_PAIRING */, this.handleAddPairing.bind(this));
1046
+ this._server.on("remove-pairing" /* REMOVE_PAIRING */, this.handleRemovePairing.bind(this));
1047
+ this._server.on("list-pairings" /* LIST_PAIRINGS */, this.handleListPairings.bind(this));
1048
+ this._server.on("accessories" /* ACCESSORIES */, this.handleAccessories.bind(this));
1049
+ this._server.on("get-characteristics" /* GET_CHARACTERISTICS */, this.handleGetCharacteristics.bind(this));
1050
+ this._server.on("set-characteristics" /* SET_CHARACTERISTICS */, this.handleSetCharacteristics.bind(this));
1051
+ this._server.on("connection-closed" /* CONNECTION_CLOSED */, this.handleHAPConnectionClosed.bind(this));
1052
+ this._server.on("request-resource" /* REQUEST_RESOURCE */, this.handleResource.bind(this));
1053
+ this._server.listen(info.port, parsed.serverAddress);
1054
+ this.initialized = true;
1055
+ return [2 /*return*/];
1056
+ }
1057
+ });
1028
1058
  });
1029
- // create our HAP server which handles all communication between iOS devices and us
1030
- this._server = new HAPServer_1.HAPServer(this._accessoryInfo);
1031
- this._server.allowInsecureRequest = !!allowInsecureRequest;
1032
- this._server.on("listening" /* LISTENING */, this.onListening.bind(this));
1033
- this._server.on("identify" /* IDENTIFY */, this.identificationRequest.bind(this, false));
1034
- this._server.on("pair" /* PAIR */, this.handleInitialPairSetupFinished.bind(this));
1035
- this._server.on("add-pairing" /* ADD_PAIRING */, this.handleAddPairing.bind(this));
1036
- this._server.on("remove-pairing" /* REMOVE_PAIRING */, this.handleRemovePairing.bind(this));
1037
- this._server.on("list-pairings" /* LIST_PAIRINGS */, this.handleListPairings.bind(this));
1038
- this._server.on("accessories" /* ACCESSORIES */, this.handleAccessories.bind(this));
1039
- this._server.on("get-characteristics" /* GET_CHARACTERISTICS */, this.handleGetCharacteristics.bind(this));
1040
- this._server.on("set-characteristics" /* SET_CHARACTERISTICS */, this.handleSetCharacteristics.bind(this));
1041
- this._server.on("connection-closed" /* CONNECTION_CLOSED */, this.handleHAPConnectionClosed.bind(this));
1042
- this._server.on("request-resource" /* REQUEST_RESOURCE */, this.handleResource.bind(this));
1043
- this._server.listen(info.port, parsed.serverAddress);
1044
- this.initialized = true;
1045
1059
  };
1046
1060
  /**
1047
1061
  * Removes this Accessory from the local network
@@ -1110,7 +1124,8 @@ var Accessory = /** @class */ (function (_super) {
1110
1124
  // the HAP server is listening, so we can now start advertising our presence.
1111
1125
  this._advertiser.initPort(port);
1112
1126
  this._advertiser.startAdvertising()
1113
- .then(function () { return _this.emit("advertised" /* ADVERTISED */); });
1127
+ .then(function () { return _this.emit("advertised" /* ADVERTISED */); })
1128
+ .catch(function (reason) { return console.error("Could not create mDNS advertisement. The HAP-Server won't be discoverable: " + reason); });
1114
1129
  this.emit("listening" /* LISTENING */, port, hostname);
1115
1130
  };
1116
1131
  Accessory.prototype.handleInitialPairSetupFinished = function (username, publicKey, callback) {
@@ -1611,10 +1626,11 @@ var Accessory = /** @class */ (function (_super) {
1611
1626
  callback({ httpCode: 404 /* NOT_FOUND */, status: -70409 /* RESOURCE_DOES_NOT_EXIST */ });
1612
1627
  return;
1613
1628
  }
1614
- controller.handleSnapshotRequest(data["image-height"], data["image-width"], accessory === null || accessory === void 0 ? void 0 : accessory.displayName).then(function (buffer) {
1629
+ controller.handleSnapshotRequest(data["image-height"], data["image-width"], accessory === null || accessory === void 0 ? void 0 : accessory.displayName, data.reason)
1630
+ .then(function (buffer) {
1615
1631
  callback(undefined, buffer);
1616
1632
  }, function (status) {
1617
- callback({ httpCode: 200 /* OK */, status: status });
1633
+ callback({ httpCode: 207 /* MULTI_STATUS */, status: status });
1618
1634
  });
1619
1635
  return;
1620
1636
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Accessory.js","sourceRoot":"","sources":["../../src/lib/Accessory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Accessory.js","sourceRoot":"","sources":["../../src/lib/Accessory.ts"],"names":[],"mappings":";;;;AAAA,+DAA4B;AAE5B,+DAA4B;AAC5B,6DAAgC;AAChC,iCAAsC;AACtC,yDAAsB;AA0BtB,2CAAkH;AAClH,mCAAmC;AACnC,mCAA2F;AAC3F,mDAQ0B;AAC1B,2CAQsB;AACtB,yCAeqB;AACrB,uDAAuE;AACvE,+DAA8D;AAC9D,2DAA0D;AAC1D,qCAAkH;AAClH,sCAAqC;AAErC,oDAAwE;AACxE,6DAAoC;AACpC,oCAA0C;AAE1C,IAAM,KAAK,GAAG,IAAA,eAAW,EAAC,sBAAsB,CAAC,CAAC;AAClD,IAAM,eAAe,GAAG,GAAG,CAAC,CAAC,oDAAoD;AACjF,IAAM,YAAY,GAAG,GAAG,CAAC;AAEzB,wHAAwH;AACxH,IAAkB,UAwCjB;AAxCD,WAAkB,UAAU;IAC1B,qCAAqC;IACrC,6CAAS,CAAA;IACT,+CAAU,CAAA;IACV,yCAAO,CAAA;IACP,uEAAsB,CAAA;IACtB,qDAAa,CAAA;IACb,qDAAa,CAAA;IACb,+CAAU,CAAA;IACV,+CAAU,CAAA;IACV,uDAAc,CAAA;IACd,gDAAW,CAAA;IACX,4DAAiB,CAAA;IACjB,kEAAoB,CAAA;IACpB,4CAAS,CAAA;IACT,gDAAW,CAAA;IACX,kEAAoB,CAAA;IACpB,0EAAwB,CAAA;IACxB,gEAAmB,CAAA;IACnB,gDAAW,CAAA;IACX,sDAAc,CAAA;IACd,gEAAmB,CAAA;IACnB,4DAAiB,CAAA;IACjB,wDAAe,CAAA;IACf,kEAAoB,CAAA;IACpB,gEAAmB,CAAA;IACnB,oEAAqB,CAAA;IACrB,oDAAa,CAAA;IACb,kDAAY,CAAA;IACZ,kDAAY,CAAA;IACZ,kDAAY,CAAA;IACZ,sDAAc,CAAA;IACd,gDAAW,CAAA;IACX,0DAAgB,CAAA;IAChB,wDAAe,CAAA;IACf,sEAAsB,CAAA;IACtB,gDAAW,CAAA;IACX,gEAAmB,CAAA;IACnB,gEAAmB,CAAA;IACnB,wEAAuB,CAAA;AACzB,CAAC,EAxCiB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAwC3B;AA+BD,IAAkB,yBAQjB;AARD,WAAkB,yBAAyB;IACzC,sDAAyB,CAAA;IACzB,4DAA+B,CAAA;IAC/B,oDAAuB,CAAA;IACvB,0DAA6B,CAAA;IAC7B,0DAA6B,CAAA;IAC7B,4DAA+B,CAAA;IAC/B,4DAA+B,CAAA;AACjC,CAAC,EARiB,yBAAyB,GAAzB,iCAAyB,KAAzB,iCAAyB,QAQ1C;AA2GD,IAAkB,cAajB;AAbD,WAAkB,cAAc;IAC9B;;OAEG;IACH,+BAAa,CAAA;IACb;;OAEG;IACH,yCAAuB,CAAA;IACvB;;OAEG;IACH,iCAAe,CAAA;AACjB,CAAC,EAbiB,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAa/B;AAUD,IAAW,iBAIV;AAJD,WAAW,iBAAiB;IAC1B,+EAAe,CAAA;IACf,mGAAyB,CAAA;IACzB,yFAAoB,CAAA;AACtB,CAAC,EAJU,iBAAiB,KAAjB,iBAAiB,QAI3B;AAQD,IAAkB,mBA6BjB;AA7BD,WAAkB,mBAAmB;IACnC;;;;;;;OAOG;IACH,4CAAqB,CAAA;IACrB;;;OAGG;IACH,8CAAuB,CAAA;IACvB;;;OAGG;IACH,gDAAyB,CAAA;IACzB,mFAA4D,CAAA;IAC5D;;OAEG;IACH,sFAA+D,CAAA;IAC/D,wCAAiB,CAAA;IACjB,4CAAqB,CAAA;IAErB,wEAAiD,CAAA;AACnD,CAAC,EA7BiB,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QA6BpC;AA6BD;;;;;;;;GAQG;AACH;IAA+B,0CAAY;IA8CzC,mBAAmB,WAAmB,EAAS,IAAY;QAA3D,YACE,iBAAO,SAmBR;QApBkB,iBAAW,GAAX,WAAW,CAAQ;QAAS,UAAI,GAAJ,IAAI,CAAQ;QAtC3D,2GAA2G;QAC3G,SAAG,GAAqB,IAAI,CAAC,CAAC,+CAA+C;QAC7E,eAAS,GAAY,KAAK,CAAC,CAAC,6FAA6F;QACzH,aAAO,GAAY,KAAK,CAAC,CAAC,oDAAoD;QAE9E,wBAAkB,GAAgB,EAAE,CAAC,CAAC,gEAAgE;QACtG,eAAS,GAAY,IAAI,CAAC;QAE1B,cAAQ,iBAAgC;QACxC,cAAQ,GAAc,EAAE,CAAC;QAEzB,0BAAoB,GAAY,IAAI,CAAC,CAAC,8BAA8B;QACpE;;;;WAIG;QACK,iBAAW,GAAY,KAAK,CAAA;QAE5B,iBAAW,GAAoD,EAAE,CAAC;QAK1E,cAAQ,GAAqB,IAAI,CAAC;QAElC,uBAAiB,GAAsB,IAAI,qCAAiB,CAAC,KAAI,CAAC,CAAC;QAMnE;;;WAGG;QACK,4BAAsB,GAAW,CAAC,CAAC;QA6I3C;;;;;WAKG;QACI,yBAAmB,GAAG;YAC3B,OAAO,KAAI,CAAC,OAAO,CAAA,CAAC,CAAC,KAAI,CAAC,MAAO,CAAA,CAAC,CAAC,KAAI,CAAC;QAC1C,CAAC,CAAA;QA2cD,0BAAoB,GAAG;YACrB,KAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;QACpC,CAAC,CAAA;QAED,yBAAmB,GAAG;YACpB,KAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;QACnC,CAAC,CAAA;QAED;;;WAGG;QACH,oBAAc,GAAG;YACf,2DAA2D;YAC3D,IAAM,QAAQ,GAAG,KAAI,CAAC,oBAAoB,CAAC;YAC3C,KAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;YAEjC,kBAAkB;YAClB,KAAI,CAAC,UAAU,CAAC,KAAI,CAAC,gBAAiB,CAAC,CAAC;YAExC,uCAAuC;YACvC,KAAI,CAAC,oBAAoB,GAAG,QAAQ,CAAC;QACvC,CAAC,CAAA;QAlnBC,IAAA,gBAAM,EAAC,WAAW,EAAE,2DAA2D,CAAC,CAAC;QACjF,IAAA,gBAAM,EAAC,IAAI,EAAE,gDAAgD,CAAC,CAAA;QAC9D,IAAA,gBAAM,EAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAG,IAAI,GAAG,+IAA+I,CAAC,CAAC;QAE9L,+FAA+F;QAC/F,KAAI,CAAC,UAAU,CAAC,iBAAO,CAAC,oBAAoB,CAAC;aAC1C,iBAAiB,CAAC,+BAAc,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAEvD,yGAAyG;QACzG,uHAAuH;QACvH,KAAI,CAAC,UAAU,CAAC,iBAAO,CAAC,oBAAoB,CAAE;aAC3C,iBAAiB,CAAC,+BAAc,CAAC,QAAQ,CAAE;aAC3C,EAAE,kBAA+B,UAAC,KAA0B,EAAE,QAAmC;YAChG,IAAI,KAAK,EAAE;gBACT,IAAM,MAAM,GAAG,IAAI,CAAC;gBACpB,KAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;aAC9C;QACH,CAAC,CAAC,CAAC;;IACP,CAAC;IAEO,yCAAqB,GAA7B,UAA8B,MAAe,EAAE,QAA0B;QACvE,KAAK,CAAC,6BAA6B,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAEvD,IAAI,IAAI,CAAC,SAAS,2BAA8B,CAAC,MAAM,GAAG,CAAC,EAAE;YAC3D,+FAA+F;YAC/F,wCAAwC;YACxC,IAAI,CAAC,IAAI,4BAA+B,MAAM,EAAE,QAAQ,CAAC,CAAC;SAC3D;aAAM;YACL,KAAK,CAAC,uEAAuE,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACjG,QAAQ,EAAE,CAAC;SACZ;IACH,CAAC;IAEM,8BAAU,GAAjB,UAAkB,YAAsC;;QAAE,yBAAyB;aAAzB,UAAyB,EAAzB,qBAAyB,EAAzB,IAAyB;YAAzB,wCAAyB;;QACjF,4FAA4F;QAC5F,mCAAmC;QACnC,IAAM,OAAO,GAAY,OAAO,YAAY,KAAK,UAAU;YACvD,CAAC,CAAC,IAAI,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;YAC9E,CAAC,CAAC,YAAY,CAAC;;YAEnB,kCAAkC;YAClC,KAAuB,IAAA,KAAA,sBAAA,IAAI,CAAC,QAAQ,CAAA,gBAAA,4BAAE;gBAAjC,IAAM,QAAQ,WAAA;gBACjB,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE;oBAClC,oHAAoH;oBACpH,IAAI,CAAC,OAAO,CAAC,OAAO;wBAClB,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,QAAQ,CAAC,IAAI,GAAG,2FAA2F,CAAC,CAAC;oBAE7K,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO;wBACtC,MAAM,IAAI,KAAK,CAAC,2CAA2C,GAAG,QAAQ,CAAC,IAAI,GAAG,iBAAiB,GAAG,QAAQ,CAAC,OAAO,GAAG,yCAAyC,CAAC,CAAC;iBACnK;aACF;;;;;;;;;QAED,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,YAAY,EAAE;YACxC,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,YAAY,GAAG,kCAAkC,CAAC,CAAC;SAC9F;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5B,IAAI,OAAO,CAAC,gBAAgB,EAAE,EAAE,uCAAuC;YACrE,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE;gBACrC,IAAI,CAAC,cAAc,CAAC,gBAAgB,GAAG,KAAK,CAAC;aAC9C;YAED,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;SAC/B;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,IAAI,CAAC,0BAA0B,EAAE,CAAC;SACnC;aAAM;YACL,IAAI,CAAC,IAAI,mEAAmD,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;SACnF;QAED,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;QAExC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACI,qCAAiB,GAAxB,UAAyB,OAAgB;QACvC,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAC9B,CAAC;IAEM,iCAAa,GAApB,UAAqB,OAAgB;QACnC,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE7C,IAAI,KAAK,IAAI,CAAC,EAAE;YACd,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YAE/B,IAAI,IAAI,CAAC,cAAc,KAAK,OAAO,EAAE,EAAE,+CAA+C;gBACpF,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;aACjC;YACD,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC,+DAA+D;YAElG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjB,IAAI,CAAC,0BAA0B,EAAE,CAAC;aACnC;iBAAM;gBACL,IAAI,CAAC,IAAI,mEAAmD,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;aACnF;YAED,OAAO,CAAC,kBAAkB,EAAE,CAAC;SAC9B;IACH,CAAC;IAEO,uCAAmB,GAA3B,UAA4B,OAAgB;;;YAC1C,KAAsB,IAAA,KAAA,sBAAA,IAAI,CAAC,QAAQ,CAAA,gBAAA,4BAAE;gBAAhC,IAAM,OAAO,WAAA;gBAChB,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;aACtC;;;;;;;;;IACH,CAAC;IAEM,8BAAU,GAAjB,UAAsD,IAAgB;;;YACpE,KAAsB,IAAA,KAAA,sBAAA,IAAI,CAAC,QAAQ,CAAA,gBAAA,4BAAE;gBAAhC,IAAM,OAAO,WAAA;gBAChB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC,EAAE;oBACnH,OAAO,OAAO,CAAC;oBACjB,mBAAmB;iBAClB;qBAAM,IAAI,OAAO,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,OAAO,YAAY,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE;oBACpG,OAAO,OAAO,CAAC;iBAChB;aACF;;;;;;;;;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,kCAAc,GAArB,UAA0D,IAAgB,EAAE,OAAe;;;YACzF,KAAsB,IAAA,KAAA,sBAAA,IAAI,CAAC,QAAQ,CAAA,gBAAA,4BAAE;gBAAhC,IAAM,OAAO,WAAA;gBAChB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO,EAAE;oBACtH,OAAO,OAAO,CAAC;oBACjB,mBAAmB;iBAClB;qBAAM,IAAI,OAAO,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,OAAO,YAAY,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,KAAK,OAAO,EAAE;oBACnI,OAAO,OAAO,CAAC;iBAChB;aACF;;;;;;;;;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAYD;;OAEG;IACI,sCAAkB,GAAzB,UAA0B,SAAkB;QAC1C,IAAI,CAAC,IAAI,CAAC,OAAO;YACf,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAE3B,KAAK,CAAC,mDAAmD,CAAC,CAAC;IAC7D,CAAC;IAEM,uCAAmB,GAA1B,UAA2B,SAAoB,EAAE,WAA4B;;QAA7E,iBAiCC;QAjCgD,4BAAA,EAAA,mBAA4B;QAC3E,IAAI,SAAS,CAAC,SAAS,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;SAClD;;YAED,0BAA0B;YAC1B,KAAuB,IAAA,KAAA,sBAAA,IAAI,CAAC,kBAAkB,CAAA,gBAAA,4BAAE;gBAA3C,IAAM,QAAQ,WAAA;gBACjB,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,EAAE;oBACpC,MAAM,IAAI,KAAK,CAAC,kFAAkF,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;iBACrH;aACF;;;;;;;;;QAED,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,eAAe,EAAE;YACrD,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,eAAe,GAAG,cAAc,CAAC,CAAC;SAChF;QAED,8EAA8E;QAC9E,SAAS,CAAC,EAAE,sEAAoD,UAAA,MAAM,IAAI,OAAA,KAAI,CAAC,+BAA+B,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,EAAvE,CAAuE,CAAC,CAAC;QACnJ,SAAS,CAAC,EAAE,mEAAmD,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3G,SAAS,CAAC,EAAE,wDAA6C,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEtG,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;QACzB,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC;QAExB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAExC,IAAI,CAAC,iBAAiB,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,wCAAwC;QAEzF,IAAG,CAAC,WAAW,EAAE;YACf,IAAI,CAAC,0BAA0B,EAAE,CAAC;SACnC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEM,yCAAqB,GAA5B,UAA6B,WAAwB;;;YACnD,KAAwB,IAAA,gBAAA,sBAAA,WAAW,CAAA,wCAAA,iEAAE;gBAAhC,IAAM,SAAS,wBAAA;gBAClB,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;aAC3C;;;;;;;;;QAED,IAAI,CAAC,0BAA0B,EAAE,CAAC;IACpC,CAAC;IAEM,0CAAsB,GAA7B,UAA8B,SAAoB,EAAE,WAAoB;QACtE,IAAI,SAAS,CAAC,SAAS;YACrB,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAEnD,0BAA0B;QAC1B,IAAM,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,UAAC,QAAQ;YACrE,OAAO,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAAA;QACzC,CAAC,CAAC,CAAC;QAEH,IAAI,mBAAmB,KAAK,CAAC,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAElE,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;QAEvD,SAAS,CAAC,kBAAkB,EAAE,CAAC;QAE/B,IAAG,CAAC,WAAW,EAAE;YACf,IAAI,CAAC,0BAA0B,EAAE,CAAC;SACnC;IACH,CAAC;IAEM,4CAAwB,GAA/B,UAAgC,WAAwB;;;YACtD,KAAwB,IAAA,gBAAA,sBAAA,WAAW,CAAA,wCAAA,iEAAE;gBAAhC,IAAM,SAAS,wBAAA;gBAClB,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;aAC9C;;;;;;;;;QAED,IAAI,CAAC,0BAA0B,EAAE,CAAC;IACpC,CAAC;IAEM,+CAA2B,GAAlC;QACE,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAG,EAAE;YAC7D,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;SAC/D;QACD,IAAI,CAAC,0BAA0B,EAAE,CAAC;IACpC,CAAC;IAEO,0CAAsB,GAA9B,UAA+B,GAAW;;;YACxC,KAAsB,IAAA,KAAA,sBAAA,IAAI,CAAC,QAAQ,CAAA,gBAAA,4BAAE;gBAAhC,IAAM,OAAO,WAAA;gBAChB,IAAM,cAAc,GAAG,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;gBAE3D,IAAI,cAAc,EAAE;oBAClB,OAAO,cAAc,CAAC;iBACvB;aACF;;;;;;;;;IACH,CAAC;IAES,qCAAiB,GAA3B,UAA4B,GAAW;;QACrC,IAAI,GAAG,KAAK,CAAC,EAAE;YACb,OAAO,IAAI,CAAC;SACb;;YAED,KAAwB,IAAA,KAAA,sBAAA,IAAI,CAAC,kBAAkB,CAAA,gBAAA,4BAAE;gBAA5C,IAAM,SAAS,WAAA;gBAClB,IAAI,SAAS,CAAC,GAAG,KAAK,GAAG,EAAE;oBACzB,OAAO,SAAS,CAAC;iBAClB;aACF;;;;;;;;;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAES,sCAAkB,GAA5B,UAA6B,GAAW,EAAE,GAAW;QACnD,IAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC9C,OAAO,SAAS,IAAI,SAAS,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC;IAED,mCAAmC;IACnC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACI,yCAAqB,GAA5B,UAA6B,YAAgC;QAA7D,iBAgCC;QA/BC,IAAI,YAAY,CAAC,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/C,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;SACzF;QAED,IAAM,OAAO,GAAG,YAAY,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,iDAAiD;QAC5G,IAAM,uBAAuB,GAA4B;YACvD,iBAAiB,EAAE,YAAY,CAAC,iBAAiB,CAAC,MAAM;YACxD,gBAAgB,EAAE,OAAO;YACzB,QAAQ,EAAE,IAAI,kCAAyB,CAAC,YAAY,CAAC;SACtD,CAAC;QAEF,IAAM,gBAAgB,GAAG,IAAI,6BAAgB,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC,CAAC,yCAAyC;QACvH,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;QAE3C,qEAAqE;QACrE,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAA,OAAO;YACnC,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAO,CAAC,yBAAyB,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAO,CAAC,mBAAmB,CAAC,IAAI;mBACzG,OAAO,CAAC,IAAI,KAAK,iBAAO,CAAC,yBAAyB,CAAC,IAAI,EAAE;gBAC9D,OAAO,CAAC,yEAAyE;aAClF;YAED,0GAA0G;YAC1G,2CAA2C;YAC3C,KAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,mFAAmF;QACnF,mCAAmC;QACnC,YAAY,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,iBAAuC,CAAC;QAE1F,OAAO,gBAAgB,CAAC,CAAC,wEAAwE;IACnG,CAAC;IAED;;;;;;;;;;;;;OAaG;IACI,uCAAmB,GAA1B,UAA2B,qBAAyD;QAApF,iBAyDC;QAxDC,IAAM,UAAU,GAAG,OAAO,qBAAqB,KAAK,UAAU;YAC1D,CAAC,CAAC,IAAI,qBAAqB,EAAE,CAAC,4EAA4E;YAC1G,CAAC,CAAC,qBAAqB,CAAC;QAC5B,IAAM,EAAE,GAAG,UAAU,CAAC,YAAY,EAAE,CAAC;QAErC,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE;YACxB,MAAM,IAAI,KAAK,CAAC,oCAAkC,EAAE,6CAAwC,IAAI,CAAC,WAAa,CAAC,CAAC;SACjH;QAED,IAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QACrF,IAAI,UAAgC,CAAC;QAErC,IAAI,eAAe,EAAE,EAAE,gCAAgC;YACrD,IAAM,gBAAgB,GAAG,IAAA,aAAK,EAAC,eAAe,CAAC,CAAC;YAChD,IAAM,iBAAiB,GAAG,UAAU,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC,yCAAyC;YACjH,UAAU,GAAG,iBAAiB,IAAI,eAAe,CAAC,CAAC,2FAA2F;YAE9I,IAAI,iBAAiB,EAAE,EAAE,gFAAgF;gBACvG,kHAAkH;gBAClH,IAAI,CAAC,iCAAiC,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;aAC7E;YAED,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC,4CAA4C;YAE5E,8CAA8C;YAC9C,OAAO,IAAI,CAAC,qBAAsB,CAAC,EAAE,CAAC,CAAC;YACvC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,qBAAsB,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC5D,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;aACxC;SACF;aAAM;YACL,UAAU,GAAG,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC,yCAAyC;YACtF,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC,4CAA4C;YAE5E,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,UAAA,OAAO;gBACvC,IAAI,OAAO,IAAI,CAAC,KAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oBAC/C,KAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;iBAC1B;YACH,CAAC,CAAC,CAAC;SACJ;QAGD,0CAA0C;QAC1C,IAAM,OAAO,GAAsB;YACjC,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,UAAU;SACvB,CAAC;QAEF,IAAI,IAAA,qCAAwB,EAAC,UAAU,CAAC,EAAE;YACxC,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;SACpD;QAED,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;QAE/B,IAAI,UAAU,YAAY,6BAAgB,EAAE,EAAE,8CAA8C;YAC1F,IAAI,CAAC,sBAAsB,GAAG,UAAU,CAAC;SAC1C;IACH,CAAC;IAED;;;;;;OAMG;IACI,oCAAgB,GAAvB,UAAwB,UAAsB;QAA9C,iBAmCC;QAlCC,IAAM,EAAE,GAAG,UAAU,CAAC,YAAY,EAAE,CAAC;QAErC,IAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC9C,IAAI,gBAAgB,EAAE;YACpB,IAAI,gBAAgB,CAAC,UAAU,KAAK,UAAU,EAAE;gBAC9C,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,GAAG,kDAAkD,GAAG,EAAE,GAAG,kEAAkE,CAAC,CAAC;aACxK;YAED,IAAI,IAAA,qCAAwB,EAAC,UAAU,CAAC,EAAE;gBACxC,qFAAqF;gBACrF,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;aACtD;YAED,IAAI,UAAU,CAAC,kBAAkB,EAAE;gBACjC,UAAU,CAAC,kBAAkB,EAAE,CAAC;aACjC;YACD,UAAU,CAAC,uBAAuB,EAAE,CAAC;YAErC,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAE5B,IAAI,IAAI,CAAC,sBAAsB,KAAK,UAAU,EAAE;gBAC9C,IAAI,CAAC,sBAAsB,GAAG,SAAS,CAAC;aACzC;YAED,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,UAAA,OAAO;gBACxD,IAAI,OAAO,EAAE;oBACX,KAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;iBAC7B;YACH,CAAC,CAAC,CAAC;SACJ;QAED,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC9B,OAAO,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;SACvC;IACH,CAAC;IAEO,yDAAqC,GAA7C;;;YACE,KAAsB,IAAA,KAAA,sBAAA,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA,gBAAA,4BAAE;gBAAlD,IAAM,OAAO,WAAA;gBAChB,IAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;gBACtC,IAAI,UAAU,CAAC,kBAAkB,EAAE,EAAE,4FAA4F;oBAC/H,UAAU,CAAC,kBAAkB,EAAE,CAAC;iBACjC;gBAED,IAAI,IAAA,qCAAwB,EAAC,UAAU,CAAC,EAAE;oBACxC,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;iBACxD;aACF;;;;;;;;;IACH,CAAC;IAEO,qDAAiC,GAAzC,UAA0C,kBAAwC,EAAE,iBAAuC;QAA3H,iBA8BC;QA7BC,iBAAiB,GAAG,IAAA,aAAK,EAAC,iBAAiB,CAAC,CAAC,CAAC,8BAA8B;QAE5E,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,UAAA,IAAI;YAC1C,IAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACzC,IAAM,cAAc,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAE/C,IAAI,OAAO,IAAI,cAAc,EAAE,EAAE,+DAA+D;gBAC9F,OAAO,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,sFAAsF;gBACvH,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,mFAAmF;gBAEnH,IAAI,OAAO,KAAK,cAAc,EAAE;oBAC9B,KAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;oBAC5B,KAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;iBACjC;aACF;QACH,CAAC,CAAC,CAAC;QAEH,iGAAiG;QAEjG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,UAAA,OAAO;YAC/C,IAAI,OAAO,EAAE;gBACX,KAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;aAC7B;QACH,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,UAAA,OAAO;YAC9C,IAAI,OAAO,EAAE;gBACX,KAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;aAC1B;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,4BAAQ,GAAR;QACE,IAAI,IAAI,CAAC,SAAS,EAAE;YAClB,OAAO,IAAI,CAAC,SAAS,CAAC;SACvB;QAED,IAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAM,SAAS,GAAG,IAAI,CAAC,cAAc,IAAI,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QAErG,IAAI,SAAS,GAAG,SAAU,CAAC;QAC3B,IAAM,UAAU,GAAG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,IAAI,CAAC,CAAC;QAE5E,SAAS,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,eAAe;QAErC,MAAM,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QAEnC,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,CAAC,EAAE;YAC3D,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SAChC;QAED,MAAM,CAAC,aAAa,CAAC,UAAW,EAAE,CAAC,CAAC,CAAC;QAErC,IAAI,cAAc,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAEtH,IAAI,cAAc,CAAC,MAAM,IAAI,CAAC,EAAE;YAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACnD,cAAc,GAAG,GAAG,GAAG,cAAc,CAAC;aACvC;SACF;QAED,IAAI,CAAC,SAAS,GAAG,SAAS,GAAG,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC5D,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACK,qCAAiB,GAAzB,UAA0B,aAAuB;QAAjD,iBAiCC;QAhCC,IAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAO,CAAC,oBAAoB,CAAC,CAAC;QAC9D,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,CAAC,GAAG,CAAC,qCAAqC,GAAG,IAAI,CAAC,WAAW,GAAG,iEAAiE;gBACtI,mHAAmH,CAAC,CAAC;SACxH;aAAM;YACL,IAAM,UAAU,GAAG,UAAC,IAAY,EAAE,KAAW;gBAC3C,IAAI,CAAC,KAAK,EAAE;oBACV,OAAO,CAAC,GAAG,CAAC,qCAAqC,GAAG,KAAI,CAAC,WAAW,GAAG,kDAAkD,GAAG,IAAI,GAAG,GAAG;wBACpI,iEAAiE;wBACjE,mHAAmH,CAAC,CAAC;iBACxH;YACH,CAAC,CAAC;YAEF,IAAM,KAAK,GAAG,OAAO,CAAC,iBAAiB,CAAC,+BAAc,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;YACpE,IAAM,YAAY,GAAG,OAAO,CAAC,iBAAiB,CAAC,+BAAc,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC;YAClF,IAAM,gBAAgB,GAAG,OAAO,CAAC,iBAAiB,CAAC,+BAAc,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC;YAC1F,IAAM,IAAI,GAAG,OAAO,CAAC,iBAAiB,CAAC,+BAAc,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;YAElE,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC3B,UAAU,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;YACzC,UAAU,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC;YACjD,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;SAC1B;QAED,IAAI,aAAa,EAAE;YACjB,uHAAuH;YACvH,IAAA,gBAAM,EAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,uDAAuD,CAAC,CAAC;SACrH;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,UAAA,SAAS,IAAI,OAAA,SAAS,CAAC,iBAAiB,EAAE,EAA7B,CAA6B,CAAC,CAAC;SAC7E;IACH,CAAC;IAED;;;OAGG;IACH,8BAAU,GAAV,UAAW,eAAgC;;QAEzC,kFAAkF;QAClF,2DAA2D;QAC3D,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,oBAAoB,EAAE;YACtD,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,CAAC;SAC5C;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,6FAA6F;YAC7F,yCAAyC;YACzC,IAAI,CAAC,GAAG,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;SAC7C;aAAM;YACL,oGAAoG;YACpG,uBAAuB;YACvB,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;SACd;;YAED,KAAsB,IAAA,KAAA,sBAAA,IAAI,CAAC,QAAQ,CAAA,gBAAA,4BAAE;gBAAhC,IAAM,OAAO,WAAA;gBAChB,IAAI,IAAI,CAAC,SAAS,EAAE;oBAClB,OAAO,CAAC,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;iBAC5D;qBAAM;oBACL,OAAO,CAAC,UAAU,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;iBAChD;aACF;;;;;;;;;;YAED,qDAAqD;YACrD,KAAwB,IAAA,KAAA,sBAAA,IAAI,CAAC,kBAAkB,CAAA,gBAAA,4BAAE;gBAA5C,IAAM,SAAS,WAAA;gBAClB,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;aACvC;;;;;;;;;QAED,kFAAkF;QAClF,6DAA6D;QAC7D,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,+CAA+C;YAC/C,IAAI,IAAI,CAAC,oBAAoB;gBAC3B,IAAI,CAAC,gBAAgB,CAAC,gCAAgC,EAAE,CAAC;YAC3D,+BAA+B;YAC/B,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;SAC9B;IACH,CAAC;IA0BD;;OAEG;IACW,yBAAK,GAAnB,UAAoB,UAAyB,EAAE,kBAAyB;QAAzB,mCAAA,EAAA,yBAAyB;;;;;;;wBACtE,IAAA,gBAAM,EAAC,IAAI,CAAC,GAAG,EAAE,yCAAyC,GAAG,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC;wBACrF,IAAA,gBAAM,EAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC,WAAW,GAAG,+BAA+B,CAAC,CAAC;;4BAG/F,GAAG,EAAE,IAAI,CAAC,GAAI;;wBACJ,qBAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAA,OAAO,IAAI,OAAA,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,kBAAkB,CAAC,EAA7C,CAA6C,CAAC,CAAC,EAAA;;wBAFpG,SAAS,IAEb,WAAQ,GAAE,SAA8F;+BACzG;wBAEK,WAAW,GAA0B,CAAC,SAAS,CAAC,CAAC;6BAEnD,CAAC,IAAI,CAAC,OAAO,EAAb,wBAAa;6BACf,CAAA,KAAA,WAAW,CAAC,IAAI,CAAA;8BAAhB,WAAW;;wBAAU,qBAAM,OAAO,CAAC,GAAG,CACpC,IAAI,CAAC,kBAAkB;iCACpB,GAAG,CAAC,UAAA,SAAS,IAAI,OAAA,SAAS,CAAC,KAAK,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,CAAC,CAAC,EAAR,CAAQ,CAAC,EAAvE,CAAuE,CAAC,CAC7F,EAAA;;wBAHD,qGAAqB,SAGpB,gBAAE;;4BAGL,sBAAO,WAAW,EAAC;;;;KACpB;IAED;;OAEG;IACK,6CAAyB,GAAjC,UAAkC,SAAyB;;QAAzB,0BAAA,EAAA,gBAAyB;QACzD,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAiB,CAAC,CAAC,CAAC,2CAA2C;SACrF;QACD,IAAA,gBAAM,EAAC,IAAI,CAAC,GAAG,EAAE,yCAAyC,GAAG,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC;QACrF,IAAA,gBAAM,EAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC,WAAW,GAAG,+BAA+B,CAAC,CAAC;QAEjG,IAAM,SAAS,GAAwB;YACrC,GAAG,EAAE,IAAI,CAAC,GAAI;YACd,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAA,OAAO,IAAI,OAAA,OAAO,CAAC,yBAAyB,EAAE,EAAnC,CAAmC,CAAC;SAC5E,CAAC;QAEF,IAAM,WAAW,GAA0B,CAAC,SAAS,CAAC,CAAC;QAEvD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;;gBACjB,KAAwB,IAAA,KAAA,sBAAA,IAAI,CAAC,kBAAkB,CAAA,gBAAA,4BAAE;oBAA5C,IAAM,WAAS,WAAA;oBAClB,WAAW,CAAC,IAAI,CAAC,WAAS,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBACjE;;;;;;;;;SACF;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;;;;;;;;;OAaG;IACU,2BAAO,GAApB,UAAqB,IAAiB,EAAE,oBAA8B;;;;;;;;wBACpE,mCAAmC;wBACnC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,mBAAmB,IAAI,IAAI,EAAE;4BACxD,mCAAmC;4BACnC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAA,CAAC,6BAAuB,CAAC,kBAAoB,CAAC;4BACxF,OAAO,CAAC,IAAI,CAAC,sKAAsK;gCACjL,wEAAwE,CAAC,CAAA;yBAC5E;wBAED,mCAAmC;wBACnC,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,gCAA2B,EAAE;4BAC3D,OAAO,CAAC,GAAG,CAAC,0FAA0F;gCACpG,uCAAuC,CAAC,CAAC;yBAC5C;wBAEG,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAO,CAAC,mBAAmB,CAAC,CAAC;wBAC3D,IAAI,CAAC,OAAO,EAAE;4BACZ,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAO,CAAC,mBAAmB,CAAC,CAAA,CAAC,gEAAgE;yBACxH;wBACD,OAAO,CAAC,iBAAiB,CAAC,+BAAc,CAAC,OAAO,EAAE,2BAAc,CAAC,sBAAsB,CAAC,CAAC;wBAEzF,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,QAAQ,EAAE,EAAE,sCAAsC;4BAC9G,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,4BAA4B;yBACrF;wBAED,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,MAAA,IAAI,CAAC,sBAAsB,mCAAI,IAAI,CAAC,EAAE;4BAC9D,sFAAsF;4BACtF,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,GAAG,GAAG,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;iCACpE,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC;iCAC7B,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;4BAC3C,IAAI,CAAC,UAAU,CAAC,iBAAO,CAAC,oBAAoB,CAAE,CAAC,oBAAoB,CAAC,+BAAc,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;yBAC5G;wBAED,mDAAmD;wBACnD,IAAI,CAAC,cAAc,GAAG,6BAAa,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAExD,0CAA0C;wBAC1C,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;4BACxB,KAAK,CAAC,oDAAoD,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;4BAC9E,IAAI,CAAC,cAAc,GAAG,6BAAa,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;yBAC3D;wBAED,IAAI,IAAI,CAAC,OAAO,EAAE;4BAChB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC;yBAC9B;6BAAM,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,KAAK,EAAE,EAAE;4BAC1F,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,gBAAgB,EAAE,CAAC;yBAC9C;6BAAM;4BACL,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;yBAC7C;wBAED,IAAI,CAAC,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;wBAE5C,qHAAqH;wBACrH,IAAI,CAAC,cAAc,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;wBACnD,IAAI,CAAC,cAAc,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,iBAAO,CAAC,oBAAoB,CAAE,CAAC,iBAAiB,CAAC,+BAAc,CAAC,KAAK,CAAC,CAAC,KAAe,CAAC;wBACnI,IAAI,CAAC,cAAc,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,iBAAoB,CAAC;wBACjE,IAAI,CAAC,cAAc,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;wBAC3C,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;wBAE3B,6EAA6E;wBAC7E,IAAI,CAAC,gBAAgB,GAAG,iCAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAE5D,0CAA0C;wBAC1C,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;4BAC1B,KAAK,CAAC,mCAAmC,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;4BAC7D,IAAI,CAAC,gBAAgB,GAAG,IAAI,iCAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;yBAC5D;wBAED,6EAA6E;wBAC7E,qEAAqE;wBACrE,0EAA0E;wBAC1E,cAAc;wBACd,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,kBAAkB,CAAC,MAAM,IAAI,CAAC,EAAE;4BACzD,IAAI,CAAC,oBAAoB,EAAE,CAAC;4BAC5B,IAAI,CAAC,iBAAiB,CAAC,8BAA8B,GAAG,KAAK,CAAC;yBAC/D;wBAED,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,yEAAyE;4BAChG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,+BAA+B;yBAC5E;wBAED,iBAAiB;wBACjB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;wBAKjC,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC;wBACrD,+GAA+G;wBAC/G,8DAA8D;wBAC9D,IAAI,CAAC,cAAc,CAAC,2CAA2C,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;wBAE9E,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;wBAGvB,MAAM,GAAG,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;oCAErB,IAAI,CAAC,UAAU;;;4BACnC,qBAAM,4BAAe,CAAC,WAAW,EAAE,EAAA;;wBAApC,KAAA,CAAC,CAAA,SAAmC,EAAC,CAAC,qBAAsB,CAAC,4BAAuB,CAAC,CAAA;;;wBADpF,iBAAiB,KACmE;wBAE1F,QAAQ,iBAAiB,EAAE;4BACzB;gCACE,IAAI,CAAC,WAAW,GAAG,IAAI,2BAAc,CAAC,IAAI,CAAC,cAAc,EAAE;oCACzD,SAAS,EAAE,MAAM,CAAC,iBAAiB;iCACpC,EAAE;oCACD,mBAAmB,EAAE,MAAM,CAAC,wBAAwB;oCACpD,YAAY,EAAE,MAAM,CAAC,kBAAkB;iCACxC,CAAC,CAAC;gCACH,MAAM;4BACR;gCACE,mCAAmC;gCACnC,IAAI,CAAC,WAAW,GAAG,IAAI,iCAAoB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,IAAI,EAAE;oCAC1E,mBAAmB,EAAE,MAAM,CAAC,wBAAwB;oCACpD,YAAY,EAAE,MAAM,CAAC,kBAAkB;iCACxC,CAAC,CAAC;gCACH,MAAM;4BACR;gCACE,IAAI,CAAC,WAAW,GAAG,IAAI,4BAAe,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gCAC5D,MAAM;4BACR;gCACE,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;yBAChF;wBACD,IAAI,CAAC,WAAW,CAAC,EAAE,oCAA+B,UAAA,IAAI;4BACpD,KAAI,CAAC,WAAW,GAAG,IAAI,CAAC;4BACxB,IAAI,KAAI,CAAC,cAAc,EAAE;gCACvB,KAAI,CAAC,cAAc,CAAC,WAAW,GAAG,IAAI,CAAC;gCACvC,KAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;6BAC5B;4BAED,gFAAgF;4BAChF,KAAI,CAAC,UAAU,CAAC,iBAAO,CAAC,oBAAoB,CAAE;iCAC3C,oBAAoB,CAAC,+BAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;wBACrD,CAAC,CAAC,CAAC;wBAEH,mFAAmF;wBACnF,IAAI,CAAC,OAAO,GAAG,IAAI,qBAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;wBAClD,IAAI,CAAC,OAAO,CAAC,oBAAoB,GAAG,CAAC,CAAC,oBAAoB,CAAC;wBAC3D,IAAI,CAAC,OAAO,CAAC,EAAE,8BAAgC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC5E,IAAI,CAAC,OAAO,CAAC,EAAE,4BAA+B,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;wBAC5F,IAAI,CAAC,OAAO,CAAC,EAAE,oBAA2B,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBAC1F,IAAI,CAAC,OAAO,CAAC,EAAE,kCAAkC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACnF,IAAI,CAAC,OAAO,CAAC,EAAE,wCAAqC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACzF,IAAI,CAAC,OAAO,CAAC,EAAE,sCAAoC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACvF,IAAI,CAAC,OAAO,CAAC,EAAE,kCAAkC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACpF,IAAI,CAAC,OAAO,CAAC,EAAE,kDAA0C,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACnG,IAAI,CAAC,OAAO,CAAC,EAAE,kDAA0C,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBACnG,IAAI,CAAC,OAAO,CAAC,EAAE,8CAAwC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBAClG,IAAI,CAAC,OAAO,CAAC,EAAE,4CAAuC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;wBAEtF,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;wBAErD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;;;;;KACzB;IAED;;;;OAIG;IACI,2BAAO,GAAd;QACE,IAAI,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QAE/B,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YAE7D,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;YAChC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC;YAClC,IAAI,CAAC,iBAAiB,GAAG,IAAI,qCAAiB,CAAC,IAAI,CAAC,CAAC;SACtD;QACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAE1B,OAAO,OAAO,CAAC;IACjB,CAAC;IAEY,6BAAS,GAAtB;;;;;wBACE,IAAI,IAAI,CAAC,OAAO,EAAE;4BAChB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;4BACvB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;yBAC1B;6BACG,IAAI,CAAC,WAAW,EAAhB,wBAAgB;wBAClB,wCAAwC;wBACxC,qBAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAA;;wBADhC,wCAAwC;wBACxC,SAAgC,CAAC;wBACjC,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;;;;;;KAEhC;IAEO,8CAA0B,GAAlC;QAAA,iBAsBC;QArBC,IAAI,IAAI,CAAC,kCAAkC,EAAE;YAC3C,OAAO,CAAC,mBAAmB;SAC5B;QAED,IAAI,CAAC,kCAAkC,GAAG,UAAU,CAAC;;YACnD,KAAI,CAAC,kCAAkC,GAAG,SAAS,CAAC;YAEpD,IAAI,KAAI,CAAC,WAAW,IAAI,KAAI,CAAC,WAAW,EAAE;gBACxC,+FAA+F;gBAC/F,gGAAgG;gBAChG,8EAA8E;gBAC9E,IAAM,MAAM,GAAG,KAAI,CAAC,yBAAyB,EAAE,CAAC,CAAC,oCAAoC;gBACrF,IAAI,MAAA,KAAI,CAAC,cAAc,0CAAE,2CAA2C,CAAC,MAAM,CAAC,EAAE;oBAC5E,KAAI,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC;iBACxC;aACF;QACH,CAAC,EAAE,IAAI,CAAC,CAAC;QACT,IAAI,CAAC,kCAAkC,CAAC,KAAK,EAAE,CAAC;QAChD,8FAA8F;QAC9F,yGAAyG;QACzG,2DAA2D;IAC7D,CAAC;IAEO,+BAAW,GAAnB,UAAoB,IAAY,EAAE,QAAgB;QAAlD,iBAUC;QATC,IAAA,gBAAM,EAAC,IAAI,CAAC,WAAW,EAAE,2CAA2C,CAAC,CAAC;QACtE,6EAA6E;QAC7E,IAAI,CAAC,WAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,CAAC,WAAY,CAAC,gBAAgB,EAAE;aACjC,IAAI,CAAC,cAAM,OAAA,KAAI,CAAC,IAAI,+BAAgC,EAAzC,CAAyC,CAAC;aACrD,KAAK,CAAC,UAAA,MAAM,IAAI,OAAA,OAAO,CAAC,KAAK,CAAC,6EAA6E,GAAG,MAAM,CAAC,EAArG,CAAqG,CAAC,CAAA;QAEzH,IAAI,CAAC,IAAI,8BAAgC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAEO,kDAA8B,GAAtC,UAAuC,QAAgB,EAAE,SAAiB,EAAE,QAAsB;QAChG,KAAK,CAAC,4BAA4B,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAEhE,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,gBAAwB,CAAC;QACvG,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAElD,mFAAmF;QACnF,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC;QAE3D,QAAQ,EAAE,CAAC;QAEX,IAAI,CAAC,IAAI,uBAA4B,CAAC;IACxC,CAAC;IAEO,oCAAgB,GAAxB,UAAyB,UAAyB,EAAE,QAAgB,EAAE,SAAiB,EAAE,UAA2B,EAAE,QAA4B;QAChJ,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACxB,QAAQ,qBAA0B,CAAC;YACnC,OAAO;SACR;QAED,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,UAAU,CAAC,QAAS,CAAC,EAAE;YAClE,QAAQ,wBAA6B,CAAC;YACtC,OAAO;SACR;QAED,IAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QACrE,IAAI,WAAW,EAAE;YACf,IAAI,WAAW,CAAC,QAAQ,EAAE,KAAK,SAAS,CAAC,QAAQ,EAAE,EAAE;gBACnD,QAAQ,iBAAsB,CAAC;gBAC/B,OAAO;aACR;YAED,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;SAC5D;aAAM;YACL,IAAI,CAAC,cAAc,CAAC,eAAe,CAAC,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;SACtE;QAED,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAC3B,kDAAkD;QAClD,QAAQ,CAAC,CAAC,CAAC,CAAC;IACd,CAAC;IAEO,uCAAmB,GAA3B,UAA4B,UAAyB,EAAE,QAAqB,EAAE,QAA+B;;QAC3G,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACxB,QAAQ,qBAA0B,CAAC;YACnC,OAAO;SACR;QAED,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,UAAU,CAAC,QAAS,CAAC,EAAE;YAClE,QAAQ,wBAA6B,CAAC;YACtC,OAAO;SACR;QAED,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAC7D,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;QAE3B,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,oFAAoF;QAEjG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,EAAE;YACjC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,mBAAmB,EAAE,CAAC;YAC3D,IAAI,CAAC,IAAI,2BAA8B,CAAC;YAExC,IAAI,CAAC,qCAAqC,EAAE,CAAC;;gBAC7C,KAAwB,IAAA,KAAA,sBAAA,IAAI,CAAC,kBAAkB,CAAA,gBAAA,4BAAE;oBAA5C,IAAM,SAAS,WAAA;oBAClB,SAAS,CAAC,qCAAqC,EAAE,CAAC;iBACnD;;;;;;;;;SACF;IACH,CAAC;IAEO,sCAAkB,GAA1B,UAA2B,UAAyB,EAAE,QAA8B;QAClF,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACxB,QAAQ,qBAA0B,CAAC;YACnC,OAAO;SACR;QAED,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,UAAU,CAAC,QAAS,CAAC,EAAE;YAClE,QAAQ,wBAA6B,CAAC;YACtC,OAAO;SACR;QAED,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC;IAClD,CAAC;IAEO,qCAAiB,GAAzB,UAA0B,UAAyB,EAAE,QAA6B;QAAlF,iBAeC;QAdC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,gBAAiB,CAAC,CAAC,CAAC,2CAA2C;QAEpF,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAM,kBAAkB,GAAG,GAAG,GAAG,IAAI,CAAC,sBAAsB,GAAG,IAAK,CAAC,CAAC,kEAAkE;QACxI,IAAI,CAAC,sBAAsB,GAAG,GAAG,CAAC;QAElC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK;YACnD,QAAQ,CAAC,SAAS,EAAE;gBAClB,WAAW,EAAE,KAAK;aACnB,CAAC,CAAC;QACL,CAAC,EAAE,UAAA,MAAM;YACP,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,KAAI,CAAC,WAAW,GAAG,qCAAqC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7F,QAAQ,CAAC,EAAE,QAAQ,iCAAmC,EAAE,MAAM,4CAAyC,EAAE,CAAC,CAAC;QAC7G,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,4CAAwB,GAAhC,UAAiC,UAAyB,EAAE,OAAmC,EAAE,QAAqC;;QAAtI,iBAoFC;QAnFC,IAAM,eAAe,GAA6B,EAAE,CAAC;QACrD,IAAM,QAAQ,GAAgC,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC;QAEnF,IAAM,sBAAsB,GAAmB,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,UAAA,EAAE,IAAI,OAAA,EAAE,CAAC,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,GAAG,EAArB,CAAqB,CAAC,CAAC,CAAC;QACrG,IAAI,sBAAsB,CAAC,IAAI,KAAK,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE;YACtD,2EAA2E;YAC3E,QAAQ,CAAC,EAAE,QAAQ,gCAAkC,EAAE,MAAM,uCAAoC,EAAE,CAAC,CAAC;YACrG,OAAO;SACR;QAED,IAAI,OAAO,GAA+B,UAAU,CAAC;;;gBACnD,KAAiB,IAAA,2BAAA,sBAAA,sBAAsB,CAAA,8DAAA,kGAAE;oBAApC,IAAM,EAAE,mCAAA;oBACX,IAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC5B,IAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACnC,IAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAEnC,IAAM,SAAS,GAAG,KAAI,CAAC,iBAAiB,CAAC,GAAG,CAAE,CAAC;oBAC/C,IAAM,cAAc,GAAG,SAAS,CAAC,sBAAsB,CAAC,GAAG,CAAE,CAAC;oBAC9D,KAAI,CAAC,yBAAyB,CAAC,cAAc,+BAAuC,2CAA2C;wBAC7H,cAAc,CAAC,WAAW,GAAG,sBAAsB,GAAG,SAAS,CAAC,WAAW,GAAG,wBAAwB,CAAC,CAAC;iBAC3G;;;;;;;;;YAED,yGAAyG;YACzG,OAAO,GAAG,UAAU,CAAC;;gBACnB,OAAO,GAAG,SAAS,CAAC;;oBAEpB,KAAiB,IAAA,2BAAA,sBAAA,sBAAsB,CAAA,8DAAA,kGAAE;wBAApC,IAAM,EAAE,mCAAA;wBACX,IAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBAC5B,IAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBACnC,IAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAEnC,IAAM,SAAS,GAAG,KAAI,CAAC,iBAAiB,CAAC,GAAG,CAAE,CAAC;wBAC/C,IAAM,cAAc,GAAG,SAAS,CAAC,sBAAsB,CAAC,GAAG,CAAE,CAAC;wBAC9D,KAAI,CAAC,yBAAyB,CAAC,cAAc,qCAA0C,2CAA2C;4BAChI,cAAc,CAAC,WAAW,GAAG,sBAAsB,GAAG,SAAS,CAAC,WAAW,GAAG,6EAA6E,CAAC,CAAC;wBAE/J,eAAe,CAAC,IAAI,CAAC;4BACnB,GAAG,EAAE,GAAG;4BACR,GAAG,EAAE,GAAG;4BACR,MAAM,kCAA+B;yBACtC,CAAC,CAAC;qBACJ;;;;;;;;;gBACD,sBAAsB,CAAC,KAAK,EAAE,CAAC;gBAE/B,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAChC,CAAC,EAAE,IAAI,CAAC,CAAC;YACT,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC,EAAE,IAAI,CAAC,CAAC;QACT,OAAO,CAAC,KAAK,EAAE,CAAC;gCAEL,EAAE;YACX,IAAM,IAAI,GAAG,EAAE,CAAC,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;YACnC,OAAK,wBAAwB,CAAC,UAAU,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK;gBAC/D,+BACE,GAAG,EAAE,EAAE,CAAC,GAAG,EACX,GAAG,EAAE,EAAE,CAAC,GAAG,IACR,KAAK,EACR;YACJ,CAAC,EAAE,UAAA,MAAM;gBACP,OAAO,CAAC,KAAK,CAAC,MAAI,KAAI,CAAC,WAAW,0CAAqC,IAAI,+BAA0B,MAAM,CAAC,KAAO,CAAC,CAAA;gBAEpH,OAAO;oBACL,GAAG,EAAE,EAAE,CAAC,GAAG;oBACX,GAAG,EAAE,EAAE,CAAC,GAAG;oBACX,MAAM,4CAAyC;iBAChD,CAAC;YACJ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK;gBACX,IAAI,CAAC,OAAO,EAAE;oBACZ,OAAO,CAAC,yDAAyD;iBAClE;gBAED,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE5B,IAAI,sBAAsB,CAAC,IAAI,KAAK,CAAC,EAAE;oBACrC,IAAI,OAAO,EAAE;wBACX,YAAY,CAAC,OAAO,CAAC,CAAC;wBACtB,OAAO,GAAG,SAAS,CAAC;qBACrB;oBACD,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;iBAC/B;YACH,CAAC,CAAC,CAAC;;;;YA/BL,KAAiB,IAAA,KAAA,sBAAA,OAAO,CAAC,GAAG,CAAA,gBAAA;gBAAvB,IAAM,EAAE,WAAA;wBAAF,EAAE;aAgCZ;;;;;;;;;IACH,CAAC;IAEa,4CAAwB,GAAtC,UAAuC,UAAyB,EAAE,EAAoB,EAAE,OAAmC;;;;;gBACnH,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAE/D,IAAI,CAAC,cAAc,EAAE;oBACnB,KAAK,CAAC,mEAAmE,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;oBAC7G,sBAAO,EAAE,MAAM,uCAAoC,EAAE,EAAC;iBACvD;gBAED,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,wBAAmB,EAAE,EAAE,mDAAmD;oBAChH,KAAK,CAAC,+FAA+F,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;oBACzI,sBAAO,EAAE,MAAM,wCAAqC,EAAE,EAAC;iBACxD;gBAED,IAAI,cAAc,CAAC,KAAK,CAAC,eAAe,IAAI,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,cAAa,EAAE;oBAClG,UAAU,GAAG,IAAI,CAAC;oBACtB,IAAI,CAAC,UAAU,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;wBAChD,UAAU,GAAG,KAAK,CAAC;wBACnB,KAAK,CAAC,mIAAmI,EAAE,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAA;qBAC7K;oBAED,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,cAAe,CAAC,mBAAmB,CAAC,UAAU,CAAC,QAAS,CAAC,EAAE;wBAClF,sBAAO,EAAE,MAAM,sCAAmC,EAAE,EAAC;qBACtD;iBACF;gBAED,sBAAO,cAAc,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK;wBAC3D,KAAK,GAAG,IAAA,gDAAiC,EAAC,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;wBACvE,KAAK,CAAC,0CAA0C,EAAE,KAAI,CAAC,WAAW,EAAE,cAAe,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;wBAExG,IAAM,IAAI,GAAkC;4BAC1C,KAAK,EAAE,KAAK,IAAI,SAAS,CAAA,CAAC,CAAC,IAAI,CAAA,CAAC,CAAC,KAAK;yBACvC,CAAC;wBAEF,IAAI,OAAO,CAAC,WAAW,EAAE;4BACvB,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC;4BAC1C,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC;4BACtC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC;4BAC9C,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC;4BAC9C,IAAI,CAAC,OAAO,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC;4BAC5C,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,MAAM,IAAI,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC;yBAC9E;wBACD,IAAI,OAAO,CAAC,YAAY,EAAE;4BACxB,IAAI,CAAC,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC;yBACzC;wBACD,IAAI,OAAO,CAAC,WAAW,EAAE;4BACvB,IAAI,CAAC,IAAI,GAAG,IAAA,kBAAW,EAAC,KAAI,CAAC,IAAI,CAAC,CAAC;yBACpC;wBACD,IAAI,OAAO,CAAC,YAAY,EAAE;4BACxB,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,qBAAqB,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;yBAC5D;wBAED,OAAO,IAAI,CAAC;oBACd,CAAC,EAAE,UAAC,MAAiB;wBACnB,mBAAmB;wBACnB,KAAK,CAAC,sDAAsD,EAAE,KAAI,CAAC,WAAW,EAAE,cAAc,CAAC,WAAW,EAAE,qBAAS,CAAC,MAAM,CAAC,CAAC,CAAC;wBAC/H,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;oBAC5B,CAAC,CAAC,EAAC;;;KACJ;IAEO,4CAAwB,GAAhC,UAAiC,UAAyB,EAAE,YAAyC,EAAE,QAAsC;;QAA7I,iBAwGC;QAvGC,KAAK,CAAC,wCAAwC,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;QAEhG,IAAI,UAAU,0BAAuD,CAAC;QACtE,IAAI,YAAY,CAAC,GAAG,KAAK,SAAS,EAAE,EAAE,yBAAyB;YAC7D,IAAI,UAAU,CAAC,aAAa,KAAK,YAAY,CAAC,GAAG,EAAE;gBACjD,UAAU,oCAA8C,CAAC;gBACzD,YAAY,CAAC,UAAU,CAAC,iBAAkB,CAAC,CAAC;gBAC5C,UAAU,CAAC,aAAa,GAAG,SAAS,CAAC;gBACrC,UAAU,CAAC,iBAAiB,GAAG,SAAS,CAAC;gBAEzC,KAAK,CAAC,sDAAsD,EAAE,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;aACnG;iBAAM;gBACL,UAAU,+BAAyC,CAAC;gBACpD,KAAK,CAAC,kEAAkE,EAAE,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;aAC/G;SACF;QAED,IAAM,eAAe,GAA8B,EAAE,CAAC;QACtD,IAAM,QAAQ,GAAiC,EAAE,eAAe,EAAE,eAAe,EAAE,CAAC;QAEpF,IAAM,sBAAsB,GAAmB,IAAI,GAAG,CACpD,YAAY,CAAC,eAAe;aACzB,GAAG,CAAC,UAAA,cAAc,IAAI,OAAA,cAAc,CAAC,GAAG,GAAG,GAAG,GAAG,cAAc,CAAC,GAAG,EAA7C,CAA6C,CAAC,CACxE,CAAC;QACF,IAAI,sBAAsB,CAAC,IAAI,KAAK,YAAY,CAAC,eAAe,CAAC,MAAM,EAAE;YACvE,2EAA2E;YAC3E,QAAQ,CAAC,EAAE,QAAQ,gCAAkC,EAAE,MAAM,uCAAoC,EAAE,CAAC,CAAC;YACrG,OAAO;SACR;QAED,IAAI,OAAO,GAA+B,UAAU,CAAC;;;gBACnD,KAAiB,IAAA,2BAAA,sBAAA,sBAAsB,CAAA,8DAAA,kGAAE;oBAApC,IAAM,EAAE,mCAAA;oBACX,IAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC5B,IAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACnC,IAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAEnC,IAAM,SAAS,GAAG,KAAI,CAAC,iBAAiB,CAAC,GAAG,CAAE,CAAC;oBAC/C,IAAM,cAAc,GAAG,SAAS,CAAC,sBAAsB,CAAC,GAAG,CAAE,CAAC;oBAC9D,KAAI,CAAC,yBAAyB,CAAC,cAAc,iCAAwC,4CAA4C;wBAC/H,cAAc,CAAC,WAAW,GAAG,sBAAsB,GAAG,SAAS,CAAC,WAAW,GAAG,wBAAwB,CAAC,CAAC;iBAC3G;;;;;;;;;YAED,yGAAyG;YACzG,OAAO,GAAG,UAAU,CAAC;;gBACnB,OAAO,GAAG,SAAS,CAAC;;oBAEpB,KAAiB,IAAA,2BAAA,sBAAA,sBAAsB,CAAA,8DAAA,kGAAE;wBAApC,IAAM,EAAE,mCAAA;wBACX,IAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;wBAC5B,IAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBACnC,IAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAEnC,IAAM,SAAS,GAAG,KAAI,CAAC,iBAAiB,CAAC,GAAG,CAAE,CAAC;wBAC/C,IAAM,cAAc,GAAG,SAAS,CAAC,sBAAsB,CAAC,GAAG,CAAE,CAAC;wBAC9D,KAAI,CAAC,yBAAyB,CAAC,cAAc,uCAA2C,4CAA4C;4BAClI,cAAc,CAAC,WAAW,GAAG,sBAAsB,GAAG,SAAS,CAAC,WAAW,GAAG,6EAA6E,CAAC,CAAC;wBAE/J,eAAe,CAAC,IAAI,CAAC;4BACnB,GAAG,EAAE,GAAG;4BACR,GAAG,EAAE,GAAG;4BACR,MAAM,kCAA+B;yBACtC,CAAC,CAAC;qBACJ;;;;;;;;;gBACD,sBAAsB,CAAC,KAAK,EAAE,CAAC;gBAE/B,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAChC,CAAC,EAAE,IAAI,CAAC,CAAC;YACT,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC,EAAE,IAAI,CAAC,CAAC;QACT,OAAO,CAAC,KAAK,EAAE,CAAC;gCAEL,IAAI;YACb,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;YACvC,OAAK,yBAAyB,CAAC,UAAU,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK;gBACrE,+BACE,GAAG,EAAE,IAAI,CAAC,GAAG,EACb,GAAG,EAAE,IAAI,CAAC,GAAG,IACV,KAAK,EACR;YACJ,CAAC,EAAE,UAAA,MAAM;gBACP,OAAO,CAAC,KAAK,CAAC,MAAI,KAAI,CAAC,WAAW,2CAAsC,IAAI,+BAA0B,MAAM,CAAC,KAAO,CAAC,CAAA;gBAErH,OAAO;oBACL,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,MAAM,4CAAyC;iBAChD,CAAC;YACJ,CAAC,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK;gBACX,IAAI,CAAC,OAAO,EAAE;oBACZ,OAAO,CAAC,yDAAyD;iBAClE;gBAED,sBAAsB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACpC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAE5B,IAAI,sBAAsB,CAAC,IAAI,KAAK,CAAC,EAAE,EAAE,2CAA2C;oBAClF,IAAI,OAAO,EAAE;wBACX,YAAY,CAAC,OAAO,CAAC,CAAC;wBACtB,OAAO,GAAG,SAAS,CAAC;qBACrB;oBACD,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;iBAC/B;YACH,CAAC,CAAC,CAAA;;;;YA/BJ,KAAmB,IAAA,KAAA,sBAAA,YAAY,CAAC,eAAe,CAAA,gBAAA;gBAA1C,IAAM,IAAI,WAAA;wBAAJ,IAAI;aAgCd;;;;;;;;;IACH,CAAC;IAEa,6CAAyB,GAAvC,UAAwC,UAAyB,EAAE,IAAyB,EAAE,UAA6B;;;;;gBACnH,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC/D,UAAU,GAAwB,SAAS,CAAC;gBAEhD,IAAI,CAAC,cAAc,EAAE;oBACnB,KAAK,CAAC,mEAAmE,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;oBACjH,sBAAO,EAAE,MAAM,uCAAoC,EAAE,EAAC;iBACvD;gBAED,IAAI,UAAU,iCAA2C,EAAE;oBACzD,sBAAO,EAAE,MAAM,uCAAoC,EAAE,EAAC;iBACvD;gBAED,IAAI,IAAI,CAAC,EAAE,IAAI,SAAS,EAAE,EAAE,0CAA0C;oBAC9D,oBAAoB,GAAG,UAAU,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;oBAElF,+GAA+G;oBAC/G,0DAA0D;oBAC1D,IAAI,oBAAoB,IAAI,IAAI,CAAC,EAAE,EAAE;wBACnC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,mBAAc,EAAE,EAAE,qDAAqD;4BAC7G,KAAK,CAAC,sGAAsG,EAC1G,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,EAAE,CAAA,CAAC,CAAC,UAAU,CAAA,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;4BAC1E,sBAAO,EAAE,MAAM,yCAAsC,EAAE,EAAC;yBACzD;wBAED,IAAI,cAAc,CAAC,KAAK,CAAC,eAAe,IAAI,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,gBAAe,EAAE;4BACpG,UAAU,GAAG,IAAI,CAAC;4BACtB,IAAI,CAAC,UAAU,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;gCAChD,UAAU,GAAG,KAAK,CAAC;gCACnB,KAAK,CAAC,kIAAkI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;6BAChL;4BAED,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,cAAe,CAAC,mBAAmB,CAAC,UAAU,CAAC,QAAS,CAAC,EAAE;gCAClF,sBAAO,EAAE,MAAM,sCAAmC,EAAE,EAAC;6BACtD;yBACF;wBAED,yGAAyG;wBACzG,IAAI,IAAI,CAAC,EAAE,EAAE;4BACX,UAAU,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;4BACxD,cAAc,CAAC,SAAS,EAAE,CAAC;4BAC3B,UAAU,GAAG,IAAI,CAAC;4BAClB,KAAK,CAAC,wDAAwD,EAAE,UAAU,CAAC,aAAa,EAAE,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;yBACzI;6BAAM;4BACL,cAAc,CAAC,WAAW,EAAE,CAAC;4BAC7B,UAAU,CAAC,yBAAyB,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;4BACzD,UAAU,GAAG,KAAK,CAAC;4BACnB,KAAK,CAAC,0DAA0D,EAAE,UAAU,CAAC,aAAa,EAAE,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;yBAC3I;qBACF;oBACD,+CAA+C;iBAChD;gBAED,IAAI,IAAI,CAAC,KAAK,IAAI,SAAS,EAAE;oBAC3B,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,yBAAoB,EAAE,EAAE,oDAAoD;wBAClH,KAAK,CAAC,6FAA6F,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;wBAC3I,sBAAO,EAAE,MAAM,uCAAoC,EAAE,EAAC;qBACvD;oBAED,IAAI,cAAc,CAAC,KAAK,CAAC,eAAe,IAAI,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,eAAc,EAAE;wBACnG,UAAU,GAAG,IAAI,CAAC;wBACtB,IAAI,CAAC,UAAU,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;4BAChD,UAAU,GAAG,KAAK,CAAC;4BACnB,KAAK,CAAC,iIAAiI,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;yBAC/K;wBAED,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,cAAe,CAAC,mBAAmB,CAAC,UAAU,CAAC,QAAS,CAAC,EAAE;4BAClF,sBAAO,EAAE,MAAM,sCAAmC,EAAE,EAAC;yBACtD;qBACF;oBAED,IAAI,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,qCAAgC,IAAI,cAAc,CAAC,8BAA8B,EAAE;wBAIpH,UAAU,SAAA,CAAC;wBACf,IAAI;4BACF,UAAU,GAAG,cAAc,CAAC,8BAA8B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;yBAC3E;wBAAC,OAAO,KAAK,EAAE;4BACd,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,WAAW,GAAG,iFAAiF,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;4BACvI,UAAU,GAAG,KAAK,CAAC;yBACpB;wBAED,IAAI,CAAC,UAAU,EAAE;4BACf,sBAAO,EAAE,MAAM,yCAAsC,EAAE,EAAC;yBACzD;qBACF;oBAED,IAAI,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,wBAAmB,IAAI,UAAU,sCAAgD,EAAE;wBACxH,KAAK,CAAC,8GAA8G,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;wBAC5J,sBAAO,EAAE,MAAM,uCAAoC,EAAE,EAAC;qBACvD;oBAED,sBAAO,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,IAAI,CAAC,UAAA,KAAK;4BACvE,KAAK,CAAC,8CAA8C,EAAE,KAAI,CAAC,WAAW,EAAE,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;4BAChH,OAAO;gCACL,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,KAAK,CAAA,CAAC,CAAC,IAAA,gDAAiC,EAAC,KAAK,EAAE,cAAc,CAAC,KAAK,CAAC,CAAA,CAAC,CAAC,SAAS;gCAEjG,EAAE,EAAE,UAAU;6BACf,CAAC;wBACJ,CAAC,EAAE,UAAC,MAAiB;4BACnB,mBAAmB;4BACnB,KAAK,CAAC,sDAAsD,EAAE,KAAI,CAAC,WAAW,EAAE,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,qBAAS,CAAC,MAAM,CAAC,CAAC,CAAC;4BAE3I,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;wBAC5B,CAAC,CAAC,EAAC;iBACJ;qBAAM;oBACL,sBAAO,EAAE,EAAE,EAAE,UAAU,EAAE,EAAC;iBAC3B;;;;KACF;IAEO,kCAAc,GAAtB,UAAuB,IAAqB,EAAE,QAAiC;;QAC7E,IAAI,IAAI,CAAC,eAAe,CAAC,wBAA8B,EAAE;YACvD,IAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,iGAAiG;YAEvH,IAAI,SAAS,GAA0B,SAAS,CAAC;YACjD,IAAI,UAAU,GAAiC,SAAS,CAAC;YACzD,IAAI,GAAG,EAAE;gBACP,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBACxC,IAAI,SAAS,IAAI,SAAS,CAAC,sBAAsB,EAAE;oBACjD,UAAU,GAAG,SAAS,CAAC,sBAAsB,CAAC;iBAC/C;aACF;iBAAM,IAAI,IAAI,CAAC,sBAAsB,EAAE,EAAE,4DAA4D;gBACpG,SAAS,GAAG,IAAI,CAAC;gBACjB,UAAU,GAAG,IAAI,CAAC,sBAAsB,CAAC;aAC1C;YAED,IAAI,CAAC,UAAU,EAAE;gBACf,KAAK,CAAC,4EAA4E,CAAC,CAAC;gBACpF,QAAQ,CAAC,EAAE,QAAQ,qBAAuB,EAAE,MAAM,sCAAmC,EAAE,CAAC,CAAC;gBACzF,OAAO;aACR;YAED,UAAU,CAAC,qBAAqB,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,EAAE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC;iBAC7G,IAAI,CAAC,UAAA,MAAM;gBACV,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC9B,CAAC,EAAE,UAAC,MAAiB;gBACnB,QAAQ,CAAC,EAAE,QAAQ,wBAA0B,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YACnE,CAAC,CAAC,CAAC;YAEL,OAAO;SACR;QAED,KAAK,CAAC,oDAAoD,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,MAAA,IAAI,CAAC,cAAc,0CAAE,QAAQ,CAAC,CAAC;QACnH,QAAQ,CAAC,EAAE,QAAQ,qBAAuB,EAAE,MAAM,sCAAmC,EAAC,CAAC,CAAC;IAC1F,CAAC;IAEO,6CAAyB,GAAjC,UAAkC,UAAyB;;QACzD,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC/B,IAAI,CAAC,sBAAsB,CAAC,qBAAqB,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;SACzE;;YAED,KAAoB,IAAA,KAAA,sBAAA,UAAU,CAAC,mBAAmB,EAAE,CAAA,gBAAA,4BAAE;gBAAjD,IAAM,KAAK,WAAA;gBACd,IAAM,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC7B,IAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjC,IAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAEjC,IAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACzD,IAAI,cAAc,EAAE;oBAClB,cAAc,CAAC,WAAW,EAAE,CAAC;iBAC9B;aACF;;;;;;;;;QACD,UAAU,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IAEO,yDAAqC,GAA7C,UAA8C,OAAgB;QAC5D,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,OAAO,KAAK,IAAI,CAAC,cAAc,EAAE;YAChE,sDAAsD;YACtD,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;SACjC;aAAM,IAAI,OAAO,CAAC,gBAAgB,IAAI,OAAO,KAAK,IAAI,CAAC,cAAc,EAAE;YACtE,sDAAsD;YACtD,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE;gBACrC,IAAI,CAAC,cAAc,CAAC,gBAAgB,GAAG,KAAK,CAAC;aAC9C;YAED,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;SAC/B;QAED,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,IAAI,mEAAmD,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;SACnF;aAAM;YACL,IAAI,CAAC,0BAA0B,EAAE,CAAC;SACnC;IACH,CAAC;IAEO,mDAA+B,GAAvC,UAAwC,SAAoB,EAAE,OAAgB,EAAE,MAAmC;QACjH,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,qCAAqC;YACvD,IAAI,CAAC,IAAI,sHAAyD,MAAM,KAAE,OAAO,EAAE,OAAO,IAAG,CAAC;SAC/F;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACjB,OAAO,CAAC,8EAA8E;aACvF;YAED,IAAI,SAAS,CAAC,GAAG,IAAI,SAAS,IAAI,MAAM,CAAC,cAAc,CAAC,GAAG,IAAI,SAAS,EAAE;gBACxE,KAAK,CAAC,mEAAmE,EAAE,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;gBACrI,OAAO;aACR;YAED,IAAI,MAAM,CAAC,OAAO,IAAI,SAAS,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,IAAK,MAAM,CAAC,OAA0C,CAAC,eAAe,EAAE;gBAC3I,KAAK,CAAC,wEAAwE,EAAE,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;gBAC1I,OAAO;aACR;YAED,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,wBAAuB,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ;mBAC5E,MAAM,CAAC,cAAc,CAAC,IAAI,KAAK,+BAAc,CAAC,uBAAuB,CAAC,IAAI,CAAC,2DAA2D;mBACtI,MAAM,CAAC,cAAc,CAAC,IAAI,KAAK,+BAAc,CAAC,WAAW,CAAC,IAAI,CAAC,4DAA4D;aAC/H,EAAE;gBACD,sGAAsG;gBACtG,uGAAuG;gBACvG,gEAAgE;gBAChE,OAAO;aACR;YAED,IAAM,MAAI,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC;YACxC,IAAM,iBAAiB,GAAG,MAAI,KAAK,+BAAc,CAAC,WAAW,CAAC,IAAI,IAAI,MAAI,KAAK,+BAAc,CAAC,uBAAuB,CAAC,IAAI;mBACrH,MAAI,KAAK,+BAAc,CAAC,cAAc,CAAC,IAAI,IAAI,MAAI,KAAK,+BAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC;YAEpG,IAAM,KAAK,GAAG,IAAA,gDAAiC,EAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAC9F,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;SAC5H;IACH,CAAC;IAEO,6CAAyB,GAAjC,UAAkC,cAA8B,EAAE,IAA+B,EAAE,OAAe;QAChH,IAAI,CAAC,2BAA2B,CAAC;YAC/B,cAAc,EAAE,cAAc;YAC9B,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,OAAO;YAChB,eAAe,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC;YAC7C,KAAK,EAAE,IAAI,KAAK,EAAE,CAAC,KAAK;SACzB,CAAC,CAAC;IACL,CAAC;IAEO,+CAA2B,GAAnC,UAAoC,OAA8B;;QAChE,OAAO,CAAC,eAAe,+BAAI,IAAI,CAAC,WAAW,uBAAK,OAAO,CAAC,eAAe,SAAC,CAAC;QAEzE,IAAM,OAAO,GAAG,IAAI,CAAC,IAAI,wDAA6C,OAAO,CAAC,CAAC;QAC/E,IAAI,CAAC,OAAO,EAAE;YACZ,IAAI,OAAO,GAAG,MAAI,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,UAAK,OAAO,CAAC,OAAS,CAAA;YAEzE,IAAI,OAAO,CAAC,IAAI,wCAA4C;mBACvD,OAAO,CAAC,IAAI,sCAA2C,IAAG,OAAO,CAAC,IAAI,wCAA4C,EAAE;gBACvH,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;aACxB;iBAAM;gBACL,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACvB;YACD,KAAK,CAAC,qDAAqD,EAAE,IAAI,CAAC,WAAW,EAAE,MAAA,OAAO,CAAC,KAAK,mCAAI,SAAS,CAAC,CAAA;SAC3G;IACH,CAAC;IAEO,6CAAyB,GAAjC,UAAkC,OAAgB;QAChD,OAAO,CAAC,EAAE,mEAAiD,IAAI,CAAC,qCAAqC,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAC3H,OAAO,CAAC,EAAE,sDAA0C,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QACpH,OAAO,CAAC,EAAE,wDAA2C,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACpG,CAAC;IAEO,qCAAiB,GAAzB,UAA0B,cAAyB;;QAAnD,iBAiBC;;YAhBC,KAAsB,IAAA,mBAAA,sBAAA,cAAc,CAAA,8CAAA,0EAAE;gBAAjC,IAAM,OAAO,2BAAA;gBAChB,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC;aACzC;;;;;;;;;QAED,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,KAAK,EAAE,CAAC;QAEvC,eAAe;QACf,IAAI;aACD,UAAU,CAAC,iBAAO,CAAC,oBAAoB,CAAE;aACzC,iBAAiB,CAAC,+BAAc,CAAC,QAAQ,CAAE;aAC3C,EAAE,kBAA+B,UAAC,KAA0B,EAAE,QAAmC;YAChG,IAAI,KAAK,EAAE;gBACT,IAAM,MAAM,GAAG,IAAI,CAAC;gBACpB,KAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;aAC9C;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAEc,0BAAgB,GAA/B;QACE,IAAM,KAAK,GAAG,sCAAsC,CAAC;QACrD,IAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;QACzB,IAAI,OAAO,GAAG,EAAE,CAAC;QAEjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAA;YAC7C,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;SAChC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,qHAAqH;IACvG,mBAAS,GAAvB,UAAwB,SAAoB;QAC1C,IAAM,IAAI,GAAwB;YAChC,WAAW,EAAE,SAAS,CAAC,WAAW;YAClC,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,iBAAiB,EAAE,SAAS,CAAC,cAAc,CAAA,CAAC,CAAC,SAAS,CAAC,cAAc,CAAC,QAAQ,CAAA,CAAC,CAAC,SAAS;YACzF,QAAQ,EAAE,SAAS,CAAC,QAAQ;YAE5B,QAAQ,EAAE,EAAE;SACb,CAAC;QAEF,IAAM,cAAc,GAAmC,EAAE,CAAC;QAC1D,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAE9B,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAA,OAAO;YAChC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAO,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;YAE/C,IAAM,0BAA0B,GAAgB,EAAE,CAAC;YACnD,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,UAAA,aAAa;gBAC1C,0BAA0B,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC,CAAC;YAChE,CAAC,CAAC,CAAC;YACH,IAAI,0BAA0B,CAAC,MAAM,GAAG,CAAC,EAAE;gBACzC,cAAc,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,GAAG,0BAA0B,CAAC;gBACpE,iBAAiB,GAAG,IAAI,CAAC;aAC1B;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,iBAAiB,EAAE;YACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;SACtC;QAED,IAAM,WAAW,GAAkC,EAAE,CAAC;QAEtD,mBAAmB;QACnB,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,UAAC,OAA0B;YACtE,WAAW,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;gBACvC,QAAQ,EAAE,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,UAAU,CAAC;aAC5D,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,mHAAmH;QACnH,SAAS,CAAC,qBAAqB,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC,UAAC,EAAgB;gBAAhB,KAAA,0BAAgB,EAAf,EAAE,QAAA,EAAE,UAAU,QAAA;YACzG,WAAW,CAAC,IAAI,CAAC;gBACf,IAAI,EAAE,EAAE;gBACR,QAAQ,EAAE,SAAS,CAAC,mBAAmB,CAAC,UAAU,CAAC;aACpD,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;SAChC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEa,qBAAW,GAAzB,UAA0B,IAAyB;;QACjD,IAAM,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAE7D,SAAS,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QACrD,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAEnC,IAAM,QAAQ,GAAc,EAAE,CAAC;QAC/B,IAAM,WAAW,GAA+B,EAAE,CAAC;QAEnD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAA,UAAU;YAC9B,IAAM,OAAO,GAAG,iBAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAEhD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,GAAG,OAAO,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,cAAc,EAAE;oCACV,SAAS,EAAE,kBAAkB;gBACxC,IAAM,cAAc,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;gBAE9C,IAAI,CAAC,cAAc,EAAE;;iBAEpB;gBAED,kBAAkB,CAAC,OAAO,CAAC,UAAA,gBAAgB;oBACzC,IAAM,aAAa,GAAG,WAAW,CAAC,gBAAgB,CAAC,CAAC;oBAEpD,IAAI,aAAa,EAAE;wBACjB,cAAc,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;qBAChD;gBACH,CAAC,CAAC,CAAC;;;gBAbL,KAAgD,IAAA,KAAA,sBAAA,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA,gBAAA;oBAAxE,IAAA,KAAA,gCAAiC,EAA/B,SAAS,QAAA,EAAE,kBAAkB,QAAA;4BAA7B,SAAS,EAAE,kBAAkB;iBAczC;;;;;;;;;SACF;QAED,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,iEAAiE;YACvF,SAAS,CAAC,qBAAqB,GAAG,EAAE,CAAC;YAErC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAA,oBAAoB;gBAC3C,SAAS,CAAC,qBAAsB,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;YAC3I,CAAC,CAAC,CAAC;SACJ;QAED,SAAS,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAEtC,OAAO,SAAS,CAAC;IACnB,CAAC;IAEa,8BAAoB,GAAlC,UAAmC,QAAoB;QACrD,iCAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACjC,6BAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC/B,qCAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAEc,6BAAmB,GAAlC,UAAmC,UAAgC;QACjE,IAAM,UAAU,GAAyB,EAAE,CAAC;QAE5C,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,UAAC,EAAe;gBAAf,KAAA,0BAAe,EAAd,IAAI,QAAA,EAAE,OAAO,QAAA;YAChD,IAAI,CAAC,OAAO,EAAE;gBACZ,OAAO;aACR;YAED,UAAU,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC;IACpB,CAAC;IAEc,+BAAqB,GAApC,UAAqC,oBAA0C,EAAE,WAAuC;QACtH,IAAM,oBAAoB,GAAyB,EAAE,CAAC;QAEtD,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,OAAO,CAAC,UAAC,EAAiB;gBAAjB,KAAA,0BAAiB,EAAhB,IAAI,QAAA,EAAE,SAAS,QAAA;YAC5D,IAAM,OAAO,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC;YACvC,IAAI,OAAO,EAAE;gBACX,oBAAoB,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;aACtC;QACH,CAAC,CAAC,CAAC;QAEH,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAEc,yBAAe,GAA9B,UAA+B,IAAiB;;QAC9C,IAAI,iBAAiB,GAAyB,SAAS,CAAC;QACxD,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,aAAa,GAAuB,SAAS,CAAC;QAElD,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,IAAM,OAAO,GAAmC,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAC,CAAC,IAAI,CAAC,IAAI,CAAA,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAE1G,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBACrB,aAAa,GAAG,IAAI,CAAA;gBAEpB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACrB,IAAI,OAAO,CAAC,IAAI,EAAE;oBAChB,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBACzC;aACF;iBAAM,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;gBACjC,WAAW,GAAG,IAAI,CAAC;gBACnB,aAAa,GAAG,SAAS,CAAC;gBAE1B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC1B,IAAI,OAAO,CAAC,IAAI,EAAE;oBAChB,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iBACzC;aACF;iBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE;gBAC7B,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAExC,IAAM,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,qBAAqB;gBAElE,IAAM,OAAO,GAAG,aAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,wDAAwD;gBACzF,IAAI,OAAO,EAAE;oBACX,aAAa,GAAG,OAAO,KAAK,CAAC,CAAA,CAAC,CAAC,SAAS,CAAA,CAAC,CAAC,IAAI,CAAC,CAAC,+FAA+F;iBAChJ;qBAAM;oBACL,aAAa,GAAG,IAAI,CAAC,CAAC,wDAAwD;iBAC/E;aACF;iBAAM,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE;gBAC3B,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAExC,IAAI,mBAAmB,GAAG,KAAK,CAAC,CAAC,4EAA4E;;oBAE7G,KAAoB,IAAA,YAAA,sBAAA,OAAO,CAAA,gCAAA,qDAAE;wBAAxB,IAAM,KAAK,oBAAA;wBACd,IAAM,OAAO,GAAG,aAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBAChC,IAAI,OAAO,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,EAAE;4BAClC,mBAAmB,GAAG,IAAI,CAAC;4BAC3B,MAAM;yBACP;qBACF;;;;;;;;;gBAED,IAAI,mBAAmB,EAAE;oBACvB,aAAa,GAAG,IAAI,CAAC;iBACtB;qBAAM;oBACL,aAAa,GAAG,SAAS,CAAC;iBAC3B;aACF;SACF;QAED,OAAO;YACL,iBAAiB,EAAE,iBAAiB;YACpC,wBAAwB,EAAE,iBAAiB;YAC3C,kBAAkB,EAAE,WAAW;YAC/B,aAAa,EAAE,aAAa;SAC7B,CAAC;IACJ,CAAC;IAnwDD;;OAEG;IACH,aAAa;IACN,oBAAU,GAAG,UAAU,CAAC;IAiwDjC,gBAAC;CAAA,AAvwDD,CAA+B,qBAAY,GAuwD1C;AAvwDY,8BAAS"}