projen 0.99.56 → 0.99.58

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 (146) hide show
  1. package/.jsii +227 -91
  2. package/lib/ai-instructions.js +2 -2
  3. package/lib/awscdk/auto-discover.js +6 -6
  4. package/lib/awscdk/awscdk-app-java.js +1 -1
  5. package/lib/awscdk/awscdk-app-py.js +1 -1
  6. package/lib/awscdk/awscdk-app-ts.js +1 -1
  7. package/lib/awscdk/awscdk-construct.js +2 -2
  8. package/lib/awscdk/awscdk-deps-java.js +1 -1
  9. package/lib/awscdk/awscdk-deps-js.js +1 -1
  10. package/lib/awscdk/awscdk-deps-py.js +1 -1
  11. package/lib/awscdk/awscdk-deps.js +1 -1
  12. package/lib/awscdk/cdk-config.js +4 -4
  13. package/lib/awscdk/cdk-tasks.js +1 -1
  14. package/lib/awscdk/integration-test.js +1 -1
  15. package/lib/awscdk/internal.d.ts +1 -0
  16. package/lib/awscdk/lambda-extension.js +1 -1
  17. package/lib/awscdk/lambda-function.js +2 -2
  18. package/lib/awscdk/private/feature-flags-v2.const.d.ts +2 -1
  19. package/lib/awscdk/private/feature-flags-v2.const.js +4 -3
  20. package/lib/build/build-workflow.js +1 -1
  21. package/lib/cdk/auto-discover-base.js +2 -2
  22. package/lib/cdk/construct-lib.js +1 -1
  23. package/lib/cdk/integration-test-base.js +1 -1
  24. package/lib/cdk/jsii-docgen.js +1 -1
  25. package/lib/cdk/jsii-project.js +1 -1
  26. package/lib/cdk8s/auto-discover.js +2 -2
  27. package/lib/cdk8s/cdk8s-app-py.js +1 -1
  28. package/lib/cdk8s/cdk8s-app-ts.js +1 -1
  29. package/lib/cdk8s/cdk8s-construct.js +1 -1
  30. package/lib/cdk8s/cdk8s-deps-py.js +1 -1
  31. package/lib/cdk8s/cdk8s-deps.js +1 -1
  32. package/lib/cdk8s/integration-test.js +1 -1
  33. package/lib/cdktf/cdktf-construct.js +1 -1
  34. package/lib/circleci/circleci.js +1 -1
  35. package/lib/component.js +1 -1
  36. package/lib/dependencies.js +1 -1
  37. package/lib/dev-env.js +1 -1
  38. package/lib/docker-compose/docker-compose-service.js +1 -1
  39. package/lib/docker-compose/docker-compose.js +1 -1
  40. package/lib/file.js +1 -1
  41. package/lib/gitattributes.js +1 -1
  42. package/lib/github/actions-provider.js +1 -1
  43. package/lib/github/auto-approve.js +1 -1
  44. package/lib/github/auto-merge.js +1 -1
  45. package/lib/github/auto-queue.js +1 -1
  46. package/lib/github/dependabot.js +1 -1
  47. package/lib/github/dependency-review.js +1 -1
  48. package/lib/github/github-credentials.js +1 -1
  49. package/lib/github/github-project.js +1 -1
  50. package/lib/github/github.js +1 -1
  51. package/lib/github/merge-queue.js +1 -1
  52. package/lib/github/mergify.js +1 -1
  53. package/lib/github/pr-template.js +1 -1
  54. package/lib/github/pull-request-backport.js +1 -1
  55. package/lib/github/pull-request-lint.js +1 -1
  56. package/lib/github/stale.js +1 -1
  57. package/lib/github/task-workflow-job.js +1 -1
  58. package/lib/github/task-workflow.js +1 -1
  59. package/lib/github/workflow-actions.js +1 -1
  60. package/lib/github/workflow-jobs.js +1 -1
  61. package/lib/github/workflow-steps.js +1 -1
  62. package/lib/github/workflows-model.d.ts +36 -1
  63. package/lib/github/workflows-model.js +1 -1
  64. package/lib/github/workflows.js +1 -1
  65. package/lib/gitlab/configuration.js +1 -1
  66. package/lib/gitlab/gitlab-configuration.js +1 -1
  67. package/lib/gitlab/nested-configuration.js +1 -1
  68. package/lib/gitpod.js +1 -1
  69. package/lib/ignore-file.js +1 -1
  70. package/lib/ini.js +1 -1
  71. package/lib/java/java-project.js +1 -1
  72. package/lib/java/junit.js +1 -1
  73. package/lib/java/maven-compile.js +1 -1
  74. package/lib/java/maven-packaging.js +1 -1
  75. package/lib/java/maven-sample.js +1 -1
  76. package/lib/java/pom.js +2 -2
  77. package/lib/java/projenrc.js +1 -1
  78. package/lib/javascript/biome/biome.js +1 -1
  79. package/lib/javascript/bundler.js +1 -1
  80. package/lib/javascript/eslint.js +1 -1
  81. package/lib/javascript/jest.js +4 -4
  82. package/lib/javascript/license-checker.js +1 -1
  83. package/lib/javascript/node-package.js +1 -1
  84. package/lib/javascript/node-project.js +1 -1
  85. package/lib/javascript/npm-config.js +1 -1
  86. package/lib/javascript/prettier.js +1 -1
  87. package/lib/javascript/projenrc.js +1 -1
  88. package/lib/javascript/typescript-config.js +2 -2
  89. package/lib/javascript/upgrade-dependencies.js +2 -2
  90. package/lib/javascript/yarnrc.js +1 -1
  91. package/lib/json-patch.js +1 -1
  92. package/lib/json.js +1 -1
  93. package/lib/license.js +1 -1
  94. package/lib/logger.js +1 -1
  95. package/lib/makefile.js +1 -1
  96. package/lib/object-file.js +1 -1
  97. package/lib/project-build.js +1 -1
  98. package/lib/project-tree.js +1 -1
  99. package/lib/project.js +1 -1
  100. package/lib/projects.js +1 -1
  101. package/lib/projenrc-json.js +2 -2
  102. package/lib/projenrc.js +1 -1
  103. package/lib/python/pip.js +1 -1
  104. package/lib/python/poetry.js +2 -2
  105. package/lib/python/projenrc.js +1 -1
  106. package/lib/python/pyproject-toml-file.js +1 -1
  107. package/lib/python/pytest-sample.js +1 -1
  108. package/lib/python/pytest.js +1 -1
  109. package/lib/python/python-project.js +1 -1
  110. package/lib/python/python-sample.js +1 -1
  111. package/lib/python/requirements-file.js +1 -1
  112. package/lib/python/setuppy.js +1 -1
  113. package/lib/python/setuptools.js +1 -1
  114. package/lib/python/uv.js +1 -1
  115. package/lib/python/venv.js +1 -1
  116. package/lib/readme.js +1 -1
  117. package/lib/release/publisher.js +11 -3
  118. package/lib/release/release-trigger.js +1 -1
  119. package/lib/release/release.js +11 -3
  120. package/lib/renovatebot.js +1 -1
  121. package/lib/sample-file.js +2 -2
  122. package/lib/semver.js +1 -1
  123. package/lib/source-code.js +1 -1
  124. package/lib/task-runtime.js +1 -1
  125. package/lib/task.js +1 -1
  126. package/lib/tasks.js +1 -1
  127. package/lib/testing.js +1 -1
  128. package/lib/textfile.js +1 -1
  129. package/lib/toml.js +1 -1
  130. package/lib/typescript/projenrc-ts.js +1 -1
  131. package/lib/typescript/projenrc.js +1 -1
  132. package/lib/typescript/typescript-typedoc.js +1 -1
  133. package/lib/typescript/typescript.js +6 -6
  134. package/lib/version.js +2 -2
  135. package/lib/vscode/devcontainer.js +1 -1
  136. package/lib/vscode/extensions.js +1 -1
  137. package/lib/vscode/launch-config.js +1 -1
  138. package/lib/vscode/settings.js +1 -1
  139. package/lib/vscode/vscode.js +1 -1
  140. package/lib/web/next.js +3 -3
  141. package/lib/web/postcss.js +1 -1
  142. package/lib/web/react.js +4 -4
  143. package/lib/web/tailwind.js +1 -1
  144. package/lib/xmlfile.js +1 -1
  145. package/lib/yaml.js +1 -1
  146. package/package.json +2 -2
@@ -31,4 +31,4 @@ var AppPermission;
31
31
  AppPermission["ADMIN"] = "admin";
32
32
  })(AppPermission || (exports.AppPermission = AppPermission = {}));
33
33
  //#endregion
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3dzLW1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHVGQUF1Rjs7O0FBNFR2Rjs7R0FFRztBQUNILElBQVksYUFTWDtBQVRELFdBQVksYUFBYTtJQUN2Qix1QkFBdUI7SUFDdkIsOEJBQWEsQ0FBQTtJQUViLHdCQUF3QjtJQUN4QixnQ0FBZSxDQUFBO0lBRWYsdUJBQXVCO0lBQ3ZCLDhCQUFhLENBQUE7QUFDZixDQUFDLEVBVFcsYUFBYSw2QkFBYixhQUFhLFFBU3hCO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLGFBV1g7QUFYRCxXQUFZLGFBQWE7SUFDdkIsd0JBQXdCO0lBQ3hCLDhCQUFhLENBQUE7SUFDYix3QkFBd0I7SUFDeEIsZ0NBQWUsQ0FBQTtJQUNmOzs7O09BSUc7SUFDSCxnQ0FBZSxDQUFBO0FBQ2pCLENBQUMsRUFYVyxhQUFhLDZCQUFiLGFBQWEsUUFXeEI7QUFrOEJELFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2FjdGlvbnMvcmVmZXJlbmNlL3dvcmtmbG93LXN5bnRheC1mb3ItZ2l0aHViLWFjdGlvbnNcblxuaW1wb3J0IHR5cGUgeyBHcm91cFJ1bm5lck9wdGlvbnMgfSBmcm9tIFwiLi4vcnVubmVyLW9wdGlvbnNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDb21tb25Kb2JEZWZpbml0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBqb2IgZGlzcGxheWVkIG9uIEdpdEh1Yi5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElkZW50aWZpZXMgYW55IGpvYnMgdGhhdCBtdXN0IGNvbXBsZXRlIHN1Y2Nlc3NmdWxseSBiZWZvcmUgdGhpcyBqb2Igd2lsbFxuICAgKiBydW4uIEl0IGNhbiBiZSBhIHN0cmluZyBvciBhcnJheSBvZiBzdHJpbmdzLiBJZiBhIGpvYiBmYWlscywgYWxsIGpvYnNcbiAgICogdGhhdCBuZWVkIGl0IGFyZSBza2lwcGVkIHVubGVzcyB0aGUgam9icyB1c2UgYSBjb25kaXRpb25hbCBleHByZXNzaW9uXG4gICAqIHRoYXQgY2F1c2VzIHRoZSBqb2IgdG8gY29udGludWUuXG4gICAqL1xuICByZWFkb25seSBuZWVkcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBZb3UgY2FuIG1vZGlmeSB0aGUgZGVmYXVsdCBwZXJtaXNzaW9ucyBncmFudGVkIHRvIHRoZSBHSVRIVUJfVE9LRU4sIGFkZGluZ1xuICAgKiBvciByZW1vdmluZyBhY2Nlc3MgYXMgcmVxdWlyZWQsIHNvIHRoYXQgeW91IG9ubHkgYWxsb3cgdGhlIG1pbmltdW0gcmVxdWlyZWRcbiAgICogYWNjZXNzLlxuICAgKlxuICAgKiBVc2UgYHsgY29udGVudHM6IFJFQUQgfWAgaWYgeW91ciBqb2Igb25seSBuZWVkcyB0byBjbG9uZSBjb2RlLlxuICAgKlxuICAgKiBUaGlzIGlzIGludGVudGlvbmFsbHkgYSByZXF1aXJlZCBmaWVsZCBzaW5jZSBpdCBpcyByZXF1aXJlZCBpbiBvcmRlciB0b1xuICAgKiBhbGxvdyB3b3JrZmxvd3MgdG8gcnVuIGluIEdpdEh1YiByZXBvc2l0b3JpZXMgd2l0aCByZXN0cmljdGVkIGRlZmF1bHRcbiAgICogYWNjZXNzLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2FjdGlvbnMvcmVmZXJlbmNlL2F1dGhlbnRpY2F0aW9uLWluLWEtd29ya2Zsb3cjcGVybWlzc2lvbnMtZm9yLXRoZS1naXRodWJfdG9rZW5cbiAgICovXG4gIHJlYWRvbmx5IHBlcm1pc3Npb25zOiBKb2JQZXJtaXNzaW9ucztcblxuICAvKipcbiAgICogQ29uY3VycmVuY3kgZW5zdXJlcyB0aGF0IG9ubHkgYSBzaW5nbGUgam9iIG9yIHdvcmtmbG93IHVzaW5nIHRoZSBzYW1lXG4gICAqIGNvbmN1cnJlbmN5IGdyb3VwIHdpbGwgcnVuIGF0IGEgdGltZS4gQSBjb25jdXJyZW5jeSBncm91cCBjYW4gYmUgYW55XG4gICAqIHN0cmluZyBvciBleHByZXNzaW9uLiBUaGUgZXhwcmVzc2lvbiBjYW4gdXNlIGFueSBjb250ZXh0IGV4Y2VwdCBmb3IgdGhlXG4gICAqIHNlY3JldHMgY29udGV4dC5cbiAgICpcbiAgICogQGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgY29uY3VycmVuY3k/OiB1bmtub3duO1xuXG4gIC8qKlxuICAgKiBZb3UgY2FuIHVzZSB0aGUgaWYgY29uZGl0aW9uYWwgdG8gcHJldmVudCBhIGpvYiBmcm9tIHJ1bm5pbmcgdW5sZXNzIGFcbiAgICogY29uZGl0aW9uIGlzIG1ldC4gWW91IGNhbiB1c2UgYW55IHN1cHBvcnRlZCBjb250ZXh0IGFuZCBleHByZXNzaW9uIHRvXG4gICAqIGNyZWF0ZSBhIGNvbmRpdGlvbmFsLlxuICAgKi9cbiAgcmVhZG9ubHkgaWY/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgc3RyYXRlZ3kgY3JlYXRlcyBhIGJ1aWxkIG1hdHJpeCBmb3IgeW91ciBqb2JzLiBZb3UgY2FuIGRlZmluZSBkaWZmZXJlbnRcbiAgICogdmFyaWF0aW9ucyB0byBydW4gZWFjaCBqb2IgaW4uXG4gICAqL1xuICByZWFkb25seSBzdHJhdGVneT86IEpvYlN0cmF0ZWd5O1xufVxuXG4vKipcbiAqIEEgR2l0SHViIFdvcmtmbG93IEpvYiBjYWxsaW5nIGEgcmV1c2FibGUgd29ya2Zsb3dcbiAqXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSm9iQ2FsbGluZ1JldXNhYmxlV29ya2Zsb3cgZXh0ZW5kcyBDb21tb25Kb2JEZWZpbml0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSBsb2NhdGlvbiBhbmQgdmVyc2lvbiBvZiBhIHJldXNhYmxlIHdvcmtmbG93IGZpbGUgdG8gcnVuIGFzIGEgam9iLlxuICAgKi9cbiAgcmVhZG9ubHkgdXNlczogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGVuIGEgam9iIGlzIHVzZWQgdG8gY2FsbCBhIHJldXNhYmxlIHdvcmtmbG93LCB5b3UgY2FuIHVzZSB3aXRoIHRvXG4gICAqIHByb3ZpZGUgYSBtYXAgb2YgaW5wdXRzIHRoYXQgYXJlIHBhc3NlZCB0byB0aGUgY2FsbGVkIHdvcmtmbG93LlxuICAgKlxuICAgKiBBbGxvd2VkIGV4cHJlc3Npb24gY29udGV4dHM6IGBnaXRodWJgLCBhbmQgYG5lZWRzYC5cbiAgICovXG4gIHJlYWRvbmx5IHdpdGg/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBib29sZWFuPjtcblxuICAvKipcbiAgICogV2hlbiBhIGpvYiBpcyB1c2VkIHRvIGNhbGwgYSByZXVzYWJsZSB3b3JrZmxvdywgeW91IGNhbiB1c2Ugc2VjcmV0cyB0b1xuICAgKiBwcm92aWRlIGEgbWFwIG9mIHNlY3JldHMgdGhhdCBhcmUgcGFzc2VkIHRvIHRoZSBjYWxsZWQgd29ya2Zsb3cuXG4gICAqXG4gICAqIFVzZSB0aGUgJ2luaGVyaXQnIGtleXdvcmQgdG8gcGFzcyBhbGwgdGhlIGNhbGxpbmcgd29ya2Zsb3cncyBzZWNyZXRzIHRvIHRoZSBjYWxsZWQgd29ya2Zsb3dcbiAgICovXG4gIHJlYWRvbmx5IHNlY3JldHM/OiBzdHJpbmcgfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufVxuXG4vKipcbiAqIEEgR2l0SHViIFdvcmtmbG93IGpvYiBkZWZpbml0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEpvYiBleHRlbmRzIENvbW1vbkpvYkRlZmluaXRpb24ge1xuICAvKipcbiAgICogVGhlIHR5cGUgb2YgbWFjaGluZSB0byBydW4gdGhlIGpvYiBvbi4gVGhlIG1hY2hpbmUgY2FuIGJlIGVpdGhlciBhXG4gICAqIEdpdEh1Yi1ob3N0ZWQgcnVubmVyIG9yIGEgc2VsZi1ob3N0ZWQgcnVubmVyLlxuICAgKlxuICAgKiBAZXhhbXBsZSBbXCJ1YnVudHUtbGF0ZXN0XCJdXG4gICAqL1xuICByZWFkb25seSBydW5zT24/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogR2l0aHViIFJ1bm5lciBHcm91cCBzZWxlY3Rpb24gb3B0aW9uc1xuICAgKiBAZGVzY3JpcHRpb24gRGVmaW5lcyBhIHRhcmdldCBSdW5uZXIgR3JvdXAgYnkgbmFtZSBhbmQvb3IgbGFiZWxzXG4gICAqIEB0aHJvd3Mge0Vycm9yfSBpZiBib3RoIGBydW5zT25gIGFuZCBgcnVuc09uR3JvdXBgIGFyZSBzcGVjaWZpZWRcbiAgICovXG4gIHJlYWRvbmx5IHJ1bnNPbkdyb3VwPzogR3JvdXBSdW5uZXJPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBBIGpvYiBjb250YWlucyBhIHNlcXVlbmNlIG9mIHRhc2tzIGNhbGxlZCBzdGVwcy4gU3RlcHMgY2FuIHJ1biBjb21tYW5kcyxcbiAgICogcnVuIHNldHVwIHRhc2tzLCBvciBydW4gYW4gYWN0aW9uIGluIHlvdXIgcmVwb3NpdG9yeSwgYSBwdWJsaWMgcmVwb3NpdG9yeSxcbiAgICogb3IgYW4gYWN0aW9uIHB1Ymxpc2hlZCBpbiBhIERvY2tlciByZWdpc3RyeS4gTm90IGFsbCBzdGVwcyBydW4gYWN0aW9ucyxcbiAgICogYnV0IGFsbCBhY3Rpb25zIHJ1biBhcyBhIHN0ZXAuIEVhY2ggc3RlcCBydW5zIGluIGl0cyBvd24gcHJvY2VzcyBpbiB0aGVcbiAgICogcnVubmVyIGVudmlyb25tZW50IGFuZCBoYXMgYWNjZXNzIHRvIHRoZSB3b3Jrc3BhY2UgYW5kIGZpbGVzeXN0ZW0uXG4gICAqIEJlY2F1c2Ugc3RlcHMgcnVuIGluIHRoZWlyIG93biBwcm9jZXNzLCBjaGFuZ2VzIHRvIGVudmlyb25tZW50IHZhcmlhYmxlc1xuICAgKiBhcmUgbm90IHByZXNlcnZlZCBiZXR3ZWVuIHN0ZXBzLiBHaXRIdWIgcHJvdmlkZXMgYnVpbHQtaW4gc3RlcHMgdG8gc2V0IHVwXG4gICAqIGFuZCBjb21wbGV0ZSBhIGpvYi5cbiAgICovXG4gIHJlYWRvbmx5IHN0ZXBzOiBKb2JTdGVwW107XG5cbiAgLyoqXG4gICAqIFRoZSBlbnZpcm9ubWVudCB0aGF0IHRoZSBqb2IgcmVmZXJlbmNlcy4gQWxsIGVudmlyb25tZW50IHByb3RlY3Rpb24gcnVsZXNcbiAgICogbXVzdCBwYXNzIGJlZm9yZSBhIGpvYiByZWZlcmVuY2luZyB0aGUgZW52aXJvbm1lbnQgaXMgc2VudCB0byBhIHJ1bm5lci5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9hY3Rpb25zL3JlZmVyZW5jZS9lbnZpcm9ubWVudHNcbiAgICovXG4gIHJlYWRvbmx5IGVudmlyb25tZW50PzogdW5rbm93bjtcblxuICAvKipcbiAgICogQSBtYXAgb2Ygb3V0cHV0cyBmb3IgYSBqb2IuIEpvYiBvdXRwdXRzIGFyZSBhdmFpbGFibGUgdG8gYWxsIGRvd25zdHJlYW1cbiAgICogam9icyB0aGF0IGRlcGVuZCBvbiB0aGlzIGpvYi5cbiAgICovXG4gIHJlYWRvbmx5IG91dHB1dHM/OiBSZWNvcmQ8c3RyaW5nLCBKb2JTdGVwT3V0cHV0PjtcblxuICAvKipcbiAgICogQSBtYXAgb2YgZW52aXJvbm1lbnQgdmFyaWFibGVzIHRoYXQgYXJlIGF2YWlsYWJsZSB0byBhbGwgc3RlcHMgaW4gdGhlXG4gICAqIGpvYi4gWW91IGNhbiBhbHNvIHNldCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIHRoZSBlbnRpcmUgd29ya2Zsb3cgb3IgYW5cbiAgICogaW5kaXZpZHVhbCBzdGVwLlxuICAgKi9cbiAgcmVhZG9ubHkgZW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAvKipcbiAgICogQSBtYXAgb2YgZGVmYXVsdCBzZXR0aW5ncyB0aGF0IHdpbGwgYXBwbHkgdG8gYWxsIHN0ZXBzIGluIHRoZSBqb2IuIFlvdVxuICAgKiBjYW4gYWxzbyBzZXQgZGVmYXVsdCBzZXR0aW5ncyBmb3IgdGhlIGVudGlyZSB3b3JrZmxvdy5cbiAgICovXG4gIHJlYWRvbmx5IGRlZmF1bHRzPzogSm9iRGVmYXVsdHM7XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBtaW51dGVzIHRvIGxldCBhIGpvYiBydW4gYmVmb3JlIEdpdEh1YlxuICAgKiBhdXRvbWF0aWNhbGx5IGNhbmNlbHMgaXQuXG4gICAqXG4gICAqIEBkZWZhdWx0IDM2MFxuICAgKi9cbiAgcmVhZG9ubHkgdGltZW91dE1pbnV0ZXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFByZXZlbnRzIGEgd29ya2Zsb3cgcnVuIGZyb20gZmFpbGluZyB3aGVuIGEgam9iIGZhaWxzLiBTZXQgdG8gdHJ1ZSB0b1xuICAgKiBhbGxvdyBhIHdvcmtmbG93IHJ1biB0byBwYXNzIHdoZW4gdGhpcyBqb2IgZmFpbHMuXG4gICAqL1xuICByZWFkb25seSBjb250aW51ZU9uRXJyb3I/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBIGNvbnRhaW5lciB0byBydW4gYW55IHN0ZXBzIGluIGEgam9iIHRoYXQgZG9uJ3QgYWxyZWFkeSBzcGVjaWZ5IGFcbiAgICogY29udGFpbmVyLiBJZiB5b3UgaGF2ZSBzdGVwcyB0aGF0IHVzZSBib3RoIHNjcmlwdCBhbmQgY29udGFpbmVyIGFjdGlvbnMsXG4gICAqIHRoZSBjb250YWluZXIgYWN0aW9ucyB3aWxsIHJ1biBhcyBzaWJsaW5nIGNvbnRhaW5lcnMgb24gdGhlIHNhbWUgbmV0d29ya1xuICAgKiB3aXRoIHRoZSBzYW1lIHZvbHVtZSBtb3VudHMuXG4gICAqL1xuICByZWFkb25seSBjb250YWluZXI/OiBDb250YWluZXJPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBVc2VkIHRvIGhvc3Qgc2VydmljZSBjb250YWluZXJzIGZvciBhIGpvYiBpbiBhIHdvcmtmbG93LiBTZXJ2aWNlXG4gICAqIGNvbnRhaW5lcnMgYXJlIHVzZWZ1bCBmb3IgY3JlYXRpbmcgZGF0YWJhc2VzIG9yIGNhY2hlIHNlcnZpY2VzIGxpa2UgUmVkaXMuXG4gICAqIFRoZSBydW5uZXIgYXV0b21hdGljYWxseSBjcmVhdGVzIGEgRG9ja2VyIG5ldHdvcmsgYW5kIG1hbmFnZXMgdGhlIGxpZmVcbiAgICogY3ljbGUgb2YgdGhlIHNlcnZpY2UgY29udGFpbmVycy5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VzPzogUmVjb3JkPHN0cmluZywgQ29udGFpbmVyT3B0aW9ucz47XG5cbiAgLyoqXG4gICAqIFRvb2xzIHJlcXVpcmVkIGZvciB0aGlzIGpvYi4gVHJhbnNsYXRlcyBpbnRvIGBhY3Rpb25zL3NldHVwLXh4eGAgc3RlcHMgYXRcbiAgICogdGhlIGJlZ2lubmluZyBvZiB0aGUgam9iLlxuICAgKi9cbiAgcmVhZG9ubHkgdG9vbHM/OiBUb29scztcbn1cblxuLyoqXG4gKiBTdXBwb3J0ZWQgdG9vbHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVG9vbHMge1xuICAvKipcbiAgICogU2V0dXAgamF2YSAodGVtdXJpbiBkaXN0cmlidXRpb24pLlxuICAgKiBAZGVmYXVsdCAtIG5vdCBpbnN0YWxsZWRcbiAgICovXG4gIHJlYWRvbmx5IGphdmE/OiBUb29sUmVxdWlyZW1lbnQ7XG5cbiAgLyoqXG4gICAqIFNldHVwIHB5dGhvbi5cbiAgICogQGRlZmF1bHQgLSBub3QgaW5zdGFsbGVkXG4gICAqL1xuICByZWFkb25seSBweXRob24/OiBUb29sUmVxdWlyZW1lbnQ7XG5cbiAgLyoqXG4gICAqIFNldHVwIGdvbGFuZy5cbiAgICogQGRlZmF1bHQgLSBub3QgaW5zdGFsbGVkXG4gICAqL1xuICByZWFkb25seSBnbz86IFRvb2xSZXF1aXJlbWVudDtcblxuICAvKipcbiAgICogU2V0dXAgbm9kZS5qc1xuICAgKiBAZGVmYXVsdCAtIG5vdCBpbnN0YWxsZWRcbiAgICovXG4gIHJlYWRvbmx5IG5vZGU/OiBUb29sUmVxdWlyZW1lbnQ7XG5cbiAgLyoqXG4gICAqIFNldHVwIC5ORVQgQ29yZVxuICAgKiBAZGVmYXVsdCAtIG5vdCBpbnN0YWxsZWRcbiAgICovXG4gIHJlYWRvbmx5IGRvdG5ldD86IFRvb2xSZXF1aXJlbWVudDtcbn1cblxuLyoqXG4gKiBWZXJzaW9uIHJlcXVpcmVtZW50IGZvciB0b29scy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUb29sUmVxdWlyZW1lbnQge1xuICByZWFkb25seSB2ZXJzaW9uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogVGhlIGF2YWlsYWJsZSBzY29wZXMgYW5kIGFjY2VzcyB2YWx1ZXMgZm9yIHdvcmtmbG93IHBlcm1pc3Npb25zLiBJZiB5b3VcbiAqIHNwZWNpZnkgdGhlIGFjY2VzcyBmb3IgYW55IG9mIHRoZXNlIHNjb3BlcywgYWxsIHRob3NlIHRoYXQgYXJlIG5vdFxuICogc3BlY2lmaWVkIGFyZSBzZXQgdG8gYEpvYlBlcm1pc3Npb24uTk9ORWAsIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgYmVoYXZpb3JcbiAqIHdoZW4gbm9uZSBpcyBzcGVjaWZpZWQuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9hY3Rpb25zL3dyaXRpbmctd29ya2Zsb3dzL2Nob29zaW5nLXdoYXQteW91ci13b3JrZmxvdy1kb2VzL2NvbnRyb2xsaW5nLXBlcm1pc3Npb25zLWZvci1naXRodWJfdG9rZW4jZGVmaW5pbmctYWNjZXNzLWZvci10aGUtZ2l0aHViX3Rva2VuLXBlcm1pc3Npb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSm9iUGVybWlzc2lvbnMge1xuICByZWFkb25seSBhY3Rpb25zPzogSm9iUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgYXR0ZXN0YXRpb25zPzogSm9iUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgY2hlY2tzPzogSm9iUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgY29udGVudHM/OiBKb2JQZXJtaXNzaW9uO1xuICByZWFkb25seSBkZXBsb3ltZW50cz86IEpvYlBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGlkVG9rZW4/OiBKb2JQZXJtaXNzaW9uO1xuICByZWFkb25seSBpc3N1ZXM/OiBKb2JQZXJtaXNzaW9uO1xuICByZWFkb25seSBtb2RlbHM/OiBKb2JQZXJtaXNzaW9uO1xuICByZWFkb25seSBkaXNjdXNzaW9ucz86IEpvYlBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHBhY2thZ2VzPzogSm9iUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgcGFnZXM/OiBKb2JQZXJtaXNzaW9uO1xuICByZWFkb25seSBwdWxsUmVxdWVzdHM/OiBKb2JQZXJtaXNzaW9uO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgcmVtb3ZlZCBieSBHaXRIdWJcbiAgICovXG4gIHJlYWRvbmx5IHJlcG9zaXRvcnlQcm9qZWN0cz86IEpvYlBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHNlY3VyaXR5RXZlbnRzPzogSm9iUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgc3RhdHVzZXM/OiBKb2JQZXJtaXNzaW9uO1xufVxuXG4vKipcbiAqIFRoZSBwZXJtaXNzaW9ucyBhdmFpbGFibGUgdG8gYSBHaXRIdWIgQXBwLlxuICpcbiAqIFR5cGljYWxseSBhIHRva2VuIGZvciBhIEdpdEh1YiBBcHAgaGFzIGFsbCB0aGUgYXZhaWxhYmxlIHNjb3Blcy9wZXJtaXNzaW9ucyBhdmFpbGFibGUgdG8gdGhlIGFwcFxuICogaXRzZWxmOyBob3dldmVyLCBhIG1vcmUgbGltaXRlZCBzZXQgb2YgcGVybWlzc2lvbnMgY2FuIGJlIHNwZWNpZmllZC4gV2hlbiBwZXJtaXNzaW9ucyBhcmUgcHJvdmlkZWQsXG4gKiAqKm9ubHkqKiB0aGUgc3BlY2lmaWVkIHBlcm1pc3Npb25zIGFyZSBncmFudGVkIHRvIHRoZSB0b2tlbi5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL3Jlc3QvYXBwcy9hcHBzP2FwaVZlcnNpb249MjAyMi0xMS0yOCNjcmVhdGUtYW4taW5zdGFsbGF0aW9uLWFjY2Vzcy10b2tlbi1mb3ItYW4tYXBwXG4gKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hY3Rpb25zL2NyZWF0ZS1naXRodWItYXBwLXRva2VuL2Jsb2IvbWFpbi9hY3Rpb24ueW1sI0wyOFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFwcFBlcm1pc3Npb25zIHtcbiAgcmVhZG9ubHkgYWN0aW9ucz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGF0dGVzdGF0aW9ucz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGFkbWluaXN0cmF0aW9uPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgY2hlY2tzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgY29kZXNwYWNlcz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGNvbnRlbnRzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgZGVwZW5kYWJvdFNlY3JldHM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBkZXBsb3ltZW50cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGVtYWlsQWRkcmVzc2VzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgZW52aXJvbm1lbnRzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgZm9sbG93ZXJzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgZ2l0U3NoS2V5cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGdwZ0tleXM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBpbnRlcmFjdGlvbkxpbWl0cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGlzc3Vlcz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG1lbWJlcnM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBtZXRhZGF0YT86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvbkFkbWluaXN0cmF0aW9uPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uQW5ub3VuY2VtZW50QmFubmVycz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvbkNvcGlsb3RTZWF0TWFuYWdlbWVudD86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvbkN1c3RvbU9yZ1JvbGVzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uQ3VzdG9tUHJvcGVydGllcz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvbkN1c3RvbVJvbGVzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uRXZlbnRzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uSG9va3M/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBvcmdhbml6YXRpb25QYWNrYWdlcz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvblBlcnNvbmFsQWNjZXNzVG9rZW5SZXF1ZXN0cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvblBlcnNvbmFsQWNjZXNzVG9rZW5zPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uUGxhbj86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvblByb2plY3RzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uU2VjcmV0cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvblNlbGZIb3N0ZWRSdW5uZXJzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnbmFpemF0aW9uVXNlckJsb2NraW5nPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgcGFja2FnZXM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBwYWdlcz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBwdWxsUmVxdWVzdHM/OiBBcHBQZXJtaXNzaW9uO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgcmVtb3ZlZCBieSBHaXRIdWJcbiAgICovXG4gIHJlYWRvbmx5IHJlcG9zaXRvcnlBbm5vdW5jZW1lbnRCYW5uZXJzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgcmVwb3NpdG9yeUN1c3RvbVByb3BlcnRpZXM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSByZXBvc2l0b3J5SG9va3M/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSByZXBvc2l0b3J5UHJvamVjdHM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBzZWNyZXRTY2FubmluZ0FsZXJ0cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHNlY3JldHM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBzZWN1cml0eUV2ZW50cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHNpbmdsZUZpbGU/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBzdGFycmluZz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHN0YXR1c2VzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgdGVhbURpc2N1c3Npb25zPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgdnVsbmVyYWJpbGl0eUFsZXJ0cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHdvcmtmbG93cz86IEFwcFBlcm1pc3Npb247XG59XG5cbi8qKlxuICogQWNjZXNzIGxldmVsIGZvciB3b3JrZmxvdyBwZXJtaXNzaW9uIHNjb3Blcy5cbiAqL1xuZXhwb3J0IGVudW0gSm9iUGVybWlzc2lvbiB7XG4gIC8qKiBSZWFkLW9ubHkgYWNjZXNzICovXG4gIFJFQUQgPSBcInJlYWRcIixcblxuICAvKiogUmVhZC13cml0ZSBhY2Nlc3MgKi9cbiAgV1JJVEUgPSBcIndyaXRlXCIsXG5cbiAgLyoqIE5vIGFjY2VzcyBhdCBhbGwgKi9cbiAgTk9ORSA9IFwibm9uZVwiLFxufVxuXG4vKipcbiAqIFRoZSBwZXJtaXNzaW9ucyBhdmFpbGFibGUgZm9yIGFuIGFjY2VzcyB0b2tlbiBmb3IgYSBHaXRIdWIgQXBwLlxuICovXG5leHBvcnQgZW51bSBBcHBQZXJtaXNzaW9uIHtcbiAgLyoqIFJlYWQtb25seSBhY2NjZXNzICovXG4gIFJFQUQgPSBcInJlYWRcIixcbiAgLyoqIFJlYWQtd3JpdGUgYWNjZXNzICovXG4gIFdSSVRFID0gXCJ3cml0ZVwiLFxuICAvKipcbiAgICogUmVhZC13cml0ZSBhbmQgYWRtaW4gYWNjZXNzLlxuICAgKlxuICAgKiBOb3QgYWxsIHBlcm1pc3Npb25zIHN1cHBvcnQgYGFkbWluYC5cbiAgICovXG4gIEFETUlOID0gXCJhZG1pblwiLFxufVxuXG4vKipcbiAqIEFuIG91dHB1dCBiaW5kaW5nIGZvciBhIGpvYi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBKb2JTdGVwT3V0cHV0IHtcbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgc3RlcCB0aGF0IGV4cG9zZXMgdGhlIG91dHB1dC5cbiAgICovXG4gIHJlYWRvbmx5IHN0ZXBJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgam9iIG91dHB1dCB0aGF0IGlzIGJlaW5nIGJvdW5kLlxuICAgKi9cbiAgcmVhZG9ubHkgb3V0cHV0TmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIERlZmF1bHQgc2V0dGluZ3MgZm9yIGFsbCBzdGVwcyBpbiB0aGUgam9iLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEpvYkRlZmF1bHRzIHtcbiAgLyoqIERlZmF1bHQgcnVuIHNldHRpbmdzLiAqL1xuICByZWFkb25seSBydW4/OiBSdW5TZXR0aW5ncztcbn1cblxuLyoqXG4gKiBSdW4gc2V0dGluZ3MgZm9yIGEgam9iLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJ1blNldHRpbmdzIHtcbiAgLyoqXG4gICAqIFdoaWNoIHNoZWxsIHRvIHVzZSBmb3IgcnVubmluZyB0aGUgc3RlcC5cbiAgICpcbiAgICogQGV4YW1wbGUgXCJiYXNoXCJcbiAgICovXG4gIHJlYWRvbmx5IHNoZWxsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXb3JraW5nIGRpcmVjdG9yeSB0byB1c2Ugd2hlbiBydW5uaW5nIHRoZSBzdGVwLlxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2luZ0RpcmVjdG9yeT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBGaWVsZHMgdGhhdCBkZXNjcmliZSB0aGUgSG93LCBXaHksIFdoZW4sIGFuZCBXaG8gb2YgYSBTdGVwLlxuICogVGhlc2UgZmllbGRzIGNhbiBoYXZlIG5vbmUgcHJlc2VudCwgYnV0IGNhbiBiZSBwcmVzZW50IG9uIGV2ZXJ5IFN0ZXAsIGFuZCBoYXZlIG5vIGVmZmVjdCBvbiBvbmUgYW5vdGhlci5cbiAqXG4gKiBUaGlzIHN0YW5kcyBpbiBjb250cmFzdCB0byB0aGUgQ29tbWFuZCAobm9uLUNvbmZpZ3VyYXRpb24pIGZpZWxkcywgd2hpY2ggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSwgYW5kIGRlc2NyaWJlIHRoZSBXaGF0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0ZXBDb25maWd1cmF0aW9uIHtcbiAgLyoqXG4gICAqIEEgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBzdGVwLiBZb3UgY2FuIHVzZSB0aGUgaWQgdG8gcmVmZXJlbmNlIHRoZVxuICAgKiBzdGVwIGluIGNvbnRleHRzLlxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFlvdSBjYW4gdXNlIHRoZSBpZiBjb25kaXRpb25hbCB0byBwcmV2ZW50IGEgam9iIGZyb20gcnVubmluZyB1bmxlc3MgYVxuICAgKiBjb25kaXRpb24gaXMgbWV0LiBZb3UgY2FuIHVzZSBhbnkgc3VwcG9ydGVkIGNvbnRleHQgYW5kIGV4cHJlc3Npb24gdG9cbiAgICogY3JlYXRlIGEgY29uZGl0aW9uYWwuXG4gICAqL1xuICByZWFkb25seSBpZj86IHN0cmluZztcblxuICAvKipcbiAgICogQSBuYW1lIGZvciB5b3VyIHN0ZXAgdG8gZGlzcGxheSBvbiBHaXRIdWIuXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTZXRzIGVudmlyb25tZW50IHZhcmlhYmxlcyBmb3Igc3RlcHMgdG8gdXNlIGluIHRoZSBydW5uZXIgZW52aXJvbm1lbnQuXG4gICAqIFlvdSBjYW4gYWxzbyBzZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzIGZvciB0aGUgZW50aXJlIHdvcmtmbG93IG9yIGEgam9iLlxuICAgKi9cbiAgcmVhZG9ubHkgZW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGEgd29ya2luZyBkaXJlY3RvcnkgZm9yIGEgc3RlcC5cbiAgICogT3ZlcnJpZGVzIGEgam9iJ3Mgd29ya2luZyBkaXJlY3RvcnkuXG4gICAqL1xuICByZWFkb25seSB3b3JraW5nRGlyZWN0b3J5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZXMgdGhlIGRlZmF1bHQgc2hlbGwgc2V0dGluZ3MgaW4gdGhlIHJ1bm5lcidzIG9wZXJhdGluZyBzeXN0ZW0gYW5kIHRoZSBqb2IncyBkZWZhdWx0LlxuICAgKlxuICAgKiBSZWZlciB0byBHaXRIdWIgZG9jdW1lbnRhdGlvbiBmb3IgYWxsb3dlZCB2YWx1ZXMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vYWN0aW9ucy93cml0aW5nLXdvcmtmbG93cy93b3JrZmxvdy1zeW50YXgtZm9yLWdpdGh1Yi1hY3Rpb25zI2pvYnNqb2JfaWRzdGVwc3NoZWxsXG4gICAqL1xuICByZWFkb25seSBzaGVsbD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBUaGlzIGNvbnRhaW5zIHRoZSBmaWVsZHMgdGhhdCBhcmUgY29tbW9uIGFtb25nc3QgYm90aDpcbiAqIC0gSm9iU3RlcCwgd2hpY2ggaXMgYSBzdGVwIHRoYXQgaXMgcGFydCBvZiBhIEpvYiBpbiBHaXRodWIgQWN0aW9ucy4gVGhpcyBpcyBieSBmYXIgdGhlIG1vc3QgY29tbW9uIHVzZSBjYXNlLlxuICogLSBUaGUgbWV0YWRhdGEgZmlsZSBgYWN0aW9uLnlhbWxgIHRoYXQgaXMgdXNlZCB0byBkZWZpbmUgYW4gQWN0aW9uIHdoZW4geW91IGFyZSBjcmVhdGluZyBvbmUuIEFzIGluLCBpZiB5b3Ugd2VyZSBjcmVhdGluZyBhbiBBY3Rpb24gdG8gYmUgdXNlZCBpbiBhIEpvYlN0ZXAuXG4gKiBUaGVyZSBpcyBzb21lIG92ZXJsYXAgYmV0d2VlbiB0aGUgdHdvLCBhbmQgdGhpcyBjYXB0dXJlcyB0aGF0IG92ZXJsYXAuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9hY3Rpb25zL2NyZWF0aW5nLWFjdGlvbnMvbWV0YWRhdGEtc3ludGF4LWZvci1naXRodWItYWN0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0ZXAgZXh0ZW5kcyBTdGVwQ29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBTZWxlY3RzIGFuIGFjdGlvbiB0byBydW4gYXMgcGFydCBvZiBhIHN0ZXAgaW4geW91ciBqb2IuIEFuIGFjdGlvbiBpcyBhXG4gICAqIHJldXNhYmxlIHVuaXQgb2YgY29kZS4gWW91IGNhbiB1c2UgYW4gYWN0aW9uIGRlZmluZWQgaW4gdGhlIHNhbWVcbiAgICogcmVwb3NpdG9yeSBhcyB0aGUgd29ya2Zsb3csIGEgcHVibGljIHJlcG9zaXRvcnksIG9yIGluIGEgcHVibGlzaGVkIERvY2tlclxuICAgKiBjb250YWluZXIgaW1hZ2UuXG4gICAqL1xuICByZWFkb25seSB1c2VzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSdW5zIGNvbW1hbmQtbGluZSBwcm9ncmFtcyB1c2luZyB0aGUgb3BlcmF0aW5nIHN5c3RlbSdzIHNoZWxsLiBJZiB5b3UgZG9cbiAgICogbm90IHByb3ZpZGUgYSBuYW1lLCB0aGUgc3RlcCBuYW1lIHdpbGwgZGVmYXVsdCB0byB0aGUgdGV4dCBzcGVjaWZpZWQgaW5cbiAgICogdGhlIHJ1biBjb21tYW5kLlxuICAgKi9cbiAgcmVhZG9ubHkgcnVuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIG1hcCBvZiB0aGUgaW5wdXQgcGFyYW1ldGVycyBkZWZpbmVkIGJ5IHRoZSBhY3Rpb24uIEVhY2ggaW5wdXQgcGFyYW1ldGVyXG4gICAqIGlzIGEga2V5L3ZhbHVlIHBhaXIuIElucHV0IHBhcmFtZXRlcnMgYXJlIHNldCBhcyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4gICAqIFRoZSB2YXJpYWJsZSBpcyBwcmVmaXhlZCB3aXRoIElOUFVUXyBhbmQgY29udmVydGVkIHRvIHVwcGVyIGNhc2UuXG4gICAqL1xuICByZWFkb25seSB3aXRoPzogUmVjb3JkPHN0cmluZywgYW55Pjtcbn1cblxuLyoqXG4gKiBUaGVzZSBzZXR0aW5ncyBhcmUgdW5pcXVlIHRvIGEgSm9iU3RlcCBmcm9tIHRoZSBmaWVsZHMgY29udGFpbmVkIHdpdGhpbiB0aGUgbWV0YWRhdGEgYWN0aW9uLnlhbWwgZmlsZSBwcmVzZW50IGluIHdoZW4gY3JlYXRpbmcgYSBuZXcgR2l0SHViIEFjdGlvbi5cbiAqIFRoZXNlIGZpZWxkcyBhcmUgbm90IHByZXNlbnQgaW4gYWN0aW9uLnltbCwgYnV0IGFyZSBpbiBKb2JTdGVwLCB3aGljaCBhcmUgdXNpbmcgd2hlbiBjcmVhdGluZyB3b3JrZmxvd3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSm9iU3RlcENvbmZpZ3VyYXRpb24gZXh0ZW5kcyBTdGVwQ29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBQcmV2ZW50cyBhIGpvYiBmcm9tIGZhaWxpbmcgd2hlbiBhIHN0ZXAgZmFpbHMuIFNldCB0byB0cnVlIHRvIGFsbG93IGEgam9iXG4gICAqIHRvIHBhc3Mgd2hlbiB0aGlzIHN0ZXAgZmFpbHMuXG4gICAqL1xuICByZWFkb25seSBjb250aW51ZU9uRXJyb3I/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgbWludXRlcyB0byBydW4gdGhlIHN0ZXAgYmVmb3JlIGtpbGxpbmcgdGhlIHByb2Nlc3MuXG4gICAqL1xuICByZWFkb25seSB0aW1lb3V0TWludXRlcz86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBKb2JTdGVwcyBydW4gYXMgcGFydCBvZiBhIEdpdEh1YiBXb3JrZmxvdyBKb2IuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9hY3Rpb25zL3VzaW5nLXdvcmtmbG93cy93b3JrZmxvdy1zeW50YXgtZm9yLWdpdGh1Yi1hY3Rpb25zI2pvYnNqb2JfaWRzdGVwc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEpvYlN0ZXAgZXh0ZW5kcyBTdGVwLCBKb2JTdGVwQ29uZmlndXJhdGlvbiB7fVxuXG4vKipcbiAqIEEgc3RyYXRlZ3kgY3JlYXRlcyBhIGJ1aWxkIG1hdHJpeCBmb3IgeW91ciBqb2JzLiBZb3UgY2FuIGRlZmluZSBkaWZmZXJlbnRcbiAqIHZhcmlhdGlvbnMgdG8gcnVuIGVhY2ggam9iIGluLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEpvYlN0cmF0ZWd5IHtcbiAgLyoqXG4gICAqIFlvdSBjYW4gZGVmaW5lIGEgbWF0cml4IG9mIGRpZmZlcmVudCBqb2IgY29uZmlndXJhdGlvbnMuIEEgbWF0cml4IGFsbG93c1xuICAgKiB5b3UgdG8gY3JlYXRlIG11bHRpcGxlIGpvYnMgYnkgcGVyZm9ybWluZyB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaW4gYVxuICAgKiBzaW5nbGUgam9iIGRlZmluaXRpb24uIEZvciBleGFtcGxlLCB5b3UgY2FuIHVzZSBhIG1hdHJpeCB0byBjcmVhdGUgam9ic1xuICAgKiBmb3IgbW9yZSB0aGFuIG9uZSBzdXBwb3J0ZWQgdmVyc2lvbiBvZiBhIHByb2dyYW1taW5nIGxhbmd1YWdlLCBvcGVyYXRpbmdcbiAgICogc3lzdGVtLCBvciB0b29sLiBBIG1hdHJpeCByZXVzZXMgdGhlIGpvYidzIGNvbmZpZ3VyYXRpb24gYW5kIGNyZWF0ZXMgYVxuICAgKiBqb2IgZm9yIGVhY2ggbWF0cml4IHlvdSBjb25maWd1cmUuXG4gICAqXG4gICAqIEEgam9iIG1hdHJpeCBjYW4gZ2VuZXJhdGUgYSBtYXhpbXVtIG9mIDI1NiBqb2JzIHBlciB3b3JrZmxvdyBydW4uIFRoaXNcbiAgICogbGltaXQgYWxzbyBhcHBsaWVzIHRvIHNlbGYtaG9zdGVkIHJ1bm5lcnMuXG4gICAqL1xuICByZWFkb25seSBtYXRyaXg/OiBKb2JNYXRyaXg7XG5cbiAgLyoqXG4gICAqIFdoZW4gc2V0IHRvIHRydWUsIEdpdEh1YiBjYW5jZWxzIGFsbCBpbi1wcm9ncmVzcyBqb2JzIGlmIGFueSBtYXRyaXggam9iXG4gICAqIGZhaWxzLiBEZWZhdWx0OiB0cnVlXG4gICAqL1xuICByZWFkb25seSBmYWlsRmFzdD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBqb2JzIHRoYXQgY2FuIHJ1biBzaW11bHRhbmVvdXNseSB3aGVuIHVzaW5nIGFcbiAgICogbWF0cml4IGpvYiBzdHJhdGVneS4gQnkgZGVmYXVsdCwgR2l0SHViIHdpbGwgbWF4aW1pemUgdGhlIG51bWJlciBvZiBqb2JzXG4gICAqIHJ1biBpbiBwYXJhbGxlbCBkZXBlbmRpbmcgb24gdGhlIGF2YWlsYWJsZSBydW5uZXJzIG9uIEdpdEh1Yi1ob3N0ZWRcbiAgICogdmlydHVhbCBtYWNoaW5lcy5cbiAgICovXG4gIHJlYWRvbmx5IG1heFBhcmFsbGVsPzogbnVtYmVyO1xufVxuXG50eXBlIEpvYk1hdHJpeFZhbHVlID0gc3RyaW5nIHwgYm9vbGVhbiB8IG51bWJlcjtcblxuLyoqXG4gKiBBIGpvYiBtYXRyaXguXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSm9iTWF0cml4IHtcbiAgLyoqXG4gICAqIEVhY2ggb3B0aW9uIHlvdSBkZWZpbmUgaW4gdGhlIG1hdHJpeCBoYXMgYSBrZXkgYW5kIHZhbHVlLiBUaGUga2V5cyB5b3VcbiAgICogZGVmaW5lIGJlY29tZSBwcm9wZXJ0aWVzIGluIHRoZSBtYXRyaXggY29udGV4dCBhbmQgeW91IGNhbiByZWZlcmVuY2UgdGhlXG4gICAqIHByb3BlcnR5IGluIG90aGVyIGFyZWFzIG9mIHlvdXIgd29ya2Zsb3cgZmlsZS4gRm9yIGV4YW1wbGUsIGlmIHlvdSBkZWZpbmVcbiAgICogdGhlIGtleSBvcyB0aGF0IGNvbnRhaW5zIGFuIGFycmF5IG9mIG9wZXJhdGluZyBzeXN0ZW1zLCB5b3UgY2FuIHVzZSB0aGVcbiAgICogbWF0cml4Lm9zIHByb3BlcnR5IGFzIHRoZSB2YWx1ZSBvZiB0aGUgcnVucy1vbiBrZXl3b3JkIHRvIGNyZWF0ZSBhIGpvYlxuICAgKiBmb3IgZWFjaCBvcGVyYXRpbmcgc3lzdGVtLlxuICAgKi9cbiAgcmVhZG9ubHkgZG9tYWluPzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgSm9iTWF0cml4VmFsdWVbXT47XG5cbiAgLyoqXG4gICAqIFlvdSBjYW4gYWRkIGFkZGl0aW9uYWwgY29uZmlndXJhdGlvbiBvcHRpb25zIHRvIGEgYnVpbGQgbWF0cml4IGpvYiB0aGF0XG4gICAqIGFscmVhZHkgZXhpc3RzLiBGb3IgZXhhbXBsZSwgaWYgeW91IHdhbnQgdG8gdXNlIGEgc3BlY2lmaWMgdmVyc2lvbiBvZiBucG1cbiAgICogd2hlbiB0aGUgam9iIHRoYXQgdXNlcyB3aW5kb3dzLWxhdGVzdCBhbmQgdmVyc2lvbiA4IG9mIG5vZGUgcnVucywgeW91IGNhblxuICAgKiB1c2UgaW5jbHVkZSB0byBzcGVjaWZ5IHRoYXQgYWRkaXRpb25hbCBvcHRpb24uXG4gICAqL1xuICByZWFkb25seSBpbmNsdWRlPzogQXJyYXk8UmVjb3JkPHN0cmluZywgSm9iTWF0cml4VmFsdWU+PjtcblxuICAvKipcbiAgICogWW91IGNhbiByZW1vdmUgYSBzcGVjaWZpYyBjb25maWd1cmF0aW9ucyBkZWZpbmVkIGluIHRoZSBidWlsZCBtYXRyaXhcbiAgICogdXNpbmcgdGhlIGV4Y2x1ZGUgb3B0aW9uLiBVc2luZyBleGNsdWRlIHJlbW92ZXMgYSBqb2IgZGVmaW5lZCBieSB0aGVcbiAgICogYnVpbGQgbWF0cml4LlxuICAgKi9cbiAgcmVhZG9ubHkgZXhjbHVkZT86IEFycmF5PFJlY29yZDxzdHJpbmcsIEpvYk1hdHJpeFZhbHVlPj47XG59XG5cbi8qKlxuICogT3B0aW9ucyBwZXJ0YWluaW5nIHRvIGNvbnRhaW5lciBlbnZpcm9ubWVudHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGFpbmVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgRG9ja2VyIGltYWdlIHRvIHVzZSBhcyB0aGUgY29udGFpbmVyIHRvIHJ1biB0aGUgYWN0aW9uLiBUaGUgdmFsdWUgY2FuXG4gICAqIGJlIHRoZSBEb2NrZXIgSHViIGltYWdlIG5hbWUgb3IgYSByZWdpc3RyeSBuYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgaW1hZ2U6IHN0cmluZztcblxuICAvKipcbiAgICogZiB0aGUgaW1hZ2UncyBjb250YWluZXIgcmVnaXN0cnkgcmVxdWlyZXMgYXV0aGVudGljYXRpb24gdG8gcHVsbCB0aGVcbiAgICogaW1hZ2UsIHlvdSBjYW4gdXNlIGNyZWRlbnRpYWxzIHRvIHNldCBhIG1hcCBvZiB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLlxuICAgKiBUaGUgY3JlZGVudGlhbHMgYXJlIHRoZSBzYW1lIHZhbHVlcyB0aGF0IHlvdSB3b3VsZCBwcm92aWRlIHRvIHRoZSBkb2NrZXJcbiAgICogbG9naW4gY29tbWFuZC5cbiAgICovXG4gIHJlYWRvbmx5IGNyZWRlbnRpYWxzPzogQ29udGFpbmVyQ3JlZGVudGlhbHM7XG5cbiAgLyoqXG4gICAqIFNldHMgYSBtYXAgb2YgZW52aXJvbm1lbnQgdmFyaWFibGVzIGluIHRoZSBjb250YWluZXIuXG4gICAqL1xuICByZWFkb25seSBlbnY/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXG4gIC8qKlxuICAgKiBTZXRzIGFuIGFycmF5IG9mIHBvcnRzIHRvIGV4cG9zZSBvbiB0aGUgY29udGFpbmVyLlxuICAgKi9cbiAgcmVhZG9ubHkgcG9ydHM/OiBudW1iZXJbXTtcblxuICAvKipcbiAgICogU2V0cyBhbiBhcnJheSBvZiB2b2x1bWVzIGZvciB0aGUgY29udGFpbmVyIHRvIHVzZS4gWW91IGNhbiB1c2Ugdm9sdW1lcyB0b1xuICAgKiBzaGFyZSBkYXRhIGJldHdlZW4gc2VydmljZXMgb3Igb3RoZXIgc3RlcHMgaW4gYSBqb2IuIFlvdSBjYW4gc3BlY2lmeVxuICAgKiBuYW1lZCBEb2NrZXIgdm9sdW1lcywgYW5vbnltb3VzIERvY2tlciB2b2x1bWVzLCBvciBiaW5kIG1vdW50cyBvbiB0aGVcbiAgICogaG9zdC5cbiAgICpcbiAgICogVG8gc3BlY2lmeSBhIHZvbHVtZSwgeW91IHNwZWNpZnkgdGhlIHNvdXJjZSBhbmQgZGVzdGluYXRpb24gcGF0aDpcbiAgICogYDxzb3VyY2U+OjxkZXN0aW5hdGlvblBhdGg+YC5cbiAgICovXG4gIHJlYWRvbmx5IHZvbHVtZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBEb2NrZXIgY29udGFpbmVyIHJlc291cmNlIG9wdGlvbnMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmRvY2tlci5jb20vZW5naW5lL3JlZmVyZW5jZS9jb21tYW5kbGluZS9jcmVhdGUvI29wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IG9wdGlvbnM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBDcmVkZW50aWFscyB0byB1c2UgdG8gYXV0aGVudGljYXRlIHRvIERvY2tlciByZWdpc3RyaWVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhaW5lckNyZWRlbnRpYWxzIHtcbiAgLyoqIFRoZSB1c2VybmFtZS4gKi9cbiAgcmVhZG9ubHkgdXNlcm5hbWU6IHN0cmluZztcblxuICAvKiogVGhlIHBhc3N3b3JkLiAqL1xuICByZWFkb25seSBwYXNzd29yZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFRoZSBzZXQgb2YgYXZhaWxhYmxlIHRyaWdnZXJzIGZvciBHaXRIdWIgV29ya2Zsb3dzLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vYWN0aW9ucy9yZWZlcmVuY2UvZXZlbnRzLXRoYXQtdHJpZ2dlci13b3JrZmxvd3NcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUcmlnZ2VycyB7XG4gIC8vI3JlZ2lvbiBTY2hlZHVsZWQgZXZlbnRzXG4gIC8qKlxuICAgKiBZb3UgY2FuIHNjaGVkdWxlIGEgd29ya2Zsb3cgdG8gcnVuIGF0IHNwZWNpZmljIFVUQyB0aW1lcyB1c2luZyBQT1NJWCBjcm9uXG4gICAqIHN5bnRheC4gU2NoZWR1bGVkIHdvcmtmbG93cyBydW4gb24gdGhlIGxhdGVzdCBjb21taXQgb24gdGhlIGRlZmF1bHQgb3JcbiAgICogYmFzZSBicmFuY2guIFRoZSBzaG9ydGVzdCBpbnRlcnZhbCB5b3UgY2FuIHJ1biBzY2hlZHVsZWQgd29ya2Zsb3dzIGlzXG4gICAqIG9uY2UgZXZlcnkgNSBtaW51dGVzLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vcHVicy5vcGVuZ3JvdXAub3JnL29ubGluZXB1YnMvOTY5OTkxOTc5OS91dGlsaXRpZXMvY3JvbnRhYi5odG1sI3RhZ18yMF8yNV8wN1xuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGU/OiBDcm9uU2NoZWR1bGVPcHRpb25zW107XG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiBNYW51YWwgZXZlbnRzXG4gIC8qKlxuICAgKiBZb3UgY2FuIGNvbmZpZ3VyZSBjdXN0b20tZGVmaW5lZCBpbnB1dCBwcm9wZXJ0aWVzLCBkZWZhdWx0IGlucHV0IHZhbHVlcyxcbiAgICogYW5kIHJlcXVpcmVkIGlucHV0cyBmb3IgdGhlIGV2ZW50IGRpcmVjdGx5IGluIHlvdXIgd29ya2Zsb3cuIFdoZW4gdGhlXG4gICAqIHdvcmtmbG93IHJ1bnMsIHlvdSBjYW4gYWNjZXNzIHRoZSBpbnB1dCB2YWx1ZXMgaW4gdGhlIGdpdGh1Yi5ldmVudC5pbnB1dHNcbiAgICogY29udGV4dC5cbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93RGlzcGF0Y2g/OiBXb3JrZmxvd0Rpc3BhdGNoT3B0aW9ucztcblxuICAvKipcbiAgICogWW91IGNhbiB1c2UgdGhlIEdpdEh1YiBBUEkgdG8gdHJpZ2dlciBhIHdlYmhvb2sgZXZlbnQgY2FsbGVkXG4gICAqIHJlcG9zaXRvcnlfZGlzcGF0Y2ggd2hlbiB5b3Ugd2FudCB0byB0cmlnZ2VyIGEgd29ya2Zsb3cgZm9yIGFjdGl2aXR5IHRoYXRcbiAgICogaGFwcGVucyBvdXRzaWRlIG9mIEdpdEh1Yi5cbiAgICovXG4gIHJlYWRvbmx5IHJlcG9zaXRvcnlEaXNwYXRjaD86IFJlcG9zaXRvcnlEaXNwYXRjaE9wdGlvbnM7XG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiBXb3JrZmxvdyByZXVzZSBldmVudHNcbiAgLyoqXG4gICAqIENhbiBiZSBjYWxsZWQgZnJvbSBhbm90aGVyIHdvcmtmbG93XG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vYWN0aW9ucy9sZWFybi1naXRodWItYWN0aW9ucy9yZXVzaW5nLXdvcmtmbG93c1xuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dDYWxsPzogV29ya2Zsb3dDYWxsT3B0aW9ucztcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIFdlYmhvb2sgZXZlbnRzXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgYnJhbmNoX3Byb3RlY3Rpb25fcnVsZSBldmVudCBvY2N1cnMuXG4gICAqL1xuICByZWFkb25seSBicmFuY2hQcm90ZWN0aW9uUnVsZT86IEJyYW5jaFByb3RlY3Rpb25SdWxlT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgdGhlIGNoZWNrX3J1biBldmVudCBvY2N1cnMuXG4gICAqL1xuICByZWFkb25seSBjaGVja1J1bj86IENoZWNrUnVuT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgdGhlIGNoZWNrX3N1aXRlIGV2ZW50IG9jY3Vycy5cbiAgICovXG4gIHJlYWRvbmx5IGNoZWNrU3VpdGU/OiBDaGVja1N1aXRlT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgc29tZW9uZSBjcmVhdGVzIGEgYnJhbmNoIG9yIHRhZywgd2hpY2hcbiAgICogdHJpZ2dlcnMgdGhlIGNyZWF0ZSBldmVudC5cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZT86IENyZWF0ZU9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHNvbWVvbmUgZGVsZXRlcyBhIGJyYW5jaCBvciB0YWcsIHdoaWNoXG4gICAqIHRyaWdnZXJzIHRoZSBkZWxldGUgZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBkZWxldGU/OiBEZWxldGVPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSBzb21lb25lIGNyZWF0ZXMgYSBkZXBsb3ltZW50LCB3aGljaCB0cmlnZ2Vyc1xuICAgKiB0aGUgZGVwbG95bWVudCBldmVudC4gRGVwbG95bWVudHMgY3JlYXRlZCB3aXRoIGEgY29tbWl0IFNIQSBtYXkgbm90IGhhdmVcbiAgICogYSBHaXQgcmVmLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVwbG95bWVudD86IERlcGxveW1lbnRPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSBhIHRoaXJkIHBhcnR5IHByb3ZpZGVzIGEgZGVwbG95bWVudCBzdGF0dXMsXG4gICAqIHdoaWNoIHRyaWdnZXJzIHRoZSBkZXBsb3ltZW50X3N0YXR1cyBldmVudC4gRGVwbG95bWVudHMgY3JlYXRlZCB3aXRoIGFcbiAgICogY29tbWl0IFNIQSBtYXkgbm90IGhhdmUgYSBHaXQgcmVmLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVwbG95bWVudFN0YXR1cz86IERlcGxveW1lbnRTdGF0dXNPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgZGlzY3Vzc2lvbiBldmVudCBvY2N1cnMuIE1vcmUgdGhhbiBvbmUgYWN0aXZpdHkgdHlwZSB0cmlnZ2VycyB0aGlzIGV2ZW50LlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2dyYXBocWwvZ3VpZGVzL3VzaW5nLXRoZS1ncmFwaHFsLWFwaS1mb3ItZGlzY3Vzc2lvbnNcbiAgICovXG4gIHJlYWRvbmx5IGRpc2N1c3Npb24/OiBEaXNjdXNzaW9uT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgdGhlIGRpc2N1c3Npb25fY29tbWVudCBldmVudCBvY2N1cnMuIE1vcmUgdGhhbiBvbmUgYWN0aXZpdHkgdHlwZSB0cmlnZ2VycyB0aGlzIGV2ZW50LlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2dyYXBocWwvZ3VpZGVzL3VzaW5nLXRoZS1ncmFwaHFsLWFwaS1mb3ItZGlzY3Vzc2lvbnNcbiAgICovXG4gIHJlYWRvbmx5IGRpc2N1c3Npb25Db21tZW50PzogRGlzY3Vzc2lvbkNvbW1lbnRPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB3aGVuIHNvbWVvbmUgZm9ya3MgYSByZXBvc2l0b3J5LCB3aGljaFxuICAgKiB0cmlnZ2VycyB0aGUgZm9yayBldmVudC5cbiAgICovXG4gIHJlYWRvbmx5IGZvcms/OiBGb3JrT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IHdoZW4gc29tZW9uZSBjcmVhdGVzIG9yIHVwZGF0ZXMgYSBXaWtpIHBhZ2UsIHdoaWNoXG4gICAqIHRyaWdnZXJzIHRoZSBnb2xsdW0gZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBnb2xsdW0/OiBHb2xsdW1PcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgaXNzdWVfY29tbWVudCBldmVudCBvY2N1cnMuXG4gICAqL1xuICByZWFkb25seSBpc3N1ZUNvbW1lbnQ/OiBJc3N1ZUNvbW1lbnRPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgaXNzdWVzIGV2ZW50IG9jY3Vycy5cbiAgICovXG4gIHJlYWRvbmx5IGlzc3Vlcz86IElzc3Vlc09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSBsYWJlbCBldmVudCBvY2N1cnMuXG4gICAqL1xuICByZWFkb25seSBsYWJlbD86IExhYmVsT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IHdoZW4gYSBwdWxsIHJlcXVlc3QgaXMgYWRkZWQgdG8gYSBtZXJnZSBxdWV1ZSwgd2hpY2hcbiAgICogYWRkcyB0aGUgcHVsbCByZXF1ZXN0IHRvIGEgbWVyZ2UgZ3JvdXAuXG4gICAqXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBtZXJnZUdyb3VwPzogTWVyZ2VHcm91cE9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSBtaWxlc3RvbmUgZXZlbnQgb2NjdXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgbWlsZXN0b25lPzogTWlsZXN0b25lT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgc29tZW9uZSBwdXNoZXMgdG8gYSBHaXRIdWIgUGFnZXMtZW5hYmxlZFxuICAgKiBicmFuY2gsIHdoaWNoIHRyaWdnZXJzIHRoZSBwYWdlX2J1aWxkIGV2ZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgcGFnZUJ1aWxkPzogUGFnZUJ1aWxkT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgdGhlIHByb2plY3QgZXZlbnQgb2NjdXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdD86IFByb2plY3RPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgcHJvamVjdF9jYXJkIGV2ZW50IG9jY3Vycy5cbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RDYXJkPzogUHJvamVjdENhcmRPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgcHJvamVjdF9jb2x1bW4gZXZlbnQgb2NjdXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdENvbHVtbj86IFByb2plY3RDb2x1bW5PcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSBzb21lb25lIG1ha2VzIGEgcHJpdmF0ZSByZXBvc2l0b3J5IHB1YmxpYyxcbiAgICogd2hpY2ggdHJpZ2dlcnMgdGhlIHB1YmxpYyBldmVudC5cbiAgICovXG4gIHJlYWRvbmx5IHB1YmxpYz86IFB1YmxpY09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSBwdWxsX3JlcXVlc3QgZXZlbnQgb2NjdXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgcHVsbFJlcXVlc3Q/OiBQdWxsUmVxdWVzdE9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSBwdWxsX3JlcXVlc3RfcmV2aWV3IGV2ZW50IG9jY3Vycy5cbiAgICovXG4gIHJlYWRvbmx5IHB1bGxSZXF1ZXN0UmV2aWV3PzogUHVsbFJlcXVlc3RSZXZpZXdPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSBhIGNvbW1lbnQgb24gYSBwdWxsIHJlcXVlc3QncyB1bmlmaWVkIGRpZmYgaXNcbiAgICogbW9kaWZpZWQsIHdoaWNoIHRyaWdnZXJzIHRoZSBwdWxsX3JlcXVlc3RfcmV2aWV3X2NvbW1lbnQgZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFJldmlld0NvbW1lbnQ/OiBQdWxsUmVxdWVzdFJldmlld0NvbW1lbnRPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBUaGlzIGV2ZW50IHJ1bnMgaW4gdGhlIGNvbnRleHQgb2YgdGhlIGJhc2Ugb2YgdGhlIHB1bGwgcmVxdWVzdCwgcmF0aGVyXG4gICAqIHRoYW4gaW4gdGhlIG1lcmdlIGNvbW1pdCBhcyB0aGUgcHVsbF9yZXF1ZXN0IGV2ZW50IGRvZXMuIFRoaXMgcHJldmVudHNcbiAgICogZXhlY3V0aW5nIHVuc2FmZSB3b3JrZmxvdyBjb2RlIGZyb20gdGhlIGhlYWQgb2YgdGhlIHB1bGwgcmVxdWVzdCB0aGF0XG4gICAqIGNvdWxkIGFsdGVyIHlvdXIgcmVwb3NpdG9yeSBvciBzdGVhbCBhbnkgc2VjcmV0cyB5b3UgdXNlIGluIHlvdXIgd29ya2Zsb3cuXG4gICAqIFRoaXMgZXZlbnQgYWxsb3dzIHlvdSB0byBkbyB0aGluZ3MgbGlrZSBjcmVhdGUgd29ya2Zsb3dzIHRoYXQgbGFiZWwgYW5kXG4gICAqIGNvbW1lbnQgb24gcHVsbCByZXF1ZXN0cyBiYXNlZCBvbiB0aGUgY29udGVudHMgb2YgdGhlIGV2ZW50IHBheWxvYWQuXG4gICAqXG4gICAqIFdBUk5JTkc6IFRoZSBgcHVsbF9yZXF1ZXN0X3RhcmdldGAgZXZlbnQgaXMgZ3JhbnRlZCByZWFkL3dyaXRlIHJlcG9zaXRvcnlcbiAgICogdG9rZW4gYW5kIGNhbiBhY2Nlc3Mgc2VjcmV0cywgZXZlbiB3aGVuIGl0IGlzIHRyaWdnZXJlZCBmcm9tIGEgZm9yay5cbiAgICogQWx0aG91Z2ggdGhlIHdvcmtmbG93IHJ1bnMgaW4gdGhlIGNvbnRleHQgb2YgdGhlIGJhc2Ugb2YgdGhlIHB1bGwgcmVxdWVzdCxcbiAgICogeW91IHNob3VsZCBtYWtlIHN1cmUgdGhhdCB5b3UgZG8gbm90IGNoZWNrIG91dCwgYnVpbGQsIG9yIHJ1biB1bnRydXN0ZWRcbiAgICogY29kZSBmcm9tIHRoZSBwdWxsIHJlcXVlc3Qgd2l0aCB0aGlzIGV2ZW50LiBBZGRpdGlvbmFsbHksIGFueSBjYWNoZXNcbiAgICogc2hhcmUgdGhlIHNhbWUgc2NvcGUgYXMgdGhlIGJhc2UgYnJhbmNoLCBhbmQgdG8gaGVscCBwcmV2ZW50IGNhY2hlXG4gICAqIHBvaXNvbmluZywgeW91IHNob3VsZCBub3Qgc2F2ZSB0aGUgY2FjaGUgaWYgdGhlcmUgaXMgYSBwb3NzaWJpbGl0eSB0aGF0XG4gICAqIHRoZSBjYWNoZSBjb250ZW50cyB3ZXJlIGFsdGVyZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9zZWN1cml0eWxhYi5naXRodWIuY29tL3Jlc2VhcmNoL2dpdGh1Yi1hY3Rpb25zLXByZXZlbnRpbmctcHduLXJlcXVlc3RzXG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFRhcmdldD86IFB1bGxSZXF1ZXN0VGFyZ2V0T3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IHdoZW4gc29tZW9uZSBwdXNoZXMgdG8gYSByZXBvc2l0b3J5IGJyYW5jaCwgd2hpY2hcbiAgICogdHJpZ2dlcnMgdGhlIHB1c2ggZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBwdXNoPzogUHVzaE9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIGEgcGFja2FnZSBpcyBwdWJsaXNoZWQgb3IgdXBkYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lzdHJ5UGFja2FnZT86IFJlZ2lzdHJ5UGFja2FnZU9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSByZWxlYXNlIGV2ZW50IG9jY3Vycy5cbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2U/OiBSZWxlYXNlT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgdGhlIHN0YXR1cyBvZiBhIEdpdCBjb21taXQgY2hhbmdlcywgd2hpY2hcbiAgICogdHJpZ2dlcnMgdGhlIHN0YXR1cyBldmVudC5cbiAgICovXG4gIHJlYWRvbmx5IHN0YXR1cz86IFN0YXR1c09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSB3YXRjaCBldmVudCBvY2N1cnMuXG4gICAqL1xuICByZWFkb25seSB3YXRjaD86IFdhdGNoT3B0aW9ucztcblxuICAvKipcbiAgICogVGhpcyBldmVudCBvY2N1cnMgd2hlbiBhIHdvcmtmbG93IHJ1biBpcyByZXF1ZXN0ZWQgb3IgY29tcGxldGVkLCBhbmRcbiAgICogYWxsb3dzIHlvdSB0byBleGVjdXRlIGEgd29ya2Zsb3cgYmFzZWQgb24gdGhlIGZpbmlzaGVkIHJlc3VsdCBvZiBhbm90aGVyXG4gICAqIHdvcmtmbG93LiBBIHdvcmtmbG93IHJ1biBpcyB0cmlnZ2VyZWQgcmVnYXJkbGVzcyBvZiB0aGUgcmVzdWx0IG9mIHRoZVxuICAgKiBwcmV2aW91cyB3b3JrZmxvdy5cbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93UnVuPzogV29ya2Zsb3dSdW5PcHRpb25zO1xuICAvLyNlbmRyZWdpb25cbn1cblxuLyoqXG4gKiBDUk9OIHNjaGVkdWxlIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JvblNjaGVkdWxlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vcHVicy5vcGVuZ3JvdXAub3JnL29ubGluZXB1YnMvOTY5OTkxOTc5OS91dGlsaXRpZXMvY3JvbnRhYi5odG1sI3RhZ18yMF8yNV8wN1xuICAgKi9cbiAgcmVhZG9ubHkgY3Jvbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcG9zaXRvcnkgZGlzcGF0Y2ggb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXBvc2l0b3J5RGlzcGF0Y2hPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBCcmFuY2ggUHJvdGVjdGlvbiBSdWxlIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCcmFuY2hQcm90ZWN0aW9uUnVsZU9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY3JlYXRlZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiPjtcbn1cblxuLyoqXG4gKiBDaGVjayBydW4gb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGVja1J1bk9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFxuICAgIFwiY3JlYXRlXCIgfCBcInJlcmVxdWVzdGVkXCIgfCBcImNvbXBsZXRlZFwiIHwgXCJyZXF1ZXN0ZWRfYWN0aW9uXCJcbiAgPjtcbn1cblxuLyoqXG4gKiBDaGVjayBzdWl0ZSBvcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hlY2tTdWl0ZU9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY29tcGxldGVkXCIgfCBcInJlcXVlc3RlZFwiIHwgXCJyZXJlcXVlc3RlZFwiPjtcbn1cblxuLyoqXG4gKiBEaXNjdXNzaW9uIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEaXNjdXNzaW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGljaCBhY3Rpdml0eSB0eXBlcyB0byB0cmlnZ2VyIG9uLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBhbGwgYWN0aXZpdHkgdHlwZXNcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVzPzogQXJyYXk8XG4gICAgfCBcImNyZWF0ZWRcIlxuICAgIHwgXCJlZGl0ZWRcIlxuICAgIHwgXCJ0cmFuc2ZlcnJlZFwiXG4gICAgfCBcInBpbm5lZFwiXG4gICAgfCBcInVucGlubmVkXCJcbiAgICB8IFwibGFiZWxlZFwiXG4gICAgfCBcInVubGFiZWxlZFwiXG4gICAgfCBcImxvY2tlZFwiXG4gICAgfCBcInVubG9ja2VkXCJcbiAgICB8IFwiY2F0ZWdvcnlfY2hhbmdlZFwiXG4gICAgfCBcImFuc3dlcmVkXCJcbiAgICB8IFwidW5hbnN3ZXJlZFwiXG4gID47XG59XG5cbi8qKlxuICogRGlzY3Vzc2lvbiBjb21tZW50IG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEaXNjdXNzaW9uQ29tbWVudE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY3JlYXRlZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiPjtcbn1cblxuLyoqXG4gKiBJc3N1ZSBjb21tZW50IG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJc3N1ZUNvbW1lbnRPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBBcnJheTxcImNyZWF0ZWRcIiB8IFwiZWRpdGVkXCIgfCBcImRlbGV0ZWRcIj47XG59XG5cbi8qKlxuICogSXNzdWVzIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJc3N1ZXNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBBcnJheTxcbiAgICB8IFwib3BlbmVkXCJcbiAgICB8IFwiZWRpdGVkXCJcbiAgICB8IFwiZGVsZXRlZFwiXG4gICAgfCBcInRyYW5zZmVycmVkXCJcbiAgICB8IFwicGlubmVkXCJcbiAgICB8IFwidW5waW5uZWRcIlxuICAgIHwgXCJjbG9zZWRcIlxuICAgIHwgXCJyZW9wZW5lZFwiXG4gICAgfCBcImFzc2lnbmVkXCJcbiAgICB8IFwidW5hc3NpZ25lZFwiXG4gICAgfCBcImxhYmVsZWRcIlxuICAgIHwgXCJ1bmxhYmVsZWRcIlxuICAgIHwgXCJsb2NrZWRcIlxuICAgIHwgXCJ1bmxvY2tlZFwiXG4gICAgfCBcIm1pbGVzdG9uZWRcIlxuICAgIHwgXCJkZW1pbGVzdG9uZWRcIlxuICA+O1xufVxuXG4vKipcbiAqIExhYmVsIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMYWJlbE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY3JlYXRlZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiPjtcbn1cblxuLyoqXG4gKiBNZXJnZSBncm91cCBvcHRpb25zLlxuICpcbiAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWVyZ2VHcm91cE9wdGlvbnMge1xuICAvKipcbiAgICogV2hlbiB1c2luZyB0aGUgbWVyZ2VfZ3JvdXAgZXZlbnRzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIHdvcmtmbG93XG4gICAqIHRvIHJ1biBvbiBzcGVjaWZpYyBiYXNlIGJyYW5jaGVzLiBJZiBub3Qgc3BlY2lmaWVkLCBhbGwgYnJhbmNoZXMgd2lsbFxuICAgKiB0cmlnZ2VyIHRoZSB3b3JrZmxvdy5cbiAgICovXG4gIHJlYWRvbmx5IGJyYW5jaGVzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogTWlsZXN0b25lIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNaWxlc3RvbmVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBBcnJheTxcbiAgICBcImNyZWF0ZWRcIiB8IFwiY2xvc2VkXCIgfCBcIm9wZW5lZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiXG4gID47XG59XG5cbi8qKlxuICogUHJvamVjdCBvcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvamVjdE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFxuICAgIFwiY3JlYXRlZFwiIHwgXCJ1cGRhdGVkXCIgfCBcImNsb3NlZFwiIHwgXCJyZW9wZW5lZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiXG4gID47XG59XG5cbi8qKlxuICogUHJvamVjdCBjYXJkIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcm9qZWN0Q2FyZE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFxuICAgIFwiY3JlYXRlZFwiIHwgXCJtb3ZlZFwiIHwgXCJjb252ZXJ0ZWRcIiB8IFwiZWRpdGVkXCIgfCBcImRlbGV0ZWRcIlxuICA+O1xufVxuXG4vKipcbiAqIFByb2JqZWN0IGNvbHVtbiBvcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvamVjdENvbHVtbk9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY3JlYXRlZFwiIHwgXCJ1cGRhdGVkXCIgfCBcIm1vdmVkXCIgfCBcImRlbGV0ZWRcIj47XG59XG5cbi8qKlxuICogUHVsbCByZXF1ZXN0IG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQdWxsUmVxdWVzdE9wdGlvbnMgZXh0ZW5kcyBQdXNoT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGljaCBhY3Rpdml0eSB0eXBlcyB0byB0cmlnZ2VyIG9uLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBhbGwgYWN0aXZpdHkgdHlwZXNcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVzPzogQXJyYXk8XG4gICAgfCBcImFzc2lnbmVkXCJcbiAgICB8IFwidW5hc3NpZ25lZFwiXG4gICAgfCBcImxhYmVsZWRcIlxuICAgIHwgXCJ1bmxhYmVsZWRcIlxuICAgIHwgXCJvcGVuZWRcIlxuICAgIHwgXCJlZGl0ZWRcIlxuICAgIHwgXCJjbG9zZWRcIlxuICAgIHwgXCJyZW9wZW5lZFwiXG4gICAgfCBcInN5bmNocm9uaXplXCJcbiAgICB8IFwicmVhZHlfZm9yX3Jldmlld1wiXG4gICAgfCBcImxvY2tlZFwiXG4gICAgfCBcInVubG9ja2VkXCJcbiAgICB8IFwicmV2aWV3X3JlcXVlc3RlZFwiXG4gICAgfCBcInJldmlld19yZXF1ZXN0X3JlbW92ZWRcIlxuICA+O1xufVxuXG4vKipcbiAqIFB1bGwgcmVxdWVzdCByZXZpZXcgb3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFB1bGxSZXF1ZXN0UmV2aWV3T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGljaCBhY3Rpdml0eSB0eXBlcyB0byB0cmlnZ2VyIG9uLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBhbGwgYWN0aXZpdHkgdHlwZXNcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVzPzogQXJyYXk8XCJzdWJtaXR0ZWRcIiB8IFwiZWRpdGVkXCIgfCBcImRpc21pc3NlZFwiPjtcbn1cblxuLyoqXG4gKiBQdWxsIHJlcXVlc3QgcmV2aWV3IGNvbW1lbnQgb3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY3JlYXRlZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiPjtcbn1cblxuLyoqXG4gKiBQdWxsIHJlcXVlc3QgdGFyZ2V0IG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHVsbFJlcXVlc3RUYXJnZXRPcHRpb25zIGV4dGVuZHMgUHVzaE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFxuICAgIHwgXCJhc3NpZ25lZFwiXG4gICAgfCBcInVuYXNzaWduZWRcIlxuICAgIHwgXCJsYWJlbGVkXCJcbiAgICB8IFwidW5sYWJlbGVkXCJcbiAgICB8IFwib3BlbmVkXCJcbiAgICB8IFwiZWRpdGVkXCJcbiAgICB8IFwiY2xvc2VkXCJcbiAgICB8IFwicmVvcGVuZWRcIlxuICAgIHwgXCJzeW5jaHJvbml6ZVwiXG4gICAgfCBcInJlYWR5X2Zvcl9yZXZpZXdcIlxuICAgIHwgXCJsb2NrZWRcIlxuICAgIHwgXCJ1bmxvY2tlZFwiXG4gICAgfCBcInJldmlld19yZXF1ZXN0ZWRcIlxuICAgIHwgXCJyZXZpZXdfcmVxdWVzdF9yZW1vdmVkXCJcbiAgPjtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBwdXNoLWxpa2UgZXZlbnRzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFB1c2hPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoZW4gdXNpbmcgdGhlIHB1c2gsIHB1bGxfcmVxdWVzdCBhbmQgcHVsbF9yZXF1ZXN0X3RhcmdldCBldmVudHMsIHlvdSBjYW4gY29uZmlndXJlIGEgd29ya2Zsb3dcbiAgICogdG8gcnVuIG9uIHNwZWNpZmljIGJyYW5jaGVzIG9yIHRhZ3MuIEZvciBhIHB1bGxfcmVxdWVzdCBldmVudCwgb25seVxuICAgKiBicmFuY2hlcyBhbmQgdGFncyBvbiB0aGUgYmFzZSBhcmUgZXZhbHVhdGVkLiBJZiB5b3UgZGVmaW5lIG9ubHkgdGFncyBvclxuICAgKiBvbmx5IGJyYW5jaGVzLCB0aGUgd29ya2Zsb3cgd29uJ3QgcnVuIGZvciBldmVudHMgYWZmZWN0aW5nIHRoZSB1bmRlZmluZWRcbiAgICogR2l0IHJlZi5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9hY3Rpb25zL3JlZmVyZW5jZS93b3JrZmxvdy1zeW50YXgtZm9yLWdpdGh1Yi1hY3Rpb25zI2ZpbHRlci1wYXR0ZXJuLWNoZWF0LXNoZWV0XG4gICAqL1xuICByZWFkb25seSBicmFuY2hlcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBXaGVuIHVzaW5nIHRoZSBwdXNoLCBwdWxsX3JlcXVlc3QgYW5kIHB1bGxfcmVxdWVzdF90YXJnZXQgZXZlbnRzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIHdvcmtmbG93XG4gICAqIHRvIHJ1biBvbiBzcGVjaWZpYyBicmFuY2hlcyBvciB0YWdzLiBGb3IgYSBwdWxsX3JlcXVlc3QgZXZlbnQsIG9ubHlcbiAgICogYnJhbmNoZXMgYW5kIHRhZ3Mgb24gdGhlIGJhc2UgYXJlIGV2YWx1YXRlZC4gSWYgeW91IGRlZmluZSBvbmx5IHRhZ3Mgb3JcbiAgICogb25seSBicmFuY2hlcywgdGhlIHdvcmtmbG93IHdvbid0IHJ1biBmb3IgZXZlbnRzIGFmZmVjdGluZyB0aGUgdW5kZWZpbmVkXG4gICAqIEdpdCByZWYuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vYWN0aW9ucy9yZWZlcmVuY2Uvd29ya2Zsb3ctc3ludGF4LWZvci1naXRodWItYWN0aW9ucyNmaWx0ZXItcGF0dGVybi1jaGVhdC1zaGVldFxuICAgKi9cbiAgcmVhZG9ubHkgdGFncz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBXaGVuIHVzaW5nIHRoZSBwdXNoLCBwdWxsX3JlcXVlc3QgYW5kIHB1bGxfcmVxdWVzdF90YXJnZXQgZXZlbnRzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIHdvcmtmbG93XG4gICAqIHRvIHJ1biB3aGVuIGF0IGxlYXN0IG9uZSBmaWxlIGRvZXMgbm90IG1hdGNoIHBhdGhzLWlnbm9yZSBvciBhdCBsZWFzdCBvbmVcbiAgICogbW9kaWZpZWQgZmlsZSBtYXRjaGVzIHRoZSBjb25maWd1cmVkIHBhdGhzLiBQYXRoIGZpbHRlcnMgYXJlIG5vdFxuICAgKiBldmFsdWF0ZWQgZm9yIHB1c2hlcyB0byB0YWdzLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2FjdGlvbnMvcmVmZXJlbmNlL3dvcmtmbG93LXN5bnRheC1mb3ItZ2l0aHViLWFjdGlvbnMjZmlsdGVyLXBhdHRlcm4tY2hlYXQtc2hlZXRcbiAgICovXG4gIHJlYWRvbmx5IHBhdGhzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogUmVnaXN0cnkgcGFja2FnZSBvcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVnaXN0cnlQYWNrYWdlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGljaCBhY3Rpdml0eSB0eXBlcyB0byB0cmlnZ2VyIG9uLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBhbGwgYWN0aXZpdHkgdHlwZXNcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVzPzogQXJyYXk8XCJwdWJsaXNoZWRcIiB8IFwidXBkYXRlZFwiPjtcbn1cblxuLyoqXG4gKiBSZWxlYXNlIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWxlYXNlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGljaCBhY3Rpdml0eSB0eXBlcyB0byB0cmlnZ2VyIG9uLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBhbGwgYWN0aXZpdHkgdHlwZXNcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVzPzogQXJyYXk8XG4gICAgfCBcInB1Ymxpc2hlZFwiXG4gICAgfCBcInVucHVibGlzaGVkXCJcbiAgICB8IFwiY3JlYXRlZFwiXG4gICAgfCBcImVkaXRlZFwiXG4gICAgfCBcImRlbGV0ZWRcIlxuICAgIHwgXCJwcmVyZWxlYXNlZFwiXG4gICAgfCBcInJlbGVhc2VkXCJcbiAgPjtcbn1cblxuLyoqXG4gKiBXYXRjaCBvcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV2F0Y2hPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBBcnJheTxcInN0YXJ0ZWRcIj47XG59XG5cbi8qKlxuICogV29ya2Zsb3cgcnVuIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvd1J1bk9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggd29ya2Zsb3cgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYW55IHdvcmtmbG93c1xuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBBcnJheTxcImNvbXBsZXRlZFwiIHwgXCJyZXF1ZXN0ZWRcIj47XG4gIC8qKlxuICAgKiBXaGljaCBicmFuY2hlcyBvciBicmFuY2gtaWdub3JlIHRvIGxpbWl0IHRoZSB0cmlnZ2VyIHRvLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBubyBicmFuY2ggbGltaXRzXG4gICAqL1xuICByZWFkb25seSBicmFuY2hlcz86IEFycmF5PHN0cmluZz47XG59XG5cbi8vI3JlZ2lvbiBFbXB0eSBPcHRpb25zIChmdXR1cmUtcHJvb2ZpbmcgdGhlIEFQSSlcbi8qKlxuICogVGhlIFdvcmtmbG93IGRpc3BhdGNoIGV2ZW50IGFjY2VwdHMgbm8gb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvd0Rpc3BhdGNoT3B0aW9ucyB7fVxuXG4vKipcbiAqIFRoZSBXb3JrZmxvdyBDYWxsIGV2ZW50IGFjY2VwdHMgbm8gb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvd0NhbGxPcHRpb25zIHt9XG5cbi8qKlxuICogVGhlIENyZWF0ZSBldmVudCBhY2NlcHRzIG5vIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlT3B0aW9ucyB7fVxuXG4vKipcbiAqIFRoZSBEZWxldGUgZXZlbnQgYWNjZXB0cyBubyBvcHRpb25zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERlbGV0ZU9wdGlvbnMge31cblxuLyoqXG4gKiBUaGUgRGVwbG95bWVudCBldmVudCBhY2NlcHRzIG5vIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVwbG95bWVudE9wdGlvbnMge31cblxuLyoqXG4gKiBUaGUgRGVwbG95bWVudCBzdGF0dXMgZXZlbnQgYWNjZXB0cyBubyBvcHRpb25zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERlcGxveW1lbnRTdGF0dXNPcHRpb25zIHt9XG5cbi8qKlxuICogVGhlIEZvcmsgZXZlbnQgYWNjZXB0cyBubyBvcHRpb25zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZvcmtPcHRpb25zIHt9XG5cbi8qKlxuICogVGhlIEdvbGx1bSBldmVudCBhY2NlcHRzIG5vIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR29sbHVtT3B0aW9ucyB7fVxuXG4vKipcbiAqIFRoZSBQYWdlIGJ1aWxkIGV2ZW50IGFjY2VwdHMgbm8gb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQYWdlQnVpbGRPcHRpb25zIHt9XG5cbi8qKlxuICogVGhlIFB1YmxpYyBldmVudCBhY2NlcHRzIG5vIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHVibGljT3B0aW9ucyB7fVxuXG4vKipcbiAqIFRoZSBTdGF0dXMgZXZlbnQgYWNjZXB0cyBubyBvcHRpb25zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0YXR1c09wdGlvbnMge31cbi8vI2VuZHJlZ2lvblxuIl19
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid29ya2Zsb3dzLW1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLHVGQUF1Rjs7O0FBNFR2Rjs7R0FFRztBQUNILElBQVksYUFTWDtBQVRELFdBQVksYUFBYTtJQUN2Qix1QkFBdUI7SUFDdkIsOEJBQWEsQ0FBQTtJQUViLHdCQUF3QjtJQUN4QixnQ0FBZSxDQUFBO0lBRWYsdUJBQXVCO0lBQ3ZCLDhCQUFhLENBQUE7QUFDZixDQUFDLEVBVFcsYUFBYSw2QkFBYixhQUFhLFFBU3hCO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLGFBV1g7QUFYRCxXQUFZLGFBQWE7SUFDdkIsd0JBQXdCO0lBQ3hCLDhCQUFhLENBQUE7SUFDYix3QkFBd0I7SUFDeEIsZ0NBQWUsQ0FBQTtJQUNmOzs7O09BSUc7SUFDSCxnQ0FBZSxDQUFBO0FBQ2pCLENBQUMsRUFYVyxhQUFhLDZCQUFiLGFBQWEsUUFXeEI7QUF3K0JELFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2FjdGlvbnMvcmVmZXJlbmNlL3dvcmtmbG93LXN5bnRheC1mb3ItZ2l0aHViLWFjdGlvbnNcblxuaW1wb3J0IHR5cGUgeyBHcm91cFJ1bm5lck9wdGlvbnMgfSBmcm9tIFwiLi4vcnVubmVyLW9wdGlvbnNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBDb21tb25Kb2JEZWZpbml0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBqb2IgZGlzcGxheWVkIG9uIEdpdEh1Yi5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElkZW50aWZpZXMgYW55IGpvYnMgdGhhdCBtdXN0IGNvbXBsZXRlIHN1Y2Nlc3NmdWxseSBiZWZvcmUgdGhpcyBqb2Igd2lsbFxuICAgKiBydW4uIEl0IGNhbiBiZSBhIHN0cmluZyBvciBhcnJheSBvZiBzdHJpbmdzLiBJZiBhIGpvYiBmYWlscywgYWxsIGpvYnNcbiAgICogdGhhdCBuZWVkIGl0IGFyZSBza2lwcGVkIHVubGVzcyB0aGUgam9icyB1c2UgYSBjb25kaXRpb25hbCBleHByZXNzaW9uXG4gICAqIHRoYXQgY2F1c2VzIHRoZSBqb2IgdG8gY29udGludWUuXG4gICAqL1xuICByZWFkb25seSBuZWVkcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBZb3UgY2FuIG1vZGlmeSB0aGUgZGVmYXVsdCBwZXJtaXNzaW9ucyBncmFudGVkIHRvIHRoZSBHSVRIVUJfVE9LRU4sIGFkZGluZ1xuICAgKiBvciByZW1vdmluZyBhY2Nlc3MgYXMgcmVxdWlyZWQsIHNvIHRoYXQgeW91IG9ubHkgYWxsb3cgdGhlIG1pbmltdW0gcmVxdWlyZWRcbiAgICogYWNjZXNzLlxuICAgKlxuICAgKiBVc2UgYHsgY29udGVudHM6IFJFQUQgfWAgaWYgeW91ciBqb2Igb25seSBuZWVkcyB0byBjbG9uZSBjb2RlLlxuICAgKlxuICAgKiBUaGlzIGlzIGludGVudGlvbmFsbHkgYSByZXF1aXJlZCBmaWVsZCBzaW5jZSBpdCBpcyByZXF1aXJlZCBpbiBvcmRlciB0b1xuICAgKiBhbGxvdyB3b3JrZmxvd3MgdG8gcnVuIGluIEdpdEh1YiByZXBvc2l0b3JpZXMgd2l0aCByZXN0cmljdGVkIGRlZmF1bHRcbiAgICogYWNjZXNzLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2FjdGlvbnMvcmVmZXJlbmNlL2F1dGhlbnRpY2F0aW9uLWluLWEtd29ya2Zsb3cjcGVybWlzc2lvbnMtZm9yLXRoZS1naXRodWJfdG9rZW5cbiAgICovXG4gIHJlYWRvbmx5IHBlcm1pc3Npb25zOiBKb2JQZXJtaXNzaW9ucztcblxuICAvKipcbiAgICogQ29uY3VycmVuY3kgZW5zdXJlcyB0aGF0IG9ubHkgYSBzaW5nbGUgam9iIG9yIHdvcmtmbG93IHVzaW5nIHRoZSBzYW1lXG4gICAqIGNvbmN1cnJlbmN5IGdyb3VwIHdpbGwgcnVuIGF0IGEgdGltZS4gQSBjb25jdXJyZW5jeSBncm91cCBjYW4gYmUgYW55XG4gICAqIHN0cmluZyBvciBleHByZXNzaW9uLiBUaGUgZXhwcmVzc2lvbiBjYW4gdXNlIGFueSBjb250ZXh0IGV4Y2VwdCBmb3IgdGhlXG4gICAqIHNlY3JldHMgY29udGV4dC5cbiAgICpcbiAgICogQGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgY29uY3VycmVuY3k/OiB1bmtub3duO1xuXG4gIC8qKlxuICAgKiBZb3UgY2FuIHVzZSB0aGUgaWYgY29uZGl0aW9uYWwgdG8gcHJldmVudCBhIGpvYiBmcm9tIHJ1bm5pbmcgdW5sZXNzIGFcbiAgICogY29uZGl0aW9uIGlzIG1ldC4gWW91IGNhbiB1c2UgYW55IHN1cHBvcnRlZCBjb250ZXh0IGFuZCBleHByZXNzaW9uIHRvXG4gICAqIGNyZWF0ZSBhIGNvbmRpdGlvbmFsLlxuICAgKi9cbiAgcmVhZG9ubHkgaWY/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgc3RyYXRlZ3kgY3JlYXRlcyBhIGJ1aWxkIG1hdHJpeCBmb3IgeW91ciBqb2JzLiBZb3UgY2FuIGRlZmluZSBkaWZmZXJlbnRcbiAgICogdmFyaWF0aW9ucyB0byBydW4gZWFjaCBqb2IgaW4uXG4gICAqL1xuICByZWFkb25seSBzdHJhdGVneT86IEpvYlN0cmF0ZWd5O1xufVxuXG4vKipcbiAqIEEgR2l0SHViIFdvcmtmbG93IEpvYiBjYWxsaW5nIGEgcmV1c2FibGUgd29ya2Zsb3dcbiAqXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSm9iQ2FsbGluZ1JldXNhYmxlV29ya2Zsb3cgZXh0ZW5kcyBDb21tb25Kb2JEZWZpbml0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSBsb2NhdGlvbiBhbmQgdmVyc2lvbiBvZiBhIHJldXNhYmxlIHdvcmtmbG93IGZpbGUgdG8gcnVuIGFzIGEgam9iLlxuICAgKi9cbiAgcmVhZG9ubHkgdXNlczogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGVuIGEgam9iIGlzIHVzZWQgdG8gY2FsbCBhIHJldXNhYmxlIHdvcmtmbG93LCB5b3UgY2FuIHVzZSB3aXRoIHRvXG4gICAqIHByb3ZpZGUgYSBtYXAgb2YgaW5wdXRzIHRoYXQgYXJlIHBhc3NlZCB0byB0aGUgY2FsbGVkIHdvcmtmbG93LlxuICAgKlxuICAgKiBBbGxvd2VkIGV4cHJlc3Npb24gY29udGV4dHM6IGBnaXRodWJgLCBhbmQgYG5lZWRzYC5cbiAgICovXG4gIHJlYWRvbmx5IHdpdGg/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCBib29sZWFuPjtcblxuICAvKipcbiAgICogV2hlbiBhIGpvYiBpcyB1c2VkIHRvIGNhbGwgYSByZXVzYWJsZSB3b3JrZmxvdywgeW91IGNhbiB1c2Ugc2VjcmV0cyB0b1xuICAgKiBwcm92aWRlIGEgbWFwIG9mIHNlY3JldHMgdGhhdCBhcmUgcGFzc2VkIHRvIHRoZSBjYWxsZWQgd29ya2Zsb3cuXG4gICAqXG4gICAqIFVzZSB0aGUgJ2luaGVyaXQnIGtleXdvcmQgdG8gcGFzcyBhbGwgdGhlIGNhbGxpbmcgd29ya2Zsb3cncyBzZWNyZXRzIHRvIHRoZSBjYWxsZWQgd29ya2Zsb3dcbiAgICovXG4gIHJlYWRvbmx5IHNlY3JldHM/OiBzdHJpbmcgfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xufVxuXG4vKipcbiAqIEEgR2l0SHViIFdvcmtmbG93IGpvYiBkZWZpbml0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEpvYiBleHRlbmRzIENvbW1vbkpvYkRlZmluaXRpb24ge1xuICAvKipcbiAgICogVGhlIHR5cGUgb2YgbWFjaGluZSB0byBydW4gdGhlIGpvYiBvbi4gVGhlIG1hY2hpbmUgY2FuIGJlIGVpdGhlciBhXG4gICAqIEdpdEh1Yi1ob3N0ZWQgcnVubmVyIG9yIGEgc2VsZi1ob3N0ZWQgcnVubmVyLlxuICAgKlxuICAgKiBAZXhhbXBsZSBbXCJ1YnVudHUtbGF0ZXN0XCJdXG4gICAqL1xuICByZWFkb25seSBydW5zT24/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogR2l0aHViIFJ1bm5lciBHcm91cCBzZWxlY3Rpb24gb3B0aW9uc1xuICAgKiBAZGVzY3JpcHRpb24gRGVmaW5lcyBhIHRhcmdldCBSdW5uZXIgR3JvdXAgYnkgbmFtZSBhbmQvb3IgbGFiZWxzXG4gICAqIEB0aHJvd3Mge0Vycm9yfSBpZiBib3RoIGBydW5zT25gIGFuZCBgcnVuc09uR3JvdXBgIGFyZSBzcGVjaWZpZWRcbiAgICovXG4gIHJlYWRvbmx5IHJ1bnNPbkdyb3VwPzogR3JvdXBSdW5uZXJPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBBIGpvYiBjb250YWlucyBhIHNlcXVlbmNlIG9mIHRhc2tzIGNhbGxlZCBzdGVwcy4gU3RlcHMgY2FuIHJ1biBjb21tYW5kcyxcbiAgICogcnVuIHNldHVwIHRhc2tzLCBvciBydW4gYW4gYWN0aW9uIGluIHlvdXIgcmVwb3NpdG9yeSwgYSBwdWJsaWMgcmVwb3NpdG9yeSxcbiAgICogb3IgYW4gYWN0aW9uIHB1Ymxpc2hlZCBpbiBhIERvY2tlciByZWdpc3RyeS4gTm90IGFsbCBzdGVwcyBydW4gYWN0aW9ucyxcbiAgICogYnV0IGFsbCBhY3Rpb25zIHJ1biBhcyBhIHN0ZXAuIEVhY2ggc3RlcCBydW5zIGluIGl0cyBvd24gcHJvY2VzcyBpbiB0aGVcbiAgICogcnVubmVyIGVudmlyb25tZW50IGFuZCBoYXMgYWNjZXNzIHRvIHRoZSB3b3Jrc3BhY2UgYW5kIGZpbGVzeXN0ZW0uXG4gICAqIEJlY2F1c2Ugc3RlcHMgcnVuIGluIHRoZWlyIG93biBwcm9jZXNzLCBjaGFuZ2VzIHRvIGVudmlyb25tZW50IHZhcmlhYmxlc1xuICAgKiBhcmUgbm90IHByZXNlcnZlZCBiZXR3ZWVuIHN0ZXBzLiBHaXRIdWIgcHJvdmlkZXMgYnVpbHQtaW4gc3RlcHMgdG8gc2V0IHVwXG4gICAqIGFuZCBjb21wbGV0ZSBhIGpvYi5cbiAgICovXG4gIHJlYWRvbmx5IHN0ZXBzOiBKb2JTdGVwW107XG5cbiAgLyoqXG4gICAqIFRoZSBlbnZpcm9ubWVudCB0aGF0IHRoZSBqb2IgcmVmZXJlbmNlcy4gQWxsIGVudmlyb25tZW50IHByb3RlY3Rpb24gcnVsZXNcbiAgICogbXVzdCBwYXNzIGJlZm9yZSBhIGpvYiByZWZlcmVuY2luZyB0aGUgZW52aXJvbm1lbnQgaXMgc2VudCB0byBhIHJ1bm5lci5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9hY3Rpb25zL3JlZmVyZW5jZS9lbnZpcm9ubWVudHNcbiAgICovXG4gIHJlYWRvbmx5IGVudmlyb25tZW50PzogdW5rbm93bjtcblxuICAvKipcbiAgICogQSBtYXAgb2Ygb3V0cHV0cyBmb3IgYSBqb2IuIEpvYiBvdXRwdXRzIGFyZSBhdmFpbGFibGUgdG8gYWxsIGRvd25zdHJlYW1cbiAgICogam9icyB0aGF0IGRlcGVuZCBvbiB0aGlzIGpvYi5cbiAgICovXG4gIHJlYWRvbmx5IG91dHB1dHM/OiBSZWNvcmQ8c3RyaW5nLCBKb2JTdGVwT3V0cHV0PjtcblxuICAvKipcbiAgICogQSBtYXAgb2YgZW52aXJvbm1lbnQgdmFyaWFibGVzIHRoYXQgYXJlIGF2YWlsYWJsZSB0byBhbGwgc3RlcHMgaW4gdGhlXG4gICAqIGpvYi4gWW91IGNhbiBhbHNvIHNldCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIHRoZSBlbnRpcmUgd29ya2Zsb3cgb3IgYW5cbiAgICogaW5kaXZpZHVhbCBzdGVwLlxuICAgKi9cbiAgcmVhZG9ubHkgZW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAvKipcbiAgICogQSBtYXAgb2YgZGVmYXVsdCBzZXR0aW5ncyB0aGF0IHdpbGwgYXBwbHkgdG8gYWxsIHN0ZXBzIGluIHRoZSBqb2IuIFlvdVxuICAgKiBjYW4gYWxzbyBzZXQgZGVmYXVsdCBzZXR0aW5ncyBmb3IgdGhlIGVudGlyZSB3b3JrZmxvdy5cbiAgICovXG4gIHJlYWRvbmx5IGRlZmF1bHRzPzogSm9iRGVmYXVsdHM7XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBtaW51dGVzIHRvIGxldCBhIGpvYiBydW4gYmVmb3JlIEdpdEh1YlxuICAgKiBhdXRvbWF0aWNhbGx5IGNhbmNlbHMgaXQuXG4gICAqXG4gICAqIEBkZWZhdWx0IDM2MFxuICAgKi9cbiAgcmVhZG9ubHkgdGltZW91dE1pbnV0ZXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFByZXZlbnRzIGEgd29ya2Zsb3cgcnVuIGZyb20gZmFpbGluZyB3aGVuIGEgam9iIGZhaWxzLiBTZXQgdG8gdHJ1ZSB0b1xuICAgKiBhbGxvdyBhIHdvcmtmbG93IHJ1biB0byBwYXNzIHdoZW4gdGhpcyBqb2IgZmFpbHMuXG4gICAqL1xuICByZWFkb25seSBjb250aW51ZU9uRXJyb3I/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBIGNvbnRhaW5lciB0byBydW4gYW55IHN0ZXBzIGluIGEgam9iIHRoYXQgZG9uJ3QgYWxyZWFkeSBzcGVjaWZ5IGFcbiAgICogY29udGFpbmVyLiBJZiB5b3UgaGF2ZSBzdGVwcyB0aGF0IHVzZSBib3RoIHNjcmlwdCBhbmQgY29udGFpbmVyIGFjdGlvbnMsXG4gICAqIHRoZSBjb250YWluZXIgYWN0aW9ucyB3aWxsIHJ1biBhcyBzaWJsaW5nIGNvbnRhaW5lcnMgb24gdGhlIHNhbWUgbmV0d29ya1xuICAgKiB3aXRoIHRoZSBzYW1lIHZvbHVtZSBtb3VudHMuXG4gICAqL1xuICByZWFkb25seSBjb250YWluZXI/OiBDb250YWluZXJPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBVc2VkIHRvIGhvc3Qgc2VydmljZSBjb250YWluZXJzIGZvciBhIGpvYiBpbiBhIHdvcmtmbG93LiBTZXJ2aWNlXG4gICAqIGNvbnRhaW5lcnMgYXJlIHVzZWZ1bCBmb3IgY3JlYXRpbmcgZGF0YWJhc2VzIG9yIGNhY2hlIHNlcnZpY2VzIGxpa2UgUmVkaXMuXG4gICAqIFRoZSBydW5uZXIgYXV0b21hdGljYWxseSBjcmVhdGVzIGEgRG9ja2VyIG5ldHdvcmsgYW5kIG1hbmFnZXMgdGhlIGxpZmVcbiAgICogY3ljbGUgb2YgdGhlIHNlcnZpY2UgY29udGFpbmVycy5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VzPzogUmVjb3JkPHN0cmluZywgQ29udGFpbmVyT3B0aW9ucz47XG5cbiAgLyoqXG4gICAqIFRvb2xzIHJlcXVpcmVkIGZvciB0aGlzIGpvYi4gVHJhbnNsYXRlcyBpbnRvIGBhY3Rpb25zL3NldHVwLXh4eGAgc3RlcHMgYXRcbiAgICogdGhlIGJlZ2lubmluZyBvZiB0aGUgam9iLlxuICAgKi9cbiAgcmVhZG9ubHkgdG9vbHM/OiBUb29scztcbn1cblxuLyoqXG4gKiBTdXBwb3J0ZWQgdG9vbHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVG9vbHMge1xuICAvKipcbiAgICogU2V0dXAgamF2YSAodGVtdXJpbiBkaXN0cmlidXRpb24pLlxuICAgKiBAZGVmYXVsdCAtIG5vdCBpbnN0YWxsZWRcbiAgICovXG4gIHJlYWRvbmx5IGphdmE/OiBUb29sUmVxdWlyZW1lbnQ7XG5cbiAgLyoqXG4gICAqIFNldHVwIHB5dGhvbi5cbiAgICogQGRlZmF1bHQgLSBub3QgaW5zdGFsbGVkXG4gICAqL1xuICByZWFkb25seSBweXRob24/OiBUb29sUmVxdWlyZW1lbnQ7XG5cbiAgLyoqXG4gICAqIFNldHVwIGdvbGFuZy5cbiAgICogQGRlZmF1bHQgLSBub3QgaW5zdGFsbGVkXG4gICAqL1xuICByZWFkb25seSBnbz86IFRvb2xSZXF1aXJlbWVudDtcblxuICAvKipcbiAgICogU2V0dXAgbm9kZS5qc1xuICAgKiBAZGVmYXVsdCAtIG5vdCBpbnN0YWxsZWRcbiAgICovXG4gIHJlYWRvbmx5IG5vZGU/OiBUb29sUmVxdWlyZW1lbnQ7XG5cbiAgLyoqXG4gICAqIFNldHVwIC5ORVQgQ29yZVxuICAgKiBAZGVmYXVsdCAtIG5vdCBpbnN0YWxsZWRcbiAgICovXG4gIHJlYWRvbmx5IGRvdG5ldD86IFRvb2xSZXF1aXJlbWVudDtcbn1cblxuLyoqXG4gKiBWZXJzaW9uIHJlcXVpcmVtZW50IGZvciB0b29scy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUb29sUmVxdWlyZW1lbnQge1xuICByZWFkb25seSB2ZXJzaW9uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogVGhlIGF2YWlsYWJsZSBzY29wZXMgYW5kIGFjY2VzcyB2YWx1ZXMgZm9yIHdvcmtmbG93IHBlcm1pc3Npb25zLiBJZiB5b3VcbiAqIHNwZWNpZnkgdGhlIGFjY2VzcyBmb3IgYW55IG9mIHRoZXNlIHNjb3BlcywgYWxsIHRob3NlIHRoYXQgYXJlIG5vdFxuICogc3BlY2lmaWVkIGFyZSBzZXQgdG8gYEpvYlBlcm1pc3Npb24uTk9ORWAsIGluc3RlYWQgb2YgdGhlIGRlZmF1bHQgYmVoYXZpb3JcbiAqIHdoZW4gbm9uZSBpcyBzcGVjaWZpZWQuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9hY3Rpb25zL3dyaXRpbmctd29ya2Zsb3dzL2Nob29zaW5nLXdoYXQteW91ci13b3JrZmxvdy1kb2VzL2NvbnRyb2xsaW5nLXBlcm1pc3Npb25zLWZvci1naXRodWJfdG9rZW4jZGVmaW5pbmctYWNjZXNzLWZvci10aGUtZ2l0aHViX3Rva2VuLXBlcm1pc3Npb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSm9iUGVybWlzc2lvbnMge1xuICByZWFkb25seSBhY3Rpb25zPzogSm9iUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgYXR0ZXN0YXRpb25zPzogSm9iUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgY2hlY2tzPzogSm9iUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgY29udGVudHM/OiBKb2JQZXJtaXNzaW9uO1xuICByZWFkb25seSBkZXBsb3ltZW50cz86IEpvYlBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGlkVG9rZW4/OiBKb2JQZXJtaXNzaW9uO1xuICByZWFkb25seSBpc3N1ZXM/OiBKb2JQZXJtaXNzaW9uO1xuICByZWFkb25seSBtb2RlbHM/OiBKb2JQZXJtaXNzaW9uO1xuICByZWFkb25seSBkaXNjdXNzaW9ucz86IEpvYlBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHBhY2thZ2VzPzogSm9iUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgcGFnZXM/OiBKb2JQZXJtaXNzaW9uO1xuICByZWFkb25seSBwdWxsUmVxdWVzdHM/OiBKb2JQZXJtaXNzaW9uO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgcmVtb3ZlZCBieSBHaXRIdWJcbiAgICovXG4gIHJlYWRvbmx5IHJlcG9zaXRvcnlQcm9qZWN0cz86IEpvYlBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHNlY3VyaXR5RXZlbnRzPzogSm9iUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgc3RhdHVzZXM/OiBKb2JQZXJtaXNzaW9uO1xufVxuXG4vKipcbiAqIFRoZSBwZXJtaXNzaW9ucyBhdmFpbGFibGUgdG8gYSBHaXRIdWIgQXBwLlxuICpcbiAqIFR5cGljYWxseSBhIHRva2VuIGZvciBhIEdpdEh1YiBBcHAgaGFzIGFsbCB0aGUgYXZhaWxhYmxlIHNjb3Blcy9wZXJtaXNzaW9ucyBhdmFpbGFibGUgdG8gdGhlIGFwcFxuICogaXRzZWxmOyBob3dldmVyLCBhIG1vcmUgbGltaXRlZCBzZXQgb2YgcGVybWlzc2lvbnMgY2FuIGJlIHNwZWNpZmllZC4gV2hlbiBwZXJtaXNzaW9ucyBhcmUgcHJvdmlkZWQsXG4gKiAqKm9ubHkqKiB0aGUgc3BlY2lmaWVkIHBlcm1pc3Npb25zIGFyZSBncmFudGVkIHRvIHRoZSB0b2tlbi5cbiAqXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL3Jlc3QvYXBwcy9hcHBzP2FwaVZlcnNpb249MjAyMi0xMS0yOCNjcmVhdGUtYW4taW5zdGFsbGF0aW9uLWFjY2Vzcy10b2tlbi1mb3ItYW4tYXBwXG4gKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9hY3Rpb25zL2NyZWF0ZS1naXRodWItYXBwLXRva2VuL2Jsb2IvbWFpbi9hY3Rpb24ueW1sI0wyOFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFwcFBlcm1pc3Npb25zIHtcbiAgcmVhZG9ubHkgYWN0aW9ucz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGF0dGVzdGF0aW9ucz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGFkbWluaXN0cmF0aW9uPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgY2hlY2tzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgY29kZXNwYWNlcz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGNvbnRlbnRzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgZGVwZW5kYWJvdFNlY3JldHM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBkZXBsb3ltZW50cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGVtYWlsQWRkcmVzc2VzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgZW52aXJvbm1lbnRzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgZm9sbG93ZXJzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgZ2l0U3NoS2V5cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGdwZ0tleXM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBpbnRlcmFjdGlvbkxpbWl0cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IGlzc3Vlcz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG1lbWJlcnM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBtZXRhZGF0YT86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvbkFkbWluaXN0cmF0aW9uPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uQW5ub3VuY2VtZW50QmFubmVycz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvbkNvcGlsb3RTZWF0TWFuYWdlbWVudD86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvbkN1c3RvbU9yZ1JvbGVzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uQ3VzdG9tUHJvcGVydGllcz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvbkN1c3RvbVJvbGVzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uRXZlbnRzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uSG9va3M/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBvcmdhbml6YXRpb25QYWNrYWdlcz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvblBlcnNvbmFsQWNjZXNzVG9rZW5SZXF1ZXN0cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvblBlcnNvbmFsQWNjZXNzVG9rZW5zPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uUGxhbj86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvblByb2plY3RzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uU2VjcmV0cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvblNlbGZIb3N0ZWRSdW5uZXJzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgb3JnbmFpemF0aW9uVXNlckJsb2NraW5nPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgcGFja2FnZXM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBwYWdlcz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBwdWxsUmVxdWVzdHM/OiBBcHBQZXJtaXNzaW9uO1xuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgcmVtb3ZlZCBieSBHaXRIdWJcbiAgICovXG4gIHJlYWRvbmx5IHJlcG9zaXRvcnlBbm5vdW5jZW1lbnRCYW5uZXJzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgcmVwb3NpdG9yeUN1c3RvbVByb3BlcnRpZXM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSByZXBvc2l0b3J5SG9va3M/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSByZXBvc2l0b3J5UHJvamVjdHM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBzZWNyZXRTY2FubmluZ0FsZXJ0cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHNlY3JldHM/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBzZWN1cml0eUV2ZW50cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHNpbmdsZUZpbGU/OiBBcHBQZXJtaXNzaW9uO1xuICByZWFkb25seSBzdGFycmluZz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHN0YXR1c2VzPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgdGVhbURpc2N1c3Npb25zPzogQXBwUGVybWlzc2lvbjtcbiAgcmVhZG9ubHkgdnVsbmVyYWJpbGl0eUFsZXJ0cz86IEFwcFBlcm1pc3Npb247XG4gIHJlYWRvbmx5IHdvcmtmbG93cz86IEFwcFBlcm1pc3Npb247XG59XG5cbi8qKlxuICogQWNjZXNzIGxldmVsIGZvciB3b3JrZmxvdyBwZXJtaXNzaW9uIHNjb3Blcy5cbiAqL1xuZXhwb3J0IGVudW0gSm9iUGVybWlzc2lvbiB7XG4gIC8qKiBSZWFkLW9ubHkgYWNjZXNzICovXG4gIFJFQUQgPSBcInJlYWRcIixcblxuICAvKiogUmVhZC13cml0ZSBhY2Nlc3MgKi9cbiAgV1JJVEUgPSBcIndyaXRlXCIsXG5cbiAgLyoqIE5vIGFjY2VzcyBhdCBhbGwgKi9cbiAgTk9ORSA9IFwibm9uZVwiLFxufVxuXG4vKipcbiAqIFRoZSBwZXJtaXNzaW9ucyBhdmFpbGFibGUgZm9yIGFuIGFjY2VzcyB0b2tlbiBmb3IgYSBHaXRIdWIgQXBwLlxuICovXG5leHBvcnQgZW51bSBBcHBQZXJtaXNzaW9uIHtcbiAgLyoqIFJlYWQtb25seSBhY2NjZXNzICovXG4gIFJFQUQgPSBcInJlYWRcIixcbiAgLyoqIFJlYWQtd3JpdGUgYWNjZXNzICovXG4gIFdSSVRFID0gXCJ3cml0ZVwiLFxuICAvKipcbiAgICogUmVhZC13cml0ZSBhbmQgYWRtaW4gYWNjZXNzLlxuICAgKlxuICAgKiBOb3QgYWxsIHBlcm1pc3Npb25zIHN1cHBvcnQgYGFkbWluYC5cbiAgICovXG4gIEFETUlOID0gXCJhZG1pblwiLFxufVxuXG4vKipcbiAqIEFuIG91dHB1dCBiaW5kaW5nIGZvciBhIGpvYi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBKb2JTdGVwT3V0cHV0IHtcbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgc3RlcCB0aGF0IGV4cG9zZXMgdGhlIG91dHB1dC5cbiAgICovXG4gIHJlYWRvbmx5IHN0ZXBJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgam9iIG91dHB1dCB0aGF0IGlzIGJlaW5nIGJvdW5kLlxuICAgKi9cbiAgcmVhZG9ubHkgb3V0cHV0TmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIERlZmF1bHQgc2V0dGluZ3MgZm9yIGFsbCBzdGVwcyBpbiB0aGUgam9iLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEpvYkRlZmF1bHRzIHtcbiAgLyoqIERlZmF1bHQgcnVuIHNldHRpbmdzLiAqL1xuICByZWFkb25seSBydW4/OiBSdW5TZXR0aW5ncztcbn1cblxuLyoqXG4gKiBSdW4gc2V0dGluZ3MgZm9yIGEgam9iLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJ1blNldHRpbmdzIHtcbiAgLyoqXG4gICAqIFdoaWNoIHNoZWxsIHRvIHVzZSBmb3IgcnVubmluZyB0aGUgc3RlcC5cbiAgICpcbiAgICogQGV4YW1wbGUgXCJiYXNoXCJcbiAgICovXG4gIHJlYWRvbmx5IHNoZWxsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXb3JraW5nIGRpcmVjdG9yeSB0byB1c2Ugd2hlbiBydW5uaW5nIHRoZSBzdGVwLlxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2luZ0RpcmVjdG9yeT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBGaWVsZHMgdGhhdCBkZXNjcmliZSB0aGUgSG93LCBXaHksIFdoZW4sIGFuZCBXaG8gb2YgYSBTdGVwLlxuICogVGhlc2UgZmllbGRzIGNhbiBoYXZlIG5vbmUgcHJlc2VudCwgYnV0IGNhbiBiZSBwcmVzZW50IG9uIGV2ZXJ5IFN0ZXAsIGFuZCBoYXZlIG5vIGVmZmVjdCBvbiBvbmUgYW5vdGhlci5cbiAqXG4gKiBUaGlzIHN0YW5kcyBpbiBjb250cmFzdCB0byB0aGUgQ29tbWFuZCAobm9uLUNvbmZpZ3VyYXRpb24pIGZpZWxkcywgd2hpY2ggYXJlIG11dHVhbGx5IGV4Y2x1c2l2ZSwgYW5kIGRlc2NyaWJlIHRoZSBXaGF0LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0ZXBDb25maWd1cmF0aW9uIHtcbiAgLyoqXG4gICAqIEEgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBzdGVwLiBZb3UgY2FuIHVzZSB0aGUgaWQgdG8gcmVmZXJlbmNlIHRoZVxuICAgKiBzdGVwIGluIGNvbnRleHRzLlxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFlvdSBjYW4gdXNlIHRoZSBpZiBjb25kaXRpb25hbCB0byBwcmV2ZW50IGEgam9iIGZyb20gcnVubmluZyB1bmxlc3MgYVxuICAgKiBjb25kaXRpb24gaXMgbWV0LiBZb3UgY2FuIHVzZSBhbnkgc3VwcG9ydGVkIGNvbnRleHQgYW5kIGV4cHJlc3Npb24gdG9cbiAgICogY3JlYXRlIGEgY29uZGl0aW9uYWwuXG4gICAqL1xuICByZWFkb25seSBpZj86IHN0cmluZztcblxuICAvKipcbiAgICogQSBuYW1lIGZvciB5b3VyIHN0ZXAgdG8gZGlzcGxheSBvbiBHaXRIdWIuXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTZXRzIGVudmlyb25tZW50IHZhcmlhYmxlcyBmb3Igc3RlcHMgdG8gdXNlIGluIHRoZSBydW5uZXIgZW52aXJvbm1lbnQuXG4gICAqIFlvdSBjYW4gYWxzbyBzZXQgZW52aXJvbm1lbnQgdmFyaWFibGVzIGZvciB0aGUgZW50aXJlIHdvcmtmbG93IG9yIGEgam9iLlxuICAgKi9cbiAgcmVhZG9ubHkgZW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGEgd29ya2luZyBkaXJlY3RvcnkgZm9yIGEgc3RlcC5cbiAgICogT3ZlcnJpZGVzIGEgam9iJ3Mgd29ya2luZyBkaXJlY3RvcnkuXG4gICAqL1xuICByZWFkb25seSB3b3JraW5nRGlyZWN0b3J5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZXMgdGhlIGRlZmF1bHQgc2hlbGwgc2V0dGluZ3MgaW4gdGhlIHJ1bm5lcidzIG9wZXJhdGluZyBzeXN0ZW0gYW5kIHRoZSBqb2IncyBkZWZhdWx0LlxuICAgKlxuICAgKiBSZWZlciB0byBHaXRIdWIgZG9jdW1lbnRhdGlvbiBmb3IgYWxsb3dlZCB2YWx1ZXMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vYWN0aW9ucy93cml0aW5nLXdvcmtmbG93cy93b3JrZmxvdy1zeW50YXgtZm9yLWdpdGh1Yi1hY3Rpb25zI2pvYnNqb2JfaWRzdGVwc3NoZWxsXG4gICAqL1xuICByZWFkb25seSBzaGVsbD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBUaGlzIGNvbnRhaW5zIHRoZSBmaWVsZHMgdGhhdCBhcmUgY29tbW9uIGFtb25nc3QgYm90aDpcbiAqIC0gSm9iU3RlcCwgd2hpY2ggaXMgYSBzdGVwIHRoYXQgaXMgcGFydCBvZiBhIEpvYiBpbiBHaXRodWIgQWN0aW9ucy4gVGhpcyBpcyBieSBmYXIgdGhlIG1vc3QgY29tbW9uIHVzZSBjYXNlLlxuICogLSBUaGUgbWV0YWRhdGEgZmlsZSBgYWN0aW9uLnlhbWxgIHRoYXQgaXMgdXNlZCB0byBkZWZpbmUgYW4gQWN0aW9uIHdoZW4geW91IGFyZSBjcmVhdGluZyBvbmUuIEFzIGluLCBpZiB5b3Ugd2VyZSBjcmVhdGluZyBhbiBBY3Rpb24gdG8gYmUgdXNlZCBpbiBhIEpvYlN0ZXAuXG4gKiBUaGVyZSBpcyBzb21lIG92ZXJsYXAgYmV0d2VlbiB0aGUgdHdvLCBhbmQgdGhpcyBjYXB0dXJlcyB0aGF0IG92ZXJsYXAuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9hY3Rpb25zL2NyZWF0aW5nLWFjdGlvbnMvbWV0YWRhdGEtc3ludGF4LWZvci1naXRodWItYWN0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0ZXAgZXh0ZW5kcyBTdGVwQ29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBTZWxlY3RzIGFuIGFjdGlvbiB0byBydW4gYXMgcGFydCBvZiBhIHN0ZXAgaW4geW91ciBqb2IuIEFuIGFjdGlvbiBpcyBhXG4gICAqIHJldXNhYmxlIHVuaXQgb2YgY29kZS4gWW91IGNhbiB1c2UgYW4gYWN0aW9uIGRlZmluZWQgaW4gdGhlIHNhbWVcbiAgICogcmVwb3NpdG9yeSBhcyB0aGUgd29ya2Zsb3csIGEgcHVibGljIHJlcG9zaXRvcnksIG9yIGluIGEgcHVibGlzaGVkIERvY2tlclxuICAgKiBjb250YWluZXIgaW1hZ2UuXG4gICAqL1xuICByZWFkb25seSB1c2VzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSdW5zIGNvbW1hbmQtbGluZSBwcm9ncmFtcyB1c2luZyB0aGUgb3BlcmF0aW5nIHN5c3RlbSdzIHNoZWxsLiBJZiB5b3UgZG9cbiAgICogbm90IHByb3ZpZGUgYSBuYW1lLCB0aGUgc3RlcCBuYW1lIHdpbGwgZGVmYXVsdCB0byB0aGUgdGV4dCBzcGVjaWZpZWQgaW5cbiAgICogdGhlIHJ1biBjb21tYW5kLlxuICAgKi9cbiAgcmVhZG9ubHkgcnVuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBIG1hcCBvZiB0aGUgaW5wdXQgcGFyYW1ldGVycyBkZWZpbmVkIGJ5IHRoZSBhY3Rpb24uIEVhY2ggaW5wdXQgcGFyYW1ldGVyXG4gICAqIGlzIGEga2V5L3ZhbHVlIHBhaXIuIElucHV0IHBhcmFtZXRlcnMgYXJlIHNldCBhcyBlbnZpcm9ubWVudCB2YXJpYWJsZXMuXG4gICAqIFRoZSB2YXJpYWJsZSBpcyBwcmVmaXhlZCB3aXRoIElOUFVUXyBhbmQgY29udmVydGVkIHRvIHVwcGVyIGNhc2UuXG4gICAqL1xuICByZWFkb25seSB3aXRoPzogUmVjb3JkPHN0cmluZywgYW55Pjtcbn1cblxuLyoqXG4gKiBUaGVzZSBzZXR0aW5ncyBhcmUgdW5pcXVlIHRvIGEgSm9iU3RlcCBmcm9tIHRoZSBmaWVsZHMgY29udGFpbmVkIHdpdGhpbiB0aGUgbWV0YWRhdGEgYWN0aW9uLnlhbWwgZmlsZSBwcmVzZW50IGluIHdoZW4gY3JlYXRpbmcgYSBuZXcgR2l0SHViIEFjdGlvbi5cbiAqIFRoZXNlIGZpZWxkcyBhcmUgbm90IHByZXNlbnQgaW4gYWN0aW9uLnltbCwgYnV0IGFyZSBpbiBKb2JTdGVwLCB3aGljaCBhcmUgdXNpbmcgd2hlbiBjcmVhdGluZyB3b3JrZmxvd3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSm9iU3RlcENvbmZpZ3VyYXRpb24gZXh0ZW5kcyBTdGVwQ29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBQcmV2ZW50cyBhIGpvYiBmcm9tIGZhaWxpbmcgd2hlbiBhIHN0ZXAgZmFpbHMuIFNldCB0byB0cnVlIHRvIGFsbG93IGEgam9iXG4gICAqIHRvIHBhc3Mgd2hlbiB0aGlzIHN0ZXAgZmFpbHMuXG4gICAqL1xuICByZWFkb25seSBjb250aW51ZU9uRXJyb3I/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgbWludXRlcyB0byBydW4gdGhlIHN0ZXAgYmVmb3JlIGtpbGxpbmcgdGhlIHByb2Nlc3MuXG4gICAqL1xuICByZWFkb25seSB0aW1lb3V0TWludXRlcz86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBKb2JTdGVwcyBydW4gYXMgcGFydCBvZiBhIEdpdEh1YiBXb3JrZmxvdyBKb2IuXG4gKlxuICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9hY3Rpb25zL3VzaW5nLXdvcmtmbG93cy93b3JrZmxvdy1zeW50YXgtZm9yLWdpdGh1Yi1hY3Rpb25zI2pvYnNqb2JfaWRzdGVwc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEpvYlN0ZXAgZXh0ZW5kcyBTdGVwLCBKb2JTdGVwQ29uZmlndXJhdGlvbiB7fVxuXG4vKipcbiAqIEEgc3RyYXRlZ3kgY3JlYXRlcyBhIGJ1aWxkIG1hdHJpeCBmb3IgeW91ciBqb2JzLiBZb3UgY2FuIGRlZmluZSBkaWZmZXJlbnRcbiAqIHZhcmlhdGlvbnMgdG8gcnVuIGVhY2ggam9iIGluLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEpvYlN0cmF0ZWd5IHtcbiAgLyoqXG4gICAqIFlvdSBjYW4gZGVmaW5lIGEgbWF0cml4IG9mIGRpZmZlcmVudCBqb2IgY29uZmlndXJhdGlvbnMuIEEgbWF0cml4IGFsbG93c1xuICAgKiB5b3UgdG8gY3JlYXRlIG11bHRpcGxlIGpvYnMgYnkgcGVyZm9ybWluZyB2YXJpYWJsZSBzdWJzdGl0dXRpb24gaW4gYVxuICAgKiBzaW5nbGUgam9iIGRlZmluaXRpb24uIEZvciBleGFtcGxlLCB5b3UgY2FuIHVzZSBhIG1hdHJpeCB0byBjcmVhdGUgam9ic1xuICAgKiBmb3IgbW9yZSB0aGFuIG9uZSBzdXBwb3J0ZWQgdmVyc2lvbiBvZiBhIHByb2dyYW1taW5nIGxhbmd1YWdlLCBvcGVyYXRpbmdcbiAgICogc3lzdGVtLCBvciB0b29sLiBBIG1hdHJpeCByZXVzZXMgdGhlIGpvYidzIGNvbmZpZ3VyYXRpb24gYW5kIGNyZWF0ZXMgYVxuICAgKiBqb2IgZm9yIGVhY2ggbWF0cml4IHlvdSBjb25maWd1cmUuXG4gICAqXG4gICAqIEEgam9iIG1hdHJpeCBjYW4gZ2VuZXJhdGUgYSBtYXhpbXVtIG9mIDI1NiBqb2JzIHBlciB3b3JrZmxvdyBydW4uIFRoaXNcbiAgICogbGltaXQgYWxzbyBhcHBsaWVzIHRvIHNlbGYtaG9zdGVkIHJ1bm5lcnMuXG4gICAqL1xuICByZWFkb25seSBtYXRyaXg/OiBKb2JNYXRyaXg7XG5cbiAgLyoqXG4gICAqIFdoZW4gc2V0IHRvIHRydWUsIEdpdEh1YiBjYW5jZWxzIGFsbCBpbi1wcm9ncmVzcyBqb2JzIGlmIGFueSBtYXRyaXggam9iXG4gICAqIGZhaWxzLiBEZWZhdWx0OiB0cnVlXG4gICAqL1xuICByZWFkb25seSBmYWlsRmFzdD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBqb2JzIHRoYXQgY2FuIHJ1biBzaW11bHRhbmVvdXNseSB3aGVuIHVzaW5nIGFcbiAgICogbWF0cml4IGpvYiBzdHJhdGVneS4gQnkgZGVmYXVsdCwgR2l0SHViIHdpbGwgbWF4aW1pemUgdGhlIG51bWJlciBvZiBqb2JzXG4gICAqIHJ1biBpbiBwYXJhbGxlbCBkZXBlbmRpbmcgb24gdGhlIGF2YWlsYWJsZSBydW5uZXJzIG9uIEdpdEh1Yi1ob3N0ZWRcbiAgICogdmlydHVhbCBtYWNoaW5lcy5cbiAgICovXG4gIHJlYWRvbmx5IG1heFBhcmFsbGVsPzogbnVtYmVyO1xufVxuXG50eXBlIEpvYk1hdHJpeFZhbHVlID0gc3RyaW5nIHwgYm9vbGVhbiB8IG51bWJlcjtcblxuLyoqXG4gKiBBIGpvYiBtYXRyaXguXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSm9iTWF0cml4IHtcbiAgLyoqXG4gICAqIEVhY2ggb3B0aW9uIHlvdSBkZWZpbmUgaW4gdGhlIG1hdHJpeCBoYXMgYSBrZXkgYW5kIHZhbHVlLiBUaGUga2V5cyB5b3VcbiAgICogZGVmaW5lIGJlY29tZSBwcm9wZXJ0aWVzIGluIHRoZSBtYXRyaXggY29udGV4dCBhbmQgeW91IGNhbiByZWZlcmVuY2UgdGhlXG4gICAqIHByb3BlcnR5IGluIG90aGVyIGFyZWFzIG9mIHlvdXIgd29ya2Zsb3cgZmlsZS4gRm9yIGV4YW1wbGUsIGlmIHlvdSBkZWZpbmVcbiAgICogdGhlIGtleSBvcyB0aGF0IGNvbnRhaW5zIGFuIGFycmF5IG9mIG9wZXJhdGluZyBzeXN0ZW1zLCB5b3UgY2FuIHVzZSB0aGVcbiAgICogbWF0cml4Lm9zIHByb3BlcnR5IGFzIHRoZSB2YWx1ZSBvZiB0aGUgcnVucy1vbiBrZXl3b3JkIHRvIGNyZWF0ZSBhIGpvYlxuICAgKiBmb3IgZWFjaCBvcGVyYXRpbmcgc3lzdGVtLlxuICAgKi9cbiAgcmVhZG9ubHkgZG9tYWluPzogUmVjb3JkPHN0cmluZywgc3RyaW5nIHwgSm9iTWF0cml4VmFsdWVbXT47XG5cbiAgLyoqXG4gICAqIFlvdSBjYW4gYWRkIGFkZGl0aW9uYWwgY29uZmlndXJhdGlvbiBvcHRpb25zIHRvIGEgYnVpbGQgbWF0cml4IGpvYiB0aGF0XG4gICAqIGFscmVhZHkgZXhpc3RzLiBGb3IgZXhhbXBsZSwgaWYgeW91IHdhbnQgdG8gdXNlIGEgc3BlY2lmaWMgdmVyc2lvbiBvZiBucG1cbiAgICogd2hlbiB0aGUgam9iIHRoYXQgdXNlcyB3aW5kb3dzLWxhdGVzdCBhbmQgdmVyc2lvbiA4IG9mIG5vZGUgcnVucywgeW91IGNhblxuICAgKiB1c2UgaW5jbHVkZSB0byBzcGVjaWZ5IHRoYXQgYWRkaXRpb25hbCBvcHRpb24uXG4gICAqL1xuICByZWFkb25seSBpbmNsdWRlPzogQXJyYXk8UmVjb3JkPHN0cmluZywgSm9iTWF0cml4VmFsdWU+PjtcblxuICAvKipcbiAgICogWW91IGNhbiByZW1vdmUgYSBzcGVjaWZpYyBjb25maWd1cmF0aW9ucyBkZWZpbmVkIGluIHRoZSBidWlsZCBtYXRyaXhcbiAgICogdXNpbmcgdGhlIGV4Y2x1ZGUgb3B0aW9uLiBVc2luZyBleGNsdWRlIHJlbW92ZXMgYSBqb2IgZGVmaW5lZCBieSB0aGVcbiAgICogYnVpbGQgbWF0cml4LlxuICAgKi9cbiAgcmVhZG9ubHkgZXhjbHVkZT86IEFycmF5PFJlY29yZDxzdHJpbmcsIEpvYk1hdHJpeFZhbHVlPj47XG59XG5cbi8qKlxuICogT3B0aW9ucyBwZXJ0YWluaW5nIHRvIGNvbnRhaW5lciBlbnZpcm9ubWVudHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGFpbmVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgRG9ja2VyIGltYWdlIHRvIHVzZSBhcyB0aGUgY29udGFpbmVyIHRvIHJ1biB0aGUgYWN0aW9uLiBUaGUgdmFsdWUgY2FuXG4gICAqIGJlIHRoZSBEb2NrZXIgSHViIGltYWdlIG5hbWUgb3IgYSByZWdpc3RyeSBuYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgaW1hZ2U6IHN0cmluZztcblxuICAvKipcbiAgICogZiB0aGUgaW1hZ2UncyBjb250YWluZXIgcmVnaXN0cnkgcmVxdWlyZXMgYXV0aGVudGljYXRpb24gdG8gcHVsbCB0aGVcbiAgICogaW1hZ2UsIHlvdSBjYW4gdXNlIGNyZWRlbnRpYWxzIHRvIHNldCBhIG1hcCBvZiB0aGUgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLlxuICAgKiBUaGUgY3JlZGVudGlhbHMgYXJlIHRoZSBzYW1lIHZhbHVlcyB0aGF0IHlvdSB3b3VsZCBwcm92aWRlIHRvIHRoZSBkb2NrZXJcbiAgICogbG9naW4gY29tbWFuZC5cbiAgICovXG4gIHJlYWRvbmx5IGNyZWRlbnRpYWxzPzogQ29udGFpbmVyQ3JlZGVudGlhbHM7XG5cbiAgLyoqXG4gICAqIFNldHMgYSBtYXAgb2YgZW52aXJvbm1lbnQgdmFyaWFibGVzIGluIHRoZSBjb250YWluZXIuXG4gICAqL1xuICByZWFkb25seSBlbnY/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXG4gIC8qKlxuICAgKiBTZXRzIGFuIGFycmF5IG9mIHBvcnRzIHRvIGV4cG9zZSBvbiB0aGUgY29udGFpbmVyLlxuICAgKi9cbiAgcmVhZG9ubHkgcG9ydHM/OiBudW1iZXJbXTtcblxuICAvKipcbiAgICogU2V0cyBhbiBhcnJheSBvZiB2b2x1bWVzIGZvciB0aGUgY29udGFpbmVyIHRvIHVzZS4gWW91IGNhbiB1c2Ugdm9sdW1lcyB0b1xuICAgKiBzaGFyZSBkYXRhIGJldHdlZW4gc2VydmljZXMgb3Igb3RoZXIgc3RlcHMgaW4gYSBqb2IuIFlvdSBjYW4gc3BlY2lmeVxuICAgKiBuYW1lZCBEb2NrZXIgdm9sdW1lcywgYW5vbnltb3VzIERvY2tlciB2b2x1bWVzLCBvciBiaW5kIG1vdW50cyBvbiB0aGVcbiAgICogaG9zdC5cbiAgICpcbiAgICogVG8gc3BlY2lmeSBhIHZvbHVtZSwgeW91IHNwZWNpZnkgdGhlIHNvdXJjZSBhbmQgZGVzdGluYXRpb24gcGF0aDpcbiAgICogYDxzb3VyY2U+OjxkZXN0aW5hdGlvblBhdGg+YC5cbiAgICovXG4gIHJlYWRvbmx5IHZvbHVtZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBEb2NrZXIgY29udGFpbmVyIHJlc291cmNlIG9wdGlvbnMuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmRvY2tlci5jb20vZW5naW5lL3JlZmVyZW5jZS9jb21tYW5kbGluZS9jcmVhdGUvI29wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IG9wdGlvbnM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBDcmVkZW50aWFscyB0byB1c2UgdG8gYXV0aGVudGljYXRlIHRvIERvY2tlciByZWdpc3RyaWVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbnRhaW5lckNyZWRlbnRpYWxzIHtcbiAgLyoqIFRoZSB1c2VybmFtZS4gKi9cbiAgcmVhZG9ubHkgdXNlcm5hbWU6IHN0cmluZztcblxuICAvKiogVGhlIHBhc3N3b3JkLiAqL1xuICByZWFkb25seSBwYXNzd29yZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFRoZSBzZXQgb2YgYXZhaWxhYmxlIHRyaWdnZXJzIGZvciBHaXRIdWIgV29ya2Zsb3dzLlxuICpcbiAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vYWN0aW9ucy9yZWZlcmVuY2UvZXZlbnRzLXRoYXQtdHJpZ2dlci13b3JrZmxvd3NcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUcmlnZ2VycyB7XG4gIC8vI3JlZ2lvbiBTY2hlZHVsZWQgZXZlbnRzXG4gIC8qKlxuICAgKiBZb3UgY2FuIHNjaGVkdWxlIGEgd29ya2Zsb3cgdG8gcnVuIGF0IHNwZWNpZmljIFVUQyB0aW1lcyB1c2luZyBQT1NJWCBjcm9uXG4gICAqIHN5bnRheC4gU2NoZWR1bGVkIHdvcmtmbG93cyBydW4gb24gdGhlIGxhdGVzdCBjb21taXQgb24gdGhlIGRlZmF1bHQgb3JcbiAgICogYmFzZSBicmFuY2guIFRoZSBzaG9ydGVzdCBpbnRlcnZhbCB5b3UgY2FuIHJ1biBzY2hlZHVsZWQgd29ya2Zsb3dzIGlzXG4gICAqIG9uY2UgZXZlcnkgNSBtaW51dGVzLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vcHVicy5vcGVuZ3JvdXAub3JnL29ubGluZXB1YnMvOTY5OTkxOTc5OS91dGlsaXRpZXMvY3JvbnRhYi5odG1sI3RhZ18yMF8yNV8wN1xuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGU/OiBDcm9uU2NoZWR1bGVPcHRpb25zW107XG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiBNYW51YWwgZXZlbnRzXG4gIC8qKlxuICAgKiBZb3UgY2FuIGNvbmZpZ3VyZSBjdXN0b20tZGVmaW5lZCBpbnB1dCBwcm9wZXJ0aWVzLCBkZWZhdWx0IGlucHV0IHZhbHVlcyxcbiAgICogYW5kIHJlcXVpcmVkIGlucHV0cyBmb3IgdGhlIGV2ZW50IGRpcmVjdGx5IGluIHlvdXIgd29ya2Zsb3cuIFdoZW4gdGhlXG4gICAqIHdvcmtmbG93IHJ1bnMsIHlvdSBjYW4gYWNjZXNzIHRoZSBpbnB1dCB2YWx1ZXMgaW4gdGhlIGdpdGh1Yi5ldmVudC5pbnB1dHNcbiAgICogY29udGV4dC5cbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93RGlzcGF0Y2g/OiBXb3JrZmxvd0Rpc3BhdGNoT3B0aW9ucztcblxuICAvKipcbiAgICogWW91IGNhbiB1c2UgdGhlIEdpdEh1YiBBUEkgdG8gdHJpZ2dlciBhIHdlYmhvb2sgZXZlbnQgY2FsbGVkXG4gICAqIHJlcG9zaXRvcnlfZGlzcGF0Y2ggd2hlbiB5b3Ugd2FudCB0byB0cmlnZ2VyIGEgd29ya2Zsb3cgZm9yIGFjdGl2aXR5IHRoYXRcbiAgICogaGFwcGVucyBvdXRzaWRlIG9mIEdpdEh1Yi5cbiAgICovXG4gIHJlYWRvbmx5IHJlcG9zaXRvcnlEaXNwYXRjaD86IFJlcG9zaXRvcnlEaXNwYXRjaE9wdGlvbnM7XG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiBXb3JrZmxvdyByZXVzZSBldmVudHNcbiAgLyoqXG4gICAqIENhbiBiZSBjYWxsZWQgZnJvbSBhbm90aGVyIHdvcmtmbG93XG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vYWN0aW9ucy9sZWFybi1naXRodWItYWN0aW9ucy9yZXVzaW5nLXdvcmtmbG93c1xuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dDYWxsPzogV29ya2Zsb3dDYWxsT3B0aW9ucztcbiAgLy8jZW5kcmVnaW9uXG5cbiAgLy8jcmVnaW9uIFdlYmhvb2sgZXZlbnRzXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgYnJhbmNoX3Byb3RlY3Rpb25fcnVsZSBldmVudCBvY2N1cnMuXG4gICAqL1xuICByZWFkb25seSBicmFuY2hQcm90ZWN0aW9uUnVsZT86IEJyYW5jaFByb3RlY3Rpb25SdWxlT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgdGhlIGNoZWNrX3J1biBldmVudCBvY2N1cnMuXG4gICAqL1xuICByZWFkb25seSBjaGVja1J1bj86IENoZWNrUnVuT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgdGhlIGNoZWNrX3N1aXRlIGV2ZW50IG9jY3Vycy5cbiAgICovXG4gIHJlYWRvbmx5IGNoZWNrU3VpdGU/OiBDaGVja1N1aXRlT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgc29tZW9uZSBjcmVhdGVzIGEgYnJhbmNoIG9yIHRhZywgd2hpY2hcbiAgICogdHJpZ2dlcnMgdGhlIGNyZWF0ZSBldmVudC5cbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZT86IENyZWF0ZU9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHNvbWVvbmUgZGVsZXRlcyBhIGJyYW5jaCBvciB0YWcsIHdoaWNoXG4gICAqIHRyaWdnZXJzIHRoZSBkZWxldGUgZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBkZWxldGU/OiBEZWxldGVPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSBzb21lb25lIGNyZWF0ZXMgYSBkZXBsb3ltZW50LCB3aGljaCB0cmlnZ2Vyc1xuICAgKiB0aGUgZGVwbG95bWVudCBldmVudC4gRGVwbG95bWVudHMgY3JlYXRlZCB3aXRoIGEgY29tbWl0IFNIQSBtYXkgbm90IGhhdmVcbiAgICogYSBHaXQgcmVmLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVwbG95bWVudD86IERlcGxveW1lbnRPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSBhIHRoaXJkIHBhcnR5IHByb3ZpZGVzIGEgZGVwbG95bWVudCBzdGF0dXMsXG4gICAqIHdoaWNoIHRyaWdnZXJzIHRoZSBkZXBsb3ltZW50X3N0YXR1cyBldmVudC4gRGVwbG95bWVudHMgY3JlYXRlZCB3aXRoIGFcbiAgICogY29tbWl0IFNIQSBtYXkgbm90IGhhdmUgYSBHaXQgcmVmLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVwbG95bWVudFN0YXR1cz86IERlcGxveW1lbnRTdGF0dXNPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgZGlzY3Vzc2lvbiBldmVudCBvY2N1cnMuIE1vcmUgdGhhbiBvbmUgYWN0aXZpdHkgdHlwZSB0cmlnZ2VycyB0aGlzIGV2ZW50LlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2dyYXBocWwvZ3VpZGVzL3VzaW5nLXRoZS1ncmFwaHFsLWFwaS1mb3ItZGlzY3Vzc2lvbnNcbiAgICovXG4gIHJlYWRvbmx5IGRpc2N1c3Npb24/OiBEaXNjdXNzaW9uT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgdGhlIGRpc2N1c3Npb25fY29tbWVudCBldmVudCBvY2N1cnMuIE1vcmUgdGhhbiBvbmUgYWN0aXZpdHkgdHlwZSB0cmlnZ2VycyB0aGlzIGV2ZW50LlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2dyYXBocWwvZ3VpZGVzL3VzaW5nLXRoZS1ncmFwaHFsLWFwaS1mb3ItZGlzY3Vzc2lvbnNcbiAgICovXG4gIHJlYWRvbmx5IGRpc2N1c3Npb25Db21tZW50PzogRGlzY3Vzc2lvbkNvbW1lbnRPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB3aGVuIHNvbWVvbmUgZm9ya3MgYSByZXBvc2l0b3J5LCB3aGljaFxuICAgKiB0cmlnZ2VycyB0aGUgZm9yayBldmVudC5cbiAgICovXG4gIHJlYWRvbmx5IGZvcms/OiBGb3JrT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IHdoZW4gc29tZW9uZSBjcmVhdGVzIG9yIHVwZGF0ZXMgYSBXaWtpIHBhZ2UsIHdoaWNoXG4gICAqIHRyaWdnZXJzIHRoZSBnb2xsdW0gZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBnb2xsdW0/OiBHb2xsdW1PcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgaXNzdWVfY29tbWVudCBldmVudCBvY2N1cnMuXG4gICAqL1xuICByZWFkb25seSBpc3N1ZUNvbW1lbnQ/OiBJc3N1ZUNvbW1lbnRPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgaXNzdWVzIGV2ZW50IG9jY3Vycy5cbiAgICovXG4gIHJlYWRvbmx5IGlzc3Vlcz86IElzc3Vlc09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSBsYWJlbCBldmVudCBvY2N1cnMuXG4gICAqL1xuICByZWFkb25seSBsYWJlbD86IExhYmVsT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IHdoZW4gYSBwdWxsIHJlcXVlc3QgaXMgYWRkZWQgdG8gYSBtZXJnZSBxdWV1ZSwgd2hpY2hcbiAgICogYWRkcyB0aGUgcHVsbCByZXF1ZXN0IHRvIGEgbWVyZ2UgZ3JvdXAuXG4gICAqXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBtZXJnZUdyb3VwPzogTWVyZ2VHcm91cE9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSBtaWxlc3RvbmUgZXZlbnQgb2NjdXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgbWlsZXN0b25lPzogTWlsZXN0b25lT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgc29tZW9uZSBwdXNoZXMgdG8gYSBHaXRIdWIgUGFnZXMtZW5hYmxlZFxuICAgKiBicmFuY2gsIHdoaWNoIHRyaWdnZXJzIHRoZSBwYWdlX2J1aWxkIGV2ZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgcGFnZUJ1aWxkPzogUGFnZUJ1aWxkT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgdGhlIHByb2plY3QgZXZlbnQgb2NjdXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdD86IFByb2plY3RPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgcHJvamVjdF9jYXJkIGV2ZW50IG9jY3Vycy5cbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RDYXJkPzogUHJvamVjdENhcmRPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSB0aGUgcHJvamVjdF9jb2x1bW4gZXZlbnQgb2NjdXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdENvbHVtbj86IFByb2plY3RDb2x1bW5PcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSBzb21lb25lIG1ha2VzIGEgcHJpdmF0ZSByZXBvc2l0b3J5IHB1YmxpYyxcbiAgICogd2hpY2ggdHJpZ2dlcnMgdGhlIHB1YmxpYyBldmVudC5cbiAgICovXG4gIHJlYWRvbmx5IHB1YmxpYz86IFB1YmxpY09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSBwdWxsX3JlcXVlc3QgZXZlbnQgb2NjdXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgcHVsbFJlcXVlc3Q/OiBQdWxsUmVxdWVzdE9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSBwdWxsX3JlcXVlc3RfcmV2aWV3IGV2ZW50IG9jY3Vycy5cbiAgICovXG4gIHJlYWRvbmx5IHB1bGxSZXF1ZXN0UmV2aWV3PzogUHVsbFJlcXVlc3RSZXZpZXdPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBSdW5zIHlvdXIgd29ya2Zsb3cgYW55dGltZSBhIGNvbW1lbnQgb24gYSBwdWxsIHJlcXVlc3QncyB1bmlmaWVkIGRpZmYgaXNcbiAgICogbW9kaWZpZWQsIHdoaWNoIHRyaWdnZXJzIHRoZSBwdWxsX3JlcXVlc3RfcmV2aWV3X2NvbW1lbnQgZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFJldmlld0NvbW1lbnQ/OiBQdWxsUmVxdWVzdFJldmlld0NvbW1lbnRPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBUaGlzIGV2ZW50IHJ1bnMgaW4gdGhlIGNvbnRleHQgb2YgdGhlIGJhc2Ugb2YgdGhlIHB1bGwgcmVxdWVzdCwgcmF0aGVyXG4gICAqIHRoYW4gaW4gdGhlIG1lcmdlIGNvbW1pdCBhcyB0aGUgcHVsbF9yZXF1ZXN0IGV2ZW50IGRvZXMuIFRoaXMgcHJldmVudHNcbiAgICogZXhlY3V0aW5nIHVuc2FmZSB3b3JrZmxvdyBjb2RlIGZyb20gdGhlIGhlYWQgb2YgdGhlIHB1bGwgcmVxdWVzdCB0aGF0XG4gICAqIGNvdWxkIGFsdGVyIHlvdXIgcmVwb3NpdG9yeSBvciBzdGVhbCBhbnkgc2VjcmV0cyB5b3UgdXNlIGluIHlvdXIgd29ya2Zsb3cuXG4gICAqIFRoaXMgZXZlbnQgYWxsb3dzIHlvdSB0byBkbyB0aGluZ3MgbGlrZSBjcmVhdGUgd29ya2Zsb3dzIHRoYXQgbGFiZWwgYW5kXG4gICAqIGNvbW1lbnQgb24gcHVsbCByZXF1ZXN0cyBiYXNlZCBvbiB0aGUgY29udGVudHMgb2YgdGhlIGV2ZW50IHBheWxvYWQuXG4gICAqXG4gICAqIFdBUk5JTkc6IFRoZSBgcHVsbF9yZXF1ZXN0X3RhcmdldGAgZXZlbnQgaXMgZ3JhbnRlZCByZWFkL3dyaXRlIHJlcG9zaXRvcnlcbiAgICogdG9rZW4gYW5kIGNhbiBhY2Nlc3Mgc2VjcmV0cywgZXZlbiB3aGVuIGl0IGlzIHRyaWdnZXJlZCBmcm9tIGEgZm9yay5cbiAgICogQWx0aG91Z2ggdGhlIHdvcmtmbG93IHJ1bnMgaW4gdGhlIGNvbnRleHQgb2YgdGhlIGJhc2Ugb2YgdGhlIHB1bGwgcmVxdWVzdCxcbiAgICogeW91IHNob3VsZCBtYWtlIHN1cmUgdGhhdCB5b3UgZG8gbm90IGNoZWNrIG91dCwgYnVpbGQsIG9yIHJ1biB1bnRydXN0ZWRcbiAgICogY29kZSBmcm9tIHRoZSBwdWxsIHJlcXVlc3Qgd2l0aCB0aGlzIGV2ZW50LiBBZGRpdGlvbmFsbHksIGFueSBjYWNoZXNcbiAgICogc2hhcmUgdGhlIHNhbWUgc2NvcGUgYXMgdGhlIGJhc2UgYnJhbmNoLCBhbmQgdG8gaGVscCBwcmV2ZW50IGNhY2hlXG4gICAqIHBvaXNvbmluZywgeW91IHNob3VsZCBub3Qgc2F2ZSB0aGUgY2FjaGUgaWYgdGhlcmUgaXMgYSBwb3NzaWJpbGl0eSB0aGF0XG4gICAqIHRoZSBjYWNoZSBjb250ZW50cyB3ZXJlIGFsdGVyZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9zZWN1cml0eWxhYi5naXRodWIuY29tL3Jlc2VhcmNoL2dpdGh1Yi1hY3Rpb25zLXByZXZlbnRpbmctcHduLXJlcXVlc3RzXG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFRhcmdldD86IFB1bGxSZXF1ZXN0VGFyZ2V0T3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IHdoZW4gc29tZW9uZSBwdXNoZXMgdG8gYSByZXBvc2l0b3J5IGJyYW5jaCwgd2hpY2hcbiAgICogdHJpZ2dlcnMgdGhlIHB1c2ggZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBwdXNoPzogUHVzaE9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIGEgcGFja2FnZSBpcyBwdWJsaXNoZWQgb3IgdXBkYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lzdHJ5UGFja2FnZT86IFJlZ2lzdHJ5UGFja2FnZU9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSByZWxlYXNlIGV2ZW50IG9jY3Vycy5cbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2U/OiBSZWxlYXNlT3B0aW9ucztcblxuICAvKipcbiAgICogUnVucyB5b3VyIHdvcmtmbG93IGFueXRpbWUgdGhlIHN0YXR1cyBvZiBhIEdpdCBjb21taXQgY2hhbmdlcywgd2hpY2hcbiAgICogdHJpZ2dlcnMgdGhlIHN0YXR1cyBldmVudC5cbiAgICovXG4gIHJlYWRvbmx5IHN0YXR1cz86IFN0YXR1c09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFJ1bnMgeW91ciB3b3JrZmxvdyBhbnl0aW1lIHRoZSB3YXRjaCBldmVudCBvY2N1cnMuXG4gICAqL1xuICByZWFkb25seSB3YXRjaD86IFdhdGNoT3B0aW9ucztcblxuICAvKipcbiAgICogVGhpcyBldmVudCBvY2N1cnMgd2hlbiBhIHdvcmtmbG93IHJ1biBpcyByZXF1ZXN0ZWQgb3IgY29tcGxldGVkLCBhbmRcbiAgICogYWxsb3dzIHlvdSB0byBleGVjdXRlIGEgd29ya2Zsb3cgYmFzZWQgb24gdGhlIGZpbmlzaGVkIHJlc3VsdCBvZiBhbm90aGVyXG4gICAqIHdvcmtmbG93LiBBIHdvcmtmbG93IHJ1biBpcyB0cmlnZ2VyZWQgcmVnYXJkbGVzcyBvZiB0aGUgcmVzdWx0IG9mIHRoZVxuICAgKiBwcmV2aW91cyB3b3JrZmxvdy5cbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93UnVuPzogV29ya2Zsb3dSdW5PcHRpb25zO1xuICAvLyNlbmRyZWdpb25cbn1cblxuLyoqXG4gKiBDUk9OIHNjaGVkdWxlIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JvblNjaGVkdWxlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBAc2VlIGh0dHBzOi8vcHVicy5vcGVuZ3JvdXAub3JnL29ubGluZXB1YnMvOTY5OTkxOTc5OS91dGlsaXRpZXMvY3JvbnRhYi5odG1sI3RhZ18yMF8yNV8wN1xuICAgKi9cbiAgcmVhZG9ubHkgY3Jvbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcG9zaXRvcnkgZGlzcGF0Y2ggb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXBvc2l0b3J5RGlzcGF0Y2hPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBCcmFuY2ggUHJvdGVjdGlvbiBSdWxlIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCcmFuY2hQcm90ZWN0aW9uUnVsZU9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY3JlYXRlZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiPjtcbn1cblxuLyoqXG4gKiBDaGVjayBydW4gb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGVja1J1bk9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFxuICAgIFwiY3JlYXRlXCIgfCBcInJlcmVxdWVzdGVkXCIgfCBcImNvbXBsZXRlZFwiIHwgXCJyZXF1ZXN0ZWRfYWN0aW9uXCJcbiAgPjtcbn1cblxuLyoqXG4gKiBDaGVjayBzdWl0ZSBvcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2hlY2tTdWl0ZU9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY29tcGxldGVkXCIgfCBcInJlcXVlc3RlZFwiIHwgXCJyZXJlcXVlc3RlZFwiPjtcbn1cblxuLyoqXG4gKiBEaXNjdXNzaW9uIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEaXNjdXNzaW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGljaCBhY3Rpdml0eSB0eXBlcyB0byB0cmlnZ2VyIG9uLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBhbGwgYWN0aXZpdHkgdHlwZXNcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVzPzogQXJyYXk8XG4gICAgfCBcImNyZWF0ZWRcIlxuICAgIHwgXCJlZGl0ZWRcIlxuICAgIHwgXCJ0cmFuc2ZlcnJlZFwiXG4gICAgfCBcInBpbm5lZFwiXG4gICAgfCBcInVucGlubmVkXCJcbiAgICB8IFwibGFiZWxlZFwiXG4gICAgfCBcInVubGFiZWxlZFwiXG4gICAgfCBcImxvY2tlZFwiXG4gICAgfCBcInVubG9ja2VkXCJcbiAgICB8IFwiY2F0ZWdvcnlfY2hhbmdlZFwiXG4gICAgfCBcImFuc3dlcmVkXCJcbiAgICB8IFwidW5hbnN3ZXJlZFwiXG4gID47XG59XG5cbi8qKlxuICogRGlzY3Vzc2lvbiBjb21tZW50IG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEaXNjdXNzaW9uQ29tbWVudE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY3JlYXRlZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiPjtcbn1cblxuLyoqXG4gKiBJc3N1ZSBjb21tZW50IG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJc3N1ZUNvbW1lbnRPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBBcnJheTxcImNyZWF0ZWRcIiB8IFwiZWRpdGVkXCIgfCBcImRlbGV0ZWRcIj47XG59XG5cbi8qKlxuICogSXNzdWVzIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJc3N1ZXNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBBcnJheTxcbiAgICB8IFwib3BlbmVkXCJcbiAgICB8IFwiZWRpdGVkXCJcbiAgICB8IFwiZGVsZXRlZFwiXG4gICAgfCBcInRyYW5zZmVycmVkXCJcbiAgICB8IFwicGlubmVkXCJcbiAgICB8IFwidW5waW5uZWRcIlxuICAgIHwgXCJjbG9zZWRcIlxuICAgIHwgXCJyZW9wZW5lZFwiXG4gICAgfCBcImFzc2lnbmVkXCJcbiAgICB8IFwidW5hc3NpZ25lZFwiXG4gICAgfCBcImxhYmVsZWRcIlxuICAgIHwgXCJ1bmxhYmVsZWRcIlxuICAgIHwgXCJsb2NrZWRcIlxuICAgIHwgXCJ1bmxvY2tlZFwiXG4gICAgfCBcIm1pbGVzdG9uZWRcIlxuICAgIHwgXCJkZW1pbGVzdG9uZWRcIlxuICA+O1xufVxuXG4vKipcbiAqIExhYmVsIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMYWJlbE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY3JlYXRlZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiPjtcbn1cblxuLyoqXG4gKiBNZXJnZSBncm91cCBvcHRpb25zLlxuICpcbiAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWVyZ2VHcm91cE9wdGlvbnMge1xuICAvKipcbiAgICogV2hlbiB1c2luZyB0aGUgbWVyZ2VfZ3JvdXAgZXZlbnRzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIHdvcmtmbG93XG4gICAqIHRvIHJ1biBvbiBzcGVjaWZpYyBiYXNlIGJyYW5jaGVzLiBJZiBub3Qgc3BlY2lmaWVkLCBhbGwgYnJhbmNoZXMgd2lsbFxuICAgKiB0cmlnZ2VyIHRoZSB3b3JrZmxvdy5cbiAgICovXG4gIHJlYWRvbmx5IGJyYW5jaGVzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogTWlsZXN0b25lIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNaWxlc3RvbmVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBBcnJheTxcbiAgICBcImNyZWF0ZWRcIiB8IFwiY2xvc2VkXCIgfCBcIm9wZW5lZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiXG4gID47XG59XG5cbi8qKlxuICogUHJvamVjdCBvcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvamVjdE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFxuICAgIFwiY3JlYXRlZFwiIHwgXCJ1cGRhdGVkXCIgfCBcImNsb3NlZFwiIHwgXCJyZW9wZW5lZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiXG4gID47XG59XG5cbi8qKlxuICogUHJvamVjdCBjYXJkIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcm9qZWN0Q2FyZE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFxuICAgIFwiY3JlYXRlZFwiIHwgXCJtb3ZlZFwiIHwgXCJjb252ZXJ0ZWRcIiB8IFwiZWRpdGVkXCIgfCBcImRlbGV0ZWRcIlxuICA+O1xufVxuXG4vKipcbiAqIFByb2JqZWN0IGNvbHVtbiBvcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvamVjdENvbHVtbk9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY3JlYXRlZFwiIHwgXCJ1cGRhdGVkXCIgfCBcIm1vdmVkXCIgfCBcImRlbGV0ZWRcIj47XG59XG5cbi8qKlxuICogUHVsbCByZXF1ZXN0IG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQdWxsUmVxdWVzdE9wdGlvbnMgZXh0ZW5kcyBQdXNoT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGljaCBhY3Rpdml0eSB0eXBlcyB0byB0cmlnZ2VyIG9uLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBhbGwgYWN0aXZpdHkgdHlwZXNcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVzPzogQXJyYXk8XG4gICAgfCBcImFzc2lnbmVkXCJcbiAgICB8IFwidW5hc3NpZ25lZFwiXG4gICAgfCBcImxhYmVsZWRcIlxuICAgIHwgXCJ1bmxhYmVsZWRcIlxuICAgIHwgXCJvcGVuZWRcIlxuICAgIHwgXCJlZGl0ZWRcIlxuICAgIHwgXCJjbG9zZWRcIlxuICAgIHwgXCJyZW9wZW5lZFwiXG4gICAgfCBcInN5bmNocm9uaXplXCJcbiAgICB8IFwicmVhZHlfZm9yX3Jldmlld1wiXG4gICAgfCBcImxvY2tlZFwiXG4gICAgfCBcInVubG9ja2VkXCJcbiAgICB8IFwicmV2aWV3X3JlcXVlc3RlZFwiXG4gICAgfCBcInJldmlld19yZXF1ZXN0X3JlbW92ZWRcIlxuICA+O1xufVxuXG4vKipcbiAqIFB1bGwgcmVxdWVzdCByZXZpZXcgb3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFB1bGxSZXF1ZXN0UmV2aWV3T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGljaCBhY3Rpdml0eSB0eXBlcyB0byB0cmlnZ2VyIG9uLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBhbGwgYWN0aXZpdHkgdHlwZXNcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVzPzogQXJyYXk8XCJzdWJtaXR0ZWRcIiB8IFwiZWRpdGVkXCIgfCBcImRpc21pc3NlZFwiPjtcbn1cblxuLyoqXG4gKiBQdWxsIHJlcXVlc3QgcmV2aWV3IGNvbW1lbnQgb3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFwiY3JlYXRlZFwiIHwgXCJlZGl0ZWRcIiB8IFwiZGVsZXRlZFwiPjtcbn1cblxuLyoqXG4gKiBQdWxsIHJlcXVlc3QgdGFyZ2V0IG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHVsbFJlcXVlc3RUYXJnZXRPcHRpb25zIGV4dGVuZHMgUHVzaE9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggYWN0aXZpdHkgdHlwZXMgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYWxsIGFjdGl2aXR5IHR5cGVzXG4gICAqL1xuICByZWFkb25seSB0eXBlcz86IEFycmF5PFxuICAgIHwgXCJhc3NpZ25lZFwiXG4gICAgfCBcInVuYXNzaWduZWRcIlxuICAgIHwgXCJsYWJlbGVkXCJcbiAgICB8IFwidW5sYWJlbGVkXCJcbiAgICB8IFwib3BlbmVkXCJcbiAgICB8IFwiZWRpdGVkXCJcbiAgICB8IFwiY2xvc2VkXCJcbiAgICB8IFwicmVvcGVuZWRcIlxuICAgIHwgXCJzeW5jaHJvbml6ZVwiXG4gICAgfCBcInJlYWR5X2Zvcl9yZXZpZXdcIlxuICAgIHwgXCJsb2NrZWRcIlxuICAgIHwgXCJ1bmxvY2tlZFwiXG4gICAgfCBcInJldmlld19yZXF1ZXN0ZWRcIlxuICAgIHwgXCJyZXZpZXdfcmVxdWVzdF9yZW1vdmVkXCJcbiAgPjtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBwdXNoLWxpa2UgZXZlbnRzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFB1c2hPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoZW4gdXNpbmcgdGhlIHB1c2gsIHB1bGxfcmVxdWVzdCBhbmQgcHVsbF9yZXF1ZXN0X3RhcmdldCBldmVudHMsIHlvdSBjYW4gY29uZmlndXJlIGEgd29ya2Zsb3dcbiAgICogdG8gcnVuIG9uIHNwZWNpZmljIGJyYW5jaGVzIG9yIHRhZ3MuIEZvciBhIHB1bGxfcmVxdWVzdCBldmVudCwgb25seVxuICAgKiBicmFuY2hlcyBhbmQgdGFncyBvbiB0aGUgYmFzZSBhcmUgZXZhbHVhdGVkLiBJZiB5b3UgZGVmaW5lIG9ubHkgdGFncyBvclxuICAgKiBvbmx5IGJyYW5jaGVzLCB0aGUgd29ya2Zsb3cgd29uJ3QgcnVuIGZvciBldmVudHMgYWZmZWN0aW5nIHRoZSB1bmRlZmluZWRcbiAgICogR2l0IHJlZi5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2RvY3MuZ2l0aHViLmNvbS9lbi9hY3Rpb25zL3JlZmVyZW5jZS93b3JrZmxvdy1zeW50YXgtZm9yLWdpdGh1Yi1hY3Rpb25zI2ZpbHRlci1wYXR0ZXJuLWNoZWF0LXNoZWV0XG4gICAqL1xuICByZWFkb25seSBicmFuY2hlcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBXaGVuIHVzaW5nIHRoZSBwdXNoLCBwdWxsX3JlcXVlc3QgYW5kIHB1bGxfcmVxdWVzdF90YXJnZXQgZXZlbnRzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIHdvcmtmbG93XG4gICAqIHRvIHJ1biBvbiBzcGVjaWZpYyBicmFuY2hlcyBvciB0YWdzLiBGb3IgYSBwdWxsX3JlcXVlc3QgZXZlbnQsIG9ubHlcbiAgICogYnJhbmNoZXMgYW5kIHRhZ3Mgb24gdGhlIGJhc2UgYXJlIGV2YWx1YXRlZC4gSWYgeW91IGRlZmluZSBvbmx5IHRhZ3Mgb3JcbiAgICogb25seSBicmFuY2hlcywgdGhlIHdvcmtmbG93IHdvbid0IHJ1biBmb3IgZXZlbnRzIGFmZmVjdGluZyB0aGUgdW5kZWZpbmVkXG4gICAqIEdpdCByZWYuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmdpdGh1Yi5jb20vZW4vYWN0aW9ucy9yZWZlcmVuY2Uvd29ya2Zsb3ctc3ludGF4LWZvci1naXRodWItYWN0aW9ucyNmaWx0ZXItcGF0dGVybi1jaGVhdC1zaGVldFxuICAgKi9cbiAgcmVhZG9ubHkgdGFncz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBXaGVuIHVzaW5nIHRoZSBwdXNoLCBwdWxsX3JlcXVlc3QgYW5kIHB1bGxfcmVxdWVzdF90YXJnZXQgZXZlbnRzLCB5b3UgY2FuIGNvbmZpZ3VyZSBhIHdvcmtmbG93XG4gICAqIHRvIHJ1biB3aGVuIGF0IGxlYXN0IG9uZSBmaWxlIGRvZXMgbm90IG1hdGNoIHBhdGhzLWlnbm9yZSBvciBhdCBsZWFzdCBvbmVcbiAgICogbW9kaWZpZWQgZmlsZSBtYXRjaGVzIHRoZSBjb25maWd1cmVkIHBhdGhzLiBQYXRoIGZpbHRlcnMgYXJlIG5vdFxuICAgKiBldmFsdWF0ZWQgZm9yIHB1c2hlcyB0byB0YWdzLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5naXRodWIuY29tL2VuL2FjdGlvbnMvcmVmZXJlbmNlL3dvcmtmbG93LXN5bnRheC1mb3ItZ2l0aHViLWFjdGlvbnMjZmlsdGVyLXBhdHRlcm4tY2hlYXQtc2hlZXRcbiAgICovXG4gIHJlYWRvbmx5IHBhdGhzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogUmVnaXN0cnkgcGFja2FnZSBvcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVnaXN0cnlQYWNrYWdlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGljaCBhY3Rpdml0eSB0eXBlcyB0byB0cmlnZ2VyIG9uLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBhbGwgYWN0aXZpdHkgdHlwZXNcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVzPzogQXJyYXk8XCJwdWJsaXNoZWRcIiB8IFwidXBkYXRlZFwiPjtcbn1cblxuLyoqXG4gKiBSZWxlYXNlIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWxlYXNlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGljaCBhY3Rpdml0eSB0eXBlcyB0byB0cmlnZ2VyIG9uLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBhbGwgYWN0aXZpdHkgdHlwZXNcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVzPzogQXJyYXk8XG4gICAgfCBcInB1Ymxpc2hlZFwiXG4gICAgfCBcInVucHVibGlzaGVkXCJcbiAgICB8IFwiY3JlYXRlZFwiXG4gICAgfCBcImVkaXRlZFwiXG4gICAgfCBcImRlbGV0ZWRcIlxuICAgIHwgXCJwcmVyZWxlYXNlZFwiXG4gICAgfCBcInJlbGVhc2VkXCJcbiAgPjtcbn1cblxuLyoqXG4gKiBXYXRjaCBvcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV2F0Y2hPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBBcnJheTxcInN0YXJ0ZWRcIj47XG59XG5cbi8qKlxuICogV29ya2Zsb3cgcnVuIG9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvd1J1bk9wdGlvbnMge1xuICAvKipcbiAgICogV2hpY2ggd29ya2Zsb3cgdG8gdHJpZ2dlciBvbi5cbiAgICpcbiAgICogQGRlZmF1bHRzIC0gYW55IHdvcmtmbG93c1xuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIFdoaWNoIGFjdGl2aXR5IHR5cGVzIHRvIHRyaWdnZXIgb24uXG4gICAqXG4gICAqIEBkZWZhdWx0cyAtIGFsbCBhY3Rpdml0eSB0eXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXM/OiBBcnJheTxcImNvbXBsZXRlZFwiIHwgXCJyZXF1ZXN0ZWRcIj47XG4gIC8qKlxuICAgKiBXaGljaCBicmFuY2hlcyBvciBicmFuY2gtaWdub3JlIHRvIGxpbWl0IHRoZSB0cmlnZ2VyIHRvLlxuICAgKlxuICAgKiBAZGVmYXVsdHMgLSBubyBicmFuY2ggbGltaXRzXG4gICAqL1xuICByZWFkb25seSBicmFuY2hlcz86IEFycmF5PHN0cmluZz47XG59XG5cbi8qKlxuICogVGhlIFdvcmtmbG93IGRpc3BhdGNoIGV2ZW50IG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgV29ya2Zsb3dEaXNwYXRjaE9wdGlvbnMge1xuICAvKipcbiAgICogSW5wdXRzIGZvciB0aGUgd29ya2Zsb3dfZGlzcGF0Y2ggZXZlbnQuXG4gICAqL1xuICByZWFkb25seSBpbnB1dHM/OiB7IFtuYW1lOiBzdHJpbmddOiBXb3JrZmxvd0Rpc3BhdGNoSW5wdXQgfTtcbn1cblxuLyoqXG4gKiBBbiBpbnB1dCBmb3IgYSB3b3JrZmxvd19kaXNwYXRjaCBldmVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXb3JrZmxvd0Rpc3BhdGNoSW5wdXQge1xuICAvKipcbiAgICogQSBkZXNjcmlwdGlvbiBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyByZXF1aXJlZC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHJlcXVpcmVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIGRlZmF1bHQgdmFsdWUgb2YgdGhlIGlucHV0LlxuICAgKiBAZGVmYXVsdCAtIG5vIGRlZmF1bHRcbiAgICovXG4gIHJlYWRvbmx5IGRlZmF1bHQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHRoZSBpbnB1dC5cbiAgICogQGRlZmF1bHQgXCJzdHJpbmdcIlxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZT86IFwic3RyaW5nXCIgfCBcImJvb2xlYW5cIiB8IFwiY2hvaWNlXCIgfCBcIm51bWJlclwiIHwgXCJlbnZpcm9ubWVudFwiO1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciB0aGUgaW5wdXQgaWYgdHlwZSBpcyAnY2hvaWNlJy5cbiAgICogQGRlZmF1bHQgLSBubyBvcHRpb25zXG4gICAqL1xuICByZWFkb25seSBvcHRpb25zPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogVGhlIFdvcmtmbG93IENhbGwgZXZlbnQgYWNjZXB0cyBubyBvcHRpb25zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFdvcmtmbG93Q2FsbE9wdGlvbnMge31cblxuLyoqXG4gKiBUaGUgQ3JlYXRlIGV2ZW50IGFjY2VwdHMgbm8gb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVPcHRpb25zIHt9XG5cbi8qKlxuICogVGhlIERlbGV0ZSBldmVudCBhY2NlcHRzIG5vIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVsZXRlT3B0aW9ucyB7fVxuXG4vKipcbiAqIFRoZSBEZXBsb3ltZW50IGV2ZW50IGFjY2VwdHMgbm8gb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEZXBsb3ltZW50T3B0aW9ucyB7fVxuXG4vKipcbiAqIFRoZSBEZXBsb3ltZW50IHN0YXR1cyBldmVudCBhY2NlcHRzIG5vIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGVwbG95bWVudFN0YXR1c09wdGlvbnMge31cblxuLyoqXG4gKiBUaGUgRm9yayBldmVudCBhY2NlcHRzIG5vIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRm9ya09wdGlvbnMge31cblxuLyoqXG4gKiBUaGUgR29sbHVtIGV2ZW50IGFjY2VwdHMgbm8gb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHb2xsdW1PcHRpb25zIHt9XG5cbi8qKlxuICogVGhlIFBhZ2UgYnVpbGQgZXZlbnQgYWNjZXB0cyBubyBvcHRpb25zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2VCdWlsZE9wdGlvbnMge31cblxuLyoqXG4gKiBUaGUgUHVibGljIGV2ZW50IGFjY2VwdHMgbm8gb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQdWJsaWNPcHRpb25zIHt9XG5cbi8qKlxuICogVGhlIFN0YXR1cyBldmVudCBhY2NlcHRzIG5vIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhdHVzT3B0aW9ucyB7fVxuLy8jZW5kcmVnaW9uXG4iXX0=
@@ -139,7 +139,7 @@ class GithubWorkflow extends component_1.Component {
139
139
  }
140
140
  exports.GithubWorkflow = GithubWorkflow;
141
141
  _a = JSII_RTTI_SYMBOL_1;
142
- GithubWorkflow[_a] = { fqn: "projen.github.GithubWorkflow", version: "0.99.56" };
142
+ GithubWorkflow[_a] = { fqn: "projen.github.GithubWorkflow", version: "0.99.58" };
143
143
  function snakeCaseKeys(obj) {
144
144
  if (typeof obj !== "object" || obj == null) {
145
145
  return obj;
@@ -278,7 +278,7 @@ class CiConfiguration extends component_1.Component {
278
278
  }
279
279
  exports.CiConfiguration = CiConfiguration;
280
280
  _a = JSII_RTTI_SYMBOL_1;
281
- CiConfiguration[_a] = { fqn: "projen.gitlab.CiConfiguration", version: "0.99.56" };
281
+ CiConfiguration[_a] = { fqn: "projen.gitlab.CiConfiguration", version: "0.99.58" };
282
282
  function snakeCaseKeys(obj, skipTopLevel = false) {
283
283
  if (typeof obj !== "object" || obj == null) {
284
284
  return obj;
@@ -34,5 +34,5 @@ class GitlabConfiguration extends configuration_1.CiConfiguration {
34
34
  }
35
35
  exports.GitlabConfiguration = GitlabConfiguration;
36
36
  _a = JSII_RTTI_SYMBOL_1;
37
- GitlabConfiguration[_a] = { fqn: "projen.gitlab.GitlabConfiguration", version: "0.99.56" };
37
+ GitlabConfiguration[_a] = { fqn: "projen.gitlab.GitlabConfiguration", version: "0.99.58" };
38
38
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0bGFiLWNvbmZpZ3VyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2l0bGFiL2dpdGxhYi1jb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsbURBQWtEO0FBQ2xELGlFQUE2RDtBQUc3RDs7R0FFRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsK0JBQWU7SUFFdEQsWUFBWSxPQUFnQixFQUFFLE9BQWdDO1FBQzVELEtBQUssQ0FBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRnZCLG9CQUFlLEdBQXdDLEVBQUUsQ0FBQztJQUcxRSxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0kscUJBQXFCLENBQUMsTUFBOEM7UUFDekUsS0FBSyxNQUFNLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNyRCxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQzdDLE1BQU0sSUFBSSxLQUFLLENBQ2IsR0FBRyxJQUFJLENBQUMsSUFBSSwwQ0FBMEMsSUFBSSxJQUFJLENBQy9ELENBQUM7WUFDSixDQUFDO1lBQ0QsTUFBTSxRQUFRLEdBQUcsSUFBSSwwQ0FBbUIsQ0FDdEMsSUFBSSxDQUFDLE9BQU8sRUFDWixJQUFJLEVBQ0osSUFBSSxFQUNKLE9BQU8sQ0FDUixDQUFDO1lBQ0YsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDO1lBQy9DLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxLQUFLLEVBQUUsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7WUFDM0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNyQyxDQUFDO0lBQ0gsQ0FBQzs7QUE5Qkgsa0RBK0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDaUNvbmZpZ3VyYXRpb25PcHRpb25zIH0gZnJvbSBcIi5cIjtcbmltcG9ydCB7IENpQ29uZmlndXJhdGlvbiB9IGZyb20gXCIuL2NvbmZpZ3VyYXRpb25cIjtcbmltcG9ydCB7IE5lc3RlZENvbmZpZ3VyYXRpb24gfSBmcm9tIFwiLi9uZXN0ZWQtY29uZmlndXJhdGlvblwiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcblxuLyoqXG4gKiBBIEdpdExhYiBDSSBmb3IgdGhlIG1haW4gYC5naXRsYWItY2kueW1sYCBmaWxlLlxuICovXG5leHBvcnQgY2xhc3MgR2l0bGFiQ29uZmlndXJhdGlvbiBleHRlbmRzIENpQ29uZmlndXJhdGlvbiB7XG4gIHB1YmxpYyByZWFkb25seSBuZXN0ZWRUZW1wbGF0ZXM6IFJlY29yZDxzdHJpbmcsIE5lc3RlZENvbmZpZ3VyYXRpb24+ID0ge307XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM/OiBDaUNvbmZpZ3VyYXRpb25PcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCwgXCJnaXRsYWItY2lcIiwgb3B0aW9ucyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhbmQgYWRkcyBuZXN0ZWQgdGVtcGxhdGVzIHRvIHRoZSBpbmNsdWRlcyBvZiB0aGUgbWFpbiBDSS5cbiAgICogQWRkaXRpb25hbGx5IGFkZHMgdGhlaXIgc3RhZ2VzIHRvIHRoZSBtYWluIENJIGlmIHRoZXkgYXJlIG5vdCBhbHJlYWR5IHByZXNlbnQuXG4gICAqIFlvdSBjYW4gZnV0aGVyIGN1c3RvbWl6ZSBuZXN0ZWQgdGVtcGxhdGVzIHRocm91Z2ggdGhlIGBuZXN0ZWRUZW1wbGF0ZXNgIHByb3BlcnR5LlxuICAgKiBFLmcuIGdpdGxhYkNvbmZpZy5uZXN0ZWRUZW1wbGF0ZXNbJ3RlbXBsYXRlTmFtZSddPy5hZGRTdGFnZXMoJ3N0YWdlTmFtZScpXG4gICAqIEBwYXJhbSBjb25maWcgYSByZWNvcmQgdGhlIG5hbWVzIGFuZCBjb25maWd1cmFpdG9ucyBvZiB0aGUgdGVtcGxhdGVzLlxuICAgKi9cbiAgcHVibGljIGNyZWF0ZU5lc3RlZFRlbXBsYXRlcyhjb25maWc6IFJlY29yZDxzdHJpbmcsIENpQ29uZmlndXJhdGlvbk9wdGlvbnM+KSB7XG4gICAgZm9yIChjb25zdCBbbmFtZSwgb3B0aW9uc10gb2YgT2JqZWN0LmVudHJpZXMoY29uZmlnKSkge1xuICAgICAgaWYgKHRoaXMubmVzdGVkVGVtcGxhdGVzW25hbWVdICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGAke3RoaXMubmFtZX06IEdpdExhYiBDSSBhbHJlYWR5IGNvbnRhaW5zIHRlbXBsYXRlIFwiJHtuYW1lfVwiLmAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBjb25zdCB0ZW1wbGF0ZSA9IG5ldyBOZXN0ZWRDb25maWd1cmF0aW9uKFxuICAgICAgICB0aGlzLnByb2plY3QsXG4gICAgICAgIHRoaXMsXG4gICAgICAgIG5hbWUsXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICApO1xuICAgICAgdGhpcy5uZXN0ZWRUZW1wbGF0ZXNbdGVtcGxhdGUubmFtZV0gPSB0ZW1wbGF0ZTtcbiAgICAgIHRoaXMuYWRkSW5jbHVkZXMoeyBsb2NhbDogdGVtcGxhdGUucGF0aCB9KTtcbiAgICAgIHRoaXMuYWRkU3RhZ2VzKC4uLnRlbXBsYXRlLnN0YWdlcyk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -15,5 +15,5 @@ class NestedConfiguration extends configuration_1.CiConfiguration {
15
15
  }
16
16
  exports.NestedConfiguration = NestedConfiguration;
17
17
  _a = JSII_RTTI_SYMBOL_1;
18
- NestedConfiguration[_a] = { fqn: "projen.gitlab.NestedConfiguration", version: "0.99.56" };
18
+ NestedConfiguration[_a] = { fqn: "projen.gitlab.NestedConfiguration", version: "0.99.58" };
19
19
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmVzdGVkLWNvbmZpZ3VyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZ2l0bGFiL25lc3RlZC1jb25maWd1cmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsbURBQWtEO0FBSWxEOztHQUVHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSwrQkFBZTtJQUV0RCxZQUNFLE9BQWdCLEVBQ2hCLE1BQTJCLEVBQzNCLElBQVksRUFDWixPQUFnQztRQUVoQyxLQUFLLENBQUMsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixDQUFDOztBQVZILGtEQVdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDaUNvbmZpZ3VyYXRpb25PcHRpb25zIH0gZnJvbSBcIi5cIjtcbmltcG9ydCB7IENpQ29uZmlndXJhdGlvbiB9IGZyb20gXCIuL2NvbmZpZ3VyYXRpb25cIjtcbmltcG9ydCB0eXBlIHsgR2l0bGFiQ29uZmlndXJhdGlvbiB9IGZyb20gXCIuL2dpdGxhYi1jb25maWd1cmF0aW9uXCI7XG5pbXBvcnQgdHlwZSB7IFByb2plY3QgfSBmcm9tIFwiLi4vcHJvamVjdFwiO1xuXG4vKipcbiAqIEEgR2l0TGFiIENJIGZvciB0ZW1wbGF0ZXMgdGhhdCBhcmUgY3JlYXRlZCBhbmQgaW5jbHVkZWQgaW4gdGhlIGAuZ2l0bGFiLWNpLnltbGAgZmlsZS5cbiAqL1xuZXhwb3J0IGNsYXNzIE5lc3RlZENvbmZpZ3VyYXRpb24gZXh0ZW5kcyBDaUNvbmZpZ3VyYXRpb24ge1xuICBwdWJsaWMgcmVhZG9ubHkgcGFyZW50OiBHaXRsYWJDb25maWd1cmF0aW9uO1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcm9qZWN0OiBQcm9qZWN0LFxuICAgIHBhcmVudDogR2l0bGFiQ29uZmlndXJhdGlvbixcbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgb3B0aW9ucz86IENpQ29uZmlndXJhdGlvbk9wdGlvbnMsXG4gICkge1xuICAgIHN1cGVyKHByb2plY3QsIG5hbWUsIG9wdGlvbnMpO1xuICAgIHRoaXMucGFyZW50ID0gcGFyZW50O1xuICB9XG59XG4iXX0=
package/lib/gitpod.js CHANGED
@@ -241,5 +241,5 @@ class Gitpod extends component_1.Component {
241
241
  }
242
242
  exports.Gitpod = Gitpod;
243
243
  _a = JSII_RTTI_SYMBOL_1;
244
- Gitpod[_a] = { fqn: "projen.Gitpod", version: "0.99.56" };
244
+ Gitpod[_a] = { fqn: "projen.Gitpod", version: "0.99.58" };
245
245
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0cG9kLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2dpdHBvZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDJDQUF3QztBQVF4QyxpQ0FBa0M7QUFFbEM7O0dBRUc7QUFDSCxNQUFNLFdBQVcsR0FBRyxhQUFhLENBQUM7QUFFbEM7Ozs7O0dBS0c7QUFFSDs7R0FFRztBQUNILElBQVksY0F5Qlg7QUF6QkQsV0FBWSxjQUFjO0lBQ3hCOztPQUVHO0lBQ0gseUNBQXVCLENBQUE7SUFDdkI7O09BRUc7SUFDSCwyQ0FBeUIsQ0FBQTtJQUN6Qjs7T0FFRztJQUNILDZDQUEyQixDQUFBO0lBQzNCOztPQUVHO0lBQ0gsMkNBQXlCLENBQUE7SUFDekI7O09BRUc7SUFDSCx5Q0FBdUIsQ0FBQTtJQUN2Qjs7T0FFRztJQUNILCtDQUE2QixDQUFBO0FBQy9CLENBQUMsRUF6QlcsY0FBYyw4QkFBZCxjQUFjLFFBeUJ6QjtBQUVEOztHQUVHO0FBQ0gsSUFBWSxZQWlCWDtBQWpCRCxXQUFZLFlBQVk7SUFDdEI7O09BRUc7SUFDSCxpQ0FBaUIsQ0FBQTtJQUNqQjs7T0FFRztJQUNILDZCQUFhLENBQUE7SUFDYjs7T0FFRztJQUNILCtCQUFlLENBQUE7SUFDZjs7T0FFRztJQUNILDZCQUFhLENBQUE7QUFDZixDQUFDLEVBakJXLFlBQVksNEJBQVosWUFBWSxRQWlCdkI7QUEyREQ7O0dBRUc7QUFDSCxJQUFZLFlBb0JYO0FBcEJELFdBQVksWUFBWTtJQUN0Qjs7T0FFRztJQUNILDZDQUE2QixDQUFBO0lBRTdCOztPQUVHO0lBQ0gsNkNBQTZCLENBQUE7SUFFN0I7O09BRUc7SUFDSCxpQ0FBaUIsQ0FBQTtJQUVqQjs7T0FFRztJQUNILGlDQUFpQixDQUFBO0FBQ25CLENBQUMsRUFwQlcsWUFBWSw0QkFBWixZQUFZLFFBb0J2QjtBQUVEOztHQUVHO0FBQ0gsSUFBWSxvQkFVWDtBQVZELFdBQVksb0JBQW9CO0lBQzlCOztPQUVHO0lBQ0gseUNBQWlCLENBQUE7SUFFakI7O09BRUc7SUFDSCwyQ0FBbUIsQ0FBQTtBQUNyQixDQUFDLEVBVlcsb0JBQW9CLG9DQUFwQixvQkFBb0IsUUFVL0I7QUFzR0Q7O0dBRUc7QUFDSCxNQUFhLE1BQU8sU0FBUSxxQkFBUztJQVluQyxZQUFZLE9BQWdCLEVBQUUsVUFBeUIsRUFBRTtRQUN2RCxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFWQSxVQUFLLEdBQUcsSUFBSSxLQUFLLEVBQWMsQ0FBQztRQUNoQyxVQUFLLEdBQUcsSUFBSSxLQUFLLEVBQWMsQ0FBQztRQUNoQyxxQkFBZ0IsR0FBRyxJQUFJLEtBQUssRUFBVSxDQUFDO1FBVXRELElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxFQUFFLFdBQVcsQ0FBQztRQUV4QyxJQUFJLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQztZQUNuQixLQUFLLE1BQU0sSUFBSSxJQUFJLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDakMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN0QixDQUFDO1FBQ0gsQ0FBQztRQUVELElBQUksT0FBTyxFQUFFLFNBQVMsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxJQUFJLE9BQU8sRUFBRSxLQUFLLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLENBQUM7UUFFRCxJQUFJLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3hELENBQUM7UUFFRCxJQUFJLENBQUMsTUFBTSxHQUFHO1lBQ1osS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUNyQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDcEMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQ2pCLE1BQU0sRUFBRTtnQkFDTixVQUFVLEVBQUUsSUFBSSxDQUFDLGdCQUFnQjthQUNsQztTQUNGLENBQUM7UUFFRixJQUFJLGVBQVEsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFdBQVcsRUFBRTtZQUN0QyxHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU07WUFDaEIsU0FBUyxFQUFFLElBQUk7WUFDZixzRUFBc0U7WUFDdEUsU0FBUyxFQUFFLElBQUk7U0FDaEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxjQUFjLENBQUMsS0FBZ0M7UUFDcEQsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDckIsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBQ3RELENBQUM7UUFDRCxJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLFFBQVEsQ0FBQyxHQUFHLEtBQWE7UUFDOUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQ2IsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3RCLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSTtZQUNmLE9BQU8sRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUU7U0FDdEQsQ0FBQyxDQUFDLENBQ0osQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSSxZQUFZLENBQUMsTUFBdUI7UUFDekMsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSSxhQUFhLENBQUMsT0FBbUI7UUFDdEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7WUFDZCxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDbEIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO1lBQ3hCLFFBQVEsRUFBRSxPQUFPLENBQUMsUUFBUTtZQUMxQixNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07WUFDdEIsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1lBQ3RCLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtZQUNsQixRQUFRLEVBQUUsT0FBTyxDQUFDLFFBQVE7U0FDM0IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxRQUFRLENBQUMsR0FBRyxLQUFlO1FBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7Ozs7Ozs7OztPQVNHO0lBQ0ksbUJBQW1CLENBQUMsR0FBRyxVQUFtQztRQUMvRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsS0FBSyxFQUFFLENBQUM7WUFDNUIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztRQUNoQyxDQUFDO2FBQU0sSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLFVBQVUsRUFBRSxDQUFDO1lBQ3hDLE9BQU87Z0JBQ0wsSUFBSSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVTthQUNsQyxDQUFDO1FBQ0osQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQztJQUVPLGVBQWU7UUFDckIsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkIsT0FBTztnQkFDTCxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7YUFDMUIsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxTQUFTLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7O0FBekpILHdCQTBKQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUge1xuICBJRGV2RW52aXJvbm1lbnQsXG4gIERldkVudmlyb25tZW50T3B0aW9ucyxcbiAgRGV2RW52aXJvbm1lbnREb2NrZXJJbWFnZSxcbn0gZnJvbSBcIi4vZGV2LWVudlwiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4vcHJvamVjdFwiO1xuaW1wb3J0IHR5cGUgeyBUYXNrIH0gZnJvbSBcIi4vdGFza1wiO1xuaW1wb3J0IHsgWWFtbEZpbGUgfSBmcm9tIFwiLi95YW1sXCI7XG5cbi8qKlxuICogUmVsYXRpdmUgcGF0aCBvZiBHaXRwb2QgZmlsZSB0byBnZW5lcmF0ZVxuICovXG5jb25zdCBHSVRQT0RfRklMRSA9IFwiLmdpdHBvZC55bWxcIjtcblxuLyoqXG4gKiBodHRwczovL3d3dy5naXRwb2QuaW8vZG9jcy9jb25maWd1cmF0aW9uL1xuICogaHR0cHM6Ly93d3cuZ2l0cG9kLmlvL2RvY3MvY29uZmlnLXN0YXJ0LXRhc2tzL1xuICogaHR0cHM6Ly93d3cuZ2l0cG9kLmlvL2RvY3MvcHJlYnVpbGRzLyNjb25maWd1cmUtdGhlLWdpdGh1Yi1hcHBcbiAqIGh0dHBzOi8vd3d3LmdpdHBvZC5pby9kb2NzL3ZzY29kZS1leHRlbnNpb25zL1xuICovXG5cbi8qKlxuICogQ29uZmlndXJlIGhvdyB0aGUgdGVybWluYWwgc2hvdWxkIGJlIG9wZW5lZCByZWxhdGl2ZSB0byB0aGUgcHJldmlvdXMgdGFzay5cbiAqL1xuZXhwb3J0IGVudW0gR2l0cG9kT3Blbk1vZGUge1xuICAvKipcbiAgICogT3BlbnMgaW4gdGhlIHNhbWUgdGFiIGdyb3VwIHJpZ2h0IGFmdGVyIHRoZSBwcmV2aW91cyB0YWJcbiAgICovXG4gIFRBQl9BRlRFUiA9IFwidGFiLWFmdGVyXCIsXG4gIC8qKlxuICAgKiBPcGVucyBpbiB0aGUgc2FtZSB0YWIgZ3JvdXAgbGVmdCBiZWZvcmUgdGhlIHByZXZpb3VzIHRhYlxuICAgKi9cbiAgVEFCX0JFRk9SRSA9IFwidGFiLWJlZm9yZVwiLFxuICAvKipcbiAgICogU3BsaXRzIGFuZCBhZGRzIHRoZSB0ZXJtaW5hbCB0byB0aGUgcmlnaHRcbiAgICovXG4gIFNQTElUX1JJR0hUID0gXCJzcGxpdC1yaWdodFwiLFxuICAvKipcbiAgICogU3BsaXRzIGFuZCBhZGRzIHRoZSB0ZXJtaW5hbCB0byB0aGUgbGVmdFxuICAgKi9cbiAgU1BMSVRfTEVGVCA9IFwic3BsaXQtbGVmdFwiLFxuICAvKipcbiAgICogU3BsaXRzIGFuZCBhZGRzIHRoZSB0ZXJtaW5hbCB0byB0aGUgdG9wXG4gICAqL1xuICBTUExJVF9UT1AgPSBcInNwbGl0LXRvcFwiLFxuICAvKipcbiAgICogU3BsaXRzIGFuZCBhZGRzIHRoZSB0ZXJtaW5hbCB0byB0aGUgYm90dG9tXG4gICAqL1xuICBTUExJVF9CT1RUT00gPSBcInNwbGl0LWJvdHRvbVwiLFxufVxuXG4vKipcbiAqIENvbmZpZ3VyZSB3aGVyZSBpbiB0aGUgSURFIHRoZSB0ZXJtaW5hbCBzaG91bGQgYmUgb3BlbmVkLlxuICovXG5leHBvcnQgZW51bSBHaXRwb2RPcGVuSW4ge1xuICAvKipcbiAgICogdGhlIGJvdHRvbSBwYW5lbCAoZGVmYXVsdClcbiAgICovXG4gIEJPVFRPTSA9IFwiYm90dG9tXCIsXG4gIC8qKlxuICAgKiB0aGUgbGVmdCBwYW5lbFxuICAgKi9cbiAgTEVGVCA9IFwibGVmdFwiLFxuICAvKipcbiAgICogdGhlIHJpZ2h0IHBhbmVsXG4gICAqL1xuICBSSUdIVCA9IFwicmlnaHRcIixcbiAgLyoqXG4gICAqIHRoZSBtYWluIGVkaXRvciBhcmVhXG4gICAqL1xuICBNQUlOID0gXCJtYWluXCIsXG59XG5cbi8qKlxuICogQ29uZmlndXJlIG9wdGlvbnMgZm9yIGEgdGFzayB0byBiZSBydW4gd2hlbiBvcGVuaW5nIGEgR2l0cG9kXG4gKiB3b3Jrc3BhY2UgKGUuZy4gcnVubmluZyB0ZXN0cywgb3Igc3RhcnRpbmcgYSBkZXYgc2VydmVyKS5cbiAqXG4gKiBTdGFydCBNb2RlICAgICAgICAgfCBFeGVjdXRpb25cbiAqIEZyZXNoIFdvcmtzcGFjZSAgICB8IGJlZm9yZSAmJiBpbml0ICYmIGNvbW1hbmRcbiAqIFJlc3RhcnQgV29ya3NwYWNlICB8IGJlZm9yZSAmJiBjb21tYW5kXG4gKiBTbmFwc2hvdCAgICAgICAgICAgfCBiZWZvcmUgJiYgY29tbWFuZFxuICogUHJlYnVpbGQgICAgICAgICAgIHwgYmVmb3JlICYmIGluaXQgJiYgcHJlYnVpbGRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHaXRwb2RUYXNrIHtcbiAgLyoqXG4gICAqIFJlcXVpcmVkLiBUaGUgc2hlbGwgY29tbWFuZCB0byBydW5cbiAgICovXG4gIHJlYWRvbmx5IGNvbW1hbmQ6IHN0cmluZztcblxuICAvKipcbiAgICogQSBuYW1lIGZvciB0aGlzIHRhc2suXG4gICAqIEBkZWZhdWx0IC0gdGFzayBuYW1lcyBhcmUgb21pdHRlZCB3aGVuIGJsYW5rXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBZb3UgY2FuIGNvbmZpZ3VyZSBob3cgdGhlIHRlcm1pbmFsIHNob3VsZCBiZSBvcGVuZWQgcmVsYXRpdmUgdG8gdGhlIHByZXZpb3VzIHRhc2suXG4gICAqIEBkZWZhdWx0IEdpdHBvZE9wZW5Nb2RlLlRBQl9BRlRFUlxuICAgKi9cbiAgcmVhZG9ubHkgb3Blbk1vZGU/OiBHaXRwb2RPcGVuTW9kZTtcblxuICAvKipcbiAgICogWW91IGNhbiBjb25maWd1cmUgd2hlcmUgaW4gdGhlIElERSB0aGUgdGVybWluYWwgc2hvdWxkIGJlIG9wZW5lZFxuICAgKiBAZGVmYXVsdCBHaXRwb2RPcGVuSW4uQk9UVE9NXG4gICAqL1xuICByZWFkb25seSBvcGVuSW4/OiBHaXRwb2RPcGVuSW47XG5cbiAgLyoqXG4gICAqIEluIGNhc2UgeW91IG5lZWQgdG8gcnVuIHNvbWV0aGluZyBldmVuIGJlZm9yZSBpbml0LCB0aGF0IGlzIGEgcmVxdWlyZW1lbnQgZm9yIGJvdGggaW5pdCBhbmQgY29tbWFuZCxcbiAgICogeW91IGNhbiB1c2UgdGhlIGJlZm9yZSBwcm9wZXJ0eS5cbiAgICogQGRlZmF1bHRcbiAgICovXG4gIHJlYWRvbmx5IGJlZm9yZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGluaXQgcHJvcGVydHkgY2FuIGJlIHVzZWQgdG8gc3BlY2lmeSBzaGVsbCBjb21tYW5kcyB0aGF0IHNob3VsZCBvbmx5IGJlIGV4ZWN1dGVkIGFmdGVyIGEgd29ya3NwYWNlXG4gICAqIHdhcyBmcmVzaGx5IGNsb25lZCBhbmQgbmVlZHMgdG8gYmUgaW5pdGlhbGl6ZWQgc29tZWhvdy4gU3VjaCB0YXNrcyBhcmUgdXN1YWxseSBidWlsZHMgb3IgZG93bmxvYWRpbmdcbiAgICogZGVwZW5kZW5jaWVzLiBBbnl0aGluZyB5b3Ugb25seSB3YW50IHRvIGRvIG9uY2UgYnV0IG5vdCB3aGVuIHlvdSByZXN0YXJ0IGEgd29ya3NwYWNlIG9yIHN0YXJ0IGEgc25hcHNob3QuXG4gICAqIEBkZWZhdWx0XG4gICAqL1xuICByZWFkb25seSBpbml0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgb3B0aW9uYWwgcHJlYnVpbGQgY29tbWFuZCB3aWxsIGJlIGV4ZWN1dGVkIGR1cmluZyBwcmVidWlsZHMuIEl0IGlzIG1lYW50IHRvIHJ1biBhZGRpdGlvbmFsIGxvbmcgcnVubmluZ1xuICAgKiBwcm9jZXNzZXMgdGhhdCBjb3VsZCBiZSB1c2VmdWwsIGUuZy4gcnVubmluZyB0ZXN0IHN1aXRlcy5cbiAgICogQGRlZmF1bHRcbiAgICovXG4gIHJlYWRvbmx5IHByZWJ1aWxkPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFdoYXQgdG8gZG8gd2hlbiBhIHNlcnZpY2Ugb24gYSBwb3J0IGlzIGRldGVjdGVkLlxuICovXG5leHBvcnQgZW51bSBHaXRwb2RPbk9wZW4ge1xuICAvKipcbiAgICogT3BlbiBhIG5ldyBicm93c2VyIHRhYlxuICAgKi9cbiAgT1BFTl9CUk9XU0VSID0gXCJvcGVuLWJyb3dzZXJcIixcblxuICAvKipcbiAgICogT3BlbiBhIHByZXZpZXcgb24gdGhlIHJpZ2h0IHNpZGUgb2YgdGhlIElERVxuICAgKi9cbiAgT1BFTl9QUkVWSUVXID0gXCJvcGVuLXByZXZpZXdcIixcblxuICAvKipcbiAgICogU2hvdyBhIG5vdGlmaWNhdGlvbiBhc2tpbmcgdGhlIHVzZXIgd2hhdCB0byBkbyAoZGVmYXVsdClcbiAgICovXG4gIE5PVElGWSA9IFwibm90aWZ5XCIsXG5cbiAgLyoqXG4gICAqIERvIG5vdGhpbmcuXG4gICAqL1xuICBJR05PUkUgPSBcImlnbm9yZVwiLFxufVxuXG4vKipcbiAqIFdoZXRoZXIgdGhlIHBvcnQgdmlzaWJpbGl0eSBzaG91bGQgYmUgcHJpdmF0ZSBvciBwdWJsaWNcbiAqL1xuZXhwb3J0IGVudW0gR2l0cG9kUG9ydFZpc2liaWxpdHkge1xuICAvKipcbiAgICogQWxsb3dzIGV2ZXJ5b25lIHdpdGggdGhlIHBvcnQgVVJMIHRvIGFjY2VzcyB0aGUgcG9ydCAoZGVmYXVsdClcbiAgICovXG4gIFBVQkxJQyA9IFwicHVibGljXCIsXG5cbiAgLyoqXG4gICAqIE9ubHkgYWxsb3dzIHVzZXJzIHdpdGggd29ya3NwYWNlIGFjY2VzcyB0byBhY2Nlc3MgdGhlIHBvcnRcbiAgICovXG4gIFBSSVZBVEUgPSBcInByaXZhdGVcIixcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBhbiBleHBvc2VkIHBvcnQgb24gR2l0cG9kXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2l0cG9kUG9ydCB7XG4gIC8qKlxuICAgKiBBIHBvcnQgdGhhdCBzaG91bGQgYmUgZXhwb3NlZCAoZm9yd2FyZGVkKSBmcm9tIHRoZSBjb250YWluZXIuXG4gICAqXG4gICAqIEBleGFtcGxlIFwiODA4MFwiXG4gICAqL1xuICByZWFkb25seSBwb3J0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGF0IHRvIGRvIHdoZW4gYSBzZXJ2aWNlIG9uIGEgcG9ydCBpcyBkZXRlY3RlZC5cbiAgICpcbiAgICogQGRlZmF1bHQgR2l0cG9kT25PcGVuLk5PVElGWVxuICAgKi9cbiAgcmVhZG9ubHkgb25PcGVuPzogR2l0cG9kT25PcGVuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBwb3J0IHZpc2liaWxpdHkgc2hvdWxkIGJlIHByaXZhdGUgb3IgcHVibGljLlxuICAgKlxuICAgKiBAZGVmYXVsdCBHaXRwb2RQb3J0VmlzaWJpbGl0eS5QVUJMSUNcbiAgICovXG4gIHJlYWRvbmx5IHZpc2liaWxpdHk/OiBHaXRwb2RQb3J0VmlzaWJpbGl0eTtcbn1cblxuLyoqXG4gKiBDb25maWd1cmUgdGhlIEdpdHBvZCBBcHAgZm9yIHByZWJ1aWxkcy5cbiAqIEN1cnJlbnRseSBvbmx5IEdpdEh1YiBpcyBzdXBwb3J0ZWQuXG4gKiBAc2VlIGh0dHBzOi8vd3d3LmdpdHBvZC5pby9kb2NzL3ByZWJ1aWxkcy9cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBHaXRwb2RQcmVidWlsZHMge1xuICAvKipcbiAgICogRW5hYmxlIGZvciB0aGUgbWFzdGVyL2RlZmF1bHQgYnJhbmNoXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IG1hc3Rlcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBmb3IgYWxsIGJyYW5jaGVzIGluIHRoaXMgcmVwb1xuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgYnJhbmNoZXM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgZm9yIHB1bGwgcmVxdWVzdHMgY29taW5nIGZyb20gdGhpcyByZXBvXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHB1bGxSZXF1ZXN0cz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBmb3IgcHVsbCByZXF1ZXN0cyBjb21pbmcgZnJvbSBmb3Jrc1xuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVsbFJlcXVlc3RzRnJvbUZvcmtzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWRkIGEgY2hlY2sgdG8gcHVsbCByZXF1ZXN0c1xuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBhZGRDaGVjaz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFkZCBhIFwiUmV2aWV3IGluIEdpdHBvZFwiIGJ1dHRvbiBhcyBhIGNvbW1lbnQgdG8gcHVsbCByZXF1ZXN0c1xuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgYWRkQ29tbWVudD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFkZCBhIFwiUmV2aWV3IGluIEdpdHBvZFwiIGJ1dHRvbiB0byB0aGUgcHVsbCByZXF1ZXN0J3MgZGVzY3JpcHRpb25cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGFkZEJhZGdlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWRkIGEgbGFiZWwgb25jZSB0aGUgcHJlYnVpbGQgaXMgcmVhZHkgdG8gcHVsbCByZXF1ZXN0c1xuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgYWRkTGFiZWw/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENvbnN0cnVjdG9yIG9wdGlvbnMgZm9yIHRoZSBHaXRwb2QgY29tcG9uZW50LlxuICpcbiAqIEJ5IGRlZmF1bHQsIEdpdHBvZCB1c2VzIHRoZSAnZ2l0cG9kL3dvcmtzcGFjZS1mdWxsJyBkb2NrZXIgaW1hZ2UuXG4gKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9naXRwb2QtaW8vd29ya3NwYWNlLWltYWdlcy9ibG9iL21hc3Rlci9mdWxsL0RvY2tlcmZpbGVcbiAqXG4gKiBCeSBkZWZhdWx0LCBhbGwgdGFza3Mgd2lsbCBiZSBydW4gaW4gcGFyYWxsZWwuIFRvIHJ1biB0aGUgdGFza3MgaW4gc2VxdWVuY2UsXG4gKiBjcmVhdGUgYSBuZXcgdGFzayBhbmQgc3BlY2lmeSB0aGUgb3RoZXIgdGFza3MgYXMgc3VidGFza3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2l0cG9kT3B0aW9ucyBleHRlbmRzIERldkVudmlyb25tZW50T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBPcHRpb25hbCBHaXRwb2QncyBHaXRodWIgQXBwIGludGVncmF0aW9uIGZvciBwcmVidWlsZHNcbiAgICogSWYgdGhpcyBpcyBub3Qgc2V0IGFuZCBHaXRwb2QncyBHaXRodWIgQXBwIGlzIGluc3RhbGxlZCwgdGhlbiBHaXRwb2Qgd2lsbCBhcHBseVxuICAgKiB0aGVzZSBkZWZhdWx0czogaHR0cHM6Ly93d3cuZ2l0cG9kLmlvL2RvY3MvcHJlYnVpbGRzLyNjb25maWd1cmUtdGhlLWdpdGh1Yi1hcHBcbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICByZWFkb25seSBwcmVidWlsZHM/OiBHaXRwb2RQcmVidWlsZHM7XG59XG5cbi8qKlxuICogVGhlIEdpdHBvZCBjb21wb25lbnQgd2hpY2ggZW1pdHMgLmdpdHBvZC55bWxcbiAqL1xuZXhwb3J0IGNsYXNzIEdpdHBvZCBleHRlbmRzIENvbXBvbmVudCBpbXBsZW1lbnRzIElEZXZFbnZpcm9ubWVudCB7XG4gIHByaXZhdGUgZG9ja2VySW1hZ2U6IERldkVudmlyb25tZW50RG9ja2VySW1hZ2UgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgcHJlYnVpbGRzOiBHaXRwb2RQcmVidWlsZHMgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgdGFza3MgPSBuZXcgQXJyYXk8R2l0cG9kVGFzaz4oKTtcbiAgcHJpdmF0ZSByZWFkb25seSBwb3J0cyA9IG5ldyBBcnJheTxHaXRwb2RQb3J0PigpO1xuICBwcml2YXRlIHJlYWRvbmx5IHZzY29kZUV4dGVuc2lvbnMgPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xuXG4gIC8qKlxuICAgKiBEaXJlY3QgYWNjZXNzIHRvIHRoZSBnaXRwb2QgY29uZmlndXJhdGlvbiAoZXNjYXBlIGhhdGNoKVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNvbmZpZzogYW55O1xuXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IEdpdHBvZE9wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgdGhpcy5kb2NrZXJJbWFnZSA9IG9wdGlvbnM/LmRvY2tlckltYWdlO1xuXG4gICAgaWYgKG9wdGlvbnM/LnRhc2tzKSB7XG4gICAgICBmb3IgKGNvbnN0IHRhc2sgb2Ygb3B0aW9ucy50YXNrcykge1xuICAgICAgICB0aGlzLmFkZFRhc2tzKHRhc2spO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChvcHRpb25zPy5wcmVidWlsZHMpIHtcbiAgICAgIHRoaXMuYWRkUHJlYnVpbGRzKG9wdGlvbnMucHJlYnVpbGRzKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucz8ucG9ydHMpIHtcbiAgICAgIHRoaXMuYWRkUG9ydHMoLi4ub3B0aW9ucy5wb3J0cyk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnM/LnZzY29kZUV4dGVuc2lvbnMpIHtcbiAgICAgIHRoaXMuYWRkVnNjb2RlRXh0ZW5zaW9ucyguLi5vcHRpb25zLnZzY29kZUV4dGVuc2lvbnMpO1xuICAgIH1cblxuICAgIHRoaXMuY29uZmlnID0ge1xuICAgICAgaW1hZ2U6ICgpID0+IHRoaXMucmVuZGVyRG9ja2VySW1hZ2UoKSxcbiAgICAgIHRhc2tzOiB0aGlzLnRhc2tzLFxuICAgICAgZ2l0aHViOiAoKSA9PiB0aGlzLnJlbmRlclByZWJ1aWxkcygpLFxuICAgICAgcG9ydHM6IHRoaXMucG9ydHMsXG4gICAgICB2c2NvZGU6IHtcbiAgICAgICAgZXh0ZW5zaW9uczogdGhpcy52c2NvZGVFeHRlbnNpb25zLFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgbmV3IFlhbWxGaWxlKHRoaXMucHJvamVjdCwgR0lUUE9EX0ZJTEUsIHtcbiAgICAgIG9iajogdGhpcy5jb25maWcsXG4gICAgICBvbWl0RW1wdHk6IHRydWUsXG4gICAgICAvLyBHaXRQb2QgbmVlZHMgdG8gcmVhZCB0aGUgZmlsZSBmcm9tIHRoZSByZXBvc2l0b3J5IGluIG9yZGVyIHRvIHdvcmsuXG4gICAgICBjb21taXR0ZWQ6IHRydWUsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgY3VzdG9tIERvY2tlciBpbWFnZSBvciBEb2NrZXJmaWxlIGZvciB0aGUgY29udGFpbmVyLlxuICAgKlxuICAgKiBAcGFyYW0gaW1hZ2UgVGhlIERvY2tlciBpbWFnZVxuICAgKi9cbiAgcHVibGljIGFkZERvY2tlckltYWdlKGltYWdlOiBEZXZFbnZpcm9ubWVudERvY2tlckltYWdlKSB7XG4gICAgaWYgKHRoaXMuZG9ja2VySW1hZ2UpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcImRvY2tlckltYWdlIGNhbm5vdCBiZSByZWRlZmluZWQuXCIpO1xuICAgIH1cbiAgICB0aGlzLmRvY2tlckltYWdlID0gaW1hZ2U7XG4gIH1cblxuICAvKipcbiAgICogQWRkIHRhc2tzIHRvIHJ1biB3aGVuIGdpdHBvZCBzdGFydHMuXG4gICAqXG4gICAqIEJ5IGRlZmF1bHQsIGFsbCB0YXNrcyB3aWxsIGJlIHJ1biBpbiBwYXJhbGxlbC4gVG8gcnVuIHRhc2tzIGluIHNlcXVlbmNlLFxuICAgKiBjcmVhdGUgYSBuZXcgYFRhc2tgIGFuZCBzcGVjaWZ5IHRoZSBvdGhlciB0YXNrcyBhcyBzdWJ0YXNrcy5cbiAgICpcbiAgICogQHBhcmFtIHRhc2tzIFRoZSBuZXcgdGFza3NcbiAgICovXG4gIHB1YmxpYyBhZGRUYXNrcyguLi50YXNrczogVGFza1tdKSB7XG4gICAgdGhpcy50YXNrcy5wdXNoKFxuICAgICAgLi4udGFza3MubWFwKCh0YXNrKSA9PiAoe1xuICAgICAgICBuYW1lOiB0YXNrLm5hbWUsXG4gICAgICAgIGNvbW1hbmQ6IGAke3RoaXMucHJvamVjdC5wcm9qZW5Db21tYW5kfSAke3Rhc2submFtZX1gLFxuICAgICAgfSkpLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIGEgcHJlYnVpbGRzIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBHaXRwb2QgQXBwXG4gICAqIEBwYXJhbSBjb25maWcgVGhlIGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHB1YmxpYyBhZGRQcmVidWlsZHMoY29uZmlnOiBHaXRwb2RQcmVidWlsZHMpIHtcbiAgICB0aGlzLnByZWJ1aWxkcyA9IGNvbmZpZztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSB0YXNrIHdpdGggbW9yZSBncmFudWxhciBvcHRpb25zLlxuICAgKlxuICAgKiBCeSBkZWZhdWx0LCBhbGwgdGFza3Mgd2lsbCBiZSBydW4gaW4gcGFyYWxsZWwuIFRvIHJ1biB0YXNrcyBpbiBzZXF1ZW5jZSxcbiAgICogY3JlYXRlIGEgbmV3IGBUYXNrYCBhbmQgc2V0IHRoZSBvdGhlciB0YXNrcyBhcyBzdWJ0YXNrcy5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgVGhlIHRhc2sgcGFyYW1ldGVyc1xuICAgKi9cbiAgcHVibGljIGFkZEN1c3RvbVRhc2sob3B0aW9uczogR2l0cG9kVGFzaykge1xuICAgIHRoaXMudGFza3MucHVzaCh7XG4gICAgICBuYW1lOiBvcHRpb25zLm5hbWUsXG4gICAgICBjb21tYW5kOiBvcHRpb25zLmNvbW1hbmQsXG4gICAgICBvcGVuTW9kZTogb3B0aW9ucy5vcGVuTW9kZSxcbiAgICAgIG9wZW5Jbjogb3B0aW9ucy5vcGVuSW4sXG4gICAgICBiZWZvcmU6IG9wdGlvbnMuYmVmb3JlLFxuICAgICAgaW5pdDogb3B0aW9ucy5pbml0LFxuICAgICAgcHJlYnVpbGQ6IG9wdGlvbnMucHJlYnVpbGQsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQWRkIHBvcnRzIHRoYXQgc2hvdWxkIGJlIGV4cG9zZWQgKGZvcndhcmRlZCkgZnJvbSB0aGUgY29udGFpbmVyLlxuICAgKlxuICAgKiBAcGFyYW0gcG9ydHMgVGhlIG5ldyBwb3J0c1xuICAgKi9cbiAgcHVibGljIGFkZFBvcnRzKC4uLnBvcnRzOiBzdHJpbmdbXSkge1xuICAgIHRoaXMucG9ydHMucHVzaCguLi5wb3J0cy5tYXAoKHBvcnQpID0+ICh7IHBvcnQ6IHBvcnQgfSkpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBsaXN0IG9mIFZTQ29kZSBleHRlbnNpb25zIHRoYXQgc2hvdWxkIGJlIGF1dG9tYXRpY2FsbHkgaW5zdGFsbGVkXG4gICAqIGluIHRoZSBjb250YWluZXIuXG4gICAqXG4gICAqIFRoZXNlIG11c3QgYmUgaW4gdGhlIGZvcm1hdCBkZWZpbmVkIGluIHRoZSBPcGVuIFZTWCByZWdpc3RyeS5cbiAgICogQGV4YW1wbGUgJ3NjYWxhLWxhbmcuc2NhbGFAMC4zLjk6TzVYbWp3WTVHeiswb0RaQW1xbmVKdz09J1xuICAgKiBAc2VlIGh0dHBzOi8vd3d3LmdpdHBvZC5pby9kb2NzL3ZzY29kZS1leHRlbnNpb25zL1xuICAgKlxuICAgKiBAcGFyYW0gZXh0ZW5zaW9ucyBUaGUgZXh0ZW5zaW9uIElEc1xuICAgKi9cbiAgcHVibGljIGFkZFZzY29kZUV4dGVuc2lvbnMoLi4uZXh0ZW5zaW9uczogR2l0cG9kQ29kZUV4dGVuc2lvbklkW10pIHtcbiAgICB0aGlzLnZzY29kZUV4dGVuc2lvbnMucHVzaCguLi5leHRlbnNpb25zKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVuZGVyRG9ja2VySW1hZ2UoKSB7XG4gICAgaWYgKHRoaXMuZG9ja2VySW1hZ2U/LmltYWdlKSB7XG4gICAgICByZXR1cm4gdGhpcy5kb2NrZXJJbWFnZS5pbWFnZTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuZG9ja2VySW1hZ2U/LmRvY2tlckZpbGUpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGZpbGU6IHRoaXMuZG9ja2VySW1hZ2UuZG9ja2VyRmlsZSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZW5kZXJQcmVidWlsZHMoKSB7XG4gICAgaWYgKHRoaXMucHJlYnVpbGRzKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBwcmVidWlsZHM6IHRoaXMucHJlYnVpbGRzLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBWUyBDb2RlIGV4dGVuc2lvbnMgYXMgZGVmaW5lZCBpbiB0aGUgT3BlbiBWU1ggcmVnaXN0cnlcbiAqIEV4YW1wbGU6IGBzY2FsYS1sYW5nLnNjYWxhQDAuMy45Ok81WG1qd1k1R3orMG9EWkFtcW5lSnc9PWBcbiAqL1xudHlwZSBHaXRwb2RDb2RlRXh0ZW5zaW9uSWQgPSBzdHJpbmc7XG4iXX0=
@@ -99,7 +99,7 @@ class IgnoreFile extends file_1.FileBase {
99
99
  }
100
100
  exports.IgnoreFile = IgnoreFile;
101
101
  _a = JSII_RTTI_SYMBOL_1;
102
- IgnoreFile[_a] = { fqn: "projen.IgnoreFile", version: "0.99.56" };
102
+ IgnoreFile[_a] = { fqn: "projen.IgnoreFile", version: "0.99.58" };
103
103
  // O(n) hooray!
104
104
  function remove(arr, value) {
105
105
  const idx = arr.indexOf(value);
package/lib/ini.js CHANGED
@@ -26,5 +26,5 @@ class IniFile extends object_file_1.ObjectFile {
26
26
  }
27
27
  exports.IniFile = IniFile;
28
28
  _a = JSII_RTTI_SYMBOL_1;
29
- IniFile[_a] = { fqn: "projen.IniFile", version: "0.99.56" };
29
+ IniFile[_a] = { fqn: "projen.IniFile", version: "0.99.58" };
30
30
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2luaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDJCQUEyQjtBQUczQiwrQ0FBMkM7QUFRM0M7O0dBRUc7QUFDSCxNQUFhLE9BQVEsU0FBUSx3QkFBVTtJQUNyQyxZQUFZLE9BQWdCLEVBQUUsUUFBZ0IsRUFBRSxPQUF1QjtRQUNyRSxLQUFLLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRVMsaUJBQWlCLENBQUMsUUFBbUI7UUFDN0MsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNWLE9BQU8sU0FBUyxDQUFDO1FBQ25CLENBQUM7UUFFRCxPQUFPO1lBQ0wsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzVDLEVBQUU7WUFDRixHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDaEMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDZixDQUFDOztBQWhCSCwwQkFpQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBJTkkgZnJvbSBcImluaVwiO1xuaW1wb3J0IHR5cGUgeyBJUmVzb2x2ZXIgfSBmcm9tIFwiLi9maWxlXCI7XG5pbXBvcnQgdHlwZSB7IE9iamVjdEZpbGVPcHRpb25zIH0gZnJvbSBcIi4vb2JqZWN0LWZpbGVcIjtcbmltcG9ydCB7IE9iamVjdEZpbGUgfSBmcm9tIFwiLi9vYmplY3QtZmlsZVwiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4vcHJvamVjdFwiO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBJbmlGaWxlYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbmlGaWxlT3B0aW9ucyBleHRlbmRzIE9iamVjdEZpbGVPcHRpb25zIHt9XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBJTkkgZmlsZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEluaUZpbGUgZXh0ZW5kcyBPYmplY3RGaWxlIHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgZmlsZVBhdGg6IHN0cmluZywgb3B0aW9uczogSW5pRmlsZU9wdGlvbnMpIHtcbiAgICBzdXBlcihwcm9qZWN0LCBmaWxlUGF0aCwgb3B0aW9ucyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc3ludGhlc2l6ZUNvbnRlbnQocmVzb2x2ZXI6IElSZXNvbHZlcik6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QganNvbiA9IHN1cGVyLnN5bnRoZXNpemVDb250ZW50KHJlc29sdmVyKTtcbiAgICBpZiAoIWpzb24pIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgcmV0dXJuIFtcbiAgICAgIC4uLih0aGlzLm1hcmtlciA/IFtgIyAke3RoaXMubWFya2VyfWBdIDogW10pLFxuICAgICAgXCJcIixcbiAgICAgIElOSS5zdHJpbmdpZnkoSlNPTi5wYXJzZShqc29uKSksXG4gICAgXS5qb2luKFwiXFxuXCIpO1xuICB9XG59XG4iXX0=
@@ -91,5 +91,5 @@ class JavaProject extends github_1.GitHubProject {
91
91
  }
92
92
  exports.JavaProject = JavaProject;
93
93
  _a = JSII_RTTI_SYMBOL_1;
94
- JavaProject[_a] = { fqn: "projen.java.JavaProject", version: "0.99.56" };
94
+ JavaProject[_a] = { fqn: "projen.java.JavaProject", version: "0.99.58" };
95
95
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiamF2YS1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2phdmEvamF2YS1wcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsbUNBQWdDO0FBRWhDLG1EQUErQztBQUUvQyx1REFBbUQ7QUFDbkQsaURBQTZDO0FBRTdDLCtCQUE0QjtBQUU1Qix5Q0FBc0Q7QUFFdEQsc0NBQTBDO0FBQzFDLGtDQUF3RDtBQW9HeEQ7Ozs7R0FJRztBQUNILE1BQWEsV0FBWSxTQUFRLHNCQUFhO0lBK0I1QyxZQUFZLE9BQTJCO1FBQ3JDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sSUFBSSxXQUFXLENBQUM7UUFDOUMsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLFNBQUcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFbEMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRXZFLElBQUksSUFBQSx1QkFBZ0IsRUFBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUM7WUFDeEMsTUFBTSxJQUFJLEtBQUssQ0FDYiw0REFBNEQsQ0FDN0QsQ0FBQztRQUNKLENBQUM7UUFFRCxpRUFBaUU7UUFDakUsSUFDRSxDQUFDLElBQUksQ0FBQyxNQUFNO1lBQ1osQ0FBQyxPQUFPLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBQSxrQkFBVyxFQUFDLGlCQUFpQixDQUFDLENBQUMsRUFDekQsQ0FBQztZQUNELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxtQkFBWSxDQUM5QixJQUFJLEVBQ0osSUFBSSxDQUFDLEdBQUcsRUFDUixPQUFPLENBQUMsbUJBQW1CLENBQzVCLENBQUM7UUFDSixDQUFDO1FBRUQsTUFBTSxpQkFBaUIsR0FBRyxPQUFPLENBQUMsaUJBQWlCLElBQUksVUFBVSxDQUFDO1FBRWxFLElBQUksT0FBTyxDQUFDLEtBQUssSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUMxQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksYUFBSyxDQUFDLElBQUksRUFBRTtnQkFDM0IsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHO2dCQUNiLGlCQUFpQjtnQkFDakIsR0FBRyxPQUFPLENBQUMsWUFBWTthQUN4QixDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzNCLElBQUksMEJBQVcsQ0FBQyxJQUFJLEVBQUUsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELENBQUM7UUFFRCw2QkFBNkI7UUFDN0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsOEJBQThCLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFOUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFcEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLDRCQUFZLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxnQ0FBYyxDQUNqQyxJQUFJLEVBQ0osSUFBSSxDQUFDLEdBQUcsRUFDUixPQUFPLENBQUMsZ0JBQWdCLENBQ3pCLENBQUM7UUFFRixJQUFJLENBQUMsU0FBUyxDQUFDLHlEQUF5RCxFQUFFO1lBQ3hFLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO1lBQ3pELGFBQWEsRUFBRTtnQkFDYixLQUFLLEVBQUUsQ0FBQyxFQUFFLG1CQUFtQixFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDO2FBQ3ZEO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsS0FBSyxNQUFNLEdBQUcsSUFBSSxPQUFPLENBQUMsSUFBSSxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ3JDLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUIsQ0FBQztRQUVELEtBQUssTUFBTSxHQUFHLElBQUksT0FBTyxDQUFDLFFBQVEsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUN6QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDOUIsQ0FBQztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksYUFBYSxDQUFDLElBQVk7UUFDL0IsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLGlCQUFpQixDQUFDLElBQVk7UUFDbkMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksU0FBUyxDQUFDLElBQVksRUFBRSxVQUF5QixFQUFFO1FBQ3hELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzNDLENBQUM7O0FBaklILGtDQWtJQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgSnVuaXRPcHRpb25zIH0gZnJvbSBcIi4vanVuaXRcIjtcbmltcG9ydCB7IEp1bml0IH0gZnJvbSBcIi4vanVuaXRcIjtcbmltcG9ydCB0eXBlIHsgTWF2ZW5Db21waWxlT3B0aW9ucyB9IGZyb20gXCIuL21hdmVuLWNvbXBpbGVcIjtcbmltcG9ydCB7IE1hdmVuQ29tcGlsZSB9IGZyb20gXCIuL21hdmVuLWNvbXBpbGVcIjtcbmltcG9ydCB0eXBlIHsgTWF2ZW5QYWNrYWdpbmdPcHRpb25zIH0gZnJvbSBcIi4vbWF2ZW4tcGFja2FnaW5nXCI7XG5pbXBvcnQgeyBNYXZlblBhY2thZ2luZyB9IGZyb20gXCIuL21hdmVuLXBhY2thZ2luZ1wiO1xuaW1wb3J0IHsgTWF2ZW5TYW1wbGUgfSBmcm9tIFwiLi9tYXZlbi1zYW1wbGVcIjtcbmltcG9ydCB0eXBlIHsgUGx1Z2luT3B0aW9ucywgUG9tT3B0aW9ucyB9IGZyb20gXCIuL3BvbVwiO1xuaW1wb3J0IHsgUG9tIH0gZnJvbSBcIi4vcG9tXCI7XG5pbXBvcnQgdHlwZSB7IFByb2plbnJjT3B0aW9ucyB9IGZyb20gXCIuL3Byb2plbnJjXCI7XG5pbXBvcnQgeyBQcm9qZW5yYyBhcyBQcm9qZW5yY0phdmEgfSBmcm9tIFwiLi9wcm9qZW5yY1wiO1xuaW1wb3J0IHR5cGUgeyBHaXRIdWJQcm9qZWN0T3B0aW9ucyB9IGZyb20gXCIuLi9naXRodWJcIjtcbmltcG9ydCB7IEdpdEh1YlByb2plY3QgfSBmcm9tIFwiLi4vZ2l0aHViXCI7XG5pbXBvcnQgeyBhbnlTZWxlY3RlZCwgbXVsdGlwbGVTZWxlY3RlZCB9IGZyb20gXCIuLi91dGlsXCI7XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYEphdmFQcm9qZWN0YC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBKYXZhUHJvamVjdENvbW1vbk9wdGlvbnNcbiAgZXh0ZW5kcyBHaXRIdWJQcm9qZWN0T3B0aW9ucywgUG9tT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBGaW5hbCBhcnRpZmFjdCBvdXRwdXQgZGlyZWN0b3J5LlxuICAgKlxuICAgKiBAZGVmYXVsdCBcImRpc3QvamF2YVwiXG4gICAqL1xuICByZWFkb25seSBkaXN0ZGlyPzogc3RyaW5nO1xuXG4gIC8vIC0tIGRlcGVuZGVuY2llcyAtLVxuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHJ1bnRpbWUgZGVwZW5kZW5jaWVzIGZvciB0aGlzIHByb2plY3QuXG4gICAqXG4gICAqIERlcGVuZGVuY2llcyB1c2UgdGhlIGZvcm1hdDogYDxncm91cElkPi88YXJ0aWZhY3RJZD5APHNlbXZlcj5gXG4gICAqXG4gICAqIEFkZGl0aW9uYWwgZGVwZW5kZW5jaWVzIGNhbiBiZSBhZGRlZCB2aWEgYHByb2plY3QuYWRkRGVwZW5kZW5jeSgpYC5cbiAgICpcbiAgICogQGRlZmF1bHQgW11cbiAgICogQGZlYXR1cmVkXG4gICAqL1xuICByZWFkb25seSBkZXBzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgdGVzdCBkZXBlbmRlbmNpZXMgZm9yIHRoaXMgcHJvamVjdC5cbiAgICpcbiAgICogRGVwZW5kZW5jaWVzIHVzZSB0aGUgZm9ybWF0OiBgPGdyb3VwSWQ+LzxhcnRpZmFjdElkPkA8c2VtdmVyPmBcbiAgICpcbiAgICogQWRkaXRpb25hbCBkZXBlbmRlbmNpZXMgY2FuIGJlIGFkZGVkIHZpYSBgcHJvamVjdC5hZGRUZXN0RGVwZW5kZW5jeSgpYC5cbiAgICpcbiAgICogQGRlZmF1bHQgW11cbiAgICogQGZlYXR1cmVkXG4gICAqL1xuICByZWFkb25seSB0ZXN0RGVwcz86IHN0cmluZ1tdO1xuXG4gIC8vIC0tIGNvbXBvbmVudHMgLS1cblxuICAvKipcbiAgICogSW5jbHVkZSBqdW5pdCB0ZXN0cy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkganVuaXQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBqdW5pdCBvcHRpb25zXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdHNcbiAgICovXG4gIHJlYWRvbmx5IGp1bml0T3B0aW9ucz86IEp1bml0T3B0aW9ucztcblxuICAvKipcbiAgICogUGFja2FnaW5nIG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdHNcbiAgICovXG4gIHJlYWRvbmx5IHBhY2thZ2luZ09wdGlvbnM/OiBNYXZlblBhY2thZ2luZ09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIENvbXBpbGUgb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0c1xuICAgKi9cbiAgcmVhZG9ubHkgY29tcGlsZU9wdGlvbnM/OiBNYXZlbkNvbXBpbGVPcHRpb25zO1xuXG4gIC8qKlxuICAgKiBVc2UgcHJvamVucmMgaW4gamF2YS5cbiAgICpcbiAgICogVGhpcyB3aWxsIGluc3RhbGwgYHByb2plbmAgYXMgYSBqYXZhIGRlcGVuZGVuY3kgYW5kIHdpbGwgYWRkIGEgYHN5bnRoYCB0YXNrIHdoaWNoXG4gICAqIHdpbGwgY29tcGlsZSAmIGV4ZWN1dGUgYG1haW4oKWAgZnJvbSBgc3JjL21haW4vamF2YS9wcm9qZW5yYy5qYXZhYC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNKYXZhPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogT3B0aW9ucyByZWxhdGVkIHRvIHByb2plbnJjIGluIGphdmEuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY0phdmFPcHRpb25zPzogUHJvamVucmNPcHRpb25zO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBKYXZhUHJvamVjdGAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSmF2YVByb2plY3RPcHRpb25zIGV4dGVuZHMgSmF2YVByb2plY3RDb21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIEluY2x1ZGUgc2FtcGxlIGNvZGUgYW5kIHRlc3QgaWYgdGhlIHJlbGV2YW50IGRpcmVjdG9yaWVzIGRvbid0IGV4aXN0LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBzYW1wbGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgamF2YSBwYWNrYWdlIHRvIHVzZSBmb3IgdGhlIGNvZGUgc2FtcGxlLlxuICAgKiBAZGVmYXVsdCBcIm9yZy5hY21lXCJcbiAgICovXG4gIHJlYWRvbmx5IHNhbXBsZUphdmFQYWNrYWdlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEphdmEgcHJvamVjdC5cbiAqXG4gKiBAcGppZCBqYXZhXG4gKi9cbmV4cG9ydCBjbGFzcyBKYXZhUHJvamVjdCBleHRlbmRzIEdpdEh1YlByb2plY3Qge1xuICAvKipcbiAgICogQVBJIGZvciBtYW5hZ2luZyBgcG9tLnhtbGAuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcG9tOiBQb207XG5cbiAgLyoqXG4gICAqIEpVbml0IGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBqdW5pdD86IEp1bml0O1xuXG4gIC8qKlxuICAgKiBQYWNrYWdpbmcgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHBhY2thZ2luZzogTWF2ZW5QYWNrYWdpbmc7XG5cbiAgLyoqXG4gICAqIENvbXBpbGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNvbXBpbGU6IE1hdmVuQ29tcGlsZTtcblxuICAvKipcbiAgICogUHJvamVucmMgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb2plbnJjPzogUHJvamVucmNKYXZhO1xuXG4gIC8qKlxuICAgKiBNYXZlbiBhcnRpZmFjdCBvdXRwdXQgZGlyZWN0b3J5LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRpc3RkaXI6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBKYXZhUHJvamVjdE9wdGlvbnMpIHtcbiAgICBzdXBlcihvcHRpb25zKTtcblxuICAgIHRoaXMuZGlzdGRpciA9IG9wdGlvbnMuZGlzdGRpciA/PyBcImRpc3QvamF2YVwiO1xuICAgIHRoaXMucG9tID0gbmV3IFBvbSh0aGlzLCBvcHRpb25zKTtcblxuICAgIGNvbnN0IHJjRmlsZVR5cGVPcHRpb25zID0gW29wdGlvbnMucHJvamVucmNKYXZhLCBvcHRpb25zLnByb2plbnJjSnNvbl07XG5cbiAgICBpZiAobXVsdGlwbGVTZWxlY3RlZChyY0ZpbGVUeXBlT3B0aW9ucykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJPbmx5IG9uZSBvZiBwcm9qZW5yY0phdmEgYW5kIHByb2plbnJjSnNvbiBjYW4gYmUgc2VsZWN0ZWQuXCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIGRlZmF1bHQgdG8gcHJvamVucmMuamF2YSBpZiBubyBvdGhlciBwcm9qZW5yYyB0eXBlIHdhcyBlbGVjdGVkXG4gICAgaWYgKFxuICAgICAgIXRoaXMucGFyZW50ICYmXG4gICAgICAob3B0aW9ucy5wcm9qZW5yY0phdmEgPz8gIWFueVNlbGVjdGVkKHJjRmlsZVR5cGVPcHRpb25zKSlcbiAgICApIHtcbiAgICAgIHRoaXMucHJvamVucmMgPSBuZXcgUHJvamVucmNKYXZhKFxuICAgICAgICB0aGlzLFxuICAgICAgICB0aGlzLnBvbSxcbiAgICAgICAgb3B0aW9ucy5wcm9qZW5yY0phdmFPcHRpb25zLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBzYW1wbGVKYXZhUGFja2FnZSA9IG9wdGlvbnMuc2FtcGxlSmF2YVBhY2thZ2UgPz8gXCJvcmcuYWNtZVwiO1xuXG4gICAgaWYgKG9wdGlvbnMuanVuaXQgPz8gdHJ1ZSkge1xuICAgICAgdGhpcy5qdW5pdCA9IG5ldyBKdW5pdCh0aGlzLCB7XG4gICAgICAgIHBvbTogdGhpcy5wb20sXG4gICAgICAgIHNhbXBsZUphdmFQYWNrYWdlLFxuICAgICAgICAuLi5vcHRpb25zLmp1bml0T3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLnNhbXBsZSA/PyB0cnVlKSB7XG4gICAgICBuZXcgTWF2ZW5TYW1wbGUodGhpcywgeyBwYWNrYWdlOiBzYW1wbGVKYXZhUGFja2FnZSB9KTtcbiAgICB9XG5cbiAgICAvLyBwbGF0Zm9ybSBpbmRlcGVuZGVudCBidWlsZFxuICAgIHRoaXMucG9tLmFkZFByb3BlcnR5KFwicHJvamVjdC5idWlsZC5zb3VyY2VFbmNvZGluZ1wiLCBcIlVURi04XCIpO1xuXG4gICAgdGhpcy5naXRpZ25vcmUuZXhjbHVkZShcIi5jbGFzc3BhdGhcIik7XG4gICAgdGhpcy5naXRpZ25vcmUuZXhjbHVkZShcIi5wcm9qZWN0XCIpO1xuICAgIHRoaXMuZ2l0aWdub3JlLmV4Y2x1ZGUoXCIuc2V0dGluZ3NcIik7XG5cbiAgICB0aGlzLmNvbXBpbGUgPSBuZXcgTWF2ZW5Db21waWxlKHRoaXMsIHRoaXMucG9tLCBvcHRpb25zLmNvbXBpbGVPcHRpb25zKTtcbiAgICB0aGlzLnBhY2thZ2luZyA9IG5ldyBNYXZlblBhY2thZ2luZyhcbiAgICAgIHRoaXMsXG4gICAgICB0aGlzLnBvbSxcbiAgICAgIG9wdGlvbnMucGFja2FnaW5nT3B0aW9ucyxcbiAgICApO1xuXG4gICAgdGhpcy5hZGRQbHVnaW4oXCJvcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnMvbWF2ZW4tZW5mb3JjZXItcGx1Z2luQDMuMC4wLU0zXCIsIHtcbiAgICAgIGV4ZWN1dGlvbnM6IFt7IGlkOiBcImVuZm9yY2UtbWF2ZW5cIiwgZ29hbHM6IFtcImVuZm9yY2VcIl0gfV0sXG4gICAgICBjb25maWd1cmF0aW9uOiB7XG4gICAgICAgIHJ1bGVzOiBbeyByZXF1aXJlTWF2ZW5WZXJzaW9uOiBbeyB2ZXJzaW9uOiBcIjMuNlwiIH1dIH1dLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGZvciAoY29uc3QgZGVwIG9mIG9wdGlvbnMuZGVwcyA/PyBbXSkge1xuICAgICAgdGhpcy5hZGREZXBlbmRlbmN5KGRlcCk7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBkZXAgb2Ygb3B0aW9ucy50ZXN0RGVwcyA/PyBbXSkge1xuICAgICAgdGhpcy5hZGRUZXN0RGVwZW5kZW5jeShkZXApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgcnVudGltZSBkZXBlbmRlbmN5LlxuICAgKlxuICAgKiBAcGFyYW0gc3BlYyBGb3JtYXQgYDxncm91cElkPi88YXJ0aWZhY3RJZD5APHNlbXZlcj5gXG4gICAqL1xuICBwdWJsaWMgYWRkRGVwZW5kZW5jeShzcGVjOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5wb20uYWRkRGVwZW5kZW5jeShzcGVjKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgdGVzdCBkZXBlbmRlbmN5LlxuICAgKlxuICAgKiBAcGFyYW0gc3BlYyBGb3JtYXQgYDxncm91cElkPi88YXJ0aWZhY3RJZD5APHNlbXZlcj5gXG4gICAqL1xuICBwdWJsaWMgYWRkVGVzdERlcGVuZGVuY3koc3BlYzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMucG9tLmFkZFRlc3REZXBlbmRlbmN5KHNwZWMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYSBidWlsZCBwbHVnaW4gdG8gdGhlIHBvbS5cbiAgICpcbiAgICogVGhlIHBsdWcgaW4gaXMgYWxzbyBhZGRlZCBhcyBhIEJVSUxEIGRlcCB0byB0aGUgcHJvamVjdC5cbiAgICpcbiAgICogQHBhcmFtIHNwZWMgZGVwZW5kZW5jeSBzcGVjIChgZ3JvdXAvYXJ0aWZhY3RAdmVyc2lvbmApXG4gICAqIEBwYXJhbSBvcHRpb25zIHBsdWdpbiBvcHRpb25zXG4gICAqL1xuICBwdWJsaWMgYWRkUGx1Z2luKHNwZWM6IHN0cmluZywgb3B0aW9uczogUGx1Z2luT3B0aW9ucyA9IHt9KSB7XG4gICAgcmV0dXJuIHRoaXMucG9tLmFkZFBsdWdpbihzcGVjLCBvcHRpb25zKTtcbiAgfVxufVxuIl19
package/lib/java/junit.js CHANGED
@@ -40,5 +40,5 @@ class Junit extends component_1.Component {
40
40
  }
41
41
  exports.Junit = Junit;
42
42
  _a = JSII_RTTI_SYMBOL_1;
43
- Junit[_a] = { fqn: "projen.java.Junit", version: "0.99.56" };
43
+ Junit[_a] = { fqn: "projen.java.Junit", version: "0.99.58" };
44
44
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianVuaXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvamF2YS9qdW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtCQUE0QjtBQUU1Qiw0Q0FBeUM7QUFFekMsZ0RBQTJDO0FBRTNDLE1BQU0sT0FBTyxHQUFHLElBQUEsV0FBSSxFQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7QUF5QjVDOztHQUVHO0FBQ0gsTUFBYSxLQUFNLFNBQVEscUJBQVM7SUFDbEMsWUFBWSxPQUFnQixFQUFFLE9BQXFCO1FBQ2pELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUM7UUFDeEIsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUM7UUFFM0MsR0FBRyxDQUFDLGlCQUFpQixDQUFDLHVDQUF1QyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3hFLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQywwQ0FBMEMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUUzRSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUVsQyxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsaUJBQWlCLElBQUksVUFBVSxDQUFDO1FBQzVELE1BQU0sZUFBZSxHQUFHLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0MsSUFBSSx1QkFBUyxDQUFDLE9BQU8sRUFBRSxJQUFBLFdBQUksRUFBQyxPQUFPLEVBQUUsR0FBRyxlQUFlLENBQUMsRUFBRTtZQUN4RCxLQUFLLEVBQUU7Z0JBQ0wsYUFBYSxFQUFFO29CQUNiLFdBQVcsV0FBVyxHQUFHO29CQUN6QixFQUFFO29CQUNGLG9DQUFvQztvQkFDcEMsRUFBRTtvQkFDRix1QkFBdUI7b0JBQ3ZCLFNBQVM7b0JBQ1QsNkJBQTZCO29CQUM3QiwwQ0FBMEM7b0JBQzFDLEtBQUs7b0JBQ0wsR0FBRztpQkFDSixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7YUFDYjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBOUJILHNCQStCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpvaW4gfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHR5cGUgeyBQb20gfSBmcm9tIFwiLi9wb21cIjtcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRcIjtcbmltcG9ydCB0eXBlIHsgUHJvamVjdCB9IGZyb20gXCIuLi9wcm9qZWN0XCI7XG5pbXBvcnQgeyBTYW1wbGVEaXIgfSBmcm9tIFwiLi4vc2FtcGxlLWZpbGVcIjtcblxuY29uc3QgVEVTVERJUiA9IGpvaW4oXCJzcmNcIiwgXCJ0ZXN0XCIsIFwiamF2YVwiKTtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBgSnVuaXRgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEp1bml0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBKYXZhIHBvbS5cbiAgICovXG4gIHJlYWRvbmx5IHBvbTogUG9tO1xuXG4gIC8qKlxuICAgKiBKdW5pdCB2ZXJzaW9uXG4gICAqXG4gICAqIEBkZWZhdWx0IFwiNS43LjBcIlxuICAgKi9cbiAgcmVhZG9ubHkgdmVyc2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogSmF2YSBwYWNrYWdlIGZvciB0ZXN0IHNhbXBsZS5cbiAgICogQGRlZmF1bHQgXCJvcmcuYWNtZVwiXG4gICAqL1xuICByZWFkb25seSBzYW1wbGVKYXZhUGFja2FnZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBJbXBsZW1lbnRzIEpVbml0LWJhc2VkIHRlc3RpbmcuXG4gKi9cbmV4cG9ydCBjbGFzcyBKdW5pdCBleHRlbmRzIENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IEp1bml0T3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgY29uc3QgcG9tID0gb3B0aW9ucy5wb207XG4gICAgY29uc3QgdmVyc2lvbiA9IG9wdGlvbnMudmVyc2lvbiA/PyBcIjUuNy4wXCI7XG5cbiAgICBwb20uYWRkVGVzdERlcGVuZGVuY3koYG9yZy5qdW5pdC5qdXBpdGVyL2p1bml0LWp1cGl0ZXItYXBpQCR7dmVyc2lvbn1gKTtcbiAgICBwb20uYWRkVGVzdERlcGVuZGVuY3koYG9yZy5qdW5pdC5qdXBpdGVyL2p1bml0LWp1cGl0ZXItZW5naW5lQCR7dmVyc2lvbn1gKTtcblxuICAgIHByb2plY3QudGVzdFRhc2suZXhlYyhcIm12biB0ZXN0XCIpO1xuXG4gICAgY29uc3QgamF2YVBhY2thZ2UgPSBvcHRpb25zLnNhbXBsZUphdmFQYWNrYWdlID8/IFwib3JnLmFjbWVcIjtcbiAgICBjb25zdCBqYXZhUGFja2FnZVBhdGggPSBqYXZhUGFja2FnZS5zcGxpdChcIi5cIik7XG4gICAgbmV3IFNhbXBsZURpcihwcm9qZWN0LCBqb2luKFRFU1RESVIsIC4uLmphdmFQYWNrYWdlUGF0aCksIHtcbiAgICAgIGZpbGVzOiB7XG4gICAgICAgIFwiTXlUZXN0LmphdmFcIjogW1xuICAgICAgICAgIGBwYWNrYWdlICR7amF2YVBhY2thZ2V9O2AsXG4gICAgICAgICAgXCJcIixcbiAgICAgICAgICBcImltcG9ydCBvcmcuanVuaXQuanVwaXRlci5hcGkuVGVzdDtcIixcbiAgICAgICAgICBcIlwiLFxuICAgICAgICAgIFwicHVibGljIGNsYXNzIE15VGVzdCB7XCIsXG4gICAgICAgICAgXCIgIEBUZXN0XCIsXG4gICAgICAgICAgXCIgIHB1YmxpYyB2b2lkIHRlc3RIZWxsbygpIHtcIixcbiAgICAgICAgICAnICAgIFN5c3RlbS5vdXQucHJpbnRsbihcIkhlbGxvLCB3b3JsZCFcIik7JyxcbiAgICAgICAgICBcIiAgfVwiLFxuICAgICAgICAgIFwifVwiLFxuICAgICAgICBdLmpvaW4oXCJcXG5cIiksXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -22,5 +22,5 @@ class MavenCompile extends component_1.Component {
22
22
  }
23
23
  exports.MavenCompile = MavenCompile;
24
24
  _a = JSII_RTTI_SYMBOL_1;
25
- MavenCompile[_a] = { fqn: "projen.java.MavenCompile", version: "0.99.56" };
25
+ MavenCompile[_a] = { fqn: "projen.java.MavenCompile", version: "0.99.58" };
26
26
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF2ZW4tY29tcGlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9qYXZhL21hdmVuLWNvbXBpbGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFDQSw0Q0FBeUM7QUFzQnpDOztHQUVHO0FBQ0gsTUFBYSxZQUFhLFNBQVEscUJBQVM7SUFDekMsWUFBWSxPQUFnQixFQUFFLEdBQVEsRUFBRSxVQUErQixFQUFFO1FBQ3ZFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRXBDLEdBQUcsQ0FBQyxTQUFTLENBQUMsc0RBQXNELEVBQUU7WUFDcEUsYUFBYSxFQUFFO2dCQUNiLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxJQUFJLEtBQUs7Z0JBQy9CLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxJQUFJLEtBQUs7YUFDaEM7U0FDRixDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQ25ELENBQUM7O0FBZEgsb0NBZUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBvbSB9IGZyb20gXCIuL3BvbVwiO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBgTWF2ZW5Db21waWxlYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYXZlbkNvbXBpbGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFNvdXJjZSBsYW5ndWFnZSB2ZXJzaW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCBcIjEuOFwiXG4gICAqL1xuICByZWFkb25seSBzb3VyY2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRhcmdldCBKVk0gdmVyc2lvbi5cbiAgICpcbiAgICogQGRlZmF1bHQgXCIxLjhcIlxuICAgKi9cbiAgcmVhZG9ubHkgdGFyZ2V0Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEFkZHMgdGhlIG1hdmVuLWNvbXBpbGVyIHBsdWdpbiB0byBhIFBPTSBmaWxlIGFuZCB0aGUgYGNvbXBpbGVgIHRhc2suXG4gKi9cbmV4cG9ydCBjbGFzcyBNYXZlbkNvbXBpbGUgZXh0ZW5kcyBDb21wb25lbnQge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBwb206IFBvbSwgb3B0aW9uczogTWF2ZW5Db21waWxlT3B0aW9ucyA9IHt9KSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICBwcm9qZWN0LmdpdGlnbm9yZS5leGNsdWRlKFwidGFyZ2V0XCIpO1xuXG4gICAgcG9tLmFkZFBsdWdpbihcIm9yZy5hcGFjaGUubWF2ZW4ucGx1Z2lucy9tYXZlbi1jb21waWxlci1wbHVnaW5AMy44LjFcIiwge1xuICAgICAgY29uZmlndXJhdGlvbjoge1xuICAgICAgICBzb3VyY2U6IG9wdGlvbnMuc291cmNlID8/IFwiMS44XCIsXG4gICAgICAgIHRhcmdldDogb3B0aW9ucy50YXJnZXQgPz8gXCIxLjhcIixcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBwcm9qZWN0LmNvbXBpbGVUYXNrLmV4ZWMoXCJtdm4gY29tcGlsZXI6Y29tcGlsZVwiKTtcbiAgfVxufVxuIl19
@@ -57,5 +57,5 @@ class MavenPackaging extends component_1.Component {
57
57
  }
58
58
  exports.MavenPackaging = MavenPackaging;
59
59
  _a = JSII_RTTI_SYMBOL_1;
60
- MavenPackaging[_a] = { fqn: "projen.java.MavenPackaging", version: "0.99.56" };
60
+ MavenPackaging[_a] = { fqn: "projen.java.MavenPackaging", version: "0.99.58" };
61
61
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF2ZW4tcGFja2FnaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2phdmEvbWF2ZW4tcGFja2FnaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQ0EsNENBQXlDO0FBZ0N6Qzs7R0FFRztBQUNILE1BQWEsY0FBZSxTQUFRLHFCQUFTO0lBTTNDLFlBQVksT0FBZ0IsRUFBRSxHQUFRLEVBQUUsVUFBaUMsRUFBRTtRQUN6RSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFZixHQUFHLENBQUMsU0FBUyxDQUFDLGlEQUFpRCxFQUFFO1lBQy9ELGFBQWEsRUFBRTtnQkFDYixPQUFPLEVBQUU7b0JBQ1AsS0FBSyxFQUFFLElBQUk7b0JBQ1gsUUFBUSxFQUFFO3dCQUNSLCtCQUErQixFQUFFLElBQUk7d0JBQ3JDLDhCQUE4QixFQUFFLElBQUk7cUJBQ3JDO2lCQUNGO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLE9BQU8sQ0FBQyxPQUFPLElBQUksSUFBSSxFQUFFLENBQUM7WUFDNUIsR0FBRyxDQUFDLFNBQVMsQ0FBQyxvREFBb0QsRUFBRTtnQkFDbEUsVUFBVSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQzthQUN2RCxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzdCLEdBQUcsQ0FBQyxTQUFTLENBQUMscURBQXFELEVBQUU7Z0JBQ25FLFVBQVUsRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLGlCQUFpQixFQUFFLEtBQUssRUFBRSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7Z0JBQ3ZELGFBQWEsRUFBRTtvQkFDYixXQUFXLEVBQUUsS0FBSztvQkFDbEIsSUFBSSxFQUFFLFdBQVc7b0JBQ2pCLGtCQUFrQixFQUFFLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxlQUFlLEVBQUU7b0JBQ3hELGlCQUFpQixFQUFFLEtBQUssRUFBRSx1Q0FBdUM7b0JBQ2pFLGtCQUFrQixFQUFFO3dCQUNsQixpQkFBaUIsRUFBRTs0QkFDakIsMEJBQTBCOzRCQUMxQiwyQkFBMkI7eUJBQzVCO3FCQUNGO2lCQUNGO2FBQ0YsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE1BQU0sR0FBRyxHQUFHO1lBQ1YsVUFBVSxFQUFFLGdEQUFnRDtTQUM3RCxDQUFDO1FBRUYsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLFdBQVcsQ0FBQztRQUU5QyxLQUFLLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDckMsQ0FBQztRQUNELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDM0Isc0VBQXNFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FDckYsQ0FBQztRQUVGLE9BQU8sQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQyxDQUFDOztBQTVESCx3Q0E2REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBvbSB9IGZyb20gXCIuL3BvbVwiO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBgTWF2ZW5QYWNrYWdlYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYXZlblBhY2thZ2luZ09wdGlvbnMge1xuICAvKipcbiAgICogSW5jbHVkZSBzb3VyY2VzIGphciBpbiBwYWNrYWdlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBzb3VyY2VzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hlcmUgdG8gcGxhY2UgdGhlIHBhY2thZ2Ugb3V0cHV0P1xuICAgKiBAZGVmYXVsdCBcImRpc3QvamF2YVwiXG4gICAqL1xuICByZWFkb25seSBkaXN0ZGlyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbmNsdWRlIGphdmFkb2NzIGphciBpbiBwYWNrYWdlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBqYXZhZG9jcz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEV4Y2x1ZGUgc291cmNlIGZpbGVzIGZyb20gZG9jcy5cbiAgICogQGRlZmF1bHQgW11cbiAgICovXG4gIHJlYWRvbmx5IGphdmFkb2NzRXhjbHVkZT86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIENvbmZpZ3VyZXMgYSBtYXZlbiBwcm9qZWN0IHRvIHByb2R1Y2UgYSAuamFyIGFyY2hpdmUgd2l0aCBzb3VyY2VzIGFuZCBqYXZhZG9jcy5cbiAqL1xuZXhwb3J0IGNsYXNzIE1hdmVuUGFja2FnaW5nIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqIFRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgcGFja2FnZSBvdXRwdXQsIHJlbGF0aXZlIHRvIHRoZSBwcm9qZWN0IG91dGRpclxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRpc3RkaXI6IHN0cmluZztcblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBwb206IFBvbSwgb3B0aW9uczogTWF2ZW5QYWNrYWdpbmdPcHRpb25zID0ge30pIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIHBvbS5hZGRQbHVnaW4oXCJvcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnMvbWF2ZW4tamFyLXBsdWdpbkAzLjIuMFwiLCB7XG4gICAgICBjb25maWd1cmF0aW9uOiB7XG4gICAgICAgIGFyY2hpdmU6IHtcbiAgICAgICAgICBpbmRleDogdHJ1ZSxcbiAgICAgICAgICBtYW5pZmVzdDoge1xuICAgICAgICAgICAgYWRkRGVmYXVsdEltcGxlbWVudGF0aW9uRW50cmllczogdHJ1ZSxcbiAgICAgICAgICAgIGFkZERlZmF1bHRTcGVjaWZpY2F0aW9uRW50cmllczogdHJ1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGlmIChvcHRpb25zLnNvdXJjZXMgPz8gdHJ1ZSkge1xuICAgICAgcG9tLmFkZFBsdWdpbihcIm9yZy5hcGFjaGUubWF2ZW4ucGx1Z2lucy9tYXZlbi1zb3VyY2UtcGx1Z2luQDMuMi4xXCIsIHtcbiAgICAgICAgZXhlY3V0aW9uczogW3sgaWQ6IFwiYXR0YWNoLXNvdXJjZXNcIiwgZ29hbHM6IFtcImphclwiXSB9XSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmphdmFkb2NzID8/IHRydWUpIHtcbiAgICAgIHBvbS5hZGRQbHVnaW4oXCJvcmcuYXBhY2hlLm1hdmVuLnBsdWdpbnMvbWF2ZW4tamF2YWRvYy1wbHVnaW5AMy4yLjBcIiwge1xuICAgICAgICBleGVjdXRpb25zOiBbeyBpZDogXCJhdHRhY2gtamF2YWRvY3NcIiwgZ29hbHM6IFtcImphclwiXSB9XSxcbiAgICAgICAgY29uZmlndXJhdGlvbjoge1xuICAgICAgICAgIGZhaWxPbkVycm9yOiBmYWxzZSxcbiAgICAgICAgICBzaG93OiBcInByb3RlY3RlZFwiLFxuICAgICAgICAgIHNvdXJjZUZpbGVFeGNsdWRlczogeyBleGNsdWRlOiBvcHRpb25zLmphdmFkb2NzRXhjbHVkZSB9LFxuICAgICAgICAgIGRldGVjdEphdmFBcGlMaW5rOiBmYWxzZSwgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9hLzYxODg0MjY3XG4gICAgICAgICAgYWRkaXRpb25hbEpPcHRpb25zOiB7XG4gICAgICAgICAgICBhZGRpdGlvbmFsSk9wdGlvbjogW1xuICAgICAgICAgICAgICBcIi1KLVhYOitUaWVyZWRDb21waWxhdGlvblwiLFxuICAgICAgICAgICAgICBcIi1KLVhYOlRpZXJlZFN0b3BBdExldmVsPTFcIixcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IGVudiA9IHtcbiAgICAgIE1BVkVOX09QVFM6IFwiLVhYOitUaWVyZWRDb21waWxhdGlvbiAtWFg6VGllcmVkU3RvcEF0TGV2ZWw9MVwiLFxuICAgIH07XG5cbiAgICB0aGlzLmRpc3RkaXIgPSBvcHRpb25zLmRpc3RkaXIgPz8gXCJkaXN0L2phdmFcIjtcblxuICAgIGZvciAoY29uc3QgW2ssIHZdIG9mIE9iamVjdC5lbnRyaWVzKGVudikpIHtcbiAgICAgIHRoaXMucHJvamVjdC5wYWNrYWdlVGFzay5lbnYoaywgdik7XG4gICAgfVxuICAgIHRoaXMucHJvamVjdC5wYWNrYWdlVGFzay5leGVjKGBta2RpciAtcCAke3RoaXMuZGlzdGRpcn1gKTtcbiAgICB0aGlzLnByb2plY3QucGFja2FnZVRhc2suZXhlYyhcbiAgICAgIGBtdm4gZGVwbG95IC1EPWFsdERlcGxveW1lbnRSZXBvc2l0b3J5PWxvY2FsOjpkZWZhdWx0OjpmaWxlOi8vLyRQV0QvJHt0aGlzLmRpc3RkaXJ9YCxcbiAgICApO1xuXG4gICAgcHJvamVjdC5naXRpZ25vcmUuZXhjbHVkZSh0aGlzLmRpc3RkaXIpO1xuICB9XG59XG4iXX0=
@@ -30,5 +30,5 @@ class MavenSample extends component_1.Component {
30
30
  }
31
31
  exports.MavenSample = MavenSample;
32
32
  _a = JSII_RTTI_SYMBOL_1;
33
- MavenSample[_a] = { fqn: "projen.java.MavenSample", version: "0.99.56" };
33
+ MavenSample[_a] = { fqn: "projen.java.MavenSample", version: "0.99.58" };
34
34
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF2ZW4tc2FtcGxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2phdmEvbWF2ZW4tc2FtcGxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQTRCO0FBQzVCLDRDQUF5QztBQUV6QyxnREFBMkM7QUFTM0M7O0dBRUc7QUFDSCxNQUFhLFdBQVksU0FBUSxxQkFBUztJQUN4QyxZQUFZLE9BQWdCLEVBQUUsT0FBMkI7UUFDdkQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWYsTUFBTSxHQUFHLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkMsSUFBSSx1QkFBUyxDQUFDLE9BQU8sRUFBRSxJQUFBLFdBQUksRUFBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLEdBQUcsQ0FBQyxFQUFFO1lBQzFELEtBQUssRUFBRTtnQkFDTCxXQUFXLEVBQUU7b0JBQ1gsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxPQUFPLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO29CQUMzRCxFQUFFO29CQUNGLHFCQUFxQjtvQkFDckIsa0RBQWtEO29CQUNsRCwwQ0FBMEM7b0JBQzFDLEtBQUs7b0JBQ0wsR0FBRztpQkFDSixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7YUFDYjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBbEJILGtDQW1CQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpvaW4gfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4uL3Byb2plY3RcIjtcbmltcG9ydCB7IFNhbXBsZURpciB9IGZyb20gXCIuLi9zYW1wbGUtZmlsZVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1hdmVuU2FtcGxlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBQcm9qZWN0IHJvb3QgamF2YSBwYWNrYWdlLlxuICAgKi9cbiAgcmVhZG9ubHkgcGFja2FnZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIEphdmEgY29kZSBzYW1wbGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBNYXZlblNhbXBsZSBleHRlbmRzIENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IE1hdmVuU2FtcGxlT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgY29uc3QgcGtnID0gb3B0aW9ucy5wYWNrYWdlLnNwbGl0KFwiLlwiKTtcbiAgICBuZXcgU2FtcGxlRGlyKHByb2plY3QsIGpvaW4oXCJzcmNcIiwgXCJtYWluXCIsIFwiamF2YVwiLCAuLi5wa2cpLCB7XG4gICAgICBmaWxlczoge1xuICAgICAgICBcIk1haW4uamF2YVwiOiBbXG4gICAgICAgICAgLi4uKG9wdGlvbnMucGFja2FnZSA/IFtgcGFja2FnZSAke29wdGlvbnMucGFja2FnZX07YF0gOiBbXSksXG4gICAgICAgICAgXCJcIixcbiAgICAgICAgICBcInB1YmxpYyBjbGFzcyBNYWluIHtcIixcbiAgICAgICAgICBcIiAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oZmluYWwgU3RyaW5nW10gYXJncykge1wiLFxuICAgICAgICAgICcgICAgU3lzdGVtLm91dC5wcmludGxuKFwiSGVsbG8sIHdvcmxkIVwiKTsnLFxuICAgICAgICAgIFwiICB9XCIsXG4gICAgICAgICAgXCJ9XCIsXG4gICAgICAgIF0uam9pbihcIlxcblwiKSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
package/lib/java/pom.js CHANGED
@@ -23,7 +23,7 @@ class UpdatePolicy {
23
23
  }
24
24
  exports.UpdatePolicy = UpdatePolicy;
25
25
  _a = JSII_RTTI_SYMBOL_1;
26
- UpdatePolicy[_a] = { fqn: "projen.java.UpdatePolicy", version: "0.99.56" };
26
+ UpdatePolicy[_a] = { fqn: "projen.java.UpdatePolicy", version: "0.99.58" };
27
27
  UpdatePolicy.ALWAYS = "always";
28
28
  UpdatePolicy.DAILY = "daily";
29
29
  UpdatePolicy.NEVER = "never";
@@ -181,7 +181,7 @@ class Pom extends component_1.Component {
181
181
  }
182
182
  exports.Pom = Pom;
183
183
  _b = JSII_RTTI_SYMBOL_1;
184
- Pom[_b] = { fqn: "projen.java.Pom", version: "0.99.56" };
184
+ Pom[_b] = { fqn: "projen.java.Pom", version: "0.99.58" };
185
185
  /**
186
186
  * Parses maven groupId and artifactId from a dependency name.
187
187
  *
@@ -123,7 +123,7 @@ class Projenrc extends projenrc_1.ProjenrcFile {
123
123
  }
124
124
  exports.Projenrc = Projenrc;
125
125
  _a = JSII_RTTI_SYMBOL_1;
126
- Projenrc[_a] = { fqn: "projen.java.Projenrc", version: "0.99.56" };
126
+ Projenrc[_a] = { fqn: "projen.java.Projenrc", version: "0.99.58" };
127
127
  function generateJavaOptionNames(options, jsiiManifest) {
128
128
  const optionFqns = {};
129
129
  for (const option of options) {
@@ -194,5 +194,5 @@ class Biome extends component_1.Component {
194
194
  }
195
195
  exports.Biome = Biome;
196
196
  _a = JSII_RTTI_SYMBOL_1;
197
- Biome[_a] = { fqn: "projen.javascript.Biome", version: "0.99.56" };
197
+ Biome[_a] = { fqn: "projen.javascript.Biome", version: "0.99.58" };
198
198
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlvbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvamF2YXNjcmlwdC9iaW9tZS9iaW9tZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLGtDQUFrQztBQUNsQyxxREFBNEM7QUFDNUMsaURBVXdCO0FBQ3hCLCtDQUE0QztBQUU1QyxxQ0FBc0M7QUFHdEMscUNBQStEO0FBQy9ELGtDQUEyQztBQUUzQzs7OztHQUlHO0FBQ0gsTUFBTSxjQUFjLEdBQThDO0lBQ2hFLEdBQUcsRUFBRTtRQUNILFVBQVUsRUFBRSw0QkFBYSxDQUFDLEdBQUc7UUFDN0IsT0FBTyxFQUFFLElBQUk7UUFDYixhQUFhLEVBQUUsSUFBSTtLQUNwQjtJQUNELEtBQUssRUFBRTtRQUNMLGFBQWEsRUFBRSxLQUFLO0tBQ3JCO0NBQ0YsQ0FBQztBQUVGOzs7O0dBSUc7QUFDSCxNQUFNLGNBQWMsR0FBdUM7SUFDekQsTUFBTSxFQUFFO1FBQ04sT0FBTyxFQUFFLElBQUk7UUFDYixLQUFLLEVBQUU7WUFDTCxXQUFXLEVBQUUsSUFBSTtTQUNsQjtLQUNGO0NBQ0YsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxpQkFBaUIsR0FDckI7SUFDRSxTQUFTLEVBQUU7UUFDVCxPQUFPLEVBQUUsSUFBSTtRQUNiLFdBQVcsRUFBRSwwQkFBVyxDQUFDLEdBQUc7S0FDN0I7SUFDRCxVQUFVLEVBQUU7UUFDVixTQUFTLEVBQUU7WUFDVCxVQUFVLEVBQUUseUJBQVUsQ0FBQyxNQUFNO1NBQzlCO0tBQ0Y7Q0FDRixDQUFDO0FBRUo7O0dBRUc7QUFDSCxNQUFNLGNBQWMsR0FBdUM7SUFDekQsTUFBTSxFQUFFO1FBQ04sT0FBTyxFQUFFLElBQUk7UUFDYixPQUFPLEVBQUU7WUFDUCxXQUFXLEVBQUUsSUFBSTtTQUNsQjtLQUNGO0NBQ0YsQ0FBQztBQXFERjs7R0FFRztBQUNILE1BQWEsS0FBTSxTQUFRLHFCQUFTO0lBQzNCLE1BQU0sQ0FBQyxFQUFFLENBQUMsT0FBZ0I7UUFDL0IsTUFBTSxPQUFPLEdBQUcsQ0FBQyxDQUFZLEVBQWMsRUFBRSxDQUFDLENBQUMsWUFBWSxLQUFLLENBQUM7UUFDakUsT0FBTyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBZ0JELFlBQ0UsT0FBb0IsRUFDWixVQUF3QixFQUFFO1FBRWxDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUZQLFlBQU8sR0FBUCxPQUFPLENBQW1CO1FBZG5CLGlCQUFZLEdBQzNCLDhDQUE4QyxDQUFDO1FBaUIvQyxNQUFNLE9BQU8sR0FBRyxnQkFBZ0IsQ0FBQztRQUNqQyxPQUFPLENBQUMsVUFBVSxDQUFDLEdBQUcsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQztRQUU1RCxNQUFNLGFBQWEsR0FBdUI7WUFDeEMsR0FBRyxjQUFjO1lBQ2pCLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ25ELEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDekQsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDcEQsQ0FBQztRQUVGLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxHQUFHLENBQUM7WUFDM0IsR0FBRyxJQUFBLDJCQUFTLEVBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxLQUFLLEVBQUUsUUFBUSxJQUFJLEVBQUUsQ0FBQztZQUN4RCxHQUFHLElBQUEsMkJBQVMsRUFBQyxhQUFhLENBQUMsS0FBSyxFQUFFLFFBQVEsSUFBSSxFQUFFLENBQUM7U0FDbEQsQ0FBQyxDQUFDO1FBRUgsd0NBQXdDO1FBQ3hDLE1BQU0sMEJBQTBCLEdBQUcsR0FBRyxFQUFFO1lBQ3RDLElBQUksT0FBTyxDQUFDLG9CQUFvQixLQUFLLEtBQUssRUFBRSxDQUFDO2dCQUMzQyxPQUFPLEVBQUUsQ0FBQztZQUNaLENBQUM7WUFFRCxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUs7aUJBQ3RDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDO2lCQUM5QyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7WUFFbEMsT0FBTyxjQUFjLENBQUM7UUFDeEIsQ0FBQyxDQUFDO1FBRUYsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUEsZ0JBQVMsRUFDakM7WUFDRSxJQUFBLHdDQUF5QixFQUFDLElBQUEsMkJBQVMsRUFBQyxhQUFhLENBQUMsQ0FBQztZQUNuRCxJQUFBLHdDQUF5QixFQUFDLElBQUEsMkJBQVMsRUFBQyxPQUFPLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQy9EO2dCQUNFLE9BQU8sRUFBRSxHQUFHLEVBQUU7b0JBQ1osTUFBTSxjQUFjLEdBQUcsSUFBQSx1QkFBZ0IsRUFDckMsR0FBRyxPQUFPLDRCQUE0QixFQUN0QyxFQUFFLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FDakMsQ0FBQztvQkFDRjtvQkFDRSxZQUFZO29CQUNaLENBQUMsY0FBYzt3QkFDZiw2QkFBNkI7d0JBQzdCLENBQUMsSUFBSTs2QkFDRixPQUFPLENBQUMsY0FBYyxDQUFDOzZCQUN2QixVQUFVLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQ2hELENBQUM7d0JBQ0QsT0FBTyxnREFBZ0QsQ0FBQztvQkFDMUQsQ0FBQztvQkFFRCxPQUFPLElBQUEsNkJBQXNCLEVBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsY0FBYyxDQUFDLENBQ25ELENBQUM7Z0JBQ0osQ0FBQztnQkFDRCxLQUFLLEVBQUU7b0JBQ0wsUUFBUSxFQUFFLEdBQUcsRUFBRTt3QkFDYixNQUFNLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzt3QkFDaEQsTUFBTSxpQkFBaUIsR0FBRywwQkFBMEIsRUFBRSxDQUFDO3dCQUN2RCxrQ0FBa0M7d0JBQ2xDLE9BQU8sQ0FBQyxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxRQUFRLEVBQUUsR0FBRyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDM0QsQ0FBQztpQkFDRjthQUNGO1NBQ0YsRUFDRCxFQUFFLFdBQVcsRUFBRSxPQUFPLENBQUMsMEJBQTBCLElBQUksSUFBSSxFQUFFLENBQzVELENBQUM7UUFFRixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFNLFNBQVEsZUFBUTtZQUNyQyxJQUFXLE1BQU07Z0JBQ2YsT0FBTyw0QkFBNEIsS0FBSyxDQUFDLE1BQU0sSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3hFLENBQUM7U0FDRixDQUFDLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUN0QixHQUFHLEVBQUUsSUFBSSxDQUFDLGtCQUFrQjtZQUM1QixhQUFhLEVBQUUsSUFBSTtZQUNuQixNQUFNLEVBQUUsSUFBSTtZQUNaLFFBQVEsRUFBRSxLQUFLLEVBQUUsNkNBQTZDO1NBQy9ELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7UUFDeEMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxjQUFjLENBQUMsT0FBZTtRQUNuQyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLFdBQVcsQ0FBQyxRQUF5QjtRQUMxQyxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3pDLENBQUM7UUFFRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFBLHFDQUFzQixFQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVEOzs7Ozs7Ozs7Ozs7Ozs7T0FlRztJQUNJLGlCQUFpQixDQUFDLEtBQVk7UUFDbkMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxLQUFLLEdBQUcsSUFBQSwyQkFBWSxFQUNqRCxJQUFBLGdCQUFTLEVBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsRUFBRTtZQUN2RCxXQUFXLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsSUFBSSxJQUFJO1lBQzVELFdBQVcsRUFBRSxJQUFJO1NBQ2xCLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVPLG9CQUFvQjtRQUMxQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtZQUNuQyxXQUFXLEVBQUUsaUNBQWlDO1lBQzlDLEtBQUssRUFBRTtnQkFDTDtvQkFDRSxJQUFJLEVBQUUsSUFBSSxDQUFDLFlBQVk7b0JBQ3ZCLFdBQVcsRUFBRSxJQUFJO2lCQUNsQjthQUNGO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUF0S0gsc0JBdUtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwibm9kZTpwYXRoXCI7XG5pbXBvcnQgeyBkZWVwQ2xvbmUgfSBmcm9tIFwiZmFzdC1qc29uLXBhdGNoXCI7XG5pbXBvcnQge1xuICBJbmRlbnRTdHlsZSxcbiAgUXVvdGVTdHlsZSxcbiAgdG9Kc29uX0Jpb21lQ29uZmlndXJhdGlvbixcbiAgdG9Kc29uX092ZXJyaWRlUGF0dGVybixcbiAgdG9Kc29uX1J1bGVzLFxuICBWY3NDbGllbnRLaW5kLFxuICB0eXBlIEJpb21lQ29uZmlndXJhdGlvbixcbiAgdHlwZSBPdmVycmlkZVBhdHRlcm4sXG4gIHR5cGUgUnVsZXMsXG59IGZyb20gXCIuL2Jpb21lLWNvbmZpZ1wiO1xuaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL2NvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBOb2RlUHJvamVjdCB9IGZyb20gXCIuLi8uLi9qYXZhc2NyaXB0L25vZGUtcHJvamVjdFwiO1xuaW1wb3J0IHsgSnNvbkZpbGUgfSBmcm9tIFwiLi4vLi4vanNvblwiO1xuaW1wb3J0IHR5cGUgeyBQcm9qZWN0IH0gZnJvbSBcIi4uLy4uL3Byb2plY3RcIjtcbmltcG9ydCB0eXBlIHsgVGFzayB9IGZyb20gXCIuLi8uLi90YXNrXCI7XG5pbXBvcnQgeyBkZWVwTWVyZ2UsIG5vcm1hbGl6ZVBlcnNpc3RlZFBhdGggfSBmcm9tIFwiLi4vLi4vdXRpbFwiO1xuaW1wb3J0IHsgdHJ5UmVzb2x2ZU1vZHVsZSB9IGZyb20gXCIuLi91dGlsXCI7XG5cbi8qKlxuICogRW5hYmxpbmcgVkNTIGNvbmZpZ3VyYXRpb24gYnkgZGVmYXVsdC5cbiAqXG4gKiBOb3RlIHRoYXQgdGhpcyBkaWZmZXJzIGZyb20gYGJpb21lIGluaXRgLCBhcyBwcm9qZW4gY2FuIGJlIHByZXN1bWVkIHRvIHVzZSB2ZXJzaW9uIGNvbnRyb2xcbiAqL1xuY29uc3QgREVGQVVMVF9DT05GSUc6IFBpY2s8QmlvbWVDb25maWd1cmF0aW9uLCBcInZjc1wiIHwgXCJmaWxlc1wiPiA9IHtcbiAgdmNzOiB7XG4gICAgY2xpZW50S2luZDogVmNzQ2xpZW50S2luZC5HSVQsXG4gICAgZW5hYmxlZDogdHJ1ZSxcbiAgICB1c2VJZ25vcmVGaWxlOiB0cnVlLFxuICB9LFxuICBmaWxlczoge1xuICAgIGlnbm9yZVVua25vd246IGZhbHNlLFxuICB9LFxufTtcblxuLyoqXG4gKiBEZWZhdWx0IGxpbnRpbmcgY29uZmlndXJhdGlvbiBpZiBsaW50ZXIgaXMgZW5hYmxlZC5cbiAqXG4gKiBJZ25vcmVzIGJ5IGRlZmF1bHQgZm9sbG93aW5nIHBhdHRlcm5zOiAnKi5qcycsICcqLmQudHMnLCAnbm9kZV9tb2R1bGVzLycsICcqLmdlbmVyYXRlZC50cycsICdjb3ZlcmFnZScuXG4gKi9cbmNvbnN0IERFRkFVTFRfTElOVEVSOiBQaWNrPEJpb21lQ29uZmlndXJhdGlvbiwgXCJsaW50ZXJcIj4gPSB7XG4gIGxpbnRlcjoge1xuICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgcnVsZXM6IHtcbiAgICAgIHJlY29tbWVuZGVkOiB0cnVlLFxuICAgIH0sXG4gIH0sXG59O1xuXG4vKipcbiAqIERlZmF1bHQgZm9ybWF0dGluZyBjb25maWd1cmF0aW9uIGlmIGZvcm1hdHRlciBpcyBlbmFibGVkLlxuICovXG5jb25zdCBERUZBVUxUX0ZPUk1BVFRFUjogUGljazxCaW9tZUNvbmZpZ3VyYXRpb24sIFwiZm9ybWF0dGVyXCIgfCBcImphdmFzY3JpcHRcIj4gPVxuICB7XG4gICAgZm9ybWF0dGVyOiB7XG4gICAgICBlbmFibGVkOiB0cnVlLFxuICAgICAgaW5kZW50U3R5bGU6IEluZGVudFN0eWxlLlRBQixcbiAgICB9LFxuICAgIGphdmFzY3JpcHQ6IHtcbiAgICAgIGZvcm1hdHRlcjoge1xuICAgICAgICBxdW90ZVN0eWxlOiBRdW90ZVN0eWxlLkRPVUJMRSxcbiAgICAgIH0sXG4gICAgfSxcbiAgfTtcblxuLyoqXG4gKiBEZWZhdWx0IGNvZGUgYXNzaXN0IGFjdGlvbnNcbiAqL1xuY29uc3QgREVGQVVMVF9BU1NJU1Q6IFBpY2s8QmlvbWVDb25maWd1cmF0aW9uLCBcImFzc2lzdFwiPiA9IHtcbiAgYXNzaXN0OiB7XG4gICAgZW5hYmxlZDogdHJ1ZSxcbiAgICBhY3Rpb25zOiB7XG4gICAgICByZWNvbW1lbmRlZDogdHJ1ZSxcbiAgICB9LFxuICB9LFxufTtcblxuZXhwb3J0IGludGVyZmFjZSBCaW9tZU9wdGlvbnMge1xuICAvKipcbiAgICogVmVyc2lvbiBvZiBCaW9tZSB0byB1c2VcbiAgICpcbiAgICogQGRlZmF1bHQgXCJeMlwiXG4gICAqL1xuICByZWFkb25seSB2ZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogRW5hYmxlIGxpbnRpbmcgd2l0aCByZWNvbW1lbmRlZCBydWxlcy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgbGludGVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZSBjb2RlIGZvcm1hdHRlciB3aXRoIHJlY29tbWVuZGVkIHNldHRpbmdzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBmb3JtYXR0ZXI/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlIGNvZGUgYXNzaXN0IHdpdGggcmVjb21tZW5kZWQgYWN0aW9ucy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgYXNzaXN0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFNob3VsZCBhcnJheXMgYmUgbWVyZ2VkIG9yIG92ZXJ3cml0dGVuIHdoZW4gY3JlYXRpbmcgQmlvbWUgY29uZmlndXJhdGlvblxuICAgKlxuICAgKiBCeSBkZWZhdWx0IGFycmF5cyBhcmUgbWVyZ2VkIGFuZCBkdXBsaWNhdGUgdmFsdWVzIGFyZSByZW1vdmVkXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IG1lcmdlQXJyYXlzSW5Db25maWd1cmF0aW9uPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgaWdub3JlIGFsbCBnZW5lcmF0ZWQgZmlsZXMuXG4gICAqXG4gICAqIFRoaXMgcHJldmVudHMgQmlvbWUgZnJvbSB0cnlpbmcgdG8gZm9ybWF0IG9yIGxpbnQgZmlsZXMgdGhhdCBhcmUgbWFya2VkIGFzIGdlbmVyYXRlZCxcbiAgICogd2hpY2ggd291bGQgZmFpbCBzaW5jZSBnZW5lcmF0ZWQgZmlsZXMgYXJlIHR5cGljYWxseSByZWFkLW9ubHkuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGlnbm9yZUdlbmVyYXRlZEZpbGVzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEZ1bGwgQmlvbWUgY29uZmlndXJhdGlvbi5cbiAgICpcbiAgICogVGhpcyBjb25maWd1cmF0aW9uIGRpY3RhdGVzIHRoZSBmaW5hbCBvdXRjb21lIGlmIHZhbHVlIGlzIHNldC5cbiAgICogRm9yIGV4YW1wbGUsIGlmIHRoZSBsaW50ZXIgaXMgZGlzYWJsZWQgYXQgdGhlIHRvcC1sZXZlbCwgaXQgY2FuIGJlIGVuYWJsZWQgd2l0aCBgYmlvbWVDb25maWcubGludGVyLmVuYWJsZWRgLlxuICAgKi9cbiAgcmVhZG9ubHkgYmlvbWVDb25maWc/OiBCaW9tZUNvbmZpZ3VyYXRpb247XG59XG5cbi8qKlxuICogQmlvbWUgY29tcG9uZW50LlxuICovXG5leHBvcnQgY2xhc3MgQmlvbWUgZXh0ZW5kcyBDb21wb25lbnQge1xuICBwdWJsaWMgc3RhdGljIG9mKHByb2plY3Q6IFByb2plY3QpOiBCaW9tZSB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3QgaXNCaW9tZSA9IChjOiBDb21wb25lbnQpOiBjIGlzIEJpb21lID0+IGMgaW5zdGFuY2VvZiBCaW9tZTtcbiAgICByZXR1cm4gcHJvamVjdC5jb21wb25lbnRzLmZpbmQoaXNCaW9tZSk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IGJpb21lQ29uZmlndXJhdGlvbjogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgcHJpdmF0ZSByZWFkb25seSBfZmlsZVBhdHRlcm5zOiBTZXQ8c3RyaW5nPjtcbiAgcHJpdmF0ZSByZWFkb25seSBiaW9tZUNvbW1hbmQgPVxuICAgIFwiYmlvbWUgY2hlY2sgLS1uby1lcnJvcnMtb24tdW5tYXRjaGVkIC0td3JpdGVcIjtcblxuICAvKipcbiAgICogQmlvbWUgdGFzay5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB0YXNrOiBUYXNrO1xuICAvKipcbiAgICogQmlvbWUgY29uZmlndXJhdGlvbiBmaWxlIGNvbnRlbnRcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBmaWxlOiBKc29uRmlsZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm9qZWN0OiBOb2RlUHJvamVjdCxcbiAgICBwcml2YXRlIG9wdGlvbnM6IEJpb21lT3B0aW9ucyA9IHt9LFxuICApIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIGNvbnN0IGJpb21lanMgPSBgQGJpb21lanMvYmlvbWVgO1xuICAgIHByb2plY3QuYWRkRGV2RGVwcyhgJHtiaW9tZWpzfUAke29wdGlvbnMudmVyc2lvbiA/PyBcIl4yXCJ9YCk7XG5cbiAgICBjb25zdCBkZWZhdWx0Q29uZmlnOiBCaW9tZUNvbmZpZ3VyYXRpb24gPSB7XG4gICAgICAuLi5ERUZBVUxUX0NPTkZJRyxcbiAgICAgIC4uLigob3B0aW9ucy5saW50ZXIgPz8gdHJ1ZSkgPyBERUZBVUxUX0xJTlRFUiA6IHt9KSxcbiAgICAgIC4uLigob3B0aW9ucy5mb3JtYXR0ZXIgPz8gdHJ1ZSkgPyBERUZBVUxUX0ZPUk1BVFRFUiA6IHt9KSxcbiAgICAgIC4uLigob3B0aW9ucy5hc3Npc3QgPz8gdHJ1ZSkgPyBERUZBVUxUX0FTU0lTVCA6IHt9KSxcbiAgICB9O1xuXG4gICAgdGhpcy5fZmlsZVBhdHRlcm5zID0gbmV3IFNldChbXG4gICAgICAuLi5kZWVwQ2xvbmUob3B0aW9ucy5iaW9tZUNvbmZpZz8uZmlsZXM/LmluY2x1ZGVzID8/IFtdKSxcbiAgICAgIC4uLmRlZXBDbG9uZShkZWZhdWx0Q29uZmlnLmZpbGVzPy5pbmNsdWRlcyA/PyBbXSksXG4gICAgXSk7XG5cbiAgICAvLyBHZXQgZ2VuZXJhdGVkIGZpbGUgcGF0dGVybnMgdG8gaWdub3JlXG4gICAgY29uc3QgZ2V0R2VuZXJhdGVkSWdub3JlUGF0dGVybnMgPSAoKSA9PiB7XG4gICAgICBpZiAob3B0aW9ucy5pZ25vcmVHZW5lcmF0ZWRGaWxlcyA9PT0gZmFsc2UpIHtcbiAgICAgICAgcmV0dXJuIFtdO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBnZW5lcmF0ZWRGaWxlcyA9IHRoaXMucHJvamVjdC5maWxlc1xuICAgICAgICAuZmlsdGVyKChmaWxlKSA9PiBmaWxlLnJlYWRvbmx5ICYmIGZpbGUubWFya2VyKVxuICAgICAgICAubWFwKChmaWxlKSA9PiBgISR7ZmlsZS5wYXRofWApO1xuXG4gICAgICByZXR1cm4gZ2VuZXJhdGVkRmlsZXM7XG4gICAgfTtcblxuICAgIHRoaXMuYmlvbWVDb25maWd1cmF0aW9uID0gZGVlcE1lcmdlKFxuICAgICAgW1xuICAgICAgICB0b0pzb25fQmlvbWVDb25maWd1cmF0aW9uKGRlZXBDbG9uZShkZWZhdWx0Q29uZmlnKSksXG4gICAgICAgIHRvSnNvbl9CaW9tZUNvbmZpZ3VyYXRpb24oZGVlcENsb25lKG9wdGlvbnMuYmlvbWVDb25maWcgPz8ge30pKSxcbiAgICAgICAge1xuICAgICAgICAgICRzY2hlbWE6ICgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc29sdmVkU2NoZW1hID0gdHJ5UmVzb2x2ZU1vZHVsZShcbiAgICAgICAgICAgICAgYCR7YmlvbWVqc30vY29uZmlndXJhdGlvbl9zY2hlbWEuanNvbmAsXG4gICAgICAgICAgICAgIHsgcGF0aHM6IFt0aGlzLnByb2plY3Qub3V0ZGlyXSB9LFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgLy8gbm90IGZvdW5kXG4gICAgICAgICAgICAgICFyZXNvbHZlZFNjaGVtYSB8fFxuICAgICAgICAgICAgICAvLyBub3Qgd2l0aGluIHRoZSBwcm9qZWN0IGRpclxuICAgICAgICAgICAgICAhcGF0aFxuICAgICAgICAgICAgICAgIC5yZXNvbHZlKHJlc29sdmVkU2NoZW1hKVxuICAgICAgICAgICAgICAgIC5zdGFydHNXaXRoKHBhdGgucmVzb2x2ZSh0aGlzLnByb2plY3Qub3V0ZGlyKSlcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICByZXR1cm4gXCJodHRwczovL2Jpb21lanMuZGV2L3NjaGVtYXMvbGF0ZXN0L3NjaGVtYS5qc29uXCI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBub3JtYWxpemVQZXJzaXN0ZWRQYXRoKFxuICAgICAgICAgICAgICBwYXRoLnJlbGF0aXZlKHRoaXMucHJvamVjdC5vdXRkaXIsIHJlc29sdmVkU2NoZW1hKSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBmaWxlczoge1xuICAgICAgICAgICAgaW5jbHVkZXM6ICgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgcGF0dGVybnMgPSBBcnJheS5mcm9tKHRoaXMuX2ZpbGVQYXR0ZXJucyk7XG4gICAgICAgICAgICAgIGNvbnN0IGdlbmVyYXRlZFBhdHRlcm5zID0gZ2V0R2VuZXJhdGVkSWdub3JlUGF0dGVybnMoKTtcbiAgICAgICAgICAgICAgLy8gVXNlIFNldCB0byBkZWR1cGxpY2F0ZSBwYXR0ZXJuc1xuICAgICAgICAgICAgICByZXR1cm4gWy4uLm5ldyBTZXQoWy4uLnBhdHRlcm5zLCAuLi5nZW5lcmF0ZWRQYXR0ZXJuc10pXTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgICB7IG1lcmdlQXJyYXlzOiBvcHRpb25zLm1lcmdlQXJyYXlzSW5Db25maWd1cmF0aW9uID8/IHRydWUgfSxcbiAgICApO1xuXG4gICAgdGhpcy5maWxlID0gbmV3IChjbGFzcyBleHRlbmRzIEpzb25GaWxlIHtcbiAgICAgIHB1YmxpYyBnZXQgbWFya2VyKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiBgYmlvbWUtaWdub3JlLWFsbCBmb3JtYXQ6ICR7c3VwZXIubWFya2VyID8/IFwiZ2VuZXJhdGVkIGZpbGVcIn1gO1xuICAgICAgfVxuICAgIH0pKHRoaXMsIFwiYmlvbWUuanNvbmNcIiwge1xuICAgICAgb2JqOiB0aGlzLmJpb21lQ29uZmlndXJhdGlvbixcbiAgICAgIGFsbG93Q29tbWVudHM6IHRydWUsXG4gICAgICBtYXJrZXI6IHRydWUsXG4gICAgICByZWFkb25seTogZmFsc2UsIC8vIGJpb21lIHdpbGwgYWx3YXlzIHJlLXdyaXRlIHRoZSBjb25maWcgZmlsZVxuICAgIH0pO1xuXG4gICAgdGhpcy50YXNrID0gdGhpcy5jcmVhdGVMb2NhbEJpb21lVGFzaygpO1xuICAgIHByb2plY3QudGVzdFRhc2suc3Bhd24odGhpcy50YXNrKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBmaWxlIHBhdHRlcm4gdG8gYmlvbWUuXG4gICAqXG4gICAqIFVzZSAhIG9yICEhIHRvIGlnbm9yZSBhIGZpbGUgcGF0dGVybi5cbiAgICogQHBhcmFtIHBhdHRlcm4gQmlvbWUgZ2xvYiBwYXR0ZXJuXG4gICAqIEBzZWUgaHR0cHM6Ly9iaW9tZWpzLmRldi9ndWlkZXMvY29uZmlndXJlLWJpb21lLyNjb250cm9sLWZpbGVzLXZpYS1jb25maWd1cmF0aW9uXG4gICAqL1xuICBwdWJsaWMgYWRkRmlsZVBhdHRlcm4ocGF0dGVybjogc3RyaW5nKSB7XG4gICAgdGhpcy5fZmlsZVBhdHRlcm5zLmFkZChwYXR0ZXJuKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBiaW9tZSBvdmVycmlkZSB0byBzZXQgcnVsZXMgZm9yIGEgc3BlY2lmaWMgZmlsZSBwYXR0ZXJuLlxuICAgKiBAcGFyYW0gb3ZlcnJpZGUgT3ZlcnJpZGUgb2JqZWN0XG4gICAqIEBzZWUgaHR0cHM6Ly9iaW9tZWpzLmRldi9yZWZlcmVuY2UvY29uZmlndXJhdGlvbi8jb3ZlcnJpZGVzXG4gICAqL1xuICBwdWJsaWMgYWRkT3ZlcnJpZGUob3ZlcnJpZGU6IE92ZXJyaWRlUGF0dGVybikge1xuICAgIGlmICghdGhpcy5iaW9tZUNvbmZpZ3VyYXRpb24ub3ZlcnJpZGVzKSB7XG4gICAgICB0aGlzLmJpb21lQ29uZmlndXJhdGlvbi5vdmVycmlkZXMgPSBbXTtcbiAgICB9XG5cbiAgICB0aGlzLmJpb21lQ29uZmlndXJhdGlvbi5vdmVycmlkZXMucHVzaCh0b0pzb25fT3ZlcnJpZGVQYXR0ZXJuKG92ZXJyaWRlKSk7XG4gIH1cblxuICAvKipcbiAgICogRXhwYW5kIHRoZSBsaW50aW5nIHJ1bGVzIGFwcGxpZWQuXG4gICAqXG4gICAqIFVzZSBgdW5kZWZpbmVkYCB0byByZW1vdmUgdGhlIHJ1bGUgb3IgZ3JvdXAuXG4gICAqXG4gICAqIEBwYXJhbSBydWxlcyBSdWxlcyB0byBhcHBseS5cbiAgICogQHNlZSBodHRwczovL2Jpb21lanMuZGV2L3JlZmVyZW5jZS9jb25maWd1cmF0aW9uLyNsaW50ZXJydWxlc2dyb3VwXG4gICAqIEBleGFtcGxlXG4gICAqIGJpb21lLmV4cGFuZExpbnRpbmdSdWxlcyh7XG4gICAqICAgc3R5bGU6IHVuZGVmaW5lZCxcbiAgICogICBzdXNwaWNpb3VzOiB7XG4gICAqICAgICBub0V4cGxpY2l0QW55OiB1bmRlZmluZWQsXG4gICAqICAgICBub0R1cGxpY2F0ZUNhc2U6IFwiaW5mb1wiLFxuICAgKiAgIH1cbiAgICogfSlcbiAgICovXG4gIHB1YmxpYyBleHBhbmRMaW50ZXJSdWxlcyhydWxlczogUnVsZXMpIHtcbiAgICB0aGlzLmJpb21lQ29uZmlndXJhdGlvbi5saW50ZXIucnVsZXMgPSB0b0pzb25fUnVsZXMoXG4gICAgICBkZWVwTWVyZ2UoW3RoaXMuYmlvbWVDb25maWd1cmF0aW9uLmxpbnRlci5ydWxlcywgcnVsZXNdLCB7XG4gICAgICAgIG1lcmdlQXJyYXlzOiB0aGlzLm9wdGlvbnMubWVyZ2VBcnJheXNJbkNvbmZpZ3VyYXRpb24gPz8gdHJ1ZSxcbiAgICAgICAgZGVzdHJ1Y3RpdmU6IHRydWUsXG4gICAgICB9KSxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVMb2NhbEJpb21lVGFzaygpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9qZWN0LmFkZFRhc2soXCJiaW9tZVwiLCB7XG4gICAgICBkZXNjcmlwdGlvbjogXCJSdW5zIEJpb21lIGFnYWluc3QgdGhlIGNvZGViYXNlXCIsXG4gICAgICBzdGVwczogW1xuICAgICAgICB7XG4gICAgICAgICAgZXhlYzogdGhpcy5iaW9tZUNvbW1hbmQsXG4gICAgICAgICAgcmVjZWl2ZUFyZ3M6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -184,7 +184,7 @@ class Bundler extends component_1.Component {
184
184
  }
185
185
  exports.Bundler = Bundler;
186
186
  _a = JSII_RTTI_SYMBOL_1;
187
- Bundler[_a] = { fqn: "projen.javascript.Bundler", version: "0.99.56" };
187
+ Bundler[_a] = { fqn: "projen.javascript.Bundler", version: "0.99.58" };
188
188
  /**
189
189
  * Options for BundlerOptions.runBundleTask
190
190
  */
@@ -370,7 +370,7 @@ class Eslint extends component_1.Component {
370
370
  }
371
371
  exports.Eslint = Eslint;
372
372
  _a = JSII_RTTI_SYMBOL_1;
373
- Eslint[_a] = { fqn: "projen.javascript.Eslint", version: "0.99.56" };
373
+ Eslint[_a] = { fqn: "projen.javascript.Eslint", version: "0.99.58" };
374
374
  /**
375
375
  * A compare protocol tp sort the extends array in eslint config using known ESLint best practices.
376
376
  *