mrpj 0.1.98 → 0.1.100

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/.jsii +421 -312
  2. package/API.md +117 -0
  3. package/lib/construct-project-options.d.ts +12 -0
  4. package/lib/construct-project-options.js +1 -1
  5. package/lib/construct-project.js +1 -1
  6. package/lib/features/automation.d.ts +2 -2
  7. package/lib/features/automation.js +1 -1
  8. package/lib/features/dependencies.d.ts +3 -3
  9. package/lib/features/dependencies.js +1 -1
  10. package/lib/features/eslint.d.ts +2 -2
  11. package/lib/features/eslint.js +4 -3
  12. package/lib/features/force-defaults.d.ts +1 -1
  13. package/lib/features/force-defaults.js +1 -1
  14. package/lib/features/logo.d.ts +4 -3
  15. package/lib/features/logo.js +1 -1
  16. package/lib/features/node-version.d.ts +2 -2
  17. package/lib/features/node-version.js +1 -1
  18. package/lib/features/package-info.d.ts +1 -1
  19. package/lib/features/package-info.js +1 -1
  20. package/lib/features/release.d.ts +2 -2
  21. package/lib/features/release.js +1 -1
  22. package/lib/logo/Logo.d.ts +1 -1
  23. package/lib/logo/Logo.js +2 -2
  24. package/lib/logo/SvgFile.d.ts +2 -1
  25. package/lib/logo/SvgFile.js +2 -2
  26. package/lib/logo/Wordmark.d.ts +3 -2
  27. package/lib/logo/Wordmark.js +2 -2
  28. package/lib/logo/private.ts/logo-task.d.ts +1 -1
  29. package/lib/logo/private.ts/logo-task.js +1 -1
  30. package/lib/projen-project-options.d.ts +12 -0
  31. package/lib/projen-project-options.js +1 -1
  32. package/lib/projen-project.d.ts +2 -2
  33. package/lib/projen-project.js +2 -2
  34. package/lib/typescript-project-options.d.ts +12 -0
  35. package/lib/typescript-project-options.js +1 -1
  36. package/lib/typescript-project.d.ts +2 -2
  37. package/lib/typescript-project.js +2 -2
  38. package/lib/utils.d.ts +1 -1
  39. package/lib/utils.js +1 -1
  40. package/package.json +4 -4
@@ -13,4 +13,4 @@ const featureMiddleware = (project, options) => {
13
13
  return project;
14
14
  };
15
15
  exports.featureMiddleware = featureMiddleware;
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mZWF0dXJlcy9sb2dvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLGtDQUE0QztBQVNyQyxNQUFNLGlCQUFpQixHQUF1RCxDQUFDLE9BQU8sRUFBRSxPQUErRCxFQUFFLEVBQUU7SUFDaEssSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsT0FBTyxDQUFDLFFBQVEsR0FBRyxJQUFJLGVBQVEsQ0FBQyxPQUFPLEVBQUU7WUFDdkMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLEdBQUcsT0FBTyxDQUFDLGVBQWU7U0FDM0IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMsQ0FBQztBQVZXLFFBQUEsaUJBQWlCLHFCQVU1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFByb2plY3QgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgU3ZnRmlsZSwgV29yZG1hcmsgfSBmcm9tICcuLi9sb2dvJztcbmltcG9ydCB7IFByb2plblByb2plY3RPcHRpb25zIH0gZnJvbSAnLi4vcHJvamVuLXByb2plY3Qtb3B0aW9ucyc7XG5pbXBvcnQgeyBGZWF0dXJlTWlkZGxld2FyZSwgTXV0YWJsZSB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGludGVyZmFjZSBQcm9qZWN0VHJhaXQge1xuICByZWFkb25seSBsb2dvPzogU3ZnRmlsZTtcbiAgcmVhZG9ubHkgd29yZG1hcms/OiBXb3JkbWFyaztcbn1cblxuZXhwb3J0IGNvbnN0IGZlYXR1cmVNaWRkbGV3YXJlOiBGZWF0dXJlTWlkZGxld2FyZTxQcm9qZWN0ICYgTXV0YWJsZTxQcm9qZWN0VHJhaXQ+PiA9IChwcm9qZWN0LCBvcHRpb25zOiBQaWNrPFByb2plblByb2plY3RPcHRpb25zLCAnbG9nbycgfCAnd29yZG1hcmtPcHRpb25zJz4pID0+IHtcbiAgaWYgKG9wdGlvbnMubG9nbykge1xuICAgIG9wdGlvbnMubG9nby5zeW50aChwcm9qZWN0KTtcbiAgICBwcm9qZWN0LndvcmRtYXJrID0gbmV3IFdvcmRtYXJrKHByb2plY3QsIHtcbiAgICAgIGxvZ286IG9wdGlvbnMubG9nbyxcbiAgICAgIC4uLm9wdGlvbnMud29yZG1hcmtPcHRpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIHByb2plY3Q7XG59O1xuIl19
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mZWF0dXJlcy9sb2dvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLGtDQUFtQztBQVM1QixNQUFNLGlCQUFpQixHQUF1RCxDQUFDLE9BQU8sRUFBRSxPQUErRCxFQUFFLEVBQUU7SUFDaEssSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUIsT0FBTyxDQUFDLFFBQVEsR0FBRyxJQUFJLGVBQVEsQ0FBQyxPQUFPLEVBQUU7WUFDdkMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLEdBQUcsT0FBTyxDQUFDLGVBQWU7U0FDM0IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMsQ0FBQztBQVZXLFFBQUEsaUJBQWlCLHFCQVU1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUHJvamVjdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgdHlwZSB7IFN2Z0ZpbGUgfSBmcm9tICcuLi9sb2dvJztcbmltcG9ydCB7IFdvcmRtYXJrIH0gZnJvbSAnLi4vbG9nbyc7XG5pbXBvcnQgdHlwZSB7IFByb2plblByb2plY3RPcHRpb25zIH0gZnJvbSAnLi4vcHJvamVuLXByb2plY3Qtb3B0aW9ucyc7XG5pbXBvcnQgdHlwZSB7IEZlYXR1cmVNaWRkbGV3YXJlLCBNdXRhYmxlIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFByb2plY3RUcmFpdCB7XG4gIHJlYWRvbmx5IGxvZ28/OiBTdmdGaWxlO1xuICByZWFkb25seSB3b3JkbWFyaz86IFdvcmRtYXJrO1xufVxuXG5leHBvcnQgY29uc3QgZmVhdHVyZU1pZGRsZXdhcmU6IEZlYXR1cmVNaWRkbGV3YXJlPFByb2plY3QgJiBNdXRhYmxlPFByb2plY3RUcmFpdD4+ID0gKHByb2plY3QsIG9wdGlvbnM6IFBpY2s8UHJvamVuUHJvamVjdE9wdGlvbnMsICdsb2dvJyB8ICd3b3JkbWFya09wdGlvbnMnPikgPT4ge1xuICBpZiAob3B0aW9ucy5sb2dvKSB7XG4gICAgb3B0aW9ucy5sb2dvLnN5bnRoKHByb2plY3QpO1xuICAgIHByb2plY3Qud29yZG1hcmsgPSBuZXcgV29yZG1hcmsocHJvamVjdCwge1xuICAgICAgbG9nbzogb3B0aW9ucy5sb2dvLFxuICAgICAgLi4ub3B0aW9ucy53b3JkbWFya09wdGlvbnMsXG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gcHJvamVjdDtcbn07XG4iXX0=
@@ -1,5 +1,5 @@
1
- import { Project } from 'projen';
2
- import { FeatureMiddleware } from '../utils';
1
+ import type { Project } from 'projen';
2
+ import type { FeatureMiddleware } from '../utils';
3
3
  export interface ProjectTrait {
4
4
  readonly minNodeVersion?: string;
5
5
  }
@@ -12,4 +12,4 @@ const featureMiddleware = (project, options) => {
12
12
  return project;
13
13
  };
14
14
  exports.featureMiddleware = featureMiddleware;
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS12ZXJzaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZlYXR1cmVzL25vZGUtdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBMkM7QUFPcEMsTUFBTSxpQkFBaUIsR0FBOEMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUU7SUFDL0YsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixJQUFJLE9BQU8sQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDO0lBQzlFLE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBSSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUVsQyxJQUFJLGlCQUFRLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDM0MsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25DLElBQUksaUJBQVEsQ0FBQyxPQUFPLEVBQUUsZUFBZSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsRCxPQUFPLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLENBQUM7SUFFMUMsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyxDQUFDO0FBVlcsUUFBQSxpQkFBaUIscUJBVTVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUHJvamVjdCwgVGV4dEZpbGUgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgRmVhdHVyZU1pZGRsZXdhcmUgfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvamVjdFRyYWl0IHtcbiAgcmVhZG9ubHkgbWluTm9kZVZlcnNpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBmZWF0dXJlTWlkZGxld2FyZTogRmVhdHVyZU1pZGRsZXdhcmU8UHJvamVjdCAmIFByb2plY3RUcmFpdD4gPSAocHJvamVjdCwgb3B0aW9ucykgPT4ge1xuICBjb25zdCB2ZXJzaW9uID0gb3B0aW9ucy53b3JrZmxvd05vZGVWZXJzaW9uID8/IHByb2plY3QubWluTm9kZVZlcnNpb24gPz8gJzE4JztcbiAgY29uc3QgbGluZXMgPSBbYHYke3ZlcnNpb259YCwgJyddO1xuXG4gIG5ldyBUZXh0RmlsZShwcm9qZWN0LCAnLm52bXJjJywgeyBsaW5lcyB9KTtcbiAgcHJvamVjdC5hZGRQYWNrYWdlSWdub3JlKCcubnZtcmMnKTtcbiAgbmV3IFRleHRGaWxlKHByb2plY3QsICcubm9kZS12ZXJzaW9uJywgeyBsaW5lcyB9KTtcbiAgcHJvamVjdC5hZGRQYWNrYWdlSWdub3JlKCcubm9kZS12ZXJzaW9uJyk7XG5cbiAgcmV0dXJuIHByb2plY3Q7XG59O1xuIl19
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS12ZXJzaW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZlYXR1cmVzL25vZGUtdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxtQ0FBa0M7QUFPM0IsTUFBTSxpQkFBaUIsR0FBOEMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQUU7SUFDL0YsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixJQUFJLE9BQU8sQ0FBQyxjQUFjLElBQUksSUFBSSxDQUFDO0lBQzlFLE1BQU0sS0FBSyxHQUFHLENBQUMsSUFBSSxPQUFPLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUVsQyxJQUFJLGlCQUFRLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDM0MsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ25DLElBQUksaUJBQVEsQ0FBQyxPQUFPLEVBQUUsZUFBZSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNsRCxPQUFPLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxDQUFDLENBQUM7SUFFMUMsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyxDQUFDO0FBVlcsUUFBQSxpQkFBaUIscUJBVTVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IFRleHRGaWxlIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB0eXBlIHsgRmVhdHVyZU1pZGRsZXdhcmUgfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvamVjdFRyYWl0IHtcbiAgcmVhZG9ubHkgbWluTm9kZVZlcnNpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBmZWF0dXJlTWlkZGxld2FyZTogRmVhdHVyZU1pZGRsZXdhcmU8UHJvamVjdCAmIFByb2plY3RUcmFpdD4gPSAocHJvamVjdCwgb3B0aW9ucykgPT4ge1xuICBjb25zdCB2ZXJzaW9uID0gb3B0aW9ucy53b3JrZmxvd05vZGVWZXJzaW9uID8/IHByb2plY3QubWluTm9kZVZlcnNpb24gPz8gJzE4JztcbiAgY29uc3QgbGluZXMgPSBbYHYke3ZlcnNpb259YCwgJyddO1xuXG4gIG5ldyBUZXh0RmlsZShwcm9qZWN0LCAnLm52bXJjJywgeyBsaW5lcyB9KTtcbiAgcHJvamVjdC5hZGRQYWNrYWdlSWdub3JlKCcubnZtcmMnKTtcbiAgbmV3IFRleHRGaWxlKHByb2plY3QsICcubm9kZS12ZXJzaW9uJywgeyBsaW5lcyB9KTtcbiAgcHJvamVjdC5hZGRQYWNrYWdlSWdub3JlKCcubm9kZS12ZXJzaW9uJyk7XG5cbiAgcmV0dXJuIHByb2plY3Q7XG59O1xuIl19
@@ -1,4 +1,4 @@
1
- import { OptionsMiddleware } from '../utils';
1
+ import type { OptionsMiddleware } from '../utils';
2
2
  export interface RepoInfoTrait {
3
3
  readonly repo: string;
4
4
  }
@@ -21,4 +21,4 @@ function githubUser(options) {
21
21
  return options.repo.split('/')[0];
22
22
  }
23
23
  exports.githubUser = githubUser;
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFja2FnZS1pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZlYXR1cmVzL3BhY2thZ2UtaW5mby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvQ0FBd0Q7QUFNeEQsU0FBZ0IsY0FBYyxDQUFDLFVBQWtCLEtBQUs7SUFDcEQsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQ2pCLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVqQyxPQUFPLElBQUEsaUJBQVMsRUFBQztZQUNmLElBQUksRUFBRSxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFDeEIsYUFBYSxFQUFFLGtCQUFrQixPQUFPLENBQUMsSUFBSSxNQUFNO1lBQ25ELFVBQVUsRUFBRSxrQkFBa0IsT0FBTyxDQUFDLElBQUksTUFBTTtZQUNoRCxRQUFRLEVBQUUsc0JBQXNCLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFDOUMsYUFBYSxFQUFFLHNCQUFzQixJQUFJLEVBQUU7WUFDM0MsU0FBUyxFQUFFLHNCQUFzQixJQUFJLEVBQUU7WUFDdkMsT0FBTztTQUNSLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDZCxDQUFDLENBQUM7QUFDSixDQUFDO0FBZEQsd0NBY0M7QUFFRCxTQUFnQixVQUFVLENBQUMsT0FBc0I7SUFDL0MsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNwQyxDQUFDO0FBRkQsZ0NBRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPcHRpb25zTWlkZGxld2FyZSwgZGVlcE1lcmdlIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlcG9JbmZvVHJhaXQge1xuICByZWFkb25seSByZXBvOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYWtlTWlkZGxld2FyZShsaWNlbnNlOiBzdHJpbmcgPSAnTUlUJyk6IE9wdGlvbnNNaWRkbGV3YXJlPFJlcG9JbmZvVHJhaXQ+IHtcbiAgcmV0dXJuIChvcHRpb25zKSA9PiB7XG4gICAgY29uc3QgdXNlciA9IGdpdGh1YlVzZXIob3B0aW9ucyk7XG5cbiAgICByZXR1cm4gZGVlcE1lcmdlKHtcbiAgICAgIG5hbWU6IGBAJHtvcHRpb25zLnJlcG99YCxcbiAgICAgIHJlcG9zaXRvcnlVcmw6IGBnaXRAZ2l0aHViLmNvbToke29wdGlvbnMucmVwb30uZ2l0YCxcbiAgICAgIHJlcG9zaXRvcnk6IGBnaXRAZ2l0aHViLmNvbToke29wdGlvbnMucmVwb30uZ2l0YCxcbiAgICAgIGhvbWVwYWdlOiBgaHR0cHM6Ly9naXRodWIuY29tLyR7b3B0aW9ucy5yZXBvfWAsXG4gICAgICBhdXRob3JBZGRyZXNzOiBgaHR0cHM6Ly9naXRodWIuY29tLyR7dXNlcn1gLFxuICAgICAgYXV0aG9yVXJsOiBgaHR0cHM6Ly9naXRodWIuY29tLyR7dXNlcn1gLFxuICAgICAgbGljZW5zZSxcbiAgICB9LCBvcHRpb25zKTtcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdpdGh1YlVzZXIob3B0aW9uczogUmVwb0luZm9UcmFpdCk6IHN0cmluZyB7XG4gIHJldHVybiBvcHRpb25zLnJlcG8uc3BsaXQoJy8nKVswXTtcbn1cbiJdfQ==
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFja2FnZS1pbmZvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZlYXR1cmVzL3BhY2thZ2UtaW5mby50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxvQ0FBcUM7QUFNckMsU0FBZ0IsY0FBYyxDQUFDLFVBQWtCLEtBQUs7SUFDcEQsT0FBTyxDQUFDLE9BQU8sRUFBRSxFQUFFO1FBQ2pCLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVqQyxPQUFPLElBQUEsaUJBQVMsRUFBQztZQUNmLElBQUksRUFBRSxJQUFJLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFDeEIsYUFBYSxFQUFFLGtCQUFrQixPQUFPLENBQUMsSUFBSSxNQUFNO1lBQ25ELFVBQVUsRUFBRSxrQkFBa0IsT0FBTyxDQUFDLElBQUksTUFBTTtZQUNoRCxRQUFRLEVBQUUsc0JBQXNCLE9BQU8sQ0FBQyxJQUFJLEVBQUU7WUFDOUMsYUFBYSxFQUFFLHNCQUFzQixJQUFJLEVBQUU7WUFDM0MsU0FBUyxFQUFFLHNCQUFzQixJQUFJLEVBQUU7WUFDdkMsT0FBTztTQUNSLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDZCxDQUFDLENBQUM7QUFDSixDQUFDO0FBZEQsd0NBY0M7QUFFRCxTQUFnQixVQUFVLENBQUMsT0FBc0I7SUFDL0MsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNwQyxDQUFDO0FBRkQsZ0NBRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IE9wdGlvbnNNaWRkbGV3YXJlIH0gZnJvbSAnLi4vdXRpbHMnO1xuaW1wb3J0IHsgZGVlcE1lcmdlIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJlcG9JbmZvVHJhaXQge1xuICByZWFkb25seSByZXBvOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBtYWtlTWlkZGxld2FyZShsaWNlbnNlOiBzdHJpbmcgPSAnTUlUJyk6IE9wdGlvbnNNaWRkbGV3YXJlPFJlcG9JbmZvVHJhaXQ+IHtcbiAgcmV0dXJuIChvcHRpb25zKSA9PiB7XG4gICAgY29uc3QgdXNlciA9IGdpdGh1YlVzZXIob3B0aW9ucyk7XG5cbiAgICByZXR1cm4gZGVlcE1lcmdlKHtcbiAgICAgIG5hbWU6IGBAJHtvcHRpb25zLnJlcG99YCxcbiAgICAgIHJlcG9zaXRvcnlVcmw6IGBnaXRAZ2l0aHViLmNvbToke29wdGlvbnMucmVwb30uZ2l0YCxcbiAgICAgIHJlcG9zaXRvcnk6IGBnaXRAZ2l0aHViLmNvbToke29wdGlvbnMucmVwb30uZ2l0YCxcbiAgICAgIGhvbWVwYWdlOiBgaHR0cHM6Ly9naXRodWIuY29tLyR7b3B0aW9ucy5yZXBvfWAsXG4gICAgICBhdXRob3JBZGRyZXNzOiBgaHR0cHM6Ly9naXRodWIuY29tLyR7dXNlcn1gLFxuICAgICAgYXV0aG9yVXJsOiBgaHR0cHM6Ly9naXRodWIuY29tLyR7dXNlcn1gLFxuICAgICAgbGljZW5zZSxcbiAgICB9LCBvcHRpb25zKTtcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdpdGh1YlVzZXIob3B0aW9uczogUmVwb0luZm9UcmFpdCk6IHN0cmluZyB7XG4gIHJldHVybiBvcHRpb25zLnJlcG8uc3BsaXQoJy8nKVswXTtcbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
- import { TypeScriptProjectOptions } from '../typescript-project-options';
2
- import { OptionsMiddleware } from '../utils';
1
+ import type { TypeScriptProjectOptions } from '../typescript-project-options';
2
+ import type { OptionsMiddleware } from '../utils';
3
3
  export interface ReleaseOptionsTrait {
4
4
  readonly projenrcTsOptions?: TypeScriptProjectOptions['projenrcTsOptions'];
5
5
  readonly releasableCommitTypes?: string[];
@@ -17,4 +17,4 @@ const optionsMiddleware = (options) => (0, utils_1.deepMerge)({
17
17
  }, options);
18
18
  exports.optionsMiddleware = optionsMiddleware;
19
19
  exports.RELEASABLE_COMMIT_TYPES_DEFAULT = ['feat', 'fix', 'chore', 'revert'];
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsZWFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mZWF0dXJlcy9yZWxlYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUF1RDtBQUV2RCxvQ0FBbUU7QUFPNUQsTUFBTSxpQkFBaUIsR0FBMkMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUEsaUJBQVMsRUFBQztJQUM5RixPQUFPLEVBQUUsS0FBSztJQUNkLG9CQUFvQixFQUFFLE1BQU07SUFDNUIsWUFBWSxFQUFFLElBQUk7SUFDbEIsU0FBUyxFQUFFLG1CQUFVLENBQUMsU0FBUyxDQUFDLE1BQU07SUFDdEMsU0FBUyxFQUFFLElBQUEsaUJBQVMsRUFBQztRQUNuQixPQUFPLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxJQUFJLGNBQWM7UUFDckQsT0FBTyxDQUFDLGlCQUFpQixFQUFFLGFBQWEsSUFBSSxVQUFVO1FBQ3RELGdCQUFnQjtLQUNqQixDQUFDO0lBQ0YsaUJBQWlCLEVBQUUsMEJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLHFCQUFxQixJQUFJLHVDQUErQixDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsR0FBRyxDQUFDO0NBQzVILEVBQUUsT0FBTyxDQUFDLENBQUM7QUFYQyxRQUFBLGlCQUFpQixxQkFXbEI7QUFFQyxRQUFBLCtCQUErQixHQUFHLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWxlYXNhYmxlQ29tbWl0cywgamF2YXNjcmlwdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMgfSBmcm9tICcuLi90eXBlc2NyaXB0LXByb2plY3Qtb3B0aW9ucyc7XG5pbXBvcnQgeyBPcHRpb25zTWlkZGxld2FyZSwgZGVlcE1lcmdlLCBub0VtcHRpZXMgfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVsZWFzZU9wdGlvbnNUcmFpdCB7XG4gIHJlYWRvbmx5IHByb2plbnJjVHNPcHRpb25zPzogVHlwZVNjcmlwdFByb2plY3RPcHRpb25zWydwcm9qZW5yY1RzT3B0aW9ucyddO1xuICByZWFkb25seSByZWxlYXNhYmxlQ29tbWl0VHlwZXM/OiBzdHJpbmdbXTtcbn1cblxuZXhwb3J0IGNvbnN0IG9wdGlvbnNNaWRkbGV3YXJlOiBPcHRpb25zTWlkZGxld2FyZTxSZWxlYXNlT3B0aW9uc1RyYWl0PiA9IChvcHRpb25zKSA9PiBkZWVwTWVyZ2Uoe1xuICByZWxlYXNlOiBmYWxzZSxcbiAgZGVmYXVsdFJlbGVhc2VCcmFuY2g6ICdtYWluJyxcbiAgcmVsZWFzZVRvTnBtOiB0cnVlLFxuICBucG1BY2Nlc3M6IGphdmFzY3JpcHQuTnBtQWNjZXNzLlBVQkxJQyxcbiAgbnBtaWdub3JlOiBub0VtcHRpZXMoW1xuICAgIG9wdGlvbnMucHJvamVucmNUc09wdGlvbnM/LmZpbGVuYW1lID8/ICcucHJvamVucmMudHMnLFxuICAgIG9wdGlvbnMucHJvamVucmNUc09wdGlvbnM/LnByb2plbkNvZGVEaXIgPz8gJ3Byb2plbnJjJyxcbiAgICAnLmdpdGF0dHJpYnV0ZXMnLFxuICBdKSxcbiAgcmVsZWFzYWJsZUNvbW1pdHM6IFJlbGVhc2FibGVDb21taXRzLm9mVHlwZSgob3B0aW9ucy5yZWxlYXNhYmxlQ29tbWl0VHlwZXMgPz8gUkVMRUFTQUJMRV9DT01NSVRfVFlQRVNfREVGQVVMVCkuc29ydCgpLCAnLicpLFxufSwgb3B0aW9ucyk7XG5cbmV4cG9ydCBjb25zdCBSRUxFQVNBQkxFX0NPTU1JVF9UWVBFU19ERUZBVUxUID0gWydmZWF0JywgJ2ZpeCcsICdjaG9yZScsICdyZXZlcnQnXTtcbiJdfQ==
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsZWFzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mZWF0dXJlcy9yZWxlYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUF1RDtBQUd2RCxvQ0FBZ0Q7QUFPekMsTUFBTSxpQkFBaUIsR0FBMkMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUEsaUJBQVMsRUFBQztJQUM5RixPQUFPLEVBQUUsS0FBSztJQUNkLG9CQUFvQixFQUFFLE1BQU07SUFDNUIsWUFBWSxFQUFFLElBQUk7SUFDbEIsU0FBUyxFQUFFLG1CQUFVLENBQUMsU0FBUyxDQUFDLE1BQU07SUFDdEMsU0FBUyxFQUFFLElBQUEsaUJBQVMsRUFBQztRQUNuQixPQUFPLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxJQUFJLGNBQWM7UUFDckQsT0FBTyxDQUFDLGlCQUFpQixFQUFFLGFBQWEsSUFBSSxVQUFVO1FBQ3RELGdCQUFnQjtLQUNqQixDQUFDO0lBQ0YsaUJBQWlCLEVBQUUsMEJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsT0FBTyxDQUFDLHFCQUFxQixJQUFJLHVDQUErQixDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsR0FBRyxDQUFDO0NBQzVILEVBQUUsT0FBTyxDQUFDLENBQUM7QUFYQyxRQUFBLGlCQUFpQixxQkFXbEI7QUFFQyxRQUFBLCtCQUErQixHQUFHLENBQUMsTUFBTSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWxlYXNhYmxlQ29tbWl0cywgamF2YXNjcmlwdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgdHlwZSB7IFR5cGVTY3JpcHRQcm9qZWN0T3B0aW9ucyB9IGZyb20gJy4uL3R5cGVzY3JpcHQtcHJvamVjdC1vcHRpb25zJztcbmltcG9ydCB0eXBlIHsgT3B0aW9uc01pZGRsZXdhcmUgfSBmcm9tICcuLi91dGlscyc7XG5pbXBvcnQgeyBkZWVwTWVyZ2UsIG5vRW1wdGllcyB9IGZyb20gJy4uL3V0aWxzJztcblxuZXhwb3J0IGludGVyZmFjZSBSZWxlYXNlT3B0aW9uc1RyYWl0IHtcbiAgcmVhZG9ubHkgcHJvamVucmNUc09wdGlvbnM/OiBUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnNbJ3Byb2plbnJjVHNPcHRpb25zJ107XG4gIHJlYWRvbmx5IHJlbGVhc2FibGVDb21taXRUeXBlcz86IHN0cmluZ1tdO1xufVxuXG5leHBvcnQgY29uc3Qgb3B0aW9uc01pZGRsZXdhcmU6IE9wdGlvbnNNaWRkbGV3YXJlPFJlbGVhc2VPcHRpb25zVHJhaXQ+ID0gKG9wdGlvbnMpID0+IGRlZXBNZXJnZSh7XG4gIHJlbGVhc2U6IGZhbHNlLFxuICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogJ21haW4nLFxuICByZWxlYXNlVG9OcG06IHRydWUsXG4gIG5wbUFjY2VzczogamF2YXNjcmlwdC5OcG1BY2Nlc3MuUFVCTElDLFxuICBucG1pZ25vcmU6IG5vRW1wdGllcyhbXG4gICAgb3B0aW9ucy5wcm9qZW5yY1RzT3B0aW9ucz8uZmlsZW5hbWUgPz8gJy5wcm9qZW5yYy50cycsXG4gICAgb3B0aW9ucy5wcm9qZW5yY1RzT3B0aW9ucz8ucHJvamVuQ29kZURpciA/PyAncHJvamVucmMnLFxuICAgICcuZ2l0YXR0cmlidXRlcycsXG4gIF0pLFxuICByZWxlYXNhYmxlQ29tbWl0czogUmVsZWFzYWJsZUNvbW1pdHMub2ZUeXBlKChvcHRpb25zLnJlbGVhc2FibGVDb21taXRUeXBlcyA/PyBSRUxFQVNBQkxFX0NPTU1JVF9UWVBFU19ERUZBVUxUKS5zb3J0KCksICcuJyksXG59LCBvcHRpb25zKTtcblxuZXhwb3J0IGNvbnN0IFJFTEVBU0FCTEVfQ09NTUlUX1RZUEVTX0RFRkFVTFQgPSBbJ2ZlYXQnLCAnZml4JywgJ2Nob3JlJywgJ3JldmVydCddO1xuIl19
@@ -1,4 +1,4 @@
1
- import { Project } from 'projen';
1
+ import type { Project } from 'projen';
2
2
  /**
3
3
  * Provide additional configuration for the logo.
4
4
  */
package/lib/logo/Logo.js CHANGED
@@ -102,5 +102,5 @@ class Logo {
102
102
  }
103
103
  exports.Logo = Logo;
104
104
  _a = JSII_RTTI_SYMBOL_1;
105
- Logo[_a] = { fqn: "mrpj.logo.Logo", version: "0.1.98" };
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9nby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2dvL0xvZ28udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwyQkFBa0M7QUFFbEMsc0RBQXVEO0FBQ3ZELHVDQUFvQztBQWlIcEM7O0dBRUc7QUFDSCxNQUFhLElBQUk7SUFDZjs7T0FFRztJQUNJLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBWSxFQUFFLE9BQW1CO1FBQ3RELE1BQU0sT0FBTyxHQUFHLElBQUEsaUJBQVksRUFBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyRCxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN2QixHQUFHLE9BQU87WUFDVixVQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLFdBQVcsQ0FBQyxPQUFlLEVBQUUsT0FBK0I7UUFDeEUsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDdkIsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixHQUFHLE9BQU87U0FDWCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLFdBQVcsQ0FBQyxPQUFlLGlCQUFpQjtRQUN4RCxNQUFNLE9BQU8sR0FBRzs7eUVBRXFELENBQUM7UUFFdEUsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDdkIsT0FBTyxFQUFFLElBQUk7WUFDYixLQUFLLEVBQUUsRUFBRTtZQUNULE1BQU0sRUFBRSxFQUFFO1NBQ1gsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFlLGlCQUFpQixFQUFFLFVBQWdDLEVBQUU7UUFDMUYsTUFBTSxFQUNKLFFBQVEsR0FBRyxTQUFTLEVBQ3BCLFVBQVUsR0FBRyxTQUFTLEVBQ3RCLFNBQVMsR0FBRyxTQUFTLEVBQ3JCLFlBQVksR0FBRyxTQUFTLEVBQ3hCLElBQUksRUFDSixhQUFhLEdBQ2QsR0FBRyxPQUFPLENBQUM7UUFFWixNQUFNLGtCQUFrQixHQUFHLGFBQWEsQ0FBQyxDQUFDLENBQUMsZUFBZSxhQUFhLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2hGLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsZUFBZSxrQkFBa0IsSUFBSSxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBRTlFLE1BQU0sT0FBTyxHQUFHOzt3REFFb0MsUUFBUTs4Q0FDbEIsVUFBVTs7O29DQUdwQixZQUFZOzs7OztxRkFLcUMsU0FBUzs7Ozs7OztNQU94RixTQUFTO0tBQ1YsQ0FBQztRQUVGLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ3ZCLE9BQU8sRUFBRSxJQUFJO1lBQ2IsS0FBSyxFQUFFLEVBQUU7WUFDVCxNQUFNLEVBQUUsRUFBRTtTQUNYLENBQUMsQ0FBQztJQUNMLENBQUM7SUFVRCxZQUFvQixPQUFlLEVBQUUsT0FBd0I7UUFDM0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUM3QixJQUFJLENBQUMsS0FBSyxHQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFFMUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUNqQyxDQUFDO0lBRU0sS0FBSyxDQUFDLE9BQWdCO1FBQzNCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUMsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEIsSUFBQSx5QkFBYSxFQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVyxDQUFDLENBQUM7WUFDekMsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLEdBQUcsR0FBRyxJQUFJLGlCQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDckQsSUFBQSx5QkFBYSxFQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQzs7QUFwSEgsb0JBcUhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVhZEZpbGVTeW5jIH0gZnJvbSAnZnMnO1xuaW1wb3J0IHsgUHJvamVjdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBsb2dvVG9QbmdUYXNrIH0gZnJvbSAnLi9wcml2YXRlLnRzL2xvZ28tdGFzayc7XG5pbXBvcnQgeyBTdmdGaWxlIH0gZnJvbSAnLi9TdmdGaWxlJztcblxuLyoqXG4gKiBQcm92aWRlIGFkZGl0aW9uYWwgY29uZmlndXJhdGlvbiBmb3IgdGhlIGxvZ28uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nb0NvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgd2lkdGggb2YgdGhlIGxvZ28gaW4gcHguXG4gICAqL1xuICByZWFkb25seSB3aWR0aDogbnVtYmVyO1xuICAvKipcbiAgICogVGhlIGhlaWdodCBvZiB0aGUgbG9nbyBpbiBweC5cbiAgICovXG4gIHJlYWRvbmx5IGhlaWdodDogbnVtYmVyO1xuICAvKipcbiAgICogU2NhbGUgdGhlIGxvZ28gYnkgYSBmYWN0b3IuXG4gICAqIEBkZWZhdWx0IDFcbiAgICovXG4gIHJlYWRvbmx5IHNjYWxlPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEFsbCByZXF1aXJlZCBpbmZvcm1hdGlvbiB0byByZXByZXNlbnQgYSBsb2dvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIExvZ29JbmZvIGV4dGVuZHMgTG9nb0NvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgU1ZHIGNvbnRlbnQgb2YgdGhlIGxvZ28gYXMgYSBzdHJpbmcuXG4gICAqKi9cbiAgcmVhZG9ubHkgY29udGVudDogc3RyaW5nO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgdG8gY3JlYXRlIGEgbG9nbyBmcm9tIGFuIFNWRyBzdHJpbmcuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nb0Zyb21Db250ZW50T3B0aW9ucyBleHRlbmRzIExvZ29Db25maWcge1xuICAvKipcbiAgICogVGhlIHBhdGggd2hlcmUgdGhlIGxvZ28gZmlsZSB3aWxsIGJlIGNyZWF0ZWQuXG4gICAqL1xuICByZWFkb25seSBvdXRGaWxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgdG8gY3JlYXRlIGEgbG9nbyBmcm9tIGFuIFNWRyBzdHJpbmcuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nb0ZvclByb2plbk9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIHBhdGggd2hlcmUgdGhlIGxvZ28gZmlsZSB3aWxsIGJlIGNyZWF0ZWQuXG4gICAqL1xuICByZWFkb25seSBvdXRGaWxlPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGhleCBjb2RlIGZvciB0aGUgY29sb3Igb2YgdGhlIHBhcmNlbCBvdXRsaW5lLlxuICAgKiBAZGVmYXVsdCBcIiM2NjIwMGJcIlxuICAgKi9cbiAgcmVhZG9ubHkgb3V0bGluZUNvbG9yPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGhleCBjb2RlIGZvciB0aGUgY29sb3Igb2YgdGhlIHBhY2thZ2luZyB0YXBlLlxuICAgKiBAZGVmYXVsdCBcIiNjYmRhZGFcIlxuICAgKi9cbiAgcmVhZG9ubHkgdGFwZUNvbG9yPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGhleCBjb2RlIGZvciB0aGUgY29sb3Igb2YgdGhlIGZyb250IG9mIHRoZSBib3guXG4gICAqIEBkZWZhdWx0IFwiI2ZhOTgzY1wiXG4gICAqL1xuICByZWFkb25seSBmcm9udENvbG9yPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGhleCBjb2RlIGZvciB0aGUgY29sb3Igb2YgdGhlIHRvcCBvZiB0aGUgYm94LlxuICAgKiBAZGVmYXVsdCBcIiNmY2MxNjFcIlxuICAgKi9cbiAgcmVhZG9ubHkgdG9wQ29sb3I/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgaWNvbiBpbiBmcm9udCBvZiB0aGUgcGFyY2VsIGJveC5cbiAgICogQGRlZmF1bHQgLSBubyBpY29uXG4gICAqL1xuICByZWFkb25seSBpY29uPzogc3RyaW5nO1xuICAvKipcbiAgICogU1ZHIHRyYW5zZm9ybSBmb3IgdGhlIGljb24uXG4gICAqIExpa2VseSBuZWVkZWQgdG8gcG9zaXRpb24gdGhlIGljb24gY29ycmVjdGx5LlxuICAgKi9cbiAgcmVhZG9ubHkgaWNvblRyYW5zZm9ybT86IHN0cmluZztcbn1cblxuaW50ZXJmYWNlIExvZ29Gcm9tT3B0aW9ucyBleHRlbmRzIExvZ29Db25maWcge1xuICByZWFkb25seSBzb3VyY2VGaWxlPzogc3RyaW5nO1xuICByZWFkb25seSBvdXRGaWxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEltcGxlbWVudGF0aW9uIGludGVyZmFjZSBvZiBhIGxvZ29cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJTG9nbyB7XG4gIC8qKlxuICAgKiBUaGUgd2lkdGggb2YgdGhlIGxvZ28gaW4gcHguXG4gICAqL1xuICByZWFkb25seSB3aWR0aDogbnVtYmVyO1xuICAvKipcbiAgICogVGhlIGhlaWdodCBvZiB0aGUgbG9nbyBpbiBweC5cbiAgICovXG4gIHJlYWRvbmx5IGhlaWdodDogbnVtYmVyO1xuICAvKipcbiAgICogU2NhbGUgdGhlIGxvZ28gYnkgYSBmYWN0b3IuXG4gICAqIEBkZWZhdWx0IDFcbiAgICovXG4gIHJlYWRvbmx5IHNjYWxlPzogbnVtYmVyO1xuICAvKipcbiAgICogVGhlIFNWRyBjb250ZW50IG9mIHRoZSBsb2dvIGFzIGEgc3RyaW5nLlxuICAgKiovXG4gIHJlYWRvbmx5IGNvbnRlbnQ6IHN0cmluZztcbiAgLyoqXG4gICAqIFN5bnRoIHRoZSBsb2dvLlxuICAgKi9cbiAgc3ludGgocHJvamVjdDogUHJvamVjdCk6IHZvaWQ7XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgbG9nbyBmb3IgdGhlIHByb2plY3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2dvIGltcGxlbWVudHMgSUxvZ28ge1xuICAvKipcbiAgICogVXNlIGFuIGV4aXN0aW5nIGxvZ28gZnJvbSBhIGZpbGUuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21GaWxlKHBhdGg6IHN0cmluZywgb3B0aW9uczogTG9nb0NvbmZpZykge1xuICAgIGNvbnN0IGNvbnRlbnQgPSByZWFkRmlsZVN5bmMocGF0aCkudG9TdHJpbmcoKS50cmltKCk7XG4gICAgcmV0dXJuIG5ldyBMb2dvKGNvbnRlbnQsIHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBzb3VyY2VGaWxlOiBwYXRoLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSB0aGUgbG9nbyBmcm9tIHRoaXMgc3ZnIHNuaXBwZXQuXG4gICAqIENvbnRlbnQgc2hvdWxkIE5PVCBpbmNsdWRlIHRoZSBvdXRlcm1vc3QgPHN2Zz4gdGFnLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tQ29udGVudChjb250ZW50OiBzdHJpbmcsIG9wdGlvbnM6IExvZ29Gcm9tQ29udGVudE9wdGlvbnMpIHtcbiAgICByZXR1cm4gbmV3IExvZ28oY29udGVudCwge1xuICAgICAgb3V0RmlsZTogJ2ltYWdlcy9sb2dvLnN2ZycsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEFuIGVtcHR5IHBsYWNlaG9sZGVyIGxvZ28uXG4gICAqIENhbiBiZSB1c2VkIHRoZSBnZXQgc3RhcnRlZCBiZWZvcmUgYSBsb2dvIGlzIGNyZWF0ZWQuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHBsYWNlaG9sZGVyKHBhdGg6IHN0cmluZyA9ICdpbWFnZXMvbG9nby5zdmcnKSB7XG4gICAgY29uc3QgY29udGVudCA9IGA8cmVjdCBmaWxsPVwiI0FBQUFBQVwiIHdpZHRoPVwiODBcIiBoZWlnaHQ9XCI4MFwiIC8+XG4gICAgPGxpbmUgeDE9XCIwXCIgeDI9XCI4MFwiIHkxPVwiMFwiIHkyPVwiODBcIiBzdHJva2U9XCJyZWRcIiBzdHJva2Utd2lkdGg9XCIyXCIgLz5cbiAgICA8bGluZSB4MT1cIjgwXCIgeDI9XCIwXCIgeTE9XCIwXCIgeTI9XCI4MFwiIHN0cm9rZT1cInJlZFwiIHN0cm9rZS13aWR0aD1cIjJcIiAvPmA7XG5cbiAgICByZXR1cm4gbmV3IExvZ28oY29udGVudCwge1xuICAgICAgb3V0RmlsZTogcGF0aCxcbiAgICAgIHdpZHRoOiA4MCxcbiAgICAgIGhlaWdodDogODAsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQSBsb2dvIGZvciBwcm9qZW4gcmVsYXRlZCBwcm9qZWN0cy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZm9yUHJvamVuKHBhdGg6IHN0cmluZyA9ICdpbWFnZXMvbG9nby5zdmcnLCBvcHRpb25zOiBMb2dvRm9yUHJvamVuT3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3Qge1xuICAgICAgdG9wQ29sb3IgPSAnI2ZjYzE2MScsXG4gICAgICBmcm9udENvbG9yID0gJyNmYTk4M2MnLFxuICAgICAgdGFwZUNvbG9yID0gJyNjYmRhZGEnLFxuICAgICAgb3V0bGluZUNvbG9yID0gJyM2NjIwMGInLFxuICAgICAgaWNvbixcbiAgICAgIGljb25UcmFuc2Zvcm0sXG4gICAgfSA9IG9wdGlvbnM7XG5cbiAgICBjb25zdCBpY29uR3JvdXBUcmFuc2Zvcm0gPSBpY29uVHJhbnNmb3JtID8gYCB0cmFuc2Zvcm09XCIke2ljb25UcmFuc2Zvcm19XCJgIDogJyc7XG4gICAgY29uc3QgaWNvbkdyb3VwID0gaWNvbiA/IGA8ZyBpZD1cImljb25cIiR7aWNvbkdyb3VwVHJhbnNmb3JtfT4ke2ljb259PC9nPmAgOiAnJztcblxuICAgIGNvbnN0IGNvbnRlbnQgPSBgPGcgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDQgMTkpXCIgc2hhcGUtcmVuZGVyaW5nPVwiY3Jpc3BFZGdlc1wiPlxuICAgIDwhLS0gZmlsbCAtLT5cbiAgICA8cGF0aCBkPVwibSAwLDAgbCAxMCwtMTUuNiBoIDYwIGwgMTAsMTUuNiB6XCIgZmlsbD1cIiR7dG9wQ29sb3J9XCIgLz5cbiAgICA8cGF0aCBkPVwibSAwLDAgaCA4MCB2IDY1IGggLTgwIHpcIiBmaWxsPVwiJHtmcm9udENvbG9yfVwiIC8+XG5cbiAgICA8IS0tIGxpbmVzIC0tPlxuICAgIDxnIHN0cm9rZS13aWR0aD1cIjIuNVwiIHN0cm9rZT1cIiR7b3V0bGluZUNvbG9yfVwiPlxuICAgICAgICA8IS0tIG91dGxpbmUgLS0+XG4gICAgICAgIDxwYXRoIGQ9XCJtIDAsMCBsIDEwLC0xNS42IGggNjAgbCAxMCwxNS42IHYgNjUgaCAtODAgelwiIGZpbGwtb3BhY2l0eT1cIjBcIiAvPlxuXG4gICAgICAgIDwhLS0gdGFwZSAtLT5cbiAgICAgICAgPHBhdGggZD1cIm0gMzAsMCB2IDEyIGwgNSwtMyA1LDMgNSwtMyA1LDMgdiAtMTIgbCAtNC41LC0xNS42IC0xMSwwIHpcIiBmaWxsPVwiJHt0YXBlQ29sb3J9XCIgc3Ryb2tlLWxpbmVqb2luPVwiYmV2ZWxcIiAvPlxuXG4gICAgICAgIDwhLS0gZnJvbnQgbGluZSAtLT5cbiAgICAgICAgPGxpbmUgeDE9XCIwXCIgeDI9XCI4MFwiIHkxPVwiMFwiIHkyPVwiMFwiIC8+XG4gICAgPC9nPlxuXG4gICAgPCEtLSBDdXN0b20gSWNvbiAtLT5cbiAgICAke2ljb25Hcm91cH1cbjwvZz5gO1xuXG4gICAgcmV0dXJuIG5ldyBMb2dvKGNvbnRlbnQsIHtcbiAgICAgIG91dEZpbGU6IHBhdGgsXG4gICAgICB3aWR0aDogODgsXG4gICAgICBoZWlnaHQ6IDg4LFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlYWRvbmx5IHdpZHRoOiBudW1iZXI7XG4gIHB1YmxpYyByZWFkb25seSBoZWlnaHQ6IG51bWJlcjtcbiAgcHVibGljIHJlYWRvbmx5IHNjYWxlPzogbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgY29udGVudDogc3RyaW5nO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgb3V0RmlsZT86IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBzb3VyY2VGaWxlPzogc3RyaW5nO1xuXG4gIHByaXZhdGUgY29uc3RydWN0b3IoY29udGVudDogc3RyaW5nLCBvcHRpb25zOiBMb2dvRnJvbU9wdGlvbnMpIHtcbiAgICB0aGlzLmNvbnRlbnQgPSBjb250ZW50O1xuICAgIHRoaXMud2lkdGggPSBvcHRpb25zLndpZHRoO1xuICAgIHRoaXMuaGVpZ2h0ID0gb3B0aW9ucy5oZWlnaHQ7XG4gICAgdGhpcy5zY2FsZT0gb3B0aW9ucy5zY2FsZTtcblxuICAgIHRoaXMuc291cmNlRmlsZSA9IG9wdGlvbnMuc291cmNlRmlsZTtcbiAgICB0aGlzLm91dEZpbGUgPSBvcHRpb25zLm91dEZpbGU7XG4gIH1cblxuICBwdWJsaWMgc3ludGgocHJvamVjdDogUHJvamVjdCkge1xuICAgIGlmICh0aGlzLnNvdXJjZUZpbGUpIHtcbiAgICAgIHByb2plY3QuYWRkUGFja2FnZUlnbm9yZSh0aGlzLnNvdXJjZUZpbGUpO1xuICAgIH1cbiAgICBpZiAodGhpcy5vdXRGaWxlKSB7XG4gICAgICBwcm9qZWN0LmFkZFBhY2thZ2VJZ25vcmUodGhpcy5vdXRGaWxlKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMub3V0RmlsZSkge1xuICAgICAgbG9nb1RvUG5nVGFzayhwcm9qZWN0LCB0aGlzLnNvdXJjZUZpbGUhKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBzdmcgPSBuZXcgU3ZnRmlsZShwcm9qZWN0LCB0aGlzLm91dEZpbGUsIHRoaXMpO1xuICAgIGxvZ29Ub1BuZ1Rhc2socHJvamVjdCwgc3ZnLmZpbGVQYXRoKTtcbiAgfVxufVxuIl19
105
+ Logo[_a] = { fqn: "mrpj.logo.Logo", version: "0.1.100" };
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9nby5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2dvL0xvZ28udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwyQkFBa0M7QUFFbEMsc0RBQXVEO0FBQ3ZELHVDQUFvQztBQWlIcEM7O0dBRUc7QUFDSCxNQUFhLElBQUk7SUFDZjs7T0FFRztJQUNJLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBWSxFQUFFLE9BQW1CO1FBQ3RELE1BQU0sT0FBTyxHQUFHLElBQUEsaUJBQVksRUFBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyRCxPQUFPLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN2QixHQUFHLE9BQU87WUFDVixVQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLFdBQVcsQ0FBQyxPQUFlLEVBQUUsT0FBK0I7UUFDeEUsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDdkIsT0FBTyxFQUFFLGlCQUFpQjtZQUMxQixHQUFHLE9BQU87U0FDWCxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLFdBQVcsQ0FBQyxPQUFlLGlCQUFpQjtRQUN4RCxNQUFNLE9BQU8sR0FBRzs7eUVBRXFELENBQUM7UUFFdEUsT0FBTyxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDdkIsT0FBTyxFQUFFLElBQUk7WUFDYixLQUFLLEVBQUUsRUFBRTtZQUNULE1BQU0sRUFBRSxFQUFFO1NBQ1gsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFNBQVMsQ0FBQyxPQUFlLGlCQUFpQixFQUFFLFVBQWdDLEVBQUU7UUFDMUYsTUFBTSxFQUNKLFFBQVEsR0FBRyxTQUFTLEVBQ3BCLFVBQVUsR0FBRyxTQUFTLEVBQ3RCLFNBQVMsR0FBRyxTQUFTLEVBQ3JCLFlBQVksR0FBRyxTQUFTLEVBQ3hCLElBQUksRUFDSixhQUFhLEdBQ2QsR0FBRyxPQUFPLENBQUM7UUFFWixNQUFNLGtCQUFrQixHQUFHLGFBQWEsQ0FBQyxDQUFDLENBQUMsZUFBZSxhQUFhLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ2hGLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsZUFBZSxrQkFBa0IsSUFBSSxJQUFJLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBRTlFLE1BQU0sT0FBTyxHQUFHOzt3REFFb0MsUUFBUTs4Q0FDbEIsVUFBVTs7O29DQUdwQixZQUFZOzs7OztxRkFLcUMsU0FBUzs7Ozs7OztNQU94RixTQUFTO0tBQ1YsQ0FBQztRQUVGLE9BQU8sSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ3ZCLE9BQU8sRUFBRSxJQUFJO1lBQ2IsS0FBSyxFQUFFLEVBQUU7WUFDVCxNQUFNLEVBQUUsRUFBRTtTQUNYLENBQUMsQ0FBQztJQUNMLENBQUM7SUFVRCxZQUFvQixPQUFlLEVBQUUsT0FBd0I7UUFDM0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDO1FBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQztRQUM3QixJQUFJLENBQUMsS0FBSyxHQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFFMUIsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztJQUNqQyxDQUFDO0lBRU0sS0FBSyxDQUFDLE9BQWdCO1FBQzNCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDNUMsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2pCLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekMsQ0FBQztRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbEIsSUFBQSx5QkFBYSxFQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsVUFBVyxDQUFDLENBQUM7WUFDekMsT0FBTztRQUNULENBQUM7UUFFRCxNQUFNLEdBQUcsR0FBRyxJQUFJLGlCQUFPLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDckQsSUFBQSx5QkFBYSxFQUFDLE9BQU8sRUFBRSxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdkMsQ0FBQzs7QUFwSEgsb0JBcUhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVhZEZpbGVTeW5jIH0gZnJvbSAnZnMnO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IGxvZ29Ub1BuZ1Rhc2sgfSBmcm9tICcuL3ByaXZhdGUudHMvbG9nby10YXNrJztcbmltcG9ydCB7IFN2Z0ZpbGUgfSBmcm9tICcuL1N2Z0ZpbGUnO1xuXG4vKipcbiAqIFByb3ZpZGUgYWRkaXRpb25hbCBjb25maWd1cmF0aW9uIGZvciB0aGUgbG9nby5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMb2dvQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSB3aWR0aCBvZiB0aGUgbG9nbyBpbiBweC5cbiAgICovXG4gIHJlYWRvbmx5IHdpZHRoOiBudW1iZXI7XG4gIC8qKlxuICAgKiBUaGUgaGVpZ2h0IG9mIHRoZSBsb2dvIGluIHB4LlxuICAgKi9cbiAgcmVhZG9ubHkgaGVpZ2h0OiBudW1iZXI7XG4gIC8qKlxuICAgKiBTY2FsZSB0aGUgbG9nbyBieSBhIGZhY3Rvci5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgc2NhbGU/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQWxsIHJlcXVpcmVkIGluZm9ybWF0aW9uIHRvIHJlcHJlc2VudCBhIGxvZ28uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTG9nb0luZm8gZXh0ZW5kcyBMb2dvQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBTVkcgY29udGVudCBvZiB0aGUgbG9nbyBhcyBhIHN0cmluZy5cbiAgICoqL1xuICByZWFkb25seSBjb250ZW50OiBzdHJpbmc7XG59XG5cbi8qKlxuICogT3B0aW9ucyB0byBjcmVhdGUgYSBsb2dvIGZyb20gYW4gU1ZHIHN0cmluZy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMb2dvRnJvbUNvbnRlbnRPcHRpb25zIGV4dGVuZHMgTG9nb0NvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgcGF0aCB3aGVyZSB0aGUgbG9nbyBmaWxlIHdpbGwgYmUgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IG91dEZpbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogT3B0aW9ucyB0byBjcmVhdGUgYSBsb2dvIGZyb20gYW4gU1ZHIHN0cmluZy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMb2dvRm9yUHJvamVuT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgcGF0aCB3aGVyZSB0aGUgbG9nbyBmaWxlIHdpbGwgYmUgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IG91dEZpbGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgaGV4IGNvZGUgZm9yIHRoZSBjb2xvciBvZiB0aGUgcGFyY2VsIG91dGxpbmUuXG4gICAqIEBkZWZhdWx0IFwiIzY2MjAwYlwiXG4gICAqL1xuICByZWFkb25seSBvdXRsaW5lQ29sb3I/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgaGV4IGNvZGUgZm9yIHRoZSBjb2xvciBvZiB0aGUgcGFja2FnaW5nIHRhcGUuXG4gICAqIEBkZWZhdWx0IFwiI2NiZGFkYVwiXG4gICAqL1xuICByZWFkb25seSB0YXBlQ29sb3I/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgaGV4IGNvZGUgZm9yIHRoZSBjb2xvciBvZiB0aGUgZnJvbnQgb2YgdGhlIGJveC5cbiAgICogQGRlZmF1bHQgXCIjZmE5ODNjXCJcbiAgICovXG4gIHJlYWRvbmx5IGZyb250Q29sb3I/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgaGV4IGNvZGUgZm9yIHRoZSBjb2xvciBvZiB0aGUgdG9wIG9mIHRoZSBib3guXG4gICAqIEBkZWZhdWx0IFwiI2ZjYzE2MVwiXG4gICAqL1xuICByZWFkb25seSB0b3BDb2xvcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBpY29uIGluIGZyb250IG9mIHRoZSBwYXJjZWwgYm94LlxuICAgKiBAZGVmYXVsdCAtIG5vIGljb25cbiAgICovXG4gIHJlYWRvbmx5IGljb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTVkcgdHJhbnNmb3JtIGZvciB0aGUgaWNvbi5cbiAgICogTGlrZWx5IG5lZWRlZCB0byBwb3NpdGlvbiB0aGUgaWNvbiBjb3JyZWN0bHkuXG4gICAqL1xuICByZWFkb25seSBpY29uVHJhbnNmb3JtPzogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgTG9nb0Zyb21PcHRpb25zIGV4dGVuZHMgTG9nb0NvbmZpZyB7XG4gIHJlYWRvbmx5IHNvdXJjZUZpbGU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IG91dEZpbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogSW1wbGVtZW50YXRpb24gaW50ZXJmYWNlIG9mIGEgbG9nb1xuICovXG5leHBvcnQgaW50ZXJmYWNlIElMb2dvIHtcbiAgLyoqXG4gICAqIFRoZSB3aWR0aCBvZiB0aGUgbG9nbyBpbiBweC5cbiAgICovXG4gIHJlYWRvbmx5IHdpZHRoOiBudW1iZXI7XG4gIC8qKlxuICAgKiBUaGUgaGVpZ2h0IG9mIHRoZSBsb2dvIGluIHB4LlxuICAgKi9cbiAgcmVhZG9ubHkgaGVpZ2h0OiBudW1iZXI7XG4gIC8qKlxuICAgKiBTY2FsZSB0aGUgbG9nbyBieSBhIGZhY3Rvci5cbiAgICogQGRlZmF1bHQgMVxuICAgKi9cbiAgcmVhZG9ubHkgc2NhbGU/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBUaGUgU1ZHIGNvbnRlbnQgb2YgdGhlIGxvZ28gYXMgYSBzdHJpbmcuXG4gICAqKi9cbiAgcmVhZG9ubHkgY29udGVudDogc3RyaW5nO1xuICAvKipcbiAgICogU3ludGggdGhlIGxvZ28uXG4gICAqL1xuICBzeW50aChwcm9qZWN0OiBQcm9qZWN0KTogdm9pZDtcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSBsb2dvIGZvciB0aGUgcHJvamVjdC5cbiAqL1xuZXhwb3J0IGNsYXNzIExvZ28gaW1wbGVtZW50cyBJTG9nbyB7XG4gIC8qKlxuICAgKiBVc2UgYW4gZXhpc3RpbmcgbG9nbyBmcm9tIGEgZmlsZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUZpbGUocGF0aDogc3RyaW5nLCBvcHRpb25zOiBMb2dvQ29uZmlnKSB7XG4gICAgY29uc3QgY29udGVudCA9IHJlYWRGaWxlU3luYyhwYXRoKS50b1N0cmluZygpLnRyaW0oKTtcbiAgICByZXR1cm4gbmV3IExvZ28oY29udGVudCwge1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIHNvdXJjZUZpbGU6IHBhdGgsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIHRoZSBsb2dvIGZyb20gdGhpcyBzdmcgc25pcHBldC5cbiAgICogQ29udGVudCBzaG91bGQgTk9UIGluY2x1ZGUgdGhlIG91dGVybW9zdCA8c3ZnPiB0YWcuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Db250ZW50KGNvbnRlbnQ6IHN0cmluZywgb3B0aW9uczogTG9nb0Zyb21Db250ZW50T3B0aW9ucykge1xuICAgIHJldHVybiBuZXcgTG9nbyhjb250ZW50LCB7XG4gICAgICBvdXRGaWxlOiAnaW1hZ2VzL2xvZ28uc3ZnJyxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQW4gZW1wdHkgcGxhY2Vob2xkZXIgbG9nby5cbiAgICogQ2FuIGJlIHVzZWQgdGhlIGdldCBzdGFydGVkIGJlZm9yZSBhIGxvZ28gaXMgY3JlYXRlZC5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcGxhY2Vob2xkZXIocGF0aDogc3RyaW5nID0gJ2ltYWdlcy9sb2dvLnN2ZycpIHtcbiAgICBjb25zdCBjb250ZW50ID0gYDxyZWN0IGZpbGw9XCIjQUFBQUFBXCIgd2lkdGg9XCI4MFwiIGhlaWdodD1cIjgwXCIgLz5cbiAgICA8bGluZSB4MT1cIjBcIiB4Mj1cIjgwXCIgeTE9XCIwXCIgeTI9XCI4MFwiIHN0cm9rZT1cInJlZFwiIHN0cm9rZS13aWR0aD1cIjJcIiAvPlxuICAgIDxsaW5lIHgxPVwiODBcIiB4Mj1cIjBcIiB5MT1cIjBcIiB5Mj1cIjgwXCIgc3Ryb2tlPVwicmVkXCIgc3Ryb2tlLXdpZHRoPVwiMlwiIC8+YDtcblxuICAgIHJldHVybiBuZXcgTG9nbyhjb250ZW50LCB7XG4gICAgICBvdXRGaWxlOiBwYXRoLFxuICAgICAgd2lkdGg6IDgwLFxuICAgICAgaGVpZ2h0OiA4MCxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIGxvZ28gZm9yIHByb2plbiByZWxhdGVkIHByb2plY3RzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmb3JQcm9qZW4ocGF0aDogc3RyaW5nID0gJ2ltYWdlcy9sb2dvLnN2ZycsIG9wdGlvbnM6IExvZ29Gb3JQcm9qZW5PcHRpb25zID0ge30pIHtcbiAgICBjb25zdCB7XG4gICAgICB0b3BDb2xvciA9ICcjZmNjMTYxJyxcbiAgICAgIGZyb250Q29sb3IgPSAnI2ZhOTgzYycsXG4gICAgICB0YXBlQ29sb3IgPSAnI2NiZGFkYScsXG4gICAgICBvdXRsaW5lQ29sb3IgPSAnIzY2MjAwYicsXG4gICAgICBpY29uLFxuICAgICAgaWNvblRyYW5zZm9ybSxcbiAgICB9ID0gb3B0aW9ucztcblxuICAgIGNvbnN0IGljb25Hcm91cFRyYW5zZm9ybSA9IGljb25UcmFuc2Zvcm0gPyBgIHRyYW5zZm9ybT1cIiR7aWNvblRyYW5zZm9ybX1cImAgOiAnJztcbiAgICBjb25zdCBpY29uR3JvdXAgPSBpY29uID8gYDxnIGlkPVwiaWNvblwiJHtpY29uR3JvdXBUcmFuc2Zvcm19PiR7aWNvbn08L2c+YCA6ICcnO1xuXG4gICAgY29uc3QgY29udGVudCA9IGA8ZyB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoNCAxOSlcIiBzaGFwZS1yZW5kZXJpbmc9XCJjcmlzcEVkZ2VzXCI+XG4gICAgPCEtLSBmaWxsIC0tPlxuICAgIDxwYXRoIGQ9XCJtIDAsMCBsIDEwLC0xNS42IGggNjAgbCAxMCwxNS42IHpcIiBmaWxsPVwiJHt0b3BDb2xvcn1cIiAvPlxuICAgIDxwYXRoIGQ9XCJtIDAsMCBoIDgwIHYgNjUgaCAtODAgelwiIGZpbGw9XCIke2Zyb250Q29sb3J9XCIgLz5cblxuICAgIDwhLS0gbGluZXMgLS0+XG4gICAgPGcgc3Ryb2tlLXdpZHRoPVwiMi41XCIgc3Ryb2tlPVwiJHtvdXRsaW5lQ29sb3J9XCI+XG4gICAgICAgIDwhLS0gb3V0bGluZSAtLT5cbiAgICAgICAgPHBhdGggZD1cIm0gMCwwIGwgMTAsLTE1LjYgaCA2MCBsIDEwLDE1LjYgdiA2NSBoIC04MCB6XCIgZmlsbC1vcGFjaXR5PVwiMFwiIC8+XG5cbiAgICAgICAgPCEtLSB0YXBlIC0tPlxuICAgICAgICA8cGF0aCBkPVwibSAzMCwwIHYgMTIgbCA1LC0zIDUsMyA1LC0zIDUsMyB2IC0xMiBsIC00LjUsLTE1LjYgLTExLDAgelwiIGZpbGw9XCIke3RhcGVDb2xvcn1cIiBzdHJva2UtbGluZWpvaW49XCJiZXZlbFwiIC8+XG5cbiAgICAgICAgPCEtLSBmcm9udCBsaW5lIC0tPlxuICAgICAgICA8bGluZSB4MT1cIjBcIiB4Mj1cIjgwXCIgeTE9XCIwXCIgeTI9XCIwXCIgLz5cbiAgICA8L2c+XG5cbiAgICA8IS0tIEN1c3RvbSBJY29uIC0tPlxuICAgICR7aWNvbkdyb3VwfVxuPC9nPmA7XG5cbiAgICByZXR1cm4gbmV3IExvZ28oY29udGVudCwge1xuICAgICAgb3V0RmlsZTogcGF0aCxcbiAgICAgIHdpZHRoOiA4OCxcbiAgICAgIGhlaWdodDogODgsXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgcmVhZG9ubHkgd2lkdGg6IG51bWJlcjtcbiAgcHVibGljIHJlYWRvbmx5IGhlaWdodDogbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgc2NhbGU/OiBudW1iZXI7XG4gIHB1YmxpYyByZWFkb25seSBjb250ZW50OiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBvdXRGaWxlPzogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IHNvdXJjZUZpbGU/OiBzdHJpbmc7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3Rvcihjb250ZW50OiBzdHJpbmcsIG9wdGlvbnM6IExvZ29Gcm9tT3B0aW9ucykge1xuICAgIHRoaXMuY29udGVudCA9IGNvbnRlbnQ7XG4gICAgdGhpcy53aWR0aCA9IG9wdGlvbnMud2lkdGg7XG4gICAgdGhpcy5oZWlnaHQgPSBvcHRpb25zLmhlaWdodDtcbiAgICB0aGlzLnNjYWxlPSBvcHRpb25zLnNjYWxlO1xuXG4gICAgdGhpcy5zb3VyY2VGaWxlID0gb3B0aW9ucy5zb3VyY2VGaWxlO1xuICAgIHRoaXMub3V0RmlsZSA9IG9wdGlvbnMub3V0RmlsZTtcbiAgfVxuXG4gIHB1YmxpYyBzeW50aChwcm9qZWN0OiBQcm9qZWN0KSB7XG4gICAgaWYgKHRoaXMuc291cmNlRmlsZSkge1xuICAgICAgcHJvamVjdC5hZGRQYWNrYWdlSWdub3JlKHRoaXMuc291cmNlRmlsZSk7XG4gICAgfVxuICAgIGlmICh0aGlzLm91dEZpbGUpIHtcbiAgICAgIHByb2plY3QuYWRkUGFja2FnZUlnbm9yZSh0aGlzLm91dEZpbGUpO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5vdXRGaWxlKSB7XG4gICAgICBsb2dvVG9QbmdUYXNrKHByb2plY3QsIHRoaXMuc291cmNlRmlsZSEpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHN2ZyA9IG5ldyBTdmdGaWxlKHByb2plY3QsIHRoaXMub3V0RmlsZSwgdGhpcyk7XG4gICAgbG9nb1RvUG5nVGFzayhwcm9qZWN0LCBzdmcuZmlsZVBhdGgpO1xuICB9XG59XG4iXX0=
@@ -1,4 +1,5 @@
1
- import { Project, SourceCode, SourceCodeOptions } from 'projen';
1
+ import type { Project, SourceCodeOptions } from 'projen';
2
+ import { SourceCode } from 'projen';
2
3
  /**
3
4
  * Options for SvgFile
4
5
  */
@@ -37,5 +37,5 @@ class SvgFile extends projen_1.SourceCode {
37
37
  }
38
38
  exports.SvgFile = SvgFile;
39
39
  _a = JSII_RTTI_SYMBOL_1;
40
- SvgFile[_a] = { fqn: "mrpj.logo.SvgFile", version: "0.1.98" };
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3ZnRmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2dvL1N2Z0ZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtQ0FBZ0U7QUFhaEU7O0dBRUc7QUFDSCxNQUFhLE9BQVEsU0FBUSxtQkFBVTtJQUNyQyxZQUFtQixPQUFnQixFQUFFLFFBQWdCLEVBQUUsT0FBdUI7UUFDNUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUU7WUFDdkIsTUFBTSxFQUFFLENBQUM7WUFDVCxHQUFHLE9BQU87U0FDWCxDQUFDLENBQUM7UUFFSCxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBRTdDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsTUFBTSxNQUFNLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLGtEQUFrRCxLQUFLLEdBQUcsS0FBSyxhQUFhLE1BQU0sR0FBRyxLQUFLLGtCQUFrQixLQUFLLElBQUksTUFBTSxJQUFJLENBQUMsQ0FBQztRQUMzSSxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdkIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2QsQ0FBQztRQUNELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7O09BR0c7SUFDSyxLQUFLLENBQUMsS0FBYTtRQUN6QixLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xCLENBQUM7SUFDSCxDQUFDOztBQTdCSCwwQkE4QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9qZWN0LCBTb3VyY2VDb2RlLCBTb3VyY2VDb2RlT3B0aW9ucyB9IGZyb20gJ3Byb2plbic7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgU3ZnRmlsZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN2Z0ZpbGVPcHRpb25zIGV4dGVuZHMgU291cmNlQ29kZU9wdGlvbnMge1xuICByZWFkb25seSB3aWR0aDogbnVtYmVyO1xuICByZWFkb25seSBoZWlnaHQ6IG51bWJlcjtcbiAgcmVhZG9ubHkgc2NhbGU/OiBudW1iZXI7XG4gIHJlYWRvbmx5IHN0eWxlPzogc3RyaW5nO1xuICByZWFkb25seSBjb250ZW50Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEEgU1ZHIGZpbGVcbiAqL1xuZXhwb3J0IGNsYXNzIFN2Z0ZpbGUgZXh0ZW5kcyBTb3VyY2VDb2RlIHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIGZpbGVQYXRoOiBzdHJpbmcsIG9wdGlvbnM6IFN2Z0ZpbGVPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCwgZmlsZVBhdGgsIHtcbiAgICAgIGluZGVudDogNCxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgfSk7XG5cbiAgICBjb25zdCB7IHdpZHRoLCBoZWlnaHQsIHNjYWxlID0gMSB9ID0gb3B0aW9ucztcblxuICAgIHRoaXMubGluZShgPCEtLSAke3RoaXMubWFya2VyfSAtLT5gKTtcbiAgICB0aGlzLm9wZW4oYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiJHt3aWR0aCAqIHNjYWxlfVwiIGhlaWdodD1cIiR7aGVpZ2h0ICogc2NhbGV9XCIgdmlld0JveD1cIjAgMCAke3dpZHRofSAke2hlaWdodH1cIj5gKTtcbiAgICBpZiAob3B0aW9ucy5zdHlsZSkge1xuICAgICAgdGhpcy5vcGVuKCc8c3R5bGU+Jyk7XG4gICAgICB0aGlzLmxpbmVzKG9wdGlvbnMuc3R5bGUpO1xuICAgICAgdGhpcy5jbG9zZSgnPC9zdHlsZT4nKTtcbiAgICAgIHRoaXMubGluZSgpO1xuICAgIH1cbiAgICB0aGlzLmxpbmVzKG9wdGlvbnMuY29udGVudCA/PyAnJyk7XG4gICAgdGhpcy5jbG9zZSgnPC9zdmc+Jyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyB0ZXh0IGFzIGxpbmVzIHRvIHRoZSB0ZXh0IGZpbGUuXG4gICAqIEBwYXJhbSBsaW5lcyB0aGUgdGV4dCB3aXRoIGxpbmUgYnJlYWtzIHRvIGFkZFxuICAgKi9cbiAgcHJpdmF0ZSBsaW5lcyhsaW5lczogc3RyaW5nKSB7XG4gICAgZm9yIChjb25zdCBsaW5lIG9mIGxpbmVzLnNwbGl0KCdcXG4nKSkge1xuICAgICAgdGhpcy5saW5lKGxpbmUpO1xuICAgIH1cbiAgfVxufVxuIl19
40
+ SvgFile[_a] = { fqn: "mrpj.logo.SvgFile", version: "0.1.100" };
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3ZnRmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2dvL1N2Z0ZpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSxtQ0FBb0M7QUFhcEM7O0dBRUc7QUFDSCxNQUFhLE9BQVEsU0FBUSxtQkFBVTtJQUNyQyxZQUFtQixPQUFnQixFQUFFLFFBQWdCLEVBQUUsT0FBdUI7UUFDNUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUU7WUFDdkIsTUFBTSxFQUFFLENBQUM7WUFDVCxHQUFHLE9BQU87U0FDWCxDQUFDLENBQUM7UUFFSCxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBRTdDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsTUFBTSxNQUFNLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLGtEQUFrRCxLQUFLLEdBQUcsS0FBSyxhQUFhLE1BQU0sR0FBRyxLQUFLLGtCQUFrQixLQUFLLElBQUksTUFBTSxJQUFJLENBQUMsQ0FBQztRQUMzSSxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNsQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDdkIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2QsQ0FBQztRQUNELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7O09BR0c7SUFDSyxLQUFLLENBQUMsS0FBYTtRQUN6QixLQUFLLE1BQU0sSUFBSSxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2xCLENBQUM7SUFDSCxDQUFDOztBQTdCSCwwQkE4QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFByb2plY3QsIFNvdXJjZUNvZGVPcHRpb25zIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IFNvdXJjZUNvZGUgfSBmcm9tICdwcm9qZW4nO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIFN2Z0ZpbGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdmdGaWxlT3B0aW9ucyBleHRlbmRzIFNvdXJjZUNvZGVPcHRpb25zIHtcbiAgcmVhZG9ubHkgd2lkdGg6IG51bWJlcjtcbiAgcmVhZG9ubHkgaGVpZ2h0OiBudW1iZXI7XG4gIHJlYWRvbmx5IHNjYWxlPzogbnVtYmVyO1xuICByZWFkb25seSBzdHlsZT86IHN0cmluZztcbiAgcmVhZG9ubHkgY29udGVudD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBBIFNWRyBmaWxlXG4gKi9cbmV4cG9ydCBjbGFzcyBTdmdGaWxlIGV4dGVuZHMgU291cmNlQ29kZSB7XG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBmaWxlUGF0aDogc3RyaW5nLCBvcHRpb25zOiBTdmdGaWxlT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QsIGZpbGVQYXRoLCB7XG4gICAgICBpbmRlbnQ6IDQsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuXG4gICAgY29uc3QgeyB3aWR0aCwgaGVpZ2h0LCBzY2FsZSA9IDEgfSA9IG9wdGlvbnM7XG5cbiAgICB0aGlzLmxpbmUoYDwhLS0gJHt0aGlzLm1hcmtlcn0gLS0+YCk7XG4gICAgdGhpcy5vcGVuKGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIiR7d2lkdGggKiBzY2FsZX1cIiBoZWlnaHQ9XCIke2hlaWdodCAqIHNjYWxlfVwiIHZpZXdCb3g9XCIwIDAgJHt3aWR0aH0gJHtoZWlnaHR9XCI+YCk7XG4gICAgaWYgKG9wdGlvbnMuc3R5bGUpIHtcbiAgICAgIHRoaXMub3BlbignPHN0eWxlPicpO1xuICAgICAgdGhpcy5saW5lcyhvcHRpb25zLnN0eWxlKTtcbiAgICAgIHRoaXMuY2xvc2UoJzwvc3R5bGU+Jyk7XG4gICAgICB0aGlzLmxpbmUoKTtcbiAgICB9XG4gICAgdGhpcy5saW5lcyhvcHRpb25zLmNvbnRlbnQgPz8gJycpO1xuICAgIHRoaXMuY2xvc2UoJzwvc3ZnPicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgdGV4dCBhcyBsaW5lcyB0byB0aGUgdGV4dCBmaWxlLlxuICAgKiBAcGFyYW0gbGluZXMgdGhlIHRleHQgd2l0aCBsaW5lIGJyZWFrcyB0byBhZGRcbiAgICovXG4gIHByaXZhdGUgbGluZXMobGluZXM6IHN0cmluZykge1xuICAgIGZvciAoY29uc3QgbGluZSBvZiBsaW5lcy5zcGxpdCgnXFxuJykpIHtcbiAgICAgIHRoaXMubGluZShsaW5lKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,6 @@
1
- import { Component, Project } from 'projen';
2
- import { LogoInfo } from './Logo';
1
+ import type { Project } from 'projen';
2
+ import { Component } from 'projen';
3
+ import type { LogoInfo } from './Logo';
3
4
  export interface WordmarkOptions {
4
5
  readonly fileBaseName?: string;
5
6
  readonly dirName?: string;
@@ -77,7 +77,7 @@ class Wordmark extends projen_1.Component {
77
77
  }
78
78
  exports.Wordmark = Wordmark;
79
79
  _a = JSII_RTTI_SYMBOL_1;
80
- Wordmark[_a] = { fqn: "mrpj.logo.Wordmark", version: "0.1.98" };
80
+ Wordmark[_a] = { fqn: "mrpj.logo.Wordmark", version: "0.1.100" };
81
81
  class WordmarkVariant extends projen_1.Component {
82
82
  constructor(project, options) {
83
83
  super(project);
@@ -143,4 +143,4 @@ ${this.options.logo.content.split('\n').map(l => ' '.repeat(indent) + l).join('\
143
143
  return statements.join('\n\n');
144
144
  }
145
145
  }
146
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV29yZG1hcmsuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9nby9Xb3JkbWFyay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZCQUE2QjtBQUM3QixtQ0FBNEM7QUFDNUMsaUNBQXdDO0FBQ3hDLHNEQUF1RDtBQUN2RCx1Q0FBb0M7QUFDcEMsb0NBQW1EO0FBMEJsRCxDQUFDO0FBcUJGLE1BQWEsUUFBUyxTQUFRLGtCQUFTO0lBR3JDLFlBQW1CLE9BQWdCLEVBQUUsVUFBMkIsRUFBRTtRQUNoRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUEsb0JBQVksRUFBc0I7WUFDL0MsR0FBRyxPQUFPO1lBQ1YsV0FBVyxFQUFFLEVBQUU7U0FDaEIsRUFBRTtZQUNELE9BQU8sRUFBRSxRQUFRO1lBQ2pCLFlBQVksRUFBRSxVQUFVO1lBQ3hCLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUk7WUFDdkIsWUFBWSxFQUFFO2dCQUNaLEVBQUUsRUFBRSxFQUFFO2dCQUNOLEVBQUUsRUFBRSxDQUFDO2FBQ047WUFDRCxJQUFJLEVBQUU7Z0JBQ0osTUFBTSxFQUFFLDZFQUE2RTtnQkFDckYsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsS0FBSyxFQUFFLFNBQVM7YUFDakI7WUFDRCxJQUFJLEVBQUUsV0FBSSxDQUFDLFdBQVcsRUFBRTtZQUN4QixTQUFTLEVBQUUsQ0FBQztZQUNaLElBQUksRUFBRTtnQkFDSixLQUFLLEVBQUUsR0FBRztnQkFDVixNQUFNLEVBQUUsR0FBRztnQkFDWCxLQUFLLEVBQUUsQ0FBQzthQUNUO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsa0JBQWtCO1FBQ2xCLElBQUksZUFBZSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFM0MsbUNBQW1DO1FBQ25DLE1BQU0sV0FBVyxHQUFHLE9B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Q0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ25DLFVBQVUsQ0FBQyxJQUFJLENBQUMsMENBQTBDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdHLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ3BDLFVBQVUsQ0FBQyxJQUFJLENBQUMsMkNBQTJDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9HLENBQUM7UUFFRCxPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDakMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IENvbXBvbmVudCwgUHJvamVjdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBMb2dvLCBMb2dvSW5mbyB9IGZyb20gJy4vTG9nbyc7XG5pbXBvcnQgeyBsb2dvVG9QbmdUYXNrIH0gZnJvbSAnLi9wcml2YXRlLnRzL2xvZ28tdGFzayc7XG5pbXBvcnQgeyBTdmdGaWxlIH0gZnJvbSAnLi9TdmdGaWxlJztcbmltcG9ydCB7IGRlZXBEZWZhdWx0cywgZGVlcE1lcmdlIH0gZnJvbSAnLi4vdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFdvcmRtYXJrT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGZpbGVCYXNlTmFtZT86IHN0cmluZztcbiAgcmVhZG9ubHkgZGlyTmFtZT86IHN0cmluZztcbiAgcmVhZG9ubHkgcmF3Pzogc3RyaW5nO1xuICByZWFkb25seSB0ZXh0Pzogc3RyaW5nO1xuICByZWFkb25seSB0ZXh0UG9zaXRpb24/OiBUcmFuc2xhdGVPcHRpb25zO1xuICByZWFkb25seSBmb250PzogRm9udE9wdGlvbnM7XG4gIHJlYWRvbmx5IGNvbG9yU2NoZW1lPzogQ29sb3JTY2hlbWU7XG4gIHJlYWRvbmx5IHNpemU/OiBTaXplT3B0aW9ucztcbiAgcmVhZG9ubHkgbG9nbz86IExvZ29JbmZvO1xuICByZWFkb25seSBsb2dvUG9zaXRpb24/OiBUcmFuc2xhdGVPcHRpb25zO1xuICByZWFkb25seSBsb2dvU2NhbGU/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29sb3JTY2hlbWUge1xuICByZWFkb25seSBkYXJrPzogRm9udE9wdGlvbnM7XG4gIHJlYWRvbmx5IGxpZ2h0PzogRm9udE9wdGlvbnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9udE9wdGlvbnMge1xuICByZWFkb25seSBmYW1pbHk/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHNpemU/OiBudW1iZXI7XG4gIHJlYWRvbmx5IHdlaWdodD86IHN0cmluZztcbiAgcmVhZG9ubHkgY29sb3I/OiBzdHJpbmc7XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIFNpemVPcHRpb25zIHtcbiAgcmVhZG9ubHkgd2lkdGg/OiBudW1iZXI7XG4gIHJlYWRvbmx5IGhlaWdodD86IG51bWJlcjtcbiAgcmVhZG9ubHkgc2NhbGU/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVHJhbnNsYXRlT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGR4PzogbnVtYmVyO1xuICByZWFkb25seSBkeT86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xudHlwZSBGdWxsV29yZG1hcmtPcHRpb25zID0gT21pdDxSZXF1aXJlZDxXb3JkbWFya09wdGlvbnM+LCAncmF3JyB8ICdjb2xvclNjaGVtZScgfCAnbG9nb1Bvc2l0aW9uJz4gJiBXb3JkbWFya09wdGlvbnMgJiB7XG4gIHJlYWRvbmx5IHNpemU6IFJlcXVpcmVkPFNpemVPcHRpb25zPjtcbiAgcmVhZG9ubHkgdGV4dFBvc2l0aW9uOiBSZXF1aXJlZDxUcmFuc2xhdGVPcHRpb25zPjtcbn07XG5cbmV4cG9ydCBjbGFzcyBXb3JkbWFyayBleHRlbmRzIENvbXBvbmVudCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogRnVsbFdvcmRtYXJrT3B0aW9ucztcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogV29yZG1hcmtPcHRpb25zID0ge30pIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIHRoaXMub3B0aW9ucyA9IGRlZXBEZWZhdWx0czxGdWxsV29yZG1hcmtPcHRpb25zPih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgY29sb3JTY2hlbWU6IHt9LFxuICAgIH0sIHtcbiAgICAgIGRpck5hbWU6ICdpbWFnZXMnLFxuICAgICAgZmlsZUJhc2VOYW1lOiAnd29yZG1hcmsnLFxuICAgICAgdGV4dDogdGhpcy5wcm9qZWN0Lm5hbWUsXG4gICAgICB0ZXh0UG9zaXRpb246IHtcbiAgICAgICAgZHg6IDM1LFxuICAgICAgICBkeTogMCxcbiAgICAgIH0sXG4gICAgICBmb250OiB7XG4gICAgICAgIGZhbWlseTogJy1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmJyxcbiAgICAgICAgd2VpZ2h0OiAnNzAwJyxcbiAgICAgICAgc2l6ZTogOTAsXG4gICAgICAgIGNvbG9yOiAnIzZGNzE3NCcsXG4gICAgICB9LFxuICAgICAgbG9nbzogTG9nby5wbGFjZWhvbGRlcigpLFxuICAgICAgbG9nb1NjYWxlOiAyLFxuICAgICAgc2l6ZToge1xuICAgICAgICB3aWR0aDogNzIwLFxuICAgICAgICBoZWlnaHQ6IDIwMCxcbiAgICAgICAgc2NhbGU6IDEsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgLy8gRGVmYXVsdCB2YXJpYW50XG4gICAgbmV3IFdvcmRtYXJrVmFyaWFudChwcm9qZWN0LCB0aGlzLm9wdGlvbnMpO1xuXG4gICAgLy8gQWxsb3cgY29sb3JTY2hlbWUgdG8gYmUgZGlzYWJsZWRcbiAgICBjb25zdCBjb2xvclNjaGVtZSA9IG9wdGlvbnMuY29sb3JTY2hlbWUgPz8ge1xuICAgICAgZGFyazogeyBjb2xvcjogJyNmMGY2ZmMnIH0sXG4gICAgICBsaWdodDogeyBjb2xvcjogJyMxOTE5MTknIH0sXG4gICAgfTtcblxuICAgIC8vIEFkZCB2YXJpYW50c1xuICAgIGlmIChjb2xvclNjaGVtZS5kYXJrKSB7XG4gICAgICB0aGlzLnZhcmlhbnQoJ2RhcmsnLCB7XG4gICAgICAgIGZvbnQ6IGNvbG9yU2NoZW1lLmRhcmssXG4gICAgICAgIGNvbG9yU2NoZW1lOiB7fSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChjb2xvclNjaGVtZS5saWdodCkge1xuICAgICAgdGhpcy52YXJpYW50KCdsaWdodCcsIHtcbiAgICAgICAgZm9udDogY29sb3JTY2hlbWUubGlnaHQsXG4gICAgICAgIGNvbG9yU2NoZW1lOiB7fSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChjb2xvclNjaGVtZS5kYXJrICYmIGNvbG9yU2NoZW1lLmxpZ2h0KSB7XG4gICAgICB0aGlzLnZhcmlhbnQoJ2R5bmFtaWMnLCB7XG4gICAgICAgIGNvbG9yU2NoZW1lOiB7XG4gICAgICAgICAgZGFyazogY29sb3JTY2hlbWUuZGFyayxcbiAgICAgICAgICBsaWdodDogY29sb3JTY2hlbWUubGlnaHQsXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHZhcmlhbnQobmFtZTogc3RyaW5nLCBvcHRpb25zOiBXb3JkbWFya09wdGlvbnMpOiBXb3JkbWFya1ZhcmlhbnQge1xuICAgIGNvbnN0IHZhcmlhbnQgPSB7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgZmlsZUJhc2VOYW1lOiBgJHt0aGlzLm9wdGlvbnMuZmlsZUJhc2VOYW1lfS0ke25hbWV9YCxcbiAgICB9O1xuICAgIHJldHVybiBuZXcgV29yZG1hcmtWYXJpYW50KHRoaXMucHJvamVjdCwgZGVlcE1lcmdlKHRoaXMub3B0aW9ucywgdmFyaWFudCkpO1xuICB9XG5cbn1cblxuY2xhc3MgV29yZG1hcmtWYXJpYW50IGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgcHVibGljIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogRnVsbFdvcmRtYXJrT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgY29uc3QgaGFsZkhlaWdodCA9IHRoaXMub3B0aW9ucy5zaXplLmhlaWdodC8yO1xuICAgIGNvbnN0IGV4cGVjdGVkTG9nb1NjYWxlID0gdGhpcy5vcHRpb25zLnNpemUuaGVpZ2h0L3RoaXMub3B0aW9ucy5sb2dvLmhlaWdodDtcbiAgICBjb25zdCBsb2dvU2NhbGUgPSB0aGlzLm9wdGlvbnMubG9nb1NjYWxlID8/IGV4cGVjdGVkTG9nb1NjYWxlO1xuICAgIGNvbnN0IGxvZ29UcmFuc2xhdGUgPSB7XG4gICAgICB4OiAwICsgKHRoaXMub3B0aW9ucy5sb2dvUG9zaXRpb24/LmR4ID8/IDApLFxuICAgICAgeTogdGhpcy5vcHRpb25zLmxvZ29Qb3NpdGlvbj8uZHkgPz8gKGxvZ29TY2FsZS9leHBlY3RlZExvZ29TY2FsZSAqIC0xICogaGFsZkhlaWdodCArIGhhbGZIZWlnaHQpLFxuICAgIH07XG5cbiAgICBjb25zdCB3b3JkbWFyayA9IHRoaXMub3B0aW9ucy5yYXcgPz8gdGhpcy53b3JkbWFyayh0aGlzLm9wdGlvbnMudGV4dCwge1xuICAgICAgeDogbG9nb1NjYWxlICogdGhpcy5vcHRpb25zLmxvZ28ud2lkdGggKyB0aGlzLm9wdGlvbnMudGV4dFBvc2l0aW9uLmR4LFxuICAgICAgeTogdGhpcy5vcHRpb25zLnNpemUuaGVpZ2h0LzIgKyB0aGlzLm9wdGlvbnMudGV4dFBvc2l0aW9uLmR5LFxuICAgIH0pO1xuXG4gICAgY29uc3QgaW5kZW50ID0gNDtcbiAgICBjb25zdCBjb250ZW50ID0gYFxuPGcgdHJhbnNmb3JtPVwidHJhbnNsYXRlKCR7bG9nb1RyYW5zbGF0ZS54fSAke2xvZ29UcmFuc2xhdGUueX0pIHNjYWxlKCR7bG9nb1NjYWxlfSlcIj5cbiR7dGhpcy5vcHRpb25zLmxvZ28uY29udGVudC5zcGxpdCgnXFxuJykubWFwKGwgPT4gJyAnLnJlcGVhdChpbmRlbnQpICsgbCkuam9pbignXFxuJyl9XG48L2c+XG5gO1xuXG4gICAgLy8gUmVuZGVyIFdvcmRtYXJrXG4gICAgY29uc3QgZmlsZSA9IG5ldyBTdmdGaWxlKHByb2plY3QsIHBhdGguam9pbih0aGlzLm9wdGlvbnMuZGlyTmFtZSwgdGhpcy5vcHRpb25zLmZpbGVCYXNlTmFtZSkgKyAnLnN2ZycsIHtcbiAgICAgIC4uLnRoaXMub3B0aW9ucy5zaXplLFxuICAgICAgY29udGVudDogY29udGVudCArICdcXG4nICsgd29yZG1hcmssXG4gICAgICBzdHlsZTogdGhpcy5zdHlsZSgpLFxuICAgICAgaW5kZW50LFxuICAgIH0pO1xuICAgIHByb2plY3QuYWRkUGFja2FnZUlnbm9yZShmaWxlLmZpbGVQYXRoKTtcblxuICAgIC8vIENvbnZlcnNpb24gdGFza1xuICAgIGxvZ29Ub1BuZ1Rhc2socHJvamVjdCwgZmlsZS5maWxlUGF0aCk7XG4gIH1cblxuICBwcml2YXRlIHdvcmRtYXJrKHRleHQ6IHN0cmluZywgeyB4LCB5IH06IHtcbiAgICB4OiBudW1iZXI7XG4gICAgeTogbnVtYmVyO1xuICB9KTogc3RyaW5nIHtcbiAgICByZXR1cm4gYDx0ZXh0IHg9XCIke3h9XCIgeT1cIiR7eX1cIj48dHNwYW4gZHk9XCIwLjVleFwiPiR7dGV4dH08L3RzcGFuPjwvdGV4dD5gO1xuICB9XG5cbiAgcHJpdmF0ZSBzdHlsZSgpIHtcbiAgICBjb25zdCBtYWtlQ1NTID0gKG9wdDogRm9udE9wdGlvbnMsIGluZGVudCA9IDAsIHNwYWNlcyA9IDQpOiBzdHJpbmcgPT4ge1xuICAgICAgY29uc3Qgb3V0ZXIgPSAnICcucmVwZWF0KGluZGVudCpzcGFjZXMpO1xuICAgICAgY29uc3QgaW5uZXIgPSAnICcucmVwZWF0KChpbmRlbnQrMSkqc3BhY2VzKTtcblxuICAgICAgY29uc3QgY3NzID0gW291dGVyICsgJ3RleHQgeyddO1xuICAgICAgaWYgKG9wdC5mYW1pbHkpIHtcbiAgICAgICAgY3NzLnB1c2goaW5uZXIgKyBgZm9udC1mYW1pbHk6ICR7b3B0LmZhbWlseX07YCk7XG4gICAgICB9XG4gICAgICBpZiAob3B0LndlaWdodCkge1xuICAgICAgICBjc3MucHVzaChpbm5lciArIGBmb250LXdlaWdodDogJHtvcHQud2VpZ2h0fTtgKTtcbiAgICAgIH1cbiAgICAgIGlmIChvcHQuc2l6ZSkge1xuICAgICAgICBjc3MucHVzaChpbm5lciArIGBmb250LXNpemU6ICR7b3B0LnNpemV9cHg7YCk7XG4gICAgICB9XG4gICAgICBpZiAob3B0LmNvbG9yKSB7XG4gICAgICAgIGNzcy5wdXNoKGlubmVyICsgYGZpbGw6ICR7b3B0LmNvbG9yfTtgKTtcbiAgICAgIH1cbiAgICAgIGNzcy5wdXNoKG91dGVyICsgJ30nKTtcblxuICAgICAgcmV0dXJuIGNzcy5qb2luKCdcXG4nKTtcbiAgICB9O1xuXG4gICAgY29uc3Qgc3RhdGVtZW50cyA9IFttYWtlQ1NTKHRoaXMub3B0aW9ucy5mb250KV07XG5cbiAgICBpZiAodGhpcy5vcHRpb25zLmNvbG9yU2NoZW1lPy5kYXJrKSB7XG4gICAgICBzdGF0ZW1lbnRzLnB1c2goYEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcXG4ke21ha2VDU1ModGhpcy5vcHRpb25zLmNvbG9yU2NoZW1lPy5kYXJrLCAxKX1cXG59YCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMub3B0aW9ucy5jb2xvclNjaGVtZT8ubGlnaHQpIHtcbiAgICAgIHN0YXRlbWVudHMucHVzaChgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogbGlnaHQpIHtcXG4ke21ha2VDU1ModGhpcy5vcHRpb25zLmNvbG9yU2NoZW1lPy5saWdodCwgMSl9XFxufWApO1xuICAgIH1cblxuICAgIHJldHVybiBzdGF0ZW1lbnRzLmpvaW4oJ1xcblxcbicpO1xuICB9XG59XG4iXX0=
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiV29yZG1hcmsuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9nby9Xb3JkbWFyay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZCQUE2QjtBQUU3QixtQ0FBbUM7QUFFbkMsaUNBQThCO0FBQzlCLHNEQUF1RDtBQUN2RCx1Q0FBb0M7QUFDcEMsb0NBQW1EO0FBMEJsRCxDQUFDO0FBcUJGLE1BQWEsUUFBUyxTQUFRLGtCQUFTO0lBR3JDLFlBQW1CLE9BQWdCLEVBQUUsVUFBMkIsRUFBRTtRQUNoRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUEsb0JBQVksRUFBc0I7WUFDL0MsR0FBRyxPQUFPO1lBQ1YsV0FBVyxFQUFFLEVBQUU7U0FDaEIsRUFBRTtZQUNELE9BQU8sRUFBRSxRQUFRO1lBQ2pCLFlBQVksRUFBRSxVQUFVO1lBQ3hCLElBQUksRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUk7WUFDdkIsWUFBWSxFQUFFO2dCQUNaLEVBQUUsRUFBRSxFQUFFO2dCQUNOLEVBQUUsRUFBRSxDQUFDO2FBQ047WUFDRCxJQUFJLEVBQUU7Z0JBQ0osTUFBTSxFQUFFLDZFQUE2RTtnQkFDckYsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsSUFBSSxFQUFFLEVBQUU7Z0JBQ1IsS0FBSyxFQUFFLFNBQVM7YUFDakI7WUFDRCxJQUFJLEVBQUUsV0FBSSxDQUFDLFdBQVcsRUFBRTtZQUN4QixTQUFTLEVBQUUsQ0FBQztZQUNaLElBQUksRUFBRTtnQkFDSixLQUFLLEVBQUUsR0FBRztnQkFDVixNQUFNLEVBQUUsR0FBRztnQkFDWCxLQUFLLEVBQUUsQ0FBQzthQUNUO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsa0JBQWtCO1FBQ2xCLElBQUksZUFBZSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFM0MsbUNBQW1DO1FBQ25DLE1BQU0sV0FBVyxHQUFHLE9B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Q0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDO1lBQ25DLFVBQVUsQ0FBQyxJQUFJLENBQUMsMENBQTBDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzdHLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDO1lBQ3BDLFVBQVUsQ0FBQyxJQUFJLENBQUMsMkNBQTJDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9HLENBQUM7UUFFRCxPQUFPLFVBQVUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDakMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB0eXBlIHsgUHJvamVjdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHR5cGUgeyBMb2dvSW5mbyB9IGZyb20gJy4vTG9nbyc7XG5pbXBvcnQgeyBMb2dvIH0gZnJvbSAnLi9Mb2dvJztcbmltcG9ydCB7IGxvZ29Ub1BuZ1Rhc2sgfSBmcm9tICcuL3ByaXZhdGUudHMvbG9nby10YXNrJztcbmltcG9ydCB7IFN2Z0ZpbGUgfSBmcm9tICcuL1N2Z0ZpbGUnO1xuaW1wb3J0IHsgZGVlcERlZmF1bHRzLCBkZWVwTWVyZ2UgfSBmcm9tICcuLi91dGlscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgV29yZG1hcmtPcHRpb25zIHtcbiAgcmVhZG9ubHkgZmlsZUJhc2VOYW1lPzogc3RyaW5nO1xuICByZWFkb25seSBkaXJOYW1lPzogc3RyaW5nO1xuICByZWFkb25seSByYXc/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHRleHQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHRleHRQb3NpdGlvbj86IFRyYW5zbGF0ZU9wdGlvbnM7XG4gIHJlYWRvbmx5IGZvbnQ/OiBGb250T3B0aW9ucztcbiAgcmVhZG9ubHkgY29sb3JTY2hlbWU/OiBDb2xvclNjaGVtZTtcbiAgcmVhZG9ubHkgc2l6ZT86IFNpemVPcHRpb25zO1xuICByZWFkb25seSBsb2dvPzogTG9nb0luZm87XG4gIHJlYWRvbmx5IGxvZ29Qb3NpdGlvbj86IFRyYW5zbGF0ZU9wdGlvbnM7XG4gIHJlYWRvbmx5IGxvZ29TY2FsZT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb2xvclNjaGVtZSB7XG4gIHJlYWRvbmx5IGRhcms/OiBGb250T3B0aW9ucztcbiAgcmVhZG9ubHkgbGlnaHQ/OiBGb250T3B0aW9ucztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBGb250T3B0aW9ucyB7XG4gIHJlYWRvbmx5IGZhbWlseT86IHN0cmluZztcbiAgcmVhZG9ubHkgc2l6ZT86IG51bWJlcjtcbiAgcmVhZG9ubHkgd2VpZ2h0Pzogc3RyaW5nO1xuICByZWFkb25seSBjb2xvcj86IHN0cmluZztcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2l6ZU9wdGlvbnMge1xuICByZWFkb25seSB3aWR0aD86IG51bWJlcjtcbiAgcmVhZG9ubHkgaGVpZ2h0PzogbnVtYmVyO1xuICByZWFkb25seSBzY2FsZT86IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBUcmFuc2xhdGVPcHRpb25zIHtcbiAgcmVhZG9ubHkgZHg/OiBudW1iZXI7XG4gIHJlYWRvbmx5IGR5PzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG50eXBlIEZ1bGxXb3JkbWFya09wdGlvbnMgPSBPbWl0PFJlcXVpcmVkPFdvcmRtYXJrT3B0aW9ucz4sICdyYXcnIHwgJ2NvbG9yU2NoZW1lJyB8ICdsb2dvUG9zaXRpb24nPiAmIFdvcmRtYXJrT3B0aW9ucyAmIHtcbiAgcmVhZG9ubHkgc2l6ZTogUmVxdWlyZWQ8U2l6ZU9wdGlvbnM+O1xuICByZWFkb25seSB0ZXh0UG9zaXRpb246IFJlcXVpcmVkPFRyYW5zbGF0ZU9wdGlvbnM+O1xufTtcblxuZXhwb3J0IGNsYXNzIFdvcmRtYXJrIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBGdWxsV29yZG1hcmtPcHRpb25zO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBXb3JkbWFya09wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgdGhpcy5vcHRpb25zID0gZGVlcERlZmF1bHRzPEZ1bGxXb3JkbWFya09wdGlvbnM+KHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBjb2xvclNjaGVtZToge30sXG4gICAgfSwge1xuICAgICAgZGlyTmFtZTogJ2ltYWdlcycsXG4gICAgICBmaWxlQmFzZU5hbWU6ICd3b3JkbWFyaycsXG4gICAgICB0ZXh0OiB0aGlzLnByb2plY3QubmFtZSxcbiAgICAgIHRleHRQb3NpdGlvbjoge1xuICAgICAgICBkeDogMzUsXG4gICAgICAgIGR5OiAwLFxuICAgICAgfSxcbiAgICAgIGZvbnQ6IHtcbiAgICAgICAgZmFtaWx5OiAnLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYnLFxuICAgICAgICB3ZWlnaHQ6ICc3MDAnLFxuICAgICAgICBzaXplOiA5MCxcbiAgICAgICAgY29sb3I6ICcjNkY3MTc0JyxcbiAgICAgIH0sXG4gICAgICBsb2dvOiBMb2dvLnBsYWNlaG9sZGVyKCksXG4gICAgICBsb2dvU2NhbGU6IDIsXG4gICAgICBzaXplOiB7XG4gICAgICAgIHdpZHRoOiA3MjAsXG4gICAgICAgIGhlaWdodDogMjAwLFxuICAgICAgICBzY2FsZTogMSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICAvLyBEZWZhdWx0IHZhcmlhbnRcbiAgICBuZXcgV29yZG1hcmtWYXJpYW50KHByb2plY3QsIHRoaXMub3B0aW9ucyk7XG5cbiAgICAvLyBBbGxvdyBjb2xvclNjaGVtZSB0byBiZSBkaXNhYmxlZFxuICAgIGNvbnN0IGNvbG9yU2NoZW1lID0gb3B0aW9ucy5jb2xvclNjaGVtZSA/PyB7XG4gICAgICBkYXJrOiB7IGNvbG9yOiAnI2YwZjZmYycgfSxcbiAgICAgIGxpZ2h0OiB7IGNvbG9yOiAnIzE5MTkxOScgfSxcbiAgICB9O1xuXG4gICAgLy8gQWRkIHZhcmlhbnRzXG4gICAgaWYgKGNvbG9yU2NoZW1lLmRhcmspIHtcbiAgICAgIHRoaXMudmFyaWFudCgnZGFyaycsIHtcbiAgICAgICAgZm9udDogY29sb3JTY2hlbWUuZGFyayxcbiAgICAgICAgY29sb3JTY2hlbWU6IHt9LFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKGNvbG9yU2NoZW1lLmxpZ2h0KSB7XG4gICAgICB0aGlzLnZhcmlhbnQoJ2xpZ2h0Jywge1xuICAgICAgICBmb250OiBjb2xvclNjaGVtZS5saWdodCxcbiAgICAgICAgY29sb3JTY2hlbWU6IHt9LFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKGNvbG9yU2NoZW1lLmRhcmsgJiYgY29sb3JTY2hlbWUubGlnaHQpIHtcbiAgICAgIHRoaXMudmFyaWFudCgnZHluYW1pYycsIHtcbiAgICAgICAgY29sb3JTY2hlbWU6IHtcbiAgICAgICAgICBkYXJrOiBjb2xvclNjaGVtZS5kYXJrLFxuICAgICAgICAgIGxpZ2h0OiBjb2xvclNjaGVtZS5saWdodCxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgdmFyaWFudChuYW1lOiBzdHJpbmcsIG9wdGlvbnM6IFdvcmRtYXJrT3B0aW9ucyk6IFdvcmRtYXJrVmFyaWFudCB7XG4gICAgY29uc3QgdmFyaWFudCA9IHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBmaWxlQmFzZU5hbWU6IGAke3RoaXMub3B0aW9ucy5maWxlQmFzZU5hbWV9LSR7bmFtZX1gLFxuICAgIH07XG4gICAgcmV0dXJuIG5ldyBXb3JkbWFya1ZhcmlhbnQodGhpcy5wcm9qZWN0LCBkZWVwTWVyZ2UodGhpcy5vcHRpb25zLCB2YXJpYW50KSk7XG4gIH1cblxufVxuXG5jbGFzcyBXb3JkbWFya1ZhcmlhbnQgZXh0ZW5kcyBDb21wb25lbnQge1xuICBwdWJsaWMgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgcHJpdmF0ZSByZWFkb25seSBvcHRpb25zOiBGdWxsV29yZG1hcmtPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICBjb25zdCBoYWxmSGVpZ2h0ID0gdGhpcy5vcHRpb25zLnNpemUuaGVpZ2h0LzI7XG4gICAgY29uc3QgZXhwZWN0ZWRMb2dvU2NhbGUgPSB0aGlzLm9wdGlvbnMuc2l6ZS5oZWlnaHQvdGhpcy5vcHRpb25zLmxvZ28uaGVpZ2h0O1xuICAgIGNvbnN0IGxvZ29TY2FsZSA9IHRoaXMub3B0aW9ucy5sb2dvU2NhbGUgPz8gZXhwZWN0ZWRMb2dvU2NhbGU7XG4gICAgY29uc3QgbG9nb1RyYW5zbGF0ZSA9IHtcbiAgICAgIHg6IDAgKyAodGhpcy5vcHRpb25zLmxvZ29Qb3NpdGlvbj8uZHggPz8gMCksXG4gICAgICB5OiB0aGlzLm9wdGlvbnMubG9nb1Bvc2l0aW9uPy5keSA/PyAobG9nb1NjYWxlL2V4cGVjdGVkTG9nb1NjYWxlICogLTEgKiBoYWxmSGVpZ2h0ICsgaGFsZkhlaWdodCksXG4gICAgfTtcblxuICAgIGNvbnN0IHdvcmRtYXJrID0gdGhpcy5vcHRpb25zLnJhdyA/PyB0aGlzLndvcmRtYXJrKHRoaXMub3B0aW9ucy50ZXh0LCB7XG4gICAgICB4OiBsb2dvU2NhbGUgKiB0aGlzLm9wdGlvbnMubG9nby53aWR0aCArIHRoaXMub3B0aW9ucy50ZXh0UG9zaXRpb24uZHgsXG4gICAgICB5OiB0aGlzLm9wdGlvbnMuc2l6ZS5oZWlnaHQvMiArIHRoaXMub3B0aW9ucy50ZXh0UG9zaXRpb24uZHksXG4gICAgfSk7XG5cbiAgICBjb25zdCBpbmRlbnQgPSA0O1xuICAgIGNvbnN0IGNvbnRlbnQgPSBgXG48ZyB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoJHtsb2dvVHJhbnNsYXRlLnh9ICR7bG9nb1RyYW5zbGF0ZS55fSkgc2NhbGUoJHtsb2dvU2NhbGV9KVwiPlxuJHt0aGlzLm9wdGlvbnMubG9nby5jb250ZW50LnNwbGl0KCdcXG4nKS5tYXAobCA9PiAnICcucmVwZWF0KGluZGVudCkgKyBsKS5qb2luKCdcXG4nKX1cbjwvZz5cbmA7XG5cbiAgICAvLyBSZW5kZXIgV29yZG1hcmtcbiAgICBjb25zdCBmaWxlID0gbmV3IFN2Z0ZpbGUocHJvamVjdCwgcGF0aC5qb2luKHRoaXMub3B0aW9ucy5kaXJOYW1lLCB0aGlzLm9wdGlvbnMuZmlsZUJhc2VOYW1lKSArICcuc3ZnJywge1xuICAgICAgLi4udGhpcy5vcHRpb25zLnNpemUsXG4gICAgICBjb250ZW50OiBjb250ZW50ICsgJ1xcbicgKyB3b3JkbWFyayxcbiAgICAgIHN0eWxlOiB0aGlzLnN0eWxlKCksXG4gICAgICBpbmRlbnQsXG4gICAgfSk7XG4gICAgcHJvamVjdC5hZGRQYWNrYWdlSWdub3JlKGZpbGUuZmlsZVBhdGgpO1xuXG4gICAgLy8gQ29udmVyc2lvbiB0YXNrXG4gICAgbG9nb1RvUG5nVGFzayhwcm9qZWN0LCBmaWxlLmZpbGVQYXRoKTtcbiAgfVxuXG4gIHByaXZhdGUgd29yZG1hcmsodGV4dDogc3RyaW5nLCB7IHgsIHkgfToge1xuICAgIHg6IG51bWJlcjtcbiAgICB5OiBudW1iZXI7XG4gIH0pOiBzdHJpbmcge1xuICAgIHJldHVybiBgPHRleHQgeD1cIiR7eH1cIiB5PVwiJHt5fVwiPjx0c3BhbiBkeT1cIjAuNWV4XCI+JHt0ZXh0fTwvdHNwYW4+PC90ZXh0PmA7XG4gIH1cblxuICBwcml2YXRlIHN0eWxlKCkge1xuICAgIGNvbnN0IG1ha2VDU1MgPSAob3B0OiBGb250T3B0aW9ucywgaW5kZW50ID0gMCwgc3BhY2VzID0gNCk6IHN0cmluZyA9PiB7XG4gICAgICBjb25zdCBvdXRlciA9ICcgJy5yZXBlYXQoaW5kZW50KnNwYWNlcyk7XG4gICAgICBjb25zdCBpbm5lciA9ICcgJy5yZXBlYXQoKGluZGVudCsxKSpzcGFjZXMpO1xuXG4gICAgICBjb25zdCBjc3MgPSBbb3V0ZXIgKyAndGV4dCB7J107XG4gICAgICBpZiAob3B0LmZhbWlseSkge1xuICAgICAgICBjc3MucHVzaChpbm5lciArIGBmb250LWZhbWlseTogJHtvcHQuZmFtaWx5fTtgKTtcbiAgICAgIH1cbiAgICAgIGlmIChvcHQud2VpZ2h0KSB7XG4gICAgICAgIGNzcy5wdXNoKGlubmVyICsgYGZvbnQtd2VpZ2h0OiAke29wdC53ZWlnaHR9O2ApO1xuICAgICAgfVxuICAgICAgaWYgKG9wdC5zaXplKSB7XG4gICAgICAgIGNzcy5wdXNoKGlubmVyICsgYGZvbnQtc2l6ZTogJHtvcHQuc2l6ZX1weDtgKTtcbiAgICAgIH1cbiAgICAgIGlmIChvcHQuY29sb3IpIHtcbiAgICAgICAgY3NzLnB1c2goaW5uZXIgKyBgZmlsbDogJHtvcHQuY29sb3J9O2ApO1xuICAgICAgfVxuICAgICAgY3NzLnB1c2gob3V0ZXIgKyAnfScpO1xuXG4gICAgICByZXR1cm4gY3NzLmpvaW4oJ1xcbicpO1xuICAgIH07XG5cbiAgICBjb25zdCBzdGF0ZW1lbnRzID0gW21ha2VDU1ModGhpcy5vcHRpb25zLmZvbnQpXTtcblxuICAgIGlmICh0aGlzLm9wdGlvbnMuY29sb3JTY2hlbWU/LmRhcmspIHtcbiAgICAgIHN0YXRlbWVudHMucHVzaChgQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xcbiR7bWFrZUNTUyh0aGlzLm9wdGlvbnMuY29sb3JTY2hlbWU/LmRhcmssIDEpfVxcbn1gKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5vcHRpb25zLmNvbG9yU2NoZW1lPy5saWdodCkge1xuICAgICAgc3RhdGVtZW50cy5wdXNoKGBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBsaWdodCkge1xcbiR7bWFrZUNTUyh0aGlzLm9wdGlvbnMuY29sb3JTY2hlbWU/LmxpZ2h0LCAxKX1cXG59YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0YXRlbWVudHMuam9pbignXFxuXFxuJyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,2 +1,2 @@
1
- import { Project } from 'projen';
1
+ import type { Project } from 'projen';
2
2
  export declare function logoToPngTask(project: Project, path: string): void;
@@ -14,4 +14,4 @@ function logoToPngTask(project, path) {
14
14
  logoTask(project).exec(`rsvg-convert -h 1024 ${path} > ${pngPath}`);
15
15
  }
16
16
  exports.logoToPngTask = logoToPngTask;
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nby10YXNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xvZ28vcHJpdmF0ZS50cy9sb2dvLXRhc2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsU0FBUyxRQUFRLENBQUMsT0FBZ0I7SUFDaEMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0MsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ1YsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRCxTQUFnQixhQUFhLENBQUMsT0FBZ0IsRUFBRSxJQUFZO0lBQzFELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLEdBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDO0lBQzFELE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLHdCQUF3QixJQUFJLE1BQU0sT0FBTyxFQUFFLENBQUMsQ0FBQztBQUN0RSxDQUFDO0FBSkQsc0NBSUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQcm9qZWN0IH0gZnJvbSAncHJvamVuJztcblxuZnVuY3Rpb24gbG9nb1Rhc2socHJvamVjdDogUHJvamVjdCkge1xuICBjb25zdCB0YXNrID0gcHJvamVjdC50YXNrcy50cnlGaW5kKCdsb2dvJyk7XG4gIGlmICghdGFzaykge1xuICAgIHJldHVybiBwcm9qZWN0LmFkZFRhc2soJ2xvZ28nKTtcbiAgfVxuXG4gIHJldHVybiB0YXNrO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbG9nb1RvUG5nVGFzayhwcm9qZWN0OiBQcm9qZWN0LCBwYXRoOiBzdHJpbmcpIHtcbiAgY29uc3QgcG5nUGF0aCA9IHBhdGguc3Vic3RyaW5nKDAsIHBhdGgubGVuZ3RoLTQpICsgJy5wbmcnO1xuICBwcm9qZWN0LmFkZFBhY2thZ2VJZ25vcmUocG5nUGF0aCk7XG4gIGxvZ29UYXNrKHByb2plY3QpLmV4ZWMoYHJzdmctY29udmVydCAtaCAxMDI0ICR7cGF0aH0gPiAke3BuZ1BhdGh9YCk7XG59XG4iXX0=
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nby10YXNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xvZ28vcHJpdmF0ZS50cy9sb2dvLXRhc2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsU0FBUyxRQUFRLENBQUMsT0FBZ0I7SUFDaEMsTUFBTSxJQUFJLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDM0MsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ1YsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRCxTQUFnQixhQUFhLENBQUMsT0FBZ0IsRUFBRSxJQUFZO0lBQzFELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLEdBQUMsQ0FBQyxDQUFDLEdBQUcsTUFBTSxDQUFDO0lBQzFELE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLHdCQUF3QixJQUFJLE1BQU0sT0FBTyxFQUFFLENBQUMsQ0FBQztBQUN0RSxDQUFDO0FBSkQsc0NBSUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFByb2plY3QgfSBmcm9tICdwcm9qZW4nO1xuXG5mdW5jdGlvbiBsb2dvVGFzayhwcm9qZWN0OiBQcm9qZWN0KSB7XG4gIGNvbnN0IHRhc2sgPSBwcm9qZWN0LnRhc2tzLnRyeUZpbmQoJ2xvZ28nKTtcbiAgaWYgKCF0YXNrKSB7XG4gICAgcmV0dXJuIHByb2plY3QuYWRkVGFzaygnbG9nbycpO1xuICB9XG5cbiAgcmV0dXJuIHRhc2s7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2dvVG9QbmdUYXNrKHByb2plY3Q6IFByb2plY3QsIHBhdGg6IHN0cmluZykge1xuICBjb25zdCBwbmdQYXRoID0gcGF0aC5zdWJzdHJpbmcoMCwgcGF0aC5sZW5ndGgtNCkgKyAnLnBuZyc7XG4gIHByb2plY3QuYWRkUGFja2FnZUlnbm9yZShwbmdQYXRoKTtcbiAgbG9nb1Rhc2socHJvamVjdCkuZXhlYyhgcnN2Zy1jb252ZXJ0IC1oIDEwMjQgJHtwYXRofSA+ICR7cG5nUGF0aH1gKTtcbn1cbiJdfQ==
@@ -353,6 +353,18 @@ export interface ProjenProjectOptions {
353
353
  * @stability stable
354
354
  */
355
355
  readonly buildWorkflow?: boolean;
356
+ /**
357
+ * Biome options.
358
+ * @default - default options
359
+ * @stability stable
360
+ */
361
+ readonly biomeOptions?: javascript.BiomeOptions;
362
+ /**
363
+ * Setup Biome.
364
+ * @default false
365
+ * @stability stable
366
+ */
367
+ readonly biome?: boolean;
356
368
  /**
357
369
  * Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued).
358
370
  * Throw if set to true but `autoApproveOptions` are not defined.
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVuLXByb2plY3Qtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9wcm9qZW4tcHJvamVjdC1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB+fiBHZW5lcmF0ZWQgYnkgcHJvamVuLiBUbyBtb2RpZnksIGVkaXQgLnByb2plbnJjLnRzIGFuZCBydW4gXCJucHggcHJvamVuXCIuXG5pbXBvcnQgdHlwZSB7IGNkaywgZ2l0aHViLCBHaXRPcHRpb25zLCBHcm91cFJ1bm5lck9wdGlvbnMsIElnbm9yZUZpbGVPcHRpb25zLCBqYXZhc2NyaXB0LCBMb2dnZXJPcHRpb25zLCBQcm9qZWN0LCBQcm9qZW5yY0pzb25PcHRpb25zLCByZWxlYXNlLCBSZW5vdmF0ZWJvdE9wdGlvbnMsIFNhbXBsZVJlYWRtZVByb3BzLCB0eXBlc2NyaXB0IH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB0eXBlIHsgbG9nbyB9IGZyb20gJy4vJztcblxuLyoqXG4gKiBQcm9qZW5Qcm9qZWN0T3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFByb2plblByb2plY3RPcHRpb25zIHtcbiAgLyoqXG4gICAqIEBkZWZhdWx0IFwiLlwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByb290ZGlyPzogc3RyaW5nO1xuICAvKipcbiAgICogUHVibGlzaCB0byBweXBpLlxuICAgKiBAZGVmYXVsdCAtIG5vIHB1Ymxpc2hpbmdcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHB1Ymxpc2hUb1B5cGk/OiBjZGsuSnNpaVB5dGhvblRhcmdldDtcbiAgLyoqXG4gICAqIFB1Ymxpc2ggdG8gTnVHZXQuXG4gICAqIEBkZWZhdWx0IC0gbm8gcHVibGlzaGluZ1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGlzaFRvTnVnZXQ/OiBjZGsuSnNpaURvdE5ldFRhcmdldDtcbiAgLyoqXG4gICAqIFB1Ymxpc2ggdG8gbWF2ZW4uXG4gICAqIEBkZWZhdWx0IC0gbm8gcHVibGlzaGluZ1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGlzaFRvTWF2ZW4/OiBjZGsuSnNpaUphdmFUYXJnZXQ7XG4gIC8qKlxuICAgKiBQdWJsaXNoIEdvIGJpbmRpbmdzIHRvIGEgZ2l0IHJlcG9zaXRvcnkuXG4gICAqIEBkZWZhdWx0IC0gbm8gcHVibGlzaGluZ1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGlzaFRvR28/OiBjZGsuSnNpaUdvVGFyZ2V0O1xuICAvKipcbiAgICogQWNjZXB0cyBhIGxpc3Qgb2YgZ2xvYiBwYXR0ZXJucy5cbiAgICogRmlsZXMgbWF0Y2hpbmcgYW55IG9mIHRob3NlIHBhdHRlcm5zIHdpbGwgYmUgZXhjbHVkZWQgZnJvbSB0aGUgVHlwZVNjcmlwdCBjb21waWxlciBpbnB1dC5cbiAgICpcbiAgICogQnkgZGVmYXVsdCwganNpaSB3aWxsIGluY2x1ZGUgYWxsICoudHMgZmlsZXMgKGV4Y2VwdCAuZC50cyBmaWxlcykgaW4gdGhlIFR5cGVTY3JpcHQgY29tcGlsZXIgaW5wdXQuXG4gICAqIFRoaXMgY2FuIGJlIHByb2JsZW1hdGljIGZvciBleGFtcGxlIHdoZW4gdGhlIHBhY2thZ2UncyBidWlsZCBvciB0ZXN0IHByb2NlZHVyZSBnZW5lcmF0ZXMgLnRzIGZpbGVzXG4gICAqIHRoYXQgY2Fubm90IGJlIGNvbXBpbGVkIHdpdGgganNpaSdzIGNvbXBpbGVyIHNldHRpbmdzLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZXhjbHVkZVR5cGVzY3JpcHQ/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogRmlsZSBwYXRoIGZvciBnZW5lcmF0ZWQgZG9jcy5cbiAgICogQGRlZmF1bHQgXCJBUEkubWRcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZG9jZ2VuRmlsZVBhdGg/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFbWl0IGEgY29tcHJlc3NlZCB2ZXJzaW9uIG9mIHRoZSBhc3NlbWJseS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGNvbXByZXNzQXNzZW1ibHk/OiBib29sZWFuO1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgaWdub3JlIGZpbGUgZm9yIEFQSSBjb21wYXRpYmlsaXR5IHRlc3RzLlxuICAgKiBAZGVmYXVsdCBcIi5jb21wYXRpZ25vcmVcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY29tcGF0SWdub3JlPzogc3RyaW5nO1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBydW4gQVBJIGNvbXBhdGliaWxpdHkgdGVzdCBhZ2FpbnN0IHRoZSBsYXRlc3QgdmVyc2lvbiBwdWJsaXNoZWQgdG8gbnBtIGFmdGVyIGNvbXBpbGF0aW9uLlxuICAgKiAtIFlvdSBjYW4gbWFudWFsbHkgcnVuIGNvbXBhdGliaWxpdHkgdGVzdHMgdXNpbmcgYHlhcm4gY29tcGF0YCBpZiB0aGlzIGZlYXR1cmUgaXMgZGlzYWJsZWQuXG4gICAqIC0gWW91IGNhbiBpZ25vcmUgY29tcGF0aWJpbGl0eSBmYWlsdXJlcyBieSBhZGRpbmcgbGluZXMgdG8gYSBcIi5jb21wYXRpZ25vcmVcIiBmaWxlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY29tcGF0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVtYWlsIG9yIFVSTCBvZiB0aGUgbGlicmFyeSBhdXRob3IuXG4gICAqIEBkZWZhdWx0ICRHSVRfVVNFUl9FTUFJTFxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yQWRkcmVzcz86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRzLWplc3QuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSB0c0plc3RPcHRpb25zPzogdHlwZXNjcmlwdC5Uc0plc3RPcHRpb25zO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGRldmVsb3BtZW50IHRzY29uZmlnLmpzb24gZmlsZS5cbiAgICogQGRlZmF1bHQgXCJ0c2NvbmZpZy5kZXYuanNvblwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSB0c2NvbmZpZ0RldkZpbGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDdXN0b20gdHNjb25maWcgb3B0aW9ucyBmb3IgdGhlIGRldmVsb3BtZW50IHRzY29uZmlnLmpzb24gZmlsZSAodXNlZCBmb3IgdGVzdGluZykuXG4gICAqIEBkZWZhdWx0IC0gdXNlIHRoZSBwcm9kdWN0aW9uIHRzY29uZmlnIG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHRzY29uZmlnRGV2PzogamF2YXNjcmlwdC5UeXBlc2NyaXB0Q29uZmlnT3B0aW9ucztcbiAgLyoqXG4gICAqIEN1c3RvbSBUU0NvbmZpZy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHRzY29uZmlnPzogamF2YXNjcmlwdC5UeXBlc2NyaXB0Q29uZmlnT3B0aW9ucztcbiAgLyoqXG4gICAqIEplc3QgdGVzdHMgZGlyZWN0b3J5LiBUZXN0cyBmaWxlcyBzaG91bGQgYmUgbmFtZWQgYHh4eC50ZXN0LnRzYC5cbiAgICogSWYgdGhpcyBkaXJlY3RvcnkgaXMgdW5kZXIgYHNyY2RpcmAgKGUuZy4gYHNyYy90ZXN0YCwgYHNyYy9fX3Rlc3RzX19gKSxcbiAgICogdGhlbiB0ZXN0cyBhcmUgZ29pbmcgdG8gYmUgY29tcGlsZWQgaW50byBgbGliL2AgYW5kIGV4ZWN1dGVkIGFzIGphdmFzY3JpcHQuXG4gICAqIElmIHRoZSB0ZXN0IGRpcmVjdG9yeSBpcyBvdXRzaWRlIG9mIGBzcmNgLCB0aGVuIHdlIGNvbmZpZ3VyZSBqZXN0IHRvXG4gICAqIGNvbXBpbGUgdGhlIGNvZGUgaW4tbWVtb3J5LlxuICAgKiBAZGVmYXVsdCBcInRlc3RcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgdGVzdGRpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFR5cGVzY3JpcHQgc291cmNlcyBkaXJlY3RvcnkuXG4gICAqIEBkZWZhdWx0IFwic3JjXCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHNyY2Rpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIC5wcm9qZW5yYy50cy5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjVHNPcHRpb25zPzogdHlwZXNjcmlwdC5Qcm9qZW5yY09wdGlvbnM7XG4gIC8qKlxuICAgKiBUeXBlc2NyaXB0ICBhcnRpZmFjdHMgb3V0cHV0IGRpcmVjdG9yeS5cbiAgICogQGRlZmF1bHQgXCJsaWJcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbGliZGlyPzogc3RyaW5nO1xuICAvKipcbiAgICogRXNsaW50IG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IC0gb3BpbmlvbmF0ZWQgZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBlc2xpbnRPcHRpb25zPzogamF2YXNjcmlwdC5Fc2xpbnRPcHRpb25zO1xuICAvKipcbiAgICogU2V0dXAgZXNsaW50LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBlc2xpbnQ/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIC5kLnRzIGZpbGUgdGhhdCBpbmNsdWRlcyB0aGUgdHlwZSBkZWNsYXJhdGlvbnMgZm9yIHRoaXMgbW9kdWxlLlxuICAgKiBAZGVmYXVsdCAtIC5kLnRzIGZpbGUgZGVyaXZlZCBmcm9tIHRoZSBwcm9qZWN0J3MgZW50cnlwb2ludCAodXN1YWxseSBsaWIvaW5kZXguZC50cylcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGVudHJ5cG9pbnRUeXBlcz86IHN0cmluZztcbiAgLyoqXG4gICAqIERvY3MgZGlyZWN0b3J5LlxuICAgKiBAZGVmYXVsdCBcImRvY3NcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZG9jc0RpcmVjdG9yeT86IHN0cmluZztcbiAgLyoqXG4gICAqIERvY2dlbiBieSBUeXBlZG9jLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZG9jZ2VuPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERvIG5vdCBnZW5lcmF0ZSBhIGB0c2NvbmZpZy5kZXYuanNvbmAgZmlsZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVUc2NvbmZpZ0Rldj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEbyBub3QgZ2VuZXJhdGUgYSBgdHNjb25maWcuanNvbmAgZmlsZSAodXNlZCBieSBqc2lpIHByb2plY3RzIHNpbmNlIHRzY29uZmlnLmpzb24gaXMgZ2VuZXJhdGVkIGJ5IHRoZSBqc2lpIGNvbXBpbGVyKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVUc2NvbmZpZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBFbmFibGUgTm9kZS5qcyBwYWNrYWdlIGNhY2hlIGluIEdpdEh1YiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd1BhY2thZ2VDYWNoZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgbm9kZSB2ZXJzaW9uIHVzZWQgaW4gR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzLlxuICAgKiBBbHdheXMgdXNlIHRoaXMgb3B0aW9uIGlmIHlvdXIgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzIHJlcXVpcmUgYSBzcGVjaWZpYyB0byBydW4uXG4gICAqIEBkZWZhdWx0IC0gYG1pbk5vZGVWZXJzaW9uYCBpZiBzZXQsIG90aGVyd2lzZSBgbHRzLypgLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dOb2RlVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBnaXQgaWRlbnRpdHkgdG8gdXNlIGluIHdvcmtmbG93cy5cbiAgICogQGRlZmF1bHQgLSBHaXRIdWIgQWN0aW9uc1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dHaXRJZGVudGl0eT86IGdpdGh1Yi5HaXRJZGVudGl0eTtcbiAgLyoqXG4gICAqIFdvcmtmbG93IHN0ZXBzIHRvIHVzZSBpbiBvcmRlciB0byBib290c3RyYXAgdGhpcyByZXBvLlxuICAgKiBAZGVmYXVsdCBcInlhcm4gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZSAmJiB5YXJuIHByb2plblwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd0Jvb3RzdHJhcFN0ZXBzPzogQXJyYXk8Z2l0aHViLndvcmtmbG93cy5Kb2JTdGVwPjtcbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgcmVsZWFzZSB0byBucG0gd2hlbiBuZXcgdmVyc2lvbnMgYXJlIGludHJvZHVjZWQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlVG9OcG0/OiBib29sZWFuO1xuICAvKipcbiAgICogQWRkIHJlbGVhc2UgbWFuYWdlbWVudCB0byB0aGlzIHByb2plY3QuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBjb250ZW50cyBvZiB0aGUgcHVsbCByZXF1ZXN0IHRlbXBsYXRlLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgY29udGVudFxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVsbFJlcXVlc3RUZW1wbGF0ZUNvbnRlbnRzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIEluY2x1ZGUgYSBHaXRIdWIgcHVsbCByZXF1ZXN0IHRlbXBsYXRlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFRlbXBsYXRlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIC5wcm9qZW5yYy5qcy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNPcHRpb25zPzogamF2YXNjcmlwdC5Qcm9qZW5yY09wdGlvbnM7XG4gIC8qKlxuICAgKiBHZW5lcmF0ZSAob25jZSkgLnByb2plbnJjLmpzIChpbiBKYXZhU2NyaXB0KS4gU2V0IHRvIGBmYWxzZWAgaW4gb3JkZXIgdG8gZGlzYWJsZSAucHJvamVucmMuanMgZ2VuZXJhdGlvbi5cbiAgICogQGRlZmF1bHQgLSB0cnVlIGlmIHByb2plbnJjSnNvbiBpcyBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNKcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgb2YgXCJwcm9qZW5cIiBzaG91bGQgYmUgaW5zdGFsbGVkIGFzIGEgZGV2RGVwZW5kZW5jeS5cbiAgICogQGRlZmF1bHQgLSB0cnVlIGlmIG5vdCBhIHN1YnByb2plY3RcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkRldkRlcGVuZGVuY3k/OiBib29sZWFuO1xuICAvKipcbiAgICogUHJldHRpZXIgb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByZXR0aWVyT3B0aW9ucz86IGphdmFzY3JpcHQuUHJldHRpZXJPcHRpb25zO1xuICAvKipcbiAgICogU2V0dXAgcHJldHRpZXIuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwcmV0dGllcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEZWZpbmVzIGEgYHBhY2thZ2VgIHRhc2sgdGhhdCB3aWxsIHByb2R1Y2UgYW4gbnBtIHRhcmJhbGwgdW5kZXIgdGhlIGFydGlmYWN0cyBkaXJlY3RvcnkgKGUuZy4gYGRpc3RgKS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcGFja2FnZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIC5ucG1pZ25vcmUgZmlsZS5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG5wbUlnbm9yZU9wdGlvbnM/OiBJZ25vcmVGaWxlT3B0aW9ucztcbiAgLyoqXG4gICAqIERlZmluZXMgYW4gLm5wbWlnbm9yZSBmaWxlLiBOb3JtYWxseSB0aGlzIGlzIG9ubHkgbmVlZGVkIGZvciBsaWJyYXJpZXMgdGhhdCBhcmUgcGFja2FnZWQgYXMgdGFyYmFsbHMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG5wbWlnbm9yZUVuYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSmVzdCBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgamVzdE9wdGlvbnM/OiBqYXZhc2NyaXB0Lkplc3RPcHRpb25zO1xuICAvKipcbiAgICogU2V0dXAgamVzdCB1bml0IHRlc3RzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBqZXN0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgZW50cmllcyB0byAuZ2l0aWdub3JlLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0aWdub3JlPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIGBVcGdyYWRlRGVwZW5kZW5jaWVzYC5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGRlcHNVcGdyYWRlT3B0aW9ucz86IGphdmFzY3JpcHQuVXBncmFkZURlcGVuZGVuY2llc09wdGlvbnM7XG4gIC8qKlxuICAgKiBVc2UgdGFza3MgYW5kIGdpdGh1YiB3b3JrZmxvd3MgdG8gaGFuZGxlIGRlcGVuZGVuY3kgdXBncmFkZXMuXG4gICAqIENhbm5vdCBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggYGRlcGVuZGFib3RgLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBkZXBzVXBncmFkZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBkZXBlbmRhYm90LlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwZW5kYWJvdE9wdGlvbnM/OiBnaXRodWIuRGVwZW5kYWJvdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBVc2UgZGVwZW5kYWJvdCB0byBoYW5kbGUgZGVwZW5kZW5jeSB1cGdyYWRlcy5cbiAgICogQ2Fubm90IGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBgZGVwc1VwZ3JhZGVgLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwZW5kYWJvdD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgY29weXJpZ2h0IHllYXJzIHRvIHB1dCBpbiB0aGUgTElDRU5TRSBmaWxlLlxuICAgKiBAZGVmYXVsdCAtIGN1cnJlbnQgeWVhclxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY29weXJpZ2h0UGVyaW9kPzogc3RyaW5nO1xuICAvKipcbiAgICogTGljZW5zZSBjb3B5cmlnaHQgb3duZXIuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdHMgdG8gdGhlIHZhbHVlIG9mIGF1dGhvck5hbWUgb3IgXCJcIiBpZiBgYXV0aG9yTmFtZWAgaXMgdW5kZWZpbmVkLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY29weXJpZ2h0T3duZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEZWZpbmUgdGhlIHNlY3JldCBuYW1lIGZvciBhIHNwZWNpZmllZCBodHRwczovL2NvZGVjb3YuaW8vIHRva2VuIEEgc2VjcmV0IGlzIHJlcXVpcmVkIHRvIHNlbmQgY292ZXJhZ2UgZm9yIHByaXZhdGUgcmVwb3NpdG9yaWVzLlxuICAgKiBAZGVmYXVsdCAtIGlmIHRoaXMgb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQsIG9ubHkgcHVibGljIHJlcG9zaXRvcmllcyBhcmUgc3VwcG9ydGVkXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBjb2RlQ292VG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEZWZpbmUgYSBHaXRIdWIgd29ya2Zsb3cgc3RlcCBmb3Igc2VuZGluZyBjb2RlIGNvdmVyYWdlIG1ldHJpY3MgdG8gaHR0cHM6Ly9jb2RlY292LmlvLyBVc2VzIGNvZGVjb3YvY29kZWNvdi1hY3Rpb25AdjQgQSBzZWNyZXQgaXMgcmVxdWlyZWQgZm9yIHByaXZhdGUgcmVwb3MuIENvbmZpZ3VyZWQgd2l0aCBgQGNvZGVDb3ZUb2tlblNlY3JldGAuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBjb2RlQ292PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbmZpZ3VyZSB3aGljaCBsaWNlbnNlcyBzaG91bGQgYmUgZGVlbWVkIGFjY2VwdGFibGUgZm9yIHVzZSBieSBkZXBlbmRlbmNpZXMuXG4gICAqIFRoaXMgc2V0dGluZyB3aWxsIGNhdXNlIHRoZSBidWlsZCB0byBmYWlsLCBpZiBhbnkgcHJvaGliaXRlZCBvciBub3QgYWxsb3dlZCBsaWNlbnNlcyBhcmVzIGVuY291bnRlcmVkLlxuICAgKiBAZGVmYXVsdCAtIG5vIGxpY2Vuc2UgY2hlY2tzIGFyZSBydW4gZHVyaW5nIHRoZSBidWlsZCBhbmQgYWxsIGxpY2Vuc2VzIHdpbGwgYmUgYWNjZXB0ZWRcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGNoZWNrTGljZW5zZXM/OiBqYXZhc2NyaXB0LkxpY2Vuc2VDaGVja2VyT3B0aW9ucztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIGBCdW5kbGVyYC5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGJ1bmRsZXJPcHRpb25zPzogamF2YXNjcmlwdC5CdW5kbGVyT3B0aW9ucztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIFBSIGJ1aWxkIHdvcmtmbG93LlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRXb3JrZmxvd09wdGlvbnM/OiBqYXZhc2NyaXB0LkJ1aWxkV29ya2Zsb3dPcHRpb25zO1xuICAvKipcbiAgICogRGVmaW5lIGEgR2l0SHViIHdvcmtmbG93IGZvciBidWlsZGluZyBQUnMuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSBpZiBub3QgYSBzdWJwcm9qZWN0XG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBidWlsZFdvcmtmbG93PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgYXBwcm92ZSBkZXBzIHVwZ3JhZGUgUFJzLCBhbGxvd2luZyB0aGVtIHRvIGJlIG1lcmdlZCBieSBtZXJnaWZ5IChpZiBjb25maWd1ZWQpLlxuICAgKiBUaHJvdyBpZiBzZXQgdG8gdHJ1ZSBidXQgYGF1dG9BcHByb3ZlT3B0aW9uc2AgYXJlIG5vdCBkZWZpbmVkLlxuICAgKiBAZGVmYXVsdCAtIHRydWVcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9BcHByb3ZlVXBncmFkZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogQSBkaXJlY3Rvcnkgd2hpY2ggd2lsbCBjb250YWluIGJ1aWxkIGFydGlmYWN0cy5cbiAgICogQGRlZmF1bHQgXCJkaXN0XCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGFydGlmYWN0c0RpcmVjdG9yeT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBtYWluIHJlbGVhc2UgYnJhbmNoLlxuICAgKiBAZGVmYXVsdCBcIm1haW5cIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVmYXVsdFJlbGVhc2VCcmFuY2g/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBHaXRodWIgUnVubmVyIEdyb3VwIHNlbGVjdGlvbiBvcHRpb25zLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKiBAZGVzY3JpcHRpb24gRGVmaW5lcyBhIHRhcmdldCBSdW5uZXIgR3JvdXAgYnkgbmFtZSBhbmQvb3IgbGFiZWxzXG4gICAqIEB0aHJvd3Mge0Vycm9yfSBpZiBib3RoIGBydW5zT25gIGFuZCBgcnVuc09uR3JvdXBgIGFyZSBzcGVjaWZpZWRcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93UnVuc09uR3JvdXA/OiBHcm91cFJ1bm5lck9wdGlvbnM7XG4gIC8qKlxuICAgKiBHaXRodWIgUnVubmVyIHNlbGVjdGlvbiBsYWJlbHMuXG4gICAqIEBkZWZhdWx0IFtcInVidW50dS1sYXRlc3RcIl1cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICogQGRlc2NyaXB0aW9uIERlZmluZXMgYSB0YXJnZXQgUnVubmVyIGJ5IGxhYmVsc1xuICAgKiBAdGhyb3dzIHtFcnJvcn0gaWYgYm90aCBgcnVuc09uYCBhbmQgYHJ1bnNPbkdyb3VwYCBhcmUgc3BlY2lmaWVkXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd1J1bnNPbj86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBDb250YWluZXIgaW1hZ2UgdG8gdXNlIGZvciBHaXRIdWIgd29ya2Zsb3dzLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgaW1hZ2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93Q29udGFpbmVySW1hZ2U/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDdXN0b20gY29uZmlndXJhdGlvbiB1c2VkIHdoZW4gY3JlYXRpbmcgY2hhbmdlbG9nIHdpdGggY29tbWl0LWFuZC10YWctdmVyc2lvbiBwYWNrYWdlLlxuICAgKiBHaXZlbiB2YWx1ZXMgZWl0aGVyIGFwcGVuZCB0byBkZWZhdWx0IGNvbmZpZ3VyYXRpb24gb3Igb3ZlcndyaXRlIHZhbHVlcyBpbiBpdC5cbiAgICogQGRlZmF1bHQgLSBzdGFuZGFyZCBjb25maWd1cmF0aW9uIGFwcGxpY2FibGUgZm9yIEdpdEh1YiByZXBvc2l0b3JpZXNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHZlcnNpb25yY09wdGlvbnM/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuICAvKipcbiAgICogQSBzZXQgb2Ygd29ya2Zsb3cgc3RlcHMgdG8gZXhlY3V0ZSBpbiBvcmRlciB0byBzZXR1cCB0aGUgd29ya2Zsb3cgY29udGFpbmVyLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVdvcmtmbG93U2V0dXBTdGVwcz86IEFycmF5PGdpdGh1Yi53b3JrZmxvd3MuSm9iU3RlcD47XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZGVmYXVsdCByZWxlYXNlIHdvcmtmbG93LlxuICAgKiBAZGVmYXVsdCBcInJlbGVhc2VcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVdvcmtmbG93TmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSByZWxlYXNlIHRyaWdnZXIgdG8gdXNlLlxuICAgKiBAZGVmYXVsdCAtIENvbnRpbnVvdXMgcmVsZWFzZXMgKGBSZWxlYXNlVHJpZ2dlci5jb250aW51b3VzKClgKVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVRyaWdnZXI/OiByZWxlYXNlLlJlbGVhc2VUcmlnZ2VyO1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBhZGQgdGhlIGdpdmVuIHByZWZpeCB0byByZWxlYXNlIHRhZ3MuIFVzZWZ1bCBpZiB5b3UgYXJlIHJlbGVhc2luZyBvbiBtdWx0aXBsZSBicmFuY2hlcyB3aXRoIG92ZXJsYXBwaW5nIHZlcnNpb24gbnVtYmVycy5cbiAgICogTm90ZTogdGhpcyBwcmVmaXggaXMgdXNlZCB0byBkZXRlY3QgdGhlIGxhdGVzdCB0YWdnZWQgdmVyc2lvblxuICAgKiB3aGVuIGJ1bXBpbmcsIHNvIGlmIHlvdSBjaGFuZ2UgdGhpcyBvbiBhIHByb2plY3Qgd2l0aCBhbiBleGlzdGluZyB2ZXJzaW9uXG4gICAqIGhpc3RvcnksIHlvdSBtYXkgbmVlZCB0byBtYW51YWxseSB0YWcgeW91ciBsYXRlc3QgcmVsZWFzZVxuICAgKiB3aXRoIHRoZSBuZXcgcHJlZml4LlxuICAgKiBAZGVmYXVsdCBcInZcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVRhZ1ByZWZpeD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBsYWJlbCB0byBhcHBseSB0byBpc3N1ZXMgaW5kaWNhdGluZyBwdWJsaXNoIGZhaWx1cmVzLlxuICAgKiBPbmx5IGFwcGxpZXMgaWYgYHJlbGVhc2VGYWlsdXJlSXNzdWVgIGlzIHRydWUuXG4gICAqIEBkZWZhdWx0IFwiZmFpbGVkLXJlbGVhc2VcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZUZhaWx1cmVJc3N1ZUxhYmVsPzogc3RyaW5nO1xuICAvKipcbiAgICogQ3JlYXRlIGEgZ2l0aHViIGlzc3VlIG9uIGV2ZXJ5IGZhaWxlZCBwdWJsaXNoaW5nIHRhc2suXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlRmFpbHVyZUlzc3VlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERlZmluZXMgYWRkaXRpb25hbCByZWxlYXNlIGJyYW5jaGVzLlxuICAgKiBBIHdvcmtmbG93IHdpbGwgYmUgY3JlYXRlZCBmb3IgZWFjaFxuICAgKiByZWxlYXNlIGJyYW5jaCB3aGljaCB3aWxsIHB1Ymxpc2ggcmVsZWFzZXMgZnJvbSBjb21taXRzIGluIHRoaXMgYnJhbmNoLlxuICAgKiBFYWNoIHJlbGVhc2UgYnJhbmNoIF9tdXN0XyBiZSBhc3NpZ25lZCBhIG1ham9yIHZlcnNpb24gbnVtYmVyIHdoaWNoIGlzIHVzZWRcbiAgICogdG8gZW5mb3JjZSB0aGF0IHZlcnNpb25zIHB1Ymxpc2hlZCBmcm9tIHRoYXQgYnJhbmNoIGFsd2F5cyB1c2UgdGhhdCBtYWpvclxuICAgKiB2ZXJzaW9uLiBJZiBtdWx0aXBsZSBicmFuY2hlcyBhcmUgdXNlZCwgdGhlIGBtYWpvclZlcnNpb25gIGZpZWxkIG11c3QgYWxzb1xuICAgKiBiZSBwcm92aWRlZCBmb3IgdGhlIGRlZmF1bHQgYnJhbmNoLlxuICAgKiBAZGVmYXVsdCAtIG5vIGFkZGl0aW9uYWwgYnJhbmNoZXMgYXJlIHVzZWQgZm9yIHJlbGVhc2UuIHlvdSBjYW4gdXNlXG5gYWRkQnJhbmNoKClgIHRvIGFkZCBhZGRpdGlvbmFsIGJyYW5jaGVzLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZUJyYW5jaGVzPzogUmVjb3JkPHN0cmluZywgcmVsZWFzZS5CcmFuY2hPcHRpb25zPjtcbiAgLyoqXG4gICAqIERlZmluZSBwdWJsaXNoaW5nIHRhc2tzIHRoYXQgY2FuIGJlIGV4ZWN1dGVkIG1hbnVhbGx5IGFzIHdlbGwgYXMgd29ya2Zsb3dzLlxuICAgKiBOb3JtYWxseSwgcHVibGlzaGluZyBvbmx5IGhhcHBlbnMgd2l0aGluIGF1dG9tYXRlZCB3b3JrZmxvd3MuIEVuYWJsZSB0aGlzXG4gICAqIGluIG9yZGVyIHRvIGNyZWF0ZSBhIHB1Ymxpc2hpbmcgdGFzayBmb3IgZWFjaCBwdWJsaXNoaW5nIGFjdGl2aXR5LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGlzaFRhc2tzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluc3RlYWQgb2YgYWN0dWFsbHkgcHVibGlzaGluZyB0byBwYWNrYWdlIG1hbmFnZXJzLCBqdXN0IHByaW50IHRoZSBwdWJsaXNoaW5nIGNvbW1hbmQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwdWJsaXNoRHJ5UnVuPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEJ1bXAgdmVyc2lvbnMgZnJvbSB0aGUgZGVmYXVsdCBicmFuY2ggYXMgcHJlLXJlbGVhc2VzIChlLmcuIFwiYmV0YVwiLCBcImFscGhhXCIsIFwicHJlXCIpLlxuICAgKiBAZGVmYXVsdCAtIG5vcm1hbCBzZW1hbnRpYyB2ZXJzaW9uc1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJlcmVsZWFzZT86IHN0cmluZztcbiAgLyoqXG4gICAqIFN0ZXBzIHRvIGV4ZWN1dGUgYWZ0ZXIgYnVpbGQgYXMgcGFydCBvZiB0aGUgcmVsZWFzZSB3b3JrZmxvdy5cbiAgICogQGRlZmF1bHQgW11cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHBvc3RCdWlsZFN0ZXBzPzogQXJyYXk8Z2l0aHViLndvcmtmbG93cy5Kb2JTdGVwPjtcbiAgLyoqXG4gICAqIFRoZSBucG1EaXN0VGFnIHRvIHVzZSB3aGVuIHB1Ymxpc2hpbmcgZnJvbSB0aGUgZGVmYXVsdCBicmFuY2guXG4gICAqIFRvIHNldCB0aGUgbnBtIGRpc3QtdGFnIGZvciByZWxlYXNlIGJyYW5jaGVzLCBzZXQgdGhlIGBucG1EaXN0VGFnYCBwcm9wZXJ0eVxuICAgKiBmb3IgZWFjaCBicmFuY2guXG4gICAqIEBkZWZhdWx0IFwibGF0ZXN0XCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG5wbURpc3RUYWc/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBIHNoZWxsIGNvbW1hbmQgdG8gY29udHJvbCB0aGUgbmV4dCB2ZXJzaW9uIHRvIHJlbGVhc2UuXG4gICAqIElmIHByZXNlbnQsIHRoaXMgc2hlbGwgY29tbWFuZCB3aWxsIGJlIHJ1biBiZWZvcmUgdGhlIGJ1bXAgaXMgZXhlY3V0ZWQsIGFuZFxuICAgKiBpdCBkZXRlcm1pbmVzIHdoYXQgdmVyc2lvbiB0byByZWxlYXNlLiBJdCB3aWxsIGJlIGV4ZWN1dGVkIGluIHRoZSBmb2xsb3dpbmdcbiAgICogZW52aXJvbm1lbnQ6XG4gICAqXG4gICAqIC0gV29ya2luZyBkaXJlY3Rvcnk6IHRoZSBwcm9qZWN0IGRpcmVjdG9yeS5cbiAgICogLSBgJFZFUlNJT05gOiB0aGUgY3VycmVudCB2ZXJzaW9uLiBMb29rcyBsaWtlIGAxLjIuM2AuXG4gICAqIC0gYCRMQVRFU1RfVEFHYDogdGhlIG1vc3QgcmVjZW50IHRhZy4gTG9va3MgbGlrZSBgcHJlZml4LXYxLjIuM2AsIG9yIG1heSBiZSB1bnNldC5cbiAgICogLSBgJFNVR0dFU1RFRF9CVU1QYDogdGhlIHN1Z2dlc3RlZCBidW1wIGFjdGlvbiBiYXNlZCBvbiBjb21taXRzLiBPbmUgb2YgYG1ham9yfG1pbm9yfHBhdGNofG5vbmVgLlxuICAgKlxuICAgKiBUaGUgY29tbWFuZCBzaG91bGQgcHJpbnQgb25lIG9mIHRoZSBmb2xsb3dpbmcgdG8gYHN0ZG91dGA6XG4gICAqXG4gICAqIC0gTm90aGluZzogdGhlIG5leHQgdmVyc2lvbiBudW1iZXIgd2lsbCBiZSBkZXRlcm1pbmVkIGJhc2VkIG9uIGNvbW1pdCBoaXN0b3J5LlxuICAgKiAtIGB4LnkuemA6IHRoZSBuZXh0IHZlcnNpb24gbnVtYmVyIHdpbGwgYmUgYHgueS56YC5cbiAgICogLSBgbWFqb3J8bWlub3J8cGF0Y2hgOiB0aGUgbmV4dCB2ZXJzaW9uIG51bWJlciB3aWxsIGJlIHRoZSBjdXJyZW50IHZlcnNpb24gbnVtYmVyXG4gICAqICAgd2l0aCB0aGUgaW5kaWNhdGVkIGNvbXBvbmVudCBidW1wZWQuXG4gICAqXG4gICAqIFRoaXMgc2V0dGluZyBjYW5ub3QgYmUgc3BlY2lmaWVkIHRvZ2V0aGVyIHdpdGggYG1pbk1ham9yVmVyc2lvbmA7IHRoZSBpbnZva2VkXG4gICAqIHNjcmlwdCBjYW4gYmUgdXNlZCB0byBhY2hpZXZlIHRoZSBlZmZlY3RzIG9mIGBtaW5NYWpvclZlcnNpb25gLlxuICAgKiBAZGVmYXVsdCAtIFRoZSBuZXh0IHZlcnNpb24gd2lsbCBiZSBkZXRlcm1pbmVkIGJhc2VkIG9uIHRoZSBjb21taXQgaGlzdG9yeSBhbmQgcHJvamVjdCBzZXR0aW5ncy5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG5leHRWZXJzaW9uQ29tbWFuZD86IHN0cmluZztcbiAgLyoqXG4gICAqIE1pbmltYWwgTWFqb3IgdmVyc2lvbiB0byByZWxlYXNlLlxuICAgKiBUaGlzIGNhbiBiZSB1c2VmdWwgdG8gc2V0IHRvIDEsIGFzIGJyZWFraW5nIGNoYW5nZXMgYmVmb3JlIHRoZSAxLnggbWFqb3JcbiAgICogcmVsZWFzZSBhcmUgbm90IGluY3JlbWVudGluZyB0aGUgbWFqb3IgdmVyc2lvbiBudW1iZXIuXG4gICAqXG4gICAqIENhbiBub3QgYmUgc2V0IHRvZ2V0aGVyIHdpdGggYG1ham9yVmVyc2lvbmAuXG4gICAqIEBkZWZhdWx0IC0gTm8gbWluaW11bSB2ZXJzaW9uIGlzIGJlaW5nIGVuZm9yY2VkXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBtaW5NYWpvclZlcnNpb24/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBNYWpvciB2ZXJzaW9uIHRvIHJlbGVhc2UgZnJvbSB0aGUgZGVmYXVsdCBicmFuY2guXG4gICAqIElmIHRoaXMgaXMgc3BlY2lmaWVkLCB3ZSBidW1wIHRoZSBsYXRlc3QgdmVyc2lvbiBvZiB0aGlzIG1ham9yIHZlcnNpb24gbGluZS5cbiAgICogSWYgbm90IHNwZWNpZmllZCwgd2UgYnVtcCB0aGUgZ2xvYmFsIGxhdGVzdCB2ZXJzaW9uLlxuICAgKiBAZGVmYXVsdCAtIE1ham9yIHZlcnNpb24gaXMgbm90IGVuZm9yY2VkLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbWFqb3JWZXJzaW9uPzogbnVtYmVyO1xuICAvKipcbiAgICogVmVyc2lvbiByZXF1aXJlbWVudCBvZiBgcHVibGliYCB3aGljaCBpcyB1c2VkIHRvIHB1Ymxpc2ggbW9kdWxlcyB0byBucG0uXG4gICAqIEBkZWZhdWx0IFwibGF0ZXN0XCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGpzaWlSZWxlYXNlVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBgY29tbWl0LWFuZC10YWctdmVyc2lvbmAgY29tcGF0aWJsZSBwYWNrYWdlIHVzZWQgdG8gYnVtcCB0aGUgcGFja2FnZSB2ZXJzaW9uLCBhcyBhIGRlcGVuZGVuY3kgc3RyaW5nLlxuICAgKiBUaGlzIGNhbiBiZSBhbnkgY29tcGF0aWJsZSBwYWNrYWdlIHZlcnNpb24sIGluY2x1ZGluZyB0aGUgZGVwcmVjYXRlZCBgc3RhbmRhcmQtdmVyc2lvbkA5YC5cbiAgICogQGRlZmF1bHQgLSBBIHJlY2VudCB2ZXJzaW9uIG9mIFwiY29tbWl0LWFuZC10YWctdmVyc2lvblwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBidW1wUGFja2FnZT86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIFlhcm4gQmVycnkuXG4gICAqIEBkZWZhdWx0IC0gWWFybiBCZXJyeSB2NCB3aXRoIGFsbCBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHlhcm5CZXJyeU9wdGlvbnM/OiBqYXZhc2NyaXB0Lllhcm5CZXJyeU9wdGlvbnM7XG4gIC8qKlxuICAgKiBQYWNrYWdlJ3MgU3RhYmlsaXR5LlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgc3RhYmlsaXR5Pzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgcHJpdmF0ZWx5IGhvc3RlZCBzY29wZWQgcGFja2FnZXMuXG4gICAqIEBkZWZhdWx0IC0gZmV0Y2ggYWxsIHNjb3BlZCBwYWNrYWdlcyBmcm9tIHRoZSBwdWJsaWMgbnBtIHJlZ2lzdHJ5XG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBzY29wZWRQYWNrYWdlc09wdGlvbnM/OiBBcnJheTxqYXZhc2NyaXB0LlNjb3BlZFBhY2thZ2VzT3B0aW9ucz47XG4gIC8qKlxuICAgKiBJZiB0aGUgcGFja2FnZS5qc29uIGZvciB5b3VyIHBhY2thZ2UgaXMgbm90IGluIHRoZSByb290IGRpcmVjdG9yeSAoZm9yIGV4YW1wbGUgaWYgaXQgaXMgcGFydCBvZiBhIG1vbm9yZXBvKSwgeW91IGNhbiBzcGVjaWZ5IHRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggaXQgbGl2ZXMuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZXBvc2l0b3J5RGlyZWN0b3J5Pzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHJlcG9zaXRvcnkgaXMgdGhlIGxvY2F0aW9uIHdoZXJlIHRoZSBhY3R1YWwgY29kZSBmb3IgeW91ciBwYWNrYWdlIGxpdmVzLlxuICAgKiBTZWUgaHR0cHM6Ly9jbGFzc2ljLnlhcm5wa2cuY29tL2VuL2RvY3MvcGFja2FnZS1qc29uLyN0b2MtcmVwb3NpdG9yeVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVwb3NpdG9yeT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSB2ZXJzaW9uIG9mIFBOUE0gdG8gdXNlIGlmIHVzaW5nIFBOUE0gYXMgYSBwYWNrYWdlIG1hbmFnZXIuXG4gICAqIEBkZWZhdWx0IFwiOVwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwbnBtVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFBlZXIgZGVwZW5kZW5jaWVzIGZvciB0aGlzIG1vZHVsZS5cbiAgICogRGVwZW5kZW5jaWVzIGxpc3RlZCBoZXJlIGFyZSByZXF1aXJlZCB0b1xuICAgKiBiZSBpbnN0YWxsZWQgKGFuZCBzYXRpc2ZpZWQpIGJ5IHRoZSBfY29uc3VtZXJfIG9mIHRoaXMgbGlicmFyeS4gVXNpbmcgcGVlclxuICAgKiBkZXBlbmRlbmNpZXMgYWxsb3dzIHlvdSB0byBlbnN1cmUgdGhhdCBvbmx5IGEgc2luZ2xlIG1vZHVsZSBvZiBhIGNlcnRhaW5cbiAgICogbGlicmFyeSBleGlzdHMgaW4gdGhlIGBub2RlX21vZHVsZXNgIHRyZWUgb2YgeW91ciBjb25zdW1lcnMuXG4gICAqXG4gICAqIE5vdGUgdGhhdCBwcmlvciB0byBucG1ANywgcGVlciBkZXBlbmRlbmNpZXMgYXJlIF9ub3RfIGF1dG9tYXRpY2FsbHlcbiAgICogaW5zdGFsbGVkLCB3aGljaCBtZWFucyB0aGF0IGFkZGluZyBwZWVyIGRlcGVuZGVuY2llcyB0byBhIGxpYnJhcnkgd2lsbCBiZSBhXG4gICAqIGJyZWFraW5nIGNoYW5nZSBmb3IgeW91ciBjdXN0b21lcnMuXG4gICAqXG4gICAqIFVubGVzcyBgcGVlckRlcGVuZGVuY3lPcHRpb25zLnBpbm5lZERldkRlcGVuZGVuY3lgIGlzIGRpc2FibGVkIChpdCBpc1xuICAgKiBlbmFibGVkIGJ5IGRlZmF1bHQpLCBwcm9qZW4gd2lsbCBhdXRvbWF0aWNhbGx5IGFkZCBhIGRldiBkZXBlbmRlbmN5IHdpdGggYVxuICAgKiBwaW5uZWQgdmVyc2lvbiBmb3IgZWFjaCBwZWVyIGRlcGVuZGVuY3kuIFRoaXMgd2lsbCBlbnN1cmUgdGhhdCB5b3UgYnVpbGQgJlxuICAgKiB0ZXN0IHlvdXIgbW9kdWxlIGFnYWluc3QgdGhlIGxvd2VzdCBwZWVyIHZlcnNpb24gcmVxdWlyZWQuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwZWVyRGVwcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBgcGVlckRlcHNgLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcGVlckRlcGVuZGVuY3lPcHRpb25zPzogamF2YXNjcmlwdC5QZWVyRGVwZW5kZW5jeU9wdGlvbnM7XG4gIC8qKlxuICAgKiBUaGUgXCJuYW1lXCIgaW4gcGFja2FnZS5qc29uLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHRzIHRvIHByb2plY3QgbmFtZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKiBAZmVhdHVyZWQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgcGFja2FnZU5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgTm9kZSBQYWNrYWdlIE1hbmFnZXIgdXNlZCB0byBleGVjdXRlIHNjcmlwdHMuXG4gICAqIEBkZWZhdWx0IE5vZGVQYWNrYWdlTWFuYWdlci5ZQVJOX0NMQVNTSUNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHBhY2thZ2VNYW5hZ2VyPzogamF2YXNjcmlwdC5Ob2RlUGFja2FnZU1hbmFnZXI7XG4gIC8qKlxuICAgKiBHaXRIdWIgc2VjcmV0IHdoaWNoIGNvbnRhaW5zIHRoZSBOUE0gdG9rZW4gdG8gdXNlIHdoZW4gcHVibGlzaGluZyBwYWNrYWdlcy5cbiAgICogQGRlZmF1bHQgXCJOUE1fVE9LRU5cIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbnBtVG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgYmFzZSBVUkwgb2YgdGhlIG5wbSBwYWNrYWdlIHJlZ2lzdHJ5LlxuICAgKiBNdXN0IGJlIGEgVVJMIChlLmcuIHN0YXJ0IHdpdGggXCJodHRwczovL1wiIG9yIFwiaHR0cDovL1wiKVxuICAgKiBAZGVmYXVsdCBcImh0dHBzOi8vcmVnaXN0cnkubnBtanMub3JnXCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG5wbVJlZ2lzdHJ5VXJsPzogc3RyaW5nO1xuICAvKipcbiAgICogU2hvdWxkIHByb3ZlbmFuY2Ugc3RhdGVtZW50cyBiZSBnZW5lcmF0ZWQgd2hlbiB0aGUgcGFja2FnZSBpcyBwdWJsaXNoZWQuXG4gICAqIEEgc3VwcG9ydGVkIHBhY2thZ2UgbWFuYWdlciBpcyByZXF1aXJlZCB0byBwdWJsaXNoIGEgcGFja2FnZSB3aXRoIG5wbSBwcm92ZW5hbmNlIHN0YXRlbWVudHMgYW5kXG4gICAqIHlvdSB3aWxsIG5lZWQgdG8gdXNlIGEgc3VwcG9ydGVkIENJL0NEIHByb3ZpZGVyLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgdGhlIHByb2plbiBgUmVsZWFzZWAgYW5kIGBQdWJsaXNoZXJgIGNvbXBvbmVudHMgYXJlIHVzaW5nIGBwdWJsaWJgIHRvIHB1Ymxpc2ggcGFja2FnZXMsXG4gICAqIHdoaWNoIGlzIHVzaW5nIG5wbSBpbnRlcm5hbGx5IGFuZCBzdXBwb3J0cyBwcm92ZW5hbmNlIHN0YXRlbWVudHMgaW5kZXBlbmRlbnRseSBvZiB0aGUgcGFja2FnZSBtYW5hZ2VyIHVzZWQuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSBmb3IgcHVibGljIHBhY2thZ2VzLCBmYWxzZSBvdGhlcndpc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG5wbVByb3ZlbmFuY2U/OiBib29sZWFuO1xuICAvKipcbiAgICogQWNjZXNzIGxldmVsIG9mIHRoZSBucG0gcGFja2FnZS5cbiAgICogQGRlZmF1bHQgLSBmb3Igc2NvcGVkIHBhY2thZ2VzIChlLmcuIGBmb29AYmFyYCksIHRoZSBkZWZhdWx0IGlzXG5gTnBtQWNjZXNzLlJFU1RSSUNURURgLCBmb3Igbm9uLXNjb3BlZCBwYWNrYWdlcywgdGhlIGRlZmF1bHQgaXNcbmBOcG1BY2Nlc3MuUFVCTElDYC5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG5wbUFjY2Vzcz86IGphdmFzY3JpcHQuTnBtQWNjZXNzO1xuICAvKipcbiAgICogVGhlIG1pbmltdW0gbm9kZSB2ZXJzaW9uIHJlcXVpcmVkIGJ5IHRoaXMgcGFja2FnZSB0byBmdW5jdGlvbi4gTW9zdCBwcm9qZWN0cyBzaG91bGQgbm90IHVzZSB0aGlzIG9wdGlvbi5cbiAgICogVGhlIHZhbHVlIGluZGljYXRlcyB0aGF0IHRoZSBwYWNrYWdlIGlzIGluY29tcGF0aWJsZSB3aXRoIGFueSBvbGRlciB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBUaGlzIHJlcXVpcmVtZW50IGlzIGVuZm9yY2VkIHZpYSB0aGUgZW5naW5lcyBmaWVsZC5cbiAgICpcbiAgICogWW91IHdpbGwgbm9ybWFsbHkgbm90IG5lZWQgdG8gc2V0IHRoaXMgb3B0aW9uLCBldmVuIGlmIHlvdXIgcGFja2FnZSBpcyBpbmNvbXBhdGlibGUgd2l0aCBFT0wgdmVyc2lvbnMgb2Ygbm9kZS5cbiAgICogQ29uc2lkZXIgdGhpcyBvcHRpb24gb25seSBpZiB5b3VyIHBhY2thZ2UgZGVwZW5kcyBvbiBhIHNwZWNpZmljIGZlYXR1cmUsIHRoYXQgaXMgbm90IGF2YWlsYWJsZSBpbiBvdGhlciBMVFMgdmVyc2lvbnMuXG4gICAqIFNldHRpbmcgdGhpcyBvcHRpb24gaGFzIHZlcnkgaGlnaCBpbXBhY3Qgb24gdGhlIGNvbnN1bWVycyBvZiB5b3VyIHBhY2thZ2UsXG4gICAqIGFzIHBhY2thZ2UgbWFuYWdlcnMgd2lsbCBhY3RpdmVseSBwcmV2ZW50IHVzYWdlIHdpdGggbm9kZSB2ZXJzaW9ucyB5b3UgaGF2ZSBtYXJrZWQgYXMgaW5jb21wYXRpYmxlLlxuICAgKlxuICAgKiBUbyBjaGFuZ2UgdGhlIG5vZGUgdmVyc2lvbiBvZiB5b3VyIENJL0NEIHdvcmtmbG93cywgdXNlIGB3b3JrZmxvd05vZGVWZXJzaW9uYC5cbiAgICogQGRlZmF1bHQgLSBubyBtaW5pbXVtIHZlcnNpb24gaXMgZW5mb3JjZWRcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG1pbk5vZGVWZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIG1heGltdW0gbm9kZSB2ZXJzaW9uIHN1cHBvcnRlZCBieSB0aGlzIHBhY2thZ2UuIE1vc3QgcHJvamVjdHMgc2hvdWxkIG5vdCB1c2UgdGhpcyBvcHRpb24uXG4gICAqIFRoZSB2YWx1ZSBpbmRpY2F0ZXMgdGhhdCB0aGUgcGFja2FnZSBpcyBpbmNvbXBhdGlibGUgd2l0aCBhbnkgbmV3ZXIgdmVyc2lvbnMgb2Ygbm9kZS5cbiAgICogVGhpcyByZXF1aXJlbWVudCBpcyBlbmZvcmNlZCB2aWEgdGhlIGVuZ2luZXMgZmllbGQuXG4gICAqXG4gICAqIFlvdSB3aWxsIG5vcm1hbGx5IG5vdCBuZWVkIHRvIHNldCB0aGlzIG9wdGlvbi5cbiAgICogQ29uc2lkZXIgdGhpcyBvcHRpb24gb25seSBpZiB5b3VyIHBhY2thZ2UgaXMga25vd24gdG8gbm90IGZ1bmN0aW9uIHdpdGggbmV3ZXIgdmVyc2lvbnMgb2Ygbm9kZS5cbiAgICogQGRlZmF1bHQgLSBubyBtYXhpbXVtIHZlcnNpb24gaXMgZW5mb3JjZWRcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG1heE5vZGVWZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIGEgbGljZW5zZSBzaG91bGQgYmUgYWRkZWQuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGxpY2Vuc2VkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIExpY2Vuc2UncyBTUERYIGlkZW50aWZpZXIuXG4gICAqIFNlZSBodHRwczovL2dpdGh1Yi5jb20vcHJvamVuL3Byb2plbi90cmVlL21haW4vbGljZW5zZS10ZXh0IGZvciBhIGxpc3Qgb2Ygc3VwcG9ydGVkIGxpY2Vuc2VzLlxuICAgKiBVc2UgdGhlIGBsaWNlbnNlZGAgb3B0aW9uIGlmIHlvdSB3YW50IHRvIG5vIGxpY2Vuc2UgdG8gYmUgc3BlY2lmaWVkLlxuICAgKiBAZGVmYXVsdCBcIk1JVFwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBsaWNlbnNlPzogc3RyaW5nO1xuICAvKipcbiAgICogS2V5d29yZHMgdG8gaW5jbHVkZSBpbiBgcGFja2FnZS5qc29uYC5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGtleXdvcmRzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIFBhY2thZ2UncyBIb21lcGFnZSAvIFdlYnNpdGUuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBob21lcGFnZT86IHN0cmluZztcbiAgLyoqXG4gICAqIE1vZHVsZSBlbnRyeXBvaW50IChgbWFpbmAgaW4gYHBhY2thZ2UuanNvbmApLlxuICAgKiBTZXQgdG8gYW4gZW1wdHkgc3RyaW5nIHRvIG5vdCBpbmNsdWRlIGBtYWluYCBpbiB5b3VyIHBhY2thZ2UuanNvblxuICAgKiBAZGVmYXVsdCBcImxpYi9pbmRleC5qc1wiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBlbnRyeXBvaW50Pzogc3RyaW5nO1xuICAvKipcbiAgICogQnVpbGQgZGVwZW5kZW5jaWVzIGZvciB0aGlzIG1vZHVsZS5cbiAgICogVGhlc2UgZGVwZW5kZW5jaWVzIHdpbGwgb25seSBiZVxuICAgKiBhdmFpbGFibGUgaW4geW91ciBidWlsZCBlbnZpcm9ubWVudCBidXQgd2lsbCBub3QgYmUgZmV0Y2hlZCB3aGVuIHRoaXNcbiAgICogbW9kdWxlIGlzIGNvbnN1bWVkLlxuICAgKlxuICAgKiBUaGUgcmVjb21tZW5kYXRpb24gaXMgdG8gb25seSBzcGVjaWZ5IHRoZSBtb2R1bGUgbmFtZSBoZXJlIChlLmcuXG4gICAqIGBleHByZXNzYCkuIFRoaXMgd2lsbCBiZWhhdmUgc2ltaWxhciB0byBgeWFybiBhZGRgIG9yIGBucG0gaW5zdGFsbGAgaW4gdGhlXG4gICAqIHNlbnNlIHRoYXQgaXQgd2lsbCBhZGQgdGhlIG1vZHVsZSBhcyBhIGRlcGVuZGVuY3kgdG8geW91ciBgcGFja2FnZS5qc29uYFxuICAgKiBmaWxlIHdpdGggdGhlIGxhdGVzdCB2ZXJzaW9uIChgXmApLiBZb3UgY2FuIHNwZWNpZnkgc2VtdmVyIHJlcXVpcmVtZW50cyBpblxuICAgKiB0aGUgc2FtZSBzeW50YXggcGFzc2VkIHRvIGBucG0gaWAgb3IgYHlhcm4gYWRkYCAoZS5nLiBgZXhwcmVzc0BeMmApIGFuZFxuICAgKiB0aGlzIHdpbGwgYmUgd2hhdCB5b3UgYHBhY2thZ2UuanNvbmAgd2lsbCBldmVudHVhbGx5IGluY2x1ZGUuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBkZXZEZXBzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiBpcyBqdXN0IGEgc3RyaW5nIHRoYXQgaGVscHMgcGVvcGxlIHVuZGVyc3RhbmQgdGhlIHB1cnBvc2Ugb2YgdGhlIHBhY2thZ2UuXG4gICAqIEl0IGNhbiBiZSB1c2VkIHdoZW4gc2VhcmNoaW5nIGZvciBwYWNrYWdlcyBpbiBhIHBhY2thZ2UgbWFuYWdlciBhcyB3ZWxsLlxuICAgKiBTZWUgaHR0cHM6Ly9jbGFzc2ljLnlhcm5wa2cuY29tL2VuL2RvY3MvcGFja2FnZS1qc29uLyN0b2MtZGVzY3JpcHRpb25cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogUnVudGltZSBkZXBlbmRlbmNpZXMgb2YgdGhpcyBtb2R1bGUuXG4gICAqIFRoZSByZWNvbW1lbmRhdGlvbiBpcyB0byBvbmx5IHNwZWNpZnkgdGhlIG1vZHVsZSBuYW1lIGhlcmUgKGUuZy5cbiAgICogYGV4cHJlc3NgKS4gVGhpcyB3aWxsIGJlaGF2ZSBzaW1pbGFyIHRvIGB5YXJuIGFkZGAgb3IgYG5wbSBpbnN0YWxsYCBpbiB0aGVcbiAgICogc2Vuc2UgdGhhdCBpdCB3aWxsIGFkZCB0aGUgbW9kdWxlIGFzIGEgZGVwZW5kZW5jeSB0byB5b3VyIGBwYWNrYWdlLmpzb25gXG4gICAqIGZpbGUgd2l0aCB0aGUgbGF0ZXN0IHZlcnNpb24gKGBeYCkuIFlvdSBjYW4gc3BlY2lmeSBzZW12ZXIgcmVxdWlyZW1lbnRzIGluXG4gICAqIHRoZSBzYW1lIHN5bnRheCBwYXNzZWQgdG8gYG5wbSBpYCBvciBgeWFybiBhZGRgIChlLmcuIGBleHByZXNzQF4yYCkgYW5kXG4gICAqIHRoaXMgd2lsbCBiZSB3aGF0IHlvdSBgcGFja2FnZS5qc29uYCB3aWxsIGV2ZW50dWFsbHkgaW5jbHVkZS5cbiAgICogQGRlZmF1bHQgW11cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGRlcHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgbnBtIHBhY2thZ2VzIHVzaW5nIEFXUyBDb2RlQXJ0aWZhY3QuXG4gICAqIFRoaXMgaXMgcmVxdWlyZWQgaWYgcHVibGlzaGluZyBwYWNrYWdlcyB0bywgb3IgaW5zdGFsbGluZyBzY29wZWQgcGFja2FnZXMgZnJvbSBBV1MgQ29kZUFydGlmYWN0XG4gICAqIEBkZWZhdWx0IC0gdW5kZWZpbmVkXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBjb2RlQXJ0aWZhY3RPcHRpb25zPzogamF2YXNjcmlwdC5Db2RlQXJ0aWZhY3RPcHRpb25zO1xuICAvKipcbiAgICogVGhlIHZlcnNpb24gb2YgQnVuIHRvIHVzZSBpZiB1c2luZyBCdW4gYXMgYSBwYWNrYWdlIG1hbmFnZXIuXG4gICAqIEBkZWZhdWx0IFwibGF0ZXN0XCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGJ1blZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBMaXN0IG9mIGRlcGVuZGVuY2llcyB0byBidW5kbGUgaW50byB0aGlzIG1vZHVsZS5cbiAgICogVGhlc2UgbW9kdWxlcyB3aWxsIGJlXG4gICAqIGFkZGVkIGJvdGggdG8gdGhlIGBkZXBlbmRlbmNpZXNgIHNlY3Rpb24gYW5kIGBidW5kbGVkRGVwZW5kZW5jaWVzYCBzZWN0aW9uIG9mXG4gICAqIHlvdXIgYHBhY2thZ2UuanNvbmAuXG4gICAqXG4gICAqIFRoZSByZWNvbW1lbmRhdGlvbiBpcyB0byBvbmx5IHNwZWNpZnkgdGhlIG1vZHVsZSBuYW1lIGhlcmUgKGUuZy5cbiAgICogYGV4cHJlc3NgKS4gVGhpcyB3aWxsIGJlaGF2ZSBzaW1pbGFyIHRvIGB5YXJuIGFkZGAgb3IgYG5wbSBpbnN0YWxsYCBpbiB0aGVcbiAgICogc2Vuc2UgdGhhdCBpdCB3aWxsIGFkZCB0aGUgbW9kdWxlIGFzIGEgZGVwZW5kZW5jeSB0byB5b3VyIGBwYWNrYWdlLmpzb25gXG4gICAqIGZpbGUgd2l0aCB0aGUgbGF0ZXN0IHZlcnNpb24gKGBeYCkuIFlvdSBjYW4gc3BlY2lmeSBzZW12ZXIgcmVxdWlyZW1lbnRzIGluXG4gICAqIHRoZSBzYW1lIHN5bnRheCBwYXNzZWQgdG8gYG5wbSBpYCBvciBgeWFybiBhZGRgIChlLmcuIGBleHByZXNzQF4yYCkgYW5kXG4gICAqIHRoaXMgd2lsbCBiZSB3aGF0IHlvdSBgcGFja2FnZS5qc29uYCB3aWxsIGV2ZW50dWFsbHkgaW5jbHVkZS5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGJ1bmRsZWREZXBzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIFRoZSB1cmwgdG8geW91ciBwcm9qZWN0J3MgaXNzdWUgdHJhY2tlci5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGJ1Z3NVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgZW1haWwgYWRkcmVzcyB0byB3aGljaCBpc3N1ZXMgc2hvdWxkIGJlIHJlcG9ydGVkLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYnVnc0VtYWlsPzogc3RyaW5nO1xuICAvKipcbiAgICogQmluYXJ5IHByb2dyYW1zIHZlbmRlZCB3aXRoIHlvdXIgbW9kdWxlLlxuICAgKiBZb3UgY2FuIHVzZSB0aGlzIG9wdGlvbiB0byBhZGQvY3VzdG9taXplIGhvdyBiaW5hcmllcyBhcmUgcmVwcmVzZW50ZWQgaW5cbiAgICogeW91ciBgcGFja2FnZS5qc29uYCwgYnV0IHVubGVzcyBgYXV0b0RldGVjdEJpbmAgaXMgYGZhbHNlYCwgZXZlcnlcbiAgICogZXhlY3V0YWJsZSBmaWxlIHVuZGVyIGBiaW5gIHdpbGwgYXV0b21hdGljYWxseSBiZSBhZGRlZCB0byB0aGlzIHNlY3Rpb24uXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBiaW4/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBhZGQgYWxsIGV4ZWN1dGFibGVzIHVuZGVyIHRoZSBgYmluYCBkaXJlY3RvcnkgdG8geW91ciBgcGFja2FnZS5qc29uYCBmaWxlIHVuZGVyIHRoZSBgYmluYCBzZWN0aW9uLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBhdXRvRGV0ZWN0QmluPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEF1dGhvcidzIFVSTCAvIFdlYnNpdGUuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBhdXRob3JVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJcyB0aGUgYXV0aG9yIGFuIG9yZ2FuaXphdGlvbi5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvck9yZ2FuaXphdGlvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRob3IncyBuYW1lLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogQXV0aG9yJ3MgZS1tYWlsLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yRW1haWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBbGxvdyB0aGUgcHJvamVjdCB0byBpbmNsdWRlIGBwZWVyRGVwZW5kZW5jaWVzYCBhbmQgYGJ1bmRsZWREZXBlbmRlbmNpZXNgLlxuICAgKiBUaGlzIGlzIG5vcm1hbGx5IG9ubHkgYWxsb3dlZCBmb3IgbGlicmFyaWVzLiBGb3IgYXBwcywgdGhlcmUncyBubyBtZWFuaW5nXG4gICAqIGZvciBzcGVjaWZ5aW5nIHRoZXNlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBhbGxvd0xpYnJhcnlEZXBlbmRlbmNpZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlIFZTQ29kZSBpbnRlZ3JhdGlvbi5cbiAgICogRW5hYmxlZCBieSBkZWZhdWx0IGZvciByb290IHByb2plY3RzLiBEaXNhYmxlZCBmb3Igbm9uLXJvb3QgcHJvamVjdHMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHZzY29kZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRvLWNsb3NlIHN0YWxlIGlzc3VlcyBhbmQgcHVsbCByZXF1ZXN0cy5cbiAgICogVG8gZGlzYWJsZSBzZXQgYHN0YWxlYCB0byBgZmFsc2VgLlxuICAgKiBAZGVmYXVsdCAtIHNlZSBkZWZhdWx0cyBpbiBgU3RhbGVPcHRpb25zYFxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgc3RhbGVPcHRpb25zPzogZ2l0aHViLlN0YWxlT3B0aW9ucztcbiAgLyoqXG4gICAqIEF1dG8tY2xvc2Ugb2Ygc3RhbGUgaXNzdWVzIGFuZCBwdWxsIHJlcXVlc3QuXG4gICAqIFNlZSBgc3RhbGVPcHRpb25zYCBmb3Igb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHN0YWxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBSRUFETUUgc2V0dXAuXG4gICAqIEBkZWZhdWx0IC0geyBmaWxlbmFtZTogJ1JFQURNRS5tZCcsIGNvbnRlbnRzOiAnIyByZXBsYWNlIHRoaXMnIH1cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHJlYWRtZT86IFNhbXBsZVJlYWRtZVByb3BzO1xuICAvKipcbiAgICogQ2hvb3NlIGEgbWV0aG9kIG9mIHByb3ZpZGluZyBHaXRIdWIgQVBJIGFjY2VzcyBmb3IgcHJvamVuIHdvcmtmbG93cy5cbiAgICogQGRlZmF1bHQgLSB1c2UgYSBwZXJzb25hbCBhY2Nlc3MgdG9rZW4gbmFtZWQgUFJPSkVOX0dJVEhVQl9UT0tFTlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVuQ3JlZGVudGlhbHM/OiBnaXRodWIuR2l0aHViQ3JlZGVudGlhbHM7XG4gIC8qKlxuICAgKiBBZGQgYSBHaXRwb2QgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBnaXRwb2Q/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgR2l0SHViIGludGVncmF0aW9uLlxuICAgKiBAZGVmYXVsdCAtIHNlZSBHaXRIdWJPcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBnaXRodWJPcHRpb25zPzogZ2l0aHViLkdpdEh1Yk9wdGlvbnM7XG4gIC8qKlxuICAgKiBFbmFibGUgR2l0SHViIGludGVncmF0aW9uLlxuICAgKiBFbmFibGVkIGJ5IGRlZmF1bHQgZm9yIHJvb3QgcHJvamVjdHMuIERpc2FibGVkIGZvciBub24tcm9vdCBwcm9qZWN0cy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0aHViPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEFkZCBhIFZTQ29kZSBkZXZlbG9wbWVudCBlbnZpcm9ubWVudCAodXNlZCBmb3IgR2l0SHViIENvZGVzcGFjZXMpLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGV2Q29udGFpbmVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEFkZCBhIGBjbG9iYmVyYCB0YXNrIHdoaWNoIHJlc2V0cyB0aGUgcmVwbyB0byBvcmlnaW4uXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSwgYnV0IGZhbHNlIGZvciBzdWJwcm9qZWN0c1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY2xvYmJlcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmUgb3B0aW9ucyBmb3IgYXV0b21hdGljIG1lcmdpbmcgb24gR2l0SHViLlxuICAgKiBIYXMgbm8gZWZmZWN0IGlmXG4gICAqIGBnaXRodWIubWVyZ2lmeWAgb3IgYGF1dG9NZXJnZWAgaXMgc2V0IHRvIGZhbHNlLlxuICAgKiBAZGVmYXVsdCAtIHNlZSBkZWZhdWx0cyBpbiBgQXV0b01lcmdlT3B0aW9uc2BcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9NZXJnZU9wdGlvbnM/OiBnaXRodWIuQXV0b01lcmdlT3B0aW9ucztcbiAgLyoqXG4gICAqIEVuYWJsZSBhdXRvbWF0aWMgbWVyZ2luZyBvbiBHaXRIdWIuXG4gICAqIEhhcyBubyBlZmZlY3QgaWYgYGdpdGh1Yi5tZXJnaWZ5YFxuICAgKiBpcyBzZXQgdG8gZmFsc2UuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9NZXJnZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBFbmFibGUgYW5kIGNvbmZpZ3VyZSB0aGUgJ2F1dG8gYXBwcm92ZScgd29ya2Zsb3cuXG4gICAqIEBkZWZhdWx0IC0gYXV0byBhcHByb3ZlIGlzIGRpc2FibGVkXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBhdXRvQXBwcm92ZU9wdGlvbnM/OiBnaXRodWIuQXV0b0FwcHJvdmVPcHRpb25zO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgcmVub3ZhdGVib3QuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZW5vdmF0ZWJvdE9wdGlvbnM/OiBSZW5vdmF0ZWJvdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBVc2UgcmVub3ZhdGVib3QgdG8gaGFuZGxlIGRlcGVuZGVuY3kgdXBncmFkZXMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZW5vdmF0ZWJvdD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciAucHJvamVucmMuanNvbi5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNvbk9wdGlvbnM/OiBQcm9qZW5yY0pzb25PcHRpb25zO1xuICAvKipcbiAgICogR2VuZXJhdGUgKG9uY2UpIC5wcm9qZW5yYy5qc29uIChpbiBKU09OKS4gU2V0IHRvIGBmYWxzZWAgaW4gb3JkZXIgdG8gZGlzYWJsZSAucHJvamVucmMuanNvbiBnZW5lcmF0aW9uLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNKc29uPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBzaGVsbCBjb21tYW5kIHRvIHVzZSBpbiBvcmRlciB0byBydW4gdGhlIHByb2plbiBDTEkuXG4gICAqIENhbiBiZSB1c2VkIHRvIGN1c3RvbWl6ZSBpbiBzcGVjaWFsIGVudmlyb25tZW50cy5cbiAgICogQGRlZmF1bHQgXCJucHggcHJvamVuXCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkNvbW1hbmQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgcGFyZW50IHByb2plY3QsIGlmIHRoaXMgcHJvamVjdCBpcyBwYXJ0IG9mIGEgYmlnZ2VyIHByb2plY3QuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwYXJlbnQ/OiBQcm9qZWN0O1xuICAvKipcbiAgICogVGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoZSBwcm9qZWN0LlxuICAgKiBSZWxhdGl2ZSB0byB0aGlzIGRpcmVjdG9yeSwgYWxsIGZpbGVzIGFyZSBzeW50aGVzaXplZC5cbiAgICpcbiAgICogSWYgdGhpcyBwcm9qZWN0IGhhcyBhIHBhcmVudCwgdGhpcyBkaXJlY3RvcnkgaXMgcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICAgKiBkaXJlY3RvcnkgYW5kIGl0IGNhbm5vdCBiZSB0aGUgc2FtZSBhcyB0aGUgcGFyZW50IG9yIGFueSBvZiBpdCdzIG90aGVyXG4gICAqIHN1YnByb2plY3RzLlxuICAgKiBAZGVmYXVsdCBcIi5cIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgb3V0ZGlyPzogc3RyaW5nO1xuICAvKipcbiAgICogQ29uZmlndXJlIGxvZ2dpbmcgb3B0aW9ucyBzdWNoIGFzIHZlcmJvc2l0eS5cbiAgICogQGRlZmF1bHQge31cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGxvZ2dpbmc/OiBMb2dnZXJPcHRpb25zO1xuICAvKipcbiAgICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciBnaXQuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBnaXRPcHRpb25zPzogR2l0T3B0aW9ucztcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgLmdpdGlnbm9yZSBmaWxlLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0SWdub3JlT3B0aW9ucz86IElnbm9yZUZpbGVPcHRpb25zO1xuICAvKipcbiAgICogV2hldGhlciB0byBjb21taXQgdGhlIG1hbmFnZWQgZmlsZXMgYnkgZGVmYXVsdC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY29tbWl0R2VuZXJhdGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoaXMgaXMgdGhlIG5hbWUgb2YgeW91ciBwcm9qZWN0LlxuICAgKiBAZGVmYXVsdCAkQkFTRURJUlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKiBAZmVhdHVyZWQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZXBvOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBXaGljaCBjb252ZW50aW9uYWwgY29tbWl0IHR5cGVzIHNob3VsZCBiZSByZWxlYXNlZFxuICAgKiBAZGVmYXVsdCBbJ2ZlYXQnLCAnZml4JywgJ2Nob3JlJywgJ3JldmVydCddXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNhYmxlQ29tbWl0VHlwZXM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogV2hpY2ggY29udmVudGlvbmFsIGNvbW1pdCB0eXBlcyBhcmUgYWxsb3dlZCB0byBiZSB1c2VkXG4gICAqIFR5cGVzIGxpc3RlZCBpbiBgcmVsZWFzYWJsZUNvbW1pdFR5cGVzYCBhcmUgYWx3YXlzIGFsbG93ZWRcbiAgICogQGRlZmF1bHQgWydmZWF0JywgJ2ZpeCcsICdjaG9yZScsICdyZXZlcnQnLCAnZG9jcycsICdjaSddXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBhbGxvd2VkQ29tbWl0VHlwZXM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogVXNlIHRoaXMgYXBwIGZvciB3b3JrZmxvdyBhdXRvbWF0aW9uLiBSZW1lbWJlciB0byBpbnN0YWxsIHRoZSBhcHAgYW5kIHRvIGNvbmZpZ3VyZSBjcmVkZW50aWFscy5cbiAgICogQGRlZmF1bHQgLSB0b2tlbnMgd2lsbCBiZSB1c2VkXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBhdXRvbWF0aW9uQXBwTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEFsbG93IHRoZSByZXBvIG93bmVyIHRvIHNlbGYgYXBwcm92ZSBQUnMgYnkgcHV0dGluZyBhIGxhYmVsIG9uIGl0LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBvd25lckNhblNlbGZBcHByb3ZlUFJzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEBkZWZhdWx0IFVwZ3JhZGVEZXBlbmRlbmNpZXNTY2hlZHVsZS5XRUVLTFlcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHVwZ3JhZGVzU2NoZWR1bGU/OiBqYXZhc2NyaXB0LlVwZ3JhZGVEZXBlbmRlbmNpZXNTY2hlZHVsZTtcbiAgLyoqXG4gICAqIEFkZCBhIGxvZ28uXG4gICAqIFVzZSBgTG9nby5wbGFjZWhvbGRlcigpYCB0byBnZXQgc3RhcnRlZC5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGxvZ28/OiBsb2dvLklMb2dvO1xuICAvKipcbiAgICogQ29uZmlndXJlIGhvdyB0aGUgd29yZG1hcmsgaXMgY3JlYXRlZCBmcm9tIGEgbG9nby5cbiAgICogV29yZG1hcmtzIGFyZSBvbmx5IGNyZWF0ZWQgd2hlbiBhIGxvZ28gaXMgYXZhaWxhYmxlLlxuICAgKiBAZGVmYXVsdCAtIGRlcml2ZWQgZnJvbSBsb2dvIGFuZCBwcm9qZWN0XG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSB3b3JkbWFya09wdGlvbnM/OiBsb2dvLldvcmRtYXJrT3B0aW9ucztcbiAgLyoqXG4gICAqIFRoZSBwcm9qZW4gdmVyc2lvbiBjb25zdHJhaW50IHRoYXQgaXMgc3VwcG9ydGVkIGJ5IHRoaXMgcHJvamVjdFxuICAgKiBAZGVmYXVsdCBcIjAueCA+PTAuNzUuMFwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5WZXJzaW9uPzogc3RyaW5nO1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVuLXByb2plY3Qtb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9wcm9qZW4tcHJvamVjdC1vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB+fiBHZW5lcmF0ZWQgYnkgcHJvamVuLiBUbyBtb2RpZnksIGVkaXQgLnByb2plbnJjLnRzIGFuZCBydW4gXCJucHggcHJvamVuXCIuXG5pbXBvcnQgdHlwZSB7IGNkaywgZ2l0aHViLCBHaXRPcHRpb25zLCBHcm91cFJ1bm5lck9wdGlvbnMsIElnbm9yZUZpbGVPcHRpb25zLCBqYXZhc2NyaXB0LCBMb2dnZXJPcHRpb25zLCBQcm9qZWN0LCBQcm9qZW5yY0pzb25PcHRpb25zLCByZWxlYXNlLCBSZW5vdmF0ZWJvdE9wdGlvbnMsIFNhbXBsZVJlYWRtZVByb3BzLCB0eXBlc2NyaXB0IH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB0eXBlIHsgbG9nbyB9IGZyb20gJy4vJztcblxuLyoqXG4gKiBQcm9qZW5Qcm9qZWN0T3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFByb2plblByb2plY3RPcHRpb25zIHtcbiAgLyoqXG4gICAqIEBkZWZhdWx0IFwiLlwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByb290ZGlyPzogc3RyaW5nO1xuICAvKipcbiAgICogUHVibGlzaCB0byBweXBpLlxuICAgKiBAZGVmYXVsdCAtIG5vIHB1Ymxpc2hpbmdcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHB1Ymxpc2hUb1B5cGk/OiBjZGsuSnNpaVB5dGhvblRhcmdldDtcbiAgLyoqXG4gICAqIFB1Ymxpc2ggdG8gTnVHZXQuXG4gICAqIEBkZWZhdWx0IC0gbm8gcHVibGlzaGluZ1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGlzaFRvTnVnZXQ/OiBjZGsuSnNpaURvdE5ldFRhcmdldDtcbiAgLyoqXG4gICAqIFB1Ymxpc2ggdG8gbWF2ZW4uXG4gICAqIEBkZWZhdWx0IC0gbm8gcHVibGlzaGluZ1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGlzaFRvTWF2ZW4/OiBjZGsuSnNpaUphdmFUYXJnZXQ7XG4gIC8qKlxuICAgKiBQdWJsaXNoIEdvIGJpbmRpbmdzIHRvIGEgZ2l0IHJlcG9zaXRvcnkuXG4gICAqIEBkZWZhdWx0IC0gbm8gcHVibGlzaGluZ1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGlzaFRvR28/OiBjZGsuSnNpaUdvVGFyZ2V0O1xuICAvKipcbiAgICogQWNjZXB0cyBhIGxpc3Qgb2YgZ2xvYiBwYXR0ZXJucy5cbiAgICogRmlsZXMgbWF0Y2hpbmcgYW55IG9mIHRob3NlIHBhdHRlcm5zIHdpbGwgYmUgZXhjbHVkZWQgZnJvbSB0aGUgVHlwZVNjcmlwdCBjb21waWxlciBpbnB1dC5cbiAgICpcbiAgICogQnkgZGVmYXVsdCwganNpaSB3aWxsIGluY2x1ZGUgYWxsICoudHMgZmlsZXMgKGV4Y2VwdCAuZC50cyBmaWxlcykgaW4gdGhlIFR5cGVTY3JpcHQgY29tcGlsZXIgaW5wdXQuXG4gICAqIFRoaXMgY2FuIGJlIHByb2JsZW1hdGljIGZvciBleGFtcGxlIHdoZW4gdGhlIHBhY2thZ2UncyBidWlsZCBvciB0ZXN0IHByb2NlZHVyZSBnZW5lcmF0ZXMgLnRzIGZpbGVzXG4gICAqIHRoYXQgY2Fubm90IGJlIGNvbXBpbGVkIHdpdGgganNpaSdzIGNvbXBpbGVyIHNldHRpbmdzLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZXhjbHVkZVR5cGVzY3JpcHQ/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogRmlsZSBwYXRoIGZvciBnZW5lcmF0ZWQgZG9jcy5cbiAgICogQGRlZmF1bHQgXCJBUEkubWRcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZG9jZ2VuRmlsZVBhdGg/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFbWl0IGEgY29tcHJlc3NlZCB2ZXJzaW9uIG9mIHRoZSBhc3NlbWJseS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGNvbXByZXNzQXNzZW1ibHk/OiBib29sZWFuO1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgaWdub3JlIGZpbGUgZm9yIEFQSSBjb21wYXRpYmlsaXR5IHRlc3RzLlxuICAgKiBAZGVmYXVsdCBcIi5jb21wYXRpZ25vcmVcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY29tcGF0SWdub3JlPzogc3RyaW5nO1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBydW4gQVBJIGNvbXBhdGliaWxpdHkgdGVzdCBhZ2FpbnN0IHRoZSBsYXRlc3QgdmVyc2lvbiBwdWJsaXNoZWQgdG8gbnBtIGFmdGVyIGNvbXBpbGF0aW9uLlxuICAgKiAtIFlvdSBjYW4gbWFudWFsbHkgcnVuIGNvbXBhdGliaWxpdHkgdGVzdHMgdXNpbmcgYHlhcm4gY29tcGF0YCBpZiB0aGlzIGZlYXR1cmUgaXMgZGlzYWJsZWQuXG4gICAqIC0gWW91IGNhbiBpZ25vcmUgY29tcGF0aWJpbGl0eSBmYWlsdXJlcyBieSBhZGRpbmcgbGluZXMgdG8gYSBcIi5jb21wYXRpZ25vcmVcIiBmaWxlLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY29tcGF0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVtYWlsIG9yIFVSTCBvZiB0aGUgbGlicmFyeSBhdXRob3IuXG4gICAqIEBkZWZhdWx0ICRHSVRfVVNFUl9FTUFJTFxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yQWRkcmVzcz86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRzLWplc3QuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSB0c0plc3RPcHRpb25zPzogdHlwZXNjcmlwdC5Uc0plc3RPcHRpb25zO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGRldmVsb3BtZW50IHRzY29uZmlnLmpzb24gZmlsZS5cbiAgICogQGRlZmF1bHQgXCJ0c2NvbmZpZy5kZXYuanNvblwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSB0c2NvbmZpZ0RldkZpbGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDdXN0b20gdHNjb25maWcgb3B0aW9ucyBmb3IgdGhlIGRldmVsb3BtZW50IHRzY29uZmlnLmpzb24gZmlsZSAodXNlZCBmb3IgdGVzdGluZykuXG4gICAqIEBkZWZhdWx0IC0gdXNlIHRoZSBwcm9kdWN0aW9uIHRzY29uZmlnIG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHRzY29uZmlnRGV2PzogamF2YXNjcmlwdC5UeXBlc2NyaXB0Q29uZmlnT3B0aW9ucztcbiAgLyoqXG4gICAqIEN1c3RvbSBUU0NvbmZpZy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHRzY29uZmlnPzogamF2YXNjcmlwdC5UeXBlc2NyaXB0Q29uZmlnT3B0aW9ucztcbiAgLyoqXG4gICAqIEplc3QgdGVzdHMgZGlyZWN0b3J5LiBUZXN0cyBmaWxlcyBzaG91bGQgYmUgbmFtZWQgYHh4eC50ZXN0LnRzYC5cbiAgICogSWYgdGhpcyBkaXJlY3RvcnkgaXMgdW5kZXIgYHNyY2RpcmAgKGUuZy4gYHNyYy90ZXN0YCwgYHNyYy9fX3Rlc3RzX19gKSxcbiAgICogdGhlbiB0ZXN0cyBhcmUgZ29pbmcgdG8gYmUgY29tcGlsZWQgaW50byBgbGliL2AgYW5kIGV4ZWN1dGVkIGFzIGphdmFzY3JpcHQuXG4gICAqIElmIHRoZSB0ZXN0IGRpcmVjdG9yeSBpcyBvdXRzaWRlIG9mIGBzcmNgLCB0aGVuIHdlIGNvbmZpZ3VyZSBqZXN0IHRvXG4gICAqIGNvbXBpbGUgdGhlIGNvZGUgaW4tbWVtb3J5LlxuICAgKiBAZGVmYXVsdCBcInRlc3RcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgdGVzdGRpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFR5cGVzY3JpcHQgc291cmNlcyBkaXJlY3RvcnkuXG4gICAqIEBkZWZhdWx0IFwic3JjXCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHNyY2Rpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIC5wcm9qZW5yYy50cy5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjVHNPcHRpb25zPzogdHlwZXNjcmlwdC5Qcm9qZW5yY09wdGlvbnM7XG4gIC8qKlxuICAgKiBUeXBlc2NyaXB0ICBhcnRpZmFjdHMgb3V0cHV0IGRpcmVjdG9yeS5cbiAgICogQGRlZmF1bHQgXCJsaWJcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbGliZGlyPzogc3RyaW5nO1xuICAvKipcbiAgICogRXNsaW50IG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IC0gb3BpbmlvbmF0ZWQgZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBlc2xpbnRPcHRpb25zPzogamF2YXNjcmlwdC5Fc2xpbnRPcHRpb25zO1xuICAvKipcbiAgICogU2V0dXAgZXNsaW50LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBlc2xpbnQ/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIC5kLnRzIGZpbGUgdGhhdCBpbmNsdWRlcyB0aGUgdHlwZSBkZWNsYXJhdGlvbnMgZm9yIHRoaXMgbW9kdWxlLlxuICAgKiBAZGVmYXVsdCAtIC5kLnRzIGZpbGUgZGVyaXZlZCBmcm9tIHRoZSBwcm9qZWN0J3MgZW50cnlwb2ludCAodXN1YWxseSBsaWIvaW5kZXguZC50cylcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGVudHJ5cG9pbnRUeXBlcz86IHN0cmluZztcbiAgLyoqXG4gICAqIERvY3MgZGlyZWN0b3J5LlxuICAgKiBAZGVmYXVsdCBcImRvY3NcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZG9jc0RpcmVjdG9yeT86IHN0cmluZztcbiAgLyoqXG4gICAqIERvY2dlbiBieSBUeXBlZG9jLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZG9jZ2VuPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERvIG5vdCBnZW5lcmF0ZSBhIGB0c2NvbmZpZy5kZXYuanNvbmAgZmlsZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVUc2NvbmZpZ0Rldj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEbyBub3QgZ2VuZXJhdGUgYSBgdHNjb25maWcuanNvbmAgZmlsZSAodXNlZCBieSBqc2lpIHByb2plY3RzIHNpbmNlIHRzY29uZmlnLmpzb24gaXMgZ2VuZXJhdGVkIGJ5IHRoZSBqc2lpIGNvbXBpbGVyKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVUc2NvbmZpZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBFbmFibGUgTm9kZS5qcyBwYWNrYWdlIGNhY2hlIGluIEdpdEh1YiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd1BhY2thZ2VDYWNoZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgbm9kZSB2ZXJzaW9uIHVzZWQgaW4gR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzLlxuICAgKiBBbHdheXMgdXNlIHRoaXMgb3B0aW9uIGlmIHlvdXIgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzIHJlcXVpcmUgYSBzcGVjaWZpYyB0byBydW4uXG4gICAqIEBkZWZhdWx0IC0gYG1pbk5vZGVWZXJzaW9uYCBpZiBzZXQsIG90aGVyd2lzZSBgbHRzLypgLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dOb2RlVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBnaXQgaWRlbnRpdHkgdG8gdXNlIGluIHdvcmtmbG93cy5cbiAgICogQGRlZmF1bHQgLSBHaXRIdWIgQWN0aW9uc1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dHaXRJZGVudGl0eT86IGdpdGh1Yi5HaXRJZGVudGl0eTtcbiAgLyoqXG4gICAqIFdvcmtmbG93IHN0ZXBzIHRvIHVzZSBpbiBvcmRlciB0byBib290c3RyYXAgdGhpcyByZXBvLlxuICAgKiBAZGVmYXVsdCBcInlhcm4gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZSAmJiB5YXJuIHByb2plblwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd0Jvb3RzdHJhcFN0ZXBzPzogQXJyYXk8Z2l0aHViLndvcmtmbG93cy5Kb2JTdGVwPjtcbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgcmVsZWFzZSB0byBucG0gd2hlbiBuZXcgdmVyc2lvbnMgYXJlIGludHJvZHVjZWQuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlVG9OcG0/OiBib29sZWFuO1xuICAvKipcbiAgICogQWRkIHJlbGVhc2UgbWFuYWdlbWVudCB0byB0aGlzIHByb2plY3QuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBjb250ZW50cyBvZiB0aGUgcHVsbCByZXF1ZXN0IHRlbXBsYXRlLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgY29udGVudFxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVsbFJlcXVlc3RUZW1wbGF0ZUNvbnRlbnRzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIEluY2x1ZGUgYSBHaXRIdWIgcHVsbCByZXF1ZXN0IHRlbXBsYXRlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFRlbXBsYXRlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIC5wcm9qZW5yYy5qcy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNPcHRpb25zPzogamF2YXNjcmlwdC5Qcm9qZW5yY09wdGlvbnM7XG4gIC8qKlxuICAgKiBHZW5lcmF0ZSAob25jZSkgLnByb2plbnJjLmpzIChpbiBKYXZhU2NyaXB0KS4gU2V0IHRvIGBmYWxzZWAgaW4gb3JkZXIgdG8gZGlzYWJsZSAucHJvamVucmMuanMgZ2VuZXJhdGlvbi5cbiAgICogQGRlZmF1bHQgLSB0cnVlIGlmIHByb2plbnJjSnNvbiBpcyBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNKcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgb2YgXCJwcm9qZW5cIiBzaG91bGQgYmUgaW5zdGFsbGVkIGFzIGEgZGV2RGVwZW5kZW5jeS5cbiAgICogQGRlZmF1bHQgLSB0cnVlIGlmIG5vdCBhIHN1YnByb2plY3RcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkRldkRlcGVuZGVuY3k/OiBib29sZWFuO1xuICAvKipcbiAgICogUHJldHRpZXIgb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByZXR0aWVyT3B0aW9ucz86IGphdmFzY3JpcHQuUHJldHRpZXJPcHRpb25zO1xuICAvKipcbiAgICogU2V0dXAgcHJldHRpZXIuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwcmV0dGllcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEZWZpbmVzIGEgYHBhY2thZ2VgIHRhc2sgdGhhdCB3aWxsIHByb2R1Y2UgYW4gbnBtIHRhcmJhbGwgdW5kZXIgdGhlIGFydGlmYWN0cyBkaXJlY3RvcnkgKGUuZy4gYGRpc3RgKS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcGFja2FnZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIC5ucG1pZ25vcmUgZmlsZS5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG5wbUlnbm9yZU9wdGlvbnM/OiBJZ25vcmVGaWxlT3B0aW9ucztcbiAgLyoqXG4gICAqIERlZmluZXMgYW4gLm5wbWlnbm9yZSBmaWxlLiBOb3JtYWxseSB0aGlzIGlzIG9ubHkgbmVlZGVkIGZvciBsaWJyYXJpZXMgdGhhdCBhcmUgcGFja2FnZWQgYXMgdGFyYmFsbHMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG5wbWlnbm9yZUVuYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogSmVzdCBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgamVzdE9wdGlvbnM/OiBqYXZhc2NyaXB0Lkplc3RPcHRpb25zO1xuICAvKipcbiAgICogU2V0dXAgamVzdCB1bml0IHRlc3RzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBqZXN0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgZW50cmllcyB0byAuZ2l0aWdub3JlLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0aWdub3JlPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIGBVcGdyYWRlRGVwZW5kZW5jaWVzYC5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGRlcHNVcGdyYWRlT3B0aW9ucz86IGphdmFzY3JpcHQuVXBncmFkZURlcGVuZGVuY2llc09wdGlvbnM7XG4gIC8qKlxuICAgKiBVc2UgdGFza3MgYW5kIGdpdGh1YiB3b3JrZmxvd3MgdG8gaGFuZGxlIGRlcGVuZGVuY3kgdXBncmFkZXMuXG4gICAqIENhbm5vdCBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggYGRlcGVuZGFib3RgLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBkZXBzVXBncmFkZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBkZXBlbmRhYm90LlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwZW5kYWJvdE9wdGlvbnM/OiBnaXRodWIuRGVwZW5kYWJvdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBVc2UgZGVwZW5kYWJvdCB0byBoYW5kbGUgZGVwZW5kZW5jeSB1cGdyYWRlcy5cbiAgICogQ2Fubm90IGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBgZGVwc1VwZ3JhZGVgLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwZW5kYWJvdD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgY29weXJpZ2h0IHllYXJzIHRvIHB1dCBpbiB0aGUgTElDRU5TRSBmaWxlLlxuICAgKiBAZGVmYXVsdCAtIGN1cnJlbnQgeWVhclxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY29weXJpZ2h0UGVyaW9kPzogc3RyaW5nO1xuICAvKipcbiAgICogTGljZW5zZSBjb3B5cmlnaHQgb3duZXIuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdHMgdG8gdGhlIHZhbHVlIG9mIGF1dGhvck5hbWUgb3IgXCJcIiBpZiBgYXV0aG9yTmFtZWAgaXMgdW5kZWZpbmVkLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY29weXJpZ2h0T3duZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEZWZpbmUgdGhlIHNlY3JldCBuYW1lIGZvciBhIHNwZWNpZmllZCBodHRwczovL2NvZGVjb3YuaW8vIHRva2VuIEEgc2VjcmV0IGlzIHJlcXVpcmVkIHRvIHNlbmQgY292ZXJhZ2UgZm9yIHByaXZhdGUgcmVwb3NpdG9yaWVzLlxuICAgKiBAZGVmYXVsdCAtIGlmIHRoaXMgb3B0aW9uIGlzIG5vdCBzcGVjaWZpZWQsIG9ubHkgcHVibGljIHJlcG9zaXRvcmllcyBhcmUgc3VwcG9ydGVkXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBjb2RlQ292VG9rZW5TZWNyZXQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBEZWZpbmUgYSBHaXRIdWIgd29ya2Zsb3cgc3RlcCBmb3Igc2VuZGluZyBjb2RlIGNvdmVyYWdlIG1ldHJpY3MgdG8gaHR0cHM6Ly9jb2RlY292LmlvLyBVc2VzIGNvZGVjb3YvY29kZWNvdi1hY3Rpb25AdjQgQSBzZWNyZXQgaXMgcmVxdWlyZWQgZm9yIHByaXZhdGUgcmVwb3MuIENvbmZpZ3VyZWQgd2l0aCBgQGNvZGVDb3ZUb2tlblNlY3JldGAuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBjb2RlQ292PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbmZpZ3VyZSB3aGljaCBsaWNlbnNlcyBzaG91bGQgYmUgZGVlbWVkIGFjY2VwdGFibGUgZm9yIHVzZSBieSBkZXBlbmRlbmNpZXMuXG4gICAqIFRoaXMgc2V0dGluZyB3aWxsIGNhdXNlIHRoZSBidWlsZCB0byBmYWlsLCBpZiBhbnkgcHJvaGliaXRlZCBvciBub3QgYWxsb3dlZCBsaWNlbnNlcyBhcmVzIGVuY291bnRlcmVkLlxuICAgKiBAZGVmYXVsdCAtIG5vIGxpY2Vuc2UgY2hlY2tzIGFyZSBydW4gZHVyaW5nIHRoZSBidWlsZCBhbmQgYWxsIGxpY2Vuc2VzIHdpbGwgYmUgYWNjZXB0ZWRcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGNoZWNrTGljZW5zZXM/OiBqYXZhc2NyaXB0LkxpY2Vuc2VDaGVja2VyT3B0aW9ucztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIGBCdW5kbGVyYC5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGJ1bmRsZXJPcHRpb25zPzogamF2YXNjcmlwdC5CdW5kbGVyT3B0aW9ucztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIFBSIGJ1aWxkIHdvcmtmbG93LlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRXb3JrZmxvd09wdGlvbnM/OiBqYXZhc2NyaXB0LkJ1aWxkV29ya2Zsb3dPcHRpb25zO1xuICAvKipcbiAgICogRGVmaW5lIGEgR2l0SHViIHdvcmtmbG93IGZvciBidWlsZGluZyBQUnMuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSBpZiBub3QgYSBzdWJwcm9qZWN0XG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBidWlsZFdvcmtmbG93PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEJpb21lIG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBiaW9tZU9wdGlvbnM/OiBqYXZhc2NyaXB0LkJpb21lT3B0aW9ucztcbiAgLyoqXG4gICAqIFNldHVwIEJpb21lLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYmlvbWU/OiBib29sZWFuO1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBhcHByb3ZlIGRlcHMgdXBncmFkZSBQUnMsIGFsbG93aW5nIHRoZW0gdG8gYmUgbWVyZ2VkIGJ5IG1lcmdpZnkgKGlmIGNvbmZpZ3VlZCkuXG4gICAqIFRocm93IGlmIHNldCB0byB0cnVlIGJ1dCBgYXV0b0FwcHJvdmVPcHRpb25zYCBhcmUgbm90IGRlZmluZWQuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0FwcHJvdmVVcGdyYWRlcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBIGRpcmVjdG9yeSB3aGljaCB3aWxsIGNvbnRhaW4gYnVpbGQgYXJ0aWZhY3RzLlxuICAgKiBAZGVmYXVsdCBcImRpc3RcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXJ0aWZhY3RzRGlyZWN0b3J5Pzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIG1haW4gcmVsZWFzZSBicmFuY2guXG4gICAqIEBkZWZhdWx0IFwibWFpblwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBkZWZhdWx0UmVsZWFzZUJyYW5jaD86IHN0cmluZztcbiAgLyoqXG4gICAqIEdpdGh1YiBSdW5uZXIgR3JvdXAgc2VsZWN0aW9uIG9wdGlvbnMuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqIEBkZXNjcmlwdGlvbiBEZWZpbmVzIGEgdGFyZ2V0IFJ1bm5lciBHcm91cCBieSBuYW1lIGFuZC9vciBsYWJlbHNcbiAgICogQHRocm93cyB7RXJyb3J9IGlmIGJvdGggYHJ1bnNPbmAgYW5kIGBydW5zT25Hcm91cGAgYXJlIHNwZWNpZmllZFxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dSdW5zT25Hcm91cD86IEdyb3VwUnVubmVyT3B0aW9ucztcbiAgLyoqXG4gICAqIEdpdGh1YiBSdW5uZXIgc2VsZWN0aW9uIGxhYmVscy5cbiAgICogQGRlZmF1bHQgW1widWJ1bnR1LWxhdGVzdFwiXVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKiBAZGVzY3JpcHRpb24gRGVmaW5lcyBhIHRhcmdldCBSdW5uZXIgYnkgbGFiZWxzXG4gICAqIEB0aHJvd3Mge0Vycm9yfSBpZiBib3RoIGBydW5zT25gIGFuZCBgcnVuc09uR3JvdXBgIGFyZSBzcGVjaWZpZWRcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93UnVuc09uPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIENvbnRhaW5lciBpbWFnZSB0byB1c2UgZm9yIEdpdEh1YiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBpbWFnZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dDb250YWluZXJJbWFnZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEN1c3RvbSBjb25maWd1cmF0aW9uIHVzZWQgd2hlbiBjcmVhdGluZyBjaGFuZ2Vsb2cgd2l0aCBjb21taXQtYW5kLXRhZy12ZXJzaW9uIHBhY2thZ2UuXG4gICAqIEdpdmVuIHZhbHVlcyBlaXRoZXIgYXBwZW5kIHRvIGRlZmF1bHQgY29uZmlndXJhdGlvbiBvciBvdmVyd3JpdGUgdmFsdWVzIGluIGl0LlxuICAgKiBAZGVmYXVsdCAtIHN0YW5kYXJkIGNvbmZpZ3VyYXRpb24gYXBwbGljYWJsZSBmb3IgR2l0SHViIHJlcG9zaXRvcmllc1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgdmVyc2lvbnJjT3B0aW9ucz86IFJlY29yZDxzdHJpbmcsIGFueT47XG4gIC8qKlxuICAgKiBBIHNldCBvZiB3b3JrZmxvdyBzdGVwcyB0byBleGVjdXRlIGluIG9yZGVyIHRvIHNldHVwIHRoZSB3b3JrZmxvdyBjb250YWluZXIuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlV29ya2Zsb3dTZXR1cFN0ZXBzPzogQXJyYXk8Z2l0aHViLndvcmtmbG93cy5Kb2JTdGVwPjtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBkZWZhdWx0IHJlbGVhc2Ugd29ya2Zsb3cuXG4gICAqIEBkZWZhdWx0IFwicmVsZWFzZVwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlV29ya2Zsb3dOYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHJlbGVhc2UgdHJpZ2dlciB0byB1c2UuXG4gICAqIEBkZWZhdWx0IC0gQ29udGludW91cyByZWxlYXNlcyAoYFJlbGVhc2VUcmlnZ2VyLmNvbnRpbnVvdXMoKWApXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlVHJpZ2dlcj86IHJlbGVhc2UuUmVsZWFzZVRyaWdnZXI7XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IGFkZCB0aGUgZ2l2ZW4gcHJlZml4IHRvIHJlbGVhc2UgdGFncy4gVXNlZnVsIGlmIHlvdSBhcmUgcmVsZWFzaW5nIG9uIG11bHRpcGxlIGJyYW5jaGVzIHdpdGggb3ZlcmxhcHBpbmcgdmVyc2lvbiBudW1iZXJzLlxuICAgKiBOb3RlOiB0aGlzIHByZWZpeCBpcyB1c2VkIHRvIGRldGVjdCB0aGUgbGF0ZXN0IHRhZ2dlZCB2ZXJzaW9uXG4gICAqIHdoZW4gYnVtcGluZywgc28gaWYgeW91IGNoYW5nZSB0aGlzIG9uIGEgcHJvamVjdCB3aXRoIGFuIGV4aXN0aW5nIHZlcnNpb25cbiAgICogaGlzdG9yeSwgeW91IG1heSBuZWVkIHRvIG1hbnVhbGx5IHRhZyB5b3VyIGxhdGVzdCByZWxlYXNlXG4gICAqIHdpdGggdGhlIG5ldyBwcmVmaXguXG4gICAqIEBkZWZhdWx0IFwidlwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlVGFnUHJlZml4Pzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGxhYmVsIHRvIGFwcGx5IHRvIGlzc3VlcyBpbmRpY2F0aW5nIHB1Ymxpc2ggZmFpbHVyZXMuXG4gICAqIE9ubHkgYXBwbGllcyBpZiBgcmVsZWFzZUZhaWx1cmVJc3N1ZWAgaXMgdHJ1ZS5cbiAgICogQGRlZmF1bHQgXCJmYWlsZWQtcmVsZWFzZVwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlRmFpbHVyZUlzc3VlTGFiZWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDcmVhdGUgYSBnaXRodWIgaXNzdWUgb24gZXZlcnkgZmFpbGVkIHB1Ymxpc2hpbmcgdGFzay5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VGYWlsdXJlSXNzdWU/OiBib29sZWFuO1xuICAvKipcbiAgICogRGVmaW5lcyBhZGRpdGlvbmFsIHJlbGVhc2UgYnJhbmNoZXMuXG4gICAqIEEgd29ya2Zsb3cgd2lsbCBiZSBjcmVhdGVkIGZvciBlYWNoXG4gICAqIHJlbGVhc2UgYnJhbmNoIHdoaWNoIHdpbGwgcHVibGlzaCByZWxlYXNlcyBmcm9tIGNvbW1pdHMgaW4gdGhpcyBicmFuY2guXG4gICAqIEVhY2ggcmVsZWFzZSBicmFuY2ggX211c3RfIGJlIGFzc2lnbmVkIGEgbWFqb3IgdmVyc2lvbiBudW1iZXIgd2hpY2ggaXMgdXNlZFxuICAgKiB0byBlbmZvcmNlIHRoYXQgdmVyc2lvbnMgcHVibGlzaGVkIGZyb20gdGhhdCBicmFuY2ggYWx3YXlzIHVzZSB0aGF0IG1ham9yXG4gICAqIHZlcnNpb24uIElmIG11bHRpcGxlIGJyYW5jaGVzIGFyZSB1c2VkLCB0aGUgYG1ham9yVmVyc2lvbmAgZmllbGQgbXVzdCBhbHNvXG4gICAqIGJlIHByb3ZpZGVkIGZvciB0aGUgZGVmYXVsdCBicmFuY2guXG4gICAqIEBkZWZhdWx0IC0gbm8gYWRkaXRpb25hbCBicmFuY2hlcyBhcmUgdXNlZCBmb3IgcmVsZWFzZS4geW91IGNhbiB1c2VcbmBhZGRCcmFuY2goKWAgdG8gYWRkIGFkZGl0aW9uYWwgYnJhbmNoZXMuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlQnJhbmNoZXM/OiBSZWNvcmQ8c3RyaW5nLCByZWxlYXNlLkJyYW5jaE9wdGlvbnM+O1xuICAvKipcbiAgICogRGVmaW5lIHB1Ymxpc2hpbmcgdGFza3MgdGhhdCBjYW4gYmUgZXhlY3V0ZWQgbWFudWFsbHkgYXMgd2VsbCBhcyB3b3JrZmxvd3MuXG4gICAqIE5vcm1hbGx5LCBwdWJsaXNoaW5nIG9ubHkgaGFwcGVucyB3aXRoaW4gYXV0b21hdGVkIHdvcmtmbG93cy4gRW5hYmxlIHRoaXNcbiAgICogaW4gb3JkZXIgdG8gY3JlYXRlIGEgcHVibGlzaGluZyB0YXNrIGZvciBlYWNoIHB1Ymxpc2hpbmcgYWN0aXZpdHkuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwdWJsaXNoVGFza3M/OiBib29sZWFuO1xuICAvKipcbiAgICogSW5zdGVhZCBvZiBhY3R1YWxseSBwdWJsaXNoaW5nIHRvIHBhY2thZ2UgbWFuYWdlcnMsIGp1c3QgcHJpbnQgdGhlIHB1Ymxpc2hpbmcgY29tbWFuZC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHB1Ymxpc2hEcnlSdW4/OiBib29sZWFuO1xuICAvKipcbiAgICogQnVtcCB2ZXJzaW9ucyBmcm9tIHRoZSBkZWZhdWx0IGJyYW5jaCBhcyBwcmUtcmVsZWFzZXMgKGUuZy4gXCJiZXRhXCIsIFwiYWxwaGFcIiwgXCJwcmVcIikuXG4gICAqIEBkZWZhdWx0IC0gbm9ybWFsIHNlbWFudGljIHZlcnNpb25zXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwcmVyZWxlYXNlPzogc3RyaW5nO1xuICAvKipcbiAgICogU3RlcHMgdG8gZXhlY3V0ZSBhZnRlciBidWlsZCBhcyBwYXJ0IG9mIHRoZSByZWxlYXNlIHdvcmtmbG93LlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcG9zdEJ1aWxkU3RlcHM/OiBBcnJheTxnaXRodWIud29ya2Zsb3dzLkpvYlN0ZXA+O1xuICAvKipcbiAgICogVGhlIG5wbURpc3RUYWcgdG8gdXNlIHdoZW4gcHVibGlzaGluZyBmcm9tIHRoZSBkZWZhdWx0IGJyYW5jaC5cbiAgICogVG8gc2V0IHRoZSBucG0gZGlzdC10YWcgZm9yIHJlbGVhc2UgYnJhbmNoZXMsIHNldCB0aGUgYG5wbURpc3RUYWdgIHByb3BlcnR5XG4gICAqIGZvciBlYWNoIGJyYW5jaC5cbiAgICogQGRlZmF1bHQgXCJsYXRlc3RcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbnBtRGlzdFRhZz86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgc2hlbGwgY29tbWFuZCB0byBjb250cm9sIHRoZSBuZXh0IHZlcnNpb24gdG8gcmVsZWFzZS5cbiAgICogSWYgcHJlc2VudCwgdGhpcyBzaGVsbCBjb21tYW5kIHdpbGwgYmUgcnVuIGJlZm9yZSB0aGUgYnVtcCBpcyBleGVjdXRlZCwgYW5kXG4gICAqIGl0IGRldGVybWluZXMgd2hhdCB2ZXJzaW9uIHRvIHJlbGVhc2UuIEl0IHdpbGwgYmUgZXhlY3V0ZWQgaW4gdGhlIGZvbGxvd2luZ1xuICAgKiBlbnZpcm9ubWVudDpcbiAgICpcbiAgICogLSBXb3JraW5nIGRpcmVjdG9yeTogdGhlIHByb2plY3QgZGlyZWN0b3J5LlxuICAgKiAtIGAkVkVSU0lPTmA6IHRoZSBjdXJyZW50IHZlcnNpb24uIExvb2tzIGxpa2UgYDEuMi4zYC5cbiAgICogLSBgJExBVEVTVF9UQUdgOiB0aGUgbW9zdCByZWNlbnQgdGFnLiBMb29rcyBsaWtlIGBwcmVmaXgtdjEuMi4zYCwgb3IgbWF5IGJlIHVuc2V0LlxuICAgKiAtIGAkU1VHR0VTVEVEX0JVTVBgOiB0aGUgc3VnZ2VzdGVkIGJ1bXAgYWN0aW9uIGJhc2VkIG9uIGNvbW1pdHMuIE9uZSBvZiBgbWFqb3J8bWlub3J8cGF0Y2h8bm9uZWAuXG4gICAqXG4gICAqIFRoZSBjb21tYW5kIHNob3VsZCBwcmludCBvbmUgb2YgdGhlIGZvbGxvd2luZyB0byBgc3Rkb3V0YDpcbiAgICpcbiAgICogLSBOb3RoaW5nOiB0aGUgbmV4dCB2ZXJzaW9uIG51bWJlciB3aWxsIGJlIGRldGVybWluZWQgYmFzZWQgb24gY29tbWl0IGhpc3RvcnkuXG4gICAqIC0gYHgueS56YDogdGhlIG5leHQgdmVyc2lvbiBudW1iZXIgd2lsbCBiZSBgeC55LnpgLlxuICAgKiAtIGBtYWpvcnxtaW5vcnxwYXRjaGA6IHRoZSBuZXh0IHZlcnNpb24gbnVtYmVyIHdpbGwgYmUgdGhlIGN1cnJlbnQgdmVyc2lvbiBudW1iZXJcbiAgICogICB3aXRoIHRoZSBpbmRpY2F0ZWQgY29tcG9uZW50IGJ1bXBlZC5cbiAgICpcbiAgICogVGhpcyBzZXR0aW5nIGNhbm5vdCBiZSBzcGVjaWZpZWQgdG9nZXRoZXIgd2l0aCBgbWluTWFqb3JWZXJzaW9uYDsgdGhlIGludm9rZWRcbiAgICogc2NyaXB0IGNhbiBiZSB1c2VkIHRvIGFjaGlldmUgdGhlIGVmZmVjdHMgb2YgYG1pbk1ham9yVmVyc2lvbmAuXG4gICAqIEBkZWZhdWx0IC0gVGhlIG5leHQgdmVyc2lvbiB3aWxsIGJlIGRldGVybWluZWQgYmFzZWQgb24gdGhlIGNvbW1pdCBoaXN0b3J5IGFuZCBwcm9qZWN0IHNldHRpbmdzLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbmV4dFZlcnNpb25Db21tYW5kPzogc3RyaW5nO1xuICAvKipcbiAgICogTWluaW1hbCBNYWpvciB2ZXJzaW9uIHRvIHJlbGVhc2UuXG4gICAqIFRoaXMgY2FuIGJlIHVzZWZ1bCB0byBzZXQgdG8gMSwgYXMgYnJlYWtpbmcgY2hhbmdlcyBiZWZvcmUgdGhlIDEueCBtYWpvclxuICAgKiByZWxlYXNlIGFyZSBub3QgaW5jcmVtZW50aW5nIHRoZSBtYWpvciB2ZXJzaW9uIG51bWJlci5cbiAgICpcbiAgICogQ2FuIG5vdCBiZSBzZXQgdG9nZXRoZXIgd2l0aCBgbWFqb3JWZXJzaW9uYC5cbiAgICogQGRlZmF1bHQgLSBObyBtaW5pbXVtIHZlcnNpb24gaXMgYmVpbmcgZW5mb3JjZWRcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG1pbk1ham9yVmVyc2lvbj86IG51bWJlcjtcbiAgLyoqXG4gICAqIE1ham9yIHZlcnNpb24gdG8gcmVsZWFzZSBmcm9tIHRoZSBkZWZhdWx0IGJyYW5jaC5cbiAgICogSWYgdGhpcyBpcyBzcGVjaWZpZWQsIHdlIGJ1bXAgdGhlIGxhdGVzdCB2ZXJzaW9uIG9mIHRoaXMgbWFqb3IgdmVyc2lvbiBsaW5lLlxuICAgKiBJZiBub3Qgc3BlY2lmaWVkLCB3ZSBidW1wIHRoZSBnbG9iYWwgbGF0ZXN0IHZlcnNpb24uXG4gICAqIEBkZWZhdWx0IC0gTWFqb3IgdmVyc2lvbiBpcyBub3QgZW5mb3JjZWQuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBtYWpvclZlcnNpb24/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBWZXJzaW9uIHJlcXVpcmVtZW50IG9mIGBwdWJsaWJgIHdoaWNoIGlzIHVzZWQgdG8gcHVibGlzaCBtb2R1bGVzIHRvIG5wbS5cbiAgICogQGRlZmF1bHQgXCJsYXRlc3RcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkganNpaVJlbGVhc2VWZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGBjb21taXQtYW5kLXRhZy12ZXJzaW9uYCBjb21wYXRpYmxlIHBhY2thZ2UgdXNlZCB0byBidW1wIHRoZSBwYWNrYWdlIHZlcnNpb24sIGFzIGEgZGVwZW5kZW5jeSBzdHJpbmcuXG4gICAqIFRoaXMgY2FuIGJlIGFueSBjb21wYXRpYmxlIHBhY2thZ2UgdmVyc2lvbiwgaW5jbHVkaW5nIHRoZSBkZXByZWNhdGVkIGBzdGFuZGFyZC12ZXJzaW9uQDlgLlxuICAgKiBAZGVmYXVsdCAtIEEgcmVjZW50IHZlcnNpb24gb2YgXCJjb21taXQtYW5kLXRhZy12ZXJzaW9uXCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGJ1bXBQYWNrYWdlPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgWWFybiBCZXJyeS5cbiAgICogQGRlZmF1bHQgLSBZYXJuIEJlcnJ5IHY0IHdpdGggYWxsIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgeWFybkJlcnJ5T3B0aW9ucz86IGphdmFzY3JpcHQuWWFybkJlcnJ5T3B0aW9ucztcbiAgLyoqXG4gICAqIFBhY2thZ2UncyBTdGFiaWxpdHkuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBzdGFiaWxpdHk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBwcml2YXRlbHkgaG9zdGVkIHNjb3BlZCBwYWNrYWdlcy5cbiAgICogQGRlZmF1bHQgLSBmZXRjaCBhbGwgc2NvcGVkIHBhY2thZ2VzIGZyb20gdGhlIHB1YmxpYyBucG0gcmVnaXN0cnlcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHNjb3BlZFBhY2thZ2VzT3B0aW9ucz86IEFycmF5PGphdmFzY3JpcHQuU2NvcGVkUGFja2FnZXNPcHRpb25zPjtcbiAgLyoqXG4gICAqIElmIHRoZSBwYWNrYWdlLmpzb24gZm9yIHlvdXIgcGFja2FnZSBpcyBub3QgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IChmb3IgZXhhbXBsZSBpZiBpdCBpcyBwYXJ0IG9mIGEgbW9ub3JlcG8pLCB5b3UgY2FuIHNwZWNpZnkgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCBpdCBsaXZlcy5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHJlcG9zaXRvcnlEaXJlY3Rvcnk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgcmVwb3NpdG9yeSBpcyB0aGUgbG9jYXRpb24gd2hlcmUgdGhlIGFjdHVhbCBjb2RlIGZvciB5b3VyIHBhY2thZ2UgbGl2ZXMuXG4gICAqIFNlZSBodHRwczovL2NsYXNzaWMueWFybnBrZy5jb20vZW4vZG9jcy9wYWNrYWdlLWpzb24vI3RvYy1yZXBvc2l0b3J5XG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZXBvc2l0b3J5Pzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHZlcnNpb24gb2YgUE5QTSB0byB1c2UgaWYgdXNpbmcgUE5QTSBhcyBhIHBhY2thZ2UgbWFuYWdlci5cbiAgICogQGRlZmF1bHQgXCI5XCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHBucG1WZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogUGVlciBkZXBlbmRlbmNpZXMgZm9yIHRoaXMgbW9kdWxlLlxuICAgKiBEZXBlbmRlbmNpZXMgbGlzdGVkIGhlcmUgYXJlIHJlcXVpcmVkIHRvXG4gICAqIGJlIGluc3RhbGxlZCAoYW5kIHNhdGlzZmllZCkgYnkgdGhlIF9jb25zdW1lcl8gb2YgdGhpcyBsaWJyYXJ5LiBVc2luZyBwZWVyXG4gICAqIGRlcGVuZGVuY2llcyBhbGxvd3MgeW91IHRvIGVuc3VyZSB0aGF0IG9ubHkgYSBzaW5nbGUgbW9kdWxlIG9mIGEgY2VydGFpblxuICAgKiBsaWJyYXJ5IGV4aXN0cyBpbiB0aGUgYG5vZGVfbW9kdWxlc2AgdHJlZSBvZiB5b3VyIGNvbnN1bWVycy5cbiAgICpcbiAgICogTm90ZSB0aGF0IHByaW9yIHRvIG5wbUA3LCBwZWVyIGRlcGVuZGVuY2llcyBhcmUgX25vdF8gYXV0b21hdGljYWxseVxuICAgKiBpbnN0YWxsZWQsIHdoaWNoIG1lYW5zIHRoYXQgYWRkaW5nIHBlZXIgZGVwZW5kZW5jaWVzIHRvIGEgbGlicmFyeSB3aWxsIGJlIGFcbiAgICogYnJlYWtpbmcgY2hhbmdlIGZvciB5b3VyIGN1c3RvbWVycy5cbiAgICpcbiAgICogVW5sZXNzIGBwZWVyRGVwZW5kZW5jeU9wdGlvbnMucGlubmVkRGV2RGVwZW5kZW5jeWAgaXMgZGlzYWJsZWQgKGl0IGlzXG4gICAqIGVuYWJsZWQgYnkgZGVmYXVsdCksIHByb2plbiB3aWxsIGF1dG9tYXRpY2FsbHkgYWRkIGEgZGV2IGRlcGVuZGVuY3kgd2l0aCBhXG4gICAqIHBpbm5lZCB2ZXJzaW9uIGZvciBlYWNoIHBlZXIgZGVwZW5kZW5jeS4gVGhpcyB3aWxsIGVuc3VyZSB0aGF0IHlvdSBidWlsZCAmXG4gICAqIHRlc3QgeW91ciBtb2R1bGUgYWdhaW5zdCB0aGUgbG93ZXN0IHBlZXIgdmVyc2lvbiByZXF1aXJlZC5cbiAgICogQGRlZmF1bHQgW11cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHBlZXJEZXBzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIGBwZWVyRGVwc2AuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwZWVyRGVwZW5kZW5jeU9wdGlvbnM/OiBqYXZhc2NyaXB0LlBlZXJEZXBlbmRlbmN5T3B0aW9ucztcbiAgLyoqXG4gICAqIFRoZSBcIm5hbWVcIiBpbiBwYWNrYWdlLmpzb24uXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdHMgdG8gcHJvamVjdCBuYW1lXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBwYWNrYWdlTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBOb2RlIFBhY2thZ2UgTWFuYWdlciB1c2VkIHRvIGV4ZWN1dGUgc2NyaXB0cy5cbiAgICogQGRlZmF1bHQgTm9kZVBhY2thZ2VNYW5hZ2VyLllBUk5fQ0xBU1NJQ1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcGFja2FnZU1hbmFnZXI/OiBqYXZhc2NyaXB0Lk5vZGVQYWNrYWdlTWFuYWdlcjtcbiAgLyoqXG4gICAqIEdpdEh1YiBzZWNyZXQgd2hpY2ggY29udGFpbnMgdGhlIE5QTSB0b2tlbiB0byB1c2Ugd2hlbiBwdWJsaXNoaW5nIHBhY2thZ2VzLlxuICAgKiBAZGVmYXVsdCBcIk5QTV9UT0tFTlwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBucG1Ub2tlblNlY3JldD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBiYXNlIFVSTCBvZiB0aGUgbnBtIHBhY2thZ2UgcmVnaXN0cnkuXG4gICAqIE11c3QgYmUgYSBVUkwgKGUuZy4gc3RhcnQgd2l0aCBcImh0dHBzOi8vXCIgb3IgXCJodHRwOi8vXCIpXG4gICAqIEBkZWZhdWx0IFwiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmdcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbnBtUmVnaXN0cnlVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTaG91bGQgcHJvdmVuYW5jZSBzdGF0ZW1lbnRzIGJlIGdlbmVyYXRlZCB3aGVuIHRoZSBwYWNrYWdlIGlzIHB1Ymxpc2hlZC5cbiAgICogQSBzdXBwb3J0ZWQgcGFja2FnZSBtYW5hZ2VyIGlzIHJlcXVpcmVkIHRvIHB1Ymxpc2ggYSBwYWNrYWdlIHdpdGggbnBtIHByb3ZlbmFuY2Ugc3RhdGVtZW50cyBhbmRcbiAgICogeW91IHdpbGwgbmVlZCB0byB1c2UgYSBzdXBwb3J0ZWQgQ0kvQ0QgcHJvdmlkZXIuXG4gICAqXG4gICAqIE5vdGUgdGhhdCB0aGUgcHJvamVuIGBSZWxlYXNlYCBhbmQgYFB1Ymxpc2hlcmAgY29tcG9uZW50cyBhcmUgdXNpbmcgYHB1YmxpYmAgdG8gcHVibGlzaCBwYWNrYWdlcyxcbiAgICogd2hpY2ggaXMgdXNpbmcgbnBtIGludGVybmFsbHkgYW5kIHN1cHBvcnRzIHByb3ZlbmFuY2Ugc3RhdGVtZW50cyBpbmRlcGVuZGVudGx5IG9mIHRoZSBwYWNrYWdlIG1hbmFnZXIgdXNlZC5cbiAgICogQGRlZmF1bHQgLSB0cnVlIGZvciBwdWJsaWMgcGFja2FnZXMsIGZhbHNlIG90aGVyd2lzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbnBtUHJvdmVuYW5jZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBY2Nlc3MgbGV2ZWwgb2YgdGhlIG5wbSBwYWNrYWdlLlxuICAgKiBAZGVmYXVsdCAtIGZvciBzY29wZWQgcGFja2FnZXMgKGUuZy4gYGZvb0BiYXJgKSwgdGhlIGRlZmF1bHQgaXNcbmBOcG1BY2Nlc3MuUkVTVFJJQ1RFRGAsIGZvciBub24tc2NvcGVkIHBhY2thZ2VzLCB0aGUgZGVmYXVsdCBpc1xuYE5wbUFjY2Vzcy5QVUJMSUNgLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbnBtQWNjZXNzPzogamF2YXNjcmlwdC5OcG1BY2Nlc3M7XG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBub2RlIHZlcnNpb24gcmVxdWlyZWQgYnkgdGhpcyBwYWNrYWdlIHRvIGZ1bmN0aW9uLiBNb3N0IHByb2plY3RzIHNob3VsZCBub3QgdXNlIHRoaXMgb3B0aW9uLlxuICAgKiBUaGUgdmFsdWUgaW5kaWNhdGVzIHRoYXQgdGhlIHBhY2thZ2UgaXMgaW5jb21wYXRpYmxlIHdpdGggYW55IG9sZGVyIHZlcnNpb25zIG9mIG5vZGUuXG4gICAqIFRoaXMgcmVxdWlyZW1lbnQgaXMgZW5mb3JjZWQgdmlhIHRoZSBlbmdpbmVzIGZpZWxkLlxuICAgKlxuICAgKiBZb3Ugd2lsbCBub3JtYWxseSBub3QgbmVlZCB0byBzZXQgdGhpcyBvcHRpb24sIGV2ZW4gaWYgeW91ciBwYWNrYWdlIGlzIGluY29tcGF0aWJsZSB3aXRoIEVPTCB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBDb25zaWRlciB0aGlzIG9wdGlvbiBvbmx5IGlmIHlvdXIgcGFja2FnZSBkZXBlbmRzIG9uIGEgc3BlY2lmaWMgZmVhdHVyZSwgdGhhdCBpcyBub3QgYXZhaWxhYmxlIGluIG90aGVyIExUUyB2ZXJzaW9ucy5cbiAgICogU2V0dGluZyB0aGlzIG9wdGlvbiBoYXMgdmVyeSBoaWdoIGltcGFjdCBvbiB0aGUgY29uc3VtZXJzIG9mIHlvdXIgcGFja2FnZSxcbiAgICogYXMgcGFja2FnZSBtYW5hZ2VycyB3aWxsIGFjdGl2ZWx5IHByZXZlbnQgdXNhZ2Ugd2l0aCBub2RlIHZlcnNpb25zIHlvdSBoYXZlIG1hcmtlZCBhcyBpbmNvbXBhdGlibGUuXG4gICAqXG4gICAqIFRvIGNoYW5nZSB0aGUgbm9kZSB2ZXJzaW9uIG9mIHlvdXIgQ0kvQ0Qgd29ya2Zsb3dzLCB1c2UgYHdvcmtmbG93Tm9kZVZlcnNpb25gLlxuICAgKiBAZGVmYXVsdCAtIG5vIG1pbmltdW0gdmVyc2lvbiBpcyBlbmZvcmNlZFxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbWluTm9kZVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBub2RlIHZlcnNpb24gc3VwcG9ydGVkIGJ5IHRoaXMgcGFja2FnZS4gTW9zdCBwcm9qZWN0cyBzaG91bGQgbm90IHVzZSB0aGlzIG9wdGlvbi5cbiAgICogVGhlIHZhbHVlIGluZGljYXRlcyB0aGF0IHRoZSBwYWNrYWdlIGlzIGluY29tcGF0aWJsZSB3aXRoIGFueSBuZXdlciB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBUaGlzIHJlcXVpcmVtZW50IGlzIGVuZm9yY2VkIHZpYSB0aGUgZW5naW5lcyBmaWVsZC5cbiAgICpcbiAgICogWW91IHdpbGwgbm9ybWFsbHkgbm90IG5lZWQgdG8gc2V0IHRoaXMgb3B0aW9uLlxuICAgKiBDb25zaWRlciB0aGlzIG9wdGlvbiBvbmx5IGlmIHlvdXIgcGFja2FnZSBpcyBrbm93biB0byBub3QgZnVuY3Rpb24gd2l0aCBuZXdlciB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBAZGVmYXVsdCAtIG5vIG1heGltdW0gdmVyc2lvbiBpcyBlbmZvcmNlZFxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4Tm9kZVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgYSBsaWNlbnNlIHNob3VsZCBiZSBhZGRlZC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbGljZW5zZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogTGljZW5zZSdzIFNQRFggaWRlbnRpZmllci5cbiAgICogU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9wcm9qZW4vcHJvamVuL3RyZWUvbWFpbi9saWNlbnNlLXRleHQgZm9yIGEgbGlzdCBvZiBzdXBwb3J0ZWQgbGljZW5zZXMuXG4gICAqIFVzZSB0aGUgYGxpY2Vuc2VkYCBvcHRpb24gaWYgeW91IHdhbnQgdG8gbm8gbGljZW5zZSB0byBiZSBzcGVjaWZpZWQuXG4gICAqIEBkZWZhdWx0IFwiTUlUXCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGxpY2Vuc2U/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBLZXl3b3JkcyB0byBpbmNsdWRlIGluIGBwYWNrYWdlLmpzb25gLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkga2V5d29yZHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogUGFja2FnZSdzIEhvbWVwYWdlIC8gV2Vic2l0ZS5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGhvbWVwYWdlPzogc3RyaW5nO1xuICAvKipcbiAgICogTW9kdWxlIGVudHJ5cG9pbnQgKGBtYWluYCBpbiBgcGFja2FnZS5qc29uYCkuXG4gICAqIFNldCB0byBhbiBlbXB0eSBzdHJpbmcgdG8gbm90IGluY2x1ZGUgYG1haW5gIGluIHlvdXIgcGFja2FnZS5qc29uXG4gICAqIEBkZWZhdWx0IFwibGliL2luZGV4LmpzXCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGVudHJ5cG9pbnQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBCdWlsZCBkZXBlbmRlbmNpZXMgZm9yIHRoaXMgbW9kdWxlLlxuICAgKiBUaGVzZSBkZXBlbmRlbmNpZXMgd2lsbCBvbmx5IGJlXG4gICAqIGF2YWlsYWJsZSBpbiB5b3VyIGJ1aWxkIGVudmlyb25tZW50IGJ1dCB3aWxsIG5vdCBiZSBmZXRjaGVkIHdoZW4gdGhpc1xuICAgKiBtb2R1bGUgaXMgY29uc3VtZWQuXG4gICAqXG4gICAqIFRoZSByZWNvbW1lbmRhdGlvbiBpcyB0byBvbmx5IHNwZWNpZnkgdGhlIG1vZHVsZSBuYW1lIGhlcmUgKGUuZy5cbiAgICogYGV4cHJlc3NgKS4gVGhpcyB3aWxsIGJlaGF2ZSBzaW1pbGFyIHRvIGB5YXJuIGFkZGAgb3IgYG5wbSBpbnN0YWxsYCBpbiB0aGVcbiAgICogc2Vuc2UgdGhhdCBpdCB3aWxsIGFkZCB0aGUgbW9kdWxlIGFzIGEgZGVwZW5kZW5jeSB0byB5b3VyIGBwYWNrYWdlLmpzb25gXG4gICAqIGZpbGUgd2l0aCB0aGUgbGF0ZXN0IHZlcnNpb24gKGBeYCkuIFlvdSBjYW4gc3BlY2lmeSBzZW12ZXIgcmVxdWlyZW1lbnRzIGluXG4gICAqIHRoZSBzYW1lIHN5bnRheCBwYXNzZWQgdG8gYG5wbSBpYCBvciBgeWFybiBhZGRgIChlLmcuIGBleHByZXNzQF4yYCkgYW5kXG4gICAqIHRoaXMgd2lsbCBiZSB3aGF0IHlvdSBgcGFja2FnZS5qc29uYCB3aWxsIGV2ZW50dWFsbHkgaW5jbHVkZS5cbiAgICogQGRlZmF1bHQgW11cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGRldkRlcHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogVGhlIGRlc2NyaXB0aW9uIGlzIGp1c3QgYSBzdHJpbmcgdGhhdCBoZWxwcyBwZW9wbGUgdW5kZXJzdGFuZCB0aGUgcHVycG9zZSBvZiB0aGUgcGFja2FnZS5cbiAgICogSXQgY2FuIGJlIHVzZWQgd2hlbiBzZWFyY2hpbmcgZm9yIHBhY2thZ2VzIGluIGEgcGFja2FnZSBtYW5hZ2VyIGFzIHdlbGwuXG4gICAqIFNlZSBodHRwczovL2NsYXNzaWMueWFybnBrZy5jb20vZW4vZG9jcy9wYWNrYWdlLWpzb24vI3RvYy1kZXNjcmlwdGlvblxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKiBAZmVhdHVyZWQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBSdW50aW1lIGRlcGVuZGVuY2llcyBvZiB0aGlzIG1vZHVsZS5cbiAgICogVGhlIHJlY29tbWVuZGF0aW9uIGlzIHRvIG9ubHkgc3BlY2lmeSB0aGUgbW9kdWxlIG5hbWUgaGVyZSAoZS5nLlxuICAgKiBgZXhwcmVzc2ApLiBUaGlzIHdpbGwgYmVoYXZlIHNpbWlsYXIgdG8gYHlhcm4gYWRkYCBvciBgbnBtIGluc3RhbGxgIGluIHRoZVxuICAgKiBzZW5zZSB0aGF0IGl0IHdpbGwgYWRkIHRoZSBtb2R1bGUgYXMgYSBkZXBlbmRlbmN5IHRvIHlvdXIgYHBhY2thZ2UuanNvbmBcbiAgICogZmlsZSB3aXRoIHRoZSBsYXRlc3QgdmVyc2lvbiAoYF5gKS4gWW91IGNhbiBzcGVjaWZ5IHNlbXZlciByZXF1aXJlbWVudHMgaW5cbiAgICogdGhlIHNhbWUgc3ludGF4IHBhc3NlZCB0byBgbnBtIGlgIG9yIGB5YXJuIGFkZGAgKGUuZy4gYGV4cHJlc3NAXjJgKSBhbmRcbiAgICogdGhpcyB3aWxsIGJlIHdoYXQgeW91IGBwYWNrYWdlLmpzb25gIHdpbGwgZXZlbnR1YWxseSBpbmNsdWRlLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKiBAZmVhdHVyZWQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBucG0gcGFja2FnZXMgdXNpbmcgQVdTIENvZGVBcnRpZmFjdC5cbiAgICogVGhpcyBpcyByZXF1aXJlZCBpZiBwdWJsaXNoaW5nIHBhY2thZ2VzIHRvLCBvciBpbnN0YWxsaW5nIHNjb3BlZCBwYWNrYWdlcyBmcm9tIEFXUyBDb2RlQXJ0aWZhY3RcbiAgICogQGRlZmF1bHQgLSB1bmRlZmluZWRcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVBcnRpZmFjdE9wdGlvbnM/OiBqYXZhc2NyaXB0LkNvZGVBcnRpZmFjdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBUaGUgdmVyc2lvbiBvZiBCdW4gdG8gdXNlIGlmIHVzaW5nIEJ1biBhcyBhIHBhY2thZ2UgbWFuYWdlci5cbiAgICogQGRlZmF1bHQgXCJsYXRlc3RcIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYnVuVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIExpc3Qgb2YgZGVwZW5kZW5jaWVzIHRvIGJ1bmRsZSBpbnRvIHRoaXMgbW9kdWxlLlxuICAgKiBUaGVzZSBtb2R1bGVzIHdpbGwgYmVcbiAgICogYWRkZWQgYm90aCB0byB0aGUgYGRlcGVuZGVuY2llc2Agc2VjdGlvbiBhbmQgYGJ1bmRsZWREZXBlbmRlbmNpZXNgIHNlY3Rpb24gb2ZcbiAgICogeW91ciBgcGFja2FnZS5qc29uYC5cbiAgICpcbiAgICogVGhlIHJlY29tbWVuZGF0aW9uIGlzIHRvIG9ubHkgc3BlY2lmeSB0aGUgbW9kdWxlIG5hbWUgaGVyZSAoZS5nLlxuICAgKiBgZXhwcmVzc2ApLiBUaGlzIHdpbGwgYmVoYXZlIHNpbWlsYXIgdG8gYHlhcm4gYWRkYCBvciBgbnBtIGluc3RhbGxgIGluIHRoZVxuICAgKiBzZW5zZSB0aGF0IGl0IHdpbGwgYWRkIHRoZSBtb2R1bGUgYXMgYSBkZXBlbmRlbmN5IHRvIHlvdXIgYHBhY2thZ2UuanNvbmBcbiAgICogZmlsZSB3aXRoIHRoZSBsYXRlc3QgdmVyc2lvbiAoYF5gKS4gWW91IGNhbiBzcGVjaWZ5IHNlbXZlciByZXF1aXJlbWVudHMgaW5cbiAgICogdGhlIHNhbWUgc3ludGF4IHBhc3NlZCB0byBgbnBtIGlgIG9yIGB5YXJuIGFkZGAgKGUuZy4gYGV4cHJlc3NAXjJgKSBhbmRcbiAgICogdGhpcyB3aWxsIGJlIHdoYXQgeW91IGBwYWNrYWdlLmpzb25gIHdpbGwgZXZlbnR1YWxseSBpbmNsdWRlLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYnVuZGxlZERlcHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogVGhlIHVybCB0byB5b3VyIHByb2plY3QncyBpc3N1ZSB0cmFja2VyLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYnVnc1VybD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBlbWFpbCBhZGRyZXNzIHRvIHdoaWNoIGlzc3VlcyBzaG91bGQgYmUgcmVwb3J0ZWQuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBidWdzRW1haWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBCaW5hcnkgcHJvZ3JhbXMgdmVuZGVkIHdpdGggeW91ciBtb2R1bGUuXG4gICAqIFlvdSBjYW4gdXNlIHRoaXMgb3B0aW9uIHRvIGFkZC9jdXN0b21pemUgaG93IGJpbmFyaWVzIGFyZSByZXByZXNlbnRlZCBpblxuICAgKiB5b3VyIGBwYWNrYWdlLmpzb25gLCBidXQgdW5sZXNzIGBhdXRvRGV0ZWN0QmluYCBpcyBgZmFsc2VgLCBldmVyeVxuICAgKiBleGVjdXRhYmxlIGZpbGUgdW5kZXIgYGJpbmAgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIGFkZGVkIHRvIHRoaXMgc2VjdGlvbi5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGJpbj86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IGFkZCBhbGwgZXhlY3V0YWJsZXMgdW5kZXIgdGhlIGBiaW5gIGRpcmVjdG9yeSB0byB5b3VyIGBwYWNrYWdlLmpzb25gIGZpbGUgdW5kZXIgdGhlIGBiaW5gIHNlY3Rpb24uXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9EZXRlY3RCaW4/OiBib29sZWFuO1xuICAvKipcbiAgICogQXV0aG9yJ3MgVVJMIC8gV2Vic2l0ZS5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvclVybD86IHN0cmluZztcbiAgLyoqXG4gICAqIElzIHRoZSBhdXRob3IgYW4gb3JnYW5pemF0aW9uLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yT3JnYW5pemF0aW9uPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEF1dGhvcidzIG5hbWUuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBhdXRob3JOYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdXRob3IncyBlLW1haWwuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBhdXRob3JFbWFpbD86IHN0cmluZztcbiAgLyoqXG4gICAqIEFsbG93IHRoZSBwcm9qZWN0IHRvIGluY2x1ZGUgYHBlZXJEZXBlbmRlbmNpZXNgIGFuZCBgYnVuZGxlZERlcGVuZGVuY2llc2AuXG4gICAqIFRoaXMgaXMgbm9ybWFsbHkgb25seSBhbGxvd2VkIGZvciBsaWJyYXJpZXMuIEZvciBhcHBzLCB0aGVyZSdzIG5vIG1lYW5pbmdcbiAgICogZm9yIHNwZWNpZnlpbmcgdGhlc2UuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGFsbG93TGlicmFyeURlcGVuZGVuY2llcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBFbmFibGUgVlNDb2RlIGludGVncmF0aW9uLlxuICAgKiBFbmFibGVkIGJ5IGRlZmF1bHQgZm9yIHJvb3QgcHJvamVjdHMuIERpc2FibGVkIGZvciBub24tcm9vdCBwcm9qZWN0cy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgdnNjb2RlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEF1dG8tY2xvc2Ugc3RhbGUgaXNzdWVzIGFuZCBwdWxsIHJlcXVlc3RzLlxuICAgKiBUbyBkaXNhYmxlIHNldCBgc3RhbGVgIHRvIGBmYWxzZWAuXG4gICAqIEBkZWZhdWx0IC0gc2VlIGRlZmF1bHRzIGluIGBTdGFsZU9wdGlvbnNgXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBzdGFsZU9wdGlvbnM/OiBnaXRodWIuU3RhbGVPcHRpb25zO1xuICAvKipcbiAgICogQXV0by1jbG9zZSBvZiBzdGFsZSBpc3N1ZXMgYW5kIHB1bGwgcmVxdWVzdC5cbiAgICogU2VlIGBzdGFsZU9wdGlvbnNgIGZvciBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgc3RhbGU/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIFJFQURNRSBzZXR1cC5cbiAgICogQGRlZmF1bHQgLSB7IGZpbGVuYW1lOiAnUkVBRE1FLm1kJywgY29udGVudHM6ICcjIHJlcGxhY2UgdGhpcycgfVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZG1lPzogU2FtcGxlUmVhZG1lUHJvcHM7XG4gIC8qKlxuICAgKiBDaG9vc2UgYSBtZXRob2Qgb2YgcHJvdmlkaW5nIEdpdEh1YiBBUEkgYWNjZXNzIGZvciBwcm9qZW4gd29ya2Zsb3dzLlxuICAgKiBAZGVmYXVsdCAtIHVzZSBhIHBlcnNvbmFsIGFjY2VzcyB0b2tlbiBuYW1lZCBQUk9KRU5fR0lUSFVCX1RPS0VOXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5DcmVkZW50aWFscz86IGdpdGh1Yi5HaXRodWJDcmVkZW50aWFscztcbiAgLyoqXG4gICAqIEFkZCBhIEdpdHBvZCBkZXZlbG9wbWVudCBlbnZpcm9ubWVudC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGdpdHBvZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBHaXRIdWIgaW50ZWdyYXRpb24uXG4gICAqIEBkZWZhdWx0IC0gc2VlIEdpdEh1Yk9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGdpdGh1Yk9wdGlvbnM/OiBnaXRodWIuR2l0SHViT3B0aW9ucztcbiAgLyoqXG4gICAqIEVuYWJsZSBHaXRIdWIgaW50ZWdyYXRpb24uXG4gICAqIEVuYWJsZWQgYnkgZGVmYXVsdCBmb3Igcm9vdCBwcm9qZWN0cy4gRGlzYWJsZWQgZm9yIG5vbi1yb290IHByb2plY3RzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBnaXRodWI/OiBib29sZWFuO1xuICAvKipcbiAgICogQWRkIGEgVlNDb2RlIGRldmVsb3BtZW50IGVudmlyb25tZW50ICh1c2VkIGZvciBHaXRIdWIgQ29kZXNwYWNlcykuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBkZXZDb250YWluZXI/OiBib29sZWFuO1xuICAvKipcbiAgICogQWRkIGEgYGNsb2JiZXJgIHRhc2sgd2hpY2ggcmVzZXRzIHRoZSByZXBvIHRvIG9yaWdpbi5cbiAgICogQGRlZmF1bHQgLSB0cnVlLCBidXQgZmFsc2UgZm9yIHN1YnByb2plY3RzXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBjbG9iYmVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbmZpZ3VyZSBvcHRpb25zIGZvciBhdXRvbWF0aWMgbWVyZ2luZyBvbiBHaXRIdWIuXG4gICAqIEhhcyBubyBlZmZlY3QgaWZcbiAgICogYGdpdGh1Yi5tZXJnaWZ5YCBvciBgYXV0b01lcmdlYCBpcyBzZXQgdG8gZmFsc2UuXG4gICAqIEBkZWZhdWx0IC0gc2VlIGRlZmF1bHRzIGluIGBBdXRvTWVyZ2VPcHRpb25zYFxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b01lcmdlT3B0aW9ucz86IGdpdGh1Yi5BdXRvTWVyZ2VPcHRpb25zO1xuICAvKipcbiAgICogRW5hYmxlIGF1dG9tYXRpYyBtZXJnaW5nIG9uIEdpdEh1Yi5cbiAgICogSGFzIG5vIGVmZmVjdCBpZiBgZ2l0aHViLm1lcmdpZnlgXG4gICAqIGlzIHNldCB0byBmYWxzZS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b01lcmdlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZSBhbmQgY29uZmlndXJlIHRoZSAnYXV0byBhcHByb3ZlJyB3b3JrZmxvdy5cbiAgICogQGRlZmF1bHQgLSBhdXRvIGFwcHJvdmUgaXMgZGlzYWJsZWRcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9BcHByb3ZlT3B0aW9ucz86IGdpdGh1Yi5BdXRvQXBwcm92ZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciByZW5vdmF0ZWJvdC5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHJlbm92YXRlYm90T3B0aW9ucz86IFJlbm92YXRlYm90T3B0aW9ucztcbiAgLyoqXG4gICAqIFVzZSByZW5vdmF0ZWJvdCB0byBoYW5kbGUgZGVwZW5kZW5jeSB1cGdyYWRlcy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHJlbm92YXRlYm90PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIC5wcm9qZW5yYy5qc29uLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNKc29uT3B0aW9ucz86IFByb2plbnJjSnNvbk9wdGlvbnM7XG4gIC8qKlxuICAgKiBHZW5lcmF0ZSAob25jZSkgLnByb2plbnJjLmpzb24gKGluIEpTT04pLiBTZXQgdG8gYGZhbHNlYCBpbiBvcmRlciB0byBkaXNhYmxlIC5wcm9qZW5yYy5qc29uIGdlbmVyYXRpb24uXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY0pzb24/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIHNoZWxsIGNvbW1hbmQgdG8gdXNlIGluIG9yZGVyIHRvIHJ1biB0aGUgcHJvamVuIENMSS5cbiAgICogQ2FuIGJlIHVzZWQgdG8gY3VzdG9taXplIGluIHNwZWNpYWwgZW52aXJvbm1lbnRzLlxuICAgKiBAZGVmYXVsdCBcIm5weCBwcm9qZW5cIlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVuQ29tbWFuZD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBwYXJlbnQgcHJvamVjdCwgaWYgdGhpcyBwcm9qZWN0IGlzIHBhcnQgb2YgYSBiaWdnZXIgcHJvamVjdC5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHBhcmVudD86IFByb2plY3Q7XG4gIC8qKlxuICAgKiBUaGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhlIHByb2plY3QuXG4gICAqIFJlbGF0aXZlIHRvIHRoaXMgZGlyZWN0b3J5LCBhbGwgZmlsZXMgYXJlIHN5bnRoZXNpemVkLlxuICAgKlxuICAgKiBJZiB0aGlzIHByb2plY3QgaGFzIGEgcGFyZW50LCB0aGlzIGRpcmVjdG9yeSBpcyByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gICAqIGRpcmVjdG9yeSBhbmQgaXQgY2Fubm90IGJlIHRoZSBzYW1lIGFzIHRoZSBwYXJlbnQgb3IgYW55IG9mIGl0J3Mgb3RoZXJcbiAgICogc3VicHJvamVjdHMuXG4gICAqIEBkZWZhdWx0IFwiLlwiXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBvdXRkaXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDb25maWd1cmUgbG9nZ2luZyBvcHRpb25zIHN1Y2ggYXMgdmVyYm9zaXR5LlxuICAgKiBAZGVmYXVsdCB7fVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9nZ2luZz86IExvZ2dlck9wdGlvbnM7XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIGdpdC5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGdpdE9wdGlvbnM/OiBHaXRPcHRpb25zO1xuICAvKipcbiAgICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciAuZ2l0aWdub3JlIGZpbGUuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBnaXRJZ25vcmVPcHRpb25zPzogSWdub3JlRmlsZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGNvbW1pdCB0aGUgbWFuYWdlZCBmaWxlcyBieSBkZWZhdWx0LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBjb21taXRHZW5lcmF0ZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhpcyBpcyB0aGUgbmFtZSBvZiB5b3VyIHByb2plY3QuXG4gICAqIEBkZWZhdWx0ICRCQVNFRElSXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHJlcG86IHN0cmluZztcbiAgLyoqXG4gICAqIFdoaWNoIGNvbnZlbnRpb25hbCBjb21taXQgdHlwZXMgc2hvdWxkIGJlIHJlbGVhc2VkXG4gICAqIEBkZWZhdWx0IFsnZmVhdCcsICdmaXgnLCAnY2hvcmUnLCAncmV2ZXJ0J11cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2FibGVDb21taXRUeXBlcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBXaGljaCBjb252ZW50aW9uYWwgY29tbWl0IHR5cGVzIGFyZSBhbGxvd2VkIHRvIGJlIHVzZWRcbiAgICogVHlwZXMgbGlzdGVkIGluIGByZWxlYXNhYmxlQ29tbWl0VHlwZXNgIGFyZSBhbHdheXMgYWxsb3dlZFxuICAgKiBAZGVmYXVsdCBbJ2ZlYXQnLCAnZml4JywgJ2Nob3JlJywgJ3JldmVydCcsICdkb2NzJywgJ2NpJ11cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGFsbG93ZWRDb21taXRUeXBlcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBVc2UgdGhpcyBhcHAgZm9yIHdvcmtmbG93IGF1dG9tYXRpb24uIFJlbWVtYmVyIHRvIGluc3RhbGwgdGhlIGFwcCBhbmQgdG8gY29uZmlndXJlIGNyZWRlbnRpYWxzLlxuICAgKiBAZGVmYXVsdCAtIHRva2VucyB3aWxsIGJlIHVzZWRcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dG9tYXRpb25BcHBOYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogQWxsb3cgdGhlIHJlcG8gb3duZXIgdG8gc2VsZiBhcHByb3ZlIFBScyBieSBwdXR0aW5nIGEgbGFiZWwgb24gaXQuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG93bmVyQ2FuU2VsZkFwcHJvdmVQUnM/OiBib29sZWFuO1xuICAvKipcbiAgICogQGRlZmF1bHQgVXBncmFkZURlcGVuZGVuY2llc1NjaGVkdWxlLldFRUtMWVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgdXBncmFkZXNTY2hlZHVsZT86IGphdmFzY3JpcHQuVXBncmFkZURlcGVuZGVuY2llc1NjaGVkdWxlO1xuICAvKipcbiAgICogQWRkIGEgbG9nby5cbiAgICogVXNlIGBMb2dvLnBsYWNlaG9sZGVyKClgIHRvIGdldCBzdGFydGVkLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9nbz86IGxvZ28uSUxvZ287XG4gIC8qKlxuICAgKiBDb25maWd1cmUgaG93IHRoZSB3b3JkbWFyayBpcyBjcmVhdGVkIGZyb20gYSBsb2dvLlxuICAgKiBXb3JkbWFya3MgYXJlIG9ubHkgY3JlYXRlZCB3aGVuIGEgbG9nbyBpcyBhdmFpbGFibGUuXG4gICAqIEBkZWZhdWx0IC0gZGVyaXZlZCBmcm9tIGxvZ28gYW5kIHByb2plY3RcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHdvcmRtYXJrT3B0aW9ucz86IGxvZ28uV29yZG1hcmtPcHRpb25zO1xuICAvKipcbiAgICogVGhlIHByb2plbiB2ZXJzaW9uIGNvbnN0cmFpbnQgdGhhdCBpcyBzdXBwb3J0ZWQgYnkgdGhpcyBwcm9qZWN0XG4gICAqIEBkZWZhdWx0IFwiMC54ID49MC43NS4wXCJcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2plblZlcnNpb24/OiBzdHJpbmc7XG59XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import { cdk } from 'projen';
2
- import { SvgFile, Wordmark } from './logo';
3
- import { ProjenProjectOptions } from './projen-project-options';
2
+ import type { SvgFile, Wordmark } from './logo';
3
+ import type { ProjenProjectOptions } from './projen-project-options';
4
4
  /**
5
5
  * A project to create new projen projects & components
6
6
  * @pjid projen
@@ -34,5 +34,5 @@ class ProjenProject extends projen_1.cdk.JsiiProject {
34
34
  }
35
35
  exports.ProjenProject = ProjenProject;
36
36
  _a = JSII_RTTI_SYMBOL_1;
37
- ProjenProject[_a] = { fqn: "mrpj.ProjenProject", version: "0.1.98" };
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVuLXByb2plY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcHJvamVuLXByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtQ0FBNkI7QUFDN0IseUNBQWlLO0FBR2pLLG1DQUE0RDtBQUU1RDs7O0dBR0c7QUFDSCxNQUFhLGFBQWMsU0FBUSxZQUFHLENBQUMsV0FBVztJQUloRCxZQUFtQixPQUE2QjtRQUM5QyxNQUFNLElBQUksR0FBRyxJQUFBLHNCQUFjLEVBQ3pCLElBQUEsc0JBQVcsR0FBRSxFQUNiLGtCQUFPLEVBQ1AscUJBQVUsRUFDVixJQUFBLHVCQUFZLEVBQUM7WUFDWCxhQUFhLEVBQUUsT0FBTyxDQUFDLGFBQWEsSUFBSSxjQUFjO1lBQ3RELE9BQU8sRUFBRSxDQUFDLDhCQUE4QixFQUFFLFlBQVksRUFBRSxpQkFBaUIsQ0FBQztZQUMxRSxRQUFRLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztZQUNoQyxxQkFBcUIsRUFBRTtnQkFDckIsbUJBQW1CLEVBQUUsS0FBSzthQUMzQjtTQUNGLENBQUMsRUFDRixJQUFBLHdCQUFhLEVBQUM7WUFDWixNQUFNLEVBQUUsT0FBTyxDQUFDLFVBQVU7WUFDMUIsU0FBUyxFQUFFLFNBQVM7WUFDcEIsVUFBVSxFQUFFLEtBQUs7WUFDakIsVUFBVSxFQUFFLElBQUk7WUFDaEIsV0FBVyxFQUFFLE9BQU87WUFDcEIsaUJBQWlCLEVBQUUsT0FBTztZQUMxQixhQUFhLEVBQUUsU0FBUztTQUN6QixDQUFDLENBQ0gsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVYLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVaLElBQUEseUJBQWlCLEVBQ2YsaUJBQU0sRUFDTixlQUFJLEVBQ0osc0JBQVcsRUFDWCw2QkFBa0IsRUFDbEIsZ0NBQXFCLENBQ3RCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2hCLENBQUM7O0FBckNILHNDQXNDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNkayB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBhdXRvbWF0aW9uLCBkZXBlbmRlbmNpZXMsIGVuc3VyZURlcGVuZGVuY2llcywgZXNsaW50LCBmb3JjZURlZmF1bHRzLCBsb2dvLCBub2RlVmVyc2lvbiwgcGFja2FnZUluZm8sIHByZXZlbnRTZWxmRGVwZW5kZW5jeSwgcmVsZWFzZSB9IGZyb20gJy4vZmVhdHVyZXMnO1xuaW1wb3J0IHsgU3ZnRmlsZSwgV29yZG1hcmsgfSBmcm9tICcuL2xvZ28nO1xuaW1wb3J0IHsgUHJvamVuUHJvamVjdE9wdGlvbnMgfSBmcm9tICcuL3Byb2plbi1wcm9qZWN0LW9wdGlvbnMnO1xuaW1wb3J0IHsgY29uZmlndXJlRmVhdHVyZXMsIGRlZmF1bHRPcHRpb25zIH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogQSBwcm9qZWN0IHRvIGNyZWF0ZSBuZXcgcHJvamVuIHByb2plY3RzICYgY29tcG9uZW50c1xuICogQHBqaWQgcHJvamVuXG4gKi9cbmV4cG9ydCBjbGFzcyBQcm9qZW5Qcm9qZWN0IGV4dGVuZHMgY2RrLkpzaWlQcm9qZWN0IHtcbiAgcHVibGljIHJlYWRvbmx5IGxvZ28/OiBTdmdGaWxlO1xuICBwdWJsaWMgcmVhZG9ubHkgd29yZG1hcms/OiBXb3JkbWFyaztcblxuICBwdWJsaWMgY29uc3RydWN0b3Iob3B0aW9uczogUHJvamVuUHJvamVjdE9wdGlvbnMpIHtcbiAgICBjb25zdCBvcHRzID0gZGVmYXVsdE9wdGlvbnM8UHJvamVuUHJvamVjdE9wdGlvbnM+KFxuICAgICAgcGFja2FnZUluZm8oKSxcbiAgICAgIHJlbGVhc2UsXG4gICAgICBhdXRvbWF0aW9uLFxuICAgICAgZGVwZW5kZW5jaWVzKHtcbiAgICAgICAgcHJvamVuVmVyc2lvbjogb3B0aW9ucy5wcm9qZW5WZXJzaW9uID8/ICcwLnggPj0wLjc1LjAnLFxuICAgICAgICBkZXZEZXBzOiBbJ0BtcmdyYWluL2pzaWktc3RydWN0LWJ1aWxkZXInLCAnQGpzaWkvc3BlYycsICdqc2lpLWRvY2dlbkBeMTAnXSxcbiAgICAgICAgcGVlckRlcHM6IFsnY29uc3RydWN0c0BeMTAuMC4wJ10sXG4gICAgICAgIHBlZXJEZXBlbmRlbmN5T3B0aW9uczoge1xuICAgICAgICAgIHBpbm5lZERldkRlcGVuZGVuY3k6IGZhbHNlLFxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgICBmb3JjZURlZmF1bHRzKHtcbiAgICAgICAgYXV0aG9yOiBvcHRpb25zLmF1dGhvck5hbWUsXG4gICAgICAgIGF1dGhvclVybDogdW5kZWZpbmVkLFxuICAgICAgICBzYW1wbGVDb2RlOiBmYWxzZSxcbiAgICAgICAgcHJvamVucmNUczogdHJ1ZSxcbiAgICAgICAganNpaVZlcnNpb246ICc1LjMueCcsXG4gICAgICAgIHR5cGVzY3JpcHRWZXJzaW9uOiAnNS4zLngnLFxuICAgICAgICBwcm9qZW5WZXJzaW9uOiB1bmRlZmluZWQsXG4gICAgICB9KSxcbiAgICApKG9wdGlvbnMpO1xuXG4gICAgc3VwZXIob3B0cyk7XG5cbiAgICBjb25maWd1cmVGZWF0dXJlcyhcbiAgICAgIGVzbGludCxcbiAgICAgIGxvZ28sXG4gICAgICBub2RlVmVyc2lvbixcbiAgICAgIGVuc3VyZURlcGVuZGVuY2llcyxcbiAgICAgIHByZXZlbnRTZWxmRGVwZW5kZW5jeSxcbiAgICApKHRoaXMsIG9wdHMpO1xuICB9XG59XG4iXX0=
37
+ ProjenProject[_a] = { fqn: "mrpj.ProjenProject", version: "0.1.100" };
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVuLXByb2plY3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcHJvamVuLXByb2plY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtQ0FBNkI7QUFDN0IseUNBQWlLO0FBR2pLLG1DQUE0RDtBQUU1RDs7O0dBR0c7QUFDSCxNQUFhLGFBQWMsU0FBUSxZQUFHLENBQUMsV0FBVztJQUloRCxZQUFtQixPQUE2QjtRQUM5QyxNQUFNLElBQUksR0FBRyxJQUFBLHNCQUFjLEVBQ3pCLElBQUEsc0JBQVcsR0FBRSxFQUNiLGtCQUFPLEVBQ1AscUJBQVUsRUFDVixJQUFBLHVCQUFZLEVBQUM7WUFDWCxhQUFhLEVBQUUsT0FBTyxDQUFDLGFBQWEsSUFBSSxjQUFjO1lBQ3RELE9BQU8sRUFBRSxDQUFDLDhCQUE4QixFQUFFLFlBQVksRUFBRSxpQkFBaUIsQ0FBQztZQUMxRSxRQUFRLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztZQUNoQyxxQkFBcUIsRUFBRTtnQkFDckIsbUJBQW1CLEVBQUUsS0FBSzthQUMzQjtTQUNGLENBQUMsRUFDRixJQUFBLHdCQUFhLEVBQUM7WUFDWixNQUFNLEVBQUUsT0FBTyxDQUFDLFVBQVU7WUFDMUIsU0FBUyxFQUFFLFNBQVM7WUFDcEIsVUFBVSxFQUFFLEtBQUs7WUFDakIsVUFBVSxFQUFFLElBQUk7WUFDaEIsV0FBVyxFQUFFLE9BQU87WUFDcEIsaUJBQWlCLEVBQUUsT0FBTztZQUMxQixhQUFhLEVBQUUsU0FBUztTQUN6QixDQUFDLENBQ0gsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVYLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVaLElBQUEseUJBQWlCLEVBQ2YsaUJBQU0sRUFDTixlQUFJLEVBQ0osc0JBQVcsRUFDWCw2QkFBa0IsRUFDbEIsZ0NBQXFCLENBQ3RCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2hCLENBQUM7O0FBckNILHNDQXNDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNkayB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBhdXRvbWF0aW9uLCBkZXBlbmRlbmNpZXMsIGVuc3VyZURlcGVuZGVuY2llcywgZXNsaW50LCBmb3JjZURlZmF1bHRzLCBsb2dvLCBub2RlVmVyc2lvbiwgcGFja2FnZUluZm8sIHByZXZlbnRTZWxmRGVwZW5kZW5jeSwgcmVsZWFzZSB9IGZyb20gJy4vZmVhdHVyZXMnO1xuaW1wb3J0IHR5cGUgeyBTdmdGaWxlLCBXb3JkbWFyayB9IGZyb20gJy4vbG9nbyc7XG5pbXBvcnQgdHlwZSB7IFByb2plblByb2plY3RPcHRpb25zIH0gZnJvbSAnLi9wcm9qZW4tcHJvamVjdC1vcHRpb25zJztcbmltcG9ydCB7IGNvbmZpZ3VyZUZlYXR1cmVzLCBkZWZhdWx0T3B0aW9ucyB9IGZyb20gJy4vdXRpbHMnO1xuXG4vKipcbiAqIEEgcHJvamVjdCB0byBjcmVhdGUgbmV3IHByb2plbiBwcm9qZWN0cyAmIGNvbXBvbmVudHNcbiAqIEBwamlkIHByb2plblxuICovXG5leHBvcnQgY2xhc3MgUHJvamVuUHJvamVjdCBleHRlbmRzIGNkay5Kc2lpUHJvamVjdCB7XG4gIHB1YmxpYyByZWFkb25seSBsb2dvPzogU3ZnRmlsZTtcbiAgcHVibGljIHJlYWRvbmx5IHdvcmRtYXJrPzogV29yZG1hcms7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKG9wdGlvbnM6IFByb2plblByb2plY3RPcHRpb25zKSB7XG4gICAgY29uc3Qgb3B0cyA9IGRlZmF1bHRPcHRpb25zPFByb2plblByb2plY3RPcHRpb25zPihcbiAgICAgIHBhY2thZ2VJbmZvKCksXG4gICAgICByZWxlYXNlLFxuICAgICAgYXV0b21hdGlvbixcbiAgICAgIGRlcGVuZGVuY2llcyh7XG4gICAgICAgIHByb2plblZlcnNpb246IG9wdGlvbnMucHJvamVuVmVyc2lvbiA/PyAnMC54ID49MC43NS4wJyxcbiAgICAgICAgZGV2RGVwczogWydAbXJncmFpbi9qc2lpLXN0cnVjdC1idWlsZGVyJywgJ0Bqc2lpL3NwZWMnLCAnanNpaS1kb2NnZW5AXjEwJ10sXG4gICAgICAgIHBlZXJEZXBzOiBbJ2NvbnN0cnVjdHNAXjEwLjAuMCddLFxuICAgICAgICBwZWVyRGVwZW5kZW5jeU9wdGlvbnM6IHtcbiAgICAgICAgICBwaW5uZWREZXZEZXBlbmRlbmN5OiBmYWxzZSxcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICAgZm9yY2VEZWZhdWx0cyh7XG4gICAgICAgIGF1dGhvcjogb3B0aW9ucy5hdXRob3JOYW1lLFxuICAgICAgICBhdXRob3JVcmw6IHVuZGVmaW5lZCxcbiAgICAgICAgc2FtcGxlQ29kZTogZmFsc2UsXG4gICAgICAgIHByb2plbnJjVHM6IHRydWUsXG4gICAgICAgIGpzaWlWZXJzaW9uOiAnNS4zLngnLFxuICAgICAgICB0eXBlc2NyaXB0VmVyc2lvbjogJzUuMy54JyxcbiAgICAgICAgcHJvamVuVmVyc2lvbjogdW5kZWZpbmVkLFxuICAgICAgfSksXG4gICAgKShvcHRpb25zKTtcblxuICAgIHN1cGVyKG9wdHMpO1xuXG4gICAgY29uZmlndXJlRmVhdHVyZXMoXG4gICAgICBlc2xpbnQsXG4gICAgICBsb2dvLFxuICAgICAgbm9kZVZlcnNpb24sXG4gICAgICBlbnN1cmVEZXBlbmRlbmNpZXMsXG4gICAgICBwcmV2ZW50U2VsZkRlcGVuZGVuY3ksXG4gICAgKSh0aGlzLCBvcHRzKTtcbiAgfVxufVxuIl19
@@ -296,6 +296,18 @@ export interface TypeScriptProjectOptions {
296
296
  * @stability stable
297
297
  */
298
298
  readonly buildWorkflow?: boolean;
299
+ /**
300
+ * Biome options.
301
+ * @default - default options
302
+ * @stability stable
303
+ */
304
+ readonly biomeOptions?: javascript.BiomeOptions;
305
+ /**
306
+ * Setup Biome.
307
+ * @default false
308
+ * @stability stable
309
+ */
310
+ readonly biome?: boolean;
299
311
  /**
300
312
  * Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued).
301
313
  * Throw if set to true but `autoApproveOptions` are not defined.