parse-server 9.3.0-alpha.1 → 9.3.0-alpha.2
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.
- package/lib/Config.js +2 -4
- package/lib/Options/Definitions.js +2 -3
- package/lib/Options/docs.js +2 -2
- package/lib/Options/index.js +1 -1
- package/package.json +2 -2
|
@@ -714,8 +714,7 @@ module.exports.PagesOptions = {
|
|
|
714
714
|
},
|
|
715
715
|
pagesPath: {
|
|
716
716
|
env: 'PARSE_SERVER_PAGES_PAGES_PATH',
|
|
717
|
-
help: "The path to the pages directory; this also defines where the static endpoint '/apps' points to. Default is the './public/' directory."
|
|
718
|
-
default: './public'
|
|
717
|
+
help: "The path to the pages directory; this also defines where the static endpoint '/apps' points to. Default is the './public/' directory of the parse-server module."
|
|
719
718
|
},
|
|
720
719
|
placeholders: {
|
|
721
720
|
env: 'PARSE_SERVER_PAGES_PLACEHOLDERS',
|
|
@@ -1390,4 +1389,4 @@ module.exports.LogLevels = {
|
|
|
1390
1389
|
default: 'info'
|
|
1391
1390
|
}
|
|
1392
1391
|
};
|
|
1393
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYXJzZXJzIiwicmVxdWlyZSIsIm1vZHVsZSIsImV4cG9ydHMiLCJTY2hlbWFPcHRpb25zIiwiYWZ0ZXJNaWdyYXRpb24iLCJlbnYiLCJoZWxwIiwiYmVmb3JlTWlncmF0aW9uIiwiZGVmaW5pdGlvbnMiLCJyZXF1aXJlZCIsImFjdGlvbiIsIm9iamVjdFBhcnNlciIsImRlZmF1bHQiLCJkZWxldGVFeHRyYUZpZWxkcyIsImJvb2xlYW5QYXJzZXIiLCJrZWVwVW5rbm93bkluZGV4ZXMiLCJsb2NrU2NoZW1hcyIsInJlY3JlYXRlTW9kaWZpZWRGaWVsZHMiLCJzdHJpY3QiLCJQYXJzZVNlcnZlck9wdGlvbnMiLCJhY2NvdW50TG9ja291dCIsInR5cGUiLCJhbGxvd0NsaWVudENsYXNzQ3JlYXRpb24iLCJhbGxvd0N1c3RvbU9iamVjdElkIiwiYWxsb3dFeHBpcmVkQXV0aERhdGFUb2tlbiIsImFsbG93SGVhZGVycyIsImFycmF5UGFyc2VyIiwiYWxsb3dPcmlnaW4iLCJhbmFseXRpY3NBZGFwdGVyIiwibW9kdWxlT3JPYmplY3RQYXJzZXIiLCJhcHBJZCIsImFwcE5hbWUiLCJhdXRoIiwiY2FjaGVBZGFwdGVyIiwiY2FjaGVNYXhTaXplIiwibnVtYmVyUGFyc2VyIiwiY2FjaGVUVEwiLCJjbGllbnRLZXkiLCJjbG91ZCIsImNsdXN0ZXIiLCJudW1iZXJPckJvb2xlYW5QYXJzZXIiLCJjb2xsZWN0aW9uUHJlZml4IiwiY29udmVydEVtYWlsVG9Mb3dlcmNhc2UiLCJjb252ZXJ0VXNlcm5hbWVUb0xvd2VyY2FzZSIsImN1c3RvbVBhZ2VzIiwiZGF0YWJhc2VBZGFwdGVyIiwiZGF0YWJhc2VPcHRpb25zIiwiZGF0YWJhc2VVUkkiLCJkZWZhdWx0TGltaXQiLCJkaXJlY3RBY2Nlc3MiLCJkb3ROZXRLZXkiLCJlbWFpbEFkYXB0ZXIiLCJlbWFpbFZlcmlmeVRva2VuUmV1c2VJZlZhbGlkIiwiZW1haWxWZXJpZnlUb2tlblZhbGlkaXR5RHVyYXRpb24iLCJlbmFibGVBbm9ueW1vdXNVc2VycyIsImVuYWJsZUNvbGxhdGlvbkNhc2VDb21wYXJpc29uIiwiZW5hYmxlRXhwcmVzc0Vycm9ySGFuZGxlciIsImVuYWJsZUluc2VjdXJlQXV0aEFkYXB0ZXJzIiwiZW5hYmxlU2FuaXRpemVkRXJyb3JSZXNwb25zZSIsImVuY3J5cHRpb25LZXkiLCJlbmZvcmNlUHJpdmF0ZVVzZXJzIiwiZXhwaXJlSW5hY3RpdmVTZXNzaW9ucyIsImV4dGVuZFNlc3Npb25PblVzZSIsImZpbGVLZXkiLCJmaWxlc0FkYXB0ZXIiLCJmaWxlVXBsb2FkIiwiZ3JhcGhRTFBhdGgiLCJncmFwaFFMUHVibGljSW50cm9zcGVjdGlvbiIsImdyYXBoUUxTY2hlbWEiLCJob3N0IiwiaWRlbXBvdGVuY3lPcHRpb25zIiwiamF2YXNjcmlwdEtleSIsImpzb25Mb2dzIiwibGl2ZVF1ZXJ5IiwibGl2ZVF1ZXJ5U2VydmVyT3B0aW9ucyIsImxvZ2dlckFkYXB0ZXIiLCJsb2dMZXZlbCIsImxvZ0xldmVscyIsImxvZ3NGb2xkZXIiLCJtYWludGVuYW5jZUtleSIsIm1haW50ZW5hbmNlS2V5SXBzIiwibWFzdGVyS2V5IiwibWFzdGVyS2V5SXBzIiwibWFzdGVyS2V5VHRsIiwibWF4TGltaXQiLCJtYXhMb2dGaWxlcyIsIm51bWJlck9yU3RyaW5nUGFyc2VyIiwibWF4VXBsb2FkU2l6ZSIsIm1pZGRsZXdhcmUiLCJtb3VudEdyYXBoUUwiLCJtb3VudFBhdGgiLCJtb3VudFBsYXlncm91bmQiLCJvYmplY3RJZFNpemUiLCJwYWdlcyIsInBhc3N3b3JkUG9saWN5IiwicGxheWdyb3VuZFBhdGgiLCJwb3J0IiwicHJlc2VydmVGaWxlTmFtZSIsInByZXZlbnRMb2dpbldpdGhVbnZlcmlmaWVkRW1haWwiLCJib29sZWFuT3JGdW5jdGlvblBhcnNlciIsInByZXZlbnRTaWdudXBXaXRoVW52ZXJpZmllZEVtYWlsIiwicHJvdGVjdGVkRmllbGRzIiwiX1VzZXIiLCJwdWJsaWNTZXJ2ZXJVUkwiLCJwdXNoIiwicmF0ZUxpbWl0IiwicmVhZE9ubHlNYXN0ZXJLZXkiLCJyZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmUiLCJyZXF1ZXN0S2V5d29yZERlbnlsaXN0Iiwia2V5IiwidmFsdWUiLCJyZXN0QVBJS2V5IiwicmV2b2tlU2Vzc2lvbk9uUGFzc3dvcmRSZXNldCIsInNjaGVkdWxlZFB1c2giLCJzY2hlbWEiLCJzZWN1cml0eSIsInNlbmRVc2VyRW1haWxWZXJpZmljYXRpb24iLCJzZXJ2ZXJDbG9zZUNvbXBsZXRlIiwic2VydmVyVVJMIiwic2Vzc2lvbkxlbmd0aCIsInNpbGVudCIsInN0YXJ0TGl2ZVF1ZXJ5U2VydmVyIiwidHJ1c3RQcm94eSIsInVzZXJTZW5zaXRpdmVGaWVsZHMiLCJ2ZXJib3NlIiwidmVyaWZ5U2VydmVyVXJsIiwidmVyaWZ5VXNlckVtYWlscyIsIndlYmhvb2tLZXkiLCJSYXRlTGltaXRPcHRpb25zIiwiZXJyb3JSZXNwb25zZU1lc3NhZ2UiLCJpbmNsdWRlSW50ZXJuYWxSZXF1ZXN0cyIsImluY2x1ZGVNYXN0ZXJLZXkiLCJyZWRpc1VybCIsInJlcXVlc3RDb3VudCIsInJlcXVlc3RNZXRob2RzIiwicmVxdWVzdFBhdGgiLCJyZXF1ZXN0VGltZVdpbmRvdyIsInpvbmUiLCJTZWN1cml0eU9wdGlvbnMiLCJjaGVja0dyb3VwcyIsImVuYWJsZUNoZWNrIiwiZW5hYmxlQ2hlY2tMb2ciLCJQYWdlc09wdGlvbnMiLCJjdXN0b21Sb3V0ZXMiLCJjdXN0b21VcmxzIiwiZW5hYmxlTG9jYWxpemF0aW9uIiwiZW5hYmxlUm91dGVyIiwiZm9yY2VSZWRpcmVjdCIsImxvY2FsaXphdGlvbkZhbGxiYWNrTG9jYWxlIiwibG9jYWxpemF0aW9uSnNvblBhdGgiLCJwYWdlc0VuZHBvaW50IiwicGFnZXNQYXRoIiwicGxhY2Vob2xkZXJzIiwiUGFnZXNSb3V0ZSIsImhhbmRsZXIiLCJtZXRob2QiLCJwYXRoIiwiUGFnZXNDdXN0b21VcmxzT3B0aW9ucyIsImVtYWlsVmVyaWZpY2F0aW9uTGlua0V4cGlyZWQiLCJlbWFpbFZlcmlmaWNhdGlvbkxpbmtJbnZhbGlkIiwiZW1haWxWZXJpZmljYXRpb25TZW5kRmFpbCIsImVtYWlsVmVyaWZpY2F0aW9uU2VuZFN1Y2Nlc3MiLCJlbWFpbFZlcmlmaWNhdGlvblN1Y2Nlc3MiLCJwYXNzd29yZFJlc2V0IiwicGFzc3dvcmRSZXNldExpbmtJbnZhbGlkIiwicGFzc3dvcmRSZXNldFN1Y2Nlc3MiLCJDdXN0b21QYWdlc09wdGlvbnMiLCJjaG9vc2VQYXNzd29yZCIsImV4cGlyZWRWZXJpZmljYXRpb25MaW5rIiwiaW52YWxpZExpbmsiLCJpbnZhbGlkUGFzc3dvcmRSZXNldExpbmsiLCJpbnZhbGlkVmVyaWZpY2F0aW9uTGluayIsImxpbmtTZW5kRmFpbCIsImxpbmtTZW5kU3VjY2VzcyIsInBhcnNlRnJhbWVVUkwiLCJ2ZXJpZnlFbWFpbFN1Y2Nlc3MiLCJMaXZlUXVlcnlPcHRpb25zIiwiY2xhc3NOYW1lcyIsInB1YlN1YkFkYXB0ZXIiLCJyZWRpc09wdGlvbnMiLCJyZWRpc1VSTCIsIndzc0FkYXB0ZXIiLCJMaXZlUXVlcnlTZXJ2ZXJPcHRpb25zIiwiY2FjaGVUaW1lb3V0Iiwia2V5UGFpcnMiLCJ3ZWJzb2NrZXRUaW1lb3V0IiwiSWRlbXBvdGVuY3lPcHRpb25zIiwicGF0aHMiLCJ0dGwiLCJBY2NvdW50TG9ja291dE9wdGlvbnMiLCJkdXJhdGlvbiIsInRocmVzaG9sZCIsInVubG9ja09uUGFzc3dvcmRSZXNldCIsIlBhc3N3b3JkUG9saWN5T3B0aW9ucyIsImRvTm90QWxsb3dVc2VybmFtZSIsIm1heFBhc3N3b3JkQWdlIiwibWF4UGFzc3dvcmRIaXN0b3J5IiwicmVzZXRQYXNzd29yZFN1Y2Nlc3NPbkludmFsaWRFbWFpbCIsInJlc2V0VG9rZW5SZXVzZUlmVmFsaWQiLCJyZXNldFRva2VuVmFsaWRpdHlEdXJhdGlvbiIsInZhbGlkYXRpb25FcnJvciIsInZhbGlkYXRvckNhbGxiYWNrIiwidmFsaWRhdG9yUGF0dGVybiIsIkZpbGVVcGxvYWRPcHRpb25zIiwiZW5hYmxlRm9yQW5vbnltb3VzVXNlciIsImVuYWJsZUZvckF1dGhlbnRpY2F0ZWRVc2VyIiwiZW5hYmxlRm9yUHVibGljIiwiZmlsZUV4dGVuc2lvbnMiLCJMb2dMZXZlbCIsImRlYnVnIiwiZXJyb3IiLCJpbmZvIiwic2lsbHkiLCJ3YXJuIiwiTG9nQ2xpZW50RXZlbnQiLCJrZXlzIiwibmFtZSIsIkRhdGFiYXNlT3B0aW9ucyIsImFsbG93UHVibGljRXhwbGFpbiIsImF1dGhNZWNoYW5pc20iLCJhdXRoTWVjaGFuaXNtUHJvcGVydGllcyIsImF1dGhTb3VyY2UiLCJhdXRvU2VsZWN0RmFtaWx5IiwiYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0IiwiY2xpZW50TWV0YWRhdGEiLCJjb21wcmVzc29ycyIsImNvbm5lY3RUaW1lb3V0TVMiLCJjcmVhdGVJbmRleFJvbGVOYW1lIiwiY3JlYXRlSW5kZXhVc2VyRW1haWwiLCJjcmVhdGVJbmRleFVzZXJFbWFpbENhc2VJbnNlbnNpdGl2ZSIsImNyZWF0ZUluZGV4VXNlckVtYWlsVmVyaWZ5VG9rZW4iLCJjcmVhdGVJbmRleFVzZXJQYXNzd29yZFJlc2V0VG9rZW4iLCJjcmVhdGVJbmRleFVzZXJVc2VybmFtZSIsImNyZWF0ZUluZGV4VXNlclVzZXJuYW1lQ2FzZUluc2Vuc2l0aXZlIiwiZGlyZWN0Q29ubmVjdGlvbiIsImRpc2FibGVJbmRleEZpZWxkVmFsaWRhdGlvbiIsImVuYWJsZVNjaGVtYUhvb2tzIiwiZm9yY2VTZXJ2ZXJPYmplY3RJZCIsImhlYXJ0YmVhdEZyZXF1ZW5jeU1TIiwibG9hZEJhbGFuY2VkIiwibG9jYWxUaHJlc2hvbGRNUyIsImxvZ0NsaWVudEV2ZW50cyIsIm1heENvbm5lY3RpbmciLCJtYXhJZGxlVGltZU1TIiwibWF4UG9vbFNpemUiLCJtYXhTdGFsZW5lc3NTZWNvbmRzIiwibWF4VGltZU1TIiwibWluUG9vbFNpemUiLCJwcm94eUhvc3QiLCJwcm94eVBhc3N3b3JkIiwicHJveHlQb3J0IiwicHJveHlVc2VybmFtZSIsInJlYWRDb25jZXJuTGV2ZWwiLCJyZWFkUHJlZmVyZW5jZSIsInJlYWRQcmVmZXJlbmNlVGFncyIsInJlcGxpY2FTZXQiLCJyZXRyeVJlYWRzIiwicmV0cnlXcml0ZXMiLCJzY2hlbWFDYWNoZVR0bCIsInNlcnZlck1vbml0b3JpbmdNb2RlIiwic2VydmVyU2VsZWN0aW9uVGltZW91dE1TIiwic29ja2V0VGltZW91dE1TIiwic3J2TWF4SG9zdHMiLCJzcnZTZXJ2aWNlTmFtZSIsInNzbCIsInRscyIsInRsc0FsbG93SW52YWxpZENlcnRpZmljYXRlcyIsInRsc0FsbG93SW52YWxpZEhvc3RuYW1lcyIsInRsc0NBRmlsZSIsInRsc0NlcnRpZmljYXRlS2V5RmlsZSIsInRsc0NlcnRpZmljYXRlS2V5RmlsZVBhc3N3b3JkIiwidGxzSW5zZWN1cmUiLCJ3YWl0UXVldWVUaW1lb3V0TVMiLCJ6bGliQ29tcHJlc3Npb25MZXZlbCIsIkRhdGFiYXNlT3B0aW9uc0NsaWVudE1ldGFkYXRhIiwidmVyc2lvbiIsIkF1dGhBZGFwdGVyIiwiZW5hYmxlZCIsIkxvZ0xldmVscyIsImNsb3VkRnVuY3Rpb25FcnJvciIsImNsb3VkRnVuY3Rpb25TdWNjZXNzIiwic2lnbnVwVXNlcm5hbWVUYWtlbiIsInRyaWdnZXJBZnRlciIsInRyaWdnZXJCZWZvcmVFcnJvciIsInRyaWdnZXJCZWZvcmVTdWNjZXNzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL09wdGlvbnMvRGVmaW5pdGlvbnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLypcbioqKiogR0VORVJBVEVEIENPREUgKioqKlxuVGhpcyBjb2RlIGhhcyBiZWVuIGdlbmVyYXRlZCBieSByZXNvdXJjZXMvYnVpbGRDb25maWdEZWZpbml0aW9ucy5qc1xuRG8gbm90IGVkaXQgbWFudWFsbHksIGJ1dCB1cGRhdGUgT3B0aW9ucy9pbmRleC5qc1xuKi9cbnZhciBwYXJzZXJzID0gcmVxdWlyZSgnLi9wYXJzZXJzJyk7XG5tb2R1bGUuZXhwb3J0cy5TY2hlbWFPcHRpb25zID0ge1xuICBhZnRlck1pZ3JhdGlvbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TQ0hFTUFfQUZURVJfTUlHUkFUSU9OJyxcbiAgICBoZWxwOiAnRXhlY3V0ZSBhIGNhbGxiYWNrIGFmdGVyIHJ1bm5pbmcgc2NoZW1hIG1pZ3JhdGlvbnMuJyxcbiAgfSxcbiAgYmVmb3JlTWlncmF0aW9uOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NDSEVNQV9CRUZPUkVfTUlHUkFUSU9OJyxcbiAgICBoZWxwOiAnRXhlY3V0ZSBhIGNhbGxiYWNrIGJlZm9yZSBydW5uaW5nIHNjaGVtYSBtaWdyYXRpb25zLicsXG4gIH0sXG4gIGRlZmluaXRpb25zOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NDSEVNQV9ERUZJTklUSU9OUycsXG4gICAgaGVscDpcbiAgICAgICdSZXN0IHJlcHJlc2VudGF0aW9uIG9uIFBhcnNlLlNjaGVtYSBodHRwczovL2RvY3MucGFyc2VwbGF0Zm9ybS5vcmcvcmVzdC9ndWlkZS8jYWRkaW5nLWEtc2NoZW1hJyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICBhY3Rpb246IHBhcnNlcnMub2JqZWN0UGFyc2VyLFxuICAgIGRlZmF1bHQ6IFtdLFxuICB9LFxuICBkZWxldGVFeHRyYUZpZWxkczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TQ0hFTUFfREVMRVRFX0VYVFJBX0ZJRUxEUycsXG4gICAgaGVscDpcbiAgICAgICdJcyB0cnVlIGlmIFBhcnNlIFNlcnZlciBzaG91bGQgZGVsZXRlIGFueSBmaWVsZHMgbm90IGRlZmluZWQgaW4gYSBzY2hlbWEgZGVmaW5pdGlvbi4gVGhpcyBzaG91bGQgb25seSBiZSB1c2VkIGR1cmluZyBkZXZlbG9wbWVudC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBrZWVwVW5rbm93bkluZGV4ZXM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfU0NIRU1BX0tFRVBfVU5LTk9XTl9JTkRFWEVTJyxcbiAgICBoZWxwOlxuICAgICAgXCIoT3B0aW9uYWwpIEtlZXAgaW5kZXhlcyB0aGF0IGFyZSBwcmVzZW50IGluIHRoZSBkYXRhYmFzZSBidXQgbm90IGRlZmluZWQgaW4gdGhlIHNjaGVtYS4gU2V0IHRoaXMgdG8gYHRydWVgIGlmIHlvdSBhcmUgYWRkaW5nIGluZGV4ZXMgbWFudWFsbHksIHNvIHRoYXQgdGhleSB3b24ndCBiZSByZW1vdmVkIHdoZW4gcnVubmluZyBzY2hlbWEgbWlncmF0aW9uLiBEZWZhdWx0IGlzIGBmYWxzZWAuXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGxvY2tTY2hlbWFzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NDSEVNQV9MT0NLX1NDSEVNQVMnLFxuICAgIGhlbHA6XG4gICAgICAnSXMgdHJ1ZSBpZiBQYXJzZSBTZXJ2ZXIgd2lsbCByZWplY3QgYW55IGF0dGVtcHRzIHRvIG1vZGlmeSB0aGUgc2NoZW1hIHdoaWxlIHRoZSBzZXJ2ZXIgaXMgcnVubmluZy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICByZWNyZWF0ZU1vZGlmaWVkRmllbGRzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NDSEVNQV9SRUNSRUFURV9NT0RJRklFRF9GSUVMRFMnLFxuICAgIGhlbHA6XG4gICAgICAnSXMgdHJ1ZSBpZiBQYXJzZSBTZXJ2ZXIgc2hvdWxkIHJlY3JlYXRlIGFueSBmaWVsZHMgdGhhdCBhcmUgZGlmZmVyZW50IGJldHdlZW4gdGhlIGN1cnJlbnQgZGF0YWJhc2Ugc2NoZW1hIGFuZCB0aGVzY2hlbWEgZGVmaW5pdGlvbi4gVGhpcyBzaG91bGQgb25seSBiZSB1c2VkIGR1cmluZyBkZXZlbG9wbWVudC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBzdHJpY3Q6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfU0NIRU1BX1NUUklDVCcsXG4gICAgaGVscDogJ0lzIHRydWUgaWYgUGFyc2UgU2VydmVyIHNob3VsZCBleGl0IGlmIHNjaGVtYSB1cGRhdGUgZmFpbC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLlBhcnNlU2VydmVyT3B0aW9ucyA9IHtcbiAgYWNjb3VudExvY2tvdXQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQUNDT1VOVF9MT0NLT1VUJyxcbiAgICBoZWxwOiAnVGhlIGFjY291bnQgbG9ja291dCBwb2xpY3kgZm9yIGZhaWxlZCBsb2dpbiBhdHRlbXB0cy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ0FjY291bnRMb2Nrb3V0T3B0aW9ucycsXG4gIH0sXG4gIGFsbG93Q2xpZW50Q2xhc3NDcmVhdGlvbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9BTExPV19DTElFTlRfQ0xBU1NfQ1JFQVRJT04nLFxuICAgIGhlbHA6ICdFbmFibGUgKG9yIGRpc2FibGUpIGNsaWVudCBjbGFzcyBjcmVhdGlvbiwgZGVmYXVsdHMgdG8gZmFsc2UnLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBhbGxvd0N1c3RvbU9iamVjdElkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0FMTE9XX0NVU1RPTV9PQkpFQ1RfSUQnLFxuICAgIGhlbHA6ICdFbmFibGUgKG9yIGRpc2FibGUpIGN1c3RvbSBvYmplY3RJZCcsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGFsbG93RXhwaXJlZEF1dGhEYXRhVG9rZW46IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQUxMT1dfRVhQSVJFRF9BVVRIX0RBVEFfVE9LRU4nLFxuICAgIGhlbHA6XG4gICAgICAnQWxsb3cgYSB1c2VyIHRvIGxvZyBpbiBldmVuIGlmIHRoZSAzcmQgcGFydHkgYXV0aGVudGljYXRpb24gdG9rZW4gdGhhdCB3YXMgdXNlZCB0byBzaWduIGluIHRvIHRoZWlyIGFjY291bnQgaGFzIGV4cGlyZWQuIElmIHRoaXMgaXMgc2V0IHRvIGBmYWxzZWAsIHRoZW4gdGhlIHRva2VuIHdpbGwgYmUgdmFsaWRhdGVkIGV2ZXJ5IHRpbWUgdGhlIHVzZXIgc2lnbnMgaW4gdG8gdGhlaXIgYWNjb3VudC4gVGhpcyByZWZlcnMgdG8gdGhlIHRva2VuIHRoYXQgaXMgc3RvcmVkIGluIHRoZSBgX1VzZXIuYXV0aERhdGFgIGZpZWxkLiBEZWZhdWx0cyB0byBgZmFsc2VgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGFsbG93SGVhZGVyczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9BTExPV19IRUFERVJTJyxcbiAgICBoZWxwOiAnQWRkIGhlYWRlcnMgdG8gQWNjZXNzLUNvbnRyb2wtQWxsb3ctSGVhZGVycycsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmFycmF5UGFyc2VyLFxuICB9LFxuICBhbGxvd09yaWdpbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9BTExPV19PUklHSU4nLFxuICAgIGhlbHA6XG4gICAgICAnU2V0cyBvcmlnaW5zIGZvciBBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4uIFRoaXMgY2FuIGJlIGEgc3RyaW5nIGZvciBhIHNpbmdsZSBvcmlnaW4gb3IgYW4gYXJyYXkgb2Ygc3RyaW5ncyBmb3IgbXVsdGlwbGUgb3JpZ2lucy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5hcnJheVBhcnNlcixcbiAgfSxcbiAgYW5hbHl0aWNzQWRhcHRlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9BTkFMWVRJQ1NfQURBUFRFUicsXG4gICAgaGVscDogJ0FkYXB0ZXIgbW9kdWxlIGZvciB0aGUgYW5hbHl0aWNzJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubW9kdWxlT3JPYmplY3RQYXJzZXIsXG4gIH0sXG4gIGFwcElkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0FQUExJQ0FUSU9OX0lEJyxcbiAgICBoZWxwOiAnWW91ciBQYXJzZSBBcHBsaWNhdGlvbiBJRCcsXG4gICAgcmVxdWlyZWQ6IHRydWUsXG4gIH0sXG4gIGFwcE5hbWU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQVBQX05BTUUnLFxuICAgIGhlbHA6ICdTZXRzIHRoZSBhcHAgbmFtZScsXG4gIH0sXG4gIGF1dGg6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQVVUSF9QUk9WSURFUlMnLFxuICAgIGhlbHA6XG4gICAgICAnQ29uZmlndXJhdGlvbiBmb3IgeW91ciBhdXRoZW50aWNhdGlvbiBwcm92aWRlcnMsIGFzIHN0cmluZ2lmaWVkIEpTT04uIFNlZSBodHRwOi8vZG9jcy5wYXJzZXBsYXRmb3JtLm9yZy9wYXJzZS1zZXJ2ZXIvZ3VpZGUvI29hdXRoLWFuZC0zcmQtcGFydHktYXV0aGVudGljYXRpb24nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gIH0sXG4gIGNhY2hlQWRhcHRlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DQUNIRV9BREFQVEVSJyxcbiAgICBoZWxwOiAnQWRhcHRlciBtb2R1bGUgZm9yIHRoZSBjYWNoZScsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm1vZHVsZU9yT2JqZWN0UGFyc2VyLFxuICB9LFxuICBjYWNoZU1heFNpemU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQ0FDSEVfTUFYX1NJWkUnLFxuICAgIGhlbHA6ICdTZXRzIHRoZSBtYXhpbXVtIHNpemUgZm9yIHRoZSBpbiBtZW1vcnkgY2FjaGUsIGRlZmF1bHRzIHRvIDEwMDAwJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdjYWNoZU1heFNpemUnKSxcbiAgICBkZWZhdWx0OiAxMDAwMCxcbiAgfSxcbiAgY2FjaGVUVEw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQ0FDSEVfVFRMJyxcbiAgICBoZWxwOiAnU2V0cyB0aGUgVFRMIGZvciB0aGUgaW4gbWVtb3J5IGNhY2hlIChpbiBtcyksIGRlZmF1bHRzIHRvIDUwMDAgKDUgc2Vjb25kcyknLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ2NhY2hlVFRMJyksXG4gICAgZGVmYXVsdDogNTAwMCxcbiAgfSxcbiAgY2xpZW50S2V5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NMSUVOVF9LRVknLFxuICAgIGhlbHA6ICdLZXkgZm9yIGlPUywgTWFjT1MsIHR2T1MgY2xpZW50cycsXG4gIH0sXG4gIGNsb3VkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NMT1VEJyxcbiAgICBoZWxwOiAnRnVsbCBwYXRoIHRvIHlvdXIgY2xvdWQgY29kZSBtYWluLmpzJyxcbiAgfSxcbiAgY2x1c3Rlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DTFVTVEVSJyxcbiAgICBoZWxwOiAnUnVuIHdpdGggY2x1c3Rlciwgb3B0aW9uYWxseSBzZXQgdGhlIG51bWJlciBvZiBwcm9jZXNzZXMgZGVmYXVsdCB0byBvcy5jcHVzKCkubGVuZ3RoJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyT3JCb29sZWFuUGFyc2VyLFxuICB9LFxuICBjb2xsZWN0aW9uUHJlZml4OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NPTExFQ1RJT05fUFJFRklYJyxcbiAgICBoZWxwOiAnQSBjb2xsZWN0aW9uIHByZWZpeCBmb3IgdGhlIGNsYXNzZXMnLFxuICAgIGRlZmF1bHQ6ICcnLFxuICB9LFxuICBjb252ZXJ0RW1haWxUb0xvd2VyY2FzZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DT05WRVJUX0VNQUlMX1RPX0xPV0VSQ0FTRScsXG4gICAgaGVscDpcbiAgICAgICdPcHRpb25hbC4gSWYgc2V0IHRvIGB0cnVlYCwgdGhlIGBlbWFpbGAgcHJvcGVydHkgb2YgYSB1c2VyIGlzIGF1dG9tYXRpY2FsbHkgY29udmVydGVkIHRvIGxvd2VyY2FzZSBiZWZvcmUgYmVpbmcgc3RvcmVkIGluIHRoZSBkYXRhYmFzZS4gQ29uc2VxdWVudGx5LCBxdWVyaWVzIG11c3QgbWF0Y2ggdGhlIGNhc2UgYXMgc3RvcmVkIGluIHRoZSBkYXRhYmFzZSwgd2hpY2ggd291bGQgYmUgbG93ZXJjYXNlIGluIHRoaXMgc2NlbmFyaW8uIElmIGBmYWxzZWAsIHRoZSBgZW1haWxgIHByb3BlcnR5IGlzIHN0b3JlZCBhcyBzZXQsIHdpdGhvdXQgYW55IGNhc2UgbW9kaWZpY2F0aW9ucy4gRGVmYXVsdCBpcyBgZmFsc2VgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGNvbnZlcnRVc2VybmFtZVRvTG93ZXJjYXNlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NPTlZFUlRfVVNFUk5BTUVfVE9fTE9XRVJDQVNFJyxcbiAgICBoZWxwOlxuICAgICAgJ09wdGlvbmFsLiBJZiBzZXQgdG8gYHRydWVgLCB0aGUgYHVzZXJuYW1lYCBwcm9wZXJ0eSBvZiBhIHVzZXIgaXMgYXV0b21hdGljYWxseSBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlIGJlZm9yZSBiZWluZyBzdG9yZWQgaW4gdGhlIGRhdGFiYXNlLiBDb25zZXF1ZW50bHksIHF1ZXJpZXMgbXVzdCBtYXRjaCB0aGUgY2FzZSBhcyBzdG9yZWQgaW4gdGhlIGRhdGFiYXNlLCB3aGljaCB3b3VsZCBiZSBsb3dlcmNhc2UgaW4gdGhpcyBzY2VuYXJpby4gSWYgYGZhbHNlYCwgdGhlIGB1c2VybmFtZWAgcHJvcGVydHkgaXMgc3RvcmVkIGFzIHNldCwgd2l0aG91dCBhbnkgY2FzZSBtb2RpZmljYXRpb25zLiBEZWZhdWx0IGlzIGBmYWxzZWAuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgY3VzdG9tUGFnZXM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQ1VTVE9NX1BBR0VTJyxcbiAgICBoZWxwOiAnY3VzdG9tIHBhZ2VzIGZvciBwYXNzd29yZCB2YWxpZGF0aW9uIGFuZCByZXNldCcsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnQ3VzdG9tUGFnZXNPcHRpb25zJyxcbiAgICBkZWZhdWx0OiB7fSxcbiAgfSxcbiAgZGF0YWJhc2VBZGFwdGVyOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0FEQVBURVInLFxuICAgIGhlbHA6XG4gICAgICAnQWRhcHRlciBtb2R1bGUgZm9yIHRoZSBkYXRhYmFzZTsgYW55IG9wdGlvbnMgdGhhdCBhcmUgbm90IGV4cGxpY2l0bHkgZGVzY3JpYmVkIGhlcmUgYXJlIHBhc3NlZCBkaXJlY3RseSB0byB0aGUgZGF0YWJhc2UgY2xpZW50LicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm1vZHVsZU9yT2JqZWN0UGFyc2VyLFxuICB9LFxuICBkYXRhYmFzZU9wdGlvbnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfT1BUSU9OUycsXG4gICAgaGVscDogJ09wdGlvbnMgdG8gcGFzcyB0byB0aGUgZGF0YWJhc2UgY2xpZW50JyxcbiAgICBhY3Rpb246IHBhcnNlcnMub2JqZWN0UGFyc2VyLFxuICAgIHR5cGU6ICdEYXRhYmFzZU9wdGlvbnMnLFxuICB9LFxuICBkYXRhYmFzZVVSSToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9VUkknLFxuICAgIGhlbHA6ICdUaGUgZnVsbCBVUkkgdG8geW91ciBkYXRhYmFzZS4gU3VwcG9ydGVkIGRhdGFiYXNlcyBhcmUgbW9uZ29kYiBvciBwb3N0Z3Jlcy4nLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIGRlZmF1bHQ6ICdtb25nb2RiOi8vbG9jYWxob3N0OjI3MDE3L3BhcnNlJyxcbiAgfSxcbiAgZGVmYXVsdExpbWl0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RFRkFVTFRfTElNSVQnLFxuICAgIGhlbHA6ICdEZWZhdWx0IHZhbHVlIGZvciBsaW1pdCBvcHRpb24gb24gcXVlcmllcywgZGVmYXVsdHMgdG8gYDEwMGAuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdkZWZhdWx0TGltaXQnKSxcbiAgICBkZWZhdWx0OiAxMDAsXG4gIH0sXG4gIGRpcmVjdEFjY2Vzczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9ESVJFQ1RfQUNDRVNTJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgaWYgUGFyc2UgcmVxdWVzdHMgd2l0aGluIHRoZSBzYW1lIE5vZGUuanMgZW52aXJvbm1lbnQgYXMgUGFyc2UgU2VydmVyIHNob3VsZCBiZSByb3V0ZWQgdG8gUGFyc2UgU2VydmVyIGRpcmVjdGx5IGluc3RlYWQgb2YgdmlhIHRoZSBIVFRQIGludGVyZmFjZS4gRGVmYXVsdCBpcyBgZmFsc2VgLjxicj48YnI+SWYgc2V0IHRvIGBmYWxzZWAgdGhlbiBQYXJzZSByZXF1ZXN0cyB3aXRoaW4gdGhlIHNhbWUgTm9kZS5qcyBlbnZpcm9ubWVudCBhcyBQYXJzZSBTZXJ2ZXIgYXJlIGV4ZWN1dGVkIGFzIEhUVFAgcmVxdWVzdHMgc2VudCB0byBQYXJzZSBTZXJ2ZXIgdmlhIHRoZSBgc2VydmVyVVJMYC4gRm9yIGV4YW1wbGUsIGEgYFBhcnNlLlF1ZXJ5YCBpbiBDbG91ZCBDb2RlIGlzIGNhbGxpbmcgUGFyc2UgU2VydmVyIHZpYSBhIEhUVFAgcmVxdWVzdC4gVGhlIHNlcnZlciBpcyBlc3NlbnRpYWxseSBtYWtpbmcgYSBIVFRQIHJlcXVlc3QgdG8gaXRzZWxmLCB1bm5lY2Vzc2FyaWx5IHVzaW5nIG5ldHdvcmsgcmVzb3VyY2VzIHN1Y2ggYXMgbmV0d29yayBwb3J0cy48YnI+PGJyPlxcdTI2QTBcXHVGRTBGIEluIGVudmlyb25tZW50cyB3aGVyZSBtdWx0aXBsZSBQYXJzZSBTZXJ2ZXIgaW5zdGFuY2VzIHJ1biBiZWhpbmQgYSBsb2FkIGJhbGFuY2VyIGFuZCBQYXJzZSByZXF1ZXN0cyB3aXRoaW4gdGhlIGN1cnJlbnQgTm9kZS5qcyBlbnZpcm9ubWVudCBzaG91bGQgYmUgcm91dGVkIHZpYSB0aGUgbG9hZCBiYWxhbmNlciBhbmQgZGlzdHJpYnV0ZWQgYXMgSFRUUCByZXF1ZXN0cyBhbW9uZyBhbGwgaW5zdGFuY2VzIHZpYSB0aGUgYHNlcnZlclVSTGAsIHRoaXMgc2hvdWxkIGJlIHNldCB0byBgZmFsc2VgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgZG90TmV0S2V5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RPVF9ORVRfS0VZJyxcbiAgICBoZWxwOiAnS2V5IGZvciBVbml0eSBhbmQgLk5ldCBTREsnLFxuICB9LFxuICBlbWFpbEFkYXB0ZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU1BSUxfQURBUFRFUicsXG4gICAgaGVscDogJ0FkYXB0ZXIgbW9kdWxlIGZvciBlbWFpbCBzZW5kaW5nJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubW9kdWxlT3JPYmplY3RQYXJzZXIsXG4gIH0sXG4gIGVtYWlsVmVyaWZ5VG9rZW5SZXVzZUlmVmFsaWQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU1BSUxfVkVSSUZZX1RPS0VOX1JFVVNFX0lGX1ZBTElEJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgaWYgYSBlbWFpbCB2ZXJpZmljYXRpb24gdG9rZW4gc2hvdWxkIGJlIHJldXNlZCBpbiBjYXNlIGFub3RoZXIgdG9rZW4gaXMgcmVxdWVzdGVkIGJ1dCB0aGVyZSBpcyBhIHRva2VuIHRoYXQgaXMgc3RpbGwgdmFsaWQsIGkuZS4gaGFzIG5vdCBleHBpcmVkLiBUaGlzIGF2b2lkcyB0aGUgb2Z0ZW4gb2JzZXJ2ZWQgaXNzdWUgdGhhdCBhIHVzZXIgcmVxdWVzdHMgbXVsdGlwbGUgZW1haWxzIGFuZCBkb2VzIG5vdCBrbm93IHdoaWNoIGxpbmsgY29udGFpbnMgYSB2YWxpZCB0b2tlbiBiZWNhdXNlIGVhY2ggbmV3bHkgZ2VuZXJhdGVkIHRva2VuIHdvdWxkIGludmFsaWRhdGUgdGhlIHByZXZpb3VzIHRva2VuLjxicj48YnI+RGVmYXVsdCBpcyBgZmFsc2VgLjxicj5SZXF1aXJlcyBvcHRpb24gYHZlcmlmeVVzZXJFbWFpbHM6IHRydWVgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGVtYWlsVmVyaWZ5VG9rZW5WYWxpZGl0eUR1cmF0aW9uOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0VNQUlMX1ZFUklGWV9UT0tFTl9WQUxJRElUWV9EVVJBVElPTicsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdGhlIHZhbGlkaXR5IGR1cmF0aW9uIG9mIHRoZSBlbWFpbCB2ZXJpZmljYXRpb24gdG9rZW4gaW4gc2Vjb25kcyBhZnRlciB3aGljaCB0aGUgdG9rZW4gZXhwaXJlcy4gVGhlIHRva2VuIGlzIHVzZWQgaW4gdGhlIGxpbmsgdGhhdCBpcyBzZXQgaW4gdGhlIGVtYWlsLiBBZnRlciB0aGUgdG9rZW4gZXhwaXJlcywgdGhlIGxpbmsgYmVjb21lcyBpbnZhbGlkIGFuZCBhIG5ldyBsaW5rIGhhcyB0byBiZSBzZW50LiBJZiB0aGUgb3B0aW9uIGlzIG5vdCBzZXQgb3Igc2V0IHRvIGB1bmRlZmluZWRgLCB0aGVuIHRoZSB0b2tlbiBuZXZlciBleHBpcmVzLjxicj48YnI+Rm9yIGV4YW1wbGUsIHRvIGV4cGlyZSB0aGUgdG9rZW4gYWZ0ZXIgMiBob3Vycywgc2V0IGEgdmFsdWUgb2YgNzIwMCBzZWNvbmRzICg9IDYwIHNlY29uZHMgKiA2MCBtaW51dGVzICogMiBob3VycykuPGJyPjxicj5EZWZhdWx0IGlzIGB1bmRlZmluZWRgLjxicj5SZXF1aXJlcyBvcHRpb24gYHZlcmlmeVVzZXJFbWFpbHM6IHRydWVgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignZW1haWxWZXJpZnlUb2tlblZhbGlkaXR5RHVyYXRpb24nKSxcbiAgfSxcbiAgZW5hYmxlQW5vbnltb3VzVXNlcnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU5BQkxFX0FOT05fVVNFUlMnLFxuICAgIGhlbHA6ICdFbmFibGUgKG9yIGRpc2FibGUpIGFub255bW91cyB1c2VycywgZGVmYXVsdHMgdG8gdHJ1ZScsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgZW5hYmxlQ29sbGF0aW9uQ2FzZUNvbXBhcmlzb246IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU5BQkxFX0NPTExBVElPTl9DQVNFX0NPTVBBUklTT04nLFxuICAgIGhlbHA6XG4gICAgICAnT3B0aW9uYWwuIElmIHNldCB0byBgdHJ1ZWAsIHRoZSBjb2xsYXRpb24gcnVsZSBvZiBjYXNlIGNvbXBhcmlzb24gZm9yIHF1ZXJpZXMgYW5kIGluZGV4ZXMgaXMgZW5hYmxlZC4gRW5hYmxlIHRoaXMgb3B0aW9uIHRvIHJ1biBQYXJzZSBTZXJ2ZXIgd2l0aCBNb25nb0RCIEF0bGFzIFNlcnZlcmxlc3Mgb3IgQVdTIEFtYXpvbiBEb2N1bWVudERCLiBJZiBgZmFsc2VgLCB0aGUgY29sbGF0aW9uIHJ1bGUgb2YgY2FzZSBjb21wYXJpc29uIGlzIGRpc2FibGVkLiBEZWZhdWx0IGlzIGBmYWxzZWAuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgZW5hYmxlRXhwcmVzc0Vycm9ySGFuZGxlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9FTkFCTEVfRVhQUkVTU19FUlJPUl9IQU5ETEVSJyxcbiAgICBoZWxwOiAnRW5hYmxlcyB0aGUgZGVmYXVsdCBleHByZXNzIGVycm9yIGhhbmRsZXIgZm9yIGFsbCBlcnJvcnMnLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBlbmFibGVJbnNlY3VyZUF1dGhBZGFwdGVyczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9FTkFCTEVfSU5TRUNVUkVfQVVUSF9BREFQVEVSUycsXG4gICAgaGVscDpcbiAgICAgICdPcHRpb25hbC4gRW5hYmxlcyBpbnNlY3VyZSBhdXRoZW50aWNhdGlvbiBhZGFwdGVycy4gSW5zZWN1cmUgYXV0aCBhZGFwdGVycyBhcmUgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHZlcnNpb24uIERlZmF1bHRzIHRvIGBmYWxzZWAuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgZW5hYmxlU2FuaXRpemVkRXJyb3JSZXNwb25zZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9FTkFCTEVfU0FOSVRJWkVEX0VSUk9SX1JFU1BPTlNFJyxcbiAgICBoZWxwOlxuICAgICAgJ0lmIHNldCB0byBgdHJ1ZWAsIGVycm9yIGRldGFpbHMgYXJlIHJlbW92ZWQgZnJvbSBlcnJvciBtZXNzYWdlcyBpbiByZXNwb25zZXMgdG8gY2xpZW50IHJlcXVlc3RzLCBhbmQgaW5zdGVhZCBhIGdlbmVyaWMgZXJyb3IgbWVzc2FnZSBpcyBzZW50LiBEZWZhdWx0IGlzIGB0cnVlYC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIGVuY3J5cHRpb25LZXk6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU5DUllQVElPTl9LRVknLFxuICAgIGhlbHA6ICdLZXkgZm9yIGVuY3J5cHRpbmcgeW91ciBmaWxlcycsXG4gIH0sXG4gIGVuZm9yY2VQcml2YXRlVXNlcnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU5GT1JDRV9QUklWQVRFX1VTRVJTJyxcbiAgICBoZWxwOiAnU2V0IHRvIHRydWUgaWYgbmV3IHVzZXJzIHNob3VsZCBiZSBjcmVhdGVkIHdpdGhvdXQgcHVibGljIHJlYWQgYW5kIHdyaXRlIGFjY2Vzcy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIGV4cGlyZUluYWN0aXZlU2Vzc2lvbnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRVhQSVJFX0lOQUNUSVZFX1NFU1NJT05TJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldHMgd2hldGhlciB3ZSBzaG91bGQgZXhwaXJlIHRoZSBpbmFjdGl2ZSBzZXNzaW9ucywgZGVmYXVsdHMgdG8gdHJ1ZS4gSWYgZmFsc2UsIGFsbCBuZXcgc2Vzc2lvbnMgYXJlIGNyZWF0ZWQgd2l0aCBubyBleHBpcmF0aW9uIGRhdGUuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICB9LFxuICBleHRlbmRTZXNzaW9uT25Vc2U6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRVhURU5EX1NFU1NJT05fT05fVVNFJyxcbiAgICBoZWxwOlxuICAgICAgXCJXaGV0aGVyIFBhcnNlIFNlcnZlciBzaG91bGQgYXV0b21hdGljYWxseSBleHRlbmQgYSB2YWxpZCBzZXNzaW9uIGJ5IHRoZSBzZXNzaW9uTGVuZ3RoLiBJbiBvcmRlciB0byByZWR1Y2UgdGhlIG51bWJlciBvZiBzZXNzaW9uIHVwZGF0ZXMgaW4gdGhlIGRhdGFiYXNlLCBhIHNlc3Npb24gd2lsbCBvbmx5IGJlIGV4dGVuZGVkIHdoZW4gYSByZXF1ZXN0IGlzIHJlY2VpdmVkIGFmdGVyIGF0IGxlYXN0IGhhbGYgb2YgdGhlIGN1cnJlbnQgc2Vzc2lvbidzIGxpZmV0aW1lIGhhcyBwYXNzZWQuXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGZpbGVLZXk6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRklMRV9LRVknLFxuICAgIGhlbHA6ICdLZXkgZm9yIHlvdXIgZmlsZXMnLFxuICB9LFxuICBmaWxlc0FkYXB0ZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRklMRVNfQURBUFRFUicsXG4gICAgaGVscDogJ0FkYXB0ZXIgbW9kdWxlIGZvciB0aGUgZmlsZXMgc3ViLXN5c3RlbScsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm1vZHVsZU9yT2JqZWN0UGFyc2VyLFxuICB9LFxuICBmaWxlVXBsb2FkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0ZJTEVfVVBMT0FEX09QVElPTlMnLFxuICAgIGhlbHA6ICdPcHRpb25zIGZvciBmaWxlIHVwbG9hZHMnLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ0ZpbGVVcGxvYWRPcHRpb25zJyxcbiAgICBkZWZhdWx0OiB7fSxcbiAgfSxcbiAgZ3JhcGhRTFBhdGg6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfR1JBUEhRTF9QQVRIJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBtb3VudCBwYXRoIGZvciB0aGUgR3JhcGhRTCBlbmRwb2ludDxicj48YnI+XFx1MjZBMFxcdUZFMEYgRmlsZSB1cGxvYWQgaW5zaWRlIHRoZSBHcmFwaFFMIG11dGF0aW9uIHN5c3RlbSByZXF1aXJlcyBQYXJzZSBTZXJ2ZXIgdG8gYmUgYWJsZSB0byBjYWxsIGl0c2VsZiBieSBtYWtpbmcgcmVxdWVzdHMgdG8gdGhlIFVSTCBzZXQgaW4gYHNlcnZlclVSTGAuPGJyPjxicj5EZWZhdWx0cyBpcyBgL2dyYXBocWxgLicsXG4gICAgZGVmYXVsdDogJy9ncmFwaHFsJyxcbiAgfSxcbiAgZ3JhcGhRTFB1YmxpY0ludHJvc3BlY3Rpb246IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfR1JBUEhRTF9QVUJMSUNfSU5UUk9TUEVDVElPTicsXG4gICAgaGVscDogJ0VuYWJsZSBwdWJsaWMgaW50cm9zcGVjdGlvbiBmb3IgdGhlIEdyYXBoUUwgZW5kcG9pbnQsIGRlZmF1bHRzIHRvIGZhbHNlJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgZ3JhcGhRTFNjaGVtYToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9HUkFQSF9RTFNDSEVNQScsXG4gICAgaGVscDogJ0Z1bGwgcGF0aCB0byB5b3VyIEdyYXBoUUwgY3VzdG9tIHNjaGVtYS5ncmFwaHFsIGZpbGUnLFxuICB9LFxuICBob3N0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0hPU1QnLFxuICAgIGhlbHA6ICdUaGUgaG9zdCB0byBzZXJ2ZSBQYXJzZVNlcnZlciBvbiwgZGVmYXVsdHMgdG8gMC4wLjAuMCcsXG4gICAgZGVmYXVsdDogJzAuMC4wLjAnLFxuICB9LFxuICBpZGVtcG90ZW5jeU9wdGlvbnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRVhQRVJJTUVOVEFMX0lERU1QT1RFTkNZX09QVElPTlMnLFxuICAgIGhlbHA6XG4gICAgICAnT3B0aW9ucyBmb3IgcmVxdWVzdCBpZGVtcG90ZW5jeSB0byBkZWR1cGxpY2F0ZSBpZGVudGljYWwgcmVxdWVzdHMgdGhhdCBtYXkgYmUgY2F1c2VkIGJ5IG5ldHdvcmsgaXNzdWVzLiBDYXV0aW9uLCB0aGlzIGlzIGFuIGV4cGVyaW1lbnRhbCBmZWF0dXJlIHRoYXQgbWF5IG5vdCBiZSBhcHByb3ByaWF0ZSBmb3IgcHJvZHVjdGlvbi4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ0lkZW1wb3RlbmN5T3B0aW9ucycsXG4gICAgZGVmYXVsdDoge30sXG4gIH0sXG4gIGphdmFzY3JpcHRLZXk6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfSkFWQVNDUklQVF9LRVknLFxuICAgIGhlbHA6ICdLZXkgZm9yIHRoZSBKYXZhc2NyaXB0IFNESycsXG4gIH0sXG4gIGpzb25Mb2dzOiB7XG4gICAgZW52OiAnSlNPTl9MT0dTJyxcbiAgICBoZWxwOiAnTG9nIGFzIHN0cnVjdHVyZWQgSlNPTiBvYmplY3RzJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgbGl2ZVF1ZXJ5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xJVkVfUVVFUlknLFxuICAgIGhlbHA6IFwicGFyc2Utc2VydmVyJ3MgTGl2ZVF1ZXJ5IGNvbmZpZ3VyYXRpb24gb2JqZWN0XCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnTGl2ZVF1ZXJ5T3B0aW9ucycsXG4gIH0sXG4gIGxpdmVRdWVyeVNlcnZlck9wdGlvbnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTElWRV9RVUVSWV9TRVJWRVJfT1BUSU9OUycsXG4gICAgaGVscDogJ0xpdmUgcXVlcnkgc2VydmVyIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyAod2lsbCBzdGFydCB0aGUgbGl2ZVF1ZXJ5IHNlcnZlciknLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ0xpdmVRdWVyeVNlcnZlck9wdGlvbnMnLFxuICB9LFxuICBsb2dnZXJBZGFwdGVyOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xPR0dFUl9BREFQVEVSJyxcbiAgICBoZWxwOiAnQWRhcHRlciBtb2R1bGUgZm9yIHRoZSBsb2dnaW5nIHN1Yi1zeXN0ZW0nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5tb2R1bGVPck9iamVjdFBhcnNlcixcbiAgfSxcbiAgbG9nTGV2ZWw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMJyxcbiAgICBoZWxwOiAnU2V0cyB0aGUgbGV2ZWwgZm9yIGxvZ3MnLFxuICB9LFxuICBsb2dMZXZlbHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMUycsXG4gICAgaGVscDogJyhPcHRpb25hbCkgT3ZlcnJpZGVzIHRoZSBsb2cgbGV2ZWxzIHVzZWQgaW50ZXJuYWxseSBieSBQYXJzZSBTZXJ2ZXIgdG8gbG9nIGV2ZW50cy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ0xvZ0xldmVscycsXG4gICAgZGVmYXVsdDoge30sXG4gIH0sXG4gIGxvZ3NGb2xkZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HU19GT0xERVInLFxuICAgIGhlbHA6IFwiRm9sZGVyIGZvciB0aGUgbG9ncyAoZGVmYXVsdHMgdG8gJy4vbG9ncycpOyBzZXQgdG8gbnVsbCB0byBkaXNhYmxlIGZpbGUgYmFzZWQgbG9nZ2luZ1wiLFxuICAgIGRlZmF1bHQ6ICcuL2xvZ3MnLFxuICB9LFxuICBtYWludGVuYW5jZUtleToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9NQUlOVEVOQU5DRV9LRVknLFxuICAgIGhlbHA6XG4gICAgICAnKE9wdGlvbmFsKSBUaGUgbWFpbnRlbmFuY2Uga2V5IGlzIHVzZWQgZm9yIG1vZGlmeWluZyBpbnRlcm5hbCBhbmQgcmVhZC1vbmx5IGZpZWxkcyBvZiBQYXJzZSBTZXJ2ZXIuPGJyPjxicj5cXHUyNkEwXFx1RkUwRiBUaGlzIGtleSBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBhcyBwYXJ0IG9mIGEgcmVndWxhciBvcGVyYXRpb24gb2YgUGFyc2UgU2VydmVyLiBUaGlzIGtleSBpcyBpbnRlbmRlZCB0byBjb25kdWN0IG91dC1vZi1iYW5kIGNoYW5nZXMgc3VjaCBhcyBvbmUtdGltZSBtaWdyYXRpb25zIG9yIGRhdGEgY29ycmVjdGlvbiB0YXNrcy4gSW50ZXJuYWwgZmllbGRzIGFyZSBub3Qgb2ZmaWNpYWxseSBkb2N1bWVudGVkIGFuZCBtYXkgY2hhbmdlIGF0IGFueSB0aW1lIHdpdGhvdXQgcHVibGljYXRpb24gaW4gcmVsZWFzZSBjaGFuZ2Vsb2dzLiBXZSBzdHJvbmdseSBhZHZpY2Ugbm90IHRvIHJlbHkgb24gaW50ZXJuYWwgZmllbGRzIGFzIHBhcnQgb2YgeW91ciByZWd1bGFyIG9wZXJhdGlvbiBhbmQgdG8gaW52ZXN0aWdhdGUgdGhlIGltcGxpY2F0aW9ucyBvZiBhbnkgcGxhbm5lZCBjaGFuZ2VzICpkaXJlY3RseSBpbiB0aGUgc291cmNlIGNvZGUqIG9mIHlvdXIgY3VycmVudCB2ZXJzaW9uIG9mIFBhcnNlIFNlcnZlci4nLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxuICBtYWludGVuYW5jZUtleUlwczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9NQUlOVEVOQU5DRV9LRVlfSVBTJyxcbiAgICBoZWxwOlxuICAgICAgXCIoT3B0aW9uYWwpIFJlc3RyaWN0cyB0aGUgdXNlIG9mIG1haW50ZW5hbmNlIGtleSBwZXJtaXNzaW9ucyB0byBhIGxpc3Qgb2YgSVAgYWRkcmVzc2VzIG9yIHJhbmdlcy48YnI+PGJyPlRoaXMgb3B0aW9uIGFjY2VwdHMgYSBsaXN0IG9mIHNpbmdsZSBJUCBhZGRyZXNzZXMsIGZvciBleGFtcGxlIGBbJzEwLjAuMC4xJywgJzEwLjAuMC4yJ11gLiBZb3UgY2FuIGFsc28gdXNlIENJRFIgbm90YXRpb24gdG8gc3BlY2lmeSBhbiBJUCBhZGRyZXNzIHJhbmdlLCBmb3IgZXhhbXBsZSBgWycxMC4wLjEuMC8yNCddYC48YnI+PGJyPjxiPlNwZWNpYWwgc2NlbmFyaW9zOjwvYj48YnI+LSBTZXR0aW5nIGFuIGVtcHR5IGFycmF5IGBbXWAgbWVhbnMgdGhhdCB0aGUgbWFpbnRlbmFuY2Uga2V5IGNhbm5vdCBiZSB1c2VkIGV2ZW4gaW4gUGFyc2UgU2VydmVyIENsb3VkIENvZGUuIFRoaXMgdmFsdWUgY2Fubm90IGJlIHNldCB2aWEgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgYXMgdGhlcmUgaXMgbm8gd2F5IHRvIHBhc3MgYW4gZW1wdHkgYXJyYXkgdG8gUGFyc2UgU2VydmVyIHZpYSBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZS48YnI+LSBTZXR0aW5nIGBbJzAuMC4wLjAvMCcsICc6OjAnXWAgbWVhbnMgdG8gYWxsb3cgYW55IElQdjQgYW5kIElQdjYgYWRkcmVzcyB0byB1c2UgdGhlIG1haW50ZW5hbmNlIGtleSBhbmQgZWZmZWN0aXZlbHkgZGlzYWJsZXMgdGhlIElQIGZpbHRlci48YnI+PGJyPjxiPkNvbnNpZGVyYXRpb25zOjwvYj48YnI+LSBJUHY0IGFuZCBJUHY2IGFkZHJlc3NlcyBhcmUgbm90IGNvbXBhcmVkIGFnYWluc3QgZWFjaCBvdGhlci4gRWFjaCBJUCB2ZXJzaW9uIChJUHY0IGFuZCBJUHY2KSBuZWVkcyB0byBiZSBjb25zaWRlcmVkIHNlcGFyYXRlbHkuIEZvciBleGFtcGxlLCBgWycwLjAuMC4wLzAnXWAgYWxsb3dzIGFueSBJUHY0IGFkZHJlc3MgYW5kIGJsb2NrcyBldmVyeSBJUHY2IGFkZHJlc3MuIENvbnZlcnNlbHksIGBbJzo6MCddYCBhbGxvd3MgYW55IElQdjYgYWRkcmVzcyBhbmQgYmxvY2tzIGV2ZXJ5IElQdjQgYWRkcmVzcy48YnI+LSBLZWVwIGluIG1pbmQgdGhhdCB0aGUgSVAgdmVyc2lvbiBpbiB1c2UgZGVwZW5kcyBvbiB0aGUgbmV0d29yayBzdGFjayBvZiB0aGUgZW52aXJvbm1lbnQgaW4gd2hpY2ggUGFyc2UgU2VydmVyIHJ1bnMuIEEgbG9jYWwgZW52aXJvbm1lbnQgbWF5IHVzZSBhIGRpZmZlcmVudCBJUCB2ZXJzaW9uIHRoYW4gYSByZW1vdGUgZW52aXJvbm1lbnQuIEZvciBleGFtcGxlLCBpdCdzIHBvc3NpYmxlIHRoYXQgbG9jYWxseSB0aGUgdmFsdWUgYFsnMC4wLjAuMC8wJ11gIGFsbG93cyB0aGUgcmVxdWVzdCBJUCBiZWNhdXNlIHRoZSBlbnZpcm9ubWVudCBpcyB1c2luZyBJUHY0LCBidXQgd2hlbiBQYXJzZSBTZXJ2ZXIgaXMgZGVwbG95ZWQgcmVtb3RlbHkgdGhlIHJlcXVlc3QgSVAgaXMgYmxvY2tlZCBiZWNhdXNlIHRoZSByZW1vdGUgZW52aXJvbm1lbnQgaXMgdXNpbmcgSVB2Ni48YnI+LSBXaGVuIHNldHRpbmcgdGhlIG9wdGlvbiB2aWEgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgdGhlIG5vdGF0aW9uIGlzIGEgY29tbWEtc2VwYXJhdGVkIHN0cmluZywgZm9yIGV4YW1wbGUgYFxcXCIwLjAuMC4wLzAsOjowXFxcImAuPGJyPi0gSVB2NiB6b25lIGluZGljZXMgKGAlYCBzdWZmaXgpIGFyZSBub3Qgc3VwcG9ydGVkLCBmb3IgZXhhbXBsZSBgZmU4MDo6MSVldGgwYCwgYGZlODA6OjElMWAgb3IgYDo6MSVsb2AuPGJyPjxicj5EZWZhdWx0cyB0byBgWycxMjcuMC4wLjEnLCAnOjoxJ11gIHdoaWNoIG1lYW5zIHRoYXQgb25seSBgbG9jYWxob3N0YCwgdGhlIHNlcnZlciBpbnN0YW5jZSBvbiB3aGljaCBQYXJzZSBTZXJ2ZXIgcnVucywgaXMgYWxsb3dlZCB0byB1c2UgdGhlIG1haW50ZW5hbmNlIGtleS5cIixcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gICAgZGVmYXVsdDogWycxMjcuMC4wLjEnLCAnOjoxJ10sXG4gIH0sXG4gIG1hc3RlcktleToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9NQVNURVJfS0VZJyxcbiAgICBoZWxwOiAnWW91ciBQYXJzZSBNYXN0ZXIgS2V5JyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgbWFzdGVyS2V5SXBzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX01BU1RFUl9LRVlfSVBTJyxcbiAgICBoZWxwOlxuICAgICAgXCIoT3B0aW9uYWwpIFJlc3RyaWN0cyB0aGUgdXNlIG9mIG1hc3RlciBrZXkgcGVybWlzc2lvbnMgdG8gYSBsaXN0IG9mIElQIGFkZHJlc3NlcyBvciByYW5nZXMuPGJyPjxicj5UaGlzIG9wdGlvbiBhY2NlcHRzIGEgbGlzdCBvZiBzaW5nbGUgSVAgYWRkcmVzc2VzLCBmb3IgZXhhbXBsZSBgWycxMC4wLjAuMScsICcxMC4wLjAuMiddYC4gWW91IGNhbiBhbHNvIHVzZSBDSURSIG5vdGF0aW9uIHRvIHNwZWNpZnkgYW4gSVAgYWRkcmVzcyByYW5nZSwgZm9yIGV4YW1wbGUgYFsnMTAuMC4xLjAvMjQnXWAuPGJyPjxicj48Yj5TcGVjaWFsIHNjZW5hcmlvczo8L2I+PGJyPi0gU2V0dGluZyBhbiBlbXB0eSBhcnJheSBgW11gIG1lYW5zIHRoYXQgdGhlIG1hc3RlciBrZXkgY2Fubm90IGJlIHVzZWQgZXZlbiBpbiBQYXJzZSBTZXJ2ZXIgQ2xvdWQgQ29kZS4gVGhpcyB2YWx1ZSBjYW5ub3QgYmUgc2V0IHZpYSBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSBhcyB0aGVyZSBpcyBubyB3YXkgdG8gcGFzcyBhbiBlbXB0eSBhcnJheSB0byBQYXJzZSBTZXJ2ZXIgdmlhIGFuIGVudmlyb25tZW50IHZhcmlhYmxlLjxicj4tIFNldHRpbmcgYFsnMC4wLjAuMC8wJywgJzo6MCddYCBtZWFucyB0byBhbGxvdyBhbnkgSVB2NCBhbmQgSVB2NiBhZGRyZXNzIHRvIHVzZSB0aGUgbWFzdGVyIGtleSBhbmQgZWZmZWN0aXZlbHkgZGlzYWJsZXMgdGhlIElQIGZpbHRlci48YnI+PGJyPjxiPkNvbnNpZGVyYXRpb25zOjwvYj48YnI+LSBJUHY0IGFuZCBJUHY2IGFkZHJlc3NlcyBhcmUgbm90IGNvbXBhcmVkIGFnYWluc3QgZWFjaCBvdGhlci4gRWFjaCBJUCB2ZXJzaW9uIChJUHY0IGFuZCBJUHY2KSBuZWVkcyB0byBiZSBjb25zaWRlcmVkIHNlcGFyYXRlbHkuIEZvciBleGFtcGxlLCBgWycwLjAuMC4wLzAnXWAgYWxsb3dzIGFueSBJUHY0IGFkZHJlc3MgYW5kIGJsb2NrcyBldmVyeSBJUHY2IGFkZHJlc3MuIENvbnZlcnNlbHksIGBbJzo6MCddYCBhbGxvd3MgYW55IElQdjYgYWRkcmVzcyBhbmQgYmxvY2tzIGV2ZXJ5IElQdjQgYWRkcmVzcy48YnI+LSBLZWVwIGluIG1pbmQgdGhhdCB0aGUgSVAgdmVyc2lvbiBpbiB1c2UgZGVwZW5kcyBvbiB0aGUgbmV0d29yayBzdGFjayBvZiB0aGUgZW52aXJvbm1lbnQgaW4gd2hpY2ggUGFyc2UgU2VydmVyIHJ1bnMuIEEgbG9jYWwgZW52aXJvbm1lbnQgbWF5IHVzZSBhIGRpZmZlcmVudCBJUCB2ZXJzaW9uIHRoYW4gYSByZW1vdGUgZW52aXJvbm1lbnQuIEZvciBleGFtcGxlLCBpdCdzIHBvc3NpYmxlIHRoYXQgbG9jYWxseSB0aGUgdmFsdWUgYFsnMC4wLjAuMC8wJ11gIGFsbG93cyB0aGUgcmVxdWVzdCBJUCBiZWNhdXNlIHRoZSBlbnZpcm9ubWVudCBpcyB1c2luZyBJUHY0LCBidXQgd2hlbiBQYXJzZSBTZXJ2ZXIgaXMgZGVwbG95ZWQgcmVtb3RlbHkgdGhlIHJlcXVlc3QgSVAgaXMgYmxvY2tlZCBiZWNhdXNlIHRoZSByZW1vdGUgZW52aXJvbm1lbnQgaXMgdXNpbmcgSVB2Ni48YnI+LSBXaGVuIHNldHRpbmcgdGhlIG9wdGlvbiB2aWEgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgdGhlIG5vdGF0aW9uIGlzIGEgY29tbWEtc2VwYXJhdGVkIHN0cmluZywgZm9yIGV4YW1wbGUgYFxcXCIwLjAuMC4wLzAsOjowXFxcImAuPGJyPi0gSVB2NiB6b25lIGluZGljZXMgKGAlYCBzdWZmaXgpIGFyZSBub3Qgc3VwcG9ydGVkLCBmb3IgZXhhbXBsZSBgZmU4MDo6MSVldGgwYCwgYGZlODA6OjElMWAgb3IgYDo6MSVsb2AuPGJyPjxicj5EZWZhdWx0cyB0byBgWycxMjcuMC4wLjEnLCAnOjoxJ11gIHdoaWNoIG1lYW5zIHRoYXQgb25seSBgbG9jYWxob3N0YCwgdGhlIHNlcnZlciBpbnN0YW5jZSBvbiB3aGljaCBQYXJzZSBTZXJ2ZXIgcnVucywgaXMgYWxsb3dlZCB0byB1c2UgdGhlIG1hc3RlciBrZXkuXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmFycmF5UGFyc2VyLFxuICAgIGRlZmF1bHQ6IFsnMTI3LjAuMC4xJywgJzo6MSddLFxuICB9LFxuICBtYXN0ZXJLZXlUdGw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTUFTVEVSX0tFWV9UVEwnLFxuICAgIGhlbHA6XG4gICAgICAnKE9wdGlvbmFsKSBUaGUgZHVyYXRpb24gaW4gc2Vjb25kcyBmb3Igd2hpY2ggdGhlIGN1cnJlbnQgYG1hc3RlcktleWAgaXMgYmVpbmcgdXNlZCBiZWZvcmUgaXQgaXMgcmVxdWVzdGVkIGFnYWluIGlmIGBtYXN0ZXJLZXlgIGlzIHNldCB0byBhIGZ1bmN0aW9uLiBJZiBgbWFzdGVyS2V5YCBpcyBub3Qgc2V0IHRvIGEgZnVuY3Rpb24sIHRoaXMgb3B0aW9uIGhhcyBubyBlZmZlY3QuIERlZmF1bHQgaXMgYDBgLCB3aGljaCBtZWFucyB0aGUgbWFzdGVyIGtleSBpcyByZXF1ZXN0ZWQgYnkgaW52b2tpbmcgdGhlICBgbWFzdGVyS2V5YCBmdW5jdGlvbiBldmVyeSB0aW1lIHRoZSBtYXN0ZXIga2V5IGlzIHVzZWQgaW50ZXJuYWxseSBieSBQYXJzZSBTZXJ2ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdtYXN0ZXJLZXlUdGwnKSxcbiAgfSxcbiAgbWF4TGltaXQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTUFYX0xJTUlUJyxcbiAgICBoZWxwOiAnTWF4IHZhbHVlIGZvciBsaW1pdCBvcHRpb24gb24gcXVlcmllcywgZGVmYXVsdHMgdG8gdW5saW1pdGVkJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdtYXhMaW1pdCcpLFxuICB9LFxuICBtYXhMb2dGaWxlczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9NQVhfTE9HX0ZJTEVTJyxcbiAgICBoZWxwOlxuICAgICAgXCJNYXhpbXVtIG51bWJlciBvZiBsb2dzIHRvIGtlZXAuIElmIG5vdCBzZXQsIG5vIGxvZ3Mgd2lsbCBiZSByZW1vdmVkLiBUaGlzIGNhbiBiZSBhIG51bWJlciBvZiBmaWxlcyBvciBudW1iZXIgb2YgZGF5cy4gSWYgdXNpbmcgZGF5cywgYWRkICdkJyBhcyB0aGUgc3VmZml4LiAoZGVmYXVsdDogbnVsbClcIixcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyT3JTdHJpbmdQYXJzZXIoJ21heExvZ0ZpbGVzJyksXG4gIH0sXG4gIG1heFVwbG9hZFNpemU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTUFYX1VQTE9BRF9TSVpFJyxcbiAgICBoZWxwOiAnTWF4IGZpbGUgc2l6ZSBmb3IgdXBsb2FkcywgZGVmYXVsdHMgdG8gMjBtYicsXG4gICAgZGVmYXVsdDogJzIwbWInLFxuICB9LFxuICBtaWRkbGV3YXJlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX01JRERMRVdBUkUnLFxuICAgIGhlbHA6ICdtaWRkbGV3YXJlIGZvciBleHByZXNzIHNlcnZlciwgY2FuIGJlIHN0cmluZyBvciBmdW5jdGlvbicsXG4gIH0sXG4gIG1vdW50R3JhcGhRTDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9NT1VOVF9HUkFQSFFMJyxcbiAgICBoZWxwOiAnTW91bnRzIHRoZSBHcmFwaFFMIGVuZHBvaW50JyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgbW91bnRQYXRoOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX01PVU5UX1BBVEgnLFxuICAgIGhlbHA6ICdNb3VudCBwYXRoIGZvciB0aGUgc2VydmVyLCBkZWZhdWx0cyB0byAvcGFyc2UnLFxuICAgIGRlZmF1bHQ6ICcvcGFyc2UnLFxuICB9LFxuICBtb3VudFBsYXlncm91bmQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTU9VTlRfUExBWUdST1VORCcsXG4gICAgaGVscDogJ01vdW50cyB0aGUgR3JhcGhRTCBQbGF5Z3JvdW5kIC0gbmV2ZXIgdXNlIHRoaXMgb3B0aW9uIGluIHByb2R1Y3Rpb24nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBvYmplY3RJZFNpemU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfT0JKRUNUX0lEX1NJWkUnLFxuICAgIGhlbHA6IFwiU2V0cyB0aGUgbnVtYmVyIG9mIGNoYXJhY3RlcnMgaW4gZ2VuZXJhdGVkIG9iamVjdCBpZCdzLCBkZWZhdWx0IDEwXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignb2JqZWN0SWRTaXplJyksXG4gICAgZGVmYXVsdDogMTAsXG4gIH0sXG4gIHBhZ2VzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBR0VTJyxcbiAgICBoZWxwOiAnVGhlIG9wdGlvbnMgZm9yIHBhZ2VzIHN1Y2ggYXMgcGFzc3dvcmQgcmVzZXQgYW5kIGVtYWlsIHZlcmlmaWNhdGlvbi4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ1BhZ2VzT3B0aW9ucycsXG4gICAgZGVmYXVsdDoge30sXG4gIH0sXG4gIHBhc3N3b3JkUG9saWN5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBU1NXT1JEX1BPTElDWScsXG4gICAgaGVscDogJ1RoZSBwYXNzd29yZCBwb2xpY3kgZm9yIGVuZm9yY2luZyBwYXNzd29yZCByZWxhdGVkIHJ1bGVzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnUGFzc3dvcmRQb2xpY3lPcHRpb25zJyxcbiAgfSxcbiAgcGxheWdyb3VuZFBhdGg6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUExBWUdST1VORF9QQVRIJyxcbiAgICBoZWxwOiAnTW91bnQgcGF0aCBmb3IgdGhlIEdyYXBoUUwgUGxheWdyb3VuZCwgZGVmYXVsdHMgdG8gL3BsYXlncm91bmQnLFxuICAgIGRlZmF1bHQ6ICcvcGxheWdyb3VuZCcsXG4gIH0sXG4gIHBvcnQ6IHtcbiAgICBlbnY6ICdQT1JUJyxcbiAgICBoZWxwOiAnVGhlIHBvcnQgdG8gcnVuIHRoZSBQYXJzZVNlcnZlciwgZGVmYXVsdHMgdG8gMTMzNy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ3BvcnQnKSxcbiAgICBkZWZhdWx0OiAxMzM3LFxuICB9LFxuICBwcmVzZXJ2ZUZpbGVOYW1lOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BSRVNFUlZFX0ZJTEVfTkFNRScsXG4gICAgaGVscDogJ0VuYWJsZSAob3IgZGlzYWJsZSkgdGhlIGFkZGl0aW9uIG9mIGEgdW5pcXVlIGhhc2ggdG8gdGhlIGZpbGUgbmFtZXMnLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBwcmV2ZW50TG9naW5XaXRoVW52ZXJpZmllZEVtYWlsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BSRVZFTlRfTE9HSU5fV0lUSF9VTlZFUklGSUVEX0VNQUlMJyxcbiAgICBoZWxwOlxuICAgICAgXCJTZXQgdG8gYHRydWVgIHRvIHByZXZlbnQgYSB1c2VyIGZyb20gbG9nZ2luZyBpbiBpZiB0aGUgZW1haWwgaGFzIG5vdCB5ZXQgYmVlbiB2ZXJpZmllZCBhbmQgZW1haWwgdmVyaWZpY2F0aW9uIGlzIHJlcXVpcmVkLiBTdXBwb3J0cyBhIGZ1bmN0aW9uIHdpdGggYSByZXR1cm4gdmFsdWUgb2YgYHRydWVgIG9yIGBmYWxzZWAgZm9yIGNvbmRpdGlvbmFsIHByZXZlbnRpb24uIFRoZSBmdW5jdGlvbiByZWNlaXZlcyBhIHJlcXVlc3Qgb2JqZWN0IHRoYXQgaW5jbHVkZXMgYGNyZWF0ZWRXaXRoYCB0byBpbmRpY2F0ZSB3aGV0aGVyIHRoZSBpbnZvY2F0aW9uIGlzIGZvciBgc2lnbnVwYCBvciBgbG9naW5gIGFuZCB0aGUgdXNlZCBhdXRoIHByb3ZpZGVyLjxicj48YnI+VGhlIGBjcmVhdGVkV2l0aGAgdmFsdWVzIHBlciBzY2VuYXJpbzo8dWw+PGxpPlBhc3N3b3JkIHNpZ251cDogYHsgYWN0aW9uOiAnc2lnbnVwJywgYXV0aFByb3ZpZGVyOiAncGFzc3dvcmQnIH1gPC9saT48bGk+QXV0aCBwcm92aWRlciBzaWdudXA6IGB7IGFjdGlvbjogJ3NpZ251cCcsIGF1dGhQcm92aWRlcjogJzxwcm92aWRlcj4nIH1gPC9saT48bGk+UGFzc3dvcmQgbG9naW46IGB7IGFjdGlvbjogJ2xvZ2luJywgYXV0aFByb3ZpZGVyOiAncGFzc3dvcmQnIH1gPC9saT48bGk+QXV0aCBwcm92aWRlciBsb2dpbjogZnVuY3Rpb24gbm90IGludm9rZWQ7IGF1dGggcHJvdmlkZXIgbG9naW4gYnlwYXNzZXMgZW1haWwgdmVyaWZpY2F0aW9uPC9saT48L3VsPkRlZmF1bHQgaXMgYGZhbHNlYC48YnI+UmVxdWlyZXMgb3B0aW9uIGB2ZXJpZnlVc2VyRW1haWxzOiB0cnVlYC5cIixcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhbk9yRnVuY3Rpb25QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIHByZXZlbnRTaWdudXBXaXRoVW52ZXJpZmllZEVtYWlsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BSRVZFTlRfU0lHTlVQX1dJVEhfVU5WRVJJRklFRF9FTUFJTCcsXG4gICAgaGVscDpcbiAgICAgIFwiSWYgc2V0IHRvIGB0cnVlYCBpdCBwcmV2ZW50cyBhIHVzZXIgZnJvbSBzaWduaW5nIHVwIGlmIHRoZSBlbWFpbCBoYXMgbm90IHlldCBiZWVuIHZlcmlmaWVkIGFuZCBlbWFpbCB2ZXJpZmljYXRpb24gaXMgcmVxdWlyZWQuIEluIHRoYXQgY2FzZSB0aGUgc2VydmVyIHJlc3BvbmRzIHRvIHRoZSBzaWduLXVwIHdpdGggSFRUUCBzdGF0dXMgNDAwIGFuZCBhIFBhcnNlIEVycm9yIDIwNSBgRU1BSUxfTk9UX0ZPVU5EYC4gSWYgc2V0IHRvIGBmYWxzZWAgdGhlIHNlcnZlciByZXNwb25kcyB3aXRoIEhUVFAgc3RhdHVzIDIwMCwgYW5kIGNsaWVudCBTREtzIHJldHVybiBhbiB1bmF1dGhlbnRpY2F0ZWQgUGFyc2UgVXNlciB3aXRob3V0IHNlc3Npb24gdG9rZW4uIEluIHRoYXQgY2FzZSBzdWJzZXF1ZW50IHJlcXVlc3RzIGZhaWwgdW50aWwgdGhlIHVzZXIncyBlbWFpbCBhZGRyZXNzIGlzIHZlcmlmaWVkLjxicj48YnI+RGVmYXVsdCBpcyBgZmFsc2VgLjxicj5SZXF1aXJlcyBvcHRpb24gYHZlcmlmeVVzZXJFbWFpbHM6IHRydWVgLlwiLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBwcm90ZWN0ZWRGaWVsZHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUFJPVEVDVEVEX0ZJRUxEUycsXG4gICAgaGVscDogJ1Byb3RlY3RlZCBmaWVsZHMgdGhhdCBzaG91bGQgYmUgdHJlYXRlZCB3aXRoIGV4dHJhIHNlY3VyaXR5IHdoZW4gZmV0Y2hpbmcgZGV0YWlscy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgZGVmYXVsdDoge1xuICAgICAgX1VzZXI6IHtcbiAgICAgICAgJyonOiBbJ2VtYWlsJ10sXG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG4gIHB1YmxpY1NlcnZlclVSTDoge1xuICAgIGVudjogJ1BBUlNFX1BVQkxJQ19TRVJWRVJfVVJMJyxcbiAgICBoZWxwOlxuICAgICAgJ09wdGlvbmFsLiBUaGUgcHVibGljIFVSTCB0byBQYXJzZSBTZXJ2ZXIuIFRoaXMgVVJMIHdpbGwgYmUgdXNlZCB0byByZWFjaCBQYXJzZSBTZXJ2ZXIgcHVibGljbHkgZm9yIGZlYXR1cmVzIGxpa2UgcGFzc3dvcmQgcmVzZXQgYW5kIGVtYWlsIHZlcmlmaWNhdGlvbiBsaW5rcy4gVGhlIG9wdGlvbiBjYW4gYmUgc2V0IHRvIGEgc3RyaW5nIG9yIGEgZnVuY3Rpb24gdGhhdCBjYW4gYmUgYXN5bmNocm9ub3VzbHkgcmVzb2x2ZWQuIFRoZSByZXR1cm5lZCBVUkwgc3RyaW5nIG11c3Qgc3RhcnQgd2l0aCBgaHR0cDovL2Agb3IgYGh0dHBzOi8vYC4nLFxuICB9LFxuICBwdXNoOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BVU0gnLFxuICAgIGhlbHA6XG4gICAgICAnQ29uZmlndXJhdGlvbiBmb3IgcHVzaCwgYXMgc3RyaW5naWZpZWQgSlNPTi4gU2VlIGh0dHA6Ly9kb2NzLnBhcnNlcGxhdGZvcm0ub3JnL3BhcnNlLXNlcnZlci9ndWlkZS8jcHVzaC1ub3RpZmljYXRpb25zJyxcbiAgICBhY3Rpb246IHBhcnNlcnMub2JqZWN0UGFyc2VyLFxuICB9LFxuICByYXRlTGltaXQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUkFURV9MSU1JVCcsXG4gICAgaGVscDpcbiAgICAgIFwiT3B0aW9ucyB0byBsaW1pdCByZXBlYXRlZCByZXF1ZXN0cyB0byBQYXJzZSBTZXJ2ZXIgQVBJcy4gVGhpcyBjYW4gYmUgdXNlZCB0byBwcm90ZWN0IHNlbnNpdGl2ZSBlbmRwb2ludHMgc3VjaCBhcyBgL3JlcXVlc3RQYXNzd29yZFJlc2V0YCBmcm9tIGJydXRlLWZvcmNlIGF0dGFja3Mgb3IgUGFyc2UgU2VydmVyIGFzIGEgd2hvbGUgZnJvbSBkZW5pYWwtb2Ytc2VydmljZSAoRG9TKSBhdHRhY2tzLjxicj48YnI+XFx1MjEzOVxcdUZFMEYgTWluZCB0aGUgZm9sbG93aW5nIGxpbWl0YXRpb25zOjxicj4tIHJhdGUgbGltaXRzIGFwcGxpZWQgcGVyIElQIGFkZHJlc3M7IHRoaXMgbGltaXRzIHByb3RlY3Rpb24gYWdhaW5zdCBkaXN0cmlidXRlZCBkZW5pYWwtb2Ytc2VydmljZSAoRERvUykgYXR0YWNrcyB3aGVyZSBtYW55IHJlcXVlc3RzIGFyZSBjb21pbmcgZnJvbSB2YXJpb3VzIElQIGFkZHJlc3Nlczxicj4tIGlmIG11bHRpcGxlIFBhcnNlIFNlcnZlciBpbnN0YW5jZXMgYXJlIGJlaGluZCBhIGxvYWQgYmFsYW5jZXIgb3IgcmFuIGluIGEgY2x1c3RlciwgZWFjaCBpbnN0YW5jZSB3aWxsIGNhbGN1bGF0ZSBpdCdzIG93biByZXF1ZXN0IHJhdGVzLCBpbmRlcGVuZGVudCBmcm9tIG90aGVyIGluc3RhbmNlczsgdGhpcyBsaW1pdHMgdGhlIGFwcGxpY2FiaWxpdHkgb2YgdGhpcyBmZWF0dXJlIHdoZW4gdXNpbmcgYSBsb2FkIGJhbGFuY2VyIGFuZCBhbm90aGVyIHJhdGUgbGltaXRpbmcgc29sdXRpb24gdGhhdCB0YWtlcyByZXF1ZXN0cyBhY3Jvc3MgYWxsIGluc3RhbmNlcyBpbnRvIGFjY291bnQgbWF5IGJlIG1vcmUgc3VpdGFibGU8YnI+LSB0aGlzIGZlYXR1cmUgcHJvdmlkZXMgYmFzaWMgcHJvdGVjdGlvbiBhZ2FpbnN0IGRlbmlhbC1vZi1zZXJ2aWNlIGF0dGFja3MsIGJ1dCBhIG1vcmUgc29waGlzdGljYXRlZCBzb2x1dGlvbiB3b3JrcyBlYXJsaWVyIGluIHRoZSByZXF1ZXN0IGZsb3cgYW5kIHByZXZlbnRzIGEgbWFsaWNpb3VzIHJlcXVlc3RzIHRvIGV2ZW4gcmVhY2ggYSBzZXJ2ZXIgaW5zdGFuY2U7IGl0J3MgdGhlcmVmb3JlIHJlY29tbWVuZGVkIHRvIGltcGxlbWVudCBhIHNvbHV0aW9uIGFjY29yZGluZyB0byBhcmNoaXRlY3R1cmUgYW5kIHVzZXIgY2FzZS5cIixcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gICAgdHlwZTogJ1JhdGVMaW1pdE9wdGlvbnNbXScsXG4gICAgZGVmYXVsdDogW10sXG4gIH0sXG4gIHJlYWRPbmx5TWFzdGVyS2V5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JFQURfT05MWV9NQVNURVJfS0VZJyxcbiAgICBoZWxwOiAnUmVhZC1vbmx5IGtleSwgd2hpY2ggaGFzIHRoZSBzYW1lIGNhcGFiaWxpdGllcyBhcyBNYXN0ZXJLZXkgd2l0aG91dCB3cml0ZXMnLFxuICB9LFxuICByZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUkVRVUVTVF9DT05URVhUX01JRERMRVdBUkUnLFxuICAgIGhlbHA6XG4gICAgICAnT3B0aW9ucyB0byBjdXN0b21pemUgdGhlIHJlcXVlc3QgY29udGV4dCB1c2luZyBpbnZlcnNpb24gb2YgY29udHJvbC9kZXBlbmRlbmN5IGluamVjdGlvbi4nLFxuICB9LFxuICByZXF1ZXN0S2V5d29yZERlbnlsaXN0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JFUVVFU1RfS0VZV09SRF9ERU5ZTElTVCcsXG4gICAgaGVscDpcbiAgICAgICdBbiBhcnJheSBvZiBrZXlzIGFuZCB2YWx1ZXMgdGhhdCBhcmUgcHJvaGliaXRlZCBpbiBkYXRhYmFzZSByZWFkIGFuZCB3cml0ZSByZXF1ZXN0cyB0byBwcmV2ZW50IHBvdGVudGlhbCBzZWN1cml0eSB2dWxuZXJhYmlsaXRpZXMuIEl0IGlzIHBvc3NpYmxlIHRvIHNwZWNpZnkgb25seSBhIGtleSAoYHtcImtleVwiOlwiLi4uXCJ9YCksIG9ubHkgYSB2YWx1ZSAoYHtcInZhbHVlXCI6XCIuLi5cIn1gKSBvciBhIGtleS12YWx1ZSBwYWlyIChge1wia2V5XCI6XCIuLi5cIixcInZhbHVlXCI6XCIuLi5cIn1gKS4gVGhlIHNwZWNpZmljYXRpb24gY2FuIHVzZSB0aGUgZm9sbG93aW5nIHR5cGVzOiBgYm9vbGVhbmAsIGBudW1lcmljYCBvciBgc3RyaW5nYCwgd2hlcmUgYHN0cmluZ2Agd2lsbCBiZSBpbnRlcnByZXRlZCBhcyBhIHJlZ2V4IG5vdGF0aW9uLiBSZXF1ZXN0IGRhdGEgaXMgZGVlcC1zY2FubmVkIGZvciBtYXRjaGluZyBkZWZpbml0aW9ucyB0byBkZXRlY3QgYWxzbyBhbnkgbmVzdGVkIG9jY3VycmVuY2VzLiBEZWZhdWx0cyBhcmUgcGF0dGVybnMgdGhhdCBhcmUgbGlrZWx5IHRvIGJlIHVzZWQgaW4gbWFsaWNpb3VzIHJlcXVlc3RzLiBTZXR0aW5nIHRoaXMgb3B0aW9uIHdpbGwgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgcGF0dGVybnMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gICAgZGVmYXVsdDogW1xuICAgICAge1xuICAgICAgICBrZXk6ICdfYnNvbnR5cGUnLFxuICAgICAgICB2YWx1ZTogJ0NvZGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnY29uc3RydWN0b3InLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnX19wcm90b19fJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgcmVzdEFQSUtleToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SRVNUX0FQSV9LRVknLFxuICAgIGhlbHA6ICdLZXkgZm9yIFJFU1QgY2FsbHMnLFxuICB9LFxuICByZXZva2VTZXNzaW9uT25QYXNzd29yZFJlc2V0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JFVk9LRV9TRVNTSU9OX09OX1BBU1NXT1JEX1JFU0VUJyxcbiAgICBoZWxwOlxuICAgICAgXCJXaGVuIGEgdXNlciBjaGFuZ2VzIHRoZWlyIHBhc3N3b3JkLCBlaXRoZXIgdGhyb3VnaCB0aGUgcmVzZXQgcGFzc3dvcmQgZW1haWwgb3Igd2hpbGUgbG9nZ2VkIGluLCBhbGwgc2Vzc2lvbnMgYXJlIHJldm9rZWQgaWYgdGhpcyBpcyB0cnVlLiBTZXQgdG8gZmFsc2UgaWYgeW91IGRvbid0IHdhbnQgdG8gcmV2b2tlIHNlc3Npb25zLlwiLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIHNjaGVkdWxlZFB1c2g6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfU0NIRURVTEVEX1BVU0gnLFxuICAgIGhlbHA6ICdDb25maWd1cmF0aW9uIGZvciBwdXNoIHNjaGVkdWxpbmcsIGRlZmF1bHRzIHRvIGZhbHNlLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIHNjaGVtYToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TQ0hFTUEnLFxuICAgIGhlbHA6ICdEZWZpbmVkIHNjaGVtYScsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnU2NoZW1hT3B0aW9ucycsXG4gIH0sXG4gIHNlY3VyaXR5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NFQ1VSSVRZJyxcbiAgICBoZWxwOiAnVGhlIHNlY3VyaXR5IG9wdGlvbnMgdG8gaWRlbnRpZnkgYW5kIHJlcG9ydCB3ZWFrIHNlY3VyaXR5IHNldHRpbmdzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnU2VjdXJpdHlPcHRpb25zJyxcbiAgICBkZWZhdWx0OiB7fSxcbiAgfSxcbiAgc2VuZFVzZXJFbWFpbFZlcmlmaWNhdGlvbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TRU5EX1VTRVJfRU1BSUxfVkVSSUZJQ0FUSU9OJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgZmFsc2VgIHRvIHByZXZlbnQgc2VuZGluZyBvZiB2ZXJpZmljYXRpb24gZW1haWwuIFN1cHBvcnRzIGEgZnVuY3Rpb24gd2l0aCBhIHJldHVybiB2YWx1ZSBvZiBgdHJ1ZWAgb3IgYGZhbHNlYCBmb3IgY29uZGl0aW9uYWwgZW1haWwgc2VuZGluZy48YnI+PGJyPkRlZmF1bHQgaXMgYHRydWVgLjxicj4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuT3JGdW5jdGlvblBhcnNlcixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICB9LFxuICBzZXJ2ZXJDbG9zZUNvbXBsZXRlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NFUlZFUl9DTE9TRV9DT01QTEVURScsXG4gICAgaGVscDogJ0NhbGxiYWNrIHdoZW4gc2VydmVyIGhhcyBjbG9zZWQnLFxuICB9LFxuICBzZXJ2ZXJVUkw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfVVJMJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBVUkwgdG8gUGFyc2UgU2VydmVyLjxicj48YnI+XFx1MjZBMFxcdUZFMEYgQ2VydGFpbiBzZXJ2ZXIgZmVhdHVyZXMgb3IgYWRhcHRlcnMgbWF5IHJlcXVpcmUgUGFyc2UgU2VydmVyIHRvIGJlIGFibGUgdG8gY2FsbCBpdHNlbGYgYnkgbWFraW5nIHJlcXVlc3RzIHRvIHRoZSBVUkwgc2V0IGluIGBzZXJ2ZXJVUkxgLiBJZiBhIGZlYXR1cmUgcmVxdWlyZXMgdGhpcywgaXQgaXMgbWVudGlvbmVkIGluIHRoZSBkb2N1bWVudGF0aW9uLiBJbiB0aGF0IGNhc2UgZW5zdXJlIHRoYXQgdGhlIFVSTCBpcyBhY2Nlc3NpYmxlIGZyb20gdGhlIHNlcnZlciBpdHNlbGYuJyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgc2Vzc2lvbkxlbmd0aDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TRVNTSU9OX0xFTkdUSCcsXG4gICAgaGVscDogJ1Nlc3Npb24gZHVyYXRpb24sIGluIHNlY29uZHMsIGRlZmF1bHRzIHRvIDEgeWVhcicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignc2Vzc2lvbkxlbmd0aCcpLFxuICAgIGRlZmF1bHQ6IDMxNTM2MDAwLFxuICB9LFxuICBzaWxlbnQ6IHtcbiAgICBlbnY6ICdTSUxFTlQnLFxuICAgIGhlbHA6ICdEaXNhYmxlcyBjb25zb2xlIG91dHB1dCcsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gIH0sXG4gIHN0YXJ0TGl2ZVF1ZXJ5U2VydmVyOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NUQVJUX0xJVkVfUVVFUllfU0VSVkVSJyxcbiAgICBoZWxwOiAnU3RhcnRzIHRoZSBsaXZlUXVlcnkgc2VydmVyJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgdHJ1c3RQcm94eToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9UUlVTVF9QUk9YWScsXG4gICAgaGVscDpcbiAgICAgICdUaGUgdHJ1c3QgcHJveHkgc2V0dGluZ3MuIEl0IGlzIGltcG9ydGFudCB0byB1bmRlcnN0YW5kIHRoZSBleGFjdCBzZXR1cCBvZiB0aGUgcmV2ZXJzZSBwcm94eSwgc2luY2UgdGhpcyBzZXR0aW5nIHdpbGwgdHJ1c3QgdmFsdWVzIHByb3ZpZGVkIGluIHRoZSBQYXJzZSBTZXJ2ZXIgQVBJIHJlcXVlc3QuIFNlZSB0aGUgPGEgaHJlZj1cImh0dHBzOi8vZXhwcmVzc2pzLmNvbS9lbi9ndWlkZS9iZWhpbmQtcHJveGllcy5odG1sXCI+ZXhwcmVzcyB0cnVzdCBwcm94eSBzZXR0aW5nczwvYT4gZG9jdW1lbnRhdGlvbi4gRGVmYXVsdHMgdG8gYGZhbHNlYC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgZGVmYXVsdDogW10sXG4gIH0sXG4gIHVzZXJTZW5zaXRpdmVGaWVsZHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfVVNFUl9TRU5TSVRJVkVfRklFTERTJyxcbiAgICBoZWxwOlxuICAgICAgJ1BlcnNvbmFsbHkgaWRlbnRpZmlhYmxlIGluZm9ybWF0aW9uIGZpZWxkcyBpbiB0aGUgdXNlciB0YWJsZSB0aGUgc2hvdWxkIGJlIHJlbW92ZWQgZm9yIG5vbi1hdXRob3JpemVkIHVzZXJzLiBEZXByZWNhdGVkIEBzZWUgcHJvdGVjdGVkRmllbGRzJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gIH0sXG4gIHZlcmJvc2U6IHtcbiAgICBlbnY6ICdWRVJCT1NFJyxcbiAgICBoZWxwOiAnU2V0IHRoZSBsb2dnaW5nIHRvIHZlcmJvc2UnLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICB9LFxuICB2ZXJpZnlTZXJ2ZXJVcmw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfVkVSSUZZX1NFUlZFUl9VUkwnLFxuICAgIGhlbHA6XG4gICAgICAnUGFyc2UgU2VydmVyIG1ha2VzIGEgSFRUUCByZXF1ZXN0IHRvIHRoZSBVUkwgc2V0IGluIGBzZXJ2ZXJVUkxgIGF0IHRoZSBlbmQgb2YgaXRzIGxhdW5jaCByb3V0aW5lIHRvIHZlcmlmeSB0aGF0IHRoZSBsYXVuY2ggc3VjY2VlZGVkLiBJZiB0aGlzIG9wdGlvbiBpcyBzZXQgdG8gYGZhbHNlYCwgdGhlIHZlcmlmaWNhdGlvbiB3aWxsIGJlIHNraXBwZWQuIFRoaXMgY2FuIGJlIHVzZWZ1bCBpbiBlbnZpcm9ubWVudHMgd2hlcmUgdGhlIHNlcnZlciBVUkwgaXMgbm90IGFjY2Vzc2libGUgZnJvbSB0aGUgc2VydmVyIGl0c2VsZiwgc3VjaCBhcyB3aGVuIHJ1bm5pbmcgYmVoaW5kIGEgZmlyZXdhbGwgb3IgaW4gY2VydGFpbiBjb250YWluZXJpemVkIGVudmlyb25tZW50cy48YnI+PGJyPlxcdTI2QTBcXHVGRTBGIFNlcnZlciBVUkwgdmVyaWZpY2F0aW9uIHJlcXVpcmVzIFBhcnNlIFNlcnZlciB0byBiZSBhYmxlIHRvIGNhbGwgaXRzZWxmIGJ5IG1ha2luZyByZXF1ZXN0cyB0byB0aGUgVVJMIHNldCBpbiBgc2VydmVyVVJMYC48YnI+PGJyPkRlZmF1bHQgaXMgYHRydWVgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgdmVyaWZ5VXNlckVtYWlsczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9WRVJJRllfVVNFUl9FTUFJTFMnLFxuICAgIGhlbHA6XG4gICAgICBcIlNldCB0byBgdHJ1ZWAgdG8gcmVxdWlyZSB1c2VycyB0byB2ZXJpZnkgdGhlaXIgZW1haWwgYWRkcmVzcyB0byBjb21wbGV0ZSB0aGUgc2lnbi11cCBwcm9jZXNzLiBTdXBwb3J0cyBhIGZ1bmN0aW9uIHdpdGggYSByZXR1cm4gdmFsdWUgb2YgYHRydWVgIG9yIGBmYWxzZWAgZm9yIGNvbmRpdGlvbmFsIHZlcmlmaWNhdGlvbi4gVGhlIGZ1bmN0aW9uIHJlY2VpdmVzIGEgcmVxdWVzdCBvYmplY3QgdGhhdCBpbmNsdWRlcyBgY3JlYXRlZFdpdGhgIHRvIGluZGljYXRlIHdoZXRoZXIgdGhlIGludm9jYXRpb24gaXMgZm9yIGBzaWdudXBgIG9yIGBsb2dpbmAgYW5kIHRoZSB1c2VkIGF1dGggcHJvdmlkZXIuPGJyPjxicj5UaGUgYGNyZWF0ZWRXaXRoYCB2YWx1ZXMgcGVyIHNjZW5hcmlvOjx1bD48bGk+UGFzc3dvcmQgc2lnbnVwOiBgeyBhY3Rpb246ICdzaWdudXAnLCBhdXRoUHJvdmlkZXI6ICdwYXNzd29yZCcgfWA8L2xpPjxsaT5BdXRoIHByb3ZpZGVyIHNpZ251cDogYHsgYWN0aW9uOiAnc2lnbnVwJywgYXV0aFByb3ZpZGVyOiAnPHByb3ZpZGVyPicgfWA8L2xpPjxsaT5QYXNzd29yZCBsb2dpbjogYHsgYWN0aW9uOiAnbG9naW4nLCBhdXRoUHJvdmlkZXI6ICdwYXNzd29yZCcgfWA8L2xpPjxsaT5BdXRoIHByb3ZpZGVyIGxvZ2luOiBmdW5jdGlvbiBub3QgaW52b2tlZDsgYXV0aCBwcm92aWRlciBsb2dpbiBieXBhc3NlcyBlbWFpbCB2ZXJpZmljYXRpb248L2xpPjxsaT5SZXNlbmQgdmVyaWZpY2F0aW9uIGVtYWlsOiBgY3JlYXRlZFdpdGhgIGlzIGB1bmRlZmluZWRgOyB1c2UgdGhlIGByZXNlbmRSZXF1ZXN0YCBwcm9wZXJ0eSB0byBpZGVudGlmeSB0aG9zZTwvbGk+PC91bD5EZWZhdWx0IGlzIGBmYWxzZWAuXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5PckZ1bmN0aW9uUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICB3ZWJob29rS2V5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1dFQkhPT0tfS0VZJyxcbiAgICBoZWxwOiAnS2V5IHNlbnQgd2l0aCBvdXRnb2luZyB3ZWJob29rIGNhbGxzJyxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5SYXRlTGltaXRPcHRpb25zID0ge1xuICBlcnJvclJlc3BvbnNlTWVzc2FnZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SQVRFX0xJTUlUX0VSUk9SX1JFU1BPTlNFX01FU1NBR0UnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIGVycm9yIG1lc3NhZ2UgdGhhdCBzaG91bGQgYmUgcmV0dXJuZWQgaW4gdGhlIGJvZHkgb2YgdGhlIEhUVFAgNDI5IHJlc3BvbnNlIHdoZW4gdGhlIHJhdGUgbGltaXQgaXMgaGl0LiBEZWZhdWx0IGlzIGBUb28gbWFueSByZXF1ZXN0cy5gLicsXG4gICAgZGVmYXVsdDogJ1RvbyBtYW55IHJlcXVlc3RzLicsXG4gIH0sXG4gIGluY2x1ZGVJbnRlcm5hbFJlcXVlc3RzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JBVEVfTElNSVRfSU5DTFVERV9JTlRFUk5BTF9SRVFVRVNUUycsXG4gICAgaGVscDpcbiAgICAgICdPcHRpb25hbCwgaWYgYHRydWVgIHRoZSByYXRlIGxpbWl0IHdpbGwgYWxzbyBhcHBseSB0byByZXF1ZXN0cyB0aGF0IGFyZSBtYWRlIGluIGJ5IENsb3VkIENvZGUsIGRlZmF1bHQgaXMgYGZhbHNlYC4gTm90ZSB0aGF0IGEgcHVibGljIENsb3VkIENvZGUgZnVuY3Rpb24gdGhhdCB0cmlnZ2VycyBpbnRlcm5hbCByZXF1ZXN0cyBtYXkgY2lyY3VtdmVudCByYXRlIGxpbWl0aW5nIGFuZCBiZSB2dWxuZXJhYmxlIHRvIGF0dGFja3MuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgaW5jbHVkZU1hc3RlcktleToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SQVRFX0xJTUlUX0lOQ0xVREVfTUFTVEVSX0tFWScsXG4gICAgaGVscDpcbiAgICAgICdPcHRpb25hbCwgaWYgYHRydWVgIHRoZSByYXRlIGxpbWl0IHdpbGwgYWxzbyBhcHBseSB0byByZXF1ZXN0cyB1c2luZyB0aGUgYG1hc3RlcktleWAsIGRlZmF1bHQgaXMgYGZhbHNlYC4gTm90ZSB0aGF0IGEgcHVibGljIENsb3VkIENvZGUgZnVuY3Rpb24gdGhhdCB0cmlnZ2VycyBpbnRlcm5hbCByZXF1ZXN0cyB1c2luZyB0aGUgYG1hc3RlcktleWAgbWF5IGNpcmN1bXZlbnQgcmF0ZSBsaW1pdGluZyBhbmQgYmUgdnVsbmVyYWJsZSB0byBhdHRhY2tzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIHJlZGlzVXJsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JBVEVfTElNSVRfUkVESVNfVVJMJyxcbiAgICBoZWxwOlxuICAgICAgJ09wdGlvbmFsLCB0aGUgVVJMIG9mIHRoZSBSZWRpcyBzZXJ2ZXIgdG8gc3RvcmUgcmF0ZSBsaW1pdCBkYXRhLiBUaGlzIGFsbG93cyB0byByYXRlIGxpbWl0IHJlcXVlc3RzIGZvciBtdWx0aXBsZSBzZXJ2ZXJzIGJ5IGNhbGN1bGF0aW5nIHRoZSBzdW0gb2YgYWxsIHJlcXVlc3RzIGFjcm9zcyBhbGwgc2VydmVycy4gVGhpcyBpcyB1c2VmdWwgaWYgbXVsdGlwbGUgc2VydmVycyBhcmUgcHJvY2Vzc2luZyByZXF1ZXN0cyBiZWhpbmQgYSBsb2FkIGJhbGFuY2VyLiBGb3IgZXhhbXBsZSwgdGhlIGxpbWl0IG9mIDEwIHJlcXVlc3RzIGlzIHJlYWNoZWQgaWYgZWFjaCBvZiAyIHNlcnZlcnMgcHJvY2Vzc2VkIDUgcmVxdWVzdHMuJyxcbiAgfSxcbiAgcmVxdWVzdENvdW50OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JBVEVfTElNSVRfUkVRVUVTVF9DT1VOVCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgbnVtYmVyIG9mIHJlcXVlc3RzIHRoYXQgY2FuIGJlIG1hZGUgcGVyIElQIGFkZHJlc3Mgd2l0aGluIHRoZSB0aW1lIHdpbmRvdyBzZXQgaW4gYHJlcXVlc3RUaW1lV2luZG93YCBiZWZvcmUgdGhlIHJhdGUgbGltaXQgaXMgYXBwbGllZC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ3JlcXVlc3RDb3VudCcpLFxuICB9LFxuICByZXF1ZXN0TWV0aG9kczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SQVRFX0xJTUlUX1JFUVVFU1RfTUVUSE9EUycsXG4gICAgaGVscDpcbiAgICAgICdPcHRpb25hbCwgdGhlIEhUVFAgcmVxdWVzdCBtZXRob2RzIHRvIHdoaWNoIHRoZSByYXRlIGxpbWl0IHNob3VsZCBiZSBhcHBsaWVkLCBkZWZhdWx0IGlzIGFsbCBtZXRob2RzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmFycmF5UGFyc2VyLFxuICB9LFxuICByZXF1ZXN0UGF0aDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SQVRFX0xJTUlUX1JFUVVFU1RfUEFUSCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgcGF0aCBvZiB0aGUgQVBJIHJvdXRlIHRvIGJlIHJhdGUgbGltaXRlZC4gUm91dGUgcGF0aHMsIGluIGNvbWJpbmF0aW9uIHdpdGggYSByZXF1ZXN0IG1ldGhvZCwgZGVmaW5lIHRoZSBlbmRwb2ludHMgYXQgd2hpY2ggcmVxdWVzdHMgY2FuIGJlIG1hZGUuIFJvdXRlIHBhdGhzIGNhbiBiZSBzdHJpbmdzIG9yIHN0cmluZyBwYXR0ZXJucyBmb2xsb3dpbmcgPGEgaHJlZj1cImh0dHBzOi8vZ2l0aHViLmNvbS9waWxsYXJqcy9wYXRoLXRvLXJlZ2V4cFwiPnBhdGgtdG8tcmVnZXhwIHY4PC9hPiBzeW50YXguJyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgcmVxdWVzdFRpbWVXaW5kb3c6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUkFURV9MSU1JVF9SRVFVRVNUX1RJTUVfV0lORE9XJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSB3aW5kb3cgb2YgdGltZSBpbiBtaWxsaXNlY29uZHMgd2l0aGluIHdoaWNoIHRoZSBudW1iZXIgb2YgcmVxdWVzdHMgc2V0IGluIGByZXF1ZXN0Q291bnRgIGNhbiBiZSBtYWRlIGJlZm9yZSB0aGUgcmF0ZSBsaW1pdCBpcyBhcHBsaWVkLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcigncmVxdWVzdFRpbWVXaW5kb3cnKSxcbiAgfSxcbiAgem9uZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SQVRFX0xJTUlUX1pPTkUnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIHR5cGUgb2YgcmF0ZSBsaW1pdCB0byBhcHBseS4gVGhlIGZvbGxvd2luZyB0eXBlcyBhcmUgc3VwcG9ydGVkOjx1bD48bGk+YGdsb2JhbGA6IHJhdGUgbGltaXQgYmFzZWQgb24gdGhlIG51bWJlciBvZiByZXF1ZXN0cyBtYWRlIGJ5IGFsbCB1c2VyczwvbGk+PGxpPmBpcGA6IHJhdGUgbGltaXQgYmFzZWQgb24gdGhlIElQIGFkZHJlc3Mgb2YgdGhlIHJlcXVlc3Q8L2xpPjxsaT5gdXNlcmA6IHJhdGUgbGltaXQgYmFzZWQgb24gdGhlIHVzZXIgSUQgb2YgdGhlIHJlcXVlc3Q8L2xpPjxsaT5gc2Vzc2lvbmA6IHJhdGUgbGltaXQgYmFzZWQgb24gdGhlIHNlc3Npb24gdG9rZW4gb2YgdGhlIHJlcXVlc3Q8L2xpPjwvdWw+RGVmYXVsdCBpcyBgaXBgLicsXG4gICAgZGVmYXVsdDogJ2lwJyxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5TZWN1cml0eU9wdGlvbnMgPSB7XG4gIGNoZWNrR3JvdXBzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NFQ1VSSVRZX0NIRUNLX0dST1VQUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgc2VjdXJpdHkgY2hlY2sgZ3JvdXBzIHRvIHJ1bi4gVGhpcyBhbGxvd3MgdG8gYWRkIGN1c3RvbSBzZWN1cml0eSBjaGVja3Mgb3Igb3ZlcnJpZGUgZXhpc3Rpbmcgb25lcy4gRGVmYXVsdCBhcmUgdGhlIGdyb3VwcyBkZWZpbmVkIGluIGBDaGVja0dyb3Vwcy5qc2AuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gIH0sXG4gIGVuYWJsZUNoZWNrOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NFQ1VSSVRZX0VOQUJMRV9DSEVDSycsXG4gICAgaGVscDogJ0lzIHRydWUgaWYgUGFyc2UgU2VydmVyIHNob3VsZCBjaGVjayBmb3Igd2VhayBzZWN1cml0eSBzZXR0aW5ncy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBlbmFibGVDaGVja0xvZzoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TRUNVUklUWV9FTkFCTEVfQ0hFQ0tfTE9HJyxcbiAgICBoZWxwOlxuICAgICAgJ0lzIHRydWUgaWYgdGhlIHNlY3VyaXR5IGNoZWNrIHJlcG9ydCBzaG91bGQgYmUgd3JpdHRlbiB0byBsb2dzLiBUaGlzIHNob3VsZCBvbmx5IGJlIGVuYWJsZWQgdGVtcG9yYXJpbHkgdG8gbm90IGV4cG9zZSB3ZWFrIHNlY3VyaXR5IHNldHRpbmdzIGluIGxvZ3MuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5QYWdlc09wdGlvbnMgPSB7XG4gIGN1c3RvbVJvdXRlczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19DVVNUT01fUk9VVEVTJyxcbiAgICBoZWxwOiAnVGhlIGN1c3RvbSByb3V0ZXMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gICAgdHlwZTogJ1BhZ2VzUm91dGVbXScsXG4gICAgZGVmYXVsdDogW10sXG4gIH0sXG4gIGN1c3RvbVVybHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfQ1VTVE9NX1VSTFMnLFxuICAgIGhlbHA6ICdUaGUgVVJMcyB0byB0aGUgY3VzdG9tIHBhZ2VzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnUGFnZXNDdXN0b21VcmxzT3B0aW9ucycsXG4gICAgZGVmYXVsdDoge30sXG4gIH0sXG4gIGVuYWJsZUxvY2FsaXphdGlvbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19FTkFCTEVfTE9DQUxJWkFUSU9OJyxcbiAgICBoZWxwOiAnSXMgdHJ1ZSBpZiBwYWdlcyBzaG91bGQgYmUgbG9jYWxpemVkOyB0aGlzIGhhcyBubyBlZmZlY3Qgb24gY3VzdG9tIHBhZ2UgcmVkaXJlY3RzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGVuYWJsZVJvdXRlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19FTkFCTEVfUk9VVEVSJyxcbiAgICBoZWxwOlxuICAgICAgJ0lzIHRydWUgaWYgdGhlIHBhZ2VzIHJvdXRlciBzaG91bGQgYmUgZW5hYmxlZDsgdGhpcyBpcyByZXF1aXJlZCBmb3IgYW55IG9mIHRoZSBwYWdlcyBvcHRpb25zIHRvIHRha2UgZWZmZWN0LicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGZvcmNlUmVkaXJlY3Q6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfRk9SQ0VfUkVESVJFQ1QnLFxuICAgIGhlbHA6XG4gICAgICAnSXMgdHJ1ZSBpZiByZXNwb25zZXMgc2hvdWxkIGFsd2F5cyBiZSByZWRpcmVjdHMgYW5kIG5ldmVyIGNvbnRlbnQsIGZhbHNlIGlmIHRoZSByZXNwb25zZSB0eXBlIHNob3VsZCBkZXBlbmQgb24gdGhlIHJlcXVlc3QgdHlwZSAoR0VUIHJlcXVlc3QgLT4gY29udGVudCByZXNwb25zZTsgUE9TVCByZXF1ZXN0IC0+IHJlZGlyZWN0IHJlc3BvbnNlKS4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBsb2NhbGl6YXRpb25GYWxsYmFja0xvY2FsZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19MT0NBTElaQVRJT05fRkFMTEJBQ0tfTE9DQUxFJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBmYWxsYmFjayBsb2NhbGUgZm9yIGxvY2FsaXphdGlvbiBpZiBubyBtYXRjaGluZyB0cmFuc2xhdGlvbiBpcyBwcm92aWRlZCBmb3IgdGhlIGdpdmVuIGxvY2FsZS4gVGhpcyBpcyBvbmx5IHJlbGV2YW50IHdoZW4gcHJvdmlkaW5nIHRyYW5zbGF0aW9uIHJlc291cmNlcyB2aWEgSlNPTiBmaWxlLicsXG4gICAgZGVmYXVsdDogJ2VuJyxcbiAgfSxcbiAgbG9jYWxpemF0aW9uSnNvblBhdGg6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfTE9DQUxJWkFUSU9OX0pTT05fUEFUSCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgcGF0aCB0byB0aGUgSlNPTiBmaWxlIGZvciBsb2NhbGl6YXRpb247IHRoZSB0cmFuc2xhdGlvbnMgd2lsbCBiZSB1c2VkIHRvIGZpbGwgdGVtcGxhdGUgcGxhY2Vob2xkZXJzIGFjY29yZGluZyB0byB0aGUgbG9jYWxlLicsXG4gIH0sXG4gIHBhZ2VzRW5kcG9pbnQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfUEFHRVNfRU5EUE9JTlQnLFxuICAgIGhlbHA6IFwiVGhlIEFQSSBlbmRwb2ludCBmb3IgdGhlIHBhZ2VzLiBEZWZhdWx0IGlzICdhcHBzJy5cIixcbiAgICBkZWZhdWx0OiAnYXBwcycsXG4gIH0sXG4gIHBhZ2VzUGF0aDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19QQUdFU19QQVRIJyxcbiAgICBoZWxwOlxuICAgICAgXCJUaGUgcGF0aCB0byB0aGUgcGFnZXMgZGlyZWN0b3J5OyB0aGlzIGFsc28gZGVmaW5lcyB3aGVyZSB0aGUgc3RhdGljIGVuZHBvaW50ICcvYXBwcycgcG9pbnRzIHRvLiBEZWZhdWx0IGlzIHRoZSAnLi9wdWJsaWMvJyBkaXJlY3RvcnkuXCIsXG4gICAgZGVmYXVsdDogJy4vcHVibGljJyxcbiAgfSxcbiAgcGxhY2Vob2xkZXJzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBR0VTX1BMQUNFSE9MREVSUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgcGxhY2Vob2xkZXIga2V5cyBhbmQgdmFsdWVzIHdoaWNoIHdpbGwgYmUgZmlsbGVkIGluIHBhZ2VzOyB0aGlzIGNhbiBiZSBhIHNpbXBsZSBvYmplY3Qgb3IgYSBjYWxsYmFjayBmdW5jdGlvbi4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgZGVmYXVsdDoge30sXG4gIH0sXG59O1xubW9kdWxlLmV4cG9ydHMuUGFnZXNSb3V0ZSA9IHtcbiAgaGFuZGxlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19ST1VURV9IQU5ETEVSJyxcbiAgICBoZWxwOiAnVGhlIHJvdXRlIGhhbmRsZXIgdGhhdCBpcyBhbiBhc3luYyBmdW5jdGlvbi4nLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxuICBtZXRob2Q6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfUk9VVEVfTUVUSE9EJyxcbiAgICBoZWxwOiBcIlRoZSByb3V0ZSBtZXRob2QsIGUuZy4gJ0dFVCcgb3IgJ1BPU1QnLlwiLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxuICBwYXRoOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBR0VTX1JPVVRFX1BBVEgnLFxuICAgIGhlbHA6ICdUaGUgcm91dGUgcGF0aC4nLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLlBhZ2VzQ3VzdG9tVXJsc09wdGlvbnMgPSB7XG4gIGVtYWlsVmVyaWZpY2F0aW9uTGlua0V4cGlyZWQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfQ1VTVE9NX1VSTF9FTUFJTF9WRVJJRklDQVRJT05fTElOS19FWFBJUkVEJyxcbiAgICBoZWxwOiAnVGhlIFVSTCB0byB0aGUgY3VzdG9tIHBhZ2UgZm9yIGVtYWlsIHZlcmlmaWNhdGlvbiAtPiBsaW5rIGV4cGlyZWQuJyxcbiAgfSxcbiAgZW1haWxWZXJpZmljYXRpb25MaW5rSW52YWxpZDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19DVVNUT01fVVJMX0VNQUlMX1ZFUklGSUNBVElPTl9MSU5LX0lOVkFMSUQnLFxuICAgIGhlbHA6ICdUaGUgVVJMIHRvIHRoZSBjdXN0b20gcGFnZSBmb3IgZW1haWwgdmVyaWZpY2F0aW9uIC0+IGxpbmsgaW52YWxpZC4nLFxuICB9LFxuICBlbWFpbFZlcmlmaWNhdGlvblNlbmRGYWlsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBR0VTX0NVU1RPTV9VUkxfRU1BSUxfVkVSSUZJQ0FUSU9OX1NFTkRfRkFJTCcsXG4gICAgaGVscDogJ1RoZSBVUkwgdG8gdGhlIGN1c3RvbSBwYWdlIGZvciBlbWFpbCB2ZXJpZmljYXRpb24gLT4gbGluayBzZW5kIGZhaWwuJyxcbiAgfSxcbiAgZW1haWxWZXJpZmljYXRpb25TZW5kU3VjY2Vzczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19DVVNUT01fVVJMX0VNQUlMX1ZFUklGSUNBVElPTl9TRU5EX1NVQ0NFU1MnLFxuICAgIGhlbHA6ICdUaGUgVVJMIHRvIHRoZSBjdXN0b20gcGFnZSBmb3IgZW1haWwgdmVyaWZpY2F0aW9uIC0+IHJlc2VuZCBsaW5rIC0+IHN1Y2Nlc3MuJyxcbiAgfSxcbiAgZW1haWxWZXJpZmljYXRpb25TdWNjZXNzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBR0VTX0NVU1RPTV9VUkxfRU1BSUxfVkVSSUZJQ0FUSU9OX1NVQ0NFU1MnLFxuICAgIGhlbHA6ICdUaGUgVVJMIHRvIHRoZSBjdXN0b20gcGFnZSBmb3IgZW1haWwgdmVyaWZpY2F0aW9uIC0+IHN1Y2Nlc3MuJyxcbiAgfSxcbiAgcGFzc3dvcmRSZXNldDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19DVVNUT01fVVJMX1BBU1NXT1JEX1JFU0VUJyxcbiAgICBoZWxwOiAnVGhlIFVSTCB0byB0aGUgY3VzdG9tIHBhZ2UgZm9yIHBhc3N3b3JkIHJlc2V0LicsXG4gIH0sXG4gIHBhc3N3b3JkUmVzZXRMaW5rSW52YWxpZDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19DVVNUT01fVVJMX1BBU1NXT1JEX1JFU0VUX0xJTktfSU5WQUxJRCcsXG4gICAgaGVscDogJ1RoZSBVUkwgdG8gdGhlIGN1c3RvbSBwYWdlIGZvciBwYXNzd29yZCByZXNldCAtPiBsaW5rIGludmFsaWQuJyxcbiAgfSxcbiAgcGFzc3dvcmRSZXNldFN1Y2Nlc3M6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfQ1VTVE9NX1VSTF9QQVNTV09SRF9SRVNFVF9TVUNDRVNTJyxcbiAgICBoZWxwOiAnVGhlIFVSTCB0byB0aGUgY3VzdG9tIHBhZ2UgZm9yIHBhc3N3b3JkIHJlc2V0IC0+IHN1Y2Nlc3MuJyxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5DdXN0b21QYWdlc09wdGlvbnMgPSB7XG4gIGNob29zZVBhc3N3b3JkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NVU1RPTV9QQUdFU19DSE9PU0VfUEFTU1dPUkQnLFxuICAgIGhlbHA6ICdjaG9vc2UgcGFzc3dvcmQgcGFnZSBwYXRoJyxcbiAgfSxcbiAgZXhwaXJlZFZlcmlmaWNhdGlvbkxpbms6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQ1VTVE9NX1BBR0VTX0VYUElSRURfVkVSSUZJQ0FUSU9OX0xJTksnLFxuICAgIGhlbHA6ICdleHBpcmVkIHZlcmlmaWNhdGlvbiBsaW5rIHBhZ2UgcGF0aCcsXG4gIH0sXG4gIGludmFsaWRMaW5rOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NVU1RPTV9QQUdFU19JTlZBTElEX0xJTksnLFxuICAgIGhlbHA6ICdpbnZhbGlkIGxpbmsgcGFnZSBwYXRoJyxcbiAgfSxcbiAgaW52YWxpZFBhc3N3b3JkUmVzZXRMaW5rOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NVU1RPTV9QQUdFU19JTlZBTElEX1BBU1NXT1JEX1JFU0VUX0xJTksnLFxuICAgIGhlbHA6ICdpbnZhbGlkIHBhc3N3b3JkIHJlc2V0IGxpbmsgcGFnZSBwYXRoJyxcbiAgfSxcbiAgaW52YWxpZFZlcmlmaWNhdGlvbkxpbms6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQ1VTVE9NX1BBR0VTX0lOVkFMSURfVkVSSUZJQ0FUSU9OX0xJTksnLFxuICAgIGhlbHA6ICdpbnZhbGlkIHZlcmlmaWNhdGlvbiBsaW5rIHBhZ2UgcGF0aCcsXG4gIH0sXG4gIGxpbmtTZW5kRmFpbDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DVVNUT01fUEFHRVNfTElOS19TRU5EX0ZBSUwnLFxuICAgIGhlbHA6ICd2ZXJpZmljYXRpb24gbGluayBzZW5kIGZhaWwgcGFnZSBwYXRoJyxcbiAgfSxcbiAgbGlua1NlbmRTdWNjZXNzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NVU1RPTV9QQUdFU19MSU5LX1NFTkRfU1VDQ0VTUycsXG4gICAgaGVscDogJ3ZlcmlmaWNhdGlvbiBsaW5rIHNlbmQgc3VjY2VzcyBwYWdlIHBhdGgnLFxuICB9LFxuICBwYXJzZUZyYW1lVVJMOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NVU1RPTV9QQUdFU19QQVJTRV9GUkFNRV9VUkwnLFxuICAgIGhlbHA6ICdmb3IgbWFza2luZyB1c2VyLWZhY2luZyBwYWdlcycsXG4gIH0sXG4gIHBhc3N3b3JkUmVzZXRTdWNjZXNzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NVU1RPTV9QQUdFU19QQVNTV09SRF9SRVNFVF9TVUNDRVNTJyxcbiAgICBoZWxwOiAncGFzc3dvcmQgcmVzZXQgc3VjY2VzcyBwYWdlIHBhdGgnLFxuICB9LFxuICB2ZXJpZnlFbWFpbFN1Y2Nlc3M6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQ1VTVE9NX1BBR0VTX1ZFUklGWV9FTUFJTF9TVUNDRVNTJyxcbiAgICBoZWxwOiAndmVyaWZ5IGVtYWlsIHN1Y2Nlc3MgcGFnZSBwYXRoJyxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5MaXZlUXVlcnlPcHRpb25zID0ge1xuICBjbGFzc05hbWVzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xJVkVRVUVSWV9DTEFTU05BTUVTJyxcbiAgICBoZWxwOiBcInBhcnNlLXNlcnZlcidzIExpdmVRdWVyeSBjbGFzc05hbWVzXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmFycmF5UGFyc2VyLFxuICB9LFxuICBwdWJTdWJBZGFwdGVyOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xJVkVRVUVSWV9QVUJfU1VCX0FEQVBURVInLFxuICAgIGhlbHA6ICdMaXZlUXVlcnkgcHVic3ViIGFkYXB0ZXInLFxuICAgIGFjdGlvbjogcGFyc2Vycy5tb2R1bGVPck9iamVjdFBhcnNlcixcbiAgfSxcbiAgcmVkaXNPcHRpb25zOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xJVkVRVUVSWV9SRURJU19PUFRJT05TJyxcbiAgICBoZWxwOiBcInBhcnNlLXNlcnZlcidzIExpdmVRdWVyeSByZWRpc09wdGlvbnNcIixcbiAgICBhY3Rpb246IHBhcnNlcnMub2JqZWN0UGFyc2VyLFxuICB9LFxuICByZWRpc1VSTDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MSVZFUVVFUllfUkVESVNfVVJMJyxcbiAgICBoZWxwOiBcInBhcnNlLXNlcnZlcidzIExpdmVRdWVyeSByZWRpc1VSTFwiLFxuICB9LFxuICB3c3NBZGFwdGVyOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xJVkVRVUVSWV9XU1NfQURBUFRFUicsXG4gICAgaGVscDogJ0FkYXB0ZXIgbW9kdWxlIGZvciB0aGUgV2ViU29ja2V0U2VydmVyJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubW9kdWxlT3JPYmplY3RQYXJzZXIsXG4gIH0sXG59O1xubW9kdWxlLmV4cG9ydHMuTGl2ZVF1ZXJ5U2VydmVyT3B0aW9ucyA9IHtcbiAgYXBwSWQ6IHtcbiAgICBlbnY6ICdQQVJTRV9MSVZFX1FVRVJZX1NFUlZFUl9BUFBfSUQnLFxuICAgIGhlbHA6XG4gICAgICAnVGhpcyBzdHJpbmcgc2hvdWxkIG1hdGNoIHRoZSBhcHBJZCBpbiB1c2UgYnkgeW91ciBQYXJzZSBTZXJ2ZXIuIElmIHlvdSBkZXBsb3kgdGhlIExpdmVRdWVyeSBzZXJ2ZXIgYWxvbmdzaWRlIFBhcnNlIFNlcnZlciwgdGhlIExpdmVRdWVyeSBzZXJ2ZXIgd2lsbCB0cnkgdG8gdXNlIHRoZSBzYW1lIGFwcElkLicsXG4gIH0sXG4gIGNhY2hlVGltZW91dDoge1xuICAgIGVudjogJ1BBUlNFX0xJVkVfUVVFUllfU0VSVkVSX0NBQ0hFX1RJTUVPVVQnLFxuICAgIGhlbHA6XG4gICAgICBcIk51bWJlciBpbiBtaWxsaXNlY29uZHMuIFdoZW4gY2xpZW50cyBwcm92aWRlIHRoZSBzZXNzaW9uVG9rZW4gdG8gdGhlIExpdmVRdWVyeSBzZXJ2ZXIsIHRoZSBMaXZlUXVlcnkgc2VydmVyIHdpbGwgdHJ5IHRvIGZldGNoIGl0cyBQYXJzZVVzZXIncyBvYmplY3RJZCBmcm9tIHBhcnNlIHNlcnZlciBhbmQgc3RvcmUgaXQgaW4gdGhlIGNhY2hlLiBUaGUgdmFsdWUgZGVmaW5lcyB0aGUgZHVyYXRpb24gb2YgdGhlIGNhY2hlLiBDaGVjayB0aGUgZm9sbG93aW5nIFNlY3VyaXR5IHNlY3Rpb24gYW5kIG91ciBwcm90b2NvbCBzcGVjaWZpY2F0aW9uIGZvciBkZXRhaWxzLCBkZWZhdWx0cyB0byA1ICogMTAwMCBtcyAoNSBzZWNvbmRzKS5cIixcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdjYWNoZVRpbWVvdXQnKSxcbiAgfSxcbiAga2V5UGFpcnM6IHtcbiAgICBlbnY6ICdQQVJTRV9MSVZFX1FVRVJZX1NFUlZFUl9LRVlfUEFJUlMnLFxuICAgIGhlbHA6XG4gICAgICAnQSBKU09OIG9iamVjdCB0aGF0IHNlcnZlcyBhcyBhIHdoaXRlbGlzdCBvZiBrZXlzLiBJdCBpcyB1c2VkIGZvciB2YWxpZGF0aW5nIGNsaWVudHMgd2hlbiB0aGV5IHRyeSB0byBjb25uZWN0IHRvIHRoZSBMaXZlUXVlcnkgc2VydmVyLiBDaGVjayB0aGUgZm9sbG93aW5nIFNlY3VyaXR5IHNlY3Rpb24gYW5kIG91ciBwcm90b2NvbCBzcGVjaWZpY2F0aW9uIGZvciBkZXRhaWxzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgfSxcbiAgbG9nTGV2ZWw6IHtcbiAgICBlbnY6ICdQQVJTRV9MSVZFX1FVRVJZX1NFUlZFUl9MT0dfTEVWRUwnLFxuICAgIGhlbHA6XG4gICAgICAnVGhpcyBzdHJpbmcgZGVmaW5lcyB0aGUgbG9nIGxldmVsIG9mIHRoZSBMaXZlUXVlcnkgc2VydmVyLiBXZSBzdXBwb3J0IFZFUkJPU0UsIElORk8sIEVSUk9SLCBOT05FLCBkZWZhdWx0cyB0byBJTkZPLicsXG4gIH0sXG4gIG1hc3RlcktleToge1xuICAgIGVudjogJ1BBUlNFX0xJVkVfUVVFUllfU0VSVkVSX01BU1RFUl9LRVknLFxuICAgIGhlbHA6XG4gICAgICAnVGhpcyBzdHJpbmcgc2hvdWxkIG1hdGNoIHRoZSBtYXN0ZXJLZXkgaW4gdXNlIGJ5IHlvdXIgUGFyc2UgU2VydmVyLiBJZiB5b3UgZGVwbG95IHRoZSBMaXZlUXVlcnkgc2VydmVyIGFsb25nc2lkZSBQYXJzZSBTZXJ2ZXIsIHRoZSBMaXZlUXVlcnkgc2VydmVyIHdpbGwgdHJ5IHRvIHVzZSB0aGUgc2FtZSBtYXN0ZXJLZXkuJyxcbiAgfSxcbiAgcG9ydDoge1xuICAgIGVudjogJ1BBUlNFX0xJVkVfUVVFUllfU0VSVkVSX1BPUlQnLFxuICAgIGhlbHA6ICdUaGUgcG9ydCB0byBydW4gdGhlIExpdmVRdWVyeSBzZXJ2ZXIsIGRlZmF1bHRzIHRvIDEzMzcuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdwb3J0JyksXG4gICAgZGVmYXVsdDogMTMzNyxcbiAgfSxcbiAgcHViU3ViQWRhcHRlcjoge1xuICAgIGVudjogJ1BBUlNFX0xJVkVfUVVFUllfU0VSVkVSX1BVQl9TVUJfQURBUFRFUicsXG4gICAgaGVscDogJ0xpdmVRdWVyeSBwdWJzdWIgYWRhcHRlcicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm1vZHVsZU9yT2JqZWN0UGFyc2VyLFxuICB9LFxuICByZWRpc09wdGlvbnM6IHtcbiAgICBlbnY6ICdQQVJTRV9MSVZFX1FVRVJZX1NFUlZFUl9SRURJU19PUFRJT05TJyxcbiAgICBoZWxwOiBcInBhcnNlLXNlcnZlcidzIExpdmVRdWVyeSByZWRpc09wdGlvbnNcIixcbiAgICBhY3Rpb246IHBhcnNlcnMub2JqZWN0UGFyc2VyLFxuICB9LFxuICByZWRpc1VSTDoge1xuICAgIGVudjogJ1BBUlNFX0xJVkVfUVVFUllfU0VSVkVSX1JFRElTX1VSTCcsXG4gICAgaGVscDogXCJwYXJzZS1zZXJ2ZXIncyBMaXZlUXVlcnkgcmVkaXNVUkxcIixcbiAgfSxcbiAgc2VydmVyVVJMOiB7XG4gICAgZW52OiAnUEFSU0VfTElWRV9RVUVSWV9TRVJWRVJfU0VSVkVSX1VSTCcsXG4gICAgaGVscDpcbiAgICAgICdUaGlzIHN0cmluZyBzaG91bGQgbWF0Y2ggdGhlIHNlcnZlclVSTCBpbiB1c2UgYnkgeW91ciBQYXJzZSBTZXJ2ZXIuIElmIHlvdSBkZXBsb3kgdGhlIExpdmVRdWVyeSBzZXJ2ZXIgYWxvbmdzaWRlIFBhcnNlIFNlcnZlciwgdGhlIExpdmVRdWVyeSBzZXJ2ZXIgd2lsbCB0cnkgdG8gdXNlIHRoZSBzYW1lIHNlcnZlclVSTC4nLFxuICB9LFxuICB3ZWJzb2NrZXRUaW1lb3V0OiB7XG4gICAgZW52OiAnUEFSU0VfTElWRV9RVUVSWV9TRVJWRVJfV0VCU09DS0VUX1RJTUVPVVQnLFxuICAgIGhlbHA6XG4gICAgICAnTnVtYmVyIG9mIG1pbGxpc2Vjb25kcyBiZXR3ZWVuIHBpbmcvcG9uZyBmcmFtZXMuIFRoZSBXZWJTb2NrZXQgc2VydmVyIHNlbmRzIHBpbmcvcG9uZyBmcmFtZXMgdG8gdGhlIGNsaWVudHMgdG8ga2VlcCB0aGUgV2ViU29ja2V0IGFsaXZlLiBUaGlzIHZhbHVlIGRlZmluZXMgdGhlIGludGVydmFsIG9mIHRoZSBwaW5nL3BvbmcgZnJhbWUgZnJvbSB0aGUgc2VydmVyIHRvIGNsaWVudHMsIGRlZmF1bHRzIHRvIDEwICogMTAwMCBtcyAoMTAgcykuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCd3ZWJzb2NrZXRUaW1lb3V0JyksXG4gIH0sXG4gIHdzc0FkYXB0ZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9MSVZFX1FVRVJZX1NFUlZFUl9XU1NfQURBUFRFUicsXG4gICAgaGVscDogJ0FkYXB0ZXIgbW9kdWxlIGZvciB0aGUgV2ViU29ja2V0U2VydmVyJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubW9kdWxlT3JPYmplY3RQYXJzZXIsXG4gIH0sXG59O1xubW9kdWxlLmV4cG9ydHMuSWRlbXBvdGVuY3lPcHRpb25zID0ge1xuICBwYXRoczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9FWFBFUklNRU5UQUxfSURFTVBPVEVOQ1lfUEFUSFMnLFxuICAgIGhlbHA6XG4gICAgICAnQW4gYXJyYXkgb2YgcGF0aHMgZm9yIHdoaWNoIHRoZSBmZWF0dXJlIHNob3VsZCBiZSBlbmFibGVkLiBUaGUgbW91bnQgcGF0aCBtdXN0IG5vdCBiZSBpbmNsdWRlZCwgZm9yIGV4YW1wbGUgaW5zdGVhZCBvZiBgL3BhcnNlL2Z1bmN0aW9ucy9teUZ1bmN0aW9uYCBzcGVjaWZpeSBgZnVuY3Rpb25zL215RnVuY3Rpb25gLiBUaGUgZW50cmllcyBhcmUgaW50ZXJwcmV0ZWQgYXMgcmVndWxhciBleHByZXNzaW9uLCBmb3IgZXhhbXBsZSBgZnVuY3Rpb25zLy4qYCBtYXRjaGVzIGFsbCBmdW5jdGlvbnMsIGBqb2JzLy4qYCBtYXRjaGVzIGFsbCBqb2JzLCBgY2xhc3Nlcy8uKmAgbWF0Y2hlcyBhbGwgY2xhc3NlcywgYC4qYCBtYXRjaGVzIGFsbCBwYXRocy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5hcnJheVBhcnNlcixcbiAgICBkZWZhdWx0OiBbXSxcbiAgfSxcbiAgdHRsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0VYUEVSSU1FTlRBTF9JREVNUE9URU5DWV9UVEwnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIGR1cmF0aW9uIGluIHNlY29uZHMgYWZ0ZXIgd2hpY2ggYSByZXF1ZXN0IHJlY29yZCBpcyBkaXNjYXJkZWQgZnJvbSB0aGUgZGF0YWJhc2UsIGRlZmF1bHRzIHRvIDMwMHMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCd0dGwnKSxcbiAgICBkZWZhdWx0OiAzMDAsXG4gIH0sXG59O1xubW9kdWxlLmV4cG9ydHMuQWNjb3VudExvY2tvdXRPcHRpb25zID0ge1xuICBkdXJhdGlvbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9BQ0NPVU5UX0xPQ0tPVVRfRFVSQVRJT04nLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRoZSBkdXJhdGlvbiBpbiBtaW51dGVzIHRoYXQgYSBsb2NrZWQtb3V0IGFjY291bnQgcmVtYWlucyBsb2NrZWQgb3V0IGJlZm9yZSBhdXRvbWF0aWNhbGx5IGJlY29taW5nIHVubG9ja2VkLjxicj48YnI+VmFsaWQgdmFsdWVzIGFyZSBncmVhdGVyIHRoYW4gYDBgIGFuZCBsZXNzIHRoYW4gYDEwMDAwMGAuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdkdXJhdGlvbicpLFxuICB9LFxuICB0aHJlc2hvbGQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQUNDT1VOVF9MT0NLT1VUX1RIUkVTSE9MRCcsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdGhlIG51bWJlciBvZiBmYWlsZWQgc2lnbi1pbiBhdHRlbXB0cyB0aGF0IHdpbGwgY2F1c2UgYSB1c2VyIGFjY291bnQgdG8gYmUgbG9ja2VkLiBJZiB0aGUgYWNjb3VudCBpcyBsb2NrZWQuIFRoZSBhY2NvdW50IHdpbGwgdW5sb2NrIGFmdGVyIHRoZSBkdXJhdGlvbiBzZXQgaW4gdGhlIGBkdXJhdGlvbmAgb3B0aW9uIGhhcyBwYXNzZWQgYW5kIG5vIGZ1cnRoZXIgbG9naW4gYXR0ZW1wdHMgaGF2ZSBiZWVuIG1hZGUuPGJyPjxicj5WYWxpZCB2YWx1ZXMgYXJlIGdyZWF0ZXIgdGhhbiBgMGAgYW5kIGxlc3MgdGhhbiBgMTAwMGAuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCd0aHJlc2hvbGQnKSxcbiAgfSxcbiAgdW5sb2NrT25QYXNzd29yZFJlc2V0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0FDQ09VTlRfTE9DS09VVF9VTkxPQ0tfT05fUEFTU1dPUkRfUkVTRVQnLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRvIGB0cnVlYCAgaWYgdGhlIGFjY291bnQgc2hvdWxkIGJlIHVubG9ja2VkIGFmdGVyIGEgc3VjY2Vzc2Z1bCBwYXNzd29yZCByZXNldC48YnI+PGJyPkRlZmF1bHQgaXMgYGZhbHNlYC48YnI+UmVxdWlyZXMgb3B0aW9ucyBgZHVyYXRpb25gIGFuZCBgdGhyZXNob2xkYCB0byBiZSBzZXQuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5QYXNzd29yZFBvbGljeU9wdGlvbnMgPSB7XG4gIGRvTm90QWxsb3dVc2VybmFtZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQVNTV09SRF9QT0xJQ1lfRE9fTk9UX0FMTE9XX1VTRVJOQU1FJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgdG8gZGlzYWxsb3cgdGhlIHVzZXJuYW1lIGFzIHBhcnQgb2YgdGhlIHBhc3N3b3JkLjxicj48YnI+RGVmYXVsdCBpcyBgZmFsc2VgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIG1heFBhc3N3b3JkQWdlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBU1NXT1JEX1BPTElDWV9NQVhfUEFTU1dPUkRfQUdFJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0aGUgbnVtYmVyIG9mIGRheXMgYWZ0ZXIgd2hpY2ggYSBwYXNzd29yZCBleHBpcmVzLiBMb2dpbiBhdHRlbXB0cyBmYWlsIGlmIHRoZSB1c2VyIGRvZXMgbm90IHJlc2V0IHRoZSBwYXNzd29yZCBiZWZvcmUgZXhwaXJhdGlvbi4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ21heFBhc3N3b3JkQWdlJyksXG4gIH0sXG4gIG1heFBhc3N3b3JkSGlzdG9yeToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQVNTV09SRF9QT0xJQ1lfTUFYX1BBU1NXT1JEX0hJU1RPUlknLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRoZSBudW1iZXIgb2YgcHJldmlvdXMgcGFzc3dvcmQgdGhhdCB3aWxsIG5vdCBiZSBhbGxvd2VkIHRvIGJlIHNldCBhcyBuZXcgcGFzc3dvcmQuIElmIHRoZSBvcHRpb24gaXMgbm90IHNldCBvciBzZXQgdG8gYDBgLCBubyBwcmV2aW91cyBwYXNzd29yZHMgd2lsbCBiZSBjb25zaWRlcmVkLjxicj48YnI+VmFsaWQgdmFsdWVzIGFyZSA+PSBgMGAgYW5kIDw9IGAyMGAuPGJyPkRlZmF1bHQgaXMgYDBgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignbWF4UGFzc3dvcmRIaXN0b3J5JyksXG4gIH0sXG4gIHJlc2V0UGFzc3dvcmRTdWNjZXNzT25JbnZhbGlkRW1haWw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFTU1dPUkRfUE9MSUNZX1JFU0VUX1BBU1NXT1JEX1NVQ0NFU1NfT05fSU5WQUxJRF9FTUFJTCcsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdG8gYHRydWVgIGlmIGEgcmVxdWVzdCB0byByZXNldCB0aGUgcGFzc3dvcmQgc2hvdWxkIHJldHVybiBhIHN1Y2Nlc3MgcmVzcG9uc2UgZXZlbiBpZiB0aGUgcHJvdmlkZWQgZW1haWwgYWRkcmVzcyBpcyBpbnZhbGlkLCBvciBgZmFsc2VgIGlmIHRoZSByZXF1ZXN0IHNob3VsZCByZXR1cm4gYW4gZXJyb3IgcmVzcG9uc2UgaWYgdGhlIGVtYWlsIGFkZHJlc3MgaXMgaW52YWxpZC48YnI+PGJyPkRlZmF1bHQgaXMgYHRydWVgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgcmVzZXRUb2tlblJldXNlSWZWYWxpZDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQVNTV09SRF9QT0xJQ1lfUkVTRVRfVE9LRU5fUkVVU0VfSUZfVkFMSUQnLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRvIGB0cnVlYCBpZiBhIHBhc3N3b3JkIHJlc2V0IHRva2VuIHNob3VsZCBiZSByZXVzZWQgaW4gY2FzZSBhbm90aGVyIHRva2VuIGlzIHJlcXVlc3RlZCBidXQgdGhlcmUgaXMgYSB0b2tlbiB0aGF0IGlzIHN0aWxsIHZhbGlkLCBpLmUuIGhhcyBub3QgZXhwaXJlZC4gVGhpcyBhdm9pZHMgdGhlIG9mdGVuIG9ic2VydmVkIGlzc3VlIHRoYXQgYSB1c2VyIHJlcXVlc3RzIG11bHRpcGxlIGVtYWlscyBhbmQgZG9lcyBub3Qga25vdyB3aGljaCBsaW5rIGNvbnRhaW5zIGEgdmFsaWQgdG9rZW4gYmVjYXVzZSBlYWNoIG5ld2x5IGdlbmVyYXRlZCB0b2tlbiB3b3VsZCBpbnZhbGlkYXRlIHRoZSBwcmV2aW91cyB0b2tlbi48YnI+PGJyPkRlZmF1bHQgaXMgYGZhbHNlYC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICByZXNldFRva2VuVmFsaWRpdHlEdXJhdGlvbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQVNTV09SRF9QT0xJQ1lfUkVTRVRfVE9LRU5fVkFMSURJVFlfRFVSQVRJT04nLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRoZSB2YWxpZGl0eSBkdXJhdGlvbiBvZiB0aGUgcGFzc3dvcmQgcmVzZXQgdG9rZW4gaW4gc2Vjb25kcyBhZnRlciB3aGljaCB0aGUgdG9rZW4gZXhwaXJlcy4gVGhlIHRva2VuIGlzIHVzZWQgaW4gdGhlIGxpbmsgdGhhdCBpcyBzZXQgaW4gdGhlIGVtYWlsLiBBZnRlciB0aGUgdG9rZW4gZXhwaXJlcywgdGhlIGxpbmsgYmVjb21lcyBpbnZhbGlkIGFuZCBhIG5ldyBsaW5rIGhhcyB0byBiZSBzZW50LiBJZiB0aGUgb3B0aW9uIGlzIG5vdCBzZXQgb3Igc2V0IHRvIGB1bmRlZmluZWRgLCB0aGVuIHRoZSB0b2tlbiBuZXZlciBleHBpcmVzLjxicj48YnI+Rm9yIGV4YW1wbGUsIHRvIGV4cGlyZSB0aGUgdG9rZW4gYWZ0ZXIgMiBob3Vycywgc2V0IGEgdmFsdWUgb2YgNzIwMCBzZWNvbmRzICg9IDYwIHNlY29uZHMgKiA2MCBtaW51dGVzICogMiBob3VycykuPGJyPjxicj5EZWZhdWx0IGlzIGB1bmRlZmluZWRgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcigncmVzZXRUb2tlblZhbGlkaXR5RHVyYXRpb24nKSxcbiAgfSxcbiAgdmFsaWRhdGlvbkVycm9yOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBU1NXT1JEX1BPTElDWV9WQUxJREFUSU9OX0VSUk9SJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0aGUgZXJyb3IgbWVzc2FnZSB0byBiZSBzZW50Ljxicj48YnI+RGVmYXVsdCBpcyBgUGFzc3dvcmQgZG9lcyBub3QgbWVldCB0aGUgUGFzc3dvcmQgUG9saWN5IHJlcXVpcmVtZW50cy5gJyxcbiAgfSxcbiAgdmFsaWRhdG9yQ2FsbGJhY2s6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFTU1dPUkRfUE9MSUNZX1ZBTElEQVRPUl9DQUxMQkFDSycsXG4gICAgaGVscDpcbiAgICAgICdTZXQgYSBjYWxsYmFjayBmdW5jdGlvbiB0byB2YWxpZGF0ZSBhIHBhc3N3b3JkIHRvIGJlIGFjY2VwdGVkLjxicj48YnI+SWYgdXNlZCBpbiBjb21iaW5hdGlvbiB3aXRoIGB2YWxpZGF0b3JQYXR0ZXJuYCwgdGhlIHBhc3N3b3JkIG11c3QgcGFzcyBib3RoIHRvIGJlIGFjY2VwdGVkLicsXG4gIH0sXG4gIHZhbGlkYXRvclBhdHRlcm46IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFTU1dPUkRfUE9MSUNZX1ZBTElEQVRPUl9QQVRURVJOJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0aGUgcmVndWxhciBleHByZXNzaW9uIHZhbGlkYXRpb24gcGF0dGVybiBhIHBhc3N3b3JkIG11c3QgbWF0Y2ggdG8gYmUgYWNjZXB0ZWQuPGJyPjxicj5JZiB1c2VkIGluIGNvbWJpbmF0aW9uIHdpdGggYHZhbGlkYXRvckNhbGxiYWNrYCwgdGhlIHBhc3N3b3JkIG11c3QgcGFzcyBib3RoIHRvIGJlIGFjY2VwdGVkLicsXG4gIH0sXG59O1xubW9kdWxlLmV4cG9ydHMuRmlsZVVwbG9hZE9wdGlvbnMgPSB7XG4gIGVuYWJsZUZvckFub255bW91c1VzZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRklMRV9VUExPQURfRU5BQkxFX0ZPUl9BTk9OWU1PVVNfVVNFUicsXG4gICAgaGVscDogJ0lzIHRydWUgaWYgZmlsZSB1cGxvYWQgc2hvdWxkIGJlIGFsbG93ZWQgZm9yIGFub255bW91cyB1c2Vycy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBlbmFibGVGb3JBdXRoZW50aWNhdGVkVXNlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9GSUxFX1VQTE9BRF9FTkFCTEVfRk9SX0FVVEhFTlRJQ0FURURfVVNFUicsXG4gICAgaGVscDogJ0lzIHRydWUgaWYgZmlsZSB1cGxvYWQgc2hvdWxkIGJlIGFsbG93ZWQgZm9yIGF1dGhlbnRpY2F0ZWQgdXNlcnMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICB9LFxuICBlbmFibGVGb3JQdWJsaWM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRklMRV9VUExPQURfRU5BQkxFX0ZPUl9QVUJMSUMnLFxuICAgIGhlbHA6ICdJcyB0cnVlIGlmIGZpbGUgdXBsb2FkIHNob3VsZCBiZSBhbGxvd2VkIGZvciBhbnlvbmUsIHJlZ2FyZGxlc3Mgb2YgdXNlciBhdXRoZW50aWNhdGlvbi4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBmaWxlRXh0ZW5zaW9uczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9GSUxFX1VQTE9BRF9GSUxFX0VYVEVOU0lPTlMnLFxuICAgIGhlbHA6XG4gICAgICBcIlNldHMgdGhlIGFsbG93ZWQgZmlsZSBleHRlbnNpb25zIGZvciB1cGxvYWRpbmcgZmlsZXMuIFRoZSBleHRlbnNpb24gaXMgZGVmaW5lZCBhcyBhbiBhcnJheSBvZiBmaWxlIGV4dGVuc2lvbnMsIG9yIGEgcmVnZXggcGF0dGVybi48YnI+PGJyPkl0IGlzIHJlY29tbWVuZGVkIHRvIHJlc3RyaWN0IHRoZSBmaWxlIHVwbG9hZCBleHRlbnNpb25zIGFzIG11Y2ggYXMgcG9zc2libGUuIEhUTUwgZmlsZXMgYXJlIGVzcGVjaWFsbHkgcHJvYmxlbWF0aWMgYXMgdGhleSBtYXkgYmUgdXNlZCBieSBhbiBhdHRhY2tlciB3aG8gdXBsb2FkcyBhIEhUTUwgZm9ybSB0byBsb29rIGxlZ2l0aW1hdGUgdW5kZXIgeW91ciBhcHAncyBkb21haW4gbmFtZSwgb3IgdG8gY29tcHJvbWlzZSB0aGUgc2Vzc2lvbiB0b2tlbiBvZiBhbm90aGVyIHVzZXIgdmlhIGFjY2Vzc2luZyB0aGUgYnJvd3NlcidzIGxvY2FsIHN0b3JhZ2UuPGJyPjxicj5EZWZhdWx0cyB0byBgXig/IVt4WHNTXT9baEhdW3RUXVttTV1bbExdPyQpYCB3aGljaCBhbGxvd3MgYW55IGZpbGUgZXh0ZW5zaW9uIGV4Y2VwdCB0aG9zZSBNSU1FIHR5cGVzIHRoYXQgYXJlIG1hcHBlZCB0byBgdGV4dC9odG1sYCBhbmQgYXJlIHJlbmRlcmVkIGFzIHdlYnNpdGUgYnkgYSB3ZWIgYnJvd3Nlci5cIixcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gICAgZGVmYXVsdDogWydeKD8hW3hYc1NdP1toSF1bdFRdW21NXVtsTF0/JCknXSxcbiAgfSxcbn07XG4vKiBUaGUgYXZhaWxhYmxlIGxvZyBsZXZlbHMgZm9yIFBhcnNlIFNlcnZlciBsb2dnaW5nLiBWYWxpZCB2YWx1ZXMgYXJlOjxicj4tIGAnZXJyb3InYCAtIEVycm9yIGxldmVsIChoaWdoZXN0IHByaW9yaXR5KTxicj4tIGAnd2FybidgIC0gV2FybmluZyBsZXZlbDxicj4tIGAnaW5mbydgIC0gSW5mbyBsZXZlbCAoZGVmYXVsdCk8YnI+LSBgJ3ZlcmJvc2UnYCAtIFZlcmJvc2UgbGV2ZWw8YnI+LSBgJ2RlYnVnJ2AgLSBEZWJ1ZyBsZXZlbDxicj4tIGAnc2lsbHknYCAtIFNpbGx5IGxldmVsIChsb3dlc3QgcHJpb3JpdHkpICovXG5tb2R1bGUuZXhwb3J0cy5Mb2dMZXZlbCA9IHtcbiAgZGVidWc6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMX0RFQlVHJyxcbiAgICBoZWxwOiAnRGVidWcgbGV2ZWwnLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxuICBlcnJvcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MT0dfTEVWRUxfRVJST1InLFxuICAgIGhlbHA6ICdFcnJvciBsZXZlbCAtIGhpZ2hlc3QgcHJpb3JpdHknLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxuICBpbmZvOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xPR19MRVZFTF9JTkZPJyxcbiAgICBoZWxwOiAnSW5mbyBsZXZlbCAtIGRlZmF1bHQnLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxuICBzaWxseToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MT0dfTEVWRUxfU0lMTFknLFxuICAgIGhlbHA6ICdTaWxseSBsZXZlbCAtIGxvd2VzdCBwcmlvcml0eScsXG4gICAgcmVxdWlyZWQ6IHRydWUsXG4gIH0sXG4gIHZlcmJvc2U6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMX1ZFUkJPU0UnLFxuICAgIGhlbHA6ICdWZXJib3NlIGxldmVsJyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgd2Fybjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MT0dfTEVWRUxfV0FSTicsXG4gICAgaGVscDogJ1dhcm5pbmcgbGV2ZWwnLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLkxvZ0NsaWVudEV2ZW50ID0ge1xuICBrZXlzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0xPR19DTElFTlRfRVZFTlRTX0tFWVMnLFxuICAgIGhlbHA6XG4gICAgICAnT3B0aW9uYWwgYXJyYXkgb2YgZG90LW5vdGF0aW9uIHBhdGhzIHRvIGV4dHJhY3Qgc3BlY2lmaWMgZGF0YSBmcm9tIHRoZSBldmVudCBvYmplY3QuIElmIG5vdCBwcm92aWRlZCBvciBlbXB0eSwgdGhlIGVudGlyZSBldmVudCBvYmplY3Qgd2lsbCBiZSBsb2dnZWQuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gIH0sXG4gIGxvZ0xldmVsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0xPR19DTElFTlRfRVZFTlRTX0xPR19MRVZFTCcsXG4gICAgaGVscDpcbiAgICAgIFwiVGhlIGxvZyBsZXZlbCB0byB1c2UgZm9yIHRoaXMgZXZlbnQuIFNlZSBbTG9nTGV2ZWxdKExvZ0xldmVsLmh0bWwpIGZvciBhdmFpbGFibGUgdmFsdWVzLiBEZWZhdWx0cyB0byBgJ2luZm8nYC5cIixcbiAgICBkZWZhdWx0OiAnaW5mbycsXG4gIH0sXG4gIG5hbWU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfTE9HX0NMSUVOVF9FVkVOVFNfTkFNRScsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgZXZlbnQgbmFtZSB0byBsaXN0ZW4gZm9yLiBTZWUgdGhlIFtNb25nb0RCIGRyaXZlciBldmVudHMgZG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9kcml2ZXJzL25vZGUvY3VycmVudC9mdW5kYW1lbnRhbHMvbW9uaXRvcmluZy8pIGZvciBhdmFpbGFibGUgZXZlbnRzLicsXG4gICAgcmVxdWlyZWQ6IHRydWUsXG4gIH0sXG59O1xubW9kdWxlLmV4cG9ydHMuRGF0YWJhc2VPcHRpb25zID0ge1xuICBhbGxvd1B1YmxpY0V4cGxhaW46IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQUxMT1dfUFVCTElDX0VYUExBSU4nLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRvIGB0cnVlYCB0byBhbGxvdyBgUGFyc2UuUXVlcnkuZXhwbGFpbmAgd2l0aG91dCBtYXN0ZXIga2V5Ljxicj48YnI+XFx1MjZBMFxcdUZFMEYgRW5hYmxpbmcgdGhpcyBvcHRpb24gbWF5IGV4cG9zZSBzZW5zaXRpdmUgcXVlcnkgcGVyZm9ybWFuY2UgZGF0YSB0byB1bmF1dGhvcml6ZWQgdXNlcnMgYW5kIGNvdWxkIHBvdGVudGlhbGx5IGJlIGV4cGxvaXRlZCBmb3IgbWFsaWNpb3VzIHB1cnBvc2VzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGFwcE5hbWU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQVBQX05BTUUnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBuYW1lIG9mIHRoZSBhcHBsaWNhdGlvbiB0aGF0IGNyZWF0ZWQgdGhpcyBNb25nb0NsaWVudCBpbnN0YW5jZS4nLFxuICB9LFxuICBhdXRoTWVjaGFuaXNtOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0FVVEhfTUVDSEFOSVNNJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgYXV0aGVudGljYXRpb24gbWVjaGFuaXNtIHRoYXQgTW9uZ29EQiB3aWxsIHVzZSB0byBhdXRoZW50aWNhdGUgdGhlIGNvbm5lY3Rpb24uJyxcbiAgfSxcbiAgYXV0aE1lY2hhbmlzbVByb3BlcnRpZXM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQVVUSF9NRUNIQU5JU01fUFJPUEVSVElFUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgcHJvcGVydGllcyBmb3IgdGhlIHNwZWNpZmllZCBhdXRoTWVjaGFuaXNtIGFzIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgY29sb24tc2VwYXJhdGVkIGtleS12YWx1ZSBwYWlycy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gIH0sXG4gIGF1dGhTb3VyY2U6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQVVUSF9TT1VSQ0UnLFxuICAgIGhlbHA6XG4gICAgICBcIlRoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgZGF0YWJhc2UgbmFtZSBhc3NvY2lhdGVkIHdpdGggdGhlIHVzZXIncyBjcmVkZW50aWFscy5cIixcbiAgfSxcbiAgYXV0b1NlbGVjdEZhbWlseToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9BVVRPX1NFTEVDVF9GQU1JTFknLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzZXQgd2hldGhlciB0aGUgc29ja2V0IGF0dGVtcHRzIHRvIGNvbm5lY3QgdG8gSVB2NiBhbmQgSVB2NCBhZGRyZXNzZXMgdW50aWwgYSBjb25uZWN0aW9uIGlzIGVzdGFibGlzaGVkLiBJZiBhdmFpbGFibGUsIHRoZSBkcml2ZXIgd2lsbCBzZWxlY3QgdGhlIGZpcnN0IElQdjYgYWRkcmVzcy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICB9LFxuICBhdXRvU2VsZWN0RmFtaWx5QXR0ZW1wdFRpbWVvdXQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQVVUT19TRUxFQ1RfRkFNSUxZX0FUVEVNUFRfVElNRU9VVCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIGFtb3VudCBvZiB0aW1lIGluIG1pbGxpc2Vjb25kcyB0byB3YWl0IGZvciBhIGNvbm5lY3Rpb24gYXR0ZW1wdCB0byBmaW5pc2ggYmVmb3JlIHRyeWluZyB0aGUgbmV4dCBhZGRyZXNzIHdoZW4gdXNpbmcgdGhlIGF1dG9TZWxlY3RGYW1pbHkgb3B0aW9uLiBJZiBzZXQgdG8gYSBwb3NpdGl2ZSBpbnRlZ2VyIGxlc3MgdGhhbiAxMCwgdGhlIHZhbHVlIDEwIGlzIHVzZWQgaW5zdGVhZC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ2F1dG9TZWxlY3RGYW1pbHlBdHRlbXB0VGltZW91dCcpLFxuICB9LFxuICBjbGllbnRNZXRhZGF0YToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9DTElFTlRfTUVUQURBVEEnLFxuICAgIGhlbHA6XG4gICAgICBcIkN1c3RvbSBtZXRhZGF0YSB0byBhcHBlbmQgdG8gZGF0YWJhc2UgY2xpZW50IGNvbm5lY3Rpb25zIGZvciBpZGVudGlmeWluZyBQYXJzZSBTZXJ2ZXIgaW5zdGFuY2VzIGluIGRhdGFiYXNlIGxvZ3MuIElmIHNldCwgdGhpcyBtZXRhZGF0YSB3aWxsIGJlIHZpc2libGUgaW4gZGF0YWJhc2UgbG9ncyBkdXJpbmcgY29ubmVjdGlvbiBoYW5kc2hha2VzLiBUaGlzIGNhbiBoZWxwIHdpdGggZGVidWdnaW5nIGFuZCBtb25pdG9yaW5nIGluIGRlcGxveW1lbnRzIHdpdGggbXVsdGlwbGUgZGF0YWJhc2UgY2xpZW50cy4gU2V0IGBuYW1lYCB0byBpZGVudGlmeSB5b3VyIGFwcGxpY2F0aW9uIChlLmcuLCAnTXlBcHAnKSBhbmQgYHZlcnNpb25gIHRvIHlvdXIgYXBwbGljYXRpb24ncyB2ZXJzaW9uLiBMZWF2ZSB1bmRlZmluZWQgKGRlZmF1bHQpIHRvIGRpc2FibGUgdGhpcyBmZWF0dXJlIGFuZCBhdm9pZCB0aGUgYWRkaXRpb25hbCBkYXRhIHRyYW5zZmVyIG92ZXJoZWFkLlwiLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ0RhdGFiYXNlT3B0aW9uc0NsaWVudE1ldGFkYXRhJyxcbiAgfSxcbiAgY29tcHJlc3NvcnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQ09NUFJFU1NPUlMnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IGFuIGFycmF5IG9yIGNvbW1hLWRlbGltaXRlZCBzdHJpbmcgb2YgY29tcHJlc3NvcnMgdG8gZW5hYmxlIG5ldHdvcmsgY29tcHJlc3Npb24gZm9yIGNvbW11bmljYXRpb24gYmV0d2VlbiB0aGlzIGNsaWVudCBhbmQgYSBtb25nb2QvbW9uZ29zIGluc3RhbmNlLicsXG4gIH0sXG4gIGNvbm5lY3RUaW1lb3V0TVM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQ09OTkVDVF9USU1FT1VUX01TJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgYW1vdW50IG9mIHRpbWUsIGluIG1pbGxpc2Vjb25kcywgdG8gd2FpdCB0byBlc3RhYmxpc2ggYSBzaW5nbGUgVENQIHNvY2tldCBjb25uZWN0aW9uIHRvIHRoZSBzZXJ2ZXIgYmVmb3JlIHJhaXNpbmcgYW4gZXJyb3IuIFNwZWNpZnlpbmcgMCBkaXNhYmxlcyB0aGUgY29ubmVjdGlvbiB0aW1lb3V0LicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignY29ubmVjdFRpbWVvdXRNUycpLFxuICB9LFxuICBjcmVhdGVJbmRleFJvbGVOYW1lOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0NSRUFURV9JTkRFWF9ST0xFX05BTUUnLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRvIGB0cnVlYCB0byBhdXRvbWF0aWNhbGx5IGNyZWF0ZSBhIHVuaXF1ZSBpbmRleCBvbiB0aGUgbmFtZSBmaWVsZCBvZiB0aGUgX1JvbGUgY29sbGVjdGlvbiBvbiBzZXJ2ZXIgc3RhcnQuIFNldCB0byBgZmFsc2VgIHRvIHNraXAgaW5kZXggY3JlYXRpb24uIERlZmF1bHQgaXMgYHRydWVgLjxicj48YnI+XFx1MjZBMFxcdUZFMEYgV2hlbiBzZXR0aW5nIHRoaXMgb3B0aW9uIHRvIGBmYWxzZWAgdG8gbWFudWFsbHkgY3JlYXRlIHRoZSBpbmRleCwga2VlcCBpbiBtaW5kIHRoYXQgdGhlIG90aGVyd2lzZSBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQgaW5kZXggbWF5IGNoYW5nZSBpbiB0aGUgZnV0dXJlIHRvIGJlIG9wdGltaXplZCBmb3IgdGhlIGludGVybmFsIHVzYWdlIGJ5IFBhcnNlIFNlcnZlci4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIGNyZWF0ZUluZGV4VXNlckVtYWlsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0NSRUFURV9JTkRFWF9VU0VSX0VNQUlMJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgdG8gYXV0b21hdGljYWxseSBjcmVhdGUgaW5kZXhlcyBvbiB0aGUgZW1haWwgZmllbGQgb2YgdGhlIF9Vc2VyIGNvbGxlY3Rpb24gb24gc2VydmVyIHN0YXJ0LiBTZXQgdG8gYGZhbHNlYCB0byBza2lwIGluZGV4IGNyZWF0aW9uLiBEZWZhdWx0IGlzIGB0cnVlYC48YnI+PGJyPlxcdTI2QTBcXHVGRTBGIFdoZW4gc2V0dGluZyB0aGlzIG9wdGlvbiB0byBgZmFsc2VgIHRvIG1hbnVhbGx5IGNyZWF0ZSB0aGUgaW5kZXgsIGtlZXAgaW4gbWluZCB0aGF0IHRoZSBvdGhlcndpc2UgYXV0b21hdGljYWxseSBjcmVhdGVkIGluZGV4IG1heSBjaGFuZ2UgaW4gdGhlIGZ1dHVyZSB0byBiZSBvcHRpbWl6ZWQgZm9yIHRoZSBpbnRlcm5hbCB1c2FnZSBieSBQYXJzZSBTZXJ2ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICB9LFxuICBjcmVhdGVJbmRleFVzZXJFbWFpbENhc2VJbnNlbnNpdGl2ZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9DUkVBVEVfSU5ERVhfVVNFUl9FTUFJTF9DQVNFX0lOU0VOU0lUSVZFJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgdG8gYXV0b21hdGljYWxseSBjcmVhdGUgYSBjYXNlLWluc2Vuc2l0aXZlIGluZGV4IG9uIHRoZSBlbWFpbCBmaWVsZCBvZiB0aGUgX1VzZXIgY29sbGVjdGlvbiBvbiBzZXJ2ZXIgc3RhcnQuIFNldCB0byBgZmFsc2VgIHRvIHNraXAgaW5kZXggY3JlYXRpb24uIERlZmF1bHQgaXMgYHRydWVgLjxicj48YnI+XFx1MjZBMFxcdUZFMEYgV2hlbiBzZXR0aW5nIHRoaXMgb3B0aW9uIHRvIGBmYWxzZWAgdG8gbWFudWFsbHkgY3JlYXRlIHRoZSBpbmRleCwga2VlcCBpbiBtaW5kIHRoYXQgdGhlIG90aGVyd2lzZSBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQgaW5kZXggbWF5IGNoYW5nZSBpbiB0aGUgZnV0dXJlIHRvIGJlIG9wdGltaXplZCBmb3IgdGhlIGludGVybmFsIHVzYWdlIGJ5IFBhcnNlIFNlcnZlci4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIGNyZWF0ZUluZGV4VXNlckVtYWlsVmVyaWZ5VG9rZW46IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQ1JFQVRFX0lOREVYX1VTRVJfRU1BSUxfVkVSSUZZX1RPS0VOJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgdG8gYXV0b21hdGljYWxseSBjcmVhdGUgYW4gaW5kZXggb24gdGhlIF9lbWFpbF92ZXJpZnlfdG9rZW4gZmllbGQgb2YgdGhlIF9Vc2VyIGNvbGxlY3Rpb24gb24gc2VydmVyIHN0YXJ0LiBTZXQgdG8gYGZhbHNlYCB0byBza2lwIGluZGV4IGNyZWF0aW9uLiBEZWZhdWx0IGlzIGB0cnVlYC48YnI+PGJyPlxcdTI2QTBcXHVGRTBGIFdoZW4gc2V0dGluZyB0aGlzIG9wdGlvbiB0byBgZmFsc2VgIHRvIG1hbnVhbGx5IGNyZWF0ZSB0aGUgaW5kZXgsIGtlZXAgaW4gbWluZCB0aGF0IHRoZSBvdGhlcndpc2UgYXV0b21hdGljYWxseSBjcmVhdGVkIGluZGV4IG1heSBjaGFuZ2UgaW4gdGhlIGZ1dHVyZSB0byBiZSBvcHRpbWl6ZWQgZm9yIHRoZSBpbnRlcm5hbCB1c2FnZSBieSBQYXJzZSBTZXJ2ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICB9LFxuICBjcmVhdGVJbmRleFVzZXJQYXNzd29yZFJlc2V0VG9rZW46IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQ1JFQVRFX0lOREVYX1VTRVJfUEFTU1dPUkRfUkVTRVRfVE9LRU4nLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRvIGB0cnVlYCB0byBhdXRvbWF0aWNhbGx5IGNyZWF0ZSBhbiBpbmRleCBvbiB0aGUgX3BlcmlzaGFibGVfdG9rZW4gZmllbGQgb2YgdGhlIF9Vc2VyIGNvbGxlY3Rpb24gb24gc2VydmVyIHN0YXJ0LiBTZXQgdG8gYGZhbHNlYCB0byBza2lwIGluZGV4IGNyZWF0aW9uLiBEZWZhdWx0IGlzIGB0cnVlYC48YnI+PGJyPlxcdTI2QTBcXHVGRTBGIFdoZW4gc2V0dGluZyB0aGlzIG9wdGlvbiB0byBgZmFsc2VgIHRvIG1hbnVhbGx5IGNyZWF0ZSB0aGUgaW5kZXgsIGtlZXAgaW4gbWluZCB0aGF0IHRoZSBvdGhlcndpc2UgYXV0b21hdGljYWxseSBjcmVhdGVkIGluZGV4IG1heSBjaGFuZ2UgaW4gdGhlIGZ1dHVyZSB0byBiZSBvcHRpbWl6ZWQgZm9yIHRoZSBpbnRlcm5hbCB1c2FnZSBieSBQYXJzZSBTZXJ2ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICB9LFxuICBjcmVhdGVJbmRleFVzZXJVc2VybmFtZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9DUkVBVEVfSU5ERVhfVVNFUl9VU0VSTkFNRScsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdG8gYHRydWVgIHRvIGF1dG9tYXRpY2FsbHkgY3JlYXRlIGluZGV4ZXMgb24gdGhlIHVzZXJuYW1lIGZpZWxkIG9mIHRoZSBfVXNlciBjb2xsZWN0aW9uIG9uIHNlcnZlciBzdGFydC4gU2V0IHRvIGBmYWxzZWAgdG8gc2tpcCBpbmRleCBjcmVhdGlvbi4gRGVmYXVsdCBpcyBgdHJ1ZWAuPGJyPjxicj5cXHUyNkEwXFx1RkUwRiBXaGVuIHNldHRpbmcgdGhpcyBvcHRpb24gdG8gYGZhbHNlYCB0byBtYW51YWxseSBjcmVhdGUgdGhlIGluZGV4LCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgb3RoZXJ3aXNlIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCBpbmRleCBtYXkgY2hhbmdlIGluIHRoZSBmdXR1cmUgdG8gYmUgb3B0aW1pemVkIGZvciB0aGUgaW50ZXJuYWwgdXNhZ2UgYnkgUGFyc2UgU2VydmVyLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgY3JlYXRlSW5kZXhVc2VyVXNlcm5hbWVDYXNlSW5zZW5zaXRpdmU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQ1JFQVRFX0lOREVYX1VTRVJfVVNFUk5BTUVfQ0FTRV9JTlNFTlNJVElWRScsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdG8gYHRydWVgIHRvIGF1dG9tYXRpY2FsbHkgY3JlYXRlIGEgY2FzZS1pbnNlbnNpdGl2ZSBpbmRleCBvbiB0aGUgdXNlcm5hbWUgZmllbGQgb2YgdGhlIF9Vc2VyIGNvbGxlY3Rpb24gb24gc2VydmVyIHN0YXJ0LiBTZXQgdG8gYGZhbHNlYCB0byBza2lwIGluZGV4IGNyZWF0aW9uLiBEZWZhdWx0IGlzIGB0cnVlYC48YnI+PGJyPlxcdTI2QTBcXHVGRTBGIFdoZW4gc2V0dGluZyB0aGlzIG9wdGlvbiB0byBgZmFsc2VgIHRvIG1hbnVhbGx5IGNyZWF0ZSB0aGUgaW5kZXgsIGtlZXAgaW4gbWluZCB0aGF0IHRoZSBvdGhlcndpc2UgYXV0b21hdGljYWxseSBjcmVhdGVkIGluZGV4IG1heSBjaGFuZ2UgaW4gdGhlIGZ1dHVyZSB0byBiZSBvcHRpbWl6ZWQgZm9yIHRoZSBpbnRlcm5hbCB1c2FnZSBieSBQYXJzZSBTZXJ2ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICB9LFxuICBkaXJlY3RDb25uZWN0aW9uOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0RJUkVDVF9DT05ORUNUSU9OJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gZm9yY2UgYSBTaW5nbGUgdG9wb2xvZ3kgdHlwZSB3aXRoIGEgY29ubmVjdGlvbiBzdHJpbmcgY29udGFpbmluZyBvbmUgaG9zdC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICB9LFxuICBkaXNhYmxlSW5kZXhGaWVsZFZhbGlkYXRpb246IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfRElTQUJMRV9JTkRFWF9GSUVMRF9WQUxJREFUSU9OJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgdG8gZGlzYWJsZSB2YWxpZGF0aW9uIG9mIGluZGV4IGZpZWxkcy4gV2hlbiBkaXNhYmxlZCwgaW5kZXhlcyBjYW4gYmUgY3JlYXRlZCBldmVuIGlmIHRoZSBmaWVsZHMgZG8gbm90IGV4aXN0IGluIHRoZSBzY2hlbWEuIFRoaXMgY2FuIGJlIHVzZWZ1bCB3aGVuIGNyZWF0aW5nIGluZGV4ZXMgb24gZmllbGRzIHRoYXQgd2lsbCBiZSBhZGRlZCBsYXRlci4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICB9LFxuICBlbmFibGVTY2hlbWFIb29rczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9FTkFCTEVfU0NIRU1BX0hPT0tTJyxcbiAgICBoZWxwOlxuICAgICAgJ0VuYWJsZXMgZGF0YWJhc2UgcmVhbC10aW1lIGhvb2tzIHRvIHVwZGF0ZSBzaW5nbGUgc2NoZW1hIGNhY2hlLiBTZXQgdG8gYHRydWVgIGlmIHVzaW5nIG11bHRpcGxlIFBhcnNlIFNlcnZlcnMgaW5zdGFuY2VzIGNvbm5lY3RlZCB0byB0aGUgc2FtZSBkYXRhYmFzZS4gRmFpbGluZyB0byBkbyBzbyB3aWxsIGNhdXNlIGEgc2NoZW1hIGNoYW5nZSB0byBub3QgcHJvcGFnYXRlIHRvIGFsbCBpbnN0YW5jZXMgYW5kIHJlLXN5bmNpbmcgd2lsbCBvbmx5IGhhcHBlbiB3aGVuIHRoZSBpbnN0YW5jZXMgcmVzdGFydC4gVG8gdXNlIHRoaXMgZmVhdHVyZSB3aXRoIE1vbmdvREIsIGEgcmVwbGljYSBzZXQgY2x1c3RlciB3aXRoIFtjaGFuZ2Ugc3RyZWFtXShodHRwczovL2RvY3MubW9uZ29kYi5jb20vbWFudWFsL2NoYW5nZVN0cmVhbXMvI2F2YWlsYWJpbGl0eSkgc3VwcG9ydCBpcyByZXF1aXJlZC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBmb3JjZVNlcnZlck9iamVjdElkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0ZPUkNFX1NFUlZFUl9PQkpFQ1RfSUQnLFxuICAgIGhlbHA6ICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIGZvcmNlIHNlcnZlciB0byBhc3NpZ24gX2lkIHZhbHVlcyBpbnN0ZWFkIG9mIGRyaXZlci4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICB9LFxuICBoZWFydGJlYXRGcmVxdWVuY3lNUzoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9IRUFSVEJFQVRfRlJFUVVFTkNZX01TJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgZnJlcXVlbmN5IGluIG1pbGxpc2Vjb25kcyBhdCB3aGljaCB0aGUgZHJpdmVyIGNoZWNrcyB0aGUgc3RhdGUgb2YgdGhlIE1vbmdvREIgZGVwbG95bWVudC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ2hlYXJ0YmVhdEZyZXF1ZW5jeU1TJyksXG4gIH0sXG4gIGxvYWRCYWxhbmNlZDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9MT0FEX0JBTEFOQ0VEJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gaW5zdHJ1Y3QgdGhlIGRyaXZlciBpdCBpcyBjb25uZWN0aW5nIHRvIGEgbG9hZCBiYWxhbmNlciBmcm9udGluZyBhIG1vbmdvcyBsaWtlIHNlcnZpY2UuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgbG9jYWxUaHJlc2hvbGRNUzoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9MT0NBTF9USFJFU0hPTERfTVMnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBzaXplIChpbiBtaWxsaXNlY29uZHMpIG9mIHRoZSBsYXRlbmN5IHdpbmRvdyBmb3Igc2VsZWN0aW5nIGFtb25nIG11bHRpcGxlIHN1aXRhYmxlIE1vbmdvREIgaW5zdGFuY2VzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignbG9jYWxUaHJlc2hvbGRNUycpLFxuICB9LFxuICBsb2dDbGllbnRFdmVudHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfTE9HX0NMSUVOVF9FVkVOVFMnLFxuICAgIGhlbHA6ICdBbiBhcnJheSBvZiBNb25nb0RCIGNsaWVudCBldmVudCBjb25maWd1cmF0aW9ucyB0byBlbmFibGUgbG9nZ2luZyBvZiBzcGVjaWZpYyBldmVudHMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gICAgdHlwZTogJ0xvZ0NsaWVudEV2ZW50W10nLFxuICB9LFxuICBtYXhDb25uZWN0aW5nOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX01BWF9DT05ORUNUSU5HJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgbWF4aW11bSBudW1iZXIgb2YgY29ubmVjdGlvbnMgdGhhdCBtYXkgYmUgaW4gdGhlIHByb2Nlc3Mgb2YgYmVpbmcgZXN0YWJsaXNoZWQgY29uY3VycmVudGx5IGJ5IHRoZSBjb25uZWN0aW9uIHBvb2wuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdtYXhDb25uZWN0aW5nJyksXG4gIH0sXG4gIG1heElkbGVUaW1lTVM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfTUFYX0lETEVfVElNRV9NUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIGFtb3VudCBvZiB0aW1lIGluIG1pbGxpc2Vjb25kcyB0aGF0IGEgY29ubmVjdGlvbiBjYW4gcmVtYWluIGlkbGUgaW4gdGhlIGNvbm5lY3Rpb24gcG9vbCBiZWZvcmUgYmVpbmcgcmVtb3ZlZCBhbmQgY2xvc2VkLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignbWF4SWRsZVRpbWVNUycpLFxuICB9LFxuICBtYXhQb29sU2l6ZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9NQVhfUE9PTF9TSVpFJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc2V0IHRoZSBtYXhpbXVtIG51bWJlciBvZiBvcGVuZWQsIGNhY2hlZCwgcmVhZHktdG8tdXNlIGRhdGFiYXNlIGNvbm5lY3Rpb25zIG1haW50YWluZWQgYnkgdGhlIGRyaXZlci4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ21heFBvb2xTaXplJyksXG4gIH0sXG4gIG1heFN0YWxlbmVzc1NlY29uZHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfTUFYX1NUQUxFTkVTU19TRUNPTkRTJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc2V0IHRoZSBtYXhpbXVtIHJlcGxpY2F0aW9uIGxhZyBmb3IgcmVhZHMgZnJvbSBzZWNvbmRhcnkgbm9kZXMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdtYXhTdGFsZW5lc3NTZWNvbmRzJyksXG4gIH0sXG4gIG1heFRpbWVNUzoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9NQVhfVElNRV9NUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNldCBhIGN1bXVsYXRpdmUgdGltZSBsaW1pdCBpbiBtaWxsaXNlY29uZHMgZm9yIHByb2Nlc3Npbmcgb3BlcmF0aW9ucyBvbiBhIGN1cnNvci4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ21heFRpbWVNUycpLFxuICB9LFxuICBtaW5Qb29sU2l6ZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9NSU5fUE9PTF9TSVpFJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc2V0IHRoZSBtaW5pbXVtIG51bWJlciBvZiBvcGVuZWQsIGNhY2hlZCwgcmVhZHktdG8tdXNlIGRhdGFiYXNlIGNvbm5lY3Rpb25zIG1haW50YWluZWQgYnkgdGhlIGRyaXZlci4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ21pblBvb2xTaXplJyksXG4gIH0sXG4gIHByb3h5SG9zdDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9QUk9YWV9IT1NUJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gY29uZmlndXJlIGEgU29ja3M1IHByb3h5IGhvc3QgdXNlZCBmb3IgY3JlYXRpbmcgVENQIGNvbm5lY3Rpb25zLicsXG4gIH0sXG4gIHByb3h5UGFzc3dvcmQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfUFJPWFlfUEFTU1dPUkQnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBjb25maWd1cmUgYSBTb2NrczUgcHJveHkgcGFzc3dvcmQgd2hlbiB0aGUgcHJveHkgcmVxdWlyZXMgdXNlcm5hbWUvcGFzc3dvcmQgYXV0aGVudGljYXRpb24uJyxcbiAgfSxcbiAgcHJveHlQb3J0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1BST1hZX1BPUlQnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBjb25maWd1cmUgYSBTb2NrczUgcHJveHkgcG9ydCB1c2VkIGZvciBjcmVhdGluZyBUQ1AgY29ubmVjdGlvbnMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdwcm94eVBvcnQnKSxcbiAgfSxcbiAgcHJveHlVc2VybmFtZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9QUk9YWV9VU0VSTkFNRScsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIGNvbmZpZ3VyZSBhIFNvY2tzNSBwcm94eSB1c2VybmFtZSB3aGVuIHRoZSBwcm94eSByZXF1aXJlcyB1c2VybmFtZS9wYXNzd29yZCBhdXRoZW50aWNhdGlvbi4nLFxuICB9LFxuICByZWFkQ29uY2VybkxldmVsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1JFQURfQ09OQ0VSTl9MRVZFTCcsXG4gICAgaGVscDogJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgbGV2ZWwgb2YgaXNvbGF0aW9uLicsXG4gIH0sXG4gIHJlYWRQcmVmZXJlbmNlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1JFQURfUFJFRkVSRU5DRScsXG4gICAgaGVscDogJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgcmVhZCBwcmVmZXJlbmNlcyBmb3IgdGhpcyBjb25uZWN0aW9uLicsXG4gIH0sXG4gIHJlYWRQcmVmZXJlbmNlVGFnczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9SRUFEX1BSRUZFUkVOQ0VfVEFHUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIHRhZ3MgZG9jdW1lbnQgYXMgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBjb2xvbi1zZXBhcmF0ZWQga2V5LXZhbHVlIHBhaXJzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmFycmF5UGFyc2VyLFxuICB9LFxuICByZXBsaWNhU2V0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1JFUExJQ0FfU0VUJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgbmFtZSBvZiB0aGUgcmVwbGljYSBzZXQsIGlmIHRoZSBtb25nb2QgaXMgYSBtZW1iZXIgb2YgYSByZXBsaWNhIHNldC4nLFxuICB9LFxuICByZXRyeVJlYWRzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1JFVFJZX1JFQURTJyxcbiAgICBoZWxwOiAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBlbmFibGUgcmV0cnlhYmxlIHJlYWRzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gIH0sXG4gIHJldHJ5V3JpdGVzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1JFVFJZX1dSSVRFUycsXG4gICAgaGVscDogJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc2V0IHdoZXRoZXIgdG8gcmV0cnkgZmFpbGVkIHdyaXRlcy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICB9LFxuICBzY2hlbWFDYWNoZVR0bDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9TQ0hFTUFfQ0FDSEVfVFRMJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBkdXJhdGlvbiBpbiBzZWNvbmRzIGFmdGVyIHdoaWNoIHRoZSBzY2hlbWEgY2FjaGUgZXhwaXJlcyBhbmQgd2lsbCBiZSByZWZldGNoZWQgZnJvbSB0aGUgZGF0YWJhc2UuIFVzZSB0aGlzIG9wdGlvbiBpZiB1c2luZyBtdWx0aXBsZSBQYXJzZSBTZXJ2ZXJzIGluc3RhbmNlcyBjb25uZWN0ZWQgdG8gdGhlIHNhbWUgZGF0YWJhc2UuIEEgbG93IGR1cmF0aW9uIHdpbGwgY2F1c2UgdGhlIHNjaGVtYSBjYWNoZSB0byBiZSB1cGRhdGVkIHRvbyBvZnRlbiwgY2F1c2luZyB1bm5lY2Vzc2FyeSBkYXRhYmFzZSByZWFkcy4gQSBoaWdoIGR1cmF0aW9uIHdpbGwgY2F1c2UgdGhlIHNjaGVtYSB0byBiZSB1cGRhdGVkIHRvbyByYXJlbHksIGluY3JlYXNpbmcgdGhlIHRpbWUgcmVxdWlyZWQgdW50aWwgc2NoZW1hIGNoYW5nZXMgcHJvcGFnYXRlIHRvIGFsbCBzZXJ2ZXIgaW5zdGFuY2VzLiBUaGlzIGZlYXR1cmUgY2FuIGJlIHVzZWQgYXMgYW4gYWx0ZXJuYXRpdmUgb3IgaW4gY29uanVuY3Rpb24gd2l0aCB0aGUgb3B0aW9uIGBlbmFibGVTY2hlbWFIb29rc2AuIERlZmF1bHQgaXMgaW5maW5pdGUgd2hpY2ggbWVhbnMgdGhlIHNjaGVtYSBjYWNoZSBuZXZlciBleHBpcmVzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignc2NoZW1hQ2FjaGVUdGwnKSxcbiAgfSxcbiAgc2VydmVyTW9uaXRvcmluZ01vZGU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfU0VSVkVSX01PTklUT1JJTkdfTU9ERScsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIGluc3RydWN0IHRoZSBkcml2ZXIgbW9uaXRvcnMgdG8gdXNlIGEgc3BlY2lmaWMgbW9uaXRvcmluZyBtb2RlLicsXG4gIH0sXG4gIHNlcnZlclNlbGVjdGlvblRpbWVvdXRNUzoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9TRVJWRVJfU0VMRUNUSU9OX1RJTUVPVVRfTVMnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBhbW91bnQgb2YgdGltZSBpbiBtaWxsaXNlY29uZHMgZm9yIGEgc2VydmVyIHRvIGJlIGNvbnNpZGVyZWQgc3VpdGFibGUgZm9yIHNlbGVjdGlvbi4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ3NlcnZlclNlbGVjdGlvblRpbWVvdXRNUycpLFxuICB9LFxuICBzb2NrZXRUaW1lb3V0TVM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfU09DS0VUX1RJTUVPVVRfTVMnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBhbW91bnQgb2YgdGltZSwgaW4gbWlsbGlzZWNvbmRzLCBzcGVudCBhdHRlbXB0aW5nIHRvIHNlbmQgb3IgcmVjZWl2ZSBvbiBhIHNvY2tldCBiZWZvcmUgdGltaW5nIG91dC4gU3BlY2lmeWluZyAwIG1lYW5zIG5vIHRpbWVvdXQuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdzb2NrZXRUaW1lb3V0TVMnKSxcbiAgfSxcbiAgc3J2TWF4SG9zdHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfU1JWX01BWF9IT1NUUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIG1heGltdW0gbnVtYmVyIG9mIGhvc3RzIHRvIGNvbm5lY3QgdG8gd2hlbiB1c2luZyBhbiBzcnYgY29ubmVjdGlvbiBzdHJpbmcsIGEgc2V0dGluZyBvZiAwIG1lYW5zIHVubGltaXRlZCBob3N0cy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ3Nydk1heEhvc3RzJyksXG4gIH0sXG4gIHNydlNlcnZpY2VOYW1lOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1NSVl9TRVJWSUNFX05BTUUnLFxuICAgIGhlbHA6ICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIG1vZGlmeSB0aGUgc3J2IFVSSSBzZXJ2aWNlIG5hbWUuJyxcbiAgfSxcbiAgc3NsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1NTTCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIGVuYWJsZSBvciBkaXNhYmxlIFRMUy9TU0wgZm9yIHRoZSBjb25uZWN0aW9uIChlcXVpdmFsZW50IHRvIHRscyBvcHRpb24pLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gIH0sXG4gIHRsczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9UTFMnLFxuICAgIGhlbHA6ICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIGVuYWJsZSBvciBkaXNhYmxlIFRMUy9TU0wgZm9yIHRoZSBjb25uZWN0aW9uLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gIH0sXG4gIHRsc0FsbG93SW52YWxpZENlcnRpZmljYXRlczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9UTFNfQUxMT1dfSU5WQUxJRF9DRVJUSUZJQ0FURVMnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBieXBhc3MgdmFsaWRhdGlvbiBvZiB0aGUgY2VydGlmaWNhdGVzIHByZXNlbnRlZCBieSB0aGUgbW9uZ29kL21vbmdvcyBpbnN0YW5jZS4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICB9LFxuICB0bHNBbGxvd0ludmFsaWRIb3N0bmFtZXM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfVExTX0FMTE9XX0lOVkFMSURfSE9TVE5BTUVTJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gZGlzYWJsZSBob3N0bmFtZSB2YWxpZGF0aW9uIG9mIHRoZSBjZXJ0aWZpY2F0ZSBwcmVzZW50ZWQgYnkgdGhlIG1vbmdvZC9tb25nb3MgaW5zdGFuY2UuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgdGxzQ0FGaWxlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1RMU19DQUZJTEUnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBsb2NhdGlvbiBvZiBhIGxvY2FsIC5wZW0gZmlsZSB0aGF0IGNvbnRhaW5zIHRoZSByb290IGNlcnRpZmljYXRlIGNoYWluIGZyb20gdGhlIENlcnRpZmljYXRlIEF1dGhvcml0eS4nLFxuICB9LFxuICB0bHNDZXJ0aWZpY2F0ZUtleUZpbGU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfVExTX0NFUlRJRklDQVRFX0tFWV9GSUxFJyxcbiAgICBoZWxwOlxuICAgICAgXCJUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIGxvY2F0aW9uIG9mIGEgbG9jYWwgLnBlbSBmaWxlIHRoYXQgY29udGFpbnMgdGhlIGNsaWVudCdzIFRMUy9TU0wgY2VydGlmaWNhdGUgYW5kIGtleS5cIixcbiAgfSxcbiAgdGxzQ2VydGlmaWNhdGVLZXlGaWxlUGFzc3dvcmQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfVExTX0NFUlRJRklDQVRFX0tFWV9GSUxFX1BBU1NXT1JEJyxcbiAgICBoZWxwOiAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBwYXNzd29yZCB0byBkZWNyeXB0IHRoZSB0bHNDZXJ0aWZpY2F0ZUtleUZpbGUuJyxcbiAgfSxcbiAgdGxzSW5zZWN1cmU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfVExTX0lOU0VDVVJFJyxcbiAgICBoZWxwOiAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBkaXNhYmxlIHZhcmlvdXMgY2VydGlmaWNhdGUgdmFsaWRhdGlvbnMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgd2FpdFF1ZXVlVGltZW91dE1TOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1dBSVRfUVVFVUVfVElNRU9VVF9NUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIG1heGltdW0gdGltZSBpbiBtaWxsaXNlY29uZHMgdGhhdCBhIHRocmVhZCBjYW4gd2FpdCBmb3IgYSBjb25uZWN0aW9uIHRvIGJlY29tZSBhdmFpbGFibGUuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCd3YWl0UXVldWVUaW1lb3V0TVMnKSxcbiAgfSxcbiAgemxpYkNvbXByZXNzaW9uTGV2ZWw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfWkxJQl9DT01QUkVTU0lPTl9MRVZFTCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIGNvbXByZXNzaW9uIGxldmVsIGlmIHVzaW5nIHpsaWIgZm9yIG5ldHdvcmsgY29tcHJlc3Npb24gKDAtOSkuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCd6bGliQ29tcHJlc3Npb25MZXZlbCcpLFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLkRhdGFiYXNlT3B0aW9uc0NsaWVudE1ldGFkYXRhID0ge1xuICBuYW1lOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0NMSUVOVF9NRVRBREFUQV9OQU1FJyxcbiAgICBoZWxwOiBcIlRoZSBuYW1lIHRvIGlkZW50aWZ5IHlvdXIgYXBwbGljYXRpb24gaW4gZGF0YWJhc2UgbG9ncyAoZS5nLiwgJ015QXBwJykuXCIsXG4gICAgcmVxdWlyZWQ6IHRydWUsXG4gIH0sXG4gIHZlcnNpb246IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQ0xJRU5UX01FVEFEQVRBX1ZFUlNJT04nLFxuICAgIGhlbHA6IFwiVGhlIHZlcnNpb24gb2YgeW91ciBhcHBsaWNhdGlvbiAoZS5nLiwgJzEuMC4wJykuXCIsXG4gICAgcmVxdWlyZWQ6IHRydWUsXG4gIH0sXG59O1xubW9kdWxlLmV4cG9ydHMuQXV0aEFkYXB0ZXIgPSB7XG4gIGVuYWJsZWQ6IHtcbiAgICBoZWxwOiAnSXMgYHRydWVgIGlmIHRoZSBhdXRoIGFkYXB0ZXIgaXMgZW5hYmxlZCwgYGZhbHNlYCBvdGhlcndpc2UuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5Mb2dMZXZlbHMgPSB7XG4gIGNsb3VkRnVuY3Rpb25FcnJvcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MT0dfTEVWRUxTX0NMT1VEX0ZVTkNUSU9OX0VSUk9SJyxcbiAgICBoZWxwOlxuICAgICAgJ0xvZyBsZXZlbCB1c2VkIGJ5IHRoZSBDbG91ZCBDb2RlIEZ1bmN0aW9ucyBvbiBlcnJvci4gRGVmYXVsdCBpcyBgZXJyb3JgLiBTZWUgW0xvZ0xldmVsXShMb2dMZXZlbC5odG1sKSBmb3IgYXZhaWxhYmxlIHZhbHVlcy4nLFxuICAgIGRlZmF1bHQ6ICdlcnJvcicsXG4gIH0sXG4gIGNsb3VkRnVuY3Rpb25TdWNjZXNzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xPR19MRVZFTFNfQ0xPVURfRlVOQ1RJT05fU1VDQ0VTUycsXG4gICAgaGVscDpcbiAgICAgICdMb2cgbGV2ZWwgdXNlZCBieSB0aGUgQ2xvdWQgQ29kZSBGdW5jdGlvbnMgb24gc3VjY2Vzcy4gRGVmYXVsdCBpcyBgaW5mb2AuIFNlZSBbTG9nTGV2ZWxdKExvZ0xldmVsLmh0bWwpIGZvciBhdmFpbGFibGUgdmFsdWVzLicsXG4gICAgZGVmYXVsdDogJ2luZm8nLFxuICB9LFxuICBzaWdudXBVc2VybmFtZVRha2VuOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xPR19MRVZFTFNfU0lHTlVQX1VTRVJOQU1FX1RBS0VOJyxcbiAgICBoZWxwOlxuICAgICAgJ0xvZyBsZXZlbCB1c2VkIHdoZW4gYSBzaWduLXVwIGZhaWxzIGJlY2F1c2UgdGhlIHVzZXJuYW1lIGFscmVhZHkgZXhpc3RzLiBEZWZhdWx0IGlzIGBpbmZvYC4gU2VlIFtMb2dMZXZlbF0oTG9nTGV2ZWwuaHRtbCkgZm9yIGF2YWlsYWJsZSB2YWx1ZXMuJyxcbiAgICBkZWZhdWx0OiAnaW5mbycsXG4gIH0sXG4gIHRyaWdnZXJBZnRlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MT0dfTEVWRUxTX1RSSUdHRVJfQUZURVInLFxuICAgIGhlbHA6XG4gICAgICAnTG9nIGxldmVsIHVzZWQgYnkgdGhlIENsb3VkIENvZGUgVHJpZ2dlcnMgYGFmdGVyU2F2ZWAsIGBhZnRlckRlbGV0ZWAsIGBhZnRlckZpbmRgLCBgYWZ0ZXJMb2dvdXRgLiBEZWZhdWx0IGlzIGBpbmZvYC4gU2VlIFtMb2dMZXZlbF0oTG9nTGV2ZWwuaHRtbCkgZm9yIGF2YWlsYWJsZSB2YWx1ZXMuJyxcbiAgICBkZWZhdWx0OiAnaW5mbycsXG4gIH0sXG4gIHRyaWdnZXJCZWZvcmVFcnJvcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MT0dfTEVWRUxTX1RSSUdHRVJfQkVGT1JFX0VSUk9SJyxcbiAgICBoZWxwOlxuICAgICAgJ0xvZyBsZXZlbCB1c2VkIGJ5IHRoZSBDbG91ZCBDb2RlIFRyaWdnZXJzIGBiZWZvcmVTYXZlYCwgYGJlZm9yZURlbGV0ZWAsIGBiZWZvcmVGaW5kYCwgYGJlZm9yZUxvZ2luYCBvbiBlcnJvci4gRGVmYXVsdCBpcyBgZXJyb3JgLiBTZWUgW0xvZ0xldmVsXShMb2dMZXZlbC5odG1sKSBmb3IgYXZhaWxhYmxlIHZhbHVlcy4nLFxuICAgIGRlZmF1bHQ6ICdlcnJvcicsXG4gIH0sXG4gIHRyaWdnZXJCZWZvcmVTdWNjZXNzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xPR19MRVZFTFNfVFJJR0dFUl9CRUZPUkVfU1VDQ0VTUycsXG4gICAgaGVscDpcbiAgICAgICdMb2cgbGV2ZWwgdXNlZCBieSB0aGUgQ2xvdWQgQ29kZSBUcmlnZ2VycyBgYmVmb3JlU2F2ZWAsIGBiZWZvcmVEZWxldGVgLCBgYmVmb3JlRmluZGAsIGBiZWZvcmVMb2dpbmAgb24gc3VjY2Vzcy4gRGVmYXVsdCBpcyBgaW5mb2AuIFNlZSBbTG9nTGV2ZWxdKExvZ0xldmVsLmh0bWwpIGZvciBhdmFpbGFibGUgdmFsdWVzLicsXG4gICAgZGVmYXVsdDogJ2luZm8nLFxuICB9LFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBSUEsT0FBTyxHQUFHQyxPQUFPLENBQUMsV0FBVyxDQUFDO0FBQ2xDQyxNQUFNLENBQUNDLE9BQU8sQ0FBQ0MsYUFBYSxHQUFHO0VBQzdCQyxjQUFjLEVBQUU7SUFDZEMsR0FBRyxFQUFFLHFDQUFxQztJQUMxQ0MsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEQyxlQUFlLEVBQUU7SUFDZkYsR0FBRyxFQUFFLHNDQUFzQztJQUMzQ0MsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNERSxXQUFXLEVBQUU7SUFDWEgsR0FBRyxFQUFFLGlDQUFpQztJQUN0Q0MsSUFBSSxFQUNGLGdHQUFnRztJQUNsR0csUUFBUSxFQUFFLElBQUk7SUFDZEMsTUFBTSxFQUFFWCxPQUFPLENBQUNZLFlBQVk7SUFDNUJDLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDREMsaUJBQWlCLEVBQUU7SUFDakJSLEdBQUcsRUFBRSx5Q0FBeUM7SUFDOUNDLElBQUksRUFDRixtSUFBbUk7SUFDcklJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RHLGtCQUFrQixFQUFFO0lBQ2xCVixHQUFHLEVBQUUsMENBQTBDO0lBQy9DQyxJQUFJLEVBQ0YsaU9BQWlPO0lBQ25PSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNESSxXQUFXLEVBQUU7SUFDWFgsR0FBRyxFQUFFLGtDQUFrQztJQUN2Q0MsSUFBSSxFQUNGLG9HQUFvRztJQUN0R0ksTUFBTSxFQUFFWCxPQUFPLENBQUNlLGFBQWE7SUFDN0JGLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDREssc0JBQXNCLEVBQUU7SUFDdEJaLEdBQUcsRUFBRSw4Q0FBOEM7SUFDbkRDLElB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
|
|
1392
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYXJzZXJzIiwicmVxdWlyZSIsIm1vZHVsZSIsImV4cG9ydHMiLCJTY2hlbWFPcHRpb25zIiwiYWZ0ZXJNaWdyYXRpb24iLCJlbnYiLCJoZWxwIiwiYmVmb3JlTWlncmF0aW9uIiwiZGVmaW5pdGlvbnMiLCJyZXF1aXJlZCIsImFjdGlvbiIsIm9iamVjdFBhcnNlciIsImRlZmF1bHQiLCJkZWxldGVFeHRyYUZpZWxkcyIsImJvb2xlYW5QYXJzZXIiLCJrZWVwVW5rbm93bkluZGV4ZXMiLCJsb2NrU2NoZW1hcyIsInJlY3JlYXRlTW9kaWZpZWRGaWVsZHMiLCJzdHJpY3QiLCJQYXJzZVNlcnZlck9wdGlvbnMiLCJhY2NvdW50TG9ja291dCIsInR5cGUiLCJhbGxvd0NsaWVudENsYXNzQ3JlYXRpb24iLCJhbGxvd0N1c3RvbU9iamVjdElkIiwiYWxsb3dFeHBpcmVkQXV0aERhdGFUb2tlbiIsImFsbG93SGVhZGVycyIsImFycmF5UGFyc2VyIiwiYWxsb3dPcmlnaW4iLCJhbmFseXRpY3NBZGFwdGVyIiwibW9kdWxlT3JPYmplY3RQYXJzZXIiLCJhcHBJZCIsImFwcE5hbWUiLCJhdXRoIiwiY2FjaGVBZGFwdGVyIiwiY2FjaGVNYXhTaXplIiwibnVtYmVyUGFyc2VyIiwiY2FjaGVUVEwiLCJjbGllbnRLZXkiLCJjbG91ZCIsImNsdXN0ZXIiLCJudW1iZXJPckJvb2xlYW5QYXJzZXIiLCJjb2xsZWN0aW9uUHJlZml4IiwiY29udmVydEVtYWlsVG9Mb3dlcmNhc2UiLCJjb252ZXJ0VXNlcm5hbWVUb0xvd2VyY2FzZSIsImN1c3RvbVBhZ2VzIiwiZGF0YWJhc2VBZGFwdGVyIiwiZGF0YWJhc2VPcHRpb25zIiwiZGF0YWJhc2VVUkkiLCJkZWZhdWx0TGltaXQiLCJkaXJlY3RBY2Nlc3MiLCJkb3ROZXRLZXkiLCJlbWFpbEFkYXB0ZXIiLCJlbWFpbFZlcmlmeVRva2VuUmV1c2VJZlZhbGlkIiwiZW1haWxWZXJpZnlUb2tlblZhbGlkaXR5RHVyYXRpb24iLCJlbmFibGVBbm9ueW1vdXNVc2VycyIsImVuYWJsZUNvbGxhdGlvbkNhc2VDb21wYXJpc29uIiwiZW5hYmxlRXhwcmVzc0Vycm9ySGFuZGxlciIsImVuYWJsZUluc2VjdXJlQXV0aEFkYXB0ZXJzIiwiZW5hYmxlU2FuaXRpemVkRXJyb3JSZXNwb25zZSIsImVuY3J5cHRpb25LZXkiLCJlbmZvcmNlUHJpdmF0ZVVzZXJzIiwiZXhwaXJlSW5hY3RpdmVTZXNzaW9ucyIsImV4dGVuZFNlc3Npb25PblVzZSIsImZpbGVLZXkiLCJmaWxlc0FkYXB0ZXIiLCJmaWxlVXBsb2FkIiwiZ3JhcGhRTFBhdGgiLCJncmFwaFFMUHVibGljSW50cm9zcGVjdGlvbiIsImdyYXBoUUxTY2hlbWEiLCJob3N0IiwiaWRlbXBvdGVuY3lPcHRpb25zIiwiamF2YXNjcmlwdEtleSIsImpzb25Mb2dzIiwibGl2ZVF1ZXJ5IiwibGl2ZVF1ZXJ5U2VydmVyT3B0aW9ucyIsImxvZ2dlckFkYXB0ZXIiLCJsb2dMZXZlbCIsImxvZ0xldmVscyIsImxvZ3NGb2xkZXIiLCJtYWludGVuYW5jZUtleSIsIm1haW50ZW5hbmNlS2V5SXBzIiwibWFzdGVyS2V5IiwibWFzdGVyS2V5SXBzIiwibWFzdGVyS2V5VHRsIiwibWF4TGltaXQiLCJtYXhMb2dGaWxlcyIsIm51bWJlck9yU3RyaW5nUGFyc2VyIiwibWF4VXBsb2FkU2l6ZSIsIm1pZGRsZXdhcmUiLCJtb3VudEdyYXBoUUwiLCJtb3VudFBhdGgiLCJtb3VudFBsYXlncm91bmQiLCJvYmplY3RJZFNpemUiLCJwYWdlcyIsInBhc3N3b3JkUG9saWN5IiwicGxheWdyb3VuZFBhdGgiLCJwb3J0IiwicHJlc2VydmVGaWxlTmFtZSIsInByZXZlbnRMb2dpbldpdGhVbnZlcmlmaWVkRW1haWwiLCJib29sZWFuT3JGdW5jdGlvblBhcnNlciIsInByZXZlbnRTaWdudXBXaXRoVW52ZXJpZmllZEVtYWlsIiwicHJvdGVjdGVkRmllbGRzIiwiX1VzZXIiLCJwdWJsaWNTZXJ2ZXJVUkwiLCJwdXNoIiwicmF0ZUxpbWl0IiwicmVhZE9ubHlNYXN0ZXJLZXkiLCJyZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmUiLCJyZXF1ZXN0S2V5d29yZERlbnlsaXN0Iiwia2V5IiwidmFsdWUiLCJyZXN0QVBJS2V5IiwicmV2b2tlU2Vzc2lvbk9uUGFzc3dvcmRSZXNldCIsInNjaGVkdWxlZFB1c2giLCJzY2hlbWEiLCJzZWN1cml0eSIsInNlbmRVc2VyRW1haWxWZXJpZmljYXRpb24iLCJzZXJ2ZXJDbG9zZUNvbXBsZXRlIiwic2VydmVyVVJMIiwic2Vzc2lvbkxlbmd0aCIsInNpbGVudCIsInN0YXJ0TGl2ZVF1ZXJ5U2VydmVyIiwidHJ1c3RQcm94eSIsInVzZXJTZW5zaXRpdmVGaWVsZHMiLCJ2ZXJib3NlIiwidmVyaWZ5U2VydmVyVXJsIiwidmVyaWZ5VXNlckVtYWlscyIsIndlYmhvb2tLZXkiLCJSYXRlTGltaXRPcHRpb25zIiwiZXJyb3JSZXNwb25zZU1lc3NhZ2UiLCJpbmNsdWRlSW50ZXJuYWxSZXF1ZXN0cyIsImluY2x1ZGVNYXN0ZXJLZXkiLCJyZWRpc1VybCIsInJlcXVlc3RDb3VudCIsInJlcXVlc3RNZXRob2RzIiwicmVxdWVzdFBhdGgiLCJyZXF1ZXN0VGltZVdpbmRvdyIsInpvbmUiLCJTZWN1cml0eU9wdGlvbnMiLCJjaGVja0dyb3VwcyIsImVuYWJsZUNoZWNrIiwiZW5hYmxlQ2hlY2tMb2ciLCJQYWdlc09wdGlvbnMiLCJjdXN0b21Sb3V0ZXMiLCJjdXN0b21VcmxzIiwiZW5hYmxlTG9jYWxpemF0aW9uIiwiZW5hYmxlUm91dGVyIiwiZm9yY2VSZWRpcmVjdCIsImxvY2FsaXphdGlvbkZhbGxiYWNrTG9jYWxlIiwibG9jYWxpemF0aW9uSnNvblBhdGgiLCJwYWdlc0VuZHBvaW50IiwicGFnZXNQYXRoIiwicGxhY2Vob2xkZXJzIiwiUGFnZXNSb3V0ZSIsImhhbmRsZXIiLCJtZXRob2QiLCJwYXRoIiwiUGFnZXNDdXN0b21VcmxzT3B0aW9ucyIsImVtYWlsVmVyaWZpY2F0aW9uTGlua0V4cGlyZWQiLCJlbWFpbFZlcmlmaWNhdGlvbkxpbmtJbnZhbGlkIiwiZW1haWxWZXJpZmljYXRpb25TZW5kRmFpbCIsImVtYWlsVmVyaWZpY2F0aW9uU2VuZFN1Y2Nlc3MiLCJlbWFpbFZlcmlmaWNhdGlvblN1Y2Nlc3MiLCJwYXNzd29yZFJlc2V0IiwicGFzc3dvcmRSZXNldExpbmtJbnZhbGlkIiwicGFzc3dvcmRSZXNldFN1Y2Nlc3MiLCJDdXN0b21QYWdlc09wdGlvbnMiLCJjaG9vc2VQYXNzd29yZCIsImV4cGlyZWRWZXJpZmljYXRpb25MaW5rIiwiaW52YWxpZExpbmsiLCJpbnZhbGlkUGFzc3dvcmRSZXNldExpbmsiLCJpbnZhbGlkVmVyaWZpY2F0aW9uTGluayIsImxpbmtTZW5kRmFpbCIsImxpbmtTZW5kU3VjY2VzcyIsInBhcnNlRnJhbWVVUkwiLCJ2ZXJpZnlFbWFpbFN1Y2Nlc3MiLCJMaXZlUXVlcnlPcHRpb25zIiwiY2xhc3NOYW1lcyIsInB1YlN1YkFkYXB0ZXIiLCJyZWRpc09wdGlvbnMiLCJyZWRpc1VSTCIsIndzc0FkYXB0ZXIiLCJMaXZlUXVlcnlTZXJ2ZXJPcHRpb25zIiwiY2FjaGVUaW1lb3V0Iiwia2V5UGFpcnMiLCJ3ZWJzb2NrZXRUaW1lb3V0IiwiSWRlbXBvdGVuY3lPcHRpb25zIiwicGF0aHMiLCJ0dGwiLCJBY2NvdW50TG9ja291dE9wdGlvbnMiLCJkdXJhdGlvbiIsInRocmVzaG9sZCIsInVubG9ja09uUGFzc3dvcmRSZXNldCIsIlBhc3N3b3JkUG9saWN5T3B0aW9ucyIsImRvTm90QWxsb3dVc2VybmFtZSIsIm1heFBhc3N3b3JkQWdlIiwibWF4UGFzc3dvcmRIaXN0b3J5IiwicmVzZXRQYXNzd29yZFN1Y2Nlc3NPbkludmFsaWRFbWFpbCIsInJlc2V0VG9rZW5SZXVzZUlmVmFsaWQiLCJyZXNldFRva2VuVmFsaWRpdHlEdXJhdGlvbiIsInZhbGlkYXRpb25FcnJvciIsInZhbGlkYXRvckNhbGxiYWNrIiwidmFsaWRhdG9yUGF0dGVybiIsIkZpbGVVcGxvYWRPcHRpb25zIiwiZW5hYmxlRm9yQW5vbnltb3VzVXNlciIsImVuYWJsZUZvckF1dGhlbnRpY2F0ZWRVc2VyIiwiZW5hYmxlRm9yUHVibGljIiwiZmlsZUV4dGVuc2lvbnMiLCJMb2dMZXZlbCIsImRlYnVnIiwiZXJyb3IiLCJpbmZvIiwic2lsbHkiLCJ3YXJuIiwiTG9nQ2xpZW50RXZlbnQiLCJrZXlzIiwibmFtZSIsIkRhdGFiYXNlT3B0aW9ucyIsImFsbG93UHVibGljRXhwbGFpbiIsImF1dGhNZWNoYW5pc20iLCJhdXRoTWVjaGFuaXNtUHJvcGVydGllcyIsImF1dGhTb3VyY2UiLCJhdXRvU2VsZWN0RmFtaWx5IiwiYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0IiwiY2xpZW50TWV0YWRhdGEiLCJjb21wcmVzc29ycyIsImNvbm5lY3RUaW1lb3V0TVMiLCJjcmVhdGVJbmRleFJvbGVOYW1lIiwiY3JlYXRlSW5kZXhVc2VyRW1haWwiLCJjcmVhdGVJbmRleFVzZXJFbWFpbENhc2VJbnNlbnNpdGl2ZSIsImNyZWF0ZUluZGV4VXNlckVtYWlsVmVyaWZ5VG9rZW4iLCJjcmVhdGVJbmRleFVzZXJQYXNzd29yZFJlc2V0VG9rZW4iLCJjcmVhdGVJbmRleFVzZXJVc2VybmFtZSIsImNyZWF0ZUluZGV4VXNlclVzZXJuYW1lQ2FzZUluc2Vuc2l0aXZlIiwiZGlyZWN0Q29ubmVjdGlvbiIsImRpc2FibGVJbmRleEZpZWxkVmFsaWRhdGlvbiIsImVuYWJsZVNjaGVtYUhvb2tzIiwiZm9yY2VTZXJ2ZXJPYmplY3RJZCIsImhlYXJ0YmVhdEZyZXF1ZW5jeU1TIiwibG9hZEJhbGFuY2VkIiwibG9jYWxUaHJlc2hvbGRNUyIsImxvZ0NsaWVudEV2ZW50cyIsIm1heENvbm5lY3RpbmciLCJtYXhJZGxlVGltZU1TIiwibWF4UG9vbFNpemUiLCJtYXhTdGFsZW5lc3NTZWNvbmRzIiwibWF4VGltZU1TIiwibWluUG9vbFNpemUiLCJwcm94eUhvc3QiLCJwcm94eVBhc3N3b3JkIiwicHJveHlQb3J0IiwicHJveHlVc2VybmFtZSIsInJlYWRDb25jZXJuTGV2ZWwiLCJyZWFkUHJlZmVyZW5jZSIsInJlYWRQcmVmZXJlbmNlVGFncyIsInJlcGxpY2FTZXQiLCJyZXRyeVJlYWRzIiwicmV0cnlXcml0ZXMiLCJzY2hlbWFDYWNoZVR0bCIsInNlcnZlck1vbml0b3JpbmdNb2RlIiwic2VydmVyU2VsZWN0aW9uVGltZW91dE1TIiwic29ja2V0VGltZW91dE1TIiwic3J2TWF4SG9zdHMiLCJzcnZTZXJ2aWNlTmFtZSIsInNzbCIsInRscyIsInRsc0FsbG93SW52YWxpZENlcnRpZmljYXRlcyIsInRsc0FsbG93SW52YWxpZEhvc3RuYW1lcyIsInRsc0NBRmlsZSIsInRsc0NlcnRpZmljYXRlS2V5RmlsZSIsInRsc0NlcnRpZmljYXRlS2V5RmlsZVBhc3N3b3JkIiwidGxzSW5zZWN1cmUiLCJ3YWl0UXVldWVUaW1lb3V0TVMiLCJ6bGliQ29tcHJlc3Npb25MZXZlbCIsIkRhdGFiYXNlT3B0aW9uc0NsaWVudE1ldGFkYXRhIiwidmVyc2lvbiIsIkF1dGhBZGFwdGVyIiwiZW5hYmxlZCIsIkxvZ0xldmVscyIsImNsb3VkRnVuY3Rpb25FcnJvciIsImNsb3VkRnVuY3Rpb25TdWNjZXNzIiwic2lnbnVwVXNlcm5hbWVUYWtlbiIsInRyaWdnZXJBZnRlciIsInRyaWdnZXJCZWZvcmVFcnJvciIsInRyaWdnZXJCZWZvcmVTdWNjZXNzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL09wdGlvbnMvRGVmaW5pdGlvbnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLypcbioqKiogR0VORVJBVEVEIENPREUgKioqKlxuVGhpcyBjb2RlIGhhcyBiZWVuIGdlbmVyYXRlZCBieSByZXNvdXJjZXMvYnVpbGRDb25maWdEZWZpbml0aW9ucy5qc1xuRG8gbm90IGVkaXQgbWFudWFsbHksIGJ1dCB1cGRhdGUgT3B0aW9ucy9pbmRleC5qc1xuKi9cbnZhciBwYXJzZXJzID0gcmVxdWlyZSgnLi9wYXJzZXJzJyk7XG5tb2R1bGUuZXhwb3J0cy5TY2hlbWFPcHRpb25zID0ge1xuICBhZnRlck1pZ3JhdGlvbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TQ0hFTUFfQUZURVJfTUlHUkFUSU9OJyxcbiAgICBoZWxwOiAnRXhlY3V0ZSBhIGNhbGxiYWNrIGFmdGVyIHJ1bm5pbmcgc2NoZW1hIG1pZ3JhdGlvbnMuJyxcbiAgfSxcbiAgYmVmb3JlTWlncmF0aW9uOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NDSEVNQV9CRUZPUkVfTUlHUkFUSU9OJyxcbiAgICBoZWxwOiAnRXhlY3V0ZSBhIGNhbGxiYWNrIGJlZm9yZSBydW5uaW5nIHNjaGVtYSBtaWdyYXRpb25zLicsXG4gIH0sXG4gIGRlZmluaXRpb25zOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NDSEVNQV9ERUZJTklUSU9OUycsXG4gICAgaGVscDpcbiAgICAgICdSZXN0IHJlcHJlc2VudGF0aW9uIG9uIFBhcnNlLlNjaGVtYSBodHRwczovL2RvY3MucGFyc2VwbGF0Zm9ybS5vcmcvcmVzdC9ndWlkZS8jYWRkaW5nLWEtc2NoZW1hJyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICBhY3Rpb246IHBhcnNlcnMub2JqZWN0UGFyc2VyLFxuICAgIGRlZmF1bHQ6IFtdLFxuICB9LFxuICBkZWxldGVFeHRyYUZpZWxkczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TQ0hFTUFfREVMRVRFX0VYVFJBX0ZJRUxEUycsXG4gICAgaGVscDpcbiAgICAgICdJcyB0cnVlIGlmIFBhcnNlIFNlcnZlciBzaG91bGQgZGVsZXRlIGFueSBmaWVsZHMgbm90IGRlZmluZWQgaW4gYSBzY2hlbWEgZGVmaW5pdGlvbi4gVGhpcyBzaG91bGQgb25seSBiZSB1c2VkIGR1cmluZyBkZXZlbG9wbWVudC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBrZWVwVW5rbm93bkluZGV4ZXM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfU0NIRU1BX0tFRVBfVU5LTk9XTl9JTkRFWEVTJyxcbiAgICBoZWxwOlxuICAgICAgXCIoT3B0aW9uYWwpIEtlZXAgaW5kZXhlcyB0aGF0IGFyZSBwcmVzZW50IGluIHRoZSBkYXRhYmFzZSBidXQgbm90IGRlZmluZWQgaW4gdGhlIHNjaGVtYS4gU2V0IHRoaXMgdG8gYHRydWVgIGlmIHlvdSBhcmUgYWRkaW5nIGluZGV4ZXMgbWFudWFsbHksIHNvIHRoYXQgdGhleSB3b24ndCBiZSByZW1vdmVkIHdoZW4gcnVubmluZyBzY2hlbWEgbWlncmF0aW9uLiBEZWZhdWx0IGlzIGBmYWxzZWAuXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGxvY2tTY2hlbWFzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NDSEVNQV9MT0NLX1NDSEVNQVMnLFxuICAgIGhlbHA6XG4gICAgICAnSXMgdHJ1ZSBpZiBQYXJzZSBTZXJ2ZXIgd2lsbCByZWplY3QgYW55IGF0dGVtcHRzIHRvIG1vZGlmeSB0aGUgc2NoZW1hIHdoaWxlIHRoZSBzZXJ2ZXIgaXMgcnVubmluZy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICByZWNyZWF0ZU1vZGlmaWVkRmllbGRzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NDSEVNQV9SRUNSRUFURV9NT0RJRklFRF9GSUVMRFMnLFxuICAgIGhlbHA6XG4gICAgICAnSXMgdHJ1ZSBpZiBQYXJzZSBTZXJ2ZXIgc2hvdWxkIHJlY3JlYXRlIGFueSBmaWVsZHMgdGhhdCBhcmUgZGlmZmVyZW50IGJldHdlZW4gdGhlIGN1cnJlbnQgZGF0YWJhc2Ugc2NoZW1hIGFuZCB0aGVzY2hlbWEgZGVmaW5pdGlvbi4gVGhpcyBzaG91bGQgb25seSBiZSB1c2VkIGR1cmluZyBkZXZlbG9wbWVudC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBzdHJpY3Q6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfU0NIRU1BX1NUUklDVCcsXG4gICAgaGVscDogJ0lzIHRydWUgaWYgUGFyc2UgU2VydmVyIHNob3VsZCBleGl0IGlmIHNjaGVtYSB1cGRhdGUgZmFpbC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLlBhcnNlU2VydmVyT3B0aW9ucyA9IHtcbiAgYWNjb3VudExvY2tvdXQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQUNDT1VOVF9MT0NLT1VUJyxcbiAgICBoZWxwOiAnVGhlIGFjY291bnQgbG9ja291dCBwb2xpY3kgZm9yIGZhaWxlZCBsb2dpbiBhdHRlbXB0cy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ0FjY291bnRMb2Nrb3V0T3B0aW9ucycsXG4gIH0sXG4gIGFsbG93Q2xpZW50Q2xhc3NDcmVhdGlvbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9BTExPV19DTElFTlRfQ0xBU1NfQ1JFQVRJT04nLFxuICAgIGhlbHA6ICdFbmFibGUgKG9yIGRpc2FibGUpIGNsaWVudCBjbGFzcyBjcmVhdGlvbiwgZGVmYXVsdHMgdG8gZmFsc2UnLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBhbGxvd0N1c3RvbU9iamVjdElkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0FMTE9XX0NVU1RPTV9PQkpFQ1RfSUQnLFxuICAgIGhlbHA6ICdFbmFibGUgKG9yIGRpc2FibGUpIGN1c3RvbSBvYmplY3RJZCcsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGFsbG93RXhwaXJlZEF1dGhEYXRhVG9rZW46IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQUxMT1dfRVhQSVJFRF9BVVRIX0RBVEFfVE9LRU4nLFxuICAgIGhlbHA6XG4gICAgICAnQWxsb3cgYSB1c2VyIHRvIGxvZyBpbiBldmVuIGlmIHRoZSAzcmQgcGFydHkgYXV0aGVudGljYXRpb24gdG9rZW4gdGhhdCB3YXMgdXNlZCB0byBzaWduIGluIHRvIHRoZWlyIGFjY291bnQgaGFzIGV4cGlyZWQuIElmIHRoaXMgaXMgc2V0IHRvIGBmYWxzZWAsIHRoZW4gdGhlIHRva2VuIHdpbGwgYmUgdmFsaWRhdGVkIGV2ZXJ5IHRpbWUgdGhlIHVzZXIgc2lnbnMgaW4gdG8gdGhlaXIgYWNjb3VudC4gVGhpcyByZWZlcnMgdG8gdGhlIHRva2VuIHRoYXQgaXMgc3RvcmVkIGluIHRoZSBgX1VzZXIuYXV0aERhdGFgIGZpZWxkLiBEZWZhdWx0cyB0byBgZmFsc2VgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGFsbG93SGVhZGVyczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9BTExPV19IRUFERVJTJyxcbiAgICBoZWxwOiAnQWRkIGhlYWRlcnMgdG8gQWNjZXNzLUNvbnRyb2wtQWxsb3ctSGVhZGVycycsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmFycmF5UGFyc2VyLFxuICB9LFxuICBhbGxvd09yaWdpbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9BTExPV19PUklHSU4nLFxuICAgIGhlbHA6XG4gICAgICAnU2V0cyBvcmlnaW5zIGZvciBBY2Nlc3MtQ29udHJvbC1BbGxvdy1PcmlnaW4uIFRoaXMgY2FuIGJlIGEgc3RyaW5nIGZvciBhIHNpbmdsZSBvcmlnaW4gb3IgYW4gYXJyYXkgb2Ygc3RyaW5ncyBmb3IgbXVsdGlwbGUgb3JpZ2lucy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5hcnJheVBhcnNlcixcbiAgfSxcbiAgYW5hbHl0aWNzQWRhcHRlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9BTkFMWVRJQ1NfQURBUFRFUicsXG4gICAgaGVscDogJ0FkYXB0ZXIgbW9kdWxlIGZvciB0aGUgYW5hbHl0aWNzJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubW9kdWxlT3JPYmplY3RQYXJzZXIsXG4gIH0sXG4gIGFwcElkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0FQUExJQ0FUSU9OX0lEJyxcbiAgICBoZWxwOiAnWW91ciBQYXJzZSBBcHBsaWNhdGlvbiBJRCcsXG4gICAgcmVxdWlyZWQ6IHRydWUsXG4gIH0sXG4gIGFwcE5hbWU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQVBQX05BTUUnLFxuICAgIGhlbHA6ICdTZXRzIHRoZSBhcHAgbmFtZScsXG4gIH0sXG4gIGF1dGg6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQVVUSF9QUk9WSURFUlMnLFxuICAgIGhlbHA6XG4gICAgICAnQ29uZmlndXJhdGlvbiBmb3IgeW91ciBhdXRoZW50aWNhdGlvbiBwcm92aWRlcnMsIGFzIHN0cmluZ2lmaWVkIEpTT04uIFNlZSBodHRwOi8vZG9jcy5wYXJzZXBsYXRmb3JtLm9yZy9wYXJzZS1zZXJ2ZXIvZ3VpZGUvI29hdXRoLWFuZC0zcmQtcGFydHktYXV0aGVudGljYXRpb24nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gIH0sXG4gIGNhY2hlQWRhcHRlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DQUNIRV9BREFQVEVSJyxcbiAgICBoZWxwOiAnQWRhcHRlciBtb2R1bGUgZm9yIHRoZSBjYWNoZScsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm1vZHVsZU9yT2JqZWN0UGFyc2VyLFxuICB9LFxuICBjYWNoZU1heFNpemU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQ0FDSEVfTUFYX1NJWkUnLFxuICAgIGhlbHA6ICdTZXRzIHRoZSBtYXhpbXVtIHNpemUgZm9yIHRoZSBpbiBtZW1vcnkgY2FjaGUsIGRlZmF1bHRzIHRvIDEwMDAwJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdjYWNoZU1heFNpemUnKSxcbiAgICBkZWZhdWx0OiAxMDAwMCxcbiAgfSxcbiAgY2FjaGVUVEw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQ0FDSEVfVFRMJyxcbiAgICBoZWxwOiAnU2V0cyB0aGUgVFRMIGZvciB0aGUgaW4gbWVtb3J5IGNhY2hlIChpbiBtcyksIGRlZmF1bHRzIHRvIDUwMDAgKDUgc2Vjb25kcyknLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ2NhY2hlVFRMJyksXG4gICAgZGVmYXVsdDogNTAwMCxcbiAgfSxcbiAgY2xpZW50S2V5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NMSUVOVF9LRVknLFxuICAgIGhlbHA6ICdLZXkgZm9yIGlPUywgTWFjT1MsIHR2T1MgY2xpZW50cycsXG4gIH0sXG4gIGNsb3VkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NMT1VEJyxcbiAgICBoZWxwOiAnRnVsbCBwYXRoIHRvIHlvdXIgY2xvdWQgY29kZSBtYWluLmpzJyxcbiAgfSxcbiAgY2x1c3Rlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DTFVTVEVSJyxcbiAgICBoZWxwOiAnUnVuIHdpdGggY2x1c3Rlciwgb3B0aW9uYWxseSBzZXQgdGhlIG51bWJlciBvZiBwcm9jZXNzZXMgZGVmYXVsdCB0byBvcy5jcHVzKCkubGVuZ3RoJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyT3JCb29sZWFuUGFyc2VyLFxuICB9LFxuICBjb2xsZWN0aW9uUHJlZml4OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NPTExFQ1RJT05fUFJFRklYJyxcbiAgICBoZWxwOiAnQSBjb2xsZWN0aW9uIHByZWZpeCBmb3IgdGhlIGNsYXNzZXMnLFxuICAgIGRlZmF1bHQ6ICcnLFxuICB9LFxuICBjb252ZXJ0RW1haWxUb0xvd2VyY2FzZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DT05WRVJUX0VNQUlMX1RPX0xPV0VSQ0FTRScsXG4gICAgaGVscDpcbiAgICAgICdPcHRpb25hbC4gSWYgc2V0IHRvIGB0cnVlYCwgdGhlIGBlbWFpbGAgcHJvcGVydHkgb2YgYSB1c2VyIGlzIGF1dG9tYXRpY2FsbHkgY29udmVydGVkIHRvIGxvd2VyY2FzZSBiZWZvcmUgYmVpbmcgc3RvcmVkIGluIHRoZSBkYXRhYmFzZS4gQ29uc2VxdWVudGx5LCBxdWVyaWVzIG11c3QgbWF0Y2ggdGhlIGNhc2UgYXMgc3RvcmVkIGluIHRoZSBkYXRhYmFzZSwgd2hpY2ggd291bGQgYmUgbG93ZXJjYXNlIGluIHRoaXMgc2NlbmFyaW8uIElmIGBmYWxzZWAsIHRoZSBgZW1haWxgIHByb3BlcnR5IGlzIHN0b3JlZCBhcyBzZXQsIHdpdGhvdXQgYW55IGNhc2UgbW9kaWZpY2F0aW9ucy4gRGVmYXVsdCBpcyBgZmFsc2VgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGNvbnZlcnRVc2VybmFtZVRvTG93ZXJjYXNlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NPTlZFUlRfVVNFUk5BTUVfVE9fTE9XRVJDQVNFJyxcbiAgICBoZWxwOlxuICAgICAgJ09wdGlvbmFsLiBJZiBzZXQgdG8gYHRydWVgLCB0aGUgYHVzZXJuYW1lYCBwcm9wZXJ0eSBvZiBhIHVzZXIgaXMgYXV0b21hdGljYWxseSBjb252ZXJ0ZWQgdG8gbG93ZXJjYXNlIGJlZm9yZSBiZWluZyBzdG9yZWQgaW4gdGhlIGRhdGFiYXNlLiBDb25zZXF1ZW50bHksIHF1ZXJpZXMgbXVzdCBtYXRjaCB0aGUgY2FzZSBhcyBzdG9yZWQgaW4gdGhlIGRhdGFiYXNlLCB3aGljaCB3b3VsZCBiZSBsb3dlcmNhc2UgaW4gdGhpcyBzY2VuYXJpby4gSWYgYGZhbHNlYCwgdGhlIGB1c2VybmFtZWAgcHJvcGVydHkgaXMgc3RvcmVkIGFzIHNldCwgd2l0aG91dCBhbnkgY2FzZSBtb2RpZmljYXRpb25zLiBEZWZhdWx0IGlzIGBmYWxzZWAuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgY3VzdG9tUGFnZXM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQ1VTVE9NX1BBR0VTJyxcbiAgICBoZWxwOiAnY3VzdG9tIHBhZ2VzIGZvciBwYXNzd29yZCB2YWxpZGF0aW9uIGFuZCByZXNldCcsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnQ3VzdG9tUGFnZXNPcHRpb25zJyxcbiAgICBkZWZhdWx0OiB7fSxcbiAgfSxcbiAgZGF0YWJhc2VBZGFwdGVyOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0FEQVBURVInLFxuICAgIGhlbHA6XG4gICAgICAnQWRhcHRlciBtb2R1bGUgZm9yIHRoZSBkYXRhYmFzZTsgYW55IG9wdGlvbnMgdGhhdCBhcmUgbm90IGV4cGxpY2l0bHkgZGVzY3JpYmVkIGhlcmUgYXJlIHBhc3NlZCBkaXJlY3RseSB0byB0aGUgZGF0YWJhc2UgY2xpZW50LicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm1vZHVsZU9yT2JqZWN0UGFyc2VyLFxuICB9LFxuICBkYXRhYmFzZU9wdGlvbnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfT1BUSU9OUycsXG4gICAgaGVscDogJ09wdGlvbnMgdG8gcGFzcyB0byB0aGUgZGF0YWJhc2UgY2xpZW50JyxcbiAgICBhY3Rpb246IHBhcnNlcnMub2JqZWN0UGFyc2VyLFxuICAgIHR5cGU6ICdEYXRhYmFzZU9wdGlvbnMnLFxuICB9LFxuICBkYXRhYmFzZVVSSToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9VUkknLFxuICAgIGhlbHA6ICdUaGUgZnVsbCBVUkkgdG8geW91ciBkYXRhYmFzZS4gU3VwcG9ydGVkIGRhdGFiYXNlcyBhcmUgbW9uZ29kYiBvciBwb3N0Z3Jlcy4nLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIGRlZmF1bHQ6ICdtb25nb2RiOi8vbG9jYWxob3N0OjI3MDE3L3BhcnNlJyxcbiAgfSxcbiAgZGVmYXVsdExpbWl0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RFRkFVTFRfTElNSVQnLFxuICAgIGhlbHA6ICdEZWZhdWx0IHZhbHVlIGZvciBsaW1pdCBvcHRpb24gb24gcXVlcmllcywgZGVmYXVsdHMgdG8gYDEwMGAuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdkZWZhdWx0TGltaXQnKSxcbiAgICBkZWZhdWx0OiAxMDAsXG4gIH0sXG4gIGRpcmVjdEFjY2Vzczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9ESVJFQ1RfQUNDRVNTJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgaWYgUGFyc2UgcmVxdWVzdHMgd2l0aGluIHRoZSBzYW1lIE5vZGUuanMgZW52aXJvbm1lbnQgYXMgUGFyc2UgU2VydmVyIHNob3VsZCBiZSByb3V0ZWQgdG8gUGFyc2UgU2VydmVyIGRpcmVjdGx5IGluc3RlYWQgb2YgdmlhIHRoZSBIVFRQIGludGVyZmFjZS4gRGVmYXVsdCBpcyBgZmFsc2VgLjxicj48YnI+SWYgc2V0IHRvIGBmYWxzZWAgdGhlbiBQYXJzZSByZXF1ZXN0cyB3aXRoaW4gdGhlIHNhbWUgTm9kZS5qcyBlbnZpcm9ubWVudCBhcyBQYXJzZSBTZXJ2ZXIgYXJlIGV4ZWN1dGVkIGFzIEhUVFAgcmVxdWVzdHMgc2VudCB0byBQYXJzZSBTZXJ2ZXIgdmlhIHRoZSBgc2VydmVyVVJMYC4gRm9yIGV4YW1wbGUsIGEgYFBhcnNlLlF1ZXJ5YCBpbiBDbG91ZCBDb2RlIGlzIGNhbGxpbmcgUGFyc2UgU2VydmVyIHZpYSBhIEhUVFAgcmVxdWVzdC4gVGhlIHNlcnZlciBpcyBlc3NlbnRpYWxseSBtYWtpbmcgYSBIVFRQIHJlcXVlc3QgdG8gaXRzZWxmLCB1bm5lY2Vzc2FyaWx5IHVzaW5nIG5ldHdvcmsgcmVzb3VyY2VzIHN1Y2ggYXMgbmV0d29yayBwb3J0cy48YnI+PGJyPlxcdTI2QTBcXHVGRTBGIEluIGVudmlyb25tZW50cyB3aGVyZSBtdWx0aXBsZSBQYXJzZSBTZXJ2ZXIgaW5zdGFuY2VzIHJ1biBiZWhpbmQgYSBsb2FkIGJhbGFuY2VyIGFuZCBQYXJzZSByZXF1ZXN0cyB3aXRoaW4gdGhlIGN1cnJlbnQgTm9kZS5qcyBlbnZpcm9ubWVudCBzaG91bGQgYmUgcm91dGVkIHZpYSB0aGUgbG9hZCBiYWxhbmNlciBhbmQgZGlzdHJpYnV0ZWQgYXMgSFRUUCByZXF1ZXN0cyBhbW9uZyBhbGwgaW5zdGFuY2VzIHZpYSB0aGUgYHNlcnZlclVSTGAsIHRoaXMgc2hvdWxkIGJlIHNldCB0byBgZmFsc2VgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgZG90TmV0S2V5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RPVF9ORVRfS0VZJyxcbiAgICBoZWxwOiAnS2V5IGZvciBVbml0eSBhbmQgLk5ldCBTREsnLFxuICB9LFxuICBlbWFpbEFkYXB0ZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU1BSUxfQURBUFRFUicsXG4gICAgaGVscDogJ0FkYXB0ZXIgbW9kdWxlIGZvciBlbWFpbCBzZW5kaW5nJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubW9kdWxlT3JPYmplY3RQYXJzZXIsXG4gIH0sXG4gIGVtYWlsVmVyaWZ5VG9rZW5SZXVzZUlmVmFsaWQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU1BSUxfVkVSSUZZX1RPS0VOX1JFVVNFX0lGX1ZBTElEJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgaWYgYSBlbWFpbCB2ZXJpZmljYXRpb24gdG9rZW4gc2hvdWxkIGJlIHJldXNlZCBpbiBjYXNlIGFub3RoZXIgdG9rZW4gaXMgcmVxdWVzdGVkIGJ1dCB0aGVyZSBpcyBhIHRva2VuIHRoYXQgaXMgc3RpbGwgdmFsaWQsIGkuZS4gaGFzIG5vdCBleHBpcmVkLiBUaGlzIGF2b2lkcyB0aGUgb2Z0ZW4gb2JzZXJ2ZWQgaXNzdWUgdGhhdCBhIHVzZXIgcmVxdWVzdHMgbXVsdGlwbGUgZW1haWxzIGFuZCBkb2VzIG5vdCBrbm93IHdoaWNoIGxpbmsgY29udGFpbnMgYSB2YWxpZCB0b2tlbiBiZWNhdXNlIGVhY2ggbmV3bHkgZ2VuZXJhdGVkIHRva2VuIHdvdWxkIGludmFsaWRhdGUgdGhlIHByZXZpb3VzIHRva2VuLjxicj48YnI+RGVmYXVsdCBpcyBgZmFsc2VgLjxicj5SZXF1aXJlcyBvcHRpb24gYHZlcmlmeVVzZXJFbWFpbHM6IHRydWVgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGVtYWlsVmVyaWZ5VG9rZW5WYWxpZGl0eUR1cmF0aW9uOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0VNQUlMX1ZFUklGWV9UT0tFTl9WQUxJRElUWV9EVVJBVElPTicsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdGhlIHZhbGlkaXR5IGR1cmF0aW9uIG9mIHRoZSBlbWFpbCB2ZXJpZmljYXRpb24gdG9rZW4gaW4gc2Vjb25kcyBhZnRlciB3aGljaCB0aGUgdG9rZW4gZXhwaXJlcy4gVGhlIHRva2VuIGlzIHVzZWQgaW4gdGhlIGxpbmsgdGhhdCBpcyBzZXQgaW4gdGhlIGVtYWlsLiBBZnRlciB0aGUgdG9rZW4gZXhwaXJlcywgdGhlIGxpbmsgYmVjb21lcyBpbnZhbGlkIGFuZCBhIG5ldyBsaW5rIGhhcyB0byBiZSBzZW50LiBJZiB0aGUgb3B0aW9uIGlzIG5vdCBzZXQgb3Igc2V0IHRvIGB1bmRlZmluZWRgLCB0aGVuIHRoZSB0b2tlbiBuZXZlciBleHBpcmVzLjxicj48YnI+Rm9yIGV4YW1wbGUsIHRvIGV4cGlyZSB0aGUgdG9rZW4gYWZ0ZXIgMiBob3Vycywgc2V0IGEgdmFsdWUgb2YgNzIwMCBzZWNvbmRzICg9IDYwIHNlY29uZHMgKiA2MCBtaW51dGVzICogMiBob3VycykuPGJyPjxicj5EZWZhdWx0IGlzIGB1bmRlZmluZWRgLjxicj5SZXF1aXJlcyBvcHRpb24gYHZlcmlmeVVzZXJFbWFpbHM6IHRydWVgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignZW1haWxWZXJpZnlUb2tlblZhbGlkaXR5RHVyYXRpb24nKSxcbiAgfSxcbiAgZW5hYmxlQW5vbnltb3VzVXNlcnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU5BQkxFX0FOT05fVVNFUlMnLFxuICAgIGhlbHA6ICdFbmFibGUgKG9yIGRpc2FibGUpIGFub255bW91cyB1c2VycywgZGVmYXVsdHMgdG8gdHJ1ZScsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgZW5hYmxlQ29sbGF0aW9uQ2FzZUNvbXBhcmlzb246IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU5BQkxFX0NPTExBVElPTl9DQVNFX0NPTVBBUklTT04nLFxuICAgIGhlbHA6XG4gICAgICAnT3B0aW9uYWwuIElmIHNldCB0byBgdHJ1ZWAsIHRoZSBjb2xsYXRpb24gcnVsZSBvZiBjYXNlIGNvbXBhcmlzb24gZm9yIHF1ZXJpZXMgYW5kIGluZGV4ZXMgaXMgZW5hYmxlZC4gRW5hYmxlIHRoaXMgb3B0aW9uIHRvIHJ1biBQYXJzZSBTZXJ2ZXIgd2l0aCBNb25nb0RCIEF0bGFzIFNlcnZlcmxlc3Mgb3IgQVdTIEFtYXpvbiBEb2N1bWVudERCLiBJZiBgZmFsc2VgLCB0aGUgY29sbGF0aW9uIHJ1bGUgb2YgY2FzZSBjb21wYXJpc29uIGlzIGRpc2FibGVkLiBEZWZhdWx0IGlzIGBmYWxzZWAuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgZW5hYmxlRXhwcmVzc0Vycm9ySGFuZGxlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9FTkFCTEVfRVhQUkVTU19FUlJPUl9IQU5ETEVSJyxcbiAgICBoZWxwOiAnRW5hYmxlcyB0aGUgZGVmYXVsdCBleHByZXNzIGVycm9yIGhhbmRsZXIgZm9yIGFsbCBlcnJvcnMnLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBlbmFibGVJbnNlY3VyZUF1dGhBZGFwdGVyczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9FTkFCTEVfSU5TRUNVUkVfQVVUSF9BREFQVEVSUycsXG4gICAgaGVscDpcbiAgICAgICdPcHRpb25hbC4gRW5hYmxlcyBpbnNlY3VyZSBhdXRoZW50aWNhdGlvbiBhZGFwdGVycy4gSW5zZWN1cmUgYXV0aCBhZGFwdGVycyBhcmUgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkIGluIGEgZnV0dXJlIHZlcnNpb24uIERlZmF1bHRzIHRvIGBmYWxzZWAuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgZW5hYmxlU2FuaXRpemVkRXJyb3JSZXNwb25zZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9FTkFCTEVfU0FOSVRJWkVEX0VSUk9SX1JFU1BPTlNFJyxcbiAgICBoZWxwOlxuICAgICAgJ0lmIHNldCB0byBgdHJ1ZWAsIGVycm9yIGRldGFpbHMgYXJlIHJlbW92ZWQgZnJvbSBlcnJvciBtZXNzYWdlcyBpbiByZXNwb25zZXMgdG8gY2xpZW50IHJlcXVlc3RzLCBhbmQgaW5zdGVhZCBhIGdlbmVyaWMgZXJyb3IgbWVzc2FnZSBpcyBzZW50LiBEZWZhdWx0IGlzIGB0cnVlYC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIGVuY3J5cHRpb25LZXk6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU5DUllQVElPTl9LRVknLFxuICAgIGhlbHA6ICdLZXkgZm9yIGVuY3J5cHRpbmcgeW91ciBmaWxlcycsXG4gIH0sXG4gIGVuZm9yY2VQcml2YXRlVXNlcnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRU5GT1JDRV9QUklWQVRFX1VTRVJTJyxcbiAgICBoZWxwOiAnU2V0IHRvIHRydWUgaWYgbmV3IHVzZXJzIHNob3VsZCBiZSBjcmVhdGVkIHdpdGhvdXQgcHVibGljIHJlYWQgYW5kIHdyaXRlIGFjY2Vzcy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIGV4cGlyZUluYWN0aXZlU2Vzc2lvbnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRVhQSVJFX0lOQUNUSVZFX1NFU1NJT05TJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldHMgd2hldGhlciB3ZSBzaG91bGQgZXhwaXJlIHRoZSBpbmFjdGl2ZSBzZXNzaW9ucywgZGVmYXVsdHMgdG8gdHJ1ZS4gSWYgZmFsc2UsIGFsbCBuZXcgc2Vzc2lvbnMgYXJlIGNyZWF0ZWQgd2l0aCBubyBleHBpcmF0aW9uIGRhdGUuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICB9LFxuICBleHRlbmRTZXNzaW9uT25Vc2U6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRVhURU5EX1NFU1NJT05fT05fVVNFJyxcbiAgICBoZWxwOlxuICAgICAgXCJXaGV0aGVyIFBhcnNlIFNlcnZlciBzaG91bGQgYXV0b21hdGljYWxseSBleHRlbmQgYSB2YWxpZCBzZXNzaW9uIGJ5IHRoZSBzZXNzaW9uTGVuZ3RoLiBJbiBvcmRlciB0byByZWR1Y2UgdGhlIG51bWJlciBvZiBzZXNzaW9uIHVwZGF0ZXMgaW4gdGhlIGRhdGFiYXNlLCBhIHNlc3Npb24gd2lsbCBvbmx5IGJlIGV4dGVuZGVkIHdoZW4gYSByZXF1ZXN0IGlzIHJlY2VpdmVkIGFmdGVyIGF0IGxlYXN0IGhhbGYgb2YgdGhlIGN1cnJlbnQgc2Vzc2lvbidzIGxpZmV0aW1lIGhhcyBwYXNzZWQuXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGZpbGVLZXk6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRklMRV9LRVknLFxuICAgIGhlbHA6ICdLZXkgZm9yIHlvdXIgZmlsZXMnLFxuICB9LFxuICBmaWxlc0FkYXB0ZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRklMRVNfQURBUFRFUicsXG4gICAgaGVscDogJ0FkYXB0ZXIgbW9kdWxlIGZvciB0aGUgZmlsZXMgc3ViLXN5c3RlbScsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm1vZHVsZU9yT2JqZWN0UGFyc2VyLFxuICB9LFxuICBmaWxlVXBsb2FkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0ZJTEVfVVBMT0FEX09QVElPTlMnLFxuICAgIGhlbHA6ICdPcHRpb25zIGZvciBmaWxlIHVwbG9hZHMnLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ0ZpbGVVcGxvYWRPcHRpb25zJyxcbiAgICBkZWZhdWx0OiB7fSxcbiAgfSxcbiAgZ3JhcGhRTFBhdGg6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfR1JBUEhRTF9QQVRIJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBtb3VudCBwYXRoIGZvciB0aGUgR3JhcGhRTCBlbmRwb2ludDxicj48YnI+XFx1MjZBMFxcdUZFMEYgRmlsZSB1cGxvYWQgaW5zaWRlIHRoZSBHcmFwaFFMIG11dGF0aW9uIHN5c3RlbSByZXF1aXJlcyBQYXJzZSBTZXJ2ZXIgdG8gYmUgYWJsZSB0byBjYWxsIGl0c2VsZiBieSBtYWtpbmcgcmVxdWVzdHMgdG8gdGhlIFVSTCBzZXQgaW4gYHNlcnZlclVSTGAuPGJyPjxicj5EZWZhdWx0cyBpcyBgL2dyYXBocWxgLicsXG4gICAgZGVmYXVsdDogJy9ncmFwaHFsJyxcbiAgfSxcbiAgZ3JhcGhRTFB1YmxpY0ludHJvc3BlY3Rpb246IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfR1JBUEhRTF9QVUJMSUNfSU5UUk9TUEVDVElPTicsXG4gICAgaGVscDogJ0VuYWJsZSBwdWJsaWMgaW50cm9zcGVjdGlvbiBmb3IgdGhlIEdyYXBoUUwgZW5kcG9pbnQsIGRlZmF1bHRzIHRvIGZhbHNlJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgZ3JhcGhRTFNjaGVtYToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9HUkFQSF9RTFNDSEVNQScsXG4gICAgaGVscDogJ0Z1bGwgcGF0aCB0byB5b3VyIEdyYXBoUUwgY3VzdG9tIHNjaGVtYS5ncmFwaHFsIGZpbGUnLFxuICB9LFxuICBob3N0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0hPU1QnLFxuICAgIGhlbHA6ICdUaGUgaG9zdCB0byBzZXJ2ZSBQYXJzZVNlcnZlciBvbiwgZGVmYXVsdHMgdG8gMC4wLjAuMCcsXG4gICAgZGVmYXVsdDogJzAuMC4wLjAnLFxuICB9LFxuICBpZGVtcG90ZW5jeU9wdGlvbnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRVhQRVJJTUVOVEFMX0lERU1QT1RFTkNZX09QVElPTlMnLFxuICAgIGhlbHA6XG4gICAgICAnT3B0aW9ucyBmb3IgcmVxdWVzdCBpZGVtcG90ZW5jeSB0byBkZWR1cGxpY2F0ZSBpZGVudGljYWwgcmVxdWVzdHMgdGhhdCBtYXkgYmUgY2F1c2VkIGJ5IG5ldHdvcmsgaXNzdWVzLiBDYXV0aW9uLCB0aGlzIGlzIGFuIGV4cGVyaW1lbnRhbCBmZWF0dXJlIHRoYXQgbWF5IG5vdCBiZSBhcHByb3ByaWF0ZSBmb3IgcHJvZHVjdGlvbi4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ0lkZW1wb3RlbmN5T3B0aW9ucycsXG4gICAgZGVmYXVsdDoge30sXG4gIH0sXG4gIGphdmFzY3JpcHRLZXk6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfSkFWQVNDUklQVF9LRVknLFxuICAgIGhlbHA6ICdLZXkgZm9yIHRoZSBKYXZhc2NyaXB0IFNESycsXG4gIH0sXG4gIGpzb25Mb2dzOiB7XG4gICAgZW52OiAnSlNPTl9MT0dTJyxcbiAgICBoZWxwOiAnTG9nIGFzIHN0cnVjdHVyZWQgSlNPTiBvYmplY3RzJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgbGl2ZVF1ZXJ5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xJVkVfUVVFUlknLFxuICAgIGhlbHA6IFwicGFyc2Utc2VydmVyJ3MgTGl2ZVF1ZXJ5IGNvbmZpZ3VyYXRpb24gb2JqZWN0XCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnTGl2ZVF1ZXJ5T3B0aW9ucycsXG4gIH0sXG4gIGxpdmVRdWVyeVNlcnZlck9wdGlvbnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTElWRV9RVUVSWV9TRVJWRVJfT1BUSU9OUycsXG4gICAgaGVscDogJ0xpdmUgcXVlcnkgc2VydmVyIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyAod2lsbCBzdGFydCB0aGUgbGl2ZVF1ZXJ5IHNlcnZlciknLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ0xpdmVRdWVyeVNlcnZlck9wdGlvbnMnLFxuICB9LFxuICBsb2dnZXJBZGFwdGVyOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xPR0dFUl9BREFQVEVSJyxcbiAgICBoZWxwOiAnQWRhcHRlciBtb2R1bGUgZm9yIHRoZSBsb2dnaW5nIHN1Yi1zeXN0ZW0nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5tb2R1bGVPck9iamVjdFBhcnNlcixcbiAgfSxcbiAgbG9nTGV2ZWw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMJyxcbiAgICBoZWxwOiAnU2V0cyB0aGUgbGV2ZWwgZm9yIGxvZ3MnLFxuICB9LFxuICBsb2dMZXZlbHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMUycsXG4gICAgaGVscDogJyhPcHRpb25hbCkgT3ZlcnJpZGVzIHRoZSBsb2cgbGV2ZWxzIHVzZWQgaW50ZXJuYWxseSBieSBQYXJzZSBTZXJ2ZXIgdG8gbG9nIGV2ZW50cy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ0xvZ0xldmVscycsXG4gICAgZGVmYXVsdDoge30sXG4gIH0sXG4gIGxvZ3NGb2xkZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HU19GT0xERVInLFxuICAgIGhlbHA6IFwiRm9sZGVyIGZvciB0aGUgbG9ncyAoZGVmYXVsdHMgdG8gJy4vbG9ncycpOyBzZXQgdG8gbnVsbCB0byBkaXNhYmxlIGZpbGUgYmFzZWQgbG9nZ2luZ1wiLFxuICAgIGRlZmF1bHQ6ICcuL2xvZ3MnLFxuICB9LFxuICBtYWludGVuYW5jZUtleToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9NQUlOVEVOQU5DRV9LRVknLFxuICAgIGhlbHA6XG4gICAgICAnKE9wdGlvbmFsKSBUaGUgbWFpbnRlbmFuY2Uga2V5IGlzIHVzZWQgZm9yIG1vZGlmeWluZyBpbnRlcm5hbCBhbmQgcmVhZC1vbmx5IGZpZWxkcyBvZiBQYXJzZSBTZXJ2ZXIuPGJyPjxicj5cXHUyNkEwXFx1RkUwRiBUaGlzIGtleSBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBhcyBwYXJ0IG9mIGEgcmVndWxhciBvcGVyYXRpb24gb2YgUGFyc2UgU2VydmVyLiBUaGlzIGtleSBpcyBpbnRlbmRlZCB0byBjb25kdWN0IG91dC1vZi1iYW5kIGNoYW5nZXMgc3VjaCBhcyBvbmUtdGltZSBtaWdyYXRpb25zIG9yIGRhdGEgY29ycmVjdGlvbiB0YXNrcy4gSW50ZXJuYWwgZmllbGRzIGFyZSBub3Qgb2ZmaWNpYWxseSBkb2N1bWVudGVkIGFuZCBtYXkgY2hhbmdlIGF0IGFueSB0aW1lIHdpdGhvdXQgcHVibGljYXRpb24gaW4gcmVsZWFzZSBjaGFuZ2Vsb2dzLiBXZSBzdHJvbmdseSBhZHZpY2Ugbm90IHRvIHJlbHkgb24gaW50ZXJuYWwgZmllbGRzIGFzIHBhcnQgb2YgeW91ciByZWd1bGFyIG9wZXJhdGlvbiBhbmQgdG8gaW52ZXN0aWdhdGUgdGhlIGltcGxpY2F0aW9ucyBvZiBhbnkgcGxhbm5lZCBjaGFuZ2VzICpkaXJlY3RseSBpbiB0aGUgc291cmNlIGNvZGUqIG9mIHlvdXIgY3VycmVudCB2ZXJzaW9uIG9mIFBhcnNlIFNlcnZlci4nLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxuICBtYWludGVuYW5jZUtleUlwczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9NQUlOVEVOQU5DRV9LRVlfSVBTJyxcbiAgICBoZWxwOlxuICAgICAgXCIoT3B0aW9uYWwpIFJlc3RyaWN0cyB0aGUgdXNlIG9mIG1haW50ZW5hbmNlIGtleSBwZXJtaXNzaW9ucyB0byBhIGxpc3Qgb2YgSVAgYWRkcmVzc2VzIG9yIHJhbmdlcy48YnI+PGJyPlRoaXMgb3B0aW9uIGFjY2VwdHMgYSBsaXN0IG9mIHNpbmdsZSBJUCBhZGRyZXNzZXMsIGZvciBleGFtcGxlIGBbJzEwLjAuMC4xJywgJzEwLjAuMC4yJ11gLiBZb3UgY2FuIGFsc28gdXNlIENJRFIgbm90YXRpb24gdG8gc3BlY2lmeSBhbiBJUCBhZGRyZXNzIHJhbmdlLCBmb3IgZXhhbXBsZSBgWycxMC4wLjEuMC8yNCddYC48YnI+PGJyPjxiPlNwZWNpYWwgc2NlbmFyaW9zOjwvYj48YnI+LSBTZXR0aW5nIGFuIGVtcHR5IGFycmF5IGBbXWAgbWVhbnMgdGhhdCB0aGUgbWFpbnRlbmFuY2Uga2V5IGNhbm5vdCBiZSB1c2VkIGV2ZW4gaW4gUGFyc2UgU2VydmVyIENsb3VkIENvZGUuIFRoaXMgdmFsdWUgY2Fubm90IGJlIHNldCB2aWEgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgYXMgdGhlcmUgaXMgbm8gd2F5IHRvIHBhc3MgYW4gZW1wdHkgYXJyYXkgdG8gUGFyc2UgU2VydmVyIHZpYSBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZS48YnI+LSBTZXR0aW5nIGBbJzAuMC4wLjAvMCcsICc6OjAnXWAgbWVhbnMgdG8gYWxsb3cgYW55IElQdjQgYW5kIElQdjYgYWRkcmVzcyB0byB1c2UgdGhlIG1haW50ZW5hbmNlIGtleSBhbmQgZWZmZWN0aXZlbHkgZGlzYWJsZXMgdGhlIElQIGZpbHRlci48YnI+PGJyPjxiPkNvbnNpZGVyYXRpb25zOjwvYj48YnI+LSBJUHY0IGFuZCBJUHY2IGFkZHJlc3NlcyBhcmUgbm90IGNvbXBhcmVkIGFnYWluc3QgZWFjaCBvdGhlci4gRWFjaCBJUCB2ZXJzaW9uIChJUHY0IGFuZCBJUHY2KSBuZWVkcyB0byBiZSBjb25zaWRlcmVkIHNlcGFyYXRlbHkuIEZvciBleGFtcGxlLCBgWycwLjAuMC4wLzAnXWAgYWxsb3dzIGFueSBJUHY0IGFkZHJlc3MgYW5kIGJsb2NrcyBldmVyeSBJUHY2IGFkZHJlc3MuIENvbnZlcnNlbHksIGBbJzo6MCddYCBhbGxvd3MgYW55IElQdjYgYWRkcmVzcyBhbmQgYmxvY2tzIGV2ZXJ5IElQdjQgYWRkcmVzcy48YnI+LSBLZWVwIGluIG1pbmQgdGhhdCB0aGUgSVAgdmVyc2lvbiBpbiB1c2UgZGVwZW5kcyBvbiB0aGUgbmV0d29yayBzdGFjayBvZiB0aGUgZW52aXJvbm1lbnQgaW4gd2hpY2ggUGFyc2UgU2VydmVyIHJ1bnMuIEEgbG9jYWwgZW52aXJvbm1lbnQgbWF5IHVzZSBhIGRpZmZlcmVudCBJUCB2ZXJzaW9uIHRoYW4gYSByZW1vdGUgZW52aXJvbm1lbnQuIEZvciBleGFtcGxlLCBpdCdzIHBvc3NpYmxlIHRoYXQgbG9jYWxseSB0aGUgdmFsdWUgYFsnMC4wLjAuMC8wJ11gIGFsbG93cyB0aGUgcmVxdWVzdCBJUCBiZWNhdXNlIHRoZSBlbnZpcm9ubWVudCBpcyB1c2luZyBJUHY0LCBidXQgd2hlbiBQYXJzZSBTZXJ2ZXIgaXMgZGVwbG95ZWQgcmVtb3RlbHkgdGhlIHJlcXVlc3QgSVAgaXMgYmxvY2tlZCBiZWNhdXNlIHRoZSByZW1vdGUgZW52aXJvbm1lbnQgaXMgdXNpbmcgSVB2Ni48YnI+LSBXaGVuIHNldHRpbmcgdGhlIG9wdGlvbiB2aWEgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgdGhlIG5vdGF0aW9uIGlzIGEgY29tbWEtc2VwYXJhdGVkIHN0cmluZywgZm9yIGV4YW1wbGUgYFxcXCIwLjAuMC4wLzAsOjowXFxcImAuPGJyPi0gSVB2NiB6b25lIGluZGljZXMgKGAlYCBzdWZmaXgpIGFyZSBub3Qgc3VwcG9ydGVkLCBmb3IgZXhhbXBsZSBgZmU4MDo6MSVldGgwYCwgYGZlODA6OjElMWAgb3IgYDo6MSVsb2AuPGJyPjxicj5EZWZhdWx0cyB0byBgWycxMjcuMC4wLjEnLCAnOjoxJ11gIHdoaWNoIG1lYW5zIHRoYXQgb25seSBgbG9jYWxob3N0YCwgdGhlIHNlcnZlciBpbnN0YW5jZSBvbiB3aGljaCBQYXJzZSBTZXJ2ZXIgcnVucywgaXMgYWxsb3dlZCB0byB1c2UgdGhlIG1haW50ZW5hbmNlIGtleS5cIixcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gICAgZGVmYXVsdDogWycxMjcuMC4wLjEnLCAnOjoxJ10sXG4gIH0sXG4gIG1hc3RlcktleToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9NQVNURVJfS0VZJyxcbiAgICBoZWxwOiAnWW91ciBQYXJzZSBNYXN0ZXIgS2V5JyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgbWFzdGVyS2V5SXBzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX01BU1RFUl9LRVlfSVBTJyxcbiAgICBoZWxwOlxuICAgICAgXCIoT3B0aW9uYWwpIFJlc3RyaWN0cyB0aGUgdXNlIG9mIG1hc3RlciBrZXkgcGVybWlzc2lvbnMgdG8gYSBsaXN0IG9mIElQIGFkZHJlc3NlcyBvciByYW5nZXMuPGJyPjxicj5UaGlzIG9wdGlvbiBhY2NlcHRzIGEgbGlzdCBvZiBzaW5nbGUgSVAgYWRkcmVzc2VzLCBmb3IgZXhhbXBsZSBgWycxMC4wLjAuMScsICcxMC4wLjAuMiddYC4gWW91IGNhbiBhbHNvIHVzZSBDSURSIG5vdGF0aW9uIHRvIHNwZWNpZnkgYW4gSVAgYWRkcmVzcyByYW5nZSwgZm9yIGV4YW1wbGUgYFsnMTAuMC4xLjAvMjQnXWAuPGJyPjxicj48Yj5TcGVjaWFsIHNjZW5hcmlvczo8L2I+PGJyPi0gU2V0dGluZyBhbiBlbXB0eSBhcnJheSBgW11gIG1lYW5zIHRoYXQgdGhlIG1hc3RlciBrZXkgY2Fubm90IGJlIHVzZWQgZXZlbiBpbiBQYXJzZSBTZXJ2ZXIgQ2xvdWQgQ29kZS4gVGhpcyB2YWx1ZSBjYW5ub3QgYmUgc2V0IHZpYSBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZSBhcyB0aGVyZSBpcyBubyB3YXkgdG8gcGFzcyBhbiBlbXB0eSBhcnJheSB0byBQYXJzZSBTZXJ2ZXIgdmlhIGFuIGVudmlyb25tZW50IHZhcmlhYmxlLjxicj4tIFNldHRpbmcgYFsnMC4wLjAuMC8wJywgJzo6MCddYCBtZWFucyB0byBhbGxvdyBhbnkgSVB2NCBhbmQgSVB2NiBhZGRyZXNzIHRvIHVzZSB0aGUgbWFzdGVyIGtleSBhbmQgZWZmZWN0aXZlbHkgZGlzYWJsZXMgdGhlIElQIGZpbHRlci48YnI+PGJyPjxiPkNvbnNpZGVyYXRpb25zOjwvYj48YnI+LSBJUHY0IGFuZCBJUHY2IGFkZHJlc3NlcyBhcmUgbm90IGNvbXBhcmVkIGFnYWluc3QgZWFjaCBvdGhlci4gRWFjaCBJUCB2ZXJzaW9uIChJUHY0IGFuZCBJUHY2KSBuZWVkcyB0byBiZSBjb25zaWRlcmVkIHNlcGFyYXRlbHkuIEZvciBleGFtcGxlLCBgWycwLjAuMC4wLzAnXWAgYWxsb3dzIGFueSBJUHY0IGFkZHJlc3MgYW5kIGJsb2NrcyBldmVyeSBJUHY2IGFkZHJlc3MuIENvbnZlcnNlbHksIGBbJzo6MCddYCBhbGxvd3MgYW55IElQdjYgYWRkcmVzcyBhbmQgYmxvY2tzIGV2ZXJ5IElQdjQgYWRkcmVzcy48YnI+LSBLZWVwIGluIG1pbmQgdGhhdCB0aGUgSVAgdmVyc2lvbiBpbiB1c2UgZGVwZW5kcyBvbiB0aGUgbmV0d29yayBzdGFjayBvZiB0aGUgZW52aXJvbm1lbnQgaW4gd2hpY2ggUGFyc2UgU2VydmVyIHJ1bnMuIEEgbG9jYWwgZW52aXJvbm1lbnQgbWF5IHVzZSBhIGRpZmZlcmVudCBJUCB2ZXJzaW9uIHRoYW4gYSByZW1vdGUgZW52aXJvbm1lbnQuIEZvciBleGFtcGxlLCBpdCdzIHBvc3NpYmxlIHRoYXQgbG9jYWxseSB0aGUgdmFsdWUgYFsnMC4wLjAuMC8wJ11gIGFsbG93cyB0aGUgcmVxdWVzdCBJUCBiZWNhdXNlIHRoZSBlbnZpcm9ubWVudCBpcyB1c2luZyBJUHY0LCBidXQgd2hlbiBQYXJzZSBTZXJ2ZXIgaXMgZGVwbG95ZWQgcmVtb3RlbHkgdGhlIHJlcXVlc3QgSVAgaXMgYmxvY2tlZCBiZWNhdXNlIHRoZSByZW1vdGUgZW52aXJvbm1lbnQgaXMgdXNpbmcgSVB2Ni48YnI+LSBXaGVuIHNldHRpbmcgdGhlIG9wdGlvbiB2aWEgYW4gZW52aXJvbm1lbnQgdmFyaWFibGUgdGhlIG5vdGF0aW9uIGlzIGEgY29tbWEtc2VwYXJhdGVkIHN0cmluZywgZm9yIGV4YW1wbGUgYFxcXCIwLjAuMC4wLzAsOjowXFxcImAuPGJyPi0gSVB2NiB6b25lIGluZGljZXMgKGAlYCBzdWZmaXgpIGFyZSBub3Qgc3VwcG9ydGVkLCBmb3IgZXhhbXBsZSBgZmU4MDo6MSVldGgwYCwgYGZlODA6OjElMWAgb3IgYDo6MSVsb2AuPGJyPjxicj5EZWZhdWx0cyB0byBgWycxMjcuMC4wLjEnLCAnOjoxJ11gIHdoaWNoIG1lYW5zIHRoYXQgb25seSBgbG9jYWxob3N0YCwgdGhlIHNlcnZlciBpbnN0YW5jZSBvbiB3aGljaCBQYXJzZSBTZXJ2ZXIgcnVucywgaXMgYWxsb3dlZCB0byB1c2UgdGhlIG1hc3RlciBrZXkuXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmFycmF5UGFyc2VyLFxuICAgIGRlZmF1bHQ6IFsnMTI3LjAuMC4xJywgJzo6MSddLFxuICB9LFxuICBtYXN0ZXJLZXlUdGw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTUFTVEVSX0tFWV9UVEwnLFxuICAgIGhlbHA6XG4gICAgICAnKE9wdGlvbmFsKSBUaGUgZHVyYXRpb24gaW4gc2Vjb25kcyBmb3Igd2hpY2ggdGhlIGN1cnJlbnQgYG1hc3RlcktleWAgaXMgYmVpbmcgdXNlZCBiZWZvcmUgaXQgaXMgcmVxdWVzdGVkIGFnYWluIGlmIGBtYXN0ZXJLZXlgIGlzIHNldCB0byBhIGZ1bmN0aW9uLiBJZiBgbWFzdGVyS2V5YCBpcyBub3Qgc2V0IHRvIGEgZnVuY3Rpb24sIHRoaXMgb3B0aW9uIGhhcyBubyBlZmZlY3QuIERlZmF1bHQgaXMgYDBgLCB3aGljaCBtZWFucyB0aGUgbWFzdGVyIGtleSBpcyByZXF1ZXN0ZWQgYnkgaW52b2tpbmcgdGhlICBgbWFzdGVyS2V5YCBmdW5jdGlvbiBldmVyeSB0aW1lIHRoZSBtYXN0ZXIga2V5IGlzIHVzZWQgaW50ZXJuYWxseSBieSBQYXJzZSBTZXJ2ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdtYXN0ZXJLZXlUdGwnKSxcbiAgfSxcbiAgbWF4TGltaXQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTUFYX0xJTUlUJyxcbiAgICBoZWxwOiAnTWF4IHZhbHVlIGZvciBsaW1pdCBvcHRpb24gb24gcXVlcmllcywgZGVmYXVsdHMgdG8gdW5saW1pdGVkJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdtYXhMaW1pdCcpLFxuICB9LFxuICBtYXhMb2dGaWxlczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9NQVhfTE9HX0ZJTEVTJyxcbiAgICBoZWxwOlxuICAgICAgXCJNYXhpbXVtIG51bWJlciBvZiBsb2dzIHRvIGtlZXAuIElmIG5vdCBzZXQsIG5vIGxvZ3Mgd2lsbCBiZSByZW1vdmVkLiBUaGlzIGNhbiBiZSBhIG51bWJlciBvZiBmaWxlcyBvciBudW1iZXIgb2YgZGF5cy4gSWYgdXNpbmcgZGF5cywgYWRkICdkJyBhcyB0aGUgc3VmZml4LiAoZGVmYXVsdDogbnVsbClcIixcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyT3JTdHJpbmdQYXJzZXIoJ21heExvZ0ZpbGVzJyksXG4gIH0sXG4gIG1heFVwbG9hZFNpemU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTUFYX1VQTE9BRF9TSVpFJyxcbiAgICBoZWxwOiAnTWF4IGZpbGUgc2l6ZSBmb3IgdXBsb2FkcywgZGVmYXVsdHMgdG8gMjBtYicsXG4gICAgZGVmYXVsdDogJzIwbWInLFxuICB9LFxuICBtaWRkbGV3YXJlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX01JRERMRVdBUkUnLFxuICAgIGhlbHA6ICdtaWRkbGV3YXJlIGZvciBleHByZXNzIHNlcnZlciwgY2FuIGJlIHN0cmluZyBvciBmdW5jdGlvbicsXG4gIH0sXG4gIG1vdW50R3JhcGhRTDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9NT1VOVF9HUkFQSFFMJyxcbiAgICBoZWxwOiAnTW91bnRzIHRoZSBHcmFwaFFMIGVuZHBvaW50JyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgbW91bnRQYXRoOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX01PVU5UX1BBVEgnLFxuICAgIGhlbHA6ICdNb3VudCBwYXRoIGZvciB0aGUgc2VydmVyLCBkZWZhdWx0cyB0byAvcGFyc2UnLFxuICAgIGRlZmF1bHQ6ICcvcGFyc2UnLFxuICB9LFxuICBtb3VudFBsYXlncm91bmQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTU9VTlRfUExBWUdST1VORCcsXG4gICAgaGVscDogJ01vdW50cyB0aGUgR3JhcGhRTCBQbGF5Z3JvdW5kIC0gbmV2ZXIgdXNlIHRoaXMgb3B0aW9uIGluIHByb2R1Y3Rpb24nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBvYmplY3RJZFNpemU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfT0JKRUNUX0lEX1NJWkUnLFxuICAgIGhlbHA6IFwiU2V0cyB0aGUgbnVtYmVyIG9mIGNoYXJhY3RlcnMgaW4gZ2VuZXJhdGVkIG9iamVjdCBpZCdzLCBkZWZhdWx0IDEwXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignb2JqZWN0SWRTaXplJyksXG4gICAgZGVmYXVsdDogMTAsXG4gIH0sXG4gIHBhZ2VzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBR0VTJyxcbiAgICBoZWxwOiAnVGhlIG9wdGlvbnMgZm9yIHBhZ2VzIHN1Y2ggYXMgcGFzc3dvcmQgcmVzZXQgYW5kIGVtYWlsIHZlcmlmaWNhdGlvbi4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgdHlwZTogJ1BhZ2VzT3B0aW9ucycsXG4gICAgZGVmYXVsdDoge30sXG4gIH0sXG4gIHBhc3N3b3JkUG9saWN5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBU1NXT1JEX1BPTElDWScsXG4gICAgaGVscDogJ1RoZSBwYXNzd29yZCBwb2xpY3kgZm9yIGVuZm9yY2luZyBwYXNzd29yZCByZWxhdGVkIHJ1bGVzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnUGFzc3dvcmRQb2xpY3lPcHRpb25zJyxcbiAgfSxcbiAgcGxheWdyb3VuZFBhdGg6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUExBWUdST1VORF9QQVRIJyxcbiAgICBoZWxwOiAnTW91bnQgcGF0aCBmb3IgdGhlIEdyYXBoUUwgUGxheWdyb3VuZCwgZGVmYXVsdHMgdG8gL3BsYXlncm91bmQnLFxuICAgIGRlZmF1bHQ6ICcvcGxheWdyb3VuZCcsXG4gIH0sXG4gIHBvcnQ6IHtcbiAgICBlbnY6ICdQT1JUJyxcbiAgICBoZWxwOiAnVGhlIHBvcnQgdG8gcnVuIHRoZSBQYXJzZVNlcnZlciwgZGVmYXVsdHMgdG8gMTMzNy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ3BvcnQnKSxcbiAgICBkZWZhdWx0OiAxMzM3LFxuICB9LFxuICBwcmVzZXJ2ZUZpbGVOYW1lOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BSRVNFUlZFX0ZJTEVfTkFNRScsXG4gICAgaGVscDogJ0VuYWJsZSAob3IgZGlzYWJsZSkgdGhlIGFkZGl0aW9uIG9mIGEgdW5pcXVlIGhhc2ggdG8gdGhlIGZpbGUgbmFtZXMnLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBwcmV2ZW50TG9naW5XaXRoVW52ZXJpZmllZEVtYWlsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BSRVZFTlRfTE9HSU5fV0lUSF9VTlZFUklGSUVEX0VNQUlMJyxcbiAgICBoZWxwOlxuICAgICAgXCJTZXQgdG8gYHRydWVgIHRvIHByZXZlbnQgYSB1c2VyIGZyb20gbG9nZ2luZyBpbiBpZiB0aGUgZW1haWwgaGFzIG5vdCB5ZXQgYmVlbiB2ZXJpZmllZCBhbmQgZW1haWwgdmVyaWZpY2F0aW9uIGlzIHJlcXVpcmVkLiBTdXBwb3J0cyBhIGZ1bmN0aW9uIHdpdGggYSByZXR1cm4gdmFsdWUgb2YgYHRydWVgIG9yIGBmYWxzZWAgZm9yIGNvbmRpdGlvbmFsIHByZXZlbnRpb24uIFRoZSBmdW5jdGlvbiByZWNlaXZlcyBhIHJlcXVlc3Qgb2JqZWN0IHRoYXQgaW5jbHVkZXMgYGNyZWF0ZWRXaXRoYCB0byBpbmRpY2F0ZSB3aGV0aGVyIHRoZSBpbnZvY2F0aW9uIGlzIGZvciBgc2lnbnVwYCBvciBgbG9naW5gIGFuZCB0aGUgdXNlZCBhdXRoIHByb3ZpZGVyLjxicj48YnI+VGhlIGBjcmVhdGVkV2l0aGAgdmFsdWVzIHBlciBzY2VuYXJpbzo8dWw+PGxpPlBhc3N3b3JkIHNpZ251cDogYHsgYWN0aW9uOiAnc2lnbnVwJywgYXV0aFByb3ZpZGVyOiAncGFzc3dvcmQnIH1gPC9saT48bGk+QXV0aCBwcm92aWRlciBzaWdudXA6IGB7IGFjdGlvbjogJ3NpZ251cCcsIGF1dGhQcm92aWRlcjogJzxwcm92aWRlcj4nIH1gPC9saT48bGk+UGFzc3dvcmQgbG9naW46IGB7IGFjdGlvbjogJ2xvZ2luJywgYXV0aFByb3ZpZGVyOiAncGFzc3dvcmQnIH1gPC9saT48bGk+QXV0aCBwcm92aWRlciBsb2dpbjogZnVuY3Rpb24gbm90IGludm9rZWQ7IGF1dGggcHJvdmlkZXIgbG9naW4gYnlwYXNzZXMgZW1haWwgdmVyaWZpY2F0aW9uPC9saT48L3VsPkRlZmF1bHQgaXMgYGZhbHNlYC48YnI+UmVxdWlyZXMgb3B0aW9uIGB2ZXJpZnlVc2VyRW1haWxzOiB0cnVlYC5cIixcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhbk9yRnVuY3Rpb25QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIHByZXZlbnRTaWdudXBXaXRoVW52ZXJpZmllZEVtYWlsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BSRVZFTlRfU0lHTlVQX1dJVEhfVU5WRVJJRklFRF9FTUFJTCcsXG4gICAgaGVscDpcbiAgICAgIFwiSWYgc2V0IHRvIGB0cnVlYCBpdCBwcmV2ZW50cyBhIHVzZXIgZnJvbSBzaWduaW5nIHVwIGlmIHRoZSBlbWFpbCBoYXMgbm90IHlldCBiZWVuIHZlcmlmaWVkIGFuZCBlbWFpbCB2ZXJpZmljYXRpb24gaXMgcmVxdWlyZWQuIEluIHRoYXQgY2FzZSB0aGUgc2VydmVyIHJlc3BvbmRzIHRvIHRoZSBzaWduLXVwIHdpdGggSFRUUCBzdGF0dXMgNDAwIGFuZCBhIFBhcnNlIEVycm9yIDIwNSBgRU1BSUxfTk9UX0ZPVU5EYC4gSWYgc2V0IHRvIGBmYWxzZWAgdGhlIHNlcnZlciByZXNwb25kcyB3aXRoIEhUVFAgc3RhdHVzIDIwMCwgYW5kIGNsaWVudCBTREtzIHJldHVybiBhbiB1bmF1dGhlbnRpY2F0ZWQgUGFyc2UgVXNlciB3aXRob3V0IHNlc3Npb24gdG9rZW4uIEluIHRoYXQgY2FzZSBzdWJzZXF1ZW50IHJlcXVlc3RzIGZhaWwgdW50aWwgdGhlIHVzZXIncyBlbWFpbCBhZGRyZXNzIGlzIHZlcmlmaWVkLjxicj48YnI+RGVmYXVsdCBpcyBgZmFsc2VgLjxicj5SZXF1aXJlcyBvcHRpb24gYHZlcmlmeVVzZXJFbWFpbHM6IHRydWVgLlwiLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBwcm90ZWN0ZWRGaWVsZHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUFJPVEVDVEVEX0ZJRUxEUycsXG4gICAgaGVscDogJ1Byb3RlY3RlZCBmaWVsZHMgdGhhdCBzaG91bGQgYmUgdHJlYXRlZCB3aXRoIGV4dHJhIHNlY3VyaXR5IHdoZW4gZmV0Y2hpbmcgZGV0YWlscy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgZGVmYXVsdDoge1xuICAgICAgX1VzZXI6IHtcbiAgICAgICAgJyonOiBbJ2VtYWlsJ10sXG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG4gIHB1YmxpY1NlcnZlclVSTDoge1xuICAgIGVudjogJ1BBUlNFX1BVQkxJQ19TRVJWRVJfVVJMJyxcbiAgICBoZWxwOlxuICAgICAgJ09wdGlvbmFsLiBUaGUgcHVibGljIFVSTCB0byBQYXJzZSBTZXJ2ZXIuIFRoaXMgVVJMIHdpbGwgYmUgdXNlZCB0byByZWFjaCBQYXJzZSBTZXJ2ZXIgcHVibGljbHkgZm9yIGZlYXR1cmVzIGxpa2UgcGFzc3dvcmQgcmVzZXQgYW5kIGVtYWlsIHZlcmlmaWNhdGlvbiBsaW5rcy4gVGhlIG9wdGlvbiBjYW4gYmUgc2V0IHRvIGEgc3RyaW5nIG9yIGEgZnVuY3Rpb24gdGhhdCBjYW4gYmUgYXN5bmNocm9ub3VzbHkgcmVzb2x2ZWQuIFRoZSByZXR1cm5lZCBVUkwgc3RyaW5nIG11c3Qgc3RhcnQgd2l0aCBgaHR0cDovL2Agb3IgYGh0dHBzOi8vYC4nLFxuICB9LFxuICBwdXNoOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BVU0gnLFxuICAgIGhlbHA6XG4gICAgICAnQ29uZmlndXJhdGlvbiBmb3IgcHVzaCwgYXMgc3RyaW5naWZpZWQgSlNPTi4gU2VlIGh0dHA6Ly9kb2NzLnBhcnNlcGxhdGZvcm0ub3JnL3BhcnNlLXNlcnZlci9ndWlkZS8jcHVzaC1ub3RpZmljYXRpb25zJyxcbiAgICBhY3Rpb246IHBhcnNlcnMub2JqZWN0UGFyc2VyLFxuICB9LFxuICByYXRlTGltaXQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUkFURV9MSU1JVCcsXG4gICAgaGVscDpcbiAgICAgIFwiT3B0aW9ucyB0byBsaW1pdCByZXBlYXRlZCByZXF1ZXN0cyB0byBQYXJzZSBTZXJ2ZXIgQVBJcy4gVGhpcyBjYW4gYmUgdXNlZCB0byBwcm90ZWN0IHNlbnNpdGl2ZSBlbmRwb2ludHMgc3VjaCBhcyBgL3JlcXVlc3RQYXNzd29yZFJlc2V0YCBmcm9tIGJydXRlLWZvcmNlIGF0dGFja3Mgb3IgUGFyc2UgU2VydmVyIGFzIGEgd2hvbGUgZnJvbSBkZW5pYWwtb2Ytc2VydmljZSAoRG9TKSBhdHRhY2tzLjxicj48YnI+XFx1MjEzOVxcdUZFMEYgTWluZCB0aGUgZm9sbG93aW5nIGxpbWl0YXRpb25zOjxicj4tIHJhdGUgbGltaXRzIGFwcGxpZWQgcGVyIElQIGFkZHJlc3M7IHRoaXMgbGltaXRzIHByb3RlY3Rpb24gYWdhaW5zdCBkaXN0cmlidXRlZCBkZW5pYWwtb2Ytc2VydmljZSAoRERvUykgYXR0YWNrcyB3aGVyZSBtYW55IHJlcXVlc3RzIGFyZSBjb21pbmcgZnJvbSB2YXJpb3VzIElQIGFkZHJlc3Nlczxicj4tIGlmIG11bHRpcGxlIFBhcnNlIFNlcnZlciBpbnN0YW5jZXMgYXJlIGJlaGluZCBhIGxvYWQgYmFsYW5jZXIgb3IgcmFuIGluIGEgY2x1c3RlciwgZWFjaCBpbnN0YW5jZSB3aWxsIGNhbGN1bGF0ZSBpdCdzIG93biByZXF1ZXN0IHJhdGVzLCBpbmRlcGVuZGVudCBmcm9tIG90aGVyIGluc3RhbmNlczsgdGhpcyBsaW1pdHMgdGhlIGFwcGxpY2FiaWxpdHkgb2YgdGhpcyBmZWF0dXJlIHdoZW4gdXNpbmcgYSBsb2FkIGJhbGFuY2VyIGFuZCBhbm90aGVyIHJhdGUgbGltaXRpbmcgc29sdXRpb24gdGhhdCB0YWtlcyByZXF1ZXN0cyBhY3Jvc3MgYWxsIGluc3RhbmNlcyBpbnRvIGFjY291bnQgbWF5IGJlIG1vcmUgc3VpdGFibGU8YnI+LSB0aGlzIGZlYXR1cmUgcHJvdmlkZXMgYmFzaWMgcHJvdGVjdGlvbiBhZ2FpbnN0IGRlbmlhbC1vZi1zZXJ2aWNlIGF0dGFja3MsIGJ1dCBhIG1vcmUgc29waGlzdGljYXRlZCBzb2x1dGlvbiB3b3JrcyBlYXJsaWVyIGluIHRoZSByZXF1ZXN0IGZsb3cgYW5kIHByZXZlbnRzIGEgbWFsaWNpb3VzIHJlcXVlc3RzIHRvIGV2ZW4gcmVhY2ggYSBzZXJ2ZXIgaW5zdGFuY2U7IGl0J3MgdGhlcmVmb3JlIHJlY29tbWVuZGVkIHRvIGltcGxlbWVudCBhIHNvbHV0aW9uIGFjY29yZGluZyB0byBhcmNoaXRlY3R1cmUgYW5kIHVzZXIgY2FzZS5cIixcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gICAgdHlwZTogJ1JhdGVMaW1pdE9wdGlvbnNbXScsXG4gICAgZGVmYXVsdDogW10sXG4gIH0sXG4gIHJlYWRPbmx5TWFzdGVyS2V5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JFQURfT05MWV9NQVNURVJfS0VZJyxcbiAgICBoZWxwOiAnUmVhZC1vbmx5IGtleSwgd2hpY2ggaGFzIHRoZSBzYW1lIGNhcGFiaWxpdGllcyBhcyBNYXN0ZXJLZXkgd2l0aG91dCB3cml0ZXMnLFxuICB9LFxuICByZXF1ZXN0Q29udGV4dE1pZGRsZXdhcmU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUkVRVUVTVF9DT05URVhUX01JRERMRVdBUkUnLFxuICAgIGhlbHA6XG4gICAgICAnT3B0aW9ucyB0byBjdXN0b21pemUgdGhlIHJlcXVlc3QgY29udGV4dCB1c2luZyBpbnZlcnNpb24gb2YgY29udHJvbC9kZXBlbmRlbmN5IGluamVjdGlvbi4nLFxuICB9LFxuICByZXF1ZXN0S2V5d29yZERlbnlsaXN0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JFUVVFU1RfS0VZV09SRF9ERU5ZTElTVCcsXG4gICAgaGVscDpcbiAgICAgICdBbiBhcnJheSBvZiBrZXlzIGFuZCB2YWx1ZXMgdGhhdCBhcmUgcHJvaGliaXRlZCBpbiBkYXRhYmFzZSByZWFkIGFuZCB3cml0ZSByZXF1ZXN0cyB0byBwcmV2ZW50IHBvdGVudGlhbCBzZWN1cml0eSB2dWxuZXJhYmlsaXRpZXMuIEl0IGlzIHBvc3NpYmxlIHRvIHNwZWNpZnkgb25seSBhIGtleSAoYHtcImtleVwiOlwiLi4uXCJ9YCksIG9ubHkgYSB2YWx1ZSAoYHtcInZhbHVlXCI6XCIuLi5cIn1gKSBvciBhIGtleS12YWx1ZSBwYWlyIChge1wia2V5XCI6XCIuLi5cIixcInZhbHVlXCI6XCIuLi5cIn1gKS4gVGhlIHNwZWNpZmljYXRpb24gY2FuIHVzZSB0aGUgZm9sbG93aW5nIHR5cGVzOiBgYm9vbGVhbmAsIGBudW1lcmljYCBvciBgc3RyaW5nYCwgd2hlcmUgYHN0cmluZ2Agd2lsbCBiZSBpbnRlcnByZXRlZCBhcyBhIHJlZ2V4IG5vdGF0aW9uLiBSZXF1ZXN0IGRhdGEgaXMgZGVlcC1zY2FubmVkIGZvciBtYXRjaGluZyBkZWZpbml0aW9ucyB0byBkZXRlY3QgYWxzbyBhbnkgbmVzdGVkIG9jY3VycmVuY2VzLiBEZWZhdWx0cyBhcmUgcGF0dGVybnMgdGhhdCBhcmUgbGlrZWx5IHRvIGJlIHVzZWQgaW4gbWFsaWNpb3VzIHJlcXVlc3RzLiBTZXR0aW5nIHRoaXMgb3B0aW9uIHdpbGwgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgcGF0dGVybnMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gICAgZGVmYXVsdDogW1xuICAgICAge1xuICAgICAgICBrZXk6ICdfYnNvbnR5cGUnLFxuICAgICAgICB2YWx1ZTogJ0NvZGUnLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnY29uc3RydWN0b3InLFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAga2V5OiAnX19wcm90b19fJyxcbiAgICAgIH0sXG4gICAgXSxcbiAgfSxcbiAgcmVzdEFQSUtleToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SRVNUX0FQSV9LRVknLFxuICAgIGhlbHA6ICdLZXkgZm9yIFJFU1QgY2FsbHMnLFxuICB9LFxuICByZXZva2VTZXNzaW9uT25QYXNzd29yZFJlc2V0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JFVk9LRV9TRVNTSU9OX09OX1BBU1NXT1JEX1JFU0VUJyxcbiAgICBoZWxwOlxuICAgICAgXCJXaGVuIGEgdXNlciBjaGFuZ2VzIHRoZWlyIHBhc3N3b3JkLCBlaXRoZXIgdGhyb3VnaCB0aGUgcmVzZXQgcGFzc3dvcmQgZW1haWwgb3Igd2hpbGUgbG9nZ2VkIGluLCBhbGwgc2Vzc2lvbnMgYXJlIHJldm9rZWQgaWYgdGhpcyBpcyB0cnVlLiBTZXQgdG8gZmFsc2UgaWYgeW91IGRvbid0IHdhbnQgdG8gcmV2b2tlIHNlc3Npb25zLlwiLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIHNjaGVkdWxlZFB1c2g6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfU0NIRURVTEVEX1BVU0gnLFxuICAgIGhlbHA6ICdDb25maWd1cmF0aW9uIGZvciBwdXNoIHNjaGVkdWxpbmcsIGRlZmF1bHRzIHRvIGZhbHNlLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIHNjaGVtYToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TQ0hFTUEnLFxuICAgIGhlbHA6ICdEZWZpbmVkIHNjaGVtYScsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnU2NoZW1hT3B0aW9ucycsXG4gIH0sXG4gIHNlY3VyaXR5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NFQ1VSSVRZJyxcbiAgICBoZWxwOiAnVGhlIHNlY3VyaXR5IG9wdGlvbnMgdG8gaWRlbnRpZnkgYW5kIHJlcG9ydCB3ZWFrIHNlY3VyaXR5IHNldHRpbmdzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnU2VjdXJpdHlPcHRpb25zJyxcbiAgICBkZWZhdWx0OiB7fSxcbiAgfSxcbiAgc2VuZFVzZXJFbWFpbFZlcmlmaWNhdGlvbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TRU5EX1VTRVJfRU1BSUxfVkVSSUZJQ0FUSU9OJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgZmFsc2VgIHRvIHByZXZlbnQgc2VuZGluZyBvZiB2ZXJpZmljYXRpb24gZW1haWwuIFN1cHBvcnRzIGEgZnVuY3Rpb24gd2l0aCBhIHJldHVybiB2YWx1ZSBvZiBgdHJ1ZWAgb3IgYGZhbHNlYCBmb3IgY29uZGl0aW9uYWwgZW1haWwgc2VuZGluZy48YnI+PGJyPkRlZmF1bHQgaXMgYHRydWVgLjxicj4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuT3JGdW5jdGlvblBhcnNlcixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICB9LFxuICBzZXJ2ZXJDbG9zZUNvbXBsZXRlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NFUlZFUl9DTE9TRV9DT01QTEVURScsXG4gICAgaGVscDogJ0NhbGxiYWNrIHdoZW4gc2VydmVyIGhhcyBjbG9zZWQnLFxuICB9LFxuICBzZXJ2ZXJVUkw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfVVJMJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBVUkwgdG8gUGFyc2UgU2VydmVyLjxicj48YnI+XFx1MjZBMFxcdUZFMEYgQ2VydGFpbiBzZXJ2ZXIgZmVhdHVyZXMgb3IgYWRhcHRlcnMgbWF5IHJlcXVpcmUgUGFyc2UgU2VydmVyIHRvIGJlIGFibGUgdG8gY2FsbCBpdHNlbGYgYnkgbWFraW5nIHJlcXVlc3RzIHRvIHRoZSBVUkwgc2V0IGluIGBzZXJ2ZXJVUkxgLiBJZiBhIGZlYXR1cmUgcmVxdWlyZXMgdGhpcywgaXQgaXMgbWVudGlvbmVkIGluIHRoZSBkb2N1bWVudGF0aW9uLiBJbiB0aGF0IGNhc2UgZW5zdXJlIHRoYXQgdGhlIFVSTCBpcyBhY2Nlc3NpYmxlIGZyb20gdGhlIHNlcnZlciBpdHNlbGYuJyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgc2Vzc2lvbkxlbmd0aDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TRVNTSU9OX0xFTkdUSCcsXG4gICAgaGVscDogJ1Nlc3Npb24gZHVyYXRpb24sIGluIHNlY29uZHMsIGRlZmF1bHRzIHRvIDEgeWVhcicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignc2Vzc2lvbkxlbmd0aCcpLFxuICAgIGRlZmF1bHQ6IDMxNTM2MDAwLFxuICB9LFxuICBzaWxlbnQ6IHtcbiAgICBlbnY6ICdTSUxFTlQnLFxuICAgIGhlbHA6ICdEaXNhYmxlcyBjb25zb2xlIG91dHB1dCcsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gIH0sXG4gIHN0YXJ0TGl2ZVF1ZXJ5U2VydmVyOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NUQVJUX0xJVkVfUVVFUllfU0VSVkVSJyxcbiAgICBoZWxwOiAnU3RhcnRzIHRoZSBsaXZlUXVlcnkgc2VydmVyJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgdHJ1c3RQcm94eToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9UUlVTVF9QUk9YWScsXG4gICAgaGVscDpcbiAgICAgICdUaGUgdHJ1c3QgcHJveHkgc2V0dGluZ3MuIEl0IGlzIGltcG9ydGFudCB0byB1bmRlcnN0YW5kIHRoZSBleGFjdCBzZXR1cCBvZiB0aGUgcmV2ZXJzZSBwcm94eSwgc2luY2UgdGhpcyBzZXR0aW5nIHdpbGwgdHJ1c3QgdmFsdWVzIHByb3ZpZGVkIGluIHRoZSBQYXJzZSBTZXJ2ZXIgQVBJIHJlcXVlc3QuIFNlZSB0aGUgPGEgaHJlZj1cImh0dHBzOi8vZXhwcmVzc2pzLmNvbS9lbi9ndWlkZS9iZWhpbmQtcHJveGllcy5odG1sXCI+ZXhwcmVzcyB0cnVzdCBwcm94eSBzZXR0aW5nczwvYT4gZG9jdW1lbnRhdGlvbi4gRGVmYXVsdHMgdG8gYGZhbHNlYC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gICAgZGVmYXVsdDogW10sXG4gIH0sXG4gIHVzZXJTZW5zaXRpdmVGaWVsZHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfVVNFUl9TRU5TSVRJVkVfRklFTERTJyxcbiAgICBoZWxwOlxuICAgICAgJ1BlcnNvbmFsbHkgaWRlbnRpZmlhYmxlIGluZm9ybWF0aW9uIGZpZWxkcyBpbiB0aGUgdXNlciB0YWJsZSB0aGUgc2hvdWxkIGJlIHJlbW92ZWQgZm9yIG5vbi1hdXRob3JpemVkIHVzZXJzLiBEZXByZWNhdGVkIEBzZWUgcHJvdGVjdGVkRmllbGRzJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gIH0sXG4gIHZlcmJvc2U6IHtcbiAgICBlbnY6ICdWRVJCT1NFJyxcbiAgICBoZWxwOiAnU2V0IHRoZSBsb2dnaW5nIHRvIHZlcmJvc2UnLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICB9LFxuICB2ZXJpZnlTZXJ2ZXJVcmw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfVkVSSUZZX1NFUlZFUl9VUkwnLFxuICAgIGhlbHA6XG4gICAgICAnUGFyc2UgU2VydmVyIG1ha2VzIGEgSFRUUCByZXF1ZXN0IHRvIHRoZSBVUkwgc2V0IGluIGBzZXJ2ZXJVUkxgIGF0IHRoZSBlbmQgb2YgaXRzIGxhdW5jaCByb3V0aW5lIHRvIHZlcmlmeSB0aGF0IHRoZSBsYXVuY2ggc3VjY2VlZGVkLiBJZiB0aGlzIG9wdGlvbiBpcyBzZXQgdG8gYGZhbHNlYCwgdGhlIHZlcmlmaWNhdGlvbiB3aWxsIGJlIHNraXBwZWQuIFRoaXMgY2FuIGJlIHVzZWZ1bCBpbiBlbnZpcm9ubWVudHMgd2hlcmUgdGhlIHNlcnZlciBVUkwgaXMgbm90IGFjY2Vzc2libGUgZnJvbSB0aGUgc2VydmVyIGl0c2VsZiwgc3VjaCBhcyB3aGVuIHJ1bm5pbmcgYmVoaW5kIGEgZmlyZXdhbGwgb3IgaW4gY2VydGFpbiBjb250YWluZXJpemVkIGVudmlyb25tZW50cy48YnI+PGJyPlxcdTI2QTBcXHVGRTBGIFNlcnZlciBVUkwgdmVyaWZpY2F0aW9uIHJlcXVpcmVzIFBhcnNlIFNlcnZlciB0byBiZSBhYmxlIHRvIGNhbGwgaXRzZWxmIGJ5IG1ha2luZyByZXF1ZXN0cyB0byB0aGUgVVJMIHNldCBpbiBgc2VydmVyVVJMYC48YnI+PGJyPkRlZmF1bHQgaXMgYHRydWVgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgdmVyaWZ5VXNlckVtYWlsczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9WRVJJRllfVVNFUl9FTUFJTFMnLFxuICAgIGhlbHA6XG4gICAgICBcIlNldCB0byBgdHJ1ZWAgdG8gcmVxdWlyZSB1c2VycyB0byB2ZXJpZnkgdGhlaXIgZW1haWwgYWRkcmVzcyB0byBjb21wbGV0ZSB0aGUgc2lnbi11cCBwcm9jZXNzLiBTdXBwb3J0cyBhIGZ1bmN0aW9uIHdpdGggYSByZXR1cm4gdmFsdWUgb2YgYHRydWVgIG9yIGBmYWxzZWAgZm9yIGNvbmRpdGlvbmFsIHZlcmlmaWNhdGlvbi4gVGhlIGZ1bmN0aW9uIHJlY2VpdmVzIGEgcmVxdWVzdCBvYmplY3QgdGhhdCBpbmNsdWRlcyBgY3JlYXRlZFdpdGhgIHRvIGluZGljYXRlIHdoZXRoZXIgdGhlIGludm9jYXRpb24gaXMgZm9yIGBzaWdudXBgIG9yIGBsb2dpbmAgYW5kIHRoZSB1c2VkIGF1dGggcHJvdmlkZXIuPGJyPjxicj5UaGUgYGNyZWF0ZWRXaXRoYCB2YWx1ZXMgcGVyIHNjZW5hcmlvOjx1bD48bGk+UGFzc3dvcmQgc2lnbnVwOiBgeyBhY3Rpb246ICdzaWdudXAnLCBhdXRoUHJvdmlkZXI6ICdwYXNzd29yZCcgfWA8L2xpPjxsaT5BdXRoIHByb3ZpZGVyIHNpZ251cDogYHsgYWN0aW9uOiAnc2lnbnVwJywgYXV0aFByb3ZpZGVyOiAnPHByb3ZpZGVyPicgfWA8L2xpPjxsaT5QYXNzd29yZCBsb2dpbjogYHsgYWN0aW9uOiAnbG9naW4nLCBhdXRoUHJvdmlkZXI6ICdwYXNzd29yZCcgfWA8L2xpPjxsaT5BdXRoIHByb3ZpZGVyIGxvZ2luOiBmdW5jdGlvbiBub3QgaW52b2tlZDsgYXV0aCBwcm92aWRlciBsb2dpbiBieXBhc3NlcyBlbWFpbCB2ZXJpZmljYXRpb248L2xpPjxsaT5SZXNlbmQgdmVyaWZpY2F0aW9uIGVtYWlsOiBgY3JlYXRlZFdpdGhgIGlzIGB1bmRlZmluZWRgOyB1c2UgdGhlIGByZXNlbmRSZXF1ZXN0YCBwcm9wZXJ0eSB0byBpZGVudGlmeSB0aG9zZTwvbGk+PC91bD5EZWZhdWx0IGlzIGBmYWxzZWAuXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5PckZ1bmN0aW9uUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICB3ZWJob29rS2V5OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1dFQkhPT0tfS0VZJyxcbiAgICBoZWxwOiAnS2V5IHNlbnQgd2l0aCBvdXRnb2luZyB3ZWJob29rIGNhbGxzJyxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5SYXRlTGltaXRPcHRpb25zID0ge1xuICBlcnJvclJlc3BvbnNlTWVzc2FnZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SQVRFX0xJTUlUX0VSUk9SX1JFU1BPTlNFX01FU1NBR0UnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIGVycm9yIG1lc3NhZ2UgdGhhdCBzaG91bGQgYmUgcmV0dXJuZWQgaW4gdGhlIGJvZHkgb2YgdGhlIEhUVFAgNDI5IHJlc3BvbnNlIHdoZW4gdGhlIHJhdGUgbGltaXQgaXMgaGl0LiBEZWZhdWx0IGlzIGBUb28gbWFueSByZXF1ZXN0cy5gLicsXG4gICAgZGVmYXVsdDogJ1RvbyBtYW55IHJlcXVlc3RzLicsXG4gIH0sXG4gIGluY2x1ZGVJbnRlcm5hbFJlcXVlc3RzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JBVEVfTElNSVRfSU5DTFVERV9JTlRFUk5BTF9SRVFVRVNUUycsXG4gICAgaGVscDpcbiAgICAgICdPcHRpb25hbCwgaWYgYHRydWVgIHRoZSByYXRlIGxpbWl0IHdpbGwgYWxzbyBhcHBseSB0byByZXF1ZXN0cyB0aGF0IGFyZSBtYWRlIGluIGJ5IENsb3VkIENvZGUsIGRlZmF1bHQgaXMgYGZhbHNlYC4gTm90ZSB0aGF0IGEgcHVibGljIENsb3VkIENvZGUgZnVuY3Rpb24gdGhhdCB0cmlnZ2VycyBpbnRlcm5hbCByZXF1ZXN0cyBtYXkgY2lyY3VtdmVudCByYXRlIGxpbWl0aW5nIGFuZCBiZSB2dWxuZXJhYmxlIHRvIGF0dGFja3MuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgaW5jbHVkZU1hc3RlcktleToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SQVRFX0xJTUlUX0lOQ0xVREVfTUFTVEVSX0tFWScsXG4gICAgaGVscDpcbiAgICAgICdPcHRpb25hbCwgaWYgYHRydWVgIHRoZSByYXRlIGxpbWl0IHdpbGwgYWxzbyBhcHBseSB0byByZXF1ZXN0cyB1c2luZyB0aGUgYG1hc3RlcktleWAsIGRlZmF1bHQgaXMgYGZhbHNlYC4gTm90ZSB0aGF0IGEgcHVibGljIENsb3VkIENvZGUgZnVuY3Rpb24gdGhhdCB0cmlnZ2VycyBpbnRlcm5hbCByZXF1ZXN0cyB1c2luZyB0aGUgYG1hc3RlcktleWAgbWF5IGNpcmN1bXZlbnQgcmF0ZSBsaW1pdGluZyBhbmQgYmUgdnVsbmVyYWJsZSB0byBhdHRhY2tzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIHJlZGlzVXJsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JBVEVfTElNSVRfUkVESVNfVVJMJyxcbiAgICBoZWxwOlxuICAgICAgJ09wdGlvbmFsLCB0aGUgVVJMIG9mIHRoZSBSZWRpcyBzZXJ2ZXIgdG8gc3RvcmUgcmF0ZSBsaW1pdCBkYXRhLiBUaGlzIGFsbG93cyB0byByYXRlIGxpbWl0IHJlcXVlc3RzIGZvciBtdWx0aXBsZSBzZXJ2ZXJzIGJ5IGNhbGN1bGF0aW5nIHRoZSBzdW0gb2YgYWxsIHJlcXVlc3RzIGFjcm9zcyBhbGwgc2VydmVycy4gVGhpcyBpcyB1c2VmdWwgaWYgbXVsdGlwbGUgc2VydmVycyBhcmUgcHJvY2Vzc2luZyByZXF1ZXN0cyBiZWhpbmQgYSBsb2FkIGJhbGFuY2VyLiBGb3IgZXhhbXBsZSwgdGhlIGxpbWl0IG9mIDEwIHJlcXVlc3RzIGlzIHJlYWNoZWQgaWYgZWFjaCBvZiAyIHNlcnZlcnMgcHJvY2Vzc2VkIDUgcmVxdWVzdHMuJyxcbiAgfSxcbiAgcmVxdWVzdENvdW50OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1JBVEVfTElNSVRfUkVRVUVTVF9DT1VOVCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgbnVtYmVyIG9mIHJlcXVlc3RzIHRoYXQgY2FuIGJlIG1hZGUgcGVyIElQIGFkZHJlc3Mgd2l0aGluIHRoZSB0aW1lIHdpbmRvdyBzZXQgaW4gYHJlcXVlc3RUaW1lV2luZG93YCBiZWZvcmUgdGhlIHJhdGUgbGltaXQgaXMgYXBwbGllZC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ3JlcXVlc3RDb3VudCcpLFxuICB9LFxuICByZXF1ZXN0TWV0aG9kczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SQVRFX0xJTUlUX1JFUVVFU1RfTUVUSE9EUycsXG4gICAgaGVscDpcbiAgICAgICdPcHRpb25hbCwgdGhlIEhUVFAgcmVxdWVzdCBtZXRob2RzIHRvIHdoaWNoIHRoZSByYXRlIGxpbWl0IHNob3VsZCBiZSBhcHBsaWVkLCBkZWZhdWx0IGlzIGFsbCBtZXRob2RzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmFycmF5UGFyc2VyLFxuICB9LFxuICByZXF1ZXN0UGF0aDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SQVRFX0xJTUlUX1JFUVVFU1RfUEFUSCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgcGF0aCBvZiB0aGUgQVBJIHJvdXRlIHRvIGJlIHJhdGUgbGltaXRlZC4gUm91dGUgcGF0aHMsIGluIGNvbWJpbmF0aW9uIHdpdGggYSByZXF1ZXN0IG1ldGhvZCwgZGVmaW5lIHRoZSBlbmRwb2ludHMgYXQgd2hpY2ggcmVxdWVzdHMgY2FuIGJlIG1hZGUuIFJvdXRlIHBhdGhzIGNhbiBiZSBzdHJpbmdzIG9yIHN0cmluZyBwYXR0ZXJucyBmb2xsb3dpbmcgPGEgaHJlZj1cImh0dHBzOi8vZ2l0aHViLmNvbS9waWxsYXJqcy9wYXRoLXRvLXJlZ2V4cFwiPnBhdGgtdG8tcmVnZXhwIHY4PC9hPiBzeW50YXguJyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgcmVxdWVzdFRpbWVXaW5kb3c6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUkFURV9MSU1JVF9SRVFVRVNUX1RJTUVfV0lORE9XJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSB3aW5kb3cgb2YgdGltZSBpbiBtaWxsaXNlY29uZHMgd2l0aGluIHdoaWNoIHRoZSBudW1iZXIgb2YgcmVxdWVzdHMgc2V0IGluIGByZXF1ZXN0Q291bnRgIGNhbiBiZSBtYWRlIGJlZm9yZSB0aGUgcmF0ZSBsaW1pdCBpcyBhcHBsaWVkLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcigncmVxdWVzdFRpbWVXaW5kb3cnKSxcbiAgfSxcbiAgem9uZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9SQVRFX0xJTUlUX1pPTkUnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIHR5cGUgb2YgcmF0ZSBsaW1pdCB0byBhcHBseS4gVGhlIGZvbGxvd2luZyB0eXBlcyBhcmUgc3VwcG9ydGVkOjx1bD48bGk+YGdsb2JhbGA6IHJhdGUgbGltaXQgYmFzZWQgb24gdGhlIG51bWJlciBvZiByZXF1ZXN0cyBtYWRlIGJ5IGFsbCB1c2VyczwvbGk+PGxpPmBpcGA6IHJhdGUgbGltaXQgYmFzZWQgb24gdGhlIElQIGFkZHJlc3Mgb2YgdGhlIHJlcXVlc3Q8L2xpPjxsaT5gdXNlcmA6IHJhdGUgbGltaXQgYmFzZWQgb24gdGhlIHVzZXIgSUQgb2YgdGhlIHJlcXVlc3Q8L2xpPjxsaT5gc2Vzc2lvbmA6IHJhdGUgbGltaXQgYmFzZWQgb24gdGhlIHNlc3Npb24gdG9rZW4gb2YgdGhlIHJlcXVlc3Q8L2xpPjwvdWw+RGVmYXVsdCBpcyBgaXBgLicsXG4gICAgZGVmYXVsdDogJ2lwJyxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5TZWN1cml0eU9wdGlvbnMgPSB7XG4gIGNoZWNrR3JvdXBzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NFQ1VSSVRZX0NIRUNLX0dST1VQUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgc2VjdXJpdHkgY2hlY2sgZ3JvdXBzIHRvIHJ1bi4gVGhpcyBhbGxvd3MgdG8gYWRkIGN1c3RvbSBzZWN1cml0eSBjaGVja3Mgb3Igb3ZlcnJpZGUgZXhpc3Rpbmcgb25lcy4gRGVmYXVsdCBhcmUgdGhlIGdyb3VwcyBkZWZpbmVkIGluIGBDaGVja0dyb3Vwcy5qc2AuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gIH0sXG4gIGVuYWJsZUNoZWNrOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1NFQ1VSSVRZX0VOQUJMRV9DSEVDSycsXG4gICAgaGVscDogJ0lzIHRydWUgaWYgUGFyc2UgU2VydmVyIHNob3VsZCBjaGVjayBmb3Igd2VhayBzZWN1cml0eSBzZXR0aW5ncy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBlbmFibGVDaGVja0xvZzoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9TRUNVUklUWV9FTkFCTEVfQ0hFQ0tfTE9HJyxcbiAgICBoZWxwOlxuICAgICAgJ0lzIHRydWUgaWYgdGhlIHNlY3VyaXR5IGNoZWNrIHJlcG9ydCBzaG91bGQgYmUgd3JpdHRlbiB0byBsb2dzLiBUaGlzIHNob3VsZCBvbmx5IGJlIGVuYWJsZWQgdGVtcG9yYXJpbHkgdG8gbm90IGV4cG9zZSB3ZWFrIHNlY3VyaXR5IHNldHRpbmdzIGluIGxvZ3MuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5QYWdlc09wdGlvbnMgPSB7XG4gIGN1c3RvbVJvdXRlczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19DVVNUT01fUk9VVEVTJyxcbiAgICBoZWxwOiAnVGhlIGN1c3RvbSByb3V0ZXMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gICAgdHlwZTogJ1BhZ2VzUm91dGVbXScsXG4gICAgZGVmYXVsdDogW10sXG4gIH0sXG4gIGN1c3RvbVVybHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfQ1VTVE9NX1VSTFMnLFxuICAgIGhlbHA6ICdUaGUgVVJMcyB0byB0aGUgY3VzdG9tIHBhZ2VzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgICB0eXBlOiAnUGFnZXNDdXN0b21VcmxzT3B0aW9ucycsXG4gICAgZGVmYXVsdDoge30sXG4gIH0sXG4gIGVuYWJsZUxvY2FsaXphdGlvbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19FTkFCTEVfTE9DQUxJWkFUSU9OJyxcbiAgICBoZWxwOiAnSXMgdHJ1ZSBpZiBwYWdlcyBzaG91bGQgYmUgbG9jYWxpemVkOyB0aGlzIGhhcyBubyBlZmZlY3Qgb24gY3VzdG9tIHBhZ2UgcmVkaXJlY3RzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGVuYWJsZVJvdXRlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19FTkFCTEVfUk9VVEVSJyxcbiAgICBoZWxwOlxuICAgICAgJ0lzIHRydWUgaWYgdGhlIHBhZ2VzIHJvdXRlciBzaG91bGQgYmUgZW5hYmxlZDsgdGhpcyBpcyByZXF1aXJlZCBmb3IgYW55IG9mIHRoZSBwYWdlcyBvcHRpb25zIHRvIHRha2UgZWZmZWN0LicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG4gIGZvcmNlUmVkaXJlY3Q6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfRk9SQ0VfUkVESVJFQ1QnLFxuICAgIGhlbHA6XG4gICAgICAnSXMgdHJ1ZSBpZiByZXNwb25zZXMgc2hvdWxkIGFsd2F5cyBiZSByZWRpcmVjdHMgYW5kIG5ldmVyIGNvbnRlbnQsIGZhbHNlIGlmIHRoZSByZXNwb25zZSB0eXBlIHNob3VsZCBkZXBlbmQgb24gdGhlIHJlcXVlc3QgdHlwZSAoR0VUIHJlcXVlc3QgLT4gY29udGVudCByZXNwb25zZTsgUE9TVCByZXF1ZXN0IC0+IHJlZGlyZWN0IHJlc3BvbnNlKS4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBsb2NhbGl6YXRpb25GYWxsYmFja0xvY2FsZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19MT0NBTElaQVRJT05fRkFMTEJBQ0tfTE9DQUxFJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBmYWxsYmFjayBsb2NhbGUgZm9yIGxvY2FsaXphdGlvbiBpZiBubyBtYXRjaGluZyB0cmFuc2xhdGlvbiBpcyBwcm92aWRlZCBmb3IgdGhlIGdpdmVuIGxvY2FsZS4gVGhpcyBpcyBvbmx5IHJlbGV2YW50IHdoZW4gcHJvdmlkaW5nIHRyYW5zbGF0aW9uIHJlc291cmNlcyB2aWEgSlNPTiBmaWxlLicsXG4gICAgZGVmYXVsdDogJ2VuJyxcbiAgfSxcbiAgbG9jYWxpemF0aW9uSnNvblBhdGg6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfTE9DQUxJWkFUSU9OX0pTT05fUEFUSCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgcGF0aCB0byB0aGUgSlNPTiBmaWxlIGZvciBsb2NhbGl6YXRpb247IHRoZSB0cmFuc2xhdGlvbnMgd2lsbCBiZSB1c2VkIHRvIGZpbGwgdGVtcGxhdGUgcGxhY2Vob2xkZXJzIGFjY29yZGluZyB0byB0aGUgbG9jYWxlLicsXG4gIH0sXG4gIHBhZ2VzRW5kcG9pbnQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfUEFHRVNfRU5EUE9JTlQnLFxuICAgIGhlbHA6IFwiVGhlIEFQSSBlbmRwb2ludCBmb3IgdGhlIHBhZ2VzLiBEZWZhdWx0IGlzICdhcHBzJy5cIixcbiAgICBkZWZhdWx0OiAnYXBwcycsXG4gIH0sXG4gIHBhZ2VzUGF0aDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19QQUdFU19QQVRIJyxcbiAgICBoZWxwOlxuICAgICAgXCJUaGUgcGF0aCB0byB0aGUgcGFnZXMgZGlyZWN0b3J5OyB0aGlzIGFsc28gZGVmaW5lcyB3aGVyZSB0aGUgc3RhdGljIGVuZHBvaW50ICcvYXBwcycgcG9pbnRzIHRvLiBEZWZhdWx0IGlzIHRoZSAnLi9wdWJsaWMvJyBkaXJlY3Rvcnkgb2YgdGhlIHBhcnNlLXNlcnZlciBtb2R1bGUuXCIsXG4gIH0sXG4gIHBsYWNlaG9sZGVyczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19QTEFDRUhPTERFUlMnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIHBsYWNlaG9sZGVyIGtleXMgYW5kIHZhbHVlcyB3aGljaCB3aWxsIGJlIGZpbGxlZCBpbiBwYWdlczsgdGhpcyBjYW4gYmUgYSBzaW1wbGUgb2JqZWN0IG9yIGEgY2FsbGJhY2sgZnVuY3Rpb24uJyxcbiAgICBhY3Rpb246IHBhcnNlcnMub2JqZWN0UGFyc2VyLFxuICAgIGRlZmF1bHQ6IHt9LFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLlBhZ2VzUm91dGUgPSB7XG4gIGhhbmRsZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfUk9VVEVfSEFORExFUicsXG4gICAgaGVscDogJ1RoZSByb3V0ZSBoYW5kbGVyIHRoYXQgaXMgYW4gYXN5bmMgZnVuY3Rpb24uJyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgbWV0aG9kOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBR0VTX1JPVVRFX01FVEhPRCcsXG4gICAgaGVscDogXCJUaGUgcm91dGUgbWV0aG9kLCBlLmcuICdHRVQnIG9yICdQT1NUJy5cIixcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgcGF0aDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19ST1VURV9QQVRIJyxcbiAgICBoZWxwOiAnVGhlIHJvdXRlIHBhdGguJyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5QYWdlc0N1c3RvbVVybHNPcHRpb25zID0ge1xuICBlbWFpbFZlcmlmaWNhdGlvbkxpbmtFeHBpcmVkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBR0VTX0NVU1RPTV9VUkxfRU1BSUxfVkVSSUZJQ0FUSU9OX0xJTktfRVhQSVJFRCcsXG4gICAgaGVscDogJ1RoZSBVUkwgdG8gdGhlIGN1c3RvbSBwYWdlIGZvciBlbWFpbCB2ZXJpZmljYXRpb24gLT4gbGluayBleHBpcmVkLicsXG4gIH0sXG4gIGVtYWlsVmVyaWZpY2F0aW9uTGlua0ludmFsaWQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfQ1VTVE9NX1VSTF9FTUFJTF9WRVJJRklDQVRJT05fTElOS19JTlZBTElEJyxcbiAgICBoZWxwOiAnVGhlIFVSTCB0byB0aGUgY3VzdG9tIHBhZ2UgZm9yIGVtYWlsIHZlcmlmaWNhdGlvbiAtPiBsaW5rIGludmFsaWQuJyxcbiAgfSxcbiAgZW1haWxWZXJpZmljYXRpb25TZW5kRmFpbDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19DVVNUT01fVVJMX0VNQUlMX1ZFUklGSUNBVElPTl9TRU5EX0ZBSUwnLFxuICAgIGhlbHA6ICdUaGUgVVJMIHRvIHRoZSBjdXN0b20gcGFnZSBmb3IgZW1haWwgdmVyaWZpY2F0aW9uIC0+IGxpbmsgc2VuZCBmYWlsLicsXG4gIH0sXG4gIGVtYWlsVmVyaWZpY2F0aW9uU2VuZFN1Y2Nlc3M6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfQ1VTVE9NX1VSTF9FTUFJTF9WRVJJRklDQVRJT05fU0VORF9TVUNDRVNTJyxcbiAgICBoZWxwOiAnVGhlIFVSTCB0byB0aGUgY3VzdG9tIHBhZ2UgZm9yIGVtYWlsIHZlcmlmaWNhdGlvbiAtPiByZXNlbmQgbGluayAtPiBzdWNjZXNzLicsXG4gIH0sXG4gIGVtYWlsVmVyaWZpY2F0aW9uU3VjY2Vzczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQUdFU19DVVNUT01fVVJMX0VNQUlMX1ZFUklGSUNBVElPTl9TVUNDRVNTJyxcbiAgICBoZWxwOiAnVGhlIFVSTCB0byB0aGUgY3VzdG9tIHBhZ2UgZm9yIGVtYWlsIHZlcmlmaWNhdGlvbiAtPiBzdWNjZXNzLicsXG4gIH0sXG4gIHBhc3N3b3JkUmVzZXQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfQ1VTVE9NX1VSTF9QQVNTV09SRF9SRVNFVCcsXG4gICAgaGVscDogJ1RoZSBVUkwgdG8gdGhlIGN1c3RvbSBwYWdlIGZvciBwYXNzd29yZCByZXNldC4nLFxuICB9LFxuICBwYXNzd29yZFJlc2V0TGlua0ludmFsaWQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFHRVNfQ1VTVE9NX1VSTF9QQVNTV09SRF9SRVNFVF9MSU5LX0lOVkFMSUQnLFxuICAgIGhlbHA6ICdUaGUgVVJMIHRvIHRoZSBjdXN0b20gcGFnZSBmb3IgcGFzc3dvcmQgcmVzZXQgLT4gbGluayBpbnZhbGlkLicsXG4gIH0sXG4gIHBhc3N3b3JkUmVzZXRTdWNjZXNzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBR0VTX0NVU1RPTV9VUkxfUEFTU1dPUkRfUkVTRVRfU1VDQ0VTUycsXG4gICAgaGVscDogJ1RoZSBVUkwgdG8gdGhlIGN1c3RvbSBwYWdlIGZvciBwYXNzd29yZCByZXNldCAtPiBzdWNjZXNzLicsXG4gIH0sXG59O1xubW9kdWxlLmV4cG9ydHMuQ3VzdG9tUGFnZXNPcHRpb25zID0ge1xuICBjaG9vc2VQYXNzd29yZDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DVVNUT01fUEFHRVNfQ0hPT1NFX1BBU1NXT1JEJyxcbiAgICBoZWxwOiAnY2hvb3NlIHBhc3N3b3JkIHBhZ2UgcGF0aCcsXG4gIH0sXG4gIGV4cGlyZWRWZXJpZmljYXRpb25MaW5rOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NVU1RPTV9QQUdFU19FWFBJUkVEX1ZFUklGSUNBVElPTl9MSU5LJyxcbiAgICBoZWxwOiAnZXhwaXJlZCB2ZXJpZmljYXRpb24gbGluayBwYWdlIHBhdGgnLFxuICB9LFxuICBpbnZhbGlkTGluazoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DVVNUT01fUEFHRVNfSU5WQUxJRF9MSU5LJyxcbiAgICBoZWxwOiAnaW52YWxpZCBsaW5rIHBhZ2UgcGF0aCcsXG4gIH0sXG4gIGludmFsaWRQYXNzd29yZFJlc2V0TGluazoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DVVNUT01fUEFHRVNfSU5WQUxJRF9QQVNTV09SRF9SRVNFVF9MSU5LJyxcbiAgICBoZWxwOiAnaW52YWxpZCBwYXNzd29yZCByZXNldCBsaW5rIHBhZ2UgcGF0aCcsXG4gIH0sXG4gIGludmFsaWRWZXJpZmljYXRpb25MaW5rOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NVU1RPTV9QQUdFU19JTlZBTElEX1ZFUklGSUNBVElPTl9MSU5LJyxcbiAgICBoZWxwOiAnaW52YWxpZCB2ZXJpZmljYXRpb24gbGluayBwYWdlIHBhdGgnLFxuICB9LFxuICBsaW5rU2VuZEZhaWw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQ1VTVE9NX1BBR0VTX0xJTktfU0VORF9GQUlMJyxcbiAgICBoZWxwOiAndmVyaWZpY2F0aW9uIGxpbmsgc2VuZCBmYWlsIHBhZ2UgcGF0aCcsXG4gIH0sXG4gIGxpbmtTZW5kU3VjY2Vzczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DVVNUT01fUEFHRVNfTElOS19TRU5EX1NVQ0NFU1MnLFxuICAgIGhlbHA6ICd2ZXJpZmljYXRpb24gbGluayBzZW5kIHN1Y2Nlc3MgcGFnZSBwYXRoJyxcbiAgfSxcbiAgcGFyc2VGcmFtZVVSTDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DVVNUT01fUEFHRVNfUEFSU0VfRlJBTUVfVVJMJyxcbiAgICBoZWxwOiAnZm9yIG1hc2tpbmcgdXNlci1mYWNpbmcgcGFnZXMnLFxuICB9LFxuICBwYXNzd29yZFJlc2V0U3VjY2Vzczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9DVVNUT01fUEFHRVNfUEFTU1dPUkRfUkVTRVRfU1VDQ0VTUycsXG4gICAgaGVscDogJ3Bhc3N3b3JkIHJlc2V0IHN1Y2Nlc3MgcGFnZSBwYXRoJyxcbiAgfSxcbiAgdmVyaWZ5RW1haWxTdWNjZXNzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0NVU1RPTV9QQUdFU19WRVJJRllfRU1BSUxfU1VDQ0VTUycsXG4gICAgaGVscDogJ3ZlcmlmeSBlbWFpbCBzdWNjZXNzIHBhZ2UgcGF0aCcsXG4gIH0sXG59O1xubW9kdWxlLmV4cG9ydHMuTGl2ZVF1ZXJ5T3B0aW9ucyA9IHtcbiAgY2xhc3NOYW1lczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MSVZFUVVFUllfQ0xBU1NOQU1FUycsXG4gICAgaGVscDogXCJwYXJzZS1zZXJ2ZXIncyBMaXZlUXVlcnkgY2xhc3NOYW1lc1wiLFxuICAgIGFjdGlvbjogcGFyc2Vycy5hcnJheVBhcnNlcixcbiAgfSxcbiAgcHViU3ViQWRhcHRlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MSVZFUVVFUllfUFVCX1NVQl9BREFQVEVSJyxcbiAgICBoZWxwOiAnTGl2ZVF1ZXJ5IHB1YnN1YiBhZGFwdGVyJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubW9kdWxlT3JPYmplY3RQYXJzZXIsXG4gIH0sXG4gIHJlZGlzT3B0aW9uczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MSVZFUVVFUllfUkVESVNfT1BUSU9OUycsXG4gICAgaGVscDogXCJwYXJzZS1zZXJ2ZXIncyBMaXZlUXVlcnkgcmVkaXNPcHRpb25zXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgfSxcbiAgcmVkaXNVUkw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTElWRVFVRVJZX1JFRElTX1VSTCcsXG4gICAgaGVscDogXCJwYXJzZS1zZXJ2ZXIncyBMaXZlUXVlcnkgcmVkaXNVUkxcIixcbiAgfSxcbiAgd3NzQWRhcHRlcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MSVZFUVVFUllfV1NTX0FEQVBURVInLFxuICAgIGhlbHA6ICdBZGFwdGVyIG1vZHVsZSBmb3IgdGhlIFdlYlNvY2tldFNlcnZlcicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm1vZHVsZU9yT2JqZWN0UGFyc2VyLFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLkxpdmVRdWVyeVNlcnZlck9wdGlvbnMgPSB7XG4gIGFwcElkOiB7XG4gICAgZW52OiAnUEFSU0VfTElWRV9RVUVSWV9TRVJWRVJfQVBQX0lEJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoaXMgc3RyaW5nIHNob3VsZCBtYXRjaCB0aGUgYXBwSWQgaW4gdXNlIGJ5IHlvdXIgUGFyc2UgU2VydmVyLiBJZiB5b3UgZGVwbG95IHRoZSBMaXZlUXVlcnkgc2VydmVyIGFsb25nc2lkZSBQYXJzZSBTZXJ2ZXIsIHRoZSBMaXZlUXVlcnkgc2VydmVyIHdpbGwgdHJ5IHRvIHVzZSB0aGUgc2FtZSBhcHBJZC4nLFxuICB9LFxuICBjYWNoZVRpbWVvdXQ6IHtcbiAgICBlbnY6ICdQQVJTRV9MSVZFX1FVRVJZX1NFUlZFUl9DQUNIRV9USU1FT1VUJyxcbiAgICBoZWxwOlxuICAgICAgXCJOdW1iZXIgaW4gbWlsbGlzZWNvbmRzLiBXaGVuIGNsaWVudHMgcHJvdmlkZSB0aGUgc2Vzc2lvblRva2VuIHRvIHRoZSBMaXZlUXVlcnkgc2VydmVyLCB0aGUgTGl2ZVF1ZXJ5IHNlcnZlciB3aWxsIHRyeSB0byBmZXRjaCBpdHMgUGFyc2VVc2VyJ3Mgb2JqZWN0SWQgZnJvbSBwYXJzZSBzZXJ2ZXIgYW5kIHN0b3JlIGl0IGluIHRoZSBjYWNoZS4gVGhlIHZhbHVlIGRlZmluZXMgdGhlIGR1cmF0aW9uIG9mIHRoZSBjYWNoZS4gQ2hlY2sgdGhlIGZvbGxvd2luZyBTZWN1cml0eSBzZWN0aW9uIGFuZCBvdXIgcHJvdG9jb2wgc3BlY2lmaWNhdGlvbiBmb3IgZGV0YWlscywgZGVmYXVsdHMgdG8gNSAqIDEwMDAgbXMgKDUgc2Vjb25kcykuXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignY2FjaGVUaW1lb3V0JyksXG4gIH0sXG4gIGtleVBhaXJzOiB7XG4gICAgZW52OiAnUEFSU0VfTElWRV9RVUVSWV9TRVJWRVJfS0VZX1BBSVJTJyxcbiAgICBoZWxwOlxuICAgICAgJ0EgSlNPTiBvYmplY3QgdGhhdCBzZXJ2ZXMgYXMgYSB3aGl0ZWxpc3Qgb2Yga2V5cy4gSXQgaXMgdXNlZCBmb3IgdmFsaWRhdGluZyBjbGllbnRzIHdoZW4gdGhleSB0cnkgdG8gY29ubmVjdCB0byB0aGUgTGl2ZVF1ZXJ5IHNlcnZlci4gQ2hlY2sgdGhlIGZvbGxvd2luZyBTZWN1cml0eSBzZWN0aW9uIGFuZCBvdXIgcHJvdG9jb2wgc3BlY2lmaWNhdGlvbiBmb3IgZGV0YWlscy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5vYmplY3RQYXJzZXIsXG4gIH0sXG4gIGxvZ0xldmVsOiB7XG4gICAgZW52OiAnUEFSU0VfTElWRV9RVUVSWV9TRVJWRVJfTE9HX0xFVkVMJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoaXMgc3RyaW5nIGRlZmluZXMgdGhlIGxvZyBsZXZlbCBvZiB0aGUgTGl2ZVF1ZXJ5IHNlcnZlci4gV2Ugc3VwcG9ydCBWRVJCT1NFLCBJTkZPLCBFUlJPUiwgTk9ORSwgZGVmYXVsdHMgdG8gSU5GTy4nLFxuICB9LFxuICBtYXN0ZXJLZXk6IHtcbiAgICBlbnY6ICdQQVJTRV9MSVZFX1FVRVJZX1NFUlZFUl9NQVNURVJfS0VZJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoaXMgc3RyaW5nIHNob3VsZCBtYXRjaCB0aGUgbWFzdGVyS2V5IGluIHVzZSBieSB5b3VyIFBhcnNlIFNlcnZlci4gSWYgeW91IGRlcGxveSB0aGUgTGl2ZVF1ZXJ5IHNlcnZlciBhbG9uZ3NpZGUgUGFyc2UgU2VydmVyLCB0aGUgTGl2ZVF1ZXJ5IHNlcnZlciB3aWxsIHRyeSB0byB1c2UgdGhlIHNhbWUgbWFzdGVyS2V5LicsXG4gIH0sXG4gIHBvcnQ6IHtcbiAgICBlbnY6ICdQQVJTRV9MSVZFX1FVRVJZX1NFUlZFUl9QT1JUJyxcbiAgICBoZWxwOiAnVGhlIHBvcnQgdG8gcnVuIHRoZSBMaXZlUXVlcnkgc2VydmVyLCBkZWZhdWx0cyB0byAxMzM3LicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcigncG9ydCcpLFxuICAgIGRlZmF1bHQ6IDEzMzcsXG4gIH0sXG4gIHB1YlN1YkFkYXB0ZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9MSVZFX1FVRVJZX1NFUlZFUl9QVUJfU1VCX0FEQVBURVInLFxuICAgIGhlbHA6ICdMaXZlUXVlcnkgcHVic3ViIGFkYXB0ZXInLFxuICAgIGFjdGlvbjogcGFyc2Vycy5tb2R1bGVPck9iamVjdFBhcnNlcixcbiAgfSxcbiAgcmVkaXNPcHRpb25zOiB7XG4gICAgZW52OiAnUEFSU0VfTElWRV9RVUVSWV9TRVJWRVJfUkVESVNfT1BUSU9OUycsXG4gICAgaGVscDogXCJwYXJzZS1zZXJ2ZXIncyBMaXZlUXVlcnkgcmVkaXNPcHRpb25zXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm9iamVjdFBhcnNlcixcbiAgfSxcbiAgcmVkaXNVUkw6IHtcbiAgICBlbnY6ICdQQVJTRV9MSVZFX1FVRVJZX1NFUlZFUl9SRURJU19VUkwnLFxuICAgIGhlbHA6IFwicGFyc2Utc2VydmVyJ3MgTGl2ZVF1ZXJ5IHJlZGlzVVJMXCIsXG4gIH0sXG4gIHNlcnZlclVSTDoge1xuICAgIGVudjogJ1BBUlNFX0xJVkVfUVVFUllfU0VSVkVSX1NFUlZFUl9VUkwnLFxuICAgIGhlbHA6XG4gICAgICAnVGhpcyBzdHJpbmcgc2hvdWxkIG1hdGNoIHRoZSBzZXJ2ZXJVUkwgaW4gdXNlIGJ5IHlvdXIgUGFyc2UgU2VydmVyLiBJZiB5b3UgZGVwbG95IHRoZSBMaXZlUXVlcnkgc2VydmVyIGFsb25nc2lkZSBQYXJzZSBTZXJ2ZXIsIHRoZSBMaXZlUXVlcnkgc2VydmVyIHdpbGwgdHJ5IHRvIHVzZSB0aGUgc2FtZSBzZXJ2ZXJVUkwuJyxcbiAgfSxcbiAgd2Vic29ja2V0VGltZW91dDoge1xuICAgIGVudjogJ1BBUlNFX0xJVkVfUVVFUllfU0VSVkVSX1dFQlNPQ0tFVF9USU1FT1VUJyxcbiAgICBoZWxwOlxuICAgICAgJ051bWJlciBvZiBtaWxsaXNlY29uZHMgYmV0d2VlbiBwaW5nL3BvbmcgZnJhbWVzLiBUaGUgV2ViU29ja2V0IHNlcnZlciBzZW5kcyBwaW5nL3BvbmcgZnJhbWVzIHRvIHRoZSBjbGllbnRzIHRvIGtlZXAgdGhlIFdlYlNvY2tldCBhbGl2ZS4gVGhpcyB2YWx1ZSBkZWZpbmVzIHRoZSBpbnRlcnZhbCBvZiB0aGUgcGluZy9wb25nIGZyYW1lIGZyb20gdGhlIHNlcnZlciB0byBjbGllbnRzLCBkZWZhdWx0cyB0byAxMCAqIDEwMDAgbXMgKDEwIHMpLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignd2Vic29ja2V0VGltZW91dCcpLFxuICB9LFxuICB3c3NBZGFwdGVyOiB7XG4gICAgZW52OiAnUEFSU0VfTElWRV9RVUVSWV9TRVJWRVJfV1NTX0FEQVBURVInLFxuICAgIGhlbHA6ICdBZGFwdGVyIG1vZHVsZSBmb3IgdGhlIFdlYlNvY2tldFNlcnZlcicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm1vZHVsZU9yT2JqZWN0UGFyc2VyLFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLklkZW1wb3RlbmN5T3B0aW9ucyA9IHtcbiAgcGF0aHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRVhQRVJJTUVOVEFMX0lERU1QT1RFTkNZX1BBVEhTJyxcbiAgICBoZWxwOlxuICAgICAgJ0FuIGFycmF5IG9mIHBhdGhzIGZvciB3aGljaCB0aGUgZmVhdHVyZSBzaG91bGQgYmUgZW5hYmxlZC4gVGhlIG1vdW50IHBhdGggbXVzdCBub3QgYmUgaW5jbHVkZWQsIGZvciBleGFtcGxlIGluc3RlYWQgb2YgYC9wYXJzZS9mdW5jdGlvbnMvbXlGdW5jdGlvbmAgc3BlY2lmaXkgYGZ1bmN0aW9ucy9teUZ1bmN0aW9uYC4gVGhlIGVudHJpZXMgYXJlIGludGVycHJldGVkIGFzIHJlZ3VsYXIgZXhwcmVzc2lvbiwgZm9yIGV4YW1wbGUgYGZ1bmN0aW9ucy8uKmAgbWF0Y2hlcyBhbGwgZnVuY3Rpb25zLCBgam9icy8uKmAgbWF0Y2hlcyBhbGwgam9icywgYGNsYXNzZXMvLipgIG1hdGNoZXMgYWxsIGNsYXNzZXMsIGAuKmAgbWF0Y2hlcyBhbGwgcGF0aHMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYXJyYXlQYXJzZXIsXG4gICAgZGVmYXVsdDogW10sXG4gIH0sXG4gIHR0bDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9FWFBFUklNRU5UQUxfSURFTVBPVEVOQ1lfVFRMJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBkdXJhdGlvbiBpbiBzZWNvbmRzIGFmdGVyIHdoaWNoIGEgcmVxdWVzdCByZWNvcmQgaXMgZGlzY2FyZGVkIGZyb20gdGhlIGRhdGFiYXNlLCBkZWZhdWx0cyB0byAzMDBzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcigndHRsJyksXG4gICAgZGVmYXVsdDogMzAwLFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLkFjY291bnRMb2Nrb3V0T3B0aW9ucyA9IHtcbiAgZHVyYXRpb246IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfQUNDT1VOVF9MT0NLT1VUX0RVUkFUSU9OJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0aGUgZHVyYXRpb24gaW4gbWludXRlcyB0aGF0IGEgbG9ja2VkLW91dCBhY2NvdW50IHJlbWFpbnMgbG9ja2VkIG91dCBiZWZvcmUgYXV0b21hdGljYWxseSBiZWNvbWluZyB1bmxvY2tlZC48YnI+PGJyPlZhbGlkIHZhbHVlcyBhcmUgZ3JlYXRlciB0aGFuIGAwYCBhbmQgbGVzcyB0aGFuIGAxMDAwMDBgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignZHVyYXRpb24nKSxcbiAgfSxcbiAgdGhyZXNob2xkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0FDQ09VTlRfTE9DS09VVF9USFJFU0hPTEQnLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRoZSBudW1iZXIgb2YgZmFpbGVkIHNpZ24taW4gYXR0ZW1wdHMgdGhhdCB3aWxsIGNhdXNlIGEgdXNlciBhY2NvdW50IHRvIGJlIGxvY2tlZC4gSWYgdGhlIGFjY291bnQgaXMgbG9ja2VkLiBUaGUgYWNjb3VudCB3aWxsIHVubG9jayBhZnRlciB0aGUgZHVyYXRpb24gc2V0IGluIHRoZSBgZHVyYXRpb25gIG9wdGlvbiBoYXMgcGFzc2VkIGFuZCBubyBmdXJ0aGVyIGxvZ2luIGF0dGVtcHRzIGhhdmUgYmVlbiBtYWRlLjxicj48YnI+VmFsaWQgdmFsdWVzIGFyZSBncmVhdGVyIHRoYW4gYDBgIGFuZCBsZXNzIHRoYW4gYDEwMDBgLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcigndGhyZXNob2xkJyksXG4gIH0sXG4gIHVubG9ja09uUGFzc3dvcmRSZXNldDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9BQ0NPVU5UX0xPQ0tPVVRfVU5MT0NLX09OX1BBU1NXT1JEX1JFU0VUJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgIGlmIHRoZSBhY2NvdW50IHNob3VsZCBiZSB1bmxvY2tlZCBhZnRlciBhIHN1Y2Nlc3NmdWwgcGFzc3dvcmQgcmVzZXQuPGJyPjxicj5EZWZhdWx0IGlzIGBmYWxzZWAuPGJyPlJlcXVpcmVzIG9wdGlvbnMgYGR1cmF0aW9uYCBhbmQgYHRocmVzaG9sZGAgdG8gYmUgc2V0LicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG59O1xubW9kdWxlLmV4cG9ydHMuUGFzc3dvcmRQb2xpY3lPcHRpb25zID0ge1xuICBkb05vdEFsbG93VXNlcm5hbWU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFTU1dPUkRfUE9MSUNZX0RPX05PVF9BTExPV19VU0VSTkFNRScsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdG8gYHRydWVgIHRvIGRpc2FsbG93IHRoZSB1c2VybmFtZSBhcyBwYXJ0IG9mIHRoZSBwYXNzd29yZC48YnI+PGJyPkRlZmF1bHQgaXMgYGZhbHNlYC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBtYXhQYXNzd29yZEFnZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQVNTV09SRF9QT0xJQ1lfTUFYX1BBU1NXT1JEX0FHRScsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdGhlIG51bWJlciBvZiBkYXlzIGFmdGVyIHdoaWNoIGEgcGFzc3dvcmQgZXhwaXJlcy4gTG9naW4gYXR0ZW1wdHMgZmFpbCBpZiB0aGUgdXNlciBkb2VzIG5vdCByZXNldCB0aGUgcGFzc3dvcmQgYmVmb3JlIGV4cGlyYXRpb24uJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdtYXhQYXNzd29yZEFnZScpLFxuICB9LFxuICBtYXhQYXNzd29yZEhpc3Rvcnk6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFTU1dPUkRfUE9MSUNZX01BWF9QQVNTV09SRF9ISVNUT1JZJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0aGUgbnVtYmVyIG9mIHByZXZpb3VzIHBhc3N3b3JkIHRoYXQgd2lsbCBub3QgYmUgYWxsb3dlZCB0byBiZSBzZXQgYXMgbmV3IHBhc3N3b3JkLiBJZiB0aGUgb3B0aW9uIGlzIG5vdCBzZXQgb3Igc2V0IHRvIGAwYCwgbm8gcHJldmlvdXMgcGFzc3dvcmRzIHdpbGwgYmUgY29uc2lkZXJlZC48YnI+PGJyPlZhbGlkIHZhbHVlcyBhcmUgPj0gYDBgIGFuZCA8PSBgMjBgLjxicj5EZWZhdWx0IGlzIGAwYC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ21heFBhc3N3b3JkSGlzdG9yeScpLFxuICB9LFxuICByZXNldFBhc3N3b3JkU3VjY2Vzc09uSW52YWxpZEVtYWlsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBU1NXT1JEX1BPTElDWV9SRVNFVF9QQVNTV09SRF9TVUNDRVNTX09OX0lOVkFMSURfRU1BSUwnLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRvIGB0cnVlYCBpZiBhIHJlcXVlc3QgdG8gcmVzZXQgdGhlIHBhc3N3b3JkIHNob3VsZCByZXR1cm4gYSBzdWNjZXNzIHJlc3BvbnNlIGV2ZW4gaWYgdGhlIHByb3ZpZGVkIGVtYWlsIGFkZHJlc3MgaXMgaW52YWxpZCwgb3IgYGZhbHNlYCBpZiB0aGUgcmVxdWVzdCBzaG91bGQgcmV0dXJuIGFuIGVycm9yIHJlc3BvbnNlIGlmIHRoZSBlbWFpbCBhZGRyZXNzIGlzIGludmFsaWQuPGJyPjxicj5EZWZhdWx0IGlzIGB0cnVlYC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIHJlc2V0VG9rZW5SZXVzZUlmVmFsaWQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFTU1dPUkRfUE9MSUNZX1JFU0VUX1RPS0VOX1JFVVNFX0lGX1ZBTElEJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgaWYgYSBwYXNzd29yZCByZXNldCB0b2tlbiBzaG91bGQgYmUgcmV1c2VkIGluIGNhc2UgYW5vdGhlciB0b2tlbiBpcyByZXF1ZXN0ZWQgYnV0IHRoZXJlIGlzIGEgdG9rZW4gdGhhdCBpcyBzdGlsbCB2YWxpZCwgaS5lLiBoYXMgbm90IGV4cGlyZWQuIFRoaXMgYXZvaWRzIHRoZSBvZnRlbiBvYnNlcnZlZCBpc3N1ZSB0aGF0IGEgdXNlciByZXF1ZXN0cyBtdWx0aXBsZSBlbWFpbHMgYW5kIGRvZXMgbm90IGtub3cgd2hpY2ggbGluayBjb250YWlucyBhIHZhbGlkIHRva2VuIGJlY2F1c2UgZWFjaCBuZXdseSBnZW5lcmF0ZWQgdG9rZW4gd291bGQgaW52YWxpZGF0ZSB0aGUgcHJldmlvdXMgdG9rZW4uPGJyPjxicj5EZWZhdWx0IGlzIGBmYWxzZWAuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgcmVzZXRUb2tlblZhbGlkaXR5RHVyYXRpb246IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfUEFTU1dPUkRfUE9MSUNZX1JFU0VUX1RPS0VOX1ZBTElESVRZX0RVUkFUSU9OJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0aGUgdmFsaWRpdHkgZHVyYXRpb24gb2YgdGhlIHBhc3N3b3JkIHJlc2V0IHRva2VuIGluIHNlY29uZHMgYWZ0ZXIgd2hpY2ggdGhlIHRva2VuIGV4cGlyZXMuIFRoZSB0b2tlbiBpcyB1c2VkIGluIHRoZSBsaW5rIHRoYXQgaXMgc2V0IGluIHRoZSBlbWFpbC4gQWZ0ZXIgdGhlIHRva2VuIGV4cGlyZXMsIHRoZSBsaW5rIGJlY29tZXMgaW52YWxpZCBhbmQgYSBuZXcgbGluayBoYXMgdG8gYmUgc2VudC4gSWYgdGhlIG9wdGlvbiBpcyBub3Qgc2V0IG9yIHNldCB0byBgdW5kZWZpbmVkYCwgdGhlbiB0aGUgdG9rZW4gbmV2ZXIgZXhwaXJlcy48YnI+PGJyPkZvciBleGFtcGxlLCB0byBleHBpcmUgdGhlIHRva2VuIGFmdGVyIDIgaG91cnMsIHNldCBhIHZhbHVlIG9mIDcyMDAgc2Vjb25kcyAoPSA2MCBzZWNvbmRzICogNjAgbWludXRlcyAqIDIgaG91cnMpLjxicj48YnI+RGVmYXVsdCBpcyBgdW5kZWZpbmVkYC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ3Jlc2V0VG9rZW5WYWxpZGl0eUR1cmF0aW9uJyksXG4gIH0sXG4gIHZhbGlkYXRpb25FcnJvcjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9QQVNTV09SRF9QT0xJQ1lfVkFMSURBVElPTl9FUlJPUicsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdGhlIGVycm9yIG1lc3NhZ2UgdG8gYmUgc2VudC48YnI+PGJyPkRlZmF1bHQgaXMgYFBhc3N3b3JkIGRvZXMgbm90IG1lZXQgdGhlIFBhc3N3b3JkIFBvbGljeSByZXF1aXJlbWVudHMuYCcsXG4gIH0sXG4gIHZhbGlkYXRvckNhbGxiYWNrOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBU1NXT1JEX1BPTElDWV9WQUxJREFUT1JfQ0FMTEJBQ0snLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IGEgY2FsbGJhY2sgZnVuY3Rpb24gdG8gdmFsaWRhdGUgYSBwYXNzd29yZCB0byBiZSBhY2NlcHRlZC48YnI+PGJyPklmIHVzZWQgaW4gY29tYmluYXRpb24gd2l0aCBgdmFsaWRhdG9yUGF0dGVybmAsIHRoZSBwYXNzd29yZCBtdXN0IHBhc3MgYm90aCB0byBiZSBhY2NlcHRlZC4nLFxuICB9LFxuICB2YWxpZGF0b3JQYXR0ZXJuOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX1BBU1NXT1JEX1BPTElDWV9WQUxJREFUT1JfUEFUVEVSTicsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdGhlIHJlZ3VsYXIgZXhwcmVzc2lvbiB2YWxpZGF0aW9uIHBhdHRlcm4gYSBwYXNzd29yZCBtdXN0IG1hdGNoIHRvIGJlIGFjY2VwdGVkLjxicj48YnI+SWYgdXNlZCBpbiBjb21iaW5hdGlvbiB3aXRoIGB2YWxpZGF0b3JDYWxsYmFja2AsIHRoZSBwYXNzd29yZCBtdXN0IHBhc3MgYm90aCB0byBiZSBhY2NlcHRlZC4nLFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLkZpbGVVcGxvYWRPcHRpb25zID0ge1xuICBlbmFibGVGb3JBbm9ueW1vdXNVc2VyOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0ZJTEVfVVBMT0FEX0VOQUJMRV9GT1JfQU5PTllNT1VTX1VTRVInLFxuICAgIGhlbHA6ICdJcyB0cnVlIGlmIGZpbGUgdXBsb2FkIHNob3VsZCBiZSBhbGxvd2VkIGZvciBhbm9ueW1vdXMgdXNlcnMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgZW5hYmxlRm9yQXV0aGVudGljYXRlZFVzZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRklMRV9VUExPQURfRU5BQkxFX0ZPUl9BVVRIRU5USUNBVEVEX1VTRVInLFxuICAgIGhlbHA6ICdJcyB0cnVlIGlmIGZpbGUgdXBsb2FkIHNob3VsZCBiZSBhbGxvd2VkIGZvciBhdXRoZW50aWNhdGVkIHVzZXJzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgZW5hYmxlRm9yUHVibGljOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0ZJTEVfVVBMT0FEX0VOQUJMRV9GT1JfUFVCTElDJyxcbiAgICBoZWxwOiAnSXMgdHJ1ZSBpZiBmaWxlIHVwbG9hZCBzaG91bGQgYmUgYWxsb3dlZCBmb3IgYW55b25lLCByZWdhcmRsZXNzIG9mIHVzZXIgYXV0aGVudGljYXRpb24uJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgZmlsZUV4dGVuc2lvbnM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfRklMRV9VUExPQURfRklMRV9FWFRFTlNJT05TJyxcbiAgICBoZWxwOlxuICAgICAgXCJTZXRzIHRoZSBhbGxvd2VkIGZpbGUgZXh0ZW5zaW9ucyBmb3IgdXBsb2FkaW5nIGZpbGVzLiBUaGUgZXh0ZW5zaW9uIGlzIGRlZmluZWQgYXMgYW4gYXJyYXkgb2YgZmlsZSBleHRlbnNpb25zLCBvciBhIHJlZ2V4IHBhdHRlcm4uPGJyPjxicj5JdCBpcyByZWNvbW1lbmRlZCB0byByZXN0cmljdCB0aGUgZmlsZSB1cGxvYWQgZXh0ZW5zaW9ucyBhcyBtdWNoIGFzIHBvc3NpYmxlLiBIVE1MIGZpbGVzIGFyZSBlc3BlY2lhbGx5IHByb2JsZW1hdGljIGFzIHRoZXkgbWF5IGJlIHVzZWQgYnkgYW4gYXR0YWNrZXIgd2hvIHVwbG9hZHMgYSBIVE1MIGZvcm0gdG8gbG9vayBsZWdpdGltYXRlIHVuZGVyIHlvdXIgYXBwJ3MgZG9tYWluIG5hbWUsIG9yIHRvIGNvbXByb21pc2UgdGhlIHNlc3Npb24gdG9rZW4gb2YgYW5vdGhlciB1c2VyIHZpYSBhY2Nlc3NpbmcgdGhlIGJyb3dzZXIncyBsb2NhbCBzdG9yYWdlLjxicj48YnI+RGVmYXVsdHMgdG8gYF4oPyFbeFhzU10/W2hIXVt0VF1bbU1dW2xMXT8kKWAgd2hpY2ggYWxsb3dzIGFueSBmaWxlIGV4dGVuc2lvbiBleGNlcHQgdGhvc2UgTUlNRSB0eXBlcyB0aGF0IGFyZSBtYXBwZWQgdG8gYHRleHQvaHRtbGAgYW5kIGFyZSByZW5kZXJlZCBhcyB3ZWJzaXRlIGJ5IGEgd2ViIGJyb3dzZXIuXCIsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmFycmF5UGFyc2VyLFxuICAgIGRlZmF1bHQ6IFsnXig/IVt4WHNTXT9baEhdW3RUXVttTV1bbExdPyQpJ10sXG4gIH0sXG59O1xuLyogVGhlIGF2YWlsYWJsZSBsb2cgbGV2ZWxzIGZvciBQYXJzZSBTZXJ2ZXIgbG9nZ2luZy4gVmFsaWQgdmFsdWVzIGFyZTo8YnI+LSBgJ2Vycm9yJ2AgLSBFcnJvciBsZXZlbCAoaGlnaGVzdCBwcmlvcml0eSk8YnI+LSBgJ3dhcm4nYCAtIFdhcm5pbmcgbGV2ZWw8YnI+LSBgJ2luZm8nYCAtIEluZm8gbGV2ZWwgKGRlZmF1bHQpPGJyPi0gYCd2ZXJib3NlJ2AgLSBWZXJib3NlIGxldmVsPGJyPi0gYCdkZWJ1ZydgIC0gRGVidWcgbGV2ZWw8YnI+LSBgJ3NpbGx5J2AgLSBTaWxseSBsZXZlbCAobG93ZXN0IHByaW9yaXR5KSAqL1xubW9kdWxlLmV4cG9ydHMuTG9nTGV2ZWwgPSB7XG4gIGRlYnVnOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xPR19MRVZFTF9ERUJVRycsXG4gICAgaGVscDogJ0RlYnVnIGxldmVsJyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgZXJyb3I6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMX0VSUk9SJyxcbiAgICBoZWxwOiAnRXJyb3IgbGV2ZWwgLSBoaWdoZXN0IHByaW9yaXR5JyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgaW5mbzoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MT0dfTEVWRUxfSU5GTycsXG4gICAgaGVscDogJ0luZm8gbGV2ZWwgLSBkZWZhdWx0JyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbiAgc2lsbHk6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMX1NJTExZJyxcbiAgICBoZWxwOiAnU2lsbHkgbGV2ZWwgLSBsb3dlc3QgcHJpb3JpdHknLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxuICB2ZXJib3NlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0xPR19MRVZFTF9WRVJCT1NFJyxcbiAgICBoZWxwOiAnVmVyYm9zZSBsZXZlbCcsXG4gICAgcmVxdWlyZWQ6IHRydWUsXG4gIH0sXG4gIHdhcm46IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMX1dBUk4nLFxuICAgIGhlbHA6ICdXYXJuaW5nIGxldmVsJyxcbiAgICByZXF1aXJlZDogdHJ1ZSxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5Mb2dDbGllbnRFdmVudCA9IHtcbiAga2V5czoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9MT0dfQ0xJRU5UX0VWRU5UU19LRVlTJyxcbiAgICBoZWxwOlxuICAgICAgJ09wdGlvbmFsIGFycmF5IG9mIGRvdC1ub3RhdGlvbiBwYXRocyB0byBleHRyYWN0IHNwZWNpZmljIGRhdGEgZnJvbSB0aGUgZXZlbnQgb2JqZWN0LiBJZiBub3QgcHJvdmlkZWQgb3IgZW1wdHksIHRoZSBlbnRpcmUgZXZlbnQgb2JqZWN0IHdpbGwgYmUgbG9nZ2VkLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmFycmF5UGFyc2VyLFxuICB9LFxuICBsb2dMZXZlbDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9MT0dfQ0xJRU5UX0VWRU5UU19MT0dfTEVWRUwnLFxuICAgIGhlbHA6XG4gICAgICBcIlRoZSBsb2cgbGV2ZWwgdG8gdXNlIGZvciB0aGlzIGV2ZW50LiBTZWUgW0xvZ0xldmVsXShMb2dMZXZlbC5odG1sKSBmb3IgYXZhaWxhYmxlIHZhbHVlcy4gRGVmYXVsdHMgdG8gYCdpbmZvJ2AuXCIsXG4gICAgZGVmYXVsdDogJ2luZm8nLFxuICB9LFxuICBuYW1lOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0xPR19DTElFTlRfRVZFTlRTX05BTUUnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIGV2ZW50IG5hbWUgdG8gbGlzdGVuIGZvci4gU2VlIHRoZSBbTW9uZ29EQiBkcml2ZXIgZXZlbnRzIGRvY3VtZW50YXRpb25dKGh0dHBzOi8vd3d3Lm1vbmdvZGIuY29tL2RvY3MvZHJpdmVycy9ub2RlL2N1cnJlbnQvZnVuZGFtZW50YWxzL21vbml0b3JpbmcvKSBmb3IgYXZhaWxhYmxlIGV2ZW50cy4nLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLkRhdGFiYXNlT3B0aW9ucyA9IHtcbiAgYWxsb3dQdWJsaWNFeHBsYWluOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0FMTE9XX1BVQkxJQ19FWFBMQUlOJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgdG8gYWxsb3cgYFBhcnNlLlF1ZXJ5LmV4cGxhaW5gIHdpdGhvdXQgbWFzdGVyIGtleS48YnI+PGJyPlxcdTI2QTBcXHVGRTBGIEVuYWJsaW5nIHRoaXMgb3B0aW9uIG1heSBleHBvc2Ugc2Vuc2l0aXZlIHF1ZXJ5IHBlcmZvcm1hbmNlIGRhdGEgdG8gdW5hdXRob3JpemVkIHVzZXJzIGFuZCBjb3VsZCBwb3RlbnRpYWxseSBiZSBleHBsb2l0ZWQgZm9yIG1hbGljaW91cyBwdXJwb3Nlcy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IGZhbHNlLFxuICB9LFxuICBhcHBOYW1lOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0FQUF9OQU1FJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgbmFtZSBvZiB0aGUgYXBwbGljYXRpb24gdGhhdCBjcmVhdGVkIHRoaXMgTW9uZ29DbGllbnQgaW5zdGFuY2UuJyxcbiAgfSxcbiAgYXV0aE1lY2hhbmlzbToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9BVVRIX01FQ0hBTklTTScsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIGF1dGhlbnRpY2F0aW9uIG1lY2hhbmlzbSB0aGF0IE1vbmdvREIgd2lsbCB1c2UgdG8gYXV0aGVudGljYXRlIHRoZSBjb25uZWN0aW9uLicsXG4gIH0sXG4gIGF1dGhNZWNoYW5pc21Qcm9wZXJ0aWVzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0FVVEhfTUVDSEFOSVNNX1BST1BFUlRJRVMnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHByb3BlcnRpZXMgZm9yIHRoZSBzcGVjaWZpZWQgYXV0aE1lY2hhbmlzbSBhcyBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIGNvbG9uLXNlcGFyYXRlZCBrZXktdmFsdWUgcGFpcnMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMub2JqZWN0UGFyc2VyLFxuICB9LFxuICBhdXRoU291cmNlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0FVVEhfU09VUkNFJyxcbiAgICBoZWxwOlxuICAgICAgXCJUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIGRhdGFiYXNlIG5hbWUgYXNzb2NpYXRlZCB3aXRoIHRoZSB1c2VyJ3MgY3JlZGVudGlhbHMuXCIsXG4gIH0sXG4gIGF1dG9TZWxlY3RGYW1pbHk6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQVVUT19TRUxFQ1RfRkFNSUxZJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc2V0IHdoZXRoZXIgdGhlIHNvY2tldCBhdHRlbXB0cyB0byBjb25uZWN0IHRvIElQdjYgYW5kIElQdjQgYWRkcmVzc2VzIHVudGlsIGEgY29ubmVjdGlvbiBpcyBlc3RhYmxpc2hlZC4gSWYgYXZhaWxhYmxlLCB0aGUgZHJpdmVyIHdpbGwgc2VsZWN0IHRoZSBmaXJzdCBJUHY2IGFkZHJlc3MuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgYXV0b1NlbGVjdEZhbWlseUF0dGVtcHRUaW1lb3V0OiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0FVVE9fU0VMRUNUX0ZBTUlMWV9BVFRFTVBUX1RJTUVPVVQnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBhbW91bnQgb2YgdGltZSBpbiBtaWxsaXNlY29uZHMgdG8gd2FpdCBmb3IgYSBjb25uZWN0aW9uIGF0dGVtcHQgdG8gZmluaXNoIGJlZm9yZSB0cnlpbmcgdGhlIG5leHQgYWRkcmVzcyB3aGVuIHVzaW5nIHRoZSBhdXRvU2VsZWN0RmFtaWx5IG9wdGlvbi4gSWYgc2V0IHRvIGEgcG9zaXRpdmUgaW50ZWdlciBsZXNzIHRoYW4gMTAsIHRoZSB2YWx1ZSAxMCBpcyB1c2VkIGluc3RlYWQuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdhdXRvU2VsZWN0RmFtaWx5QXR0ZW1wdFRpbWVvdXQnKSxcbiAgfSxcbiAgY2xpZW50TWV0YWRhdGE6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQ0xJRU5UX01FVEFEQVRBJyxcbiAgICBoZWxwOlxuICAgICAgXCJDdXN0b20gbWV0YWRhdGEgdG8gYXBwZW5kIHRvIGRhdGFiYXNlIGNsaWVudCBjb25uZWN0aW9ucyBmb3IgaWRlbnRpZnlpbmcgUGFyc2UgU2VydmVyIGluc3RhbmNlcyBpbiBkYXRhYmFzZSBsb2dzLiBJZiBzZXQsIHRoaXMgbWV0YWRhdGEgd2lsbCBiZSB2aXNpYmxlIGluIGRhdGFiYXNlIGxvZ3MgZHVyaW5nIGNvbm5lY3Rpb24gaGFuZHNoYWtlcy4gVGhpcyBjYW4gaGVscCB3aXRoIGRlYnVnZ2luZyBhbmQgbW9uaXRvcmluZyBpbiBkZXBsb3ltZW50cyB3aXRoIG11bHRpcGxlIGRhdGFiYXNlIGNsaWVudHMuIFNldCBgbmFtZWAgdG8gaWRlbnRpZnkgeW91ciBhcHBsaWNhdGlvbiAoZS5nLiwgJ015QXBwJykgYW5kIGB2ZXJzaW9uYCB0byB5b3VyIGFwcGxpY2F0aW9uJ3MgdmVyc2lvbi4gTGVhdmUgdW5kZWZpbmVkIChkZWZhdWx0KSB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZSBhbmQgYXZvaWQgdGhlIGFkZGl0aW9uYWwgZGF0YSB0cmFuc2ZlciBvdmVyaGVhZC5cIixcbiAgICBhY3Rpb246IHBhcnNlcnMub2JqZWN0UGFyc2VyLFxuICAgIHR5cGU6ICdEYXRhYmFzZU9wdGlvbnNDbGllbnRNZXRhZGF0YScsXG4gIH0sXG4gIGNvbXByZXNzb3JzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0NPTVBSRVNTT1JTJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSBhbiBhcnJheSBvciBjb21tYS1kZWxpbWl0ZWQgc3RyaW5nIG9mIGNvbXByZXNzb3JzIHRvIGVuYWJsZSBuZXR3b3JrIGNvbXByZXNzaW9uIGZvciBjb21tdW5pY2F0aW9uIGJldHdlZW4gdGhpcyBjbGllbnQgYW5kIGEgbW9uZ29kL21vbmdvcyBpbnN0YW5jZS4nLFxuICB9LFxuICBjb25uZWN0VGltZW91dE1TOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0NPTk5FQ1RfVElNRU9VVF9NUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIGFtb3VudCBvZiB0aW1lLCBpbiBtaWxsaXNlY29uZHMsIHRvIHdhaXQgdG8gZXN0YWJsaXNoIGEgc2luZ2xlIFRDUCBzb2NrZXQgY29ubmVjdGlvbiB0byB0aGUgc2VydmVyIGJlZm9yZSByYWlzaW5nIGFuIGVycm9yLiBTcGVjaWZ5aW5nIDAgZGlzYWJsZXMgdGhlIGNvbm5lY3Rpb24gdGltZW91dC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ2Nvbm5lY3RUaW1lb3V0TVMnKSxcbiAgfSxcbiAgY3JlYXRlSW5kZXhSb2xlTmFtZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9DUkVBVEVfSU5ERVhfUk9MRV9OQU1FJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgdG8gYXV0b21hdGljYWxseSBjcmVhdGUgYSB1bmlxdWUgaW5kZXggb24gdGhlIG5hbWUgZmllbGQgb2YgdGhlIF9Sb2xlIGNvbGxlY3Rpb24gb24gc2VydmVyIHN0YXJ0LiBTZXQgdG8gYGZhbHNlYCB0byBza2lwIGluZGV4IGNyZWF0aW9uLiBEZWZhdWx0IGlzIGB0cnVlYC48YnI+PGJyPlxcdTI2QTBcXHVGRTBGIFdoZW4gc2V0dGluZyB0aGlzIG9wdGlvbiB0byBgZmFsc2VgIHRvIG1hbnVhbGx5IGNyZWF0ZSB0aGUgaW5kZXgsIGtlZXAgaW4gbWluZCB0aGF0IHRoZSBvdGhlcndpc2UgYXV0b21hdGljYWxseSBjcmVhdGVkIGluZGV4IG1heSBjaGFuZ2UgaW4gdGhlIGZ1dHVyZSB0byBiZSBvcHRpbWl6ZWQgZm9yIHRoZSBpbnRlcm5hbCB1c2FnZSBieSBQYXJzZSBTZXJ2ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICB9LFxuICBjcmVhdGVJbmRleFVzZXJFbWFpbDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9DUkVBVEVfSU5ERVhfVVNFUl9FTUFJTCcsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdG8gYHRydWVgIHRvIGF1dG9tYXRpY2FsbHkgY3JlYXRlIGluZGV4ZXMgb24gdGhlIGVtYWlsIGZpZWxkIG9mIHRoZSBfVXNlciBjb2xsZWN0aW9uIG9uIHNlcnZlciBzdGFydC4gU2V0IHRvIGBmYWxzZWAgdG8gc2tpcCBpbmRleCBjcmVhdGlvbi4gRGVmYXVsdCBpcyBgdHJ1ZWAuPGJyPjxicj5cXHUyNkEwXFx1RkUwRiBXaGVuIHNldHRpbmcgdGhpcyBvcHRpb24gdG8gYGZhbHNlYCB0byBtYW51YWxseSBjcmVhdGUgdGhlIGluZGV4LCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgb3RoZXJ3aXNlIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCBpbmRleCBtYXkgY2hhbmdlIGluIHRoZSBmdXR1cmUgdG8gYmUgb3B0aW1pemVkIGZvciB0aGUgaW50ZXJuYWwgdXNhZ2UgYnkgUGFyc2UgU2VydmVyLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgY3JlYXRlSW5kZXhVc2VyRW1haWxDYXNlSW5zZW5zaXRpdmU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQ1JFQVRFX0lOREVYX1VTRVJfRU1BSUxfQ0FTRV9JTlNFTlNJVElWRScsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdG8gYHRydWVgIHRvIGF1dG9tYXRpY2FsbHkgY3JlYXRlIGEgY2FzZS1pbnNlbnNpdGl2ZSBpbmRleCBvbiB0aGUgZW1haWwgZmllbGQgb2YgdGhlIF9Vc2VyIGNvbGxlY3Rpb24gb24gc2VydmVyIHN0YXJ0LiBTZXQgdG8gYGZhbHNlYCB0byBza2lwIGluZGV4IGNyZWF0aW9uLiBEZWZhdWx0IGlzIGB0cnVlYC48YnI+PGJyPlxcdTI2QTBcXHVGRTBGIFdoZW4gc2V0dGluZyB0aGlzIG9wdGlvbiB0byBgZmFsc2VgIHRvIG1hbnVhbGx5IGNyZWF0ZSB0aGUgaW5kZXgsIGtlZXAgaW4gbWluZCB0aGF0IHRoZSBvdGhlcndpc2UgYXV0b21hdGljYWxseSBjcmVhdGVkIGluZGV4IG1heSBjaGFuZ2UgaW4gdGhlIGZ1dHVyZSB0byBiZSBvcHRpbWl6ZWQgZm9yIHRoZSBpbnRlcm5hbCB1c2FnZSBieSBQYXJzZSBTZXJ2ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiB0cnVlLFxuICB9LFxuICBjcmVhdGVJbmRleFVzZXJFbWFpbFZlcmlmeVRva2VuOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0NSRUFURV9JTkRFWF9VU0VSX0VNQUlMX1ZFUklGWV9UT0tFTicsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdG8gYHRydWVgIHRvIGF1dG9tYXRpY2FsbHkgY3JlYXRlIGFuIGluZGV4IG9uIHRoZSBfZW1haWxfdmVyaWZ5X3Rva2VuIGZpZWxkIG9mIHRoZSBfVXNlciBjb2xsZWN0aW9uIG9uIHNlcnZlciBzdGFydC4gU2V0IHRvIGBmYWxzZWAgdG8gc2tpcCBpbmRleCBjcmVhdGlvbi4gRGVmYXVsdCBpcyBgdHJ1ZWAuPGJyPjxicj5cXHUyNkEwXFx1RkUwRiBXaGVuIHNldHRpbmcgdGhpcyBvcHRpb24gdG8gYGZhbHNlYCB0byBtYW51YWxseSBjcmVhdGUgdGhlIGluZGV4LCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgb3RoZXJ3aXNlIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCBpbmRleCBtYXkgY2hhbmdlIGluIHRoZSBmdXR1cmUgdG8gYmUgb3B0aW1pemVkIGZvciB0aGUgaW50ZXJuYWwgdXNhZ2UgYnkgUGFyc2UgU2VydmVyLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgY3JlYXRlSW5kZXhVc2VyUGFzc3dvcmRSZXNldFRva2VuOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0NSRUFURV9JTkRFWF9VU0VSX1BBU1NXT1JEX1JFU0VUX1RPS0VOJyxcbiAgICBoZWxwOlxuICAgICAgJ1NldCB0byBgdHJ1ZWAgdG8gYXV0b21hdGljYWxseSBjcmVhdGUgYW4gaW5kZXggb24gdGhlIF9wZXJpc2hhYmxlX3Rva2VuIGZpZWxkIG9mIHRoZSBfVXNlciBjb2xsZWN0aW9uIG9uIHNlcnZlciBzdGFydC4gU2V0IHRvIGBmYWxzZWAgdG8gc2tpcCBpbmRleCBjcmVhdGlvbi4gRGVmYXVsdCBpcyBgdHJ1ZWAuPGJyPjxicj5cXHUyNkEwXFx1RkUwRiBXaGVuIHNldHRpbmcgdGhpcyBvcHRpb24gdG8gYGZhbHNlYCB0byBtYW51YWxseSBjcmVhdGUgdGhlIGluZGV4LCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgb3RoZXJ3aXNlIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCBpbmRleCBtYXkgY2hhbmdlIGluIHRoZSBmdXR1cmUgdG8gYmUgb3B0aW1pemVkIGZvciB0aGUgaW50ZXJuYWwgdXNhZ2UgYnkgUGFyc2UgU2VydmVyLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgY3JlYXRlSW5kZXhVc2VyVXNlcm5hbWU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfQ1JFQVRFX0lOREVYX1VTRVJfVVNFUk5BTUUnLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRvIGB0cnVlYCB0byBhdXRvbWF0aWNhbGx5IGNyZWF0ZSBpbmRleGVzIG9uIHRoZSB1c2VybmFtZSBmaWVsZCBvZiB0aGUgX1VzZXIgY29sbGVjdGlvbiBvbiBzZXJ2ZXIgc3RhcnQuIFNldCB0byBgZmFsc2VgIHRvIHNraXAgaW5kZXggY3JlYXRpb24uIERlZmF1bHQgaXMgYHRydWVgLjxicj48YnI+XFx1MjZBMFxcdUZFMEYgV2hlbiBzZXR0aW5nIHRoaXMgb3B0aW9uIHRvIGBmYWxzZWAgdG8gbWFudWFsbHkgY3JlYXRlIHRoZSBpbmRleCwga2VlcCBpbiBtaW5kIHRoYXQgdGhlIG90aGVyd2lzZSBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQgaW5kZXggbWF5IGNoYW5nZSBpbiB0aGUgZnV0dXJlIHRvIGJlIG9wdGltaXplZCBmb3IgdGhlIGludGVybmFsIHVzYWdlIGJ5IFBhcnNlIFNlcnZlci4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICAgIGRlZmF1bHQ6IHRydWUsXG4gIH0sXG4gIGNyZWF0ZUluZGV4VXNlclVzZXJuYW1lQ2FzZUluc2Vuc2l0aXZlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0NSRUFURV9JTkRFWF9VU0VSX1VTRVJOQU1FX0NBU0VfSU5TRU5TSVRJVkUnLFxuICAgIGhlbHA6XG4gICAgICAnU2V0IHRvIGB0cnVlYCB0byBhdXRvbWF0aWNhbGx5IGNyZWF0ZSBhIGNhc2UtaW5zZW5zaXRpdmUgaW5kZXggb24gdGhlIHVzZXJuYW1lIGZpZWxkIG9mIHRoZSBfVXNlciBjb2xsZWN0aW9uIG9uIHNlcnZlciBzdGFydC4gU2V0IHRvIGBmYWxzZWAgdG8gc2tpcCBpbmRleCBjcmVhdGlvbi4gRGVmYXVsdCBpcyBgdHJ1ZWAuPGJyPjxicj5cXHUyNkEwXFx1RkUwRiBXaGVuIHNldHRpbmcgdGhpcyBvcHRpb24gdG8gYGZhbHNlYCB0byBtYW51YWxseSBjcmVhdGUgdGhlIGluZGV4LCBrZWVwIGluIG1pbmQgdGhhdCB0aGUgb3RoZXJ3aXNlIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCBpbmRleCBtYXkgY2hhbmdlIGluIHRoZSBmdXR1cmUgdG8gYmUgb3B0aW1pemVkIGZvciB0aGUgaW50ZXJuYWwgdXNhZ2UgYnkgUGFyc2UgU2VydmVyLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogdHJ1ZSxcbiAgfSxcbiAgZGlyZWN0Q29ubmVjdGlvbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9ESVJFQ1RfQ09OTkVDVElPTicsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIGZvcmNlIGEgU2luZ2xlIHRvcG9sb2d5IHR5cGUgd2l0aCBhIGNvbm5lY3Rpb24gc3RyaW5nIGNvbnRhaW5pbmcgb25lIGhvc3QuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgZGlzYWJsZUluZGV4RmllbGRWYWxpZGF0aW9uOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0RJU0FCTEVfSU5ERVhfRklFTERfVkFMSURBVElPTicsXG4gICAgaGVscDpcbiAgICAgICdTZXQgdG8gYHRydWVgIHRvIGRpc2FibGUgdmFsaWRhdGlvbiBvZiBpbmRleCBmaWVsZHMuIFdoZW4gZGlzYWJsZWQsIGluZGV4ZXMgY2FuIGJlIGNyZWF0ZWQgZXZlbiBpZiB0aGUgZmllbGRzIGRvIG5vdCBleGlzdCBpbiB0aGUgc2NoZW1hLiBUaGlzIGNhbiBiZSB1c2VmdWwgd2hlbiBjcmVhdGluZyBpbmRleGVzIG9uIGZpZWxkcyB0aGF0IHdpbGwgYmUgYWRkZWQgbGF0ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgZW5hYmxlU2NoZW1hSG9va3M6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfRU5BQkxFX1NDSEVNQV9IT09LUycsXG4gICAgaGVscDpcbiAgICAgICdFbmFibGVzIGRhdGFiYXNlIHJlYWwtdGltZSBob29rcyB0byB1cGRhdGUgc2luZ2xlIHNjaGVtYSBjYWNoZS4gU2V0IHRvIGB0cnVlYCBpZiB1c2luZyBtdWx0aXBsZSBQYXJzZSBTZXJ2ZXJzIGluc3RhbmNlcyBjb25uZWN0ZWQgdG8gdGhlIHNhbWUgZGF0YWJhc2UuIEZhaWxpbmcgdG8gZG8gc28gd2lsbCBjYXVzZSBhIHNjaGVtYSBjaGFuZ2UgdG8gbm90IHByb3BhZ2F0ZSB0byBhbGwgaW5zdGFuY2VzIGFuZCByZS1zeW5jaW5nIHdpbGwgb25seSBoYXBwZW4gd2hlbiB0aGUgaW5zdGFuY2VzIHJlc3RhcnQuIFRvIHVzZSB0aGlzIGZlYXR1cmUgd2l0aCBNb25nb0RCLCBhIHJlcGxpY2Egc2V0IGNsdXN0ZXIgd2l0aCBbY2hhbmdlIHN0cmVhbV0oaHR0cHM6Ly9kb2NzLm1vbmdvZGIuY29tL21hbnVhbC9jaGFuZ2VTdHJlYW1zLyNhdmFpbGFiaWxpdHkpIHN1cHBvcnQgaXMgcmVxdWlyZWQuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgICBkZWZhdWx0OiBmYWxzZSxcbiAgfSxcbiAgZm9yY2VTZXJ2ZXJPYmplY3RJZDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9GT1JDRV9TRVJWRVJfT0JKRUNUX0lEJyxcbiAgICBoZWxwOiAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBmb3JjZSBzZXJ2ZXIgdG8gYXNzaWduIF9pZCB2YWx1ZXMgaW5zdGVhZCBvZiBkcml2ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgaGVhcnRiZWF0RnJlcXVlbmN5TVM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfSEVBUlRCRUFUX0ZSRVFVRU5DWV9NUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIGZyZXF1ZW5jeSBpbiBtaWxsaXNlY29uZHMgYXQgd2hpY2ggdGhlIGRyaXZlciBjaGVja3MgdGhlIHN0YXRlIG9mIHRoZSBNb25nb0RCIGRlcGxveW1lbnQuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdoZWFydGJlYXRGcmVxdWVuY3lNUycpLFxuICB9LFxuICBsb2FkQmFsYW5jZWQ6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfTE9BRF9CQUxBTkNFRCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIGluc3RydWN0IHRoZSBkcml2ZXIgaXQgaXMgY29ubmVjdGluZyB0byBhIGxvYWQgYmFsYW5jZXIgZnJvbnRpbmcgYSBtb25nb3MgbGlrZSBzZXJ2aWNlLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gIH0sXG4gIGxvY2FsVGhyZXNob2xkTVM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfTE9DQUxfVEhSRVNIT0xEX01TJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgc2l6ZSAoaW4gbWlsbGlzZWNvbmRzKSBvZiB0aGUgbGF0ZW5jeSB3aW5kb3cgZm9yIHNlbGVjdGluZyBhbW9uZyBtdWx0aXBsZSBzdWl0YWJsZSBNb25nb0RCIGluc3RhbmNlcy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ2xvY2FsVGhyZXNob2xkTVMnKSxcbiAgfSxcbiAgbG9nQ2xpZW50RXZlbnRzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0xPR19DTElFTlRfRVZFTlRTJyxcbiAgICBoZWxwOiAnQW4gYXJyYXkgb2YgTW9uZ29EQiBjbGllbnQgZXZlbnQgY29uZmlndXJhdGlvbnMgdG8gZW5hYmxlIGxvZ2dpbmcgb2Ygc3BlY2lmaWMgZXZlbnRzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmFycmF5UGFyc2VyLFxuICAgIHR5cGU6ICdMb2dDbGllbnRFdmVudFtdJyxcbiAgfSxcbiAgbWF4Q29ubmVjdGluZzoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9NQVhfQ09OTkVDVElORycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIG1heGltdW0gbnVtYmVyIG9mIGNvbm5lY3Rpb25zIHRoYXQgbWF5IGJlIGluIHRoZSBwcm9jZXNzIG9mIGJlaW5nIGVzdGFibGlzaGVkIGNvbmN1cnJlbnRseSBieSB0aGUgY29ubmVjdGlvbiBwb29sLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignbWF4Q29ubmVjdGluZycpLFxuICB9LFxuICBtYXhJZGxlVGltZU1TOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX01BWF9JRExFX1RJTUVfTVMnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBhbW91bnQgb2YgdGltZSBpbiBtaWxsaXNlY29uZHMgdGhhdCBhIGNvbm5lY3Rpb24gY2FuIHJlbWFpbiBpZGxlIGluIHRoZSBjb25uZWN0aW9uIHBvb2wgYmVmb3JlIGJlaW5nIHJlbW92ZWQgYW5kIGNsb3NlZC4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ21heElkbGVUaW1lTVMnKSxcbiAgfSxcbiAgbWF4UG9vbFNpemU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfTUFYX1BPT0xfU0laRScsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNldCB0aGUgbWF4aW11bSBudW1iZXIgb2Ygb3BlbmVkLCBjYWNoZWQsIHJlYWR5LXRvLXVzZSBkYXRhYmFzZSBjb25uZWN0aW9ucyBtYWludGFpbmVkIGJ5IHRoZSBkcml2ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdtYXhQb29sU2l6ZScpLFxuICB9LFxuICBtYXhTdGFsZW5lc3NTZWNvbmRzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX01BWF9TVEFMRU5FU1NfU0VDT05EUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNldCB0aGUgbWF4aW11bSByZXBsaWNhdGlvbiBsYWcgZm9yIHJlYWRzIGZyb20gc2Vjb25kYXJ5IG5vZGVzLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignbWF4U3RhbGVuZXNzU2Vjb25kcycpLFxuICB9LFxuICBtYXhUaW1lTVM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfTUFYX1RJTUVfTVMnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzZXQgYSBjdW11bGF0aXZlIHRpbWUgbGltaXQgaW4gbWlsbGlzZWNvbmRzIGZvciBwcm9jZXNzaW5nIG9wZXJhdGlvbnMgb24gYSBjdXJzb3IuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdtYXhUaW1lTVMnKSxcbiAgfSxcbiAgbWluUG9vbFNpemU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfTUlOX1BPT0xfU0laRScsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNldCB0aGUgbWluaW11bSBudW1iZXIgb2Ygb3BlbmVkLCBjYWNoZWQsIHJlYWR5LXRvLXVzZSBkYXRhYmFzZSBjb25uZWN0aW9ucyBtYWludGFpbmVkIGJ5IHRoZSBkcml2ZXIuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdtaW5Qb29sU2l6ZScpLFxuICB9LFxuICBwcm94eUhvc3Q6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfUFJPWFlfSE9TVCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIGNvbmZpZ3VyZSBhIFNvY2tzNSBwcm94eSBob3N0IHVzZWQgZm9yIGNyZWF0aW5nIFRDUCBjb25uZWN0aW9ucy4nLFxuICB9LFxuICBwcm94eVBhc3N3b3JkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1BST1hZX1BBU1NXT1JEJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gY29uZmlndXJlIGEgU29ja3M1IHByb3h5IHBhc3N3b3JkIHdoZW4gdGhlIHByb3h5IHJlcXVpcmVzIHVzZXJuYW1lL3Bhc3N3b3JkIGF1dGhlbnRpY2F0aW9uLicsXG4gIH0sXG4gIHByb3h5UG9ydDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9QUk9YWV9QT1JUJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gY29uZmlndXJlIGEgU29ja3M1IHByb3h5IHBvcnQgdXNlZCBmb3IgY3JlYXRpbmcgVENQIGNvbm5lY3Rpb25zLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcigncHJveHlQb3J0JyksXG4gIH0sXG4gIHByb3h5VXNlcm5hbWU6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfUFJPWFlfVVNFUk5BTUUnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBjb25maWd1cmUgYSBTb2NrczUgcHJveHkgdXNlcm5hbWUgd2hlbiB0aGUgcHJveHkgcmVxdWlyZXMgdXNlcm5hbWUvcGFzc3dvcmQgYXV0aGVudGljYXRpb24uJyxcbiAgfSxcbiAgcmVhZENvbmNlcm5MZXZlbDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9SRUFEX0NPTkNFUk5fTEVWRUwnLFxuICAgIGhlbHA6ICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIGxldmVsIG9mIGlzb2xhdGlvbi4nLFxuICB9LFxuICByZWFkUHJlZmVyZW5jZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9SRUFEX1BSRUZFUkVOQ0UnLFxuICAgIGhlbHA6ICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIHJlYWQgcHJlZmVyZW5jZXMgZm9yIHRoaXMgY29ubmVjdGlvbi4nLFxuICB9LFxuICByZWFkUHJlZmVyZW5jZVRhZ3M6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfUkVBRF9QUkVGRVJFTkNFX1RBR1MnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSB0YWdzIGRvY3VtZW50IGFzIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgY29sb24tc2VwYXJhdGVkIGtleS12YWx1ZSBwYWlycy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5hcnJheVBhcnNlcixcbiAgfSxcbiAgcmVwbGljYVNldDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9SRVBMSUNBX1NFVCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNwZWNpZnkgdGhlIG5hbWUgb2YgdGhlIHJlcGxpY2Egc2V0LCBpZiB0aGUgbW9uZ29kIGlzIGEgbWVtYmVyIG9mIGEgcmVwbGljYSBzZXQuJyxcbiAgfSxcbiAgcmV0cnlSZWFkczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9SRVRSWV9SRUFEUycsXG4gICAgaGVscDogJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gZW5hYmxlIHJldHJ5YWJsZSByZWFkcy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICB9LFxuICByZXRyeVdyaXRlczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9SRVRSWV9XUklURVMnLFxuICAgIGhlbHA6ICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIHNldCB3aGV0aGVyIHRvIHJldHJ5IGZhaWxlZCB3cml0ZXMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgc2NoZW1hQ2FjaGVUdGw6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfU0NIRU1BX0NBQ0hFX1RUTCcsXG4gICAgaGVscDpcbiAgICAgICdUaGUgZHVyYXRpb24gaW4gc2Vjb25kcyBhZnRlciB3aGljaCB0aGUgc2NoZW1hIGNhY2hlIGV4cGlyZXMgYW5kIHdpbGwgYmUgcmVmZXRjaGVkIGZyb20gdGhlIGRhdGFiYXNlLiBVc2UgdGhpcyBvcHRpb24gaWYgdXNpbmcgbXVsdGlwbGUgUGFyc2UgU2VydmVycyBpbnN0YW5jZXMgY29ubmVjdGVkIHRvIHRoZSBzYW1lIGRhdGFiYXNlLiBBIGxvdyBkdXJhdGlvbiB3aWxsIGNhdXNlIHRoZSBzY2hlbWEgY2FjaGUgdG8gYmUgdXBkYXRlZCB0b28gb2Z0ZW4sIGNhdXNpbmcgdW5uZWNlc3NhcnkgZGF0YWJhc2UgcmVhZHMuIEEgaGlnaCBkdXJhdGlvbiB3aWxsIGNhdXNlIHRoZSBzY2hlbWEgdG8gYmUgdXBkYXRlZCB0b28gcmFyZWx5LCBpbmNyZWFzaW5nIHRoZSB0aW1lIHJlcXVpcmVkIHVudGlsIHNjaGVtYSBjaGFuZ2VzIHByb3BhZ2F0ZSB0byBhbGwgc2VydmVyIGluc3RhbmNlcy4gVGhpcyBmZWF0dXJlIGNhbiBiZSB1c2VkIGFzIGFuIGFsdGVybmF0aXZlIG9yIGluIGNvbmp1bmN0aW9uIHdpdGggdGhlIG9wdGlvbiBgZW5hYmxlU2NoZW1hSG9va3NgLiBEZWZhdWx0IGlzIGluZmluaXRlIHdoaWNoIG1lYW5zIHRoZSBzY2hlbWEgY2FjaGUgbmV2ZXIgZXhwaXJlcy4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5udW1iZXJQYXJzZXIoJ3NjaGVtYUNhY2hlVHRsJyksXG4gIH0sXG4gIHNlcnZlck1vbml0b3JpbmdNb2RlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1NFUlZFUl9NT05JVE9SSU5HX01PREUnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBpbnN0cnVjdCB0aGUgZHJpdmVyIG1vbml0b3JzIHRvIHVzZSBhIHNwZWNpZmljIG1vbml0b3JpbmcgbW9kZS4nLFxuICB9LFxuICBzZXJ2ZXJTZWxlY3Rpb25UaW1lb3V0TVM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfU0VSVkVSX1NFTEVDVElPTl9USU1FT1VUX01TJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgYW1vdW50IG9mIHRpbWUgaW4gbWlsbGlzZWNvbmRzIGZvciBhIHNlcnZlciB0byBiZSBjb25zaWRlcmVkIHN1aXRhYmxlIGZvciBzZWxlY3Rpb24uJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdzZXJ2ZXJTZWxlY3Rpb25UaW1lb3V0TVMnKSxcbiAgfSxcbiAgc29ja2V0VGltZW91dE1TOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1NPQ0tFVF9USU1FT1VUX01TJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgYW1vdW50IG9mIHRpbWUsIGluIG1pbGxpc2Vjb25kcywgc3BlbnQgYXR0ZW1wdGluZyB0byBzZW5kIG9yIHJlY2VpdmUgb24gYSBzb2NrZXQgYmVmb3JlIHRpbWluZyBvdXQuIFNwZWNpZnlpbmcgMCBtZWFucyBubyB0aW1lb3V0LicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignc29ja2V0VGltZW91dE1TJyksXG4gIH0sXG4gIHNydk1heEhvc3RzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1NSVl9NQVhfSE9TVFMnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBtYXhpbXVtIG51bWJlciBvZiBob3N0cyB0byBjb25uZWN0IHRvIHdoZW4gdXNpbmcgYW4gc3J2IGNvbm5lY3Rpb24gc3RyaW5nLCBhIHNldHRpbmcgb2YgMCBtZWFucyB1bmxpbWl0ZWQgaG9zdHMuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMubnVtYmVyUGFyc2VyKCdzcnZNYXhIb3N0cycpLFxuICB9LFxuICBzcnZTZXJ2aWNlTmFtZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9TUlZfU0VSVklDRV9OQU1FJyxcbiAgICBoZWxwOiAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBtb2RpZnkgdGhlIHNydiBVUkkgc2VydmljZSBuYW1lLicsXG4gIH0sXG4gIHNzbDoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9TU0wnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBlbmFibGUgb3IgZGlzYWJsZSBUTFMvU1NMIGZvciB0aGUgY29ubmVjdGlvbiAoZXF1aXZhbGVudCB0byB0bHMgb3B0aW9uKS4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICB9LFxuICB0bHM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfVExTJyxcbiAgICBoZWxwOiAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBlbmFibGUgb3IgZGlzYWJsZSBUTFMvU1NMIGZvciB0aGUgY29ubmVjdGlvbi4nLFxuICAgIGFjdGlvbjogcGFyc2Vycy5ib29sZWFuUGFyc2VyLFxuICB9LFxuICB0bHNBbGxvd0ludmFsaWRDZXJ0aWZpY2F0ZXM6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfREFUQUJBU0VfVExTX0FMTE9XX0lOVkFMSURfQ0VSVElGSUNBVEVTJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gYnlwYXNzIHZhbGlkYXRpb24gb2YgdGhlIGNlcnRpZmljYXRlcyBwcmVzZW50ZWQgYnkgdGhlIG1vbmdvZC9tb25nb3MgaW5zdGFuY2UuJyxcbiAgICBhY3Rpb246IHBhcnNlcnMuYm9vbGVhblBhcnNlcixcbiAgfSxcbiAgdGxzQWxsb3dJbnZhbGlkSG9zdG5hbWVzOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1RMU19BTExPV19JTlZBTElEX0hPU1ROQU1FUycsXG4gICAgaGVscDpcbiAgICAgICdUaGUgTW9uZ29EQiBkcml2ZXIgb3B0aW9uIHRvIGRpc2FibGUgaG9zdG5hbWUgdmFsaWRhdGlvbiBvZiB0aGUgY2VydGlmaWNhdGUgcHJlc2VudGVkIGJ5IHRoZSBtb25nb2QvbW9uZ29zIGluc3RhbmNlLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gIH0sXG4gIHRsc0NBRmlsZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9UTFNfQ0FGSUxFJyxcbiAgICBoZWxwOlxuICAgICAgJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgbG9jYXRpb24gb2YgYSBsb2NhbCAucGVtIGZpbGUgdGhhdCBjb250YWlucyB0aGUgcm9vdCBjZXJ0aWZpY2F0ZSBjaGFpbiBmcm9tIHRoZSBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkuJyxcbiAgfSxcbiAgdGxzQ2VydGlmaWNhdGVLZXlGaWxlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1RMU19DRVJUSUZJQ0FURV9LRVlfRklMRScsXG4gICAgaGVscDpcbiAgICAgIFwiVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBsb2NhdGlvbiBvZiBhIGxvY2FsIC5wZW0gZmlsZSB0aGF0IGNvbnRhaW5zIHRoZSBjbGllbnQncyBUTFMvU1NMIGNlcnRpZmljYXRlIGFuZCBrZXkuXCIsXG4gIH0sXG4gIHRsc0NlcnRpZmljYXRlS2V5RmlsZVBhc3N3b3JkOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1RMU19DRVJUSUZJQ0FURV9LRVlfRklMRV9QQVNTV09SRCcsXG4gICAgaGVscDogJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gc3BlY2lmeSB0aGUgcGFzc3dvcmQgdG8gZGVjcnlwdCB0aGUgdGxzQ2VydGlmaWNhdGVLZXlGaWxlLicsXG4gIH0sXG4gIHRsc0luc2VjdXJlOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1RMU19JTlNFQ1VSRScsXG4gICAgaGVscDogJ1RoZSBNb25nb0RCIGRyaXZlciBvcHRpb24gdG8gZGlzYWJsZSB2YXJpb3VzIGNlcnRpZmljYXRlIHZhbGlkYXRpb25zLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gIH0sXG4gIHdhaXRRdWV1ZVRpbWVvdXRNUzoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9XQUlUX1FVRVVFX1RJTUVPVVRfTVMnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBtYXhpbXVtIHRpbWUgaW4gbWlsbGlzZWNvbmRzIHRoYXQgYSB0aHJlYWQgY2FuIHdhaXQgZm9yIGEgY29ubmVjdGlvbiB0byBiZWNvbWUgYXZhaWxhYmxlLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignd2FpdFF1ZXVlVGltZW91dE1TJyksXG4gIH0sXG4gIHpsaWJDb21wcmVzc2lvbkxldmVsOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX1pMSUJfQ09NUFJFU1NJT05fTEVWRUwnLFxuICAgIGhlbHA6XG4gICAgICAnVGhlIE1vbmdvREIgZHJpdmVyIG9wdGlvbiB0byBzcGVjaWZ5IHRoZSBjb21wcmVzc2lvbiBsZXZlbCBpZiB1c2luZyB6bGliIGZvciBuZXR3b3JrIGNvbXByZXNzaW9uICgwLTkpLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLm51bWJlclBhcnNlcignemxpYkNvbXByZXNzaW9uTGV2ZWwnKSxcbiAgfSxcbn07XG5tb2R1bGUuZXhwb3J0cy5EYXRhYmFzZU9wdGlvbnNDbGllbnRNZXRhZGF0YSA9IHtcbiAgbmFtZToge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9EQVRBQkFTRV9DTElFTlRfTUVUQURBVEFfTkFNRScsXG4gICAgaGVscDogXCJUaGUgbmFtZSB0byBpZGVudGlmeSB5b3VyIGFwcGxpY2F0aW9uIGluIGRhdGFiYXNlIGxvZ3MgKGUuZy4sICdNeUFwcCcpLlwiLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxuICB2ZXJzaW9uOiB7XG4gICAgZW52OiAnUEFSU0VfU0VSVkVSX0RBVEFCQVNFX0NMSUVOVF9NRVRBREFUQV9WRVJTSU9OJyxcbiAgICBoZWxwOiBcIlRoZSB2ZXJzaW9uIG9mIHlvdXIgYXBwbGljYXRpb24gKGUuZy4sICcxLjAuMCcpLlwiLFxuICAgIHJlcXVpcmVkOiB0cnVlLFxuICB9LFxufTtcbm1vZHVsZS5leHBvcnRzLkF1dGhBZGFwdGVyID0ge1xuICBlbmFibGVkOiB7XG4gICAgaGVscDogJ0lzIGB0cnVlYCBpZiB0aGUgYXV0aCBhZGFwdGVyIGlzIGVuYWJsZWQsIGBmYWxzZWAgb3RoZXJ3aXNlLicsXG4gICAgYWN0aW9uOiBwYXJzZXJzLmJvb2xlYW5QYXJzZXIsXG4gICAgZGVmYXVsdDogZmFsc2UsXG4gIH0sXG59O1xubW9kdWxlLmV4cG9ydHMuTG9nTGV2ZWxzID0ge1xuICBjbG91ZEZ1bmN0aW9uRXJyb3I6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMU19DTE9VRF9GVU5DVElPTl9FUlJPUicsXG4gICAgaGVscDpcbiAgICAgICdMb2cgbGV2ZWwgdXNlZCBieSB0aGUgQ2xvdWQgQ29kZSBGdW5jdGlvbnMgb24gZXJyb3IuIERlZmF1bHQgaXMgYGVycm9yYC4gU2VlIFtMb2dMZXZlbF0oTG9nTGV2ZWwuaHRtbCkgZm9yIGF2YWlsYWJsZSB2YWx1ZXMuJyxcbiAgICBkZWZhdWx0OiAnZXJyb3InLFxuICB9LFxuICBjbG91ZEZ1bmN0aW9uU3VjY2Vzczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MT0dfTEVWRUxTX0NMT1VEX0ZVTkNUSU9OX1NVQ0NFU1MnLFxuICAgIGhlbHA6XG4gICAgICAnTG9nIGxldmVsIHVzZWQgYnkgdGhlIENsb3VkIENvZGUgRnVuY3Rpb25zIG9uIHN1Y2Nlc3MuIERlZmF1bHQgaXMgYGluZm9gLiBTZWUgW0xvZ0xldmVsXShMb2dMZXZlbC5odG1sKSBmb3IgYXZhaWxhYmxlIHZhbHVlcy4nLFxuICAgIGRlZmF1bHQ6ICdpbmZvJyxcbiAgfSxcbiAgc2lnbnVwVXNlcm5hbWVUYWtlbjoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MT0dfTEVWRUxTX1NJR05VUF9VU0VSTkFNRV9UQUtFTicsXG4gICAgaGVscDpcbiAgICAgICdMb2cgbGV2ZWwgdXNlZCB3aGVuIGEgc2lnbi11cCBmYWlscyBiZWNhdXNlIHRoZSB1c2VybmFtZSBhbHJlYWR5IGV4aXN0cy4gRGVmYXVsdCBpcyBgaW5mb2AuIFNlZSBbTG9nTGV2ZWxdKExvZ0xldmVsLmh0bWwpIGZvciBhdmFpbGFibGUgdmFsdWVzLicsXG4gICAgZGVmYXVsdDogJ2luZm8nLFxuICB9LFxuICB0cmlnZ2VyQWZ0ZXI6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMU19UUklHR0VSX0FGVEVSJyxcbiAgICBoZWxwOlxuICAgICAgJ0xvZyBsZXZlbCB1c2VkIGJ5IHRoZSBDbG91ZCBDb2RlIFRyaWdnZXJzIGBhZnRlclNhdmVgLCBgYWZ0ZXJEZWxldGVgLCBgYWZ0ZXJGaW5kYCwgYGFmdGVyTG9nb3V0YC4gRGVmYXVsdCBpcyBgaW5mb2AuIFNlZSBbTG9nTGV2ZWxdKExvZ0xldmVsLmh0bWwpIGZvciBhdmFpbGFibGUgdmFsdWVzLicsXG4gICAgZGVmYXVsdDogJ2luZm8nLFxuICB9LFxuICB0cmlnZ2VyQmVmb3JlRXJyb3I6IHtcbiAgICBlbnY6ICdQQVJTRV9TRVJWRVJfTE9HX0xFVkVMU19UUklHR0VSX0JFRk9SRV9FUlJPUicsXG4gICAgaGVscDpcbiAgICAgICdMb2cgbGV2ZWwgdXNlZCBieSB0aGUgQ2xvdWQgQ29kZSBUcmlnZ2VycyBgYmVmb3JlU2F2ZWAsIGBiZWZvcmVEZWxldGVgLCBgYmVmb3JlRmluZGAsIGBiZWZvcmVMb2dpbmAgb24gZXJyb3IuIERlZmF1bHQgaXMgYGVycm9yYC4gU2VlIFtMb2dMZXZlbF0oTG9nTGV2ZWwuaHRtbCkgZm9yIGF2YWlsYWJsZSB2YWx1ZXMuJyxcbiAgICBkZWZhdWx0OiAnZXJyb3InLFxuICB9LFxuICB0cmlnZ2VyQmVmb3JlU3VjY2Vzczoge1xuICAgIGVudjogJ1BBUlNFX1NFUlZFUl9MT0dfTEVWRUxTX1RSSUdHRVJfQkVGT1JFX1NVQ0NFU1MnLFxuICAgIGhlbHA6XG4gICAgICAnTG9nIGxldmVsIHVzZWQgYnkgdGhlIENsb3VkIENvZGUgVHJpZ2dlcnMgYGJlZm9yZVNhdmVgLCBgYmVmb3JlRGVsZXRlYCwgYGJlZm9yZUZpbmRgLCBgYmVmb3JlTG9naW5gIG9uIHN1Y2Nlc3MuIERlZmF1bHQgaXMgYGluZm9gLiBTZWUgW0xvZ0xldmVsXShMb2dMZXZlbC5odG1sKSBmb3IgYXZhaWxhYmxlIHZhbHVlcy4nLFxuICAgIGRlZmF1bHQ6ICdpbmZvJyxcbiAgfSxcbn07XG4iXSwibWFwcGluZ3MiOiI7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLElBQUlBLE9BQU8sR0FBR0MsT0FBTyxDQUFDLFdBQVcsQ0FBQztBQUNsQ0MsTUFBTSxDQUFDQyxPQUFPLENBQUNDLGFBQWEsR0FBRztFQUM3QkMsY0FBYyxFQUFFO0lBQ2RDLEdBQUcsRUFBRSxxQ0FBcUM7SUFDMUNDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDREMsZUFBZSxFQUFFO0lBQ2ZGLEdBQUcsRUFBRSxzQ0FBc0M7SUFDM0NDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDREUsV0FBVyxFQUFFO0lBQ1hILEdBQUcsRUFBRSxpQ0FBaUM7SUFDdENDLElBQUksRUFDRixnR0FBZ0c7SUFDbEdHLFFBQVEsRUFBRSxJQUFJO0lBQ2RDLE1BQU0sRUFBRVgsT0FBTyxDQUFDWSxZQUFZO0lBQzVCQyxPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RDLGlCQUFpQixFQUFFO0lBQ2pCUixHQUFHLEVBQUUseUNBQXlDO0lBQzlDQyxJQUFJLEVBQ0YsbUlBQW1JO0lBQ3JJSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNERyxrQkFBa0IsRUFBRTtJQUNsQlYsR0FBRyxFQUFFLDBDQUEwQztJQUMvQ0MsSUFBSSxFQUNGLGlPQUFpTztJQUNuT0ksTUFBTSxFQUFFWCxPQUFPLENBQUNlLGFBQWE7SUFDN0JGLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDREksV0FBVyxFQUFFO0lBQ1hYLEdBQUcsRUFBRSxrQ0FBa0M7SUFDdkNDLElBQUksRUFDRixvR0FBb0c7SUFDdEdJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RLLHNCQUFzQixFQUFFO0lBQ3RCWixHQUFHLEVBQUUsOENBQThDO0lBQ25EQyxJQUFJLEVBQ0Ysa0xBQWtMO0lBQ3BMSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNETSxNQUFNLEVBQUU7SUFDTmIsR0FBRyxFQUFFLDRCQUE0QjtJQUNqQ0MsSUFBSSxFQUFFLDREQUE0RDtJQUNsRUksTUFBTSxFQUFFWCxPQUFPLENBQUNlLGFBQWE7SUFDN0JGLE9BQU8sRUFBRTtFQUNYO0FBQ0YsQ0FBQztBQUNEWCxNQUFNLENBQUNDLE9BQU8sQ0FBQ2lCLGtCQUFrQixHQUFHO0VBQ2xDQyxjQUFjLEVBQUU7SUFDZGYsR0FBRyxFQUFFLDhCQUE4QjtJQUNuQ0MsSUFBSSxFQUFFLHVEQUF1RDtJQUM3REksTUFBTSxFQUFFWCxPQUFPLENBQUNZLFlBQVk7SUFDNUJVLElBQUksRUFBRTtFQUNSLENBQUM7RUFDREMsd0JBQXdCLEVBQUU7SUFDeEJqQixHQUFHLEVBQUUsMENBQTBDO0lBQy9DQyxJQUFJLEVBQUUsOERBQThEO0lBQ3BFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEVyxtQkFBbUIsRUFBRTtJQUNuQmxCLEdBQUcsRUFBRSxxQ0FBcUM7SUFDMUNDLElBQUksRUFBRSxxQ0FBcUM7SUFDM0NJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RZLHlCQUF5QixFQUFFO0lBQ3pCbkIsR0FBRyxFQUFFLDRDQUE0QztJQUNqREMsSUFBSSxFQUNGLGlVQUFpVTtJQUNuVUksTUFBTSxFQUFFWCxPQUFPLENBQUNlLGFBQWE7SUFDN0JGLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRGEsWUFBWSxFQUFFO0lBQ1pwQixHQUFHLEVBQUUsNEJBQTRCO0lBQ2pDQyxJQUFJLEVBQUUsNkNBQTZDO0lBQ25ESSxNQUFNLEVBQUVYLE9BQU8sQ0FBQzJCO0VBQ2xCLENBQUM7RUFDREMsV0FBVyxFQUFFO0lBQ1h0QixHQUFHLEVBQUUsMkJBQTJCO0lBQ2hDQyxJQUFJLEVBQ0YscUlBQXFJO0lBQ3ZJSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQzJCO0VBQ2xCLENBQUM7RUFDREUsZ0JBQWdCLEVBQUU7SUFDaEJ2QixHQUFHLEVBQUUsZ0NBQWdDO0lBQ3JDQyxJQUFJLEVBQUUsa0NBQWtDO0lBQ3hDSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQzhCO0VBQ2xCLENBQUM7RUFDREMsS0FBSyxFQUFFO0lBQ0x6QixHQUFHLEVBQUUsNkJBQTZCO0lBQ2xDQyxJQUFJLEVBQUUsMkJBQTJCO0lBQ2pDRyxRQUFRLEVBQUU7RUFDWixDQUFDO0VBQ0RzQixPQUFPLEVBQUU7SUFDUDFCLEdBQUcsRUFBRSx1QkFBdUI7SUFDNUJDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRDBCLElBQUksRUFBRTtJQUNKM0IsR0FBRyxFQUFFLDZCQUE2QjtJQUNsQ0MsSUFBSSxFQUNGLGdLQUFnSztJQUNsS0ksTUFBTSxFQUFFWCxPQUFPLENBQUNZO0VBQ2xCLENBQUM7RUFDRHNCLFlBQVksRUFBRTtJQUNaNUIsR0FBRyxFQUFFLDRCQUE0QjtJQUNqQ0MsSUFBSSxFQUFFLDhCQUE4QjtJQUNwQ0ksTUFBTSxFQUFFWCxPQUFPLENBQUM4QjtFQUNsQixDQUFDO0VBQ0RLLFlBQVksRUFBRTtJQUNaN0IsR0FBRyxFQUFFLDZCQUE2QjtJQUNsQ0MsSUFBSSxFQUFFLGtFQUFrRTtJQUN4RUksTUFBTSxFQUFFWCxPQUFPLENBQUNvQyxZQUFZLENBQUMsY0FBYyxDQUFDO0lBQzVDdkIsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEd0IsUUFBUSxFQUFFO0lBQ1IvQixHQUFHLEVBQUUsd0JBQXdCO0lBQzdCQyxJQUFJLEVBQUUsNEVBQTRFO0lBQ2xGSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxVQUFVLENBQUM7SUFDeEN2QixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0R5QixTQUFTLEVBQUU7SUFDVGhDLEdBQUcsRUFBRSx5QkFBeUI7SUFDOUJDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRGdDLEtBQUssRUFBRTtJQUNMakMsR0FBRyxFQUFFLG9CQUFvQjtJQUN6QkMsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEaUMsT0FBTyxFQUFFO0lBQ1BsQyxHQUFHLEVBQUUsc0JBQXNCO0lBQzNCQyxJQUFJLEVBQUUsc0ZBQXNGO0lBQzVGSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ3lDO0VBQ2xCLENBQUM7RUFDREMsZ0JBQWdCLEVBQUU7SUFDaEJwQyxHQUFHLEVBQUUsZ0NBQWdDO0lBQ3JDQyxJQUFJLEVBQUUscUNBQXFDO0lBQzNDTSxPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0Q4Qix1QkFBdUIsRUFBRTtJQUN2QnJDLEdBQUcsRUFBRSx5Q0FBeUM7SUFDOUNDLElBQUksRUFDRixnV0FBZ1c7SUFDbFdJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0QrQiwwQkFBMEIsRUFBRTtJQUMxQnRDLEdBQUcsRUFBRSw0Q0FBNEM7SUFDakRDLElBQUksRUFDRixzV0FBc1c7SUFDeFdJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RnQyxXQUFXLEVBQUU7SUFDWHZDLEdBQUcsRUFBRSwyQkFBMkI7SUFDaENDLElBQUksRUFBRSxnREFBZ0Q7SUFDdERJLE1BQU0sRUFBRVgsT0FBTyxDQUFDWSxZQUFZO0lBQzVCVSxJQUFJLEVBQUUsb0JBQW9CO0lBQzFCVCxPQUFPLEVBQUUsQ0FBQztFQUNaLENBQUM7RUFDRGlDLGVBQWUsRUFBRTtJQUNmeEMsR0FBRyxFQUFFLCtCQUErQjtJQUNwQ0MsSUFBSSxFQUNGLGlJQUFpSTtJQUNuSUksTUFBTSxFQUFFWCxPQUFPLENBQUM4QjtFQUNsQixDQUFDO0VBQ0RpQixlQUFlLEVBQUU7SUFDZnpDLEdBQUcsRUFBRSwrQkFBK0I7SUFDcENDLElBQUksRUFBRSx3Q0FBd0M7SUFDOUNJLE1BQU0sRUFBRVgsT0FBTyxDQUFDWSxZQUFZO0lBQzVCVSxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0QwQixXQUFXLEVBQUU7SUFDWDFDLEdBQUcsRUFBRSwyQkFBMkI7SUFDaENDLElBQUksRUFBRSw2RUFBNkU7SUFDbkZHLFFBQVEsRUFBRSxJQUFJO0lBQ2RHLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRG9DLFlBQVksRUFBRTtJQUNaM0MsR0FBRyxFQUFFLDRCQUE0QjtJQUNqQ0MsSUFBSSxFQUFFLCtEQUErRDtJQUNyRUksTUFBTSxFQUFFWCxPQUFPLENBQUNvQyxZQUFZLENBQUMsY0FBYyxDQUFDO0lBQzVDdkIsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEcUMsWUFBWSxFQUFFO0lBQ1o1QyxHQUFHLEVBQUUsNEJBQTRCO0lBQ2pDQyxJQUFJLEVBQ0YsNjFCQUE2MUI7SUFDLzFCSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEc0MsU0FBUyxFQUFFO0lBQ1Q3QyxHQUFHLEVBQUUsMEJBQTBCO0lBQy9CQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0Q2QyxZQUFZLEVBQUU7SUFDWjlDLEdBQUcsRUFBRSw0QkFBNEI7SUFDakNDLElBQUksRUFBRSxrQ0FBa0M7SUFDeENJLE1BQU0sRUFBRVgsT0FBTyxDQUFDOEI7RUFDbEIsQ0FBQztFQUNEdUIsNEJBQTRCLEVBQUU7SUFDNUIvQyxHQUFHLEVBQUUsZ0RBQWdEO0lBQ3JEQyxJQUFJLEVBQ0YsK2FBQSthO0lBQ2piSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEeUMsZ0NBQWdDLEVBQUU7SUFDaENoRCxHQUFHLEVBQUUsbURBQW1EO0lBQ3hEQyxJQUFJLEVBQ0Ysa2dCQUFrZ0I7SUFDcGdCSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxrQ0FBa0M7RUFDakUsQ0FBQztFQUNEbUIsb0JBQW9CLEVBQUU7SUFDcEJqRCxHQUFHLEVBQUUsZ0NBQWdDO0lBQ3JDQyxJQUFJLEVBQUUsdURBQXVEO0lBQzdESSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEMkMsNkJBQTZCLEVBQUU7SUFDN0JsRCxHQUFHLEVBQUUsK0NBQStDO0lBQ3BEQyxJQUFJLEVBQ0YseVJBQXlSO0lBQzNSSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNENEMseUJBQXlCLEVBQUU7SUFDekJuRCxHQUFHLEVBQUUsMkNBQTJDO0lBQ2hEQyxJQUFJLEVBQUUsMERBQTBEO0lBQ2hFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNENkMsMEJBQTBCLEVBQUU7SUFDMUJwRCxHQUFHLEVBQUUsNENBQTRDO0lBQ2pEQyxJQUFJLEVBQ0YseUpBQXlKO0lBQzNKSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEOEMsNEJBQTRCLEVBQUU7SUFDNUJyRCxHQUFHLEVBQUUsOENBQThDO0lBQ25EQyxJQUFJLEVBQ0Ysa0tBQWtLO0lBQ3BLSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEK0MsYUFBYSxFQUFFO0lBQ2J0RCxHQUFHLEVBQUUsNkJBQTZCO0lBQ2xDQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0RzRCxtQkFBbUIsRUFBRTtJQUNuQnZELEdBQUcsRUFBRSxvQ0FBb0M7SUFDekNDLElBQUksRUFBRSxrRkFBa0Y7SUFDeEZJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RpRCxzQkFBc0IsRUFBRTtJQUN0QnhELEdBQUcsRUFBRSx1Q0FBdUM7SUFDNUNDLElBQUksRUFDRix3SUFBd0k7SUFDMUlJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RrRCxrQkFBa0IsRUFBRTtJQUNsQnpELEdBQUcsRUFBRSxvQ0FBb0M7SUFDekNDLElBQUksRUFDRix1UkFBdVI7SUFDelJJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RtRCxPQUFPLEVBQUU7SUFDUDFELEdBQUcsRUFBRSx1QkFBdUI7SUFDNUJDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRDBELFlBQVksRUFBRTtJQUNaM0QsR0FBRyxFQUFFLDRCQUE0QjtJQUNqQ0MsSUFBSSxFQUFFLHlDQUF5QztJQUMvQ0ksTUFBTSxFQUFFWCxPQUFPLENBQUM4QjtFQUNsQixDQUFDO0VBQ0RvQyxVQUFVLEVBQUU7SUFDVjVELEdBQUcsRUFBRSxrQ0FBa0M7SUFDdkNDLElBQUksRUFBRSwwQkFBMEI7SUFDaENJLE1BQU0sRUFBRVgsT0FBTyxDQUFDWSxZQUFZO0lBQzVCVSxJQUFJLEVBQUUsbUJBQW1CO0lBQ3pCVCxPQUFPLEVBQUUsQ0FBQztFQUNaLENBQUM7RUFDRHNELFdBQVcsRUFBRTtJQUNYN0QsR0FBRyxFQUFFLDJCQUEyQjtJQUNoQ0MsSUFBSSxFQUNGLDZPQUE2TztJQUMvT00sT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEdUQsMEJBQTBCLEVBQUU7SUFDMUI5RCxHQUFHLEVBQUUsMkNBQTJDO0lBQ2hEQyxJQUFJLEVBQUUseUVBQXlFO0lBQy9FSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEd0QsYUFBYSxFQUFFO0lBQ2IvRCxHQUFHLEVBQUUsNkJBQTZCO0lBQ2xDQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0QrRCxJQUFJLEVBQUU7SUFDSmhFLEdBQUcsRUFBRSxtQkFBbUI7SUFDeEJDLElBQUksRUFBRSx1REFBdUQ7SUFDN0RNLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRDBELGtCQUFrQixFQUFFO0lBQ2xCakUsR0FBRyxFQUFFLCtDQUErQztJQUNwREMsSUFBSSxFQUNGLDhMQUE4TDtJQUNoTUksTUFBTSxFQUFFWCxPQUFPLENBQUNZLFlBQVk7SUFDNUJVLElBQUksRUFBRSxvQkFBb0I7SUFDMUJULE9BQU8sRUFBRSxDQUFDO0VBQ1osQ0FBQztFQUNEMkQsYUFBYSxFQUFFO0lBQ2JsRSxHQUFHLEVBQUUsNkJBQTZCO0lBQ2xDQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0RrRSxRQUFRLEVBQUU7SUFDUm5FLEdBQUcsRUFBRSxXQUFXO0lBQ2hCQyxJQUFJLEVBQUUsZ0NBQWdDO0lBQ3RDSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2U7RUFDbEIsQ0FBQztFQUNEMkQsU0FBUyxFQUFFO0lBQ1RwRSxHQUFHLEVBQUUseUJBQXlCO0lBQzlCQyxJQUFJLEVBQUUsK0NBQStDO0lBQ3JESSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ1ksWUFBWTtJQUM1QlUsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEcUQsc0JBQXNCLEVBQUU7SUFDdEJyRSxHQUFHLEVBQUUsd0NBQXdDO0lBQzdDQyxJQUFJLEVBQUUsMkVBQTJFO0lBQ2pGSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ1ksWUFBWTtJQUM1QlUsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEc0QsYUFBYSxFQUFFO0lBQ2J0RSxHQUFHLEVBQUUsNkJBQTZCO0lBQ2xDQyxJQUFJLEVBQUUsMkNBQTJDO0lBQ2pESSxNQUFNLEVBQUVYLE9BQU8sQ0FBQzhCO0VBQ2xCLENBQUM7RUFDRCtDLFFBQVEsRUFBRTtJQUNSdkUsR0FBRyxFQUFFLHdCQUF3QjtJQUM3QkMsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEdUUsU0FBUyxFQUFFO0lBQ1R4RSxHQUFHLEVBQUUseUJBQXlCO0lBQzlCQyxJQUFJLEVBQUUsb0ZBQW9GO0lBQzFGSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ1ksWUFBWTtJQUM1QlUsSUFBSSxFQUFFLFdBQVc7SUFDakJULE9BQU8sRUFBRSxDQUFDO0VBQ1osQ0FBQztFQUNEa0UsVUFBVSxFQUFFO0lBQ1Z6RSxHQUFHLEVBQUUsMEJBQTBCO0lBQy9CQyxJQUFJLEVBQUUsdUZBQXVGO0lBQzdGTSxPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RtRSxjQUFjLEVBQUU7SUFDZDFFLEdBQUcsRUFBRSw4QkFBOEI7SUFDbkNDLElBQUksRUFDRixpb0JBQWlvQjtJQUNub0JHLFFBQVEsRUFBRTtFQUNaLENBQUM7RUFDRHVFLGlCQUFpQixFQUFFO0lBQ2pCM0UsR0FBRyxFQUFFLGtDQUFrQztJQUN2Q0MsSUFBSSxFQUNGLGcyREFBZzJEO0lBQ2wyREksTUFBTSxFQUFFWCxPQUFPLENBQUMyQixXQUFXO0lBQzNCZCxPQUFPLEVBQUUsQ0FBQyxXQUFXLEVBQUUsS0FBSztFQUM5QixDQUFDO0VBQ0RxRSxTQUFTLEVBQUU7SUFDVDVFLEdBQUcsRUFBRSx5QkFBeUI7SUFDOUJDLElBQUksRUFBRSx1QkFBdUI7SUFDN0JHLFFBQVEsRUFBRTtFQUNaLENBQUM7RUFDRHlFLFlBQVksRUFBRTtJQUNaN0UsR0FBRyxFQUFFLDZCQUE2QjtJQUNsQ0MsSUFBSSxFQUNGLDQwREFBNDBEO0lBQzkwREksTUFBTSxFQUFFWCxPQUFPLENBQUMyQixXQUFXO0lBQzNCZCxPQUFPLEVBQUUsQ0FBQyxXQUFXLEVBQUUsS0FBSztFQUM5QixDQUFDO0VBQ0R1RSxZQUFZLEVBQUU7SUFDWjlFLEdBQUcsRUFBRSw2QkFBNkI7SUFDbENDLElBQUksRUFDRixzWEFBc1g7SUFDeFhJLE1BQU0sRUFBRVgsT0FBTyxDQUFDb0MsWUFBWSxDQUFDLGNBQWM7RUFDN0MsQ0FBQztFQUNEaUQsUUFBUSxFQUFFO0lBQ1IvRSxHQUFHLEVBQUUsd0JBQXdCO0lBQzdCQyxJQUFJLEVBQUUsOERBQThEO0lBQ3BFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxVQUFVO0VBQ3pDLENBQUM7RUFDRGtELFdBQVcsRUFBRTtJQUNYaEYsR0FBRyxFQUFFLDRCQUE0QjtJQUNqQ0MsSUFBSSxFQUNGLDZLQUE2SztJQUMvS0ksTUFBTSxFQUFFWCxPQUFPLENBQUN1RixvQkFBb0IsQ0FBQyxhQUFhO0VBQ3BELENBQUM7RUFDREMsYUFBYSxFQUFFO0lBQ2JsRixHQUFHLEVBQUUsOEJBQThCO0lBQ25DQyxJQUFJLEVBQUUsNkNBQTZDO0lBQ25ETSxPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0Q0RSxVQUFVLEVBQUU7SUFDVm5GLEdBQUcsRUFBRSx5QkFBeUI7SUFDOUJDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRG1GLFlBQVksRUFBRTtJQUNacEYsR0FBRyxFQUFFLDRCQUE0QjtJQUNqQ0MsSUFBSSxFQUFFLDZCQUE2QjtJQUNuQ0ksTUFBTSxFQUFFWCxPQUFPLENBQUNlLGFBQWE7SUFDN0JGLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRDhFLFNBQVMsRUFBRTtJQUNUckYsR0FBRyxFQUFFLHlCQUF5QjtJQUM5QkMsSUFBSSxFQUFFLCtDQUErQztJQUNyRE0sT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEK0UsZUFBZSxFQUFFO0lBQ2Z0RixHQUFHLEVBQUUsK0JBQStCO0lBQ3BDQyxJQUFJLEVBQUUscUVBQXFFO0lBQzNFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEZ0YsWUFBWSxFQUFFO0lBQ1p2RixHQUFHLEVBQUUsNkJBQTZCO0lBQ2xDQyxJQUFJLEVBQUUsb0VBQW9FO0lBQzFFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxjQUFjLENBQUM7SUFDNUN2QixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RpRixLQUFLLEVBQUU7SUFDTHhGLEdBQUcsRUFBRSxvQkFBb0I7SUFDekJDLElBQUksRUFBRSxzRUFBc0U7SUFDNUVJLE1BQU0sRUFBRVgsT0FBTyxDQUFDWSxZQUFZO0lBQzVCVSxJQUFJLEVBQUUsY0FBYztJQUNwQlQsT0FBTyxFQUFFLENBQUM7RUFDWixDQUFDO0VBQ0RrRixjQUFjLEVBQUU7SUFDZHpGLEdBQUcsRUFBRSw4QkFBOEI7SUFDbkNDLElBQUksRUFBRSwyREFBMkQ7SUFDakVJLE1BQU0sRUFBRVgsT0FBTyxDQUFDWSxZQUFZO0lBQzVCVSxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0QwRSxjQUFjLEVBQUU7SUFDZDFGLEdBQUcsRUFBRSw4QkFBOEI7SUFDbkNDLElBQUksRUFBRSxnRUFBZ0U7SUFDdEVNLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRG9GLElBQUksRUFBRTtJQUNKM0YsR0FBRyxFQUFFLE1BQU07SUFDWEMsSUFBSSxFQUFFLG9EQUFvRDtJQUMxREksTUFBTSxFQUFFWCxPQUFPLENBQUNvQyxZQUFZLENBQUMsTUFBTSxDQUFDO0lBQ3BDdkIsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEcUYsZ0JBQWdCLEVBQUU7SUFDaEI1RixHQUFHLEVBQUUsaUNBQWlDO0lBQ3RDQyxJQUFJLEVBQUUscUVBQXFFO0lBQzNFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEc0YsK0JBQStCLEVBQUU7SUFDL0I3RixHQUFHLEVBQUUsa0RBQWtEO0lBQ3ZEQyxJQUFJLEVBQ0YsK3lCQUEreUI7SUFDanpCSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29HLHVCQUF1QjtJQUN2Q3ZGLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRHdGLGdDQUFnQyxFQUFFO0lBQ2hDL0YsR0FBRyxFQUFFLG1EQUFtRDtJQUN4REMsSUFBSSxFQUNGLGdoQkFBZ2hCO0lBQ2xoQkksTUFBTSxFQUFFWCxPQUFPLENBQUNlLGFBQWE7SUFDN0JGLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRHlGLGVBQWUsRUFBRTtJQUNmaEcsR0FBRyxFQUFFLCtCQUErQjtJQUNwQ0MsSUFBSSxFQUFFLG9GQUFvRjtJQUMxRkksTUFBTSxFQUFFWCxPQUFPLENBQUNZLFlBQVk7SUFDNUJDLE9BQU8sRUFBRTtNQUNQMEYsS0FBSyxFQUFFO1FBQ0wsR0FBRyxFQUFFLENBQUMsT0FBTztNQUNmO0lBQ0Y7RUFDRixDQUFDO0VBQ0RDLGVBQWUsRUFBRTtJQUNmbEcsR0FBRyxFQUFFLHlCQUF5QjtJQUM5QkMsSUFBSSxFQUNGO0VBQ0osQ0FBQztFQUNEa0csSUFBSSxFQUFFO0lBQ0puRyxHQUFHLEVBQUUsbUJBQW1CO0lBQ3hCQyxJQUFJLEVBQ0YsdUhBQXVIO0lBQ3pISSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ1k7RUFDbEIsQ0FBQztFQUNEOEYsU0FBUyxFQUFFO0lBQ1RwRyxHQUFHLEVBQUUseUJBQXlCO0lBQzlCQyxJQUFJLEVBQ0YsOGxDQUE4bEM7SUFDaG1DSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQzJCLFdBQVc7SUFDM0JMLElBQUksRUFBRSxvQkFBb0I7SUFDMUJULE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRDhGLGlCQUFpQixFQUFFO0lBQ2pCckcsR0FBRyxFQUFFLG1DQUFtQztJQUN4Q0MsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEcUcsd0JBQXdCLEVBQUU7SUFDeEJ0RyxHQUFHLEVBQUUseUNBQXlDO0lBQzlDQyxJQUFJLEVBQ0Y7RUFDSixDQUFDO0VBQ0RzRyxzQkFBc0IsRUFBRTtJQUN0QnZHLEdBQUcsRUFBRSx1Q0FBdUM7SUFDNUNDLElBQUksRUFDRix3bkJBQXduQjtJQUMxbkJJLE1BQU0sRUFBRVgsT0FBTyxDQUFDMkIsV0FBVztJQUMzQmQsT0FBTyxFQUFFLENBQ1A7TUFDRWlHLEdBQUcsRUFBRSxXQUFXO01BQ2hCQyxLQUFLLEVBQUU7SUFDVCxDQUFDLEVBQ0Q7TUFDRUQsR0FBRyxFQUFFO0lBQ1AsQ0FBQyxFQUNEO01BQ0VBLEdBQUcsRUFBRTtJQUNQLENBQUM7RUFFTCxDQUFDO0VBQ0RFLFVBQVUsRUFBRTtJQUNWMUcsR0FBRyxFQUFFLDJCQUEyQjtJQUNoQ0MsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEMEcsNEJBQTRCLEVBQUU7SUFDNUIzRyxHQUFHLEVBQUUsK0NBQStDO0lBQ3BEQyxJQUFJLEVBQ0YsOExBQThMO0lBQ2hNSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEcUcsYUFBYSxFQUFFO0lBQ2I1RyxHQUFHLEVBQUUsNkJBQTZCO0lBQ2xDQyxJQUFJLEVBQUUsdURBQXVEO0lBQzdESSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEc0csTUFBTSxFQUFFO0lBQ043RyxHQUFHLEVBQUUscUJBQXFCO0lBQzFCQyxJQUFJLEVBQUUsZ0JBQWdCO0lBQ3RCSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ1ksWUFBWTtJQUM1QlUsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEOEYsUUFBUSxFQUFFO0lBQ1I5RyxHQUFHLEVBQUUsdUJBQXVCO0lBQzVCQyxJQUFJLEVBQUUscUVBQXFFO0lBQzNFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ1ksWUFBWTtJQUM1QlUsSUFBSSxFQUFFLGlCQUFpQjtJQUN2QlQsT0FBTyxFQUFFLENBQUM7RUFDWixDQUFDO0VBQ0R3Ryx5QkFBeUIsRUFBRTtJQUN6Qi9HLEdBQUcsRUFBRSwyQ0FBMkM7SUFDaERDLElBQUksRUFDRixvTEFBb0w7SUFDdExJLE1BQU0sRUFBRVgsT0FBTyxDQUFDb0csdUJBQXVCO0lBQ3ZDdkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEeUcsbUJBQW1CLEVBQUU7SUFDbkJoSCxHQUFHLEVBQUUsb0NBQW9DO0lBQ3pDQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0RnSCxTQUFTLEVBQUU7SUFDVGpILEdBQUcsRUFBRSxrQkFBa0I7SUFDdkJDLElBQUksRUFDRixnVUFBZ1U7SUFDbFVHLFFBQVEsRUFBRTtFQUNaLENBQUM7RUFDRDhHLGFBQWEsRUFBRTtJQUNibEgsR0FBRyxFQUFFLDZCQUE2QjtJQUNsQ0MsSUFBSSxFQUFFLGtEQUFrRDtJQUN4REksTUFBTSxFQUFFWCxPQUFPLENBQUNvQyxZQUFZLENBQUMsZUFBZSxDQUFDO0lBQzdDdkIsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNENEcsTUFBTSxFQUFFO0lBQ05uSCxHQUFHLEVBQUUsUUFBUTtJQUNiQyxJQUFJLEVBQUUseUJBQXlCO0lBQy9CSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2U7RUFDbEIsQ0FBQztFQUNEMkcsb0JBQW9CLEVBQUU7SUFDcEJwSCxHQUFHLEVBQUUsc0NBQXNDO0lBQzNDQyxJQUFJLEVBQUUsNkJBQTZCO0lBQ25DSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2U7RUFDbEIsQ0FBQztFQUNENEcsVUFBVSxFQUFFO0lBQ1ZySCxHQUFHLEVBQUUsMEJBQTBCO0lBQy9CQyxJQUFJLEVBQ0Ysd1RBQXdUO0lBQzFUSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ1ksWUFBWTtJQUM1QkMsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEK0csbUJBQW1CLEVBQUU7SUFDbkJ0SCxHQUFHLEVBQUUsb0NBQW9DO0lBQ3pDQyxJQUFJLEVBQ0YsOElBQThJO0lBQ2hKSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQzJCO0VBQ2xCLENBQUM7RUFDRGtHLE9BQU8sRUFBRTtJQUNQdkgsR0FBRyxFQUFFLFNBQVM7SUFDZEMsSUFBSSxFQUFFLDRCQUE0QjtJQUNsQ0ksTUFBTSxFQUFFWCxPQUFPLENBQUNlO0VBQ2xCLENBQUM7RUFDRCtHLGVBQWUsRUFBRTtJQUNmeEgsR0FBRyxFQUFFLGdDQUFnQztJQUNyQ0MsSUFBSSxFQUNGLHNpQkFBc2lCO0lBQ3hpQkksTUFBTSxFQUFFWCxPQUFPLENBQUNlLGFBQWE7SUFDN0JGLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRGtILGdCQUFnQixFQUFFO0lBQ2hCekgsR0FBRyxFQUFFLGlDQUFpQztJQUN0Q0MsSUFBSSxFQUNGLDIxQkFBMjFCO0lBQzcxQkksTUFBTSxFQUFFWCxPQUFPLENBQUNvRyx1QkFBdUI7SUFDdkN2RixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RtSCxVQUFVLEVBQUU7SUFDVjFILEdBQUcsRUFBRSwwQkFBMEI7SUFDL0JDLElBQUksRUFBRTtFQUNSO0FBQ0YsQ0FBQztBQUNETCxNQUFNLENBQUNDLE9BQU8sQ0FBQzhILGdCQUFnQixHQUFHO0VBQ2hDQyxvQkFBb0IsRUFBRTtJQUNwQjVILEdBQUcsRUFBRSxnREFBZ0Q7SUFDckRDLElBQUksRUFDRiw2SUFBNkk7SUFDL0lNLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRHNILHVCQUF1QixFQUFFO0lBQ3ZCN0gsR0FBRyxFQUFFLG1EQUFtRDtJQUN4REMsSUFBSSxFQUNGLHNQQUFzUDtJQUN4UEksTUFBTSxFQUFFWCxPQUFPLENBQUNlLGFBQWE7SUFDN0JGLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRHVILGdCQUFnQixFQUFFO0lBQ2hCOUgsR0FBRyxFQUFFLDRDQUE0QztJQUNqREMsSUFBSSxFQUNGLG1RQUFtUTtJQUNyUUksTUFBTSxFQUFFWCxPQUFPLENBQUNlLGFBQWE7SUFDN0JGLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRHdILFFBQVEsRUFBRTtJQUNSL0gsR0FBRyxFQUFFLG1DQUFtQztJQUN4Q0MsSUFBSSxFQUNGO0VBQ0osQ0FBQztFQUNEK0gsWUFBWSxFQUFFO0lBQ1poSSxHQUFHLEVBQUUsdUNBQXVDO0lBQzVDQyxJQUFJLEVBQ0YsNElBQTRJO0lBQzlJSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxjQUFjO0VBQzdDLENBQUM7RUFDRG1HLGNBQWMsRUFBRTtJQUNkakksR0FBRyxFQUFFLHlDQUF5QztJQUM5Q0MsSUFBSSxFQUNGLHVHQUF1RztJQUN6R0ksTUFBTSxFQUFFWCxPQUFPLENBQUMyQjtFQUNsQixDQUFDO0VBQ0Q2RyxXQUFXLEVBQUU7SUFDWGxJLEdBQUcsRUFBRSxzQ0FBc0M7SUFDM0NDLElBQUksRUFDRixpU0FBaVM7SUFDblNHLFFBQVEsRUFBRTtFQUNaLENBQUM7RUFDRCtILGlCQUFpQixFQUFFO0lBQ2pCbkksR0FBRyxFQUFFLDZDQUE2QztJQUNsREMsSUFBSSxFQUNGLDRJQUE0STtJQUM5SUksTUFBTSxFQUFFWCxPQUFPLENBQUNvQyxZQUFZLENBQUMsbUJBQW1CO0VBQ2xELENBQUM7RUFDRHNHLElBQUksRUFBRTtJQUNKcEksR0FBRyxFQUFFLDhCQUE4QjtJQUNuQ0MsSUFBSSxFQUNGLG9YQUFvWDtJQUN0WE0sT0FBTyxFQUFFO0VBQ1g7QUFDRixDQUFDO0FBQ0RYLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDd0ksZUFBZSxHQUFHO0VBQy9CQyxXQUFXLEVBQUU7SUFDWHRJLEdBQUcsRUFBRSxvQ0FBb0M7SUFDekNDLElBQUksRUFDRiw0SkFBNEo7SUFDOUpJLE1BQU0sRUFBRVgsT0FBTyxDQUFDMkI7RUFDbEIsQ0FBQztFQUNEa0gsV0FBVyxFQUFFO0lBQ1h2SSxHQUFHLEVBQUUsb0NBQW9DO0lBQ3pDQyxJQUFJLEVBQUUsa0VBQWtFO0lBQ3hFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEaUksY0FBYyxFQUFFO0lBQ2R4SSxHQUFHLEVBQUUsd0NBQXdDO0lBQzdDQyxJQUFJLEVBQ0YsdUpBQXVKO0lBQ3pKSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1g7QUFDRixDQUFDO0FBQ0RYLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDNEksWUFBWSxHQUFHO0VBQzVCQyxZQUFZLEVBQUU7SUFDWjFJLEdBQUcsRUFBRSxrQ0FBa0M7SUFDdkNDLElBQUksRUFBRSxvQkFBb0I7SUFDMUJJLE1BQU0sRUFBRVgsT0FBTyxDQUFDMkIsV0FBVztJQUMzQkwsSUFBSSxFQUFFLGNBQWM7SUFDcEJULE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRG9JLFVBQVUsRUFBRTtJQUNWM0ksR0FBRyxFQUFFLGdDQUFnQztJQUNyQ0MsSUFBSSxFQUFFLCtCQUErQjtJQUNyQ0ksTUFBTSxFQUFFWCxPQUFPLENBQUNZLFlBQVk7SUFDNUJVLElBQUksRUFBRSx3QkFBd0I7SUFDOUJULE9BQU8sRUFBRSxDQUFDO0VBQ1osQ0FBQztFQUNEcUksa0JBQWtCLEVBQUU7SUFDbEI1SSxHQUFHLEVBQUUsd0NBQXdDO0lBQzdDQyxJQUFJLEVBQUUsb0ZBQW9GO0lBQzFGSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEc0ksWUFBWSxFQUFFO0lBQ1o3SSxHQUFHLEVBQUUsa0NBQWtDO0lBQ3ZDQyxJQUFJLEVBQ0YsOEdBQThHO0lBQ2hISSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEdUksYUFBYSxFQUFFO0lBQ2I5SSxHQUFHLEVBQUUsbUNBQW1DO0lBQ3hDQyxJQUFJLEVBQ0YsdU1BQXVNO0lBQ3pNSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEd0ksMEJBQTBCLEVBQUU7SUFDMUIvSSxHQUFHLEVBQUUsaURBQWlEO0lBQ3REQyxJQUFJLEVBQ0YsNktBQTZLO0lBQy9LTSxPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0R5SSxvQkFBb0IsRUFBRTtJQUNwQmhKLEdBQUcsRUFBRSwyQ0FBMkM7SUFDaERDLElBQUksRUFDRjtFQUNKLENBQUM7RUFDRGdKLGFBQWEsRUFBRTtJQUNiakosR0FBRyxFQUFFLG1DQUFtQztJQUN4Q0MsSUFBSSxFQUFFLG9EQUFvRDtJQUMxRE0sT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEMkksU0FBUyxFQUFFO0lBQ1RsSixHQUFHLEVBQUUsK0JBQStCO0lBQ3BDQyxJQUFJLEVBQ0Y7RUFDSixDQUFDO0VBQ0RrSixZQUFZLEVBQUU7SUFDWm5KLEdBQUcsRUFBRSxpQ0FBaUM7SUFDdENDLElBQUksRUFDRixvSEFBb0g7SUFDdEhJLE1BQU0sRUFBRVgsT0FBTyxDQUFDWSxZQUFZO0lBQzVCQyxPQUFPLEVBQUUsQ0FBQztFQUNaO0FBQ0YsQ0FBQztBQUNEWCxNQUFNLENBQUNDLE9BQU8sQ0FBQ3VKLFVBQVUsR0FBRztFQUMxQkMsT0FBTyxFQUFFO0lBQ1BySixHQUFHLEVBQUUsa0NBQWtDO0lBQ3ZDQyxJQUFJLEVBQUUsOENBQThDO0lBQ3BERyxRQUFRLEVBQUU7RUFDWixDQUFDO0VBQ0RrSixNQUFNLEVBQUU7SUFDTnRKLEdBQUcsRUFBRSxpQ0FBaUM7SUFDdENDLElBQUksRUFBRSx5Q0FBeUM7SUFDL0NHLFFBQVEsRUFBRTtFQUNaLENBQUM7RUFDRG1KLElBQUksRUFBRTtJQUNKdkosR0FBRyxFQUFFLCtCQUErQjtJQUNwQ0MsSUFBSSxFQUFFLGlCQUFpQjtJQUN2QkcsUUFBUSxFQUFFO0VBQ1o7QUFDRixDQUFDO0FBQ0RSLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDMkosc0JBQXNCLEdBQUc7RUFDdENDLDRCQUE0QixFQUFFO0lBQzVCekosR0FBRyxFQUFFLCtEQUErRDtJQUNwRUMsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEeUosNEJBQTRCLEVBQUU7SUFDNUIxSixHQUFHLEVBQUUsK0RBQStEO0lBQ3BFQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0QwSix5QkFBeUIsRUFBRTtJQUN6QjNKLEdBQUcsRUFBRSw0REFBNEQ7SUFDakVDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRDJKLDRCQUE0QixFQUFFO0lBQzVCNUosR0FBRyxFQUFFLCtEQUErRDtJQUNwRUMsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNENEosd0JBQXdCLEVBQUU7SUFDeEI3SixHQUFHLEVBQUUsMERBQTBEO0lBQy9EQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0Q2SixhQUFhLEVBQUU7SUFDYjlKLEdBQUcsRUFBRSw4Q0FBOEM7SUFDbkRDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRDhKLHdCQUF3QixFQUFFO0lBQ3hCL0osR0FBRyxFQUFFLDJEQUEyRDtJQUNoRUMsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEK0osb0JBQW9CLEVBQUU7SUFDcEJoSyxHQUFHLEVBQUUsc0RBQXNEO0lBQzNEQyxJQUFJLEVBQUU7RUFDUjtBQUNGLENBQUM7QUFDREwsTUFBTSxDQUFDQyxPQUFPLENBQUNvSyxrQkFBa0IsR0FBRztFQUNsQ0MsY0FBYyxFQUFFO0lBQ2RsSyxHQUFHLEVBQUUsMkNBQTJDO0lBQ2hEQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0RrSyx1QkFBdUIsRUFBRTtJQUN2Qm5LLEdBQUcsRUFBRSxxREFBcUQ7SUFDMURDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRG1LLFdBQVcsRUFBRTtJQUNYcEssR0FBRyxFQUFFLHdDQUF3QztJQUM3Q0MsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEb0ssd0JBQXdCLEVBQUU7SUFDeEJySyxHQUFHLEVBQUUsdURBQXVEO0lBQzVEQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0RxSyx1QkFBdUIsRUFBRTtJQUN2QnRLLEdBQUcsRUFBRSxxREFBcUQ7SUFDMURDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRHNLLFlBQVksRUFBRTtJQUNadkssR0FBRyxFQUFFLDBDQUEwQztJQUMvQ0MsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEdUssZUFBZSxFQUFFO0lBQ2Z4SyxHQUFHLEVBQUUsNkNBQTZDO0lBQ2xEQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0R3SyxhQUFhLEVBQUU7SUFDYnpLLEdBQUcsRUFBRSwyQ0FBMkM7SUFDaERDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRCtKLG9CQUFvQixFQUFFO0lBQ3BCaEssR0FBRyxFQUFFLGtEQUFrRDtJQUN2REMsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEeUssa0JBQWtCLEVBQUU7SUFDbEIxSyxHQUFHLEVBQUUsZ0RBQWdEO0lBQ3JEQyxJQUFJLEVBQUU7RUFDUjtBQUNGLENBQUM7QUFDREwsTUFBTSxDQUFDQyxPQUFPLENBQUM4SyxnQkFBZ0IsR0FBRztFQUNoQ0MsVUFBVSxFQUFFO0lBQ1Y1SyxHQUFHLEVBQUUsbUNBQW1DO0lBQ3hDQyxJQUFJLEVBQUUscUNBQXFDO0lBQzNDSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQzJCO0VBQ2xCLENBQUM7RUFDRHdKLGFBQWEsRUFBRTtJQUNiN0ssR0FBRyxFQUFFLHdDQUF3QztJQUM3Q0MsSUFBSSxFQUFFLDBCQUEwQjtJQUNoQ0ksTUFBTSxFQUFFWCxPQUFPLENBQUM4QjtFQUNsQixDQUFDO0VBQ0RzSixZQUFZLEVBQUU7SUFDWjlLLEdBQUcsRUFBRSxzQ0FBc0M7SUFDM0NDLElBQUksRUFBRSx1Q0FBdUM7SUFDN0NJLE1BQU0sRUFBRVgsT0FBTyxDQUFDWTtFQUNsQixDQUFDO0VBQ0R5SyxRQUFRLEVBQUU7SUFDUi9LLEdBQUcsRUFBRSxrQ0FBa0M7SUFDdkNDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRCtLLFVBQVUsRUFBRTtJQUNWaEwsR0FBRyxFQUFFLG9DQUFvQztJQUN6Q0MsSUFBSSxFQUFFLHdDQUF3QztJQUM5Q0ksTUFBTSxFQUFFWCxPQUFPLENBQUM4QjtFQUNsQjtBQUNGLENBQUM7QUFDRDVCLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDb0wsc0JBQXNCLEdBQUc7RUFDdEN4SixLQUFLLEVBQUU7SUFDTHpCLEdBQUcsRUFBRSxnQ0FBZ0M7SUFDckNDLElBQUksRUFDRjtFQUNKLENBQUM7RUFDRGlMLFlBQVksRUFBRTtJQUNabEwsR0FBRyxFQUFFLHVDQUF1QztJQUM1Q0MsSUFBSSxFQUNGLHdXQUF3VztJQUMxV0ksTUFBTSxFQUFFWCxPQUFPLENBQUNvQyxZQUFZLENBQUMsY0FBYztFQUM3QyxDQUFDO0VBQ0RxSixRQUFRLEVBQUU7SUFDUm5MLEdBQUcsRUFBRSxtQ0FBbUM7SUFDeENDLElBQUksRUFDRix3TkFBd047SUFDMU5JLE1BQU0sRUFBRVgsT0FBTyxDQUFDWTtFQUNsQixDQUFDO0VBQ0RpRSxRQUFRLEVBQUU7SUFDUnZFLEdBQUcsRUFBRSxtQ0FBbUM7SUFDeENDLElBQUksRUFDRjtFQUNKLENBQUM7RUFDRDJFLFNBQVMsRUFBRTtJQUNUNUUsR0FBRyxFQUFFLG9DQUFvQztJQUN6Q0MsSUFBSSxFQUNGO0VBQ0osQ0FBQztFQUNEMEYsSUFBSSxFQUFFO0lBQ0ozRixHQUFHLEVBQUUsOEJBQThCO0lBQ25DQyxJQUFJLEVBQUUseURBQXlEO0lBQy9ESSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxNQUFNLENBQUM7SUFDcEN2QixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RzSyxhQUFhLEVBQUU7SUFDYjdLLEdBQUcsRUFBRSx5Q0FBeUM7SUFDOUNDLElBQUksRUFBRSwwQkFBMEI7SUFDaENJLE1BQU0sRUFBRVgsT0FBTyxDQUFDOEI7RUFDbEIsQ0FBQztFQUNEc0osWUFBWSxFQUFFO0lBQ1o5SyxHQUFHLEVBQUUsdUNBQXVDO0lBQzVDQyxJQUFJLEVBQUUsdUNBQXVDO0lBQzdDSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ1k7RUFDbEIsQ0FBQztFQUNEeUssUUFBUSxFQUFFO0lBQ1IvSyxHQUFHLEVBQUUsbUNBQW1DO0lBQ3hDQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0RnSCxTQUFTLEVBQUU7SUFDVGpILEdBQUcsRUFBRSxvQ0FBb0M7SUFDekNDLElBQUksRUFDRjtFQUNKLENBQUM7RUFDRG1MLGdCQUFnQixFQUFFO0lBQ2hCcEwsR0FBRyxFQUFFLDJDQUEyQztJQUNoREMsSUFBSSxFQUNGLDhQQUE4UDtJQUNoUUksTUFBTSxFQUFFWCxPQUFPLENBQUNvQyxZQUFZLENBQUMsa0JBQWtCO0VBQ2pELENBQUM7RUFDRGtKLFVBQVUsRUFBRTtJQUNWaEwsR0FBRyxFQUFFLHFDQUFxQztJQUMxQ0MsSUFBSSxFQUFFLHdDQUF3QztJQUM5Q0ksTUFBTSxFQUFFWCxPQUFPLENBQUM4QjtFQUNsQjtBQUNGLENBQUM7QUFDRDVCLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDd0wsa0JBQWtCLEdBQUc7RUFDbENDLEtBQUssRUFBRTtJQUNMdEwsR0FBRyxFQUFFLDZDQUE2QztJQUNsREMsSUFBSSxFQUNGLGtYQUFrWDtJQUNwWEksTUFBTSxFQUFFWCxPQUFPLENBQUMyQixXQUFXO0lBQzNCZCxPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RnTCxHQUFHLEVBQUU7SUFDSHZMLEdBQUcsRUFBRSwyQ0FBMkM7SUFDaERDLElBQUksRUFDRix3R0FBd0c7SUFDMUdJLE1BQU0sRUFBRVgsT0FBTyxDQUFDb0MsWUFBWSxDQUFDLEtBQUssQ0FBQztJQUNuQ3ZCLE9BQU8sRUFBRTtFQUNYO0FBQ0YsQ0FBQztBQUNEWCxNQUFNLENBQUNDLE9BQU8sQ0FBQzJMLHFCQUFxQixHQUFHO0VBQ3JDQyxRQUFRLEVBQUU7SUFDUnpMLEdBQUcsRUFBRSx1Q0FBdUM7SUFDNUNDLElBQUksRUFDRixtTEFBbUw7SUFDckxJLE1BQU0sRUFBRVgsT0FBTyxDQUFDb0MsWUFBWSxDQUFDLFVBQVU7RUFDekMsQ0FBQztFQUNENEosU0FBUyxFQUFFO0lBQ1QxTCxHQUFHLEVBQUUsd0NBQXdDO0lBQzdDQyxJQUFJLEVBQ0Ysa1RBQWtUO0lBQ3BUSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxXQUFXO0VBQzFDLENBQUM7RUFDRDZKLHFCQUFxQixFQUFFO0lBQ3JCM0wsR0FBRyxFQUFFLHVEQUF1RDtJQUM1REMsSUFBSSxFQUNGLDBLQUEwSztJQUM1S0ksTUFBTSxFQUFFWCxPQUFPLENBQUNlLGFBQWE7SUFDN0JGLE9BQU8sRUFBRTtFQUNYO0FBQ0YsQ0FBQztBQUNEWCxNQUFNLENBQUNDLE9BQU8sQ0FBQytMLHFCQUFxQixHQUFHO0VBQ3JDQyxrQkFBa0IsRUFBRTtJQUNsQjdMLEdBQUcsRUFBRSxvREFBb0Q7SUFDekRDLElBQUksRUFDRiw0RkFBNEY7SUFDOUZJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0R1TCxjQUFjLEVBQUU7SUFDZDlMLEdBQUcsRUFBRSwrQ0FBK0M7SUFDcERDLElBQUksRUFDRix1SUFBdUk7SUFDeklJLE1BQU0sRUFBRVgsT0FBTyxDQUFDb0MsWUFBWSxDQUFDLGdCQUFnQjtFQUMvQyxDQUFDO0VBQ0RpSyxrQkFBa0IsRUFBRTtJQUNsQi9MLEdBQUcsRUFBRSxtREFBbUQ7SUFDeERDLElBQUksRUFDRiwwT0FBME87SUFDNU9JLE1BQU0sRUFBRVgsT0FBTyxDQUFDb0MsWUFBWSxDQUFDLG9CQUFvQjtFQUNuRCxDQUFDO0VBQ0RrSyxrQ0FBa0MsRUFBRTtJQUNsQ2hNLEdBQUcsRUFBRSxzRUFBc0U7SUFDM0VDLElBQUksRUFDRix1UEFBdVA7SUFDelBJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0QwTCxzQkFBc0IsRUFBRTtJQUN0QmpNLEdBQUcsRUFBRSx5REFBeUQ7SUFDOURDLElBQUksRUFDRiw4WEFBOFg7SUFDaFlJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0QyTCwwQkFBMEIsRUFBRTtJQUMxQmxNLEdBQUcsRUFBRSw0REFBNEQ7SUFDakVDLElBQUksRUFDRixpZEFBaWQ7SUFDbmRJLE1BQU0sRUFBRVgsT0FBTyxDQUFDb0MsWUFBWSxDQUFDLDRCQUE0QjtFQUMzRCxDQUFDO0VBQ0RxSyxlQUFlLEVBQUU7SUFDZm5NLEdBQUcsRUFBRSwrQ0FBK0M7SUFDcERDLElBQUksRUFDRjtFQUNKLENBQUM7RUFDRG1NLGlCQUFpQixFQUFFO0lBQ2pCcE0sR0FBRyxFQUFFLGlEQUFpRDtJQUN0REMsSUFBSSxFQUNGO0VBQ0osQ0FBQztFQUNEb00sZ0JBQWdCLEVBQUU7SUFDaEJyTSxHQUFHLEVBQUUsZ0RBQWdEO0lBQ3JEQyxJQUFJLEVBQ0Y7RUFDSjtBQUNGLENBQUM7QUFDREwsTUFBTSxDQUFDQyxPQUFPLENBQUN5TSxpQkFBaUIsR0FBRztFQUNqQ0Msc0JBQXNCLEVBQUU7SUFDdEJ2TSxHQUFHLEVBQUUsb0RBQW9EO0lBQ3pEQyxJQUFJLEVBQUUsK0RBQStEO0lBQ3JFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEaU0sMEJBQTBCLEVBQUU7SUFDMUJ4TSxHQUFHLEVBQUUsd0RBQXdEO0lBQzdEQyxJQUFJLEVBQUUsbUVBQW1FO0lBQ3pFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEa00sZUFBZSxFQUFFO0lBQ2Z6TSxHQUFHLEVBQUUsNENBQTRDO0lBQ2pEQyxJQUFJLEVBQUUseUZBQXlGO0lBQy9GSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEbU0sY0FBYyxFQUFFO0lBQ2QxTSxHQUFHLEVBQUUsMENBQTBDO0lBQy9DQyxJQUFJLEVBQ0Ysa29CQUFrb0I7SUFDcG9CSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQzJCLFdBQVc7SUFDM0JkLE9BQU8sRUFBRSxDQUFDLGdDQUFnQztFQUM1QztBQUNGLENBQUM7QUFDRDtBQUNBWCxNQUFNLENBQUNDLE9BQU8sQ0FBQzhNLFFBQVEsR0FBRztFQUN4QkMsS0FBSyxFQUFFO0lBQ0w1TSxHQUFHLEVBQUUsOEJBQThCO0lBQ25DQyxJQUFJLEVBQUUsYUFBYTtJQUNuQkcsUUFBUSxFQUFFO0VBQ1osQ0FBQztFQUNEeU0sS0FBSyxFQUFFO0lBQ0w3TSxHQUFHLEVBQUUsOEJBQThCO0lBQ25DQyxJQUFJLEVBQUUsZ0NBQWdDO0lBQ3RDRyxRQUFRLEVBQUU7RUFDWixDQUFDO0VBQ0QwTSxJQUFJLEVBQUU7SUFDSjlNLEdBQUcsRUFBRSw2QkFBNkI7SUFDbENDLElBQUksRUFBRSxzQkFBc0I7SUFDNUJHLFFBQVEsRUFBRTtFQUNaLENBQUM7RUFDRDJNLEtBQUssRUFBRTtJQUNML00sR0FBRyxFQUFFLDhCQUE4QjtJQUNuQ0MsSUFBSSxFQUFFLCtCQUErQjtJQUNyQ0csUUFBUSxFQUFFO0VBQ1osQ0FBQztFQUNEbUgsT0FBTyxFQUFFO0lBQ1B2SCxHQUFHLEVBQUUsZ0NBQWdDO0lBQ3JDQyxJQUFJLEVBQUUsZUFBZTtJQUNyQkcsUUFBUSxFQUFFO0VBQ1osQ0FBQztFQUNENE0sSUFBSSxFQUFFO0lBQ0poTixHQUFHLEVBQUUsNkJBQTZCO0lBQ2xDQyxJQUFJLEVBQUUsZUFBZTtJQUNyQkcsUUFBUSxFQUFFO0VBQ1o7QUFDRixDQUFDO0FBQ0RSLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDb04sY0FBYyxHQUFHO0VBQzlCQyxJQUFJLEVBQUU7SUFDSmxOLEdBQUcsRUFBRSw4Q0FBOEM7SUFDbkRDLElBQUksRUFDRix3SkFBd0o7SUFDMUpJLE1BQU0sRUFBRVgsT0FBTyxDQUFDMkI7RUFDbEIsQ0FBQztFQUNEa0QsUUFBUSxFQUFFO0lBQ1J2RSxHQUFHLEVBQUUsbURBQW1EO0lBQ3hEQyxJQUFJLEVBQ0YsZ0hBQWdIO0lBQ2xITSxPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0Q0TSxJQUFJLEVBQUU7SUFDSm5OLEdBQUcsRUFBRSw4Q0FBOEM7SUFDbkRDLElBQUksRUFDRiw4TEFBOEw7SUFDaE1HLFFBQVEsRUFBRTtFQUNaO0FBQ0YsQ0FBQztBQUNEUixNQUFNLENBQUNDLE9BQU8sQ0FBQ3VOLGVBQWUsR0FBRztFQUMvQkMsa0JBQWtCLEVBQUU7SUFDbEJyTixHQUFHLEVBQUUsNENBQTRDO0lBQ2pEQyxJQUFJLEVBQ0Ysd09BQXdPO0lBQzFPSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEbUIsT0FBTyxFQUFFO0lBQ1AxQixHQUFHLEVBQUUsZ0NBQWdDO0lBQ3JDQyxJQUFJLEVBQ0Y7RUFDSixDQUFDO0VBQ0RxTixhQUFhLEVBQUU7SUFDYnROLEdBQUcsRUFBRSxzQ0FBc0M7SUFDM0NDLElBQUksRUFDRjtFQUNKLENBQUM7RUFDRHNOLHVCQUF1QixFQUFFO0lBQ3ZCdk4sR0FBRyxFQUFFLGlEQUFpRDtJQUN0REMsSUFBSSxFQUNGLCtJQUErSTtJQUNqSkksTUFBTSxFQUFFWCxPQUFPLENBQUNZO0VBQ2xCLENBQUM7RUFDRGtOLFVBQVUsRUFBRTtJQUNWeE4sR0FBRyxFQUFFLG1DQUFtQztJQUN4Q0MsSUFBSSxFQUNGO0VBQ0osQ0FBQztFQUNEd04sZ0JBQWdCLEVBQUU7SUFDaEJ6TixHQUFHLEVBQUUsMENBQTBDO0lBQy9DQyxJQUFJLEVBQ0Ysb01BQW9NO0lBQ3RNSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2U7RUFDbEIsQ0FBQztFQUNEaU4sOEJBQThCLEVBQUU7SUFDOUIxTixHQUFHLEVBQUUsMERBQTBEO0lBQy9EQyxJQUFJLEVBQ0Ysb1FBQW9RO0lBQ3RRSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxnQ0FBZ0M7RUFDL0QsQ0FBQztFQUNENkwsY0FBYyxFQUFFO0lBQ2QzTixHQUFHLEVBQUUsdUNBQXVDO0lBQzVDQyxJQUFJLEVBQ0YsMmVBQTJlO0lBQzdlSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ1ksWUFBWTtJQUM1QlUsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNENE0sV0FBVyxFQUFFO0lBQ1g1TixHQUFHLEVBQUUsbUNBQW1DO0lBQ3hDQyxJQUFJLEVBQ0Y7RUFDSixDQUFDO0VBQ0Q0TixnQkFBZ0IsRUFBRTtJQUNoQjdOLEdBQUcsRUFBRSwwQ0FBMEM7SUFDL0NDLElBQUksRUFDRixvTkFBb047SUFDdE5JLE1BQU0sRUFBRVgsT0FBTyxDQUFDb0MsWUFBWSxDQUFDLGtCQUFrQjtFQUNqRCxDQUFDO0VBQ0RnTSxtQkFBbUIsRUFBRTtJQUNuQjlOLEdBQUcsRUFBRSw4Q0FBOEM7SUFDbkRDLElBQUksRUFDRiw4WUFBOFk7SUFDaFpJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0R3TixvQkFBb0IsRUFBRTtJQUNwQi9OLEdBQUcsRUFBRSwrQ0FBK0M7SUFDcERDLElBQUksRUFDRix3WUFBd1k7SUFDMVlJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0R5TixtQ0FBbUMsRUFBRTtJQUNuQ2hPLEdBQUcsRUFBRSxnRUFBZ0U7SUFDckVDLElBQUksRUFDRix5WkFBeVo7SUFDM1pJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0QwTiwrQkFBK0IsRUFBRTtJQUMvQmpPLEdBQUcsRUFBRSw0REFBNEQ7SUFDakVDLElBQUksRUFDRix1WkFBdVo7SUFDelpJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0QyTixpQ0FBaUMsRUFBRTtJQUNqQ2xPLEdBQUcsRUFBRSw4REFBOEQ7SUFDbkVDLElBQUksRUFDRixxWkFBcVo7SUFDdlpJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0Q0Tix1QkFBdUIsRUFBRTtJQUN2Qm5PLEdBQUcsRUFBRSxrREFBa0Q7SUFDdkRDLElBQUksRUFDRiwyWUFBMlk7SUFDN1lJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0Q2TixzQ0FBc0MsRUFBRTtJQUN0Q3BPLEdBQUcsRUFBRSxtRUFBbUU7SUFDeEVDLElBQUksRUFDRiw0WkFBNFo7SUFDOVpJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0Q4TixnQkFBZ0IsRUFBRTtJQUNoQnJPLEdBQUcsRUFBRSx5Q0FBeUM7SUFDOUNDLElBQUksRUFDRix5R0FBeUc7SUFDM0dJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZTtFQUNsQixDQUFDO0VBQ0Q2TiwyQkFBMkIsRUFBRTtJQUMzQnRPLEdBQUcsRUFBRSxzREFBc0Q7SUFDM0RDLElBQUksRUFDRix3TkFBd047SUFDMU5JLE1BQU0sRUFBRVgsT0FBTyxDQUFDZTtFQUNsQixDQUFDO0VBQ0Q4TixpQkFBaUIsRUFBRTtJQUNqQnZPLEdBQUcsRUFBRSwyQ0FBMkM7SUFDaERDLElBQUksRUFDRixrY0FBa2M7SUFDcGNJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZSxhQUFhO0lBQzdCRixPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0RpTyxtQkFBbUIsRUFBRTtJQUNuQnhPLEdBQUcsRUFBRSw4Q0FBOEM7SUFDbkRDLElBQUksRUFBRSxtRkFBbUY7SUFDekZJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZTtFQUNsQixDQUFDO0VBQ0RnTyxvQkFBb0IsRUFBRTtJQUNwQnpPLEdBQUcsRUFBRSw4Q0FBOEM7SUFDbkRDLElBQUksRUFDRixvSUFBb0k7SUFDdElJLE1BQU0sRUFBRVgsT0FBTyxDQUFDb0MsWUFBWSxDQUFDLHNCQUFzQjtFQUNyRCxDQUFDO0VBQ0Q0TSxZQUFZLEVBQUU7SUFDWjFPLEdBQUcsRUFBRSxxQ0FBcUM7SUFDMUNDLElBQUksRUFDRixzSEFBc0g7SUFDeEhJLE1BQU0sRUFBRVgsT0FBTyxDQUFDZTtFQUNsQixDQUFDO0VBQ0RrTyxnQkFBZ0IsRUFBRTtJQUNoQjNPLEdBQUcsRUFBRSwwQ0FBMEM7SUFDL0NDLElBQUksRUFDRixnSkFBZ0o7SUFDbEpJLE1BQU0sRUFBRVgsT0FBTyxDQUFDb0MsWUFBWSxDQUFDLGtCQUFrQjtFQUNqRCxDQUFDO0VBQ0Q4TSxlQUFlLEVBQUU7SUFDZjVPLEdBQUcsRUFBRSx5Q0FBeUM7SUFDOUNDLElBQUksRUFBRSx1RkFBdUY7SUFDN0ZJLE1BQU0sRUFBRVgsT0FBTyxDQUFDMkIsV0FBVztJQUMzQkwsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNENk4sYUFBYSxFQUFFO0lBQ2I3TyxHQUFHLEVBQUUsc0NBQXNDO0lBQzNDQyxJQUFJLEVBQ0YsNkpBQTZKO0lBQy9KSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxlQUFlO0VBQzlDLENBQUM7RUFDRGdOLGFBQWEsRUFBRTtJQUNiOU8sR0FBRyxFQUFFLHdDQUF3QztJQUM3Q0MsSUFBSSxFQUNGLG1LQUFtSztJQUNyS0ksTUFBTSxFQUFFWCxPQUFPLENBQUNvQyxZQUFZLENBQUMsZUFBZTtFQUM5QyxDQUFDO0VBQ0RpTixXQUFXLEVBQUU7SUFDWC9PLEdBQUcsRUFBRSxxQ0FBcUM7SUFDMUNDLElBQUksRUFDRixvSUFBb0k7SUFDdElJLE1BQU0sRUFBRVgsT0FBTyxDQUFDb0MsWUFBWSxDQUFDLGFBQWE7RUFDNUMsQ0FBQztFQUNEa04sbUJBQW1CLEVBQUU7SUFDbkJoUCxHQUFHLEVBQUUsNkNBQTZDO0lBQ2xEQyxJQUFJLEVBQ0YsOEZBQThGO0lBQ2hHSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxxQkFBcUI7RUFDcEQsQ0FBQztFQUNEbU4sU0FBUyxFQUFFO0lBQ1RqUCxHQUFHLEVBQUUsbUNBQW1DO0lBQ3hDQyxJQUFJLEVBQ0YsaUhBQWlIO0lBQ25ISSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxXQUFXO0VBQzFDLENBQUM7RUFDRG9OLFdBQVcsRUFBRTtJQUNYbFAsR0FBRyxFQUFFLHFDQUFxQztJQUMxQ0MsSUFBSSxFQUNGLG9JQUFvSTtJQUN0SUksTUFBTSxFQUFFWCxPQUFPLENBQUNvQyxZQUFZLENBQUMsYUFBYTtFQUM1QyxDQUFDO0VBQ0RxTixTQUFTLEVBQUU7SUFDVG5QLEdBQUcsRUFBRSxrQ0FBa0M7SUFDdkNDLElBQUksRUFDRjtFQUNKLENBQUM7RUFDRG1QLGFBQWEsRUFBRTtJQUNicFAsR0FBRyxFQUFFLHNDQUFzQztJQUMzQ0MsSUFBSSxFQUNGO0VBQ0osQ0FBQztFQUNEb1AsU0FBUyxFQUFFO0lBQ1RyUCxHQUFHLEVBQUUsa0NBQWtDO0lBQ3ZDQyxJQUFJLEVBQ0YsK0ZBQStGO0lBQ2pHSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxXQUFXO0VBQzFDLENBQUM7RUFDRHdOLGFBQWEsRUFBRTtJQUNidFAsR0FBRyxFQUFFLHNDQUFzQztJQUMzQ0MsSUFBSSxFQUNGO0VBQ0osQ0FBQztFQUNEc1AsZ0JBQWdCLEVBQUU7SUFDaEJ2UCxHQUFHLEVBQUUsMENBQTBDO0lBQy9DQyxJQUFJLEVBQUU7RUFDUixDQUFDO0VBQ0R1UCxjQUFjLEVBQUU7SUFDZHhQLEdBQUcsRUFBRSx1Q0FBdUM7SUFDNUNDLElBQUksRUFBRTtFQUNSLENBQUM7RUFDRHdQLGtCQUFrQixFQUFFO0lBQ2xCelAsR0FBRyxFQUFFLDRDQUE0QztJQUNqREMsSUFBSSxFQUNGLHNIQUFzSDtJQUN4SEksTUFBTSxFQUFFWCxPQUFPLENBQUMyQjtFQUNsQixDQUFDO0VBQ0RxTyxVQUFVLEVBQUU7SUFDVjFQLEdBQUcsRUFBRSxtQ0FBbUM7SUFDeENDLElBQUksRUFDRjtFQUNKLENBQUM7RUFDRDBQLFVBQVUsRUFBRTtJQUNWM1AsR0FBRyxFQUFFLG1DQUFtQztJQUN4Q0MsSUFBSSxFQUFFLHNEQUFzRDtJQUM1REksTUFBTSxFQUFFWCxPQUFPLENBQUNlO0VBQ2xCLENBQUM7RUFDRG1QLFdBQVcsRUFBRTtJQUNYNVAsR0FBRyxFQUFFLG9DQUFvQztJQUN6Q0MsSUFBSSxFQUFFLGtFQUFrRTtJQUN4RUksTUFBTSxFQUFFWCxPQUFPLENBQUNlO0VBQ2xCLENBQUM7RUFDRG9QLGNBQWMsRUFBRTtJQUNkN1AsR0FBRyxFQUFFLHdDQUF3QztJQUM3Q0MsSUFBSSxFQUNGLGdtQkFBZ21CO0lBQ2xtQkksTUFBTSxFQUFFWCxPQUFPLENBQUNvQyxZQUFZLENBQUMsZ0JBQWdCO0VBQy9DLENBQUM7RUFDRGdPLG9CQUFvQixFQUFFO0lBQ3BCOVAsR0FBRyxFQUFFLDhDQUE4QztJQUNuREMsSUFBSSxFQUNGO0VBQ0osQ0FBQztFQUNEOFAsd0JBQXdCLEVBQUU7SUFDeEIvUCxHQUFHLEVBQUUsbURBQW1EO0lBQ3hEQyxJQUFJLEVBQ0YsK0hBQStIO0lBQ2pJSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQywwQkFBMEI7RUFDekQsQ0FBQztFQUNEa08sZUFBZSxFQUFFO0lBQ2ZoUSxHQUFHLEVBQUUseUNBQXlDO0lBQzlDQyxJQUFJLEVBQ0YsNktBQTZLO0lBQy9LSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxpQkFBaUI7RUFDaEQsQ0FBQztFQUNEbU8sV0FBVyxFQUFFO0lBQ1hqUSxHQUFHLEVBQUUscUNBQXFDO0lBQzFDQyxJQUFJLEVBQ0YsMkpBQTJKO0lBQzdKSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxhQUFhO0VBQzVDLENBQUM7RUFDRG9PLGNBQWMsRUFBRTtJQUNkbFEsR0FBRyxFQUFFLHdDQUF3QztJQUM3Q0MsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEa1EsR0FBRyxFQUFFO0lBQ0huUSxHQUFHLEVBQUUsMkJBQTJCO0lBQ2hDQyxJQUFJLEVBQ0YsdUdBQXVHO0lBQ3pHSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2U7RUFDbEIsQ0FBQztFQUNEMlAsR0FBRyxFQUFFO0lBQ0hwUSxHQUFHLEVBQUUsMkJBQTJCO0lBQ2hDQyxJQUFJLEVBQUUsNEVBQTRFO0lBQ2xGSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2U7RUFDbEIsQ0FBQztFQUNENFAsMkJBQTJCLEVBQUU7SUFDM0JyUSxHQUFHLEVBQUUsc0RBQXNEO0lBQzNEQyxJQUFJLEVBQ0YsNkdBQTZHO0lBQy9HSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2U7RUFDbEIsQ0FBQztFQUNENlAsd0JBQXdCLEVBQUU7SUFDeEJ0USxHQUFHLEVBQUUsbURBQW1EO0lBQ3hEQyxJQUFJLEVBQ0Ysc0hBQXNIO0lBQ3hISSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2U7RUFDbEIsQ0FBQztFQUNEOFAsU0FBUyxFQUFFO0lBQ1R2USxHQUFHLEVBQUUsa0NBQWtDO0lBQ3ZDQyxJQUFJLEVBQ0Y7RUFDSixDQUFDO0VBQ0R1USxxQkFBcUIsRUFBRTtJQUNyQnhRLEdBQUcsRUFBRSxnREFBZ0Q7SUFDckRDLElBQUksRUFDRjtFQUNKLENBQUM7RUFDRHdRLDZCQUE2QixFQUFFO0lBQzdCelEsR0FBRyxFQUFFLHlEQUF5RDtJQUM5REMsSUFBSSxFQUFFO0VBQ1IsQ0FBQztFQUNEeVEsV0FBVyxFQUFFO0lBQ1gxUSxHQUFHLEVBQUUsb0NBQW9DO0lBQ3pDQyxJQUFJLEVBQUUsdUVBQXVFO0lBQzdFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2U7RUFDbEIsQ0FBQztFQUNEa1Esa0JBQWtCLEVBQUU7SUFDbEIzUSxHQUFHLEVBQUUsNkNBQTZDO0lBQ2xEQyxJQUFJLEVBQ0Ysb0lBQW9JO0lBQ3RJSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxvQkFBb0I7RUFDbkQsQ0FBQztFQUNEOE8sb0JBQW9CLEVBQUU7SUFDcEI1USxHQUFHLEVBQUUsOENBQThDO0lBQ25EQyxJQUFJLEVBQ0YseUdBQXlHO0lBQzNHSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ29DLFlBQVksQ0FBQyxzQkFBc0I7RUFDckQ7QUFDRixDQUFDO0FBQ0RsQyxNQUFNLENBQUNDLE9BQU8sQ0FBQ2dSLDZCQUE2QixHQUFHO0VBQzdDMUQsSUFBSSxFQUFFO0lBQ0puTixHQUFHLEVBQUUsNENBQTRDO0lBQ2pEQyxJQUFJLEVBQUUseUVBQXlFO0lBQy9FRyxRQUFRLEVBQUU7RUFDWixDQUFDO0VBQ0QwUSxPQUFPLEVBQUU7SUFDUDlRLEdBQUcsRUFBRSwrQ0FBK0M7SUFDcERDLElBQUksRUFBRSxrREFBa0Q7SUFDeERHLFFBQVEsRUFBRTtFQUNaO0FBQ0YsQ0FBQztBQUNEUixNQUFNLENBQUNDLE9BQU8sQ0FBQ2tSLFdBQVcsR0FBRztFQUMzQkMsT0FBTyxFQUFFO0lBQ1AvUSxJQUFJLEVBQUUsOERBQThEO0lBQ3BFSSxNQUFNLEVBQUVYLE9BQU8sQ0FBQ2UsYUFBYTtJQUM3QkYsT0FBTyxFQUFFO0VBQ1g7QUFDRixDQUFDO0FBQ0RYLE1BQU0sQ0FBQ0MsT0FBTyxDQUFDb1IsU0FBUyxHQUFHO0VBQ3pCQyxrQkFBa0IsRUFBRTtJQUNsQmxSLEdBQUcsRUFBRSw4Q0FBOEM7SUFDbkRDLElBQUksRUFDRiw4SEFBOEg7SUFDaElNLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRDRRLG9CQUFvQixFQUFFO0lBQ3BCblIsR0FBRyxFQUFFLGdEQUFnRDtJQUNyREMsSUFBSSxFQUNGLCtIQUErSDtJQUNqSU0sT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNENlEsbUJBQW1CLEVBQUU7SUFDbkJwUixHQUFHLEVBQUUsK0NBQStDO0lBQ3BEQyxJQUFJLEVBQ0YsaUpBQWlKO0lBQ25KTSxPQUFPLEVBQUU7RUFDWCxDQUFDO0VBQ0Q4USxZQUFZLEVBQUU7SUFDWnJSLEdBQUcsRUFBRSx1Q0FBdUM7SUFDNUNDLElBQUksRUFDRiwwS0FBMEs7SUFDNUtNLE9BQU8sRUFBRTtFQUNYLENBQUM7RUFDRCtRLGtCQUFrQixFQUFFO0lBQ2xCdFIsR0FBRyxFQUFFLDhDQUE4QztJQUNuREMsSUFBSSxFQUNGLHVMQUF1TDtJQUN6TE0sT0FBTyxFQUFFO0VBQ1gsQ0FBQztFQUNEZ1Isb0JBQW9CLEVBQUU7SUFDcEJ2UixHQUFHLEVBQUUsZ0RBQWdEO0lBQ3JEQyxJQUFJLEVBQ0Ysd0xBQXdMO0lBQzFMTSxPQUFPLEVBQUU7RUFDWDtBQUNGLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
|