@sunbird-cb/utils-v2 0.0.13 → 0.0.15

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.
@@ -48,6 +48,7 @@ export var NsInstanceConfig;
48
48
  IConfig.prototype.websitelanguages;
49
49
  IConfig.prototype.profileTimelyNudges;
50
50
  IConfig.prototype.npsCategory;
51
+ IConfig.prototype.compentency;
51
52
  }
52
53
  function IPortalUrls() { }
53
54
  NsInstanceConfig.IPortalUrls = IPortalUrls;
@@ -547,4 +548,4 @@ export var NsUser;
547
548
  ILanguages.prototype.name;
548
549
  }
549
550
  })(NsUser || (NsUser = {}));
550
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbnMubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi91dGlscy12Mi8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9jb25maWd1cmF0aW9ucy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLEtBQVcsZ0JBQWdCLENBZ09oQztBQWhPRCxXQUFpQixnQkFBZ0I7SUFDL0Isc0JBbUVDOzs7UUFsRUMsNEJBZ0JDO1FBQ0QsMkJBQWlCO1FBQ2pCLDZCQUFrQjtRQUNsQixrQ0FBdUI7UUFDdkIsb0NBQXlCO1FBQ3pCLGdDQUFxQjtRQUNyQixrQ0FBeUI7UUFDekIsd0NBQStCO1FBQy9CLDRCQUFzQjtRQUN0Qiw2Q0FBbUM7UUFDbkMsZ0NBQTZCO1FBQzdCLDJCQUFtQjtRQUNuQix5QkFBdUI7UUFDdkIsNEJBQXFCO1FBQ3JCLGtDQUFpQztRQUNqQyx5QkFBZ0I7UUFDaEIsd0JBQWE7UUFDYiwwQkFBdUI7UUFDdkIsMEJBQWlCO1FBQ2pCLDBCQUFpQjtRQUNqQixpREFBd0M7UUFDeEMsdUNBQTJDO1FBQzNDLHdDQUVDO1FBQ0QsOEJBR0M7UUFDRCwrQkFBc0I7UUFDdEIsc0NBQXlDO1FBQ3pDLHNCQUFhO1FBQ2IsMEJBQWU7UUFDZixxQ0FBNkI7UUFDN0Isb0NBQTJCO1FBQzNCLHFDQUEyQjtRQUMzQiw2QkFBaUI7UUFDakIsNEJBQWdCO1FBQ2hCLHVDQUE0QjtRQUM1Qiw0Q0FBaUM7UUFDakMsZ0RBQXFDO1FBQ3JDLCtDQUF1QztRQUN2Qyx1Q0FBc0M7UUFDdEMsdUJBQWE7UUFDYixvQ0FBMEI7UUFDMUIsNkJBQW1DO1FBQ25DLDRCQUFjO1FBQ2QsbUNBQXVCO1FBQ3ZCLHNDQUF5QjtRQUN6Qiw4QkFBb0I7O0lBRXRCLDBCQU9DOzs7UUFOQywyQkFBYTtRQUNiLDBCQUFZO1FBQ1osMEJBQVk7UUFDWiwwQkFBWTtRQUNaLDBCQUFZO1FBQ1osMkJBQVk7O0lBRWQsOEJBSUM7OztRQUhDLGdDQUFj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UUFDcEIsd0JBQWE7UUFDYiwwQkFBaUI7UUFDakIsaUNBQXNCO1FBQ3RCLGdDQUFzQjtRQUN0QixnQ0FBcUI7UUFDckIsMkJBQWdCO1FBQ2hCLHlCQUFjO1FBQ2QsZ0NBQXFCO1FBQ3JCLGdDQUFtQjtRQUNuQiw0QkFBYTtRQUNiLDhCQUFtQjtRQUNuQiw0QkFBaUI7UUFDakIsMkJBQWdCO1FBQ2hCLHFDQUEwQjs7SUFHNUIsd0JBcUJDOztRQXBCQyw4QkFBb0I7UUFDcEIsaUNBQXVCO1FBQ3ZCLG1DQUF5QjtRQUN6QiwyQkFBaUI7UUFFakIsMkJBQWlCO1FBQ2pCLCtCQUFxQjtRQUNyQiw4QkFBb0I7UUFDcEIseUJBQWU7UUFDZixxQ0FBMkI7UUFDM0IsbUNBQStCO1FBQy9CLHdCQUFjO1FBQ2QsZ0NBQXNCO1FBQ3RCLDRCQUFrQjtRQUNsQix3QkFBYztRQUNkLDZCQUFtQjtRQUNuQixpQ0FBdUI7UUFDdkIsa0NBQXdCO1FBQ3hCLHFDQUEyQjtRQUMzQiwyQkFBYTs7SUFFZix5QkFFQzs7O1FBREMsMEJBQVk7O0FBRWhCLENBQUMsRUFyUWdCLE1BQU0sS0FBTixNQUFNLFFBcVF0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5zUGFnZSB9IGZyb20gJy4uL3Jlc29sdmVycy9wYWdlLm1vZGVsJ1xuaW1wb3J0IHsgTnNXaWRnZXRSZXNvbHZlciB9IGZyb20gJy4vd2lkZ2V0LXJlc29sdmVyLm1vZGVsJ1xuZXhwb3J0IG5hbWVzcGFjZSBOc0luc3RhbmNlQ29uZmlnIHtcbiAgZXhwb3J0IGludGVyZmFjZSBJQ29uZmlnIHtcbiAgICBhdXRob3Jpbmc6IHtcbiAgICAgIGRvVW5pcXVlQ2hlY2s6IGJvb2xlYW5cbiAgICAgIGlzTXVsdGlTdGVwRmxvdzogYm9vbGVhblxuICAgICAgYWxsb3dFeHBpcnk6IGJvb2xlYW5cbiAgICAgIGFsbG93UmVzdG9yZTogYm9vbGVhblxuICAgICAgYWxsb3dSZXZpZXc6IGJvb2xlYW5cbiAgICAgIGFsbG93UHVibGlzaDogYm9vbGVhblxuICAgICAgYWxsb3dSZWRvOiBib29sZWFuXG4gICAgICBuZXdEZXNpZ246IGJvb2xlYW5cbiAgICAgIGFsbG93ZWRDb250ZW50VHlwZTogc3RyaW5nW11cbiAgICAgIHVybFBhdHRlcm5NYXRjaGluZzoge1xuICAgICAgICBhbGxvd1JlcGxhY2U6IGJvb2xlYW5cbiAgICAgICAgc291cmNlOiBzdHJpbmdcbiAgICAgICAgcGF0dGVybjogc3RyaW5nXG4gICAgICAgIGFsbG93SWZyYW1lOiBib29sZWFuXG4gICAgICB9W11cbiAgICB9XG4gICAgYXBwU2V0dXA6IGJvb2xlYW5cbiAgICBjaGF0Qm90VXJsOiBzdHJpbmdcbiAgICBkZWZhdWx0Rm9udHNpemU6IHN0cmluZ1xuICAgIGRlZmF1bHRUaGVtZUNsYXNzOiBzdHJpbmdcbiAgICBkZWZhdWx0TG9jYWxlOiBzdHJpbmdcbiAgICBkaXNhYmxlUGlkQ2hlY2s/OiBib29sZWFuXG4gICAgaXNNdWx0aWxpbmd1YWxFbmFibGVkPzogYm9vbGVhblxuICAgIGZvbnRTaXplczogSUZvbnRTaXplW11cbiAgICBpc0NvbnRlbnREb3dubG9hZEF2YWlsYWJsZTogYm9vbGVhblxuICAgIGluZGV4SHRtbE1ldGE6IElJbmRleEh0bWxNZXRhXG4gICAga2V5Y2xvYWs6IElLZXljbG9ha1xuICAgIGxvY2FsczogSUxvY2Fsc0NvbmZpZ1tdXG4gICAgbWljcm9zb2Z0OiBJTWljcm9zb2Z0XG4gICAgdGVsZW1ldHJ5Q29uZmlnOiBJVGVsZW1ldHJ5Q29uZmlnXG4gICAgdGhlbWVzOiBJVGhlbWVbXVxuICAgIGxvZ29zOiBJTG9nb3NcbiAgICBzb3VyY2VzPzogSVNvdXJjZUxvZ29bXVxuICAgIG1haWxJZHM6IElNYWlsSWRzXG4gICAgZGV0YWlsczogSURldGFpbHNcbiAgICB2YWxpZE1haWxJZEV4dGVuc2lvbnNGb3JNYWlsTWU6IHN0cmluZ1tdXG4gICAgb3ZlcnJpZGVUaGVtZUNoYW5nZXM6IElPdmVycmlkZVRoZW1lQ2hhbmdlc1xuICAgIGRlZmF1bHRGZWF0dXJlQ29uZmlnczoge1xuICAgICAgZXJyb3I6IHN0cmluZ1xuICAgIH1cbiAgICBiYWNrZ3JvdW5kczoge1xuICAgICAgcHJpbWFyeU5hdkJhcjogTnNQYWdlLklOYXZCYWNrZ3JvdW5kXG4gICAgICBwYWdlTmF2QmFyOiBOc1BhZ2UuSU5hdkJhY2tncm91bmRcbiAgICB9XG4gICAgZmVhdHVyZWRBcHBzOiBzdHJpbmdbXVxuICAgIHByaW1hcnlOYXZCYXJDb25maWc6IElQcmltYXJ5TmF2YmFyQ29uZmlnXG4gICAgb3JnOiBzdHJpbmdbXVxuICAgIHJvb3RPcmc6IHN0cmluZ1xuICAgIGludHJhbmV0SWZyYW1lVXJscz86IHN0cmluZ1tdXG4gICAgc2hvd05hdkJhckluU2V0dXA/OiBib29sZWFuXG4gICAgaW50cmFuZXRVcmxUb0NoZWNrPzogc3RyaW5nXG4gICAgaW50cm9WaWRlbzogSVBhdGhcbiAgICB0b3VyVmlkZW86IElQYXRoXG4gICAgaXNEb3dubG9hZGFibGVTb3VyY2U/OiBJUGF0aFxuICAgIGlzRG93bmxvYWRhYmxlSW9zUmVzb3VyY2U/OiBJUGF0aFxuICAgIGlzRG93bmxvYWRhYmxlQW5kcm9pZFJlc291cmNlPzogSVBhdGhcbiAgICBzb3VyY2VGaWVsZHNVc2VyQXV0b2NvbXBsZXRlPzogc3RyaW5nW11cbiAgICBmb3Jnb3RQYXNzd29yZENvbmZpZz86IElGb3Jnb3RQYXNzd29yZFxuICAgIGh1YnM6IElIdWJzW11cbiAgICBjb3Vyc2VDb250ZW50UGF0aD86IHN0cmluZ1xuICAgIHBvcnRhbFVybHM6IElQb3J0YWxVcmxzIHwgdW5kZWZpbmVkXG4gICAgcG9zaXRpb25zOiBhbnlcbiAgICB3ZWJzaXRlbGFuZ3VhZ2VzOiBhbnlbXVxuICAgIHByb2ZpbGVUaW1lbHlOdWRnZXM6IGFueSxcbiAgICBucHNDYXRlZ29yeT86IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVBvcnRhbFVybHMge1xuICAgIGlnb3Q6IHN0cmluZyxcbiAgICBzcHY6IHN0cmluZyxcbiAgICBtZG86IHN0cmluZyxcbiAgICBjYmM6IHN0cmluZyxcbiAgICBjYnA6IHN0cmluZyxcbiAgICBmcmFjOiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElGb3Jnb3RQYXNzd29yZCB7XG4gICAgbG9jYWw/OiBzdHJpbmdcbiAgICBlbnRlcnByaXNlPzogc3RyaW5nXG4gICAgc29jaWFsPzogc3RyaW5nXG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJU291cmNlTG9nbyB7XG4gICAgc291cmNlTmFtZT86IHN0cmluZ1xuICAgIHNvdXJjZUlkPzogc3RyaW5nXG4gICAgbG9nbz86IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVBhdGgge1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUh1YnMge1xuICAgIGFjdGl2ZTogYm9vbGVhblxuICAgIGRlc2M6IHN0cmluZ1xuICAgIGh1Ym5hbWU6IHN0cmluZ1xuICAgIGljb246IHN0cmluZ1xuICAgIHBhdGg6IHN0cmluZyxcbiAgICBvcmRlcjogbnVtYmVyXG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJSW5kZXhIdG1sTWV0YSB7XG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgICBvcGVuU2VhcmNoVXJsPzogc3RyaW5nXG4gICAgd2VibWFuaWZlc3Q6IHN0cmluZ1xuICAgIHhJY29uPzogc3RyaW5nXG4gICAgcG5nSWNvbj86IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUZvbnRTaXplIHtcbiAgICBiYXNlRm9udFNpemU6IHN0cmluZ1xuICAgIGZvbnRDbGFzczogc3RyaW5nXG4gICAgc2NhbGU6IG51bWJlclxuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUtleWNsb2FrIHtcbiAgICBkZWZhdWx0aWRwSGludDogJ0UnIHwgJ04nIHwgJ1MnXG4gICAgaXNMb2dpbkhpZGRlbjogYm9vbGVhblxuICAgIGJlYXJlckV4Y2x1ZGVkVXJsczogc3RyaW5nW11cbiAgICBjbGllbnRJZDogc3RyaW5nXG4gICAga2V5OiBzdHJpbmdcbiAgICByZWFsbTogc3RyaW5nXG4gICAgdXJsOiBzdHJpbmdcbiAgICBjaGFuZ2VQYXNzd29yZFVybD86IHN0cmluZ1xuICAgIG9uTG9hZD86ICdjaGVjay1zc28nIHwgJ2xvZ2luLXJlcXVpcmVkJ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUxvY2Fsc0NvbmZpZyB7XG4gICAgaXNBdmFpbGFibGU6IGJvb2xlYW5cbiAgICBpc0VuYWJsZWQ6IGJvb2xlYW5cbiAgICBsb2NhbHM6IHN0cmluZ1tdXG4gICAgcGF0aDogc3RyaW5nXG4gICAgaXNSVEw6IGJvb2xlYW5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElNaWNyb3NvZnQge1xuICAgIGNsaWVudElkOiBzdHJpbmdcbiAgICBkZWZhdWx0RW1haWxJZDogc3RyaW5nXG4gICAgdGVuYW50OiBzdHJpbmdcbiAgICB2YWxpZEVtYWlsRXh0ZW5zaW9uczogc3RyaW5nW11cbiAgICBpc0NvbmZpZ3VyZWQ6IGJvb2xlYW5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElUaGVtZSB7XG4gICAgY29sb3I6IElUaGVtZUNvbG9yXG4gICAgdGhlbWVGaWxlOiBzdHJpbmdcbiAgICB0aGVtZUNsYXNzOiBzdHJpbmdcbiAgICB0aGVtZU5hbWU6IHN0cmluZ1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJVGhlbWVDb2xvciB7XG4gICAgYWNjZW50OiBzdHJpbmdcbiAgICBwcmltYXJ5OiBzdHJpbmdcbiAgICB3YXJuOiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElPdmVycmlkZVRoZW1lQ2hhbmdlcyB7XG4gICAgaXNFbmFibGVkOiBib29sZWFuXG4gICAgZGVza3RvcDogSURlc2t0b3BcbiAgICBtV2ViOiBJTVdlYlxuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSURlc2t0b3Age1xuICAgIGFuaW1hdGlvbkR1cmF0aW9uOiBudW1iZXJcbiAgICBsb2dvVXJsOiBzdHJpbmdcbiAgICBsb2dvVGV4dDogc3RyaW5nXG4gICAgbG9nb0Rpc3BsYXlUaW1lOiBudW1iZXJcbiAgICBiYWNrZ3JvdW5kVGhlbWU6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSU1XZWIge1xuICAgIGxvZ29Vcmw6IHN0cmluZ1xuICAgIGxvZ29UZXh0OiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElMb2dvcyB7XG4gICAgYXBwOiBzdHJpbmdcbiAgICBhcHBUcmFuc3BhcmVudDogc3RyaW5nXG4gICAgYXBwU2Vjb25kYXJ5OiBzdHJpbmdcbiAgICBhYm91dEZvb3Rlcjogc3RyaW5nXG4gICAgYWJvdXRIZWFkZXI6IHN0cmluZ1xuICAgIGFwcEJvdHRvbU5hdj86IHN0cmluZ1xuICAgIGNvbXBhbnk6IHN0cmluZ1xuICAgIGRldmVsb3BlZEJ5OiBzdHJpbmdcbiAgICBwb3dlcmVkQnk6IHN0cmluZ1xuICAgIGRlZmF1bHRDb250ZW50Pzogc3RyaW5nXG4gICAgZGVmYXVsdFNvdXJjZUxvZ28/OiBzdHJpbmdcbiAgICBsYW5kaW5nTG9nbzogc3RyaW5nXG4gICAgbmF2YmFyTG9nbz86IHN0cmluZ1xuICAgIHBsYXlMaXN0TG9nbz86IHN0cmluZ1xuICAgIHRodW1wc1VwPzogc3RyaW5nXG5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElNYWlsSWRzIHtcbiAgICBjb250YWN0VXM6IHN0cmluZ1xuICAgIGRlZmF1bHQ6IHN0cmluZ1xuICAgIHN1cHBvcnQ6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSURldGFpbHMge1xuICAgIGFwcE5hbWU6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVByaW1hcnlOYXZiYXJDb25maWcge1xuICAgIG1lZGl1bVNjcmVlbjogSVByaW1hcnlOYXZCYXJTY3JlZW5cbiAgICBzbWFsbFNjcmVlbjogSVByaW1hcnlOYXZCYXJTY3JlZW5cbiAgfVxuICBpbnRlcmZhY2UgSVByaW1hcnlOYXZCYXJTY3JlZW4ge1xuICAgIGxlZnQ6IElQcmltYXJ5TmF2QmFyU2lkZVtdXG4gICAgcmlnaHQ6IElQcmltYXJ5TmF2QmFyU2lkZVtdXG4gIH1cbiAgaW50ZXJmYWNlIElQcmltYXJ5TmF2QmFyU2lkZSB7XG4gICAgdHlwZTogJ3dpZGdldEJ1dHRvbicgfCAnZmVhdHVyZUJ1dHRvbidcbiAgICBjb25maWc6IE5zV2lkZ2V0UmVzb2x2ZXIuSVJlbmRlckNvbmZpZ1dpdGhBbnlEYXRhIHwgTnNQYWdlLklOYXZMaW5rXG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElUZWxlbWV0cnlDb25maWcge1xuICAgIHBkYXRhOiB7XG4gICAgICBpZDogc3RyaW5nXG4gICAgICB2ZXI6IHN0cmluZ1xuICAgICAgcGlkOiBzdHJpbmdcbiAgICB9XG4gICAgb2JqZWN0OiB7XG4gICAgICB2ZXI6IHN0cmluZ1xuICAgICAgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgIH1cbiAgICB1aWQ6IHN0cmluZyB8IG51bGxcbiAgICBhdXRodG9rZW4/OiBzdHJpbmdcbiAgICBlbnY6IHN0cmluZ1xuICAgIGNoYW5uZWw6IHN0cmluZ1xuICAgIGJhdGNoc2l6ZTogbnVtYmVyXG4gICAgaG9zdDogc3RyaW5nXG4gICAgZW5kcG9pbnQ6IHN0cmluZ1xuICAgIGFwaXNsdWc6IHN0cmluZ1xuICAgIHNpZDogc3RyaW5nXG4gICAgcHVibGljRW5kcG9pbnQ6IHN0cmluZ1xuICAgIHByb3RlY3RlZEVuZHBvaW50OiBzdHJpbmdcbiAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIE5zQXBwc0NvbmZpZyB7XG4gIGV4cG9ydCB0eXBlIFRJY29uVHlwZSA9ICdtYXQtaWNvbicgfCAndXJsJ1xuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSUFwcHNDb25maWcge1xuICAgIGdyb3VwczogSUdyb3VwW11cbiAgICBmZWF0dXJlczogeyBbaWQ6IHN0cmluZ106IElGZWF0dXJlIH1cbiAgICB0b3VyR3VpZGU/OiBzdHJpbmdbXVtdXG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElHcm91cCB7XG4gICAgaWQ6IHN0cmluZ1xuICAgIGljb25UeXBlOiBzdHJpbmdcbiAgICBpY29uOiBzdHJpbmdcbiAgICBrZXl3b3Jkczogc3RyaW5nW11cbiAgICBuYW1lOiBzdHJpbmdcbiAgICB0b29sVGlwOiBzdHJpbmdcbiAgICBmZWF0dXJlSWRzOiBzdHJpbmdbXVxuICAgIHN0cmlwQmFja2dyb3VuZD86IHN0cmluZ1xuICAgIGhhc1JvbGU6IHN0cmluZ1tdXG4gIH1cblxuICAvLyBleHBvcnQgaW50ZXJmYWNlIElHcm91cFdpdGhGZWF0dXJlcyBleHRlbmRzIElHcm91cCB7XG4gIC8vICAgZmVhdHVyZXM6IElGZWF0dXJlW11cbiAgLy8gfVxuICBleHBvcnQgaW50ZXJmYWNlIElGZWF0dXJlIHtcbiAgICBuYW1lOiBzdHJpbmdcbiAgICBpZDogc3RyaW5nXG4gICAgdXJsOiBzdHJpbmdcbiAgICBwZXJtaXNzaW9uOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHsgYWxsOiBzdHJpbmdbXTsgc29tZTogc3RyaW5nW107IG5vbmU6IHN0cmluZ1tdIH1cbiAgICBpY29uVHlwZTogVEljb25UeXBlXG4gICAgaWNvbjogc3RyaW5nXG4gICAga2V5d29yZHM6IHN0cmluZ1tdXG4gICAgdG9vbFRpcDogc3RyaW5nXG4gICAgYWNjZXNzS2V5OiBzdHJpbmdcbiAgICBzdGF0dXM/OiAnZWFybHlBY2Nlc3MnIHwgJ2xpdmUnIHwgJ2FscGhhJyB8ICdiZXRhJ1xuICAgIHNob3J0TmFtZTogc3RyaW5nXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgICBiYWRnZUVuZHBvaW50Pzogc3RyaW5nXG4gICAgbW9iaWxlQXBwRnVuY3Rpb24/OiBzdHJpbmdcbiAgICBjb2xvcj86IHN0cmluZ1xuICAgIHRhcmdldD86IHN0cmluZ1xuICB9XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgTnNVc2VyIHtcbiAgZXhwb3J0IGludGVyZmFjZSBJVXNlclByb2ZpbGUge1xuICAgIHVzZXJJZDogc3RyaW5nXG4gICAgZW1haWw/OiBzdHJpbmdcbiAgICBkZXBhcnRtZW50TmFtZT86IHN0cmluZ1xuICAgIHVzZXJOYW1lPzogc3RyaW5nXG4gICAgZmlyc3ROYW1lPzogc3RyaW5nXG4gICAgc3VyTmFtZT86IHN0cmluZ1xuICAgIG1pZGRsZU5hbWU/OiBzdHJpbmdcbiAgICBsYXN0TmFtZT86IHN0cmluZ1xuICAgIHJvb3RPcmdJZD86IHN0cmluZ1xuICAgIHJvb3RPcmdOYW1lPzogc3RyaW5nXG4gICAgcHJvZmlsZUltYWdlPzogc3RyaW5nXG4gICAgZ2l2ZW5OYW1lPzogc3RyaW5nXG4gICAgY291bnRyeT86IG51bGwgfCBzdHJpbmdcbiAgICB1bml0Pzogc3RyaW5nIHwgbnVsbFxuICAgIHNvdXJjZV9wcm9maWxlX3BpY3R1cmU/OiBudWxsIHwgc3RyaW5nXG4gICAgZGVhbGVyQ29kZT86IG51bGwgfCBzdHJpbmdcbiAgICBpc01hbmFnZXI/OiBib29sZWFuXG4gICAgY29tcGV0ZW5jaWVzPzogYW55XG4gICAgc3lzdGVtVG9waWNzPzogYW55XG4gICAgZGVzaXJlZFRvcGljcz86IGFueVxuICAgIGRlc2lyZWRDb21wZXRlbmNpZXM/OiBhbnlcbiAgICB1c2VyUm9sZXM/OiBhbnlcbiAgICBwcm9maWxlVXBkYXRlQ29tcGxldGlvbj86IG51bWJlclxuICAgIHByb2ZpbGVJbWFnZVVybD86IHN0cmluZ1xuICAgIHByb2Zlc3Npb25hbERldGFpbHM/OiBhbnlcbiAgICB3ZWJQb3J0YWxMYW5nPzogYW55LFxuICAgIGRlcGFydG1lbnRJbWc/OiBhbnlcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSU5vZGViYlVzZXJQcm9maWxlIHtcbiAgICB1c2VybmFtZTogc3RyaW5nXG4gICAgZW1haWw6IHN0cmluZ1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJVXNlclBpZFByb2ZpbGUge1xuICAgIGtpZF91cGRhdGVkOiBib29sZWFuXG4gICAgdXNlcjogSVVzZXJcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVVzZXJQaWRQcm9maWxlVjIge1xuICAgIGtpZF91cGRhdGVkOiBib29sZWFuXG4gICAgcmVzdWx0OiB7XG4gICAgICByZXNwb25zZTogSVVzZXJWMlxuICAgIH1cbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVVzZXJQaWRQcm9maWxlVmVyMiB7XG4gICAgcmVzdWx0OiB7XG4gICAgICBVc2VyUHJvZmlsZTogSVVzZXJWZXIyXG4gICAgfVxuICB9XG4gIGludGVyZmFjZSBJU291cmNlRGF0YSB7XG4gICAgR0lEOiBzdHJpbmdcbiAgICBTTkFNUFJFOiBzdHJpbmdcbiAgICBTTkFNQUREOiBzdHJpbmdcbiAgICBMQVNUTkFNRTogc3RyaW5nXG4gICAgU046IHN0cmluZ1xuICAgIEdJVkVOTkFNRTogc3RyaW5nXG4gICAgTklDS05BTUU6IHN0cmluZ1xuICAgIFBSRUZFUlJFRFNOOiBzdHJpbmdcbiAgICBQRVJTT05BTFRJVExFOiBzdHJpbmdcbiAgICBNT0JJTEU6IHN0cmluZ1xuICAgIE1BSUw6IHN0cmluZ1xuICAgIERFUEFSVE1FTlRURVhUOiBzdHJpbmdcbiAgICBDT1NUTE9DQVRJT05VTklUOiBzdHJpbmdcbiAgICBDT1NUTE9DQVRJT046IHN0cmluZ1xuICAgIE9SR0lEOiBzdHJpbmdcbiAgICBNR01UUkVTUDogc3RyaW5nXG4gICAgVVRDOiBzdHJpbmdcbiAgICBDTkFNRUVORzogc3RyaW5nXG4gICAgTE5BTUVJTlQ6IHN0cmluZ1xuICAgIFVTRVJUWVBFOiBzdHJpbmdcbiAgICBTVEFUVVM6IHN0cmluZ1xuICAgIENPTlRSQUNUU1RBVFVTOiBzdHJpbmdcbiAgfVxuXG4gIGludGVyZmFjZSBJVXNlciB7XG4gICAgd2lkOiBzdHJpbmdcbiAgICByb290X29yZzogc3RyaW5nXG4gICAgb3JnOiBzdHJpbmdcbiAgICBpc19hY3RpdmU/OiBhbnlcbiAgICBhY2NvdW50X2V4cGlyeV9kYXRlPzogYW55XG4gICAga2lkOiBzdHJpbmdcbiAgICBpbXBvcnRlZF9zb3VyY2VfbmFtZTogc3RyaW5nXG4gICAgc291cmNlX2lkOiBzdHJpbmdcbiAgICB1c2VybmFtZT86IGFueVxuICAgIGZpcnN0X25hbWU6IHN0cmluZ1xuICAgIGxhc3RfbmFtZTogc3RyaW5nXG4gICAgbWlkZGxlX25hbWU/OiBhbnlcbiAgICBrbm93bl9hczogc3RyaW5nXG4gICAgc2FsdXRhdGlvbj86IGFueVxuICAgIGVtYWlsOiBzdHJpbmdcbiAgICBnZW5kZXI/OiBhbnlcbiAgICBkb2I/OiBhbnlcbiAgICBsYW5ndWFnZXNfa25vd24/OiBhbnlcbiAgICBwcmVmZXJyZWRfbGFuZ3VhZ2U/OiBhbnlcbiAgICBzb3VyY2VfcHJvZmlsZV9waWN0dXJlPzogYW55XG4gICAgcmVzaWRlbmNlX2NvdW50cnk6IHN0cmluZ1xuICAgIHJlc2lkZW5jZV9zdGF0ZT86IGFueVxuICAgIHJlc2lkZW5jZV9jaXR5OiBzdHJpbmdcbiAgICBjb250YWN0X3Bob25lX251bWJlcl9vZmZpY2U/OiBhbnlcbiAgICBjb250YWN0X3Bob25lX251bWJlcl9ob21lPzogYW55XG4gICAgY29udGFjdF9waG9uZV9udW1iZXJfcGVyc29uYWw6IHN0cmluZ1xuICAgIGVtcGxveWVtZW50X3N0YXR1cz86IGFueVxuICAgIGNvbnRyYWN0X3R5cGU/OiBhbnlcbiAgICBqb2JfdGl0bGU/OiBhbnlcbiAgICBqb2Jfcm9sZT86IGFueVxuICAgIGRlcGFydG1lbnRfbmFtZTogc3RyaW5nXG4gICAgdW5pdF9uYW1lPzogYW55XG4gICAgb3JnYW5pemF0aW9uX2xvY2F0aW9uX2NvdW50cnk/OiBhbnlcbiAgICBvcmdhbml6YXRpb25fbG9jYXRpb25fc3RhdGU/OiBhbnlcbiAgICBvcmdhbml6YXRpb25fbG9jYXRpb25fY2l0eT86IGFueVxuICAgIHRpbWVfaW5zZXJ0ZWQ6IERhdGVcbiAgICB0aW1lX3VwZGF0ZWQ6IERhdGVcbiAgICBqc29uX3VubWFwcGVkX2ZpZWxkcz86IGFueVxuICAgIHNvdXJjZV9kYXRhOiBJU291cmNlRGF0YVxuICB9XG4gIGludGVyZmFjZSBJUm9vdE9yZyB7XG4gICAgZGF0ZVRpbWU6IHN0cmluZ1xuICAgIHByZWZlcnJlZExhbmd1YWdlOiBzdHJpbmdcbiAgICBrZXlzOiB7fVxuICAgIGNoYW5uZWw6IHN0cmluZ1xuICAgIGFwcHJvdmVkQnk6IHN0cmluZ1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmdcbiAgICB1cGRhdGVkRGF0ZTogc3RyaW5nXG4gICAgYWRkcmVzc0lkOiBzdHJpbmdcbiAgICBvcmdUeXBlOiBzdHJpbmdcbiAgICBwcm92aWRlcjogc3RyaW5nXG4gICAgb3JnQ29kZTogc3RyaW5nXG4gICAgbG9jYXRpb25JZDogc3RyaW5nXG4gICAgdGhlbWU6IHN0cmluZ1xuICAgIGlkOiBzdHJpbmdcbiAgICBpc0FwcHJvdmVkOiBib29sZWFuXG4gICAgY29tbXVuaXR5SWQ6IHN0cmluZ1xuICAgIHNsdWc6IHN0cmluZ1xuICAgIGVtYWlsOiBzdHJpbmdcbiAgICBpc1NTT0VuYWJsZWQ6IGJvb2xlYW5cbiAgICB0aHVtYm5haWw6IHN0cmluZ1xuICAgIHVwZGF0ZWRCeTogc3RyaW5nXG4gICAgb3JnTmFtZTogc3RyaW5nXG4gICAgbG9jYXRpb25JZHM6IFtdXG4gICAgZXh0ZXJuYWxJZDogc3RyaW5nXG4gICAgaXNSb290T3JnOiBib29sZWFuXG4gICAgcm9vdE9yZ0lkOiBzdHJpbmdcbiAgICBpbWdVcmw6IHN0cmluZ1xuICAgIGFwcHJvdmVkRGF0ZTogc3RyaW5nXG4gICAgb3JnVHlwZUlkOiBzdHJpbmdcbiAgICBob21lVXJsOiBzdHJpbmdcbiAgICBpc0RlZmF1bHQ6IGJvb2xlYW5cbiAgICBjcmVhdGVkRGF0ZTogc3RyaW5nXG4gICAgY29udGFjdERldGFpbDogc3RyaW5nXG4gICAgcGFyZW50T3JnSWQ6IHN0cmluZ1xuICAgIGNyZWF0ZWRCeTogc3RyaW5nXG4gICAgaGFzaFRhZ0lkOiBzdHJpbmdcbiAgICBub09mTWVtYmVyczogc3RyaW5nXG4gICAgc3RhdHVzOiBudW1iZXJcbiAgfVxuICBpbnRlcmZhY2UgSU9yZyB7XG4gICAgdXBkYXRlZEJ5OiBzdHJpbmdcbiAgICBvcmdhbmlzYXRpb25JZDogc3RyaW5nXG4gICAgb3JnTmFtZTogc3RyaW5nXG4gICAgYWRkZWRCeU5hbWU6IHN0cmluZ1xuICAgIGFkZGVkQnk6IHN0cmluZ1xuICAgIHJvbGVzOiBzdHJpbmdbXVxuICAgIGFwcHJvdmVkQnk6IHN0cmluZ1xuICAgIHVwZGF0ZWREYXRlOiBzdHJpbmdcbiAgICB1c2VySWQ6IHN0cmluZ1xuICAgIGFwcHJvdmFsZGF0ZTogc3RyaW5nXG4gICAgaXNEZWxldGVkOiBib29sZWFuXG4gICAgcGFyZW50T3JnSWQ6IHN0cmluZ1xuICAgIGhhc2hUYWdJZDogc3RyaW5nXG4gICAgaXNSZWplY3RlZDogYm9vbGVhblxuICAgIHBvc2l0aW9uOiBzdHJpbmdcbiAgICBpZDogc3RyaW5nXG4gICAgb3Jnam9pbmRhdGU6IHN0cmluZ1xuICAgIGlzQXBwcm92ZWQ6IGJvb2xlYW5cbiAgICBvcmdMZWZ0RGF0ZTogc3RyaW5nXG4gIH1cbiAgaW50ZXJmYWNlIElVc2VyVjIge1xuICAgIHN1ck5hbWU6IGFueVxuICAgIG1hc2tlZFBob25lOiBzdHJpbmdcbiAgICByb290T3JnTmFtZTogc3RyaW5nXG4gICAgc3ViamVjdDogW11cbiAgICBjaGFubmVsOiBzdHJpbmdcbiAgICBsYW5ndWFnZTogW11cbiAgICB1cGRhdGVkRGF0ZTogc3RyaW5nXG4gICAgbWFuYWdlZEJ5OiBzdHJpbmdcbiAgICBmbGFnc1ZhbHVlOiBudW1iZXJcbiAgICBpZDogc3RyaW5nXG4gICAgcmVjb3ZlcnlFbWFpbDogc3RyaW5nXG4gICAgaWRlbnRpZmllcjogc3RyaW5nXG4gICAgdGh1bWJuYWlsOiBzdHJpbmdcbiAgICBwcm9maWxlVmlzaWJpbGl0eTogW11cbiAgICB1cGRhdGVkQnk6IHN0cmluZ1xuICAgIGFjY2Vzc2NvZGU6IHN0cmluZ1xuICAgIGxvY2F0aW9uSWRzOiBbXVxuICAgIGV4dGVybmFsSWRzOiBbXVxuICAgIHJlZ2lzdHJ5SWQ6IHN0cmluZ1xuICAgIHJvb3RPcmdJZDogc3RyaW5nXG4gICAgcHJldlVzZWRFbWFpbDogc3RyaW5nXG4gICAgZmlyc3ROYW1lOiBzdHJpbmdcbiAgICB0bmNBY2NlcHRlZE9uOiBzdHJpbmdcbiAgICBwaG9uZTogc3RyaW5nXG4gICAgZG9iOiBzdHJpbmdcbiAgICBncmFkZTogW11cbiAgICBjdXJyZW50TG9naW5UaW1lOiBzdHJpbmdcbiAgICB1c2VyVHlwZTogc3RyaW5nXG4gICAgc3RhdHVzOiBudW1iZXJcbiAgICBsYXN0TmFtZTogc3RyaW5nXG4gICAgZ2VuZGVyOiBzdHJpbmdcbiAgICByb2xlczogc3RyaW5nW11cbiAgICBwcmV2VXNlZFBob25lOiBzdHJpbmdcbiAgICBzdGF0ZVZhbGlkYXRlZDogYm9vbGVhblxuICAgIGlzRGVsZXRlZDogYm9vbGVhblxuICAgIG9yZ2FuaXNhdGlvbnM6IElPcmdbXVxuICAgIGNvdW50cnlDb2RlOiBzdHJpbmdcbiAgICBtYXNrZWRFbWFpbDogc3RyaW5nXG4gICAgdGVtcFBhc3N3b3JkOiBzdHJpbmdcbiAgICBlbWFpbDogc3RyaW5nXG4gICAgcm9vdE9yZzogSVJvb3RPcmdcbiAgICBwcm9maWxlU3VtbWFyeTogc3RyaW5nXG4gICAgcGhvbmVWZXJpZmllZDogYm9vbGVhblxuICAgIHJlY292ZXJ5UGhvbmU6IHN0cmluZ1xuICAgIHVzZXJOYW1lOiBzdHJpbmdcbiAgICB1c2VySWQ6IHN0cmluZ1xuICAgIGxhc3RMb2dpblRpbWU6IHN0cmluZ1xuICAgIGVtYWlsVmVyaWZpZWQ6IHRydWVcbiAgICBmcmFtZXdvcms6IHt9XG4gICAgY3JlYXRlZERhdGU6IHN0cmluZ1xuICAgIGNyZWF0ZWRCeTogc3RyaW5nXG4gICAgbG9jYXRpb246IHN0cmluZ1xuICAgIHRuY0FjY2VwdGVkVmVyc2lvbjogc3RyaW5nXG4gIH1cblxuICBpbnRlcmZhY2UgSVVzZXJWZXIyIHtcbiAgICAnZmlyc3RuYW1lJzogc3RyaW5nLFxuICAgICdtb3RoZXJUb25ndWUnOiBzdHJpbmcsXG4gICAgJ3NlY29uZGFyeUVtYWlsJzogc3RyaW5nLFxuICAgICdnZW5kZXInOiBzdHJpbmcsXG4gICAgJ0B0eXBlJzogc3RyaW5nLFxuICAgICdtb2JpbGUnOiBudW1iZXIsXG4gICAgJ21pZGRsZW5hbWUnOiBzdHJpbmcsXG4gICAgJ3RlbGVwaG9uZSc6IG51bWJlcixcbiAgICAnb3NpZCc6IHN0cmluZyxcbiAgICAncHJpbWFyeUVtYWlsVHlwZSc6IHN0cmluZyxcbiAgICAna25vd25MYW5ndWFnZXMnOiBJTGFuZ3VhZ2VzW10sXG4gICAgJ3dpZCc6IHN0cmluZyxcbiAgICAnbmF0aW9uYWxpdHknOiBzdHJpbmcsXG4gICAgJ3N1cm5hbWUnOiBzdHJpbmcsXG4gICAgJ2RvYic6IHN0cmluZyxcbiAgICAnY2F0ZWdvcnknOiBzdHJpbmcsXG4gICAgJ3ByaW1hcnlFbWFpbCc6IHN0cmluZyxcbiAgICAnbWFyaXRhbFN0YXR1cyc6IHN0cmluZyxcbiAgICAncmVzaWRlbmNlQWRkcmVzcyc6IHN0cmluZyxcbiAgICAncmVzdWx0JzogYW55XG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJTGFuZ3VhZ2VzIHtcbiAgICBuYW1lOiBzdHJpbmdcbiAgfVxufVxuIl19
551
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbnMubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi91dGlscy12Mi8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9jb25maWd1cmF0aW9ucy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLEtBQVcsZ0JBQWdCLENBaU9oQztBQWpPRCxXQUFpQixnQkFBZ0I7SUFDL0Isc0JBb0VDOzs7UUFuRUMsNEJBZ0JDO1FBQ0QsMkJBQWlCO1FBQ2pCLDZCQUFrQjtRQUNsQixrQ0FBdUI7UUFDdkIsb0NBQXlCO1FBQ3pCLGdDQUFxQjtRQUNyQixrQ0FBeUI7UUFDekIsd0NBQStCO1FBQy9CLDRCQUFzQjtRQUN0Qiw2Q0FBbUM7UUFDbkMsZ0NBQTZCO1FBQzdCLDJCQUFtQjtRQUNuQix5QkFBdUI7UUFDdkIsNEJBQXFCO1FBQ3JCLGtDQUFpQztRQUNqQyx5QkFBZ0I7UUFDaEIsd0JBQWE7UUFDYiwwQkFBdUI7UUFDdkIsMEJBQWlCO1FBQ2pCLDBCQUFpQjtRQUNqQixpREFBd0M7UUFDeEMsdUNBQTJDO1FBQzNDLHdDQUVDO1FBQ0QsOEJBR0M7UUFDRCwrQkFBc0I7UUFDdEIsc0NBQXlDO1FBQ3pDLHNCQUFhO1FBQ2IsMEJBQWU7UUFDZixxQ0FBNkI7UUFDN0Isb0NBQTJCO1FBQzNCLHFDQUEyQjtRQUMzQiw2QkFBaUI7UUFDakIsNEJBQWdCO1FBQ2hCLHVDQUE0QjtRQUM1Qiw0Q0FBaUM7UUFDakMsZ0RBQXFDO1FBQ3JDLCtDQUF1QztRQUN2Qyx1Q0FBc0M7UUFDdEMsdUJBQWE7UUFDYixvQ0FBMEI7UUFDMUIsNkJBQW1DO1FBQ25DLDRCQUFjO1FBQ2QsbUNBQXVCO1FBQ3ZCLHNDQUF5QjtRQUN6Qiw4QkFBb0I7UUFDcEIsOEJBQWlCOztJQUVuQiwwQkFPQzs7O1FBTkMsMkJBQWE7UUFDYiwwQkFBWTtRQUNaLDBCQUFZO1FBQ1osMEJBQVk7UUFDWiwwQkFBWTtRQUNaLDJCQUFZOztJQUVkLDhCQUlD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UUFDbkIsK0JBQW9CO1FBQ3BCLHdCQUFhO1FBQ2IsMEJBQWlCO1FBQ2pCLGlDQUFzQjtRQUN0QixnQ0FBc0I7UUFDdEIsZ0NBQXFCO1FBQ3JCLDJCQUFnQjtRQUNoQix5QkFBYztRQUNkLGdDQUFxQjtRQUNyQixnQ0FBbUI7UUFDbkIsNEJBQWE7UUFDYiw4QkFBbUI7UUFDbkIsNEJBQWlCO1FBQ2pCLDJCQUFnQjtRQUNoQixxQ0FBMEI7O0lBRzVCLHdCQXFCQzs7UUFwQkMsOEJBQW9CO1FBQ3BCLGlDQUF1QjtRQUN2QixtQ0FBeUI7UUFDekIsMkJBQWlCO1FBRWpCLDJCQUFpQjtRQUNqQiwrQkFBcUI7UUFDckIsOEJBQW9CO1FBQ3BCLHlCQUFlO1FBQ2YscUNBQTJCO1FBQzNCLG1DQUErQjtRQUMvQix3QkFBYztRQUNkLGdDQUFzQjtRQUN0Qiw0QkFBa0I7UUFDbEIsd0JBQWM7UUFDZCw2QkFBbUI7UUFDbkIsaUNBQXVCO1FBQ3ZCLGtDQUF3QjtRQUN4QixxQ0FBMkI7UUFDM0IsMkJBQWE7O0lBRWYseUJBRUM7OztRQURDLDBCQUFZOztBQUVoQixDQUFDLEVBclFnQixNQUFNLEtBQU4sTUFBTSxRQXFRdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOc1BhZ2UgfSBmcm9tICcuLi9yZXNvbHZlcnMvcGFnZS5tb2RlbCdcbmltcG9ydCB7IE5zV2lkZ2V0UmVzb2x2ZXIgfSBmcm9tICcuL3dpZGdldC1yZXNvbHZlci5tb2RlbCdcbmV4cG9ydCBuYW1lc3BhY2UgTnNJbnN0YW5jZUNvbmZpZyB7XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUNvbmZpZyB7XG4gICAgYXV0aG9yaW5nOiB7XG4gICAgICBkb1VuaXF1ZUNoZWNrOiBib29sZWFuXG4gICAgICBpc011bHRpU3RlcEZsb3c6IGJvb2xlYW5cbiAgICAgIGFsbG93RXhwaXJ5OiBib29sZWFuXG4gICAgICBhbGxvd1Jlc3RvcmU6IGJvb2xlYW5cbiAgICAgIGFsbG93UmV2aWV3OiBib29sZWFuXG4gICAgICBhbGxvd1B1Ymxpc2g6IGJvb2xlYW5cbiAgICAgIGFsbG93UmVkbzogYm9vbGVhblxuICAgICAgbmV3RGVzaWduOiBib29sZWFuXG4gICAgICBhbGxvd2VkQ29udGVudFR5cGU6IHN0cmluZ1tdXG4gICAgICB1cmxQYXR0ZXJuTWF0Y2hpbmc6IHtcbiAgICAgICAgYWxsb3dSZXBsYWNlOiBib29sZWFuXG4gICAgICAgIHNvdXJjZTogc3RyaW5nXG4gICAgICAgIHBhdHRlcm46IHN0cmluZ1xuICAgICAgICBhbGxvd0lmcmFtZTogYm9vbGVhblxuICAgICAgfVtdXG4gICAgfVxuICAgIGFwcFNldHVwOiBib29sZWFuXG4gICAgY2hhdEJvdFVybDogc3RyaW5nXG4gICAgZGVmYXVsdEZvbnRzaXplOiBzdHJpbmdcbiAgICBkZWZhdWx0VGhlbWVDbGFzczogc3RyaW5nXG4gICAgZGVmYXVsdExvY2FsZTogc3RyaW5nXG4gICAgZGlzYWJsZVBpZENoZWNrPzogYm9vbGVhblxuICAgIGlzTXVsdGlsaW5ndWFsRW5hYmxlZD86IGJvb2xlYW5cbiAgICBmb250U2l6ZXM6IElGb250U2l6ZVtdXG4gICAgaXNDb250ZW50RG93bmxvYWRBdmFpbGFibGU6IGJvb2xlYW5cbiAgICBpbmRleEh0bWxNZXRhOiBJSW5kZXhIdG1sTWV0YVxuICAgIGtleWNsb2FrOiBJS2V5Y2xvYWtcbiAgICBsb2NhbHM6IElMb2NhbHNDb25maWdbXVxuICAgIG1pY3Jvc29mdDogSU1pY3Jvc29mdFxuICAgIHRlbGVtZXRyeUNvbmZpZzogSVRlbGVtZXRyeUNvbmZpZ1xuICAgIHRoZW1lczogSVRoZW1lW11cbiAgICBsb2dvczogSUxvZ29zXG4gICAgc291cmNlcz86IElTb3VyY2VMb2dvW11cbiAgICBtYWlsSWRzOiBJTWFpbElkc1xuICAgIGRldGFpbHM6IElEZXRhaWxzXG4gICAgdmFsaWRNYWlsSWRFeHRlbnNpb25zRm9yTWFpbE1lOiBzdHJpbmdbXVxuICAgIG92ZXJyaWRlVGhlbWVDaGFuZ2VzOiBJT3ZlcnJpZGVUaGVtZUNoYW5nZXNcbiAgICBkZWZhdWx0RmVhdHVyZUNvbmZpZ3M6IHtcbiAgICAgIGVycm9yOiBzdHJpbmdcbiAgICB9XG4gICAgYmFja2dyb3VuZHM6IHtcbiAgICAgIHByaW1hcnlOYXZCYXI6IE5zUGFnZS5JTmF2QmFja2dyb3VuZFxuICAgICAgcGFnZU5hdkJhcjogTnNQYWdlLklOYXZCYWNrZ3JvdW5kXG4gICAgfVxuICAgIGZlYXR1cmVkQXBwczogc3RyaW5nW11cbiAgICBwcmltYXJ5TmF2QmFyQ29uZmlnOiBJUHJpbWFyeU5hdmJhckNvbmZpZ1xuICAgIG9yZzogc3RyaW5nW11cbiAgICByb290T3JnOiBzdHJpbmdcbiAgICBpbnRyYW5ldElmcmFtZVVybHM/OiBzdHJpbmdbXVxuICAgIHNob3dOYXZCYXJJblNldHVwPzogYm9vbGVhblxuICAgIGludHJhbmV0VXJsVG9DaGVjaz86IHN0cmluZ1xuICAgIGludHJvVmlkZW86IElQYXRoXG4gICAgdG91clZpZGVvOiBJUGF0aFxuICAgIGlzRG93bmxvYWRhYmxlU291cmNlPzogSVBhdGhcbiAgICBpc0Rvd25sb2FkYWJsZUlvc1Jlc291cmNlPzogSVBhdGhcbiAgICBpc0Rvd25sb2FkYWJsZUFuZHJvaWRSZXNvdXJjZT86IElQYXRoXG4gICAgc291cmNlRmllbGRzVXNlckF1dG9jb21wbGV0ZT86IHN0cmluZ1tdXG4gICAgZm9yZ290UGFzc3dvcmRDb25maWc/OiBJRm9yZ290UGFzc3dvcmRcbiAgICBodWJzOiBJSHVic1tdXG4gICAgY291cnNlQ29udGVudFBhdGg/OiBzdHJpbmdcbiAgICBwb3J0YWxVcmxzOiBJUG9ydGFsVXJscyB8IHVuZGVmaW5lZFxuICAgIHBvc2l0aW9uczogYW55XG4gICAgd2Vic2l0ZWxhbmd1YWdlczogYW55W11cbiAgICBwcm9maWxlVGltZWx5TnVkZ2VzOiBhbnksXG4gICAgbnBzQ2F0ZWdvcnk/OiBzdHJpbmdcbiAgICBjb21wZW50ZW5jeT86IGFueVxuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVBvcnRhbFVybHMge1xuICAgIGlnb3Q6IHN0cmluZyxcbiAgICBzcHY6IHN0cmluZyxcbiAgICBtZG86IHN0cmluZyxcbiAgICBjYmM6IHN0cmluZyxcbiAgICBjYnA6IHN0cmluZyxcbiAgICBmcmFjOiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElGb3Jnb3RQYXNzd29yZCB7XG4gICAgbG9jYWw/OiBzdHJpbmdcbiAgICBlbnRlcnByaXNlPzogc3RyaW5nXG4gICAgc29jaWFsPzogc3RyaW5nXG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJU291cmNlTG9nbyB7XG4gICAgc291cmNlTmFtZT86IHN0cmluZ1xuICAgIHNvdXJjZUlkPzogc3RyaW5nXG4gICAgbG9nbz86IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVBhdGgge1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUh1YnMge1xuICAgIGFjdGl2ZTogYm9vbGVhblxuICAgIGRlc2M6IHN0cmluZ1xuICAgIGh1Ym5hbWU6IHN0cmluZ1xuICAgIGljb246IHN0cmluZ1xuICAgIHBhdGg6IHN0cmluZyxcbiAgICBvcmRlcjogbnVtYmVyXG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJSW5kZXhIdG1sTWV0YSB7XG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgICBvcGVuU2VhcmNoVXJsPzogc3RyaW5nXG4gICAgd2VibWFuaWZlc3Q6IHN0cmluZ1xuICAgIHhJY29uPzogc3RyaW5nXG4gICAgcG5nSWNvbj86IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUZvbnRTaXplIHtcbiAgICBiYXNlRm9udFNpemU6IHN0cmluZ1xuICAgIGZvbnRDbGFzczogc3RyaW5nXG4gICAgc2NhbGU6IG51bWJlclxuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUtleWNsb2FrIHtcbiAgICBkZWZhdWx0aWRwSGludDogJ0UnIHwgJ04nIHwgJ1MnXG4gICAgaXNMb2dpbkhpZGRlbjogYm9vbGVhblxuICAgIGJlYXJlckV4Y2x1ZGVkVXJsczogc3RyaW5nW11cbiAgICBjbGllbnRJZDogc3RyaW5nXG4gICAga2V5OiBzdHJpbmdcbiAgICByZWFsbTogc3RyaW5nXG4gICAgdXJsOiBzdHJpbmdcbiAgICBjaGFuZ2VQYXNzd29yZFVybD86IHN0cmluZ1xuICAgIG9uTG9hZD86ICdjaGVjay1zc28nIHwgJ2xvZ2luLXJlcXVpcmVkJ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUxvY2Fsc0NvbmZpZyB7XG4gICAgaXNBdmFpbGFibGU6IGJvb2xlYW5cbiAgICBpc0VuYWJsZWQ6IGJvb2xlYW5cbiAgICBsb2NhbHM6IHN0cmluZ1tdXG4gICAgcGF0aDogc3RyaW5nXG4gICAgaXNSVEw6IGJvb2xlYW5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElNaWNyb3NvZnQge1xuICAgIGNsaWVudElkOiBzdHJpbmdcbiAgICBkZWZhdWx0RW1haWxJZDogc3RyaW5nXG4gICAgdGVuYW50OiBzdHJpbmdcbiAgICB2YWxpZEVtYWlsRXh0ZW5zaW9uczogc3RyaW5nW11cbiAgICBpc0NvbmZpZ3VyZWQ6IGJvb2xlYW5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElUaGVtZSB7XG4gICAgY29sb3I6IElUaGVtZUNvbG9yXG4gICAgdGhlbWVGaWxlOiBzdHJpbmdcbiAgICB0aGVtZUNsYXNzOiBzdHJpbmdcbiAgICB0aGVtZU5hbWU6IHN0cmluZ1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJVGhlbWVDb2xvciB7XG4gICAgYWNjZW50OiBzdHJpbmdcbiAgICBwcmltYXJ5OiBzdHJpbmdcbiAgICB3YXJuOiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElPdmVycmlkZVRoZW1lQ2hhbmdlcyB7XG4gICAgaXNFbmFibGVkOiBib29sZWFuXG4gICAgZGVza3RvcDogSURlc2t0b3BcbiAgICBtV2ViOiBJTVdlYlxuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSURlc2t0b3Age1xuICAgIGFuaW1hdGlvbkR1cmF0aW9uOiBudW1iZXJcbiAgICBsb2dvVXJsOiBzdHJpbmdcbiAgICBsb2dvVGV4dDogc3RyaW5nXG4gICAgbG9nb0Rpc3BsYXlUaW1lOiBudW1iZXJcbiAgICBiYWNrZ3JvdW5kVGhlbWU6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSU1XZWIge1xuICAgIGxvZ29Vcmw6IHN0cmluZ1xuICAgIGxvZ29UZXh0OiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElMb2dvcyB7XG4gICAgYXBwOiBzdHJpbmdcbiAgICBhcHBUcmFuc3BhcmVudDogc3RyaW5nXG4gICAgYXBwU2Vjb25kYXJ5OiBzdHJpbmdcbiAgICBhYm91dEZvb3Rlcjogc3RyaW5nXG4gICAgYWJvdXRIZWFkZXI6IHN0cmluZ1xuICAgIGFwcEJvdHRvbU5hdj86IHN0cmluZ1xuICAgIGNvbXBhbnk6IHN0cmluZ1xuICAgIGRldmVsb3BlZEJ5OiBzdHJpbmdcbiAgICBwb3dlcmVkQnk6IHN0cmluZ1xuICAgIGRlZmF1bHRDb250ZW50Pzogc3RyaW5nXG4gICAgZGVmYXVsdFNvdXJjZUxvZ28/OiBzdHJpbmdcbiAgICBsYW5kaW5nTG9nbzogc3RyaW5nXG4gICAgbmF2YmFyTG9nbz86IHN0cmluZ1xuICAgIHBsYXlMaXN0TG9nbz86IHN0cmluZ1xuICAgIHRodW1wc1VwPzogc3RyaW5nXG5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElNYWlsSWRzIHtcbiAgICBjb250YWN0VXM6IHN0cmluZ1xuICAgIGRlZmF1bHQ6IHN0cmluZ1xuICAgIHN1cHBvcnQ6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSURldGFpbHMge1xuICAgIGFwcE5hbWU6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVByaW1hcnlOYXZiYXJDb25maWcge1xuICAgIG1lZGl1bVNjcmVlbjogSVByaW1hcnlOYXZCYXJTY3JlZW5cbiAgICBzbWFsbFNjcmVlbjogSVByaW1hcnlOYXZCYXJTY3JlZW5cbiAgfVxuICBpbnRlcmZhY2UgSVByaW1hcnlOYXZCYXJTY3JlZW4ge1xuICAgIGxlZnQ6IElQcmltYXJ5TmF2QmFyU2lkZVtdXG4gICAgcmlnaHQ6IElQcmltYXJ5TmF2QmFyU2lkZVtdXG4gIH1cbiAgaW50ZXJmYWNlIElQcmltYXJ5TmF2QmFyU2lkZSB7XG4gICAgdHlwZTogJ3dpZGdldEJ1dHRvbicgfCAnZmVhdHVyZUJ1dHRvbidcbiAgICBjb25maWc6IE5zV2lkZ2V0UmVzb2x2ZXIuSVJlbmRlckNvbmZpZ1dpdGhBbnlEYXRhIHwgTnNQYWdlLklOYXZMaW5rXG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElUZWxlbWV0cnlDb25maWcge1xuICAgIHBkYXRhOiB7XG4gICAgICBpZDogc3RyaW5nXG4gICAgICB2ZXI6IHN0cmluZ1xuICAgICAgcGlkOiBzdHJpbmdcbiAgICB9XG4gICAgb2JqZWN0OiB7XG4gICAgICB2ZXI6IHN0cmluZ1xuICAgICAgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgIH1cbiAgICB1aWQ6IHN0cmluZyB8IG51bGxcbiAgICBhdXRodG9rZW4/OiBzdHJpbmdcbiAgICBlbnY6IHN0cmluZ1xuICAgIGNoYW5uZWw6IHN0cmluZ1xuICAgIGJhdGNoc2l6ZTogbnVtYmVyXG4gICAgaG9zdDogc3RyaW5nXG4gICAgZW5kcG9pbnQ6IHN0cmluZ1xuICAgIGFwaXNsdWc6IHN0cmluZ1xuICAgIHNpZDogc3RyaW5nXG4gICAgcHVibGljRW5kcG9pbnQ6IHN0cmluZ1xuICAgIHByb3RlY3RlZEVuZHBvaW50OiBzdHJpbmdcbiAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIE5zQXBwc0NvbmZpZyB7XG4gIGV4cG9ydCB0eXBlIFRJY29uVHlwZSA9ICdtYXQtaWNvbicgfCAndXJsJ1xuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSUFwcHNDb25maWcge1xuICAgIGdyb3VwczogSUdyb3VwW11cbiAgICBmZWF0dXJlczogeyBbaWQ6IHN0cmluZ106IElGZWF0dXJlIH1cbiAgICB0b3VyR3VpZGU/OiBzdHJpbmdbXVtdXG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElHcm91cCB7XG4gICAgaWQ6IHN0cmluZ1xuICAgIGljb25UeXBlOiBzdHJpbmdcbiAgICBpY29uOiBzdHJpbmdcbiAgICBrZXl3b3Jkczogc3RyaW5nW11cbiAgICBuYW1lOiBzdHJpbmdcbiAgICB0b29sVGlwOiBzdHJpbmdcbiAgICBmZWF0dXJlSWRzOiBzdHJpbmdbXVxuICAgIHN0cmlwQmFja2dyb3VuZD86IHN0cmluZ1xuICAgIGhhc1JvbGU6IHN0cmluZ1tdXG4gIH1cblxuICAvLyBleHBvcnQgaW50ZXJmYWNlIElHcm91cFdpdGhGZWF0dXJlcyBleHRlbmRzIElHcm91cCB7XG4gIC8vICAgZmVhdHVyZXM6IElGZWF0dXJlW11cbiAgLy8gfVxuICBleHBvcnQgaW50ZXJmYWNlIElGZWF0dXJlIHtcbiAgICBuYW1lOiBzdHJpbmdcbiAgICBpZDogc3RyaW5nXG4gICAgdXJsOiBzdHJpbmdcbiAgICBwZXJtaXNzaW9uOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHsgYWxsOiBzdHJpbmdbXTsgc29tZTogc3RyaW5nW107IG5vbmU6IHN0cmluZ1tdIH1cbiAgICBpY29uVHlwZTogVEljb25UeXBlXG4gICAgaWNvbjogc3RyaW5nXG4gICAga2V5d29yZHM6IHN0cmluZ1tdXG4gICAgdG9vbFRpcDogc3RyaW5nXG4gICAgYWNjZXNzS2V5OiBzdHJpbmdcbiAgICBzdGF0dXM/OiAnZWFybHlBY2Nlc3MnIHwgJ2xpdmUnIHwgJ2FscGhhJyB8ICdiZXRhJ1xuICAgIHNob3J0TmFtZTogc3RyaW5nXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgICBiYWRnZUVuZHBvaW50Pzogc3RyaW5nXG4gICAgbW9iaWxlQXBwRnVuY3Rpb24/OiBzdHJpbmdcbiAgICBjb2xvcj86IHN0cmluZ1xuICAgIHRhcmdldD86IHN0cmluZ1xuICB9XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgTnNVc2VyIHtcbiAgZXhwb3J0IGludGVyZmFjZSBJVXNlclByb2ZpbGUge1xuICAgIHVzZXJJZDogc3RyaW5nXG4gICAgZW1haWw/OiBzdHJpbmdcbiAgICBkZXBhcnRtZW50TmFtZT86IHN0cmluZ1xuICAgIHVzZXJOYW1lPzogc3RyaW5nXG4gICAgZmlyc3ROYW1lPzogc3RyaW5nXG4gICAgc3VyTmFtZT86IHN0cmluZ1xuICAgIG1pZGRsZU5hbWU/OiBzdHJpbmdcbiAgICBsYXN0TmFtZT86IHN0cmluZ1xuICAgIHJvb3RPcmdJZD86IHN0cmluZ1xuICAgIHJvb3RPcmdOYW1lPzogc3RyaW5nXG4gICAgcHJvZmlsZUltYWdlPzogc3RyaW5nXG4gICAgZ2l2ZW5OYW1lPzogc3RyaW5nXG4gICAgY291bnRyeT86IG51bGwgfCBzdHJpbmdcbiAgICB1bml0Pzogc3RyaW5nIHwgbnVsbFxuICAgIHNvdXJjZV9wcm9maWxlX3BpY3R1cmU/OiBudWxsIHwgc3RyaW5nXG4gICAgZGVhbGVyQ29kZT86IG51bGwgfCBzdHJpbmdcbiAgICBpc01hbmFnZXI/OiBib29sZWFuXG4gICAgY29tcGV0ZW5jaWVzPzogYW55XG4gICAgc3lzdGVtVG9waWNzPzogYW55XG4gICAgZGVzaXJlZFRvcGljcz86IGFueVxuICAgIGRlc2lyZWRDb21wZXRlbmNpZXM/OiBhbnlcbiAgICB1c2VyUm9sZXM/OiBhbnlcbiAgICBwcm9maWxlVXBkYXRlQ29tcGxldGlvbj86IG51bWJlclxuICAgIHByb2ZpbGVJbWFnZVVybD86IHN0cmluZ1xuICAgIHByb2Zlc3Npb25hbERldGFpbHM/OiBhbnlcbiAgICB3ZWJQb3J0YWxMYW5nPzogYW55LFxuICAgIGRlcGFydG1lbnRJbWc/OiBhbnlcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSU5vZGViYlVzZXJQcm9maWxlIHtcbiAgICB1c2VybmFtZTogc3RyaW5nXG4gICAgZW1haWw6IHN0cmluZ1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJVXNlclBpZFByb2ZpbGUge1xuICAgIGtpZF91cGRhdGVkOiBib29sZWFuXG4gICAgdXNlcjogSVVzZXJcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVVzZXJQaWRQcm9maWxlVjIge1xuICAgIGtpZF91cGRhdGVkOiBib29sZWFuXG4gICAgcmVzdWx0OiB7XG4gICAgICByZXNwb25zZTogSVVzZXJWMlxuICAgIH1cbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVVzZXJQaWRQcm9maWxlVmVyMiB7XG4gICAgcmVzdWx0OiB7XG4gICAgICBVc2VyUHJvZmlsZTogSVVzZXJWZXIyXG4gICAgfVxuICB9XG4gIGludGVyZmFjZSBJU291cmNlRGF0YSB7XG4gICAgR0lEOiBzdHJpbmdcbiAgICBTTkFNUFJFOiBzdHJpbmdcbiAgICBTTkFNQUREOiBzdHJpbmdcbiAgICBMQVNUTkFNRTogc3RyaW5nXG4gICAgU046IHN0cmluZ1xuICAgIEdJVkVOTkFNRTogc3RyaW5nXG4gICAgTklDS05BTUU6IHN0cmluZ1xuICAgIFBSRUZFUlJFRFNOOiBzdHJpbmdcbiAgICBQRVJTT05BTFRJVExFOiBzdHJpbmdcbiAgICBNT0JJTEU6IHN0cmluZ1xuICAgIE1BSUw6IHN0cmluZ1xuICAgIERFUEFSVE1FTlRURVhUOiBzdHJpbmdcbiAgICBDT1NUTE9DQVRJT05VTklUOiBzdHJpbmdcbiAgICBDT1NUTE9DQVRJT046IHN0cmluZ1xuICAgIE9SR0lEOiBzdHJpbmdcbiAgICBNR01UUkVTUDogc3RyaW5nXG4gICAgVVRDOiBzdHJpbmdcbiAgICBDTkFNRUVORzogc3RyaW5nXG4gICAgTE5BTUVJTlQ6IHN0cmluZ1xuICAgIFVTRVJUWVBFOiBzdHJpbmdcbiAgICBTVEFUVVM6IHN0cmluZ1xuICAgIENPTlRSQUNUU1RBVFVTOiBzdHJpbmdcbiAgfVxuXG4gIGludGVyZmFjZSBJVXNlciB7XG4gICAgd2lkOiBzdHJpbmdcbiAgICByb290X29yZzogc3RyaW5nXG4gICAgb3JnOiBzdHJpbmdcbiAgICBpc19hY3RpdmU/OiBhbnlcbiAgICBhY2NvdW50X2V4cGlyeV9kYXRlPzogYW55XG4gICAga2lkOiBzdHJpbmdcbiAgICBpbXBvcnRlZF9zb3VyY2VfbmFtZTogc3RyaW5nXG4gICAgc291cmNlX2lkOiBzdHJpbmdcbiAgICB1c2VybmFtZT86IGFueVxuICAgIGZpcnN0X25hbWU6IHN0cmluZ1xuICAgIGxhc3RfbmFtZTogc3RyaW5nXG4gICAgbWlkZGxlX25hbWU/OiBhbnlcbiAgICBrbm93bl9hczogc3RyaW5nXG4gICAgc2FsdXRhdGlvbj86IGFueVxuICAgIGVtYWlsOiBzdHJpbmdcbiAgICBnZW5kZXI/OiBhbnlcbiAgICBkb2I/OiBhbnlcbiAgICBsYW5ndWFnZXNfa25vd24/OiBhbnlcbiAgICBwcmVmZXJyZWRfbGFuZ3VhZ2U/OiBhbnlcbiAgICBzb3VyY2VfcHJvZmlsZV9waWN0dXJlPzogYW55XG4gICAgcmVzaWRlbmNlX2NvdW50cnk6IHN0cmluZ1xuICAgIHJlc2lkZW5jZV9zdGF0ZT86IGFueVxuICAgIHJlc2lkZW5jZV9jaXR5OiBzdHJpbmdcbiAgICBjb250YWN0X3Bob25lX251bWJlcl9vZmZpY2U/OiBhbnlcbiAgICBjb250YWN0X3Bob25lX251bWJlcl9ob21lPzogYW55XG4gICAgY29udGFjdF9waG9uZV9udW1iZXJfcGVyc29uYWw6IHN0cmluZ1xuICAgIGVtcGxveWVtZW50X3N0YXR1cz86IGFueVxuICAgIGNvbnRyYWN0X3R5cGU/OiBhbnlcbiAgICBqb2JfdGl0bGU/OiBhbnlcbiAgICBqb2Jfcm9sZT86IGFueVxuICAgIGRlcGFydG1lbnRfbmFtZTogc3RyaW5nXG4gICAgdW5pdF9uYW1lPzogYW55XG4gICAgb3JnYW5pemF0aW9uX2xvY2F0aW9uX2NvdW50cnk/OiBhbnlcbiAgICBvcmdhbml6YXRpb25fbG9jYXRpb25fc3RhdGU/OiBhbnlcbiAgICBvcmdhbml6YXRpb25fbG9jYXRpb25fY2l0eT86IGFueVxuICAgIHRpbWVfaW5zZXJ0ZWQ6IERhdGVcbiAgICB0aW1lX3VwZGF0ZWQ6IERhdGVcbiAgICBqc29uX3VubWFwcGVkX2ZpZWxkcz86IGFueVxuICAgIHNvdXJjZV9kYXRhOiBJU291cmNlRGF0YVxuICB9XG4gIGludGVyZmFjZSBJUm9vdE9yZyB7XG4gICAgZGF0ZVRpbWU6IHN0cmluZ1xuICAgIHByZWZlcnJlZExhbmd1YWdlOiBzdHJpbmdcbiAgICBrZXlzOiB7fVxuICAgIGNoYW5uZWw6IHN0cmluZ1xuICAgIGFwcHJvdmVkQnk6IHN0cmluZ1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmdcbiAgICB1cGRhdGVkRGF0ZTogc3RyaW5nXG4gICAgYWRkcmVzc0lkOiBzdHJpbmdcbiAgICBvcmdUeXBlOiBzdHJpbmdcbiAgICBwcm92aWRlcjogc3RyaW5nXG4gICAgb3JnQ29kZTogc3RyaW5nXG4gICAgbG9jYXRpb25JZDogc3RyaW5nXG4gICAgdGhlbWU6IHN0cmluZ1xuICAgIGlkOiBzdHJpbmdcbiAgICBpc0FwcHJvdmVkOiBib29sZWFuXG4gICAgY29tbXVuaXR5SWQ6IHN0cmluZ1xuICAgIHNsdWc6IHN0cmluZ1xuICAgIGVtYWlsOiBzdHJpbmdcbiAgICBpc1NTT0VuYWJsZWQ6IGJvb2xlYW5cbiAgICB0aHVtYm5haWw6IHN0cmluZ1xuICAgIHVwZGF0ZWRCeTogc3RyaW5nXG4gICAgb3JnTmFtZTogc3RyaW5nXG4gICAgbG9jYXRpb25JZHM6IFtdXG4gICAgZXh0ZXJuYWxJZDogc3RyaW5nXG4gICAgaXNSb290T3JnOiBib29sZWFuXG4gICAgcm9vdE9yZ0lkOiBzdHJpbmdcbiAgICBpbWdVcmw6IHN0cmluZ1xuICAgIGFwcHJvdmVkRGF0ZTogc3RyaW5nXG4gICAgb3JnVHlwZUlkOiBzdHJpbmdcbiAgICBob21lVXJsOiBzdHJpbmdcbiAgICBpc0RlZmF1bHQ6IGJvb2xlYW5cbiAgICBjcmVhdGVkRGF0ZTogc3RyaW5nXG4gICAgY29udGFjdERldGFpbDogc3RyaW5nXG4gICAgcGFyZW50T3JnSWQ6IHN0cmluZ1xuICAgIGNyZWF0ZWRCeTogc3RyaW5nXG4gICAgaGFzaFRhZ0lkOiBzdHJpbmdcbiAgICBub09mTWVtYmVyczogc3RyaW5nXG4gICAgc3RhdHVzOiBudW1iZXJcbiAgfVxuICBpbnRlcmZhY2UgSU9yZyB7XG4gICAgdXBkYXRlZEJ5OiBzdHJpbmdcbiAgICBvcmdhbmlzYXRpb25JZDogc3RyaW5nXG4gICAgb3JnTmFtZTogc3RyaW5nXG4gICAgYWRkZWRCeU5hbWU6IHN0cmluZ1xuICAgIGFkZGVkQnk6IHN0cmluZ1xuICAgIHJvbGVzOiBzdHJpbmdbXVxuICAgIGFwcHJvdmVkQnk6IHN0cmluZ1xuICAgIHVwZGF0ZWREYXRlOiBzdHJpbmdcbiAgICB1c2VySWQ6IHN0cmluZ1xuICAgIGFwcHJvdmFsZGF0ZTogc3RyaW5nXG4gICAgaXNEZWxldGVkOiBib29sZWFuXG4gICAgcGFyZW50T3JnSWQ6IHN0cmluZ1xuICAgIGhhc2hUYWdJZDogc3RyaW5nXG4gICAgaXNSZWplY3RlZDogYm9vbGVhblxuICAgIHBvc2l0aW9uOiBzdHJpbmdcbiAgICBpZDogc3RyaW5nXG4gICAgb3Jnam9pbmRhdGU6IHN0cmluZ1xuICAgIGlzQXBwcm92ZWQ6IGJvb2xlYW5cbiAgICBvcmdMZWZ0RGF0ZTogc3RyaW5nXG4gIH1cbiAgaW50ZXJmYWNlIElVc2VyVjIge1xuICAgIHN1ck5hbWU6IGFueVxuICAgIG1hc2tlZFBob25lOiBzdHJpbmdcbiAgICByb290T3JnTmFtZTogc3RyaW5nXG4gICAgc3ViamVjdDogW11cbiAgICBjaGFubmVsOiBzdHJpbmdcbiAgICBsYW5ndWFnZTogW11cbiAgICB1cGRhdGVkRGF0ZTogc3RyaW5nXG4gICAgbWFuYWdlZEJ5OiBzdHJpbmdcbiAgICBmbGFnc1ZhbHVlOiBudW1iZXJcbiAgICBpZDogc3RyaW5nXG4gICAgcmVjb3ZlcnlFbWFpbDogc3RyaW5nXG4gICAgaWRlbnRpZmllcjogc3RyaW5nXG4gICAgdGh1bWJuYWlsOiBzdHJpbmdcbiAgICBwcm9maWxlVmlzaWJpbGl0eTogW11cbiAgICB1cGRhdGVkQnk6IHN0cmluZ1xuICAgIGFjY2Vzc2NvZGU6IHN0cmluZ1xuICAgIGxvY2F0aW9uSWRzOiBbXVxuICAgIGV4dGVybmFsSWRzOiBbXVxuICAgIHJlZ2lzdHJ5SWQ6IHN0cmluZ1xuICAgIHJvb3RPcmdJZDogc3RyaW5nXG4gICAgcHJldlVzZWRFbWFpbDogc3RyaW5nXG4gICAgZmlyc3ROYW1lOiBzdHJpbmdcbiAgICB0bmNBY2NlcHRlZE9uOiBzdHJpbmdcbiAgICBwaG9uZTogc3RyaW5nXG4gICAgZG9iOiBzdHJpbmdcbiAgICBncmFkZTogW11cbiAgICBjdXJyZW50TG9naW5UaW1lOiBzdHJpbmdcbiAgICB1c2VyVHlwZTogc3RyaW5nXG4gICAgc3RhdHVzOiBudW1iZXJcbiAgICBsYXN0TmFtZTogc3RyaW5nXG4gICAgZ2VuZGVyOiBzdHJpbmdcbiAgICByb2xlczogc3RyaW5nW11cbiAgICBwcmV2VXNlZFBob25lOiBzdHJpbmdcbiAgICBzdGF0ZVZhbGlkYXRlZDogYm9vbGVhblxuICAgIGlzRGVsZXRlZDogYm9vbGVhblxuICAgIG9yZ2FuaXNhdGlvbnM6IElPcmdbXVxuICAgIGNvdW50cnlDb2RlOiBzdHJpbmdcbiAgICBtYXNrZWRFbWFpbDogc3RyaW5nXG4gICAgdGVtcFBhc3N3b3JkOiBzdHJpbmdcbiAgICBlbWFpbDogc3RyaW5nXG4gICAgcm9vdE9yZzogSVJvb3RPcmdcbiAgICBwcm9maWxlU3VtbWFyeTogc3RyaW5nXG4gICAgcGhvbmVWZXJpZmllZDogYm9vbGVhblxuICAgIHJlY292ZXJ5UGhvbmU6IHN0cmluZ1xuICAgIHVzZXJOYW1lOiBzdHJpbmdcbiAgICB1c2VySWQ6IHN0cmluZ1xuICAgIGxhc3RMb2dpblRpbWU6IHN0cmluZ1xuICAgIGVtYWlsVmVyaWZpZWQ6IHRydWVcbiAgICBmcmFtZXdvcms6IHt9XG4gICAgY3JlYXRlZERhdGU6IHN0cmluZ1xuICAgIGNyZWF0ZWRCeTogc3RyaW5nXG4gICAgbG9jYXRpb246IHN0cmluZ1xuICAgIHRuY0FjY2VwdGVkVmVyc2lvbjogc3RyaW5nXG4gIH1cblxuICBpbnRlcmZhY2UgSVVzZXJWZXIyIHtcbiAgICAnZmlyc3RuYW1lJzogc3RyaW5nLFxuICAgICdtb3RoZXJUb25ndWUnOiBzdHJpbmcsXG4gICAgJ3NlY29uZGFyeUVtYWlsJzogc3RyaW5nLFxuICAgICdnZW5kZXInOiBzdHJpbmcsXG4gICAgJ0B0eXBlJzogc3RyaW5nLFxuICAgICdtb2JpbGUnOiBudW1iZXIsXG4gICAgJ21pZGRsZW5hbWUnOiBzdHJpbmcsXG4gICAgJ3RlbGVwaG9uZSc6IG51bWJlcixcbiAgICAnb3NpZCc6IHN0cmluZyxcbiAgICAncHJpbWFyeUVtYWlsVHlwZSc6IHN0cmluZyxcbiAgICAna25vd25MYW5ndWFnZXMnOiBJTGFuZ3VhZ2VzW10sXG4gICAgJ3dpZCc6IHN0cmluZyxcbiAgICAnbmF0aW9uYWxpdHknOiBzdHJpbmcsXG4gICAgJ3N1cm5hbWUnOiBzdHJpbmcsXG4gICAgJ2RvYic6IHN0cmluZyxcbiAgICAnY2F0ZWdvcnknOiBzdHJpbmcsXG4gICAgJ3ByaW1hcnlFbWFpbCc6IHN0cmluZyxcbiAgICAnbWFyaXRhbFN0YXR1cyc6IHN0cmluZyxcbiAgICAncmVzaWRlbmNlQWRkcmVzcyc6IHN0cmluZyxcbiAgICAncmVzdWx0JzogYW55XG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJTGFuZ3VhZ2VzIHtcbiAgICBuYW1lOiBzdHJpbmdcbiAgfVxufVxuIl19
@@ -107,10 +107,8 @@ export class TelemetryService {
107
107
  pageContext.pageId
108
108
  : '',
109
109
  duration: 1,
110
- }, {
111
- context: Object.assign({ pdata: Object.assign({}, this.pData, { id: this.pData.id }) }, (pageContext && pageContext.module ? { env: pageContext.module } : null)),
112
- object: Object.assign({}, (data) && data),
113
- });
110
+ }, Object.assign({ context: Object.assign({ pdata: Object.assign({}, this.pData, { id: this.pData.id }) }, (pageContext && pageContext.module ? { env: pageContext.module } : null)), object: Object.assign({}, (data) && data) }, (this.configSvc.userProfile && this.configSvc.userProfile.userId ?
111
+ null : { actor: { id: 'non-loggedin', type: 'Anonymous User' } })));
114
112
  }
115
113
  else {
116
114
  this.logger.error('Error Initializing Telemetry. Config missing.');
@@ -618,4 +616,4 @@ if (false) {
618
616
  TelemetryService.prototype.router;
619
617
  TelemetryService.prototype.npsSvc;
620
618
  }
621
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsZW1ldHJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi91dGlscy12Mi8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy90ZWxlbWV0cnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFHdkMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDaEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRWhELE9BQU8sRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFBOzs7Ozs7O0FBT25ELE1BQU0sT0FBTyxnQkFBZ0I7SUFXM0IsWUFDVSxTQUFnQyxFQUNoQyxTQUF1QixFQUNSLFdBQWdCLEVBRS9CLE1BQXFCLEVBQ3JCLE1BQWMsRUFDZCxNQUFzQjtRQU50QixjQUFTLEdBQVQsU0FBUyxDQUF1QjtRQUNoQyxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBR3ZCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBakJoQyxnQkFBVyxHQUFrQixJQUFJLENBQUE7UUFDakMsb0JBQWUsR0FBNkMsSUFBSSxDQUFBO1FBQ2hFLFVBQUssR0FBUSxJQUFJLENBQUE7UUFDakIsaUJBQVksR0FBRyxFQUFFLENBQUE7UUFDakIseUJBQW9CLEdBQUcsSUFBSSxDQUFBO1FBQzNCLGFBQVEs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QUcsUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDakQsT0FBTyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFBO1NBQzVCO1FBRUQsSUFBSSxTQUFTLEtBQUssQ0FBQyxDQUFDLElBQUksU0FBUyxHQUFHLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZELE9BQU8sUUFBUSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBQTtTQUMvQjtRQUVELE9BQU8sSUFBSSxDQUFBO0lBQ2IsQ0FBQzs7O1lBdDJCRixVQUFVLFNBQUM7Z0JBQ1YsVUFBVSxFQUFFLE1BQU07YUFDbkI7OztZQVpRLHFCQUFxQjtZQUVyQixZQUFZOzRDQXlCaEIsTUFBTSxTQUFDLGFBQWE7WUF4QmhCLGFBQWE7WUFFYixNQUFNO1lBQ04sY0FBYzs7OztJQVFyQix1Q0FBaUM7SUFDakMsMkNBQWdFO0lBQ2hFLGlDQUFpQjtJQUNqQix3Q0FBaUI7SUFDakIsZ0RBQTJCO0lBQzNCLG9DQUFrQjtJQUNsQix3Q0FFQztJQUNELHVDQUFnQjtJQUVkLHFDQUF3QztJQUN4QyxxQ0FBK0I7SUFHL0Isa0NBQTZCO0lBQzdCLGtDQUFzQjtJQUN0QixrQ0FBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcclxuLy8gaW1wb3J0IHsgQXV0aEtleWNsb2FrU2VydmljZSB9IGZyb20gJy4vYXV0aC1rZXljbG9hay5zZXJ2aWNlJ1xyXG5pbXBvcnQgeyBOc0luc3RhbmNlQ29uZmlnIH0gZnJvbSAnLi9jb25maWd1cmF0aW9ucy5tb2RlbCdcclxuaW1wb3J0IHsgQ29uZmlndXJhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi9jb25maWd1cmF0aW9ucy5zZXJ2aWNlJ1xyXG5pbXBvcnQgeyBXc0V2ZW50cyB9IGZyb20gJy4vZXZlbnQubW9kZWwnXHJcbmltcG9ydCB7IEV2ZW50U2VydmljZSB9IGZyb20gJy4vZXZlbnQuc2VydmljZSdcclxuaW1wb3J0IHsgTG9nZ2VyU2VydmljZSB9IGZyb20gJy4vbG9nZ2VyLnNlcnZpY2UnXHJcbmltcG9ydCB7IE5zQ29udGVudCB9IGZyb20gJy4vd2lkZ2V0LWNvbnRlbnQubW9kZWwnXHJcbmltcG9ydCB7IFJvdXRlciwgTmF2aWdhdGlvblN0YXJ0IH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJ1xyXG5pbXBvcnQgeyBOUFNHcmlkU2VydmljZSB9IGZyb20gJy4vbnBzLWdyaWQuc2VydmljZSdcclxuXHJcbmRlY2xhcmUgdmFyICR0OiBhbnlcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBUZWxlbWV0cnlTZXJ2aWNlIHtcclxuICBwcmV2aW91c1VybDogc3RyaW5nIHwgbnVsbCA9IG51bGxcclxuICB0ZWxlbWV0cnlDb25maWc6IE5zSW5zdGFuY2VDb25maWcuSVRlbGVtZXRyeUNvbmZpZyB8IG51bGwgPSBudWxsXHJcbiAgcERhdGE6IGFueSA9IG51bGxcclxuICBjb250ZXh0Q2RhdGEgPSBbXVxyXG4gIGlzQW5vbnltb3VzVGVsZW1ldHJ5ID0gdHJ1ZVxyXG4gIHRlbEFycmF5OiBhbnkgPSBbXVxyXG4gIGV4dGVybmFsQXBwczogYW55ID0ge1xyXG4gICAgUkJDUDogJ3JiY3Atd2ViLXVpJyxcclxuICB9XHJcbiAgZW52aXJvbm1lbnQ6IGFueVxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBjb25maWdTdmM6IENvbmZpZ3VyYXRpb25zU2VydmljZSxcclxuICAgIHByaXZhdGUgZXZlbnRzU3ZjOiBFdmVudFNlcnZpY2UsXHJcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIGVudmlyb25tZW50OiBhbnksXHJcbiAgICAvLyBwcml2YXRlIGF1dGhTdmM6IEF1dGhLZXljbG9ha1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGxvZ2dlcjogTG9nZ2VyU2VydmljZSxcclxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIG5wc1N2YzogTlBTR3JpZFNlcnZpY2UsXHJcbiAgKSB7XHJcbiAgICB0aGlzLmVudmlyb25tZW50ID0gZW52aXJvbm1lbnRcclxuICAgIGNvbnN0IGluc3RhbmNlQ29uZmlnID0gdGhpcy5jb25maWdTdmMuaW5zdGFuY2VDb25maWdcclxuICAgIHRoaXMubmF2aWdhdGlvblN0YXJ0KClcclxuICAgIHRoaXMuaW5pdGlhbGl6ZUNvbmZpZyhpbnN0YW5jZUNvbmZpZylcclxuICAgIHRoaXMuYWRkUGxheWVyTGlzdGVuZXIoKVxyXG4gICAgdGhpcy5hZGRDdXN0b21FdmVudExpc3RlbmVyKClcclxuICAgIHRoaXMuYWRkSW50ZXJhY3RMaXN0ZW5lcigpXHJcbiAgICB0aGlzLmFkZEZlZWRiYWNrTGlzdGVuZXIoKVxyXG4gICAgdGhpcy5hZGRUaW1lU3BlbnRMaXN0ZW5lcigpXHJcbiAgICB0aGlzLmFkZFNlYXJjaExpc3RlbmVyKClcclxuICAgIHRoaXMuYWRkSGVhcmJlYXRMaXN0ZW5lcigpXHJcbiAgICB0aGlzLmFkZEN1c3RvbUltcHJlc3Npb25MaXN0ZW5lcigpXHJcbiAgICB0aGlzLmFkZEN1c3RvbUxpc3RlbmVyKClcclxuICAgIHRoaXMuYWRkQ3VzdG9tTGlzdGVuZXJGb3JHZXRTdGFydCgpXHJcbiAgICB0aGlzLmFkZEN1c3RvbUxpc3RlbmVyRm9yUGxhdGZvcm1SYXRpbmcoKVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBuYXZpZ2F0aW9uU3RhcnQoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKChldmVudDogYW55KSA9PiB7XHJcbiAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCkge1xyXG4gICAgICAgIGlmIChldmVudC51cmwuaW5jbHVkZXMoJy9wdWJsaWMvJykgfHwgZXZlbnQudXJsLmluY2x1ZGVzKCcmcHJldmlldz10cnVlJykgfHwgZXZlbnQudXJsLmluY2x1ZGVzKCcvY2VydHMnKSkge1xyXG4gICAgICAgICAgdGhpcy5pc0Fub255bW91c1RlbGVtZXRyeSA9IHRydWVcclxuICAgICAgICAgIHRoaXMudXBkYXRlVGVsZW1ldHJ5Q29uZmlnKClcclxuICAgICAgICAgIGNvbnN0IGluc3RhbmNlQ29uZmlnID0gdGhpcy5jb25maWdTdmMuaW5zdGFuY2VDb25maWdcclxuICAgICAgICAgIHRoaXMuaW5pdGlhbGl6ZUNvbmZpZyhpbnN0YW5jZUNvbmZpZylcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG5cclxuICBnZXQgaXNBbm9ueW1vdXNUZWxlbWV0cnlSZXF1aXJlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmlzQW5vbnltb3VzVGVsZW1ldHJ5XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVRlbGVtZXRyeUNvbmZpZygpIHtcclxuICAgIGlmICh0aGlzLmNvbmZpZ1N2Yy5pbnN0YW5jZUNvbmZpZyAmJiB0aGlzLmNvbmZpZ1N2Yy5pbnN0YW5jZUNvbmZpZy50ZWxlbWV0cnlDb25maWcpIHtcclxuICAgICAgaWYgKHRoaXMuaXNBbm9ueW1vdXNUZWxlbWV0cnlSZXF1aXJlZCkge1xyXG4gICAgICAgIHRoaXMuY29uZmlnU3ZjLmluc3RhbmNlQ29uZmlnLnRlbGVtZXRyeUNvbmZpZy5lbmRwb2ludCA9IHRoaXMuY29uZmlnU3ZjLmluc3RhbmNlQ29uZmlnLnRlbGVtZXRyeUNvbmZpZy5wdWJsaWNFbmRwb2ludFxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuY29uZmlnU3ZjLmluc3RhbmNlQ29uZmlnLnRlbGVtZXRyeUNvbmZpZy5lbmRwb2ludCA9IHRoaXMuY29uZmlnU3ZjLmluc3RhbmNlQ29uZmlnLnRlbGVtZXRyeUNvbmZpZy5wcm90ZWN0ZWRFbmRwb2ludFxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGluaXRpYWxpemVDb25maWcoaW5zdGFuY2VDb25maWc6IE5zSW5zdGFuY2VDb25maWcuSUNvbmZpZyB8IG51bGwpIHtcclxuICAgIGlmIChpbnN0YW5jZUNvbmZpZykge1xyXG4gICAgICB0aGlzLnRlbGVtZXRyeUNvbmZpZyA9IGluc3RhbmNlQ29uZmlnLnRlbGVtZXRyeUNvbmZpZ1xyXG4gICAgICB0aGlzLnRlbGVtZXRyeUNvbmZpZyA9IHtcclxuICAgICAgICAuLi50aGlzLnRlbGVtZXRyeUNvbmZpZyxcclxuICAgICAgICBwZGF0YToge1xyXG4gICAgICAgICAgLi4udGhpcy50ZWxlbWV0cnlDb25maWcucGRhdGEsXHJcbiAgICAgICAgICAvLyBwaWQ6IG5hdmlnYXRvci51c2VyQWdlbnQsXHJcbiAgICAgICAgICBpZDogYCR7dGhpcy5lbnZpcm9ubWVudC5uYW1lfS4ke3RoaXMudGVsZW1ldHJ5Q29uZmlnLnBkYXRhLmlkfWAsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB1aWQ6ICh0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZSAmJiB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZS51c2VySWQpID9cclxuICAgICAgICAgICAgICB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZS51c2VySWQgOiAnJyxcclxuICAgICAgICAvLyBhdXRodG9rZW46IHRoaXMuYXV0aFN2Yy50b2tlbixcclxuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLW5vbi1udWxsLWFzc2VydGlvblxyXG4gICAgICAgIGNoYW5uZWw6IHRoaXMucm9vdE9yZ0lkIHx8IHRoaXMudGVsZW1ldHJ5Q29uZmlnLmNoYW5uZWwsXHJcbiAgICAgICAgc2lkOiB0aGlzLmdldFRlbGVtZXRyeVNlc3Npb25JZCxcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnBEYXRhID0gdGhpcy50ZWxlbWV0cnlDb25maWcucGRhdGFcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBnZXRUZWxlbWV0cnlTZXNzaW9uSWQoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndGVsZW1ldHJ5U2Vzc2lvbklkJykgfHwgJydcclxuICB9XHJcblxyXG4gIGdldCByb290T3JnSWQoKTogc3RyaW5nIHtcclxuICAgIGlmICh0aGlzLmNvbmZpZ1N2YyAmJiB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZSAmJiB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZS5yb290T3JnSWQpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuY29uZmlnU3ZjLnVzZXJQcm9maWxlLnJvb3RPcmdJZFxyXG4gICAgfVxyXG4gICAgcmV0dXJuICcnXHJcbiAgfVxyXG5cclxuICB0cmlnZ2VyTlBTVXBkYXRlKGRhdGE6IGFueSkge1xyXG4gICAgdGhpcy50ZWxBcnJheS5wdXNoKGRhdGEpXHJcbiAgICBpZiAodGhpcy50ZWxBcnJheSAmJiB0aGlzLnRlbEFycmF5Lmxlbmd0aCA9PT0gNCkge1xyXG4gICAgICBpZiAobG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3JhdGluZ2Zvcm1JRCcpKSB7XHJcbiAgICAgICAgdGhpcy50ZWxBcnJheSA9IFtdXHJcbiAgICAgICAgdGhpcy5ucHNTdmMudXBkYXRlVGVsZW1ldHJ5RGF0YSh0cnVlKVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGFydChlZGF0YTogYW55LCBkYXRhOiBhbnksIHBhZ2VDb250ZXh0PzogV3NFdmVudHMuSVRlbGVtZXRyeVBhZ2VDb250ZXh0KSB7XHJcbiAgICB0cnkge1xyXG4gICAgICBpZiAodGhpcy50ZWxlbWV0cnlDb25maWcpIHtcclxuICAgICAgICAkdC5zdGFydChcclxuICAgICAgICAgIHRoaXMudGVsZW1ldHJ5Q29uZmlnLFxyXG4gICAgICAgICAgKHBhZ2VDb250ZXh0ICYmIHBhZ2VDb250ZXh0LnBhZ2VJZCkgP1xyXG4gICAgICAgICAgICBwYWdlQ29udGV4dC5wYWdlSWRcclxuICAgICAgICAgICAgOiAnJyxcclxuICAgICAgICAgICcxLjAnLFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICAvLyBpZCxcclxuICAgICAgICAgICAgdHlwZTogZWRhdGEudHlwZSxcclxuICAgICAgICAgICAgbW9kZTogZWRhdGEubW9kZSxcclxuICAgICAgICAgICAgcGFnZWlkOiAocGFnZUNvbnRleHQgJiYgcGFnZUNvbnRleHQucGFnZUlkKSA/XHJcbiAgICAgICAgICAgICAgcGFnZUNvbnRleHQucGFnZUlkXHJcbiAgICAgICAgICAgICAgOiAnJyxcclxuICAgICAgICAgICAgZHVyYXRpb246IDEsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAge1xyXG4gICAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgIC4uLnRoaXMucERhdGEsXHJcbiAgICAgICAgICAgICAgICBpZDogdGhpcy5wRGF0YS5pZCxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIC4uLihwYWdlQ29udGV4dCAmJiBwYWdlQ29udGV4dC5tb2R1bGUgPyB7IGVudjogcGFnZUNvbnRleHQubW9kdWxlIH0gOiBudWxsKSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgb2JqZWN0OiB7XHJcbiAgICAgICAgICAgICAgLi4uKGRhdGEpICYmIGRhdGEsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKCdFcnJvciBJbml0aWFsaXppbmcgVGVsZW1ldHJ5LiBDb25maWcgbWlzc2luZy4nKVxyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tY29uc29sZVxyXG4gICAgICBjb25zb2xlLmxvZygnRXJyb3IgaW4gdGVsZW1ldHJ5IHN0YXJ0JywgZSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGVuZChlZGF0YTogYW55LCBkYXRhOiBhbnksIHBhZ2VDb250ZXh0PzogV3NFdmVudHMuSVRlbGVtZXRyeVBhZ2VDb250ZXh0KSB7XHJcbiAgICB0cnkge1xyXG4gICAgICAkdC5lbmQoXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgdHlwZTogZWRhdGEudHlwZSxcclxuICAgICAgICAgIG1vZGU6IGVkYXRhLm1vZGUsXHJcbiAgICAgICAgICBwYWdlaWQ6IChwYWdlQ29udGV4dCAmJiBwYWdlQ29udGV4dC5wYWdlSWQpID9cclxuICAgICAgICAgICAgcGFnZUNvbnRleHQucGFnZUlkXHJcbiAgICAgICAgICAgIDogJycsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgIHBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICBpZDogdGhpcy5wRGF0YS5pZCxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgLi4uKHBhZ2VDb250ZXh0ICYmIHBhZ2VDb250ZXh0Lm1vZHVsZSA/IHsgZW52OiBwYWdlQ29udGV4dC5tb2R1bGUgfSA6IG51bGwpLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIG9iamVjdDoge1xyXG4gICAgICAgICAgICAuLi4oZGF0YSkgJiYgZGF0YSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgKVxyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWNvbnNvbGVcclxuICAgICAgY29uc29sZS5sb2coJ0Vycm9yIGluIHRlbGVtZXRyeSBlbmQnLCBlKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYXVkaXQodHlwZTogc3RyaW5nLCBwcm9wczogc3RyaW5nLCBkYXRhOiBhbnkpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgICR0LmF1ZGl0KFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHR5cGUsXHJcbiAgICAgICAgICBwcm9wcyxcclxuICAgICAgICAgIC8vIGRhdGEsXHJcbiAgICAgICAgICBzdGF0ZTogZGF0YSwgLy8gT3B0aW9uYWwuIEN1cnJlbnQgU3RhdGVcclxuICAgICAgICAgIHByZXZzdGF0ZTogJycsIC8vIE9wdGlvbmFsLiBQcmV2aW91cyBTdGF0ZVxyXG4gICAgICAgICAgZHVyYXRpb246ICcnLCAvLyBPcHRpb25hbC5cclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAuLi50aGlzLnBEYXRhLFxyXG4gICAgICAgICAgICAgIGlkOiB0aGlzLnBEYXRhLmlkLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICApXHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tY29uc29sZVxyXG4gICAgICBjb25zb2xlLmxvZygnRXJyb3IgaW4gdGVsZW1ldHJ5IGF1ZGl0JywgZSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhlYXJ0YmVhdCh0eXBlOiBzdHJpbmcsIGlkOiBzdHJpbmcpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgICR0LmhlYXJ0YmVhdCh7XHJcbiAgICAgICAgaWQsXHJcbiAgICAgICAgLy8gbW9kZSxcclxuICAgICAgICB0eXBlLFxyXG4gICAgICB9KVxyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWNvbnNvbGVcclxuICAgICAgY29uc29sZS5sb2coJ0Vycm9yIGluIHRlbGVtZXRyeSBoZWFydGJlYXQnLCBlKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaW1wcmVzc2lvbihkYXRhPzogYW55LCBvYmplY3RUeXBlPzogYW55KSB7XHJcbiAgICB0aGlzLnRyaWdnZXJOUFNVcGRhdGUoZGF0YSlcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IHBhZ2UgPSB0aGlzLmdldFBhZ2VEZXRhaWxzKClcclxuICAgICAgaWYgKGRhdGEgJiYgZGF0YS5wYWdlQ29udGV4dCkge1xyXG4gICAgICAgIHBhZ2UucGFnZWlkID0gZGF0YS5wYWdlQ29udGV4dC5wYWdlSWRcclxuICAgICAgICBwYWdlLm1vZHVsZSA9IGRhdGEucGFnZUNvbnRleHQubW9kdWxlXHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgZWRhdGEgPSB7XHJcbiAgICAgICAgcGFnZWlkOiBwYWdlLnBhZ2VpZCwgLy8gUmVxdWlyZWQuIFVuaXF1ZSBwYWdlIGlkXHJcbiAgICAgICAgdHlwZTogcGFnZS5wYWdlVXJsUGFydHNbMF0sIC8vIFJlcXVpcmVkLiBJbXByZXNzaW9uIHR5cGUgKGxpc3QsIGRldGFpbCwgdmlldywgZWRpdCwgd29ya2Zsb3csIHNlYXJjaClcclxuICAgICAgICB1cmk6IHBhZ2UucGFnZVVybCxcclxuICAgICAgfVxyXG4gICAgICBpZiAocGFnZS5vYmplY3RJZCkge1xyXG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHtcclxuICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAuLi50aGlzLnBEYXRhLFxyXG4gICAgICAgICAgICAgIGlkOiB0aGlzLnBEYXRhLmlkLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBlbnY6IHBhZ2UubW9kdWxlIHx8ICh0aGlzLnRlbGVtZXRyeUNvbmZpZyAmJiB0aGlzLnRlbGVtZXRyeUNvbmZpZy5lbnYpLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIG9iamVjdDoge1xyXG4gICAgICAgICAgICBpZDogcGFnZS5vYmplY3RJZCxcclxuICAgICAgICAgICAgdHlwZTogb2JqZWN0VHlwZSxcclxuICAgICAgICAgICAgLy8gVGhpcyB3aWxsIG92ZXJyaWRlIGFib3ZlIGlkIGlmIHRoZSBkYXRhIGhhcyBvYmplY3QgaW4gaXQuXHJcbiAgICAgICAgICAgIC4uLihkYXRhICYmIGRhdGEub2JqZWN0KSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghcGFnZS5vYmplY3RJZCB8fCAhb2JqZWN0VHlwZSkge1xyXG4gICAgICAgICAgY29uZmlnLm9iamVjdCA9IHt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICR0LmltcHJlc3Npb24oZWRhdGEsIGNvbmZpZylcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAkdC5pbXByZXNzaW9uKGVkYXRhLCB7XHJcbiAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgIHBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICBpZDogdGhpcy5wRGF0YSAmJiB0aGlzLnBEYXRhLmlkLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBlbnY6IHBhZ2UubW9kdWxlIHx8ICcnLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIG9iamVjdDoge1xyXG4gICAgICAgICAgICAuLi4oZGF0YSAmJiBkYXRhLm9iamVjdCksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5wcmV2aW91c1VybCA9IHBhZ2UucGFnZVVybFxyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWNvbnNvbGVcclxuICAgICAgY29uc29sZS5sb2coJ0Vycm9yIGluIHRlbGVtZXRyeSBpbXByZXNzaW9uJywgZSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGV4dGVybmFsSW1wcmVzc2lvbihpbXByZXNzaW9uRGF0YTogYW55KSB7XHJcbiAgICAvLyB0aGlzLnRyaWdnZXJOUFNVcGRhdGUoaW1wcmVzc2lvbkRhdGEpXHJcbiAgICB0cnkge1xyXG4gICAgICBjb25zdCBwYWdlID0gdGhpcy5nZXRQYWdlRGV0YWlscygpXHJcbiAgICAgIGlmICh0aGlzLmV4dGVybmFsQXBwc1tpbXByZXNzaW9uRGF0YS5zdWJBcHBsaWNhdGlvbk5hbWVdKSB7XHJcbiAgICAgICAgY29uc3QgZXh0ZXJuYWxDb25maWcgPSBwYWdlLm9iamVjdElkID8ge1xyXG4gICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICBwZGF0YToge1xyXG4gICAgICAgICAgICAgIC4uLnRoaXMucERhdGEsXHJcbiAgICAgICAgICAgICAgaWQ6IHRoaXMuZXh0ZXJuYWxBcHBzW2ltcHJlc3Npb25EYXRhLnN1YkFwcGxpY2F0aW9uTmFtZV0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgb2JqZWN0OiB7XHJcbiAgICAgICAgICAgIGlkOiBwYWdlLm9iamVjdElkLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9IDoge1xyXG4gICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICBwZGF0YToge1xyXG4gICAgICAgICAgICAgIC4uLnRoaXMucERhdGEsXHJcbiAgICAgICAgICAgICAgaWQ6IHRoaXMuZXh0ZXJuYWxBcHBzW2ltcHJlc3Npb25EYXRhLnN1YkFwcGxpY2F0aW9uTmFtZV0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH1cclxuICAgICAgICAkdC5pbXByZXNzaW9uKGltcHJlc3Npb25EYXRhLmRhdGEsIGV4dGVybmFsQ29uZmlnKVxyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tY29uc29sZVxyXG4gICAgICBjb25zb2xlLmxvZygnRXJyb3IgaW4gdGVsZW1ldHJ5IGV4dGVybmFsSW1wcmVzc2lvbicsIGUpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBmb3IgUGxhcnRmb3JtIHJhdGluZ1xyXG4gIGFkZEN1c3RvbUxpc3RlbmVyRm9yUGxhdGZvcm1SYXRpbmcoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5nZXRQUkV2ZW50cyRcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKFxyXG4gICAgICAgICAgZXZlbnQgPT5cclxuICAgICAgICAgICAgZXZlbnQgJiZcclxuICAgICAgICAgICAgZXZlbnQuZXZlbnRUeXBlID09PSBXc0V2ZW50cy5Xc0V2ZW50VHlwZS5UZWxlbWV0cnkgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YS5ldmVudFN1YlR5cGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlBsYXRmb3JtUmF0aW5nICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEubW9kZSAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhLFxyXG4gICAgICAgICksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLkxvYWRlZCkge1xyXG4gICAgICAgICAgdGhpcy5zdGFydChcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICAgIG1vZGU6IGV2ZW50LmRhdGEubW9kZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudE1vZGUuUGxheSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge30sXHJcbiAgICAgICAgICAgIGV2ZW50LnBhZ2VDb250ZXh0XHJcbiAgICAgICAgICApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlVubG9hZGVkXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICB0aGlzLmVuZCh7XHJcbiAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgZXZlbnQuZGF0YS5vYmplY3QsXHJcbiAgICAgICAgICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBldmVudC5kYXRhLnN0YXRlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5JbnRlcmFjdFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgJHQuaW50ZXJhY3QoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLmVkYXRhLnR5cGUsXHJcbiAgICAgICAgICAgICAgc3VidHlwZTogZXZlbnQuZGF0YS5lZGF0YS5zdWJUeXBlLFxyXG4gICAgICAgICAgICAgIGlkOiAoZXZlbnQuZGF0YS5lZGF0YSAmJiBldmVudC5kYXRhLmVkYXRhLmlkKSA/XHJcbiAgICAgICAgICAgICAgICBldmVudC5kYXRhLmVkYXRhLmlkXHJcbiAgICAgICAgICAgICAgICA6ICcnLFxyXG4gICAgICAgICAgICAgIHBhZ2VpZDogZXZlbnQucGFnZUNvbnRleHQgJiYgZXZlbnQucGFnZUNvbnRleHQucGFnZUlkIHx8ICcnLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICAgICAgaWQ6IHRoaXMucERhdGEuaWQsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgLi4uKGV2ZW50LnBhZ2VDb250ZXh0ICYmIGV2ZW50LnBhZ2VDb250ZXh0Lm1vZHVsZSA/IHsgZW52OiBldmVudC5wYWdlQ29udGV4dC5tb2R1bGUgfSA6IG51bGwpLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgb2JqZWN0OiB7XHJcbiAgICAgICAgICAgICAgICAuLi5ldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0pXHJcbiAgfVxyXG5cclxuICBhZGRDdXN0b21MaXN0ZW5lckZvckdldFN0YXJ0KCkge1xyXG4gICAgdGhpcy5ldmVudHNTdmMuZ2V0U3RhcnRFdmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIGV2ZW50ID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEuZXZlbnRTdWJUeXBlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5HZXRTdGFydGVkICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEubW9kZSAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhLFxyXG4gICAgICAgICksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLkxvYWRlZCkge1xyXG4gICAgICAgICAgdGhpcy5zdGFydChcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICAgIG1vZGU6IGV2ZW50LmRhdGEubW9kZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudE1vZGUuUGxheSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge30sXHJcbiAgICAgICAgICAgIGV2ZW50LnBhZ2VDb250ZXh0XHJcbiAgICAgICAgICApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlVubG9hZGVkXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICB0aGlzLmVuZCh7XHJcbiAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgZXZlbnQuZGF0YS5vYmplY3QsXHJcbiAgICAgICAgICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBldmVudC5kYXRhLnN0YXRlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5JbnRlcmFjdFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgJHQuaW50ZXJhY3QoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLmVkYXRhLnR5cGUsXHJcbiAgICAgICAgICAgICAgc3VidHlwZTogZXZlbnQuZGF0YS5lZGF0YS5zdWJUeXBlLFxyXG4gICAgICAgICAgICAgIGlkOiAoZXZlbnQuZGF0YS5lZGF0YSAmJiBldmVudC5kYXRhLmVkYXRhLmlkKSA/XHJcbiAgICAgICAgICAgICAgICBldmVudC5kYXRhLmVkYXRhLmlkXHJcbiAgICAgICAgICAgICAgICA6ICcnLFxyXG4gICAgICAgICAgICAgIHBhZ2VpZDogZXZlbnQucGFnZUNvbnRleHQgJiYgZXZlbnQucGFnZUNvbnRleHQucGFnZUlkIHx8ICcnLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICAgICAgaWQ6IHRoaXMucERhdGEuaWQsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgLi4uKGV2ZW50LnBhZ2VDb250ZXh0ICYmIGV2ZW50LnBhZ2VDb250ZXh0Lm1vZHVsZSA/IHsgZW52OiBldmVudC5wYWdlQ29udGV4dC5tb2R1bGUgfSA6IG51bGwpLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgb2JqZWN0OiB7XHJcbiAgICAgICAgICAgICAgICAuLi5ldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0pXHJcbiAgfVxyXG5cclxuICBhZGRDdXN0b21MaXN0ZW5lcigpIHtcclxuICAgIHRoaXMuZXZlbnRzU3ZjLmNoYXRib3RFdmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIGV2ZW50ID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEuZXZlbnRTdWJUeXBlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5DaGF0Ym90ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEubW9kZSAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhLFxyXG4gICAgICAgICksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLkxvYWRlZCkge1xyXG4gICAgICAgICAgdGhpcy5zdGFydChcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICAgIG1vZGU6IGV2ZW50LmRhdGEubW9kZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudE1vZGUuUGxheSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge30sXHJcbiAgICAgICAgICAgIGV2ZW50LnBhZ2VDb250ZXh0XHJcbiAgICAgICAgICApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlVubG9hZGVkXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICB0aGlzLmVuZCh7XHJcbiAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAge30sXHJcbiAgICAgICAgICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBldmVudC5kYXRhLnN0YXRlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5JbnRlcmFjdFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgJHQuaW50ZXJhY3QoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLmVkYXRhLnR5cGUsXHJcbiAgICAgICAgICAgICAgc3VidHlwZTogZXZlbnQuZGF0YS5lZGF0YS5zdWJUeXBlLFxyXG4gICAgICAgICAgICAgIGlkOiAoZXZlbnQuZGF0YS5lZGF0YSAmJiBldmVudC5kYXRhLmVkYXRhLmlkKSA/XHJcbiAgICAgICAgICAgICAgICBldmVudC5kYXRhLmVkYXRhLmlkXHJcbiAgICAgICAgICAgICAgICA6ICcnLFxyXG4gICAgICAgICAgICAgIHBhZ2VpZDogZXZlbnQucGFnZUNvbnRleHQgJiYgZXZlbnQucGFnZUNvbnRleHQucGFnZUlkIHx8ICcnLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICAgICAgaWQ6IHRoaXMucERhdGEuaWQsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgLi4uKGV2ZW50LnBhZ2VDb250ZXh0ICYmIGV2ZW50LnBhZ2VDb250ZXh0Lm1vZHVsZSA/IHsgZW52OiBldmVudC5wYWdlQ29udGV4dC5tb2R1bGUgfSA6IG51bGwpLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgb2JqZWN0OiB7XHJcbiAgICAgICAgICAgICAgICAuLi5ldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0pXHJcbiAgfVxyXG5cclxuICBhZGRDdXN0b21JbXByZXNzaW9uTGlzdGVuZXIoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5ldmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIChldmVudDogV3NFdmVudHMuV3NFdmVudFRlbGVtZXRyeUltcHJlc3Npb24pID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEgJiZcclxuICAgICAgICAgICAgZXZlbnQuZXZlbnRUeXBlID09PSBXc0V2ZW50cy5Xc0V2ZW50VHlwZS5UZWxlbWV0cnkgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YS5ldmVudFN1YlR5cGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLkltcHJlc3Npb24sXHJcbiAgICAgICAgKSxcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgLy8gY29uc29sZS5sb2coJ2V2ZW50LmRhdGE6OicsIGV2ZW50LmRhdGEpXHJcbiAgICAgICAgICB0aGlzLmltcHJlc3Npb24oZXZlbnQuZGF0YSlcclxuICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWNvbnNvbGVcclxuICAgICAgICAgIGNvbnNvbGUubG9nKCdFcnJvciBpbiB0ZWxlbWV0cnkgaW1wcmVzc2lvbicsIGUpXHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gIH1cclxuXHJcbiAgYWRkVGltZVNwZW50TGlzdGVuZXIoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5ldmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIGV2ZW50ID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEudHlwZSA9PT0gV3NFdmVudHMuV3NUaW1lU3BlbnRUeXBlLlBhZ2UgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YS5tb2RlICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEsXHJcbiAgICAgICAgKSxcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcclxuICAgICAgICBpZiAoZXZlbnQuZGF0YS5zdGF0ZSA9PT0gV3NFdmVudHMuRW51bVRlbGVtZXRyeVN1YlR5cGUuTG9hZGVkKSB7XHJcbiAgICAgICAgICB0aGlzLnN0YXJ0KFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgdHlwZTogZXZlbnQuZGF0YS50eXBlIHx8IFdzRXZlbnRzLldzVGltZVNwZW50VHlwZS5QbGF5ZXIsXHJcbiAgICAgICAgICAgICAgbW9kZTogZXZlbnQuZGF0YS5tb2RlIHx8IFdzRXZlbnRzLldzVGltZVNwZW50TW9kZS5QbGF5LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7fSxcclxuICAgICAgICAgICAgZXZlbnQucGFnZUNvbnRleHRcclxuICAgICAgICAgIClcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlVubG9hZGVkKSB7XHJcbiAgICAgICAgICB0aGlzLmVuZCh7XHJcbiAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAge30sXHJcbiAgICAgICAgICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICB9XHJcblxyXG4gIGFkZEN1c3RvbUV2ZW50TGlzdGVuZXIoKSB7XHJcblxyXG4gICAgdGhpcy5ldmVudHNTdmMuZXZlbnRzJFxyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICBldmVudCA9PlxyXG4gICAgICAgICAgICBldmVudCAmJlxyXG4gICAgICAgICAgICBldmVudC5ldmVudFR5cGUgPT09IFdzRXZlbnRzLldzRXZlbnRUeXBlLlRlbGVtZXRyeVxyXG4gICAgICAgICksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgZXZlbnQuZGF0YS5zdGF0ZSA9PT0gV3NFdmVudHMuRW51bVRlbGVtZXRyeVN1YlR5cGUuTG9hZGVkICYmXHJcbiAgICAgICAgICBldmVudC5kYXRhLnR5cGUgIT09IFdzRXZlbnRzLldzVGltZVNwZW50VHlwZS5QbGF5ZXJcclxuICAgICAgICApIHtcclxuICAgICAgICAgIHRoaXMuc3RhcnQoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLnR5cGUsXHJcbiAgICAgICAgICAgICAgbW9kZTogZXZlbnQuZGF0YS5tb2RlIHx8IFdzRXZlbnRzLldzVGltZVNwZW50TW9kZS5QbGF5LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgZXZlbnQucGFnZUNvbnRleHRcclxuICAgICAgICAgIClcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgZXZlbnQuZGF0YS5zdGF0ZSA9PT0gV3NFdmVudHMuRW51bVRlbGVtZXRyeVN1YlR5cGUuVW5sb2FkZWQgJiZcclxuICAgICAgICAgIGV2ZW50LmRhdGEudHlwZSAhPT0gV3NFdmVudHMuV3NUaW1lU3BlbnRUeXBlLlBsYXllclxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5lbmQoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLnR5cGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRUeXBlLlBsYXllcixcclxuICAgICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEub2JqZWN0LFxyXG4gICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICB9XHJcbiAgYWRkUGxheWVyTGlzdGVuZXIoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5ldmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIGV2ZW50ID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEudHlwZSA9PT0gV3NFdmVudHMuV3NUaW1lU3BlbnRUeXBlLlBsYXllciAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhLm1vZGUgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YSxcclxuICAgICAgICApLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xyXG4gICAgICAgIGNvbnN0IGNvbnRlbnQ6IE5zQ29udGVudC5JQ29udGVudCB8IG51bGwgPSBldmVudC5kYXRhLmNvbnRlbnRcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBldmVudC5kYXRhLnN0YXRlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5Mb2FkZWQgJiZcclxuICAgICAgICAgICghY29udGVudCB8fFxyXG4gICAgICAgICAgICAoY29udGVudC5pc0lmcmFtZVN1cHBvcnRlZCB8fCAnJykudG9Mb3dlckNhc2UoKSA9PT0gJ21heWJlJyB8fFxyXG4gICAgICAgICAgICAoY29udGVudC5pc0lmcmFtZVN1cHBvcnRlZCB8fCAnJykudG9Mb3dlckNhc2UoKSA9PT0gJ3llcycgfHxcclxuICAgICAgICAgICAgKGNvbnRlbnQubWltZVR5cGUgPT09ICdhcHBsaWNhdGlvbi9wZGYnIHx8ICdhcHBsaWNhdGlvbi9qc29uJykpXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICB0aGlzLnN0YXJ0KFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgdHlwZTogZXZlbnQuZGF0YS50eXBlIHx8IFdzRXZlbnRzLldzVGltZVNwZW50VHlwZS5QbGF5ZXIsXHJcbiAgICAgICAgICAgICAgbW9kZTogZXZlbnQuZGF0YS5tb2RlIHx8IFdzRXZlbnRzLldzVGltZVNwZW50TW9kZS5QbGF5LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgZXZlbnQucGFnZUNvbnRleHRcclxuXHJcbiAgICAgICAgICApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlVubG9hZGVkICYmXHJcbiAgICAgICAgICAoIWNvbnRlbnQgfHxcclxuICAgICAgICAgICAgKGNvbnRlbnQuaXNJZnJhbWVTdXBwb3J0ZWQgfHwgJycpLnRvTG93ZXJDYXNlKCkgPT09ICdtYXliZScgfHxcclxuICAgICAgICAgICAgKGNvbnRlbnQuaXNJZnJhbWVTdXBwb3J0ZWQgfHwgJycpLnRvTG93ZXJDYXNlKCkgPT09ICd5ZXMnIHx8XHJcbiAgICAgICAgICAgIChjb250ZW50Lm1pbWVUeXBlID09PSAnYXBwbGljYXRpb24vcGRmJyB8fCAnYXBwbGljYXRpb24vanNvbicpKVxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5lbmQoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLnR5cGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRUeXBlLlBsYXllcixcclxuICAgICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEub2JqZWN0LFxyXG4gICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICB9XHJcblxyXG4gIGFkZEludGVyYWN0TGlzdGVuZXIoKSB7XHJcbiAgICBjb25zdCBkYXRhID0gdGhpcy5nZXRQYWdlRGV0YWlscygpXHJcbiAgICB0aGlzLnRyaWdnZXJOUFNVcGRhdGUoZGF0YS5wYWdlaWQpXHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5ldmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIChldmVudDogV3NFdmVudHMuV3NFdmVudFRlbGVtZXRyeUludGVyYWN0KSA9PlxyXG4gICAgICAgICAgICBldmVudCAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEuZXZlbnRTdWJUeXBlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5JbnRlcmFjdCxcclxuICAgICAgICApLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xyXG4gICAgICAgIGNvbnN0IHBhZ2UgPSB0aGlzLmdldFBhZ2VEZXRhaWxzKClcclxuICAgICAgICBpZiAodHlwZW9mIGV2ZW50LmZyb20gPT09ICdzdHJpbmcnICYmIHRoaXMuZXh0ZXJuYWxBcHBzW2V2ZW50LmZyb21dKSB7XHJcbiAgICAgICAgICBjb25zdCBleHRlcm5hbENvbmZpZyA9IHtcclxuICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgIHBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAuLi50aGlzLnBEYXRhLFxyXG4gICAgICAgICAgICAgICAgaWQ6IHRoaXMuZXh0ZXJuYWxBcHBzW2V2ZW50LmZyb21dLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAkdC5pbnRlcmFjdChldmVudC5kYXRhLCBleHRlcm5hbENvbmZpZylcclxuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1jb25zb2xlXHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdFcnJvciBpbiB0ZWxlbWV0cnkgaW50ZXJhY3QnLCBlKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAvLyBsZXQgaW50ZXJhY3RpZFxyXG4gICAgICAgICAgLy8gaWYgKGV2ZW50LmRhdGEuZWRhdGEudHlwZSA9PT0gJ2dvYWwnKSB7XHJcbiAgICAgICAgICAvLyAgIGludGVyYWN0aWQgPSBwYWdlLnBhZ2VVcmxQYXJ0c1s0XVxyXG4gICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgJHQuaW50ZXJhY3QoXHJcbiAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdHlwZTogZXZlbnQuZGF0YS5lZGF0YS50eXBlLFxyXG4gICAgICAgICAgICAgICAgc3VidHlwZTogZXZlbnQuZGF0YS5lZGF0YS5zdWJUeXBlLFxyXG4gICAgICAgICAgICAgICAgLy8gb2JqZWN0OiBldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgICAgIGlkOiAoZXZlbnQuZGF0YS5lZGF0YSAmJiBldmVudC5kYXRhLmVkYXRhLmlkKSA/XHJcbiAgICAgICAgICAgICAgICAgIGV2ZW50LmRhdGEuZWRhdGEuaWRcclxuICAgICAgICAgICAgICAgICAgOiAnJyxcclxuICAgICAgICAgICAgICAgIHBhZ2VpZDogZXZlbnQuZGF0YS5wYWdlQ29udGV4dCAmJiBldmVudC5kYXRhLnBhZ2VDb250ZXh0LnBhZ2VJZCB8fCBwYWdlLnBhZ2VpZCxcclxuICAgICAgICAgICAgICAgIC8vIHRhcmdldDogeyBwYWdlIH0sXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICAgICAgIHBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICAgICAgICBpZDogdGhpcy5wRGF0YS5pZCxcclxuICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgLi4uKGV2ZW50LnBhZ2VDb250ZXh0ICYmIGV2ZW50LnBhZ2VDb250ZXh0Lm1vZHVsZSA/IHsgZW52OiBldmVudC5wYWdlQ29udGV4dC5tb2R1bGUgfSA6IG51bGwpLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIG9iamVjdDoge1xyXG4gICAgICAgICAgICAgICAgICAuLi5ldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1jb25zb2xlXHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdFcnJvciBpbiB0ZWxlbWV0cnkgaW50ZXJhY3QnLCBlKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICB9XHJcblxyXG4gIGFkZEZlZWRiYWNrTGlzdGVuZXIoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5ldmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIChldmVudDogV3NFdmVudHMuV3NFdmVudFRlbGVtZXRyeUZlZWRiYWNrKSA9PlxyXG4gICAgICAgICAgICBldmVudCAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEuZXZlbnRTdWJUeXBlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5GZWVkYmFjayxcclxuICAgICAgICApLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xyXG4gICAgICAgIGNvbnN0IHBhZ2UgPSB0aGlzLmdldFBhZ2VEZXRhaWxzKClcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgJHQuZmVlZGJhY2soXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICByYXRpbmc6IGV2ZW50LmRhdGEub2JqZWN0LnJhdGluZyB8fCAwLFxyXG4gICAgICAgICAgICAgIGNvbW1lbnRpZDogZXZlbnQuZGF0YS5vYmplY3QuY29tbWVudGlkIHx8ICcnLFxyXG4gICAgICAgICAgICAgIGNvbW1lbnR0eHQ6IGV2ZW50LmRhdGEub2JqZWN0LmNvbW1lbnR0eHQgfHwgJycsXHJcbiAgICAgICAgICAgICAgcGFnZWlkOiBwYWdlLnBhZ2VpZCxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgICAgIHBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgIC4uLnRoaXMucERhdGEsXHJcbiAgICAgICAgICAgICAgICAgIGlkOiB0aGlzLnBEYXRhLmlkLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIG9iamVjdDoge1xyXG4gICAgICAgICAgICAgICAgaWQ6IGV2ZW50LmRhdGEub2JqZWN0LmNvbnRlbnRJZCB8fCBldmVudC5kYXRhLm9iamVjdC5pZCB8fCAnJyxcclxuICAgICAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEuZWRhdGEudHlwZSB8fCAnJyxcclxuICAgICAgICAgICAgICAgIHZlcjogYCR7KGV2ZW50LmRhdGEub2JqZWN0LnZlcnNpb24gfHwgJzEnKX0keycnfWAsXHJcbiAgICAgICAgICAgICAgICByb2xsdXA6IHt9LFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1jb25zb2xlXHJcbiAgICAgICAgICBjb25zb2xlLmxvZygnRXJyb3IgaW4gdGVsZW1ldHJ5IGludGVyYWN0JywgZSlcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgfVxyXG5cclxuICBhZGRIZWFyYmVhdExpc3RlbmVyKCkge1xyXG4gICAgdGhpcy5ldmVudHNTdmMuZXZlbnRzJFxyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICAoZXZlbnQ6IFdzRXZlbnRzLldzRXZlbnRUZWxlbWV0cnlIZWFydEJlYXQpID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEgJiZcclxuICAgICAgICAgICAgZXZlbnQuZXZlbnRUeXBlID09PSBXc0V2ZW50cy5Xc0V2ZW50VHlwZS5UZWxlbWV0cnkgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YS5ldmVudFN1YlR5cGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLkhlYXJ0QmVhdCxcclxuICAgICAgICApLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xyXG4gICAgICAgIGlmICh0eXBlb2YgZXZlbnQuZnJvbSA9PT0gJ3N0cmluZycgJiYgdGhpcy5leHRlcm5hbEFwcHNbZXZlbnQuZnJvbV0pIHtcclxuICAgICAgICAgIGNvbnN0IGV4dGVybmFsQ29uZmlnID0ge1xyXG4gICAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgIC4uLnRoaXMucERhdGEsXHJcbiAgICAgICAgICAgICAgICBpZDogdGhpcy5leHRlcm5hbEFwcHNbZXZlbnQuZnJvbV0sXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICR0LmhlYXJ0YmVhdChldmVudC5kYXRhLCBleHRlcm5hbENvbmZpZylcclxuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1jb25zb2xlXHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdFcnJvciBpbiB0ZWxlbWV0cnkgaGVhcnRiZWF0JywgZSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgJHQuaGVhcnRiZWF0KFxyXG4gICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSxcclxuICAgICAgICAgICAgICAgIC8vIHN1YnR5cGU6IGV2ZW50LmRhdGEuZXZlbnRTdWJUeXBlLFxyXG4gICAgICAgICAgICAgICAgaWQ6IGV2ZW50LmRhdGEuaWQsXHJcbiAgICAgICAgICAgICAgICAvLyBtaW1lVHlwZTogZXZlbnQuZGF0YS5taW1lVHlwZSxcclxuICAgICAgICAgICAgICAgIC8vIG1vZGU6IGV2ZW50LmRhdGEubW9kZSxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnBEYXRhLFxyXG4gICAgICAgICAgICAgICAgICAgIGlkOiB0aGlzLnBEYXRhLmlkLFxyXG4gICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWNvbnNvbGVcclxuICAgICAgICAgICAgY29uc29sZS5sb2coJ0Vycm9yIGluIHRlbGVtZXRyeSBoZWFydGJlYXQnLCBlKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICB9XHJcblxyXG4gIGFkZFNlYXJjaExpc3RlbmVyKCkge1xyXG4gICAgdGhpcy5ldmVudHNTdmMuZXZlbnRzJFxyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICAoZXZlbnQ6IFdzRXZlbnRzLldzRXZlbnRUZWxlbWV0cnlTZWFyY2gpID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEgJiZcclxuICAgICAgICAgICAgZXZlbnQuZXZlbnRUeXBlID09PSBXc0V2ZW50cy5Xc0V2ZW50VHlwZS5UZWxlbWV0cnkgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YS5ldmVudFN1YlR5cGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlNlYXJjaCxcclxuICAgICAgICApLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAkdC5zZWFyY2goXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBxdWVyeTogZXZlbnQuZGF0YS5xdWVyeSxcclxuICAgICAgICAgICAgICBmaWx0ZXJzOiBldmVudC5kYXRhLmZpbHRlcnMsXHJcbiAgICAgICAgICAgICAgc2l6ZTogZXZlbnQuZGF0YS5zaXplLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICAgICAgaWQ6IHRoaXMucERhdGEuaWQsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICApXHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1jb25zb2xlXHJcbiAgICAgICAgICBjb25zb2xlLmxvZygnRXJyb3IgaW4gdGVsZW1ldHJ5IHNlYXJjaCcsIGUpXHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gIH1cclxuXHJcbiAgZ2V0UGFnZURldGFpbHMoKSB7XHJcbiAgICBjb25zdCBwYXRoID0gd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnJlcGxhY2UoJy8nLCAnJylcclxuICAgIGNvbnN0IHVybCA9IHBhdGggKyB3aW5kb3cubG9jYXRpb24uc2VhcmNoXHJcbiAgICBsZXQgbW9kdWxlVmFsdWUgPSAnJ1xyXG4gICAgaWYgKHBhdGguaW5jbHVkZXMoJ2Rpc2N1c3Npb24tZm9ydW0nKSkge1xyXG4gICAgICBtb2R1bGVWYWx1ZSA9ICdEaXNjdXNzJ1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgcGFnZWlkOiBwYXRoLFxyXG4gICAgICBwYWdlVXJsOiB1cmwsXHJcbiAgICAgIHBhZ2VVcmxQYXJ0czogcGF0aC5zcGxpdCgnLycpLFxyXG4gICAgICByZWZmZXJVcmw6IHRoaXMucHJldmlvdXNVcmwsXHJcbiAgICAgIG9iamVjdElkOiB0aGlzLmV4dHJhY3RDb250ZW50SWRGcm9tVXJsUGFydHMocGF0aC5zcGxpdCgnLycpKSxcclxuICAgICAgbW9kdWxlOiBtb2R1bGVWYWx1ZSxcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGV4dHJhY3RDb250ZW50SWRGcm9tVXJsUGFydHModXJsUGFydHM6IHN0cmluZ1tdKSB7XHJcbiAgICAvLyBUT0RPOiBwaWNrIHRvYyBhbmQgdmlld2VyIHVybCBmcm9tIHNvbWUgY29uZmlndXJhdGlvblxyXG4gICAgY29uc3QgdG9jSWR4ID0gdXJsUGFydHMuaW5kZXhPZigndG9jJylcclxuICAgIGNvbnN0IHZpZXdlcklkeCA9IHVybFBhcnRzLmluZGV4T2YoJ3ZpZXdlcicpXHJcblxyXG4gICAgaWYgKHRvY0lkeCA9PT0gLTEgJiYgdmlld2VySWR4ID09PSAtMSkge1xyXG4gICAgICByZXR1cm4gbnVsbFxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0b2NJZHggIT09IC0xICYmIHRvY0lkeCA8IHVybFBhcnRzLmxlbmd0aCAtIDEpIHtcclxuICAgICAgcmV0dXJuIHVybFBhcnRzW3RvY0lkeCArIDFdIC8vIGUuZy4gdXJsIC9hcHAvdG9jLzxjb250ZW50X2lkPlxyXG4gICAgfVxyXG5cclxuICAgIGlmICh2aWV3ZXJJZHggIT09IC0xICYmIHZpZXdlcklkeCA8IHVybFBhcnRzLmxlbmd0aCAtIDIpIHtcclxuICAgICAgcmV0dXJuIHVybFBhcnRzW3ZpZXdlcklkeCArIDJdIC8vIGUuZy4gdXJsIC9hcHAvdmlld2VyLzxjb250ZW50X3R5cGU+Lzxjb250ZW50X2lkPlxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsXHJcbiAgfVxyXG59XHJcbiJdfQ==
619
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVsZW1ldHJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi91dGlscy12Mi8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy90ZWxlbWV0cnkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFHdkMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFDaEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUN4QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBRWhELE9BQU8sRUFBRSxNQUFNLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFBOzs7Ozs7O0FBT25ELE1BQU0sT0FBTyxnQkFBZ0I7SUFXM0IsWUFDVSxTQUFnQyxFQUNoQyxTQUF1QixFQUNSLFdBQWdCLEVBRS9CLE1BQXFCLEVBQ3JCLE1BQWMsRUFDZCxNQUFzQjtRQU50QixjQUFTLEdBQVQsU0FBUyxDQUF1QjtRQUNoQyxjQUFTLEdBQVQsU0FBUyxDQUFjO1FBR3ZCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFdBQU0sR0FBTixNQUFNLENBQWdCO1FBakJoQyxnQkFBVyxHQUFrQixJQUFJLENBQUE7UUFDakMsb0JBQWUsR0FBNkMsSUFBSSxDQUFBO1FBQ2hFLFVBQUssR0FBUSxJQUFJLENBQUE7UUFDakIsaUJBQVksR0FBRyxFQUFFLENBQUE7UUFDakIseUJBQW9CLEdBQUcsSUFBSSxDQUFBO1FBQzNCLGFBQVEs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QUFHLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBRTVDLElBQUksTUFBTSxLQUFLLENBQUMsQ0FBQyxJQUFJLFNBQVMsS0FBSyxDQUFDLENBQUMsRUFBRTtZQUNyQyxPQUFPLElBQUksQ0FBQTtTQUNaO1FBRUQsSUFBSSxNQUFNLEtBQUssQ0FBQyxDQUFDLElBQUksTUFBTSxHQUFHLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ2pELE9BQU8sUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQTtTQUM1QjtRQUVELElBQUksU0FBUyxLQUFLLENBQUMsQ0FBQyxJQUFJLFNBQVMsR0FBRyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN2RCxPQUFPLFFBQVEsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUE7U0FDL0I7UUFFRCxPQUFPLElBQUksQ0FBQTtJQUNiLENBQUM7OztZQXgyQkYsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25COzs7WUFaUSxxQkFBcUI7WUFFckIsWUFBWTs0Q0F5QmhCLE1BQU0sU0FBQyxhQUFhO1lBeEJoQixhQUFhO1lBRWIsTUFBTTtZQUNOLGNBQWM7Ozs7SUFRckIsdUNBQWlDO0lBQ2pDLDJDQUFnRTtJQUNoRSxpQ0FBaUI7SUFDakIsd0NBQWlCO0lBQ2pCLGdEQUEyQjtJQUMzQixvQ0FBa0I7SUFDbEIsd0NBRUM7SUFDRCx1Q0FBZ0I7SUFFZCxxQ0FBd0M7SUFDeEMscUNBQStCO0lBRy9CLGtDQUE2QjtJQUM3QixrQ0FBc0I7SUFDdEIsa0NBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXHJcbi8vIGltcG9ydCB7IEF1dGhLZXljbG9ha1NlcnZpY2UgfSBmcm9tICcuL2F1dGgta2V5Y2xvYWsuc2VydmljZSdcclxuaW1wb3J0IHsgTnNJbnN0YW5jZUNvbmZpZyB9IGZyb20gJy4vY29uZmlndXJhdGlvbnMubW9kZWwnXHJcbmltcG9ydCB7IENvbmZpZ3VyYXRpb25zU2VydmljZSB9IGZyb20gJy4vY29uZmlndXJhdGlvbnMuc2VydmljZSdcclxuaW1wb3J0IHsgV3NFdmVudHMgfSBmcm9tICcuL2V2ZW50Lm1vZGVsJ1xyXG5pbXBvcnQgeyBFdmVudFNlcnZpY2UgfSBmcm9tICcuL2V2ZW50LnNlcnZpY2UnXHJcbmltcG9ydCB7IExvZ2dlclNlcnZpY2UgfSBmcm9tICcuL2xvZ2dlci5zZXJ2aWNlJ1xyXG5pbXBvcnQgeyBOc0NvbnRlbnQgfSBmcm9tICcuL3dpZGdldC1jb250ZW50Lm1vZGVsJ1xyXG5pbXBvcnQgeyBSb3V0ZXIsIE5hdmlnYXRpb25TdGFydCB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcidcclxuaW1wb3J0IHsgTlBTR3JpZFNlcnZpY2UgfSBmcm9tICcuL25wcy1ncmlkLnNlcnZpY2UnXHJcblxyXG5kZWNsYXJlIHZhciAkdDogYW55XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGVsZW1ldHJ5U2VydmljZSB7XHJcbiAgcHJldmlvdXNVcmw6IHN0cmluZyB8IG51bGwgPSBudWxsXHJcbiAgdGVsZW1ldHJ5Q29uZmlnOiBOc0luc3RhbmNlQ29uZmlnLklUZWxlbWV0cnlDb25maWcgfCBudWxsID0gbnVsbFxyXG4gIHBEYXRhOiBhbnkgPSBudWxsXHJcbiAgY29udGV4dENkYXRhID0gW11cclxuICBpc0Fub255bW91c1RlbGVtZXRyeSA9IHRydWVcclxuICB0ZWxBcnJheTogYW55ID0gW11cclxuICBleHRlcm5hbEFwcHM6IGFueSA9IHtcclxuICAgIFJCQ1A6ICdyYmNwLXdlYi11aScsXHJcbiAgfVxyXG4gIGVudmlyb25tZW50OiBhbnlcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgY29uZmlnU3ZjOiBDb25maWd1cmF0aW9uc1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGV2ZW50c1N2YzogRXZlbnRTZXJ2aWNlLFxyXG4gICAgQEluamVjdCgnZW52aXJvbm1lbnQnKSBlbnZpcm9ubWVudDogYW55LFxyXG4gICAgLy8gcHJpdmF0ZSBhdXRoU3ZjOiBBdXRoS2V5Y2xvYWtTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBsb2dnZXI6IExvZ2dlclNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSBucHNTdmM6IE5QU0dyaWRTZXJ2aWNlLFxyXG4gICkge1xyXG4gICAgdGhpcy5lbnZpcm9ubWVudCA9IGVudmlyb25tZW50XHJcbiAgICBjb25zdCBpbnN0YW5jZUNvbmZpZyA9IHRoaXMuY29uZmlnU3ZjLmluc3RhbmNlQ29uZmlnXHJcbiAgICB0aGlzLm5hdmlnYXRpb25TdGFydCgpXHJcbiAgICB0aGlzLmluaXRpYWxpemVDb25maWcoaW5zdGFuY2VDb25maWcpXHJcbiAgICB0aGlzLmFkZFBsYXllckxpc3RlbmVyKClcclxuICAgIHRoaXMuYWRkQ3VzdG9tRXZlbnRMaXN0ZW5lcigpXHJcbiAgICB0aGlzLmFkZEludGVyYWN0TGlzdGVuZXIoKVxyXG4gICAgdGhpcy5hZGRGZWVkYmFja0xpc3RlbmVyKClcclxuICAgIHRoaXMuYWRkVGltZVNwZW50TGlzdGVuZXIoKVxyXG4gICAgdGhpcy5hZGRTZWFyY2hMaXN0ZW5lcigpXHJcbiAgICB0aGlzLmFkZEhlYXJiZWF0TGlzdGVuZXIoKVxyXG4gICAgdGhpcy5hZGRDdXN0b21JbXByZXNzaW9uTGlzdGVuZXIoKVxyXG4gICAgdGhpcy5hZGRDdXN0b21MaXN0ZW5lcigpXHJcbiAgICB0aGlzLmFkZEN1c3RvbUxpc3RlbmVyRm9yR2V0U3RhcnQoKVxyXG4gICAgdGhpcy5hZGRDdXN0b21MaXN0ZW5lckZvclBsYXRmb3JtUmF0aW5nKClcclxuICB9XHJcblxyXG4gIHByaXZhdGUgbmF2aWdhdGlvblN0YXJ0KCkge1xyXG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZSgoZXZlbnQ6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpIHtcclxuICAgICAgICBpZiAoZXZlbnQudXJsLmluY2x1ZGVzKCcvcHVibGljLycpIHx8IGV2ZW50LnVybC5pbmNsdWRlcygnJnByZXZpZXc9dHJ1ZScpIHx8IGV2ZW50LnVybC5pbmNsdWRlcygnL2NlcnRzJykpIHtcclxuICAgICAgICAgIHRoaXMuaXNBbm9ueW1vdXNUZWxlbWV0cnkgPSB0cnVlXHJcbiAgICAgICAgICB0aGlzLnVwZGF0ZVRlbGVtZXRyeUNvbmZpZygpXHJcbiAgICAgICAgICBjb25zdCBpbnN0YW5jZUNvbmZpZyA9IHRoaXMuY29uZmlnU3ZjLmluc3RhbmNlQ29uZmlnXHJcbiAgICAgICAgICB0aGlzLmluaXRpYWxpemVDb25maWcoaW5zdGFuY2VDb25maWcpXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgZ2V0IGlzQW5vbnltb3VzVGVsZW1ldHJ5UmVxdWlyZWQoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5pc0Fub255bW91c1RlbGVtZXRyeVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVUZWxlbWV0cnlDb25maWcoKSB7XHJcbiAgICBpZiAodGhpcy5jb25maWdTdmMuaW5zdGFuY2VDb25maWcgJiYgdGhpcy5jb25maWdTdmMuaW5zdGFuY2VDb25maWcudGVsZW1ldHJ5Q29uZmlnKSB7XHJcbiAgICAgIGlmICh0aGlzLmlzQW5vbnltb3VzVGVsZW1ldHJ5UmVxdWlyZWQpIHtcclxuICAgICAgICB0aGlzLmNvbmZpZ1N2Yy5pbnN0YW5jZUNvbmZpZy50ZWxlbWV0cnlDb25maWcuZW5kcG9pbnQgPSB0aGlzLmNvbmZpZ1N2Yy5pbnN0YW5jZUNvbmZpZy50ZWxlbWV0cnlDb25maWcucHVibGljRW5kcG9pbnRcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmNvbmZpZ1N2Yy5pbnN0YW5jZUNvbmZpZy50ZWxlbWV0cnlDb25maWcuZW5kcG9pbnQgPSB0aGlzLmNvbmZpZ1N2Yy5pbnN0YW5jZUNvbmZpZy50ZWxlbWV0cnlDb25maWcucHJvdGVjdGVkRW5kcG9pbnRcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBpbml0aWFsaXplQ29uZmlnKGluc3RhbmNlQ29uZmlnOiBOc0luc3RhbmNlQ29uZmlnLklDb25maWcgfCBudWxsKSB7XHJcbiAgICBpZiAoaW5zdGFuY2VDb25maWcpIHtcclxuICAgICAgdGhpcy50ZWxlbWV0cnlDb25maWcgPSBpbnN0YW5jZUNvbmZpZy50ZWxlbWV0cnlDb25maWdcclxuICAgICAgdGhpcy50ZWxlbWV0cnlDb25maWcgPSB7XHJcbiAgICAgICAgLi4udGhpcy50ZWxlbWV0cnlDb25maWcsXHJcbiAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgIC4uLnRoaXMudGVsZW1ldHJ5Q29uZmlnLnBkYXRhLFxyXG4gICAgICAgICAgLy8gcGlkOiBuYXZpZ2F0b3IudXNlckFnZW50LFxyXG4gICAgICAgICAgaWQ6IGAke3RoaXMuZW52aXJvbm1lbnQubmFtZX0uJHt0aGlzLnRlbGVtZXRyeUNvbmZpZy5wZGF0YS5pZH1gLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgdWlkOiAodGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUgJiYgdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUudXNlcklkKSA/XHJcbiAgICAgICAgICAgICAgdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUudXNlcklkIDogJycsXHJcbiAgICAgICAgLy8gYXV0aHRva2VuOiB0aGlzLmF1dGhTdmMudG9rZW4sXHJcbiAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1ub24tbnVsbC1hc3NlcnRpb25cclxuICAgICAgICBjaGFubmVsOiB0aGlzLnJvb3RPcmdJZCB8fCB0aGlzLnRlbGVtZXRyeUNvbmZpZy5jaGFubmVsLFxyXG4gICAgICAgIHNpZDogdGhpcy5nZXRUZWxlbWV0cnlTZXNzaW9uSWQsXHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5wRGF0YSA9IHRoaXMudGVsZW1ldHJ5Q29uZmlnLnBkYXRhXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0VGVsZW1ldHJ5U2Vzc2lvbklkKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3RlbGVtZXRyeVNlc3Npb25JZCcpIHx8ICcnXHJcbiAgfVxyXG5cclxuICBnZXQgcm9vdE9yZ0lkKCk6IHN0cmluZyB7XHJcbiAgICBpZiAodGhpcy5jb25maWdTdmMgJiYgdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUgJiYgdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUucm9vdE9yZ0lkKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLmNvbmZpZ1N2Yy51c2VyUHJvZmlsZS5yb290T3JnSWRcclxuICAgIH1cclxuICAgIHJldHVybiAnJ1xyXG4gIH1cclxuXHJcbiAgdHJpZ2dlck5QU1VwZGF0ZShkYXRhOiBhbnkpIHtcclxuICAgIHRoaXMudGVsQXJyYXkucHVzaChkYXRhKVxyXG4gICAgaWYgKHRoaXMudGVsQXJyYXkgJiYgdGhpcy50ZWxBcnJheS5sZW5ndGggPT09IDQpIHtcclxuICAgICAgaWYgKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdyYXRpbmdmb3JtSUQnKSkge1xyXG4gICAgICAgIHRoaXMudGVsQXJyYXkgPSBbXVxyXG4gICAgICAgIHRoaXMubnBzU3ZjLnVwZGF0ZVRlbGVtZXRyeURhdGEodHJ1ZSlcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhcnQoZWRhdGE6IGFueSwgZGF0YTogYW55LCBwYWdlQ29udGV4dD86IFdzRXZlbnRzLklUZWxlbWV0cnlQYWdlQ29udGV4dCkge1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKHRoaXMudGVsZW1ldHJ5Q29uZmlnKSB7XHJcbiAgICAgICAgJHQuc3RhcnQoXHJcbiAgICAgICAgICB0aGlzLnRlbGVtZXRyeUNvbmZpZyxcclxuICAgICAgICAgIChwYWdlQ29udGV4dCAmJiBwYWdlQ29udGV4dC5wYWdlSWQpID9cclxuICAgICAgICAgICAgcGFnZUNvbnRleHQucGFnZUlkXHJcbiAgICAgICAgICAgIDogJycsXHJcbiAgICAgICAgICAnMS4wJyxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgLy8gaWQsXHJcbiAgICAgICAgICAgIHR5cGU6IGVkYXRhLnR5cGUsXHJcbiAgICAgICAgICAgIG1vZGU6IGVkYXRhLm1vZGUsXHJcbiAgICAgICAgICAgIHBhZ2VpZDogKHBhZ2VDb250ZXh0ICYmIHBhZ2VDb250ZXh0LnBhZ2VJZCkgP1xyXG4gICAgICAgICAgICAgIHBhZ2VDb250ZXh0LnBhZ2VJZFxyXG4gICAgICAgICAgICAgIDogJycsXHJcbiAgICAgICAgICAgIGR1cmF0aW9uOiAxLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgIHBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAuLi50aGlzLnBEYXRhLFxyXG4gICAgICAgICAgICAgICAgaWQ6IHRoaXMucERhdGEuaWQsXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAuLi4ocGFnZUNvbnRleHQgJiYgcGFnZUNvbnRleHQubW9kdWxlID8geyBlbnY6IHBhZ2VDb250ZXh0Lm1vZHVsZSB9IDogbnVsbCksXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIG9iamVjdDoge1xyXG4gICAgICAgICAgICAgIC4uLihkYXRhKSAmJiBkYXRhLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAuLi4odGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUgJiYgdGhpcy5jb25maWdTdmMudXNlclByb2ZpbGUudXNlcklkID9cclxuICAgICAgICAgICAgICAgbnVsbCA6IHsgYWN0b3I6IHsgaWQ6ICdub24tbG9nZ2VkaW4nLCB0eXBlOiAnQW5vbnltb3VzIFVzZXInIH0gfSksXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKCdFcnJvciBJbml0aWFsaXppbmcgVGVsZW1ldHJ5LiBDb25maWcgbWlzc2luZy4nKVxyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tY29uc29sZVxyXG4gICAgICBjb25zb2xlLmxvZygnRXJyb3IgaW4gdGVsZW1ldHJ5IHN0YXJ0JywgZSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGVuZChlZGF0YTogYW55LCBkYXRhOiBhbnksIHBhZ2VDb250ZXh0PzogV3NFdmVudHMuSVRlbGVtZXRyeVBhZ2VDb250ZXh0KSB7XHJcbiAgICB0cnkge1xyXG4gICAgICAkdC5lbmQoXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgdHlwZTogZWRhdGEudHlwZSxcclxuICAgICAgICAgIG1vZGU6IGVkYXRhLm1vZGUsXHJcbiAgICAgICAgICBwYWdlaWQ6IChwYWdlQ29udGV4dCAmJiBwYWdlQ29udGV4dC5wYWdlSWQpID9cclxuICAgICAgICAgICAgcGFnZUNvbnRleHQucGFnZUlkXHJcbiAgICAgICAgICAgIDogJycsXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgIHBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICBpZDogdGhpcy5wRGF0YS5pZCxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgLi4uKHBhZ2VDb250ZXh0ICYmIHBhZ2VDb250ZXh0Lm1vZHVsZSA/IHsgZW52OiBwYWdlQ29udGV4dC5tb2R1bGUgfSA6IG51bGwpLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIG9iamVjdDoge1xyXG4gICAgICAgICAgICAuLi4oZGF0YSkgJiYgZGF0YSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgKVxyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWNvbnNvbGVcclxuICAgICAgY29uc29sZS5sb2coJ0Vycm9yIGluIHRlbGVtZXRyeSBlbmQnLCBlKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYXVkaXQodHlwZTogc3RyaW5nLCBwcm9wczogc3RyaW5nLCBkYXRhOiBhbnkpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgICR0LmF1ZGl0KFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIHR5cGUsXHJcbiAgICAgICAgICBwcm9wcyxcclxuICAgICAgICAgIC8vIGRhdGEsXHJcbiAgICAgICAgICBzdGF0ZTogZGF0YSwgLy8gT3B0aW9uYWwuIEN1cnJlbnQgU3RhdGVcclxuICAgICAgICAgIHByZXZzdGF0ZTogJycsIC8vIE9wdGlvbmFsLiBQcmV2aW91cyBTdGF0ZVxyXG4gICAgICAgICAgZHVyYXRpb246ICcnLCAvLyBPcHRpb25hbC5cclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAuLi50aGlzLnBEYXRhLFxyXG4gICAgICAgICAgICAgIGlkOiB0aGlzLnBEYXRhLmlkLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICApXHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tY29uc29sZVxyXG4gICAgICBjb25zb2xlLmxvZygnRXJyb3IgaW4gdGVsZW1ldHJ5IGF1ZGl0JywgZSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGhlYXJ0YmVhdCh0eXBlOiBzdHJpbmcsIGlkOiBzdHJpbmcpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgICR0LmhlYXJ0YmVhdCh7XHJcbiAgICAgICAgaWQsXHJcbiAgICAgICAgLy8gbW9kZSxcclxuICAgICAgICB0eXBlLFxyXG4gICAgICB9KVxyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWNvbnNvbGVcclxuICAgICAgY29uc29sZS5sb2coJ0Vycm9yIGluIHRlbGVtZXRyeSBoZWFydGJlYXQnLCBlKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgaW1wcmVzc2lvbihkYXRhPzogYW55LCBvYmplY3RUeXBlPzogYW55KSB7XHJcbiAgICB0aGlzLnRyaWdnZXJOUFNVcGRhdGUoZGF0YSlcclxuICAgIHRyeSB7XHJcbiAgICAgIGNvbnN0IHBhZ2UgPSB0aGlzLmdldFBhZ2VEZXRhaWxzKClcclxuICAgICAgaWYgKGRhdGEgJiYgZGF0YS5wYWdlQ29udGV4dCkge1xyXG4gICAgICAgIHBhZ2UucGFnZWlkID0gZGF0YS5wYWdlQ29udGV4dC5wYWdlSWRcclxuICAgICAgICBwYWdlLm1vZHVsZSA9IGRhdGEucGFnZUNvbnRleHQubW9kdWxlXHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgZWRhdGEgPSB7XHJcbiAgICAgICAgcGFnZWlkOiBwYWdlLnBhZ2VpZCwgLy8gUmVxdWlyZWQuIFVuaXF1ZSBwYWdlIGlkXHJcbiAgICAgICAgdHlwZTogcGFnZS5wYWdlVXJsUGFydHNbMF0sIC8vIFJlcXVpcmVkLiBJbXByZXNzaW9uIHR5cGUgKGxpc3QsIGRldGFpbCwgdmlldywgZWRpdCwgd29ya2Zsb3csIHNlYXJjaClcclxuICAgICAgICB1cmk6IHBhZ2UucGFnZVVybCxcclxuICAgICAgfVxyXG4gICAgICBpZiAocGFnZS5vYmplY3RJZCkge1xyXG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHtcclxuICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAuLi50aGlzLnBEYXRhLFxyXG4gICAgICAgICAgICAgIGlkOiB0aGlzLnBEYXRhLmlkLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBlbnY6IHBhZ2UubW9kdWxlIHx8ICh0aGlzLnRlbGVtZXRyeUNvbmZpZyAmJiB0aGlzLnRlbGVtZXRyeUNvbmZpZy5lbnYpLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIG9iamVjdDoge1xyXG4gICAgICAgICAgICBpZDogcGFnZS5vYmplY3RJZCxcclxuICAgICAgICAgICAgdHlwZTogb2JqZWN0VHlwZSxcclxuICAgICAgICAgICAgLy8gVGhpcyB3aWxsIG92ZXJyaWRlIGFib3ZlIGlkIGlmIHRoZSBkYXRhIGhhcyBvYmplY3QgaW4gaXQuXHJcbiAgICAgICAgICAgIC4uLihkYXRhICYmIGRhdGEub2JqZWN0KSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICghcGFnZS5vYmplY3RJZCB8fCAhb2JqZWN0VHlwZSkge1xyXG4gICAgICAgICAgY29uZmlnLm9iamVjdCA9IHt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgICR0LmltcHJlc3Npb24oZWRhdGEsIGNvbmZpZylcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICAkdC5pbXByZXNzaW9uKGVkYXRhLCB7XHJcbiAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgIHBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICBpZDogdGhpcy5wRGF0YSAmJiB0aGlzLnBEYXRhLmlkLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBlbnY6IHBhZ2UubW9kdWxlIHx8ICcnLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIG9iamVjdDoge1xyXG4gICAgICAgICAgICAuLi4oZGF0YSAmJiBkYXRhLm9iamVjdCksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5wcmV2aW91c1VybCA9IHBhZ2UucGFnZVVybFxyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWNvbnNvbGVcclxuICAgICAgY29uc29sZS5sb2coJ0Vycm9yIGluIHRlbGVtZXRyeSBpbXByZXNzaW9uJywgZSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGV4dGVybmFsSW1wcmVzc2lvbihpbXByZXNzaW9uRGF0YTogYW55KSB7XHJcbiAgICAvLyB0aGlzLnRyaWdnZXJOUFNVcGRhdGUoaW1wcmVzc2lvbkRhdGEpXHJcbiAgICB0cnkge1xyXG4gICAgICBjb25zdCBwYWdlID0gdGhpcy5nZXRQYWdlRGV0YWlscygpXHJcbiAgICAgIGlmICh0aGlzLmV4dGVybmFsQXBwc1tpbXByZXNzaW9uRGF0YS5zdWJBcHBsaWNhdGlvbk5hbWVdKSB7XHJcbiAgICAgICAgY29uc3QgZXh0ZXJuYWxDb25maWcgPSBwYWdlLm9iamVjdElkID8ge1xyXG4gICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICBwZGF0YToge1xyXG4gICAgICAgICAgICAgIC4uLnRoaXMucERhdGEsXHJcbiAgICAgICAgICAgICAgaWQ6IHRoaXMuZXh0ZXJuYWxBcHBzW2ltcHJlc3Npb25EYXRhLnN1YkFwcGxpY2F0aW9uTmFtZV0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgb2JqZWN0OiB7XHJcbiAgICAgICAgICAgIGlkOiBwYWdlLm9iamVjdElkLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9IDoge1xyXG4gICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICBwZGF0YToge1xyXG4gICAgICAgICAgICAgIC4uLnRoaXMucERhdGEsXHJcbiAgICAgICAgICAgICAgaWQ6IHRoaXMuZXh0ZXJuYWxBcHBzW2ltcHJlc3Npb25EYXRhLnN1YkFwcGxpY2F0aW9uTmFtZV0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH1cclxuICAgICAgICAkdC5pbXByZXNzaW9uKGltcHJlc3Npb25EYXRhLmRhdGEsIGV4dGVybmFsQ29uZmlnKVxyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTogbm8tY29uc29sZVxyXG4gICAgICBjb25zb2xlLmxvZygnRXJyb3IgaW4gdGVsZW1ldHJ5IGV4dGVybmFsSW1wcmVzc2lvbicsIGUpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBmb3IgUGxhcnRmb3JtIHJhdGluZ1xyXG4gIGFkZEN1c3RvbUxpc3RlbmVyRm9yUGxhdGZvcm1SYXRpbmcoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5nZXRQUkV2ZW50cyRcclxuICAgICAgLnBpcGUoXHJcbiAgICAgICAgZmlsdGVyKFxyXG4gICAgICAgICAgZXZlbnQgPT5cclxuICAgICAgICAgICAgZXZlbnQgJiZcclxuICAgICAgICAgICAgZXZlbnQuZXZlbnRUeXBlID09PSBXc0V2ZW50cy5Xc0V2ZW50VHlwZS5UZWxlbWV0cnkgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YS5ldmVudFN1YlR5cGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlBsYXRmb3JtUmF0aW5nICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEubW9kZSAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhLFxyXG4gICAgICAgICksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLkxvYWRlZCkge1xyXG4gICAgICAgICAgdGhpcy5zdGFydChcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICAgIG1vZGU6IGV2ZW50LmRhdGEubW9kZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudE1vZGUuUGxheSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge30sXHJcbiAgICAgICAgICAgIGV2ZW50LnBhZ2VDb250ZXh0XHJcbiAgICAgICAgICApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlVubG9hZGVkXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICB0aGlzLmVuZCh7XHJcbiAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgZXZlbnQuZGF0YS5vYmplY3QsXHJcbiAgICAgICAgICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBldmVudC5kYXRhLnN0YXRlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5JbnRlcmFjdFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgJHQuaW50ZXJhY3QoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLmVkYXRhLnR5cGUsXHJcbiAgICAgICAgICAgICAgc3VidHlwZTogZXZlbnQuZGF0YS5lZGF0YS5zdWJUeXBlLFxyXG4gICAgICAgICAgICAgIGlkOiAoZXZlbnQuZGF0YS5lZGF0YSAmJiBldmVudC5kYXRhLmVkYXRhLmlkKSA/XHJcbiAgICAgICAgICAgICAgICBldmVudC5kYXRhLmVkYXRhLmlkXHJcbiAgICAgICAgICAgICAgICA6ICcnLFxyXG4gICAgICAgICAgICAgIHBhZ2VpZDogZXZlbnQucGFnZUNvbnRleHQgJiYgZXZlbnQucGFnZUNvbnRleHQucGFnZUlkIHx8ICcnLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICAgICAgaWQ6IHRoaXMucERhdGEuaWQsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgLi4uKGV2ZW50LnBhZ2VDb250ZXh0ICYmIGV2ZW50LnBhZ2VDb250ZXh0Lm1vZHVsZSA/IHsgZW52OiBldmVudC5wYWdlQ29udGV4dC5tb2R1bGUgfSA6IG51bGwpLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgb2JqZWN0OiB7XHJcbiAgICAgICAgICAgICAgICAuLi5ldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0pXHJcbiAgfVxyXG5cclxuICBhZGRDdXN0b21MaXN0ZW5lckZvckdldFN0YXJ0KCkge1xyXG4gICAgdGhpcy5ldmVudHNTdmMuZ2V0U3RhcnRFdmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIGV2ZW50ID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEuZXZlbnRTdWJUeXBlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5HZXRTdGFydGVkICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEubW9kZSAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhLFxyXG4gICAgICAgICksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLkxvYWRlZCkge1xyXG4gICAgICAgICAgdGhpcy5zdGFydChcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICAgIG1vZGU6IGV2ZW50LmRhdGEubW9kZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudE1vZGUuUGxheSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge30sXHJcbiAgICAgICAgICAgIGV2ZW50LnBhZ2VDb250ZXh0XHJcbiAgICAgICAgICApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlVubG9hZGVkXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICB0aGlzLmVuZCh7XHJcbiAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgZXZlbnQuZGF0YS5vYmplY3QsXHJcbiAgICAgICAgICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBldmVudC5kYXRhLnN0YXRlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5JbnRlcmFjdFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgJHQuaW50ZXJhY3QoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLmVkYXRhLnR5cGUsXHJcbiAgICAgICAgICAgICAgc3VidHlwZTogZXZlbnQuZGF0YS5lZGF0YS5zdWJUeXBlLFxyXG4gICAgICAgICAgICAgIGlkOiAoZXZlbnQuZGF0YS5lZGF0YSAmJiBldmVudC5kYXRhLmVkYXRhLmlkKSA/XHJcbiAgICAgICAgICAgICAgICBldmVudC5kYXRhLmVkYXRhLmlkXHJcbiAgICAgICAgICAgICAgICA6ICcnLFxyXG4gICAgICAgICAgICAgIHBhZ2VpZDogZXZlbnQucGFnZUNvbnRleHQgJiYgZXZlbnQucGFnZUNvbnRleHQucGFnZUlkIHx8ICcnLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICAgICAgaWQ6IHRoaXMucERhdGEuaWQsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgLi4uKGV2ZW50LnBhZ2VDb250ZXh0ICYmIGV2ZW50LnBhZ2VDb250ZXh0Lm1vZHVsZSA/IHsgZW52OiBldmVudC5wYWdlQ29udGV4dC5tb2R1bGUgfSA6IG51bGwpLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgb2JqZWN0OiB7XHJcbiAgICAgICAgICAgICAgICAuLi5ldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0pXHJcbiAgfVxyXG5cclxuICBhZGRDdXN0b21MaXN0ZW5lcigpIHtcclxuICAgIHRoaXMuZXZlbnRzU3ZjLmNoYXRib3RFdmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIGV2ZW50ID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEuZXZlbnRTdWJUeXBlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5DaGF0Ym90ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEubW9kZSAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhLFxyXG4gICAgICAgICksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgaWYgKGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLkxvYWRlZCkge1xyXG4gICAgICAgICAgdGhpcy5zdGFydChcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICAgIG1vZGU6IGV2ZW50LmRhdGEubW9kZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudE1vZGUuUGxheSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge30sXHJcbiAgICAgICAgICAgIGV2ZW50LnBhZ2VDb250ZXh0XHJcbiAgICAgICAgICApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlVubG9hZGVkXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICB0aGlzLmVuZCh7XHJcbiAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAge30sXHJcbiAgICAgICAgICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBldmVudC5kYXRhLnN0YXRlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5JbnRlcmFjdFxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgJHQuaW50ZXJhY3QoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLmVkYXRhLnR5cGUsXHJcbiAgICAgICAgICAgICAgc3VidHlwZTogZXZlbnQuZGF0YS5lZGF0YS5zdWJUeXBlLFxyXG4gICAgICAgICAgICAgIGlkOiAoZXZlbnQuZGF0YS5lZGF0YSAmJiBldmVudC5kYXRhLmVkYXRhLmlkKSA/XHJcbiAgICAgICAgICAgICAgICBldmVudC5kYXRhLmVkYXRhLmlkXHJcbiAgICAgICAgICAgICAgICA6ICcnLFxyXG4gICAgICAgICAgICAgIHBhZ2VpZDogZXZlbnQucGFnZUNvbnRleHQgJiYgZXZlbnQucGFnZUNvbnRleHQucGFnZUlkIHx8ICcnLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICAgICAgaWQ6IHRoaXMucERhdGEuaWQsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgLi4uKGV2ZW50LnBhZ2VDb250ZXh0ICYmIGV2ZW50LnBhZ2VDb250ZXh0Lm1vZHVsZSA/IHsgZW52OiBldmVudC5wYWdlQ29udGV4dC5tb2R1bGUgfSA6IG51bGwpLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgb2JqZWN0OiB7XHJcbiAgICAgICAgICAgICAgICAuLi5ldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgIH0pXHJcbiAgfVxyXG5cclxuICBhZGRDdXN0b21JbXByZXNzaW9uTGlzdGVuZXIoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5ldmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIChldmVudDogV3NFdmVudHMuV3NFdmVudFRlbGVtZXRyeUltcHJlc3Npb24pID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEgJiZcclxuICAgICAgICAgICAgZXZlbnQuZXZlbnRUeXBlID09PSBXc0V2ZW50cy5Xc0V2ZW50VHlwZS5UZWxlbWV0cnkgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YS5ldmVudFN1YlR5cGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLkltcHJlc3Npb24sXHJcbiAgICAgICAgKSxcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgLy8gY29uc29sZS5sb2coJ2V2ZW50LmRhdGE6OicsIGV2ZW50LmRhdGEpXHJcbiAgICAgICAgICB0aGlzLmltcHJlc3Npb24oZXZlbnQuZGF0YSlcclxuICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWNvbnNvbGVcclxuICAgICAgICAgIGNvbnNvbGUubG9nKCdFcnJvciBpbiB0ZWxlbWV0cnkgaW1wcmVzc2lvbicsIGUpXHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gIH1cclxuXHJcbiAgYWRkVGltZVNwZW50TGlzdGVuZXIoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5ldmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIGV2ZW50ID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEudHlwZSA9PT0gV3NFdmVudHMuV3NUaW1lU3BlbnRUeXBlLlBhZ2UgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YS5tb2RlICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEsXHJcbiAgICAgICAgKSxcclxuICAgICAgKVxyXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcclxuICAgICAgICBpZiAoZXZlbnQuZGF0YS5zdGF0ZSA9PT0gV3NFdmVudHMuRW51bVRlbGVtZXRyeVN1YlR5cGUuTG9hZGVkKSB7XHJcbiAgICAgICAgICB0aGlzLnN0YXJ0KFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgdHlwZTogZXZlbnQuZGF0YS50eXBlIHx8IFdzRXZlbnRzLldzVGltZVNwZW50VHlwZS5QbGF5ZXIsXHJcbiAgICAgICAgICAgICAgbW9kZTogZXZlbnQuZGF0YS5tb2RlIHx8IFdzRXZlbnRzLldzVGltZVNwZW50TW9kZS5QbGF5LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7fSxcclxuICAgICAgICAgICAgZXZlbnQucGFnZUNvbnRleHRcclxuICAgICAgICAgIClcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlVubG9hZGVkKSB7XHJcbiAgICAgICAgICB0aGlzLmVuZCh7XHJcbiAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSB8fCBXc0V2ZW50cy5Xc1RpbWVTcGVudFR5cGUuUGxheWVyLFxyXG4gICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAge30sXHJcbiAgICAgICAgICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICB9XHJcblxyXG4gIGFkZEN1c3RvbUV2ZW50TGlzdGVuZXIoKSB7XHJcblxyXG4gICAgdGhpcy5ldmVudHNTdmMuZXZlbnRzJFxyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICBldmVudCA9PlxyXG4gICAgICAgICAgICBldmVudCAmJlxyXG4gICAgICAgICAgICBldmVudC5ldmVudFR5cGUgPT09IFdzRXZlbnRzLldzRXZlbnRUeXBlLlRlbGVtZXRyeVxyXG4gICAgICAgICksXHJcbiAgICAgIClcclxuICAgICAgLnN1YnNjcmliZShldmVudCA9PiB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgZXZlbnQuZGF0YS5zdGF0ZSA9PT0gV3NFdmVudHMuRW51bVRlbGVtZXRyeVN1YlR5cGUuTG9hZGVkICYmXHJcbiAgICAgICAgICBldmVudC5kYXRhLnR5cGUgIT09IFdzRXZlbnRzLldzVGltZVNwZW50VHlwZS5QbGF5ZXJcclxuICAgICAgICApIHtcclxuICAgICAgICAgIHRoaXMuc3RhcnQoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLnR5cGUsXHJcbiAgICAgICAgICAgICAgbW9kZTogZXZlbnQuZGF0YS5tb2RlIHx8IFdzRXZlbnRzLldzVGltZVNwZW50TW9kZS5QbGF5LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgZXZlbnQucGFnZUNvbnRleHRcclxuICAgICAgICAgIClcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgZXZlbnQuZGF0YS5zdGF0ZSA9PT0gV3NFdmVudHMuRW51bVRlbGVtZXRyeVN1YlR5cGUuVW5sb2FkZWQgJiZcclxuICAgICAgICAgIGV2ZW50LmRhdGEudHlwZSAhPT0gV3NFdmVudHMuV3NUaW1lU3BlbnRUeXBlLlBsYXllclxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5lbmQoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLnR5cGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRUeXBlLlBsYXllcixcclxuICAgICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEub2JqZWN0LFxyXG4gICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICB9XHJcbiAgYWRkUGxheWVyTGlzdGVuZXIoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5ldmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIGV2ZW50ID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEudHlwZSA9PT0gV3NFdmVudHMuV3NUaW1lU3BlbnRUeXBlLlBsYXllciAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhLm1vZGUgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YSxcclxuICAgICAgICApLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xyXG4gICAgICAgIGNvbnN0IGNvbnRlbnQ6IE5zQ29udGVudC5JQ29udGVudCB8IG51bGwgPSBldmVudC5kYXRhLmNvbnRlbnRcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBldmVudC5kYXRhLnN0YXRlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5Mb2FkZWQgJiZcclxuICAgICAgICAgICghY29udGVudCB8fFxyXG4gICAgICAgICAgICAoY29udGVudC5pc0lmcmFtZVN1cHBvcnRlZCB8fCAnJykudG9Mb3dlckNhc2UoKSA9PT0gJ21heWJlJyB8fFxyXG4gICAgICAgICAgICAoY29udGVudC5pc0lmcmFtZVN1cHBvcnRlZCB8fCAnJykudG9Mb3dlckNhc2UoKSA9PT0gJ3llcycgfHxcclxuICAgICAgICAgICAgKGNvbnRlbnQubWltZVR5cGUgPT09ICdhcHBsaWNhdGlvbi9wZGYnIHx8ICdhcHBsaWNhdGlvbi9qc29uJykpXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICB0aGlzLnN0YXJ0KFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgdHlwZTogZXZlbnQuZGF0YS50eXBlIHx8IFdzRXZlbnRzLldzVGltZVNwZW50VHlwZS5QbGF5ZXIsXHJcbiAgICAgICAgICAgICAgbW9kZTogZXZlbnQuZGF0YS5tb2RlIHx8IFdzRXZlbnRzLldzVGltZVNwZW50TW9kZS5QbGF5LFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgZXZlbnQucGFnZUNvbnRleHRcclxuXHJcbiAgICAgICAgICApXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChcclxuICAgICAgICAgIGV2ZW50LmRhdGEuc3RhdGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlVubG9hZGVkICYmXHJcbiAgICAgICAgICAoIWNvbnRlbnQgfHxcclxuICAgICAgICAgICAgKGNvbnRlbnQuaXNJZnJhbWVTdXBwb3J0ZWQgfHwgJycpLnRvTG93ZXJDYXNlKCkgPT09ICdtYXliZScgfHxcclxuICAgICAgICAgICAgKGNvbnRlbnQuaXNJZnJhbWVTdXBwb3J0ZWQgfHwgJycpLnRvTG93ZXJDYXNlKCkgPT09ICd5ZXMnIHx8XHJcbiAgICAgICAgICAgIChjb250ZW50Lm1pbWVUeXBlID09PSAnYXBwbGljYXRpb24vcGRmJyB8fCAnYXBwbGljYXRpb24vanNvbicpKVxyXG4gICAgICAgICkge1xyXG4gICAgICAgICAgdGhpcy5lbmQoXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICB0eXBlOiBldmVudC5kYXRhLnR5cGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRUeXBlLlBsYXllcixcclxuICAgICAgICAgICAgICBtb2RlOiBldmVudC5kYXRhLm1vZGUgfHwgV3NFdmVudHMuV3NUaW1lU3BlbnRNb2RlLlBsYXksXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEub2JqZWN0LFxyXG4gICAgICAgICAgICBldmVudC5wYWdlQ29udGV4dFxyXG4gICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICB9XHJcblxyXG4gIGFkZEludGVyYWN0TGlzdGVuZXIoKSB7XHJcbiAgICBjb25zdCBkYXRhID0gdGhpcy5nZXRQYWdlRGV0YWlscygpXHJcbiAgICB0aGlzLnRyaWdnZXJOUFNVcGRhdGUoZGF0YS5wYWdlaWQpXHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5ldmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIChldmVudDogV3NFdmVudHMuV3NFdmVudFRlbGVtZXRyeUludGVyYWN0KSA9PlxyXG4gICAgICAgICAgICBldmVudCAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEuZXZlbnRTdWJUeXBlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5JbnRlcmFjdCxcclxuICAgICAgICApLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xyXG4gICAgICAgIGNvbnN0IHBhZ2UgPSB0aGlzLmdldFBhZ2VEZXRhaWxzKClcclxuICAgICAgICBpZiAodHlwZW9mIGV2ZW50LmZyb20gPT09ICdzdHJpbmcnICYmIHRoaXMuZXh0ZXJuYWxBcHBzW2V2ZW50LmZyb21dKSB7XHJcbiAgICAgICAgICBjb25zdCBleHRlcm5hbENvbmZpZyA9IHtcclxuICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgIHBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAuLi50aGlzLnBEYXRhLFxyXG4gICAgICAgICAgICAgICAgaWQ6IHRoaXMuZXh0ZXJuYWxBcHBzW2V2ZW50LmZyb21dLFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICAkdC5pbnRlcmFjdChldmVudC5kYXRhLCBleHRlcm5hbENvbmZpZylcclxuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1jb25zb2xlXHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdFcnJvciBpbiB0ZWxlbWV0cnkgaW50ZXJhY3QnLCBlKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAvLyBsZXQgaW50ZXJhY3RpZFxyXG4gICAgICAgICAgLy8gaWYgKGV2ZW50LmRhdGEuZWRhdGEudHlwZSA9PT0gJ2dvYWwnKSB7XHJcbiAgICAgICAgICAvLyAgIGludGVyYWN0aWQgPSBwYWdlLnBhZ2VVcmxQYXJ0c1s0XVxyXG4gICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgJHQuaW50ZXJhY3QoXHJcbiAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgdHlwZTogZXZlbnQuZGF0YS5lZGF0YS50eXBlLFxyXG4gICAgICAgICAgICAgICAgc3VidHlwZTogZXZlbnQuZGF0YS5lZGF0YS5zdWJUeXBlLFxyXG4gICAgICAgICAgICAgICAgLy8gb2JqZWN0OiBldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgICAgIGlkOiAoZXZlbnQuZGF0YS5lZGF0YSAmJiBldmVudC5kYXRhLmVkYXRhLmlkKSA/XHJcbiAgICAgICAgICAgICAgICAgIGV2ZW50LmRhdGEuZWRhdGEuaWRcclxuICAgICAgICAgICAgICAgICAgOiAnJyxcclxuICAgICAgICAgICAgICAgIHBhZ2VpZDogZXZlbnQuZGF0YS5wYWdlQ29udGV4dCAmJiBldmVudC5kYXRhLnBhZ2VDb250ZXh0LnBhZ2VJZCB8fCBwYWdlLnBhZ2VpZCxcclxuICAgICAgICAgICAgICAgIC8vIHRhcmdldDogeyBwYWdlIH0sXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICAgICAgIHBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICAgICAgICBpZDogdGhpcy5wRGF0YS5pZCxcclxuICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgICAgLi4uKGV2ZW50LnBhZ2VDb250ZXh0ICYmIGV2ZW50LnBhZ2VDb250ZXh0Lm1vZHVsZSA/IHsgZW52OiBldmVudC5wYWdlQ29udGV4dC5tb2R1bGUgfSA6IG51bGwpLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIG9iamVjdDoge1xyXG4gICAgICAgICAgICAgICAgICAuLi5ldmVudC5kYXRhLm9iamVjdCxcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1jb25zb2xlXHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdFcnJvciBpbiB0ZWxlbWV0cnkgaW50ZXJhY3QnLCBlKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICB9XHJcblxyXG4gIGFkZEZlZWRiYWNrTGlzdGVuZXIoKSB7XHJcbiAgICB0aGlzLmV2ZW50c1N2Yy5ldmVudHMkXHJcbiAgICAgIC5waXBlKFxyXG4gICAgICAgIGZpbHRlcihcclxuICAgICAgICAgIChldmVudDogV3NFdmVudHMuV3NFdmVudFRlbGVtZXRyeUZlZWRiYWNrKSA9PlxyXG4gICAgICAgICAgICBldmVudCAmJlxyXG4gICAgICAgICAgICBldmVudC5kYXRhICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmV2ZW50VHlwZSA9PT0gV3NFdmVudHMuV3NFdmVudFR5cGUuVGVsZW1ldHJ5ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEuZXZlbnRTdWJUeXBlID09PSBXc0V2ZW50cy5FbnVtVGVsZW1ldHJ5U3ViVHlwZS5GZWVkYmFjayxcclxuICAgICAgICApLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xyXG4gICAgICAgIGNvbnN0IHBhZ2UgPSB0aGlzLmdldFBhZ2VEZXRhaWxzKClcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgJHQuZmVlZGJhY2soXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICByYXRpbmc6IGV2ZW50LmRhdGEub2JqZWN0LnJhdGluZyB8fCAwLFxyXG4gICAgICAgICAgICAgIGNvbW1lbnRpZDogZXZlbnQuZGF0YS5vYmplY3QuY29tbWVudGlkIHx8ICcnLFxyXG4gICAgICAgICAgICAgIGNvbW1lbnR0eHQ6IGV2ZW50LmRhdGEub2JqZWN0LmNvbW1lbnR0eHQgfHwgJycsXHJcbiAgICAgICAgICAgICAgcGFnZWlkOiBwYWdlLnBhZ2VpZCxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgICAgIHBkYXRhOiB7XHJcbiAgICAgICAgICAgICAgICAgIC4uLnRoaXMucERhdGEsXHJcbiAgICAgICAgICAgICAgICAgIGlkOiB0aGlzLnBEYXRhLmlkLFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIG9iamVjdDoge1xyXG4gICAgICAgICAgICAgICAgaWQ6IGV2ZW50LmRhdGEub2JqZWN0LmNvbnRlbnRJZCB8fCBldmVudC5kYXRhLm9iamVjdC5pZCB8fCAnJyxcclxuICAgICAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEuZWRhdGEudHlwZSB8fCAnJyxcclxuICAgICAgICAgICAgICAgIHZlcjogYCR7KGV2ZW50LmRhdGEub2JqZWN0LnZlcnNpb24gfHwgJzEnKX0keycnfWAsXHJcbiAgICAgICAgICAgICAgICByb2xsdXA6IHt9LFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1jb25zb2xlXHJcbiAgICAgICAgICBjb25zb2xlLmxvZygnRXJyb3IgaW4gdGVsZW1ldHJ5IGludGVyYWN0JywgZSlcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgfVxyXG5cclxuICBhZGRIZWFyYmVhdExpc3RlbmVyKCkge1xyXG4gICAgdGhpcy5ldmVudHNTdmMuZXZlbnRzJFxyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICAoZXZlbnQ6IFdzRXZlbnRzLldzRXZlbnRUZWxlbWV0cnlIZWFydEJlYXQpID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEgJiZcclxuICAgICAgICAgICAgZXZlbnQuZXZlbnRUeXBlID09PSBXc0V2ZW50cy5Xc0V2ZW50VHlwZS5UZWxlbWV0cnkgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YS5ldmVudFN1YlR5cGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLkhlYXJ0QmVhdCxcclxuICAgICAgICApLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xyXG4gICAgICAgIGlmICh0eXBlb2YgZXZlbnQuZnJvbSA9PT0gJ3N0cmluZycgJiYgdGhpcy5leHRlcm5hbEFwcHNbZXZlbnQuZnJvbV0pIHtcclxuICAgICAgICAgIGNvbnN0IGV4dGVybmFsQ29uZmlnID0ge1xyXG4gICAgICAgICAgICBjb250ZXh0OiB7XHJcbiAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgIC4uLnRoaXMucERhdGEsXHJcbiAgICAgICAgICAgICAgICBpZDogdGhpcy5leHRlcm5hbEFwcHNbZXZlbnQuZnJvbV0sXHJcbiAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgICR0LmhlYXJ0YmVhdChldmVudC5kYXRhLCBleHRlcm5hbENvbmZpZylcclxuICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1jb25zb2xlXHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKCdFcnJvciBpbiB0ZWxlbWV0cnkgaGVhcnRiZWF0JywgZSlcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgJHQuaGVhcnRiZWF0KFxyXG4gICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6IGV2ZW50LmRhdGEudHlwZSxcclxuICAgICAgICAgICAgICAgIC8vIHN1YnR5cGU6IGV2ZW50LmRhdGEuZXZlbnRTdWJUeXBlLFxyXG4gICAgICAgICAgICAgICAgaWQ6IGV2ZW50LmRhdGEuaWQsXHJcbiAgICAgICAgICAgICAgICAvLyBtaW1lVHlwZTogZXZlbnQuZGF0YS5taW1lVHlwZSxcclxuICAgICAgICAgICAgICAgIC8vIG1vZGU6IGV2ZW50LmRhdGEubW9kZSxcclxuICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGNvbnRleHQ6IHtcclxuICAgICAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgICAuLi50aGlzLnBEYXRhLFxyXG4gICAgICAgICAgICAgICAgICAgIGlkOiB0aGlzLnBEYXRhLmlkLFxyXG4gICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLWNvbnNvbGVcclxuICAgICAgICAgICAgY29uc29sZS5sb2coJ0Vycm9yIGluIHRlbGVtZXRyeSBoZWFydGJlYXQnLCBlKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSlcclxuICB9XHJcblxyXG4gIGFkZFNlYXJjaExpc3RlbmVyKCkge1xyXG4gICAgdGhpcy5ldmVudHNTdmMuZXZlbnRzJFxyXG4gICAgICAucGlwZShcclxuICAgICAgICBmaWx0ZXIoXHJcbiAgICAgICAgICAoZXZlbnQ6IFdzRXZlbnRzLldzRXZlbnRUZWxlbWV0cnlTZWFyY2gpID0+XHJcbiAgICAgICAgICAgIGV2ZW50ICYmXHJcbiAgICAgICAgICAgIGV2ZW50LmRhdGEgJiZcclxuICAgICAgICAgICAgZXZlbnQuZXZlbnRUeXBlID09PSBXc0V2ZW50cy5Xc0V2ZW50VHlwZS5UZWxlbWV0cnkgJiZcclxuICAgICAgICAgICAgZXZlbnQuZGF0YS5ldmVudFN1YlR5cGUgPT09IFdzRXZlbnRzLkVudW1UZWxlbWV0cnlTdWJUeXBlLlNlYXJjaCxcclxuICAgICAgICApLFxyXG4gICAgICApXHJcbiAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAkdC5zZWFyY2goXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICBxdWVyeTogZXZlbnQuZGF0YS5xdWVyeSxcclxuICAgICAgICAgICAgICBmaWx0ZXJzOiBldmVudC5kYXRhLmZpbHRlcnMsXHJcbiAgICAgICAgICAgICAgc2l6ZTogZXZlbnQuZGF0YS5zaXplLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgY29udGV4dDoge1xyXG4gICAgICAgICAgICAgICAgcGRhdGE6IHtcclxuICAgICAgICAgICAgICAgICAgLi4udGhpcy5wRGF0YSxcclxuICAgICAgICAgICAgICAgICAgaWQ6IHRoaXMucERhdGEuaWQsXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICApXHJcbiAgICAgICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgICAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby1jb25zb2xlXHJcbiAgICAgICAgICBjb25zb2xlLmxvZygnRXJyb3IgaW4gdGVsZW1ldHJ5IHNlYXJjaCcsIGUpXHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gIH1cclxuXHJcbiAgZ2V0UGFnZURldGFpbHMoKSB7XHJcbiAgICBjb25zdCBwYXRoID0gd2luZG93LmxvY2F0aW9uLnBhdGhuYW1lLnJlcGxhY2UoJy8nLCAnJylcclxuICAgIGNvbnN0IHVybCA9IHBhdGggKyB3aW5kb3cubG9jYXRpb24uc2VhcmNoXHJcbiAgICBsZXQgbW9kdWxlVmFsdWUgPSAnJ1xyXG4gICAgaWYgKHBhdGguaW5jbHVkZXMoJ2Rpc2N1c3Npb24tZm9ydW0nKSkge1xyXG4gICAgICBtb2R1bGVWYWx1ZSA9ICdEaXNjdXNzJ1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgcGFnZWlkOiBwYXRoLFxyXG4gICAgICBwYWdlVXJsOiB1cmwsXHJcbiAgICAgIHBhZ2VVcmxQYXJ0czogcGF0aC5zcGxpdCgnLycpLFxyXG4gICAgICByZWZmZXJVcmw6IHRoaXMucHJldmlvdXNVcmwsXHJcbiAgICAgIG9iamVjdElkOiB0aGlzLmV4dHJhY3RDb250ZW50SWRGcm9tVXJsUGFydHMocGF0aC5zcGxpdCgnLycpKSxcclxuICAgICAgbW9kdWxlOiBtb2R1bGVWYWx1ZSxcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGV4dHJhY3RDb250ZW50SWRGcm9tVXJsUGFydHModXJsUGFydHM6IHN0cmluZ1tdKSB7XHJcbiAgICAvLyBUT0RPOiBwaWNrIHRvYyBhbmQgdmlld2VyIHVybCBmcm9tIHNvbWUgY29uZmlndXJhdGlvblxyXG4gICAgY29uc3QgdG9jSWR4ID0gdXJsUGFydHMuaW5kZXhPZigndG9jJylcclxuICAgIGNvbnN0IHZpZXdlcklkeCA9IHVybFBhcnRzLmluZGV4T2YoJ3ZpZXdlcicpXHJcblxyXG4gICAgaWYgKHRvY0lkeCA9PT0gLTEgJiYgdmlld2VySWR4ID09PSAtMSkge1xyXG4gICAgICByZXR1cm4gbnVsbFxyXG4gICAgfVxyXG5cclxuICAgIGlmICh0b2NJZHggIT09IC0xICYmIHRvY0lkeCA8IHVybFBhcnRzLmxlbmd0aCAtIDEpIHtcclxuICAgICAgcmV0dXJuIHVybFBhcnRzW3RvY0lkeCArIDFdIC8vIGUuZy4gdXJsIC9hcHAvdG9jLzxjb250ZW50X2lkPlxyXG4gICAgfVxyXG5cclxuICAgIGlmICh2aWV3ZXJJZHggIT09IC0xICYmIHZpZXdlcklkeCA8IHVybFBhcnRzLmxlbmd0aCAtIDIpIHtcclxuICAgICAgcmV0dXJuIHVybFBhcnRzW3ZpZXdlcklkeCArIDJdIC8vIGUuZy4gdXJsIC9hcHAvdmlld2VyLzxjb250ZW50X3R5cGU+Lzxjb250ZW50X2lkPlxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBudWxsXHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -48,6 +48,7 @@ export var NsInstanceConfig;
48
48
  IConfig.prototype.websitelanguages;
49
49
  IConfig.prototype.profileTimelyNudges;
50
50
  IConfig.prototype.npsCategory;
51
+ IConfig.prototype.compentency;
51
52
  }
52
53
  function IPortalUrls() { }
53
54
  NsInstanceConfig.IPortalUrls = IPortalUrls;
@@ -547,4 +548,4 @@ export var NsUser;
547
548
  ILanguages.prototype.name;
548
549
  }
549
550
  })(NsUser || (NsUser = {}));
550
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbnMubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi91dGlscy12Mi8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9jb25maWd1cmF0aW9ucy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLEtBQVcsZ0JBQWdCLENBZ09oQztBQWhPRCxXQUFpQixnQkFBZ0I7SUFDL0Isc0JBbUVDOzs7UUFsRUMsNEJBZ0JDO1FBQ0QsMkJBQWlCO1FBQ2pCLDZCQUFrQjtRQUNsQixrQ0FBdUI7UUFDdkIsb0NBQXlCO1FBQ3pCLGdDQUFxQjtRQUNyQixrQ0FBeUI7UUFDekIsd0NBQStCO1FBQy9CLDRCQUFzQjtRQUN0Qiw2Q0FBbUM7UUFDbkMsZ0NBQTZCO1FBQzdCLDJCQUFtQjtRQUNuQix5QkFBdUI7UUFDdkIsNEJBQXFCO1FBQ3JCLGtDQUFpQztRQUNqQyx5QkFBZ0I7UUFDaEIsd0JBQWE7UUFDYiwwQkFBdUI7UUFDdkIsMEJBQWlCO1FBQ2pCLDBCQUFpQjtRQUNqQixpREFBd0M7UUFDeEMsdUNBQTJDO1FBQzNDLHdDQUVDO1FBQ0QsOEJBR0M7UUFDRCwrQkFBc0I7UUFDdEIsc0NBQXlDO1FBQ3pDLHNCQUFhO1FBQ2IsMEJBQWU7UUFDZixxQ0FBNkI7UUFDN0Isb0NBQTJCO1FBQzNCLHFDQUEyQjtRQUMzQiw2QkFBaUI7UUFDakIsNEJBQWdCO1FBQ2hCLHVDQUE0QjtRQUM1Qiw0Q0FBaUM7UUFDakMsZ0RBQXFDO1FBQ3JDLCtDQUF1QztRQUN2Qyx1Q0FBc0M7UUFDdEMsdUJBQWE7UUFDYixvQ0FBMEI7UUFDMUIsNkJBQW1DO1FBQ25DLDRCQUFjO1FBQ2QsbUNBQXVCO1FBQ3ZCLHNDQUF5QjtRQUN6Qiw4QkFBb0I7O0lBRXRCLDBCQU9DOzs7UUFOQywyQkFBYTtRQUNiLDBCQUFZO1FBQ1osMEJBQVk7UUFDWiwwQkFBWTtRQUNaLDBCQUFZO1FBQ1osMkJBQVk7O0lBRWQsOEJBSUM7OztRQUhDLGdDQUFj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UUFDcEIsd0JBQWE7UUFDYiwwQkFBaUI7UUFDakIsaUNBQXNCO1FBQ3RCLGdDQUFzQjtRQUN0QixnQ0FBcUI7UUFDckIsMkJBQWdCO1FBQ2hCLHlCQUFjO1FBQ2QsZ0NBQXFCO1FBQ3JCLGdDQUFtQjtRQUNuQiw0QkFBYTtRQUNiLDhCQUFtQjtRQUNuQiw0QkFBaUI7UUFDakIsMkJBQWdCO1FBQ2hCLHFDQUEwQjs7SUFHNUIsd0JBcUJDOztRQXBCQyw4QkFBb0I7UUFDcEIsaUNBQXVCO1FBQ3ZCLG1DQUF5QjtRQUN6QiwyQkFBaUI7UUFFakIsMkJBQWlCO1FBQ2pCLCtCQUFxQjtRQUNyQiw4QkFBb0I7UUFDcEIseUJBQWU7UUFDZixxQ0FBMkI7UUFDM0IsbUNBQStCO1FBQy9CLHdCQUFjO1FBQ2QsZ0NBQXNCO1FBQ3RCLDRCQUFrQjtRQUNsQix3QkFBYztRQUNkLDZCQUFtQjtRQUNuQixpQ0FBdUI7UUFDdkIsa0NBQXdCO1FBQ3hCLHFDQUEyQjtRQUMzQiwyQkFBYTs7SUFFZix5QkFFQzs7O1FBREMsMEJBQVk7O0FBRWhCLENBQUMsRUFyUWdCLE1BQU0sS0FBTixNQUFNLFFBcVF0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5zUGFnZSB9IGZyb20gJy4uL3Jlc29sdmVycy9wYWdlLm1vZGVsJ1xuaW1wb3J0IHsgTnNXaWRnZXRSZXNvbHZlciB9IGZyb20gJy4vd2lkZ2V0LXJlc29sdmVyLm1vZGVsJ1xuZXhwb3J0IG5hbWVzcGFjZSBOc0luc3RhbmNlQ29uZmlnIHtcbiAgZXhwb3J0IGludGVyZmFjZSBJQ29uZmlnIHtcbiAgICBhdXRob3Jpbmc6IHtcbiAgICAgIGRvVW5pcXVlQ2hlY2s6IGJvb2xlYW5cbiAgICAgIGlzTXVsdGlTdGVwRmxvdzogYm9vbGVhblxuICAgICAgYWxsb3dFeHBpcnk6IGJvb2xlYW5cbiAgICAgIGFsbG93UmVzdG9yZTogYm9vbGVhblxuICAgICAgYWxsb3dSZXZpZXc6IGJvb2xlYW5cbiAgICAgIGFsbG93UHVibGlzaDogYm9vbGVhblxuICAgICAgYWxsb3dSZWRvOiBib29sZWFuXG4gICAgICBuZXdEZXNpZ246IGJvb2xlYW5cbiAgICAgIGFsbG93ZWRDb250ZW50VHlwZTogc3RyaW5nW11cbiAgICAgIHVybFBhdHRlcm5NYXRjaGluZzoge1xuICAgICAgICBhbGxvd1JlcGxhY2U6IGJvb2xlYW5cbiAgICAgICAgc291cmNlOiBzdHJpbmdcbiAgICAgICAgcGF0dGVybjogc3RyaW5nXG4gICAgICAgIGFsbG93SWZyYW1lOiBib29sZWFuXG4gICAgICB9W11cbiAgICB9XG4gICAgYXBwU2V0dXA6IGJvb2xlYW5cbiAgICBjaGF0Qm90VXJsOiBzdHJpbmdcbiAgICBkZWZhdWx0Rm9udHNpemU6IHN0cmluZ1xuICAgIGRlZmF1bHRUaGVtZUNsYXNzOiBzdHJpbmdcbiAgICBkZWZhdWx0TG9jYWxlOiBzdHJpbmdcbiAgICBkaXNhYmxlUGlkQ2hlY2s/OiBib29sZWFuXG4gICAgaXNNdWx0aWxpbmd1YWxFbmFibGVkPzogYm9vbGVhblxuICAgIGZvbnRTaXplczogSUZvbnRTaXplW11cbiAgICBpc0NvbnRlbnREb3dubG9hZEF2YWlsYWJsZTogYm9vbGVhblxuICAgIGluZGV4SHRtbE1ldGE6IElJbmRleEh0bWxNZXRhXG4gICAga2V5Y2xvYWs6IElLZXljbG9ha1xuICAgIGxvY2FsczogSUxvY2Fsc0NvbmZpZ1tdXG4gICAgbWljcm9zb2Z0OiBJTWljcm9zb2Z0XG4gICAgdGVsZW1ldHJ5Q29uZmlnOiBJVGVsZW1ldHJ5Q29uZmlnXG4gICAgdGhlbWVzOiBJVGhlbWVbXVxuICAgIGxvZ29zOiBJTG9nb3NcbiAgICBzb3VyY2VzPzogSVNvdXJjZUxvZ29bXVxuICAgIG1haWxJZHM6IElNYWlsSWRzXG4gICAgZGV0YWlsczogSURldGFpbHNcbiAgICB2YWxpZE1haWxJZEV4dGVuc2lvbnNGb3JNYWlsTWU6IHN0cmluZ1tdXG4gICAgb3ZlcnJpZGVUaGVtZUNoYW5nZXM6IElPdmVycmlkZVRoZW1lQ2hhbmdlc1xuICAgIGRlZmF1bHRGZWF0dXJlQ29uZmlnczoge1xuICAgICAgZXJyb3I6IHN0cmluZ1xuICAgIH1cbiAgICBiYWNrZ3JvdW5kczoge1xuICAgICAgcHJpbWFyeU5hdkJhcjogTnNQYWdlLklOYXZCYWNrZ3JvdW5kXG4gICAgICBwYWdlTmF2QmFyOiBOc1BhZ2UuSU5hdkJhY2tncm91bmRcbiAgICB9XG4gICAgZmVhdHVyZWRBcHBzOiBzdHJpbmdbXVxuICAgIHByaW1hcnlOYXZCYXJDb25maWc6IElQcmltYXJ5TmF2YmFyQ29uZmlnXG4gICAgb3JnOiBzdHJpbmdbXVxuICAgIHJvb3RPcmc6IHN0cmluZ1xuICAgIGludHJhbmV0SWZyYW1lVXJscz86IHN0cmluZ1tdXG4gICAgc2hvd05hdkJhckluU2V0dXA/OiBib29sZWFuXG4gICAgaW50cmFuZXRVcmxUb0NoZWNrPzogc3RyaW5nXG4gICAgaW50cm9WaWRlbzogSVBhdGhcbiAgICB0b3VyVmlkZW86IElQYXRoXG4gICAgaXNEb3dubG9hZGFibGVTb3VyY2U/OiBJUGF0aFxuICAgIGlzRG93bmxvYWRhYmxlSW9zUmVzb3VyY2U/OiBJUGF0aFxuICAgIGlzRG93bmxvYWRhYmxlQW5kcm9pZFJlc291cmNlPzogSVBhdGhcbiAgICBzb3VyY2VGaWVsZHNVc2VyQXV0b2NvbXBsZXRlPzogc3RyaW5nW11cbiAgICBmb3Jnb3RQYXNzd29yZENvbmZpZz86IElGb3Jnb3RQYXNzd29yZFxuICAgIGh1YnM6IElIdWJzW11cbiAgICBjb3Vyc2VDb250ZW50UGF0aD86IHN0cmluZ1xuICAgIHBvcnRhbFVybHM6IElQb3J0YWxVcmxzIHwgdW5kZWZpbmVkXG4gICAgcG9zaXRpb25zOiBhbnlcbiAgICB3ZWJzaXRlbGFuZ3VhZ2VzOiBhbnlbXVxuICAgIHByb2ZpbGVUaW1lbHlOdWRnZXM6IGFueSxcbiAgICBucHNDYXRlZ29yeT86IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVBvcnRhbFVybHMge1xuICAgIGlnb3Q6IHN0cmluZyxcbiAgICBzcHY6IHN0cmluZyxcbiAgICBtZG86IHN0cmluZyxcbiAgICBjYmM6IHN0cmluZyxcbiAgICBjYnA6IHN0cmluZyxcbiAgICBmcmFjOiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElGb3Jnb3RQYXNzd29yZCB7XG4gICAgbG9jYWw/OiBzdHJpbmdcbiAgICBlbnRlcnByaXNlPzogc3RyaW5nXG4gICAgc29jaWFsPzogc3RyaW5nXG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJU291cmNlTG9nbyB7XG4gICAgc291cmNlTmFtZT86IHN0cmluZ1xuICAgIHNvdXJjZUlkPzogc3RyaW5nXG4gICAgbG9nbz86IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVBhdGgge1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUh1YnMge1xuICAgIGFjdGl2ZTogYm9vbGVhblxuICAgIGRlc2M6IHN0cmluZ1xuICAgIGh1Ym5hbWU6IHN0cmluZ1xuICAgIGljb246IHN0cmluZ1xuICAgIHBhdGg6IHN0cmluZyxcbiAgICBvcmRlcjogbnVtYmVyXG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJSW5kZXhIdG1sTWV0YSB7XG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgICBvcGVuU2VhcmNoVXJsPzogc3RyaW5nXG4gICAgd2VibWFuaWZlc3Q6IHN0cmluZ1xuICAgIHhJY29uPzogc3RyaW5nXG4gICAgcG5nSWNvbj86IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUZvbnRTaXplIHtcbiAgICBiYXNlRm9udFNpemU6IHN0cmluZ1xuICAgIGZvbnRDbGFzczogc3RyaW5nXG4gICAgc2NhbGU6IG51bWJlclxuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUtleWNsb2FrIHtcbiAgICBkZWZhdWx0aWRwSGludDogJ0UnIHwgJ04nIHwgJ1MnXG4gICAgaXNMb2dpbkhpZGRlbjogYm9vbGVhblxuICAgIGJlYXJlckV4Y2x1ZGVkVXJsczogc3RyaW5nW11cbiAgICBjbGllbnRJZDogc3RyaW5nXG4gICAga2V5OiBzdHJpbmdcbiAgICByZWFsbTogc3RyaW5nXG4gICAgdXJsOiBzdHJpbmdcbiAgICBjaGFuZ2VQYXNzd29yZFVybD86IHN0cmluZ1xuICAgIG9uTG9hZD86ICdjaGVjay1zc28nIHwgJ2xvZ2luLXJlcXVpcmVkJ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUxvY2Fsc0NvbmZpZyB7XG4gICAgaXNBdmFpbGFibGU6IGJvb2xlYW5cbiAgICBpc0VuYWJsZWQ6IGJvb2xlYW5cbiAgICBsb2NhbHM6IHN0cmluZ1tdXG4gICAgcGF0aDogc3RyaW5nXG4gICAgaXNSVEw6IGJvb2xlYW5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElNaWNyb3NvZnQge1xuICAgIGNsaWVudElkOiBzdHJpbmdcbiAgICBkZWZhdWx0RW1haWxJZDogc3RyaW5nXG4gICAgdGVuYW50OiBzdHJpbmdcbiAgICB2YWxpZEVtYWlsRXh0ZW5zaW9uczogc3RyaW5nW11cbiAgICBpc0NvbmZpZ3VyZWQ6IGJvb2xlYW5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElUaGVtZSB7XG4gICAgY29sb3I6IElUaGVtZUNvbG9yXG4gICAgdGhlbWVGaWxlOiBzdHJpbmdcbiAgICB0aGVtZUNsYXNzOiBzdHJpbmdcbiAgICB0aGVtZU5hbWU6IHN0cmluZ1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJVGhlbWVDb2xvciB7XG4gICAgYWNjZW50OiBzdHJpbmdcbiAgICBwcmltYXJ5OiBzdHJpbmdcbiAgICB3YXJuOiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElPdmVycmlkZVRoZW1lQ2hhbmdlcyB7XG4gICAgaXNFbmFibGVkOiBib29sZWFuXG4gICAgZGVza3RvcDogSURlc2t0b3BcbiAgICBtV2ViOiBJTVdlYlxuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSURlc2t0b3Age1xuICAgIGFuaW1hdGlvbkR1cmF0aW9uOiBudW1iZXJcbiAgICBsb2dvVXJsOiBzdHJpbmdcbiAgICBsb2dvVGV4dDogc3RyaW5nXG4gICAgbG9nb0Rpc3BsYXlUaW1lOiBudW1iZXJcbiAgICBiYWNrZ3JvdW5kVGhlbWU6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSU1XZWIge1xuICAgIGxvZ29Vcmw6IHN0cmluZ1xuICAgIGxvZ29UZXh0OiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElMb2dvcyB7XG4gICAgYXBwOiBzdHJpbmdcbiAgICBhcHBUcmFuc3BhcmVudDogc3RyaW5nXG4gICAgYXBwU2Vjb25kYXJ5OiBzdHJpbmdcbiAgICBhYm91dEZvb3Rlcjogc3RyaW5nXG4gICAgYWJvdXRIZWFkZXI6IHN0cmluZ1xuICAgIGFwcEJvdHRvbU5hdj86IHN0cmluZ1xuICAgIGNvbXBhbnk6IHN0cmluZ1xuICAgIGRldmVsb3BlZEJ5OiBzdHJpbmdcbiAgICBwb3dlcmVkQnk6IHN0cmluZ1xuICAgIGRlZmF1bHRDb250ZW50Pzogc3RyaW5nXG4gICAgZGVmYXVsdFNvdXJjZUxvZ28/OiBzdHJpbmdcbiAgICBsYW5kaW5nTG9nbzogc3RyaW5nXG4gICAgbmF2YmFyTG9nbz86IHN0cmluZ1xuICAgIHBsYXlMaXN0TG9nbz86IHN0cmluZ1xuICAgIHRodW1wc1VwPzogc3RyaW5nXG5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElNYWlsSWRzIHtcbiAgICBjb250YWN0VXM6IHN0cmluZ1xuICAgIGRlZmF1bHQ6IHN0cmluZ1xuICAgIHN1cHBvcnQ6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSURldGFpbHMge1xuICAgIGFwcE5hbWU6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVByaW1hcnlOYXZiYXJDb25maWcge1xuICAgIG1lZGl1bVNjcmVlbjogSVByaW1hcnlOYXZCYXJTY3JlZW5cbiAgICBzbWFsbFNjcmVlbjogSVByaW1hcnlOYXZCYXJTY3JlZW5cbiAgfVxuICBpbnRlcmZhY2UgSVByaW1hcnlOYXZCYXJTY3JlZW4ge1xuICAgIGxlZnQ6IElQcmltYXJ5TmF2QmFyU2lkZVtdXG4gICAgcmlnaHQ6IElQcmltYXJ5TmF2QmFyU2lkZVtdXG4gIH1cbiAgaW50ZXJmYWNlIElQcmltYXJ5TmF2QmFyU2lkZSB7XG4gICAgdHlwZTogJ3dpZGdldEJ1dHRvbicgfCAnZmVhdHVyZUJ1dHRvbidcbiAgICBjb25maWc6IE5zV2lkZ2V0UmVzb2x2ZXIuSVJlbmRlckNvbmZpZ1dpdGhBbnlEYXRhIHwgTnNQYWdlLklOYXZMaW5rXG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElUZWxlbWV0cnlDb25maWcge1xuICAgIHBkYXRhOiB7XG4gICAgICBpZDogc3RyaW5nXG4gICAgICB2ZXI6IHN0cmluZ1xuICAgICAgcGlkOiBzdHJpbmdcbiAgICB9XG4gICAgb2JqZWN0OiB7XG4gICAgICB2ZXI6IHN0cmluZ1xuICAgICAgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgIH1cbiAgICB1aWQ6IHN0cmluZyB8IG51bGxcbiAgICBhdXRodG9rZW4/OiBzdHJpbmdcbiAgICBlbnY6IHN0cmluZ1xuICAgIGNoYW5uZWw6IHN0cmluZ1xuICAgIGJhdGNoc2l6ZTogbnVtYmVyXG4gICAgaG9zdDogc3RyaW5nXG4gICAgZW5kcG9pbnQ6IHN0cmluZ1xuICAgIGFwaXNsdWc6IHN0cmluZ1xuICAgIHNpZDogc3RyaW5nXG4gICAgcHVibGljRW5kcG9pbnQ6IHN0cmluZ1xuICAgIHByb3RlY3RlZEVuZHBvaW50OiBzdHJpbmdcbiAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIE5zQXBwc0NvbmZpZyB7XG4gIGV4cG9ydCB0eXBlIFRJY29uVHlwZSA9ICdtYXQtaWNvbicgfCAndXJsJ1xuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSUFwcHNDb25maWcge1xuICAgIGdyb3VwczogSUdyb3VwW11cbiAgICBmZWF0dXJlczogeyBbaWQ6IHN0cmluZ106IElGZWF0dXJlIH1cbiAgICB0b3VyR3VpZGU/OiBzdHJpbmdbXVtdXG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElHcm91cCB7XG4gICAgaWQ6IHN0cmluZ1xuICAgIGljb25UeXBlOiBzdHJpbmdcbiAgICBpY29uOiBzdHJpbmdcbiAgICBrZXl3b3Jkczogc3RyaW5nW11cbiAgICBuYW1lOiBzdHJpbmdcbiAgICB0b29sVGlwOiBzdHJpbmdcbiAgICBmZWF0dXJlSWRzOiBzdHJpbmdbXVxuICAgIHN0cmlwQmFja2dyb3VuZD86IHN0cmluZ1xuICAgIGhhc1JvbGU6IHN0cmluZ1tdXG4gIH1cblxuICAvLyBleHBvcnQgaW50ZXJmYWNlIElHcm91cFdpdGhGZWF0dXJlcyBleHRlbmRzIElHcm91cCB7XG4gIC8vICAgZmVhdHVyZXM6IElGZWF0dXJlW11cbiAgLy8gfVxuICBleHBvcnQgaW50ZXJmYWNlIElGZWF0dXJlIHtcbiAgICBuYW1lOiBzdHJpbmdcbiAgICBpZDogc3RyaW5nXG4gICAgdXJsOiBzdHJpbmdcbiAgICBwZXJtaXNzaW9uOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHsgYWxsOiBzdHJpbmdbXTsgc29tZTogc3RyaW5nW107IG5vbmU6IHN0cmluZ1tdIH1cbiAgICBpY29uVHlwZTogVEljb25UeXBlXG4gICAgaWNvbjogc3RyaW5nXG4gICAga2V5d29yZHM6IHN0cmluZ1tdXG4gICAgdG9vbFRpcDogc3RyaW5nXG4gICAgYWNjZXNzS2V5OiBzdHJpbmdcbiAgICBzdGF0dXM/OiAnZWFybHlBY2Nlc3MnIHwgJ2xpdmUnIHwgJ2FscGhhJyB8ICdiZXRhJ1xuICAgIHNob3J0TmFtZTogc3RyaW5nXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgICBiYWRnZUVuZHBvaW50Pzogc3RyaW5nXG4gICAgbW9iaWxlQXBwRnVuY3Rpb24/OiBzdHJpbmdcbiAgICBjb2xvcj86IHN0cmluZ1xuICAgIHRhcmdldD86IHN0cmluZ1xuICB9XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgTnNVc2VyIHtcbiAgZXhwb3J0IGludGVyZmFjZSBJVXNlclByb2ZpbGUge1xuICAgIHVzZXJJZDogc3RyaW5nXG4gICAgZW1haWw/OiBzdHJpbmdcbiAgICBkZXBhcnRtZW50TmFtZT86IHN0cmluZ1xuICAgIHVzZXJOYW1lPzogc3RyaW5nXG4gICAgZmlyc3ROYW1lPzogc3RyaW5nXG4gICAgc3VyTmFtZT86IHN0cmluZ1xuICAgIG1pZGRsZU5hbWU/OiBzdHJpbmdcbiAgICBsYXN0TmFtZT86IHN0cmluZ1xuICAgIHJvb3RPcmdJZD86IHN0cmluZ1xuICAgIHJvb3RPcmdOYW1lPzogc3RyaW5nXG4gICAgcHJvZmlsZUltYWdlPzogc3RyaW5nXG4gICAgZ2l2ZW5OYW1lPzogc3RyaW5nXG4gICAgY291bnRyeT86IG51bGwgfCBzdHJpbmdcbiAgICB1bml0Pzogc3RyaW5nIHwgbnVsbFxuICAgIHNvdXJjZV9wcm9maWxlX3BpY3R1cmU/OiBudWxsIHwgc3RyaW5nXG4gICAgZGVhbGVyQ29kZT86IG51bGwgfCBzdHJpbmdcbiAgICBpc01hbmFnZXI/OiBib29sZWFuXG4gICAgY29tcGV0ZW5jaWVzPzogYW55XG4gICAgc3lzdGVtVG9waWNzPzogYW55XG4gICAgZGVzaXJlZFRvcGljcz86IGFueVxuICAgIGRlc2lyZWRDb21wZXRlbmNpZXM/OiBhbnlcbiAgICB1c2VyUm9sZXM/OiBhbnlcbiAgICBwcm9maWxlVXBkYXRlQ29tcGxldGlvbj86IG51bWJlclxuICAgIHByb2ZpbGVJbWFnZVVybD86IHN0cmluZ1xuICAgIHByb2Zlc3Npb25hbERldGFpbHM/OiBhbnlcbiAgICB3ZWJQb3J0YWxMYW5nPzogYW55LFxuICAgIGRlcGFydG1lbnRJbWc/OiBhbnlcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSU5vZGViYlVzZXJQcm9maWxlIHtcbiAgICB1c2VybmFtZTogc3RyaW5nXG4gICAgZW1haWw6IHN0cmluZ1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJVXNlclBpZFByb2ZpbGUge1xuICAgIGtpZF91cGRhdGVkOiBib29sZWFuXG4gICAgdXNlcjogSVVzZXJcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVVzZXJQaWRQcm9maWxlVjIge1xuICAgIGtpZF91cGRhdGVkOiBib29sZWFuXG4gICAgcmVzdWx0OiB7XG4gICAgICByZXNwb25zZTogSVVzZXJWMlxuICAgIH1cbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVVzZXJQaWRQcm9maWxlVmVyMiB7XG4gICAgcmVzdWx0OiB7XG4gICAgICBVc2VyUHJvZmlsZTogSVVzZXJWZXIyXG4gICAgfVxuICB9XG4gIGludGVyZmFjZSBJU291cmNlRGF0YSB7XG4gICAgR0lEOiBzdHJpbmdcbiAgICBTTkFNUFJFOiBzdHJpbmdcbiAgICBTTkFNQUREOiBzdHJpbmdcbiAgICBMQVNUTkFNRTogc3RyaW5nXG4gICAgU046IHN0cmluZ1xuICAgIEdJVkVOTkFNRTogc3RyaW5nXG4gICAgTklDS05BTUU6IHN0cmluZ1xuICAgIFBSRUZFUlJFRFNOOiBzdHJpbmdcbiAgICBQRVJTT05BTFRJVExFOiBzdHJpbmdcbiAgICBNT0JJTEU6IHN0cmluZ1xuICAgIE1BSUw6IHN0cmluZ1xuICAgIERFUEFSVE1FTlRURVhUOiBzdHJpbmdcbiAgICBDT1NUTE9DQVRJT05VTklUOiBzdHJpbmdcbiAgICBDT1NUTE9DQVRJT046IHN0cmluZ1xuICAgIE9SR0lEOiBzdHJpbmdcbiAgICBNR01UUkVTUDogc3RyaW5nXG4gICAgVVRDOiBzdHJpbmdcbiAgICBDTkFNRUVORzogc3RyaW5nXG4gICAgTE5BTUVJTlQ6IHN0cmluZ1xuICAgIFVTRVJUWVBFOiBzdHJpbmdcbiAgICBTVEFUVVM6IHN0cmluZ1xuICAgIENPTlRSQUNUU1RBVFVTOiBzdHJpbmdcbiAgfVxuXG4gIGludGVyZmFjZSBJVXNlciB7XG4gICAgd2lkOiBzdHJpbmdcbiAgICByb290X29yZzogc3RyaW5nXG4gICAgb3JnOiBzdHJpbmdcbiAgICBpc19hY3RpdmU/OiBhbnlcbiAgICBhY2NvdW50X2V4cGlyeV9kYXRlPzogYW55XG4gICAga2lkOiBzdHJpbmdcbiAgICBpbXBvcnRlZF9zb3VyY2VfbmFtZTogc3RyaW5nXG4gICAgc291cmNlX2lkOiBzdHJpbmdcbiAgICB1c2VybmFtZT86IGFueVxuICAgIGZpcnN0X25hbWU6IHN0cmluZ1xuICAgIGxhc3RfbmFtZTogc3RyaW5nXG4gICAgbWlkZGxlX25hbWU/OiBhbnlcbiAgICBrbm93bl9hczogc3RyaW5nXG4gICAgc2FsdXRhdGlvbj86IGFueVxuICAgIGVtYWlsOiBzdHJpbmdcbiAgICBnZW5kZXI/OiBhbnlcbiAgICBkb2I/OiBhbnlcbiAgICBsYW5ndWFnZXNfa25vd24/OiBhbnlcbiAgICBwcmVmZXJyZWRfbGFuZ3VhZ2U/OiBhbnlcbiAgICBzb3VyY2VfcHJvZmlsZV9waWN0dXJlPzogYW55XG4gICAgcmVzaWRlbmNlX2NvdW50cnk6IHN0cmluZ1xuICAgIHJlc2lkZW5jZV9zdGF0ZT86IGFueVxuICAgIHJlc2lkZW5jZV9jaXR5OiBzdHJpbmdcbiAgICBjb250YWN0X3Bob25lX251bWJlcl9vZmZpY2U/OiBhbnlcbiAgICBjb250YWN0X3Bob25lX251bWJlcl9ob21lPzogYW55XG4gICAgY29udGFjdF9waG9uZV9udW1iZXJfcGVyc29uYWw6IHN0cmluZ1xuICAgIGVtcGxveWVtZW50X3N0YXR1cz86IGFueVxuICAgIGNvbnRyYWN0X3R5cGU/OiBhbnlcbiAgICBqb2JfdGl0bGU/OiBhbnlcbiAgICBqb2Jfcm9sZT86IGFueVxuICAgIGRlcGFydG1lbnRfbmFtZTogc3RyaW5nXG4gICAgdW5pdF9uYW1lPzogYW55XG4gICAgb3JnYW5pemF0aW9uX2xvY2F0aW9uX2NvdW50cnk/OiBhbnlcbiAgICBvcmdhbml6YXRpb25fbG9jYXRpb25fc3RhdGU/OiBhbnlcbiAgICBvcmdhbml6YXRpb25fbG9jYXRpb25fY2l0eT86IGFueVxuICAgIHRpbWVfaW5zZXJ0ZWQ6IERhdGVcbiAgICB0aW1lX3VwZGF0ZWQ6IERhdGVcbiAgICBqc29uX3VubWFwcGVkX2ZpZWxkcz86IGFueVxuICAgIHNvdXJjZV9kYXRhOiBJU291cmNlRGF0YVxuICB9XG4gIGludGVyZmFjZSBJUm9vdE9yZyB7XG4gICAgZGF0ZVRpbWU6IHN0cmluZ1xuICAgIHByZWZlcnJlZExhbmd1YWdlOiBzdHJpbmdcbiAgICBrZXlzOiB7fVxuICAgIGNoYW5uZWw6IHN0cmluZ1xuICAgIGFwcHJvdmVkQnk6IHN0cmluZ1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmdcbiAgICB1cGRhdGVkRGF0ZTogc3RyaW5nXG4gICAgYWRkcmVzc0lkOiBzdHJpbmdcbiAgICBvcmdUeXBlOiBzdHJpbmdcbiAgICBwcm92aWRlcjogc3RyaW5nXG4gICAgb3JnQ29kZTogc3RyaW5nXG4gICAgbG9jYXRpb25JZDogc3RyaW5nXG4gICAgdGhlbWU6IHN0cmluZ1xuICAgIGlkOiBzdHJpbmdcbiAgICBpc0FwcHJvdmVkOiBib29sZWFuXG4gICAgY29tbXVuaXR5SWQ6IHN0cmluZ1xuICAgIHNsdWc6IHN0cmluZ1xuICAgIGVtYWlsOiBzdHJpbmdcbiAgICBpc1NTT0VuYWJsZWQ6IGJvb2xlYW5cbiAgICB0aHVtYm5haWw6IHN0cmluZ1xuICAgIHVwZGF0ZWRCeTogc3RyaW5nXG4gICAgb3JnTmFtZTogc3RyaW5nXG4gICAgbG9jYXRpb25JZHM6IFtdXG4gICAgZXh0ZXJuYWxJZDogc3RyaW5nXG4gICAgaXNSb290T3JnOiBib29sZWFuXG4gICAgcm9vdE9yZ0lkOiBzdHJpbmdcbiAgICBpbWdVcmw6IHN0cmluZ1xuICAgIGFwcHJvdmVkRGF0ZTogc3RyaW5nXG4gICAgb3JnVHlwZUlkOiBzdHJpbmdcbiAgICBob21lVXJsOiBzdHJpbmdcbiAgICBpc0RlZmF1bHQ6IGJvb2xlYW5cbiAgICBjcmVhdGVkRGF0ZTogc3RyaW5nXG4gICAgY29udGFjdERldGFpbDogc3RyaW5nXG4gICAgcGFyZW50T3JnSWQ6IHN0cmluZ1xuICAgIGNyZWF0ZWRCeTogc3RyaW5nXG4gICAgaGFzaFRhZ0lkOiBzdHJpbmdcbiAgICBub09mTWVtYmVyczogc3RyaW5nXG4gICAgc3RhdHVzOiBudW1iZXJcbiAgfVxuICBpbnRlcmZhY2UgSU9yZyB7XG4gICAgdXBkYXRlZEJ5OiBzdHJpbmdcbiAgICBvcmdhbmlzYXRpb25JZDogc3RyaW5nXG4gICAgb3JnTmFtZTogc3RyaW5nXG4gICAgYWRkZWRCeU5hbWU6IHN0cmluZ1xuICAgIGFkZGVkQnk6IHN0cmluZ1xuICAgIHJvbGVzOiBzdHJpbmdbXVxuICAgIGFwcHJvdmVkQnk6IHN0cmluZ1xuICAgIHVwZGF0ZWREYXRlOiBzdHJpbmdcbiAgICB1c2VySWQ6IHN0cmluZ1xuICAgIGFwcHJvdmFsZGF0ZTogc3RyaW5nXG4gICAgaXNEZWxldGVkOiBib29sZWFuXG4gICAgcGFyZW50T3JnSWQ6IHN0cmluZ1xuICAgIGhhc2hUYWdJZDogc3RyaW5nXG4gICAgaXNSZWplY3RlZDogYm9vbGVhblxuICAgIHBvc2l0aW9uOiBzdHJpbmdcbiAgICBpZDogc3RyaW5nXG4gICAgb3Jnam9pbmRhdGU6IHN0cmluZ1xuICAgIGlzQXBwcm92ZWQ6IGJvb2xlYW5cbiAgICBvcmdMZWZ0RGF0ZTogc3RyaW5nXG4gIH1cbiAgaW50ZXJmYWNlIElVc2VyVjIge1xuICAgIHN1ck5hbWU6IGFueVxuICAgIG1hc2tlZFBob25lOiBzdHJpbmdcbiAgICByb290T3JnTmFtZTogc3RyaW5nXG4gICAgc3ViamVjdDogW11cbiAgICBjaGFubmVsOiBzdHJpbmdcbiAgICBsYW5ndWFnZTogW11cbiAgICB1cGRhdGVkRGF0ZTogc3RyaW5nXG4gICAgbWFuYWdlZEJ5OiBzdHJpbmdcbiAgICBmbGFnc1ZhbHVlOiBudW1iZXJcbiAgICBpZDogc3RyaW5nXG4gICAgcmVjb3ZlcnlFbWFpbDogc3RyaW5nXG4gICAgaWRlbnRpZmllcjogc3RyaW5nXG4gICAgdGh1bWJuYWlsOiBzdHJpbmdcbiAgICBwcm9maWxlVmlzaWJpbGl0eTogW11cbiAgICB1cGRhdGVkQnk6IHN0cmluZ1xuICAgIGFjY2Vzc2NvZGU6IHN0cmluZ1xuICAgIGxvY2F0aW9uSWRzOiBbXVxuICAgIGV4dGVybmFsSWRzOiBbXVxuICAgIHJlZ2lzdHJ5SWQ6IHN0cmluZ1xuICAgIHJvb3RPcmdJZDogc3RyaW5nXG4gICAgcHJldlVzZWRFbWFpbDogc3RyaW5nXG4gICAgZmlyc3ROYW1lOiBzdHJpbmdcbiAgICB0bmNBY2NlcHRlZE9uOiBzdHJpbmdcbiAgICBwaG9uZTogc3RyaW5nXG4gICAgZG9iOiBzdHJpbmdcbiAgICBncmFkZTogW11cbiAgICBjdXJyZW50TG9naW5UaW1lOiBzdHJpbmdcbiAgICB1c2VyVHlwZTogc3RyaW5nXG4gICAgc3RhdHVzOiBudW1iZXJcbiAgICBsYXN0TmFtZTogc3RyaW5nXG4gICAgZ2VuZGVyOiBzdHJpbmdcbiAgICByb2xlczogc3RyaW5nW11cbiAgICBwcmV2VXNlZFBob25lOiBzdHJpbmdcbiAgICBzdGF0ZVZhbGlkYXRlZDogYm9vbGVhblxuICAgIGlzRGVsZXRlZDogYm9vbGVhblxuICAgIG9yZ2FuaXNhdGlvbnM6IElPcmdbXVxuICAgIGNvdW50cnlDb2RlOiBzdHJpbmdcbiAgICBtYXNrZWRFbWFpbDogc3RyaW5nXG4gICAgdGVtcFBhc3N3b3JkOiBzdHJpbmdcbiAgICBlbWFpbDogc3RyaW5nXG4gICAgcm9vdE9yZzogSVJvb3RPcmdcbiAgICBwcm9maWxlU3VtbWFyeTogc3RyaW5nXG4gICAgcGhvbmVWZXJpZmllZDogYm9vbGVhblxuICAgIHJlY292ZXJ5UGhvbmU6IHN0cmluZ1xuICAgIHVzZXJOYW1lOiBzdHJpbmdcbiAgICB1c2VySWQ6IHN0cmluZ1xuICAgIGxhc3RMb2dpblRpbWU6IHN0cmluZ1xuICAgIGVtYWlsVmVyaWZpZWQ6IHRydWVcbiAgICBmcmFtZXdvcms6IHt9XG4gICAgY3JlYXRlZERhdGU6IHN0cmluZ1xuICAgIGNyZWF0ZWRCeTogc3RyaW5nXG4gICAgbG9jYXRpb246IHN0cmluZ1xuICAgIHRuY0FjY2VwdGVkVmVyc2lvbjogc3RyaW5nXG4gIH1cblxuICBpbnRlcmZhY2UgSVVzZXJWZXIyIHtcbiAgICAnZmlyc3RuYW1lJzogc3RyaW5nLFxuICAgICdtb3RoZXJUb25ndWUnOiBzdHJpbmcsXG4gICAgJ3NlY29uZGFyeUVtYWlsJzogc3RyaW5nLFxuICAgICdnZW5kZXInOiBzdHJpbmcsXG4gICAgJ0B0eXBlJzogc3RyaW5nLFxuICAgICdtb2JpbGUnOiBudW1iZXIsXG4gICAgJ21pZGRsZW5hbWUnOiBzdHJpbmcsXG4gICAgJ3RlbGVwaG9uZSc6IG51bWJlcixcbiAgICAnb3NpZCc6IHN0cmluZyxcbiAgICAncHJpbWFyeUVtYWlsVHlwZSc6IHN0cmluZyxcbiAgICAna25vd25MYW5ndWFnZXMnOiBJTGFuZ3VhZ2VzW10sXG4gICAgJ3dpZCc6IHN0cmluZyxcbiAgICAnbmF0aW9uYWxpdHknOiBzdHJpbmcsXG4gICAgJ3N1cm5hbWUnOiBzdHJpbmcsXG4gICAgJ2RvYic6IHN0cmluZyxcbiAgICAnY2F0ZWdvcnknOiBzdHJpbmcsXG4gICAgJ3ByaW1hcnlFbWFpbCc6IHN0cmluZyxcbiAgICAnbWFyaXRhbFN0YXR1cyc6IHN0cmluZyxcbiAgICAncmVzaWRlbmNlQWRkcmVzcyc6IHN0cmluZyxcbiAgICAncmVzdWx0JzogYW55XG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJTGFuZ3VhZ2VzIHtcbiAgICBuYW1lOiBzdHJpbmdcbiAgfVxufVxuIl19
551
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlndXJhdGlvbnMubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac3VuYmlyZC1jYi91dGlscy12Mi8iLCJzb3VyY2VzIjpbImxpYi9zZXJ2aWNlcy9jb25maWd1cmF0aW9ucy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLEtBQVcsZ0JBQWdCLENBaU9oQztBQWpPRCxXQUFpQixnQkFBZ0I7SUFDL0Isc0JBb0VDOzs7UUFuRUMsNEJBZ0JDO1FBQ0QsMkJBQWlCO1FBQ2pCLDZCQUFrQjtRQUNsQixrQ0FBdUI7UUFDdkIsb0NBQXlCO1FBQ3pCLGdDQUFxQjtRQUNyQixrQ0FBeUI7UUFDekIsd0NBQStCO1FBQy9CLDRCQUFzQjtRQUN0Qiw2Q0FBbUM7UUFDbkMsZ0NBQTZCO1FBQzdCLDJCQUFtQjtRQUNuQix5QkFBdUI7UUFDdkIsNEJBQXFCO1FBQ3JCLGtDQUFpQztRQUNqQyx5QkFBZ0I7UUFDaEIsd0JBQWE7UUFDYiwwQkFBdUI7UUFDdkIsMEJBQWlCO1FBQ2pCLDBCQUFpQjtRQUNqQixpREFBd0M7UUFDeEMsdUNBQTJDO1FBQzNDLHdDQUVDO1FBQ0QsOEJBR0M7UUFDRCwrQkFBc0I7UUFDdEIsc0NBQXlDO1FBQ3pDLHNCQUFhO1FBQ2IsMEJBQWU7UUFDZixxQ0FBNkI7UUFDN0Isb0NBQTJCO1FBQzNCLHFDQUEyQjtRQUMzQiw2QkFBaUI7UUFDakIsNEJBQWdCO1FBQ2hCLHVDQUE0QjtRQUM1Qiw0Q0FBaUM7UUFDakMsZ0RBQXFDO1FBQ3JDLCtDQUF1QztRQUN2Qyx1Q0FBc0M7UUFDdEMsdUJBQWE7UUFDYixvQ0FBMEI7UUFDMUIsNkJBQW1DO1FBQ25DLDRCQUFjO1FBQ2QsbUNBQXVCO1FBQ3ZCLHNDQUF5QjtRQUN6Qiw4QkFBb0I7UUFDcEIsOEJBQWlCOztJQUVuQiwwQkFPQzs7O1FBTkMsMkJBQWE7UUFDYiwwQkFBWTtRQUNaLDBCQUFZO1FBQ1osMEJBQVk7UUFDWiwwQkFBWTtRQUNaLDJCQUFZOztJQUVkLDhCQUlD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UUFDbkIsK0JBQW9CO1FBQ3BCLHdCQUFhO1FBQ2IsMEJBQWlCO1FBQ2pCLGlDQUFzQjtRQUN0QixnQ0FBc0I7UUFDdEIsZ0NBQXFCO1FBQ3JCLDJCQUFnQjtRQUNoQix5QkFBYztRQUNkLGdDQUFxQjtRQUNyQixnQ0FBbUI7UUFDbkIsNEJBQWE7UUFDYiw4QkFBbUI7UUFDbkIsNEJBQWlCO1FBQ2pCLDJCQUFnQjtRQUNoQixxQ0FBMEI7O0lBRzVCLHdCQXFCQzs7UUFwQkMsOEJBQW9CO1FBQ3BCLGlDQUF1QjtRQUN2QixtQ0FBeUI7UUFDekIsMkJBQWlCO1FBRWpCLDJCQUFpQjtRQUNqQiwrQkFBcUI7UUFDckIsOEJBQW9CO1FBQ3BCLHlCQUFlO1FBQ2YscUNBQTJCO1FBQzNCLG1DQUErQjtRQUMvQix3QkFBYztRQUNkLGdDQUFzQjtRQUN0Qiw0QkFBa0I7UUFDbEIsd0JBQWM7UUFDZCw2QkFBbUI7UUFDbkIsaUNBQXVCO1FBQ3ZCLGtDQUF3QjtRQUN4QixxQ0FBMkI7UUFDM0IsMkJBQWE7O0lBRWYseUJBRUM7OztRQURDLDBCQUFZOztBQUVoQixDQUFDLEVBclFnQixNQUFNLEtBQU4sTUFBTSxRQXFRdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOc1BhZ2UgfSBmcm9tICcuLi9yZXNvbHZlcnMvcGFnZS5tb2RlbCdcbmltcG9ydCB7IE5zV2lkZ2V0UmVzb2x2ZXIgfSBmcm9tICcuL3dpZGdldC1yZXNvbHZlci5tb2RlbCdcbmV4cG9ydCBuYW1lc3BhY2UgTnNJbnN0YW5jZUNvbmZpZyB7XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUNvbmZpZyB7XG4gICAgYXV0aG9yaW5nOiB7XG4gICAgICBkb1VuaXF1ZUNoZWNrOiBib29sZWFuXG4gICAgICBpc011bHRpU3RlcEZsb3c6IGJvb2xlYW5cbiAgICAgIGFsbG93RXhwaXJ5OiBib29sZWFuXG4gICAgICBhbGxvd1Jlc3RvcmU6IGJvb2xlYW5cbiAgICAgIGFsbG93UmV2aWV3OiBib29sZWFuXG4gICAgICBhbGxvd1B1Ymxpc2g6IGJvb2xlYW5cbiAgICAgIGFsbG93UmVkbzogYm9vbGVhblxuICAgICAgbmV3RGVzaWduOiBib29sZWFuXG4gICAgICBhbGxvd2VkQ29udGVudFR5cGU6IHN0cmluZ1tdXG4gICAgICB1cmxQYXR0ZXJuTWF0Y2hpbmc6IHtcbiAgICAgICAgYWxsb3dSZXBsYWNlOiBib29sZWFuXG4gICAgICAgIHNvdXJjZTogc3RyaW5nXG4gICAgICAgIHBhdHRlcm46IHN0cmluZ1xuICAgICAgICBhbGxvd0lmcmFtZTogYm9vbGVhblxuICAgICAgfVtdXG4gICAgfVxuICAgIGFwcFNldHVwOiBib29sZWFuXG4gICAgY2hhdEJvdFVybDogc3RyaW5nXG4gICAgZGVmYXVsdEZvbnRzaXplOiBzdHJpbmdcbiAgICBkZWZhdWx0VGhlbWVDbGFzczogc3RyaW5nXG4gICAgZGVmYXVsdExvY2FsZTogc3RyaW5nXG4gICAgZGlzYWJsZVBpZENoZWNrPzogYm9vbGVhblxuICAgIGlzTXVsdGlsaW5ndWFsRW5hYmxlZD86IGJvb2xlYW5cbiAgICBmb250U2l6ZXM6IElGb250U2l6ZVtdXG4gICAgaXNDb250ZW50RG93bmxvYWRBdmFpbGFibGU6IGJvb2xlYW5cbiAgICBpbmRleEh0bWxNZXRhOiBJSW5kZXhIdG1sTWV0YVxuICAgIGtleWNsb2FrOiBJS2V5Y2xvYWtcbiAgICBsb2NhbHM6IElMb2NhbHNDb25maWdbXVxuICAgIG1pY3Jvc29mdDogSU1pY3Jvc29mdFxuICAgIHRlbGVtZXRyeUNvbmZpZzogSVRlbGVtZXRyeUNvbmZpZ1xuICAgIHRoZW1lczogSVRoZW1lW11cbiAgICBsb2dvczogSUxvZ29zXG4gICAgc291cmNlcz86IElTb3VyY2VMb2dvW11cbiAgICBtYWlsSWRzOiBJTWFpbElkc1xuICAgIGRldGFpbHM6IElEZXRhaWxzXG4gICAgdmFsaWRNYWlsSWRFeHRlbnNpb25zRm9yTWFpbE1lOiBzdHJpbmdbXVxuICAgIG92ZXJyaWRlVGhlbWVDaGFuZ2VzOiBJT3ZlcnJpZGVUaGVtZUNoYW5nZXNcbiAgICBkZWZhdWx0RmVhdHVyZUNvbmZpZ3M6IHtcbiAgICAgIGVycm9yOiBzdHJpbmdcbiAgICB9XG4gICAgYmFja2dyb3VuZHM6IHtcbiAgICAgIHByaW1hcnlOYXZCYXI6IE5zUGFnZS5JTmF2QmFja2dyb3VuZFxuICAgICAgcGFnZU5hdkJhcjogTnNQYWdlLklOYXZCYWNrZ3JvdW5kXG4gICAgfVxuICAgIGZlYXR1cmVkQXBwczogc3RyaW5nW11cbiAgICBwcmltYXJ5TmF2QmFyQ29uZmlnOiBJUHJpbWFyeU5hdmJhckNvbmZpZ1xuICAgIG9yZzogc3RyaW5nW11cbiAgICByb290T3JnOiBzdHJpbmdcbiAgICBpbnRyYW5ldElmcmFtZVVybHM/OiBzdHJpbmdbXVxuICAgIHNob3dOYXZCYXJJblNldHVwPzogYm9vbGVhblxuICAgIGludHJhbmV0VXJsVG9DaGVjaz86IHN0cmluZ1xuICAgIGludHJvVmlkZW86IElQYXRoXG4gICAgdG91clZpZGVvOiBJUGF0aFxuICAgIGlzRG93bmxvYWRhYmxlU291cmNlPzogSVBhdGhcbiAgICBpc0Rvd25sb2FkYWJsZUlvc1Jlc291cmNlPzogSVBhdGhcbiAgICBpc0Rvd25sb2FkYWJsZUFuZHJvaWRSZXNvdXJjZT86IElQYXRoXG4gICAgc291cmNlRmllbGRzVXNlckF1dG9jb21wbGV0ZT86IHN0cmluZ1tdXG4gICAgZm9yZ290UGFzc3dvcmRDb25maWc/OiBJRm9yZ290UGFzc3dvcmRcbiAgICBodWJzOiBJSHVic1tdXG4gICAgY291cnNlQ29udGVudFBhdGg/OiBzdHJpbmdcbiAgICBwb3J0YWxVcmxzOiBJUG9ydGFsVXJscyB8IHVuZGVmaW5lZFxuICAgIHBvc2l0aW9uczogYW55XG4gICAgd2Vic2l0ZWxhbmd1YWdlczogYW55W11cbiAgICBwcm9maWxlVGltZWx5TnVkZ2VzOiBhbnksXG4gICAgbnBzQ2F0ZWdvcnk/OiBzdHJpbmdcbiAgICBjb21wZW50ZW5jeT86IGFueVxuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVBvcnRhbFVybHMge1xuICAgIGlnb3Q6IHN0cmluZyxcbiAgICBzcHY6IHN0cmluZyxcbiAgICBtZG86IHN0cmluZyxcbiAgICBjYmM6IHN0cmluZyxcbiAgICBjYnA6IHN0cmluZyxcbiAgICBmcmFjOiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElGb3Jnb3RQYXNzd29yZCB7XG4gICAgbG9jYWw/OiBzdHJpbmdcbiAgICBlbnRlcnByaXNlPzogc3RyaW5nXG4gICAgc29jaWFsPzogc3RyaW5nXG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJU291cmNlTG9nbyB7XG4gICAgc291cmNlTmFtZT86IHN0cmluZ1xuICAgIHNvdXJjZUlkPzogc3RyaW5nXG4gICAgbG9nbz86IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVBhdGgge1xuICAgIFtrZXk6IHN0cmluZ106IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUh1YnMge1xuICAgIGFjdGl2ZTogYm9vbGVhblxuICAgIGRlc2M6IHN0cmluZ1xuICAgIGh1Ym5hbWU6IHN0cmluZ1xuICAgIGljb246IHN0cmluZ1xuICAgIHBhdGg6IHN0cmluZyxcbiAgICBvcmRlcjogbnVtYmVyXG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJSW5kZXhIdG1sTWV0YSB7XG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgICBvcGVuU2VhcmNoVXJsPzogc3RyaW5nXG4gICAgd2VibWFuaWZlc3Q6IHN0cmluZ1xuICAgIHhJY29uPzogc3RyaW5nXG4gICAgcG5nSWNvbj86IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUZvbnRTaXplIHtcbiAgICBiYXNlRm9udFNpemU6IHN0cmluZ1xuICAgIGZvbnRDbGFzczogc3RyaW5nXG4gICAgc2NhbGU6IG51bWJlclxuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUtleWNsb2FrIHtcbiAgICBkZWZhdWx0aWRwSGludDogJ0UnIHwgJ04nIHwgJ1MnXG4gICAgaXNMb2dpbkhpZGRlbjogYm9vbGVhblxuICAgIGJlYXJlckV4Y2x1ZGVkVXJsczogc3RyaW5nW11cbiAgICBjbGllbnRJZDogc3RyaW5nXG4gICAga2V5OiBzdHJpbmdcbiAgICByZWFsbTogc3RyaW5nXG4gICAgdXJsOiBzdHJpbmdcbiAgICBjaGFuZ2VQYXNzd29yZFVybD86IHN0cmluZ1xuICAgIG9uTG9hZD86ICdjaGVjay1zc28nIHwgJ2xvZ2luLXJlcXVpcmVkJ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSUxvY2Fsc0NvbmZpZyB7XG4gICAgaXNBdmFpbGFibGU6IGJvb2xlYW5cbiAgICBpc0VuYWJsZWQ6IGJvb2xlYW5cbiAgICBsb2NhbHM6IHN0cmluZ1tdXG4gICAgcGF0aDogc3RyaW5nXG4gICAgaXNSVEw6IGJvb2xlYW5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElNaWNyb3NvZnQge1xuICAgIGNsaWVudElkOiBzdHJpbmdcbiAgICBkZWZhdWx0RW1haWxJZDogc3RyaW5nXG4gICAgdGVuYW50OiBzdHJpbmdcbiAgICB2YWxpZEVtYWlsRXh0ZW5zaW9uczogc3RyaW5nW11cbiAgICBpc0NvbmZpZ3VyZWQ6IGJvb2xlYW5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElUaGVtZSB7XG4gICAgY29sb3I6IElUaGVtZUNvbG9yXG4gICAgdGhlbWVGaWxlOiBzdHJpbmdcbiAgICB0aGVtZUNsYXNzOiBzdHJpbmdcbiAgICB0aGVtZU5hbWU6IHN0cmluZ1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJVGhlbWVDb2xvciB7XG4gICAgYWNjZW50OiBzdHJpbmdcbiAgICBwcmltYXJ5OiBzdHJpbmdcbiAgICB3YXJuOiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElPdmVycmlkZVRoZW1lQ2hhbmdlcyB7XG4gICAgaXNFbmFibGVkOiBib29sZWFuXG4gICAgZGVza3RvcDogSURlc2t0b3BcbiAgICBtV2ViOiBJTVdlYlxuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSURlc2t0b3Age1xuICAgIGFuaW1hdGlvbkR1cmF0aW9uOiBudW1iZXJcbiAgICBsb2dvVXJsOiBzdHJpbmdcbiAgICBsb2dvVGV4dDogc3RyaW5nXG4gICAgbG9nb0Rpc3BsYXlUaW1lOiBudW1iZXJcbiAgICBiYWNrZ3JvdW5kVGhlbWU6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSU1XZWIge1xuICAgIGxvZ29Vcmw6IHN0cmluZ1xuICAgIGxvZ29UZXh0OiBzdHJpbmdcbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElMb2dvcyB7XG4gICAgYXBwOiBzdHJpbmdcbiAgICBhcHBUcmFuc3BhcmVudDogc3RyaW5nXG4gICAgYXBwU2Vjb25kYXJ5OiBzdHJpbmdcbiAgICBhYm91dEZvb3Rlcjogc3RyaW5nXG4gICAgYWJvdXRIZWFkZXI6IHN0cmluZ1xuICAgIGFwcEJvdHRvbU5hdj86IHN0cmluZ1xuICAgIGNvbXBhbnk6IHN0cmluZ1xuICAgIGRldmVsb3BlZEJ5OiBzdHJpbmdcbiAgICBwb3dlcmVkQnk6IHN0cmluZ1xuICAgIGRlZmF1bHRDb250ZW50Pzogc3RyaW5nXG4gICAgZGVmYXVsdFNvdXJjZUxvZ28/OiBzdHJpbmdcbiAgICBsYW5kaW5nTG9nbzogc3RyaW5nXG4gICAgbmF2YmFyTG9nbz86IHN0cmluZ1xuICAgIHBsYXlMaXN0TG9nbz86IHN0cmluZ1xuICAgIHRodW1wc1VwPzogc3RyaW5nXG5cbiAgfVxuICBleHBvcnQgaW50ZXJmYWNlIElNYWlsSWRzIHtcbiAgICBjb250YWN0VXM6IHN0cmluZ1xuICAgIGRlZmF1bHQ6IHN0cmluZ1xuICAgIHN1cHBvcnQ6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSURldGFpbHMge1xuICAgIGFwcE5hbWU6IHN0cmluZ1xuICB9XG4gIGV4cG9ydCBpbnRlcmZhY2UgSVByaW1hcnlOYXZiYXJDb25maWcge1xuICAgIG1lZGl1bVNjcmVlbjogSVByaW1hcnlOYXZCYXJTY3JlZW5cbiAgICBzbWFsbFNjcmVlbjogSVByaW1hcnlOYXZCYXJTY3JlZW5cbiAgfVxuICBpbnRlcmZhY2UgSVByaW1hcnlOYXZCYXJTY3JlZW4ge1xuICAgIGxlZnQ6IElQcmltYXJ5TmF2QmFyU2lkZVtdXG4gICAgcmlnaHQ6IElQcmltYXJ5TmF2QmFyU2lkZVtdXG4gIH1cbiAgaW50ZXJmYWNlIElQcmltYXJ5TmF2QmFyU2lkZSB7XG4gICAgdHlwZTogJ3dpZGdldEJ1dHRvbicgfCAnZmVhdHVyZUJ1dHRvbidcbiAgICBjb25maWc6IE5zV2lkZ2V0UmVzb2x2ZXIuSVJlbmRlckNvbmZpZ1dpdGhBbnlEYXRhIHwgTnNQYWdlLklOYXZMaW5rXG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElUZWxlbWV0cnlDb25maWcge1xuICAgIHBkYXRhOiB7XG4gICAgICBpZDogc3RyaW5nXG4gICAgICB2ZXI6IHN0cmluZ1xuICAgICAgcGlkOiBzdHJpbmdcbiAgICB9XG4gICAgb2JqZWN0OiB7XG4gICAgICB2ZXI6IHN0cmluZ1xuICAgICAgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZFxuICAgIH1cbiAgICB1aWQ6IHN0cmluZyB8IG51bGxcbiAgICBhdXRodG9rZW4/OiBzdHJpbmdcbiAgICBlbnY6IHN0cmluZ1xuICAgIGNoYW5uZWw6IHN0cmluZ1xuICAgIGJhdGNoc2l6ZTogbnVtYmVyXG4gICAgaG9zdDogc3RyaW5nXG4gICAgZW5kcG9pbnQ6IHN0cmluZ1xuICAgIGFwaXNsdWc6IHN0cmluZ1xuICAgIHNpZDogc3RyaW5nXG4gICAgcHVibGljRW5kcG9pbnQ6IHN0cmluZ1xuICAgIHByb3RlY3RlZEVuZHBvaW50OiBzdHJpbmdcbiAgfVxufVxuXG5leHBvcnQgbmFtZXNwYWNlIE5zQXBwc0NvbmZpZyB7XG4gIGV4cG9ydCB0eXBlIFRJY29uVHlwZSA9ICdtYXQtaWNvbicgfCAndXJsJ1xuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSUFwcHNDb25maWcge1xuICAgIGdyb3VwczogSUdyb3VwW11cbiAgICBmZWF0dXJlczogeyBbaWQ6IHN0cmluZ106IElGZWF0dXJlIH1cbiAgICB0b3VyR3VpZGU/OiBzdHJpbmdbXVtdXG4gIH1cblxuICBleHBvcnQgaW50ZXJmYWNlIElHcm91cCB7XG4gICAgaWQ6IHN0cmluZ1xuICAgIGljb25UeXBlOiBzdHJpbmdcbiAgICBpY29uOiBzdHJpbmdcbiAgICBrZXl3b3Jkczogc3RyaW5nW11cbiAgICBuYW1lOiBzdHJpbmdcbiAgICB0b29sVGlwOiBzdHJpbmdcbiAgICBmZWF0dXJlSWRzOiBzdHJpbmdbXVxuICAgIHN0cmlwQmFja2dyb3VuZD86IHN0cmluZ1xuICAgIGhhc1JvbGU6IHN0cmluZ1tdXG4gIH1cblxuICAvLyBleHBvcnQgaW50ZXJmYWNlIElHcm91cFdpdGhGZWF0dXJlcyBleHRlbmRzIElHcm91cCB7XG4gIC8vICAgZmVhdHVyZXM6IElGZWF0dXJlW11cbiAgLy8gfVxuICBleHBvcnQgaW50ZXJmYWNlIElGZWF0dXJlIHtcbiAgICBuYW1lOiBzdHJpbmdcbiAgICBpZDogc3RyaW5nXG4gICAgdXJsOiBzdHJpbmdcbiAgICBwZXJtaXNzaW9uOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHsgYWxsOiBzdHJpbmdbXTsgc29tZTogc3RyaW5nW107IG5vbmU6IHN0cmluZ1tdIH1cbiAgICBpY29uVHlwZTogVEljb25UeXBlXG4gICAgaWNvbjogc3RyaW5nXG4gICAga2V5d29yZHM6IHN0cmluZ1tdXG4gICAgdG9vbFRpcDogc3RyaW5nXG4gICAgYWNjZXNzS2V5OiBzdHJpbmdcbiAgICBzdGF0dXM/OiAnZWFybHlBY2Nlc3MnIHwgJ2xpdmUnIHwgJ2FscGhhJyB8ICdiZXRhJ1xuICAgIHNob3J0TmFtZTogc3RyaW5nXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgICBiYWRnZUVuZHBvaW50Pzogc3RyaW5nXG4gICAgbW9iaWxlQXBwRnVuY3Rpb24/OiBzdHJpbmdcbiAgICBjb2xvcj86IHN0cmluZ1xuICAgIHRhcmdldD86IHN0cmluZ1xuICB9XG59XG5cbmV4cG9ydCBuYW1lc3BhY2UgTnNVc2VyIHtcbiAgZXhwb3J0IGludGVyZmFjZSBJVXNlclByb2ZpbGUge1xuICAgIHVzZXJJZDogc3RyaW5nXG4gICAgZW1haWw/OiBzdHJpbmdcbiAgICBkZXBhcnRtZW50TmFtZT86IHN0cmluZ1xuICAgIHVzZXJOYW1lPzogc3RyaW5nXG4gICAgZmlyc3ROYW1lPzogc3RyaW5nXG4gICAgc3VyTmFtZT86IHN0cmluZ1xuICAgIG1pZGRsZU5hbWU/OiBzdHJpbmdcbiAgICBsYXN0TmFtZT86IHN0cmluZ1xuICAgIHJvb3RPcmdJZD86IHN0cmluZ1xuICAgIHJvb3RPcmdOYW1lPzogc3RyaW5nXG4gICAgcHJvZmlsZUltYWdlPzogc3RyaW5nXG4gICAgZ2l2ZW5OYW1lPzogc3RyaW5nXG4gICAgY291bnRyeT86IG51bGwgfCBzdHJpbmdcbiAgICB1bml0Pzogc3RyaW5nIHwgbnVsbFxuICAgIHNvdXJjZV9wcm9maWxlX3BpY3R1cmU/OiBudWxsIHwgc3RyaW5nXG4gICAgZGVhbGVyQ29kZT86IG51bGwgfCBzdHJpbmdcbiAgICBpc01hbmFnZXI/OiBib29sZWFuXG4gICAgY29tcGV0ZW5jaWVzPzogYW55XG4gICAgc3lzdGVtVG9waWNzPzogYW55XG4gICAgZGVzaXJlZFRvcGljcz86IGFueVxuICAgIGRlc2lyZWRDb21wZXRlbmNpZXM/OiBhbnlcbiAgICB1c2VyUm9sZXM/OiBhbnlcbiAgICBwcm9maWxlVXBkYXRlQ29tcGxldGlvbj86IG51bWJlclxuICAgIHByb2ZpbGVJbWFnZVVybD86IHN0cmluZ1xuICAgIHByb2Zlc3Npb25hbERldGFpbHM/OiBhbnlcbiAgICB3ZWJQb3J0YWxMYW5nPzogYW55LFxuICAgIGRlcGFydG1lbnRJbWc/OiBhbnlcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSU5vZGViYlVzZXJQcm9maWxlIHtcbiAgICB1c2VybmFtZTogc3RyaW5nXG4gICAgZW1haWw6IHN0cmluZ1xuICB9XG5cbiAgZXhwb3J0IGludGVyZmFjZSBJVXNlclBpZFByb2ZpbGUge1xuICAgIGtpZF91cGRhdGVkOiBib29sZWFuXG4gICAgdXNlcjogSVVzZXJcbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVVzZXJQaWRQcm9maWxlVjIge1xuICAgIGtpZF91cGRhdGVkOiBib29sZWFuXG4gICAgcmVzdWx0OiB7XG4gICAgICByZXNwb25zZTogSVVzZXJWMlxuICAgIH1cbiAgfVxuXG4gIGV4cG9ydCBpbnRlcmZhY2UgSVVzZXJQaWRQcm9maWxlVmVyMiB7XG4gICAgcmVzdWx0OiB7XG4gICAgICBVc2VyUHJvZmlsZTogSVVzZXJWZXIyXG4gICAgfVxuICB9XG4gIGludGVyZmFjZSBJU291cmNlRGF0YSB7XG4gICAgR0lEOiBzdHJpbmdcbiAgICBTTkFNUFJFOiBzdHJpbmdcbiAgICBTTkFNQUREOiBzdHJpbmdcbiAgICBMQVNUTkFNRTogc3RyaW5nXG4gICAgU046IHN0cmluZ1xuICAgIEdJVkVOTkFNRTogc3RyaW5nXG4gICAgTklDS05BTUU6IHN0cmluZ1xuICAgIFBSRUZFUlJFRFNOOiBzdHJpbmdcbiAgICBQRVJTT05BTFRJVExFOiBzdHJpbmdcbiAgICBNT0JJTEU6IHN0cmluZ1xuICAgIE1BSUw6IHN0cmluZ1xuICAgIERFUEFSVE1FTlRURVhUOiBzdHJpbmdcbiAgICBDT1NUTE9DQVRJT05VTklUOiBzdHJpbmdcbiAgICBDT1NUTE9DQVRJT046IHN0cmluZ1xuICAgIE9SR0lEOiBzdHJpbmdcbiAgICBNR01UUkVTUDogc3RyaW5nXG4gICAgVVRDOiBzdHJpbmdcbiAgICBDTkFNRUVORzogc3RyaW5nXG4gICAgTE5BTUVJTlQ6IHN0cmluZ1xuICAgIFVTRVJUWVBFOiBzdHJpbmdcbiAgICBTVEFUVVM6IHN0cmluZ1xuICAgIENPTlRSQUNUU1RBVFVTOiBzdHJpbmdcbiAgfVxuXG4gIGludGVyZmFjZSBJVXNlciB7XG4gICAgd2lkOiBzdHJpbmdcbiAgICByb290X29yZzogc3RyaW5nXG4gICAgb3JnOiBzdHJpbmdcbiAgICBpc19hY3RpdmU/OiBhbnlcbiAgICBhY2NvdW50X2V4cGlyeV9kYXRlPzogYW55XG4gICAga2lkOiBzdHJpbmdcbiAgICBpbXBvcnRlZF9zb3VyY2VfbmFtZTogc3RyaW5nXG4gICAgc291cmNlX2lkOiBzdHJpbmdcbiAgICB1c2VybmFtZT86IGFueVxuICAgIGZpcnN0X25hbWU6IHN0cmluZ1xuICAgIGxhc3RfbmFtZTogc3RyaW5nXG4gICAgbWlkZGxlX25hbWU/OiBhbnlcbiAgICBrbm93bl9hczogc3RyaW5nXG4gICAgc2FsdXRhdGlvbj86IGFueVxuICAgIGVtYWlsOiBzdHJpbmdcbiAgICBnZW5kZXI/OiBhbnlcbiAgICBkb2I/OiBhbnlcbiAgICBsYW5ndWFnZXNfa25vd24/OiBhbnlcbiAgICBwcmVmZXJyZWRfbGFuZ3VhZ2U/OiBhbnlcbiAgICBzb3VyY2VfcHJvZmlsZV9waWN0dXJlPzogYW55XG4gICAgcmVzaWRlbmNlX2NvdW50cnk6IHN0cmluZ1xuICAgIHJlc2lkZW5jZV9zdGF0ZT86IGFueVxuICAgIHJlc2lkZW5jZV9jaXR5OiBzdHJpbmdcbiAgICBjb250YWN0X3Bob25lX251bWJlcl9vZmZpY2U/OiBhbnlcbiAgICBjb250YWN0X3Bob25lX251bWJlcl9ob21lPzogYW55XG4gICAgY29udGFjdF9waG9uZV9udW1iZXJfcGVyc29uYWw6IHN0cmluZ1xuICAgIGVtcGxveWVtZW50X3N0YXR1cz86IGFueVxuICAgIGNvbnRyYWN0X3R5cGU/OiBhbnlcbiAgICBqb2JfdGl0bGU/OiBhbnlcbiAgICBqb2Jfcm9sZT86IGFueVxuICAgIGRlcGFydG1lbnRfbmFtZTogc3RyaW5nXG4gICAgdW5pdF9uYW1lPzogYW55XG4gICAgb3JnYW5pemF0aW9uX2xvY2F0aW9uX2NvdW50cnk/OiBhbnlcbiAgICBvcmdhbml6YXRpb25fbG9jYXRpb25fc3RhdGU/OiBhbnlcbiAgICBvcmdhbml6YXRpb25fbG9jYXRpb25fY2l0eT86IGFueVxuICAgIHRpbWVfaW5zZXJ0ZWQ6IERhdGVcbiAgICB0aW1lX3VwZGF0ZWQ6IERhdGVcbiAgICBqc29uX3VubWFwcGVkX2ZpZWxkcz86IGFueVxuICAgIHNvdXJjZV9kYXRhOiBJU291cmNlRGF0YVxuICB9XG4gIGludGVyZmFjZSBJUm9vdE9yZyB7XG4gICAgZGF0ZVRpbWU6IHN0cmluZ1xuICAgIHByZWZlcnJlZExhbmd1YWdlOiBzdHJpbmdcbiAgICBrZXlzOiB7fVxuICAgIGNoYW5uZWw6IHN0cmluZ1xuICAgIGFwcHJvdmVkQnk6IHN0cmluZ1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmdcbiAgICB1cGRhdGVkRGF0ZTogc3RyaW5nXG4gICAgYWRkcmVzc0lkOiBzdHJpbmdcbiAgICBvcmdUeXBlOiBzdHJpbmdcbiAgICBwcm92aWRlcjogc3RyaW5nXG4gICAgb3JnQ29kZTogc3RyaW5nXG4gICAgbG9jYXRpb25JZDogc3RyaW5nXG4gICAgdGhlbWU6IHN0cmluZ1xuICAgIGlkOiBzdHJpbmdcbiAgICBpc0FwcHJvdmVkOiBib29sZWFuXG4gICAgY29tbXVuaXR5SWQ6IHN0cmluZ1xuICAgIHNsdWc6IHN0cmluZ1xuICAgIGVtYWlsOiBzdHJpbmdcbiAgICBpc1NTT0VuYWJsZWQ6IGJvb2xlYW5cbiAgICB0aHVtYm5haWw6IHN0cmluZ1xuICAgIHVwZGF0ZWRCeTogc3RyaW5nXG4gICAgb3JnTmFtZTogc3RyaW5nXG4gICAgbG9jYXRpb25JZHM6IFtdXG4gICAgZXh0ZXJuYWxJZDogc3RyaW5nXG4gICAgaXNSb290T3JnOiBib29sZWFuXG4gICAgcm9vdE9yZ0lkOiBzdHJpbmdcbiAgICBpbWdVcmw6IHN0cmluZ1xuICAgIGFwcHJvdmVkRGF0ZTogc3RyaW5nXG4gICAgb3JnVHlwZUlkOiBzdHJpbmdcbiAgICBob21lVXJsOiBzdHJpbmdcbiAgICBpc0RlZmF1bHQ6IGJvb2xlYW5cbiAgICBjcmVhdGVkRGF0ZTogc3RyaW5nXG4gICAgY29udGFjdERldGFpbDogc3RyaW5nXG4gICAgcGFyZW50T3JnSWQ6IHN0cmluZ1xuICAgIGNyZWF0ZWRCeTogc3RyaW5nXG4gICAgaGFzaFRhZ0lkOiBzdHJpbmdcbiAgICBub09mTWVtYmVyczogc3RyaW5nXG4gICAgc3RhdHVzOiBudW1iZXJcbiAgfVxuICBpbnRlcmZhY2UgSU9yZyB7XG4gICAgdXBkYXRlZEJ5OiBzdHJpbmdcbiAgICBvcmdhbmlzYXRpb25JZDogc3RyaW5nXG4gICAgb3JnTmFtZTogc3RyaW5nXG4gICAgYWRkZWRCeU5hbWU6IHN0cmluZ1xuICAgIGFkZGVkQnk6IHN0cmluZ1xuICAgIHJvbGVzOiBzdHJpbmdbXVxuICAgIGFwcHJvdmVkQnk6IHN0cmluZ1xuICAgIHVwZGF0ZWREYXRlOiBzdHJpbmdcbiAgICB1c2VySWQ6IHN0cmluZ1xuICAgIGFwcHJvdmFsZGF0ZTogc3RyaW5nXG4gICAgaXNEZWxldGVkOiBib29sZWFuXG4gICAgcGFyZW50T3JnSWQ6IHN0cmluZ1xuICAgIGhhc2hUYWdJZDogc3RyaW5nXG4gICAgaXNSZWplY3RlZDogYm9vbGVhblxuICAgIHBvc2l0aW9uOiBzdHJpbmdcbiAgICBpZDogc3RyaW5nXG4gICAgb3Jnam9pbmRhdGU6IHN0cmluZ1xuICAgIGlzQXBwcm92ZWQ6IGJvb2xlYW5cbiAgICBvcmdMZWZ0RGF0ZTogc3RyaW5nXG4gIH1cbiAgaW50ZXJmYWNlIElVc2VyVjIge1xuICAgIHN1ck5hbWU6IGFueVxuICAgIG1hc2tlZFBob25lOiBzdHJpbmdcbiAgICByb290T3JnTmFtZTogc3RyaW5nXG4gICAgc3ViamVjdDogW11cbiAgICBjaGFubmVsOiBzdHJpbmdcbiAgICBsYW5ndWFnZTogW11cbiAgICB1cGRhdGVkRGF0ZTogc3RyaW5nXG4gICAgbWFuYWdlZEJ5OiBzdHJpbmdcbiAgICBmbGFnc1ZhbHVlOiBudW1iZXJcbiAgICBpZDogc3RyaW5nXG4gICAgcmVjb3ZlcnlFbWFpbDogc3RyaW5nXG4gICAgaWRlbnRpZmllcjogc3RyaW5nXG4gICAgdGh1bWJuYWlsOiBzdHJpbmdcbiAgICBwcm9maWxlVmlzaWJpbGl0eTogW11cbiAgICB1cGRhdGVkQnk6IHN0cmluZ1xuICAgIGFjY2Vzc2NvZGU6IHN0cmluZ1xuICAgIGxvY2F0aW9uSWRzOiBbXVxuICAgIGV4dGVybmFsSWRzOiBbXVxuICAgIHJlZ2lzdHJ5SWQ6IHN0cmluZ1xuICAgIHJvb3RPcmdJZDogc3RyaW5nXG4gICAgcHJldlVzZWRFbWFpbDogc3RyaW5nXG4gICAgZmlyc3ROYW1lOiBzdHJpbmdcbiAgICB0bmNBY2NlcHRlZE9uOiBzdHJpbmdcbiAgICBwaG9uZTogc3RyaW5nXG4gICAgZG9iOiBzdHJpbmdcbiAgICBncmFkZTogW11cbiAgICBjdXJyZW50TG9naW5UaW1lOiBzdHJpbmdcbiAgICB1c2VyVHlwZTogc3RyaW5nXG4gICAgc3RhdHVzOiBudW1iZXJcbiAgICBsYXN0TmFtZTogc3RyaW5nXG4gICAgZ2VuZGVyOiBzdHJpbmdcbiAgICByb2xlczogc3RyaW5nW11cbiAgICBwcmV2VXNlZFBob25lOiBzdHJpbmdcbiAgICBzdGF0ZVZhbGlkYXRlZDogYm9vbGVhblxuICAgIGlzRGVsZXRlZDogYm9vbGVhblxuICAgIG9yZ2FuaXNhdGlvbnM6IElPcmdbXVxuICAgIGNvdW50cnlDb2RlOiBzdHJpbmdcbiAgICBtYXNrZWRFbWFpbDogc3RyaW5nXG4gICAgdGVtcFBhc3N3b3JkOiBzdHJpbmdcbiAgICBlbWFpbDogc3RyaW5nXG4gICAgcm9vdE9yZzogSVJvb3RPcmdcbiAgICBwcm9maWxlU3VtbWFyeTogc3RyaW5nXG4gICAgcGhvbmVWZXJpZmllZDogYm9vbGVhblxuICAgIHJlY292ZXJ5UGhvbmU6IHN0cmluZ1xuICAgIHVzZXJOYW1lOiBzdHJpbmdcbiAgICB1c2VySWQ6IHN0cmluZ1xuICAgIGxhc3RMb2dpblRpbWU6IHN0cmluZ1xuICAgIGVtYWlsVmVyaWZpZWQ6IHRydWVcbiAgICBmcmFtZXdvcms6IHt9XG4gICAgY3JlYXRlZERhdGU6IHN0cmluZ1xuICAgIGNyZWF0ZWRCeTogc3RyaW5nXG4gICAgbG9jYXRpb246IHN0cmluZ1xuICAgIHRuY0FjY2VwdGVkVmVyc2lvbjogc3RyaW5nXG4gIH1cblxuICBpbnRlcmZhY2UgSVVzZXJWZXIyIHtcbiAgICAnZmlyc3RuYW1lJzogc3RyaW5nLFxuICAgICdtb3RoZXJUb25ndWUnOiBzdHJpbmcsXG4gICAgJ3NlY29uZGFyeUVtYWlsJzogc3RyaW5nLFxuICAgICdnZW5kZXInOiBzdHJpbmcsXG4gICAgJ0B0eXBlJzogc3RyaW5nLFxuICAgICdtb2JpbGUnOiBudW1iZXIsXG4gICAgJ21pZGRsZW5hbWUnOiBzdHJpbmcsXG4gICAgJ3RlbGVwaG9uZSc6IG51bWJlcixcbiAgICAnb3NpZCc6IHN0cmluZyxcbiAgICAncHJpbWFyeUVtYWlsVHlwZSc6IHN0cmluZyxcbiAgICAna25vd25MYW5ndWFnZXMnOiBJTGFuZ3VhZ2VzW10sXG4gICAgJ3dpZCc6IHN0cmluZyxcbiAgICAnbmF0aW9uYWxpdHknOiBzdHJpbmcsXG4gICAgJ3N1cm5hbWUnOiBzdHJpbmcsXG4gICAgJ2RvYic6IHN0cmluZyxcbiAgICAnY2F0ZWdvcnknOiBzdHJpbmcsXG4gICAgJ3ByaW1hcnlFbWFpbCc6IHN0cmluZyxcbiAgICAnbWFyaXRhbFN0YXR1cyc6IHN0cmluZyxcbiAgICAncmVzaWRlbmNlQWRkcmVzcyc6IHN0cmluZyxcbiAgICAncmVzdWx0JzogYW55XG4gIH1cbiAgZXhwb3J0IGludGVyZmFjZSBJTGFuZ3VhZ2VzIHtcbiAgICBuYW1lOiBzdHJpbmdcbiAgfVxufVxuIl19