@senior-gestao-empresarial/erpx-components 0.0.0-develop-3bab051d → 0.0.0-develop-63f79c26
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.
- package/bundles/senior-gestao-empresarial-erpx-components.umd.js +69 -3
- package/bundles/senior-gestao-empresarial-erpx-components.umd.js.map +1 -1
- package/bundles/senior-gestao-empresarial-erpx-components.umd.min.js +1 -1
- package/bundles/senior-gestao-empresarial-erpx-components.umd.min.js.map +1 -1
- package/esm2015/components/tributos/rules/calculation/registries/calculation-rules-registries/outgoing-invoice-calculation-rules.registry.js +69 -1
- package/esm2015/components/tributos/rules/calculation/rules/tax-classification-calculation-rule.js +2 -4
- package/esm5/components/tributos/rules/calculation/registries/calculation-rules-registries/outgoing-invoice-calculation-rules.registry.js +69 -1
- package/esm5/components/tributos/rules/calculation/rules/tax-classification-calculation-rule.js +2 -4
- package/fesm2015/senior-gestao-empresarial-erpx-components.js +69 -3
- package/fesm2015/senior-gestao-empresarial-erpx-components.js.map +1 -1
- package/fesm5/senior-gestao-empresarial-erpx-components.js +69 -3
- package/fesm5/senior-gestao-empresarial-erpx-components.js.map +1 -1
- package/package.json +1 -1
package/esm5/components/tributos/rules/calculation/rules/tax-classification-calculation-rule.js
CHANGED
|
@@ -38,9 +38,7 @@ var TaxClassificationCalculationRule = /** @class */ (function () {
|
|
|
38
38
|
.subscribe(function (taxClassification) {
|
|
39
39
|
formGroup
|
|
40
40
|
.get('classificacaoTributaria')
|
|
41
|
-
.setValue(taxClassification
|
|
42
|
-
emitEvent: false
|
|
43
|
-
});
|
|
41
|
+
.setValue(taxClassification);
|
|
44
42
|
});
|
|
45
43
|
}
|
|
46
44
|
break;
|
|
@@ -238,4 +236,4 @@ var TaxClassificationCalculationRule = /** @class */ (function () {
|
|
|
238
236
|
return TaxClassificationCalculationRule;
|
|
239
237
|
}());
|
|
240
238
|
export { TaxClassificationCalculationRule };
|
|
241
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF4LWNsYXNzaWZpY2F0aW9uLWNhbGN1bGF0aW9uLXJ1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWdlc3Rhby1lbXByZXNhcmlhbC9lcnB4LWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL3RyaWJ1dG9zL3J1bGVzL2NhbGN1bGF0aW9uL3J1bGVzL3RheC1jbGFzc2lmaWNhdGlvbi1jYWxjdWxhdGlvbi1ydWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIsTUFBTSxFQUNOLEdBQUcsRUFDSCxJQUFJLEVBQ0osU0FBUyxFQUNaLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUs5RDtJQUNJO0lBQWUsQ0FBQztJQUVoQixnREFBSyxHQUFMLFVBQU0sRUFJUTtZQUhDLDhCQUFRLEVBQ25CLGdCQUFLLEVBQ0wsWUFBNkMsRUFBckMsaUJBQWEsRUFBRSx3QkFBUyxFQUFFLHdCQUFTO1FBRTNDLFFBQVEsT0FBTyxFQUFFO1lBQ2IsS0FBSyxlQUFlLENBQUMsR0FBRyxDQUFDO1lBQ3pCLEtBQUssZUFBZSxDQUFDLHNCQUFzQixDQUFDO1lBQzVDLEtBQUssZUFBZSxDQUFDLFlBQVksQ0FBQztZQUNsQyxLQUFLLGVBQWUsQ0FBQywrQkFBK0IsQ0FBQztZQUNyRCxLQUFLLGVBQWUsQ0FBQyxhQUFhLENBQUM7WUFDbkMsS0FBSyxlQUFlLENBQUMsZ0NBQWdDLENBQUM7WUFDdEQsS0FBSyxlQUFlLENBQUMsRUFBRTtnQkFDbkI7b0JBQ0ksUUFBUSxRQUFRLEVBQUU7d0JBQ2QsS0FBSyxrQkFBa0IsQ0FBQzt3QkFDeEIsS0FBSyxrQkFBa0IsQ0FBQzt3QkFD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WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMb29rdXBGaWVsZCB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgbWVyZ2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gICAgZmlsdGVyLFxuICAgIG1hcCxcbiAgICBza2lwLFxuICAgIHN0YXJ0V2l0aFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBFbnVtVGlwb1RyaWJ1dG8gfSBmcm9tICcuLi8uLi8uLi9lcnAtdHJpYnV0b3MudHlwZXMnO1xuaW1wb3J0IHsgUnVsZVBheWxvYWQgfSBmcm9tICcuLi8uLi90eXBlcy9ydWxlLXBheWxvYWQnO1xuaW1wb3J0IHsgVGF4UnVsZSB9IGZyb20gJy4uLy4uL3R5cGVzL3RheC1ydWxlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBUYXhDbGFzc2lmaWNhdGlvbkNhbGN1bGF0aW9uUnVsZSBpbXBsZW1lbnRzIFRheFJ1bGUge1xuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIGFwcGx5KHtcbiAgICAgICAgY29udGV4dDogeyBkb2N1bWVudCB9LFxuICAgICAgICBncm91cCxcbiAgICAgICAgaXRlbTogeyBuYW1lOiB0YXhUeXBlLCBmb3JtR3JvdXAsIGZvcm1GaWVsZCB9XG4gICAgfTogUnVsZVBheWxvYWQpOiB2b2lkIHtcbiAgICAgICAgc3dpdGNoICh0YXhUeXBlKSB7XG4gICAgICAgICAgICBjYXNlIEVudW1UaXBvVHJpYnV0by5DQlM6XG4gICAgICAgICAgICBjYXNlIEVudW1UaXBvVHJpYnV0by5DQlNfVFJJQlVUQUNBT19SRUdVTEFSOlxuICAgICAgICAgICAgY2FzZSBFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMOlxuICAgICAgICAgICAgY2FzZSBFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMX1RSSUJVVEFDQU9fUkVHVUxBUjpcbiAgICAgICAgICAgIGNhc2UgRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUw6XG4gICAgICAgICAgICBjYXNlIEVudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMX1RSSUJVVEFDQU9fUkVHVUxBUjpcbiAgICAgICAgICAgIGNhc2UgRW51bVRpcG9UcmlidXRvLklTOlxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChkb2N1bWVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnSW5jb21pbmcgSW52b2ljZSc6XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdPdXRnb2luZyBJbnZvaWNlJzpcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ1B1cmNoYXNlIE9yZGVyJzpcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ1NhbGUgT3JkZXInOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhS2V5IH0gPSBmb3JtRmllbGQuZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmaWVsZCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZC5uYW1lID09PSAnc2l0dWFjYW9UcmlidXRhcmlhJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIGFzIExvb2t1cEZpZWxkO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldCgnc2l0dWFjYW9UcmlidXRhcmlhJykhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFydFdpdGgoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXAuZ2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzaXR1YWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIS52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbGQsIGN1cnJlbnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkPy5bZGF0YUtleV0gPT09XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudD8uW2RhdGFLZXldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBza2lwKDEpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgoKSA9PiBudWxsKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgodGF4Q2xhc3NpZmljYXRpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldCgnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnKSFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNldFZhbHVlKHRheENsYXNzaWZpY2F0aW9uLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbWl0RXZlbnQ6IGZhbHNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBSZWdyYSBUYXhDbGFzc2lmaWNhdGlvbkNhbGN1bGF0aW9uUnVsZSBuw6NvIGltcGxlbWVudGFkYSBwYXJhIG8gaW1wb3N0byAke3RheFR5cGV9LCBkb2N1bWVudG8gJHtkb2N1bWVudH0uYFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIEVudW1UaXBvVHJpYnV0by5DQlNfRVNUT1JOT19DUkVESVRPOlxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwOiBpYnNFc3Rvcm5vQ3JlZGl0b0Zvcm1Hcm91cCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1GaWVsZDogaWJzRXN0b3Jub0NyZWRpdG9Gb3JtRmllbGRcbiAgICAgICAgICAgICAgICAgICAgfSA9IGdyb3VwLml0ZW0uZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICh7IG5hbWUgfSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lID09PSBFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVE9STk9fQ1JFRElUT1xuICAgICAgICAgICAgICAgICAgICApITtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGFLZXk6IGNsYXNzaWZpY2FjYW9UcmlidXRhcmlhRGF0YUtleSB9ID1cbiAgICAgICAgICAgICAgICAgICAgICAgIGlic0VzdG9ybm9DcmVkaXRvRm9ybUZpZWxkLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHsgbmFtZSB9KSA9PiBuYW1lID09PSAnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICAgICApIGFzIExvb2t1cEZpZWxkO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YUtleTogc2l0dWFjYW9UcmlidXRhcmlhRGF0YUtleSB9ID1cbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1GaWVsZC5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmaWVsZCkgPT4gZmllbGQubmFtZSA9PT0gJ3NpdHVhY2FvVHJpYnV0YXJpYSdcbiAgICAgICAgICAgICAgICAgICAgICAgICkgYXMgTG9va3VwRmllbGQ7XG5cbiAgICAgICAgICAgICAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgICBpYnNFc3Rvcm5vQ3JlZGl0b0Zvcm1Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5nZXQoJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJykhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbGQsIGN1cnJlbnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkPy5bXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzaWZpY2FjYW9UcmlidXRhcmlhRGF0YUtleVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0gPT09XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudD8uW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYURhdGFLZXlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwLmdldCgnc2l0dWFjYW9UcmlidXRhcmlhJykhLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob2xkLCBjdXJyZW50KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkPy5bc2l0dWFjYW9UcmlidXRhcmlhRGF0YUtleV0gPT09XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50Py5bc2l0dWFjYW9UcmlidXRhcmlhRGF0YUtleV1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgoKSA9PiBudWxsKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0YXhDbGFzc2lmaWNhdGlvbikgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRheENsYXNzaWZpY2F0aW9uPy5pZCAhPT1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJykhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZhbHVlPy5pZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHRheENsYXNzaWZpY2F0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5nZXQoJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJykhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0YXhDbGFzc2lmaWNhdGlvbik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIEVudW1UaXBvVHJpYnV0by5JQlNfRVNUT1JOT19DUkVESVRPOlxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwOiBjYnNFc3Rvcm5vQ3JlZGl0b0Zvcm1Hcm91cCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1GaWVsZDogY2JzRXN0b3Jub0NyZWRpdG9Gb3JtRmllbGRcbiAgICAgICAgICAgICAgICAgICAgfSA9IGdyb3VwLml0ZW0uZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICh7IG5hbWUgfSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lID09PSBFbnVtVGlwb1RyaWJ1dG8uQ0JTX0VTVE9STk9fQ1JFRElUT1xuICAgICAgICAgICAgICAgICAgICApITtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGFLZXk6IGNsYXNzaWZpY2FjYW9UcmlidXRhcmlhRGF0YUtleSB9ID1cbiAgICAgICAgICAgICAgICAgICAgICAgIGNic0VzdG9ybm9DcmVkaXRvRm9ybUZpZWxkLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKHsgbmFtZSB9KSA9PiBuYW1lID09PSAnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICAgICApIGFzIExvb2t1cEZpZWxkO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YUtleTogc2l0dWFjYW9UcmlidXRhcmlhRGF0YUtleSB9ID1cbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1GaWVsZC5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmaWVsZCkgPT4gZmllbGQubmFtZSA9PT0gJ3NpdHVhY2FvVHJpYnV0YXJpYSdcbiAgICAgICAgICAgICAgICAgICAgICAgICkgYXMgTG9va3VwRmllbGQ7XG5cbiAgICAgICAgICAgICAgICAgICAgbWVyZ2UoXG4gICAgICAgICAgICAgICAgICAgICAgICBjYnNFc3Rvcm5vQ3JlZGl0b0Zvcm1Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5nZXQoJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJykhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbGQsIGN1cnJlbnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkPy5bXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzaWZpY2FjYW9UcmlidXRhcmlhRGF0YUtleVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0gPT09XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudD8uW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYURhdGFLZXlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwLmdldCgnc2l0dWFjYW9UcmlidXRhcmlhJykhLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob2xkLCBjdXJyZW50KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkPy5bc2l0dWFjYW9UcmlidXRhcmlhRGF0YUtleV0gPT09XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50Py5bc2l0dWFjYW9UcmlidXRhcmlhRGF0YUtleV1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgoKSA9PiBudWxsKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICh0YXhDbGFzc2lmaWNhdGlvbikgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRheENsYXNzaWZpY2F0aW9uPy5pZCAhPT1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJykhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZhbHVlPy5pZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHRheENsYXNzaWZpY2F0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5nZXQoJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJykhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0YXhDbGFzc2lmaWNhdGlvbik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIEVudW1UaXBvVHJpYnV0by5DQlNfQUpVU1RFOlxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwOiBpYnNBanVzdGVGb3JtR3JvdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQ6IGlic0FqdXN0ZUZvcm1GaWVsZFxuICAgICAgICAgICAgICAgICAgICB9ID0gZ3JvdXAuaXRlbS5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgKHsgbmFtZSB9KSA9PiBuYW1lID09PSBFbnVtVGlwb1RyaWJ1dG8uSUJTX0FKVVNURVxuICAgICAgICAgICAgICAgICAgICApITtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGFLZXkgfSA9IGlic0FqdXN0ZUZvcm1GaWVsZC5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgKHsgbmFtZSB9KSA9PiBuYW1lID09PSAnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICkgYXMgTG9va3VwRmllbGQ7XG5cbiAgICAgICAgICAgICAgICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgICAgICAgICAgICAgICBpYnNBanVzdGVGb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRXaXRoKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWJzQWp1c3RlRm9ybUdyb3VwLmdldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIS52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbGQsIGN1cnJlbnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkPy5bZGF0YUtleV0gPT09IGN1cnJlbnQ/LltkYXRhS2V5XVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2tpcCgxKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChbdGF4Q2xhc3NpZmljYXRpb25dKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RheENsYXNzaWZpY2F0aW9uXSBhcyBjb25zdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKFt0YXhDbGFzc2lmaWNhdGlvbl0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldCgnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnKSFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNldFZhbHVlKHRheENsYXNzaWZpY2F0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgRW51bVRpcG9UcmlidXRvLklCU19BSlVTVEU6XG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXA6IGNic0FqdXN0ZUZvcm1Hcm91cCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1GaWVsZDogY2JzQWp1c3RlRm9ybUZpZWxkXG4gICAgICAgICAgICAgICAgICAgIH0gPSBncm91cC5pdGVtLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAoeyBuYW1lIH0pID0+IG5hbWUgPT09IEVudW1UaXBvVHJpYnV0by5DQlNfQUpVU1RFXG4gICAgICAgICAgICAgICAgICAgICkhO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YUtleSB9ID0gY2JzQWp1c3RlRm9ybUZpZWxkLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAoeyBuYW1lIH0pID0+IG5hbWUgPT09ICdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYSdcbiAgICAgICAgICAgICAgICAgICAgKSBhcyBMb29rdXBGaWVsZDtcblxuICAgICAgICAgICAgICAgICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNic0FqdXN0ZUZvcm1Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5nZXQoJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJykhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFydFdpdGgoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYnNBanVzdGVGb3JtR3JvdXAuZ2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkhLnZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9sZCwgY3VycmVudCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbGQ/LltkYXRhS2V5XSA9PT0gY3VycmVudD8uW2RhdGFLZXldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBza2lwKDEpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKFt0YXhDbGFzc2lmaWNhdGlvbl0pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGF4Q2xhc3NpZmljYXRpb25dIGFzIGNvbnN0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgoW3RheENsYXNzaWZpY2F0aW9uXSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGF4Q2xhc3NpZmljYXRpb24pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBFbnVtVGlwb1RyaWJ1dG8uQ0JTX1RSQU5TRkVSRU5DSUFfQ1JFRElUTzpcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cDogaWJzVHJhbnNmZXJlbmNpYUNyZWRpdG9Gb3JtR3JvdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQ6IGlic1RyYW5zZmVyZW5jaWFDcmVkaXRvRm9ybUZpZWxkXG4gICAgICAgICAgICAgICAgICAgIH0gPSBncm91cC5pdGVtLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAoeyBuYW1lIH0pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSA9PT0gRW51bVRpcG9UcmlidXRvLklCU19UUkFOU0ZFUkVOQ0lBX0NSRURJVE9cbiAgICAgICAgICAgICAgICAgICAgKSE7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhS2V5OiBjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYURhdGFLZXkgfSA9XG4gICAgICAgICAgICAgICAgICAgICAgICBpYnNUcmFuc2ZlcmVuY2lhQ3JlZGl0b0Zvcm1GaWVsZC5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICh7IG5hbWUgfSkgPT4gbmFtZSA9PT0gJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKSBhcyBMb29rdXBGaWVsZDtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGFLZXk6IHNpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXkgfSA9XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQuZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmllbGQpID0+IGZpZWxkLm5hbWUgPT09ICdzaXR1YWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICAgICApIGFzIExvb2t1cEZpZWxkO1xuXG4gICAgICAgICAgICAgICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgICAgICAgICAgICAgaWJzVHJhbnNmZXJlbmNpYUNyZWRpdG9Gb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob2xkLCBjdXJyZW50KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZD8uW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYURhdGFLZXlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQ/LltcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWFEYXRhS2V5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ3NpdHVhY2FvVHJpYnV0YXJpYScpIS52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9sZCwgY3VycmVudCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZD8uW3NpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXldID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudD8uW3NpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAoKCkgPT4gbnVsbClcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodGF4Q2xhc3NpZmljYXRpb24pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXhDbGFzc2lmaWNhdGlvbj8uaWQgIT09XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZT8uaWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCh0YXhDbGFzc2lmaWNhdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGF4Q2xhc3NpZmljYXRpb24pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBFbnVtVGlwb1RyaWJ1dG8uSUJTX1RSQU5TRkVSRU5DSUFfQ1JFRElUTzpcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cDogY2JzVHJhbnNmZXJlbmNpYUNyZWRpdG9Gb3JtR3JvdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQ6IGNic1RyYW5zZmVyZW5jaWFDcmVkaXRvRm9ybUZpZWxkXG4gICAgICAgICAgICAgICAgICAgIH0gPSBncm91cC5pdGVtLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAoeyBuYW1lIH0pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSA9PT0gRW51bVRpcG9UcmlidXRvLkNCU19UUkFOU0ZFUkVOQ0lBX0NSRURJVE9cbiAgICAgICAgICAgICAgICAgICAgKSE7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhS2V5OiBjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYURhdGFLZXkgfSA9XG4gICAgICAgICAgICAgICAgICAgICAgICBjYnNUcmFuc2ZlcmVuY2lhQ3JlZGl0b0Zvcm1GaWVsZC5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICh7IG5hbWUgfSkgPT4gbmFtZSA9PT0gJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKSBhcyBMb29rdXBGaWVsZDtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGFLZXk6IHNpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXkgfSA9XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQuZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmllbGQpID0+IGZpZWxkLm5hbWUgPT09ICdzaXR1YWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICAgICApIGFzIExvb2t1cEZpZWxkO1xuXG4gICAgICAgICAgICAgICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgICAgICAgICAgICAgY2JzVHJhbnNmZXJlbmNpYUNyZWRpdG9Gb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob2xkLCBjdXJyZW50KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZD8uW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYURhdGFLZXlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQ/LltcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWFEYXRhS2V5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ3NpdHVhY2FvVHJpYnV0YXJpYScpIS52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9sZCwgY3VycmVudCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZD8uW3NpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXldID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudD8uW3NpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAoKCkgPT4gbnVsbClcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodGF4Q2xhc3NpZmljYXRpb24pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXhDbGFzc2lmaWNhdGlvbj8uaWQgIT09XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZT8uaWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCh0YXhDbGFzc2lmaWNhdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGF4Q2xhc3NpZmljYXRpb24pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgICAgICAgIGBSZWdyYSBUYXhDbGFzc2lmaWNhdGlvbkNhbGN1bGF0aW9uUnVsZSBuw6NvIGltcGxlbWVudGFkYSBwYXJhIG8gaW1wb3N0byAke3RheFR5cGV9LCBkb2N1bWVudG8gJHtkb2N1bWVudH0uYFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
239
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF4LWNsYXNzaWZpY2F0aW9uLWNhbGN1bGF0aW9uLXJ1bGUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Ac2VuaW9yLWdlc3Rhby1lbXByZXNhcmlhbC9lcnB4LWNvbXBvbmVudHMvIiwic291cmNlcyI6WyJjb21wb25lbnRzL3RyaWJ1dG9zL3J1bGVzL2NhbGN1bGF0aW9uL3J1bGVzL3RheC1jbGFzc2lmaWNhdGlvbi1jYWxjdWxhdGlvbi1ydWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIsTUFBTSxFQUNOLEdBQUcsRUFDSCxJQUFJLEVBQ0osU0FBUyxFQUNaLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUs5RDtJQUNJO0lBQWUsQ0FBQztJQUVoQixnREFBSyxHQUFMLFVBQU0sRUFJUTtZQUhDLDhCQUFRLEVBQ25CLGdCQUFLLEVBQ0wsWUFBNkMsRUFBckMsaUJBQWEsRUFBRSx3QkFBUyxFQUFFLHdCQUFTO1FBRTNDLFFBQVEsT0FBTyxFQUFFO1lBQ2IsS0FBSyxlQUFlLENBQUMsR0FBRyxDQUFDO1lBQ3pCLEtBQUssZUFBZSxDQUFDLHNCQUFzQixDQUFDO1lBQzVDLEtBQUssZUFBZSxDQUFDLFlBQVksQ0FBQztZQUNsQyxLQUFLLGVBQWUsQ0FBQywrQkFBK0IsQ0FBQztZQUNyRCxLQUFLLGVBQWUsQ0FBQyxhQUFhLENBQUM7WUFDbkMsS0FBSyxlQUFlLENBQUMsZ0NBQWdDLENBQUM7WUFDdEQsS0FBSyxlQUFlLENBQUMsRUFBRTtnQkFDbkI7b0JBQ0ksUUFBUSxRQUFRLEVBQUU7d0JBQ2QsS0FBSyxrQkFBa0IsQ0FBQzt3QkFDeEIsS0FBSyxrQkFBa0IsQ0FBQzt3QkFD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Z3VsYXIvY29yZSc7XG5pbXBvcnQgeyBMb29rdXBGaWVsZCB9IGZyb20gJ0BzZW5pb3JzaXN0ZW1hcy9hbmd1bGFyLWNvbXBvbmVudHMnO1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgbWVyZ2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7XG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gICAgZmlsdGVyLFxuICAgIG1hcCxcbiAgICBza2lwLFxuICAgIHN0YXJ0V2l0aFxufSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBFbnVtVGlwb1RyaWJ1dG8gfSBmcm9tICcuLi8uLi8uLi9lcnAtdHJpYnV0b3MudHlwZXMnO1xuaW1wb3J0IHsgUnVsZVBheWxvYWQgfSBmcm9tICcuLi8uLi90eXBlcy9ydWxlLXBheWxvYWQnO1xuaW1wb3J0IHsgVGF4UnVsZSB9IGZyb20gJy4uLy4uL3R5cGVzL3RheC1ydWxlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBUYXhDbGFzc2lmaWNhdGlvbkNhbGN1bGF0aW9uUnVsZSBpbXBsZW1lbnRzIFRheFJ1bGUge1xuICAgIGNvbnN0cnVjdG9yKCkge31cblxuICAgIGFwcGx5KHtcbiAgICAgICAgY29udGV4dDogeyBkb2N1bWVudCB9LFxuICAgICAgICBncm91cCxcbiAgICAgICAgaXRlbTogeyBuYW1lOiB0YXhUeXBlLCBmb3JtR3JvdXAsIGZvcm1GaWVsZCB9XG4gICAgfTogUnVsZVBheWxvYWQpOiB2b2lkIHtcbiAgICAgICAgc3dpdGNoICh0YXhUeXBlKSB7XG4gICAgICAgICAgICBjYXNlIEVudW1UaXBvVHJpYnV0by5DQlM6XG4gICAgICAgICAgICBjYXNlIEVudW1UaXBvVHJpYnV0by5DQlNfVFJJQlVUQUNBT19SRUdVTEFSOlxuICAgICAgICAgICAgY2FzZSBFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMOlxuICAgICAgICAgICAgY2FzZSBFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVEFEVUFMX1RSSUJVVEFDQU9fUkVHVUxBUjpcbiAgICAgICAgICAgIGNhc2UgRW51bVRpcG9UcmlidXRvLklCU19NVU5JQ0lQQUw6XG4gICAgICAgICAgICBjYXNlIEVudW1UaXBvVHJpYnV0by5JQlNfTVVOSUNJUEFMX1RSSUJVVEFDQU9fUkVHVUxBUjpcbiAgICAgICAgICAgIGNhc2UgRW51bVRpcG9UcmlidXRvLklTOlxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgc3dpdGNoIChkb2N1bWVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY2FzZSAnSW5jb21pbmcgSW52b2ljZSc6XG4gICAgICAgICAgICAgICAgICAgICAgICBjYXNlICdPdXRnb2luZyBJbnZvaWNlJzpcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ1B1cmNoYXNlIE9yZGVyJzpcbiAgICAgICAgICAgICAgICAgICAgICAgIGNhc2UgJ1NhbGUgT3JkZXInOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhS2V5IH0gPSBmb3JtRmllbGQuZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmaWVsZCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZC5uYW1lID09PSAnc2l0dWFjYW9UcmlidXRhcmlhJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIGFzIExvb2t1cEZpZWxkO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldCgnc2l0dWFjYW9UcmlidXRhcmlhJykhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFydFdpdGgoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXAuZ2V0KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdzaXR1YWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIS52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbGQsIGN1cnJlbnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkPy5bZGF0YUtleV0gPT09XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudD8uW2RhdGFLZXldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBza2lwKDEpLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcCgoKSA9PiBudWxsKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgodGF4Q2xhc3NpZmljYXRpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldCgnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnKSFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNldFZhbHVlKHRheENsYXNzaWZpY2F0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgUmVncmEgVGF4Q2xhc3NpZmljYXRpb25DYWxjdWxhdGlvblJ1bGUgbsOjbyBpbXBsZW1lbnRhZGEgcGFyYSBvIGltcG9zdG8gJHt0YXhUeXBlfSwgZG9jdW1lbnRvICR7ZG9jdW1lbnR9LmBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBFbnVtVGlwb1RyaWJ1dG8uQ0JTX0VTVE9STk9fQ1JFRElUTzpcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cDogaWJzRXN0b3Jub0NyZWRpdG9Gb3JtR3JvdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQ6IGlic0VzdG9ybm9DcmVkaXRvRm9ybUZpZWxkXG4gICAgICAgICAgICAgICAgICAgIH0gPSBncm91cC5pdGVtLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAoeyBuYW1lIH0pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSA9PT0gRW51bVRpcG9UcmlidXRvLklCU19FU1RPUk5PX0NSRURJVE9cbiAgICAgICAgICAgICAgICAgICAgKSE7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhS2V5OiBjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYURhdGFLZXkgfSA9XG4gICAgICAgICAgICAgICAgICAgICAgICBpYnNFc3Rvcm5vQ3JlZGl0b0Zvcm1GaWVsZC5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICh7IG5hbWUgfSkgPT4gbmFtZSA9PT0gJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKSBhcyBMb29rdXBGaWVsZDtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGFLZXk6IHNpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXkgfSA9XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQuZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmllbGQpID0+IGZpZWxkLm5hbWUgPT09ICdzaXR1YWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICAgICApIGFzIExvb2t1cEZpZWxkO1xuXG4gICAgICAgICAgICAgICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgICAgICAgICAgICAgaWJzRXN0b3Jub0NyZWRpdG9Gb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob2xkLCBjdXJyZW50KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZD8uW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYURhdGFLZXlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQ/LltcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWFEYXRhS2V5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ3NpdHVhY2FvVHJpYnV0YXJpYScpIS52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9sZCwgY3VycmVudCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZD8uW3NpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXldID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudD8uW3NpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAoKCkgPT4gbnVsbClcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodGF4Q2xhc3NpZmljYXRpb24pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXhDbGFzc2lmaWNhdGlvbj8uaWQgIT09XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZT8uaWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCh0YXhDbGFzc2lmaWNhdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGF4Q2xhc3NpZmljYXRpb24pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBFbnVtVGlwb1RyaWJ1dG8uSUJTX0VTVE9STk9fQ1JFRElUTzpcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cDogY2JzRXN0b3Jub0NyZWRpdG9Gb3JtR3JvdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQ6IGNic0VzdG9ybm9DcmVkaXRvRm9ybUZpZWxkXG4gICAgICAgICAgICAgICAgICAgIH0gPSBncm91cC5pdGVtLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAoeyBuYW1lIH0pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZSA9PT0gRW51bVRpcG9UcmlidXRvLkNCU19FU1RPUk5PX0NSRURJVE9cbiAgICAgICAgICAgICAgICAgICAgKSE7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhS2V5OiBjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYURhdGFLZXkgfSA9XG4gICAgICAgICAgICAgICAgICAgICAgICBjYnNFc3Rvcm5vQ3JlZGl0b0Zvcm1GaWVsZC5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICh7IG5hbWUgfSkgPT4gbmFtZSA9PT0gJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKSBhcyBMb29rdXBGaWVsZDtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGFLZXk6IHNpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXkgfSA9XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQuZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZmllbGQpID0+IGZpZWxkLm5hbWUgPT09ICdzaXR1YWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICAgICApIGFzIExvb2t1cEZpZWxkO1xuXG4gICAgICAgICAgICAgICAgICAgIG1lcmdlKFxuICAgICAgICAgICAgICAgICAgICAgICAgY2JzRXN0b3Jub0NyZWRpdG9Gb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob2xkLCBjdXJyZW50KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZD8uW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYURhdGFLZXlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQ/LltcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWFEYXRhS2V5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5nZXQoJ3NpdHVhY2FvVHJpYnV0YXJpYScpIS52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9sZCwgY3VycmVudCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZD8uW3NpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXldID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudD8uW3NpdHVhY2FvVHJpYnV0YXJpYURhdGFLZXldXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAoKCkgPT4gbnVsbClcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodGF4Q2xhc3NpZmljYXRpb24pID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YXhDbGFzc2lmaWNhdGlvbj8uaWQgIT09XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZT8uaWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKCh0YXhDbGFzc2lmaWNhdGlvbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc2V0VmFsdWUodGF4Q2xhc3NpZmljYXRpb24pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBFbnVtVGlwb1RyaWJ1dG8uQ0JTX0FKVVNURTpcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cDogaWJzQWp1c3RlRm9ybUdyb3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUZpZWxkOiBpYnNBanVzdGVGb3JtRmllbGRcbiAgICAgICAgICAgICAgICAgICAgfSA9IGdyb3VwLml0ZW0uZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICh7IG5hbWUgfSkgPT4gbmFtZSA9PT0gRW51bVRpcG9UcmlidXRvLklCU19BSlVTVEVcbiAgICAgICAgICAgICAgICAgICAgKSE7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhS2V5IH0gPSBpYnNBanVzdGVGb3JtRmllbGQuZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICh7IG5hbWUgfSkgPT4gbmFtZSA9PT0gJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJ1xuICAgICAgICAgICAgICAgICAgICApIGFzIExvb2t1cEZpZWxkO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICAgICAgICAgICAgICAgICAgaWJzQWp1c3RlRm9ybUdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldCgnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnKSFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXJ0V2l0aChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlic0FqdXN0ZUZvcm1Hcm91cC5nZXQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSEudmFsdWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAob2xkLCBjdXJyZW50KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9sZD8uW2RhdGFLZXldID09PSBjdXJyZW50Py5bZGF0YUtleV1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNraXAoMSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoW3RheENsYXNzaWZpY2F0aW9uXSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0YXhDbGFzc2lmaWNhdGlvbl0gYXMgY29uc3RcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChbdGF4Q2xhc3NpZmljYXRpb25dKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5nZXQoJ2NsYXNzaWZpY2FjYW9UcmlidXRhcmlhJykhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zZXRWYWx1ZSh0YXhDbGFzc2lmaWNhdGlvbik7XG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIEVudW1UaXBvVHJpYnV0by5JQlNfQUpVU1RFOlxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwOiBjYnNBanVzdGVGb3JtR3JvdXAsXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtRmllbGQ6IGNic0FqdXN0ZUZvcm1GaWVsZFxuICAgICAgICAgICAgICAgICAgICB9ID0gZ3JvdXAuaXRlbS5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgKHsgbmFtZSB9KSA9PiBuYW1lID09PSBFbnVtVGlwb1RyaWJ1dG8uQ0JTX0FKVVNURVxuICAgICAgICAgICAgICAgICAgICApITtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCB7IGRhdGFLZXkgfSA9IGNic0FqdXN0ZUZvcm1GaWVsZC5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgKHsgbmFtZSB9KSA9PiBuYW1lID09PSAnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICkgYXMgTG9va3VwRmllbGQ7XG5cbiAgICAgICAgICAgICAgICAgICAgY29tYmluZUxhdGVzdChbXG4gICAgICAgICAgICAgICAgICAgICAgICBjYnNBanVzdGVGb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZ2V0KCdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYScpIVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnRXaXRoKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2JzQWp1c3RlRm9ybUdyb3VwLmdldChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIS52YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbGQsIGN1cnJlbnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb2xkPy5bZGF0YUtleV0gPT09IGN1cnJlbnQ/LltkYXRhS2V5XVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2tpcCgxKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChbdGF4Q2xhc3NpZmljYXRpb25dKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RheENsYXNzaWZpY2F0aW9uXSBhcyBjb25zdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKFt0YXhDbGFzc2lmaWNhdGlvbl0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldCgnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnKSFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNldFZhbHVlKHRheENsYXNzaWZpY2F0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgRW51bVRpcG9UcmlidXRvLkNCU19UUkFOU0ZFUkVOQ0lBX0NSRURJVE86XG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXA6IGlic1RyYW5zZmVyZW5jaWFDcmVkaXRvRm9ybUdyb3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUZpZWxkOiBpYnNUcmFuc2ZlcmVuY2lhQ3JlZGl0b0Zvcm1GaWVsZFxuICAgICAgICAgICAgICAgICAgICB9ID0gZ3JvdXAuaXRlbS5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgKHsgbmFtZSB9KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUgPT09IEVudW1UaXBvVHJpYnV0by5JQlNfVFJBTlNGRVJFTkNJQV9DUkVESVRPXG4gICAgICAgICAgICAgICAgICAgICkhO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YUtleTogY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWFEYXRhS2V5IH0gPVxuICAgICAgICAgICAgICAgICAgICAgICAgaWJzVHJhbnNmZXJlbmNpYUNyZWRpdG9Gb3JtRmllbGQuZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoeyBuYW1lIH0pID0+IG5hbWUgPT09ICdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYSdcbiAgICAgICAgICAgICAgICAgICAgICAgICkgYXMgTG9va3VwRmllbGQ7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhS2V5OiBzaXR1YWNhb1RyaWJ1dGFyaWFEYXRhS2V5IH0gPVxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUZpZWxkLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZpZWxkKSA9PiBmaWVsZC5uYW1lID09PSAnc2l0dWFjYW9UcmlidXRhcmlhJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKSBhcyBMb29rdXBGaWVsZDtcblxuICAgICAgICAgICAgICAgICAgICBtZXJnZShcbiAgICAgICAgICAgICAgICAgICAgICAgIGlic1RyYW5zZmVyZW5jaWFDcmVkaXRvRm9ybUdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldCgnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnKSFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9sZCwgY3VycmVudCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbGQ/LltcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWFEYXRhS2V5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSA9PT1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50Py5bXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzaWZpY2FjYW9UcmlidXRhcmlhRGF0YUtleVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXAuZ2V0KCdzaXR1YWNhb1RyaWJ1dGFyaWEnKSEudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbGQsIGN1cnJlbnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbGQ/LltzaXR1YWNhb1RyaWJ1dGFyaWFEYXRhS2V5XSA9PT1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQ/LltzaXR1YWNhb1RyaWJ1dGFyaWFEYXRhS2V5XVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwKCgpID0+IG51bGwpXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHRheENsYXNzaWZpY2F0aW9uKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGF4Q2xhc3NpZmljYXRpb24/LmlkICE9PVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwLmdldCgnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnKSFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudmFsdWU/LmlkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgodGF4Q2xhc3NpZmljYXRpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldCgnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnKSFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNldFZhbHVlKHRheENsYXNzaWZpY2F0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgRW51bVRpcG9UcmlidXRvLklCU19UUkFOU0ZFUkVOQ0lBX0NSRURJVE86XG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXA6IGNic1RyYW5zZmVyZW5jaWFDcmVkaXRvRm9ybUdyb3VwLFxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUZpZWxkOiBjYnNUcmFuc2ZlcmVuY2lhQ3JlZGl0b0Zvcm1GaWVsZFxuICAgICAgICAgICAgICAgICAgICB9ID0gZ3JvdXAuaXRlbS5maW5kKFxuICAgICAgICAgICAgICAgICAgICAgICAgKHsgbmFtZSB9KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5hbWUgPT09IEVudW1UaXBvVHJpYnV0by5DQlNfVFJBTlNGRVJFTkNJQV9DUkVESVRPXG4gICAgICAgICAgICAgICAgICAgICkhO1xuXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgZGF0YUtleTogY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWFEYXRhS2V5IH0gPVxuICAgICAgICAgICAgICAgICAgICAgICAgY2JzVHJhbnNmZXJlbmNpYUNyZWRpdG9Gb3JtRmllbGQuZmluZChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoeyBuYW1lIH0pID0+IG5hbWUgPT09ICdjbGFzc2lmaWNhY2FvVHJpYnV0YXJpYSdcbiAgICAgICAgICAgICAgICAgICAgICAgICkgYXMgTG9va3VwRmllbGQ7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgeyBkYXRhS2V5OiBzaXR1YWNhb1RyaWJ1dGFyaWFEYXRhS2V5IH0gPVxuICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUZpZWxkLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGZpZWxkKSA9PiBmaWVsZC5uYW1lID09PSAnc2l0dWFjYW9UcmlidXRhcmlhJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKSBhcyBMb29rdXBGaWVsZDtcblxuICAgICAgICAgICAgICAgICAgICBtZXJnZShcbiAgICAgICAgICAgICAgICAgICAgICAgIGNic1RyYW5zZmVyZW5jaWFDcmVkaXRvRm9ybUdyb3VwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldCgnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnKSFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG9sZCwgY3VycmVudCkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbGQ/LltcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWFEYXRhS2V5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXSA9PT1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50Py5bXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzaWZpY2FjYW9UcmlidXRhcmlhRGF0YUtleVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXAuZ2V0KCdzaXR1YWNhb1RyaWJ1dGFyaWEnKSEudmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvbGQsIGN1cnJlbnQpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvbGQ/LltzaXR1YWNhb1RyaWJ1dGFyaWFEYXRhS2V5XSA9PT1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnQ/LltzaXR1YWNhb1RyaWJ1dGFyaWFEYXRhS2V5XVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFwKCgpID0+IG51bGwpXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHRheENsYXNzaWZpY2F0aW9uKSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGF4Q2xhc3NpZmljYXRpb24/LmlkICE9PVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9ybUdyb3VwLmdldCgnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnKSFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudmFsdWU/LmlkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZSgodGF4Q2xhc3NpZmljYXRpb24pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmdldCgnY2xhc3NpZmljYWNhb1RyaWJ1dGFyaWEnKSFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNldFZhbHVlKHRheENsYXNzaWZpY2F0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICAgICAgICAgICBgUmVncmEgVGF4Q2xhc3NpZmljYXRpb25DYWxjdWxhdGlvblJ1bGUgbsOjbyBpbXBsZW1lbnRhZGEgcGFyYSBvIGltcG9zdG8gJHt0YXhUeXBlfSwgZG9jdW1lbnRvICR7ZG9jdW1lbnR9LmBcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -1643,9 +1643,7 @@ let TaxClassificationCalculationRule = class TaxClassificationCalculationRule {
|
|
|
1643
1643
|
.subscribe((taxClassification) => {
|
|
1644
1644
|
formGroup
|
|
1645
1645
|
.get('classificacaoTributaria')
|
|
1646
|
-
.setValue(taxClassification
|
|
1647
|
-
emitEvent: false
|
|
1648
|
-
});
|
|
1646
|
+
.setValue(taxClassification);
|
|
1649
1647
|
});
|
|
1650
1648
|
}
|
|
1651
1649
|
break;
|
|
@@ -5608,6 +5606,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
5608
5606
|
{
|
|
5609
5607
|
field: EnumCampoTributo.Valor,
|
|
5610
5608
|
rule: this.taxAmountCalculationRule
|
|
5609
|
+
},
|
|
5610
|
+
{
|
|
5611
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
5612
|
+
rule: this.taxClassificationCalculationRule
|
|
5611
5613
|
}
|
|
5612
5614
|
],
|
|
5613
5615
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -5866,6 +5868,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
5866
5868
|
{
|
|
5867
5869
|
field: EnumCampoTributo.Valor,
|
|
5868
5870
|
rule: this.taxAmountCalculationRule
|
|
5871
|
+
},
|
|
5872
|
+
{
|
|
5873
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
5874
|
+
rule: this.taxClassificationCalculationRule
|
|
5869
5875
|
}
|
|
5870
5876
|
],
|
|
5871
5877
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -6124,6 +6130,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
6124
6130
|
{
|
|
6125
6131
|
field: EnumCampoTributo.Valor,
|
|
6126
6132
|
rule: this.taxAmountCalculationRule
|
|
6133
|
+
},
|
|
6134
|
+
{
|
|
6135
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
6136
|
+
rule: this.taxClassificationCalculationRule
|
|
6127
6137
|
}
|
|
6128
6138
|
],
|
|
6129
6139
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -6382,6 +6392,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
6382
6392
|
{
|
|
6383
6393
|
field: EnumCampoTributo.Valor,
|
|
6384
6394
|
rule: this.taxAmountCalculationRule
|
|
6395
|
+
},
|
|
6396
|
+
{
|
|
6397
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
6398
|
+
rule: this.taxClassificationCalculationRule
|
|
6385
6399
|
}
|
|
6386
6400
|
],
|
|
6387
6401
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -6640,6 +6654,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
6640
6654
|
{
|
|
6641
6655
|
field: EnumCampoTributo.Valor,
|
|
6642
6656
|
rule: this.taxAmountCalculationRule
|
|
6657
|
+
},
|
|
6658
|
+
{
|
|
6659
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
6660
|
+
rule: this.taxClassificationCalculationRule
|
|
6643
6661
|
}
|
|
6644
6662
|
],
|
|
6645
6663
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -6898,6 +6916,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
6898
6916
|
{
|
|
6899
6917
|
field: EnumCampoTributo.Valor,
|
|
6900
6918
|
rule: this.taxAmountCalculationRule
|
|
6919
|
+
},
|
|
6920
|
+
{
|
|
6921
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
6922
|
+
rule: this.taxClassificationCalculationRule
|
|
6901
6923
|
}
|
|
6902
6924
|
],
|
|
6903
6925
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -7156,6 +7178,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
7156
7178
|
{
|
|
7157
7179
|
field: EnumCampoTributo.Valor,
|
|
7158
7180
|
rule: this.taxAmountCalculationRule
|
|
7181
|
+
},
|
|
7182
|
+
{
|
|
7183
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
7184
|
+
rule: this.taxClassificationCalculationRule
|
|
7159
7185
|
}
|
|
7160
7186
|
],
|
|
7161
7187
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -7414,6 +7440,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
7414
7440
|
{
|
|
7415
7441
|
field: EnumCampoTributo.Valor,
|
|
7416
7442
|
rule: this.taxAmountCalculationRule
|
|
7443
|
+
},
|
|
7444
|
+
{
|
|
7445
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
7446
|
+
rule: this.taxClassificationCalculationRule
|
|
7417
7447
|
}
|
|
7418
7448
|
],
|
|
7419
7449
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -7672,6 +7702,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
7672
7702
|
{
|
|
7673
7703
|
field: EnumCampoTributo.Valor,
|
|
7674
7704
|
rule: this.taxAmountCalculationRule
|
|
7705
|
+
},
|
|
7706
|
+
{
|
|
7707
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
7708
|
+
rule: this.taxClassificationCalculationRule
|
|
7675
7709
|
}
|
|
7676
7710
|
],
|
|
7677
7711
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -7930,6 +7964,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
7930
7964
|
{
|
|
7931
7965
|
field: EnumCampoTributo.Valor,
|
|
7932
7966
|
rule: this.taxAmountCalculationRule
|
|
7967
|
+
},
|
|
7968
|
+
{
|
|
7969
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
7970
|
+
rule: this.taxClassificationCalculationRule
|
|
7933
7971
|
}
|
|
7934
7972
|
],
|
|
7935
7973
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -8252,6 +8290,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
8252
8290
|
{
|
|
8253
8291
|
field: EnumCampoTributo.Valor,
|
|
8254
8292
|
rule: this.taxAmountCalculationRule
|
|
8293
|
+
},
|
|
8294
|
+
{
|
|
8295
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
8296
|
+
rule: this.taxClassificationCalculationRule
|
|
8255
8297
|
}
|
|
8256
8298
|
],
|
|
8257
8299
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -8510,6 +8552,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
8510
8552
|
{
|
|
8511
8553
|
field: EnumCampoTributo.Valor,
|
|
8512
8554
|
rule: this.taxAmountCalculationRule
|
|
8555
|
+
},
|
|
8556
|
+
{
|
|
8557
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
8558
|
+
rule: this.taxClassificationCalculationRule
|
|
8513
8559
|
}
|
|
8514
8560
|
],
|
|
8515
8561
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -8768,6 +8814,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
8768
8814
|
{
|
|
8769
8815
|
field: EnumCampoTributo.Valor,
|
|
8770
8816
|
rule: this.taxAmountCalculationRule
|
|
8817
|
+
},
|
|
8818
|
+
{
|
|
8819
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
8820
|
+
rule: this.taxClassificationCalculationRule
|
|
8771
8821
|
}
|
|
8772
8822
|
],
|
|
8773
8823
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -9026,6 +9076,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
9026
9076
|
{
|
|
9027
9077
|
field: EnumCampoTributo.Valor,
|
|
9028
9078
|
rule: this.taxAmountCalculationRule
|
|
9079
|
+
},
|
|
9080
|
+
{
|
|
9081
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
9082
|
+
rule: this.taxClassificationCalculationRule
|
|
9029
9083
|
}
|
|
9030
9084
|
],
|
|
9031
9085
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -9284,6 +9338,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
9284
9338
|
{
|
|
9285
9339
|
field: EnumCampoTributo.Valor,
|
|
9286
9340
|
rule: this.taxAmountCalculationRule
|
|
9341
|
+
},
|
|
9342
|
+
{
|
|
9343
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
9344
|
+
rule: this.taxClassificationCalculationRule
|
|
9287
9345
|
}
|
|
9288
9346
|
],
|
|
9289
9347
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -9542,6 +9600,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
9542
9600
|
{
|
|
9543
9601
|
field: EnumCampoTributo.Valor,
|
|
9544
9602
|
rule: this.taxAmountCalculationRule
|
|
9603
|
+
},
|
|
9604
|
+
{
|
|
9605
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
9606
|
+
rule: this.taxClassificationCalculationRule
|
|
9545
9607
|
}
|
|
9546
9608
|
],
|
|
9547
9609
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|
|
@@ -9800,6 +9862,10 @@ let OutgoingInvoiceCalculationRulesRegistry = class OutgoingInvoiceCalculationRu
|
|
|
9800
9862
|
{
|
|
9801
9863
|
field: EnumCampoTributo.Valor,
|
|
9802
9864
|
rule: this.taxAmountCalculationRule
|
|
9865
|
+
},
|
|
9866
|
+
{
|
|
9867
|
+
field: EnumCampoTributo.ClassificacaoTributaria,
|
|
9868
|
+
rule: this.taxClassificationCalculationRule
|
|
9803
9869
|
}
|
|
9804
9870
|
],
|
|
9805
9871
|
[EnumTipoTributo.IBS_CREDITO_PRESUMIDO]: [
|