@tesouro/embedded-components-react 0.5.184 → 0.5.185

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.
@@ -27,7 +27,7 @@ var se = process.env.NODE_ENV === "production" ? {
27
27
  styles: "@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');{}.invoicePreviewMonite{--font-size-invoice-title:2.25rem;--font-size-header:0.624rem;--font-size-total-label:0.83195rem;--line-height-header:1.333;--font-weight-header:700;--font-size-body:0.6239625rem;--font-size-small:0.554rem;--line-height-body:0.83195rem;--spacing-xxs:0.139rem;--spacing-xs:0.25rem;--spacing-xs-sm:0.41625rem;--spacing-sm:0.5rem;--spacing-md:0.75rem;--spacing-lg:1rem;--spacing-xl:1.5rem;--spacing-xxl:2rem;--padding-xs:0.208125rem;--padding-sm:0.2775rem;--padding-md:0.554rem;--logo-width:8.875rem;--logo-height:4.4375rem;--totals-table-width:18.75rem;--detail-label-width:6.5rem;--col-product-min-width:15rem;--col-qty-width:3rem;--col-price-width:4.5rem;--col-amount-width:5rem;--col-taxable-width:3rem;--text-primary:#101011;--text-neutral:#666666;--text-muted:#999999;--border-color:#e6e6e6;--rule-color:#d9d9d9;--bg-header:#f2f2f2;--accent-color:#432dd7;--border-radius:var(--spacing-xs);background-color:white;display:flex;flex-direction:column;width:100%;height:100%;min-height:11in;padding:2.5rem;font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;color:var(--text-primary);font-size:var(--font-size-body);line-height:var(--line-height-body);isolation:isolate;box-sizing:border-box;}.invoicePreviewMonite *,.invoicePreviewMonite *::before,.invoicePreviewMonite *::after{box-sizing:border-box;}.invoicePreviewMonite .header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-xl);margin-bottom:var(--spacing-xxl);}.invoicePreviewMonite .issuerBlock{display:flex;flex-direction:column;gap:var(--spacing-xxs);}.invoicePreviewMonite .invoiceTitle{font-size:var(--font-size-invoice-title);font-weight:500;margin:0 0 var(--spacing-sm);line-height:1.1;}.invoicePreviewMonite .companyText{margin:0;}.invoicePreviewMonite .companyName{font-weight:700;}.invoicePreviewMonite .logoWrapper{display:flex;align-items:center;justify-content:center;min-width:var(--logo-width);min-height:var(--logo-height);}.invoicePreviewMonite .logoWrapper.no-logo{background-color:var(--bg-header);border-radius:var(--border-radius);color:var(--text-muted);}.invoicePreviewMonite .logoImage{max-width:var(--logo-width);max-height:var(--logo-height);object-fit:contain;}.invoicePreviewMonite .mainInfoSection{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-xxl);}.invoicePreviewMonite .infoColumn{display:flex;flex-direction:column;gap:var(--spacing-sm);}.invoicePreviewMonite .columnHeaderTitle{font-size:var(--font-size-body);font-weight:500;line-height:var(--line-height-header);background-color:var(--bg-header);border-radius:var(--border-radius);padding:var(--padding-sm) var(--padding-md);margin:0;}.invoicePreviewMonite .columnContent{display:flex;flex-direction:column;gap:var(--spacing-xxs);padding:0 var(--padding-md);}.invoicePreviewMonite .columnText{margin:0;}.invoicePreviewMonite .detailList{display:flex;flex-direction:column;gap:var(--spacing-xxs);margin:0;padding:0 var(--padding-md);}.invoicePreviewMonite .detailRow{display:flex;gap:var(--spacing-lg);}.invoicePreviewMonite .detailLabel{flex:0 0 var(--detail-label-width);}.invoicePreviewMonite .detailValue{margin:0;}.invoicePreviewMonite .paymentTermLine{display:block;}.invoicePreviewMonite .memoText{margin:0 0 var(--spacing-md);padding:0 var(--padding-md);white-space:pre-wrap;}.invoicePreviewMonite .lineItemsSection{margin-bottom:var(--spacing-md);}.invoicePreviewMonite .lineItemsTable{width:100%;border-collapse:collapse;border-spacing:0;}.invoicePreviewMonite .lineItemsTable thead tr{background-color:var(--bg-header);}.invoicePreviewMonite .lineItemsTable th{font-weight:var(--font-weight-header);line-height:var(--line-height-header);text-align:left;padding:var(--padding-sm) var(--padding-md);}.invoicePreviewMonite .lineItemsTable td{padding:var(--padding-md);border-bottom:1px solid var(--border-color);vertical-align:top;}.invoicePreviewMonite .lineItemsTable .colProduct{min-width:var(--col-product-min-width);max-width:20rem;word-wrap:break-word;overflow-wrap:break-word;}.invoicePreviewMonite .lineItemsTable .colQty{width:var(--col-qty-width);text-align:left;}.invoicePreviewMonite .lineItemsTable .colPrice{width:var(--col-price-width);text-align:left;white-space:nowrap;}.invoicePreviewMonite .lineItemsTable .colTaxable{width:var(--col-taxable-width);text-align:left;}.invoicePreviewMonite .lineItemsTable .colAmount{width:var(--col-amount-width);text-align:right;white-space:nowrap;}.invoicePreviewMonite .lineItemsTable td.colAmount{font-weight:500;}.invoicePreviewMonite .noItemsRow .noItemsCell{text-align:center;color:var(--text-muted);font-style:italic;padding:var(--spacing-xl);}.invoicePreviewMonite .totalsSection{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-xxl);}.invoicePreviewMonite .totalsTable{width:var(--totals-table-width);max-width:100%;display:flex;flex-direction:column;gap:var(--spacing-xs-sm);}.invoicePreviewMonite .totalRow{display:flex;justify-content:flex-end;align-items:baseline;gap:var(--spacing-xl);padding:0 var(--padding-md);}.invoicePreviewMonite .totalLabel{text-align:right;}.invoicePreviewMonite .totalValue{text-align:right;min-width:6rem;white-space:nowrap;font-weight:500;}.invoicePreviewMonite .companyEmail,.invoicePreviewMonite .companyPhone,.invoicePreviewMonite .email,.invoicePreviewMonite .phone{color:var(--text-muted);}.invoicePreviewMonite .mutedTotal{color:var(--text-muted);}.invoicePreviewMonite .finalTotal{margin-top:var(--spacing-xxs);padding-top:var(--spacing-sm);border-top:1px solid var(--rule-color);font-size:var(--font-size-total-label);font-weight:700;}.invoicePreviewMonite .footerText{margin:0 0 var(--spacing-xxl);white-space:pre-wrap;}.invoicePreviewMonite .footerSection{display:flex;align-items:center;gap:var(--spacing-md);margin-top:auto;border-top:1px solid var(--border-color);padding-top:var(--spacing-lg);}.invoicePreviewMonite .paymentQrCode{flex-shrink:0;width:4.5rem;height:4.5rem;}.invoicePreviewMonite .paymentDetails{display:flex;flex-direction:column;gap:var(--spacing-xs);}.invoicePreviewMonite .paymentText{margin:0;}.invoicePreviewMonite .paymentLink{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--accent-color);font-weight:600;}.invoicePreviewMonite .paymentLinkIcon{width:1em;height:1em;}.invoicePreviewMonite .notSet{color:var(--text-muted);font-style:italic;}"
28
28
  } : {
29
29
  name: "1atsxro-0.83195rem-invoicePreviewMoniteStyles",
30
- styles: "@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');{}.invoicePreviewMonite{--font-size-invoice-title:2.25rem;--font-size-header:0.624rem;--font-size-total-label:0.83195rem;--line-height-header:1.333;--font-weight-header:700;--font-size-body:0.6239625rem;--font-size-small:0.554rem;--line-height-body:0.83195rem;--spacing-xxs:0.139rem;--spacing-xs:0.25rem;--spacing-xs-sm:0.41625rem;--spacing-sm:0.5rem;--spacing-md:0.75rem;--spacing-lg:1rem;--spacing-xl:1.5rem;--spacing-xxl:2rem;--padding-xs:0.208125rem;--padding-sm:0.2775rem;--padding-md:0.554rem;--logo-width:8.875rem;--logo-height:4.4375rem;--totals-table-width:18.75rem;--detail-label-width:6.5rem;--col-product-min-width:15rem;--col-qty-width:3rem;--col-price-width:4.5rem;--col-amount-width:5rem;--col-taxable-width:3rem;--text-primary:#101011;--text-neutral:#666666;--text-muted:#999999;--border-color:#e6e6e6;--rule-color:#d9d9d9;--bg-header:#f2f2f2;--accent-color:#432dd7;--border-radius:var(--spacing-xs);background-color:white;display:flex;flex-direction:column;width:100%;height:100%;min-height:11in;padding:2.5rem;font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;color:var(--text-primary);font-size:var(--font-size-body);line-height:var(--line-height-body);isolation:isolate;box-sizing:border-box;}.invoicePreviewMonite *,.invoicePreviewMonite *::before,.invoicePreviewMonite *::after{box-sizing:border-box;}.invoicePreviewMonite .header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-xl);margin-bottom:var(--spacing-xxl);}.invoicePreviewMonite .issuerBlock{display:flex;flex-direction:column;gap:var(--spacing-xxs);}.invoicePreviewMonite .invoiceTitle{font-size:var(--font-size-invoice-title);font-weight:500;margin:0 0 var(--spacing-sm);line-height:1.1;}.invoicePreviewMonite .companyText{margin:0;}.invoicePreviewMonite .companyName{font-weight:700;}.invoicePreviewMonite .logoWrapper{display:flex;align-items:center;justify-content:center;min-width:var(--logo-width);min-height:var(--logo-height);}.invoicePreviewMonite .logoWrapper.no-logo{background-color:var(--bg-header);border-radius:var(--border-radius);color:var(--text-muted);}.invoicePreviewMonite .logoImage{max-width:var(--logo-width);max-height:var(--logo-height);object-fit:contain;}.invoicePreviewMonite .mainInfoSection{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-xxl);}.invoicePreviewMonite .infoColumn{display:flex;flex-direction:column;gap:var(--spacing-sm);}.invoicePreviewMonite .columnHeaderTitle{font-size:var(--font-size-body);font-weight:500;line-height:var(--line-height-header);background-color:var(--bg-header);border-radius:var(--border-radius);padding:var(--padding-sm) var(--padding-md);margin:0;}.invoicePreviewMonite .columnContent{display:flex;flex-direction:column;gap:var(--spacing-xxs);padding:0 var(--padding-md);}.invoicePreviewMonite .columnText{margin:0;}.invoicePreviewMonite .detailList{display:flex;flex-direction:column;gap:var(--spacing-xxs);margin:0;padding:0 var(--padding-md);}.invoicePreviewMonite .detailRow{display:flex;gap:var(--spacing-lg);}.invoicePreviewMonite .detailLabel{flex:0 0 var(--detail-label-width);}.invoicePreviewMonite .detailValue{margin:0;}.invoicePreviewMonite .paymentTermLine{display:block;}.invoicePreviewMonite .memoText{margin:0 0 var(--spacing-md);padding:0 var(--padding-md);white-space:pre-wrap;}.invoicePreviewMonite .lineItemsSection{margin-bottom:var(--spacing-md);}.invoicePreviewMonite .lineItemsTable{width:100%;border-collapse:collapse;border-spacing:0;}.invoicePreviewMonite .lineItemsTable thead tr{background-color:var(--bg-header);}.invoicePreviewMonite .lineItemsTable th{font-weight:var(--font-weight-header);line-height:var(--line-height-header);text-align:left;padding:var(--padding-sm) var(--padding-md);}.invoicePreviewMonite .lineItemsTable td{padding:var(--padding-md);border-bottom:1px solid var(--border-color);vertical-align:top;}.invoicePreviewMonite .lineItemsTable .colProduct{min-width:var(--col-product-min-width);max-width:20rem;word-wrap:break-word;overflow-wrap:break-word;}.invoicePreviewMonite .lineItemsTable .colQty{width:var(--col-qty-width);text-align:left;}.invoicePreviewMonite .lineItemsTable .colPrice{width:var(--col-price-width);text-align:left;white-space:nowrap;}.invoicePreviewMonite .lineItemsTable .colTaxable{width:var(--col-taxable-width);text-align:left;}.invoicePreviewMonite .lineItemsTable .colAmount{width:var(--col-amount-width);text-align:right;white-space:nowrap;}.invoicePreviewMonite .lineItemsTable td.colAmount{font-weight:500;}.invoicePreviewMonite .noItemsRow .noItemsCell{text-align:center;color:var(--text-muted);font-style:italic;padding:var(--spacing-xl);}.invoicePreviewMonite .totalsSection{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-xxl);}.invoicePreviewMonite .totalsTable{width:var(--totals-table-width);max-width:100%;display:flex;flex-direction:column;gap:var(--spacing-xs-sm);}.invoicePreviewMonite .totalRow{display:flex;justify-content:flex-end;align-items:baseline;gap:var(--spacing-xl);padding:0 var(--padding-md);}.invoicePreviewMonite .totalLabel{text-align:right;}.invoicePreviewMonite .totalValue{text-align:right;min-width:6rem;white-space:nowrap;font-weight:500;}.invoicePreviewMonite .companyEmail,.invoicePreviewMonite .companyPhone,.invoicePreviewMonite .email,.invoicePreviewMonite .phone{color:var(--text-muted);}.invoicePreviewMonite .mutedTotal{color:var(--text-muted);}.invoicePreviewMonite .finalTotal{margin-top:var(--spacing-xxs);padding-top:var(--spacing-sm);border-top:1px solid var(--rule-color);font-size:var(--font-size-total-label);font-weight:700;}.invoicePreviewMonite .footerText{margin:0 0 var(--spacing-xxl);white-space:pre-wrap;}.invoicePreviewMonite .footerSection{display:flex;align-items:center;gap:var(--spacing-md);margin-top:auto;border-top:1px solid var(--border-color);padding-top:var(--spacing-lg);}.invoicePreviewMonite .paymentQrCode{flex-shrink:0;width:4.5rem;height:4.5rem;}.invoicePreviewMonite .paymentDetails{display:flex;flex-direction:column;gap:var(--spacing-xs);}.invoicePreviewMonite .paymentText{margin:0;}.invoicePreviewMonite .paymentLink{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--accent-color);font-weight:600;}.invoicePreviewMonite .paymentLinkIcon{width:1em;height:1em;}.invoicePreviewMonite .notSet{color:var(--text-muted);font-style:italic;};label:invoicePreviewMoniteStyles;/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL1Rlc291cm8uUGF5bWVudHMuRnJvbnRlbmRzL1Rlc291cm8uUGF5bWVudHMuRnJvbnRlbmRzL2xpYnMvdGVzb3Vyby1lbWJlZGRlZC1jb21wb25lbnRzLXJlYWN0L21vbml0ZS1zZGsvc3JjL2NvbXBvbmVudHMvcmVjZWl2YWJsZXMvY29tcG9uZW50cy9JbnZvaWNlUHJldmlld01vbml0ZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK0JzQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay9UZXNvdXJvLlBheW1lbnRzLkZyb250ZW5kcy9UZXNvdXJvLlBheW1lbnRzLkZyb250ZW5kcy9saWJzL3Rlc291cm8tZW1iZWRkZWQtY29tcG9uZW50cy1yZWFjdC9tb25pdGUtc2RrL3NyYy9jb21wb25lbnRzL3JlY2VpdmFibGVzL2NvbXBvbmVudHMvSW52b2ljZVByZXZpZXdNb25pdGUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3JlYXRlUmVjZWl2YWJsZXNGb3JtQmVmb3JlVmFsaWRhdGlvbkxpbmVJdGVtUHJvcHMgfSBmcm9tICdAL2NvbXBvbmVudHMvcmVjZWl2YWJsZXMvdmFsaWRhdGlvbic7XG5pbXBvcnQgdHlwZSB7XG4gIFNhbml0aXphYmxlTGluZUl0ZW0sXG4gIEludm9pY2VQcmV2aWV3QmFzZVByb3BzLFxufSBmcm9tICdAL2NvbXBvbmVudHMvcmVjZWl2YWJsZXMvdHlwZXMnO1xuaW1wb3J0IHsgc2FuaXRpemVMaW5lSXRlbXMgfSBmcm9tICdAL2NvbXBvbmVudHMvcmVjZWl2YWJsZXMvdXRpbHMvbGluZUl0ZW1VdGlscyc7XG5pbXBvcnQgeyBidWlsZFByZXZpZXdQYXltZW50VGVybXNWaWV3IH0gZnJvbSAnQC9jb21wb25lbnRzL3JlY2VpdmFibGVzL3V0aWxzL2J1aWxkUHJldmlld1BheW1lbnRUZXJtc1ZpZXcnO1xuaW1wb3J0IHsgZ2V0UmVjZWl2ZVBheW1lbnRNZXRob2RzIH0gZnJvbSAnQC9jb21wb25lbnRzL3JlY2VpdmFibGVzL3V0aWxzL2dldFJlY2VpdmVQYXltZW50TWV0aG9kcyc7XG5pbXBvcnQge1xuICBnZXRNZWFzdXJlVW5pdE5hbWUsXG4gIGdldENvdW50ZXJwYXJ0UGhvbmUsXG4gIGdldENvdW50cnlOYW1lLFxufSBmcm9tICdAL2NvbXBvbmVudHMvcmVjZWl2YWJsZXMvdXRpbHMvaW52b2ljZVByZXZpZXcnO1xuaW1wb3J0IHsgYnVpbGRQcmV2aWV3QWRkcmVzc0xpbmVzIH0gZnJvbSAnQC9jb21wb25lbnRzL3JlY2VpdmFibGVzL3V0aWxzL2J1aWxkUHJldmlld0FkZHJlc3NMaW5lcyc7XG5pbXBvcnQgeyBJbnZvaWNlUHJldmlld01vbml0ZUFkZHJlc3NMaW5lcyB9IGZyb20gJy4vSW52b2ljZVByZXZpZXdNb25pdGVBZGRyZXNzTGluZXMnO1xuaW1wb3J0IHFyU2FtcGxlIGZyb20gJ0AvY29tcG9uZW50cy9yZWNlaXZhYmxlcy9hc3NldHMvcXItc2FtcGxlLnN2Zz91cmwnO1xuaW1wb3J0IHtcbiAgZ2V0Q291bnRlcnBhcnROYW1lLFxuICBpc0luZGl2aWR1YWxDb3VudGVycGFydCxcbiAgaXNPcmdhbml6YXRpb25Db3VudGVycGFydCxcbn0gZnJvbSAnQC9jb21wb25lbnRzL2NvdW50ZXJwYXJ0cy9oZWxwZXJzJztcbmltcG9ydCB7IHVzZUdldEJhbmtBY2NvdW50QnlJZCB9IGZyb20gJ0AvY29tcG9uZW50cy9yZWNlaXZhYmxlcy9ob29rcyc7XG5pbXBvcnQgeyB1c2VDcmVhdGVJbnZvaWNlUHJvZHVjdHNUYWJsZSB9IGZyb20gJ0AvY29tcG9uZW50cy9yZWNlaXZhYmxlcy9ob29rcy91c2VDcmVhdGVJbnZvaWNlUHJvZHVjdHNUYWJsZSc7XG5pbXBvcnQgeyB1c2VNb25pdGVDb250ZXh0IH0gZnJvbSAnQC9jb3JlL2NvbnRleHQvTW9uaXRlQ29udGV4dCc7XG5pbXBvcnQgeyB1c2VFbnRpdHlTZXR0aW5ncyB9IGZyb20gJ0AvY29yZS9xdWVyaWVzJztcbmltcG9ydCB7IHVzZUN1cnJlbmNpZXMgfSBmcm9tICdAL2NvcmUvaG9va3MnO1xuaW1wb3J0IHsgY24gfSBmcm9tICdAL3VpL2xpYi91dGlscyc7XG5pbXBvcnQgeyBHbG9iYWwsIGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHVzZUxpbmd1aSB9IGZyb20gJ0BsaW5ndWkvcmVhY3QnO1xuaW1wb3J0IHsgQXJyb3dSaWdodCB9IGZyb20gJ2x1Y2lkZS1yZWFjdCc7XG5cbmNvbnN0IGludm9pY2VQcmV2aWV3TW9uaXRlU3R5bGVzID0gY3NzYFxuICBAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1JbnRlcjp3Z2h0QDQwMDs1MDA7NjAwOzcwMCZkaXNwbGF5PXN3YXAnKTtcblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUge1xuICAgIC0tZm9udC1zaXplLWludm9pY2UtdGl0bGU6IDIuMjVyZW07IC8qIDM2cHggKi9cbiAgICAtLWZvbnQtc2l6ZS1oZWFkZXI6IDAuNjI0cmVtOyAvKiA5Ljk4MzRweCAqL1xuICAgIC0tZm9udC1zaXplLXRvdGFsLWxhYmVsOiAwLjgzMTk1cmVtOyAvKiAxMy4zMTEycHggKi9cbiAgICAtLWxpbmUtaGVpZ2h0LWhlYWRlcjogMS4zMzM7IC8qIDEzLjMxMTJweCAvIDkuOTgzNHB4ICovXG4gICAgLS1mb250LXdlaWdodC1oZWFkZXI6IDcwMDtcbiAgICAtLWZvbnQtc2l6ZS1ib2R5OiAwLjYyMzk2MjVyZW07IC8qIDkuOTgzNHB4ICovXG4gICAgLS1mb250LXNpemUtc21hbGw6IDAuNTU0cmVtOyAvKiA4Ljg3NDFweCAqL1xuICAgIC0tbGluZS1oZWlnaHQtYm9keTogMC44MzE5NXJlbTsgLyogMTMuMzExMnB4ICovXG5cbiAgICAtLXNwYWNpbmcteHhzOiAwLjEzOXJlbTsgLyogMi4yMTlweCAqL1xuICAgIC0tc3BhY2luZy14czogMC4yNXJlbTsgLyogNHB4ICovXG4gICAgLS1zcGFjaW5nLXhzLXNtOiAwLjQxNjI1cmVtOyAvKiA2LjY2cHggKi9cbiAgICAtLXNwYWNpbmctc206IDAuNXJlbTsgLyogOHB4ICovXG4gICAgLS1zcGFjaW5nLW1kOiAwLjc1cmVtOyAvKiAxMnB4ICovXG4gICAgLS1zcGFjaW5nLWxnOiAxcmVtOyAvKiAxNnB4ICovXG4gICAgLS1zcGFjaW5nLXhsOiAxLjVyZW07IC8qIDI0cHggKi9cbiAgICAtLXNwYWNpbmcteHhsOiAycmVtOyAvKiAzMnB4ICovXG5cbiAgICAtLXBhZGRpbmcteHM6IDAuMjA4MTI1cmVtOyAvKiAzLjMzcHggKi9cbiAgICAtLXBhZGRpbmctc206IDAuMjc3NXJlbTsgLyogNC40NHB4ICovXG4gICAgLS1wYWRkaW5nLW1kOiAwLjU1NHJlbTsgLyogOC44NzRweCAqL1xuXG4gICAgLS1sb2dvLXdpZHRoOiA4Ljg3NXJlbTsgLyogfjE0MnB4ICovXG4gICAgLS1sb2dvLWhlaWdodDogNC40Mzc1cmVtOyAvKiB+NzFweCAqL1xuICAgIC0tdG90YWxzLXRhYmxlLXdpZHRoOiAxOC43NXJlbTsgLyogMzAwcHggKi9cbiAgICAtLWRldGFpbC1sYWJlbC13aWR0aDogNi41cmVtOyAvKiAxMDRweCAqL1xuXG4gICAgLS1jb2wtcHJvZHVjdC1taW4td2lkdGg6IDE1cmVtO1xuICAgIC0tY29sLXF0eS13aWR0aDogM3JlbTtcbiAgICAtLWNvbC1wcmljZS13aWR0aDogNC41cmVtO1xuICAgIC0tY29sLWFtb3VudC13aWR0aDogNXJlbTtcbiAgICAtLWNvbC10YXhhYmxlLXdpZHRoOiAzcmVtO1xuXG4gICAgLS10ZXh0LXByaW1hcnk6ICMxMDEwMTE7XG4gICAgLS10ZXh0LW5ldXRyYWw6ICM2NjY2NjY7XG4gICAgLS10ZXh0LW11dGVkOiAjOTk5OTk5O1xuICAgIC0tYm9yZGVyLWNvbG9yOiAjZTZlNmU2O1xuICAgIC8qIFRoZSBydWxlIGFib3ZlIFRvdGFsIGlzIGl0cyBvd24gZ3JleSwgbWF0Y2hpbmcgdGhlIGdlbmVyYXRlZCBQREYuICovXG4gICAgLS1ydWxlLWNvbG9yOiAjZDlkOWQ5O1xuICAgIC0tYmctaGVhZGVyOiAjZjJmMmYyO1xuICAgIC0tYWNjZW50LWNvbG9yOiAjNDMyZGQ3O1xuXG4gICAgLS1ib3JkZXItcmFkaXVzOiB2YXIoLS1zcGFjaW5nLXhzKTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTFpbjtcbiAgICBwYWRkaW5nOiAyLjVyZW07XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcicsICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJvZHkpO1xuICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlICosXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAqOjpiZWZvcmUsXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteGwpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHhsKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuaXNzdWVyQmxvY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuaW52b2ljZVRpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1pbnZvaWNlLXRpdGxlKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbjogMCAwIHZhcigtLXNwYWNpbmctc20pO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmNvbXBhbnlUZXh0IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmNvbXBhbnlOYW1lIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5sb2dvV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1pbi13aWR0aDogdmFyKC0tbG9nby13aWR0aCk7XG4gICAgbWluLWhlaWdodDogdmFyKC0tbG9nby1oZWlnaHQpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5sb2dvV3JhcHBlci5uby1sb2dvIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1oZWFkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubG9nb0ltYWdlIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWxvZ28td2lkdGgpO1xuICAgIG1heC1oZWlnaHQ6IHZhcigtLWxvZ28taGVpZ2h0KTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5tYWluSW5mb1NlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14bCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy14eGwpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5pbmZvQ29sdW1uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuY29sdW1uSGVhZGVyVGl0bGUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWhlYWRlcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctaGVhZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLXNtKSB2YXIoLS1wYWRkaW5nLW1kKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmNvbHVtbkNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXBhZGRpbmctbWQpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5jb2x1bW5UZXh0IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmRldGFpbExpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCB2YXIoLS1wYWRkaW5nLW1kKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuZGV0YWlsUm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy1sZyk7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmRldGFpbExhYmVsIHtcbiAgICBmbGV4OiAwIDAgdmFyKC0tZGV0YWlsLWxhYmVsLXdpZHRoKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuZGV0YWlsVmFsdWUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAucGF5bWVudFRlcm1MaW5lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubWVtb1RleHQge1xuICAgIG1hcmdpbjogMCAwIHZhcigtLXNwYWNpbmctbWQpO1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tcGFkZGluZy1tZCk7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5saW5lSXRlbXNTZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubGluZUl0ZW1zVGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmxpbmVJdGVtc1RhYmxlIHRoZWFkIHRyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1oZWFkZXIpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5saW5lSXRlbXNUYWJsZSB0aCB7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWhlYWRlcik7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWhlYWRlcik7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLXNtKSB2YXIoLS1wYWRkaW5nLW1kKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubGluZUl0ZW1zVGFibGUgdGQge1xuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctbWQpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmxpbmVJdGVtc1RhYmxlIC5jb2xQcm9kdWN0IHtcbiAgICBtaW4td2lkdGg6IHZhcigtLWNvbC1wcm9kdWN0LW1pbi13aWR0aCk7XG4gICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubGluZUl0ZW1zVGFibGUgLmNvbFF0eSB7XG4gICAgd2lkdGg6IHZhcigtLWNvbC1xdHktd2lkdGgpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAvKiBBIGN1cnJlbmN5IHN0cmluZyB3aXRoIG5vIHNwYWNlIGNhbm5vdCB3cmFwLCBzbyB0aGUgd2lkdGhzIGJlbG93IG5ldmVyXG4gICAgIG5lZWRlZCB0byBncm93LiBXaGF0IGRvZXMgd3JhcCBpcyBjdXJyZW5jeURpc3BsYXkgJ25hbWUnXG4gICAgIChcIjEsMjM0LDU2Ny44OSBVUyBkb2xsYXJzXCIpLCB0aGUgb25lIEludGwgZm9ybWF0IHdob3NlIHNlcGFyYXRvciBpcyBhXG4gICAgIHBsYWluIHNwYWNlIHJhdGhlciB0aGFuIFUrMDBBMC4gSXQgaXMgcmVhY2hhYmxlIHJhdGhlciB0aGFuIGh5cG90aGV0aWNhbDpcbiAgICAgdXNlQ3VycmVuY2llcyBwYXNzZXMgbG9jYWxlLmN1cnJlbmN5TnVtYmVyRm9ybWF0LmRpc3BsYXkgc3RyYWlnaHQgdGhyb3VnaFxuICAgICB0byBJbnRsLk51bWJlckZvcm1hdC4gSGVuY2Ugbm93cmFwIHJhdGhlciB0aGFuIGEgd2lkZXIgY29sdW1uLiAqL1xuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmxpbmVJdGVtc1RhYmxlIC5jb2xQcmljZSB7XG4gICAgd2lkdGg6IHZhcigtLWNvbC1wcmljZS13aWR0aCk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5saW5lSXRlbXNUYWJsZSAuY29sVGF4YWJsZSB7XG4gICAgd2lkdGg6IHZhcigtLWNvbC10YXhhYmxlLXdpZHRoKTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLyogUmlnaHQtYWxpZ25lZCBzbyBsaW5lIGFtb3VudHMgbGluZSB1cCB3aXRoIHRoZSBzdWJ0b3RhbCBmaWd1cmVzIGJlbG93XG4gICAgIHRoZSB0YWJsZTsgZXZlcnkgb3RoZXIgY29sdW1uIHN0YXlzIGxlZnQtYWxpZ25lZCAoRU1CRC00NzgyIGRlc2lnbikuICovXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubGluZUl0ZW1zVGFibGUgLmNvbEFtb3VudCB7XG4gICAgd2lkdGg6IHZhcigtLWNvbC1hbW91bnQtd2lkdGgpO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAvKiBUaGUgYW1vdW50IGlzIHdoYXQgYSByZWFkZXIgc2NhbnMgdGhlIHJvdyBmb3IsIHNvIGl0IHNpdHMgb25lIHN0ZXAgYWJvdmVcbiAgICAgdGhlIG90aGVyIGNlbGxzLiBTY29wZWQgdG8gdGQgc28gdGhlIGhlYWRlciBrZWVwcyBpdHMgb3duIHdlaWdodC4gKi9cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5saW5lSXRlbXNUYWJsZSB0ZC5jb2xBbW91bnQge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLm5vSXRlbXNSb3cgLm5vSXRlbXNDZWxsIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAudG90YWxzU2VjdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHhsKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAudG90YWxzVGFibGUge1xuICAgIHdpZHRoOiB2YXIoLS10b3RhbHMtdGFibGUtd2lkdGgpO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhzLXNtKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAudG90YWxSb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXBhZGRpbmctbWQpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC50b3RhbExhYmVsIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC8qIENhcnJpZXMgdGhlIHNhbWUgc2xpZ2h0IGxpZnQgYXMgdGhlIGxpbmUtaXRlbSBhbW91bnRzLCBzbyB0aGUgZmlndXJlXG4gICAgIGNvbHVtbiByZWFkcyBhcyBvbmUgcnVuIGZyb20gdGhlIHRhYmxlIGRvd24gdGhyb3VnaCB0aGUgdG90YWwuICovXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAudG90YWxWYWx1ZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWluLXdpZHRoOiA2cmVtO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIC8qIENvbnRhY3QgbGluZXMgYXJlIG11dGVkIGluIHRoZSBGaWdtYSBkZXNpZ24gc28gdGhlIG5hbWUgYW5kIGFkZHJlc3NcbiAgICAgY2FycnkgdGhlIGJsb2NrLiBTYW1lIGdyZXkgYXMgdGhlIHN1YnRvdGFsIHNwbGl0IGJlbG93LiAqL1xuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmNvbXBhbnlFbWFpbCxcbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5jb21wYW55UGhvbmUsXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuZW1haWwsXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAucGhvbmUge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgfVxuXG4gIC8qIFRoZSB0YXhhYmxlL25vbi10YXhhYmxlIHNwbGl0IGlzIHN1cHBvcnRpbmcgZGV0YWlsLCBzbyBpdCByZWFkcyBiYWNrIGEgc3RlcFxuICAgICBmcm9tIHRoZSBmaWd1cmVzIGVpdGhlciBzaWRlIG9mIGl0LiAqL1xuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLm11dGVkVG90YWwge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuZmluYWxUb3RhbCB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy14eHMpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tcnVsZS1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtdG90YWwtbGFiZWwpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmZvb3RlclRleHQge1xuICAgIG1hcmdpbjogMCAwIHZhcigtLXNwYWNpbmcteHhsKTtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmZvb3RlclNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctbWQpO1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbGcpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5wYXltZW50UXJDb2RlIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogNC41cmVtO1xuICAgIGhlaWdodDogNC41cmVtO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5wYXltZW50RGV0YWlscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLnBheW1lbnRUZXh0IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLnBheW1lbnRMaW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG4gICAgY29sb3I6IHZhcigtLWFjY2VudC1jb2xvcik7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAucGF5bWVudExpbmtJY29uIHtcbiAgICB3aWR0aDogMWVtO1xuICAgIGhlaWdodDogMWVtO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5ub3RTZXQge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBJbnZvaWNlUHJldmlld01vbml0ZSA9ICh7XG4gIGFkZHJlc3MsXG4gIGNvdW50ZXJwYXJ0LFxuICBjdXJyZW5jeSxcbiAgaW52b2ljZURhdGEsXG4gIGVudGl0eURhdGEsXG4gIHBheW1lbnRUZXJtcyxcbiAgbWVhc3VyZVVuaXRzID0gW10sXG59OiBJbnZvaWNlUHJldmlld0Jhc2VQcm9wcykgPT4ge1xuICBjb25zdCB7IGkxOG4gfSA9IHVzZUxpbmd1aSgpO1xuICBjb25zdCB7IGFwaSwgZW50aXR5SWQsIGxvY2FsZSB9ID0gdXNlTW9uaXRlQ29udGV4dCgpO1xuICBjb25zdCB7IGZvcm1hdEN1cnJlbmN5VG9EaXNwbGF5IH0gPSB1c2VDdXJyZW5jaWVzKCk7XG4gIGNvbnN0IHRheExhYmVsID0gaTE4bi5fKCdUYXgnKTtcbiAgLy8gRGVsaWJlcmF0ZWx5IHNlcGFyYXRlIGZyb20gdGF4TGFiZWwsIHdoaWNoIGlzIGFsc28gdGhlIHRvdGFscy1zZWN0aW9uIHJvd1xuICAvLyBsYWJlbCBhbmQgdGhlIGNvdW50ZXJwYXJ0L2VudGl0eSB0YXgtSUQgbGFiZWwuIFRoaXMgb25lIGlzIG9ubHkgdGhlXG4gIC8vIGxpbmUtaXRlbSBjb2x1bW4gaGVhZGVyLlxuICBjb25zdCB0YXhhYmxlTGFiZWwgPSBpMThuLl8oJ1RheGFibGUnKTtcbiAgLy8gQmFyZSAnWWVzJy8nTm8nIGlkcyByYXRoZXIgdGhhbiBsaW5ndWkgbXNnY3R4dDogbm90aGluZyBpbiBtb25pdGUtc2RrXG4gIC8vIHVzZXMgbXNnY3R4dCBhbmQgJ2VuJyBpcyB0aGUgb25seSBsb2NhbGUsIHNvIHRoaXMgd291bGQgYmUgdGhlIGxpYnJhcnknc1xuICAvLyBmaXJzdCBhbmQgb25seSBjYXNlLlxuICBjb25zdCB0YXhhYmxlWWVzTGFiZWwgPSBpMThuLl8oJ1llcycpO1xuICBjb25zdCB0YXhhYmxlTm9MYWJlbCA9IGkxOG4uXygnTm8nKTtcblxuICBjb25zdCB7XG4gICAgZG9jdW1lbnRfaWQ6IGRvY3VtZW50SWQsXG4gICAgcGF5bWVudF90ZXJtc19pZDogcGF5bWVudFRlcm1zSWQsXG4gICAgcGF5bWVudF90ZXJtc19jdXN0b21fZGF0ZTogcGF5bWVudFRlcm1zQ3VzdG9tRGF0ZSxcbiAgICBsaW5lX2l0ZW1zOiBpdGVtcyxcbiAgICBtZW1vLFxuICAgIGZvb3RlcixcbiAgICBiYW5rX2FjY291bnRfaWQ6IGVudGl0eUJhbmtBY2NvdW50SWQgPSAnJyxcbiAgICBiYW5rX2FjY291bnRfdHlwZTogYmFua0FjY291bnRUeXBlLFxuICAgIHRheF9tb2RlOiB0YXhNb2RlLFxuICAgIHB1cmNoYXNlX29yZGVyOiBwdXJjaGFzZU9yZGVyLFxuICAgIHRheF9yYXRlOiB0b3BMZXZlbFRheFJhdGUsXG4gICAgZGlzY291bnQsXG4gIH0gPSBpbnZvaWNlRGF0YTtcblxuICAvLyBUaGUgcmF0ZSBnb2VzIG9uIHRoZSB0b3RhbHMgcm93LCBub3QgdGhlIHRheC1JRCBsaW5lcyB0aGF0IGFsc28gcmVhZFxuICAvLyBcIlRheFwiLCBzbyB0aGlzIGlzIGJ1aWx0IGFwYXJ0IGZyb20gdGF4TGFiZWwuXG4gIGNvbnN0IHRheFJvd0xhYmVsID0gdG9wTGV2ZWxUYXhSYXRlXG4gICAgPyBpMThuLl8oJ1RheCAoe3JhdGV9JSknLCB7IHJhdGU6IHRvcExldmVsVGF4UmF0ZSB9KVxuICAgIDogdGF4TGFiZWw7XG5cbiAgLy8gVGhlIHByZXZpZXcgaGFzIG5vIGlzc3VlIGRhdGUgb2YgaXRzIG93biwgYmVjYXVzZSBhIGRyYWZ0IGlzIGlzc3VlZCBsYXRlclxuICAvLyBhcyBhIHNlcGFyYXRlIHN0ZXAuIFRvZGF5IHN0YW5kcyBpbiBmb3IgaXQsIGJvdGggaW4gdGhlIElzc3VlIGRhdGUgcm93IGFuZFxuICAvLyBhcyB0aGUgYmFzZWxpbmUgYSBjdXN0b20gZGF0ZSdzIHRlcm0gaXMgbWVhc3VyZWQgZnJvbS5cbiAgY29uc3QgaXNzdWVEYXRlID0gbmV3IERhdGUoKTtcbiAgY29uc3QgZGF0ZVRpbWUgPSBpMThuLmRhdGUoaXNzdWVEYXRlLCBsb2NhbGUuZGF0ZUZvcm1hdCk7XG5cbiAgY29uc3QgeyBkdWVEYXRlLCB0ZXJtTGluZXM6IHBheW1lbnRUZXJtTGluZXMgfSA9IGJ1aWxkUHJldmlld1BheW1lbnRUZXJtc1ZpZXcoXG4gICAge1xuICAgICAgcGF5bWVudFRlcm1zSWQsXG4gICAgICBjdXN0b21EYXRlOiBwYXltZW50VGVybXNDdXN0b21EYXRlLFxuICAgICAgaXNzdWVEYXRlLFxuICAgICAgcGF5bWVudFRlcm1zLFxuICAgICAgaTE4bixcbiAgICB9LFxuICApO1xuXG4gIGNvbnN0IHNhbml0aXplZEl0ZW1zID0gc2FuaXRpemVMaW5lSXRlbXMoaXRlbXMgYXMgU2FuaXRpemFibGVMaW5lSXRlbVtdKS5tYXAoXG4gICAgKGl0ZW0sIGluZGV4KSA9PiAoe1xuICAgICAgLi4uaXRlbSxcbiAgICAgIGlkOiBpdGVtLmlkIHx8IGBpdGVtLSR7aW5kZXggKyAxfWAsXG4gICAgfSksXG4gICk7XG5cbiAgLy8gVGhlIGNvdW50cnkgaXMgZHJvcHBlZCBvbmx5IHdoZW4gaXNzdWVyIGFuZCByZWNpcGllbnQgc2hhcmUgaXQsIHNvIGJvdGhcbiAgLy8gYmxvY2tzIGFyZSByZXNvbHZlZCBhZ2FpbnN0IHRoZSBpc3N1ZXIncyBjb3VudHJ5LiBGb3IgdGhlIGVudGl0eSdzIG93blxuICAvLyBhZGRyZXNzIHRoYXQgY29tcGFyaXNvbiBpcyB3aXRoIGl0c2VsZiwgd2hpY2ggaXMgdGhlIGludGVuZGVkIHJlYWRpbmc6XG4gIC8vIGEgVVMgYnVzaW5lc3MgZG9lcyBub3QgcHJpbnQgXCJVbml0ZWQgU3RhdGVzXCIgb24gaXRzIG93biBsZXR0ZXJoZWFkLlxuICBjb25zdCBpc3N1ZXJDb3VudHJ5ID0gZW50aXR5RGF0YT8uYWRkcmVzcz8uY291bnRyeTtcbiAgY29uc3QgZm9ybWF0Q291bnRyeSA9IChjb3VudHJ5Q29kZTogc3RyaW5nKSA9PlxuICAgIGdldENvdW50cnlOYW1lKGkxOG4sIGNvdW50cnlDb2RlKTtcbiAgY29uc3QgY291bnRlcnBhcnRBZGRyZXNzTGluZXMgPSBidWlsZFByZXZpZXdBZGRyZXNzTGluZXMoe1xuICAgIGFkZHJlc3MsXG4gICAgaXNzdWVyQ291bnRyeSxcbiAgICBmb3JtYXRDb3VudHJ5LFxuICB9KTtcbiAgY29uc3QgZW50aXR5QWRkcmVzc0xpbmVzID0gYnVpbGRQcmV2aWV3QWRkcmVzc0xpbmVzKHtcbiAgICBhZGRyZXNzOiBlbnRpdHlEYXRhPy5hZGRyZXNzLFxuICAgIGlzc3VlckNvdW50cnksXG4gICAgZm9ybWF0Q291bnRyeSxcbiAgfSk7XG5cbiAgY29uc3QgaXNJbmNsdXNpdmVQcmljaW5nID0gdGF4TW9kZSA9PT0gJ2luY2x1c2l2ZSc7XG4gIGNvbnN0IGNvdW50ZXJwYXJ0TmFtZSA9IGNvdW50ZXJwYXJ0ID8gZ2V0Q291bnRlcnBhcnROYW1lKGNvdW50ZXJwYXJ0KSA6ICcnO1xuICBjb25zdCBjb3VudGVycGFydEVtYWlsID1cbiAgICBjb3VudGVycGFydCAmJiBpc09yZ2FuaXphdGlvbkNvdW50ZXJwYXJ0KGNvdW50ZXJwYXJ0KVxuICAgICAgPyBjb3VudGVycGFydC5vcmdhbml6YXRpb24uZW1haWxcbiAgICAgIDogY291bnRlcnBhcnQgJiYgaXNJbmRpdmlkdWFsQ291bnRlcnBhcnQoY291bnRlcnBhcnQpXG4gICAgICAgID8gY291bnRlcnBhcnQuaW5kaXZpZHVhbC5lbWFpbFxuICAgICAgICA6IHVuZGVmaW5lZDtcbiAgLy8gT3BlbkFQSSBtYXJrcyBiYW5rX2FjY291bnRfdHlwZSBhcyBvcHRpb25hbDsgZGVmYXVsdCB0byBCQU5LX0RFVEFJTFMgd2hlblxuICAvLyBhbiBpZCBpcyBwcmVzZW50IHdpdGhvdXQgYSB0eXBlIHNvIGV4aXN0aW5nIGludm9pY2UgZGF0YSBzdGlsbCBmZXRjaGVzLlxuICBjb25zdCBlZmZlY3RpdmVCYW5rQWNjb3VudFR5cGUgPVxuICAgIGJhbmtBY2NvdW50VHlwZSA/PyAoZW50aXR5QmFua0FjY291bnRJZCA/ICdCQU5LX0RFVEFJTFMnIDogdW5kZWZpbmVkKTtcblxuICBjb25zdCB7IGRhdGE6IGJhbmtBY2NvdW50IH0gPSB1c2VHZXRCYW5rQWNjb3VudEJ5SWQoXG4gICAgZW50aXR5QmFua0FjY291bnRJZCxcbiAgICBlZmZlY3RpdmVCYW5rQWNjb3VudFR5cGUsXG4gICk7XG5cbiAgY29uc3QgeyBkYXRhOiBlbnRpdHlTZXR0aW5ncyB9ID0gdXNlRW50aXR5U2V0dGluZ3MoKTtcbiAgY29uc3QgZG9jdW1lbnRSZW5kZXJpbmcgPSBlbnRpdHlTZXR0aW5ncz8uZG9jdW1lbnRfcmVuZGVyaW5nO1xuICBjb25zdCBkaXNwbGF5QmFua0FjY291bnQgPVxuICAgIGRvY3VtZW50UmVuZGVyaW5nPy5pbnZvaWNlPy5kaXNwbGF5X29yZ2FuaXphdGlvbl9iYW5rX2FjY291bnQgPz9cbiAgICBkb2N1bWVudFJlbmRlcmluZz8uZGlzcGxheV9vcmdhbml6YXRpb25fYmFua19hY2NvdW50ID8/XG4gICAgdHJ1ZTtcblxuICAvLyBBbiBlbnRpdHkgdGhhdCBjYW5ub3QgcmVjZWl2ZSBwYXltZW50cyBpcyBzZW50IGl0cyBpbnZvaWNlcyB3aXRob3V0IGEgbGluay5cbiAgY29uc3QgeyBkYXRhOiBwYXltZW50TWV0aG9kcyB9ID1cbiAgICBhcGkuZmlub3BzLmdldEVudGl0aWVzSWRQYXltZW50TWV0aG9kcy51c2VRdWVyeSh7XG4gICAgICBwYXRoOiB7IGVudGl0eV9pZDogZW50aXR5SWQgfSxcbiAgICB9KTtcbiAgY29uc3Qgc2hvd1BheW1lbnRMaW5rID1cbiAgICBnZXRSZWNlaXZlUGF5bWVudE1ldGhvZHMocGF5bWVudE1ldGhvZHM/LmRhdGEpLmxlbmd0aCA+IDA7XG5cbiAgY29uc3Qge1xuICAgIHN1YnRvdGFsUHJpY2UsXG4gICAgZGlzY291bnRWYWx1ZSxcbiAgICBub25UYXhhYmxlU3VidG90YWwsXG4gICAgdGF4YWJsZVN1YnRvdGFsLFxuICAgIHRvdGFsUHJpY2UsXG4gICAgdG90YWxUYXhlcyxcbiAgICByb3dWaXNpYmlsaXR5LFxuICB9ID0gdXNlQ3JlYXRlSW52b2ljZVByb2R1Y3RzVGFibGUoe1xuICAgIGxpbmVJdGVtczpcbiAgICAgIHNhbml0aXplZEl0ZW1zIGFzIENyZWF0ZVJlY2VpdmFibGVzRm9ybUJlZm9yZVZhbGlkYXRpb25MaW5lSXRlbVByb3BzW10sXG4gICAgZm9ybWF0Q3VycmVuY3lUb0Rpc3BsYXksXG4gICAgYWN0dWFsQ3VycmVuY3k6IGN1cnJlbmN5LFxuICAgIGlzSW5jbHVzaXZlUHJpY2luZyxcbiAgICB0YXhSYXRlOiB0b3BMZXZlbFRheFJhdGUgPyBOdW1iZXIodG9wTGV2ZWxUYXhSYXRlKSA6IHVuZGVmaW5lZCxcbiAgICBkaXNjb3VudCxcbiAgfSk7XG5cbiAgLy8gVW5saWtlIHRoZSBjcmVhdGUgZm9ybSwgdGhlIGRvY3VtZW50IGNhcnJpZXMgZWFjaCByb3cgb25seSB3aGVuIGl0IHNheXNcbiAgLy8gc29tZXRoaW5nLiBgcm93VmlzaWJpbGl0eWAgaXMgdGhlIHRhYmxlIGZyb20gRU1CRC01MDE1LlxuXG4gIHJldHVybiAoXG4gICAgPD5cbiAgICAgIDxHbG9iYWwgc3R5bGVzPXtpbnZvaWNlUHJldmlld01vbml0ZVN0eWxlc30gLz5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaW52b2ljZVByZXZpZXdNb25pdGVcIj5cbiAgICAgICAgPGhlYWRlciBjbGFzc05hbWU9XCJoZWFkZXJcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImlzc3VlckJsb2NrXCI+XG4gICAgICAgICAgICA8aDEgY2xhc3NOYW1lPVwiaW52b2ljZVRpdGxlXCI+e2kxOG4uXygnSW52b2ljZScpfTwvaDE+XG4gICAgICAgICAgICB7ZW50aXR5RGF0YSAmJlxuICAgICAgICAgICAgICAnb3JnYW5pemF0aW9uJyBpbiBlbnRpdHlEYXRhICYmXG4gICAgICAgICAgICAgIGVudGl0eURhdGEub3JnYW5pemF0aW9uPy5sZWdhbF9uYW1lICYmIChcbiAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9e2NuKCdjb21wYW55VGV4dCcsICdjb21wYW55TmFtZScpfT5cbiAgICAgICAgICAgICAgICAgIHtlbnRpdHlEYXRhLm9yZ2FuaXphdGlvbi5sZWdhbF9uYW1lfVxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHtlbnRpdHlEYXRhPy5hZGRyZXNzICYmIChcbiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXtjbignY29tcGFueVRleHQnLCAnY29tcGFueUFkZHJlc3MnKX0+XG4gICAgICAgICAgICAgICAgPEludm9pY2VQcmV2aWV3TW9uaXRlQWRkcmVzc0xpbmVzIGxpbmVzPXtlbnRpdHlBZGRyZXNzTGluZXN9IC8+XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICB7ZW50aXR5RGF0YT8udGF4X2lkICYmIChcbiAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXtjbignY29tcGFueVRleHQnLCAnY29tcGFueVZhdCcpfT5cbiAgICAgICAgICAgICAgICB7dGF4TGFiZWx9OiB7ZW50aXR5RGF0YS50YXhfaWR9XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICB7ZW50aXR5RGF0YT8uZW1haWwgJiYgKFxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9e2NuKCdjb21wYW55VGV4dCcsICdjb21wYW55RW1haWwnKX0+XG4gICAgICAgICAgICAgICAge2VudGl0eURhdGEuZW1haWx9XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICB7ZW50aXR5RGF0YT8ucGhvbmUgJiYgKFxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9e2NuKCdjb21wYW55VGV4dCcsICdjb21wYW55UGhvbmUnKX0+XG4gICAgICAgICAgICAgICAge2VudGl0eURhdGEucGhvbmV9XG4gICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3NOYW1lPXtjbignbG9nb1dyYXBwZXInLCAhZW50aXR5RGF0YT8ubG9nbz8udXJsICYmICduby1sb2dvJyl9XG4gICAgICAgICAgPlxuICAgICAgICAgICAge2VudGl0eURhdGE/LmxvZ28/LnVybCA/IChcbiAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImxvZ29JbWFnZVwiXG4gICAgICAgICAgICAgICAgc3JjPXtlbnRpdHlEYXRhLmxvZ28udXJsfVxuICAgICAgICAgICAgICAgIGFsdD17aTE4bi5fKCdMb2dvJyl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJsb2dvVGV4dFwiPntpMThuLl8oJ05vIGxvZ28nKX08L3NwYW4+XG4gICAgICAgICAgICApfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2hlYWRlcj5cblxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm1haW5JbmZvU2VjdGlvblwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaW5mb0NvbHVtblwiPlxuICAgICAgICAgICAgPGgyIGNsYXNzTmFtZT1cImNvbHVtbkhlYWRlclRpdGxlXCI+e2kxOG4uXygnQmlsbCB0bycpfTwvaDI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbHVtbkNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgeyFjb3VudGVycGFydE5hbWUgPyAoXG4gICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXtjbignY29sdW1uVGV4dCcsICdub3RTZXQnKX0+XG4gICAgICAgICAgICAgICAgICB7aTE4bi5fKCdQZW5kaW5nJyl9XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9e2NuKCdjb2x1bW5UZXh0JywgJ2NvbXBhbnlOYW1lJyl9PlxuICAgICAgICAgICAgICAgICAgICB7Y291bnRlcnBhcnROYW1lfVxuICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAge2FkZHJlc3MgJiYgKFxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9e2NuKCdjb2x1bW5UZXh0JywgJ2FkZHJlc3MnKX0+XG4gICAgICAgICAgICAgICAgICAgICAgPEludm9pY2VQcmV2aWV3TW9uaXRlQWRkcmVzc0xpbmVzXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lcz17Y291bnRlcnBhcnRBZGRyZXNzTGluZXN9XG4gICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgIHtjb3VudGVycGFydD8udGF4X2lkICYmIChcbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXtjbignY29sdW1uVGV4dCcsICd2YXRJZCcpfT5cbiAgICAgICAgICAgICAgICAgICAgICB7dGF4TGFiZWx9OiB7Y291bnRlcnBhcnQ/LnRheF9pZH1cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgIHtjb3VudGVycGFydEVtYWlsICYmIChcbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXtjbignY29sdW1uVGV4dCcsICdlbWFpbCcpfT5cbiAgICAgICAgICAgICAgICAgICAgICB7Y291bnRlcnBhcnRFbWFpbH1cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgIHtnZXRDb3VudGVycGFydFBob25lKGNvdW50ZXJwYXJ0KSAmJiAoXG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17Y24oJ2NvbHVtblRleHQnLCAncGhvbmUnKX0+XG4gICAgICAgICAgICAgICAgICAgICAge2dldENvdW50ZXJwYXJ0UGhvbmUoY291bnRlcnBhcnQpfVxuICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImluZm9Db2x1bW5cIj5cbiAgICAgICAgICAgIDxoMiBjbGFzc05hbWU9XCJjb2x1bW5IZWFkZXJUaXRsZVwiPntpMThuLl8oJ0ludm9pY2UgZGV0YWlscycpfTwvaDI+XG4gICAgICAgICAgICA8ZGwgY2xhc3NOYW1lPVwiZGV0YWlsTGlzdFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRldGFpbFJvd1wiPlxuICAgICAgICAgICAgICAgIDxkdCBjbGFzc05hbWU9XCJkZXRhaWxMYWJlbFwiPntpMThuLl8oJ051bWJlcicpfTwvZHQ+XG4gICAgICAgICAgICAgICAgPGRkIGNsYXNzTmFtZT1cImRldGFpbFZhbHVlXCI+XG4gICAgICAgICAgICAgICAgICB7LyogQSBkcmFmdCBoYXMgbm8gbnVtYmVyIHVudGlsIGl0IGlzIGlzc3VlZCwgc28gbmFtZSB0aGF0XG4gICAgICAgICAgICAgICAgICAgICAgc3RhdGUgcmF0aGVyIHRoYW4gc2hvd2luZyBhIHBsYWNlaG9sZGVyIGlkLiAqL31cbiAgICAgICAgICAgICAgICAgIHtkb2N1bWVudElkIHx8IChcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwibm90U2V0XCI+e2kxOG4uXygnUGVuZGluZycpfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC9kZD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGV0YWlsUm93XCI+XG4gICAgICAgICAgICAgICAgPGR0IGNsYXNzTmFtZT1cImRldGFpbExhYmVsXCI+e2kxOG4uXygnSXNzdWUgZGF0ZScpfTwvZHQ+XG4gICAgICAgICAgICAgICAgPGRkIGNsYXNzTmFtZT1cImRldGFpbFZhbHVlXCI+e2RhdGVUaW1lfTwvZGQ+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRldGFpbFJvd1wiPlxuICAgICAgICAgICAgICAgIDxkdCBjbGFzc05hbWU9XCJkZXRhaWxMYWJlbFwiPntpMThuLl8oJ0R1ZSBkYXRlJyl9PC9kdD5cbiAgICAgICAgICAgICAgICA8ZGQgY2xhc3NOYW1lPVwiZGV0YWlsVmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgIHtkdWVEYXRlID8gKFxuICAgICAgICAgICAgICAgICAgICBpMThuLmRhdGUoZHVlRGF0ZSwgbG9jYWxlLmRhdGVGb3JtYXQpXG4gICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJub3RTZXRcIj57aTE4bi5fKCdQZW5kaW5nJyl9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8L2RkPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWxSb3dcIj5cbiAgICAgICAgICAgICAgICA8ZHQgY2xhc3NOYW1lPVwiZGV0YWlsTGFiZWxcIj57aTE4bi5fKCdQYXltZW50IHRlcm1zJyl9PC9kdD5cbiAgICAgICAgICAgICAgICA8ZGQgY2xhc3NOYW1lPVwiZGV0YWlsVmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgIHtwYXltZW50VGVybUxpbmVzLmxlbmd0aCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgIHBheW1lbnRUZXJtTGluZXMubWFwKChsaW5lLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGtleT17aW5kZXh9IGNsYXNzTmFtZT1cInBheW1lbnRUZXJtTGluZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2xpbmV9XG4gICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICApKVxuICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwibm90U2V0XCI+e2kxOG4uXygnUGVuZGluZycpfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC9kZD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIHtwdXJjaGFzZU9yZGVyICYmIChcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRldGFpbFJvd1wiPlxuICAgICAgICAgICAgICAgICAgPGR0IGNsYXNzTmFtZT1cImRldGFpbExhYmVsXCI+e2kxOG4uXygnUE8gbnVtYmVyJyl9PC9kdD5cbiAgICAgICAgICAgICAgICAgIDxkZCBjbGFzc05hbWU9XCJkZXRhaWxWYWx1ZVwiPntwdXJjaGFzZU9yZGVyfTwvZGQ+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L2RsPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICB7bWVtbyAmJiA8cCBjbGFzc05hbWU9XCJtZW1vVGV4dFwiPnttZW1vfTwvcD59XG5cbiAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJsaW5lSXRlbXNTZWN0aW9uXCI+XG4gICAgICAgICAgPHRhYmxlIGNsYXNzTmFtZT1cImxpbmVJdGVtc1RhYmxlXCI+XG4gICAgICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICB7LyogVGhlIGhlYWRlciByZWFkcyBcIkRlc2NyaXB0aW9uXCIgYnV0IHRoZSBjZWxsIHJlbmRlcnMgdGhlXG4gICAgICAgICAgICAgICAgICAgIHByb2R1Y3QgbmFtZSwgaGVuY2UgY29sUHJvZHVjdC4gKi99XG4gICAgICAgICAgICAgICAgPHRoIGNsYXNzTmFtZT1cImNvbFByb2R1Y3RcIj57aTE4bi5fKCdEZXNjcmlwdGlvbicpfTwvdGg+XG4gICAgICAgICAgICAgICAgPHRoIGNsYXNzTmFtZT1cImNvbFF0eVwiPntpMThuLl8oJ1F0eScpfTwvdGg+XG4gICAgICAgICAgICAgICAgPHRoIGNsYXNzTmFtZT1cImNvbFByaWNlXCI+e2kxOG4uXygnUHJpY2UnKX08L3RoPlxuICAgICAgICAgICAgICAgIDx0aCBjbGFzc05hbWU9XCJjb2xUYXhhYmxlXCI+e3RheGFibGVMYWJlbH08L3RoPlxuICAgICAgICAgICAgICAgIDx0aCBjbGFzc05hbWU9XCJjb2xBbW91bnRcIj57aTE4bi5fKCdBbW91bnQnKX08L3RoPlxuICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgPC90aGVhZD5cbiAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAge3Nhbml0aXplZEl0ZW1zLmxlbmd0aCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgc2FuaXRpemVkSXRlbXMubWFwKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgICBjb25zdCBxdWFudGl0eSA9IGl0ZW0/LnF1YW50aXR5ID8/IDE7XG4gICAgICAgICAgICAgICAgICBjb25zdCBwcmljZSA9IGl0ZW0/LnByb2R1Y3Q/LnByaWNlPy52YWx1ZSA/PyAwO1xuICAgICAgICAgICAgICAgICAgY29uc3QgdG90YWxBbW91bnQgPSBwcmljZSAqIHF1YW50aXR5O1xuICAgICAgICAgICAgICAgICAgY29uc3QgdW5pdE5hbWUgPSBpdGVtPy5wcm9kdWN0Py5tZWFzdXJlX3VuaXRfaWRcbiAgICAgICAgICAgICAgICAgICAgPyBnZXRNZWFzdXJlVW5pdE5hbWUoXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnByb2R1Y3QubWVhc3VyZV91bml0X2lkLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWVhc3VyZVVuaXRzLFxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgOiBpdGVtPy5tZWFzdXJlX3VuaXQ/Lm5hbWUgfHwgbnVsbDtcblxuICAgICAgICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICAgICAgPHRyIGtleT17aXRlbS5pZH0gY2xhc3NOYW1lPVwiaXRlbVJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzc05hbWU9XCJjb2xQcm9kdWN0XCI+e2l0ZW0/LnByb2R1Y3Q/Lm5hbWV9PC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3NOYW1lPVwiY29sUXR5XCI+e3F1YW50aXR5fTwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgey8qIFRoZSB1bml0IHF1YWxpZmllcyB0aGUgcHJpY2UgKFwiJDI1LjAwIGVhXCIpLCBub3QgdGhlXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHF1YW50aXR5LCBwZXIgdGhlIEZpZ21hIFBERiBkZXNpZ24uICovfVxuICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzc05hbWU9XCJjb2xQcmljZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2l0ZW0ucHJvZHVjdD8ucHJpY2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXRDdXJyZW5jeVRvRGlzcGxheShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5wcm9kdWN0LnByaWNlLmN1cnJlbmN5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDogJyd9XG4gICAgICAgICAgICAgICAgICAgICAgICB7dW5pdE5hbWUgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsnICd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwicHJpY2VVbml0XCI+e3VuaXROYW1lfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgey8qIFJlYWRzIGl0ZW0udGF4YWJsZSBkaXJlY3RseSByYXRoZXIgdGhhbiBkZXJpdmluZyBhXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJhdGUgZnJvbSB0aGUgdG9wLWxldmVsIHRheF9yYXRlOiBhIGxpbmUgaXRlbSB0aGF0IGlzXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRheGFibGUgYXQgYSAwJSByYXRlIGlzIHN0aWxsIHRheGFibGUsIGFuZCB0aGUgb2xkXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJhdGUtZGVyaXZlZCBjb2x1bW4gcmVuZGVyZWQgaXQgYmxhbmsuICovfVxuICAgICAgICAgICAgICAgICAgICAgIDx0ZCBjbGFzc05hbWU9XCJjb2xUYXhhYmxlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aXRlbS50YXhhYmxlID8gdGF4YWJsZVllc0xhYmVsIDogdGF4YWJsZU5vTGFiZWx9XG4gICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3NOYW1lPVwiY29sQW1vdW50XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7aXRlbS5wcm9kdWN0Py5wcmljZVxuICAgICAgICAgICAgICAgICAgICAgICAgICA/IGZvcm1hdEN1cnJlbmN5VG9EaXNwbGF5KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG90YWxBbW91bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLnByb2R1Y3QucHJpY2UuY3VycmVuY3ksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgOiAnJ31cbiAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgIDx0ciBjbGFzc05hbWU9XCJub0l0ZW1zUm93XCI+XG4gICAgICAgICAgICAgICAgICA8dGQgY29sU3Bhbj17NX0gY2xhc3NOYW1lPVwibm9JdGVtc0NlbGxcIj5cbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwibm90U2V0XCI+e2kxOG4uXygnTm8gaXRlbXMnKX08L3A+XG4gICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgIDwvdGFibGU+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIHtzYW5pdGl6ZWRJdGVtcz8ubGVuZ3RoID4gMCAmJiAoXG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0b3RhbHNTZWN0aW9uXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRvdGFsc1RhYmxlXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidG90YWxSb3dcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0b3RhbExhYmVsXCI+e2kxOG4uXygnU3VidG90YWwnKX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidG90YWxWYWx1ZVwiPntzdWJ0b3RhbFByaWNlPy50b1N0cmluZygpfTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAge3Jvd1Zpc2liaWxpdHkuc2hvd0Rpc2NvdW50cyAmJiBkaXNjb3VudCAmJiAoXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0b3RhbFJvd1wiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidG90YWxMYWJlbFwiPntpMThuLl8oJ0Rpc2NvdW50Jyl9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidG90YWxWYWx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICB7ZGlzY291bnRWYWx1ZT8udG9TdHJpbmcoKX1cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAgICB7cm93VmlzaWJpbGl0eS5zaG93Tm9uVGF4YWJsZVN1YnRvdGFsICYmIChcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRvdGFsUm93IG11dGVkVG90YWxcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRvdGFsTGFiZWxcIj5cbiAgICAgICAgICAgICAgICAgICAge2kxOG4uXygnTm9uLXRheGFibGUgc3VidG90YWwnKX1cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRvdGFsVmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgICAge25vblRheGFibGVTdWJ0b3RhbD8udG9TdHJpbmcoKX1cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAgICB7cm93VmlzaWJpbGl0eS5zaG93VGF4YWJsZVN1YnRvdGFsICYmIChcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRvdGFsUm93IG11dGVkVG90YWxcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRvdGFsTGFiZWxcIj5cbiAgICAgICAgICAgICAgICAgICAge2kxOG4uXygnVGF4YWJsZSBzdWJ0b3RhbCcpfVxuICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidG90YWxWYWx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICB7dGF4YWJsZVN1YnRvdGFsPy50b1N0cmluZygpfVxuICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICApfVxuXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidG90YWxSb3dcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0b3RhbExhYmVsXCI+e3RheFJvd0xhYmVsfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0b3RhbFZhbHVlXCI+e3RvdGFsVGF4ZXM/LnRvU3RyaW5nKCl9PC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT17Y24oJ3RvdGFsUm93JywgJ2ZpbmFsVG90YWwnKX0+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidG90YWxMYWJlbFwiPntpMThuLl8oJ1RvdGFsJyl9PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRvdGFsVmFsdWVcIj57dG90YWxQcmljZT8udG9TdHJpbmcoKX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICl9XG5cbiAgICAgICAge2Zvb3RlciAmJiA8cCBjbGFzc05hbWU9XCJmb290ZXJUZXh0XCI+e2Zvb3Rlcn08L3A+fVxuXG4gICAgICAgIHsoc2hvd1BheW1lbnRMaW5rIHx8IChiYW5rQWNjb3VudCAmJiBkaXNwbGF5QmFua0FjY291bnQpKSAmJiAoXG4gICAgICAgICAgPGZvb3RlciBjbGFzc05hbWU9XCJmb290ZXJTZWN0aW9uXCI+XG4gICAgICAgICAgICB7c2hvd1BheW1lbnRMaW5rICYmIChcbiAgICAgICAgICAgICAgPGltZ1xuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cInBheW1lbnRRckNvZGVcIlxuICAgICAgICAgICAgICAgIHNyYz17cXJTYW1wbGV9XG4gICAgICAgICAgICAgICAgYWx0PXtpMThuLl8oJ1NhbXBsZSBwYXltZW50IFFSIGNvZGUnKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInBheW1lbnREZXRhaWxzXCI+XG4gICAgICAgICAgICAgIHsvKiBOb3QgYSBsaW5rOiB0aGUgcmVhbCBvbmUgaXMgb25seSBjcmVhdGVkIHdoZW4gdGhlIGludm9pY2UgaXMgaXNzdWVkLiAqL31cbiAgICAgICAgICAgICAge3Nob3dQYXltZW50TGluayAmJiAoXG4gICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwicGF5bWVudFRleHQgcGF5bWVudExpbmtcIj5cbiAgICAgICAgICAgICAgICAgIHtpMThuLl8oJ1BheSBvbmxpbmUnKX1cbiAgICAgICAgICAgICAgICAgIDxBcnJvd1JpZ2h0IGFyaWEtaGlkZGVuIGNsYXNzTmFtZT1cInBheW1lbnRMaW5rSWNvblwiIC8+XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICB7YmFua0FjY291bnQgJiYgZGlzcGxheUJhbmtBY2NvdW50ICYmIChcbiAgICAgICAgICAgICAgICA8PlxuICAgICAgICAgICAgICAgICAge2JhbmtBY2NvdW50LmFjY291bnRfaG9sZGVyX25hbWUgJiYgKFxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJwYXltZW50VGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICAgIHtpMThuLl8oJ0FjY291bnQgaG9sZGVyIG5hbWUnKX06eycgJ31cbiAgICAgICAgICAgICAgICAgICAgICB7YmFua0FjY291bnQuYWNjb3VudF9ob2xkZXJfbmFtZX1cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgIHtiYW5rQWNjb3VudC5yb3V0aW5nX251bWJlciAmJiAoXG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInBheW1lbnRUZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgICAge2kxOG4uXygnUm91dGluZyBudW1iZXInKX06IHtiYW5rQWNjb3VudC5yb3V0aW5nX251bWJlcn1cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgIHtiYW5rQWNjb3VudC5hY2NvdW50X251bWJlciAmJiAoXG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInBheW1lbnRUZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgICAge2kxOG4uXygnQWNjb3VudCBudW1iZXInKX06IHtiYW5rQWNjb3VudC5hY2NvdW50X251bWJlcn1cbiAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZm9vdGVyPlxuICAgICAgICApfVxuICAgICAgPC9kaXY+XG4gICAgPC8+XG4gICk7XG59O1xuIl19 */",
30
+ styles: "@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');{}.invoicePreviewMonite{--font-size-invoice-title:2.25rem;--font-size-header:0.624rem;--font-size-total-label:0.83195rem;--line-height-header:1.333;--font-weight-header:700;--font-size-body:0.6239625rem;--font-size-small:0.554rem;--line-height-body:0.83195rem;--spacing-xxs:0.139rem;--spacing-xs:0.25rem;--spacing-xs-sm:0.41625rem;--spacing-sm:0.5rem;--spacing-md:0.75rem;--spacing-lg:1rem;--spacing-xl:1.5rem;--spacing-xxl:2rem;--padding-xs:0.208125rem;--padding-sm:0.2775rem;--padding-md:0.554rem;--logo-width:8.875rem;--logo-height:4.4375rem;--totals-table-width:18.75rem;--detail-label-width:6.5rem;--col-product-min-width:15rem;--col-qty-width:3rem;--col-price-width:4.5rem;--col-amount-width:5rem;--col-taxable-width:3rem;--text-primary:#101011;--text-neutral:#666666;--text-muted:#999999;--border-color:#e6e6e6;--rule-color:#d9d9d9;--bg-header:#f2f2f2;--accent-color:#432dd7;--border-radius:var(--spacing-xs);background-color:white;display:flex;flex-direction:column;width:100%;height:100%;min-height:11in;padding:2.5rem;font-family:'Inter','Helvetica Neue',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;color:var(--text-primary);font-size:var(--font-size-body);line-height:var(--line-height-body);isolation:isolate;box-sizing:border-box;}.invoicePreviewMonite *,.invoicePreviewMonite *::before,.invoicePreviewMonite *::after{box-sizing:border-box;}.invoicePreviewMonite .header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-xl);margin-bottom:var(--spacing-xxl);}.invoicePreviewMonite .issuerBlock{display:flex;flex-direction:column;gap:var(--spacing-xxs);}.invoicePreviewMonite .invoiceTitle{font-size:var(--font-size-invoice-title);font-weight:500;margin:0 0 var(--spacing-sm);line-height:1.1;}.invoicePreviewMonite .companyText{margin:0;}.invoicePreviewMonite .companyName{font-weight:700;}.invoicePreviewMonite .logoWrapper{display:flex;align-items:center;justify-content:center;min-width:var(--logo-width);min-height:var(--logo-height);}.invoicePreviewMonite .logoWrapper.no-logo{background-color:var(--bg-header);border-radius:var(--border-radius);color:var(--text-muted);}.invoicePreviewMonite .logoImage{max-width:var(--logo-width);max-height:var(--logo-height);object-fit:contain;}.invoicePreviewMonite .mainInfoSection{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);margin-bottom:var(--spacing-xxl);}.invoicePreviewMonite .infoColumn{display:flex;flex-direction:column;gap:var(--spacing-sm);}.invoicePreviewMonite .columnHeaderTitle{font-size:var(--font-size-body);font-weight:500;line-height:var(--line-height-header);background-color:var(--bg-header);border-radius:var(--border-radius);padding:var(--padding-sm) var(--padding-md);margin:0;}.invoicePreviewMonite .columnContent{display:flex;flex-direction:column;gap:var(--spacing-xxs);padding:0 var(--padding-md);}.invoicePreviewMonite .columnText{margin:0;}.invoicePreviewMonite .detailList{display:flex;flex-direction:column;gap:var(--spacing-xxs);margin:0;padding:0 var(--padding-md);}.invoicePreviewMonite .detailRow{display:flex;gap:var(--spacing-lg);}.invoicePreviewMonite .detailLabel{flex:0 0 var(--detail-label-width);}.invoicePreviewMonite .detailValue{margin:0;}.invoicePreviewMonite .paymentTermLine{display:block;}.invoicePreviewMonite .memoText{margin:0 0 var(--spacing-md);padding:0 var(--padding-md);white-space:pre-wrap;}.invoicePreviewMonite .lineItemsSection{margin-bottom:var(--spacing-md);}.invoicePreviewMonite .lineItemsTable{width:100%;border-collapse:collapse;border-spacing:0;}.invoicePreviewMonite .lineItemsTable thead tr{background-color:var(--bg-header);}.invoicePreviewMonite .lineItemsTable th{font-weight:var(--font-weight-header);line-height:var(--line-height-header);text-align:left;padding:var(--padding-sm) var(--padding-md);}.invoicePreviewMonite .lineItemsTable td{padding:var(--padding-md);border-bottom:1px solid var(--border-color);vertical-align:top;}.invoicePreviewMonite .lineItemsTable .colProduct{min-width:var(--col-product-min-width);max-width:20rem;word-wrap:break-word;overflow-wrap:break-word;}.invoicePreviewMonite .lineItemsTable .colQty{width:var(--col-qty-width);text-align:left;}.invoicePreviewMonite .lineItemsTable .colPrice{width:var(--col-price-width);text-align:left;white-space:nowrap;}.invoicePreviewMonite .lineItemsTable .colTaxable{width:var(--col-taxable-width);text-align:left;}.invoicePreviewMonite .lineItemsTable .colAmount{width:var(--col-amount-width);text-align:right;white-space:nowrap;}.invoicePreviewMonite .lineItemsTable td.colAmount{font-weight:500;}.invoicePreviewMonite .noItemsRow .noItemsCell{text-align:center;color:var(--text-muted);font-style:italic;padding:var(--spacing-xl);}.invoicePreviewMonite .totalsSection{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-xxl);}.invoicePreviewMonite .totalsTable{width:var(--totals-table-width);max-width:100%;display:flex;flex-direction:column;gap:var(--spacing-xs-sm);}.invoicePreviewMonite .totalRow{display:flex;justify-content:flex-end;align-items:baseline;gap:var(--spacing-xl);padding:0 var(--padding-md);}.invoicePreviewMonite .totalLabel{text-align:right;}.invoicePreviewMonite .totalValue{text-align:right;min-width:6rem;white-space:nowrap;font-weight:500;}.invoicePreviewMonite .companyEmail,.invoicePreviewMonite .companyPhone,.invoicePreviewMonite .email,.invoicePreviewMonite .phone{color:var(--text-muted);}.invoicePreviewMonite .mutedTotal{color:var(--text-muted);}.invoicePreviewMonite .finalTotal{margin-top:var(--spacing-xxs);padding-top:var(--spacing-sm);border-top:1px solid var(--rule-color);font-size:var(--font-size-total-label);font-weight:700;}.invoicePreviewMonite .footerText{margin:0 0 var(--spacing-xxl);white-space:pre-wrap;}.invoicePreviewMonite .footerSection{display:flex;align-items:center;gap:var(--spacing-md);margin-top:auto;border-top:1px solid var(--border-color);padding-top:var(--spacing-lg);}.invoicePreviewMonite .paymentQrCode{flex-shrink:0;width:4.5rem;height:4.5rem;}.invoicePreviewMonite .paymentDetails{display:flex;flex-direction:column;gap:var(--spacing-xs);}.invoicePreviewMonite .paymentText{margin:0;}.invoicePreviewMonite .paymentLink{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--accent-color);font-weight:600;}.invoicePreviewMonite .paymentLinkIcon{width:1em;height:1em;}.invoicePreviewMonite .notSet{color:var(--text-muted);font-style:italic;};label:invoicePreviewMoniteStyles;/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL1Rlc291cm8uUGF5bWVudHMuRnJvbnRlbmRzL1Rlc291cm8uUGF5bWVudHMuRnJvbnRlbmRzL2xpYnMvdGVzb3Vyby1lbWJlZGRlZC1jb21wb25lbnRzLXJlYWN0L21vbml0ZS1zZGsvc3JjL2NvbXBvbmVudHMvcmVjZWl2YWJsZXMvY29tcG9uZW50cy9JbnZvaWNlUHJldmlld01vbml0ZS50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBK0JzQyIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay9UZXNvdXJvLlBheW1lbnRzLkZyb250ZW5kcy9UZXNvdXJvLlBheW1lbnRzLkZyb250ZW5kcy9saWJzL3Rlc291cm8tZW1iZWRkZWQtY29tcG9uZW50cy1yZWFjdC9tb25pdGUtc2RrL3NyYy9jb21wb25lbnRzL3JlY2VpdmFibGVzL2NvbXBvbmVudHMvSW52b2ljZVByZXZpZXdNb25pdGUudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3JlYXRlUmVjZWl2YWJsZXNGb3JtQmVmb3JlVmFsaWRhdGlvbkxpbmVJdGVtUHJvcHMgfSBmcm9tICdAL2NvbXBvbmVudHMvcmVjZWl2YWJsZXMvdmFsaWRhdGlvbic7XG5pbXBvcnQgdHlwZSB7XG4gIFNhbml0aXphYmxlTGluZUl0ZW0sXG4gIEludm9pY2VQcmV2aWV3QmFzZVByb3BzLFxufSBmcm9tICdAL2NvbXBvbmVudHMvcmVjZWl2YWJsZXMvdHlwZXMnO1xuaW1wb3J0IHsgc2FuaXRpemVMaW5lSXRlbXMgfSBmcm9tICdAL2NvbXBvbmVudHMvcmVjZWl2YWJsZXMvdXRpbHMvbGluZUl0ZW1VdGlscyc7XG5pbXBvcnQgeyBidWlsZFByZXZpZXdQYXltZW50VGVybXNWaWV3IH0gZnJvbSAnQC9jb21wb25lbnRzL3JlY2VpdmFibGVzL3V0aWxzL2J1aWxkUHJldmlld1BheW1lbnRUZXJtc1ZpZXcnO1xuaW1wb3J0IHsgZ2V0UmVjZWl2ZVBheW1lbnRNZXRob2RzIH0gZnJvbSAnQC9jb21wb25lbnRzL3JlY2VpdmFibGVzL3V0aWxzL2dldFJlY2VpdmVQYXltZW50TWV0aG9kcyc7XG5pbXBvcnQge1xuICBnZXRNZWFzdXJlVW5pdE5hbWUsXG4gIGdldENvdW50ZXJwYXJ0UGhvbmUsXG4gIGdldENvdW50cnlOYW1lLFxufSBmcm9tICdAL2NvbXBvbmVudHMvcmVjZWl2YWJsZXMvdXRpbHMvaW52b2ljZVByZXZpZXcnO1xuaW1wb3J0IHsgYnVpbGRQcmV2aWV3QWRkcmVzc0xpbmVzIH0gZnJvbSAnQC9jb21wb25lbnRzL3JlY2VpdmFibGVzL3V0aWxzL2J1aWxkUHJldmlld0FkZHJlc3NMaW5lcyc7XG5pbXBvcnQgeyBJbnZvaWNlUHJldmlld01vbml0ZUFkZHJlc3NMaW5lcyB9IGZyb20gJy4vSW52b2ljZVByZXZpZXdNb25pdGVBZGRyZXNzTGluZXMnO1xuaW1wb3J0IHFyU2FtcGxlIGZyb20gJ0AvY29tcG9uZW50cy9yZWNlaXZhYmxlcy9hc3NldHMvcXItc2FtcGxlLnN2Zz91cmwnO1xuaW1wb3J0IHtcbiAgZ2V0Q291bnRlcnBhcnROYW1lLFxuICBpc0luZGl2aWR1YWxDb3VudGVycGFydCxcbiAgaXNPcmdhbml6YXRpb25Db3VudGVycGFydCxcbn0gZnJvbSAnQC9jb21wb25lbnRzL2NvdW50ZXJwYXJ0cy9oZWxwZXJzJztcbmltcG9ydCB7IHVzZUdldEJhbmtBY2NvdW50QnlJZCB9IGZyb20gJ0AvY29tcG9uZW50cy9yZWNlaXZhYmxlcy9ob29rcyc7XG5pbXBvcnQgeyB1c2VDcmVhdGVJbnZvaWNlUHJvZHVjdHNUYWJsZSB9IGZyb20gJ0AvY29tcG9uZW50cy9yZWNlaXZhYmxlcy9ob29rcy91c2VDcmVhdGVJbnZvaWNlUHJvZHVjdHNUYWJsZSc7XG5pbXBvcnQgeyB1c2VNb25pdGVDb250ZXh0IH0gZnJvbSAnQC9jb3JlL2NvbnRleHQvTW9uaXRlQ29udGV4dCc7XG5pbXBvcnQgeyB1c2VFbnRpdHlTZXR0aW5ncyB9IGZyb20gJ0AvY29yZS9xdWVyaWVzJztcbmltcG9ydCB7IHVzZUN1cnJlbmNpZXMgfSBmcm9tICdAL2NvcmUvaG9va3MnO1xuaW1wb3J0IHsgY24gfSBmcm9tICdAL3VpL2xpYi91dGlscyc7XG5pbXBvcnQgeyBHbG9iYWwsIGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IHVzZUxpbmd1aSB9IGZyb20gJ0BsaW5ndWkvcmVhY3QnO1xuaW1wb3J0IHsgQXJyb3dSaWdodCB9IGZyb20gJ2x1Y2lkZS1yZWFjdCc7XG5cbmNvbnN0IGludm9pY2VQcmV2aWV3TW9uaXRlU3R5bGVzID0gY3NzYFxuICBAaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3MyP2ZhbWlseT1JbnRlcjp3Z2h0QDQwMDs1MDA7NjAwOzcwMCZkaXNwbGF5PXN3YXAnKTtcblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUge1xuICAgIC0tZm9udC1zaXplLWludm9pY2UtdGl0bGU6IDIuMjVyZW07IC8qIDM2cHggKi9cbiAgICAtLWZvbnQtc2l6ZS1oZWFkZXI6IDAuNjI0cmVtOyAvKiA5Ljk4MzRweCAqL1xuICAgIC0tZm9udC1zaXplLXRvdGFsLWxhYmVsOiAwLjgzMTk1cmVtOyAvKiAxMy4zMTEycHggKi9cbiAgICAtLWxpbmUtaGVpZ2h0LWhlYWRlcjogMS4zMzM7IC8qIDEzLjMxMTJweCAvIDkuOTgzNHB4ICovXG4gICAgLS1mb250LXdlaWdodC1oZWFkZXI6IDcwMDtcbiAgICAtLWZvbnQtc2l6ZS1ib2R5OiAwLjYyMzk2MjVyZW07IC8qIDkuOTgzNHB4ICovXG4gICAgLS1mb250LXNpemUtc21hbGw6IDAuNTU0cmVtOyAvKiA4Ljg3NDFweCAqL1xuICAgIC0tbGluZS1oZWlnaHQtYm9keTogMC44MzE5NXJlbTsgLyogMTMuMzExMnB4ICovXG5cbiAgICAtLXNwYWNpbmcteHhzOiAwLjEzOXJlbTsgLyogMi4yMTlweCAqL1xuICAgIC0tc3BhY2luZy14czogMC4yNXJlbTsgLyogNHB4ICovXG4gICAgLS1zcGFjaW5nLXhzLXNtOiAwLjQxNjI1cmVtOyAvKiA2LjY2cHggKi9cbiAgICAtLXNwYWNpbmctc206IDAuNXJlbTsgLyogOHB4ICovXG4gICAgLS1zcGFjaW5nLW1kOiAwLjc1cmVtOyAvKiAxMnB4ICovXG4gICAgLS1zcGFjaW5nLWxnOiAxcmVtOyAvKiAxNnB4ICovXG4gICAgLS1zcGFjaW5nLXhsOiAxLjVyZW07IC8qIDI0cHggKi9cbiAgICAtLXNwYWNpbmcteHhsOiAycmVtOyAvKiAzMnB4ICovXG5cbiAgICAtLXBhZGRpbmcteHM6IDAuMjA4MTI1cmVtOyAvKiAzLjMzcHggKi9cbiAgICAtLXBhZGRpbmctc206IDAuMjc3NXJlbTsgLyogNC40NHB4ICovXG4gICAgLS1wYWRkaW5nLW1kOiAwLjU1NHJlbTsgLyogOC44NzRweCAqL1xuXG4gICAgLS1sb2dvLXdpZHRoOiA4Ljg3NXJlbTsgLyogfjE0MnB4ICovXG4gICAgLS1sb2dvLWhlaWdodDogNC40Mzc1cmVtOyAvKiB+NzFweCAqL1xuICAgIC0tdG90YWxzLXRhYmxlLXdpZHRoOiAxOC43NXJlbTsgLyogMzAwcHggKi9cbiAgICAtLWRldGFpbC1sYWJlbC13aWR0aDogNi41cmVtOyAvKiAxMDRweCAqL1xuXG4gICAgLS1jb2wtcHJvZHVjdC1taW4td2lkdGg6IDE1cmVtO1xuICAgIC0tY29sLXF0eS13aWR0aDogM3JlbTtcbiAgICAtLWNvbC1wcmljZS13aWR0aDogNC41cmVtO1xuICAgIC0tY29sLWFtb3VudC13aWR0aDogNXJlbTtcbiAgICAtLWNvbC10YXhhYmxlLXdpZHRoOiAzcmVtO1xuXG4gICAgLS10ZXh0LXByaW1hcnk6ICMxMDEwMTE7XG4gICAgLS10ZXh0LW5ldXRyYWw6ICM2NjY2NjY7XG4gICAgLS10ZXh0LW11dGVkOiAjOTk5OTk5O1xuICAgIC0tYm9yZGVyLWNvbG9yOiAjZTZlNmU2O1xuICAgIC8qIFRoZSBydWxlIGFib3ZlIFRvdGFsIGlzIGl0cyBvd24gZ3JleSwgbWF0Y2hpbmcgdGhlIGdlbmVyYXRlZCBQREYuICovXG4gICAgLS1ydWxlLWNvbG9yOiAjZDlkOWQ5O1xuICAgIC0tYmctaGVhZGVyOiAjZjJmMmYyO1xuICAgIC0tYWNjZW50LWNvbG9yOiAjNDMyZGQ3O1xuXG4gICAgLS1ib3JkZXItcmFkaXVzOiB2YXIoLS1zcGFjaW5nLXhzKTtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTFpbjtcbiAgICBwYWRkaW5nOiAyLjVyZW07XG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcicsICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtYm9keSk7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWJvZHkpO1xuICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlICosXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAqOjpiZWZvcmUsXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteGwpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHhsKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuaXNzdWVyQmxvY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuaW52b2ljZVRpdGxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1pbnZvaWNlLXRpdGxlKTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbjogMCAwIHZhcigtLXNwYWNpbmctc20pO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmNvbXBhbnlUZXh0IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmNvbXBhbnlOYW1lIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5sb2dvV3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1pbi13aWR0aDogdmFyKC0tbG9nby13aWR0aCk7XG4gICAgbWluLWhlaWdodDogdmFyKC0tbG9nby1oZWlnaHQpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5sb2dvV3JhcHBlci5uby1sb2dvIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1oZWFkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubG9nb0ltYWdlIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLWxvZ28td2lkdGgpO1xuICAgIG1heC1oZWlnaHQ6IHZhcigtLWxvZ28taGVpZ2h0KTtcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5tYWluSW5mb1NlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14bCk7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2luZy14eGwpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5pbmZvQ29sdW1uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuY29sdW1uSGVhZGVyVGl0bGUge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWJvZHkpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWhlYWRlcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctaGVhZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLXNtKSB2YXIoLS1wYWRkaW5nLW1kKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmNvbHVtbkNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXBhZGRpbmctbWQpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5jb2x1bW5UZXh0IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmRldGFpbExpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmcteHhzKTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMCB2YXIoLS1wYWRkaW5nLW1kKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuZGV0YWlsUm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy1sZyk7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmRldGFpbExhYmVsIHtcbiAgICBmbGV4OiAwIDAgdmFyKC0tZGV0YWlsLWxhYmVsLXdpZHRoKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuZGV0YWlsVmFsdWUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAucGF5bWVudFRlcm1MaW5lIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubWVtb1RleHQge1xuICAgIG1hcmdpbjogMCAwIHZhcigtLXNwYWNpbmctbWQpO1xuICAgIHBhZGRpbmc6IDAgdmFyKC0tcGFkZGluZy1tZCk7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5saW5lSXRlbXNTZWN0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjaW5nLW1kKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubGluZUl0ZW1zVGFibGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmxpbmVJdGVtc1RhYmxlIHRoZWFkIHRyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1oZWFkZXIpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5saW5lSXRlbXNUYWJsZSB0aCB7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWhlYWRlcik7XG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LWhlYWRlcik7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBwYWRkaW5nOiB2YXIoLS1wYWRkaW5nLXNtKSB2YXIoLS1wYWRkaW5nLW1kKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubGluZUl0ZW1zVGFibGUgdGQge1xuICAgIHBhZGRpbmc6IHZhcigtLXBhZGRpbmctbWQpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3IpO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmxpbmVJdGVtc1RhYmxlIC5jb2xQcm9kdWN0IHtcbiAgICBtaW4td2lkdGg6IHZhcigtLWNvbC1wcm9kdWN0LW1pbi13aWR0aCk7XG4gICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubGluZUl0ZW1zVGFibGUgLmNvbFF0eSB7XG4gICAgd2lkdGg6IHZhcigtLWNvbC1xdHktd2lkdGgpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAvKiBBIGN1cnJlbmN5IHN0cmluZyB3aXRoIG5vIHNwYWNlIGNhbm5vdCB3cmFwLCBzbyB0aGUgd2lkdGhzIGJlbG93IG5ldmVyXG4gICAgIG5lZWRlZCB0byBncm93LiBXaGF0IGRvZXMgd3JhcCBpcyBjdXJyZW5jeURpc3BsYXkgJ25hbWUnXG4gICAgIChcIjEsMjM0LDU2Ny44OSBVUyBkb2xsYXJzXCIpLCB0aGUgb25lIEludGwgZm9ybWF0IHdob3NlIHNlcGFyYXRvciBpcyBhXG4gICAgIHBsYWluIHNwYWNlIHJhdGhlciB0aGFuIFUrMDBBMC4gSXQgaXMgcmVhY2hhYmxlIHJhdGhlciB0aGFuIGh5cG90aGV0aWNhbDpcbiAgICAgdXNlQ3VycmVuY2llcyBwYXNzZXMgbG9jYWxlLmN1cnJlbmN5TnVtYmVyRm9ybWF0LmRpc3BsYXkgc3RyYWlnaHQgdGhyb3VnaFxuICAgICB0byBJbnRsLk51bWJlckZvcm1hdC4gSGVuY2Ugbm93cmFwIHJhdGhlciB0aGFuIGEgd2lkZXIgY29sdW1uLiAqL1xuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmxpbmVJdGVtc1RhYmxlIC5jb2xQcmljZSB7XG4gICAgd2lkdGg6IHZhcigtLWNvbC1wcmljZS13aWR0aCk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5saW5lSXRlbXNUYWJsZSAuY29sVGF4YWJsZSB7XG4gICAgd2lkdGg6IHZhcigtLWNvbC10YXhhYmxlLXdpZHRoKTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgLyogUmlnaHQtYWxpZ25lZCBzbyBsaW5lIGFtb3VudHMgbGluZSB1cCB3aXRoIHRoZSBzdWJ0b3RhbCBmaWd1cmVzIGJlbG93XG4gICAgIHRoZSB0YWJsZTsgZXZlcnkgb3RoZXIgY29sdW1uIHN0YXlzIGxlZnQtYWxpZ25lZCAoRU1CRC00NzgyIGRlc2lnbikuICovXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAubGluZUl0ZW1zVGFibGUgLmNvbEFtb3VudCB7XG4gICAgd2lkdGg6IHZhcigtLWNvbC1hbW91bnQtd2lkdGgpO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAvKiBUaGUgYW1vdW50IGlzIHdoYXQgYSByZWFkZXIgc2NhbnMgdGhlIHJvdyBmb3IsIHNvIGl0IHNpdHMgb25lIHN0ZXAgYWJvdmVcbiAgICAgdGhlIG90aGVyIGNlbGxzLiBTY29wZWQgdG8gdGQgc28gdGhlIGhlYWRlciBrZWVwcyBpdHMgb3duIHdlaWdodC4gKi9cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5saW5lSXRlbXNUYWJsZSB0ZC5jb2xBbW91bnQge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLm5vSXRlbXNSb3cgLm5vSXRlbXNDZWxsIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAudG90YWxzU2VjdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNpbmcteHhsKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAudG90YWxzVGFibGUge1xuICAgIHdpZHRoOiB2YXIoLS10b3RhbHMtdGFibGUtd2lkdGgpO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhzLXNtKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAudG90YWxSb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgZ2FwOiB2YXIoLS1zcGFjaW5nLXhsKTtcbiAgICBwYWRkaW5nOiAwIHZhcigtLXBhZGRpbmctbWQpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC50b3RhbExhYmVsIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIC8qIENhcnJpZXMgdGhlIHNhbWUgc2xpZ2h0IGxpZnQgYXMgdGhlIGxpbmUtaXRlbSBhbW91bnRzLCBzbyB0aGUgZmlndXJlXG4gICAgIGNvbHVtbiByZWFkcyBhcyBvbmUgcnVuIGZyb20gdGhlIHRhYmxlIGRvd24gdGhyb3VnaCB0aGUgdG90YWwuICovXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAudG90YWxWYWx1ZSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWluLXdpZHRoOiA2cmVtO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxuXG4gIC8qIENvbnRhY3QgbGluZXMgYXJlIG11dGVkIGluIHRoZSBGaWdtYSBkZXNpZ24gc28gdGhlIG5hbWUgYW5kIGFkZHJlc3NcbiAgICAgY2FycnkgdGhlIGJsb2NrLiBTYW1lIGdyZXkgYXMgdGhlIHN1YnRvdGFsIHNwbGl0IGJlbG93LiAqL1xuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmNvbXBhbnlFbWFpbCxcbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5jb21wYW55UGhvbmUsXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuZW1haWwsXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAucGhvbmUge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgfVxuXG4gIC8qIFRoZSB0YXhhYmxlL25vbi10YXhhYmxlIHNwbGl0IGlzIHN1cHBvcnRpbmcgZGV0YWlsLCBzbyBpdCByZWFkcyBiYWNrIGEgc3RlcFxuICAgICBmcm9tIHRoZSBmaWd1cmVzIGVpdGhlciBzaWRlIG9mIGl0LiAqL1xuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLm11dGVkVG90YWwge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAuZmluYWxUb3RhbCB7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2luZy14eHMpO1xuICAgIHBhZGRpbmctdG9wOiB2YXIoLS1zcGFjaW5nLXNtKTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tcnVsZS1jb2xvcik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtdG90YWwtbGFiZWwpO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmZvb3RlclRleHQge1xuICAgIG1hcmdpbjogMCAwIHZhcigtLXNwYWNpbmcteHhsKTtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLmZvb3RlclNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNpbmctbWQpO1xuICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvcik7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLXNwYWNpbmctbGcpO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5wYXltZW50UXJDb2RlIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB3aWR0aDogNC41cmVtO1xuICAgIGhlaWdodDogNC41cmVtO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5wYXltZW50RGV0YWlscyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLnBheW1lbnRUZXh0IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuaW52b2ljZVByZXZpZXdNb25pdGUgLnBheW1lbnRMaW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogdmFyKC0tc3BhY2luZy14cyk7XG4gICAgY29sb3I6IHZhcigtLWFjY2VudC1jb2xvcik7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuXG4gIC5pbnZvaWNlUHJldmlld01vbml0ZSAucGF5bWVudExpbmtJY29uIHtcbiAgICB3aWR0aDogMWVtO1xuICAgIGhlaWdodDogMWVtO1xuICB9XG5cbiAgLmludm9pY2VQcmV2aWV3TW9uaXRlIC5ub3RTZXQge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBJbnZvaWNlUHJldmlld01vbml0ZSA9ICh7XG4gIGFkZHJlc3MsXG4gIGNvdW50ZXJwYXJ0LFxuICBjdXJyZW5jeSxcbiAgaW52b2ljZURhdGEsXG4gIGVudGl0eURhdGEsXG4gIHBheW1lbnRUZXJtcyxcbiAgbWVhc3VyZVVuaXRzID0gW10sXG59OiBJbnZvaWNlUHJldmlld0Jhc2VQcm9wcykgPT4ge1xuICBjb25zdCB7IGkxOG4gfSA9IHVzZUxpbmd1aSgpO1xuICBjb25zdCB7IGFwaSwgZW50aXR5SWQsIGxvY2FsZSB9ID0gdXNlTW9uaXRlQ29udGV4dCgpO1xuICBjb25zdCB7IGZvcm1hdEN1cnJlbmN5VG9EaXNwbGF5IH0gPSB1c2VDdXJyZW5jaWVzKCk7XG4gIGNvbnN0IHRheExhYmVsID0gaTE4bi5fKCdUYXgnKTtcbiAgLy8gRGVsaWJlcmF0ZWx5IHNlcGFyYXRlIGZyb20gdGF4TGFiZWwsIHdoaWNoIGlzIGFsc28gdGhlIHRvdGFscy1zZWN0aW9uIHJvd1xuICAvLyBsYWJlbCBhbmQgdGhlIGNvdW50ZXJwYXJ0L2VudGl0eSB0YXgtSUQgbGFiZWwuIFRoaXMgb25lIGlzIG9ubHkgdGhlXG4gIC8vIGxpbmUtaXRlbSBjb2x1bW4gaGVhZGVyLlxuICBjb25zdCB0YXhhYmxlTGFiZWwgPSBpMThuLl8oJ1RheGFibGUnKTtcbiAgLy8gQmFyZSAnWWVzJy8nTm8nIGlkcyByYXRoZXIgdGhhbiBsaW5ndWkgbXNnY3R4dDogbm90aGluZyBpbiBtb25pdGUtc2RrXG4gIC8vIHVzZXMgbXNnY3R4dCBhbmQgJ2VuJyBpcyB0aGUgb25seSBsb2NhbGUsIHNvIHRoaXMgd291bGQgYmUgdGhlIGxpYnJhcnknc1xuICAvLyBmaXJzdCBhbmQgb25seSBjYXNlLlxuICBjb25zdCB0YXhhYmxlWWVzTGFiZWwgPSBpMThuLl8oJ1llcycpO1xuICBjb25zdCB0YXhhYmxlTm9MYWJlbCA9IGkxOG4uXygnTm8nKTtcblxuICBjb25zdCB7XG4gICAgZG9jdW1lbnRfaWQ6IGRvY3VtZW50SWQsXG4gICAgcGF5bWVudF90ZXJtc19pZDogcGF5bWVudFRlcm1zSWQsXG4gICAgcGF5bWVudF90ZXJtc19jdXN0b21fZGF0ZTogcGF5bWVudFRlcm1zQ3VzdG9tRGF0ZSxcbiAgICBsaW5lX2l0ZW1zOiBpdGVtcyxcbiAgICBtZW1vLFxuICAgIGZvb3RlcixcbiAgICBiYW5rX2FjY291bnRfaWQ6IGVudGl0eUJhbmtBY2NvdW50SWQgPSAnJyxcbiAgICBiYW5rX2FjY291bnRfdHlwZTogYmFua0FjY291bnRUeXBlLFxuICAgIHRheF9tb2RlOiB0YXhNb2RlLFxuICAgIHB1cmNoYXNlX29yZGVyOiBwdXJjaGFzZU9yZGVyLFxuICAgIHRheF9yYXRlOiB0b3BMZXZlbFRheFJhdGUsXG4gICAgZGlzY291bnQsXG4gIH0gPSBpbnZvaWNlRGF0YTtcblxuICAvLyBUaGUgcmF0ZSBnb2VzIG9uIHRoZSB0b3RhbHMgcm93LCBub3QgdGhlIHRheC1JRCBsaW5lcyB0aGF0IGFsc28gcmVhZFxuICAvLyBcIlRheFwiLCBzbyB0aGlzIGlzIGJ1aWx0IGFwYXJ0IGZyb20gdGF4TGFiZWwuXG4gIGNvbnN0IHRheFJvd0xhYmVsID0gdG9wTGV2ZWxUYXhSYXRlXG4gICAgPyBpMThuLl8oJ1RheCAoe3JhdGV9JSknLCB7IHJhdGU6IHRvcExldmVsVGF4UmF0ZSB9KVxuICAgIDogdGF4TGFiZWw7XG5cbiAgLy8gVGhlIHByZXZpZXcgaGFzIG5vIGlzc3VlIGRhdGUgb2YgaXRzIG93biwgYmVjYXVzZSBhIGRyYWZ0IGlzIGlzc3VlZCBsYXRlclxuICAvLyBhcyBhIHNlcGFyYXRlIHN0ZXAuIFRvZGF5IHN0YW5kcyBpbiBmb3IgaXQsIGJvdGggaW4gdGhlIEludm9pY2UgZGF0ZSByb3cgYW5kXG4gIC8vIGFzIHRoZSBiYXNlbGluZSBhIGN1c3RvbSBkYXRlJ3MgdGVybSBpcyBtZWFzdXJlZCBmcm9tLlxuICBjb25zdCBpc3N1ZURhdGUgPSBuZXcgRGF0ZSgpO1xuICBjb25zdCBkYXRlVGltZSA9IGkxOG4uZGF0ZShpc3N1ZURhdGUsIGxvY2FsZS5kYXRlRm9ybWF0KTtcblxuICBjb25zdCB7IGR1ZURhdGUsIHRlcm1MaW5lczogcGF5bWVudFRlcm1MaW5lcyB9ID0gYnVpbGRQcmV2aWV3UGF5bWVudFRlcm1zVmlldyhcbiAgICB7XG4gICAgICBwYXltZW50VGVybXNJZCxcbiAgICAgIGN1c3RvbURhdGU6IHBheW1lbnRUZXJtc0N1c3RvbURhdGUsXG4gICAgICBpc3N1ZURhdGUsXG4gICAgICBwYXltZW50VGVybXMsXG4gICAgICBpMThuLFxuICAgIH0sXG4gICk7XG5cbiAgY29uc3Qgc2FuaXRpemVkSXRlbXMgPSBzYW5pdGl6ZUxpbmVJdGVtcyhpdGVtcyBhcyBTYW5pdGl6YWJsZUxpbmVJdGVtW10pLm1hcChcbiAgICAoaXRlbSwgaW5kZXgpID0+ICh7XG4gICAgICAuLi5pdGVtLFxuICAgICAgaWQ6IGl0ZW0uaWQgfHwgYGl0ZW0tJHtpbmRleCArIDF9YCxcbiAgICB9KSxcbiAgKTtcblxuICAvLyBUaGUgY291bnRyeSBpcyBkcm9wcGVkIG9ubHkgd2hlbiBpc3N1ZXIgYW5kIHJlY2lwaWVudCBzaGFyZSBpdCwgc28gYm90aFxuICAvLyBibG9ja3MgYXJlIHJlc29sdmVkIGFnYWluc3QgdGhlIGlzc3VlcidzIGNvdW50cnkuIEZvciB0aGUgZW50aXR5J3Mgb3duXG4gIC8vIGFkZHJlc3MgdGhhdCBjb21wYXJpc29uIGlzIHdpdGggaXRzZWxmLCB3aGljaCBpcyB0aGUgaW50ZW5kZWQgcmVhZGluZzpcbiAgLy8gYSBVUyBidXNpbmVzcyBkb2VzIG5vdCBwcmludCBcIlVuaXRlZCBTdGF0ZXNcIiBvbiBpdHMgb3duIGxldHRlcmhlYWQuXG4gIGNvbnN0IGlzc3VlckNvdW50cnkgPSBlbnRpdHlEYXRhPy5hZGRyZXNzPy5jb3VudHJ5O1xuICBjb25zdCBmb3JtYXRDb3VudHJ5ID0gKGNvdW50cnlDb2RlOiBzdHJpbmcpID0+XG4gICAgZ2V0Q291bnRyeU5hbWUoaTE4biwgY291bnRyeUNvZGUpO1xuICBjb25zdCBjb3VudGVycGFydEFkZHJlc3NMaW5lcyA9IGJ1aWxkUHJldmlld0FkZHJlc3NMaW5lcyh7XG4gICAgYWRkcmVzcyxcbiAgICBpc3N1ZXJDb3VudHJ5LFxuICAgIGZvcm1hdENvdW50cnksXG4gIH0pO1xuICBjb25zdCBlbnRpdHlBZGRyZXNzTGluZXMgPSBidWlsZFByZXZpZXdBZGRyZXNzTGluZXMoe1xuICAgIGFkZHJlc3M6IGVudGl0eURhdGE/LmFkZHJlc3MsXG4gICAgaXNzdWVyQ291bnRyeSxcbiAgICBmb3JtYXRDb3VudHJ5LFxuICB9KTtcblxuICBjb25zdCBpc0luY2x1c2l2ZVByaWNpbmcgPSB0YXhNb2RlID09PSAnaW5jbHVzaXZlJztcbiAgY29uc3QgY291bnRlcnBhcnROYW1lID0gY291bnRlcnBhcnQgPyBnZXRDb3VudGVycGFydE5hbWUoY291bnRlcnBhcnQpIDogJyc7XG4gIGNvbnN0IGNvdW50ZXJwYXJ0RW1haWwgPVxuICAgIGNvdW50ZXJwYXJ0ICYmIGlzT3JnYW5pemF0aW9uQ291bnRlcnBhcnQoY291bnRlcnBhcnQpXG4gICAgICA/IGNvdW50ZXJwYXJ0Lm9yZ2FuaXphdGlvbi5lbWFpbFxuICAgICAgOiBjb3VudGVycGFydCAmJiBpc0luZGl2aWR1YWxDb3VudGVycGFydChjb3VudGVycGFydClcbiAgICAgICAgPyBjb3VudGVycGFydC5pbmRpdmlkdWFsLmVtYWlsXG4gICAgICAgIDogdW5kZWZpbmVkO1xuICAvLyBPcGVuQVBJIG1hcmtzIGJhbmtfYWNjb3VudF90eXBlIGFzIG9wdGlvbmFsOyBkZWZhdWx0IHRvIEJBTktfREVUQUlMUyB3aGVuXG4gIC8vIGFuIGlkIGlzIHByZXNlbnQgd2l0aG91dCBhIHR5cGUgc28gZXhpc3RpbmcgaW52b2ljZSBkYXRhIHN0aWxsIGZldGNoZXMuXG4gIGNvbnN0IGVmZmVjdGl2ZUJhbmtBY2NvdW50VHlwZSA9XG4gICAgYmFua0FjY291bnRUeXBlID8/IChlbnRpdHlCYW5rQWNjb3VudElkID8gJ0JBTktfREVUQUlMUycgOiB1bmRlZmluZWQpO1xuXG4gIGNvbnN0IHsgZGF0YTogYmFua0FjY291bnQgfSA9IHVzZUdldEJhbmtBY2NvdW50QnlJZChcbiAgICBlbnRpdHlCYW5rQWNjb3VudElkLFxuICAgIGVmZmVjdGl2ZUJhbmtBY2NvdW50VHlwZSxcbiAgKTtcblxuICBjb25zdCB7IGRhdGE6IGVudGl0eVNldHRpbmdzIH0gPSB1c2VFbnRpdHlTZXR0aW5ncygpO1xuICBjb25zdCBkb2N1bWVudFJlbmRlcmluZyA9IGVudGl0eVNldHRpbmdzPy5kb2N1bWVudF9yZW5kZXJpbmc7XG4gIGNvbnN0IGRpc3BsYXlCYW5rQWNjb3VudCA9XG4gICAgZG9jdW1lbnRSZW5kZXJpbmc/Lmludm9pY2U/LmRpc3BsYXlfb3JnYW5pemF0aW9uX2JhbmtfYWNjb3VudCA/P1xuICAgIGRvY3VtZW50UmVuZGVyaW5nPy5kaXNwbGF5X29yZ2FuaXphdGlvbl9iYW5rX2FjY291bnQgPz9cbiAgICB0cnVlO1xuXG4gIC8vIEFuIGVudGl0eSB0aGF0IGNhbm5vdCByZWNlaXZlIHBheW1lbnRzIGlzIHNlbnQgaXRzIGludm9pY2VzIHdpdGhvdXQgYSBsaW5rLlxuICBjb25zdCB7IGRhdGE6IHBheW1lbnRNZXRob2RzIH0gPVxuICAgIGFwaS5maW5vcHMuZ2V0RW50aXRpZXNJZFBheW1lbnRNZXRob2RzLnVzZVF1ZXJ5KHtcbiAgICAgIHBhdGg6IHsgZW50aXR5X2lkOiBlbnRpdHlJZCB9LFxuICAgIH0pO1xuICBjb25zdCBzaG93UGF5bWVudExpbmsgPVxuICAgIGdldFJlY2VpdmVQYXltZW50TWV0aG9kcyhwYXltZW50TWV0aG9kcz8uZGF0YSkubGVuZ3RoID4gMDtcblxuICBjb25zdCB7XG4gICAgc3VidG90YWxQcmljZSxcbiAgICBkaXNjb3VudFZhbHVlLFxuICAgIG5vblRheGFibGVTdWJ0b3RhbCxcbiAgICB0YXhhYmxlU3VidG90YWwsXG4gICAgdG90YWxQcmljZSxcbiAgICB0b3RhbFRheGVzLFxuICAgIHJvd1Zpc2liaWxpdHksXG4gIH0gPSB1c2VDcmVhdGVJbnZvaWNlUHJvZHVjdHNUYWJsZSh7XG4gICAgbGluZUl0ZW1zOlxuICAgICAgc2FuaXRpemVkSXRlbXMgYXMgQ3JlYXRlUmVjZWl2YWJsZXNGb3JtQmVmb3JlVmFsaWRhdGlvbkxpbmVJdGVtUHJvcHNbXSxcbiAgICBmb3JtYXRDdXJyZW5jeVRvRGlzcGxheSxcbiAgICBhY3R1YWxDdXJyZW5jeTogY3VycmVuY3ksXG4gICAgaXNJbmNsdXNpdmVQcmljaW5nLFxuICAgIHRheFJhdGU6IHRvcExldmVsVGF4UmF0ZSA/IE51bWJlcih0b3BMZXZlbFRheFJhdGUpIDogdW5kZWZpbmVkLFxuICAgIGRpc2NvdW50LFxuICB9KTtcblxuICAvLyBVbmxpa2UgdGhlIGNyZWF0ZSBmb3JtLCB0aGUgZG9jdW1lbnQgY2FycmllcyBlYWNoIHJvdyBvbmx5IHdoZW4gaXQgc2F5c1xuICAvLyBzb21ldGhpbmcuIGByb3dWaXNpYmlsaXR5YCBpcyB0aGUgdGFibGUgZnJvbSBFTUJELTUwMTUuXG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAgPEdsb2JhbCBzdHlsZXM9e2ludm9pY2VQcmV2aWV3TW9uaXRlU3R5bGVzfSAvPlxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJpbnZvaWNlUHJldmlld01vbml0ZVwiPlxuICAgICAgICA8aGVhZGVyIGNsYXNzTmFtZT1cImhlYWRlclwiPlxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaXNzdWVyQmxvY2tcIj5cbiAgICAgICAgICAgIDxoMSBjbGFzc05hbWU9XCJpbnZvaWNlVGl0bGVcIj57aTE4bi5fKCdJbnZvaWNlJyl9PC9oMT5cbiAgICAgICAgICAgIHtlbnRpdHlEYXRhICYmXG4gICAgICAgICAgICAgICdvcmdhbml6YXRpb24nIGluIGVudGl0eURhdGEgJiZcbiAgICAgICAgICAgICAgZW50aXR5RGF0YS5vcmdhbml6YXRpb24/LmxlZ2FsX25hbWUgJiYgKFxuICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17Y24oJ2NvbXBhbnlUZXh0JywgJ2NvbXBhbnlOYW1lJyl9PlxuICAgICAgICAgICAgICAgICAge2VudGl0eURhdGEub3JnYW5pemF0aW9uLmxlZ2FsX25hbWV9XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAge2VudGl0eURhdGE/LmFkZHJlc3MgJiYgKFxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9e2NuKCdjb21wYW55VGV4dCcsICdjb21wYW55QWRkcmVzcycpfT5cbiAgICAgICAgICAgICAgICA8SW52b2ljZVByZXZpZXdNb25pdGVBZGRyZXNzTGluZXMgbGluZXM9e2VudGl0eUFkZHJlc3NMaW5lc30gLz5cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHtlbnRpdHlEYXRhPy50YXhfaWQgJiYgKFxuICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9e2NuKCdjb21wYW55VGV4dCcsICdjb21wYW55VmF0Jyl9PlxuICAgICAgICAgICAgICAgIHt0YXhMYWJlbH06IHtlbnRpdHlEYXRhLnRheF9pZH1cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHtlbnRpdHlEYXRhPy5lbWFpbCAmJiAoXG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17Y24oJ2NvbXBhbnlUZXh0JywgJ2NvbXBhbnlFbWFpbCcpfT5cbiAgICAgICAgICAgICAgICB7ZW50aXR5RGF0YS5lbWFpbH1cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHtlbnRpdHlEYXRhPy5waG9uZSAmJiAoXG4gICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17Y24oJ2NvbXBhbnlUZXh0JywgJ2NvbXBhbnlQaG9uZScpfT5cbiAgICAgICAgICAgICAgICB7ZW50aXR5RGF0YS5waG9uZX1cbiAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzc05hbWU9e2NuKCdsb2dvV3JhcHBlcicsICFlbnRpdHlEYXRhPy5sb2dvPy51cmwgJiYgJ25vLWxvZ28nKX1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7ZW50aXR5RGF0YT8ubG9nbz8udXJsID8gKFxuICAgICAgICAgICAgICA8aW1nXG4gICAgICAgICAgICAgICAgY2xhc3NOYW1lPVwibG9nb0ltYWdlXCJcbiAgICAgICAgICAgICAgICBzcmM9e2VudGl0eURhdGEubG9nby51cmx9XG4gICAgICAgICAgICAgICAgYWx0PXtpMThuLl8oJ0xvZ28nKX1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cImxvZ29UZXh0XCI+e2kxOG4uXygnTm8gbG9nbycpfTwvc3Bhbj5cbiAgICAgICAgICAgICl9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvaGVhZGVyPlxuXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibWFpbkluZm9TZWN0aW9uXCI+XG4gICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJpbmZvQ29sdW1uXCI+XG4gICAgICAgICAgICA8aDIgY2xhc3NOYW1lPVwiY29sdW1uSGVhZGVyVGl0bGVcIj57aTE4bi5fKCdCaWxsIHRvJyl9PC9oMj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sdW1uQ29udGVudFwiPlxuICAgICAgICAgICAgICB7IWNvdW50ZXJwYXJ0TmFtZSA/IChcbiAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9e2NuKCdjb2x1bW5UZXh0JywgJ25vdFNldCcpfT5cbiAgICAgICAgICAgICAgICAgIHtpMThuLl8oJ1BlbmRpbmcnKX1cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17Y24oJ2NvbHVtblRleHQnLCAnY29tcGFueU5hbWUnKX0+XG4gICAgICAgICAgICAgICAgICAgIHtjb3VudGVycGFydE5hbWV9XG4gICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICB7YWRkcmVzcyAmJiAoXG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT17Y24oJ2NvbHVtblRleHQnLCAnYWRkcmVzcycpfT5cbiAgICAgICAgICAgICAgICAgICAgICA8SW52b2ljZVByZXZpZXdNb25pdGVBZGRyZXNzTGluZXNcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmVzPXtjb3VudGVycGFydEFkZHJlc3NMaW5lc31cbiAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAge2NvdW50ZXJwYXJ0Py50YXhfaWQgJiYgKFxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9e2NuKCdjb2x1bW5UZXh0JywgJ3ZhdElkJyl9PlxuICAgICAgICAgICAgICAgICAgICAgIHt0YXhMYWJlbH06IHtjb3VudGVycGFydD8udGF4X2lkfVxuICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAge2NvdW50ZXJwYXJ0RW1haWwgJiYgKFxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9e2NuKCdjb2x1bW5UZXh0JywgJ2VtYWlsJyl9PlxuICAgICAgICAgICAgICAgICAgICAgIHtjb3VudGVycGFydEVtYWlsfVxuICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAge2dldENvdW50ZXJwYXJ0UGhvbmUoY291bnRlcnBhcnQpICYmIChcbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPXtjbignY29sdW1uVGV4dCcsICdwaG9uZScpfT5cbiAgICAgICAgICAgICAgICAgICAgICB7Z2V0Q291bnRlcnBhcnRQaG9uZShjb3VudGVycGFydCl9XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiaW5mb0NvbHVtblwiPlxuICAgICAgICAgICAgPGgyIGNsYXNzTmFtZT1cImNvbHVtbkhlYWRlclRpdGxlXCI+e2kxOG4uXygnRGV0YWlscycpfTwvaDI+XG4gICAgICAgICAgICA8ZGwgY2xhc3NOYW1lPVwiZGV0YWlsTGlzdFwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImRldGFpbFJvd1wiPlxuICAgICAgICAgICAgICAgIDxkdCBjbGFzc05hbWU9XCJkZXRhaWxMYWJlbFwiPntpMThuLl8oJ0ludm9pY2UgbnVtYmVyJyl9PC9kdD5cbiAgICAgICAgICAgICAgICA8ZGQgY2xhc3NOYW1lPVwiZGV0YWlsVmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgIHsvKiBBIGRyYWZ0IGhhcyBubyBudW1iZXIgdW50aWwgaXQgaXMgaXNzdWVkLCBzbyBuYW1lIHRoYXRcbiAgICAgICAgICAgICAgICAgICAgICBzdGF0ZSByYXRoZXIgdGhhbiBzaG93aW5nIGEgcGxhY2Vob2xkZXIgaWQuICovfVxuICAgICAgICAgICAgICAgICAge2RvY3VtZW50SWQgfHwgKFxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJub3RTZXRcIj57aTE4bi5fKCdQZW5kaW5nJyl9PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8L2RkPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWxSb3dcIj5cbiAgICAgICAgICAgICAgICA8ZHQgY2xhc3NOYW1lPVwiZGV0YWlsTGFiZWxcIj57aTE4bi5fKCdJbnZvaWNlIGRhdGUnKX08L2R0PlxuICAgICAgICAgICAgICAgIDxkZCBjbGFzc05hbWU9XCJkZXRhaWxWYWx1ZVwiPntkYXRlVGltZX08L2RkPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWxSb3dcIj5cbiAgICAgICAgICAgICAgICA8ZHQgY2xhc3NOYW1lPVwiZGV0YWlsTGFiZWxcIj57aTE4bi5fKCdEdWUgZGF0ZScpfTwvZHQ+XG4gICAgICAgICAgICAgICAgPGRkIGNsYXNzTmFtZT1cImRldGFpbFZhbHVlXCI+XG4gICAgICAgICAgICAgICAgICB7ZHVlRGF0ZSA/IChcbiAgICAgICAgICAgICAgICAgICAgaTE4bi5kYXRlKGR1ZURhdGUsIGxvY2FsZS5kYXRlRm9ybWF0KVxuICAgICAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwibm90U2V0XCI+e2kxOG4uXygnUGVuZGluZycpfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC9kZD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZGV0YWlsUm93XCI+XG4gICAgICAgICAgICAgICAgPGR0IGNsYXNzTmFtZT1cImRldGFpbExhYmVsXCI+e2kxOG4uXygnUGF5bWVudCB0ZXJtcycpfTwvZHQ+XG4gICAgICAgICAgICAgICAgPGRkIGNsYXNzTmFtZT1cImRldGFpbFZhbHVlXCI+XG4gICAgICAgICAgICAgICAgICB7cGF5bWVudFRlcm1MaW5lcy5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgICAgICBwYXltZW50VGVybUxpbmVzLm1hcCgobGluZSwgaW5kZXgpID0+IChcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBrZXk9e2luZGV4fSBjbGFzc05hbWU9XCJwYXltZW50VGVybUxpbmVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtsaW5lfVxuICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgKSlcbiAgICAgICAgICAgICAgICAgICkgOiAoXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cIm5vdFNldFwiPntpMThuLl8oJ1BlbmRpbmcnKX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgIDwvZGQ+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICB7cHVyY2hhc2VPcmRlciAmJiAoXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJkZXRhaWxSb3dcIj5cbiAgICAgICAgICAgICAgICAgIDxkdCBjbGFzc05hbWU9XCJkZXRhaWxMYWJlbFwiPntpMThuLl8oJ1BPIG51bWJlcicpfTwvZHQ+XG4gICAgICAgICAgICAgICAgICA8ZGQgY2xhc3NOYW1lPVwiZGV0YWlsVmFsdWVcIj57cHVyY2hhc2VPcmRlcn08L2RkPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC9kbD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAge21lbW8gJiYgPHAgY2xhc3NOYW1lPVwibWVtb1RleHRcIj57bWVtb308L3A+fVxuXG4gICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibGluZUl0ZW1zU2VjdGlvblwiPlxuICAgICAgICAgIDx0YWJsZSBjbGFzc05hbWU9XCJsaW5lSXRlbXNUYWJsZVwiPlxuICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgey8qIFRoZSBoZWFkZXIgcmVhZHMgXCJEZXNjcmlwdGlvblwiIGJ1dCB0aGUgY2VsbCByZW5kZXJzIHRoZVxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0IG5hbWUsIGhlbmNlIGNvbFByb2R1Y3QuICovfVxuICAgICAgICAgICAgICAgIDx0aCBjbGFzc05hbWU9XCJjb2xQcm9kdWN0XCI+e2kxOG4uXygnRGVzY3JpcHRpb24nKX08L3RoPlxuICAgICAgICAgICAgICAgIDx0aCBjbGFzc05hbWU9XCJjb2xRdHlcIj57aTE4bi5fKCdRdHknKX08L3RoPlxuICAgICAgICAgICAgICAgIDx0aCBjbGFzc05hbWU9XCJjb2xQcmljZVwiPntpMThuLl8oJ1ByaWNlJyl9PC90aD5cbiAgICAgICAgICAgICAgICA8dGggY2xhc3NOYW1lPVwiY29sVGF4YWJsZVwiPnt0YXhhYmxlTGFiZWx9PC90aD5cbiAgICAgICAgICAgICAgICA8dGggY2xhc3NOYW1lPVwiY29sQW1vdW50XCI+e2kxOG4uXygnQW1vdW50Jyl9PC90aD5cbiAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgIHtzYW5pdGl6ZWRJdGVtcy5sZW5ndGggPiAwID8gKFxuICAgICAgICAgICAgICAgIHNhbml0aXplZEl0ZW1zLm1hcCgoaXRlbSkgPT4ge1xuICAgICAgICAgICAgICAgICAgY29uc3QgcXVhbnRpdHkgPSBpdGVtPy5xdWFudGl0eSA/PyAxO1xuICAgICAgICAgICAgICAgICAgY29uc3QgcHJpY2UgPSBpdGVtPy5wcm9kdWN0Py5wcmljZT8udmFsdWUgPz8gMDtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsQW1vdW50ID0gcHJpY2UgKiBxdWFudGl0eTtcbiAgICAgICAgICAgICAgICAgIGNvbnN0IHVuaXROYW1lID0gaXRlbT8ucHJvZHVjdD8ubWVhc3VyZV91bml0X2lkXG4gICAgICAgICAgICAgICAgICAgID8gZ2V0TWVhc3VyZVVuaXROYW1lKFxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5wcm9kdWN0Lm1lYXN1cmVfdW5pdF9pZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIG1lYXN1cmVVbml0cyxcbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIDogaXRlbT8ubWVhc3VyZV91bml0Py5uYW1lIHx8IG51bGw7XG5cbiAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgIDx0ciBrZXk9e2l0ZW0uaWR9IGNsYXNzTmFtZT1cIml0ZW1Sb3dcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3NOYW1lPVwiY29sUHJvZHVjdFwiPntpdGVtPy5wcm9kdWN0Py5uYW1lfTwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzTmFtZT1cImNvbFF0eVwiPntxdWFudGl0eX08L3RkPlxuICAgICAgICAgICAgICAgICAgICAgIHsvKiBUaGUgdW5pdCBxdWFsaWZpZXMgdGhlIHByaWNlIChcIiQyNS4wMCBlYVwiKSwgbm90IHRoZVxuICAgICAgICAgICAgICAgICAgICAgICAgICBxdWFudGl0eSwgcGVyIHRoZSBGaWdtYSBQREYgZGVzaWduLiAqL31cbiAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3NOYW1lPVwiY29sUHJpY2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtpdGVtLnByb2R1Y3Q/LnByaWNlXG4gICAgICAgICAgICAgICAgICAgICAgICAgID8gZm9ybWF0Q3VycmVuY3lUb0Rpc3BsYXkoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0ucHJvZHVjdC5wcmljZS5jdXJyZW5jeSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICA6ICcnfVxuICAgICAgICAgICAgICAgICAgICAgICAge3VuaXROYW1lICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7JyAnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInByaWNlVW5pdFwiPnt1bml0TmFtZX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvPlxuICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgICAgICAgIHsvKiBSZWFkcyBpdGVtLnRheGFibGUgZGlyZWN0bHkgcmF0aGVyIHRoYW4gZGVyaXZpbmcgYVxuICAgICAgICAgICAgICAgICAgICAgICAgICByYXRlIGZyb20gdGhlIHRvcC1sZXZlbCB0YXhfcmF0ZTogYSBsaW5lIGl0ZW0gdGhhdCBpc1xuICAgICAgICAgICAgICAgICAgICAgICAgICB0YXhhYmxlIGF0IGEgMCUgcmF0ZSBpcyBzdGlsbCB0YXhhYmxlLCBhbmQgdGhlIG9sZFxuICAgICAgICAgICAgICAgICAgICAgICAgICByYXRlLWRlcml2ZWQgY29sdW1uIHJlbmRlcmVkIGl0IGJsYW5rLiAqL31cbiAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3NOYW1lPVwiY29sVGF4YWJsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2l0ZW0udGF4YWJsZSA/IHRheGFibGVZZXNMYWJlbCA6IHRheGFibGVOb0xhYmVsfVxuICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgICAgICAgPHRkIGNsYXNzTmFtZT1cImNvbEFtb3VudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge2l0ZW0ucHJvZHVjdD8ucHJpY2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPyBmb3JtYXRDdXJyZW5jeVRvRGlzcGxheShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvdGFsQW1vdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5wcm9kdWN0LnByaWNlLmN1cnJlbmN5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDogJyd9XG4gICAgICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgKSA6IChcbiAgICAgICAgICAgICAgICA8dHIgY2xhc3NOYW1lPVwibm9JdGVtc1Jvd1wiPlxuICAgICAgICAgICAgICAgICAgPHRkIGNvbFNwYW49ezV9IGNsYXNzTmFtZT1cIm5vSXRlbXNDZWxsXCI+XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cIm5vdFNldFwiPntpMThuLl8oJ05vIGl0ZW1zJyl9PC9wPlxuICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICB7c2FuaXRpemVkSXRlbXM/Lmxlbmd0aCA+IDAgJiYgKFxuICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidG90YWxzU2VjdGlvblwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0b3RhbHNUYWJsZVwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRvdGFsUm93XCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidG90YWxMYWJlbFwiPntpMThuLl8oJ1N1YnRvdGFsJyl9PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRvdGFsVmFsdWVcIj57c3VidG90YWxQcmljZT8udG9TdHJpbmcoKX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgIHtyb3dWaXNpYmlsaXR5LnNob3dEaXNjb3VudHMgJiYgZGlzY291bnQgJiYgKFxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwidG90YWxSb3dcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRvdGFsTGFiZWxcIj57aTE4bi5fKCdEaXNjb3VudCcpfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRvdGFsVmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgICAge2Rpc2NvdW50VmFsdWU/LnRvU3RyaW5nKCl9XG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICl9XG5cbiAgICAgICAgICAgICAge3Jvd1Zpc2liaWxpdHkuc2hvd05vblRheGFibGVTdWJ0b3RhbCAmJiAoXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0b3RhbFJvdyBtdXRlZFRvdGFsXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0b3RhbExhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgIHtpMThuLl8oJ05vbi10YXhhYmxlIHN1YnRvdGFsJyl9XG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0b3RhbFZhbHVlXCI+XG4gICAgICAgICAgICAgICAgICAgIHtub25UYXhhYmxlU3VidG90YWw/LnRvU3RyaW5nKCl9XG4gICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICl9XG5cbiAgICAgICAgICAgICAge3Jvd1Zpc2liaWxpdHkuc2hvd1RheGFibGVTdWJ0b3RhbCAmJiAoXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJ0b3RhbFJvdyBtdXRlZFRvdGFsXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0b3RhbExhYmVsXCI+XG4gICAgICAgICAgICAgICAgICAgIHtpMThuLl8oJ1RheGFibGUgc3VidG90YWwnKX1cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRvdGFsVmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgICAge3RheGFibGVTdWJ0b3RhbD8udG9TdHJpbmcoKX1cbiAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cInRvdGFsUm93XCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidG90YWxMYWJlbFwiPnt0YXhSb3dMYWJlbH08L3NwYW4+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3NOYW1lPVwidG90YWxWYWx1ZVwiPnt0b3RhbFRheGVzPy50b1N0cmluZygpfTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9e2NuKCd0b3RhbFJvdycsICdmaW5hbFRvdGFsJyl9PlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzTmFtZT1cInRvdGFsTGFiZWxcIj57aTE4bi5fKCdUb3RhbCcpfTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9XCJ0b3RhbFZhbHVlXCI+e3RvdGFsUHJpY2U/LnRvU3RyaW5nKCl9PC9zcGFuPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICApfVxuXG4gICAgICAgIHtmb290ZXIgJiYgPHAgY2xhc3NOYW1lPVwiZm9vdGVyVGV4dFwiPntmb290ZXJ9PC9wPn1cblxuICAgICAgICB7KHNob3dQYXltZW50TGluayB8fCAoYmFua0FjY291bnQgJiYgZGlzcGxheUJhbmtBY2NvdW50KSkgJiYgKFxuICAgICAgICAgIDxmb290ZXIgY2xhc3NOYW1lPVwiZm9vdGVyU2VjdGlvblwiPlxuICAgICAgICAgICAge3Nob3dQYXltZW50TGluayAmJiAoXG4gICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJwYXltZW50UXJDb2RlXCJcbiAgICAgICAgICAgICAgICBzcmM9e3FyU2FtcGxlfVxuICAgICAgICAgICAgICAgIGFsdD17aTE4bi5fKCdTYW1wbGUgcGF5bWVudCBRUiBjb2RlJyl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgICAgPGRpdiBjbGFzc05hbWU9XCJwYXltZW50RGV0YWlsc1wiPlxuICAgICAgICAgICAgICB7LyogTm90IGEgbGluazogdGhlIHJlYWwgb25lIGlzIG9ubHkgY3JlYXRlZCB3aGVuIHRoZSBpbnZvaWNlIGlzIGlzc3VlZC4gKi99XG4gICAgICAgICAgICAgIHtzaG93UGF5bWVudExpbmsgJiYgKFxuICAgICAgICAgICAgICAgIDxwIGNsYXNzTmFtZT1cInBheW1lbnRUZXh0IHBheW1lbnRMaW5rXCI+XG4gICAgICAgICAgICAgICAgICB7aTE4bi5fKCdQYXkgb25saW5lJyl9XG4gICAgICAgICAgICAgICAgICA8QXJyb3dSaWdodCBhcmlhLWhpZGRlbiBjbGFzc05hbWU9XCJwYXltZW50TGlua0ljb25cIiAvPlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAge2JhbmtBY2NvdW50ICYmIGRpc3BsYXlCYW5rQWNjb3VudCAmJiAoXG4gICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgIHtiYW5rQWNjb3VudC5hY2NvdW50X2hvbGRlcl9uYW1lICYmIChcbiAgICAgICAgICAgICAgICAgICAgPHAgY2xhc3NOYW1lPVwicGF5bWVudFRleHRcIj5cbiAgICAgICAgICAgICAgICAgICAgICB7aTE4bi5fKCdBY2NvdW50IGhvbGRlciBuYW1lJyl9OnsnICd9XG4gICAgICAgICAgICAgICAgICAgICAge2JhbmtBY2NvdW50LmFjY291bnRfaG9sZGVyX25hbWV9XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICB7YmFua0FjY291bnQucm91dGluZ19udW1iZXIgJiYgKFxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJwYXltZW50VGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICAgIHtpMThuLl8oJ1JvdXRpbmcgbnVtYmVyJyl9OiB7YmFua0FjY291bnQucm91dGluZ19udW1iZXJ9XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICB7YmFua0FjY291bnQuYWNjb3VudF9udW1iZXIgJiYgKFxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzc05hbWU9XCJwYXltZW50VGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICAgIHtpMThuLl8oJ0FjY291bnQgbnVtYmVyJyl9OiB7YmFua0FjY291bnQuYWNjb3VudF9udW1iZXJ9XG4gICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICl9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Zvb3Rlcj5cbiAgICAgICAgKX1cbiAgICAgIDwvZGl2PlxuICAgIDwvPlxuICApO1xufTtcbiJdfQ== */",
31
31
  toString: g
32
32
  }, _ = ({ address: g, counterpart: _, currency: v, invoiceData: y, entityData: b, paymentTerms: x, measureUnits: S = [] }) => {
33
33
  let { i18n: C } = ae(), { api: ce, entityId: le, locale: w } = e(), { formatCurrencyToDisplay: T } = i(), E = C._("Tax"), ue = C._("Taxable"), de = C._("Yes"), fe = C._("No"), { document_id: D, payment_terms_id: O, payment_terms_custom_date: k, line_items: A, memo: j, footer: M, bank_account_id: N = "", bank_account_type: P, tax_mode: F, purchase_order: I, tax_rate: L, discount: R } = y, z = L ? C._("Tax ({rate}%)", { rate: L }) : E, B = /* @__PURE__ */ new Date(), V = C.date(B, w.dateFormat), { dueDate: H, termLines: U } = c({
@@ -147,7 +147,7 @@ var se = process.env.NODE_ENV === "production" ? {
147
147
  className: "infoColumn",
148
148
  children: [/* @__PURE__ */ m("h2", {
149
149
  className: "columnHeaderTitle",
150
- children: C._("Invoice details")
150
+ children: C._("Details")
151
151
  }), /* @__PURE__ */ h("dl", {
152
152
  className: "detailList",
153
153
  children: [
@@ -155,7 +155,7 @@ var se = process.env.NODE_ENV === "production" ? {
155
155
  className: "detailRow",
156
156
  children: [/* @__PURE__ */ m("dt", {
157
157
  className: "detailLabel",
158
- children: C._("Number")
158
+ children: C._("Invoice number")
159
159
  }), /* @__PURE__ */ m("dd", {
160
160
  className: "detailValue",
161
161
  children: D || /* @__PURE__ */ m("span", {
@@ -168,7 +168,7 @@ var se = process.env.NODE_ENV === "production" ? {
168
168
  className: "detailRow",
169
169
  children: [/* @__PURE__ */ m("dt", {
170
170
  className: "detailLabel",
171
- children: C._("Issue date")
171
+ children: C._("Invoice date")
172
172
  }), /* @__PURE__ */ m("dd", {
173
173
  className: "detailValue",
174
174
  children: V
@@ -1,5 +1,5 @@
1
1
  //#region ../../libs/tesouro-embedded-components-react/shared/feature/dist/lib/analytics/build-info.js
2
- var e = "@tesouro/embedded-components-react", t = "0.5.184", n = "1bc865a8a1fe7fadaafba82424a6cda892988743", r = Object.freeze({
2
+ var e = "@tesouro/embedded-components-react", t = "0.5.185", n = "6bae487bac397ada26d87e792182c8ad272c420e", r = Object.freeze({
3
3
  library_name: e,
4
4
  library_version: t,
5
5
  library_sha: n
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tesouro/embedded-components-react",
3
- "version": "0.5.184",
3
+ "version": "0.5.185",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "packageDepSync": {