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.
83 lines • 17.1 kB
JavaScript
import { Component, Input } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "../pdf-toggle-sidebar/pdf-toggle-sidebar.component";
import * as i2 from "../pdf-find-button/pdf-find-button.component";
import * as i3 from "../pdf-paging-area/pdf-paging-area.component";
import * as i4 from "../pdf-zoom-toolbar/pdf-zoom-toolbar.component";
import * as i5 from "../pdf-hand-tool/pdf-hand-tool.component";
import * as i6 from "../pdf-select-tool/pdf-select-tool.component";
import * as i7 from "../pdf-rotate-page/pdf-rotate-page.component";
import * as i8 from "../pdf-presentation-mode/pdf-presentation-mode.component";
import * as i9 from "../pdf-open-file/pdf-open-file.component";
import * as i10 from "../pdf-print/pdf-print.component";
import * as i11 from "../pdf-download/pdf-download.component";
import * as i12 from "../pdf-bookmark/pdf-bookmark.component";
import * as i13 from "../pdf-toggle-secondary-toolbar/pdf-toggle-secondary-toolbar.component";
import * as i14 from "@angular/common";
export class PdfToolbarComponent {
constructor() {
this.mobileFriendlyZoomScale = 1;
this.primaryMenuVisible = true;
this.showBookmarkButton = true;
this.showDownloadButton = true;
this.showFindButton = undefined;
this.showHandToolButton = true;
this.showOpenFileButton = true;
this.showPrintButton = true;
this.showPagingButtons = true;
this.showPresentationModeButton = false;
this.showRotateButton = true;
this.showSecondaryToolbarButton = true;
this.showSidebarButton = true;
this.showZoomButtons = true;
this.textLayer = undefined;
this.toolbarMarginTop = '0px';
this.toolbarWidth = '100%';
this.zoomLevels = ['auto', 'page-actual', 'page-fit', 'page-width', 0.5, 0.75, 1, 1.25, 1.5, 2, 3, 4];
}
}
PdfToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: PdfToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
PdfToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: PdfToolbarComponent, selector: "pdf-toolbar", inputs: { customToolbar: "customToolbar", mobileFriendlyZoomScale: "mobileFriendlyZoomScale", primaryMenuVisible: "primaryMenuVisible", showBookmarkButton: "showBookmarkButton", showDownloadButton: "showDownloadButton", showFindButton: "showFindButton", showHandToolButton: "showHandToolButton", showOpenFileButton: "showOpenFileButton", showPrintButton: "showPrintButton", showPagingButtons: "showPagingButtons", showPresentationModeButton: "showPresentationModeButton", showRotateButton: "showRotateButton", showSecondaryToolbarButton: "showSecondaryToolbarButton", showSidebarButton: "showSidebarButton", showZoomButtons: "showZoomButtons", textLayer: "textLayer", toolbarMarginTop: "toolbarMarginTop", toolbarWidth: "toolbarWidth", zoomLevels: "zoomLevels" }, ngImport: i0, template: "<div class=\"toolbar\" [class.invisible]=\"!primaryMenuVisible\"\n [style.transform]=\"'scale(' + mobileFriendlyZoomScale + ')'\"\n [style.transformOrigin]=\"'left center'\"\n [style.width]=\"toolbarWidth\"\n [style.marginTop]=\"toolbarMarginTop\"\n>\n <div id=\"toolbarContainer\">\n <ng-content *ngTemplateOutlet=\"customToolbar ? customToolbar : defaultToolbar\"></ng-content>\n <div id=\"loadingBar\">\n <div class=\"progress\"><div class=\"glimmer\"></div></div>\n </div>\n </div>\n</div>\n\n<ng-template #defaultToolbar>\n <div id=\"toolbarViewer\">\n <div id=\"toolbarViewerLeft\">\n <pdf-toggle-sidebar [showSidebarButton]=\"showSidebarButton\"></pdf-toggle-sidebar>\n <pdf-find-button [showFindButton]=\"showFindButton\" [textLayer]=\"textLayer\"></pdf-find-button>\n <pdf-paging-area [showPagingButtons]=\"showPagingButtons\"></pdf-paging-area>\n </div>\n <pdf-zoom-toolbar [showZoomButtons]=\"showZoomButtons\" [zoomLevels]=\"zoomLevels\"></pdf-zoom-toolbar>\n <div id=\"toolbarViewerRight\">\n <pdf-hand-tool [showHandToolButton]=\"showHandToolButton\"></pdf-hand-tool>\n <pdf-select-tool [showSelectToolButton]=\"showHandToolButton\"></pdf-select-tool>\n <pdf-rotate-page [showRotateButton]=\"showRotateButton\" [clockwise]=\"true\" [counterClockwise]=\"false\"></pdf-rotate-page>\n <pdf-rotate-page [showRotateButton]=\"showRotateButton\" [clockwise]=\"false\" [counterClockwise]=\"true\"></pdf-rotate-page>\n <pdf-presentation-mode [showPresentationModeButton]=\"showPresentationModeButton\"></pdf-presentation-mode>\n <pdf-open-file [showOpenFileButton]=\"showOpenFileButton\"></pdf-open-file>\n <pdf-print [showPrintButton]=\"showPrintButton\"></pdf-print>\n <pdf-download [showDownloadButton]=\"showDownloadButton\"></pdf-download>\n <pdf-bookmark [showBookmarkButton]=\"showBookmarkButton\"></pdf-bookmark>\n <pdf-toggle-secondary-toolbar [showSecondaryToolbarButton]=\"showSecondaryToolbarButton\"></pdf-toggle-secondary-toolbar>\n </div>\n </div>\n</ng-template>\n", styles: [""], components: [{ type: i1.PdfToggleSidebarComponent, selector: "pdf-toggle-sidebar", inputs: ["showSidebarButton"] }, { type: i2.PdfFindButtonComponent, selector: "pdf-find-button", inputs: ["showFindButton", "textLayer"] }, { type: i3.PdfPagingAreaComponent, selector: "pdf-paging-area", inputs: ["showPagingButtons"] }, { type: i4.PdfZoomToolbarComponent, selector: "pdf-zoom-toolbar", inputs: ["showZoomButtons", "zoomLevels"] }, { type: i5.PdfHandToolComponent, selector: "pdf-hand-tool", inputs: ["showHandToolButton"] }, { type: i6.PdfSelectToolComponent, selector: "pdf-select-tool", inputs: ["showSelectToolButton"] }, { type: i7.PdfRotatePageComponent, selector: "pdf-rotate-page", inputs: ["showRotateButton", "clockwise", "counterClockwise"] }, { type: i8.PdfPresentationModeComponent, selector: "pdf-presentation-mode", inputs: ["showPresentationModeButton"] }, { type: i9.PdfOpenFileComponent, selector: "pdf-open-file", inputs: ["showOpenFileButton"] }, { type: i10.PdfPrintComponent, selector: "pdf-print", inputs: ["showPrintButton"] }, { type: i11.PdfDownloadComponent, selector: "pdf-download", inputs: ["showDownloadButton"] }, { type: i12.PdfBookmarkComponent, selector: "pdf-bookmark", inputs: ["showBookmarkButton"] }, { type: i13.PdfToggleSecondaryToolbarComponent, selector: "pdf-toggle-secondary-toolbar", inputs: ["showSecondaryToolbarButton"] }], directives: [{ type: i14.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: PdfToolbarComponent, decorators: [{
type: Component,
args: [{ selector: 'pdf-toolbar', template: "<div class=\"toolbar\" [class.invisible]=\"!primaryMenuVisible\"\n [style.transform]=\"'scale(' + mobileFriendlyZoomScale + ')'\"\n [style.transformOrigin]=\"'left center'\"\n [style.width]=\"toolbarWidth\"\n [style.marginTop]=\"toolbarMarginTop\"\n>\n <div id=\"toolbarContainer\">\n <ng-content *ngTemplateOutlet=\"customToolbar ? customToolbar : defaultToolbar\"></ng-content>\n <div id=\"loadingBar\">\n <div class=\"progress\"><div class=\"glimmer\"></div></div>\n </div>\n </div>\n</div>\n\n<ng-template #defaultToolbar>\n <div id=\"toolbarViewer\">\n <div id=\"toolbarViewerLeft\">\n <pdf-toggle-sidebar [showSidebarButton]=\"showSidebarButton\"></pdf-toggle-sidebar>\n <pdf-find-button [showFindButton]=\"showFindButton\" [textLayer]=\"textLayer\"></pdf-find-button>\n <pdf-paging-area [showPagingButtons]=\"showPagingButtons\"></pdf-paging-area>\n </div>\n <pdf-zoom-toolbar [showZoomButtons]=\"showZoomButtons\" [zoomLevels]=\"zoomLevels\"></pdf-zoom-toolbar>\n <div id=\"toolbarViewerRight\">\n <pdf-hand-tool [showHandToolButton]=\"showHandToolButton\"></pdf-hand-tool>\n <pdf-select-tool [showSelectToolButton]=\"showHandToolButton\"></pdf-select-tool>\n <pdf-rotate-page [showRotateButton]=\"showRotateButton\" [clockwise]=\"true\" [counterClockwise]=\"false\"></pdf-rotate-page>\n <pdf-rotate-page [showRotateButton]=\"showRotateButton\" [clockwise]=\"false\" [counterClockwise]=\"true\"></pdf-rotate-page>\n <pdf-presentation-mode [showPresentationModeButton]=\"showPresentationModeButton\"></pdf-presentation-mode>\n <pdf-open-file [showOpenFileButton]=\"showOpenFileButton\"></pdf-open-file>\n <pdf-print [showPrintButton]=\"showPrintButton\"></pdf-print>\n <pdf-download [showDownloadButton]=\"showDownloadButton\"></pdf-download>\n <pdf-bookmark [showBookmarkButton]=\"showBookmarkButton\"></pdf-bookmark>\n <pdf-toggle-secondary-toolbar [showSecondaryToolbarButton]=\"showSecondaryToolbarButton\"></pdf-toggle-secondary-toolbar>\n </div>\n </div>\n</ng-template>\n", styles: [""] }]
}], ctorParameters: function () { return []; }, propDecorators: { customToolbar: [{
type: Input
}], mobileFriendlyZoomScale: [{
type: Input
}], primaryMenuVisible: [{
type: Input
}], showBookmarkButton: [{
type: Input
}], showDownloadButton: [{
type: Input
}], showFindButton: [{
type: Input
}], showHandToolButton: [{
type: Input
}], showOpenFileButton: [{
type: Input
}], showPrintButton: [{
type: Input
}], showPagingButtons: [{
type: Input
}], showPresentationModeButton: [{
type: Input
}], showRotateButton: [{
type: Input
}], showSecondaryToolbarButton: [{
type: Input
}], showSidebarButton: [{
type: Input
}], showZoomButtons: [{
type: Input
}], textLayer: [{
type: Input
}], toolbarMarginTop: [{
type: Input
}], toolbarWidth: [{
type: Input
}], zoomLevels: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGRmLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWV4dGVuZGVkLXBkZi12aWV3ZXIvc3JjL2xpYi90b29sYmFyL3BkZi10b29sYmFyL3BkZi10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1leHRlbmRlZC1wZGYtdmlld2VyL3NyYy9saWIvdG9vbGJhci9wZGYtdG9vbGJhci9wZGYtdG9vbGJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBcUMsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUFPNUYsTUFBTSxPQUFPLG1CQUFtQjtJQTBEOUI7UUFyRE8sNEJBQXVCLEdBQUcsQ0FBQyxDQUFDO1FBRzVCLHVCQUFrQixHQUFHLElBQUksQ0FBQztRQUcxQix1QkFBa0IsR0FBRyxJQUFJLENBQUM7UUFHMUIsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBRzFCLG1CQUFjLEdBQXdCLFNBQVMsQ0FBQztRQUdoRCx1QkFBa0IsR0FBRyxJQUFJLENBQUM7UUFHMUIsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBRzFCLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBR3ZCLHNCQUFpQixHQUFHLElBQUksQ0FBQztRQUd6QiwrQkFBMEIsR0FBRyxLQUFLLENBQUM7UUFHbkMscUJBQWdCLEdBQUcsSUFBSSxDQUFDO1FBR3hCLCtCQUEwQixHQUFHLElBQUksQ0FBQztRQUdsQyxzQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFHekIsb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFHdkIsY0FBUyxHQUF3QixTQUFTLENBQUM7UUFHM0MscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBR3pCLGlCQUFZLEdBQUcsTUFBTSxDQUFDO1FBR3RCLGVBQVUsR0FBRyxDQUFDLE1BQU0sRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFFekYsQ0FBQzs7Z0hBMURMLG1CQUFtQjtvR0FBbkIsbUJBQW1CLCt5QkNQaEMsa2pFQW9DQTsyRkQ3QmEsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGFBQWE7MEVBTWhCLGFBQWE7c0JBRG5CLEtBQUs7Z0JBSUMsdUJBQXVCO3NCQUQ3QixLQUFLO2dCQUlDLGtCQUFrQjtzQkFEeEIsS0FBSztnQkFJQyxrQkFBa0I7c0JBRHhCLEtBQUs7Z0JBSUMsa0JBQWtCO3NCQUR4QixLQUFLO2dCQUlDLGNBQWM7c0JBRHBCLEtBQUs7Z0JBSUMsa0JBQWtCO3NCQUR4QixLQUFLO2dCQUlDLGtCQUFrQjtzQkFEeEIsS0FBSztnQkFJQyxlQUFlO3NCQURyQixLQUFLO2dCQUlDLGlCQUFpQjtzQkFEdkIsS0FBSztnQkFJQywwQkFBMEI7c0JBRGhDLEtBQUs7Z0JBSUMsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQUlDLDBCQUEwQjtzQkFEaEMsS0FBSztnQkFJQyxpQkFBaUI7c0JBRHZCLEtBQUs7Z0JBSUMsZUFBZTtzQkFEckIsS0FBSztnQkFJQyxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQUlDLFlBQVk7c0JBRGxCLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgVGVtcGxhdGVSZWYsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3BkZi10b29sYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3BkZi10b29sYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcGRmLXRvb2xiYXIuY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIFBkZlRvb2xiYXJDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBwdWJsaWMgY3VzdG9tVG9vbGJhcjogVGVtcGxhdGVSZWY8YW55PiB8IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgbW9iaWxlRnJpZW5kbHlab29tU2NhbGUgPSAxO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBwcmltYXJ5TWVudVZpc2libGUgPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93Qm9va21hcmtCdXR0b24gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93RG93bmxvYWRCdXR0b24gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93RmluZEJ1dHRvbjogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2hvd0hhbmRUb29sQnV0dG9uID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2hvd09wZW5GaWxlQnV0dG9uID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2hvd1ByaW50QnV0dG9uID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2hvd1BhZ2luZ0J1dHRvbnMgPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93UHJlc2VudGF0aW9uTW9kZUJ1dHRvbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93Um90YXRlQnV0dG9uID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2hvd1NlY29uZGFyeVRvb2xiYXJCdXR0b24gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93U2lkZWJhckJ1dHRvbiA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNob3dab29tQnV0dG9ucyA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHRleHRMYXllcjogYm9vbGVhbiB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdG9vbGJhck1hcmdpblRvcCA9ICcwcHgnO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0b29sYmFyV2lkdGggPSAnMTAwJSc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHpvb21MZXZlbHMgPSBbJ2F1dG8nLCAncGFnZS1hY3R1YWwnLCAncGFnZS1maXQnLCAncGFnZS13aWR0aCcsIDAuNSwgMC43NSwgMSwgMS4yNSwgMS41LCAyLCAzLCA0XTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG59XG4iLCI8ZGl2IGNsYXNzPVwidG9vbGJhclwiIFtjbGFzcy5pbnZpc2libGVdPVwiIXByaW1hcnlNZW51VmlzaWJsZVwiXG4gICAgW3N0eWxlLnRyYW5zZm9ybV09XCInc2NhbGUoJyArIG1vYmlsZUZyaWVuZGx5Wm9vbVNjYWxlICsgJyknXCJcbiAgICBbc3R5bGUudHJhbnNmb3JtT3JpZ2luXT1cIidsZWZ0IGNlbnRlcidcIlxuICAgIFtzdHlsZS53aWR0aF09XCJ0b29sYmFyV2lkdGhcIlxuICAgIFtzdHlsZS5tYXJnaW5Ub3BdPVwidG9vbGJhck1hcmdpblRvcFwiXG4+XG4gIDxkaXYgaWQ9XCJ0b29sYmFyQ29udGFpbmVyXCI+XG4gICAgPG5nLWNvbnRlbnQgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjdXN0b21Ub29sYmFyID8gY3VzdG9tVG9vbGJhciA6IGRlZmF1bHRUb29sYmFyXCI+PC9uZy1jb250ZW50PlxuICAgIDxkaXYgaWQ9XCJsb2FkaW5nQmFyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwicHJvZ3Jlc3NcIj48ZGl2IGNsYXNzPVwiZ2xpbW1lclwiPjwvZGl2PjwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2RlZmF1bHRUb29sYmFyPlxuICA8ZGl2IGlkPVwidG9vbGJhclZpZXdlclwiPlxuICAgIDxkaXYgaWQ9XCJ0b29sYmFyVmlld2VyTGVmdFwiPlxuICAgICAgPHBkZi10b2dnbGUtc2lkZWJhciBbc2hvd1NpZGViYXJCdXR0b25dPVwic2hvd1NpZGViYXJCdXR0b25cIj48L3BkZi10b2dnbGUtc2lkZWJhcj5cbiAgICAgIDxwZGYtZmluZC1idXR0b24gW3Nob3dGaW5kQnV0dG9uXT1cInNob3dGaW5kQnV0dG9uXCIgW3RleHRMYXllcl09XCJ0ZXh0TGF5ZXJcIj48L3BkZi1maW5kLWJ1dHRvbj5cbiAgICAgIDxwZGYtcGFnaW5nLWFyZWEgW3Nob3dQYWdpbmdCdXR0b25zXT1cInNob3dQYWdpbmdCdXR0b25zXCI+PC9wZGYtcGFnaW5nLWFyZWE+XG4gICAgPC9kaXY+XG4gICAgPHBkZi16b29tLXRvb2xiYXIgW3Nob3dab29tQnV0dG9uc109XCJzaG93Wm9vbUJ1dHRvbnNcIiBbem9vbUxldmVsc109XCJ6b29tTGV2ZWxzXCI+PC9wZGYtem9vbS10b29sYmFyPlxuICAgIDxkaXYgaWQ9XCJ0b29sYmFyVmlld2VyUmlnaHRcIj5cbiAgICAgIDxwZGYtaGFuZC10b29sIFtzaG93SGFuZFRvb2xCdXR0b25dPVwic2hvd0hhbmRUb29sQnV0dG9uXCI+PC9wZGYtaGFuZC10b29sPlxuICAgICAgPHBkZi1zZWxlY3QtdG9vbCBbc2hvd1NlbGVjdFRvb2xCdXR0b25dPVwic2hvd0hhbmRUb29sQnV0dG9uXCI+PC9wZGYtc2VsZWN0LXRvb2w+XG4gICAgICA8cGRmLXJvdGF0ZS1wYWdlIFtzaG93Um90YXRlQnV0dG9uXT1cInNob3dSb3RhdGVCdXR0b25cIiBbY2xvY2t3aXNlXT1cInRydWVcIiBbY291bnRlckNsb2Nrd2lzZV09XCJmYWxzZVwiPjwvcGRmLXJvdGF0ZS1wYWdlPlxuICAgICAgPHBkZi1yb3RhdGUtcGFnZSBbc2hvd1JvdGF0ZUJ1dHRvbl09XCJzaG93Um90YXRlQnV0dG9uXCIgW2Nsb2Nrd2lzZV09XCJmYWxzZVwiIFtjb3VudGVyQ2xvY2t3aXNlXT1cInRydWVcIj48L3BkZi1yb3RhdGUtcGFnZT5cbiAgICAgIDxwZGYtcHJlc2VudGF0aW9uLW1vZGUgW3Nob3dQcmVzZW50YXRpb25Nb2RlQnV0dG9uXT1cInNob3dQcmVzZW50YXRpb25Nb2RlQnV0dG9uXCI+PC9wZGYtcHJlc2VudGF0aW9uLW1vZGU+XG4gICAgICA8cGRmLW9wZW4tZmlsZSBbc2hvd09wZW5GaWxlQnV0dG9uXT1cInNob3dPcGVuRmlsZUJ1dHRvblwiPjwvcGRmLW9wZW4tZmlsZT5cbiAgICAgIDxwZGYtcHJpbnQgW3Nob3dQcmludEJ1dHRvbl09XCJzaG93UHJpbnRCdXR0b25cIj48L3BkZi1wcmludD5cbiAgICAgIDxwZGYtZG93bmxvYWQgW3Nob3dEb3dubG9hZEJ1dHRvbl09XCJzaG93RG93bmxvYWRCdXR0b25cIj48L3BkZi1kb3dubG9hZD5cbiAgICAgIDxwZGYtYm9va21hcmsgW3Nob3dCb29rbWFya0J1dHRvbl09XCJzaG93Qm9va21hcmtCdXR0b25cIj48L3BkZi1ib29rbWFyaz5cbiAgICAgIDxwZGYtdG9nZ2xlLXNlY29uZGFyeS10b29sYmFyIFtzaG93U2Vjb25kYXJ5VG9vbGJhckJ1dHRvbl09XCJzaG93U2Vjb25kYXJ5VG9vbGJhckJ1dHRvblwiPjwvcGRmLXRvZ2dsZS1zZWNvbmRhcnktdG9vbGJhcj5cbiAgICA8L2Rpdj5cbiAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==