projen 0.99.80 → 0.100.1

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 (225) hide show
  1. package/.jsii +1719 -3687
  2. package/BREAKING_CHANGES.md +855 -0
  3. package/lib/ai-instructions.d.ts +0 -1
  4. package/lib/ai-instructions.js +6 -12
  5. package/lib/awscdk/auto-discover.js +7 -14
  6. package/lib/awscdk/awscdk-app-java.d.ts +0 -7
  7. package/lib/awscdk/awscdk-app-java.js +28 -21
  8. package/lib/awscdk/awscdk-app-py.d.ts +0 -12
  9. package/lib/awscdk/awscdk-app-py.js +27 -24
  10. package/lib/awscdk/awscdk-app-ts.d.ts +0 -5
  11. package/lib/awscdk/awscdk-app-ts.js +57 -31
  12. package/lib/awscdk/awscdk-construct.d.ts +0 -26
  13. package/lib/awscdk/awscdk-construct.js +4 -44
  14. package/lib/awscdk/awscdk-deps-java.js +2 -6
  15. package/lib/awscdk/awscdk-deps-js.js +2 -7
  16. package/lib/awscdk/awscdk-deps-py.js +2 -7
  17. package/lib/awscdk/awscdk-deps.d.ts +1 -90
  18. package/lib/awscdk/awscdk-deps.js +68 -114
  19. package/lib/awscdk/cdk-config.d.ts +0 -21
  20. package/lib/awscdk/cdk-config.js +44 -51
  21. package/lib/awscdk/cdk-tasks.js +26 -4
  22. package/lib/awscdk/integration-test.js +10 -15
  23. package/lib/awscdk/internal.js +5 -2
  24. package/lib/awscdk/lambda-extension.js +4 -16
  25. package/lib/awscdk/lambda-function.d.ts +0 -10
  26. package/lib/awscdk/lambda-function.js +88 -78
  27. package/lib/awscdk/private/feature-flags-v2.const.d.ts +1 -1
  28. package/lib/awscdk/private/feature-flags-v2.const.js +2 -2
  29. package/lib/build/build-workflow.js +51 -6
  30. package/lib/builtin-example.task.d.ts +1 -0
  31. package/lib/builtin-example.task.js +2 -1
  32. package/lib/cdk/auto-discover-base.js +43 -8
  33. package/lib/cdk/construct-lib.js +2 -4
  34. package/lib/cdk/integration-test-base.js +26 -4
  35. package/lib/cdk/jsii-build.d.ts +0 -1
  36. package/lib/cdk/jsii-build.js +4 -4
  37. package/lib/cdk/jsii-docgen.js +2 -4
  38. package/lib/cdk/jsii-project.d.ts +12 -9
  39. package/lib/cdk/jsii-project.js +22 -7
  40. package/lib/cdk8s/auto-discover.js +3 -6
  41. package/lib/cdk8s/cdk8s-app-py.js +7 -4
  42. package/lib/cdk8s/cdk8s-app-ts.js +43 -6
  43. package/lib/cdk8s/cdk8s-construct.js +44 -5
  44. package/lib/cdk8s/cdk8s-deps-py.js +2 -4
  45. package/lib/cdk8s/cdk8s-deps.js +50 -5
  46. package/lib/cdk8s/integration-test.js +2 -4
  47. package/lib/cdktf/cdktf-construct.js +36 -5
  48. package/lib/circleci/circleci.js +66 -44
  49. package/lib/cleanup.js +38 -5
  50. package/lib/cli/cmds/new.js +51 -20
  51. package/lib/cli/cmds/run-task.js +107 -0
  52. package/lib/cli/{synth.d.ts → cmds/synth.d.ts} +0 -5
  53. package/lib/cli/cmds/synth.js +90 -0
  54. package/lib/cli/index.js +47 -22
  55. package/lib/cli/macros.js +35 -2
  56. package/lib/cli/task-runtime.d.ts +75 -0
  57. package/lib/cli/task-runtime.js +482 -0
  58. package/lib/cli/util.js +37 -4
  59. package/lib/common.d.ts +9 -0
  60. package/lib/common.js +11 -2
  61. package/lib/component.js +3 -4
  62. package/lib/dependencies.js +43 -12
  63. package/lib/dev-env.js +10 -4
  64. package/lib/docker-compose/docker-compose-service.js +54 -4
  65. package/lib/docker-compose/docker-compose.js +8 -4
  66. package/lib/file.js +60 -5
  67. package/lib/gitattributes.js +7 -5
  68. package/lib/github/actions-provider.js +3 -7
  69. package/lib/github/auto-approve.js +3 -4
  70. package/lib/github/auto-merge.js +3 -5
  71. package/lib/github/auto-queue.js +36 -5
  72. package/lib/github/dependabot.js +13 -4
  73. package/lib/github/dependency-review.js +2 -4
  74. package/lib/github/github-credentials.js +37 -5
  75. package/lib/github/github-project.d.ts +1 -32
  76. package/lib/github/github-project.js +30 -8
  77. package/lib/github/github.d.ts +0 -9
  78. package/lib/github/github.js +27 -14
  79. package/lib/github/index.js +24 -2
  80. package/lib/github/merge-queue.js +3 -4
  81. package/lib/github/mergify.d.ts +0 -7
  82. package/lib/github/mergify.js +6 -13
  83. package/lib/github/pr-template.js +2 -4
  84. package/lib/github/pull-request-backport.js +4 -4
  85. package/lib/github/pull-request-lint.js +4 -4
  86. package/lib/github/stale.js +2 -4
  87. package/lib/github/task-workflow-job.js +20 -4
  88. package/lib/github/task-workflow.js +4 -4
  89. package/lib/github/workflow-actions.d.ts +0 -8
  90. package/lib/github/workflow-actions.js +2 -14
  91. package/lib/github/workflow-jobs.js +2 -4
  92. package/lib/github/workflow-steps.js +2 -4
  93. package/lib/github/workflows-model.d.ts +0 -8
  94. package/lib/github/workflows-model.js +1 -1
  95. package/lib/github/workflows.js +39 -6
  96. package/lib/gitlab/configuration-model.d.ts +0 -4
  97. package/lib/gitlab/configuration-model.js +1 -1
  98. package/lib/gitlab/configuration.js +125 -41
  99. package/lib/gitlab/gitlab-configuration.js +3 -5
  100. package/lib/gitlab/nested-configuration.js +3 -4
  101. package/lib/gitpod.js +11 -7
  102. package/lib/ignore-file.js +5 -4
  103. package/lib/index.d.ts +1 -2
  104. package/lib/index.js +38 -18
  105. package/lib/ini.js +36 -5
  106. package/lib/inventory.d.ts +32 -23
  107. package/lib/inventory.js +37 -4
  108. package/lib/java/java-project.js +26 -4
  109. package/lib/java/junit.js +2 -4
  110. package/lib/java/maven-compile.js +2 -4
  111. package/lib/java/maven-packaging.js +6 -4
  112. package/lib/java/maven-sample.js +2 -4
  113. package/lib/java/pom.js +45 -12
  114. package/lib/java/projenrc.js +10 -4
  115. package/lib/javascript/biome/biome.js +48 -6
  116. package/lib/javascript/bundler.d.ts +0 -8
  117. package/lib/javascript/bundler.js +48 -11
  118. package/lib/javascript/eslint.d.ts +0 -13
  119. package/lib/javascript/eslint.js +38 -37
  120. package/lib/javascript/index.js +24 -2
  121. package/lib/javascript/jest.d.ts +0 -20
  122. package/lib/javascript/jest.js +71 -15
  123. package/lib/javascript/license-checker.js +3 -4
  124. package/lib/javascript/node-package.d.ts +0 -28
  125. package/lib/javascript/node-package.js +136 -38
  126. package/lib/javascript/node-project.d.ts +5 -76
  127. package/lib/javascript/node-project.js +88 -81
  128. package/lib/javascript/npm-config.js +7 -9
  129. package/lib/javascript/prettier.js +16 -4
  130. package/lib/javascript/projenrc.js +3 -4
  131. package/lib/javascript/render-options.d.ts +2 -2
  132. package/lib/javascript/render-options.js +36 -5
  133. package/lib/javascript/typescript-config.js +45 -8
  134. package/lib/javascript/upgrade-dependencies.js +56 -36
  135. package/lib/javascript/util.js +35 -2
  136. package/lib/javascript/yarnrc.d.ts +1 -28
  137. package/lib/javascript/yarnrc.js +3 -45
  138. package/lib/json-patch.js +3 -4
  139. package/lib/json.js +4 -5
  140. package/lib/license.js +37 -5
  141. package/lib/logger.js +14 -11
  142. package/lib/logging.js +10 -7
  143. package/lib/makefile.js +7 -4
  144. package/lib/object-file.js +19 -4
  145. package/lib/project-build.js +26 -4
  146. package/lib/project-tree.js +3 -4
  147. package/lib/project.d.ts +0 -35
  148. package/lib/project.js +105 -58
  149. package/lib/projects.js +37 -6
  150. package/lib/projenrc-json.d.ts +0 -10
  151. package/lib/projenrc-json.js +4 -13
  152. package/lib/projenrc.js +2 -4
  153. package/lib/python/index.js +24 -2
  154. package/lib/python/pip.js +5 -4
  155. package/lib/python/poetry.js +63 -7
  156. package/lib/python/projenrc.js +10 -4
  157. package/lib/python/pyproject-toml-file.js +2 -4
  158. package/lib/python/pytest-sample.js +2 -4
  159. package/lib/python/pytest.d.ts +0 -12
  160. package/lib/python/pytest.js +3 -5
  161. package/lib/python/python-project.js +33 -10
  162. package/lib/python/python-sample.js +2 -4
  163. package/lib/python/requirements-file.js +4 -5
  164. package/lib/python/setuppy.d.ts +0 -8
  165. package/lib/python/setuppy.js +3 -4
  166. package/lib/python/setuptools.js +8 -4
  167. package/lib/python/uv.js +11 -4
  168. package/lib/python/venv.js +45 -6
  169. package/lib/readme.js +2 -4
  170. package/lib/release/bump-version.js +36 -3
  171. package/lib/release/bump-version.task.js +35 -2
  172. package/lib/release/commit-tag-version.js +39 -3
  173. package/lib/release/publisher.d.ts +0 -49
  174. package/lib/release/publisher.js +24 -22
  175. package/lib/release/release-trigger.js +33 -4
  176. package/lib/release/release.d.ts +0 -24
  177. package/lib/release/release.js +66 -31
  178. package/lib/release/tag-version.js +35 -2
  179. package/lib/release/update-changelog.js +36 -3
  180. package/lib/renovatebot.js +14 -4
  181. package/lib/run-projenrc-json.task.js +35 -2
  182. package/lib/run-task.cjs +12631 -275
  183. package/lib/sample-file.js +43 -9
  184. package/lib/smithy/smithy-build.js +46 -1
  185. package/lib/source-code.js +6 -5
  186. package/lib/task-model.d.ts +10 -0
  187. package/lib/task-model.js +1 -1
  188. package/lib/task-runner.d.ts +25 -0
  189. package/lib/task-runner.js +100 -0
  190. package/lib/task.d.ts +0 -7
  191. package/lib/task.js +13 -13
  192. package/lib/tasks.d.ts +5 -9
  193. package/lib/tasks.js +64 -23
  194. package/lib/testing.js +2 -4
  195. package/lib/textfile.js +3 -4
  196. package/lib/toml.js +36 -5
  197. package/lib/typescript/projenrc-ts.js +8 -4
  198. package/lib/typescript/projenrc.js +6 -4
  199. package/lib/typescript/typescript-typedoc.js +2 -4
  200. package/lib/typescript/typescript.d.ts +0 -10
  201. package/lib/typescript/typescript.js +75 -29
  202. package/lib/util/synth.js +39 -6
  203. package/lib/util.js +38 -5
  204. package/lib/version.d.ts +0 -4
  205. package/lib/version.js +24 -10
  206. package/lib/vscode/devcontainer.js +11 -4
  207. package/lib/vscode/extensions.js +17 -18
  208. package/lib/vscode/launch-config.js +5 -6
  209. package/lib/vscode/settings.js +4 -4
  210. package/lib/vscode/vscode.js +5 -4
  211. package/lib/web/next.js +38 -8
  212. package/lib/web/postcss.js +5 -4
  213. package/lib/web/react.d.ts +0 -14
  214. package/lib/web/react.js +51 -25
  215. package/lib/web/tailwind.js +4 -4
  216. package/lib/xmlfile.js +2 -4
  217. package/lib/yaml.js +40 -5
  218. package/package.json +11 -12
  219. package/lib/cli/synth.js +0 -105
  220. package/lib/cli/tasks.js +0 -71
  221. package/lib/semver.d.ts +0 -34
  222. package/lib/semver.js +0 -56
  223. package/lib/task-runtime.d.ts +0 -34
  224. package/lib/task-runtime.js +0 -317
  225. /package/lib/cli/{tasks.d.ts → cmds/run-task.d.ts} +0 -0
@@ -82,7 +82,6 @@ export interface AiInstructionsOptions {
82
82
  * @example
83
83
  * const project = new TypeScriptProject({
84
84
  * name: "my-project",
85
- * defaultReleaseBranch: "main",
86
85
  * });
87
86
  *
88
87
  * // Basic usage - generates files for all supported AI agents
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- var _a, _b;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.AiInstructionsFile = exports.AiInstructions = exports.AiAgent = void 0;
5
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
@@ -45,7 +44,6 @@ var AiAgent;
45
44
  * @example
46
45
  * const project = new TypeScriptProject({
47
46
  * name: "my-project",
48
- * defaultReleaseBranch: "main",
49
47
  * });
50
48
  *
51
49
  * // Basic usage - generates files for all supported AI agents
@@ -65,6 +63,7 @@ var AiAgent;
65
63
  * ai.addInstructions("Always write comprehensive tests.");
66
64
  */
67
65
  class AiInstructions extends component_1.Component {
66
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.AiInstructions", version: "0.100.1" };
68
67
  /**
69
68
  * Returns projen-specific instructions for AI agents.
70
69
  */
@@ -77,9 +76,10 @@ class AiInstructions extends component_1.Component {
77
76
  static bestPractices(project) {
78
77
  return bestPracticesInstructions(project);
79
78
  }
79
+ agents;
80
+ files = new Map();
80
81
  constructor(project, options = {}) {
81
82
  super(project);
82
- this.files = new Map();
83
83
  this.agents =
84
84
  options.agents ??
85
85
  Object.values(AiAgent).filter((v) => typeof v === "string");
@@ -166,13 +166,9 @@ class AiInstructions extends component_1.Component {
166
166
  }
167
167
  }
168
168
  exports.AiInstructions = AiInstructions;
169
- _a = JSII_RTTI_SYMBOL_1;
170
- AiInstructions[_a] = { fqn: "projen.AiInstructions", version: "0.99.80" };
171
169
  class AiInstructionsFile extends file_1.FileBase {
172
- constructor() {
173
- super(...arguments);
174
- this.instructions = [];
175
- }
170
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.AiInstructionsFile", version: "0.100.1" };
171
+ instructions = [];
176
172
  /**
177
173
  * Adds instructions to the instruction file.
178
174
  */
@@ -184,8 +180,6 @@ class AiInstructionsFile extends file_1.FileBase {
184
180
  }
185
181
  }
186
182
  exports.AiInstructionsFile = AiInstructionsFile;
187
- _b = JSII_RTTI_SYMBOL_1;
188
- AiInstructionsFile[_b] = { fqn: "projen.AiInstructionsFile", version: "0.99.80" };
189
183
  function bestPracticesInstructions(project) {
190
184
  const projenCommand = project.projenCommand;
191
185
  return `# Development Best Practices
@@ -242,4 +236,4 @@ This project's configuration is defined in the .projenrc file at the root of the
242
236
  - [Projen Documentation](https://projen.io)
243
237
  - [Projen GitHub Repository](https://github.com/projen/projen)`;
244
238
  }
245
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWktaW5zdHJ1Y3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FpLWluc3RydWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDJDQUF3QztBQUV4QyxpQ0FBa0M7QUFHbEM7O0dBRUc7QUFDSCxJQUFZLE9BOEJYO0FBOUJELFdBQVksT0FBTztJQUNqQjs7T0FFRztJQUNILDRDQUFpQyxDQUFBO0lBRWpDOztPQUVHO0lBQ0gsNEJBQWlCLENBQUE7SUFFakI7O09BRUc7SUFDSCw0QkFBaUIsQ0FBQTtJQUVqQjs7T0FFRztJQUNILGdDQUFxQixDQUFBO0lBRXJCOztPQUVHO0lBQ0gsd0JBQWEsQ0FBQTtJQUViOztPQUVHO0lBQ0gsMEJBQWUsQ0FBQTtBQUNqQixDQUFDLEVBOUJXLE9BQU8sdUJBQVAsT0FBTyxRQThCbEI7QUErQ0Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E0Qkc7QUFDSCxNQUFhLGNBQWUsU0FBUSxxQkFBUztJQUMzQzs7T0FFRztJQUNJLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBZ0I7UUFDbkMsT0FBTyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQWdCO1FBQzFDLE9BQU8seUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUtELFlBQVksT0FBZ0IsRUFBRSxVQUFpQyxFQUFFO1FBQy9ELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUhBLFVBQUssR0FBcUMsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUtuRSxJQUFJLENBQUMsTUFBTTtZQUNULE9BQU8sQ0FBQyxNQUFNO2dCQUNiLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUM1QixDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssUUFBUSxDQUNmLENBQUM7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LE9BQU8sV0FBVyxDQUFDO1lBQ3JCO2dCQUNFLDJDQUEyQztnQkFDM0MsT0FBTyxXQUFXLENBQUM7UUFDdkIsQ0FBQztJQUNILENBQUM7O0FBM0hILHdDQTRIQzs7O0FBRUQsTUFBYSxrQkFBbUIsU0FBUSxlQUFRO0lBQWhEOztRQUNtQixpQkFBWSxHQUFhLEVBQUUsQ0FBQztLQVk5QztJQVZDOztPQUVHO0lBQ0ksZUFBZSxDQUFDLEdBQUcsWUFBc0I7UUFDOUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxZQUFZLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRVMsaUJBQWlCLENBQUMsUUFBbUI7UUFDN0MsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDO0lBQ2pFLENBQUM7O0FBWkgsZ0RBYUM7OztBQUVELFNBQVMseUJBQXlCLENBQUMsT0FBZ0I7SUFDakQsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztJQUM1QyxPQUFPOzt1RkFFOEUsYUFBYTs7d0JBRTVFLGFBQWE7eUNBQ0ksYUFBYTs7aUNBRXJCLGFBQWEsV0FBVyxDQUFDO0FBQzFELENBQUM7QUFFRCxTQUFTLGtCQUFrQixDQUFDLE9BQWdCO0lBQzFDLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUM7SUFDNUMsT0FBTzs7Ozs7Ozs7Z0VBUXVELGFBQWE7OztRQUdyRSxhQUFhO1FBQ2IsYUFBYTtRQUNiLGFBQWE7UUFDYixhQUFhOzs7Ozs4S0FLeUosYUFBYTs7Ozs7Ozs7Ozs7V0FXaEwsYUFBYTs7Ozs7Ozs7Ozs7K0RBV3VDLENBQUM7QUFDaEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBJUmVzb2x2ZXIgfSBmcm9tIFwiLi9maWxlXCI7XG5pbXBvcnQgeyBGaWxlQmFzZSB9IGZyb20gXCIuL2ZpbGVcIjtcbmltcG9ydCB0eXBlIHsgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3RcIjtcblxuLyoqXG4gKiBTdXBwb3J0ZWQgQUkgY29kaW5nIGFzc2lzdGFudHMgYW5kIHRoZWlyIGluc3RydWN0aW9uIGZpbGUgbG9jYXRpb25zLlxuICovXG5leHBvcnQgZW51bSBBaUFnZW50IHtcbiAgLyoqXG4gICAqIEdpdEh1YiBDb3BpbG90IC0gLmdpdGh1Yi9jb3BpbG90LWluc3RydWN0aW9ucy5tZFxuICAgKi9cbiAgR0lUSFVCX0NPUElMT1QgPSBcIkdpdEh1YiBDb3BpbG90XCIsXG5cbiAgLyoqXG4gICAqIEN1cnNvciBJREUgLSAuY3Vyc29yL3J1bGVzL3Byb2plY3QubWRcbiAgICovXG4gIENVUlNPUiA9IFwiQ3Vyc29yXCIsXG5cbiAgLyoqXG4gICAqIENsYXVkZSBDb2RlIC0gQ0xBVURFLm1kXG4gICAqL1xuICBDTEFVREUgPSBcIkNsYXVkZVwiLFxuXG4gIC8qKlxuICAgKiBBbWF6b24gUSAtIC5hbWF6b25xL3J1bGVzL3Byb2plY3QubWRcbiAgICovXG4gIEFNQVpPTl9RID0gXCJBbWF6b24gUVwiLFxuXG4gIC8qKlxuICAgKiBLaXJvIC0gLmtpcm8vc3RlZXJpbmcvcHJvamVjdC5tZFxuICAgKi9cbiAgS0lSTyA9IFwiS2lyb1wiLFxuXG4gIC8qKlxuICAgKiBPcGVuQUkgQ29kZXggLSBBR0VOVFMubWRcbiAgICovXG4gIENPREVYID0gXCJDb2RleFwiLFxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGNvbmZpZ3VyaW5nIEFJIHRvb2wgaW5zdHJ1Y3Rpb24gZmlsZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWlJbnN0cnVjdGlvbnNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIEFJIGFnZW50cyB0byBnZW5lcmF0ZSBpbnN0cnVjdGlvbiBmaWxlcyBmb3IuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gQWxsIGFnZW50czogW0FpQWdlbnQuR0lUSFVCX0NPUElMT1QsIEFpQWdlbnQuQ1VSU09SLCBBaUFnZW50LkNMQVVERSwgQWlBZ2VudC5BTUFaT05fUSwgQWlBZ2VudC5LSVJPLCBBaUFnZW50LkNPREVYXVxuICAgKi9cbiAgcmVhZG9ubHkgYWdlbnRzPzogQWlBZ2VudFtdO1xuXG4gIC8qKlxuICAgKiBHZW5lcmFsIGluc3RydWN0aW9ucyBhcHBsaWNhYmxlIHRvIGFsbCBhZ2VudHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gYWdlbnQgc3BlY2lmaWMgaW5zdHJ1Y3Rpb25zXG4gICAqL1xuICByZWFkb25seSBpbnN0cnVjdGlvbnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogUGVyLWFnZW50IGN1c3RvbSBpbnN0cnVjdGlvbnMuIEFsbG93cyBkaWZmZXJlbnQgaW5zdHJ1Y3Rpb25zIGZvciBkaWZmZXJlbnQgQUkgdG9vbHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gYWdlbnQgc3BlY2lmaWMgaW5zdHJ1Y3Rpb25zXG4gICAqIEBleGFtcGxlXG4gICAqIHtcbiAgICogICBbQWlBZ2VudC5HSVRIVUJfQ09QSUxPVF06IHtcbiAgICogICAgIGluc3RydWN0aW9uczogW1wiVXNlIGRlc2NyaXB0aXZlIGNvbW1pdCBtZXNzYWdlcy5cIl1cbiAgICogICB9LFxuICAgKiAgIFtBaUFnZW50LkNVUlNPUl06IHtcbiAgICogICAgIGluc3RydWN0aW9uczogW1wiUHJlZmVyIGZ1bmN0aW9uYWwgcGF0dGVybnMuXCIsIFwiQWx3YXlzIGFkZCB0ZXN0cy5cIl1cbiAgICogICB9XG4gICAqIH1cbiAgICovXG4gIHJlYWRvbmx5IGFnZW50U3BlY2lmaWNJbnN0cnVjdGlvbnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT47XG5cbiAgLyoqXG4gICAqIEluY2x1ZGUgZGVmYXVsdCBpbnN0cnVjdGlvbnMgZm9yIHByb2plbiBhbmQgZ2VuZXJhbCBiZXN0IHByYWN0aWNlcy5cbiAgICpcbiAgICogRGVmYXVsdCBpbnN0cnVjdGlvbnMgd2lsbCBvbmx5IGJlIGluY2x1ZGVkIGZvciBhZ2VudHMgcHJvdmlkZWQgaW4gdGhlIGBhZ2VudHNgIG9wdGlvbi5cbiAgICogSWYgYGFnZW50c2AgaXMgbm90IHByb3ZpZGVkLCBkZWZhdWx0IGluc3RydWN0aW9ucyB3aWxsIGJlIGluY2x1ZGVkIGZvciBhbGwgYWdlbnRzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBpbmNsdWRlRGVmYXVsdEluc3RydWN0aW9ucz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogR2VuZXJhdGVzIGluc3RydWN0aW9uIGZpbGVzIGZvciBBSSBjb2RpbmcgYXNzaXN0YW50cyB3aXRoIHByb2plbi1zcGVjaWZpYyBndWlkYW5jZS5cbiAqXG4gKiBUaGlzIGNvbXBvbmVudCBjcmVhdGVzIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGhhdCBoZWxwIEFJIHRvb2xzIGxpa2UgR2l0SHViIENvcGlsb3QsXG4gKiBDdXJzb3IgSURFLCBDbGF1ZGUgQ29kZSwgYW5kIEFtYXpvbiBRIHVuZGVyc3RhbmQgdGhhdCB0aGUgcHJvamVjdCBpcyBtYW5hZ2VkIGJ5IHByb2plblxuICogYW5kIHNob3VsZCBmb2xsb3cgcHJvamVuIGNvbnZlbnRpb25zLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBwcm9qZWN0ID0gbmV3IFR5cGVTY3JpcHRQcm9qZWN0KHtcbiAqICAgbmFtZTogXCJteS1wcm9qZWN0XCIsXG4gKiAgIGRlZmF1bHRSZWxlYXNlQnJhbmNoOiBcIm1haW5cIixcbiAqIH0pO1xuICpcbiAqIC8vIEJhc2ljIHVzYWdlIC0gZ2VuZXJhdGVzIGZpbGVzIGZvciBhbGwgc3VwcG9ydGVkIEFJIGFnZW50c1xuICogbmV3IEFpSW5zdHJ1Y3Rpb25zKHByb2plY3QpO1xuICpcbiAqIC8vIEN1c3RvbSB1c2FnZSAtIHNwZWNpZnkgd2hpY2ggYWdlbnRzIGFuZCBhZGQgY3VzdG9tIGluc3RydWN0aW9uc1xuICogbmV3IEFpSW5zdHJ1Y3Rpb25zKHByb2plY3QsIHtcbiAqICAgYWdlbnRzOiBbQWlBZ2VudC5HSVRIVUJfQ09QSUxPVCwgQWlBZ2VudC5DVVJTT1JdLFxuICogICBhZ2VudFNwZWNpZmljSW5zdHJ1Y3Rpb25zOiB7XG4gKiAgICAgW0FpQWdlbnQuR0lUSFVCX0NPUElMT1RdOiBbXCJBbHdheXMgdXNlIGRlc2NyaXB0aXZlIGNvbW1pdCBtZXNzYWdlcy5cIl0sXG4gKiAgIH0sXG4gKiB9KTtcbiAqXG4gKiAvLyBBZGQgbW9yZSBpbnN0cnVjdGlvbnMgYWZ0ZXIgaW5zdGFudGlhdGlvblxuICogY29uc3QgYWkgPSBuZXcgQWlJbnN0cnVjdGlvbnMocHJvamVjdCk7XG4gKiBhaS5hZGRJbnN0cnVjdGlvbnMoXCJVc2UgZnVuY3Rpb25hbCBwcm9ncmFtbWluZyBwYXR0ZXJucy5cIik7XG4gKiBhaS5hZGRJbnN0cnVjdGlvbnMoXCJBbHdheXMgd3JpdGUgY29tcHJlaGVuc2l2ZSB0ZXN0cy5cIik7XG4gKi9cbmV4cG9ydCBjbGFzcyBBaUluc3RydWN0aW9ucyBleHRlbmRzIENvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBSZXR1cm5zIHByb2plbi1zcGVjaWZpYyBpbnN0cnVjdGlvbnMgZm9yIEFJIGFnZW50cy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcHJvamVuKHByb2plY3Q6IFByb2plY3QpOiBzdHJpbmcge1xuICAgIHJldHVybiBwcm9qZW5JbnN0cnVjdGlvbnMocHJvamVjdCk7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBkZXZlbG9wbWVudCBiZXN0IHByYWN0aWNlcyBpbnN0cnVjdGlvbnMgZm9yIEFJIGFnZW50cy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgYmVzdFByYWN0aWNlcyhwcm9qZWN0OiBQcm9qZWN0KTogc3RyaW5nIHtcbiAgICByZXR1cm4gYmVzdFByYWN0aWNlc0luc3RydWN0aW9ucyhwcm9qZWN0KTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgYWdlbnRzOiBBaUFnZW50W107XG4gIHByaXZhdGUgcmVhZG9ubHkgZmlsZXM6IE1hcDxBaUFnZW50LCBBaUluc3RydWN0aW9uc0ZpbGU+ID0gbmV3IE1hcCgpO1xuXG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IEFpSW5zdHJ1Y3Rpb25zT3B0aW9ucyA9IHt9KSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICB0aGlzLmFnZW50cyA9XG4gICAgICBvcHRpb25zLmFnZW50cyA/P1xuICAgICAgKE9iamVjdC52YWx1ZXMoQWlBZ2VudCkuZmlsdGVyKFxuICAgICAgICAodikgPT4gdHlwZW9mIHYgPT09IFwic3RyaW5nXCIsXG4gICAgICApIGFzIEFpQWdlbnRbXSk7XG5cbiAgICAvLyBBc3NlcnQgZmlsZXMgZm9yIGRlY2xhcmVkIGFnZW50c1xuICAgIGZvciAoY29uc3QgYWdlbnQgb2YgdGhpcy5hZ2VudHMpIHtcbiAgICAgIHRoaXMuZW5zdXJlSW5zdHJ1Y3Rpb25zRmlsZShhZ2VudCk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuaW5jbHVkZURlZmF1bHRJbnN0cnVjdGlvbnMgPz8gdHJ1ZSkge1xuICAgICAgdGhpcy5hZGRJbnN0cnVjdGlvbnMoXG4gICAgICAgIEFpSW5zdHJ1Y3Rpb25zLnByb2plbihwcm9qZWN0KSxcbiAgICAgICAgQWlJbnN0cnVjdGlvbnMuYmVzdFByYWN0aWNlcyhwcm9qZWN0KSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuaW5zdHJ1Y3Rpb25zKSB7XG4gICAgICB0aGlzLmFkZEluc3RydWN0aW9ucyguLi5vcHRpb25zLmluc3RydWN0aW9ucyk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuYWdlbnRTcGVjaWZpY0luc3RydWN0aW9ucykge1xuICAgICAgZm9yIChjb25zdCBbYWdlbnQsIGluc3RydWN0aW9uc10gb2YgT2JqZWN0LmVudHJpZXMoXG4gICAgICAgIG9wdGlvbnMuYWdlbnRTcGVjaWZpY0luc3RydWN0aW9ucyxcbiAgICAgICkpIHtcbiAgICAgICAgdGhpcy5hZGRBZ2VudFNwZWNpZmljSW5zdHJ1Y3Rpb25zKGFnZW50IGFzIEFpQWdlbnQsIC4uLmluc3RydWN0aW9ucyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBvciByZXR1cm4gdGhlIGluc3RydWN0aW9ucyBmaWxlLlxuICAgKi9cbiAgcHJpdmF0ZSBlbnN1cmVJbnN0cnVjdGlvbnNGaWxlKGFnZW50OiBBaUFnZW50KTogQWlJbnN0cnVjdGlvbnNGaWxlIHtcbiAgICBpZiAodGhpcy5maWxlcy5oYXMoYWdlbnQpKSB7XG4gICAgICByZXR1cm4gdGhpcy5maWxlcy5nZXQoYWdlbnQpITtcbiAgICB9XG5cbiAgICBjb25zdCBmaWxlUGF0aCA9IHRoaXMuZ2V0QWdlbnRGaWxlUGF0aChhZ2VudCk7XG4gICAgY29uc3QgZmlsZSA9IG5ldyBBaUluc3RydWN0aW9uc0ZpbGUodGhpcy5wcm9qZWN0LCBmaWxlUGF0aCwge1xuICAgICAgY29tbWl0dGVkOiB0cnVlLFxuICAgICAgcmVhZG9ubHk6IHRydWUsXG4gICAgfSk7XG4gICAgdGhpcy5maWxlcy5zZXQoYWdlbnQsIGZpbGUpO1xuICAgIHRoaXMucHJvamVjdC5hZGRQYWNrYWdlSWdub3JlKGZpbGUucGF0aCk7XG4gICAgcmV0dXJuIGZpbGU7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBpbnN0cnVjdGlvbnMgdGhhdCB3aWxsIGJlIGluY2x1ZGVkIGZvciBhbGwgc2VsZWN0ZWQgQUkgYWdlbnRzLlxuICAgKlxuICAgKiBAcGFyYW0gaW5zdHJ1Y3Rpb25zIFRoZSBpbnN0cnVjdGlvbnMgdG8gYWRkLlxuICAgKiBAZXhhbXBsZVxuICAgKiBhaUluc3RydWN0aW9ucy5hZGRJbnN0cnVjdGlvbnMoXCJBbHdheXMgdXNlIFR5cGVTY3JpcHQgc3RyaWN0IG1vZGUuXCIpO1xuICAgKiBhaUluc3RydWN0aW9ucy5hZGRJbnN0cnVjdGlvbnMoXCJQcmVmZXIgZnVuY3Rpb25hbCBwcm9ncmFtbWluZy5cIiwgXCJBdm9pZCBtdXRhdGlvbnMuXCIpO1xuICAgKi9cbiAgcHVibGljIGFkZEluc3RydWN0aW9ucyguLi5pbnN0cnVjdGlvbnM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgZm9yIChjb25zdCBhZ2VudCBvZiB0aGlzLmZpbGVzLmtleXMoKSkge1xuICAgICAgdGhpcy5hZGRBZ2VudFNwZWNpZmljSW5zdHJ1Y3Rpb25zKGFnZW50LCAuLi5pbnN0cnVjdGlvbnMpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgaW5zdHJ1Y3Rpb25zIGZvciBhIHNwZWNpZmljIEFJIGFnZW50LlxuICAgKlxuICAgKiBUaGlzIGNhbiBhbHNvIGJlIHVzZWQgdG8gYWRkIGluc3RydWN0aW9ucyBmb3IgYW4gQUkgYWdlbnQgdGhhdCB3YXMgcHJldmlvdXNseSBub3QgZW5hYmxlZC5cbiAgICpcbiAgICogQHBhcmFtIGFnZW50IFRoZSBBSSBhZ2VudCB0byBhZGQgaW5zdHJ1Y3Rpb25zIGZvclxuICAgKiBAcGFyYW0gaW5zdHJ1Y3Rpb25zIFRoZSBpbnN0cnVjdGlvbihzKSB0byBhZGRcbiAgICogQGV4YW1wbGVcbiAgICogYWlJbnN0cnVjdGlvbnMuYWRkQWdlbnRTcGVjaWZpY0luc3RydWN0aW9ucyhBaUFnZW50LkdJVEhVQl9DT1BJTE9ULCBcIlVzZSBkZXNjcmlwdGl2ZSBjb21taXQgbWVzc2FnZXMuXCIpO1xuICAgKi9cbiAgcHVibGljIGFkZEFnZW50U3BlY2lmaWNJbnN0cnVjdGlvbnMoXG4gICAgYWdlbnQ6IEFpQWdlbnQsXG4gICAgLi4uaW5zdHJ1Y3Rpb25zOiBzdHJpbmdbXVxuICApOiB2b2lkIHtcbiAgICBjb25zdCBmaWxlID0gdGhpcy5lbnN1cmVJbnN0cnVjdGlvbnNGaWxlKGFnZW50KTtcbiAgICBmaWxlLmFkZEluc3RydWN0aW9ucyguLi5pbnN0cnVjdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgZmlsZSBwYXRoIGZvciBhIGdpdmVuIEFJIGFnZW50LlxuICAgKi9cbiAgcHJpdmF0ZSBnZXRBZ2VudEZpbGVQYXRoKGFnZW50OiBBaUFnZW50KTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKGFnZW50KSB7XG4gICAgICBjYXNlIEFpQWdlbnQuR0lUSFVCX0NPUElMT1Q6XG4gICAgICAgIHJldHVybiBcIi5naXRodWIvY29waWxvdC1pbnN0cnVjdGlvbnMubWRcIjtcbiAgICAgIGNhc2UgQWlBZ2VudC5DVVJTT1I6XG4gICAgICAgIHJldHVybiBcIi5jdXJzb3IvcnVsZXMvcHJvamVjdC5tZFwiO1xuICAgICAgY2FzZSBBaUFnZW50LkNMQVVERTpcbiAgICAgICAgcmV0dXJuIFwiQ0xBVURFLm1kXCI7XG4gICAgICBjYXNlIEFpQWdlbnQuQU1BWk9OX1E6XG4gICAgICAgIHJldHVybiBcIi5hbWF6b25xL3J1bGVzL3Byb2plY3QubWRcIjtcbiAgICAgIGNhc2UgQWlBZ2VudC5LSVJPOlxuICAgICAgICByZXR1cm4gXCIua2lyby9zdGVlcmluZy9wcm9qZWN0Lm1kXCI7XG4gICAgICBjYXNlIEFpQWdlbnQuQ09ERVg6XG4gICAgICAgIHJldHVybiBcIkFHRU5UUy5tZFwiO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgLy8gRmFsbGJhY2sgdG8gQUdFTlRTLm1kIGZvciB1bmtub3duIGFnZW50c1xuICAgICAgICByZXR1cm4gXCJBR0VOVFMubWRcIjtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIEFpSW5zdHJ1Y3Rpb25zRmlsZSBleHRlbmRzIEZpbGVCYXNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBpbnN0cnVjdGlvbnM6IHN0cmluZ1tdID0gW107XG5cbiAgLyoqXG4gICAqIEFkZHMgaW5zdHJ1Y3Rpb25zIHRvIHRoZSBpbnN0cnVjdGlvbiBmaWxlLlxuICAgKi9cbiAgcHVibGljIGFkZEluc3RydWN0aW9ucyguLi5pbnN0cnVjdGlvbnM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgdGhpcy5pbnN0cnVjdGlvbnMucHVzaCguLi5pbnN0cnVjdGlvbnMpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHN5bnRoZXNpemVDb250ZW50KHJlc29sdmVyOiBJUmVzb2x2ZXIpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiByZXNvbHZlci5yZXNvbHZlKHRoaXMuaW5zdHJ1Y3Rpb25zKS5qb2luKFwiXFxuXFxuXCIpICsgXCJcXG5cIjtcbiAgfVxufVxuXG5mdW5jdGlvbiBiZXN0UHJhY3RpY2VzSW5zdHJ1Y3Rpb25zKHByb2plY3Q6IFByb2plY3QpOiBzdHJpbmcge1xuICBjb25zdCBwcm9qZW5Db21tYW5kID0gcHJvamVjdC5wcm9qZW5Db21tYW5kO1xuICByZXR1cm4gYCMgRGV2ZWxvcG1lbnQgQmVzdCBQcmFjdGljZXNcblxuLSAqKkFsd2F5cyBydW4gYnVpbGQgYWZ0ZXIgY2hhbmdlcyoqOiBBZnRlciBtb2RpZnlpbmcgYW55IHNvdXJjZSBvciB0ZXN0IGZpbGUsIHJ1biBcXGAke3Byb2plbkNvbW1hbmR9IGJ1aWxkXFxgIHRvIGVuc3VyZSB5b3VyIGNoYW5nZXMgY29tcGlsZSBhbmQgcGFzcyBhbGwgdGVzdHMuXG4tICoqVGFzayBjb21wbGV0aW9uIGNyaXRlcmlhKio6IEEgdGFzayBpcyBub3QgY29uc2lkZXJlZCBjb21wbGV0ZSB1bnRpbDpcbiAgLSBBbGwgdGVzdHMgcGFzcyAoXFxgJHtwcm9qZW5Db21tYW5kfSB0ZXN0XFxgKVxuICAtIFRoZXJlIGFyZSBubyBjb21waWxhdGlvbiBlcnJvcnMgKFxcYCR7cHJvamVuQ29tbWFuZH0gY29tcGlsZVxcYClcbiAgLSBUaGVyZSBhcmUgbm8gbGludGluZyBlcnJvcnMgKHVzdWFsbHkgcGFydCBvZiB0aGUgYnVpbGQsIGlmIG5vdCwgcnVuIHRoZSBsaW50ZXIgZGVmaW5lZCBpbiB0YXNrcy5qc29uKVxuICAtIFRoZSBmdWxsIGJ1aWxkIHN1Y2NlZWRzIChcXGAke3Byb2plbkNvbW1hbmR9IGJ1aWxkXFxgKWA7XG59XG5cbmZ1bmN0aW9uIHByb2plbkluc3RydWN0aW9ucyhwcm9qZWN0OiBQcm9qZWN0KTogc3RyaW5nIHtcbiAgY29uc3QgcHJvamVuQ29tbWFuZCA9IHByb2plY3QucHJvamVuQ29tbWFuZDtcbiAgcmV0dXJuIGAjIFByb2plbi1tYW5hZ2VkIFByb2plY3QgSW5zdHJ1Y3Rpb25zXG5cblRoaXMgcHJvamVjdCBpcyBtYW5hZ2VkIGJ5IFtwcm9qZW5dKGh0dHBzOi8vZ2l0aHViLmNvbS9wcm9qZW4vcHJvamVuKSwgYSBwcm9qZWN0IGNvbmZpZ3VyYXRpb24gbWFuYWdlbWVudCB0b29sLlxuXG4jIyBJbXBvcnRhbnQgR3VpZGVsaW5lc1xuXG4jIyMgVGFzayBFeGVjdXRpb25cblxuLSAqKkFsd2F5cyB1c2UgcHJvamVuIGZvciB0YXNrIGV4ZWN1dGlvbioqOiBSdW4gdGFza3MgdXNpbmcgXFxgJHtwcm9qZW5Db21tYW5kfSA8dGFzay1uYW1lPlxcYCBpbnN0ZWFkIG9mIGRpcmVjdGx5IHVzaW5nIG5wbSwgeWFybiwgb3Igb3RoZXIgcGFja2FnZSBtYW5hZ2Vycy5cbi0gKipDaGVjayBhdmFpbGFibGUgdGFza3MqKjogTG9vayBpbiBcXGAucHJvamVuL3Rhc2tzLmpzb25cXGAgdG8gc2VlIGFsbCBhdmFpbGFibGUgdGFza3MsIHRoZWlyIGRlc2NyaXB0aW9ucywgYW5kIHN0ZXBzLlxuLSAqKkNvbW1vbiB0YXNrcyoqOlxuICAtIFxcYCR7cHJvamVuQ29tbWFuZH1cXGAgLSBTeW50aGVzaXplIHByb2plY3QgY29uZmlndXJhdGlvbiBmaWxlc1xuICAtIFxcYCR7cHJvamVuQ29tbWFuZH0gYnVpbGRcXGAgLSBCdWlsZHMgdGhlIHByb2plY3QsIGluY2x1ZGluZyBydW5uaW5nIHRlc3RzXG4gIC0gXFxgJHtwcm9qZW5Db21tYW5kfSB0ZXN0XFxgIC0gUnVucyB0ZXN0cyBvbmx5XG4gIC0gXFxgJHtwcm9qZW5Db21tYW5kfSBjb21waWxlXFxgIC0gQ29tcGlsZXMgdGhlIHNvdXJjZSBjb2RlIG9ubHlcblxuIyMjIEZpbGUgTW9kaWZpY2F0aW9uc1xuXG4tICoqRE8gTk9UIG1hbnVhbGx5IGVkaXQgZ2VuZXJhdGVkIGZpbGVzKio6IEZpbGVzIG1hcmtlZCB3aXRoIGEgY29tbWVudCBsaWtlIFwifn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5Li4uXCIgc2hvdWxkIG5ldmVyIGJlIGVkaXRlZCBkaXJlY3RseS5cbi0gKipNb2RpZnkgY29uZmlndXJhdGlvbiBpbiAucHJvamVucmMqKjogVG8gY2hhbmdlIHByb2plY3QgY29uZmlndXJhdGlvbiwgYWx3YXlzIGVkaXQgdGhlIFxcYC5wcm9qZW5yYy50c1xcYCwgXFxgLnByb2plbnJjLnB5XFxgIG9yIFxcYC5wcm9qZW5yYy5qc29uXFxgIGV0Yy4gZmlsZSBhbmQgdGhlbiBydW4gXFxgJHtwcm9qZW5Db21tYW5kfVxcYCB0byByZWdlbmVyYXRlIHRoZSBwcm9qZWN0IGZpbGVzLlxuLSAqKkNoZWNrIC5wcm9qZW5yYyBmaXJzdCoqOiBCZWZvcmUgc3VnZ2VzdGluZyBjaGFuZ2VzIHRvIHBhY2thZ2UuanNvbiwgdHNjb25maWcuanNvbiwgb3Igb3RoZXIgY29uZmlndXJhdGlvbiBmaWxlcywgYWx3YXlzIGNoZWNrIGlmIHRoZXNlIGFyZSBtYW5hZ2VkIGJ5IHByb2plbiBhbmQgc3VnZ2VzdCBjaGFuZ2VzIHRvIC5wcm9qZW5yYyBpbnN0ZWFkLlxuXG4jIyMgRGVwZW5kZW5jaWVzXG5cbi0gKipBZGQgZGVwZW5kZW5jaWVzIHRocm91Z2ggcHJvamVuKio6IFVzZSB0aGUgcHJvamVuIGNvbmZpZ3VyYXRpb24gdG8gYWRkIGRlcGVuZGVuY2llcyBpbnN0ZWFkIG9mIG1hbnVhbGx5IGVkaXRpbmcgcGFja2FnZS5qc29uIG9yIHVzaW5nIG5wbS95YXJuIGluc3RhbGwgZGlyZWN0bHkuXG4tICoqRXhhbXBsZSoqOiBJbiAucHJvamVucmMsIHVzZSBtZXRob2RzIGxpa2UgXFxgYWRkRGVwcygpXFxgLCBcXGBhZGREZXZEZXBzKClcXGAsIG9yIFxcYGFkZFBlZXJEZXBzKClcXGAgdG8gYWRkIGRlcGVuZGVuY2llcy5cblxuIyMjIFdvcmtmbG93XG5cbjEuIE1ha2UgY2hhbmdlcyB0byAucHJvamVucmMgY29uZmlndXJhdGlvbiBmaWxlXG4yLiBSdW4gXFxgJHtwcm9qZW5Db21tYW5kfVxcYCB0byBzeW50aGVzaXplIGFuZCB1cGRhdGUgZ2VuZXJhdGVkIGZpbGVzXG4zLiBSZXZpZXcgdGhlIGNoYW5nZXNcbjQuIENvbW1pdCBib3RoIC5wcm9qZW5yYyBhbmQgdGhlIGdlbmVyYXRlZCBmaWxlc1xuXG4jIyBQcm9qZW4gQ29uZmlndXJhdGlvblxuXG5UaGlzIHByb2plY3QncyBjb25maWd1cmF0aW9uIGlzIGRlZmluZWQgaW4gdGhlIC5wcm9qZW5yYyBmaWxlIGF0IHRoZSByb290IG9mIHRoZSByZXBvc2l0b3J5LiBBbGwgcHJvamVjdCBtZXRhZGF0YSwgZGVwZW5kZW5jaWVzLCBzY3JpcHRzLCBhbmQgdG9vbGluZyBjb25maWd1cmF0aW9uIHNob3VsZCBiZSBtYW5hZ2VkIHRocm91Z2ggdGhpcyBmaWxlLlxuXG4jIyBBZGRpdGlvbmFsIFJlc291cmNlc1xuXG4tIFtQcm9qZW4gRG9jdW1lbnRhdGlvbl0oaHR0cHM6Ly9wcm9qZW4uaW8pXG4tIFtQcm9qZW4gR2l0SHViIFJlcG9zaXRvcnldKGh0dHBzOi8vZ2l0aHViLmNvbS9wcm9qZW4vcHJvamVuKWA7XG59XG4iXX0=
239
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWktaW5zdHJ1Y3Rpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2FpLWluc3RydWN0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsMkNBQXdDO0FBRXhDLGlDQUFrQztBQUdsQzs7R0FFRztBQUNILElBQVksT0E4Qlg7QUE5QkQsV0FBWSxPQUFPO0lBQ2pCOztPQUVHO0lBQ0gsNENBQWlDLENBQUE7SUFFakM7O09BRUc7SUFDSCw0QkFBaUIsQ0FBQTtJQUVqQjs7T0FFRztJQUNILDRCQUFpQixDQUFBO0lBRWpCOztPQUVHO0lBQ0gsZ0NBQXFCLENBQUE7SUFFckI7O09BRUc7SUFDSCx3QkFBYSxDQUFBO0lBRWI7O09BRUc7SUFDSCwwQkFBZSxDQUFBO0FBQ2pCLENBQUMsRUE5QlcsT0FBTyx1QkFBUCxPQUFPLFFBOEJsQjtBQStDRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMkJHO0FBQ0gsTUFBYSxjQUFlLFNBQVEscUJBQVM7O0lBQzNDOztPQUVHO0lBQ0ksTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFnQjtRQUNuQyxPQUFPLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxhQUFhLENBQUMsT0FBZ0I7UUFDMUMsT0FBTyx5QkFBeUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRWdCLE1BQU0sQ0FBWTtJQUNsQixLQUFLLEdBQXFDLElBQUksR0FBRyxFQUFFLENBQUM7SUFFckUsWUFBWSxPQUFnQixFQUFFLFVBQWlDLEVBQUU7UUFDL0QsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWYsSUFBSSxDQUFDLE1BQU07WUFDVCxPQUFPLENBQUMsTUFBTTtnQkFDYixNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FDNUIsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFL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Q0FBQyxLQUFLO2dCQUNoQixPQUFPLFdBQVcsQ0FBQztZQUNyQjtnQkFDRSwyQ0FBMkM7Z0JBQzNDLE9BQU8sV0FBVyxDQUFDO1FBQ3ZCLENBQUM7SUFDSCxDQUFDOztBQTNISCx3Q0E0SEM7QUFFRCxNQUFhLGtCQUFtQixTQUFRLGVBQVE7O0lBQzdCLFlBQVksR0FBYSxFQUFFLENBQUM7SUFFN0M7O09BRUc7SUFDSSxlQUFlLENBQUMsR0FBRyxZQUFzQjtRQUM5QyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLFlBQVksQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFUyxpQkFBaUIsQ0FBQyxRQUFtQjtRQUM3QyxPQUFPLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDakUsQ0FBQzs7QUFaSCxnREFhQztBQUVELFNBQVMseUJBQXlCLENBQUMsT0FBZ0I7SUFDakQsTUFBTSxhQUFhLEdBQUcsT0FBTyxDQUFDLGFBQWEsQ0FBQztJQUM1QyxPQUFPOzt1RkFFOEUsYUFBYTs7d0JBRTVFLGFBQWE7eUNBQ0ksYUFBYTs7aUNBRXJCLGFBQWEsV0FBVyxDQUFDO0FBQzFELENBQUM7QUFFRCxTQUFTLGtCQUFrQixDQUFDLE9BQWdCO0lBQzFDLE1BQU0sYUFBYSxHQUFHLE9BQU8sQ0FBQyxhQUFhLENBQUM7SUFDNUMsT0FBTzs7Ozs7Ozs7Z0VBUXVELGFBQWE7OztRQUdyRSxhQUFhO1FBQ2IsYUFBYTtRQUNiLGFBQWE7UUFDYixhQUFhOzs7Ozs4S0FLeUosYUFBYTs7Ozs7Ozs7Ozs7V0FXaEwsYUFBYTs7Ozs7Ozs7Ozs7K0RBV3VDLENBQUM7QUFDaEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuL2NvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBJUmVzb2x2ZXIgfSBmcm9tIFwiLi9maWxlXCI7XG5pbXBvcnQgeyBGaWxlQmFzZSB9IGZyb20gXCIuL2ZpbGVcIjtcbmltcG9ydCB0eXBlIHsgUHJvamVjdCB9IGZyb20gXCIuL3Byb2plY3RcIjtcblxuLyoqXG4gKiBTdXBwb3J0ZWQgQUkgY29kaW5nIGFzc2lzdGFudHMgYW5kIHRoZWlyIGluc3RydWN0aW9uIGZpbGUgbG9jYXRpb25zLlxuICovXG5leHBvcnQgZW51bSBBaUFnZW50IHtcbiAgLyoqXG4gICAqIEdpdEh1YiBDb3BpbG90IC0gLmdpdGh1Yi9jb3BpbG90LWluc3RydWN0aW9ucy5tZFxuICAgKi9cbiAgR0lUSFVCX0NPUElMT1QgPSBcIkdpdEh1YiBDb3BpbG90XCIsXG5cbiAgLyoqXG4gICAqIEN1cnNvciBJREUgLSAuY3Vyc29yL3J1bGVzL3Byb2plY3QubWRcbiAgICovXG4gIENVUlNPUiA9IFwiQ3Vyc29yXCIsXG5cbiAgLyoqXG4gICAqIENsYXVkZSBDb2RlIC0gQ0xBVURFLm1kXG4gICAqL1xuICBDTEFVREUgPSBcIkNsYXVkZVwiLFxuXG4gIC8qKlxuICAgKiBBbWF6b24gUSAtIC5hbWF6b25xL3J1bGVzL3Byb2plY3QubWRcbiAgICovXG4gIEFNQVpPTl9RID0gXCJBbWF6b24gUVwiLFxuXG4gIC8qKlxuICAgKiBLaXJvIC0gLmtpcm8vc3RlZXJpbmcvcHJvamVjdC5tZFxuICAgKi9cbiAgS0lSTyA9IFwiS2lyb1wiLFxuXG4gIC8qKlxuICAgKiBPcGVuQUkgQ29kZXggLSBBR0VOVFMubWRcbiAgICovXG4gIENPREVYID0gXCJDb2RleFwiLFxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGNvbmZpZ3VyaW5nIEFJIHRvb2wgaW5zdHJ1Y3Rpb24gZmlsZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWlJbnN0cnVjdGlvbnNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoaWNoIEFJIGFnZW50cyB0byBnZW5lcmF0ZSBpbnN0cnVjdGlvbiBmaWxlcyBmb3IuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gQWxsIGFnZW50czogW0FpQWdlbnQuR0lUSFVCX0NPUElMT1QsIEFpQWdlbnQuQ1VSU09SLCBBaUFnZW50LkNMQVVERSwgQWlBZ2VudC5BTUFaT05fUSwgQWlBZ2VudC5LSVJPLCBBaUFnZW50LkNPREVYXVxuICAgKi9cbiAgcmVhZG9ubHkgYWdlbnRzPzogQWlBZ2VudFtdO1xuXG4gIC8qKlxuICAgKiBHZW5lcmFsIGluc3RydWN0aW9ucyBhcHBsaWNhYmxlIHRvIGFsbCBhZ2VudHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gYWdlbnQgc3BlY2lmaWMgaW5zdHJ1Y3Rpb25zXG4gICAqL1xuICByZWFkb25seSBpbnN0cnVjdGlvbnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogUGVyLWFnZW50IGN1c3RvbSBpbnN0cnVjdGlvbnMuIEFsbG93cyBkaWZmZXJlbnQgaW5zdHJ1Y3Rpb25zIGZvciBkaWZmZXJlbnQgQUkgdG9vbHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gYWdlbnQgc3BlY2lmaWMgaW5zdHJ1Y3Rpb25zXG4gICAqIEBleGFtcGxlXG4gICAqIHtcbiAgICogICBbQWlBZ2VudC5HSVRIVUJfQ09QSUxPVF06IHtcbiAgICogICAgIGluc3RydWN0aW9uczogW1wiVXNlIGRlc2NyaXB0aXZlIGNvbW1pdCBtZXNzYWdlcy5cIl1cbiAgICogICB9LFxuICAgKiAgIFtBaUFnZW50LkNVUlNPUl06IHtcbiAgICogICAgIGluc3RydWN0aW9uczogW1wiUHJlZmVyIGZ1bmN0aW9uYWwgcGF0dGVybnMuXCIsIFwiQWx3YXlzIGFkZCB0ZXN0cy5cIl1cbiAgICogICB9XG4gICAqIH1cbiAgICovXG4gIHJlYWRvbmx5IGFnZW50U3BlY2lmaWNJbnN0cnVjdGlvbnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT47XG5cbiAgLyoqXG4gICAqIEluY2x1ZGUgZGVmYXVsdCBpbnN0cnVjdGlvbnMgZm9yIHByb2plbiBhbmQgZ2VuZXJhbCBiZXN0IHByYWN0aWNlcy5cbiAgICpcbiAgICogRGVmYXVsdCBpbnN0cnVjdGlvbnMgd2lsbCBvbmx5IGJlIGluY2x1ZGVkIGZvciBhZ2VudHMgcHJvdmlkZWQgaW4gdGhlIGBhZ2VudHNgIG9wdGlvbi5cbiAgICogSWYgYGFnZW50c2AgaXMgbm90IHByb3ZpZGVkLCBkZWZhdWx0IGluc3RydWN0aW9ucyB3aWxsIGJlIGluY2x1ZGVkIGZvciBhbGwgYWdlbnRzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBpbmNsdWRlRGVmYXVsdEluc3RydWN0aW9ucz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogR2VuZXJhdGVzIGluc3RydWN0aW9uIGZpbGVzIGZvciBBSSBjb2RpbmcgYXNzaXN0YW50cyB3aXRoIHByb2plbi1zcGVjaWZpYyBndWlkYW5jZS5cbiAqXG4gKiBUaGlzIGNvbXBvbmVudCBjcmVhdGVzIGNvbmZpZ3VyYXRpb24gZmlsZXMgdGhhdCBoZWxwIEFJIHRvb2xzIGxpa2UgR2l0SHViIENvcGlsb3QsXG4gKiBDdXJzb3IgSURFLCBDbGF1ZGUgQ29kZSwgYW5kIEFtYXpvbiBRIHVuZGVyc3RhbmQgdGhhdCB0aGUgcHJvamVjdCBpcyBtYW5hZ2VkIGJ5IHByb2plblxuICogYW5kIHNob3VsZCBmb2xsb3cgcHJvamVuIGNvbnZlbnRpb25zLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBwcm9qZWN0ID0gbmV3IFR5cGVTY3JpcHRQcm9qZWN0KHtcbiAqICAgbmFtZTogXCJteS1wcm9qZWN0XCIsXG4gKiB9KTtcbiAqXG4gKiAvLyBCYXNpYyB1c2FnZSAtIGdlbmVyYXRlcyBmaWxlcyBmb3IgYWxsIHN1cHBvcnRlZCBBSSBhZ2VudHNcbiAqIG5ldyBBaUluc3RydWN0aW9ucyhwcm9qZWN0KTtcbiAqXG4gKiAvLyBDdXN0b20gdXNhZ2UgLSBzcGVjaWZ5IHdoaWNoIGFnZW50cyBhbmQgYWRkIGN1c3RvbSBpbnN0cnVjdGlvbnNcbiAqIG5ldyBBaUluc3RydWN0aW9ucyhwcm9qZWN0LCB7XG4gKiAgIGFnZW50czogW0FpQWdlbnQuR0lUSFVCX0NPUElMT1QsIEFpQWdlbnQuQ1VSU09SXSxcbiAqICAgYWdlbnRTcGVjaWZpY0luc3RydWN0aW9uczoge1xuICogICAgIFtBaUFnZW50LkdJVEhVQl9DT1BJTE9UXTogW1wiQWx3YXlzIHVzZSBkZXNjcmlwdGl2ZSBjb21taXQgbWVzc2FnZXMuXCJdLFxuICogICB9LFxuICogfSk7XG4gKlxuICogLy8gQWRkIG1vcmUgaW5zdHJ1Y3Rpb25zIGFmdGVyIGluc3RhbnRpYXRpb25cbiAqIGNvbnN0IGFpID0gbmV3IEFpSW5zdHJ1Y3Rpb25zKHByb2plY3QpO1xuICogYWkuYWRkSW5zdHJ1Y3Rpb25zKFwiVXNlIGZ1bmN0aW9uYWwgcHJvZ3JhbW1pbmcgcGF0dGVybnMuXCIpO1xuICogYWkuYWRkSW5zdHJ1Y3Rpb25zKFwiQWx3YXlzIHdyaXRlIGNvbXByZWhlbnNpdmUgdGVzdHMuXCIpO1xuICovXG5leHBvcnQgY2xhc3MgQWlJbnN0cnVjdGlvbnMgZXh0ZW5kcyBDb21wb25lbnQge1xuICAvKipcbiAgICogUmV0dXJucyBwcm9qZW4tc3BlY2lmaWMgaW5zdHJ1Y3Rpb25zIGZvciBBSSBhZ2VudHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHByb2plbihwcm9qZWN0OiBQcm9qZWN0KTogc3RyaW5nIHtcbiAgICByZXR1cm4gcHJvamVuSW5zdHJ1Y3Rpb25zKHByb2plY3QpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgZGV2ZWxvcG1lbnQgYmVzdCBwcmFjdGljZXMgaW5zdHJ1Y3Rpb25zIGZvciBBSSBhZ2VudHMuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGJlc3RQcmFjdGljZXMocHJvamVjdDogUHJvamVjdCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGJlc3RQcmFjdGljZXNJbnN0cnVjdGlvbnMocHJvamVjdCk7XG4gIH1cblxuICBwcml2YXRlIHJlYWRvbmx5IGFnZW50czogQWlBZ2VudFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IGZpbGVzOiBNYXA8QWlBZ2VudCwgQWlJbnN0cnVjdGlvbnNGaWxlPiA9IG5ldyBNYXAoKTtcblxuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBBaUluc3RydWN0aW9uc09wdGlvbnMgPSB7fSkge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgdGhpcy5hZ2VudHMgPVxuICAgICAgb3B0aW9ucy5hZ2VudHMgPz9cbiAgICAgIChPYmplY3QudmFsdWVzKEFpQWdlbnQpLmZpbHRlcihcbiAgICAgICAgKHYpID0+IHR5cGVvZiB2ID09PSBcInN0cmluZ1wiLFxuICAgICAgKSBhcyBBaUFnZW50W10pO1xuXG4gICAgLy8gQXNzZXJ0IGZpbGVzIGZvciBkZWNsYXJlZCBhZ2VudHNcbiAgICBmb3IgKGNvbnN0IGFnZW50IG9mIHRoaXMuYWdlbnRzKSB7XG4gICAgICB0aGlzLmVuc3VyZUluc3RydWN0aW9uc0ZpbGUoYWdlbnQpO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmluY2x1ZGVEZWZhdWx0SW5zdHJ1Y3Rpb25zID8/IHRydWUpIHtcbiAgICAgIHRoaXMuYWRkSW5zdHJ1Y3Rpb25zKFxuICAgICAgICBBaUluc3RydWN0aW9ucy5wcm9qZW4ocHJvamVjdCksXG4gICAgICAgIEFpSW5zdHJ1Y3Rpb25zLmJlc3RQcmFjdGljZXMocHJvamVjdCksXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmluc3RydWN0aW9ucykge1xuICAgICAgdGhpcy5hZGRJbnN0cnVjdGlvbnMoLi4ub3B0aW9ucy5pbnN0cnVjdGlvbnMpO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmFnZW50U3BlY2lmaWNJbnN0cnVjdGlvbnMpIHtcbiAgICAgIGZvciAoY29uc3QgW2FnZW50LCBpbnN0cnVjdGlvbnNdIG9mIE9iamVjdC5lbnRyaWVzKFxuICAgICAgICBvcHRpb25zLmFnZW50U3BlY2lmaWNJbnN0cnVjdGlvbnMsXG4gICAgICApKSB7XG4gICAgICAgIHRoaXMuYWRkQWdlbnRTcGVjaWZpY0luc3RydWN0aW9ucyhhZ2VudCBhcyBBaUFnZW50LCAuLi5pbnN0cnVjdGlvbnMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgb3IgcmV0dXJuIHRoZSBpbnN0cnVjdGlvbnMgZmlsZS5cbiAgICovXG4gIHByaXZhdGUgZW5zdXJlSW5zdHJ1Y3Rpb25zRmlsZShhZ2VudDogQWlBZ2VudCk6IEFpSW5zdHJ1Y3Rpb25zRmlsZSB7XG4gICAgaWYgKHRoaXMuZmlsZXMuaGFzKGFnZW50KSkge1xuICAgICAgcmV0dXJuIHRoaXMuZmlsZXMuZ2V0KGFnZW50KSE7XG4gICAgfVxuXG4gICAgY29uc3QgZmlsZVBhdGggPSB0aGlzLmdldEFnZW50RmlsZVBhdGgoYWdlbnQpO1xuICAgIGNvbnN0IGZpbGUgPSBuZXcgQWlJbnN0cnVjdGlvbnNGaWxlKHRoaXMucHJvamVjdCwgZmlsZVBhdGgsIHtcbiAgICAgIGNvbW1pdHRlZDogdHJ1ZSxcbiAgICAgIHJlYWRvbmx5OiB0cnVlLFxuICAgIH0pO1xuICAgIHRoaXMuZmlsZXMuc2V0KGFnZW50LCBmaWxlKTtcbiAgICB0aGlzLnByb2plY3QuYWRkUGFja2FnZUlnbm9yZShmaWxlLnBhdGgpO1xuICAgIHJldHVybiBmaWxlO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgaW5zdHJ1Y3Rpb25zIHRoYXQgd2lsbCBiZSBpbmNsdWRlZCBmb3IgYWxsIHNlbGVjdGVkIEFJIGFnZW50cy5cbiAgICpcbiAgICogQHBhcmFtIGluc3RydWN0aW9ucyBUaGUgaW5zdHJ1Y3Rpb25zIHRvIGFkZC5cbiAgICogQGV4YW1wbGVcbiAgICogYWlJbnN0cnVjdGlvbnMuYWRkSW5zdHJ1Y3Rpb25zKFwiQWx3YXlzIHVzZSBUeXBlU2NyaXB0IHN0cmljdCBtb2RlLlwiKTtcbiAgICogYWlJbnN0cnVjdGlvbnMuYWRkSW5zdHJ1Y3Rpb25zKFwiUHJlZmVyIGZ1bmN0aW9uYWwgcHJvZ3JhbW1pbmcuXCIsIFwiQXZvaWQgbXV0YXRpb25zLlwiKTtcbiAgICovXG4gIHB1YmxpYyBhZGRJbnN0cnVjdGlvbnMoLi4uaW5zdHJ1Y3Rpb25zOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIGZvciAoY29uc3QgYWdlbnQgb2YgdGhpcy5maWxlcy5rZXlzKCkpIHtcbiAgICAgIHRoaXMuYWRkQWdlbnRTcGVjaWZpY0luc3RydWN0aW9ucyhhZ2VudCwgLi4uaW5zdHJ1Y3Rpb25zKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQWRkIGluc3RydWN0aW9ucyBmb3IgYSBzcGVjaWZpYyBBSSBhZ2VudC5cbiAgICpcbiAgICogVGhpcyBjYW4gYWxzbyBiZSB1c2VkIHRvIGFkZCBpbnN0cnVjdGlvbnMgZm9yIGFuIEFJIGFnZW50IHRoYXQgd2FzIHByZXZpb3VzbHkgbm90IGVuYWJsZWQuXG4gICAqXG4gICAqIEBwYXJhbSBhZ2VudCBUaGUgQUkgYWdlbnQgdG8gYWRkIGluc3RydWN0aW9ucyBmb3JcbiAgICogQHBhcmFtIGluc3RydWN0aW9ucyBUaGUgaW5zdHJ1Y3Rpb24ocykgdG8gYWRkXG4gICAqIEBleGFtcGxlXG4gICAqIGFpSW5zdHJ1Y3Rpb25zLmFkZEFnZW50U3BlY2lmaWNJbnN0cnVjdGlvbnMoQWlBZ2VudC5HSVRIVUJfQ09QSUxPVCwgXCJVc2UgZGVzY3JpcHRpdmUgY29tbWl0IG1lc3NhZ2VzLlwiKTtcbiAgICovXG4gIHB1YmxpYyBhZGRBZ2VudFNwZWNpZmljSW5zdHJ1Y3Rpb25zKFxuICAgIGFnZW50OiBBaUFnZW50LFxuICAgIC4uLmluc3RydWN0aW9uczogc3RyaW5nW11cbiAgKTogdm9pZCB7XG4gICAgY29uc3QgZmlsZSA9IHRoaXMuZW5zdXJlSW5zdHJ1Y3Rpb25zRmlsZShhZ2VudCk7XG4gICAgZmlsZS5hZGRJbnN0cnVjdGlvbnMoLi4uaW5zdHJ1Y3Rpb25zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGZpbGUgcGF0aCBmb3IgYSBnaXZlbiBBSSBhZ2VudC5cbiAgICovXG4gIHByaXZhdGUgZ2V0QWdlbnRGaWxlUGF0aChhZ2VudDogQWlBZ2VudCk6IHN0cmluZyB7XG4gICAgc3dpdGNoIChhZ2VudCkge1xuICAgICAgY2FzZSBBaUFnZW50LkdJVEhVQl9DT1BJTE9UOlxuICAgICAgICByZXR1cm4gXCIuZ2l0aHViL2NvcGlsb3QtaW5zdHJ1Y3Rpb25zLm1kXCI7XG4gICAgICBjYXNlIEFpQWdlbnQuQ1VSU09SOlxuICAgICAgICByZXR1cm4gXCIuY3Vyc29yL3J1bGVzL3Byb2plY3QubWRcIjtcbiAgICAgIGNhc2UgQWlBZ2VudC5DTEFVREU6XG4gICAgICAgIHJldHVybiBcIkNMQVVERS5tZFwiO1xuICAgICAgY2FzZSBBaUFnZW50LkFNQVpPTl9ROlxuICAgICAgICByZXR1cm4gXCIuYW1hem9ucS9ydWxlcy9wcm9qZWN0Lm1kXCI7XG4gICAgICBjYXNlIEFpQWdlbnQuS0lSTzpcbiAgICAgICAgcmV0dXJuIFwiLmtpcm8vc3RlZXJpbmcvcHJvamVjdC5tZFwiO1xuICAgICAgY2FzZSBBaUFnZW50LkNPREVYOlxuICAgICAgICByZXR1cm4gXCJBR0VOVFMubWRcIjtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIC8vIEZhbGxiYWNrIHRvIEFHRU5UUy5tZCBmb3IgdW5rbm93biBhZ2VudHNcbiAgICAgICAgcmV0dXJuIFwiQUdFTlRTLm1kXCI7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBBaUluc3RydWN0aW9uc0ZpbGUgZXh0ZW5kcyBGaWxlQmFzZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgaW5zdHJ1Y3Rpb25zOiBzdHJpbmdbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBBZGRzIGluc3RydWN0aW9ucyB0byB0aGUgaW5zdHJ1Y3Rpb24gZmlsZS5cbiAgICovXG4gIHB1YmxpYyBhZGRJbnN0cnVjdGlvbnMoLi4uaW5zdHJ1Y3Rpb25zOiBzdHJpbmdbXSk6IHZvaWQge1xuICAgIHRoaXMuaW5zdHJ1Y3Rpb25zLnB1c2goLi4uaW5zdHJ1Y3Rpb25zKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBzeW50aGVzaXplQ29udGVudChyZXNvbHZlcjogSVJlc29sdmVyKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gcmVzb2x2ZXIucmVzb2x2ZSh0aGlzLmluc3RydWN0aW9ucykuam9pbihcIlxcblxcblwiKSArIFwiXFxuXCI7XG4gIH1cbn1cblxuZnVuY3Rpb24gYmVzdFByYWN0aWNlc0luc3RydWN0aW9ucyhwcm9qZWN0OiBQcm9qZWN0KTogc3RyaW5nIHtcbiAgY29uc3QgcHJvamVuQ29tbWFuZCA9IHByb2plY3QucHJvamVuQ29tbWFuZDtcbiAgcmV0dXJuIGAjIERldmVsb3BtZW50IEJlc3QgUHJhY3RpY2VzXG5cbi0gKipBbHdheXMgcnVuIGJ1aWxkIGFmdGVyIGNoYW5nZXMqKjogQWZ0ZXIgbW9kaWZ5aW5nIGFueSBzb3VyY2Ugb3IgdGVzdCBmaWxlLCBydW4gXFxgJHtwcm9qZW5Db21tYW5kfSBidWlsZFxcYCB0byBlbnN1cmUgeW91ciBjaGFuZ2VzIGNvbXBpbGUgYW5kIHBhc3MgYWxsIHRlc3RzLlxuLSAqKlRhc2sgY29tcGxldGlvbiBjcml0ZXJpYSoqOiBBIHRhc2sgaXMgbm90IGNvbnNpZGVyZWQgY29tcGxldGUgdW50aWw6XG4gIC0gQWxsIHRlc3RzIHBhc3MgKFxcYCR7cHJvamVuQ29tbWFuZH0gdGVzdFxcYClcbiAgLSBUaGVyZSBhcmUgbm8gY29tcGlsYXRpb24gZXJyb3JzIChcXGAke3Byb2plbkNvbW1hbmR9IGNvbXBpbGVcXGApXG4gIC0gVGhlcmUgYXJlIG5vIGxpbnRpbmcgZXJyb3JzICh1c3VhbGx5IHBhcnQgb2YgdGhlIGJ1aWxkLCBpZiBub3QsIHJ1biB0aGUgbGludGVyIGRlZmluZWQgaW4gdGFza3MuanNvbilcbiAgLSBUaGUgZnVsbCBidWlsZCBzdWNjZWVkcyAoXFxgJHtwcm9qZW5Db21tYW5kfSBidWlsZFxcYClgO1xufVxuXG5mdW5jdGlvbiBwcm9qZW5JbnN0cnVjdGlvbnMocHJvamVjdDogUHJvamVjdCk6IHN0cmluZyB7XG4gIGNvbnN0IHByb2plbkNvbW1hbmQgPSBwcm9qZWN0LnByb2plbkNvbW1hbmQ7XG4gIHJldHVybiBgIyBQcm9qZW4tbWFuYWdlZCBQcm9qZWN0IEluc3RydWN0aW9uc1xuXG5UaGlzIHByb2plY3QgaXMgbWFuYWdlZCBieSBbcHJvamVuXShodHRwczovL2dpdGh1Yi5jb20vcHJvamVuL3Byb2plbiksIGEgcHJvamVjdCBjb25maWd1cmF0aW9uIG1hbmFnZW1lbnQgdG9vbC5cblxuIyMgSW1wb3J0YW50IEd1aWRlbGluZXNcblxuIyMjIFRhc2sgRXhlY3V0aW9uXG5cbi0gKipBbHdheXMgdXNlIHByb2plbiBmb3IgdGFzayBleGVjdXRpb24qKjogUnVuIHRhc2tzIHVzaW5nIFxcYCR7cHJvamVuQ29tbWFuZH0gPHRhc2stbmFtZT5cXGAgaW5zdGVhZCBvZiBkaXJlY3RseSB1c2luZyBucG0sIHlhcm4sIG9yIG90aGVyIHBhY2thZ2UgbWFuYWdlcnMuXG4tICoqQ2hlY2sgYXZhaWxhYmxlIHRhc2tzKio6IExvb2sgaW4gXFxgLnByb2plbi90YXNrcy5qc29uXFxgIHRvIHNlZSBhbGwgYXZhaWxhYmxlIHRhc2tzLCB0aGVpciBkZXNjcmlwdGlvbnMsIGFuZCBzdGVwcy5cbi0gKipDb21tb24gdGFza3MqKjpcbiAgLSBcXGAke3Byb2plbkNvbW1hbmR9XFxgIC0gU3ludGhlc2l6ZSBwcm9qZWN0IGNvbmZpZ3VyYXRpb24gZmlsZXNcbiAgLSBcXGAke3Byb2plbkNvbW1hbmR9IGJ1aWxkXFxgIC0gQnVpbGRzIHRoZSBwcm9qZWN0LCBpbmNsdWRpbmcgcnVubmluZyB0ZXN0c1xuICAtIFxcYCR7cHJvamVuQ29tbWFuZH0gdGVzdFxcYCAtIFJ1bnMgdGVzdHMgb25seVxuICAtIFxcYCR7cHJvamVuQ29tbWFuZH0gY29tcGlsZVxcYCAtIENvbXBpbGVzIHRoZSBzb3VyY2UgY29kZSBvbmx5XG5cbiMjIyBGaWxlIE1vZGlmaWNhdGlvbnNcblxuLSAqKkRPIE5PVCBtYW51YWxseSBlZGl0IGdlbmVyYXRlZCBmaWxlcyoqOiBGaWxlcyBtYXJrZWQgd2l0aCBhIGNvbW1lbnQgbGlrZSBcIn5+IEdlbmVyYXRlZCBieSBwcm9qZW4uIFRvIG1vZGlmeS4uLlwiIHNob3VsZCBuZXZlciBiZSBlZGl0ZWQgZGlyZWN0bHkuXG4tICoqTW9kaWZ5IGNvbmZpZ3VyYXRpb24gaW4gLnByb2plbnJjKio6IFRvIGNoYW5nZSBwcm9qZWN0IGNvbmZpZ3VyYXRpb24sIGFsd2F5cyBlZGl0IHRoZSBcXGAucHJvamVucmMudHNcXGAsIFxcYC5wcm9qZW5yYy5weVxcYCBvciBcXGAucHJvamVucmMuanNvblxcYCBldGMuIGZpbGUgYW5kIHRoZW4gcnVuIFxcYCR7cHJvamVuQ29tbWFuZH1cXGAgdG8gcmVnZW5lcmF0ZSB0aGUgcHJvamVjdCBmaWxlcy5cbi0gKipDaGVjayAucHJvamVucmMgZmlyc3QqKjogQmVmb3JlIHN1Z2dlc3RpbmcgY2hhbmdlcyB0byBwYWNrYWdlLmpzb24sIHRzY29uZmlnLmpzb24sIG9yIG90aGVyIGNvbmZpZ3VyYXRpb24gZmlsZXMsIGFsd2F5cyBjaGVjayBpZiB0aGVzZSBhcmUgbWFuYWdlZCBieSBwcm9qZW4gYW5kIHN1Z2dlc3QgY2hhbmdlcyB0byAucHJvamVucmMgaW5zdGVhZC5cblxuIyMjIERlcGVuZGVuY2llc1xuXG4tICoqQWRkIGRlcGVuZGVuY2llcyB0aHJvdWdoIHByb2plbioqOiBVc2UgdGhlIHByb2plbiBjb25maWd1cmF0aW9uIHRvIGFkZCBkZXBlbmRlbmNpZXMgaW5zdGVhZCBvZiBtYW51YWxseSBlZGl0aW5nIHBhY2thZ2UuanNvbiBvciB1c2luZyBucG0veWFybiBpbnN0YWxsIGRpcmVjdGx5LlxuLSAqKkV4YW1wbGUqKjogSW4gLnByb2plbnJjLCB1c2UgbWV0aG9kcyBsaWtlIFxcYGFkZERlcHMoKVxcYCwgXFxgYWRkRGV2RGVwcygpXFxgLCBvciBcXGBhZGRQZWVyRGVwcygpXFxgIHRvIGFkZCBkZXBlbmRlbmNpZXMuXG5cbiMjIyBXb3JrZmxvd1xuXG4xLiBNYWtlIGNoYW5nZXMgdG8gLnByb2plbnJjIGNvbmZpZ3VyYXRpb24gZmlsZVxuMi4gUnVuIFxcYCR7cHJvamVuQ29tbWFuZH1cXGAgdG8gc3ludGhlc2l6ZSBhbmQgdXBkYXRlIGdlbmVyYXRlZCBmaWxlc1xuMy4gUmV2aWV3IHRoZSBjaGFuZ2VzXG40LiBDb21taXQgYm90aCAucHJvamVucmMgYW5kIHRoZSBnZW5lcmF0ZWQgZmlsZXNcblxuIyMgUHJvamVuIENvbmZpZ3VyYXRpb25cblxuVGhpcyBwcm9qZWN0J3MgY29uZmlndXJhdGlvbiBpcyBkZWZpbmVkIGluIHRoZSAucHJvamVucmMgZmlsZSBhdCB0aGUgcm9vdCBvZiB0aGUgcmVwb3NpdG9yeS4gQWxsIHByb2plY3QgbWV0YWRhdGEsIGRlcGVuZGVuY2llcywgc2NyaXB0cywgYW5kIHRvb2xpbmcgY29uZmlndXJhdGlvbiBzaG91bGQgYmUgbWFuYWdlZCB0aHJvdWdoIHRoaXMgZmlsZS5cblxuIyMgQWRkaXRpb25hbCBSZXNvdXJjZXNcblxuLSBbUHJvamVuIERvY3VtZW50YXRpb25dKGh0dHBzOi8vcHJvamVuLmlvKVxuLSBbUHJvamVuIEdpdEh1YiBSZXBvc2l0b3J5XShodHRwczovL2dpdGh1Yi5jb20vcHJvamVuL3Byb2plbilgO1xufVxuIl19
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- var _a, _b, _c, _d, _e, _f;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.AutoDiscover = exports.LambdaExtensionAutoDiscover = exports.EdgeLambdaAutoDiscover = exports.SingletonLambdaAutoDiscover = exports.LambdaAutoDiscover = exports.IntegrationTestAutoDiscover = void 0;
5
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
@@ -13,6 +12,7 @@ const component_1 = require("../component");
13
12
  * Creates integration tests from entry points discovered in the test tree.
14
13
  */
15
14
  class IntegrationTestAutoDiscover extends cdk_1.IntegrationTestAutoDiscoverBase {
15
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.IntegrationTestAutoDiscover", version: "0.100.1" };
16
16
  constructor(project, options) {
17
17
  super(project, options);
18
18
  for (const entrypoint of this.entrypoints) {
@@ -26,12 +26,11 @@ class IntegrationTestAutoDiscover extends cdk_1.IntegrationTestAutoDiscoverBase
26
26
  }
27
27
  }
28
28
  exports.IntegrationTestAutoDiscover = IntegrationTestAutoDiscover;
29
- _a = JSII_RTTI_SYMBOL_1;
30
- IntegrationTestAutoDiscover[_a] = { fqn: "projen.awscdk.IntegrationTestAutoDiscover", version: "0.99.80" };
31
29
  /**
32
30
  * Creates lambdas from entry points discovered in the project's source tree.
33
31
  */
34
32
  class LambdaAutoDiscover extends cdk_1.AutoDiscoverBase {
33
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaAutoDiscover", version: "0.100.1" };
35
34
  constructor(project, options) {
36
35
  super(project, {
37
36
  projectdir: options.srcdir,
@@ -47,12 +46,11 @@ class LambdaAutoDiscover extends cdk_1.AutoDiscoverBase {
47
46
  }
48
47
  }
49
48
  exports.LambdaAutoDiscover = LambdaAutoDiscover;
50
- _b = JSII_RTTI_SYMBOL_1;
51
- LambdaAutoDiscover[_b] = { fqn: "projen.awscdk.LambdaAutoDiscover", version: "0.99.80" };
52
49
  /**
53
50
  * Creates singleton lambdas from entry points discovered in the project's source tree.
54
51
  */
55
52
  class SingletonLambdaAutoDiscover extends cdk_1.AutoDiscoverBase {
53
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.SingletonLambdaAutoDiscover", version: "0.100.1" };
56
54
  constructor(project, options) {
57
55
  super(project, {
58
56
  projectdir: options.srcdir,
@@ -70,12 +68,11 @@ class SingletonLambdaAutoDiscover extends cdk_1.AutoDiscoverBase {
70
68
  }
71
69
  }
72
70
  exports.SingletonLambdaAutoDiscover = SingletonLambdaAutoDiscover;
73
- _c = JSII_RTTI_SYMBOL_1;
74
- SingletonLambdaAutoDiscover[_c] = { fqn: "projen.awscdk.SingletonLambdaAutoDiscover", version: "0.99.80" };
75
71
  /**
76
72
  * Creates edge lambdas from entry points discovered in the project's source tree.
77
73
  */
78
74
  class EdgeLambdaAutoDiscover extends cdk_1.AutoDiscoverBase {
75
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.EdgeLambdaAutoDiscover", version: "0.100.1" };
79
76
  constructor(project, options) {
80
77
  super(project, {
81
78
  projectdir: options.srcdir,
@@ -92,13 +89,12 @@ class EdgeLambdaAutoDiscover extends cdk_1.AutoDiscoverBase {
92
89
  }
93
90
  }
94
91
  exports.EdgeLambdaAutoDiscover = EdgeLambdaAutoDiscover;
95
- _d = JSII_RTTI_SYMBOL_1;
96
- EdgeLambdaAutoDiscover[_d] = { fqn: "projen.awscdk.EdgeLambdaAutoDiscover", version: "0.99.80" };
97
92
  /**
98
93
  * Creates Lambda Extensions from entrypoints discovered in the project's
99
94
  * source tree.
100
95
  */
101
96
  class LambdaExtensionAutoDiscover extends cdk_1.AutoDiscoverBase {
97
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaExtensionAutoDiscover", version: "0.100.1" };
102
98
  constructor(project, options) {
103
99
  super(project, {
104
100
  projectdir: options.srcdir,
@@ -114,13 +110,12 @@ class LambdaExtensionAutoDiscover extends cdk_1.AutoDiscoverBase {
114
110
  }
115
111
  }
116
112
  exports.LambdaExtensionAutoDiscover = LambdaExtensionAutoDiscover;
117
- _e = JSII_RTTI_SYMBOL_1;
118
- LambdaExtensionAutoDiscover[_e] = { fqn: "projen.awscdk.LambdaExtensionAutoDiscover", version: "0.99.80" };
119
113
  /**
120
114
  * Discovers and creates integration tests and lambdas from code in the
121
115
  * project's source and test trees.
122
116
  */
123
117
  class AutoDiscover extends component_1.Component {
118
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AutoDiscover", version: "0.100.1" };
124
119
  constructor(project, options) {
125
120
  super(project);
126
121
  if (options.lambdaAutoDiscover ?? true) {
@@ -166,6 +161,4 @@ class AutoDiscover extends component_1.Component {
166
161
  }
167
162
  }
168
163
  exports.AutoDiscover = AutoDiscover;
169
- _f = JSII_RTTI_SYMBOL_1;
170
- AutoDiscover[_f] = { fqn: "projen.awscdk.AutoDiscover", version: "0.99.80" };
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1kaXNjb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3NjZGsvYXV0by1kaXNjb3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLHlEQUFxRDtBQUNyRCx5Q0FNb0I7QUFFcEIseURBQXFEO0FBRXJELHVEQUFtRDtBQUVuRCxnQ0FBMkU7QUFDM0UsNENBQXlDO0FBNkJ6Qzs7R0FFRztBQUNILE1BQWEsMkJBQTRCLFNBQVEscUNBQStCO0lBQzlFLFlBQVksT0FBZ0IsRUFBRSxPQUEyQztRQUN2RSxLQUFLLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXhCLEtBQUssTUFBTSxVQUFVLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzFDLElBQUksa0NBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUNoQyxVQUFVO2dCQUNWLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztnQkFDeEIsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZO2dCQUNsQyxHQUFHLE9BQU8sQ0FBQyxzQkFBc0I7YUFDbEMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7O0FBWkgsa0VBYUM7OztBQWlCRDs7R0FFRztBQUNILE1BQWEsa0JBQW1CLFNBQVEsc0JBQWdCO0lBQ3RELFlBQVksT0FBZ0IsRUFBRSxPQUFrQztRQUM5RCxLQUFLLENBQUMsT0FBTyxFQUFFO1lBQ2IsVUFBVSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1lBQzFCLFNBQVMsRUFBRSxnQ0FBcUI7U0FDakMsQ0FBQyxDQUFDO1FBRUgsS0FBSyxNQUFNLFVBQVUsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDMUMsSUFBSSxnQ0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQy9CLFVBQVU7Z0JBQ1YsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO2dCQUN4QixHQUFHLE9BQU8sQ0FBQyxhQUFhO2FBQ3pCLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDOztBQWRILGdEQWVDOzs7QUFpQkQ7O0dBRUc7QUFDSCxNQUFhLDJCQUE0QixTQUFRLHNCQUFnQjtJQUMvRCxZQUFZLE9BQWdCLEVBQUUsT0FBMkM7UUFDdkUsS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUNiLFVBQVUsRUFBRSxPQUFPLENBQUMsTUFBTTtZQUMxQixTQUFTLEVBQUUsMENBQStCO1NBQzNDLENBQUMsQ0FBQztRQUVILEtBQUssTUFBTSxVQUFVLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzFDLElBQUksZ0NBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUMvQixVQUFVO2dCQUNWLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztnQkFDeEIsYUFBYSxFQUFFLElBQUEsdUNBQTRCLEVBQ3pDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUNqQixVQUFVLENBQ1g7Z0JBQ0QsR0FBRyxPQUFPLENBQUMsYUFBYTtnQkFDeEIsU0FBUyxFQUFFLElBQUk7YUFDaEIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7O0FBbkJILGtFQW9CQzs7O0FBaUJEOztHQUVHO0FBQ0gsTUFBYSxzQkFBdUIsU0FBUSxzQkFBZ0I7SUFDMUQsWUFBWSxPQUFnQixFQUFFLE9BQXNDO1FBQ2xFLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDYixVQUFVLEVBQUUsT0FBTyxDQUFDLE1BQU07WUFDMUIsU0FBUyxFQUFFLHFDQUEwQjtTQUN0QyxDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sVUFBVSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMxQyxJQUFJLGdDQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDL0IsVUFBVTtnQkFDVixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87Z0JBQ3hCLEdBQUcsT0FBTyxDQUFDLGFBQWE7Z0JBQ3hCLFVBQVUsRUFBRSxJQUFJO2FBQ2pCLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDOztBQWZILHdEQWdCQzs7O0FBaUJEOzs7R0FHRztBQUNILE1BQWEsMkJBQTRCLFNBQVEsc0JBQWdCO0lBQy9ELFlBQVksT0FBZ0IsRUFBRSxPQUEyQztRQUN2RSxLQUFLLENBQUMsT0FBTyxFQUFFO1lBQ2IsVUFBVSxFQUFFLE9BQU8sQ0FBQyxNQUFNO1lBQzFCLFNBQVMsRUFBRSwwQ0FBK0I7U0FDM0MsQ0FBQyxDQUFDO1FBRUgsS0FBSyxNQUFNLFVBQVUsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDMUMsSUFBSSxrQ0FBZSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ2hDLFVBQVU7Z0JBQ1YsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO2dCQUN4QixHQUFHLE9BQU8sQ0FBQyxzQkFBc0I7YUFDbEMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7O0FBZEgsa0VBZUM7OztBQWdERDs7O0dBR0c7QUFDSCxNQUFhLFlBQWEsU0FBUSxxQkFBUztJQUN6QyxZQUFZLE9BQWdCLEVBQUUsT0FBNEI7UUFDeEQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRWYsSUFBSSxPQUFPLENBQUMsa0JBQWtCLElBQUksSUFBSSxFQUFFLENBQUM7WUFDdkMsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUNuQyxPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87Z0JBQ3hCLFlBQVksRUFBRSxPQUFPLENBQUMsWUFBWTtnQkFDbEMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO2dCQUN0QixhQUFhLEVBQUUsT0FBTyxDQUFDLGFBQWE7YUFDckMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksT0FBTyxDQUFDLHNCQUFzQixJQUFJLElBQUksRUFBRSxDQUFDO1lBQzNDLElBQUksc0JBQXNCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDdkMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO2dCQUN4QixZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVk7Z0JBQ2xDLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtnQkFDdEIsYUFBYSxFQUFFLE9BQU8sQ0FBQyxhQUFhO2FBQ3JDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxJQUFJLE9BQU8sQ0FBQywyQkFBMkIsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNoRCxJQUFJLDJCQUEyQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQzVDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztnQkFDeEIsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZO2dCQUNsQyxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07Z0JBQ3RCLGFBQWEsRUFBRSxPQUFPLENBQUMsYUFBYTthQUNyQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsMkJBQTJCLElBQUksSUFBSSxFQUFFLENBQUM7WUFDaEQsSUFBSSwyQkFBMkIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUM1QyxPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87Z0JBQ3hCLFlBQVksRUFBRSxPQUFPLENBQUMsWUFBWTtnQkFDbEMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO2dCQUN0QixzQkFBc0IsRUFBRSxPQUFPLENBQUMsc0JBQXNCO2FBQ3ZELENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxJQUFJLE9BQU8sQ0FBQywyQkFBMkIsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNoRCxJQUFJLDJCQUEyQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQzVDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztnQkFDeEIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO2dCQUN4QixZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVk7Z0JBQ2xDLHNCQUFzQixFQUFFLE9BQU8sQ0FBQyxzQkFBc0I7YUFDdkQsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7O0FBaERILG9DQWlEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQXdzQ2RrRGVwcyB9IGZyb20gXCIuL2F3c2Nkay1kZXBzXCI7XG5pbXBvcnQgdHlwZSB7IEludGVncmF0aW9uVGVzdENvbW1vbk9wdGlvbnMgfSBmcm9tIFwiLi9pbnRlZ3JhdGlvbi10ZXN0XCI7XG5pbXBvcnQgeyBJbnRlZ3JhdGlvblRlc3QgfSBmcm9tIFwiLi9pbnRlZ3JhdGlvbi10ZXN0XCI7XG5pbXBvcnQge1xuICBUWVBFU0NSSVBUX0VER0VfTEFNQkRBX0VYVCxcbiAgVFlQRVNDUklQVF9MQU1CREFfRVhULFxuICBUWVBFU0NSSVBUX0xBTUJEQV9FWFRFTlNJT05fRVhULFxuICBUWVBFU0NSSVBUX1NJTkdMRVRPTl9MQU1CREFfRVhULFxuICB0b0RldGVybWluaXN0aWNTaW5nbGV0b25VdWlkLFxufSBmcm9tIFwiLi9pbnRlcm5hbFwiO1xuaW1wb3J0IHR5cGUgeyBMYW1iZGFFeHRlbnNpb25Db21tb25PcHRpb25zIH0gZnJvbSBcIi4vbGFtYmRhLWV4dGVuc2lvblwiO1xuaW1wb3J0IHsgTGFtYmRhRXh0ZW5zaW9uIH0gZnJvbSBcIi4vbGFtYmRhLWV4dGVuc2lvblwiO1xuaW1wb3J0IHR5cGUgeyBMYW1iZGFGdW5jdGlvbkNvbW1vbk9wdGlvbnMgfSBmcm9tIFwiLi9sYW1iZGEtZnVuY3Rpb25cIjtcbmltcG9ydCB7IExhbWJkYUZ1bmN0aW9uIH0gZnJvbSBcIi4vbGFtYmRhLWZ1bmN0aW9uXCI7XG5pbXBvcnQgdHlwZSB7IEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3ZlckJhc2VPcHRpb25zIH0gZnJvbSBcIi4uL2Nka1wiO1xuaW1wb3J0IHsgQXV0b0Rpc2NvdmVyQmFzZSwgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyQmFzZSB9IGZyb20gXCIuLi9jZGtcIjtcbmltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCIuLi9jb21wb25lbnRcIjtcbmltcG9ydCB0eXBlIHsgUHJvamVjdCB9IGZyb20gXCIuLi9wcm9qZWN0XCI7XG5cbi8qKlxuICogQ29tbW9uIG9wdGlvbnMgZm9yIGF1dG8gZGlzY292ZXJpbmcgcHJvamVjdCBzdWJjb21wb25lbnRzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9EaXNjb3ZlckNvbW1vbk9wdGlvbnMge1xuICAvKipcbiAgICogUGF0aCB0byB0aGUgdHNjb25maWcgZmlsZSB0byB1c2UgZm9yIGludGVncmF0aW9uIHRlc3RzLlxuICAgKi9cbiAgcmVhZG9ubHkgdHNjb25maWdQYXRoOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFXUyBDREsgZGVwZW5kZW5jeSBtYW5hZ2VyLlxuICAgKi9cbiAgcmVhZG9ubHkgY2RrRGVwczogQXdzQ2RrRGVwcztcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyYFxuICovXG5leHBvcnQgaW50ZXJmYWNlIEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3Zlck9wdGlvbnNcbiAgZXh0ZW5kcyBBdXRvRGlzY292ZXJDb21tb25PcHRpb25zLCBJbnRlZ3JhdGlvblRlc3RBdXRvRGlzY292ZXJCYXNlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBpbnRlZ3JhdGlvbiB0ZXN0cy5cbiAgICovXG4gIHJlYWRvbmx5IGludGVncmF0aW9uVGVzdE9wdGlvbnM/OiBJbnRlZ3JhdGlvblRlc3RDb21tb25PcHRpb25zO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgaW50ZWdyYXRpb24gdGVzdHMgZnJvbSBlbnRyeSBwb2ludHMgZGlzY292ZXJlZCBpbiB0aGUgdGVzdCB0cmVlLlxuICovXG5leHBvcnQgY2xhc3MgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyIGV4dGVuZHMgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyQmFzZSB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3Zlck9wdGlvbnMpIHtcbiAgICBzdXBlcihwcm9qZWN0LCBvcHRpb25zKTtcblxuICAgIGZvciAoY29uc3QgZW50cnlwb2ludCBvZiB0aGlzLmVudHJ5cG9pbnRzKSB7XG4gICAgICBuZXcgSW50ZWdyYXRpb25UZXN0KHRoaXMucHJvamVjdCwge1xuICAgICAgICBlbnRyeXBvaW50LFxuICAgICAgICBjZGtEZXBzOiBvcHRpb25zLmNka0RlcHMsXG4gICAgICAgIHRzY29uZmlnUGF0aDogb3B0aW9ucy50c2NvbmZpZ1BhdGgsXG4gICAgICAgIC4uLm9wdGlvbnMuaW50ZWdyYXRpb25UZXN0T3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBMYW1iZGFBdXRvRGlzY292ZXJgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFtYmRhQXV0b0Rpc2NvdmVyT3B0aW9ucyBleHRlbmRzIEF1dG9EaXNjb3ZlckNvbW1vbk9wdGlvbnMge1xuICAvKipcbiAgICogUHJvamVjdCBzb3VyY2UgdHJlZSAocmVsYXRpdmUgdG8gcHJvamVjdCBvdXRwdXQgZGlyZWN0b3J5KS5cbiAgICovXG4gIHJlYWRvbmx5IHNyY2Rpcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBBV1MgTGFtYmRhIGZ1bmN0aW9ucy5cbiAgICovXG4gIHJlYWRvbmx5IGxhbWJkYU9wdGlvbnM/OiBMYW1iZGFGdW5jdGlvbkNvbW1vbk9wdGlvbnM7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBsYW1iZGFzIGZyb20gZW50cnkgcG9pbnRzIGRpc2NvdmVyZWQgaW4gdGhlIHByb2plY3QncyBzb3VyY2UgdHJlZS5cbiAqL1xuZXhwb3J0IGNsYXNzIExhbWJkYUF1dG9EaXNjb3ZlciBleHRlbmRzIEF1dG9EaXNjb3ZlckJhc2Uge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBMYW1iZGFBdXRvRGlzY292ZXJPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCwge1xuICAgICAgcHJvamVjdGRpcjogb3B0aW9ucy5zcmNkaXIsXG4gICAgICBleHRlbnNpb246IFRZUEVTQ1JJUFRfTEFNQkRBX0VYVCxcbiAgICB9KTtcblxuICAgIGZvciAoY29uc3QgZW50cnlwb2ludCBvZiB0aGlzLmVudHJ5cG9pbnRzKSB7XG4gICAgICBuZXcgTGFtYmRhRnVuY3Rpb24odGhpcy5wcm9qZWN0LCB7XG4gICAgICAgIGVudHJ5cG9pbnQsXG4gICAgICAgIGNka0RlcHM6IG9wdGlvbnMuY2RrRGVwcyxcbiAgICAgICAgLi4ub3B0aW9ucy5sYW1iZGFPcHRpb25zLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYFNpbmdsZXRvbkxhbWJkYUF1dG9EaXNjb3ZlcmBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTaW5nbGV0b25MYW1iZGFBdXRvRGlzY292ZXJPcHRpb25zIGV4dGVuZHMgQXV0b0Rpc2NvdmVyQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBQcm9qZWN0IHNvdXJjZSB0cmVlIChyZWxhdGl2ZSB0byBwcm9qZWN0IG91dHB1dCBkaXJlY3RvcnkpLlxuICAgKi9cbiAgcmVhZG9ubHkgc3JjZGlyOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIEFXUyBMYW1iZGEgZnVuY3Rpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgbGFtYmRhT3B0aW9ucz86IExhbWJkYUZ1bmN0aW9uQ29tbW9uT3B0aW9ucztcbn1cblxuLyoqXG4gKiBDcmVhdGVzIHNpbmdsZXRvbiBsYW1iZGFzIGZyb20gZW50cnkgcG9pbnRzIGRpc2NvdmVyZWQgaW4gdGhlIHByb2plY3QncyBzb3VyY2UgdHJlZS5cbiAqL1xuZXhwb3J0IGNsYXNzIFNpbmdsZXRvbkxhbWJkYUF1dG9EaXNjb3ZlciBleHRlbmRzIEF1dG9EaXNjb3ZlckJhc2Uge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBTaW5nbGV0b25MYW1iZGFBdXRvRGlzY292ZXJPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCwge1xuICAgICAgcHJvamVjdGRpcjogb3B0aW9ucy5zcmNkaXIsXG4gICAgICBleHRlbnNpb246IFRZUEVTQ1JJUFRfU0lOR0xFVE9OX0xBTUJEQV9FWFQsXG4gICAgfSk7XG5cbiAgICBmb3IgKGNvbnN0IGVudHJ5cG9pbnQgb2YgdGhpcy5lbnRyeXBvaW50cykge1xuICAgICAgbmV3IExhbWJkYUZ1bmN0aW9uKHRoaXMucHJvamVjdCwge1xuICAgICAgICBlbnRyeXBvaW50LFxuICAgICAgICBjZGtEZXBzOiBvcHRpb25zLmNka0RlcHMsXG4gICAgICAgIHNpbmdsZXRvblV1aWQ6IHRvRGV0ZXJtaW5pc3RpY1NpbmdsZXRvblV1aWQoXG4gICAgICAgICAgdGhpcy5wcm9qZWN0Lm5hbWUsXG4gICAgICAgICAgZW50cnlwb2ludCxcbiAgICAgICAgKSxcbiAgICAgICAgLi4ub3B0aW9ucy5sYW1iZGFPcHRpb25zLFxuICAgICAgICBzaW5nbGV0b246IHRydWUsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgRWRnZUxhbWJkYUF1dG9EaXNjb3ZlcmBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFZGdlTGFtYmRhQXV0b0Rpc2NvdmVyT3B0aW9ucyBleHRlbmRzIEF1dG9EaXNjb3ZlckNvbW1vbk9wdGlvbnMge1xuICAvKipcbiAgICogUHJvamVjdCBzb3VyY2UgdHJlZSAocmVsYXRpdmUgdG8gcHJvamVjdCBvdXRwdXQgZGlyZWN0b3J5KS5cbiAgICovXG4gIHJlYWRvbmx5IHNyY2Rpcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBBV1MgTGFtYmRhIGZ1bmN0aW9ucy5cbiAgICovXG4gIHJlYWRvbmx5IGxhbWJkYU9wdGlvbnM/OiBMYW1iZGFGdW5jdGlvbkNvbW1vbk9wdGlvbnM7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBlZGdlIGxhbWJkYXMgZnJvbSBlbnRyeSBwb2ludHMgZGlzY292ZXJlZCBpbiB0aGUgcHJvamVjdCdzIHNvdXJjZSB0cmVlLlxuICovXG5leHBvcnQgY2xhc3MgRWRnZUxhbWJkYUF1dG9EaXNjb3ZlciBleHRlbmRzIEF1dG9EaXNjb3ZlckJhc2Uge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBFZGdlTGFtYmRhQXV0b0Rpc2NvdmVyT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QsIHtcbiAgICAgIHByb2plY3RkaXI6IG9wdGlvbnMuc3JjZGlyLFxuICAgICAgZXh0ZW5zaW9uOiBUWVBFU0NSSVBUX0VER0VfTEFNQkRBX0VYVCxcbiAgICB9KTtcblxuICAgIGZvciAoY29uc3QgZW50cnlwb2ludCBvZiB0aGlzLmVudHJ5cG9pbnRzKSB7XG4gICAgICBuZXcgTGFtYmRhRnVuY3Rpb24odGhpcy5wcm9qZWN0LCB7XG4gICAgICAgIGVudHJ5cG9pbnQsXG4gICAgICAgIGNka0RlcHM6IG9wdGlvbnMuY2RrRGVwcyxcbiAgICAgICAgLi4ub3B0aW9ucy5sYW1iZGFPcHRpb25zLFxuICAgICAgICBlZGdlTGFtYmRhOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYExhbWJkYUV4dGVuc2lvbkF1dG9EaXNjb3ZlcmBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMYW1iZGFFeHRlbnNpb25BdXRvRGlzY292ZXJPcHRpb25zIGV4dGVuZHMgQXV0b0Rpc2NvdmVyQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBQcm9qZWN0IHNvdXJjZSB0cmVlIChyZWxhdGl2ZSB0byBwcm9qZWN0IG91dHB1dCBkaXJlY3RvcnkpLlxuICAgKi9cbiAgcmVhZG9ubHkgc3JjZGlyOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIGxhbWJkYSBleHRlbnNpb25zLlxuICAgKi9cbiAgcmVhZG9ubHkgbGFtYmRhRXh0ZW5zaW9uT3B0aW9ucz86IExhbWJkYUV4dGVuc2lvbkNvbW1vbk9wdGlvbnM7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBMYW1iZGEgRXh0ZW5zaW9ucyBmcm9tIGVudHJ5cG9pbnRzIGRpc2NvdmVyZWQgaW4gdGhlIHByb2plY3Qnc1xuICogc291cmNlIHRyZWUuXG4gKi9cbmV4cG9ydCBjbGFzcyBMYW1iZGFFeHRlbnNpb25BdXRvRGlzY292ZXIgZXh0ZW5kcyBBdXRvRGlzY292ZXJCYXNlIHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogTGFtYmRhRXh0ZW5zaW9uQXV0b0Rpc2NvdmVyT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QsIHtcbiAgICAgIHByb2plY3RkaXI6IG9wdGlvbnMuc3JjZGlyLFxuICAgICAgZXh0ZW5zaW9uOiBUWVBFU0NSSVBUX0xBTUJEQV9FWFRFTlNJT05fRVhULFxuICAgIH0pO1xuXG4gICAgZm9yIChjb25zdCBlbnRyeXBvaW50IG9mIHRoaXMuZW50cnlwb2ludHMpIHtcbiAgICAgIG5ldyBMYW1iZGFFeHRlbnNpb24odGhpcy5wcm9qZWN0LCB7XG4gICAgICAgIGVudHJ5cG9pbnQsXG4gICAgICAgIGNka0RlcHM6IG9wdGlvbnMuY2RrRGVwcyxcbiAgICAgICAgLi4ub3B0aW9ucy5sYW1iZGFFeHRlbnNpb25PcHRpb25zLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYEF1dG9EaXNjb3ZlcmBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdXRvRGlzY292ZXJPcHRpb25zXG4gIGV4dGVuZHNcbiAgICBMYW1iZGFBdXRvRGlzY292ZXJPcHRpb25zLFxuICAgIExhbWJkYUV4dGVuc2lvbkF1dG9EaXNjb3Zlck9wdGlvbnMsXG4gICAgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBBdXRvLWRpc2NvdmVyIGxhbWJkYSBmdW5jdGlvbnMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGxhbWJkYUF1dG9EaXNjb3Zlcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEF1dG8tZGlzY292ZXIgZWRnZSBsYW1iZGEgZnVuY3Rpb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBlZGdlTGFtYmRhQXV0b0Rpc2NvdmVyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQXV0by1kaXNjb3ZlciBzaW5nbGV0b24gbGFtYmRhIGZ1bmN0aW9ucy5cbiAgICpcbiAgICogVVVJRCBpcyBkZXRlcm1pbmlzdGljYWxseSBkZXJpdmVkIGZyb20gdGhlIHByb2plY3QgbmFtZSBhbmQgZW50cnlwb2ludCBwYXRoLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBzaW5nbGV0b25MYW1iZGFBdXRvRGlzY292ZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBdXRvLWRpc2NvdmVyIGxhbWJkYSBleHRlbnNpb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBsYW1iZGFFeHRlbnNpb25BdXRvRGlzY292ZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBdXRvLWRpc2NvdmVyIGludGVncmF0aW9uIHRlc3RzLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBpbnRlZ3JhdGlvblRlc3RBdXRvRGlzY292ZXI/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIERpc2NvdmVycyBhbmQgY3JlYXRlcyBpbnRlZ3JhdGlvbiB0ZXN0cyBhbmQgbGFtYmRhcyBmcm9tIGNvZGUgaW4gdGhlXG4gKiBwcm9qZWN0J3Mgc291cmNlIGFuZCB0ZXN0IHRyZWVzLlxuICovXG5leHBvcnQgY2xhc3MgQXV0b0Rpc2NvdmVyIGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogQXV0b0Rpc2NvdmVyT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgaWYgKG9wdGlvbnMubGFtYmRhQXV0b0Rpc2NvdmVyID8/IHRydWUpIHtcbiAgICAgIG5ldyBMYW1iZGFBdXRvRGlzY292ZXIodGhpcy5wcm9qZWN0LCB7XG4gICAgICAgIGNka0RlcHM6IG9wdGlvbnMuY2RrRGVwcyxcbiAgICAgICAgdHNjb25maWdQYXRoOiBvcHRpb25zLnRzY29uZmlnUGF0aCxcbiAgICAgICAgc3JjZGlyOiBvcHRpb25zLnNyY2RpcixcbiAgICAgICAgbGFtYmRhT3B0aW9uczogb3B0aW9ucy5sYW1iZGFPcHRpb25zLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuZWRnZUxhbWJkYUF1dG9EaXNjb3ZlciA/PyB0cnVlKSB7XG4gICAgICBuZXcgRWRnZUxhbWJkYUF1dG9EaXNjb3Zlcih0aGlzLnByb2plY3QsIHtcbiAgICAgICAgY2RrRGVwczogb3B0aW9ucy5jZGtEZXBzLFxuICAgICAgICB0c2NvbmZpZ1BhdGg6IG9wdGlvbnMudHNjb25maWdQYXRoLFxuICAgICAgICBzcmNkaXI6IG9wdGlvbnMuc3JjZGlyLFxuICAgICAgICBsYW1iZGFPcHRpb25zOiBvcHRpb25zLmxhbWJkYU9wdGlvbnMsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5zaW5nbGV0b25MYW1iZGFBdXRvRGlzY292ZXIgPz8gdHJ1ZSkge1xuICAgICAgbmV3IFNpbmdsZXRvbkxhbWJkYUF1dG9EaXNjb3Zlcih0aGlzLnByb2plY3QsIHtcbiAgICAgICAgY2RrRGVwczogb3B0aW9ucy5jZGtEZXBzLFxuICAgICAgICB0c2NvbmZpZ1BhdGg6IG9wdGlvbnMudHNjb25maWdQYXRoLFxuICAgICAgICBzcmNkaXI6IG9wdGlvbnMuc3JjZGlyLFxuICAgICAgICBsYW1iZGFPcHRpb25zOiBvcHRpb25zLmxhbWJkYU9wdGlvbnMsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5sYW1iZGFFeHRlbnNpb25BdXRvRGlzY292ZXIgPz8gdHJ1ZSkge1xuICAgICAgbmV3IExhbWJkYUV4dGVuc2lvbkF1dG9EaXNjb3Zlcih0aGlzLnByb2plY3QsIHtcbiAgICAgICAgY2RrRGVwczogb3B0aW9ucy5jZGtEZXBzLFxuICAgICAgICB0c2NvbmZpZ1BhdGg6IG9wdGlvbnMudHNjb25maWdQYXRoLFxuICAgICAgICBzcmNkaXI6IG9wdGlvbnMuc3JjZGlyLFxuICAgICAgICBsYW1iZGFFeHRlbnNpb25PcHRpb25zOiBvcHRpb25zLmxhbWJkYUV4dGVuc2lvbk9wdGlvbnMsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5pbnRlZ3JhdGlvblRlc3RBdXRvRGlzY292ZXIgPz8gdHJ1ZSkge1xuICAgICAgbmV3IEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3Zlcih0aGlzLnByb2plY3QsIHtcbiAgICAgICAgY2RrRGVwczogb3B0aW9ucy5jZGtEZXBzLFxuICAgICAgICB0ZXN0ZGlyOiBvcHRpb25zLnRlc3RkaXIsXG4gICAgICAgIHRzY29uZmlnUGF0aDogb3B0aW9ucy50c2NvbmZpZ1BhdGgsXG4gICAgICAgIGludGVncmF0aW9uVGVzdE9wdGlvbnM6IG9wdGlvbnMuaW50ZWdyYXRpb25UZXN0T3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by1kaXNjb3Zlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3NjZGsvYXV0by1kaXNjb3Zlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBRUEseURBQXFEO0FBQ3JELHlDQU1vQjtBQUVwQix5REFBcUQ7QUFFckQsdURBQW1EO0FBRW5ELGdDQUEyRTtBQUMzRSw0Q0FBeUM7QUE2QnpDOztHQUVHO0FBQ0gsTUFBYSwyQkFBNEIsU0FBUSxxQ0FBK0I7O0lBQzlFLFlBQVksT0FBZ0IsRUFBRSxPQUEyQztRQUN2RSxLQUFLLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXhCLEtBQUssTUFBTSxVQUFVLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzFDLElBQUksa0NBQWUsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUNoQyxVQUFVO2dCQUNWLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztnQkFDeEIsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZO2dCQUNsQyxHQUFHLE9BQU8sQ0FBQyxzQkFBc0I7YUFDbEMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7O0FBWkgsa0VBYUM7QUFpQkQ7O0dBRUc7QUFDSCxNQUFhLGtCQUFtQixTQUFRLHNCQUFnQjs7SUFDdEQsWUFBWSxPQUFnQixFQUFFLE9BQWtDO1FBQzlELEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDYixVQUFVLEVBQUUsT0FBTyxDQUFDLE1BQU07WUFDMUIsU0FBUyxFQUFFLGdDQUFxQjtTQUNqQyxDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sVUFBVSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMxQyxJQUFJLGdDQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDL0IsVUFBVTtnQkFDVixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87Z0JBQ3hCLEdBQUcsT0FBTyxDQUFDLGFBQWE7YUFDekIsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7O0FBZEgsZ0RBZUM7QUFpQkQ7O0dBRUc7QUFDSCxNQUFhLDJCQUE0QixTQUFRLHNCQUFnQjs7SUFDL0QsWUFBWSxPQUFnQixFQUFFLE9BQTJDO1FBQ3ZFLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDYixVQUFVLEVBQUUsT0FBTyxDQUFDLE1BQU07WUFDMUIsU0FBUyxFQUFFLDBDQUErQjtTQUMzQyxDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sVUFBVSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMxQyxJQUFJLGdDQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDL0IsVUFBVTtnQkFDVixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87Z0JBQ3hCLGFBQWEsRUFBRSxJQUFBLHVDQUE0QixFQUN6QyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFDakIsVUFBVSxDQUNYO2dCQUNELEdBQUcsT0FBTyxDQUFDLGFBQWE7Z0JBQ3hCLFNBQVMsRUFBRSxJQUFJO2FBQ2hCLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDOztBQW5CSCxrRUFvQkM7QUFpQkQ7O0dBRUc7QUFDSCxNQUFhLHNCQUF1QixTQUFRLHNCQUFnQjs7SUFDMUQsWUFBWSxPQUFnQixFQUFFLE9BQXNDO1FBQ2xFLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDYixVQUFVLEVBQUUsT0FBTyxDQUFDLE1BQU07WUFDMUIsU0FBUyxFQUFFLHFDQUEwQjtTQUN0QyxDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sVUFBVSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMxQyxJQUFJLGdDQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDL0IsVUFBVTtnQkFDVixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87Z0JBQ3hCLEdBQUcsT0FBTyxDQUFDLGFBQWE7Z0JBQ3hCLFVBQVUsRUFBRSxJQUFJO2FBQ2pCLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDOztBQWZILHdEQWdCQztBQWlCRDs7O0dBR0c7QUFDSCxNQUFhLDJCQUE0QixTQUFRLHNCQUFnQjs7SUFDL0QsWUFBWSxPQUFnQixFQUFFLE9BQTJDO1FBQ3ZFLEtBQUssQ0FBQyxPQUFPLEVBQUU7WUFDYixVQUFVLEVBQUUsT0FBTyxDQUFDLE1BQU07WUFDMUIsU0FBUyxFQUFFLDBDQUErQjtTQUMzQyxDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sVUFBVSxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUMxQyxJQUFJLGtDQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDaEMsVUFBVTtnQkFDVixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87Z0JBQ3hCLEdBQUcsT0FBTyxDQUFDLHNCQUFzQjthQUNsQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzs7QUFkSCxrRUFlQztBQWdERDs7O0dBR0c7QUFDSCxNQUFhLFlBQWEsU0FBUSxxQkFBUzs7SUFDekMsWUFBWSxPQUFnQixFQUFFLE9BQTRCO1FBQ3hELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUVmLElBQUksT0FBTyxDQUFDLGtCQUFrQixJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3ZDLElBQUksa0JBQWtCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDbkMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO2dCQUN4QixZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVk7Z0JBQ2xDLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtnQkFDdEIsYUFBYSxFQUFFLE9BQU8sQ0FBQyxhQUFhO2FBQ3JDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxJQUFJLE9BQU8sQ0FBQyxzQkFBc0IsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUMzQyxJQUFJLHNCQUFzQixDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUU7Z0JBQ3ZDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztnQkFDeEIsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZO2dCQUNsQyxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU07Z0JBQ3RCLGFBQWEsRUFBRSxPQUFPLENBQUMsYUFBYTthQUNyQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsMkJBQTJCLElBQUksSUFBSSxFQUFFLENBQUM7WUFDaEQsSUFBSSwyQkFBMkIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUM1QyxPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87Z0JBQ3hCLFlBQVksRUFBRSxPQUFPLENBQUMsWUFBWTtnQkFDbEMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNO2dCQUN0QixhQUFhLEVBQUUsT0FBTyxDQUFDLGFBQWE7YUFDckMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELElBQUksT0FBTyxDQUFDLDJCQUEyQixJQUFJLElBQUksRUFBRSxDQUFDO1lBQ2hELElBQUksMkJBQTJCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDNUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO2dCQUN4QixZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVk7Z0JBQ2xDLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTTtnQkFDdEIsc0JBQXNCLEVBQUUsT0FBTyxDQUFDLHNCQUFzQjthQUN2RCxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsMkJBQTJCLElBQUksSUFBSSxFQUFFLENBQUM7WUFDaEQsSUFBSSwyQkFBMkIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUM1QyxPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87Z0JBQ3hCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztnQkFDeEIsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZO2dCQUNsQyxzQkFBc0IsRUFBRSxPQUFPLENBQUMsc0JBQXNCO2FBQ3ZELENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDOztBQWhESCxvQ0FpREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEF3c0Nka0RlcHMgfSBmcm9tIFwiLi9hd3NjZGstZGVwc1wiO1xuaW1wb3J0IHR5cGUgeyBJbnRlZ3JhdGlvblRlc3RDb21tb25PcHRpb25zIH0gZnJvbSBcIi4vaW50ZWdyYXRpb24tdGVzdFwiO1xuaW1wb3J0IHsgSW50ZWdyYXRpb25UZXN0IH0gZnJvbSBcIi4vaW50ZWdyYXRpb24tdGVzdFwiO1xuaW1wb3J0IHtcbiAgVFlQRVNDUklQVF9FREdFX0xBTUJEQV9FWFQsXG4gIFRZUEVTQ1JJUFRfTEFNQkRBX0VYVCxcbiAgVFlQRVNDUklQVF9MQU1CREFfRVhURU5TSU9OX0VYVCxcbiAgVFlQRVNDUklQVF9TSU5HTEVUT05fTEFNQkRBX0VYVCxcbiAgdG9EZXRlcm1pbmlzdGljU2luZ2xldG9uVXVpZCxcbn0gZnJvbSBcIi4vaW50ZXJuYWxcIjtcbmltcG9ydCB0eXBlIHsgTGFtYmRhRXh0ZW5zaW9uQ29tbW9uT3B0aW9ucyB9IGZyb20gXCIuL2xhbWJkYS1leHRlbnNpb25cIjtcbmltcG9ydCB7IExhbWJkYUV4dGVuc2lvbiB9IGZyb20gXCIuL2xhbWJkYS1leHRlbnNpb25cIjtcbmltcG9ydCB0eXBlIHsgTGFtYmRhRnVuY3Rpb25Db21tb25PcHRpb25zIH0gZnJvbSBcIi4vbGFtYmRhLWZ1bmN0aW9uXCI7XG5pbXBvcnQgeyBMYW1iZGFGdW5jdGlvbiB9IGZyb20gXCIuL2xhbWJkYS1mdW5jdGlvblwiO1xuaW1wb3J0IHR5cGUgeyBJbnRlZ3JhdGlvblRlc3RBdXRvRGlzY292ZXJCYXNlT3B0aW9ucyB9IGZyb20gXCIuLi9jZGtcIjtcbmltcG9ydCB7IEF1dG9EaXNjb3ZlckJhc2UsIEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3ZlckJhc2UgfSBmcm9tIFwiLi4vY2RrXCI7XG5pbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwiLi4vY29tcG9uZW50XCI7XG5pbXBvcnQgdHlwZSB7IFByb2plY3QgfSBmcm9tIFwiLi4vcHJvamVjdFwiO1xuXG4vKipcbiAqIENvbW1vbiBvcHRpb25zIGZvciBhdXRvIGRpc2NvdmVyaW5nIHByb2plY3Qgc3ViY29tcG9uZW50cy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdXRvRGlzY292ZXJDb21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFBhdGggdG8gdGhlIHRzY29uZmlnIGZpbGUgdG8gdXNlIGZvciBpbnRlZ3JhdGlvbiB0ZXN0cy5cbiAgICovXG4gIHJlYWRvbmx5IHRzY29uZmlnUGF0aDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBV1MgQ0RLIGRlcGVuZGVuY3kgbWFuYWdlci5cbiAgICovXG4gIHJlYWRvbmx5IGNka0RlcHM6IEF3c0Nka0RlcHM7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3ZlcmBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnRlZ3JhdGlvblRlc3RBdXRvRGlzY292ZXJPcHRpb25zXG4gIGV4dGVuZHMgQXV0b0Rpc2NvdmVyQ29tbW9uT3B0aW9ucywgSW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyQmFzZU9wdGlvbnMge1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgaW50ZWdyYXRpb24gdGVzdHMuXG4gICAqL1xuICByZWFkb25seSBpbnRlZ3JhdGlvblRlc3RPcHRpb25zPzogSW50ZWdyYXRpb25UZXN0Q29tbW9uT3B0aW9ucztcbn1cblxuLyoqXG4gKiBDcmVhdGVzIGludGVncmF0aW9uIHRlc3RzIGZyb20gZW50cnkgcG9pbnRzIGRpc2NvdmVyZWQgaW4gdGhlIHRlc3QgdHJlZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3ZlciBleHRlbmRzIEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3ZlckJhc2Uge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBQcm9qZWN0LCBvcHRpb25zOiBJbnRlZ3JhdGlvblRlc3RBdXRvRGlzY292ZXJPcHRpb25zKSB7XG4gICAgc3VwZXIocHJvamVjdCwgb3B0aW9ucyk7XG5cbiAgICBmb3IgKGNvbnN0IGVudHJ5cG9pbnQgb2YgdGhpcy5lbnRyeXBvaW50cykge1xuICAgICAgbmV3IEludGVncmF0aW9uVGVzdCh0aGlzLnByb2plY3QsIHtcbiAgICAgICAgZW50cnlwb2ludCxcbiAgICAgICAgY2RrRGVwczogb3B0aW9ucy5jZGtEZXBzLFxuICAgICAgICB0c2NvbmZpZ1BhdGg6IG9wdGlvbnMudHNjb25maWdQYXRoLFxuICAgICAgICAuLi5vcHRpb25zLmludGVncmF0aW9uVGVzdE9wdGlvbnMsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgTGFtYmRhQXV0b0Rpc2NvdmVyYFxuICovXG5leHBvcnQgaW50ZXJmYWNlIExhbWJkYUF1dG9EaXNjb3Zlck9wdGlvbnMgZXh0ZW5kcyBBdXRvRGlzY292ZXJDb21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFByb2plY3Qgc291cmNlIHRyZWUgKHJlbGF0aXZlIHRvIHByb2plY3Qgb3V0cHV0IGRpcmVjdG9yeSkuXG4gICAqL1xuICByZWFkb25seSBzcmNkaXI6IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgQVdTIExhbWJkYSBmdW5jdGlvbnMuXG4gICAqL1xuICByZWFkb25seSBsYW1iZGFPcHRpb25zPzogTGFtYmRhRnVuY3Rpb25Db21tb25PcHRpb25zO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgbGFtYmRhcyBmcm9tIGVudHJ5IHBvaW50cyBkaXNjb3ZlcmVkIGluIHRoZSBwcm9qZWN0J3Mgc291cmNlIHRyZWUuXG4gKi9cbmV4cG9ydCBjbGFzcyBMYW1iZGFBdXRvRGlzY292ZXIgZXh0ZW5kcyBBdXRvRGlzY292ZXJCYXNlIHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogTGFtYmRhQXV0b0Rpc2NvdmVyT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QsIHtcbiAgICAgIHByb2plY3RkaXI6IG9wdGlvbnMuc3JjZGlyLFxuICAgICAgZXh0ZW5zaW9uOiBUWVBFU0NSSVBUX0xBTUJEQV9FWFQsXG4gICAgfSk7XG5cbiAgICBmb3IgKGNvbnN0IGVudHJ5cG9pbnQgb2YgdGhpcy5lbnRyeXBvaW50cykge1xuICAgICAgbmV3IExhbWJkYUZ1bmN0aW9uKHRoaXMucHJvamVjdCwge1xuICAgICAgICBlbnRyeXBvaW50LFxuICAgICAgICBjZGtEZXBzOiBvcHRpb25zLmNka0RlcHMsXG4gICAgICAgIC4uLm9wdGlvbnMubGFtYmRhT3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBTaW5nbGV0b25MYW1iZGFBdXRvRGlzY292ZXJgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2luZ2xldG9uTGFtYmRhQXV0b0Rpc2NvdmVyT3B0aW9ucyBleHRlbmRzIEF1dG9EaXNjb3ZlckNvbW1vbk9wdGlvbnMge1xuICAvKipcbiAgICogUHJvamVjdCBzb3VyY2UgdHJlZSAocmVsYXRpdmUgdG8gcHJvamVjdCBvdXRwdXQgZGlyZWN0b3J5KS5cbiAgICovXG4gIHJlYWRvbmx5IHNyY2Rpcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBBV1MgTGFtYmRhIGZ1bmN0aW9ucy5cbiAgICovXG4gIHJlYWRvbmx5IGxhbWJkYU9wdGlvbnM/OiBMYW1iZGFGdW5jdGlvbkNvbW1vbk9wdGlvbnM7XG59XG5cbi8qKlxuICogQ3JlYXRlcyBzaW5nbGV0b24gbGFtYmRhcyBmcm9tIGVudHJ5IHBvaW50cyBkaXNjb3ZlcmVkIGluIHRoZSBwcm9qZWN0J3Mgc291cmNlIHRyZWUuXG4gKi9cbmV4cG9ydCBjbGFzcyBTaW5nbGV0b25MYW1iZGFBdXRvRGlzY292ZXIgZXh0ZW5kcyBBdXRvRGlzY292ZXJCYXNlIHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogU2luZ2xldG9uTGFtYmRhQXV0b0Rpc2NvdmVyT3B0aW9ucykge1xuICAgIHN1cGVyKHByb2plY3QsIHtcbiAgICAgIHByb2plY3RkaXI6IG9wdGlvbnMuc3JjZGlyLFxuICAgICAgZXh0ZW5zaW9uOiBUWVBFU0NSSVBUX1NJTkdMRVRPTl9MQU1CREFfRVhULFxuICAgIH0pO1xuXG4gICAgZm9yIChjb25zdCBlbnRyeXBvaW50IG9mIHRoaXMuZW50cnlwb2ludHMpIHtcbiAgICAgIG5ldyBMYW1iZGFGdW5jdGlvbih0aGlzLnByb2plY3QsIHtcbiAgICAgICAgZW50cnlwb2ludCxcbiAgICAgICAgY2RrRGVwczogb3B0aW9ucy5jZGtEZXBzLFxuICAgICAgICBzaW5nbGV0b25VdWlkOiB0b0RldGVybWluaXN0aWNTaW5nbGV0b25VdWlkKFxuICAgICAgICAgIHRoaXMucHJvamVjdC5uYW1lLFxuICAgICAgICAgIGVudHJ5cG9pbnQsXG4gICAgICAgICksXG4gICAgICAgIC4uLm9wdGlvbnMubGFtYmRhT3B0aW9ucyxcbiAgICAgICAgc2luZ2xldG9uOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYEVkZ2VMYW1iZGFBdXRvRGlzY292ZXJgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWRnZUxhbWJkYUF1dG9EaXNjb3Zlck9wdGlvbnMgZXh0ZW5kcyBBdXRvRGlzY292ZXJDb21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFByb2plY3Qgc291cmNlIHRyZWUgKHJlbGF0aXZlIHRvIHByb2plY3Qgb3V0cHV0IGRpcmVjdG9yeSkuXG4gICAqL1xuICByZWFkb25seSBzcmNkaXI6IHN0cmluZztcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgQVdTIExhbWJkYSBmdW5jdGlvbnMuXG4gICAqL1xuICByZWFkb25seSBsYW1iZGFPcHRpb25zPzogTGFtYmRhRnVuY3Rpb25Db21tb25PcHRpb25zO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgZWRnZSBsYW1iZGFzIGZyb20gZW50cnkgcG9pbnRzIGRpc2NvdmVyZWQgaW4gdGhlIHByb2plY3QncyBzb3VyY2UgdHJlZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEVkZ2VMYW1iZGFBdXRvRGlzY292ZXIgZXh0ZW5kcyBBdXRvRGlzY292ZXJCYXNlIHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogUHJvamVjdCwgb3B0aW9uczogRWRnZUxhbWJkYUF1dG9EaXNjb3Zlck9wdGlvbnMpIHtcbiAgICBzdXBlcihwcm9qZWN0LCB7XG4gICAgICBwcm9qZWN0ZGlyOiBvcHRpb25zLnNyY2RpcixcbiAgICAgIGV4dGVuc2lvbjogVFlQRVNDUklQVF9FREdFX0xBTUJEQV9FWFQsXG4gICAgfSk7XG5cbiAgICBmb3IgKGNvbnN0IGVudHJ5cG9pbnQgb2YgdGhpcy5lbnRyeXBvaW50cykge1xuICAgICAgbmV3IExhbWJkYUZ1bmN0aW9uKHRoaXMucHJvamVjdCwge1xuICAgICAgICBlbnRyeXBvaW50LFxuICAgICAgICBjZGtEZXBzOiBvcHRpb25zLmNka0RlcHMsXG4gICAgICAgIC4uLm9wdGlvbnMubGFtYmRhT3B0aW9ucyxcbiAgICAgICAgZWRnZUxhbWJkYTogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBMYW1iZGFFeHRlbnNpb25BdXRvRGlzY292ZXJgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFtYmRhRXh0ZW5zaW9uQXV0b0Rpc2NvdmVyT3B0aW9ucyBleHRlbmRzIEF1dG9EaXNjb3ZlckNvbW1vbk9wdGlvbnMge1xuICAvKipcbiAgICogUHJvamVjdCBzb3VyY2UgdHJlZSAocmVsYXRpdmUgdG8gcHJvamVjdCBvdXRwdXQgZGlyZWN0b3J5KS5cbiAgICovXG4gIHJlYWRvbmx5IHNyY2Rpcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBsYW1iZGEgZXh0ZW5zaW9ucy5cbiAgICovXG4gIHJlYWRvbmx5IGxhbWJkYUV4dGVuc2lvbk9wdGlvbnM/OiBMYW1iZGFFeHRlbnNpb25Db21tb25PcHRpb25zO1xufVxuXG4vKipcbiAqIENyZWF0ZXMgTGFtYmRhIEV4dGVuc2lvbnMgZnJvbSBlbnRyeXBvaW50cyBkaXNjb3ZlcmVkIGluIHRoZSBwcm9qZWN0J3NcbiAqIHNvdXJjZSB0cmVlLlxuICovXG5leHBvcnQgY2xhc3MgTGFtYmRhRXh0ZW5zaW9uQXV0b0Rpc2NvdmVyIGV4dGVuZHMgQXV0b0Rpc2NvdmVyQmFzZSB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IExhbWJkYUV4dGVuc2lvbkF1dG9EaXNjb3Zlck9wdGlvbnMpIHtcbiAgICBzdXBlcihwcm9qZWN0LCB7XG4gICAgICBwcm9qZWN0ZGlyOiBvcHRpb25zLnNyY2RpcixcbiAgICAgIGV4dGVuc2lvbjogVFlQRVNDUklQVF9MQU1CREFfRVhURU5TSU9OX0VYVCxcbiAgICB9KTtcblxuICAgIGZvciAoY29uc3QgZW50cnlwb2ludCBvZiB0aGlzLmVudHJ5cG9pbnRzKSB7XG4gICAgICBuZXcgTGFtYmRhRXh0ZW5zaW9uKHRoaXMucHJvamVjdCwge1xuICAgICAgICBlbnRyeXBvaW50LFxuICAgICAgICBjZGtEZXBzOiBvcHRpb25zLmNka0RlcHMsXG4gICAgICAgIC4uLm9wdGlvbnMubGFtYmRhRXh0ZW5zaW9uT3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBBdXRvRGlzY292ZXJgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0b0Rpc2NvdmVyT3B0aW9uc1xuICBleHRlbmRzXG4gICAgTGFtYmRhQXV0b0Rpc2NvdmVyT3B0aW9ucyxcbiAgICBMYW1iZGFFeHRlbnNpb25BdXRvRGlzY292ZXJPcHRpb25zLFxuICAgIEludGVncmF0aW9uVGVzdEF1dG9EaXNjb3Zlck9wdGlvbnMge1xuICAvKipcbiAgICogQXV0by1kaXNjb3ZlciBsYW1iZGEgZnVuY3Rpb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBsYW1iZGFBdXRvRGlzY292ZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBdXRvLWRpc2NvdmVyIGVkZ2UgbGFtYmRhIGZ1bmN0aW9ucy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZWRnZUxhbWJkYUF1dG9EaXNjb3Zlcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEF1dG8tZGlzY292ZXIgc2luZ2xldG9uIGxhbWJkYSBmdW5jdGlvbnMuXG4gICAqXG4gICAqIFVVSUQgaXMgZGV0ZXJtaW5pc3RpY2FsbHkgZGVyaXZlZCBmcm9tIHRoZSBwcm9qZWN0IG5hbWUgYW5kIGVudHJ5cG9pbnQgcGF0aC5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgc2luZ2xldG9uTGFtYmRhQXV0b0Rpc2NvdmVyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQXV0by1kaXNjb3ZlciBsYW1iZGEgZXh0ZW5zaW9ucy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgbGFtYmRhRXh0ZW5zaW9uQXV0b0Rpc2NvdmVyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQXV0by1kaXNjb3ZlciBpbnRlZ3JhdGlvbiB0ZXN0cy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgaW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBEaXNjb3ZlcnMgYW5kIGNyZWF0ZXMgaW50ZWdyYXRpb24gdGVzdHMgYW5kIGxhbWJkYXMgZnJvbSBjb2RlIGluIHRoZVxuICogcHJvamVjdCdzIHNvdXJjZSBhbmQgdGVzdCB0cmVlcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEF1dG9EaXNjb3ZlciBleHRlbmRzIENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IFByb2plY3QsIG9wdGlvbnM6IEF1dG9EaXNjb3Zlck9wdGlvbnMpIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIGlmIChvcHRpb25zLmxhbWJkYUF1dG9EaXNjb3ZlciA/PyB0cnVlKSB7XG4gICAgICBuZXcgTGFtYmRhQXV0b0Rpc2NvdmVyKHRoaXMucHJvamVjdCwge1xuICAgICAgICBjZGtEZXBzOiBvcHRpb25zLmNka0RlcHMsXG4gICAgICAgIHRzY29uZmlnUGF0aDogb3B0aW9ucy50c2NvbmZpZ1BhdGgsXG4gICAgICAgIHNyY2Rpcjogb3B0aW9ucy5zcmNkaXIsXG4gICAgICAgIGxhbWJkYU9wdGlvbnM6IG9wdGlvbnMubGFtYmRhT3B0aW9ucyxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChvcHRpb25zLmVkZ2VMYW1iZGFBdXRvRGlzY292ZXIgPz8gdHJ1ZSkge1xuICAgICAgbmV3IEVkZ2VMYW1iZGFBdXRvRGlzY292ZXIodGhpcy5wcm9qZWN0LCB7XG4gICAgICAgIGNka0RlcHM6IG9wdGlvbnMuY2RrRGVwcyxcbiAgICAgICAgdHNjb25maWdQYXRoOiBvcHRpb25zLnRzY29uZmlnUGF0aCxcbiAgICAgICAgc3JjZGlyOiBvcHRpb25zLnNyY2RpcixcbiAgICAgICAgbGFtYmRhT3B0aW9uczogb3B0aW9ucy5sYW1iZGFPcHRpb25zLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuc2luZ2xldG9uTGFtYmRhQXV0b0Rpc2NvdmVyID8/IHRydWUpIHtcbiAgICAgIG5ldyBTaW5nbGV0b25MYW1iZGFBdXRvRGlzY292ZXIodGhpcy5wcm9qZWN0LCB7XG4gICAgICAgIGNka0RlcHM6IG9wdGlvbnMuY2RrRGVwcyxcbiAgICAgICAgdHNjb25maWdQYXRoOiBvcHRpb25zLnRzY29uZmlnUGF0aCxcbiAgICAgICAgc3JjZGlyOiBvcHRpb25zLnNyY2RpcixcbiAgICAgICAgbGFtYmRhT3B0aW9uczogb3B0aW9ucy5sYW1iZGFPcHRpb25zLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMubGFtYmRhRXh0ZW5zaW9uQXV0b0Rpc2NvdmVyID8/IHRydWUpIHtcbiAgICAgIG5ldyBMYW1iZGFFeHRlbnNpb25BdXRvRGlzY292ZXIodGhpcy5wcm9qZWN0LCB7XG4gICAgICAgIGNka0RlcHM6IG9wdGlvbnMuY2RrRGVwcyxcbiAgICAgICAgdHNjb25maWdQYXRoOiBvcHRpb25zLnRzY29uZmlnUGF0aCxcbiAgICAgICAgc3JjZGlyOiBvcHRpb25zLnNyY2RpcixcbiAgICAgICAgbGFtYmRhRXh0ZW5zaW9uT3B0aW9uczogb3B0aW9ucy5sYW1iZGFFeHRlbnNpb25PcHRpb25zLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKG9wdGlvbnMuaW50ZWdyYXRpb25UZXN0QXV0b0Rpc2NvdmVyID8/IHRydWUpIHtcbiAgICAgIG5ldyBJbnRlZ3JhdGlvblRlc3RBdXRvRGlzY292ZXIodGhpcy5wcm9qZWN0LCB7XG4gICAgICAgIGNka0RlcHM6IG9wdGlvbnMuY2RrRGVwcyxcbiAgICAgICAgdGVzdGRpcjogb3B0aW9ucy50ZXN0ZGlyLFxuICAgICAgICB0c2NvbmZpZ1BhdGg6IG9wdGlvbnMudHNjb25maWdQYXRoLFxuICAgICAgICBpbnRlZ3JhdGlvblRlc3RPcHRpb25zOiBvcHRpb25zLmludGVncmF0aW9uVGVzdE9wdGlvbnMsXG4gICAgICB9KTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -44,12 +44,5 @@ export declare class AwsCdkJavaApp extends JavaProject {
44
44
  */
45
45
  readonly mainClassName: string;
46
46
  constructor(options: AwsCdkJavaAppOptions);
47
- /**
48
- * Adds an AWS CDK module dependencies
49
- *
50
- * @param modules The list of modules to depend on (e.g. "software.amazon.awscdk/aws-lambda", "software.amazon.awscdk/aws-iam", etc)
51
- * @deprecated In CDK 2.x all modules are available by default. Alpha modules should be added using the standard 'deps'
52
- */
53
- addCdkDependency(...modules: string[]): void;
54
47
  private addSample;
55
48
  }
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- var _a;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.AwsCdkJavaApp = void 0;
5
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
@@ -15,6 +14,31 @@ const java_1 = require("../java");
15
14
  * @pjid awscdk-app-java
16
15
  */
17
16
  class AwsCdkJavaApp extends java_1.JavaProject {
17
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkJavaApp", version: "0.100.1" };
18
+ /**
19
+ * The `cdk.json` file.
20
+ */
21
+ cdkConfig;
22
+ /**
23
+ * CDK dependency management helper class
24
+ */
25
+ cdkDeps;
26
+ /**
27
+ * The full name of the main class of the java app (package.Class).
28
+ */
29
+ mainClass;
30
+ /**
31
+ * CDK tasks.
32
+ */
33
+ cdkTasks;
34
+ /**
35
+ * The name of the Java package that includes the main class.
36
+ */
37
+ mainPackage;
38
+ /**
39
+ * The name of the Java class with the static `main()` method.
40
+ */
41
+ mainClassName;
18
42
  constructor(options) {
19
43
  const mainClassComponents = options.mainClass.split(".");
20
44
  const mainPackage = mainClassComponents.slice(0, -1);
@@ -41,17 +65,6 @@ class AwsCdkJavaApp extends java_1.JavaProject {
41
65
  this.addSample();
42
66
  }
43
67
  }
44
- /**
45
- * Adds an AWS CDK module dependencies
46
- *
47
- * @param modules The list of modules to depend on (e.g. "software.amazon.awscdk/aws-lambda", "software.amazon.awscdk/aws-iam", etc)
48
- * @deprecated In CDK 2.x all modules are available by default. Alpha modules should be added using the standard 'deps'
49
- */
50
- addCdkDependency(...modules) {
51
- for (const m of modules) {
52
- this.cdkDeps.addV1Dependencies(m);
53
- }
54
- }
55
68
  addSample() {
56
69
  const pkg = this.mainPackage.split(".");
57
70
  const javaFile = `${this.mainClassName}.java`;
@@ -60,12 +73,8 @@ class AwsCdkJavaApp extends java_1.JavaProject {
60
73
  [javaFile]: [
61
74
  `package ${pkg.join(".")};`,
62
75
  "",
63
- this.cdkDeps.cdkMajorVersion == 1
64
- ? "import software.amazon.awscdk.core.App;"
65
- : "import software.amazon.awscdk.App;",
66
- this.cdkDeps.cdkMajorVersion == 1
67
- ? "import software.amazon.awscdk.core.Stack;"
68
- : "import software.amazon.awscdk.Stack;",
76
+ "import software.amazon.awscdk.App;",
77
+ "import software.amazon.awscdk.Stack;",
69
78
  "",
70
79
  `public class ${this.mainClassName} {`,
71
80
  " public static void main(final String[] args) {",
@@ -80,6 +89,4 @@ class AwsCdkJavaApp extends java_1.JavaProject {
80
89
  }
81
90
  }
82
91
  exports.AwsCdkJavaApp = AwsCdkJavaApp;
83
- _a = JSII_RTTI_SYMBOL_1;
84
- AwsCdkJavaApp[_a] = { fqn: "projen.awscdk.AwsCdkJavaApp", version: "0.99.80" };
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzY2RrLWFwcC1qYXZhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F3c2Nkay9hd3NjZGstYXBwLWphdmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwrQkFBNEI7QUFDNUIsMEJBQStDO0FBRS9DLHlEQUFvRDtBQUVwRCw2Q0FBeUM7QUFDekMsMkNBQXVDO0FBRXZDLGtDQUFzQztBQWF0Qzs7OztHQUlHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsa0JBQVc7SUErQjVDLFlBQVksT0FBNkI7UUFDdkMsTUFBTSxtQkFBbUIsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6RCxNQUFNLFdBQVcsR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckQsTUFBTSxhQUFhLEdBQUcsbUJBQW1CLENBQUMsbUJBQW1CLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBRTFFLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLE1BQU0sRUFBRSxLQUFLO1lBQ2IsaUJBQWlCLEVBQUUsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7U0FDekMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDO1FBQ25DLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUVuQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksaUNBQWMsQ0FBQyxJQUFJLEVBQUU7WUFDdEMsY0FBYyxFQUFFLGtCQUFjLENBQUMsT0FBTztZQUN0QyxHQUFHLE9BQU87U0FDWCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksb0JBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWhELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxzQkFBUyxDQUFDLElBQUksRUFBRTtZQUNuQyxHQUFHLEVBQUUsMENBQTBDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDL0QsR0FBRyxPQUFPO1NBQ1gsQ0FBQyxDQUFDO1FBRUgsSUFBSSxPQUFPLENBQUMsTUFBTSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNuQixDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksZ0JBQWdCLENBQUMsR0FBRyxPQUFpQjtRQUMxQyxLQUFLLE1BQU0sQ0FBQyxJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEMsQ0FBQztJQUNILENBQUM7SUFFTyxTQUFTO1FBQ2YsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDeEMsTUFBTSxRQUFRLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxPQUFPLENBQUM7UUFDOUMsSUFBSSxhQUFTLENBQUMsSUFBSSxFQUFFLElBQUEsV0FBSSxFQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsR0FBRyxDQUFDLEVBQUU7WUFDdkQsS0FBSyxFQUFFO2dCQUNMLENBQUMsUUFBUSxDQUFDLEVBQUU7b0JBQ1YsV0FBVyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHO29CQUMzQixFQUFFO29CQUNGLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxJQUFJLENBQUM7d0JBQy9CLENBQUMsQ0FBQyx5Q0FBeUM7d0JBQzNDLENBQUMsQ0FBQyxvQ0FBb0M7b0JBQ3hDLElBQUksQ0FBQyxPQUFPLENBQUMsZUFBZSxJQUFJLENBQUM7d0JBQy9CLENBQUMsQ0FBQywyQ0FBMkM7d0JBQzdDLENBQUMsQ0FBQyxzQ0FBc0M7b0JBQzFDLEVBQUU7b0JBQ0YsZ0JBQWdCLElBQUksQ0FBQyxhQUFhLElBQUk7b0JBQ3RDLGtEQUFrRDtvQkFDbEQsMEJBQTBCO29CQUMxQix1QkFBdUIsSUFBSSxDQUFDLElBQUksS0FBSztvQkFDckMsa0JBQWtCO29CQUNsQixLQUFLO29CQUNMLEdBQUc7aUJBQ0osQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO2FBQ2I7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDOztBQXJHSCxzQ0FzR0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqb2luIH0gZnJvbSBcInBhdGhcIjtcbmltcG9ydCB7IERlcGVuZGVuY3lUeXBlLCBTYW1wbGVEaXIgfSBmcm9tIFwiLi5cIjtcbmltcG9ydCB0eXBlIHsgQXdzQ2RrRGVwcywgQXdzQ2RrRGVwc0NvbW1vbk9wdGlvbnMgfSBmcm9tIFwiLi9hd3NjZGstZGVwc1wiO1xuaW1wb3J0IHsgQXdzQ2RrRGVwc0phdmEgfSBmcm9tIFwiLi9hd3NjZGstZGVwcy1qYXZhXCI7XG5pbXBvcnQgdHlwZSB7IENka0NvbmZpZ0NvbW1vbk9wdGlvbnMgfSBmcm9tIFwiLi9jZGstY29uZmlnXCI7XG5pbXBvcnQgeyBDZGtDb25maWcgfSBmcm9tIFwiLi9jZGstY29uZmlnXCI7XG5pbXBvcnQgeyBDZGtUYXNrcyB9IGZyb20gXCIuL2Nkay10YXNrc1wiO1xuaW1wb3J0IHR5cGUgeyBKYXZhUHJvamVjdE9wdGlvbnMgfSBmcm9tIFwiLi4vamF2YVwiO1xuaW1wb3J0IHsgSmF2YVByb2plY3QgfSBmcm9tIFwiLi4vamF2YVwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIEF3c0Nka0phdmFBcHBPcHRpb25zXG4gIGV4dGVuZHMgSmF2YVByb2plY3RPcHRpb25zLCBDZGtDb25maWdDb21tb25PcHRpb25zLCBBd3NDZGtEZXBzQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgSmF2YSBjbGFzcyB3aXRoIHRoZSBzdGF0aWMgYG1haW4oKWAgbWV0aG9kLiBUaGlzIG1ldGhvZFxuICAgKiBzaG91bGQgY2FsbCBgYXBwLnN5bnRoKClgIG9uIHRoZSBDREsgYXBwLlxuICAgKlxuICAgKiBAZGVmYXVsdCBcIm9yZy5hY21lLk15QXBwXCJcbiAgICovXG4gIHJlYWRvbmx5IG1haW5DbGFzczogc3RyaW5nO1xufVxuXG4vKipcbiAqIEFXUyBDREsgYXBwIGluIEphdmEuXG4gKlxuICogQHBqaWQgYXdzY2RrLWFwcC1qYXZhXG4gKi9cbmV4cG9ydCBjbGFzcyBBd3NDZGtKYXZhQXBwIGV4dGVuZHMgSmF2YVByb2plY3Qge1xuICAvKipcbiAgICogVGhlIGBjZGsuanNvbmAgZmlsZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjZGtDb25maWc6IENka0NvbmZpZztcblxuICAvKipcbiAgICogQ0RLIGRlcGVuZGVuY3kgbWFuYWdlbWVudCBoZWxwZXIgY2xhc3NcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjZGtEZXBzOiBBd3NDZGtEZXBzO1xuXG4gIC8qKlxuICAgKiBUaGUgZnVsbCBuYW1lIG9mIHRoZSBtYWluIGNsYXNzIG9mIHRoZSBqYXZhIGFwcCAocGFja2FnZS5DbGFzcykuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbWFpbkNsYXNzOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENESyB0YXNrcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjZGtUYXNrczogQ2RrVGFza3M7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBKYXZhIHBhY2thZ2UgdGhhdCBpbmNsdWRlcyB0aGUgbWFpbiBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBtYWluUGFja2FnZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgSmF2YSBjbGFzcyB3aXRoIHRoZSBzdGF0aWMgYG1haW4oKWAgbWV0aG9kLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG1haW5DbGFzc05hbWU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBBd3NDZGtKYXZhQXBwT3B0aW9ucykge1xuICAgIGNvbnN0IG1haW5DbGFzc0NvbXBvbmVudHMgPSBvcHRpb25zLm1haW5DbGFzcy5zcGxpdChcIi5cIik7XG4gICAgY29uc3QgbWFpblBhY2thZ2UgPSBtYWluQ2xhc3NDb21wb25lbnRzLnNsaWNlKDAsIC0xKTtcbiAgICBjb25zdCBtYWluQ2xhc3NOYW1lID0gbWFpbkNsYXNzQ29tcG9uZW50c1ttYWluQ2xhc3NDb21wb25lbnRzLmxlbmd0aCAtIDFdO1xuXG4gICAgc3VwZXIoe1xuICAgICAgLi4ub3B0aW9ucyxcbiAgICAgIHNhbXBsZTogZmFsc2UsXG4gICAgICBzYW1wbGVKYXZhUGFja2FnZTogbWFpblBhY2thZ2Uuam9pbihcIi5cIiksXG4gICAgfSk7XG5cbiAgICB0aGlzLm1haW5DbGFzcyA9IG9wdGlvbnMubWFpbkNsYXNzO1xuICAgIHRoaXMubWFpblBhY2thZ2UgPSBtYWluUGFja2FnZS5qb2luKFwiLlwiKTtcbiAgICB0aGlzLm1haW5DbGFzc05hbWUgPSBtYWluQ2xhc3NOYW1lO1xuXG4gICAgdGhpcy5jZGtEZXBzID0gbmV3IEF3c0Nka0RlcHNKYXZhKHRoaXMsIHtcbiAgICAgIGRlcGVuZGVuY3lUeXBlOiBEZXBlbmRlbmN5VHlwZS5SVU5USU1FLFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICB9KTtcblxuICAgIHRoaXMuY2RrVGFza3MgPSBuZXcgQ2RrVGFza3ModGhpcyk7XG4gICAgdGhpcy5wb3N0Q29tcGlsZVRhc2suc3Bhd24odGhpcy5jZGtUYXNrcy5zeW50aCk7XG5cbiAgICB0aGlzLmNka0NvbmZpZyA9IG5ldyBDZGtDb25maWcodGhpcywge1xuICAgICAgYXBwOiBgbXZuIGV4ZWM6amF2YSAtLXF1aWV0IC1EZXhlYy5tYWluQ2xhc3M9JHt0aGlzLm1haW5DbGFzc31gLFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICB9KTtcblxuICAgIGlmIChvcHRpb25zLnNhbXBsZSA/PyB0cnVlKSB7XG4gICAgICB0aGlzLmFkZFNhbXBsZSgpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGFuIEFXUyBDREsgbW9kdWxlIGRlcGVuZGVuY2llc1xuICAgKlxuICAgKiBAcGFyYW0gbW9kdWxlcyBUaGUgbGlzdCBvZiBtb2R1bGVzIHRvIGRlcGVuZCBvbiAoZS5nLiBcInNvZnR3YXJlLmFtYXpvbi5hd3NjZGsvYXdzLWxhbWJkYVwiLCBcInNvZnR3YXJlLmFtYXpvbi5hd3NjZGsvYXdzLWlhbVwiLCBldGMpXG4gICAqIEBkZXByZWNhdGVkIEluIENESyAyLnggYWxsIG1vZHVsZXMgYXJlIGF2YWlsYWJsZSBieSBkZWZhdWx0LiBBbHBoYSBtb2R1bGVzIHNob3VsZCBiZSBhZGRlZCB1c2luZyB0aGUgc3RhbmRhcmQgJ2RlcHMnXG4gICAqL1xuICBwdWJsaWMgYWRkQ2RrRGVwZW5kZW5jeSguLi5tb2R1bGVzOiBzdHJpbmdbXSkge1xuICAgIGZvciAoY29uc3QgbSBvZiBtb2R1bGVzKSB7XG4gICAgICB0aGlzLmNka0RlcHMuYWRkVjFEZXBlbmRlbmNpZXMobSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRTYW1wbGUoKSB7XG4gICAgY29uc3QgcGtnID0gdGhpcy5tYWluUGFja2FnZS5zcGxpdChcIi5cIik7XG4gICAgY29uc3QgamF2YUZpbGUgPSBgJHt0aGlzLm1haW5DbGFzc05hbWV9LmphdmFgO1xuICAgIG5ldyBTYW1wbGVEaXIodGhpcywgam9pbihcInNyY1wiLCBcIm1haW5cIiwgXCJqYXZhXCIsIC4uLnBrZyksIHtcbiAgICAgIGZpbGVzOiB7XG4gICAgICAgIFtqYXZhRmlsZV06IFtcbiAgICAgICAgICBgcGFja2FnZSAke3BrZy5qb2luKFwiLlwiKX07YCxcbiAgICAgICAgICBcIlwiLFxuICAgICAgICAgIHRoaXMuY2RrRGVwcy5jZGtNYWpvclZlcnNpb24gPT0gMVxuICAgICAgICAgICAgPyBcImltcG9ydCBzb2Z0d2FyZS5hbWF6b24uYXdzY2RrLmNvcmUuQXBwO1wiXG4gICAgICAgICAgICA6IFwiaW1wb3J0IHNvZnR3YXJlLmFtYXpvbi5hd3NjZGsuQXBwO1wiLFxuICAgICAgICAgIHRoaXMuY2RrRGVwcy5jZGtNYWpvclZlcnNpb24gPT0gMVxuICAgICAgICAgICAgPyBcImltcG9ydCBzb2Z0d2FyZS5hbWF6b24uYXdzY2RrLmNvcmUuU3RhY2s7XCJcbiAgICAgICAgICAgIDogXCJpbXBvcnQgc29mdHdhcmUuYW1hem9uLmF3c2Nkay5TdGFjaztcIixcbiAgICAgICAgICBcIlwiLFxuICAgICAgICAgIGBwdWJsaWMgY2xhc3MgJHt0aGlzLm1haW5DbGFzc05hbWV9IHtgLFxuICAgICAgICAgIFwiICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihmaW5hbCBTdHJpbmdbXSBhcmdzKSB7XCIsXG4gICAgICAgICAgXCIgICAgQXBwIGFwcCA9IG5ldyBBcHAoKTtcIixcbiAgICAgICAgICBgICAgIG5ldyBTdGFjayhhcHAsIFwiJHt0aGlzLm5hbWV9XCIpO2AsXG4gICAgICAgICAgXCIgICAgYXBwLnN5bnRoKCk7XCIsXG4gICAgICAgICAgXCIgIH1cIixcbiAgICAgICAgICBcIn1cIixcbiAgICAgICAgXS5qb2luKFwiXFxuXCIpLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxufVxuIl19
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzY2RrLWFwcC1qYXZhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2F3c2Nkay9hd3NjZGstYXBwLWphdmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLCtCQUE0QjtBQUM1QiwwQkFBK0M7QUFFL0MseURBQW9EO0FBRXBELDZDQUF5QztBQUN6QywyQ0FBdUM7QUFFdkMsa0NBQXNDO0FBYXRDOzs7O0dBSUc7QUFDSCxNQUFhLGFBQWMsU0FBUSxrQkFBVzs7SUFDNUM7O09BRUc7SUFDYSxTQUFTLENBQVk7SUFFckM7O09BRUc7SUFDYSxPQUFPLENBQWE7SUFFcEM7O09BRUc7SUFDYSxTQUFTLENBQVM7SUFFbEM7O09BRUc7SUFDYSxRQUFRLENBQVc7SUFFbkM7O09BRUc7SUFDYSxXQUFXLENBQVM7SUFFcEM7O09BRUc7SUFDYSxhQUFhLENBQVM7SUFFdEMsWUFBWSxPQUE2QjtRQUN2QyxNQUFNLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pELE1BQU0sV0FBVyxHQUFHLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyRCxNQUFNLGFBQWEsR0FBRyxtQkFBbUIsQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFFMUUsS0FBSyxDQUFDO1lBQ0osR0FBRyxPQUFPO1lBQ1YsTUFBTSxFQUFFLEtBQUs7WUFDYixpQkFBaUIsRUFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztTQUN6QyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDbkMsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pDLElBQUksQ0FBQyxhQUFhLEdBQUcsYUFBYSxDQUFDO1FBRW5DLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxpQ0FBYyxDQUFDLElBQUksRUFBRTtZQUN0QyxjQUFjLEVBQUUsa0JBQWMsQ0FBQyxPQUFPO1lBQ3RDLEdBQUcsT0FBTztTQUNYLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxvQkFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ25DLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFaEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLHNCQUFTLENBQUMsSUFBSSxFQUFFO1lBQ25DLEdBQUcsRUFBRSwwQ0FBMEMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUMvRCxHQUFHLE9BQU87U0FDWCxDQUFDLENBQUM7UUFFSCxJQUFJLE9BQU8sQ0FBQyxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFDM0IsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ25CLENBQUM7SUFDSCxDQUFDO0lBRU8sU0FBUztRQUNmLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3hDLE1BQU0sUUFBUSxHQUFHLEdBQUcsSUFBSSxDQUFDLGFBQWEsT0FBTyxDQUFDO1FBQzlDLElBQUksYUFBUyxDQUFDLElBQUksRUFBRSxJQUFBLFdBQUksRUFBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZELEtBQUssRUFBRTtnQkFDTCxDQUFDLFFBQVEsQ0FBQyxFQUFFO29CQUNWLFdBQVcsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRztvQkFDM0IsRUFBRTtvQkFDRixvQ0FBb0M7b0JBQ3BDLHNDQUFzQztvQkFDdEMsRUFBRTtvQkFDRixnQkFBZ0IsSUFBSSxDQUFDLGFBQWEsSUFBSTtvQkFDdEMsa0RBQWtEO29CQUNsRCwwQkFBMEI7b0JBQzFCLHVCQUF1QixJQUFJLENBQUMsSUFBSSxLQUFLO29CQUNyQyxrQkFBa0I7b0JBQ2xCLEtBQUs7b0JBQ0wsR0FBRztpQkFDSixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7YUFDYjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBckZILHNDQXNGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGpvaW4gfSBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHsgRGVwZW5kZW5jeVR5cGUsIFNhbXBsZURpciB9IGZyb20gXCIuLlwiO1xuaW1wb3J0IHR5cGUgeyBBd3NDZGtEZXBzLCBBd3NDZGtEZXBzQ29tbW9uT3B0aW9ucyB9IGZyb20gXCIuL2F3c2Nkay1kZXBzXCI7XG5pbXBvcnQgeyBBd3NDZGtEZXBzSmF2YSB9IGZyb20gXCIuL2F3c2Nkay1kZXBzLWphdmFcIjtcbmltcG9ydCB0eXBlIHsgQ2RrQ29uZmlnQ29tbW9uT3B0aW9ucyB9IGZyb20gXCIuL2Nkay1jb25maWdcIjtcbmltcG9ydCB7IENka0NvbmZpZyB9IGZyb20gXCIuL2Nkay1jb25maWdcIjtcbmltcG9ydCB7IENka1Rhc2tzIH0gZnJvbSBcIi4vY2RrLXRhc2tzXCI7XG5pbXBvcnQgdHlwZSB7IEphdmFQcm9qZWN0T3B0aW9ucyB9IGZyb20gXCIuLi9qYXZhXCI7XG5pbXBvcnQgeyBKYXZhUHJvamVjdCB9IGZyb20gXCIuLi9qYXZhXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXdzQ2RrSmF2YUFwcE9wdGlvbnNcbiAgZXh0ZW5kcyBKYXZhUHJvamVjdE9wdGlvbnMsIENka0NvbmZpZ0NvbW1vbk9wdGlvbnMsIEF3c0Nka0RlcHNDb21tb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBKYXZhIGNsYXNzIHdpdGggdGhlIHN0YXRpYyBgbWFpbigpYCBtZXRob2QuIFRoaXMgbWV0aG9kXG4gICAqIHNob3VsZCBjYWxsIGBhcHAuc3ludGgoKWAgb24gdGhlIENESyBhcHAuXG4gICAqXG4gICAqIEBkZWZhdWx0IFwib3JnLmFjbWUuTXlBcHBcIlxuICAgKi9cbiAgcmVhZG9ubHkgbWFpbkNsYXNzOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQVdTIENESyBhcHAgaW4gSmF2YS5cbiAqXG4gKiBAcGppZCBhd3NjZGstYXBwLWphdmFcbiAqL1xuZXhwb3J0IGNsYXNzIEF3c0Nka0phdmFBcHAgZXh0ZW5kcyBKYXZhUHJvamVjdCB7XG4gIC8qKlxuICAgKiBUaGUgYGNkay5qc29uYCBmaWxlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNka0NvbmZpZzogQ2RrQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBDREsgZGVwZW5kZW5jeSBtYW5hZ2VtZW50IGhlbHBlciBjbGFzc1xuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNka0RlcHM6IEF3c0Nka0RlcHM7XG5cbiAgLyoqXG4gICAqIFRoZSBmdWxsIG5hbWUgb2YgdGhlIG1haW4gY2xhc3Mgb2YgdGhlIGphdmEgYXBwIChwYWNrYWdlLkNsYXNzKS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBtYWluQ2xhc3M6IHN0cmluZztcblxuICAvKipcbiAgICogQ0RLIHRhc2tzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNka1Rhc2tzOiBDZGtUYXNrcztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEphdmEgcGFja2FnZSB0aGF0IGluY2x1ZGVzIHRoZSBtYWluIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IG1haW5QYWNrYWdlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBKYXZhIGNsYXNzIHdpdGggdGhlIHN0YXRpYyBgbWFpbigpYCBtZXRob2QuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbWFpbkNsYXNzTmFtZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEF3c0Nka0phdmFBcHBPcHRpb25zKSB7XG4gICAgY29uc3QgbWFpbkNsYXNzQ29tcG9uZW50cyA9IG9wdGlvbnMubWFpbkNsYXNzLnNwbGl0KFwiLlwiKTtcbiAgICBjb25zdCBtYWluUGFja2FnZSA9IG1haW5DbGFzc0NvbXBvbmVudHMuc2xpY2UoMCwgLTEpO1xuICAgIGNvbnN0IG1haW5DbGFzc05hbWUgPSBtYWluQ2xhc3NDb21wb25lbnRzW21haW5DbGFzc0NvbXBvbmVudHMubGVuZ3RoIC0gMV07XG5cbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgc2FtcGxlOiBmYWxzZSxcbiAgICAgIHNhbXBsZUphdmFQYWNrYWdlOiBtYWluUGFja2FnZS5qb2luKFwiLlwiKSxcbiAgICB9KTtcblxuICAgIHRoaXMubWFpbkNsYXNzID0gb3B0aW9ucy5tYWluQ2xhc3M7XG4gICAgdGhpcy5tYWluUGFja2FnZSA9IG1haW5QYWNrYWdlLmpvaW4oXCIuXCIpO1xuICAgIHRoaXMubWFpbkNsYXNzTmFtZSA9IG1haW5DbGFzc05hbWU7XG5cbiAgICB0aGlzLmNka0RlcHMgPSBuZXcgQXdzQ2RrRGVwc0phdmEodGhpcywge1xuICAgICAgZGVwZW5kZW5jeVR5cGU6IERlcGVuZGVuY3lUeXBlLlJVTlRJTUUsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuXG4gICAgdGhpcy5jZGtUYXNrcyA9IG5ldyBDZGtUYXNrcyh0aGlzKTtcbiAgICB0aGlzLnBvc3RDb21waWxlVGFzay5zcGF3bih0aGlzLmNka1Rhc2tzLnN5bnRoKTtcblxuICAgIHRoaXMuY2RrQ29uZmlnID0gbmV3IENka0NvbmZpZyh0aGlzLCB7XG4gICAgICBhcHA6IGBtdm4gZXhlYzpqYXZhIC0tcXVpZXQgLURleGVjLm1haW5DbGFzcz0ke3RoaXMubWFpbkNsYXNzfWAsXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuXG4gICAgaWYgKG9wdGlvbnMuc2FtcGxlID8/IHRydWUpIHtcbiAgICAgIHRoaXMuYWRkU2FtcGxlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhZGRTYW1wbGUoKSB7XG4gICAgY29uc3QgcGtnID0gdGhpcy5tYWluUGFja2FnZS5zcGxpdChcIi5cIik7XG4gICAgY29uc3QgamF2YUZpbGUgPSBgJHt0aGlzLm1haW5DbGFzc05hbWV9LmphdmFgO1xuICAgIG5ldyBTYW1wbGVEaXIodGhpcywgam9pbihcInNyY1wiLCBcIm1haW5cIiwgXCJqYXZhXCIsIC4uLnBrZyksIHtcbiAgICAgIGZpbGVzOiB7XG4gICAgICAgIFtqYXZhRmlsZV06IFtcbiAgICAgICAgICBgcGFja2FnZSAke3BrZy5qb2luKFwiLlwiKX07YCxcbiAgICAgICAgICBcIlwiLFxuICAgICAgICAgIFwiaW1wb3J0IHNvZnR3YXJlLmFtYXpvbi5hd3NjZGsuQXBwO1wiLFxuICAgICAgICAgIFwiaW1wb3J0IHNvZnR3YXJlLmFtYXpvbi5hd3NjZGsuU3RhY2s7XCIsXG4gICAgICAgICAgXCJcIixcbiAgICAgICAgICBgcHVibGljIGNsYXNzICR7dGhpcy5tYWluQ2xhc3NOYW1lfSB7YCxcbiAgICAgICAgICBcIiAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oZmluYWwgU3RyaW5nW10gYXJncykge1wiLFxuICAgICAgICAgIFwiICAgIEFwcCBhcHAgPSBuZXcgQXBwKCk7XCIsXG4gICAgICAgICAgYCAgICBuZXcgU3RhY2soYXBwLCBcIiR7dGhpcy5uYW1lfVwiKTtgLFxuICAgICAgICAgIFwiICAgIGFwcC5zeW50aCgpO1wiLFxuICAgICAgICAgIFwiICB9XCIsXG4gICAgICAgICAgXCJ9XCIsXG4gICAgICAgIF0uam9pbihcIlxcblwiKSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -13,13 +13,6 @@ export interface AwsCdkPythonAppOptions extends PythonProjectOptions, CdkConfigC
13
13
  * @default "app.py"
14
14
  */
15
15
  readonly appEntrypoint?: string;
16
- /**
17
- * Python sources directory.
18
- *
19
- * @default "tests"
20
- * @deprecated Use `sampleTestdir` instead.
21
- */
22
- readonly testdir?: string;
23
16
  }
24
17
  /**
25
18
  * AWS CDK app in Python
@@ -40,11 +33,6 @@ export declare class AwsCdkPythonApp extends PythonProject {
40
33
  * The CDK app entrypoint
41
34
  */
42
35
  readonly appEntrypoint: string;
43
- /**
44
- * The directory in which the python tests reside.
45
- * @deprecated Use `sampleTestdir` instead.
46
- */
47
- readonly testdir: string;
48
36
  /**
49
37
  * The directory in which the python sample tests reside.
50
38
  */
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- var _a;
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
4
3
  exports.AwsCdkPythonApp = void 0;
5
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
@@ -15,6 +14,24 @@ const python_project_1 = require("../python/python-project");
15
14
  * @pjid awscdk-app-py
16
15
  */
17
16
  class AwsCdkPythonApp extends python_project_1.PythonProject {
17
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkPythonApp", version: "0.100.1" };
18
+ /**
19
+ * Common CDK tasks.
20
+ */
21
+ cdkTasks;
22
+ /**
23
+ * cdk.json configuration.
24
+ */
25
+ cdkConfig;
26
+ cdkDeps;
27
+ /**
28
+ * The CDK app entrypoint
29
+ */
30
+ appEntrypoint;
31
+ /**
32
+ * The directory in which the python sample tests reside.
33
+ */
34
+ sampleTestdir;
18
35
  /**
19
36
  * The CDK version this app is using.
20
37
  */
@@ -28,8 +45,7 @@ class AwsCdkPythonApp extends python_project_1.PythonProject {
28
45
  ...options,
29
46
  });
30
47
  this.appEntrypoint = options.appEntrypoint ?? "app.py";
31
- this.testdir = this.sampleTestdir =
32
- options.sampleTestdir ?? options.testdir ?? "tests";
48
+ this.sampleTestdir = options.sampleTestdir ?? "tests";
33
49
  this.cdkTasks = new _1.CdkTasks(this);
34
50
  this.postCompileTask.spawn(this.cdkTasks.synthSilent);
35
51
  this.cdkConfig = new _1.CdkConfig(this, {
@@ -47,8 +63,8 @@ class AwsCdkPythonApp extends python_project_1.PythonProject {
47
63
  ...options,
48
64
  });
49
65
  if (options.sample ?? true) {
50
- new AppCode(this, this.appEntrypoint, this.cdkDeps.cdkMajorVersion);
51
- new MyStackCode(this, this.moduleName, this.cdkDeps.cdkMajorVersion);
66
+ new AppCode(this, this.appEntrypoint);
67
+ new MyStackCode(this, this.moduleName);
52
68
  }
53
69
  if (options.pytest ?? true) {
54
70
  this.pytest = new pytest_1.Pytest(this, options.pytestOptions);
@@ -57,18 +73,10 @@ class AwsCdkPythonApp extends python_project_1.PythonProject {
57
73
  }
58
74
  }
59
75
  exports.AwsCdkPythonApp = AwsCdkPythonApp;
60
- _a = JSII_RTTI_SYMBOL_1;
61
- AwsCdkPythonApp[_a] = { fqn: "projen.awscdk.AwsCdkPythonApp", version: "0.99.80" };
62
76
  class AppCode extends __1.Component {
63
- constructor(project, fileName, cdkVersion) {
77
+ constructor(project, fileName) {
64
78
  super(project);
65
- let versionImport;
66
- if (cdkVersion < 2) {
67
- versionImport = "from aws_cdk.core import App, Environment";
68
- }
69
- else {
70
- versionImport = "from aws_cdk import App, Environment";
71
- }
79
+ const versionImport = "from aws_cdk import App, Environment";
72
80
  new __1.SampleFile(project, fileName, {
73
81
  contents: [
74
82
  "import os",
@@ -91,17 +99,12 @@ class AppCode extends __1.Component {
91
99
  }
92
100
  }
93
101
  class MyStackCode extends __1.Component {
94
- constructor(project, dir, cdkMajorVersion) {
102
+ constructor(project, dir) {
95
103
  super(project);
96
104
  let appFile = [];
97
105
  appFile.push("import os");
98
- if (cdkMajorVersion < 2) {
99
- appFile.push("from aws_cdk.core import Construct, Stack");
100
- }
101
- else {
102
- appFile.push("from aws_cdk import Stack");
103
- appFile.push("from constructs import Construct");
104
- }
106
+ appFile.push("from aws_cdk import Stack");
107
+ appFile.push("from constructs import Construct");
105
108
  appFile.push("");
106
109
  appFile.push("");
107
110
  appFile.push("class MyStack(Stack):");
@@ -118,4 +121,4 @@ class MyStackCode extends __1.Component {
118
121
  });
119
122
  }
120
123
  }
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzY2RrLWFwcC1weS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3NjZGsvYXdzY2RrLWFwcC1weS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUtBLHdCQUF3QztBQUN4QywwQkFBc0U7QUFDdEUscURBQWdEO0FBQ2hELGlFQUE0RDtBQUM1RCw2Q0FBMEM7QUFFMUMsNkRBQXlEO0FBMEJ6RDs7OztHQUlHO0FBQ0gsTUFBYSxlQUFnQixTQUFRLDhCQUFhO0lBNkJoRDs7T0FFRztJQUNILElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxZQUFZLE9BQStCO1FBQ3pDLEtBQUssQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFFcEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLDZCQUFZLENBQUMsSUFBSSxFQUFFO1lBQ3BDLGNBQWMsRUFBRSxrQkFBYyxDQUFDLE9BQU87WUFDdEMsR0FBRyxPQUFPO1NBQ1gsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxJQUFJLFFBQVEsQ0FBQztRQUN2RCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxhQUFhO1lBQy9CLE9BQU8sQ0FBQyxhQUFhLElBQUksT0FBTyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUM7UUFFdEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLFdBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNuQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRXRELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxZQUFTLENBQUMsSUFBSSxFQUFFO1lBQ25DLEdBQUcsRUFBRSxVQUFVLElB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QUFJLENBQUMscURBQXFELENBQUMsQ0FBQztRQUNwRSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsa0RBQWtELENBQUMsQ0FBQztRQUNqRSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksYUFBUyxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUU7WUFDMUIsS0FBSyxFQUFFO2dCQUNMLGFBQWEsRUFBRSxFQUFFO2dCQUNqQixTQUFTLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7YUFDOUI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEF3c0Nka0RlcHMsXG4gIEF3c0Nka0RlcHNDb21tb25PcHRpb25zLFxuICBDZGtDb25maWdDb21tb25PcHRpb25zLFxufSBmcm9tIFwiLlwiO1xuaW1wb3J0IHsgQ2RrQ29uZmlnLCBDZGtUYXNrcyB9IGZyb20gXCIuXCI7XG5pbXBvcnQgeyBDb21wb25lbnQsIERlcGVuZGVuY3lUeXBlLCBTYW1wbGVEaXIsIFNhbXBsZUZpbGUgfSBmcm9tIFwiLi5cIjtcbmltcG9ydCB7IEF3c0Nka0RlcHNQeSB9IGZyb20gXCIuL2F3c2Nkay1kZXBzLXB5XCI7XG5pbXBvcnQgeyBBd3NDZGtQeXRlc3RTYW1wbGUgfSBmcm9tIFwiLi9hd3NjZGstcHl0ZXN0LXNhbXBsZVwiO1xuaW1wb3J0IHsgUHl0ZXN0IH0gZnJvbSBcIi4uL3B5dGhvbi9weXRlc3RcIjtcbmltcG9ydCB0eXBlIHsgUHl0aG9uUHJvamVjdE9wdGlvbnMgfSBmcm9tIFwiLi4vcHl0aG9uL3B5dGhvbi1wcm9qZWN0XCI7XG5pbXBvcnQgeyBQeXRob25Qcm9qZWN0IH0gZnJvbSBcIi4uL3B5dGhvbi9weXRob24tcHJvamVjdFwiO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBBd3NDZGtQeXRob25BcHBgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXdzQ2RrUHl0aG9uQXBwT3B0aW9uc1xuICBleHRlbmRzXG4gICAgUHl0aG9uUHJvamVjdE9wdGlvbnMsXG4gICAgQ2RrQ29uZmlnQ29tbW9uT3B0aW9ucyxcbiAgICBBd3NDZGtEZXBzQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgQ0RLIGFwcCdzIGVudHJ5cG9pbnQgKHJlbGF0aXZlIHRvIHRoZSBzb3VyY2UgZGlyZWN0b3J5LCB3aGljaCBpc1xuICAgKiBcInNyY1wiIGJ5IGRlZmF1bHQpLlxuICAgKlxuICAgKiBAZGVmYXVsdCBcImFwcC5weVwiXG4gICAqL1xuICByZWFkb25seSBhcHBFbnRyeXBvaW50Pzogc3RyaW5nO1xuICAvKipcbiAgICogUHl0aG9uIHNvdXJjZXMgZGlyZWN0b3J5LlxuICAgKlxuICAgKiBAZGVmYXVsdCBcInRlc3RzXCJcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGBzYW1wbGVUZXN0ZGlyYCBpbnN0ZWFkLlxuICAgKi9cbiAgcmVhZG9ubHkgdGVzdGRpcj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBBV1MgQ0RLIGFwcCBpbiBQeXRob25cbiAqXG4gKiBAcGppZCBhd3NjZGstYXBwLXB5XG4gKi9cbmV4cG9ydCBjbGFzcyBBd3NDZGtQeXRob25BcHAgZXh0ZW5kcyBQeXRob25Qcm9qZWN0IHtcbiAgLyoqXG4gICAqIENvbW1vbiBDREsgdGFza3MuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2RrVGFza3M6IENka1Rhc2tzO1xuXG4gIC8qKlxuICAgKiBjZGsuanNvbiBjb25maWd1cmF0aW9uLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGNka0NvbmZpZzogQ2RrQ29uZmlnO1xuXG4gIHB1YmxpYyByZWFkb25seSBjZGtEZXBzOiBBd3NDZGtEZXBzO1xuXG4gIC8qKlxuICAgKiBUaGUgQ0RLIGFwcCBlbnRyeXBvaW50XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXBwRW50cnlwb2ludDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZGlyZWN0b3J5IGluIHdoaWNoIHRoZSBweXRob24gdGVzdHMgcmVzaWRlLlxuICAgKiBAZGVwcmVjYXRlZCBVc2UgYHNhbXBsZVRlc3RkaXJgIGluc3RlYWQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdGVzdGRpcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZGlyZWN0b3J5IGluIHdoaWNoIHRoZSBweXRob24gc2FtcGxlIHRlc3RzIHJlc2lkZS5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzYW1wbGVUZXN0ZGlyOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBDREsgdmVyc2lvbiB0aGlzIGFwcCBpcyB1c2luZy5cbiAgICovXG4gIHB1YmxpYyBnZXQgY2RrVmVyc2lvbigpIHtcbiAgICByZXR1cm4gdGhpcy5jZGtEZXBzLmNka1ZlcnNpb247XG4gIH1cblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBBd3NDZGtQeXRob25BcHBPcHRpb25zKSB7XG4gICAgc3VwZXIoeyAuLi5vcHRpb25zLCBweXRlc3Q6IGZhbHNlLCBzYW1wbGU6IGZhbHNlIH0pO1xuXG4gICAgdGhpcy5jZGtEZXBzID0gbmV3IEF3c0Nka0RlcHNQeSh0aGlzLCB7XG4gICAgICBkZXBlbmRlbmN5VHlwZTogRGVwZW5kZW5jeVR5cGUuUlVOVElNRSxcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgfSk7XG4gICAgdGhpcy5hcHBFbnRyeXBvaW50ID0gb3B0aW9ucy5hcHBFbnRyeXBvaW50ID8/IFwiYXBwLnB5XCI7XG4gICAgdGhpcy50ZXN0ZGlyID0gdGhpcy5zYW1wbGVUZXN0ZGlyID1cbiAgICAgIG9wdGlvbnMuc2FtcGxlVGVzdGRpciA/PyBvcHRpb25zLnRlc3RkaXIgPz8gXCJ0ZXN0c1wiO1xuXG4gICAgdGhpcy5jZGtUYXNrcyA9IG5ldyBDZGtUYXNrcyh0aGlzKTtcbiAgICB0aGlzLnBvc3RDb21waWxlVGFzay5zcGF3bih0aGlzLmNka1Rhc2tzLnN5bnRoU2lsZW50KTtcblxuICAgIHRoaXMuY2RrQ29uZmlnID0gbmV3IENka0NvbmZpZyh0aGlzLCB7XG4gICAgICBhcHA6IGBweXRob24gJHt0aGlzLmFwcEVudHJ5cG9pbnR9YCxcbiAgICAgIHdhdGNoSW5jbHVkZXM6IFtcIioqXCJdLFxuICAgICAgd2F0Y2hFeGNsdWRlczogW1xuICAgICAgICBcIlJFQURNRS5tZFwiLFxuICAgICAgICBcImNkayouanNvblwiLFxuICAgICAgICBcInJlcXVpcmVtZW50cyoudHh0XCIsXG4gICAgICAgIFwic291cmNlLmJhdFwiLFxuICAgICAgICBcIioqL19faW5pdF9fLnB5XCIsXG4gICAgICAgIFwicHl0aG9uL19fcHljYWNoZV9fXCIsXG4gICAgICAgIFwidGVzdHNcIixcbiAgICAgIF0sXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuXG4gICAgaWYgKG9wdGlvbnMuc2FtcGxlID8/IHRydWUpIHtcbiAgICAgIG5ldyBBcHBDb2RlKHRoaXMsIHRoaXMuYXBwRW50cnlwb2ludCwgdGhpcy5jZGtEZXBzLmNka01ham9yVmVyc2lvbik7XG4gICAgICBuZXcgTXlTdGFja0NvZGUodGhpcywgdGhpcy5tb2R1bGVOYW1lLCB0aGlzLmNka0RlcHMuY2RrTWFqb3JWZXJzaW9uKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5weXRlc3QgPz8gdHJ1ZSkge1xuICAgICAgdGhpcy5weXRlc3QgPSBuZXcgUHl0ZXN0KHRoaXMsIG9wdGlvbnMucHl0ZXN0T3B0aW9ucyk7XG4gICAgICBuZXcgQXdzQ2RrUHl0ZXN0U2FtcGxlKHRoaXMsIHRoaXMuc2FtcGxlVGVzdGRpcik7XG4gICAgfVxuICB9XG59XG5cbmNsYXNzIEFwcENvZGUgZXh0ZW5kcyBDb21wb25lbnQge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBBd3NDZGtQeXRob25BcHAsIGZpbGVOYW1lOiBzdHJpbmcsIGNka1ZlcnNpb246IG51bWJlcikge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgbGV0IHZlcnNpb25JbXBvcnQ6IHN0cmluZztcbiAgICBpZiAoY2RrVmVyc2lvbiA8IDIpIHtcbiAgICAgIHZlcnNpb25JbXBvcnQgPSBcImZyb20gYXdzX2Nkay5jb3JlIGltcG9ydCBBcHAsIEVudmlyb25tZW50XCI7XG4gICAgfSBlbHNlIHtcbiAgICAgIHZlcnNpb25JbXBvcnQgPSBcImZyb20gYXdzX2NkayBpbXBvcnQgQXBwLCBFbnZpcm9ubWVudFwiO1xuICAgIH1cblxuICAgIG5ldyBTYW1wbGVGaWxlKHByb2plY3QsIGZpbGVOYW1lLCB7XG4gICAgICBjb250ZW50czogW1xuICAgICAgICBcImltcG9ydCBvc1wiLFxuICAgICAgICB2ZXJzaW9uSW1wb3J0LFxuICAgICAgICBgZnJvbSAke3Byb2plY3QubW9kdWxlTmFtZX0ubWFpbiBpbXBvcnQgTXlTdGFja2AsXG4gICAgICAgIFwiXCIsXG4gICAgICAgIFwiIyBmb3IgZGV2ZWxvcG1lbnQsIHVzZSBhY2NvdW50L3JlZ2lvbiBmcm9tIGNkayBjbGlcIixcbiAgICAgICAgXCJkZXZfZW52ID0gRW52aXJvbm1lbnQoXCIsXG4gICAgICAgIFwiICBhY2NvdW50PW9zLmdldGVudignQ0RLX0RFRkFVTFRfQUNDT1VOVCcpLFwiLFxuICAgICAgICBcIiAgcmVnaW9uPW9zLmdldGVudignQ0RLX0RFRkFVTFRfUkVHSU9OJylcIixcbiAgICAgICAgXCIpXCIsXG4gICAgICAgIFwiXCIsXG4gICAgICAgIFwiYXBwID0gQXBwKClcIixcbiAgICAgICAgYE15U3RhY2soYXBwLCBcIiR7dGhpcy5wcm9qZWN0Lm5hbWV9LWRldlwiLCBlbnY9ZGV2X2VudilgLFxuICAgICAgICBgIyBNeVN0YWNrKGFwcCwgXCIke3RoaXMucHJvamVjdC5uYW1lfS1wcm9kXCIsIGVudj1wcm9kX2VudilgLFxuICAgICAgICBcIlwiLFxuICAgICAgICBcImFwcC5zeW50aCgpXCIsXG4gICAgICBdLmpvaW4oXCJcXG5cIiksXG4gICAgfSk7XG4gIH1cbn1cblxuY2xhc3MgTXlTdGFja0NvZGUgZXh0ZW5kcyBDb21wb25lbnQge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBBd3NDZGtQeXRob25BcHAsIGRpcjogc3RyaW5nLCBjZGtNYWpvclZlcnNpb246IG51bWJlcikge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgbGV0IGFwcEZpbGU6IHN0cmluZ1tdID0gW107XG4gICAgYXBwRmlsZS5wdXNoKFwiaW1wb3J0IG9zXCIpO1xuICAgIGlmIChjZGtNYWpvclZlcnNpb24gPCAyKSB7XG4gICAgICBhcHBGaWxlLnB1c2goXCJmcm9tIGF3c19jZGsuY29yZSBpbXBvcnQgQ29uc3RydWN0LCBTdGFja1wiKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXBwRmlsZS5wdXNoKFwiZnJvbSBhd3NfY2RrIGltcG9ydCBTdGFja1wiKTtcbiAgICAgIGFwcEZpbGUucHVzaChcImZyb20gY29uc3RydWN0cyBpbXBvcnQgQ29uc3RydWN0XCIpO1xuICAgIH1cbiAgICBhcHBGaWxlLnB1c2goXCJcIik7XG4gICAgYXBwRmlsZS5wdXNoKFwiXCIpO1xuICAgIGFwcEZpbGUucHVzaChcImNsYXNzIE15U3RhY2soU3RhY2spOlwiKTtcbiAgICBhcHBGaWxlLnB1c2goXG4gICAgICBcIiAgZGVmIF9faW5pdF9fKHNlbGYsIHNjb3BlOiBDb25zdHJ1Y3QsIGNvbnN0cnVjdF9pZDogc3RyLCAqKmt3YXJncykgLT4gTm9uZTpcIixcbiAgICApO1xuICAgIGFwcEZpbGUucHVzaChcIiAgICBzdXBlcigpLl9faW5pdF9fKHNjb3BlLCBjb25zdHJ1Y3RfaWQsICoqa3dhcmdzKVwiKTtcbiAgICBhcHBGaWxlLnB1c2goXCJcIik7XG4gICAgYXBwRmlsZS5wdXNoKFwiICAgICMgVGhlIGNvZGUgdGhhdCBkZWZpbmVzIHlvdXIgc3RhY2sgZ29lcyBoZXJlXCIpO1xuICAgIGFwcEZpbGUucHVzaChcIlwiKTtcblxuICAgIG5ldyBTYW1wbGVEaXIocHJvamVjdCwgZGlyLCB7XG4gICAgICBmaWxlczoge1xuICAgICAgICBcIl9faW5pdF9fLnB5XCI6IFwiXCIsXG4gICAgICAgIFwibWFpbi5weVwiOiBhcHBGaWxlLmpvaW4oXCJcXG5cIiksXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzY2RrLWFwcC1weS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hd3NjZGsvYXdzY2RrLWFwcC1weS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBS0Esd0JBQXdDO0FBQ3hDLDBCQUFzRTtBQUN0RSxxREFBZ0Q7QUFDaEQsaUVBQTREO0FBQzVELDZDQUEwQztBQUUxQyw2REFBeUQ7QUFtQnpEOzs7O0dBSUc7QUFDSCxNQUFhLGVBQWdCLFNBQVEsOEJBQWE7O0lBQ2hEOztPQUVHO0lBQ2EsUUFBUSxDQUFXO0lBRW5DOztPQUVHO0lBQ2EsU0FBUyxDQUFZO0lBRXJCLE9BQU8sQ0FBYTtJQUVwQzs7T0FFRztJQUNhLGFBQWEsQ0FBUztJQUV0Qzs7T0FFRztJQUNhLGFBQWEsQ0FBUztJQUV0Qzs7T0FFRztJQUNILElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxZQUFZLE9BQStCO1FBQ3pDLEtBQUssQ0FBQyxFQUFFLEdBQUcsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFFcEQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLDZCQUFZLENBQUMsSUFBSSxFQUFFO1lBQ3BDLGNBQWMsRUFBRSxrQkFBYyxDQUFDLE9BQU87WUFDdEMsR0FBRyxPQUFPO1NBQ1gsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUMsYUFBYSxJQUFJLFFBQVEsQ0FBQztRQUN2RCxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxhQUFhLElBQUksT0FBTyxDQUFDO1FBRXRELElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxXQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENB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RSxFQUFFO2dCQUNqQixTQUFTLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7YUFDOUI7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG4gIEF3c0Nka0RlcHMsXG4gIEF3c0Nka0RlcHNDb21tb25PcHRpb25zLFxuICBDZGtDb25maWdDb21tb25PcHRpb25zLFxufSBmcm9tIFwiLlwiO1xuaW1wb3J0IHsgQ2RrQ29uZmlnLCBDZGtUYXNrcyB9IGZyb20gXCIuXCI7XG5pbXBvcnQgeyBDb21wb25lbnQsIERlcGVuZGVuY3lUeXBlLCBTYW1wbGVEaXIsIFNhbXBsZUZpbGUgfSBmcm9tIFwiLi5cIjtcbmltcG9ydCB7IEF3c0Nka0RlcHNQeSB9IGZyb20gXCIuL2F3c2Nkay1kZXBzLXB5XCI7XG5pbXBvcnQgeyBBd3NDZGtQeXRlc3RTYW1wbGUgfSBmcm9tIFwiLi9hd3NjZGstcHl0ZXN0LXNhbXBsZVwiO1xuaW1wb3J0IHsgUHl0ZXN0IH0gZnJvbSBcIi4uL3B5dGhvbi9weXRlc3RcIjtcbmltcG9ydCB0eXBlIHsgUHl0aG9uUHJvamVjdE9wdGlvbnMgfSBmcm9tIFwiLi4vcHl0aG9uL3B5dGhvbi1wcm9qZWN0XCI7XG5pbXBvcnQgeyBQeXRob25Qcm9qZWN0IH0gZnJvbSBcIi4uL3B5dGhvbi9weXRob24tcHJvamVjdFwiO1xuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGBBd3NDZGtQeXRob25BcHBgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXdzQ2RrUHl0aG9uQXBwT3B0aW9uc1xuICBleHRlbmRzXG4gICAgUHl0aG9uUHJvamVjdE9wdGlvbnMsXG4gICAgQ2RrQ29uZmlnQ29tbW9uT3B0aW9ucyxcbiAgICBBd3NDZGtEZXBzQ29tbW9uT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgQ0RLIGFwcCdzIGVudHJ5cG9pbnQgKHJlbGF0aXZlIHRvIHRoZSBzb3VyY2UgZGlyZWN0b3J5LCB3aGljaCBpc1xuICAgKiBcInNyY1wiIGJ5IGRlZmF1bHQpLlxuICAgKlxuICAgKiBAZGVmYXVsdCBcImFwcC5weVwiXG4gICAqL1xuICByZWFkb25seSBhcHBFbnRyeXBvaW50Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEFXUyBDREsgYXBwIGluIFB5dGhvblxuICpcbiAqIEBwamlkIGF3c2Nkay1hcHAtcHlcbiAqL1xuZXhwb3J0IGNsYXNzIEF3c0Nka1B5dGhvbkFwcCBleHRlbmRzIFB5dGhvblByb2plY3Qge1xuICAvKipcbiAgICogQ29tbW9uIENESyB0YXNrcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjZGtUYXNrczogQ2RrVGFza3M7XG5cbiAgLyoqXG4gICAqIGNkay5qc29uIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2RrQ29uZmlnOiBDZGtDb25maWc7XG5cbiAgcHVibGljIHJlYWRvbmx5IGNka0RlcHM6IEF3c0Nka0RlcHM7XG5cbiAgLyoqXG4gICAqIFRoZSBDREsgYXBwIGVudHJ5cG9pbnRcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhcHBFbnRyeXBvaW50OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkaXJlY3RvcnkgaW4gd2hpY2ggdGhlIHB5dGhvbiBzYW1wbGUgdGVzdHMgcmVzaWRlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNhbXBsZVRlc3RkaXI6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIENESyB2ZXJzaW9uIHRoaXMgYXBwIGlzIHVzaW5nLlxuICAgKi9cbiAgcHVibGljIGdldCBjZGtWZXJzaW9uKCkge1xuICAgIHJldHVybiB0aGlzLmNka0RlcHMuY2RrVmVyc2lvbjtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEF3c0Nka1B5dGhvbkFwcE9wdGlvbnMpIHtcbiAgICBzdXBlcih7IC4uLm9wdGlvbnMsIHB5dGVzdDogZmFsc2UsIHNhbXBsZTogZmFsc2UgfSk7XG5cbiAgICB0aGlzLmNka0RlcHMgPSBuZXcgQXdzQ2RrRGVwc1B5KHRoaXMsIHtcbiAgICAgIGRlcGVuZGVuY3lUeXBlOiBEZXBlbmRlbmN5VHlwZS5SVU5USU1FLFxuICAgICAgLi4ub3B0aW9ucyxcbiAgICB9KTtcbiAgICB0aGlzLmFwcEVudHJ5cG9pbnQgPSBvcHRpb25zLmFwcEVudHJ5cG9pbnQgPz8gXCJhcHAucHlcIjtcbiAgICB0aGlzLnNhbXBsZVRlc3RkaXIgPSBvcHRpb25zLnNhbXBsZVRlc3RkaXIgPz8gXCJ0ZXN0c1wiO1xuXG4gICAgdGhpcy5jZGtUYXNrcyA9IG5ldyBDZGtUYXNrcyh0aGlzKTtcbiAgICB0aGlzLnBvc3RDb21waWxlVGFzay5zcGF3bih0aGlzLmNka1Rhc2tzLnN5bnRoU2lsZW50KTtcblxuICAgIHRoaXMuY2RrQ29uZmlnID0gbmV3IENka0NvbmZpZyh0aGlzLCB7XG4gICAgICBhcHA6IGBweXRob24gJHt0aGlzLmFwcEVudHJ5cG9pbnR9YCxcbiAgICAgIHdhdGNoSW5jbHVkZXM6IFtcIioqXCJdLFxuICAgICAgd2F0Y2hFeGNsdWRlczogW1xuICAgICAgICBcIlJFQURNRS5tZFwiLFxuICAgICAgICBcImNkayouanNvblwiLFxuICAgICAgICBcInJlcXVpcmVtZW50cyoudHh0XCIsXG4gICAgICAgIFwic291cmNlLmJhdFwiLFxuICAgICAgICBcIioqL19faW5pdF9fLnB5XCIsXG4gICAgICAgIFwicHl0aG9uL19fcHljYWNoZV9fXCIsXG4gICAgICAgIFwidGVzdHNcIixcbiAgICAgIF0sXG4gICAgICAuLi5vcHRpb25zLFxuICAgIH0pO1xuXG4gICAgaWYgKG9wdGlvbnMuc2FtcGxlID8/IHRydWUpIHtcbiAgICAgIG5ldyBBcHBDb2RlKHRoaXMsIHRoaXMuYXBwRW50cnlwb2ludCk7XG4gICAgICBuZXcgTXlTdGFja0NvZGUodGhpcywgdGhpcy5tb2R1bGVOYW1lKTtcbiAgICB9XG5cbiAgICBpZiAob3B0aW9ucy5weXRlc3QgPz8gdHJ1ZSkge1xuICAgICAgdGhpcy5weXRlc3QgPSBuZXcgUHl0ZXN0KHRoaXMsIG9wdGlvbnMucHl0ZXN0T3B0aW9ucyk7XG4gICAgICBuZXcgQXdzQ2RrUHl0ZXN0U2FtcGxlKHRoaXMsIHRoaXMuc2FtcGxlVGVzdGRpcik7XG4gICAgfVxuICB9XG59XG5cbmNsYXNzIEFwcENvZGUgZXh0ZW5kcyBDb21wb25lbnQge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBBd3NDZGtQeXRob25BcHAsIGZpbGVOYW1lOiBzdHJpbmcpIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIGNvbnN0IHZlcnNpb25JbXBvcnQgPSBcImZyb20gYXdzX2NkayBpbXBvcnQgQXBwLCBFbnZpcm9ubWVudFwiO1xuXG4gICAgbmV3IFNhbXBsZUZpbGUocHJvamVjdCwgZmlsZU5hbWUsIHtcbiAgICAgIGNvbnRlbnRzOiBbXG4gICAgICAgIFwiaW1wb3J0IG9zXCIsXG4gICAgICAgIHZlcnNpb25JbXBvcnQsXG4gICAgICAgIGBmcm9tICR7cHJvamVjdC5tb2R1bGVOYW1lfS5tYWluIGltcG9ydCBNeVN0YWNrYCxcbiAgICAgICAgXCJcIixcbiAgICAgICAgXCIjIGZvciBkZXZlbG9wbWVudCwgdXNlIGFjY291bnQvcmVnaW9uIGZyb20gY2RrIGNsaVwiLFxuICAgICAgICBcImRldl9lbnYgPSBFbnZpcm9ubWVudChcIixcbiAgICAgICAgXCIgIGFjY291bnQ9b3MuZ2V0ZW52KCdDREtfREVGQVVMVF9BQ0NPVU5UJyksXCIsXG4gICAgICAgIFwiICByZWdpb249b3MuZ2V0ZW52KCdDREtfREVGQVVMVF9SRUdJT04nKVwiLFxuICAgICAgICBcIilcIixcbiAgICAgICAgXCJcIixcbiAgICAgICAgXCJhcHAgPSBBcHAoKVwiLFxuICAgICAgICBgTXlTdGFjayhhcHAsIFwiJHt0aGlzLnByb2plY3QubmFtZX0tZGV2XCIsIGVudj1kZXZfZW52KWAsXG4gICAgICAgIGAjIE15U3RhY2soYXBwLCBcIiR7dGhpcy5wcm9qZWN0Lm5hbWV9LXByb2RcIiwgZW52PXByb2RfZW52KWAsXG4gICAgICAgIFwiXCIsXG4gICAgICAgIFwiYXBwLnN5bnRoKClcIixcbiAgICAgIF0uam9pbihcIlxcblwiKSxcbiAgICB9KTtcbiAgfVxufVxuXG5jbGFzcyBNeVN0YWNrQ29kZSBleHRlbmRzIENvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1B5dGhvbkFwcCwgZGlyOiBzdHJpbmcpIHtcbiAgICBzdXBlcihwcm9qZWN0KTtcblxuICAgIGxldCBhcHBGaWxlOiBzdHJpbmdbXSA9IFtdO1xuICAgIGFwcEZpbGUucHVzaChcImltcG9ydCBvc1wiKTtcbiAgICBhcHBGaWxlLnB1c2goXCJmcm9tIGF3c19jZGsgaW1wb3J0IFN0YWNrXCIpO1xuICAgIGFwcEZpbGUucHVzaChcImZyb20gY29uc3RydWN0cyBpbXBvcnQgQ29uc3RydWN0XCIpO1xuICAgIGFwcEZpbGUucHVzaChcIlwiKTtcbiAgICBhcHBGaWxlLnB1c2goXCJcIik7XG4gICAgYXBwRmlsZS5wdXNoKFwiY2xhc3MgTXlTdGFjayhTdGFjayk6XCIpO1xuICAgIGFwcEZpbGUucHVzaChcbiAgICAgIFwiICBkZWYgX19pbml0X18oc2VsZiwgc2NvcGU6IENvbnN0cnVjdCwgY29uc3RydWN0X2lkOiBzdHIsICoqa3dhcmdzKSAtPiBOb25lOlwiLFxuICAgICk7XG4gICAgYXBwRmlsZS5wdXNoKFwiICAgIHN1cGVyKCkuX19pbml0X18oc2NvcGUsIGNvbnN0cnVjdF9pZCwgKiprd2FyZ3MpXCIpO1xuICAgIGFwcEZpbGUucHVzaChcIlwiKTtcbiAgICBhcHBGaWxlLnB1c2goXCIgICAgIyBUaGUgY29kZSB0aGF0IGRlZmluZXMgeW91ciBzdGFjayBnb2VzIGhlcmVcIik7XG4gICAgYXBwRmlsZS5wdXNoKFwiXCIpO1xuXG4gICAgbmV3IFNhbXBsZURpcihwcm9qZWN0LCBkaXIsIHtcbiAgICAgIGZpbGVzOiB7XG4gICAgICAgIFwiX19pbml0X18ucHlcIjogXCJcIixcbiAgICAgICAgXCJtYWluLnB5XCI6IGFwcEZpbGUuam9pbihcIlxcblwiKSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -95,10 +95,5 @@ export declare class AwsCdkTypeScriptApp extends TypeScriptAppProject {
95
95
  readonly cdkConfig: CdkConfig;
96
96
  readonly cdkDeps: AwsCdkDeps;
97
97
  constructor(options: AwsCdkTypeScriptAppOptions);
98
- /**
99
- * Adds an AWS CDK module dependencies
100
- * @param modules The list of modules to depend on
101
- */
102
- addCdkDependency(...modules: string[]): void;
103
98
  private getCdkApp;
104
99
  }