@tilde-nlp/ngx-translate 4.0.18 → 4.0.20

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 (40) hide show
  1. package/esm2022/lib/i18n/en.mjs +2 -3
  2. package/esm2022/lib/modules/tld-common/services/tld-translate-system-management.service.mjs +25 -24
  3. package/esm2022/lib/modules/tld-document/services/tld-translate-file.service.mjs +1 -1
  4. package/esm2022/lib/modules/tld-text/components/tld-translate-text/tld-translate-text.component.mjs +8 -4
  5. package/esm2022/lib/modules/tld-text/services/tld-translate-text.service.mjs +18 -3
  6. package/esm2022/lib/modules/tld-tooltip/models/index.mjs +1 -4
  7. package/esm2022/lib/modules/tld-tooltip/models/switcher-options.model.mjs +1 -1
  8. package/esm2022/lib/modules/tld-tooltip/tld-domain-list/tld-domain-list.component.mjs +2 -2
  9. package/esm2022/lib/modules/tld-tooltip/translation-system-picker/dropdown-body/translation-system-picker-dropdown-body.component.mjs +7 -7
  10. package/esm2022/lib/modules/tld-tooltip/translation-system-picker/models/translated-system.model.mjs +1 -1
  11. package/esm2022/lib/modules/tld-tooltip/translation-system-picker/system-list/translation-system-picker-system-list.component.mjs +3 -3
  12. package/esm2022/lib/modules/tld-tooltip/translation-system-picker/translation-system-picker.component.mjs +1 -1
  13. package/esm2022/lib/modules/tld-web/tld-translate-web/tld-translate-web.component.mjs +11 -1
  14. package/esm2022/lib/tld-translate.component.mjs +29 -11
  15. package/fesm2022/tilde-nlp-ngx-translate.mjs +96 -49
  16. package/fesm2022/tilde-nlp-ngx-translate.mjs.map +1 -1
  17. package/lib/i18n/en.d.ts +0 -1
  18. package/lib/modules/tld-common/services/tld-translate-system-management.service.d.ts +3 -3
  19. package/lib/modules/tld-document/services/tld-translate-file.service.d.ts +3 -4
  20. package/lib/modules/tld-text/components/tld-translate-text/tld-translate-text.component.d.ts +4 -3
  21. package/lib/modules/tld-text/services/tld-translate-text.service.d.ts +3 -0
  22. package/lib/modules/tld-tooltip/models/index.d.ts +0 -3
  23. package/lib/modules/tld-tooltip/models/switcher-options.model.d.ts +3 -4
  24. package/lib/modules/tld-tooltip/tld-domain-list/tld-domain-list.component.d.ts +6 -6
  25. package/lib/modules/tld-tooltip/translation-system-picker/dropdown-body/translation-system-picker-dropdown-body.component.d.ts +1 -1
  26. package/lib/modules/tld-tooltip/translation-system-picker/models/translated-system.model.d.ts +1 -1
  27. package/lib/modules/tld-tooltip/translation-system-picker/translation-system-picker.component.d.ts +4 -4
  28. package/lib/modules/tld-web/tld-translate-web/tld-translate-web.component.d.ts +5 -3
  29. package/lib/tld-translate.component.d.ts +5 -4
  30. package/package.json +1 -1
  31. package/src/assets/webcomponent/styles.css +1 -1
  32. package/src/assets/webcomponent/tld-translate.js +1 -1
  33. package/tilde-nlp-ngx-translate-4.0.20.tgz +0 -0
  34. package/esm2022/lib/modules/tld-tooltip/models/active-data.model.mjs +0 -2
  35. package/esm2022/lib/modules/tld-tooltip/models/domain.model.mjs +0 -2
  36. package/esm2022/lib/modules/tld-tooltip/models/vendor.model.mjs +0 -2
  37. package/lib/modules/tld-tooltip/models/active-data.model.d.ts +0 -24
  38. package/lib/modules/tld-tooltip/models/domain.model.d.ts +0 -8
  39. package/lib/modules/tld-tooltip/models/vendor.model.d.ts +0 -4
  40. package/tilde-nlp-ngx-translate-4.0.18.tgz +0 -0
@@ -125,8 +125,7 @@ export const i18n_en = {
125
125
  "E_12_TITLE": "Text size limit",
126
126
  "E_12": "Text size limit reached. Send less text in the request.",
127
127
  "E_12_SUPPORT": " To increase the text size limit, please contact <a href=\"mailto:{{email}}\"><strong>support</strong></a>.",
128
- "E_21_TITLE": "Machine translation engine is starting",
129
- "E_21": "You will be able to translate in a few moments.",
128
+ "E_21": "The translation engine is starting up, this may take a moment!",
130
129
  "E_22_TITLE": "Machine translation engine not found",
131
130
  "E_22": "Machine translation engine not found.",
132
131
  "E_22_SUPPORT": " Please contact <a href=\"mailto:{{email}}\"><strong>support</strong></a>.",
@@ -446,4 +445,4 @@ export const i18n_en = {
446
445
  "PAUSE": "Pause"
447
446
  }
448
447
  };
449
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvaTE4bi9lbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUc7SUFDckIsa0JBQWtCLEVBQUUsWUFBWTtJQUNoQyxVQUFVLEVBQUUsVUFBVTtJQUN0QixlQUFlLEVBQUU7UUFDZixVQUFVLEVBQUUsc0dBQXNHO1FBQ2xILGVBQWUsRUFBRSxZQUFZO1FBQzdCLG9CQUFvQixFQUFFLFFBQVE7UUFDOUIscUJBQXFCLEVBQUUsVUFBVTtRQUNqQyxxQkFBcUIsRUFBRSxVQUFVO1FBQ2pDLG9CQUFvQixFQUFFLFNBQVM7UUFDL0Isc0JBQXNCLEVBQUUsK0JBQStCO1FBQ3ZELDJCQUEyQixFQUFFLGdLQUFnSztRQUM3TCw0QkFBNEIsRUFBRSxpQ0FBaUM7UUFDL0QsaUNBQWlDLEVBQUUsa0tBQWtLO1FBQ3JNLHNDQUFzQyxFQUFFLHFDQUFxQztRQUM3RSxvQ0FBb0MsRUFBRSxvQ0FBb0M7UUFDMUUsaUNBQWlDLEVBQUUsd0JBQXdCO1FBQzNELHFDQUFxQyxFQUFFLGdCQUFnQjtRQUN2RCxnQ0FBZ0MsRUFBRSx1QkFBdUI7UUFDekQsbUNBQW1DLEVBQUUsRUFBRTtRQUN2QywrQkFBK0IsRUFBRSxFQUFFO1FBQ25DLGlDQUFpQyxFQUFFLDRCQUE0QjtRQUMvRCxtQ0FBbUMsRUFBRSxjQUFjO1FBQ25ELGtDQUFrQyxFQUFFLFVBQVU7UUFDOUMsNkJBQTZCLEVBQUUsa0dBQWtHO1FBQ2pJLE1BQU0sRUFBRSxPQUFPO1FBQ2YscUJBQXFCLEVBQUUsbUJBQW1CO1FBQzFDLHVCQUF1QixFQUFFLDhCQUE4QjtRQUN2RCx1QkFBdUIsRUFBRSx5QkFBeUI7UUFDbEQsOEJBQThCLEVBQUUsMEZBQTBGO1FBQzFILG9CQUFvQixFQUFFLDZMQUE2TDtRQUNuTixnQkFBZ0IsRUFBRSxxRkFBcUY7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LEtBQUs7UUFDWixPQUFPLEVBQUUsT0FBTztLQUNqQjtJQUNELGFBQWEsRUFBRTtRQUNiLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLGVBQWUsRUFBRSxtQkFBbUI7UUFDcEMsTUFBTSxFQUFFLFFBQVE7UUFDaEIsT0FBTyxFQUFFLE9BQU87UUFDaEIsUUFBUSxFQUFFLG9EQUFvRDtRQUM5RCxPQUFPLEVBQUUsWUFBWTtLQUN0QjtJQUNELGVBQWUsRUFBRTtRQUNmLFFBQVEsRUFBRSxnQkFBZ0I7UUFDMUIsUUFBUSxFQUFFLGNBQWM7UUFDeEIsb0JBQW9CLEVBQUUsa0JBQWtCO1FBQ3hDLHFCQUFxQixFQUFFLCtCQUErQjtRQUN0RCxlQUFlLEVBQUUsZUFBZTtRQUNoQyxtQkFBbUIsRUFBRSxZQUFZO1FBQ2pDLGVBQWUsRUFBRSxlQUFlO1FBQ2hDLGNBQWMsRUFBRSxtQkFBbUI7UUFDbkMsd0JBQXdCLEVBQUUsd0JBQXdCO1FBQ2xELHdCQUF3QixFQUFFLG1DQUFtQztLQUM5RDtJQUNELHFDQUFxQyxFQUFFO1FBQ3JDLE9BQU8sRUFBRSxzQ0FBc0M7UUFDL0MsYUFBYSxFQUFFLGdCQUFnQjtRQUMvQixzQkFBc0IsRUFBRSxxQkFBcUI7UUFDN0MseUJBQXlCLEVBQUUscUJBQXFCO0tBQ2pEO0lBQ0QsZ0JBQWdCLEVBQUU7UUFDaEIsTUFBTSxFQUFFLG9DQUFvQztRQUM1QyxjQUFjLEVBQUUsd0hBQXdIO0tBQ3pJO0lBQ0QsU0FBUyxFQUFFO1FBQ1QsY0FBYyxFQUFFLGNBQWM7S0FDL0I7SUFDRCxnQkFBZ0IsRUFBRTtRQUNoQixNQUFNLEVBQUUsUUFBUTtRQUNoQixPQUFPLEVBQUUsT0FBTztLQUNqQjtDQUNGLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgaTE4bl9lbiA9IHtcclxuICBcIlRFUk1fUE9SVEFMX05BTUVcIjogXCJUaWxkZSB0ZXJtXCIsXHJcbiAgXCJBUFBfTkFNRVwiOiBcIlRpbGRlIE1UXCIsXHJcbiAgXCJUTERfVFJBTlNMQVRFXCI6IHtcclxuICAgIFwiQkVTVF9OTVRcIjogXCJQcm91ZCB3aW5uZXIgb2YgdGhlIGJlc3QgbWFjaGluZSB0cmFuc2xhdGlvbiB0ZWNobm9sb2d5IGF0IFdNVCBDb21wZXRpdGlvbiBmb3IgdGhyZWUgeWVhcnMgaW4gYSByb3cuXCIsXHJcbiAgICBcIkJFU1RfTk1UX01PUkVcIjogXCJMZWFybiBtb3JlXCIsXHJcbiAgICBcIkNBTkNFTF9UUkFOU0xBVElPTlwiOiBcIkNhbmNlbFwiLFxyXG4gICAgXCJESUNUSU9OQVJZX0VYQU1QTEVTXCI6IFwiZXhhbXBsZXNcIixcclxuICAgIFwiRE9XTkxPQURfVFJBTlNMQVRFRFwiOiBcIkRvd25sb2FkXCIsXHJcbiAgICBcIkRPTUFJTlNfQVJJQV9MQUJFTFwiOiBcIkRvbWFpbnNcIixcclxuICAgIFwiRklMRV9ET1dOTE9BRF9TT1VSQ0VcIjogXCJEb3dubG9hZCBjb252ZXJ0ZWQgc291cmNlIFBERlwiLFxyXG4gICAgXCJGSUxFX0RPV05MT0FEX1NPVVJDRV9IRUxQXCI6IFwiUERGIGNvbnZlcnNpb24gbWF5IGNhdXNlIGZvcm1hdHRpbmcgZXJyb3JzIG9yIHRleHQgZGlzdG9ydGlvbi4gUGxlYXNlIGNoZWNrIHRoZSBjb252ZXJ0ZWQgZmlsZSBhbmQgZml4IHRoZSBlcnJvcnMgYmVmb3JlIHJlLXVwbG9hZGluZyB0aGUgZmlsZSBmb3IgdHJhbnNsYXRpb25cIixcclxuICAgIFwiRklMRV9ET1dOTE9BRF9TT1VSQ0VfSU1BR0VcIjogXCJEb3dubG9hZCBjb252ZXJ0ZWQgc291cmNlIGltYWdlXCIsXHJcbiAgICBcIkZJTEVfRE9XTkxPQURfU09VUkNFX0lNQUdFX0hFTFBcIjogXCJJbWFnZSBjb252ZXJzaW9uIG1heSBjYXVzZSBmb3JtYXR0aW5nIGVycm9ycyBvciB0ZXh0IGRpc3RvcnRpb24uIFBsZWFzZSBjaGVjayB0aGUgY29udmVydGVkIGZpbGUgYW5kIGZpeCB0aGUgZXJyb3JzIGJlZm9yZSByZS11cGxvYWRpbmcgdGhlIGZpbGUgZm9yIHRyYW5zbGF0aW9uXCIsXHJcbiAgICBcIkZJTEVfVEFOU0xBVElPTl9TVEFUVVNTX0lOSVRJQUxJWklOR1wiOiBcIkluaXRpYWxpemluZyB0cmFuc2xhdGlvbiBwcm9jZXNzLi4uXCIsXHJcbiAgICBcIkZJTEVfVEFOU0xBVElPTl9TVEFUVVNTX0VYVFJBQ1RJTkdcIjogXCJFeHRyYWN0aW5nIHRyYW5zbGF0YWJsZSBjb250ZW50Li4uXCIsXHJcbiAgICBcIkZJTEVfVEFOU0xBVElPTl9TVEFUVVNTX1dBSVRJTkdcIjogXCJTdGFydGluZyB0cmFuc2xhdG9yLi4uXCIsXHJcbiAgICBcIkZJTEVfVEFOU0xBVElPTl9TVEFUVVNTX1RSQU5TTEFUSU5HXCI6IFwiVHJhbnNsYXRpbmcuLi5cIixcclxuICAgIFwiRklMRV9UQU5TTEFUSU9OX1NUQVRVU1NfU0FWSU5HXCI6IFwiU2F2aW5nIHRyYW5zbGF0aW9uLi4uXCIsXHJcbiAgICBcIkZJTEVfVEFOU0xBVElPTl9TVEFUVVNTX0NPTVBMRVRFRFwiOiBcIlwiLFxyXG4gICAgXCJGSUxFX1RBTlNMQVRJT05fU1RBVFVTU19FUlJPUlwiOiBcIlwiLFxyXG4gICAgXCJGSUxFX1RBTlNMQVRJT05fU1RBVFVTU19RVUVVSU5HXCI6IFwiVHJhbnNsYXRpb24gaXMgc3RhcnRpbmcuLi5cIixcclxuICAgIFwiRklMRV9UQU5TTEFUSU9OX1NUQVRVU1NfVVBMT0FESU5HXCI6IFwiVXBsb2FkaW5nLi4uXCIsXHJcbiAgICBcIkZJTEVfVEFOU0xBVElPTl9TVEFUVVNTX1VQTE9BREVEXCI6IFwiVXBsb2FkZWRcIixcclxuICAgIFwiRklMRV9UQVJHRVRfUFJFVklFV19NRVNTQUdFXCI6IFwiVGhpcyBpcyBhIHByZXZpZXcgb2YgdGhlIHRyYW5zbGF0ZWQgZG9jdW1lbnQsIHBsZWFzZSBkb3dubG9hZCB0byByZWNlaXZlIGEgY29tcGxldGUgdHJhbnNsYXRpb24uXCIsXHJcbiAgICBcIkZST01cIjogXCJGcm9tOlwiLFxyXG4gICAgXCJQREZfRElTQ0xBSU1FUl9MSU5LXCI6IFwiU2VlIGhvdyB0byBmaXggaXRcIixcclxuICAgIFwiSU1BR0VfRElTQ0xBSU1FUl9MSU5LXCI6IFwiUmVhZCBhYm91dCBpbWFnZSBjb252ZXJzaW9uLlwiLFxyXG4gICAgXCJQUkVQQVJJTkdfVFJBTlNMQVRJT05cIjogXCJUcmFuc2xhdGlvbiBpcyBzdGFydGluZ1wiLFxyXG4gICAgXCJSRUdJU1RFUkVEX0ZPUk1BVFNfTE9HR0VEX0lOXCI6IFwiUmVnaXN0ZXJlZCB1c2VycyBoYXZlIGFjY2VzcyB0byB0aGUgZm9sbG93aW5nIGRvY3VtZW50IGZvcm1hdHMgdHJhbnNsYXRpb246IHt7Zm9ybWF0c319LlwiLFxyXG4gICAgXCJSRUdJU1RFUkVEX0ZPUk1BVFNcIjogXCJSZWdpc3RlcmVkIHVzZXJzIGhhdmUgYWNjZXNzIHRvIHRoZSBmb2xsb3dpbmcgZG9jdW1lbnQgZm9ybWF0cyB0cmFuc2xhdGlvbjoge3tmb3JtYXRzfX0uIFJlcXVlc3QgeW91ciBhY2Nlc3MgPGEgY2xhc3M9XFxcImFjY2VudC1jb2xvclxcXCIgdGFyZ2V0PVxcXCJibGFua1xcXCIgaHJlZj1cXFwie3tyZWdpc3Rlckxpbmt9fVxcXCI+aGVyZTwvYT4uXCIsXHJcbiAgICBcIlNPVVJDRV9GT1JNQVRTXCI6IFwiU2VjdXJlIHB1YmxpYyB0cmFuc2xhdGlvbiBzZXJ2aWNlIHN1cHBvcnRzIGZvbGxvd2luZyBkb2N1bWVudCBmb3JtYXRzOiB7e2Zvcm1hdHN9fTtcIixcclxuICAgIFwiU09VUkNFX1dPUkRfTElNSVRcIjogXCIgdHJhbnNsYXRpb24gYW1vdW50IGlzIGxpbWl0ZWQgdXAgdG8ge3tsaW1pdH19IHdvcmRzLlwiLFxyXG4gICAgXCJTT1VSQ0VfVE9PTFRJUFwiOiBcIlR5cGUgdGV4dCBvciBpbnNlcnQgbGluayB0byB0cmFuc2xhdGUuXCIsXHJcbiAgICBcIlNPVVJDRV9UT09MVElQX09OTFlfVEVYVFwiOiBcIlR5cGUgdGV4dCB0byB0cmFuc2xhdGUuXCIsXHJcbiAgICBcIlNPVVJDRV9UT09MVElQX1NFTlNJVElWRV9JTkZPXCI6IFwiRG8gbm90IHVzZSB7e2FwcE5hbWV9fSB0byB0cmFuc2xhdGUgY29uZmlkZW50aWFsIG9yIGNsYXNzaWZpZWQgaW5mb3JtYXRpb24gb3IgdGV4dHMgdGhhdCBjb250YWluIHNwZWNpYWwgY2F0ZWdvcmllcyBvZiBwZXJzb25hbCBkYXRhLCBzdWNoIGFzIG1lZGljYWwgZGF0YVwiLFxyXG4gICAgXCJUQVJHRVRfREVTQ1JJUFRJT05cIjogXCJNYWNoaW5lIHRyYW5zbGF0aW9uIGFsbG93cyB0byB1bmRlcnN0YW5kIHRoZSBtZWFuaW5nIG9mIGEgc291cmNlIHRleHQsIGJ1dCBjYW5ub3Qgc3Vic3RpdHV0ZSBhIGh1bWFuIHRyYW5zbGF0aW9uLlwiLFxyXG4gICAgXCJUT1wiOiBcIlRvOlwiLFxyXG4gICAgXCJURVhUX0NPUElFRFwiOiBcIlRyYW5zbGF0aW9uIGNvcGllZFwiLFxyXG4gICAgXCJTVUdHRVNUX0JVVFRPTlwiOiBcIlN1Z2dlc3QgdHJhbnNsYXRpb25cIixcclxuICAgIFwiU1VHR0VTVF9PUklHSU5BTF9MQUJFTFwiOiBcIk9yaWdpbmFsIHNlbnRlbmNlXCIsXHJcbiAgICBcIlNVR0dFU1RfU1VCTUlUX0JVVFRPTlwiOiBcIkNvbnRyaWJ1dGVcIixcclxuICAgIFwiU1VHR0VTVF9UUkFOU0xBVElPTl9MQUJFTFwiOiBcIlRyYW5zbGF0aW9uXCIsXHJcbiAgICBcIlNVR0dFU1RfVVNBR0VfSU5GT1wiOiBcIllvdXIgYW5vbnltaXplZCB0cmFuc2xhdGlvbiBzdWdnZXN0aW9uIHdpbGwgYmUgdXNlZCB0byBpbXByb3ZlIHRoZSBxdWFsaXR5IG9mIG1hY2hpbmUgdHJhbnNsYXRpb24uXCIsXHJcbiAgICBcIlRPT0xUSVBfQUNUSU9OXCI6IFwiVHJhbnNsYXRlXCIsXHJcbiAgICBcIlZFTkRPUlNfQVJJQV9MQUJFTFwiOiBcIlByb3ZpZGVyc1wiLFxyXG4gICAgXCJXT1JEX1RZUEVfQURKRUNUSVZFXCI6IFwiYWRqZWN0aXZlXCIsXHJcbiAgICBcIldPUkRfVFlQRV9OT1VOXCI6IFwibm91blwiLFxyXG4gICAgXCJXT1JEX1RZUEVfVkVSQlwiOiBcInZlcmJcIixcclxuICAgIFwiV09SRF9UWVBFX0FEVkVSQlwiOiBcImFkdmVyYlwiLFxyXG4gICAgXCJXT1JEX1RZUEVfQ09OSlVOQ1RJT05cIjogXCJjb25qdW5jdGlvblwiLFxyXG4gICAgXCJXT1JEX1RZUEVfSU5URVJKRUNUSU9OXCI6IFwiaW50ZXJqZWN0aW9uXCIsXHJcbiAgICBcIldPUkRfVFlQRV9QUk9OT1VOXCI6IFwicHJvbm91blwiLFxyXG4gICAgXCJET0NfV09SRF9DTlRfTElNSVRfTVNHX1RJVExFXCI6IFwiVHJhbnNsYXRpb24gbGltaXRcIixcclxuICAgIFwiRE9DX1dPUkRfQ05UX0xJTUlUX01TR1wiOiBcIk9ubHkgdGhlIGZpcnN0IHt7d29yZENvdW50fX0gd29yZHMgd2lsbCBiZSB0cmFuc2xhdGVkLlwiLFxyXG4gICAgXCJET0NfV09SRF9DTlRfTElNSVRfTVNHX1NVQlNDUklQVElPTlwiOiBcIiBZb3UgbmVlZCBhIFRpbGRlIE1UIHN1YnNjcmlwdGlvbiB0byB0cmFuc2xhdGUgZnVsbCBmaWxlcy4gPGEgaHJlZj1cXFwie3tyZWdpc3Rlckxpbmt9fT97e3F1ZXJ5U3RyaW5nfX1cXFwiPnN0YXJ0IHdpdGggYSBmcmVlIHRyaWFsPC9hPlwiLFxyXG4gICAgXCJFUlJPUl9OT19TWVNURU1TX0xPQURFRF9USVRMRVwiOiBcIk5vIHRyYW5zbGF0aW9uIGVuZ2luZXMgd2VyZSBsb2FkZWRcIixcclxuICAgIFwiRVJST1JfTk9fU1lTVEVNU19MT0FERURcIjogXCJGYWlsZWQgdG8gbG9hZCB0aGUgbWFjaGluZSB0cmFuc2xhdGlvbiBlbmdpbmVzLlwiLFxyXG4gICAgXCJFUlJPUl9OT19TWVNURU1TX0xPQURFRF9TVVBQT1JUXCI6IFwiIFBsZWFzZSByZWxvYWQgdGhlIHBhZ2Ugb3IgY29udGFjdCA8YSBocmVmPVxcXCJtYWlsdG86e3tlbWFpbH19XFxcIj48c3Ryb25nPiBzdXBwb3J0PC9zdHJvbmc+PC9hPi5cIixcclxuICAgIFwiUERGX1BBR0VfTElNSVRfTVNHX1RJVExFXCI6IFwiVHJhbnNsYXRpb24gbGltaXRcIixcclxuICAgIFwiUERGX1BBR0VfTElNSVRfTVNHXCI6IFwiT25seSB0aGUgZmlyc3QgcGFnZSB3aWxsIGJlIHRyYW5zbGF0ZWQuXCIsXHJcbiAgICBcIlBERl9QQUdFX0xJTUlUX01TR19TVUJTQ1JJUFRJT05cIjogXCIgWW91IG5lZWQgYSBUaWxkZSBNVCBzdWJzY3JpcHRpb24gdG8gdHJhbnNsYXRlIGZ1bGwgUERGIGZpbGVzLiA8YSBocmVmPVxcXCJ7e3JlZ2lzdGVyTGlua319P3t7cXVlcnlTdHJpbmd9fVxcXCI+c3RhcnQgd2l0aCBhIGZyZWUgdHJpYWw8L2E+XCIsXHJcbiAgICBcIkNMRUFSX1NPVVJDRV9UT09MVElQXCI6IFwiQ2xlYXIgdGV4dFwiXHJcbiAgfSxcclxuICBcIk1VTFRJUExFX0ZJTEVTXCI6IHtcclxuICAgIFwiQVBQRU5EXCI6IFwiQWRkIGZpbGVzXCIsXHJcbiAgICBcIkNMRUFSX0FMTFwiOiBcIkNhbmNlbFwiLFxyXG4gICAgXCJET1dOTE9BRFwiOiBcIkRvd25sb2FkXCIsXHJcbiAgICBcIlNUQVRVU1NfSU5JVElBTElaSU5HXCI6IFwiSW5pdGlhbGl6aW5nXCIsXHJcbiAgICBcIlNUQVRVU1NfRVhUUkFDVElOR1wiOiBcIkV4dHJhY3RpbmdcIixcclxuICAgIFwiU1RBVFVTU19XQUlUSU5HXCI6IFwiU3RhcnRpbmcgdHJhbnNsYXRvclwiLFxyXG4gICAgXCJTVEFUVVNTX1RSQU5TTEFUSU5HXCI6IFwiVHJhbnNsYXRpbmcge3twZXJjZW50fX0lXCIsXHJcbiAgICBcIlNUQVRVU1NfU0FWSU5HXCI6IFwiU2F2aW5nXCIsXHJcbiAgICBcIlNUQVRVU1NfQ09NUExFVEVEXCI6IFwiQ29tcGxldGVkXCIsXHJcbiAgICBcIlNUQVRVU1NfRVJST1JcIjogXCJFcnJvclwiLFxyXG4gICAgXCJTVEFUVVNTX1FVRVVJTkdcIjogXCJRdWV1aW5nXCIsXHJcbiAgICBcIlNUQVRVU1NfTk9UX1NUQVJURURcIjogXCJVcGxvYWRlZFwiLFxyXG4gICAgXCJTVEFUVVNTX1VQTE9BRElOR1wiOiBcIlVwbG9hZGluZy4uLlwiLFxyXG4gICAgXCJTVEFUVVNTX1VQTE9BREVEXCI6IFwiVXBsb2FkZWRcIixcclxuICAgIFwiVElUTEVfRklMRV9OQU1FXCI6IFwiRmlsZVwiLFxyXG4gICAgXCJUSVRMRV9TVEFUVVNTXCI6IFwiU3RhdHVzXCIsXHJcbiAgICBcIlRSQU5TTEFUSU9OX1NUQVRVU1NfTEFCRUxcIjogXCJTdGF0dXNcIixcclxuICAgIFwiUERGX0RJU0NMQUlNRVJcIjogXCJQREYgZG9jdW1lbnRzIG1heSBoYXZlIGZvcm1hdHRpbmcgb3IgdHJhbnNsYXRpb24gZXJyb3JzLlwiLFxyXG4gICAgXCJQREZfRElTQ0xBSU1FUl9MSU5LXCI6IFwiUmVhZCBhYm91dCBwZGYgY29udmVyc2lvbi5cIixcclxuICAgIFwiSU1BR0VfRElTQ0xBSU1FUlwiOiBcIkltYWdlIGNvbnZlcnNpb24gbWF5IGNhdXNlIGZvcm1hdHRpbmcgZXJyb3JzIG9yIHRleHQgZGlzdG9ydGlvbi5cIixcclxuICAgIFwiSU1BR0VfRElTQ0xBSU1FUl9MSU5LXCI6IFwiUmVhZCBhYm91dCBpbWFnZSBjb252ZXJzaW9uLlwiLFxyXG4gICAgXCJTQ1JFRU5fUkVBREVSX0FOTk9VTkNFTUVOVFwiOiBcInt7dHJhbnNsYXRlZH19IG91dCBvZiB7e3RvdGFsfX0gZmlsZXMgYXJlIHRyYW5zbGF0ZWQuXCIsXHJcbiAgICBcIlJFTU9WRV9GSUxFX1RPT0xUSVBcIjogXCJDbGVhciBmaWxlXCJcclxuICB9LFxyXG4gIFwiRVJST1JTXCI6IHtcclxuICAgIFwiRVJST1JfREVGQVVMVF9USVRMRVwiOiBcIlVuZXhwZWN0ZWQgZXJyb3JcIixcclxuICAgIFwiRVJST1JfREVGQVVMVFwiOiBcIkFuIHVuZXhwZWN0ZWQgZXJyb3Igb2NjdXJyZWQuIFBsZWFzZSB0cnkgYWdhaW4uXCIsXHJcbiAgICBcIkVSUk9SX0RFRkFVTFRfU1VQUE9SVFwiOiBcIiBJZiB0aGUgcHJvYmxlbSBjb250aW51ZXMsIGNvbnRhY3QgPGEgaHJlZj1cXFwibWFpbHRvOnt7ZW1haWx9fVxcXCI+PHN0cm9uZz5zdXBwb3J0PC9zdHJvbmc+PC9hPi5cIixcclxuICAgIFwiTUFYX0NIQVJfTEVOR1RIX1RJVExFXCI6IFwiVHJhbnNsYXRpb24gbGltaXRcIixcclxuICAgIFwiTUFYX0NIQVJfTEVOR1RIXCI6IFwiT25seSB7e21heENoYXJMZW5ndGh9fS97e3RvdGFsU3ltYm9sc319IGNoYXJhY3RlcnMgd2lsbCBiZSB0cmFuc2xhdGVkLlwiLFxyXG4gICAgXCJNQVhfQ0hBUl9MRU5HVEhfU1VCU0NSSVBUSU9OXCI6IFwiIFlvdSBuZWVkIGEgVGlsZGUgTVQgc3Vic2NyaXB0aW9uIGZvciB1bmxpbWl0ZWQgdGV4dCB0cmFuc2xhdGlvbi4gPGEgaHJlZj1cXFwie3tyZWdpc3Rlckxpbmt9fT97e3F1ZXJ5U3RyaW5nfX1cXFwiPnN0YXJ0IHdpdGggYSBmcmVlIHRyaWFsPC9hPlwiLFxyXG4gICAgXCJNQVhfTlVNQkVSX09GX0ZJTEVTX1RJVExFXCI6IFwiVXBsb2FkIGxpbWl0XCIsXHJcbiAgICBcIk1BWF9OVU1CRVJfT0ZfRklMRVNcIjogXCJPbmx5IHt7bGltaXR9fSBmaWxlcyBjYW4gYmUgdHJhbnNsYXRlZCBhdCBvbmNlLlwiLFxyXG4gICAgXCJJTkNSRUFTRV9NQVhfTlVNQkVSX09GX0ZJTEVTX1RJVExFXCI6IFwiVXBsb2FkIGxpbWl0XCIsXHJcbiAgICBcIklOQ1JFQVNFX01BWF9OVU1CRVJfT0ZfRklMRVNcIjogXCJPbmx5IDEgZmlsZSBjYW4gYmUgdHJhbnNsYXRlZCBhdCBvbmNlLiBZb3UgbmVlZCBhIFRpbGRlIE1UIHN1YnNjcmlwdGlvbiB0byBpbmNyZWFzZSBsaW1pdC4gPGEgaHJlZj1cXFwie3tyZWdpc3Rlckxpbmt9fT97e3F1ZXJ5U3RyaW5nfX1cXFwiPnN0YXJ0IHdpdGggYSBmcmVlIHRyaWFsPC9hPlwiLFxyXG4gICAgXCJGSUxFX0FMUkVBRFlfQURERURfVElUTEVcIjogXCJGaWxlIGhhcyBhbHJlYWR5IGJlZW4gYWRkZWRcIixcclxuICAgIFwiRklMRV9BTFJFQURZX0FEREVEXCI6IFwiRmlsZSBcXFwie3tmaWxlTmFtZX19XFxcIiBoYXMgYWxyZWFkeSBiZWVuIGFkZGVkLlwiLFxyXG4gICAgXCJVQU5VVEhPUklaRURfNDAxX1RJVExFXCI6IFwiVW5hdXRob3JpemVkXCIsXHJcbiAgICBcIlVBTlVUSE9SSVpFRF80MDFcIjogXCJZb3UgZG9uJ3QgaGF2ZSBwZXJtaXNzaW9uIHRvIHVzZSBtYWNoaW5lIHRyYW5zbGF0aW9uLlwiLFxyXG4gICAgXCJVQU5VVEhPUklaRURfNDAxX1NVUFBPUlRcIjogXCIgUGxlYXNlIGNvbnRhY3QgPGEgaHJlZj1cXFwibWFpbHRvOnt7ZW1haWx9fVxcXCI+PHN0cm9uZz4gc3VwcG9ydDwvc3Ryb25nPjwvYT4uXCIsXHJcbiAgICBcIkVfVU5LTk9XTl9GSUxFX1RZUEVcIjogXCJVbmtub3duIGZpbGUgdHlwZS5cIixcclxuICAgIFwiRV9DQU5OT1RfUkVBRF9GSUxFX1RJVExFXCI6IFwiVW5hYmxlIHRvIHJlYWQgZmlsZVwiLFxyXG4gICAgXCJFX0NBTk5PVF9SRUFEX0ZJTEVcIjogXCJUaGUgZmlsZSBcXFwie3tmaWxlTmFtZX19XFxcIiBpcyBjb3JydXB0ZWQgYW5kIGNvdWxkbid0IGJlIHRyYW5zbGF0ZWQuIENoZWNrIHRoZSBmaWxlIGFuZCB0cnkgYWdhaW4uXCIsXHJcbiAgICBcIkVfRkFJTEVEX0lOX1RSQU5TTEFUSU9OX1RJVExFXCI6IFwiVHJhbnNsYXRpb24gZmFpbGVkXCIsXHJcbiAgICBcIkVfRkFJTEVEX0lOX1RSQU5TTEFUSU9OXCI6IFwiRXJyb3Igb2NjdXJyZWQgd2hpbGUgdHJhbnNsYXRpbmcuIFBsZWFzZSB0cnkgYWdhaW4uXCIsXHJcbiAgICBcIkVfRkFJTEVEX0lOX1RSQU5TTEFUSU9OX1NVUFBPUlRcIjogXCIgSWYgdGhlIHByb2JsZW0gY29udGludWVzLCBjb250YWN0IDxhIGhyZWY9XFxcIm1haWx0bzp7e2VtYWlsfX1cXFwiPjxzdHJvbmc+IHN1cHBvcnQ8L3N0cm9uZz48L2E+LlwiLFxyXG4gICAgXCJFX0ZPUk1BVF9UUkFDS19DSEFOR0VTX1RJVExFXCI6IFwiVHJhbnNsYXRpb24gZmFpbGVkLCBiZWNhdXNlIOKAmHRyYWNrIGNoYW5nZXPigJkgaXMgdHVybmVkIG9uXCIsXHJcbiAgICBcIkVfRk9STUFUX1RSQUNLX0NIQU5HRVNcIjogXCJDaGFuZ2VzIG11c3QgZmlyc3QgYmUgYWNjZXB0ZWQgb3Ig4oCYdHJhY2sgY2hhbmdlc+KAmSB0dXJuZWQgb2ZmIGJlZm9yZSB0cmFuc2xhdGluZyBPZmZpY2UgZmlsZXMuXCIsXHJcbiAgICBcIkVfVU5LTk9XTl9FUlJPUl9USVRMRVwiOiBcIlVua25vd24gZXJyb3JcIixcclxuICAgIFwiRV9VTktOT1dOX0VSUk9SXCI6IFwiQW4gdW5rbm93biBlcnJvciBvY2N1cnJlZC5cIixcclxuICAgIFwiRV9VTkFVVEhPUklaRURfVElUTEVcIjogXCJVbmF1dGhvcml6ZWRcIixcclxuICAgIFwiRV9VTkFVVEhPUklaRURcIjogXCJEb2N1bWVudCB0cmFuc2xhdGlvbiB3YXMgZGVuaWVkLlwiLFxyXG4gICAgXCJDT0xMRUNUSU9OX0NSRUFURV9USVRMRVwiOiBcIkZhaWxlZCB0byBjcmVhdGUgYSBnbG9zc2FyeVwiLFxyXG4gICAgXCJDT0xMRUNUSU9OX0NSRUFURVwiOiBcIkZhaWxlZCB0byBjcmVhdGUgYSBuZXcgZ2xvc3NhcnkuIFBsZWFzZSB0cnkgYWdhaW4uXCIsXHJcbiAgICBcIkNPTExFQ1RJT05fQ1JFQVRFX1NVUFBPUlRcIjogXCIgSWYgdGhlIHByb2JsZW0gY29udGludWVzLCBjb250YWN0IDxhIGhyZWY9XFxcIm1haWx0bzp7e2VtYWlsfX1cXFwiPjxzdHJvbmc+c3VwcG9ydDwvc3Ryb25nPjwvYT4uXCIsXHJcbiAgICBcIkNPTExFQ1RJT05fSU1QT1JUX1RJVExFXCI6IFwiRmFpbGVkIHRvIGF0dGFjaCB0aGUgZ2xvc3NhcnlcIixcclxuICAgIFwiQ09MTEVDVElPTl9JTVBPUlRcIjogXCJGYWlsZWQgdG8gYXR0YWNoIHRoZSB0ZXJtIGNvbGxlY3Rpb24gd2l0aCBJRDoge3t0ZXJtSWR9fSB0byB0aGUgbWFjaGluZSB0cmFuc2xhdGlvbiBlbmdpbmUuIFBsZWFzZSB0cnkgYWdhaW4uXCIsXHJcbiAgICBcIkVfMTFcIjogXCJEYWlseSB0cmFuc2xhdGlvbiBsaW1pdCBoYXMgYmVlbiByZWFjaGVkLlwiLFxyXG4gICAgXCJFXzExX1NVUFBPUlRcIjogXCIgVG8gaW5jcmVhc2UgdGhlIGRhaWx5IGxpbWl0LCBwbGVhc2UgY29udGFjdCA8YSBocmVmPVxcXCJtYWlsdG86e3tlbWFpbH19XFxcIj48c3Ryb25nPnN1cHBvcnQ8L3N0cm9uZz48L2E+LlwiLFxyXG4gICAgXCJFXzEyX1RJVExFXCI6IFwiVGV4dCBzaXplIGxpbWl0XCIsXHJcbiAgICBcIkVfMTJcIjogXCJUZXh0IHNpemUgbGltaXQgcmVhY2hlZC4gU2VuZCBsZXNzIHRleHQgaW4gdGhlIHJlcXVlc3QuXCIsXHJcbiAgICBcIkVfMTJfU1VQUE9SVFwiOiBcIiBUbyBpbmNyZWFzZSB0aGUgdGV4dCBzaXplIGxpbWl0LCBwbGVhc2UgY29udGFjdCA8YSBocmVmPVxcXCJtYWlsdG86e3tlbWFpbH19XFxcIj48c3Ryb25nPnN1cHBvcnQ8L3N0cm9uZz48L2E+LlwiLFxyXG4gICAgXCJFXzIxX1RJVExFXCI6IFwiTWFjaGluZSB0cmFuc2xhdGlvbiBlbmdpbmUgaXMgc3RhcnRpbmdcIixcclxuICAgIFwiRV8yMVwiOiBcIllvdSB3aWxsIGJlIGFibGUgdG8gdHJhbnNsYXRlIGluIGEgZmV3IG1vbWVudHMuXCIsXHJcbiAgICBcIkVfMjJfVElUTEVcIjogXCJNYWNoaW5lIHRyYW5zbGF0aW9uIGVuZ2luZSBub3QgZm91bmRcIixcclxuICAgIFwiRV8yMlwiOiBcIk1hY2hpbmUgdHJhbnNsYXRpb24gZW5naW5lIG5vdCBmb3VuZC5cIixcclxuICAgIFwiRV8yMl9TVVBQT1JUXCI6IFwiIFBsZWFzZSBjb250YWN0IDxhIGhyZWY9XFxcIm1haWx0bzp7e2VtYWlsfX1cXFwiPjxzdHJvbmc+c3VwcG9ydDwvc3Ryb25nPjwvYT4uXCIsXHJcbiAgICBcIkVfMjNcIjogXCJNYWNoaW5lIHRyYW5zbGF0aW9uIGVuZ2luZSBpcyBub3Qgc3RhcnRlZC5cIixcclxuICAgIFwiRV8yM19TVVBQT1JUXCI6IFwiIENvbnRhY3QgPGEgaHJlZj1cXFwibWFpbHRvOnt7ZW1haWx9fVxcXCI+PHN0cm9uZz5zdXBwb3J0PC9zdHJvbmc+PC9hPi5cIixcclxuICAgIFwiRV80MVwiOiBcIlVua25vd24gdGVybSBjb3JwdXMgSUQgcHJvdmlkZWQuIFRlcm0gY29ycHVzIG11c3QgYmUgbGlua2VkIHRvIHRoZSBtYWNoaW5lIHRyYW5zbGF0aW9uIGVuZ2luZVwiLFxyXG4gICAgXCJFXzUwNFwiOiBcIlRyYW5zbGF0aW9uIGhhcyB0aW1lZCBvdXQuIFRyeSBhZ2FpbiBsYXRlci5cIixcclxuICAgIFwiRV81MDRfVElUTEVcIjogXCJUcmFuc2xhdGlvbiB0aW1lb3V0XCIsXHJcbiAgICBcIlRSQU5TTEFUSU9OX0ZBSUxFRF9USVRMRVwiOiBcIlRyYW5zbGF0aW9uIGZhaWxlZFwiLFxyXG4gICAgXCJUUkFOU0xBVElPTl9GQUlMRURcIjogXCJBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VycmVkLlwiLFxyXG4gICAgXCJUUkFOU0xBVElPTl9GQUlMRURfU1VQUE9SVFwiOiBcIiBJZiB0aGUgcHJvYmxlbSBjb250aW51ZXMsIGNvbnRhY3QgPGEgaHJlZj1cXFwibWFpbHRvOnt7ZW1haWx9fVxcXCI+PHN0cm9uZz5zdXBwb3J0PC9zdHJvbmc+PC9hPi5cIixcclxuICAgIFwiRklMRV9UUkFOU0xBVElPTl9TVUJTVEFUVVNcIjoge1xyXG4gICAgICBcIkJBRF9GSUxFX0VSUk9SX1RJVExFXCI6IFwiRmFpbGVkIHRvIHRyYW5zbGF0ZSB0aGUgZmlsZVwiLFxyXG4gICAgICBcIkJBRF9GSUxFX0VSUk9SXCI6IFwiVGhlIGZpbGUgaXMgY29ycnVwdGVkIGFuZCBjb3VsZG4ndCBiZSB0cmFuc2xhdGVkLiBDaGVjayB0aGUgZmlsZSBhbmQgdHJ5IGFnYWluLlwiLFxyXG4gICAgICBcIk5PX1RFWFRfRVhUUkFDVEVEX0VSUk9SX1RJVExFXCI6IFwiRmFpbGVkIHRvIGV4dHJhY3QgYW55IHRleHRcIixcclxuICAgICAgXCJOT19URVhUX0VYVFJBQ1RFRF9FUlJPUlwiOiBcIlRoZSBmaWxlIG1heSBiZSBlbXB0eS4gQ2hlY2sgdGhlIGZpbGUgYW5kIHRyeSBhZ2Fpbi5cIixcclxuICAgICAgXCJUUkFDS19DSEFOR0VTX0VOQUJMRURfRVJST1JfVElUTEVcIjogXCJUcmFuc2xhdGlvbiBmYWlsZWQsIGJlY2F1c2Ug4oCYdHJhY2sgY2hhbmdlc+KAmSBpcyB0dXJuZWQgb25cIixcclxuICAgICAgXCJUUkFDS19DSEFOR0VTX0VOQUJMRURfRVJST1JcIjogXCJDaGFuZ2VzIG11c3QgZmlyc3QgYmUgYWNjZXB0ZWQgb3Ig4oCYdHJhY2sgY2hhbmdlc+KAmSB0dXJuZWQgb2ZmIGJlZm9yZSB0cmFuc2xhdGluZyBPZmZpY2UgZmlsZXMuXCIsXHJcbiAgICAgIFwiVU5LTk9XTl9GSUxFX1RZUEVfRVJST1JfVElUTEVcIjogXCJVbmtub3duIGZpbGUgdHlwZVwiLFxyXG4gICAgICBcIlVOS05PV05fRklMRV9UWVBFX0VSUk9SXCI6IFwiRmlsZSB0eXBlIG5vdCByZWNvZ25pemVkLiBUaGUgZmlsZSBleHRlbnNpb24gbWF5IGJlIGluY29ycmVjdCwgb3IgdGhlIGZpbGUgbWF5IGJlIGNvcnJ1cHRlZC5cIlxyXG4gICAgfSxcclxuICAgIFwiRklMRV9VUExPQURcIjoge1xyXG4gICAgICBcIkZJTEVfVVBMT0FEX0VNUFRZX1RJVExFXCI6IFwiVGhlIGZpbGUgaXMgZW1wdHlcIixcclxuICAgICAgXCJGSUxFX1VQTE9BRF9FTVBUWVwiOiBcIlRoZSB1cGxvYWRlZCBmaWxlIFxcXCJ7e2ZpbGVOYW1lfX1cXFwiIGlzIGVtcHR5LiBTZWxlY3QgYSBmaWxlIHdpdGggY29udGVudC5cIixcclxuICAgICAgXCJGSUxFX1VQTE9BRF9NQVhfU0laRV9USVRMRVwiOiBcIkZpbGUgc2l6ZSBsaW1pdFwiLFxyXG4gICAgICBcIkZJTEVfVVBMT0FEX01BWF9TSVpFXCI6IFwiVGhlIHVwbG9hZGVkIGZpbGUgXFxcInt7ZmlsZU5hbWV9fVxcXCIgaXMgdG9vIGJpZy4gTWF4aW11bSBzaXplIHt7bWF4U2l6ZU1CfX1NQlwiLFxyXG4gICAgICBcIkZJTEVfVVBMT0FEX1VOU1VQUE9SVEVEX0ZPUk1BVF9USVRMRVwiOiBcIlVuc3VwcG9ydGVkIGZpbGUgZm9ybWF0XCIsXHJcbiAgICAgIFwiRklMRV9VUExPQURfVU5TVVBQT1JURURfRk9STUFUXCI6IFwiVGhlIHVwbG9hZGVkIGZpbGUgXFxcInt7ZmlsZU5hbWV9fVxcXCIgZm9ybWF0IGlzIG5vdCBzdXBwb3J0ZWQuIFRyYW5zbGF0aW9uIGlzIHN1cHBvcnRlZCBmb3IgdGhlc2UgZG9jdW1lbnQgZm9ybWF0czoge3tmb3JtYXRzfX0uXCIsXHJcbiAgICAgIFwiRklMRV9VUExPQURfVU5TVVBQT1JURURfRk9STUFUX1JFR0lTVEVSX1RJVExFXCI6IFwiVW5zdXBwb3J0ZWQgZmlsZSBmb3JtYXRcIixcclxuICAgICAgXCJGSUxFX1VQTE9BRF9VTlNVUFBPUlRFRF9GT1JNQVRfUkVHSVNURVJcIjogXCJZb3UgbmVlZCBUaWxkZSBNVCBzdWJzY3JpcHRpb24gdG8gdHJhbnNsYXRlIFxcXCJ7e2ZpbGVOYW1lfX1cXFwiIGZpbGUuIDxhIGhyZWY9XFxcInt7cmVnaXN0ZXJMaW5rfX0/e3txdWVyeVN0cmluZ319XFxcIj5zdGFydCB3aXRoIGEgZnJlZSB0cmlhbDwvYT5cIixcclxuICAgICAgXCJFXzQwNF9USVRMRVwiOiBcIkZpbGUgbm90IGZvdW5kXCIsXHJcbiAgICAgIFwiRV80MDRcIjogXCJUaGUgcmVxdWVzdGVkIGZpbGUgZG9lc24ndCBleGlzdFwiLFxyXG4gICAgICBcIkVfNDA0X1JFTU9WRV9USVRMRVwiOiBcIkZhaWxlZCB0byBkZWxldGUgdGhlIGZpbGVcIixcclxuICAgICAgXCJFXzQwNF9SRU1PVkVcIjogXCJGaWxlIGhhcyBhbHJlYWR5IGJlZW4gZGVsZXRlZFwiXHJcbiAgICB9LFxyXG4gICAgXCJBVURJT1wiOiB7XHJcbiAgICAgIFwiTk9fU1BFRUNIX1RJVExFXCI6IFwiTm8gc3BlZWNoXCIsXHJcbiAgICAgIFwiTk9fU1BFRUNIXCI6IFwiWW91ciByZWNvcmRpbmcgd2FzIHN0b3BwZWQuIFdlIGNvdWxkbid0IGhlYXIgeW91LlwiLFxyXG4gICAgICBcIk1BWF9USU1FX0VYQ0VFREVEX1RJVExFXCI6IFwiU3BlZWNoIGxpbWl0XCIsXHJcbiAgICAgIFwiTUFYX1RJTUVfRVhDRUVERURcIjogXCJZb3VyIHJlY29yZGluZyB3YXMgc3RvcHBlZC4gU3BlZWNoIGlucHV0IGlzIGxpbWl0ZWQgdG8ge3t0aW1lU3RyaW5nfX0uXCIsXHJcbiAgICAgIFwiTUlDX05PVF9BTExPV0VEX1RJVExFXCI6IFwiTWljcm9waG9uZSBhY2Nlc3MgZGVuaWVkXCIsXHJcbiAgICAgIFwiTUlDX05PVF9BTExPV0VEXCI6IFwiWW91IGhhdmUgZGVuaWVkIGFjY2VzcyB0byB0aGUgbWljcm9waG9uZS4gQ2hhbmdlIHBlcm1pc3Npb25zIGluIGJyb3dzZXIncyBzZXR0aW5ncy5cIixcclxuICAgICAgXCJNQVhfU0laRV9FWENFRURFRF9USVRMRVwiOiBcIlNwZWVjaCBsaW1pdFwiLFxyXG4gICAgICBcIk1BWF9TSVpFX0VYQ0VFREVEXCI6IFwiWW91ciByZWNvcmRpbmcgd2FzIHN0b3BwZWQgYW5kIHNlbnQgdG8gcHJvY2Vzc2luZy4gU3BlZWNoIGlucHV0IGlzIGxpbWl0ZWQgdG8gKHt7bWF4U2l6ZU1ifX1NQikgc2l6ZS5cIixcclxuICAgICAgXCJDQU5UX1NUQVJUX1JFQ09SRElOR19USVRMRVwiOiBcIkZhaWxlZCB0byBzdGFydCByZWNvcmRpbmdcIixcclxuICAgICAgXCJDQU5UX1NUQVJUX1JFQ09SRElOR1wiOiBcIlVuYWJsZSB0byBzdGFydCByZWNvcmRpbmcuIFBsZWFzZSB0cnkgYWdhaW4uXCIsXHJcbiAgICAgIFwiTk9fVEVYVF9SRUNPR05JWkVEX1RpdGxlXCI6IFwiTm8gc3BlZWNoIHJlY29nbml6ZWRcIixcclxuICAgICAgXCJOT19URVhUX1JFQ09HTklaRURcIjogXCJObyBzcGVlY2ggY291bGQgYmUgcmVjb2duaXplZC4gQ2hlY2sgeW91ciBtaWNyb3Bob25lIGFuZCB0cnkgYWdhaW4uXCJcclxuICAgIH1cclxuICB9LFxyXG4gIFwiUkFUSU5HXCI6IHt9LFxyXG4gIFwiTEFOR1VBR0VTXCI6IHtcclxuICAgIFwiQVJcIjogXCJBcmFiaWNcIixcclxuICAgIFwiTFZcIjogXCJMYXR2aWFuXCIsXHJcbiAgICBcIkVUXCI6IFwiRXN0b25pYW5cIixcclxuICAgIFwiREFcIjogXCJEYW5pc2hcIixcclxuICAgIFwiRklcIjogXCJGaW5uaXNoXCIsXHJcbiAgICBcIklTXCI6IFwiSWNlbGFuZGljXCIsXHJcbiAgICBcIkxUXCI6IFwiTGl0aHVhbmlhblwiLFxyXG4gICAgXCJOQlwiOiBcIk5vcndlZ2lhblwiLFxyXG4gICAgXCJTVlwiOiBcIlN3ZWRpc2hcIixcclxuICAgIFwiQkVcIjogXCJCZWxvcnVzc2lhblwiLFxyXG4gICAgXCJCR1wiOiBcIkJ1bGdhcmlhblwiLFxyXG4gICAgXCJDU1wiOiBcIkN6ZWNoXCIsXHJcbiAgICBcIkhVXCI6IFwiSHVuZ2FyaWFuXCIsXHJcbiAgICBcIlJVXCI6IFwiUnVzc2lhblwiLFxyXG4gICAgXCJNT1wiOiBcIk1vbGRhdmlhblwiLFxyXG4gICAgXCJQTFwiOiBcIlBvbGlzaFwiLFxyXG4gICAgXCJTS1wiOiBcIlNsb3Zha1wiLFxyXG4gICAgXCJVS1wiOiBcIlVrcmFpbmlhblwiLFxyXG4gICAgXCJOTFwiOiBcIkR1dGNoXCIsXHJcbiAgICBcIkVOXCI6IFwiRW5nbGlzaFwiLFxyXG4gICAgXCJGUlwiOiBcIkZyZW5jaFwiLFxyXG4gICAgXCJERVwiOiBcIkdlcm1hblwiLFxyXG4gICAgXCJHQVwiOiBcIklyaXNoXCIsXHJcbiAgICBcIkVMXCI6IFwiR3JlZWtcIixcclxuICAgIFwiSVRcIjogXCJJdGFsaWFuXCIsXHJcbiAgICBcIk1UXCI6IFwiTWFsdGVzZVwiLFxyXG4gICAgXCJQVFwiOiBcIlBvcnR1Z3Vlc2VcIixcclxuICAgIFwiU1JcIjogXCJTZXJiaWFuXCIsXHJcbiAgICBcIlNMXCI6IFwiU2xvdmVuaWFuXCIsXHJcbiAgICBcIkVTXCI6IFwiU3BhbmlzaFwiLFxyXG4gICAgXCJaSFwiOiBcIkNoaW5lc2VcIixcclxuICAgIFwiSkFcIjogXCJKYXBhbmVzZVwiLFxyXG4gICAgXCJLT1wiOiBcIktvcmVhblwiLFxyXG4gICAgXCJUUlwiOiBcIlR1cmtpc2hcIixcclxuICAgIFwiSFJcIjogXCJDcm9hdGlhblwiLFxyXG4gICAgXCJST1wiOiBcIlJvbWFuaWFuXCIsXHJcbiAgICBcIlVaXCI6IFwiVXpiZWtcIixcclxuICAgIFwiSURcIjogXCJJbmRvbmVzaWFuXCJcclxuICB9LFxyXG4gIFwiQVJJQV9MQUJFTFNcIjoge1xyXG4gICAgXCJDTE9TRV9CVVRUT05cIjogXCJDbGVhclwiLFxyXG4gICAgXCJDTEVBUl9OT1RJRklDQVRJT05cIjogXCJDbG9zZSBhbGVydFwiLFxyXG4gICAgXCJDTEVBUl9TT1VSQ0VcIjogXCJDbGVhciBlbnRlcmVkIHRleHRcIixcclxuICAgIFwiQ0xPU0VfRElBTE9HXCI6IFwiQ2xvc2UgZGlhbG9nXCIsXHJcbiAgICBcIkNMRUFSX0ZJTEVTXCI6IFwiQ2xlYXIgdXBsb2FkZWQgZmlsZXNcIixcclxuICAgIFwiU0hPV19FWFRFTlNJT05TXCI6IFwiU2hvdyBvdGhlciBkb3dubG9hZCBvcHRpb25zXCIsXHJcbiAgICBcIkNPUFlcIjogXCJDb3B5IHRvIGNsaXBib2FyZFwiLFxyXG4gICAgXCJSRUZSRVNIXCI6IFwiUmVmcmVzaCB0cmFuc2xhdGlvblwiLFxyXG4gICAgXCJPUEVOX0lOX05FV1wiOiBcIk9wZW4gaW4gbmV3IHRhYlwiLFxyXG4gICAgXCJTV0FQX0xBTkdVQUdFU1wiOiBcIlN3YXAgbGFuZ3VhZ2VzXCIsXHJcbiAgICBcIk9USEVSX0xBTkdVQUdFU19UUklHR0VSXCI6IFwiU2hvdyBvdGhlciBsYW5ndWFnZXNcIlxyXG4gIH0sXHJcbiAgXCJUT09MVElQU1wiOiB7XHJcbiAgICBcIkNPUFlcIjogXCJDb3B5IHRvIGNsaXBib2FyZFwiLFxyXG4gICAgXCJSRUZSRVNIXCI6IFwiUmVmcmVzaCB0cmFuc2xhdGlvblwiLFxyXG4gICAgXCJTV0FQX0xBTkdVQUdFU1wiOiBcIlN3YXAgbGFuZ3VhZ2VzXCJcclxuICB9LFxyXG4gIFwiUERGX0NPTlZFUlNJT05cIjoge1xyXG4gICAgXCJUSVRMRV8xXCI6IFwiUERGIHRyYW5zbGF0aW9uXCIsXHJcbiAgICBcIlBBUkFHUkFQSF8xXzFcIjogXCJXaGVuIGEgLnBkZiBmaWxlIGlzIHVwbG9hZGVkIGZvciB0cmFuc2xhdGlvbiBpdCBpcyBjb252ZXJ0ZWQgaW50byBhIHRyYW5zbGF0YWJsZSBmb3JtYXQuIEJvdGggc2Nhbm5lZCBhbmQgbmF0aXZlIC5wZGZzIGFyZSBzdXBwb3J0ZWQuIFRyYW5zbGF0aW9ucyBjYW4gYmUgZG93bmxvYWRlZCBpbiAuZG9jeCwgLnRteCBvciAucGRmIGZvcm1hdHMgYW5kIHdpbGwgcmV0YWluIHRoZSBiYXNpYyBmb3JtYXR0aW5nLiBGb3JtYXR0aW5nIGluIHRoZSB0cmFuc2xhdGVkIC5kb2N4IGFuZCAucGRmIGZpbGVzIG1heSBzbGlnaHRseSBkaWZmZXIuIFwiLFxyXG4gICAgXCJQQVJBR1JBUEhfMV8yXCI6IFwiQXMgY29udmVyc2lvbiB0YWtlcyB0aW1lLCB0byBzcGVlZCB0aGluZ3MgdXAgc3BsaXQgeW91ciAucGRmcyBhbmQgZGVsZXRlIHRoZSBwYWdlcyB3aXRoIG5vIHRyYW5zbGF0YWJsZSBpbmZvcm1hdGlvbi4gRmFjdG9ycyBsaWtlIHRoZSBudW1iZXIgb2YgcGFnZXMsIHF1YWxpdHkgYW5kIHRleHQgZGVuc2l0eSBhZmZlY3QgdGhlIHByb2Nlc3NpbmcgdGltZS5cIixcclxuICAgIFwiUEFSQUdSQVBIXzFfM1wiOiBcIlRvIGltcHJvdmUgdHJhbnNsYXRpb24gcGVyZm9ybWFuY2UsIHdlIHJlY29tbWVuZCB0byBkb3dubG9hZCB0aGUgY29udmVydGVkIGRvY3VtZW50IGluIHRoZSBvcmlnaW5hbCBsYW5ndWFnZSBhbmQgZml4IGl0IG1hbnVhbGx5IGJlZm9yZSByZS11cGxvYWRpbmcgZm9yIHRyYW5zbGF0aW9uLlwiLFxyXG4gICAgXCJJTUFHRV9BTFRfMVwiOiBcIlNvdXJjZSBQREYgZG93bmxvYWQgZXhhbXBsZVwiLFxyXG5cclxuICAgIFwiVElUTEVfMlwiOiBcIlBERiBjb252ZXJzaW9uXCIsXHJcbiAgICBcIlBBUkFHUkFQSF8yXzFcIjogXCJUaGUgZG9jdW1lbnQgaXMgYW5hbHlzZWQgYW5kIGl0cyBjb250ZW50IGlzIHNwbGl0IGluIHRleHQsIHRhYmxlIGFuZCBpbWFnZS9iYWNrZ3JvdW5kIGltYWdlIGFyZWFzLiBUaGV5IGFyZSBhbmFseXNlZCBmdXJ0aGVyIHRvIGRldGVybWluZSB3aGljaCBjb250ZW50IHNob3VsZCBiZSByZWNvZ25pemVkIGFzIHRleHQuXCIsXHJcbiAgICBcIlBBUkFHUkFQSF8yXzJcIjogXCJUZXh0dWFsIGRhdGEgYXJlIGFjcXVpcmVkIGJ5IG1lYW5zIG9mIE9DUiBvciBvcHRpY2FsIGNoYXJhY3RlciByZWNvZ25pdGlvbi4gRXZlcnkgY2hhcmFjdGVyIGlzIHJlY29nbml6ZWQgZGVwZW5kaW5nIG9uIGl0cyB2aXN1YWwgY2hhcmFjdGVyaXN0aWNzLCB0aGVuIGFzc2VtYmxlZCBpbnRvIHdvcmRzIGFuZCBzZW50ZW5jZXMuXCIsXHJcbiAgICBcIlBBUkFHUkFQSF8yXzNcIjogXCJSZWNvZ25pdGlvbiBpcyBhZmZlY3RlZCBieSBtYW55IGZhY3RvcnMsIGluY2x1ZGluZzpcIixcclxuICAgIFwiTElfMV8xXCI6IFwiUXVhbGl0eSBvZiB0aGUgc2Nhbm5lZCBkb2N1bWVudCAoYmx1cnJlZCBvciBkZWZvcm1lZCB0ZXh0LCBpbWFnZSBub2lzZSwgaW1hZ2UgcmVzb2x1dGlvbiwgY29udHJhc3QgZXRjLikuIEZvciB0aGUgYmVzdCByZXN1bHQsIC5wZGZzIHNob3VsZCBiZSBhdCBsZWFzdCAzMDAgZHBpLCB1bnNrZXdlZCBhbmQgbm9pc2UgZnJlZS5cIixcclxuICAgIFwiTElfMV8yXCI6IFwiRm9udCBzaXplLiBTaXplcyBzbWFsbGVyIHRoYW4gOSBwb2ludHMgbWlnaHQgYmUgcG9vcmx5IHJlY29nbml6ZWQuIFwiLFxyXG4gICAgXCJMSV8xXzNcIjogXCJSYXJlIGFuZCBvcmlnaW5hbCBmb250cy4gTGVzcyBjb21tb24gZm9udHMgbWF5IGJlIHVucmVjb2duaXphYmxlIG9yIHBlcmZvcm0gd29yc2UuXCIsXHJcbiAgICBcIkxJXzFfNFwiOiBcIkNvbXBsZXhpdHkgb2YgdGhlIGRvY3VtZW50IHN0cnVjdHVyZSBhbmQgZm9ybWF0dGluZy5cIixcclxuXHJcbiAgICBcIlRJVExFXzNcIjogXCJJbXByb3ZpbmcgdHJhbnNsYXRpb24gcGVyZm9ybWFuY2VcIixcclxuICAgIFwiUEFSQUdSQVBIXzNfMVwiOiBcIlRoZSBjb252ZXJzaW9uIHByb2Nlc3MgaXMgdmVyeSBjb21wbGV4IGFuZCBtYXkgYmUgYWZmZWN0ZWQgYnkgdmFyaW91cyBlcnJvcnMgcmVzdWx0aW5nIGZyb20gdGhlIGlucHV0IGRvY3VtZW50LiBcIixcclxuICAgIFwiUEFSQUdSQVBIXzNfMlwiOiBcIklzc3VlcyB0byBsb29rIGZvcjpcIixcclxuICAgIFwiTElfMl8xXCI6IFwiSW5jb3JyZWN0bHkgcmVjb2duaXplZCB3b3Jkcy5cIixcclxuICAgIFwiTElfMl8yXCI6IFwiSW5jb3JyZWN0IHdvcmQgYm91bmRhcmllcy5cIixcclxuICAgIFwiTElfMl8zXCI6IFwiU2VudGVuY2VzIHNwYW5uaW5nIG11bHRpcGxlIGNvbHVtbnMsIGxpbmVzIG9yIHBhZ2VzIHNwbGl0IGludG8gZGlmZmVyZW50IHRleHR1YWwgb2JqZWN0cy5cIixcclxuICAgIFwiTElfMl80XCI6IFwiTWlzcGxhY2VkIHBhZ2UgZm9vdGVycyBhbmQgaGVhZGVycy5cIixcclxuICAgIFwiTElfMl81XCI6IFwiSW5jb3JyZWN0IG51bWJlcmluZy5cIixcclxuICAgIFwiTElfMl82XCI6IFwiVGFibGVzIHJlY29nbml6ZWQgYXMgYmFja2dyb3VuZCBpbWFnZXMgd2l0aCB0ZXh0dWFsIGNvbnRlbnQgcGxhY2VkIGludG8gZGlmZmVyZW50IHRleHR1YWwgb2JqZWN0cy5cIixcclxuICAgIFwiTElfMl83XCI6IFwiU29tZSBkaWFncmFtcyByZWNvZ25pemVkIGFzIGltYWdlcyB3aXRob3V0IGFueSB0ZXh0dWFsIGNvbnRlbnQuXCIsXHJcbiAgICBcIkxJXzJfOFwiOiBcIlNlcGFyYXRvcnMsIGJvcmRlcnMgb3Igb3RoZXIgaG9yaXpvbnRhbCBsaW5lcyByZWNvZ25pemVkIGFzIHN0cmlrZXRocm91Z2ggb3IgdW5kZXJsaW5lZCB0ZXh0LlwiLFxyXG4gICAgXCJMSV8yXzlcIjogXCJGb3JtYXR0aW5nIG9mIHRoZSB0YWJsZSBvZiBjb250ZW50cyBvciBzaW1pbGFyIGxpc3RzIGNvbGxhcHNlZCBvciByZWNvZ25pemVkIGFzIHN0cmlrZXRocm91Z2ggb3IgdW5kZXJsaW5lZCB0ZXh0LlwiLFxyXG5cclxuICAgIFwiUEFSQUdSQVBIXzRfMVwiOiBcIjxiPk5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIGRvY3VtZW50IHdpbGwgbm90IHJldGFpbiBhbGwgZGV0YWlscyBvZiB0aGUgb3JpZ2luYWwgZm9ybWF0dGluZy48L2I+IFNvbWUgaW1hZ2VzLCB0YWJsZXMgb3IgZGlhZ3JhbXMgbWF5IGJlY29tZSBkaXN0b3J0ZWQgb3Igc2ltcGxpZmllZC4gRm9udHMgaW4gdGhlIHRyYW5zbGF0ZWQgZG9jdW1lbnQgd2lsbCBub3QgYmUgdGhlIHNhbWUgYXMgaW4gdGhlIG9yaWdpbmFsLCBidXQgbWF5IGJlIHNpbWlsYXIuIEluY29ycmVjdCBmb250IHNpemUgbWF5IGJlIHJlY29nbml6ZWQuIFNwZWNpZmljIFdvcmQgZm9ybWF0dGluZyBsaWtlIGhlYWRpbmdzLCB0YWJsZXMgb2YgY29udGVudCwgaGVhZGVycyBhbmQgZm9vdGVycywgbGFiZWxzLCBmb3JtcyBldGMuIHdpbGwgYmUgc3R5bGVkIHRvIGxvb2sgbGlrZSB0aGUgb3JpZ2luYWwsIGJ1dCB3aWxsIG5vdCBtYXRjaCB0aGUgb3JpZ2luYWwgY29tcGxldGVseSAoZS5nLiB0aXRsZXMgd2lsbCBiZSBib2xkIGFuZCBpbiBsYXJnZXIgZm9udCwgYnV0IHdpbGwgbm90IGJlIHNldCB0byB0aGUgaGVhZGluZyBzdHlsZSkuXCIsXHJcblxyXG4gICAgXCJDTE9TRVwiOiBcIkNsb3NlIGRpYWxvZ1wiXHJcbiAgfSxcclxuICBcIklNQUdFX0NPTlZFUlNJT05cIjoge1xyXG4gICAgXCJUSVRMRV8xXCI6IFwiSW1hZ2UgdHJhbnNsYXRpb25cIixcclxuICAgIFwiUEFSQUdSQVBIXzFfMVwiOiBcIldoZW4gYW4gaW1hZ2UgZmlsZSBpcyB1cGxvYWRlZCBmb3IgdHJhbnNsYXRpb24gaXQgaXMgY29udmVydGVkIGludG8gYSB0cmFuc2xhdGFibGUgZm9ybWF0LiBUcmFuc2xhdGlvbnMgY2FuIGJlIGRvd25sb2FkZWQgaW4gLmRvY3ggb3IgLnRteCBmb3JtYXRzIGFuZCB3aWxsIHJldGFpbiB0aGUgYmFzaWMgZm9ybWF0dGluZy5cIixcclxuICAgIFwiUEFSQUdSQVBIXzFfMlwiOiBcIjxiPlN1cHBvcnRlZCBpbWFnZSBmb3JtYXRzOjwvYj4gLmpwZywgLmpwZWcsIC5wbmcgYW5kIC5ibXAuXCIsXHJcbiAgICBcIlBBUkFHUkFQSF8xXzNcIjogXCJUbyBpbXByb3ZlIHRyYW5zbGF0aW9uIHBlcmZvcm1hbmNlLCB3ZSByZWNvbW1lbmQgdG8gZG93bmxvYWQgdGhlIGNvbnZlcnRlZCBkb2N1bWVudCBpbiB0aGUgb3JpZ2luYWwgbGFuZ3VhZ2UgYW5kIGZpeCBpdCBtYW51YWxseSBiZWZvcmUgcmUtdXBsb2FkaW5nIGZvciB0cmFuc2xhdGlvbi5cIixcclxuICAgIFwiSU1BR0VfQUxUXzFcIjogXCJTb3VyY2UgaW1hZ2UgZG93bmxvYWQgZXhhbXBsZVwiLFxyXG5cclxuICAgIFwiVElUTEVfMlwiOiBcIkltYWdlIGNvbnZlcnNpb25cIixcclxuICAgIFwiUEFSQUdSQVBIXzJfMVwiOiBcIlRoZSBpbWFnZSBpcyBhbmFseXNlZCBhbmQgaXRzIGNvbnRlbnQgaXMgc3BsaXQgaW4gdGV4dCwgdGFibGUgYW5kIGltYWdlL2JhY2tncm91bmQgaW1hZ2UgYXJlYXMuIFRoZXkgYXJlIGFuYWx5c2VkIGZ1cnRoZXIgdG8gZGV0ZXJtaW5lIHdoaWNoIGNvbnRlbnQgc2hvdWxkIGJlIHJlY29nbml6ZWQgYXMgdGV4dC5cIixcclxuICAgIFwiUEFSQUdSQVBIXzJfMlwiOiBcIlRleHR1YWwgZGF0YSBhcmUgYWNxdWlyZWQgYnkgbWVhbnMgb2YgT0NSIG9yIG9wdGljYWwgY2hhcmFjdGVyIHJlY29nbml0aW9uLiBFdmVyeSBjaGFyYWN0ZXIgaXMgcmVjb2duaXplZCBkZXBlbmRpbmcgb24gaXRzIHZpc3VhbCBjaGFyYWN0ZXJpc3RpY3MsIHRoZW4gYXNzZW1ibGVkIGludG8gd29yZHMgYW5kIHNlbnRlbmNlcy5cIixcclxuICAgIFwiUEFSQUdSQVBIXzJfM1wiOiBcIlJlY29nbml0aW9uIGlzIGFmZmVjdGVkIGJ5IG1hbnkgZmFjdG9ycywgaW5jbHVkaW5nOlwiLFxyXG4gICAgXCJMSV8xXzFcIjogXCJRdWFsaXR5IG9mIHRoZSBzY2FubmVkIGltYWdlIChibHVycmVkIG9yIGRlZm9ybWVkIHRleHQsIGltYWdlIG5vaXNlLCBpbWFnZSByZXNvbHV0aW9uLCBjb250cmFzdCBldGMuKS4gRm9yIHRoZSBiZXN0IHJlc3VsdCwgaW1hZ2VzIHNob3VsZCBiZSBhdCBsZWFzdCAzMDAgZHBpLCB1bnNrZXdlZCBhbmQgbm9pc2UgZnJlZS5cIixcclxuICAgIFwiTElfMV8yXCI6IFwiRm9udCBzaXplLiBTaXplcyBzbWFsbGVyIHRoYW4gOSBwb2ludHMgbWlnaHQgYmUgcG9vcmx5IHJlY29nbml6ZWQuIFwiLFxyXG4gICAgXCJMSV8xXzNcIjogXCJSYXJlIGFuZCBvcmlnaW5hbCBmb250cy4gTGVzcyBjb21tb24gZm9udHMgbWF5IGJlIHVucmVjb2duaXphYmxlIG9yIHBlcmZvcm0gd29yc2UuXCIsXHJcbiAgICBcIkxJXzFfNFwiOiBcIkNvbXBsZXhpdHkgb2YgdGhlIGRvY3VtZW50IHN0cnVjdHVyZSBhbmQgZm9ybWF0dGluZy5cIixcclxuXHJcbiAgICBcIlRJVExFXzNcIjogXCJJbXByb3ZpbmcgdHJhbnNsYXRpb24gcGVyZm9ybWFuY2VcIixcclxuICAgIFwiUEFSQUdSQVBIXzNfMVwiOiBcIlRoZSBjb252ZXJzaW9uIHByb2Nlc3MgaXMgdmVyeSBjb21wbGV4IGFuZCBtYXkgYmUgYWZmZWN0ZWQgYnkgdmFyaW91cyBlcnJvcnMgcmVzdWx0aW5nIGZyb20gdGhlIGlucHV0IGRvY3VtZW50LiBcIixcclxuICAgIFwiUEFSQUdSQVBIXzNfMlwiOiBcIklzc3VlcyB0byBsb29rIGZvcjpcIixcclxuICAgIFwiTElfMl8xXCI6IFwiSW5jb3JyZWN0bHkgcmVjb2duaXplZCB3b3Jkcy5cIixcclxuICAgIFwiTElfMl8yXCI6IFwiSW5jb3JyZWN0IHdvcmQgYm91bmRhcmllcy5cIixcclxuICAgIFwiTElfMl8zXCI6IFwiU2VudGVuY2VzIHNwYW5uaW5nIG11bHRpcGxlIGNvbHVtbnMsIGxpbmVzIG9yIHBhZ2VzIHNwbGl0IGludG8gZGlmZmVyZW50IHRleHR1YWwgb2JqZWN0cy5cIixcclxuICAgIFwiTElfMl80XCI6IFwiTWlzcGxhY2VkIHBhZ2UgZm9vdGVycyBhbmQgaGVhZGVycy5cIixcclxuICAgIFwiTElfMl81XCI6IFwiSW5jb3JyZWN0IG51bWJlcmluZy5cIixcclxuICAgIFwiTElfMl82XCI6IFwiVGFibGVzIHJlY29nbml6ZWQgYXMgYmFja2dyb3VuZCBpbWFnZXMgd2l0aCB0ZXh0dWFsIGNvbnRlbnQgcGxhY2VkIGludG8gZGlmZmVyZW50IHRleHR1YWwgb2JqZWN0cy5cIixcclxuICAgIFwiTElfMl83XCI6IFwiU29tZSBkaWFncmFtcyByZWNvZ25pemVkIGFzIGltYWdlcyB3aXRob3V0IGFueSB0ZXh0dWFsIGNvbnRlbnQuXCIsXHJcbiAgICBcIkxJXzJfOFwiOiBcIlNlcGFyYXRvcnMsIGJvcmRlcnMgb3Igb3RoZXIgaG9yaXpvbnRhbCBsaW5lcyByZWNvZ25pemVkIGFzIHN0cmlrZXRocm91Z2ggb3IgdW5kZXJsaW5lZCB0ZXh0LlwiLFxyXG5cclxuICAgIFwiUEFSQUdSQVBIXzRfMVwiOiBcIjxiPk5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIGRvY3VtZW50IHdpbGwgbm90IHJldGFpbiBhbGwgZGV0YWlscyBvZiB0aGUgb3JpZ2luYWwgZm9ybWF0dGluZy48L2I+IFNvbWUgaW1hZ2VzLCB0YWJsZXMgb3IgZGlhZ3JhbXMgbWF5IGJlY29tZSBkaXN0b3J0ZWQgb3Igc2ltcGxpZmllZC4gRm9udHMgaW4gdGhlIHRyYW5zbGF0ZWQgZG9jdW1lbnQgd2lsbCBub3QgYmUgdGhlIHNhbWUgYXMgaW4gdGhlIG9yaWdpbmFsLCBidXQgbWF5IGJlIHNpbWlsYXIuIEluY29ycmVjdCBmb250IHNpemUgbWF5IGJlIHJlY29nbml6ZWQuXCIsXHJcblxyXG4gICAgXCJDTE9TRVwiOiBcIkNsb3NlIGRpYWxvZ1wiXHJcbiAgfSxcclxuICBcIldFQlRSQU5TTEFURVwiOiB7XHJcbiAgICBcIkJBQ0tcIjogXCJCYWNrIHRvIFRyYW5zbGF0b3JcIixcclxuICAgIFwiQUREUkVTU1wiOiBcIkFkZHJlc3NcIixcclxuICAgIFwiTE9BRF9QQUdFXCI6IFwiTG9hZCBwYWdlXCIsXHJcbiAgICBcIlJFU1RPUkVcIjogXCJSZXN0b3JlXCIsXHJcbiAgICBcIkNBTkNFTFwiOiBcIkNhbmNlbFwiXHJcbiAgfSxcclxuICBcIkRBVEVfQUdPXCI6IHtcclxuICAgIFwiWUVBUlwiOiBcInt7dmFsdWV9fSB5ZWFyIGFnb1wiLFxyXG4gICAgXCJZRUFSU1wiOiBcInt7dmFsdWV9fSB5ZWFycyBhZ29cIixcclxuICAgIFwiTU9OVEhcIjogXCJ7e3ZhbHVlfX0gbW9udGggYWdvXCIsXHJcbiAgICBcIk1PTlRIU1wiOiBcInt7dmFsdWV9fSBtb250aHMgYWdvXCIsXHJcbiAgICBcIldFRUtcIjogXCJ7e3ZhbHVlfX0gd2VlayBhZ29cIixcclxuICAgIFwiV0VFS1NcIjogXCJ7e3ZhbHVlfX0gd2Vla3MgYWdvXCIsXHJcbiAgICBcIkRBWVwiOiBcInt7dmFsdWV9fSBkYXkgYWdvXCIsXHJcbiAgICBcIkRBWVNcIjogXCJ7e3ZhbHVlfX0gZGF5cyBhZ29cIixcclxuICAgIFwiSE9VUlwiOiBcInt7dmFsdWV9fSBob3VyIGFnb1wiLFxyXG4gICAgXCJIT1VSU1wiOiBcInt7dmFsdWV9fSBob3VycyBhZ29cIixcclxuICAgIFwiTUlOVVRFXCI6IFwie3t2YWx1ZX19IG1pbnV0ZSBhZ29cIixcclxuICAgIFwiTUlOVVRFU1wiOiBcInt7dmFsdWV9fSBtaW51dGVzIGFnb1wiLFxyXG4gICAgXCJTRUNPTkRcIjogXCJ7e3ZhbHVlfX0gc2Vjb25kIGFnb1wiLFxyXG4gICAgXCJTRUNPTkRTXCI6IFwie3t2YWx1ZX19IHNlY29uZHMgYWdvXCIsXHJcbiAgICBcIkpVU1RfTk9XXCI6IFwiSnVzdCBub3dcIlxyXG4gIH0sXHJcbiAgXCJURVJNX0NPTExFQ1RJT05TXCI6IHtcclxuICAgIFwiVElUTEVcIjogXCJHbG9zc2FyaWVzXCIsXHJcbiAgICBcIkRFRkFVTFRcIjogXCJEZWZhdWx0XCIsXHJcbiAgICBcIkRFU0NSSVBUSU9OXCI6IFwiQWNoaWV2ZSBwcmVjaXNlIGFuZCByZWxpYWJsZSB0cmFuc2xhdGlvbnMgYnkgY2hvb3NpbmcgdGhlIG1vc3Qgc3VpdGFibGUgZ2xvc3NhcnkgZnJvbSB0aGUgbGlzdC5cIixcclxuICAgIFwiR0xPU1NBUllcIjogXCJHbG9zc2FyeTogXCIsXHJcbiAgICBcIlNFTEVDVEVEX05PTkVcIjogXCJOb25lXCIsXHJcbiAgICBcIkVESVRcIjogXCJFZGl0XCIsXHJcbiAgICBcIkNSRUFURVwiOiBcIk5ldyBnbG9zc2FyeVwiLFxyXG4gICAgXCJERVNDUklQVElPTl9FTVBUWVwiOiBcIkNyZWF0ZSB5b3VyIGZpcnN0IGdsb3NzYXJ5IGZvciB7e3NyY0xhbmd9fS17e3RyZ0xhbmd9fVwiLFxyXG4gICAgXCJERVNDUklQVElPTl9FTVBUWV9BRFZJQ0VcIjogXCJGb3IgYmVzdCByZXN1bHRzIGluY2x1ZGUgdGVjaG5pY2FsIHRlcm1zLCBicmFuZCBuYW1lcywgYWNyb255bXMgYW5kIHN1cm5hbWVzLlwiLFxyXG4gICAgXCJMQVNUX1VQREFURURcIjogXCJMYXN0IHVwZGF0ZWQ6IHt7ZGF0ZX19XCIsXHJcbiAgICBcIkRFRkFVTFRfQ09MTEVDVElPTl9OQU1FXCI6IFwiTXkgdGVybSBjb2xsZWN0aW9uXCIsXHJcbiAgICBcIlNZTkNcIjogXCJTeW5jXCIsXHJcbiAgICBcIlNZTkNfRVJST1JcIjogXCJSZXRyeVwiLFxyXG4gICAgXCJURVJNU19JTl9VU0VcIjogXCJUZXJtcyBpbiB1c2U6IHt7dGVybUNvdW50fX1cIixcclxuICAgIFwiREVGQVVMVF9HTE9TU0FSWV9NQU5BR0VNRU5UXCI6IFwiRGVmYXVsdCBnbG9zc2FyeSBtYW5hZ2VtZW50XCIsXHJcbiAgICBcIkFSSUFfTEFCRUxTXCI6IHtcclxuICAgICAgXCJSQURJT19HUk9VUFwiOiBcIlNlbGVjdCBhIHRlcm0gY29sbGVjdGlvblwiLFxyXG4gICAgICBcIk9USEVSX0NPTExFQ1RJT05TXCI6IFwiT3BlbiB0aGUgY29sbGVjdGlvbiBtZW51XCJcclxuICAgIH0sXHJcbiAgICBcIkNSRUFURV9ESUFMT0dcIjoge1xyXG4gICAgICBcIkNBTkNFTFwiOiBcIkNhbmNlbFwiLFxyXG4gICAgICBcIkNPTExFQ1RJT05fTkFNRV9MQUJFTFwiOiBcIkdsb3NzYXJ5IG5hbWVcIixcclxuICAgICAgXCJDUkVBVEVcIjogXCJDcmVhdGVcIixcclxuICAgICAgXCJERVNDUklQVElPTl8xXCI6IFwiQWZ0ZXIgY2xpY2tpbmcg4oCcQ3JlYXRl4oCdIHlvdSB3aWxsIGJlIHJlZGlyZWN0ZWQgdG8gVGlsZGUgVGVybSB0byBhZGQgeW91ciB0ZXJtcy5cIixcclxuICAgICAgXCJERVNDUklQVElPTl8yXCI6IFwiPGk+KkFJIGlzIG5vdCBwZXJmZWN0IGFuZCBjYW4gbWFrZSBvY2Nhc2lvbmFsIG1pc3Rha2VzLiBZb3VyIHVuaXF1ZSB0ZXJtcyB3aWxsIGJlIHVzZWQgY29ycmVjdGx5IHdpdGggOTUlIGFjY3VyYWN5LjwvaT5cIixcclxuICAgICAgXCJUSVRMRVwiOiBcIkNyZWF0ZSBuZXcgZ2xvc3NhcnlcIixcclxuICAgICAgXCJDT0xMRUNUSU9OX05BTUVfRVJST1JcIjogXCJUaXRsZSBzaG91bGQgYmUgYXQgbGVhc3Qge3ttaW5MZW5ndGh9fSBzeW1ib2xzIGxvbmcgYW5kIG5vdCBsb25nZXIgdGhhbiB7e21heExlbmd0aH19IHN5bWJvbHNcIlxyXG4gICAgfSxcclxuICAgIFwiVE9PTFRJUFNcIjoge1xyXG4gICAgICBcIkVESVRcIjogXCJFZGl0IGdsb3NzYXJ5IGluIHRlcm1pbm9sb2d5IHBvcnRhbFwiLFxyXG4gICAgICBcIklNUE9SVElOR1wiOiBcIkltcG9ydGluZyBnbG9zc2FyeVwiLFxyXG4gICAgICBcIk5PX0VOVFJJRVNcIjogXCJUZXJtIGNvbGxlY3Rpb24gY2Fubm90IGJlIHVzZWQ6IG5vIHRlcm1zIGluIHNvdXJjZSBsYW5ndWFnZVwiLFxyXG4gICAgICBcIkRFRkFVTFRfQ09MTEVDVElPTlwiOiBcIlRoZXNlIHRlcm1zIGFyZSBub3cgaW4gdXNlLiBZb3UgY2FuIG1hbmFnZSB0aGVtIHRocm91Z2ggRGVmYXVsdCBnbG9zc2FyeSBtYW5hZ2VtZW50LiBcIixcclxuICAgICAgXCJTWU5DXCI6IFwiVXBkYXRlIHRoZSB0ZXJtIGNvbGxlY3Rpb25cIixcclxuICAgICAgXCJTWU5DSU5HXCI6IFwiVGVybSBjb2xsZWN0aW9uIGlzIHN5bmNlZCwgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoZSBjb2xsZWN0aW9uIHdpbGwgYmUgdXNlZFwiLFxyXG4gICAgICBcIkFUVEFDSF9UT19TWVNURU1fRVJST1JcIjogXCJBbiBlcnJvciBoYXMgb2NjdXJlZCB3aGlsZSBpbXBvcnRpbmcgdGhlIHRlcm0gY29sbGVjdGlvblwiXHJcbiAgICB9LFxyXG4gICAgXCJSRUFERVJcIjoge1xyXG4gICAgICBcIlRJVExFXCI6IFwiR2xvc3Nhcmllc1wiLFxyXG4gICAgICBcIkRFU0NSSVBUSU9OXCI6IFwiTm8gZ2xvc3NhcmllcyBjcmVhdGVkXCIsXHJcbiAgICAgIFwiSElOVFwiOiBcIllvdSBtdXN0IGJlIGEgVGVybWlub2xvZ3kgTWFuYWdlciB0byBjcmVhdGUgZ2xvc3Nhcmllc1wiXHJcbiAgICB9LFxyXG4gICAgXCJFUlJPUlNcIjoge1xyXG4gICAgICBcIkVSUk9SSU1QT1JUSU5HXCI6IFwiSW1wb3J0aW5nIGVycm9yXCJcclxuICAgIH1cclxuICB9LFxyXG4gIFwiRE9NQUlOU1wiOiB7XHJcbiAgICBcIk9QRU5fTElTVF9BUklBX0xBQkVMXCI6IFwiT3BlbiBkb21haW4gbGlzdFwiLFxyXG4gICAgXCJUSVRMRVwiOiBcIkRvbWFpbjpcIixcclxuICAgIFwiTEFXXCI6IFwiTGF3XCIsXHJcbiAgICBcIkRZTkFNSUNfTEVBUk5JTkdcIjogXCJEeW5hbWljIGxlYXJuaW5nXCIsXHJcbiAgICBcIkJVU0lORVNTXCI6IFwiQnVzaW5lc3NcIixcclxuICAgIFwiR0VORVJBTFwiOiBcIkdlbmVyYWxcIixcclxuICAgIFwiQVVUT1wiOiBcIkF1dG9kZXRlY3RcIixcclxuICAgIFwiU1BEXCI6IFwiRVUgRm9ybWFsIExhbmd1YWdlXCIsXHJcbiAgICBcIkdFTlwiOiBcIkdlbmVyYWwgVGV4dFwiLFxyXG4gICAgXCJFQ0JcIjogXCJGaW5hbmNlXCIsXHJcbiAgICBcIkVDSlwiOiBcIkV1cm9wZWFuIENvdXJ0IG9mIEp1c3RpY2VcIixcclxuICAgIFwiUFVCSEVBTFRIXCI6IFwiUHVibGljIEhlYWx0aFwiLFxyXG4gICAgXCJCVUJBXCI6IFwiRGV1dHNjaGUgQnVuZGVzYmFua1wiLFxyXG4gICAgXCJCRVJDWVwiOiBcIk1pbmlzdMOocmUgZGVzIEZpbmFuY2VzXCIsXHJcbiAgICBcIkVVUk9QRUFOQVwiOiBcIkV1cm9wZWFuYVwiLFxyXG4gICAgXCJJUE9cIjogXCJJUCBDYXNlIExhd1wiLFxyXG4gICAgXCJUUklTXCI6IFwiRW5naW5lcyBidWlsdCB1c2luZyBkYXRhIGZyb20gdGhlIHRlY2huaWNhbCByZWd1bGF0aW9uIGluZm9ybWF0aW9uIHN5c3RlbVwiLFxyXG4gICAgXCJWS1wiOiBcIlZhbHRpb25ldXZvc3RvbiBLYW5zbGlhXCIsXHJcbiAgICBcIkJVQkFfTk1UVEVTVFwiOiBcIkRldXRzY2hlIEJ1bmRlc2JhbmsgVGVzdFwiXHJcbiAgfSxcclxuICBcIkdSQU1NQVJfQ0hFQ0tfTUVOVVwiOiB7XHJcbiAgICBcIlRJVExFXCI6IFwiQ29uc2lkZXIgY2hhbmdpbmcgdG86XCJcclxuICB9LFxyXG4gIFwiQVVESU9cIjoge1xyXG4gICAgXCJDQU5DRUxcIjogXCJDYW5jZWxcIixcclxuICAgIFwiREVTQ1JJQkVfU1RBVEVfUkVDT1JESU5HXCI6IFwiUGxlYXNlIHNwZWFrIHRvIHJlY29yZC4uLlwiLFxyXG4gICAgXCJERVNDUklCRV9TVEFURV9QUk9DRVNTSU5HXCI6IFwiUHJvY2Vzc2luZy4uLlwiLFxyXG4gICAgXCJNSUNfTk9UX0ZPVU5EXCI6IFwiTWljcm9waG9uZSBub3QgZm91bmRcIixcclxuICAgIFwiU1RPUFwiOiBcIlN0b3AgcmVjb3JkaW5nXCIsXHJcbiAgICBcIlNUQVJUXCI6IFwiVHJhbnNsYXRlIHNwZWVjaFwiLFxyXG4gICAgXCJQVU5DVFVBVElPTl9NRVNTQUdFX1RJVExFXCI6IFwiQWRkIHB1bmN0dWF0aW9uXCIsXHJcbiAgICBcIlBVTkNUVUFUSU9OX01FU1NBR0VcIjogXCJQbGVhc2UgYWRkIHB1bmN0dWF0aW9uIHRvIHRoZSByZWNvZ25pemVkIHRleHQuIExvbmcgdGV4dCB3aXRob3V0IHB1bmN0dWF0aW9uIG1heSBoYXZlIGxvd2VyIHRyYW5zbGF0aW9uIHF1YWxpdHkgb3Igbm90IGJlIHRyYW5zbGF0ZWQuXCIsXHJcbiAgfSxcclxuICBcIkVYVEVOU0lPTl9QT1BVUFwiOiB7XHJcbiAgICBcIk9QRU5cIjogXCJzZWUgYWxsIHN1cHBvcnRlZCBmb3JtYXRzXCIsXHJcbiAgICBcIlRJVExFXCI6IFwiU3VwcG9ydGVkIGZpbGUgZm9ybWF0c1wiLFxyXG4gICAgXCJERVNDUklQVElPTlwiOiBcIlVURi04IG9yIFVURi0xNiBjb2RpbmcgcmVxdWlyZWQgdG8gZW5zdXJlIGNvcnJlY3QgZmlsZSB0cmFuc2xhdGlvblwiLFxyXG4gICAgXCJPRkZJQ0VcIjogXCJPZmZpY2VcIixcclxuICAgIFwiU0NBTk5FRFwiOiBcIkltYWdlIGZpbGVzXCIsXHJcbiAgICBcIklOVEVSQ0hBTkdFXCI6IFwiSW50ZXJjaGFuZ2UgZm9ybWF0c1wiLFxyXG4gICAgXCJXRUJcIjogXCJXZWJcIixcclxuICAgIFwiT1RIRVJcIjogXCJPdGhlclwiLFxyXG4gIH0sXHJcbiAgXCJGSUxFX1VQTE9BRFwiOiB7XHJcbiAgICBcIlVQTE9BRFwiOiBcIlVwbG9hZFwiLFxyXG4gICAgXCJEUkFHX0FORF9EUk9QXCI6IFwib3IgZHJhZyBhbmQgZHJvcCBcIixcclxuICAgIFwiRklMRVwiOiBcImEgZmlsZVwiLFxyXG4gICAgXCJGSUxFU1wiOiBcImZpbGVzXCIsXHJcbiAgICBcIkxJTUlUU1wiOiBcIiAoIHt7dmlzaWJsZUV4dGVuc2lvbnN9fS4gTWF4IHt7bWF4U2l6ZU1CfX0mbmJzcDspXCIsXHJcbiAgICBcIkNMRUFSXCI6IFwiQ2xlYXIgZmlsZVwiXHJcbiAgfSxcclxuICBcIlNZU1RFTV9QSUNLRVJcIjoge1xyXG4gICAgXCJTT1VSQ0VcIjogXCJUcmFuc2xhdGUgZnJvbVwiLFxyXG4gICAgXCJUQVJHRVRcIjogXCJUcmFuc2xhdGUgdG9cIixcclxuICAgIFwiU0VBUkNIX1BMQUNFSE9MREVSXCI6IFwiU2VhcmNoIGxhbmd1YWdlc1wiLFxyXG4gICAgXCJSRUNFTlRfU1lTVEVNX1RJVExFXCI6IFwiUmVjZW50IHRyYW5zbGF0aW9uIGRpcmVjdGlvbnNcIixcclxuICAgIFwiU0VMRUNUX0RPTUFJTlwiOiBcIlNlbGVjdCBkb21haW5cIixcclxuICAgIFwiRklMVEVSX05PX1JFU1VMVFNcIjogXCJObyByZXN1bHRzXCIsXHJcbiAgICBcIkFMTF9MQU5HVUFHRVNcIjogXCJBbGwgbGFuZ3VhZ2VzXCIsXHJcbiAgICBcIkNMRUFSX1NFQVJDSFwiOiBcIkNsZWFyIHNlYXJjaCB0ZXh0XCIsXHJcbiAgICBcIk9QRU5fU09VUkNFX0FSSUFfTEFCRUxcIjogXCJTZWxlY3Qgc291cmNlIGxhbmd1YWdlXCIsXHJcbiAgICBcIk9QRU5fVEFSR0VUX0FSSUFfTEFCRUxcIjogXCJTZWxlY3QgdGFyZ2V0IGxhbmd1YWdlIGFuZCBkb21haW5cIlxyXG4gIH0sXHJcbiAgXCJURVhUX1RSQU5TTEFUSU9OX1BST0dSRVNTX0lORElDQVRPUlwiOiB7XHJcbiAgICBcIlRJVExFXCI6IFwiVHJhbnNsYXRpb24gcHJvdmlkZWQgYnkge3twcm92aWRlcn19XCIsXHJcbiAgICBcIlRSQU5TTEFUSU5HXCI6IFwiVHJhbnNsYXRpbmcuLi5cIixcclxuICAgIFwiQ0xPU0VfQlVUVE9OX1RPT0xUSVBcIjogXCJSZW1vdmUgcHJvZ3Jlc3MgYmFyXCIsXHJcbiAgICBcIkNMT1NFX0JVVFRPTl9BUklBX0xBQkVMXCI6IFwiUmVtb3ZlIHByb2dyZXNzIGJhclwiXHJcbiAgfSxcclxuICBcIlZFTkRPUl9NRVNTQUdFXCI6IHtcclxuICAgIFwiVEVYVFwiOiBcIlRyYW5zbGF0aW9uIHByb3ZpZGVkIGJ5IHt7dmVuZG9yfX1cIixcclxuICAgIFwiSUNPTl9UT09MVElQXCI6IFwiU3lzdGVtcyBvZmZlcmVkIGJ5IHt7dmVuZG9yfX0gYXJlIHVzZWQgYnkgYSBodWdlIG51bWJlciBvZiB1c2Vycy4gVGhleSBtYXkgYmUgc2xvdyBhdCB0aW1lIGR1ZSB0byB0aGUgaGVhdnkgd29yayBsb2FkLlwiXHJcbiAgfSxcclxuICBcIlZFTkRPUlNcIjoge1xyXG4gICAgXCJFVFJBTlNMQVRJT05cIjogXCJlVHJhbnNsYXRpb25cIlxyXG4gIH0sXHJcbiAgXCJURVhUX1RPX1NQRUVDSFwiOiB7XHJcbiAgICBcIlBMQVlcIjogXCJMaXN0ZW5cIixcclxuICAgIFwiUEFVU0VcIjogXCJQYXVzZVwiXHJcbiAgfVxyXG59XHJcbiJdfQ==
448
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90bGQtdHJhbnNsYXRlL3NyYy9saWIvaTE4bi9lbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUc7SUFDckIsa0JBQWtCLEVBQUUsWUFBWTtJQUNoQyxVQUFVLEVBQUUsVUFBVTtJQUN0QixlQUFlLEVBQUU7UUFDZixVQUFVLEVBQUUsc0dBQXNHO1FBQ2xILGVBQWUsRUFBRSxZQUFZO1FBQzdCLG9CQUFvQixFQUFFLFFBQVE7UUFDOUIscUJBQXFCLEVBQUUsVUFBVTtRQUNqQyxxQkFBcUIsRUFBRSxVQUFVO1FBQ2pDLG9CQUFvQixFQUFFLFNBQVM7UUFDL0Isc0JBQXNCLEVBQUUsK0JBQStCO1FBQ3ZELDJCQUEyQixFQUFFLGdLQUFnSztRQUM3TCw0QkFBNEIsRUFBRSxpQ0FBaUM7UUFDL0QsaUNBQWlDLEVBQUUsa0tBQWtLO1FBQ3JNLHNDQUFzQyxFQUFFLHFDQUFxQztRQUM3RSxvQ0FBb0MsRUFBRSxvQ0FBb0M7UUFDMUUsaUNBQWlDLEVBQUUsd0JBQXdCO1FBQzNELHFDQUFxQyxFQUFFLGdCQUFnQjtRQUN2RCxnQ0FBZ0MsRUFBRSx1QkFBdUI7UUFDekQsbUNBQW1DLEVBQUUsRUFBRTtRQUN2QywrQkFBK0IsRUFBRSxFQUFFO1FBQ25DLGlDQUFpQyxFQUFFLDRCQUE0QjtRQUMvRCxtQ0FBbUMsRUFBRSxjQUFjO1FBQ25ELGtDQUFrQyxFQUFFLFVBQVU7UUFDOUMsNkJBQTZCLEVBQUUsa0dBQWtHO1FBQ2pJLE1BQU0sRUFBRSxPQUFPO1FBQ2YscUJBQXFCLEVBQUUsbUJBQW1CO1FBQzFDLHVCQUF1QixFQUFFLDhCQUE4QjtRQUN2RCx1QkFBdUIsRUFBRSx5QkFBeUI7UUFDbEQsOEJBQThCLEVBQUUsMEZBQTBGO1FBQzFILG9CQUFvQixFQUFFLDZMQUE2TDtRQUNuTixnQkFBZ0IsRUFBRSxxRkFBcUY7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QU87S0FDakI7SUFDRCxhQUFhLEVBQUU7UUFDYixRQUFRLEVBQUUsUUFBUTtRQUNsQixlQUFlLEVBQUUsbUJBQW1CO1FBQ3BDLE1BQU0sRUFBRSxRQUFRO1FBQ2hCLE9BQU8sRUFBRSxPQUFPO1FBQ2hCLFFBQVEsRUFBRSxvREFBb0Q7UUFDOUQsT0FBTyxFQUFFLFlBQVk7S0FDdEI7SUFDRCxlQUFlLEVBQUU7UUFDZixRQUFRLEVBQUUsZ0JBQWdCO1FBQzFCLFFBQVEsRUFBRSxjQUFjO1FBQ3hCLG9CQUFvQixFQUFFLGtCQUFrQjtRQUN4QyxxQkFBcUIsRUFBRSwrQkFBK0I7UUFDdEQsZUFBZSxFQUFFLGVBQWU7UUFDaEMsbUJBQW1CLEVBQUUsWUFBWTtRQUNqQyxlQUFlLEVBQUUsZUFBZTtRQUNoQyxjQUFjLEVBQUUsbUJBQW1CO1FBQ25DLHdCQUF3QixFQUFFLHdCQUF3QjtRQUNsRCx3QkFBd0IsRUFBRSxtQ0FBbUM7S0FDOUQ7SUFDRCxxQ0FBcUMsRUFBRTtRQUNyQyxPQUFPLEVBQUUsc0NBQXNDO1FBQy9DLGFBQWEsRUFBRSxnQkFBZ0I7UUFDL0Isc0JBQXNCLEVBQUUscUJBQXFCO1FBQzdDLHlCQUF5QixFQUFFLHFCQUFxQjtLQUNqRDtJQUNELGdCQUFnQixFQUFFO1FBQ2hCLE1BQU0sRUFBRSxvQ0FBb0M7UUFDNUMsY0FBYyxFQUFFLHdIQUF3SDtLQUN6STtJQUNELFNBQVMsRUFBRTtRQUNULGNBQWMsRUFBRSxjQUFjO0tBQy9CO0lBQ0QsZ0JBQWdCLEVBQUU7UUFDaEIsTUFBTSxFQUFFLFFBQVE7UUFDaEIsT0FBTyxFQUFFLE9BQU87S0FDakI7Q0FDRixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IGkxOG5fZW4gPSB7XHJcbiAgXCJURVJNX1BPUlRBTF9OQU1FXCI6IFwiVGlsZGUgdGVybVwiLFxyXG4gIFwiQVBQX05BTUVcIjogXCJUaWxkZSBNVFwiLFxyXG4gIFwiVExEX1RSQU5TTEFURVwiOiB7XHJcbiAgICBcIkJFU1RfTk1UXCI6IFwiUHJvdWQgd2lubmVyIG9mIHRoZSBiZXN0IG1hY2hpbmUgdHJhbnNsYXRpb24gdGVjaG5vbG9neSBhdCBXTVQgQ29tcGV0aXRpb24gZm9yIHRocmVlIHllYXJzIGluIGEgcm93LlwiLFxyXG4gICAgXCJCRVNUX05NVF9NT1JFXCI6IFwiTGVhcm4gbW9yZVwiLFxyXG4gICAgXCJDQU5DRUxfVFJBTlNMQVRJT05cIjogXCJDYW5jZWxcIixcclxuICAgIFwiRElDVElPTkFSWV9FWEFNUExFU1wiOiBcImV4YW1wbGVzXCIsXHJcbiAgICBcIkRPV05MT0FEX1RSQU5TTEFURURcIjogXCJEb3dubG9hZFwiLFxyXG4gICAgXCJET01BSU5TX0FSSUFfTEFCRUxcIjogXCJEb21haW5zXCIsXHJcbiAgICBcIkZJTEVfRE9XTkxPQURfU09VUkNFXCI6IFwiRG93bmxvYWQgY29udmVydGVkIHNvdXJjZSBQREZcIixcclxuICAgIFwiRklMRV9ET1dOTE9BRF9TT1VSQ0VfSEVMUFwiOiBcIlBERiBjb252ZXJzaW9uIG1heSBjYXVzZSBmb3JtYXR0aW5nIGVycm9ycyBvciB0ZXh0IGRpc3RvcnRpb24uIFBsZWFzZSBjaGVjayB0aGUgY29udmVydGVkIGZpbGUgYW5kIGZpeCB0aGUgZXJyb3JzIGJlZm9yZSByZS11cGxvYWRpbmcgdGhlIGZpbGUgZm9yIHRyYW5zbGF0aW9uXCIsXHJcbiAgICBcIkZJTEVfRE9XTkxPQURfU09VUkNFX0lNQUdFXCI6IFwiRG93bmxvYWQgY29udmVydGVkIHNvdXJjZSBpbWFnZVwiLFxyXG4gICAgXCJGSUxFX0RPV05MT0FEX1NPVVJDRV9JTUFHRV9IRUxQXCI6IFwiSW1hZ2UgY29udmVyc2lvbiBtYXkgY2F1c2UgZm9ybWF0dGluZyBlcnJvcnMgb3IgdGV4dCBkaXN0b3J0aW9uLiBQbGVhc2UgY2hlY2sgdGhlIGNvbnZlcnRlZCBmaWxlIGFuZCBmaXggdGhlIGVycm9ycyBiZWZvcmUgcmUtdXBsb2FkaW5nIHRoZSBmaWxlIGZvciB0cmFuc2xhdGlvblwiLFxyXG4gICAgXCJGSUxFX1RBTlNMQVRJT05fU1RBVFVTU19JTklUSUFMSVpJTkdcIjogXCJJbml0aWFsaXppbmcgdHJhbnNsYXRpb24gcHJvY2Vzcy4uLlwiLFxyXG4gICAgXCJGSUxFX1RBTlNMQVRJT05fU1RBVFVTU19FWFRSQUNUSU5HXCI6IFwiRXh0cmFjdGluZyB0cmFuc2xhdGFibGUgY29udGVudC4uLlwiLFxyXG4gICAgXCJGSUxFX1RBTlNMQVRJT05fU1RBVFVTU19XQUlUSU5HXCI6IFwiU3RhcnRpbmcgdHJhbnNsYXRvci4uLlwiLFxyXG4gICAgXCJGSUxFX1RBTlNMQVRJT05fU1RBVFVTU19UUkFOU0xBVElOR1wiOiBcIlRyYW5zbGF0aW5nLi4uXCIsXHJcbiAgICBcIkZJTEVfVEFOU0xBVElPTl9TVEFUVVNTX1NBVklOR1wiOiBcIlNhdmluZyB0cmFuc2xhdGlvbi4uLlwiLFxyXG4gICAgXCJGSUxFX1RBTlNMQVRJT05fU1RBVFVTU19DT01QTEVURURcIjogXCJcIixcclxuICAgIFwiRklMRV9UQU5TTEFUSU9OX1NUQVRVU1NfRVJST1JcIjogXCJcIixcclxuICAgIFwiRklMRV9UQU5TTEFUSU9OX1NUQVRVU1NfUVVFVUlOR1wiOiBcIlRyYW5zbGF0aW9uIGlzIHN0YXJ0aW5nLi4uXCIsXHJcbiAgICBcIkZJTEVfVEFOU0xBVElPTl9TVEFUVVNTX1VQTE9BRElOR1wiOiBcIlVwbG9hZGluZy4uLlwiLFxyXG4gICAgXCJGSUxFX1RBTlNMQVRJT05fU1RBVFVTU19VUExPQURFRFwiOiBcIlVwbG9hZGVkXCIsXHJcbiAgICBcIkZJTEVfVEFSR0VUX1BSRVZJRVdfTUVTU0FHRVwiOiBcIlRoaXMgaXMgYSBwcmV2aWV3IG9mIHRoZSB0cmFuc2xhdGVkIGRvY3VtZW50LCBwbGVhc2UgZG93bmxvYWQgdG8gcmVjZWl2ZSBhIGNvbXBsZXRlIHRyYW5zbGF0aW9uLlwiLFxyXG4gICAgXCJGUk9NXCI6IFwiRnJvbTpcIixcclxuICAgIFwiUERGX0RJU0NMQUlNRVJfTElOS1wiOiBcIlNlZSBob3cgdG8gZml4IGl0XCIsXHJcbiAgICBcIklNQUdFX0RJU0NMQUlNRVJfTElOS1wiOiBcIlJlYWQgYWJvdXQgaW1hZ2UgY29udmVyc2lvbi5cIixcclxuICAgIFwiUFJFUEFSSU5HX1RSQU5TTEFUSU9OXCI6IFwiVHJhbnNsYXRpb24gaXMgc3RhcnRpbmdcIixcclxuICAgIFwiUkVHSVNURVJFRF9GT1JNQVRTX0xPR0dFRF9JTlwiOiBcIlJlZ2lzdGVyZWQgdXNlcnMgaGF2ZSBhY2Nlc3MgdG8gdGhlIGZvbGxvd2luZyBkb2N1bWVudCBmb3JtYXRzIHRyYW5zbGF0aW9uOiB7e2Zvcm1hdHN9fS5cIixcclxuICAgIFwiUkVHSVNURVJFRF9GT1JNQVRTXCI6IFwiUmVnaXN0ZXJlZCB1c2VycyBoYXZlIGFjY2VzcyB0byB0aGUgZm9sbG93aW5nIGRvY3VtZW50IGZvcm1hdHMgdHJhbnNsYXRpb246IHt7Zm9ybWF0c319LiBSZXF1ZXN0IHlvdXIgYWNjZXNzIDxhIGNsYXNzPVxcXCJhY2NlbnQtY29sb3JcXFwiIHRhcmdldD1cXFwiYmxhbmtcXFwiIGhyZWY9XFxcInt7cmVnaXN0ZXJMaW5rfX1cXFwiPmhlcmU8L2E+LlwiLFxyXG4gICAgXCJTT1VSQ0VfRk9STUFUU1wiOiBcIlNlY3VyZSBwdWJsaWMgdHJhbnNsYXRpb24gc2VydmljZSBzdXBwb3J0cyBmb2xsb3dpbmcgZG9jdW1lbnQgZm9ybWF0czoge3tmb3JtYXRzfX07XCIsXHJcbiAgICBcIlNPVVJDRV9XT1JEX0xJTUlUXCI6IFwiIHRyYW5zbGF0aW9uIGFtb3VudCBpcyBsaW1pdGVkIHVwIHRvIHt7bGltaXR9fSB3b3Jkcy5cIixcclxuICAgIFwiU09VUkNFX1RPT0xUSVBcIjogXCJUeXBlIHRleHQgb3IgaW5zZXJ0IGxpbmsgdG8gdHJhbnNsYXRlLlwiLFxyXG4gICAgXCJTT1VSQ0VfVE9PTFRJUF9PTkxZX1RFWFRcIjogXCJUeXBlIHRleHQgdG8gdHJhbnNsYXRlLlwiLFxyXG4gICAgXCJTT1VSQ0VfVE9PTFRJUF9TRU5TSVRJVkVfSU5GT1wiOiBcIkRvIG5vdCB1c2Uge3thcHBOYW1lfX0gdG8gdHJhbnNsYXRlIGNvbmZpZGVudGlhbCBvciBjbGFzc2lmaWVkIGluZm9ybWF0aW9uIG9yIHRleHRzIHRoYXQgY29udGFpbiBzcGVjaWFsIGNhdGVnb3JpZXMgb2YgcGVyc29uYWwgZGF0YSwgc3VjaCBhcyBtZWRpY2FsIGRhdGFcIixcclxuICAgIFwiVEFSR0VUX0RFU0NSSVBUSU9OXCI6IFwiTWFjaGluZSB0cmFuc2xhdGlvbiBhbGxvd3MgdG8gdW5kZXJzdGFuZCB0aGUgbWVhbmluZyBvZiBhIHNvdXJjZSB0ZXh0LCBidXQgY2Fubm90IHN1YnN0aXR1dGUgYSBodW1hbiB0cmFuc2xhdGlvbi5cIixcclxuICAgIFwiVE9cIjogXCJUbzpcIixcclxuICAgIFwiVEVYVF9DT1BJRURcIjogXCJUcmFuc2xhdGlvbiBjb3BpZWRcIixcclxuICAgIFwiU1VHR0VTVF9CVVRUT05cIjogXCJTdWdnZXN0IHRyYW5zbGF0aW9uXCIsXHJcbiAgICBcIlNVR0dFU1RfT1JJR0lOQUxfTEFCRUxcIjogXCJPcmlnaW5hbCBzZW50ZW5jZVwiLFxyXG4gICAgXCJTVUdHRVNUX1NVQk1JVF9CVVRUT05cIjogXCJDb250cmlidXRlXCIsXHJcbiAgICBcIlNVR0dFU1RfVFJBTlNMQVRJT05fTEFCRUxcIjogXCJUcmFuc2xhdGlvblwiLFxyXG4gICAgXCJTVUdHRVNUX1VTQUdFX0lORk9cIjogXCJZb3VyIGFub255bWl6ZWQgdHJhbnNsYXRpb24gc3VnZ2VzdGlvbiB3aWxsIGJlIHVzZWQgdG8gaW1wcm92ZSB0aGUgcXVhbGl0eSBvZiBtYWNoaW5lIHRyYW5zbGF0aW9uLlwiLFxyXG4gICAgXCJUT09MVElQX0FDVElPTlwiOiBcIlRyYW5zbGF0ZVwiLFxyXG4gICAgXCJWRU5ET1JTX0FSSUFfTEFCRUxcIjogXCJQcm92aWRlcnNcIixcclxuICAgIFwiV09SRF9UWVBFX0FESkVDVElWRVwiOiBcImFkamVjdGl2ZVwiLFxyXG4gICAgXCJXT1JEX1RZUEVfTk9VTlwiOiBcIm5vdW5cIixcclxuICAgIFwiV09SRF9UWVBFX1ZFUkJcIjogXCJ2ZXJiXCIsXHJcbiAgICBcIldPUkRfVFlQRV9BRFZFUkJcIjogXCJhZHZlcmJcIixcclxuICAgIFwiV09SRF9UWVBFX0NPTkpVTkNUSU9OXCI6IFwiY29uanVuY3Rpb25cIixcclxuICAgIFwiV09SRF9UWVBFX0lOVEVSSkVDVElPTlwiOiBcImludGVyamVjdGlvblwiLFxyXG4gICAgXCJXT1JEX1RZUEVfUFJPTk9VTlwiOiBcInByb25vdW5cIixcclxuICAgIFwiRE9DX1dPUkRfQ05UX0xJTUlUX01TR19USVRMRVwiOiBcIlRyYW5zbGF0aW9uIGxpbWl0XCIsXHJcbiAgICBcIkRPQ19XT1JEX0NOVF9MSU1JVF9NU0dcIjogXCJPbmx5IHRoZSBmaXJzdCB7e3dvcmRDb3VudH19IHdvcmRzIHdpbGwgYmUgdHJhbnNsYXRlZC5cIixcclxuICAgIFwiRE9DX1dPUkRfQ05UX0xJTUlUX01TR19TVUJTQ1JJUFRJT05cIjogXCIgWW91IG5lZWQgYSBUaWxkZSBNVCBzdWJzY3JpcHRpb24gdG8gdHJhbnNsYXRlIGZ1bGwgZmlsZXMuIDxhIGhyZWY9XFxcInt7cmVnaXN0ZXJMaW5rfX0/e3txdWVyeVN0cmluZ319XFxcIj5zdGFydCB3aXRoIGEgZnJlZSB0cmlhbDwvYT5cIixcclxuICAgIFwiRVJST1JfTk9fU1lTVEVNU19MT0FERURfVElUTEVcIjogXCJObyB0cmFuc2xhdGlvbiBlbmdpbmVzIHdlcmUgbG9hZGVkXCIsXHJcbiAgICBcIkVSUk9SX05PX1NZU1RFTVNfTE9BREVEXCI6IFwiRmFpbGVkIHRvIGxvYWQgdGhlIG1hY2hpbmUgdHJhbnNsYXRpb24gZW5naW5lcy5cIixcclxuICAgIFwiRVJST1JfTk9fU1lTVEVNU19MT0FERURfU1VQUE9SVFwiOiBcIiBQbGVhc2UgcmVsb2FkIHRoZSBwYWdlIG9yIGNvbnRhY3QgPGEgaHJlZj1cXFwibWFpbHRvOnt7ZW1haWx9fVxcXCI+PHN0cm9uZz4gc3VwcG9ydDwvc3Ryb25nPjwvYT4uXCIsXHJcbiAgICBcIlBERl9QQUdFX0xJTUlUX01TR19USVRMRVwiOiBcIlRyYW5zbGF0aW9uIGxpbWl0XCIsXHJcbiAgICBcIlBERl9QQUdFX0xJTUlUX01TR1wiOiBcIk9ubHkgdGhlIGZpcnN0IHBhZ2Ugd2lsbCBiZSB0cmFuc2xhdGVkLlwiLFxyXG4gICAgXCJQREZfUEFHRV9MSU1JVF9NU0dfU1VCU0NSSVBUSU9OXCI6IFwiIFlvdSBuZWVkIGEgVGlsZGUgTVQgc3Vic2NyaXB0aW9uIHRvIHRyYW5zbGF0ZSBmdWxsIFBERiBmaWxlcy4gPGEgaHJlZj1cXFwie3tyZWdpc3Rlckxpbmt9fT97e3F1ZXJ5U3RyaW5nfX1cXFwiPnN0YXJ0IHdpdGggYSBmcmVlIHRyaWFsPC9hPlwiLFxyXG4gICAgXCJDTEVBUl9TT1VSQ0VfVE9PTFRJUFwiOiBcIkNsZWFyIHRleHRcIlxyXG4gIH0sXHJcbiAgXCJNVUxUSVBMRV9GSUxFU1wiOiB7XHJcbiAgICBcIkFQUEVORFwiOiBcIkFkZCBmaWxlc1wiLFxyXG4gICAgXCJDTEVBUl9BTExcIjogXCJDYW5jZWxcIixcclxuICAgIFwiRE9XTkxPQURcIjogXCJEb3dubG9hZFwiLFxyXG4gICAgXCJTVEFUVVNTX0lOSVRJQUxJWklOR1wiOiBcIkluaXRpYWxpemluZ1wiLFxyXG4gICAgXCJTVEFUVVNTX0VYVFJBQ1RJTkdcIjogXCJFeHRyYWN0aW5nXCIsXHJcbiAgICBcIlNUQVRVU1NfV0FJVElOR1wiOiBcIlN0YXJ0aW5nIHRyYW5zbGF0b3JcIixcclxuICAgIFwiU1RBVFVTU19UUkFOU0xBVElOR1wiOiBcIlRyYW5zbGF0aW5nIHt7cGVyY2VudH19JVwiLFxyXG4gICAgXCJTVEFUVVNTX1NBVklOR1wiOiBcIlNhdmluZ1wiLFxyXG4gICAgXCJTVEFUVVNTX0NPTVBMRVRFRFwiOiBcIkNvbXBsZXRlZFwiLFxyXG4gICAgXCJTVEFUVVNTX0VSUk9SXCI6IFwiRXJyb3JcIixcclxuICAgIFwiU1RBVFVTU19RVUVVSU5HXCI6IFwiUXVldWluZ1wiLFxyXG4gICAgXCJTVEFUVVNTX05PVF9TVEFSVEVEXCI6IFwiVXBsb2FkZWRcIixcclxuICAgIFwiU1RBVFVTU19VUExPQURJTkdcIjogXCJVcGxvYWRpbmcuLi5cIixcclxuICAgIFwiU1RBVFVTU19VUExPQURFRFwiOiBcIlVwbG9hZGVkXCIsXHJcbiAgICBcIlRJVExFX0ZJTEVfTkFNRVwiOiBcIkZpbGVcIixcclxuICAgIFwiVElUTEVfU1RBVFVTU1wiOiBcIlN0YXR1c1wiLFxyXG4gICAgXCJUUkFOU0xBVElPTl9TVEFUVVNTX0xBQkVMXCI6IFwiU3RhdHVzXCIsXHJcbiAgICBcIlBERl9ESVNDTEFJTUVSXCI6IFwiUERGIGRvY3VtZW50cyBtYXkgaGF2ZSBmb3JtYXR0aW5nIG9yIHRyYW5zbGF0aW9uIGVycm9ycy5cIixcclxuICAgIFwiUERGX0RJU0NMQUlNRVJfTElOS1wiOiBcIlJlYWQgYWJvdXQgcGRmIGNvbnZlcnNpb24uXCIsXHJcbiAgICBcIklNQUdFX0RJU0NMQUlNRVJcIjogXCJJbWFnZSBjb252ZXJzaW9uIG1heSBjYXVzZSBmb3JtYXR0aW5nIGVycm9ycyBvciB0ZXh0IGRpc3RvcnRpb24uXCIsXHJcbiAgICBcIklNQUdFX0RJU0NMQUlNRVJfTElOS1wiOiBcIlJlYWQgYWJvdXQgaW1hZ2UgY29udmVyc2lvbi5cIixcclxuICAgIFwiU0NSRUVOX1JFQURFUl9BTk5PVU5DRU1FTlRcIjogXCJ7e3RyYW5zbGF0ZWR9fSBvdXQgb2Yge3t0b3RhbH19IGZpbGVzIGFyZSB0cmFuc2xhdGVkLlwiLFxyXG4gICAgXCJSRU1PVkVfRklMRV9UT09MVElQXCI6IFwiQ2xlYXIgZmlsZVwiXHJcbiAgfSxcclxuICBcIkVSUk9SU1wiOiB7XHJcbiAgICBcIkVSUk9SX0RFRkFVTFRfVElUTEVcIjogXCJVbmV4cGVjdGVkIGVycm9yXCIsXHJcbiAgICBcIkVSUk9SX0RFRkFVTFRcIjogXCJBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VycmVkLiBQbGVhc2UgdHJ5IGFnYWluLlwiLFxyXG4gICAgXCJFUlJPUl9ERUZBVUxUX1NVUFBPUlRcIjogXCIgSWYgdGhlIHByb2JsZW0gY29udGludWVzLCBjb250YWN0IDxhIGhyZWY9XFxcIm1haWx0bzp7e2VtYWlsfX1cXFwiPjxzdHJvbmc+c3VwcG9ydDwvc3Ryb25nPjwvYT4uXCIsXHJcbiAgICBcIk1BWF9DSEFSX0xFTkdUSF9USVRMRVwiOiBcIlRyYW5zbGF0aW9uIGxpbWl0XCIsXHJcbiAgICBcIk1BWF9DSEFSX0xFTkdUSFwiOiBcIk9ubHkge3ttYXhDaGFyTGVuZ3RofX0ve3t0b3RhbFN5bWJvbHN9fSBjaGFyYWN0ZXJzIHdpbGwgYmUgdHJhbnNsYXRlZC5cIixcclxuICAgIFwiTUFYX0NIQVJfTEVOR1RIX1NVQlNDUklQVElPTlwiOiBcIiBZb3UgbmVlZCBhIFRpbGRlIE1UIHN1YnNjcmlwdGlvbiBmb3IgdW5saW1pdGVkIHRleHQgdHJhbnNsYXRpb24uIDxhIGhyZWY9XFxcInt7cmVnaXN0ZXJMaW5rfX0/e3txdWVyeVN0cmluZ319XFxcIj5zdGFydCB3aXRoIGEgZnJlZSB0cmlhbDwvYT5cIixcclxuICAgIFwiTUFYX05VTUJFUl9PRl9GSUxFU19USVRMRVwiOiBcIlVwbG9hZCBsaW1pdFwiLFxyXG4gICAgXCJNQVhfTlVNQkVSX09GX0ZJTEVTXCI6IFwiT25seSB7e2xpbWl0fX0gZmlsZXMgY2FuIGJlIHRyYW5zbGF0ZWQgYXQgb25jZS5cIixcclxuICAgIFwiSU5DUkVBU0VfTUFYX05VTUJFUl9PRl9GSUxFU19USVRMRVwiOiBcIlVwbG9hZCBsaW1pdFwiLFxyXG4gICAgXCJJTkNSRUFTRV9NQVhfTlVNQkVSX09GX0ZJTEVTXCI6IFwiT25seSAxIGZpbGUgY2FuIGJlIHRyYW5zbGF0ZWQgYXQgb25jZS4gWW91IG5lZWQgYSBUaWxkZSBNVCBzdWJzY3JpcHRpb24gdG8gaW5jcmVhc2UgbGltaXQuIDxhIGhyZWY9XFxcInt7cmVnaXN0ZXJMaW5rfX0/e3txdWVyeVN0cmluZ319XFxcIj5zdGFydCB3aXRoIGEgZnJlZSB0cmlhbDwvYT5cIixcclxuICAgIFwiRklMRV9BTFJFQURZX0FEREVEX1RJVExFXCI6IFwiRmlsZSBoYXMgYWxyZWFkeSBiZWVuIGFkZGVkXCIsXHJcbiAgICBcIkZJTEVfQUxSRUFEWV9BRERFRFwiOiBcIkZpbGUgXFxcInt7ZmlsZU5hbWV9fVxcXCIgaGFzIGFscmVhZHkgYmVlbiBhZGRlZC5cIixcclxuICAgIFwiVUFOVVRIT1JJWkVEXzQwMV9USVRMRVwiOiBcIlVuYXV0aG9yaXplZFwiLFxyXG4gICAgXCJVQU5VVEhPUklaRURfNDAxXCI6IFwiWW91IGRvbid0IGhhdmUgcGVybWlzc2lvbiB0byB1c2UgbWFjaGluZSB0cmFuc2xhdGlvbi5cIixcclxuICAgIFwiVUFOVVRIT1JJWkVEXzQwMV9TVVBQT1JUXCI6IFwiIFBsZWFzZSBjb250YWN0IDxhIGhyZWY9XFxcIm1haWx0bzp7e2VtYWlsfX1cXFwiPjxzdHJvbmc+IHN1cHBvcnQ8L3N0cm9uZz48L2E+LlwiLFxyXG4gICAgXCJFX1VOS05PV05fRklMRV9UWVBFXCI6IFwiVW5rbm93biBmaWxlIHR5cGUuXCIsXHJcbiAgICBcIkVfQ0FOTk9UX1JFQURfRklMRV9USVRMRVwiOiBcIlVuYWJsZSB0byByZWFkIGZpbGVcIixcclxuICAgIFwiRV9DQU5OT1RfUkVBRF9GSUxFXCI6IFwiVGhlIGZpbGUgXFxcInt7ZmlsZU5hbWV9fVxcXCIgaXMgY29ycnVwdGVkIGFuZCBjb3VsZG4ndCBiZSB0cmFuc2xhdGVkLiBDaGVjayB0aGUgZmlsZSBhbmQgdHJ5IGFnYWluLlwiLFxyXG4gICAgXCJFX0ZBSUxFRF9JTl9UUkFOU0xBVElPTl9USVRMRVwiOiBcIlRyYW5zbGF0aW9uIGZhaWxlZFwiLFxyXG4gICAgXCJFX0ZBSUxFRF9JTl9UUkFOU0xBVElPTlwiOiBcIkVycm9yIG9jY3VycmVkIHdoaWxlIHRyYW5zbGF0aW5nLiBQbGVhc2UgdHJ5IGFnYWluLlwiLFxyXG4gICAgXCJFX0ZBSUxFRF9JTl9UUkFOU0xBVElPTl9TVVBQT1JUXCI6IFwiIElmIHRoZSBwcm9ibGVtIGNvbnRpbnVlcywgY29udGFjdCA8YSBocmVmPVxcXCJtYWlsdG86e3tlbWFpbH19XFxcIj48c3Ryb25nPiBzdXBwb3J0PC9zdHJvbmc+PC9hPi5cIixcclxuICAgIFwiRV9GT1JNQVRfVFJBQ0tfQ0hBTkdFU19USVRMRVwiOiBcIlRyYW5zbGF0aW9uIGZhaWxlZCwgYmVjYXVzZSDigJh0cmFjayBjaGFuZ2Vz4oCZIGlzIHR1cm5lZCBvblwiLFxyXG4gICAgXCJFX0ZPUk1BVF9UUkFDS19DSEFOR0VTXCI6IFwiQ2hhbmdlcyBtdXN0IGZpcnN0IGJlIGFjY2VwdGVkIG9yIOKAmHRyYWNrIGNoYW5nZXPigJkgdHVybmVkIG9mZiBiZWZvcmUgdHJhbnNsYXRpbmcgT2ZmaWNlIGZpbGVzLlwiLFxyXG4gICAgXCJFX1VOS05PV05fRVJST1JfVElUTEVcIjogXCJVbmtub3duIGVycm9yXCIsXHJcbiAgICBcIkVfVU5LTk9XTl9FUlJPUlwiOiBcIkFuIHVua25vd24gZXJyb3Igb2NjdXJyZWQuXCIsXHJcbiAgICBcIkVfVU5BVVRIT1JJWkVEX1RJVExFXCI6IFwiVW5hdXRob3JpemVkXCIsXHJcbiAgICBcIkVfVU5BVVRIT1JJWkVEXCI6IFwiRG9jdW1lbnQgdHJhbnNsYXRpb24gd2FzIGRlbmllZC5cIixcclxuICAgIFwiQ09MTEVDVElPTl9DUkVBVEVfVElUTEVcIjogXCJGYWlsZWQgdG8gY3JlYXRlIGEgZ2xvc3NhcnlcIixcclxuICAgIFwiQ09MTEVDVElPTl9DUkVBVEVcIjogXCJGYWlsZWQgdG8gY3JlYXRlIGEgbmV3IGdsb3NzYXJ5LiBQbGVhc2UgdHJ5IGFnYWluLlwiLFxyXG4gICAgXCJDT0xMRUNUSU9OX0NSRUFURV9TVVBQT1JUXCI6IFwiIElmIHRoZSBwcm9ibGVtIGNvbnRpbnVlcywgY29udGFjdCA8YSBocmVmPVxcXCJtYWlsdG86e3tlbWFpbH19XFxcIj48c3Ryb25nPnN1cHBvcnQ8L3N0cm9uZz48L2E+LlwiLFxyXG4gICAgXCJDT0xMRUNUSU9OX0lNUE9SVF9USVRMRVwiOiBcIkZhaWxlZCB0byBhdHRhY2ggdGhlIGdsb3NzYXJ5XCIsXHJcbiAgICBcIkNPTExFQ1RJT05fSU1QT1JUXCI6IFwiRmFpbGVkIHRvIGF0dGFjaCB0aGUgdGVybSBjb2xsZWN0aW9uIHdpdGggSUQ6IHt7dGVybUlkfX0gdG8gdGhlIG1hY2hpbmUgdHJhbnNsYXRpb24gZW5naW5lLiBQbGVhc2UgdHJ5IGFnYWluLlwiLFxyXG4gICAgXCJFXzExXCI6IFwiRGFpbHkgdHJhbnNsYXRpb24gbGltaXQgaGFzIGJlZW4gcmVhY2hlZC5cIixcclxuICAgIFwiRV8xMV9TVVBQT1JUXCI6IFwiIFRvIGluY3JlYXNlIHRoZSBkYWlseSBsaW1pdCwgcGxlYXNlIGNvbnRhY3QgPGEgaHJlZj1cXFwibWFpbHRvOnt7ZW1haWx9fVxcXCI+PHN0cm9uZz5zdXBwb3J0PC9zdHJvbmc+PC9hPi5cIixcclxuICAgIFwiRV8xMl9USVRMRVwiOiBcIlRleHQgc2l6ZSBsaW1pdFwiLFxyXG4gICAgXCJFXzEyXCI6IFwiVGV4dCBzaXplIGxpbWl0IHJlYWNoZWQuIFNlbmQgbGVzcyB0ZXh0IGluIHRoZSByZXF1ZXN0LlwiLFxyXG4gICAgXCJFXzEyX1NVUFBPUlRcIjogXCIgVG8gaW5jcmVhc2UgdGhlIHRleHQgc2l6ZSBsaW1pdCwgcGxlYXNlIGNvbnRhY3QgPGEgaHJlZj1cXFwibWFpbHRvOnt7ZW1haWx9fVxcXCI+PHN0cm9uZz5zdXBwb3J0PC9zdHJvbmc+PC9hPi5cIixcclxuICAgIFwiRV8yMVwiOiBcIlRoZSB0cmFuc2xhdGlvbiBlbmdpbmUgaXMgc3RhcnRpbmcgdXAsIHRoaXMgbWF5IHRha2UgYSBtb21lbnQhXCIsXHJcbiAgICBcIkVfMjJfVElUTEVcIjogXCJNYWNoaW5lIHRyYW5zbGF0aW9uIGVuZ2luZSBub3QgZm91bmRcIixcclxuICAgIFwiRV8yMlwiOiBcIk1hY2hpbmUgdHJhbnNsYXRpb24gZW5naW5lIG5vdCBmb3VuZC5cIixcclxuICAgIFwiRV8yMl9TVVBQT1JUXCI6IFwiIFBsZWFzZSBjb250YWN0IDxhIGhyZWY9XFxcIm1haWx0bzp7e2VtYWlsfX1cXFwiPjxzdHJvbmc+c3VwcG9ydDwvc3Ryb25nPjwvYT4uXCIsXHJcbiAgICBcIkVfMjNcIjogXCJNYWNoaW5lIHRyYW5zbGF0aW9uIGVuZ2luZSBpcyBub3Qgc3RhcnRlZC5cIixcclxuICAgIFwiRV8yM19TVVBQT1JUXCI6IFwiIENvbnRhY3QgPGEgaHJlZj1cXFwibWFpbHRvOnt7ZW1haWx9fVxcXCI+PHN0cm9uZz5zdXBwb3J0PC9zdHJvbmc+PC9hPi5cIixcclxuICAgIFwiRV80MVwiOiBcIlVua25vd24gdGVybSBjb3JwdXMgSUQgcHJvdmlkZWQuIFRlcm0gY29ycHVzIG11c3QgYmUgbGlua2VkIHRvIHRoZSBtYWNoaW5lIHRyYW5zbGF0aW9uIGVuZ2luZVwiLFxyXG4gICAgXCJFXzUwNFwiOiBcIlRyYW5zbGF0aW9uIGhhcyB0aW1lZCBvdXQuIFRyeSBhZ2FpbiBsYXRlci5cIixcclxuICAgIFwiRV81MDRfVElUTEVcIjogXCJUcmFuc2xhdGlvbiB0aW1lb3V0XCIsXHJcbiAgICBcIlRSQU5TTEFUSU9OX0ZBSUxFRF9USVRMRVwiOiBcIlRyYW5zbGF0aW9uIGZhaWxlZFwiLFxyXG4gICAgXCJUUkFOU0xBVElPTl9GQUlMRURcIjogXCJBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VycmVkLlwiLFxyXG4gICAgXCJUUkFOU0xBVElPTl9GQUlMRURfU1VQUE9SVFwiOiBcIiBJZiB0aGUgcHJvYmxlbSBjb250aW51ZXMsIGNvbnRhY3QgPGEgaHJlZj1cXFwibWFpbHRvOnt7ZW1haWx9fVxcXCI+PHN0cm9uZz5zdXBwb3J0PC9zdHJvbmc+PC9hPi5cIixcclxuICAgIFwiRklMRV9UUkFOU0xBVElPTl9TVUJTVEFUVVNcIjoge1xyXG4gICAgICBcIkJBRF9GSUxFX0VSUk9SX1RJVExFXCI6IFwiRmFpbGVkIHRvIHRyYW5zbGF0ZSB0aGUgZmlsZVwiLFxyXG4gICAgICBcIkJBRF9GSUxFX0VSUk9SXCI6IFwiVGhlIGZpbGUgaXMgY29ycnVwdGVkIGFuZCBjb3VsZG4ndCBiZSB0cmFuc2xhdGVkLiBDaGVjayB0aGUgZmlsZSBhbmQgdHJ5IGFnYWluLlwiLFxyXG4gICAgICBcIk5PX1RFWFRfRVhUUkFDVEVEX0VSUk9SX1RJVExFXCI6IFwiRmFpbGVkIHRvIGV4dHJhY3QgYW55IHRleHRcIixcclxuICAgICAgXCJOT19URVhUX0VYVFJBQ1RFRF9FUlJPUlwiOiBcIlRoZSBmaWxlIG1heSBiZSBlbXB0eS4gQ2hlY2sgdGhlIGZpbGUgYW5kIHRyeSBhZ2Fpbi5cIixcclxuICAgICAgXCJUUkFDS19DSEFOR0VTX0VOQUJMRURfRVJST1JfVElUTEVcIjogXCJUcmFuc2xhdGlvbiBmYWlsZWQsIGJlY2F1c2Ug4oCYdHJhY2sgY2hhbmdlc+KAmSBpcyB0dXJuZWQgb25cIixcclxuICAgICAgXCJUUkFDS19DSEFOR0VTX0VOQUJMRURfRVJST1JcIjogXCJDaGFuZ2VzIG11c3QgZmlyc3QgYmUgYWNjZXB0ZWQgb3Ig4oCYdHJhY2sgY2hhbmdlc+KAmSB0dXJuZWQgb2ZmIGJlZm9yZSB0cmFuc2xhdGluZyBPZmZpY2UgZmlsZXMuXCIsXHJcbiAgICAgIFwiVU5LTk9XTl9GSUxFX1RZUEVfRVJST1JfVElUTEVcIjogXCJVbmtub3duIGZpbGUgdHlwZVwiLFxyXG4gICAgICBcIlVOS05PV05fRklMRV9UWVBFX0VSUk9SXCI6IFwiRmlsZSB0eXBlIG5vdCByZWNvZ25pemVkLiBUaGUgZmlsZSBleHRlbnNpb24gbWF5IGJlIGluY29ycmVjdCwgb3IgdGhlIGZpbGUgbWF5IGJlIGNvcnJ1cHRlZC5cIlxyXG4gICAgfSxcclxuICAgIFwiRklMRV9VUExPQURcIjoge1xyXG4gICAgICBcIkZJTEVfVVBMT0FEX0VNUFRZX1RJVExFXCI6IFwiVGhlIGZpbGUgaXMgZW1wdHlcIixcclxuICAgICAgXCJGSUxFX1VQTE9BRF9FTVBUWVwiOiBcIlRoZSB1cGxvYWRlZCBmaWxlIFxcXCJ7e2ZpbGVOYW1lfX1cXFwiIGlzIGVtcHR5LiBTZWxlY3QgYSBmaWxlIHdpdGggY29udGVudC5cIixcclxuICAgICAgXCJGSUxFX1VQTE9BRF9NQVhfU0laRV9USVRMRVwiOiBcIkZpbGUgc2l6ZSBsaW1pdFwiLFxyXG4gICAgICBcIkZJTEVfVVBMT0FEX01BWF9TSVpFXCI6IFwiVGhlIHVwbG9hZGVkIGZpbGUgXFxcInt7ZmlsZU5hbWV9fVxcXCIgaXMgdG9vIGJpZy4gTWF4aW11bSBzaXplIHt7bWF4U2l6ZU1CfX1NQlwiLFxyXG4gICAgICBcIkZJTEVfVVBMT0FEX1VOU1VQUE9SVEVEX0ZPUk1BVF9USVRMRVwiOiBcIlVuc3VwcG9ydGVkIGZpbGUgZm9ybWF0XCIsXHJcbiAgICAgIFwiRklMRV9VUExPQURfVU5TVVBQT1JURURfRk9STUFUXCI6IFwiVGhlIHVwbG9hZGVkIGZpbGUgXFxcInt7ZmlsZU5hbWV9fVxcXCIgZm9ybWF0IGlzIG5vdCBzdXBwb3J0ZWQuIFRyYW5zbGF0aW9uIGlzIHN1cHBvcnRlZCBmb3IgdGhlc2UgZG9jdW1lbnQgZm9ybWF0czoge3tmb3JtYXRzfX0uXCIsXHJcbiAgICAgIFwiRklMRV9VUExPQURfVU5TVVBQT1JURURfRk9STUFUX1JFR0lTVEVSX1RJVExFXCI6IFwiVW5zdXBwb3J0ZWQgZmlsZSBmb3JtYXRcIixcclxuICAgICAgXCJGSUxFX1VQTE9BRF9VTlNVUFBPUlRFRF9GT1JNQVRfUkVHSVNURVJcIjogXCJZb3UgbmVlZCBUaWxkZSBNVCBzdWJzY3JpcHRpb24gdG8gdHJhbnNsYXRlIFxcXCJ7e2ZpbGVOYW1lfX1cXFwiIGZpbGUuIDxhIGhyZWY9XFxcInt7cmVnaXN0ZXJMaW5rfX0/e3txdWVyeVN0cmluZ319XFxcIj5zdGFydCB3aXRoIGEgZnJlZSB0cmlhbDwvYT5cIixcclxuICAgICAgXCJFXzQwNF9USVRMRVwiOiBcIkZpbGUgbm90IGZvdW5kXCIsXHJcbiAgICAgIFwiRV80MDRcIjogXCJUaGUgcmVxdWVzdGVkIGZpbGUgZG9lc24ndCBleGlzdFwiLFxyXG4gICAgICBcIkVfNDA0X1JFTU9WRV9USVRMRVwiOiBcIkZhaWxlZCB0byBkZWxldGUgdGhlIGZpbGVcIixcclxuICAgICAgXCJFXzQwNF9SRU1PVkVcIjogXCJGaWxlIGhhcyBhbHJlYWR5IGJlZW4gZGVsZXRlZFwiXHJcbiAgICB9LFxyXG4gICAgXCJBVURJT1wiOiB7XHJcbiAgICAgIFwiTk9fU1BFRUNIX1RJVExFXCI6IFwiTm8gc3BlZWNoXCIsXHJcbiAgICAgIFwiTk9fU1BFRUNIXCI6IFwiWW91ciByZWNvcmRpbmcgd2FzIHN0b3BwZWQuIFdlIGNvdWxkbid0IGhlYXIgeW91LlwiLFxyXG4gICAgICBcIk1BWF9USU1FX0VYQ0VFREVEX1RJVExFXCI6IFwiU3BlZWNoIGxpbWl0XCIsXHJcbiAgICAgIFwiTUFYX1RJTUVfRVhDRUVERURcIjogXCJZb3VyIHJlY29yZGluZyB3YXMgc3RvcHBlZC4gU3BlZWNoIGlucHV0IGlzIGxpbWl0ZWQgdG8ge3t0aW1lU3RyaW5nfX0uXCIsXHJcbiAgICAgIFwiTUlDX05PVF9BTExPV0VEX1RJVExFXCI6IFwiTWljcm9waG9uZSBhY2Nlc3MgZGVuaWVkXCIsXHJcbiAgICAgIFwiTUlDX05PVF9BTExPV0VEXCI6IFwiWW91IGhhdmUgZGVuaWVkIGFjY2VzcyB0byB0aGUgbWljcm9waG9uZS4gQ2hhbmdlIHBlcm1pc3Npb25zIGluIGJyb3dzZXIncyBzZXR0aW5ncy5cIixcclxuICAgICAgXCJNQVhfU0laRV9FWENFRURFRF9USVRMRVwiOiBcIlNwZWVjaCBsaW1pdFwiLFxyXG4gICAgICBcIk1BWF9TSVpFX0VYQ0VFREVEXCI6IFwiWW91ciByZWNvcmRpbmcgd2FzIHN0b3BwZWQgYW5kIHNlbnQgdG8gcHJvY2Vzc2luZy4gU3BlZWNoIGlucHV0IGlzIGxpbWl0ZWQgdG8gKHt7bWF4U2l6ZU1ifX1NQikgc2l6ZS5cIixcclxuICAgICAgXCJDQU5UX1NUQVJUX1JFQ09SRElOR19USVRMRVwiOiBcIkZhaWxlZCB0byBzdGFydCByZWNvcmRpbmdcIixcclxuICAgICAgXCJDQU5UX1NUQVJUX1JFQ09SRElOR1wiOiBcIlVuYWJsZSB0byBzdGFydCByZWNvcmRpbmcuIFBsZWFzZSB0cnkgYWdhaW4uXCIsXHJcbiAgICAgIFwiTk9fVEVYVF9SRUNPR05JWkVEX1RpdGxlXCI6IFwiTm8gc3BlZWNoIHJlY29nbml6ZWRcIixcclxuICAgICAgXCJOT19URVhUX1JFQ09HTklaRURcIjogXCJObyBzcGVlY2ggY291bGQgYmUgcmVjb2duaXplZC4gQ2hlY2sgeW91ciBtaWNyb3Bob25lIGFuZCB0cnkgYWdhaW4uXCJcclxuICAgIH1cclxuICB9LFxyXG4gIFwiUkFUSU5HXCI6IHt9LFxyXG4gIFwiTEFOR1VBR0VTXCI6IHtcclxuICAgIFwiQVJcIjogXCJBcmFiaWNcIixcclxuICAgIFwiTFZcIjogXCJMYXR2aWFuXCIsXHJcbiAgICBcIkVUXCI6IFwiRXN0b25pYW5cIixcclxuICAgIFwiREFcIjogXCJEYW5pc2hcIixcclxuICAgIFwiRklcIjogXCJGaW5uaXNoXCIsXHJcbiAgICBcIklTXCI6IFwiSWNlbGFuZGljXCIsXHJcbiAgICBcIkxUXCI6IFwiTGl0aHVhbmlhblwiLFxyXG4gICAgXCJOQlwiOiBcIk5vcndlZ2lhblwiLFxyXG4gICAgXCJTVlwiOiBcIlN3ZWRpc2hcIixcclxuICAgIFwiQkVcIjogXCJCZWxvcnVzc2lhblwiLFxyXG4gICAgXCJCR1wiOiBcIkJ1bGdhcmlhblwiLFxyXG4gICAgXCJDU1wiOiBcIkN6ZWNoXCIsXHJcbiAgICBcIkhVXCI6IFwiSHVuZ2FyaWFuXCIsXHJcbiAgICBcIlJVXCI6IFwiUnVzc2lhblwiLFxyXG4gICAgXCJNT1wiOiBcIk1vbGRhdmlhblwiLFxyXG4gICAgXCJQTFwiOiBcIlBvbGlzaFwiLFxyXG4gICAgXCJTS1wiOiBcIlNsb3Zha1wiLFxyXG4gICAgXCJVS1wiOiBcIlVrcmFpbmlhblwiLFxyXG4gICAgXCJOTFwiOiBcIkR1dGNoXCIsXHJcbiAgICBcIkVOXCI6IFwiRW5nbGlzaFwiLFxyXG4gICAgXCJGUlwiOiBcIkZyZW5jaFwiLFxyXG4gICAgXCJERVwiOiBcIkdlcm1hblwiLFxyXG4gICAgXCJHQVwiOiBcIklyaXNoXCIsXHJcbiAgICBcIkVMXCI6IFwiR3JlZWtcIixcclxuICAgIFwiSVRcIjogXCJJdGFsaWFuXCIsXHJcbiAgICBcIk1UXCI6IFwiTWFsdGVzZVwiLFxyXG4gICAgXCJQVFwiOiBcIlBvcnR1Z3Vlc2VcIixcclxuICAgIFwiU1JcIjogXCJTZXJiaWFuXCIsXHJcbiAgICBcIlNMXCI6IFwiU2xvdmVuaWFuXCIsXHJcbiAgICBcIkVTXCI6IFwiU3BhbmlzaFwiLFxyXG4gICAgXCJaSFwiOiBcIkNoaW5lc2VcIixcclxuICAgIFwiSkFcIjogXCJKYXBhbmVzZVwiLFxyXG4gICAgXCJLT1wiOiBcIktvcmVhblwiLFxyXG4gICAgXCJUUlwiOiBcIlR1cmtpc2hcIixcclxuICAgIFwiSFJcIjogXCJDcm9hdGlhblwiLFxyXG4gICAgXCJST1wiOiBcIlJvbWFuaWFuXCIsXHJcbiAgICBcIlVaXCI6IFwiVXpiZWtcIixcclxuICAgIFwiSURcIjogXCJJbmRvbmVzaWFuXCJcclxuICB9LFxyXG4gIFwiQVJJQV9MQUJFTFNcIjoge1xyXG4gICAgXCJDTE9TRV9CVVRUT05cIjogXCJDbGVhclwiLFxyXG4gICAgXCJDTEVBUl9OT1RJRklDQVRJT05cIjogXCJDbG9zZSBhbGVydFwiLFxyXG4gICAgXCJDTEVBUl9TT1VSQ0VcIjogXCJDbGVhciBlbnRlcmVkIHRleHRcIixcclxuICAgIFwiQ0xPU0VfRElBTE9HXCI6IFwiQ2xvc2UgZGlhbG9nXCIsXHJcbiAgICBcIkNMRUFSX0ZJTEVTXCI6IFwiQ2xlYXIgdXBsb2FkZWQgZmlsZXNcIixcclxuICAgIFwiU0hPV19FWFRFTlNJT05TXCI6IFwiU2hvdyBvdGhlciBkb3dubG9hZCBvcHRpb25zXCIsXHJcbiAgICBcIkNPUFlcIjogXCJDb3B5IHRvIGNsaXBib2FyZFwiLFxyXG4gICAgXCJSRUZSRVNIXCI6IFwiUmVmcmVzaCB0cmFuc2xhdGlvblwiLFxyXG4gICAgXCJPUEVOX0lOX05FV1wiOiBcIk9wZW4gaW4gbmV3IHRhYlwiLFxyXG4gICAgXCJTV0FQX0xBTkdVQUdFU1wiOiBcIlN3YXAgbGFuZ3VhZ2VzXCIsXHJcbiAgICBcIk9USEVSX0xBTkdVQUdFU19UUklHR0VSXCI6IFwiU2hvdyBvdGhlciBsYW5ndWFnZXNcIlxyXG4gIH0sXHJcbiAgXCJUT09MVElQU1wiOiB7XHJcbiAgICBcIkNPUFlcIjogXCJDb3B5IHRvIGNsaXBib2FyZFwiLFxyXG4gICAgXCJSRUZSRVNIXCI6IFwiUmVmcmVzaCB0cmFuc2xhdGlvblwiLFxyXG4gICAgXCJTV0FQX0xBTkdVQUdFU1wiOiBcIlN3YXAgbGFuZ3VhZ2VzXCJcclxuICB9LFxyXG4gIFwiUERGX0NPTlZFUlNJT05cIjoge1xyXG4gICAgXCJUSVRMRV8xXCI6IFwiUERGIHRyYW5zbGF0aW9uXCIsXHJcbiAgICBcIlBBUkFHUkFQSF8xXzFcIjogXCJXaGVuIGEgLnBkZiBmaWxlIGlzIHVwbG9hZGVkIGZvciB0cmFuc2xhdGlvbiBpdCBpcyBjb252ZXJ0ZWQgaW50byBhIHRyYW5zbGF0YWJsZSBmb3JtYXQuIEJvdGggc2Nhbm5lZCBhbmQgbmF0aXZlIC5wZGZzIGFyZSBzdXBwb3J0ZWQuIFRyYW5zbGF0aW9ucyBjYW4gYmUgZG93bmxvYWRlZCBpbiAuZG9jeCwgLnRteCBvciAucGRmIGZvcm1hdHMgYW5kIHdpbGwgcmV0YWluIHRoZSBiYXNpYyBmb3JtYXR0aW5nLiBGb3JtYXR0aW5nIGluIHRoZSB0cmFuc2xhdGVkIC5kb2N4IGFuZCAucGRmIGZpbGVzIG1heSBzbGlnaHRseSBkaWZmZXIuIFwiLFxyXG4gICAgXCJQQVJBR1JBUEhfMV8yXCI6IFwiQXMgY29udmVyc2lvbiB0YWtlcyB0aW1lLCB0byBzcGVlZCB0aGluZ3MgdXAgc3BsaXQgeW91ciAucGRmcyBhbmQgZGVsZXRlIHRoZSBwYWdlcyB3aXRoIG5vIHRyYW5zbGF0YWJsZSBpbmZvcm1hdGlvbi4gRmFjdG9ycyBsaWtlIHRoZSBudW1iZXIgb2YgcGFnZXMsIHF1YWxpdHkgYW5kIHRleHQgZGVuc2l0eSBhZmZlY3QgdGhlIHByb2Nlc3NpbmcgdGltZS5cIixcclxuICAgIFwiUEFSQUdSQVBIXzFfM1wiOiBcIlRvIGltcHJvdmUgdHJhbnNsYXRpb24gcGVyZm9ybWFuY2UsIHdlIHJlY29tbWVuZCB0byBkb3dubG9hZCB0aGUgY29udmVydGVkIGRvY3VtZW50IGluIHRoZSBvcmlnaW5hbCBsYW5ndWFnZSBhbmQgZml4IGl0IG1hbnVhbGx5IGJlZm9yZSByZS11cGxvYWRpbmcgZm9yIHRyYW5zbGF0aW9uLlwiLFxyXG4gICAgXCJJTUFHRV9BTFRfMVwiOiBcIlNvdXJjZSBQREYgZG93bmxvYWQgZXhhbXBsZVwiLFxyXG5cclxuICAgIFwiVElUTEVfMlwiOiBcIlBERiBjb252ZXJzaW9uXCIsXHJcbiAgICBcIlBBUkFHUkFQSF8yXzFcIjogXCJUaGUgZG9jdW1lbnQgaXMgYW5hbHlzZWQgYW5kIGl0cyBjb250ZW50IGlzIHNwbGl0IGluIHRleHQsIHRhYmxlIGFuZCBpbWFnZS9iYWNrZ3JvdW5kIGltYWdlIGFyZWFzLiBUaGV5IGFyZSBhbmFseXNlZCBmdXJ0aGVyIHRvIGRldGVybWluZSB3aGljaCBjb250ZW50IHNob3VsZCBiZSByZWNvZ25pemVkIGFzIHRleHQuXCIsXHJcbiAgICBcIlBBUkFHUkFQSF8yXzJcIjogXCJUZXh0dWFsIGRhdGEgYXJlIGFjcXVpcmVkIGJ5IG1lYW5zIG9mIE9DUiBvciBvcHRpY2FsIGNoYXJhY3RlciByZWNvZ25pdGlvbi4gRXZlcnkgY2hhcmFjdGVyIGlzIHJlY29nbml6ZWQgZGVwZW5kaW5nIG9uIGl0cyB2aXN1YWwgY2hhcmFjdGVyaXN0aWNzLCB0aGVuIGFzc2VtYmxlZCBpbnRvIHdvcmRzIGFuZCBzZW50ZW5jZXMuXCIsXHJcbiAgICBcIlBBUkFHUkFQSF8yXzNcIjogXCJSZWNvZ25pdGlvbiBpcyBhZmZlY3RlZCBieSBtYW55IGZhY3RvcnMsIGluY2x1ZGluZzpcIixcclxuICAgIFwiTElfMV8xXCI6IFwiUXVhbGl0eSBvZiB0aGUgc2Nhbm5lZCBkb2N1bWVudCAoYmx1cnJlZCBvciBkZWZvcm1lZCB0ZXh0LCBpbWFnZSBub2lzZSwgaW1hZ2UgcmVzb2x1dGlvbiwgY29udHJhc3QgZXRjLikuIEZvciB0aGUgYmVzdCByZXN1bHQsIC5wZGZzIHNob3VsZCBiZSBhdCBsZWFzdCAzMDAgZHBpLCB1bnNrZXdlZCBhbmQgbm9pc2UgZnJlZS5cIixcclxuICAgIFwiTElfMV8yXCI6IFwiRm9udCBzaXplLiBTaXplcyBzbWFsbGVyIHRoYW4gOSBwb2ludHMgbWlnaHQgYmUgcG9vcmx5IHJlY29nbml6ZWQuIFwiLFxyXG4gICAgXCJMSV8xXzNcIjogXCJSYXJlIGFuZCBvcmlnaW5hbCBmb250cy4gTGVzcyBjb21tb24gZm9udHMgbWF5IGJlIHVucmVjb2duaXphYmxlIG9yIHBlcmZvcm0gd29yc2UuXCIsXHJcbiAgICBcIkxJXzFfNFwiOiBcIkNvbXBsZXhpdHkgb2YgdGhlIGRvY3VtZW50IHN0cnVjdHVyZSBhbmQgZm9ybWF0dGluZy5cIixcclxuXHJcbiAgICBcIlRJVExFXzNcIjogXCJJbXByb3ZpbmcgdHJhbnNsYXRpb24gcGVyZm9ybWFuY2VcIixcclxuICAgIFwiUEFSQUdSQVBIXzNfMVwiOiBcIlRoZSBjb252ZXJzaW9uIHByb2Nlc3MgaXMgdmVyeSBjb21wbGV4IGFuZCBtYXkgYmUgYWZmZWN0ZWQgYnkgdmFyaW91cyBlcnJvcnMgcmVzdWx0aW5nIGZyb20gdGhlIGlucHV0IGRvY3VtZW50LiBcIixcclxuICAgIFwiUEFSQUdSQVBIXzNfMlwiOiBcIklzc3VlcyB0byBsb29rIGZvcjpcIixcclxuICAgIFwiTElfMl8xXCI6IFwiSW5jb3JyZWN0bHkgcmVjb2duaXplZCB3b3Jkcy5cIixcclxuICAgIFwiTElfMl8yXCI6IFwiSW5jb3JyZWN0IHdvcmQgYm91bmRhcmllcy5cIixcclxuICAgIFwiTElfMl8zXCI6IFwiU2VudGVuY2VzIHNwYW5uaW5nIG11bHRpcGxlIGNvbHVtbnMsIGxpbmVzIG9yIHBhZ2VzIHNwbGl0IGludG8gZGlmZmVyZW50IHRleHR1YWwgb2JqZWN0cy5cIixcclxuICAgIFwiTElfMl80XCI6IFwiTWlzcGxhY2VkIHBhZ2UgZm9vdGVycyBhbmQgaGVhZGVycy5cIixcclxuICAgIFwiTElfMl81XCI6IFwiSW5jb3JyZWN0IG51bWJlcmluZy5cIixcclxuICAgIFwiTElfMl82XCI6IFwiVGFibGVzIHJlY29nbml6ZWQgYXMgYmFja2dyb3VuZCBpbWFnZXMgd2l0aCB0ZXh0dWFsIGNvbnRlbnQgcGxhY2VkIGludG8gZGlmZmVyZW50IHRleHR1YWwgb2JqZWN0cy5cIixcclxuICAgIFwiTElfMl83XCI6IFwiU29tZSBkaWFncmFtcyByZWNvZ25pemVkIGFzIGltYWdlcyB3aXRob3V0IGFueSB0ZXh0dWFsIGNvbnRlbnQuXCIsXHJcbiAgICBcIkxJXzJfOFwiOiBcIlNlcGFyYXRvcnMsIGJvcmRlcnMgb3Igb3RoZXIgaG9yaXpvbnRhbCBsaW5lcyByZWNvZ25pemVkIGFzIHN0cmlrZXRocm91Z2ggb3IgdW5kZXJsaW5lZCB0ZXh0LlwiLFxyXG4gICAgXCJMSV8yXzlcIjogXCJGb3JtYXR0aW5nIG9mIHRoZSB0YWJsZSBvZiBjb250ZW50cyBvciBzaW1pbGFyIGxpc3RzIGNvbGxhcHNlZCBvciByZWNvZ25pemVkIGFzIHN0cmlrZXRocm91Z2ggb3IgdW5kZXJsaW5lZCB0ZXh0LlwiLFxyXG5cclxuICAgIFwiUEFSQUdSQVBIXzRfMVwiOiBcIjxiPk5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIGRvY3VtZW50IHdpbGwgbm90IHJldGFpbiBhbGwgZGV0YWlscyBvZiB0aGUgb3JpZ2luYWwgZm9ybWF0dGluZy48L2I+IFNvbWUgaW1hZ2VzLCB0YWJsZXMgb3IgZGlhZ3JhbXMgbWF5IGJlY29tZSBkaXN0b3J0ZWQgb3Igc2ltcGxpZmllZC4gRm9udHMgaW4gdGhlIHRyYW5zbGF0ZWQgZG9jdW1lbnQgd2lsbCBub3QgYmUgdGhlIHNhbWUgYXMgaW4gdGhlIG9yaWdpbmFsLCBidXQgbWF5IGJlIHNpbWlsYXIuIEluY29ycmVjdCBmb250IHNpemUgbWF5IGJlIHJlY29nbml6ZWQuIFNwZWNpZmljIFdvcmQgZm9ybWF0dGluZyBsaWtlIGhlYWRpbmdzLCB0YWJsZXMgb2YgY29udGVudCwgaGVhZGVycyBhbmQgZm9vdGVycywgbGFiZWxzLCBmb3JtcyBldGMuIHdpbGwgYmUgc3R5bGVkIHRvIGxvb2sgbGlrZSB0aGUgb3JpZ2luYWwsIGJ1dCB3aWxsIG5vdCBtYXRjaCB0aGUgb3JpZ2luYWwgY29tcGxldGVseSAoZS5nLiB0aXRsZXMgd2lsbCBiZSBib2xkIGFuZCBpbiBsYXJnZXIgZm9udCwgYnV0IHdpbGwgbm90IGJlIHNldCB0byB0aGUgaGVhZGluZyBzdHlsZSkuXCIsXHJcblxyXG4gICAgXCJDTE9TRVwiOiBcIkNsb3NlIGRpYWxvZ1wiXHJcbiAgfSxcclxuICBcIklNQUdFX0NPTlZFUlNJT05cIjoge1xyXG4gICAgXCJUSVRMRV8xXCI6IFwiSW1hZ2UgdHJhbnNsYXRpb25cIixcclxuICAgIFwiUEFSQUdSQVBIXzFfMVwiOiBcIldoZW4gYW4gaW1hZ2UgZmlsZSBpcyB1cGxvYWRlZCBmb3IgdHJhbnNsYXRpb24gaXQgaXMgY29udmVydGVkIGludG8gYSB0cmFuc2xhdGFibGUgZm9ybWF0LiBUcmFuc2xhdGlvbnMgY2FuIGJlIGRvd25sb2FkZWQgaW4gLmRvY3ggb3IgLnRteCBmb3JtYXRzIGFuZCB3aWxsIHJldGFpbiB0aGUgYmFzaWMgZm9ybWF0dGluZy5cIixcclxuICAgIFwiUEFSQUdSQVBIXzFfMlwiOiBcIjxiPlN1cHBvcnRlZCBpbWFnZSBmb3JtYXRzOjwvYj4gLmpwZywgLmpwZWcsIC5wbmcgYW5kIC5ibXAuXCIsXHJcbiAgICBcIlBBUkFHUkFQSF8xXzNcIjogXCJUbyBpbXByb3ZlIHRyYW5zbGF0aW9uIHBlcmZvcm1hbmNlLCB3ZSByZWNvbW1lbmQgdG8gZG93bmxvYWQgdGhlIGNvbnZlcnRlZCBkb2N1bWVudCBpbiB0aGUgb3JpZ2luYWwgbGFuZ3VhZ2UgYW5kIGZpeCBpdCBtYW51YWxseSBiZWZvcmUgcmUtdXBsb2FkaW5nIGZvciB0cmFuc2xhdGlvbi5cIixcclxuICAgIFwiSU1BR0VfQUxUXzFcIjogXCJTb3VyY2UgaW1hZ2UgZG93bmxvYWQgZXhhbXBsZVwiLFxyXG5cclxuICAgIFwiVElUTEVfMlwiOiBcIkltYWdlIGNvbnZlcnNpb25cIixcclxuICAgIFwiUEFSQUdSQVBIXzJfMVwiOiBcIlRoZSBpbWFnZSBpcyBhbmFseXNlZCBhbmQgaXRzIGNvbnRlbnQgaXMgc3BsaXQgaW4gdGV4dCwgdGFibGUgYW5kIGltYWdlL2JhY2tncm91bmQgaW1hZ2UgYXJlYXMuIFRoZXkgYXJlIGFuYWx5c2VkIGZ1cnRoZXIgdG8gZGV0ZXJtaW5lIHdoaWNoIGNvbnRlbnQgc2hvdWxkIGJlIHJlY29nbml6ZWQgYXMgdGV4dC5cIixcclxuICAgIFwiUEFSQUdSQVBIXzJfMlwiOiBcIlRleHR1YWwgZGF0YSBhcmUgYWNxdWlyZWQgYnkgbWVhbnMgb2YgT0NSIG9yIG9wdGljYWwgY2hhcmFjdGVyIHJlY29nbml0aW9uLiBFdmVyeSBjaGFyYWN0ZXIgaXMgcmVjb2duaXplZCBkZXBlbmRpbmcgb24gaXRzIHZpc3VhbCBjaGFyYWN0ZXJpc3RpY3MsIHRoZW4gYXNzZW1ibGVkIGludG8gd29yZHMgYW5kIHNlbnRlbmNlcy5cIixcclxuICAgIFwiUEFSQUdSQVBIXzJfM1wiOiBcIlJlY29nbml0aW9uIGlzIGFmZmVjdGVkIGJ5IG1hbnkgZmFjdG9ycywgaW5jbHVkaW5nOlwiLFxyXG4gICAgXCJMSV8xXzFcIjogXCJRdWFsaXR5IG9mIHRoZSBzY2FubmVkIGltYWdlIChibHVycmVkIG9yIGRlZm9ybWVkIHRleHQsIGltYWdlIG5vaXNlLCBpbWFnZSByZXNvbHV0aW9uLCBjb250cmFzdCBldGMuKS4gRm9yIHRoZSBiZXN0IHJlc3VsdCwgaW1hZ2VzIHNob3VsZCBiZSBhdCBsZWFzdCAzMDAgZHBpLCB1bnNrZXdlZCBhbmQgbm9pc2UgZnJlZS5cIixcclxuICAgIFwiTElfMV8yXCI6IFwiRm9udCBzaXplLiBTaXplcyBzbWFsbGVyIHRoYW4gOSBwb2ludHMgbWlnaHQgYmUgcG9vcmx5IHJlY29nbml6ZWQuIFwiLFxyXG4gICAgXCJMSV8xXzNcIjogXCJSYXJlIGFuZCBvcmlnaW5hbCBmb250cy4gTGVzcyBjb21tb24gZm9udHMgbWF5IGJlIHVucmVjb2duaXphYmxlIG9yIHBlcmZvcm0gd29yc2UuXCIsXHJcbiAgICBcIkxJXzFfNFwiOiBcIkNvbXBsZXhpdHkgb2YgdGhlIGRvY3VtZW50IHN0cnVjdHVyZSBhbmQgZm9ybWF0dGluZy5cIixcclxuXHJcbiAgICBcIlRJVExFXzNcIjogXCJJbXByb3ZpbmcgdHJhbnNsYXRpb24gcGVyZm9ybWFuY2VcIixcclxuICAgIFwiUEFSQUdSQVBIXzNfMVwiOiBcIlRoZSBjb252ZXJzaW9uIHByb2Nlc3MgaXMgdmVyeSBjb21wbGV4IGFuZCBtYXkgYmUgYWZmZWN0ZWQgYnkgdmFyaW91cyBlcnJvcnMgcmVzdWx0aW5nIGZyb20gdGhlIGlucHV0IGRvY3VtZW50LiBcIixcclxuICAgIFwiUEFSQUdSQVBIXzNfMlwiOiBcIklzc3VlcyB0byBsb29rIGZvcjpcIixcclxuICAgIFwiTElfMl8xXCI6IFwiSW5jb3JyZWN0bHkgcmVjb2duaXplZCB3b3Jkcy5cIixcclxuICAgIFwiTElfMl8yXCI6IFwiSW5jb3JyZWN0IHdvcmQgYm91bmRhcmllcy5cIixcclxuICAgIFwiTElfMl8zXCI6IFwiU2VudGVuY2VzIHNwYW5uaW5nIG11bHRpcGxlIGNvbHVtbnMsIGxpbmVzIG9yIHBhZ2VzIHNwbGl0IGludG8gZGlmZmVyZW50IHRleHR1YWwgb2JqZWN0cy5cIixcclxuICAgIFwiTElfMl80XCI6IFwiTWlzcGxhY2VkIHBhZ2UgZm9vdGVycyBhbmQgaGVhZGVycy5cIixcclxuICAgIFwiTElfMl81XCI6IFwiSW5jb3JyZWN0IG51bWJlcmluZy5cIixcclxuICAgIFwiTElfMl82XCI6IFwiVGFibGVzIHJlY29nbml6ZWQgYXMgYmFja2dyb3VuZCBpbWFnZXMgd2l0aCB0ZXh0dWFsIGNvbnRlbnQgcGxhY2VkIGludG8gZGlmZmVyZW50IHRleHR1YWwgb2JqZWN0cy5cIixcclxuICAgIFwiTElfMl83XCI6IFwiU29tZSBkaWFncmFtcyByZWNvZ25pemVkIGFzIGltYWdlcyB3aXRob3V0IGFueSB0ZXh0dWFsIGNvbnRlbnQuXCIsXHJcbiAgICBcIkxJXzJfOFwiOiBcIlNlcGFyYXRvcnMsIGJvcmRlcnMgb3Igb3RoZXIgaG9yaXpvbnRhbCBsaW5lcyByZWNvZ25pemVkIGFzIHN0cmlrZXRocm91Z2ggb3IgdW5kZXJsaW5lZCB0ZXh0LlwiLFxyXG5cclxuICAgIFwiUEFSQUdSQVBIXzRfMVwiOiBcIjxiPk5vdGUgdGhhdCB0aGUgcmVzdWx0aW5nIGRvY3VtZW50IHdpbGwgbm90IHJldGFpbiBhbGwgZGV0YWlscyBvZiB0aGUgb3JpZ2luYWwgZm9ybWF0dGluZy48L2I+IFNvbWUgaW1hZ2VzLCB0YWJsZXMgb3IgZGlhZ3JhbXMgbWF5IGJlY29tZSBkaXN0b3J0ZWQgb3Igc2ltcGxpZmllZC4gRm9udHMgaW4gdGhlIHRyYW5zbGF0ZWQgZG9jdW1lbnQgd2lsbCBub3QgYmUgdGhlIHNhbWUgYXMgaW4gdGhlIG9yaWdpbmFsLCBidXQgbWF5IGJlIHNpbWlsYXIuIEluY29ycmVjdCBmb250IHNpemUgbWF5IGJlIHJlY29nbml6ZWQuXCIsXHJcblxyXG4gICAgXCJDTE9TRVwiOiBcIkNsb3NlIGRpYWxvZ1wiXHJcbiAgfSxcclxuICBcIldFQlRSQU5TTEFURVwiOiB7XHJcbiAgICBcIkJBQ0tcIjogXCJCYWNrIHRvIFRyYW5zbGF0b3JcIixcclxuICAgIFwiQUREUkVTU1wiOiBcIkFkZHJlc3NcIixcclxuICAgIFwiTE9BRF9QQUdFXCI6IFwiTG9hZCBwYWdlXCIsXHJcbiAgICBcIlJFU1RPUkVcIjogXCJSZXN0b3JlXCIsXHJcbiAgICBcIkNBTkNFTFwiOiBcIkNhbmNlbFwiXHJcbiAgfSxcclxuICBcIkRBVEVfQUdPXCI6IHtcclxuICAgIFwiWUVBUlwiOiBcInt7dmFsdWV9fSB5ZWFyIGFnb1wiLFxyXG4gICAgXCJZRUFSU1wiOiBcInt7dmFsdWV9fSB5ZWFycyBhZ29cIixcclxuICAgIFwiTU9OVEhcIjogXCJ7e3ZhbHVlfX0gbW9udGggYWdvXCIsXHJcbiAgICBcIk1PTlRIU1wiOiBcInt7dmFsdWV9fSBtb250aHMgYWdvXCIsXHJcbiAgICBcIldFRUtcIjogXCJ7e3ZhbHVlfX0gd2VlayBhZ29cIixcclxuICAgIFwiV0VFS1NcIjogXCJ7e3ZhbHVlfX0gd2Vla3MgYWdvXCIsXHJcbiAgICBcIkRBWVwiOiBcInt7dmFsdWV9fSBkYXkgYWdvXCIsXHJcbiAgICBcIkRBWVNcIjogXCJ7e3ZhbHVlfX0gZGF5cyBhZ29cIixcclxuICAgIFwiSE9VUlwiOiBcInt7dmFsdWV9fSBob3VyIGFnb1wiLFxyXG4gICAgXCJIT1VSU1wiOiBcInt7dmFsdWV9fSBob3VycyBhZ29cIixcclxuICAgIFwiTUlOVVRFXCI6IFwie3t2YWx1ZX19IG1pbnV0ZSBhZ29cIixcclxuICAgIFwiTUlOVVRFU1wiOiBcInt7dmFsdWV9fSBtaW51dGVzIGFnb1wiLFxyXG4gICAgXCJTRUNPTkRcIjogXCJ7e3ZhbHVlfX0gc2Vjb25kIGFnb1wiLFxyXG4gICAgXCJTRUNPTkRTXCI6IFwie3t2YWx1ZX19IHNlY29uZHMgYWdvXCIsXHJcbiAgICBcIkpVU1RfTk9XXCI6IFwiSnVzdCBub3dcIlxyXG4gIH0sXHJcbiAgXCJURVJNX0NPTExFQ1RJT05TXCI6IHtcclxuICAgIFwiVElUTEVcIjogXCJHbG9zc2FyaWVzXCIsXHJcbiAgICBcIkRFRkFVTFRcIjogXCJEZWZhdWx0XCIsXHJcbiAgICBcIkRFU0NSSVBUSU9OXCI6IFwiQWNoaWV2ZSBwcmVjaXNlIGFuZCByZWxpYWJsZSB0cmFuc2xhdGlvbnMgYnkgY2hvb3NpbmcgdGhlIG1vc3Qgc3VpdGFibGUgZ2xvc3NhcnkgZnJvbSB0aGUgbGlzdC5cIixcclxuICAgIFwiR0xPU1NBUllcIjogXCJHbG9zc2FyeTogXCIsXHJcbiAgICBcIlNFTEVDVEVEX05PTkVcIjogXCJOb25lXCIsXHJcbiAgICBcIkVESVRcIjogXCJFZGl0XCIsXHJcbiAgICBcIkNSRUFURVwiOiBcIk5ldyBnbG9zc2FyeVwiLFxyXG4gICAgXCJERVNDUklQVElPTl9FTVBUWVwiOiBcIkNyZWF0ZSB5b3VyIGZpcnN0IGdsb3NzYXJ5IGZvciB7e3NyY0xhbmd9fS17e3RyZ0xhbmd9fVwiLFxyXG4gICAgXCJERVNDUklQVElPTl9FTVBUWV9BRFZJQ0VcIjogXCJGb3IgYmVzdCByZXN1bHRzIGluY2x1ZGUgdGVjaG5pY2FsIHRlcm1zLCBicmFuZCBuYW1lcywgYWNyb255bXMgYW5kIHN1cm5hbWVzLlwiLFxyXG4gICAgXCJMQVNUX1VQREFURURcIjogXCJMYXN0IHVwZGF0ZWQ6IHt7ZGF0ZX19XCIsXHJcbiAgICBcIkRFRkFVTFRfQ09MTEVDVElPTl9OQU1FXCI6IFwiTXkgdGVybSBjb2xsZWN0aW9uXCIsXHJcbiAgICBcIlNZTkNcIjogXCJTeW5jXCIsXHJcbiAgICBcIlNZTkNfRVJST1JcIjogXCJSZXRyeVwiLFxyXG4gICAgXCJURVJNU19JTl9VU0VcIjogXCJUZXJtcyBpbiB1c2U6IHt7dGVybUNvdW50fX1cIixcclxuICAgIFwiREVGQVVMVF9HTE9TU0FSWV9NQU5BR0VNRU5UXCI6IFwiRGVmYXVsdCBnbG9zc2FyeSBtYW5hZ2VtZW50XCIsXHJcbiAgICBcIkFSSUFfTEFCRUxTXCI6IHtcclxuICAgICAgXCJSQURJT19HUk9VUFwiOiBcIlNlbGVjdCBhIHRlcm0gY29sbGVjdGlvblwiLFxyXG4gICAgICBcIk9USEVSX0NPTExFQ1RJT05TXCI6IFwiT3BlbiB0aGUgY29sbGVjdGlvbiBtZW51XCJcclxuICAgIH0sXHJcbiAgICBcIkNSRUFURV9ESUFMT0dcIjoge1xyXG4gICAgICBcIkNBTkNFTFwiOiBcIkNhbmNlbFwiLFxyXG4gICAgICBcIkNPTExFQ1RJT05fTkFNRV9MQUJFTFwiOiBcIkdsb3NzYXJ5IG5hbWVcIixcclxuICAgICAgXCJDUkVBVEVcIjogXCJDcmVhdGVcIixcclxuICAgICAgXCJERVNDUklQVElPTl8xXCI6IFwiQWZ0ZXIgY2xpY2tpbmcg4oCcQ3JlYXRl4oCdIHlvdSB3aWxsIGJlIHJlZGlyZWN0ZWQgdG8gVGlsZGUgVGVybSB0byBhZGQgeW91ciB0ZXJtcy5cIixcclxuICAgICAgXCJERVNDUklQVElPTl8yXCI6IFwiPGk+KkFJIGlzIG5vdCBwZXJmZWN0IGFuZCBjYW4gbWFrZSBvY2Nhc2lvbmFsIG1pc3Rha2VzLiBZb3VyIHVuaXF1ZSB0ZXJtcyB3aWxsIGJlIHVzZWQgY29ycmVjdGx5IHdpdGggOTUlIGFjY3VyYWN5LjwvaT5cIixcclxuICAgICAgXCJUSVRMRVwiOiBcIkNyZWF0ZSBuZXcgZ2xvc3NhcnlcIixcclxuICAgICAgXCJDT0xMRUNUSU9OX05BTUVfRVJST1JcIjogXCJUaXRsZSBzaG91bGQgYmUgYXQgbGVhc3Qge3ttaW5MZW5ndGh9fSBzeW1ib2xzIGxvbmcgYW5kIG5vdCBsb25nZXIgdGhhbiB7e21heExlbmd0aH19IHN5bWJvbHNcIlxyXG4gICAgfSxcclxuICAgIFwiVE9PTFRJUFNcIjoge1xyXG4gICAgICBcIkVESVRcIjogXCJFZGl0IGdsb3NzYXJ5IGluIHRlcm1pbm9sb2d5IHBvcnRhbFwiLFxyXG4gICAgICBcIklNUE9SVElOR1wiOiBcIkltcG9ydGluZyBnbG9zc2FyeVwiLFxyXG4gICAgICBcIk5PX0VOVFJJRVNcIjogXCJUZXJtIGNvbGxlY3Rpb24gY2Fubm90IGJlIHVzZWQ6IG5vIHRlcm1zIGluIHNvdXJjZSBsYW5ndWFnZVwiLFxyXG4gICAgICBcIkRFRkFVTFRfQ09MTEVDVElPTlwiOiBcIlRoZXNlIHRlcm1zIGFyZSBub3cgaW4gdXNlLiBZb3UgY2FuIG1hbmFnZSB0aGVtIHRocm91Z2ggRGVmYXVsdCBnbG9zc2FyeSBtYW5hZ2VtZW50LiBcIixcclxuICAgICAgXCJTWU5DXCI6IFwiVXBkYXRlIHRoZSB0ZXJtIGNvbGxlY3Rpb25cIixcclxuICAgICAgXCJTWU5DSU5HXCI6IFwiVGVybSBjb2xsZWN0aW9uIGlzIHN5bmNlZCwgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoZSBjb2xsZWN0aW9uIHdpbGwgYmUgdXNlZFwiLFxyXG4gICAgICBcIkFUVEFDSF9UT19TWVNURU1fRVJST1JcIjogXCJBbiBlcnJvciBoYXMgb2NjdXJlZCB3aGlsZSBpbXBvcnRpbmcgdGhlIHRlcm0gY29sbGVjdGlvblwiXHJcbiAgICB9LFxyXG4gICAgXCJSRUFERVJcIjoge1xyXG4gICAgICBcIlRJVExFXCI6IFwiR2xvc3Nhcmllc1wiLFxyXG4gICAgICBcIkRFU0NSSVBUSU9OXCI6IFwiTm8gZ2xvc3NhcmllcyBjcmVhdGVkXCIsXHJcbiAgICAgIFwiSElOVFwiOiBcIllvdSBtdXN0IGJlIGEgVGVybWlub2xvZ3kgTWFuYWdlciB0byBjcmVhdGUgZ2xvc3Nhcmllc1wiXHJcbiAgICB9LFxyXG4gICAgXCJFUlJPUlNcIjoge1xyXG4gICAgICBcIkVSUk9SSU1QT1JUSU5HXCI6IFwiSW1wb3J0aW5nIGVycm9yXCJcclxuICAgIH1cclxuICB9LFxyXG4gIFwiRE9NQUlOU1wiOiB7XHJcbiAgICBcIk9QRU5fTElTVF9BUklBX0xBQkVMXCI6IFwiT3BlbiBkb21haW4gbGlzdFwiLFxyXG4gICAgXCJUSVRMRVwiOiBcIkRvbWFpbjpcIixcclxuICAgIFwiTEFXXCI6IFwiTGF3XCIsXHJcbiAgICBcIkRZTkFNSUNfTEVBUk5JTkdcIjogXCJEeW5hbWljIGxlYXJuaW5nXCIsXHJcbiAgICBcIkJVU0lORVNTXCI6IFwiQnVzaW5lc3NcIixcclxuICAgIFwiR0VORVJBTFwiOiBcIkdlbmVyYWxcIixcclxuICAgIFwiQVVUT1wiOiBcIkF1dG9kZXRlY3RcIixcclxuICAgIFwiU1BEXCI6IFwiRVUgRm9ybWFsIExhbmd1YWdlXCIsXHJcbiAgICBcIkdFTlwiOiBcIkdlbmVyYWwgVGV4dFwiLFxyXG4gICAgXCJFQ0JcIjogXCJGaW5hbmNlXCIsXHJcbiAgICBcIkVDSlwiOiBcIkV1cm9wZWFuIENvdXJ0IG9mIEp1c3RpY2VcIixcclxuICAgIFwiUFVCSEVBTFRIXCI6IFwiUHVibGljIEhlYWx0aFwiLFxyXG4gICAgXCJCVUJBXCI6IFwiRGV1dHNjaGUgQnVuZGVzYmFua1wiLFxyXG4gICAgXCJCRVJDWVwiOiBcIk1pbmlzdMOocmUgZGVzIEZpbmFuY2VzXCIsXHJcbiAgICBcIkVVUk9QRUFOQVwiOiBcIkV1cm9wZWFuYVwiLFxyXG4gICAgXCJJUE9cIjogXCJJUCBDYXNlIExhd1wiLFxyXG4gICAgXCJUUklTXCI6IFwiRW5naW5lcyBidWlsdCB1c2luZyBkYXRhIGZyb20gdGhlIHRlY2huaWNhbCByZWd1bGF0aW9uIGluZm9ybWF0aW9uIHN5c3RlbVwiLFxyXG4gICAgXCJWS1wiOiBcIlZhbHRpb25ldXZvc3RvbiBLYW5zbGlhXCIsXHJcbiAgICBcIkJVQkFfTk1UVEVTVFwiOiBcIkRldXRzY2hlIEJ1bmRlc2JhbmsgVGVzdFwiXHJcbiAgfSxcclxuICBcIkdSQU1NQVJfQ0hFQ0tfTUVOVVwiOiB7XHJcbiAgICBcIlRJVExFXCI6IFwiQ29uc2lkZXIgY2hhbmdpbmcgdG86XCJcclxuICB9LFxyXG4gIFwiQVVESU9cIjoge1xyXG4gICAgXCJDQU5DRUxcIjogXCJDYW5jZWxcIixcclxuICAgIFwiREVTQ1JJQkVfU1RBVEVfUkVDT1JESU5HXCI6IFwiUGxlYXNlIHNwZWFrIHRvIHJlY29yZC4uLlwiLFxyXG4gICAgXCJERVNDUklCRV9TVEFURV9QUk9DRVNTSU5HXCI6IFwiUHJvY2Vzc2luZy4uLlwiLFxyXG4gICAgXCJNSUNfTk9UX0ZPVU5EXCI6IFwiTWljcm9waG9uZSBub3QgZm91bmRcIixcclxuICAgIFwiU1RPUFwiOiBcIlN0b3AgcmVjb3JkaW5nXCIsXHJcbiAgICBcIlNUQVJUXCI6IFwiVHJhbnNsYXRlIHNwZWVjaFwiLFxyXG4gICAgXCJQVU5DVFVBVElPTl9NRVNTQUdFX1RJVExFXCI6IFwiQWRkIHB1bmN0dWF0aW9uXCIsXHJcbiAgICBcIlBVTkNUVUFUSU9OX01FU1NBR0VcIjogXCJQbGVhc2UgYWRkIHB1bmN0dWF0aW9uIHRvIHRoZSByZWNvZ25pemVkIHRleHQuIExvbmcgdGV4dCB3aXRob3V0IHB1bmN0dWF0aW9uIG1heSBoYXZlIGxvd2VyIHRyYW5zbGF0aW9uIHF1YWxpdHkgb3Igbm90IGJlIHRyYW5zbGF0ZWQuXCIsXHJcbiAgfSxcclxuICBcIkVYVEVOU0lPTl9QT1BVUFwiOiB7XHJcbiAgICBcIk9QRU5cIjogXCJzZWUgYWxsIHN1cHBvcnRlZCBmb3JtYXRzXCIsXHJcbiAgICBcIlRJVExFXCI6IFwiU3VwcG9ydGVkIGZpbGUgZm9ybWF0c1wiLFxyXG4gICAgXCJERVNDUklQVElPTlwiOiBcIlVURi04IG9yIFVURi0xNiBjb2RpbmcgcmVxdWlyZWQgdG8gZW5zdXJlIGNvcnJlY3QgZmlsZSB0cmFuc2xhdGlvblwiLFxyXG4gICAgXCJPRkZJQ0VcIjogXCJPZmZpY2VcIixcclxuICAgIFwiU0NBTk5FRFwiOiBcIkltYWdlIGZpbGVzXCIsXHJcbiAgICBcIklOVEVSQ0hBTkdFXCI6IFwiSW50ZXJjaGFuZ2UgZm9ybWF0c1wiLFxyXG4gICAgXCJXRUJcIjogXCJXZWJcIixcclxuICAgIFwiT1RIRVJcIjogXCJPdGhlclwiLFxyXG4gIH0sXHJcbiAgXCJGSUxFX1VQTE9BRFwiOiB7XHJcbiAgICBcIlVQTE9BRFwiOiBcIlVwbG9hZFwiLFxyXG4gICAgXCJEUkFHX0FORF9EUk9QXCI6IFwib3IgZHJhZyBhbmQgZHJvcCBcIixcclxuICAgIFwiRklMRVwiOiBcImEgZmlsZVwiLFxyXG4gICAgXCJGSUxFU1wiOiBcImZpbGVzXCIsXHJcbiAgICBcIkxJTUlUU1wiOiBcIiAoIHt7dmlzaWJsZUV4dGVuc2lvbnN9fS4gTWF4IHt7bWF4U2l6ZU1CfX0mbmJzcDspXCIsXHJcbiAgICBcIkNMRUFSXCI6IFwiQ2xlYXIgZmlsZVwiXHJcbiAgfSxcclxuICBcIlNZU1RFTV9QSUNLRVJcIjoge1xyXG4gICAgXCJTT1VSQ0VcIjogXCJUcmFuc2xhdGUgZnJvbVwiLFxyXG4gICAgXCJUQVJHRVRcIjogXCJUcmFuc2xhdGUgdG9cIixcclxuICAgIFwiU0VBUkNIX1BMQUNFSE9MREVSXCI6IFwiU2VhcmNoIGxhbmd1YWdlc1wiLFxyXG4gICAgXCJSRUNFTlRfU1lTVEVNX1RJVExFXCI6IFwiUmVjZW50IHRyYW5zbGF0aW9uIGRpcmVjdGlvbnNcIixcclxuICAgIFwiU0VMRUNUX0RPTUFJTlwiOiBcIlNlbGVjdCBkb21haW5cIixcclxuICAgIFwiRklMVEVSX05PX1JFU1VMVFNcIjogXCJObyByZXN1bHRzXCIsXHJcbiAgICBcIkFMTF9MQU5HVUFHRVNcIjogXCJBbGwgbGFuZ3VhZ2VzXCIsXHJcbiAgICBcIkNMRUFSX1NFQVJDSFwiOiBcIkNsZWFyIHNlYXJjaCB0ZXh0XCIsXHJcbiAgICBcIk9QRU5fU09VUkNFX0FSSUFfTEFCRUxcIjogXCJTZWxlY3Qgc291cmNlIGxhbmd1YWdlXCIsXHJcbiAgICBcIk9QRU5fVEFSR0VUX0FSSUFfTEFCRUxcIjogXCJTZWxlY3QgdGFyZ2V0IGxhbmd1YWdlIGFuZCBkb21haW5cIlxyXG4gIH0sXHJcbiAgXCJURVhUX1RSQU5TTEFUSU9OX1BST0dSRVNTX0lORElDQVRPUlwiOiB7XHJcbiAgICBcIlRJVExFXCI6IFwiVHJhbnNsYXRpb24gcHJvdmlkZWQgYnkge3twcm92aWRlcn19XCIsXHJcbiAgICBcIlRSQU5TTEFUSU5HXCI6IFwiVHJhbnNsYXRpbmcuLi5cIixcclxuICAgIFwiQ0xPU0VfQlVUVE9OX1RPT0xUSVBcIjogXCJSZW1vdmUgcHJvZ3Jlc3MgYmFyXCIsXHJcbiAgICBcIkNMT1NFX0JVVFRPTl9BUklBX0xBQkVMXCI6IFwiUmVtb3ZlIHByb2dyZXNzIGJhclwiXHJcbiAgfSxcclxuICBcIlZFTkRPUl9NRVNTQUdFXCI6IHtcclxuICAgIFwiVEVYVFwiOiBcIlRyYW5zbGF0aW9uIHByb3ZpZGVkIGJ5IHt7dmVuZG9yfX1cIixcclxuICAgIFwiSUNPTl9UT09MVElQXCI6IFwiU3lzdGVtcyBvZmZlcmVkIGJ5IHt7dmVuZG9yfX0gYXJlIHVzZWQgYnkgYSBodWdlIG51bWJlciBvZiB1c2Vycy4gVGhleSBtYXkgYmUgc2xvdyBhdCB0aW1lIGR1ZSB0byB0aGUgaGVhdnkgd29yayBsb2FkLlwiXHJcbiAgfSxcclxuICBcIlZFTkRPUlNcIjoge1xyXG4gICAgXCJFVFJBTlNMQVRJT05cIjogXCJlVHJhbnNsYXRpb25cIlxyXG4gIH0sXHJcbiAgXCJURVhUX1RPX1NQRUVDSFwiOiB7XHJcbiAgICBcIlBMQVlcIjogXCJMaXN0ZW5cIixcclxuICAgIFwiUEFVU0VcIjogXCJQYXVzZVwiXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -73,18 +73,18 @@ export class TldTranslateSystemManagementService {
73
73
  continue;
74
74
  }
75
75
  const domain = {
76
- domain: system.id,
76
+ languageId: system.languageId,
77
77
  title: system.domain
78
78
  };
79
79
  domains.push(domain);
80
80
  const vendor = {
81
- systemId: system.id,
81
+ languageId: system.languageId,
82
82
  title: system.vendor
83
83
  };
84
84
  if (!vendors.includes(vendor)) {
85
85
  vendors.push(vendor);
86
86
  }
87
- if (domain.domain === this.activeSystem.id) {
87
+ if (domain.languageId === this.activeSystem.languageId) {
88
88
  this.activeDomain = domain;
89
89
  }
90
90
  }
@@ -108,26 +108,26 @@ export class TldTranslateSystemManagementService {
108
108
  });
109
109
  return titles;
110
110
  }
111
- init(defaultSystemId) {
111
+ init(defaultSystemLanguageId) {
112
112
  this.systemService.getSystemList().subscribe({
113
113
  next: (res) => {
114
114
  this.systems = res;
115
115
  if (res.length == 0) {
116
116
  this.loadedSystemsSubject.next(res);
117
117
  }
118
- if (!this.systemExists(defaultSystemId, this.systems)) {
119
- defaultSystemId = this.systems[0].id;
118
+ if (!this.systemExists(defaultSystemLanguageId, this.systems)) {
119
+ defaultSystemLanguageId = this.systems[0].languageId;
120
120
  for (const system of this.systems) {
121
121
  const vendor = system.vendor;
122
122
  if (vendor === this.defaultVendor) {
123
- defaultSystemId = system.id;
123
+ defaultSystemLanguageId = system.languageId;
124
124
  break;
125
125
  }
126
126
  }
127
127
  }
128
128
  this.createRecentSystemArray();
129
129
  this.sourceLangList = this.createLangList(this.systems);
130
- this.changeSystem(defaultSystemId);
130
+ this.changeSystem(defaultSystemLanguageId);
131
131
  this.widgetInitialized = true;
132
132
  this.sysList.next(this.systems);
133
133
  this.noSystemsError = false;
@@ -147,13 +147,13 @@ export class TldTranslateSystemManagementService {
147
147
  swapSystemLanguages() {
148
148
  this.changeLanguage(this.targetLanguage, this.sourceLanguage);
149
149
  }
150
- changeSystem(systemId, retranslate = true) {
151
- if (this.activeSystem?.id === systemId) {
150
+ changeSystem(languageId, retranslate = true) {
151
+ if (this.activeSystem?.languageId === languageId) {
152
152
  return;
153
153
  }
154
154
  let selectedSystem;
155
155
  for (const system of this.systems) {
156
- if (system.id === systemId) {
156
+ if (system.languageId === languageId) {
157
157
  selectedSystem = system;
158
158
  break;
159
159
  }
@@ -164,12 +164,12 @@ export class TldTranslateSystemManagementService {
164
164
  this.activeSystem = selectedSystem;
165
165
  this.getActiveVendorsAndDomains();
166
166
  this.onActiveSystemChange(retranslate);
167
- this.setLastUsedSystem(selectedSystem.id);
167
+ this.setLastUsedSystem(selectedSystem.languageId);
168
168
  }
169
- systemExists(systemId, systemList) {
169
+ systemExists(languageId, systemList) {
170
170
  const systems = systemList ?? this.systems;
171
171
  for (const system of systems) {
172
- if (system.id === systemId) {
172
+ if (system.languageId === languageId) {
173
173
  return true;
174
174
  }
175
175
  }
@@ -203,8 +203,8 @@ export class TldTranslateSystemManagementService {
203
203
  catch {
204
204
  return;
205
205
  }
206
- systemIdArray.forEach((id) => {
207
- const existingSystem = this.systems.find(system => system.id === id);
206
+ systemIdArray.forEach((languageId) => {
207
+ const existingSystem = this.systems.find(system => system.languageId === languageId);
208
208
  if (existingSystem && !this.recentSystems.includes(existingSystem)) {
209
209
  recentSystemArray.push(existingSystem);
210
210
  }
@@ -212,7 +212,7 @@ export class TldTranslateSystemManagementService {
212
212
  this.recentSystems = recentSystemArray;
213
213
  }
214
214
  addToRecentSystemArray(system) {
215
- const existingSystem = this.recentSystems.find(existing => existing.id === system.id);
215
+ const existingSystem = this.recentSystems.find(existing => existing.languageId === system.languageId);
216
216
  // if system already in list, put it to first position. If ix 0, no action required since latest system is already first.
217
217
  if (existingSystem) {
218
218
  const systemIxInRecentList = this.recentSystems.indexOf(existingSystem);
@@ -228,7 +228,7 @@ export class TldTranslateSystemManagementService {
228
228
  }
229
229
  this.recentSystems.splice(0, 0, system);
230
230
  }
231
- localStorage.setItem(this.recentSystemKey, JSON.stringify(this.recentSystems.map(system => system.id)));
231
+ localStorage.setItem(this.recentSystemKey, JSON.stringify(this.recentSystems.map(system => system.languageId)));
232
232
  }
233
233
  canSwapSystemLanguages() {
234
234
  let langSwapActive = false;
@@ -249,7 +249,7 @@ export class TldTranslateSystemManagementService {
249
249
  langListItemArray.push({
250
250
  domain: system.domain,
251
251
  lang: srcLangCode ? system.targetLanguage : system.sourceLanguage,
252
- systemId: system.id,
252
+ languageId: system.languageId,
253
253
  vendor: system.vendor
254
254
  });
255
255
  }
@@ -261,7 +261,7 @@ export class TldTranslateSystemManagementService {
261
261
  const systemsForLanguagePair = systems.filter(system => system.sourceLanguage === sourceLanguage && targetLanguage === system.targetLanguage);
262
262
  // Ideally this case should not happen, but it is possible.
263
263
  if (systemsForLanguagePair.length === 0) {
264
- return this.systems.find(system => system.sourceLanguage === sourceLanguage)?.id;
264
+ return this.systems.find(system => system.sourceLanguage === sourceLanguage)?.languageId;
265
265
  }
266
266
  let systemsWithDefaultVendor = systemsForLanguagePair.filter(system => (system.vendor || this.defaultVendor) === this.defaultVendor);
267
267
  if (systemsWithDefaultVendor.length === 0) {
@@ -277,7 +277,7 @@ export class TldTranslateSystemManagementService {
277
277
  const preferredStatuses = ['running', 'queuingtransl', 'standby'];
278
278
  SortHelper.sortByArray(systemsWithDefaultVendor, preferredStatuses, "status");
279
279
  }
280
- return systemsWithDefaultDomain[0].id;
280
+ return systemsWithDefaultDomain[0].languageId;
281
281
  }
282
282
  onActiveSystemChange(retranslate = true) {
283
283
  const system = this.activeSystem;
@@ -288,14 +288,15 @@ export class TldTranslateSystemManagementService {
288
288
  lang: this.sourceLanguage,
289
289
  domain: system.domain,
290
290
  vendor: vendor,
291
- systemId: system.id,
291
+ languageId: system.languageId,
292
292
  },
293
293
  sourceLangList: this.sourceLangList,
294
294
  systemId: system.id,
295
+ languageId: system.languageId,
295
296
  targetLang: {
296
297
  domain: system.domain,
297
298
  vendor: vendor,
298
- systemId: system.id,
299
+ languageId: system.languageId,
299
300
  lang: this.targetLanguage
300
301
  },
301
302
  targetLangList: this.targetLangList,
@@ -319,4 +320,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
319
320
  type: Inject,
320
321
  args: [TRANSLATION_API_VERSION_TOKEN]
321
322
  }] }]; } });
322
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLXRyYW5zbGF0ZS1zeXN0ZW0tbWFuYWdlbWVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGxkLXRyYW5zbGF0ZS9zcmMvbGliL21vZHVsZXMvdGxkLWNvbW1vbi9zZXJ2aWNlcy90bGQtdHJhbnNsYXRlLXN5c3RlbS1tYW5hZ2VtZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFvQyxVQUFVLEVBQStDLE1BQU0sdUJBQXVCLENBQUM7QUFDbEksT0FBTyxFQUFFLGVBQWUsRUFBYyxhQUFhLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVsRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7OztBQUsxRSxNQUFNLE9BQU8sbUNBQW1DO0lBMkMzQjtJQUNBO0lBQ0E7SUFDdUM7SUE3QzFELGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDdkIsT0FBTyxHQUFhLEVBQUUsQ0FBQztJQUN2QixpQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFDMUIsT0FBTyxHQUFHLElBQUksYUFBYSxDQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLFlBQVksQ0FBVTtJQUN0QixnQkFBZ0IsQ0FBVztJQUUzQiwwQkFBMEIsR0FBRyx1Q0FBdUMsQ0FBQztJQUU3RCxvQkFBb0IsR0FBRyxJQUFJLE9BQU8sRUFBWSxDQUFDO0lBRXZELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUN4RCxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLGNBQTBCLENBQUM7SUFDM0QsQ0FBQztJQUVPLFlBQVksQ0FBVTtJQUN0QixPQUFPLEdBQWEsRUFBRSxDQUFDO0lBQ3ZCLE9BQU8sR0FBYSxFQUFFLENBQUM7SUFDdkIsY0FBYyxDQUFVO0lBQ3hCLGNBQWMsQ0FBVTtJQUN4QixjQUFjLEdBQW1CLEVBQUUsQ0FBQztJQUNwQyxjQUFjLEdBQW1CLEVBQUUsQ0FBQztJQUU1QyxpQ0FBaUM7SUFDakMsdUJBQXVCO0lBQ3ZCLElBQUkscUJBQXFCLEtBQUssT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxvQkFBOEIsQ0FBQyxDQUFDLENBQUM7SUFDckYsYUFBYSxHQUFhLEVBQUUsQ0FBQztJQUNyQyxZQUFZO0lBRUssZUFBZSxHQUFHLGVBQWUsQ0FBQztJQUNsQyxNQUFNLEdBQWdDLElBQUksZUFBZSxDQUFrQixJQUFJLENBQUMsQ0FBQztJQUNqRixpQkFBaUIsR0FBVyxnQkFBZ0IsQ0FBQztJQUU5RCxZQUNtQixLQUFtQixFQUNuQixNQUFpQyxFQUNqQyxhQUE0QixFQUNXLFVBQVU7UUFIakQsVUFBSyxHQUFMLEtBQUssQ0FBYztRQUNuQixXQUFNLEdBQU4sTUFBTSxDQUEyQjtRQUNqQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUNXLGVBQVUsR0FBVixVQUFVLENBQUE7SUFDakUsQ0FBQztJQUVKLFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVELGNBQWMsQ0FBQyxNQUFjLEVBQUUsTUFBYztRQUMzQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUVELDBCQUEwQjtRQUN4QixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDaEQsT0FBTztTQUNSO1FBQ0QsTUFBTSxPQUFPLEdBQWEsRUFBRSxDQUFDO1FBQzdCLE1BQU0sT0FBTyxHQUFhLEVBQUUsQ0FBQztRQUU3QixLQUFLLE1BQU0sTUFBTSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDakMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLGNBQWMsS0FBSyxJQUFJLENBQUMsY0FBYyxJQUFJLE1BQU0sQ0FBQyxjQUFjLEtBQUssSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFO2dCQUNyRyxTQUFTO2FBQ1Y7WUFDRCxNQUFNLE1BQU0sR0FBVztnQkFDckIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxFQUFFO2dCQUNqQixLQUFLLEVBQUUsTUFBTSxDQUFDLE1BQWdCO2FBQy9CLENBQUM7WUFDRixPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3JCLE1BQU0sTUFBTSxHQUFXO2dCQUNyQixRQUFRLEVBQUUsTUFBTSxDQUFDLEVBQUU7Z0JBQ25CLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBTTthQUNyQixDQUFBO1lBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQzdCLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDdEI7WUFFRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUU7Z0JBQzFDLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDO2FBQzVCO1NBQ0Y7UUFFRCxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUN2QixJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztJQUN6QixDQUFDO0lBR0QsaUJBQWlCO1FBQ2YsT0FBTyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBVyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxJQUFvQjtRQUNyQyxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ1QsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUNELE1BQU0sTUFBTSxHQUFhLEVBQUUsQ0FBQztRQUU1QixJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDcEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUM1QixNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQW1CLENBQUMsQ0FBQztZQUMvQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBRTtnQkFDWixNQUFNLENBQUMsSUFBSSxDQUFDLFNBQW1CLENBQUMsQ0FBQzthQUNsQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVELElBQUksQ0FBQyxlQUF1QjtRQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsRUFBRSxDQUFDLFNBQVMsQ0FBQztZQUMzQyxJQUFJLEVBQUUsQ0FBQyxHQUFhLEVBQUUsRUFBRTtnQkFDdEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7Z0JBQ25CLElBQUksR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUU7b0JBQ25CLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ3JDO2dCQUVELElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ3JELGVBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztvQkFDckMsS0FBSyxNQUFNLE1BQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO3dCQUNqQyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO3dCQUM3QixJQUFJLE1BQU0sS0FBSyxJQUFJLENBQUMsYUFBYSxFQUFFOzRCQUNqQyxlQUFlLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQzs0QkFDNUIsTUFBTTt5QkFDUDtxQkFDRjtpQkFDRjtnQkFFRCxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztnQkFDL0IsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDeEQsSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQztnQkFDbkMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztnQkFDOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUNoQyxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztZQUM5QixDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ2YsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQywwQkFBMEIsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUMzRCxDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxRQUFnQjtRQUNoQyxPQUFPLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsWUFBWSxDQUFDLFFBQWdCLEVBQUUsV0FBVyxHQUFHLElBQUk7UUFDL0MsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsS0FBSyxRQUFRLEVBQUU7WUFDdEMsT0FBTztTQUNSO1FBRUQsSUFBSSxjQUF1QixDQUFDO1FBRTVCLEtBQUssTUFBTSxNQUFNLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNqQyxJQUFJLE1BQU0sQ0FBQyxFQUFFLEtBQUssUUFBUSxFQUFFO2dCQUMxQixjQUFjLEdBQUcsTUFBTSxDQUFDO2dCQUN4QixNQUFNO2FBQ1A7U0FDRjtRQUNELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN2RixJQUFJLENBQUMsY0FBYyxHQUFHLGNBQWMsQ0FBQyxjQUFjLENBQUM7UUFDcEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxjQUFjLENBQUMsY0FBYyxDQUFDO1FBQ3BELElBQUksQ0FBQyxZQUFZLEdBQUcsY0FBYyxDQUFDO1FBQ25DLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBRWxDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUV2QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxZQUFZLENBQUMsUUFBZ0IsRUFBRSxVQUFvQjtRQUNqRCxNQUFNLE9BQU8sR0FBRyxVQUFVLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUMzQyxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtZQUM1QixJQUFJLE1BQU0sQ0FBQyxFQUFFLEtBQUssUUFBUSxFQUFFO2dCQUMxQixPQUFPLElBQUksQ0FBQzthQUNiO1NBQ0Y7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxzQkFBc0IsQ0FBQyxNQUFjO1FBQ25DLE9BQU8sTUFBTSxDQUFDLG1CQUE4QixDQUFDO0lBQy9DLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxrQkFBMEI7UUFDN0MsSUFBSSxrQkFBa0IsS0FBSyxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRTtZQUMzRCxJQUFJLENBQUMsY0FBYyxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLENBQUM7U0FDM0U7YUFDSTtZQUNILElBQUksQ0FBQyxjQUFjLENBQUMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUMzRTtJQUVILENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxrQkFBMEI7UUFDN0MsSUFBSSxrQkFBa0IsS0FBSyxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRTtZQUMzRCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLGtCQUFrQixDQUFDLENBQUM7U0FDM0U7YUFDSTtZQUNILElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztTQUMzRTtJQUNILENBQUM7SUFFTyx1QkFBdUI7UUFDN0IsSUFBSSxhQUF1QixDQUFDO1FBQzVCLE1BQU0saUJBQWlCLEdBQWEsRUFBRSxDQUFDO1FBQ3ZDLElBQUk7WUFDRixhQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQztTQUNoRjtRQUNELE1BQU07WUFDSixPQUFPO1NBQ1I7UUFDRCxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUU7WUFDM0IsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1lBQ3JFLElBQUksY0FBYyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLEVBQUU7Z0JBQ2xFLGlCQUFpQixDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUN4QztRQUNILENBQUMsQ0FBQyxDQUFBO1FBQ0YsSUFBSSxDQUFDLGFBQWEsR0FBRyxpQkFBaUIsQ0FBQztJQUN6QyxDQUFDO0lBRU8sc0JBQXNCLENBQUMsTUFBYztRQUMzQyxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3RGLHlIQUF5SDtRQUN6SCxJQUFJLGNBQWMsRUFBRTtZQUNsQixNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQ3hFLElBQUksb0JBQW9CLEdBQUcsQ0FBQyxFQUFFO2dCQUM1QixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDbkQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQzthQUN6QztTQUNGO2FBQ0k7WUFDSCxpREFBaUQ7WUFDakQsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMscUJBQXFCLEVBQUU7Z0JBQzlELElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUFFLENBQUM7YUFDMUI7WUFFRCxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQ3pDO1FBQ0QsWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFHLENBQUM7SUFFTyxzQkFBc0I7UUFDNUIsSUFBSSxjQUFjLEdBQUcsS0FBSyxDQUFDO1FBQzNCLEtBQUssTUFBTSxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNsQyxNQUFNLE1BQU0sR0FBRyxPQUFPLENBQUM7WUFDdkIsSUFBSSxNQUFNLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxjQUFjLElBQUksTUFBTSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFO2dCQUNoRyxjQUFjLEdBQUcsSUFBSSxDQUFDO2dCQUN0QixNQUFNO2FBQ1A7U0FDRjtRQUNELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxjQUFjLENBQUM7UUFDdkMsT0FBTyxjQUFjLENBQUM7SUFDeEIsQ0FBQztJQUVPLGNBQWMsQ0FBQyxPQUFpQixFQUFFLFdBQW9CO1FBQzVELE1BQU0saUJBQWlCLEdBQW1CLEVBQUUsQ0FBQztRQUM3QyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDekIsSUFBSSxDQUFDLFdBQVcsSUFBSSxXQUFXLEtBQUssTUFBTSxDQUFDLGNBQWMsRUFBRTtnQkFDekQsaUJBQWlCLENBQUMsSUFBSSxDQUNwQjtvQkFDRSxNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQWdCO29CQUMvQixJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsY0FBYztvQkFDakUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxFQUFFO29CQUNuQixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU07aUJBQ3RCLENBQ0YsQ0FBQzthQUNIO1FBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDRixPQUFPLGlCQUFpQixDQUFDO0lBQzNCLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxjQUFzQixFQUFFLGNBQXNCO1FBQ3RFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFN0IsTUFBTSxzQkFBc0IsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLGNBQWMsS0FBSyxjQUFjLElBQUksY0FBYyxLQUFLLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUM5SSwyREFBMkQ7UUFDM0QsSUFBSSxzQkFBc0IsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3ZDLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsY0FBYyxLQUFLLGNBQWMsQ0FBQyxFQUFFLEVBQVksQ0FBQztTQUM1RjtRQUVELElBQUksd0JBQXdCLEdBQUcsc0JBQXNCLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDckksSUFBSSx3QkFBd0IsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3pDLHdCQUF3QixHQUFHLHNCQUFzQixDQUFDO1NBQ25EO1FBRUMsSUFBSSx3QkFBd0IsR0FBRyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBZ0IsQ0FBQyxDQUFDLENBQUM7UUFDaEksSUFBSSx3QkFBd0IsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3pDLHdCQUF3QixHQUFHLHdCQUF3QixDQUFDO1NBQ3JEO1FBQ0QsVUFBVSxDQUFDLFdBQVcsQ0FBQyx3QkFBd0IsRUFBRSxJQUFJLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBR2hGLDhDQUE4QztRQUM5QyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUsscUJBQXFCLENBQUMsRUFBRSxFQUFFO1lBQ2hELE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsZUFBZSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1lBQ2xFLFVBQVUsQ0FBQyxXQUFXLENBQUMsd0JBQXdCLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLENBQUM7U0FDL0U7UUFFRCxPQUFPLHdCQUF3QixDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMxQyxDQUFDO0lBRU8sb0JBQW9CLENBQUMsV0FBVyxHQUFHLElBQUk7UUFDN0MsTUFBTSxNQUFNLEdBQVcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUN6QyxJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDcEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUM7UUFDeEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7WUFDZixVQUFVLEVBQUU7Z0JBQ1YsSUFBSSxFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUN6QixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQWdCO2dCQUMvQixNQUFNLEVBQUUsTUFBTTtnQkFDZCxRQUFRLEVBQUUsTUFBTSxDQUFDLEVBQUU7YUFDcEI7WUFDRCxjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7WUFDbkMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQ25CLFVBQVUsRUFBRTtnQkFDVixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQWdCO2dCQUMvQixNQUFNLEVBQUUsTUFBTTtnQkFDZCxRQUFRLEVBQUUsTUFBTSxDQUFDLEVBQUU7Z0JBQ25CLElBQUksRUFBRSxJQUFJLENBQUMsY0FBYzthQUMxQjtZQUNELGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztZQUNuQyxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDN0QsY0FBYyxFQUFFLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtZQUM3QyxNQUFNLEVBQUUsTUFBTTtZQUNkLFdBQVcsRUFBRSxXQUFXO1lBQ3hCLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYTtTQUNsQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQS9WVSxtQ0FBbUMsb0hBOENwQyw2QkFBNkI7NEdBOUM1QixtQ0FBbUMsY0FGbEMsTUFBTTs7NEZBRVAsbUNBQW1DO2tCQUgvQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBK0NJLE1BQU07MkJBQUMsNkJBQTZCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFjdGl2ZURhdGEsIEFsZXJ0U2VydmljZSwgRG9tYWluLCBTb3J0SGVscGVyLCBTeXN0ZW0sIFN5c3RlbVNlcnZpY2UsIFZlbmRvciwgTGFuZ0xpc3RJdGVtIH0gZnJvbSAnQHRpbGRlLW5scC9uZ3gtY29tbW9uJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0LCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFRyYW5zbGF0aW9uQXBpVmVyc2lvbiB9IGZyb20gJy4uL21vZGVscyc7XHJcbmltcG9ydCB7IFRsZFRyYW5zbGF0ZUNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL3RsZC10cmFuc2xhdGUtY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUUkFOU0xBVElPTl9BUElfVkVSU0lPTl9UT0tFTiB9IGZyb20gJy4uLy4uLy4uL2luamVjdGlvbi10b2tlbnMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVGxkVHJhbnNsYXRlU3lzdGVtTWFuYWdlbWVudFNlcnZpY2Uge1xyXG4gIG5vU3lzdGVtc0Vycm9yID0gZmFsc2U7XHJcbiAgc3lzdGVtczogU3lzdGVtW10gPSBbXTtcclxuICB3aWRnZXRJbml0aWFsaXplZCA9IGZhbHNlO1xyXG4gIHN5c0xpc3QgPSBuZXcgUmVwbGF5U3ViamVjdDxTeXN0ZW1bXT4oMSk7XHJcbiAgYWN0aXZlRG9tYWluITogRG9tYWluO1xyXG4gIGNhblN3YXBMYW5ndWFnZXMhOiBib29sZWFuO1xyXG5cclxuICBkZWZhdWx0RXJyb3JUcmFuc2xhdGlvbktleSA9ICdUTERfVFJBTlNMQVRFLkVSUk9SX05PX1NZU1RFTVNfTE9BREVEJztcclxuXHJcbiAgcHJpdmF0ZSBsb2FkZWRTeXN0ZW1zU3ViamVjdCA9IG5ldyBTdWJqZWN0PFN5c3RlbVtdPigpO1xyXG5cclxuICBnZXQgYWN0aXZlVmVuZG9yKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlU3lzdGVtLnZlbmRvciB8fCB0aGlzLmRlZmF1bHRWZW5kb3I7XHJcbiAgfVxyXG5cclxuICBnZXQgZGVmYXVsdFZlbmRvcigpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZy5jb3JlQ29uZmlnLmRlZmF1bHRWZW5kb3I7XHJcbiAgfVxyXG5cclxuICBnZXQgZGVmYXVsdERvbWFpbnMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jb25maWcuY29yZUNvbmZpZy5kZWZhdWx0RG9tYWlucyBhcyBzdHJpbmdbXTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWN0aXZlU3lzdGVtITogU3lzdGVtO1xyXG4gIHByaXZhdGUgZG9tYWluczogRG9tYWluW10gPSBbXTtcclxuICBwcml2YXRlIHZlbmRvcnM6IFZlbmRvcltdID0gW107XHJcbiAgcHJpdmF0ZSBzb3VyY2VMYW5ndWFnZSE6IHN0cmluZztcclxuICBwcml2YXRlIHRhcmdldExhbmd1YWdlITogc3RyaW5nO1xyXG4gIHByaXZhdGUgc291cmNlTGFuZ0xpc3Q6IExhbmdMaXN0SXRlbVtdID0gW107XHJcbiAgcHJpdmF0ZSB0YXJnZXRMYW5nTGlzdDogTGFuZ0xpc3RJdGVtW10gPSBbXTtcclxuXHJcbiAgLy8jcmVnaW9uIFJlY2VudCBzeXN0ZW0gdmFyaWFibGVzXHJcbiAgLy8gUG9zc2libHkgZnJvbSBjb25maWdcclxuICBnZXQgcmVjZW50U3lzdGVtc01heENvdW50KCkgeyByZXR1cm4gdGhpcy5jb25maWcuY29yZUNvbmZpZy5tYXhSZWNlbnRTeXN0ZW1Db3VudCBhcyBudW1iZXI7IH1cclxuICBwcml2YXRlIHJlY2VudFN5c3RlbXM6IFN5c3RlbVtdID0gW107XHJcbiAgLy8jZW5kcmVnaW9uXHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgcmVjZW50U3lzdGVtS2V5ID0gXCJyZWNlbnRTeXN0ZW1zXCI7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBhY3RpdmU6IEJlaGF2aW9yU3ViamVjdDxBY3RpdmVEYXRhPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QWN0aXZlRGF0YT4oPGFueT5udWxsKTtcclxuICBwcml2YXRlIHJlYWRvbmx5IGxhc3RVc2VkU3lzdGVtS2V5OiBzdHJpbmcgPSBcImxhc3RVc2VkU3lzdGVtXCI7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBhbGVydDogQWxlcnRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb25maWc6IFRsZFRyYW5zbGF0ZUNvbmZpZ1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN5c3RlbVNlcnZpY2U6IFN5c3RlbVNlcnZpY2UsXHJcbiAgICBASW5qZWN0KFRSQU5TTEFUSU9OX0FQSV9WRVJTSU9OX1RPS0VOKSBwcml2YXRlIHJlYWRvbmx5IGFwaVZlcnNpb25cclxuICApIHt9XHJcblxyXG4gIGdldFN5c3RlbXMoKTogU3lzdGVtW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuc3lzdGVtcztcclxuICB9XHJcblxyXG4gIGNoYW5nZUxhbmd1YWdlKHNvdXJjZTogc3RyaW5nLCB0YXJnZXQ6IHN0cmluZykge1xyXG4gICAgY29uc3Qgc3lzdGVtSWQgPSB0aGlzLmZpbmRDb3JyZWN0U3lzdGVtKHNvdXJjZSwgdGFyZ2V0KTtcclxuICAgIHRoaXMuY2hhbmdlU3lzdGVtKHN5c3RlbUlkKTtcclxuICB9XHJcblxyXG4gIGdldEFjdGl2ZURhdGEoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hY3RpdmUuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBnZXRBY3RpdmVTeXN0ZW1PYmooKTogU3lzdGVtIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZVN5c3RlbTtcclxuICB9XHJcblxyXG4gIGdldEFjdGl2ZVZlbmRvcnNBbmREb21haW5zKCkge1xyXG4gICAgaWYgKCF0aGlzLnNvdXJjZUxhbmd1YWdlIHx8ICF0aGlzLnRhcmdldExhbmd1YWdlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IHZlbmRvcnM6IFZlbmRvcltdID0gW107XHJcbiAgICBjb25zdCBkb21haW5zOiBEb21haW5bXSA9IFtdO1xyXG5cclxuICAgIGZvciAoY29uc3Qgc3lzdGVtIG9mIHRoaXMuc3lzdGVtcykge1xyXG4gICAgICBpZiAoIShzeXN0ZW0uc291cmNlTGFuZ3VhZ2UgPT09IHRoaXMuc291cmNlTGFuZ3VhZ2UgJiYgc3lzdGVtLnRhcmdldExhbmd1YWdlID09PSB0aGlzLnRhcmdldExhbmd1YWdlKSkge1xyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IGRvbWFpbjogRG9tYWluID0ge1xyXG4gICAgICAgIGRvbWFpbjogc3lzdGVtLmlkLFxyXG4gICAgICAgIHRpdGxlOiBzeXN0ZW0uZG9tYWluIGFzIHN0cmluZ1xyXG4gICAgICB9O1xyXG4gICAgICBkb21haW5zLnB1c2goZG9tYWluKTtcclxuICAgICAgY29uc3QgdmVuZG9yOiBWZW5kb3IgPSB7XHJcbiAgICAgICAgc3lzdGVtSWQ6IHN5c3RlbS5pZCxcclxuICAgICAgICB0aXRsZTogc3lzdGVtLnZlbmRvclxyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoIXZlbmRvcnMuaW5jbHVkZXModmVuZG9yKSkge1xyXG4gICAgICAgIHZlbmRvcnMucHVzaCh2ZW5kb3IpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpZiAoZG9tYWluLmRvbWFpbiA9PT0gdGhpcy5hY3RpdmVTeXN0ZW0uaWQpIHtcclxuICAgICAgICB0aGlzLmFjdGl2ZURvbWFpbiA9IGRvbWFpbjtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZG9tYWlucyA9IGRvbWFpbnM7XHJcbiAgICB0aGlzLnZlbmRvcnMgPSB2ZW5kb3JzO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldExhc3RVc2VkU3lzdGVtKCk6IHN0cmluZyAge1xyXG4gICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMubGFzdFVzZWRTeXN0ZW1LZXkpIGFzIHN0cmluZztcclxuICB9XHJcblxyXG4gIGdldFVuaXF1ZUxhbmd1YWdlcyhsaXN0OiBMYW5nTGlzdEl0ZW1bXSk6IHN0cmluZ1tdIHtcclxuICAgIGlmICghbGlzdCkge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcbiAgICBjb25zdCB0aXRsZXM6IHN0cmluZ1tdID0gW107XHJcblxyXG4gICAgbGlzdC5mb3JFYWNoKChsYW5nKSA9PiB7XHJcbiAgICAgIGNvbnN0IGxhbmdUaXRsZSA9IGxhbmcubGFuZztcclxuICAgICAgY29uc3QgaXggPSB0aXRsZXMuaW5kZXhPZihsYW5nVGl0bGUgYXMgc3RyaW5nKTtcclxuICAgICAgaWYgKGl4ID09IC0xKSB7XHJcbiAgICAgICAgdGl0bGVzLnB1c2gobGFuZ1RpdGxlIGFzIHN0cmluZyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiB0aXRsZXM7XHJcbiAgfVxyXG5cclxuICBpbml0KGRlZmF1bHRTeXN0ZW1JZDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnN5c3RlbVNlcnZpY2UuZ2V0U3lzdGVtTGlzdCgpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXM6IFN5c3RlbVtdKSA9PiB7XHJcbiAgICAgICAgdGhpcy5zeXN0ZW1zID0gcmVzO1xyXG4gICAgICAgIGlmIChyZXMubGVuZ3RoID09IDApIHtcclxuICAgICAgICAgIHRoaXMubG9hZGVkU3lzdGVtc1N1YmplY3QubmV4dChyZXMpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLnN5c3RlbUV4aXN0cyhkZWZhdWx0U3lzdGVtSWQsIHRoaXMuc3lzdGVtcykpIHtcclxuICAgICAgICAgIGRlZmF1bHRTeXN0ZW1JZCA9IHRoaXMuc3lzdGVtc1swXS5pZDtcclxuICAgICAgICAgIGZvciAoY29uc3Qgc3lzdGVtIG9mIHRoaXMuc3lzdGVtcykge1xyXG4gICAgICAgICAgICBjb25zdCB2ZW5kb3IgPSBzeXN0ZW0udmVuZG9yO1xyXG4gICAgICAgICAgICBpZiAodmVuZG9yID09PSB0aGlzLmRlZmF1bHRWZW5kb3IpIHtcclxuICAgICAgICAgICAgICBkZWZhdWx0U3lzdGVtSWQgPSBzeXN0ZW0uaWQ7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuY3JlYXRlUmVjZW50U3lzdGVtQXJyYXkoKTtcclxuICAgICAgICB0aGlzLnNvdXJjZUxhbmdMaXN0ID0gdGhpcy5jcmVhdGVMYW5nTGlzdCh0aGlzLnN5c3RlbXMpO1xyXG4gICAgICAgIHRoaXMuY2hhbmdlU3lzdGVtKGRlZmF1bHRTeXN0ZW1JZCk7XHJcbiAgICAgICAgdGhpcy53aWRnZXRJbml0aWFsaXplZCA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5zeXNMaXN0Lm5leHQodGhpcy5zeXN0ZW1zKTtcclxuICAgICAgICB0aGlzLm5vU3lzdGVtc0Vycm9yID0gZmFsc2U7XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcclxuICAgICAgICB0aGlzLm5vU3lzdGVtc0Vycm9yID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLmFsZXJ0LmVycm9yKHRoaXMuZGVmYXVsdEVycm9yVHJhbnNsYXRpb25LZXksIGVycm9yKTtcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0TG9hZGVkU3lzdGVtcygpOiBPYnNlcnZhYmxlPFN5c3RlbVtdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5sb2FkZWRTeXN0ZW1zU3ViamVjdC5hc09ic2VydmFibGUoKTtcclxuICB9XHJcblxyXG4gIHNldExhc3RVc2VkU3lzdGVtKHN5c3RlbUlkOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLmxhc3RVc2VkU3lzdGVtS2V5LCBzeXN0ZW1JZCk7XHJcbiAgfVxyXG5cclxuICBzd2FwU3lzdGVtTGFuZ3VhZ2VzKCkge1xyXG4gICAgdGhpcy5jaGFuZ2VMYW5ndWFnZSh0aGlzLnRhcmdldExhbmd1YWdlLCB0aGlzLnNvdXJjZUxhbmd1YWdlKTtcclxuICB9XHJcblxyXG4gIGNoYW5nZVN5c3RlbShzeXN0ZW1JZDogc3RyaW5nLCByZXRyYW5zbGF0ZSA9IHRydWUpIHtcclxuICAgIGlmICh0aGlzLmFjdGl2ZVN5c3RlbT8uaWQgPT09IHN5c3RlbUlkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgc2VsZWN0ZWRTeXN0ZW0hOiBTeXN0ZW07XHJcblxyXG4gICAgZm9yIChjb25zdCBzeXN0ZW0gb2YgdGhpcy5zeXN0ZW1zKSB7XHJcbiAgICAgIGlmIChzeXN0ZW0uaWQgPT09IHN5c3RlbUlkKSB7XHJcbiAgICAgICAgc2VsZWN0ZWRTeXN0ZW0gPSBzeXN0ZW07XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMudGFyZ2V0TGFuZ0xpc3QgPSB0aGlzLmNyZWF0ZUxhbmdMaXN0KHRoaXMuc3lzdGVtcywgc2VsZWN0ZWRTeXN0ZW0uc291cmNlTGFuZ3VhZ2UpO1xyXG4gICAgdGhpcy50YXJnZXRMYW5ndWFnZSA9IHNlbGVjdGVkU3lzdGVtLnRhcmdldExhbmd1YWdlO1xyXG4gICAgdGhpcy5zb3VyY2VMYW5ndWFnZSA9IHNlbGVjdGVkU3lzdGVtLnNvdXJjZUxhbmd1YWdlO1xyXG4gICAgdGhpcy5hY3RpdmVTeXN0ZW0gPSBzZWxlY3RlZFN5c3RlbTtcclxuICAgIHRoaXMuZ2V0QWN0aXZlVmVuZG9yc0FuZERvbWFpbnMoKTtcclxuXHJcbiAgICB0aGlzLm9uQWN0aXZlU3lzdGVtQ2hhbmdlKHJldHJhbnNsYXRlKTtcclxuXHJcbiAgICB0aGlzLnNldExhc3RVc2VkU3lzdGVtKHNlbGVjdGVkU3lzdGVtLmlkKTtcclxuICB9XHJcblxyXG4gIHN5c3RlbUV4aXN0cyhzeXN0ZW1JZDogc3RyaW5nLCBzeXN0ZW1MaXN0OiBTeXN0ZW1bXSk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3Qgc3lzdGVtcyA9IHN5c3RlbUxpc3QgPz8gdGhpcy5zeXN0ZW1zO1xyXG4gICAgZm9yIChjb25zdCBzeXN0ZW0gb2Ygc3lzdGVtcykge1xyXG4gICAgICBpZiAoc3lzdGVtLmlkID09PSBzeXN0ZW1JZCkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgaXNUZXJtaW5vbG9neVN1cHBvcnRlZChzeXN0ZW06IFN5c3RlbSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHN5c3RlbS5pbmNsdWRlc1Rlcm1pbm9sb2d5IGFzIGJvb2xlYW47XHJcbiAgfVxyXG5cclxuICBjaGFuZ2VTb3VyY2VMYW5ndWFnZShzb3VyY2VMYW5ndWFnZUNvZGU6IHN0cmluZykge1xyXG4gICAgaWYgKHNvdXJjZUxhbmd1YWdlQ29kZSA9PT0gdGhpcy5hY3RpdmVTeXN0ZW0udGFyZ2V0TGFuZ3VhZ2UpIHtcclxuICAgICAgdGhpcy5jaGFuZ2VMYW5ndWFnZShzb3VyY2VMYW5ndWFnZUNvZGUsIHRoaXMuYWN0aXZlU3lzdGVtLnNvdXJjZUxhbmd1YWdlKTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzLmNoYW5nZUxhbmd1YWdlKHNvdXJjZUxhbmd1YWdlQ29kZSwgdGhpcy5hY3RpdmVTeXN0ZW0udGFyZ2V0TGFuZ3VhZ2UpO1xyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGNoYW5nZVRhcmdldExhbmd1YWdlKHRhcmdldExhbmd1YWdlQ29kZTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGFyZ2V0TGFuZ3VhZ2VDb2RlID09PSB0aGlzLmFjdGl2ZVN5c3RlbS5zb3VyY2VMYW5ndWFnZSkge1xyXG4gICAgICB0aGlzLmNoYW5nZUxhbmd1YWdlKHRoaXMuYWN0aXZlU3lzdGVtLnRhcmdldExhbmd1YWdlLCB0YXJnZXRMYW5ndWFnZUNvZGUpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlTGFuZ3VhZ2UodGhpcy5hY3RpdmVTeXN0ZW0uc291cmNlTGFuZ3VhZ2UsIHRhcmdldExhbmd1YWdlQ29kZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZVJlY2VudFN5c3RlbUFycmF5KCkge1xyXG4gICAgbGV0IHN5c3RlbUlkQXJyYXk6IHN0cmluZ1tdO1xyXG4gICAgY29uc3QgcmVjZW50U3lzdGVtQXJyYXk6IFN5c3RlbVtdID0gW107XHJcbiAgICB0cnkge1xyXG4gICAgICBzeXN0ZW1JZEFycmF5ID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLnJlY2VudFN5c3RlbUtleSkgPz8gXCJbXVwiKTtcclxuICAgIH1cclxuICAgIGNhdGNoIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgc3lzdGVtSWRBcnJheS5mb3JFYWNoKChpZCkgPT4ge1xyXG4gICAgICBjb25zdCBleGlzdGluZ1N5c3RlbSA9IHRoaXMuc3lzdGVtcy5maW5kKHN5c3RlbSA9PiBzeXN0ZW0uaWQgPT09IGlkKTtcclxuICAgICAgaWYgKGV4aXN0aW5nU3lzdGVtICYmICF0aGlzLnJlY2VudFN5c3RlbXMuaW5jbHVkZXMoZXhpc3RpbmdTeXN0ZW0pKSB7XHJcbiAgICAgICAgcmVjZW50U3lzdGVtQXJyYXkucHVzaChleGlzdGluZ1N5c3RlbSk7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgICB0aGlzLnJlY2VudFN5c3RlbXMgPSByZWNlbnRTeXN0ZW1BcnJheTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkVG9SZWNlbnRTeXN0ZW1BcnJheShzeXN0ZW06IFN5c3RlbSkge1xyXG4gICAgY29uc3QgZXhpc3RpbmdTeXN0ZW0gPSB0aGlzLnJlY2VudFN5c3RlbXMuZmluZChleGlzdGluZyA9PiBleGlzdGluZy5pZCA9PT0gc3lzdGVtLmlkKTtcclxuICAgIC8vIGlmIHN5c3RlbSBhbHJlYWR5IGluIGxpc3QsIHB1dCBpdCB0byBmaXJzdCBwb3NpdGlvbi4gSWYgaXggMCwgbm8gYWN0aW9uIHJlcXVpcmVkIHNpbmNlIGxhdGVzdCBzeXN0ZW0gaXMgYWxyZWFkeSBmaXJzdC5cclxuICAgIGlmIChleGlzdGluZ1N5c3RlbSkge1xyXG4gICAgICBjb25zdCBzeXN0ZW1JeEluUmVjZW50TGlzdCA9IHRoaXMucmVjZW50U3lzdGVtcy5pbmRleE9mKGV4aXN0aW5nU3lzdGVtKTtcclxuICAgICAgaWYgKHN5c3RlbUl4SW5SZWNlbnRMaXN0ID4gMCkge1xyXG4gICAgICAgIHRoaXMucmVjZW50U3lzdGVtcy5zcGxpY2Uoc3lzdGVtSXhJblJlY2VudExpc3QsIDEpO1xyXG4gICAgICAgIHRoaXMucmVjZW50U3lzdGVtcy5zcGxpY2UoMCwgMCwgc3lzdGVtKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIC8vIGlmIGxpc3QgdG9vIGxvbmcsIHJlbW92ZSBsYXN0IChvbGRlc3QgZWxlbWVudClcclxuICAgICAgd2hpbGUgKHRoaXMucmVjZW50U3lzdGVtcy5sZW5ndGggPj0gdGhpcy5yZWNlbnRTeXN0ZW1zTWF4Q291bnQpIHtcclxuICAgICAgICB0aGlzLnJlY2VudFN5c3RlbXMucG9wKCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHRoaXMucmVjZW50U3lzdGVtcy5zcGxpY2UoMCwgMCwgc3lzdGVtKTtcclxuICAgIH1cclxuICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMucmVjZW50U3lzdGVtS2V5LCBKU09OLnN0cmluZ2lmeSh0aGlzLnJlY2VudFN5c3RlbXMubWFwKHN5c3RlbSA9PiBzeXN0ZW0uaWQpKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNhblN3YXBTeXN0ZW1MYW5ndWFnZXMoKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgbGFuZ1N3YXBBY3RpdmUgPSBmYWxzZTtcclxuICAgIGZvciAoY29uc3QgZWxlbWVudCBvZiB0aGlzLnN5c3RlbXMpIHtcclxuICAgICAgY29uc3Qgc3lzdGVtID0gZWxlbWVudDtcclxuICAgICAgaWYgKHN5c3RlbS5zb3VyY2VMYW5ndWFnZSA9PSB0aGlzLnRhcmdldExhbmd1YWdlICYmIHN5c3RlbS50YXJnZXRMYW5ndWFnZSA9PSB0aGlzLnNvdXJjZUxhbmd1YWdlKSB7XHJcbiAgICAgICAgbGFuZ1N3YXBBY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLmNhblN3YXBMYW5ndWFnZXMgPSBsYW5nU3dhcEFjdGl2ZTtcclxuICAgIHJldHVybiBsYW5nU3dhcEFjdGl2ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlTGFuZ0xpc3Qoc3lzdGVtczogU3lzdGVtW10sIHNyY0xhbmdDb2RlPzogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBsYW5nTGlzdEl0ZW1BcnJheTogTGFuZ0xpc3RJdGVtW10gPSBbXTtcclxuICAgIHN5c3RlbXMuZm9yRWFjaCgoc3lzdGVtKSA9PiB7XHJcbiAgICAgIGlmICghc3JjTGFuZ0NvZGUgfHwgc3JjTGFuZ0NvZGUgPT09IHN5c3RlbS5zb3VyY2VMYW5ndWFnZSkge1xyXG4gICAgICAgIGxhbmdMaXN0SXRlbUFycmF5LnB1c2goXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGRvbWFpbjogc3lzdGVtLmRvbWFpbiBhcyBzdHJpbmcsXHJcbiAgICAgICAgICAgIGxhbmc6IHNyY0xhbmdDb2RlID8gc3lzdGVtLnRhcmdldExhbmd1YWdlIDogc3lzdGVtLnNvdXJjZUxhbmd1YWdlLFxyXG4gICAgICAgICAgICBzeXN0ZW1JZDogc3lzdGVtLmlkLFxyXG4gICAgICAgICAgICB2ZW5kb3I6IHN5c3RlbS52ZW5kb3JcclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gICAgcmV0dXJuIGxhbmdMaXN0SXRlbUFycmF5O1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaW5kQ29ycmVjdFN5c3RlbShzb3VyY2VMYW5ndWFnZTogc3RyaW5nLCB0YXJnZXRMYW5ndWFnZTogc3RyaW5nKTogc3RyaW5nIHtcclxuICAgIGNvbnN0IHN5c3RlbXMgPSB0aGlzLnN5c3RlbXM7XHJcblxyXG4gICAgY29uc3Qgc3lzdGVtc0Zvckxhbmd1YWdlUGFpciA9IHN5c3RlbXMuZmlsdGVyKHN5c3RlbSA9PiBzeXN0ZW0uc291cmNlTGFuZ3VhZ2UgPT09IHNvdXJjZUxhbmd1YWdlICYmIHRhcmdldExhbmd1YWdlID09PSBzeXN0ZW0udGFyZ2V0TGFuZ3VhZ2UpO1xyXG4gICAgLy8gSWRlYWxseSB0aGlzIGNhc2Ugc2hvdWxkIG5vdCBoYXBwZW4sIGJ1dCBpdCBpcyBwb3NzaWJsZS5cclxuICAgIGlmIChzeXN0ZW1zRm9yTGFuZ3VhZ2VQYWlyLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICByZXR1cm4gdGhpcy5zeXN0ZW1zLmZpbmQoc3lzdGVtID0+IHN5c3RlbS5zb3VyY2VMYW5ndWFnZSA9PT0gc291cmNlTGFuZ3VhZ2UpPy5pZCBhcyBzdHJpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHN5c3RlbXNXaXRoRGVmYXVsdFZlbmRvciA9IHN5c3RlbXNGb3JMYW5ndWFnZVBhaXIuZmlsdGVyKHN5c3RlbSA9PiAoc3lzdGVtLnZlbmRvciB8fCB0aGlzLmRlZmF1bHRWZW5kb3IpID09PSB0aGlzLmRlZmF1bHRWZW5kb3IpO1xyXG4gICAgaWYgKHN5c3RlbXNXaXRoRGVmYXVsdFZlbmRvci5sZW5ndGggPT09IDApIHtcclxuICAgICAgc3lzdGVtc1dpdGhEZWZhdWx0VmVuZG9yID0gc3lzdGVtc0Zvckxhbmd1YWdlUGFpcjtcclxuICAgIH1cclxuXHJcbiAgICAgIGxldCBzeXN0ZW1zV2l0aERlZmF1bHREb21haW4gPSBzeXN0ZW1zV2l0aERlZmF1bHRWZW5kb3IuZmlsdGVyKHN5c3RlbSA9PiB0aGlzLmRlZmF1bHREb21haW5zLmluY2x1ZGVzKHN5c3RlbS5kb21haW4gYXMgc3RyaW5nKSk7XHJcbiAgICAgIGlmIChzeXN0ZW1zV2l0aERlZmF1bHREb21haW4ubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgc3lzdGVtc1dpdGhEZWZhdWx0RG9tYWluID0gc3lzdGVtc1dpdGhEZWZhdWx0VmVuZG9yO1xyXG4gICAgICB9XHJcbiAgICAgIFNvcnRIZWxwZXIuc29ydEJ5QXJyYXkoc3lzdGVtc1dpdGhEZWZhdWx0RG9tYWluLCB0aGlzLmRlZmF1bHREb21haW5zLCBcImRvbWFpblwiKTtcclxuICBcclxuICBcclxuICAgICAgLy8gVjIgZG9lcyBub3QgcHJvdmlkZSBhbnkgaW5mbyBhYm91dCBzdGF0dXNlc1xyXG4gICAgICBpZiAodGhpcy5hcGlWZXJzaW9uID09PSBUcmFuc2xhdGlvbkFwaVZlcnNpb24uVjEpIHtcclxuICAgICAgICBjb25zdCBwcmVmZXJyZWRTdGF0dXNlcyA9IFsncnVubmluZycsICdxdWV1aW5ndHJhbnNsJywgJ3N0YW5kYnknXTtcclxuICAgICAgICBTb3J0SGVscGVyLnNvcnRCeUFycmF5KHN5c3RlbXNXaXRoRGVmYXVsdFZlbmRvciwgcHJlZmVycmVkU3RhdHVzZXMsIFwic3RhdHVzXCIpO1xyXG4gICAgICB9XHJcbiAgXHJcbiAgICAgIHJldHVybiBzeXN0ZW1zV2l0aERlZmF1bHREb21haW5bMF0uaWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9uQWN0aXZlU3lzdGVtQ2hhbmdlKHJldHJhbnNsYXRlID0gdHJ1ZSkge1xyXG4gICAgY29uc3Qgc3lzdGVtOiBTeXN0ZW0gPSB0aGlzLmFjdGl2ZVN5c3RlbTtcclxuICAgIHRoaXMuYWRkVG9SZWNlbnRTeXN0ZW1BcnJheShzeXN0ZW0pO1xyXG4gICAgY29uc3QgdmVuZG9yID0gdGhpcy5hY3RpdmVTeXN0ZW0udmVuZG9yO1xyXG4gICAgdGhpcy5hY3RpdmUubmV4dCh7XHJcbiAgICAgIHNvdXJjZUxhbmc6IHtcclxuICAgICAgICBsYW5nOiB0aGlzLnNvdXJjZUxhbmd1YWdlLFxyXG4gICAgICAgIGRvbWFpbjogc3lzdGVtLmRvbWFpbiBhcyBzdHJpbmcsXHJcbiAgICAgICAgdmVuZG9yOiB2ZW5kb3IsXHJcbiAgICAgICAgc3lzdGVtSWQ6IHN5c3RlbS5pZCxcclxuICAgICAgfSxcclxuICAgICAgc291cmNlTGFuZ0xpc3Q6IHRoaXMuc291cmNlTGFuZ0xpc3QsXHJcbiAgICAgIHN5c3RlbUlkOiBzeXN0ZW0uaWQsXHJcbiAgICAgIHRhcmdldExhbmc6IHtcclxuICAgICAgICBkb21haW46IHN5c3RlbS5kb21haW4gYXMgc3RyaW5nLFxyXG4gICAgICAgIHZlbmRvcjogdmVuZG9yLFxyXG4gICAgICAgIHN5c3RlbUlkOiBzeXN0ZW0uaWQsXHJcbiAgICAgICAgbGFuZzogdGhpcy50YXJnZXRMYW5ndWFnZVxyXG4gICAgICB9LFxyXG4gICAgICB0YXJnZXRMYW5nTGlzdDogdGhpcy50YXJnZXRMYW5nTGlzdCxcclxuICAgICAgdmVuZG9yczogdGhpcy52ZW5kb3JzLFxyXG4gICAgICBkb21haW5zOiB7IGFjdGl2ZTogdGhpcy5hY3RpdmVEb21haW4sIGRvbWFpbnM6IHRoaXMuZG9tYWlucyB9LFxyXG4gICAgICBzd2FwTGFuZ0FjdGl2ZTogdGhpcy5jYW5Td2FwU3lzdGVtTGFuZ3VhZ2VzKCksXHJcbiAgICAgIHN5c3RlbTogc3lzdGVtLFxyXG4gICAgICByZXRyYW5zbGF0ZTogcmV0cmFuc2xhdGUsXHJcbiAgICAgIHJlY2VudFN5c3RlbXM6IHRoaXMucmVjZW50U3lzdGVtc1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
323
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGxkLXRyYW5zbGF0ZS1zeXN0ZW0tbWFuYWdlbWVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdGxkLXRyYW5zbGF0ZS9zcmMvbGliL21vZHVsZXMvdGxkLWNvbW1vbi9zZXJ2aWNlcy90bGQtdHJhbnNsYXRlLXN5c3RlbS1tYW5hZ2VtZW50LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFvQyxVQUFVLEVBQStDLE1BQU0sdUJBQXVCLENBQUM7QUFDbEksT0FBTyxFQUFFLGVBQWUsRUFBYyxhQUFhLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUVsRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7OztBQUsxRSxNQUFNLE9BQU8sbUNBQW1DO0lBMkMzQjtJQUNBO0lBQ0E7SUFDdUM7SUE3QzFELGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDdkIsT0FBTyxHQUFhLEVBQUUsQ0FBQztJQUN2QixpQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFDMUIsT0FBTyxHQUFHLElBQUksYUFBYSxDQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLFlBQVksQ0FBVTtJQUN0QixnQkFBZ0IsQ0FBVztJQUUzQiwwQkFBMEIsR0FBRyx1Q0FBdUMsQ0FBQztJQUU3RCxvQkFBb0IsR0FBRyxJQUFJLE9BQU8sRUFBWSxDQUFDO0lBRXZELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUN4RCxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUs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SSxDQUFDLHNCQUFzQixFQUFFO1lBQzdDLE1BQU0sRUFBRSxNQUFNO1lBQ2QsV0FBVyxFQUFFLFdBQVc7WUFDeEIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1NBQ2xDLENBQUMsQ0FBQztJQUNMLENBQUM7d0dBaldVLG1DQUFtQyxvSEE4Q3BDLDZCQUE2Qjs0R0E5QzVCLG1DQUFtQyxjQUZsQyxNQUFNOzs0RkFFUCxtQ0FBbUM7a0JBSC9DLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkErQ0ksTUFBTTsyQkFBQyw2QkFBNkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQWN0aXZlRGF0YSwgQWxlcnRTZXJ2aWNlLCBEb21haW4sIFNvcnRIZWxwZXIsIFN5c3RlbSwgU3lzdGVtU2VydmljZSwgVmVuZG9yLCBMYW5nTGlzdEl0ZW0gfSBmcm9tICdAdGlsZGUtbmxwL25neC1jb21tb24nO1xyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFJlcGxheVN1YmplY3QsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgVHJhbnNsYXRpb25BcGlWZXJzaW9uIH0gZnJvbSAnLi4vbW9kZWxzJztcclxuaW1wb3J0IHsgVGxkVHJhbnNsYXRlQ29uZmlnU2VydmljZSB9IGZyb20gJy4vdGxkLXRyYW5zbGF0ZS1jb25maWcuc2VydmljZSc7XHJcbmltcG9ydCB7IFRSQU5TTEFUSU9OX0FQSV9WRVJTSU9OX1RPS0VOIH0gZnJvbSAnLi4vLi4vLi4vaW5qZWN0aW9uLXRva2Vucyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUbGRUcmFuc2xhdGVTeXN0ZW1NYW5hZ2VtZW50U2VydmljZSB7XHJcbiAgbm9TeXN0ZW1zRXJyb3IgPSBmYWxzZTtcclxuICBzeXN0ZW1zOiBTeXN0ZW1bXSA9IFtdO1xyXG4gIHdpZGdldEluaXRpYWxpemVkID0gZmFsc2U7XHJcbiAgc3lzTGlzdCA9IG5ldyBSZXBsYXlTdWJqZWN0PFN5c3RlbVtdPigxKTtcclxuICBhY3RpdmVEb21haW4hOiBEb21haW47XHJcbiAgY2FuU3dhcExhbmd1YWdlcyE6IGJvb2xlYW47XHJcblxyXG4gIGRlZmF1bHRFcnJvclRyYW5zbGF0aW9uS2V5ID0gJ1RMRF9UUkFOU0xBVEUuRVJST1JfTk9fU1lTVEVNU19MT0FERUQnO1xyXG5cclxuICBwcml2YXRlIGxvYWRlZFN5c3RlbXNTdWJqZWN0ID0gbmV3IFN1YmplY3Q8U3lzdGVtW10+KCk7XHJcblxyXG4gIGdldCBhY3RpdmVWZW5kb3IoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hY3RpdmVTeXN0ZW0udmVuZG9yIHx8IHRoaXMuZGVmYXVsdFZlbmRvcjtcclxuICB9XHJcblxyXG4gIGdldCBkZWZhdWx0VmVuZG9yKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLmNvcmVDb25maWcuZGVmYXVsdFZlbmRvcjtcclxuICB9XHJcblxyXG4gIGdldCBkZWZhdWx0RG9tYWlucygpIHtcclxuICAgIHJldHVybiB0aGlzLmNvbmZpZy5jb3JlQ29uZmlnLmRlZmF1bHREb21haW5zIGFzIHN0cmluZ1tdO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhY3RpdmVTeXN0ZW0hOiBTeXN0ZW07XHJcbiAgcHJpdmF0ZSBkb21haW5zOiBEb21haW5bXSA9IFtdO1xyXG4gIHByaXZhdGUgdmVuZG9yczogVmVuZG9yW10gPSBbXTtcclxuICBwcml2YXRlIHNvdXJjZUxhbmd1YWdlITogc3RyaW5nO1xyXG4gIHByaXZhdGUgdGFyZ2V0TGFuZ3VhZ2UhOiBzdHJpbmc7XHJcbiAgcHJpdmF0ZSBzb3VyY2VMYW5nTGlzdDogTGFuZ0xpc3RJdGVtW10gPSBbXTtcclxuICBwcml2YXRlIHRhcmdldExhbmdMaXN0OiBMYW5nTGlzdEl0ZW1bXSA9IFtdO1xyXG5cclxuICAvLyNyZWdpb24gUmVjZW50IHN5c3RlbSB2YXJpYWJsZXNcclxuICAvLyBQb3NzaWJseSBmcm9tIGNvbmZpZ1xyXG4gIGdldCByZWNlbnRTeXN0ZW1zTWF4Q291bnQoKSB7IHJldHVybiB0aGlzLmNvbmZpZy5jb3JlQ29uZmlnLm1heFJlY2VudFN5c3RlbUNvdW50IGFzIG51bWJlcjsgfVxyXG4gIHByaXZhdGUgcmVjZW50U3lzdGVtczogU3lzdGVtW10gPSBbXTtcclxuICAvLyNlbmRyZWdpb25cclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSByZWNlbnRTeXN0ZW1LZXkgPSBcInJlY2VudFN5c3RlbXNcIjtcclxuICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2ZTogQmVoYXZpb3JTdWJqZWN0PEFjdGl2ZURhdGE+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxBY3RpdmVEYXRhPig8YW55Pm51bGwpO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgbGFzdFVzZWRTeXN0ZW1LZXk6IHN0cmluZyA9IFwibGFzdFVzZWRTeXN0ZW1cIjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFsZXJ0OiBBbGVydFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZzogVGxkVHJhbnNsYXRlQ29uZmlnU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3lzdGVtU2VydmljZTogU3lzdGVtU2VydmljZSxcclxuICAgIEBJbmplY3QoVFJBTlNMQVRJT05fQVBJX1ZFUlNJT05fVE9LRU4pIHByaXZhdGUgcmVhZG9ubHkgYXBpVmVyc2lvblxyXG4gICkgeyB9XHJcblxyXG4gIGdldFN5c3RlbXMoKTogU3lzdGVtW10ge1xyXG4gICAgcmV0dXJuIHRoaXMuc3lzdGVtcztcclxuICB9XHJcblxyXG4gIGNoYW5nZUxhbmd1YWdlKHNvdXJjZTogc3RyaW5nLCB0YXJnZXQ6IHN0cmluZykge1xyXG4gICAgY29uc3Qgc3lzdGVtSWQgPSB0aGlzLmZpbmRDb3JyZWN0U3lzdGVtKHNvdXJjZSwgdGFyZ2V0KTtcclxuICAgIHRoaXMuY2hhbmdlU3lzdGVtKHN5c3RlbUlkKTtcclxuICB9XHJcblxyXG4gIGdldEFjdGl2ZURhdGEoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5hY3RpdmUuYXNPYnNlcnZhYmxlKCk7XHJcbiAgfVxyXG5cclxuICBnZXRBY3RpdmVTeXN0ZW1PYmooKTogU3lzdGVtIHtcclxuICAgIHJldHVybiB0aGlzLmFjdGl2ZVN5c3RlbTtcclxuICB9XHJcblxyXG4gIGdldEFjdGl2ZVZlbmRvcnNBbmREb21haW5zKCkge1xyXG4gICAgaWYgKCF0aGlzLnNvdXJjZUxhbmd1YWdlIHx8ICF0aGlzLnRhcmdldExhbmd1YWdlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIGNvbnN0IHZlbmRvcnM6IFZlbmRvcltdID0gW107XHJcbiAgICBjb25zdCBkb21haW5zOiBEb21haW5bXSA9IFtdO1xyXG5cclxuICAgIGZvciAoY29uc3Qgc3lzdGVtIG9mIHRoaXMuc3lzdGVtcykge1xyXG4gICAgICBpZiAoIShzeXN0ZW0uc291cmNlTGFuZ3VhZ2UgPT09IHRoaXMuc291cmNlTGFuZ3VhZ2UgJiYgc3lzdGVtLnRhcmdldExhbmd1YWdlID09PSB0aGlzLnRhcmdldExhbmd1YWdlKSkge1xyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IGRvbWFpbjogRG9tYWluID0ge1xyXG4gICAgICAgIGxhbmd1YWdlSWQ6IHN5c3RlbS5sYW5ndWFnZUlkLFxyXG4gICAgICAgIHRpdGxlOiBzeXN0ZW0uZG9tYWluIGFzIHN0cmluZ1xyXG4gICAgICB9O1xyXG4gICAgICBkb21haW5zLnB1c2goZG9tYWluKTtcclxuICAgICAgY29uc3QgdmVuZG9yOiBWZW5kb3IgPSB7XHJcbiAgICAgICAgbGFuZ3VhZ2VJZDogc3lzdGVtLmxhbmd1YWdlSWQsXHJcbiAgICAgICAgdGl0bGU6IHN5c3RlbS52ZW5kb3JcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCF2ZW5kb3JzLmluY2x1ZGVzKHZlbmRvcikpIHtcclxuICAgICAgICB2ZW5kb3JzLnB1c2godmVuZG9yKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKGRvbWFpbi5sYW5ndWFnZUlkID09PSB0aGlzLmFjdGl2ZVN5c3RlbS5sYW5ndWFnZUlkKSB7XHJcbiAgICAgICAgdGhpcy5hY3RpdmVEb21haW4gPSBkb21haW47XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLmRvbWFpbnMgPSBkb21haW5zO1xyXG4gICAgdGhpcy52ZW5kb3JzID0gdmVuZG9ycztcclxuICB9XHJcblxyXG5cclxuICBnZXRMYXN0VXNlZFN5c3RlbSgpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKHRoaXMubGFzdFVzZWRTeXN0ZW1LZXkpIGFzIHN0cmluZztcclxuICB9XHJcblxyXG4gIGdldFVuaXF1ZUxhbmd1YWdlcyhsaXN0OiBMYW5nTGlzdEl0ZW1bXSk6IHN0cmluZ1tdIHtcclxuICAgIGlmICghbGlzdCkge1xyXG4gICAgICByZXR1cm4gW107XHJcbiAgICB9XHJcbiAgICBjb25zdCB0aXRsZXM6IHN0cmluZ1tdID0gW107XHJcblxyXG4gICAgbGlzdC5mb3JFYWNoKChsYW5nKSA9PiB7XHJcbiAgICAgIGNvbnN0IGxhbmdUaXRsZSA9IGxhbmcubGFuZztcclxuICAgICAgY29uc3QgaXggPSB0aXRsZXMuaW5kZXhPZihsYW5nVGl0bGUgYXMgc3RyaW5nKTtcclxuICAgICAgaWYgKGl4ID09IC0xKSB7XHJcbiAgICAgICAgdGl0bGVzLnB1c2gobGFuZ1RpdGxlIGFzIHN0cmluZyk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG5cclxuICAgIHJldHVybiB0aXRsZXM7XHJcbiAgfVxyXG5cclxuICBpbml0KGRlZmF1bHRTeXN0ZW1MYW5ndWFnZUlkOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuc3lzdGVtU2VydmljZS5nZXRTeXN0ZW1MaXN0KCkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlczogU3lzdGVtW10pID0+IHtcclxuICAgICAgICB0aGlzLnN5c3RlbXMgPSByZXM7XHJcbiAgICAgICAgaWYgKHJlcy5sZW5ndGggPT0gMCkge1xyXG4gICAgICAgICAgdGhpcy5sb2FkZWRTeXN0ZW1zU3ViamVjdC5uZXh0KHJlcyk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoIXRoaXMuc3lzdGVtRXhpc3RzKGRlZmF1bHRTeXN0ZW1MYW5ndWFnZUlkLCB0aGlzLnN5c3RlbXMpKSB7XHJcbiAgICAgICAgICBkZWZhdWx0U3lzdGVtTGFuZ3VhZ2VJZCA9IHRoaXMuc3lzdGVtc1swXS5sYW5ndWFnZUlkO1xyXG4gICAgICAgICAgZm9yIChjb25zdCBzeXN0ZW0gb2YgdGhpcy5zeXN0ZW1zKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHZlbmRvciA9IHN5c3RlbS52ZW5kb3I7XHJcbiAgICAgICAgICAgIGlmICh2ZW5kb3IgPT09IHRoaXMuZGVmYXVsdFZlbmRvcikge1xyXG4gICAgICAgICAgICAgIGRlZmF1bHRTeXN0ZW1MYW5ndWFnZUlkID0gc3lzdGVtLmxhbmd1YWdlSWQ7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuY3JlYXRlUmVjZW50U3lzdGVtQXJyYXkoKTtcclxuICAgICAgICB0aGlzLnNvdXJjZUxhbmdMaXN0ID0gdGhpcy5jcmVhdGVMYW5nTGlzdCh0aGlzLnN5c3RlbXMpO1xyXG4gICAgICAgIHRoaXMuY2hhbmdlU3lzdGVtKGRlZmF1bHRTeXN0ZW1MYW5ndWFnZUlkKTtcclxuICAgICAgICB0aGlzLndpZGdldEluaXRpYWxpemVkID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLnN5c0xpc3QubmV4dCh0aGlzLnN5c3RlbXMpO1xyXG4gICAgICAgIHRoaXMubm9TeXN0ZW1zRXJyb3IgPSBmYWxzZTtcclxuICAgICAgfSxcclxuICAgICAgZXJyb3I6IChlcnJvcikgPT4ge1xyXG4gICAgICAgIHRoaXMubm9TeXN0ZW1zRXJyb3IgPSB0cnVlO1xyXG4gICAgICAgIHRoaXMuYWxlcnQuZXJyb3IodGhpcy5kZWZhdWx0RXJyb3JUcmFuc2xhdGlvbktleSwgZXJyb3IpO1xyXG4gICAgICB9LFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBnZXRMb2FkZWRTeXN0ZW1zKCk6IE9ic2VydmFibGU8U3lzdGVtW10+IHtcclxuICAgIHJldHVybiB0aGlzLmxvYWRlZFN5c3RlbXNTdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgc2V0TGFzdFVzZWRTeXN0ZW0oc3lzdGVtSWQ6IHN0cmluZykge1xyXG4gICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMubGFzdFVzZWRTeXN0ZW1LZXksIHN5c3RlbUlkKTtcclxuICB9XHJcblxyXG4gIHN3YXBTeXN0ZW1MYW5ndWFnZXMoKSB7XHJcbiAgICB0aGlzLmNoYW5nZUxhbmd1YWdlKHRoaXMudGFyZ2V0TGFuZ3VhZ2UsIHRoaXMuc291cmNlTGFuZ3VhZ2UpO1xyXG4gIH1cclxuXHJcbiAgY2hhbmdlU3lzdGVtKGxhbmd1YWdlSWQ6IHN0cmluZywgcmV0cmFuc2xhdGUgPSB0cnVlKSB7XHJcbiAgICBpZiAodGhpcy5hY3RpdmVTeXN0ZW0/Lmxhbmd1YWdlSWQgPT09IGxhbmd1YWdlSWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBzZWxlY3RlZFN5c3RlbSE6IFN5c3RlbTtcclxuXHJcbiAgICBmb3IgKGNvbnN0IHN5c3RlbSBvZiB0aGlzLnN5c3RlbXMpIHtcclxuICAgICAgaWYgKHN5c3RlbS5sYW5ndWFnZUlkID09PSBsYW5ndWFnZUlkKSB7XHJcbiAgICAgICAgc2VsZWN0ZWRTeXN0ZW0gPSBzeXN0ZW07XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMudGFyZ2V0TGFuZ0xpc3QgPSB0aGlzLmNyZWF0ZUxhbmdMaXN0KHRoaXMuc3lzdGVtcywgc2VsZWN0ZWRTeXN0ZW0uc291cmNlTGFuZ3VhZ2UpO1xyXG4gICAgdGhpcy50YXJnZXRMYW5ndWFnZSA9IHNlbGVjdGVkU3lzdGVtLnRhcmdldExhbmd1YWdlO1xyXG4gICAgdGhpcy5zb3VyY2VMYW5ndWFnZSA9IHNlbGVjdGVkU3lzdGVtLnNvdXJjZUxhbmd1YWdlO1xyXG4gICAgdGhpcy5hY3RpdmVTeXN0ZW0gPSBzZWxlY3RlZFN5c3RlbTtcclxuICAgIHRoaXMuZ2V0QWN0aXZlVmVuZG9yc0FuZERvbWFpbnMoKTtcclxuXHJcbiAgICB0aGlzLm9uQWN0aXZlU3lzdGVtQ2hhbmdlKHJldHJhbnNsYXRlKTtcclxuXHJcbiAgICB0aGlzLnNldExhc3RVc2VkU3lzdGVtKHNlbGVjdGVkU3lzdGVtLmxhbmd1YWdlSWQpO1xyXG4gIH1cclxuXHJcbiAgc3lzdGVtRXhpc3RzKGxhbmd1YWdlSWQ6IHN0cmluZywgc3lzdGVtTGlzdDogU3lzdGVtW10pOiBib29sZWFuIHtcclxuICAgIGNvbnN0IHN5c3RlbXMgPSBzeXN0ZW1MaXN0ID8/IHRoaXMuc3lzdGVtcztcclxuICAgIGZvciAoY29uc3Qgc3lzdGVtIG9mIHN5c3RlbXMpIHtcclxuICAgICAgaWYgKHN5c3RlbS5sYW5ndWFnZUlkID09PSBsYW5ndWFnZUlkKSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG5cclxuICBpc1Rlcm1pbm9sb2d5U3VwcG9ydGVkKHN5c3RlbTogU3lzdGVtKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gc3lzdGVtLmluY2x1ZGVzVGVybWlub2xvZ3kgYXMgYm9vbGVhbjtcclxuICB9XHJcblxyXG4gIGNoYW5nZVNvdXJjZUxhbmd1YWdlKHNvdXJjZUxhbmd1YWdlQ29kZTogc3RyaW5nKSB7XHJcbiAgICBpZiAoc291cmNlTGFuZ3VhZ2VDb2RlID09PSB0aGlzLmFjdGl2ZVN5c3RlbS50YXJnZXRMYW5ndWFnZSkge1xyXG4gICAgICB0aGlzLmNoYW5nZUxhbmd1YWdlKHNvdXJjZUxhbmd1YWdlQ29kZSwgdGhpcy5hY3RpdmVTeXN0ZW0uc291cmNlTGFuZ3VhZ2UpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlTGFuZ3VhZ2Uoc291cmNlTGFuZ3VhZ2VDb2RlLCB0aGlzLmFjdGl2ZVN5c3RlbS50YXJnZXRMYW5ndWFnZSk7XHJcblxyXG4gICAgfVxyXG5cclxuICB9XHJcblxyXG4gIGNoYW5nZVRhcmdldExhbmd1YWdlKHRhcmdldExhbmd1YWdlQ29kZTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGFyZ2V0TGFuZ3VhZ2VDb2RlID09PSB0aGlzLmFjdGl2ZVN5c3RlbS5zb3VyY2VMYW5ndWFnZSkge1xyXG4gICAgICB0aGlzLmNoYW5nZUxhbmd1YWdlKHRoaXMuYWN0aXZlU3lzdGVtLnRhcmdldExhbmd1YWdlLCB0YXJnZXRMYW5ndWFnZUNvZGUpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlTGFuZ3VhZ2UodGhpcy5hY3RpdmVTeXN0ZW0uc291cmNlTGFuZ3VhZ2UsIHRhcmdldExhbmd1YWdlQ29kZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZVJlY2VudFN5c3RlbUFycmF5KCkge1xyXG4gICAgbGV0IHN5c3RlbUlkQXJyYXk6IHN0cmluZ1tdO1xyXG4gICAgY29uc3QgcmVjZW50U3lzdGVtQXJyYXk6IFN5c3RlbVtdID0gW107XHJcbiAgICB0cnkge1xyXG4gICAgICBzeXN0ZW1JZEFycmF5ID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLnJlY2VudFN5c3RlbUtleSkgPz8gXCJbXVwiKTtcclxuICAgIH1cclxuICAgIGNhdGNoIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgc3lzdGVtSWRBcnJheS5mb3JFYWNoKChsYW5ndWFnZUlkKSA9PiB7XHJcbiAgICAgIGNvbnN0IGV4aXN0aW5nU3lzdGVtID0gdGhpcy5zeXN0ZW1zLmZpbmQoc3lzdGVtID0+IHN5c3RlbS5sYW5ndWFnZUlkID09PSBsYW5ndWFnZUlkKTtcclxuICAgICAgaWYgKGV4aXN0aW5nU3lzdGVtICYmICF0aGlzLnJlY2VudFN5c3RlbXMuaW5jbHVkZXMoZXhpc3RpbmdTeXN0ZW0pKSB7XHJcbiAgICAgICAgcmVjZW50U3lzdGVtQXJyYXkucHVzaChleGlzdGluZ1N5c3RlbSk7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgICB0aGlzLnJlY2VudFN5c3RlbXMgPSByZWNlbnRTeXN0ZW1BcnJheTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgYWRkVG9SZWNlbnRTeXN0ZW1BcnJheShzeXN0ZW06IFN5c3RlbSkge1xyXG4gICAgY29uc3QgZXhpc3RpbmdTeXN0ZW0gPSB0aGlzLnJlY2VudFN5c3RlbXMuZmluZChleGlzdGluZyA9PiBleGlzdGluZy5sYW5ndWFnZUlkID09PSBzeXN0ZW0ubGFuZ3VhZ2VJZCk7XHJcbiAgICAvLyBpZiBzeXN0ZW0gYWxyZWFkeSBpbiBsaXN0LCBwdXQgaXQgdG8gZmlyc3QgcG9zaXRpb24uIElmIGl4IDAsIG5vIGFjdGlvbiByZXF1aXJlZCBzaW5jZSBsYXRlc3Qgc3lzdGVtIGlzIGFscmVhZHkgZmlyc3QuXHJcbiAgICBpZiAoZXhpc3RpbmdTeXN0ZW0pIHtcclxuICAgICAgY29uc3Qgc3lzdGVtSXhJblJlY2VudExpc3QgPSB0aGlzLnJlY2VudFN5c3RlbXMuaW5kZXhPZihleGlzdGluZ1N5c3RlbSk7XHJcbiAgICAgIGlmIChzeXN0ZW1JeEluUmVjZW50TGlzdCA+IDApIHtcclxuICAgICAgICB0aGlzLnJlY2VudFN5c3RlbXMuc3BsaWNlKHN5c3RlbUl4SW5SZWNlbnRMaXN0LCAxKTtcclxuICAgICAgICB0aGlzLnJlY2VudFN5c3RlbXMuc3BsaWNlKDAsIDAsIHN5c3RlbSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICAvLyBpZiBsaXN0IHRvbyBsb25nLCByZW1vdmUgbGFzdCAob2xkZXN0IGVsZW1lbnQpXHJcbiAgICAgIHdoaWxlICh0aGlzLnJlY2VudFN5c3RlbXMubGVuZ3RoID49IHRoaXMucmVjZW50U3lzdGVtc01heENvdW50KSB7XHJcbiAgICAgICAgdGhpcy5yZWNlbnRTeXN0ZW1zLnBvcCgpO1xyXG4gICAgICB9XHJcblxyXG4gICAgICB0aGlzLnJlY2VudFN5c3RlbXMuc3BsaWNlKDAsIDAsIHN5c3RlbSk7XHJcbiAgICB9XHJcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSh0aGlzLnJlY2VudFN5c3RlbUtleSwgSlNPTi5zdHJpbmdpZnkodGhpcy5yZWNlbnRTeXN0ZW1zLm1hcChzeXN0ZW0gPT4gc3lzdGVtLmxhbmd1YWdlSWQpKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNhblN3YXBTeXN0ZW1MYW5ndWFnZXMoKTogYm9vbGVhbiB7XHJcbiAgICBsZXQgbGFuZ1N3YXBBY3RpdmUgPSBmYWxzZTtcclxuICAgIGZvciAoY29uc3QgZWxlbWVudCBvZiB0aGlzLnN5c3RlbXMpIHtcclxuICAgICAgY29uc3Qgc3lzdGVtID0gZWxlbWVudDtcclxuICAgICAgaWYgKHN5c3RlbS5zb3VyY2VMYW5ndWFnZSA9PSB0aGlzLnRhcmdldExhbmd1YWdlICYmIHN5c3RlbS50YXJnZXRMYW5ndWFnZSA9PSB0aGlzLnNvdXJjZUxhbmd1YWdlKSB7XHJcbiAgICAgICAgbGFuZ1N3YXBBY3RpdmUgPSB0cnVlO1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICB0aGlzLmNhblN3YXBMYW5ndWFnZXMgPSBsYW5nU3dhcEFjdGl2ZTtcclxuICAgIHJldHVybiBsYW5nU3dhcEFjdGl2ZTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlTGFuZ0xpc3Qoc3lzdGVtczogU3lzdGVtW10sIHNyY0xhbmdDb2RlPzogc3RyaW5nKSB7XHJcbiAgICBjb25zdCBsYW5nTGlzdEl0ZW1BcnJheTogTGFuZ0xpc3RJdGVtW10gPSBbXTtcclxuICAgIHN5c3RlbXMuZm9yRWFjaCgoc3lzdGVtKSA9PiB7XHJcbiAgICAgIGlmICghc3JjTGFuZ0NvZGUgfHwgc3JjTGFuZ0NvZGUgPT09IHN5c3RlbS5zb3VyY2VMYW5ndWFnZSkge1xyXG4gICAgICAgIGxhbmdMaXN0SXRlbUFycmF5LnB1c2goXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIGRvbWFpbjogc3lzdGVtLmRvbWFpbiBhcyBzdHJpbmcsXHJcbiAgICAgICAgICAgIGxhbmc6IHNyY0xhbmdDb2RlID8gc3lzdGVtLnRhcmdldExhbmd1YWdlIDogc3lzdGVtLnNvdXJjZUxhbmd1YWdlLFxyXG4gICAgICAgICAgICBsYW5ndWFnZUlkOiBzeXN0ZW0ubGFuZ3VhZ2VJZCxcclxuICAgICAgICAgICAgdmVuZG9yOiBzeXN0ZW0udmVuZG9yXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgfVxyXG4gICAgfSlcclxuICAgIHJldHVybiBsYW5nTGlzdEl0ZW1BcnJheTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgZmluZENvcnJlY3RTeXN0ZW0oc291cmNlTGFuZ3VhZ2U6IHN0cmluZywgdGFyZ2V0TGFuZ3VhZ2U6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBzeXN0ZW1zID0gdGhpcy5zeXN0ZW1zO1xyXG5cclxuICAgIGNvbnN0IHN5c3RlbXNGb3JMYW5ndWFnZVBhaXIgPSBzeXN0ZW1zLmZpbHRlcihzeXN0ZW0gPT4gc3lzdGVtLnNvdXJjZUxhbmd1YWdlID09PSBzb3VyY2VMYW5ndWFnZSAmJiB0YXJnZXRMYW5ndWFnZSA9PT0gc3lzdGVtLnRhcmdldExhbmd1YWdlKTtcclxuICAgIC8vIElkZWFsbHkgdGhpcyBjYXNlIHNob3VsZCBub3QgaGFwcGVuLCBidXQgaXQgaXMgcG9zc2libGUuXHJcbiAgICBpZiAoc3lzdGVtc0Zvckxhbmd1YWdlUGFpci5sZW5ndGggPT09IDApIHtcclxuICAgICAgcmV0dXJuIHRoaXMuc3lzdGVtcy5maW5kKHN5c3RlbSA9PiBzeXN0ZW0uc291cmNlTGFuZ3VhZ2UgPT09IHNvdXJjZUxhbmd1YWdlKT8ubGFuZ3VhZ2VJZCBhcyBzdHJpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgbGV0IHN5c3RlbXNXaXRoRGVmYXVsdFZlbmRvciA9IHN5c3RlbXNGb3JMYW5ndWFnZVBhaXIuZmlsdGVyKHN5c3RlbSA9PiAoc3lzdGVtLnZlbmRvciB8fCB0aGlzLmRlZmF1bHRWZW5kb3IpID09PSB0aGlzLmRlZmF1bHRWZW5kb3IpO1xyXG4gICAgaWYgKHN5c3RlbXNXaXRoRGVmYXVsdFZlbmRvci5sZW5ndGggPT09IDApIHtcclxuICAgICAgc3lzdGVtc1dpdGhEZWZhdWx0VmVuZG9yID0gc3lzdGVtc0Zvckxhbmd1YWdlUGFpcjtcclxuICAgIH1cclxuXHJcbiAgICBsZXQgc3lzdGVtc1dpdGhEZWZhdWx0RG9tYWluID0gc3lzdGVtc1dpdGhEZWZhdWx0VmVuZG9yLmZpbHRlcihzeXN0ZW0gPT4gdGhpcy5kZWZhdWx0RG9tYWlucy5pbmNsdWRlcyhzeXN0ZW0uZG9tYWluIGFzIHN0cmluZykpO1xyXG4gICAgaWYgKHN5c3RlbXNXaXRoRGVmYXVsdERvbWFpbi5sZW5ndGggPT09IDApIHtcclxuICAgICAgc3lzdGVtc1dpdGhEZWZhdWx0RG9tYWluID0gc3lzdGVtc1dpdGhEZWZhdWx0VmVuZG9yO1xyXG4gICAgfVxyXG4gICAgU29ydEhlbHBlci5zb3J0QnlBcnJheShzeXN0ZW1zV2l0aERlZmF1bHREb21haW4sIHRoaXMuZGVmYXVsdERvbWFpbnMsIFwiZG9tYWluXCIpO1xyXG5cclxuXHJcbiAgICAvLyBWMiBkb2VzIG5vdCBwcm92aWRlIGFueSBpbmZvIGFib3V0IHN0YXR1c2VzXHJcbiAgICBpZiAodGhpcy5hcGlWZXJzaW9uID09PSBUcmFuc2xhdGlvbkFwaVZlcnNpb24uVjEpIHtcclxuICAgICAgY29uc3QgcHJlZmVycmVkU3RhdHVzZXMgPSBbJ3J1bm5pbmcnLCAncXVldWluZ3RyYW5zbCcsICdzdGFuZGJ5J107XHJcbiAgICAgIFNvcnRIZWxwZXIuc29ydEJ5QXJyYXkoc3lzdGVtc1dpdGhEZWZhdWx0VmVuZG9yLCBwcmVmZXJyZWRTdGF0dXNlcywgXCJzdGF0dXNcIik7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHN5c3RlbXNXaXRoRGVmYXVsdERvbWFpblswXS5sYW5ndWFnZUlkO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvbkFjdGl2ZVN5c3RlbUNoYW5nZShyZXRyYW5zbGF0ZSA9IHRydWUpIHtcclxuICAgIGNvbnN0IHN5c3RlbTogU3lzdGVtID0gdGhpcy5hY3RpdmVTeXN0ZW07XHJcbiAgICB0aGlzLmFkZFRvUmVjZW50U3lzdGVtQXJyYXkoc3lzdGVtKTtcclxuICAgIGNvbnN0IHZlbmRvciA9IHRoaXMuYWN0aXZlU3lzdGVtLnZlbmRvcjtcclxuICAgIHRoaXMuYWN0aXZlLm5leHQoe1xyXG4gICAgICBzb3VyY2VMYW5nOiB7XHJcbiAgICAgICAgbGFuZzogdGhpcy5zb3VyY2VMYW5ndWFnZSxcclxuICAgICAgICBkb21haW46IHN5c3RlbS5kb21haW4gYXMgc3RyaW5nLFxyXG4gICAgICAgIHZlbmRvcjogdmVuZG9yLFxyXG4gICAgICAgIGxhbmd1YWdlSWQ6IHN5c3RlbS5sYW5ndWFnZUlkLFxyXG4gICAgICB9LFxyXG4gICAgICBzb3VyY2VMYW5nTGlzdDogdGhpcy5zb3VyY2VMYW5nTGlzdCxcclxuICAgICAgc3lzdGVtSWQ6IHN5c3RlbS5pZCxcclxuICAgICAgbGFuZ3VhZ2VJZDogc3lzdGVtLmxhbmd1YWdlSWQsXHJcbiAgICAgIHRhcmdldExhbmc6IHtcclxuICAgICAgICBkb21haW46IHN5c3RlbS5kb21haW4gYXMgc3RyaW5nLFxyXG4gICAgICAgIHZlbmRvcjogdmVuZG9yLFxyXG4gICAgICAgIGxhbmd1YWdlSWQ6IHN5c3RlbS5sYW5ndWFnZUlkLFxyXG4gICAgICAgIGxhbmc6IHRoaXMudGFyZ2V0TGFuZ3VhZ2VcclxuICAgICAgfSxcclxuICAgICAgdGFyZ2V0TGFuZ0xpc3Q6IHRoaXMudGFyZ2V0TGFuZ0xpc3QsXHJcbiAgICAgIHZlbmRvcnM6IHRoaXMudmVuZG9ycyxcclxuICAgICAgZG9tYWluczogeyBhY3RpdmU6IHRoaXMuYWN0aXZlRG9tYWluLCBkb21haW5zOiB0aGlzLmRvbWFpbnMgfSxcclxuICAgICAgc3dhcExhbmdBY3RpdmU6IHRoaXMuY2FuU3dhcFN5c3RlbUxhbmd1YWdlcygpLFxyXG4gICAgICBzeXN0ZW06IHN5c3RlbSxcclxuICAgICAgcmV0cmFuc2xhdGU6IHJldHJhbnNsYXRlLFxyXG4gICAgICByZWNlbnRTeXN0ZW1zOiB0aGlzLnJlY2VudFN5c3RlbXNcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG4iXX0=