@vendasta/marketplace-apps 3.10.0 → 3.13.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.
Files changed (53) hide show
  1. package/esm2020/lib/_internal/enums/app-price.enum.mjs +8 -1
  2. package/esm2020/lib/_internal/enums/fields.enum.mjs +16 -0
  3. package/esm2020/lib/_internal/enums/index.mjs +3 -2
  4. package/esm2020/lib/_internal/index.mjs +3 -1
  5. package/esm2020/lib/_internal/interfaces/app-price.interface.mjs +1 -1
  6. package/esm2020/lib/_internal/interfaces/fields.interface.mjs +2 -0
  7. package/esm2020/lib/_internal/interfaces/index.mjs +1 -1
  8. package/esm2020/lib/_internal/interfaces/marketplace-app.interface.mjs +1 -1
  9. package/esm2020/lib/_internal/interfaces/paging.interface.mjs +8 -0
  10. package/esm2020/lib/_internal/objects/app-price.mjs +48 -1
  11. package/esm2020/lib/_internal/objects/fields.mjs +396 -0
  12. package/esm2020/lib/_internal/objects/index.mjs +5 -3
  13. package/esm2020/lib/_internal/objects/marketplace-app.mjs +56 -1
  14. package/esm2020/lib/_internal/objects/paging.mjs +62 -0
  15. package/esm2020/lib/_internal/product-auxiliary-field-data.api.service.mjs +43 -0
  16. package/esm2020/lib/_internal/product-auxiliary-field-schema.api.service.mjs +52 -0
  17. package/esm2020/v1/_internal/interfaces/api.interface.mjs +1 -1
  18. package/esm2020/v1/_internal/interfaces/index.mjs +1 -1
  19. package/esm2020/v1/_internal/objects/api.mjs +70 -1
  20. package/esm2020/v1/_internal/objects/index.mjs +2 -2
  21. package/esm2020/v1/_internal/vendor.api.service.mjs +7 -2
  22. package/esm2020/v1/vendor.service.mjs +9 -2
  23. package/fesm2015/vendasta-marketplace-apps-v1.mjs +82 -1
  24. package/fesm2015/vendasta-marketplace-apps-v1.mjs.map +1 -1
  25. package/fesm2015/vendasta-marketplace-apps.mjs +670 -19
  26. package/fesm2015/vendasta-marketplace-apps.mjs.map +1 -1
  27. package/fesm2020/vendasta-marketplace-apps-v1.mjs +82 -1
  28. package/fesm2020/vendasta-marketplace-apps-v1.mjs.map +1 -1
  29. package/fesm2020/vendasta-marketplace-apps.mjs +670 -19
  30. package/fesm2020/vendasta-marketplace-apps.mjs.map +1 -1
  31. package/lib/_internal/enums/app-price.enum.d.ts +6 -0
  32. package/lib/_internal/enums/fields.enum.d.ts +8 -0
  33. package/lib/_internal/enums/index.d.ts +2 -1
  34. package/lib/_internal/index.d.ts +2 -0
  35. package/lib/_internal/interfaces/app-price.interface.d.ts +7 -0
  36. package/lib/_internal/interfaces/fields.interface.d.ts +65 -0
  37. package/lib/_internal/interfaces/index.d.ts +4 -2
  38. package/lib/_internal/interfaces/marketplace-app.interface.d.ts +9 -0
  39. package/lib/_internal/interfaces/paging.interface.d.ts +9 -0
  40. package/lib/_internal/objects/app-price.d.ts +10 -0
  41. package/lib/_internal/objects/fields.d.ts +106 -0
  42. package/lib/_internal/objects/index.d.ts +4 -2
  43. package/lib/_internal/objects/marketplace-app.d.ts +15 -0
  44. package/lib/_internal/objects/paging.d.ts +17 -0
  45. package/lib/_internal/product-auxiliary-field-data.api.service.d.ts +16 -0
  46. package/lib/_internal/product-auxiliary-field-schema.api.service.d.ts +18 -0
  47. package/package.json +1 -1
  48. package/v1/_internal/interfaces/api.interface.d.ts +11 -0
  49. package/v1/_internal/interfaces/index.d.ts +1 -1
  50. package/v1/_internal/objects/api.d.ts +20 -0
  51. package/v1/_internal/objects/index.d.ts +1 -1
  52. package/v1/_internal/vendor.api.service.d.ts +3 -2
  53. package/v1/vendor.service.d.ts +1 -0
@@ -4,6 +4,13 @@
4
4
  //
5
5
  // Enums.
6
6
  // *********************************
7
+ export var DiscountType;
8
+ (function (DiscountType) {
9
+ DiscountType[DiscountType["DISCOUNT_TYPE_FIXED_AMOUNT"] = 0] = "DISCOUNT_TYPE_FIXED_AMOUNT";
10
+ DiscountType[DiscountType["DISCOUNT_TYPE_PERCENT_AMOUNT"] = 1] = "DISCOUNT_TYPE_PERCENT_AMOUNT";
11
+ DiscountType[DiscountType["DISCOUNT_TYPE_FIXED_NUMBER_OF_UNITS"] = 2] = "DISCOUNT_TYPE_FIXED_NUMBER_OF_UNITS";
12
+ DiscountType[DiscountType["DISCOUNT_TYPE_FIXED_AMOUNT_PER_UNIT"] = 3] = "DISCOUNT_TYPE_FIXED_AMOUNT_PER_UNIT";
13
+ })(DiscountType || (DiscountType = {}));
7
14
  export var PriceDisplayOverride;
8
15
  (function (PriceDisplayOverride) {
9
16
  PriceDisplayOverride[PriceDisplayOverride["PRICE_DISPLAY_OVERRIDE_NONE"] = 0] = "PRICE_DISPLAY_OVERRIDE_NONE";
@@ -16,4 +23,4 @@ export var UnitBillingFrequency;
16
23
  UnitBillingFrequency[UnitBillingFrequency["UNIT_BILLING_FREQUENCY_YEARLY"] = 2] = "UNIT_BILLING_FREQUENCY_YEARLY";
17
24
  UnitBillingFrequency[UnitBillingFrequency["UNIT_BILLING_FREQUENCY_ONETIME"] = 3] = "UNIT_BILLING_FREQUENCY_ONETIME";
18
25
  })(UnitBillingFrequency || (UnitBillingFrequency = {}));
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByaWNlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9lbnVtcy9hcHAtcHJpY2UuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsU0FBUztBQUNULG9DQUFvQztBQUVwQyxNQUFNLENBQU4sSUFBWSxvQkFHWDtBQUhELFdBQVksb0JBQW9CO0lBQzVCLDZHQUErQixDQUFBO0lBQy9CLCtIQUF3QyxDQUFBO0FBQzVDLENBQUMsRUFIVyxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBRy9CO0FBRUQsTUFBTSxDQUFOLElBQVksb0JBS1g7QUFMRCxXQUFZLG9CQUFvQjtJQUM1QixtSEFBa0MsQ0FBQTtJQUNsQyxtSEFBa0MsQ0FBQTtJQUNsQyxpSEFBaUMsQ0FBQTtJQUNqQyxtSEFBa0MsQ0FBQTtBQUN0QyxDQUFDLEVBTFcsb0JBQW9CLEtBQXBCLG9CQUFvQixRQUsvQiIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gRW51bXMuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuZXhwb3J0IGVudW0gUHJpY2VEaXNwbGF5T3ZlcnJpZGUge1xuICAgIFBSSUNFX0RJU1BMQVlfT1ZFUlJJREVfTk9ORSA9IDAsXG4gICAgUFJJQ0VfRElTUExBWV9PVkVSUklERV9DT05UQUNUX1NBTEVTID0gMSxcbn1cblxuZXhwb3J0IGVudW0gVW5pdEJpbGxpbmdGcmVxdWVuY3kge1xuICAgIFVOSVRfQklMTElOR19GUkVRVUVOQ1lfSU5WQUxJRCA9IDAsXG4gICAgVU5JVF9CSUxMSU5HX0ZSRVFVRU5DWV9NT05USExZID0gMSxcbiAgICBVTklUX0JJTExJTkdfRlJFUVVFTkNZX1lFQVJMWSA9IDIsXG4gICAgVU5JVF9CSUxMSU5HX0ZSRVFVRU5DWV9PTkVUSU1FID0gMyxcbn1cbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByaWNlLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9lbnVtcy9hcHAtcHJpY2UuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsU0FBUztBQUNULG9DQUFvQztBQUVwQyxNQUFNLENBQU4sSUFBWSxZQUtYO0FBTEQsV0FBWSxZQUFZO0lBQ3BCLDJGQUE4QixDQUFBO0lBQzlCLCtGQUFnQyxDQUFBO0lBQ2hDLDZHQUF1QyxDQUFBO0lBQ3ZDLDZHQUF1QyxDQUFBO0FBQzNDLENBQUMsRUFMVyxZQUFZLEtBQVosWUFBWSxRQUt2QjtBQUVELE1BQU0sQ0FBTixJQUFZLG9CQUdYO0FBSEQsV0FBWSxvQkFBb0I7SUFDNUIsNkdBQStCLENBQUE7SUFDL0IsK0hBQXdDLENBQUE7QUFDNUMsQ0FBQyxFQUhXLG9CQUFvQixLQUFwQixvQkFBb0IsUUFHL0I7QUFFRCxNQUFNLENBQU4sSUFBWSxvQkFLWDtBQUxELFdBQVksb0JBQW9CO0lBQzVCLG1IQUFrQyxDQUFBO0lBQ2xDLG1IQUFrQyxDQUFBO0lBQ2xDLGlIQUFpQyxDQUFBO0lBQ2pDLG1IQUFrQyxDQUFBO0FBQ3RDLENBQUMsRUFMVyxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBSy9CIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBFbnVtcy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5leHBvcnQgZW51bSBEaXNjb3VudFR5cGUge1xuICAgIERJU0NPVU5UX1RZUEVfRklYRURfQU1PVU5UID0gMCxcbiAgICBESVNDT1VOVF9UWVBFX1BFUkNFTlRfQU1PVU5UID0gMSxcbiAgICBESVNDT1VOVF9UWVBFX0ZJWEVEX05VTUJFUl9PRl9VTklUUyA9IDIsXG4gICAgRElTQ09VTlRfVFlQRV9GSVhFRF9BTU9VTlRfUEVSX1VOSVQgPSAzLFxufVxuXG5leHBvcnQgZW51bSBQcmljZURpc3BsYXlPdmVycmlkZSB7XG4gICAgUFJJQ0VfRElTUExBWV9PVkVSUklERV9OT05FID0gMCxcbiAgICBQUklDRV9ESVNQTEFZX09WRVJSSURFX0NPTlRBQ1RfU0FMRVMgPSAxLFxufVxuXG5leHBvcnQgZW51bSBVbml0QmlsbGluZ0ZyZXF1ZW5jeSB7XG4gICAgVU5JVF9CSUxMSU5HX0ZSRVFVRU5DWV9JTlZBTElEID0gMCxcbiAgICBVTklUX0JJTExJTkdfRlJFUVVFTkNZX01PTlRITFkgPSAxLFxuICAgIFVOSVRfQklMTElOR19GUkVRVUVOQ1lfWUVBUkxZID0gMixcbiAgICBVTklUX0JJTExJTkdfRlJFUVVFTkNZX09ORVRJTUUgPSAzLFxufVxuIl19
@@ -0,0 +1,16 @@
1
+ // *********************************
2
+ // Code generated by sdkgen
3
+ // DO NOT EDIT!.
4
+ //
5
+ // Enums.
6
+ // *********************************
7
+ export var AuxiliaryDataFieldType;
8
+ (function (AuxiliaryDataFieldType) {
9
+ AuxiliaryDataFieldType[AuxiliaryDataFieldType["AUXILIARY_DATA_FIELD_TYPE_INVALID"] = 0] = "AUXILIARY_DATA_FIELD_TYPE_INVALID";
10
+ AuxiliaryDataFieldType[AuxiliaryDataFieldType["AUXILIARY_DATA_FIELD_TYPE_STRING"] = 1] = "AUXILIARY_DATA_FIELD_TYPE_STRING";
11
+ AuxiliaryDataFieldType[AuxiliaryDataFieldType["AUXILIARY_DATA_FIELD_TYPE_INTEGER"] = 2] = "AUXILIARY_DATA_FIELD_TYPE_INTEGER";
12
+ AuxiliaryDataFieldType[AuxiliaryDataFieldType["AUXILIARY_DATA_FIELD_TYPE_DATE"] = 3] = "AUXILIARY_DATA_FIELD_TYPE_DATE";
13
+ AuxiliaryDataFieldType[AuxiliaryDataFieldType["AUXILIARY_DATA_FIELD_TYPE_DROPDOWN"] = 4] = "AUXILIARY_DATA_FIELD_TYPE_DROPDOWN";
14
+ AuxiliaryDataFieldType[AuxiliaryDataFieldType["AUXILIARY_DATA_FIELD_TYPE_CURRENCY"] = 5] = "AUXILIARY_DATA_FIELD_TYPE_CURRENCY";
15
+ })(AuxiliaryDataFieldType || (AuxiliaryDataFieldType = {}));
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9lbnVtcy9maWVsZHMuZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsU0FBUztBQUNULG9DQUFvQztBQUVwQyxNQUFNLENBQU4sSUFBWSxzQkFPWDtBQVBELFdBQVksc0JBQXNCO0lBQzlCLDZIQUFxQyxDQUFBO0lBQ3JDLDJIQUFvQyxDQUFBO0lBQ3BDLDZIQUFxQyxDQUFBO0lBQ3JDLHVIQUFrQyxDQUFBO0lBQ2xDLCtIQUFzQyxDQUFBO0lBQ3RDLCtIQUFzQyxDQUFBO0FBQzFDLENBQUMsRUFQVyxzQkFBc0IsS0FBdEIsc0JBQXNCLFFBT2pDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBFbnVtcy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5leHBvcnQgZW51bSBBdXhpbGlhcnlEYXRhRmllbGRUeXBlIHtcbiAgICBBVVhJTElBUllfREFUQV9GSUVMRF9UWVBFX0lOVkFMSUQgPSAwLFxuICAgIEFVWElMSUFSWV9EQVRBX0ZJRUxEX1RZUEVfU1RSSU5HID0gMSxcbiAgICBBVVhJTElBUllfREFUQV9GSUVMRF9UWVBFX0lOVEVHRVIgPSAyLFxuICAgIEFVWElMSUFSWV9EQVRBX0ZJRUxEX1RZUEVfREFURSA9IDMsXG4gICAgQVVYSUxJQVJZX0RBVEFfRklFTERfVFlQRV9EUk9QRE9XTiA9IDQsXG4gICAgQVVYSUxJQVJZX0RBVEFfRklFTERfVFlQRV9DVVJSRU5DWSA9IDUsXG59XG4iXX0=
@@ -7,5 +7,6 @@
7
7
  export { AppType, EndOfTrialActions, LmiCategory, } from './marketplace-app.enum';
8
8
  export { EditionUpgradeAction, } from './app-settings.enum';
9
9
  export { SuggestionReason, } from './partner-api.enum';
10
- export { PriceDisplayOverride, UnitBillingFrequency, } from './app-price.enum';
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9lbnVtcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsZUFBZTtBQUNmLG9DQUFvQztBQUNwQyxPQUFPLEVBQ0gsT0FBTyxFQUNQLGlCQUFpQixFQUNqQixXQUFXLEdBQ2QsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQ0gsb0JBQW9CLEdBQ3ZCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUNILGdCQUFnQixHQUNuQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIsb0JBQW9CLEdBQ3ZCLE1BQU0sa0JBQWtCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIEVudW1zIEluZGV4LlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5leHBvcnQge1xuICAgIEFwcFR5cGUsXG4gICAgRW5kT2ZUcmlhbEFjdGlvbnMsXG4gICAgTG1pQ2F0ZWdvcnksXG59IGZyb20gJy4vbWFya2V0cGxhY2UtYXBwLmVudW0nO1xuZXhwb3J0IHtcbiAgICBFZGl0aW9uVXBncmFkZUFjdGlvbixcbn0gZnJvbSAnLi9hcHAtc2V0dGluZ3MuZW51bSc7XG5leHBvcnQge1xuICAgIFN1Z2dlc3Rpb25SZWFzb24sXG59IGZyb20gJy4vcGFydG5lci1hcGkuZW51bSc7XG5leHBvcnQge1xuICAgIFByaWNlRGlzcGxheU92ZXJyaWRlLFxuICAgIFVuaXRCaWxsaW5nRnJlcXVlbmN5LFxufSBmcm9tICcuL2FwcC1wcmljZS5lbnVtJztcbiJdfQ==
10
+ export { DiscountType, PriceDisplayOverride, UnitBillingFrequency, } from './app-price.enum';
11
+ export { AuxiliaryDataFieldType, } from './fields.enum';
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9lbnVtcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsZUFBZTtBQUNmLG9DQUFvQztBQUNwQyxPQUFPLEVBQ0gsT0FBTyxFQUNQLGlCQUFpQixFQUNqQixXQUFXLEdBQ2QsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQ0gsb0JBQW9CLEdBQ3ZCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUNILGdCQUFnQixHQUNuQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFDSCxZQUFZLEVBQ1osb0JBQW9CLEVBQ3BCLG9CQUFvQixHQUN2QixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sRUFDSCxzQkFBc0IsR0FDekIsTUFBTSxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIEVudW1zIEluZGV4LlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5leHBvcnQge1xuICAgIEFwcFR5cGUsXG4gICAgRW5kT2ZUcmlhbEFjdGlvbnMsXG4gICAgTG1pQ2F0ZWdvcnksXG59IGZyb20gJy4vbWFya2V0cGxhY2UtYXBwLmVudW0nO1xuZXhwb3J0IHtcbiAgICBFZGl0aW9uVXBncmFkZUFjdGlvbixcbn0gZnJvbSAnLi9hcHAtc2V0dGluZ3MuZW51bSc7XG5leHBvcnQge1xuICAgIFN1Z2dlc3Rpb25SZWFzb24sXG59IGZyb20gJy4vcGFydG5lci1hcGkuZW51bSc7XG5leHBvcnQge1xuICAgIERpc2NvdW50VHlwZSxcbiAgICBQcmljZURpc3BsYXlPdmVycmlkZSxcbiAgICBVbml0QmlsbGluZ0ZyZXF1ZW5jeSxcbn0gZnJvbSAnLi9hcHAtcHJpY2UuZW51bSc7XG5leHBvcnQge1xuICAgIEF1eGlsaWFyeURhdGFGaWVsZFR5cGUsXG59IGZyb20gJy4vZmllbGRzLmVudW0nO1xuIl19
@@ -11,4 +11,6 @@ export { AppPricingApiService } from './app-pricing.api.service';
11
11
  export { CategoryApiService } from './category.api.service';
12
12
  export { MarketplaceAppDataApiService } from './marketplace-app-data.api.service';
13
13
  export { PartnerApiService } from './partner.api.service';
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsU0FBUztBQUNULG9DQUFvQztBQUVwQyxjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGNBQWMsQ0FBQztBQUM3QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNsRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gSW5kZXguXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuZXhwb3J0ICogZnJvbSAnLi9lbnVtcyc7XG5leHBvcnQgKiBmcm9tICcuL29iamVjdHMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzJztcbmV4cG9ydCB7IEFwcFByaWNpbmdBcGlTZXJ2aWNlIH0gZnJvbSAnLi9hcHAtcHJpY2luZy5hcGkuc2VydmljZSc7XG5leHBvcnQgeyBDYXRlZ29yeUFwaVNlcnZpY2UgfSBmcm9tICcuL2NhdGVnb3J5LmFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IE1hcmtldHBsYWNlQXBwRGF0YUFwaVNlcnZpY2UgfSBmcm9tICcuL21hcmtldHBsYWNlLWFwcC1kYXRhLmFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFBhcnRuZXJBcGlTZXJ2aWNlIH0gZnJvbSAnLi9wYXJ0bmVyLmFwaS5zZXJ2aWNlJztcbiJdfQ==
14
+ export { ProductAuxiliaryFieldDataApiService } from './product-auxiliary-field-data.api.service';
15
+ export { ProductAuxiliaryFieldSchemaApiService } from './product-auxiliary-field-schema.api.service';
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsU0FBUztBQUNULG9DQUFvQztBQUVwQyxjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLFdBQVcsQ0FBQztBQUMxQixjQUFjLGNBQWMsQ0FBQztBQUM3QixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM1RCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNsRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNqRyxPQUFPLEVBQUUscUNBQXFDLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gSW5kZXguXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcblxuZXhwb3J0ICogZnJvbSAnLi9lbnVtcyc7XG5leHBvcnQgKiBmcm9tICcuL29iamVjdHMnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnRlcmZhY2VzJztcbmV4cG9ydCB7IEFwcFByaWNpbmdBcGlTZXJ2aWNlIH0gZnJvbSAnLi9hcHAtcHJpY2luZy5hcGkuc2VydmljZSc7XG5leHBvcnQgeyBDYXRlZ29yeUFwaVNlcnZpY2UgfSBmcm9tICcuL2NhdGVnb3J5LmFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IE1hcmtldHBsYWNlQXBwRGF0YUFwaVNlcnZpY2UgfSBmcm9tICcuL21hcmtldHBsYWNlLWFwcC1kYXRhLmFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFBhcnRuZXJBcGlTZXJ2aWNlIH0gZnJvbSAnLi9wYXJ0bmVyLmFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFByb2R1Y3RBdXhpbGlhcnlGaWVsZERhdGFBcGlTZXJ2aWNlIH0gZnJvbSAnLi9wcm9kdWN0LWF1eGlsaWFyeS1maWVsZC1kYXRhLmFwaS5zZXJ2aWNlJztcbmV4cG9ydCB7IFByb2R1Y3RBdXhpbGlhcnlGaWVsZFNjaGVtYUFwaVNlcnZpY2UgfSBmcm9tICcuL3Byb2R1Y3QtYXV4aWxpYXJ5LWZpZWxkLXNjaGVtYS5hcGkuc2VydmljZSc7XG4iXX0=
@@ -5,4 +5,4 @@
5
5
  // Interfaces.
6
6
  // *********************************
7
7
  export {};
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByaWNlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21hcmtldHBsYWNlX2FwcHNfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludGVyZmFjZXMvYXBwLXByaWNlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsY0FBYztBQUNkLG9DQUFvQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gSW50ZXJmYWNlcy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGludGVyZmFjZSBBcHBQcmljZUludGVyZmFjZSB7XG4gICAgYXBwSWQ/OiBzdHJpbmc7XG4gICAgZGlzcGxheU92ZXJyaWRlPzogZS5QcmljZURpc3BsYXlPdmVycmlkZTtcbiAgICBiaWxsaW5nQ29uZmlndXJhdGlvbj86IEJpbGxpbmdDb25maWd1cmF0aW9uSW50ZXJmYWNlO1xuICAgIHByaWNlc0ZvckVkaXRpb25zPzoge1trZXk6IHN0cmluZ106IFVuaXRQcmljZUludGVyZmFjZX07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwUHJpY2VzSW50ZXJmYWNlIHtcbiAgICBhcHBJZD86IHN0cmluZztcbiAgICBwcmljZXNGb3JDb250ZXh0cz86IHtba2V5OiBzdHJpbmddOiBBcHBQcmljZUludGVyZmFjZX07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmlsbGluZ0NvbmZpZ3VyYXRpb25JbnRlcmZhY2Uge1xuICAgIHVzZXNWYXJpYWJsZVByaWNpbmc/OiBib29sZWFuO1xuICAgIHVzZXNDb21wb25lbnRQcmljaW5nPzogYm9vbGVhbjtcbiAgICB1c2VzRWRpdGlvbnM/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbW1pdG1lbnRJbnRlcmZhY2Uge1xuICAgIGluaXRpYWw/OiBudW1iZXI7XG4gICAgcmVjdXJyaW5nPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZyZXF1ZW5jeVByaWNlSW50ZXJmYWNlIHtcbiAgICBmcmVxdWVuY3k/OiBlLlVuaXRCaWxsaW5nRnJlcXVlbmN5O1xuICAgIHNldHVwRmVlPzogbnVtYmVyO1xuICAgIGNvbW1pdG1lbnQ/OiBDb21taXRtZW50SW50ZXJmYWNlO1xuICAgIHByaWNpbmdSdWxlcz86IFByaWNpbmdSdWxlSW50ZXJmYWNlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnJlcXVlbmN5UHJpY2VzSW50ZXJmYWNlIHtcbiAgICBwcmljZXNGb3JGcmVxdWVuY2llcz86IEZyZXF1ZW5jeVByaWNlSW50ZXJmYWNlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwUHJpY2VzUHJpY2VzRm9yQ29udGV4dHNFbnRyeUludGVyZmFjZSB7XG4gICAga2V5Pzogc3RyaW5nO1xuICAgIHZhbHVlPzogQXBwUHJpY2VJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5pdFByaWNlUHJpY2VzRm9yQ3VycmVuY2llc0VudHJ5SW50ZXJmYWNlIHtcbiAgICBrZXk/OiBzdHJpbmc7XG4gICAgdmFsdWU/OiBGcmVxdWVuY3lQcmljZXNJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwUHJpY2VQcmljZXNGb3JFZGl0aW9uc0VudHJ5SW50ZXJmYWNlIHtcbiAgICBrZXk/OiBzdHJpbmc7XG4gICAgdmFsdWU/OiBVbml0UHJpY2VJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJpY2luZ1J1bGVJbnRlcmZhY2Uge1xuICAgIHByaWNlPzogbnVtYmVyO1xuICAgIG1heD86IG51bWJlcjtcbiAgICBtaW4/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVW5pdFByaWNlSW50ZXJmYWNlIHtcbiAgICBwcmljZXNGb3JDdXJyZW5jaWVzPzoge1trZXk6IHN0cmluZ106IEZyZXF1ZW5jeVByaWNlc0ludGVyZmFjZX07XG59XG5cbiJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByaWNlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21hcmtldHBsYWNlX2FwcHNfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludGVyZmFjZXMvYXBwLXByaWNlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsY0FBYztBQUNkLG9DQUFvQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gSW50ZXJmYWNlcy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGludGVyZmFjZSBBcHBQcmljZUludGVyZmFjZSB7XG4gICAgYXBwSWQ/OiBzdHJpbmc7XG4gICAgZGlzcGxheU92ZXJyaWRlPzogZS5QcmljZURpc3BsYXlPdmVycmlkZTtcbiAgICBiaWxsaW5nQ29uZmlndXJhdGlvbj86IEJpbGxpbmdDb25maWd1cmF0aW9uSW50ZXJmYWNlO1xuICAgIHByaWNlc0ZvckVkaXRpb25zPzoge1trZXk6IHN0cmluZ106IFVuaXRQcmljZUludGVyZmFjZX07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwUHJpY2VzSW50ZXJmYWNlIHtcbiAgICBhcHBJZD86IHN0cmluZztcbiAgICBwcmljZXNGb3JDb250ZXh0cz86IHtba2V5OiBzdHJpbmddOiBBcHBQcmljZUludGVyZmFjZX07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmlsbGluZ0NvbmZpZ3VyYXRpb25JbnRlcmZhY2Uge1xuICAgIHVzZXNWYXJpYWJsZVByaWNpbmc/OiBib29sZWFuO1xuICAgIHVzZXNDb21wb25lbnRQcmljaW5nPzogYm9vbGVhbjtcbiAgICB1c2VzRWRpdGlvbnM/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvbW1pdG1lbnRJbnRlcmZhY2Uge1xuICAgIGluaXRpYWw/OiBudW1iZXI7XG4gICAgcmVjdXJyaW5nPzogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERpc2NvdW50SW50ZXJmYWNlIHtcbiAgICBkaXNjb3VudFR5cGU/OiBlLkRpc2NvdW50VHlwZTtcbiAgICBhbW91bnQ/OiBudW1iZXI7XG4gICAgc3RhcnQ/OiBEYXRlO1xuICAgIGVuZD86IERhdGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnJlcXVlbmN5UHJpY2VJbnRlcmZhY2Uge1xuICAgIGZyZXF1ZW5jeT86IGUuVW5pdEJpbGxpbmdGcmVxdWVuY3k7XG4gICAgc2V0dXBGZWU/OiBudW1iZXI7XG4gICAgY29tbWl0bWVudD86IENvbW1pdG1lbnRJbnRlcmZhY2U7XG4gICAgcHJpY2luZ1J1bGVzPzogUHJpY2luZ1J1bGVJbnRlcmZhY2VbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGcmVxdWVuY3lQcmljZXNJbnRlcmZhY2Uge1xuICAgIHByaWNlc0ZvckZyZXF1ZW5jaWVzPzogRnJlcXVlbmN5UHJpY2VJbnRlcmZhY2VbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBcHBQcmljZXNQcmljZXNGb3JDb250ZXh0c0VudHJ5SW50ZXJmYWNlIHtcbiAgICBrZXk/OiBzdHJpbmc7XG4gICAgdmFsdWU/OiBBcHBQcmljZUludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVbml0UHJpY2VQcmljZXNGb3JDdXJyZW5jaWVzRW50cnlJbnRlcmZhY2Uge1xuICAgIGtleT86IHN0cmluZztcbiAgICB2YWx1ZT86IEZyZXF1ZW5jeVByaWNlc0ludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBcHBQcmljZVByaWNlc0ZvckVkaXRpb25zRW50cnlJbnRlcmZhY2Uge1xuICAgIGtleT86IHN0cmluZztcbiAgICB2YWx1ZT86IFVuaXRQcmljZUludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmljaW5nUnVsZUludGVyZmFjZSB7XG4gICAgcHJpY2U/OiBudW1iZXI7XG4gICAgbWF4PzogbnVtYmVyO1xuICAgIG1pbj86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVbml0UHJpY2VJbnRlcmZhY2Uge1xuICAgIHByaWNlc0ZvckN1cnJlbmNpZXM/OiB7W2tleTogc3RyaW5nXTogRnJlcXVlbmN5UHJpY2VzSW50ZXJmYWNlfTtcbiAgICBkaXNjb3VudD86IERpc2NvdW50SW50ZXJmYWNlW107XG59XG5cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGRzLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21hcmtldHBsYWNlX2FwcHNfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludGVyZmFjZXMvZmllbGRzLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBJbnRlcmZhY2VzLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5pbXBvcnQgeyBGaWVsZE1hc2tJbnRlcmZhY2UgfSBmcm9tICcuL2ZpZWxkLW1hc2suaW50ZXJmYWNlJztcbmltcG9ydCB7IFBhZ2VkUmVxdWVzdE9wdGlvbnNJbnRlcmZhY2UsIFBhZ2VkUmVzcG9uc2VNZXRhZGF0YUludGVyZmFjZSB9IGZyb20gJy4vcGFnaW5nLmludGVyZmFjZSc7XG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGludGVyZmFjZSBBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFJbnRlcmZhY2Uge1xuICAgIHBhcnRuZXJJZD86IHN0cmluZztcbiAgICBmaWVsZElkPzogc3RyaW5nO1xuICAgIGZpZWxkVHlwZT86IGUuQXV4aWxpYXJ5RGF0YUZpZWxkVHlwZTtcbiAgICBmaWVsZE5hbWU/OiBzdHJpbmc7XG4gICAgZmllbGREZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBjcmVhdGVkPzogRGF0ZTtcbiAgICB1cGRhdGVkPzogRGF0ZTtcbiAgICBkcm9wZG93bk9wdGlvbnM/OiBEcm9wZG93bk9wdGlvbkludGVyZmFjZVtdO1xuICAgIGN1cnJlbmN5Q29kZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdXhpbGlhcnlEYXRhT2JqZWN0SURJbnRlcmZhY2Uge1xuICAgIHBhcnRuZXJJZD86IHN0cmluZztcbiAgICBvYmplY3RJZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0SW50ZXJmYWNlIHtcbiAgICBmaWVsZFNjaGVtYT86IEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYUludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBEcm9wZG93bk9wdGlvbkludGVyZmFjZSB7XG4gICAgbGFiZWw/OiBzdHJpbmc7XG4gICAgdmFsdWU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGREYXRhVXBzZXJ0T3BlcmF0aW9uSW50ZXJmYWNlIHtcbiAgICBmaWVsZERhdGFJZD86IHN0cmluZztcbiAgICBpbnRlZ2VyPzogbnVtYmVyO1xuICAgIHN0cmluZz86IHN0cmluZztcbiAgICBkYXRlPzogRGF0ZTtcbiAgICBkcm9wZG93blZhbHVlPzogc3RyaW5nO1xuICAgIGN1cnJlbmN5VmFsdWU/OiBudW1iZXI7XG4gICAgZGVsZXRlVmFsdWU/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RJbnRlcmZhY2Uge1xuICAgIGZpZWxkSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0QXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVzcG9uc2VJbnRlcmZhY2Uge1xuICAgIGZpZWxkU2NoZW1hPzogQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hSW50ZXJmYWNlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFSZXF1ZXN0SW50ZXJmYWNlIHtcbiAgICBwYXJ0bmVySWQ/OiBzdHJpbmc7XG4gICAgcGFnaW5nT3B0aW9ucz86IFBhZ2VkUmVxdWVzdE9wdGlvbnNJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlc3BvbnNlSW50ZXJmYWNlIHtcbiAgICBmaWVsZFNjaGVtYXM/OiBBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFJbnRlcmZhY2VbXTtcbiAgICBwYWdpbmdNZXRhZGF0YT86IFBhZ2VkUmVzcG9uc2VNZXRhZGF0YUludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0QXV4aWxpYXJ5RGF0YVJlcXVlc3RJbnRlcmZhY2Uge1xuICAgIGF1eGlsaWFyeURhdGFPYmplY3RJZD86IEF1eGlsaWFyeURhdGFPYmplY3RJREludGVyZmFjZTtcbiAgICBwYWdpbmdPcHRpb25zPzogUGFnZWRSZXF1ZXN0T3B0aW9uc0ludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0QXV4aWxpYXJ5RGF0YVJlc3BvbnNlSW50ZXJmYWNlIHtcbiAgICBqc29uU2NoZW1hPzogc3RyaW5nO1xuICAgIGpzb25EYXRhPzogc3RyaW5nO1xuICAgIHBhZ2luZ01ldGFkYXRhPzogUGFnZWRSZXNwb25zZU1ldGFkYXRhSW50ZXJmYWNlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFVwZGF0ZUF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RJbnRlcmZhY2Uge1xuICAgIGZpZWxkU2NoZW1hPzogQXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hSW50ZXJmYWNlO1xuICAgIGZpZWxkTWFzaz86IEZpZWxkTWFza0ludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcHNlcnRBdXhpbGlhcnlEYXRhUmVxdWVzdEludGVyZmFjZSB7XG4gICAgYXV4aWxpYXJ5RGF0YU9iamVjdElkPzogQXV4aWxpYXJ5RGF0YU9iamVjdElESW50ZXJmYWNlO1xuICAgIGZpZWxkRGF0YVVwc2VydE9wZXJhdGlvbnM/OiBGaWVsZERhdGFVcHNlcnRPcGVyYXRpb25JbnRlcmZhY2VbXTtcbn1cblxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9pbnRlcmZhY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIEludGVyZmFjZXMgSW5kZXguXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmV4cG9ydCB7XG4gICAgQWN0aXZhdGlvbkluZm9ybWF0aW9uSW50ZXJmYWNlLFxuICAgIEFwcEludGVyZmFjZSxcbiAgICBBcHBLZXlJbnRlcmZhY2UsXG4gICAgQmFzaWNJbnRlZ3JhdGlvbkludGVyZmFjZSxcbiAgICBSZXF1aXJlZFBhcmVudERldGFpbHNJbnRlcmZhY2UsXG4gICAgRWRpdGlvbkludGVyZmFjZSxcbiAgICBFZGl0aW9uSW5mb3JtYXRpb25JbnRlcmZhY2UsXG4gICAgRW5kVXNlck1hcmtldGluZ0luZm9ybWF0aW9uSW50ZXJmYWNlLFxuICAgIEV4dGVybmFsSWRlbnRpZmllcnNJbnRlcmZhY2UsXG4gICAgRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zSW50ZXJmYWNlLFxuICAgIFBlcm1pc3Npb25MaXN0c0ludGVyZmFjZSxcbiAgICBQcmljZUludGVyZmFjZSxcbiAgICBSZXF1aXJlZEJ1c2luZXNzRGF0YUludGVyZmFjZSxcbiAgICBSZXF1aXJlZFBhcmVudEludGVyZmFjZSxcbiAgICBTU09JbnRlZ3JhdGlvbkludGVyZmFjZSxcbiAgICBTaGFyZWRNYXJrZXRpbmdJbmZvcm1hdGlvbkludGVyZmFjZSxcbiAgICBUcmlhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2UsXG59IGZyb20gJy4vbWFya2V0cGxhY2UtYXBwLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgQXBwU2V0dGluZ3NJbnRlcmZhY2UsXG4gICAgQXV0b0FjdGl2YXRpb25JbnRlcmZhY2UsXG4gICAgQnJhbmRpbmdJbnRlcmZhY2UsXG4gICAgRWRpdGlvbkNoYW5nZUludGVyZmFjZSxcbiAgICBUcmlhbEludGVyZmFjZSxcbn0gZnJvbSAnLi9hcHAtc2V0dGluZ3MuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBVcGdyYWRlRGlhbG9nQ29udGVudEludGVyZmFjZSxcbn0gZnJvbSAnLi91cGdyYWRlLWRpYWxvZy1jb250ZW50LmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgQWNjZXNzSW50ZXJmYWNlLFxufSBmcm9tICcuL2Fubm90YXRpb25zLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgRmllbGRNYXNrSW50ZXJmYWNlLFxufSBmcm9tICcuL2ZpZWxkLW1hc2suaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBHZXRBcHBTZXR0aW5nc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0QXBwU2V0dGluZ3NSZXNwb25zZUludGVyZmFjZSxcbiAgICBHZXRNdWx0aUFwcFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0TXVsdGlBcHBSZXNwb25zZUludGVyZmFjZSxcbiAgICBHZXRVcGdyYWRlRGlhbG9nQ29udGVudFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0VXBncmFkZURpYWxvZ0NvbnRlbnRSZXNwb25zZUludGVyZmFjZSxcbiAgICBMaXN0QXBwU2V0dGluZ3NSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIExpc3RBcHBTZXR0aW5nc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RQYXJ0bmVyRW5hYmxlZEFwcHNSZXF1ZXN0TGlzdEFwcHNGaWx0ZXJJbnRlcmZhY2UsXG4gICAgTGlzdFBhcnRuZXJFbmFibGVkQXBwc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdFBhcnRuZXJFbmFibGVkQXBwc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIFByb2R1Y3RTdWdnZXN0aW9uSW50ZXJmYWNlLFxuICAgIFJlcGxhY2VBcHBTZXR0aW5nc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgUmVwbGFjZUFwcFNldHRpbmdzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgUmVwbGFjZVVwZ3JhZGVEaWFsb2dDb250ZW50UmVxdWVzdEludGVyZmFjZSxcbiAgICBTdWdnZXN0UHJvZHVjdFJlcXVlc3RJbnRlcmZhY2UsXG59IGZyb20gJy4vcGFydG5lci1hcGkuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBBcHBUYWdJbnRlcmZhY2UsXG4gICAgR2V0TXVsdGlBcHBEYXRhUmVxdWVzdEludGVyZmFjZSxcbiAgICBHZXRNdWx0aUFwcERhdGFSZXNwb25zZUludGVyZmFjZSxcbiAgICBLaW5kVmFsdWVzSW50ZXJmYWNlLFxuICAgIExpc3RBcHBJRHNCeU11bHRpVGFnUmVxdWVzdEludGVyZmFjZSxcbiAgICBMaXN0QXBwSURzQnlNdWx0aVRhZ1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RCeU11bHRpVGFnUmVxdWVzdEludGVyZmFjZSxcbiAgICBMaXN0QnlNdWx0aVRhZ1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RWYWx1ZXNCeU11bHRpS2luZFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdFZhbHVlc0J5TXVsdGlLaW5kUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgTWFya2V0cGxhY2VBcHBJbnRlcmZhY2UsXG4gICAgU2NvcGVkVGFnSW50ZXJmYWNlLFxuICAgIFRhZ0ludGVyZmFjZSxcbiAgICBUYWdBcHBzUmVxdWVzdEludGVyZmFjZSxcbiAgICBVbnRhZ0FwcHNSZXF1ZXN0SW50ZXJmYWNlLFxufSBmcm9tICcuL2FwcC1kYXRhLWFwaS5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIERlbGV0ZUNhdGVnb3J5UmVxdWVzdEludGVyZmFjZSxcbiAgICBHZXRDYXRlZ29yaWVzUmVxdWVzdEludGVyZmFjZSxcbiAgICBHZXRDYXRlZ29yaWVzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgTWFya2V0cGxhY2VDYXRlZ29yeUludGVyZmFjZSxcbiAgICBVcHNlcnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIFVwc2VydFJlc3BvbnNlSW50ZXJmYWNlLFxufSBmcm9tICcuL2NhdGVnb3J5LWFwaS5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEFwcFByaWNlSW50ZXJmYWNlLFxuICAgIEFwcFByaWNlc0ludGVyZmFjZSxcbiAgICBCaWxsaW5nQ29uZmlndXJhdGlvbkludGVyZmFjZSxcbiAgICBDb21taXRtZW50SW50ZXJmYWNlLFxuICAgIEZyZXF1ZW5jeVByaWNlSW50ZXJmYWNlLFxuICAgIEZyZXF1ZW5jeVByaWNlc0ludGVyZmFjZSxcbiAgICBBcHBQcmljZXNQcmljZXNGb3JDb250ZXh0c0VudHJ5SW50ZXJmYWNlLFxuICAgIFVuaXRQcmljZVByaWNlc0ZvckN1cnJlbmNpZXNFbnRyeUludGVyZmFjZSxcbiAgICBBcHBQcmljZVByaWNlc0ZvckVkaXRpb25zRW50cnlJbnRlcmZhY2UsXG4gICAgUHJpY2luZ1J1bGVJbnRlcmZhY2UsXG4gICAgVW5pdFByaWNlSW50ZXJmYWNlLFxufSBmcm9tICcuL2FwcC1wcmljZS5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEdldE11bHRpUHJpY2luZ1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0TXVsdGlQcmljaW5nUmVzcG9uc2VJbnRlcmZhY2UsXG59IGZyb20gJy4vYXBwLXByaWNlLWFwaS5pbnRlcmZhY2UnO1xuXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9tYXJrZXRwbGFjZV9hcHBzX3Nkay9zcmMvbGliL19pbnRlcm5hbC9pbnRlcmZhY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIEludGVyZmFjZXMgSW5kZXguXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmV4cG9ydCB7XG4gICAgQWN0aXZhdGlvbkluZm9ybWF0aW9uSW50ZXJmYWNlLFxuICAgIEFwcEludGVyZmFjZSxcbiAgICBBcHBLZXlJbnRlcmZhY2UsXG4gICAgQXBwUmVzdHJpY3Rpb25zSW50ZXJmYWNlLFxuICAgIEJhc2ljSW50ZWdyYXRpb25JbnRlcmZhY2UsXG4gICAgUmVxdWlyZWRQYXJlbnREZXRhaWxzSW50ZXJmYWNlLFxuICAgIEVkaXRpb25JbnRlcmZhY2UsXG4gICAgRWRpdGlvbklkZW50aWZpZXJJbnRlcmZhY2UsXG4gICAgRWRpdGlvbkluZm9ybWF0aW9uSW50ZXJmYWNlLFxuICAgIEVuZFVzZXJNYXJrZXRpbmdJbmZvcm1hdGlvbkludGVyZmFjZSxcbiAgICBFeHRlcm5hbElkZW50aWZpZXJzSW50ZXJmYWNlLFxuICAgIEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uc0ludGVyZmFjZSxcbiAgICBQZXJtaXNzaW9uTGlzdHNJbnRlcmZhY2UsXG4gICAgUHJpY2VJbnRlcmZhY2UsXG4gICAgUmVxdWlyZWRCdXNpbmVzc0RhdGFJbnRlcmZhY2UsXG4gICAgUmVxdWlyZWRQYXJlbnRJbnRlcmZhY2UsXG4gICAgU1NPSW50ZWdyYXRpb25JbnRlcmZhY2UsXG4gICAgU2hhcmVkTWFya2V0aW5nSW5mb3JtYXRpb25JbnRlcmZhY2UsXG4gICAgVHJpYWxDb25maWd1cmF0aW9uSW50ZXJmYWNlLFxufSBmcm9tICcuL21hcmtldHBsYWNlLWFwcC5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEFwcFNldHRpbmdzSW50ZXJmYWNlLFxuICAgIEF1dG9BY3RpdmF0aW9uSW50ZXJmYWNlLFxuICAgIEJyYW5kaW5nSW50ZXJmYWNlLFxuICAgIEVkaXRpb25DaGFuZ2VJbnRlcmZhY2UsXG4gICAgVHJpYWxJbnRlcmZhY2UsXG59IGZyb20gJy4vYXBwLXNldHRpbmdzLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgVXBncmFkZURpYWxvZ0NvbnRlbnRJbnRlcmZhY2UsXG59IGZyb20gJy4vdXBncmFkZS1kaWFsb2ctY29udGVudC5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEFjY2Vzc0ludGVyZmFjZSxcbn0gZnJvbSAnLi9hbm5vdGF0aW9ucy5pbnRlcmZhY2UnO1xuXG5leHBvcnQge1xuICAgIEZpZWxkTWFza0ludGVyZmFjZSxcbn0gZnJvbSAnLi9maWVsZC1tYXNrLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgR2V0QXBwU2V0dGluZ3NSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldEFwcFNldHRpbmdzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgR2V0TXVsdGlBcHBSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldE11bHRpQXBwUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgR2V0VXBncmFkZURpYWxvZ0NvbnRlbnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldFVwZ3JhZGVEaWFsb2dDb250ZW50UmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgTGlzdEFwcFNldHRpbmdzUmVxdWVzdEludGVyZmFjZSxcbiAgICBMaXN0QXBwU2V0dGluZ3NSZXNwb25zZUludGVyZmFjZSxcbiAgICBMaXN0UGFydG5lckVuYWJsZWRBcHBzUmVxdWVzdExpc3RBcHBzRmlsdGVySW50ZXJmYWNlLFxuICAgIExpc3RQYXJ0bmVyRW5hYmxlZEFwcHNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIExpc3RQYXJ0bmVyRW5hYmxlZEFwcHNSZXNwb25zZUludGVyZmFjZSxcbiAgICBQcm9kdWN0U3VnZ2VzdGlvbkludGVyZmFjZSxcbiAgICBSZXBsYWNlQXBwU2V0dGluZ3NSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIFJlcGxhY2VBcHBTZXR0aW5nc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIFJlcGxhY2VVcGdyYWRlRGlhbG9nQ29udGVudFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgU3VnZ2VzdFByb2R1Y3RSZXF1ZXN0SW50ZXJmYWNlLFxufSBmcm9tICcuL3BhcnRuZXItYXBpLmludGVyZmFjZSc7XG5cbmV4cG9ydCB7XG4gICAgQXBwVGFnSW50ZXJmYWNlLFxuICAgIEdldE11bHRpQXBwRGF0YVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0TXVsdGlBcHBEYXRhUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgS2luZFZhbHVlc0ludGVyZmFjZSxcbiAgICBMaXN0QXBwSURzQnlNdWx0aVRhZ1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdEFwcElEc0J5TXVsdGlUYWdSZXNwb25zZUludGVyZmFjZSxcbiAgICBMaXN0QnlNdWx0aVRhZ1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdEJ5TXVsdGlUYWdSZXNwb25zZUludGVyZmFjZSxcbiAgICBMaXN0VmFsdWVzQnlNdWx0aUtpbmRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIExpc3RWYWx1ZXNCeU11bHRpS2luZFJlc3BvbnNlSW50ZXJmYWNlLFxuICAgIE1hcmtldHBsYWNlQXBwSW50ZXJmYWNlLFxuICAgIFNjb3BlZFRhZ0ludGVyZmFjZSxcbiAgICBUYWdJbnRlcmZhY2UsXG4gICAgVGFnQXBwc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgVW50YWdBcHBzUmVxdWVzdEludGVyZmFjZSxcbn0gZnJvbSAnLi9hcHAtZGF0YS1hcGkuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBEZWxldGVDYXRlZ29yeVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0Q2F0ZWdvcmllc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0Q2F0ZWdvcmllc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgIE1hcmtldHBsYWNlQ2F0ZWdvcnlJbnRlcmZhY2UsXG4gICAgVXBzZXJ0UmVxdWVzdEludGVyZmFjZSxcbiAgICBVcHNlcnRSZXNwb25zZUludGVyZmFjZSxcbn0gZnJvbSAnLi9jYXRlZ29yeS1hcGkuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBBcHBQcmljZUludGVyZmFjZSxcbiAgICBBcHBQcmljZXNJbnRlcmZhY2UsXG4gICAgQmlsbGluZ0NvbmZpZ3VyYXRpb25JbnRlcmZhY2UsXG4gICAgQ29tbWl0bWVudEludGVyZmFjZSxcbiAgICBEaXNjb3VudEludGVyZmFjZSxcbiAgICBGcmVxdWVuY3lQcmljZUludGVyZmFjZSxcbiAgICBGcmVxdWVuY3lQcmljZXNJbnRlcmZhY2UsXG4gICAgQXBwUHJpY2VzUHJpY2VzRm9yQ29udGV4dHNFbnRyeUludGVyZmFjZSxcbiAgICBVbml0UHJpY2VQcmljZXNGb3JDdXJyZW5jaWVzRW50cnlJbnRlcmZhY2UsXG4gICAgQXBwUHJpY2VQcmljZXNGb3JFZGl0aW9uc0VudHJ5SW50ZXJmYWNlLFxuICAgIFByaWNpbmdSdWxlSW50ZXJmYWNlLFxuICAgIFVuaXRQcmljZUludGVyZmFjZSxcbn0gZnJvbSAnLi9hcHAtcHJpY2UuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBHZXRNdWx0aVByaWNpbmdSZXF1ZXN0SW50ZXJmYWNlLFxuICAgIEdldE11bHRpUHJpY2luZ1Jlc3BvbnNlSW50ZXJmYWNlLFxufSBmcm9tICcuL2FwcC1wcmljZS1hcGkuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBQYWdlZFJlcXVlc3RPcHRpb25zSW50ZXJmYWNlLFxuICAgIFBhZ2VkUmVzcG9uc2VNZXRhZGF0YUludGVyZmFjZSxcbn0gZnJvbSAnLi9wYWdpbmcuaW50ZXJmYWNlJztcblxuZXhwb3J0IHtcbiAgICBBdXhpbGlhcnlEYXRhRmllbGRTY2hlbWFJbnRlcmZhY2UsXG4gICAgQXV4aWxpYXJ5RGF0YU9iamVjdElESW50ZXJmYWNlLFxuICAgIENyZWF0ZUF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgRHJvcGRvd25PcHRpb25JbnRlcmZhY2UsXG4gICAgRmllbGREYXRhVXBzZXJ0T3BlcmF0aW9uSW50ZXJmYWNlLFxuICAgIEdldEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgR2V0QXV4aWxpYXJ5RGF0YUZpZWxkU2NoZW1hUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgTGlzdEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgTGlzdEF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgIExpc3RBdXhpbGlhcnlEYXRhUmVxdWVzdEludGVyZmFjZSxcbiAgICBMaXN0QXV4aWxpYXJ5RGF0YVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgIFVwZGF0ZUF1eGlsaWFyeURhdGFGaWVsZFNjaGVtYVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgVXBzZXJ0QXV4aWxpYXJ5RGF0YVJlcXVlc3RJbnRlcmZhY2UsXG59IGZyb20gJy4vZmllbGRzLmludGVyZmFjZSc7XG5cbiJdfQ==
@@ -5,4 +5,4 @@
5
5
  // Interfaces.
6
6
  // *********************************
7
7
  export {};
8
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2V0cGxhY2UtYXBwLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21hcmtldHBsYWNlX2FwcHNfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludGVyZmFjZXMvbWFya2V0cGxhY2UtYXBwLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsY0FBYztBQUNkLG9DQUFvQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gSW50ZXJmYWNlcy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGludGVyZmFjZSBBY3RpdmF0aW9uSW5mb3JtYXRpb25JbnRlcmZhY2Uge1xuICAgIG9yZGVyRm9ybUVuYWJsZWQ/OiBib29sZWFuO1xuICAgIG11bHRpcGxlQWN0aXZhdGlvbnNFbmFibGVkPzogYm9vbGVhbjtcbiAgICBhY3RpdmF0aW9uU3BlY2lmaWNVcmxFbmFibGVkPzogYm9vbGVhbjtcbiAgICBzZXBhcmF0ZU9yZGVyRm9ybXM/OiBib29sZWFuO1xuICAgIHJlcXVpcmVkQnVzaW5lc3NEYXRhPzogUmVxdWlyZWRCdXNpbmVzc0RhdGFJbnRlcmZhY2U7XG4gICAgc3VzcGVuZGVkPzogRGF0ZTtcbiAgICBjb3VudHJ5UmVzdHJpY3Rpb25zPzogUGVybWlzc2lvbkxpc3RzSW50ZXJmYWNlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcEludGVyZmFjZSB7XG4gICAga2V5PzogQXBwS2V5SW50ZXJmYWNlO1xuICAgIHNoYXJlZE1hcmtldGluZ0luZm9ybWF0aW9uPzogU2hhcmVkTWFya2V0aW5nSW5mb3JtYXRpb25JbnRlcmZhY2U7XG4gICAgZW5kVXNlck1hcmtldGluZ0luZm9ybWF0aW9uPzogRW5kVXNlck1hcmtldGluZ0luZm9ybWF0aW9uSW50ZXJmYWNlO1xuICAgIHBhcmVudFJlcXVpcmVtZW50cz86IFJlcXVpcmVkUGFyZW50SW50ZXJmYWNlO1xuICAgIHNzb0ludGVncmF0aW9uPzogU1NPSW50ZWdyYXRpb25JbnRlcmZhY2U7XG4gICAgYWN0aXZhdGlvbkluZm9ybWF0aW9uPzogQWN0aXZhdGlvbkluZm9ybWF0aW9uSW50ZXJmYWNlO1xuICAgIHRyaWFsQ29uZmlndXJhdGlvbj86IFRyaWFsQ29uZmlndXJhdGlvbkludGVyZmFjZTtcbiAgICBiYXNpY0ludGVncmF0aW9uPzogQmFzaWNJbnRlZ3JhdGlvbkludGVyZmFjZTtcbiAgICBlZGl0aW9uSW5mb3JtYXRpb24/OiBFZGl0aW9uSW5mb3JtYXRpb25JbnRlcmZhY2U7XG4gICAgZXh0ZXJuYWxJZGVudGlmaWVycz86IEV4dGVybmFsSWRlbnRpZmllcnNJbnRlcmZhY2U7XG4gICAgcHJpY2U/OiBQcmljZUludGVyZmFjZTtcbiAgICBhcHBUeXBlPzogZS5BcHBUeXBlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcEtleUludGVyZmFjZSB7XG4gICAgYXBwSWQ/OiBzdHJpbmc7XG4gICAgZWRpdGlvbklkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2ljSW50ZWdyYXRpb25JbnRlcmZhY2Uge1xuICAgIGFwcGxpY2F0aW9uVXJsPzogc3RyaW5nO1xuICAgIGFsbG93V2hpdGVMYWJlbGluZz86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVxdWlyZWRQYXJlbnREZXRhaWxzSW50ZXJmYWNlIHtcbiAgICBrZXk/OiBBcHBLZXlJbnRlcmZhY2U7XG4gICAgaWNvblVybD86IHN0cmluZztcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIHRhZ2xpbmU/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdGlvbkludGVyZmFjZSB7XG4gICAgYXBwS2V5PzogQXBwS2V5SW50ZXJmYWNlO1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgY3JlYXRlZD86IERhdGU7XG4gICAgdXBkYXRlZD86IERhdGU7XG4gICAgYmlsbGluZ0lkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRpb25JbmZvcm1hdGlvbkludGVyZmFjZSB7XG4gICAgZWRpdGlvbnM/OiBFZGl0aW9uSW50ZXJmYWNlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW5kVXNlck1hcmtldGluZ0luZm9ybWF0aW9uSW50ZXJmYWNlIHtcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBrZXlTZWxsaW5nUG9pbnRzPzogc3RyaW5nW107XG4gICAgZmFxcz86IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uc0ludGVyZmFjZVtdO1xuICAgIGZpbGVVcmxzPzogc3RyaW5nW107XG4gICAgc2NyZWVuc2hvdFVybHM/OiBzdHJpbmdbXTtcbiAgICBuZWVkSGVscD86IHN0cmluZztcbiAgICB2aWRlb3M/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeHRlcm5hbElkZW50aWZpZXJzSW50ZXJmYWNlIHtcbiAgICBiaWxsaW5nSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zSW50ZXJmYWNlIHtcbiAgICBxdWVzdGlvbj86IHN0cmluZztcbiAgICBhbnN3ZXI/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGVybWlzc2lvbkxpc3RzSW50ZXJmYWNlIHtcbiAgICB3aGl0ZWxpc3Q/OiBzdHJpbmdbXTtcbiAgICBibGFja2xpc3Q/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmljZUludGVyZmFjZSB7XG4gICAgc2V0dXBGZWU/OiBudW1iZXI7XG4gICAgdXNlc0N1c3RvbVByaWNpbmc/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVpcmVkQnVzaW5lc3NEYXRhSW50ZXJmYWNlIHtcbiAgICBob3Vycz86IGJvb2xlYW47XG4gICAgZGVzY3JpcHRpb25Mb25nPzogYm9vbGVhbjtcbiAgICBkZXNjcmlwdGlvblNob3J0PzogYm9vbGVhbjtcbiAgICBzZXJ2aWNlcz86IGJvb2xlYW47XG4gICAgYnJhbmRzPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1aXJlZFBhcmVudEludGVyZmFjZSB7XG4gICAgZW5hYmxlZD86IGJvb2xlYW47XG4gICAgcGFyZW50RGV0YWlscz86IFJlcXVpcmVkUGFyZW50RGV0YWlsc0ludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTU09JbnRlZ3JhdGlvbkludGVyZmFjZSB7XG4gICAgZW5hYmxlZD86IGJvb2xlYW47XG4gICAgZW50cnlVcmw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2hhcmVkTWFya2V0aW5nSW5mb3JtYXRpb25JbnRlcmZhY2Uge1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgZWRpdGlvbk5hbWU/OiBzdHJpbmc7XG4gICAgaWNvblVybD86IHN0cmluZztcbiAgICB0YWdsaW5lPzogc3RyaW5nO1xuICAgIGJhbm5lckltYWdlVXJsPzogc3RyaW5nO1xuICAgIGxtaUNhdGVnb3JpZXM/OiBlLkxtaUNhdGVnb3J5W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJpYWxDb25maWd1cmF0aW9uSW50ZXJmYWNlIHtcbiAgICB0cmlhbEVuYWJsZWQ/OiBib29sZWFuO1xuICAgIHRyaWFsRHVyYXRpb24/OiBudW1iZXI7XG4gICAgZW5kT2ZUcmlhbEFjdGlvbj86IGUuRW5kT2ZUcmlhbEFjdGlvbnM7XG59XG5cbiJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFya2V0cGxhY2UtYXBwLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21hcmtldHBsYWNlX2FwcHNfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludGVyZmFjZXMvbWFya2V0cGxhY2UtYXBwLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsY0FBYztBQUNkLG9DQUFvQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gSW50ZXJmYWNlcy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGludGVyZmFjZSBBY3RpdmF0aW9uSW5mb3JtYXRpb25JbnRlcmZhY2Uge1xuICAgIG9yZGVyRm9ybUVuYWJsZWQ/OiBib29sZWFuO1xuICAgIG11bHRpcGxlQWN0aXZhdGlvbnNFbmFibGVkPzogYm9vbGVhbjtcbiAgICBhY3RpdmF0aW9uU3BlY2lmaWNVcmxFbmFibGVkPzogYm9vbGVhbjtcbiAgICBzZXBhcmF0ZU9yZGVyRm9ybXM/OiBib29sZWFuO1xuICAgIHJlcXVpcmVkQnVzaW5lc3NEYXRhPzogUmVxdWlyZWRCdXNpbmVzc0RhdGFJbnRlcmZhY2U7XG4gICAgc3VzcGVuZGVkPzogRGF0ZTtcbiAgICBjb3VudHJ5UmVzdHJpY3Rpb25zPzogUGVybWlzc2lvbkxpc3RzSW50ZXJmYWNlO1xuICAgIGFwcFJlc3RyaWN0aW9ucz86IEFwcFJlc3RyaWN0aW9uc0ludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBcHBJbnRlcmZhY2Uge1xuICAgIGtleT86IEFwcEtleUludGVyZmFjZTtcbiAgICBzaGFyZWRNYXJrZXRpbmdJbmZvcm1hdGlvbj86IFNoYXJlZE1hcmtldGluZ0luZm9ybWF0aW9uSW50ZXJmYWNlO1xuICAgIGVuZFVzZXJNYXJrZXRpbmdJbmZvcm1hdGlvbj86IEVuZFVzZXJNYXJrZXRpbmdJbmZvcm1hdGlvbkludGVyZmFjZTtcbiAgICBwYXJlbnRSZXF1aXJlbWVudHM/OiBSZXF1aXJlZFBhcmVudEludGVyZmFjZTtcbiAgICBzc29JbnRlZ3JhdGlvbj86IFNTT0ludGVncmF0aW9uSW50ZXJmYWNlO1xuICAgIGFjdGl2YXRpb25JbmZvcm1hdGlvbj86IEFjdGl2YXRpb25JbmZvcm1hdGlvbkludGVyZmFjZTtcbiAgICB0cmlhbENvbmZpZ3VyYXRpb24/OiBUcmlhbENvbmZpZ3VyYXRpb25JbnRlcmZhY2U7XG4gICAgYmFzaWNJbnRlZ3JhdGlvbj86IEJhc2ljSW50ZWdyYXRpb25JbnRlcmZhY2U7XG4gICAgZWRpdGlvbkluZm9ybWF0aW9uPzogRWRpdGlvbkluZm9ybWF0aW9uSW50ZXJmYWNlO1xuICAgIGV4dGVybmFsSWRlbnRpZmllcnM/OiBFeHRlcm5hbElkZW50aWZpZXJzSW50ZXJmYWNlO1xuICAgIHByaWNlPzogUHJpY2VJbnRlcmZhY2U7XG4gICAgYXBwVHlwZT86IGUuQXBwVHlwZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBcHBLZXlJbnRlcmZhY2Uge1xuICAgIGFwcElkPzogc3RyaW5nO1xuICAgIGVkaXRpb25JZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBcHBSZXN0cmljdGlvbnNJbnRlcmZhY2Uge1xuICAgIHJlcXVpcmVkQXBwSWRzPzogc3RyaW5nW107XG4gICAgcmVxdWlyZWRFZGl0aW9uSWRzPzogRWRpdGlvbklkZW50aWZpZXJJbnRlcmZhY2VbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYXNpY0ludGVncmF0aW9uSW50ZXJmYWNlIHtcbiAgICBhcHBsaWNhdGlvblVybD86IHN0cmluZztcbiAgICBhbGxvd1doaXRlTGFiZWxpbmc/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVpcmVkUGFyZW50RGV0YWlsc0ludGVyZmFjZSB7XG4gICAga2V5PzogQXBwS2V5SW50ZXJmYWNlO1xuICAgIGljb25Vcmw/OiBzdHJpbmc7XG4gICAgbmFtZT86IHN0cmluZztcbiAgICB0YWdsaW5lPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRpb25JbnRlcmZhY2Uge1xuICAgIGFwcEtleT86IEFwcEtleUludGVyZmFjZTtcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIGNyZWF0ZWQ/OiBEYXRlO1xuICAgIHVwZGF0ZWQ/OiBEYXRlO1xuICAgIGJpbGxpbmdJZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFZGl0aW9uSWRlbnRpZmllckludGVyZmFjZSB7XG4gICAgYXBwSWQ/OiBzdHJpbmc7XG4gICAgZWRpdGlvbklkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRpb25JbmZvcm1hdGlvbkludGVyZmFjZSB7XG4gICAgZWRpdGlvbnM/OiBFZGl0aW9uSW50ZXJmYWNlW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW5kVXNlck1hcmtldGluZ0luZm9ybWF0aW9uSW50ZXJmYWNlIHtcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBrZXlTZWxsaW5nUG9pbnRzPzogc3RyaW5nW107XG4gICAgZmFxcz86IEZyZXF1ZW50bHlBc2tlZFF1ZXN0aW9uc0ludGVyZmFjZVtdO1xuICAgIGZpbGVVcmxzPzogc3RyaW5nW107XG4gICAgc2NyZWVuc2hvdFVybHM/OiBzdHJpbmdbXTtcbiAgICBuZWVkSGVscD86IHN0cmluZztcbiAgICB2aWRlb3M/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFeHRlcm5hbElkZW50aWZpZXJzSW50ZXJmYWNlIHtcbiAgICBiaWxsaW5nSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRnJlcXVlbnRseUFza2VkUXVlc3Rpb25zSW50ZXJmYWNlIHtcbiAgICBxdWVzdGlvbj86IHN0cmluZztcbiAgICBhbnN3ZXI/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGVybWlzc2lvbkxpc3RzSW50ZXJmYWNlIHtcbiAgICB3aGl0ZWxpc3Q/OiBzdHJpbmdbXTtcbiAgICBibGFja2xpc3Q/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBQcmljZUludGVyZmFjZSB7XG4gICAgc2V0dXBGZWU/OiBudW1iZXI7XG4gICAgdXNlc0N1c3RvbVByaWNpbmc/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVpcmVkQnVzaW5lc3NEYXRhSW50ZXJmYWNlIHtcbiAgICBob3Vycz86IGJvb2xlYW47XG4gICAgZGVzY3JpcHRpb25Mb25nPzogYm9vbGVhbjtcbiAgICBkZXNjcmlwdGlvblNob3J0PzogYm9vbGVhbjtcbiAgICBzZXJ2aWNlcz86IGJvb2xlYW47XG4gICAgYnJhbmRzPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1aXJlZFBhcmVudEludGVyZmFjZSB7XG4gICAgZW5hYmxlZD86IGJvb2xlYW47XG4gICAgcGFyZW50RGV0YWlscz86IFJlcXVpcmVkUGFyZW50RGV0YWlsc0ludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTU09JbnRlZ3JhdGlvbkludGVyZmFjZSB7XG4gICAgZW5hYmxlZD86IGJvb2xlYW47XG4gICAgZW50cnlVcmw/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2hhcmVkTWFya2V0aW5nSW5mb3JtYXRpb25JbnRlcmZhY2Uge1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgZWRpdGlvbk5hbWU/OiBzdHJpbmc7XG4gICAgaWNvblVybD86IHN0cmluZztcbiAgICB0YWdsaW5lPzogc3RyaW5nO1xuICAgIGJhbm5lckltYWdlVXJsPzogc3RyaW5nO1xuICAgIGxtaUNhdGVnb3JpZXM/OiBlLkxtaUNhdGVnb3J5W107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJpYWxDb25maWd1cmF0aW9uSW50ZXJmYWNlIHtcbiAgICB0cmlhbEVuYWJsZWQ/OiBib29sZWFuO1xuICAgIHRyaWFsRHVyYXRpb24/OiBudW1iZXI7XG4gICAgZW5kT2ZUcmlhbEFjdGlvbj86IGUuRW5kT2ZUcmlhbEFjdGlvbnM7XG59XG5cbiJdfQ==
@@ -0,0 +1,8 @@
1
+ // *********************************
2
+ // Code generated by sdkgen
3
+ // DO NOT EDIT!.
4
+ //
5
+ // Interfaces.
6
+ // *********************************
7
+ export {};
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5nLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL21hcmtldHBsYWNlX2FwcHNfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludGVyZmFjZXMvcGFnaW5nLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsY0FBYztBQUNkLG9DQUFvQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gSW50ZXJmYWNlcy5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGludGVyZmFjZSBQYWdlZFJlcXVlc3RPcHRpb25zSW50ZXJmYWNlIHtcbiAgICBjdXJzb3I/OiBzdHJpbmc7XG4gICAgcGFnZVNpemU/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnZWRSZXNwb25zZU1ldGFkYXRhSW50ZXJmYWNlIHtcbiAgICBuZXh0Q3Vyc29yPzogc3RyaW5nO1xuICAgIGhhc01vcmU/OiBib29sZWFuO1xuICAgIHRvdGFsUmVzdWx0cz86IG51bWJlcjtcbn1cblxuIl19
@@ -124,6 +124,47 @@ export class Commitment {
124
124
  return toReturn;
125
125
  }
126
126
  }
127
+ export class Discount {
128
+ constructor(kwargs) {
129
+ if (!kwargs) {
130
+ return;
131
+ }
132
+ Object.assign(this, kwargs);
133
+ }
134
+ static fromProto(proto) {
135
+ let m = new Discount();
136
+ m = Object.assign(m, proto);
137
+ if (proto.discountType) {
138
+ m.discountType = enumStringToValue(e.DiscountType, proto.discountType);
139
+ }
140
+ if (proto.amount) {
141
+ m.amount = parseInt(proto.amount, 10);
142
+ }
143
+ if (proto.start) {
144
+ m.start = new Date(proto.start);
145
+ }
146
+ if (proto.end) {
147
+ m.end = new Date(proto.end);
148
+ }
149
+ return m;
150
+ }
151
+ toApiJson() {
152
+ const toReturn = {};
153
+ if (typeof this.discountType !== 'undefined') {
154
+ toReturn['discountType'] = this.discountType;
155
+ }
156
+ if (typeof this.amount !== 'undefined') {
157
+ toReturn['amount'] = this.amount;
158
+ }
159
+ if (typeof this.start !== 'undefined' && this.start !== null) {
160
+ toReturn['start'] = 'toApiJson' in this.start ? this.start.toApiJson() : this.start;
161
+ }
162
+ if (typeof this.end !== 'undefined' && this.end !== null) {
163
+ toReturn['end'] = 'toApiJson' in this.end ? this.end.toApiJson() : this.end;
164
+ }
165
+ return toReturn;
166
+ }
167
+ }
127
168
  export class FrequencyPrice {
128
169
  constructor(kwargs) {
129
170
  if (!kwargs) {
@@ -314,6 +355,9 @@ export class UnitPrice {
314
355
  if (proto.pricesForCurrencies) {
315
356
  m.pricesForCurrencies = Object.keys(proto.pricesForCurrencies).reduce((obj, k) => { obj[k] = FrequencyPrices.fromProto(proto.pricesForCurrencies[k]); return obj; }, {});
316
357
  }
358
+ if (proto.discount) {
359
+ m.discount = proto.discount.map(Discount.fromProto);
360
+ }
317
361
  return m;
318
362
  }
319
363
  toApiJson() {
@@ -321,7 +365,10 @@ export class UnitPrice {
321
365
  if (typeof this.pricesForCurrencies !== 'undefined' && this.pricesForCurrencies !== null) {
322
366
  toReturn['pricesForCurrencies'] = 'toApiJson' in this.pricesForCurrencies ? this.pricesForCurrencies.toApiJson() : this.pricesForCurrencies;
323
367
  }
368
+ if (typeof this.discount !== 'undefined' && this.discount !== null) {
369
+ toReturn['discount'] = 'toApiJson' in this.discount ? this.discount.toApiJson() : this.discount;
370
+ }
324
371
  return toReturn;
325
372
  }
326
373
  }
327
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByaWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbWFya2V0cGxhY2VfYXBwc19zZGsvc3JjL2xpYi9faW50ZXJuYWwvb2JqZWN0cy9hcHAtcHJpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUEsT0FBTyxLQUFLLENBQUMsTUFBTSxVQUFVLENBQUM7QUFFOUIsTUFBTSxVQUFVLGlCQUFpQixDQUFJLE9BQVksRUFBRSxLQUFhO0lBQzlELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1FBQzdCLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDO0FBRUQsTUFBTSxPQUFPLFFBQVE7SUFlakIsWUFBWSxNQUE0QjtRQUNwQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQWRELE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxlQUFlLEVBQUU7WUFBQyxDQUFDLENBQUMsZUFBZSxHQUFHLGlCQUFpQixDQUF5QixDQUFDLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1NBQUM7UUFDMUksSUFBSSxLQUFLLENBQUMsb0JBQW9CLEVBQUU7WUFBQyxDQUFDLENBQUMsb0JBQW9CLEdBQUcsb0JBQW9CLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1NBQUM7UUFDdEgsSUFBSSxLQUFLLENBQUMsaUJBQWlCLEVBQUU7WUFBQyxDQUFD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QUFFLElBQUksQ0FBQyxtQkFBMkIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDO1NBQUM7UUFDalAsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBPYmplY3RzLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5pbXBvcnQgKiBhcyBpIGZyb20gJy4uL2ludGVyZmFjZXMnO1xuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGZ1bmN0aW9uIGVudW1TdHJpbmdUb1ZhbHVlPEU+KGVudW1SZWY6IGFueSwgdmFsdWU6IHN0cmluZyk6IEUge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gZW51bVJlZlt2YWx1ZV07XG59XG5cbmV4cG9ydCBjbGFzcyBBcHBQcmljZSBpbXBsZW1lbnRzIGkuQXBwUHJpY2VJbnRlcmZhY2Uge1xuICAgIGFwcElkOiBzdHJpbmc7XG4gICAgZGlzcGxheU92ZXJyaWRlOiBlLlByaWNlRGlzcGxheU92ZXJyaWRlO1xuICAgIGJpbGxpbmdDb25maWd1cmF0aW9uOiBCaWxsaW5nQ29uZmlndXJhdGlvbjtcbiAgICBwcmljZXNGb3JFZGl0aW9uczoge1trZXk6IHN0cmluZ106IFVuaXRQcmljZX07XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBcHBQcmljZSB7XG4gICAgICAgIGxldCBtID0gbmV3IEFwcFByaWNlKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLmRpc3BsYXlPdmVycmlkZSkge20uZGlzcGxheU92ZXJyaWRlID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5QcmljZURpc3BsYXlPdmVycmlkZT4oZS5QcmljZURpc3BsYXlPdmVycmlkZSwgcHJvdG8uZGlzcGxheU92ZXJyaWRlKTt9XG4gICAgICAgIGlmIChwcm90by5iaWxsaW5nQ29uZmlndXJhdGlvbikge20uYmlsbGluZ0NvbmZpZ3VyYXRpb24gPSBCaWxsaW5nQ29uZmlndXJhdGlvbi5mcm9tUHJvdG8ocHJvdG8uYmlsbGluZ0NvbmZpZ3VyYXRpb24pO31cbiAgICAgICAgaWYgKHByb3RvLnByaWNlc0ZvckVkaXRpb25zKSB7bS5wcmljZXNGb3JFZGl0aW9ucyA9IE9iamVjdC5rZXlzKHByb3RvLnByaWNlc0ZvckVkaXRpb25zKS5yZWR1Y2U8YW55Pigob2JqLCBrKSA9PiB7IG9ialtrXSA9IFVuaXRQcmljZS5mcm9tUHJvdG8ocHJvdG8ucHJpY2VzRm9yRWRpdGlvbnNba10pOyByZXR1cm4gb2JqOyB9LCB7fSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkFwcFByaWNlSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYXBwSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2FwcElkJ10gPSB0aGlzLmFwcElkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRpc3BsYXlPdmVycmlkZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZGlzcGxheU92ZXJyaWRlJ10gPSB0aGlzLmRpc3BsYXlPdmVycmlkZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5iaWxsaW5nQ29uZmlndXJhdGlvbiAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5iaWxsaW5nQ29uZmlndXJhdGlvbiAhPT0gbnVsbCkge3RvUmV0dXJuWydiaWxsaW5nQ29uZmlndXJhdGlvbiddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5iaWxsaW5nQ29uZmlndXJhdGlvbiA/ICh0aGlzLmJpbGxpbmdDb25maWd1cmF0aW9uIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmJpbGxpbmdDb25maWd1cmF0aW9uO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnByaWNlc0ZvckVkaXRpb25zICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnByaWNlc0ZvckVkaXRpb25zICE9PSBudWxsKSB7dG9SZXR1cm5bJ3ByaWNlc0ZvckVkaXRpb25zJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnByaWNlc0ZvckVkaXRpb25zID8gKHRoaXMucHJpY2VzRm9yRWRpdGlvbnMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMucHJpY2VzRm9yRWRpdGlvbnM7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQXBwUHJpY2VzIGltcGxlbWVudHMgaS5BcHBQcmljZXNJbnRlcmZhY2Uge1xuICAgIGFwcElkOiBzdHJpbmc7XG4gICAgcHJpY2VzRm9yQ29udGV4dHM6IHtba2V5OiBzdHJpbmddOiBBcHBQcmljZX07XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBcHBQcmljZXMge1xuICAgICAgICBsZXQgbSA9IG5ldyBBcHBQcmljZXMoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucHJpY2VzRm9yQ29udGV4dHMpIHttLnByaWNlc0ZvckNvbnRleHRzID0gT2JqZWN0LmtleXMocHJvdG8ucHJpY2VzRm9yQ29udGV4dHMpLnJlZHVjZTxhbnk+KChvYmosIGspID0+IHsgb2JqW2tdID0gQXBwUHJpY2UuZnJvbVByb3RvKHByb3RvLnByaWNlc0ZvckNvbnRleHRzW2tdKTsgcmV0dXJuIG9iajsgfSwge30pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5BcHBQcmljZXNJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5hcHBJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYXBwSWQnXSA9IHRoaXMuYXBwSWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucHJpY2VzRm9yQ29udGV4dHMgIT09ICd1bmRlZmluZWQnICYmIHRoaXMucHJpY2VzRm9yQ29udGV4dHMgIT09IG51bGwpIHt0b1JldHVyblsncHJpY2VzRm9yQ29udGV4dHMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMucHJpY2VzRm9yQ29udGV4dHMgPyAodGhpcy5wcmljZXNGb3JDb250ZXh0cyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5wcmljZXNGb3JDb250ZXh0czt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBCaWxsaW5nQ29uZmlndXJhdGlvbiBpbXBsZW1lbnRzIGkuQmlsbGluZ0NvbmZpZ3VyYXRpb25JbnRlcmZhY2Uge1xuICAgIHVzZXNWYXJpYWJsZVByaWNpbmc6IGJvb2xlYW47XG4gICAgdXNlc0NvbXBvbmVudFByaWNpbmc6IGJvb2xlYW47XG4gICAgdXNlc0VkaXRpb25zOiBib29sZWFuO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQmlsbGluZ0NvbmZpZ3VyYXRpb24ge1xuICAgICAgICBsZXQgbSA9IG5ldyBCaWxsaW5nQ29uZmlndXJhdGlvbigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQmlsbGluZ0NvbmZpZ3VyYXRpb25JbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51c2VzVmFyaWFibGVQcmljaW5nICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyd1c2VzVmFyaWFibGVQcmljaW5nJ10gPSB0aGlzLnVzZXNWYXJpYWJsZVByaWNpbmc7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudXNlc0NvbXBvbmVudFByaWNpbmcgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3VzZXNDb21wb25lbnRQcmljaW5nJ10gPSB0aGlzLnVzZXNDb21wb25lbnRQcmljaW5nO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnVzZXNFZGl0aW9ucyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsndXNlc0VkaXRpb25zJ10gPSB0aGlzLnVzZXNFZGl0aW9uczt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDb21taXRtZW50IGltcGxlbWVudHMgaS5Db21taXRtZW50SW50ZXJmYWNlIHtcbiAgICBpbml0aWFsOiBudW1iZXI7XG4gICAgcmVjdXJyaW5nOiBudW1iZXI7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBDb21taXRtZW50IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQ29tbWl0bWVudCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5pbml0aWFsKSB7bS5pbml0aWFsID0gcGFyc2VJbnQocHJvdG8uaW5pdGlhbCwgMTApO31cbiAgICAgICAgaWYgKHByb3RvLnJlY3VycmluZykge20ucmVjdXJyaW5nID0gcGFyc2VJbnQocHJvdG8ucmVjdXJyaW5nLCAxMCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkNvbW1pdG1lbnRJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pbml0aWFsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpbml0aWFsJ10gPSB0aGlzLmluaXRpYWw7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucmVjdXJyaW5nICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydyZWN1cnJpbmcnXSA9IHRoaXMucmVjdXJyaW5nO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEZyZXF1ZW5jeVByaWNlIGltcGxlbWVudHMgaS5GcmVxdWVuY3lQcmljZUludGVyZmFjZSB7XG4gICAgZnJlcXVlbmN5OiBlLlVuaXRCaWxsaW5nRnJlcXVlbmN5O1xuICAgIHNldHVwRmVlOiBudW1iZXI7XG4gICAgY29tbWl0bWVudDogQ29tbWl0bWVudDtcbiAgICBwcmljaW5nUnVsZXM6IFByaWNpbmdSdWxlW107XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBGcmVxdWVuY3lQcmljZSB7XG4gICAgICAgIGxldCBtID0gbmV3IEZyZXF1ZW5jeVByaWNlKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLmZyZXF1ZW5jeSkge20uZnJlcXVlbmN5ID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5Vbml0QmlsbGluZ0ZyZXF1ZW5jeT4oZS5Vbml0QmlsbGluZ0ZyZXF1ZW5jeSwgcHJvdG8uZnJlcXVlbmN5KTt9XG4gICAgICAgIGlmIChwcm90by5zZXR1cEZlZSkge20uc2V0dXBGZWUgPSBwYXJzZUludChwcm90by5zZXR1cEZlZSwgMTApO31cbiAgICAgICAgaWYgKHByb3RvLmNvbW1pdG1lbnQpIHttLmNvbW1pdG1lbnQgPSBDb21taXRtZW50LmZyb21Qcm90byhwcm90by5jb21taXRtZW50KTt9XG4gICAgICAgIGlmIChwcm90by5wcmljaW5nUnVsZXMpIHttLnByaWNpbmdSdWxlcyA9IHByb3RvLnByaWNpbmdSdWxlcy5tYXAoUHJpY2luZ1J1bGUuZnJvbVByb3RvKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuRnJlcXVlbmN5UHJpY2VJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5mcmVxdWVuY3kgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2ZyZXF1ZW5jeSddID0gdGhpcy5mcmVxdWVuY3k7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuc2V0dXBGZWUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3NldHVwRmVlJ10gPSB0aGlzLnNldHVwRmVlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNvbW1pdG1lbnQgIT09ICd1bmRlZmluZWQnICYmIHRoaXMuY29tbWl0bWVudCAhPT0gbnVsbCkge3RvUmV0dXJuWydjb21taXRtZW50J10gPSAndG9BcGlKc29uJyBpbiB0aGlzLmNvbW1pdG1lbnQgPyAodGhpcy5jb21taXRtZW50IGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmNvbW1pdG1lbnQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucHJpY2luZ1J1bGVzICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnByaWNpbmdSdWxlcyAhPT0gbnVsbCkge3RvUmV0dXJuWydwcmljaW5nUnVsZXMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMucHJpY2luZ1J1bGVzID8gKHRoaXMucHJpY2luZ1J1bGVzIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnByaWNpbmdSdWxlczt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBGcmVxdWVuY3lQcmljZXMgaW1wbGVtZW50cyBpLkZyZXF1ZW5jeVByaWNlc0ludGVyZmFjZSB7XG4gICAgcHJpY2VzRm9yRnJlcXVlbmNpZXM6IEZyZXF1ZW5jeVByaWNlW107XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBGcmVxdWVuY3lQcmljZXMge1xuICAgICAgICBsZXQgbSA9IG5ldyBGcmVxdWVuY3lQcmljZXMoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucHJpY2VzRm9yRnJlcXVlbmNpZXMpIHttLnByaWNlc0ZvckZyZXF1ZW5jaWVzID0gcHJvdG8ucHJpY2VzRm9yRnJlcXVlbmNpZXMubWFwKEZyZXF1ZW5jeVByaWNlLmZyb21Qcm90byk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkZyZXF1ZW5jeVByaWNlc0ludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnByaWNlc0ZvckZyZXF1ZW5jaWVzICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnByaWNlc0ZvckZyZXF1ZW5jaWVzICE9PSBudWxsKSB7dG9SZXR1cm5bJ3ByaWNlc0ZvckZyZXF1ZW5jaWVzJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnByaWNlc0ZvckZyZXF1ZW5jaWVzID8gKHRoaXMucHJpY2VzRm9yRnJlcXVlbmNpZXMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMucHJpY2VzRm9yRnJlcXVlbmNpZXM7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQXBwUHJpY2VzUHJpY2VzRm9yQ29udGV4dHNFbnRyeSBpbXBsZW1lbnRzIGkuQXBwUHJpY2VzUHJpY2VzRm9yQ29udGV4dHNFbnRyeUludGVyZmFjZSB7XG4gICAga2V5OiBzdHJpbmc7XG4gICAgdmFsdWU6IEFwcFByaWNlO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQXBwUHJpY2VzUHJpY2VzRm9yQ29udGV4dHNFbnRyeSB7XG4gICAgICAgIGxldCBtID0gbmV3IEFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnkoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8udmFsdWUpIHttLnZhbHVlID0gQXBwUHJpY2UuZnJvbVByb3RvKHByb3RvLnZhbHVlKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQXBwUHJpY2VzUHJpY2VzRm9yQ29udGV4dHNFbnRyeUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmtleSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsna2V5J10gPSB0aGlzLmtleTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy52YWx1ZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy52YWx1ZSAhPT0gbnVsbCkge3RvUmV0dXJuWyd2YWx1ZSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy52YWx1ZSA/ICh0aGlzLnZhbHVlIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnZhbHVlO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFVuaXRQcmljZVByaWNlc0ZvckN1cnJlbmNpZXNFbnRyeSBpbXBsZW1lbnRzIGkuVW5pdFByaWNlUHJpY2VzRm9yQ3VycmVuY2llc0VudHJ5SW50ZXJmYWNlIHtcbiAgICBrZXk6IHN0cmluZztcbiAgICB2YWx1ZTogRnJlcXVlbmN5UHJpY2VzO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogVW5pdFByaWNlUHJpY2VzRm9yQ3VycmVuY2llc0VudHJ5IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgVW5pdFByaWNlUHJpY2VzRm9yQ3VycmVuY2llc0VudHJ5KCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnZhbHVlKSB7bS52YWx1ZSA9IEZyZXF1ZW5jeVByaWNlcy5mcm9tUHJvdG8ocHJvdG8udmFsdWUpO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5Vbml0UHJpY2VQcmljZXNGb3JDdXJyZW5jaWVzRW50cnlJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5rZXkgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2tleSddID0gdGhpcy5rZXk7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudmFsdWUgIT09ICd1bmRlZmluZWQnICYmIHRoaXMudmFsdWUgIT09IG51bGwpIHt0b1JldHVyblsndmFsdWUnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMudmFsdWUgPyAodGhpcy52YWx1ZSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy52YWx1ZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBcHBQcmljZVByaWNlc0ZvckVkaXRpb25zRW50cnkgaW1wbGVtZW50cyBpLkFwcFByaWNlUHJpY2VzRm9yRWRpdGlvbnNFbnRyeUludGVyZmFjZSB7XG4gICAga2V5OiBzdHJpbmc7XG4gICAgdmFsdWU6IFVuaXRQcmljZTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IEFwcFByaWNlUHJpY2VzRm9yRWRpdGlvbnNFbnRyeSB7XG4gICAgICAgIGxldCBtID0gbmV3IEFwcFByaWNlUHJpY2VzRm9yRWRpdGlvbnNFbnRyeSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by52YWx1ZSkge20udmFsdWUgPSBVbml0UHJpY2UuZnJvbVByb3RvKHByb3RvLnZhbHVlKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQXBwUHJpY2VQcmljZXNGb3JFZGl0aW9uc0VudHJ5SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMua2V5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydrZXknXSA9IHRoaXMua2V5O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnZhbHVlICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnZhbHVlICE9PSBudWxsKSB7dG9SZXR1cm5bJ3ZhbHVlJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnZhbHVlID8gKHRoaXMudmFsdWUgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudmFsdWU7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgUHJpY2luZ1J1bGUgaW1wbGVtZW50cyBpLlByaWNpbmdSdWxlSW50ZXJmYWNlIHtcbiAgICBwcmljZTogbnVtYmVyO1xuICAgIG1heDogbnVtYmVyO1xuICAgIG1pbjogbnVtYmVyO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogUHJpY2luZ1J1bGUge1xuICAgICAgICBsZXQgbSA9IG5ldyBQcmljaW5nUnVsZSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5wcmljZSkge20ucHJpY2UgPSBwYXJzZUludChwcm90by5wcmljZSwgMTApO31cbiAgICAgICAgaWYgKHByb3RvLm1heCkge20ubWF4ID0gcGFyc2VJbnQocHJvdG8ubWF4LCAxMCk7fVxuICAgICAgICBpZiAocHJvdG8ubWluKSB7bS5taW4gPSBwYXJzZUludChwcm90by5taW4sIDEwKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuUHJpY2luZ1J1bGVJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5wcmljZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsncHJpY2UnXSA9IHRoaXMucHJpY2U7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMubWF4ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydtYXgnXSA9IHRoaXMubWF4O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm1pbiAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbWluJ10gPSB0aGlzLm1pbjt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBVbml0UHJpY2UgaW1wbGVtZW50cyBpLlVuaXRQcmljZUludGVyZmFjZSB7XG4gICAgcHJpY2VzRm9yQ3VycmVuY2llczoge1trZXk6IHN0cmluZ106IEZyZXF1ZW5jeVByaWNlc307XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBVbml0UHJpY2Uge1xuICAgICAgICBsZXQgbSA9IG5ldyBVbml0UHJpY2UoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucHJpY2VzRm9yQ3VycmVuY2llcykge20ucHJpY2VzRm9yQ3VycmVuY2llcyA9IE9iamVjdC5rZXlzKHByb3RvLnByaWNlc0ZvckN1cnJlbmNpZXMpLnJlZHVjZTxhbnk+KChvYmosIGspID0+IHsgb2JqW2tdID0gRnJlcXVlbmN5UHJpY2VzLmZyb21Qcm90byhwcm90by5wcmljZXNGb3JDdXJyZW5jaWVzW2tdKTsgcmV0dXJuIG9iajsgfSwge30pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5Vbml0UHJpY2VJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5wcmljZXNGb3JDdXJyZW5jaWVzICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnByaWNlc0ZvckN1cnJlbmNpZXMgIT09IG51bGwpIHt0b1JldHVyblsncHJpY2VzRm9yQ3VycmVuY2llcyddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5wcmljZXNGb3JDdXJyZW5jaWVzID8gKHRoaXMucHJpY2VzRm9yQ3VycmVuY2llcyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5wcmljZXNGb3JDdXJyZW5jaWVzO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuIl19
374
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLXByaWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbWFya2V0cGxhY2VfYXBwc19zZGsvc3JjL2xpYi9faW50ZXJuYWwvb2JqZWN0cy9hcHAtcHJpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUEsT0FBTyxLQUFLLENBQUMsTUFBTSxVQUFVLENBQUM7QUFFOUIsTUFBTSxVQUFVLGlCQUFpQixDQUFJLE9BQVksRUFBRSxLQUFhO0lBQzlELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxFQUFFO1FBQzdCLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxPQUFPLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDO0FBRUQsTUFBTSxPQUFPLFFBQVE7SUFlakIsWUFBWSxNQUE0QjtRQUNwQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ1QsT0FBTztTQUNWO1FBQ0QsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQWRELE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBVTtRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQ3ZCLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLEtBQUssQ0FBQyxlQUFlLEVBQUU7WUFBQyxDQUFDLENBQUMsZUFBZSxHQUFHLGlCQUFpQixDQUF5QixDQUFDLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1NBQUM7UUFDMUksSUFBSSxLQUFLLENBQUMsb0JBQW9CLEVBQUU7WUFBQyxDQUFDLENBQUMsb0JBQW9CLEdBQUcsb0JBQW9CLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1NBQUM7UUFDdEgsSUFBSSxLQUFLLENBQUMsaUJBQWlCLEVBQUU7WUFBQyxDQUFD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LFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO1NBQUM7UUFDL0ssT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBPYmplY3RzLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5pbXBvcnQgKiBhcyBpIGZyb20gJy4uL2ludGVyZmFjZXMnO1xuXG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGZ1bmN0aW9uIGVudW1TdHJpbmdUb1ZhbHVlPEU+KGVudW1SZWY6IGFueSwgdmFsdWU6IHN0cmluZyk6IEUge1xuICBpZiAodHlwZW9mIHZhbHVlID09PSAnbnVtYmVyJykge1xuICAgIHJldHVybiB2YWx1ZTtcbiAgfVxuICByZXR1cm4gZW51bVJlZlt2YWx1ZV07XG59XG5cbmV4cG9ydCBjbGFzcyBBcHBQcmljZSBpbXBsZW1lbnRzIGkuQXBwUHJpY2VJbnRlcmZhY2Uge1xuICAgIGFwcElkOiBzdHJpbmc7XG4gICAgZGlzcGxheU92ZXJyaWRlOiBlLlByaWNlRGlzcGxheU92ZXJyaWRlO1xuICAgIGJpbGxpbmdDb25maWd1cmF0aW9uOiBCaWxsaW5nQ29uZmlndXJhdGlvbjtcbiAgICBwcmljZXNGb3JFZGl0aW9uczoge1trZXk6IHN0cmluZ106IFVuaXRQcmljZX07XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBcHBQcmljZSB7XG4gICAgICAgIGxldCBtID0gbmV3IEFwcFByaWNlKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLmRpc3BsYXlPdmVycmlkZSkge20uZGlzcGxheU92ZXJyaWRlID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5QcmljZURpc3BsYXlPdmVycmlkZT4oZS5QcmljZURpc3BsYXlPdmVycmlkZSwgcHJvdG8uZGlzcGxheU92ZXJyaWRlKTt9XG4gICAgICAgIGlmIChwcm90by5iaWxsaW5nQ29uZmlndXJhdGlvbikge20uYmlsbGluZ0NvbmZpZ3VyYXRpb24gPSBCaWxsaW5nQ29uZmlndXJhdGlvbi5mcm9tUHJvdG8ocHJvdG8uYmlsbGluZ0NvbmZpZ3VyYXRpb24pO31cbiAgICAgICAgaWYgKHByb3RvLnByaWNlc0ZvckVkaXRpb25zKSB7bS5wcmljZXNGb3JFZGl0aW9ucyA9IE9iamVjdC5rZXlzKHByb3RvLnByaWNlc0ZvckVkaXRpb25zKS5yZWR1Y2U8YW55Pigob2JqLCBrKSA9PiB7IG9ialtrXSA9IFVuaXRQcmljZS5mcm9tUHJvdG8ocHJvdG8ucHJpY2VzRm9yRWRpdGlvbnNba10pOyByZXR1cm4gb2JqOyB9LCB7fSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkFwcFByaWNlSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYXBwSWQgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2FwcElkJ10gPSB0aGlzLmFwcElkO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmRpc3BsYXlPdmVycmlkZSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnZGlzcGxheU92ZXJyaWRlJ10gPSB0aGlzLmRpc3BsYXlPdmVycmlkZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5iaWxsaW5nQ29uZmlndXJhdGlvbiAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5iaWxsaW5nQ29uZmlndXJhdGlvbiAhPT0gbnVsbCkge3RvUmV0dXJuWydiaWxsaW5nQ29uZmlndXJhdGlvbiddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5iaWxsaW5nQ29uZmlndXJhdGlvbiA/ICh0aGlzLmJpbGxpbmdDb25maWd1cmF0aW9uIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmJpbGxpbmdDb25maWd1cmF0aW9uO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnByaWNlc0ZvckVkaXRpb25zICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnByaWNlc0ZvckVkaXRpb25zICE9PSBudWxsKSB7dG9SZXR1cm5bJ3ByaWNlc0ZvckVkaXRpb25zJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnByaWNlc0ZvckVkaXRpb25zID8gKHRoaXMucHJpY2VzRm9yRWRpdGlvbnMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMucHJpY2VzRm9yRWRpdGlvbnM7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQXBwUHJpY2VzIGltcGxlbWVudHMgaS5BcHBQcmljZXNJbnRlcmZhY2Uge1xuICAgIGFwcElkOiBzdHJpbmc7XG4gICAgcHJpY2VzRm9yQ29udGV4dHM6IHtba2V5OiBzdHJpbmddOiBBcHBQcmljZX07XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBcHBQcmljZXMge1xuICAgICAgICBsZXQgbSA9IG5ldyBBcHBQcmljZXMoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucHJpY2VzRm9yQ29udGV4dHMpIHttLnByaWNlc0ZvckNvbnRleHRzID0gT2JqZWN0LmtleXMocHJvdG8ucHJpY2VzRm9yQ29udGV4dHMpLnJlZHVjZTxhbnk+KChvYmosIGspID0+IHsgb2JqW2tdID0gQXBwUHJpY2UuZnJvbVByb3RvKHByb3RvLnByaWNlc0ZvckNvbnRleHRzW2tdKTsgcmV0dXJuIG9iajsgfSwge30pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5BcHBQcmljZXNJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5hcHBJZCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnYXBwSWQnXSA9IHRoaXMuYXBwSWQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucHJpY2VzRm9yQ29udGV4dHMgIT09ICd1bmRlZmluZWQnICYmIHRoaXMucHJpY2VzRm9yQ29udGV4dHMgIT09IG51bGwpIHt0b1JldHVyblsncHJpY2VzRm9yQ29udGV4dHMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMucHJpY2VzRm9yQ29udGV4dHMgPyAodGhpcy5wcmljZXNGb3JDb250ZXh0cyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5wcmljZXNGb3JDb250ZXh0czt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBCaWxsaW5nQ29uZmlndXJhdGlvbiBpbXBsZW1lbnRzIGkuQmlsbGluZ0NvbmZpZ3VyYXRpb25JbnRlcmZhY2Uge1xuICAgIHVzZXNWYXJpYWJsZVByaWNpbmc6IGJvb2xlYW47XG4gICAgdXNlc0NvbXBvbmVudFByaWNpbmc6IGJvb2xlYW47XG4gICAgdXNlc0VkaXRpb25zOiBib29sZWFuO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogQmlsbGluZ0NvbmZpZ3VyYXRpb24ge1xuICAgICAgICBsZXQgbSA9IG5ldyBCaWxsaW5nQ29uZmlndXJhdGlvbigpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuQmlsbGluZ0NvbmZpZ3VyYXRpb25JbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy51c2VzVmFyaWFibGVQcmljaW5nICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWyd1c2VzVmFyaWFibGVQcmljaW5nJ10gPSB0aGlzLnVzZXNWYXJpYWJsZVByaWNpbmc7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudXNlc0NvbXBvbmVudFByaWNpbmcgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3VzZXNDb21wb25lbnRQcmljaW5nJ10gPSB0aGlzLnVzZXNDb21wb25lbnRQcmljaW5nO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnVzZXNFZGl0aW9ucyAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsndXNlc0VkaXRpb25zJ10gPSB0aGlzLnVzZXNFZGl0aW9uczt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBDb21taXRtZW50IGltcGxlbWVudHMgaS5Db21taXRtZW50SW50ZXJmYWNlIHtcbiAgICBpbml0aWFsOiBudW1iZXI7XG4gICAgcmVjdXJyaW5nOiBudW1iZXI7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBDb21taXRtZW50IHtcbiAgICAgICAgbGV0IG0gPSBuZXcgQ29tbWl0bWVudCgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5pbml0aWFsKSB7bS5pbml0aWFsID0gcGFyc2VJbnQocHJvdG8uaW5pdGlhbCwgMTApO31cbiAgICAgICAgaWYgKHByb3RvLnJlY3VycmluZykge20ucmVjdXJyaW5nID0gcGFyc2VJbnQocHJvdG8ucmVjdXJyaW5nLCAxMCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkNvbW1pdG1lbnRJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5pbml0aWFsICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydpbml0aWFsJ10gPSB0aGlzLmluaXRpYWw7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucmVjdXJyaW5nICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydyZWN1cnJpbmcnXSA9IHRoaXMucmVjdXJyaW5nO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIERpc2NvdW50IGltcGxlbWVudHMgaS5EaXNjb3VudEludGVyZmFjZSB7XG4gICAgZGlzY291bnRUeXBlOiBlLkRpc2NvdW50VHlwZTtcbiAgICBhbW91bnQ6IG51bWJlcjtcbiAgICBzdGFydDogRGF0ZTtcbiAgICBlbmQ6IERhdGU7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBEaXNjb3VudCB7XG4gICAgICAgIGxldCBtID0gbmV3IERpc2NvdW50KCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLmRpc2NvdW50VHlwZSkge20uZGlzY291bnRUeXBlID0gZW51bVN0cmluZ1RvVmFsdWU8ZS5EaXNjb3VudFR5cGU+KGUuRGlzY291bnRUeXBlLCBwcm90by5kaXNjb3VudFR5cGUpO31cbiAgICAgICAgaWYgKHByb3RvLmFtb3VudCkge20uYW1vdW50ID0gcGFyc2VJbnQocHJvdG8uYW1vdW50LCAxMCk7fVxuICAgICAgICBpZiAocHJvdG8uc3RhcnQpIHttLnN0YXJ0ID0gbmV3IERhdGUocHJvdG8uc3RhcnQpO31cbiAgICAgICAgaWYgKHByb3RvLmVuZCkge20uZW5kID0gbmV3IERhdGUocHJvdG8uZW5kKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuRGlzY291bnRJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5kaXNjb3VudFR5cGUgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2Rpc2NvdW50VHlwZSddID0gdGhpcy5kaXNjb3VudFR5cGU7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuYW1vdW50ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydhbW91bnQnXSA9IHRoaXMuYW1vdW50O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnN0YXJ0ICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnN0YXJ0ICE9PSBudWxsKSB7dG9SZXR1cm5bJ3N0YXJ0J10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnN0YXJ0ID8gKHRoaXMuc3RhcnQgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMuc3RhcnQ7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZW5kICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmVuZCAhPT0gbnVsbCkge3RvUmV0dXJuWydlbmQnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMuZW5kID8gKHRoaXMuZW5kIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmVuZDt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBGcmVxdWVuY3lQcmljZSBpbXBsZW1lbnRzIGkuRnJlcXVlbmN5UHJpY2VJbnRlcmZhY2Uge1xuICAgIGZyZXF1ZW5jeTogZS5Vbml0QmlsbGluZ0ZyZXF1ZW5jeTtcbiAgICBzZXR1cEZlZTogbnVtYmVyO1xuICAgIGNvbW1pdG1lbnQ6IENvbW1pdG1lbnQ7XG4gICAgcHJpY2luZ1J1bGVzOiBQcmljaW5nUnVsZVtdO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogRnJlcXVlbmN5UHJpY2Uge1xuICAgICAgICBsZXQgbSA9IG5ldyBGcmVxdWVuY3lQcmljZSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by5mcmVxdWVuY3kpIHttLmZyZXF1ZW5jeSA9IGVudW1TdHJpbmdUb1ZhbHVlPGUuVW5pdEJpbGxpbmdGcmVxdWVuY3k+KGUuVW5pdEJpbGxpbmdGcmVxdWVuY3ksIHByb3RvLmZyZXF1ZW5jeSk7fVxuICAgICAgICBpZiAocHJvdG8uc2V0dXBGZWUpIHttLnNldHVwRmVlID0gcGFyc2VJbnQocHJvdG8uc2V0dXBGZWUsIDEwKTt9XG4gICAgICAgIGlmIChwcm90by5jb21taXRtZW50KSB7bS5jb21taXRtZW50ID0gQ29tbWl0bWVudC5mcm9tUHJvdG8ocHJvdG8uY29tbWl0bWVudCk7fVxuICAgICAgICBpZiAocHJvdG8ucHJpY2luZ1J1bGVzKSB7bS5wcmljaW5nUnVsZXMgPSBwcm90by5wcmljaW5nUnVsZXMubWFwKFByaWNpbmdSdWxlLmZyb21Qcm90byk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkZyZXF1ZW5jeVByaWNlSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuZnJlcXVlbmN5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydmcmVxdWVuY3knXSA9IHRoaXMuZnJlcXVlbmN5O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnNldHVwRmVlICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydzZXR1cEZlZSddID0gdGhpcy5zZXR1cEZlZTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5jb21taXRtZW50ICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLmNvbW1pdG1lbnQgIT09IG51bGwpIHt0b1JldHVyblsnY29tbWl0bWVudCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5jb21taXRtZW50ID8gKHRoaXMuY29tbWl0bWVudCBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5jb21taXRtZW50O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnByaWNpbmdSdWxlcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5wcmljaW5nUnVsZXMgIT09IG51bGwpIHt0b1JldHVyblsncHJpY2luZ1J1bGVzJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnByaWNpbmdSdWxlcyA/ICh0aGlzLnByaWNpbmdSdWxlcyBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy5wcmljaW5nUnVsZXM7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgRnJlcXVlbmN5UHJpY2VzIGltcGxlbWVudHMgaS5GcmVxdWVuY3lQcmljZXNJbnRlcmZhY2Uge1xuICAgIHByaWNlc0ZvckZyZXF1ZW5jaWVzOiBGcmVxdWVuY3lQcmljZVtdO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogRnJlcXVlbmN5UHJpY2VzIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgRnJlcXVlbmN5UHJpY2VzKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnByaWNlc0ZvckZyZXF1ZW5jaWVzKSB7bS5wcmljZXNGb3JGcmVxdWVuY2llcyA9IHByb3RvLnByaWNlc0ZvckZyZXF1ZW5jaWVzLm1hcChGcmVxdWVuY3lQcmljZS5mcm9tUHJvdG8pO31cbiAgICAgICAgcmV0dXJuIG07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3Ioa3dhcmdzPzogaS5GcmVxdWVuY3lQcmljZXNJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5wcmljZXNGb3JGcmVxdWVuY2llcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5wcmljZXNGb3JGcmVxdWVuY2llcyAhPT0gbnVsbCkge3RvUmV0dXJuWydwcmljZXNGb3JGcmVxdWVuY2llcyddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5wcmljZXNGb3JGcmVxdWVuY2llcyA/ICh0aGlzLnByaWNlc0ZvckZyZXF1ZW5jaWVzIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnByaWNlc0ZvckZyZXF1ZW5jaWVzO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnkgaW1wbGVtZW50cyBpLkFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnlJbnRlcmZhY2Uge1xuICAgIGtleTogc3RyaW5nO1xuICAgIHZhbHVlOiBBcHBQcmljZTtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IEFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnkge1xuICAgICAgICBsZXQgbSA9IG5ldyBBcHBQcmljZXNQcmljZXNGb3JDb250ZXh0c0VudHJ5KCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnZhbHVlKSB7bS52YWx1ZSA9IEFwcFByaWNlLmZyb21Qcm90byhwcm90by52YWx1ZSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkFwcFByaWNlc1ByaWNlc0ZvckNvbnRleHRzRW50cnlJbnRlcmZhY2UpIHtcbiAgICAgICAgaWYgKCFrd2FyZ3MpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMsIGt3YXJncyk7XG4gICAgfVxuXG4gICAgdG9BcGlKc29uKCk6IG9iamVjdCB7XG4gICAgICAgIGNvbnN0IHRvUmV0dXJuOiB7XG4gICAgICAgICAgICBba2V5OiBzdHJpbmddOiBhbnk7XG4gICAgICAgIH0gPSB7fTtcbiAgICAgICAgXG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5rZXkgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ2tleSddID0gdGhpcy5rZXk7fVxuICAgICAgICBpZiAodHlwZW9mIHRoaXMudmFsdWUgIT09ICd1bmRlZmluZWQnICYmIHRoaXMudmFsdWUgIT09IG51bGwpIHt0b1JldHVyblsndmFsdWUnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMudmFsdWUgPyAodGhpcy52YWx1ZSBhcyBhbnkpLnRvQXBpSnNvbigpIDogdGhpcy52YWx1ZTt9XG4gICAgICAgIHJldHVybiB0b1JldHVybjtcbiAgICB9XG59XG5cbmV4cG9ydCBjbGFzcyBVbml0UHJpY2VQcmljZXNGb3JDdXJyZW5jaWVzRW50cnkgaW1wbGVtZW50cyBpLlVuaXRQcmljZVByaWNlc0ZvckN1cnJlbmNpZXNFbnRyeUludGVyZmFjZSB7XG4gICAga2V5OiBzdHJpbmc7XG4gICAgdmFsdWU6IEZyZXF1ZW5jeVByaWNlcztcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFVuaXRQcmljZVByaWNlc0ZvckN1cnJlbmNpZXNFbnRyeSB7XG4gICAgICAgIGxldCBtID0gbmV3IFVuaXRQcmljZVByaWNlc0ZvckN1cnJlbmNpZXNFbnRyeSgpO1xuICAgICAgICBtID0gT2JqZWN0LmFzc2lnbihtLCBwcm90byk7XG4gICAgICAgIGlmIChwcm90by52YWx1ZSkge20udmFsdWUgPSBGcmVxdWVuY3lQcmljZXMuZnJvbVByb3RvKHByb3RvLnZhbHVlKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuVW5pdFByaWNlUHJpY2VzRm9yQ3VycmVuY2llc0VudHJ5SW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMua2V5ICE9PSAndW5kZWZpbmVkJykge3RvUmV0dXJuWydrZXknXSA9IHRoaXMua2V5O31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnZhbHVlICE9PSAndW5kZWZpbmVkJyAmJiB0aGlzLnZhbHVlICE9PSBudWxsKSB7dG9SZXR1cm5bJ3ZhbHVlJ10gPSAndG9BcGlKc29uJyBpbiB0aGlzLnZhbHVlID8gKHRoaXMudmFsdWUgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMudmFsdWU7fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgQXBwUHJpY2VQcmljZXNGb3JFZGl0aW9uc0VudHJ5IGltcGxlbWVudHMgaS5BcHBQcmljZVByaWNlc0ZvckVkaXRpb25zRW50cnlJbnRlcmZhY2Uge1xuICAgIGtleTogc3RyaW5nO1xuICAgIHZhbHVlOiBVbml0UHJpY2U7XG5cbiAgICBzdGF0aWMgZnJvbVByb3RvKHByb3RvOiBhbnkpOiBBcHBQcmljZVByaWNlc0ZvckVkaXRpb25zRW50cnkge1xuICAgICAgICBsZXQgbSA9IG5ldyBBcHBQcmljZVByaWNlc0ZvckVkaXRpb25zRW50cnkoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8udmFsdWUpIHttLnZhbHVlID0gVW5pdFByaWNlLmZyb21Qcm90byhwcm90by52YWx1ZSk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLkFwcFByaWNlUHJpY2VzRm9yRWRpdGlvbnNFbnRyeUludGVyZmFjZSkge1xuICAgICAgICBpZiAoIWt3YXJncykge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIE9iamVjdC5hc3NpZ24odGhpcywga3dhcmdzKTtcbiAgICB9XG5cbiAgICB0b0FwaUpzb24oKTogb2JqZWN0IHtcbiAgICAgICAgY29uc3QgdG9SZXR1cm46IHtcbiAgICAgICAgICAgIFtrZXk6IHN0cmluZ106IGFueTtcbiAgICAgICAgfSA9IHt9O1xuICAgICAgICBcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmtleSAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsna2V5J10gPSB0aGlzLmtleTt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy52YWx1ZSAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy52YWx1ZSAhPT0gbnVsbCkge3RvUmV0dXJuWyd2YWx1ZSddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy52YWx1ZSA/ICh0aGlzLnZhbHVlIGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLnZhbHVlO31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuZXhwb3J0IGNsYXNzIFByaWNpbmdSdWxlIGltcGxlbWVudHMgaS5QcmljaW5nUnVsZUludGVyZmFjZSB7XG4gICAgcHJpY2U6IG51bWJlcjtcbiAgICBtYXg6IG51bWJlcjtcbiAgICBtaW46IG51bWJlcjtcblxuICAgIHN0YXRpYyBmcm9tUHJvdG8ocHJvdG86IGFueSk6IFByaWNpbmdSdWxlIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgUHJpY2luZ1J1bGUoKTtcbiAgICAgICAgbSA9IE9iamVjdC5hc3NpZ24obSwgcHJvdG8pO1xuICAgICAgICBpZiAocHJvdG8ucHJpY2UpIHttLnByaWNlID0gcGFyc2VJbnQocHJvdG8ucHJpY2UsIDEwKTt9XG4gICAgICAgIGlmIChwcm90by5tYXgpIHttLm1heCA9IHBhcnNlSW50KHByb3RvLm1heCwgMTApO31cbiAgICAgICAgaWYgKHByb3RvLm1pbikge20ubWluID0gcGFyc2VJbnQocHJvdG8ubWluLCAxMCk7fVxuICAgICAgICByZXR1cm4gbTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3Rvcihrd2FyZ3M/OiBpLlByaWNpbmdSdWxlSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucHJpY2UgIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ3ByaWNlJ10gPSB0aGlzLnByaWNlO31cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm1heCAhPT0gJ3VuZGVmaW5lZCcpIHt0b1JldHVyblsnbWF4J10gPSB0aGlzLm1heDt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5taW4gIT09ICd1bmRlZmluZWQnKSB7dG9SZXR1cm5bJ21pbiddID0gdGhpcy5taW47fVxuICAgICAgICByZXR1cm4gdG9SZXR1cm47XG4gICAgfVxufVxuXG5leHBvcnQgY2xhc3MgVW5pdFByaWNlIGltcGxlbWVudHMgaS5Vbml0UHJpY2VJbnRlcmZhY2Uge1xuICAgIHByaWNlc0ZvckN1cnJlbmNpZXM6IHtba2V5OiBzdHJpbmddOiBGcmVxdWVuY3lQcmljZXN9O1xuICAgIGRpc2NvdW50OiBEaXNjb3VudFtdO1xuXG4gICAgc3RhdGljIGZyb21Qcm90byhwcm90bzogYW55KTogVW5pdFByaWNlIHtcbiAgICAgICAgbGV0IG0gPSBuZXcgVW5pdFByaWNlKCk7XG4gICAgICAgIG0gPSBPYmplY3QuYXNzaWduKG0sIHByb3RvKTtcbiAgICAgICAgaWYgKHByb3RvLnByaWNlc0ZvckN1cnJlbmNpZXMpIHttLnByaWNlc0ZvckN1cnJlbmNpZXMgPSBPYmplY3Qua2V5cyhwcm90by5wcmljZXNGb3JDdXJyZW5jaWVzKS5yZWR1Y2U8YW55Pigob2JqLCBrKSA9PiB7IG9ialtrXSA9IEZyZXF1ZW5jeVByaWNlcy5mcm9tUHJvdG8ocHJvdG8ucHJpY2VzRm9yQ3VycmVuY2llc1trXSk7IHJldHVybiBvYmo7IH0sIHt9KTt9XG4gICAgICAgIGlmIChwcm90by5kaXNjb3VudCkge20uZGlzY291bnQgPSBwcm90by5kaXNjb3VudC5tYXAoRGlzY291bnQuZnJvbVByb3RvKTt9XG4gICAgICAgIHJldHVybiBtO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKGt3YXJncz86IGkuVW5pdFByaWNlSW50ZXJmYWNlKSB7XG4gICAgICAgIGlmICgha3dhcmdzKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLCBrd2FyZ3MpO1xuICAgIH1cblxuICAgIHRvQXBpSnNvbigpOiBvYmplY3Qge1xuICAgICAgICBjb25zdCB0b1JldHVybjoge1xuICAgICAgICAgICAgW2tleTogc3RyaW5nXTogYW55O1xuICAgICAgICB9ID0ge307XG4gICAgICAgIFxuICAgICAgICBpZiAodHlwZW9mIHRoaXMucHJpY2VzRm9yQ3VycmVuY2llcyAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5wcmljZXNGb3JDdXJyZW5jaWVzICE9PSBudWxsKSB7dG9SZXR1cm5bJ3ByaWNlc0ZvckN1cnJlbmNpZXMnXSA9ICd0b0FwaUpzb24nIGluIHRoaXMucHJpY2VzRm9yQ3VycmVuY2llcyA/ICh0aGlzLnByaWNlc0ZvckN1cnJlbmNpZXMgYXMgYW55KS50b0FwaUpzb24oKSA6IHRoaXMucHJpY2VzRm9yQ3VycmVuY2llczt9XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5kaXNjb3VudCAhPT0gJ3VuZGVmaW5lZCcgJiYgdGhpcy5kaXNjb3VudCAhPT0gbnVsbCkge3RvUmV0dXJuWydkaXNjb3VudCddID0gJ3RvQXBpSnNvbicgaW4gdGhpcy5kaXNjb3VudCA/ICh0aGlzLmRpc2NvdW50IGFzIGFueSkudG9BcGlKc29uKCkgOiB0aGlzLmRpc2NvdW50O31cbiAgICAgICAgcmV0dXJuIHRvUmV0dXJuO1xuICAgIH1cbn1cblxuIl19