ngx-extended-pdf-viewer
Version:
Embedding PDF files in your Angular application. Highly configurable viewer including the toolbar, sidebar, and all the features you're used to.
20 lines • 20.2 kB
JavaScript
import { Component, Input } from '@angular/core';
import * as i0 from "@angular/core";
export class PdfSidebarToolbarComponent {
constructor() {
this.mobileFriendlyZoomScale = 1;
}
get height() {
const h = 32 * this.mobileFriendlyZoomScale;
return `${h}px`;
}
}
PdfSidebarToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: PdfSidebarToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
PdfSidebarToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.4.0", type: PdfSidebarToolbarComponent, selector: "pdf-sidebar-toolbar", inputs: { mobileFriendlyZoomScale: "mobileFriendlyZoomScale" }, ngImport: i0, template: "<div id=\"toolbarSidebar\" [style.height]=\"height\">\n <div id=\"toolbarSidebarLeft\">\n <button\n aria-label=\"Thumbnails\"\n type=\"button\"\n id=\"viewThumbnail\"\n class=\"toolbarButton toggled\"\n title=\"Show Thumbnails\"\n data-l10n-id=\"thumbs\"\n [style.zoom]=\"mobileFriendlyZoomScale\"\n >\n <span data-l10n-id=\"thumbs_label\">Thumbnails</span>\n <svg role=\"img\" aria-label=\"Thumbnails\" style=\"width: 20px; height: 20px\" viewBox=\"0 0 24 24\">\n <path\n fill=\"currentColor\"\n d=\"M19,19H5V5H19M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M13.96,12.29L11.21,15.83L9.25,13.47L6.5,17H17.5L13.96,12.29Z\"\n />\n </svg>\n </button>\n\n <button\n type=\"button\"\n id=\"viewOutline\"\n class=\"toolbarButton\"\n title=\"Show Document Outline (double-click to expand/collapse all items)\"\n data-l10n-id=\"document_outline\"\n hidden=\"true\"\n [style.zoom]=\"mobileFriendlyZoomScale\"\n aria-label=\"Show Document Outline (double-click to expand/collapse all items)\"\n >\n <span data-l10n-id=\"document_outline_label\">Document Outline</span>\n <svg role=\"img\" aria-label=\"Show Document Outline (double-click to expand/collapse all items)\" style=\"width: 20px; height: 20px\" viewBox=\"0 0 24 24\">\n <path fill=\"currentColor\" d=\"M3,9H17V7H3V9M3,13H17V11H3V13M3,17H17V15H3V17M19,17H21V15H19V17M19,7V9H21V7H19M19,13H21V11H19V13Z\" />\n </svg>\n </button>\n\n <button\n type=\"button\"\n id=\"viewAttachments\"\n class=\"toolbarButton\"\n title=\"Show Attachments\"\n data-l10n-id=\"attachments\"\n hidden=\"true\"\n [style.zoom]=\"mobileFriendlyZoomScale\"\n >\n <span data-l10n-id=\"attachments_label\">Attachments</span>\n <svg style=\"width: 20px; height: 20px\" viewBox=\"0 0 24 24\">\n <path\n fill=\"currentColor\"\n d=\"M16.5,6V17.5A4,4 0 0,1 12.5,21.5A4,4 0 0,1 8.5,17.5V5A2.5,2.5 0 0,1 11,2.5A2.5,2.5 0 0,1 13.5,5V15.5A1,1 0 0,1 12.5,16.5A1,1 0 0,1 11.5,15.5V6H10V15.5A2.5,2.5 0 0,0 12.5,18A2.5,2.5 0 0,0 15,15.5V5A4,4 0 0,0 11,1A4,4 0 0,0 7,5V17.5A5.5,5.5 0 0,0 12.5,23A5.5,5.5 0 0,0 18,17.5V6H16.5Z\"\n />\n </svg>\n </button>\n <button\n id=\"viewLayers\"\n class=\"toolbarButton\"\n type=\"button\"\n title=\"Show Layers (double-click to reset all layers to the default state)\"\n data-l10n-id=\"layers\"\n hidden=\"true\"\n [style.zoom]=\"mobileFriendlyZoomScale\"\n aria-label=\"Show Layers (double-click to reset all layers to the default state)\"\n >\n <span data-l10n-id=\"layers_label\">Layers</span>\n <svg\n role=\"img\"\n aria-label=\"Show Layers (double-click to reset all layers to the default state)\"\n style=\"width: 20px; height: 20px; margin-left: 1px\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 4.233 4.233\"\n >\n <path\n d=\"M.15 2.992c-.198.1-.2.266-.002.365l1.604.802a.93.93 0 00.729-.001l1.602-.801c.198-.1.197-.264 0-.364l-.695-.348c-1.306.595-2.542 0-2.542 0m-.264.53l.658-.329c.6.252 1.238.244 1.754 0l.659.329-1.536.768zM.15 1.935c-.198.1-.198.265 0 .364l1.604.802a.926.926 0 00.727 0l1.603-.802c.198-.099.198-.264 0-.363l-.694-.35c-1.14.56-2.546.001-2.546.001m-.264.53l.664-.332c.52.266 1.261.235 1.75.002l.659.33-1.537.768zM.15.877c-.198.099-.198.264 0 .363l1.604.802a.926.926 0 00.727 0l1.603-.802c.198-.099.198-.264 0-.363L2.481.075a.926.926 0 00-.727 0zm.43.182L2.117.29l1.538.769-1.538.768z\"\n />\n </svg>\n </button>\n </div>\n\n <div id=\"toolbarSidebarRight\">\n <div id=\"outlineOptionsContainer\" class=\"hidden\">\n <div class=\"verticalToolbarSeparator\"></div>\n\n <button\n type=\"button\"\n id=\"currentOutlineItem\"\n class=\"toolbarButton\"\n disabled=\"disabled\"\n title=\"Find Current Outline Item\"\n tabindex=\"6\"\n data-l10n-id=\"current_outline_item\"\n [style.zoom]=\"mobileFriendlyZoomScale\"\n aria-label=\"Find Current Outline Item\"\n >\n <span data-l10n-id=\"current_outline_item_label\">Current Outline Item</span>\n <svg role=\"img\" aria-label=\"Find Current Outline Item\" style=\"width: 20px; height: 20px\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"currentColor\">\n <path\n d=\"m14 9h-6c-1.3 0-1.3 2 0 2h6c1.3 0 1.3-2 0-2zm-5.2-8h-3.8c-1.3 0-1.3 2 0 2h1.7zm-6.8 0c-1 0-1.3 1-0.7 1.7 0.7 0.6 1.7 0.3 1.7-0.7 0-0.5-0.4-1-1-1zm3 8c-1 0-1.3 1-0.7 1.7 0.6 0.6 1.7 0.2 1.7-0.7 0-0.5-0.4-1-1-1zm0.3-4h-0.3c-1.4 0-1.4 2 0 2h2.3zm-3.3 0c-0.9 0-1.4 1-0.7 1.7 0.7 0.6 1.7 0.2 1.7-0.7 0-0.6-0.5-1-1-1zm12 8h-9c-1.3 0-1.3 2 0 2h9c1.3 0 1.3-2 0-2zm-12 0c-1 0-1.3 1-0.7 1.7 0.7 0.6 1.7 0.2 1.7-0.712 0-0.5-0.4-1-1-1z\"\n />\n <path d=\"m7.37 4.838 3.93-3.911v2.138h3.629v3.546h-3.629v2.138l-3.93-3.911\" />\n </svg>\n </button>\n </div>\n </div>\n</div>\n", styles: ["button.toolbarButton{margin-right:4px!important;width:22px;height:22px}div#toolbarSidebar>button:first-child{margin-left:4px!important}\n"] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: PdfSidebarToolbarComponent, decorators: [{
type: Component,
args: [{ selector: 'pdf-sidebar-toolbar', template: "<div id=\"toolbarSidebar\" [style.height]=\"height\">\n <div id=\"toolbarSidebarLeft\">\n <button\n aria-label=\"Thumbnails\"\n type=\"button\"\n id=\"viewThumbnail\"\n class=\"toolbarButton toggled\"\n title=\"Show Thumbnails\"\n data-l10n-id=\"thumbs\"\n [style.zoom]=\"mobileFriendlyZoomScale\"\n >\n <span data-l10n-id=\"thumbs_label\">Thumbnails</span>\n <svg role=\"img\" aria-label=\"Thumbnails\" style=\"width: 20px; height: 20px\" viewBox=\"0 0 24 24\">\n <path\n fill=\"currentColor\"\n d=\"M19,19H5V5H19M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3M13.96,12.29L11.21,15.83L9.25,13.47L6.5,17H17.5L13.96,12.29Z\"\n />\n </svg>\n </button>\n\n <button\n type=\"button\"\n id=\"viewOutline\"\n class=\"toolbarButton\"\n title=\"Show Document Outline (double-click to expand/collapse all items)\"\n data-l10n-id=\"document_outline\"\n hidden=\"true\"\n [style.zoom]=\"mobileFriendlyZoomScale\"\n aria-label=\"Show Document Outline (double-click to expand/collapse all items)\"\n >\n <span data-l10n-id=\"document_outline_label\">Document Outline</span>\n <svg role=\"img\" aria-label=\"Show Document Outline (double-click to expand/collapse all items)\" style=\"width: 20px; height: 20px\" viewBox=\"0 0 24 24\">\n <path fill=\"currentColor\" d=\"M3,9H17V7H3V9M3,13H17V11H3V13M3,17H17V15H3V17M19,17H21V15H19V17M19,7V9H21V7H19M19,13H21V11H19V13Z\" />\n </svg>\n </button>\n\n <button\n type=\"button\"\n id=\"viewAttachments\"\n class=\"toolbarButton\"\n title=\"Show Attachments\"\n data-l10n-id=\"attachments\"\n hidden=\"true\"\n [style.zoom]=\"mobileFriendlyZoomScale\"\n >\n <span data-l10n-id=\"attachments_label\">Attachments</span>\n <svg style=\"width: 20px; height: 20px\" viewBox=\"0 0 24 24\">\n <path\n fill=\"currentColor\"\n d=\"M16.5,6V17.5A4,4 0 0,1 12.5,21.5A4,4 0 0,1 8.5,17.5V5A2.5,2.5 0 0,1 11,2.5A2.5,2.5 0 0,1 13.5,5V15.5A1,1 0 0,1 12.5,16.5A1,1 0 0,1 11.5,15.5V6H10V15.5A2.5,2.5 0 0,0 12.5,18A2.5,2.5 0 0,0 15,15.5V5A4,4 0 0,0 11,1A4,4 0 0,0 7,5V17.5A5.5,5.5 0 0,0 12.5,23A5.5,5.5 0 0,0 18,17.5V6H16.5Z\"\n />\n </svg>\n </button>\n <button\n id=\"viewLayers\"\n class=\"toolbarButton\"\n type=\"button\"\n title=\"Show Layers (double-click to reset all layers to the default state)\"\n data-l10n-id=\"layers\"\n hidden=\"true\"\n [style.zoom]=\"mobileFriendlyZoomScale\"\n aria-label=\"Show Layers (double-click to reset all layers to the default state)\"\n >\n <span data-l10n-id=\"layers_label\">Layers</span>\n <svg\n role=\"img\"\n aria-label=\"Show Layers (double-click to reset all layers to the default state)\"\n style=\"width: 20px; height: 20px; margin-left: 1px\"\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"currentColor\"\n viewBox=\"0 0 4.233 4.233\"\n >\n <path\n d=\"M.15 2.992c-.198.1-.2.266-.002.365l1.604.802a.93.93 0 00.729-.001l1.602-.801c.198-.1.197-.264 0-.364l-.695-.348c-1.306.595-2.542 0-2.542 0m-.264.53l.658-.329c.6.252 1.238.244 1.754 0l.659.329-1.536.768zM.15 1.935c-.198.1-.198.265 0 .364l1.604.802a.926.926 0 00.727 0l1.603-.802c.198-.099.198-.264 0-.363l-.694-.35c-1.14.56-2.546.001-2.546.001m-.264.53l.664-.332c.52.266 1.261.235 1.75.002l.659.33-1.537.768zM.15.877c-.198.099-.198.264 0 .363l1.604.802a.926.926 0 00.727 0l1.603-.802c.198-.099.198-.264 0-.363L2.481.075a.926.926 0 00-.727 0zm.43.182L2.117.29l1.538.769-1.538.768z\"\n />\n </svg>\n </button>\n </div>\n\n <div id=\"toolbarSidebarRight\">\n <div id=\"outlineOptionsContainer\" class=\"hidden\">\n <div class=\"verticalToolbarSeparator\"></div>\n\n <button\n type=\"button\"\n id=\"currentOutlineItem\"\n class=\"toolbarButton\"\n disabled=\"disabled\"\n title=\"Find Current Outline Item\"\n tabindex=\"6\"\n data-l10n-id=\"current_outline_item\"\n [style.zoom]=\"mobileFriendlyZoomScale\"\n aria-label=\"Find Current Outline Item\"\n >\n <span data-l10n-id=\"current_outline_item_label\">Current Outline Item</span>\n <svg role=\"img\" aria-label=\"Find Current Outline Item\" style=\"width: 20px; height: 20px\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"currentColor\">\n <path\n d=\"m14 9h-6c-1.3 0-1.3 2 0 2h6c1.3 0 1.3-2 0-2zm-5.2-8h-3.8c-1.3 0-1.3 2 0 2h1.7zm-6.8 0c-1 0-1.3 1-0.7 1.7 0.7 0.6 1.7 0.3 1.7-0.7 0-0.5-0.4-1-1-1zm3 8c-1 0-1.3 1-0.7 1.7 0.6 0.6 1.7 0.2 1.7-0.7 0-0.5-0.4-1-1-1zm0.3-4h-0.3c-1.4 0-1.4 2 0 2h2.3zm-3.3 0c-0.9 0-1.4 1-0.7 1.7 0.7 0.6 1.7 0.2 1.7-0.7 0-0.6-0.5-1-1-1zm12 8h-9c-1.3 0-1.3 2 0 2h9c1.3 0 1.3-2 0-2zm-12 0c-1 0-1.3 1-0.7 1.7 0.7 0.6 1.7 0.2 1.7-0.712 0-0.5-0.4-1-1-1z\"\n />\n <path d=\"m7.37 4.838 3.93-3.911v2.138h3.629v3.546h-3.629v2.138l-3.93-3.911\" />\n </svg>\n </button>\n </div>\n </div>\n</div>\n", styles: ["button.toolbarButton{margin-right:4px!important;width:22px;height:22px}div#toolbarSidebar>button:first-child{margin-left:4px!important}\n"] }]
}], propDecorators: { mobileFriendlyZoomScale: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXNpZGViYXItdG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZXh0ZW5kZWQtcGRmLXZpZXdlci9zcmMvbGliL3NpZGViYXIvcGRmLXNpZGViYXIvcGRmLXNpZGViYXItdG9vbGJhci9wZGYtc2lkZWJhci10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1leHRlbmRlZC1wZGYtdmlld2VyL3NyYy9saWIvc2lkZWJhci9wZGYtc2lkZWJhci9wZGYtc2lkZWJhci10b29sYmFyL3BkZi1zaWRlYmFyLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBT2pELE1BQU0sT0FBTywwQkFBMEI7SUFMdkM7UUFRUyw0QkFBdUIsR0FBRyxDQUFDLENBQUM7S0FNcEM7SUFKQyxJQUFXLE1BQU07UUFDZixNQUFNLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDO1FBQzVDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQztJQUNsQixDQUFDOzt1SEFSVSwwQkFBMEI7MkdBQTFCLDBCQUEwQiwySENQdkMsK2hLQXlHQTsyRkRsR2EsMEJBQTBCO2tCQUx0QyxTQUFTOytCQUNFLHFCQUFxQjs4QkFPeEIsdUJBQXVCO3NCQUQ3QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwZGYtc2lkZWJhci10b29sYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BkZi1zaWRlYmFyLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9wZGYtc2lkZWJhci10b29sYmFyLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBQZGZTaWRlYmFyVG9vbGJhckNvbXBvbmVudCB7XG5cbiAgQElucHV0KClcbiAgcHVibGljIG1vYmlsZUZyaWVuZGx5Wm9vbVNjYWxlID0gMTtcblxuICBwdWJsaWMgZ2V0IGhlaWdodCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGggPSAzMiAqIHRoaXMubW9iaWxlRnJpZW5kbHlab29tU2NhbGU7XG4gICAgcmV0dXJuIGAke2h9cHhgO1xuICB9XG59XG4iLCI8ZGl2IGlkPVwidG9vbGJhclNpZGViYXJcIiBbc3R5bGUuaGVpZ2h0XT1cImhlaWdodFwiPlxuICA8ZGl2IGlkPVwidG9vbGJhclNpZGViYXJMZWZ0XCI+XG4gICAgPGJ1dHRvblxuICAgICAgYXJpYS1sYWJlbD1cIlRodW1ibmFpbHNcIlxuICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICBpZD1cInZpZXdUaHVtYm5haWxcIlxuICAgICAgY2xhc3M9XCJ0b29sYmFyQnV0dG9uIHRvZ2dsZWRcIlxuICAgICAgdGl0bGU9XCJTaG93IFRodW1ibmFpbHNcIlxuICAgICAgZGF0YS1sMTBuLWlkPVwidGh1bWJzXCJcbiAgICAgIFtzdHlsZS56b29tXT1cIm1vYmlsZUZyaWVuZGx5Wm9vbVNjYWxlXCJcbiAgICA+XG4gICAgICA8c3BhbiBkYXRhLWwxMG4taWQ9XCJ0aHVtYnNfbGFiZWxcIj5UaHVtYm5haWxzPC9zcGFuPlxuICAgICAgPHN2ZyByb2xlPVwiaW1nXCIgYXJpYS1sYWJlbD1cIlRodW1ibmFpbHNcIiBzdHlsZT1cIndpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHhcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiXG4gICAgICAgICAgZD1cIk0xOSwxOUg1VjVIMTlNMTksM0g1QTIsMiAwIDAsMCAzLDVWMTlBMiwyIDAgMCwwIDUsMjFIMTlBMiwyIDAgMCwwIDIxLDE5VjVBMiwyIDAgMCwwIDE5LDNNMTMuOTYsMTIuMjlMMTEuMjEsMTUuODNMOS4yNSwxMy40N0w2LjUsMTdIMTcuNUwxMy45NiwxMi4yOVpcIlxuICAgICAgICAvPlxuICAgICAgPC9zdmc+XG4gICAgPC9idXR0b24+XG5cbiAgICA8YnV0dG9uXG4gICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgIGlkPVwidmlld091dGxpbmVcIlxuICAgICAgY2xhc3M9XCJ0b29sYmFyQnV0dG9uXCJcbiAgICAgIHRpdGxlPVwiU2hvdyBEb2N1bWVudCBPdXRsaW5lIChkb3VibGUtY2xpY2sgdG8gZXhwYW5kL2NvbGxhcHNlIGFsbCBpdGVtcylcIlxuICAgICAgZGF0YS1sMTBuLWlkPVwiZG9jdW1lbnRfb3V0bGluZVwiXG4gICAgICBoaWRkZW49XCJ0cnVlXCJcbiAgICAgIFtzdHlsZS56b29tXT1cIm1vYmlsZUZyaWVuZGx5Wm9vbVNjYWxlXCJcbiAgICAgIGFyaWEtbGFiZWw9XCJTaG93IERvY3VtZW50IE91dGxpbmUgKGRvdWJsZS1jbGljayB0byBleHBhbmQvY29sbGFwc2UgYWxsIGl0ZW1zKVwiXG4gICAgPlxuICAgICAgPHNwYW4gZGF0YS1sMTBuLWlkPVwiZG9jdW1lbnRfb3V0bGluZV9sYWJlbFwiPkRvY3VtZW50IE91dGxpbmU8L3NwYW4+XG4gICAgICA8c3ZnIHJvbGU9XCJpbWdcIiBhcmlhLWxhYmVsPVwiU2hvdyBEb2N1bWVudCBPdXRsaW5lIChkb3VibGUtY2xpY2sgdG8gZXhwYW5kL2NvbGxhcHNlIGFsbCBpdGVtcylcIiBzdHlsZT1cIndpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHhcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+XG4gICAgICAgIDxwYXRoIGZpbGw9XCJjdXJyZW50Q29sb3JcIiBkPVwiTTMsOUgxN1Y3SDNWOU0zLDEzSDE3VjExSDNWMTNNMywxN0gxN1YxNUgzVjE3TTE5LDE3SDIxVjE1SDE5VjE3TTE5LDdWOUgyMVY3SDE5TTE5LDEzSDIxVjExSDE5VjEzWlwiIC8+XG4gICAgICA8L3N2Zz5cbiAgICA8L2J1dHRvbj5cblxuICAgIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgaWQ9XCJ2aWV3QXR0YWNobWVudHNcIlxuICAgICAgY2xhc3M9XCJ0b29sYmFyQnV0dG9uXCJcbiAgICAgIHRpdGxlPVwiU2hvdyBBdHRhY2htZW50c1wiXG4gICAgICBkYXRhLWwxMG4taWQ9XCJhdHRhY2htZW50c1wiXG4gICAgICBoaWRkZW49XCJ0cnVlXCJcbiAgICAgIFtzdHlsZS56b29tXT1cIm1vYmlsZUZyaWVuZGx5Wm9vbVNjYWxlXCJcbiAgICA+XG4gICAgICA8c3BhbiBkYXRhLWwxMG4taWQ9XCJhdHRhY2htZW50c19sYWJlbFwiPkF0dGFjaG1lbnRzPC9zcGFuPlxuICAgICAgPHN2ZyBzdHlsZT1cIndpZHRoOiAyMHB4OyBoZWlnaHQ6IDIwcHhcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiXG4gICAgICAgICAgZD1cIk0xNi41LDZWMTcuNUE0LDQgMCAwLDEgMTIuNSwyMS41QTQsNCAwIDAsMSA4LjUsMTcuNVY1QTIuNSwyLjUgMCAwLDEgMTEsMi41QTIuNSwyLjUgMCAwLDEgMTMuNSw1VjE1LjVBMSwxIDAgMCwxIDEyLjUsMTYuNUExLDEgMCAwLDEgMTEuNSwxNS41VjZIMTBWMTUuNUEyLjUsMi41IDAgMCwwIDEyLjUsMThBMi41LDIuNSAwIDAsMCAxNSwxNS41VjVBNCw0IDAgMCwwIDExLDFBNCw0IDAgMCwwIDcsNVYxNy41QTUuNSw1LjUgMCAwLDAgMTIuNSwyM0E1LjUsNS41IDAgMCwwIDE4LDE3LjVWNkgxNi41WlwiXG4gICAgICAgIC8+XG4gICAgICA8L3N2Zz5cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICBpZD1cInZpZXdMYXllcnNcIlxuICAgICAgY2xhc3M9XCJ0b29sYmFyQnV0dG9uXCJcbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgdGl0bGU9XCJTaG93IExheWVycyAoZG91YmxlLWNsaWNrIHRvIHJlc2V0IGFsbCBsYXllcnMgdG8gdGhlIGRlZmF1bHQgc3RhdGUpXCJcbiAgICAgIGRhdGEtbDEwbi1pZD1cImxheWVyc1wiXG4gICAgICBoaWRkZW49XCJ0cnVlXCJcbiAgICAgIFtzdHlsZS56b29tXT1cIm1vYmlsZUZyaWVuZGx5Wm9vbVNjYWxlXCJcbiAgICAgIGFyaWEtbGFiZWw9XCJTaG93IExheWVycyAoZG91YmxlLWNsaWNrIHRvIHJlc2V0IGFsbCBsYXllcnMgdG8gdGhlIGRlZmF1bHQgc3RhdGUpXCJcbiAgICA+XG4gICAgICA8c3BhbiBkYXRhLWwxMG4taWQ9XCJsYXllcnNfbGFiZWxcIj5MYXllcnM8L3NwYW4+XG4gICAgICA8c3ZnXG4gICAgICAgIHJvbGU9XCJpbWdcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiU2hvdyBMYXllcnMgKGRvdWJsZS1jbGljayB0byByZXNldCBhbGwgbGF5ZXJzIHRvIHRoZSBkZWZhdWx0IHN0YXRlKVwiXG4gICAgICAgIHN0eWxlPVwid2lkdGg6IDIwcHg7IGhlaWdodDogMjBweDsgbWFyZ2luLWxlZnQ6IDFweFwiXG4gICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCJcbiAgICAgICAgdmlld0JveD1cIjAgMCA0LjIzMyA0LjIzM1wiXG4gICAgICA+XG4gICAgICAgIDxwYXRoXG4gICAgICAgICAgZD1cIk0uMTUgMi45OTJjLS4xOTguMS0uMi4yNjYtLjAwMi4zNjVsMS42MDQuODAyYS45My45MyAwIDAwLjcyOS0uMDAxbDEuNjAyLS44MDFjLjE5OC0uMS4xOTctLjI2NCAwLS4zNjRsLS42OTUtLjM0OGMtMS4zMDYuNTk1LTIuNTQyIDAtMi41NDIgMG0tLjI2NC41M2wuNjU4LS4zMjljLjYuMjUyIDEuMjM4LjI0NCAxLjc1NCAwbC42NTkuMzI5LTEuNTM2Ljc2OHpNLjE1IDEuOTM1Yy0uMTk4LjEtLjE5OC4yNjUgMCAuMzY0bDEuNjA0LjgwMmEuOTI2LjkyNiAwIDAwLjcyNyAwbDEuNjAzLS44MDJjLjE5OC0uMDk5LjE5OC0uMjY0IDAtLjM2M2wtLjY5NC0uMzVjLTEuMTQuNTYtMi41NDYuMDAxLTIuNTQ2LjAwMW0tLjI2NC41M2wuNjY0LS4zMzJjLjUyLjI2NiAxLjI2MS4yMzUgMS43NS4wMDJsLjY1OS4zMy0xLjUzNy43Njh6TS4xNS44NzdjLS4xOTguMDk5LS4xOTguMjY0IDAgLjM2M2wxLjYwNC44MDJhLjkyNi45MjYgMCAwMC43MjcgMGwxLjYwMy0uODAyYy4xOTgtLjA5OS4xOTgtLjI2NCAwLS4zNjNMMi40ODEuMDc1YS45MjYuOTI2IDAgMDAtLjcyNyAwem0uNDMuMTgyTDIuMTE3LjI5bDEuNTM4Ljc2OS0xLjUzOC43Njh6XCJcbiAgICAgICAgLz5cbiAgICAgIDwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cblxuICA8ZGl2IGlkPVwidG9vbGJhclNpZGViYXJSaWdodFwiPlxuICAgIDxkaXYgaWQ9XCJvdXRsaW5lT3B0aW9uc0NvbnRhaW5lclwiIGNsYXNzPVwiaGlkZGVuXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwidmVydGljYWxUb29sYmFyU2VwYXJhdG9yXCI+PC9kaXY+XG5cbiAgICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGlkPVwiY3VycmVudE91dGxpbmVJdGVtXCJcbiAgICAgICAgY2xhc3M9XCJ0b29sYmFyQnV0dG9uXCJcbiAgICAgICAgZGlzYWJsZWQ9XCJkaXNhYmxlZFwiXG4gICAgICAgIHRpdGxlPVwiRmluZCBDdXJyZW50IE91dGxpbmUgSXRlbVwiXG4gICAgICAgIHRhYmluZGV4PVwiNlwiXG4gICAgICAgIGRhdGEtbDEwbi1pZD1cImN1cnJlbnRfb3V0bGluZV9pdGVtXCJcbiAgICAgICAgW3N0eWxlLnpvb21dPVwibW9iaWxlRnJpZW5kbHlab29tU2NhbGVcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiRmluZCBDdXJyZW50IE91dGxpbmUgSXRlbVwiXG4gICAgICA+XG4gICAgICAgIDxzcGFuIGRhdGEtbDEwbi1pZD1cImN1cnJlbnRfb3V0bGluZV9pdGVtX2xhYmVsXCI+Q3VycmVudCBPdXRsaW5lIEl0ZW08L3NwYW4+XG4gICAgICAgIDxzdmcgcm9sZT1cImltZ1wiIGFyaWEtbGFiZWw9XCJGaW5kIEN1cnJlbnQgT3V0bGluZSBJdGVtXCIgc3R5bGU9XCJ3aWR0aDogMjBweDsgaGVpZ2h0OiAyMHB4XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGZpbGw9XCJjdXJyZW50Q29sb3JcIj5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgZD1cIm0xNCA5aC02Yy0xLjMgMC0xLjMgMiAwIDJoNmMxLjMgMCAxLjMtMiAwLTJ6bS01LjItOGgtMy44Yy0xLjMgMC0xLjMgMiAwIDJoMS43em0tNi44IDBjLTEgMC0xLjMgMS0wLjcgMS43IDAuNyAwLjYgMS43IDAuMyAxLjctMC43IDAtMC41LTAuNC0xLTEtMXptMyA4Yy0xIDAtMS4zIDEtMC43IDEuNyAwLjYgMC42IDEuNyAwLjIgMS43LTAuNyAwLTAuNS0wLjQtMS0xLTF6bTAuMy00aC0wLjNjLTEuNCAwLTEuNCAyIDAgMmgyLjN6bS0zLjMgMGMtMC45IDAtMS40IDEtMC43IDEuNyAwLjcgMC42IDEuNyAwLjIgMS43LTAuNyAwLTAuNi0wLjUtMS0xLTF6bTEyIDhoLTljLTEuMyAwLTEuMyAyIDAgMmg5YzEuMyAwIDEuMy0yIDAtMnptLTEyIDBjLTEgMC0xLjMgMS0wLjcgMS43IDAuNyAwLjYgMS43IDAuMiAxLjctMC43MTIgMC0wLjUtMC40LTEtMS0xelwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8cGF0aCBkPVwibTcuMzcgNC44MzggMy45My0zLjkxMXYyLjEzOGgzLjYyOXYzLjU0NmgtMy42Mjl2Mi4xMzhsLTMuOTMtMy45MTFcIiAvPlxuICAgICAgICA8L3N2Zz5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19