vcomply-workflow-engine 6.0.46 → 6.0.48

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.
@@ -23,7 +23,7 @@ export class DocumentSectionComponent {
23
23
  this.doc = false;
24
24
  this.isUploading = false;
25
25
  this.isLoader = false;
26
- this.ff_policy_ms_word_integration = false;
26
+ this.is_ms_word_integrated = false;
27
27
  this.createWordPolicyText = WORD_CONSTANTS.MS_WORD_OPTION;
28
28
  this.selectedDocumentType = '';
29
29
  this.templateView = false;
@@ -66,7 +66,8 @@ export class DocumentSectionComponent {
66
66
  }
67
67
  }
68
68
  initialiseFeatureFlags() {
69
- this.ff_policy_ms_word_integration = this.feature.isFeatureEnabled(WORD_CONSTANTS.ff_policy_ms_word_integration);
69
+ this.is_ms_word_integrated = this.feature.isFeatureEnabled('ff_policy_ms_word_integration');
70
+ console.log(this.is_ms_word_integrated, 'ff_policy_ms_word_integration');
70
71
  }
71
72
  redirectUserToWordPolicy() {
72
73
  window.open(WORD_URL_CONSTANTS.new_word_policy_url, '_blank');
@@ -227,11 +228,11 @@ export class DocumentSectionComponent {
227
228
  this.openTemplate.emit();
228
229
  }
229
230
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DocumentSectionComponent, deps: [{ token: i1.SnackBarService }, { token: i2.PolicyService }, { token: i3.PolicyAPIService }, { token: i4.Router }, { token: i4.ActivatedRoute }, { token: i5.PlatformLocation }, { token: i6.IframeService }], target: i0.ɵɵFactoryTarget.Component }); }
230
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DocumentSectionComponent, selector: "lib-document-section", inputs: { selectedDocumentType: "selectedDocumentType", feature: "feature", templateView: "templateView", policyId: "policyId", policyName: "policyName", organization_id: "organization_id", member_obj_id: "member_obj_id", userInfo: "userInfo", templateUrl: "templateUrl", isTemplateOpened: "isTemplateOpened" }, outputs: { disconnectRefresh: "disconnectRefresh", editPolicy: "editPolicy", openTemplate: "openTemplate" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"document-section\" [class.grayscale]=\"isTemplateOpened\">\n <div class=\"document-section-inner\">\n <div class=\"message-box\">\n <svg\n version=\"1.1\"\n id=\"Capa_1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n x=\"0px\"\n y=\"0px\"\n viewBox=\"0 0 480.8 480.8\"\n style=\"enable-background: new 0 0 480.8 480.8\"\n xml:space=\"preserve\"\n >\n <path\n style=\"fill: #ffd517\"\n d=\"M317.112,314.4c-22.4,22.4-19.6,67.6-19.6,67.6h-113.6c0,0,2.4-45.2-19.6-67.6\n c-24.4-21.6-40-52.8-40-87.6c0-64,52-116,116-116s116,52,116,116C356.312,261.6,341.112,292.8,317.112,314.4L317.112,314.4z\"\n />\n <g>\n <path\n style=\"fill: #e5e5e5\"\n d=\"M300.712,417.6c0,6-4.8,10.8-10.8,10.8h-98.8c-6,0-10.8-4.8-10.8-10.8l0,0c0-6,4.8-10.8,10.8-10.8\n h98.4C295.512,406.8,300.712,411.6,300.712,417.6L300.712,417.6z\"\n />\n <path\n style=\"fill: #e5e5e5\"\n d=\"M285.912,462.4c0,6-4.8,10.8-10.8,10.8h-69.2c-6,0-10.8-4.8-10.8-10.8l0,0c0-6,4.8-10.8,10.8-10.8\n h69.2C281.112,451.6,285.912,456.4,285.912,462.4L285.912,462.4z\"\n />\n </g>\n <g>\n <path\n style=\"fill: #210b20\"\n d=\"M323.112,318.4c26-23.6,40.8-56.8,40.8-91.6c0-68-55.6-123.6-123.6-123.6s-123.6,55.6-123.6,123.6\n c0,35.6,15.6,69.6,42,92.8c19.6,19.6,17.6,61.2,17.6,61.6c0,2,0.8,4,2,5.6c1.6,1.6,3.6,2.4,5.6,2.4h113.2c2,0,4-0.8,5.6-2.4\n s2-3.6,2-5.6c0-0.4-2-42,17.6-61.6C322.712,319.2,323.112,318.8,323.112,318.4z M311.912,308.4c-0.8,0.4-1.2,1.2-1.6,2\n c-17.6,18.8-20.4,49.6-20.8,64h-98c-0.4-14.8-3.6-46.8-22.4-65.6c-23.6-20.8-37.2-50.4-37.2-81.6c0-60,48.8-108.4,108.4-108.4\n c60,0,108.4,48.8,108.4,108.4C348.712,258,335.512,288,311.912,308.4z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M240.312,135.2c-4,0-7.6,3.2-7.6,7.6c0,4,3.2,7.6,7.6,7.6c44.8,0,81.2,36.4,81.2,81.2\n c0,4,3.2,7.6,7.6,7.6c4,0,7.6-3.2,7.6-7.6C336.712,178.4,293.512,135.2,240.312,135.2z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M308.312,417.6c0-10.4-8.4-18.4-18.4-18.4h-98.8c-10.4,0-18.4,8.4-18.4,18.4\n c0,10.4,8.4,18.4,18.4,18.4h98.4C299.912,436,308.312,428,308.312,417.6z M289.512,420.8h-98.4c-2,0-3.2-1.6-3.2-3.2\n c0-2,1.6-3.2,3.2-3.2h98.4c2,0,3.2,1.6,3.2,3.2C293.112,419.6,291.512,420.8,289.512,420.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M275.112,444h-69.2c-10.4,0-18.4,8.4-18.4,18.4c0,10.4,8.4,18.4,18.4,18.4h69.2\n c10.4,0,18.4-8.4,18.4-18.4C293.512,452.4,285.112,444,275.112,444z M275.112,465.6h-69.2c-2,0-3.2-1.6-3.2-3.2\n c0-2,1.6-3.2,3.2-3.2h69.2c2,0,3.2,1.6,3.2,3.2C278.312,464.4,277.112,465.6,275.112,465.6z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M247.912,58.8V7.6c0-4-3.2-7.6-7.6-7.6c-4,0-7.6,3.2-7.6,7.6v51.6c0,4,3.2,7.6,7.6,7.6\n C244.712,66.4,247.912,63.2,247.912,58.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M366.312,38c-3.6-2.4-8-1.2-10.4,2l-28.4,42.8c-2.4,3.6-1.2,8,2,10.4c1.2,0.8,2.8,1.2,4,1.2\n c2.4,0,4.8-1.2,6.4-3.2l28.4-42.8C370.712,45.2,369.512,40.4,366.312,38z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M149.912,92.8c1.2,0,2.8-0.4,4-1.2c3.6-2.4,4.4-6.8,2.4-10.4l-27.6-43.2c-2.4-3.6-6.8-4.4-10.4-2.4\n c-3.6,2.4-4.4,6.8-2.4,10.4l27.6,43.2C145.112,91.6,147.512,92.8,149.912,92.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M43.912,128.8l45.2,24.4c1.2,0.8,2.4,0.8,3.6,0.8c2.8,0,5.2-1.6,6.8-4c2-3.6,0.8-8.4-3.2-10.4\n l-45.2-24.4c-3.6-2-8.4-0.8-10.4,3.2C39.112,122.4,40.312,126.8,43.912,128.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M387.912,154.4c1.2,0,2.4-0.4,3.6-0.8l45.2-24.4c3.6-2,5.2-6.4,3.2-10.4c-2-3.6-6.4-5.2-10.4-3.2\n l-45.2,24.4c-3.6,2-5.2,6.4-3.2,10.4C382.312,152.8,385.112,154.4,387.912,154.4z\"\n />\n </g>\n </svg>\n <p>\n There are multiple ways to create a policy on VComply. You can either\n draft it from scratch using VComply's online editor or upload an\n existing DOCX or PDF file.\n </p>\n </div>\n <label\n class=\"document-box\"\n [class.active]=\"selectedDocumentType == 'draft'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('draft')\"\n [checked]=\"selectedDocumentType === 'draft'\"\n />\n <svg id=\"Draft\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20402\" data-name=\"Path 20402\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#565a6f\"/>\n <path id=\"Path_20403\" data-name=\"Path 20403\" d=\"M21.884,8.51,10.549,10.384,12.426,21.06l4.38-.61a.333.333,0,0,1,.326.435c-.051.219-.338.235-.514.267-1.474.266-3.009.388-4.491.631-.416-.032-.321-.718-.441-1l-3-.365c-.213-.12-.2-.273-.2-.492.019-.622.092-1.251.125-1.872.16-3,.316-6,.5-8.993A9.457,9.457,0,0,1,9.152,8.1a.369.369,0,0,1,.265-.3l8.519.681L22.2,7.8c.225.068.246.19.3.393.553,2.288.758,4.775,1.285,7.083.143.531-.507.731-.642.2ZM17.211,21.932a.563.563,0,0,0-.072.24,8.549,8.549,0,0,0,0,1.187c.019.217.088.393.328.421a9.138,9.138,0,0,0,1.448-.021.53.53,0,0,0,.122-.065l3.756-3.771L21,18.13Zm5.329-5.35c-.365.286-.7.757-1.061,1.062L23.3,19.437c.3-.35.777-.687,1.05-1.044.15-.2.174-.312.017-.516a13.851,13.851,0,0,0-1.327-1.327.393.393,0,0,0-.23-.1.476.476,0,0,0-.271.13\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\"><strong>Create</strong> a Policy</div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n\n \n <label\n *ngIf=\"ff_policy_ms_word_integration\"\n class=\"document-box\"\n [class.active]=\"selectedDocumentType == 'word'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('word')\"\n [checked]=\"selectedDocumentType === 'word'\"\n />\n <svg id=\"Word-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20404\" data-name=\"Path 20404\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#1e5dd3\"/>\n <path id=\"Path_20405\" data-name=\"Path 20405\" d=\"M10.419,9.718l1.889,9.121L12.44,20l.132-.885,2.152-9.4,2.626.018,2.187,9.106.174,1.132a13.4,13.4,0,0,1,.174-1.352c.5-2.954,1.188-5.88,1.7-8.832l.04-.07H24L21.085,22.281l-2.818-.026L15.931,12.22l-.16,1.077-2.015,8.986-2.829-.028L8,9.718Z\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">{{createWordPolicyText}}</div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n\n\n\n <label\n class=\"document-box\"\n *ngIf=\"showDocxBlock\"\n [class.active]=\"selectedDocumentType == 'docx' && !docxError?.visible\"\n [class.error]=\"docxError?.visible\"\n >\n <input\n type=\"file\"\n accept=\".docx\"\n id=\"DOCfile\"\n (change)=\"handleFileInput($event.target.files)\"\n onclick=\"event.stopPropagation();\"\n #docxUploadButton\n />\n <svg id=\"Word-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20404\" data-name=\"Path 20404\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#1e5dd3\"/>\n <path id=\"Path_20405\" data-name=\"Path 20405\" d=\"M10.419,9.718l1.889,9.121L12.44,20l.132-.885,2.152-9.4,2.626.018,2.187,9.106.174,1.132a13.4,13.4,0,0,1,.174-1.352c.5-2.954,1.188-5.88,1.7-8.832l.04-.07H24L21.085,22.281l-2.818-.026L15.931,12.22l-.16,1.077-2.015,8.986-2.829-.028L8,9.718Z\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">\n <ng-container *ngIf=\"!(selectedDocumentType == 'docx' && filename)\"\n >Upload a <strong>DOCX</strong></ng-container\n >\n <ng-container *ngIf=\"selectedDocumentType == 'docx' && filename\">{{\n filename\n }}</ng-container>\n </div>\n <div class=\"error-msg-text\" *ngIf=\"docxError?.visible\">\n {{ docxError?.message }}\n </div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea97;</i>\n <div class=\"check-circle\" *ngIf=\"!docxError?.visible\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n <i class=\"icons error-icon\" *ngIf=\"docxError?.visible\">&#xe914;</i>\n </div>\n <div\n class=\"line-progress\"\n *ngIf=\"selectedDocumentType == 'docx' && isUploading\"\n >\n <div class=\"line-progress-bar\"></div>\n </div>\n </label>\n <label\n class=\"document-box\"\n *ngIf=\"showPdfBlock\"\n [class.active]=\"selectedDocumentType == 'pdf'\"\n >\n <input\n type=\"file\"\n accept=\".pdf\"\n id=\"PDFfile\"\n (change)=\"handleFileInput($event.target.files)\"\n onclick=\"event.stopPropagation();\"\n #pdfUploadButton\n />\n <svg id=\"PDF-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20408\" data-name=\"Path 20408\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#a82a1d\"/>\n <path id=\"Path_20409\" data-name=\"Path 20409\" d=\"M16.125,13.778A1.39,1.39,0,0,0,16.285,15a16.106,16.106,0,0,0,2.106,2.554c.312-.045.6-.047,1.2-.092a6.964,6.964,0,0,1,3.616.239,1.31,1.31,0,0,1,.784,1.361,1.176,1.176,0,0,1-1.075.981c-2.224.336-3.305-.9-4.579-1.746a2.094,2.094,0,0,0-.812.021,25.782,25.782,0,0,0-3.412.916c-.253.089-.338.3-.533.609a11.062,11.062,0,0,1-2.82,3.427,2.145,2.145,0,0,1-1.861.445c-1-.222-1.178-1.182-.5-1.942A9.452,9.452,0,0,1,10,20.462a14.714,14.714,0,0,1,2.418-1.109c.491-.461.556-.686.966-1.764.431-1.136.922-2.25,1.324-3.4a1.679,1.679,0,0,0-.035-1.062,7.7,7.7,0,0,1-.638-3.476,1.4,1.4,0,0,1,.959-1.393,1.279,1.279,0,0,1,1.464.8c.2.479.552,1.75-.331,4.728m-.377,1.377-1.418,3.422,3.353-.883-1.935-2.539m3.222,2.882A4.5,4.5,0,0,0,21.92,19.37c.377,0,.714-.131.733-.6.051-1.251-2.656-.864-3.682-.73m-6.96,2.037a9.788,9.788,0,0,0-2.975,1.8c-.218.171-.446.718-.282.984s.81.067,1-.12a9.29,9.29,0,0,0,2.253-2.664m3.246-7.243c-.045-.878.461-2.172.437-3.224-.008-.355-.051-.747-.5-.772-.364-.02-.534.476-.569.762a5.8,5.8,0,0,0,.636,3.234\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">\n <ng-container *ngIf=\"!(selectedDocumentType == 'pdf' && filename)\"\n >Upload a <strong>PDF</strong></ng-container\n >\n <ng-container *ngIf=\"selectedDocumentType == 'pdf' && filename\">{{\n filename\n }}</ng-container>\n </div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea97;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n <div\n class=\"line-progress\"\n *ngIf=\"selectedDocumentType == 'pdf' && isUploading\"\n >\n <div class=\"line-progress-bar\"></div>\n </div>\n </label>\n <!-- Select a template -->\n <label\n class=\"document-box\"\n [class.active]=\"selectedDocumentType === 'template'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('template')\"\n [checked]=\"selectedDocumentType === 'template'\"\n />\n <svg id=\"TMP-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20406\" data-name=\"Path 20406\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#34aa44\"/>\n <path id=\"Path_20410\" data-name=\"Path 20410\" d=\"M16,1.778V3.555H0V1.778A1.783,1.783,0,0,1,1.778,0H14.223A1.783,1.783,0,0,1,16,1.778M0,4.444H16v8.889a1.778,1.778,0,0,1-1.777,1.778H1.778A1.778,1.778,0,0,1,0,13.333ZM6.99,9.928A.891.891,0,0,0,6.1,9.039H3.642a.891.891,0,0,0-.888.889v2.456a.891.891,0,0,0,.888.889H6.1a.891.891,0,0,0,.888-.889Zm6.306,0a.892.892,0,0,0-.889-.889H9.948a.891.891,0,0,0-.888.889v2.456a.891.891,0,0,0,.888.889h2.459a.892.892,0,0,0,.889-.889ZM2.667,7.111A.889.889,0,0,0,3.556,8h8.889a.889.889,0,0,0,0-1.778H3.556a.889.889,0,0,0-.889.889\" transform=\"translate(8 7.999)\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">Draft Using a <strong>Template</strong></div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n <!-- End Select a template -->\n <app-loader-inline *ngIf=\"isLoader\"></app-loader-inline>\n </div>\n</div>\n<div class=\"bottom-button\" [class.grayscale]=\"isTemplateOpened\">\n <button\n type=\"button\"\n (click)=\"editPolicyEmit()\"\n class=\"back\"\n [class.disabled]=\"isTemplateOpened\"\n >\n <i class=\"icons\">&#xe91d;</i> Back\n </button>\n <button\n type=\"button\"\n (click)=\"editor(selectedDocumentType)\"\n class=\"next\"\n [class.disabled]=\"!selectedDocumentType || isTemplateOpened || isLoader\"\n >\n Next <i class=\"icons\">&#xe91e;</i>\n </button>\n</div>\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";::ng-deep .document-section{display:flex;align-items:center;height:calc(100vh - 50px);position:absolute;top:0;right:0;background:#fff;z-index:10;padding:50px;width:100%;overflow:hidden;overflow-y:scroll}@media screen and (max-width: 1365px){::ng-deep .document-section{align-items:unset}}::ng-deep .document-section.grayscale{filter:grayscale(1)!important;pointer-events:none!important}::ng-deep .document-section-inner .message-box{background:#fbfbfb;border-radius:4px;border:1px solid #f1f1f1;padding:16px 8px 12px 16px;margin-bottom:20px;display:flex;align-items:flex-start}::ng-deep .document-section-inner .message-box svg{background:#fff;width:33px;min-width:33px;border-radius:4px;box-shadow:0 3px 6px #1e5dd333;margin-right:12px;padding:4px}::ng-deep .document-section-inner .message-box p{font-size:12px;font-weight:500;color:#787a8c;margin:0}::ng-deep .document-section-inner .document-box{position:relative;cursor:pointer;display:flex;align-items:center;justify-content:space-between;border:1px solid #CDCED6;border-radius:8px;width:100%;background:transparent;height:64px;padding:0 16px;margin-bottom:8px}::ng-deep .document-section-inner .document-box.error{border:1px solid #dbdbdb}::ng-deep .document-section-inner .document-box input{width:100%;position:absolute;inset:0;margin:0;padding:0;z-index:1;opacity:0;height:100%;pointer-events:none}::ng-deep .document-section-inner .document-box svg.doc-svg{width:82px}::ng-deep .document-section-inner .document-box .label-right{width:calc(100% - 64px);display:flex;align-items:center;justify-content:center;position:relative}::ng-deep .document-section-inner .document-box .label-right .value{font-size:16px;font-weight:500;line-height:24px;color:#000;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;word-break:break-word;width:270px;margin-right:25px}::ng-deep .document-section-inner .document-box .label-right .value strong{font-weight:500}::ng-deep .document-section-inner .document-box .label-right .error-msg-text{color:#d93b41;font-size:10px;position:absolute;top:24px;left:0;right:0;width:250px}::ng-deep .document-section-inner .document-box .label-right .check-circle{display:none;width:16px;height:16px;position:absolute;right:8px;top:2px}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon{width:16px;height:16px;background:#ddf4e0;border-radius:50%;stroke-width:4;stroke:#34aa44;stroke-miterlimit:10;box-shadow:inset 0 0 #34aa44;animation:fillCheck .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;margin-right:10px;position:static}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon__circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:#34aa44;fill:none;animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards}::ng-deep .document-section-inner .document-box .label-right .error-icon{color:#d93b41;font-size:16px;position:relative;top:0;right:8px}::ng-deep .document-section-inner .document-box.active{background:#ddf4e0;border:1px solid #B7E2BD}::ng-deep .document-section-inner .document-box.active .document-box-icon{display:none}::ng-deep .document-section-inner .document-box.active .label-right .check-circle{display:block}::ng-deep .document-section-inner .document-box.error{background:#ffeaea;border:1px solid #d93b41}::ng-deep .document-section-inner .document-box-icon{color:#565a6f}.bottom-button{background:#fff;display:flex;align-items:center;position:absolute;bottom:0;right:0;width:100%;z-index:10}.bottom-button button{background:#1e5dd3;border:none;border-radius:0;color:#fff;font-size:13px;font-weight:600;text-transform:uppercase;width:100%;padding:0;position:relative;margin:0!important;height:50px;display:flex;align-items:center;justify-content:center;line-height:19px;letter-spacing:3.08px;outline:none}.bottom-button button i{position:absolute;top:16px;font-size:18px;font-weight:500}.bottom-button button.next i{right:16px}.bottom-button button.disabled{pointer-events:none!important;opacity:.3!important;filter:grayscale(1)!important}.bottom-button button.back{background:#f1f1f1;color:#1e5dd3}.bottom-button button.back i{left:16px}.line-progress{position:absolute;left:0;top:0;height:2px;display:block;width:100%;background-color:#d4e2fc;background-clip:padding-box;overflow:hidden}.line-progress-bar{bottom:0;width:40%;background:#34aa44;border-radius:5px;display:inline-block;position:absolute;animation:linear infinite;animation-name:run;animation-duration:1s;top:0}@keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}@keyframes run{0%{left:0}50%{left:60%}to{left:0}}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.LoaderInlineComponent, selector: "app-loader-inline" }] }); }
231
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DocumentSectionComponent, selector: "lib-document-section", inputs: { selectedDocumentType: "selectedDocumentType", feature: "feature", templateView: "templateView", policyId: "policyId", policyName: "policyName", organization_id: "organization_id", member_obj_id: "member_obj_id", userInfo: "userInfo", templateUrl: "templateUrl", isTemplateOpened: "isTemplateOpened" }, outputs: { disconnectRefresh: "disconnectRefresh", editPolicy: "editPolicy", openTemplate: "openTemplate" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"document-section\" [class.grayscale]=\"isTemplateOpened\">\n <div class=\"document-section-inner\">\n <div class=\"message-box\">\n <svg\n version=\"1.1\"\n id=\"Capa_1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n x=\"0px\"\n y=\"0px\"\n viewBox=\"0 0 480.8 480.8\"\n style=\"enable-background: new 0 0 480.8 480.8\"\n xml:space=\"preserve\"\n >\n <path\n style=\"fill: #ffd517\"\n d=\"M317.112,314.4c-22.4,22.4-19.6,67.6-19.6,67.6h-113.6c0,0,2.4-45.2-19.6-67.6\n c-24.4-21.6-40-52.8-40-87.6c0-64,52-116,116-116s116,52,116,116C356.312,261.6,341.112,292.8,317.112,314.4L317.112,314.4z\"\n />\n <g>\n <path\n style=\"fill: #e5e5e5\"\n d=\"M300.712,417.6c0,6-4.8,10.8-10.8,10.8h-98.8c-6,0-10.8-4.8-10.8-10.8l0,0c0-6,4.8-10.8,10.8-10.8\n h98.4C295.512,406.8,300.712,411.6,300.712,417.6L300.712,417.6z\"\n />\n <path\n style=\"fill: #e5e5e5\"\n d=\"M285.912,462.4c0,6-4.8,10.8-10.8,10.8h-69.2c-6,0-10.8-4.8-10.8-10.8l0,0c0-6,4.8-10.8,10.8-10.8\n h69.2C281.112,451.6,285.912,456.4,285.912,462.4L285.912,462.4z\"\n />\n </g>\n <g>\n <path\n style=\"fill: #210b20\"\n d=\"M323.112,318.4c26-23.6,40.8-56.8,40.8-91.6c0-68-55.6-123.6-123.6-123.6s-123.6,55.6-123.6,123.6\n c0,35.6,15.6,69.6,42,92.8c19.6,19.6,17.6,61.2,17.6,61.6c0,2,0.8,4,2,5.6c1.6,1.6,3.6,2.4,5.6,2.4h113.2c2,0,4-0.8,5.6-2.4\n s2-3.6,2-5.6c0-0.4-2-42,17.6-61.6C322.712,319.2,323.112,318.8,323.112,318.4z M311.912,308.4c-0.8,0.4-1.2,1.2-1.6,2\n c-17.6,18.8-20.4,49.6-20.8,64h-98c-0.4-14.8-3.6-46.8-22.4-65.6c-23.6-20.8-37.2-50.4-37.2-81.6c0-60,48.8-108.4,108.4-108.4\n c60,0,108.4,48.8,108.4,108.4C348.712,258,335.512,288,311.912,308.4z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M240.312,135.2c-4,0-7.6,3.2-7.6,7.6c0,4,3.2,7.6,7.6,7.6c44.8,0,81.2,36.4,81.2,81.2\n c0,4,3.2,7.6,7.6,7.6c4,0,7.6-3.2,7.6-7.6C336.712,178.4,293.512,135.2,240.312,135.2z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M308.312,417.6c0-10.4-8.4-18.4-18.4-18.4h-98.8c-10.4,0-18.4,8.4-18.4,18.4\n c0,10.4,8.4,18.4,18.4,18.4h98.4C299.912,436,308.312,428,308.312,417.6z M289.512,420.8h-98.4c-2,0-3.2-1.6-3.2-3.2\n c0-2,1.6-3.2,3.2-3.2h98.4c2,0,3.2,1.6,3.2,3.2C293.112,419.6,291.512,420.8,289.512,420.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M275.112,444h-69.2c-10.4,0-18.4,8.4-18.4,18.4c0,10.4,8.4,18.4,18.4,18.4h69.2\n c10.4,0,18.4-8.4,18.4-18.4C293.512,452.4,285.112,444,275.112,444z M275.112,465.6h-69.2c-2,0-3.2-1.6-3.2-3.2\n c0-2,1.6-3.2,3.2-3.2h69.2c2,0,3.2,1.6,3.2,3.2C278.312,464.4,277.112,465.6,275.112,465.6z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M247.912,58.8V7.6c0-4-3.2-7.6-7.6-7.6c-4,0-7.6,3.2-7.6,7.6v51.6c0,4,3.2,7.6,7.6,7.6\n C244.712,66.4,247.912,63.2,247.912,58.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M366.312,38c-3.6-2.4-8-1.2-10.4,2l-28.4,42.8c-2.4,3.6-1.2,8,2,10.4c1.2,0.8,2.8,1.2,4,1.2\n c2.4,0,4.8-1.2,6.4-3.2l28.4-42.8C370.712,45.2,369.512,40.4,366.312,38z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M149.912,92.8c1.2,0,2.8-0.4,4-1.2c3.6-2.4,4.4-6.8,2.4-10.4l-27.6-43.2c-2.4-3.6-6.8-4.4-10.4-2.4\n c-3.6,2.4-4.4,6.8-2.4,10.4l27.6,43.2C145.112,91.6,147.512,92.8,149.912,92.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M43.912,128.8l45.2,24.4c1.2,0.8,2.4,0.8,3.6,0.8c2.8,0,5.2-1.6,6.8-4c2-3.6,0.8-8.4-3.2-10.4\n l-45.2-24.4c-3.6-2-8.4-0.8-10.4,3.2C39.112,122.4,40.312,126.8,43.912,128.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M387.912,154.4c1.2,0,2.4-0.4,3.6-0.8l45.2-24.4c3.6-2,5.2-6.4,3.2-10.4c-2-3.6-6.4-5.2-10.4-3.2\n l-45.2,24.4c-3.6,2-5.2,6.4-3.2,10.4C382.312,152.8,385.112,154.4,387.912,154.4z\"\n />\n </g>\n </svg>\n <p>\n There are multiple ways to create a policy on VComply. You can either\n draft it from scratch using VComply's online editor or upload an\n existing DOCX or PDF file.\n </p>\n </div>\n <label\n class=\"document-box\"\n [class.active]=\"selectedDocumentType == 'draft'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('draft')\"\n [checked]=\"selectedDocumentType === 'draft'\"\n />\n <svg id=\"Draft\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20402\" data-name=\"Path 20402\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#565a6f\"/>\n <path id=\"Path_20403\" data-name=\"Path 20403\" d=\"M21.884,8.51,10.549,10.384,12.426,21.06l4.38-.61a.333.333,0,0,1,.326.435c-.051.219-.338.235-.514.267-1.474.266-3.009.388-4.491.631-.416-.032-.321-.718-.441-1l-3-.365c-.213-.12-.2-.273-.2-.492.019-.622.092-1.251.125-1.872.16-3,.316-6,.5-8.993A9.457,9.457,0,0,1,9.152,8.1a.369.369,0,0,1,.265-.3l8.519.681L22.2,7.8c.225.068.246.19.3.393.553,2.288.758,4.775,1.285,7.083.143.531-.507.731-.642.2ZM17.211,21.932a.563.563,0,0,0-.072.24,8.549,8.549,0,0,0,0,1.187c.019.217.088.393.328.421a9.138,9.138,0,0,0,1.448-.021.53.53,0,0,0,.122-.065l3.756-3.771L21,18.13Zm5.329-5.35c-.365.286-.7.757-1.061,1.062L23.3,19.437c.3-.35.777-.687,1.05-1.044.15-.2.174-.312.017-.516a13.851,13.851,0,0,0-1.327-1.327.393.393,0,0,0-.23-.1.476.476,0,0,0-.271.13\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\"><strong>Create</strong> a Policy</div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n\n \n <label\n *ngIf=\"is_ms_word_integrated\"\n class=\"document-box\"\n [class.active]=\"selectedDocumentType == 'word'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('word')\"\n [checked]=\"selectedDocumentType === 'word'\"\n />\n <svg id=\"Word-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20404\" data-name=\"Path 20404\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#1e5dd3\"/>\n <path id=\"Path_20405\" data-name=\"Path 20405\" d=\"M10.419,9.718l1.889,9.121L12.44,20l.132-.885,2.152-9.4,2.626.018,2.187,9.106.174,1.132a13.4,13.4,0,0,1,.174-1.352c.5-2.954,1.188-5.88,1.7-8.832l.04-.07H24L21.085,22.281l-2.818-.026L15.931,12.22l-.16,1.077-2.015,8.986-2.829-.028L8,9.718Z\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">{{createWordPolicyText}}</div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n\n\n\n <label\n class=\"document-box\"\n *ngIf=\"showDocxBlock\"\n [class.active]=\"selectedDocumentType == 'docx' && !docxError?.visible\"\n [class.error]=\"docxError?.visible\"\n >\n <input\n type=\"file\"\n accept=\".docx\"\n id=\"DOCfile\"\n (change)=\"handleFileInput($event.target.files)\"\n onclick=\"event.stopPropagation();\"\n #docxUploadButton\n />\n <svg id=\"Word-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20404\" data-name=\"Path 20404\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#1e5dd3\"/>\n <path id=\"Path_20405\" data-name=\"Path 20405\" d=\"M10.419,9.718l1.889,9.121L12.44,20l.132-.885,2.152-9.4,2.626.018,2.187,9.106.174,1.132a13.4,13.4,0,0,1,.174-1.352c.5-2.954,1.188-5.88,1.7-8.832l.04-.07H24L21.085,22.281l-2.818-.026L15.931,12.22l-.16,1.077-2.015,8.986-2.829-.028L8,9.718Z\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">\n <ng-container *ngIf=\"!(selectedDocumentType == 'docx' && filename)\"\n >Upload a <strong>DOCX</strong></ng-container\n >\n <ng-container *ngIf=\"selectedDocumentType == 'docx' && filename\">{{\n filename\n }}</ng-container>\n </div>\n <div class=\"error-msg-text\" *ngIf=\"docxError?.visible\">\n {{ docxError?.message }}\n </div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea97;</i>\n <div class=\"check-circle\" *ngIf=\"!docxError?.visible\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n <i class=\"icons error-icon\" *ngIf=\"docxError?.visible\">&#xe914;</i>\n </div>\n <div\n class=\"line-progress\"\n *ngIf=\"selectedDocumentType == 'docx' && isUploading\"\n >\n <div class=\"line-progress-bar\"></div>\n </div>\n </label>\n <label\n class=\"document-box\"\n *ngIf=\"showPdfBlock\"\n [class.active]=\"selectedDocumentType == 'pdf'\"\n >\n <input\n type=\"file\"\n accept=\".pdf\"\n id=\"PDFfile\"\n (change)=\"handleFileInput($event.target.files)\"\n onclick=\"event.stopPropagation();\"\n #pdfUploadButton\n />\n <svg id=\"PDF-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20408\" data-name=\"Path 20408\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#a82a1d\"/>\n <path id=\"Path_20409\" data-name=\"Path 20409\" d=\"M16.125,13.778A1.39,1.39,0,0,0,16.285,15a16.106,16.106,0,0,0,2.106,2.554c.312-.045.6-.047,1.2-.092a6.964,6.964,0,0,1,3.616.239,1.31,1.31,0,0,1,.784,1.361,1.176,1.176,0,0,1-1.075.981c-2.224.336-3.305-.9-4.579-1.746a2.094,2.094,0,0,0-.812.021,25.782,25.782,0,0,0-3.412.916c-.253.089-.338.3-.533.609a11.062,11.062,0,0,1-2.82,3.427,2.145,2.145,0,0,1-1.861.445c-1-.222-1.178-1.182-.5-1.942A9.452,9.452,0,0,1,10,20.462a14.714,14.714,0,0,1,2.418-1.109c.491-.461.556-.686.966-1.764.431-1.136.922-2.25,1.324-3.4a1.679,1.679,0,0,0-.035-1.062,7.7,7.7,0,0,1-.638-3.476,1.4,1.4,0,0,1,.959-1.393,1.279,1.279,0,0,1,1.464.8c.2.479.552,1.75-.331,4.728m-.377,1.377-1.418,3.422,3.353-.883-1.935-2.539m3.222,2.882A4.5,4.5,0,0,0,21.92,19.37c.377,0,.714-.131.733-.6.051-1.251-2.656-.864-3.682-.73m-6.96,2.037a9.788,9.788,0,0,0-2.975,1.8c-.218.171-.446.718-.282.984s.81.067,1-.12a9.29,9.29,0,0,0,2.253-2.664m3.246-7.243c-.045-.878.461-2.172.437-3.224-.008-.355-.051-.747-.5-.772-.364-.02-.534.476-.569.762a5.8,5.8,0,0,0,.636,3.234\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">\n <ng-container *ngIf=\"!(selectedDocumentType == 'pdf' && filename)\"\n >Upload a <strong>PDF</strong></ng-container\n >\n <ng-container *ngIf=\"selectedDocumentType == 'pdf' && filename\">{{\n filename\n }}</ng-container>\n </div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea97;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n <div\n class=\"line-progress\"\n *ngIf=\"selectedDocumentType == 'pdf' && isUploading\"\n >\n <div class=\"line-progress-bar\"></div>\n </div>\n </label>\n <!-- Select a template -->\n <label\n class=\"document-box\"\n [class.active]=\"selectedDocumentType === 'template'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('template')\"\n [checked]=\"selectedDocumentType === 'template'\"\n />\n <svg id=\"TMP-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20406\" data-name=\"Path 20406\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#34aa44\"/>\n <path id=\"Path_20410\" data-name=\"Path 20410\" d=\"M16,1.778V3.555H0V1.778A1.783,1.783,0,0,1,1.778,0H14.223A1.783,1.783,0,0,1,16,1.778M0,4.444H16v8.889a1.778,1.778,0,0,1-1.777,1.778H1.778A1.778,1.778,0,0,1,0,13.333ZM6.99,9.928A.891.891,0,0,0,6.1,9.039H3.642a.891.891,0,0,0-.888.889v2.456a.891.891,0,0,0,.888.889H6.1a.891.891,0,0,0,.888-.889Zm6.306,0a.892.892,0,0,0-.889-.889H9.948a.891.891,0,0,0-.888.889v2.456a.891.891,0,0,0,.888.889h2.459a.892.892,0,0,0,.889-.889ZM2.667,7.111A.889.889,0,0,0,3.556,8h8.889a.889.889,0,0,0,0-1.778H3.556a.889.889,0,0,0-.889.889\" transform=\"translate(8 7.999)\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">Draft Using a <strong>Template</strong></div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n <!-- End Select a template -->\n <app-loader-inline *ngIf=\"isLoader\"></app-loader-inline>\n </div>\n</div>\n<div class=\"bottom-button\" [class.grayscale]=\"isTemplateOpened\">\n <button\n type=\"button\"\n (click)=\"editPolicyEmit()\"\n class=\"back\"\n [class.disabled]=\"isTemplateOpened\"\n >\n <i class=\"icons\">&#xe91d;</i> Back\n </button>\n <button\n type=\"button\"\n (click)=\"editor(selectedDocumentType)\"\n class=\"next\"\n [class.disabled]=\"!selectedDocumentType || isTemplateOpened || isLoader\"\n >\n Next <i class=\"icons\">&#xe91e;</i>\n </button>\n</div>\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";::ng-deep .document-section{display:flex;align-items:center;height:calc(100vh - 50px);position:absolute;top:0;right:0;background:#fff;z-index:10;padding:50px;width:100%;overflow:hidden;overflow-y:scroll}@media screen and (max-width: 1365px){::ng-deep .document-section{align-items:unset}}::ng-deep .document-section.grayscale{filter:grayscale(1)!important;pointer-events:none!important}::ng-deep .document-section-inner .message-box{background:#fbfbfb;border-radius:4px;border:1px solid #f1f1f1;padding:16px 8px 12px 16px;margin-bottom:20px;display:flex;align-items:flex-start}::ng-deep .document-section-inner .message-box svg{background:#fff;width:33px;min-width:33px;border-radius:4px;box-shadow:0 3px 6px #1e5dd333;margin-right:12px;padding:4px}::ng-deep .document-section-inner .message-box p{font-size:12px;font-weight:500;color:#787a8c;margin:0}::ng-deep .document-section-inner .document-box{position:relative;cursor:pointer;display:flex;align-items:center;justify-content:space-between;border:1px solid #CDCED6;border-radius:8px;width:100%;background:transparent;height:64px;padding:0 16px;margin-bottom:8px}::ng-deep .document-section-inner .document-box.error{border:1px solid #dbdbdb}::ng-deep .document-section-inner .document-box input{width:100%;position:absolute;inset:0;margin:0;padding:0;z-index:1;opacity:0;height:100%;pointer-events:none}::ng-deep .document-section-inner .document-box svg.doc-svg{width:82px}::ng-deep .document-section-inner .document-box .label-right{width:calc(100% - 64px);display:flex;align-items:center;justify-content:center;position:relative}::ng-deep .document-section-inner .document-box .label-right .value{font-size:16px;font-weight:500;line-height:24px;color:#000;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;word-break:break-word;width:270px;margin-right:25px}::ng-deep .document-section-inner .document-box .label-right .value strong{font-weight:500}::ng-deep .document-section-inner .document-box .label-right .error-msg-text{color:#d93b41;font-size:10px;position:absolute;top:24px;left:0;right:0;width:250px}::ng-deep .document-section-inner .document-box .label-right .check-circle{display:none;width:16px;height:16px;position:absolute;right:8px;top:2px}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon{width:16px;height:16px;background:#ddf4e0;border-radius:50%;stroke-width:4;stroke:#34aa44;stroke-miterlimit:10;box-shadow:inset 0 0 #34aa44;animation:fillCheck .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;margin-right:10px;position:static}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon__circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:#34aa44;fill:none;animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards}::ng-deep .document-section-inner .document-box .label-right .error-icon{color:#d93b41;font-size:16px;position:relative;top:0;right:8px}::ng-deep .document-section-inner .document-box.active{background:#ddf4e0;border:1px solid #B7E2BD}::ng-deep .document-section-inner .document-box.active .document-box-icon{display:none}::ng-deep .document-section-inner .document-box.active .label-right .check-circle{display:block}::ng-deep .document-section-inner .document-box.error{background:#ffeaea;border:1px solid #d93b41}::ng-deep .document-section-inner .document-box-icon{color:#565a6f}.bottom-button{background:#fff;display:flex;align-items:center;position:absolute;bottom:0;right:0;width:100%;z-index:10}.bottom-button button{background:#1e5dd3;border:none;border-radius:0;color:#fff;font-size:13px;font-weight:600;text-transform:uppercase;width:100%;padding:0;position:relative;margin:0!important;height:50px;display:flex;align-items:center;justify-content:center;line-height:19px;letter-spacing:3.08px;outline:none}.bottom-button button i{position:absolute;top:16px;font-size:18px;font-weight:500}.bottom-button button.next i{right:16px}.bottom-button button.disabled{pointer-events:none!important;opacity:.3!important;filter:grayscale(1)!important}.bottom-button button.back{background:#f1f1f1;color:#1e5dd3}.bottom-button button.back i{left:16px}.line-progress{position:absolute;left:0;top:0;height:2px;display:block;width:100%;background-color:#d4e2fc;background-clip:padding-box;overflow:hidden}.line-progress-bar{bottom:0;width:40%;background:#34aa44;border-radius:5px;display:inline-block;position:absolute;animation:linear infinite;animation-name:run;animation-duration:1s;top:0}@keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}@keyframes run{0%{left:0}50%{left:60%}to{left:0}}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.LoaderInlineComponent, selector: "app-loader-inline" }] }); }
231
232
  }
232
233
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DocumentSectionComponent, decorators: [{
233
234
  type: Component,
234
- args: [{ selector: 'lib-document-section', template: "<div class=\"document-section\" [class.grayscale]=\"isTemplateOpened\">\n <div class=\"document-section-inner\">\n <div class=\"message-box\">\n <svg\n version=\"1.1\"\n id=\"Capa_1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n x=\"0px\"\n y=\"0px\"\n viewBox=\"0 0 480.8 480.8\"\n style=\"enable-background: new 0 0 480.8 480.8\"\n xml:space=\"preserve\"\n >\n <path\n style=\"fill: #ffd517\"\n d=\"M317.112,314.4c-22.4,22.4-19.6,67.6-19.6,67.6h-113.6c0,0,2.4-45.2-19.6-67.6\n c-24.4-21.6-40-52.8-40-87.6c0-64,52-116,116-116s116,52,116,116C356.312,261.6,341.112,292.8,317.112,314.4L317.112,314.4z\"\n />\n <g>\n <path\n style=\"fill: #e5e5e5\"\n d=\"M300.712,417.6c0,6-4.8,10.8-10.8,10.8h-98.8c-6,0-10.8-4.8-10.8-10.8l0,0c0-6,4.8-10.8,10.8-10.8\n h98.4C295.512,406.8,300.712,411.6,300.712,417.6L300.712,417.6z\"\n />\n <path\n style=\"fill: #e5e5e5\"\n d=\"M285.912,462.4c0,6-4.8,10.8-10.8,10.8h-69.2c-6,0-10.8-4.8-10.8-10.8l0,0c0-6,4.8-10.8,10.8-10.8\n h69.2C281.112,451.6,285.912,456.4,285.912,462.4L285.912,462.4z\"\n />\n </g>\n <g>\n <path\n style=\"fill: #210b20\"\n d=\"M323.112,318.4c26-23.6,40.8-56.8,40.8-91.6c0-68-55.6-123.6-123.6-123.6s-123.6,55.6-123.6,123.6\n c0,35.6,15.6,69.6,42,92.8c19.6,19.6,17.6,61.2,17.6,61.6c0,2,0.8,4,2,5.6c1.6,1.6,3.6,2.4,5.6,2.4h113.2c2,0,4-0.8,5.6-2.4\n s2-3.6,2-5.6c0-0.4-2-42,17.6-61.6C322.712,319.2,323.112,318.8,323.112,318.4z M311.912,308.4c-0.8,0.4-1.2,1.2-1.6,2\n c-17.6,18.8-20.4,49.6-20.8,64h-98c-0.4-14.8-3.6-46.8-22.4-65.6c-23.6-20.8-37.2-50.4-37.2-81.6c0-60,48.8-108.4,108.4-108.4\n c60,0,108.4,48.8,108.4,108.4C348.712,258,335.512,288,311.912,308.4z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M240.312,135.2c-4,0-7.6,3.2-7.6,7.6c0,4,3.2,7.6,7.6,7.6c44.8,0,81.2,36.4,81.2,81.2\n c0,4,3.2,7.6,7.6,7.6c4,0,7.6-3.2,7.6-7.6C336.712,178.4,293.512,135.2,240.312,135.2z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M308.312,417.6c0-10.4-8.4-18.4-18.4-18.4h-98.8c-10.4,0-18.4,8.4-18.4,18.4\n c0,10.4,8.4,18.4,18.4,18.4h98.4C299.912,436,308.312,428,308.312,417.6z M289.512,420.8h-98.4c-2,0-3.2-1.6-3.2-3.2\n c0-2,1.6-3.2,3.2-3.2h98.4c2,0,3.2,1.6,3.2,3.2C293.112,419.6,291.512,420.8,289.512,420.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M275.112,444h-69.2c-10.4,0-18.4,8.4-18.4,18.4c0,10.4,8.4,18.4,18.4,18.4h69.2\n c10.4,0,18.4-8.4,18.4-18.4C293.512,452.4,285.112,444,275.112,444z M275.112,465.6h-69.2c-2,0-3.2-1.6-3.2-3.2\n c0-2,1.6-3.2,3.2-3.2h69.2c2,0,3.2,1.6,3.2,3.2C278.312,464.4,277.112,465.6,275.112,465.6z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M247.912,58.8V7.6c0-4-3.2-7.6-7.6-7.6c-4,0-7.6,3.2-7.6,7.6v51.6c0,4,3.2,7.6,7.6,7.6\n C244.712,66.4,247.912,63.2,247.912,58.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M366.312,38c-3.6-2.4-8-1.2-10.4,2l-28.4,42.8c-2.4,3.6-1.2,8,2,10.4c1.2,0.8,2.8,1.2,4,1.2\n c2.4,0,4.8-1.2,6.4-3.2l28.4-42.8C370.712,45.2,369.512,40.4,366.312,38z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M149.912,92.8c1.2,0,2.8-0.4,4-1.2c3.6-2.4,4.4-6.8,2.4-10.4l-27.6-43.2c-2.4-3.6-6.8-4.4-10.4-2.4\n c-3.6,2.4-4.4,6.8-2.4,10.4l27.6,43.2C145.112,91.6,147.512,92.8,149.912,92.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M43.912,128.8l45.2,24.4c1.2,0.8,2.4,0.8,3.6,0.8c2.8,0,5.2-1.6,6.8-4c2-3.6,0.8-8.4-3.2-10.4\n l-45.2-24.4c-3.6-2-8.4-0.8-10.4,3.2C39.112,122.4,40.312,126.8,43.912,128.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M387.912,154.4c1.2,0,2.4-0.4,3.6-0.8l45.2-24.4c3.6-2,5.2-6.4,3.2-10.4c-2-3.6-6.4-5.2-10.4-3.2\n l-45.2,24.4c-3.6,2-5.2,6.4-3.2,10.4C382.312,152.8,385.112,154.4,387.912,154.4z\"\n />\n </g>\n </svg>\n <p>\n There are multiple ways to create a policy on VComply. You can either\n draft it from scratch using VComply's online editor or upload an\n existing DOCX or PDF file.\n </p>\n </div>\n <label\n class=\"document-box\"\n [class.active]=\"selectedDocumentType == 'draft'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('draft')\"\n [checked]=\"selectedDocumentType === 'draft'\"\n />\n <svg id=\"Draft\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20402\" data-name=\"Path 20402\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#565a6f\"/>\n <path id=\"Path_20403\" data-name=\"Path 20403\" d=\"M21.884,8.51,10.549,10.384,12.426,21.06l4.38-.61a.333.333,0,0,1,.326.435c-.051.219-.338.235-.514.267-1.474.266-3.009.388-4.491.631-.416-.032-.321-.718-.441-1l-3-.365c-.213-.12-.2-.273-.2-.492.019-.622.092-1.251.125-1.872.16-3,.316-6,.5-8.993A9.457,9.457,0,0,1,9.152,8.1a.369.369,0,0,1,.265-.3l8.519.681L22.2,7.8c.225.068.246.19.3.393.553,2.288.758,4.775,1.285,7.083.143.531-.507.731-.642.2ZM17.211,21.932a.563.563,0,0,0-.072.24,8.549,8.549,0,0,0,0,1.187c.019.217.088.393.328.421a9.138,9.138,0,0,0,1.448-.021.53.53,0,0,0,.122-.065l3.756-3.771L21,18.13Zm5.329-5.35c-.365.286-.7.757-1.061,1.062L23.3,19.437c.3-.35.777-.687,1.05-1.044.15-.2.174-.312.017-.516a13.851,13.851,0,0,0-1.327-1.327.393.393,0,0,0-.23-.1.476.476,0,0,0-.271.13\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\"><strong>Create</strong> a Policy</div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n\n \n <label\n *ngIf=\"ff_policy_ms_word_integration\"\n class=\"document-box\"\n [class.active]=\"selectedDocumentType == 'word'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('word')\"\n [checked]=\"selectedDocumentType === 'word'\"\n />\n <svg id=\"Word-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20404\" data-name=\"Path 20404\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#1e5dd3\"/>\n <path id=\"Path_20405\" data-name=\"Path 20405\" d=\"M10.419,9.718l1.889,9.121L12.44,20l.132-.885,2.152-9.4,2.626.018,2.187,9.106.174,1.132a13.4,13.4,0,0,1,.174-1.352c.5-2.954,1.188-5.88,1.7-8.832l.04-.07H24L21.085,22.281l-2.818-.026L15.931,12.22l-.16,1.077-2.015,8.986-2.829-.028L8,9.718Z\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">{{createWordPolicyText}}</div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n\n\n\n <label\n class=\"document-box\"\n *ngIf=\"showDocxBlock\"\n [class.active]=\"selectedDocumentType == 'docx' && !docxError?.visible\"\n [class.error]=\"docxError?.visible\"\n >\n <input\n type=\"file\"\n accept=\".docx\"\n id=\"DOCfile\"\n (change)=\"handleFileInput($event.target.files)\"\n onclick=\"event.stopPropagation();\"\n #docxUploadButton\n />\n <svg id=\"Word-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20404\" data-name=\"Path 20404\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#1e5dd3\"/>\n <path id=\"Path_20405\" data-name=\"Path 20405\" d=\"M10.419,9.718l1.889,9.121L12.44,20l.132-.885,2.152-9.4,2.626.018,2.187,9.106.174,1.132a13.4,13.4,0,0,1,.174-1.352c.5-2.954,1.188-5.88,1.7-8.832l.04-.07H24L21.085,22.281l-2.818-.026L15.931,12.22l-.16,1.077-2.015,8.986-2.829-.028L8,9.718Z\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">\n <ng-container *ngIf=\"!(selectedDocumentType == 'docx' && filename)\"\n >Upload a <strong>DOCX</strong></ng-container\n >\n <ng-container *ngIf=\"selectedDocumentType == 'docx' && filename\">{{\n filename\n }}</ng-container>\n </div>\n <div class=\"error-msg-text\" *ngIf=\"docxError?.visible\">\n {{ docxError?.message }}\n </div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea97;</i>\n <div class=\"check-circle\" *ngIf=\"!docxError?.visible\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n <i class=\"icons error-icon\" *ngIf=\"docxError?.visible\">&#xe914;</i>\n </div>\n <div\n class=\"line-progress\"\n *ngIf=\"selectedDocumentType == 'docx' && isUploading\"\n >\n <div class=\"line-progress-bar\"></div>\n </div>\n </label>\n <label\n class=\"document-box\"\n *ngIf=\"showPdfBlock\"\n [class.active]=\"selectedDocumentType == 'pdf'\"\n >\n <input\n type=\"file\"\n accept=\".pdf\"\n id=\"PDFfile\"\n (change)=\"handleFileInput($event.target.files)\"\n onclick=\"event.stopPropagation();\"\n #pdfUploadButton\n />\n <svg id=\"PDF-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20408\" data-name=\"Path 20408\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#a82a1d\"/>\n <path id=\"Path_20409\" data-name=\"Path 20409\" d=\"M16.125,13.778A1.39,1.39,0,0,0,16.285,15a16.106,16.106,0,0,0,2.106,2.554c.312-.045.6-.047,1.2-.092a6.964,6.964,0,0,1,3.616.239,1.31,1.31,0,0,1,.784,1.361,1.176,1.176,0,0,1-1.075.981c-2.224.336-3.305-.9-4.579-1.746a2.094,2.094,0,0,0-.812.021,25.782,25.782,0,0,0-3.412.916c-.253.089-.338.3-.533.609a11.062,11.062,0,0,1-2.82,3.427,2.145,2.145,0,0,1-1.861.445c-1-.222-1.178-1.182-.5-1.942A9.452,9.452,0,0,1,10,20.462a14.714,14.714,0,0,1,2.418-1.109c.491-.461.556-.686.966-1.764.431-1.136.922-2.25,1.324-3.4a1.679,1.679,0,0,0-.035-1.062,7.7,7.7,0,0,1-.638-3.476,1.4,1.4,0,0,1,.959-1.393,1.279,1.279,0,0,1,1.464.8c.2.479.552,1.75-.331,4.728m-.377,1.377-1.418,3.422,3.353-.883-1.935-2.539m3.222,2.882A4.5,4.5,0,0,0,21.92,19.37c.377,0,.714-.131.733-.6.051-1.251-2.656-.864-3.682-.73m-6.96,2.037a9.788,9.788,0,0,0-2.975,1.8c-.218.171-.446.718-.282.984s.81.067,1-.12a9.29,9.29,0,0,0,2.253-2.664m3.246-7.243c-.045-.878.461-2.172.437-3.224-.008-.355-.051-.747-.5-.772-.364-.02-.534.476-.569.762a5.8,5.8,0,0,0,.636,3.234\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">\n <ng-container *ngIf=\"!(selectedDocumentType == 'pdf' && filename)\"\n >Upload a <strong>PDF</strong></ng-container\n >\n <ng-container *ngIf=\"selectedDocumentType == 'pdf' && filename\">{{\n filename\n }}</ng-container>\n </div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea97;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n <div\n class=\"line-progress\"\n *ngIf=\"selectedDocumentType == 'pdf' && isUploading\"\n >\n <div class=\"line-progress-bar\"></div>\n </div>\n </label>\n <!-- Select a template -->\n <label\n class=\"document-box\"\n [class.active]=\"selectedDocumentType === 'template'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('template')\"\n [checked]=\"selectedDocumentType === 'template'\"\n />\n <svg id=\"TMP-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20406\" data-name=\"Path 20406\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#34aa44\"/>\n <path id=\"Path_20410\" data-name=\"Path 20410\" d=\"M16,1.778V3.555H0V1.778A1.783,1.783,0,0,1,1.778,0H14.223A1.783,1.783,0,0,1,16,1.778M0,4.444H16v8.889a1.778,1.778,0,0,1-1.777,1.778H1.778A1.778,1.778,0,0,1,0,13.333ZM6.99,9.928A.891.891,0,0,0,6.1,9.039H3.642a.891.891,0,0,0-.888.889v2.456a.891.891,0,0,0,.888.889H6.1a.891.891,0,0,0,.888-.889Zm6.306,0a.892.892,0,0,0-.889-.889H9.948a.891.891,0,0,0-.888.889v2.456a.891.891,0,0,0,.888.889h2.459a.892.892,0,0,0,.889-.889ZM2.667,7.111A.889.889,0,0,0,3.556,8h8.889a.889.889,0,0,0,0-1.778H3.556a.889.889,0,0,0-.889.889\" transform=\"translate(8 7.999)\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">Draft Using a <strong>Template</strong></div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n <!-- End Select a template -->\n <app-loader-inline *ngIf=\"isLoader\"></app-loader-inline>\n </div>\n</div>\n<div class=\"bottom-button\" [class.grayscale]=\"isTemplateOpened\">\n <button\n type=\"button\"\n (click)=\"editPolicyEmit()\"\n class=\"back\"\n [class.disabled]=\"isTemplateOpened\"\n >\n <i class=\"icons\">&#xe91d;</i> Back\n </button>\n <button\n type=\"button\"\n (click)=\"editor(selectedDocumentType)\"\n class=\"next\"\n [class.disabled]=\"!selectedDocumentType || isTemplateOpened || isLoader\"\n >\n Next <i class=\"icons\">&#xe91e;</i>\n </button>\n</div>\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";::ng-deep .document-section{display:flex;align-items:center;height:calc(100vh - 50px);position:absolute;top:0;right:0;background:#fff;z-index:10;padding:50px;width:100%;overflow:hidden;overflow-y:scroll}@media screen and (max-width: 1365px){::ng-deep .document-section{align-items:unset}}::ng-deep .document-section.grayscale{filter:grayscale(1)!important;pointer-events:none!important}::ng-deep .document-section-inner .message-box{background:#fbfbfb;border-radius:4px;border:1px solid #f1f1f1;padding:16px 8px 12px 16px;margin-bottom:20px;display:flex;align-items:flex-start}::ng-deep .document-section-inner .message-box svg{background:#fff;width:33px;min-width:33px;border-radius:4px;box-shadow:0 3px 6px #1e5dd333;margin-right:12px;padding:4px}::ng-deep .document-section-inner .message-box p{font-size:12px;font-weight:500;color:#787a8c;margin:0}::ng-deep .document-section-inner .document-box{position:relative;cursor:pointer;display:flex;align-items:center;justify-content:space-between;border:1px solid #CDCED6;border-radius:8px;width:100%;background:transparent;height:64px;padding:0 16px;margin-bottom:8px}::ng-deep .document-section-inner .document-box.error{border:1px solid #dbdbdb}::ng-deep .document-section-inner .document-box input{width:100%;position:absolute;inset:0;margin:0;padding:0;z-index:1;opacity:0;height:100%;pointer-events:none}::ng-deep .document-section-inner .document-box svg.doc-svg{width:82px}::ng-deep .document-section-inner .document-box .label-right{width:calc(100% - 64px);display:flex;align-items:center;justify-content:center;position:relative}::ng-deep .document-section-inner .document-box .label-right .value{font-size:16px;font-weight:500;line-height:24px;color:#000;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;word-break:break-word;width:270px;margin-right:25px}::ng-deep .document-section-inner .document-box .label-right .value strong{font-weight:500}::ng-deep .document-section-inner .document-box .label-right .error-msg-text{color:#d93b41;font-size:10px;position:absolute;top:24px;left:0;right:0;width:250px}::ng-deep .document-section-inner .document-box .label-right .check-circle{display:none;width:16px;height:16px;position:absolute;right:8px;top:2px}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon{width:16px;height:16px;background:#ddf4e0;border-radius:50%;stroke-width:4;stroke:#34aa44;stroke-miterlimit:10;box-shadow:inset 0 0 #34aa44;animation:fillCheck .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;margin-right:10px;position:static}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon__circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:#34aa44;fill:none;animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards}::ng-deep .document-section-inner .document-box .label-right .error-icon{color:#d93b41;font-size:16px;position:relative;top:0;right:8px}::ng-deep .document-section-inner .document-box.active{background:#ddf4e0;border:1px solid #B7E2BD}::ng-deep .document-section-inner .document-box.active .document-box-icon{display:none}::ng-deep .document-section-inner .document-box.active .label-right .check-circle{display:block}::ng-deep .document-section-inner .document-box.error{background:#ffeaea;border:1px solid #d93b41}::ng-deep .document-section-inner .document-box-icon{color:#565a6f}.bottom-button{background:#fff;display:flex;align-items:center;position:absolute;bottom:0;right:0;width:100%;z-index:10}.bottom-button button{background:#1e5dd3;border:none;border-radius:0;color:#fff;font-size:13px;font-weight:600;text-transform:uppercase;width:100%;padding:0;position:relative;margin:0!important;height:50px;display:flex;align-items:center;justify-content:center;line-height:19px;letter-spacing:3.08px;outline:none}.bottom-button button i{position:absolute;top:16px;font-size:18px;font-weight:500}.bottom-button button.next i{right:16px}.bottom-button button.disabled{pointer-events:none!important;opacity:.3!important;filter:grayscale(1)!important}.bottom-button button.back{background:#f1f1f1;color:#1e5dd3}.bottom-button button.back i{left:16px}.line-progress{position:absolute;left:0;top:0;height:2px;display:block;width:100%;background-color:#d4e2fc;background-clip:padding-box;overflow:hidden}.line-progress-bar{bottom:0;width:40%;background:#34aa44;border-radius:5px;display:inline-block;position:absolute;animation:linear infinite;animation-name:run;animation-duration:1s;top:0}@keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}@keyframes run{0%{left:0}50%{left:60%}to{left:0}}\n"] }]
235
+ args: [{ selector: 'lib-document-section', template: "<div class=\"document-section\" [class.grayscale]=\"isTemplateOpened\">\n <div class=\"document-section-inner\">\n <div class=\"message-box\">\n <svg\n version=\"1.1\"\n id=\"Capa_1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n x=\"0px\"\n y=\"0px\"\n viewBox=\"0 0 480.8 480.8\"\n style=\"enable-background: new 0 0 480.8 480.8\"\n xml:space=\"preserve\"\n >\n <path\n style=\"fill: #ffd517\"\n d=\"M317.112,314.4c-22.4,22.4-19.6,67.6-19.6,67.6h-113.6c0,0,2.4-45.2-19.6-67.6\n c-24.4-21.6-40-52.8-40-87.6c0-64,52-116,116-116s116,52,116,116C356.312,261.6,341.112,292.8,317.112,314.4L317.112,314.4z\"\n />\n <g>\n <path\n style=\"fill: #e5e5e5\"\n d=\"M300.712,417.6c0,6-4.8,10.8-10.8,10.8h-98.8c-6,0-10.8-4.8-10.8-10.8l0,0c0-6,4.8-10.8,10.8-10.8\n h98.4C295.512,406.8,300.712,411.6,300.712,417.6L300.712,417.6z\"\n />\n <path\n style=\"fill: #e5e5e5\"\n d=\"M285.912,462.4c0,6-4.8,10.8-10.8,10.8h-69.2c-6,0-10.8-4.8-10.8-10.8l0,0c0-6,4.8-10.8,10.8-10.8\n h69.2C281.112,451.6,285.912,456.4,285.912,462.4L285.912,462.4z\"\n />\n </g>\n <g>\n <path\n style=\"fill: #210b20\"\n d=\"M323.112,318.4c26-23.6,40.8-56.8,40.8-91.6c0-68-55.6-123.6-123.6-123.6s-123.6,55.6-123.6,123.6\n c0,35.6,15.6,69.6,42,92.8c19.6,19.6,17.6,61.2,17.6,61.6c0,2,0.8,4,2,5.6c1.6,1.6,3.6,2.4,5.6,2.4h113.2c2,0,4-0.8,5.6-2.4\n s2-3.6,2-5.6c0-0.4-2-42,17.6-61.6C322.712,319.2,323.112,318.8,323.112,318.4z M311.912,308.4c-0.8,0.4-1.2,1.2-1.6,2\n c-17.6,18.8-20.4,49.6-20.8,64h-98c-0.4-14.8-3.6-46.8-22.4-65.6c-23.6-20.8-37.2-50.4-37.2-81.6c0-60,48.8-108.4,108.4-108.4\n c60,0,108.4,48.8,108.4,108.4C348.712,258,335.512,288,311.912,308.4z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M240.312,135.2c-4,0-7.6,3.2-7.6,7.6c0,4,3.2,7.6,7.6,7.6c44.8,0,81.2,36.4,81.2,81.2\n c0,4,3.2,7.6,7.6,7.6c4,0,7.6-3.2,7.6-7.6C336.712,178.4,293.512,135.2,240.312,135.2z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M308.312,417.6c0-10.4-8.4-18.4-18.4-18.4h-98.8c-10.4,0-18.4,8.4-18.4,18.4\n c0,10.4,8.4,18.4,18.4,18.4h98.4C299.912,436,308.312,428,308.312,417.6z M289.512,420.8h-98.4c-2,0-3.2-1.6-3.2-3.2\n c0-2,1.6-3.2,3.2-3.2h98.4c2,0,3.2,1.6,3.2,3.2C293.112,419.6,291.512,420.8,289.512,420.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M275.112,444h-69.2c-10.4,0-18.4,8.4-18.4,18.4c0,10.4,8.4,18.4,18.4,18.4h69.2\n c10.4,0,18.4-8.4,18.4-18.4C293.512,452.4,285.112,444,275.112,444z M275.112,465.6h-69.2c-2,0-3.2-1.6-3.2-3.2\n c0-2,1.6-3.2,3.2-3.2h69.2c2,0,3.2,1.6,3.2,3.2C278.312,464.4,277.112,465.6,275.112,465.6z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M247.912,58.8V7.6c0-4-3.2-7.6-7.6-7.6c-4,0-7.6,3.2-7.6,7.6v51.6c0,4,3.2,7.6,7.6,7.6\n C244.712,66.4,247.912,63.2,247.912,58.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M366.312,38c-3.6-2.4-8-1.2-10.4,2l-28.4,42.8c-2.4,3.6-1.2,8,2,10.4c1.2,0.8,2.8,1.2,4,1.2\n c2.4,0,4.8-1.2,6.4-3.2l28.4-42.8C370.712,45.2,369.512,40.4,366.312,38z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M149.912,92.8c1.2,0,2.8-0.4,4-1.2c3.6-2.4,4.4-6.8,2.4-10.4l-27.6-43.2c-2.4-3.6-6.8-4.4-10.4-2.4\n c-3.6,2.4-4.4,6.8-2.4,10.4l27.6,43.2C145.112,91.6,147.512,92.8,149.912,92.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M43.912,128.8l45.2,24.4c1.2,0.8,2.4,0.8,3.6,0.8c2.8,0,5.2-1.6,6.8-4c2-3.6,0.8-8.4-3.2-10.4\n l-45.2-24.4c-3.6-2-8.4-0.8-10.4,3.2C39.112,122.4,40.312,126.8,43.912,128.8z\"\n />\n <path\n style=\"fill: #210b20\"\n d=\"M387.912,154.4c1.2,0,2.4-0.4,3.6-0.8l45.2-24.4c3.6-2,5.2-6.4,3.2-10.4c-2-3.6-6.4-5.2-10.4-3.2\n l-45.2,24.4c-3.6,2-5.2,6.4-3.2,10.4C382.312,152.8,385.112,154.4,387.912,154.4z\"\n />\n </g>\n </svg>\n <p>\n There are multiple ways to create a policy on VComply. You can either\n draft it from scratch using VComply's online editor or upload an\n existing DOCX or PDF file.\n </p>\n </div>\n <label\n class=\"document-box\"\n [class.active]=\"selectedDocumentType == 'draft'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('draft')\"\n [checked]=\"selectedDocumentType === 'draft'\"\n />\n <svg id=\"Draft\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20402\" data-name=\"Path 20402\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#565a6f\"/>\n <path id=\"Path_20403\" data-name=\"Path 20403\" d=\"M21.884,8.51,10.549,10.384,12.426,21.06l4.38-.61a.333.333,0,0,1,.326.435c-.051.219-.338.235-.514.267-1.474.266-3.009.388-4.491.631-.416-.032-.321-.718-.441-1l-3-.365c-.213-.12-.2-.273-.2-.492.019-.622.092-1.251.125-1.872.16-3,.316-6,.5-8.993A9.457,9.457,0,0,1,9.152,8.1a.369.369,0,0,1,.265-.3l8.519.681L22.2,7.8c.225.068.246.19.3.393.553,2.288.758,4.775,1.285,7.083.143.531-.507.731-.642.2ZM17.211,21.932a.563.563,0,0,0-.072.24,8.549,8.549,0,0,0,0,1.187c.019.217.088.393.328.421a9.138,9.138,0,0,0,1.448-.021.53.53,0,0,0,.122-.065l3.756-3.771L21,18.13Zm5.329-5.35c-.365.286-.7.757-1.061,1.062L23.3,19.437c.3-.35.777-.687,1.05-1.044.15-.2.174-.312.017-.516a13.851,13.851,0,0,0-1.327-1.327.393.393,0,0,0-.23-.1.476.476,0,0,0-.271.13\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\"><strong>Create</strong> a Policy</div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n\n \n <label\n *ngIf=\"is_ms_word_integrated\"\n class=\"document-box\"\n [class.active]=\"selectedDocumentType == 'word'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('word')\"\n [checked]=\"selectedDocumentType === 'word'\"\n />\n <svg id=\"Word-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20404\" data-name=\"Path 20404\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#1e5dd3\"/>\n <path id=\"Path_20405\" data-name=\"Path 20405\" d=\"M10.419,9.718l1.889,9.121L12.44,20l.132-.885,2.152-9.4,2.626.018,2.187,9.106.174,1.132a13.4,13.4,0,0,1,.174-1.352c.5-2.954,1.188-5.88,1.7-8.832l.04-.07H24L21.085,22.281l-2.818-.026L15.931,12.22l-.16,1.077-2.015,8.986-2.829-.028L8,9.718Z\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">{{createWordPolicyText}}</div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n\n\n\n <label\n class=\"document-box\"\n *ngIf=\"showDocxBlock\"\n [class.active]=\"selectedDocumentType == 'docx' && !docxError?.visible\"\n [class.error]=\"docxError?.visible\"\n >\n <input\n type=\"file\"\n accept=\".docx\"\n id=\"DOCfile\"\n (change)=\"handleFileInput($event.target.files)\"\n onclick=\"event.stopPropagation();\"\n #docxUploadButton\n />\n <svg id=\"Word-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20404\" data-name=\"Path 20404\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#1e5dd3\"/>\n <path id=\"Path_20405\" data-name=\"Path 20405\" d=\"M10.419,9.718l1.889,9.121L12.44,20l.132-.885,2.152-9.4,2.626.018,2.187,9.106.174,1.132a13.4,13.4,0,0,1,.174-1.352c.5-2.954,1.188-5.88,1.7-8.832l.04-.07H24L21.085,22.281l-2.818-.026L15.931,12.22l-.16,1.077-2.015,8.986-2.829-.028L8,9.718Z\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">\n <ng-container *ngIf=\"!(selectedDocumentType == 'docx' && filename)\"\n >Upload a <strong>DOCX</strong></ng-container\n >\n <ng-container *ngIf=\"selectedDocumentType == 'docx' && filename\">{{\n filename\n }}</ng-container>\n </div>\n <div class=\"error-msg-text\" *ngIf=\"docxError?.visible\">\n {{ docxError?.message }}\n </div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea97;</i>\n <div class=\"check-circle\" *ngIf=\"!docxError?.visible\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n <i class=\"icons error-icon\" *ngIf=\"docxError?.visible\">&#xe914;</i>\n </div>\n <div\n class=\"line-progress\"\n *ngIf=\"selectedDocumentType == 'docx' && isUploading\"\n >\n <div class=\"line-progress-bar\"></div>\n </div>\n </label>\n <label\n class=\"document-box\"\n *ngIf=\"showPdfBlock\"\n [class.active]=\"selectedDocumentType == 'pdf'\"\n >\n <input\n type=\"file\"\n accept=\".pdf\"\n id=\"PDFfile\"\n (change)=\"handleFileInput($event.target.files)\"\n onclick=\"event.stopPropagation();\"\n #pdfUploadButton\n />\n <svg id=\"PDF-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20408\" data-name=\"Path 20408\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#a82a1d\"/>\n <path id=\"Path_20409\" data-name=\"Path 20409\" d=\"M16.125,13.778A1.39,1.39,0,0,0,16.285,15a16.106,16.106,0,0,0,2.106,2.554c.312-.045.6-.047,1.2-.092a6.964,6.964,0,0,1,3.616.239,1.31,1.31,0,0,1,.784,1.361,1.176,1.176,0,0,1-1.075.981c-2.224.336-3.305-.9-4.579-1.746a2.094,2.094,0,0,0-.812.021,25.782,25.782,0,0,0-3.412.916c-.253.089-.338.3-.533.609a11.062,11.062,0,0,1-2.82,3.427,2.145,2.145,0,0,1-1.861.445c-1-.222-1.178-1.182-.5-1.942A9.452,9.452,0,0,1,10,20.462a14.714,14.714,0,0,1,2.418-1.109c.491-.461.556-.686.966-1.764.431-1.136.922-2.25,1.324-3.4a1.679,1.679,0,0,0-.035-1.062,7.7,7.7,0,0,1-.638-3.476,1.4,1.4,0,0,1,.959-1.393,1.279,1.279,0,0,1,1.464.8c.2.479.552,1.75-.331,4.728m-.377,1.377-1.418,3.422,3.353-.883-1.935-2.539m3.222,2.882A4.5,4.5,0,0,0,21.92,19.37c.377,0,.714-.131.733-.6.051-1.251-2.656-.864-3.682-.73m-6.96,2.037a9.788,9.788,0,0,0-2.975,1.8c-.218.171-.446.718-.282.984s.81.067,1-.12a9.29,9.29,0,0,0,2.253-2.664m3.246-7.243c-.045-.878.461-2.172.437-3.224-.008-.355-.051-.747-.5-.772-.364-.02-.534.476-.569.762a5.8,5.8,0,0,0,.636,3.234\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">\n <ng-container *ngIf=\"!(selectedDocumentType == 'pdf' && filename)\"\n >Upload a <strong>PDF</strong></ng-container\n >\n <ng-container *ngIf=\"selectedDocumentType == 'pdf' && filename\">{{\n filename\n }}</ng-container>\n </div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea97;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n <div\n class=\"line-progress\"\n *ngIf=\"selectedDocumentType == 'pdf' && isUploading\"\n >\n <div class=\"line-progress-bar\"></div>\n </div>\n </label>\n <!-- Select a template -->\n <label\n class=\"document-box\"\n [class.active]=\"selectedDocumentType === 'template'\"\n >\n <input\n type=\"radio\"\n name=\"selectedDocumentType\"\n (change)=\"changeDocType('template')\"\n [checked]=\"selectedDocumentType === 'template'\"\n />\n <svg id=\"TMP-Icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\">\n <path id=\"Path_20406\" data-name=\"Path 20406\" d=\"M28,32H4a4,4,0,0,1-4-4V4A4,4,0,0,1,4,0H28a4,4,0,0,1,4,4V28a4,4,0,0,1-4,4\" fill=\"#34aa44\"/>\n <path id=\"Path_20410\" data-name=\"Path 20410\" d=\"M16,1.778V3.555H0V1.778A1.783,1.783,0,0,1,1.778,0H14.223A1.783,1.783,0,0,1,16,1.778M0,4.444H16v8.889a1.778,1.778,0,0,1-1.777,1.778H1.778A1.778,1.778,0,0,1,0,13.333ZM6.99,9.928A.891.891,0,0,0,6.1,9.039H3.642a.891.891,0,0,0-.888.889v2.456a.891.891,0,0,0,.888.889H6.1a.891.891,0,0,0,.888-.889Zm6.306,0a.892.892,0,0,0-.889-.889H9.948a.891.891,0,0,0-.888.889v2.456a.891.891,0,0,0,.888.889h2.459a.892.892,0,0,0,.889-.889ZM2.667,7.111A.889.889,0,0,0,3.556,8h8.889a.889.889,0,0,0,0-1.778H3.556a.889.889,0,0,0-.889.889\" transform=\"translate(8 7.999)\" fill=\"#fff\"/>\n </svg>\n \n <div class=\"label-right\">\n <div class=\"value\">Draft Using a <strong>Template</strong></div>\n <i class=\"icons document-box-icon vx-fs-16 vx-mr-2\">&#xea46;</i>\n <div class=\"check-circle\">\n <svg\n class=\"checkIcon\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 52 52\"\n >\n <circle\n class=\"checkIcon__circle\"\n cx=\"26\"\n cy=\"26\"\n r=\"25\"\n fill=\"none\"\n />\n <path\n class=\"checkIcon__check\"\n fill=\"none\"\n d=\"M14.1 27.2l7.1 7.2 16.7-16.8\"\n />\n </svg>\n </div>\n </div>\n </label>\n <!-- End Select a template -->\n <app-loader-inline *ngIf=\"isLoader\"></app-loader-inline>\n </div>\n</div>\n<div class=\"bottom-button\" [class.grayscale]=\"isTemplateOpened\">\n <button\n type=\"button\"\n (click)=\"editPolicyEmit()\"\n class=\"back\"\n [class.disabled]=\"isTemplateOpened\"\n >\n <i class=\"icons\">&#xe91d;</i> Back\n </button>\n <button\n type=\"button\"\n (click)=\"editor(selectedDocumentType)\"\n class=\"next\"\n [class.disabled]=\"!selectedDocumentType || isTemplateOpened || isLoader\"\n >\n Next <i class=\"icons\">&#xe91e;</i>\n </button>\n</div>\n", styles: ["@import\"https://cdn.v-comply.com/design-system/css/icons/icons.css\";::ng-deep .document-section{display:flex;align-items:center;height:calc(100vh - 50px);position:absolute;top:0;right:0;background:#fff;z-index:10;padding:50px;width:100%;overflow:hidden;overflow-y:scroll}@media screen and (max-width: 1365px){::ng-deep .document-section{align-items:unset}}::ng-deep .document-section.grayscale{filter:grayscale(1)!important;pointer-events:none!important}::ng-deep .document-section-inner .message-box{background:#fbfbfb;border-radius:4px;border:1px solid #f1f1f1;padding:16px 8px 12px 16px;margin-bottom:20px;display:flex;align-items:flex-start}::ng-deep .document-section-inner .message-box svg{background:#fff;width:33px;min-width:33px;border-radius:4px;box-shadow:0 3px 6px #1e5dd333;margin-right:12px;padding:4px}::ng-deep .document-section-inner .message-box p{font-size:12px;font-weight:500;color:#787a8c;margin:0}::ng-deep .document-section-inner .document-box{position:relative;cursor:pointer;display:flex;align-items:center;justify-content:space-between;border:1px solid #CDCED6;border-radius:8px;width:100%;background:transparent;height:64px;padding:0 16px;margin-bottom:8px}::ng-deep .document-section-inner .document-box.error{border:1px solid #dbdbdb}::ng-deep .document-section-inner .document-box input{width:100%;position:absolute;inset:0;margin:0;padding:0;z-index:1;opacity:0;height:100%;pointer-events:none}::ng-deep .document-section-inner .document-box svg.doc-svg{width:82px}::ng-deep .document-section-inner .document-box .label-right{width:calc(100% - 64px);display:flex;align-items:center;justify-content:center;position:relative}::ng-deep .document-section-inner .document-box .label-right .value{font-size:16px;font-weight:500;line-height:24px;color:#000;overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;word-break:break-word;width:270px;margin-right:25px}::ng-deep .document-section-inner .document-box .label-right .value strong{font-weight:500}::ng-deep .document-section-inner .document-box .label-right .error-msg-text{color:#d93b41;font-size:10px;position:absolute;top:24px;left:0;right:0;width:250px}::ng-deep .document-section-inner .document-box .label-right .check-circle{display:none;width:16px;height:16px;position:absolute;right:8px;top:2px}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon{width:16px;height:16px;background:#ddf4e0;border-radius:50%;stroke-width:4;stroke:#34aa44;stroke-miterlimit:10;box-shadow:inset 0 0 #34aa44;animation:fillCheck .4s ease-in-out .4s forwards,scale .3s ease-in-out .9s both;margin-right:10px;position:static}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon__circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:#34aa44;fill:none;animation:strokeCheck .6s cubic-bezier(.65,0,.45,1) forwards}::ng-deep .document-section-inner .document-box .label-right .check-circle .checkIcon__check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;animation:strokeCheck .3s cubic-bezier(.65,0,.45,1) .8s forwards}::ng-deep .document-section-inner .document-box .label-right .error-icon{color:#d93b41;font-size:16px;position:relative;top:0;right:8px}::ng-deep .document-section-inner .document-box.active{background:#ddf4e0;border:1px solid #B7E2BD}::ng-deep .document-section-inner .document-box.active .document-box-icon{display:none}::ng-deep .document-section-inner .document-box.active .label-right .check-circle{display:block}::ng-deep .document-section-inner .document-box.error{background:#ffeaea;border:1px solid #d93b41}::ng-deep .document-section-inner .document-box-icon{color:#565a6f}.bottom-button{background:#fff;display:flex;align-items:center;position:absolute;bottom:0;right:0;width:100%;z-index:10}.bottom-button button{background:#1e5dd3;border:none;border-radius:0;color:#fff;font-size:13px;font-weight:600;text-transform:uppercase;width:100%;padding:0;position:relative;margin:0!important;height:50px;display:flex;align-items:center;justify-content:center;line-height:19px;letter-spacing:3.08px;outline:none}.bottom-button button i{position:absolute;top:16px;font-size:18px;font-weight:500}.bottom-button button.next i{right:16px}.bottom-button button.disabled{pointer-events:none!important;opacity:.3!important;filter:grayscale(1)!important}.bottom-button button.back{background:#f1f1f1;color:#1e5dd3}.bottom-button button.back i{left:16px}.line-progress{position:absolute;left:0;top:0;height:2px;display:block;width:100%;background-color:#d4e2fc;background-clip:padding-box;overflow:hidden}.line-progress-bar{bottom:0;width:40%;background:#34aa44;border-radius:5px;display:inline-block;position:absolute;animation:linear infinite;animation-name:run;animation-duration:1s;top:0}@keyframes strokeCheck{to{stroke-dashoffset:0}}@keyframes fillCheck{to{box-shadow:inset 0 0 0 2px #34aa44}}@keyframes run{0%{left:0}50%{left:60%}to{left:0}}\n"] }]
235
236
  }], ctorParameters: function () { return [{ type: i1.SnackBarService }, { type: i2.PolicyService }, { type: i3.PolicyAPIService }, { type: i4.Router }, { type: i4.ActivatedRoute }, { type: i5.PlatformLocation }, { type: i6.IframeService }]; }, propDecorators: { selectedDocumentType: [{
236
237
  type: Input
237
238
  }], feature: [{
@@ -259,4 +260,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
259
260
  }], openTemplate: [{
260
261
  type: Output
261
262
  }] } });
262
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2RvY3VtZW50LXNlY3Rpb24vZG9jdW1lbnQtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2RvY3VtZW50LXNlY3Rpb24vZG9jdW1lbnQtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBTXZCLE9BQU8sRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7Ozs7O0FBTzdGLE1BQU0sT0FBTyx3QkFBd0I7SUFnQ25DLFlBQ1UsUUFBeUIsRUFDekIsYUFBNEIsRUFDNUIsZ0JBQWtDLEVBQ2xDLE1BQWMsRUFDZCxLQUFxQixFQUM3QixnQkFBa0MsRUFDMUIsYUFBNEI7UUFONUIsYUFBUSxHQUFSLFFBQVEsQ0FBaUI7UUFDekIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFFckIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFyQ3RDLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2QsUUFBRyxHQUFHLEtBQUssQ0FBQztRQUNaLFVBQUssR0FBRyxLQUFLLENBQUM7UUFDZCxRQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ1osZ0JBQVcsR0FBRyxL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QUFDO1NBQy9EO1FBQ0QsWUFBWSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFDRCxjQUFjO1FBQ1osSUFBSSxDQUFDLG9CQUFvQixHQUFHLEVBQUUsQ0FBQztRQUMvQixZQUFZLENBQUMsT0FBTyxDQUNsQixxQkFBcUIsRUFDckIsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUNiLElBQUksRUFBRSxJQUFJLENBQUMsb0JBQW9CO1lBQy9CLElBQUksRUFBRSxJQUFJLENBQUMsUUFBUTtZQUNuQixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVE7U0FDeEIsQ0FBQyxDQUNILENBQUM7UUFDRixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNCLENBQUM7K0dBMVFVLHdCQUF3QjttR0FBeEIsd0JBQXdCLHNmQ3RCckMsaXNoQkFvV0E7OzRGRDlVYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0Usc0JBQXNCOzhRQWdCdkIsb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDSSxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFDRyxZQUFZO3NCQUFyQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGxhdGZvcm1Mb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBTbmFja0JhclNlcnZpY2UgfSBmcm9tICcuLi8uLi91aS1raXQvc25hY2stYmFyL3NuYWNrLWJhci5zZXJ2aWNlJztcbmltcG9ydCB7IFBvbGljeVNlcnZpY2UgfSBmcm9tICcuLi8uLi93b3JrZmxvdy1zZXJ2aWNlcy9wb2xpY3kuc2VydmljZSc7XG5pbXBvcnQgeyBQb2xpY3lBUElTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vd29ya2Zsb3ctc2VydmljZXMvcG9saWN5LWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IElmcmFtZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9pZnJhbWUuc2VydmljZSc7XG5pbXBvcnQgeyBXT1JEX0NPTlNUQU5UUywgV09SRF9VUkxfQ09OU1RBTlRTIH0gZnJvbSAnLi4vLi4vd29ya2Zsb3ctcG9saWN5L21zLXdvcmQuY29uc3RhbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLWRvY3VtZW50LXNlY3Rpb24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZG9jdW1lbnQtc2VjdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RvY3VtZW50LXNlY3Rpb24uY29tcG9uZW50Lmxlc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRG9jdW1lbnRTZWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBwcml2YXRlIGZpbGVUb1VwbG9hZDogYW55O1xuICBmaWxlbmFtZSA9ICcnO1xuICBmaWxlVHlwZSA9ICcnO1xuICBwZGYgPSBmYWxzZTtcbiAgZHJhZnQgPSBmYWxzZTtcbiAgZG9jID0gZmFsc2U7XG4gIGlzVXBsb2FkaW5nID0gZmFsc2U7XG4gIGlzTG9hZGVyID0gZmFsc2U7XG4gIGZmX3BvbGljeV9tc193b3JkX2ludGVncmF0aW9uOiBib29sZWFuID0gZmFsc2U7XG4gIGNyZWF0ZVdvcmRQb2xpY3lUZXh0ID0gV09SRF9DT05TVEFOVFMuTVNfV09SRF9PUFRJT047XG5cbiAgQElucHV0KCkgc2VsZWN0ZWREb2N1bWVudFR5cGUgPSAnJztcbiAgQElucHV0KCkgZmVhdHVyZTogYW55O1xuICBASW5wdXQoKSB0ZW1wbGF0ZVZpZXcgPSBmYWxzZTtcbiAgQElucHV0KCkgcG9saWN5SWQ6IGFueSA9ICcnO1xuICBASW5wdXQoKSBwb2xpY3lOYW1lOiBhbnkgPSAnJztcbiAgQElucHV0KCkgb3JnYW5pemF0aW9uX2lkOiBhbnkgPSAnJztcbiAgQElucHV0KCkgbWVtYmVyX29ial9pZDogYW55O1xuICBASW5wdXQoKSB1c2VySW5mbzogYW55O1xuICBASW5wdXQoKSB0ZW1wbGF0ZVVybDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIGlzVGVtcGxhdGVPcGVuZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQE91dHB1dCgpIGRpc2Nvbm5lY3RSZWZyZXNoID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgZWRpdFBvbGljeSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIG9wZW5UZW1wbGF0ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBiYXNlVVJMID0gJyc7XG4gIGRvY3hFcnJvciA9IHtcbiAgICB2aXNpYmxlOiBmYWxzZSxcbiAgICBtZXNzYWdlOiAnJyxcbiAgfTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNuYWNrQmFyOiBTbmFja0JhclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwb2xpY3lTZXJ2aWNlOiBQb2xpY3lTZXJ2aWNlLFxuICAgIHByaXZhdGUgcG9saWN5QVBJU2VydmljZTogUG9saWN5QVBJU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHBsYXRmb3JtTG9jYXRpb246IFBsYXRmb3JtTG9jYXRpb24sXG4gICAgcHJpdmF0ZSBpZnJhbWVTZXJ2aWNlOiBJZnJhbWVTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuYmFzZVVSTCA9IGxvY2F0aW9uPy5vcmlnaW47XG4gICAgaWYgKHRoaXMuYmFzZVVSTCA9PSAnaHR0cDovL2xvY2FsaG9zdDo0MjAwJykge1xuICAgICAgdGhpcy5iYXNlVVJMID0gJ2h0dHBzOi8vZGV2LnYtY29tcGx5LmNvbSc7XG4gICAgfVxuICB9XG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcz8udGVtcGxhdGVWaWV3Py5jdXJyZW50VmFsdWUgPT09IGZhbHNlKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkRG9jdW1lbnRUeXBlID0gJyc7XG4gICAgfVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0aWFsaXNlRmVhdHVyZUZsYWdzKCk7XG4gICAgY29uc3QgZGF0YSA9IEpTT04ucGFyc2UoXG4gICAgICBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnbGFzdEZpbGVOYW1lQW5kVHlwZScpID8/ICdcInt9XCInXG4gICAgKTtcbiAgICBpZiAoXG4gICAgICBkYXRhLm5hbWUgIT09IG51bGwgJiZcbiAgICAgIGRhdGEubmFtZSAhPT0gdW5kZWZpbmVkICYmXG4gICAgICBkYXRhLnR5cGUgIT09IG51bGwgJiZcbiAgICAgIGRhdGEudHlwZSAhPT0gdW5kZWZpbmVkICYmXG4gICAgICBkYXRhLnBvbGljeUlkID09IHRoaXMucG9saWN5SWRcbiAgICApIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWREb2N1bWVudFR5cGUgPSBkYXRhLnR5cGU7XG4gICAgICB0aGlzLmZpbGVuYW1lID0gZGF0YS5uYW1lO1xuICAgICAgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ2xhc3RGaWxlTmFtZUFuZFR5cGUnKTtcbiAgICB9XG4gIH1cblxuICBpbml0aWFsaXNlRmVhdHVyZUZsYWdzKCkge1xuICAgIHRoaXMuZmZfcG9saWN5X21zX3dvcmRfaW50ZWdyYXRpb24gPSAgdGhpcy5mZWF0dXJlLmlzRmVhdHVyZUVuYWJsZWQoV09SRF9DT05TVEFOVFMuZmZfcG9saWN5X21zX3dvcmRfaW50ZWdyYXRpb24pO1xuICB9XG5cbnJlZGlyZWN0VXNlclRvV29yZFBvbGljeSgpIHtcbiAgd2luZG93Lm9wZW4oV09SRF9VUkxfQ09OU1RBTlRTLm5ld193b3JkX3BvbGljeV91cmwsICdfYmxhbmsnKTtcbiAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAgdGhpcy5iYXNlVVJMICsgV09SRF9VUkxfQ09OU1RBTlRTLndvcmtyb29tX3VybCArIHRoaXMucG9saWN5SWQ7XG59XG5cbiAgY3JlYXRlV29yZFBvbGljeSgpIHtcbiAgICB0aGlzLmlzTG9hZGVyID0gdHJ1ZTtcbiAgICB0aGlzLnBvbGljeUFQSVNlcnZpY2UuY3JlYXRlV29yZFBvbGljeSh0aGlzLnBvbGljeUlkKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xuICAgICAgaWYocmVzKXtcbiAgICAgICAgdGhpcy5yZWRpcmVjdFVzZXJUb1dvcmRQb2xpY3koKTtcbiAgICAgIH0gICAgICAgXG4gICAgICB0aGlzLmlzTG9hZGVyID0gZmFsc2U7XG4gICAgfSxcbiAgICAoZXJyKSA9PiB7XG4gICAgICB0aGlzLmlzTG9hZGVyID0gZmFsc2U7XG4gICAgICB0aGlzLnNuYWNrQmFyLnNob3coXG4gICAgICAgIFdPUkRfQ09OU1RBTlRTLmNyZWF0ZVdvcmRQb2xpY3lfc25hY2tiYXJfbWVzc2FnZSxcbiAgICAgICAgJ2FsZXJ0J1xuICAgICAgKTtcbiAgICB9XG4gICk7XG4gIH1cblxuICBoYW5kbGVGaWxlSW5wdXQoZmlsZXM6IEZpbGVMaXN0KTogdm9pZCB7XG4gICAgdGhpcy5maWxlVG9VcGxvYWQgPSBmaWxlc1swXTtcbiAgICB0aGlzLmZpbGVuYW1lID0gdGhpcy5maWxlVG9VcGxvYWQubmFtZTtcbiAgICB0aGlzLmZpbGVUeXBlID0gdGhpcy5maWxlVG9VcGxvYWQubmFtZVxuICAgICAgLnNsaWNlKFxuICAgICAgICB0aGlzLmZpbGVUb1VwbG9hZC5uYW1lLmxhc3RJbmRleE9mKCcuJykgKyAxLFxuICAgICAgICB0aGlzLmZpbGVUb1VwbG9hZC5uYW1lLmxlbmd0aFxuICAgICAgKVxuICAgICAgLnRvTG93ZXJDYXNlKCk7XG4gICAgaWYgKHRoaXMuZmlsZVR5cGUgPT09ICdwZGYnKSB7XG4gICAgICB0aGlzLnVwbG9hZEZpbGUoeyBmaWxlOiB0aGlzLmZpbGVUb1VwbG9hZCwgZmlsZVR5cGU6IHRoaXMuZmlsZVR5cGUgfSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmZpbGVUeXBlID09PSAnZG9jeCcpIHtcbiAgICAgIHRoaXMudXBsb2FkRmlsZSh7IGZpbGU6IHRoaXMuZmlsZVRvVXBsb2FkLCBmaWxlVHlwZTogdGhpcy5maWxlVHlwZSB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zbmFja0Jhci5zaG93KCdQbGVhc2UgdXBsb2FkIGEgdmFsaWQgZmlsZScsICdhbGVydCcpO1xuICAgIH1cbiAgfVxuICBzaG93UGRmQmxvY2sgPSB0cnVlO1xuICBzaG93RG9jeEJsb2NrID0gdHJ1ZTtcblxuICB1cGxvYWRGaWxlKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLmlzVXBsb2FkaW5nID0gdHJ1ZTtcbiAgICBpZiAoZXZlbnQuZmlsZVR5cGUgPT09ICdkb2N4Jykge1xuICAgICAgdGhpcy5jaGFuZ2VEb2NUeXBlKCdkb2N4Jyk7XG4gICAgICB0aGlzLnVwbG9hZERvY3hmaWxlKGV2ZW50KTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmZpbGVUeXBlID09PSAncGRmJykge1xuICAgICAgdGhpcy5jaGFuZ2VEb2NUeXBlKCdwZGYnKTtcbiAgICAgIHRoaXMuc2hvd1BkZkJsb2NrID0gZmFsc2U7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5zaG93UGRmQmxvY2sgPSB0cnVlO1xuICAgICAgfSwgMTApO1xuICAgICAgY29uc3QgdXBsb2FkRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgICAgdXBsb2FkRGF0YS5hcHBlbmQoJ2ZpbGUnLCBldmVudC5maWxlKTtcbiAgICAgIGNvbnN0IHBhdGggPSAnby8nICsgdGhpcy5vcmdhbml6YXRpb25faWQgKyAnL3BvbGljeS8nO1xuICAgICAgdGhpcy5wb2xpY3lTZXJ2aWNlLnVwbG9hZEZpbGUodXBsb2FkRGF0YSwgdGhpcy5wb2xpY3lJZCwgcGF0aCkuc3Vic2NyaWJlKFxuICAgICAgICAocmVzKSA9PiB7XG4gICAgICAgICAgaWYgKHJlcykge1xuICAgICAgICAgICAgdGhpcy5pc1VwbG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgIHRoaXMuaXNVcGxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLnNuYWNrQmFyLnNob3coXG4gICAgICAgICAgICBcIk9vcHMhIFNvbWV0aGluZyB3ZW50IHdyb25nIGFuZCB3ZSB3ZXJlIHVuYWJsZSB0byBjb21wbGV0ZSB0aGlzIGFjdGlvbi4gTGV0J3MgZ2l2ZSBpdCBhbm90aGVyIHRyeSwgc2hhbGwgd2U/XCIsXG4gICAgICAgICAgICAnYWxlcnQnXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICB1cGxvYWREb2N4ZmlsZShldmVudDogYW55KSB7XG4gICAgdGhpcy5yZXNldERvY3NFcnJvcigpO1xuICAgIHRoaXMuc2hvd0RvY3hCbG9jayA9IGZhbHNlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5zaG93RG9jeEJsb2NrID0gdHJ1ZTtcbiAgICB9LCAxMCk7XG4gICAgY29uc3QgdXBsb2FkRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIHVwbG9hZERhdGEuYXBwZW5kKCdmaWxlJywgZXZlbnQuZmlsZSk7XG4gICAgY29uc3QgcGF0aCA9ICdvLycgKyB0aGlzLm9yZ2FuaXphdGlvbl9pZCArICcvcG9saWN5Lyc7XG4gICAgdGhpcy5wb2xpY3lTZXJ2aWNlXG4gICAgICAudXBsb2FkRG9jeEZpbGUodXBsb2FkRGF0YSwgdGhpcy5wb2xpY3lJZCwgcGF0aClcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgIChyZXM6IGFueSkgPT4ge1xuICAgICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICAgIHRoaXMuaXNVcGxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIGlmIChyZXM/Lm1lc3NhZ2U/LmluY2x1ZGVzKCdkb25lJykpIHtcbiAgICAgICAgICAgICAgdGhpcy5yZXNldERvY3NFcnJvcigpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgaWYgKHJlcy5tZXNzYWdlPy5pbmNsdWRlcygnUmFuZ2VFcnJvcicpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kb2N4RXJyb3IgPSB7XG4gICAgICAgICAgICAgICAgICB2aXNpYmxlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgbWVzc2FnZTogJ1RoZSBmaWxlIHNpemUgaXMgdG9vIGxhcmdlIGFuZCBjYW5ub3QgYmUgdXBsb2FkZWQuJyxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZG9jeEVycm9yID0ge1xuICAgICAgICAgICAgICAgICAgdmlzaWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICdPb3BzISBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSB1cGxvYWRpbmcgdGhpcyBmaWxlLicsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgIHRoaXMuaXNVcGxvYWRpbmcgPSBmYWxzZTtcblxuICAgICAgICAgIHRoaXMuc25hY2tCYXIuc2hvdyhcbiAgICAgICAgICAgIFwiT29wcyEgU29tZXRoaW5nIHdlbnQgd3JvbmcgYW5kIHdlIHdlcmUgdW5hYmxlIHRvIGNvbXBsZXRlIHRoaXMgYWN0aW9uLiBMZXQncyBnaXZlIGl0IGFub3RoZXIgdHJ5LCBzaGFsbCB3ZT9cIixcbiAgICAgICAgICAgICdhbGVydCdcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG5cbiAgcmVzZXREb2NzRXJyb3IoKSB7XG4gICAgdGhpcy5kb2N4RXJyb3IgPSB7XG4gICAgICB2aXNpYmxlOiBmYWxzZSxcbiAgICAgIG1lc3NhZ2U6ICcnLFxuICAgIH07XG4gIH1cblxuICBjaGFuZ2VEb2NUeXBlKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnJlc2V0RG9jc0Vycm9yKCk7XG4gICAgdGhpcy5zZWxlY3RlZERvY3VtZW50VHlwZSA9IGV2ZW50O1xuICAgIGlmIChldmVudCA9PT0gJ3RlbXBsYXRlJykge1xuICAgICAgdGhpcy5vcGVuVGVtcGxhdGVMaXN0KCk7XG4gICAgfVxuICB9XG5cbiAgZWRpdG9yKGV2ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLmRpc2Nvbm5lY3RSZWZyZXNoLmVtaXQoZmFsc2UpO1xuXG4gICAgaWYgKGV2ZW50ID09PSAnZHJhZnQnKSB7XG4gICAgICAvLyBJZiBpdCBpcyBhIGRyYWZ0IGdvIGRpcmVjdGx5IHRvIHRoZSBlZGl0b3JcbiAgICAgIGNvbnN0IHVuYW1lID0gdGhpcy51c2VySW5mbyA/IHRoaXMudXNlckluZm8ubmFtZSA6ICcnO1xuICAgICAgY29uc3QgdWlkID0gdGhpcy5tZW1iZXJfb2JqX2lkO1xuICAgICAgY29uc3QgbmFtZSA9IHRoaXMucG9saWN5TmFtZS50cmltKCk7XG4gICAgICBjb25zdCBpZCA9IHRoaXMucG9saWN5SWQ7XG4gICAgICB0aGlzLmlzTG9hZGVyID0gdHJ1ZTtcbiAgICAgIHRoaXMucG9saWN5U2VydmljZVxuICAgICAgICAuc2F2ZVBvbGljeURldGFpbHModW5hbWUsIHVpZCwgaWQsIG5hbWUsICcnLCAwKVxuICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgIChyZXMpID0+IHtcbiAgICAgICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICAgICAgdGhpcy5pc0xvYWRlciA9IGZhbHNlO1xuICAgICAgICAgICAgICBjb25zdCB1cmwgPVxuICAgICAgICAgICAgICAgIHRoaXMuYmFzZVVSTCArICcvYWxsL3BvbGljeS9lZGl0LXBvbGljeT9pZD0nICsgdGhpcy5wb2xpY3lJZDtcbiAgICAgICAgICAgICAgdGhpcy5pZnJhbWVTZXJ2aWNlLnJlZGlyZWN0SWZJbklmcmFtZSh1cmwsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRlciA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5zbmFja0Jhci5zaG93KFxuICAgICAgICAgICAgICBcIk9vcHMhIFNvbWV0aGluZyB3ZW50IHdyb25nIGFuZCB3ZSB3ZXJlIHVuYWJsZSB0byBjb21wbGV0ZSB0aGlzIGFjdGlvbi4gTGV0J3MgZ2l2ZSBpdCBhbm90aGVyIHRyeSwgc2hhbGwgd2U/XCIsXG4gICAgICAgICAgICAgICdhbGVydCdcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQgPT09ICdkb2N4Jykge1xuICAgICAgY29uc3QgdXJsID1cbiAgICAgICAgdGhpcy5iYXNlVVJMICsgJy9hbGwvcG9saWN5L2VkaXQtcG9saWN5P2lkPScgKyB0aGlzLnBvbGljeUlkO1xuICAgICAgdGhpcy5pZnJhbWVTZXJ2aWNlLnJlZGlyZWN0SWZJbklmcmFtZSh1cmwsIHRydWUpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQgPT09ICd3b3JkJykge1xuICAgICAgICB0aGlzLmNyZWF0ZVdvcmRQb2xpY3koKTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50ID09PSAncGRmJykge1xuICAgICAgLy8gSWYgaXQgaXMgYSBwZGYgc2VuZCB0byB0aGUgd29ya3Jvb21cbiAgICAgIGNvbnN0IHVybCA9XG4gICAgICAgIHRoaXMuYmFzZVVSTCArICcvYWxsL3BvbGljeS93b3Jrcm9vbT9pZD0nICsgdGhpcy5wb2xpY3lJZDtcbiAgICAgIHRoaXMuaWZyYW1lU2VydmljZS5yZWRpcmVjdElmSW5JZnJhbWUodXJsLCB0cnVlKTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50ID09PSAndGVtcGxhdGUnKSB7XG4gICAgICB0aGlzLmlmcmFtZVNlcnZpY2UucmVkaXJlY3RJZkluSWZyYW1lKHRoaXMudGVtcGxhdGVVcmwsIHRydWUpO1xuICAgIH1cbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnX2RJZCcsIHRoaXMucG9saWN5SWQpO1xuICB9XG4gIGVkaXRQb2xpY3lFbWl0KCkge1xuICAgIHRoaXMuc2VsZWN0ZWREb2N1bWVudFR5cGUgPSAnJztcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcbiAgICAgICdsYXN0RmlsZU5hbWVBbmRUeXBlJyxcbiAgICAgIEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgdHlwZTogdGhpcy5zZWxlY3RlZERvY3VtZW50VHlwZSxcbiAgICAgICAgbmFtZTogdGhpcy5maWxlbmFtZSxcbiAgICAgICAgcG9saWN5SWQ6IHRoaXMucG9saWN5SWQsXG4gICAgICB9KVxuICAgICk7XG4gICAgdGhpcy5lZGl0UG9saWN5LmVtaXQoKTtcbiAgfVxuXG4gIG9wZW5UZW1wbGF0ZUxpc3QoKSB7XG4gICAgdGhpcy5vcGVuVGVtcGxhdGUuZW1pdCgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZG9jdW1lbnQtc2VjdGlvblwiIFtjbGFzcy5ncmF5c2NhbGVdPVwiaXNUZW1wbGF0ZU9wZW5lZFwiPlxuICA8ZGl2IGNsYXNzPVwiZG9jdW1lbnQtc2VjdGlvbi1pbm5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJtZXNzYWdlLWJveFwiPlxuICAgICAgPHN2Z1xuICAgICAgICB2ZXJzaW9uPVwiMS4xXCJcbiAgICAgICAgaWQ9XCJDYXBhXzFcIlxuICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCJcbiAgICAgICAgeD1cIjBweFwiXG4gICAgICAgIHk9XCIwcHhcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDQ4MC44IDQ4MC44XCJcbiAgICAgICAgc3R5bGU9XCJlbmFibGUtYmFja2dyb3VuZDogbmV3IDAgMCA0ODAuOCA0ODAuOFwiXG4gICAgICAgIHhtbDpzcGFjZT1cInByZXNlcnZlXCJcbiAgICAgID5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT1cImZpbGw6ICNmZmQ1MTdcIlxuICAgICAgICAgIGQ9XCJNMzE3LjExMiwzMTQuNGMtMjIuNCwyMi40LTE5LjYsNjcuNi0xOS42LDY3LjZoLTExMy42YzAsMCwyLjQtNDUuMi0xOS42LTY3LjZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjLTI0LjQtMjEuNi00MC01Mi44LTQwLTg3LjZjMC02NCw1Mi0xMTYsMTE2LTExNnMxMTYsNTIsMTE2LDExNkMzNTYuMzEyLDI2MS42LDM0MS4xMTIsMjkyLjgsMzE3LjExMiwzMTQuNEwzMTcuMTEyLDMxNC40elwiXG4gICAgICAgIC8+XG4gICAgICAgIDxnPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBzdHlsZT1cImZpbGw6ICNlNWU1ZTVcIlxuICAgICAgICAgICAgZD1cIk0zMDAuNzEyLDQxNy42YzAsNi00LjgsMTAuOC0xMC44LDEwLjhoLTk4LjhjLTYsMC0xMC44LTQuOC0xMC44LTEwLjhsMCwwYzAtNiw0LjgtMTAuOCwxMC44LTEwLjhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaDk4LjRDMjk1LjUxMiw0MDYuOCwzMDAuNzEyLDQxMS42LDMwMC43MTIsNDE3LjZMMzAwLjcxMiw0MTcuNnpcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIHN0eWxlPVwiZmlsbDogI2U1ZTVlNVwiXG4gICAgICAgICAgICBkPVwiTTI4NS45MTIsNDYyLjRjMCw2LTQuOCwxMC44LTEwLjgsMTAuOGgtNjkuMmMtNiwwLTEwLjgtNC44LTEwLjgtMTAuOGwwLDBjMC02LDQuOC0xMC44LDEwLjgtMTAuOFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoNjkuMkMyODEuMTEyLDQ1MS42LDI4NS45MTIsNDU2LjQsMjg1LjkxMiw0NjIuNEwyODUuOTEyLDQ2Mi40elwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8Zz5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgc3R5bGU9XCJmaWxsOiAjMjEwYjIwXCJcbiAgICAgICAgICAgIGQ9XCJNMzIzLjExMiwzMTguNGMyNi0yMy42LDQwLjgtNTYuOCw0MC44LTkxLjZjMC02OC01NS42LTEyMy42LTEyMy42LTEyMy42cy0xMjMuNiw1NS42LTEyMy42LDEyMy42XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMwLDM1LjYsMTUuNiw2OS42LDQyLDkyLjhjMTkuNiwxOS42LDE3LjYsNjEuMiwxNy42LDYxLjZjMCwyLDAuOCw0LDIsNS42YzEuNiwxLjYsMy42LDIuNCw1LjYsMi40aDExMy4yYzIsMCw0LTAuOCw1LjYtMi40XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMyLTMuNiwyLTUuNmMwLTAuNC0yLTQyLDE3LjYtNjEuNkMzMjIuNzEyLDMxOS4yLDMyMy4xMTIsMzE4LjgsMzIzLjExMiwzMTguNHogTTMxMS45MTIsMzA4LjRjLTAuOCwwLjQtMS4yLDEuMi0xLjYsMlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjLTE3LjYsMTguOC0yMC40LDQ5LjYtMjAuOCw2NGgtOThjLTAuNC0xNC44LTMuNi00Ni44LTIyLjQtNjUuNmMtMjMuNi0yMC44LTM3LjItNTAuNC0zNy4yLTgxLjZjMC02MCw0OC44LTEwOC40LDEwOC40LTEwOC40XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGM2MCwwLDEwOC40LDQ4LjgsMTA4LjQsMTA4LjRDMzQ4LjcxMiwyNTgsMzM1LjUxMiwyODgsMzExLjkxMiwzMDguNHpcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIHN0eWxlPVwiZmlsbDogIzIxMGIyMFwiXG4gICAgICAgICAgICBkPVwiTTI0MC4zMTIsMTM1LjJjLTQsMC03LjYsMy4yLTcuNiw3LjZjMCw0LDMuMiw3LjYsNy42LDcuNmM0NC44LDAsODEuMiwzNi40LDgxLjIsODEuMlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjMCw0LDMuMiw3LjYsNy42LDcuNmM0LDAsNy42LTMuMiw3LjYtNy42QzMzNi43MTIsMTc4LjQsMjkzLjUxMiwxMzUuMiwyNDAuMzEyLDEzNS4yelwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgc3R5bGU9XCJmaWxsOiAjMjEwYjIwXCJcbiAgICAgICAgICAgIGQ9XCJNMzA4LjMxMiw0MTcuNmMwLTEwLjQtOC40LTE4LjQtMTguNC0xOC40aC05OC44Yy0xMC40LDAtMTguNCw4LjQtMTguNCwxOC40XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMwLDEwLjQsOC40LDE4LjQsMTguNCwxOC40aDk4LjRDMjk5LjkxMiw0MzYsMzA4LjMxMiw0MjgsMzA4LjMxMiw0MTcuNnogTTI4OS41MTIsNDIwLjhoLTk4LjRjLTIsMC0zLjItMS42LTMuMi0zLjJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYzAtMiwxLjYtMy4yLDMuMi0zLjJoOTguNGMyLDAsMy4yLDEuNiwzLjIsMy4yQzI5My4xMTIsNDE5LjYsMjkxLjUxMiw0MjAuOCwyODkuNTEyLDQyMC44elwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgc3R5bGU9XCJmaWxsOiAjMjEwYjIwXCJcbiAgICAgICAgICAgIGQ9XCJNMjc1LjExMiw0NDRoLTY5LjJjLTEwLjQsMC0xOC40LDguNC0xOC40LDE4LjRjMCwxMC40LDguNCwxOC40LDE4LjQsMTguNGg2OS4yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMxMC40LDAsMTguNC04LjQsMTguNC0xOC40QzI5My41MTIsNDUyLjQsMjg1LjExMiw0NDQsMjc1LjExMiw0NDR6IE0yNzUuMTEyLDQ2NS42aC02OS4yYy0yLDAtMy4yLTEuNi0zLjItMy4yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMwLTIsMS42LTMuMiwzLjItMy4yaDY5LjJjMiwwLDMuMiwxLjYsMy4yLDMuMkMyNzguMzEyLDQ2NC40LDI3Ny4xMTIsNDY1LjYsMjc1LjExMiw0NjUuNnpcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIHN0eWxlPVwiZmlsbDogIzIxMGIyMFwiXG4gICAgICAgICAgICBkPVwiTTI0Ny45MTIsNTguOFY3LjZjMC00LTMuMi03LjYtNy42LTcuNmMtNCwwLTcuNiwzLjItNy42LDcuNnY1MS42YzAsNCwzLjIsNy42LDcuNiw3LjZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQzI0NC43MTIsNjYuNCwyNDcuOTEyLDYzLjIsMjQ3LjkxMiw1OC44elwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgc3R5bGU9XCJmaWxsOiAjMjEwYjIwXCJcbiAgICAgICAgICAgIGQ9XCJNMzY2LjMxMiwzOGMtMy42LTIuNC04LTEuMi0xMC40LDJsLTI4LjQsNDIuOGMtMi40LDMuNi0xLjIsOCwyLDEwLjRjMS4yLDAuOCwyLjgsMS4yLDQsMS4yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMyLjQsMCw0LjgtMS4yLDYuNC0zLjJsMjguNC00Mi44QzM3MC43MTIsNDUuMiwzNjkuNTEyLDQwLjQsMzY2LjMxMiwzOHpcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIHN0eWxlPVwiZmlsbDogIzIxMGIyMFwiXG4gICAgICAgICAgICBkPVwiTTE0OS45MTIsOTIuOGMxLjIsMCwyLjgtMC40LDQtMS4yYzMuNi0yLjQsNC40LTYuOCwyLjQtMTAuNGwtMjcuNi00My4yYy0yLjQtMy42LTYuOC00LjQtMTAuNC0yLjRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYy0zLjYsMi40LTQuNCw2LjgtMi40LDEwLjRsMjcuNiw0My4yQzE0NS4xMTIsOTEuNiwxNDcuNTEyLDkyLjgsMTQ5LjkxMiw5Mi44elwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgc3R5bGU9XCJmaWxsOiAjMjEwYjIwXCJcbiAgICAgICAgICAgIGQ9XCJNNDMuOTEyLDEyOC44bDQ1LjIsMjQuNGMxLjIsMC44LDIuNCwwLjgsMy42LDAuOGMyLjgsMCw1LjItMS42LDYuOC00YzItMy42LDAuOC04LjQtMy4yLTEwLjRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbC00NS4yLTI0LjRjLTMuNi0yLTguNC0wLjgtMTAuNCwzLjJDMzkuMTEyLDEyMi40LDQwLjMxMiwxMjYuOCw0My45MTIsMTI4Ljh6XCJcbiAgICAgICAgICAvPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBzdHlsZT1cImZpbGw6ICMyMTBiMjBcIlxuICAgICAgICAgICAgZD1cIk0zODcuOTEyLDE1NC40YzEuMiwwLDIuNC0wLjQsMy42LTAuOGw0NS4yLTI0LjRjMy42LTIsNS4yLTYuNCwzLjItMTAuNGMtMi0zLjYtNi40LTUuMi0xMC40LTMuMlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsLTQ1LjIsMjQuNGMtMy42LDItNS4yLDYuNC0zLjIsMTAuNEMzODIuMzEyLDE1Mi44LDM4NS4xMTIsMTU0LjQsMzg3LjkxMiwxNTQuNHpcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZz5cbiAgICAgIDwvc3ZnPlxuICAgICAgPHA+XG4gICAgICAgIFRoZXJlIGFyZSBtdWx0aXBsZSB3YXlzIHRvIGNyZWF0ZSBhIHBvbGljeSBvbiBWQ29tcGx5LiBZb3UgY2FuIGVpdGhlclxuICAgICAgICBkcmFmdCBpdCBmcm9tIHNjcmF0Y2ggdXNpbmcgVkNvbXBseSdzIG9ubGluZSBlZGl0b3Igb3IgdXBsb2FkIGFuXG4gICAgICAgIGV4aXN0aW5nIERPQ1ggb3IgUERGIGZpbGUuXG4gICAgICA8L3A+XG4gICAgPC9kaXY+XG4gICAgPGxhYmVsXG4gICAgICBjbGFzcz1cImRvY3VtZW50LWJveFwiXG4gICAgICBbY2xhc3MuYWN0aXZlXT1cInNlbGVjdGVkRG9jdW1lbnRUeXBlID09ICdkcmFmdCdcIlxuICAgID5cbiAgICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICBuYW1lPVwic2VsZWN0ZWREb2N1bWVudFR5cGVcIlxuICAgICAgICAoY2hhbmdlKT1cImNoYW5nZURvY1R5cGUoJ2RyYWZ0JylcIlxuICAgICAgICBbY2hlY2tlZF09XCJzZWxlY3RlZERvY3VtZW50VHlwZSA9PT0gJ2RyYWZ0J1wiXG4gICAgICAvPlxuICAgICAgPHN2ZyBpZD1cIkRyYWZ0XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIzMlwiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIj5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDAyXCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQwMlwiIGQ9XCJNMjgsMzJINGE0LDQsMCwwLDEtNC00VjRBNCw0LDAsMCwxLDQsMEgyOGE0LDQsMCwwLDEsNCw0VjI4YTQsNCwwLDAsMS00LDRcIiBmaWxsPVwiIzU2NWE2ZlwiLz5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDAzXCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQwM1wiIGQ9XCJNMjEuODg0LDguNTEsMTAuNTQ5LDEwLjM4NCwxMi40MjYsMjEuMDZsNC4zOC0uNjFhLjMzMy4zMzMsMCwwLDEsLjMyNi40MzVjLS4wNTEuMjE5LS4zMzguMjM1LS41MTQuMjY3LTEuNDc0LjI2Ni0zLjAwOS4zODgtNC40OTEuNjMxLS40MTYtLjAzMi0uMzIxLS43MTgtLjQ0MS0xbC0zLS4zNjVjLS4yMTMtLjEyLS4yLS4yNzMtLjItLjQ5Mi4wMTktLjYyMi4wOTItMS4yNTEuMTI1LTEuODcyLjE2LTMsLjMxNi02LC41LTguOTkzQTkuNDU3LDkuNDU3LDAsMCwxLDkuMTUyLDguMWEuMzY5LjM2OSwwLDAsMSwuMjY1LS4zbDguNTE5LjY4MUwyMi4yLDcuOGMuMjI1LjA2OC4yNDYuMTkuMy4zOTMuNTUzLDIuMjg4Ljc1OCw0Ljc3NSwxLjI4NSw3LjA4My4xNDMuNTMxLS41MDcuNzMxLS42NDIuMlpNMTcuMjExLDIxLjkzMmEuNTYzLjU2MywwLDAsMC0uMDcyLjI0LDguNTQ5LDguNTQ5LDAsMCwwLDAsMS4xODdjLjAxOS4yMTcuMDg4LjM5My4zMjguNDIxYTkuMTM4LDkuMTM4LDAsMCwwLDEuNDQ4LS4wMjEuNTMuNTMsMCwwLDAsLjEyMi0uMDY1bDMuNzU2LTMuNzcxTDIxLDE4LjEzWm01LjMyOS01LjM1Yy0uMzY1LjI4Ni0uNy43NTctMS4wNjEsMS4wNjJMMjMuMywxOS40MzdjLjMtLjM1Ljc3Ny0uNjg3LDEuMDUtMS4wNDQuMTUtLjIuMTc0LS4zMTIuMDE3LS41MTZhMTMuODUxLDEzLjg1MSwwLDAsMC0xLjMyNy0xLjMyNy4zOTMuMzkzLDAsMCwwLS4yMy0uMS40NzYuNDc2LDAsMCwwLS4yNzEuMTNcIiBmaWxsPVwiI2ZmZlwiLz5cbiAgICAgIDwvc3ZnPlxuICAgICAgXG4gICAgICA8ZGl2IGNsYXNzPVwibGFiZWwtcmlnaHRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInZhbHVlXCI+PHN0cm9uZz5DcmVhdGU8L3N0cm9uZz4gYSBQb2xpY3k8L2Rpdj5cbiAgICAgICAgPGkgY2xhc3M9XCJpY29ucyBkb2N1bWVudC1ib3gtaWNvbiB2eC1mcy0xNiB2eC1tci0yXCI+JiN4ZWE0Njs8L2k+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjaGVjay1jaXJjbGVcIj5cbiAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvblwiXG4gICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNTIgNTJcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxjaXJjbGVcbiAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiXG4gICAgICAgICAgICAgIGN4PVwiMjZcIlxuICAgICAgICAgICAgICBjeT1cIjI2XCJcbiAgICAgICAgICAgICAgcj1cIjI1XCJcbiAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiXG4gICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2xhYmVsPlxuXG4gICAgXG4gICAgPGxhYmVsXG4gICAgICAqbmdJZj1cImZmX3BvbGljeV9tc193b3JkX2ludGVncmF0aW9uXCJcbiAgICAgIGNsYXNzPVwiZG9jdW1lbnQtYm94XCJcbiAgICAgIFtjbGFzcy5hY3RpdmVdPVwic2VsZWN0ZWREb2N1bWVudFR5cGUgPT0gJ3dvcmQnXCJcbiAgICA+XG4gICAgICA8aW5wdXRcbiAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgbmFtZT1cInNlbGVjdGVkRG9jdW1lbnRUeXBlXCJcbiAgICAgICAgKGNoYW5nZSk9XCJjaGFuZ2VEb2NUeXBlKCd3b3JkJylcIlxuICAgICAgICBbY2hlY2tlZF09XCJzZWxlY3RlZERvY3VtZW50VHlwZSA9PT0gJ3dvcmQnXCJcbiAgICAgIC8+XG4gICAgICA8c3ZnIGlkPVwiV29yZC1JY29uXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIzMlwiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIj5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDA0XCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQwNFwiIGQ9XCJNMjgsMzJINGE0LDQsMCwwLDEtNC00VjRBNCw0LDAsMCwxLDQsMEgyOGE0LDQsMCwwLDEsNCw0VjI4YTQsNCwwLDAsMS00LDRcIiBmaWxsPVwiIzFlNWRkM1wiLz5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDA1XCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQwNVwiIGQ9XCJNMTAuNDE5LDkuNzE4bDEuODg5LDkuMTIxTDEyLjQ0LDIwbC4xMzItLjg4NSwyLjE1Mi05LjQsMi42MjYuMDE4LDIuMTg3LDkuMTA2LjE3NCwxLjEzMmExMy40LDEzLjQsMCwwLDEsLjE3NC0xLjM1MmMuNS0yLjk1NCwxLjE4OC01Ljg4LDEuNy04LjgzMmwuMDQtLjA3SDI0TDIxLjA4NSwyMi4yODFsLTIuODE4LS4wMjZMMTUuOTMxLDEyLjIybC0uMTYsMS4wNzctMi4wMTUsOC45ODYtMi44MjktLjAyOEw4LDkuNzE4WlwiIGZpbGw9XCIjZmZmXCIvPlxuICAgICAgPC9zdmc+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbC1yaWdodFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIj57e2NyZWF0ZVdvcmRQb2xpY3lUZXh0fX08L2Rpdj5cbiAgICAgICAgPGkgY2xhc3M9XCJpY29ucyBkb2N1bWVudC1ib3gtaWNvbiB2eC1mcy0xNiB2eC1tci0yXCI+JiN4ZWE0Njs8L2k+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjaGVjay1jaXJjbGVcIj5cbiAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvblwiXG4gICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNTIgNTJcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxjaXJjbGVcbiAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiXG4gICAgICAgICAgICAgIGN4PVwiMjZcIlxuICAgICAgICAgICAgICBjeT1cIjI2XCJcbiAgICAgICAgICAgICAgcj1cIjI1XCJcbiAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiXG4gICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2xhYmVsPlxuXG5cblxuICAgIDxsYWJlbFxuICAgICAgY2xhc3M9XCJkb2N1bWVudC1ib3hcIlxuICAgICAgKm5nSWY9XCJzaG93RG9jeEJsb2NrXCJcbiAgICAgIFtjbGFzcy5hY3RpdmVdPVwic2VsZWN0ZWREb2N1bWVudFR5cGUgPT0gJ2RvY3gnICYmICFkb2N4RXJyb3I/LnZpc2libGVcIlxuICAgICAgW2NsYXNzLmVycm9yXT1cImRvY3hFcnJvcj8udmlzaWJsZVwiXG4gICAgPlxuICAgICAgPGlucHV0XG4gICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgYWNjZXB0PVwiLmRvY3hcIlxuICAgICAgICBpZD1cIkRPQ2ZpbGVcIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUZpbGVJbnB1dCgkZXZlbnQudGFyZ2V0LmZpbGVzKVwiXG4gICAgICAgIG9uY2xpY2s9XCJldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcIlxuICAgICAgICAjZG9jeFVwbG9hZEJ1dHRvblxuICAgICAgLz5cbiAgICAgIDxzdmcgaWQ9XCJXb3JkLUljb25cIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjMyXCIgdmlld0JveD1cIjAgMCAzMiAzMlwiPlxuICAgICAgICA8cGF0aCBpZD1cIlBhdGhfMjA0MDRcIiBkYXRhLW5hbWU9XCJQYXRoIDIwNDA0XCIgZD1cIk0yOCwzMkg0YTQsNCwwLDAsMS00LTRWNEE0LDQsMCwwLDEsNCwwSDI4YTQsNCwwLDAsMSw0LDRWMjhhNCw0LDAsMCwxLTQsNFwiIGZpbGw9XCIjMWU1ZGQzXCIvPlxuICAgICAgICA8cGF0aCBpZD1cIlBhdGhfMjA0MDVcIiBkYXRhLW5hbWU9XCJQYXRoIDIwNDA1XCIgZD1cIk0xMC40MTksOS43MThsMS44ODksOS4xMjFMMTIuNDQsMjBsLjEzMi0uODg1LDIuMTUyLTkuNCwyLjYyNi4wMTgsMi4xODcsOS4xMDYuMTc0LDEuMTMyYTEzLjQsMTMuNCwwLDAsMSwuMTc0LTEuMzUyYy41LTIuOTU0LDEuMTg4LTUuODgsMS43LTguODMybC4wNC0uMDdIMjRMMjEuMDg1LDIyLjI4MWwtMi44MTgtLjAyNkwxNS45MzEsMTIuMjJsLS4xNiwxLjA3Ny0yLjAxNSw4Ljk4Ni0yLjgyOS0uMDI4TDgsOS43MThaXCIgZmlsbD1cIiNmZmZcIi8+XG4gICAgICA8L3N2Zz5cbiAgICAgIFxuICAgICAgPGRpdiBjbGFzcz1cImxhYmVsLXJpZ2h0XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhKHNlbGVjdGVkRG9jdW1lbnRUeXBlID09ICdkb2N4JyAmJiBmaWxlbmFtZSlcIlxuICAgICAgICAgICAgPlVwbG9hZCBhIDxzdHJvbmc+RE9DWDwvc3Ryb25nPjwvbmctY29udGFpbmVyXG4gICAgICAgICAgPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWxlY3RlZERvY3VtZW50VHlwZSA9PSAnZG9jeCcgJiYgZmlsZW5hbWVcIj57e1xuICAgICAgICAgICAgZmlsZW5hbWVcbiAgICAgICAgICB9fTwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImVycm9yLW1zZy10ZXh0XCIgKm5nSWY9XCJkb2N4RXJyb3I/LnZpc2libGVcIj5cbiAgICAgICAgICB7eyBkb2N4RXJyb3I/Lm1lc3NhZ2UgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbnMgZG9jdW1lbnQtYm94LWljb24gdngtZnMtMTYgdngtbXItMlwiPiYjeGVhOTc7PC9pPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2hlY2stY2lyY2xlXCIgKm5nSWY9XCIhZG9jeEVycm9yPy52aXNpYmxlXCI+XG4gICAgICAgICAgPHN2Z1xuICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25cIlxuICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDUyIDUyXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Y2lyY2xlXG4gICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uX19jaXJjbGVcIlxuICAgICAgICAgICAgICBjeD1cIjI2XCJcbiAgICAgICAgICAgICAgY3k9XCIyNlwiXG4gICAgICAgICAgICAgIHI9XCIyNVwiXG4gICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvbl9fY2hlY2tcIlxuICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgIGQ9XCJNMTQuMSAyNy4ybDcuMSA3LjIgMTYuNy0xNi44XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9zdmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8aSBjbGFzcz1cImljb25zIGVycm9yLWljb25cIiAqbmdJZj1cImRvY3hFcnJvcj8udmlzaWJsZVwiPiYjeGU5MTQ7PC9pPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwibGluZS1wcm9ncmVzc1wiXG4gICAgICAgICpuZ0lmPVwic2VsZWN0ZWREb2N1bWVudFR5cGUgPT0gJ2RvY3gnICYmIGlzVXBsb2FkaW5nXCJcbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxpbmUtcHJvZ3Jlc3MtYmFyXCI+PC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2xhYmVsPlxuICAgIDxsYWJlbFxuICAgICAgY2xhc3M9XCJkb2N1bWVudC1ib3hcIlxuICAgICAgKm5nSWY9XCJzaG93UGRmQmxvY2tcIlxuICAgICAgW2NsYXNzLmFjdGl2ZV09XCJzZWxlY3RlZERvY3VtZW50VHlwZSA9PSAncGRmJ1wiXG4gICAgPlxuICAgICAgPGlucHV0XG4gICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgYWNjZXB0PVwiLnBkZlwiXG4gICAgICAgIGlkPVwiUERGZmlsZVwiXG4gICAgICAgIChjaGFuZ2UpPVwiaGFuZGxlRmlsZUlucHV0KCRldmVudC50YXJnZXQuZmlsZXMpXCJcbiAgICAgICAgb25jbGljaz1cImV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1wiXG4gICAgICAgICNwZGZVcGxvYWRCdXR0b25cbiAgICAgIC8+XG4gICAgICA8c3ZnIGlkPVwiUERGLUljb25cIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjMyXCIgdmlld0JveD1cIjAgMCAzMiAzMlwiPlxuICAgICAgICA8cGF0aCBpZD1cIlBhdGhfMjA0MDhcIiBkYXRhLW5hbWU9XCJQYXRoIDIwNDA4XCIgZD1cIk0yOCwzMkg0YTQsNCwwLDAsMS00LTRWNEE0LDQsMCwwLDEsNCwwSDI4YTQsNCwwLDAsMSw0LDRWMjhhNCw0LDAsMCwxLTQsNFwiIGZpbGw9XCIjYTgyYTFkXCIvPlxuICAgICAgICA8cGF0aCBpZD1cIlBhdGhfMjA0MDlcIiBkYXRhLW5hbWU9XCJQYXRoIDIwNDA5XCIgZD1cIk0xNi4xMjUsMTMuNzc4QTEuMzksMS4zOSwwLDAsMCwxNi4yODUsMTVhMTYuMTA2LDE2LjEwNiwwLDAsMCwyLjEwNiwyLjU1NGMuMzEyLS4wNDUuNi0uMDQ3LDEuMi0uMDkyYTYuOTY0LDYuOTY0LDAsMCwxLDMuNjE2LjIzOSwxLjMxLDEuMzEsMCwwLDEsLjc4NCwxLjM2MSwxLjE3NiwxLjE3NiwwLDAsMS0xLjA3NS45ODFjLTIuMjI0LjMzNi0zLjMwNS0uOS00LjU3OS0xLjc0NmEyLjA5NCwyLjA5NCwwLDAsMC0uODEyLjAyMSwyNS43ODIsMjUuNzgyLDAsMCwwLTMuNDEyLjkxNmMtLjI1My4wODktLjMzOC4zLS41MzMuNjA5YTExLjA2MiwxMS4wNjIsMCwwLDEtMi44MiwzLjQyNywyLjE0NSwyLjE0NSwwLDAsMS0xLjg2MS40NDVjLTEtLjIyMi0xLjE3OC0xLjE4Mi0uNS0xLjk0MkE5LjQ1Miw5LjQ1MiwwLDAsMSwxMCwyMC40NjJhMTQuNzE0LDE0LjcxNCwwLDAsMSwyLjQxOC0xLjEwOWMuNDkxLS40NjEuNTU2LS42ODYuOTY2LTEuNzY0LjQzMS0xLjEzNi45MjItMi4yNSwxLjMyNC0zLjRhMS42NzksMS42NzksMCwwLDAtLjAzNS0xLjA2Miw3LjcsNy43LDAsMCwxLS42MzgtMy40NzYsMS40LDEuNCwwLDAsMSwuOTU5LTEuMzkzLDEuMjc5LDEuMjc5LDAsMCwxLDEuNDY0LjhjLjIuNDc5LjU1MiwxLjc1LS4zMzEsNC43MjhtLS4zNzcsMS4zNzctMS40MTgsMy40MjIsMy4zNTMtLjg4My0xLjkzNS0yLjUzOW0zLjIyMiwyLjg4MkE0LjUsNC41LDAsMCwwLDIxLjkyLDE5LjM3Yy4zNzcsMCwuNzE0LS4xMzEuNzMzLS42LjA1MS0xLjI1MS0yLjY1Ni0uODY0LTMuNjgyLS43M20tNi45NiwyLjAzN2E5Ljc4OCw5Ljc4OCwwLDAsMC0yLjk3NSwxLjhjLS4yMTguMTcxLS40NDYuNzE4LS4yODIuOTg0cy44MS4wNjcsMS0uMTJhOS4yOSw5LjI5LDAsMCwwLDIuMjUzLTIuNjY0bTMuMjQ2LTcuMjQzYy0uMDQ1LS44NzguNDYxLTIuMTcyLjQzNy0zLjIyNC0uMDA4LS4zNTUtLjA1MS0uNzQ3LS41LS43NzItLjM2NC0uMDItLjUzNC40NzYtLjU2OS43NjJhNS44LDUuOCwwLDAsMCwuNjM2LDMuMjM0XCIgZmlsbD1cIiNmZmZcIi8+XG4gICAgICA8L3N2Zz5cbiAgICAgIFxuICAgICAgPGRpdiBjbGFzcz1cImxhYmVsLXJpZ2h0XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZVwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhKHNlbGVjdGVkRG9jdW1lbnRUeXBlID09ICdwZGYnICYmIGZpbGVuYW1lKVwiXG4gICAgICAgICAgICA+VXBsb2FkIGEgPHN0cm9uZz5QREY8L3N0cm9uZz48L25nLWNvbnRhaW5lclxuICAgICAgICAgID5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWREb2N1bWVudFR5cGUgPT0gJ3BkZicgJiYgZmlsZW5hbWVcIj57e1xuICAgICAgICAgICAgZmlsZW5hbWVcbiAgICAgICAgICB9fTwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGkgY2xhc3M9XCJpY29ucyBkb2N1bWVudC1ib3gtaWNvbiB2eC1mcy0xNiB2eC1tci0yXCI+JiN4ZWE5Nzs8L2k+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjaGVjay1jaXJjbGVcIj5cbiAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvblwiXG4gICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNTIgNTJcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxjaXJjbGVcbiAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiXG4gICAgICAgICAgICAgIGN4PVwiMjZcIlxuICAgICAgICAgICAgICBjeT1cIjI2XCJcbiAgICAgICAgICAgICAgcj1cIjI1XCJcbiAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiXG4gICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJsaW5lLXByb2dyZXNzXCJcbiAgICAgICAgKm5nSWY9XCJzZWxlY3RlZERvY3VtZW50VHlwZSA9PSAncGRmJyAmJiBpc1VwbG9hZGluZ1wiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJsaW5lLXByb2dyZXNzLWJhclwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9sYWJlbD5cbiAgICA8IS0tIFNlbGVjdCBhIHRlbXBsYXRlIC0tPlxuICAgIDxsYWJlbFxuICAgICAgY2xhc3M9XCJkb2N1bWVudC1ib3hcIlxuICAgICAgW2NsYXNzLmFjdGl2ZV09XCJzZWxlY3RlZERvY3VtZW50VHlwZSA9PT0gJ3RlbXBsYXRlJ1wiXG4gICAgPlxuICAgICAgPGlucHV0XG4gICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgIG5hbWU9XCJzZWxlY3RlZERvY3VtZW50VHlwZVwiXG4gICAgICAgIChjaGFuZ2UpPVwiY2hhbmdlRG9jVHlwZSgndGVtcGxhdGUnKVwiXG4gICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGVkRG9jdW1lbnRUeXBlID09PSAndGVtcGxhdGUnXCJcbiAgICAgIC8+XG4gICAgICA8c3ZnIGlkPVwiVE1QLUljb25cIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjMyXCIgdmlld0JveD1cIjAgMCAzMiAzMlwiPlxuICAgICAgICA8cGF0aCBpZD1cIlBhdGhfMjA0MDZcIiBkYXRhLW5hbWU9XCJQYXRoIDIwNDA2XCIgZD1cIk0yOCwzMkg0YTQsNCwwLDAsMS00LTRWNEE0LDQsMCwwLDEsNCwwSDI4YTQsNCwwLDAsMSw0LDRWMjhhNCw0LDAsMCwxLTQsNFwiIGZpbGw9XCIjMzRhYTQ0XCIvPlxuICAgICAgICA8cGF0aCBpZD1cIlBhdGhfMjA0MTBcIiBkYXRhLW5hbWU9XCJQYXRoIDIwNDEwXCIgZD1cIk0xNiwxLjc3OFYzLjU1NUgwVjEuNzc4QTEuNzgzLDEuNzgzLDAsMCwxLDEuNzc4LDBIMTQuMjIzQTEuNzgzLDEuNzgzLDAsMCwxLDE2LDEuNzc4TTAsNC40NDRIMTZ2OC44ODlhMS43NzgsMS43NzgsMCwwLDEtMS43NzcsMS43NzhIMS43NzhBMS43NzgsMS43NzgsMCwwLDEsMCwxMy4zMzNaTTYuOTksOS45MjhBLjg5MS44OTEsMCwwLDAsNi4xLDkuMDM5SDMuNjQyYS44OTEuODkxLDAsMCwwLS44ODguODg5djIuNDU2YS44OTEuODkxLDAsMCwwLC44ODguODg5SDYuMWEuODkxLjg5MSwwLDAsMCwuODg4LS44ODlabTYuMzA2LDBhLjg5Mi44OTIsMCwwLDAtLjg4OS0uODg5SDkuOTQ4YS44OTEuODkxLDAsMCwwLS44ODguODg5djIuNDU2YS44OTEuODkxLDAsMCwwLC44ODguODg5aDIuNDU5YS44OTIuODkyLDAsMCwwLC44ODktLjg4OVpNMi42NjcsNy4xMTFBLjg4OS44ODksMCwwLDAsMy41NTYsOGg4Ljg4OWEuODg5Ljg4OSwwLDAsMCwwLTEuNzc4SDMuNTU2YS44ODkuODg5LDAsMCwwLS44ODkuODg5XCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDggNy45OTkpXCIgZmlsbD1cIiNmZmZcIi8+XG4gICAgICA8L3N2Zz5cbiAgICAgIFxuICAgICAgPGRpdiBjbGFzcz1cImxhYmVsLXJpZ2h0XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZVwiPkRyYWZ0IFVzaW5nIGEgPHN0cm9uZz5UZW1wbGF0ZTwvc3Ryb25nPjwvZGl2PlxuICAgICAgICA8aSBjbGFzcz1cImljb25zIGRvY3VtZW50LWJveC1pY29uIHZ4LWZzLTE2IHZ4LW1yLTJcIj4mI3hlYTQ2OzwvaT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNoZWNrLWNpcmNsZVwiPlxuICAgICAgICAgIDxzdmdcbiAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uXCJcbiAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgICAgdmlld0JveD1cIjAgMCA1MiA1MlwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGNpcmNsZVxuICAgICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvbl9fY2lyY2xlXCJcbiAgICAgICAgICAgICAgY3g9XCIyNlwiXG4gICAgICAgICAgICAgIGN5PVwiMjZcIlxuICAgICAgICAgICAgICByPVwiMjVcIlxuICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25fX2NoZWNrXCJcbiAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICBkPVwiTTE0LjEgMjcuMmw3LjEgNy4yIDE2LjctMTYuOFwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbGFiZWw+XG4gICAgPCEtLSBFbmQgU2VsZWN0IGEgdGVtcGxhdGUgLS0+XG4gICAgPGFwcC1sb2FkZXItaW5saW5lICpuZ0lmPVwiaXNMb2FkZXJcIj48L2FwcC1sb2FkZXItaW5saW5lPlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdiBjbGFzcz1cImJvdHRvbS1idXR0b25cIiBbY2xhc3MuZ3JheXNjYWxlXT1cImlzVGVtcGxhdGVPcGVuZWRcIj5cbiAgPGJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIChjbGljayk9XCJlZGl0UG9saWN5RW1pdCgpXCJcbiAgICBjbGFzcz1cImJhY2tcIlxuICAgIFtjbGFzcy5kaXNhYmxlZF09XCJpc1RlbXBsYXRlT3BlbmVkXCJcbiAgPlxuICAgIDxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTFkOzwvaT4gQmFja1xuICA8L2J1dHRvbj5cbiAgPGJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIChjbGljayk9XCJlZGl0b3Ioc2VsZWN0ZWREb2N1bWVudFR5cGUpXCJcbiAgICBjbGFzcz1cIm5leHRcIlxuICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhc2VsZWN0ZWREb2N1bWVudFR5cGUgfHwgaXNUZW1wbGF0ZU9wZW5lZCB8fCBpc0xvYWRlclwiXG4gID5cbiAgICBOZXh0IDxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTFlOzwvaT5cbiAgPC9idXR0b24+XG48L2Rpdj5cbiJdfQ==
263
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9jdW1lbnQtc2VjdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2RvY3VtZW50LXNlY3Rpb24vZG9jdW1lbnQtc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL2RvY3VtZW50LXNlY3Rpb24vZG9jdW1lbnQtc2VjdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBTXZCLE9BQU8sRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7Ozs7O0FBTzdGLE1BQU0sT0FBTyx3QkFBd0I7SUFnQ25DLFlBQ1UsUUFBeUIsRUFDekIsYUFBNEIsRUFDNUIsZ0JBQWtDLEVBQ2xDLE1BQWMsRUFDZCxLQUFxQixFQUM3QixnQkFBa0MsRUFDMUIsYUFBNEI7UUFONUIsYUFBUSxHQUFSLFFBQVEsQ0FBaUI7UUFDekIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNsQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFFckIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFyQ3RDLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFDZCxhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2QsUUFBRyxHQUFHLEtBQUssQ0FBQztRQUNaLFVBQUssR0FBRyxLQUFLLENBQUM7UUFDZCxRQUFHLEdBQUcsS0FBSyxDQUFDO1FBQ1osZ0JBQVcsR0FBRyxL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TG9jYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkNoYW5nZXMsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU25hY2tCYXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vdWkta2l0L3NuYWNrLWJhci9zbmFjay1iYXIuc2VydmljZSc7XG5pbXBvcnQgeyBQb2xpY3lTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vd29ya2Zsb3ctc2VydmljZXMvcG9saWN5LnNlcnZpY2UnO1xuaW1wb3J0IHsgUG9saWN5QVBJU2VydmljZSB9IGZyb20gJy4uLy4uL3dvcmtmbG93LXNlcnZpY2VzL3BvbGljeS1hcGkuc2VydmljZSc7XG5pbXBvcnQgeyBJZnJhbWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvaWZyYW1lLnNlcnZpY2UnO1xuaW1wb3J0IHsgV09SRF9DT05TVEFOVFMsIFdPUkRfVVJMX0NPTlNUQU5UUyB9IGZyb20gJy4uLy4uL3dvcmtmbG93LXBvbGljeS9tcy13b3JkLmNvbnN0YW50cyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1kb2N1bWVudC1zZWN0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RvY3VtZW50LXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kb2N1bWVudC1zZWN0aW9uLmNvbXBvbmVudC5sZXNzJ10sXG59KVxuZXhwb3J0IGNsYXNzIERvY3VtZW50U2VjdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgcHJpdmF0ZSBmaWxlVG9VcGxvYWQ6IGFueTtcbiAgZmlsZW5hbWUgPSAnJztcbiAgZmlsZVR5cGUgPSAnJztcbiAgcGRmID0gZmFsc2U7XG4gIGRyYWZ0ID0gZmFsc2U7XG4gIGRvYyA9IGZhbHNlO1xuICBpc1VwbG9hZGluZyA9IGZhbHNlO1xuICBpc0xvYWRlciA9IGZhbHNlO1xuICBpc19tc193b3JkX2ludGVncmF0ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgY3JlYXRlV29yZFBvbGljeVRleHQgPSBXT1JEX0NPTlNUQU5UUy5NU19XT1JEX09QVElPTjtcblxuICBASW5wdXQoKSBzZWxlY3RlZERvY3VtZW50VHlwZSA9ICcnO1xuICBASW5wdXQoKSBmZWF0dXJlOiBhbnk7XG4gIEBJbnB1dCgpIHRlbXBsYXRlVmlldyA9IGZhbHNlO1xuICBASW5wdXQoKSBwb2xpY3lJZDogYW55ID0gJyc7XG4gIEBJbnB1dCgpIHBvbGljeU5hbWU6IGFueSA9ICcnO1xuICBASW5wdXQoKSBvcmdhbml6YXRpb25faWQ6IGFueSA9ICcnO1xuICBASW5wdXQoKSBtZW1iZXJfb2JqX2lkOiBhbnk7XG4gIEBJbnB1dCgpIHVzZXJJbmZvOiBhbnk7XG4gIEBJbnB1dCgpIHRlbXBsYXRlVXJsOiBzdHJpbmcgPSAnJztcbiAgQElucHV0KCkgaXNUZW1wbGF0ZU9wZW5lZDogYm9vbGVhbiA9IGZhbHNlO1xuICBAT3V0cHV0KCkgZGlzY29ubmVjdFJlZnJlc2ggPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBlZGl0UG9saWN5ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb3BlblRlbXBsYXRlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGJhc2VVUkwgPSAnJztcbiAgZG9jeEVycm9yID0ge1xuICAgIHZpc2libGU6IGZhbHNlLFxuICAgIG1lc3NhZ2U6ICcnLFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc25hY2tCYXI6IFNuYWNrQmFyU2VydmljZSxcbiAgICBwcml2YXRlIHBvbGljeVNlcnZpY2U6IFBvbGljeVNlcnZpY2UsXG4gICAgcHJpdmF0ZSBwb2xpY3lBUElTZXJ2aWNlOiBQb2xpY3lBUElTZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgcGxhdGZvcm1Mb2NhdGlvbjogUGxhdGZvcm1Mb2NhdGlvbixcbiAgICBwcml2YXRlIGlmcmFtZVNlcnZpY2U6IElmcmFtZVNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5iYXNlVVJMID0gbG9jYXRpb24/Lm9yaWdpbjtcbiAgICBpZiAodGhpcy5iYXNlVVJMID09ICdodHRwOi8vbG9jYWxob3N0OjQyMDAnKSB7XG4gICAgICB0aGlzLmJhc2VVUkwgPSAnaHR0cHM6Ly9kZXYudi1jb21wbHkuY29tJztcbiAgICB9XG4gIH1cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VzPy50ZW1wbGF0ZVZpZXc/LmN1cnJlbnRWYWx1ZSA9PT0gZmFsc2UpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWREb2N1bWVudFR5cGUgPSAnJztcbiAgICB9XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRpYWxpc2VGZWF0dXJlRmxhZ3MoKTtcbiAgICBjb25zdCBkYXRhID0gSlNPTi5wYXJzZShcbiAgICAgIGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdsYXN0RmlsZU5hbWVBbmRUeXBlJykgPz8gJ1wie31cIidcbiAgICApO1xuICAgIGlmIChcbiAgICAgIGRhdGEubmFtZSAhPT0gbnVsbCAmJlxuICAgICAgZGF0YS5uYW1lICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIGRhdGEudHlwZSAhPT0gbnVsbCAmJlxuICAgICAgZGF0YS50eXBlICE9PSB1bmRlZmluZWQgJiZcbiAgICAgIGRhdGEucG9saWN5SWQgPT0gdGhpcy5wb2xpY3lJZFxuICAgICkge1xuICAgICAgdGhpcy5zZWxlY3RlZERvY3VtZW50VHlwZSA9IGRhdGEudHlwZTtcbiAgICAgIHRoaXMuZmlsZW5hbWUgPSBkYXRhLm5hbWU7XG4gICAgICBsb2NhbFN0b3JhZ2UucmVtb3ZlSXRlbSgnbGFzdEZpbGVOYW1lQW5kVHlwZScpO1xuICAgIH1cbiAgfVxuXG4gIGluaXRpYWxpc2VGZWF0dXJlRmxhZ3MoKSB7XG4gICAgdGhpcy5pc19tc193b3JkX2ludGVncmF0ZWQgPSAgdGhpcy5mZWF0dXJlLmlzRmVhdHVyZUVuYWJsZWQoJ2ZmX3BvbGljeV9tc193b3JkX2ludGVncmF0aW9uJyk7XG4gICAgY29uc29sZS5sb2codGhpcy5pc19tc193b3JkX2ludGVncmF0ZWQsICdmZl9wb2xpY3lfbXNfd29yZF9pbnRlZ3JhdGlvbicpO1xuICB9XG5cbnJlZGlyZWN0VXNlclRvV29yZFBvbGljeSgpIHtcbiAgd2luZG93Lm9wZW4oV09SRF9VUkxfQ09OU1RBTlRTLm5ld193b3JkX3BvbGljeV91cmwsICdfYmxhbmsnKTtcbiAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSAgdGhpcy5iYXNlVVJMICsgV09SRF9VUkxfQ09OU1RBTlRTLndvcmtyb29tX3VybCArIHRoaXMucG9saWN5SWQ7XG59XG5cbiAgY3JlYXRlV29yZFBvbGljeSgpIHtcbiAgICB0aGlzLmlzTG9hZGVyID0gdHJ1ZTtcbiAgICB0aGlzLnBvbGljeUFQSVNlcnZpY2UuY3JlYXRlV29yZFBvbGljeSh0aGlzLnBvbGljeUlkKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xuICAgICAgaWYocmVzKXtcbiAgICAgICAgdGhpcy5yZWRpcmVjdFVzZXJUb1dvcmRQb2xpY3koKTtcbiAgICAgIH0gICAgICAgXG4gICAgICB0aGlzLmlzTG9hZGVyID0gZmFsc2U7XG4gICAgfSxcbiAgICAoZXJyKSA9PiB7XG4gICAgICB0aGlzLmlzTG9hZGVyID0gZmFsc2U7XG4gICAgICB0aGlzLnNuYWNrQmFyLnNob3coXG4gICAgICAgIFdPUkRfQ09OU1RBTlRTLmNyZWF0ZVdvcmRQb2xpY3lfc25hY2tiYXJfbWVzc2FnZSxcbiAgICAgICAgJ2FsZXJ0J1xuICAgICAgKTtcbiAgICB9XG4gICk7XG4gIH1cblxuICBoYW5kbGVGaWxlSW5wdXQoZmlsZXM6IEZpbGVMaXN0KTogdm9pZCB7XG4gICAgdGhpcy5maWxlVG9VcGxvYWQgPSBmaWxlc1swXTtcbiAgICB0aGlzLmZpbGVuYW1lID0gdGhpcy5maWxlVG9VcGxvYWQubmFtZTtcbiAgICB0aGlzLmZpbGVUeXBlID0gdGhpcy5maWxlVG9VcGxvYWQubmFtZVxuICAgICAgLnNsaWNlKFxuICAgICAgICB0aGlzLmZpbGVUb1VwbG9hZC5uYW1lLmxhc3RJbmRleE9mKCcuJykgKyAxLFxuICAgICAgICB0aGlzLmZpbGVUb1VwbG9hZC5uYW1lLmxlbmd0aFxuICAgICAgKVxuICAgICAgLnRvTG93ZXJDYXNlKCk7XG4gICAgaWYgKHRoaXMuZmlsZVR5cGUgPT09ICdwZGYnKSB7XG4gICAgICB0aGlzLnVwbG9hZEZpbGUoeyBmaWxlOiB0aGlzLmZpbGVUb1VwbG9hZCwgZmlsZVR5cGU6IHRoaXMuZmlsZVR5cGUgfSk7XG4gICAgfSBlbHNlIGlmICh0aGlzLmZpbGVUeXBlID09PSAnZG9jeCcpIHtcbiAgICAgIHRoaXMudXBsb2FkRmlsZSh7IGZpbGU6IHRoaXMuZmlsZVRvVXBsb2FkLCBmaWxlVHlwZTogdGhpcy5maWxlVHlwZSB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zbmFja0Jhci5zaG93KCdQbGVhc2UgdXBsb2FkIGEgdmFsaWQgZmlsZScsICdhbGVydCcpO1xuICAgIH1cbiAgfVxuICBzaG93UGRmQmxvY2sgPSB0cnVlO1xuICBzaG93RG9jeEJsb2NrID0gdHJ1ZTtcblxuICB1cGxvYWRGaWxlKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLmlzVXBsb2FkaW5nID0gdHJ1ZTtcbiAgICBpZiAoZXZlbnQuZmlsZVR5cGUgPT09ICdkb2N4Jykge1xuICAgICAgdGhpcy5jaGFuZ2VEb2NUeXBlKCdkb2N4Jyk7XG4gICAgICB0aGlzLnVwbG9hZERvY3hmaWxlKGV2ZW50KTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50LmZpbGVUeXBlID09PSAncGRmJykge1xuICAgICAgdGhpcy5jaGFuZ2VEb2NUeXBlKCdwZGYnKTtcbiAgICAgIHRoaXMuc2hvd1BkZkJsb2NrID0gZmFsc2U7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5zaG93UGRmQmxvY2sgPSB0cnVlO1xuICAgICAgfSwgMTApO1xuICAgICAgY29uc3QgdXBsb2FkRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgICAgdXBsb2FkRGF0YS5hcHBlbmQoJ2ZpbGUnLCBldmVudC5maWxlKTtcbiAgICAgIGNvbnN0IHBhdGggPSAnby8nICsgdGhpcy5vcmdhbml6YXRpb25faWQgKyAnL3BvbGljeS8nO1xuICAgICAgdGhpcy5wb2xpY3lTZXJ2aWNlLnVwbG9hZEZpbGUodXBsb2FkRGF0YSwgdGhpcy5wb2xpY3lJZCwgcGF0aCkuc3Vic2NyaWJlKFxuICAgICAgICAocmVzKSA9PiB7XG4gICAgICAgICAgaWYgKHJlcykge1xuICAgICAgICAgICAgdGhpcy5pc1VwbG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgIHRoaXMuaXNVcGxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLnNuYWNrQmFyLnNob3coXG4gICAgICAgICAgICBcIk9vcHMhIFNvbWV0aGluZyB3ZW50IHdyb25nIGFuZCB3ZSB3ZXJlIHVuYWJsZSB0byBjb21wbGV0ZSB0aGlzIGFjdGlvbi4gTGV0J3MgZ2l2ZSBpdCBhbm90aGVyIHRyeSwgc2hhbGwgd2U/XCIsXG4gICAgICAgICAgICAnYWxlcnQnXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICB1cGxvYWREb2N4ZmlsZShldmVudDogYW55KSB7XG4gICAgdGhpcy5yZXNldERvY3NFcnJvcigpO1xuICAgIHRoaXMuc2hvd0RvY3hCbG9jayA9IGZhbHNlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5zaG93RG9jeEJsb2NrID0gdHJ1ZTtcbiAgICB9LCAxMCk7XG4gICAgY29uc3QgdXBsb2FkRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIHVwbG9hZERhdGEuYXBwZW5kKCdmaWxlJywgZXZlbnQuZmlsZSk7XG4gICAgY29uc3QgcGF0aCA9ICdvLycgKyB0aGlzLm9yZ2FuaXphdGlvbl9pZCArICcvcG9saWN5Lyc7XG4gICAgdGhpcy5wb2xpY3lTZXJ2aWNlXG4gICAgICAudXBsb2FkRG9jeEZpbGUodXBsb2FkRGF0YSwgdGhpcy5wb2xpY3lJZCwgcGF0aClcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgIChyZXM6IGFueSkgPT4ge1xuICAgICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICAgIHRoaXMuaXNVcGxvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgIGlmIChyZXM/Lm1lc3NhZ2U/LmluY2x1ZGVzKCdkb25lJykpIHtcbiAgICAgICAgICAgICAgdGhpcy5yZXNldERvY3NFcnJvcigpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgaWYgKHJlcy5tZXNzYWdlPy5pbmNsdWRlcygnUmFuZ2VFcnJvcicpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kb2N4RXJyb3IgPSB7XG4gICAgICAgICAgICAgICAgICB2aXNpYmxlOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgbWVzc2FnZTogJ1RoZSBmaWxlIHNpemUgaXMgdG9vIGxhcmdlIGFuZCBjYW5ub3QgYmUgdXBsb2FkZWQuJyxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuZG9jeEVycm9yID0ge1xuICAgICAgICAgICAgICAgICAgdmlzaWJsZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgIG1lc3NhZ2U6ICdPb3BzISBBbiBlcnJvciBvY2N1cnJlZCB3aGlsZSB1cGxvYWRpbmcgdGhpcyBmaWxlLicsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgIHRoaXMuaXNVcGxvYWRpbmcgPSBmYWxzZTtcblxuICAgICAgICAgIHRoaXMuc25hY2tCYXIuc2hvdyhcbiAgICAgICAgICAgIFwiT29wcyEgU29tZXRoaW5nIHdlbnQgd3JvbmcgYW5kIHdlIHdlcmUgdW5hYmxlIHRvIGNvbXBsZXRlIHRoaXMgYWN0aW9uLiBMZXQncyBnaXZlIGl0IGFub3RoZXIgdHJ5LCBzaGFsbCB3ZT9cIixcbiAgICAgICAgICAgICdhbGVydCdcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG5cbiAgcmVzZXREb2NzRXJyb3IoKSB7XG4gICAgdGhpcy5kb2N4RXJyb3IgPSB7XG4gICAgICB2aXNpYmxlOiBmYWxzZSxcbiAgICAgIG1lc3NhZ2U6ICcnLFxuICAgIH07XG4gIH1cblxuICBjaGFuZ2VEb2NUeXBlKGV2ZW50OiBhbnkpIHtcbiAgICB0aGlzLnJlc2V0RG9jc0Vycm9yKCk7XG4gICAgdGhpcy5zZWxlY3RlZERvY3VtZW50VHlwZSA9IGV2ZW50O1xuICAgIGlmIChldmVudCA9PT0gJ3RlbXBsYXRlJykge1xuICAgICAgdGhpcy5vcGVuVGVtcGxhdGVMaXN0KCk7XG4gICAgfVxuICB9XG5cbiAgZWRpdG9yKGV2ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLmRpc2Nvbm5lY3RSZWZyZXNoLmVtaXQoZmFsc2UpO1xuXG4gICAgaWYgKGV2ZW50ID09PSAnZHJhZnQnKSB7XG4gICAgICAvLyBJZiBpdCBpcyBhIGRyYWZ0IGdvIGRpcmVjdGx5IHRvIHRoZSBlZGl0b3JcbiAgICAgIGNvbnN0IHVuYW1lID0gdGhpcy51c2VySW5mbyA/IHRoaXMudXNlckluZm8ubmFtZSA6ICcnO1xuICAgICAgY29uc3QgdWlkID0gdGhpcy5tZW1iZXJfb2JqX2lkO1xuICAgICAgY29uc3QgbmFtZSA9IHRoaXMucG9saWN5TmFtZS50cmltKCk7XG4gICAgICBjb25zdCBpZCA9IHRoaXMucG9saWN5SWQ7XG4gICAgICB0aGlzLmlzTG9hZGVyID0gdHJ1ZTtcbiAgICAgIHRoaXMucG9saWN5U2VydmljZVxuICAgICAgICAuc2F2ZVBvbGljeURldGFpbHModW5hbWUsIHVpZCwgaWQsIG5hbWUsICcnLCAwKVxuICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgIChyZXMpID0+IHtcbiAgICAgICAgICAgIGlmIChyZXMpIHtcbiAgICAgICAgICAgICAgdGhpcy5pc0xvYWRlciA9IGZhbHNlO1xuICAgICAgICAgICAgICBjb25zdCB1cmwgPVxuICAgICAgICAgICAgICAgIHRoaXMuYmFzZVVSTCArICcvYWxsL3BvbGljeS9lZGl0LXBvbGljeT9pZD0nICsgdGhpcy5wb2xpY3lJZDtcbiAgICAgICAgICAgICAgdGhpcy5pZnJhbWVTZXJ2aWNlLnJlZGlyZWN0SWZJbklmcmFtZSh1cmwsIHRydWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgICAgdGhpcy5pc0xvYWRlciA9IGZhbHNlO1xuICAgICAgICAgICAgdGhpcy5zbmFja0Jhci5zaG93KFxuICAgICAgICAgICAgICBcIk9vcHMhIFNvbWV0aGluZyB3ZW50IHdyb25nIGFuZCB3ZSB3ZXJlIHVuYWJsZSB0byBjb21wbGV0ZSB0aGlzIGFjdGlvbi4gTGV0J3MgZ2l2ZSBpdCBhbm90aGVyIHRyeSwgc2hhbGwgd2U/XCIsXG4gICAgICAgICAgICAgICdhbGVydCdcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQgPT09ICdkb2N4Jykge1xuICAgICAgY29uc3QgdXJsID1cbiAgICAgICAgdGhpcy5iYXNlVVJMICsgJy9hbGwvcG9saWN5L2VkaXQtcG9saWN5P2lkPScgKyB0aGlzLnBvbGljeUlkO1xuICAgICAgdGhpcy5pZnJhbWVTZXJ2aWNlLnJlZGlyZWN0SWZJbklmcmFtZSh1cmwsIHRydWUpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQgPT09ICd3b3JkJykge1xuICAgICAgICB0aGlzLmNyZWF0ZVdvcmRQb2xpY3koKTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50ID09PSAncGRmJykge1xuICAgICAgLy8gSWYgaXQgaXMgYSBwZGYgc2VuZCB0byB0aGUgd29ya3Jvb21cbiAgICAgIGNvbnN0IHVybCA9XG4gICAgICAgIHRoaXMuYmFzZVVSTCArICcvYWxsL3BvbGljeS93b3Jrcm9vbT9pZD0nICsgdGhpcy5wb2xpY3lJZDtcbiAgICAgIHRoaXMuaWZyYW1lU2VydmljZS5yZWRpcmVjdElmSW5JZnJhbWUodXJsLCB0cnVlKTtcbiAgICB9IGVsc2UgaWYgKGV2ZW50ID09PSAndGVtcGxhdGUnKSB7XG4gICAgICB0aGlzLmlmcmFtZVNlcnZpY2UucmVkaXJlY3RJZkluSWZyYW1lKHRoaXMudGVtcGxhdGVVcmwsIHRydWUpO1xuICAgIH1cbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnX2RJZCcsIHRoaXMucG9saWN5SWQpO1xuICB9XG4gIGVkaXRQb2xpY3lFbWl0KCkge1xuICAgIHRoaXMuc2VsZWN0ZWREb2N1bWVudFR5cGUgPSAnJztcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcbiAgICAgICdsYXN0RmlsZU5hbWVBbmRUeXBlJyxcbiAgICAgIEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgdHlwZTogdGhpcy5zZWxlY3RlZERvY3VtZW50VHlwZSxcbiAgICAgICAgbmFtZTogdGhpcy5maWxlbmFtZSxcbiAgICAgICAgcG9saWN5SWQ6IHRoaXMucG9saWN5SWQsXG4gICAgICB9KVxuICAgICk7XG4gICAgdGhpcy5lZGl0UG9saWN5LmVtaXQoKTtcbiAgfVxuXG4gIG9wZW5UZW1wbGF0ZUxpc3QoKSB7XG4gICAgdGhpcy5vcGVuVGVtcGxhdGUuZW1pdCgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZG9jdW1lbnQtc2VjdGlvblwiIFtjbGFzcy5ncmF5c2NhbGVdPVwiaXNUZW1wbGF0ZU9wZW5lZFwiPlxuICA8ZGl2IGNsYXNzPVwiZG9jdW1lbnQtc2VjdGlvbi1pbm5lclwiPlxuICAgIDxkaXYgY2xhc3M9XCJtZXNzYWdlLWJveFwiPlxuICAgICAgPHN2Z1xuICAgICAgICB2ZXJzaW9uPVwiMS4xXCJcbiAgICAgICAgaWQ9XCJDYXBhXzFcIlxuICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCJcbiAgICAgICAgeD1cIjBweFwiXG4gICAgICAgIHk9XCIwcHhcIlxuICAgICAgICB2aWV3Qm94PVwiMCAwIDQ4MC44IDQ4MC44XCJcbiAgICAgICAgc3R5bGU9XCJlbmFibGUtYmFja2dyb3VuZDogbmV3IDAgMCA0ODAuOCA0ODAuOFwiXG4gICAgICAgIHhtbDpzcGFjZT1cInByZXNlcnZlXCJcbiAgICAgID5cbiAgICAgICAgPHBhdGhcbiAgICAgICAgICBzdHlsZT1cImZpbGw6ICNmZmQ1MTdcIlxuICAgICAgICAgIGQ9XCJNMzE3LjExMiwzMTQuNGMtMjIuNCwyMi40LTE5LjYsNjcuNi0xOS42LDY3LjZoLTExMy42YzAsMCwyLjQtNDUuMi0xOS42LTY3LjZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjLTI0LjQtMjEuNi00MC01Mi44LTQwLTg3LjZjMC02NCw1Mi0xMTYsMTE2LTExNnMxMTYsNTIsMTE2LDExNkMzNTYuMzEyLDI2MS42LDM0MS4xMTIsMjkyLjgsMzE3LjExMiwzMTQuNEwzMTcuMTEyLDMxNC40elwiXG4gICAgICAgIC8+XG4gICAgICAgIDxnPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBzdHlsZT1cImZpbGw6ICNlNWU1ZTVcIlxuICAgICAgICAgICAgZD1cIk0zMDAuNzEyLDQxNy42YzAsNi00LjgsMTAuOC0xMC44LDEwLjhoLTk4LjhjLTYsMC0xMC44LTQuOC0xMC44LTEwLjhsMCwwYzAtNiw0LjgtMTAuOCwxMC44LTEwLjhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaDk4LjRDMjk1LjUxMiw0MDYuOCwzMDAuNzEyLDQxMS42LDMwMC43MTIsNDE3LjZMMzAwLjcxMiw0MTcuNnpcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIHN0eWxlPVwiZmlsbDogI2U1ZTVlNVwiXG4gICAgICAgICAgICBkPVwiTTI4NS45MTIsNDYyLjRjMCw2LTQuOCwxMC44LTEwLjgsMTAuOGgtNjkuMmMtNiwwLTEwLjgtNC44LTEwLjgtMTAuOGwwLDBjMC02LDQuOC0xMC44LDEwLjgtMTAuOFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoNjkuMkMyODEuMTEyLDQ1MS42LDI4NS45MTIsNDU2LjQsMjg1LjkxMiw0NjIuNEwyODUuOTEyLDQ2Mi40elwiXG4gICAgICAgICAgLz5cbiAgICAgICAgPC9nPlxuICAgICAgICA8Zz5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgc3R5bGU9XCJmaWxsOiAjMjEwYjIwXCJcbiAgICAgICAgICAgIGQ9XCJNMzIzLjExMiwzMTguNGMyNi0yMy42LDQwLjgtNTYuOCw0MC44LTkxLjZjMC02OC01NS42LTEyMy42LTEyMy42LTEyMy42cy0xMjMuNiw1NS42LTEyMy42LDEyMy42XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMwLDM1LjYsMTUuNiw2OS42LDQyLDkyLjhjMTkuNiwxOS42LDE3LjYsNjEuMiwxNy42LDYxLjZjMCwyLDAuOCw0LDIsNS42YzEuNiwxLjYsMy42LDIuNCw1LjYsMi40aDExMy4yYzIsMCw0LTAuOCw1LjYtMi40XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHMyLTMuNiwyLTUuNmMwLTAuNC0yLTQyLDE3LjYtNjEuNkMzMjIuNzEyLDMxOS4yLDMyMy4xMTIsMzE4LjgsMzIzLjExMiwzMTguNHogTTMxMS45MTIsMzA4LjRjLTAuOCwwLjQtMS4yLDEuMi0xLjYsMlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjLTE3LjYsMTguOC0yMC40LDQ5LjYtMjAuOCw2NGgtOThjLTAuNC0xNC44LTMuNi00Ni44LTIyLjQtNjUuNmMtMjMuNi0yMC44LTM3LjItNTAuNC0zNy4yLTgxLjZjMC02MCw0OC44LTEwOC40LDEwOC40LTEwOC40XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGM2MCwwLDEwOC40LDQ4LjgsMTA4LjQsMTA4LjRDMzQ4LjcxMiwyNTgsMzM1LjUxMiwyODgsMzExLjkxMiwzMDguNHpcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIHN0eWxlPVwiZmlsbDogIzIxMGIyMFwiXG4gICAgICAgICAgICBkPVwiTTI0MC4zMTIsMTM1LjJjLTQsMC03LjYsMy4yLTcuNiw3LjZjMCw0LDMuMiw3LjYsNy42LDcuNmM0NC44LDAsODEuMiwzNi40LDgxLjIsODEuMlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjMCw0LDMuMiw3LjYsNy42LDcuNmM0LDAsNy42LTMuMiw3LjYtNy42QzMzNi43MTIsMTc4LjQsMjkzLjUxMiwxMzUuMiwyNDAuMzEyLDEzNS4yelwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgc3R5bGU9XCJmaWxsOiAjMjEwYjIwXCJcbiAgICAgICAgICAgIGQ9XCJNMzA4LjMxMiw0MTcuNmMwLTEwLjQtOC40LTE4LjQtMTguNC0xOC40aC05OC44Yy0xMC40LDAtMTguNCw4LjQtMTguNCwxOC40XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMwLDEwLjQsOC40LDE4LjQsMTguNCwxOC40aDk4LjRDMjk5LjkxMiw0MzYsMzA4LjMxMiw0MjgsMzA4LjMxMiw0MTcuNnogTTI4OS41MTIsNDIwLjhoLTk4LjRjLTIsMC0zLjItMS42LTMuMi0zLjJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYzAtMiwxLjYtMy4yLDMuMi0zLjJoOTguNGMyLDAsMy4yLDEuNiwzLjIsMy4yQzI5My4xMTIsNDE5LjYsMjkxLjUxMiw0MjAuOCwyODkuNTEyLDQyMC44elwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgc3R5bGU9XCJmaWxsOiAjMjEwYjIwXCJcbiAgICAgICAgICAgIGQ9XCJNMjc1LjExMiw0NDRoLTY5LjJjLTEwLjQsMC0xOC40LDguNC0xOC40LDE4LjRjMCwxMC40LDguNCwxOC40LDE4LjQsMTguNGg2OS4yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMxMC40LDAsMTguNC04LjQsMTguNC0xOC40QzI5My41MTIsNDUyLjQsMjg1LjExMiw0NDQsMjc1LjExMiw0NDR6IE0yNzUuMTEyLDQ2NS42aC02OS4yYy0yLDAtMy4yLTEuNi0zLjItMy4yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMwLTIsMS42LTMuMiwzLjItMy4yaDY5LjJjMiwwLDMuMiwxLjYsMy4yLDMuMkMyNzguMzEyLDQ2NC40LDI3Ny4xMTIsNDY1LjYsMjc1LjExMiw0NjUuNnpcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIHN0eWxlPVwiZmlsbDogIzIxMGIyMFwiXG4gICAgICAgICAgICBkPVwiTTI0Ny45MTIsNTguOFY3LjZjMC00LTMuMi03LjYtNy42LTcuNmMtNCwwLTcuNiwzLjItNy42LDcuNnY1MS42YzAsNCwzLjIsNy42LDcuNiw3LjZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQzI0NC43MTIsNjYuNCwyNDcuOTEyLDYzLjIsMjQ3LjkxMiw1OC44elwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgc3R5bGU9XCJmaWxsOiAjMjEwYjIwXCJcbiAgICAgICAgICAgIGQ9XCJNMzY2LjMxMiwzOGMtMy42LTIuNC04LTEuMi0xMC40LDJsLTI4LjQsNDIuOGMtMi40LDMuNi0xLjIsOCwyLDEwLjRjMS4yLDAuOCwyLjgsMS4yLDQsMS4yXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMyLjQsMCw0LjgtMS4yLDYuNC0zLjJsMjguNC00Mi44QzM3MC43MTIsNDUuMiwzNjkuNTEyLDQwLjQsMzY2LjMxMiwzOHpcIlxuICAgICAgICAgIC8+XG4gICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgIHN0eWxlPVwiZmlsbDogIzIxMGIyMFwiXG4gICAgICAgICAgICBkPVwiTTE0OS45MTIsOTIuOGMxLjIsMCwyLjgtMC40LDQtMS4yYzMuNi0yLjQsNC40LTYuOCwyLjQtMTAuNGwtMjcuNi00My4yYy0yLjQtMy42LTYuOC00LjQtMTAuNC0yLjRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYy0zLjYsMi40LTQuNCw2LjgtMi40LDEwLjRsMjcuNiw0My4yQzE0NS4xMTIsOTEuNiwxNDcuNTEyLDkyLjgsMTQ5LjkxMiw5Mi44elwiXG4gICAgICAgICAgLz5cbiAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgc3R5bGU9XCJmaWxsOiAjMjEwYjIwXCJcbiAgICAgICAgICAgIGQ9XCJNNDMuOTEyLDEyOC44bDQ1LjIsMjQuNGMxLjIsMC44LDIuNCwwLjgsMy42LDAuOGMyLjgsMCw1LjItMS42LDYuOC00YzItMy42LDAuOC04LjQtMy4yLTEwLjRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbC00NS4yLTI0LjRjLTMuNi0yLTguNC0wLjgtMTAuNCwzLjJDMzkuMTEyLDEyMi40LDQwLjMxMiwxMjYuOCw0My45MTIsMTI4Ljh6XCJcbiAgICAgICAgICAvPlxuICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICBzdHlsZT1cImZpbGw6ICMyMTBiMjBcIlxuICAgICAgICAgICAgZD1cIk0zODcuOTEyLDE1NC40YzEuMiwwLDIuNC0wLjQsMy42LTAuOGw0NS4yLTI0LjRjMy42LTIsNS4yLTYuNCwzLjItMTAuNGMtMi0zLjYtNi40LTUuMi0xMC40LTMuMlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsLTQ1LjIsMjQuNGMtMy42LDItNS4yLDYuNC0zLjIsMTAuNEMzODIuMzEyLDE1Mi44LDM4NS4xMTIsMTU0LjQsMzg3LjkxMiwxNTQuNHpcIlxuICAgICAgICAgIC8+XG4gICAgICAgIDwvZz5cbiAgICAgIDwvc3ZnPlxuICAgICAgPHA+XG4gICAgICAgIFRoZXJlIGFyZSBtdWx0aXBsZSB3YXlzIHRvIGNyZWF0ZSBhIHBvbGljeSBvbiBWQ29tcGx5LiBZb3UgY2FuIGVpdGhlclxuICAgICAgICBkcmFmdCBpdCBmcm9tIHNjcmF0Y2ggdXNpbmcgVkNvbXBseSdzIG9ubGluZSBlZGl0b3Igb3IgdXBsb2FkIGFuXG4gICAgICAgIGV4aXN0aW5nIERPQ1ggb3IgUERGIGZpbGUuXG4gICAgICA8L3A+XG4gICAgPC9kaXY+XG4gICAgPGxhYmVsXG4gICAgICBjbGFzcz1cImRvY3VtZW50LWJveFwiXG4gICAgICBbY2xhc3MuYWN0aXZlXT1cInNlbGVjdGVkRG9jdW1lbnRUeXBlID09ICdkcmFmdCdcIlxuICAgID5cbiAgICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICBuYW1lPVwic2VsZWN0ZWREb2N1bWVudFR5cGVcIlxuICAgICAgICAoY2hhbmdlKT1cImNoYW5nZURvY1R5cGUoJ2RyYWZ0JylcIlxuICAgICAgICBbY2hlY2tlZF09XCJzZWxlY3RlZERvY3VtZW50VHlwZSA9PT0gJ2RyYWZ0J1wiXG4gICAgICAvPlxuICAgICAgPHN2ZyBpZD1cIkRyYWZ0XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIzMlwiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIj5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDAyXCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQwMlwiIGQ9XCJNMjgsMzJINGE0LDQsMCwwLDEtNC00VjRBNCw0LDAsMCwxLDQsMEgyOGE0LDQsMCwwLDEsNCw0VjI4YTQsNCwwLDAsMS00LDRcIiBmaWxsPVwiIzU2NWE2ZlwiLz5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDAzXCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQwM1wiIGQ9XCJNMjEuODg0LDguNTEsMTAuNTQ5LDEwLjM4NCwxMi40MjYsMjEuMDZsNC4zOC0uNjFhLjMzMy4zMzMsMCwwLDEsLjMyNi40MzVjLS4wNTEuMjE5LS4zMzguMjM1LS41MTQuMjY3LTEuNDc0LjI2Ni0zLjAwOS4zODgtNC40OTEuNjMxLS40MTYtLjAzMi0uMzIxLS43MTgtLjQ0MS0xbC0zLS4zNjVjLS4yMTMtLjEyLS4yLS4yNzMtLjItLjQ5Mi4wMTktLjYyMi4wOTItMS4yNTEuMTI1LTEuODcyLjE2LTMsLjMxNi02LC41LTguOTkzQTkuNDU3LDkuNDU3LDAsMCwxLDkuMTUyLDguMWEuMzY5LjM2OSwwLDAsMSwuMjY1LS4zbDguNTE5LjY4MUwyMi4yLDcuOGMuMjI1LjA2OC4yNDYuMTkuMy4zOTMuNTUzLDIuMjg4Ljc1OCw0Ljc3NSwxLjI4NSw3LjA4My4xNDMuNTMxLS41MDcuNzMxLS42NDIuMlpNMTcuMjExLDIxLjkzMmEuNTYzLjU2MywwLDAsMC0uMDcyLjI0LDguNTQ5LDguNTQ5LDAsMCwwLDAsMS4xODdjLjAxOS4yMTcuMDg4LjM5My4zMjguNDIxYTkuMTM4LDkuMTM4LDAsMCwwLDEuNDQ4LS4wMjEuNTMuNTMsMCwwLDAsLjEyMi0uMDY1bDMuNzU2LTMuNzcxTDIxLDE4LjEzWm01LjMyOS01LjM1Yy0uMzY1LjI4Ni0uNy43NTctMS4wNjEsMS4wNjJMMjMuMywxOS40MzdjLjMtLjM1Ljc3Ny0uNjg3LDEuMDUtMS4wNDQuMTUtLjIuMTc0LS4zMTIuMDE3LS41MTZhMTMuODUxLDEzLjg1MSwwLDAsMC0xLjMyNy0xLjMyNy4zOTMuMzkzLDAsMCwwLS4yMy0uMS40NzYuNDc2LDAsMCwwLS4yNzEuMTNcIiBmaWxsPVwiI2ZmZlwiLz5cbiAgICAgIDwvc3ZnPlxuICAgICAgXG4gICAgICA8ZGl2IGNsYXNzPVwibGFiZWwtcmlnaHRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInZhbHVlXCI+PHN0cm9uZz5DcmVhdGU8L3N0cm9uZz4gYSBQb2xpY3k8L2Rpdj5cbiAgICAgICAgPGkgY2xhc3M9XCJpY29ucyBkb2N1bWVudC1ib3gtaWNvbiB2eC1mcy0xNiB2eC1tci0yXCI+JiN4ZWE0Njs8L2k+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjaGVjay1jaXJjbGVcIj5cbiAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvblwiXG4gICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNTIgNTJcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxjaXJjbGVcbiAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiXG4gICAgICAgICAgICAgIGN4PVwiMjZcIlxuICAgICAgICAgICAgICBjeT1cIjI2XCJcbiAgICAgICAgICAgICAgcj1cIjI1XCJcbiAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiXG4gICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2xhYmVsPlxuXG4gICAgXG4gICAgPGxhYmVsXG4gICAgICAqbmdJZj1cImlzX21zX3dvcmRfaW50ZWdyYXRlZFwiXG4gICAgICBjbGFzcz1cImRvY3VtZW50LWJveFwiXG4gICAgICBbY2xhc3MuYWN0aXZlXT1cInNlbGVjdGVkRG9jdW1lbnRUeXBlID09ICd3b3JkJ1wiXG4gICAgPlxuICAgICAgPGlucHV0XG4gICAgICAgIHR5cGU9XCJyYWRpb1wiXG4gICAgICAgIG5hbWU9XCJzZWxlY3RlZERvY3VtZW50VHlwZVwiXG4gICAgICAgIChjaGFuZ2UpPVwiY2hhbmdlRG9jVHlwZSgnd29yZCcpXCJcbiAgICAgICAgW2NoZWNrZWRdPVwic2VsZWN0ZWREb2N1bWVudFR5cGUgPT09ICd3b3JkJ1wiXG4gICAgICAvPlxuICAgICAgPHN2ZyBpZD1cIldvcmQtSWNvblwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMzJcIiB2aWV3Qm94PVwiMCAwIDMyIDMyXCI+XG4gICAgICAgIDxwYXRoIGlkPVwiUGF0aF8yMDQwNFwiIGRhdGEtbmFtZT1cIlBhdGggMjA0MDRcIiBkPVwiTTI4LDMySDRhNCw0LDAsMCwxLTQtNFY0QTQsNCwwLDAsMSw0LDBIMjhhNCw0LDAsMCwxLDQsNFYyOGE0LDQsMCwwLDEtNCw0XCIgZmlsbD1cIiMxZTVkZDNcIi8+XG4gICAgICAgIDxwYXRoIGlkPVwiUGF0aF8yMDQwNVwiIGRhdGEtbmFtZT1cIlBhdGggMjA0MDVcIiBkPVwiTTEwLjQxOSw5LjcxOGwxLjg4OSw5LjEyMUwxMi40NCwyMGwuMTMyLS44ODUsMi4xNTItOS40LDIuNjI2LjAxOCwyLjE4Nyw5LjEwNi4xNzQsMS4xMzJhMTMuNCwxMy40LDAsMCwxLC4xNzQtMS4zNTJjLjUtMi45NTQsMS4xODgtNS44OCwxLjctOC44MzJsLjA0LS4wN0gyNEwyMS4wODUsMjIuMjgxbC0yLjgxOC0uMDI2TDE1LjkzMSwxMi4yMmwtLjE2LDEuMDc3LTIuMDE1LDguOTg2LTIuODI5LS4wMjhMOCw5LjcxOFpcIiBmaWxsPVwiI2ZmZlwiLz5cbiAgICAgIDwvc3ZnPlxuICAgICAgXG4gICAgICA8ZGl2IGNsYXNzPVwibGFiZWwtcmlnaHRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInZhbHVlXCI+e3tjcmVhdGVXb3JkUG9saWN5VGV4dH19PC9kaXY+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbnMgZG9jdW1lbnQtYm94LWljb24gdngtZnMtMTYgdngtbXItMlwiPiYjeGVhNDY7PC9pPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2hlY2stY2lyY2xlXCI+XG4gICAgICAgICAgPHN2Z1xuICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25cIlxuICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDUyIDUyXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Y2lyY2xlXG4gICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uX19jaXJjbGVcIlxuICAgICAgICAgICAgICBjeD1cIjI2XCJcbiAgICAgICAgICAgICAgY3k9XCIyNlwiXG4gICAgICAgICAgICAgIHI9XCIyNVwiXG4gICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvbl9fY2hlY2tcIlxuICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgIGQ9XCJNMTQuMSAyNy4ybDcuMSA3LjIgMTYuNy0xNi44XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9zdmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9sYWJlbD5cblxuXG5cbiAgICA8bGFiZWxcbiAgICAgIGNsYXNzPVwiZG9jdW1lbnQtYm94XCJcbiAgICAgICpuZ0lmPVwic2hvd0RvY3hCbG9ja1wiXG4gICAgICBbY2xhc3MuYWN0aXZlXT1cInNlbGVjdGVkRG9jdW1lbnRUeXBlID09ICdkb2N4JyAmJiAhZG9jeEVycm9yPy52aXNpYmxlXCJcbiAgICAgIFtjbGFzcy5lcnJvcl09XCJkb2N4RXJyb3I/LnZpc2libGVcIlxuICAgID5cbiAgICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgIGFjY2VwdD1cIi5kb2N4XCJcbiAgICAgICAgaWQ9XCJET0NmaWxlXCJcbiAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVGaWxlSW5wdXQoJGV2ZW50LnRhcmdldC5maWxlcylcIlxuICAgICAgICBvbmNsaWNrPVwiZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XCJcbiAgICAgICAgI2RvY3hVcGxvYWRCdXR0b25cbiAgICAgIC8+XG4gICAgICA8c3ZnIGlkPVwiV29yZC1JY29uXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIzMlwiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIj5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDA0XCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQwNFwiIGQ9XCJNMjgsMzJINGE0LDQsMCwwLDEtNC00VjRBNCw0LDAsMCwxLDQsMEgyOGE0LDQsMCwwLDEsNCw0VjI4YTQsNCwwLDAsMS00LDRcIiBmaWxsPVwiIzFlNWRkM1wiLz5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDA1XCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQwNVwiIGQ9XCJNMTAuNDE5LDkuNzE4bDEuODg5LDkuMTIxTDEyLjQ0LDIwbC4xMzItLjg4NSwyLjE1Mi05LjQsMi42MjYuMDE4LDIuMTg3LDkuMTA2LjE3NCwxLjEzMmExMy40LDEzLjQsMCwwLDEsLjE3NC0xLjM1MmMuNS0yLjk1NCwxLjE4OC01Ljg4LDEuNy04LjgzMmwuMDQtLjA3SDI0TDIxLjA4NSwyMi4yODFsLTIuODE4LS4wMjZMMTUuOTMxLDEyLjIybC0uMTYsMS4wNzctMi4wMTUsOC45ODYtMi44MjktLjAyOEw4LDkuNzE4WlwiIGZpbGw9XCIjZmZmXCIvPlxuICAgICAgPC9zdmc+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbC1yaWdodFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIShzZWxlY3RlZERvY3VtZW50VHlwZSA9PSAnZG9jeCcgJiYgZmlsZW5hbWUpXCJcbiAgICAgICAgICAgID5VcGxvYWQgYSA8c3Ryb25nPkRPQ1g8L3N0cm9uZz48L25nLWNvbnRhaW5lclxuICAgICAgICAgID5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWREb2N1bWVudFR5cGUgPT0gJ2RvY3gnICYmIGZpbGVuYW1lXCI+e3tcbiAgICAgICAgICAgIGZpbGVuYW1lXG4gICAgICAgICAgfX08L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJlcnJvci1tc2ctdGV4dFwiICpuZ0lmPVwiZG9jeEVycm9yPy52aXNpYmxlXCI+XG4gICAgICAgICAge3sgZG9jeEVycm9yPy5tZXNzYWdlIH19XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8aSBjbGFzcz1cImljb25zIGRvY3VtZW50LWJveC1pY29uIHZ4LWZzLTE2IHZ4LW1yLTJcIj4mI3hlYTk3OzwvaT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNoZWNrLWNpcmNsZVwiICpuZ0lmPVwiIWRvY3hFcnJvcj8udmlzaWJsZVwiPlxuICAgICAgICAgIDxzdmdcbiAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uXCJcbiAgICAgICAgICAgIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIlxuICAgICAgICAgICAgdmlld0JveD1cIjAgMCA1MiA1MlwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGNpcmNsZVxuICAgICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvbl9fY2lyY2xlXCJcbiAgICAgICAgICAgICAgY3g9XCIyNlwiXG4gICAgICAgICAgICAgIGN5PVwiMjZcIlxuICAgICAgICAgICAgICByPVwiMjVcIlxuICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPHBhdGhcbiAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25fX2NoZWNrXCJcbiAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgICBkPVwiTTE0LjEgMjcuMmw3LjEgNy4yIDE2LjctMTYuOFwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgIDwvc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGkgY2xhc3M9XCJpY29ucyBlcnJvci1pY29uXCIgKm5nSWY9XCJkb2N4RXJyb3I/LnZpc2libGVcIj4mI3hlOTE0OzwvaT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImxpbmUtcHJvZ3Jlc3NcIlxuICAgICAgICAqbmdJZj1cInNlbGVjdGVkRG9jdW1lbnRUeXBlID09ICdkb2N4JyAmJiBpc1VwbG9hZGluZ1wiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJsaW5lLXByb2dyZXNzLWJhclwiPjwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9sYWJlbD5cbiAgICA8bGFiZWxcbiAgICAgIGNsYXNzPVwiZG9jdW1lbnQtYm94XCJcbiAgICAgICpuZ0lmPVwic2hvd1BkZkJsb2NrXCJcbiAgICAgIFtjbGFzcy5hY3RpdmVdPVwic2VsZWN0ZWREb2N1bWVudFR5cGUgPT0gJ3BkZidcIlxuICAgID5cbiAgICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgIGFjY2VwdD1cIi5wZGZcIlxuICAgICAgICBpZD1cIlBERmZpbGVcIlxuICAgICAgICAoY2hhbmdlKT1cImhhbmRsZUZpbGVJbnB1dCgkZXZlbnQudGFyZ2V0LmZpbGVzKVwiXG4gICAgICAgIG9uY2xpY2s9XCJldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcIlxuICAgICAgICAjcGRmVXBsb2FkQnV0dG9uXG4gICAgICAvPlxuICAgICAgPHN2ZyBpZD1cIlBERi1JY29uXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIzMlwiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIj5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDA4XCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQwOFwiIGQ9XCJNMjgsMzJINGE0LDQsMCwwLDEtNC00VjRBNCw0LDAsMCwxLDQsMEgyOGE0LDQsMCwwLDEsNCw0VjI4YTQsNCwwLDAsMS00LDRcIiBmaWxsPVwiI2E4MmExZFwiLz5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDA5XCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQwOVwiIGQ9XCJNMTYuMTI1LDEzLjc3OEExLjM5LDEuMzksMCwwLDAsMTYuMjg1LDE1YTE2LjEwNiwxNi4xMDYsMCwwLDAsMi4xMDYsMi41NTRjLjMxMi0uMDQ1LjYtLjA0NywxLjItLjA5MmE2Ljk2NCw2Ljk2NCwwLDAsMSwzLjYxNi4yMzksMS4zMSwxLjMxLDAsMCwxLC43ODQsMS4zNjEsMS4xNzYsMS4xNzYsMCwwLDEtMS4wNzUuOTgxYy0yLjIyNC4zMzYtMy4zMDUtLjktNC41NzktMS43NDZhMi4wOTQsMi4wOTQsMCwwLDAtLjgxMi4wMjEsMjUuNzgyLDI1Ljc4MiwwLDAsMC0zLjQxMi45MTZjLS4yNTMuMDg5LS4zMzguMy0uNTMzLjYwOWExMS4wNjIsMTEuMDYyLDAsMCwxLTIuODIsMy40MjcsMi4xNDUsMi4xNDUsMCwwLDEtMS44NjEuNDQ1Yy0xLS4yMjItMS4xNzgtMS4xODItLjUtMS45NDJBOS40NTIsOS40NTIsMCwwLDEsMTAsMjAuNDYyYTE0LjcxNCwxNC43MTQsMCwwLDEsMi40MTgtMS4xMDljLjQ5MS0uNDYxLjU1Ni0uNjg2Ljk2Ni0xLjc2NC40MzEtMS4xMzYuOTIyLTIuMjUsMS4zMjQtMy40YTEuNjc5LDEuNjc5LDAsMCwwLS4wMzUtMS4wNjIsNy43LDcuNywwLDAsMS0uNjM4LTMuNDc2LDEuNCwxLjQsMCwwLDEsLjk1OS0xLjM5MywxLjI3OSwxLjI3OSwwLDAsMSwxLjQ2NC44Yy4yLjQ3OS41NTIsMS43NS0uMzMxLDQuNzI4bS0uMzc3LDEuMzc3LTEuNDE4LDMuNDIyLDMuMzUzLS44ODMtMS45MzUtMi41MzltMy4yMjIsMi44ODJBNC41LDQuNSwwLDAsMCwyMS45MiwxOS4zN2MuMzc3LDAsLjcxNC0uMTMxLjczMy0uNi4wNTEtMS4yNTEtMi42NTYtLjg2NC0zLjY4Mi0uNzNtLTYuOTYsMi4wMzdhOS43ODgsOS43ODgsMCwwLDAtMi45NzUsMS44Yy0uMjE4LjE3MS0uNDQ2LjcxOC0uMjgyLjk4NHMuODEuMDY3LDEtLjEyYTkuMjksOS4yOSwwLDAsMCwyLjI1My0yLjY2NG0zLjI0Ni03LjI0M2MtLjA0NS0uODc4LjQ2MS0yLjE3Mi40MzctMy4yMjQtLjAwOC0uMzU1LS4wNTEtLjc0Ny0uNS0uNzcyLS4zNjQtLjAyLS41MzQuNDc2LS41NjkuNzYyYTUuOCw1LjgsMCwwLDAsLjYzNiwzLjIzNFwiIGZpbGw9XCIjZmZmXCIvPlxuICAgICAgPC9zdmc+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbC1yaWdodFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIj5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIShzZWxlY3RlZERvY3VtZW50VHlwZSA9PSAncGRmJyAmJiBmaWxlbmFtZSlcIlxuICAgICAgICAgICAgPlVwbG9hZCBhIDxzdHJvbmc+UERGPC9zdHJvbmc+PC9uZy1jb250YWluZXJcbiAgICAgICAgICA+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInNlbGVjdGVkRG9jdW1lbnRUeXBlID09ICdwZGYnICYmIGZpbGVuYW1lXCI+e3tcbiAgICAgICAgICAgIGZpbGVuYW1lXG4gICAgICAgICAgfX08L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbnMgZG9jdW1lbnQtYm94LWljb24gdngtZnMtMTYgdngtbXItMlwiPiYjeGVhOTc7PC9pPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2hlY2stY2lyY2xlXCI+XG4gICAgICAgICAgPHN2Z1xuICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25cIlxuICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDUyIDUyXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8Y2lyY2xlXG4gICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uX19jaXJjbGVcIlxuICAgICAgICAgICAgICBjeD1cIjI2XCJcbiAgICAgICAgICAgICAgY3k9XCIyNlwiXG4gICAgICAgICAgICAgIHI9XCIyNVwiXG4gICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8cGF0aFxuICAgICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvbl9fY2hlY2tcIlxuICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiXG4gICAgICAgICAgICAgIGQ9XCJNMTQuMSAyNy4ybDcuMSA3LjIgMTYuNy0xNi44XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgPC9zdmc+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwibGluZS1wcm9ncmVzc1wiXG4gICAgICAgICpuZ0lmPVwic2VsZWN0ZWREb2N1bWVudFR5cGUgPT0gJ3BkZicgJiYgaXNVcGxvYWRpbmdcIlxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGluZS1wcm9ncmVzcy1iYXJcIj48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvbGFiZWw+XG4gICAgPCEtLSBTZWxlY3QgYSB0ZW1wbGF0ZSAtLT5cbiAgICA8bGFiZWxcbiAgICAgIGNsYXNzPVwiZG9jdW1lbnQtYm94XCJcbiAgICAgIFtjbGFzcy5hY3RpdmVdPVwic2VsZWN0ZWREb2N1bWVudFR5cGUgPT09ICd0ZW1wbGF0ZSdcIlxuICAgID5cbiAgICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwicmFkaW9cIlxuICAgICAgICBuYW1lPVwic2VsZWN0ZWREb2N1bWVudFR5cGVcIlxuICAgICAgICAoY2hhbmdlKT1cImNoYW5nZURvY1R5cGUoJ3RlbXBsYXRlJylcIlxuICAgICAgICBbY2hlY2tlZF09XCJzZWxlY3RlZERvY3VtZW50VHlwZSA9PT0gJ3RlbXBsYXRlJ1wiXG4gICAgICAvPlxuICAgICAgPHN2ZyBpZD1cIlRNUC1JY29uXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIzMlwiIHZpZXdCb3g9XCIwIDAgMzIgMzJcIj5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDA2XCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQwNlwiIGQ9XCJNMjgsMzJINGE0LDQsMCwwLDEtNC00VjRBNCw0LDAsMCwxLDQsMEgyOGE0LDQsMCwwLDEsNCw0VjI4YTQsNCwwLDAsMS00LDRcIiBmaWxsPVwiIzM0YWE0NFwiLz5cbiAgICAgICAgPHBhdGggaWQ9XCJQYXRoXzIwNDEwXCIgZGF0YS1uYW1lPVwiUGF0aCAyMDQxMFwiIGQ9XCJNMTYsMS43NzhWMy41NTVIMFYxLjc3OEExLjc4MywxLjc4MywwLDAsMSwxLjc3OCwwSDE0LjIyM0ExLjc4MywxLjc4MywwLDAsMSwxNiwxLjc3OE0wLDQuNDQ0SDE2djguODg5YTEuNzc4LDEuNzc4LDAsMCwxLTEuNzc3LDEuNzc4SDEuNzc4QTEuNzc4LDEuNzc4LDAsMCwxLDAsMTMuMzMzWk02Ljk5LDkuOTI4QS44OTEuODkxLDAsMCwwLDYuMSw5LjAzOUgzLjY0MmEuODkxLjg5MSwwLDAsMC0uODg4Ljg4OXYyLjQ1NmEuODkxLjg5MSwwLDAsMCwuODg4Ljg4OUg2LjFhLjg5MS44OTEsMCwwLDAsLjg4OC0uODg5Wm02LjMwNiwwYS44OTIuODkyLDAsMCwwLS44ODktLjg4OUg5Ljk0OGEuODkxLjg5MSwwLDAsMC0uODg4Ljg4OXYyLjQ1NmEuODkxLjg5MSwwLDAsMCwuODg4Ljg4OWgyLjQ1OWEuODkyLjg5MiwwLDAsMCwuODg5LS44ODlaTTIuNjY3LDcuMTExQS44ODkuODg5LDAsMCwwLDMuNTU2LDhoOC44ODlhLjg4OS44ODksMCwwLDAsMC0xLjc3OEgzLjU1NmEuODg5Ljg4OSwwLDAsMC0uODg5Ljg4OVwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSg4IDcuOTk5KVwiIGZpbGw9XCIjZmZmXCIvPlxuICAgICAgPC9zdmc+XG4gICAgICBcbiAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbC1yaWdodFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWVcIj5EcmFmdCBVc2luZyBhIDxzdHJvbmc+VGVtcGxhdGU8L3N0cm9uZz48L2Rpdj5cbiAgICAgICAgPGkgY2xhc3M9XCJpY29ucyBkb2N1bWVudC1ib3gtaWNvbiB2eC1mcy0xNiB2eC1tci0yXCI+JiN4ZWE0Njs8L2k+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjaGVjay1jaXJjbGVcIj5cbiAgICAgICAgICA8c3ZnXG4gICAgICAgICAgICBjbGFzcz1cImNoZWNrSWNvblwiXG4gICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNTIgNTJcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxjaXJjbGVcbiAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja0ljb25fX2NpcmNsZVwiXG4gICAgICAgICAgICAgIGN4PVwiMjZcIlxuICAgICAgICAgICAgICBjeT1cIjI2XCJcbiAgICAgICAgICAgICAgcj1cIjI1XCJcbiAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxwYXRoXG4gICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tJY29uX19jaGVja1wiXG4gICAgICAgICAgICAgIGZpbGw9XCJub25lXCJcbiAgICAgICAgICAgICAgZD1cIk0xNC4xIDI3LjJsNy4xIDcuMiAxNi43LTE2LjhcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICA8L3N2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2xhYmVsPlxuICAgIDwhLS0gRW5kIFNlbGVjdCBhIHRlbXBsYXRlIC0tPlxuICAgIDxhcHAtbG9hZGVyLWlubGluZSAqbmdJZj1cImlzTG9hZGVyXCI+PC9hcHAtbG9hZGVyLWlubGluZT5cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJib3R0b20tYnV0dG9uXCIgW2NsYXNzLmdyYXlzY2FsZV09XCJpc1RlbXBsYXRlT3BlbmVkXCI+XG4gIDxidXR0b25cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAoY2xpY2spPVwiZWRpdFBvbGljeUVtaXQoKVwiXG4gICAgY2xhc3M9XCJiYWNrXCJcbiAgICBbY2xhc3MuZGlzYWJsZWRdPVwiaXNUZW1wbGF0ZU9wZW5lZFwiXG4gID5cbiAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTkxZDs8L2k+IEJhY2tcbiAgPC9idXR0b24+XG4gIDxidXR0b25cbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAoY2xpY2spPVwiZWRpdG9yKHNlbGVjdGVkRG9jdW1lbnRUeXBlKVwiXG4gICAgY2xhc3M9XCJuZXh0XCJcbiAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIXNlbGVjdGVkRG9jdW1lbnRUeXBlIHx8IGlzVGVtcGxhdGVPcGVuZWQgfHwgaXNMb2FkZXJcIlxuICA+XG4gICAgTmV4dCA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTkxZTs8L2k+XG4gIDwvYnV0dG9uPlxuPC9kaXY+XG4iXX0=
@@ -1,6 +1,5 @@
1
1
  export const WORD_CONSTANTS = {
2
2
  MS_WORD_OPTION: 'Create a Policy using MS Word',
3
- ff_policy_ms_word_integration: 'ff_policy_ms_word_integration',
4
3
  createWordPolicy_snackbar_message: "Oops! Something went wrong and we were unable to complete this action. Let's give it another try, shall we?",
5
4
  };
6
5
  export const WORD_PAYLOAD = {
@@ -19,4 +18,4 @@ export const WORD_URL_CONSTANTS = {
19
18
  createVersion: 'createVersion',
20
19
  workroom_url: '/all/policy/workroom?id=',
21
20
  };
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXMtd29yZC5jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy1wb2xpY3kvbXMtd29yZC5jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLGNBQWMsRUFBRSwrQkFBK0I7SUFDL0MsNkJBQTZCLEVBQUUsK0JBQStCO0lBQzlELGlDQUFpQyxFQUMvQiw2R0FBNkc7Q0FDaEgsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRztJQUMxQixXQUFXLEVBQUUsUUFBUTtJQUNyQixTQUFTLEVBQUUsT0FBTztJQUNsQixNQUFNLEVBQUUsU0FBUztJQUNqQixZQUFZLEVBQUUsQ0FBQztJQUNmLGNBQWMsRUFBRSxFQUFFO0lBQ2xCLEdBQUcsRUFBRTtRQUNILElBQUksRUFBRSxFQUFFO1FBQ1IsT0FBTyxFQUFFLEVBQUU7S0FDWjtDQUNGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUNoQyxtQkFBbUIsRUFBRSxrQkFBa0I7SUFDdkMsYUFBYSxFQUFFLGVBQWU7SUFDOUIsWUFBWSxFQUFFLDBCQUEwQjtDQUN6QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFdPUkRfQ09OU1RBTlRTID0ge1xuICBNU19XT1JEX09QVElPTjogJ0NyZWF0ZSBhIFBvbGljeSB1c2luZyBNUyBXb3JkJyxcbiAgZmZfcG9saWN5X21zX3dvcmRfaW50ZWdyYXRpb246ICdmZl9wb2xpY3lfbXNfd29yZF9pbnRlZ3JhdGlvbicsXG4gIGNyZWF0ZVdvcmRQb2xpY3lfc25hY2tiYXJfbWVzc2FnZTpcbiAgICBcIk9vcHMhIFNvbWV0aGluZyB3ZW50IHdyb25nIGFuZCB3ZSB3ZXJlIHVuYWJsZSB0byBjb21wbGV0ZSB0aGlzIGFjdGlvbi4gTGV0J3MgZ2l2ZSBpdCBhbm90aGVyIHRyeSwgc2hhbGwgd2U/XCIsXG59O1xuXG5leHBvcnQgY29uc3QgV09SRF9QQVlMT0FEID0ge1xuICBtb2R1bGVfbmFtZTogJ1BPTElDWScsXG4gIGluY3JlbWVudDogJ01BSk9SJyxcbiAgYWN0aW9uOiAnQ1JFQVRFRCcsXG4gIG1zX3dvcmRfdHlwZTogMSxcbiAgZG9jeF9maWxlX3BhdGg6ICcnLFxuICB1cmw6IHtcbiAgICBlZGl0OiAnJyxcbiAgICBwcmV2aWV3OiAnJyxcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCBXT1JEX1VSTF9DT05TVEFOVFMgPSB7XG4gIG5ld193b3JkX3BvbGljeV91cmw6ICdodHRwczovL3dvcmQubmV3JyxcbiAgY3JlYXRlVmVyc2lvbjogJ2NyZWF0ZVZlcnNpb24nLFxuICB3b3Jrcm9vbV91cmw6ICcvYWxsL3BvbGljeS93b3Jrcm9vbT9pZD0nLFxufTtcbiJdfQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXMtd29yZC5jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi93b3JrZmxvdy1wb2xpY3kvbXMtd29yZC5jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLGNBQWMsRUFBRSwrQkFBK0I7SUFDL0MsaUNBQWlDLEVBQy9CLDZHQUE2RztDQUNoSCxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHO0lBQzFCLFdBQVcsRUFBRSxRQUFRO0lBQ3JCLFNBQVMsRUFBRSxPQUFPO0lBQ2xCLE1BQU0sRUFBRSxTQUFTO0lBQ2pCLFlBQVksRUFBRSxDQUFDO0lBQ2YsY0FBYyxFQUFFLEVBQUU7SUFDbEIsR0FBRyxFQUFFO1FBQ0gsSUFBSSxFQUFFLEVBQUU7UUFDUixPQUFPLEVBQUUsRUFBRTtLQUNaO0NBQ0YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHO0lBQ2hDLG1CQUFtQixFQUFFLGtCQUFrQjtJQUN2QyxhQUFhLEVBQUUsZUFBZTtJQUM5QixZQUFZLEVBQUUsMEJBQTBCO0NBQ3pDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgV09SRF9DT05TVEFOVFMgPSB7XG4gIE1TX1dPUkRfT1BUSU9OOiAnQ3JlYXRlIGEgUG9saWN5IHVzaW5nIE1TIFdvcmQnLFxuICBjcmVhdGVXb3JkUG9saWN5X3NuYWNrYmFyX21lc3NhZ2U6XG4gICAgXCJPb3BzISBTb21ldGhpbmcgd2VudCB3cm9uZyBhbmQgd2Ugd2VyZSB1bmFibGUgdG8gY29tcGxldGUgdGhpcyBhY3Rpb24uIExldCdzIGdpdmUgaXQgYW5vdGhlciB0cnksIHNoYWxsIHdlP1wiLFxufTtcblxuZXhwb3J0IGNvbnN0IFdPUkRfUEFZTE9BRCA9IHtcbiAgbW9kdWxlX25hbWU6ICdQT0xJQ1knLFxuICBpbmNyZW1lbnQ6ICdNQUpPUicsXG4gIGFjdGlvbjogJ0NSRUFURUQnLFxuICBtc193b3JkX3R5cGU6IDEsXG4gIGRvY3hfZmlsZV9wYXRoOiAnJyxcbiAgdXJsOiB7XG4gICAgZWRpdDogJycsXG4gICAgcHJldmlldzogJycsXG4gIH0sXG59O1xuXG5leHBvcnQgY29uc3QgV09SRF9VUkxfQ09OU1RBTlRTID0ge1xuICBuZXdfd29yZF9wb2xpY3lfdXJsOiAnaHR0cHM6Ly93b3JkLm5ldycsXG4gIGNyZWF0ZVZlcnNpb246ICdjcmVhdGVWZXJzaW9uJyxcbiAgd29ya3Jvb21fdXJsOiAnL2FsbC9wb2xpY3kvd29ya3Jvb20/aWQ9Jyxcbn07XG4iXX0=