@fjall/components-infrastructure 0.1.17 → 0.1.19

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.
@@ -61,8 +61,8 @@ class EcrDefaultImage extends constructs_1.Construct {
61
61
  phases: {
62
62
  build: {
63
63
  commands: [
64
- "docker pull fjall/ecrdefaultimage:latest",
65
- "docker tag fjall/ecrdefaultimage:latest $ECR_REPOSITORY:latest",
64
+ "docker pull public.ecr.aws/b5d5l7n9/welcome:latest",
65
+ "docker tag public.ecr.aws/b5d5l7n9/welcome:latest $ECR_REPOSITORY:latest",
66
66
  `aws ecr get-login-password --region ${props.region} | docker login --username AWS --password-stdin ${props.accountId}.dkr.ecr.${props.region}.amazonaws.com`,
67
67
  "docker push $ECR_REPOSITORY:latest"
68
68
  ]
@@ -124,4 +124,4 @@ class EcrDefaultImage extends constructs_1.Construct {
124
124
  }
125
125
  }
126
126
  exports.EcrDefaultImage = EcrDefaultImage;
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNyRGVmYXVsdEltYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2NvbmZpZy9hd3MvZWNyRGVmYXVsdEltYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJDQUF1QztBQUN2Qyx1RUFBMkU7QUFDM0UsNkRBR21DO0FBQ25DLG1FQUFnRTtBQUNoRSw2Q0FBd0Q7QUFDeEQsdURBQW9EO0FBQ3BELGlEQUk2QjtBQUM3Qix1REFLZ0M7QUFDaEMsMERBQTBEO0FBQzFELGlGQUEwRTtBQUMxRSxxRUFBeUQ7QUFRekQsTUFBYSxlQUFnQixTQUFRLHNCQUFTO0lBQzVDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMkI7UUFDbkUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLFFBQVEsR0FBRyxJQUFJLG1CQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUM5QyxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsR0FBRztZQUNyQyxhQUFhLEVBQUUsMkJBQWEsQ0FBQyxPQUFPO1NBQ3JDLENBQUMsQ0FBQztRQUVILE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxXQUFJLENBQUMsSUFBSSxFQUFFLHFCQUFxQixFQUFFO1lBQ2hFLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsV0FBVyxFQUFFLHVEQUF1RDtZQUNwRSxTQUFTLEVBQUUsSUFBSSwwQkFBZ0IsQ0FBQyx5QkFBeUIsQ0FBQztZQUMxRCxjQUFjLEVBQUU7Z0JBQ2QsQ0FBQyxjQUFjLENBQUMsRUFBRSxJQUFJLHdCQUFjLENBQUM7b0JBQ25DLFVBQVUsRUFBRTt3QkFDVixJQUFJLHlCQUFlLENBQUM7NEJBQ2xCLE9BQU8sRUFBRTtnQ0FDUCx5QkFBeUI7Z0NBQ3pCLDJCQUEyQjtnQ0FDM0IscUJBQXFCO2dDQUNyQix5QkFBeUI7Z0NBQ3pCLGlDQUFpQztnQ0FDakMsY0FBYzs2QkFDZjs0QkFDRCxTQUFTLEVBQUUsQ0FB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dEQsQ0FBQzthQUNIO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBNUhELDBDQTRIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBDb2RlQnVpbGRQcm9qZWN0IH0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3MvdXRpbGl0aWVzL2NvZGVCdWlsZFwiO1xuaW1wb3J0IHtcbiAgQnVpbGRFbnZpcm9ubWVudFZhcmlhYmxlVHlwZSxcbiAgQnVpbGRTcGVjXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY29kZWJ1aWxkXCI7XG5pbXBvcnQgeyBMb2dHcm91cCB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL2xvZ2dpbmcvbG9nR3JvdXBcIjtcbmltcG9ydCB7IFJlbW92YWxQb2xpY3ksIFN0YWNrUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IFJvbGUgfSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy9pYW0vcm9sZVwiO1xuaW1wb3J0IHtcbiAgUG9saWN5RG9jdW1lbnQsXG4gIFBvbGljeVN0YXRlbWVudCxcbiAgU2VydmljZVByaW5jaXBhbFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiO1xuaW1wb3J0IHtcbiAgRXZlbnRCdXMsXG4gIEV2ZW50RmllbGQsXG4gIFJ1bGUsXG4gIFJ1bGVUYXJnZXRJbnB1dFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWV2ZW50c1wiO1xuaW1wb3J0ICogYXMgVGFyZ2V0cyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWV2ZW50cy10YXJnZXRzXCI7XG5pbXBvcnQgeyBDb2RlQnVpbGRTdGFydEJ1aWxkIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zdGVwZnVuY3Rpb25zLXRhc2tzXCI7XG5pbXBvcnQgeyBKc29uUGF0aCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9uc1wiO1xuXG5pbnRlcmZhY2UgRWNyRGVmYXVsdEltYWdlUHJvcHMgZXh0ZW5kcyBTdGFja1Byb3BzIHtcbiAgcmVnaW9uOiBzdHJpbmc7XG4gIGFjY291bnRJZDogc3RyaW5nO1xuICBldmVudEJ1c0Fybjogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgRWNyRGVmYXVsdEltYWdlIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEVjckRlZmF1bHRJbWFnZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGxvZ0dyb3VwID0gbmV3IExvZ0dyb3VwKHRoaXMsIGBsb2dHcm91cGAsIHtcbiAgICAgIGxvZ0dyb3VwTmFtZTogYC92cGMvY29kZWJ1aWxkLyR7aWR9L2AsXG4gICAgICByZW1vdmFsUG9saWN5OiBSZW1vdmFsUG9saWN5LkRFU1RST1lcbiAgICB9KTtcblxuICAgIGNvbnN0IGVjckRlZmF1bHRJbWFnZVJvbGUgPSBuZXcgUm9sZSh0aGlzLCBcImVjckRlZmF1bHRJbWFnZVJvbGVcIiwge1xuICAgICAgcm9sZU5hbWU6IGBlY3JEZWZhdWx0SW1hZ2VSb2xlYCxcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlJvbGUgdG8gcHVzaCBkZWZhdWx0IEVDUiBpbWFnZXMgaW50byBuZXcgcmVwb3NpdG9yaWVzXCIsXG4gICAgICBhc3N1bWVkQnk6IG5ldyBTZXJ2aWNlUHJpbmNpcGFsKFwiY29kZWJ1aWxkLmFtYXpvbmF3cy5jb21cIiksXG4gICAgICBpbmxpbmVQb2xpY2llczoge1xuICAgICAgICBbXCJwdXNoRWNySW1hZ2VcIl06IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgICAgc3RhdGVtZW50czogW1xuICAgICAgICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgICBcImVjcjpDb21wbGV0ZUxheWVyVXBsb2FkXCIsXG4gICAgICAgICAgICAgICAgXCJlY3I6R2V0QXV0aG9yaXphdGlvblRva2VuXCIsXG4gICAgICAgICAgICAgICAgXCJlY3I6VXBsb2FkTGF5ZXJQYXJ0XCIsXG4gICAgICAgICAgICAgICAgXCJlY3I6SW5pdGlhdGVMYXllclVwbG9hZFwiLFxuICAgICAgICAgICAgICAgIFwiZWNyOkJhdGNoQ2hlY2tMYXllckF2YWlsYWJpbGl0eVwiLFxuICAgICAgICAgICAgICAgIFwiZWNyOlB1dEltYWdlXCJcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgcmVzb3VyY2VzOiBbXCIqXCJdXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF1cbiAgICAgICAgfSksXG4gICAgICAgIFtcIndyaXRlTG9nc1wiXTogbmV3IFBvbGljeURvY3VtZW50KHtcbiAgICAgICAgICBzdGF0ZW1lbnRzOiBbXG4gICAgICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICAgIFwibG9nczpDcmVhdGVMb2dHcm91cFwiLFxuICAgICAgICAgICAgICAgIFwibG9nczpDcmVhdGVMb2dTdHJlYW1cIixcbiAgICAgICAgICAgICAgICBcImxvZ3M6UHV0TG9nRXZlbnRzXCJcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgcmVzb3VyY2VzOiBbbG9nR3JvdXAubG9nR3JvdXBBcm5dXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF1cbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnN0IGNvZGVCdWlsZFByb2plY3QgPSBuZXcgQ29kZUJ1aWxkUHJvamVjdCh0aGlzLCBcImNvZGVCdWlsZFByb2plY3RcIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiQnVpbGQgYW5kIHB1c2ggdGhlIGRlZmF1bHQgRUNSIGltYWdlIHRvIG5ldyByZXBvc2l0b3JpZXNcIixcbiAgICAgIHByb2plY3ROYW1lOiBcImVjckRlZmF1bHRJbWFnZVwiLFxuICAgICAgYnVpbGRTcGVjOiBCdWlsZFNwZWMuZnJvbU9iamVjdCh7XG4gICAgICAgIHZlcnNpb246IDAuMixcbiAgICAgICAgcGhhc2VzOiB7XG4gICAgICAgICAgYnVpbGQ6IHtcbiAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgIFwiZG9ja2VyIHB1bGwgZmphbGwvZWNyZGVmYXVsdGltYWdlOmxhdGVzdFwiLFxuICAgICAgICAgICAgICBcImRvY2tlciB0YWcgZmphbGwvZWNyZGVmYXVsdGltYWdlOmxhdGVzdCAkRUNSX1JFUE9TSVRPUlk6bGF0ZXN0XCIsXG4gICAgICAgICAgICAgIGBhd3MgZWNyIGdldC1sb2dpbi1wYXNzd29yZCAtLXJlZ2lvbiAke3Byb3BzLnJlZ2lvbn0gfCBkb2NrZXIgbG9naW4gLS11c2VybmFtZSBBV1MgLS1wYXNzd29yZC1zdGRpbiAke3Byb3BzLmFjY291bnRJZH0uZGtyLmVjci4ke3Byb3BzLnJlZ2lvbn0uYW1hem9uYXdzLmNvbWAsXG4gICAgICAgICAgICAgIFwiZG9ja2VyIHB1c2ggJEVDUl9SRVBPU0lUT1JZOmxhdGVzdFwiXG4gICAgICAgICAgICBdXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIGxvZ2dpbmc6IHtcbiAgICAgICAgY2xvdWRXYXRjaDoge1xuICAgICAgICAgIGxvZ0dyb3VwOiBsb2dHcm91cFxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgcm9sZTogZWNyRGVmYXVsdEltYWdlUm9sZSxcbiAgICAgIHRhZ3M6IHtcbiAgICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjplbnZpcm9ubWVudFwiOiBcIm1hbmFnZW1lbnRcIixcbiAgICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjpzZXJ2aWNlXCI6IFwiZWNyRGVmYXVsdEltYWdlXCIsXG4gICAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246b3duZXJcIjogXCJGamFsbFwiXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBuZXcgQ29kZUJ1aWxkU3RhcnRCdWlsZCh0aGlzLCBcImNvZGVCdWlsZFRhc2tcIiwge1xuICAgICAgcHJvamVjdDogY29kZUJ1aWxkUHJvamVjdC5wcm9qZWN0LFxuICAgICAgaW5wdXRQYXRoOiBKc29uUGF0aC5zdHJpbmdBdChcIiQuc291cmNlXCIpLFxuICAgICAgZW52aXJvbm1lbnRWYXJpYWJsZXNPdmVycmlkZToge1xuICAgICAgICBFQ1JfUkVQT1NJVE9SWToge1xuICAgICAgICAgIHR5cGU6IEJ1aWxkRW52aXJvbm1lbnRWYXJpYWJsZVR5cGUuUExBSU5URVhULFxuICAgICAgICAgIHZhbHVlOiBKc29uUGF0aC5zdHJpbmdBdChcIiQuc291cmNlXCIpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnN0IGV2ZW50SW5wdXRNYXBwaW5nID0ge1xuICAgICAgcmVwb3NpdG9yeVVyaTogRXZlbnRGaWVsZC5mcm9tUGF0aChcbiAgICAgICAgXCIkLmRldGFpbC5yZXNwb25zZUVsZW1lbnRzLnJlcG9zaXRvcnkucmVwb3NpdG9yeVVyaVwiXG4gICAgICApXG4gICAgfTtcblxuICAgIGNvbnN0IGV2ZW50SW5wdXRUZW1wbGF0ZSA9IHtcbiAgICAgIGVudmlyb25tZW50VmFyaWFibGVzT3ZlcnJpZGU6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwiRUNSX1JFUE9TSVRPUllcIixcbiAgICAgICAgICB2YWx1ZTogZXZlbnRJbnB1dE1hcHBpbmcucmVwb3NpdG9yeVVyaVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfTtcblxuICAgIG5ldyBSdWxlKHRoaXMsIFwiZWNyQ3JlYXRpb25SdWxlXCIsIHtcbiAgICAgIHJ1bGVOYW1lOiBcImVjckNyZWF0aW9uUnVsZVwiLFxuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgIFwiVHJpZ2dlciB0aGUgZGVmYXVsdCBFQ1IgaW1hZ2UgYnVpbGQgd2hlbiBhIG5ldyByZXBvc2l0b3J5IGlzIGNyZWF0ZWRcIixcbiAgICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgICBldmVudEJ1czogRXZlbnRCdXMuZnJvbUV2ZW50QnVzQXJuKFxuICAgICAgICB0aGlzLFxuICAgICAgICBcImRlZmF1bHRFdmVudEJ1c1wiLFxuICAgICAgICBwcm9wcy5ldmVudEJ1c0FyblxuICAgICAgKSxcbiAgICAgIGV2ZW50UGF0dGVybjoge1xuICAgICAgICBzb3VyY2U6IFtcImF3cy5lY3JcIl0sXG4gICAgICAgIGRldGFpbFR5cGU6IFtcIkFXUyBBUEkgQ2FsbCB2aWEgQ2xvdWRUcmFpbFwiXSxcbiAgICAgICAgZGV0YWlsOiB7XG4gICAgICAgICAgZXZlbnRTb3VyY2U6IFtcImVjci5hbWF6b25hd3MuY29tXCJdLFxuICAgICAgICAgIGV2ZW50TmFtZTogW1wiQ3JlYXRlUmVwb3NpdG9yeVwiXVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgdGFyZ2V0czogW1xuICAgICAgICBuZXcgVGFyZ2V0cy5Db2RlQnVpbGRQcm9qZWN0KGNvZGVCdWlsZFByb2plY3QucHJvamVjdCwge1xuICAgICAgICAgIGV2ZW50OiBSdWxlVGFyZ2V0SW5wdXQuZnJvbU9iamVjdChldmVudElucHV0VGVtcGxhdGUpXG4gICAgICAgIH0pXG4gICAgICBdXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
127
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNyRGVmYXVsdEltYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2NvbmZpZy9hd3MvZWNyRGVmYXVsdEltYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJDQUF1QztBQUN2Qyx1RUFBMkU7QUFDM0UsNkRBR21DO0FBQ25DLG1FQUFnRTtBQUNoRSw2Q0FBd0Q7QUFDeEQsdURBQW9EO0FBQ3BELGlEQUk2QjtBQUM3Qix1REFLZ0M7QUFDaEMsMERBQTBEO0FBQzFELGlGQUEwRTtBQUMxRSxxRUFBeUQ7QUFRekQsTUFBYSxlQUFnQixTQUFRLHNCQUFTO0lBQzVDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMkI7UUFDbkUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixNQUFNLFFBQVEsR0FBRyxJQUFJLG1CQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUM5QyxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsR0FBRztZQUNyQyxhQUFhLEVBQUUsMkJBQWEsQ0FBQyxPQUFPO1NBQ3JDLENBQUMsQ0FBQztRQUVILE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxXQUFJLENBQUMsSUFBSSxFQUFFLHFCQUFxQixFQUFFO1lBQ2hFLFFBQVEsRUFBRSxxQkFBcUI7WUFDL0IsV0FBVyxFQUFFLHVEQUF1RDtZQUNwRSxTQUFTLEVBQUUsSUFBSSwwQkFBZ0IsQ0FBQyx5QkFBeUIsQ0FBQztZQUMxRCxjQUFjLEVBQUU7Z0JBQ2QsQ0FBQyxjQUFjLENBQUMsRUFBRSxJQUFJLHdCQUFjLENBQUM7b0JBQ25DLFVBQVUsRUFBRTt3QkFDVixJQUFJLHlCQUFlLENBQUM7NEJBQ2xCLE9BQU8sRUFBRTtnQ0FDUCx5QkFBeUI7Z0NBQ3pCLDJCQUEyQjtnQ0FDM0IscUJBQXFCO2dDQUNyQix5QkFBeUI7Z0NBQ3pCLGlDQUFpQztnQ0FDakMsY0FBYzs2QkFDZjs0QkFDRCxTQUFTLEVBQUUsQ0FB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dEQsQ0FBQzthQUNIO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBNUhELDBDQTRIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBDb2RlQnVpbGRQcm9qZWN0IH0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3MvdXRpbGl0aWVzL2NvZGVCdWlsZFwiO1xuaW1wb3J0IHtcbiAgQnVpbGRFbnZpcm9ubWVudFZhcmlhYmxlVHlwZSxcbiAgQnVpbGRTcGVjXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY29kZWJ1aWxkXCI7XG5pbXBvcnQgeyBMb2dHcm91cCB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL2xvZ2dpbmcvbG9nR3JvdXBcIjtcbmltcG9ydCB7IFJlbW92YWxQb2xpY3ksIFN0YWNrUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IFJvbGUgfSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy9pYW0vcm9sZVwiO1xuaW1wb3J0IHtcbiAgUG9saWN5RG9jdW1lbnQsXG4gIFBvbGljeVN0YXRlbWVudCxcbiAgU2VydmljZVByaW5jaXBhbFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiO1xuaW1wb3J0IHtcbiAgRXZlbnRCdXMsXG4gIEV2ZW50RmllbGQsXG4gIFJ1bGUsXG4gIFJ1bGVUYXJnZXRJbnB1dFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWV2ZW50c1wiO1xuaW1wb3J0ICogYXMgVGFyZ2V0cyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWV2ZW50cy10YXJnZXRzXCI7XG5pbXBvcnQgeyBDb2RlQnVpbGRTdGFydEJ1aWxkIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zdGVwZnVuY3Rpb25zLXRhc2tzXCI7XG5pbXBvcnQgeyBKc29uUGF0aCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3Mtc3RlcGZ1bmN0aW9uc1wiO1xuXG5pbnRlcmZhY2UgRWNyRGVmYXVsdEltYWdlUHJvcHMgZXh0ZW5kcyBTdGFja1Byb3BzIHtcbiAgcmVnaW9uOiBzdHJpbmc7XG4gIGFjY291bnRJZDogc3RyaW5nO1xuICBldmVudEJ1c0Fybjogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgRWNyRGVmYXVsdEltYWdlIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEVjckRlZmF1bHRJbWFnZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGNvbnN0IGxvZ0dyb3VwID0gbmV3IExvZ0dyb3VwKHRoaXMsIGBsb2dHcm91cGAsIHtcbiAgICAgIGxvZ0dyb3VwTmFtZTogYC92cGMvY29kZWJ1aWxkLyR7aWR9L2AsXG4gICAgICByZW1vdmFsUG9saWN5OiBSZW1vdmFsUG9saWN5LkRFU1RST1lcbiAgICB9KTtcblxuICAgIGNvbnN0IGVjckRlZmF1bHRJbWFnZVJvbGUgPSBuZXcgUm9sZSh0aGlzLCBcImVjckRlZmF1bHRJbWFnZVJvbGVcIiwge1xuICAgICAgcm9sZU5hbWU6IGBlY3JEZWZhdWx0SW1hZ2VSb2xlYCxcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlJvbGUgdG8gcHVzaCBkZWZhdWx0IEVDUiBpbWFnZXMgaW50byBuZXcgcmVwb3NpdG9yaWVzXCIsXG4gICAgICBhc3N1bWVkQnk6IG5ldyBTZXJ2aWNlUHJpbmNpcGFsKFwiY29kZWJ1aWxkLmFtYXpvbmF3cy5jb21cIiksXG4gICAgICBpbmxpbmVQb2xpY2llczoge1xuICAgICAgICBbXCJwdXNoRWNySW1hZ2VcIl06IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgICAgc3RhdGVtZW50czogW1xuICAgICAgICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgICBcImVjcjpDb21wbGV0ZUxheWVyVXBsb2FkXCIsXG4gICAgICAgICAgICAgICAgXCJlY3I6R2V0QXV0aG9yaXphdGlvblRva2VuXCIsXG4gICAgICAgICAgICAgICAgXCJlY3I6VXBsb2FkTGF5ZXJQYXJ0XCIsXG4gICAgICAgICAgICAgICAgXCJlY3I6SW5pdGlhdGVMYXllclVwbG9hZFwiLFxuICAgICAgICAgICAgICAgIFwiZWNyOkJhdGNoQ2hlY2tMYXllckF2YWlsYWJpbGl0eVwiLFxuICAgICAgICAgICAgICAgIFwiZWNyOlB1dEltYWdlXCJcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgcmVzb3VyY2VzOiBbXCIqXCJdXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF1cbiAgICAgICAgfSksXG4gICAgICAgIFtcIndyaXRlTG9nc1wiXTogbmV3IFBvbGljeURvY3VtZW50KHtcbiAgICAgICAgICBzdGF0ZW1lbnRzOiBbXG4gICAgICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICAgIFwibG9nczpDcmVhdGVMb2dHcm91cFwiLFxuICAgICAgICAgICAgICAgIFwibG9nczpDcmVhdGVMb2dTdHJlYW1cIixcbiAgICAgICAgICAgICAgICBcImxvZ3M6UHV0TG9nRXZlbnRzXCJcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgcmVzb3VyY2VzOiBbbG9nR3JvdXAubG9nR3JvdXBBcm5dXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF1cbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnN0IGNvZGVCdWlsZFByb2plY3QgPSBuZXcgQ29kZUJ1aWxkUHJvamVjdCh0aGlzLCBcImNvZGVCdWlsZFByb2plY3RcIiwge1xuICAgICAgZGVzY3JpcHRpb246IFwiQnVpbGQgYW5kIHB1c2ggdGhlIGRlZmF1bHQgRUNSIGltYWdlIHRvIG5ldyByZXBvc2l0b3JpZXNcIixcbiAgICAgIHByb2plY3ROYW1lOiBcImVjckRlZmF1bHRJbWFnZVwiLFxuICAgICAgYnVpbGRTcGVjOiBCdWlsZFNwZWMuZnJvbU9iamVjdCh7XG4gICAgICAgIHZlcnNpb246IDAuMixcbiAgICAgICAgcGhhc2VzOiB7XG4gICAgICAgICAgYnVpbGQ6IHtcbiAgICAgICAgICAgIGNvbW1hbmRzOiBbXG4gICAgICAgICAgICAgIFwiZG9ja2VyIHB1bGwgcHVibGljLmVjci5hd3MvYjVkNWw3bjkvd2VsY29tZTpsYXRlc3RcIixcbiAgICAgICAgICAgICAgXCJkb2NrZXIgdGFnIHB1YmxpYy5lY3IuYXdzL2I1ZDVsN245L3dlbGNvbWU6bGF0ZXN0ICRFQ1JfUkVQT1NJVE9SWTpsYXRlc3RcIixcbiAgICAgICAgICAgICAgYGF3cyBlY3IgZ2V0LWxvZ2luLXBhc3N3b3JkIC0tcmVnaW9uICR7cHJvcHMucmVnaW9ufSB8IGRvY2tlciBsb2dpbiAtLXVzZXJuYW1lIEFXUyAtLXBhc3N3b3JkLXN0ZGluICR7cHJvcHMuYWNjb3VudElkfS5ka3IuZWNyLiR7cHJvcHMucmVnaW9ufS5hbWF6b25hd3MuY29tYCxcbiAgICAgICAgICAgICAgXCJkb2NrZXIgcHVzaCAkRUNSX1JFUE9TSVRPUlk6bGF0ZXN0XCJcbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgbG9nZ2luZzoge1xuICAgICAgICBjbG91ZFdhdGNoOiB7XG4gICAgICAgICAgbG9nR3JvdXA6IGxvZ0dyb3VwXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICByb2xlOiBlY3JEZWZhdWx0SW1hZ2VSb2xlLFxuICAgICAgdGFnczoge1xuICAgICAgICBcImZqYWxsOmNvc3RBbGxvY2F0aW9uOmVudmlyb25tZW50XCI6IFwibWFuYWdlbWVudFwiLFxuICAgICAgICBcImZqYWxsOmNvc3RBbGxvY2F0aW9uOnNlcnZpY2VcIjogXCJlY3JEZWZhdWx0SW1hZ2VcIixcbiAgICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjpvd25lclwiOiBcIkZqYWxsXCJcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIG5ldyBDb2RlQnVpbGRTdGFydEJ1aWxkKHRoaXMsIFwiY29kZUJ1aWxkVGFza1wiLCB7XG4gICAgICBwcm9qZWN0OiBjb2RlQnVpbGRQcm9qZWN0LnByb2plY3QsXG4gICAgICBpbnB1dFBhdGg6IEpzb25QYXRoLnN0cmluZ0F0KFwiJC5zb3VyY2VcIiksXG4gICAgICBlbnZpcm9ubWVudFZhcmlhYmxlc092ZXJyaWRlOiB7XG4gICAgICAgIEVDUl9SRVBPU0lUT1JZOiB7XG4gICAgICAgICAgdHlwZTogQnVpbGRFbnZpcm9ubWVudFZhcmlhYmxlVHlwZS5QTEFJTlRFWFQsXG4gICAgICAgICAgdmFsdWU6IEpzb25QYXRoLnN0cmluZ0F0KFwiJC5zb3VyY2VcIilcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29uc3QgZXZlbnRJbnB1dE1hcHBpbmcgPSB7XG4gICAgICByZXBvc2l0b3J5VXJpOiBFdmVudEZpZWxkLmZyb21QYXRoKFxuICAgICAgICBcIiQuZGV0YWlsLnJlc3BvbnNlRWxlbWVudHMucmVwb3NpdG9yeS5yZXBvc2l0b3J5VXJpXCJcbiAgICAgIClcbiAgICB9O1xuXG4gICAgY29uc3QgZXZlbnRJbnB1dFRlbXBsYXRlID0ge1xuICAgICAgZW52aXJvbm1lbnRWYXJpYWJsZXNPdmVycmlkZTogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogXCJFQ1JfUkVQT1NJVE9SWVwiLFxuICAgICAgICAgIHZhbHVlOiBldmVudElucHV0TWFwcGluZy5yZXBvc2l0b3J5VXJpXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9O1xuXG4gICAgbmV3IFJ1bGUodGhpcywgXCJlY3JDcmVhdGlvblJ1bGVcIiwge1xuICAgICAgcnVsZU5hbWU6IFwiZWNyQ3JlYXRpb25SdWxlXCIsXG4gICAgICBkZXNjcmlwdGlvbjpcbiAgICAgICAgXCJUcmlnZ2VyIHRoZSBkZWZhdWx0IEVDUiBpbWFnZSBidWlsZCB3aGVuIGEgbmV3IHJlcG9zaXRvcnkgaXMgY3JlYXRlZFwiLFxuICAgICAgZW5hYmxlZDogdHJ1ZSxcbiAgICAgIGV2ZW50QnVzOiBFdmVudEJ1cy5mcm9tRXZlbnRCdXNBcm4oXG4gICAgICAgIHRoaXMsXG4gICAgICAgIFwiZGVmYXVsdEV2ZW50QnVzXCIsXG4gICAgICAgIHByb3BzLmV2ZW50QnVzQXJuXG4gICAgICApLFxuICAgICAgZXZlbnRQYXR0ZXJuOiB7XG4gICAgICAgIHNvdXJjZTogW1wiYXdzLmVjclwiXSxcbiAgICAgICAgZGV0YWlsVHlwZTogW1wiQVdTIEFQSSBDYWxsIHZpYSBDbG91ZFRyYWlsXCJdLFxuICAgICAgICBkZXRhaWw6IHtcbiAgICAgICAgICBldmVudFNvdXJjZTogW1wiZWNyLmFtYXpvbmF3cy5jb21cIl0sXG4gICAgICAgICAgZXZlbnROYW1lOiBbXCJDcmVhdGVSZXBvc2l0b3J5XCJdXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICB0YXJnZXRzOiBbXG4gICAgICAgIG5ldyBUYXJnZXRzLkNvZGVCdWlsZFByb2plY3QoY29kZUJ1aWxkUHJvamVjdC5wcm9qZWN0LCB7XG4gICAgICAgICAgZXZlbnQ6IFJ1bGVUYXJnZXRJbnB1dC5mcm9tT2JqZWN0KGV2ZW50SW5wdXRUZW1wbGF0ZSlcbiAgICAgICAgfSlcbiAgICAgIF1cbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -2,7 +2,7 @@ import { Construct } from "constructs";
2
2
  interface IpamPoolIdProps {
3
3
  region: string;
4
4
  ownerId: string;
5
- accountName: string;
5
+ accountId: string;
6
6
  }
7
7
  export declare class IpamPoolId extends Construct {
8
8
  constructor(scope: Construct, id: string, props: IpamPoolIdProps);
@@ -28,11 +28,11 @@ class IpamPoolId extends constructs_1.Construct {
28
28
  });
29
29
  // Stores the IpamPoolId in CfnOutput
30
30
  new cfnOutput_1.CfnOutput(this, `Output`, {
31
- key: `${props.accountName}IpamPoolId`,
31
+ key: `IpamPoolId${props.accountId}`,
32
32
  value: ipamPoolId.getResponseField("IpamPools.0.IpamPoolId"),
33
- exportName: `${props.accountName}IpamPoolId`
33
+ exportName: `IpamPoolId${props.accountId}`
34
34
  });
35
35
  }
36
36
  }
37
37
  exports.IpamPoolId = IpamPoolId;
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXBhbVBvb2xJZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9jb25maWcvYXdzL2lwYW1Qb29sSWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQXVDO0FBQ3ZDLHVGQUFvRjtBQUNwRixnRUFBZ0U7QUFDaEUsdUVBQW9FO0FBUXBFLE1BQWEsVUFBVyxTQUFRLHNCQUFTO0lBQ3ZDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBc0I7UUFDOUQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQiwyQkFBMkI7UUFDM0IsTUFBTSxVQUFVLEdBQUcsSUFBSSxxQ0FBaUIsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7WUFDL0QsWUFBWSxFQUFFLFlBQVk7WUFDMUIsUUFBUSxFQUFFO2dCQUNSLE9BQU8sRUFBRSxLQUFLO2dCQUNkLE1BQU0sRUFBRSwwQkFBMEI7Z0JBQ2xDLFVBQVUsRUFBRTtvQkFDVixPQUFPLEVBQUU7d0JBQ1A7NEJBQ0UsSUFBSSxFQUFFLFFBQVE7NEJBQ2QsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQzt5QkFDdkI7cUJBQ0Y7aUJBQ0Y7Z0JBQ0Qsa0JBQWtCLEVBQUUsZUFBZSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUM7YUFDeEU7WUFDRCxZQUFZLEVBQUUsMkJBQTJCO1NBQzFDLENBQUMsQ0FBQztRQUVILHFDQUFxQztRQUNyQyxJQUFJLHFCQUFTLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUM1QixHQUFHLEVBQUUsR0FBRyxLQUFLLENBQUMsV0FBVyxZQUFZO1lBQ3JDLEtBQUssRUFBRSxVQUFVLENBQUMsZ0JBQWdCLENBQUMsd0JBQXdCLENBQUM7WUFDNUQsVUFBVSxFQUFFLEdBQUcsS0FBSyxDQUFDLFdBQVcsWUFBWTtTQUM3QyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUE5QkQsZ0NBOEJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEF3c0N1c3RvbVJlc291cmNlIH0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3MvdXRpbGl0aWVzL2F3c0N1c3RvbVJlc291cmNlXCI7XG5pbXBvcnQgKiBhcyBjdXN0b21SZXNvdXJjZXMgZnJvbSBcImF3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXNcIjtcbmltcG9ydCB7IENmbk91dHB1dCB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL3V0aWxpdGllcy9jZm5PdXRwdXRcIjtcblxuaW50ZXJmYWNlIElwYW1Qb29sSWRQcm9wcyB7XG4gIHJlZ2lvbjogc3RyaW5nO1xuICBvd25lcklkOiBzdHJpbmc7XG4gIGFjY291bnROYW1lOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBJcGFtUG9vbElkIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IElwYW1Qb29sSWRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICAvLyBSZXRyaWV2ZXMgdGhlIElwYW1Qb29sSWRcbiAgICBjb25zdCBpcGFtUG9vbElkID0gbmV3IEF3c0N1c3RvbVJlc291cmNlKHRoaXMsIFwiQ3VzdG9tUmVzb3VyY2VcIiwge1xuICAgICAgZnVuY3Rpb25OYW1lOiBcImlwYW1Qb29sSWRcIixcbiAgICAgIG9uQ3JlYXRlOiB7XG4gICAgICAgIHNlcnZpY2U6IFwiZWMyXCIsXG4gICAgICAgIGFjdGlvbjogXCJEZXNjcmliZUlwYW1Qb29sc0NvbW1hbmRcIixcbiAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgIEZpbHRlcnM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgTmFtZTogXCJsb2NhbGVcIixcbiAgICAgICAgICAgICAgVmFsdWVzOiBbcHJvcHMucmVnaW9uXVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfSxcbiAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkOiBjdXN0b21SZXNvdXJjZXMuUGh5c2ljYWxSZXNvdXJjZUlkLm9mKFwiaXBhbVBvb2xJZFwiKVxuICAgICAgfSxcbiAgICAgIHJlc291cmNlVHlwZTogXCJDdXN0b206OkRlc2NyaWJlSXBhbVBvb2xzXCJcbiAgICB9KTtcblxuICAgIC8vIFN0b3JlcyB0aGUgSXBhbVBvb2xJZCBpbiBDZm5PdXRwdXRcbiAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIGBPdXRwdXRgLCB7XG4gICAgICBrZXk6IGAke3Byb3BzLmFjY291bnROYW1lfUlwYW1Qb29sSWRgLFxuICAgICAgdmFsdWU6IGlwYW1Qb29sSWQuZ2V0UmVzcG9uc2VGaWVsZChcIklwYW1Qb29scy4wLklwYW1Qb29sSWRcIiksXG4gICAgICBleHBvcnROYW1lOiBgJHtwcm9wcy5hY2NvdW50TmFtZX1JcGFtUG9vbElkYFxuICAgIH0pO1xuICB9XG59XG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXBhbVBvb2xJZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYi9jb25maWcvYXdzL2lwYW1Qb29sSWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQXVDO0FBQ3ZDLHVGQUFvRjtBQUNwRixnRUFBZ0U7QUFDaEUsdUVBQW9FO0FBUXBFLE1BQWEsVUFBVyxTQUFRLHNCQUFTO0lBQ3ZDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBc0I7UUFDOUQsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQiwyQkFBMkI7UUFDM0IsTUFBTSxVQUFVLEdBQUcsSUFBSSxxQ0FBaUIsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7WUFDL0QsWUFBWSxFQUFFLFlBQVk7WUFDMUIsUUFBUSxFQUFFO2dCQUNSLE9BQU8sRUFBRSxLQUFLO2dCQUNkLE1BQU0sRUFBRSwwQkFBMEI7Z0JBQ2xDLFVBQVUsRUFBRTtvQkFDVixPQUFPLEVBQUU7d0JBQ1A7NEJBQ0UsSUFBSSxFQUFFLFFBQVE7NEJBQ2QsTUFBTSxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQzt5QkFDdkI7cUJBQ0Y7aUJBQ0Y7Z0JBQ0Qsa0JBQWtCLEVBQUUsZUFBZSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUM7YUFDeEU7WUFDRCxZQUFZLEVBQUUsMkJBQTJCO1NBQzFDLENBQUMsQ0FBQztRQUVILHFDQUFxQztRQUNyQyxJQUFJLHFCQUFTLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUM1QixHQUFHLEVBQUUsYUFBYSxLQUFLLENBQUMsU0FBUyxFQUFFO1lBQ25DLEtBQUssRUFBRSxVQUFVLENBQUMsZ0JBQWdCLENBQUMsd0JBQXdCLENBQUM7WUFDNUQsVUFBVSxFQUFFLGFBQWEsS0FBSyxDQUFDLFNBQVMsRUFBRTtTQUMzQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUE5QkQsZ0NBOEJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IEF3c0N1c3RvbVJlc291cmNlIH0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3MvdXRpbGl0aWVzL2F3c0N1c3RvbVJlc291cmNlXCI7XG5pbXBvcnQgKiBhcyBjdXN0b21SZXNvdXJjZXMgZnJvbSBcImF3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXNcIjtcbmltcG9ydCB7IENmbk91dHB1dCB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL3V0aWxpdGllcy9jZm5PdXRwdXRcIjtcblxuaW50ZXJmYWNlIElwYW1Qb29sSWRQcm9wcyB7XG4gIHJlZ2lvbjogc3RyaW5nO1xuICBvd25lcklkOiBzdHJpbmc7XG4gIGFjY291bnRJZDogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgSXBhbVBvb2xJZCBleHRlbmRzIENvbnN0cnVjdCB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBJcGFtUG9vbElkUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgLy8gUmV0cmlldmVzIHRoZSBJcGFtUG9vbElkXG4gICAgY29uc3QgaXBhbVBvb2xJZCA9IG5ldyBBd3NDdXN0b21SZXNvdXJjZSh0aGlzLCBcIkN1c3RvbVJlc291cmNlXCIsIHtcbiAgICAgIGZ1bmN0aW9uTmFtZTogXCJpcGFtUG9vbElkXCIsXG4gICAgICBvbkNyZWF0ZToge1xuICAgICAgICBzZXJ2aWNlOiBcImVjMlwiLFxuICAgICAgICBhY3Rpb246IFwiRGVzY3JpYmVJcGFtUG9vbHNDb21tYW5kXCIsXG4gICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICBGaWx0ZXJzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIE5hbWU6IFwibG9jYWxlXCIsXG4gICAgICAgICAgICAgIFZhbHVlczogW3Byb3BzLnJlZ2lvbl1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZDogY3VzdG9tUmVzb3VyY2VzLlBoeXNpY2FsUmVzb3VyY2VJZC5vZihcImlwYW1Qb29sSWRcIilcbiAgICAgIH0sXG4gICAgICByZXNvdXJjZVR5cGU6IFwiQ3VzdG9tOjpEZXNjcmliZUlwYW1Qb29sc1wiXG4gICAgfSk7XG5cbiAgICAvLyBTdG9yZXMgdGhlIElwYW1Qb29sSWQgaW4gQ2ZuT3V0cHV0XG4gICAgbmV3IENmbk91dHB1dCh0aGlzLCBgT3V0cHV0YCwge1xuICAgICAga2V5OiBgSXBhbVBvb2xJZCR7cHJvcHMuYWNjb3VudElkfWAsXG4gICAgICB2YWx1ZTogaXBhbVBvb2xJZC5nZXRSZXNwb25zZUZpZWxkKFwiSXBhbVBvb2xzLjAuSXBhbVBvb2xJZFwiKSxcbiAgICAgIGV4cG9ydE5hbWU6IGBJcGFtUG9vbElkJHtwcm9wcy5hY2NvdW50SWR9YFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -24,7 +24,6 @@ export interface BasicAppProps {
24
24
  environment: string;
25
25
  owner?: string;
26
26
  parentDomain?: string;
27
- accountName: string;
28
27
  listenerPort?: number;
29
28
  protocol?: Protocol;
30
29
  region?: string;
@@ -14,7 +14,8 @@ class BasicApp {
14
14
  const stackProps = this.getStackProps(props);
15
15
  this.vpcStack = new awsStack_1.default(`${id}Network`, [], stackProps)
16
16
  .addNetwork(vpc_1.Vpc.build(`${id}Vpc`, {
17
- accountName: props.accountName,
17
+ accountId: props.accountId,
18
+ ipv4IpamPoolId: aws_cdk_lib_1.Fn.importValue(`IpamPoolId${props?.accountId}`),
18
19
  region: props.region,
19
20
  tags: props.tags
20
21
  }))
@@ -62,8 +63,7 @@ class BasicApp {
62
63
  return;
63
64
  return {
64
65
  accountId: props.accountId,
65
- region: props.region,
66
- accountName: props.accountName
66
+ region: props.region
67
67
  };
68
68
  }
69
69
  getProps(id, rawProps) {
@@ -87,4 +87,4 @@ class BasicApp {
87
87
  }
88
88
  exports.BasicApp = BasicApp;
89
89
  exports.default = BasicApp;
90
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWNBcHAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvcGF0dGVybnMvYXdzL2Jhc2ljQXBwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJEQUF1RTtBQUN2RSw0REFBeUQ7QUFDekQseURBSXlDO0FBQ3pDLG9FQUE2RDtBQUM3RCx5REFBcUQ7QUFDckQseURBQWtEO0FBQ2xELDZDQUEwQztBQXlDMUMsTUFBYSxRQUFRO0lBTW5CLFlBQVksRUFBVSxFQUFFLFFBQXVCO1FBQzdDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFN0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLGtCQUFRLENBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsVUFBVSxDQUFDO2FBQ3pELFVBQVUsQ0FDVCxTQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUU7WUFDcEIsV0FBVyxFQUFFLEtBQUssQ0FBQyxXQUFXO1lBQzlCLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtZQUNwQixJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUk7U0FDakIsQ0FBQyxDQUNIO2FBQ0Esb0JBQW9CLENBQUMsYUFBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUUvQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksa0JBQVEsQ0FDL0IsR0FBRyxFQUFFLFVBQVUsRUFDZixJQUFJLENBQUMsUUFBUSxFQUNiLFVBQVUsQ0FDWDthQUNFLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDO2FBQ3RDLFdBQVcsQ0FBQyxrQkFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsVUFBVSxDQUFD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RDtZQUNELFdBQVcsRUFBRSxpQkFBVyxDQUFDLEdBQUc7WUFDNUIsUUFBUSxFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLGNBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLGNBQVEsQ0FBQyxJQUFJO1lBQ2hFLGFBQWEsRUFBRSxJQUFJO1lBQ25CLFdBQVcsRUFBRSxHQUFHLEVBQUUsU0FBUztZQUMzQixXQUFXLEVBQUUsR0FBRyxFQUFFLFNBQVM7U0FDNUIsQ0FBQztRQUVGLE9BQU87WUFDTCxHQUFHLFlBQVk7WUFDZixHQUFHLFFBQVE7U0FDWixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBL0dELDRCQStHQztBQUNELGtCQUFlLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBBd3NTdGFjaywgeyBBd3NTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3MvYXdzU3RhY2tcIjtcbmltcG9ydCB7IFZwYyB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL25ldHdvcmtpbmcvdnBjXCI7XG5pbXBvcnQgRmFyZ2F0ZSwge1xuICBDb250YWluZXJTZWNyZXQsXG4gIFNjYWxpbmdUeXBlLFxuICBQcm90b2NvbFxufSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy9jb21wdXRlL2Vjc1wiO1xuaW1wb3J0IERhdGFiYXNlIGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL2RhdGFiYXNlL2RhdGFiYXNlXCI7XG5pbXBvcnQgeyBTZWNyZXQgfSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy9zZWNyZXRzXCI7XG5pbXBvcnQgeyBFY3IgfSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy9zdG9yYWdlXCI7XG5pbXBvcnQgeyBTZWNyZXRWYWx1ZSB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgSU1hbmFnZWRQb2xpY3ksIFBvbGljeURvY3VtZW50IH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1pYW1cIjtcbmltcG9ydCB7IEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uL3R5cGVzXCI7XG5cbi8qKlxuICogSW50ZXJzZWN0ZWQgd2l0aCBCYXNpY0FwcFByb3BzIGluIHRoZSBnZXRQcm9wcyBtZXRob2QuIFRoaXMgYWxsb3dzIHRoZSBCYXNpY0FwcCBjb25zdHJ1Y3RcbiAqIHRvIHRyZWF0IHRoZXNlIGFzIHJlcXVpcmVkIHByb3BlcnRpZXMgYW5kIGF2b2lkIGNvbnN0YW50IG51bGwgY2hlY2tpbmcuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmFzaWNBcHBQcm9wRGVmYXVsdHMge1xuICB0YWdzOiBLZXlWYWx1ZTtcbiAgc2VydmljZU5hbWU6IHN0cmluZztcbiAgY2x1c3Rlck5hbWU6IHN0cmluZztcbiAgcHJvdG9jb2w6IFByb3RvY29sO1xuICBzY2FsaW5nVHlwZTogU2NhbGluZ1R5cGU7XG4gIGNvbnRhaW5lclBvcnQ6IG51bWJlcjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCYXNpY0FwcFByb3BzIHtcbiAgYWNjb3VudElkPzogc3RyaW5nO1xuICBjbHVzdGVyTmFtZT86IHN0cmluZztcbiAgY29udGFpbmVyQ29tbWFuZD86IHN0cmluZ1tdO1xuICBjb250YWluZXJFbnZpcm9ubWVudD86IEtleVZhbHVlO1xuICBjb250YWluZXJQb3J0PzogbnVtYmVyO1xuICBjb250YWluZXJTZWNyZXRzPzogc3RyaW5nW107XG4gIGVudmlyb25tZW50OiBzdHJpbmc7XG4gIC8vIFRoZSB0ZWFtL2RvbWFpbi9idXNpbmVzcy11bml0IHRoYXQgaXMgcmVzcG9uc2libGUgZm9yIHRoaXMgc2VydmljZVxuICBvd25lcj86IHN0cmluZztcbiAgcGFyZW50RG9tYWluPzogc3RyaW5nOyAvLyBGaXggdG8gbWFrZSBhIGRlcGVuZGVuY3kgb2YgcHJvdG9jb2xcbiAgYWNjb3VudE5hbWU6IHN0cmluZztcbiAgbGlzdGVuZXJQb3J0PzogbnVtYmVyO1xuICBwcm90b2NvbD86IFByb3RvY29sO1xuICByZWdpb24/OiBzdHJpbmc7XG4gIHNjYWxpbmdUeXBlPzogU2NhbGluZ1R5cGU7XG4gIHNlcnZpY2VOYW1lPzogc3RyaW5nO1xuICB0YXNrUm9sZUlubGluZVBvbGljaWVzPzoge1xuICAgIFtuYW1lOiBzdHJpbmddOiBQb2xpY3lEb2N1bWVudDtcbiAgfTtcbiAgdGFza1JvbGVNYW5hZ2VkUG9saWNpZXM/OiBJTWFuYWdlZFBvbGljeVtdO1xuICB0YWdzPzogS2V5VmFsdWU7XG59XG5cbmV4cG9ydCBjbGFzcyBCYXNpY0FwcCB7XG4gIHByaXZhdGUgdnBjU3RhY2s6IEF3c1N0YWNrO1xuICBwcml2YXRlIGRhdGFiYXNlU3RhY2s6IEF3c1N0YWNrO1xuICBwcml2YXRlIHNlY3JldFN0YWNrOiBBd3NTdGFjaztcbiAgcHJpdmF0ZSBjb21wdXRlU3RhY2s6IEF3c1N0YWNrO1xuXG4gIGNvbnN0cnVjdG9yKGlkOiBzdHJpbmcsIHJhd1Byb3BzOiBCYXNpY0FwcFByb3BzKSB7XG4gICAgY29uc3QgcHJvcHMgPSB0aGlzLmdldFByb3BzKGlkLCByYXdQcm9wcyk7XG4gICAgY29uc3Qgc3RhY2tQcm9wcyA9IHRoaXMuZ2V0U3RhY2tQcm9wcyhwcm9wcyk7XG5cbiAgICB0aGlzLnZwY1N0YWNrID0gbmV3IEF3c1N0YWNrKGAke2lkfU5ldHdvcmtgLCBbXSwgc3RhY2tQcm9wcylcbiAgICAgIC5hZGROZXR3b3JrKFxuICAgICAgICBWcGMuYnVpbGQoYCR7aWR9VnBjYCwge1xuICAgICAgICAgIGFjY291bnROYW1lOiBwcm9wcy5hY2NvdW50TmFtZSxcbiAgICAgICAgICByZWdpb246IHByb3BzLnJlZ2lvbixcbiAgICAgICAgICB0YWdzOiBwcm9wcy50YWdzXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuYWRkQ29udGFpbmVyUmVnaXN0cnkoRWNyLmJ1aWxkKGAke2lkfUVjcmApKTtcblxuICAgIHRoaXMuZGF0YWJhc2VTdGFjayA9IG5ldyBBd3NTdGFjayhcbiAgICAgIGAke2lkfURhdGFiYXNlYCxcbiAgICAgIHRoaXMudnBjU3RhY2ssXG4gICAgICBzdGFja1Byb3BzXG4gICAgKVxuICAgICAgLmFkZE5ldHdvcmsodGhpcy52cGNTdGFjay5nZXROZXR3b3JrKCkpXG4gICAgICAuYWRkUmVzb3VyY2UoRGF0YWJhc2UuYnVpbGQoYCR7aWR9RGF0YWJhc2VgKSk7XG5cbiAgICAvL1RPRE86IHZhbGlkYXRlIGlkIGRvZXMgbm90IGNvbnRhaW4gc3BlY2lhbCBjaGFyYWN0ZXJzIChubyBoeXBoZW5zIC0gbm8gc2xhc2hlcyBldGMpIGRhdGFiYXNlIGluc3RhbmNlcyB3b24ndCBhbGxvdyBpdFxuXG4gICAgY29uc3QgZGJSZXNvdXJjZSA9IHRoaXMuZGF0YWJhc2VTdGFjay5nZXRSZXNvdXJjZShcbiAgICAgIGAke2lkfURhdGFiYXNlYFxuICAgICkgYXMgRGF0YWJhc2U7XG5cbiAgICBjb25zdCBzZWNyZXRPYmplY3RWYWx1ZTogQ29udGFpbmVyU2VjcmV0ID0ge307XG4gICAgaWYgKHByb3BzLmNvbnRhaW5lclNlY3JldHMpIHtcbiAgICAgIGZvciAoY29uc3Qgc2VjcmV0T2JqZWN0IG9mIHByb3BzLmNvbnRhaW5lclNlY3JldHMpIHtcbiAgICAgICAgc2VjcmV0T2JqZWN0VmFsdWVbc2VjcmV0T2JqZWN0XSA9IFNlY3JldFZhbHVlLnVuc2FmZVBsYWluVGV4dChcIlwiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLnNlY3JldFN0YWNrID0gbmV3IEF3c1N0YWNrKGAke2lkfVNlY3JldGAsIFtdLCBzdGFja1Byb3BzKS5hZGRSZXNvdXJjZShcbiAgICAgIFNlY3JldC5idWlsZChgJHtpZH1TZWNyZXRgLCB7XG4gICAgICAgIHNlY3JldE5hbWU6IGAvJHtwcm9wcy5jbHVzdGVyTmFtZX0vJHtwcm9wcy5zZXJ2aWNlTmFtZX1gLFxuICAgICAgICBzZWNyZXRPYmplY3RWYWx1ZTogc2VjcmV0T2JqZWN0VmFsdWUsXG4gICAgICAgIHRhZ3M6IHByb3BzLnRhZ3NcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRoaXMuY29tcHV0ZVN0YWNrID0gbmV3IEF3c1N0YWNrKFxuICAgICAgYCR7aWR9Q29tcHV0ZWAsXG4gICAgICBbdGhpcy52cGNTdGFjaywgdGhpcy5kYXRhYmFzZVN0YWNrLCB0aGlzLnNlY3JldFN0YWNrXSxcbiAgICAgIHN0YWNrUHJvcHNcbiAgICApXG4gICAgICAuYWRkTmV0d29yayh0aGlzLnZwY1N0YWNrLmdldE5ldHdvcmsoKSlcbiAgICAgIC5hZGRSZXNvdXJjZShcbiAgICAgICAgRmFyZ2F0ZS5idWlsZChgJHtpZH1GYXJnYXRlYCwge1xuICAgICAgICAgIGNsdXN0ZXJOYW1lOiBwcm9wcy5jbHVzdGVyTmFtZSxcbiAgICAgICAgICBwcm90b2NvbDogcHJvcHMucHJvdG9jb2wsXG4gICAgICAgICAgLy9UT0RPOiBUaGlzIHNob3VsZCB3b3JrIHZpYSBsaW5lIDEyNiwgYnV0IGRvZXNuJ3Qgd29yayAoYXQgbGVhc3Qgb24gdXBkYXRlKVxuICAgICAgICAgIGRhdGFiYXNlQ29ubmVjdGlvbjogZGJSZXNvdXJjZS5jb25uZWN0aW9ucyxcbiAgICAgICAgICBjb250YWluZXJDb21tYW5kOiBwcm9wcy5jb250YWluZXJDb21tYW5kLFxuICAgICAgICAgIGNvbnRhaW5lckVudmlyb25tZW50OiBwcm9wcy5jb250YWluZXJFbnZpcm9ubWVudCxcbiAgICAgICAgICBjb250YWluZXJQb3J0OiBwcm9wcy5jb250YWluZXJQb3J0LFxuICAgICAgICAgIGNvbnRhaW5lclNlY3JldHM6IHNlY3JldE9iamVjdFZhbHVlLFxuICAgICAgICAgIGVjclJlcG9zaXRvcnk6IHRoaXMudnBjU3RhY2suZ2V0Q29udGFpbmVyUmVnaXN0cnkoKSxcbiAgICAgICAgICBwYXJlbnREb21haW46IHByb3BzLnBhcmVudERvbWFpbj8udG9Mb3dlckNhc2UoKSxcbiAgICAgICAgICBsaXN0ZW5lclBvcnQ6IHByb3BzLmxpc3RlbmVyUG9ydCxcbiAgICAgICAgICBzY2FsaW5nVHlwZTogcHJvcHMuc2NhbGluZ1R5cGUsXG4gICAgICAgICAgc2VydmljZU5hbWU6IHByb3BzLnNlcnZpY2VOYW1lLFxuICAgICAgICAgIHRhc2tSb2xlSW5saW5lUG9saWNpZXM6IHByb3BzLnRhc2tSb2xlSW5saW5lUG9saWNpZXMsXG4gICAgICAgICAgdGFza1JvbGVNYW5hZ2VkUG9saWNpZXM6IHByb3BzLnRhc2tSb2xlTWFuYWdlZFBvbGljaWVzLFxuICAgICAgICAgIHRhZ3M6IHByb3BzLnRhZ3NcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5jb25uZWN0KGAke2lkfUZhcmdhdGVgLCBgJHtpZH1EYXRhYmFzZWAsIDU0MzIpO1xuICB9XG5cbiAgZ2V0U3RhY2tQcm9wcyhwcm9wczogQmFzaWNBcHBQcm9wcyk6IEF3c1N0YWNrUHJvcHMgfCB1bmRlZmluZWQge1xuICAgIGlmICghcHJvcHMpIHJldHVybjtcblxuICAgIHJldHVybiB7XG4gICAgICBhY2NvdW50SWQ6IHByb3BzLmFjY291bnRJZCxcbiAgICAgIHJlZ2lvbjogcHJvcHMucmVnaW9uLFxuICAgICAgYWNjb3VudE5hbWU6IHByb3BzLmFjY291bnROYW1lXG4gICAgfTtcbiAgfVxuXG4gIGdldFByb3BzKFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcmF3UHJvcHM6IEJhc2ljQXBwUHJvcHNcbiAgKTogQmFzaWNBcHBQcm9wcyAmIEJhc2ljQXBwUHJvcERlZmF1bHRzIHtcbiAgICBjb25zdCBkZWZhdWx0UHJvcHMgPSB7XG4gICAgICB0YWdzOiB7XG4gICAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246c2VydmljZVwiOiBcImFwcFwiLFxuICAgICAgICBcImZqYWxsOmNvc3RBbGxvY2F0aW9uOmVudmlyb25tZW50XCI6XG4gICAgICAgICAgcmF3UHJvcHMuZW52aXJvbm1lbnQgfHwgXCJwcm9kdWN0aW9uXCIsXG4gICAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246b3duZXJcIjogcmF3UHJvcHMub3duZXIgfHwgXCJlbmdpbmVlclwiXG4gICAgICB9LFxuICAgICAgc2NhbGluZ1R5cGU6IFNjYWxpbmdUeXBlLkNQVSxcbiAgICAgIHByb3RvY29sOiByYXdQcm9wcy5wYXJlbnREb21haW4gPyBQcm90b2NvbC5IVFRQUyA6IFByb3RvY29sLkhUVFAsXG4gICAgICBjb250YWluZXJQb3J0OiAzMDAwLFxuICAgICAgc2VydmljZU5hbWU6IGAke2lkfVNlcnZpY2VgLFxuICAgICAgY2x1c3Rlck5hbWU6IGAke2lkfUNsdXN0ZXJgXG4gICAgfTtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5kZWZhdWx0UHJvcHMsXG4gICAgICAuLi5yYXdQcm9wc1xuICAgIH07XG4gIH1cbn1cbmV4cG9ydCBkZWZhdWx0IEJhc2ljQXBwO1xuIl19
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaWNBcHAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvcGF0dGVybnMvYXdzL2Jhc2ljQXBwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJEQUF1RTtBQUN2RSw0REFBeUQ7QUFDekQseURBSXlDO0FBQ3pDLG9FQUE2RDtBQUM3RCx5REFBcUQ7QUFDckQseURBQWtEO0FBQ2xELDZDQUE4QztBQXdDOUMsTUFBYSxRQUFRO0lBTW5CLFlBQVksRUFBVSxFQUFFLFFBQXVCO1FBQzdDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFN0MsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLGtCQUFRLENBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsVUFBVSxDQUFDO2FBQ3pELFVBQVUsQ0FDVCxTQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUU7WUFDcEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1lBQzFCLGNBQWMsRUFBRSxnQkFBRSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEtBQUssRUFBRSxTQUFTLEVBQUUsQ0FBQztZQUMvRCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07WUFDcEIsSUFBSSxFQUFFLEtBQUssQ0FBQyxJQUFJO1NBQ2pCLENBQUMsQ0FDSDthQUNBLG9CQUFvQixDQUFDLGFBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFFL0MsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLGtCQUFRLENBQy9CLEdBQUcsRUFBRSxVQUFVLEVBQ2YsSUFBSSxDQUFDLFFBQVEsRUFDYixVQUFVLENBQ1g7YUFDRSxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFV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QixFQUFFLFFBQVEsQ0FBQyxLQUFLLElBQUksVUFBVTthQUMzRDtZQUNELFdBQVcsRUFBRSxpQkFBVyxDQUFDLEdBQUc7WUFDNUIsUUFBUSxFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLGNBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLGNBQVEsQ0FBQyxJQUFJO1lBQ2hFLGFBQWEsRUFBRSxJQUFJO1lBQ25CLFdBQVcsRUFBRSxHQUFHLEVBQUUsU0FBUztZQUMzQixXQUFXLEVBQUUsR0FBRyxFQUFFLFNBQVM7U0FDNUIsQ0FBQztRQUVGLE9BQU87WUFDTCxHQUFHLFlBQVk7WUFDZixHQUFHLFFBQVE7U0FDWixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBL0dELDRCQStHQztBQUNELGtCQUFlLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBBd3NTdGFjaywgeyBBd3NTdGFja1Byb3BzIH0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3MvYXdzU3RhY2tcIjtcbmltcG9ydCB7IFZwYyB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL25ldHdvcmtpbmcvdnBjXCI7XG5pbXBvcnQgRmFyZ2F0ZSwge1xuICBDb250YWluZXJTZWNyZXQsXG4gIFNjYWxpbmdUeXBlLFxuICBQcm90b2NvbFxufSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy9jb21wdXRlL2Vjc1wiO1xuaW1wb3J0IERhdGFiYXNlIGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL2RhdGFiYXNlL2RhdGFiYXNlXCI7XG5pbXBvcnQgeyBTZWNyZXQgfSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy9zZWNyZXRzXCI7XG5pbXBvcnQgeyBFY3IgfSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy9zdG9yYWdlXCI7XG5pbXBvcnQgeyBGbiwgU2VjcmV0VmFsdWUgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IElNYW5hZ2VkUG9saWN5LCBQb2xpY3lEb2N1bWVudCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQgeyBLZXlWYWx1ZSB9IGZyb20gXCIuLi8uLi90eXBlc1wiO1xuXG4vKipcbiAqIEludGVyc2VjdGVkIHdpdGggQmFzaWNBcHBQcm9wcyBpbiB0aGUgZ2V0UHJvcHMgbWV0aG9kLiBUaGlzIGFsbG93cyB0aGUgQmFzaWNBcHAgY29uc3RydWN0XG4gKiB0byB0cmVhdCB0aGVzZSBhcyByZXF1aXJlZCBwcm9wZXJ0aWVzIGFuZCBhdm9pZCBjb25zdGFudCBudWxsIGNoZWNraW5nLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEJhc2ljQXBwUHJvcERlZmF1bHRzIHtcbiAgdGFnczogS2V5VmFsdWU7XG4gIHNlcnZpY2VOYW1lOiBzdHJpbmc7XG4gIGNsdXN0ZXJOYW1lOiBzdHJpbmc7XG4gIHByb3RvY29sOiBQcm90b2NvbDtcbiAgc2NhbGluZ1R5cGU6IFNjYWxpbmdUeXBlO1xuICBjb250YWluZXJQb3J0OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzaWNBcHBQcm9wcyB7XG4gIGFjY291bnRJZD86IHN0cmluZztcbiAgY2x1c3Rlck5hbWU/OiBzdHJpbmc7XG4gIGNvbnRhaW5lckNvbW1hbmQ/OiBzdHJpbmdbXTtcbiAgY29udGFpbmVyRW52aXJvbm1lbnQ/OiBLZXlWYWx1ZTtcbiAgY29udGFpbmVyUG9ydD86IG51bWJlcjtcbiAgY29udGFpbmVyU2VjcmV0cz86IHN0cmluZ1tdO1xuICBlbnZpcm9ubWVudDogc3RyaW5nO1xuICAvLyBUaGUgdGVhbS9kb21haW4vYnVzaW5lc3MtdW5pdCB0aGF0IGlzIHJlc3BvbnNpYmxlIGZvciB0aGlzIHNlcnZpY2VcbiAgb3duZXI/OiBzdHJpbmc7XG4gIHBhcmVudERvbWFpbj86IHN0cmluZzsgLy8gRml4IHRvIG1ha2UgYSBkZXBlbmRlbmN5IG9mIHByb3RvY29sXG4gIGxpc3RlbmVyUG9ydD86IG51bWJlcjtcbiAgcHJvdG9jb2w/OiBQcm90b2NvbDtcbiAgcmVnaW9uPzogc3RyaW5nO1xuICBzY2FsaW5nVHlwZT86IFNjYWxpbmdUeXBlO1xuICBzZXJ2aWNlTmFtZT86IHN0cmluZztcbiAgdGFza1JvbGVJbmxpbmVQb2xpY2llcz86IHtcbiAgICBbbmFtZTogc3RyaW5nXTogUG9saWN5RG9jdW1lbnQ7XG4gIH07XG4gIHRhc2tSb2xlTWFuYWdlZFBvbGljaWVzPzogSU1hbmFnZWRQb2xpY3lbXTtcbiAgdGFncz86IEtleVZhbHVlO1xufVxuXG5leHBvcnQgY2xhc3MgQmFzaWNBcHAge1xuICBwcml2YXRlIHZwY1N0YWNrOiBBd3NTdGFjaztcbiAgcHJpdmF0ZSBkYXRhYmFzZVN0YWNrOiBBd3NTdGFjaztcbiAgcHJpdmF0ZSBzZWNyZXRTdGFjazogQXdzU3RhY2s7XG4gIHByaXZhdGUgY29tcHV0ZVN0YWNrOiBBd3NTdGFjaztcblxuICBjb25zdHJ1Y3RvcihpZDogc3RyaW5nLCByYXdQcm9wczogQmFzaWNBcHBQcm9wcykge1xuICAgIGNvbnN0IHByb3BzID0gdGhpcy5nZXRQcm9wcyhpZCwgcmF3UHJvcHMpO1xuICAgIGNvbnN0IHN0YWNrUHJvcHMgPSB0aGlzLmdldFN0YWNrUHJvcHMocHJvcHMpO1xuXG4gICAgdGhpcy52cGNTdGFjayA9IG5ldyBBd3NTdGFjayhgJHtpZH1OZXR3b3JrYCwgW10sIHN0YWNrUHJvcHMpXG4gICAgICAuYWRkTmV0d29yayhcbiAgICAgICAgVnBjLmJ1aWxkKGAke2lkfVZwY2AsIHtcbiAgICAgICAgICBhY2NvdW50SWQ6IHByb3BzLmFjY291bnRJZCxcbiAgICAgICAgICBpcHY0SXBhbVBvb2xJZDogRm4uaW1wb3J0VmFsdWUoYElwYW1Qb29sSWQke3Byb3BzPy5hY2NvdW50SWR9YCksXG4gICAgICAgICAgcmVnaW9uOiBwcm9wcy5yZWdpb24sXG4gICAgICAgICAgdGFnczogcHJvcHMudGFnc1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLmFkZENvbnRhaW5lclJlZ2lzdHJ5KEVjci5idWlsZChgJHtpZH1FY3JgKSk7XG5cbiAgICB0aGlzLmRhdGFiYXNlU3RhY2sgPSBuZXcgQXdzU3RhY2soXG4gICAgICBgJHtpZH1EYXRhYmFzZWAsXG4gICAgICB0aGlzLnZwY1N0YWNrLFxuICAgICAgc3RhY2tQcm9wc1xuICAgIClcbiAgICAgIC5hZGROZXR3b3JrKHRoaXMudnBjU3RhY2suZ2V0TmV0d29yaygpKVxuICAgICAgLmFkZFJlc291cmNlKERhdGFiYXNlLmJ1aWxkKGAke2lkfURhdGFiYXNlYCkpO1xuXG4gICAgLy9UT0RPOiB2YWxpZGF0ZSBpZCBkb2VzIG5vdCBjb250YWluIHNwZWNpYWwgY2hhcmFjdGVycyAobm8gaHlwaGVucyAtIG5vIHNsYXNoZXMgZXRjKSBkYXRhYmFzZSBpbnN0YW5jZXMgd29uJ3QgYWxsb3cgaXRcblxuICAgIGNvbnN0IGRiUmVzb3VyY2UgPSB0aGlzLmRhdGFiYXNlU3RhY2suZ2V0UmVzb3VyY2UoXG4gICAgICBgJHtpZH1EYXRhYmFzZWBcbiAgICApIGFzIERhdGFiYXNlO1xuXG4gICAgY29uc3Qgc2VjcmV0T2JqZWN0VmFsdWU6IENvbnRhaW5lclNlY3JldCA9IHt9O1xuICAgIGlmIChwcm9wcy5jb250YWluZXJTZWNyZXRzKSB7XG4gICAgICBmb3IgKGNvbnN0IHNlY3JldE9iamVjdCBvZiBwcm9wcy5jb250YWluZXJTZWNyZXRzKSB7XG4gICAgICAgIHNlY3JldE9iamVjdFZhbHVlW3NlY3JldE9iamVjdF0gPSBTZWNyZXRWYWx1ZS51bnNhZmVQbGFpblRleHQoXCJcIik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy5zZWNyZXRTdGFjayA9IG5ldyBBd3NTdGFjayhgJHtpZH1TZWNyZXRgLCBbXSwgc3RhY2tQcm9wcykuYWRkUmVzb3VyY2UoXG4gICAgICBTZWNyZXQuYnVpbGQoYCR7aWR9U2VjcmV0YCwge1xuICAgICAgICBzZWNyZXROYW1lOiBgLyR7cHJvcHMuY2x1c3Rlck5hbWV9LyR7cHJvcHMuc2VydmljZU5hbWV9YCxcbiAgICAgICAgc2VjcmV0T2JqZWN0VmFsdWU6IHNlY3JldE9iamVjdFZhbHVlLFxuICAgICAgICB0YWdzOiBwcm9wcy50YWdzXG4gICAgICB9KVxuICAgICk7XG5cbiAgICB0aGlzLmNvbXB1dGVTdGFjayA9IG5ldyBBd3NTdGFjayhcbiAgICAgIGAke2lkfUNvbXB1dGVgLFxuICAgICAgW3RoaXMudnBjU3RhY2ssIHRoaXMuZGF0YWJhc2VTdGFjaywgdGhpcy5zZWNyZXRTdGFja10sXG4gICAgICBzdGFja1Byb3BzXG4gICAgKVxuICAgICAgLmFkZE5ldHdvcmsodGhpcy52cGNTdGFjay5nZXROZXR3b3JrKCkpXG4gICAgICAuYWRkUmVzb3VyY2UoXG4gICAgICAgIEZhcmdhdGUuYnVpbGQoYCR7aWR9RmFyZ2F0ZWAsIHtcbiAgICAgICAgICBjbHVzdGVyTmFtZTogcHJvcHMuY2x1c3Rlck5hbWUsXG4gICAgICAgICAgcHJvdG9jb2w6IHByb3BzLnByb3RvY29sLFxuICAgICAgICAgIC8vVE9ETzogVGhpcyBzaG91bGQgd29yayB2aWEgbGluZSAxMjYsIGJ1dCBkb2Vzbid0IHdvcmsgKGF0IGxlYXN0IG9uIHVwZGF0ZSlcbiAgICAgICAgICBkYXRhYmFzZUNvbm5lY3Rpb246IGRiUmVzb3VyY2UuY29ubmVjdGlvbnMsXG4gICAgICAgICAgY29udGFpbmVyQ29tbWFuZDogcHJvcHMuY29udGFpbmVyQ29tbWFuZCxcbiAgICAgICAgICBjb250YWluZXJFbnZpcm9ubWVudDogcHJvcHMuY29udGFpbmVyRW52aXJvbm1lbnQsXG4gICAgICAgICAgY29udGFpbmVyUG9ydDogcHJvcHMuY29udGFpbmVyUG9ydCxcbiAgICAgICAgICBjb250YWluZXJTZWNyZXRzOiBzZWNyZXRPYmplY3RWYWx1ZSxcbiAgICAgICAgICBlY3JSZXBvc2l0b3J5OiB0aGlzLnZwY1N0YWNrLmdldENvbnRhaW5lclJlZ2lzdHJ5KCksXG4gICAgICAgICAgcGFyZW50RG9tYWluOiBwcm9wcy5wYXJlbnREb21haW4/LnRvTG93ZXJDYXNlKCksXG4gICAgICAgICAgbGlzdGVuZXJQb3J0OiBwcm9wcy5saXN0ZW5lclBvcnQsXG4gICAgICAgICAgc2NhbGluZ1R5cGU6IHByb3BzLnNjYWxpbmdUeXBlLFxuICAgICAgICAgIHNlcnZpY2VOYW1lOiBwcm9wcy5zZXJ2aWNlTmFtZSxcbiAgICAgICAgICB0YXNrUm9sZUlubGluZVBvbGljaWVzOiBwcm9wcy50YXNrUm9sZUlubGluZVBvbGljaWVzLFxuICAgICAgICAgIHRhc2tSb2xlTWFuYWdlZFBvbGljaWVzOiBwcm9wcy50YXNrUm9sZU1hbmFnZWRQb2xpY2llcyxcbiAgICAgICAgICB0YWdzOiBwcm9wcy50YWdzXG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuY29ubmVjdChgJHtpZH1GYXJnYXRlYCwgYCR7aWR9RGF0YWJhc2VgLCA1NDMyKTtcbiAgfVxuXG4gIGdldFN0YWNrUHJvcHMocHJvcHM6IEJhc2ljQXBwUHJvcHMpOiBBd3NTdGFja1Byb3BzIHwgdW5kZWZpbmVkIHtcbiAgICBpZiAoIXByb3BzKSByZXR1cm47XG5cbiAgICByZXR1cm4ge1xuICAgICAgYWNjb3VudElkOiBwcm9wcy5hY2NvdW50SWQsXG4gICAgICByZWdpb246IHByb3BzLnJlZ2lvblxuICAgIH07XG4gIH1cblxuICBnZXRQcm9wcyhcbiAgICBpZDogc3RyaW5nLFxuICAgIHJhd1Byb3BzOiBCYXNpY0FwcFByb3BzXG4gICk6IEJhc2ljQXBwUHJvcHMgJiBCYXNpY0FwcFByb3BEZWZhdWx0cyB7XG4gICAgY29uc3QgZGVmYXVsdFByb3BzID0ge1xuICAgICAgdGFnczoge1xuICAgICAgICBcImZqYWxsOmNvc3RBbGxvY2F0aW9uOnNlcnZpY2VcIjogXCJhcHBcIixcbiAgICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjplbnZpcm9ubWVudFwiOlxuICAgICAgICAgIHJhd1Byb3BzLmVudmlyb25tZW50IHx8IFwicHJvZHVjdGlvblwiLFxuICAgICAgICBcImZqYWxsOmNvc3RBbGxvY2F0aW9uOm93bmVyXCI6IHJhd1Byb3BzLm93bmVyIHx8IFwiZW5naW5lZXJcIlxuICAgICAgfSxcbiAgICAgIHNjYWxpbmdUeXBlOiBTY2FsaW5nVHlwZS5DUFUsXG4gICAgICBwcm90b2NvbDogcmF3UHJvcHMucGFyZW50RG9tYWluID8gUHJvdG9jb2wuSFRUUFMgOiBQcm90b2NvbC5IVFRQLFxuICAgICAgY29udGFpbmVyUG9ydDogMzAwMCxcbiAgICAgIHNlcnZpY2VOYW1lOiBgJHtpZH1TZXJ2aWNlYCxcbiAgICAgIGNsdXN0ZXJOYW1lOiBgJHtpZH1DbHVzdGVyYFxuICAgIH07XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4uZGVmYXVsdFByb3BzLFxuICAgICAgLi4ucmF3UHJvcHNcbiAgICB9O1xuICB9XG59XG5leHBvcnQgZGVmYXVsdCBCYXNpY0FwcDtcbiJdfQ==
@@ -8,7 +8,7 @@ declare enum agentRelease {
8
8
  EDGE = "edge"
9
9
  }
10
10
  export interface BuildkiteProps extends StackProps {
11
- accountName: string;
11
+ accountId?: string;
12
12
  elasticStackVersion: string;
13
13
  keyName: string;
14
14
  buildkiteAgentRelease: agentRelease;
@@ -78,7 +78,7 @@ class Buildkite extends aws_cdk_lib_1.Stack {
78
78
  };
79
79
  // VPC
80
80
  const vpc = new vpc_1.Vpc(this, "buildkite", {
81
- accountName: props.accountName,
81
+ accountId: props.accountId,
82
82
  tags: props.tags,
83
83
  subnetConfiguration: [
84
84
  {
@@ -369,4 +369,4 @@ class Buildkite extends aws_cdk_lib_1.Stack {
369
369
  }
370
370
  exports.Buildkite = Buildkite;
371
371
  exports.default = Buildkite;
372
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRraXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL3BhdHRlcm5zL2F3cy9idWlsZGtpdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQTBEO0FBQzFELGlEQUs2QjtBQUM3QixpREFZNkI7QUFDN0IsaUVBTXFDO0FBQ3JDLGlEQUFxRDtBQUNyRCxtRUFBa0U7QUFDbEUscUVBQXlFO0FBRXpFLDREQUF5RDtBQUN6RCxpREFBdUQ7QUFDdkQseURBQXVEO0FBQ3ZELHlEQUFvRTtBQUNwRSx1RkFBb0Y7QUFDcEYseURBQWtEO0FBR2xELElBQUssWUFJSjtBQUpELFdBQUssWUFBWTtJQUNmLGlDQUFpQixDQUFBO0lBQ2pCLDZCQUFhLENBQUE7SUFDYiw2QkFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUpJLFlBQVksS0FBWixZQUFZLFFBSWhCO0FBbURZLFFBQUEscUJBQXFCLEdBOEM5QjtJQUNGLGdDQUFnQztJQUNoQyxtQkFBbUIsRUFBRSxTQUFTO0lBQzlCLE9BQU8sRUFBRSxFQUFFO0lBQ1gscUJBQXFCLEVBQUUsWUFBWSxDQUFDLE1BQU07SUFDMUMsa0JBQWtCLEVBQUUsRUFBRTtJQUN0Qiw0QkFBNEIsRUFBRSxLQUFLO0lBQ25DLHlCQUF5QixFQUFFLEVBQUU7SUFDN0IsMkJBQTJCLEVBQUUsT0FBTztJQUNwQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQ25CLDRCQUE0QixFQUFFLEVBQUU7SUFDaEMsK0JBQStCLEVBQUUsRUFBRTtJQUNuQyxrQ0FBa0MsRUFBRSxLQUFLO0lBQ3pDLGtDQUFrQyxFQUFFLEVBQUU7SUFDdEMsY0FBYyxFQUFFLFNBQVM7SUFDekIsaUJBQWlCLEVBQUUsQ0FBQztJQUNwQixrQkFBa0IsRUFBRSxFQUFFO0lBQ3RCLGVBQWUsRUFBRSxFQUFFO0lBQ25CLGtCQUFrQixFQUFFLEVBQUU7SUFDdEIsaUJBQWlCO0lBQ2pCLGlCQUFpQixFQUFFLHNCQUFZLENBQUMsRUFBRSxDQUFD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RUFBRTtnQkFDL0MsT0FBTyxFQUFFLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixFQUFFO2dCQUNyQyxPQUFPLEVBQUUsR0FBRyxLQUFLLENBQUMsaUJBQWlCLEVBQUU7Z0JBQ3JDLG1CQUFtQixFQUFFLGdCQUFnQixDQUFDLG9CQUFvQjtnQkFDMUQsY0FBYyxFQUFFLEtBQUssQ0FBQyxjQUFjO2dCQUNwQyxzQkFBc0IsRUFBRSxHQUFHLEtBQUssQ0FBQyxzQkFBc0IsRUFBRTtnQkFDekQsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLHlCQUF5QjtnQkFDcEQsZUFBZSxFQUFFLEtBQUssQ0FBQyxxQkFBcUI7Z0JBQzVDLGdCQUFnQixFQUFFLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixFQUFFO2FBQzlDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBaFpELDhCQWdaQztBQUVELGtCQUFlLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER1cmF0aW9uLCBTdGFja1Byb3BzLCBTdGFjayB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtcbiAgQ29tcG9zaXRlUHJpbmNpcGFsLFxuICBTZXJ2aWNlUHJpbmNpcGFsLFxuICBQb2xpY3lEb2N1bWVudCxcbiAgUG9saWN5U3RhdGVtZW50XG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQge1xuICBCbG9ja0RldmljZVZvbHVtZSxcbiAgSW5zdGFuY2VDbGFzcyxcbiAgSW5zdGFuY2VTaXplLFxuICBJbnN0YW5jZVR5cGUsXG4gIExhdW5jaFRlbXBsYXRlLFxuICBMYXVuY2hUZW1wbGF0ZUh0dHBUb2tlbnMsXG4gIE1hY2hpbmVJbWFnZSxcbiAgTXVsdGlwYXJ0Qm9keSxcbiAgTXVsdGlwYXJ0VXNlckRhdGEsXG4gIFN1Ym5ldFR5cGUsXG4gIFVzZXJEYXRhXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5pbXBvcnQge1xuICBBdXRvU2NhbGluZ0dyb3VwLFxuICBHcm91cE1ldHJpY3MsXG4gIFNwb3RBbGxvY2F0aW9uU3RyYXRlZ3ksXG4gIFRlcm1pbmF0aW9uUG9saWN5LFxuICBVcGRhdGVQb2xpY3lcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1hdXRvc2NhbGluZ1wiO1xuaW1wb3J0IHsgQ2ZuQXBwbGljYXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXNhbVwiO1xuaW1wb3J0IHsgUGh5c2ljYWxSZXNvdXJjZUlkIH0gZnJvbSBcImF3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXNcIjtcbmltcG9ydCB7IEJ1Y2tldERlcGxveW1lbnQsIFNvdXJjZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtczMtZGVwbG95bWVudFwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IFZwYyB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL25ldHdvcmtpbmcvdnBjXCI7XG5pbXBvcnQgeyBQb2xpY3ksIFJvbGUgfSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy9pYW1cIjtcbmltcG9ydCB7IFMzQnVja2V0IH0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3Mvc3RvcmFnZVwiO1xuaW1wb3J0IHsgU2VjdXJlU3RyaW5nUGFyYW1ldGVyIH0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3Mvc2VjcmV0c1wiO1xuaW1wb3J0IHsgQXdzQ3VzdG9tUmVzb3VyY2UgfSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy91dGlsaXRpZXMvYXdzQ3VzdG9tUmVzb3VyY2VcIjtcbmltcG9ydCB0YWdSZXNvdXJjZSBmcm9tIFwiLi4vLi4vdXRpbHMvdGFnUmVzb3VyY2VcIjtcbmltcG9ydCB7IEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uL3R5cGVzXCI7XG5cbmVudW0gYWdlbnRSZWxlYXNlIHtcbiAgU1RBQkxFID0gXCJzdGFibGVcIixcbiAgQkVUQSA9IFwiYmV0YVwiLFxuICBFREdFID0gXCJlZGdlXCJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsZGtpdGVQcm9wcyBleHRlbmRzIFN0YWNrUHJvcHMge1xuICBhY2NvdW50TmFtZTogc3RyaW5nO1xuICBlbGFzdGljU3RhY2tWZXJzaW9uOiBzdHJpbmc7XG4gIGtleU5hbWU6IHN0cmluZztcbiAgYnVpbGRraXRlQWdlbnRSZWxlYXNlOiBhZ2VudFJlbGVhc2U7XG4gIGJ1aWxka2l0ZUFnZW50VGFnczogc3RyaW5nO1xuICBidWlsZGtpdGVBZ2VudFRpbWVzdGFtcExpbmVzOiBib29sZWFuO1xuICBidWlsZGtpdGVBZ2VudEV4cGVyaW1lbnRzOiBzdHJpbmc7XG4gIGJ1aWxka2l0ZUFnZW50U2NhbGVyVmVyc2lvbjogc3RyaW5nO1xuICBsb2dSZXRlbnRpb25EYXlzOiBudW1iZXI7XG4gIGJ1aWxka2l0ZUFnZW50VHJhY2luZ0JhY2tlbmQ6IFwiXCIgfCBcImRhdGFkb2dcIiB8IFwib3BlbnRlbGVtZXRyeVwiO1xuICBidWlsZGtpdGVBZ2VudENhbmNlbEdyYWNlUGVyaW9kOiBudW1iZXI7XG4gIGJ1aWxka2l0ZVRlcm1pbmF0ZUluc3RhbmNlQWZ0ZXJKb2I6IGJvb2xlYW47XG4gIGJ1aWxka2l0ZUFkZGl0aW9uYWxTdWRvUGVybWlzc2lvbnM6IHN0cmluZztcbiAgYnVpbGRraXRlUXVldWU6IHN0cmluZztcbiAgYWdlbnRzUGVySW5zdGFuY2U6IG51bWJlcjtcbiAgYm9vdHN0cmFwU2NyaXB0VXJsOiBzdHJpbmc7XG4gIGFnZW50RW52RmlsZVVybDogc3RyaW5nO1xuICBhdXRob3JpemVkVXNlcnNVcmw6IHN0cmluZztcbiAgLy8gSW5mcmFzdHJ1Y3R1cmVcbiAgYWdlbnRJbnN0YW5jZVR5cGU6IEluc3RhbmNlVHlwZTtcbiAgYWdlbnRWb2x1bWVTaXplOiBudW1iZXI7XG4gIGFnZW50TWluSW5zdGFuY2VzOiBudW1iZXI7XG4gIGFnZW50TWF4SW5zdGFuY2VzOiBudW1iZXI7XG4gIHNjYWxlckV2ZW50U2NoZWR1bGVQZXJpb2Q6IHN0cmluZztcbiAgc2NhbGVyTWluUG9sbEludGVydmFsOiBzdHJpbmc7XG4gIHNwb3RDYXBhY2l0eVBlcmNlbnRhZ2U6IG51bWJlcjtcbiAgc2NhbGVPdXRGYWN0b3I6IHN0cmluZztcbiAgZWNyQWNjZXNzUG9saWN5OiBzdHJpbmc7XG4gIHNjYWxlSW5JZGxlUGVyaW9kOiBudW1iZXI7XG4gIHNjYWxlT3V0V2FpdGluZ0ZvckpvYnM6IGJvb2xlYW47XG4gIGRvY2tlck5ldHdvcmtpbmdQcm90b2NvbDogXCJpcHY0XCIgfCBcImR1YWxzdGFja1wiO1xuICBlbmFibGVTZWNyZXRzUGx1Z2luOiBib29sZWFuO1xuICBlbmFibGVFY3JQbHVnaW46IGJvb2xlYW47XG4gIGVuYWJsZURvY2tlckxvZ2luUGx1Z2luOiBib29sZWFuO1xuICBlbmFibGVEb2NrZXJVc2VyTmFtZXNwYWNlUmVtYXA6IGJvb2xlYW47XG4gIGVuYWJsZURvY2tlckV4cGVyaW1lbnRhbDogYm9vbGVhbjtcbiAgZW5hYmxlSW5zdGFuY2VTdG9yYWdlOiBib29sZWFuO1xuICBtb3VudFRtcGZzQXRUbXA6IGJvb2xlYW47XG4gIGJ1aWxka2l0ZUFnZW50RW5hYmxlR2l0TWlycm9yczogYm9vbGVhbjtcbiAgcGlwZWxpbmVTaWduaW5nS01TS2V5OiBzdHJpbmc7XG4gIHBpcGVsaW5lU2lnbmluZ1ZlcmlmaWNhdGlvbkZhaWx1cmVCZWhhdmlvcjogXCJibG9ja1wiIHwgXCJ3YXJuXCI7XG4gIC8vIFRhZ3NcbiAgLy8gVE9ETzogTW92ZSB0aGVzZSBpbnRvIGEgc2luZ2xlIHRhZ3Mgb2JqZWN0XG4gIHRhZ3M6IEtleVZhbHVlO1xuICBlbnZpcm9ubWVudDogc3RyaW5nO1xuICBvd25lcj86IHN0cmluZztcbn1cblxuZXhwb3J0IGNvbnN0IEJ1aWxka2l0ZURlZmF1bHRQcm9wczogUGljazxcbiAgQnVpbGRraXRlUHJvcHMsXG4gIC8vIEJ1aWxka2l0ZSBBZ2VudCBDb25maWd1cmF0aW9uXG4gIHwgXCJlbGFzdGljU3RhY2tWZXJzaW9uXCJcbiAgfCBcImtleU5hbWVcIlxuICB8IFwiYnVpbGRraXRlQWdlbnRSZWxlYXNlXCJcbiAgfCBcImJ1aWxka2l0ZUFnZW50VGFnc1wiXG4gIHwgXCJidWlsZGtpdGVBZ2VudFRpbWVzdGFtcExpbmVzXCJcbiAgfCBcImJ1aWxka2l0ZUFnZW50RXhwZXJpbWVudHNcIlxuICB8IFwiYnVpbGRraXRlQWdlbnRTY2FsZXJWZXJzaW9uXCJcbiAgfCBcImxvZ1JldGVudGlvbkRheXNcIlxuICB8IFwiYnVpbGRraXRlQWdlbnRUcmFjaW5nQmFja2VuZFwiXG4gIHwgXCJidWlsZGtpdGVBZ2VudENhbmNlbEdyYWNlUGVyaW9kXCJcbiAgfCBcImJ1aWxka2l0ZVRlcm1pbmF0ZUluc3RhbmNlQWZ0ZXJKb2JcIlxuICB8IFwiYnVpbGRraXRlQWRkaXRpb25hbFN1ZG9QZXJtaXNzaW9uc1wiXG4gIHwgXCJidWlsZGtpdGVRdWV1ZVwiXG4gIHwgXCJhZ2VudHNQZXJJbnN0YW5jZVwiXG4gIHwgXCJib290c3RyYXBTY3JpcHRVcmxcIlxuICB8IFwiYWdlbnRFbnZGaWxlVXJsXCJcbiAgfCBcImF1dGhvcml6ZWRVc2Vyc1VybFwiXG4gIC8vIEluZnJhc3RydWN0dXJlXG4gIHwgXCJhZ2VudEluc3RhbmNlVHlwZVwiXG4gIHwgXCJhZ2VudFZvbHVtZVNpemVcIlxuICB8IFwiYWdlbnRNaW5JbnN0YW5jZXNcIlxuICB8IFwiYWdlbnRNYXhJbnN0YW5jZXNcIlxuICB8IFwic2NhbGVyRXZlbnRTY2hlZHVsZVBlcmlvZFwiXG4gIHwgXCJzY2FsZXJNaW5Qb2xsSW50ZXJ2YWxcIlxuICB8IFwic3BvdENhcGFjaXR5UGVyY2VudGFnZVwiXG4gIHwgXCJzY2FsZU91dEZhY3RvclwiXG4gIHwgXCJzY2FsZUluSWRsZVBlcmlvZFwiXG4gIHwgXCJzY2FsZU91dFdhaXRpbmdGb3JKb2JzXCJcbiAgfCBcImVjckFjY2Vzc1BvbGljeVwiXG4gIHwgXCJkb2NrZXJOZXR3b3JraW5nUHJvdG9jb2xcIlxuICB8IFwiZW5hYmxlU2VjcmV0c1BsdWdpblwiXG4gIHwgXCJlbmFibGVFY3JQbHVnaW5cIlxuICB8IFwiZW5hYmxlRG9ja2VyTG9naW5QbHVnaW5cIlxuICB8IFwiZW5hYmxlRG9ja2VyVXNlck5hbWVzcGFjZVJlbWFwXCJcbiAgfCBcImVuYWJsZURvY2tlckV4cGVyaW1lbnRhbFwiXG4gIHwgXCJlbmFibGVJbnN0YW5jZVN0b3JhZ2VcIlxuICB8IFwibW91bnRUbXBmc0F0VG1wXCJcbiAgfCBcImJ1aWxka2l0ZUFnZW50RW5hYmxlR2l0TWlycm9yc1wiXG4gIHwgXCJwaXBlbGluZVNpZ25pbmdLTVNLZXlcIlxuICB8IFwicGlwZWxpbmVTaWduaW5nVmVyaWZpY2F0aW9uRmFpbHVyZUJlaGF2aW9yXCJcbiAgLy8gVGFnc1xuICB8IFwiZW52aXJvbm1lbnRcIlxuICB8IFwib3duZXJcIlxuPiA9IHtcbiAgLy8gQnVpbGRraXRlIEFnZW50IENvbmZpZ3VyYXRpb25cbiAgZWxhc3RpY1N0YWNrVmVyc2lvbjogXCJ2Ni4zMC4wXCIsXG4gIGtleU5hbWU6IFwiXCIsXG4gIGJ1aWxka2l0ZUFnZW50UmVsZWFzZTogYWdlbnRSZWxlYXNlLlNUQUJMRSxcbiAgYnVpbGRraXRlQWdlbnRUYWdzOiBcIlwiLFxuICBidWlsZGtpdGVBZ2VudFRpbWVzdGFtcExpbmVzOiBmYWxzZSxcbiAgYnVpbGRraXRlQWdlbnRFeHBlcmltZW50czogXCJcIixcbiAgYnVpbGRraXRlQWdlbnRTY2FsZXJWZXJzaW9uOiBcIjEuOC4wXCIsXG4gIGxvZ1JldGVudGlvbkRheXM6IDEsXG4gIGJ1aWxka2l0ZUFnZW50VHJhY2luZ0JhY2tlbmQ6IFwiXCIsXG4gIGJ1aWxka2l0ZUFnZW50Q2FuY2VsR3JhY2VQZXJpb2Q6IDYwLFxuICBidWlsZGtpdGVUZXJtaW5hdGVJbnN0YW5jZUFmdGVySm9iOiBmYWxzZSxcbiAgYnVpbGRraXRlQWRkaXRpb25hbFN1ZG9QZXJtaXNzaW9uczogXCJcIixcbiAgYnVpbGRraXRlUXVldWU6IFwiZGVmYXVsdFwiLFxuICBhZ2VudHNQZXJJbnN0YW5jZTogMSxcbiAgYm9vdHN0cmFwU2NyaXB0VXJsOiBcIlwiLFxuICBhZ2VudEVudkZpbGVVcmw6IFwiXCIsXG4gIGF1dGhvcml6ZWRVc2Vyc1VybDogXCJcIixcbiAgLy8gSW5mcmFzdHJ1Y3R1cmVcbiAgYWdlbnRJbnN0YW5jZVR5cGU6IEluc3RhbmNlVHlwZS5vZihJbnN0YW5jZUNsYXNzLk01LCBJbnN0YW5jZVNpemUuTEFSR0UpLFxuICBhZ2VudE1pbkluc3RhbmNlczogMCxcbiAgYWdlbnRNYXhJbnN0YW5jZXM6IDEwLFxuICBhZ2VudFZvbHVtZVNpemU6IDI1MCxcbiAgc2NhbGVyRXZlbnRTY2hlZHVsZVBlcmlvZDogXCIxIG1pbnV0ZVwiLFxuICBzY2FsZXJNaW5Qb2xsSW50ZXJ2YWw6IFwiMTBzXCIsXG4gIHNwb3RDYXBhY2l0eVBlcmNlbnRhZ2U6IDc1LFxuICBzY2FsZU91dEZhY3RvcjogXCIxLjBcIixcbiAgc2NhbGVJbklkbGVQZXJpb2Q6IDYwMCxcbiAgc2NhbGVPdXRXYWl0aW5nRm9ySm9iczogZmFsc2UsXG4gIGVjckFjY2Vzc1BvbGljeTogXCJcIixcbiAgZG9ja2VyTmV0d29ya2luZ1Byb3RvY29sOiBcImlwdjRcIixcbiAgZW5hYmxlU2VjcmV0c1BsdWdpbjogdHJ1ZSxcbiAgZW5hYmxlRWNyUGx1Z2luOiB0cnVlLFxuICBlbmFibGVEb2NrZXJMb2dpblBsdWdpbjogdHJ1ZSxcbiAgZW5hYmxlRG9ja2VyVXNlck5hbWVzcGFjZVJlbWFwOiB0cnVlLFxuICBlbmFibGVEb2NrZXJFeHBlcmltZW50YWw6IGZhbHNlLFxuICBlbmFibGVJbnN0YW5jZVN0b3JhZ2U6IGZhbHNlLFxuICBtb3VudFRtcGZzQXRUbXA6IHRydWUsXG4gIGJ1aWxka2l0ZUFnZW50RW5hYmxlR2l0TWlycm9yczogZmFsc2UsXG4gIHBpcGVsaW5lU2lnbmluZ0tNU0tleTogXCJcIixcbiAgcGlwZWxpbmVTaWduaW5nVmVyaWZpY2F0aW9uRmFpbHVyZUJlaGF2aW9yOiBcImJsb2NrXCIsXG4gIC8vIFRhZ3NcbiAgZW52aXJvbm1lbnQ6IFwicGxhdGZvcm1cIixcbiAgb3duZXI6IFwiZW5naW5lZXJcIlxufTtcblxuZXhwb3J0IGNsYXNzIEJ1aWxka2l0ZSBleHRlbmRzIFN0YWNrIHtcbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEJ1aWxka2l0ZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG5cbiAgICAvLyBUT0RPOiBNYWtlIHRoaXMgaW1tdXRhYmxlIGFuZCBlbmZvcmNlIHRoZSB0YWdzIGJlaW5nIHNldFxuICAgIGNvbnN0IHRhZ3MgPSB7XG4gICAgICAuLi5wcm9wcy50YWdzLFxuICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjplbnZpcm9ubWVudFwiOiBwcm9wcy5lbnZpcm9ubWVudCB8fCBcInBsYXRmb3JtXCIsXG4gICAgICBcImZqYWxsOmNvc3RBbGxvY2F0aW9uOnNlcnZpY2VcIjogXCJidWlsZGtpdGVcIixcbiAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246b3duZXJcIjogcHJvcHMub3duZXIgfHwgXCJlbmdpbmVlclwiIC8vIFRPRE86IHRoaXMgd2lsbCBoYXZlIHRvIGJlIHRoZSBwbGF0Zm9ybSBhY2NvdW50IG5hbWU/XG4gICAgfTtcblxuICAgIC8vIFZQQ1xuICAgIGNvbnN0IHZwYyA9IG5ldyBWcGModGhpcywgXCJidWlsZGtpdGVcIiwge1xuICAgICAgYWNjb3VudE5hbWU6IHByb3BzLmFjY291bnROYW1lLFxuICAgICAgdGFnczogcHJvcHMudGFncyxcbiAgICAgIHN1Ym5ldENvbmZpZ3VyYXRpb246IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IGAke2lkfWAsXG4gICAgICAgICAgc3VibmV0VHlwZTogU3VibmV0VHlwZS5QVUJMSUNcbiAgICAgICAgfVxuICAgICAgXVxuICAgIH0pO1xuXG4gICAgLy8gQXJ0aWZhY3RzIEJ1Y2tldFxuICAgIGNvbnN0IGFydGlmYWN0QnVja2V0ID0gbmV3IFMzQnVja2V0KHRoaXMsIFwiYXJ0aWZhY3RCdWNrZXRcIik7XG5cbiAgICAvLyBNYW5hZ2VkIFNlY3JldHNcbiAgICBjb25zdCBtYW5hZ2VkU2VjcmV0c0J1Y2tldCA9IG5ldyBTM0J1Y2tldCh0aGlzLCBcIm1hbmFnZWRTZWNyZXRzQnVja2V0XCIpO1xuICAgIGlmIChwcm9jZXNzLmVudi5CVUlMREtJVEVfUFJJVkFURV9TU0hfS0VZKSB7XG4gICAgICBuZXcgQnVja2V0RGVwbG95bWVudCh0aGlzLCBcImJ1aWxka2l0ZVNzaEtleVwiLCB7XG4gICAgICAgIHNvdXJjZXM6IFtcbiAgICAgICAgICBTb3VyY2UuZGF0YShcInByaXZhdGVfc3NoX2tleVwiLCBwcm9jZXNzLmVudi5CVUlMREtJVEVfUFJJVkFURV9TU0hfS0VZKVxuICAgICAgICBdLFxuICAgICAgICBkZXN0aW5hdGlvbkJ1Y2tldDogbWFuYWdlZFNlY3JldHNCdWNrZXRcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIFwiV0FSTjonQlVJTERLSVRFX1BSSVZBVEVfU1NIX0tFWScgZW52aXJvbm1lbnQgdmFyaWFibGUgbm90IGRlY2xhcmVkLiBTa2lwcGluZyB1cGxvYWQgb2YgcHJpdmF0ZSBTU0gga2V5XCJcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gRW5jcnlwdGVkIEJ1aWxka2l0ZSBBZ2VudCBUb2tlblxuICAgIGNvbnN0IGFnZW50VG9rZW4gPSBuZXcgU2VjdXJlU3RyaW5nUGFyYW1ldGVyKHRoaXMsIFwiYWdlbnRUb2tlblwiLCB7XG4gICAgICBuYW1lOiBgL2J1aWxka2l0ZS9hZ2VudFRva2VuYCxcbiAgICAgIGFsaWFzTmFtZTogYGJ1aWxka2l0ZUFnZW50VG9rZW5gLFxuICAgICAgdmFsdWU6IHByb2Nlc3MuZW52LkJVSUxES0lURV9BR0VOVF9UT0tFTixcbiAgICAgIG92ZXJ3cml0ZTogcHJvY2Vzcy5lbnYuQlVJTERLSVRFX0FHRU5UX1RPS0VOID8gdHJ1ZSA6IGZhbHNlLFxuICAgICAgdGFnczogdGFncyxcbiAgICAgIGFjY291bnRJZDogdGhpcy5hY2NvdW50LFxuICAgICAgcmVnaW9uOiB0aGlzLnJlZ2lvblxuICAgIH0pO1xuXG4gICAgLy8gQnVpbGRraXRlIEFnZW50IEV4ZWN1dGlvbiBSb2xlXG4gICAgY29uc3QgYWdlbnRSb2xlID0gbmV3IFJvbGUodGhpcywgXCJhZ2VudElhbVJvbGVcIiwge1xuICAgICAgcm9sZU5hbWU6IGAke2lkfUFnZW50Um9sZWAsXG4gICAgICBkZXNjcmlwdGlvbjogXCJCdWlsZGtpdGUgQWdlbnQgSUFNIFJvbGVcIixcbiAgICAgIGlubGluZVBvbGljaWVzOiB7XG4gICAgICAgIFtcImRlY3J5cHRCdWlsZGtpdGVBZ2VudFRva2VuXCJdOiBuZXcgUG9saWN5RG9jdW1lbnQoe1xuICAgICAgICAgIHN0YXRlbWVudHM6IFtcbiAgICAgICAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgICBhY3Rpb25zOiBbXCJrbXM6RGVjcnlwdFwiXSxcbiAgICAgICAgICAgICAgcmVzb3VyY2VzOiBbYWdlbnRUb2tlbi5jbWsua2V5LmtleUFybl1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXVxuICAgICAgICB9KSxcbiAgICAgICAgW1wicmVhZEJ1aWxka2l0ZUFnZW50VG9rZW5cIl06IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgICAgc3RhdGVtZW50czogW1xuICAgICAgICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICAgIGFjdGlvbnM6IFtcInNzbTpHZXRQYXJhbWV0ZXJcIl0sXG4gICAgICAgICAgICAgIHJlc291cmNlczogW1xuICAgICAgICAgICAgICAgIGBhcm46YXdzOnNzbToke3Byb3BzLmVudj8ucmVnaW9ufToke3Byb3BzLmVudj8uYWNjb3VudH06cGFyYW1ldGVyJHthZ2VudFRva2VuLm5hbWV9YFxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF1cbiAgICAgICAgfSksXG4gICAgICAgIFtcInJlYWRNYW5hZ2VkU2VjcmV0c0J1Y2tldFwiXTogbmV3IFBvbGljeURvY3VtZW50KHtcbiAgICAgICAgICBzdGF0ZW1lbnRzOiBbXG4gICAgICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgICAgYWN0aW9uczogW1wiczM6R2V0KlwiLCBcInMzOkxpc3QqXCJdLFxuICAgICAgICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICAgICAgICBtYW5hZ2VkU2VjcmV0c0J1Y2tldC5idWNrZXRBcm4sXG4gICAgICAgICAgICAgICAgYCR7bWFuYWdlZFNlY3JldHNCdWNrZXQuYnVja2V0QXJufS8qYFxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF1cbiAgICAgICAgfSksXG4gICAgICAgIFtcIndyaXRlQXJ0aWZhY3RCdWNrZXRcIl06IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgICAgc3RhdGVtZW50czogW1xuICAgICAgICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgICBcInMzOkdldE9iamVjdFwiLFxuICAgICAgICAgICAgICAgIFwiczM6R2V0T2JqZWN0QWNsXCIsXG4gICAgICAgICAgICAgICAgXCJzMzpHZXRPYmplY3RWZXJzaW9uXCIsXG4gICAgICAgICAgICAgICAgXCJzMzpHZXRPYmplY3RWZXJzaW9uQWNsXCIsXG4gICAgICAgICAgICAgICAgXCJzMzpMaXN0QnVja2V0XCIsXG4gICAgICAgICAgICAgICAgXCJzMzpQdXRPYmplY3RcIixcbiAgICAgICAgICAgICAgICBcInMzOlB1dE9iamVjdEFjbFwiLFxuICAgICAgICAgICAgICAgIFwiczM6UHV0T2JqZWN0VmVyc2lvbkFjbFwiXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIHJlc291cmNlczogW1xuICAgICAgICAgICAgICAgIGFydGlmYWN0QnVja2V0LmJ1Y2tldEFybixcbiAgICAgICAgICAgICAgICBgJHthcnRpZmFjdEJ1Y2tldC5idWNrZXRBcm59LypgXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXVxuICAgICAgICB9KSxcbiAgICAgICAgW1wiZGVzY3JpYmVJbnN0YW5jZVwiXTogbmV3IFBvbGljeURvY3VtZW50KHtcbiAgICAgICAgICBzdGF0ZW1lbnRzOiBbXG4gICAgICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICAgIFwiYXV0b3NjYWxpbmc6RGVzY3JpYmVBdXRvU2NhbGluZ0luc3RhbmNlc1wiLFxuICAgICAgICAgICAgICAgIFwiY2xvdWR3YXRjaDpQdXRNZXRyaWNEYXRhXCIsXG4gICAgICAgICAgICAgICAgXCJjbG91ZGZvcm1hdGlvbjpEZXNjcmliZVN0YWNrUmVzb3VyY2VcIixcbiAgICAgICAgICAgICAgICBcImVjMjpEZXNjcmliZVRhZ3NcIlxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICByZXNvdXJjZXM6IFtcIipcIl1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXVxuICAgICAgICB9KSxcbiAgICAgICAgW1wibG9nZ2luZ1wiXTogbmV3IFBvbGljeURvY3VtZW50KHtcbiAgICAgICAgICBzdGF0ZW1lbnRzOiBbXG4gICAgICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICAgIFwibG9nczpDcmVhdGVMb2dHcm91cFwiLFxuICAgICAgICAgICAgICAgIFwibG9nczpDcmVhdGVMb2dTdHJlYW1cIixcbiAgICAgICAgICAgICAgICBcImxvZ3M6UHV0TG9nRXZlbnRzXCIsXG4gICAgICAgICAgICAgICAgXCJsb2dzOkRlc2NyaWJlTG9nR3JvdXBzXCIsXG4gICAgICAgICAgICAgICAgXCJsb2dzOkRlc2NyaWJlTG9nU3RyZWFtc1wiXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIHJlc291cmNlczogW1wiKlwiXVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdXG4gICAgICAgIH0pLFxuICAgICAgICBbXCJzc21cIl06IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgICAgc3RhdGVtZW50czogW1xuICAgICAgICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgICBcInNzbTpEZXNjcmliZUluc3RhbmNlUHJvcGVydGllc1wiLFxuICAgICAgICAgICAgICAgIFwic3NtOkxpc3RBc3NvY2lhdGlvbnNcIixcbiAgICAgICAgICAgICAgICBcInNzbTpQdXRJbnZlbnRvcnlcIixcbiAgICAgICAgICAgICAgICBcInNzbTpVcGRhdGVJbnN0YW5jZUluZm9ybWF0aW9uXCIsXG4gICAgICAgICAgICAgICAgXCJzc21tZXNzYWdlczpDcmVhdGVDb250cm9sQ2hhbm5lbFwiLFxuICAgICAgICAgICAgICAgIFwic3NtbWVzc2FnZXM6Q3JlYXRlRGF0YUNoYW5uZWxcIixcbiAgICAgICAgICAgICAgICBcInNzbW1lc3NhZ2VzOk9wZW5Db250cm9sQ2hhbm5lbFwiLFxuICAgICAgICAgICAgICAgIFwic3NtbWVzc2FnZXM6T3BlbkRhdGFDaGFubmVsXCIsXG4gICAgICAgICAgICAgICAgXCJlYzJtZXNzYWdlczpBY2tub3dsZWRnZU1lc3NhZ2VcIixcbiAgICAgICAgICAgICAgICBcImVjMm1lc3NhZ2VzOkRlbGV0ZU1lc3NhZ2VcIixcbiAgICAgICAgICAgICAgICBcImVjMm1lc3NhZ2VzOkZhaWxNZXNzYWdlXCIsXG4gICAgICAgICAgICAgICAgXCJlYzJtZXNzYWdlczpHZXRFbmRwb2ludFwiLFxuICAgICAgICAgICAgICAgIFwiZWMybWVzc2FnZXM6R2V0TWVzc2FnZXNcIixcbiAgICAgICAgICAgICAgICBcImVjMm1lc3NhZ2VzOlNlbmRSZXBseVwiXG4gICAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAgIHJlc291cmNlczogW1wiKlwiXVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdXG4gICAgICAgIH0pXG4gICAgICB9LFxuICAgICAgYXNzdW1lZEJ5OiBuZXcgQ29tcG9zaXRlUHJpbmNpcGFsKFxuICAgICAgICBuZXcgU2VydmljZVByaW5jaXBhbChcImF1dG9zY2FsaW5nLmFtYXpvbmF3cy5jb21cIiksXG4gICAgICAgIG5ldyBTZXJ2aWNlUHJpbmNpcGFsKFwiZWMyLmFtYXpvbmF3cy5jb21cIilcbiAgICAgIClcbiAgICB9KTtcblxuICAgIC8vIEJ1aWxka2l0ZSBBZ2VudCBFQzIgVXNlciBEYXRhXG4gICAgY29uc3QgbXVsdGlwYXJ0VXNlckRhdGEgPSBuZXcgTXVsdGlwYXJ0VXNlckRhdGEoKTtcblxuICAgIC8vIENsb3VkIENvbmZpZ1xuICAgIGNvbnN0IGNsb3VkQ29uZmlnVXNlckRhdGEgPSBVc2VyRGF0YS5mb3JMaW51eCh7XG4gICAgICBzaGViYW5nOiBcIiNjbG91ZC1jb25maWdcIlxuICAgIH0pO1xuICAgIGNsb3VkQ29uZmlnVXNlckRhdGEuYWRkQ29tbWFuZHMoXG4gICAgICBcImNsb3VkX2ZpbmFsX21vZHVsZXM6XCIsXG4gICAgICBcIiAgLSBbc2NyaXB0cy11c2VyLCBhbHdheXNdXCJcbiAgICApO1xuICAgIG11bHRpcGFydFVzZXJEYXRhLmFkZFBhcnQoXG4gICAgICBNdWx0aXBhcnRCb2R5LmZyb21Vc2VyRGF0YShcbiAgICAgICAgY2xvdWRDb25maWdVc2VyRGF0YSxcbiAgICAgICAgXCJ0ZXh0L2Nsb3VkLWNvbmZpZzsgY2hhcnNldD0ndXMtYXNjaWknXCJcbiAgICAgIClcbiAgICApO1xuXG4gICAgLy8gTW91bnQgU3RvcmFnZVxuICAgIGNvbnN0IG1vdW50U3RvcmFnZVVzZXJEYXRhID0gVXNlckRhdGEuZm9yTGludXgoe1xuICAgICAgc2hlYmFuZzogXCIjIS9iaW4vYmFzaCAtdlwiXG4gICAgfSk7XG4gICAgbW91bnRTdG9yYWdlVXNlckRhdGEuYWRkQ29tbWFuZHMoXG4gICAgICBgQlVJTERLSVRFX0VOQUJMRV9JTlNUQU5DRV9TVE9SQUdFPScke3Byb3BzLmVuYWJsZUluc3RhbmNlU3RvcmFnZX0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9NT1VOVF9UTVBGU19BVF9UTVA9JyR7cHJvcHMubW91bnRUbXBmc0F0VG1wfScgXFxcXGAsXG4gICAgICBcIi91c3IvbG9jYWwvYmluL2JrLW1vdW50LWluc3RhbmNlLXN0b3JhZ2Uuc2hcIlxuICAgICk7XG4gICAgbXVsdGlwYXJ0VXNlckRhdGEuYWRkUGFydChcbiAgICAgIE11bHRpcGFydEJvZHkuZnJvbVVzZXJEYXRhKFxuICAgICAgICBtb3VudFN0b3JhZ2VVc2VyRGF0YSxcbiAgICAgICAgXCJ0ZXh0L3gtc2hlbGxzY3JpcHQ7IGNoYXJzZXQ9J3VzLWFzY2lpJ1wiXG4gICAgICApXG4gICAgKTtcblxuICAgIC8vIENvbmZpZ3VyZSBEb2NrZXJcbiAgICBjb25zdCBjb25maWd1cmVEb2NrZXJVc2VyRGF0YSA9IFVzZXJEYXRhLmZvckxpbnV4KHtcbiAgICAgIHNoZWJhbmc6IFwiIyEvYmluL2Jhc2ggLXZcIlxuICAgIH0pO1xuICAgIGNvbmZpZ3VyZURvY2tlclVzZXJEYXRhLmFkZENvbW1hbmRzKFxuICAgICAgYERPQ0tFUl9VU0VSTlNfUkVNQVA9JyR7cHJvcHMuZW5hYmxlRG9ja2VyVXNlck5hbWVzcGFjZVJlbWFwfScgXFxcXGAsXG4gICAgICBgRE9DS0VSX0VYUEVSSU1FTlRBTD0nJHtwcm9wcy5lbmFibGVEb2NrZXJFeHBlcmltZW50YWx9JyBcXFxcYCxcbiAgICAgIGBET0NLRVJfTkVUV09SS0lOR19QUk9UT0NPTD0nJHtwcm9wcy5kb2NrZXJOZXR3b3JraW5nUHJvdG9jb2x9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfRU5BQkxFX0lOU1RBTkNFX1NUT1JBR0U9JyR7cHJvcHMuZW5hYmxlSW5zdGFuY2VTdG9yYWdlfScgXFxcXGAsXG4gICAgICBcIi91c3IvbG9jYWwvYmluL2JrLWNvbmZpZ3VyZS1kb2NrZXIuc2hcIlxuICAgICk7XG4gICAgbXVsdGlwYXJ0VXNlckRhdGEuYWRkUGFydChcbiAgICAgIE11bHRpcGFydEJvZHkuZnJvbVVzZXJEYXRhKFxuICAgICAgICBjb25maWd1cmVEb2NrZXJVc2VyRGF0YSxcbiAgICAgICAgXCJ0ZXh0L3gtc2hlbGxzY3JpcHQ7IGNoYXJzZXQ9J3VzLWFzY2lpJ1wiXG4gICAgICApXG4gICAgKTtcblxuICAgIGNvbnN0IGluc3RhbGxFbGFzdGljU3RhY2tVc2VyRGF0YSA9IFVzZXJEYXRhLmZvckxpbnV4KHtcbiAgICAgIHNoZWJhbmc6IFwiIyEvYmluL2Jhc2ggLXZcIlxuICAgIH0pO1xuICAgIGluc3RhbGxFbGFzdGljU3RhY2tVc2VyRGF0YS5hZGRDb21tYW5kcyhcbiAgICAgIGBCVUlMREtJVEVfU1RBQ0tfTkFNRT0nJHtpZH0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9TVEFDS19WRVJTSU9OPScke3Byb3BzLmVsYXN0aWNTdGFja1ZlcnNpb259JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfU0NBTEVfSU5fSURMRV9QRVJJT0Q9JyR7cHJvcHMuc2NhbGVJbklkbGVQZXJpb2R9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfU0VDUkVUU19CVUNLRVQ9JyR7bWFuYWdlZFNlY3JldHNCdWNrZXQuYnVja2V0TmFtZX0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9TRUNSRVRTX0JVQ0tFVF9SRUdJT049JyR7cHJvcHMuZW52Py5yZWdpb259JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfQUdFTlRfVE9LRU5fUEFUSD0nJHthZ2VudFRva2VuLm5hbWV9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfQUdFTlRTX1BFUl9JTlNUQU5DRT0nJHtwcm9wcy5hZ2VudHNQZXJJbnN0YW5jZX0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9BR0VOVF9UQUdTPScke3Byb3BzLmJ1aWxka2l0ZUFnZW50VGFnc30nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9BR0VOVF9USU1FU1RBTVBfTElORVM9JyR7cHJvcHMuYnVpbGRraXRlQWdlbnRUaW1lc3RhbXBMaW5lc30nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9BR0VOVF9FWFBFUklNRU5UUz0nJHtwcm9wcy5idWlsZGtpdGVBZ2VudEV4cGVyaW1lbnRzfScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0FHRU5UX1RSQUNJTkdfQkFDS0VORD0nJHtwcm9wcy5idWlsZGtpdGVBZ2VudFRyYWNpbmdCYWNrZW5kfScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0FHRU5UX1JFTEVBU0U9JyR7cHJvcHMuYnVpbGRraXRlQWdlbnRSZWxlYXNlfScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0FHRU5UX0NBTkNFTF9HUkFDRV9QRVJJT0Q9JyR7cHJvcHMuYnVpbGRraXRlQWdlbnRDYW5jZWxHcmFjZVBlcmlvZH0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9BR0VOVF9TSUdOSU5HX0tNU19LRVk9JyR7cHJvcHMucGlwZWxpbmVTaWduaW5nS01TS2V5fScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0FHRU5UX1NJR05JTkdfRkFJTFVSRV9CRUhBVklPUj0nJHtwcm9wcy5waXBlbGluZVNpZ25pbmdWZXJpZmljYXRpb25GYWlsdXJlQmVoYXZpb3J9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfUVVFVUU9JyR7cHJvcHMuYnVpbGRraXRlUXVldWV9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfQUdFTlRfRU5BQkxFX0dJVF9NSVJST1JTPScke3Byb3BzLmJ1aWxka2l0ZUFnZW50RW5hYmxlR2l0TWlycm9yc30nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9FTEFTVElDX0JPT1RTVFJBUF9TQ1JJUFQ9JyR7cHJvcHMuYm9vdHN0cmFwU2NyaXB0VXJsfScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0VOVl9GSUxFX1VSTD0nJHtwcm9wcy5hZ2VudEVudkZpbGVVcmx9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfRU5BQkxFX0lOU1RBTkNFX1NUT1JBR0U9JyR7cHJvcHMuZW5hYmxlSW5zdGFuY2VTdG9yYWdlfScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0FVVEhPUklaRURfVVNFUlNfVVJMPScke3Byb3BzLmF1dGhvcml6ZWRVc2Vyc1VybH0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9FQ1JfUE9MSUNZPScke3Byb3BzLmVjckFjY2Vzc1BvbGljeX0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9URVJNSU5BVEVfSU5TVEFOQ0VfQUZURVJfSk9CPScke3Byb3BzLmJ1aWxka2l0ZVRlcm1pbmF0ZUluc3RhbmNlQWZ0ZXJKb2J9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfQURESVRJT05BTF9TVURPX1BFUk1JU1NJT05TPScke3Byb3BzLmJ1aWxka2l0ZUFkZGl0aW9uYWxTdWRvUGVybWlzc2lvbnN9JyBcXFxcYCxcbiAgICAgIGBBV1NfREVGQVVMVF9SRUdJT049JyR7cHJvcHMuZW52Py5yZWdpb259JyBcXFxcYCxcbiAgICAgIGBTRUNSRVRTX1BMVUdJTl9FTkFCTEVEPScke3Byb3BzLmVuYWJsZVNlY3JldHNQbHVnaW59JyBcXFxcYCxcbiAgICAgIGBFQ1JfUExVR0lOX0VOQUJMRUQ9JyR7cHJvcHMuZW5hYmxlRWNyUGx1Z2lufScgXFxcXGAsXG4gICAgICBgRE9DS0VSX0xPR0lOX1BMVUdJTl9FTkFCTEVEPScke3Byb3BzLmVuYWJsZURvY2tlckxvZ2luUGx1Z2lufScgXFxcXGAsXG4gICAgICBgRE9DS0VSX0VYUEVSSU1FTlRBTD0nJHtwcm9wcy5lbmFibGVEb2NrZXJFeHBlcmltZW50YWx9JyBcXFxcYCxcbiAgICAgIGBET0NLRVJfVVNFUk5TX1JFTUFQPScke3Byb3BzLmVuYWJsZURvY2tlclVzZXJOYW1lc3BhY2VSZW1hcH0nIFxcXFxgLFxuICAgICAgYEFXU19SRUdJT049JyR7cHJvcHMuZW52Py5yZWdpb259JyBcXFxcYCxcbiAgICAgIFwiL3Vzci9sb2NhbC9iaW4vYmstaW5zdGFsbC1lbGFzdGljLXN0YWNrLnNoXCJcbiAgICApO1xuXG4gICAgLy8gTWVyZ2UgVXNlciBEYXRhXG4gICAgbXVsdGlwYXJ0VXNlckRhdGEuYWRkUGFydChcbiAgICAgIE11bHRpcGFydEJvZHkuZnJvbVVzZXJEYXRhKFxuICAgICAgICBpbnN0YWxsRWxhc3RpY1N0YWNrVXNlckRhdGEsXG4gICAgICAgIFwidGV4dC94LXNoZWxsc2NyaXB0OyBjaGFyc2V0PSd1cy1hc2NpaSdcIlxuICAgICAgKVxuICAgICk7XG5cbiAgICAvLyBMYXVuY2ggVGVtcGxhdGVcbiAgICBjb25zdCBsYXVuY2hUZW1wbGF0ZSA9IG5ldyBMYXVuY2hUZW1wbGF0ZSh0aGlzLCBcImFnZW50TGF1bmNoVGVtcGxhdGVcIiwge1xuICAgICAgbGF1bmNoVGVtcGxhdGVOYW1lOiBgYnVpbGRraXRlTGF1bmNoVGVtcGxhdGVgLFxuICAgICAgaW5zdGFuY2VUeXBlOiBwcm9wcy5hZ2VudEluc3RhbmNlVHlwZSxcbiAgICAgIG1hY2hpbmVJbWFnZTogTWFjaGluZUltYWdlLmxvb2t1cCh7XG4gICAgICAgIG5hbWU6IFwiYnVpbGRraXRlLXN0YWNrLWxpbnV4LXg4Nl82NC0qXCIsXG4gICAgICAgIG93bmVyczogW1wiMTcyODQwMDY0ODMyXCJdLFxuICAgICAgICBmaWx0ZXJzOiB7XG4gICAgICAgICAgW1wiYmxvY2stZGV2aWNlLW1hcHBpbmcudm9sdW1lLXR5cGVcIl06IFtcImdwM1wiXVxuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIHVzZXJEYXRhOiBtdWx0aXBhcnRVc2VyRGF0YSxcbiAgICAgIHJvbGU6IGFnZW50Um9sZSxcbiAgICAgIGJsb2NrRGV2aWNlczogW1xuICAgICAgICB7XG4gICAgICAgICAgZGV2aWNlTmFtZTogXCIvZGV2L3h2ZGFcIixcbiAgICAgICAgICB2b2x1bWU6IEJsb2NrRGV2aWNlVm9sdW1lLmVicyhwcm9wcy5hZ2VudFZvbHVtZVNpemUpXG4gICAgICAgIH1cbiAgICAgIF0sXG4gICAgICBkZXRhaWxlZE1vbml0b3Jpbmc6IHRydWUsXG4gICAgICByZXF1aXJlSW1kc3YyOiBmYWxzZSxcbiAgICAgIGh0dHBQdXRSZXNwb25zZUhvcExpbWl0OiAyLFxuICAgICAgaHR0cFRva2VuczogTGF1bmNoVGVtcGxhdGVIdHRwVG9rZW5zLlJFUVVJUkVELFxuICAgICAgaW5zdGFuY2VNZXRhZGF0YVRhZ3M6IHRydWVcbiAgICB9KTtcblxuICAgIHRhZ1Jlc291cmNlKGxhdW5jaFRlbXBsYXRlLCB7XG4gICAgICBcImZqYWxsOmNvc3RBbGxvY2F0aW9uOmVudmlyb25tZW50XCI6IHByb3BzLmVudmlyb25tZW50LFxuICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjpzZXJ2aWNlXCI6IFwiYnVpbGRraXRlXCIsXG4gICAgICBcImZqYWxsOmNvc3RBbGxvY2F0aW9uOm93bmVyXCI6IHByb3BzLm93bmVyIHx8IFwiZW5naW5lZXJcIixcbiAgICAgIFJvbGU6IFwiYnVpbGRraXRlQWdlbnRcIixcbiAgICAgIEJ1aWxka2l0ZUFnZW50UmVsZWFzZTogYWdlbnRSZWxlYXNlLlNUQUJMRSxcbiAgICAgIEJ1aWxka2l0ZVF1ZXVlOiBwcm9wcy5idWlsZGtpdGVRdWV1ZVxuICAgIH0pO1xuXG4gICAgLy8gQXV0b3NjYWxpbmcgR3JvdXBcbiAgICBjb25zdCBhdXRvU2NhbGluZ0dyb3VwID0gbmV3IEF1dG9TY2FsaW5nR3JvdXAoXG4gICAgICB0aGlzLFxuICAgICAgXCJhZ2VudEF1dG9TY2FsaW5nR3JvdXBcIixcbiAgICAgIHtcbiAgICAgICAgdnBjOiB2cGMsXG4gICAgICAgIG1peGVkSW5zdGFuY2VzUG9saWN5OiB7XG4gICAgICAgICAgbGF1bmNoVGVtcGxhdGU6IGxhdW5jaFRlbXBsYXRlLFxuICAgICAgICAgIGluc3RhbmNlc0Rpc3RyaWJ1dGlvbjoge1xuICAgICAgICAgICAgb25EZW1hbmRQZXJjZW50YWdlQWJvdmVCYXNlQ2FwYWNpdHk6IHByb3BzLnNwb3RDYXBhY2l0eVBlcmNlbnRhZ2UsXG4gICAgICAgICAgICBzcG90QWxsb2NhdGlvblN0cmF0ZWd5OiBTcG90QWxsb2NhdGlvblN0cmF0ZWd5LkNBUEFDSVRZX09QVElNSVpFRFxuICAgICAgICAgIH0sXG4gICAgICAgICAgbGF1bmNoVGVtcGxhdGVPdmVycmlkZXM6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgaW5zdGFuY2VUeXBlOiBwcm9wcy5hZ2VudEluc3RhbmNlVHlwZVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfSxcbiAgICAgICAgbWluQ2FwYWNpdHk6IHByb3BzLmFnZW50TWluSW5zdGFuY2VzLFxuICAgICAgICBtYXhDYXBhY2l0eTogcHJvcHMuYWdlbnRNYXhJbnN0YW5jZXMsXG4gICAgICAgIGNvb2xkb3duOiBEdXJhdGlvbi5zZWNvbmRzKDYwKSxcbiAgICAgICAgZ3JvdXBNZXRyaWNzOiBbR3JvdXBNZXRyaWNzLmFsbCgpXSxcbiAgICAgICAgdXBkYXRlUG9saWN5OiBVcGRhdGVQb2xpY3kucmVwbGFjaW5nVXBkYXRlKCksXG4gICAgICAgIG5ld0luc3RhbmNlc1Byb3RlY3RlZEZyb21TY2FsZUluOiB0cnVlLFxuICAgICAgICB0ZXJtaW5hdGlvblBvbGljaWVzOiBbXG4gICAgICAgICAgVGVybWluYXRpb25Qb2xpY3kuT0xERVNUX0xBVU5DSF9DT05GSUdVUkFUSU9OLFxuICAgICAgICAgIFRlcm1pbmF0aW9uUG9saWN5LkNMT1NFU1RfVE9fTkVYVF9JTlNUQU5DRV9IT1VSXG4gICAgICAgIF0sXG4gICAgICAgIHNzbVNlc3Npb25QZXJtaXNzaW9uczogdHJ1ZVxuICAgICAgfVxuICAgICk7XG5cbiAgICBhZ2VudFJvbGUuYXR0YWNoSW5saW5lUG9saWN5KFxuICAgICAgbmV3IFBvbGljeSh0aGlzLCBcInVwZGF0ZUF1dG9TY2FsaW5nR3JvdXBcIiwge1xuICAgICAgICBzdGF0ZW1lbnRzOiBbXG4gICAgICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgIFwiYXV0b3NjYWxpbmc6U2V0SW5zdGFuY2VIZWFsdGhcIixcbiAgICAgICAgICAgICAgXCJhdXRvc2NhbGluZzpUZXJtaW5hdGVJbnN0YW5jZUluQXV0b1NjYWxpbmdHcm91cFwiXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgcmVzb3VyY2VzOiBbYCR7YXV0b1NjYWxpbmdHcm91cC5hdXRvU2NhbGluZ0dyb3VwQXJufWBdXG4gICAgICAgICAgfSlcbiAgICAgICAgXVxuICAgICAgfSlcbiAgICApO1xuXG4gICAgdGFnUmVzb3VyY2UoYXV0b1NjYWxpbmdHcm91cCwge1xuICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjplbnZpcm9ubWVudFwiOiBwcm9wcy5lbnZpcm9ubWVudCxcbiAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246c2VydmljZVwiOiBcImJ1aWxka2l0ZVwiLFxuICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjpvd25lclwiOiBwcm9wcy5vd25lciB8fCBcImVuZ2luZWVyXCJcbiAgICB9KTtcblxuICAgIC8vIEJ1aWxka2l0ZSBTdXNwZW5kIEF1c3Rvc2NhbGluZyBHcm91cCBDdXN0b20gUmVzb3VyY2VcbiAgICBuZXcgQXdzQ3VzdG9tUmVzb3VyY2UodGhpcywgXCJzdXNwZW5kQXV0b3NjYWxpbmdQcm9jZXNzXCIsIHtcbiAgICAgIGZ1bmN0aW9uTmFtZTogXCJzdXNwZW5kQXV0b1NjYWxpbmdQcm9jZXNzZXNzXCIsXG4gICAgICBvbkNyZWF0ZToge1xuICAgICAgICBzZXJ2aWNlOiBcIkF1dG9TY2FsaW5nXCIsXG4gICAgICAgIGFjdGlvbjogXCJzdXNwZW5kUHJvY2Vzc2VzXCIsXG4gICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICBBdXRvU2NhbGluZ0dyb3VwTmFtZTogYXV0b1NjYWxpbmdHcm91cC5hdXRvU2NhbGluZ0dyb3VwTmFtZSxcbiAgICAgICAgICBTY2FsaW5nUHJvY2Vzc2VzOiBbXCJBWlJlYmFsYW5jZVwiXVxuICAgICAgICB9LFxuICAgICAgICBwaHlzaWNhbFJlc291cmNlSWQ6IFBoeXNpY2FsUmVzb3VyY2VJZC5vZihcbiAgICAgICAgICBcInN1c3BlbmRBdXRvU2NhbGluZ1Byb2Nlc3Nlc3NcIlxuICAgICAgICApXG4gICAgICB9LFxuICAgICAgb25VcGRhdGU6IHtcbiAgICAgICAgc2VydmljZTogXCJBdXRvU2NhbGluZ1wiLFxuICAgICAgICBhY3Rpb246IFwic3VzcGVuZFByb2Nlc3Nlc1wiLFxuICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgQXV0b1NjYWxpbmdHcm91cE5hbWU6IGF1dG9TY2FsaW5nR3JvdXAuYXV0b1NjYWxpbmdHcm91cE5hbWUsXG4gICAgICAgICAgU2NhbGluZ1Byb2Nlc3NlczogW1wiQVpSZWJhbGFuY2VcIl1cbiAgICAgICAgfSxcbiAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkOiBQaHlzaWNhbFJlc291cmNlSWQub2YoXG4gICAgICAgICAgXCJzdXNwZW5kQXV0b1NjYWxpbmdQcm9jZXNzZXNzXCJcbiAgICAgICAgKVxuICAgICAgfSxcbiAgICAgIHJlc291cmNlVHlwZTogXCJDdXN0b206OmJ1aWxka2l0ZVN1c3BlbmRBdXRvc2NhbGluZ1wiXG4gICAgfSk7XG5cbiAgICBuZXcgQ2ZuQXBwbGljYXRpb24odGhpcywgXCJhZ2VudFNjYWxlclwiLCB7XG4gICAgICBsb2NhdGlvbjoge1xuICAgICAgICBhcHBsaWNhdGlvbklkOlxuICAgICAgICAgIFwiYXJuOmF3czpzZXJ2ZXJsZXNzcmVwbzp1cy1lYXN0LTE6MTcyODQwMDY0ODMyOmFwcGxpY2F0aW9ucy9idWlsZGtpdGUtYWdlbnQtc2NhbGVyXCIsXG4gICAgICAgIHNlbWFudGljVmVyc2lvbjogcHJvcHMuYnVpbGRraXRlQWdlbnRTY2FsZXJWZXJzaW9uXG4gICAgICB9LFxuICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICBCdWlsZGtpdGVBZ2VudFRva2VuUGFyYW1ldGVyOiBgJHthZ2VudFRva2VuLm5hbWV9YCxcbiAgICAgICAgQnVpbGRraXRlQWdlbnRUb2tlblBhcmFtZXRlclN0b3JlS01TS2V5OiBhZ2VudFRva2VuLmNtay5rZXkua2V5SWQsXG4gICAgICAgIFJvbGVQZXJtaXNzaW9uc0JvdW5kYXJ5QVJOOiBcIlwiLFxuICAgICAgICBCdWlsZGtpdGVRdWV1ZTogcHJvcHMuYnVpbGRraXRlUXVldWUsXG4gICAgICAgIEFnZW50c1Blckluc3RhbmNlOiBgJHtwcm9wcy5hZ2VudHNQZXJJbnN0YW5jZX1gLFxuICAgICAgICBNaW5TaXplOiBgJHtwcm9wcy5hZ2VudE1pbkluc3RhbmNlc31gLFxuICAgICAgICBNYXhTaXplOiBgJHtwcm9wcy5hZ2VudE1heEluc3RhbmNlc31gLFxuICAgICAgICBBZ2VudEF1dG9TY2FsZUdyb3VwOiBhdXRvU2NhbGluZ0dyb3VwLmF1dG9TY2FsaW5nR3JvdXBOYW1lLFxuICAgICAgICBTY2FsZU91dEZhY3RvcjogcHJvcHMuc2NhbGVPdXRGYWN0b3IsXG4gICAgICAgIFNjYWxlT3V0Rm9yV2FpdGluZ0pvYnM6IGAke3Byb3BzLnNjYWxlT3V0V2FpdGluZ0ZvckpvYnN9YCxcbiAgICAgICAgRXZlbnRTY2hlZHVsZVBlcmlvZDogcHJvcHMuc2NhbGVyRXZlbnRTY2hlZHVsZVBlcmlvZCxcbiAgICAgICAgTWluUG9sbEludGVydmFsOiBwcm9wcy5zY2FsZXJNaW5Qb2xsSW50ZXJ2YWwsXG4gICAgICAgIExvZ1JldGVudGlvbkRheXM6IGAke3Byb3BzLmxvZ1JldGVudGlvbkRheXN9YFxuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IEJ1aWxka2l0ZTtcbiJdfQ==
372
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRraXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL3BhdHRlcm5zL2F3cy9idWlsZGtpdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBQTBEO0FBQzFELGlEQUs2QjtBQUM3QixpREFZNkI7QUFDN0IsaUVBTXFDO0FBQ3JDLGlEQUFxRDtBQUNyRCxtRUFBa0U7QUFDbEUscUVBQXlFO0FBRXpFLDREQUF5RDtBQUN6RCxpREFBdUQ7QUFDdkQseURBQXVEO0FBQ3ZELHlEQUFvRTtBQUNwRSx1RkFBb0Y7QUFDcEYseURBQWtEO0FBR2xELElBQUssWUFJSjtBQUpELFdBQUssWUFBWTtJQUNmLGlDQUFpQixDQUFBO0lBQ2pCLDZCQUFhLENBQUE7SUFDYiw2QkFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUpJLFlBQVksS0FBWixZQUFZLFFBSWhCO0FBbURZLFFBQUEscUJBQXFCLEdBOEM5QjtJQUNGLGdDQUFnQztJQUNoQyxtQkFBbUIsRUFBRSxTQUFTO0lBQzlCLE9BQU8sRUFBRSxFQUFFO0lBQ1gscUJBQXFCLEVBQUUsWUFBWSxDQUFDLE1BQU07SUFDMUMsa0JBQWtCLEVBQUUsRUFBRTtJQUN0Qiw0QkFBNEIsRUFBRSxLQUFLO0lBQ25DLHlCQUF5QixFQUFFLEVBQUU7SUFDN0IsMkJBQTJCLEVBQUUsT0FBTztJQUNwQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQ25CLDRCQUE0QixFQUFFLEVBQUU7SUFDaEMsK0JBQStCLEVBQUUsRUFBRTtJQUNuQyxrQ0FBa0MsRUFBRSxLQUFLO0lBQ3pDLGtDQUFrQyxFQUFFLEVBQUU7SUFDdEMsY0FBYyxFQUFFLFNBQVM7SUFDekIsaUJBQWlCLEVBQUUsQ0FBQztJQUNwQixrQkFBa0IsRUFBRSxFQUFFO0lBQ3RCLGVBQWUsRUFBRSxFQUFFO0lBQ25CLGtCQUFrQixFQUFFLEVBQUU7SUFDdEIsaUJBQWlCO0lBQ2pCLGlCQUFpQixFQUFFLHNCQUFZLENBQUMsRUFBRSxDQUFD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RUFBRTtnQkFDL0MsT0FBTyxFQUFFLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixFQUFFO2dCQUNyQyxPQUFPLEVBQUUsR0FBRyxLQUFLLENBQUMsaUJBQWlCLEVBQUU7Z0JBQ3JDLG1CQUFtQixFQUFFLGdCQUFnQixDQUFDLG9CQUFvQjtnQkFDMUQsY0FBYyxFQUFFLEtBQUssQ0FBQyxjQUFjO2dCQUNwQyxzQkFBc0IsRUFBRSxHQUFHLEtBQUssQ0FBQyxzQkFBc0IsRUFBRTtnQkFDekQsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLHlCQUF5QjtnQkFDcEQsZUFBZSxFQUFFLEtBQUssQ0FBQyxxQkFBcUI7Z0JBQzVDLGdCQUFnQixFQUFFLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixFQUFFO2FBQzlDO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBaFpELDhCQWdaQztBQUVELGtCQUFlLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IER1cmF0aW9uLCBTdGFja1Byb3BzLCBTdGFjayB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtcbiAgQ29tcG9zaXRlUHJpbmNpcGFsLFxuICBTZXJ2aWNlUHJpbmNpcGFsLFxuICBQb2xpY3lEb2N1bWVudCxcbiAgUG9saWN5U3RhdGVtZW50XG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQge1xuICBCbG9ja0RldmljZVZvbHVtZSxcbiAgSW5zdGFuY2VDbGFzcyxcbiAgSW5zdGFuY2VTaXplLFxuICBJbnN0YW5jZVR5cGUsXG4gIExhdW5jaFRlbXBsYXRlLFxuICBMYXVuY2hUZW1wbGF0ZUh0dHBUb2tlbnMsXG4gIE1hY2hpbmVJbWFnZSxcbiAgTXVsdGlwYXJ0Qm9keSxcbiAgTXVsdGlwYXJ0VXNlckRhdGEsXG4gIFN1Ym5ldFR5cGUsXG4gIFVzZXJEYXRhXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5pbXBvcnQge1xuICBBdXRvU2NhbGluZ0dyb3VwLFxuICBHcm91cE1ldHJpY3MsXG4gIFNwb3RBbGxvY2F0aW9uU3RyYXRlZ3ksXG4gIFRlcm1pbmF0aW9uUG9saWN5LFxuICBVcGRhdGVQb2xpY3lcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1hdXRvc2NhbGluZ1wiO1xuaW1wb3J0IHsgQ2ZuQXBwbGljYXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXNhbVwiO1xuaW1wb3J0IHsgUGh5c2ljYWxSZXNvdXJjZUlkIH0gZnJvbSBcImF3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXNcIjtcbmltcG9ydCB7IEJ1Y2tldERlcGxveW1lbnQsIFNvdXJjZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtczMtZGVwbG95bWVudFwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IFZwYyB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL25ldHdvcmtpbmcvdnBjXCI7XG5pbXBvcnQgeyBQb2xpY3ksIFJvbGUgfSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy9pYW1cIjtcbmltcG9ydCB7IFMzQnVja2V0IH0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3Mvc3RvcmFnZVwiO1xuaW1wb3J0IHsgU2VjdXJlU3RyaW5nUGFyYW1ldGVyIH0gZnJvbSBcIi4uLy4uL3Jlc291cmNlcy9hd3Mvc2VjcmV0c1wiO1xuaW1wb3J0IHsgQXdzQ3VzdG9tUmVzb3VyY2UgfSBmcm9tIFwiLi4vLi4vcmVzb3VyY2VzL2F3cy91dGlsaXRpZXMvYXdzQ3VzdG9tUmVzb3VyY2VcIjtcbmltcG9ydCB0YWdSZXNvdXJjZSBmcm9tIFwiLi4vLi4vdXRpbHMvdGFnUmVzb3VyY2VcIjtcbmltcG9ydCB7IEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uL3R5cGVzXCI7XG5cbmVudW0gYWdlbnRSZWxlYXNlIHtcbiAgU1RBQkxFID0gXCJzdGFibGVcIixcbiAgQkVUQSA9IFwiYmV0YVwiLFxuICBFREdFID0gXCJlZGdlXCJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCdWlsZGtpdGVQcm9wcyBleHRlbmRzIFN0YWNrUHJvcHMge1xuICBhY2NvdW50SWQ/OiBzdHJpbmc7XG4gIGVsYXN0aWNTdGFja1ZlcnNpb246IHN0cmluZztcbiAga2V5TmFtZTogc3RyaW5nO1xuICBidWlsZGtpdGVBZ2VudFJlbGVhc2U6IGFnZW50UmVsZWFzZTtcbiAgYnVpbGRraXRlQWdlbnRUYWdzOiBzdHJpbmc7XG4gIGJ1aWxka2l0ZUFnZW50VGltZXN0YW1wTGluZXM6IGJvb2xlYW47XG4gIGJ1aWxka2l0ZUFnZW50RXhwZXJpbWVudHM6IHN0cmluZztcbiAgYnVpbGRraXRlQWdlbnRTY2FsZXJWZXJzaW9uOiBzdHJpbmc7XG4gIGxvZ1JldGVudGlvbkRheXM6IG51bWJlcjtcbiAgYnVpbGRraXRlQWdlbnRUcmFjaW5nQmFja2VuZDogXCJcIiB8IFwiZGF0YWRvZ1wiIHwgXCJvcGVudGVsZW1ldHJ5XCI7XG4gIGJ1aWxka2l0ZUFnZW50Q2FuY2VsR3JhY2VQZXJpb2Q6IG51bWJlcjtcbiAgYnVpbGRraXRlVGVybWluYXRlSW5zdGFuY2VBZnRlckpvYjogYm9vbGVhbjtcbiAgYnVpbGRraXRlQWRkaXRpb25hbFN1ZG9QZXJtaXNzaW9uczogc3RyaW5nO1xuICBidWlsZGtpdGVRdWV1ZTogc3RyaW5nO1xuICBhZ2VudHNQZXJJbnN0YW5jZTogbnVtYmVyO1xuICBib290c3RyYXBTY3JpcHRVcmw6IHN0cmluZztcbiAgYWdlbnRFbnZGaWxlVXJsOiBzdHJpbmc7XG4gIGF1dGhvcml6ZWRVc2Vyc1VybDogc3RyaW5nO1xuICAvLyBJbmZyYXN0cnVjdHVyZVxuICBhZ2VudEluc3RhbmNlVHlwZTogSW5zdGFuY2VUeXBlO1xuICBhZ2VudFZvbHVtZVNpemU6IG51bWJlcjtcbiAgYWdlbnRNaW5JbnN0YW5jZXM6IG51bWJlcjtcbiAgYWdlbnRNYXhJbnN0YW5jZXM6IG51bWJlcjtcbiAgc2NhbGVyRXZlbnRTY2hlZHVsZVBlcmlvZDogc3RyaW5nO1xuICBzY2FsZXJNaW5Qb2xsSW50ZXJ2YWw6IHN0cmluZztcbiAgc3BvdENhcGFjaXR5UGVyY2VudGFnZTogbnVtYmVyO1xuICBzY2FsZU91dEZhY3Rvcjogc3RyaW5nO1xuICBlY3JBY2Nlc3NQb2xpY3k6IHN0cmluZztcbiAgc2NhbGVJbklkbGVQZXJpb2Q6IG51bWJlcjtcbiAgc2NhbGVPdXRXYWl0aW5nRm9ySm9iczogYm9vbGVhbjtcbiAgZG9ja2VyTmV0d29ya2luZ1Byb3RvY29sOiBcImlwdjRcIiB8IFwiZHVhbHN0YWNrXCI7XG4gIGVuYWJsZVNlY3JldHNQbHVnaW46IGJvb2xlYW47XG4gIGVuYWJsZUVjclBsdWdpbjogYm9vbGVhbjtcbiAgZW5hYmxlRG9ja2VyTG9naW5QbHVnaW46IGJvb2xlYW47XG4gIGVuYWJsZURvY2tlclVzZXJOYW1lc3BhY2VSZW1hcDogYm9vbGVhbjtcbiAgZW5hYmxlRG9ja2VyRXhwZXJpbWVudGFsOiBib29sZWFuO1xuICBlbmFibGVJbnN0YW5jZVN0b3JhZ2U6IGJvb2xlYW47XG4gIG1vdW50VG1wZnNBdFRtcDogYm9vbGVhbjtcbiAgYnVpbGRraXRlQWdlbnRFbmFibGVHaXRNaXJyb3JzOiBib29sZWFuO1xuICBwaXBlbGluZVNpZ25pbmdLTVNLZXk6IHN0cmluZztcbiAgcGlwZWxpbmVTaWduaW5nVmVyaWZpY2F0aW9uRmFpbHVyZUJlaGF2aW9yOiBcImJsb2NrXCIgfCBcIndhcm5cIjtcbiAgLy8gVGFnc1xuICAvLyBUT0RPOiBNb3ZlIHRoZXNlIGludG8gYSBzaW5nbGUgdGFncyBvYmplY3RcbiAgdGFnczogS2V5VmFsdWU7XG4gIGVudmlyb25tZW50OiBzdHJpbmc7XG4gIG93bmVyPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY29uc3QgQnVpbGRraXRlRGVmYXVsdFByb3BzOiBQaWNrPFxuICBCdWlsZGtpdGVQcm9wcyxcbiAgLy8gQnVpbGRraXRlIEFnZW50IENvbmZpZ3VyYXRpb25cbiAgfCBcImVsYXN0aWNTdGFja1ZlcnNpb25cIlxuICB8IFwia2V5TmFtZVwiXG4gIHwgXCJidWlsZGtpdGVBZ2VudFJlbGVhc2VcIlxuICB8IFwiYnVpbGRraXRlQWdlbnRUYWdzXCJcbiAgfCBcImJ1aWxka2l0ZUFnZW50VGltZXN0YW1wTGluZXNcIlxuICB8IFwiYnVpbGRraXRlQWdlbnRFeHBlcmltZW50c1wiXG4gIHwgXCJidWlsZGtpdGVBZ2VudFNjYWxlclZlcnNpb25cIlxuICB8IFwibG9nUmV0ZW50aW9uRGF5c1wiXG4gIHwgXCJidWlsZGtpdGVBZ2VudFRyYWNpbmdCYWNrZW5kXCJcbiAgfCBcImJ1aWxka2l0ZUFnZW50Q2FuY2VsR3JhY2VQZXJpb2RcIlxuICB8IFwiYnVpbGRraXRlVGVybWluYXRlSW5zdGFuY2VBZnRlckpvYlwiXG4gIHwgXCJidWlsZGtpdGVBZGRpdGlvbmFsU3Vkb1Blcm1pc3Npb25zXCJcbiAgfCBcImJ1aWxka2l0ZVF1ZXVlXCJcbiAgfCBcImFnZW50c1Blckluc3RhbmNlXCJcbiAgfCBcImJvb3RzdHJhcFNjcmlwdFVybFwiXG4gIHwgXCJhZ2VudEVudkZpbGVVcmxcIlxuICB8IFwiYXV0aG9yaXplZFVzZXJzVXJsXCJcbiAgLy8gSW5mcmFzdHJ1Y3R1cmVcbiAgfCBcImFnZW50SW5zdGFuY2VUeXBlXCJcbiAgfCBcImFnZW50Vm9sdW1lU2l6ZVwiXG4gIHwgXCJhZ2VudE1pbkluc3RhbmNlc1wiXG4gIHwgXCJhZ2VudE1heEluc3RhbmNlc1wiXG4gIHwgXCJzY2FsZXJFdmVudFNjaGVkdWxlUGVyaW9kXCJcbiAgfCBcInNjYWxlck1pblBvbGxJbnRlcnZhbFwiXG4gIHwgXCJzcG90Q2FwYWNpdHlQZXJjZW50YWdlXCJcbiAgfCBcInNjYWxlT3V0RmFjdG9yXCJcbiAgfCBcInNjYWxlSW5JZGxlUGVyaW9kXCJcbiAgfCBcInNjYWxlT3V0V2FpdGluZ0ZvckpvYnNcIlxuICB8IFwiZWNyQWNjZXNzUG9saWN5XCJcbiAgfCBcImRvY2tlck5ldHdvcmtpbmdQcm90b2NvbFwiXG4gIHwgXCJlbmFibGVTZWNyZXRzUGx1Z2luXCJcbiAgfCBcImVuYWJsZUVjclBsdWdpblwiXG4gIHwgXCJlbmFibGVEb2NrZXJMb2dpblBsdWdpblwiXG4gIHwgXCJlbmFibGVEb2NrZXJVc2VyTmFtZXNwYWNlUmVtYXBcIlxuICB8IFwiZW5hYmxlRG9ja2VyRXhwZXJpbWVudGFsXCJcbiAgfCBcImVuYWJsZUluc3RhbmNlU3RvcmFnZVwiXG4gIHwgXCJtb3VudFRtcGZzQXRUbXBcIlxuICB8IFwiYnVpbGRraXRlQWdlbnRFbmFibGVHaXRNaXJyb3JzXCJcbiAgfCBcInBpcGVsaW5lU2lnbmluZ0tNU0tleVwiXG4gIHwgXCJwaXBlbGluZVNpZ25pbmdWZXJpZmljYXRpb25GYWlsdXJlQmVoYXZpb3JcIlxuICAvLyBUYWdzXG4gIHwgXCJlbnZpcm9ubWVudFwiXG4gIHwgXCJvd25lclwiXG4+ID0ge1xuICAvLyBCdWlsZGtpdGUgQWdlbnQgQ29uZmlndXJhdGlvblxuICBlbGFzdGljU3RhY2tWZXJzaW9uOiBcInY2LjMwLjBcIixcbiAga2V5TmFtZTogXCJcIixcbiAgYnVpbGRraXRlQWdlbnRSZWxlYXNlOiBhZ2VudFJlbGVhc2UuU1RBQkxFLFxuICBidWlsZGtpdGVBZ2VudFRhZ3M6IFwiXCIsXG4gIGJ1aWxka2l0ZUFnZW50VGltZXN0YW1wTGluZXM6IGZhbHNlLFxuICBidWlsZGtpdGVBZ2VudEV4cGVyaW1lbnRzOiBcIlwiLFxuICBidWlsZGtpdGVBZ2VudFNjYWxlclZlcnNpb246IFwiMS44LjBcIixcbiAgbG9nUmV0ZW50aW9uRGF5czogMSxcbiAgYnVpbGRraXRlQWdlbnRUcmFjaW5nQmFja2VuZDogXCJcIixcbiAgYnVpbGRraXRlQWdlbnRDYW5jZWxHcmFjZVBlcmlvZDogNjAsXG4gIGJ1aWxka2l0ZVRlcm1pbmF0ZUluc3RhbmNlQWZ0ZXJKb2I6IGZhbHNlLFxuICBidWlsZGtpdGVBZGRpdGlvbmFsU3Vkb1Blcm1pc3Npb25zOiBcIlwiLFxuICBidWlsZGtpdGVRdWV1ZTogXCJkZWZhdWx0XCIsXG4gIGFnZW50c1Blckluc3RhbmNlOiAxLFxuICBib290c3RyYXBTY3JpcHRVcmw6IFwiXCIsXG4gIGFnZW50RW52RmlsZVVybDogXCJcIixcbiAgYXV0aG9yaXplZFVzZXJzVXJsOiBcIlwiLFxuICAvLyBJbmZyYXN0cnVjdHVyZVxuICBhZ2VudEluc3RhbmNlVHlwZTogSW5zdGFuY2VUeXBlLm9mKEluc3RhbmNlQ2xhc3MuTTUsIEluc3RhbmNlU2l6ZS5MQVJHRSksXG4gIGFnZW50TWluSW5zdGFuY2VzOiAwLFxuICBhZ2VudE1heEluc3RhbmNlczogMTAsXG4gIGFnZW50Vm9sdW1lU2l6ZTogMjUwLFxuICBzY2FsZXJFdmVudFNjaGVkdWxlUGVyaW9kOiBcIjEgbWludXRlXCIsXG4gIHNjYWxlck1pblBvbGxJbnRlcnZhbDogXCIxMHNcIixcbiAgc3BvdENhcGFjaXR5UGVyY2VudGFnZTogNzUsXG4gIHNjYWxlT3V0RmFjdG9yOiBcIjEuMFwiLFxuICBzY2FsZUluSWRsZVBlcmlvZDogNjAwLFxuICBzY2FsZU91dFdhaXRpbmdGb3JKb2JzOiBmYWxzZSxcbiAgZWNyQWNjZXNzUG9saWN5OiBcIlwiLFxuICBkb2NrZXJOZXR3b3JraW5nUHJvdG9jb2w6IFwiaXB2NFwiLFxuICBlbmFibGVTZWNyZXRzUGx1Z2luOiB0cnVlLFxuICBlbmFibGVFY3JQbHVnaW46IHRydWUsXG4gIGVuYWJsZURvY2tlckxvZ2luUGx1Z2luOiB0cnVlLFxuICBlbmFibGVEb2NrZXJVc2VyTmFtZXNwYWNlUmVtYXA6IHRydWUsXG4gIGVuYWJsZURvY2tlckV4cGVyaW1lbnRhbDogZmFsc2UsXG4gIGVuYWJsZUluc3RhbmNlU3RvcmFnZTogZmFsc2UsXG4gIG1vdW50VG1wZnNBdFRtcDogdHJ1ZSxcbiAgYnVpbGRraXRlQWdlbnRFbmFibGVHaXRNaXJyb3JzOiBmYWxzZSxcbiAgcGlwZWxpbmVTaWduaW5nS01TS2V5OiBcIlwiLFxuICBwaXBlbGluZVNpZ25pbmdWZXJpZmljYXRpb25GYWlsdXJlQmVoYXZpb3I6IFwiYmxvY2tcIixcbiAgLy8gVGFnc1xuICBlbnZpcm9ubWVudDogXCJwbGF0Zm9ybVwiLFxuICBvd25lcjogXCJlbmdpbmVlclwiXG59O1xuXG5leHBvcnQgY2xhc3MgQnVpbGRraXRlIGV4dGVuZHMgU3RhY2sge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQnVpbGRraXRlUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHByb3BzKTtcblxuICAgIC8vIFRPRE86IE1ha2UgdGhpcyBpbW11dGFibGUgYW5kIGVuZm9yY2UgdGhlIHRhZ3MgYmVpbmcgc2V0XG4gICAgY29uc3QgdGFncyA9IHtcbiAgICAgIC4uLnByb3BzLnRhZ3MsXG4gICAgICBcImZqYWxsOmNvc3RBbGxvY2F0aW9uOmVudmlyb25tZW50XCI6IHByb3BzLmVudmlyb25tZW50IHx8IFwicGxhdGZvcm1cIixcbiAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246c2VydmljZVwiOiBcImJ1aWxka2l0ZVwiLFxuICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjpvd25lclwiOiBwcm9wcy5vd25lciB8fCBcImVuZ2luZWVyXCIgLy8gVE9ETzogdGhpcyB3aWxsIGhhdmUgdG8gYmUgdGhlIHBsYXRmb3JtIGFjY291bnQgbmFtZT9cbiAgICB9O1xuXG4gICAgLy8gVlBDXG4gICAgY29uc3QgdnBjID0gbmV3IFZwYyh0aGlzLCBcImJ1aWxka2l0ZVwiLCB7XG4gICAgICBhY2NvdW50SWQ6IHByb3BzLmFjY291bnRJZCxcbiAgICAgIHRhZ3M6IHByb3BzLnRhZ3MsXG4gICAgICBzdWJuZXRDb25maWd1cmF0aW9uOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiBgJHtpZH1gLFxuICAgICAgICAgIHN1Ym5ldFR5cGU6IFN1Ym5ldFR5cGUuUFVCTElDXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9KTtcblxuICAgIC8vIEFydGlmYWN0cyBCdWNrZXRcbiAgICBjb25zdCBhcnRpZmFjdEJ1Y2tldCA9IG5ldyBTM0J1Y2tldCh0aGlzLCBcImFydGlmYWN0QnVja2V0XCIpO1xuXG4gICAgLy8gTWFuYWdlZCBTZWNyZXRzXG4gICAgY29uc3QgbWFuYWdlZFNlY3JldHNCdWNrZXQgPSBuZXcgUzNCdWNrZXQodGhpcywgXCJtYW5hZ2VkU2VjcmV0c0J1Y2tldFwiKTtcbiAgICBpZiAocHJvY2Vzcy5lbnYuQlVJTERLSVRFX1BSSVZBVEVfU1NIX0tFWSkge1xuICAgICAgbmV3IEJ1Y2tldERlcGxveW1lbnQodGhpcywgXCJidWlsZGtpdGVTc2hLZXlcIiwge1xuICAgICAgICBzb3VyY2VzOiBbXG4gICAgICAgICAgU291cmNlLmRhdGEoXCJwcml2YXRlX3NzaF9rZXlcIiwgcHJvY2Vzcy5lbnYuQlVJTERLSVRFX1BSSVZBVEVfU1NIX0tFWSlcbiAgICAgICAgXSxcbiAgICAgICAgZGVzdGluYXRpb25CdWNrZXQ6IG1hbmFnZWRTZWNyZXRzQnVja2V0XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICBcIldBUk46J0JVSUxES0lURV9QUklWQVRFX1NTSF9LRVknIGVudmlyb25tZW50IHZhcmlhYmxlIG5vdCBkZWNsYXJlZC4gU2tpcHBpbmcgdXBsb2FkIG9mIHByaXZhdGUgU1NIIGtleVwiXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIEVuY3J5cHRlZCBCdWlsZGtpdGUgQWdlbnQgVG9rZW5cbiAgICBjb25zdCBhZ2VudFRva2VuID0gbmV3IFNlY3VyZVN0cmluZ1BhcmFtZXRlcih0aGlzLCBcImFnZW50VG9rZW5cIiwge1xuICAgICAgbmFtZTogYC9idWlsZGtpdGUvYWdlbnRUb2tlbmAsXG4gICAgICBhbGlhc05hbWU6IGBidWlsZGtpdGVBZ2VudFRva2VuYCxcbiAgICAgIHZhbHVlOiBwcm9jZXNzLmVudi5CVUlMREtJVEVfQUdFTlRfVE9LRU4sXG4gICAgICBvdmVyd3JpdGU6IHByb2Nlc3MuZW52LkJVSUxES0lURV9BR0VOVF9UT0tFTiA/IHRydWUgOiBmYWxzZSxcbiAgICAgIHRhZ3M6IHRhZ3MsXG4gICAgICBhY2NvdW50SWQ6IHRoaXMuYWNjb3VudCxcbiAgICAgIHJlZ2lvbjogdGhpcy5yZWdpb25cbiAgICB9KTtcblxuICAgIC8vIEJ1aWxka2l0ZSBBZ2VudCBFeGVjdXRpb24gUm9sZVxuICAgIGNvbnN0IGFnZW50Um9sZSA9IG5ldyBSb2xlKHRoaXMsIFwiYWdlbnRJYW1Sb2xlXCIsIHtcbiAgICAgIHJvbGVOYW1lOiBgJHtpZH1BZ2VudFJvbGVgLFxuICAgICAgZGVzY3JpcHRpb246IFwiQnVpbGRraXRlIEFnZW50IElBTSBSb2xlXCIsXG4gICAgICBpbmxpbmVQb2xpY2llczoge1xuICAgICAgICBbXCJkZWNyeXB0QnVpbGRraXRlQWdlbnRUb2tlblwiXTogbmV3IFBvbGljeURvY3VtZW50KHtcbiAgICAgICAgICBzdGF0ZW1lbnRzOiBbXG4gICAgICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgICAgYWN0aW9uczogW1wia21zOkRlY3J5cHRcIl0sXG4gICAgICAgICAgICAgIHJlc291cmNlczogW2FnZW50VG9rZW4uY21rLmtleS5rZXlBcm5dXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF1cbiAgICAgICAgfSksXG4gICAgICAgIFtcInJlYWRCdWlsZGtpdGVBZ2VudFRva2VuXCJdOiBuZXcgUG9saWN5RG9jdW1lbnQoe1xuICAgICAgICAgIHN0YXRlbWVudHM6IFtcbiAgICAgICAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgICBhY3Rpb25zOiBbXCJzc206R2V0UGFyYW1ldGVyXCJdLFxuICAgICAgICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICAgICAgICBgYXJuOmF3czpzc206JHtwcm9wcy5lbnY/LnJlZ2lvbn06JHtwcm9wcy5lbnY/LmFjY291bnR9OnBhcmFtZXRlciR7YWdlbnRUb2tlbi5uYW1lfWBcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdXG4gICAgICAgIH0pLFxuICAgICAgICBbXCJyZWFkTWFuYWdlZFNlY3JldHNCdWNrZXRcIl06IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgICAgc3RhdGVtZW50czogW1xuICAgICAgICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICAgIGFjdGlvbnM6IFtcInMzOkdldCpcIiwgXCJzMzpMaXN0KlwiXSxcbiAgICAgICAgICAgICAgcmVzb3VyY2VzOiBbXG4gICAgICAgICAgICAgICAgbWFuYWdlZFNlY3JldHNCdWNrZXQuYnVja2V0QXJuLFxuICAgICAgICAgICAgICAgIGAke21hbmFnZWRTZWNyZXRzQnVja2V0LmJ1Y2tldEFybn0vKmBcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICBdXG4gICAgICAgIH0pLFxuICAgICAgICBbXCJ3cml0ZUFydGlmYWN0QnVja2V0XCJdOiBuZXcgUG9saWN5RG9jdW1lbnQoe1xuICAgICAgICAgIHN0YXRlbWVudHM6IFtcbiAgICAgICAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgICAgXCJzMzpHZXRPYmplY3RcIixcbiAgICAgICAgICAgICAgICBcInMzOkdldE9iamVjdEFjbFwiLFxuICAgICAgICAgICAgICAgIFwiczM6R2V0T2JqZWN0VmVyc2lvblwiLFxuICAgICAgICAgICAgICAgIFwiczM6R2V0T2JqZWN0VmVyc2lvbkFjbFwiLFxuICAgICAgICAgICAgICAgIFwiczM6TGlzdEJ1Y2tldFwiLFxuICAgICAgICAgICAgICAgIFwiczM6UHV0T2JqZWN0XCIsXG4gICAgICAgICAgICAgICAgXCJzMzpQdXRPYmplY3RBY2xcIixcbiAgICAgICAgICAgICAgICBcInMzOlB1dE9iamVjdFZlcnNpb25BY2xcIlxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICAgICAgICBhcnRpZmFjdEJ1Y2tldC5idWNrZXRBcm4sXG4gICAgICAgICAgICAgICAgYCR7YXJ0aWZhY3RCdWNrZXQuYnVja2V0QXJufS8qYFxuICAgICAgICAgICAgICBdXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF1cbiAgICAgICAgfSksXG4gICAgICAgIFtcImRlc2NyaWJlSW5zdGFuY2VcIl06IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgICAgc3RhdGVtZW50czogW1xuICAgICAgICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgICBcImF1dG9zY2FsaW5nOkRlc2NyaWJlQXV0b1NjYWxpbmdJbnN0YW5jZXNcIixcbiAgICAgICAgICAgICAgICBcImNsb3Vkd2F0Y2g6UHV0TWV0cmljRGF0YVwiLFxuICAgICAgICAgICAgICAgIFwiY2xvdWRmb3JtYXRpb246RGVzY3JpYmVTdGFja1Jlc291cmNlXCIsXG4gICAgICAgICAgICAgICAgXCJlYzI6RGVzY3JpYmVUYWdzXCJcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgcmVzb3VyY2VzOiBbXCIqXCJdXG4gICAgICAgICAgICB9KVxuICAgICAgICAgIF1cbiAgICAgICAgfSksXG4gICAgICAgIFtcImxvZ2dpbmdcIl06IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgICAgc3RhdGVtZW50czogW1xuICAgICAgICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgICBcImxvZ3M6Q3JlYXRlTG9nR3JvdXBcIixcbiAgICAgICAgICAgICAgICBcImxvZ3M6Q3JlYXRlTG9nU3RyZWFtXCIsXG4gICAgICAgICAgICAgICAgXCJsb2dzOlB1dExvZ0V2ZW50c1wiLFxuICAgICAgICAgICAgICAgIFwibG9nczpEZXNjcmliZUxvZ0dyb3Vwc1wiLFxuICAgICAgICAgICAgICAgIFwibG9nczpEZXNjcmliZUxvZ1N0cmVhbXNcIlxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICByZXNvdXJjZXM6IFtcIipcIl1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXVxuICAgICAgICB9KSxcbiAgICAgICAgW1wic3NtXCJdOiBuZXcgUG9saWN5RG9jdW1lbnQoe1xuICAgICAgICAgIHN0YXRlbWVudHM6IFtcbiAgICAgICAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgICAgXCJzc206RGVzY3JpYmVJbnN0YW5jZVByb3BlcnRpZXNcIixcbiAgICAgICAgICAgICAgICBcInNzbTpMaXN0QXNzb2NpYXRpb25zXCIsXG4gICAgICAgICAgICAgICAgXCJzc206UHV0SW52ZW50b3J5XCIsXG4gICAgICAgICAgICAgICAgXCJzc206VXBkYXRlSW5zdGFuY2VJbmZvcm1hdGlvblwiLFxuICAgICAgICAgICAgICAgIFwic3NtbWVzc2FnZXM6Q3JlYXRlQ29udHJvbENoYW5uZWxcIixcbiAgICAgICAgICAgICAgICBcInNzbW1lc3NhZ2VzOkNyZWF0ZURhdGFDaGFubmVsXCIsXG4gICAgICAgICAgICAgICAgXCJzc21tZXNzYWdlczpPcGVuQ29udHJvbENoYW5uZWxcIixcbiAgICAgICAgICAgICAgICBcInNzbW1lc3NhZ2VzOk9wZW5EYXRhQ2hhbm5lbFwiLFxuICAgICAgICAgICAgICAgIFwiZWMybWVzc2FnZXM6QWNrbm93bGVkZ2VNZXNzYWdlXCIsXG4gICAgICAgICAgICAgICAgXCJlYzJtZXNzYWdlczpEZWxldGVNZXNzYWdlXCIsXG4gICAgICAgICAgICAgICAgXCJlYzJtZXNzYWdlczpGYWlsTWVzc2FnZVwiLFxuICAgICAgICAgICAgICAgIFwiZWMybWVzc2FnZXM6R2V0RW5kcG9pbnRcIixcbiAgICAgICAgICAgICAgICBcImVjMm1lc3NhZ2VzOkdldE1lc3NhZ2VzXCIsXG4gICAgICAgICAgICAgICAgXCJlYzJtZXNzYWdlczpTZW5kUmVwbHlcIlxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICByZXNvdXJjZXM6IFtcIipcIl1cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgXVxuICAgICAgICB9KVxuICAgICAgfSxcbiAgICAgIGFzc3VtZWRCeTogbmV3IENvbXBvc2l0ZVByaW5jaXBhbChcbiAgICAgICAgbmV3IFNlcnZpY2VQcmluY2lwYWwoXCJhdXRvc2NhbGluZy5hbWF6b25hd3MuY29tXCIpLFxuICAgICAgICBuZXcgU2VydmljZVByaW5jaXBhbChcImVjMi5hbWF6b25hd3MuY29tXCIpXG4gICAgICApXG4gICAgfSk7XG5cbiAgICAvLyBCdWlsZGtpdGUgQWdlbnQgRUMyIFVzZXIgRGF0YVxuICAgIGNvbnN0IG11bHRpcGFydFVzZXJEYXRhID0gbmV3IE11bHRpcGFydFVzZXJEYXRhKCk7XG5cbiAgICAvLyBDbG91ZCBDb25maWdcbiAgICBjb25zdCBjbG91ZENvbmZpZ1VzZXJEYXRhID0gVXNlckRhdGEuZm9yTGludXgoe1xuICAgICAgc2hlYmFuZzogXCIjY2xvdWQtY29uZmlnXCJcbiAgICB9KTtcbiAgICBjbG91ZENvbmZpZ1VzZXJEYXRhLmFkZENvbW1hbmRzKFxuICAgICAgXCJjbG91ZF9maW5hbF9tb2R1bGVzOlwiLFxuICAgICAgXCIgIC0gW3NjcmlwdHMtdXNlciwgYWx3YXlzXVwiXG4gICAgKTtcbiAgICBtdWx0aXBhcnRVc2VyRGF0YS5hZGRQYXJ0KFxuICAgICAgTXVsdGlwYXJ0Qm9keS5mcm9tVXNlckRhdGEoXG4gICAgICAgIGNsb3VkQ29uZmlnVXNlckRhdGEsXG4gICAgICAgIFwidGV4dC9jbG91ZC1jb25maWc7IGNoYXJzZXQ9J3VzLWFzY2lpJ1wiXG4gICAgICApXG4gICAgKTtcblxuICAgIC8vIE1vdW50IFN0b3JhZ2VcbiAgICBjb25zdCBtb3VudFN0b3JhZ2VVc2VyRGF0YSA9IFVzZXJEYXRhLmZvckxpbnV4KHtcbiAgICAgIHNoZWJhbmc6IFwiIyEvYmluL2Jhc2ggLXZcIlxuICAgIH0pO1xuICAgIG1vdW50U3RvcmFnZVVzZXJEYXRhLmFkZENvbW1hbmRzKFxuICAgICAgYEJVSUxES0lURV9FTkFCTEVfSU5TVEFOQ0VfU1RPUkFHRT0nJHtwcm9wcy5lbmFibGVJbnN0YW5jZVN0b3JhZ2V9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfTU9VTlRfVE1QRlNfQVRfVE1QPScke3Byb3BzLm1vdW50VG1wZnNBdFRtcH0nIFxcXFxgLFxuICAgICAgXCIvdXNyL2xvY2FsL2Jpbi9iay1tb3VudC1pbnN0YW5jZS1zdG9yYWdlLnNoXCJcbiAgICApO1xuICAgIG11bHRpcGFydFVzZXJEYXRhLmFkZFBhcnQoXG4gICAgICBNdWx0aXBhcnRCb2R5LmZyb21Vc2VyRGF0YShcbiAgICAgICAgbW91bnRTdG9yYWdlVXNlckRhdGEsXG4gICAgICAgIFwidGV4dC94LXNoZWxsc2NyaXB0OyBjaGFyc2V0PSd1cy1hc2NpaSdcIlxuICAgICAgKVxuICAgICk7XG5cbiAgICAvLyBDb25maWd1cmUgRG9ja2VyXG4gICAgY29uc3QgY29uZmlndXJlRG9ja2VyVXNlckRhdGEgPSBVc2VyRGF0YS5mb3JMaW51eCh7XG4gICAgICBzaGViYW5nOiBcIiMhL2Jpbi9iYXNoIC12XCJcbiAgICB9KTtcbiAgICBjb25maWd1cmVEb2NrZXJVc2VyRGF0YS5hZGRDb21tYW5kcyhcbiAgICAgIGBET0NLRVJfVVNFUk5TX1JFTUFQPScke3Byb3BzLmVuYWJsZURvY2tlclVzZXJOYW1lc3BhY2VSZW1hcH0nIFxcXFxgLFxuICAgICAgYERPQ0tFUl9FWFBFUklNRU5UQUw9JyR7cHJvcHMuZW5hYmxlRG9ja2VyRXhwZXJpbWVudGFsfScgXFxcXGAsXG4gICAgICBgRE9DS0VSX05FVFdPUktJTkdfUFJPVE9DT0w9JyR7cHJvcHMuZG9ja2VyTmV0d29ya2luZ1Byb3RvY29sfScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0VOQUJMRV9JTlNUQU5DRV9TVE9SQUdFPScke3Byb3BzLmVuYWJsZUluc3RhbmNlU3RvcmFnZX0nIFxcXFxgLFxuICAgICAgXCIvdXNyL2xvY2FsL2Jpbi9iay1jb25maWd1cmUtZG9ja2VyLnNoXCJcbiAgICApO1xuICAgIG11bHRpcGFydFVzZXJEYXRhLmFkZFBhcnQoXG4gICAgICBNdWx0aXBhcnRCb2R5LmZyb21Vc2VyRGF0YShcbiAgICAgICAgY29uZmlndXJlRG9ja2VyVXNlckRhdGEsXG4gICAgICAgIFwidGV4dC94LXNoZWxsc2NyaXB0OyBjaGFyc2V0PSd1cy1hc2NpaSdcIlxuICAgICAgKVxuICAgICk7XG5cbiAgICBjb25zdCBpbnN0YWxsRWxhc3RpY1N0YWNrVXNlckRhdGEgPSBVc2VyRGF0YS5mb3JMaW51eCh7XG4gICAgICBzaGViYW5nOiBcIiMhL2Jpbi9iYXNoIC12XCJcbiAgICB9KTtcbiAgICBpbnN0YWxsRWxhc3RpY1N0YWNrVXNlckRhdGEuYWRkQ29tbWFuZHMoXG4gICAgICBgQlVJTERLSVRFX1NUQUNLX05BTUU9JyR7aWR9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfU1RBQ0tfVkVSU0lPTj0nJHtwcm9wcy5lbGFzdGljU3RhY2tWZXJzaW9ufScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX1NDQUxFX0lOX0lETEVfUEVSSU9EPScke3Byb3BzLnNjYWxlSW5JZGxlUGVyaW9kfScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX1NFQ1JFVFNfQlVDS0VUPScke21hbmFnZWRTZWNyZXRzQnVja2V0LmJ1Y2tldE5hbWV9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfU0VDUkVUU19CVUNLRVRfUkVHSU9OPScke3Byb3BzLmVudj8ucmVnaW9ufScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0FHRU5UX1RPS0VOX1BBVEg9JyR7YWdlbnRUb2tlbi5uYW1lfScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0FHRU5UU19QRVJfSU5TVEFOQ0U9JyR7cHJvcHMuYWdlbnRzUGVySW5zdGFuY2V9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfQUdFTlRfVEFHUz0nJHtwcm9wcy5idWlsZGtpdGVBZ2VudFRhZ3N9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfQUdFTlRfVElNRVNUQU1QX0xJTkVTPScke3Byb3BzLmJ1aWxka2l0ZUFnZW50VGltZXN0YW1wTGluZXN9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfQUdFTlRfRVhQRVJJTUVOVFM9JyR7cHJvcHMuYnVpbGRraXRlQWdlbnRFeHBlcmltZW50c30nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9BR0VOVF9UUkFDSU5HX0JBQ0tFTkQ9JyR7cHJvcHMuYnVpbGRraXRlQWdlbnRUcmFjaW5nQmFja2VuZH0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9BR0VOVF9SRUxFQVNFPScke3Byb3BzLmJ1aWxka2l0ZUFnZW50UmVsZWFzZX0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9BR0VOVF9DQU5DRUxfR1JBQ0VfUEVSSU9EPScke3Byb3BzLmJ1aWxka2l0ZUFnZW50Q2FuY2VsR3JhY2VQZXJpb2R9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfQUdFTlRfU0lHTklOR19LTVNfS0VZPScke3Byb3BzLnBpcGVsaW5lU2lnbmluZ0tNU0tleX0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9BR0VOVF9TSUdOSU5HX0ZBSUxVUkVfQkVIQVZJT1I9JyR7cHJvcHMucGlwZWxpbmVTaWduaW5nVmVyaWZpY2F0aW9uRmFpbHVyZUJlaGF2aW9yfScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX1FVRVVFPScke3Byb3BzLmJ1aWxka2l0ZVF1ZXVlfScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0FHRU5UX0VOQUJMRV9HSVRfTUlSUk9SUz0nJHtwcm9wcy5idWlsZGtpdGVBZ2VudEVuYWJsZUdpdE1pcnJvcnN9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfRUxBU1RJQ19CT09UU1RSQVBfU0NSSVBUPScke3Byb3BzLmJvb3RzdHJhcFNjcmlwdFVybH0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9FTlZfRklMRV9VUkw9JyR7cHJvcHMuYWdlbnRFbnZGaWxlVXJsfScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0VOQUJMRV9JTlNUQU5DRV9TVE9SQUdFPScke3Byb3BzLmVuYWJsZUluc3RhbmNlU3RvcmFnZX0nIFxcXFxgLFxuICAgICAgYEJVSUxES0lURV9BVVRIT1JJWkVEX1VTRVJTX1VSTD0nJHtwcm9wcy5hdXRob3JpemVkVXNlcnNVcmx9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfRUNSX1BPTElDWT0nJHtwcm9wcy5lY3JBY2Nlc3NQb2xpY3l9JyBcXFxcYCxcbiAgICAgIGBCVUlMREtJVEVfVEVSTUlOQVRFX0lOU1RBTkNFX0FGVEVSX0pPQj0nJHtwcm9wcy5idWlsZGtpdGVUZXJtaW5hdGVJbnN0YW5jZUFmdGVySm9ifScgXFxcXGAsXG4gICAgICBgQlVJTERLSVRFX0FERElUSU9OQUxfU1VET19QRVJNSVNTSU9OUz0nJHtwcm9wcy5idWlsZGtpdGVBZGRpdGlvbmFsU3Vkb1Blcm1pc3Npb25zfScgXFxcXGAsXG4gICAgICBgQVdTX0RFRkFVTFRfUkVHSU9OPScke3Byb3BzLmVudj8ucmVnaW9ufScgXFxcXGAsXG4gICAgICBgU0VDUkVUU19QTFVHSU5fRU5BQkxFRD0nJHtwcm9wcy5lbmFibGVTZWNyZXRzUGx1Z2lufScgXFxcXGAsXG4gICAgICBgRUNSX1BMVUdJTl9FTkFCTEVEPScke3Byb3BzLmVuYWJsZUVjclBsdWdpbn0nIFxcXFxgLFxuICAgICAgYERPQ0tFUl9MT0dJTl9QTFVHSU5fRU5BQkxFRD0nJHtwcm9wcy5lbmFibGVEb2NrZXJMb2dpblBsdWdpbn0nIFxcXFxgLFxuICAgICAgYERPQ0tFUl9FWFBFUklNRU5UQUw9JyR7cHJvcHMuZW5hYmxlRG9ja2VyRXhwZXJpbWVudGFsfScgXFxcXGAsXG4gICAgICBgRE9DS0VSX1VTRVJOU19SRU1BUD0nJHtwcm9wcy5lbmFibGVEb2NrZXJVc2VyTmFtZXNwYWNlUmVtYXB9JyBcXFxcYCxcbiAgICAgIGBBV1NfUkVHSU9OPScke3Byb3BzLmVudj8ucmVnaW9ufScgXFxcXGAsXG4gICAgICBcIi91c3IvbG9jYWwvYmluL2JrLWluc3RhbGwtZWxhc3RpYy1zdGFjay5zaFwiXG4gICAgKTtcblxuICAgIC8vIE1lcmdlIFVzZXIgRGF0YVxuICAgIG11bHRpcGFydFVzZXJEYXRhLmFkZFBhcnQoXG4gICAgICBNdWx0aXBhcnRCb2R5LmZyb21Vc2VyRGF0YShcbiAgICAgICAgaW5zdGFsbEVsYXN0aWNTdGFja1VzZXJEYXRhLFxuICAgICAgICBcInRleHQveC1zaGVsbHNjcmlwdDsgY2hhcnNldD0ndXMtYXNjaWknXCJcbiAgICAgIClcbiAgICApO1xuXG4gICAgLy8gTGF1bmNoIFRlbXBsYXRlXG4gICAgY29uc3QgbGF1bmNoVGVtcGxhdGUgPSBuZXcgTGF1bmNoVGVtcGxhdGUodGhpcywgXCJhZ2VudExhdW5jaFRlbXBsYXRlXCIsIHtcbiAgICAgIGxhdW5jaFRlbXBsYXRlTmFtZTogYGJ1aWxka2l0ZUxhdW5jaFRlbXBsYXRlYCxcbiAgICAgIGluc3RhbmNlVHlwZTogcHJvcHMuYWdlbnRJbnN0YW5jZVR5cGUsXG4gICAgICBtYWNoaW5lSW1hZ2U6IE1hY2hpbmVJbWFnZS5sb29rdXAoe1xuICAgICAgICBuYW1lOiBcImJ1aWxka2l0ZS1zdGFjay1saW51eC14ODZfNjQtKlwiLFxuICAgICAgICBvd25lcnM6IFtcIjE3Mjg0MDA2NDgzMlwiXSxcbiAgICAgICAgZmlsdGVyczoge1xuICAgICAgICAgIFtcImJsb2NrLWRldmljZS1tYXBwaW5nLnZvbHVtZS10eXBlXCJdOiBbXCJncDNcIl1cbiAgICAgICAgfVxuICAgICAgfSksXG4gICAgICB1c2VyRGF0YTogbXVsdGlwYXJ0VXNlckRhdGEsXG4gICAgICByb2xlOiBhZ2VudFJvbGUsXG4gICAgICBibG9ja0RldmljZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgIGRldmljZU5hbWU6IFwiL2Rldi94dmRhXCIsXG4gICAgICAgICAgdm9sdW1lOiBCbG9ja0RldmljZVZvbHVtZS5lYnMocHJvcHMuYWdlbnRWb2x1bWVTaXplKVxuICAgICAgICB9XG4gICAgICBdLFxuICAgICAgZGV0YWlsZWRNb25pdG9yaW5nOiB0cnVlLFxuICAgICAgcmVxdWlyZUltZHN2MjogZmFsc2UsXG4gICAgICBodHRwUHV0UmVzcG9uc2VIb3BMaW1pdDogMixcbiAgICAgIGh0dHBUb2tlbnM6IExhdW5jaFRlbXBsYXRlSHR0cFRva2Vucy5SRVFVSVJFRCxcbiAgICAgIGluc3RhbmNlTWV0YWRhdGFUYWdzOiB0cnVlXG4gICAgfSk7XG5cbiAgICB0YWdSZXNvdXJjZShsYXVuY2hUZW1wbGF0ZSwge1xuICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjplbnZpcm9ubWVudFwiOiBwcm9wcy5lbnZpcm9ubWVudCxcbiAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246c2VydmljZVwiOiBcImJ1aWxka2l0ZVwiLFxuICAgICAgXCJmamFsbDpjb3N0QWxsb2NhdGlvbjpvd25lclwiOiBwcm9wcy5vd25lciB8fCBcImVuZ2luZWVyXCIsXG4gICAgICBSb2xlOiBcImJ1aWxka2l0ZUFnZW50XCIsXG4gICAgICBCdWlsZGtpdGVBZ2VudFJlbGVhc2U6IGFnZW50UmVsZWFzZS5TVEFCTEUsXG4gICAgICBCdWlsZGtpdGVRdWV1ZTogcHJvcHMuYnVpbGRraXRlUXVldWVcbiAgICB9KTtcblxuICAgIC8vIEF1dG9zY2FsaW5nIEdyb3VwXG4gICAgY29uc3QgYXV0b1NjYWxpbmdHcm91cCA9IG5ldyBBdXRvU2NhbGluZ0dyb3VwKFxuICAgICAgdGhpcyxcbiAgICAgIFwiYWdlbnRBdXRvU2NhbGluZ0dyb3VwXCIsXG4gICAgICB7XG4gICAgICAgIHZwYzogdnBjLFxuICAgICAgICBtaXhlZEluc3RhbmNlc1BvbGljeToge1xuICAgICAgICAgIGxhdW5jaFRlbXBsYXRlOiBsYXVuY2hUZW1wbGF0ZSxcbiAgICAgICAgICBpbnN0YW5jZXNEaXN0cmlidXRpb246IHtcbiAgICAgICAgICAgIG9uRGVtYW5kUGVyY2VudGFnZUFib3ZlQmFzZUNhcGFjaXR5OiBwcm9wcy5zcG90Q2FwYWNpdHlQZXJjZW50YWdlLFxuICAgICAgICAgICAgc3BvdEFsbG9jYXRpb25TdHJhdGVneTogU3BvdEFsbG9jYXRpb25TdHJhdGVneS5DQVBBQ0lUWV9PUFRJTUlaRURcbiAgICAgICAgICB9LFxuICAgICAgICAgIGxhdW5jaFRlbXBsYXRlT3ZlcnJpZGVzOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGluc3RhbmNlVHlwZTogcHJvcHMuYWdlbnRJbnN0YW5jZVR5cGVcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH0sXG4gICAgICAgIG1pbkNhcGFjaXR5OiBwcm9wcy5hZ2VudE1pbkluc3RhbmNlcyxcbiAgICAgICAgbWF4Q2FwYWNpdHk6IHByb3BzLmFnZW50TWF4SW5zdGFuY2VzLFxuICAgICAgICBjb29sZG93bjogRHVyYXRpb24uc2Vjb25kcyg2MCksXG4gICAgICAgIGdyb3VwTWV0cmljczogW0dyb3VwTWV0cmljcy5hbGwoKV0sXG4gICAgICAgIHVwZGF0ZVBvbGljeTogVXBkYXRlUG9saWN5LnJlcGxhY2luZ1VwZGF0ZSgpLFxuICAgICAgICBuZXdJbnN0YW5jZXNQcm90ZWN0ZWRGcm9tU2NhbGVJbjogdHJ1ZSxcbiAgICAgICAgdGVybWluYXRpb25Qb2xpY2llczogW1xuICAgICAgICAgIFRlcm1pbmF0aW9uUG9saWN5Lk9MREVTVF9MQVVOQ0hfQ09ORklHVVJBVElPTixcbiAgICAgICAgICBUZXJtaW5hdGlvblBvbGljeS5DTE9TRVNUX1RPX05FWFRfSU5TVEFOQ0VfSE9VUlxuICAgICAgICBdLFxuICAgICAgICBzc21TZXNzaW9uUGVybWlzc2lvbnM6IHRydWVcbiAgICAgIH1cbiAgICApO1xuXG4gICAgYWdlbnRSb2xlLmF0dGFjaElubGluZVBvbGljeShcbiAgICAgIG5ldyBQb2xpY3kodGhpcywgXCJ1cGRhdGVBdXRvU2NhbGluZ0dyb3VwXCIsIHtcbiAgICAgICAgc3RhdGVtZW50czogW1xuICAgICAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICBcImF1dG9zY2FsaW5nOlNldEluc3RhbmNlSGVhbHRoXCIsXG4gICAgICAgICAgICAgIFwiYXV0b3NjYWxpbmc6VGVybWluYXRlSW5zdGFuY2VJbkF1dG9TY2FsaW5nR3JvdXBcIlxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIHJlc291cmNlczogW2Ake2F1dG9TY2FsaW5nR3JvdXAuYXV0b1NjYWxpbmdHcm91cEFybn1gXVxuICAgICAgICAgIH0pXG4gICAgICAgIF1cbiAgICAgIH0pXG4gICAgKTtcblxuICAgIHRhZ1Jlc291cmNlKGF1dG9TY2FsaW5nR3JvdXAsIHtcbiAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246ZW52aXJvbm1lbnRcIjogcHJvcHMuZW52aXJvbm1lbnQsXG4gICAgICBcImZqYWxsOmNvc3RBbGxvY2F0aW9uOnNlcnZpY2VcIjogXCJidWlsZGtpdGVcIixcbiAgICAgIFwiZmphbGw6Y29zdEFsbG9jYXRpb246b3duZXJcIjogcHJvcHMub3duZXIgfHwgXCJlbmdpbmVlclwiXG4gICAgfSk7XG5cbiAgICAvLyBCdWlsZGtpdGUgU3VzcGVuZCBBdXN0b3NjYWxpbmcgR3JvdXAgQ3VzdG9tIFJlc291cmNlXG4gICAgbmV3IEF3c0N1c3RvbVJlc291cmNlKHRoaXMsIFwic3VzcGVuZEF1dG9zY2FsaW5nUHJvY2Vzc1wiLCB7XG4gICAgICBmdW5jdGlvbk5hbWU6IFwic3VzcGVuZEF1dG9TY2FsaW5nUHJvY2Vzc2Vzc1wiLFxuICAgICAgb25DcmVhdGU6IHtcbiAgICAgICAgc2VydmljZTogXCJBdXRvU2NhbGluZ1wiLFxuICAgICAgICBhY3Rpb246IFwic3VzcGVuZFByb2Nlc3Nlc1wiLFxuICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgQXV0b1NjYWxpbmdHcm91cE5hbWU6IGF1dG9TY2FsaW5nR3JvdXAuYXV0b1NjYWxpbmdHcm91cE5hbWUsXG4gICAgICAgICAgU2NhbGluZ1Byb2Nlc3NlczogW1wiQVpSZWJhbGFuY2VcIl1cbiAgICAgICAgfSxcbiAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkOiBQaHlzaWNhbFJlc291cmNlSWQub2YoXG4gICAgICAgICAgXCJzdXNwZW5kQXV0b1NjYWxpbmdQcm9jZXNzZXNzXCJcbiAgICAgICAgKVxuICAgICAgfSxcbiAgICAgIG9uVXBkYXRlOiB7XG4gICAgICAgIHNlcnZpY2U6IFwiQXV0b1NjYWxpbmdcIixcbiAgICAgICAgYWN0aW9uOiBcInN1c3BlbmRQcm9jZXNzZXNcIixcbiAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgIEF1dG9TY2FsaW5nR3JvdXBOYW1lOiBhdXRvU2NhbGluZ0dyb3VwLmF1dG9TY2FsaW5nR3JvdXBOYW1lLFxuICAgICAgICAgIFNjYWxpbmdQcm9jZXNzZXM6IFtcIkFaUmViYWxhbmNlXCJdXG4gICAgICAgIH0sXG4gICAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZDogUGh5c2ljYWxSZXNvdXJjZUlkLm9mKFxuICAgICAgICAgIFwic3VzcGVuZEF1dG9TY2FsaW5nUHJvY2Vzc2Vzc1wiXG4gICAgICAgIClcbiAgICAgIH0sXG4gICAgICByZXNvdXJjZVR5cGU6IFwiQ3VzdG9tOjpidWlsZGtpdGVTdXNwZW5kQXV0b3NjYWxpbmdcIlxuICAgIH0pO1xuXG4gICAgbmV3IENmbkFwcGxpY2F0aW9uKHRoaXMsIFwiYWdlbnRTY2FsZXJcIiwge1xuICAgICAgbG9jYXRpb246IHtcbiAgICAgICAgYXBwbGljYXRpb25JZDpcbiAgICAgICAgICBcImFybjphd3M6c2VydmVybGVzc3JlcG86dXMtZWFzdC0xOjE3Mjg0MDA2NDgzMjphcHBsaWNhdGlvbnMvYnVpbGRraXRlLWFnZW50LXNjYWxlclwiLFxuICAgICAgICBzZW1hbnRpY1ZlcnNpb246IHByb3BzLmJ1aWxka2l0ZUFnZW50U2NhbGVyVmVyc2lvblxuICAgICAgfSxcbiAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgQnVpbGRraXRlQWdlbnRUb2tlblBhcmFtZXRlcjogYCR7YWdlbnRUb2tlbi5uYW1lfWAsXG4gICAgICAgIEJ1aWxka2l0ZUFnZW50VG9rZW5QYXJhbWV0ZXJTdG9yZUtNU0tleTogYWdlbnRUb2tlbi5jbWsua2V5LmtleUlkLFxuICAgICAgICBSb2xlUGVybWlzc2lvbnNCb3VuZGFyeUFSTjogXCJcIixcbiAgICAgICAgQnVpbGRraXRlUXVldWU6IHByb3BzLmJ1aWxka2l0ZVF1ZXVlLFxuICAgICAgICBBZ2VudHNQZXJJbnN0YW5jZTogYCR7cHJvcHMuYWdlbnRzUGVySW5zdGFuY2V9YCxcbiAgICAgICAgTWluU2l6ZTogYCR7cHJvcHMuYWdlbnRNaW5JbnN0YW5jZXN9YCxcbiAgICAgICAgTWF4U2l6ZTogYCR7cHJvcHMuYWdlbnRNYXhJbnN0YW5jZXN9YCxcbiAgICAgICAgQWdlbnRBdXRvU2NhbGVHcm91cDogYXV0b1NjYWxpbmdHcm91cC5hdXRvU2NhbGluZ0dyb3VwTmFtZSxcbiAgICAgICAgU2NhbGVPdXRGYWN0b3I6IHByb3BzLnNjYWxlT3V0RmFjdG9yLFxuICAgICAgICBTY2FsZU91dEZvcldhaXRpbmdKb2JzOiBgJHtwcm9wcy5zY2FsZU91dFdhaXRpbmdGb3JKb2JzfWAsXG4gICAgICAgIEV2ZW50U2NoZWR1bGVQZXJpb2Q6IHByb3BzLnNjYWxlckV2ZW50U2NoZWR1bGVQZXJpb2QsXG4gICAgICAgIE1pblBvbGxJbnRlcnZhbDogcHJvcHMuc2NhbGVyTWluUG9sbEludGVydmFsLFxuICAgICAgICBMb2dSZXRlbnRpb25EYXlzOiBgJHtwcm9wcy5sb2dSZXRlbnRpb25EYXlzfWBcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBCdWlsZGtpdGU7XG4iXX0=
@@ -0,0 +1,42 @@
1
+ import { BlockDevice, IMachineImage, SubnetType, UserData } from "aws-cdk-lib/aws-ec2";
2
+ import { Construct } from "constructs";
3
+ import { Stack, StackProps } from "aws-cdk-lib";
4
+ import { Role } from "aws-cdk-lib/aws-iam";
5
+ import { KeyValue } from "../../types";
6
+ interface ExistingVpcConfig {
7
+ vpcId: string;
8
+ subnetType?: SubnetType;
9
+ }
10
+ interface NewVpcConfig {
11
+ subnetType: SubnetType;
12
+ }
13
+ type VpcProps = ExistingVpcConfig | NewVpcConfig;
14
+ interface Ec2StackProps extends StackProps {
15
+ spotCapacityPercentage?: number;
16
+ blockDevices?: BlockDevice[];
17
+ accountId: string;
18
+ serviceName: string;
19
+ vpc: VpcProps;
20
+ minCapcity?: number;
21
+ maxCapacity?: number;
22
+ instanceType: string;
23
+ machineImage?: IMachineImage;
24
+ userData?: UserData;
25
+ role?: Role;
26
+ enableSSH?: boolean;
27
+ tags: KeyValue;
28
+ }
29
+ export declare class Ec2Instance extends Stack {
30
+ private launchTemplate;
31
+ private vpc;
32
+ private asgSecurityGroup;
33
+ private autoScalingGroup;
34
+ private keyPair;
35
+ constructor(scope: Construct, id: string, props: Ec2StackProps);
36
+ addVpc(props: Ec2StackProps): void;
37
+ addKeyPair(props: Ec2StackProps): void;
38
+ addLaunchTemplate(props: Ec2StackProps): void;
39
+ addAutoScalingGroup(props: Ec2StackProps): void;
40
+ suspendAutoScaling(): void;
41
+ }
42
+ export {};
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Ec2Instance = void 0;
4
+ const aws_ec2_1 = require("aws-cdk-lib/aws-ec2");
5
+ const aws_cdk_lib_1 = require("aws-cdk-lib");
6
+ const tagResource_1 = require("../../utils/tagResource");
7
+ const aws_autoscaling_1 = require("aws-cdk-lib/aws-autoscaling");
8
+ const awsCustomResource_1 = require("../../resources/aws/utilities/awsCustomResource");
9
+ const custom_resources_1 = require("aws-cdk-lib/custom-resources");
10
+ const vpc_1 = require("../../resources/aws/networking/vpc");
11
+ class Ec2Instance extends aws_cdk_lib_1.Stack {
12
+ constructor(scope, id, props) {
13
+ super(scope, id, props);
14
+ this.addVpc(props);
15
+ if (props.enableSSH) {
16
+ this.addKeyPair(props);
17
+ }
18
+ this.addLaunchTemplate(props);
19
+ this.addAutoScalingGroup(props);
20
+ this.suspendAutoScaling();
21
+ //TODO: Add load balancer as boolean prop, then configure load balancer
22
+ }
23
+ addVpc(props) {
24
+ if ("vpcId" in props.vpc) {
25
+ this.vpc = vpc_1.Vpc.fromLookup(this, `${props.serviceName}Vpc`, {
26
+ vpcId: props.vpc.vpcId
27
+ });
28
+ }
29
+ else {
30
+ this.vpc = new vpc_1.Vpc(this, `${props.serviceName}Vpc`, {
31
+ accountId: props.accountId,
32
+ tags: props.tags,
33
+ subnetConfiguration: [
34
+ {
35
+ name: `${props.serviceName}`,
36
+ subnetType: props.vpc.subnetType || aws_ec2_1.SubnetType.PRIVATE_WITH_EGRESS
37
+ }
38
+ ]
39
+ });
40
+ }
41
+ }
42
+ addKeyPair(props) {
43
+ // TODO: Breakout into a seperate construct for use with better prop handling
44
+ this.keyPair = new aws_ec2_1.KeyPair(this, "KeyPair", {
45
+ keyPairName: `${props.serviceName}KeyPair`
46
+ });
47
+ }
48
+ addLaunchTemplate(props) {
49
+ this.asgSecurityGroup = new aws_ec2_1.SecurityGroup(this, `AsgSecurityGroup`, {
50
+ vpc: this.vpc,
51
+ description: `Security group for the ${props.serviceName} auto scaling group`
52
+ });
53
+ if (props.enableSSH) {
54
+ this.asgSecurityGroup.addIngressRule(aws_ec2_1.Peer.anyIpv4(), aws_ec2_1.Port.tcp(22), "Allow SSH");
55
+ }
56
+ this.launchTemplate = new aws_ec2_1.LaunchTemplate(this, "LaunchTemplate", {
57
+ launchTemplateName: `${props.serviceName}LaunchTemplate`,
58
+ instanceType: new aws_ec2_1.InstanceType(`${props.instanceType}`),
59
+ machineImage: props.machineImage || aws_ec2_1.MachineImage.latestAmazonLinux2(),
60
+ userData: props.userData,
61
+ role: props.role,
62
+ blockDevices: props?.blockDevices,
63
+ securityGroup: this.asgSecurityGroup,
64
+ detailedMonitoring: true,
65
+ requireImdsv2: true,
66
+ httpPutResponseHopLimit: 2,
67
+ httpTokens: aws_ec2_1.LaunchTemplateHttpTokens.REQUIRED,
68
+ instanceMetadataTags: true,
69
+ keyPair: this.keyPair
70
+ });
71
+ }
72
+ addAutoScalingGroup(props) {
73
+ // TODO: Support spot instances
74
+ // TODO: Handle terminating EC2 instances when updating, currently hangs.
75
+ this.autoScalingGroup = new aws_autoscaling_1.AutoScalingGroup(this, "AutoScalingGroup", {
76
+ vpc: this.vpc,
77
+ minCapacity: props.minCapcity,
78
+ maxCapacity: props.maxCapacity,
79
+ launchTemplate: this.launchTemplate,
80
+ cooldown: aws_cdk_lib_1.Duration.seconds(60),
81
+ groupMetrics: [aws_autoscaling_1.GroupMetrics.all()],
82
+ updatePolicy: aws_autoscaling_1.UpdatePolicy.replacingUpdate(),
83
+ newInstancesProtectedFromScaleIn: true,
84
+ // securityGroup: this.asgSecurityGroup,
85
+ terminationPolicies: [
86
+ aws_autoscaling_1.TerminationPolicy.OLDEST_LAUNCH_CONFIGURATION,
87
+ aws_autoscaling_1.TerminationPolicy.CLOSEST_TO_NEXT_INSTANCE_HOUR
88
+ ],
89
+ ssmSessionPermissions: true
90
+ });
91
+ (0, tagResource_1.default)(this.autoScalingGroup, props.tags);
92
+ }
93
+ suspendAutoScaling() {
94
+ new awsCustomResource_1.AwsCustomResource(this, "SuspendAutoscaling", {
95
+ functionName: "suspendAutoScaling",
96
+ onCreate: {
97
+ service: "AutoScaling",
98
+ action: "suspendProcesses",
99
+ parameters: {
100
+ AutoScalingGroupName: this.autoScalingGroup.autoScalingGroupName,
101
+ ScalingProcesses: ["AZRebalance"]
102
+ },
103
+ physicalResourceId: custom_resources_1.PhysicalResourceId.of("suspendAutoScaling")
104
+ },
105
+ onUpdate: {
106
+ service: "AutoScaling",
107
+ action: "suspendProcesses",
108
+ parameters: {
109
+ AutoScalingGroupName: this.autoScalingGroup.autoScalingGroupName,
110
+ ScalingProcesses: ["AZRebalance"]
111
+ },
112
+ physicalResourceId: custom_resources_1.PhysicalResourceId.of("suspendAutoScaling")
113
+ },
114
+ resourceType: "Custom::suspendAutoscaling"
115
+ });
116
+ }
117
+ }
118
+ exports.Ec2Instance = Ec2Instance;
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWMyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL3BhdHRlcm5zL2F3cy9lYzIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaURBZTZCO0FBRTdCLDZDQUEwRDtBQUMxRCx5REFBa0Q7QUFFbEQsaUVBS3FDO0FBRXJDLHVGQUFvRjtBQUNwRixtRUFBa0U7QUFDbEUsNERBQXlEO0FBNkJ6RCxNQUFhLFdBQVksU0FBUSxtQkFBSztJQU9wQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQW9CO1FBQzVELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRXhCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkIsSUFBSSxLQUFLLENBQUMsU0FBUyxFQUFFO1lBQ25CLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDeEI7UUFDRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBRTFCLHVFQUF1RTtJQUN6RSxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQW9CO1FBQ3pCLElBQUksT0FBTyxJQUFJLEtBQUssQ0FBQyxHQUFHLEVBQUU7WUFDeEIsSUFBSSxDQUFDLEdBQUcsR0FBRyxTQUFHLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxHQUFHLEtBQUssQ0FBQyxXQUFXLEtBQUssRUFBRTtnQkFDekQsS0FBSyxFQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsS0FBSzthQUN2QixDQUFDLENBQUM7U0FDSjthQUFNO1lBQ0wsSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLFNBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxLQUFLLENBQUMsV0FBVyxLQUFLLEVBQUU7Z0JBQ2xELFNBQVMsRUFB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QyxnQkFBZ0IsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLHFDQUFpQixDQUFDLElBQUksRUFBRSxvQkFBb0IsRUFBRTtZQUNoRCxZQUFZLEVBQUUsb0JBQW9CO1lBQ2xDLFFBQVEsRUFBRTtnQkFDUixPQUFPLEVBQUUsYUFBYTtnQkFDdEIsTUFBTSxFQUFFLGtCQUFrQjtnQkFDMUIsVUFBVSxFQUFFO29CQUNWLG9CQUFvQixFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxvQkFBb0I7b0JBQ2hFLGdCQUFnQixFQUFFLENBQUMsYUFBYSxDQUFDO2lCQUNsQztnQkFDRCxrQkFBa0IsRUFBRSxxQ0FBa0IsQ0FBQyxFQUFFLENBQUMsb0JBQW9CLENBQUM7YUFDaEU7WUFDRCxRQUFRLEVBQUU7Z0JBQ1IsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLE1BQU0sRUFBRSxrQkFBa0I7Z0JBQzFCLFVBQVUsRUFBRTtvQkFDVixvQkFBb0IsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsb0JBQW9CO29CQUNoRSxnQkFBZ0IsRUFBRSxDQUFDLGFBQWEsQ0FBQztpQkFDbEM7Z0JBQ0Qsa0JBQWtCLEVBQUUscUNBQWtCLENBQUMsRUFBRSxDQUFDLG9CQUFvQixDQUFDO2FBQ2hFO1lBQ0QsWUFBWSxFQUFFLDRCQUE0QjtTQUMzQyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUE1SEQsa0NBNEhDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmxvY2tEZXZpY2UsXG4gIElNYWNoaW5lSW1hZ2UsXG4gIEluc3RhbmNlVHlwZSxcbiAgSVZwYyxcbiAgTGF1bmNoVGVtcGxhdGUsXG4gIFN1Ym5ldFR5cGUsXG4gIFVzZXJEYXRhLFxuICBNYWNoaW5lSW1hZ2UsXG4gIExhdW5jaFRlbXBsYXRlSHR0cFRva2VucyxcbiAgS2V5UGFpcixcbiAgSUtleVBhaXIsXG4gIFNlY3VyaXR5R3JvdXAsXG4gIFBlZXIsXG4gIFBvcnRcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBEdXJhdGlvbiwgU3RhY2ssIFN0YWNrUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB0YWdSZXNvdXJjZSBmcm9tIFwiLi4vLi4vdXRpbHMvdGFnUmVzb3VyY2VcIjtcbmltcG9ydCB7IFJvbGUgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiO1xuaW1wb3J0IHtcbiAgQXV0b1NjYWxpbmdHcm91cCxcbiAgR3JvdXBNZXRyaWNzLFxuICBUZXJtaW5hdGlvblBvbGljeSxcbiAgVXBkYXRlUG9saWN5XG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtYXV0b3NjYWxpbmdcIjtcbmltcG9ydCB7IEtleVZhbHVlIH0gZnJvbSBcIi4uLy4uL3R5cGVzXCI7XG5pbXBvcnQgeyBBd3NDdXN0b21SZXNvdXJjZSB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL3V0aWxpdGllcy9hd3NDdXN0b21SZXNvdXJjZVwiO1xuaW1wb3J0IHsgUGh5c2ljYWxSZXNvdXJjZUlkIH0gZnJvbSBcImF3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXNcIjtcbmltcG9ydCB7IFZwYyB9IGZyb20gXCIuLi8uLi9yZXNvdXJjZXMvYXdzL25ldHdvcmtpbmcvdnBjXCI7XG5cbmludGVyZmFjZSBFeGlzdGluZ1ZwY0NvbmZpZyB7XG4gIHZwY0lkOiBzdHJpbmc7XG4gIHN1Ym5ldFR5cGU/OiBTdWJuZXRUeXBlO1xufVxuXG5pbnRlcmZhY2UgTmV3VnBjQ29uZmlnIHtcbiAgc3VibmV0VHlwZTogU3VibmV0VHlwZTtcbn1cblxudHlwZSBWcGNQcm9wcyA9IEV4aXN0aW5nVnBjQ29uZmlnIHwgTmV3VnBjQ29uZmlnO1xuXG5pbnRlcmZhY2UgRWMyU3RhY2tQcm9wcyBleHRlbmRzIFN0YWNrUHJvcHMge1xuICBzcG90Q2FwYWNpdHlQZXJjZW50YWdlPzogbnVtYmVyO1xuICBibG9ja0RldmljZXM/OiBCbG9ja0RldmljZVtdO1xuICBhY2NvdW50SWQ6IHN0cmluZztcbiAgc2VydmljZU5hbWU6IHN0cmluZztcbiAgdnBjOiBWcGNQcm9wcztcbiAgbWluQ2FwY2l0eT86IG51bWJlcjtcbiAgbWF4Q2FwYWNpdHk/OiBudW1iZXI7XG4gIGluc3RhbmNlVHlwZTogc3RyaW5nO1xuICBtYWNoaW5lSW1hZ2U/OiBJTWFjaGluZUltYWdlO1xuICB1c2VyRGF0YT86IFVzZXJEYXRhO1xuICByb2xlPzogUm9sZTtcbiAgZW5hYmxlU1NIPzogYm9vbGVhbjtcbiAgdGFnczogS2V5VmFsdWU7XG59XG5cbmV4cG9ydCBjbGFzcyBFYzJJbnN0YW5jZSBleHRlbmRzIFN0YWNrIHtcbiAgcHJpdmF0ZSBsYXVuY2hUZW1wbGF0ZTogTGF1bmNoVGVtcGxhdGU7XG4gIHByaXZhdGUgdnBjOiBJVnBjO1xuICBwcml2YXRlIGFzZ1NlY3VyaXR5R3JvdXA6IFNlY3VyaXR5R3JvdXA7XG4gIHByaXZhdGUgYXV0b1NjYWxpbmdHcm91cDogQXV0b1NjYWxpbmdHcm91cDtcbiAgcHJpdmF0ZSBrZXlQYWlyOiBJS2V5UGFpcjtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogRWMyU3RhY2tQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwgcHJvcHMpO1xuXG4gICAgdGhpcy5hZGRWcGMocHJvcHMpO1xuICAgIGlmIChwcm9wcy5lbmFibGVTU0gpIHtcbiAgICAgIHRoaXMuYWRkS2V5UGFpcihwcm9wcyk7XG4gICAgfVxuICAgIHRoaXMuYWRkTGF1bmNoVGVtcGxhdGUocHJvcHMpO1xuICAgIHRoaXMuYWRkQXV0b1NjYWxpbmdHcm91cChwcm9wcyk7XG4gICAgdGhpcy5zdXNwZW5kQXV0b1NjYWxpbmcoKTtcblxuICAgIC8vVE9ETzogQWRkIGxvYWQgYmFsYW5jZXIgYXMgYm9vbGVhbiBwcm9wLCB0aGVuIGNvbmZpZ3VyZSBsb2FkIGJhbGFuY2VyXG4gIH1cblxuICBhZGRWcGMocHJvcHM6IEVjMlN0YWNrUHJvcHMpIHtcbiAgICBpZiAoXCJ2cGNJZFwiIGluIHByb3BzLnZwYykge1xuICAgICAgdGhpcy52cGMgPSBWcGMuZnJvbUxvb2t1cCh0aGlzLCBgJHtwcm9wcy5zZXJ2aWNlTmFtZX1WcGNgLCB7XG4gICAgICAgIHZwY0lkOiBwcm9wcy52cGMudnBjSWRcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnZwYyA9IG5ldyBWcGModGhpcywgYCR7cHJvcHMuc2VydmljZU5hbWV9VnBjYCwge1xuICAgICAgICBhY2NvdW50SWQ6IHByb3BzLmFjY291bnRJZCxcbiAgICAgICAgdGFnczogcHJvcHMudGFncyxcbiAgICAgICAgc3VibmV0Q29uZmlndXJhdGlvbjogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6IGAke3Byb3BzLnNlcnZpY2VOYW1lfWAsXG4gICAgICAgICAgICBzdWJuZXRUeXBlOiBwcm9wcy52cGMuc3VibmV0VHlwZSB8fCBTdWJuZXRUeXBlLlBSSVZBVEVfV0lUSF9FR1JFU1NcbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIGFkZEtleVBhaXIocHJvcHM6IEVjMlN0YWNrUHJvcHMpIHtcbiAgICAvLyBUT0RPOiBCcmVha291dCBpbnRvIGEgc2VwZXJhdGUgY29uc3RydWN0IGZvciB1c2Ugd2l0aCBiZXR0ZXIgcHJvcCBoYW5kbGluZ1xuICAgIHRoaXMua2V5UGFpciA9IG5ldyBLZXlQYWlyKHRoaXMsIFwiS2V5UGFpclwiLCB7XG4gICAgICBrZXlQYWlyTmFtZTogYCR7cHJvcHMuc2VydmljZU5hbWV9S2V5UGFpcmBcbiAgICB9KTtcbiAgfVxuXG4gIGFkZExhdW5jaFRlbXBsYXRlKHByb3BzOiBFYzJTdGFja1Byb3BzKSB7XG4gICAgdGhpcy5hc2dTZWN1cml0eUdyb3VwID0gbmV3IFNlY3VyaXR5R3JvdXAodGhpcywgYEFzZ1NlY3VyaXR5R3JvdXBgLCB7XG4gICAgICB2cGM6IHRoaXMudnBjLFxuICAgICAgZGVzY3JpcHRpb246IGBTZWN1cml0eSBncm91cCBmb3IgdGhlICR7cHJvcHMuc2VydmljZU5hbWV9IGF1dG8gc2NhbGluZyBncm91cGBcbiAgICB9KTtcblxuICAgIGlmIChwcm9wcy5lbmFibGVTU0gpIHtcbiAgICAgIHRoaXMuYXNnU2VjdXJpdHlHcm91cC5hZGRJbmdyZXNzUnVsZShcbiAgICAgICAgUGVlci5hbnlJcHY0KCksXG4gICAgICAgIFBvcnQudGNwKDIyKSxcbiAgICAgICAgXCJBbGxvdyBTU0hcIlxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLmxhdW5jaFRlbXBsYXRlID0gbmV3IExhdW5jaFRlbXBsYXRlKHRoaXMsIFwiTGF1bmNoVGVtcGxhdGVcIiwge1xuICAgICAgbGF1bmNoVGVtcGxhdGVOYW1lOiBgJHtwcm9wcy5zZXJ2aWNlTmFtZX1MYXVuY2hUZW1wbGF0ZWAsXG4gICAgICBpbnN0YW5jZVR5cGU6IG5ldyBJbnN0YW5jZVR5cGUoYCR7cHJvcHMuaW5zdGFuY2VUeXBlfWApLFxuICAgICAgbWFjaGluZUltYWdlOiBwcm9wcy5tYWNoaW5lSW1hZ2UgfHwgTWFjaGluZUltYWdlLmxhdGVzdEFtYXpvbkxpbnV4MigpLFxuICAgICAgdXNlckRhdGE6IHByb3BzLnVzZXJEYXRhLFxuICAgICAgcm9sZTogcHJvcHMucm9sZSxcbiAgICAgIGJsb2NrRGV2aWNlczogcHJvcHM/LmJsb2NrRGV2aWNlcyxcbiAgICAgIHNlY3VyaXR5R3JvdXA6IHRoaXMuYXNnU2VjdXJpdHlHcm91cCxcbiAgICAgIGRldGFpbGVkTW9uaXRvcmluZzogdHJ1ZSxcbiAgICAgIHJlcXVpcmVJbWRzdjI6IHRydWUsXG4gICAgICBodHRwUHV0UmVzcG9uc2VIb3BMaW1pdDogMixcbiAgICAgIGh0dHBUb2tlbnM6IExhdW5jaFRlbXBsYXRlSHR0cFRva2Vucy5SRVFVSVJFRCxcbiAgICAgIGluc3RhbmNlTWV0YWRhdGFUYWdzOiB0cnVlLFxuICAgICAga2V5UGFpcjogdGhpcy5rZXlQYWlyXG4gICAgfSk7XG4gIH1cblxuICBhZGRBdXRvU2NhbGluZ0dyb3VwKHByb3BzOiBFYzJTdGFja1Byb3BzKSB7XG4gICAgLy8gVE9ETzogU3VwcG9ydCBzcG90IGluc3RhbmNlc1xuICAgIC8vIFRPRE86IEhhbmRsZSB0ZXJtaW5hdGluZyBFQzIgaW5zdGFuY2VzIHdoZW4gdXBkYXRpbmcsIGN1cnJlbnRseSBoYW5ncy5cbiAgICB0aGlzLmF1dG9TY2FsaW5nR3JvdXAgPSBuZXcgQXV0b1NjYWxpbmdHcm91cCh0aGlzLCBcIkF1dG9TY2FsaW5nR3JvdXBcIiwge1xuICAgICAgdnBjOiB0aGlzLnZwYyxcbiAgICAgIG1pbkNhcGFjaXR5OiBwcm9wcy5taW5DYXBjaXR5LFxuICAgICAgbWF4Q2FwYWNpdHk6IHByb3BzLm1heENhcGFjaXR5LFxuICAgICAgbGF1bmNoVGVtcGxhdGU6IHRoaXMubGF1bmNoVGVtcGxhdGUsXG4gICAgICBjb29sZG93bjogRHVyYXRpb24uc2Vjb25kcyg2MCksXG4gICAgICBncm91cE1ldHJpY3M6IFtHcm91cE1ldHJpY3MuYWxsKCldLFxuICAgICAgdXBkYXRlUG9saWN5OiBVcGRhdGVQb2xpY3kucmVwbGFjaW5nVXBkYXRlKCksXG4gICAgICBuZXdJbnN0YW5jZXNQcm90ZWN0ZWRGcm9tU2NhbGVJbjogdHJ1ZSxcbiAgICAgIC8vIHNlY3VyaXR5R3JvdXA6IHRoaXMuYXNnU2VjdXJpdHlHcm91cCxcbiAgICAgIHRlcm1pbmF0aW9uUG9saWNpZXM6IFtcbiAgICAgICAgVGVybWluYXRpb25Qb2xpY3kuT0xERVNUX0xBVU5DSF9DT05GSUdVUkFUSU9OLFxuICAgICAgICBUZXJtaW5hdGlvblBvbGljeS5DTE9TRVNUX1RPX05FWFRfSU5TVEFOQ0VfSE9VUlxuICAgICAgXSxcbiAgICAgIHNzbVNlc3Npb25QZXJtaXNzaW9uczogdHJ1ZVxuICAgIH0pO1xuICAgIHRhZ1Jlc291cmNlKHRoaXMuYXV0b1NjYWxpbmdHcm91cCwgcHJvcHMudGFncyk7XG4gIH1cblxuICBzdXNwZW5kQXV0b1NjYWxpbmcoKSB7XG4gICAgbmV3IEF3c0N1c3RvbVJlc291cmNlKHRoaXMsIFwiU3VzcGVuZEF1dG9zY2FsaW5nXCIsIHtcbiAgICAgIGZ1bmN0aW9uTmFtZTogXCJzdXNwZW5kQXV0b1NjYWxpbmdcIixcbiAgICAgIG9uQ3JlYXRlOiB7XG4gICAgICAgIHNlcnZpY2U6IFwiQXV0b1NjYWxpbmdcIixcbiAgICAgICAgYWN0aW9uOiBcInN1c3BlbmRQcm9jZXNzZXNcIixcbiAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgIEF1dG9TY2FsaW5nR3JvdXBOYW1lOiB0aGlzLmF1dG9TY2FsaW5nR3JvdXAuYXV0b1NjYWxpbmdHcm91cE5hbWUsXG4gICAgICAgICAgU2NhbGluZ1Byb2Nlc3NlczogW1wiQVpSZWJhbGFuY2VcIl1cbiAgICAgICAgfSxcbiAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkOiBQaHlzaWNhbFJlc291cmNlSWQub2YoXCJzdXNwZW5kQXV0b1NjYWxpbmdcIilcbiAgICAgIH0sXG4gICAgICBvblVwZGF0ZToge1xuICAgICAgICBzZXJ2aWNlOiBcIkF1dG9TY2FsaW5nXCIsXG4gICAgICAgIGFjdGlvbjogXCJzdXNwZW5kUHJvY2Vzc2VzXCIsXG4gICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICBBdXRvU2NhbGluZ0dyb3VwTmFtZTogdGhpcy5hdXRvU2NhbGluZ0dyb3VwLmF1dG9TY2FsaW5nR3JvdXBOYW1lLFxuICAgICAgICAgIFNjYWxpbmdQcm9jZXNzZXM6IFtcIkFaUmViYWxhbmNlXCJdXG4gICAgICAgIH0sXG4gICAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZDogUGh5c2ljYWxSZXNvdXJjZUlkLm9mKFwic3VzcGVuZEF1dG9TY2FsaW5nXCIpXG4gICAgICB9LFxuICAgICAgcmVzb3VyY2VUeXBlOiBcIkN1c3RvbTo6c3VzcGVuZEF1dG9zY2FsaW5nXCJcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -24,7 +24,6 @@ export interface BasicAppProps {
24
24
  environment?: string;
25
25
  owner?: string;
26
26
  parentDomain?: string;
27
- accountName: string;
28
27
  listenerPort?: number;
29
28
  region?: string;
30
29
  scalingType?: ScalingType;