cloudstructs 0.4.18 → 0.4.21

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 (86) hide show
  1. package/.jsii +3 -3
  2. package/assets/slack-app/provider.lambda/index.js +7 -2
  3. package/assets/slack-textract/detect.lambda/index.js +54 -49
  4. package/assets/toolkit-cleaner/clean-images.lambda/index.js +7 -1
  5. package/changelog.md +1 -6
  6. package/lib/codecommit-mirror/index.d.ts +14 -39
  7. package/lib/codecommit-mirror/index.js +10 -19
  8. package/lib/ecs-service-roller/index.d.ts +10 -30
  9. package/lib/ecs-service-roller/index.js +7 -18
  10. package/lib/email-receiver/receiver.d.ts +7 -23
  11. package/lib/email-receiver/receiver.js +4 -8
  12. package/lib/saml-identity-provider/index.d.ts +6 -17
  13. package/lib/saml-identity-provider/index.js +5 -11
  14. package/lib/slack-app/manifest.d.ts +52 -133
  15. package/lib/slack-app/manifest.js +15 -12
  16. package/lib/slack-app/slack-app.d.ts +21 -53
  17. package/lib/slack-app/slack-app.js +8 -20
  18. package/lib/slack-events/index.d.ts +6 -19
  19. package/lib/slack-events/index.js +3 -8
  20. package/lib/slack-textract/index.d.ts +3 -16
  21. package/lib/slack-textract/index.js +3 -8
  22. package/lib/state-machine-cr-provider/index.d.ts +7 -23
  23. package/lib/state-machine-cr-provider/index.js +3 -8
  24. package/lib/static-website/index.d.ts +14 -36
  25. package/lib/static-website/index.js +5 -12
  26. package/lib/toolkit-cleaner/clean-images.lambda.js +8 -2
  27. package/lib/toolkit-cleaner/index.d.ts +5 -18
  28. package/lib/toolkit-cleaner/index.js +2 -7
  29. package/lib/url-shortener/index.d.ts +9 -25
  30. package/lib/url-shortener/index.js +3 -8
  31. package/node_modules/@sindresorhus/is/dist/index.d.ts +9 -4
  32. package/node_modules/@sindresorhus/is/dist/index.js +9 -3
  33. package/node_modules/@sindresorhus/is/package.json +1 -1
  34. package/node_modules/@sindresorhus/is/readme.md +24 -4
  35. package/node_modules/@slack/logger/node_modules/@types/node/README.md +1 -1
  36. package/node_modules/@slack/logger/node_modules/@types/node/buffer.d.ts +92 -2
  37. package/node_modules/@slack/logger/node_modules/@types/node/package.json +2 -2
  38. package/node_modules/@slack/logger/node_modules/@types/node/process.d.ts +1 -1
  39. package/node_modules/@slack/logger/node_modules/@types/node/stream/web.d.ts +2 -1
  40. package/node_modules/@slack/logger/node_modules/@types/node/url.d.ts +10 -6
  41. package/node_modules/@slack/web-api/node_modules/@types/node/README.md +1 -1
  42. package/node_modules/@slack/web-api/node_modules/@types/node/buffer.d.ts +92 -2
  43. package/node_modules/@slack/web-api/node_modules/@types/node/package.json +2 -2
  44. package/node_modules/@slack/web-api/node_modules/@types/node/process.d.ts +1 -1
  45. package/node_modules/@slack/web-api/node_modules/@types/node/stream/web.d.ts +2 -1
  46. package/node_modules/@slack/web-api/node_modules/@types/node/url.d.ts +10 -6
  47. package/node_modules/@types/cacheable-request/node_modules/@types/node/README.md +1 -1
  48. package/node_modules/@types/cacheable-request/node_modules/@types/node/buffer.d.ts +92 -2
  49. package/node_modules/@types/cacheable-request/node_modules/@types/node/package.json +2 -2
  50. package/node_modules/@types/cacheable-request/node_modules/@types/node/process.d.ts +1 -1
  51. package/node_modules/@types/cacheable-request/node_modules/@types/node/stream/web.d.ts +2 -1
  52. package/node_modules/@types/cacheable-request/node_modules/@types/node/url.d.ts +10 -6
  53. package/node_modules/@types/is-stream/node_modules/@types/node/README.md +1 -1
  54. package/node_modules/@types/is-stream/node_modules/@types/node/buffer.d.ts +92 -2
  55. package/node_modules/@types/is-stream/node_modules/@types/node/package.json +2 -2
  56. package/node_modules/@types/is-stream/node_modules/@types/node/process.d.ts +1 -1
  57. package/node_modules/@types/is-stream/node_modules/@types/node/stream/web.d.ts +2 -1
  58. package/node_modules/@types/is-stream/node_modules/@types/node/url.d.ts +10 -6
  59. package/node_modules/@types/keyv/node_modules/@types/node/README.md +1 -1
  60. package/node_modules/@types/keyv/node_modules/@types/node/buffer.d.ts +92 -2
  61. package/node_modules/@types/keyv/node_modules/@types/node/package.json +2 -2
  62. package/node_modules/@types/keyv/node_modules/@types/node/process.d.ts +1 -1
  63. package/node_modules/@types/keyv/node_modules/@types/node/stream/web.d.ts +2 -1
  64. package/node_modules/@types/keyv/node_modules/@types/node/url.d.ts +10 -6
  65. package/node_modules/@types/responselike/node_modules/@types/node/README.md +1 -1
  66. package/node_modules/@types/responselike/node_modules/@types/node/buffer.d.ts +92 -2
  67. package/node_modules/@types/responselike/node_modules/@types/node/package.json +2 -2
  68. package/node_modules/@types/responselike/node_modules/@types/node/process.d.ts +1 -1
  69. package/node_modules/@types/responselike/node_modules/@types/node/stream/web.d.ts +2 -1
  70. package/node_modules/@types/responselike/node_modules/@types/node/url.d.ts +10 -6
  71. package/node_modules/follow-redirects/index.js +82 -77
  72. package/node_modules/follow-redirects/package.json +1 -1
  73. package/node_modules/keyv/.nyc_output/{adb04494-7d0a-443f-9130-94b19c3fa19c.json → 5d6b8dd1-67cf-42ee-8492-c8ae62ce826c.json} +0 -0
  74. package/node_modules/keyv/.nyc_output/{17c338d1-cd21-4d2f-9d97-398f18a945cf.json → ce27532e-5888-46d4-ae10-5a71058d3f0c.json} +0 -0
  75. package/node_modules/keyv/.nyc_output/processinfo/5d6b8dd1-67cf-42ee-8492-c8ae62ce826c.json +1 -0
  76. package/node_modules/keyv/.nyc_output/processinfo/ce27532e-5888-46d4-ae10-5a71058d3f0c.json +1 -0
  77. package/node_modules/keyv/.nyc_output/processinfo/index.json +1 -1
  78. package/node_modules/keyv/package.json +7 -7
  79. package/node_modules/keyv/test/testdb.sqlite +0 -0
  80. package/package.json +7 -7
  81. package/releasetag.txt +1 -1
  82. package/version.txt +1 -1
  83. package/node_modules/keyv/.nyc_output/67b1f344-0eec-41a3-a665-c824c346e898.json +0 -1
  84. package/node_modules/keyv/.nyc_output/processinfo/17c338d1-cd21-4d2f-9d97-398f18a945cf.json +0 -1
  85. package/node_modules/keyv/.nyc_output/processinfo/67b1f344-0eec-41a3-a665-c824c346e898.json +0 -1
  86. package/node_modules/keyv/.nyc_output/processinfo/adb04494-7d0a-443f-9130-94b19c3fa19c.json +0 -1
@@ -6,27 +6,33 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
6
6
  const nodeUrl = require("url");
7
7
  const aws_cdk_lib_1 = require("aws-cdk-lib");
8
8
  /**
9
- * Type of shortcuts.
9
+ * Type of shortcuts
10
10
  *
11
11
  * @see https://api.slack.com/interactivity/shortcuts
12
- * @stability stable
13
12
  */
14
13
  var SlackAppManifestShortcutType;
15
14
  (function (SlackAppManifestShortcutType) {
15
+ /**
16
+ * Message shortcuts are shown to users in the context menus of messages within Slack
17
+ *
18
+ * @see https://api.slack.com/interactivity/shortcuts/using#message_shortcuts
19
+ */
16
20
  SlackAppManifestShortcutType["MESSAGE"] = "message";
21
+ /**
22
+ * Global shortcuts are available to users via the shortcuts button in the composer,
23
+ * and when using search in Slack
24
+ *
25
+ * @see https://api.slack.com/interactivity/shortcuts/using#global_shortcuts
26
+ */
17
27
  SlackAppManifestShortcutType["GLOBAL"] = "global";
18
28
  })(SlackAppManifestShortcutType = exports.SlackAppManifestShortcutType || (exports.SlackAppManifestShortcutType = {}));
19
29
  ;
20
30
  /**
21
- * A Slack app manifest.
31
+ * A Slack app manifest
22
32
  *
23
33
  * @see https://api.slack.com/reference/manifests
24
- * @stability stable
25
34
  */
26
35
  class SlackAppManifest {
27
- /**
28
- * @stability stable
29
- */
30
36
  constructor(props) {
31
37
  var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
32
38
  this.props = props;
@@ -65,9 +71,6 @@ class SlackAppManifest {
65
71
  validateItems('bot scopes', 255, (_p = props.oauthConfig) === null || _p === void 0 ? void 0 : _p.botScopes);
66
72
  validateItems('user scopes', 255, (_q = props.oauthConfig) === null || _q === void 0 ? void 0 : _q.userScopes);
67
73
  }
68
- /**
69
- * @stability stable
70
- */
71
74
  render(construct) {
72
75
  var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
73
76
  const schema = {
@@ -142,7 +145,7 @@ class SlackAppManifest {
142
145
  }
143
146
  exports.SlackAppManifest = SlackAppManifest;
144
147
  _a = JSII_RTTI_SYMBOL_1;
145
- SlackAppManifest[_a] = { fqn: "cloudstructs.SlackAppManifest", version: "0.4.18" };
148
+ SlackAppManifest[_a] = { fqn: "cloudstructs.SlackAppManifest", version: "0.4.21" };
146
149
  function prefixWith(prefix, string) {
147
150
  if (!string) {
148
151
  return undefined;
@@ -195,4 +198,4 @@ function removeUndefined(obj) {
195
198
  .reduce((a, [k, v]) => (v == null ? a : (a[k] = v, a)), {});
196
199
  return Object.keys(ret).length !== 0 ? ret : undefined;
197
200
  }
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuaWZlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xhY2stYXBwL21hbmlmZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQStCO0FBQy9CLDZDQUEyQzs7Ozs7OztBQTJJM0MsSUFBWSw0QkFNWDtBQU5ELFdBQVksNEJBQTRCO0lBRXRDLG1EQUFtQixDQUFBO0lBR25CLGlEQUFpQixDQUFBO0FBQ25CLENBQUMsRUFOVyw0QkFBNEIsR0FBNUIsb0NBQTRCLEtBQTVCLG9DQUE0QixRQU12QztBQTJCQSxDQUFDOzs7Ozs7O0FBZ0JGLE1BQWEsZ0JBQWdCOzs7O0lBQzNCLFlBQTZCLEtBQTRCOztRQUE1QixVQUFLLEdBQUwsS0FBSyxDQUF1QjtRQUN2RCxjQUFjLENBQUMsVUFBVSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDM0MsY0FBYyxDQUFDLGlCQUFpQixFQUFFLEdBQUcsRUFBRSxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDMUQsY0FBYyxDQUFDLHNCQUFzQixFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDcEUsYUFBYSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUVyQyxXQUFXLE9BQUMsS0FBSyxDQUFDLGtCQUFrQiwwQ0FBRSxVQUFVLENBQUMsQ0FBQztRQUNsRCxhQUFhLENBQUMsWUFBWSxFQUFFLEdBQUcsUUFBRSxLQUFLLENBQUMsa0JBQWtCLDBDQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ3RFLGFBQWEsQ0FBQyxjQUFjLEVBQUUsR0FBRyxRQUFFLEtBQUssQ0FBQyxrQkFBa0IsMENBQUUsVUFBVSxDQUFDLENBQUM7UUFFekUsV0FBVyxPQUFDLEtBQUssQ0FBQyxhQUFhLDBDQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzdDLFdBQVcsT0FBQyxLQUFLLENBQUMsYUFBYSwwQ0FBRSxxQkFBcUIsQ0FBQyxDQUFD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QUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDL0QsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzdCLE9BQU8sR0FBRyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0tBQzNDO0lBRUQsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUM7U0FDNUIsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDekUsTUFBTSxDQUFDLENBQUMsQ0FBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDakUsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQ3pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBub2RlVXJsIGZyb20gJ3VybCc7XG5pbXBvcnQgeyBTdGFjaywgVG9rZW4gfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBJQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0UHJvcHMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBsb25nRGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYmFja2dyb3VuZENvbG9yPzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBtYWpvclZlcnNpb24/OiBudW1iZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbWlub3JWZXJzaW9uPzogbnVtYmVyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBhbGxvd2VkSXBBZGRyZXNzUmFuZ2VzPzogc3RyaW5nW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGV2ZW50U3Vic2NyaXB0aW9ucz86IFNsYWNrQXBwTWFuaWZlc3RFdmVudFN1YnNjcmlwdGlvbnM7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGludGVyYWN0aXZpdHk/OiBTbGFja0FwcE1hbmlmZXN0SW50ZXJhY3Rpdml0eTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBvcmdEZXBsb3k/OiBib29sZWFuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHNvY2tldE1vZGU/OiBib29sZWFuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYXBwSG9tZT86IFNsYWNrQXBwTWFuaWZlc3RBcHBIb21lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBib3RVc2VyPzogU2xhY2trQXBwTWFuaWZlc3RCb3RVc2VyO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHNob3J0Y3V0cz86IFNsYWNrQXBwTWFuaWZlc3RTaG9ydGN1dFtdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHNsYXNoQ29tbWFuZHM/OiBTbGFja0FwcE1hbmlmZXN0U2xhc2hDb21tYW5kW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHdvcmtmbG93U3RlcHM/OiBTbGFja0FwcE1hbmlmZXN0V29ya2Zsb3dTdGVwW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgdW5mdXJsRG9tYWlucz86IHN0cmluZ1tdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgb2F1dGhDb25maWc/OiBTbGFja0FwcE1hbmlmZXN0T2F1dGhDb25maWc7XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0U2V0dGluZ3Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgYWxsb3dlZElwQWRkcmVzc1Jhbmdlcz86IHN0cmluZ1tdO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBldmVudFN1YnNjcmlwdGlvbnM/OiBTbGFja0FwcE1hbmlmZXN0RXZlbnRTdWJzY3JpcHRpb25zO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBpbnRlcmFjdGl2aXR5PzogU2xhY2tBcHBNYW5pZmVzdEludGVyYWN0aXZpdHk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgb3JnRGVwbG95PzogYm9vbGVhbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBzb2NrZXRNb2RlPzogYm9vbGVhbjtcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0RXZlbnRTdWJzY3JpcHRpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHJlcXVlc3RVcmw6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBib3RFdmVudHM/OiBzdHJpbmdbXTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHVzZXJFdmVudHM/OiBzdHJpbmdbXTtcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0SW50ZXJhY3Rpdml0eSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZW5hYmxlZD86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVxdWVzdFVybD86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbWVzc2FnZU1lbnVPcHRpb25zVXJsPzogc3RyaW5nO1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0QXBwSG9tZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgaG9tZVRhYj86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBtZXNzYWdlc1RhYj86IGJvb2xlYW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IG1lc3NhZ2VzVGFiUmVhZE9ubHk/OiBib29sZWFuO1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIFNsYWNra0FwcE1hbmlmZXN0Qm90VXNlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZGlzcGxheU5hbWU6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBhbHdheXNPbmxpbmU/OiBib29sZWFuO1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdFNob3J0Y3V0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgdHlwZTogU2xhY2tBcHBNYW5pZmVzdFNob3J0Y3V0VHlwZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNhbGxiYWNrSWQ6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgZGVzY3JpcHRpb246IHN0cmluZztcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGVudW0gU2xhY2tBcHBNYW5pZmVzdFNob3J0Y3V0VHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIE1FU1NBR0UgPSAnbWVzc2FnZScsXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIEdMT0JBTCA9ICdnbG9iYWwnLFxufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgaW50ZXJmYWNlIFNsYWNrQXBwTWFuaWZlc3RTbGFzaENvbW1hbmQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNvbW1hbmQ6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHVybD86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHVzYWdlSGludD86IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IHNob3VsZEVzY2FwZT86IGJvb2xlYW47XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdFdvcmtmbG93U3RlcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNhbGxiYWNrSWQ6IHN0cmluZztcbn07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0T2F1dGhDb25maWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgcmVkaXJlY3RVcmxzPzogc3RyaW5nW107XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBib3RTY29wZXM/OiBzdHJpbmdbXTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSB1c2VyU2NvcGVzPzogc3RyaW5nW107XG59XG5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgY2xhc3MgU2xhY2tBcHBNYW5pZmVzdCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgcHJvcHM6IFNsYWNrQXBwTWFuaWZlc3RQcm9wcykge1xuICAgIHZhbGlkYXRlTGVuZ3RoKCdhcHAgbmFtZScsIDM1LCBwcm9wcy5uYW1lKTtcbiAgICB2YWxpZGF0ZUxlbmd0aCgnYXBwIGRlc2NyaXB0aW9uJywgMTQwLCBwcm9wcy5kZXNjcmlwdGlvbik7XG4gICAgdmFsaWRhdGVMZW5ndGgoJ2FwcCBsb25nIGRlc2NyaXB0aW9uJywgNDAwMCwgcHJvcHMubG9uZ0Rlc2NyaXB0aW9uKTtcbiAgICB2YWxpZGF0ZUNvbG9yKHByb3BzLmJhY2tncm91bmRDb2xvcik7XG5cbiAgICB2YWxpZGF0ZVVybChwcm9wcy5ldmVudFN1YnNjcmlwdGlvbnM/LnJlcXVlc3RVcmwpO1xuICAgIHZhbGlkYXRlSXRlbXMoJ2JvdCBldmVudHMnLCAxMDAsIHByb3BzLmV2ZW50U3Vic2NyaXB0aW9ucz8uYm90RXZlbnRzKTtcbiAgICB2YWxpZGF0ZUl0ZW1zKCd1c2VycyBldmVudHMnLCAxMDAsIHByb3BzLmV2ZW50U3Vic2NyaXB0aW9ucz8udXNlckV2ZW50cyk7XG5cbiAgICB2YWxpZGF0ZVVybChwcm9wcy5pbnRlcmFjdGl2aXR5Py5yZXF1ZXN0VXJsKTtcbiAgICB2YWxpZGF0ZVVybChwcm9wcy5pbnRlcmFjdGl2aXR5Py5tZXNzYWdlTWVudU9wdGlvbnNVcmwpO1xuICAgIHZhbGlkYXRlTGVuZ3RoKCdib3QgZGlzcGxheSBuYW1lJywgODAsIHByb3BzLmJvdFVzZXI/LmRpc3BsYXlOYW1lKTtcblxuICAgIHZhbGlkYXRlSXRlbXMoJ3Nob3J0Y3V0cycsIDUsIHByb3BzLnNob3J0Y3V0cyk7XG4gICAgcHJvcHMuc2hvcnRjdXRzPy5mb3JFYWNoKChzaG9ydGN1dCkgPT4ge1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3Nob3J0Y3V0IGNhbGxiYWNrIElEJywgMjU1LCBzaG9ydGN1dC5jYWxsYmFja0lkKTtcbiAgICAgIHZhbGlkYXRlTGVuZ3RoKCdzaG9ydGN1dCBkZXNjcmlwdGlvbicsIDE1MCwgc2hvcnRjdXQuZGVzY3JpcHRpb24pO1xuICAgIH0pO1xuXG4gICAgdmFsaWRhdGVJdGVtcygnc2xhc2ggY29tbWFuZHMnLCA1LCBwcm9wcy5zbGFzaENvbW1hbmRzKTtcbiAgICBwcm9wcy5zbGFzaENvbW1hbmRzPy5mb3JFYWNoKChjb21tYW5kKSA9PiB7XG4gICAgICB2YWxpZGF0ZUxlbmd0aCgnc2xhc2ggY29tbWFuZCcsIDMyLCBjb21tYW5kLmNvbW1hbmQpO1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3NsYXNoIGNvbW1hbmQgZGVzY3JpcHRpb24nLCAyMDAwLCBjb21tYW5kLmRlc2NyaXB0aW9uKSxcbiAgICAgIHZhbGlkYXRlVXJsKGNvbW1hbmQudXJsKTtcbiAgICAgIHZhbGlkYXRlTGVuZ3RoKCdzbGFzaCBjb21tYW5kIHVzZSBoaW50JywgMTAwMCwgY29tbWFuZC51c2FnZUhpbnQpO1xuICAgIH0pO1xuXG4gICAgdmFsaWRhdGVJdGVtcygnd29ya2Zsb3cgc3RlcHMnLCAxMCwgcHJvcHMud29ya2Zsb3dTdGVwcyk7XG4gICAgcHJvcHMud29ya2Zsb3dTdGVwcz8uZm9yRWFjaCgoc3RlcCkgPT4ge1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3dvcmtmbG93IHN0ZXAgbmFtZScsIDUwLCBzdGVwLm5hbWUpO1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3dvcmtmbG93IHN0ZXAgY2FsbGJhY2sgSUQnLCA1MCwgc3RlcC5jYWxsYmFja0lkKTtcbiAgICB9KTtcblxuICAgIHZhbGlkYXRlSXRlbXMoJ3VuZnVybHMgZG9tYWlucycsIDUsIHByb3BzLnVuZnVybERvbWFpbnMpO1xuXG4gICAgdmFsaWRhdGVJdGVtcygnT0F1dGggcmVkaXJlY3QgVVJMcycsIDEwMDAsIHByb3BzLm9hdXRoQ29uZmlnPy5yZWRpcmVjdFVybHMpO1xuICAgIHByb3BzLm9hdXRoQ29uZmlnPy5yZWRpcmVjdFVybHM/LmZvckVhY2goKHVybCkgPT4ge1xuICAgICAgdmFsaWRhdGVVcmwodXJsLCBmYWxzZSk7XG4gICAgfSk7XG4gICAgdmFsaWRhdGVJdGVtcygnYm90IHNjb3BlcycsIDI1NSwgcHJvcHMub2F1dGhDb25maWc/LmJvdFNjb3Blcyk7XG4gICAgdmFsaWRhdGVJdGVtcygndXNlciBzY29wZXMnLCAyNTUsIHByb3BzLm9hdXRoQ29uZmlnPy51c2VyU2NvcGVzKTtcbiAgfVxuXG4gIHB1YmxpYyByZW5kZXIoY29uc3RydWN0OiBJQ29uc3RydWN0KTogc3RyaW5nIHtcbiAgICBjb25zdCBzY2hlbWE6IFNsYWNrQXBwTWFuaWZlc3RTY2hlbWEgPSB7XG4gICAgICBfbWV0YWRhdGE6IHtcbiAgICAgICAgbWFqb3JfdmVyc2lvbjogdGhpcy5wcm9wcy5tYWpvclZlcnNpb24sXG4gICAgICAgIG1pbm9yX3ZlcnNpb246IHRoaXMucHJvcHMubWlub3JWZXJzaW9uLFxuICAgICAgfSxcbiAgICAgIGRpc3BsYXlfaW5mb3JtYXRpb246IHtcbiAgICAgICAgbmFtZTogdGhpcy5wcm9wcy5uYW1lLFxuICAgICAgICBkZXNjcmlwdGlvbjogdGhpcy5wcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgICAgbG9uZ19kZXNjcmlwdGlvbjogdGhpcy5wcm9wcy5sb25nRGVzY3JpcHRpb24sXG4gICAgICAgIGJhY2tncm91bmRfY29sb3I6IHByZWZpeFdpdGgoJyMnLCB0aGlzLnByb3BzLmJhY2tncm91bmRDb2xvcik/LnRvTG93ZXJDYXNlKCksXG4gICAgICB9LFxuICAgICAgc2V0dGluZ3M6IHtcbiAgICAgICAgYWxsb3dlZF9pcF9hZGRyZXNzX3JhbmdlczogdGhpcy5wcm9wcy5hbGxvd2VkSXBBZGRyZXNzUmFuZ2VzLFxuICAgICAgICBldmVudF9zdWJzY3JpcHRpb25zOiB7XG4gICAgICAgICAgcmVxdWVzdF91cmw6IHRoaXMucHJvcHMuZXZlbnRTdWJzY3JpcHRpb25zPy5yZXF1ZXN0VXJsLFxuICAgICAgICAgIGJvdF9ldmVudHM6IHRoaXMucHJvcHMuZXZlbnRTdWJzY3JpcHRpb25zPy5ib3RFdmVudHMsXG4gICAgICAgICAgdXNlcl9ldmVudHM6IHRoaXMucHJvcHMuZXZlbnRTdWJzY3JpcHRpb25zPy51c2VyRXZlbnRzLFxuICAgICAgICB9LFxuICAgICAgICBpbnRlcmFjdGl2aXR5OiB0aGlzLnByb3BzLmludGVyYWN0aXZpdHlcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgIGlzX2VuYWJsZWQ6IHRoaXMucHJvcHMuaW50ZXJhY3Rpdml0eT8uZW5hYmxlZCA/PyB0cnVlLFxuICAgICAgICAgICAgcmVxdWVzdF91cmw6IHRoaXMucHJvcHMuaW50ZXJhY3Rpdml0eT8ucmVxdWVzdFVybCxcbiAgICAgICAgICAgIG1lc3NhZ2VfbWVudV9vcHRpb25zX3VybDogdGhpcy5wcm9wcy5pbnRlcmFjdGl2aXR5Py5tZXNzYWdlTWVudU9wdGlvbnNVcmwsXG4gICAgICAgICAgfVxuICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICBvcmdfZGVwbG95X2VuYWJsZWQ6IHRoaXMucHJvcHMub3JnRGVwbG95LFxuICAgICAgICBzb2NrZXRfbW9kZV9lbmFibGVkOiB0aGlzLnByb3BzLnNvY2tldE1vZGUsXG4gICAgICB9LFxuICAgICAgZmVhdHVyZXM6IHtcbiAgICAgICAgYXBwX2hvbWU6IHtcbiAgICAgICAgICBob21lX3RhYl9lbmFibGVkOiB0aGlzLnByb3BzLmFwcEhvbWU/LmhvbWVUYWIsXG4gICAgICAgICAgbWVzc2FnZXNfdGFiX2VuYWJsZWQ6IHRoaXMucHJvcHMuYXBwSG9tZT8ubWVzc2FnZXNUYWIsXG4gICAgICAgICAgbWVzc2FnZXNfdGFiX3JlYWRfb25seV9lbmFibGVkOiB0aGlzLnByb3BzLmFwcEhvbWU/Lm1lc3NhZ2VzVGFiUmVhZE9ubHksXG4gICAgICAgIH0sXG4gICAgICAgIGJvdF91c2VyOiB0aGlzLnByb3BzLmJvdFVzZXJcbiAgICAgICAgICA/IHtcbiAgICAgICAgICAgIGRpc3BsYXlfbmFtZTogdGhpcy5wcm9wcy5ib3RVc2VyPy5kaXNwbGF5TmFtZSxcbiAgICAgICAgICAgIGFsd2F5c19vbmxpbmU6IHRoaXMucHJvcHMuYm90VXNlcj8uYWx3YXlzT25saW5lLFxuICAgICAgICAgIH1cbiAgICAgICAgICA6IHVuZGVmaW5lZCxcbiAgICAgICAgc2hvcnRjdXRzOiB0aGlzLnByb3BzLnNob3J0Y3V0cz8ubWFwKChzaG9ydGN1dCkgPT4gKHtcbiAgICAgICAgICBuYW1lOiBzaG9ydGN1dC5uYW1lLFxuICAgICAgICAgIHR5cGU6IHNob3J0Y3V0LnR5cGUsXG4gICAgICAgICAgY2FsbGJhY2tfaWQ6IHNob3J0Y3V0LmNhbGxiYWNrSWQsXG4gICAgICAgICAgZGVzY3JpcHRpb246IHNob3J0Y3V0LmRlc2NyaXB0aW9uLFxuICAgICAgICB9KSksXG4gICAgICAgIHNsYXNoX2NvbW1hbmRzOiB0aGlzLnByb3BzLnNsYXNoQ29tbWFuZHM/Lm1hcCgoY29tbWFuZCkgPT4gKHtcbiAgICAgICAgICBjb21tYW5kOiBwcmVmaXhXaXRoKCcvJywgY29tbWFuZC5jb21tYW5kKSxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogY29tbWFuZC5kZXNjcmlwdGlvbixcbiAgICAgICAgICB1cmw6IGNvbW1hbmQudXJsLFxuICAgICAgICAgIHVzYWdlX2hpbnQ6IGNvbW1hbmQudXNhZ2VIaW50LFxuICAgICAgICAgIHNob3VsZF9lc2NhcGU6IGNvbW1hbmQuc2hvdWxkRXNjYXBlLFxuICAgICAgICB9KSksXG4gICAgICAgIHdvcmtmbG93X3N0ZXBzOiB0aGlzLnByb3BzLndvcmtmbG93U3RlcHM/Lm1hcCgoc3RlcCkgPT4gKHtcbiAgICAgICAgICBuYW1lOiBzdGVwLm5hbWUsXG4gICAgICAgICAgY2FsbGJhY2tfaWQ6IHN0ZXAuY2FsbGJhY2tJZCxcbiAgICAgICAgfSkpLFxuICAgICAgICB1bmZ1cmxfZG9tYWluczogdGhpcy5wcm9wcy51bmZ1cmxEb21haW5zLFxuICAgICAgfSxcbiAgICAgIG9hdXRoX2NvbmZpZzoge1xuICAgICAgICByZWRpcmVjdF91cmxzOiB0aGlzLnByb3BzLm9hdXRoQ29uZmlnPy5yZWRpcmVjdFVybHMsXG4gICAgICAgIHNjb3Blczoge1xuICAgICAgICAgIGJvdDogdGhpcy5wcm9wcy5vYXV0aENvbmZpZz8uYm90U2NvcGVzLFxuICAgICAgICAgIHVzZXJzOiB0aGlzLnByb3BzLm9hdXRoQ29uZmlnPy51c2VyU2NvcGVzLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgcmV0dXJuIFN0YWNrLm9mKGNvbnN0cnVjdCkudG9Kc29uU3RyaW5nKHJlbW92ZVVuZGVmaW5lZChzY2hlbWEpKTtcbiAgfVxufVxuXG5pbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdFNjaGVtYSB7XG4gIF9tZXRhZGF0YT86IHtcbiAgICBtYWpvcl92ZXJzaW9uPzogbnVtYmVyO1xuICAgIG1pbm9yX3ZlcnNpb24/OiBudW1iZXI7XG4gIH07XG4gIGRpc3BsYXlfaW5mb3JtYXRpb246IHtcbiAgICBuYW1lOiBzdHJpbmc7XG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gICAgbG9uZ19kZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBiYWNrZ3JvdW5kX2NvbG9yPzogc3RyaW5nO1xuICB9O1xuICBzZXR0aW5ncz86IHtcbiAgICBhbGxvd2VkX2lwX2FkZHJlc3NfcmFuZ2VzPzogc3RyaW5nW107XG4gICAgZXZlbnRfc3Vic2NyaXB0aW9ucz86IHtcbiAgICAgIHJlcXVlc3RfdXJsPzogc3RyaW5nO1xuICAgICAgYm90X2V2ZW50cz86IHN0cmluZ1tdO1xuICAgICAgdXNlcl9ldmVudHM/OiBzdHJpbmdbXTtcbiAgICB9O1xuICAgIGludGVyYWN0aXZpdHk/OiB7XG4gICAgICBpc19lbmFibGVkOiBib29sZWFuO1xuICAgICAgcmVxdWVzdF91cmw/OiBzdHJpbmc7XG4gICAgICBtZXNzYWdlX21lbnVfb3B0aW9uc191cmw/OiBzdHJpbmc7XG4gICAgfTtcbiAgICBvcmdfZGVwbG95X2VuYWJsZWQ/OiBib29sZWFuO1xuICAgIHNvY2tldF9tb2RlX2VuYWJsZWQ/OiBib29sZWFuO1xuICB9O1xuICBmZWF0dXJlcz86IHtcbiAgICBhcHBfaG9tZT86IHtcbiAgICAgIGhvbWVfdGFiX2VuYWJsZWQ/OiBib29sZWFuO1xuICAgICAgbWVzc2FnZXNfdGFiX2VuYWJsZWQ/OiBib29sZWFuO1xuICAgICAgbWVzc2FnZXNfdGFiX3JlYWRfb25seV9lbmFibGVkPzogYm9vbGVhbjtcbiAgICB9O1xuICAgIGJvdF91c2VyPzoge1xuICAgICAgZGlzcGxheV9uYW1lOiBzdHJpbmc7XG4gICAgICBhbHdheXNfb25saW5lPzogYm9vbGVhbjtcbiAgICB9O1xuICAgIHNob3J0Y3V0cz86IHtcbiAgICAgIG5hbWU6IHN0cmluZztcbiAgICAgIHR5cGU6IHN0cmluZztcbiAgICAgIGNhbGxiYWNrX2lkOiBzdHJpbmc7XG4gICAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICAgIH1bXTtcbiAgICBzbGFzaF9jb21tYW5kcz86IHtcbiAgICAgIGNvbW1hbmQ6IHN0cmluZztcbiAgICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgICB1cmw/OiBzdHJpbmc7XG4gICAgICB1c2FnZV9oaW50Pzogc3RyaW5nO1xuICAgICAgc2hvdWxkX2VzY2FwZT86IGJvb2xlYW47XG4gICAgfVtdO1xuICAgIHdvcmtmbG93X3N0ZXBzPzoge1xuICAgICAgbmFtZTogc3RyaW5nO1xuICAgICAgY2FsbGJhY2tfaWQ6IHN0cmluZztcbiAgICB9W107XG4gICAgdW5mdXJsX2RvbWFpbnM/OiBzdHJpbmdbXTtcbiAgfTtcbiAgb2F1dGhfY29uZmlnPzoge1xuICAgIHJlZGlyZWN0X3VybHM/OiBzdHJpbmdbXTtcbiAgICBzY29wZXM/OiB7XG4gICAgICBib3Q/OiBzdHJpbmdbXTtcbiAgICAgIHVzZXJzPzogc3RyaW5nW107XG4gICAgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gcHJlZml4V2l0aDxUIGV4dGVuZHMgc3RyaW5nIHwgdW5kZWZpbmVkPihwcmVmaXg6IHN0cmluZywgc3RyaW5nOiBUKTogVCB7XG4gIGlmICghc3RyaW5nKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZCBhcyBUO1xuICB9XG5cbiAgaWYgKHN0cmluZy5zdGFydHNXaXRoKHByZWZpeCkpIHtcbiAgICByZXR1cm4gc3RyaW5nO1xuICB9XG5cbiAgcmV0dXJuIGAke3ByZWZpeH0ke3N0cmluZ31gIGFzIFQ7XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlTGVuZ3RoKGRlc2NyaXB0aW9uOiBzdHJpbmcsIG1heDogbnVtYmVyLCB4cz86IHN0cmluZyk6IHZvaWQge1xuICBpZiAoeHMgJiYgIVRva2VuLmlzVW5yZXNvbHZlZCh4cykgJiYgeHMubGVuZ3RoID4gbWF4KSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBNYXhpbXVtIGxlbmd0aCBmb3IgJHtkZXNjcmlwdGlvbn0gaXMgJHttYXh9LCBnb3QgJHt4cy5sZW5ndGh9OiAke3hzfWApO1xuICB9XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlSXRlbXM8VD4oZGVzY3JpcHRpb246IHN0cmluZywgbWF4OiBudW1iZXIsIHhzPzogVFtdKTogdm9pZCB7XG4gIGlmICh4cyAmJiAhVG9rZW4uaXNVbnJlc29sdmVkKHhzKSAmJiB4cy5sZW5ndGggPiBtYXgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIGZvciAke2Rlc2NyaXB0aW9ufSBpcyAke21heH0sIGdvdCAke3hzLmxlbmd0aH1gKTtcbiAgfVxufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZUNvbG9yKGNvbG9yPzogc3RyaW5nKTogdm9pZCB7XG4gIGlmIChjb2xvciAmJiAhVG9rZW4uaXNVbnJlc29sdmVkKGNvbG9yKSAmJiAhL14jPyhbMC05YS1mQS1GXXszfXxbMC05YS1mQS1GXXs2fSkkLy50ZXN0KGNvbG9yKSkge1xuICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBoZXggY29sb3I6ICR7Y29sb3J9YCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVVcmwodXJsPzogc3RyaW5nLCBodHRwcyA9IHRydWUpOiB2b2lkIHtcbiAgaWYgKHVybCAmJiAhVG9rZW4uaXNVbnJlc29sdmVkKHVybCkpIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcGFyc2VkID0gbmV3IG5vZGVVcmwuVVJMKHVybCk7XG4gICAgICBpZiAoaHR0cHMgJiYgcGFyc2VkLnByb3RvY29sICE9PSAnaHR0cHM6Jykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgcHJvdG9jb2wnKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHt1cmx9IGlzIG5vdCBhIHZhbGlkJHtodHRwcyA/ICcgSFRUUFMnIDogJyd9IHVybGApO1xuICAgIH1cbiAgfVxufVxuXG5mdW5jdGlvbiByZW1vdmVVbmRlZmluZWQob2JqOiBhbnkpOiBhbnkge1xuICBpZiAodHlwZW9mIG9iaiA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gb2JqO1xuICB9XG5cbiAgaWYgKEFycmF5LmlzQXJyYXkob2JqKSkge1xuICAgIGNvbnN0IHJldCA9IG9ialxuICAgICAgLm1hcCh2ID0+ICh2ICYmIHR5cGVvZiB2ID09PSAnb2JqZWN0JykgPyByZW1vdmVVbmRlZmluZWQodikgOiB2KVxuICAgICAgLmZpbHRlcih2ID0+ICEodiA9PSBudWxsKSk7XG4gICAgcmV0dXJuIHJldC5sZW5ndGggIT09IDAgPyByZXQgOiB1bmRlZmluZWQ7XG4gIH1cblxuICBjb25zdCByZXQgPSBPYmplY3QuZW50cmllcyhvYmopXG4gICAgLm1hcCgoW2ssIHZdKSA9PiBbaywgdiAmJiB0eXBlb2YgdiA9PT0gJ29iamVjdCcgPyByZW1vdmVVbmRlZmluZWQodikgOiB2XSlcbiAgICAucmVkdWNlKChhOiBhbnksIFtrLCB2XSkgPT4gKHYgPT0gbnVsbCA/IGEgOiAoYVtrXT12LCBhKSksIHt9KTtcbiAgcmV0dXJuIE9iamVjdC5rZXlzKHJldCkubGVuZ3RoICE9PSAwID8gcmV0IDogdW5kZWZpbmVkO1xufVxuIl19
201
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuaWZlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xhY2stYXBwL21hbmlmZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsK0JBQStCO0FBQy9CLDZDQUEyQztBQXNVM0M7Ozs7R0FJRztBQUNILElBQVksNEJBZVg7QUFmRCxXQUFZLDRCQUE0QjtJQUN0Qzs7OztPQUlHO0lBQ0gsbURBQW1CLENBQUE7SUFFbkI7Ozs7O09BS0c7SUFDSCxpREFBaUIsQ0FBQTtBQUNuQixDQUFDLEVBZlcsNEJBQTRCLEdBQTVCLG9DQUE0QixLQUE1QixvQ0FBNEIsUUFldkM7QUErREEsQ0FBQztBQW1DRjs7OztHQUlHO0FBQ0gsTUFBYSxnQkFBZ0I7SUFDM0IsWUFBNkIsS0FBNEI7O1FBQTVCLFVBQUssR0FBTCxLQUFLLENBQXVCO1FBQ3ZELGNBQWMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQyxjQUFjLENBQUMsaUJBQWlCLEVBQUUsR0FBRyxFQUFFLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMxRCxjQUFjLENBQUMsc0JBQXNCLEVBQUUsSUFBSSxFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNwRSxhQUFhLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBRXJDLFdBQVcsT0FBQyxLQUFLLENBQUMsa0JBQWtCLDBDQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ2xELGFBQWEsQ0FBQyxZQUFZLEVBQUUsR0FBRyxRQUFFLEtBQUssQ0FBQyxrQkFBa0IsMENBQUUsU0FBUyxDQUFDLENBQUM7UUFDdEUsYUFBYSxDQUFDLGNBQWMsRUFBRSxHQUFHLFFBQUUsS0FBSyxDQUFDLGtCQUFrQiwwQ0FBRSxVQUFVLENBQUMsQ0FBQztRQUV6RSxXQUFXLE9BQUMsS0FBSyxDQUFDLGFBQWEsMENBQUUsVUFBVSxDQUFDLENBQUM7UUFDN0MsV0FBVyxPQUFD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QU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMvRCxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDN0IsT0FBTyxHQUFHLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7S0FDM0M7SUFFRCxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztTQUM1QixHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN6RSxNQUFNLENBQUMsQ0FBQyxDQUFNLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNqRSxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDekQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIG5vZGVVcmwgZnJvbSAndXJsJztcbmltcG9ydCB7IFN0YWNrLCBUb2tlbiB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IElDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIFNsYWNrIGFwcCBtYW5pZmVzdFxuICpcbiAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL3JlZmVyZW5jZS9tYW5pZmVzdHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0UHJvcHMge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGFwcC5cbiAgICpcbiAgICogTWF4aW11bSBsZW5ndGggaXMgMzUgY2hhcmFjdGVycy5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogQSBzaG9ydCBkZXNjcmlwdGlvbiBvZiB0aGUgYXBwIGZvciBkaXNwbGF5IHRvIHVzZXJzLlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBpcyAxNDAgY2hhcmFjdGVycy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBzaG9ydCBkZXNjcmlwdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgbG9uZ2VyIHZlcnNpb24gb2YgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBhcHAuXG4gICAqXG4gICAqIE1heGltdW0gbGVuZ3RoIGlzIDQwMDAgY2hhcmFjdGVycy5cbiAgICovXG4gIHJlYWRvbmx5IGxvbmdEZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogQSBoZXggY29sb3IgdmFsdWUgdGhhdCBzcGVjaWZpZXMgdGhlIGJhY2tncm91bmQgY29sb3IgdXNlZCBvbiBob3ZlcmNhcmRzXG4gICAqIHRoYXQgZGlzcGxheSBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIGFwcC5cbiAgICpcbiAgICogQ2FuIGJlIDMtZGlnaXQgKCMwMDApIG9yIDYtZGlnaXQgKCMwMDAwMDApIGhleCB2YWx1ZXMgd2l0aCBvciB3aXRob3V0ICNcbiAgICovXG4gIHJlYWRvbmx5IGJhY2tncm91bmRDb2xvcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG1ham9yIHZlcnNpb24gb2YgdGhlIG1hbmlmZXN0IHNjaGVtYSB0byB0YXJnZXQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gZG8gbm90IHRhcmdldCBhIHNwZWNpZmljIG1ham9yIHZlcnNpb25cbiAgICovXG4gIHJlYWRvbmx5IG1ham9yVmVyc2lvbj86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIG1pbm9yIHZlcnNpb24gb2YgdGhlIG1hbmlmZXN0IHNjaGVtYSB0byB0YXJnZXRcbiAgICpcbiAgICogQGRlZmF1bHQgLSBkbyBub3QgdGFyZ2V0IGEgc3BlY2lmaWMgbWlub3IgdmVyc2lvblxuICAgKi9cbiAgcmVhZG9ubHkgbWlub3JWZXJzaW9uPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBBbiBhcnJheSBvZiBJUCBhZGRyZXNzZXMgdGhhdCBjb25mb3JtIHRvIHRoZSBBbGxvd2VkIElQIFJhbmdlcyBmZWF0dXJlXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2F1dGhlbnRpY2F0aW9uL2Jlc3QtcHJhY3RpY2VzI2lwX2FsbG93bGlzdGluZ1xuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dlZElwQWRkcmVzc1Jhbmdlcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBFdmVudHMgQVBJIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBhcHBcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vZXZlbnRzLWFwaVxuICAgKi9cbiAgcmVhZG9ubHkgZXZlbnRTdWJzY3JpcHRpb25zPzogU2xhY2tBcHBNYW5pZmVzdEV2ZW50U3Vic2NyaXB0aW9ucztcblxuICAvKipcbiAgICogSW50ZXJhY3Rpdml0eSBjb25maWd1cmF0aW9uIGZvciB0aGUgYXBwXG4gICAqL1xuICByZWFkb25seSBpbnRlcmFjdGl2aXR5PzogU2xhY2tBcHBNYW5pZmVzdEludGVyYWN0aXZpdHk7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3JnLXdpZGUgZGVwbG95IGlzIGVuYWJsZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2VudGVycHJpc2UvYXBwc1xuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgb3JnRGVwbG95PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciBTb2NrZXQgTW9kZSBpcyBlbmFibGVkXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2FwaXMvY29ubmVjdGlvbnMvc29ja2V0XG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBzb2NrZXRNb2RlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQXBwIEhvbWUgY29uZmlndXJhdGlvblxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vYXBpLnNsYWNrLmNvbS9zdXJmYWNlcy90YWJzXG4gICAqL1xuICByZWFkb25seSBhcHBIb21lPzogU2xhY2tBcHBNYW5pZmVzdEFwcEhvbWU7XG5cbiAgLyoqXG4gICAqIEJvdCB1c2VyIGNvbmZpZ3VyYXRpb25cbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vYm90LXVzZXJzXG4gICAqL1xuICByZWFkb25seSBib3RVc2VyPzogU2xhY2trQXBwTWFuaWZlc3RCb3RVc2VyO1xuXG4gIC8qKlxuICAgKiBTaG9ydGN1dHMgY29uZmlndXJhdGlvbi5cbiAgICpcbiAgICogQSBtYXhpbXVtIG9mIDUgc2hvcnRjdXRzIGNhbiBiZSBpbmNsdWRlZC5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vaW50ZXJhY3Rpdml0eS9zaG9ydGN1dHNcbiAgICovXG4gIHJlYWRvbmx5IHNob3J0Y3V0cz86IFNsYWNrQXBwTWFuaWZlc3RTaG9ydGN1dFtdO1xuXG4gIC8qKlxuICAgKiBTbGFzaCBjb21tYW5kcyBjb25maWd1cmF0aW9uLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgNSBzbGFzaCBjb21tYW5kcyBjYW4gYmUgaW5jbHVkZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2ludGVyYWN0aXZpdHkvc2xhc2gtY29tbWFuZHNcbiAgICovXG4gIHJlYWRvbmx5IHNsYXNoQ29tbWFuZHM/OiBTbGFja0FwcE1hbmlmZXN0U2xhc2hDb21tYW5kW107XG5cbiAgLyoqXG4gICAqIFdvcmtmbG93IHN0ZXBzLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgMTAgd29ya2Zsb3cgc3RlcHMgY2FuIGJlIGluY2x1ZGVkLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vYXBpLnNsYWNrLmNvbS93b3JrZmxvd3Mvc3RlcHNcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93U3RlcHM/OiBTbGFja0FwcE1hbmlmZXN0V29ya2Zsb3dTdGVwW107XG5cbiAgLyoqXG4gICAqIFZhbGlkIHVuZnVybCBkb21haW5zIHRvIHJlZ2lzdGVyLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgNSB1bmZ1cmwgZG9tYWlucyBjYW4gYmUgaW5jbHVkZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL3JlZmVyZW5jZS9tZXNzYWdpbmcvbGluay11bmZ1cmxpbmcjY29uZmlndXJpbmdfZG9tYWluc1xuICAgKi9cbiAgcmVhZG9ubHkgdW5mdXJsRG9tYWlucz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBPQXV0aCBjb25maWd1cmF0aW9uIGZvciB0aGUgYXBwXG4gICAqL1xuICByZWFkb25seSBvYXV0aENvbmZpZz86IFNsYWNrQXBwTWFuaWZlc3RPYXV0aENvbmZpZztcbn1cblxuLyoqXG4gKiBTZXR0aW5ncyBzZWN0aW9uIG9mIHRoZSBhcHAgY29uZmlnIHBhZ2VzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdFNldHRpbmdzIHtcbiAgLyoqXG4gICAqIEFuIGFycmF5IG9mIElQIGFkZHJlc3NlcyB0aGF0IGNvbmZvcm0gdG8gdGhlIEFsbG93ZWQgSVAgUmFuZ2VzIGZlYXR1cmVcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vYXV0aGVudGljYXRpb24vYmVzdC1wcmFjdGljZXMjaXBfYWxsb3dsaXN0aW5nXG4gICAqL1xuICByZWFkb25seSBhbGxvd2VkSXBBZGRyZXNzUmFuZ2VzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEV2ZW50cyBBUEkgY29uZmlndXJhdGlvbiBmb3IgdGhlIGFwcFxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vYXBpLnNsYWNrLmNvbS9ldmVudHMtYXBpXG4gICAqL1xuICByZWFkb25seSBldmVudFN1YnNjcmlwdGlvbnM/OiBTbGFja0FwcE1hbmlmZXN0RXZlbnRTdWJzY3JpcHRpb25zO1xuXG4gIC8qKlxuICAgKiBJbnRlcmFjdGl2aXR5IGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBhcHBcbiAgICovXG4gIHJlYWRvbmx5IGludGVyYWN0aXZpdHk/OiBTbGFja0FwcE1hbmlmZXN0SW50ZXJhY3Rpdml0eTtcblxuICAvKipcbiAgICogV2hldGhlciBvcmctd2lkZSBkZXBsb3kgaXMgZW5hYmxlZC5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vZW50ZXJwcmlzZS9hcHBzXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBvcmdEZXBsb3k/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIFNvY2tldCBNb2RlIGlzIGVuYWJsZWRcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vYXBpcy9jb25uZWN0aW9ucy9zb2NrZXRcbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHNvY2tldE1vZGU/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIEV2ZW50cyBBUEkgY29uZmlndXJhdGlvbiBmb3IgdGhlIGFwcFxuICpcbiAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2V2ZW50cy1hcGlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0RXZlbnRTdWJzY3JpcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBmdWxsIGh0dHBzIFVSTCB0aGF0IGFjdHMgYXMgdGhlIEV2ZW50cyBBUEkgcmVxdWVzdCBVUkxcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vZXZlbnRzLWFwaSN0aGUtZXZlbnRzLWFwaV9fc3Vic2NyaWJpbmctdG8tZXZlbnQtdHlwZXNfX2V2ZW50cy1hcGktcmVxdWVzdC11cmxzXG4gICAqL1xuICByZWFkb25seSByZXF1ZXN0VXJsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEV2ZW50IHR5cGVzIHlvdSB3YW50IHRoZSBhcHAgdG8gc3Vic2NyaWJlIHRvLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgMTAwIGV2ZW50IHR5cGVzIGNhbiBiZSB1c2VkXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2V2ZW50c1xuICAgKi9cbiAgcmVhZG9ubHkgYm90RXZlbnRzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEV2ZW50IHR5cGVzIHlvdSB3YW50IHRoZSBhcHAgdG8gc3Vic2NyaWJlIHRvIG9uIGJlaGFsZiBvZiBhdXRob3JpemVkIHVzZXJzLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgMTAwIGV2ZW50IHR5cGVzIGNhbiBiZSB1c2VkLlxuICAgKi9cbiAgcmVhZG9ubHkgdXNlckV2ZW50cz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEludGVyYWN0aXZpdHkgY29uZmlndXJhdGlvbiBmb3IgdGhlIGFwcFxuICpcbiAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2ludGVyYWN0aXZpdHkvaGFuZGxpbmcjc2V0dXBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0SW50ZXJhY3Rpdml0eSB7XG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCBpbnRlcmFjdGl2aXR5IGZlYXR1cmVzIGFyZSBlbmFibGVkXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGVuYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgZnVsbCBodHRwcyBVUkwgdGhhdCBhY3RzIGFzIHRoZSBpbnRlcmFjdGl2ZSBSZXF1ZXN0IFVSTFxuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWVzdFVybD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGZ1bGwgaHR0cHMgVVJMIHRoYXQgYWN0cyBhcyB0aCBpbnRlcmFjdGl2ZSBPcHRpb25zIExvYWQgVVJMXG4gICAqL1xuICByZWFkb25seSBtZXNzYWdlTWVudU9wdGlvbnNVcmw/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQXBwIEhvbWUgY29uZmlndXJhdGlvblxuICpcbiAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL3N1cmZhY2VzL3RhYnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0QXBwSG9tZSB7XG4gIC8qKlxuICAgKiBXZXRoZXIgdGhlIEhvbWUgdGFiIGlzIGVuYWJsZWRcbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGhvbWVUYWI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXZXRoZXIgdGhlIE1lc3NhZ2VzIGlzIGVuYWJsZWRcbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IG1lc3NhZ2VzVGFiPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgdXNlcnMgY2FuIHNlbmQgbWVzc2FnZXMgdG8geW91ciBhcHAgaW4gdGhlXG4gICAqIE1lc3NhZ2VzIHRhYiBvZiB5b3VyIEFwcCBIb21lXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBtZXNzYWdlc1RhYlJlYWRPbmx5PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBCb3QgdXNlciBjb25maWd1cmF0aW9uXG4gKlxuICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vYm90LXVzZXJzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2trQXBwTWFuaWZlc3RCb3RVc2VyIHtcbiAgLyoqXG4gICAqIFRoZSBkaXNwbGF5IG5hbWUgb2YgdGhlIGJvdCB1c2VyLlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBpcyA4MCBjaGFyYWN0ZXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGlzcGxheU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgYm90IHVzZXIgd2lsbCBhbHdheXMgYXBwZWFyIHRvIGJlIG9ubGluZVxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgYWx3YXlzT25saW5lPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBTaG9ydGN1dCBjb25maWd1cmF0aW9uXG4gKlxuICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vaW50ZXJhY3Rpdml0eS9zaG9ydGN1dHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0U2hvcnRjdXQge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHNob3J0Y3V0XG4gICAqL1xuICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHNob3J0Y3V0XG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2ludGVyYWN0aXZpdHkvc2hvcnRjdXRzXG4gICAqL1xuICByZWFkb25seSB0eXBlOiBTbGFja0FwcE1hbmlmZXN0U2hvcnRjdXRUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgY2FsbGJhY2sgSUQgb2YgdGhlIHNob3J0Y3V0LlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBpcyAyNTUgY2hhcmFjdGVycy5cbiAgICovXG4gIHJlYWRvbmx5IGNhbGxiYWNrSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQSBzaG9ydCBkZXNjcmlwdGlvbiBvZiB0aGUgc2hvcnRjdXRcbiAgICpcbiAgICogTWF4aW11bSBsZW5ndGggaXMgMTUwIGNoYXJhY3RlcnNcbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogVHlwZSBvZiBzaG9ydGN1dHNcbiAqXG4gKiBAc2VlIGh0dHBzOi8vYXBpLnNsYWNrLmNvbS9pbnRlcmFjdGl2aXR5L3Nob3J0Y3V0c1xuICovXG5leHBvcnQgZW51bSBTbGFja0FwcE1hbmlmZXN0U2hvcnRjdXRUeXBlIHtcbiAgLyoqXG4gICAqIE1lc3NhZ2Ugc2hvcnRjdXRzIGFyZSBzaG93biB0byB1c2VycyBpbiB0aGUgY29udGV4dCBtZW51cyBvZiBtZXNzYWdlcyB3aXRoaW4gU2xhY2tcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vaW50ZXJhY3Rpdml0eS9zaG9ydGN1dHMvdXNpbmcjbWVzc2FnZV9zaG9ydGN1dHNcbiAgICovXG4gIE1FU1NBR0UgPSAnbWVzc2FnZScsXG5cbiAgLyoqXG4gICAqIEdsb2JhbCBzaG9ydGN1dHMgYXJlIGF2YWlsYWJsZSB0byB1c2VycyB2aWEgdGhlIHNob3J0Y3V0cyBidXR0b24gaW4gdGhlIGNvbXBvc2VyLFxuICAgKiBhbmQgd2hlbiB1c2luZyBzZWFyY2ggaW4gU2xhY2tcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vaW50ZXJhY3Rpdml0eS9zaG9ydGN1dHMvdXNpbmcjZ2xvYmFsX3Nob3J0Y3V0c1xuICAgKi9cbiAgR0xPQkFMID0gJ2dsb2JhbCcsXG59XG5cbi8qKlxuICogU2xhc2ggY29tbWFuZCBjb25maWd1cmF0aW9uXG4gKlxuICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vaW50ZXJhY3Rpdml0eS9zbGFzaC1jb21tYW5kc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNsYWNrQXBwTWFuaWZlc3RTbGFzaENvbW1hbmQge1xuICAvKipcbiAgICogVGhlIGFjdHVhbCBzbGFzaCBjb21tYW5kLlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBpcyAzMiBjaGFyYWN0ZXJzXG4gICAqL1xuICByZWFkb25seSBjb21tYW5kOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgc2xhc2ggY29tbWFuZC5cbiAgICpcbiAgICogTWF4aW11bSBsZW5ndGggaXMgMjAwMCBjaGFyYWN0ZXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb246IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGZ1bGwgaHR0cHMgVVJMIHRoYXQgYWN0cyBhcyB0aGUgc2xhc2ggY29tbWFuZCdzIHJlcXVlc3QgVVJMXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2ludGVyYWN0aXZpdHkvc2xhc2gtY29tbWFuZHMjY3JlYXRpbmdfY29tbWFuZHNcbiAgICovXG4gIHJlYWRvbmx5IHVybD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHNob3J0IHVzYWdlIGhpbnQgYWJvdXQgdGhlIHNsYXNoIGNvbW1hbmQgZm9yIHVzZXJzLlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBpcyAxMDAwIGNoYXJhY3RlcnMuXG4gICAqL1xuICByZWFkb25seSB1c2FnZUhpbnQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgY2hhbm5lbHMsIHVzZXJzLCBhbmQgbGlua3MgdHlwZWQgd2l0aCB0aGUgc2xhc2ggY29tbWFuZCBzaG91bGQgYmUgZXNjYXBlZFxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgc2hvdWxkRXNjYXBlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBXb3JrZmxvdyBzdGVwXG4gKlxuICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vd29ya2Zsb3dzL3N0ZXBzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdFdvcmtmbG93U3RlcCB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgd29ya2Zsb3cgc3RlcC5cbiAgICpcbiAgICogTWF4aW11bSBsZW5ndGggb2YgNTAgY2hhcmFjdGVycy5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGNhbGxiYWNrIElEIG9mIHRoZSB3b3JrZmxvdyBzdGVwLlxuICAgKlxuICAgKiBNYXhpbXVtIGxlbmd0aCBvZiA1MCBjaGFyYWN0ZXJzLlxuICAgKi9cbiAgcmVhZG9ubHkgY2FsbGJhY2tJZDogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBPQXV0aCBjb25maWd1cmF0aW9uIGZvciB0aGUgYXBwXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2tBcHBNYW5pZmVzdE9hdXRoQ29uZmlnIHtcbiAgLyoqXG4gICAqIE9BdXRoIHJlZGlyZWN0IFVSTHNcbiAgICpcbiAgICogQSBtYXhpbXVtIG9mIDEwMDAgcmVkaXJlY3QgVVJMcyBjYW4gYmUgaW5jbHVkZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL2F1dGhlbnRpY2F0aW9uL29hdXRoLXYyI3JlZGlyZWN0X3VybHNcbiAgICovXG4gIHJlYWRvbmx5IHJlZGlyZWN0VXJscz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBCb3Qgc2NvcGVzIHRvIHJlcXVlc3QgdXBvbiBhcHAgaW5zdGFsbGF0aW9uLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgMjU1IHNjb3BlcyBjYW4gYmUgaW5jbHVkZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL3Njb3Blc1xuICAgKi9cbiAgcmVhZG9ubHkgYm90U2NvcGVzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFVzZXIgc2NvcGVzIHRvIHJlcXVlc3QgdXBvbiBhcHAgaW5zdGFsbGF0aW9uLlxuICAgKlxuICAgKiBBIG1heGltdW0gb2YgMjU1IHNjb3BlcyBjYW4gYmUgaW5jbHVkZWQuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9hcGkuc2xhY2suY29tL3Njb3Blc1xuICAgKi9cbiAgcmVhZG9ubHkgdXNlclNjb3Blcz86IHN0cmluZ1tdO1xufVxuXG5cbi8qKlxuICogQSBTbGFjayBhcHAgbWFuaWZlc3RcbiAqXG4gKiBAc2VlIGh0dHBzOi8vYXBpLnNsYWNrLmNvbS9yZWZlcmVuY2UvbWFuaWZlc3RzXG4gKi9cbmV4cG9ydCBjbGFzcyBTbGFja0FwcE1hbmlmZXN0IHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBwcm9wczogU2xhY2tBcHBNYW5pZmVzdFByb3BzKSB7XG4gICAgdmFsaWRhdGVMZW5ndGgoJ2FwcCBuYW1lJywgMzUsIHByb3BzLm5hbWUpO1xuICAgIHZhbGlkYXRlTGVuZ3RoKCdhcHAgZGVzY3JpcHRpb24nLCAxNDAsIHByb3BzLmRlc2NyaXB0aW9uKTtcbiAgICB2YWxpZGF0ZUxlbmd0aCgnYXBwIGxvbmcgZGVzY3JpcHRpb24nLCA0MDAwLCBwcm9wcy5sb25nRGVzY3JpcHRpb24pO1xuICAgIHZhbGlkYXRlQ29sb3IocHJvcHMuYmFja2dyb3VuZENvbG9yKTtcblxuICAgIHZhbGlkYXRlVXJsKHByb3BzLmV2ZW50U3Vic2NyaXB0aW9ucz8ucmVxdWVzdFVybCk7XG4gICAgdmFsaWRhdGVJdGVtcygnYm90IGV2ZW50cycsIDEwMCwgcHJvcHMuZXZlbnRTdWJzY3JpcHRpb25zPy5ib3RFdmVudHMpO1xuICAgIHZhbGlkYXRlSXRlbXMoJ3VzZXJzIGV2ZW50cycsIDEwMCwgcHJvcHMuZXZlbnRTdWJzY3JpcHRpb25zPy51c2VyRXZlbnRzKTtcblxuICAgIHZhbGlkYXRlVXJsKHByb3BzLmludGVyYWN0aXZpdHk/LnJlcXVlc3RVcmwpO1xuICAgIHZhbGlkYXRlVXJsKHByb3BzLmludGVyYWN0aXZpdHk/Lm1lc3NhZ2VNZW51T3B0aW9uc1VybCk7XG4gICAgdmFsaWRhdGVMZW5ndGgoJ2JvdCBkaXNwbGF5IG5hbWUnLCA4MCwgcHJvcHMuYm90VXNlcj8uZGlzcGxheU5hbWUpO1xuXG4gICAgdmFsaWRhdGVJdGVtcygnc2hvcnRjdXRzJywgNSwgcHJvcHMuc2hvcnRjdXRzKTtcbiAgICBwcm9wcy5zaG9ydGN1dHM/LmZvckVhY2goKHNob3J0Y3V0KSA9PiB7XG4gICAgICB2YWxpZGF0ZUxlbmd0aCgnc2hvcnRjdXQgY2FsbGJhY2sgSUQnLCAyNTUsIHNob3J0Y3V0LmNhbGxiYWNrSWQpO1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3Nob3J0Y3V0IGRlc2NyaXB0aW9uJywgMTUwLCBzaG9ydGN1dC5kZXNjcmlwdGlvbik7XG4gICAgfSk7XG5cbiAgICB2YWxpZGF0ZUl0ZW1zKCdzbGFzaCBjb21tYW5kcycsIDUsIHByb3BzLnNsYXNoQ29tbWFuZHMpO1xuICAgIHByb3BzLnNsYXNoQ29tbWFuZHM/LmZvckVhY2goKGNvbW1hbmQpID0+IHtcbiAgICAgIHZhbGlkYXRlTGVuZ3RoKCdzbGFzaCBjb21tYW5kJywgMzIsIGNvbW1hbmQuY29tbWFuZCk7XG4gICAgICB2YWxpZGF0ZUxlbmd0aCgnc2xhc2ggY29tbWFuZCBkZXNjcmlwdGlvbicsIDIwMDAsIGNvbW1hbmQuZGVzY3JpcHRpb24pLFxuICAgICAgdmFsaWRhdGVVcmwoY29tbWFuZC51cmwpO1xuICAgICAgdmFsaWRhdGVMZW5ndGgoJ3NsYXNoIGNvbW1hbmQgdXNlIGhpbnQnLCAxMDAwLCBjb21tYW5kLnVzYWdlSGludCk7XG4gICAgfSk7XG5cbiAgICB2YWxpZGF0ZUl0ZW1zKCd3b3JrZmxvdyBzdGVwcycsIDEwLCBwcm9wcy53b3JrZmxvd1N0ZXBzKTtcbiAgICBwcm9wcy53b3JrZmxvd1N0ZXBzPy5mb3JFYWNoKChzdGVwKSA9PiB7XG4gICAgICB2YWxpZGF0ZUxlbmd0aCgnd29ya2Zsb3cgc3RlcCBuYW1lJywgNTAsIHN0ZXAubmFtZSk7XG4gICAgICB2YWxpZGF0ZUxlbmd0aCgnd29ya2Zsb3cgc3RlcCBjYWxsYmFjayBJRCcsIDUwLCBzdGVwLmNhbGxiYWNrSWQpO1xuICAgIH0pO1xuXG4gICAgdmFsaWRhdGVJdGVtcygndW5mdXJscyBkb21haW5zJywgNSwgcHJvcHMudW5mdXJsRG9tYWlucyk7XG5cbiAgICB2YWxpZGF0ZUl0ZW1zKCdPQXV0aCByZWRpcmVjdCBVUkxzJywgMTAwMCwgcHJvcHMub2F1dGhDb25maWc/LnJlZGlyZWN0VXJscyk7XG4gICAgcHJvcHMub2F1dGhDb25maWc/LnJlZGlyZWN0VXJscz8uZm9yRWFjaCgodXJsKSA9PiB7XG4gICAgICB2YWxpZGF0ZVVybCh1cmwsIGZhbHNlKTtcbiAgICB9KTtcbiAgICB2YWxpZGF0ZUl0ZW1zKCdib3Qgc2NvcGVzJywgMjU1LCBwcm9wcy5vYXV0aENvbmZpZz8uYm90U2NvcGVzKTtcbiAgICB2YWxpZGF0ZUl0ZW1zKCd1c2VyIHNjb3BlcycsIDI1NSwgcHJvcHMub2F1dGhDb25maWc/LnVzZXJTY29wZXMpO1xuICB9XG5cbiAgcHVibGljIHJlbmRlcihjb25zdHJ1Y3Q6IElDb25zdHJ1Y3QpOiBzdHJpbmcge1xuICAgIGNvbnN0IHNjaGVtYTogU2xhY2tBcHBNYW5pZmVzdFNjaGVtYSA9IHtcbiAgICAgIF9tZXRhZGF0YToge1xuICAgICAgICBtYWpvcl92ZXJzaW9uOiB0aGlzLnByb3BzLm1ham9yVmVyc2lvbixcbiAgICAgICAgbWlub3JfdmVyc2lvbjogdGhpcy5wcm9wcy5taW5vclZlcnNpb24sXG4gICAgICB9LFxuICAgICAgZGlzcGxheV9pbmZvcm1hdGlvbjoge1xuICAgICAgICBuYW1lOiB0aGlzLnByb3BzLm5hbWUsXG4gICAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLnByb3BzLmRlc2NyaXB0aW9uLFxuICAgICAgICBsb25nX2Rlc2NyaXB0aW9uOiB0aGlzLnByb3BzLmxvbmdEZXNjcmlwdGlvbixcbiAgICAgICAgYmFja2dyb3VuZF9jb2xvcjogcHJlZml4V2l0aCgnIycsIHRoaXMucHJvcHMuYmFja2dyb3VuZENvbG9yKT8udG9Mb3dlckNhc2UoKSxcbiAgICAgIH0sXG4gICAgICBzZXR0aW5nczoge1xuICAgICAgICBhbGxvd2VkX2lwX2FkZHJlc3NfcmFuZ2VzOiB0aGlzLnByb3BzLmFsbG93ZWRJcEFkZHJlc3NSYW5nZXMsXG4gICAgICAgIGV2ZW50X3N1YnNjcmlwdGlvbnM6IHtcbiAgICAgICAgICByZXF1ZXN0X3VybDogdGhpcy5wcm9wcy5ldmVudFN1YnNjcmlwdGlvbnM/LnJlcXVlc3RVcmwsXG4gICAgICAgICAgYm90X2V2ZW50czogdGhpcy5wcm9wcy5ldmVudFN1YnNjcmlwdGlvbnM/LmJvdEV2ZW50cyxcbiAgICAgICAgICB1c2VyX2V2ZW50czogdGhpcy5wcm9wcy5ldmVudFN1YnNjcmlwdGlvbnM/LnVzZXJFdmVudHMsXG4gICAgICAgIH0sXG4gICAgICAgIGludGVyYWN0aXZpdHk6IHRoaXMucHJvcHMuaW50ZXJhY3Rpdml0eVxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgaXNfZW5hYmxlZDogdGhpcy5wcm9wcy5pbnRlcmFjdGl2aXR5Py5lbmFibGVkID8/IHRydWUsXG4gICAgICAgICAgICByZXF1ZXN0X3VybDogdGhpcy5wcm9wcy5pbnRlcmFjdGl2aXR5Py5yZXF1ZXN0VXJsLFxuICAgICAgICAgICAgbWVzc2FnZV9tZW51X29wdGlvbnNfdXJsOiB0aGlzLnByb3BzLmludGVyYWN0aXZpdHk/Lm1lc3NhZ2VNZW51T3B0aW9uc1VybCxcbiAgICAgICAgICB9XG4gICAgICAgICAgOiB1bmRlZmluZWQsXG4gICAgICAgIG9yZ19kZXBsb3lfZW5hYmxlZDogdGhpcy5wcm9wcy5vcmdEZXBsb3ksXG4gICAgICAgIHNvY2tldF9tb2RlX2VuYWJsZWQ6IHRoaXMucHJvcHMuc29ja2V0TW9kZSxcbiAgICAgIH0sXG4gICAgICBmZWF0dXJlczoge1xuICAgICAgICBhcHBfaG9tZToge1xuICAgICAgICAgIGhvbWVfdGFiX2VuYWJsZWQ6IHRoaXMucHJvcHMuYXBwSG9tZT8uaG9tZVRhYixcbiAgICAgICAgICBtZXNzYWdlc190YWJfZW5hYmxlZDogdGhpcy5wcm9wcy5hcHBIb21lPy5tZXNzYWdlc1RhYixcbiAgICAgICAgICBtZXNzYWdlc190YWJfcmVhZF9vbmx5X2VuYWJsZWQ6IHRoaXMucHJvcHMuYXBwSG9tZT8ubWVzc2FnZXNUYWJSZWFkT25seSxcbiAgICAgICAgfSxcbiAgICAgICAgYm90X3VzZXI6IHRoaXMucHJvcHMuYm90VXNlclxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgZGlzcGxheV9uYW1lOiB0aGlzLnByb3BzLmJvdFVzZXI/LmRpc3BsYXlOYW1lLFxuICAgICAgICAgICAgYWx3YXlzX29ubGluZTogdGhpcy5wcm9wcy5ib3RVc2VyPy5hbHdheXNPbmxpbmUsXG4gICAgICAgICAgfVxuICAgICAgICAgIDogdW5kZWZpbmVkLFxuICAgICAgICBzaG9ydGN1dHM6IHRoaXMucHJvcHMuc2hvcnRjdXRzPy5tYXAoKHNob3J0Y3V0KSA9PiAoe1xuICAgICAgICAgIG5hbWU6IHNob3J0Y3V0Lm5hbWUsXG4gICAgICAgICAgdHlwZTogc2hvcnRjdXQudHlwZSxcbiAgICAgICAgICBjYWxsYmFja19pZDogc2hvcnRjdXQuY2FsbGJhY2tJZCxcbiAgICAgICAgICBkZXNjcmlwdGlvbjogc2hvcnRjdXQuZGVzY3JpcHRpb24sXG4gICAgICAgIH0pKSxcbiAgICAgICAgc2xhc2hfY29tbWFuZHM6IHRoaXMucHJvcHMuc2xhc2hDb21tYW5kcz8ubWFwKChjb21tYW5kKSA9PiAoe1xuICAgICAgICAgIGNvbW1hbmQ6IHByZWZpeFdpdGgoJy8nLCBjb21tYW5kLmNvbW1hbmQpLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBjb21tYW5kLmRlc2NyaXB0aW9uLFxuICAgICAgICAgIHVybDogY29tbWFuZC51cmwsXG4gICAgICAgICAgdXNhZ2VfaGludDogY29tbWFuZC51c2FnZUhpbnQsXG4gICAgICAgICAgc2hvdWxkX2VzY2FwZTogY29tbWFuZC5zaG91bGRFc2NhcGUsXG4gICAgICAgIH0pKSxcbiAgICAgICAgd29ya2Zsb3dfc3RlcHM6IHRoaXMucHJvcHMud29ya2Zsb3dTdGVwcz8ubWFwKChzdGVwKSA9PiAoe1xuICAgICAgICAgIG5hbWU6IHN0ZXAubmFtZSxcbiAgICAgICAgICBjYWxsYmFja19pZDogc3RlcC5jYWxsYmFja0lkLFxuICAgICAgICB9KSksXG4gICAgICAgIHVuZnVybF9kb21haW5zOiB0aGlzLnByb3BzLnVuZnVybERvbWFpbnMsXG4gICAgICB9LFxuICAgICAgb2F1dGhfY29uZmlnOiB7XG4gICAgICAgIHJlZGlyZWN0X3VybHM6IHRoaXMucHJvcHMub2F1dGhDb25maWc/LnJlZGlyZWN0VXJscyxcbiAgICAgICAgc2NvcGVzOiB7XG4gICAgICAgICAgYm90OiB0aGlzLnByb3BzLm9hdXRoQ29uZmlnPy5ib3RTY29wZXMsXG4gICAgICAgICAgdXNlcnM6IHRoaXMucHJvcHMub2F1dGhDb25maWc/LnVzZXJTY29wZXMsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICByZXR1cm4gU3RhY2sub2YoY29uc3RydWN0KS50b0pzb25TdHJpbmcocmVtb3ZlVW5kZWZpbmVkKHNjaGVtYSkpO1xuICB9XG59XG5cbmludGVyZmFjZSBTbGFja0FwcE1hbmlmZXN0U2NoZW1hIHtcbiAgX21ldGFkYXRhPzoge1xuICAgIG1ham9yX3ZlcnNpb24/OiBudW1iZXI7XG4gICAgbWlub3JfdmVyc2lvbj86IG51bWJlcjtcbiAgfTtcbiAgZGlzcGxheV9pbmZvcm1hdGlvbjoge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgICBsb25nX2Rlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAgIGJhY2tncm91bmRfY29sb3I/OiBzdHJpbmc7XG4gIH07XG4gIHNldHRpbmdzPzoge1xuICAgIGFsbG93ZWRfaXBfYWRkcmVzc19yYW5nZXM/OiBzdHJpbmdbXTtcbiAgICBldmVudF9zdWJzY3JpcHRpb25zPzoge1xuICAgICAgcmVxdWVzdF91cmw/OiBzdHJpbmc7XG4gICAgICBib3RfZXZlbnRzPzogc3RyaW5nW107XG4gICAgICB1c2VyX2V2ZW50cz86IHN0cmluZ1tdO1xuICAgIH07XG4gICAgaW50ZXJhY3Rpdml0eT86IHtcbiAgICAgIGlzX2VuYWJsZWQ6IGJvb2xlYW47XG4gICAgICByZXF1ZXN0X3VybD86IHN0cmluZztcbiAgICAgIG1lc3NhZ2VfbWVudV9vcHRpb25zX3VybD86IHN0cmluZztcbiAgICB9O1xuICAgIG9yZ19kZXBsb3lfZW5hYmxlZD86IGJvb2xlYW47XG4gICAgc29ja2V0X21vZGVfZW5hYmxlZD86IGJvb2xlYW47XG4gIH07XG4gIGZlYXR1cmVzPzoge1xuICAgIGFwcF9ob21lPzoge1xuICAgICAgaG9tZV90YWJfZW5hYmxlZD86IGJvb2xlYW47XG4gICAgICBtZXNzYWdlc190YWJfZW5hYmxlZD86IGJvb2xlYW47XG4gICAgICBtZXNzYWdlc190YWJfcmVhZF9vbmx5X2VuYWJsZWQ/OiBib29sZWFuO1xuICAgIH07XG4gICAgYm90X3VzZXI/OiB7XG4gICAgICBkaXNwbGF5X25hbWU6IHN0cmluZztcbiAgICAgIGFsd2F5c19vbmxpbmU/OiBib29sZWFuO1xuICAgIH07XG4gICAgc2hvcnRjdXRzPzoge1xuICAgICAgbmFtZTogc3RyaW5nO1xuICAgICAgdHlwZTogc3RyaW5nO1xuICAgICAgY2FsbGJhY2tfaWQ6IHN0cmluZztcbiAgICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG4gICAgfVtdO1xuICAgIHNsYXNoX2NvbW1hbmRzPzoge1xuICAgICAgY29tbWFuZDogc3RyaW5nO1xuICAgICAgZGVzY3JpcHRpb246IHN0cmluZztcbiAgICAgIHVybD86IHN0cmluZztcbiAgICAgIHVzYWdlX2hpbnQ/OiBzdHJpbmc7XG4gICAgICBzaG91bGRfZXNjYXBlPzogYm9vbGVhbjtcbiAgICB9W107XG4gICAgd29ya2Zsb3dfc3RlcHM/OiB7XG4gICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICBjYWxsYmFja19pZDogc3RyaW5nO1xuICAgIH1bXTtcbiAgICB1bmZ1cmxfZG9tYWlucz86IHN0cmluZ1tdO1xuICB9O1xuICBvYXV0aF9jb25maWc/OiB7XG4gICAgcmVkaXJlY3RfdXJscz86IHN0cmluZ1tdO1xuICAgIHNjb3Blcz86IHtcbiAgICAgIGJvdD86IHN0cmluZ1tdO1xuICAgICAgdXNlcnM/OiBzdHJpbmdbXTtcbiAgICB9O1xuICB9O1xufVxuXG5mdW5jdGlvbiBwcmVmaXhXaXRoPFQgZXh0ZW5kcyBzdHJpbmcgfCB1bmRlZmluZWQ+KHByZWZpeDogc3RyaW5nLCBzdHJpbmc6IFQpOiBUIHtcbiAgaWYgKCFzdHJpbmcpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkIGFzIFQ7XG4gIH1cblxuICBpZiAoc3RyaW5nLnN0YXJ0c1dpdGgocHJlZml4KSkge1xuICAgIHJldHVybiBzdHJpbmc7XG4gIH1cblxuICByZXR1cm4gYCR7cHJlZml4fSR7c3RyaW5nfWAgYXMgVDtcbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVMZW5ndGgoZGVzY3JpcHRpb246IHN0cmluZywgbWF4OiBudW1iZXIsIHhzPzogc3RyaW5nKTogdm9pZCB7XG4gIGlmICh4cyAmJiAhVG9rZW4uaXNVbnJlc29sdmVkKHhzKSAmJiB4cy5sZW5ndGggPiBtYXgpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYE1heGltdW0gbGVuZ3RoIGZvciAke2Rlc2NyaXB0aW9ufSBpcyAke21heH0sIGdvdCAke3hzLmxlbmd0aH06ICR7eHN9YCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdmFsaWRhdGVJdGVtczxUPihkZXNjcmlwdGlvbjogc3RyaW5nLCBtYXg6IG51bWJlciwgeHM/OiBUW10pOiB2b2lkIHtcbiAgaWYgKHhzICYmICFUb2tlbi5pc1VucmVzb2x2ZWQoeHMpICYmIHhzLmxlbmd0aCA+IG1heCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgTWF4aW11bSBudW1iZXIgb2YgaXRlbXMgZm9yICR7ZGVzY3JpcHRpb259IGlzICR7bWF4fSwgZ290ICR7eHMubGVuZ3RofWApO1xuICB9XG59XG5cbmZ1bmN0aW9uIHZhbGlkYXRlQ29sb3IoY29sb3I/OiBzdHJpbmcpOiB2b2lkIHtcbiAgaWYgKGNvbG9yICYmICFUb2tlbi5pc1VucmVzb2x2ZWQoY29sb3IpICYmICEvXiM/KFswLTlhLWZBLUZdezN9fFswLTlhLWZBLUZdezZ9KSQvLnRlc3QoY29sb3IpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBJbnZhbGlkIGhleCBjb2xvcjogJHtjb2xvcn1gKTtcbiAgfVxufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZVVybCh1cmw/OiBzdHJpbmcsIGh0dHBzID0gdHJ1ZSk6IHZvaWQge1xuICBpZiAodXJsICYmICFUb2tlbi5pc1VucmVzb2x2ZWQodXJsKSkge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBwYXJzZWQgPSBuZXcgbm9kZVVybC5VUkwodXJsKTtcbiAgICAgIGlmIChodHRwcyAmJiBwYXJzZWQucHJvdG9jb2wgIT09ICdodHRwczonKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBwcm90b2NvbCcpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGAke3VybH0gaXMgbm90IGEgdmFsaWQke2h0dHBzID8gJyBIVFRQUycgOiAnJ30gdXJsYCk7XG4gICAgfVxuICB9XG59XG5cbmZ1bmN0aW9uIHJlbW92ZVVuZGVmaW5lZChvYmo6IGFueSk6IGFueSB7XG4gIGlmICh0eXBlb2Ygb2JqID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBvYmo7XG4gIH1cblxuICBpZiAoQXJyYXkuaXNBcnJheShvYmopKSB7XG4gICAgY29uc3QgcmV0ID0gb2JqXG4gICAgICAubWFwKHYgPT4gKHYgJiYgdHlwZW9mIHYgPT09ICdvYmplY3QnKSA/IHJlbW92ZVVuZGVmaW5lZCh2KSA6IHYpXG4gICAgICAuZmlsdGVyKHYgPT4gISh2ID09IG51bGwpKTtcbiAgICByZXR1cm4gcmV0Lmxlbmd0aCAhPT0gMCA/IHJldCA6IHVuZGVmaW5lZDtcbiAgfVxuXG4gIGNvbnN0IHJldCA9IE9iamVjdC5lbnRyaWVzKG9iailcbiAgICAubWFwKChbaywgdl0pID0+IFtrLCB2ICYmIHR5cGVvZiB2ID09PSAnb2JqZWN0JyA/IHJlbW92ZVVuZGVmaW5lZCh2KSA6IHZdKVxuICAgIC5yZWR1Y2UoKGE6IGFueSwgW2ssIHZdKSA9PiAodiA9PSBudWxsID8gYSA6IChhW2tdPXYsIGEpKSwge30pO1xuICByZXR1cm4gT2JqZWN0LmtleXMocmV0KS5sZW5ndGggIT09IDAgPyByZXQgOiB1bmRlZmluZWQ7XG59XG4iXX0=
@@ -2,82 +2,63 @@ import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager';
2
2
  import { Construct, IConstruct } from 'constructs';
3
3
  import { SlackAppManifestProps } from './manifest';
4
4
  /**
5
- * Properties for a SlackApp.
6
- *
7
- * @stability stable
5
+ * Properties for a SlackApp
8
6
  */
9
7
  export interface SlackAppProps {
10
8
  /**
11
- * The definition of the app manifest.
9
+ * The definition of the app manifest
12
10
  *
13
11
  * @see https://api.slack.com/reference/manifests
14
- * @stability stable
15
12
  */
16
13
  readonly manifest: SlackAppManifestDefinition;
17
14
  /**
18
- * An AWS Secrets Manager secret containing the app configuration token.
15
+ * An AWS Secrets Manager secret containing the app configuration token
19
16
  *
20
17
  * Must use the following JSON format:
21
18
  *
22
19
  * ```
23
20
  * {
24
- * "refreshToken": "<token>"
21
+ * "refreshToken": "<token>"
25
22
  * }
26
23
  * ```
27
- *
28
- * @stability stable
29
24
  */
30
25
  readonly configurationTokenSecret: secretsmanager.ISecret;
31
26
  /**
32
- * The AWS Secrets Manager secret where to store the app credentials.
27
+ * The AWS Secrets Manager secret where to store the app credentials
33
28
  *
34
29
  * @default - a new secret is created
35
- * @stability stable
36
30
  */
37
31
  readonly credentialsSecret?: secretsmanager.ISecret;
38
32
  }
39
33
  /**
40
- * A Slack app manifest definition.
41
- *
42
- * @stability stable
34
+ * A Slack app manifest definition
43
35
  */
44
36
  export declare abstract class SlackAppManifestDefinition {
45
37
  /**
46
- * Create a Slack app manifest from a JSON app manifest encoded as a string.
47
- *
48
- * @stability stable
38
+ * Create a Slack app manifest from a JSON app manifest encoded as a string
49
39
  */
50
40
  static fromString(manifest: string): SlackAppManifestDefinition;
51
41
  /**
52
- * Creates a Slack app manifest from a file containg a JSON app manifest.
53
- *
54
- * @stability stable
42
+ * Creates a Slack app manifest from a file containg a JSON app manifest
55
43
  */
56
44
  static fromFile(file: string): SlackAppManifestDefinition;
57
45
  /**
58
- * Creates a Slack app manifest by specifying properties.
59
- *
60
- * @stability stable
46
+ * Creates a Slack app manifest by specifying properties
61
47
  */
62
48
  static fromManifest(props: SlackAppManifestProps): SlackAppManifestDefinition;
63
49
  /**
64
- * Renders the JSON app manifest encoded as a string.
65
- *
66
- * @stability stable
50
+ * Renders the JSON app manifest encoded as a string
67
51
  */
68
52
  abstract render(construct: IConstruct): string;
69
53
  }
70
54
  /**
71
- * A Slack application deployed with a manifest.
55
+ * A Slack application deployed with a manifest
72
56
  *
73
57
  * @see https://api.slack.com/reference/manifests
74
- * @stability stable
75
58
  */
76
59
  export declare class SlackApp extends Construct {
77
60
  /**
78
- * The ID of the application.
79
- *
80
- * @stability stable
61
+ * The ID of the application
81
62
  */
82
63
  readonly appId: string;
83
64
  /**
@@ -85,43 +66,30 @@ export declare class SlackApp extends Construct {
85
66
  *
86
67
  * ```
87
68
  * {
88
- * "appId": "...",
89
- * "clientId": "...",
90
- * "clientSecret": "...",
91
- * "verificationToken": "...",
92
- * "signingSecret": "..."
69
+ * "appId": "...",
70
+ * "clientId": "...",
71
+ * "clientSecret": "...",
72
+ * "verificationToken": "...",
73
+ * "signingSecret": "..."
93
74
  * }
94
75
  * ```
95
- *
96
- * @stability stable
97
76
  */
98
77
  readonly credentials: secretsmanager.ISecret;
99
78
  /**
100
- * A dynamic reference to the client ID of the app.
101
- *
102
- * @stability stable
79
+ * A dynamic reference to the client ID of the app
103
80
  */
104
81
  readonly clientId: string;
105
82
  /**
106
- * A dynamic reference to the client secret of the app.
107
- *
108
- * @stability stable
83
+ * A dynamic reference to the client secret of the app
109
84
  */
110
85
  readonly clientSecret: string;
111
86
  /**
112
- * A dynamic reference to the verification token of the app.
113
- *
114
- * @stability stable
87
+ * A dynamic reference to the verification token of the app
115
88
  */
116
89
  readonly verificationToken: string;
117
90
  /**
118
- * A dynamic reference to the signing secret of the app.
119
- *
120
- * @stability stable
91
+ * A dynamic reference to the signing secret of the app
121
92
  */
122
93
  readonly signingSecret: string;
123
- /**
124
- * @stability stable
125
- */
126
94
  constructor(scope: Construct, id: string, props: SlackAppProps);
127
95
  }
@@ -10,31 +10,23 @@ const constructs_1 = require("constructs");
10
10
  const manifest_1 = require("./manifest");
11
11
  const provider_1 = require("./provider");
12
12
  /**
13
- * A Slack app manifest definition.
14
- *
15
- * @stability stable
13
+ * A Slack app manifest definition
16
14
  */
17
15
  class SlackAppManifestDefinition {
18
16
  /**
19
- * Create a Slack app manifest from a JSON app manifest encoded as a string.
20
- *
21
- * @stability stable
17
+ * Create a Slack app manifest from a JSON app manifest encoded as a string
22
18
  */
23
19
  static fromString(manifest) {
24
20
  return new StringManifest(manifest);
25
21
  }
26
22
  /**
27
- * Creates a Slack app manifest from a file containg a JSON app manifest.
28
- *
29
- * @stability stable
23
+ * Creates a Slack app manifest from a file containg a JSON app manifest
30
24
  */
31
25
  static fromFile(file) {
32
26
  return new FileManifest(file);
33
27
  }
34
28
  /**
35
- * Creates a Slack app manifest by specifying properties.
36
- *
37
- * @stability stable
29
+ * Creates a Slack app manifest by specifying properties
38
30
  */
39
31
  static fromManifest(props) {
40
32
  return new manifest_1.SlackAppManifest(props);
@@ -42,7 +34,7 @@ class SlackAppManifestDefinition {
42
34
  }
43
35
  exports.SlackAppManifestDefinition = SlackAppManifestDefinition;
44
36
  _a = JSII_RTTI_SYMBOL_1;
45
- SlackAppManifestDefinition[_a] = { fqn: "cloudstructs.SlackAppManifestDefinition", version: "0.4.18" };
37
+ SlackAppManifestDefinition[_a] = { fqn: "cloudstructs.SlackAppManifestDefinition", version: "0.4.21" };
46
38
  class StringManifest extends SlackAppManifestDefinition {
47
39
  constructor(manifest) {
48
40
  super();
@@ -62,15 +54,11 @@ class FileManifest extends SlackAppManifestDefinition {
62
54
  }
63
55
  }
64
56
  /**
65
- * A Slack application deployed with a manifest.
57
+ * A Slack application deployed with a manifest
66
58
  *
67
59
  * @see https://api.slack.com/reference/manifests
68
- * @stability stable
69
60
  */
70
61
  class SlackApp extends constructs_1.Construct {
71
- /**
72
- * @stability stable
73
- */
74
62
  constructor(scope, id, props) {
75
63
  var _c;
76
64
  super(scope, id);
@@ -99,5 +87,5 @@ class SlackApp extends constructs_1.Construct {
99
87
  }
100
88
  exports.SlackApp = SlackApp;
101
89
  _b = JSII_RTTI_SYMBOL_1;
102
- SlackApp[_b] = { fqn: "cloudstructs.SlackApp", version: "0.4.18" };
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xhY2stYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NsYWNrLWFwcC9zbGFjay1hcHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5QkFBeUI7QUFDekIsNkNBQTZDO0FBQzdDLGlFQUFpRTtBQUNqRSwyQ0FBbUQ7QUFDbkQseUNBQXFFO0FBQ3JFLHlDQUE4Qzs7Ozs7O0FBZTlDLE1BQXNCLDBCQUEwQjs7Ozs7O0lBRXZDLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBZ0I7UUFDdkMsT0FBTyxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN0QyxDQUFDOzs7Ozs7SUFHTSxNQUFNLENBQUMsUUFBUSxDQUFDLElBQVk7UUFDakMsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDOzs7Ozs7SUFHTSxNQUFNLENBQUMsWUFBWSxDQUFDLEtBQTRCO1FBQ3JELE9BQU8sSUFBSSwyQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDOztBQWRILGdFQWtCQzs7O0FBRUQsTUFBTSxjQUFlLFNBQVEsMEJBQTBCO0lBQ3JELFlBQTZCLFFBQWdCO1FBQzNDLEtBQUssRUFBRSxDQUFDO1FBRG1CLGFBQVEsR0FBUixRQUFRLENBQVE7SUFFN0MsQ0FBQztJQUVNLE1BQU0sQ0FBQyxVQUFzQjtRQUNsQyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDdkIsQ0FBQztDQUNGO0FBRUQsTUFBTSxZQUFhLFNBQVEsMEJBQTBCO0lBQ25ELFlBQTZCLElBQVk7UUFDdkMsS0FBSyxFQUFFLENBQUM7UUFEbUIsU0FBSSxHQUFKLElBQUksQ0FBUTtJQUV6QyxDQUFDO0lBRU0sTUFBTSxDQUFDLFVBQXNCO1FBQ2xDLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzVDLENBQUM7Q0FDRjs7Ozs7OztBQUdELE1BQWEsUUFBUyxTQUFRLHNCQUFTOzs7O0lBbUJyQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQW9COztRQUM1RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sUUFBUSxHQUFHLDJCQUFnQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwRCxLQUFLLENBQUMsd0JBQXdCLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzRCxLQUFLLENBQUMsd0JBQXdCLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU1RCxJQUFJLENBQUMsV0FBVyxTQUFHLEtBQUssQ0FBQyxpQkFBaUIsbUNBQUksSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUU7WUFDM0YsV0FBVyxFQUFFLDZCQUE2QixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRTtTQUN6RCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFOUMsTUFBTSxRQUFRLEdBQUcsSUFBSSw0QkFBYyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDcEQsWUFBWSxFQUFFLFFBQVEsQ0FBQyxZQUFZO1lBQ25DLFlBQVksRUFBRSxrQkFBa0I7WUFDaEMsVUFBVSxFQUFFO2dCQUNWLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7Z0JBQ3JDLDJCQUEyQixFQUFFLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxTQUFTO2dCQUNyRSxvQkFBb0IsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVM7YUFDakQ7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzVFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNwRixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzlGLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN4RixDQUFDOztBQTlDSCw0QkErQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgeyBDdXN0b21SZXNvdXJjZSB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCAqIGFzIHNlY3JldHNtYW5hZ2VyIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zZWNyZXRzbWFuYWdlcic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QsIElDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IFNsYWNrQXBwTWFuaWZlc3QsIFNsYWNrQXBwTWFuaWZlc3RQcm9wcyB9IGZyb20gJy4vbWFuaWZlc3QnO1xuaW1wb3J0IHsgU2xhY2tBcHBQcm92aWRlciB9IGZyb20gJy4vcHJvdmlkZXInO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbmV4cG9ydCBpbnRlcmZhY2UgU2xhY2tBcHBQcm9wcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgbWFuaWZlc3Q6IFNsYWNrQXBwTWFuaWZlc3REZWZpbml0aW9uO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY29uZmlndXJhdGlvblRva2VuU2VjcmV0OiBzZWNyZXRzbWFuYWdlci5JU2VjcmV0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHJlYWRvbmx5IGNyZWRlbnRpYWxzU2VjcmV0Pzogc2VjcmV0c21hbmFnZXIuSVNlY3JldDtcbn1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgU2xhY2tBcHBNYW5pZmVzdERlZmluaXRpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIHN0YXRpYyBmcm9tU3RyaW5nKG1hbmlmZXN0OiBzdHJpbmcpOiBTbGFja0FwcE1hbmlmZXN0RGVmaW5pdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBTdHJpbmdNYW5pZmVzdChtYW5pZmVzdCk7XG4gIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIHN0YXRpYyBmcm9tRmlsZShmaWxlOiBzdHJpbmcpOiBTbGFja0FwcE1hbmlmZXN0RGVmaW5pdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBGaWxlTWFuaWZlc3QoZmlsZSk7XG4gIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgc3RhdGljIGZyb21NYW5pZmVzdChwcm9wczogU2xhY2tBcHBNYW5pZmVzdFByb3BzKTogU2xhY2tBcHBNYW5pZmVzdERlZmluaXRpb24ge1xuICAgIHJldHVybiBuZXcgU2xhY2tBcHBNYW5pZmVzdChwcm9wcyk7XG4gIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyBhYnN0cmFjdCByZW5kZXIoY29uc3RydWN0OiBJQ29uc3RydWN0KTogc3RyaW5nO1xufVxuXG5jbGFzcyBTdHJpbmdNYW5pZmVzdCBleHRlbmRzIFNsYWNrQXBwTWFuaWZlc3REZWZpbml0aW9uIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBtYW5pZmVzdDogc3RyaW5nKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyByZW5kZXIoX2NvbnN0cnVjdDogSUNvbnN0cnVjdCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubWFuaWZlc3Q7XG4gIH1cbn1cblxuY2xhc3MgRmlsZU1hbmlmZXN0IGV4dGVuZHMgU2xhY2tBcHBNYW5pZmVzdERlZmluaXRpb24ge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGZpbGU6IHN0cmluZykge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgcmVuZGVyKF9jb25zdHJ1Y3Q6IElDb25zdHJ1Y3QpOiBzdHJpbmcge1xuICAgIHJldHVybiBmcy5yZWFkRmlsZVN5bmModGhpcy5maWxlLCAndXRmOCcpO1xuICB9XG59XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIFNsYWNrQXBwIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgcmVhZG9ubHkgYXBwSWQ6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbHM6IHNlY3JldHNtYW5hZ2VyLklTZWNyZXQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcHVibGljIHJlYWRvbmx5IGNsaWVudElkOiBzdHJpbmc7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyByZWFkb25seSBjbGllbnRTZWNyZXQ6IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICBwdWJsaWMgcmVhZG9ubHkgdmVyaWZpY2F0aW9uVG9rZW46IHN0cmluZztcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyByZWFkb25seSBzaWduaW5nU2VjcmV0OiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFNsYWNrQXBwUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgY29uc3QgcHJvdmlkZXIgPSBTbGFja0FwcFByb3ZpZGVyLmdldE9yQ3JlYXRlKHRoaXMpO1xuICAgIHByb3BzLmNvbmZpZ3VyYXRpb25Ub2tlblNlY3JldC5ncmFudFJlYWQocHJvdmlkZXIuaGFuZGxlcik7XG4gICAgcHJvcHMuY29uZmlndXJhdGlvblRva2VuU2VjcmV0LmdyYW50V3JpdGUocHJvdmlkZXIuaGFuZGxlcik7XG5cbiAgICB0aGlzLmNyZWRlbnRpYWxzID0gcHJvcHMuY3JlZGVudGlhbHNTZWNyZXQgPz8gbmV3IHNlY3JldHNtYW5hZ2VyLlNlY3JldCh0aGlzLCAnQ3JlZGVudGlhbHMnLCB7XG4gICAgICBkZXNjcmlwdGlvbjogYENyZWRlbnRpYWxzIGZvciBTbGFjayBBcHAgJHt0aGlzLm5vZGUuaWR9YCxcbiAgICB9KTtcbiAgICB0aGlzLmNyZWRlbnRpYWxzLmdyYW50V3JpdGUocHJvdmlkZXIuaGFuZGxlcik7XG5cbiAgICBjb25zdCByZXNvdXJjZSA9IG5ldyBDdXN0b21SZXNvdXJjZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICBzZXJ2aWNlVG9rZW46IHByb3ZpZGVyLnNlcnZpY2VUb2tlbixcbiAgICAgIHJlc291cmNlVHlwZTogJ0N1c3RvbTo6U2xhY2tBcHAnLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBtYW5pZmVzdDogcHJvcHMubWFuaWZlc3QucmVuZGVyKHRoaXMpLFxuICAgICAgICBjb25maWd1cmF0aW9uVG9rZW5TZWNyZXRBcm46IHByb3BzLmNvbmZpZ3VyYXRpb25Ub2tlblNlY3JldC5zZWNyZXRBcm4sXG4gICAgICAgIGNyZWRlbnRpYWxzU2VjcmV0QXJuOiB0aGlzLmNyZWRlbnRpYWxzLnNlY3JldEFybixcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICB0aGlzLmFwcElkID0gcmVzb3VyY2UuZ2V0QXR0U3RyaW5nKCdhcHBJZCcpO1xuICAgIHRoaXMuY2xpZW50SWQgPSB0aGlzLmNyZWRlbnRpYWxzLnNlY3JldFZhbHVlRnJvbUpzb24oJ2NsaWVudElkJykudG9TdHJpbmcoKTtcbiAgICB0aGlzLmNsaWVudFNlY3JldCA9IHRoaXMuY3JlZGVudGlhbHMuc2VjcmV0VmFsdWVGcm9tSnNvbignY2xpZW50U2VjcmV0JykudG9TdHJpbmcoKTtcbiAgICB0aGlzLnZlcmlmaWNhdGlvblRva2VuID0gdGhpcy5jcmVkZW50aWFscy5zZWNyZXRWYWx1ZUZyb21Kc29uKCd2ZXJpZmljYXRpb25Ub2tlbicpLnRvU3RyaW5nKCk7XG4gICAgdGhpcy5zaWduaW5nU2VjcmV0ID0gdGhpcy5jcmVkZW50aWFscy5zZWNyZXRWYWx1ZUZyb21Kc29uKCdzaWduaW5nU2VjcmV0JykudG9TdHJpbmcoKTtcbiAgfVxufVxuIl19
90
+ SlackApp[_b] = { fqn: "cloudstructs.SlackApp", version: "0.4.21" };
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xhY2stYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NsYWNrLWFwcC9zbGFjay1hcHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5QkFBeUI7QUFDekIsNkNBQTZDO0FBQzdDLGlFQUFpRTtBQUNqRSwyQ0FBbUQ7QUFDbkQseUNBQXFFO0FBQ3JFLHlDQUE4QztBQWtDOUM7O0dBRUc7QUFDSCxNQUFzQiwwQkFBMEI7SUFDOUM7O09BRUc7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQWdCO1FBQ3ZDLE9BQU8sSUFBSSxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFZO1FBQ2pDLE9BQU8sSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUE0QjtRQUNyRCxPQUFPLElBQUksMkJBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQzs7QUFwQkgsZ0VBMEJDOzs7QUFFRCxNQUFNLGNBQWUsU0FBUSwwQkFBMEI7SUFDckQsWUFBNkIsUUFBZ0I7UUFDM0MsS0FBSyxFQUFFLENBQUM7UUFEbUIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtJQUU3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLFVBQXNCO1FBQ2xDLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0NBQ0Y7QUFFRCxNQUFNLFlBQWEsU0FBUSwwQkFBMEI7SUFDbkQsWUFBNkIsSUFBWTtRQUN2QyxLQUFLLEVBQUUsQ0FBQztRQURtQixTQUFJLEdBQUosSUFBSSxDQUFRO0lBRXpDLENBQUM7SUFFTSxNQUFNLENBQUMsVUFBc0I7UUFDbEMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDNUMsQ0FBQztDQUNGO0FBRUQ7Ozs7R0FJRztBQUNILE1BQWEsUUFBUyxTQUFRLHNCQUFTO0lBeUNyQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQW9COztRQUM1RCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLE1BQU0sUUFBUSxHQUFHLDJCQUFnQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwRCxLQUFLLENBQUMsd0JBQXdCLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMzRCxLQUFLLENBQUMsd0JBQXdCLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU1RCxJQUFJLENBQUMsV0FBVyxTQUFHLEtBQUssQ0FBQyxpQkFBaUIsbUNBQUksSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUU7WUFDM0YsV0FBVyxFQUFFLDZCQUE2QixJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRTtTQUN6RCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFOUMsTUFBTSxRQUFRLEdBQUcsSUFBSSw0QkFBYyxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDcEQsWUFBWSxFQUFFLFFBQVEsQ0FBQyxZQUFZO1lBQ25DLFlBQVksRUFBRSxrQkFBa0I7WUFDaEMsVUFBVSxFQUFFO2dCQUNWLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7Z0JBQ3JDLDJCQUEyQixFQUFFLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxTQUFTO2dCQUNyRSxvQkFBb0IsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVM7YUFDakQ7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzVFLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNwRixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzlGLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN4RixDQUFDOztBQXBFSCw0QkFxRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgeyBDdXN0b21SZXNvdXJjZSB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCAqIGFzIHNlY3JldHNtYW5hZ2VyIGZyb20gJ2F3cy1jZGstbGliL2F3cy1zZWNyZXRzbWFuYWdlcic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QsIElDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IFNsYWNrQXBwTWFuaWZlc3QsIFNsYWNrQXBwTWFuaWZlc3RQcm9wcyB9IGZyb20gJy4vbWFuaWZlc3QnO1xuaW1wb3J0IHsgU2xhY2tBcHBQcm92aWRlciB9IGZyb20gJy4vcHJvdmlkZXInO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgU2xhY2tBcHBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0FwcFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBkZWZpbml0aW9uIG9mIHRoZSBhcHAgbWFuaWZlc3RcbiAgICpcbiAgICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vcmVmZXJlbmNlL21hbmlmZXN0c1xuICAgKi9cbiAgcmVhZG9ubHkgbWFuaWZlc3Q6IFNsYWNrQXBwTWFuaWZlc3REZWZpbml0aW9uO1xuXG4gIC8qKlxuICAgKiBBbiBBV1MgU2VjcmV0cyBNYW5hZ2VyIHNlY3JldCBjb250YWluaW5nIHRoZSBhcHAgY29uZmlndXJhdGlvbiB0b2tlblxuICAgKlxuICAgKiBNdXN0IHVzZSB0aGUgZm9sbG93aW5nIEpTT04gZm9ybWF0OlxuICAgKlxuICAgKiBgYGBcbiAgICoge1xuICAgKiAgIFwicmVmcmVzaFRva2VuXCI6IFwiPHRva2VuPlwiXG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICByZWFkb25seSBjb25maWd1cmF0aW9uVG9rZW5TZWNyZXQ6IHNlY3JldHNtYW5hZ2VyLklTZWNyZXQ7XG5cbiAgLyoqXG4gICAqIFRoZSBBV1MgU2VjcmV0cyBNYW5hZ2VyIHNlY3JldCB3aGVyZSB0byBzdG9yZSB0aGUgYXBwIGNyZWRlbnRpYWxzXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gYSBuZXcgc2VjcmV0IGlzIGNyZWF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGNyZWRlbnRpYWxzU2VjcmV0Pzogc2VjcmV0c21hbmFnZXIuSVNlY3JldDtcbn1cblxuLyoqXG4gKiBBIFNsYWNrIGFwcCBtYW5pZmVzdCBkZWZpbml0aW9uXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTbGFja0FwcE1hbmlmZXN0RGVmaW5pdGlvbiB7XG4gIC8qKlxuICAgKiBDcmVhdGUgYSBTbGFjayBhcHAgbWFuaWZlc3QgZnJvbSBhIEpTT04gYXBwIG1hbmlmZXN0IGVuY29kZWQgYXMgYSBzdHJpbmdcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbVN0cmluZyhtYW5pZmVzdDogc3RyaW5nKTogU2xhY2tBcHBNYW5pZmVzdERlZmluaXRpb24ge1xuICAgIHJldHVybiBuZXcgU3RyaW5nTWFuaWZlc3QobWFuaWZlc3QpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBTbGFjayBhcHAgbWFuaWZlc3QgZnJvbSBhIGZpbGUgY29udGFpbmcgYSBKU09OIGFwcCBtYW5pZmVzdFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tRmlsZShmaWxlOiBzdHJpbmcpOiBTbGFja0FwcE1hbmlmZXN0RGVmaW5pdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBGaWxlTWFuaWZlc3QoZmlsZSk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIFNsYWNrIGFwcCBtYW5pZmVzdCBieSBzcGVjaWZ5aW5nIHByb3BlcnRpZXNcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbU1hbmlmZXN0KHByb3BzOiBTbGFja0FwcE1hbmlmZXN0UHJvcHMpOiBTbGFja0FwcE1hbmlmZXN0RGVmaW5pdGlvbiB7XG4gICAgcmV0dXJuIG5ldyBTbGFja0FwcE1hbmlmZXN0KHByb3BzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXJzIHRoZSBKU09OIGFwcCBtYW5pZmVzdCBlbmNvZGVkIGFzIGEgc3RyaW5nXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgcmVuZGVyKGNvbnN0cnVjdDogSUNvbnN0cnVjdCk6IHN0cmluZztcbn1cblxuY2xhc3MgU3RyaW5nTWFuaWZlc3QgZXh0ZW5kcyBTbGFja0FwcE1hbmlmZXN0RGVmaW5pdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgbWFuaWZlc3Q6IHN0cmluZykge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgcmVuZGVyKF9jb25zdHJ1Y3Q6IElDb25zdHJ1Y3QpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm1hbmlmZXN0O1xuICB9XG59XG5cbmNsYXNzIEZpbGVNYW5pZmVzdCBleHRlbmRzIFNsYWNrQXBwTWFuaWZlc3REZWZpbml0aW9uIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBmaWxlOiBzdHJpbmcpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIHJlbmRlcihfY29uc3RydWN0OiBJQ29uc3RydWN0KTogc3RyaW5nIHtcbiAgICByZXR1cm4gZnMucmVhZEZpbGVTeW5jKHRoaXMuZmlsZSwgJ3V0ZjgnKTtcbiAgfVxufVxuXG4vKipcbiAqIEEgU2xhY2sgYXBwbGljYXRpb24gZGVwbG95ZWQgd2l0aCBhIG1hbmlmZXN0XG4gKlxuICogQHNlZSBodHRwczovL2FwaS5zbGFjay5jb20vcmVmZXJlbmNlL21hbmlmZXN0c1xuICovXG5leHBvcnQgY2xhc3MgU2xhY2tBcHAgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBhcHBsaWNhdGlvblxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGFwcElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFuIEFXUyBTZWNyZXRzIE1hbmFnZXIgc2VjcmV0IGNvbnRhaW5pbmcgdGhlIGNyZWRlbnRpYWxzIG9mIHRoZSBhcHBsaWNhdGlvbi5cbiAgICpcbiAgICogYGBgXG4gICAqIHtcbiAgICogICBcImFwcElkXCI6IFwiLi4uXCIsXG4gICAqICAgXCJjbGllbnRJZFwiOiBcIi4uLlwiLFxuICAgKiAgIFwiY2xpZW50U2VjcmV0XCI6IFwiLi4uXCIsXG4gICAqICAgXCJ2ZXJpZmljYXRpb25Ub2tlblwiOiBcIi4uLlwiLFxuICAgKiAgIFwic2lnbmluZ1NlY3JldFwiOiBcIi4uLlwiXG4gICAqIH1cbiAgICogYGBgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbHM6IHNlY3JldHNtYW5hZ2VyLklTZWNyZXQ7XG5cbiAgLyoqXG4gICAqIEEgZHluYW1pYyByZWZlcmVuY2UgdG8gdGhlIGNsaWVudCBJRCBvZiB0aGUgYXBwXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2xpZW50SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQSBkeW5hbWljIHJlZmVyZW5jZSB0byB0aGUgY2xpZW50IHNlY3JldCBvZiB0aGUgYXBwXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY2xpZW50U2VjcmV0OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgZHluYW1pYyByZWZlcmVuY2UgdG8gdGhlIHZlcmlmaWNhdGlvbiB0b2tlbiBvZiB0aGUgYXBwXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdmVyaWZpY2F0aW9uVG9rZW46IHN0cmluZztcblxuICAvKipcbiAgICogQSBkeW5hbWljIHJlZmVyZW5jZSB0byB0aGUgc2lnbmluZyBzZWNyZXQgb2YgdGhlIGFwcFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNpZ25pbmdTZWNyZXQ6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU2xhY2tBcHBQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBjb25zdCBwcm92aWRlciA9IFNsYWNrQXBwUHJvdmlkZXIuZ2V0T3JDcmVhdGUodGhpcyk7XG4gICAgcHJvcHMuY29uZmlndXJhdGlvblRva2VuU2VjcmV0LmdyYW50UmVhZChwcm92aWRlci5oYW5kbGVyKTtcbiAgICBwcm9wcy5jb25maWd1cmF0aW9uVG9rZW5TZWNyZXQuZ3JhbnRXcml0ZShwcm92aWRlci5oYW5kbGVyKTtcblxuICAgIHRoaXMuY3JlZGVudGlhbHMgPSBwcm9wcy5jcmVkZW50aWFsc1NlY3JldCA/PyBuZXcgc2VjcmV0c21hbmFnZXIuU2VjcmV0KHRoaXMsICdDcmVkZW50aWFscycsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBgQ3JlZGVudGlhbHMgZm9yIFNsYWNrIEFwcCAke3RoaXMubm9kZS5pZH1gLFxuICAgIH0pO1xuICAgIHRoaXMuY3JlZGVudGlhbHMuZ3JhbnRXcml0ZShwcm92aWRlci5oYW5kbGVyKTtcblxuICAgIGNvbnN0IHJlc291cmNlID0gbmV3IEN1c3RvbVJlc291cmNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIHNlcnZpY2VUb2tlbjogcHJvdmlkZXIuc2VydmljZVRva2VuLFxuICAgICAgcmVzb3VyY2VUeXBlOiAnQ3VzdG9tOjpTbGFja0FwcCcsXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIG1hbmlmZXN0OiBwcm9wcy5tYW5pZmVzdC5yZW5kZXIodGhpcyksXG4gICAgICAgIGNvbmZpZ3VyYXRpb25Ub2tlblNlY3JldEFybjogcHJvcHMuY29uZmlndXJhdGlvblRva2VuU2VjcmV0LnNlY3JldEFybixcbiAgICAgICAgY3JlZGVudGlhbHNTZWNyZXRBcm46IHRoaXMuY3JlZGVudGlhbHMuc2VjcmV0QXJuLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIHRoaXMuYXBwSWQgPSByZXNvdXJjZS5nZXRBdHRTdHJpbmcoJ2FwcElkJyk7XG4gICAgdGhpcy5jbGllbnRJZCA9IHRoaXMuY3JlZGVudGlhbHMuc2VjcmV0VmFsdWVGcm9tSnNvbignY2xpZW50SWQnKS50b1N0cmluZygpO1xuICAgIHRoaXMuY2xpZW50U2VjcmV0ID0gdGhpcy5jcmVkZW50aWFscy5zZWNyZXRWYWx1ZUZyb21Kc29uKCdjbGllbnRTZWNyZXQnKS50b1N0cmluZygpO1xuICAgIHRoaXMudmVyaWZpY2F0aW9uVG9rZW4gPSB0aGlzLmNyZWRlbnRpYWxzLnNlY3JldFZhbHVlRnJvbUpzb24oJ3ZlcmlmaWNhdGlvblRva2VuJykudG9TdHJpbmcoKTtcbiAgICB0aGlzLnNpZ25pbmdTZWNyZXQgPSB0aGlzLmNyZWRlbnRpYWxzLnNlY3JldFZhbHVlRnJvbUpzb24oJ3NpZ25pbmdTZWNyZXQnKS50b1N0cmluZygpO1xuICB9XG59XG4iXX0=
@@ -2,46 +2,33 @@ import * as cdk from 'aws-cdk-lib';
2
2
  import * as events from 'aws-cdk-lib/aws-events';
3
3
  import { Construct } from 'constructs';
4
4
  /**
5
- * Properties for a SlackEvents.
6
- *
7
- * @stability stable
5
+ * Properties for a SlackEvents
8
6
  */
9
7
  export interface SlackEventsProps {
10
8
  /**
11
- * The signing secret of the Slack app.
12
- *
13
- * @stability stable
9
+ * The signing secret of the Slack app
14
10
  */
15
11
  readonly signingSecret: cdk.SecretValue;
16
12
  /**
17
- * A name for the API Gateway resource.
13
+ * A name for the API Gateway resource
18
14
  *
19
15
  * @default SlackEventsApi
20
- * @stability stable
21
16
  */
22
17
  readonly apiName?: string;
23
18
  /**
24
- * Whether to use a custom event bus.
19
+ * Whether to use a custom event bus
25
20
  *
26
21
  * @default false
27
- * @stability stable
28
22
  */
29
23
  readonly customEventBus?: boolean;
30
24
  }
31
25
  /**
32
- * Send Slack events to Amazon EventBridge.
33
- *
34
- * @stability stable
26
+ * Send Slack events to Amazon EventBridge
35
27
  */
36
28
  export declare class SlackEvents extends Construct {
37
29
  /**
38
- * The custom event bus where Slack events are sent.
39
- *
40
- * @stability stable
30
+ * The custom event bus where Slack events are sent
41
31
  */
42
32
  readonly eventBus?: events.EventBus;
43
- /**
44
- * @stability stable
45
- */
46
33
  constructor(scope: Construct, id: string, props: SlackEventsProps);
47
34
  }
@@ -11,14 +11,9 @@ const logs = require("aws-cdk-lib/aws-logs");
11
11
  const constructs_1 = require("constructs");
12
12
  const events_function_1 = require("./events-function");
13
13
  /**
14
- * Send Slack events to Amazon EventBridge.
15
- *
16
- * @stability stable
14
+ * Send Slack events to Amazon EventBridge
17
15
  */
18
16
  class SlackEvents extends constructs_1.Construct {
19
- /**
20
- * @stability stable
21
- */
22
17
  constructor(scope, id, props) {
23
18
  super(scope, id);
24
19
  if (props.customEventBus) {
@@ -47,5 +42,5 @@ class SlackEvents extends constructs_1.Construct {
47
42
  }
48
43
  exports.SlackEvents = SlackEvents;
49
44
  _a = JSII_RTTI_SYMBOL_1;
50
- SlackEvents[_a] = { fqn: "cloudstructs.SlackEvents", version: "0.4.18" };
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xhY2stZXZlbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0VBQWdFO0FBQ2hFLDZFQUE2RTtBQUM3RSxtQ0FBbUM7QUFDbkMsaURBQWlEO0FBQ2pELDZDQUE2QztBQUM3QywyQ0FBdUM7QUFDdkMsdURBQW1EOzs7Ozs7QUFlbkQsTUFBYSxXQUFZLFNBQVEsc0JBQVM7Ozs7SUFJeEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUF1QjtRQUMvRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksS0FBSyxDQUFDLGNBQWMsRUFBRTtZQUN4QixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7U0FDdkQ7UUFFRCw4QkFBOEI7UUFDOUIsTUFBTSxPQUFPLEdBQUcsSUFBSSxnQ0FBYyxDQUFDLElBQUksRUFBRSxTQUFTLEVBQUU7WUFDbEQsWUFBWSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUztZQUMxQyxXQUFXLEVBQUU7Z0JBQ1gsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUU7YUFDckQ7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsT0FBTyxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ3RFO1FBRUQsTUFBTSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUzQyxXQUFXO1FBQ1gsTUFBTSxPQUFPLEdBQUcsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRTtZQUMvRCxrQkFBa0IsRUFBRSxJQUFJLFlBQVksQ0FBQyxxQkFBcUIsQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDO1lBQ2xGLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztTQUN2QixDQUFDLENBQUM7UUFFSCxJQUFJLEdBQUcsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUNyQyxLQUFLLEVBQUUsT0FBTyxDQUFDLFdBQVc7U0FDM0IsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFsQ0gsa0NBbUNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXBpZ2F0ZXdheXYyIGZyb20gJ0Bhd3MtY2RrL2F3cy1hcGlnYXRld2F5djItYWxwaGEnO1xuaW1wb3J0ICogYXMgaW50ZWdyYXRpb25zIGZyb20gJ0Bhd3MtY2RrL2F3cy1hcGlnYXRld2F5djItaW50ZWdyYXRpb25zLWFscGhhJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBldmVudHMgZnJvbSAnYXdzLWNkay1saWIvYXdzLWV2ZW50cyc7XG5pbXBvcnQgKiBhcyBsb2dzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sb2dzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgRXZlbnRzRnVuY3Rpb24gfSBmcm9tICcuL2V2ZW50cy1mdW5jdGlvbic7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGludGVyZmFjZSBTbGFja0V2ZW50c1Byb3BzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgc2lnbmluZ1NlY3JldDogY2RrLlNlY3JldFZhbHVlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICByZWFkb25seSBhcGlOYW1lPzogc3RyaW5nO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgcmVhZG9ubHkgY3VzdG9tRXZlbnRCdXM/OiBib29sZWFuO1xufVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuZXhwb3J0IGNsYXNzIFNsYWNrRXZlbnRzIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gIHB1YmxpYyByZWFkb25seSBldmVudEJ1cz86IGV2ZW50cy5FdmVudEJ1cztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogU2xhY2tFdmVudHNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBpZiAocHJvcHMuY3VzdG9tRXZlbnRCdXMpIHtcbiAgICAgIHRoaXMuZXZlbnRCdXMgPSBuZXcgZXZlbnRzLkV2ZW50QnVzKHRoaXMsICdFdmVudEJ1cycpO1xuICAgIH1cblxuICAgIC8vIFNlbmQgZXZlbnQgdG8gdGhlIGV2ZW50IGJ1c1xuICAgIGNvbnN0IGhhbmRsZXIgPSBuZXcgRXZlbnRzRnVuY3Rpb24odGhpcywgJ2hhbmRsZXInLCB7XG4gICAgICBsb2dSZXRlbnRpb246IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfTU9OVEgsXG4gICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICBTTEFDS19TSUdOSU5HX1NFQ1JFVDogcHJvcHMuc2lnbmluZ1NlY3JldC50b1N0cmluZygpLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGlmICh0aGlzLmV2ZW50QnVzKSB7XG4gICAgICBoYW5kbGVyLmFkZEVudmlyb25tZW50KCdFVkVOVF9CVVNfTkFNRScsIHRoaXMuZXZlbnRCdXMuZXZlbnRCdXNOYW1lKTtcbiAgICB9XG5cbiAgICBldmVudHMuRXZlbnRCdXMuZ3JhbnRBbGxQdXRFdmVudHMoaGFuZGxlcik7XG5cbiAgICAvLyBIVFRQIEFQSVxuICAgIGNvbnN0IGh0dHBBcGkgPSBuZXcgYXBpZ2F0ZXdheXYyLkh0dHBBcGkodGhpcywgJ1NsYWNrRXZlbnRzQXBpJywge1xuICAgICAgZGVmYXVsdEludGVncmF0aW9uOiBuZXcgaW50ZWdyYXRpb25zLkh0dHBMYW1iZGFJbnRlZ3JhdGlvbignSW50ZWdyYXRpb24nLCBoYW5kbGVyKSxcbiAgICAgIGFwaU5hbWU6IHByb3BzLmFwaU5hbWUsXG4gICAgfSk7XG5cbiAgICBuZXcgY2RrLkNmbk91dHB1dCh0aGlzLCAnQXBpRW5kcG9pbnQnLCB7XG4gICAgICB2YWx1ZTogaHR0cEFwaS5hcGlFbmRwb2ludCxcbiAgICB9KTtcbiAgfVxufVxuIl19
45
+ SlackEvents[_a] = { fqn: "cloudstructs.SlackEvents", version: "0.4.21" };
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2xhY2stZXZlbnRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsZ0VBQWdFO0FBQ2hFLDZFQUE2RTtBQUM3RSxtQ0FBbUM7QUFDbkMsaURBQWlEO0FBQ2pELDZDQUE2QztBQUM3QywyQ0FBdUM7QUFDdkMsdURBQW1EO0FBMEJuRDs7R0FFRztBQUNILE1BQWEsV0FBWSxTQUFRLHNCQUFTO0lBTXhDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBdUI7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLEtBQUssQ0FBQyxjQUFjLEVBQUU7WUFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsOEJBQThCO1FBQzlCLE1BQU0sT0FBTyxHQUFHLElBQUksZ0NBQWMsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFO1lBQ2xELFlBQVksRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVM7WUFDMUMsV0FBVyxFQUFFO2dCQUNYLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxhQUFhLENBQUMsUUFBUSxFQUFFO2FBQ3JEO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLE9BQU8sQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUN0RTtRQUVELE1BQU0sQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFM0MsV0FBVztRQUNYLE1BQU0sT0FBTyxHQUFHLElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7WUFDL0Qsa0JBQWtCLEVBQUUsSUFBSSxZQUFZLENBQUMscUJBQXFCLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQztZQUNsRixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87U0FDdkIsQ0FBQyxDQUFDO1FBRUgsSUFBSSxHQUFHLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUU7WUFDckMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxXQUFXO1NBQzNCLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBcENILGtDQXFDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFwaWdhdGV3YXl2MiBmcm9tICdAYXdzLWNkay9hd3MtYXBpZ2F0ZXdheXYyLWFscGhhJztcbmltcG9ydCAqIGFzIGludGVncmF0aW9ucyBmcm9tICdAYXdzLWNkay9hd3MtYXBpZ2F0ZXdheXYyLWludGVncmF0aW9ucy1hbHBoYSc7XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgZXZlbnRzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1ldmVudHMnO1xuaW1wb3J0ICogYXMgbG9ncyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IEV2ZW50c0Z1bmN0aW9uIH0gZnJvbSAnLi9ldmVudHMtZnVuY3Rpb24nO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgU2xhY2tFdmVudHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTbGFja0V2ZW50c1Byb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBzaWduaW5nIHNlY3JldCBvZiB0aGUgU2xhY2sgYXBwXG4gICAqL1xuICByZWFkb25seSBzaWduaW5nU2VjcmV0OiBjZGsuU2VjcmV0VmFsdWU7XG5cbiAgLyoqXG4gICAqIEEgbmFtZSBmb3IgdGhlIEFQSSBHYXRld2F5IHJlc291cmNlXG4gICAqXG4gICAqIEBkZWZhdWx0IFNsYWNrRXZlbnRzQXBpXG4gICAqL1xuICByZWFkb25seSBhcGlOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHVzZSBhIGN1c3RvbSBldmVudCBidXNcbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IGN1c3RvbUV2ZW50QnVzPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBTZW5kIFNsYWNrIGV2ZW50cyB0byBBbWF6b24gRXZlbnRCcmlkZ2VcbiAqL1xuZXhwb3J0IGNsYXNzIFNsYWNrRXZlbnRzIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIFRoZSBjdXN0b20gZXZlbnQgYnVzIHdoZXJlIFNsYWNrIGV2ZW50cyBhcmUgc2VudFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGV2ZW50QnVzPzogZXZlbnRzLkV2ZW50QnVzO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTbGFja0V2ZW50c1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGlmIChwcm9wcy5jdXN0b21FdmVudEJ1cykge1xuICAgICAgdGhpcy5ldmVudEJ1cyA9IG5ldyBldmVudHMuRXZlbnRCdXModGhpcywgJ0V2ZW50QnVzJyk7XG4gICAgfVxuXG4gICAgLy8gU2VuZCBldmVudCB0byB0aGUgZXZlbnQgYnVzXG4gICAgY29uc3QgaGFuZGxlciA9IG5ldyBFdmVudHNGdW5jdGlvbih0aGlzLCAnaGFuZGxlcicsIHtcbiAgICAgIGxvZ1JldGVudGlvbjogbG9ncy5SZXRlbnRpb25EYXlzLk9ORV9NT05USCxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIFNMQUNLX1NJR05JTkdfU0VDUkVUOiBwcm9wcy5zaWduaW5nU2VjcmV0LnRvU3RyaW5nKCksXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuZXZlbnRCdXMpIHtcbiAgICAgIGhhbmRsZXIuYWRkRW52aXJvbm1lbnQoJ0VWRU5UX0JVU19OQU1FJywgdGhpcy5ldmVudEJ1cy5ldmVudEJ1c05hbWUpO1xuICAgIH1cblxuICAgIGV2ZW50cy5FdmVudEJ1cy5ncmFudEFsbFB1dEV2ZW50cyhoYW5kbGVyKTtcblxuICAgIC8vIEhUVFAgQVBJXG4gICAgY29uc3QgaHR0cEFwaSA9IG5ldyBhcGlnYXRld2F5djIuSHR0cEFwaSh0aGlzLCAnU2xhY2tFdmVudHNBcGknLCB7XG4gICAgICBkZWZhdWx0SW50ZWdyYXRpb246IG5ldyBpbnRlZ3JhdGlvbnMuSHR0cExhbWJkYUludGVncmF0aW9uKCdJbnRlZ3JhdGlvbicsIGhhbmRsZXIpLFxuICAgICAgYXBpTmFtZTogcHJvcHMuYXBpTmFtZSxcbiAgICB9KTtcblxuICAgIG5ldyBjZGsuQ2ZuT3V0cHV0KHRoaXMsICdBcGlFbmRwb2ludCcsIHtcbiAgICAgIHZhbHVlOiBodHRwQXBpLmFwaUVuZHBvaW50LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,40 +1,27 @@
1
1
  import { SecretValue } from 'aws-cdk-lib';
2
2
  import { Construct } from 'constructs';
3
3
  /**
4
- * Properties for a SlackTextract.
5
- *
6
- * @stability stable
4
+ * Properties for a SlackTextract
7
5
  */
8
6
  export interface SlackTextractProps {
9
7
  /**
10
- * The signing secret of the Slack app.
11
- *
12
- * @stability stable
8
+ * The signing secret of the Slack app
13
9
  */
14
10
  readonly signingSecret: SecretValue;
15
11
  /**
16
12
  * The **bot** token of the Slack app.
17
13
  *
18
14
  * The following scopes are required: `chat:write` and `files:read`
19
- *
20
- * @stability stable
21
15
  */
22
16
  readonly botToken: SecretValue;
23
17
  /**
24
18
  * The application id of the Slack app.
25
- *
26
- * @stability stable
27
19
  */
28
20
  readonly appId: string;
29
21
  }
30
22
  /**
31
- * Extract text from images posted to Slack using Amazon Textract.
32
- *
33
- * @stability stable
23
+ * Extract text from images posted to Slack using Amazon Textract
34
24
  */
35
25
  export declare class SlackTextract extends Construct {
36
- /**
37
- * @stability stable
38
- */
39
26
  constructor(scope: Construct, id: string, props: SlackTextractProps);
40
27
  }