@aws-cdk/aws-sns-subscriptions
Advanced tools
Comparing version 0.36.0 to 0.36.1
@@ -20,3 +20,3 @@ "use strict"; | ||
} | ||
this.fn.addPermission(topic.node.id, { | ||
this.fn.addPermission(`AllowInvoke:${topic.node.uniqueId}`, { | ||
sourceArn: topic.topicArn, | ||
@@ -26,3 +26,4 @@ principal: new iam.ServicePrincipal('sns.amazonaws.com'), | ||
return { | ||
subscriberId: this.fn.node.id, | ||
subscriberScope: this.fn, | ||
subscriberId: topic.node.id, | ||
endpoint: this.fn.functionArn, | ||
@@ -35,2 +36,2 @@ protocol: sns.SubscriptionProtocol.LAMBDA, | ||
exports.LambdaSubscription = LambdaSubscription; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibGFtYmRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsd0NBQXlDO0FBRXpDLHdDQUF5QztBQUN6Qyx3Q0FBMEM7QUFTMUM7O0dBRUc7QUFDSCxNQUFhLGtCQUFrQjtJQUM3QixZQUE2QixFQUFvQixFQUFtQixRQUFpQyxFQUFFO1FBQTFFLE9BQUUsR0FBRixFQUFFLENBQWtCO1FBQW1CLFVBQUssR0FBTCxLQUFLLENBQThCO0lBQ3ZHLENBQUM7SUFFTSxJQUFJLENBQUMsS0FBaUI7UUFDM0IsMEVBQTBFO1FBQzFFLDhEQUE4RDtRQUM5RCxJQUFJLENBQUMsZ0JBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsc0VBQXNFLENBQUMsQ0FBQztTQUN6RjtRQUVELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxFQUFFO1lBQ25DLFNBQVMsRUFBRSxLQUFLLENBQUMsUUFBUTtZQUN6QixTQUFTLEVBQUUsSUFBSSxHQUFHLENBQUMsZ0JBQWdCLENBQUMsbUJBQW1CLENBQUM7U0FDekQsQ0FBQyxDQUFDO1FBRUgsT0FBTztZQUNMLFlBQVksRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQzdCLFFBQVEsRUFBRSxJQUFJLENBQUMsRUFBRSxDQUFDLFdBQVc7WUFDN0IsUUFBUSxFQUFFLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNO1lBQ3pDLFlBQVksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVk7U0FDdEMsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQXZCRCxnREF1QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgaWFtID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLWlhbScpO1xuaW1wb3J0IGxhbWJkYSA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1sYW1iZGEnKTtcbmltcG9ydCBzbnMgPSByZXF1aXJlKCdAYXdzLWNkay9hd3Mtc25zJyk7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdAYXdzLWNkay9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvblByb3BzIH0gZnJvbSAnLi9zdWJzY3JpcHRpb24nO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGEgTGFtYmRhIHN1YnNjcmlwdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIExhbWJkYVN1YnNjcmlwdGlvblByb3BzIGV4dGVuZHMgU3Vic2NyaXB0aW9uUHJvcHMge1xuXG59XG4vKipcbiAqIFVzZSBhIExhbWJkYSBmdW5jdGlvbiBhcyBhIHN1YnNjcmlwdGlvbiB0YXJnZXRcbiAqL1xuZXhwb3J0IGNsYXNzIExhbWJkYVN1YnNjcmlwdGlvbiBpbXBsZW1lbnRzIHNucy5JVG9waWNTdWJzY3JpcHRpb24ge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGZuOiBsYW1iZGEuSUZ1bmN0aW9uLCBwcml2YXRlIHJlYWRvbmx5IHByb3BzOiBMYW1iZGFTdWJzY3JpcHRpb25Qcm9wcyA9IHt9KSB7XG4gIH1cblxuICBwdWJsaWMgYmluZCh0b3BpYzogc25zLklUb3BpYyk6IHNucy5Ub3BpY1N1YnNjcmlwdGlvbkNvbmZpZyB7XG4gICAgLy8gQ3JlYXRlIHN1YnNjcmlwdGlvbiB1bmRlciAqY29uc3VtaW5nKiBjb25zdHJ1Y3QgdG8gbWFrZSBzdXJlIGl0IGVuZHMgdXBcbiAgICAvLyBpbiB0aGUgY29ycmVjdCBzdGFjayBpbiBjYXNlcyBvZiBjcm9zcy1zdGFjayBzdWJzY3JpcHRpb25zLlxuICAgIGlmICghQ29uc3RydWN0LmlzQ29uc3RydWN0KHRoaXMuZm4pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBzdXBwbGllZCBsYW1iZGEgRnVuY3Rpb24gb2JqZWN0IG11c3QgYmUgYW4gaW5zdGFuY2Ugb2YgQ29uc3RydWN0YCk7XG4gICAgfVxuXG4gICAgdGhpcy5mbi5hZGRQZXJtaXNzaW9uKHRvcGljLm5vZGUuaWQsIHtcbiAgICAgIHNvdXJjZUFybjogdG9waWMudG9waWNBcm4sXG4gICAgICBwcmluY2lwYWw6IG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnc25zLmFtYXpvbmF3cy5jb20nKSxcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICBzdWJzY3JpYmVySWQ6IHRoaXMuZm4ubm9kZS5pZCxcbiAgICAgIGVuZHBvaW50OiB0aGlzLmZuLmZ1bmN0aW9uQXJuLFxuICAgICAgcHJvdG9jb2w6IHNucy5TdWJzY3JpcHRpb25Qcm90b2NvbC5MQU1CREEsXG4gICAgICBmaWx0ZXJQb2xpY3k6IHRoaXMucHJvcHMuZmlsdGVyUG9saWN5LFxuICAgIH07XG4gIH1cbn1cbiJdfQ== | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFtYmRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsibGFtYmRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsd0NBQXlDO0FBRXpDLHdDQUF5QztBQUN6Qyx3Q0FBMEM7QUFTMUM7O0dBRUc7QUFDSCxNQUFhLGtCQUFrQjtJQUM3QixZQUE2QixFQUFvQixFQUFtQixRQUFpQyxFQUFFO1FBQTFFLE9BQUUsR0FBRixFQUFFLENBQWtCO1FBQW1CLFVBQUssR0FBTCxLQUFLLENBQThCO0lBQ3ZHLENBQUM7SUFFTSxJQUFJLENBQUMsS0FBaUI7UUFDM0IsMEVBQTBFO1FBQzFFLDhEQUE4RDtRQUM5RCxJQUFJLENBQUMsZ0JBQVMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsc0VBQXNFLENBQUMsQ0FBQztTQUN6RjtRQUVELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGVBQWUsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUMxRCxTQUFTLEVBQUUsS0FBSyxDQUFDLFFBQVE7WUFDekIsU0FBUyxFQUFFLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQixDQUFDO1NBQ3pELENBQUMsQ0FBQztRQUVILE9BQU87WUFDTCxlQUFlLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDeEIsWUFBWSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMzQixRQUFRLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxXQUFXO1lBQzdCLFFBQVEsRUFBRSxHQUFHLENBQUMsb0JBQW9CLENBQUMsTUFBTTtZQUN6QyxZQUFZLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZO1NBQ3RDLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF4QkQsZ0RBd0JDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGlhbSA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1pYW0nKTtcbmltcG9ydCBsYW1iZGEgPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtbGFtYmRhJyk7XG5pbXBvcnQgc25zID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLXNucycpO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnQGF3cy1jZGsvY29yZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25Qcm9wcyB9IGZyb20gJy4vc3Vic2NyaXB0aW9uJztcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBhIExhbWJkYSBzdWJzY3JpcHRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMYW1iZGFTdWJzY3JpcHRpb25Qcm9wcyBleHRlbmRzIFN1YnNjcmlwdGlvblByb3BzIHtcblxufVxuLyoqXG4gKiBVc2UgYSBMYW1iZGEgZnVuY3Rpb24gYXMgYSBzdWJzY3JpcHRpb24gdGFyZ2V0XG4gKi9cbmV4cG9ydCBjbGFzcyBMYW1iZGFTdWJzY3JpcHRpb24gaW1wbGVtZW50cyBzbnMuSVRvcGljU3Vic2NyaXB0aW9uIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBmbjogbGFtYmRhLklGdW5jdGlvbiwgcHJpdmF0ZSByZWFkb25seSBwcm9wczogTGFtYmRhU3Vic2NyaXB0aW9uUHJvcHMgPSB7fSkge1xuICB9XG5cbiAgcHVibGljIGJpbmQodG9waWM6IHNucy5JVG9waWMpOiBzbnMuVG9waWNTdWJzY3JpcHRpb25Db25maWcge1xuICAgIC8vIENyZWF0ZSBzdWJzY3JpcHRpb24gdW5kZXIgKmNvbnN1bWluZyogY29uc3RydWN0IHRvIG1ha2Ugc3VyZSBpdCBlbmRzIHVwXG4gICAgLy8gaW4gdGhlIGNvcnJlY3Qgc3RhY2sgaW4gY2FzZXMgb2YgY3Jvc3Mtc3RhY2sgc3Vic2NyaXB0aW9ucy5cbiAgICBpZiAoIUNvbnN0cnVjdC5pc0NvbnN0cnVjdCh0aGlzLmZuKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgc3VwcGxpZWQgbGFtYmRhIEZ1bmN0aW9uIG9iamVjdCBtdXN0IGJlIGFuIGluc3RhbmNlIG9mIENvbnN0cnVjdGApO1xuICAgIH1cblxuICAgIHRoaXMuZm4uYWRkUGVybWlzc2lvbihgQWxsb3dJbnZva2U6JHt0b3BpYy5ub2RlLnVuaXF1ZUlkfWAsIHtcbiAgICAgIHNvdXJjZUFybjogdG9waWMudG9waWNBcm4sXG4gICAgICBwcmluY2lwYWw6IG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnc25zLmFtYXpvbmF3cy5jb20nKSxcbiAgICB9KTtcblxuICAgIHJldHVybiB7XG4gICAgICBzdWJzY3JpYmVyU2NvcGU6IHRoaXMuZm4sXG4gICAgICBzdWJzY3JpYmVySWQ6IHRvcGljLm5vZGUuaWQsXG4gICAgICBlbmRwb2ludDogdGhpcy5mbi5mdW5jdGlvbkFybixcbiAgICAgIHByb3RvY29sOiBzbnMuU3Vic2NyaXB0aW9uUHJvdG9jb2wuTEFNQkRBLFxuICAgICAgZmlsdGVyUG9saWN5OiB0aGlzLnByb3BzLmZpbHRlclBvbGljeSxcbiAgICB9O1xuICB9XG59XG4iXX0= |
@@ -31,3 +31,4 @@ "use strict"; | ||
return { | ||
subscriberId: this.queue.node.id, | ||
subscriberScope: this.queue, | ||
subscriberId: topic.node.uniqueId, | ||
endpoint: this.queue.queueArn, | ||
@@ -41,2 +42,2 @@ protocol: sns.SubscriptionProtocol.SQS, | ||
exports.SqsSubscription = SqsSubscription; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3FzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3FzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsd0NBQXlDO0FBQ3pDLHdDQUF5QztBQUV6Qyx3Q0FBMEM7QUFpQjFDOztHQUVHO0FBQ0gsTUFBYSxlQUFlO0lBQzFCLFlBQTZCLEtBQWlCLEVBQW1CLFFBQThCLEVBQUU7UUFBcEUsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUFtQixVQUFLLEdBQUwsS0FBSyxDQUEyQjtJQUNqRyxDQUFDO0lBRU0sSUFBSSxDQUFDLEtBQWlCO1FBQzNCLDBFQUEwRTtRQUMxRSw4REFBOEQ7UUFDOUQsSUFBSSxDQUFDLGdCQUFTLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLDREQUE0RCxDQUFDLENBQUM7U0FDL0U7UUFFRCx1RUFBdUU7UUFDdkUsaUNBQWlDO1FBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO1lBQ3JELFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO1lBQ2hDLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO1lBQzVCLFVBQVUsRUFBRSxDQUFDLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDM0QsVUFBVSxFQUFFO2dCQUNWLFNBQVMsRUFBRSxFQUFFLGVBQWUsRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFO2FBQy9DO1NBQ0YsQ0FBQyxDQUFDLENBQUM7UUFFSixPQUFPO1lBQ0wsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDaEMsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUTtZQUM3QixRQUFRLEVBQUUsR0FBRyxDQUFDLG9CQUFvQixDQUFDLEdBQUc7WUFDdEMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0I7WUFDakQsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWTtTQUN0QyxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBOUJELDBDQThCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpYW0gPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtaWFtJyk7XG5pbXBvcnQgc25zID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLXNucycpO1xuaW1wb3J0IHNxcyA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1zcXMnKTtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uUHJvcHMgfSBmcm9tICcuL3N1YnNjcmlwdGlvbic7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYW4gU1FTIHN1YnNjcmlwdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNxc1N1YnNjcmlwdGlvblByb3BzIGV4dGVuZHMgU3Vic2NyaXB0aW9uUHJvcHMge1xuICAvKipcbiAgICogVGhlIG1lc3NhZ2UgdG8gdGhlIHF1ZXVlIGlzIHRoZSBzYW1lIGFzIGl0IHdhcyBzZW50IHRvIHRoZSB0b3BpY1xuICAgKlxuICAgKiBJZiBmYWxzZSwgdGhlIG1lc3NhZ2Ugd2lsbCBiZSB3cmFwcGVkIGluIGFuIFNOUyBlbnZlbG9wZS5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHJhd01lc3NhZ2VEZWxpdmVyeT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogVXNlIGFuIFNRUyBxdWV1ZSBhcyBhIHN1YnNjcmlwdGlvbiB0YXJnZXRcbiAqL1xuZXhwb3J0IGNsYXNzIFNxc1N1YnNjcmlwdGlvbiBpbXBsZW1lbnRzIHNucy5JVG9waWNTdWJzY3JpcHRpb24ge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHF1ZXVlOiBzcXMuSVF1ZXVlLCBwcml2YXRlIHJlYWRvbmx5IHByb3BzOiBTcXNTdWJzY3JpcHRpb25Qcm9wcyA9IHt9KSB7XG4gIH1cblxuICBwdWJsaWMgYmluZCh0b3BpYzogc25zLklUb3BpYyk6IHNucy5Ub3BpY1N1YnNjcmlwdGlvbkNvbmZpZyB7XG4gICAgLy8gQ3JlYXRlIHN1YnNjcmlwdGlvbiB1bmRlciAqY29uc3VtaW5nKiBjb25zdHJ1Y3QgdG8gbWFrZSBzdXJlIGl0IGVuZHMgdXBcbiAgICAvLyBpbiB0aGUgY29ycmVjdCBzdGFjayBpbiBjYXNlcyBvZiBjcm9zcy1zdGFjayBzdWJzY3JpcHRpb25zLlxuICAgIGlmICghQ29uc3RydWN0LmlzQ29uc3RydWN0KHRoaXMucXVldWUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBzdXBwbGllZCBRdWV1ZSBvYmplY3QgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBDb25zdHJ1Y3RgKTtcbiAgICB9XG5cbiAgICAvLyBhZGQgYSBzdGF0ZW1lbnQgdG8gdGhlIHF1ZXVlIHJlc291cmNlIHBvbGljeSB3aGljaCBhbGxvd3MgdGhpcyB0b3BpY1xuICAgIC8vIHRvIHNlbmQgbWVzc2FnZXMgdG8gdGhlIHF1ZXVlLlxuICAgIHRoaXMucXVldWUuYWRkVG9SZXNvdXJjZVBvbGljeShuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICByZXNvdXJjZXM6IFt0aGlzLnF1ZXVlLnF1ZXVlQXJuXSxcbiAgICAgIGFjdGlvbnM6IFsnc3FzOlNlbmRNZXNzYWdlJ10sXG4gICAgICBwcmluY2lwYWxzOiBbbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdzbnMuYW1hem9uYXdzLmNvbScpXSxcbiAgICAgIGNvbmRpdGlvbnM6IHtcbiAgICAgICAgQXJuRXF1YWxzOiB7ICdhd3M6U291cmNlQXJuJzogdG9waWMudG9waWNBcm4gfVxuICAgICAgfVxuICAgIH0pKTtcblxuICAgIHJldHVybiB7XG4gICAgICBzdWJzY3JpYmVySWQ6IHRoaXMucXVldWUubm9kZS5pZCxcbiAgICAgIGVuZHBvaW50OiB0aGlzLnF1ZXVlLnF1ZXVlQXJuLFxuICAgICAgcHJvdG9jb2w6IHNucy5TdWJzY3JpcHRpb25Qcm90b2NvbC5TUVMsXG4gICAgICByYXdNZXNzYWdlRGVsaXZlcnk6IHRoaXMucHJvcHMucmF3TWVzc2FnZURlbGl2ZXJ5LFxuICAgICAgZmlsdGVyUG9saWN5OiB0aGlzLnByb3BzLmZpbHRlclBvbGljeSxcbiAgICB9O1xuICB9XG59XG4iXX0= | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3FzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3FzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsd0NBQXlDO0FBQ3pDLHdDQUF5QztBQUV6Qyx3Q0FBMEM7QUFpQjFDOztHQUVHO0FBQ0gsTUFBYSxlQUFlO0lBQzFCLFlBQTZCLEtBQWlCLEVBQW1CLFFBQThCLEVBQUU7UUFBcEUsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUFtQixVQUFLLEdBQUwsS0FBSyxDQUEyQjtJQUNqRyxDQUFDO0lBRU0sSUFBSSxDQUFDLEtBQWlCO1FBQzNCLDBFQUEwRTtRQUMxRSw4REFBOEQ7UUFDOUQsSUFBSSxDQUFDLGdCQUFTLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLDREQUE0RCxDQUFDLENBQUM7U0FDL0U7UUFFRCx1RUFBdUU7UUFDdkUsaUNBQWlDO1FBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO1lBQ3JELFNBQVMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDO1lBQ2hDLE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO1lBQzVCLFVBQVUsRUFBRSxDQUFDLElBQUksR0FBRyxDQUFDLGdCQUFnQixDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDM0QsVUFBVSxFQUFFO2dCQUNWLFNBQVMsRUFBRSxFQUFFLGVBQWUsRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFO2FBQy9DO1NBQ0YsQ0FBQyxDQUFDLENBQUM7UUFFSixPQUFPO1lBQ0wsZUFBZSxFQUFFLElBQUksQ0FBQyxLQUFLO1lBQzNCLFlBQVksRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVE7WUFDakMsUUFBUSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUTtZQUM3QixRQUFRLEVBQUUsR0FBRyxDQUFDLG9CQUFvQixDQUFDLEdBQUc7WUFDdEMsa0JBQWtCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxrQkFBa0I7WUFDakQsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWTtTQUN0QyxDQUFDO0lBQ0osQ0FBQztDQUNGO0FBL0JELDBDQStCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBpYW0gPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtaWFtJyk7XG5pbXBvcnQgc25zID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLXNucycpO1xuaW1wb3J0IHNxcyA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1zcXMnKTtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uUHJvcHMgfSBmcm9tICcuL3N1YnNjcmlwdGlvbic7XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYW4gU1FTIHN1YnNjcmlwdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNxc1N1YnNjcmlwdGlvblByb3BzIGV4dGVuZHMgU3Vic2NyaXB0aW9uUHJvcHMge1xuICAvKipcbiAgICogVGhlIG1lc3NhZ2UgdG8gdGhlIHF1ZXVlIGlzIHRoZSBzYW1lIGFzIGl0IHdhcyBzZW50IHRvIHRoZSB0b3BpY1xuICAgKlxuICAgKiBJZiBmYWxzZSwgdGhlIG1lc3NhZ2Ugd2lsbCBiZSB3cmFwcGVkIGluIGFuIFNOUyBlbnZlbG9wZS5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHJhd01lc3NhZ2VEZWxpdmVyeT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogVXNlIGFuIFNRUyBxdWV1ZSBhcyBhIHN1YnNjcmlwdGlvbiB0YXJnZXRcbiAqL1xuZXhwb3J0IGNsYXNzIFNxc1N1YnNjcmlwdGlvbiBpbXBsZW1lbnRzIHNucy5JVG9waWNTdWJzY3JpcHRpb24ge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IHF1ZXVlOiBzcXMuSVF1ZXVlLCBwcml2YXRlIHJlYWRvbmx5IHByb3BzOiBTcXNTdWJzY3JpcHRpb25Qcm9wcyA9IHt9KSB7XG4gIH1cblxuICBwdWJsaWMgYmluZCh0b3BpYzogc25zLklUb3BpYyk6IHNucy5Ub3BpY1N1YnNjcmlwdGlvbkNvbmZpZyB7XG4gICAgLy8gQ3JlYXRlIHN1YnNjcmlwdGlvbiB1bmRlciAqY29uc3VtaW5nKiBjb25zdHJ1Y3QgdG8gbWFrZSBzdXJlIGl0IGVuZHMgdXBcbiAgICAvLyBpbiB0aGUgY29ycmVjdCBzdGFjayBpbiBjYXNlcyBvZiBjcm9zcy1zdGFjayBzdWJzY3JpcHRpb25zLlxuICAgIGlmICghQ29uc3RydWN0LmlzQ29uc3RydWN0KHRoaXMucXVldWUpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBzdXBwbGllZCBRdWV1ZSBvYmplY3QgbXVzdCBiZSBhbiBpbnN0YW5jZSBvZiBDb25zdHJ1Y3RgKTtcbiAgICB9XG5cbiAgICAvLyBhZGQgYSBzdGF0ZW1lbnQgdG8gdGhlIHF1ZXVlIHJlc291cmNlIHBvbGljeSB3aGljaCBhbGxvd3MgdGhpcyB0b3BpY1xuICAgIC8vIHRvIHNlbmQgbWVzc2FnZXMgdG8gdGhlIHF1ZXVlLlxuICAgIHRoaXMucXVldWUuYWRkVG9SZXNvdXJjZVBvbGljeShuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICByZXNvdXJjZXM6IFt0aGlzLnF1ZXVlLnF1ZXVlQXJuXSxcbiAgICAgIGFjdGlvbnM6IFsnc3FzOlNlbmRNZXNzYWdlJ10sXG4gICAgICBwcmluY2lwYWxzOiBbbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdzbnMuYW1hem9uYXdzLmNvbScpXSxcbiAgICAgIGNvbmRpdGlvbnM6IHtcbiAgICAgICAgQXJuRXF1YWxzOiB7ICdhd3M6U291cmNlQXJuJzogdG9waWMudG9waWNBcm4gfVxuICAgICAgfVxuICAgIH0pKTtcblxuICAgIHJldHVybiB7XG4gICAgICBzdWJzY3JpYmVyU2NvcGU6IHRoaXMucXVldWUsXG4gICAgICBzdWJzY3JpYmVySWQ6IHRvcGljLm5vZGUudW5pcXVlSWQsXG4gICAgICBlbmRwb2ludDogdGhpcy5xdWV1ZS5xdWV1ZUFybixcbiAgICAgIHByb3RvY29sOiBzbnMuU3Vic2NyaXB0aW9uUHJvdG9jb2wuU1FTLFxuICAgICAgcmF3TWVzc2FnZURlbGl2ZXJ5OiB0aGlzLnByb3BzLnJhd01lc3NhZ2VEZWxpdmVyeSxcbiAgICAgIGZpbHRlclBvbGljeTogdGhpcy5wcm9wcy5maWx0ZXJQb2xpY3ksXG4gICAgfTtcbiAgfVxufVxuIl19 |
{ | ||
"name": "@aws-cdk/aws-sns-subscriptions", | ||
"version": "0.36.0", | ||
"version": "0.36.1", | ||
"description": "CDK Subscription Constructs for AWS SNS", | ||
@@ -71,23 +71,23 @@ "main": "lib/index.js", | ||
"devDependencies": { | ||
"@aws-cdk/assert": "^0.36.0", | ||
"cdk-build-tools": "^0.36.0", | ||
"cdk-integ-tools": "^0.36.0", | ||
"cfn2ts": "^0.36.0", | ||
"@aws-cdk/assert": "^0.36.1", | ||
"cdk-build-tools": "^0.36.1", | ||
"cdk-integ-tools": "^0.36.1", | ||
"cfn2ts": "^0.36.1", | ||
"jest": "^24.8.0", | ||
"pkglint": "^0.36.0" | ||
"pkglint": "^0.36.1" | ||
}, | ||
"dependencies": { | ||
"@aws-cdk/aws-iam": "^0.36.0", | ||
"@aws-cdk/aws-lambda": "^0.36.0", | ||
"@aws-cdk/aws-sns": "^0.36.0", | ||
"@aws-cdk/aws-sqs": "^0.36.0", | ||
"@aws-cdk/core": "^0.36.0" | ||
"@aws-cdk/aws-iam": "^0.36.1", | ||
"@aws-cdk/aws-lambda": "^0.36.1", | ||
"@aws-cdk/aws-sns": "^0.36.1", | ||
"@aws-cdk/aws-sqs": "^0.36.1", | ||
"@aws-cdk/core": "^0.36.1" | ||
}, | ||
"homepage": "https://github.com/awslabs/aws-cdk", | ||
"peerDependencies": { | ||
"@aws-cdk/aws-iam": "^0.36.0", | ||
"@aws-cdk/aws-lambda": "^0.36.0", | ||
"@aws-cdk/aws-sns": "^0.36.0", | ||
"@aws-cdk/aws-sqs": "^0.36.0", | ||
"@aws-cdk/core": "^0.36.0" | ||
"@aws-cdk/aws-iam": "^0.36.1", | ||
"@aws-cdk/aws-lambda": "^0.36.1", | ||
"@aws-cdk/aws-sns": "^0.36.1", | ||
"@aws-cdk/aws-sqs": "^0.36.1", | ||
"@aws-cdk/core": "^0.36.1" | ||
}, | ||
@@ -94,0 +94,0 @@ "engines": { |
@@ -6,61 +6,2 @@ { | ||
}, | ||
"MyTopicEchoD1E0EE5C": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Protocol": "lambda", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
}, | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"Echo11F3FB29", | ||
"Arn" | ||
] | ||
} | ||
} | ||
}, | ||
"MyTopicFiltered55457D11": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Protocol": "lambda", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
}, | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"Filtered186C0D0A", | ||
"Arn" | ||
] | ||
}, | ||
"FilterPolicy": { | ||
"color": [ | ||
"red", | ||
{ | ||
"prefix": "bl" | ||
}, | ||
{ | ||
"prefix": "ye" | ||
} | ||
], | ||
"size": [ | ||
{ | ||
"anything-but": [ | ||
"small", | ||
"medium" | ||
] | ||
} | ||
], | ||
"price": [ | ||
{ | ||
"numeric": [ | ||
">=", | ||
100, | ||
"<=", | ||
200 | ||
] | ||
} | ||
] | ||
} | ||
} | ||
}, | ||
"EchoServiceRoleBE28060B": { | ||
@@ -126,3 +67,3 @@ "Type": "AWS::IAM::Role", | ||
}, | ||
"EchoMyTopicF6EBB45F": { | ||
"EchoAllowInvokeawscdksnslambdaMyTopic6C62AB907F727CDA": { | ||
"Type": "AWS::Lambda::Permission", | ||
@@ -143,2 +84,17 @@ "Properties": { | ||
}, | ||
"EchoMyTopic4CB8819E": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Protocol": "lambda", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
}, | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"Echo11F3FB29", | ||
"Arn" | ||
] | ||
} | ||
} | ||
}, | ||
"FilteredServiceRole16D9DDC1": { | ||
@@ -204,3 +160,3 @@ "Type": "AWS::IAM::Role", | ||
}, | ||
"FilteredMyTopic804BCBC3": { | ||
"FilteredAllowInvokeawscdksnslambdaMyTopic6C62AB90A2EA1666": { | ||
"Type": "AWS::Lambda::Permission", | ||
@@ -220,4 +176,48 @@ "Properties": { | ||
} | ||
}, | ||
"FilteredMyTopicC8395C27": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Protocol": "lambda", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
}, | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"Filtered186C0D0A", | ||
"Arn" | ||
] | ||
}, | ||
"FilterPolicy": { | ||
"color": [ | ||
"red", | ||
{ | ||
"prefix": "bl" | ||
}, | ||
{ | ||
"prefix": "ye" | ||
} | ||
], | ||
"size": [ | ||
{ | ||
"anything-but": [ | ||
"small", | ||
"medium" | ||
] | ||
} | ||
], | ||
"price": [ | ||
{ | ||
"numeric": [ | ||
">=", | ||
100, | ||
"<=", | ||
200 | ||
] | ||
} | ||
] | ||
} | ||
} | ||
} | ||
} | ||
} |
@@ -6,17 +6,2 @@ { | ||
}, | ||
"MyTopicMyQueueFA241964": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Protocol": "sqs", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
}, | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"MyQueueE6CA6235", | ||
"Arn" | ||
] | ||
} | ||
} | ||
}, | ||
"MyQueueE6CA6235": { | ||
@@ -59,4 +44,19 @@ "Type": "AWS::SQS::Queue" | ||
} | ||
}, | ||
"MyQueueawscdksnssqsMyTopic9361DEA223429051": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Protocol": "sqs", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
}, | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"MyQueueE6CA6235", | ||
"Arn" | ||
] | ||
} | ||
} | ||
} | ||
} | ||
} |
@@ -80,17 +80,2 @@ "use strict"; | ||
}, | ||
"MyTopicMyQueueFA241964": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"MyQueueE6CA6235", | ||
"Arn" | ||
] | ||
}, | ||
"Protocol": "sqs", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
} | ||
} | ||
}, | ||
"MyQueueE6CA6235": { | ||
@@ -133,2 +118,17 @@ "Type": "AWS::SQS::Queue" | ||
} | ||
}, | ||
"MyQueueMyTopic9B00631B": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Protocol": "sqs", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
}, | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"MyQueueE6CA6235", | ||
"Arn" | ||
] | ||
} | ||
} | ||
} | ||
@@ -171,17 +171,2 @@ } | ||
}, | ||
"MyTopicMyFunc853BC1D3": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"MyFunc8A243A2C", | ||
"Arn" | ||
] | ||
}, | ||
"Protocol": "lambda", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
} | ||
} | ||
}, | ||
"MyFuncServiceRole54065130": { | ||
@@ -196,3 +181,13 @@ "Type": "AWS::IAM::Role", | ||
"Principal": { | ||
"Service": { "Fn::Join": ["", ["lambda.", { Ref: "AWS::URLSuffix" }]] } | ||
"Service": { | ||
"Fn::Join": [ | ||
"", | ||
[ | ||
"lambda.", | ||
{ | ||
"Ref": "AWS::URLSuffix" | ||
} | ||
] | ||
] | ||
} | ||
} | ||
@@ -204,3 +199,14 @@ } | ||
"ManagedPolicyArns": [ | ||
{ "Fn::Join": ["", ["arn:", { "Ref": "AWS::Partition" }, ":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"]] } | ||
{ | ||
"Fn::Join": [ | ||
"", | ||
[ | ||
"arn:", | ||
{ | ||
"Ref": "AWS::Partition" | ||
}, | ||
":iam::aws:policy/service-role/AWSLambdaBasicExecutionRole" | ||
] | ||
] | ||
} | ||
] | ||
@@ -228,3 +234,3 @@ } | ||
}, | ||
"MyFuncMyTopicC77D8FAB": { | ||
"MyFuncAllowInvokeMyTopicDD0A15B8": { | ||
"Type": "AWS::Lambda::Permission", | ||
@@ -244,2 +250,17 @@ "Properties": { | ||
} | ||
}, | ||
"MyFuncMyTopic93B6FB00": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Protocol": "lambda", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
}, | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"MyFunc8A243A2C", | ||
"Arn" | ||
] | ||
} | ||
} | ||
} | ||
@@ -291,32 +312,2 @@ } | ||
}, | ||
"MyTopicMyQueueFA241964": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"MyQueueE6CA6235", | ||
"Arn" | ||
] | ||
}, | ||
"Protocol": "sqs", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
} | ||
} | ||
}, | ||
"MyTopicMyFunc853BC1D3": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"MyFunc8A243A2C", | ||
"Arn" | ||
] | ||
}, | ||
"Protocol": "lambda", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
} | ||
} | ||
}, | ||
"MyQueueE6CA6235": { | ||
@@ -360,2 +351,17 @@ "Type": "AWS::SQS::Queue" | ||
}, | ||
"MyQueueMyTopic9B00631B": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Protocol": "sqs", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
}, | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"MyQueueE6CA6235", | ||
"Arn" | ||
] | ||
} | ||
} | ||
}, | ||
"MyFuncServiceRole54065130": { | ||
@@ -370,3 +376,13 @@ "Type": "AWS::IAM::Role", | ||
"Principal": { | ||
"Service": { "Fn::Join": ["", ["lambda.", { Ref: "AWS::URLSuffix" }]] } | ||
"Service": { | ||
"Fn::Join": [ | ||
"", | ||
[ | ||
"lambda.", | ||
{ | ||
"Ref": "AWS::URLSuffix" | ||
} | ||
] | ||
] | ||
} | ||
} | ||
@@ -412,3 +428,3 @@ } | ||
}, | ||
"MyFuncMyTopicC77D8FAB": { | ||
"MyFuncAllowInvokeMyTopicDD0A15B8": { | ||
"Type": "AWS::Lambda::Permission", | ||
@@ -428,2 +444,17 @@ "Properties": { | ||
} | ||
}, | ||
"MyFuncMyTopic93B6FB00": { | ||
"Type": "AWS::SNS::Subscription", | ||
"Properties": { | ||
"Protocol": "lambda", | ||
"TopicArn": { | ||
"Ref": "MyTopic86869434" | ||
}, | ||
"Endpoint": { | ||
"Fn::GetAtt": [ | ||
"MyFunc8A243A2C", | ||
"Arn" | ||
] | ||
} | ||
} | ||
} | ||
@@ -437,3 +468,3 @@ } | ||
expect(() => topic.addSubscription(new subs.SqsSubscription(queue))) | ||
.toThrowError(/subscriber MyQueue already exists/); | ||
.toThrowError(/A subscription with id \"MyTopic\" already exists under the scope MyQueue/); | ||
}); | ||
@@ -492,2 +523,2 @@ test('with filter policy', () => { | ||
}); | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vicy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3Vicy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsZ0NBQThCO0FBQzlCLDhDQUErQztBQUMvQyx3Q0FBeUM7QUFDekMsd0NBQXlDO0FBQ3pDLHdDQUFzQztBQUN0QywrQkFBZ0M7QUFFaEMsMkNBQTJDO0FBRTNDLElBQUksS0FBWSxDQUFDO0FBQ2pCLElBQUksS0FBZ0IsQ0FBQztBQUVyQixVQUFVLENBQUMsR0FBRyxFQUFFO0lBQ2QsS0FBSyxHQUFHLElBQUksWUFBSyxFQUFFLENBQUM7SUFDcEIsS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFO1FBQ3RDLFNBQVMsRUFBRSxXQUFXO1FBQ3RCLFdBQVcsRUFBRSxhQUFhO0tBQzNCLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLGtCQUFrQixFQUFFLEdBQUcsRUFBRTtJQUM1QixLQUFLLENBQUMsZUFBZSxDQUFDLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7SUFFdkUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLGVBQWUsQ0FBQztRQUM1QixXQUFXLEVBQUU7WUFDWCxpQkFBaUIsRUFBRTtnQkFDakIsTUFBTSxFQUFFLGlCQUFpQjtnQkFDekIsWUFBWSxFQUFFO29CQUNaLGFBQWEsRUFBRSxhQUFhO29CQUM1QixXQUFXLEVBQUUsV0FBVztpQkFDekI7YUFDRjtZQUNELCtCQUErQixFQUFFO2dCQUMvQixNQUFNLEVBQUUsd0JBQXdCO2dCQUNoQyxZQUFZLEVBQUU7b0JBQ1osVUFBVSxFQUFFLHFCQUFxQjtvQkFDakMsVUFBVSxFQUFFLE9BQU87b0JBQ25CLFVBQVUsRUFBRTt3QkFDVixLQUFLLEVBQUUsaUJBQWlCO3FCQUN6QjtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDLENBQUM7QUFD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RUFBRTt3QkFDVCxJQUFJO3dCQUNKLEdBQUc7d0JBQ0gsSUFBSTt3QkFDSixHQUFHO3FCQUNKO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICdAYXdzLWNkay9hc3NlcnQvamVzdCc7XG5pbXBvcnQgbGFtYmRhID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLWxhbWJkYScpO1xuaW1wb3J0IHNucyA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1zbnMnKTtcbmltcG9ydCBzcXMgPSByZXF1aXJlKCdAYXdzLWNkay9hd3Mtc3FzJyk7XG5pbXBvcnQgeyBTdGFjayB9IGZyb20gJ0Bhd3MtY2RrL2NvcmUnO1xuaW1wb3J0IHN1YnMgPSByZXF1aXJlKCcuLi9saWInKTtcblxuLy8gdHNsaW50OmRpc2FibGU6b2JqZWN0LWxpdGVyYWwta2V5LXF1b3Rlc1xuXG5sZXQgc3RhY2s6IFN0YWNrO1xubGV0IHRvcGljOiBzbnMuVG9waWM7XG5cbmJlZm9yZUVhY2goKCkgPT4ge1xuICBzdGFjayA9IG5ldyBTdGFjaygpO1xuICB0b3BpYyA9IG5ldyBzbnMuVG9waWMoc3RhY2ssICdNeVRvcGljJywge1xuICAgIHRvcGljTmFtZTogJ3RvcGljTmFtZScsXG4gICAgZGlzcGxheU5hbWU6ICdkaXNwbGF5TmFtZSdcbiAgfSk7XG59KTtcblxudGVzdCgndXJsIHN1YnNjcmlwdGlvbicsICgpID0+IHtcbiAgdG9waWMuYWRkU3Vic2NyaXB0aW9uKG5ldyBzdWJzLlVybFN1YnNjcmlwdGlvbignaHR0cHM6Ly9mb29iYXIuY29tLycpKTtcblxuICBleHBlY3Qoc3RhY2spLnRvTWF0Y2hUZW1wbGF0ZSh7XG4gICAgXCJSZXNvdXJjZXNcIjoge1xuICAgICAgXCJNeVRvcGljODY4Njk0MzRcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OlNOUzo6VG9waWNcIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIkRpc3BsYXlOYW1lXCI6IFwiZGlzcGxheU5hbWVcIixcbiAgICAgICAgICBcIlRvcGljTmFtZVwiOiBcInRvcGljTmFtZVwiXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBcIk15VG9waWNodHRwc2Zvb2JhcmNvbURFQTkyQUI1XCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTTlM6OlN1YnNjcmlwdGlvblwiLFxuICAgICAgICBcIlByb3BlcnRpZXNcIjoge1xuICAgICAgICAgIFwiRW5kcG9pbnRcIjogXCJodHRwczovL2Zvb2Jhci5jb20vXCIsXG4gICAgICAgICAgXCJQcm90b2NvbFwiOiBcImh0dHBzXCIsXG4gICAgICAgICAgXCJUb3BpY0FyblwiOiB7XG4gICAgICAgICAgICBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9KTtcbn0pO1xuXG50ZXN0KCd1cmwgc3Vic2NyaXB0aW9uICh3aXRoIHJhdyBkZWxpdmVyeSknLCAoKSA9PiB7XG4gIHRvcGljLmFkZFN1YnNjcmlwdGlvbihuZXcgc3Vicy5VcmxTdWJzY3JpcHRpb24oJ2h0dHBzOi8vZm9vYmFyLmNvbS8nLCB7XG4gICAgcmF3TWVzc2FnZURlbGl2ZXJ5OiB0cnVlXG4gIH0pKTtcblxuICBleHBlY3Qoc3RhY2spLnRvTWF0Y2hUZW1wbGF0ZSh7XG4gICAgXCJSZXNvdXJjZXNcIjoge1xuICAgICAgXCJNeVRvcGljODY4Njk0MzRcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OlNOUzo6VG9waWNcIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIkRpc3BsYXlOYW1lXCI6IFwiZGlzcGxheU5hbWVcIixcbiAgICAgICAgICBcIlRvcGljTmFtZVwiOiBcInRvcGljTmFtZVwiXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBcIk15VG9waWNodHRwc2Zvb2JhcmNvbURFQTkyQUI1XCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTTlM6OlN1YnNjcmlwdGlvblwiLFxuICAgICAgICBcIlByb3BlcnRpZXNcIjoge1xuICAgICAgICAgIFwiRW5kcG9pbnRcIjogXCJodHRwczovL2Zvb2Jhci5jb20vXCIsXG4gICAgICAgICAgXCJQcm90b2NvbFwiOiBcImh0dHBzXCIsXG4gICAgICAgICAgXCJUb3BpY0FyblwiOiB7IFwiUmVmXCI6IFwiTXlUb3BpYzg2ODY5NDM0XCIgfSxcbiAgICAgICAgICBcIlJhd01lc3NhZ2VEZWxpdmVyeVwiOiB0cnVlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0pO1xufSk7XG5cbnRlc3QoJ3F1ZXVlIHN1YnNjcmlwdGlvbicsICgpID0+IHtcbiAgY29uc3QgcXVldWUgPSBuZXcgc3FzLlF1ZXVlKHN0YWNrLCAnTXlRdWV1ZScpO1xuXG4gIHRvcGljLmFkZFN1YnNjcmlwdGlvbihuZXcgc3Vicy5TcXNTdWJzY3JpcHRpb24ocXVldWUpKTtcblxuICBleHBlY3Qoc3RhY2spLnRvTWF0Y2hUZW1wbGF0ZSh7XG4gICAgXCJSZXNvdXJjZXNcIjoge1xuICAgIFwiTXlUb3BpYzg2ODY5NDM0XCI6IHtcbiAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U05TOjpUb3BpY1wiLFxuICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgIFwiRGlzcGxheU5hbWVcIjogXCJkaXNwbGF5TmFtZVwiLFxuICAgICAgXCJUb3BpY05hbWVcIjogXCJ0b3BpY05hbWVcIlxuICAgICAgfVxuICAgIH0sXG4gICAgXCJNeVRvcGljTXlRdWV1ZUZBMjQxOTY0XCI6IHtcbiAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U05TOjpTdWJzY3JpcHRpb25cIixcbiAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICBcIkVuZHBvaW50XCI6IHtcbiAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgXCJNeVF1ZXVlRTZDQTYyMzVcIixcbiAgICAgICAgXCJBcm5cIlxuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgXCJQcm90b2NvbFwiOiBcInNxc1wiLFxuICAgICAgXCJUb3BpY0FyblwiOiB7XG4gICAgICAgIFwiUmVmXCI6IFwiTXlUb3BpYzg2ODY5NDM0XCJcbiAgICAgIH1cbiAgICAgIH1cbiAgICB9LFxuICAgIFwiTXlRdWV1ZUU2Q0E2MjM1XCI6IHtcbiAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U1FTOjpRdWV1ZVwiXG4gICAgfSxcbiAgICBcIk15UXVldWVQb2xpY3k2QkJFRERBQ1wiOiB7XG4gICAgICBcIlR5cGVcIjogXCJBV1M6OlNRUzo6UXVldWVQb2xpY3lcIixcbiAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICBcIlBvbGljeURvY3VtZW50XCI6IHtcbiAgICAgICAgXCJTdGF0ZW1lbnRcIjogW1xuICAgICAgICB7XG4gICAgICAgICAgXCJBY3Rpb25cIjogXCJzcXM6U2VuZE1lc3NhZ2VcIixcbiAgICAgICAgICBcIkNvbmRpdGlvblwiOiB7XG4gICAgICAgICAgXCJBcm5FcXVhbHNcIjoge1xuICAgICAgICAgICAgXCJhd3M6U291cmNlQXJuXCI6IHtcbiAgICAgICAgICAgIFwiUmVmXCI6IFwiTXlUb3BpYzg2ODY5NDM0XCJcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIkVmZmVjdFwiOiBcIkFsbG93XCIsXG4gICAgICAgICAgXCJQcmluY2lwYWxcIjoge1xuICAgICAgICAgIFwiU2VydmljZVwiOiBcInNucy5hbWF6b25hd3MuY29tXCJcbiAgICAgICAgICB9LFxuICAgICAgICAgIFwiUmVzb3VyY2VcIjoge1xuICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICBcIk15UXVldWVFNkNBNjIzNVwiLFxuICAgICAgICAgICAgXCJBcm5cIlxuICAgICAgICAgIF1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXSxcbiAgICAgICAgXCJWZXJzaW9uXCI6IFwiMjAxMi0xMC0xN1wiXG4gICAgICB9LFxuICAgICAgXCJRdWV1ZXNcIjogW1xuICAgICAgICB7XG4gICAgICAgIFwiUmVmXCI6IFwiTXlRdWV1ZUU2Q0E2MjM1XCJcbiAgICAgICAgfVxuICAgICAgXVxuICAgICAgfVxuICAgIH1cbiAgICB9XG4gIH0pO1xufSk7XG5cbnRlc3QoJ3F1ZXVlIHN1YnNjcmlwdGlvbiAod2l0aCByYXcgZGVsaXZlcnkpJywgKCkgPT4ge1xuICBjb25zdCBxdWV1ZSA9IG5ldyBzcXMuUXVldWUoc3RhY2ssICdNeVF1ZXVlJyk7XG5cbiAgdG9waWMuYWRkU3Vic2NyaXB0aW9uKG5ldyBzdWJzLlNxc1N1YnNjcmlwdGlvbihxdWV1ZSwgeyByYXdNZXNzYWdlRGVsaXZlcnk6IHRydWUgfSkpO1xuXG4gIGV4cGVjdChzdGFjaykudG9IYXZlUmVzb3VyY2UoJ0FXUzo6U05TOjpTdWJzY3JpcHRpb24nLCB7XG4gICAgXCJFbmRwb2ludFwiOiB7XG4gICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICBcIk15UXVldWVFNkNBNjIzNVwiLFxuICAgICAgICBcIkFyblwiXG4gICAgICBdXG4gICAgfSxcbiAgICBcIlByb3RvY29sXCI6IFwic3FzXCIsXG4gICAgXCJUb3BpY0FyblwiOiB7XG4gICAgICBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiXG4gICAgfSxcbiAgICBcIlJhd01lc3NhZ2VEZWxpdmVyeVwiOiB0cnVlXG4gIH0pO1xufSk7XG5cbnRlc3QoJ2xhbWJkYSBzdWJzY3JpcHRpb24nLCAoKSA9PiB7XG4gIGNvbnN0IGZjdGlvbiA9IG5ldyBsYW1iZGEuRnVuY3Rpb24oc3RhY2ssICdNeUZ1bmMnLCB7XG4gICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzhfMTAsXG4gICAgaGFuZGxlcjogJ2luZGV4LmhhbmRsZXInLFxuICAgIGNvZGU6IGxhbWJkYS5Db2RlLmlubGluZSgnZXhwb3J0cy5oYW5kbGVyID0gZnVuY3Rpb24oZSwgYywgY2IpIHsgcmV0dXJuIGNiKCkgfScpXG4gIH0pO1xuXG4gIHRvcGljLmFkZFN1YnNjcmlwdGlvbihuZXcgc3Vicy5MYW1iZGFTdWJzY3JpcHRpb24oZmN0aW9uKSk7XG5cbiAgZXhwZWN0KHN0YWNrKS50b01hdGNoVGVtcGxhdGUoe1xuICAgIFwiUmVzb3VyY2VzXCI6IHtcbiAgICBcIk15VG9waWM4Njg2OTQzNFwiOiB7XG4gICAgICBcIlR5cGVcIjogXCJBV1M6OlNOUzo6VG9waWNcIixcbiAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICBcIkRpc3BsYXlOYW1lXCI6IFwiZGlzcGxheU5hbWVcIixcbiAgICAgIFwiVG9waWNOYW1lXCI6IFwidG9waWNOYW1lXCJcbiAgICAgIH1cbiAgICB9LFxuICAgIFwiTXlUb3BpY015RnVuYzg1M0JDMUQzXCI6IHtcbiAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U05TOjpTdWJzY3JpcHRpb25cIixcbiAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICBcIkVuZHBvaW50XCI6IHtcbiAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgXCJNeUZ1bmM4QTI0M0EyQ1wiLFxuICAgICAgICBcIkFyblwiXG4gICAgICAgIF1cbiAgICAgIH0sXG4gICAgICBcIlByb3RvY29sXCI6IFwibGFtYmRhXCIsXG4gICAgICBcIlRvcGljQXJuXCI6IHtcbiAgICAgICAgXCJSZWZcIjogXCJNeVRvcGljODY4Njk0MzRcIlxuICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgXCJNeUZ1bmNTZXJ2aWNlUm9sZTU0MDY1MTMwXCI6IHtcbiAgICAgIFwiVHlwZVwiOiBcIkFXUzo6SUFNOjpSb2xlXCIsXG4gICAgICBcIlByb3BlcnRpZXNcIjoge1xuICAgICAgXCJBc3N1bWVSb2xlUG9saWN5RG9jdW1lbnRcIjoge1xuICAgICAgICBcIlN0YXRlbWVudFwiOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBcIkFjdGlvblwiOiBcInN0czpBc3N1bWVSb2xlXCIsXG4gICAgICAgICAgXCJFZmZlY3RcIjogXCJBbGxvd1wiLFxuICAgICAgICAgIFwiUHJpbmNpcGFsXCI6IHtcbiAgICAgICAgICBcIlNlcnZpY2VcIjogeyBcIkZuOjpKb2luXCI6IFtcIlwiLCBbXCJsYW1iZGEuXCIsIHsgUmVmOiBcIkFXUzo6VVJMU3VmZml4XCIgfV1dIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXSxcbiAgICAgICAgXCJWZXJzaW9uXCI6IFwiMjAxMi0xMC0xN1wiXG4gICAgICB9LFxuICAgICAgXCJNYW5hZ2VkUG9saWN5QXJuc1wiOiBbXG4gICAgICAgIHsgXCJGbjo6Sm9pblwiOiBbXCJcIiwgW1wiYXJuOlwiLCB7XCJSZWZcIjogXCJBV1M6OlBhcnRpdGlvblwifSwgXCI6aWFtOjphd3M6cG9saWN5L3NlcnZpY2Utcm9sZS9BV1NMYW1iZGFCYXNpY0V4ZWN1dGlvblJvbGVcIl1dfVxuICAgICAgXVxuICAgICAgfVxuICAgIH0sXG4gICAgXCJNeUZ1bmM4QTI0M0EyQ1wiOiB7XG4gICAgICBcIlR5cGVcIjogXCJBV1M6OkxhbWJkYTo6RnVuY3Rpb25cIixcbiAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICBcIkNvZGVcIjoge1xuICAgICAgICBcIlppcEZpbGVcIjogXCJleHBvcnRzLmhhbmRsZXIgPSBmdW5jdGlvbihlLCBjLCBjYikgeyByZXR1cm4gY2IoKSB9XCJcbiAgICAgIH0sXG4gICAgICBcIkhhbmRsZXJcIjogXCJpbmRleC5oYW5kbGVyXCIsXG4gICAgICBcIlJvbGVcIjoge1xuICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICBcIk15RnVuY1NlcnZpY2VSb2xlNTQwNjUxMzBcIixcbiAgICAgICAgXCJBcm5cIlxuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgXCJSdW50aW1lXCI6IFwibm9kZWpzOC4xMFwiXG4gICAgICB9LFxuICAgICAgXCJEZXBlbmRzT25cIjogW1xuICAgICAgXCJNeUZ1bmNTZXJ2aWNlUm9sZTU0MDY1MTMwXCJcbiAgICAgIF1cbiAgICB9LFxuICAgIFwiTXlGdW5jTXlUb3BpY0M3N0Q4RkFCXCI6IHtcbiAgICAgIFwiVHlwZVwiOiBcIkFXUzo6TGFtYmRhOjpQZXJtaXNzaW9uXCIsXG4gICAgICBcIlByb3BlcnRpZXNcIjoge1xuICAgICAgXCJBY3Rpb25cIjogXCJsYW1iZGE6SW52b2tlRnVuY3Rpb25cIixcbiAgICAgIFwiRnVuY3Rpb25OYW1lXCI6IHtcbiAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgICBcIk15RnVuYzhBMjQzQTJDXCIsXG4gICAgICAgICAgXCJBcm5cIlxuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgXCJQcmluY2lwYWxcIjogXCJzbnMuYW1hem9uYXdzLmNvbVwiLFxuICAgICAgXCJTb3VyY2VBcm5cIjoge1xuICAgICAgICBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiXG4gICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIH1cbiAgfSk7XG59KTtcblxudGVzdCgnZW1haWwgc3Vic2NyaXB0aW9uJywgKCkgPT4ge1xuICB0b3BpYy5hZGRTdWJzY3JpcHRpb24obmV3IHN1YnMuRW1haWxTdWJzY3JpcHRpb24oJ2Zvb0BiYXIuY29tJykpO1xuXG4gIGV4cGVjdChzdGFjaykudG9NYXRjaFRlbXBsYXRlKHtcbiAgICBcIlJlc291cmNlc1wiOiB7XG4gICAgICBcIk15VG9waWM4Njg2OTQzNFwiOiB7XG4gICAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U05TOjpUb3BpY1wiLFxuICAgICAgICBcIlByb3BlcnRpZXNcIjoge1xuICAgICAgICAgIFwiRGlzcGxheU5hbWVcIjogXCJkaXNwbGF5TmFtZVwiLFxuICAgICAgICAgIFwiVG9waWNOYW1lXCI6IFwidG9waWNOYW1lXCJcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFwiTXlUb3BpY2Zvb2JhcmNvbUEzNDRDQURBXCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTTlM6OlN1YnNjcmlwdGlvblwiLFxuICAgICAgICBcIlByb3BlcnRpZXNcIjoge1xuICAgICAgICAgIFwiRW5kcG9pbnRcIjogXCJmb29AYmFyLmNvbVwiLFxuICAgICAgICAgIFwiUHJvdG9jb2xcIjogXCJlbWFpbFwiLFxuICAgICAgICAgIFwiVG9waWNBcm5cIjoge1xuICAgICAgICAgICAgXCJSZWZcIjogXCJNeVRvcGljODY4Njk0MzRcIlxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSk7XG59KTtcblxudGVzdCgnbXVsdGlwbGUgc3Vic2NyaXB0aW9ucycsICgpID0+IHtcbiAgY29uc3QgcXVldWUgPSBuZXcgc3FzLlF1ZXVlKHN0YWNrLCAnTXlRdWV1ZScpO1xuICBjb25zdCBmdW5jID0gbmV3IGxhbWJkYS5GdW5jdGlvbihzdGFjaywgJ015RnVuYycsIHtcbiAgICBydW50aW1lOiBsYW1iZGEuUnVudGltZS5OT0RFSlNfOF8xMCxcbiAgICBoYW5kbGVyOiAnaW5kZXguaGFuZGxlcicsXG4gICAgY29kZTogbGFtYmRhLkNvZGUuaW5saW5lKCdleHBvcnRzLmhhbmRsZXIgPSBmdW5jdGlvbihlLCBjLCBjYikgeyByZXR1cm4gY2IoKSB9JylcbiAgfSk7XG5cbiAgdG9waWMuYWRkU3Vic2NyaXB0aW9uKG5ldyBzdWJzLlNxc1N1YnNjcmlwdGlvbihxdWV1ZSkpO1xuICB0b3BpYy5hZGRTdWJzY3JpcHRpb24obmV3IHN1YnMuTGFtYmRhU3Vic2NyaXB0aW9uKGZ1bmMpKTtcblxuICBleHBlY3Qoc3RhY2spLnRvTWF0Y2hUZW1wbGF0ZSh7XG4gICAgXCJSZXNvdXJjZXNcIjoge1xuICAgICAgXCJNeVRvcGljODY4Njk0MzRcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OlNOUzo6VG9waWNcIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIkRpc3BsYXlOYW1lXCI6IFwiZGlzcGxheU5hbWVcIixcbiAgICAgICAgICBcIlRvcGljTmFtZVwiOiBcInRvcGljTmFtZVwiXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBcIk15VG9waWNNeVF1ZXVlRkEyNDE5NjRcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OlNOUzo6U3Vic2NyaXB0aW9uXCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJFbmRwb2ludFwiOiB7XG4gICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICBcIk15UXVldWVFNkNBNjIzNVwiLFxuICAgICAgICAgICAgICBcIkFyblwiXG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIlByb3RvY29sXCI6IFwic3FzXCIsXG4gICAgICAgICAgXCJUb3BpY0FyblwiOiB7XG4gICAgICAgICAgICBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgXCJNeVRvcGljTXlGdW5jODUzQkMxRDNcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OlNOUzo6U3Vic2NyaXB0aW9uXCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJFbmRwb2ludFwiOiB7XG4gICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICBcIk15RnVuYzhBMjQzQTJDXCIsXG4gICAgICAgICAgICAgIFwiQXJuXCJcbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9LFxuICAgICAgICAgIFwiUHJvdG9jb2xcIjogXCJsYW1iZGFcIixcbiAgICAgICAgICBcIlRvcGljQXJuXCI6IHtcbiAgICAgICAgICAgIFwiUmVmXCI6IFwiTXlUb3BpYzg2ODY5NDM0XCJcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBcIk15UXVldWVFNkNBNjIzNVwiOiB7XG4gICAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U1FTOjpRdWV1ZVwiXG4gICAgICB9LFxuICAgICAgXCJNeVF1ZXVlUG9saWN5NkJCRUREQUNcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OlNRUzo6UXVldWVQb2xpY3lcIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIlBvbGljeURvY3VtZW50XCI6IHtcbiAgICAgICAgICAgIFwiU3RhdGVtZW50XCI6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIFwiQWN0aW9uXCI6IFwic3FzOlNlbmRNZXNzYWdlXCIsXG4gICAgICAgICAgICAgICAgXCJDb25kaXRpb25cIjoge1xuICAgICAgICAgICAgICAgICAgXCJBcm5FcXVhbHNcIjoge1xuICAgICAgICAgICAgICAgICAgICBcImF3czpTb3VyY2VBcm5cIjoge1xuICAgICAgICAgICAgICAgICAgICAgIFwiUmVmXCI6IFwiTXlUb3BpYzg2ODY5NDM0XCJcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgXCJFZmZlY3RcIjogXCJBbGxvd1wiLFxuICAgICAgICAgICAgICAgIFwiUHJpbmNpcGFsXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwiU2VydmljZVwiOiBcInNucy5hbWF6b25hd3MuY29tXCJcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFwiUmVzb3VyY2VcIjoge1xuICAgICAgICAgICAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgICAgICAgICAgICAgXCJNeVF1ZXVlRTZDQTYyMzVcIixcbiAgICAgICAgICAgICAgICAgICAgXCJBcm5cIlxuICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFwiVmVyc2lvblwiOiBcIjIwMTItMTAtMTdcIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJRdWV1ZXNcIjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBcIlJlZlwiOiBcIk15UXVldWVFNkNBNjIzNVwiXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgXCJNeUZ1bmNTZXJ2aWNlUm9sZTU0MDY1MTMwXCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpJQU06OlJvbGVcIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIkFzc3VtZVJvbGVQb2xpY3lEb2N1bWVudFwiOiB7XG4gICAgICAgICAgICBcIlN0YXRlbWVudFwiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcIkFjdGlvblwiOiBcInN0czpBc3N1bWVSb2xlXCIsXG4gICAgICAgICAgICAgICAgXCJFZmZlY3RcIjogXCJBbGxvd1wiLFxuICAgICAgICAgICAgICAgIFwiUHJpbmNpcGFsXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwiU2VydmljZVwiOiB7IFwiRm46OkpvaW5cIjogW1wiXCIsIFtcImxhbWJkYS5cIiwgeyBSZWY6IFwiQVdTOjpVUkxTdWZmaXhcIiB9XV0gfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFwiVmVyc2lvblwiOiBcIjIwMTItMTAtMTdcIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJNYW5hZ2VkUG9saWN5QXJuc1wiOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiRm46OkpvaW5cIjogW1xuICAgICAgICAgICAgICAgIFwiXCIsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgXCJhcm46XCIsXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIFwiUmVmXCI6IFwiQVdTOjpQYXJ0aXRpb25cIlxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIFwiOmlhbTo6YXdzOnBvbGljeS9zZXJ2aWNlLXJvbGUvQVdTTGFtYmRhQmFzaWNFeGVjdXRpb25Sb2xlXCJcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBcIk15RnVuYzhBMjQzQTJDXCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpMYW1iZGE6OkZ1bmN0aW9uXCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJDb2RlXCI6IHtcbiAgICAgICAgICAgIFwiWmlwRmlsZVwiOiBcImV4cG9ydHMuaGFuZGxlciA9IGZ1bmN0aW9uKGUsIGMsIGNiKSB7IHJldHVybiBjYigpIH1cIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJIYW5kbGVyXCI6IFwiaW5kZXguaGFuZGxlclwiLFxuICAgICAgICAgIFwiUm9sZVwiOiB7XG4gICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICBcIk15RnVuY1NlcnZpY2VSb2xlNTQwNjUxMzBcIixcbiAgICAgICAgICAgICAgXCJBcm5cIlxuICAgICAgICAgICAgXVxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJSdW50aW1lXCI6IFwibm9kZWpzOC4xMFwiXG4gICAgICAgIH0sXG4gICAgICAgIFwiRGVwZW5kc09uXCI6IFtcbiAgICAgICAgICBcIk15RnVuY1NlcnZpY2VSb2xlNTQwNjUxMzBcIlxuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgXCJNeUZ1bmNNeVRvcGljQzc3RDhGQUJcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OkxhbWJkYTo6UGVybWlzc2lvblwiLFxuICAgICAgICBcIlByb3BlcnRpZXNcIjoge1xuICAgICAgICAgIFwiQWN0aW9uXCI6IFwibGFtYmRhOkludm9rZUZ1bmN0aW9uXCIsXG4gICAgICAgICAgXCJGdW5jdGlvbk5hbWVcIjoge1xuICAgICAgICAgICAgXCJGbjo6R2V0QXR0XCI6IFtcbiAgICAgICAgICAgICAgXCJNeUZ1bmM4QTI0M0EyQ1wiLFxuICAgICAgICAgICAgICBcIkFyblwiXG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIlByaW5jaXBhbFwiOiBcInNucy5hbWF6b25hd3MuY29tXCIsXG4gICAgICAgICAgXCJTb3VyY2VBcm5cIjoge1xuICAgICAgICAgICAgXCJSZWZcIjogXCJNeVRvcGljODY4Njk0MzRcIlxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSk7XG59KTtcblxudGVzdCgndGhyb3dzIHdpdGggbXV0bGlwbGUgc3Vic2NyaXB0aW9ucyBvZiB0aGUgc2FtZSBzdWJzY3JpYmVyJywgKCkgPT4ge1xuICBjb25zdCBxdWV1ZSA9IG5ldyBzcXMuUXVldWUoc3RhY2ssICdNeVF1ZXVlJyk7XG5cbiAgdG9waWMuYWRkU3Vic2NyaXB0aW9uKG5ldyBzdWJzLlNxc1N1YnNjcmlwdGlvbihxdWV1ZSkpO1xuXG4gIGV4cGVjdCgoKSA9PiB0b3BpYy5hZGRTdWJzY3JpcHRpb24obmV3IHN1YnMuU3FzU3Vic2NyaXB0aW9uKHF1ZXVlKSkpXG4gICAgLnRvVGhyb3dFcnJvcigvc3Vic2NyaWJlciBNeVF1ZXVlIGFscmVhZHkgZXhpc3RzLyk7XG59KTtcblxudGVzdCgnd2l0aCBmaWx0ZXIgcG9saWN5JywgKCkgPT4ge1xuICBjb25zdCBmY3Rpb24gPSBuZXcgbGFtYmRhLkZ1bmN0aW9uKHN0YWNrLCAnTXlGdW5jJywge1xuICAgIHJ1bnRpbWU6IGxhbWJkYS5SdW50aW1lLk5PREVKU184XzEwLFxuICAgIGhhbmRsZXI6ICdpbmRleC5oYW5kbGVyJyxcbiAgICBjb2RlOiBsYW1iZGEuQ29kZS5pbmxpbmUoJ2V4cG9ydHMuaGFuZGxlciA9IGZ1bmN0aW9uKGUsIGMsIGNiKSB7IHJldHVybiBjYigpIH0nKVxuICB9KTtcblxuICB0b3BpYy5hZGRTdWJzY3JpcHRpb24obmV3IHN1YnMuTGFtYmRhU3Vic2NyaXB0aW9uKGZjdGlvbiwge1xuICAgIGZpbHRlclBvbGljeToge1xuICAgICAgY29sb3I6IHNucy5TdWJzY3JpcHRpb25GaWx0ZXIuc3RyaW5nRmlsdGVyKHtcbiAgICAgICAgd2hpdGVsaXN0OiBbJ3JlZCddLFxuICAgICAgICBtYXRjaFByZWZpeGVzOiBbJ2JsJywgJ3llJ10sXG4gICAgICB9KSxcbiAgICAgIHNpemU6IHNucy5TdWJzY3JpcHRpb25GaWx0ZXIuc3RyaW5nRmlsdGVyKHtcbiAgICAgICAgYmxhY2tsaXN0OiBbJ3NtYWxsJywgJ21lZGl1bSddLFxuICAgICAgfSksXG4gICAgICBwcmljZTogc25zLlN1YnNjcmlwdGlvbkZpbHRlci5udW1lcmljRmlsdGVyKHtcbiAgICAgICAgYmV0d2VlbjogeyBzdGFydDogMTAwLCBzdG9wOiAyMDAgfVxuICAgICAgfSlcbiAgICB9XG4gIH0pKTtcblxuICBleHBlY3Qoc3RhY2spLnRvSGF2ZVJlc291cmNlKCdBV1M6OlNOUzo6U3Vic2NyaXB0aW9uJywge1xuICAgIFwiRmlsdGVyUG9saWN5XCI6IHtcbiAgICAgIFwiY29sb3JcIjogW1xuICAgICAgICBcInJlZFwiLFxuICAgICAgICB7XG4gICAgICAgICAgXCJwcmVmaXhcIjogXCJibFwiXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBcInByZWZpeFwiOiBcInllXCJcbiAgICAgICAgfVxuICAgICAgXSxcbiAgICAgIFwic2l6ZVwiOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBcImFueXRoaW5nLWJ1dFwiOiBbXG4gICAgICAgICAgICBcInNtYWxsXCIsXG4gICAgICAgICAgICBcIm1lZGl1bVwiXG4gICAgICAgICAgXVxuICAgICAgICB9XG4gICAgICBdLFxuICAgICAgXCJwcmljZVwiOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBcIm51bWVyaWNcIjogW1xuICAgICAgICAgICAgXCI+PVwiLFxuICAgICAgICAgICAgMTAwLFxuICAgICAgICAgICAgXCI8PVwiLFxuICAgICAgICAgICAgMjAwXG4gICAgICAgICAgXVxuICAgICAgICB9XG4gICAgICBdXG4gICAgfVxuICB9KTtcbn0pO1xuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Vicy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3Vicy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsZ0NBQThCO0FBQzlCLDhDQUErQztBQUMvQyx3Q0FBeUM7QUFDekMsd0NBQXlDO0FBQ3pDLHdDQUFzQztBQUN0QywrQkFBZ0M7QUFFaEMsMkNBQTJDO0FBRTNDLElBQUksS0FBWSxDQUFDO0FBQ2pCLElBQUksS0FBZ0IsQ0FBQztBQUVyQixVQUFVLENBQUMsR0FBRyxFQUFFO0lBQ2QsS0FBSyxHQUFHLElBQUksWUFBSyxFQUFFLENBQUM7SUFDcEIsS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFO1FBQ3RDLFNBQVMsRUFBRSxXQUFXO1FBQ3RCLFdBQVcsRUFBRSxhQUFhO0tBQzNCLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLGtCQUFrQixFQUFFLEdBQUcsRUFBRTtJQUM1QixLQUFLLENBQUMsZUFBZSxDQUFDLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7SUFFdkUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLGVBQWUsQ0FBQztRQUM1QixXQUFXLEVBQUU7WUFDWCxpQkFBaUIsRUFBRTtnQkFDakIsTUFBTSxFQUFFLGlCQUFpQjtnQkFDekIsWUFBWSxFQUFFO29CQUNaLGFBQWEsRUFBRSxhQUFhO29CQUM1QixXQUFXLEVBQUUsV0FBVztpQkFDekI7YUFDRjtZQUNELCtCQUErQixFQUFFO2dCQUMvQixNQUFNLEVBQUUsd0JBQXdCO2dCQUNoQyxZQUFZLEVBQUU7b0JBQ1osVUFBVSxFQUFFLHFCQUFxQjtvQkFDakMsVUFBVSxFQUFFLE9BQU87b0JBQ25CLFVBQVUsRUFBRTt3QkFDVixLQUFLLEVBQUUsaUJBQWlCO3FCQUN6QjtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyxzQ0FBc0MsRUFBRSxHQUFHLEVBQUU7SUFDaEQsS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMscUJBQXFCLEVBQUU7UUFDcEUsa0JBQWtCLEVBQUUsSUFBSTtLQUN6QixDQUFDLENBQUMsQ0FBQztJQUVKLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxlQUFlLENBQUM7UUFDNUIsV0FBVyxFQUFFO1lBQ1gsaUJBQWlCLEVBQUU7Z0JBQ2pCLE1BQU0sRUFBRSxpQkFBaUI7Z0JBQ3pCLFlBQVksRUFBRTtvQkFDWixhQUFhLEVBQUUsYUFBYTtvQkFDNUIsV0FBVyxFQUFFLFdBQVc7aUJBQ3pCO2FBQ0Y7WUFDRCwrQkFBK0IsRUFBRTtnQkFDL0IsTUFBTSxFQUFFLHdCQUF3QjtnQkFDaEMsWUFBWSxFQUFFO29CQUNaLFVBQVUsRUFBRSxxQkFBcUI7b0JBQ2pDLFVBQVUsRUFBRSxPQUFPO29CQUNuQixVQUFVLEVBQUUsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUU7b0JBQ3hDLG9CQUFvQixFQUFFLElBQUk7aUJBQzNCO2FBQ0Y7U0FDRjtLQUNGLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEdBQUcsRUFBRTtJQUM5QixNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBRTlDLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFFdkQsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLGVBQWUsQ0FBQztRQUM1QixXQUFXLEVBQUU7WUFDWCxpQkFBaUIsRUFBRTtnQkFDakIsTUFBTSxFQUFFLGlCQUFpQjtnQkFDekIsWUFBWSxFQUFFO29CQUNaLGFBQWEsRUFBRSxhQUFhO29CQUM1QixXQUFXLEVBQUUsV0FBVztpQkFDekI7YUFDRjtZQUNELGlCQUFpQixFQUFFO2dCQUNqQixNQUFNLEVBQUUsaUJBQWlCO2FBQzFCO1lBQ0QsdUJBQXVCLEVBQUU7Z0JBQ3ZCLE1BQU0sRUFBRSx1QkFBdUI7Z0JBQy9CLFlBQVksRUFBRTtvQkFDWixnQkFBZ0IsRUFBRTt3QkFDaEIsV0FBVyxFQUFFOzRCQUNYO2dDQUNFLFFBQVEsRUFBRSxpQkFBaUI7Z0NBQzNCLFdBQVcsRUFBRTtvQ0FDWCxXQUFXLEVBQUU7d0NBQ1gsZUFBZSxFQUFFOzRDQUNmLEtBQUssRUFBRSxpQkFBaUI7eUNBQ3pCO3FDQUNGO2lDQUNGO2dDQUNELFFBQVEsRUFBRSxPQUFPO2dDQUNqQixXQUFXLEVBQUU7b0NBQ1gsU0FBUyxFQUFFLG1CQUFtQjtpQ0FDL0I7Z0NBQ0QsVUFBVSxFQUFFO29DQUNWLFlBQVksRUFBRTt3Q0FDWixpQkFBaUI7d0NBQ2pCLEtBQUs7cUNBQ047aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7d0JBQ0QsU0FBUyxFQUFFLFlBQVk7cUJBQ3hCO29CQUNELFFBQVEsRUFBRTt3QkFDUjs0QkFDRSxLQUFLLEVBQUUsaUJBQWlCO3lCQUN6QjtxQkFDRjtpQkFDRjthQUNGO1lBQ0Qsd0JBQXdCLEVBQUU7Z0JBQ3hCLE1BQU0sRUFBRSx3QkFBd0I7Z0JBQ2hDLFlBQVksRUFBRTtvQkFDWixVQUFVLEVBQUUsS0FBSztvQkFDakIsVUFBVSxFQUFFO3dCQUNWLEtBQUssRUFBRSxpQkFBaUI7cUJBQ3pCO29CQUNELFVBQVUsRUFBRTt3QkFDVixZQUFZLEVBQUU7NEJBQ1osaUJBQWlCOzRCQUNqQixLQUFLO3lCQUNOO3FCQUNGO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLHdDQUF3QyxFQUFFLEdBQUcsRUFBRTtJQUNsRCxNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBRTlDLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztJQUVyRixNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLHdCQUF3QixFQUFFO1FBQ3JELFVBQVUsRUFBRTtZQUNWLFlBQVksRUFBRTtnQkFDWixpQkFBaUI7Z0JBQ2pCLEtBQUs7YUFDTjtTQUNGO1FBQ0QsVUFBVSxFQUFFLEtBQUs7UUFDakIsVUFBVSxFQUFFO1lBQ1YsS0FBSyxFQUFFLGlCQUFpQjtTQUN6QjtRQUNELG9CQUFvQixFQUFFLElBQUk7S0FDM0IsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMscUJBQXFCLEVBQUUsR0FBRyxFQUFFO0lBQy9CLE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFO1FBQ2xELE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVc7UUFDbkMsT0FBTyxFQUFFLGVBQWU7UUFDeEIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLHNEQUFzRCxDQUFDO0tBQ2pGLENBQUMsQ0FBQztJQUVILEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUUzRCxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsZUFBZSxDQUFDO1FBQzVCLFdBQVcsRUFBRTtZQUNYLGlCQUFpQixFQUFFO2dCQUNqQixNQUFNLEVBQUUsaUJBQWlCO2dCQUN6QixZQUFZLEVBQUU7b0JBQ1osYUFBYSxFQUFFLGFBQWE7b0JBQzVCLFdBQVcsRUFBRSxXQUFXO2lCQUN6QjthQUNGO1lBQ0QsMkJBQTJCLEVBQUU7Z0JBQzNCLE1BQU0sRUFBRSxnQkFBZ0I7Z0JBQ3hCLFlBQVksRUFBRTtvQkFDWiwwQkFBMEIsRUFBRTt3QkFDMUIsV0FBVyxFQUFFOzRCQUNYO2dDQUNFLFFBQVEsRUFBRSxnQkFBZ0I7Z0NBQzFCLFFBQVEsRUFBRSxPQUFPO2dDQUNqQixXQUFXLEVBQUU7b0NBQ1gsU0FBUyxFQUFFO3dDQUNULFVBQVUsRUFBRTs0Q0FDVixFQUFFOzRDQUNGO2dEQUNFLFNBQVM7Z0RBQ1Q7b0RBQ0UsS0FBSyxFQUFFLGdCQUFnQjtpREFDeEI7NkNBQ0Y7eUNBQ0Y7cUNBQ0Y7aUNBQ0Y7NkJBQ0Y7eUJBQ0Y7d0JBQ0QsU0FBUyxFQUFFLFlBQVk7cUJBQ3hCO29CQUNELG1CQUFtQixFQUFFO3dCQUNuQjs0QkFDRSxVQUFVLEVBQUU7Z0NBQ1YsRUFBRTtnQ0FDRjtvQ0FDRSxNQUFNO29DQUNOO3dDQUNFLEtBQUssRUFBRSxnQkFBZ0I7cUNBQ3hCO29DQUNELDJEQUEyRDtpQ0FDNUQ7NkJBQ0Y7eUJBQ0Y7cUJBQ0Y7aUJBQ0Y7YUFDRjtZQUNELGdCQUFnQixFQUFFO2dCQUNoQixNQUFNLEVBQUUsdUJBQXVCO2dCQUMvQixZQUFZLEVBQUU7b0JBQ1osTUFBTSxFQUFFO3dCQUNOLFNBQVMsRUFBRSxzREFBc0Q7cUJBQ2xFO29CQUNELFNBQVMsRUFBRSxlQUFlO29CQUMxQixNQUFNLEVBQUU7d0JBQ04sWUFBWSxFQUFFOzRCQUNaLDJCQUEyQjs0QkFDM0IsS0FBSzt5QkFDTjtxQkFDRjtvQkFDRCxTQUFTLEVBQUUsWUFBWTtpQkFDeEI7Z0JBQ0QsV0FBVyxFQUFFO29CQUNYLDJCQUEyQjtpQkFDNUI7YUFDRjtZQUNELGtDQUFrQyxFQUFFO2dCQUNsQyxNQUFNLEVBQUUseUJBQXlCO2dCQUNqQyxZQUFZLEVBQUU7b0JBQ1osUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsY0FBYyxFQUFFO3dCQUNkLFlBQVksRUFBRTs0QkFDWixnQkFBZ0I7NEJBQ2hCLEtBQUs7eUJBQ047cUJBQ0Y7b0JBQ0QsV0FBVyxFQUFFLG1CQUFtQjtvQkFDaEMsV0FBVyxFQUFFO3dCQUNYLEtBQUssRUFBRSxpQkFBaUI7cUJBQ3pCO2lCQUNGO2FBQ0Y7WUFDRCx1QkFBdUIsRUFBRTtnQkFDdkIsTUFBTSxFQUFFLHdCQUF3QjtnQkFDaEMsWUFBWSxFQUFFO29CQUNaLFVBQVUsRUFBRSxRQUFRO29CQUNwQixVQUFVLEVBQUU7d0JBQ1YsS0FBSyxFQUFFLGlCQUFpQjtxQkFDekI7b0JBQ0QsVUFBVSxFQUFFO3dCQUNWLFlBQVksRUFBRTs0QkFDWixnQkFBZ0I7NEJBQ2hCLEtBQUs7eUJBQ047cUJBQ0Y7aUJBQ0Y7YUFDRjtTQUNGO0tBQ0YsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFO0lBQzlCLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUVqRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsZUFBZSxDQUFDO1FBQzVCLFdBQVcsRUFBRTtZQUNYLGlCQUFpQixFQUFFO2dCQUNqQixNQUFNLEVBQUUsaUJBQWlCO2dCQUN6QixZQUFZLEVBQUU7b0JBQ1osYUFBYSxFQUFFLGFBQWE7b0JBQzVCLFdBQVcsRUFBRSxXQUFXO2lCQUN6QjthQUNGO1lBQ0QsMEJBQTBCLEVBQUU7Z0JBQzFCLE1BQU0sRUFBRSx3QkFBd0I7Z0JBQ2hDLFlBQVksRUFBRTtvQkFDWixVQUFVLEVBQUUsYUFBYTtvQkFDekIsVUFBVSxFQUFFLE9BQU87b0JBQ25CLFVBQVUsRUFBRTt3QkFDVixLQUFLLEVBQUUsaUJBQWlCO3FCQUN6QjtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQztBQUVILElBQUksQ0FBQyx3QkFBd0IsRUFBRSxHQUFHLEVBQUU7SUFDbEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQztJQUM5QyxNQUFNLElBQUksR0FBRyxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRTtRQUNoRCxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXO1FBQ25DLE9BQU8sRUFBRSxlQUFlO1FBQ3hCLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxzREFBc0QsQ0FBQztLQUNqRixDQUFDLENBQUM7SUFFSCxLQUFLLENBQUMsZUFBZSxDQUFDLElBQUksSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3ZELEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUV6RCxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsZUFBZSxDQUFDO1FBQzVCLFdBQVcsRUFBRTtZQUNYLGlCQUFpQixFQUFFO2dCQUNqQixNQUFNLEVBQUUsaUJBQWlCO2dCQUN6QixZQUFZLEVBQUU7b0JBQ1osYUFBYSxFQUFFLGFBQWE7b0JBQzVCLFdBQVcsRUFBRSxXQUFXO2lCQUN6QjthQUNGO1lBQ0QsaUJBQWlCLEVBQUU7Z0JBQ2pCLE1BQU0sRUFBRSxpQkFBaUI7YUFDMUI7WUFDRCx1QkFBdUIsRUFBRTtnQkFDdkIsTUFBTSxFQUFFLHVCQUF1QjtnQkFDL0IsWUFBWSxFQUFFO29CQUNaLGdCQUFnQixFQUFFO3dCQUNoQixXQUFXLEVBQUU7NEJBQ1g7Z0NBQ0UsUUFBUSxFQUFFLGlCQUFpQjtnQ0FDM0IsV0FBVyxFQUFFO29DQUNYLFdBQVcsRUFBRTt3Q0FDWCxlQUFlLEVBQUU7NENBQ2YsS0FBSyxFQUFFLGlCQUFpQjt5Q0FDekI7cUNBQ0Y7aUNBQ0Y7Z0NBQ0QsUUFBUSxFQUFFLE9BQU87Z0NBQ2pCLFdBQVcsRUFBRTtvQ0FDWCxTQUFTLEVBQUUsbUJBQW1CO2lDQUMvQjtnQ0FDRCxVQUFVLEVBQUU7b0NBQ1YsWUFBWSxFQUFFO3dDQUNaLGlCQUFpQjt3Q0FDakIsS0FBSztxQ0FDTjtpQ0FDRjs2QkFDRjt5QkFDRjt3QkFDRCxTQUFTLEVBQUUsWUFBWTtxQkFDeEI7b0JBQ0QsUUFBUSxFQUFFO3dCQUNSOzRCQUNFLEtBQUssRUFBRSxpQkFBaUI7eUJBQ3pCO3FCQUNGO2lCQUNGO2FBQ0Y7WUFDRCx3QkFBd0IsRUFBRTtnQkFDeEIsTUFBTSxFQUFFLHdCQUF3QjtnQkFDaEMsWUFBWSxFQUFFO29CQUNaLFVBQVUsRUFBRSxLQUFLO29CQUNqQixVQUFVLEVBQUU7d0JBQ1YsS0FBSyxFQUFFLGlCQUFpQjtxQkFDekI7b0JBQ0QsVUFBVSxFQUFFO3dCQUNWLFlBQVksRUFBRTs0QkFDWixpQkFBaUI7NEJBQ2pCLEtBQUs7eUJBQ047cUJBQ0Y7aUJBQ0Y7YUFDRjtZQUNELDJCQUEyQixFQUFFO2dCQUMzQixNQUFNLEVBQUUsZ0JBQWdCO2dCQUN4QixZQUFZLEVBQUU7b0JBQ1osMEJBQTBCLEVBQUU7d0JBQzFCLFdBQVcsRUFBRTs0QkFDWDtnQ0FDRSxRQUFRLEVBQUUsZ0JBQWdCO2dDQUMxQixRQUFRLEVBQUUsT0FBTztnQ0FDakIsV0FBVyxFQUFFO29DQUNYLFNBQVMsRUFBRTt3Q0FDVCxVQUFVLEVBQUU7NENBQ1YsRUFBRTs0Q0FDRjtnREFDRSxTQUFTO2dEQUNUO29EQUNFLEtBQUssRUFBRSxnQkFBZ0I7aURBQ3hCOzZDQUNGO3lDQUNGO3FDQUNGO2lDQUNGOzZCQUNGO3lCQUNGO3dCQUNELFNBQVMsRUFBRSxZQUFZO3FCQUN4QjtvQkFDRCxtQkFBbUIsRUFBRTt3QkFDbkI7NEJBQ0UsVUFBVSxFQUFFO2dDQUNWLEVBQUU7Z0NBQ0Y7b0NBQ0UsTUFBTTtvQ0FDTjt3Q0FDRSxLQUFLLEVBQUUsZ0JBQWdCO3FDQUN4QjtvQ0FDRCwyREFBMkQ7aUNBQzVEOzZCQUNGO3lCQUNGO3FCQUNGO2lCQUNGO2FBQ0Y7WUFDRCxnQkFBZ0IsRUFBRTtnQkFDaEIsTUFBTSxFQUFFLHVCQUF1QjtnQkFDL0IsWUFBWSxFQUFFO29CQUNaLE1BQU0sRUFBRTt3QkFDTixTQUFTLEVBQUUsc0RBQXNEO3FCQUNsRTtvQkFDRCxTQUFTLEVBQUUsZUFBZTtvQkFDMUIsTUFBTSxFQUFFO3dCQUNOLFlBQVksRUFBRTs0QkFDWiwyQkFBMkI7NEJBQzNCLEtBQUs7eUJBQ047cUJBQ0Y7b0JBQ0QsU0FBUyxFQUFFLFlBQVk7aUJBQ3hCO2dCQUNELFdBQVcsRUFBRTtvQkFDWCwyQkFBMkI7aUJBQzVCO2FBQ0Y7WUFDRCxrQ0FBa0MsRUFBRTtnQkFDbEMsTUFBTSxFQUFFLHlCQUF5QjtnQkFDakMsWUFBWSxFQUFFO29CQUNaLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLGNBQWMsRUFBRTt3QkFDZCxZQUFZLEVBQUU7NEJBQ1osZ0JBQWdCOzRCQUNoQixLQUFLO3lCQUNOO3FCQUNGO29CQUNELFdBQVcsRUFBRSxtQkFBbUI7b0JBQ2hDLFdBQVcsRUFBRTt3QkFDWCxLQUFLLEVBQUUsaUJBQWlCO3FCQUN6QjtpQkFDRjthQUNGO1lBQ0QsdUJBQXVCLEVBQUU7Z0JBQ3ZCLE1BQU0sRUFBRSx3QkFBd0I7Z0JBQ2hDLFlBQVksRUFBRTtvQkFDWixVQUFVLEVBQUUsUUFBUTtvQkFDcEIsVUFBVSxFQUFFO3dCQUNWLEtBQUssRUFBRSxpQkFBaUI7cUJBQ3pCO29CQUNELFVBQVUsRUFBRTt3QkFDVixZQUFZLEVBQUU7NEJBQ1osZ0JBQWdCOzRCQUNoQixLQUFLO3lCQUNOO3FCQUNGO2lCQUNGO2FBQ0Y7U0FDRjtLQUNGLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLDJEQUEyRCxFQUFFLEdBQUcsRUFBRTtJQUNyRSxNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBRTlDLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFFdkQsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7U0FDakUsWUFBWSxDQUFDLDJFQUEyRSxDQUFDLENBQUM7QUFDL0YsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFO0lBQzlCLE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFO1FBQ2xELE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVc7UUFDbkMsT0FBTyxFQUFFLGVBQWU7UUFDeEIsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLHNEQUFzRCxDQUFDO0tBQ2pGLENBQUMsQ0FBQztJQUVILEtBQUssQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxFQUFFO1FBQ3hELFlBQVksRUFBRTtZQUNaLEtBQUssRUFBRSxHQUFHLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDO2dCQUN6QyxTQUFTLEVBQUUsQ0FBQyxLQUFLLENBQUM7Z0JBQ2xCLGFBQWEsRUFBRSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUM7YUFDNUIsQ0FBQztZQUNGLElBQUksRUFBRSxHQUFHLENBQUMsa0JBQWtCLENBQUMsWUFBWSxDQUFDO2dCQUN4QyxTQUFTLEVBQUUsQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDO2FBQy9CLENBQUM7WUFDRixLQUFLLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQztnQkFDMUMsT0FBTyxFQUFFLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFO2FBQ25DLENBQUM7U0FDSDtLQUNGLENBQUMsQ0FBQyxDQUFDO0lBRUosTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLGNBQWMsQ0FBQyx3QkFBd0IsRUFBRTtRQUNyRCxjQUFjLEVBQUU7WUFDZCxPQUFPLEVBQUU7Z0JBQ1AsS0FBSztnQkFDTDtvQkFDRSxRQUFRLEVBQUUsSUFBSTtpQkFDZjtnQkFDRDtvQkFDRSxRQUFRLEVBQUUsSUFBSTtpQkFDZjthQUNGO1lBQ0QsTUFBTSxFQUFFO2dCQUNOO29CQUNFLGNBQWMsRUFBRTt3QkFDZCxPQUFPO3dCQUNQLFFBQVE7cUJBQ1Q7aUJBQ0Y7YUFDRjtZQUNELE9BQU8sRUFBRTtnQkFDUDtvQkFDRSxTQUFTLEVBQUU7d0JBQ1QsSUFBSTt3QkFDSixHQUFHO3dCQUNILElBQUk7d0JBQ0osR0FBRztxQkFDSjtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnQGF3cy1jZGsvYXNzZXJ0L2plc3QnO1xuaW1wb3J0IGxhbWJkYSA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1sYW1iZGEnKTtcbmltcG9ydCBzbnMgPSByZXF1aXJlKCdAYXdzLWNkay9hd3Mtc25zJyk7XG5pbXBvcnQgc3FzID0gcmVxdWlyZSgnQGF3cy1jZGsvYXdzLXNxcycpO1xuaW1wb3J0IHsgU3RhY2sgfSBmcm9tICdAYXdzLWNkay9jb3JlJztcbmltcG9ydCBzdWJzID0gcmVxdWlyZSgnLi4vbGliJyk7XG5cbi8vIHRzbGludDpkaXNhYmxlOm9iamVjdC1saXRlcmFsLWtleS1xdW90ZXNcblxubGV0IHN0YWNrOiBTdGFjaztcbmxldCB0b3BpYzogc25zLlRvcGljO1xuXG5iZWZvcmVFYWNoKCgpID0+IHtcbiAgc3RhY2sgPSBuZXcgU3RhY2soKTtcbiAgdG9waWMgPSBuZXcgc25zLlRvcGljKHN0YWNrLCAnTXlUb3BpYycsIHtcbiAgICB0b3BpY05hbWU6ICd0b3BpY05hbWUnLFxuICAgIGRpc3BsYXlOYW1lOiAnZGlzcGxheU5hbWUnXG4gIH0pO1xufSk7XG5cbnRlc3QoJ3VybCBzdWJzY3JpcHRpb24nLCAoKSA9PiB7XG4gIHRvcGljLmFkZFN1YnNjcmlwdGlvbihuZXcgc3Vicy5VcmxTdWJzY3JpcHRpb24oJ2h0dHBzOi8vZm9vYmFyLmNvbS8nKSk7XG5cbiAgZXhwZWN0KHN0YWNrKS50b01hdGNoVGVtcGxhdGUoe1xuICAgIFwiUmVzb3VyY2VzXCI6IHtcbiAgICAgIFwiTXlUb3BpYzg2ODY5NDM0XCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTTlM6OlRvcGljXCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJEaXNwbGF5TmFtZVwiOiBcImRpc3BsYXlOYW1lXCIsXG4gICAgICAgICAgXCJUb3BpY05hbWVcIjogXCJ0b3BpY05hbWVcIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgXCJNeVRvcGljaHR0cHNmb29iYXJjb21ERUE5MkFCNVwiOiB7XG4gICAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U05TOjpTdWJzY3JpcHRpb25cIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIkVuZHBvaW50XCI6IFwiaHR0cHM6Ly9mb29iYXIuY29tL1wiLFxuICAgICAgICAgIFwiUHJvdG9jb2xcIjogXCJodHRwc1wiLFxuICAgICAgICAgIFwiVG9waWNBcm5cIjoge1xuICAgICAgICAgICAgXCJSZWZcIjogXCJNeVRvcGljODY4Njk0MzRcIlxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSk7XG59KTtcblxudGVzdCgndXJsIHN1YnNjcmlwdGlvbiAod2l0aCByYXcgZGVsaXZlcnkpJywgKCkgPT4ge1xuICB0b3BpYy5hZGRTdWJzY3JpcHRpb24obmV3IHN1YnMuVXJsU3Vic2NyaXB0aW9uKCdodHRwczovL2Zvb2Jhci5jb20vJywge1xuICAgIHJhd01lc3NhZ2VEZWxpdmVyeTogdHJ1ZVxuICB9KSk7XG5cbiAgZXhwZWN0KHN0YWNrKS50b01hdGNoVGVtcGxhdGUoe1xuICAgIFwiUmVzb3VyY2VzXCI6IHtcbiAgICAgIFwiTXlUb3BpYzg2ODY5NDM0XCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTTlM6OlRvcGljXCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJEaXNwbGF5TmFtZVwiOiBcImRpc3BsYXlOYW1lXCIsXG4gICAgICAgICAgXCJUb3BpY05hbWVcIjogXCJ0b3BpY05hbWVcIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgXCJNeVRvcGljaHR0cHNmb29iYXJjb21ERUE5MkFCNVwiOiB7XG4gICAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U05TOjpTdWJzY3JpcHRpb25cIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIkVuZHBvaW50XCI6IFwiaHR0cHM6Ly9mb29iYXIuY29tL1wiLFxuICAgICAgICAgIFwiUHJvdG9jb2xcIjogXCJodHRwc1wiLFxuICAgICAgICAgIFwiVG9waWNBcm5cIjogeyBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiIH0sXG4gICAgICAgICAgXCJSYXdNZXNzYWdlRGVsaXZlcnlcIjogdHJ1ZVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9KTtcbn0pO1xuXG50ZXN0KCdxdWV1ZSBzdWJzY3JpcHRpb24nLCAoKSA9PiB7XG4gIGNvbnN0IHF1ZXVlID0gbmV3IHNxcy5RdWV1ZShzdGFjaywgJ015UXVldWUnKTtcblxuICB0b3BpYy5hZGRTdWJzY3JpcHRpb24obmV3IHN1YnMuU3FzU3Vic2NyaXB0aW9uKHF1ZXVlKSk7XG5cbiAgZXhwZWN0KHN0YWNrKS50b01hdGNoVGVtcGxhdGUoe1xuICAgIFwiUmVzb3VyY2VzXCI6IHtcbiAgICAgIFwiTXlUb3BpYzg2ODY5NDM0XCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTTlM6OlRvcGljXCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJEaXNwbGF5TmFtZVwiOiBcImRpc3BsYXlOYW1lXCIsXG4gICAgICAgICAgXCJUb3BpY05hbWVcIjogXCJ0b3BpY05hbWVcIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgXCJNeVF1ZXVlRTZDQTYyMzVcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OlNRUzo6UXVldWVcIlxuICAgICAgfSxcbiAgICAgIFwiTXlRdWV1ZVBvbGljeTZCQkVEREFDXCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTUVM6OlF1ZXVlUG9saWN5XCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJQb2xpY3lEb2N1bWVudFwiOiB7XG4gICAgICAgICAgICBcIlN0YXRlbWVudFwiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcIkFjdGlvblwiOiBcInNxczpTZW5kTWVzc2FnZVwiLFxuICAgICAgICAgICAgICAgIFwiQ29uZGl0aW9uXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwiQXJuRXF1YWxzXCI6IHtcbiAgICAgICAgICAgICAgICAgICAgXCJhd3M6U291cmNlQXJuXCI6IHtcbiAgICAgICAgICAgICAgICAgICAgICBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFwiRWZmZWN0XCI6IFwiQWxsb3dcIixcbiAgICAgICAgICAgICAgICBcIlByaW5jaXBhbFwiOiB7XG4gICAgICAgICAgICAgICAgICBcIlNlcnZpY2VcIjogXCJzbnMuYW1hem9uYXdzLmNvbVwiXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBcIlJlc291cmNlXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgICAgICAgIFwiTXlRdWV1ZUU2Q0E2MjM1XCIsXG4gICAgICAgICAgICAgICAgICAgIFwiQXJuXCJcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBcIlZlcnNpb25cIjogXCIyMDEyLTEwLTE3XCJcbiAgICAgICAgICB9LFxuICAgICAgICAgIFwiUXVldWVzXCI6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgXCJSZWZcIjogXCJNeVF1ZXVlRTZDQTYyMzVcIlxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFwiTXlRdWV1ZU15VG9waWM5QjAwNjMxQlwiOiB7XG4gICAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U05TOjpTdWJzY3JpcHRpb25cIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIlByb3RvY29sXCI6IFwic3FzXCIsXG4gICAgICAgICAgXCJUb3BpY0FyblwiOiB7XG4gICAgICAgICAgICBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIkVuZHBvaW50XCI6IHtcbiAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgIFwiTXlRdWV1ZUU2Q0E2MjM1XCIsXG4gICAgICAgICAgICAgIFwiQXJuXCJcbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0pO1xufSk7XG5cbnRlc3QoJ3F1ZXVlIHN1YnNjcmlwdGlvbiAod2l0aCByYXcgZGVsaXZlcnkpJywgKCkgPT4ge1xuICBjb25zdCBxdWV1ZSA9IG5ldyBzcXMuUXVldWUoc3RhY2ssICdNeVF1ZXVlJyk7XG5cbiAgdG9waWMuYWRkU3Vic2NyaXB0aW9uKG5ldyBzdWJzLlNxc1N1YnNjcmlwdGlvbihxdWV1ZSwgeyByYXdNZXNzYWdlRGVsaXZlcnk6IHRydWUgfSkpO1xuXG4gIGV4cGVjdChzdGFjaykudG9IYXZlUmVzb3VyY2UoJ0FXUzo6U05TOjpTdWJzY3JpcHRpb24nLCB7XG4gICAgXCJFbmRwb2ludFwiOiB7XG4gICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICBcIk15UXVldWVFNkNBNjIzNVwiLFxuICAgICAgICBcIkFyblwiXG4gICAgICBdXG4gICAgfSxcbiAgICBcIlByb3RvY29sXCI6IFwic3FzXCIsXG4gICAgXCJUb3BpY0FyblwiOiB7XG4gICAgICBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiXG4gICAgfSxcbiAgICBcIlJhd01lc3NhZ2VEZWxpdmVyeVwiOiB0cnVlXG4gIH0pO1xufSk7XG5cbnRlc3QoJ2xhbWJkYSBzdWJzY3JpcHRpb24nLCAoKSA9PiB7XG4gIGNvbnN0IGZjdGlvbiA9IG5ldyBsYW1iZGEuRnVuY3Rpb24oc3RhY2ssICdNeUZ1bmMnLCB7XG4gICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzhfMTAsXG4gICAgaGFuZGxlcjogJ2luZGV4LmhhbmRsZXInLFxuICAgIGNvZGU6IGxhbWJkYS5Db2RlLmlubGluZSgnZXhwb3J0cy5oYW5kbGVyID0gZnVuY3Rpb24oZSwgYywgY2IpIHsgcmV0dXJuIGNiKCkgfScpXG4gIH0pO1xuXG4gIHRvcGljLmFkZFN1YnNjcmlwdGlvbihuZXcgc3Vicy5MYW1iZGFTdWJzY3JpcHRpb24oZmN0aW9uKSk7XG5cbiAgZXhwZWN0KHN0YWNrKS50b01hdGNoVGVtcGxhdGUoe1xuICAgIFwiUmVzb3VyY2VzXCI6IHtcbiAgICAgIFwiTXlUb3BpYzg2ODY5NDM0XCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTTlM6OlRvcGljXCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJEaXNwbGF5TmFtZVwiOiBcImRpc3BsYXlOYW1lXCIsXG4gICAgICAgICAgXCJUb3BpY05hbWVcIjogXCJ0b3BpY05hbWVcIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgXCJNeUZ1bmNTZXJ2aWNlUm9sZTU0MDY1MTMwXCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpJQU06OlJvbGVcIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIkFzc3VtZVJvbGVQb2xpY3lEb2N1bWVudFwiOiB7XG4gICAgICAgICAgICBcIlN0YXRlbWVudFwiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcIkFjdGlvblwiOiBcInN0czpBc3N1bWVSb2xlXCIsXG4gICAgICAgICAgICAgICAgXCJFZmZlY3RcIjogXCJBbGxvd1wiLFxuICAgICAgICAgICAgICAgIFwiUHJpbmNpcGFsXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwiU2VydmljZVwiOiB7XG4gICAgICAgICAgICAgICAgICAgIFwiRm46OkpvaW5cIjogW1xuICAgICAgICAgICAgICAgICAgICAgIFwiXCIsXG4gICAgICAgICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgICAgICAgXCJsYW1iZGEuXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIFwiUmVmXCI6IFwiQVdTOjpVUkxTdWZmaXhcIlxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIFwiVmVyc2lvblwiOiBcIjIwMTItMTAtMTdcIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJNYW5hZ2VkUG9saWN5QXJuc1wiOiBbXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIFwiRm46OkpvaW5cIjogW1xuICAgICAgICAgICAgICAgIFwiXCIsXG4gICAgICAgICAgICAgICAgW1xuICAgICAgICAgICAgICAgICAgXCJhcm46XCIsXG4gICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIFwiUmVmXCI6IFwiQVdTOjpQYXJ0aXRpb25cIlxuICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIFwiOmlhbTo6YXdzOnBvbGljeS9zZXJ2aWNlLXJvbGUvQVdTTGFtYmRhQmFzaWNFeGVjdXRpb25Sb2xlXCJcbiAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBcIk15RnVuYzhBMjQzQTJDXCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpMYW1iZGE6OkZ1bmN0aW9uXCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJDb2RlXCI6IHtcbiAgICAgICAgICAgIFwiWmlwRmlsZVwiOiBcImV4cG9ydHMuaGFuZGxlciA9IGZ1bmN0aW9uKGUsIGMsIGNiKSB7IHJldHVybiBjYigpIH1cIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJIYW5kbGVyXCI6IFwiaW5kZXguaGFuZGxlclwiLFxuICAgICAgICAgIFwiUm9sZVwiOiB7XG4gICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICBcIk15RnVuY1NlcnZpY2VSb2xlNTQwNjUxMzBcIixcbiAgICAgICAgICAgICAgXCJBcm5cIlxuICAgICAgICAgICAgXVxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJSdW50aW1lXCI6IFwibm9kZWpzOC4xMFwiXG4gICAgICAgIH0sXG4gICAgICAgIFwiRGVwZW5kc09uXCI6IFtcbiAgICAgICAgICBcIk15RnVuY1NlcnZpY2VSb2xlNTQwNjUxMzBcIlxuICAgICAgICBdXG4gICAgICB9LFxuICAgICAgXCJNeUZ1bmNBbGxvd0ludm9rZU15VG9waWNERDBBMTVCOFwiOiB7XG4gICAgICAgIFwiVHlwZVwiOiBcIkFXUzo6TGFtYmRhOjpQZXJtaXNzaW9uXCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJBY3Rpb25cIjogXCJsYW1iZGE6SW52b2tlRnVuY3Rpb25cIixcbiAgICAgICAgICBcIkZ1bmN0aW9uTmFtZVwiOiB7XG4gICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICBcIk15RnVuYzhBMjQzQTJDXCIsXG4gICAgICAgICAgICAgIFwiQXJuXCJcbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9LFxuICAgICAgICAgIFwiUHJpbmNpcGFsXCI6IFwic25zLmFtYXpvbmF3cy5jb21cIixcbiAgICAgICAgICBcIlNvdXJjZUFyblwiOiB7XG4gICAgICAgICAgICBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgXCJNeUZ1bmNNeVRvcGljOTNCNkZCMDBcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OlNOUzo6U3Vic2NyaXB0aW9uXCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJQcm90b2NvbFwiOiBcImxhbWJkYVwiLFxuICAgICAgICAgIFwiVG9waWNBcm5cIjoge1xuICAgICAgICAgICAgXCJSZWZcIjogXCJNeVRvcGljODY4Njk0MzRcIlxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJFbmRwb2ludFwiOiB7XG4gICAgICAgICAgICBcIkZuOjpHZXRBdHRcIjogW1xuICAgICAgICAgICAgICBcIk15RnVuYzhBMjQzQTJDXCIsXG4gICAgICAgICAgICAgIFwiQXJuXCJcbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0pO1xufSk7XG5cbnRlc3QoJ2VtYWlsIHN1YnNjcmlwdGlvbicsICgpID0+IHtcbiAgdG9waWMuYWRkU3Vic2NyaXB0aW9uKG5ldyBzdWJzLkVtYWlsU3Vic2NyaXB0aW9uKCdmb29AYmFyLmNvbScpKTtcblxuICBleHBlY3Qoc3RhY2spLnRvTWF0Y2hUZW1wbGF0ZSh7XG4gICAgXCJSZXNvdXJjZXNcIjoge1xuICAgICAgXCJNeVRvcGljODY4Njk0MzRcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OlNOUzo6VG9waWNcIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIkRpc3BsYXlOYW1lXCI6IFwiZGlzcGxheU5hbWVcIixcbiAgICAgICAgICBcIlRvcGljTmFtZVwiOiBcInRvcGljTmFtZVwiXG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBcIk15VG9waWNmb29iYXJjb21BMzQ0Q0FEQVwiOiB7XG4gICAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U05TOjpTdWJzY3JpcHRpb25cIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIkVuZHBvaW50XCI6IFwiZm9vQGJhci5jb21cIixcbiAgICAgICAgICBcIlByb3RvY29sXCI6IFwiZW1haWxcIixcbiAgICAgICAgICBcIlRvcGljQXJuXCI6IHtcbiAgICAgICAgICAgIFwiUmVmXCI6IFwiTXlUb3BpYzg2ODY5NDM0XCJcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0pO1xufSk7XG5cbnRlc3QoJ211bHRpcGxlIHN1YnNjcmlwdGlvbnMnLCAoKSA9PiB7XG4gIGNvbnN0IHF1ZXVlID0gbmV3IHNxcy5RdWV1ZShzdGFjaywgJ015UXVldWUnKTtcbiAgY29uc3QgZnVuYyA9IG5ldyBsYW1iZGEuRnVuY3Rpb24oc3RhY2ssICdNeUZ1bmMnLCB7XG4gICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzhfMTAsXG4gICAgaGFuZGxlcjogJ2luZGV4LmhhbmRsZXInLFxuICAgIGNvZGU6IGxhbWJkYS5Db2RlLmlubGluZSgnZXhwb3J0cy5oYW5kbGVyID0gZnVuY3Rpb24oZSwgYywgY2IpIHsgcmV0dXJuIGNiKCkgfScpXG4gIH0pO1xuXG4gIHRvcGljLmFkZFN1YnNjcmlwdGlvbihuZXcgc3Vicy5TcXNTdWJzY3JpcHRpb24ocXVldWUpKTtcbiAgdG9waWMuYWRkU3Vic2NyaXB0aW9uKG5ldyBzdWJzLkxhbWJkYVN1YnNjcmlwdGlvbihmdW5jKSk7XG5cbiAgZXhwZWN0KHN0YWNrKS50b01hdGNoVGVtcGxhdGUoe1xuICAgIFwiUmVzb3VyY2VzXCI6IHtcbiAgICAgIFwiTXlUb3BpYzg2ODY5NDM0XCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTTlM6OlRvcGljXCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJEaXNwbGF5TmFtZVwiOiBcImRpc3BsYXlOYW1lXCIsXG4gICAgICAgICAgXCJUb3BpY05hbWVcIjogXCJ0b3BpY05hbWVcIlxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgXCJNeVF1ZXVlRTZDQTYyMzVcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OlNRUzo6UXVldWVcIlxuICAgICAgfSxcbiAgICAgIFwiTXlRdWV1ZVBvbGljeTZCQkVEREFDXCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpTUVM6OlF1ZXVlUG9saWN5XCIsXG4gICAgICAgIFwiUHJvcGVydGllc1wiOiB7XG4gICAgICAgICAgXCJQb2xpY3lEb2N1bWVudFwiOiB7XG4gICAgICAgICAgICBcIlN0YXRlbWVudFwiOiBbXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBcIkFjdGlvblwiOiBcInNxczpTZW5kTWVzc2FnZVwiLFxuICAgICAgICAgICAgICAgIFwiQ29uZGl0aW9uXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwiQXJuRXF1YWxzXCI6IHtcbiAgICAgICAgICAgICAgICAgICAgXCJhd3M6U291cmNlQXJuXCI6IHtcbiAgICAgICAgICAgICAgICAgICAgICBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIFwiRWZmZWN0XCI6IFwiQWxsb3dcIixcbiAgICAgICAgICAgICAgICBcIlByaW5jaXBhbFwiOiB7XG4gICAgICAgICAgICAgICAgICBcIlNlcnZpY2VcIjogXCJzbnMuYW1hem9uYXdzLmNvbVwiXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBcIlJlc291cmNlXCI6IHtcbiAgICAgICAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgICAgICAgIFwiTXlRdWV1ZUU2Q0E2MjM1XCIsXG4gICAgICAgICAgICAgICAgICAgIFwiQXJuXCJcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICBcIlZlcnNpb25cIjogXCIyMDEyLTEwLTE3XCJcbiAgICAgICAgICB9LFxuICAgICAgICAgIFwiUXVldWVzXCI6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgXCJSZWZcIjogXCJNeVF1ZXVlRTZDQTYyMzVcIlxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFwiTXlRdWV1ZU15VG9waWM5QjAwNjMxQlwiOiB7XG4gICAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U05TOjpTdWJzY3JpcHRpb25cIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIlByb3RvY29sXCI6IFwic3FzXCIsXG4gICAgICAgICAgXCJUb3BpY0FyblwiOiB7XG4gICAgICAgICAgICBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIkVuZHBvaW50XCI6IHtcbiAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgIFwiTXlRdWV1ZUU2Q0E2MjM1XCIsXG4gICAgICAgICAgICAgIFwiQXJuXCJcbiAgICAgICAgICAgIF1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBcIk15RnVuY1NlcnZpY2VSb2xlNTQwNjUxMzBcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OklBTTo6Um9sZVwiLFxuICAgICAgICBcIlByb3BlcnRpZXNcIjoge1xuICAgICAgICAgIFwiQXNzdW1lUm9sZVBvbGljeURvY3VtZW50XCI6IHtcbiAgICAgICAgICAgIFwiU3RhdGVtZW50XCI6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIFwiQWN0aW9uXCI6IFwic3RzOkFzc3VtZVJvbGVcIixcbiAgICAgICAgICAgICAgICBcIkVmZmVjdFwiOiBcIkFsbG93XCIsXG4gICAgICAgICAgICAgICAgXCJQcmluY2lwYWxcIjoge1xuICAgICAgICAgICAgICAgICAgXCJTZXJ2aWNlXCI6IHtcbiAgICAgICAgICAgICAgICAgICAgXCJGbjo6Sm9pblwiOiBbXG4gICAgICAgICAgICAgICAgICAgICAgXCJcIixcbiAgICAgICAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICAgICAgICBcImxhbWJkYS5cIixcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXCJSZWZcIjogXCJBV1M6OlVSTFN1ZmZpeFwiXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgXCJWZXJzaW9uXCI6IFwiMjAxMi0xMC0xN1wiXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIk1hbmFnZWRQb2xpY3lBcm5zXCI6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgXCJGbjo6Sm9pblwiOiBbXG4gICAgICAgICAgICAgICAgXCJcIixcbiAgICAgICAgICAgICAgICBbXG4gICAgICAgICAgICAgICAgICBcImFybjpcIixcbiAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgXCJSZWZcIjogXCJBV1M6OlBhcnRpdGlvblwiXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgXCI6aWFtOjphd3M6cG9saWN5L3NlcnZpY2Utcm9sZS9BV1NMYW1iZGFCYXNpY0V4ZWN1dGlvblJvbGVcIlxuICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgfVxuICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFwiTXlGdW5jOEEyNDNBMkNcIjoge1xuICAgICAgICBcIlR5cGVcIjogXCJBV1M6OkxhbWJkYTo6RnVuY3Rpb25cIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIkNvZGVcIjoge1xuICAgICAgICAgICAgXCJaaXBGaWxlXCI6IFwiZXhwb3J0cy5oYW5kbGVyID0gZnVuY3Rpb24oZSwgYywgY2IpIHsgcmV0dXJuIGNiKCkgfVwiXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIkhhbmRsZXJcIjogXCJpbmRleC5oYW5kbGVyXCIsXG4gICAgICAgICAgXCJSb2xlXCI6IHtcbiAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgIFwiTXlGdW5jU2VydmljZVJvbGU1NDA2NTEzMFwiLFxuICAgICAgICAgICAgICBcIkFyblwiXG4gICAgICAgICAgICBdXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIlJ1bnRpbWVcIjogXCJub2RlanM4LjEwXCJcbiAgICAgICAgfSxcbiAgICAgICAgXCJEZXBlbmRzT25cIjogW1xuICAgICAgICAgIFwiTXlGdW5jU2VydmljZVJvbGU1NDA2NTEzMFwiXG4gICAgICAgIF1cbiAgICAgIH0sXG4gICAgICBcIk15RnVuY0FsbG93SW52b2tlTXlUb3BpY0REMEExNUI4XCI6IHtcbiAgICAgICAgXCJUeXBlXCI6IFwiQVdTOjpMYW1iZGE6OlBlcm1pc3Npb25cIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIkFjdGlvblwiOiBcImxhbWJkYTpJbnZva2VGdW5jdGlvblwiLFxuICAgICAgICAgIFwiRnVuY3Rpb25OYW1lXCI6IHtcbiAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgIFwiTXlGdW5jOEEyNDNBMkNcIixcbiAgICAgICAgICAgICAgXCJBcm5cIlxuICAgICAgICAgICAgXVxuICAgICAgICAgIH0sXG4gICAgICAgICAgXCJQcmluY2lwYWxcIjogXCJzbnMuYW1hem9uYXdzLmNvbVwiLFxuICAgICAgICAgIFwiU291cmNlQXJuXCI6IHtcbiAgICAgICAgICAgIFwiUmVmXCI6IFwiTXlUb3BpYzg2ODY5NDM0XCJcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgICBcIk15RnVuY015VG9waWM5M0I2RkIwMFwiOiB7XG4gICAgICAgIFwiVHlwZVwiOiBcIkFXUzo6U05TOjpTdWJzY3JpcHRpb25cIixcbiAgICAgICAgXCJQcm9wZXJ0aWVzXCI6IHtcbiAgICAgICAgICBcIlByb3RvY29sXCI6IFwibGFtYmRhXCIsXG4gICAgICAgICAgXCJUb3BpY0FyblwiOiB7XG4gICAgICAgICAgICBcIlJlZlwiOiBcIk15VG9waWM4Njg2OTQzNFwiXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcIkVuZHBvaW50XCI6IHtcbiAgICAgICAgICAgIFwiRm46OkdldEF0dFwiOiBbXG4gICAgICAgICAgICAgIFwiTXlGdW5jOEEyNDNBMkNcIixcbiAgICAgICAgICAgICAgXCJBcm5cIlxuICAgICAgICAgICAgXVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSk7XG59KTtcblxudGVzdCgndGhyb3dzIHdpdGggbXV0bGlwbGUgc3Vic2NyaXB0aW9ucyBvZiB0aGUgc2FtZSBzdWJzY3JpYmVyJywgKCkgPT4ge1xuICBjb25zdCBxdWV1ZSA9IG5ldyBzcXMuUXVldWUoc3RhY2ssICdNeVF1ZXVlJyk7XG5cbiAgdG9waWMuYWRkU3Vic2NyaXB0aW9uKG5ldyBzdWJzLlNxc1N1YnNjcmlwdGlvbihxdWV1ZSkpO1xuXG4gIGV4cGVjdCgoKSA9PiB0b3BpYy5hZGRTdWJzY3JpcHRpb24obmV3IHN1YnMuU3FzU3Vic2NyaXB0aW9uKHF1ZXVlKSkpXG4gICAgLnRvVGhyb3dFcnJvcigvQSBzdWJzY3JpcHRpb24gd2l0aCBpZCBcXFwiTXlUb3BpY1xcXCIgYWxyZWFkeSBleGlzdHMgdW5kZXIgdGhlIHNjb3BlIE15UXVldWUvKTtcbn0pO1xuXG50ZXN0KCd3aXRoIGZpbHRlciBwb2xpY3knLCAoKSA9PiB7XG4gIGNvbnN0IGZjdGlvbiA9IG5ldyBsYW1iZGEuRnVuY3Rpb24oc3RhY2ssICdNeUZ1bmMnLCB7XG4gICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzhfMTAsXG4gICAgaGFuZGxlcjogJ2luZGV4LmhhbmRsZXInLFxuICAgIGNvZGU6IGxhbWJkYS5Db2RlLmlubGluZSgnZXhwb3J0cy5oYW5kbGVyID0gZnVuY3Rpb24oZSwgYywgY2IpIHsgcmV0dXJuIGNiKCkgfScpXG4gIH0pO1xuXG4gIHRvcGljLmFkZFN1YnNjcmlwdGlvbihuZXcgc3Vicy5MYW1iZGFTdWJzY3JpcHRpb24oZmN0aW9uLCB7XG4gICAgZmlsdGVyUG9saWN5OiB7XG4gICAgICBjb2xvcjogc25zLlN1YnNjcmlwdGlvbkZpbHRlci5zdHJpbmdGaWx0ZXIoe1xuICAgICAgICB3aGl0ZWxpc3Q6IFsncmVkJ10sXG4gICAgICAgIG1hdGNoUHJlZml4ZXM6IFsnYmwnLCAneWUnXSxcbiAgICAgIH0pLFxuICAgICAgc2l6ZTogc25zLlN1YnNjcmlwdGlvbkZpbHRlci5zdHJpbmdGaWx0ZXIoe1xuICAgICAgICBibGFja2xpc3Q6IFsnc21hbGwnLCAnbWVkaXVtJ10sXG4gICAgICB9KSxcbiAgICAgIHByaWNlOiBzbnMuU3Vic2NyaXB0aW9uRmlsdGVyLm51bWVyaWNGaWx0ZXIoe1xuICAgICAgICBiZXR3ZWVuOiB7IHN0YXJ0OiAxMDAsIHN0b3A6IDIwMCB9XG4gICAgICB9KVxuICAgIH1cbiAgfSkpO1xuXG4gIGV4cGVjdChzdGFjaykudG9IYXZlUmVzb3VyY2UoJ0FXUzo6U05TOjpTdWJzY3JpcHRpb24nLCB7XG4gICAgXCJGaWx0ZXJQb2xpY3lcIjoge1xuICAgICAgXCJjb2xvclwiOiBbXG4gICAgICAgIFwicmVkXCIsXG4gICAgICAgIHtcbiAgICAgICAgICBcInByZWZpeFwiOiBcImJsXCJcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIFwicHJlZml4XCI6IFwieWVcIlxuICAgICAgICB9XG4gICAgICBdLFxuICAgICAgXCJzaXplXCI6IFtcbiAgICAgICAge1xuICAgICAgICAgIFwiYW55dGhpbmctYnV0XCI6IFtcbiAgICAgICAgICAgIFwic21hbGxcIixcbiAgICAgICAgICAgIFwibWVkaXVtXCJcbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIF0sXG4gICAgICBcInByaWNlXCI6IFtcbiAgICAgICAge1xuICAgICAgICAgIFwibnVtZXJpY1wiOiBbXG4gICAgICAgICAgICBcIj49XCIsXG4gICAgICAgICAgICAxMDAsXG4gICAgICAgICAgICBcIjw9XCIsXG4gICAgICAgICAgICAyMDBcbiAgICAgICAgICBdXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9XG4gIH0pO1xufSk7XG4iXX0= |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
130571
1166
Updated@aws-cdk/aws-iam@^0.36.1
Updated@aws-cdk/aws-lambda@^0.36.1
Updated@aws-cdk/aws-sns@^0.36.1
Updated@aws-cdk/aws-sqs@^0.36.1
Updated@aws-cdk/core@^0.36.1