@vendasta/billing 12.16.0 → 12.18.0
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/{esm2020 → esm2022}/lib/_generated/host.service.mjs +4 -4
- package/{esm2020 → esm2022}/lib/_internal/bank-reconciliation.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/billing.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/bundle.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/contract-document.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/contract.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/credit.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/discount.api.service.mjs +5 -5
- package/esm2022/lib/_internal/enums/billable-item.enum.mjs +19 -0
- package/esm2022/lib/_internal/enums/index.mjs +35 -0
- package/esm2022/lib/_internal/interfaces/billable-item.interface.mjs +2 -0
- package/{esm2020 → esm2022}/lib/_internal/invoice.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/merchant.api.service.mjs +5 -5
- package/esm2022/lib/_internal/objects/billable-item.mjs +835 -0
- package/{esm2020 → esm2022}/lib/_internal/payment-method.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/payment.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/pricing.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/product-summary.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/product.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/purchase.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/recurring-invoice.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/refund.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/retail-customer-configuration.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/sales-credit-note.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/sales-invoice.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/subscription-relationship.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/tax.api.service.mjs +5 -5
- package/{esm2020 → esm2022}/lib/_internal/vendor.api.service.mjs +5 -5
- package/{fesm2020 → fesm2022}/vendasta-billing.mjs +238 -96
- package/fesm2022/vendasta-billing.mjs.map +1 -0
- package/lib/_internal/enums/billable-item.enum.d.ts +5 -0
- package/lib/_internal/enums/index.d.ts +1 -1
- package/lib/_internal/interfaces/billable-item.interface.d.ts +1 -0
- package/lib/_internal/objects/billable-item.d.ts +1 -0
- package/package.json +7 -13
- package/esm2020/lib/_internal/enums/billable-item.enum.mjs +0 -13
- package/esm2020/lib/_internal/enums/index.mjs +0 -35
- package/esm2020/lib/_internal/interfaces/billable-item.interface.mjs +0 -2
- package/esm2020/lib/_internal/objects/billable-item.mjs +0 -829
- package/fesm2015/vendasta-billing.mjs +0 -15963
- package/fesm2015/vendasta-billing.mjs.map +0 -1
- package/fesm2020/vendasta-billing.mjs.map +0 -1
- /package/{esm2020 → esm2022}/lib/_generated/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/applied-discount.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/card.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/contract.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/currency.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/fee.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/frequency.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/invoice.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/merchant-report.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/merchant.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/month.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/payment-card.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/payment-processor.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/payment.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/payout.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/pricing-plan.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/product-summary.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/product.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/purchase.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/recurring-invoice.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/refund.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/report-run.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/sales-credit-note.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/sales-invoice.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/sort-direction.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/subscribe-validation.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/subscription-relationship.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/enums/subscription.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/annotations.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/api.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/applied-bundle.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/applied-discount.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/applied-tax-rate.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/balance.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/bundle.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/commitment.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/common.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/contract-document.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/contract.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/credit.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/customer-summary.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/date-range.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/discount.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/external-account.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/fee.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/field-mask.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/invoice.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/merchant-report.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/merchant.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/metered-component.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/payment-card.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/payment.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/payout.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/pricing-plan-product.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/pricing-plan.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/product-pricing.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/product-summary.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/product.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/purchase.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/recurring-invoice.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/refund.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/report-run.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/retail-customer-configuration.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/sales-credit-note.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/sales-invoice.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/subscribe-validation.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/subscription-relationship.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/subscription.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/interfaces/tax-rate.interface.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/annotations.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/api.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/applied-bundle.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/applied-discount.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/applied-tax-rate.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/balance.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/bundle.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/commitment.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/common.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/contract-document.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/contract.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/credit.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/customer-summary.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/date-range.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/discount.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/external-account.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/fee.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/field-mask.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/index.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/invoice.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/merchant-report.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/merchant.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/metered-component.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/payment-card.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/payment.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/payout.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/pricing-plan-product.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/pricing-plan.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/product-pricing.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/product-summary.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/product.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/purchase.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/recurring-invoice.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/refund.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/report-run.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/retail-customer-configuration.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/sales-credit-note.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/sales-invoice.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/subscribe-validation.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/subscription-relationship.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/subscription.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/_internal/objects/tax-rate.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/currency-conversion-rate.mjs +0 -0
- /package/{esm2020 → esm2022}/lib/index.mjs +0 -0
- /package/{esm2020 → esm2022}/public_api.mjs +0 -0
- /package/{esm2020 → esm2022}/vendasta-billing.mjs +0 -0
|
@@ -43,11 +43,11 @@ export class DiscountApiService {
|
|
|
43
43
|
const request = (r.toApiJson) ? r : new ExpireDiscountRequest(r);
|
|
44
44
|
return this.http.post(this._host + "/billing.v1.DiscountService/Expire", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
45
45
|
}
|
|
46
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: DiscountApiService, deps: [{ token: i1.HttpClient }, { token: i2.HostService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
47
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: DiscountApiService, providedIn: 'root' }); }
|
|
46
48
|
}
|
|
47
|
-
|
|
48
|
-
DiscountApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: DiscountApiService, providedIn: 'root' });
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: DiscountApiService, decorators: [{
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: DiscountApiService, decorators: [{
|
|
50
50
|
type: Injectable,
|
|
51
51
|
args: [{ providedIn: 'root' }]
|
|
52
|
-
}], ctorParameters:
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.HostService }] });
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzY291bnQuYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9iaWxsaW5nX3Nkay9zcmMvbGliL19pbnRlcm5hbC9kaXNjb3VudC5hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsZUFBZTtBQUNmLG9DQUFvQztBQUNwQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDQyxxQkFBcUIsRUFDckIscUJBQXFCLEVBQ3JCLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIscUJBQXFCLEdBQzVCLE1BQU0sWUFBWSxDQUFDO0FBUXBCLE9BQU8sRUFBQyxXQUFXLEVBQUUsVUFBVSxFQUFlLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRXZELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUduQyxNQUFNLE9BQU8sa0JBQWtCO0lBRzNCLFlBQW9CLElBQWdCLEVBQVUsV0FBd0I7UUFBbEQsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBRjlELFVBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQztJQUdoRCxDQUFDO0lBRU8sVUFBVTtRQUNkLE9BQU87WUFDSCxPQUFPLEVBQUUsSUFBSSxXQUFXLENBQUM7Z0JBQ3JCLGNBQWMsRUFBRSxrQkFBa0I7YUFDckMsQ0FBQztZQUNGLGVBQWUsRUFBRSxJQUFJO1NBQ3hCLENBQUM7SUFDTixDQUFDO0lBRUQsSUFBSSxDQUFDLENBQXVEO1FBQ3hELE1BQU0sT0FBTyxHQUFHLENBQXdCLENBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQXdCLENBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNoSCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFpQyxJQUFJLENBQUMsS0FBSyxHQUFHLGtDQUFrQyxFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDekksSUFBSSxDQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUNyRCxDQUFDO0lBQ1YsQ0FBQztJQUNELE1BQU0sQ0FBQyxDQUF5RDtRQUM1RCxNQUFNLE9BQU8sR0FBRyxDQUF5QixDQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUF5QixDQUFFLENBQUMsQ0FBQyxDQUFDLElBQUkscUJBQXFCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDbkgsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBTyxJQUFJLENBQUMsS0FBSyxHQUFHLG9DQUFvQyxFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxFQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUMsQ0FBQyxDQUFDO0lBQ3JKLENBQUM7SUFDRCxNQUFNLENBQUMsQ0FBeUQ7UUFDNUQsTUFBTSxPQUFPLEdBQUcsQ0FBeUIsQ0FBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBeUIsQ0FBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25ILE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQU8sSUFBSSxDQUFDLEtBQUssR0FBRyxvQ0FBb0MsRUFBRSxPQUFPLENBQUMsU0FBUyxFQUFFLEVBQUUsRUFBQyxHQUFHLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFDLENBQUMsQ0FBQztJQUNySixDQUFDO0lBQ0QsTUFBTSxDQUFDLENBQXlEO1FBQzVELE1BQU0sT0FBTyxHQUFHLENBQXlCLENBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQXlCLENBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNuSCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFPLElBQUksQ0FBQyxLQUFLLEdBQUcsb0NBQW9DLEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLEVBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBQyxDQUFDLENBQUM7SUFDckosQ0FBQzs4R0FqQ1Esa0JBQWtCO2tIQUFsQixrQkFBa0IsY0FETixNQUFNOzsyRkFDbEIsa0JBQWtCO2tCQUQ5QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gQVBJIFNlcnZpY2UuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgICAgICBDcmVhdGVEaXNjb3VudFJlcXVlc3QsXG4gICAgICAgIEV4cGlyZURpc2NvdW50UmVxdWVzdCxcbiAgICAgICAgTGlzdERpc2NvdW50c1JlcXVlc3QsXG4gICAgICAgIExpc3REaXNjb3VudHNSZXNwb25zZSxcbiAgICAgICAgVXBkYXRlRGlzY291bnRSZXF1ZXN0LFxufSBmcm9tICcuL29iamVjdHMvJztcbmltcG9ydCB7XG4gICAgICAgIENyZWF0ZURpc2NvdW50UmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgRXhwaXJlRGlzY291bnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBMaXN0RGlzY291bnRzUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgTGlzdERpc2NvdW50c1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVEaXNjb3VudFJlcXVlc3RJbnRlcmZhY2UsXG59IGZyb20gJy4vaW50ZXJmYWNlcy8nO1xuaW1wb3J0IHtIdHRwSGVhZGVycywgSHR0cENsaWVudCwgSHR0cFJlc3BvbnNlfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0hvc3RTZXJ2aWNlfSBmcm9tICcuLi9fZ2VuZXJhdGVkL2hvc3Quc2VydmljZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHttYXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgRGlzY291bnRBcGlTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9ob3N0ID0gdGhpcy5ob3N0U2VydmljZS5ob3N0V2l0aFNjaGVtZTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBob3N0U2VydmljZTogSG9zdFNlcnZpY2UpIHtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFwaU9wdGlvbnMoKToge2hlYWRlcnM6IEh0dHBIZWFkZXJzLCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW59IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWVcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBsaXN0KHI6IExpc3REaXNjb3VudHNSZXF1ZXN0IHwgTGlzdERpc2NvdW50c1JlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPExpc3REaXNjb3VudHNSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8TGlzdERpc2NvdW50c1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8TGlzdERpc2NvdW50c1JlcXVlc3Q+cikgOiBuZXcgTGlzdERpc2NvdW50c1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxMaXN0RGlzY291bnRzUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkRpc2NvdW50U2VydmljZS9MaXN0XCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gTGlzdERpc2NvdW50c1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGNyZWF0ZShyOiBDcmVhdGVEaXNjb3VudFJlcXVlc3QgfCBDcmVhdGVEaXNjb3VudFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q3JlYXRlRGlzY291bnRSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENyZWF0ZURpc2NvdW50UmVxdWVzdD5yKSA6IG5ldyBDcmVhdGVEaXNjb3VudFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5EaXNjb3VudFNlcnZpY2UvQ3JlYXRlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICB1cGRhdGUocjogVXBkYXRlRGlzY291bnRSZXF1ZXN0IHwgVXBkYXRlRGlzY291bnRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwZGF0ZURpc2NvdW50UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxVcGRhdGVEaXNjb3VudFJlcXVlc3Q+cikgOiBuZXcgVXBkYXRlRGlzY291bnRSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuRGlzY291bnRTZXJ2aWNlL1VwZGF0ZVwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgZXhwaXJlKHI6IEV4cGlyZURpc2NvdW50UmVxdWVzdCB8IEV4cGlyZURpc2NvdW50UmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxFeHBpcmVEaXNjb3VudFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8RXhwaXJlRGlzY291bnRSZXF1ZXN0PnIpIDogbmV3IEV4cGlyZURpc2NvdW50UmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkRpc2NvdW50U2VydmljZS9FeHBpcmVcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIFxufVxuIl19
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
// *********************************
|
|
2
|
+
// Code generated by sdkgen
|
|
3
|
+
// DO NOT EDIT!.
|
|
4
|
+
//
|
|
5
|
+
// Enums.
|
|
6
|
+
// *********************************
|
|
7
|
+
export var Source;
|
|
8
|
+
(function (Source) {
|
|
9
|
+
Source[Source["SOURCE_UNSET"] = 0] = "SOURCE_UNSET";
|
|
10
|
+
Source[Source["SOURCE_SYSTEM"] = 1] = "SOURCE_SYSTEM";
|
|
11
|
+
Source[Source["SOURCE_USER"] = 2] = "SOURCE_USER";
|
|
12
|
+
})(Source || (Source = {}));
|
|
13
|
+
export var SubscriptionStatus;
|
|
14
|
+
(function (SubscriptionStatus) {
|
|
15
|
+
SubscriptionStatus[SubscriptionStatus["SUBSCRIPTION_STATUS_UNSET"] = 0] = "SUBSCRIPTION_STATUS_UNSET";
|
|
16
|
+
SubscriptionStatus[SubscriptionStatus["SUBSCRIPTION_STATUS_ACTIVE"] = 1] = "SUBSCRIPTION_STATUS_ACTIVE";
|
|
17
|
+
SubscriptionStatus[SubscriptionStatus["SUBSCRIPTION_STATUS_EXPIRED"] = 2] = "SUBSCRIPTION_STATUS_EXPIRED";
|
|
18
|
+
})(SubscriptionStatus || (SubscriptionStatus = {}));
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlsbGFibGUtaXRlbS5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vYmlsbGluZ19zZGsvc3JjL2xpYi9faW50ZXJuYWwvZW51bXMvYmlsbGFibGUtaXRlbS5lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLG9DQUFvQztBQUNwQywyQkFBMkI7QUFDM0IsZ0JBQWdCO0FBQ2hCLEVBQUU7QUFDRixTQUFTO0FBQ1Qsb0NBQW9DO0FBRXBDLE1BQU0sQ0FBTixJQUFZLE1BSVg7QUFKRCxXQUFZLE1BQU07SUFDZCxtREFBZ0IsQ0FBQTtJQUNoQixxREFBaUIsQ0FBQTtJQUNqQixpREFBZSxDQUFBO0FBQ25CLENBQUMsRUFKVyxNQUFNLEtBQU4sTUFBTSxRQUlqQjtBQUVELE1BQU0sQ0FBTixJQUFZLGtCQUlYO0FBSkQsV0FBWSxrQkFBa0I7SUFDMUIscUdBQTZCLENBQUE7SUFDN0IsdUdBQThCLENBQUE7SUFDOUIseUdBQStCLENBQUE7QUFDbkMsQ0FBQyxFQUpXLGtCQUFrQixLQUFsQixrQkFBa0IsUUFJN0IiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIEVudW1zLlxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG5cbmV4cG9ydCBlbnVtIFNvdXJjZSB7XG4gICAgU09VUkNFX1VOU0VUID0gMCxcbiAgICBTT1VSQ0VfU1lTVEVNID0gMSxcbiAgICBTT1VSQ0VfVVNFUiA9IDIsXG59XG5cbmV4cG9ydCBlbnVtIFN1YnNjcmlwdGlvblN0YXR1cyB7XG4gICAgU1VCU0NSSVBUSU9OX1NUQVRVU19VTlNFVCA9IDAsXG4gICAgU1VCU0NSSVBUSU9OX1NUQVRVU19BQ1RJVkUgPSAxLFxuICAgIFNVQlNDUklQVElPTl9TVEFUVVNfRVhQSVJFRCA9IDIsXG59XG4iXX0=
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
// *********************************
|
|
2
|
+
// Code generated by sdkgen
|
|
3
|
+
// DO NOT EDIT!.
|
|
4
|
+
//
|
|
5
|
+
// Enums Index.
|
|
6
|
+
// *********************************
|
|
7
|
+
export { Frequency, } from './frequency.enum';
|
|
8
|
+
export { Currency, } from './currency.enum';
|
|
9
|
+
export { FeeAmountType, FeeType, } from './fee.enum';
|
|
10
|
+
export { BillingStrategy, ProductPricingType, } from './pricing-plan.enum';
|
|
11
|
+
export { Source, SubscriptionStatus, } from './billable-item.enum';
|
|
12
|
+
export { DiscountType, } from './applied-discount.enum';
|
|
13
|
+
export { ContractSubscriptionStatus, } from './contract.enum';
|
|
14
|
+
export { ProductSummaryBillingStrategy, ProductSummaryDiscountDiscountType, ProductSummaryProductType, PricingRuleType, } from './product-summary.enum';
|
|
15
|
+
export { ListInvoicesRequestFiltersDateFilterDateField, InvoiceStatus, } from './invoice.enum';
|
|
16
|
+
export { PayoutStatus, PayoutType, } from './payout.enum';
|
|
17
|
+
export { SortDirection, } from './sort-direction.enum';
|
|
18
|
+
export { MerchantType, SearchMerchantsRequestSortBy, } from './merchant.enum';
|
|
19
|
+
export { Month, } from './month.enum';
|
|
20
|
+
export { MerchantReportStatus, } from './merchant-report.enum';
|
|
21
|
+
export { CardType, } from './card.enum';
|
|
22
|
+
export { DisputeStatus, PaymentAllocationType, PaymentSource, PaymentStatus, RetailPaymentReferenceType, RetailRefundFailureReason, RetailRefundReason, RetailRefundStatus, RetailTransactionType, } from './payment.enum';
|
|
23
|
+
export { PaymentCardCARD_TYPE, PaymentCardFUNDING_TYPE, } from './payment-card.enum';
|
|
24
|
+
export { ProductType, } from './product.enum';
|
|
25
|
+
export { CreditType, PurchaseStatus, ListPurchaseRequestState, } from './purchase.enum';
|
|
26
|
+
export { ReferenceType, RefundReason, RefundStatus, } from './refund.enum';
|
|
27
|
+
export { SalesCreditNoteStatus, } from './sales-credit-note.enum';
|
|
28
|
+
export { PaymentStatuses, SalesInvoiceStatus, SalesInvoiceType, } from './sales-invoice.enum';
|
|
29
|
+
export { SubscribeValidationStatus, } from './subscribe-validation.enum';
|
|
30
|
+
export { Consumer, RenewalState, } from './subscription.enum';
|
|
31
|
+
export { PaymentProcessor, } from './payment-processor.enum';
|
|
32
|
+
export { CollectionMethod, Interval, RecurringInvoiceStatus, } from './recurring-invoice.enum';
|
|
33
|
+
export { MerchantServicesReportRunStatus, MerchantServicesReportRunType, } from './report-run.enum';
|
|
34
|
+
export { EntityType, RelationshipType, } from './subscription-relationship.enum';
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9iaWxsaW5nX3Nkay9zcmMvbGliL19pbnRlcm5hbC9lbnVtcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsZUFBZTtBQUNmLG9DQUFvQztBQUNwQyxPQUFPLEVBQ0gsU0FBUyxHQUNaLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQUNILFFBQVEsR0FDWCxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFDSCxhQUFhLEVBQ2IsT0FBTyxHQUNWLE1BQU0sWUFBWSxDQUFDO0FBQ3BCLE9BQU8sRUFDSCxlQUFlLEVBQ2Ysa0JBQWtCLEdBQ3JCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUNILE1BQU0sRUFDTixrQkFBa0IsR0FDckIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQ0gsWUFBWSxHQUNmLE1BQU0seUJBQXlCLENBQUM7QUFDakMsT0FBTyxFQUNILDBCQUEwQixHQUM3QixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFDSCw2QkFBNkIsRUFDN0Isa0NBQWtDLEVBQ2xDLHlCQUF5QixFQUN6QixlQUFlLEdBQ2xCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUNILDZDQUE2QyxFQUM3QyxhQUFhLEdBQ2hCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNILFlBQVksRUFDWixVQUFVLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILGFBQWEsR0FDaEIsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQ0gsWUFBWSxFQUNaLDRCQUE0QixHQUMvQixNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFDSCxLQUFLLEdBQ1IsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUNILG9CQUFvQixHQUN2QixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFDSCxRQUFRLEdBQ1gsTUFBTSxhQUFhLENBQUM7QUFDckIsT0FBTyxFQUNILGFBQWEsRUFDYixxQkFBcUIsRUFDckIsYUFBYSxFQUNiLGFBQWEsRUFDYiwwQkFBMEIsRUFDMUIseUJBQXlCLEVBQ3pCLGtCQUFrQixFQUNsQixrQkFBa0IsRUFDbEIscUJBQXFCLEdBQ3hCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNILG9CQUFvQixFQUNwQix1QkFBdUIsR0FDMUIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQ0gsV0FBVyxHQUNkLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxFQUNILFVBQVUsRUFDVixjQUFjLEVBQ2Qsd0JBQXdCLEdBQzNCLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUNILGFBQWEsRUFDYixZQUFZLEVBQ1osWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFDSCxxQkFBcUIsR0FDeEIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQ0gsZUFBZSxFQUNmLGtCQUFrQixFQUNsQixnQkFBZ0IsR0FDbkIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQ0gseUJBQXlCLEdBQzVCLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsT0FBTyxFQUNILFFBQVEsRUFDUixZQUFZLEdBQ2YsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQ0gsZ0JBQWdCLEdBQ25CLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUNILGdCQUFnQixFQUNoQixRQUFRLEVBQ1Isc0JBQXNCLEdBQ3pCLE1BQU0sMEJBQTBCLENBQUM7QUFDbEMsT0FBTyxFQUNILCtCQUErQixFQUMvQiw2QkFBNkIsR0FDaEMsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEVBQ0gsVUFBVSxFQUNWLGdCQUFnQixHQUNuQixNQUFNLGtDQUFrQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4vLyBDb2RlIGdlbmVyYXRlZCBieSBzZGtnZW5cbi8vIERPIE5PVCBFRElUIS5cbi8vXG4vLyBFbnVtcyBJbmRleC5cbi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuZXhwb3J0IHtcbiAgICBGcmVxdWVuY3ksXG59IGZyb20gJy4vZnJlcXVlbmN5LmVudW0nO1xuZXhwb3J0IHtcbiAgICBDdXJyZW5jeSxcbn0gZnJvbSAnLi9jdXJyZW5jeS5lbnVtJztcbmV4cG9ydCB7XG4gICAgRmVlQW1vdW50VHlwZSxcbiAgICBGZWVUeXBlLFxufSBmcm9tICcuL2ZlZS5lbnVtJztcbmV4cG9ydCB7XG4gICAgQmlsbGluZ1N0cmF0ZWd5LFxuICAgIFByb2R1Y3RQcmljaW5nVHlwZSxcbn0gZnJvbSAnLi9wcmljaW5nLXBsYW4uZW51bSc7XG5leHBvcnQge1xuICAgIFNvdXJjZSxcbiAgICBTdWJzY3JpcHRpb25TdGF0dXMsXG59IGZyb20gJy4vYmlsbGFibGUtaXRlbS5lbnVtJztcbmV4cG9ydCB7XG4gICAgRGlzY291bnRUeXBlLFxufSBmcm9tICcuL2FwcGxpZWQtZGlzY291bnQuZW51bSc7XG5leHBvcnQge1xuICAgIENvbnRyYWN0U3Vic2NyaXB0aW9uU3RhdHVzLFxufSBmcm9tICcuL2NvbnRyYWN0LmVudW0nO1xuZXhwb3J0IHtcbiAgICBQcm9kdWN0U3VtbWFyeUJpbGxpbmdTdHJhdGVneSxcbiAgICBQcm9kdWN0U3VtbWFyeURpc2NvdW50RGlzY291bnRUeXBlLFxuICAgIFByb2R1Y3RTdW1tYXJ5UHJvZHVjdFR5cGUsXG4gICAgUHJpY2luZ1J1bGVUeXBlLFxufSBmcm9tICcuL3Byb2R1Y3Qtc3VtbWFyeS5lbnVtJztcbmV4cG9ydCB7XG4gICAgTGlzdEludm9pY2VzUmVxdWVzdEZpbHRlcnNEYXRlRmlsdGVyRGF0ZUZpZWxkLFxuICAgIEludm9pY2VTdGF0dXMsXG59IGZyb20gJy4vaW52b2ljZS5lbnVtJztcbmV4cG9ydCB7XG4gICAgUGF5b3V0U3RhdHVzLFxuICAgIFBheW91dFR5cGUsXG59IGZyb20gJy4vcGF5b3V0LmVudW0nO1xuZXhwb3J0IHtcbiAgICBTb3J0RGlyZWN0aW9uLFxufSBmcm9tICcuL3NvcnQtZGlyZWN0aW9uLmVudW0nO1xuZXhwb3J0IHtcbiAgICBNZXJjaGFudFR5cGUsXG4gICAgU2VhcmNoTWVyY2hhbnRzUmVxdWVzdFNvcnRCeSxcbn0gZnJvbSAnLi9tZXJjaGFudC5lbnVtJztcbmV4cG9ydCB7XG4gICAgTW9udGgsXG59IGZyb20gJy4vbW9udGguZW51bSc7XG5leHBvcnQge1xuICAgIE1lcmNoYW50UmVwb3J0U3RhdHVzLFxufSBmcm9tICcuL21lcmNoYW50LXJlcG9ydC5lbnVtJztcbmV4cG9ydCB7XG4gICAgQ2FyZFR5cGUsXG59IGZyb20gJy4vY2FyZC5lbnVtJztcbmV4cG9ydCB7XG4gICAgRGlzcHV0ZVN0YXR1cyxcbiAgICBQYXltZW50QWxsb2NhdGlvblR5cGUsXG4gICAgUGF5bWVudFNvdXJjZSxcbiAgICBQYXltZW50U3RhdHVzLFxuICAgIFJldGFpbFBheW1lbnRSZWZlcmVuY2VUeXBlLFxuICAgIFJldGFpbFJlZnVuZEZhaWx1cmVSZWFzb24sXG4gICAgUmV0YWlsUmVmdW5kUmVhc29uLFxuICAgIFJldGFpbFJlZnVuZFN0YXR1cyxcbiAgICBSZXRhaWxUcmFuc2FjdGlvblR5cGUsXG59IGZyb20gJy4vcGF5bWVudC5lbnVtJztcbmV4cG9ydCB7XG4gICAgUGF5bWVudENhcmRDQVJEX1RZUEUsXG4gICAgUGF5bWVudENhcmRGVU5ESU5HX1RZUEUsXG59IGZyb20gJy4vcGF5bWVudC1jYXJkLmVudW0nO1xuZXhwb3J0IHtcbiAgICBQcm9kdWN0VHlwZSxcbn0gZnJvbSAnLi9wcm9kdWN0LmVudW0nO1xuZXhwb3J0IHtcbiAgICBDcmVkaXRUeXBlLFxuICAgIFB1cmNoYXNlU3RhdHVzLFxuICAgIExpc3RQdXJjaGFzZVJlcXVlc3RTdGF0ZSxcbn0gZnJvbSAnLi9wdXJjaGFzZS5lbnVtJztcbmV4cG9ydCB7XG4gICAgUmVmZXJlbmNlVHlwZSxcbiAgICBSZWZ1bmRSZWFzb24sXG4gICAgUmVmdW5kU3RhdHVzLFxufSBmcm9tICcuL3JlZnVuZC5lbnVtJztcbmV4cG9ydCB7XG4gICAgU2FsZXNDcmVkaXROb3RlU3RhdHVzLFxufSBmcm9tICcuL3NhbGVzLWNyZWRpdC1ub3RlLmVudW0nO1xuZXhwb3J0IHtcbiAgICBQYXltZW50U3RhdHVzZXMsXG4gICAgU2FsZXNJbnZvaWNlU3RhdHVzLFxuICAgIFNhbGVzSW52b2ljZVR5cGUsXG59IGZyb20gJy4vc2FsZXMtaW52b2ljZS5lbnVtJztcbmV4cG9ydCB7XG4gICAgU3Vic2NyaWJlVmFsaWRhdGlvblN0YXR1cyxcbn0gZnJvbSAnLi9zdWJzY3JpYmUtdmFsaWRhdGlvbi5lbnVtJztcbmV4cG9ydCB7XG4gICAgQ29uc3VtZXIsXG4gICAgUmVuZXdhbFN0YXRlLFxufSBmcm9tICcuL3N1YnNjcmlwdGlvbi5lbnVtJztcbmV4cG9ydCB7XG4gICAgUGF5bWVudFByb2Nlc3Nvcixcbn0gZnJvbSAnLi9wYXltZW50LXByb2Nlc3Nvci5lbnVtJztcbmV4cG9ydCB7XG4gICAgQ29sbGVjdGlvbk1ldGhvZCxcbiAgICBJbnRlcnZhbCxcbiAgICBSZWN1cnJpbmdJbnZvaWNlU3RhdHVzLFxufSBmcm9tICcuL3JlY3VycmluZy1pbnZvaWNlLmVudW0nO1xuZXhwb3J0IHtcbiAgICBNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuU3RhdHVzLFxuICAgIE1lcmNoYW50U2VydmljZXNSZXBvcnRSdW5UeXBlLFxufSBmcm9tICcuL3JlcG9ydC1ydW4uZW51bSc7XG5leHBvcnQge1xuICAgIEVudGl0eVR5cGUsXG4gICAgUmVsYXRpb25zaGlwVHlwZSxcbn0gZnJvbSAnLi9zdWJzY3JpcHRpb24tcmVsYXRpb25zaGlwLmVudW0nO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmlsbGFibGUtaXRlbS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9iaWxsaW5nX3Nkay9zcmMvbGliL19pbnRlcm5hbC9pbnRlcmZhY2VzL2JpbGxhYmxlLWl0ZW0uaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbi8vIENvZGUgZ2VuZXJhdGVkIGJ5IHNka2dlblxuLy8gRE8gTk9UIEVESVQhLlxuLy9cbi8vIEludGVyZmFjZXMuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCB7IFBhZ2VkUmVxdWVzdE9wdGlvbnNJbnRlcmZhY2UsIFBhZ2VkUmVzcG9uc2VNZXRhZGF0YUludGVyZmFjZSB9IGZyb20gJy4vY29tbW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQcm9kdWN0UHJpY2luZ0ludGVyZmFjZSB9IGZyb20gJy4vcHJvZHVjdC1wcmljaW5nLmludGVyZmFjZSc7XG5pbXBvcnQgKiBhcyBlIGZyb20gJy4uL2VudW1zJztcblxuZXhwb3J0IGludGVyZmFjZSBCaWxsSXRlbVJlcXVlc3RJbnRlcmZhY2Uge1xuICAgIG1lcmNoYW50SWQ/OiBzdHJpbmc7XG4gICAgc2t1Pzogc3RyaW5nO1xuICAgIGN1c3RvbWVySWQ/OiBzdHJpbmc7XG4gICAgb3JkZXJJZD86IHN0cmluZztcbiAgICBiaWxsaW5nU3RhcnQ/OiBEYXRlO1xuICAgIHByb3JhdGVkVG8/OiBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJpbGxNdWx0aXBsZUl0ZW1zUmVxdWVzdEludGVyZmFjZSB7XG4gICAgbWVyY2hhbnRJZD86IHN0cmluZztcbiAgICBpdGVtcz86IEl0ZW1JbnRlcmZhY2VbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCaWxsTXVsdGlwbGVJdGVtc1Jlc3BvbnNlSW50ZXJmYWNlIHtcbiAgICBpZD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBCaWxsYWJsZUl0ZW1JbnRlcmZhY2Uge1xuICAgIG1lcmNoYW50SWQ/OiBzdHJpbmc7XG4gICAgc2t1Pzogc3RyaW5nO1xuICAgIGN1c3RvbWVySWQ/OiBzdHJpbmc7XG4gICAgb3JkZXJJZD86IHN0cmluZztcbiAgICBleHBpcnk/OiBEYXRlO1xuICAgIGJpbGxpbmdTdGFydD86IERhdGU7XG4gICAgY3JlYXRlZD86IERhdGU7XG4gICAgdXBkYXRlZD86IERhdGU7XG4gICAgZnJlcXVlbmN5PzogZS5GcmVxdWVuY3k7XG4gICAgbmV4dFJlbmV3YWw/OiBEYXRlO1xuICAgIGN1c3RvbWVyTmFtZT86IHN0cmluZztcbiAgICBwcm9kdWN0TmFtZT86IHN0cmluZztcbiAgICBjdXN0b21lckFkZHJlc3M/OiBCaWxsYWJsZUl0ZW1DdXN0b21lckFkZHJlc3NJbnRlcmZhY2U7XG4gICAgY3VzdG9tVW5pdFByaWNlPzogbnVtYmVyO1xuICAgIHJldGFpbEZyZXF1ZW5jeT86IGUuRnJlcXVlbmN5O1xuICAgIG5leHRSZXRhaWxSZW5ld2FsPzogRGF0ZTtcbiAgICByZXRhaWxVbml0UHJpY2U/OiBudW1iZXI7XG4gICAgc3RhdHVzPzogZS5TdWJzY3JpcHRpb25TdGF0dXM7XG4gICAgcHJpY2U/OiBQcm9kdWN0UHJpY2luZ0ludGVyZmFjZTtcbiAgICBzdWJzY3JpcHRpb25JZD86IHN0cmluZztcbiAgICBkZWxldGVkPzogRGF0ZTtcbiAgICBzb3VyY2U/OiBlLlNvdXJjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDYW5CaWxsSXRlbVJlcXVlc3RJbnRlcmZhY2Uge1xuICAgIG1lcmNoYW50SWQ/OiBzdHJpbmc7XG4gICAgc2t1Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVVzYWdlUmVxdWVzdEludGVyZmFjZSB7XG4gICAgbWVyY2hhbnRJZD86IHN0cmluZztcbiAgICBjdXN0b21lcklkPzogc3RyaW5nO1xuICAgIG9yZGVySWQ/OiBzdHJpbmc7XG4gICAgc2t1Pzogc3RyaW5nO1xuICAgIHF1YW50aXR5PzogbnVtYmVyO1xuICAgIHVzYWdlRGF0ZT86IERhdGU7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmlsbGFibGVJdGVtQ3VzdG9tZXJBZGRyZXNzSW50ZXJmYWNlIHtcbiAgICBhZGRyZXNzPzogc3RyaW5nO1xuICAgIGNpdHk/OiBzdHJpbmc7XG4gICAgc3RhdGU/OiBzdHJpbmc7XG4gICAgemlwPzogc3RyaW5nO1xuICAgIGNvdW50cnk/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVsZXRlQmlsbGFibGVJdGVtUmVxdWVzdEludGVyZmFjZSB7XG4gICAgbWVyY2hhbnRJZD86IHN0cmluZztcbiAgICBza3U/OiBzdHJpbmc7XG4gICAgY3VzdG9tZXJJZD86IHN0cmluZztcbiAgICBvcmRlcklkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4cGlyZUJpbGxhYmxlSXRlbVJlcXVlc3RJbnRlcmZhY2Uge1xuICAgIG1lcmNoYW50SWQ/OiBzdHJpbmc7XG4gICAgc2t1Pzogc3RyaW5nO1xuICAgIGN1c3RvbWVySWQ/OiBzdHJpbmc7XG4gICAgb3JkZXJJZD86IHN0cmluZztcbiAgICBleHBpcnk/OiBEYXRlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEV4cG9ydFN1YnNjcmlwdGlvbnNSZXF1ZXN0SW50ZXJmYWNlIHtcbiAgICBmaWx0ZXJzPzogTGlzdFN1YnNjcmlwdGlvbnNSZXF1ZXN0RmlsdGVyc0ludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0QmlsbGFibGVJdGVtc1JlcXVlc3RGaWx0ZXJzSW50ZXJmYWNlIHtcbiAgICBza3VzPzogc3RyaW5nW107XG4gICAgbWVyY2hhbnRJZD86IHN0cmluZztcbiAgICBjdXN0b21lcklkPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RTdWJzY3JpcHRpb25zUmVxdWVzdEZpbHRlcnNJbnRlcmZhY2Uge1xuICAgIHNrdXM/OiBzdHJpbmdbXTtcbiAgICBtZXJjaGFudElkPzogc3RyaW5nO1xuICAgIGN1c3RvbWVySWQ/OiBzdHJpbmc7XG4gICAgc2VhcmNoVGVybT86IHN0cmluZztcbiAgICBzdGF0dXM/OiBlLlN1YnNjcmlwdGlvblN0YXR1cztcbiAgICBleHBpcmVkRGF0ZUd0ZT86IERhdGU7XG4gICAgZXhwaXJlZERhdGVMdGU/OiBEYXRlO1xuICAgIGZyZXF1ZW5jaWVzPzogZS5GcmVxdWVuY3lbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRCaWxsYWJsZUl0ZW1SZXF1ZXN0SW50ZXJmYWNlIHtcbiAgICBtZXJjaGFudElkPzogc3RyaW5nO1xuICAgIHNrdT86IHN0cmluZztcbiAgICBjdXN0b21lcklkPzogc3RyaW5nO1xuICAgIG9yZGVySWQ/OiBzdHJpbmc7XG4gICAgcHJvamVjdGlvbkZpbHRlcj86IFN1YnNjcmlwdGlvblByb2plY3Rpb25GaWx0ZXJJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0QmlsbGFibGVJdGVtUmVzcG9uc2VJbnRlcmZhY2Uge1xuICAgIGl0ZW0/OiBCaWxsYWJsZUl0ZW1JbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0TXVsdGlTdWJzY3JpcHRpb25zUmVxdWVzdEludGVyZmFjZSB7XG4gICAgc3Vic2NyaXB0aW9uS2V5cz86IEdldE11bHRpU3Vic2NyaXB0aW9uc1JlcXVlc3RLZXlJbnRlcmZhY2VbXTtcbiAgICBwcm9qZWN0aW9uRmlsdGVyPzogU3Vic2NyaXB0aW9uUHJvamVjdGlvbkZpbHRlckludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRNdWx0aVN1YnNjcmlwdGlvbnNSZXNwb25zZUludGVyZmFjZSB7XG4gICAgc3Vic2NyaXB0aW9ucz86IEJpbGxhYmxlSXRlbUludGVyZmFjZVtdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEl0ZW1JbnRlcmZhY2Uge1xuICAgIHNrdT86IHN0cmluZztcbiAgICBjdXN0b21lcklkPzogc3RyaW5nO1xuICAgIG9yZGVySWQ/OiBzdHJpbmc7XG4gICAgYmlsbGluZ1N0YXJ0PzogRGF0ZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRNdWx0aVN1YnNjcmlwdGlvbnNSZXF1ZXN0S2V5SW50ZXJmYWNlIHtcbiAgICBtZXJjaGFudElkPzogc3RyaW5nO1xuICAgIHNrdT86IHN0cmluZztcbiAgICBjdXN0b21lcklkPzogc3RyaW5nO1xuICAgIG9yZGVySWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdEJpbGxhYmxlSXRlbXNSZXF1ZXN0SW50ZXJmYWNlIHtcbiAgICBmaWx0ZXJzPzogTGlzdEJpbGxhYmxlSXRlbXNSZXF1ZXN0RmlsdGVyc0ludGVyZmFjZTtcbiAgICBwYWdpbmdPcHRpb25zPzogUGFnZWRSZXF1ZXN0T3B0aW9uc0ludGVyZmFjZTtcbiAgICBzZWFyY2hUZXJtPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExpc3RCaWxsYWJsZUl0ZW1zUmVzcG9uc2VJbnRlcmZhY2Uge1xuICAgIGl0ZW1zPzogQmlsbGFibGVJdGVtSW50ZXJmYWNlW107XG4gICAgcGFnaW5nTWV0YWRhdGE/OiBQYWdlZFJlc3BvbnNlTWV0YWRhdGFJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdFN1YnNjcmlwdGlvbnNSZXF1ZXN0SW50ZXJmYWNlIHtcbiAgICBmaWx0ZXJzPzogTGlzdFN1YnNjcmlwdGlvbnNSZXF1ZXN0RmlsdGVyc0ludGVyZmFjZTtcbiAgICBwYWdpbmdPcHRpb25zPzogUGFnZWRSZXF1ZXN0T3B0aW9uc0ludGVyZmFjZTtcbiAgICBwcm9qZWN0aW9uRmlsdGVyPzogU3Vic2NyaXB0aW9uUHJvamVjdGlvbkZpbHRlckludGVyZmFjZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBMaXN0U3Vic2NyaXB0aW9uc1Jlc3BvbnNlSW50ZXJmYWNlIHtcbiAgICBzdWJzY3JpcHRpb25zPzogQmlsbGFibGVJdGVtSW50ZXJmYWNlW107XG4gICAgcGFnaW5nTWV0YWRhdGE/OiBQYWdlZFJlc3BvbnNlTWV0YWRhdGFJbnRlcmZhY2U7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Vic2NyaXB0aW9uUHJvamVjdGlvbkZpbHRlckludGVyZmFjZSB7XG4gICAgcHJpY2U/OiBib29sZWFuO1xuICAgIGluY2x1ZGVEZWxldGVkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVbmV4cGlyZUJpbGxhYmxlSXRlbVJlcXVlc3RJbnRlcmZhY2Uge1xuICAgIG1lcmNoYW50SWQ/OiBzdHJpbmc7XG4gICAgc2t1Pzogc3RyaW5nO1xuICAgIGN1c3RvbWVySWQ/OiBzdHJpbmc7XG4gICAgb3JkZXJJZD86IHN0cmluZztcbn1cblxuIl19
|
|
@@ -116,11 +116,11 @@ export class InvoiceApiService {
|
|
|
116
116
|
return this.http.post(this._host + "/billing.v1.InvoiceService/GetUpcomingInvoicePreview", request.toApiJson(), this.apiOptions())
|
|
117
117
|
.pipe(map(resp => GetUpcomingInvoicePreviewResponse.fromProto(resp)));
|
|
118
118
|
}
|
|
119
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: InvoiceApiService, deps: [{ token: i1.HttpClient }, { token: i2.HostService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
120
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: InvoiceApiService, providedIn: 'root' }); }
|
|
119
121
|
}
|
|
120
|
-
|
|
121
|
-
InvoiceApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: InvoiceApiService, providedIn: 'root' });
|
|
122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: InvoiceApiService, decorators: [{
|
|
122
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: InvoiceApiService, decorators: [{
|
|
123
123
|
type: Injectable,
|
|
124
124
|
args: [{ providedIn: 'root' }]
|
|
125
|
-
}], ctorParameters:
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52b2ljZS5hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2JpbGxpbmdfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludm9pY2UuYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DO0FBQ3BDLDJCQUEyQjtBQUMzQixnQkFBZ0I7QUFDaEIsRUFBRTtBQUNGLGVBQWU7QUFDZixvQ0FBb0M7QUFDcEMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0MsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixvQkFBb0IsRUFDcEIscUJBQXFCLEVBQ3JCLHdCQUF3QixFQUN4Qix5QkFBeUIsRUFDekIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsdUJBQXVCLEVBQ3ZCLHdCQUF3QixFQUN4QixpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLGdDQUFnQyxFQUNoQyxpQ0FBaUMsRUFDakMsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQiw0QkFBNEIsRUFDNUIsNkJBQTZCLEVBQzdCLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIscUJBQXFCLEVBQ3JCLHNCQUFzQixFQUN0QixrQkFBa0IsR0FDekIsTUFBTSxZQUFZLENBQUM7QUFvQ3BCLE9BQU8sRUFBQyxXQUFXLEVBQUUsVUFBVSxFQUFlLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRXZELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUduQyxNQUFNLE9BQU8saUJB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QkFBd0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1SCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFxQyxJQUFJLENBQUMsS0FBSyxHQUFHLDhDQUE4QyxFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDekosSUFBSSxDQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLHlCQUF5QixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUN6RCxDQUFDO0lBQ1YsQ0FBQztJQUNELHlCQUF5QixDQUFDLENBQStFO1FBQ3JHLE1BQU0sT0FBTyxHQUFHLENBQW9DLENBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQW9DLENBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxnQ0FBZ0MsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwSixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUE2QyxJQUFJLENBQUMsS0FBSyxHQUFHLHNEQUFzRCxFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDekssSUFBSSxDQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGlDQUFpQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUNqRSxDQUFDO0lBQ1YsQ0FBQzs7OEdBcElRLGlCQUFpQjtrSEFBakIsaUJBQWlCLGNBREwsTUFBTTsyRkFDbEIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gQVBJIFNlcnZpY2UuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgICAgICBBZGRCdW5kbGVSZXF1ZXN0LFxuICAgICAgICBBZGRCdW5kbGVSZXNwb25zZSxcbiAgICAgICAgQWRkTGluZUl0ZW1SZXF1ZXN0LFxuICAgICAgICBBZGRMaW5lSXRlbVJlc3BvbnNlLFxuICAgICAgICBDaGFyZ2VJbnZvaWNlUmVxdWVzdCxcbiAgICAgICAgQ3JlYXRlSW52b2ljZVJlcXVlc3QsXG4gICAgICAgIENyZWF0ZUludm9pY2VSZXNwb25zZSxcbiAgICAgICAgQ3JlYXRlUGF5bWVudExpbmtSZXF1ZXN0LFxuICAgICAgICBDcmVhdGVQYXltZW50TGlua1Jlc3BvbnNlLFxuICAgICAgICBEZWxldGVJbnZvaWNlUmVxdWVzdCxcbiAgICAgICAgRGVsZXRlTGluZUl0ZW1SZXF1ZXN0LFxuICAgICAgICBEZWxldGVMaW5lSXRlbVJlc3BvbnNlLFxuICAgICAgICBEdXBsaWNhdGVJbnZvaWNlUmVxdWVzdCxcbiAgICAgICAgRHVwbGljYXRlSW52b2ljZVJlc3BvbnNlLFxuICAgICAgICBHZXRJbnZvaWNlUmVxdWVzdCxcbiAgICAgICAgR2V0SW52b2ljZVJlc3BvbnNlLFxuICAgICAgICBHZXRVcGNvbWluZ0ludm9pY2VQcmV2aWV3UmVxdWVzdCxcbiAgICAgICAgR2V0VXBjb21pbmdJbnZvaWNlUHJldmlld1Jlc3BvbnNlLFxuICAgICAgICBMaXN0SW52b2ljZXNSZXF1ZXN0LFxuICAgICAgICBMaXN0SW52b2ljZXNSZXNwb25zZSxcbiAgICAgICAgUGF5SW52b2ljZVJlcXVlc3QsXG4gICAgICAgIFJlbW92ZUJ1bmRsZVJlcXVlc3QsXG4gICAgICAgIFJlbW92ZUJ1bmRsZVJlc3BvbnNlLFxuICAgICAgICBTZW5kSW52b2ljZVJlcXVlc3QsXG4gICAgICAgIFVwZGF0ZUJ1bmRsZVJlcXVlc3QsXG4gICAgICAgIFVwZGF0ZUJ1bmRsZVJlc3BvbnNlLFxuICAgICAgICBVcGRhdGVEZWZhdWx0VGF4UmF0ZXNSZXF1ZXN0LFxuICAgICAgICBVcGRhdGVEZWZhdWx0VGF4UmF0ZXNSZXNwb25zZSxcbiAgICAgICAgVXBkYXRlSW52b2ljZVJlcXVlc3QsXG4gICAgICAgIFVwZGF0ZUludm9pY2VSZXNwb25zZSxcbiAgICAgICAgVXBkYXRlTGluZUl0ZW1SZXF1ZXN0LFxuICAgICAgICBVcGRhdGVMaW5lSXRlbVJlc3BvbnNlLFxuICAgICAgICBWb2lkSW52b2ljZVJlcXVlc3QsXG59IGZyb20gJy4vb2JqZWN0cy8nO1xuaW1wb3J0IHtcbiAgICAgICAgQWRkQnVuZGxlUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQWRkQnVuZGxlUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIEFkZExpbmVJdGVtUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQWRkTGluZUl0ZW1SZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgQ2hhcmdlSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIENyZWF0ZUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBDcmVhdGVJbnZvaWNlUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIENyZWF0ZVBheW1lbnRMaW5rUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ3JlYXRlUGF5bWVudExpbmtSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgRGVsZXRlSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIERlbGV0ZUxpbmVJdGVtUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgRGVsZXRlTGluZUl0ZW1SZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgRHVwbGljYXRlSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIER1cGxpY2F0ZUludm9pY2VSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0SW52b2ljZVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldEludm9pY2VSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0VXBjb21pbmdJbnZvaWNlUHJldmlld1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldFVwY29taW5nSW52b2ljZVByZXZpZXdSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgTGlzdEludm9pY2VzUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgTGlzdEludm9pY2VzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIFBheUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBSZW1vdmVCdW5kbGVSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBSZW1vdmVCdW5kbGVSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgU2VuZEludm9pY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVCdW5kbGVSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVCdW5kbGVSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgVXBkYXRlRGVmYXVsdFRheFJhdGVzUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgVXBkYXRlRGVmYXVsdFRheFJhdGVzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIFVwZGF0ZUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVJbnZvaWNlUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIFVwZGF0ZUxpbmVJdGVtUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgVXBkYXRlTGluZUl0ZW1SZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgVm9pZEludm9pY2VSZXF1ZXN0SW50ZXJmYWNlLFxufSBmcm9tICcuL2ludGVyZmFjZXMvJztcbmltcG9ydCB7SHR0cEhlYWRlcnMsIEh0dHBDbGllbnQsIEh0dHBSZXNwb25zZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtIb3N0U2VydmljZX0gZnJvbSAnLi4vX2dlbmVyYXRlZC9ob3N0LnNlcnZpY2UnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIEludm9pY2VBcGlTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9ob3N0ID0gdGhpcy5ob3N0U2VydmljZS5ob3N0V2l0aFNjaGVtZTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBob3N0U2VydmljZTogSG9zdFNlcnZpY2UpIHtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFwaU9wdGlvbnMoKToge2hlYWRlcnM6IEh0dHBIZWFkZXJzLCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW59IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWVcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBhZGRCdW5kbGUocjogQWRkQnVuZGxlUmVxdWVzdCB8IEFkZEJ1bmRsZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEFkZEJ1bmRsZVJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxBZGRCdW5kbGVSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEFkZEJ1bmRsZVJlcXVlc3Q+cikgOiBuZXcgQWRkQnVuZGxlUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEFkZEJ1bmRsZVJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9BZGRCdW5kbGVcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBBZGRCdW5kbGVSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBhZGRMaW5lSXRlbShyOiBBZGRMaW5lSXRlbVJlcXVlc3QgfCBBZGRMaW5lSXRlbVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEFkZExpbmVJdGVtUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEFkZExpbmVJdGVtUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxBZGRMaW5lSXRlbVJlcXVlc3Q+cikgOiBuZXcgQWRkTGluZUl0ZW1SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QWRkTGluZUl0ZW1SZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvQWRkTGluZUl0ZW1cIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBBZGRMaW5lSXRlbVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGNoYXJnZShyOiBDaGFyZ2VJbnZvaWNlUmVxdWVzdCB8IENoYXJnZUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENoYXJnZUludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENoYXJnZUludm9pY2VSZXF1ZXN0PnIpIDogbmV3IENoYXJnZUludm9pY2VSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvQ2hhcmdlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBjcmVhdGUocjogQ3JlYXRlSW52b2ljZVJlcXVlc3QgfCBDcmVhdGVJbnZvaWNlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8Q3JlYXRlSW52b2ljZVJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxDcmVhdGVJbnZvaWNlUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxDcmVhdGVJbnZvaWNlUmVxdWVzdD5yKSA6IG5ldyBDcmVhdGVJbnZvaWNlUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PENyZWF0ZUludm9pY2VSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvQ3JlYXRlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gQ3JlYXRlSW52b2ljZVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGRlbGV0ZShyOiBEZWxldGVJbnZvaWNlUmVxdWVzdCB8IERlbGV0ZUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPERlbGV0ZUludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPERlbGV0ZUludm9pY2VSZXF1ZXN0PnIpIDogbmV3IERlbGV0ZUludm9pY2VSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvRGVsZXRlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBkZWxldGVMaW5lSXRlbShyOiBEZWxldGVMaW5lSXRlbVJlcXVlc3QgfCBEZWxldGVMaW5lSXRlbVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPERlbGV0ZUxpbmVJdGVtUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPERlbGV0ZUxpbmVJdGVtUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxEZWxldGVMaW5lSXRlbVJlcXVlc3Q+cikgOiBuZXcgRGVsZXRlTGluZUl0ZW1SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8RGVsZXRlTGluZUl0ZW1SZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvRGVsZXRlTGluZUl0ZW1cIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBEZWxldGVMaW5lSXRlbVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldChyOiBHZXRJbnZvaWNlUmVxdWVzdCB8IEdldEludm9pY2VSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRJbnZvaWNlUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldEludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEdldEludm9pY2VSZXF1ZXN0PnIpIDogbmV3IEdldEludm9pY2VSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0SW52b2ljZVJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9HZXRcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRJbnZvaWNlUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgcmVtb3ZlQnVuZGxlKHI6IFJlbW92ZUJ1bmRsZVJlcXVlc3QgfCBSZW1vdmVCdW5kbGVSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxSZW1vdmVCdW5kbGVSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8UmVtb3ZlQnVuZGxlUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxSZW1vdmVCdW5kbGVSZXF1ZXN0PnIpIDogbmV3IFJlbW92ZUJ1bmRsZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxSZW1vdmVCdW5kbGVSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvUmVtb3ZlQnVuZGxlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gUmVtb3ZlQnVuZGxlUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgc2VuZChyOiBTZW5kSW52b2ljZVJlcXVlc3QgfCBTZW5kSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2VuZEludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFNlbmRJbnZvaWNlUmVxdWVzdD5yKSA6IG5ldyBTZW5kSW52b2ljZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9TZW5kXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBsaXN0KHI6IExpc3RJbnZvaWNlc1JlcXVlc3QgfCBMaXN0SW52b2ljZXNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxMaXN0SW52b2ljZXNSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8TGlzdEludm9pY2VzUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxMaXN0SW52b2ljZXNSZXF1ZXN0PnIpIDogbmV3IExpc3RJbnZvaWNlc1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxMaXN0SW52b2ljZXNSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvTGlzdFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IExpc3RJbnZvaWNlc1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIHVwZGF0ZShyOiBVcGRhdGVJbnZvaWNlUmVxdWVzdCB8IFVwZGF0ZUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxVcGRhdGVJbnZvaWNlUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwZGF0ZUludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFVwZGF0ZUludm9pY2VSZXF1ZXN0PnIpIDogbmV3IFVwZGF0ZUludm9pY2VSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8VXBkYXRlSW52b2ljZVJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9VcGRhdGVcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBVcGRhdGVJbnZvaWNlUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgcGF5KHI6IFBheUludm9pY2VSZXF1ZXN0IHwgUGF5SW52b2ljZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8UGF5SW52b2ljZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8UGF5SW52b2ljZVJlcXVlc3Q+cikgOiBuZXcgUGF5SW52b2ljZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9QYXlcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIHVwZGF0ZURlZmF1bHRUYXhSYXRlcyhyOiBVcGRhdGVEZWZhdWx0VGF4UmF0ZXNSZXF1ZXN0IHwgVXBkYXRlRGVmYXVsdFRheFJhdGVzUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8VXBkYXRlRGVmYXVsdFRheFJhdGVzUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwZGF0ZURlZmF1bHRUYXhSYXRlc1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8VXBkYXRlRGVmYXVsdFRheFJhdGVzUmVxdWVzdD5yKSA6IG5ldyBVcGRhdGVEZWZhdWx0VGF4UmF0ZXNSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8VXBkYXRlRGVmYXVsdFRheFJhdGVzUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkludm9pY2VTZXJ2aWNlL1VwZGF0ZURlZmF1bHRUYXhSYXRlc1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IFVwZGF0ZURlZmF1bHRUYXhSYXRlc1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIHVwZGF0ZUxpbmVJdGVtKHI6IFVwZGF0ZUxpbmVJdGVtUmVxdWVzdCB8IFVwZGF0ZUxpbmVJdGVtUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8VXBkYXRlTGluZUl0ZW1SZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8VXBkYXRlTGluZUl0ZW1SZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFVwZGF0ZUxpbmVJdGVtUmVxdWVzdD5yKSA6IG5ldyBVcGRhdGVMaW5lSXRlbVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxVcGRhdGVMaW5lSXRlbVJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9VcGRhdGVMaW5lSXRlbVwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IFVwZGF0ZUxpbmVJdGVtUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgdm9pZChyOiBWb2lkSW52b2ljZVJlcXVlc3QgfCBWb2lkSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Vm9pZEludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFZvaWRJbnZvaWNlUmVxdWVzdD5yKSA6IG5ldyBWb2lkSW52b2ljZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9Wb2lkXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBkdXBsaWNhdGUocjogRHVwbGljYXRlSW52b2ljZVJlcXVlc3QgfCBEdXBsaWNhdGVJbnZvaWNlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8RHVwbGljYXRlSW52b2ljZVJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxEdXBsaWNhdGVJbnZvaWNlUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxEdXBsaWNhdGVJbnZvaWNlUmVxdWVzdD5yKSA6IG5ldyBEdXBsaWNhdGVJbnZvaWNlUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PER1cGxpY2F0ZUludm9pY2VSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvRHVwbGljYXRlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gRHVwbGljYXRlSW52b2ljZVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIHVwZGF0ZUJ1bmRsZShyOiBVcGRhdGVCdW5kbGVSZXF1ZXN0IHwgVXBkYXRlQnVuZGxlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8VXBkYXRlQnVuZGxlUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwZGF0ZUJ1bmRsZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8VXBkYXRlQnVuZGxlUmVxdWVzdD5yKSA6IG5ldyBVcGRhdGVCdW5kbGVSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8VXBkYXRlQnVuZGxlUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkludm9pY2VTZXJ2aWNlL1VwZGF0ZUJ1bmRsZVwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IFVwZGF0ZUJ1bmRsZVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGNyZWF0ZVBheW1lbnRMaW5rKHI6IENyZWF0ZVBheW1lbnRMaW5rUmVxdWVzdCB8IENyZWF0ZVBheW1lbnRMaW5rUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8Q3JlYXRlUGF5bWVudExpbmtSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q3JlYXRlUGF5bWVudExpbmtSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENyZWF0ZVBheW1lbnRMaW5rUmVxdWVzdD5yKSA6IG5ldyBDcmVhdGVQYXltZW50TGlua1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxDcmVhdGVQYXltZW50TGlua1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9DcmVhdGVQYXltZW50TGlua1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IENyZWF0ZVBheW1lbnRMaW5rUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZ2V0VXBjb21pbmdJbnZvaWNlUHJldmlldyhyOiBHZXRVcGNvbWluZ0ludm9pY2VQcmV2aWV3UmVxdWVzdCB8IEdldFVwY29taW5nSW52b2ljZVByZXZpZXdSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRVcGNvbWluZ0ludm9pY2VQcmV2aWV3UmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldFVwY29taW5nSW52b2ljZVByZXZpZXdSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEdldFVwY29taW5nSW52b2ljZVByZXZpZXdSZXF1ZXN0PnIpIDogbmV3IEdldFVwY29taW5nSW52b2ljZVByZXZpZXdSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0VXBjb21pbmdJbnZvaWNlUHJldmlld1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9HZXRVcGNvbWluZ0ludm9pY2VQcmV2aWV3XCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0VXBjb21pbmdJbnZvaWNlUHJldmlld1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIFxufVxuIl19
|
|
125
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.HostService }] });
|
|
126
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW52b2ljZS5hcGkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2JpbGxpbmdfc2RrL3NyYy9saWIvX2ludGVybmFsL2ludm9pY2UuYXBpLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsb0NBQW9DO0FBQ3BDLDJCQUEyQjtBQUMzQixnQkFBZ0I7QUFDaEIsRUFBRTtBQUNGLGVBQWU7QUFDZixvQ0FBb0M7QUFDcEMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQ0MsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixvQkFBb0IsRUFDcEIscUJBQXFCLEVBQ3JCLHdCQUF3QixFQUN4Qix5QkFBeUIsRUFDekIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsdUJBQXVCLEVBQ3ZCLHdCQUF3QixFQUN4QixpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLGdDQUFnQyxFQUNoQyxpQ0FBaUMsRUFDakMsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBQ25CLG9CQUFvQixFQUNwQiw0QkFBNEIsRUFDNUIsNkJBQTZCLEVBQzdCLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIscUJBQXFCLEVBQ3JCLHNCQUFzQixFQUN0QixrQkFBa0IsR0FDekIsTUFBTSxZQUFZLENBQUM7QUFvQ3BCLE9BQU8sRUFBQyxXQUFXLEVBQUUsVUFBVSxFQUFlLE1BQU0sc0JBQXNCLENBQUM7QUFDM0UsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBRXZELE9BQU8sRUFBQyxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUduQyxNQUFNLE9BQU8saUJB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QkFBd0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM1SCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFxQyxJQUFJLENBQUMsS0FBSyxHQUFHLDhDQUE4QyxFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDekosSUFBSSxDQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLHlCQUF5QixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUN6RCxDQUFDO0lBQ1YsQ0FBQztJQUNELHlCQUF5QixDQUFDLENBQStFO1FBQ3JHLE1BQU0sT0FBTyxHQUFHLENBQW9DLENBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQW9DLENBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxnQ0FBZ0MsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwSixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUE2QyxJQUFJLENBQUMsS0FBSyxHQUFHLHNEQUFzRCxFQUFFLE9BQU8sQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7YUFDekssSUFBSSxDQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGlDQUFpQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUNqRSxDQUFDO0lBQ1YsQ0FBQzs4R0FwSVEsaUJBQWlCO2tIQUFqQixpQkFBaUIsY0FETCxNQUFNOzsyRkFDbEIsaUJBQWlCO2tCQUQ3QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gQVBJIFNlcnZpY2UuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgICAgICBBZGRCdW5kbGVSZXF1ZXN0LFxuICAgICAgICBBZGRCdW5kbGVSZXNwb25zZSxcbiAgICAgICAgQWRkTGluZUl0ZW1SZXF1ZXN0LFxuICAgICAgICBBZGRMaW5lSXRlbVJlc3BvbnNlLFxuICAgICAgICBDaGFyZ2VJbnZvaWNlUmVxdWVzdCxcbiAgICAgICAgQ3JlYXRlSW52b2ljZVJlcXVlc3QsXG4gICAgICAgIENyZWF0ZUludm9pY2VSZXNwb25zZSxcbiAgICAgICAgQ3JlYXRlUGF5bWVudExpbmtSZXF1ZXN0LFxuICAgICAgICBDcmVhdGVQYXltZW50TGlua1Jlc3BvbnNlLFxuICAgICAgICBEZWxldGVJbnZvaWNlUmVxdWVzdCxcbiAgICAgICAgRGVsZXRlTGluZUl0ZW1SZXF1ZXN0LFxuICAgICAgICBEZWxldGVMaW5lSXRlbVJlc3BvbnNlLFxuICAgICAgICBEdXBsaWNhdGVJbnZvaWNlUmVxdWVzdCxcbiAgICAgICAgRHVwbGljYXRlSW52b2ljZVJlc3BvbnNlLFxuICAgICAgICBHZXRJbnZvaWNlUmVxdWVzdCxcbiAgICAgICAgR2V0SW52b2ljZVJlc3BvbnNlLFxuICAgICAgICBHZXRVcGNvbWluZ0ludm9pY2VQcmV2aWV3UmVxdWVzdCxcbiAgICAgICAgR2V0VXBjb21pbmdJbnZvaWNlUHJldmlld1Jlc3BvbnNlLFxuICAgICAgICBMaXN0SW52b2ljZXNSZXF1ZXN0LFxuICAgICAgICBMaXN0SW52b2ljZXNSZXNwb25zZSxcbiAgICAgICAgUGF5SW52b2ljZVJlcXVlc3QsXG4gICAgICAgIFJlbW92ZUJ1bmRsZVJlcXVlc3QsXG4gICAgICAgIFJlbW92ZUJ1bmRsZVJlc3BvbnNlLFxuICAgICAgICBTZW5kSW52b2ljZVJlcXVlc3QsXG4gICAgICAgIFVwZGF0ZUJ1bmRsZVJlcXVlc3QsXG4gICAgICAgIFVwZGF0ZUJ1bmRsZVJlc3BvbnNlLFxuICAgICAgICBVcGRhdGVEZWZhdWx0VGF4UmF0ZXNSZXF1ZXN0LFxuICAgICAgICBVcGRhdGVEZWZhdWx0VGF4UmF0ZXNSZXNwb25zZSxcbiAgICAgICAgVXBkYXRlSW52b2ljZVJlcXVlc3QsXG4gICAgICAgIFVwZGF0ZUludm9pY2VSZXNwb25zZSxcbiAgICAgICAgVXBkYXRlTGluZUl0ZW1SZXF1ZXN0LFxuICAgICAgICBVcGRhdGVMaW5lSXRlbVJlc3BvbnNlLFxuICAgICAgICBWb2lkSW52b2ljZVJlcXVlc3QsXG59IGZyb20gJy4vb2JqZWN0cy8nO1xuaW1wb3J0IHtcbiAgICAgICAgQWRkQnVuZGxlUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQWRkQnVuZGxlUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIEFkZExpbmVJdGVtUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQWRkTGluZUl0ZW1SZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgQ2hhcmdlSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIENyZWF0ZUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBDcmVhdGVJbnZvaWNlUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIENyZWF0ZVBheW1lbnRMaW5rUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ3JlYXRlUGF5bWVudExpbmtSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgRGVsZXRlSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIERlbGV0ZUxpbmVJdGVtUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgRGVsZXRlTGluZUl0ZW1SZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgRHVwbGljYXRlSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIER1cGxpY2F0ZUludm9pY2VSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0SW52b2ljZVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldEludm9pY2VSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0VXBjb21pbmdJbnZvaWNlUHJldmlld1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldFVwY29taW5nSW52b2ljZVByZXZpZXdSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgTGlzdEludm9pY2VzUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgTGlzdEludm9pY2VzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIFBheUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBSZW1vdmVCdW5kbGVSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBSZW1vdmVCdW5kbGVSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgU2VuZEludm9pY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVCdW5kbGVSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVCdW5kbGVSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgVXBkYXRlRGVmYXVsdFRheFJhdGVzUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgVXBkYXRlRGVmYXVsdFRheFJhdGVzUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIFVwZGF0ZUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVJbnZvaWNlUmVzcG9uc2VJbnRlcmZhY2UsXG4gICAgICAgIFVwZGF0ZUxpbmVJdGVtUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgVXBkYXRlTGluZUl0ZW1SZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgVm9pZEludm9pY2VSZXF1ZXN0SW50ZXJmYWNlLFxufSBmcm9tICcuL2ludGVyZmFjZXMvJztcbmltcG9ydCB7SHR0cEhlYWRlcnMsIEh0dHBDbGllbnQsIEh0dHBSZXNwb25zZX0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtIb3N0U2VydmljZX0gZnJvbSAnLi4vX2dlbmVyYXRlZC9ob3N0LnNlcnZpY2UnO1xuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7bWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBJbmplY3RhYmxlKHtwcm92aWRlZEluOiAncm9vdCd9KVxuZXhwb3J0IGNsYXNzIEludm9pY2VBcGlTZXJ2aWNlIHtcbiAgICBwcml2YXRlIF9ob3N0ID0gdGhpcy5ob3N0U2VydmljZS5ob3N0V2l0aFNjaGVtZTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCwgcHJpdmF0ZSBob3N0U2VydmljZTogSG9zdFNlcnZpY2UpIHtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFwaU9wdGlvbnMoKToge2hlYWRlcnM6IEh0dHBIZWFkZXJzLCB3aXRoQ3JlZGVudGlhbHM6IGJvb2xlYW59IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJ1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB3aXRoQ3JlZGVudGlhbHM6IHRydWVcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBhZGRCdW5kbGUocjogQWRkQnVuZGxlUmVxdWVzdCB8IEFkZEJ1bmRsZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEFkZEJ1bmRsZVJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxBZGRCdW5kbGVSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEFkZEJ1bmRsZVJlcXVlc3Q+cikgOiBuZXcgQWRkQnVuZGxlUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEFkZEJ1bmRsZVJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9BZGRCdW5kbGVcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBBZGRCdW5kbGVSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBhZGRMaW5lSXRlbShyOiBBZGRMaW5lSXRlbVJlcXVlc3QgfCBBZGRMaW5lSXRlbVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEFkZExpbmVJdGVtUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEFkZExpbmVJdGVtUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxBZGRMaW5lSXRlbVJlcXVlc3Q+cikgOiBuZXcgQWRkTGluZUl0ZW1SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8QWRkTGluZUl0ZW1SZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvQWRkTGluZUl0ZW1cIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBBZGRMaW5lSXRlbVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGNoYXJnZShyOiBDaGFyZ2VJbnZvaWNlUmVxdWVzdCB8IENoYXJnZUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENoYXJnZUludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENoYXJnZUludm9pY2VSZXF1ZXN0PnIpIDogbmV3IENoYXJnZUludm9pY2VSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvQ2hhcmdlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBjcmVhdGUocjogQ3JlYXRlSW52b2ljZVJlcXVlc3QgfCBDcmVhdGVJbnZvaWNlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8Q3JlYXRlSW52b2ljZVJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxDcmVhdGVJbnZvaWNlUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxDcmVhdGVJbnZvaWNlUmVxdWVzdD5yKSA6IG5ldyBDcmVhdGVJbnZvaWNlUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PENyZWF0ZUludm9pY2VSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvQ3JlYXRlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gQ3JlYXRlSW52b2ljZVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGRlbGV0ZShyOiBEZWxldGVJbnZvaWNlUmVxdWVzdCB8IERlbGV0ZUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPERlbGV0ZUludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPERlbGV0ZUludm9pY2VSZXF1ZXN0PnIpIDogbmV3IERlbGV0ZUludm9pY2VSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvRGVsZXRlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBkZWxldGVMaW5lSXRlbShyOiBEZWxldGVMaW5lSXRlbVJlcXVlc3QgfCBEZWxldGVMaW5lSXRlbVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPERlbGV0ZUxpbmVJdGVtUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPERlbGV0ZUxpbmVJdGVtUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxEZWxldGVMaW5lSXRlbVJlcXVlc3Q+cikgOiBuZXcgRGVsZXRlTGluZUl0ZW1SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8RGVsZXRlTGluZUl0ZW1SZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvRGVsZXRlTGluZUl0ZW1cIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBEZWxldGVMaW5lSXRlbVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldChyOiBHZXRJbnZvaWNlUmVxdWVzdCB8IEdldEludm9pY2VSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRJbnZvaWNlUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldEludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEdldEludm9pY2VSZXF1ZXN0PnIpIDogbmV3IEdldEludm9pY2VSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0SW52b2ljZVJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9HZXRcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRJbnZvaWNlUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgcmVtb3ZlQnVuZGxlKHI6IFJlbW92ZUJ1bmRsZVJlcXVlc3QgfCBSZW1vdmVCdW5kbGVSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxSZW1vdmVCdW5kbGVSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8UmVtb3ZlQnVuZGxlUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxSZW1vdmVCdW5kbGVSZXF1ZXN0PnIpIDogbmV3IFJlbW92ZUJ1bmRsZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxSZW1vdmVCdW5kbGVSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvUmVtb3ZlQnVuZGxlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gUmVtb3ZlQnVuZGxlUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgc2VuZChyOiBTZW5kSW52b2ljZVJlcXVlc3QgfCBTZW5kSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2VuZEludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFNlbmRJbnZvaWNlUmVxdWVzdD5yKSA6IG5ldyBTZW5kSW52b2ljZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9TZW5kXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBsaXN0KHI6IExpc3RJbnZvaWNlc1JlcXVlc3QgfCBMaXN0SW52b2ljZXNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxMaXN0SW52b2ljZXNSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8TGlzdEludm9pY2VzUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxMaXN0SW52b2ljZXNSZXF1ZXN0PnIpIDogbmV3IExpc3RJbnZvaWNlc1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxMaXN0SW52b2ljZXNSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvTGlzdFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IExpc3RJbnZvaWNlc1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIHVwZGF0ZShyOiBVcGRhdGVJbnZvaWNlUmVxdWVzdCB8IFVwZGF0ZUludm9pY2VSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxVcGRhdGVJbnZvaWNlUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwZGF0ZUludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFVwZGF0ZUludm9pY2VSZXF1ZXN0PnIpIDogbmV3IFVwZGF0ZUludm9pY2VSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8VXBkYXRlSW52b2ljZVJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9VcGRhdGVcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBVcGRhdGVJbnZvaWNlUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgcGF5KHI6IFBheUludm9pY2VSZXF1ZXN0IHwgUGF5SW52b2ljZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8UGF5SW52b2ljZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8UGF5SW52b2ljZVJlcXVlc3Q+cikgOiBuZXcgUGF5SW52b2ljZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9QYXlcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIHVwZGF0ZURlZmF1bHRUYXhSYXRlcyhyOiBVcGRhdGVEZWZhdWx0VGF4UmF0ZXNSZXF1ZXN0IHwgVXBkYXRlRGVmYXVsdFRheFJhdGVzUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8VXBkYXRlRGVmYXVsdFRheFJhdGVzUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwZGF0ZURlZmF1bHRUYXhSYXRlc1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8VXBkYXRlRGVmYXVsdFRheFJhdGVzUmVxdWVzdD5yKSA6IG5ldyBVcGRhdGVEZWZhdWx0VGF4UmF0ZXNSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8VXBkYXRlRGVmYXVsdFRheFJhdGVzUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkludm9pY2VTZXJ2aWNlL1VwZGF0ZURlZmF1bHRUYXhSYXRlc1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IFVwZGF0ZURlZmF1bHRUYXhSYXRlc1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIHVwZGF0ZUxpbmVJdGVtKHI6IFVwZGF0ZUxpbmVJdGVtUmVxdWVzdCB8IFVwZGF0ZUxpbmVJdGVtUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8VXBkYXRlTGluZUl0ZW1SZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8VXBkYXRlTGluZUl0ZW1SZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFVwZGF0ZUxpbmVJdGVtUmVxdWVzdD5yKSA6IG5ldyBVcGRhdGVMaW5lSXRlbVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxVcGRhdGVMaW5lSXRlbVJlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9VcGRhdGVMaW5lSXRlbVwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IFVwZGF0ZUxpbmVJdGVtUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgdm9pZChyOiBWb2lkSW52b2ljZVJlcXVlc3QgfCBWb2lkSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Vm9pZEludm9pY2VSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFZvaWRJbnZvaWNlUmVxdWVzdD5yKSA6IG5ldyBWb2lkSW52b2ljZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9Wb2lkXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBkdXBsaWNhdGUocjogRHVwbGljYXRlSW52b2ljZVJlcXVlc3QgfCBEdXBsaWNhdGVJbnZvaWNlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8RHVwbGljYXRlSW52b2ljZVJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxEdXBsaWNhdGVJbnZvaWNlUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxEdXBsaWNhdGVJbnZvaWNlUmVxdWVzdD5yKSA6IG5ldyBEdXBsaWNhdGVJbnZvaWNlUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PER1cGxpY2F0ZUludm9pY2VSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuSW52b2ljZVNlcnZpY2UvRHVwbGljYXRlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gRHVwbGljYXRlSW52b2ljZVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIHVwZGF0ZUJ1bmRsZShyOiBVcGRhdGVCdW5kbGVSZXF1ZXN0IHwgVXBkYXRlQnVuZGxlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8VXBkYXRlQnVuZGxlUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwZGF0ZUJ1bmRsZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8VXBkYXRlQnVuZGxlUmVxdWVzdD5yKSA6IG5ldyBVcGRhdGVCdW5kbGVSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8VXBkYXRlQnVuZGxlUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLkludm9pY2VTZXJ2aWNlL1VwZGF0ZUJ1bmRsZVwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IFVwZGF0ZUJ1bmRsZVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGNyZWF0ZVBheW1lbnRMaW5rKHI6IENyZWF0ZVBheW1lbnRMaW5rUmVxdWVzdCB8IENyZWF0ZVBheW1lbnRMaW5rUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8Q3JlYXRlUGF5bWVudExpbmtSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q3JlYXRlUGF5bWVudExpbmtSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENyZWF0ZVBheW1lbnRMaW5rUmVxdWVzdD5yKSA6IG5ldyBDcmVhdGVQYXltZW50TGlua1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxDcmVhdGVQYXltZW50TGlua1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9DcmVhdGVQYXltZW50TGlua1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IENyZWF0ZVBheW1lbnRMaW5rUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZ2V0VXBjb21pbmdJbnZvaWNlUHJldmlldyhyOiBHZXRVcGNvbWluZ0ludm9pY2VQcmV2aWV3UmVxdWVzdCB8IEdldFVwY29taW5nSW52b2ljZVByZXZpZXdSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRVcGNvbWluZ0ludm9pY2VQcmV2aWV3UmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldFVwY29taW5nSW52b2ljZVByZXZpZXdSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEdldFVwY29taW5nSW52b2ljZVByZXZpZXdSZXF1ZXN0PnIpIDogbmV3IEdldFVwY29taW5nSW52b2ljZVByZXZpZXdSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0VXBjb21pbmdJbnZvaWNlUHJldmlld1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5JbnZvaWNlU2VydmljZS9HZXRVcGNvbWluZ0ludm9pY2VQcmV2aWV3XCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0VXBjb21pbmdJbnZvaWNlUHJldmlld1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIFxufVxuIl19
|
|
@@ -168,11 +168,11 @@ export class MerchantApiService {
|
|
|
168
168
|
const request = (r.toApiJson) ? r : new CancelRetailBillingRequest(r);
|
|
169
169
|
return this.http.post(this._host + "/billing.v1.MerchantService/CancelRetailBilling", request.toApiJson(), { ...this.apiOptions(), observe: 'response' });
|
|
170
170
|
}
|
|
171
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: MerchantApiService, deps: [{ token: i1.HttpClient }, { token: i2.HostService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
172
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: MerchantApiService, providedIn: 'root' }); }
|
|
171
173
|
}
|
|
172
|
-
|
|
173
|
-
MerchantApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: MerchantApiService, providedIn: 'root' });
|
|
174
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.3", ngImport: i0, type: MerchantApiService, decorators: [{
|
|
174
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.5", ngImport: i0, type: MerchantApiService, decorators: [{
|
|
175
175
|
type: Injectable,
|
|
176
176
|
args: [{ providedIn: 'root' }]
|
|
177
|
-
}], ctorParameters:
|
|
178
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyY2hhbnQuYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9iaWxsaW5nX3Nkay9zcmMvbGliL19pbnRlcm5hbC9tZXJjaGFudC5hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsZUFBZTtBQUNmLG9DQUFvQztBQUNwQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDQywwQkFBMEIsRUFDMUIseUJBQXlCLEVBQ3pCLHFCQUFxQixFQUNyQiwrQkFBK0IsRUFDL0Isd0JBQXdCLEVBQ3hCLGtDQUFrQyxFQUNsQyx3QkFBd0IsRUFDeEIsa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQiw0QkFBNEIsRUFDNUIsbUNBQW1DLEVBQ25DLG9DQUFvQyxFQUNwQyw0QkFBNEIsRUFDNUIsNkJBQTZCLEVBQzdCLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIsOEJBQThCLEVBQzlCLCtCQUErQixFQUMvQix1QkFBdUIsRUFDdkIsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQix1QkFBdUIsRUFDdkIsd0JBQXdCLEVBQ3hCLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIsd0JBQXdCLEVBQ3hCLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsc0JBQXNCLEVBQ3RCLHVCQUF1QixFQUN2Qiw0QkFBNEIsRUFDNUIsbUNBQW1DLEVBQ25DLDRCQUE0QixFQUM1QiwwQkFBMEIsRUFDMUIsNEJBQTRCLEVBQzVCLDRCQUE0QixFQUM1QixxQ0FBcUMsRUFDckMsbUNBQW1DLEVBQ25DLHFCQUFxQixFQUNyQix3QkFBd0IsRUFDeEIsK0NBQStDLEVBQy9DLGdDQUFnQyxHQUN2QyxNQUFNLFlBQVksQ0FBQztBQWdE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QyxJQUFJLENBQUMsQ0FBQyxDQUMvRCxDQUFDO0lBQ1YsQ0FBQztJQUNELG1CQUFtQixDQUFDLENBQW1FO1FBQ25GLE1BQU0sT0FBTyxHQUFHLENBQThCLENBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQThCLENBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSwwQkFBMEIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsSSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFPLElBQUksQ0FBQyxLQUFLLEdBQUcsaURBQWlELEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLEVBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBQyxDQUFDLENBQUM7SUFDbEssQ0FBQzs7K0dBeExRLGtCQUFrQjttSEFBbEIsa0JBQWtCLGNBRE4sTUFBTTsyRkFDbEIsa0JBQWtCO2tCQUQ5QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gQVBJIFNlcnZpY2UuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgICAgICBDYW5jZWxSZXRhaWxCaWxsaW5nUmVxdWVzdCxcbiAgICAgICAgQ2hhcmdlU2FsZXNJbnZvaWNlUmVxdWVzdCxcbiAgICAgICAgQ3JlYXRlTWVyY2hhbnRSZXF1ZXN0LFxuICAgICAgICBDcmVhdGVNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuLFxuICAgICAgICBDcmVhdGVQYXltZW50Q2FyZFJlcXVlc3QsXG4gICAgICAgIENyZWF0ZVN0cmlwZUV4dGVybmFsQWNjb3VudFJlcXVlc3QsXG4gICAgICAgIERlbGV0ZUJhbmtBY2NvdW50UmVxdWVzdCxcbiAgICAgICAgR2V0TWVyY2hhbnRSZXF1ZXN0LFxuICAgICAgICBHZXRNZXJjaGFudFJlc3BvbnNlLFxuICAgICAgICBHZXRNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuLFxuICAgICAgICBHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdCxcbiAgICAgICAgR2V0TXVsdGlSZXRhaWxDb25maWd1cmF0aW9uc1Jlc3BvbnNlLFxuICAgICAgICBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXF1ZXN0LFxuICAgICAgICBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXNwb25zZSxcbiAgICAgICAgR2V0UGF5b3V0U3VtbWFyeVJlcXVlc3QsXG4gICAgICAgIEdldFBheW91dFN1bW1hcnlSZXNwb25zZSxcbiAgICAgICAgR2V0UmV0YWlsQWNjb3VudEJhbGFuY2VSZXF1ZXN0LFxuICAgICAgICBHZXRSZXRhaWxBY2NvdW50QmFsYW5jZVJlc3BvbnNlLFxuICAgICAgICBHZXRSZXRhaWxCYWxhbmNlUmVxdWVzdCxcbiAgICAgICAgR2V0UmV0YWlsQmFsYW5jZVJlc3BvbnNlLFxuICAgICAgICBHZXRSZXRhaWxQYXlvdXRSZXF1ZXN0LFxuICAgICAgICBHZXRSZXRhaWxQYXlvdXRSZXNwb25zZSxcbiAgICAgICAgR2V0U3RhdGlzdGljc1JlcXVlc3QsXG4gICAgICAgIEdldFN0YXRpc3RpY3NSZXNwb25zZSxcbiAgICAgICAgTGlzdEJhbmtBY2NvdW50c1JlcXVlc3QsXG4gICAgICAgIExpc3RCYW5rQWNjb3VudHNSZXNwb25zZSxcbiAgICAgICAgTGlzdFBheW1lbnRDYXJkc1JlcXVlc3QsXG4gICAgICAgIExpc3RQYXltZW50Q2FyZHNSZXNwb25zZSxcbiAgICAgICAgTGlzdFJldGFpbFBheW91dHNSZXF1ZXN0LFxuICAgICAgICBMaXN0UmV0YWlsUGF5b3V0c1Jlc3BvbnNlLFxuICAgICAgICBNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuLFxuICAgICAgICBTZWFyY2hNZXJjaGFudHNSZXF1ZXN0LFxuICAgICAgICBTZWFyY2hNZXJjaGFudHNSZXNwb25zZSxcbiAgICAgICAgU2VuZFNhbGVzSW52b2ljZUVtYWlsUmVxdWVzdCxcbiAgICAgICAgU2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3QsXG4gICAgICAgIFNldEF1dG9DaGFyZ2VJbnZvaWNlc1JlcXVlc3QsXG4gICAgICAgIFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0LFxuICAgICAgICBTZXREZWZhdWx0QmFua0FjY291bnRSZXF1ZXN0LFxuICAgICAgICBTZXREZWZhdWx0UGF5bWVudENhcmRSZXF1ZXN0LFxuICAgICAgICBTZXRIYXNBbHRlcm5hdGl2ZVBheW1lbnRNZXRob2RSZXF1ZXN0LFxuICAgICAgICBTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdCxcbiAgICAgICAgVXBkYXRlTWVyY2hhbnRSZXF1ZXN0LFxuICAgICAgICBVcGRhdGVQYXltZW50Q2FyZFJlcXVlc3QsXG4gICAgICAgIFVwc2VydERlZmF1bHRSZXRhaWxDdXN0b21lckNvbmZpZ3VyYXRpb25SZXF1ZXN0LFxuICAgICAgICBVcHNlcnRSZXRhaWxDb25maWd1cmF0aW9uUmVxdWVzdCxcbn0gZnJvbSAnLi9vYmplY3RzLyc7XG5pbXBvcnQge1xuICAgICAgICBDYW5jZWxSZXRhaWxCaWxsaW5nUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ2hhcmdlU2FsZXNJbnZvaWNlUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ3JlYXRlTWVyY2hhbnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBDcmVhdGVNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuSW50ZXJmYWNlLFxuICAgICAgICBDcmVhdGVQYXltZW50Q2FyZFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIENyZWF0ZVN0cmlwZUV4dGVybmFsQWNjb3VudFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIERlbGV0ZUJhbmtBY2NvdW50UmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2V0TWVyY2hhbnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBHZXRNZXJjaGFudFJlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBHZXRNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuSW50ZXJmYWNlLFxuICAgICAgICBHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2V0TXVsdGlSZXRhaWxDb25maWd1cmF0aW9uc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0UGF5b3V0U3VtbWFyeVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldFBheW91dFN1bW1hcnlSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0UmV0YWlsQWNjb3VudEJhbGFuY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBHZXRSZXRhaWxBY2NvdW50QmFsYW5jZVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBHZXRSZXRhaWxCYWxhbmNlUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2V0UmV0YWlsQmFsYW5jZVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBHZXRSZXRhaWxQYXlvdXRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBHZXRSZXRhaWxQYXlvdXRSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0U3RhdGlzdGljc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldFN0YXRpc3RpY3NSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgTGlzdEJhbmtBY2NvdW50c1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIExpc3RCYW5rQWNjb3VudHNSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgTGlzdFBheW1lbnRDYXJkc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIExpc3RQYXltZW50Q2FyZHNSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgTGlzdFJldGFpbFBheW91dHNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBMaXN0UmV0YWlsUGF5b3V0c1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuSW50ZXJmYWNlLFxuICAgICAgICBTZWFyY2hNZXJjaGFudHNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTZWFyY2hNZXJjaGFudHNSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgU2VuZFNhbGVzSW52b2ljZUVtYWlsUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgU2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIFNldEF1dG9DaGFyZ2VJbnZvaWNlc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTZXREZWZhdWx0QmFua0FjY291bnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTZXREZWZhdWx0UGF5bWVudENhcmRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTZXRIYXNBbHRlcm5hdGl2ZVBheW1lbnRNZXRob2RSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgVXBkYXRlTWVyY2hhbnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVQYXltZW50Q2FyZFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIFVwc2VydERlZmF1bHRSZXRhaWxDdXN0b21lckNvbmZpZ3VyYXRpb25SZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcHNlcnRSZXRhaWxDb25maWd1cmF0aW9uUmVxdWVzdEludGVyZmFjZSxcbn0gZnJvbSAnLi9pbnRlcmZhY2VzLyc7XG5pbXBvcnQge0h0dHBIZWFkZXJzLCBIdHRwQ2xpZW50LCBIdHRwUmVzcG9uc2V9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7SG9zdFNlcnZpY2V9IGZyb20gJy4uL19nZW5lcmF0ZWQvaG9zdC5zZXJ2aWNlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBNZXJjaGFudEFwaVNlcnZpY2Uge1xuICAgIHByaXZhdGUgX2hvc3QgPSB0aGlzLmhvc3RTZXJ2aWNlLmhvc3RXaXRoU2NoZW1lO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIGhvc3RTZXJ2aWNlOiBIb3N0U2VydmljZSkge1xuICAgIH1cblxuICAgIHByaXZhdGUgYXBpT3B0aW9ucygpOiB7aGVhZGVyczogSHR0cEhlYWRlcnMsIHdpdGhDcmVkZW50aWFsczogYm9vbGVhbn0ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHtcbiAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGNyZWF0ZShyOiBDcmVhdGVNZXJjaGFudFJlcXVlc3QgfCBDcmVhdGVNZXJjaGFudFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q3JlYXRlTWVyY2hhbnRSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENyZWF0ZU1lcmNoYW50UmVxdWVzdD5yKSA6IG5ldyBDcmVhdGVNZXJjaGFudFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvQ3JlYXRlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBnZXQocjogR2V0TWVyY2hhbnRSZXF1ZXN0IHwgR2V0TWVyY2hhbnRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRNZXJjaGFudFJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRNZXJjaGFudFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0TWVyY2hhbnRSZXF1ZXN0PnIpIDogbmV3IEdldE1lcmNoYW50UmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldE1lcmNoYW50UmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9HZXRcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRNZXJjaGFudFJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldE91dHN0YW5kaW5nQmFsYW5jZShyOiBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXF1ZXN0IHwgR2V0T3V0c3RhbmRpbmdCYWxhbmNlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0T3V0c3RhbmRpbmdCYWxhbmNlUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldE91dHN0YW5kaW5nQmFsYW5jZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0T3V0c3RhbmRpbmdCYWxhbmNlUmVxdWVzdD5yKSA6IG5ldyBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0T3V0c3RhbmRpbmdCYWxhbmNlUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9HZXRPdXRzdGFuZGluZ0JhbGFuY2VcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICB1cGRhdGUocjogVXBkYXRlTWVyY2hhbnRSZXF1ZXN0IHwgVXBkYXRlTWVyY2hhbnRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwZGF0ZU1lcmNoYW50UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxVcGRhdGVNZXJjaGFudFJlcXVlc3Q+cikgOiBuZXcgVXBkYXRlTWVyY2hhbnRSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL1VwZGF0ZVwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgY3JlYXRlUGF5bWVudENhcmQocjogQ3JlYXRlUGF5bWVudENhcmRSZXF1ZXN0IHwgQ3JlYXRlUGF5bWVudENhcmRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENyZWF0ZVBheW1lbnRDYXJkUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxDcmVhdGVQYXltZW50Q2FyZFJlcXVlc3Q+cikgOiBuZXcgQ3JlYXRlUGF5bWVudENhcmRSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0NyZWF0ZVBheW1lbnRDYXJkXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBzZXREZWZhdWx0UGF5bWVudENhcmQocjogU2V0RGVmYXVsdFBheW1lbnRDYXJkUmVxdWVzdCB8IFNldERlZmF1bHRQYXltZW50Q2FyZFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2V0RGVmYXVsdFBheW1lbnRDYXJkUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTZXREZWZhdWx0UGF5bWVudENhcmRSZXF1ZXN0PnIpIDogbmV3IFNldERlZmF1bHRQYXltZW50Q2FyZFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2V0RGVmYXVsdFBheW1lbnRDYXJkXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBsaXN0UGF5bWVudENhcmRzKHI6IExpc3RQYXltZW50Q2FyZHNSZXF1ZXN0IHwgTGlzdFBheW1lbnRDYXJkc1JlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPExpc3RQYXltZW50Q2FyZHNSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8TGlzdFBheW1lbnRDYXJkc1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8TGlzdFBheW1lbnRDYXJkc1JlcXVlc3Q+cikgOiBuZXcgTGlzdFBheW1lbnRDYXJkc1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxMaXN0UGF5bWVudENhcmRzUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9MaXN0UGF5bWVudENhcmRzXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gTGlzdFBheW1lbnRDYXJkc1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIHVwZGF0ZVBheW1lbnRDYXJkKHI6IFVwZGF0ZVBheW1lbnRDYXJkUmVxdWVzdCB8IFVwZGF0ZVBheW1lbnRDYXJkUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxVcGRhdGVQYXltZW50Q2FyZFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8VXBkYXRlUGF5bWVudENhcmRSZXF1ZXN0PnIpIDogbmV3IFVwZGF0ZVBheW1lbnRDYXJkUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9VcGRhdGVQYXltZW50Q2FyZFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgZ2V0U3RhdGlzdGljcyhyOiBHZXRTdGF0aXN0aWNzUmVxdWVzdCB8IEdldFN0YXRpc3RpY3NSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRTdGF0aXN0aWNzUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldFN0YXRpc3RpY3NSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEdldFN0YXRpc3RpY3NSZXF1ZXN0PnIpIDogbmV3IEdldFN0YXRpc3RpY3NSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0U3RhdGlzdGljc1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvR2V0U3RhdGlzdGljc1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IEdldFN0YXRpc3RpY3NSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBzZWFyY2gocjogU2VhcmNoTWVyY2hhbnRzUmVxdWVzdCB8IFNlYXJjaE1lcmNoYW50c1JlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPFNlYXJjaE1lcmNoYW50c1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxTZWFyY2hNZXJjaGFudHNSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFNlYXJjaE1lcmNoYW50c1JlcXVlc3Q+cikgOiBuZXcgU2VhcmNoTWVyY2hhbnRzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PFNlYXJjaE1lcmNoYW50c1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2VhcmNoXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gU2VhcmNoTWVyY2hhbnRzUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgc2V0QXV0b1Bvc3RJbnZvaWNlcyhyOiBTZXRBdXRvUG9zdEludm9pY2VzUmVxdWVzdCB8IFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0PnIpIDogbmV3IFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL1NldEF1dG9Qb3N0SW52b2ljZXNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIHNldEF1dG9DaGFyZ2VJbnZvaWNlcyhyOiBTZXRBdXRvQ2hhcmdlSW52b2ljZXNSZXF1ZXN0IHwgU2V0QXV0b0NoYXJnZUludm9pY2VzUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxTZXRBdXRvQ2hhcmdlSW52b2ljZXNSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFNldEF1dG9DaGFyZ2VJbnZvaWNlc1JlcXVlc3Q+cikgOiBuZXcgU2V0QXV0b0NoYXJnZUludm9pY2VzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9TZXRBdXRvQ2hhcmdlSW52b2ljZXNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIHNldEluY2x1ZGVJbkZpbmFuY2lhbFJlY29yZHMocjogU2V0SW5jbHVkZUluRmluYW5jaWFsUmVjb3Jkc1JlcXVlc3QgfCBTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdD5yKSA6IG5ldyBTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9TZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBzZXRIYXNBbHRlcm5hdGl2ZVBheW1lbnRNZXRob2QocjogU2V0SGFzQWx0ZXJuYXRpdmVQYXltZW50TWV0aG9kUmVxdWVzdCB8IFNldEhhc0FsdGVybmF0aXZlUGF5bWVudE1ldGhvZFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2V0SGFzQWx0ZXJuYXRpdmVQYXltZW50TWV0aG9kUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTZXRIYXNBbHRlcm5hdGl2ZVBheW1lbnRNZXRob2RSZXF1ZXN0PnIpIDogbmV3IFNldEhhc0FsdGVybmF0aXZlUGF5bWVudE1ldGhvZFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2V0SGFzQWx0ZXJuYXRpdmVQYXltZW50TWV0aG9kXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBzZW5kU2FsZXNJbnZvaWNlRW1haWwocjogU2VuZFNhbGVzSW52b2ljZUVtYWlsUmVxdWVzdCB8IFNlbmRTYWxlc0ludm9pY2VFbWFpbFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2VuZFNhbGVzSW52b2ljZUVtYWlsUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTZW5kU2FsZXNJbnZvaWNlRW1haWxSZXF1ZXN0PnIpIDogbmV3IFNlbmRTYWxlc0ludm9pY2VFbWFpbFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2VuZFNhbGVzSW52b2ljZUVtYWlsXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBjaGFyZ2VTYWxlc0ludm9pY2UocjogQ2hhcmdlU2FsZXNJbnZvaWNlUmVxdWVzdCB8IENoYXJnZVNhbGVzSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q2hhcmdlU2FsZXNJbnZvaWNlUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxDaGFyZ2VTYWxlc0ludm9pY2VSZXF1ZXN0PnIpIDogbmV3IENoYXJnZVNhbGVzSW52b2ljZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvQ2hhcmdlU2FsZXNJbnZvaWNlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBzZW5kU2FsZXNJbnZvaWNlUmVjZWlwdEVtYWlsKHI6IFNlbmRTYWxlc0ludm9pY2VSZWNlaXB0RW1haWxSZXF1ZXN0IHwgU2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8U2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3Q+cikgOiBuZXcgU2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgY3JlYXRlU3RyaXBlRXh0ZXJuYWxBY2NvdW50KHI6IENyZWF0ZVN0cmlwZUV4dGVybmFsQWNjb3VudFJlcXVlc3QgfCBDcmVhdGVTdHJpcGVFeHRlcm5hbEFjY291bnRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENyZWF0ZVN0cmlwZUV4dGVybmFsQWNjb3VudFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8Q3JlYXRlU3RyaXBlRXh0ZXJuYWxBY2NvdW50UmVxdWVzdD5yKSA6IG5ldyBDcmVhdGVTdHJpcGVFeHRlcm5hbEFjY291bnRSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0NyZWF0ZVN0cmlwZUV4dGVybmFsQWNjb3VudFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgbGlzdEJhbmtBY2NvdW50cyhyOiBMaXN0QmFua0FjY291bnRzUmVxdWVzdCB8IExpc3RCYW5rQWNjb3VudHNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxMaXN0QmFua0FjY291bnRzUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPExpc3RCYW5rQWNjb3VudHNSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPExpc3RCYW5rQWNjb3VudHNSZXF1ZXN0PnIpIDogbmV3IExpc3RCYW5rQWNjb3VudHNSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8TGlzdEJhbmtBY2NvdW50c1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvTGlzdEJhbmtBY2NvdW50c1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IExpc3RCYW5rQWNjb3VudHNSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBzZXREZWZhdWx0QmFua0FjY291bnQocjogU2V0RGVmYXVsdEJhbmtBY2NvdW50UmVxdWVzdCB8IFNldERlZmF1bHRCYW5rQWNjb3VudFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2V0RGVmYXVsdEJhbmtBY2NvdW50UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTZXREZWZhdWx0QmFua0FjY291bnRSZXF1ZXN0PnIpIDogbmV3IFNldERlZmF1bHRCYW5rQWNjb3VudFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2V0RGVmYXVsdEJhbmtBY2NvdW50XCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBkZWxldGVCYW5rQWNjb3VudChyOiBEZWxldGVCYW5rQWNjb3VudFJlcXVlc3QgfCBEZWxldGVCYW5rQWNjb3VudFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8RGVsZXRlQmFua0FjY291bnRSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPERlbGV0ZUJhbmtBY2NvdW50UmVxdWVzdD5yKSA6IG5ldyBEZWxldGVCYW5rQWNjb3VudFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvRGVsZXRlQmFua0FjY291bnRcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIGdldE11bHRpUmV0YWlsQ29uZmlndXJhdGlvbnMocjogR2V0TXVsdGlSZXRhaWxDb25maWd1cmF0aW9uc1JlcXVlc3QgfCBHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0TXVsdGlSZXRhaWxDb25maWd1cmF0aW9uc1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdD5yKSA6IG5ldyBHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldE11bHRpUmV0YWlsQ29uZmlndXJhdGlvbnNSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0dldE11bHRpUmV0YWlsQ29uZmlndXJhdGlvbnNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgdXBzZXJ0UmV0YWlsQ29uZmlndXJhdGlvbihyOiBVcHNlcnRSZXRhaWxDb25maWd1cmF0aW9uUmVxdWVzdCB8IFVwc2VydFJldGFpbENvbmZpZ3VyYXRpb25SZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwc2VydFJldGFpbENvbmZpZ3VyYXRpb25SZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFVwc2VydFJldGFpbENvbmZpZ3VyYXRpb25SZXF1ZXN0PnIpIDogbmV3IFVwc2VydFJldGFpbENvbmZpZ3VyYXRpb25SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL1Vwc2VydFJldGFpbENvbmZpZ3VyYXRpb25cIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIHVwc2VydERlZmF1bHRSZXRhaWxDdXN0b21lckNvbmZpZ3VyYXRpb24ocjogVXBzZXJ0RGVmYXVsdFJldGFpbEN1c3RvbWVyQ29uZmlndXJhdGlvblJlcXVlc3QgfCBVcHNlcnREZWZhdWx0UmV0YWlsQ3VzdG9tZXJDb25maWd1cmF0aW9uUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxVcHNlcnREZWZhdWx0UmV0YWlsQ3VzdG9tZXJDb25maWd1cmF0aW9uUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxVcHNlcnREZWZhdWx0UmV0YWlsQ3VzdG9tZXJDb25maWd1cmF0aW9uUmVxdWVzdD5yKSA6IG5ldyBVcHNlcnREZWZhdWx0UmV0YWlsQ3VzdG9tZXJDb25maWd1cmF0aW9uUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9VcHNlcnREZWZhdWx0UmV0YWlsQ3VzdG9tZXJDb25maWd1cmF0aW9uXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBnZXRSZXRhaWxCYWxhbmNlKHI6IEdldFJldGFpbEJhbGFuY2VSZXF1ZXN0IHwgR2V0UmV0YWlsQmFsYW5jZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEdldFJldGFpbEJhbGFuY2VSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8R2V0UmV0YWlsQmFsYW5jZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0UmV0YWlsQmFsYW5jZVJlcXVlc3Q+cikgOiBuZXcgR2V0UmV0YWlsQmFsYW5jZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxHZXRSZXRhaWxCYWxhbmNlUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9HZXRSZXRhaWxCYWxhbmNlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0UmV0YWlsQmFsYW5jZVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldFBheW91dFN1bW1hcnkocjogR2V0UGF5b3V0U3VtbWFyeVJlcXVlc3QgfCBHZXRQYXlvdXRTdW1tYXJ5UmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0UGF5b3V0U3VtbWFyeVJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRQYXlvdXRTdW1tYXJ5UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxHZXRQYXlvdXRTdW1tYXJ5UmVxdWVzdD5yKSA6IG5ldyBHZXRQYXlvdXRTdW1tYXJ5UmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldFBheW91dFN1bW1hcnlSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0dldFBheW91dFN1bW1hcnlcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRQYXlvdXRTdW1tYXJ5UmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgbGlzdFJldGFpbFBheW91dHMocjogTGlzdFJldGFpbFBheW91dHNSZXF1ZXN0IHwgTGlzdFJldGFpbFBheW91dHNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxMaXN0UmV0YWlsUGF5b3V0c1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxMaXN0UmV0YWlsUGF5b3V0c1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8TGlzdFJldGFpbFBheW91dHNSZXF1ZXN0PnIpIDogbmV3IExpc3RSZXRhaWxQYXlvdXRzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PExpc3RSZXRhaWxQYXlvdXRzUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9MaXN0UmV0YWlsUGF5b3V0c1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IExpc3RSZXRhaWxQYXlvdXRzUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZ2V0UmV0YWlsUGF5b3V0KHI6IEdldFJldGFpbFBheW91dFJlcXVlc3QgfCBHZXRSZXRhaWxQYXlvdXRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRSZXRhaWxQYXlvdXRSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8R2V0UmV0YWlsUGF5b3V0UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxHZXRSZXRhaWxQYXlvdXRSZXF1ZXN0PnIpIDogbmV3IEdldFJldGFpbFBheW91dFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxHZXRSZXRhaWxQYXlvdXRSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0dldFJldGFpbFBheW91dFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IEdldFJldGFpbFBheW91dFJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGNyZWF0ZVJlcG9ydFJ1bihyOiBDcmVhdGVNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuIHwgQ3JlYXRlTWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bkludGVyZmFjZSk6IE9ic2VydmFibGU8TWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q3JlYXRlTWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bj5yKS50b0FwaUpzb24pID8gKDxDcmVhdGVNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuPnIpIDogbmV3IENyZWF0ZU1lcmNoYW50U2VydmljZXNSZXBvcnRSdW4ocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvQ3JlYXRlUmVwb3J0UnVuXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gTWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bi5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBnZXRSZXBvcnRSdW4ocjogR2V0TWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1biB8IEdldE1lcmNoYW50U2VydmljZXNSZXBvcnRSdW5JbnRlcmZhY2UpOiBPYnNlcnZhYmxlPE1lcmNoYW50U2VydmljZXNSZXBvcnRSdW4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldE1lcmNoYW50U2VydmljZXNSZXBvcnRSdW4+cikudG9BcGlKc29uKSA/ICg8R2V0TWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bj5yKSA6IG5ldyBHZXRNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuKHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8TWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bkludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0dldFJlcG9ydFJ1blwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IE1lcmNoYW50U2VydmljZXNSZXBvcnRSdW4uZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZ2V0UmV0YWlsQWNjb3VudEJhbGFuY2UocjogR2V0UmV0YWlsQWNjb3VudEJhbGFuY2VSZXF1ZXN0IHwgR2V0UmV0YWlsQWNjb3VudEJhbGFuY2VSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRSZXRhaWxBY2NvdW50QmFsYW5jZVJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRSZXRhaWxBY2NvdW50QmFsYW5jZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0UmV0YWlsQWNjb3VudEJhbGFuY2VSZXF1ZXN0PnIpIDogbmV3IEdldFJldGFpbEFjY291bnRCYWxhbmNlUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldFJldGFpbEFjY291bnRCYWxhbmNlUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9HZXRSZXRhaWxBY2NvdW50QmFsYW5jZVwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IEdldFJldGFpbEFjY291bnRCYWxhbmNlUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgY2FuY2VsUmV0YWlsQmlsbGluZyhyOiBDYW5jZWxSZXRhaWxCaWxsaW5nUmVxdWVzdCB8IENhbmNlbFJldGFpbEJpbGxpbmdSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENhbmNlbFJldGFpbEJpbGxpbmdSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENhbmNlbFJldGFpbEJpbGxpbmdSZXF1ZXN0PnIpIDogbmV3IENhbmNlbFJldGFpbEJpbGxpbmdSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0NhbmNlbFJldGFpbEJpbGxpbmdcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIFxufVxuIl19
|
|
177
|
+
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.HostService }] });
|
|
178
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyY2hhbnQuYXBpLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9iaWxsaW5nX3Nkay9zcmMvbGliL19pbnRlcm5hbC9tZXJjaGFudC5hcGkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxvQ0FBb0M7QUFDcEMsMkJBQTJCO0FBQzNCLGdCQUFnQjtBQUNoQixFQUFFO0FBQ0YsZUFBZTtBQUNmLG9DQUFvQztBQUNwQyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFDQywwQkFBMEIsRUFDMUIseUJBQXlCLEVBQ3pCLHFCQUFxQixFQUNyQiwrQkFBK0IsRUFDL0Isd0JBQXdCLEVBQ3hCLGtDQUFrQyxFQUNsQyx3QkFBd0IsRUFDeEIsa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQiw0QkFBNEIsRUFDNUIsbUNBQW1DLEVBQ25DLG9DQUFvQyxFQUNwQyw0QkFBNEIsRUFDNUIsNkJBQTZCLEVBQzdCLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIsOEJBQThCLEVBQzlCLCtCQUErQixFQUMvQix1QkFBdUIsRUFDdkIsd0JBQXdCLEVBQ3hCLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFDdkIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQix1QkFBdUIsRUFDdkIsd0JBQXdCLEVBQ3hCLHVCQUF1QixFQUN2Qix3QkFBd0IsRUFDeEIsd0JBQXdCLEVBQ3hCLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDekIsc0JBQXNCLEVBQ3RCLHVCQUF1QixFQUN2Qiw0QkFBNEIsRUFDNUIsbUNBQW1DLEVBQ25DLDRCQUE0QixFQUM1QiwwQkFBMEIsRUFDMUIsNEJBQTRCLEVBQzVCLDRCQUE0QixFQUM1QixxQ0FBcUMsRUFDckMsbUNBQW1DLEVBQ25DLHFCQUFxQixFQUNyQix3QkFBd0IsRUFDeEIsK0NBQStDLEVBQy9DLGdDQUFnQyxHQUN2QyxNQUFNLFlBQVksQ0FBQztBQWdE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QyxJQUFJLENBQUMsQ0FBQyxDQUMvRCxDQUFDO0lBQ1YsQ0FBQztJQUNELG1CQUFtQixDQUFDLENBQW1FO1FBQ25GLE1BQU0sT0FBTyxHQUFHLENBQThCLENBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQThCLENBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSwwQkFBMEIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsSSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFPLElBQUksQ0FBQyxLQUFLLEdBQUcsaURBQWlELEVBQUUsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLEVBQUMsR0FBRyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBQyxDQUFDLENBQUM7SUFDbEssQ0FBQzs4R0F4TFEsa0JBQWtCO2tIQUFsQixrQkFBa0IsY0FETixNQUFNOzsyRkFDbEIsa0JBQWtCO2tCQUQ5QixVQUFVO21CQUFDLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuLy8gQ29kZSBnZW5lcmF0ZWQgYnkgc2RrZ2VuXG4vLyBETyBOT1QgRURJVCEuXG4vL1xuLy8gQVBJIFNlcnZpY2UuXG4vLyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgICAgICBDYW5jZWxSZXRhaWxCaWxsaW5nUmVxdWVzdCxcbiAgICAgICAgQ2hhcmdlU2FsZXNJbnZvaWNlUmVxdWVzdCxcbiAgICAgICAgQ3JlYXRlTWVyY2hhbnRSZXF1ZXN0LFxuICAgICAgICBDcmVhdGVNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuLFxuICAgICAgICBDcmVhdGVQYXltZW50Q2FyZFJlcXVlc3QsXG4gICAgICAgIENyZWF0ZVN0cmlwZUV4dGVybmFsQWNjb3VudFJlcXVlc3QsXG4gICAgICAgIERlbGV0ZUJhbmtBY2NvdW50UmVxdWVzdCxcbiAgICAgICAgR2V0TWVyY2hhbnRSZXF1ZXN0LFxuICAgICAgICBHZXRNZXJjaGFudFJlc3BvbnNlLFxuICAgICAgICBHZXRNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuLFxuICAgICAgICBHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdCxcbiAgICAgICAgR2V0TXVsdGlSZXRhaWxDb25maWd1cmF0aW9uc1Jlc3BvbnNlLFxuICAgICAgICBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXF1ZXN0LFxuICAgICAgICBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXNwb25zZSxcbiAgICAgICAgR2V0UGF5b3V0U3VtbWFyeVJlcXVlc3QsXG4gICAgICAgIEdldFBheW91dFN1bW1hcnlSZXNwb25zZSxcbiAgICAgICAgR2V0UmV0YWlsQWNjb3VudEJhbGFuY2VSZXF1ZXN0LFxuICAgICAgICBHZXRSZXRhaWxBY2NvdW50QmFsYW5jZVJlc3BvbnNlLFxuICAgICAgICBHZXRSZXRhaWxCYWxhbmNlUmVxdWVzdCxcbiAgICAgICAgR2V0UmV0YWlsQmFsYW5jZVJlc3BvbnNlLFxuICAgICAgICBHZXRSZXRhaWxQYXlvdXRSZXF1ZXN0LFxuICAgICAgICBHZXRSZXRhaWxQYXlvdXRSZXNwb25zZSxcbiAgICAgICAgR2V0U3RhdGlzdGljc1JlcXVlc3QsXG4gICAgICAgIEdldFN0YXRpc3RpY3NSZXNwb25zZSxcbiAgICAgICAgTGlzdEJhbmtBY2NvdW50c1JlcXVlc3QsXG4gICAgICAgIExpc3RCYW5rQWNjb3VudHNSZXNwb25zZSxcbiAgICAgICAgTGlzdFBheW1lbnRDYXJkc1JlcXVlc3QsXG4gICAgICAgIExpc3RQYXltZW50Q2FyZHNSZXNwb25zZSxcbiAgICAgICAgTGlzdFJldGFpbFBheW91dHNSZXF1ZXN0LFxuICAgICAgICBMaXN0UmV0YWlsUGF5b3V0c1Jlc3BvbnNlLFxuICAgICAgICBNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuLFxuICAgICAgICBTZWFyY2hNZXJjaGFudHNSZXF1ZXN0LFxuICAgICAgICBTZWFyY2hNZXJjaGFudHNSZXNwb25zZSxcbiAgICAgICAgU2VuZFNhbGVzSW52b2ljZUVtYWlsUmVxdWVzdCxcbiAgICAgICAgU2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3QsXG4gICAgICAgIFNldEF1dG9DaGFyZ2VJbnZvaWNlc1JlcXVlc3QsXG4gICAgICAgIFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0LFxuICAgICAgICBTZXREZWZhdWx0QmFua0FjY291bnRSZXF1ZXN0LFxuICAgICAgICBTZXREZWZhdWx0UGF5bWVudENhcmRSZXF1ZXN0LFxuICAgICAgICBTZXRIYXNBbHRlcm5hdGl2ZVBheW1lbnRNZXRob2RSZXF1ZXN0LFxuICAgICAgICBTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdCxcbiAgICAgICAgVXBkYXRlTWVyY2hhbnRSZXF1ZXN0LFxuICAgICAgICBVcGRhdGVQYXltZW50Q2FyZFJlcXVlc3QsXG4gICAgICAgIFVwc2VydERlZmF1bHRSZXRhaWxDdXN0b21lckNvbmZpZ3VyYXRpb25SZXF1ZXN0LFxuICAgICAgICBVcHNlcnRSZXRhaWxDb25maWd1cmF0aW9uUmVxdWVzdCxcbn0gZnJvbSAnLi9vYmplY3RzLyc7XG5pbXBvcnQge1xuICAgICAgICBDYW5jZWxSZXRhaWxCaWxsaW5nUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ2hhcmdlU2FsZXNJbnZvaWNlUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgQ3JlYXRlTWVyY2hhbnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBDcmVhdGVNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuSW50ZXJmYWNlLFxuICAgICAgICBDcmVhdGVQYXltZW50Q2FyZFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIENyZWF0ZVN0cmlwZUV4dGVybmFsQWNjb3VudFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIERlbGV0ZUJhbmtBY2NvdW50UmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2V0TWVyY2hhbnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBHZXRNZXJjaGFudFJlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBHZXRNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuSW50ZXJmYWNlLFxuICAgICAgICBHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2V0TXVsdGlSZXRhaWxDb25maWd1cmF0aW9uc1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0UGF5b3V0U3VtbWFyeVJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldFBheW91dFN1bW1hcnlSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0UmV0YWlsQWNjb3VudEJhbGFuY2VSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBHZXRSZXRhaWxBY2NvdW50QmFsYW5jZVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBHZXRSZXRhaWxCYWxhbmNlUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgR2V0UmV0YWlsQmFsYW5jZVJlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBHZXRSZXRhaWxQYXlvdXRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBHZXRSZXRhaWxQYXlvdXRSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgR2V0U3RhdGlzdGljc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIEdldFN0YXRpc3RpY3NSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgTGlzdEJhbmtBY2NvdW50c1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIExpc3RCYW5rQWNjb3VudHNSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgTGlzdFBheW1lbnRDYXJkc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIExpc3RQYXltZW50Q2FyZHNSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgTGlzdFJldGFpbFBheW91dHNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBMaXN0UmV0YWlsUGF5b3V0c1Jlc3BvbnNlSW50ZXJmYWNlLFxuICAgICAgICBNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuSW50ZXJmYWNlLFxuICAgICAgICBTZWFyY2hNZXJjaGFudHNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTZWFyY2hNZXJjaGFudHNSZXNwb25zZUludGVyZmFjZSxcbiAgICAgICAgU2VuZFNhbGVzSW52b2ljZUVtYWlsUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgU2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIFNldEF1dG9DaGFyZ2VJbnZvaWNlc1JlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTZXREZWZhdWx0QmFua0FjY291bnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTZXREZWZhdWx0UGF5bWVudENhcmRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTZXRIYXNBbHRlcm5hdGl2ZVBheW1lbnRNZXRob2RSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdEludGVyZmFjZSxcbiAgICAgICAgVXBkYXRlTWVyY2hhbnRSZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcGRhdGVQYXltZW50Q2FyZFJlcXVlc3RJbnRlcmZhY2UsXG4gICAgICAgIFVwc2VydERlZmF1bHRSZXRhaWxDdXN0b21lckNvbmZpZ3VyYXRpb25SZXF1ZXN0SW50ZXJmYWNlLFxuICAgICAgICBVcHNlcnRSZXRhaWxDb25maWd1cmF0aW9uUmVxdWVzdEludGVyZmFjZSxcbn0gZnJvbSAnLi9pbnRlcmZhY2VzLyc7XG5pbXBvcnQge0h0dHBIZWFkZXJzLCBIdHRwQ2xpZW50LCBIdHRwUmVzcG9uc2V9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7SG9zdFNlcnZpY2V9IGZyb20gJy4uL19nZW5lcmF0ZWQvaG9zdC5zZXJ2aWNlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSh7cHJvdmlkZWRJbjogJ3Jvb3QnfSlcbmV4cG9ydCBjbGFzcyBNZXJjaGFudEFwaVNlcnZpY2Uge1xuICAgIHByaXZhdGUgX2hvc3QgPSB0aGlzLmhvc3RTZXJ2aWNlLmhvc3RXaXRoU2NoZW1lO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LCBwcml2YXRlIGhvc3RTZXJ2aWNlOiBIb3N0U2VydmljZSkge1xuICAgIH1cblxuICAgIHByaXZhdGUgYXBpT3B0aW9ucygpOiB7aGVhZGVyczogSHR0cEhlYWRlcnMsIHdpdGhDcmVkZW50aWFsczogYm9vbGVhbn0ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKHtcbiAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL2pzb24nXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIHdpdGhDcmVkZW50aWFsczogdHJ1ZVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIGNyZWF0ZShyOiBDcmVhdGVNZXJjaGFudFJlcXVlc3QgfCBDcmVhdGVNZXJjaGFudFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q3JlYXRlTWVyY2hhbnRSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENyZWF0ZU1lcmNoYW50UmVxdWVzdD5yKSA6IG5ldyBDcmVhdGVNZXJjaGFudFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvQ3JlYXRlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBnZXQocjogR2V0TWVyY2hhbnRSZXF1ZXN0IHwgR2V0TWVyY2hhbnRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRNZXJjaGFudFJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRNZXJjaGFudFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0TWVyY2hhbnRSZXF1ZXN0PnIpIDogbmV3IEdldE1lcmNoYW50UmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldE1lcmNoYW50UmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9HZXRcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRNZXJjaGFudFJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldE91dHN0YW5kaW5nQmFsYW5jZShyOiBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXF1ZXN0IHwgR2V0T3V0c3RhbmRpbmdCYWxhbmNlUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0T3V0c3RhbmRpbmdCYWxhbmNlUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldE91dHN0YW5kaW5nQmFsYW5jZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0T3V0c3RhbmRpbmdCYWxhbmNlUmVxdWVzdD5yKSA6IG5ldyBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0T3V0c3RhbmRpbmdCYWxhbmNlUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9HZXRPdXRzdGFuZGluZ0JhbGFuY2VcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRPdXRzdGFuZGluZ0JhbGFuY2VSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICB1cGRhdGUocjogVXBkYXRlTWVyY2hhbnRSZXF1ZXN0IHwgVXBkYXRlTWVyY2hhbnRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwZGF0ZU1lcmNoYW50UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxVcGRhdGVNZXJjaGFudFJlcXVlc3Q+cikgOiBuZXcgVXBkYXRlTWVyY2hhbnRSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL1VwZGF0ZVwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgY3JlYXRlUGF5bWVudENhcmQocjogQ3JlYXRlUGF5bWVudENhcmRSZXF1ZXN0IHwgQ3JlYXRlUGF5bWVudENhcmRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENyZWF0ZVBheW1lbnRDYXJkUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxDcmVhdGVQYXltZW50Q2FyZFJlcXVlc3Q+cikgOiBuZXcgQ3JlYXRlUGF5bWVudENhcmRSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0NyZWF0ZVBheW1lbnRDYXJkXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBzZXREZWZhdWx0UGF5bWVudENhcmQocjogU2V0RGVmYXVsdFBheW1lbnRDYXJkUmVxdWVzdCB8IFNldERlZmF1bHRQYXltZW50Q2FyZFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2V0RGVmYXVsdFBheW1lbnRDYXJkUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTZXREZWZhdWx0UGF5bWVudENhcmRSZXF1ZXN0PnIpIDogbmV3IFNldERlZmF1bHRQYXltZW50Q2FyZFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2V0RGVmYXVsdFBheW1lbnRDYXJkXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBsaXN0UGF5bWVudENhcmRzKHI6IExpc3RQYXltZW50Q2FyZHNSZXF1ZXN0IHwgTGlzdFBheW1lbnRDYXJkc1JlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPExpc3RQYXltZW50Q2FyZHNSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8TGlzdFBheW1lbnRDYXJkc1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8TGlzdFBheW1lbnRDYXJkc1JlcXVlc3Q+cikgOiBuZXcgTGlzdFBheW1lbnRDYXJkc1JlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxMaXN0UGF5bWVudENhcmRzUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9MaXN0UGF5bWVudENhcmRzXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gTGlzdFBheW1lbnRDYXJkc1Jlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIHVwZGF0ZVBheW1lbnRDYXJkKHI6IFVwZGF0ZVBheW1lbnRDYXJkUmVxdWVzdCB8IFVwZGF0ZVBheW1lbnRDYXJkUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxVcGRhdGVQYXltZW50Q2FyZFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8VXBkYXRlUGF5bWVudENhcmRSZXF1ZXN0PnIpIDogbmV3IFVwZGF0ZVBheW1lbnRDYXJkUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9VcGRhdGVQYXltZW50Q2FyZFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgZ2V0U3RhdGlzdGljcyhyOiBHZXRTdGF0aXN0aWNzUmVxdWVzdCB8IEdldFN0YXRpc3RpY3NSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRTdGF0aXN0aWNzUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldFN0YXRpc3RpY3NSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPEdldFN0YXRpc3RpY3NSZXF1ZXN0PnIpIDogbmV3IEdldFN0YXRpc3RpY3NSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8R2V0U3RhdGlzdGljc1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvR2V0U3RhdGlzdGljc1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IEdldFN0YXRpc3RpY3NSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBzZWFyY2gocjogU2VhcmNoTWVyY2hhbnRzUmVxdWVzdCB8IFNlYXJjaE1lcmNoYW50c1JlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPFNlYXJjaE1lcmNoYW50c1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxTZWFyY2hNZXJjaGFudHNSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFNlYXJjaE1lcmNoYW50c1JlcXVlc3Q+cikgOiBuZXcgU2VhcmNoTWVyY2hhbnRzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PFNlYXJjaE1lcmNoYW50c1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2VhcmNoXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gU2VhcmNoTWVyY2hhbnRzUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgc2V0QXV0b1Bvc3RJbnZvaWNlcyhyOiBTZXRBdXRvUG9zdEludm9pY2VzUmVxdWVzdCB8IFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0PnIpIDogbmV3IFNldEF1dG9Qb3N0SW52b2ljZXNSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL1NldEF1dG9Qb3N0SW52b2ljZXNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIHNldEF1dG9DaGFyZ2VJbnZvaWNlcyhyOiBTZXRBdXRvQ2hhcmdlSW52b2ljZXNSZXF1ZXN0IHwgU2V0QXV0b0NoYXJnZUludm9pY2VzUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxTZXRBdXRvQ2hhcmdlSW52b2ljZXNSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFNldEF1dG9DaGFyZ2VJbnZvaWNlc1JlcXVlc3Q+cikgOiBuZXcgU2V0QXV0b0NoYXJnZUludm9pY2VzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9TZXRBdXRvQ2hhcmdlSW52b2ljZXNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIHNldEluY2x1ZGVJbkZpbmFuY2lhbFJlY29yZHMocjogU2V0SW5jbHVkZUluRmluYW5jaWFsUmVjb3Jkc1JlcXVlc3QgfCBTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdD5yKSA6IG5ldyBTZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9TZXRJbmNsdWRlSW5GaW5hbmNpYWxSZWNvcmRzXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBzZXRIYXNBbHRlcm5hdGl2ZVBheW1lbnRNZXRob2QocjogU2V0SGFzQWx0ZXJuYXRpdmVQYXltZW50TWV0aG9kUmVxdWVzdCB8IFNldEhhc0FsdGVybmF0aXZlUGF5bWVudE1ldGhvZFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2V0SGFzQWx0ZXJuYXRpdmVQYXltZW50TWV0aG9kUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTZXRIYXNBbHRlcm5hdGl2ZVBheW1lbnRNZXRob2RSZXF1ZXN0PnIpIDogbmV3IFNldEhhc0FsdGVybmF0aXZlUGF5bWVudE1ldGhvZFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2V0SGFzQWx0ZXJuYXRpdmVQYXltZW50TWV0aG9kXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBzZW5kU2FsZXNJbnZvaWNlRW1haWwocjogU2VuZFNhbGVzSW52b2ljZUVtYWlsUmVxdWVzdCB8IFNlbmRTYWxlc0ludm9pY2VFbWFpbFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2VuZFNhbGVzSW52b2ljZUVtYWlsUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTZW5kU2FsZXNJbnZvaWNlRW1haWxSZXF1ZXN0PnIpIDogbmV3IFNlbmRTYWxlc0ludm9pY2VFbWFpbFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2VuZFNhbGVzSW52b2ljZUVtYWlsXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBjaGFyZ2VTYWxlc0ludm9pY2UocjogQ2hhcmdlU2FsZXNJbnZvaWNlUmVxdWVzdCB8IENoYXJnZVNhbGVzSW52b2ljZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q2hhcmdlU2FsZXNJbnZvaWNlUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxDaGFyZ2VTYWxlc0ludm9pY2VSZXF1ZXN0PnIpIDogbmV3IENoYXJnZVNhbGVzSW52b2ljZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvQ2hhcmdlU2FsZXNJbnZvaWNlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBzZW5kU2FsZXNJbnZvaWNlUmVjZWlwdEVtYWlsKHI6IFNlbmRTYWxlc0ludm9pY2VSZWNlaXB0RW1haWxSZXF1ZXN0IHwgU2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8U2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3Q+cikgOiBuZXcgU2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2VuZFNhbGVzSW52b2ljZVJlY2VpcHRFbWFpbFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgY3JlYXRlU3RyaXBlRXh0ZXJuYWxBY2NvdW50KHI6IENyZWF0ZVN0cmlwZUV4dGVybmFsQWNjb3VudFJlcXVlc3QgfCBDcmVhdGVTdHJpcGVFeHRlcm5hbEFjY291bnRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENyZWF0ZVN0cmlwZUV4dGVybmFsQWNjb3VudFJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8Q3JlYXRlU3RyaXBlRXh0ZXJuYWxBY2NvdW50UmVxdWVzdD5yKSA6IG5ldyBDcmVhdGVTdHJpcGVFeHRlcm5hbEFjY291bnRSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0NyZWF0ZVN0cmlwZUV4dGVybmFsQWNjb3VudFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB7Li4udGhpcy5hcGlPcHRpb25zKCksIG9ic2VydmU6ICdyZXNwb25zZSd9KTtcbiAgICB9XG4gICAgbGlzdEJhbmtBY2NvdW50cyhyOiBMaXN0QmFua0FjY291bnRzUmVxdWVzdCB8IExpc3RCYW5rQWNjb3VudHNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxMaXN0QmFua0FjY291bnRzUmVzcG9uc2U+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPExpc3RCYW5rQWNjb3VudHNSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPExpc3RCYW5rQWNjb3VudHNSZXF1ZXN0PnIpIDogbmV3IExpc3RCYW5rQWNjb3VudHNSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8TGlzdEJhbmtBY2NvdW50c1Jlc3BvbnNlSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvTGlzdEJhbmtBY2NvdW50c1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IExpc3RCYW5rQWNjb3VudHNSZXNwb25zZS5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBzZXREZWZhdWx0QmFua0FjY291bnQocjogU2V0RGVmYXVsdEJhbmtBY2NvdW50UmVxdWVzdCB8IFNldERlZmF1bHRCYW5rQWNjb3VudFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8U2V0RGVmYXVsdEJhbmtBY2NvdW50UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxTZXREZWZhdWx0QmFua0FjY291bnRSZXF1ZXN0PnIpIDogbmV3IFNldERlZmF1bHRCYW5rQWNjb3VudFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvU2V0RGVmYXVsdEJhbmtBY2NvdW50XCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBkZWxldGVCYW5rQWNjb3VudChyOiBEZWxldGVCYW5rQWNjb3VudFJlcXVlc3QgfCBEZWxldGVCYW5rQWNjb3VudFJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEh0dHBSZXNwb25zZTxudWxsPj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8RGVsZXRlQmFua0FjY291bnRSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPERlbGV0ZUJhbmtBY2NvdW50UmVxdWVzdD5yKSA6IG5ldyBEZWxldGVCYW5rQWNjb3VudFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxudWxsPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvRGVsZXRlQmFua0FjY291bnRcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIGdldE11bHRpUmV0YWlsQ29uZmlndXJhdGlvbnMocjogR2V0TXVsdGlSZXRhaWxDb25maWd1cmF0aW9uc1JlcXVlc3QgfCBHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0TXVsdGlSZXRhaWxDb25maWd1cmF0aW9uc1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdD5yKSA6IG5ldyBHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldE11bHRpUmV0YWlsQ29uZmlndXJhdGlvbnNSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0dldE11bHRpUmV0YWlsQ29uZmlndXJhdGlvbnNcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRNdWx0aVJldGFpbENvbmZpZ3VyYXRpb25zUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgdXBzZXJ0UmV0YWlsQ29uZmlndXJhdGlvbihyOiBVcHNlcnRSZXRhaWxDb25maWd1cmF0aW9uUmVxdWVzdCB8IFVwc2VydFJldGFpbENvbmZpZ3VyYXRpb25SZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPFVwc2VydFJldGFpbENvbmZpZ3VyYXRpb25SZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPFVwc2VydFJldGFpbENvbmZpZ3VyYXRpb25SZXF1ZXN0PnIpIDogbmV3IFVwc2VydFJldGFpbENvbmZpZ3VyYXRpb25SZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL1Vwc2VydFJldGFpbENvbmZpZ3VyYXRpb25cIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIHVwc2VydERlZmF1bHRSZXRhaWxDdXN0b21lckNvbmZpZ3VyYXRpb24ocjogVXBzZXJ0RGVmYXVsdFJldGFpbEN1c3RvbWVyQ29uZmlndXJhdGlvblJlcXVlc3QgfCBVcHNlcnREZWZhdWx0UmV0YWlsQ3VzdG9tZXJDb25maWd1cmF0aW9uUmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8SHR0cFJlc3BvbnNlPG51bGw+PiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxVcHNlcnREZWZhdWx0UmV0YWlsQ3VzdG9tZXJDb25maWd1cmF0aW9uUmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxVcHNlcnREZWZhdWx0UmV0YWlsQ3VzdG9tZXJDb25maWd1cmF0aW9uUmVxdWVzdD5yKSA6IG5ldyBVcHNlcnREZWZhdWx0UmV0YWlsQ3VzdG9tZXJDb25maWd1cmF0aW9uUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PG51bGw+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9VcHNlcnREZWZhdWx0UmV0YWlsQ3VzdG9tZXJDb25maWd1cmF0aW9uXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHsuLi50aGlzLmFwaU9wdGlvbnMoKSwgb2JzZXJ2ZTogJ3Jlc3BvbnNlJ30pO1xuICAgIH1cbiAgICBnZXRSZXRhaWxCYWxhbmNlKHI6IEdldFJldGFpbEJhbGFuY2VSZXF1ZXN0IHwgR2V0UmV0YWlsQmFsYW5jZVJlcXVlc3RJbnRlcmZhY2UpOiBPYnNlcnZhYmxlPEdldFJldGFpbEJhbGFuY2VSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8R2V0UmV0YWlsQmFsYW5jZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0UmV0YWlsQmFsYW5jZVJlcXVlc3Q+cikgOiBuZXcgR2V0UmV0YWlsQmFsYW5jZVJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxHZXRSZXRhaWxCYWxhbmNlUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9HZXRSZXRhaWxCYWxhbmNlXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gR2V0UmV0YWlsQmFsYW5jZVJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGdldFBheW91dFN1bW1hcnkocjogR2V0UGF5b3V0U3VtbWFyeVJlcXVlc3QgfCBHZXRQYXlvdXRTdW1tYXJ5UmVxdWVzdEludGVyZmFjZSk6IE9ic2VydmFibGU8R2V0UGF5b3V0U3VtbWFyeVJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRQYXlvdXRTdW1tYXJ5UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxHZXRQYXlvdXRTdW1tYXJ5UmVxdWVzdD5yKSA6IG5ldyBHZXRQYXlvdXRTdW1tYXJ5UmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldFBheW91dFN1bW1hcnlSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0dldFBheW91dFN1bW1hcnlcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgdGhpcy5hcGlPcHRpb25zKCkpXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAocmVzcCA9PiBHZXRQYXlvdXRTdW1tYXJ5UmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgbGlzdFJldGFpbFBheW91dHMocjogTGlzdFJldGFpbFBheW91dHNSZXF1ZXN0IHwgTGlzdFJldGFpbFBheW91dHNSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxMaXN0UmV0YWlsUGF5b3V0c1Jlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxMaXN0UmV0YWlsUGF5b3V0c1JlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8TGlzdFJldGFpbFBheW91dHNSZXF1ZXN0PnIpIDogbmV3IExpc3RSZXRhaWxQYXlvdXRzUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PExpc3RSZXRhaWxQYXlvdXRzUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9MaXN0UmV0YWlsUGF5b3V0c1wiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IExpc3RSZXRhaWxQYXlvdXRzUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZ2V0UmV0YWlsUGF5b3V0KHI6IEdldFJldGFpbFBheW91dFJlcXVlc3QgfCBHZXRSZXRhaWxQYXlvdXRSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRSZXRhaWxQYXlvdXRSZXNwb25zZT4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8R2V0UmV0YWlsUGF5b3V0UmVxdWVzdD5yKS50b0FwaUpzb24pID8gKDxHZXRSZXRhaWxQYXlvdXRSZXF1ZXN0PnIpIDogbmV3IEdldFJldGFpbFBheW91dFJlcXVlc3Qocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxHZXRSZXRhaWxQYXlvdXRSZXNwb25zZUludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0dldFJldGFpbFBheW91dFwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IEdldFJldGFpbFBheW91dFJlc3BvbnNlLmZyb21Qcm90byhyZXNwKSlcbiAgICAgICAgICAgICk7XG4gICAgfVxuICAgIGNyZWF0ZVJlcG9ydFJ1bihyOiBDcmVhdGVNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuIHwgQ3JlYXRlTWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bkludGVyZmFjZSk6IE9ic2VydmFibGU8TWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bj4ge1xuICAgICAgICBjb25zdCByZXF1ZXN0ID0gKCg8Q3JlYXRlTWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bj5yKS50b0FwaUpzb24pID8gKDxDcmVhdGVNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuPnIpIDogbmV3IENyZWF0ZU1lcmNoYW50U2VydmljZXNSZXBvcnRSdW4ocik7XG4gICAgICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuSW50ZXJmYWNlPih0aGlzLl9ob3N0ICsgXCIvYmlsbGluZy52MS5NZXJjaGFudFNlcnZpY2UvQ3JlYXRlUmVwb3J0UnVuXCIsIHJlcXVlc3QudG9BcGlKc29uKCksIHRoaXMuYXBpT3B0aW9ucygpKVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHJlc3AgPT4gTWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bi5mcm9tUHJvdG8ocmVzcCkpXG4gICAgICAgICAgICApO1xuICAgIH1cbiAgICBnZXRSZXBvcnRSdW4ocjogR2V0TWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1biB8IEdldE1lcmNoYW50U2VydmljZXNSZXBvcnRSdW5JbnRlcmZhY2UpOiBPYnNlcnZhYmxlPE1lcmNoYW50U2VydmljZXNSZXBvcnRSdW4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPEdldE1lcmNoYW50U2VydmljZXNSZXBvcnRSdW4+cikudG9BcGlKc29uKSA/ICg8R2V0TWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bj5yKSA6IG5ldyBHZXRNZXJjaGFudFNlcnZpY2VzUmVwb3J0UnVuKHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8TWVyY2hhbnRTZXJ2aWNlc1JlcG9ydFJ1bkludGVyZmFjZT4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0dldFJlcG9ydFJ1blwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IE1lcmNoYW50U2VydmljZXNSZXBvcnRSdW4uZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgZ2V0UmV0YWlsQWNjb3VudEJhbGFuY2UocjogR2V0UmV0YWlsQWNjb3VudEJhbGFuY2VSZXF1ZXN0IHwgR2V0UmV0YWlsQWNjb3VudEJhbGFuY2VSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxHZXRSZXRhaWxBY2NvdW50QmFsYW5jZVJlc3BvbnNlPiB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSAoKDxHZXRSZXRhaWxBY2NvdW50QmFsYW5jZVJlcXVlc3Q+cikudG9BcGlKc29uKSA/ICg8R2V0UmV0YWlsQWNjb3VudEJhbGFuY2VSZXF1ZXN0PnIpIDogbmV3IEdldFJldGFpbEFjY291bnRCYWxhbmNlUmVxdWVzdChyKTtcbiAgICAgICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0PEdldFJldGFpbEFjY291bnRCYWxhbmNlUmVzcG9uc2VJbnRlcmZhY2U+KHRoaXMuX2hvc3QgKyBcIi9iaWxsaW5nLnYxLk1lcmNoYW50U2VydmljZS9HZXRSZXRhaWxBY2NvdW50QmFsYW5jZVwiLCByZXF1ZXN0LnRvQXBpSnNvbigpLCB0aGlzLmFwaU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChyZXNwID0+IEdldFJldGFpbEFjY291bnRCYWxhbmNlUmVzcG9uc2UuZnJvbVByb3RvKHJlc3ApKVxuICAgICAgICAgICAgKTtcbiAgICB9XG4gICAgY2FuY2VsUmV0YWlsQmlsbGluZyhyOiBDYW5jZWxSZXRhaWxCaWxsaW5nUmVxdWVzdCB8IENhbmNlbFJldGFpbEJpbGxpbmdSZXF1ZXN0SW50ZXJmYWNlKTogT2JzZXJ2YWJsZTxIdHRwUmVzcG9uc2U8bnVsbD4+IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9ICgoPENhbmNlbFJldGFpbEJpbGxpbmdSZXF1ZXN0PnIpLnRvQXBpSnNvbikgPyAoPENhbmNlbFJldGFpbEJpbGxpbmdSZXF1ZXN0PnIpIDogbmV3IENhbmNlbFJldGFpbEJpbGxpbmdSZXF1ZXN0KHIpO1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwLnBvc3Q8bnVsbD4odGhpcy5faG9zdCArIFwiL2JpbGxpbmcudjEuTWVyY2hhbnRTZXJ2aWNlL0NhbmNlbFJldGFpbEJpbGxpbmdcIiwgcmVxdWVzdC50b0FwaUpzb24oKSwgey4uLnRoaXMuYXBpT3B0aW9ucygpLCBvYnNlcnZlOiAncmVzcG9uc2UnfSk7XG4gICAgfVxuICAgIFxufVxuIl19
|