@cloudsnorkel/cdk-github-runners 0.11.3 → 0.11.5

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 (73) hide show
  1. package/.gitattributes +1 -1
  2. package/.jsii +127 -93
  3. package/API.md +29 -2
  4. package/SETUP_GITHUB.md +9 -5
  5. package/assets/delete-failed-runner.lambda/index.js +55 -45
  6. package/assets/docker-images/lambda/linux-arm64/runner.js +1 -0
  7. package/assets/docker-images/lambda/linux-arm64/runner.sh +1 -1
  8. package/assets/docker-images/lambda/linux-x64/runner.js +1 -0
  9. package/assets/docker-images/lambda/linux-x64/runner.sh +1 -1
  10. package/assets/idle-runner-repear.lambda/index.js +65 -55
  11. package/assets/image-builders/aws-image-builder/delete-ami.lambda/index.js +14 -28
  12. package/assets/image-builders/aws-image-builder/filter-failed-builds.lambda/index.js +4 -14
  13. package/assets/image-builders/aws-image-builder/reaper.lambda/index.js +18 -30
  14. package/assets/image-builders/aws-image-builder/versioner.lambda/index.js +10 -16
  15. package/assets/providers/ami-root-device.lambda/index.js +12 -23
  16. package/assets/providers/build-image.lambda/index.js +16 -24
  17. package/assets/providers/update-lambda.lambda/index.js +5 -15
  18. package/assets/setup.lambda/index.html +20 -12
  19. package/assets/setup.lambda/index.js +17 -12
  20. package/assets/status.lambda/index.js +50 -55
  21. package/assets/token-retriever.lambda/index.js +51 -39
  22. package/assets/webhook-handler.lambda/index.js +32 -42
  23. package/lib/access.js +1 -1
  24. package/lib/delete-failed-runner-function.js +2 -2
  25. package/lib/delete-failed-runner.lambda.js +4 -8
  26. package/lib/idle-runner-repear-function.js +2 -2
  27. package/lib/idle-runner-repear.lambda.js +16 -19
  28. package/lib/image-builders/api.js +1 -1
  29. package/lib/image-builders/aws-image-builder/builder.js +1 -1
  30. package/lib/image-builders/aws-image-builder/delete-ami-function.js +2 -2
  31. package/lib/image-builders/aws-image-builder/delete-ami.lambda.js +11 -11
  32. package/lib/image-builders/aws-image-builder/deprecated/ami.js +1 -1
  33. package/lib/image-builders/aws-image-builder/deprecated/container.js +1 -1
  34. package/lib/image-builders/aws-image-builder/deprecated/linux-components.js +1 -1
  35. package/lib/image-builders/aws-image-builder/deprecated/windows-components.js +1 -1
  36. package/lib/image-builders/aws-image-builder/filter-failed-builds-function.js +2 -2
  37. package/lib/image-builders/aws-image-builder/filter-failed-builds.lambda.js +5 -5
  38. package/lib/image-builders/aws-image-builder/reaper-function.js +2 -2
  39. package/lib/image-builders/aws-image-builder/reaper.lambda.js +15 -13
  40. package/lib/image-builders/aws-image-builder/versioner-function.js +2 -2
  41. package/lib/image-builders/aws-image-builder/versioner.lambda.js +9 -9
  42. package/lib/image-builders/codebuild-deprecated.js +1 -1
  43. package/lib/image-builders/components.js +1 -1
  44. package/lib/image-builders/static.js +1 -1
  45. package/lib/lambda-github.d.ts +16 -13
  46. package/lib/lambda-github.js +33 -8
  47. package/lib/lambda-helpers.js +5 -5
  48. package/lib/providers/ami-root-device-function.js +2 -2
  49. package/lib/providers/ami-root-device.lambda.js +8 -7
  50. package/lib/providers/build-image-function.js +2 -2
  51. package/lib/providers/build-image.lambda.js +15 -13
  52. package/lib/providers/codebuild.js +10 -5
  53. package/lib/providers/common.d.ts +5 -1
  54. package/lib/providers/common.js +4 -4
  55. package/lib/providers/ec2.js +56 -17
  56. package/lib/providers/ecs.d.ts +7 -1
  57. package/lib/providers/ecs.js +8 -3
  58. package/lib/providers/fargate.js +12 -8
  59. package/lib/providers/lambda.js +4 -3
  60. package/lib/providers/update-lambda-function.js +2 -2
  61. package/lib/providers/update-lambda.lambda.js +6 -6
  62. package/lib/runner.js +6 -2
  63. package/lib/secrets.js +4 -2
  64. package/lib/setup-function.js +2 -2
  65. package/lib/setup.lambda.js +13 -7
  66. package/lib/status-function.js +2 -2
  67. package/lib/status.lambda.js +23 -17
  68. package/lib/token-retriever-function.js +2 -2
  69. package/lib/token-retriever.lambda.d.ts +2 -1
  70. package/lib/token-retriever.lambda.js +30 -8
  71. package/lib/webhook-handler-function.js +2 -2
  72. package/lib/webhook-handler.lambda.js +5 -5
  73. package/package.json +21 -10
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.handler = exports.increaseVersion = void 0;
4
- const AWS = require("aws-sdk");
4
+ const client_imagebuilder_1 = require("@aws-sdk/client-imagebuilder");
5
5
  const semver_1 = require("semver");
6
6
  const lambda_helpers_1 = require("../../lambda-helpers");
7
- const ib = new AWS.Imagebuilder();
7
+ const ib = new client_imagebuilder_1.ImagebuilderClient();
8
8
  /**
9
9
  * Exported for unit tests.
10
10
  * @internal
@@ -36,13 +36,13 @@ async function handler(event, context) {
36
36
  case 'Component': {
37
37
  let result = {};
38
38
  do {
39
- result = await ib.listComponents({
39
+ result = await ib.send(new client_imagebuilder_1.ListComponentsCommand({
40
40
  filters: [{
41
41
  name: 'name',
42
42
  values: [objectName],
43
43
  }],
44
44
  nextToken: result.nextToken,
45
- }).promise();
45
+ }));
46
46
  allVersions = allVersions.concat(result.componentVersionList.map(i => i.version || '1.0.0'));
47
47
  } while (result.nextToken);
48
48
  break;
@@ -50,13 +50,13 @@ async function handler(event, context) {
50
50
  case 'ImageRecipe': {
51
51
  let result = {};
52
52
  do {
53
- result = await ib.listImageRecipes({
53
+ result = await ib.send(new client_imagebuilder_1.ListImageRecipesCommand({
54
54
  filters: [{
55
55
  name: 'name',
56
56
  values: [objectName],
57
57
  }],
58
58
  nextToken: result.nextToken,
59
- }).promise();
59
+ }));
60
60
  allVersions = allVersions.concat(result.imageRecipeSummaryList.map(i => i.arn?.split('/').pop() || '1.0.0'));
61
61
  } while (result.nextToken);
62
62
  break;
@@ -64,13 +64,13 @@ async function handler(event, context) {
64
64
  case 'ContainerRecipe': {
65
65
  let result = {};
66
66
  do {
67
- result = await ib.listContainerRecipes({
67
+ result = await ib.send(new client_imagebuilder_1.ListContainerRecipesCommand({
68
68
  filters: [{
69
69
  name: 'name',
70
70
  values: [objectName],
71
71
  }],
72
72
  nextToken: result.nextToken,
73
- }).promise();
73
+ }));
74
74
  allVersions = allVersions.concat(result.containerRecipeSummaryList.map(i => i.arn?.split('/').pop() || '1.0.0'));
75
75
  } while (result.nextToken);
76
76
  break;
@@ -99,4 +99,4 @@ async function handler(event, context) {
99
99
  }
100
100
  }
101
101
  exports.handler = handler;
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbmVyLmxhbWJkYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbWFnZS1idWlsZGVycy9hd3MtaW1hZ2UtYnVpbGRlci92ZXJzaW9uZXIubGFtYmRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLCtCQUErQjtBQUMvQixtQ0FBNEM7QUFDNUMseURBQTZEO0FBRTdELE1BQU0sRUFBRSxHQUFHLElBQUksR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0FBRWxDOzs7R0FHRztBQUNILFNBQWdCLGVBQWUsQ0FBQyxXQUFxQjtJQUNuRCxJQUFJLE9BQU8sR0FBRyxJQUFBLHNCQUFhLEVBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3BELElBQUksT0FBTyxLQUFLLElBQUksRUFBRTtRQUNwQixPQUFPLEdBQUcsT0FBTyxDQUFDO0tBQ25CO0lBQ0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsV0FBVyxpQkFBaUIsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUVyRSxPQUFPLEdBQUcsSUFBQSxZQUFHLEVBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ2hDLElBQUksT0FBTyxLQUFLLElBQUksRUFBRTtRQUNwQixNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7S0FDM0M7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDO0FBYkQsMENBYUM7QUFFTSxLQUFLLFVBQVUsT0FBTyxDQUFDLEtBQWtELEVBQUUsT0FBMEI7SUFDMUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsR0FBRyxLQUFLLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztJQUU5RCxJQUFJO1FBQ0YsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQztRQUN2RCxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsa0JBQWtCLENBQUMsVUFBVSxDQUFDO1FBRXZELFFBQVEsS0FBSyxDQUFDLFdBQVcsRUFBRTtZQUN6QixLQUFLLFFBQVEsQ0FBQztZQUNkLEtBQUssUUFBUTtnQkFDWCxJQUFJLFdBQVcsR0FBYSxFQUFFLENBQUM7Z0JBQy9CLElBQUk7b0JBQ0YsUUFBUSxVQUFVLEVBQUU7d0JBQ2xCLEtBQUssV0FBVyxDQUFDLENBQUM7NEJBQ2hCLElBQUksTUFBTSxHQUE0QyxFQUFFLENBQUM7NEJBQ3pELEdBQUc7Z0NBQ0QsTUFBTSxHQUFHLE1BQU0sRUFBRSxDQUFDLGNBQWMsQ0FBQztvQ0FDL0IsT0FBTyxFQUFFLENBQUM7NENBQ1IsSUFBSSxFQUFFLE1BQU07NENBQ1osTUFBTSxFQUFFLENBQUMsVUFBVSxDQUFDO3lDQUNyQixDQUFDO29DQUNGLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztpQ0FDNUIsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dDQUNiLFdBQVcsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxvQkFBcUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUM7NkJBQy9GLFFBQVEsTUFBTSxDQUFDLFNBQVMsRUFBRTs0QkFDM0IsTUFBTTt5QkFDUDt3QkFDRCxLQUFLLGFBQWEsQ0FBQyxDQUFDOzRCQUNsQixJQUFJLE1BQU0sR0FBOEMsRUFBRSxDQUFDOzRCQUMzRCxHQUFHO2dDQUNELE1BQU0sR0FBRyxNQUFNLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQ0FDakMsT0FBTyxFQUFFLENBQUM7NENBQ1IsSUFBSSxFQUFFLE1BQU07NENBQ1osTUFBTSxFQUFFLENBQUMsVUFBVSxDQUFDO3lDQUNyQixDQUFDO29DQUNGLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztpQ0FDNUIsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dDQUNiLFdBQVcsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxzQkFBdUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDOzZCQUMvRyxRQUFRLE1BQU0sQ0FBQyxTQUFTLEVBQUU7NEJBQzNCLE1BQU07eUJBQ1A7d0JBQ0QsS0FBSyxpQkFBaUIsQ0FBQyxDQUFDOzRCQUN0QixJQUFJLE1BQU0sR0FBa0QsRUFBRSxDQUFDOzRCQUMvRCxHQUFHO2dDQUNELE1BQU0sR0FBRyxNQUFNLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQ0FDckMsT0FBTyxFQUFFLENBQUM7NENBQ1IsSUFBSSxFQUFFLE1BQU07NENBQ1osTUFBTSxFQUFFLENBQUMsVUFBVSxDQUFDO3lDQUNyQixDQUFDO29DQUNGLFNBQVMsRUFBRSxNQUFNLENBQUMsU0FBUztpQ0FDNUIsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dDQUNiLFdBQVcsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQywwQkFBMkIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDOzZCQUNuSCxRQUFRLE1BQU0sQ0FBQyxTQUFTLEVBQUU7NEJBQzNCLE1BQU07eUJBQ1A7cUJBQ0Y7aUJBQ0Y7Z0JBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ1YsSUFBSyxDQUFTLENBQUMsSUFBSSxLQUFLLDJCQUEyQixFQUFFO3dCQUNuRCxNQUFNLENBQUMsQ0FBQztxQkFDVDt5QkFBTTt3QkFDTCxPQUFPLENBQUMsR0FBRyxDQUFDLDRDQUE0QyxDQUFDLENBQUM7cUJBQzNEO2lCQUNGO2dCQUVELE1BQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDN0MsTUFBTSxJQUFBLHNDQUFxQixFQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFFakUsTUFBTTtZQUNSLEtBQUssUUFBUTtnQkFDWCxNQUFNLElBQUEsc0NBQXFCLEVBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNsRixNQUFNO1NBQ1Q7S0FDRjtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNmLE1BQU0sSUFBQSxzQ0FBcUIsRUFBQyxLQUFLLEVBQUUsUUFBUSxFQUFHLENBQVcsQ0FBQyxPQUFPLElBQUksZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztLQUNuSDtBQUNILENBQUM7QUE1RUQsMEJBNEVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgQVdTTGFtYmRhIGZyb20gJ2F3cy1sYW1iZGEnO1xuaW1wb3J0ICogYXMgQVdTIGZyb20gJ2F3cy1zZGsnO1xuaW1wb3J0IHsgaW5jLCBtYXhTYXRpc2Z5aW5nIH0gZnJvbSAnc2VtdmVyJztcbmltcG9ydCB7IGN1c3RvbVJlc291cmNlUmVzcG9uZCB9IGZyb20gJy4uLy4uL2xhbWJkYS1oZWxwZXJzJztcblxuY29uc3QgaWIgPSBuZXcgQVdTLkltYWdlYnVpbGRlcigpO1xuXG4vKipcbiAqIEV4cG9ydGVkIGZvciB1bml0IHRlc3RzLlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbmNyZWFzZVZlcnNpb24oYWxsVmVyc2lvbnM6IHN0cmluZ1tdKSB7XG4gIGxldCB2ZXJzaW9uID0gbWF4U2F0aXNmeWluZyhhbGxWZXJzaW9ucywgJz49MC4wLjAnKTtcbiAgaWYgKHZlcnNpb24gPT09IG51bGwpIHtcbiAgICB2ZXJzaW9uID0gJzEuMC4wJztcbiAgfVxuICBjb25zb2xlLmxvZyhgRm91bmQgdmVyc2lvbnMgJHthbGxWZXJzaW9uc30gLS0gbGF0ZXN0IGlzICR7dmVyc2lvbn1gKTtcblxuICB2ZXJzaW9uID0gaW5jKHZlcnNpb24sICdwYXRjaCcpO1xuICBpZiAodmVyc2lvbiA9PT0gbnVsbCkge1xuICAgIHRocm93IG5ldyBFcnJvcignVW5hYmxlIHRvIGJ1bXAgdmVyc2lvbicpO1xuICB9XG5cbiAgcmV0dXJuIHZlcnNpb247XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBoYW5kbGVyKGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUV2ZW50LCBjb250ZXh0OiBBV1NMYW1iZGEuQ29udGV4dCkge1xuICBjb25zb2xlLmxvZyhKU09OLnN0cmluZ2lmeSh7IC4uLmV2ZW50LCBSZXNwb25zZVVSTDogJy4uLicgfSkpO1xuXG4gIHRyeSB7XG4gICAgY29uc3Qgb2JqZWN0VHlwZSA9IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5PYmplY3RUeXBlO1xuICAgIGNvbnN0IG9iamVjdE5hbWUgPSBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuT2JqZWN0TmFtZTtcblxuICAgIHN3aXRjaCAoZXZlbnQuUmVxdWVzdFR5cGUpIHtcbiAgICAgIGNhc2UgJ0NyZWF0ZSc6XG4gICAgICBjYXNlICdVcGRhdGUnOlxuICAgICAgICBsZXQgYWxsVmVyc2lvbnM6IHN0cmluZ1tdID0gW107XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgc3dpdGNoIChvYmplY3RUeXBlKSB7XG4gICAgICAgICAgICBjYXNlICdDb21wb25lbnQnOiB7XG4gICAgICAgICAgICAgIGxldCByZXN1bHQ6IEFXUy5JbWFnZWJ1aWxkZXIuTGlzdENvbXBvbmVudHNSZXNwb25zZSA9IHt9O1xuICAgICAgICAgICAgICBkbyB7XG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gYXdhaXQgaWIubGlzdENvbXBvbmVudHMoe1xuICAgICAgICAgICAgICAgICAgZmlsdGVyczogW3tcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZXM6IFtvYmplY3ROYW1lXSxcbiAgICAgICAgICAgICAgICAgIH1dLFxuICAgICAgICAgICAgICAgICAgbmV4dFRva2VuOiByZXN1bHQubmV4dFRva2VuLFxuICAgICAgICAgICAgICAgIH0pLnByb21pc2UoKTtcbiAgICAgICAgICAgICAgICBhbGxWZXJzaW9ucyA9IGFsbFZlcnNpb25zLmNvbmNhdChyZXN1bHQuY29tcG9uZW50VmVyc2lvbkxpc3QhLm1hcChpID0+IGkudmVyc2lvbiB8fCAnMS4wLjAnKSk7XG4gICAgICAgICAgICAgIH0gd2hpbGUgKHJlc3VsdC5uZXh0VG9rZW4pO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgJ0ltYWdlUmVjaXBlJzoge1xuICAgICAgICAgICAgICBsZXQgcmVzdWx0OiBBV1MuSW1hZ2VidWlsZGVyLkxpc3RJbWFnZVJlY2lwZXNSZXNwb25zZSA9IHt9O1xuICAgICAgICAgICAgICBkbyB7XG4gICAgICAgICAgICAgICAgcmVzdWx0ID0gYXdhaXQgaWIubGlzdEltYWdlUmVjaXBlcyh7XG4gICAgICAgICAgICAgICAgICBmaWx0ZXJzOiBbe1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlczogW29iamVjdE5hbWVdLFxuICAgICAgICAgICAgICAgICAgfV0sXG4gICAgICAgICAgICAgICAgICBuZXh0VG9rZW46IHJlc3VsdC5uZXh0VG9rZW4sXG4gICAgICAgICAgICAgICAgfSkucHJvbWlzZSgpO1xuICAgICAgICAgICAgICAgIGFsbFZlcnNpb25zID0gYWxsVmVyc2lvbnMuY29uY2F0KHJlc3VsdC5pbWFnZVJlY2lwZVN1bW1hcnlMaXN0IS5tYXAoaSA9PiBpLmFybj8uc3BsaXQoJy8nKS5wb3AoKSB8fCAnMS4wLjAnKSk7XG4gICAgICAgICAgICAgIH0gd2hpbGUgKHJlc3VsdC5uZXh0VG9rZW4pO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgJ0NvbnRhaW5lclJlY2lwZSc6IHtcbiAgICAgICAgICAgICAgbGV0IHJlc3VsdDogQVdTLkltYWdlYnVpbGRlci5MaXN0Q29udGFpbmVyUmVjaXBlc1Jlc3BvbnNlID0ge307XG4gICAgICAgICAgICAgIGRvIHtcbiAgICAgICAgICAgICAgICByZXN1bHQgPSBhd2FpdCBpYi5saXN0Q29udGFpbmVyUmVjaXBlcyh7XG4gICAgICAgICAgICAgICAgICBmaWx0ZXJzOiBbe1xuICAgICAgICAgICAgICAgICAgICBuYW1lOiAnbmFtZScsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlczogW29iamVjdE5hbWVdLFxuICAgICAgICAgICAgICAgICAgfV0sXG4gICAgICAgICAgICAgICAgICBuZXh0VG9rZW46IHJlc3VsdC5uZXh0VG9rZW4sXG4gICAgICAgICAgICAgICAgfSkucHJvbWlzZSgpO1xuICAgICAgICAgICAgICAgIGFsbFZlcnNpb25zID0gYWxsVmVyc2lvbnMuY29uY2F0KHJlc3VsdC5jb250YWluZXJSZWNpcGVTdW1tYXJ5TGlzdCEubWFwKGkgPT4gaS5hcm4/LnNwbGl0KCcvJykucG9wKCkgfHwgJzEuMC4wJykpO1xuICAgICAgICAgICAgICB9IHdoaWxlIChyZXN1bHQubmV4dFRva2VuKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgaWYgKChlIGFzIGFueSkuY29kZSAhPT0gJ1Jlc291cmNlTm90Rm91bmRFeGNlcHRpb24nKSB7XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25zb2xlLmxvZygnUmVzb3VyY2Ugbm90IGZvdW5kLCBhc3N1bWluZyBmaXJzdCB2ZXJzaW9uJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdmVyc2lvbiA9IGluY3JlYXNlVmVyc2lvbihhbGxWZXJzaW9ucyk7XG4gICAgICAgIGF3YWl0IGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudCwgJ1NVQ0NFU1MnLCAnT0snLCB2ZXJzaW9uLCB7fSk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdEZWxldGUnOlxuICAgICAgICBhd2FpdCBjdXN0b21SZXNvdXJjZVJlc3BvbmQoZXZlbnQsICdTVUNDRVNTJywgJ09LJywgZXZlbnQuUGh5c2ljYWxSZXNvdXJjZUlkLCB7fSk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfSBjYXRjaCAoZSkge1xuICAgIGNvbnNvbGUubG9nKGUpO1xuICAgIGF3YWl0IGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudCwgJ0ZBSUxFRCcsIChlIGFzIEVycm9yKS5tZXNzYWdlIHx8ICdJbnRlcm5hbCBFcnJvcicsIGNvbnRleHQubG9nU3RyZWFtTmFtZSwge30pO1xuICB9XG59XG4iXX0=
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbmVyLmxhbWJkYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbWFnZS1idWlsZGVycy9hd3MtaW1hZ2UtYnVpbGRlci92ZXJzaW9uZXIubGFtYmRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHNFQU1zQztBQUV0QyxtQ0FBNEM7QUFDNUMseURBQTZEO0FBRTdELE1BQU0sRUFBRSxHQUFHLElBQUksd0NBQWtCLEVBQUUsQ0FBQztBQUVwQzs7O0dBR0c7QUFDSCxTQUFnQixlQUFlLENBQUMsV0FBcUI7SUFDbkQsSUFBSSxPQUFPLEdBQUcsSUFBQSxzQkFBYSxFQUFDLFdBQVcsRUFBRSxTQUFTLENBQUMsQ0FBQztJQUNwRCxJQUFJLE9BQU8sS0FBSyxJQUFJLEVBQUU7UUFDcEIsT0FBTyxHQUFHLE9BQU8sQ0FBQztLQUNuQjtJQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCLFdBQVcsaUJBQWlCLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFFckUsT0FBTyxHQUFHLElBQUEsWUFBRyxFQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoQyxJQUFJLE9BQU8sS0FBSyxJQUFJLEVBQUU7UUFDcEIsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0tBQzNDO0lBRUQsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQWJELDBDQWFDO0FBRU0sS0FBSyxVQUFVLE9BQU8sQ0FBQyxLQUFrRCxFQUFFLE9BQTBCO0lBQzFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEdBQUcsS0FBSyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFOUQsSUFBSTtRQUNGLE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUM7UUFDdkQsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLGtCQUFrQixDQUFD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QUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFFakUsTUFBTTtZQUNSLEtBQUssUUFBUTtnQkFDWCxNQUFNLElBQUEsc0NBQXFCLEVBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNsRixNQUFNO1NBQ1Q7S0FDRjtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNmLE1BQU0sSUFBQSxzQ0FBcUIsRUFBQyxLQUFLLEVBQUUsUUFBUSxFQUFHLENBQVcsQ0FBQyxPQUFPLElBQUksZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztLQUNuSDtBQUNILENBQUM7QUE1RUQsMEJBNEVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW1hZ2VidWlsZGVyQ2xpZW50LFxuICBMaXN0Q29tcG9uZW50c0NvbW1hbmQsIExpc3RDb21wb25lbnRzUmVzcG9uc2UsXG4gIExpc3RDb250YWluZXJSZWNpcGVzQ29tbWFuZCwgTGlzdENvbnRhaW5lclJlY2lwZXNSZXNwb25zZSxcbiAgTGlzdEltYWdlUmVjaXBlc0NvbW1hbmQsXG4gIExpc3RJbWFnZVJlY2lwZXNSZXNwb25zZSxcbn0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LWltYWdlYnVpbGRlcic7XG5pbXBvcnQgKiBhcyBBV1NMYW1iZGEgZnJvbSAnYXdzLWxhbWJkYSc7XG5pbXBvcnQgeyBpbmMsIG1heFNhdGlzZnlpbmcgfSBmcm9tICdzZW12ZXInO1xuaW1wb3J0IHsgY3VzdG9tUmVzb3VyY2VSZXNwb25kIH0gZnJvbSAnLi4vLi4vbGFtYmRhLWhlbHBlcnMnO1xuXG5jb25zdCBpYiA9IG5ldyBJbWFnZWJ1aWxkZXJDbGllbnQoKTtcblxuLyoqXG4gKiBFeHBvcnRlZCBmb3IgdW5pdCB0ZXN0cy5cbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgZnVuY3Rpb24gaW5jcmVhc2VWZXJzaW9uKGFsbFZlcnNpb25zOiBzdHJpbmdbXSkge1xuICBsZXQgdmVyc2lvbiA9IG1heFNhdGlzZnlpbmcoYWxsVmVyc2lvbnMsICc+PTAuMC4wJyk7XG4gIGlmICh2ZXJzaW9uID09PSBudWxsKSB7XG4gICAgdmVyc2lvbiA9ICcxLjAuMCc7XG4gIH1cbiAgY29uc29sZS5sb2coYEZvdW5kIHZlcnNpb25zICR7YWxsVmVyc2lvbnN9IC0tIGxhdGVzdCBpcyAke3ZlcnNpb259YCk7XG5cbiAgdmVyc2lvbiA9IGluYyh2ZXJzaW9uLCAncGF0Y2gnKTtcbiAgaWYgKHZlcnNpb24gPT09IG51bGwpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBidW1wIHZlcnNpb24nKTtcbiAgfVxuXG4gIHJldHVybiB2ZXJzaW9uO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gaGFuZGxlcihldmVudDogQVdTTGFtYmRhLkNsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VFdmVudCwgY29udGV4dDogQVdTTGFtYmRhLkNvbnRleHQpIHtcbiAgY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkoeyAuLi5ldmVudCwgUmVzcG9uc2VVUkw6ICcuLi4nIH0pKTtcblxuICB0cnkge1xuICAgIGNvbnN0IG9iamVjdFR5cGUgPSBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuT2JqZWN0VHlwZTtcbiAgICBjb25zdCBvYmplY3ROYW1lID0gZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLk9iamVjdE5hbWU7XG5cbiAgICBzd2l0Y2ggKGV2ZW50LlJlcXVlc3RUeXBlKSB7XG4gICAgICBjYXNlICdDcmVhdGUnOlxuICAgICAgY2FzZSAnVXBkYXRlJzpcbiAgICAgICAgbGV0IGFsbFZlcnNpb25zOiBzdHJpbmdbXSA9IFtdO1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHN3aXRjaCAob2JqZWN0VHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnQ29tcG9uZW50Jzoge1xuICAgICAgICAgICAgICBsZXQgcmVzdWx0OiBMaXN0Q29tcG9uZW50c1Jlc3BvbnNlID0ge307XG4gICAgICAgICAgICAgIGRvIHtcbiAgICAgICAgICAgICAgICByZXN1bHQgPSBhd2FpdCBpYi5zZW5kKG5ldyBMaXN0Q29tcG9uZW50c0NvbW1hbmQoe1xuICAgICAgICAgICAgICAgICAgZmlsdGVyczogW3tcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZXM6IFtvYmplY3ROYW1lXSxcbiAgICAgICAgICAgICAgICAgIH1dLFxuICAgICAgICAgICAgICAgICAgbmV4dFRva2VuOiByZXN1bHQubmV4dFRva2VuLFxuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICBhbGxWZXJzaW9ucyA9IGFsbFZlcnNpb25zLmNvbmNhdChyZXN1bHQuY29tcG9uZW50VmVyc2lvbkxpc3QhLm1hcChpID0+IGkudmVyc2lvbiB8fCAnMS4wLjAnKSk7XG4gICAgICAgICAgICAgIH0gd2hpbGUgKHJlc3VsdC5uZXh0VG9rZW4pO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNhc2UgJ0ltYWdlUmVjaXBlJzoge1xuICAgICAgICAgICAgICBsZXQgcmVzdWx0OiBMaXN0SW1hZ2VSZWNpcGVzUmVzcG9uc2UgPSB7fTtcbiAgICAgICAgICAgICAgZG8ge1xuICAgICAgICAgICAgICAgIHJlc3VsdCA9IGF3YWl0IGliLnNlbmQobmV3IExpc3RJbWFnZVJlY2lwZXNDb21tYW5kKHtcbiAgICAgICAgICAgICAgICAgIGZpbHRlcnM6IFt7XG4gICAgICAgICAgICAgICAgICAgIG5hbWU6ICduYW1lJyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWVzOiBbb2JqZWN0TmFtZV0sXG4gICAgICAgICAgICAgICAgICB9XSxcbiAgICAgICAgICAgICAgICAgIG5leHRUb2tlbjogcmVzdWx0Lm5leHRUb2tlbixcbiAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgYWxsVmVyc2lvbnMgPSBhbGxWZXJzaW9ucy5jb25jYXQocmVzdWx0LmltYWdlUmVjaXBlU3VtbWFyeUxpc3QhLm1hcChpID0+IGkuYXJuPy5zcGxpdCgnLycpLnBvcCgpIHx8ICcxLjAuMCcpKTtcbiAgICAgICAgICAgICAgfSB3aGlsZSAocmVzdWx0Lm5leHRUb2tlbik7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY2FzZSAnQ29udGFpbmVyUmVjaXBlJzoge1xuICAgICAgICAgICAgICBsZXQgcmVzdWx0OiBMaXN0Q29udGFpbmVyUmVjaXBlc1Jlc3BvbnNlID0ge307XG4gICAgICAgICAgICAgIGRvIHtcbiAgICAgICAgICAgICAgICByZXN1bHQgPSBhd2FpdCBpYi5zZW5kKG5ldyBMaXN0Q29udGFpbmVyUmVjaXBlc0NvbW1hbmQoe1xuICAgICAgICAgICAgICAgICAgZmlsdGVyczogW3tcbiAgICAgICAgICAgICAgICAgICAgbmFtZTogJ25hbWUnLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZXM6IFtvYmplY3ROYW1lXSxcbiAgICAgICAgICAgICAgICAgIH1dLFxuICAgICAgICAgICAgICAgICAgbmV4dFRva2VuOiByZXN1bHQubmV4dFRva2VuLFxuICAgICAgICAgICAgICAgIH0pKTtcbiAgICAgICAgICAgICAgICBhbGxWZXJzaW9ucyA9IGFsbFZlcnNpb25zLmNvbmNhdChyZXN1bHQuY29udGFpbmVyUmVjaXBlU3VtbWFyeUxpc3QhLm1hcChpID0+IGkuYXJuPy5zcGxpdCgnLycpLnBvcCgpIHx8ICcxLjAuMCcpKTtcbiAgICAgICAgICAgICAgfSB3aGlsZSAocmVzdWx0Lm5leHRUb2tlbik7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgIGlmICgoZSBhcyBhbnkpLmNvZGUgIT09ICdSZXNvdXJjZU5vdEZvdW5kRXhjZXB0aW9uJykge1xuICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc29sZS5sb2coJ1Jlc291cmNlIG5vdCBmb3VuZCwgYXNzdW1pbmcgZmlyc3QgdmVyc2lvbicpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHZlcnNpb24gPSBpbmNyZWFzZVZlcnNpb24oYWxsVmVyc2lvbnMpO1xuICAgICAgICBhd2FpdCBjdXN0b21SZXNvdXJjZVJlc3BvbmQoZXZlbnQsICdTVUNDRVNTJywgJ09LJywgdmVyc2lvbiwge30pO1xuXG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnRGVsZXRlJzpcbiAgICAgICAgYXdhaXQgY3VzdG9tUmVzb3VyY2VSZXNwb25kKGV2ZW50LCAnU1VDQ0VTUycsICdPSycsIGV2ZW50LlBoeXNpY2FsUmVzb3VyY2VJZCwge30pO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmxvZyhlKTtcbiAgICBhd2FpdCBjdXN0b21SZXNvdXJjZVJlc3BvbmQoZXZlbnQsICdGQUlMRUQnLCAoZSBhcyBFcnJvcikubWVzc2FnZSB8fCAnSW50ZXJuYWwgRXJyb3InLCBjb250ZXh0LmxvZ1N0cmVhbU5hbWUsIHt9KTtcbiAgfVxufVxuIl19
@@ -359,7 +359,7 @@ class CodeBuildImageBuilder extends constructs_1.Construct {
359
359
  }
360
360
  }
361
361
  _a = JSII_RTTI_SYMBOL_1;
362
- CodeBuildImageBuilder[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.CodeBuildImageBuilder", version: "0.11.3" };
362
+ CodeBuildImageBuilder[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.CodeBuildImageBuilder", version: "0.11.5" };
363
363
  /**
364
364
  * Bump this number every time the buildspec or any important setting of the project changes. It will force a rebuild of the image.
365
365
  * @private
@@ -523,6 +523,6 @@ class RunnerImageComponent {
523
523
  }
524
524
  }
525
525
  _a = JSII_RTTI_SYMBOL_1;
526
- RunnerImageComponent[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.RunnerImageComponent", version: "0.11.3" };
526
+ RunnerImageComponent[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.RunnerImageComponent", version: "0.11.5" };
527
527
  exports.RunnerImageComponent = RunnerImageComponent;
528
528
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pbWFnZS1idWlsZGVycy9jb21wb25lbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkJBQTZCO0FBQzdCLDZDQUF5RDtBQUV6RCwyREFBNEQ7QUFFNUQsNENBQStEO0FBOEIvRDs7R0FFRztBQUNILE1BQXNCLG9CQUFvQjtJQUN4Qzs7Ozs7Ozs7T0FRRztJQUNILE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBc0M7UUFDbEQsT0FBTyxJQUFJLEtBQU0sU0FBUSxvQkFBb0I7WUFDM0MsSUFBSSxJQUFJO2dCQUNOLElBQUksS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxFQUFFO29CQUNwRCxNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixLQUFLLENBQUMsSUFBSSw4REFBOEQsQ0FBQyxDQUFDO2lCQUN0SDtnQkFDRCxPQUFPLFVBQVUsS0FBSyxDQUFDLElBQUksSUFBSSxXQUFXLEVBQUUsQ0FBQztZQUMvQyxDQUFDO1lBRUQsV0FBVyxDQUFDLEdBQU8sRUFBRSxhQUEyQjtnQkFDOUMsT0FBTyxLQUFLLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQztZQUM5QixDQUFDO1lBQ0QsU0FBUyxDQUFDLEdBQU8sRUFBRSxhQUEyQjtnQkFDNUMsT0FBTyxLQUFLLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQztZQUM1QixDQUFDO1lBRUQsaUJBQWlCLENBQUMsR0FBTyxFQUFFLGFBQTJCO2dCQUNwRCxPQUFPLEtBQUssQ0FBQyxjQUFjLElBQUksRUFBRSxDQUFDO1lBQ3BDLENBQUM7U0FDRixFQUFFLENBQUM7SUFDTixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsZ0JBQWdCO1FBQ3JCLE9BQU8sSUFBSSxLQUFNLFNBQVEsb0JBQW9CO1lBQWxDOztnQkFDVCxTQUFJLEdBQUcsa0JBQWtCLENBQUM7WUFtQzVCLENBQUM7WUFqQ0MsV0FBVyxDQUFDLEVBQU0sRUFBRSxZQUEwQjtnQkFDNUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRTtvQkFDMUIsSUFBSSxPQUFPLENBQUM7b0JBQ1osSUFBSSxZQUFZLENBQUMsRUFBRSxDQUFDLHdCQUFZLENBQUMsTUFBTSxDQUFDLEVBQUU7d0JBQ3hDLE9BQU8sR0FBRyxPQUFPLENBQUM7cUJBQ25CO3lCQUFNLElBQUksWUFBWSxDQUFDLEVBQUUsQ0FBQyx3QkFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFO3dCQUM5QyxPQUFPLEdBQUcsT0FBTyxDQUFDO3FCQUNuQjt5QkFBTTt3QkFDTCxNQUFNLElBQUksS0FBSyxDQUFDLG1EQUFtRCxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztxQkFDekY7b0JBRUQsT0FBTzt3QkFDTCxnQkFBZ0I7d0JBQ2hCLG1EQUFtRDt3QkFDbkQsbUlBQW1JO3dCQUNuSSxzR0FBc0csT0FBTyxxQ0FBcUM7d0JBQ2xKLDZDQUE2Qzt3QkFDN0MscUNBQXFDO3FCQUN0QyxDQUFDO2lCQUNIO3FCQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsY0FBYyxDQUFDLEVBQUU7b0JBQ25DLE9BQU87d0JBQ0wsZUFBZTt3QkFDZiw2RUFBNkU7cUJBQzlFLENBQUM7aUJBQ0g7cUJBQU0sSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRTtvQkFDNUIsT0FBTzt3QkFDTCwwS0FBMEs7d0JBQzFLLDZEQUE2RDtxQkFDOUQsQ0FBQztpQkFDSDtnQkFFRCxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxFQUFFLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUN0RSxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxVQUFVO1FBQ2YsT0FBTyxJQUFJLEtBQU0sU0FBUSxvQkFBb0I7WUFBbEM7O2dCQUNULFNBQUksR0FBRyxZQUFZLENBQUM7WUF1QnRCLENBQUM7WUFyQkMsV0FBVyxDQUFDLEVBQU0sRUFBRSxhQUEyQjtnQkFDN0MsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRTtvQkFDMUIsT0FBTzt3QkFDTCxpQkFBaUI7d0JBQ2pCLGtGQUFrRjt3QkFDbEYsc0VBQXNFO3FCQUN2RSxDQUFDO2lCQUNIO3FCQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsY0FBYyxDQUFDLEVBQUU7b0JBQ25DLE9BQU87d0JBQ0wsMkJBQTJCO3dCQUMzQixrR0FBa0c7d0JBQ2xHLHVCQUF1Qjt3QkFDdkIsMkJBQTJCO3dCQUMzQixzRUFBc0U7cUJBQ3ZFLENBQUM7aUJBQ0g7cUJBQU0sSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRTtvQkFDNUIsT0FBTyxFQUFFLENBQUM7aUJBQ1g7Z0JBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxtQ0FBbUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7WUFDaEUsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsTUFBTTtRQUNYLE9BQU8sSUFBSSxLQUFNLFNBQVEsb0JBQW9CO1lBQWxDOztnQkFDVCxTQUFJLEdBQUcsUUFBUSxDQUFDO1lBNEJsQixDQUFDO1lBMUJDLFdBQVcsQ0FBQyxFQUFNLEVBQUUsWUFBMEI7Z0JBQzVDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsY0FBYyxDQUFDLEVBQUU7b0JBQ3RELElBQUksT0FBZSxDQUFDO29CQUNwQixJQUFJLFlBQVksQ0FBQyxFQUFFLENBQUMsd0JBQVksQ0FBQyxNQUFNLENBQUMsRUFBRTt3QkFDeEMsT0FBTyxHQUFHLFFBQVEsQ0FBQztxQkFDcEI7eUJBQU0sSUFBSSxZQUFZLENBQUMsRUFBRSxDQUFDLHdCQUFZLENBQUMsS0FBSyxDQUFDLEVBQUU7d0JBQzlDLE9BQU8sR0FBRyxTQUFTLENBQUM7cUJBQ3JCO3lCQUFNO3dCQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsd0NBQXdDLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO3FCQUM5RTtvQkFFRCxPQUFPO3dCQUNMLDZEQUE2RCxPQUFPLHVCQUF1Qjt3QkFDM0YsdUJBQXVCO3dCQUN2QixlQUFlO3dCQUNmLHlCQUF5QjtxQkFDMUIsQ0FBQztpQkFDSDtxQkFBTSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsY0FBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUM1QixPQUFPO3dCQUNMLG1IQUFtSDt3QkFDbkgsNkRBQTZEO3FCQUM5RCxDQUFDO2lCQUNIO2dCQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLEVBQUUsQ0FBQyxJQUFJLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7WUFDL0YsQ0FBQztTQUNGLEVBQUUsQ0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxTQUFTO1FBQ2QsT0FBTyxJQUFJLEtBQU0sU0FBUSxvQkFBb0I7WUFBbEM7O2dCQUNULFNBQUksR0FBRyxXQUFXLENBQUM7WUE4QnJCLENBQUM7WUE1QkMsV0FBVyxDQUFDLEVBQU0sRUFBRSxZQUEwQjtnQkFDNUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRTtvQkFDMUIsT0FBTzt3QkFDTCx5SUFBeUk7d0JBQ3pJLDRHQUE0Rzs0QkFDNUcsK0dBQStHO3dCQUMvRyxnQkFBZ0I7d0JBQ2hCLHNEQUFzRDtxQkFDdkQsQ0FBQztpQkFDSDtxQkFBTSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsY0FBRSxDQUFDLGNBQWMsQ0FBQyxFQUFFO29CQUNuQyxPQUFPO3dCQUNMLDZGQUE2Rjt3QkFDN0YsbUJBQW1CO3FCQUNwQixDQUFDO2lCQUNIO3FCQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQzVCLE9BQU87d0JBQ0wseUdBQXlHO3dCQUN6RywrQ0FBK0M7d0JBQy9DLDBEQUEwRDt3QkFDMUQsMEpBQTBKO3dCQUMxSixnRkFBZ0Y7d0JBQ2hGLDZEQUE2RDt3QkFDN0QsWUFBWTtxQkFDYixDQUFDO2lCQUNIO2dCQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsaURBQWlELEVBQUUsQ0FBQyxJQUFJLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7WUFDbkcsQ0FBQztTQUNGLEVBQUUsQ0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxHQUFHO1FBQ1IsT0FBTyxJQUFJLEtBQU0sU0FBUSxvQkFBb0I7WUFBbEM7O2dCQUNULFNBQUksR0FBRyxLQUFLLENBQUM7WUE4QmYsQ0FBQztZQTVCQyxXQUFXLENBQUMsRUFBTSxFQUFFLFlBQTBCO2dCQUM1QyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsY0FBRSxDQUFDLFlBQVksQ0FBQyxFQUFFO29CQUMxQixPQUFPO3dCQUNMLHFDQUFxQzt3QkFDckMsZ0JBQWdCO3dCQUNoQix1REFBdUQ7cUJBQ3hELENBQUM7aUJBQ0g7cUJBQU0sSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxjQUFjLENBQUMsRUFBRTtvQkFDbkMsT0FBTzt3QkFDTCxvQkFBb0I7cUJBQ3JCLENBQUM7aUJBQ0g7cUJBQU0sSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRTtvQkFDNUIsT0FBTzt3QkFDTCxzSEFBc0g7d0JBQ3RILGdEQUFnRDt3QkFDaEQsMkRBQTJEO3dCQUMzRCw2REFBNkQ7d0JBQzdELHdEQUF3RDt3QkFDeEQsb0ZBQW9GO3dCQUNwRiw2S0FBNks7d0JBQzdLLGdGQUFnRjt3QkFDaEYsNkRBQTZEO3dCQUM3RCxtQkFBbUI7cUJBQ3BCLENBQUM7aUJBQ0g7Z0JBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsRUFBRSxDQUFDLElBQUksSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUM1RixDQUFDO1NBQ0YsRUFBRSxDQUFDO0lBQ04sQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsWUFBWSxDQUFDLGFBQTRCO1FBQzlDLE9BQU8sSUFBSSxLQUFNLFNBQVEsb0JBQW9CO1lBQWxDOztnQkFDVCxTQUFJLEdBQUcsY0FBYyxDQUFDO1lBK0R4QixDQUFDO1lBN0RDLFdBQVcsQ0FBQyxFQUFNLEVBQUUsWUFBMEI7Z0JBQzVDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsY0FBYyxDQUFDLEVBQUU7b0JBQ3RELElBQUksY0FBc0IsQ0FBQztvQkFDM0IsSUFBSSxhQUFhLENBQUMsRUFBRSxDQUFDLHlCQUFhLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRTt3QkFDNUMsY0FBYyxHQUFHLHdIQUF3SCxDQUFDO3FCQUMzSTt5QkFBTTt3QkFDTCxjQUFjLEdBQUcsbUJBQW1CLGFBQWEsQ0FBQyxPQUFPLEdBQUcsQ0FBQztxQkFDOUQ7b0JBRUQsSUFBSSxPQUFPLENBQUM7b0JBQ1osSUFBSSxZQUFZLENBQUMsRUFBRSxDQUFDLHdCQUFZLENBQUMsTUFBTSxDQUFDLEVBQUU7d0JBQ3hDLE9BQU8sR0FBRyxLQUFLLENBQUM7cUJBQ2pCO3lCQUFNLElBQUksWUFBWSxDQUFDLEVBQUUsQ0FBQyx3QkFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFO3dCQUM5QyxPQUFPLEdBQUcsT0FBTyxDQUFDO3FCQUNuQjt5QkFBTTt3QkFDTCxNQUFNLElBQUksS0FBSyxDQUFDLCtDQUErQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztxQkFDckY7b0JBRUQsSUFBSSxRQUFRLEdBQUc7d0JBQ2IsY0FBYzt3QkFDZCw2R0FBNkcsT0FBTyw2QkFBNkI7d0JBQ2pKLGtEQUFrRCxPQUFPLDZCQUE2Qjt3QkFDdEYsMkJBQTJCLE9BQU8sNEJBQTRCO3dCQUM5RCxXQUFXLGFBQWEsQ0FBQyxPQUFPLGdDQUFnQztxQkFDakUsQ0FBQztvQkFFRixJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsY0FBRSxDQUFDLFlBQVksQ0FBQyxFQUFFO3dCQUMxQixRQUFRLENBQUMsSUFBSSxDQUFDLHlDQUF5QyxDQUFDLENBQUM7cUJBQzFEO3lCQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsY0FBYyxDQUFDLEVBQUU7d0JBQ25DLFFBQVEsQ0FBQyxJQUFJLENBQUMscURBQXFELENBQUMsQ0FBQztxQkFDdEU7b0JBRUQsT0FBTyxRQUFRLENBQUM7aUJBQ2pCO3FCQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQzVCLElBQUksY0FBd0IsQ0FBQztvQkFDN0IsSUFBSSxhQUFhLENBQUMsRUFBRSxDQUFDLHlCQUFhLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRTt3QkFDNUMsY0FBYyxHQUFHOzRCQUNmLGlIQUFpSDs0QkFDakgsZ0RBQWdEOzRCQUNoRCw4REFBOEQ7eUJBQy9ELENBQUM7cUJBQ0g7eUJBQU07d0JBQ0wsY0FBYyxHQUFHLENBQUMsc0JBQXNCLGFBQWEsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDO3FCQUNuRTtvQkFFRCxPQUFPLGNBQWMsQ0FBQyxNQUFNLENBQUM7d0JBQzNCLG9MQUFvTDt3QkFDcEwseURBQXlEO3dCQUN6RCxpQkFBaUI7d0JBQ2pCLFFBQVEsYUFBYSxDQUFDLE9BQU8sb0VBQW9FO3FCQUNsRyxDQUFDLENBQUM7aUJBQ0o7Z0JBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQyxvREFBb0QsRUFBRSxDQUFDLElBQUksSUFBSSxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztZQUN0RyxDQUFDO1lBRUQsaUJBQWlCLENBQUMsR0FBTyxFQUFFLGFBQTJCO2dCQUNwRCxPQUFPO29CQUNMLHNCQUFzQixhQUFhLENBQUMsT0FBTyxFQUFFO2lCQUM5QyxDQUFDO1lBQ0osQ0FBQztTQUNGLEVBQUUsQ0FBQztJQUNOLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLE1BQU07UUFDWCxPQUFPLElBQUksS0FBTSxTQUFRLG9CQUFvQjtZQUFsQzs7Z0JBQ1QsU0FBSSxHQUFHLFFBQVEsQ0FBQztZQXNEbEIsQ0FBQztZQXBEQyxXQUFXLENBQUMsRUFBTSxFQUFFLFlBQTBCO2dCQUM1QyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsY0FBRSxDQUFDLFlBQVksQ0FBQyxFQUFFO29CQUMxQixPQUFPO3dCQUNMLGdIQUFnSDt3QkFDaEgsT0FBTzs0QkFDSCwrSEFBK0g7NEJBQy9ILHlGQUF5Rjt3QkFDN0YsZ0JBQWdCO3dCQUNoQiwrR0FBK0c7d0JBQy9HLDJCQUEyQjt3QkFDM0IsOEVBQThFO3FCQUMvRSxDQUFDO2lCQUNIO3FCQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsY0FBYyxDQUFDLEVBQUU7b0JBQ25DLE9BQU87d0JBQ0wsdUJBQXVCO3FCQUN4QixDQUFDO2lCQUNIO3FCQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQzVCLE9BQU87d0JBQ0wsbUNBQW1DO3dCQUNuQywrR0FBK0c7d0JBQy9HLG1EQUFtRDt3QkFDbkQsOERBQThEO3dCQUM5RCwyQkFBMkI7d0JBQzNCLGlKQUFpSjt3QkFDakoscUNBQXFDO3dCQUNyQyxnRUFBZ0U7d0JBQ2hFLGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCx5R0FBeUc7d0JBQ3pHLHFJQUFxSTt3QkFDckksc0RBQXNEO3dCQUN0RCwwQkFBMEI7d0JBQzFCLDRCQUE0Qjt3QkFDNUIsaUVBQWlFO3dCQUNqRSw0QkFBNEI7d0JBQzVCLCtFQUErRTt3QkFDL0UseUJBQXlCO3dCQUN6Qiw0SEFBNEg7d0JBQzVILDJEQUEyRDt3QkFDM0Qsc0RBQXNEO3dCQUN0RCxnTkFBZ047d0JBQ2hOLDZFQUE2RTt3QkFDN0UsMklBQTJJO3FCQUM1SSxDQUFDO2lCQUNIO2dCQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsNkNBQTZDLEVBQUUsQ0FBQyxJQUFJLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7WUFDL0YsQ0FBQztZQUVELFlBQVksQ0FBQyxFQUFNLEVBQUUsYUFBMkI7Z0JBQzlDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDM0IsQ0FBQztTQUNGLEVBQUUsQ0FBQztJQUNOLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLGNBQWM7UUFDbkIsT0FBTyxvQkFBb0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxNQUFNLENBQUMsaUJBQWlCLENBQUMsTUFBYyxFQUFFLElBQVk7UUFDbkQsT0FBTyxJQUFJLEtBQU0sU0FBUSxvQkFBb0I7WUFBbEM7O2dCQUNULFNBQUksR0FBRyxzQkFBc0IsSUFBSSxFQUFFLENBQUM7WUEwQ3RDLENBQUM7WUF4Q0MsV0FBVyxDQUFDLEVBQU0sRUFBRSxZQUEwQjtnQkFDNUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsRUFBRTtvQkFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyw2QkFBNkIsSUFBSSwyRUFBMkUsQ0FBQyxDQUFDO2lCQUMvSDtnQkFFRCxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsY0FBRSxDQUFDLFlBQVksQ0FBQyxFQUFFO29CQUMxQixPQUFPO3dCQUNMLHdCQUF3QjtxQkFDekIsQ0FBQztpQkFDSDtxQkFBTSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsY0FBRSxDQUFDLGNBQWMsQ0FBQyxFQUFFO29CQUNuQyxPQUFPO3dCQUNMLGlCQUFpQjtxQkFDbEIsQ0FBQztpQkFDSDtxQkFBTSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsY0FBRSxDQUFDLE9BQU8sQ0FBQyxFQUFFO29CQUM1QixPQUFPO3dCQUNMLG9DQUFvQyxJQUFJLG1EQUFtRDt3QkFDM0YsbUJBQW1CLElBQUksTUFBTTtxQkFDOUIsQ0FBQztpQkFDSDtnQkFFRCxNQUFNLElBQUksS0FBSyxDQUFDLHlEQUF5RCxFQUFFLENBQUMsSUFBSSxJQUFJLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQzNHLENBQUM7WUFFRCxTQUFTLENBQUMsRUFBTSxFQUFFLGFBQTJCO2dCQUMzQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsY0FBRSxDQUFDLFlBQVksQ0FBQyxFQUFFO29CQUMxQixPQUFPO3dCQUNMLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxvQ0FBb0MsSUFBSSxNQUFNLEVBQUU7cUJBQ25FLENBQUM7aUJBQ0g7cUJBQU0sSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxjQUFjLENBQUMsRUFBRTtvQkFDbkMsT0FBTzt3QkFDTCxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsb0NBQW9DLElBQUksTUFBTSxFQUFFO3FCQUNuRSxDQUFDO2lCQUNIO3FCQUFNLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQzVCLE9BQU87d0JBQ0wsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sSUFBSSxNQUFNLEVBQUU7cUJBQ3RDLENBQUM7aUJBQ0g7Z0JBRUQsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7WUFDdkUsQ0FBQztTQUNGLEVBQUUsQ0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxnQkFBZ0I7UUFDckIsT0FBTyxJQUFJLEtBQU0sU0FBUSxvQkFBb0I7WUFBbEM7O2dCQUNULFNBQUksR0FBRyxtQkFBbUIsQ0FBQztZQTZCN0IsQ0FBQztZQTNCQyxXQUFXLENBQUMsRUFBTSxFQUFFLGFBQTJCO2dCQUM3QyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxjQUFFLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxZQUFZLENBQUMsRUFBRTtvQkFDeEQsTUFBTSxJQUFJLEtBQUssQ0FBQyx5Q0FBeUMsRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7aUJBQ3JFO2dCQUVELE9BQU8sRUFBRSxDQUFDO1lBQ1osQ0FBQztZQUVELFNBQVMsQ0FBQyxHQUFPLEVBQUUsYUFBMkI7Z0JBQzVDLE9BQU87b0JBQ0w7d0JBQ0UsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQzt3QkFDdkcsTUFBTSxFQUFFLCtCQUErQjtxQkFDeEM7b0JBQ0Q7d0JBQ0UsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLFdBQVcsQ0FBQzt3QkFDdkcsTUFBTSxFQUFFLCtCQUErQjtxQkFDeEM7aUJBQ0YsQ0FBQztZQUNKLENBQUM7WUFFRCxpQkFBaUIsQ0FBQyxHQUFPLEVBQUUsYUFBMkI7Z0JBQ3BELE9BQU87b0JBQ0wsNkJBQTZCO29CQUM3Qix3QkFBd0I7aUJBQ3pCLENBQUM7WUFDSixDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFjRDs7T0FFRztJQUNILFNBQVMsQ0FBQyxHQUFPLEVBQUUsYUFBMkI7UUFDNUMsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGlCQUFpQixDQUFDLEdBQU8sRUFBRSxhQUEyQjtRQUNwRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVksQ0FBQyxHQUFPLEVBQUUsYUFBMkI7UUFDL0MsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILDJCQUEyQixDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEVBQU0sRUFBRSxZQUEwQjtRQUMxRixJQUFJLFFBQTZCLENBQUM7UUFDbEMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUN0RCxRQUFRLEdBQUcsT0FBTyxDQUFDO1NBQ3BCO2FBQU0sSUFBSSxFQUFFLENBQUMsRUFBRSxDQUFDLGNBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRTtZQUM1QixRQUFRLEdBQUcsU0FBUyxDQUFDO1NBQ3RCO2FBQU07WUFDTCxNQUFNLElBQUksS0FBSyxDQUFDLDhEQUE4RCxFQUFFLENBQUMsSUFBSSxJQUFJLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQy9HO1FBRUQsT0FBTyxJQUFJLHlDQUFxQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDMUMsUUFBUSxFQUFFLFFBQVE7WUFDbEIsUUFBUSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxFQUFFLFlBQVksQ0FBQztZQUM1QyxNQUFNLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLEVBQUUsWUFBWSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUM1RCxPQUFPO29CQUNMLEtBQUssRUFBRSxJQUFJLDJCQUFTLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsVUFBVSxLQUFLLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ2pGLElBQUksRUFBRSxLQUFLLENBQUMsTUFBTTtpQkFDbkIsQ0FBQztZQUNKLENBQUMsQ0FBQztZQUNGLFdBQVcsRUFBRSxFQUFFO1lBQ2YsV0FBVyxFQUFFLEVBQUU7WUFDZixNQUFNLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUUsWUFBWSxDQUFDO1NBQzVDLENBQUMsQ0FBQztJQUNMLENBQUM7Ozs7QUFyZ0JtQixvREFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgYXdzX3MzX2Fzc2V0cyBhcyBzM19hc3NldHMgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IEltYWdlQnVpbGRlckNvbXBvbmVudCB9IGZyb20gJy4vYXdzLWltYWdlLWJ1aWxkZXInO1xuaW1wb3J0IHsgUnVubmVySW1hZ2VBc3NldCB9IGZyb20gJy4vY29tbW9uJztcbmltcG9ydCB7IEFyY2hpdGVjdHVyZSwgT3MsIFJ1bm5lclZlcnNpb24gfSBmcm9tICcuLi9wcm92aWRlcnMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFJ1bm5lckltYWdlQ29tcG9uZW50Q3VzdG9tUHJvcHMge1xuICAvKipcbiAgICogQ29tcG9uZW50IG5hbWUgdXNlZCBmb3IgKDEpIGltYWdlIGJ1aWxkIGxvZ2dpbmcgYW5kICgyKSBpZGVudGlmaWVyIGZvciB7QGxpbmsgSW1hZ2VSdW5uZXJCdWlsZGVyLnJlbW92ZUNvbXBvbmVudH0uXG4gICAqXG4gICAqIE5hbWUgbXVzdCBvbmx5IGNvbnRhaW4gYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIGRhc2hlcy5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENvbW1hbmRzIHRvIHJ1biBpbiB0aGUgYnVpbHQgaW1hZ2UuXG4gICAqL1xuICByZWFkb25seSBjb21tYW5kcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBBc3NldHMgdG8gY29weSBpbnRvIHRoZSBidWlsdCBpbWFnZS5cbiAgICovXG4gIHJlYWRvbmx5IGFzc2V0cz86IFJ1bm5lckltYWdlQXNzZXRbXTtcblxuICAvKipcbiAgICogRG9ja2VyIGNvbW1hbmRzIHRvIHJ1biBpbiB0aGUgYnVpbHQgaW1hZ2UuXG4gICAqXG4gICAqIEZvciBleGFtcGxlOiBgWydFTlYgZm9vPWJhcicsICdSVU4gZWNobyAkZm9vJ11gXG4gICAqXG4gICAqIFRoZXNlIGNvbW1hbmRzIGFyZSBpZ25vcmVkIHdoZW4gYnVpbGRpbmcgQU1Jcy5cbiAgICovXG4gIHJlYWRvbmx5IGRvY2tlckNvbW1hbmRzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogQ29tcG9uZW50cyBhcmUgdXNlZCB0byBidWlsZCBydW5uZXIgaW1hZ2VzLiBUaGV5IGNhbiBydW4gY29tbWFuZHMgaW4gdGhlIGltYWdlLCBjb3B5IGZpbGVzIGludG8gdGhlIGltYWdlLCBhbmQgcnVuIHNvbWUgRG9ja2VyIGNvbW1hbmRzLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgUnVubmVySW1hZ2VDb21wb25lbnQge1xuICAvKipcbiAgICogRGVmaW5lIGEgY3VzdG9tIGNvbXBvbmVudCB0aGF0IGNhbiBydW4gY29tbWFuZHMgaW4gdGhlIGltYWdlLCBjb3B5IGZpbGVzIGludG8gdGhlIGltYWdlLCBhbmQgcnVuIHNvbWUgRG9ja2VyIGNvbW1hbmRzLlxuICAgKlxuICAgKiBUaGUgb3JkZXIgb2Ygb3BlcmF0aW9ucyBpcyAoMSkgYXNzZXRzICgyKSBjb21tYW5kcyAoMykgZG9ja2VyIGNvbW1hbmRzLlxuICAgKlxuICAgKiBVc2UgdGhpcyB0byBjdXN0b21pemUgdGhlIGltYWdlIGZvciB0aGUgcnVubmVyLlxuICAgKlxuICAgKiAqKldBUk5JTkc6KiogRG9ja2VyIGNvbW1hbmRzIGFyZSBub3QgZ3VhcmFudGVlZCB0byBiZSBpbmNsdWRlZCBiZWZvcmUgdGhlIG5leHQgY29tcG9uZW50XG4gICAqL1xuICBzdGF0aWMgY3VzdG9tKHByb3BzOiBSdW5uZXJJbWFnZUNvbXBvbmVudEN1c3RvbVByb3BzKTogUnVubmVySW1hZ2VDb21wb25lbnQge1xuICAgIHJldHVybiBuZXcgY2xhc3MgZXh0ZW5kcyBSdW5uZXJJbWFnZUNvbXBvbmVudCB7XG4gICAgICBnZXQgbmFtZSgpIHtcbiAgICAgICAgaWYgKHByb3BzLm5hbWUgJiYgIXByb3BzLm5hbWUubWF0Y2goL1thLXpBLVowLTlcXC1dLykpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgY29tcG9uZW50IG5hbWU6ICR7cHJvcHMubmFtZX0uIE5hbWUgbXVzdCBvbmx5IGNvbnRhaW4gYWxwaGFudW1lcmljIGNoYXJhY3RlcnMgYW5kIGRhc2hlcy5gKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYEN1c3RvbS0ke3Byb3BzLm5hbWUgPz8gJ1VuZGVmaW5lZCd9YDtcbiAgICAgIH1cblxuICAgICAgZ2V0Q29tbWFuZHMoX29zOiBPcywgX2FyY2hpdGVjdHVyZTogQXJjaGl0ZWN0dXJlKSB7XG4gICAgICAgIHJldHVybiBwcm9wcy5jb21tYW5kcyA/PyBbXTtcbiAgICAgIH1cbiAgICAgIGdldEFzc2V0cyhfb3M6IE9zLCBfYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUpIHtcbiAgICAgICAgcmV0dXJuIHByb3BzLmFzc2V0cyA/PyBbXTtcbiAgICAgIH1cblxuICAgICAgZ2V0RG9ja2VyQ29tbWFuZHMoX29zOiBPcywgX2FyY2hpdGVjdHVyZTogQXJjaGl0ZWN0dXJlKSB7XG4gICAgICAgIHJldHVybiBwcm9wcy5kb2NrZXJDb21tYW5kcyA/PyBbXTtcbiAgICAgIH1cbiAgICB9KCk7XG4gIH1cblxuICAvKipcbiAgICogQSBjb21wb25lbnQgdG8gaW5zdGFsbCB0aGUgcmVxdWlyZWQgcGFja2FnZXMgZm9yIHRoZSBydW5uZXIuXG4gICAqL1xuICBzdGF0aWMgcmVxdWlyZWRQYWNrYWdlcygpOiBSdW5uZXJJbWFnZUNvbXBvbmVudCB7XG4gICAgcmV0dXJuIG5ldyBjbGFzcyBleHRlbmRzIFJ1bm5lckltYWdlQ29tcG9uZW50IHtcbiAgICAgIG5hbWUgPSAnUmVxdWlyZWRQYWNrYWdlcyc7XG5cbiAgICAgIGdldENvbW1hbmRzKG9zOiBPcywgYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUpOiBzdHJpbmdbXSB7XG4gICAgICAgIGlmIChvcy5pcyhPcy5MSU5VWF9VQlVOVFUpKSB7XG4gICAgICAgICAgbGV0IGFyY2hVcmw7XG4gICAgICAgICAgaWYgKGFyY2hpdGVjdHVyZS5pcyhBcmNoaXRlY3R1cmUuWDg2XzY0KSkge1xuICAgICAgICAgICAgYXJjaFVybCA9ICdhbWQ2NCc7XG4gICAgICAgICAgfSBlbHNlIGlmIChhcmNoaXRlY3R1cmUuaXMoQXJjaGl0ZWN0dXJlLkFSTTY0KSkge1xuICAgICAgICAgICAgYXJjaFVybCA9ICdhcm02NCc7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgYXJjaGl0ZWN0dXJlIGZvciByZXF1aXJlZCBwYWNrYWdlczogJHthcmNoaXRlY3R1cmUubmFtZX1gKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgJ2FwdC1nZXQgdXBkYXRlJyxcbiAgICAgICAgICAgICdERUJJQU5fRlJPTlRFTkQ9bm9uaW50ZXJhY3RpdmUgYXB0LWdldCB1cGdyYWRlIC15JyxcbiAgICAgICAgICAgICdERUJJQU5fRlJPTlRFTkQ9bm9uaW50ZXJhY3RpdmUgYXB0LWdldCBpbnN0YWxsIC15IGN1cmwgc3VkbyBqcSBiYXNoIHppcCB1bnppcCBpcHRhYmxlcyBzb2Z0d2FyZS1wcm9wZXJ0aWVzLWNvbW1vbiBjYS1jZXJ0aWZpY2F0ZXMnLFxuICAgICAgICAgICAgYGN1cmwgLXNmTG8gL3RtcC9hbWF6b24tY2xvdWR3YXRjaC1hZ2VudC5kZWIgaHR0cHM6Ly9zMy5hbWF6b25hd3MuY29tL2FtYXpvbmNsb3Vkd2F0Y2gtYWdlbnQvdWJ1bnR1LyR7YXJjaFVybH0vbGF0ZXN0L2FtYXpvbi1jbG91ZHdhdGNoLWFnZW50LmRlYmAsXG4gICAgICAgICAgICAnZHBrZyAtaSAtRSAvdG1wL2FtYXpvbi1jbG91ZHdhdGNoLWFnZW50LmRlYicsXG4gICAgICAgICAgICAncm0gL3RtcC9hbWF6b24tY2xvdWR3YXRjaC1hZ2VudC5kZWInLFxuICAgICAgICAgIF07XG4gICAgICAgIH0gZWxzZSBpZiAob3MuaXMoT3MuTElOVVhfQU1BWk9OXzIpKSB7XG4gICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICd5dW0gdXBkYXRlIC15JyxcbiAgICAgICAgICAgICd5dW0gaW5zdGFsbCAteSBqcSB0YXIgZ3ppcCBiemlwMiB3aGljaCBiaW51dGlscyB6aXAgdW56aXAgc3VkbyBzaGFkb3ctdXRpbHMnLFxuICAgICAgICAgIF07XG4gICAgICAgIH0gZWxzZSBpZiAob3MuaXMoT3MuV0lORE9XUykpIHtcbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgJyRwID0gU3RhcnQtUHJvY2VzcyBtc2lleGVjLmV4ZSAtUGFzc1RocnUgLVdhaXQgLUFyZ3VtZW50TGlzdCBcXCcvaSBodHRwczovL3MzLmFtYXpvbmF3cy5jb20vYW1hem9uY2xvdWR3YXRjaC1hZ2VudC93aW5kb3dzL2FtZDY0L2xhdGVzdC9hbWF6b24tY2xvdWR3YXRjaC1hZ2VudC5tc2kgL3FuXFwnJyxcbiAgICAgICAgICAgICdpZiAoJHAuRXhpdENvZGUgLW5lIDApIHsgdGhyb3cgXCJFeGl0IGNvZGUgaXMgJHAuRXhpdENvZGVcIiB9JyxcbiAgICAgICAgICBdO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBPUyBmb3IgcmVxdWlyZWQgcGFja2FnZXM6ICR7b3MubmFtZX1gKTtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEEgY29tcG9uZW50IHRvIHByZXBhcmUgdGhlIHJlcXVpcmVkIHJ1bm5lciB1c2VyLlxuICAgKi9cbiAgc3RhdGljIHJ1bm5lclVzZXIoKTogUnVubmVySW1hZ2VDb21wb25lbnQge1xuICAgIHJldHVybiBuZXcgY2xhc3MgZXh0ZW5kcyBSdW5uZXJJbWFnZUNvbXBvbmVudCB7XG4gICAgICBuYW1lID0gJ1J1bm5lclVzZXInO1xuXG4gICAgICBnZXRDb21tYW5kcyhvczogT3MsIF9hcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZSk6IHN0cmluZ1tdIHtcbiAgICAgICAgaWYgKG9zLmlzKE9zLkxJTlVYX1VCVU5UVSkpIHtcbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgJ2FkZGdyb3VwIHJ1bm5lcicsXG4gICAgICAgICAgICAnYWRkdXNlciAtLXN5c3RlbSAtLWRpc2FibGVkLXBhc3N3b3JkIC0taG9tZSAvaG9tZS9ydW5uZXIgLS1pbmdyb3VwIHJ1bm5lciBydW5uZXInLFxuICAgICAgICAgICAgJ2VjaG8gXCIlcnVubmVyICAgQUxMPShBTEw6QUxMKSBOT1BBU1NXRDogQUxMXCIgPiAvZXRjL3N1ZG9lcnMuZC9ydW5uZXInLFxuICAgICAgICAgIF07XG4gICAgICAgIH0gZWxzZSBpZiAob3MuaXMoT3MuTElOVVhfQU1BWk9OXzIpKSB7XG4gICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICcvdXNyL3NiaW4vZ3JvdXBhZGQgcnVubmVyJyxcbiAgICAgICAgICAgICcvdXNyL3NiaW4vdXNlcmFkZCAtLXN5c3RlbSAtLXNoZWxsIC91c3Ivc2Jpbi9ub2xvZ2luIC0taG9tZS1kaXIgL2hvbWUvcnVubmVyIC0tZ2lkIHJ1bm5lciBydW5uZXInLFxuICAgICAgICAgICAgJ21rZGlyIC1wIC9ob21lL3J1bm5lcicsXG4gICAgICAgICAgICAnY2hvd24gcnVubmVyIC9ob21lL3J1bm5lcicsXG4gICAgICAgICAgICAnZWNobyBcIiVydW5uZXIgICBBTEw9KEFMTDpBTEwpIE5PUEFTU1dEOiBBTExcIiA+IC9ldGMvc3Vkb2Vycy5kL3J1bm5lcicsXG4gICAgICAgICAgXTtcbiAgICAgICAgfSBlbHNlIGlmIChvcy5pcyhPcy5XSU5ET1dTKSkge1xuICAgICAgICAgIHJldHVybiBbXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgT1MgZm9yIHJ1bm5lciB1c2VyOiAke29zLm5hbWV9YCk7XG4gICAgICB9XG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIGNvbXBvbmVudCB0byBpbnN0YWxsIHRoZSBBV1MgQ0xJLlxuICAgKi9cbiAgc3RhdGljIGF3c0NsaSgpOiBSdW5uZXJJbWFnZUNvbXBvbmVudCB7XG4gICAgcmV0dXJuIG5ldyBjbGFzcyBleHRlbmRzIFJ1bm5lckltYWdlQ29tcG9uZW50IHtcbiAgICAgIG5hbWUgPSAnQXdzQ2xpJztcblxuICAgICAgZ2V0Q29tbWFuZHMob3M6IE9zLCBhcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZSkge1xuICAgICAgICBpZiAob3MuaXMoT3MuTElOVVhfVUJVTlRVKSB8fCBvcy5pcyhPcy5MSU5VWF9BTUFaT05fMikpIHtcbiAgICAgICAgICBsZXQgYXJjaFVybDogc3RyaW5nO1xuICAgICAgICAgIGlmIChhcmNoaXRlY3R1cmUuaXMoQXJjaGl0ZWN0dXJlLlg4Nl82NCkpIHtcbiAgICAgICAgICAgIGFyY2hVcmwgPSAneDg2XzY0JztcbiAgICAgICAgICB9IGVsc2UgaWYgKGFyY2hpdGVjdHVyZS5pcyhBcmNoaXRlY3R1cmUuQVJNNjQpKSB7XG4gICAgICAgICAgICBhcmNoVXJsID0gJ2FhcmNoNjQnO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIGFyY2hpdGVjdHVyZSBmb3IgYXdzY2xpOiAke2FyY2hpdGVjdHVyZS5uYW1lfWApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICBgY3VybCAtZnNTTCBcImh0dHBzOi8vYXdzY2xpLmFtYXpvbmF3cy5jb20vYXdzY2xpLWV4ZS1saW51eC0ke2FyY2hVcmx9LnppcFwiIC1vIGF3c2NsaXYyLnppcGAsXG4gICAgICAgICAgICAndW56aXAgLXEgYXdzY2xpdjIuemlwJyxcbiAgICAgICAgICAgICcuL2F3cy9pbnN0YWxsJyxcbiAgICAgICAgICAgICdybSAtcmYgYXdzY2xpdjIuemlwIGF3cycsXG4gICAgICAgICAgXTtcbiAgICAgICAgfSBlbHNlIGlmIChvcy5pcyhPcy5XSU5ET1dTKSkge1xuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAnJHAgPSBTdGFydC1Qcm9jZXNzIG1zaWV4ZWMuZXhlIC1QYXNzVGhydSAtV2FpdCAtQXJndW1lbnRMaXN0IFxcJy9pIGh0dHBzOi8vYXdzY2xpLmFtYXpvbmF3cy5jb20vQVdTQ0xJVjIubXNpIC9xblxcJycsXG4gICAgICAgICAgICAnaWYgKCRwLkV4aXRDb2RlIC1uZSAwKSB7IHRocm93IFwiRXhpdCBjb2RlIGlzICRwLkV4aXRDb2RlXCIgfScsXG4gICAgICAgICAgXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBvcy9hcmNoaXRlY3R1cmUgY29tYm8gZm9yIGF3c2NsaTogJHtvcy5uYW1lfS8ke2FyY2hpdGVjdHVyZS5uYW1lfWApO1xuICAgICAgfVxuICAgIH0oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIGNvbXBvbmVudCB0byBpbnN0YWxsIHRoZSBHaXRIdWIgQ0xJLlxuICAgKi9cbiAgc3RhdGljIGdpdGh1YkNsaSgpOiBSdW5uZXJJbWFnZUNvbXBvbmVudCB7XG4gICAgcmV0dXJuIG5ldyBjbGFzcyBleHRlbmRzIFJ1bm5lckltYWdlQ29tcG9uZW50IHtcbiAgICAgIG5hbWUgPSAnR2l0aHViQ2xpJztcblxuICAgICAgZ2V0Q29tbWFuZHMob3M6IE9zLCBhcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZSkge1xuICAgICAgICBpZiAob3MuaXMoT3MuTElOVVhfVUJVTlRVKSkge1xuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAnY3VybCAtZnNTTCBodHRwczovL2NsaS5naXRodWIuY29tL3BhY2thZ2VzL2dpdGh1YmNsaS1hcmNoaXZlLWtleXJpbmcuZ3BnIHwgc3VkbyBkZCBvZj0vdXNyL3NoYXJlL2tleXJpbmdzL2dpdGh1YmNsaS1hcmNoaXZlLWtleXJpbmcuZ3BnJyxcbiAgICAgICAgICAgICdlY2hvIFwiZGViIFthcmNoPSQoZHBrZyAtLXByaW50LWFyY2hpdGVjdHVyZSkgc2lnbmVkLWJ5PS91c3Ivc2hhcmUva2V5cmluZ3MvZ2l0aHViY2xpLWFyY2hpdmUta2V5cmluZy5ncGddICcgK1xuICAgICAgICAgICAgJyAgaHR0cHM6Ly9jbGkuZ2l0aHViLmNvbS9wYWNrYWdlcyBzdGFibGUgbWFpblwiIHwgc3VkbyB0ZWUgL2V0Yy9hcHQvc291cmNlcy5saXN0LmQvZ2l0aHViLWNsaS5saXN0ID4gL2Rldi9udWxsJyxcbiAgICAgICAgICAgICdhcHQtZ2V0IHVwZGF0ZScsXG4gICAgICAgICAgICAnREVCSUFOX0ZST05URU5EPW5vbmludGVyYWN0aXZlIGFwdC1nZXQgaW5zdGFsbCAteSBnaCcsXG4gICAgICAgICAgXTtcbiAgICAgICAgfSBlbHNlIGlmIChvcy5pcyhPcy5MSU5VWF9BTUFaT05fMikpIHtcbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgJ2N1cmwgLWZzU1NMIGh0dHBzOi8vY2xpLmdpdGh1Yi5jb20vcGFja2FnZXMvcnBtL2doLWNsaS5yZXBvIC1vIC9ldGMveXVtLnJlcG9zLmQvZ2gtY2xpLnJlcG8nLFxuICAgICAgICAgICAgJ3l1bSBpbnN0YWxsIC15IGdoJyxcbiAgICAgICAgICBdO1xuICAgICAgICB9IGVsc2UgaWYgKG9zLmlzKE9zLldJTkRPV1MpKSB7XG4gICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICdjbWQgL2MgY3VybCAtdyBcIiV7cmVkaXJlY3RfdXJsfVwiIC1mc1MgaHR0cHM6Ly9naXRodWIuY29tL2NsaS9jbGkvcmVsZWFzZXMvbGF0ZXN0ID4gJEVudjpURU1QXFxcXGxhdGVzdC1naCcsXG4gICAgICAgICAgICAnJExhdGVzdFVybCA9IEdldC1Db250ZW50ICRFbnY6VEVNUFxcXFxsYXRlc3QtZ2gnLFxuICAgICAgICAgICAgJyRHSF9WRVJTSU9OID0gKCRMYXRlc3RVcmwgLVNwbGl0IFxcJy9cXCcpWy0xXS5zdWJzdHJpbmcoMSknLFxuICAgICAgICAgICAgJ0ludm9rZS1XZWJSZXF1ZXN0IC1Vc2VCYXNpY1BhcnNpbmcgLVVyaSBcImh0dHBzOi8vZ2l0aHViLmNvbS9jbGkvY2xpL3JlbGVhc2VzL2Rvd25sb2FkL3Yke0dIX1ZFUlNJT059L2doXyR7R0hfVkVSU0lPTn1fd2luZG93c19hbWQ2NC5tc2lcIiAtT3V0RmlsZSBnaC5tc2knLFxuICAgICAgICAgICAgJyRwID0gU3RhcnQtUHJvY2VzcyBtc2lleGVjLmV4ZSAtUGFzc1RocnUgLVdhaXQgLUFyZ3VtZW50TGlzdCBcXCcvaSBnaC5tc2kgL3FuXFwnJyxcbiAgICAgICAgICAgICdpZiAoJHAuRXhpdENvZGUgLW5lIDApIHsgdGhyb3cgXCJFeGl0IGNvZGUgaXMgJHAuRXhpdENvZGVcIiB9JyxcbiAgICAgICAgICAgICdkZWwgZ2gubXNpJyxcbiAgICAgICAgICBdO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIG9zL2FyY2hpdGVjdHVyZSBjb21ibyBmb3IgZ2l0aHViIGNsaTogJHtvcy5uYW1lfS8ke2FyY2hpdGVjdHVyZS5uYW1lfWApO1xuICAgICAgfVxuICAgIH0oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIGNvbXBvbmVudCB0byBpbnN0YWxsIHRoZSBHaXRIdWIgQ0xJLlxuICAgKi9cbiAgc3RhdGljIGdpdCgpOiBSdW5uZXJJbWFnZUNvbXBvbmVudCB7XG4gICAgcmV0dXJuIG5ldyBjbGFzcyBleHRlbmRzIFJ1bm5lckltYWdlQ29tcG9uZW50IHtcbiAgICAgIG5hbWUgPSAnR2l0JztcblxuICAgICAgZ2V0Q29tbWFuZHMob3M6IE9zLCBhcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZSkge1xuICAgICAgICBpZiAob3MuaXMoT3MuTElOVVhfVUJVTlRVKSkge1xuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAnYWRkLWFwdC1yZXBvc2l0b3J5IHBwYTpnaXQtY29yZS9wcGEnLFxuICAgICAgICAgICAgJ2FwdC1nZXQgdXBkYXRlJyxcbiAgICAgICAgICAgICdERUJJQU5fRlJPTlRFTkQ9bm9uaW50ZXJhY3RpdmUgYXB0LWdldCBpbnN0YWxsIC15IGdpdCcsXG4gICAgICAgICAgXTtcbiAgICAgICAgfSBlbHNlIGlmIChvcy5pcyhPcy5MSU5VWF9BTUFaT05fMikpIHtcbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgJ3l1bSBpbnN0YWxsIC15IGdpdCcsXG4gICAgICAgICAgXTtcbiAgICAgICAgfSBlbHNlIGlmIChvcy5pcyhPcy5XSU5ET1dTKSkge1xuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAnY21kIC9jIGN1cmwgLXcgXCIle3JlZGlyZWN0X3VybH1cIiAtZnNTIGh0dHBzOi8vZ2l0aHViLmNvbS9naXQtZm9yLXdpbmRvd3MvZ2l0L3JlbGVhc2VzL2xhdGVzdCA+ICRFbnY6VEVNUFxcXFxsYXRlc3QtZ2l0JyxcbiAgICAgICAgICAgICckTGF0ZXN0VXJsID0gR2V0LUNvbnRlbnQgJEVudjpURU1QXFxcXGxhdGVzdC1naXQnLFxuICAgICAgICAgICAgJyRHSVRfVkVSU0lPTiA9ICgkTGF0ZXN0VXJsIC1TcGxpdCBcXCcvXFwnKVstMV0uc3Vic3RyaW5nKDEpJyxcbiAgICAgICAgICAgICckR0lUX1ZFUlNJT05fU0hPUlQgPSAoJEdJVF9WRVJTSU9OIC1TcGxpdCBcXCcud2luZG93cy5cXCcpWzBdJyxcbiAgICAgICAgICAgICckR0lUX1JFVklTSU9OID0gKCRHSVRfVkVSU0lPTiAtU3BsaXQgXFwnLndpbmRvd3MuXFwnKVsxXScsXG4gICAgICAgICAgICAnSWYgKCRHSVRfUkVWSVNJT04gLWd0IDEpIHskR0lUX1ZFUlNJT05fU0hPUlQgPSBcIiRHSVRfVkVSU0lPTl9TSE9SVC4kR0lUX1JFVklTSU9OXCJ9JyxcbiAgICAgICAgICAgICdJbnZva2UtV2ViUmVxdWVzdCAtVXNlQmFzaWNQYXJzaW5nIC1VcmkgaHR0cHM6Ly9naXRodWIuY29tL2dpdC1mb3Itd2luZG93cy9naXQvcmVsZWFzZXMvZG93bmxvYWQvdiR7R0lUX1ZFUlNJT059L0dpdC0ke0dJVF9WRVJTSU9OX1NIT1JUfS02NC1iaXQuZXhlIC1PdXRGaWxlIGdpdC1zZXR1cC5leGUnLFxuICAgICAgICAgICAgJyRwID0gU3RhcnQtUHJvY2VzcyBnaXQtc2V0dXAuZXhlIC1QYXNzVGhydSAtV2FpdCAtQXJndW1lbnRMaXN0IFxcJy9WRVJZU0lMRU5UXFwnJyxcbiAgICAgICAgICAgICdpZiAoJHAuRXhpdENvZGUgLW5lIDApIHsgdGhyb3cgXCJFeGl0IGNvZGUgaXMgJHAuRXhpdENvZGVcIiB9JyxcbiAgICAgICAgICAgICdkZWwgZ2l0LXNldHVwLmV4ZScsXG4gICAgICAgICAgXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBvcy9hcmNoaXRlY3R1cmUgY29tYm8gZm9yIGdpdDogJHtvcy5uYW1lfS8ke2FyY2hpdGVjdHVyZS5uYW1lfWApO1xuICAgICAgfVxuICAgIH0oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIGNvbXBvbmVudCB0byBpbnN0YWxsIHRoZSBHaXRIdWIgQWN0aW9ucyBSdW5uZXIuIFRoaXMgaXMgdGhlIGFjdHVhbCBleGVjdXRhYmxlIHRoYXQgY29ubmVjdHMgdG8gR2l0SHViIHRvIGFzayBmb3Igam9icyBhbmQgdGhlbiBleGVjdXRlIHRoZW0uXG4gICAqXG4gICAqIEBwYXJhbSBydW5uZXJWZXJzaW9uIFRoZSB2ZXJzaW9uIG9mIHRoZSBydW5uZXIgdG8gaW5zdGFsbC4gVXN1YWxseSB5b3Ugd291bGQgc2V0IHRoaXMgdG8gbGF0ZXN0LlxuICAgKi9cbiAgc3RhdGljIGdpdGh1YlJ1bm5lcihydW5uZXJWZXJzaW9uOiBSdW5uZXJWZXJzaW9uKTogUnVubmVySW1hZ2VDb21wb25lbnQge1xuICAgIHJldHVybiBuZXcgY2xhc3MgZXh0ZW5kcyBSdW5uZXJJbWFnZUNvbXBvbmVudCB7XG4gICAgICBuYW1lID0gJ0dpdGh1YlJ1bm5lcic7XG5cbiAgICAgIGdldENvbW1hbmRzKG9zOiBPcywgYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUpIHtcbiAgICAgICAgaWYgKG9zLmlzKE9zLkxJTlVYX1VCVU5UVSkgfHwgb3MuaXMoT3MuTElOVVhfQU1BWk9OXzIpKSB7XG4gICAgICAgICAgbGV0IHZlcnNpb25Db21tYW5kOiBzdHJpbmc7XG4gICAgICAgICAgaWYgKHJ1bm5lclZlcnNpb24uaXMoUnVubmVyVmVyc2lvbi5sYXRlc3QoKSkpIHtcbiAgICAgICAgICAgIHZlcnNpb25Db21tYW5kID0gJ1JVTk5FUl9WRVJTSU9OPWBjdXJsIC13IFwiJXtyZWRpcmVjdF91cmx9XCIgLWZzUyBodHRwczovL2dpdGh1Yi5jb20vYWN0aW9ucy9ydW5uZXIvcmVsZWFzZXMvbGF0ZXN0IHwgZ3JlcCAtb0UgXCJbXi92XSskXCJgJztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdmVyc2lvbkNvbW1hbmQgPSBgUlVOTkVSX1ZFUlNJT049JyR7cnVubmVyVmVyc2lvbi52ZXJzaW9ufSdgO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGxldCBhcmNoVXJsO1xuICAgICAgICAgIGlmIChhcmNoaXRlY3R1cmUuaXMoQXJjaGl0ZWN0dXJlLlg4Nl82NCkpIHtcbiAgICAgICAgICAgIGFyY2hVcmwgPSAneDY0JztcbiAgICAgICAgICB9IGVsc2UgaWYgKGFyY2hpdGVjdHVyZS5pcyhBcmNoaXRlY3R1cmUuQVJNNjQpKSB7XG4gICAgICAgICAgICBhcmNoVXJsID0gJ2FybTY0JztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbnN1cHBvcnRlZCBhcmNoaXRlY3R1cmUgZm9yIEdpdEh1YiBSdW5uZXI6ICR7YXJjaGl0ZWN0dXJlLm5hbWV9YCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgbGV0IGNvbW1hbmRzID0gW1xuICAgICAgICAgICAgdmVyc2lvbkNvbW1hbmQsXG4gICAgICAgICAgICBgY3VybCAtZnNTTE8gXCJodHRwczovL2dpdGh1Yi5jb20vYWN0aW9ucy9ydW5uZXIvcmVsZWFzZXMvZG93bmxvYWQvdlxcJHtSVU5ORVJfVkVSU0lPTn0vYWN0aW9ucy1ydW5uZXItbGludXgtJHthcmNoVXJsfS1cXCR7UlVOTkVSX1ZFUlNJT059LnRhci5nelwiYCxcbiAgICAgICAgICAgIGB0YXIgLUMgL2hvbWUvcnVubmVyIC14emYgXCJhY3Rpb25zLXJ1bm5lci1saW51eC0ke2FyY2hVcmx9LVxcJHtSVU5ORVJfVkVSU0lPTn0udGFyLmd6XCJgLFxuICAgICAgICAgICAgYHJtIGFjdGlvbnMtcnVubmVyLWxpbnV4LSR7YXJjaFVybH0tXFwke1JVTk5FUl9WRVJTSU9OfS50YXIuZ3pgLFxuICAgICAgICAgICAgYGVjaG8gLW4gJHtydW5uZXJWZXJzaW9uLnZlcnNpb259ID4gL2hvbWUvcnVubmVyL1JVTk5FUl9WRVJTSU9OYCxcbiAgICAgICAgICBdO1xuXG4gICAgICAgICAgaWYgKG9zLmlzKE9zLkxJTlVYX1VCVU5UVSkpIHtcbiAgICAgICAgICAgIGNvbW1hbmRzLnB1c2goJy9ob21lL3J1bm5lci9iaW4vaW5zdGFsbGRlcGVuZGVuY2llcy5zaCcpO1xuICAgICAgICAgIH0gZWxzZSBpZiAob3MuaXMoT3MuTElOVVhfQU1BWk9OXzIpKSB7XG4gICAgICAgICAgICBjb21tYW5kcy5wdXNoKCd5dW0gaW5zdGFsbCAteSBvcGVuc3NsLWxpYnMga3JiNS1saWJzIHpsaWIgbGliaWN1NjAnKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gY29tbWFuZHM7XG4gICAgICAgIH0gZWxzZSBpZiAob3MuaXMoT3MuV0lORE9XUykpIHtcbiAgICAgICAgICBsZXQgcnVubmVyQ29tbWFuZHM6IHN0cmluZ1tdO1xuICAgICAgICAgIGlmIChydW5uZXJWZXJzaW9uLmlzKFJ1bm5lclZlcnNpb24ubGF0ZXN0KCkpKSB7XG4gICAgICAgICAgICBydW5uZXJDb21tYW5kcyA9IFtcbiAgICAgICAgICAgICAgJ2NtZCAvYyBjdXJsIC13IFwiJXtyZWRpcmVjdF91cmx9XCIgLWZzUyBodHRwczovL2dpdGh1Yi5jb20vYWN0aW9ucy9ydW5uZXIvcmVsZWFzZXMvbGF0ZXN0ID4gJEVudjpURU1QXFxcXGxhdGVzdC1naGEnLFxuICAgICAgICAgICAgICAnJExhdGVzdFVybCA9IEdldC1Db250ZW50ICRFbnY6VEVNUFxcXFxsYXRlc3QtZ2hhJyxcbiAgICAgICAgICAgICAgJyRSVU5ORVJfVkVSU0lPTiA9ICgkTGF0ZXN0VXJsIC1TcGxpdCBcXCcvXFwnKVstMV0uc3Vic3RyaW5nKDEpJyxcbiAgICAgICAgICAgIF07XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJ1bm5lckNvbW1hbmRzID0gW2AkUlVOTkVSX1ZFUlNJT04gPSAnJHtydW5uZXJWZXJzaW9uLnZlcnNpb259J2BdO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBydW5uZXJDb21tYW5kcy5jb25jYXQoW1xuICAgICAgICAgICAgJ0ludm9rZS1XZWJSZXF1ZXN0IC1Vc2VCYXNpY1BhcnNpbmcgLVVyaSBcImh0dHBzOi8vZ2l0aHViLmNvbS9hY3Rpb25zL3J1bm5lci9yZWxlYXNlcy9kb3dubG9hZC92JHtSVU5ORVJfVkVSU0lPTn0vYWN0aW9ucy1ydW5uZXItd2luLXg2NC0ke1JVTk5FUl9WRVJTSU9OfS56aXBcIiAtT3V0RmlsZSBhY3Rpb25zLnppcCcsXG4gICAgICAgICAgICAnRXhwYW5kLUFyY2hpdmUgYWN0aW9ucy56aXAgLURlc3RpbmF0aW9uUGF0aCBDOlxcXFxhY3Rpb25zJyxcbiAgICAgICAgICAgICdkZWwgYWN0aW9ucy56aXAnLFxuICAgICAgICAgICAgYGVjaG8gJHtydW5uZXJWZXJzaW9uLnZlcnNpb259IHwgT3V0LUZpbGUgLUVuY29kaW5nIEFTQ0lJIC1Ob05ld2xpbmUgQzpcXFxcYWN0aW9uc1xcXFxSVU5ORVJfVkVSU0lPTmAsXG4gICAgICAgICAgXSk7XG4gICAgICAgIH1cblxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gb3MvYXJjaGl0ZWN0dXJlIGNvbWJvIGZvciBnaXRodWIgcnVubmVyOiAke29zLm5hbWV9LyR7YXJjaGl0ZWN0dXJlLm5hbWV9YCk7XG4gICAgICB9XG5cbiAgICAgIGdldERvY2tlckNvbW1hbmRzKF9vczogT3MsIF9hcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZSk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICBgRU5WIFJVTk5FUl9WRVJTSU9OPSR7cnVubmVyVmVyc2lvbi52ZXJzaW9ufWAsXG4gICAgICAgIF07XG4gICAgICB9XG4gICAgfSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgY29tcG9uZW50IHRvIGluc3RhbGwgRG9ja2VyLlxuICAgKlxuICAgKiBPbiBXaW5kb3dzIHRoaXMgc2V0cyB1cCBkb2NrZXJkIGZvciBXaW5kb3dzIGNvbnRhaW5lcnMgd2l0aG91dCBEb2NrZXIgRGVza3RvcC4gSWYgeW91IG5lZWQgTGludXggY29udGFpbmVycyBvbiBXaW5kb3dzLCB5b3UnbGwgbmVlZCB0byBpbnN0YWxsIERvY2tlciBEZXNrdG9wIHdoaWNoIGRvZXNuJ3Qgc2VlbSB0byBwbGF5IHdlbGwgd2l0aCBzZXJ2ZXJzIChQUnMgd2VsY29tZSkuXG4gICAqL1xuICBzdGF0aWMgZG9ja2VyKCk6IFJ1bm5lckltYWdlQ29tcG9uZW50IHtcbiAgICByZXR1cm4gbmV3IGNsYXNzIGV4dGVuZHMgUnVubmVySW1hZ2VDb21wb25lbnQge1xuICAgICAgbmFtZSA9ICdEb2NrZXInO1xuXG4gICAgICBnZXRDb21tYW5kcyhvczogT3MsIGFyY2hpdGVjdHVyZTogQXJjaGl0ZWN0dXJlKSB7XG4gICAgICAgIGlmIChvcy5pcyhPcy5MSU5VWF9VQlVOVFUpKSB7XG4gICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICdjdXJsIC1mc1NMIGh0dHBzOi8vZG93bmxvYWQuZG9ja2VyLmNvbS9saW51eC91YnVudHUvZ3BnIHwgc3VkbyBncGcgLS1kZWFybW9yIC1vIC91c3Ivc2hhcmUva2V5cmluZ3MvZG9ja2VyLmdwZycsXG4gICAgICAgICAgICAnZWNobyAnICtcbiAgICAgICAgICAgICAgICAnICBcImRlYiBbYXJjaD0kKGRwa2cgLS1wcmludC1hcmNoaXRlY3R1cmUpIHNpZ25lZC1ieT0vdXNyL3NoYXJlL2tleXJpbmdzL2RvY2tlci5ncGddIGh0dHBzOi8vZG93bmxvYWQuZG9ja2VyLmNvbS9saW51eC91YnVudHUgJyArXG4gICAgICAgICAgICAgICAgJyAgJChsc2JfcmVsZWFzZSAtY3MpIHN0YWJsZVwiIHwgc3VkbyB0ZWUgL2V0Yy9hcHQvc291cmNlcy5saXN0LmQvZG9ja2VyLmxpc3QgPiAvZGV2L251bGwnLFxuICAgICAgICAgICAgJ2FwdC1nZXQgdXBkYXRlJyxcbiAgICAgICAgICAgICdERUJJQU5fRlJPTlRFTkQ9bm9uaW50ZXJhY3RpdmUgYXB0LWdldCBpbnN0YWxsIC15IGRvY2tlci1jZSBkb2NrZXItY2UtY2xpIGNvbnRhaW5lcmQuaW8gZG9ja2VyLWNvbXBvc2UtcGx1Z2luJyxcbiAgICAgICAgICAgICd1c2VybW9kIC1hRyBkb2NrZXIgcnVubmVyJyxcbiAgICAgICAgICAgICdsbiAtcyAvdXNyL2xpYmV4ZWMvZG9ja2VyL2NsaS1wbHVnaW5zL2RvY2tlci1jb21wb3NlIC91c3IvYmluL2RvY2tlci1jb21wb3NlJyxcbiAgICAgICAgICBdO1xuICAgICAgICB9IGVsc2UgaWYgKG9zLmlzKE9zLkxJTlVYX0FNQVpPTl8yKSkge1xuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAneXVtIGluc3RhbGwgLXkgZG9ja2VyJyxcbiAgICAgICAgICBdO1xuICAgICAgICB9IGVsc2UgaWYgKG9zLmlzKE9zLldJTkRPV1MpKSB7XG4gICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIC8vIGZpZ3VyZSBvdXQgbGF0ZXN0IGRvY2tlciB2ZXJzaW9uXG4gICAgICAgICAgICAnY21kIC9jIGN1cmwgLXcgXCIle3JlZGlyZWN0X3VybH1cIiAtZnNTIGh0dHBzOi8vZ2l0aHViLmNvbS9tb2J5L21vYnkvcmVsZWFzZXMvbGF0ZXN0ID4gJEVudjpURU1QXFxcXGxhdGVzdC1kb2NrZXInLFxuICAgICAgICAgICAgJyRMYXRlc3RVcmwgPSBHZXQtQ29udGVudCAkRW52OlRFTVBcXFxcbGF0ZXN0LWRvY2tlcicsXG4gICAgICAgICAgICAnJERPQ0tFUl9WRVJTSU9OID0gKCRMYXRlc3RVcmwgLVNwbGl0IFxcJy9cXCcpWy0xXS5zdWJzdHJpbmcoMSknLFxuICAgICAgICAgICAgLy8gZG93bmxvYWQgc3RhdGljIGJpbmFyaWVzXG4gICAgICAgICAgICAnSW52b2tlLVdlYlJlcXVlc3QgLVVzZUJhc2ljUGFyc2luZyAtVXJpIFwiaHR0cHM6Ly9kb3dubG9hZC5kb2NrZXIuY29tL3dpbi9zdGF0aWMvc3RhYmxlL3g4Nl82NC9kb2NrZXItJHtET0NLRVJfVkVSU0lPTn0uemlwXCIgLU91dEZpbGUgZG9ja2VyLnppcCcsXG4gICAgICAgICAgICAvLyBleHRyYWN0IHRvIEM6XFxQcm9ncmFtIEZpbGVzXFxEb2NrZXJcbiAgICAgICAgICAgICdFeHBhbmQtQXJjaGl2ZSBkb2NrZXIuemlwIC1EZXN0aW5hdGlvblBhdGggXCIkRW52OlByb2dyYW1GaWxlc1wiJyxcbiAgICAgICAgICAgICdkZWwgZG9ja2VyLnppcCcsXG4gICAgICAgICAgICAvLyBhZGQgdG8gcGF0aFxuICAgICAgICAgICAgJyRwZXJzaXN0ZWRQYXRocyA9IFtFbnZpcm9ubWVudF06OkdldEVudmlyb25tZW50VmFyaWFibGUoXFwnUGF0aFxcJywgW0Vudmlyb25tZW50VmFyaWFibGVUYXJnZXRdOjpNYWNoaW5lKScsXG4gICAgICAgICAgICAnW0Vudmlyb25tZW50XTo6U2V0RW52aXJvbm1lbnRWYXJpYWJsZShcIlBBVEhcIiwgJHBlcnNpc3RlZFBhdGhzICsgXCI7JEVudjpQcm9ncmFtRmlsZXNcXFxcRG9ja2VyXCIsIFtFbnZpcm9ubWVudFZhcmlhYmxlVGFyZ2V0XTo6TWFjaGluZSknLFxuICAgICAgICAgICAgJyRlbnY6UEFUSCA9ICRlbnY6UEFUSCArIFwiOyRFbnY6UHJvZ3JhbUZpbGVzXFxcXERvY2tlclwiJyxcbiAgICAgICAgICAgIC8vIHJlZ2lzdGVyIGRvY2tlciBzZXJ2aWNlXG4gICAgICAgICAgICAnZG9ja2VyZCAtLXJlZ2lzdGVyLXNlcnZpY2UnLFxuICAgICAgICAgICAgJ2lmICgkTEFTVEVYSVRDT0RFIC1uZSAwKSB7IHRocm93IFwiRXhpdCBjb2RlIGlzICRMQVNURVhJVENPREVcIiB9JyxcbiAgICAgICAgICAgIC8vIGVuYWJsZSBjb250YWluZXJzIGZlYXR1cmVcbiAgICAgICAgICAgICdFbmFibGUtV2luZG93c09wdGlvbmFsRmVhdHVyZSAtT25saW5lIC1GZWF0dXJlTmFtZSBjb250YWluZXJzIC1BbGwgLU5vUmVzdGFydCcsXG4gICAgICAgICAgICAvLyBpbnN0YWxsIGRvY2tlci1jb21wb3NlXG4gICAgICAgICAgICAnY21kIC9jIGN1cmwgLXcgXCIle3JlZGlyZWN0X3VybH1cIiAtZnNTIGh0dHBzOi8vZ2l0aHViLmNvbS9kb2NrZXIvY29tcG9zZS9yZWxlYXNlcy9sYXRlc3QgPiAkRW52OlRFTVBcXFxcbGF0ZXN0LWRvY2tlci1jb21wb3NlJyxcbiAgICAgICAgICAgICckTGF0ZXN0VXJsID0gR2V0LUNvbnRlbnQgJEVudjpURU1QXFxcXGxhdGVzdC1kb2NrZXItY29tcG9zZScsXG4gICAgICAgICAgICAnJExhdGVzdERvY2tlckNvbXBvc2UgPSAoJExhdGVzdFVybCAtU3BsaXQgXFwnL1xcJylbLTFdJyxcbiAgICAgICAgICAgICdJbnZva2UtV2ViUmVxdWVzdCAtVXNlQmFzaWNQYXJzaW5nIC1VcmkgIFwiaHR0cHM6Ly9naXRodWIuY29tL2RvY2tlci9jb21wb3NlL3JlbGVhc2VzL2Rvd25sb2FkLyR7TGF0ZXN0RG9ja2VyQ29tcG9zZX0vZG9ja2VyLWNvbXBvc2UtV2luZG93cy14ODZfNjQuZXhlXCIgLU91dEZpbGUgJEVudjpQcm9ncmFtRmlsZXNcXFxcRG9ja2VyXFxcXGRvY2tlci1jb21wb3NlLmV4ZScsXG4gICAgICAgICAgICAnTmV3LUl0ZW0gLUl0ZW1UeXBlIGRpcmVjdG9yeSAtUGF0aCBcIiRFbnY6UHJvZ3JhbUZpbGVzXFxcXERvY2tlclxcXFxjbGktcGx1Z2luc1wiJyxcbiAgICAgICAgICAgICdDb3B5LUl0ZW0gLVBhdGggXCIkRW52OlByb2dyYW1GaWxlc1xcXFxEb2NrZXJcXFxcZG9ja2VyLWNvbXBvc2UuZXhlXCIgLURlc3RpbmF0aW9uIFwiJEVudjpQcm9ncmFtRmlsZXNcXFxcRG9ja2VyXFxcXGNsaS1wbHVnaW5zXFxcXGRvY2tlci1jb21wb3NlLmV4ZVwiJyxcbiAgICAgICAgICBdO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBVbmtub3duIG9zL2FyY2hpdGVjdHVyZSBjb21ibyBmb3IgZG9ja2VyOiAke29zLm5hbWV9LyR7YXJjaGl0ZWN0dXJlLm5hbWV9YCk7XG4gICAgICB9XG5cbiAgICAgIHNob3VsZFJlYm9vdChvczogT3MsIF9hcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZSk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gb3MuaXMoT3MuV0lORE9XUyk7XG4gICAgICB9XG4gICAgfSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgY29tcG9uZW50IHRvIGluc3RhbGwgRG9ja2VyLWluLURvY2tlci5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgdXNlIGBkb2NrZXIoKWBcbiAgICovXG4gIHN0YXRpYyBkb2NrZXJJbkRvY2tlcigpOiBSdW5uZXJJbWFnZUNvbXBvbmVudCB7XG4gICAgcmV0dXJuIFJ1bm5lckltYWdlQ29tcG9uZW50LmRvY2tlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgY29tcG9uZW50IHRvIGFkZCBhIHRydXN0ZWQgY2VydGlmaWNhdGUgYXV0aG9yaXR5LiBUaGlzIGNhbiBiZSB1c2VkIHRvIHN1cHBvcnQgR2l0SHViIEVudGVycHJpc2UgU2VydmVyIHdpdGggc2VsZi1zaWduZWQgY2VydGlmaWNhdGUuXG4gICAqXG4gICAqIEBwYXJhbSBzb3VyY2UgcGF0aCB0byBjZXJ0aWZpY2F0ZSBmaWxlIGluIFBFTSBmb3JtYXRcbiAgICogQHBhcmFtIG5hbWUgdW5pcXVlIGNlcnRpZmljYXRlIG5hbWUgdG8gYmUgdXNlZCBvbiBydW5uZXIgZmlsZSBzeXN0ZW1cbiAgICovXG4gIHN0YXRpYyBleHRyYUNlcnRpZmljYXRlcyhzb3VyY2U6IHN0cmluZywgbmFtZTogc3RyaW5nKTogUnVubmVySW1hZ2VDb21wb25lbnQge1xuICAgIHJldHVybiBuZXcgY2xhc3MgZXh0ZW5kcyBSdW5uZXJJbWFnZUNvbXBvbmVudCB7XG4gICAgICBuYW1lID0gYEV4dHJhLUNlcnRpZmljYXRlcy0ke25hbWV9YDtcblxuICAgICAgZ2V0Q29tbWFuZHMob3M6IE9zLCBhcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZSkge1xuICAgICAgICBpZiAoIW5hbWUubWF0Y2goL15bYS16QS1aMC05Xy1dKyQvKSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBjZXJ0aWZpY2F0ZSBuYW1lOiAke25hbWV9LiBOYW1lIG11c3Qgb25seSBjb250YWluIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzLCBkYXNoZXMgYW5kIHVuZGVyc2NvcmVzLmApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9zLmlzKE9zLkxJTlVYX1VCVU5UVSkpIHtcbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgJ3VwZGF0ZS1jYS1jZXJ0aWZpY2F0ZXMnLFxuICAgICAgICAgIF07XG4gICAgICAgIH0gZWxzZSBpZiAob3MuaXMoT3MuTElOVVhfQU1BWk9OXzIpKSB7XG4gICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICd1cGRhdGUtY2EtdHJ1c3QnLFxuICAgICAgICAgIF07XG4gICAgICAgIH0gZWxzZSBpZiAob3MuaXMoT3MuV0lORE9XUykpIHtcbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgYEltcG9ydC1DZXJ0aWZpY2F0ZSAtRmlsZVBhdGggQzpcXFxcJHtuYW1lfS5jcnQgLUNlcnRTdG9yZUxvY2F0aW9uIENlcnQ6XFxcXExvY2FsTWFjaGluZVxcXFxSb290YCxcbiAgICAgICAgICAgIGBSZW1vdmUtSXRlbSBDOlxcXFwke25hbWV9LmNydGAsXG4gICAgICAgICAgXTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBvcy9hcmNoaXRlY3R1cmUgY29tYm8gZm9yIGV4dHJhIGNlcnRpZmljYXRlczogJHtvcy5uYW1lfS8ke2FyY2hpdGVjdHVyZS5uYW1lfWApO1xuICAgICAgfVxuXG4gICAgICBnZXRBc3NldHMob3M6IE9zLCBfYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUpOiBSdW5uZXJJbWFnZUFzc2V0W10ge1xuICAgICAgICBpZiAob3MuaXMoT3MuTElOVVhfVUJVTlRVKSkge1xuICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICB7IHNvdXJjZSwgdGFyZ2V0OiBgL3Vzci9sb2NhbC9zaGFyZS9jYS1jZXJ0aWZpY2F0ZXMvJHtuYW1lfS5jcnRgIH0sXG4gICAgICAgICAgXTtcbiAgICAgICAgfSBlbHNlIGlmIChvcy5pcyhPcy5MSU5VWF9BTUFaT05fMikpIHtcbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgeyBzb3VyY2UsIHRhcmdldDogYC9ldGMvcGtpL2NhLXRydXN0L3NvdXJjZS9hbmNob3JzLyR7bmFtZX0uY3J0YCB9LFxuICAgICAgICAgIF07XG4gICAgICAgIH0gZWxzZSBpZiAob3MuaXMoT3MuV0lORE9XUykpIHtcbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgeyBzb3VyY2UsIHRhcmdldDogYEM6XFxcXCR7bmFtZX0uY3J0YCB9LFxuICAgICAgICAgIF07XG4gICAgICAgIH1cblxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFVuc3VwcG9ydGVkIE9TIGZvciBleHRyYSBjZXJ0aWZpY2F0ZXM6ICR7b3MubmFtZX1gKTtcbiAgICAgIH1cbiAgICB9KCk7XG4gIH1cblxuICAvKipcbiAgICogQSBjb21wb25lbnQgdG8gc2V0IHVwIHRoZSByZXF1aXJlZCBMYW1iZGEgZW50cnlwb2ludCBmb3IgTGFtYmRhIHJ1bm5lcnMuXG4gICAqL1xuICBzdGF0aWMgbGFtYmRhRW50cnlwb2ludCgpOiBSdW5uZXJJbWFnZUNvbXBvbmVudCB7XG4gICAgcmV0dXJuIG5ldyBjbGFzcyBleHRlbmRzIFJ1bm5lckltYWdlQ29tcG9uZW50IHtcbiAgICAgIG5hbWUgPSAnTGFtYmRhLUVudHJ5cG9pbnQnO1xuXG4gICAgICBnZXRDb21tYW5kcyhvczogT3MsIF9hcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZSkge1xuICAgICAgICBpZiAoIW9zLmlzKE9zLkxJTlVYX0FNQVpPTl8yKSAmJiAhb3MuaXMoT3MuTElOVVhfVUJVTlRVKSkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5zdXBwb3J0ZWQgT1MgZm9yIExhbWJkYSBlbnRyeXBvaW50OiAke29zLm5hbWV9YCk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG5cbiAgICAgIGdldEFzc2V0cyhfb3M6IE9zLCBfYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUpOiBSdW5uZXJJbWFnZUFzc2V0W10ge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHNvdXJjZTogcGF0aC5qb2luKF9fZGlybmFtZSwgJy4uJywgJy4uJywgJ2Fzc2V0cycsICdkb2NrZXItaW1hZ2VzJywgJ2xhbWJkYScsICdsaW51eC14NjQnLCAncnVubmVyLmpzJyksXG4gICAgICAgICAgICB0YXJnZXQ6ICcke0xBTUJEQV9UQVNLX1JPT1R9L3J1bm5lci5qcycsXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBzb3VyY2U6IHBhdGguam9pbihfX2Rpcm5hbWUsICcuLicsICcuLicsICdhc3NldHMnLCAnZG9ja2VyLWltYWdlcycsICdsYW1iZGEnLCAnbGludXgteDY0JywgJ3J1bm5lci5zaCcpLFxuICAgICAgICAgICAgdGFyZ2V0OiAnJHtMQU1CREFfVEFTS19ST09UfS9ydW5uZXIuc2gnLFxuICAgICAgICAgIH0sXG4gICAgICAgIF07XG4gICAgICB9XG5cbiAgICAgIGdldERvY2tlckNvbW1hbmRzKF9vczogT3MsIF9hcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZSk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAnV09SS0RJUiAke0xBTUJEQV9UQVNLX1JPT1R9JyxcbiAgICAgICAgICAnQ01EIFtcInJ1bm5lci5oYW5kbGVyXCJdJyxcbiAgICAgICAgXTtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXBvbmVudCBuYW1lLlxuICAgKlxuICAgKiBVc2VkIHRvIGlkZW50aWZ5IGNvbXBvbmVudCBpbiBpbWFnZSBidWlsZCBsb2dzLCBhbmQgZm9yIHtAbGluayBSdW5uZXJJbWFnZUJ1aWxkZXIucmVtb3ZlQ29tcG9uZW50fVxuICAgKi9cbiAgYWJzdHJhY3QgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGNvbW1hbmRzIHRvIHJ1biB0byBpbiBidWlsdCBpbWFnZS4gQ2FuIGJlIHVzZWQgdG8gaW5zdGFsbCBwYWNrYWdlcywgc2V0dXAgYnVpbGQgcHJlcmVxdWlzaXRlcywgZXRjLlxuICAgKi9cbiAgYWJzdHJhY3QgZ2V0Q29tbWFuZHMoX29zOiBPcywgX2FyY2hpdGVjdHVyZTogQXJjaGl0ZWN0dXJlKTogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYXNzZXRzIHRvIGNvcHkgaW50byB0aGUgYnVpbHQgaW1hZ2UuIENhbiBiZSB1c2VkIHRvIGNvcHkgZmlsZXMgaW50byB0aGUgaW1hZ2UuXG4gICAqL1xuICBnZXRBc3NldHMoX29zOiBPcywgX2FyY2hpdGVjdHVyZTogQXJjaGl0ZWN0dXJlKTogUnVubmVySW1hZ2VBc3NldFtdIHtcbiAgICByZXR1cm4gW107XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBEb2NrZXIgY29tbWFuZHMgdG8gcnVuIHRvIGluIGJ1aWx0IGltYWdlLiBDYW4gYmUgdXNlZCB0byBhZGQgY29tbWFuZHMgbGlrZSBgVk9MVU1FYCwgYEVOVFJZUE9JTlRgLCBgQ01EYCwgZXRjLlxuICAgKlxuICAgKiBEb2NrZXIgY29tbWFuZHMgYXJlIGFkZGVkIGFmdGVyIGFzc2V0cyBhbmQgbm9ybWFsIGNvbW1hbmRzLlxuICAgKi9cbiAgZ2V0RG9ja2VyQ29tbWFuZHMoX29zOiBPcywgX2FyY2hpdGVjdHVyZTogQXJjaGl0ZWN0dXJlKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBbXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRydWUgaWYgdGhlIGltYWdlIGJ1aWxkZXIgc2hvdWxkIGJlIHJlYm9vdGVkIGFmdGVyIHRoaXMgY29tcG9uZW50IGlzIGluc3RhbGxlZC5cbiAgICovXG4gIHNob3VsZFJlYm9vdChfb3M6IE9zLCBfYXJjaGl0ZWN0dXJlOiBBcmNoaXRlY3R1cmUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydCBjb21wb25lbnQgdG8gYW4gQVdTIEltYWdlIEJ1aWxkZXIgY29tcG9uZW50LlxuICAgKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIF9hc0F3c0ltYWdlQnVpbGRlckNvbXBvbmVudChzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBvczogT3MsIGFyY2hpdGVjdHVyZTogQXJjaGl0ZWN0dXJlKSB7XG4gICAgbGV0IHBsYXRmb3JtOiAnTGludXgnIHwgJ1dpbmRvd3MnO1xuICAgIGlmIChvcy5pcyhPcy5MSU5VWF9VQlVOVFUpIHx8IG9zLmlzKE9zLkxJTlVYX0FNQVpPTl8yKSkge1xuICAgICAgcGxhdGZvcm0gPSAnTGludXgnO1xuICAgIH0gZWxzZSBpZiAob3MuaXMoT3MuV0lORE9XUykpIHtcbiAgICAgIHBsYXRmb3JtID0gJ1dpbmRvd3MnO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFVua25vd24gb3MvYXJjaGl0ZWN0dXJlIGNvbWJvIGZvciBpbWFnZSBidWlsZGVyIGNvbXBvbmVudDogJHtvcy5uYW1lfS8ke2FyY2hpdGVjdHVyZS5uYW1lfWApO1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgSW1hZ2VCdWlsZGVyQ29tcG9uZW50KHNjb3BlLCBpZCwge1xuICAgICAgcGxhdGZvcm06IHBsYXRmb3JtLFxuICAgICAgY29tbWFuZHM6IHRoaXMuZ2V0Q29tbWFuZHMob3MsIGFyY2hpdGVjdHVyZSksXG4gICAgICBhc3NldHM6IHRoaXMuZ2V0QXNzZXRzKG9zLCBhcmNoaXRlY3R1cmUpLm1hcCgoYXNzZXQsIGluZGV4KSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgYXNzZXQ6IG5ldyBzM19hc3NldHMuQXNzZXQoc2NvcGUsIGAke2lkfSBhc3NldCAke2luZGV4fWAsIHsgcGF0aDogYXNzZXQuc291cmNlIH0pLFxuICAgICAgICAgIHBhdGg6IGFzc2V0LnRhcmdldCxcbiAgICAgICAgfTtcbiAgICAgIH0pLFxuICAgICAgZGlzcGxheU5hbWU6IGlkLFxuICAgICAgZGVzY3JpcHRpb246IGlkLFxuICAgICAgcmVib290OiB0aGlzLnNob3VsZFJlYm9vdChvcywgYXJjaGl0ZWN0dXJlKSxcbiAgICB9KTtcbiAgfVxufVxuXG4iXX0=
@@ -54,6 +54,6 @@ class StaticRunnerImage {
54
54
  }
55
55
  }
56
56
  _a = JSII_RTTI_SYMBOL_1;
57
- StaticRunnerImage[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.StaticRunnerImage", version: "0.11.3" };
57
+ StaticRunnerImage[_a] = { fqn: "@cloudsnorkel/cdk-github-runners.StaticRunnerImage", version: "0.11.5" };
58
58
  exports.StaticRunnerImage = StaticRunnerImage;
59
59
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGljLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ltYWdlLWJ1aWxkZXJzL3N0YXRpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUVBLDJDQUEwRDtBQUUxRCw0Q0FBdUY7QUFFdkY7O0dBRUc7QUFDSCxNQUFhLGlCQUFpQjtJQUM1Qjs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLGlCQUFpQixDQUFDLFVBQTJCLEVBQUUsTUFBYyxRQUFRLEVBQUUsWUFBWSxHQUFHLHdCQUFZLENBQUMsTUFBTSxFQUFFLEVBQUUsR0FBRyxjQUFFLENBQUMsS0FBSztRQUNwSSxPQUFPO1lBQ0wsZUFBZTtnQkFDYixPQUFPO29CQUNMLGVBQWUsRUFBRSxVQUFVO29CQUMzQixRQUFRLEVBQUUsR0FBRztvQkFDYixZQUFZO29CQUNaLEVBQUU7b0JBQ0YsYUFBYSxFQUFFLHlCQUFhLENBQUMsTUFBTSxFQUFFO29CQUNyQyxXQUFXLEVBQUUsVUFBVSxDQUFDLGFBQWE7aUJBQ3RDLENBQUM7WUFDSixDQUFDO1lBRUQsT0FBTztnQkFDTCxNQUFNLElBQUksS0FBSyxDQUFDLGtEQUFrRCxDQUFDLENBQUM7WUFDdEUsQ0FBQztTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNJLE1BQU0sQ0FBQyxhQUFhLENBQUMsS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBYSxFQUFFLFlBQVksR0FBRyx3QkFBWSxDQUFDLE1BQU0sRUFBRSxFQUFFLEdBQUcsY0FBRSxDQUFDLEtBQUs7UUFDeEgsT0FBTyxJQUFJLHVDQUEyQixDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDaEQsRUFBRTtZQUNGLFlBQVk7WUFDWixlQUFlLEVBQUUsS0FBSztTQUN2QixDQUFDLENBQUM7SUFDTCxDQUFDOzs7O0FBN0NVLDhDQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGF3c19lY3IgYXMgZWNyIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBDb2RlQnVpbGRSdW5uZXJJbWFnZUJ1aWxkZXIgfSBmcm9tICcuL2NvZGVidWlsZCc7XG5pbXBvcnQgeyBJUnVubmVySW1hZ2VCdWlsZGVyIH0gZnJvbSAnLi9jb21tb24nO1xuaW1wb3J0IHsgQXJjaGl0ZWN0dXJlLCBPcywgUnVubmVyQW1pLCBSdW5uZXJJbWFnZSwgUnVubmVyVmVyc2lvbiB9IGZyb20gJy4uL3Byb3ZpZGVycyc7XG5cbi8qKlxuICogSGVscGVyIGNsYXNzIHdpdGggbWV0aG9kcyB0byB1c2Ugc3RhdGljIGltYWdlcyB0aGF0IGFyZSBidWlsdCBvdXRzaWRlIHRoZSBjb250ZXh0IG9mIHRoaXMgcHJvamVjdC5cbiAqL1xuZXhwb3J0IGNsYXNzIFN0YXRpY1J1bm5lckltYWdlIHtcbiAgLyoqXG4gICAqIENyZWF0ZSBhIGJ1aWxkZXIgKHRoYXQgZG9lc24ndCBhY3R1YWxseSBidWlsZCBhbnl0aGluZykgZnJvbSBhbiBleGlzdGluZyBpbWFnZSBpbiBhbiBleGlzdGluZyByZXBvc2l0b3J5LiBUaGUgaW1hZ2UgbXVzdCBhbHJlYWR5IGhhdmUgR2l0SHViIEFjdGlvbnMgcnVubmVyIGluc3RhbGxlZC4gWW91IGFyZSByZXNwb25zaWJsZSB0byB1cGRhdGUgaXQgYW5kIHJlbW92ZSBpdCB3aGVuIGRvbmUuXG4gICAqXG4gICAqIEBwYXJhbSByZXBvc2l0b3J5IEVDUiByZXBvc2l0b3J5XG4gICAqIEBwYXJhbSB0YWcgaW1hZ2UgdGFnXG4gICAqIEBwYXJhbSBhcmNoaXRlY3R1cmUgaW1hZ2UgYXJjaGl0ZWN0dXJlXG4gICAqIEBwYXJhbSBvcyBpbWFnZSBPU1xuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tRWNyUmVwb3NpdG9yeShyZXBvc2l0b3J5OiBlY3IuSVJlcG9zaXRvcnksIHRhZzogc3RyaW5nID0gJ2xhdGVzdCcsIGFyY2hpdGVjdHVyZSA9IEFyY2hpdGVjdHVyZS5YODZfNjQsIG9zID0gT3MuTElOVVgpOiBJUnVubmVySW1hZ2VCdWlsZGVyIHtcbiAgICByZXR1cm4ge1xuICAgICAgYmluZERvY2tlckltYWdlKCk6IFJ1bm5lckltYWdlIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBpbWFnZVJlcG9zaXRvcnk6IHJlcG9zaXRvcnksXG4gICAgICAgICAgaW1hZ2VUYWc6IHRhZyxcbiAgICAgICAgICBhcmNoaXRlY3R1cmUsXG4gICAgICAgICAgb3MsXG4gICAgICAgICAgcnVubmVyVmVyc2lvbjogUnVubmVyVmVyc2lvbi5sYXRlc3QoKSxcbiAgICAgICAgICBfZGVwZW5kYWJsZTogcmVwb3NpdG9yeS5yZXBvc2l0b3J5QXJuLFxuICAgICAgICB9O1xuICAgICAgfSxcblxuICAgICAgYmluZEFtaSgpOiBSdW5uZXJBbWkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ2Zyb21FY3JSZXBvc2l0b3J5KCkgY2Fubm90IGJlIHVzZWQgdG8gYnVpbGQgQU1JcycpO1xuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIGJ1aWxkZXIgZnJvbSBhbiBleGlzdGluZyBEb2NrZXIgSHViIGltYWdlLiBUaGUgaW1hZ2UgbXVzdCBhbHJlYWR5IGhhdmUgR2l0SHViIEFjdGlvbnMgcnVubmVyIGluc3RhbGxlZC4gWW91IGFyZSByZXNwb25zaWJsZSB0byB1cGRhdGUgaXQgYW5kIHJlbW92ZSBpdCB3aGVuIGRvbmUuXG4gICAqXG4gICAqIFdlIGNyZWF0ZSBhIENvZGVCdWlsZCBpbWFnZSBidWlsZGVyIGJlaGluZCB0aGUgc2NlbmVzIHRvIGNvcHkgdGhlIGltYWdlIG92ZXIgdG8gRUNSLiBUaGlzIGhlbHBzIGF2b2lkIERvY2tlciBIdWIgcmF0ZSBsaW1pdHMgYW5kIHByZXZlbnQgZmFpbHVyZXMuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZVxuICAgKiBAcGFyYW0gaWRcbiAgICogQHBhcmFtIGltYWdlIERvY2tlciBIdWIgaW1hZ2Ugd2l0aCBvcHRpb25hbCB0YWdcbiAgICogQHBhcmFtIGFyY2hpdGVjdHVyZSBpbWFnZSBhcmNoaXRlY3R1cmVcbiAgICogQHBhcmFtIG9zIGltYWdlIE9TXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21Eb2NrZXJIdWIoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgaW1hZ2U6IHN0cmluZywgYXJjaGl0ZWN0dXJlID0gQXJjaGl0ZWN0dXJlLlg4Nl82NCwgb3MgPSBPcy5MSU5VWCk6IElSdW5uZXJJbWFnZUJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgQ29kZUJ1aWxkUnVubmVySW1hZ2VCdWlsZGVyKHNjb3BlLCBpZCwge1xuICAgICAgb3MsXG4gICAgICBhcmNoaXRlY3R1cmUsXG4gICAgICBiYXNlRG9ja2VySW1hZ2U6IGltYWdlLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,25 +1,28 @@
1
1
  import { Octokit } from '@octokit/rest';
2
2
  export declare function baseUrlFromDomain(domain: string): string;
3
+ type RunnerLevel = 'repo' | 'org' | undefined;
3
4
  export interface GitHubSecrets {
4
5
  domain: string;
5
6
  appId: number;
6
7
  personalAuthToken: string;
8
+ runnerLevel: RunnerLevel;
7
9
  }
8
10
  export declare function getOctokit(installationId?: number): Promise<{
9
11
  octokit: Octokit;
10
- githubSecrets: any;
12
+ githubSecrets: GitHubSecrets;
11
13
  }>;
12
- interface GitHubRunner {
13
- readonly id: number;
14
- readonly name: string;
15
- readonly os: string;
16
- readonly status: string;
17
- readonly busy: boolean;
18
- readonly labels: {
19
- readonly id: number;
20
- readonly name: string;
21
- readonly type: string;
14
+ export declare function getRunner(octokit: Octokit, runnerLevel: RunnerLevel, owner: string, repo: string, name: string): Promise<{
15
+ id: number;
16
+ runner_group_id?: number | undefined;
17
+ name: string;
18
+ os: string;
19
+ status: string;
20
+ busy: boolean;
21
+ labels: {
22
+ id?: number | undefined;
23
+ name: string;
24
+ type?: "read-only" | "custom" | undefined;
22
25
  }[];
23
- }
24
- export declare function getRunner(octokit: any, owner: string, repo: string, name: string): Promise<GitHubRunner | undefined>;
26
+ } | undefined>;
27
+ export declare function deleteRunner(octokit: Octokit, runnerLevel: RunnerLevel, owner: string, repo: string, runnerId: number): Promise<void>;
25
28
  export {};
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getRunner = exports.getOctokit = exports.baseUrlFromDomain = void 0;
3
+ exports.deleteRunner = exports.getRunner = exports.getOctokit = exports.baseUrlFromDomain = void 0;
4
4
  const auth_app_1 = require("@octokit/auth-app");
5
5
  const rest_1 = require("@octokit/rest");
6
6
  const lambda_helpers_1 = require("./lambda-helpers");
@@ -67,14 +67,23 @@ async function getOctokit(installationId) {
67
67
  };
68
68
  }
69
69
  exports.getOctokit = getOctokit;
70
- async function getRunner(octokit, owner, repo, name) {
70
+ async function getRunner(octokit, runnerLevel, owner, repo, name) {
71
71
  let page = 1;
72
72
  while (true) {
73
- const runners = await octokit.request('GET /repos/{owner}/{repo}/actions/runners?per_page=100&page={page}', {
74
- page: page,
75
- owner: owner,
76
- repo: repo,
77
- });
73
+ let runners;
74
+ if ((runnerLevel ?? 'repo') === 'repo') {
75
+ runners = await octokit.rest.actions.listSelfHostedRunnersForRepo({
76
+ page: page,
77
+ owner: owner,
78
+ repo: repo,
79
+ });
80
+ }
81
+ else {
82
+ runners = await octokit.rest.actions.listSelfHostedRunnersForOrg({
83
+ page: page,
84
+ org: owner,
85
+ });
86
+ }
78
87
  if (runners.data.runners.length == 0) {
79
88
  return;
80
89
  }
@@ -87,4 +96,20 @@ async function getRunner(octokit, owner, repo, name) {
87
96
  }
88
97
  }
89
98
  exports.getRunner = getRunner;
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLWdpdGh1Yi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9sYW1iZGEtZ2l0aHViLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGdEQUFrRDtBQUNsRCx3Q0FBd0M7QUFDeEMscURBQXNFO0FBRXRFLFNBQWdCLGlCQUFpQixDQUFDLE1BQWM7SUFDOUMsSUFBSSxNQUFNLElBQUksWUFBWSxFQUFFO1FBQzFCLE9BQU8sd0JBQXdCLENBQUM7S0FDakM7SUFDRCxPQUFPLFdBQVcsTUFBTSxTQUFTLENBQUM7QUFDcEMsQ0FBQztBQUxELDhDQUtDO0FBUUQsTUFBTSxZQUFZLEdBSWQsRUFBRSxDQUFDO0FBRUEsS0FBSyxVQUFVLFVBQVUsQ0FBQyxjQUF1QjtJQUN0RCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLEVBQUU7UUFDaEYsTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO0tBQ2xEO0lBRUQsTUFBTSxhQUFhLEdBQWtCLE1BQU0sSUFBQSxtQ0FBa0IsRUFBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFN0YsSUFBSSxZQUFZLENBQUMsT0FBTyxJQUFJLFlBQVksQ0FBQyxjQUFjLElBQUksY0FBYyxJQUFJLFlBQVksQ0FBQyxPQUFPO1FBQy9GLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLGFBQWEsQ0FBQyxNQUFNLElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksYUFBYSxDQUFDLEtBQUs7UUFDeEcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsSUFBSSxhQUFhLENBQUMsaUJBQWlCLEVBQUU7UUFDM0UscUJBQXFCO1FBQ3JCLElBQUk7WUFDRixNQUFNLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNsRCxPQUFPLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFDcEMsT0FBTztnQkFDTCxPQUFPLEVBQUUsWUFBWSxDQUFDLE9BQU87Z0JBQzdCLGFBQWEsRUFBRSxZQUFZLENBQUMsT0FBTzthQUNwQyxDQUFDO1NBQ0g7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE9BQU8sQ0FBQyxHQUFHLENBQUMsMEJBQTBCLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDM0MsWUFBWSxDQUFDLE9BQU8sR0FBRyxTQUFTLENBQUM7U0FDbEM7S0FDRjtJQUVELElBQUksT0FBTyxHQUFHLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUV0RCxJQUFJLEtBQUssQ0FBQztJQUNWLElBQUksYUFBYSxDQUFDLGlCQUFpQixFQUFFO1FBQ25DLEtBQUssR0FBRyxhQUFhLENBQUMsaUJBQWlCLENBQUM7S0FDekM7U0FBTTtRQUNMLE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBQSwrQkFBYyxFQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLENBQUMsQ0FBQztRQUVuRixNQUFNLFVBQVUsR0FBRyxJQUFJLGNBQU8sQ0FBQztZQUM3QixPQUFPO1lBQ1AsWUFBWSxFQUFFLHdCQUFhO1lBQzNCLElBQUksRUFBRTtnQkFDSixLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUs7Z0JBQzFCLFVBQVUsRUFBRSxVQUFVO2FBQ3ZCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsS0FBSyxHQUFHLENBQUMsTUFBTSxVQUFVLENBQUMsSUFBSSxDQUFDO1lBQzdCLElBQUksRUFBRSxjQUFjO1lBQ3BCLGNBQWMsRUFBRSxjQUFjO1NBQy9CLENBQVMsQ0FBQSxDQUFDLEtBQUssQ0FBQztLQUNsQjtJQUVELE1BQU0sT0FBTyxHQUFHLElBQUksY0FBTyxDQUFDO1FBQzFCLE9BQU87UUFDUCxJQUFJLEVBQUUsS0FBSztLQUNaLENBQUMsQ0FBQztJQUVILFlBQVksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO0lBQy9CLFlBQVksQ0FBQyxjQUFjLEdBQUcsY0FBYyxDQUFDO0lBQzdDLFlBQVksQ0FBQyxPQUFPLEdBQUcsYUFBYSxDQUFDO0lBRXJDLE9BQU87UUFDTCxPQUFPO1FBQ1AsYUFBYTtLQUNkLENBQUM7QUFDSixDQUFDO0FBNURELGdDQTREQztBQWVNLEtBQUssVUFBVSxTQUFTLENBQUMsT0FBWSxFQUFFLEtBQWEsRUFBRSxJQUFZLEVBQUUsSUFBWTtJQUNyRixJQUFJLElBQUksR0FBRyxDQUFDLENBQUM7SUFDYixPQUFPLElBQUksRUFBRTtRQUNYLE1BQU0sT0FBTyxHQUFHLE1BQU0sT0FBTyxDQUFDLE9BQU8sQ0FBQyxvRUFBb0UsRUFBRTtZQUMxRyxJQUFJLEVBQUUsSUFBSTtZQUNWLEtBQUssRUFBRSxLQUFLO1lBQ1osSUFBSSxFQUFFLElBQUk7U0FDWCxDQUFDLENBQUM7UUFFSCxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLEVBQUU7WUFDcEMsT0FBTztTQUNSO1FBRUQsS0FBSyxNQUFNLE1BQU0sSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUN6QyxJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksSUFBSSxFQUFFO2dCQUN2QixPQUFPLE1BQU0sQ0FBQzthQUNmO1NBQ0Y7UUFFRCxJQUFJLEVBQUUsQ0FBQztLQUNSO0FBQ0gsQ0FBQztBQXJCRCw4QkFxQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVBcHBBdXRoIH0gZnJvbSAnQG9jdG9raXQvYXV0aC1hcHAnO1xuaW1wb3J0IHsgT2N0b2tpdCB9IGZyb20gJ0BvY3Rva2l0L3Jlc3QnO1xuaW1wb3J0IHsgZ2V0U2VjcmV0VmFsdWUsIGdldFNlY3JldEpzb25WYWx1ZSB9IGZyb20gJy4vbGFtYmRhLWhlbHBlcnMnO1xuXG5leHBvcnQgZnVuY3Rpb24gYmFzZVVybEZyb21Eb21haW4oZG9tYWluOiBzdHJpbmcpOiBzdHJpbmcge1xuICBpZiAoZG9tYWluID09ICdnaXRodWIuY29tJykge1xuICAgIHJldHVybiAnaHR0cHM6Ly9hcGkuZ2l0aHViLmNvbSc7XG4gIH1cbiAgcmV0dXJuIGBodHRwczovLyR7ZG9tYWlufS9hcGkvdjNgO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdpdEh1YlNlY3JldHMge1xuICBkb21haW46IHN0cmluZztcbiAgYXBwSWQ6IG51bWJlcjtcbiAgcGVyc29uYWxBdXRoVG9rZW46IHN0cmluZztcbn1cblxuY29uc3Qgb2N0b2tpdENhY2hlOiB7XG4gIGluc3RhbGxhdGlvbklkPzogbnVtYmVyO1xuICBzZWNyZXRzPzogR2l0SHViU2VjcmV0cztcbiAgb2N0b2tpdD86IE9jdG9raXQ7XG59ID0ge307XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRPY3Rva2l0KGluc3RhbGxhdGlvbklkPzogbnVtYmVyKTogUHJvbWlzZTx7IG9jdG9raXQ6IE9jdG9raXQ7IGdpdGh1YlNlY3JldHM6IGFueSB9PiB7XG4gIGlmICghcHJvY2Vzcy5lbnYuR0lUSFVCX1NFQ1JFVF9BUk4gfHwgIXByb2Nlc3MuZW52LkdJVEhVQl9QUklWQVRFX0tFWV9TRUNSRVRfQVJOKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIGVudmlyb25tZW50IHZhcmlhYmxlcycpO1xuICB9XG5cbiAgY29uc3QgZ2l0aHViU2VjcmV0czogR2l0SHViU2VjcmV0cyA9IGF3YWl0IGdldFNlY3JldEpzb25WYWx1ZShwcm9jZXNzLmVudi5HSVRIVUJfU0VDUkVUX0FSTik7XG5cbiAgaWYgKG9jdG9raXRDYWNoZS5vY3Rva2l0ICYmIG9jdG9raXRDYWNoZS5pbnN0YWxsYXRpb25JZCA9PSBpbnN0YWxsYXRpb25JZCAmJiBvY3Rva2l0Q2FjaGUuc2VjcmV0cyAmJlxuICAgIG9jdG9raXRDYWNoZS5zZWNyZXRzLmRvbWFpbiA9PSBnaXRodWJTZWNyZXRzLmRvbWFpbiAmJiBvY3Rva2l0Q2FjaGUuc2VjcmV0cy5hcHBJZCA9PSBnaXRodWJTZWNyZXRzLmFwcElkICYmXG4gICAgb2N0b2tpdENhY2hlLnNlY3JldHMucGVyc29uYWxBdXRoVG9rZW4gPT0gZ2l0aHViU2VjcmV0cy5wZXJzb25hbEF1dGhUb2tlbikge1xuICAgIC8vIHRlc3QgYW5kIHVzZSBjYWNoZVxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBvY3Rva2l0Q2FjaGUub2N0b2tpdC5yZXN0Lm1ldGEuZ2V0T2N0b2NhdCgpO1xuICAgICAgY29uc29sZS5sb2coJ1VzaW5nIGNhY2hlZCBvY3Rva2l0Jyk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBvY3Rva2l0OiBvY3Rva2l0Q2FjaGUub2N0b2tpdCxcbiAgICAgICAgZ2l0aHViU2VjcmV0czogb2N0b2tpdENhY2hlLnNlY3JldHMsXG4gICAgICB9O1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUubG9nKCdPY3Rva2l0IGNhY2hlIGlzIGludmFsaWQnLCBlKTtcbiAgICAgIG9jdG9raXRDYWNoZS5vY3Rva2l0ID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIGxldCBiYXNlVXJsID0gYmFzZVVybEZyb21Eb21haW4oZ2l0aHViU2VjcmV0cy5kb21haW4pO1xuXG4gIGxldCB0b2tlbjtcbiAgaWYgKGdpdGh1YlNlY3JldHMucGVyc29uYWxBdXRoVG9rZW4pIHtcbiAgICB0b2tlbiA9IGdpdGh1YlNlY3JldHMucGVyc29uYWxBdXRoVG9rZW47XG4gIH0gZWxzZSB7XG4gICAgY29uc3QgcHJpdmF0ZUtleSA9IGF3YWl0IGdldFNlY3JldFZhbHVlKHByb2Nlc3MuZW52LkdJVEhVQl9QUklWQVRFX0tFWV9TRUNSRVRfQVJOKTtcblxuICAgIGNvbnN0IGFwcE9jdG9raXQgPSBuZXcgT2N0b2tpdCh7XG4gICAgICBiYXNlVXJsLFxuICAgICAgYXV0aFN0cmF0ZWd5OiBjcmVhdGVBcHBBdXRoLFxuICAgICAgYXV0aDoge1xuICAgICAgICBhcHBJZDogZ2l0aHViU2VjcmV0cy5hcHBJZCxcbiAgICAgICAgcHJpdmF0ZUtleTogcHJpdmF0ZUtleSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICB0b2tlbiA9IChhd2FpdCBhcHBPY3Rva2l0LmF1dGgoe1xuICAgICAgdHlwZTogJ2luc3RhbGxhdGlvbicsXG4gICAgICBpbnN0YWxsYXRpb25JZDogaW5zdGFsbGF0aW9uSWQsXG4gICAgfSkgYXMgYW55KS50b2tlbjtcbiAgfVxuXG4gIGNvbnN0IG9jdG9raXQgPSBuZXcgT2N0b2tpdCh7XG4gICAgYmFzZVVybCxcbiAgICBhdXRoOiB0b2tlbixcbiAgfSk7XG5cbiAgb2N0b2tpdENhY2hlLm9jdG9raXQgPSBvY3Rva2l0O1xuICBvY3Rva2l0Q2FjaGUuaW5zdGFsbGF0aW9uSWQgPSBpbnN0YWxsYXRpb25JZDtcbiAgb2N0b2tpdENhY2hlLnNlY3JldHMgPSBnaXRodWJTZWNyZXRzO1xuXG4gIHJldHVybiB7XG4gICAgb2N0b2tpdCxcbiAgICBnaXRodWJTZWNyZXRzLFxuICB9O1xufVxuXG5pbnRlcmZhY2UgR2l0SHViUnVubmVyIHtcbiAgcmVhZG9ubHkgaWQ6IG51bWJlcjtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICByZWFkb25seSBvczogc3RyaW5nO1xuICByZWFkb25seSBzdGF0dXM6IHN0cmluZztcbiAgcmVhZG9ubHkgYnVzeTogYm9vbGVhbjtcbiAgcmVhZG9ubHkgbGFiZWxzOiB7XG4gICAgcmVhZG9ubHkgaWQ6IG51bWJlcjtcbiAgICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gICAgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xuICB9W107XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRSdW5uZXIob2N0b2tpdDogYW55LCBvd25lcjogc3RyaW5nLCByZXBvOiBzdHJpbmcsIG5hbWU6IHN0cmluZyk6IFByb21pc2U8R2l0SHViUnVubmVyIHwgdW5kZWZpbmVkPiB7XG4gIGxldCBwYWdlID0gMTtcbiAgd2hpbGUgKHRydWUpIHtcbiAgICBjb25zdCBydW5uZXJzID0gYXdhaXQgb2N0b2tpdC5yZXF1ZXN0KCdHRVQgL3JlcG9zL3tvd25lcn0ve3JlcG99L2FjdGlvbnMvcnVubmVycz9wZXJfcGFnZT0xMDAmcGFnZT17cGFnZX0nLCB7XG4gICAgICBwYWdlOiBwYWdlLFxuICAgICAgb3duZXI6IG93bmVyLFxuICAgICAgcmVwbzogcmVwbyxcbiAgICB9KTtcblxuICAgIGlmIChydW5uZXJzLmRhdGEucnVubmVycy5sZW5ndGggPT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgcnVubmVyIG9mIHJ1bm5lcnMuZGF0YS5ydW5uZXJzKSB7XG4gICAgICBpZiAocnVubmVyLm5hbWUgPT0gbmFtZSkge1xuICAgICAgICByZXR1cm4gcnVubmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIHBhZ2UrKztcbiAgfVxufVxuIl19
99
+ async function deleteRunner(octokit, runnerLevel, owner, repo, runnerId) {
100
+ if ((runnerLevel ?? 'repo') === 'repo') {
101
+ await octokit.rest.actions.deleteSelfHostedRunnerFromRepo({
102
+ owner: owner,
103
+ repo: repo,
104
+ runner_id: runnerId,
105
+ });
106
+ }
107
+ else {
108
+ await octokit.rest.actions.deleteSelfHostedRunnerFromOrg({
109
+ org: owner,
110
+ runner_id: runnerId,
111
+ });
112
+ }
113
+ }
114
+ exports.deleteRunner = deleteRunner;
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLWdpdGh1Yi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9sYW1iZGEtZ2l0aHViLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGdEQUFrRDtBQUNsRCx3Q0FBd0M7QUFDeEMscURBQXNFO0FBRXRFLFNBQWdCLGlCQUFpQixDQUFDLE1BQWM7SUFDOUMsSUFBSSxNQUFNLElBQUksWUFBWSxFQUFFO1FBQzFCLE9BQU8sd0JBQXdCLENBQUM7S0FDakM7SUFDRCxPQUFPLFdBQVcsTUFBTSxTQUFTLENBQUM7QUFDcEMsQ0FBQztBQUxELDhDQUtDO0FBV0QsTUFBTSxZQUFZLEdBSWQsRUFBRSxDQUFDO0FBRUEsS0FBSyxVQUFVLFVBQVUsQ0FBQyxjQUF1QjtJQUN0RCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsNkJBQTZCLEVBQUU7UUFDaEYsTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO0tBQ2xEO0lBRUQsTUFBTSxhQUFhLEdBQWtCLE1BQU0sSUFBQSxtQ0FBa0IsRUFBQyxPQUFPLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFFN0YsSUFBSSxZQUFZLENBQUMsT0FBTyxJQUFJLFlBQVksQ0FBQyxjQUFjLElBQUksY0FBYyxJQUFJLFlBQVksQ0FBQyxPQUFPO1FBQy9GLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxJQUFJLGFBQWEsQ0FBQyxNQUFNLElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxLQUFLLElBQUksYUFBYSxDQUFDLEtBQUs7UUFDeEcsWUFBWSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsSUFBSSxhQUFhLENBQUMsaUJBQWlCLEVBQUU7UUFDM0UscUJBQXFCO1FBQ3JCLElBQUk7WUFDRixNQUFNLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZ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LElBQVksRUFBRSxRQUFnQjtJQUMxSCxJQUFJLENBQUMsV0FBVyxJQUFJLE1BQU0sQ0FBQyxLQUFLLE1BQU0sRUFBRTtRQUN0QyxNQUFNLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLDhCQUE4QixDQUFDO1lBQ3hELEtBQUssRUFBRSxLQUFLO1lBQ1osSUFBSSxFQUFFLElBQUk7WUFDVixTQUFTLEVBQUUsUUFBUTtTQUNwQixDQUFDLENBQUM7S0FDSjtTQUFNO1FBQ0wsTUFBTSxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyw2QkFBNkIsQ0FBQztZQUN2RCxHQUFHLEVBQUUsS0FBSztZQUNWLFNBQVMsRUFBRSxRQUFRO1NBQ3BCLENBQUMsQ0FBQztLQUNKO0FBQ0gsQ0FBQztBQWJELG9DQWFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQXBwQXV0aCB9IGZyb20gJ0BvY3Rva2l0L2F1dGgtYXBwJztcbmltcG9ydCB7IE9jdG9raXQgfSBmcm9tICdAb2N0b2tpdC9yZXN0JztcbmltcG9ydCB7IGdldFNlY3JldFZhbHVlLCBnZXRTZWNyZXRKc29uVmFsdWUgfSBmcm9tICcuL2xhbWJkYS1oZWxwZXJzJztcblxuZXhwb3J0IGZ1bmN0aW9uIGJhc2VVcmxGcm9tRG9tYWluKGRvbWFpbjogc3RyaW5nKTogc3RyaW5nIHtcbiAgaWYgKGRvbWFpbiA9PSAnZ2l0aHViLmNvbScpIHtcbiAgICByZXR1cm4gJ2h0dHBzOi8vYXBpLmdpdGh1Yi5jb20nO1xuICB9XG4gIHJldHVybiBgaHR0cHM6Ly8ke2RvbWFpbn0vYXBpL3YzYDtcbn1cblxudHlwZSBSdW5uZXJMZXZlbCA9ICdyZXBvJyB8ICdvcmcnIHwgdW5kZWZpbmVkOyAvLyB1bmRlZmluZWQgaXMgZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IGFuZCBzaG91bGQgYmUgdHJlYXRlZCBhcyAncmVwbydcblxuZXhwb3J0IGludGVyZmFjZSBHaXRIdWJTZWNyZXRzIHtcbiAgZG9tYWluOiBzdHJpbmc7XG4gIGFwcElkOiBudW1iZXI7XG4gIHBlcnNvbmFsQXV0aFRva2VuOiBzdHJpbmc7XG4gIHJ1bm5lckxldmVsOiBSdW5uZXJMZXZlbDtcbn1cblxuY29uc3Qgb2N0b2tpdENhY2hlOiB7XG4gIGluc3RhbGxhdGlvbklkPzogbnVtYmVyO1xuICBzZWNyZXRzPzogR2l0SHViU2VjcmV0cztcbiAgb2N0b2tpdD86IE9jdG9raXQ7XG59ID0ge307XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRPY3Rva2l0KGluc3RhbGxhdGlvbklkPzogbnVtYmVyKTogUHJvbWlzZTx7IG9jdG9raXQ6IE9jdG9raXQ7IGdpdGh1YlNlY3JldHM6IEdpdEh1YlNlY3JldHMgfT4ge1xuICBpZiAoIXByb2Nlc3MuZW52LkdJVEhVQl9TRUNSRVRfQVJOIHx8ICFwcm9jZXNzLmVudi5HSVRIVUJfUFJJVkFURV9LRVlfU0VDUkVUX0FSTikge1xuICAgIHRocm93IG5ldyBFcnJvcignTWlzc2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMnKTtcbiAgfVxuXG4gIGNvbnN0IGdpdGh1YlNlY3JldHM6IEdpdEh1YlNlY3JldHMgPSBhd2FpdCBnZXRTZWNyZXRKc29uVmFsdWUocHJvY2Vzcy5lbnYuR0lUSFVCX1NFQ1JFVF9BUk4pO1xuXG4gIGlmIChvY3Rva2l0Q2FjaGUub2N0b2tpdCAmJiBvY3Rva2l0Q2FjaGUuaW5zdGFsbGF0aW9uSWQgPT0gaW5zdGFsbGF0aW9uSWQgJiYgb2N0b2tpdENhY2hlLnNlY3JldHMgJiZcbiAgICBvY3Rva2l0Q2FjaGUuc2VjcmV0cy5kb21haW4gPT0gZ2l0aHViU2VjcmV0cy5kb21haW4gJiYgb2N0b2tpdENhY2hlLnNlY3JldHMuYXBwSWQgPT0gZ2l0aHViU2VjcmV0cy5hcHBJZCAmJlxuICAgIG9jdG9raXRDYWNoZS5zZWNyZXRzLnBlcnNvbmFsQXV0aFRva2VuID09IGdpdGh1YlNlY3JldHMucGVyc29uYWxBdXRoVG9rZW4pIHtcbiAgICAvLyB0ZXN0IGFuZCB1c2UgY2FjaGVcbiAgICB0cnkge1xuICAgICAgYXdhaXQgb2N0b2tpdENhY2hlLm9jdG9raXQucmVzdC5tZXRhLmdldE9jdG9jYXQoKTtcbiAgICAgIGNvbnNvbGUubG9nKCdVc2luZyBjYWNoZWQgb2N0b2tpdCcpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgb2N0b2tpdDogb2N0b2tpdENhY2hlLm9jdG9raXQsXG4gICAgICAgIGdpdGh1YlNlY3JldHM6IG9jdG9raXRDYWNoZS5zZWNyZXRzLFxuICAgICAgfTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBjb25zb2xlLmxvZygnT2N0b2tpdCBjYWNoZSBpcyBpbnZhbGlkJywgZSk7XG4gICAgICBvY3Rva2l0Q2FjaGUub2N0b2tpdCA9IHVuZGVmaW5lZDtcbiAgICB9XG4gIH1cblxuICBsZXQgYmFzZVVybCA9IGJhc2VVcmxGcm9tRG9tYWluKGdpdGh1YlNlY3JldHMuZG9tYWluKTtcblxuICBsZXQgdG9rZW47XG4gIGlmIChnaXRodWJTZWNyZXRzLnBlcnNvbmFsQXV0aFRva2VuKSB7XG4gICAgdG9rZW4gPSBnaXRodWJTZWNyZXRzLnBlcnNvbmFsQXV0aFRva2VuO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IHByaXZhdGVLZXkgPSBhd2FpdCBnZXRTZWNyZXRWYWx1ZShwcm9jZXNzLmVudi5HSVRIVUJfUFJJVkFURV9LRVlfU0VDUkVUX0FSTik7XG5cbiAgICBjb25zdCBhcHBPY3Rva2l0ID0gbmV3IE9jdG9raXQoe1xuICAgICAgYmFzZVVybCxcbiAgICAgIGF1dGhTdHJhdGVneTogY3JlYXRlQXBwQXV0aCxcbiAgICAgIGF1dGg6IHtcbiAgICAgICAgYXBwSWQ6IGdpdGh1YlNlY3JldHMuYXBwSWQsXG4gICAgICAgIHByaXZhdGVLZXk6IHByaXZhdGVLZXksXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgdG9rZW4gPSAoYXdhaXQgYXBwT2N0b2tpdC5hdXRoKHtcbiAgICAgIHR5cGU6ICdpbnN0YWxsYXRpb24nLFxuICAgICAgaW5zdGFsbGF0aW9uSWQ6IGluc3RhbGxhdGlvbklkLFxuICAgIH0pIGFzIGFueSkudG9rZW47XG4gIH1cblxuICBjb25zdCBvY3Rva2l0ID0gbmV3IE9jdG9raXQoe1xuICAgIGJhc2VVcmwsXG4gICAgYXV0aDogdG9rZW4sXG4gIH0pO1xuXG4gIG9jdG9raXRDYWNoZS5vY3Rva2l0ID0gb2N0b2tpdDtcbiAgb2N0b2tpdENhY2hlLmluc3RhbGxhdGlvbklkID0gaW5zdGFsbGF0aW9uSWQ7XG4gIG9jdG9raXRDYWNoZS5zZWNyZXRzID0gZ2l0aHViU2VjcmV0cztcblxuICByZXR1cm4ge1xuICAgIG9jdG9raXQsXG4gICAgZ2l0aHViU2VjcmV0cyxcbiAgfTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFJ1bm5lcihvY3Rva2l0OiBPY3Rva2l0LCBydW5uZXJMZXZlbDogUnVubmVyTGV2ZWwsIG93bmVyOiBzdHJpbmcsIHJlcG86IHN0cmluZywgbmFtZTogc3RyaW5nKSB7XG4gIGxldCBwYWdlID0gMTtcbiAgd2hpbGUgKHRydWUpIHtcbiAgICBsZXQgcnVubmVycztcblxuICAgIGlmICgocnVubmVyTGV2ZWwgPz8gJ3JlcG8nKSA9PT0gJ3JlcG8nKSB7XG4gICAgICBydW5uZXJzID0gYXdhaXQgb2N0b2tpdC5yZXN0LmFjdGlvbnMubGlzdFNlbGZIb3N0ZWRSdW5uZXJzRm9yUmVwbyh7XG4gICAgICAgIHBhZ2U6IHBhZ2UsXG4gICAgICAgIG93bmVyOiBvd25lcixcbiAgICAgICAgcmVwbzogcmVwbyxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBydW5uZXJzID0gYXdhaXQgb2N0b2tpdC5yZXN0LmFjdGlvbnMubGlzdFNlbGZIb3N0ZWRSdW5uZXJzRm9yT3JnKHtcbiAgICAgICAgcGFnZTogcGFnZSxcbiAgICAgICAgb3JnOiBvd25lcixcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChydW5uZXJzLmRhdGEucnVubmVycy5sZW5ndGggPT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgcnVubmVyIG9mIHJ1bm5lcnMuZGF0YS5ydW5uZXJzKSB7XG4gICAgICBpZiAocnVubmVyLm5hbWUgPT0gbmFtZSkge1xuICAgICAgICByZXR1cm4gcnVubmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIHBhZ2UrKztcbiAgfVxufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVsZXRlUnVubmVyKG9jdG9raXQ6IE9jdG9raXQsIHJ1bm5lckxldmVsOiBSdW5uZXJMZXZlbCwgb3duZXI6IHN0cmluZywgcmVwbzogc3RyaW5nLCBydW5uZXJJZDogbnVtYmVyKSB7XG4gIGlmICgocnVubmVyTGV2ZWwgPz8gJ3JlcG8nKSA9PT0gJ3JlcG8nKSB7XG4gICAgYXdhaXQgb2N0b2tpdC5yZXN0LmFjdGlvbnMuZGVsZXRlU2VsZkhvc3RlZFJ1bm5lckZyb21SZXBvKHtcbiAgICAgIG93bmVyOiBvd25lcixcbiAgICAgIHJlcG86IHJlcG8sXG4gICAgICBydW5uZXJfaWQ6IHJ1bm5lcklkLFxuICAgIH0pO1xuICB9IGVsc2Uge1xuICAgIGF3YWl0IG9jdG9raXQucmVzdC5hY3Rpb25zLmRlbGV0ZVNlbGZIb3N0ZWRSdW5uZXJGcm9tT3JnKHtcbiAgICAgIG9yZzogb3duZXIsXG4gICAgICBydW5uZXJfaWQ6IHJ1bm5lcklkLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.customResourceRespond = exports.updateSecretValue = exports.getSecretJsonValue = exports.getSecretValue = void 0;
4
- const AWS = require("aws-sdk");
5
- const sm = new AWS.SecretsManager();
4
+ const client_secrets_manager_1 = require("@aws-sdk/client-secrets-manager");
5
+ const sm = new client_secrets_manager_1.SecretsManagerClient();
6
6
  async function getSecretValue(arn) {
7
7
  if (!arn) {
8
8
  throw new Error('Missing secret ARN');
9
9
  }
10
- const secret = await sm.getSecretValue({ SecretId: arn }).promise();
10
+ const secret = await sm.send(new client_secrets_manager_1.GetSecretValueCommand({ SecretId: arn }));
11
11
  if (!secret.SecretString) {
12
12
  throw new Error(`No SecretString in ${arn}`);
13
13
  }
@@ -22,7 +22,7 @@ async function updateSecretValue(arn, value) {
22
22
  if (!arn) {
23
23
  throw new Error('Missing secret ARN');
24
24
  }
25
- await sm.updateSecret({ SecretId: arn, SecretString: value }).promise();
25
+ await sm.send(new client_secrets_manager_1.UpdateSecretCommand({ SecretId: arn, SecretString: value }));
26
26
  }
27
27
  exports.updateSecretValue = updateSecretValue;
28
28
  async function customResourceRespond(event, responseStatus, reason, physicalResourceId, data) {
@@ -62,4 +62,4 @@ async function customResourceRespond(event, responseStatus, reason, physicalReso
62
62
  });
63
63
  }
64
64
  exports.customResourceRespond = customResourceRespond;
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLWhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbGFtYmRhLWhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsK0JBQStCO0FBYy9CLE1BQU0sRUFBRSxHQUFHLElBQUksR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO0FBRTdCLEtBQUssVUFBVSxjQUFjLENBQUMsR0FBdUI7SUFDMUQsSUFBSSxDQUFDLEdBQUcsRUFBRTtRQUNSLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztLQUN2QztJQUVELE1BQU0sTUFBTSxHQUFHLE1BQU0sRUFBRSxDQUFDLGNBQWMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBRXBFLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFO1FBQ3hCLE1BQU0sSUFBSSxLQUFLLENBQUMsc0JBQXNCLEdBQUcsRUFBRSxDQUFDLENBQUM7S0FDOUM7SUFFRCxPQUFPLE1BQU0sQ0FBQyxZQUFZLENBQUM7QUFDN0IsQ0FBQztBQVpELHdDQVlDO0FBRU0sS0FBSyxVQUFVLGtCQUFrQixDQUFDLEdBQXVCO0lBQzlELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQy9DLENBQUM7QUFGRCxnREFFQztBQUVNLEtBQUssVUFBVSxpQkFBaUIsQ0FBQyxHQUF1QixFQUFFLEtBQWE7SUFDNUUsSUFBSSxDQUFDLEdBQUcsRUFBRTtRQUNSLE1BQU0sSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQztLQUN2QztJQUVELE1BQU0sRUFBRSxDQUFDLFlBQVksQ0FBQyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7QUFDMUUsQ0FBQztBQU5ELDhDQU1DO0FBRU0sS0FBSyxVQUFVLHFCQUFxQixDQUFDLEtBQWtELEVBQUUsY0FBc0IsRUFDcEgsTUFBYyxFQUFFLGtCQUEwQixFQUFFLElBQVM7SUFDckQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNsQyxNQUFNLEVBQUUsY0FBYztRQUN0QixNQUFNLEVBQUUsTUFBTTtRQUNkLGtCQUFrQixFQUFFLGtCQUFrQjtRQUN0QyxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87UUFDdEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1FBQzFCLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxpQkFBaUI7UUFDMUMsTUFBTSxFQUFFLEtBQUs7UUFDYixJQUFJLEVBQUUsSUFBSTtLQUNYLENBQUMsQ0FBQztJQUVILE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBRXhDLGlFQUFpRTtJQUNqRSxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMxRCxNQUFNLGNBQWMsR0FBRztRQUNyQixRQUFRLEVBQUUsU0FBUyxDQUFDLFFBQVE7UUFDNUIsSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJO1FBQ3BCLE1BQU0sRUFBRSxLQUFLO1FBQ2IsT0FBTyxFQUFFO1lBQ1AsY0FBYyxFQUFFLEVBQUU7WUFDbEIsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDLE1BQU07U0FDdEM7S0FDRixDQUFDO0lBRUYsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUNyQyxJQUFJO1lBQ0YsaUVBQWlFO1lBQ2pFLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2xFLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzVCLE9BQU8sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDNUIsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1NBQ2Y7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNYO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBdENELHNEQXNDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEFXUyBmcm9tICdhd3Mtc2RrJztcblxuZXhwb3J0IGludGVyZmFjZSBTdGVwRnVuY3Rpb25MYW1iZGFJbnB1dCB7XG4gIHJlYWRvbmx5IG93bmVyOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJlcG86IHN0cmluZztcbiAgcmVhZG9ubHkgcnVubmVyTmFtZTogc3RyaW5nO1xuICByZWFkb25seSBpbnN0YWxsYXRpb25JZD86IG51bWJlcjtcbiAgcmVhZG9ubHkgbGFiZWxzOiBzdHJpbmdbXTtcbiAgcmVhZG9ubHkgZXJyb3I/OiB7XG4gICAgcmVhZG9ubHkgRXJyb3I6IHN0cmluZztcbiAgICByZWFkb25seSBDYXVzZTogc3RyaW5nO1xuICB9O1xufVxuXG5jb25zdCBzbSA9IG5ldyBBV1MuU2VjcmV0c01hbmFnZXIoKTtcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFNlY3JldFZhbHVlKGFybjogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gIGlmICghYXJuKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIHNlY3JldCBBUk4nKTtcbiAgfVxuXG4gIGNvbnN0IHNlY3JldCA9IGF3YWl0IHNtLmdldFNlY3JldFZhbHVlKHsgU2VjcmV0SWQ6IGFybiB9KS5wcm9taXNlKCk7XG5cbiAgaWYgKCFzZWNyZXQuU2VjcmV0U3RyaW5nKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBObyBTZWNyZXRTdHJpbmcgaW4gJHthcm59YCk7XG4gIH1cblxuICByZXR1cm4gc2VjcmV0LlNlY3JldFN0cmluZztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFNlY3JldEpzb25WYWx1ZShhcm46IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICByZXR1cm4gSlNPTi5wYXJzZShhd2FpdCBnZXRTZWNyZXRWYWx1ZShhcm4pKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZVNlY3JldFZhbHVlKGFybjogc3RyaW5nIHwgdW5kZWZpbmVkLCB2YWx1ZTogc3RyaW5nKSB7XG4gIGlmICghYXJuKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIHNlY3JldCBBUk4nKTtcbiAgfVxuXG4gIGF3YWl0IHNtLnVwZGF0ZVNlY3JldCh7IFNlY3JldElkOiBhcm4sIFNlY3JldFN0cmluZzogdmFsdWUgfSkucHJvbWlzZSgpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY3VzdG9tUmVzb3VyY2VSZXNwb25kKGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUV2ZW50LCByZXNwb25zZVN0YXR1czogc3RyaW5nLFxuICByZWFzb246IHN0cmluZywgcGh5c2ljYWxSZXNvdXJjZUlkOiBzdHJpbmcsIGRhdGE6IGFueSkge1xuICBjb25zdCByZXNwb25zZUJvZHkgPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgU3RhdHVzOiByZXNwb25zZVN0YXR1cyxcbiAgICBSZWFzb246IHJlYXNvbixcbiAgICBQaHlzaWNhbFJlc291cmNlSWQ6IHBoeXNpY2FsUmVzb3VyY2VJZCxcbiAgICBTdGFja0lkOiBldmVudC5TdGFja0lkLFxuICAgIFJlcXVlc3RJZDogZXZlbnQuUmVxdWVzdElkLFxuICAgIExvZ2ljYWxSZXNvdXJjZUlkOiBldmVudC5Mb2dpY2FsUmVzb3VyY2VJZCxcbiAgICBOb0VjaG86IGZhbHNlLFxuICAgIERhdGE6IGRhdGEsXG4gIH0pO1xuXG4gIGNvbnNvbGUubG9nKCdSZXNwb25kaW5nJywgcmVzcG9uc2VCb2R5KTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXJlcXVpcmUtaW1wb3J0c1xuICBjb25zdCBwYXJzZWRVcmwgPSByZXF1aXJlKCd1cmwnKS5wYXJzZShldmVudC5SZXNwb25zZVVSTCk7XG4gIGNvbnN0IHJlcXVlc3RPcHRpb25zID0ge1xuICAgIGhvc3RuYW1lOiBwYXJzZWRVcmwuaG9zdG5hbWUsXG4gICAgcGF0aDogcGFyc2VkVXJsLnBhdGgsXG4gICAgbWV0aG9kOiAnUFVUJyxcbiAgICBoZWFkZXJzOiB7XG4gICAgICAnY29udGVudC10eXBlJzogJycsXG4gICAgICAnY29udGVudC1sZW5ndGgnOiByZXNwb25zZUJvZHkubGVuZ3RoLFxuICAgIH0sXG4gIH07XG5cbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICB0cnkge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbiAgICAgIGNvbnN0IHJlcXVlc3QgPSByZXF1aXJlKCdodHRwcycpLnJlcXVlc3QocmVxdWVzdE9wdGlvbnMsIHJlc29sdmUpO1xuICAgICAgcmVxdWVzdC5vbignZXJyb3InLCByZWplY3QpO1xuICAgICAgcmVxdWVzdC53cml0ZShyZXNwb25zZUJvZHkpO1xuICAgICAgcmVxdWVzdC5lbmQoKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZWplY3QoZSk7XG4gICAgfVxuICB9KTtcbn1cbiJdfQ==
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLWhlbHBlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbGFtYmRhLWhlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNEVBQW1IO0FBY25ILE1BQU0sRUFBRSxHQUFHLElBQUksNkNBQW9CLEVBQUUsQ0FBQztBQUUvQixLQUFLLFVBQVUsY0FBYyxDQUFDLEdBQXVCO0lBQzFELElBQUksQ0FBQyxHQUFHLEVBQUU7UUFDUixNQUFNLElBQUksS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7S0FDdkM7SUFFRCxNQUFNLE1BQU0sR0FBRyxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSw4Q0FBcUIsQ0FBQyxFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFM0UsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUU7UUFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQkFBc0IsR0FBRyxFQUFFLENBQUMsQ0FBQztLQUM5QztJQUVELE9BQU8sTUFBTSxDQUFDLFlBQVksQ0FBQztBQUM3QixDQUFDO0FBWkQsd0NBWUM7QUFFTSxLQUFLLFVBQVUsa0JBQWtCLENBQUMsR0FBdUI7SUFDOUQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDL0MsQ0FBQztBQUZELGdEQUVDO0FBRU0sS0FBSyxVQUFVLGlCQUFpQixDQUFDLEdBQXVCLEVBQUUsS0FBYTtJQUM1RSxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ1IsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0tBQ3ZDO0lBRUQsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksNENBQW1CLENBQUMsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDakYsQ0FBQztBQU5ELDhDQU1DO0FBRU0sS0FBSyxVQUFVLHFCQUFxQixDQUFDLEtBQWtELEVBQUUsY0FBc0IsRUFDcEgsTUFBYyxFQUFFLGtCQUEwQixFQUFFLElBQVM7SUFDckQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNsQyxNQUFNLEVBQUUsY0FBYztRQUN0QixNQUFNLEVBQUUsTUFBTTtRQUNkLGtCQUFrQixFQUFFLGtCQUFrQjtRQUN0QyxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87UUFDdEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1FBQzFCLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxpQkFBaUI7UUFDMUMsTUFBTSxFQUFFLEtBQUs7UUFDYixJQUFJLEVBQUUsSUFBSTtLQUNYLENBQUMsQ0FBQztJQUVILE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBRXhDLGlFQUFpRTtJQUNqRSxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUMxRCxNQUFNLGNBQWMsR0FBRztRQUNyQixRQUFRLEVBQUUsU0FBUyxDQUFDLFFBQVE7UUFDNUIsSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJO1FBQ3BCLE1BQU0sRUFBRSxLQUFLO1FBQ2IsT0FBTyxFQUFFO1lBQ1AsY0FBYyxFQUFFLEVBQUU7WUFDbEIsZ0JBQWdCLEVBQUUsWUFBWSxDQUFDLE1BQU07U0FDdEM7S0FDRixDQUFDO0lBRUYsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUNyQyxJQUFJO1lBQ0YsaUVBQWlFO1lBQ2pFLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2xFLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQzVCLE9BQU8sQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7WUFDNUIsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDO1NBQ2Y7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNYO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBdENELHNEQXNDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlY3JldHNNYW5hZ2VyQ2xpZW50LCBHZXRTZWNyZXRWYWx1ZUNvbW1hbmQsIFVwZGF0ZVNlY3JldENvbW1hbmQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtc2VjcmV0cy1tYW5hZ2VyJztcblxuZXhwb3J0IGludGVyZmFjZSBTdGVwRnVuY3Rpb25MYW1iZGFJbnB1dCB7XG4gIHJlYWRvbmx5IG93bmVyOiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJlcG86IHN0cmluZztcbiAgcmVhZG9ubHkgcnVubmVyTmFtZTogc3RyaW5nO1xuICByZWFkb25seSBpbnN0YWxsYXRpb25JZD86IG51bWJlcjtcbiAgcmVhZG9ubHkgbGFiZWxzOiBzdHJpbmdbXTtcbiAgcmVhZG9ubHkgZXJyb3I/OiB7XG4gICAgcmVhZG9ubHkgRXJyb3I6IHN0cmluZztcbiAgICByZWFkb25seSBDYXVzZTogc3RyaW5nO1xuICB9O1xufVxuXG5jb25zdCBzbSA9IG5ldyBTZWNyZXRzTWFuYWdlckNsaWVudCgpO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0U2VjcmV0VmFsdWUoYXJuOiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgaWYgKCFhcm4pIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01pc3Npbmcgc2VjcmV0IEFSTicpO1xuICB9XG5cbiAgY29uc3Qgc2VjcmV0ID0gYXdhaXQgc20uc2VuZChuZXcgR2V0U2VjcmV0VmFsdWVDb21tYW5kKHsgU2VjcmV0SWQ6IGFybiB9KSk7XG5cbiAgaWYgKCFzZWNyZXQuU2VjcmV0U3RyaW5nKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBObyBTZWNyZXRTdHJpbmcgaW4gJHthcm59YCk7XG4gIH1cblxuICByZXR1cm4gc2VjcmV0LlNlY3JldFN0cmluZztcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFNlY3JldEpzb25WYWx1ZShhcm46IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICByZXR1cm4gSlNPTi5wYXJzZShhd2FpdCBnZXRTZWNyZXRWYWx1ZShhcm4pKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZVNlY3JldFZhbHVlKGFybjogc3RyaW5nIHwgdW5kZWZpbmVkLCB2YWx1ZTogc3RyaW5nKSB7XG4gIGlmICghYXJuKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIHNlY3JldCBBUk4nKTtcbiAgfVxuXG4gIGF3YWl0IHNtLnNlbmQobmV3IFVwZGF0ZVNlY3JldENvbW1hbmQoeyBTZWNyZXRJZDogYXJuLCBTZWNyZXRTdHJpbmc6IHZhbHVlIH0pKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudDogQVdTTGFtYmRhLkNsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VFdmVudCwgcmVzcG9uc2VTdGF0dXM6IHN0cmluZyxcbiAgcmVhc29uOiBzdHJpbmcsIHBoeXNpY2FsUmVzb3VyY2VJZDogc3RyaW5nLCBkYXRhOiBhbnkpIHtcbiAgY29uc3QgcmVzcG9uc2VCb2R5ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgIFN0YXR1czogcmVzcG9uc2VTdGF0dXMsXG4gICAgUmVhc29uOiByZWFzb24sXG4gICAgUGh5c2ljYWxSZXNvdXJjZUlkOiBwaHlzaWNhbFJlc291cmNlSWQsXG4gICAgU3RhY2tJZDogZXZlbnQuU3RhY2tJZCxcbiAgICBSZXF1ZXN0SWQ6IGV2ZW50LlJlcXVlc3RJZCxcbiAgICBMb2dpY2FsUmVzb3VyY2VJZDogZXZlbnQuTG9naWNhbFJlc291cmNlSWQsXG4gICAgTm9FY2hvOiBmYWxzZSxcbiAgICBEYXRhOiBkYXRhLFxuICB9KTtcblxuICBjb25zb2xlLmxvZygnUmVzcG9uZGluZycsIHJlc3BvbnNlQm9keSk7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbiAgY29uc3QgcGFyc2VkVXJsID0gcmVxdWlyZSgndXJsJykucGFyc2UoZXZlbnQuUmVzcG9uc2VVUkwpO1xuICBjb25zdCByZXF1ZXN0T3B0aW9ucyA9IHtcbiAgICBob3N0bmFtZTogcGFyc2VkVXJsLmhvc3RuYW1lLFxuICAgIHBhdGg6IHBhcnNlZFVybC5wYXRoLFxuICAgIG1ldGhvZDogJ1BVVCcsXG4gICAgaGVhZGVyczoge1xuICAgICAgJ2NvbnRlbnQtdHlwZSc6ICcnLFxuICAgICAgJ2NvbnRlbnQtbGVuZ3RoJzogcmVzcG9uc2VCb2R5Lmxlbmd0aCxcbiAgICB9LFxuICB9O1xuXG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgdHJ5IHtcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVxdWlyZS1pbXBvcnRzXG4gICAgICBjb25zdCByZXF1ZXN0ID0gcmVxdWlyZSgnaHR0cHMnKS5yZXF1ZXN0KHJlcXVlc3RPcHRpb25zLCByZXNvbHZlKTtcbiAgICAgIHJlcXVlc3Qub24oJ2Vycm9yJywgcmVqZWN0KTtcbiAgICAgIHJlcXVlc3Qud3JpdGUocmVzcG9uc2VCb2R5KTtcbiAgICAgIHJlcXVlc3QuZW5kKCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgcmVqZWN0KGUpO1xuICAgIH1cbiAgfSk7XG59XG4iXX0=
@@ -12,7 +12,7 @@ class AmiRootDeviceFunction extends lambda.Function {
12
12
  super(scope, id, {
13
13
  description: 'src/providers/ami-root-device.lambda.ts',
14
14
  ...props,
15
- runtime: new lambda.Runtime('nodejs16.x', lambda.RuntimeFamily.NODEJS),
15
+ runtime: new lambda.Runtime('nodejs18.x', lambda.RuntimeFamily.NODEJS),
16
16
  handler: 'index.handler',
17
17
  code: lambda.Code.fromAsset(path.join(__dirname, '../../assets/providers/ami-root-device.lambda')),
18
18
  });
@@ -20,4 +20,4 @@ class AmiRootDeviceFunction extends lambda.Function {
20
20
  }
21
21
  }
22
22
  exports.AmiRootDeviceFunction = AmiRootDeviceFunction;
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1pLXJvb3QtZGV2aWNlLWZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb3ZpZGVycy9hbWktcm9vdC1kZXZpY2UtZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkVBQTZFO0FBQzdFLDZCQUE2QjtBQUM3QixpREFBaUQ7QUFTakQ7O0dBRUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLE1BQU0sQ0FBQyxRQUFRO0lBQ3hELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBa0M7UUFDMUUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixXQUFXLEVBQUUseUNBQXlDO1lBQ3RELEdBQUcsS0FBSztZQUNSLE9BQU8sRUFBRSxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDO1lBQ3RFLE9BQU8sRUFBRSxlQUFlO1lBQ3hCLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSwrQ0FBK0MsQ0FBQyxDQUFDO1NBQ25HLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxjQUFjLENBQUMscUNBQXFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUYsQ0FBQztDQUNGO0FBWEQsc0RBV0MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB+fiBHZW5lcmF0ZWQgYnkgcHJvamVuLiBUbyBtb2RpZnksIGVkaXQgLnByb2plbnJjLmpzIGFuZCBydW4gXCJucHggcHJvamVuXCIuXG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbi8qKlxuICogUHJvcHMgZm9yIEFtaVJvb3REZXZpY2VGdW5jdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFtaVJvb3REZXZpY2VGdW5jdGlvblByb3BzIGV4dGVuZHMgbGFtYmRhLkZ1bmN0aW9uT3B0aW9ucyB7XG59XG5cbi8qKlxuICogQW4gQVdTIExhbWJkYSBmdW5jdGlvbiB3aGljaCBleGVjdXRlcyBzcmMvcHJvdmlkZXJzL2FtaS1yb290LWRldmljZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEFtaVJvb3REZXZpY2VGdW5jdGlvbiBleHRlbmRzIGxhbWJkYS5GdW5jdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogQW1pUm9vdERldmljZUZ1bmN0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnc3JjL3Byb3ZpZGVycy9hbWktcm9vdC1kZXZpY2UubGFtYmRhLnRzJyxcbiAgICAgIC4uLnByb3BzLFxuICAgICAgcnVudGltZTogbmV3IGxhbWJkYS5SdW50aW1lKCdub2RlanMxNi54JywgbGFtYmRhLlJ1bnRpbWVGYW1pbHkuTk9ERUpTKSxcbiAgICAgIGhhbmRsZXI6ICdpbmRleC5oYW5kbGVyJyxcbiAgICAgIGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4vLi4vYXNzZXRzL3Byb3ZpZGVycy9hbWktcm9vdC1kZXZpY2UubGFtYmRhJykpLFxuICAgIH0pO1xuICAgIHRoaXMuYWRkRW52aXJvbm1lbnQoJ0FXU19OT0RFSlNfQ09OTkVDVElPTl9SRVVTRV9FTkFCTEVEJywgJzEnLCB7IHJlbW92ZUluRWRnZTogdHJ1ZSB9KTtcbiAgfVxufSJdfQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1pLXJvb3QtZGV2aWNlLWZ1bmN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb3ZpZGVycy9hbWktcm9vdC1kZXZpY2UtZnVuY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkVBQTZFO0FBQzdFLDZCQUE2QjtBQUM3QixpREFBaUQ7QUFTakQ7O0dBRUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLE1BQU0sQ0FBQyxRQUFRO0lBQ3hELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBa0M7UUFDMUUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixXQUFXLEVBQUUseUNBQXlDO1lBQ3RELEdBQUcsS0FBSztZQUNSLE9BQU8sRUFBRSxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDO1lBQ3RFLE9BQU8sRUFBRSxlQUFlO1lBQ3hCLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSwrQ0FBK0MsQ0FBQyxDQUFDO1NBQ25HLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxjQUFjLENBQUMscUNBQXFDLEVBQUUsR0FBRyxFQUFFLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDMUYsQ0FBQztDQUNGO0FBWEQsc0RBV0MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB+fiBHZW5lcmF0ZWQgYnkgcHJvamVuLiBUbyBtb2RpZnksIGVkaXQgLnByb2plbnJjLmpzIGFuZCBydW4gXCJucHggcHJvamVuXCIuXG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbi8qKlxuICogUHJvcHMgZm9yIEFtaVJvb3REZXZpY2VGdW5jdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFtaVJvb3REZXZpY2VGdW5jdGlvblByb3BzIGV4dGVuZHMgbGFtYmRhLkZ1bmN0aW9uT3B0aW9ucyB7XG59XG5cbi8qKlxuICogQW4gQVdTIExhbWJkYSBmdW5jdGlvbiB3aGljaCBleGVjdXRlcyBzcmMvcHJvdmlkZXJzL2FtaS1yb290LWRldmljZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEFtaVJvb3REZXZpY2VGdW5jdGlvbiBleHRlbmRzIGxhbWJkYS5GdW5jdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogQW1pUm9vdERldmljZUZ1bmN0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnc3JjL3Byb3ZpZGVycy9hbWktcm9vdC1kZXZpY2UubGFtYmRhLnRzJyxcbiAgICAgIC4uLnByb3BzLFxuICAgICAgcnVudGltZTogbmV3IGxhbWJkYS5SdW50aW1lKCdub2RlanMxOC54JywgbGFtYmRhLlJ1bnRpbWVGYW1pbHkuTk9ERUpTKSxcbiAgICAgIGhhbmRsZXI6ICdpbmRleC5oYW5kbGVyJyxcbiAgICAgIGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4vLi4vYXNzZXRzL3Byb3ZpZGVycy9hbWktcm9vdC1kZXZpY2UubGFtYmRhJykpLFxuICAgIH0pO1xuICAgIHRoaXMuYWRkRW52aXJvbm1lbnQoJ0FXU19OT0RFSlNfQ09OTkVDVElPTl9SRVVTRV9FTkFCTEVEJywgJzEnLCB7IHJlbW92ZUluRWRnZTogdHJ1ZSB9KTtcbiAgfVxufSJdfQ==
@@ -1,12 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.handler = void 0;
4
- const AWS = require("aws-sdk");
4
+ const client_ec2_1 = require("@aws-sdk/client-ec2");
5
+ const client_ssm_1 = require("@aws-sdk/client-ssm");
5
6
  const lambda_helpers_1 = require("../lambda-helpers");
6
- const ssm = new AWS.SSM();
7
- const ec2 = new AWS.EC2();
7
+ const ssm = new client_ssm_1.SSMClient();
8
+ const ec2 = new client_ec2_1.EC2Client();
8
9
  async function handleAmi(event, ami) {
9
- const imageDescs = (await ec2.describeImages({ ImageIds: [ami] }).promise());
10
+ const imageDescs = (await ec2.send(new client_ec2_1.DescribeImagesCommand({ ImageIds: [ami] })));
10
11
  if (imageDescs.Images?.length !== 1) {
11
12
  await (0, lambda_helpers_1.customResourceRespond)(event, 'FAILED', `${ami} doesn't exist`, 'ERROR', {});
12
13
  return;
@@ -35,7 +36,7 @@ async function handler(event, context) {
35
36
  if (ami.startsWith('resolve:ssm:')) {
36
37
  const ssmParam = ami.substring('resolve:ssm:'.length);
37
38
  console.log(`Checking SSM ${ssmParam}`);
38
- const ssmValue = (await ssm.getParameter({ Name: ssmParam }).promise()).Parameter?.Value;
39
+ const ssmValue = (await ssm.send(new client_ssm_1.GetParameterCommand({ Name: ssmParam }))).Parameter?.Value;
39
40
  if (!ssmValue) {
40
41
  await (0, lambda_helpers_1.customResourceRespond)(event, 'FAILED', `${ami} has no value`, 'ERROR', {});
41
42
  break;
@@ -45,7 +46,7 @@ async function handler(event, context) {
45
46
  }
46
47
  if (ami.startsWith('lt-')) {
47
48
  console.log(`Checking Launch Template ${ami}`);
48
- const lts = await ec2.describeLaunchTemplateVersions({ LaunchTemplateId: ami, Versions: ['$Latest'] }).promise();
49
+ const lts = await ec2.send(new client_ec2_1.DescribeLaunchTemplateVersionsCommand({ LaunchTemplateId: ami, Versions: ['$Latest'] }));
49
50
  if (lts.LaunchTemplateVersions?.length !== 1) {
50
51
  await (0, lambda_helpers_1.customResourceRespond)(event, 'FAILED', `${ami} doesn't exist`, 'ERROR', {});
51
52
  break;
@@ -71,4 +72,4 @@ async function handler(event, context) {
71
72
  }
72
73
  }
73
74
  exports.handler = handler;
74
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1pLXJvb3QtZGV2aWNlLmxhbWJkYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aWRlcnMvYW1pLXJvb3QtZGV2aWNlLmxhbWJkYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwrQkFBK0I7QUFDL0Isc0RBQTBEO0FBRTFELE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO0FBQzFCLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO0FBRzFCLEtBQUssVUFBVSxTQUFTLENBQUMsS0FBa0QsRUFBRSxHQUFXO0lBQ3RGLE1BQU0sVUFBVSxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsY0FBYyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDN0UsSUFBSSxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDbkMsTUFBTSxJQUFBLHNDQUFxQixFQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsR0FBRyxHQUFHLGdCQUFnQixFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNsRixPQUFPO0tBQ1I7SUFFRCxNQUFNLFVBQVUsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQztJQUN2RCxJQUFJLENBQUMsVUFBVSxFQUFFO1FBQ2YsTUFBTSxJQUFBLHNDQUFxQixFQUFDLEtBQUssRUFBRSxRQUFRLEVBQUUsR0FBRyxHQUFHLHFCQUFxQixFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN2RixPQUFPO0tBQ1I7SUFFRCxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQixHQUFHLE9BQU8sVUFBVSxFQUFFLENBQUMsQ0FBQztJQUV2RCxNQUFNLElBQUEsc0NBQXFCLEVBQUMsS0FBSyxFQUFFLFNB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LE1BQU07WUFDUixLQUFLLFFBQVE7Z0JBQ1gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2dCQUNqQyxNQUFNLElBQUEsc0NBQXFCLEVBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNsRixNQUFNO1NBQ1Q7S0FDRjtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqQixNQUFNLElBQUEsc0NBQXFCLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRyxDQUFXLENBQUMsT0FBTyxJQUFJLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUM7S0FDbkg7QUFDSCxDQUFDO0FBM0RELDBCQTJEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIEFXU0xhbWJkYSBmcm9tICdhd3MtbGFtYmRhJztcbmltcG9ydCAqIGFzIEFXUyBmcm9tICdhd3Mtc2RrJztcbmltcG9ydCB7IGN1c3RvbVJlc291cmNlUmVzcG9uZCB9IGZyb20gJy4uL2xhbWJkYS1oZWxwZXJzJztcblxuY29uc3Qgc3NtID0gbmV3IEFXUy5TU00oKTtcbmNvbnN0IGVjMiA9IG5ldyBBV1MuRUMyKCk7XG5cblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlQW1pKGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUV2ZW50LCBhbWk6IHN0cmluZykge1xuICBjb25zdCBpbWFnZURlc2NzID0gKGF3YWl0IGVjMi5kZXNjcmliZUltYWdlcyh7IEltYWdlSWRzOiBbYW1pXSB9KS5wcm9taXNlKCkpO1xuICBpZiAoaW1hZ2VEZXNjcy5JbWFnZXM/Lmxlbmd0aCAhPT0gMSkge1xuICAgIGF3YWl0IGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudCwgJ0ZBSUxFRCcsIGAke2FtaX0gZG9lc24ndCBleGlzdGAsICdFUlJPUicsIHt9KTtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCByb290RGV2aWNlID0gaW1hZ2VEZXNjcy5JbWFnZXNbMF0uUm9vdERldmljZU5hbWU7XG4gIGlmICghcm9vdERldmljZSkge1xuICAgIGF3YWl0IGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudCwgJ0ZBSUxFRCcsIGAke2FtaX0gaGFzIG5vIHJvb3QgZGV2aWNlYCwgJ0VSUk9SJywge30pO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnNvbGUubG9nKGBSb290IGRldmljZSBmb3IgJHthbWl9IGlzICR7cm9vdERldmljZX1gKTtcblxuICBhd2FpdCBjdXN0b21SZXNvdXJjZVJlc3BvbmQoZXZlbnQsICdTVUNDRVNTJywgJ09LJywgcm9vdERldmljZSwge30pO1xuICByZXR1cm47XG59XG5cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGhhbmRsZXIoZXZlbnQ6IEFXU0xhbWJkYS5DbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlRXZlbnQsIGNvbnRleHQ6IEFXU0xhbWJkYS5Db250ZXh0KSB7XG4gIHRyeSB7XG4gICAgY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkoeyAuLi5ldmVudCwgUmVzcG9uc2VVUkw6ICcuLi4nIH0pKTtcblxuICAgIGNvbnN0IGFtaSA9IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5BbWkgYXMgc3RyaW5nO1xuXG4gICAgc3dpdGNoIChldmVudC5SZXF1ZXN0VHlwZSkge1xuICAgICAgY2FzZSAnQ3JlYXRlJzpcbiAgICAgIGNhc2UgJ1VwZGF0ZSc6XG4gICAgICAgIGlmIChhbWkuc3RhcnRzV2l0aCgnYW1pLScpKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coYENoZWNraW5nIEFNSSAke2FtaX1gKTtcblxuICAgICAgICAgIGF3YWl0IGhhbmRsZUFtaShldmVudCwgYW1pKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChhbWkuc3RhcnRzV2l0aCgncmVzb2x2ZTpzc206JykpIHtcbiAgICAgICAgICBjb25zdCBzc21QYXJhbSA9IGFtaS5zdWJzdHJpbmcoJ3Jlc29sdmU6c3NtOicubGVuZ3RoKTtcbiAgICAgICAgICBjb25zb2xlLmxvZyhgQ2hlY2tpbmcgU1NNICR7c3NtUGFyYW19YCk7XG5cbiAgICAgICAgICBjb25zdCBzc21WYWx1ZSA9IChhd2FpdCBzc20uZ2V0UGFyYW1ldGVyKHsgTmFtZTogc3NtUGFyYW0gfSkucHJvbWlzZSgpKS5QYXJhbWV0ZXI/LlZhbHVlO1xuICAgICAgICAgIGlmICghc3NtVmFsdWUpIHtcbiAgICAgICAgICAgIGF3YWl0IGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudCwgJ0ZBSUxFRCcsIGAke2FtaX0gaGFzIG5vIHZhbHVlYCwgJ0VSUk9SJywge30pO1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgYXdhaXQgaGFuZGxlQW1pKGV2ZW50LCBzc21WYWx1ZSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYW1pLnN0YXJ0c1dpdGgoJ2x0LScpKSB7XG4gICAgICAgICAgY29uc29sZS5sb2coYENoZWNraW5nIExhdW5jaCBUZW1wbGF0ZSAke2FtaX1gKTtcblxuICAgICAgICAgIGNvbnN0IGx0cyA9IGF3YWl0IGVjMi5kZXNjcmliZUxhdW5jaFRlbXBsYXRlVmVyc2lvbnMoeyBMYXVuY2hUZW1wbGF0ZUlkOiBhbWksIFZlcnNpb25zOiBbJyRMYXRlc3QnXSB9KS5wcm9taXNlKCk7XG4gICAgICAgICAgaWYgKGx0cy5MYXVuY2hUZW1wbGF0ZVZlcnNpb25zPy5sZW5ndGggIT09IDEpIHtcbiAgICAgICAgICAgIGF3YWl0IGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudCwgJ0ZBSUxFRCcsIGAke2FtaX0gZG9lc24ndCBleGlzdGAsICdFUlJPUicsIHt9KTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghbHRzLkxhdW5jaFRlbXBsYXRlVmVyc2lvbnNbMF0uTGF1bmNoVGVtcGxhdGVEYXRhPy5JbWFnZUlkKSB7XG4gICAgICAgICAgICBhd2FpdCBjdXN0b21SZXNvdXJjZVJlc3BvbmQoZXZlbnQsICdGQUlMRUQnLCBgJHthbWl9IGRvZXNuJ3QgaGF2ZSBhbiBBTUlgLCAnRVJST1InLCB7fSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhd2FpdCBoYW5kbGVBbWkoZXZlbnQsIGx0cy5MYXVuY2hUZW1wbGF0ZVZlcnNpb25zWzBdLkxhdW5jaFRlbXBsYXRlRGF0YS5JbWFnZUlkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGF3YWl0IGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudCwgJ0ZBSUxFRCcsIGBVbmtub3duIHR5cGUgb2YgQU1JICR7YW1pfWAsICdFUlJPUicsIHt9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdEZWxldGUnOlxuICAgICAgICBjb25zb2xlLmxvZygnTm90aGluZyB0byBkZWxldGUnKTtcbiAgICAgICAgYXdhaXQgY3VzdG9tUmVzb3VyY2VSZXNwb25kKGV2ZW50LCAnU1VDQ0VTUycsICdPSycsIGV2ZW50LlBoeXNpY2FsUmVzb3VyY2VJZCwge30pO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgIGF3YWl0IGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudCwgJ0ZBSUxFRCcsIChlIGFzIEVycm9yKS5tZXNzYWdlIHx8ICdJbnRlcm5hbCBFcnJvcicsIGNvbnRleHQubG9nU3RyZWFtTmFtZSwge30pO1xuICB9XG59XG4iXX0=
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW1pLXJvb3QtZGV2aWNlLmxhbWJkYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aWRlcnMvYW1pLXJvb3QtZGV2aWNlLmxhbWJkYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxvREFBOEc7QUFDOUcsb0RBQXFFO0FBRXJFLHNEQUEwRDtBQUUxRCxNQUFNLEdBQUcsR0FBRyxJQUFJLHNCQUFTLEVBQUUsQ0FBQztBQUM1QixNQUFNLEdBQUcsR0FBRyxJQUFJLHNCQUFTLEVBQUUsQ0FBQztBQUc1QixLQUFLLFVBQVUsU0FBUyxDQUFDLEtBQWtELEVBQUUsR0FBVztJQUN0RixNQUFNLFVBQVUsR0FBRyxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLGtDQUFxQixDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwRixJQUFJLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxLQUFLLENBQUMsRUFBRTtRQUNuQyxNQUFNLElBQUEsc0NBQXFCLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxHQUFHLEdBQUcsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2xGLE9BQU87S0FDUjtJQUVELE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDO0lBQ3ZELElBQUksQ0FBQyxVQUFVLEVBQUU7UUFDZixNQUFNLElBQUEsc0NBQXFCLEVBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxHQUFHLEdBQUcscUJBQXFCLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZGLE9BQU87S0FDUjtJQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLEdBQUcsT0FBTyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBRXZELE1BQU0sSUFBQSxzQ0FBcUIsRUFBQyxLQUFLLEVBQUUs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QUMsQ0FBQztnQkFDeEYsTUFBTTtZQUNSLEtBQUssUUFBUTtnQkFDWCxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQixDQUFDLENBQUM7Z0JBQ2pDLE1BQU0sSUFBQSxzQ0FBcUIsRUFBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxLQUFLLENBQUMsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQ2xGLE1BQU07U0FDVDtLQUNGO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDVixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2pCLE1BQU0sSUFBQSxzQ0FBcUIsRUFBQyxLQUFLLEVBQUUsUUFBUSxFQUFHLENBQVcsQ0FBQyxPQUFPLElBQUksZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztLQUNuSDtBQUNILENBQUM7QUEzREQsMEJBMkRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzY3JpYmVJbWFnZXNDb21tYW5kLCBEZXNjcmliZUxhdW5jaFRlbXBsYXRlVmVyc2lvbnNDb21tYW5kLCBFQzJDbGllbnQgfSBmcm9tICdAYXdzLXNkay9jbGllbnQtZWMyJztcbmltcG9ydCB7IEdldFBhcmFtZXRlckNvbW1hbmQsIFNTTUNsaWVudCB9IGZyb20gJ0Bhd3Mtc2RrL2NsaWVudC1zc20nO1xuaW1wb3J0ICogYXMgQVdTTGFtYmRhIGZyb20gJ2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgY3VzdG9tUmVzb3VyY2VSZXNwb25kIH0gZnJvbSAnLi4vbGFtYmRhLWhlbHBlcnMnO1xuXG5jb25zdCBzc20gPSBuZXcgU1NNQ2xpZW50KCk7XG5jb25zdCBlYzIgPSBuZXcgRUMyQ2xpZW50KCk7XG5cblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlQW1pKGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUV2ZW50LCBhbWk6IHN0cmluZykge1xuICBjb25zdCBpbWFnZURlc2NzID0gKGF3YWl0IGVjMi5zZW5kKG5ldyBEZXNjcmliZUltYWdlc0NvbW1hbmQoeyBJbWFnZUlkczogW2FtaV0gfSkpKTtcbiAgaWYgKGltYWdlRGVzY3MuSW1hZ2VzPy5sZW5ndGggIT09IDEpIHtcbiAgICBhd2FpdCBjdXN0b21SZXNvdXJjZVJlc3BvbmQoZXZlbnQsICdGQUlMRUQnLCBgJHthbWl9IGRvZXNuJ3QgZXhpc3RgLCAnRVJST1InLCB7fSk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3Qgcm9vdERldmljZSA9IGltYWdlRGVzY3MuSW1hZ2VzWzBdLlJvb3REZXZpY2VOYW1lO1xuICBpZiAoIXJvb3REZXZpY2UpIHtcbiAgICBhd2FpdCBjdXN0b21SZXNvdXJjZVJlc3BvbmQoZXZlbnQsICdGQUlMRUQnLCBgJHthbWl9IGhhcyBubyByb290IGRldmljZWAsICdFUlJPUicsIHt9KTtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zb2xlLmxvZyhgUm9vdCBkZXZpY2UgZm9yICR7YW1pfSBpcyAke3Jvb3REZXZpY2V9YCk7XG5cbiAgYXdhaXQgY3VzdG9tUmVzb3VyY2VSZXNwb25kKGV2ZW50LCAnU1VDQ0VTUycsICdPSycsIHJvb3REZXZpY2UsIHt9KTtcbiAgcmV0dXJuO1xufVxuXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBoYW5kbGVyKGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUV2ZW50LCBjb250ZXh0OiBBV1NMYW1iZGEuQ29udGV4dCkge1xuICB0cnkge1xuICAgIGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KHsgLi4uZXZlbnQsIFJlc3BvbnNlVVJMOiAnLi4uJyB9KSk7XG5cbiAgICBjb25zdCBhbWkgPSBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuQW1pIGFzIHN0cmluZztcblxuICAgIHN3aXRjaCAoZXZlbnQuUmVxdWVzdFR5cGUpIHtcbiAgICAgIGNhc2UgJ0NyZWF0ZSc6XG4gICAgICBjYXNlICdVcGRhdGUnOlxuICAgICAgICBpZiAoYW1pLnN0YXJ0c1dpdGgoJ2FtaS0nKSkge1xuICAgICAgICAgIGNvbnNvbGUubG9nKGBDaGVja2luZyBBTUkgJHthbWl9YCk7XG5cbiAgICAgICAgICBhd2FpdCBoYW5kbGVBbWkoZXZlbnQsIGFtaSk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoYW1pLnN0YXJ0c1dpdGgoJ3Jlc29sdmU6c3NtOicpKSB7XG4gICAgICAgICAgY29uc3Qgc3NtUGFyYW0gPSBhbWkuc3Vic3RyaW5nKCdyZXNvbHZlOnNzbTonLmxlbmd0aCk7XG4gICAgICAgICAgY29uc29sZS5sb2coYENoZWNraW5nIFNTTSAke3NzbVBhcmFtfWApO1xuXG4gICAgICAgICAgY29uc3Qgc3NtVmFsdWUgPSAoYXdhaXQgc3NtLnNlbmQobmV3IEdldFBhcmFtZXRlckNvbW1hbmQoeyBOYW1lOiBzc21QYXJhbSB9KSkpLlBhcmFtZXRlcj8uVmFsdWU7XG4gICAgICAgICAgaWYgKCFzc21WYWx1ZSkge1xuICAgICAgICAgICAgYXdhaXQgY3VzdG9tUmVzb3VyY2VSZXNwb25kKGV2ZW50LCAnRkFJTEVEJywgYCR7YW1pfSBoYXMgbm8gdmFsdWVgLCAnRVJST1InLCB7fSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhd2FpdCBoYW5kbGVBbWkoZXZlbnQsIHNzbVZhbHVlKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChhbWkuc3RhcnRzV2l0aCgnbHQtJykpIHtcbiAgICAgICAgICBjb25zb2xlLmxvZyhgQ2hlY2tpbmcgTGF1bmNoIFRlbXBsYXRlICR7YW1pfWApO1xuXG4gICAgICAgICAgY29uc3QgbHRzID0gYXdhaXQgZWMyLnNlbmQobmV3IERlc2NyaWJlTGF1bmNoVGVtcGxhdGVWZXJzaW9uc0NvbW1hbmQoeyBMYXVuY2hUZW1wbGF0ZUlkOiBhbWksIFZlcnNpb25zOiBbJyRMYXRlc3QnXSB9KSk7XG4gICAgICAgICAgaWYgKGx0cy5MYXVuY2hUZW1wbGF0ZVZlcnNpb25zPy5sZW5ndGggIT09IDEpIHtcbiAgICAgICAgICAgIGF3YWl0IGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudCwgJ0ZBSUxFRCcsIGAke2FtaX0gZG9lc24ndCBleGlzdGAsICdFUlJPUicsIHt9KTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmICghbHRzLkxhdW5jaFRlbXBsYXRlVmVyc2lvbnNbMF0uTGF1bmNoVGVtcGxhdGVEYXRhPy5JbWFnZUlkKSB7XG4gICAgICAgICAgICBhd2FpdCBjdXN0b21SZXNvdXJjZVJlc3BvbmQoZXZlbnQsICdGQUlMRUQnLCBgJHthbWl9IGRvZXNuJ3QgaGF2ZSBhbiBBTUlgLCAnRVJST1InLCB7fSk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhd2FpdCBoYW5kbGVBbWkoZXZlbnQsIGx0cy5MYXVuY2hUZW1wbGF0ZVZlcnNpb25zWzBdLkxhdW5jaFRlbXBsYXRlRGF0YS5JbWFnZUlkKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGF3YWl0IGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudCwgJ0ZBSUxFRCcsIGBVbmtub3duIHR5cGUgb2YgQU1JICR7YW1pfWAsICdFUlJPUicsIHt9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdEZWxldGUnOlxuICAgICAgICBjb25zb2xlLmxvZygnTm90aGluZyB0byBkZWxldGUnKTtcbiAgICAgICAgYXdhaXQgY3VzdG9tUmVzb3VyY2VSZXNwb25kKGV2ZW50LCAnU1VDQ0VTUycsICdPSycsIGV2ZW50LlBoeXNpY2FsUmVzb3VyY2VJZCwge30pO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgIGF3YWl0IGN1c3RvbVJlc291cmNlUmVzcG9uZChldmVudCwgJ0ZBSUxFRCcsIChlIGFzIEVycm9yKS5tZXNzYWdlIHx8ICdJbnRlcm5hbCBFcnJvcicsIGNvbnRleHQubG9nU3RyZWFtTmFtZSwge30pO1xuICB9XG59XG4iXX0=
@@ -12,7 +12,7 @@ class BuildImageFunction extends lambda.Function {
12
12
  super(scope, id, {
13
13
  description: 'src/providers/build-image.lambda.ts',
14
14
  ...props,
15
- runtime: new lambda.Runtime('nodejs16.x', lambda.RuntimeFamily.NODEJS),
15
+ runtime: new lambda.Runtime('nodejs18.x', lambda.RuntimeFamily.NODEJS),
16
16
  handler: 'index.handler',
17
17
  code: lambda.Code.fromAsset(path.join(__dirname, '../../assets/providers/build-image.lambda')),
18
18
  });
@@ -20,4 +20,4 @@ class BuildImageFunction extends lambda.Function {
20
20
  }
21
21
  }
22
22
  exports.BuildImageFunction = BuildImageFunction;
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtaW1hZ2UtZnVuY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvdmlkZXJzL2J1aWxkLWltYWdlLWZ1bmN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZFQUE2RTtBQUM3RSw2QkFBNkI7QUFDN0IsaURBQWlEO0FBU2pEOztHQUVHO0FBQ0gsTUFBYSxrQkFBbUIsU0FBUSxNQUFNLENBQUMsUUFBUTtJQUNyRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQStCO1FBQ3ZFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsV0FBVyxFQUFFLHFDQUFxQztZQUNsRCxHQUFHLEtBQUs7WUFDUixPQUFPLEVBQUUsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQztZQUN0RSxPQUFPLEVBQUUsZUFBZTtZQUN4QixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsMkNBQTJDLENBQUMsQ0FBQztTQUMvRixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLHFDQUFxQyxFQUFFLEdBQUcsRUFBRSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzFGLENBQUM7Q0FDRjtBQVhELGdEQVdDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy5qcyBhbmQgcnVuIFwibnB4IHByb2plblwiLlxuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIGxhbWJkYSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuXG4vKipcbiAqIFByb3BzIGZvciBCdWlsZEltYWdlRnVuY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdWlsZEltYWdlRnVuY3Rpb25Qcm9wcyBleHRlbmRzIGxhbWJkYS5GdW5jdGlvbk9wdGlvbnMge1xufVxuXG4vKipcbiAqIEFuIEFXUyBMYW1iZGEgZnVuY3Rpb24gd2hpY2ggZXhlY3V0ZXMgc3JjL3Byb3ZpZGVycy9idWlsZC1pbWFnZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEJ1aWxkSW1hZ2VGdW5jdGlvbiBleHRlbmRzIGxhbWJkYS5GdW5jdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogQnVpbGRJbWFnZUZ1bmN0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnc3JjL3Byb3ZpZGVycy9idWlsZC1pbWFnZS5sYW1iZGEudHMnLFxuICAgICAgLi4ucHJvcHMsXG4gICAgICBydW50aW1lOiBuZXcgbGFtYmRhLlJ1bnRpbWUoJ25vZGVqczE2LngnLCBsYW1iZGEuUnVudGltZUZhbWlseS5OT0RFSlMpLFxuICAgICAgaGFuZGxlcjogJ2luZGV4LmhhbmRsZXInLFxuICAgICAgY29kZTogbGFtYmRhLkNvZGUuZnJvbUFzc2V0KHBhdGguam9pbihfX2Rpcm5hbWUsICcuLi8uLi9hc3NldHMvcHJvdmlkZXJzL2J1aWxkLWltYWdlLmxhbWJkYScpKSxcbiAgICB9KTtcbiAgICB0aGlzLmFkZEVudmlyb25tZW50KCdBV1NfTk9ERUpTX0NPTk5FQ1RJT05fUkVVU0VfRU5BQkxFRCcsICcxJywgeyByZW1vdmVJbkVkZ2U6IHRydWUgfSk7XG4gIH1cbn0iXX0=
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGQtaW1hZ2UtZnVuY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcHJvdmlkZXJzL2J1aWxkLWltYWdlLWZ1bmN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZFQUE2RTtBQUM3RSw2QkFBNkI7QUFDN0IsaURBQWlEO0FBU2pEOztHQUVHO0FBQ0gsTUFBYSxrQkFBbUIsU0FBUSxNQUFNLENBQUMsUUFBUTtJQUNyRCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQStCO1FBQ3ZFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsV0FBVyxFQUFFLHFDQUFxQztZQUNsRCxHQUFHLEtBQUs7WUFDUixPQUFPLEVBQUUsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQztZQUN0RSxPQUFPLEVBQUUsZUFBZTtZQUN4QixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsMkNBQTJDLENBQUMsQ0FBQztTQUMvRixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLHFDQUFxQyxFQUFFLEdBQUcsRUFBRSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzFGLENBQUM7Q0FDRjtBQVhELGdEQVdDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy5qcyBhbmQgcnVuIFwibnB4IHByb2plblwiLlxuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIGxhbWJkYSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuXG4vKipcbiAqIFByb3BzIGZvciBCdWlsZEltYWdlRnVuY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBCdWlsZEltYWdlRnVuY3Rpb25Qcm9wcyBleHRlbmRzIGxhbWJkYS5GdW5jdGlvbk9wdGlvbnMge1xufVxuXG4vKipcbiAqIEFuIEFXUyBMYW1iZGEgZnVuY3Rpb24gd2hpY2ggZXhlY3V0ZXMgc3JjL3Byb3ZpZGVycy9idWlsZC1pbWFnZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEJ1aWxkSW1hZ2VGdW5jdGlvbiBleHRlbmRzIGxhbWJkYS5GdW5jdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogQnVpbGRJbWFnZUZ1bmN0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnc3JjL3Byb3ZpZGVycy9idWlsZC1pbWFnZS5sYW1iZGEudHMnLFxuICAgICAgLi4ucHJvcHMsXG4gICAgICBydW50aW1lOiBuZXcgbGFtYmRhLlJ1bnRpbWUoJ25vZGVqczE4LngnLCBsYW1iZGEuUnVudGltZUZhbWlseS5OT0RFSlMpLFxuICAgICAgaGFuZGxlcjogJ2luZGV4LmhhbmRsZXInLFxuICAgICAgY29kZTogbGFtYmRhLkNvZGUuZnJvbUFzc2V0KHBhdGguam9pbihfX2Rpcm5hbWUsICcuLi8uLi9hc3NldHMvcHJvdmlkZXJzL2J1aWxkLWltYWdlLmxhbWJkYScpKSxcbiAgICB9KTtcbiAgICB0aGlzLmFkZEVudmlyb25tZW50KCdBV1NfTk9ERUpTX0NPTk5FQ1RJT05fUkVVU0VfRU5BQkxFRCcsICcxJywgeyByZW1vdmVJbkVkZ2U6IHRydWUgfSk7XG4gIH1cbn0iXX0=