tango-app-ui-ticket-user 3.0.51-dev → 3.0.53-dev
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/infratickets/infratickets.component.mjs +6 -11
- package/esm2022/lib/components/tango-ticket-users/tango-ticket-users.component.mjs +3 -3
- package/fesm2022/tango-app-ui-ticket-user.mjs +7 -12
- package/fesm2022/tango-app-ui-ticket-user.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -68,12 +68,7 @@ export class InfraticketsComponent {
|
|
|
68
68
|
issueFilter;
|
|
69
69
|
filterStores = [];
|
|
70
70
|
clientId;
|
|
71
|
-
workHistorydata = [
|
|
72
|
-
{ fileDate: '07-06-24', clientName: 'sangeetha', storeName: 'lkst905', location: 'chennai', type: 'audit', accuracy: '80%', timespent: '15mins', status: 'completed' },
|
|
73
|
-
{ fileDate: '08-06-24', clientName: 'miniso', storeName: 'lkst905', location: 'chennai', type: 're-audit', accuracy: '80%', timespent: '15mins', status: 'inprogress' },
|
|
74
|
-
{ fileDate: '09-06-24', clientName: 'lenskart', storeName: 'lkst905', location: 'chennai', type: 'audit', accuracy: '80%', timespent: '15mins', status: 'draft' },
|
|
75
|
-
{ fileDate: '10-06-24', clientName: 'lenskart', storeName: 'lkst905', location: 'chennai', type: 'audit', accuracy: '80%', timespent: '15mins', status: 'completed' }
|
|
76
|
-
];
|
|
71
|
+
workHistorydata = [];
|
|
77
72
|
destroy$ = new Subject();
|
|
78
73
|
user;
|
|
79
74
|
type = "infra";
|
|
@@ -519,7 +514,7 @@ export class InfraticketsComponent {
|
|
|
519
514
|
let data = {
|
|
520
515
|
userId: this.user?._id,
|
|
521
516
|
offset: this.offset,
|
|
522
|
-
limit:
|
|
517
|
+
limit: this.limit,
|
|
523
518
|
fromDate: this.headerFilter?.date?.startDate,
|
|
524
519
|
toDate: this.headerFilter?.date?.endDate,
|
|
525
520
|
issueType: this.type,
|
|
@@ -550,7 +545,7 @@ export class InfraticketsComponent {
|
|
|
550
545
|
}
|
|
551
546
|
dataObject1 = [
|
|
552
547
|
{ Description: 'Status', Issues: [{ text: "Store Operation Issues", id: 'Store Operation Issues' }, { text: "Internet Issues", id: 'Internet Issues' },
|
|
553
|
-
{ text: "Camera Issues", id: "Camera Issues" }, { text: "System Issues", id: "System Issues" }, { text: "Application Issues", id: "Application Issues" }, { text: "Not Identified", id: "
|
|
548
|
+
{ text: "Camera Issues", id: "Camera Issues" }, { text: "System Issues", id: "System Issues" }, { text: "Application Issues", id: "Application Issues" }, { text: "Not Identified", id: "notidentified" }] },
|
|
554
549
|
];
|
|
555
550
|
applyFilters(event) {
|
|
556
551
|
if (event?.length) {
|
|
@@ -567,13 +562,13 @@ export class InfraticketsComponent {
|
|
|
567
562
|
this.userTicketList('closed');
|
|
568
563
|
}
|
|
569
564
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: InfraticketsComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }, { token: i0.ChangeDetectorRef }, { token: i2.DataService }, { token: i3.ToastService }, { token: i4.TicketsService }, { token: i2.DataService }, { token: i5.GlobalStateService }, { token: i6.ExcelService }], target: i0.ɵɵFactoryTarget.Component });
|
|
570
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: InfraticketsComponent, selector: "lib-infratickets", host: { listeners: { "document:click": "onClick($event)" } }, ngImport: i0, template: "\r\n<div class=\"card\">\r\n <div class=\"card-header border-0 pt-3\">\r\n <h3 class=\"card-title align-items-start flex-column\">\r\n <span *ngIf=\"type !== 'mat' && type !== 'dataMismatch'\" class=\"card-label mb-2\">{{type | titlecase}} Tickets</span>\r\n <span *ngIf=\"type === 'dataMismatch'\" class=\"card-label mb-2\">Data Mismatch Tickets</span>\r\n <span *ngIf=\"type === 'mat'\" class=\"card-label mb-2\">Employee Mat</span>\r\n <!-- <span class=\"text-sub mb-2\">Last updated 1 hour ago</span> -->\r\n </h3>\r\n <div *ngIf=\"userData ==='Workspace'\" class=\"card-toolbar\">\r\n <div class=\"d-flex\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <span class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <rect opacity=\"0.5\" x=\"17.0365\" y=\"15.1223\" width=\"8.15546\" height=\"2\" rx=\"1\"\r\n transform=\"rotate(45 17.0365 15.1223)\" fill=\"currentColor\"></rect>\r\n <path\r\n d=\"M11 19C6.55556 19 3 15.4444 3 11C3 6.55556 6.55556 3 11 3C15.4444 3 19 6.55556 19 11C19 15.4444 15.4444 19 11 19ZM11 5C7.53333 5 5 7.53333 5 11C5 14.4667 7.53333 17 11 17C14.4667 17 17 14.4667 17 11C17 7.53333 14.4667 5 11 5Z\"\r\n fill=\"currentColor\"></path>\r\n </svg>\r\n </span>\r\n <input type=\"text\" class=\"form-control ps-14 me-2\" \r\n placeholder=\"Search\" autocomplete=\"off\" [(ngModel)]=\"searchWorkspace\" (change)=\"searchTickets()\"/>\r\n <lib-filters *ngIf=\"type !== 'mat' && type !=='dataMismatch'\" [dataObject]=\"dataObject1\" (appliedFilters)=\"applyFilters($event)\"></lib-filters>\r\n \r\n <!-- <div *ngIf=\"type !== 'mat'\" class=\"position-relative\">\r\n <button type=\"button\" (click)=\"openDropdown($event)\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\"><svg\r\n width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M5 10H15M2.5 5H17.5M7.5 15H12.5\" stroke=\"#344054\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2\">Filter</span> </button>\r\n <div *ngIf=\"dropDown\" class=\"card py-1 w-200px position-absolute top-50px end-0\">\r\n <ul *ngFor=\"let item of dropdownItems\" class=\"list-unstyled\">\r\n <li [ngClass]=\"this.selectedIssue === item ? 'active' : ''\" class=\"camera px-5 items fw-semibold cursor-pointer py-2\" (click)=\"selectItem(item)\">{{item}}</li>\r\n </ul>\r\n </div>\r\n </div> -->\r\n\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isDownload && (!noData.open || !noData.inprogress || !noData.closed)\" (click)=\"exportData()\" class=\"btn btn-outline p-3 text-nowrap border border-gray ms-2 me-2\" type=\"button\"><span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M17.5 12.5V15.8333C17.5 16.2754 17.3244 16.6993 17.0118 17.0118C16.6993 17.3244 16.2754 17.5 15.8333 17.5H4.16667C3.72464 17.5 3.30072 17.3244 2.98816 17.0118C2.67559 16.6993 2.5 16.2754 2.5 15.8333V12.5M14.1667 6.66667L10 2.5M10 2.5L5.83333 6.66667M10 2.5V12.5\" stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span> Export</button>\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isEdit\" type=\"button\" (click)=\"takeTicket()\"\r\n class=\"btn btn-primary mx-2 rounded-3 text-nowrap\"><span class=\"ms-2 text-white\">Take Ticket</span> </button>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"userData ==='History'\" class=\"card-toolbar\">\r\n <div class=\"d-flex\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <span class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <rect opacity=\"0.5\" x=\"17.0365\" y=\"15.1223\" width=\"8.15546\" height=\"2\" rx=\"1\"\r\n transform=\"rotate(45 17.0365 15.1223)\" fill=\"currentColor\"></rect>\r\n <path\r\n d=\"M11 19C6.55556 19 3 15.4444 3 11C3 6.55556 6.55556 3 11 3C15.4444 3 19 6.55556 19 11C19 15.4444 15.4444 19 11 19ZM11 5C7.53333 5 5 7.53333 5 11C5 14.4667 7.53333 17 11 17C14.4667 17 17 14.4667 17 11C17 7.53333 14.4667 5 11 5Z\"\r\n fill=\"currentColor\"></path>\r\n </svg>\r\n </span>\r\n <input type=\"text\" class=\"form-control ps-14 me-2\" \r\n placeholder=\"Search\" autocomplete=\"off\" [(ngModel)]=\"searchHistory\" (change)=\"searchHistoryTable()\" />\r\n \r\n <lib-filters *ngIf=\"type !== 'mat' && type!=='audit' && filterStores?.length > 0\" [dataObject]=\"dataObject\" (appliedFilters)=\"receiveData($event)\" ></lib-filters>\r\n\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isDownload && !historyNodata\" (click)=\"ExportHistoryasXlsx()\" class=\"btn btn-outline p-3 border border-gray ms-2 me-2 text-nowrap\" type=\"button\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M17.5 12.5V15.8333C17.5 16.2754 17.3244 16.6993 17.0118 17.0118C16.6993 17.3244 16.2754 17.5 15.8333 17.5H4.16667C3.72464 17.5 3.30072 17.3244 2.98816 17.0118C2.67559 16.6993 2.5 16.2754 2.5 15.8333V12.5M14.1667 6.66667L10 2.5M10 2.5L5.83333 6.66667M10 2.5V12.5\" stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span> Export\r\n </button>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body py-2\">\r\n <div class=\"d-flex overflow-auto h-55px\">\r\n <ul class=\"nav nav-stretch nav-line-tabs nav-line-tabs-2x border-transparent fs-5 fw-bolder flex-nowrap\">\r\n <li *ngIf=\"type !== 'audit'\" (click)=\"userValue('Workspace')\" class=\"nav-item cursor-pointer\"><a [ngClass]=\"userData ==='Workspace' ? 'active' :''\"\r\n class=\"nav-link text-active-primary me-6\">Workspace</a>\r\n </li>\r\n <!-- *ngIf=\"type!=='dataMismatch'\" -->\r\n <li (click)=\"userValue('History')\" class=\"nav-item cursor-pointer\"><a [ngClass]=\"userData ==='History' ? 'active' :''\"\r\n class=\"nav-link text-active-primary me-6\">History</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"userData ==='Workspace'\" class=\"card-body\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Open</span><span *ngIf=\"statusOpen?.length > 0 && !loading.open && !noData.open\" class=\"rounded-5 ms-3 px-1 border border-gray bg-badge\">{{statusOpen?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!loading.open && !noData.open\">\r\n <div *ngFor=\"let open of statusOpen; let index = index\">\r\n <div [ngClass]=\"open.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(open)\">\r\n <div *ngIf=\"open.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{open?.storeId ? open?.storeId :'--'}}</label><br>\r\n <label class=\"fw-semibold m-2\">{{open?.storeName ? open?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg>{{open?.Date ? open?.Date : '--'}}\r\n </div>\r\n <span *ngIf=\"open?.infraIssue\" class=\"badge badge-light-warning\">{{open?.infraIssue ? open?.infraIssue :'--'}}</span>\r\n <span *ngIf=\"type ==='installation'\" class=\"badge badge-light-primary\">{{open?.installationStatus ? open?.installationStatus :'--'}}</span>\r\n <span *ngIf=\"type ==='dataMismatch'\" class=\"badge badge-light-warning\">{{open?.issueType === 'highcount' ? 'High Count' : (open?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex\">\r\n <div *ngIf=\"open?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'open')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{open?.ticketId ? open?.ticketId : '--'}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"open?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span *ngIf=\"open?.issueStatus !== 'notidentified'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!open.isOpen\" (click)=\"selectView($event,index,'open')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!open.isOpen && open?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusOpen?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center\"> \r\n <img class=\"mx-auto mb-2\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-2 fw-bold\">No Open Tickets </span>\r\n <button class=\"w-100 btn btn-primary mt-5\" (click)=\"takeTicket()\">Take Ticket</button>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.open\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.open\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto mb-2\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Open Tickets </span>\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isEdit\" class=\"w-100 btn btn-primary mt-5\" (click)=\"takeTicket()\">Take Ticket</button>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Inprogress</span><span *ngIf=\"statusInprogress?.length > 0 && !loading.inprogress && !noData.inprogress\" class=\"rounded-5 ms-3 px-1 border border-gray bg-badge\">{{statusInprogress?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!loading.inprogress && !noData.inprogress\">\r\n <div *ngFor=\"let inprogress of statusInprogress; let index = index\">\r\n <div [ngClass]=\"inprogress.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(inprogress)\">\r\n <div *ngIf=\"inprogress?.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{inprogress?.storeId}}</label><br>\r\n <label class=\"fw-semibold my-2\">{{inprogress?.storeName ? inprogress?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg> {{inprogress?.Date}}\r\n </div>\r\n <span *ngIf=\"inprogress?.infraIssue\" class=\"badge badge-light-warning\">{{inprogress?.infraIssue}}</span>\r\n <span *ngIf=\"type ==='installation' && inprogress?.infraIssue!==''\" class=\"badge badge-light-primary text-capitalize ms-3\">{{inprogress?.installationStatus ? inprogress?.installationStatus :'--'}}</span>\r\n <span *ngIf=\"type ==='dataMismatch'\" class=\"badge badge-light-warning\">{{inprogress?.issueType === 'highcount' ? 'High Count' : (inprogress?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\" d-flex\">\r\n <div *ngIf=\"inprogress?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'inprogress')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{inprogress?.ticketId}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"inprogress?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span class=\"ms-3\" *ngIf=\"inprogress?.issueStatus !== 'notidentified'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!inprogress.isOpen\" (click)=\"selectView($event,index,'inprogress')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!inprogress.isOpen && inprogress?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusInprogress?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center mx-auto\"> \r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-2 fw-bold\">No In-Progress Tickets </span>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.inprogress\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.inprogress\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No In-Progress Tickets </span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\" (click)=\"selectTicket()\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Closed</span><span *ngIf=\"statusClosed?.length > 0 && !noData.closed && !loading.closed\" class=\"rounded-5 ms-3 px-1 border border-gray border-gray bg-badge\">{{statusClosed?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!noData.closed && !loading.closed\">\r\n <div *ngFor=\"let closed of statusClosed; let index = index\">\r\n <div [ngClass]=\"closed.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(closed)\">\r\n <div *ngIf=\"closed?.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{closed?.storeId}}</label><br>\r\n <label class=\"fw-semibold m-2\">{{closed?.storeName ? closed?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg> {{closed?.Date}}\r\n </div>\r\n <span *ngIf=\"closed?.infraIssue\" [ngClass]=\"closed?.infraIssue === 'Live'? 'badge badge-light-success':''\" class=\"badge badge-light-warning\"> {{closed?.infraIssue}} </span>\r\n <span *ngIf=\"type ==='dataMismatch'\" [ngClass]=\"closed?.infraIssue === 'Live'? 'badge badge-light-success':''\" class=\"badge badge-light-warning\">{{closed?.issueType === 'highcount' ? 'High Count' : (closed?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\" d-flex\">\r\n <div *ngIf=\"closed?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'closed')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{closed.ticketId}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"closed?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span *ngIf=\"closed?.issueStatus !== 'notidentified'\" class=\"ms-3\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!closed.isOpen\" (click)=\"selectView($event,index,'closed')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!closed.isOpen && closed?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusClosed?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center mx-auto\"> \r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Closed Tickets</span>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.closed\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.closed\">\r\n <div class=\"row rowbody\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Closed Tickets </span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div> \r\n</div>\r\n<div *ngIf=\"userData === 'History'\">\r\n<div *ngIf=\"type === 'installation' || type === 'infra' || type === 'dataMismatch'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\">\r\n <table class=\"table bottom-border text-nowrap\">\r\n <thead>\r\n <tr>\r\n <th><div (click)=\"sortData('issueDate')\">\r\n Created on\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div (click)=\"sortData('ticketId')\">\r\n Ticket ID\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== 1 || sortColumName !== 'ticketId' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'ticketId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'ticketId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientName')\">\r\n Brand Name\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientName' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientName' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientId')\">\r\n Brand ID\r\n <span *ngIf=\"sortColumName === 'clientId' && sortBy !== 1 || sortColumName !== 'clientId'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeName')\">\r\n Store Name\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeName' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeName' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeId')\">\r\n Store ID\r\n <span *ngIf=\"sortColumName === 'storeId' && sortBy !== 1 || sortColumName !== 'storeId'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'infra' || type ==='installation'\"><div (click)=\"sortData('issueDate')\">\r\n Issue Identified on\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'dataMismatch'\"><div (click)=\"sortData('issueDate')\">\r\n Issue date\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('issueClosedDate')\">\r\n Closed on\r\n <span *ngIf=\"sortColumName === 'issueClosedDate' && sortBy !== 1 || sortColumName !== 'issueClosedDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueClosedDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueClosedDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueClosedDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'infra' || type ==='installation'\"><div (click)=\"sortData('infraIssue')\">Issue Type\r\n <span *ngIf=\"sortColumName === 'infraIssue' && sortBy !== 1 || sortColumName !== 'infraIssue'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'infraIssue' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'infraIssue' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'infraIssue' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th *ngIf=\"type === 'dataMismatch'\"><div (click)=\"sortData('issueType')\">Issue Type\r\n <span *ngIf=\"sortColumName === 'issueType' && sortBy !== 1 || sortColumName !== 'issueType'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueType' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueType' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueType' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistoryTable ; let i = index\">\r\n <td>{{history?.issueDate|customDateFormat}}</td>\r\n <td>{{history?.ticketId ? history?.ticketId :'--'}}</td>\r\n <td>\r\n <div class=\"d-grid ms-3 cursor-pointer\" (click)=\"routetoTicket(history)\">\r\n <span class=\"text-primary mb-1 text-capitalize\">{{history?.clientName ? history?.clientName : '--'}}</span>\r\n \r\n </div>\r\n </td>\r\n <td>\r\n {{history?.clientId ? history?.clientId :'--'}}\r\n </td>\r\n <td>\r\n <div class=\"d-grid ms-3 cursor-pointer\" (click)=\"routetoTicket(history)\">\r\n <span class=\"text-primary mb-1\">{{history?.storeName ? history?.storeName :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n {{history?.storeId ? history?.storeId :'--'}}\r\n </td>\r\n <td *ngIf=\"type === 'infra' || type ==='installation'\">{{history?.issueIdentifiedDate?(history?.issueIdentifiedDate |customDateFormat): '--'}}</td>\r\n <td *ngIf=\"type === 'dataMismatch'\">{{history?.issueDate?(history?.issueDate |customDateFormat): '--'}}</td>\r\n <td>{{history?.issueClosedDate|customDateFormat}}</td>\r\n <td *ngIf=\"type === 'infra' || type ==='installation'\">{{history?.infraIssue ? history?.infraIssue :'--'}}</td>\r\n <td *ngIf=\"type === 'dataMismatch'\">{{history?.issueType ? history?.issueType :'--'}}</td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"totalItems\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n</div>\r\n<div *ngIf=\"userData === 'History'\">\r\n <div *ngIf=\"type === 'mat'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\">\r\n <table class=\"table bottom-border\">\r\n <thead>\r\n <tr>\r\n <th><div (click)=\"sortData('issueDate')\">\r\n Date\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div (click)=\"sortData('ticketId')\">\r\n Ticket ID\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== 1 || sortColumName !== 'ticketId' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientName')\">\r\n Client Info\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeName')\"></div>\r\n Store Info\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </th>\r\n <th><div (click)=\"sortData('status')\">Status\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== 1 || sortColumName !== 'status'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistoryTable ; let i = index\">\r\n <td>{{history?.issueDate|customDateFormat}}</td>\r\n <td>{{history?.ticketId ? history?.ticketId :'--'}}</td>\r\n <td>\r\n <div class=\"d-grid\">\r\n <span class=\"text-primary\">{{history?.clientName ? history?.clientName : '--'}}</span>\r\n <span class=\"textSub mt-1\">ID : {{history?.clientId ? history?.clientId :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n <div class=\"d-grid ms-3\">\r\n <span class=\"text-primary mb-1\">{{history?.storeName ? history?.storeName :'--'}}</span>\r\n <span class=\"textSub\">ID : {{history?.storeId ? history?.storeId :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n <span *ngIf=\"history.status ==='open'\" class=\"badge badge-light-danger\">Open</span>\r\n <span *ngIf=\"history.status ==='closed'\" class=\"badge badge-light-success\">Closed</span>\r\n <span *ngIf=\"history.status ==='inprogress'\" class=\"badge badge-light-primary\">In\r\n Progress</span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"totalItems\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"userData === 'History'\">\r\n <div *ngIf=\"type === 'audit'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\"> \r\n <table class=\"table bottom-border\">\r\n <thead>\r\n <tr>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('fileDate')\">\r\n File Date\r\n <span *ngIf=\"sortColumName === 'fileDate' && sortBy !== 1 || sortColumName !== 'fileDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'fileDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('clientName')\">\r\n Client Info\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('storeName')\">\r\n Store Info\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('location')\"></div>\r\n Location\r\n <span *ngIf=\"sortColumName === 'location' && sortBy !== 1 || sortColumName !== 'location'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'location' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('type')\">Type\r\n <span *ngIf=\"sortColumName === 'type' && sortBy !== 1 || sortColumName !== 'type'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'type' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('accuracy')\">Accuracy\r\n <span *ngIf=\"sortColumName === 'accuracy' && sortBy !== 1 || sortColumName !== 'accuracy'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'accuracy' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('timespent')\">Time Spent\r\n <span *ngIf=\"sortColumName === 'timespent' && sortBy !== 1 || sortColumName !== 'timespent'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'timespent' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th>Status\r\n </th>\r\n <th>Actions\r\n \r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistorydata ; let i = index\">\r\n <td>{{history?.fileDate}}</td>\r\n <td>{{history?.clientName ? history?.clientName :'--'}}</td>\r\n <td>{{history?.storeName ? history?.storeName : '--'}}\r\n </td>\r\n <td>{{history?.location ? history?.location :'--'}}</td>\r\n <td>{{history?.type ? history?.type :'--'}}\r\n </td>\r\n <td>{{history?.accuracy ? history?.accuracy :'--'}}</td>\r\n <td>{{history?.timespent ? history?.timespent :'--'}}</td>\r\n <td>\r\n <span *ngIf=\"history.status ==='draft'\" class=\"badge badge-light-warning\">Draft</span>\r\n <span *ngIf=\"history.status ==='completed'\" class=\"badge badge-light-success\">Closed</span>\r\n <span *ngIf=\"history.status ==='inprogress'\" class=\"badge badge-light-primary\">In\r\n Progress</span>\r\n </td>\r\n <td><span class=\"cursor-pointer\" (click)=\"viewUser()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M0.833374 10C0.833374 10 4.16671 3.33337 10 3.33337C15.8334 3.33337 19.1667 10 19.1667 10C19.1667 10 15.8334 16.6667 10 16.6667C4.16671 16.6667 0.833374 10 0.833374 10Z\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M10 12.5C11.3808 12.5 12.5 11.3808 12.5 10C12.5 8.61933 11.3808 7.50004 10 7.50004C8.61933 7.50004 7.50004 8.61933 7.50004 10C7.50004 11.3808 8.61933 12.5 10 12.5Z\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <!-- <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"workHistoryTable.count\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination> -->\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n", styles: [".rowbody{background:var(--Gray-50, #F9FAFB)}.issuecard{border-radius:8px;border:1px solid var(--Gray-100, #F2F4F7);background:var(--White, #FFF);box-shadow:0 1px 2px #1018280d;padding:14px 12px}.issuecard label{color:var(--Black, #101828);font-size:16px;line-height:24px}.issuecard.active{background:var(--Primary-25, #F6FCFF);box-shadow:0 2px 4px -2px #1018280f,0 4px 8px -2px #1018281a}.fw-bold-700{font-weight:700!important}.fw-bold-400{font-weight:400!important}.profile{width:24px;height:24px;overflow:hidden;border-radius:200px}.msgprofile{width:48px!important;height:48px!important;border-radius:200px;overflow:hidden}.timingtext{color:var(--Gray-500, #667085);font-size:12px;line-height:18px}.bg-badge{background-color:#776f6f29!important}.items:hover,.tems.focus,.items.active,.camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.textSub{color:var(--Gray-500, #667085);font-size:14px;font-weight:400;line-height:20px}.taketicket{color:var(--Gray-500, #667085);font-size:16px;line-height:24px}tr{vertical-align:middle!important}.img-src{width:25%}.mh-60vh{height:40vh!important}.min-height-60vh{min-height:50vh!important}.text-primary{color:var(--Primary-700, #009BF3)!important;font-family:Inter;font-size:14px;font-weight:500}\n"], dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PaginationComponent, selector: "lib-pagination", inputs: ["collection", "itemsPerPage", "currentPage", "totalItems", "directionLinks", "pageSize", "paginationSizes"], outputs: ["pageChange", "pageSizeChange"] }, { kind: "component", type: i3.FiltersComponent, selector: "lib-filters", inputs: ["dataObject"], outputs: ["appliedFilters"] }, { kind: "pipe", type: i7.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i3.CustomDateFormatPipe, name: "customDateFormat" }] });
|
|
565
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.11", type: InfraticketsComponent, selector: "lib-infratickets", host: { listeners: { "document:click": "onClick($event)" } }, ngImport: i0, template: "\r\n<div class=\"card\">\r\n <div class=\"card-header border-0 pt-3\">\r\n <h3 class=\"card-title align-items-start flex-column\">\r\n <span *ngIf=\"type !== 'mat' && type !== 'dataMismatch'\" class=\"card-label mb-2\">{{type | titlecase}} Tickets</span>\r\n <span *ngIf=\"type === 'dataMismatch'\" class=\"card-label mb-2\">Data Mismatch Tickets</span>\r\n <span *ngIf=\"type === 'mat'\" class=\"card-label mb-2\">Employee Mat</span>\r\n <!-- <span class=\"text-sub mb-2\">Last updated 1 hour ago</span> -->\r\n </h3>\r\n <div *ngIf=\"userData ==='Workspace'\" class=\"card-toolbar\">\r\n <div class=\"d-flex\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <span class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <rect opacity=\"0.5\" x=\"17.0365\" y=\"15.1223\" width=\"8.15546\" height=\"2\" rx=\"1\"\r\n transform=\"rotate(45 17.0365 15.1223)\" fill=\"currentColor\"></rect>\r\n <path\r\n d=\"M11 19C6.55556 19 3 15.4444 3 11C3 6.55556 6.55556 3 11 3C15.4444 3 19 6.55556 19 11C19 15.4444 15.4444 19 11 19ZM11 5C7.53333 5 5 7.53333 5 11C5 14.4667 7.53333 17 11 17C14.4667 17 17 14.4667 17 11C17 7.53333 14.4667 5 11 5Z\"\r\n fill=\"currentColor\"></path>\r\n </svg>\r\n </span>\r\n <input type=\"text\" class=\"form-control ps-14 me-2\" \r\n placeholder=\"Search\" autocomplete=\"off\" [(ngModel)]=\"searchWorkspace\" (change)=\"searchTickets()\"/>\r\n <lib-filters *ngIf=\"type !== 'mat' && type !=='dataMismatch'\" [dataObject]=\"dataObject1\" (appliedFilters)=\"applyFilters($event)\"></lib-filters>\r\n \r\n <!-- <div *ngIf=\"type !== 'mat'\" class=\"position-relative\">\r\n <button type=\"button\" (click)=\"openDropdown($event)\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\"><svg\r\n width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M5 10H15M2.5 5H17.5M7.5 15H12.5\" stroke=\"#344054\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2\">Filter</span> </button>\r\n <div *ngIf=\"dropDown\" class=\"card py-1 w-200px position-absolute top-50px end-0\">\r\n <ul *ngFor=\"let item of dropdownItems\" class=\"list-unstyled\">\r\n <li [ngClass]=\"this.selectedIssue === item ? 'active' : ''\" class=\"camera px-5 items fw-semibold cursor-pointer py-2\" (click)=\"selectItem(item)\">{{item}}</li>\r\n </ul>\r\n </div>\r\n </div> -->\r\n\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isDownload && (!noData.open || !noData.inprogress || !noData.closed)\" (click)=\"exportData()\" class=\"btn btn-outline p-3 text-nowrap border border-gray ms-2 me-2\" type=\"button\"><span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M17.5 12.5V15.8333C17.5 16.2754 17.3244 16.6993 17.0118 17.0118C16.6993 17.3244 16.2754 17.5 15.8333 17.5H4.16667C3.72464 17.5 3.30072 17.3244 2.98816 17.0118C2.67559 16.6993 2.5 16.2754 2.5 15.8333V12.5M14.1667 6.66667L10 2.5M10 2.5L5.83333 6.66667M10 2.5V12.5\" stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span> Export</button>\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isEdit\" type=\"button\" (click)=\"takeTicket()\"\r\n class=\"btn btn-primary mx-2 rounded-3 text-nowrap\"><span class=\"ms-2 text-white\">Take Ticket</span> </button>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"userData ==='History'\" class=\"card-toolbar\">\r\n <div class=\"d-flex\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <span class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <rect opacity=\"0.5\" x=\"17.0365\" y=\"15.1223\" width=\"8.15546\" height=\"2\" rx=\"1\"\r\n transform=\"rotate(45 17.0365 15.1223)\" fill=\"currentColor\"></rect>\r\n <path\r\n d=\"M11 19C6.55556 19 3 15.4444 3 11C3 6.55556 6.55556 3 11 3C15.4444 3 19 6.55556 19 11C19 15.4444 15.4444 19 11 19ZM11 5C7.53333 5 5 7.53333 5 11C5 14.4667 7.53333 17 11 17C14.4667 17 17 14.4667 17 11C17 7.53333 14.4667 5 11 5Z\"\r\n fill=\"currentColor\"></path>\r\n </svg>\r\n </span>\r\n <input type=\"text\" class=\"form-control ps-14 me-2\" \r\n placeholder=\"Search\" autocomplete=\"off\" [(ngModel)]=\"searchHistory\" (change)=\"searchHistoryTable()\" />\r\n \r\n <lib-filters *ngIf=\"type !== 'mat' && type!=='audit' && filterStores?.length > 0\" [dataObject]=\"dataObject\" (appliedFilters)=\"receiveData($event)\" ></lib-filters>\r\n\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isDownload && !historyNodata\" (click)=\"ExportHistoryasXlsx()\" class=\"btn btn-outline p-3 border border-gray ms-2 me-2 text-nowrap\" type=\"button\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M17.5 12.5V15.8333C17.5 16.2754 17.3244 16.6993 17.0118 17.0118C16.6993 17.3244 16.2754 17.5 15.8333 17.5H4.16667C3.72464 17.5 3.30072 17.3244 2.98816 17.0118C2.67559 16.6993 2.5 16.2754 2.5 15.8333V12.5M14.1667 6.66667L10 2.5M10 2.5L5.83333 6.66667M10 2.5V12.5\" stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span> Export\r\n </button>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body py-2\">\r\n <div class=\"d-flex overflow-auto h-55px\">\r\n <ul class=\"nav nav-stretch nav-line-tabs nav-line-tabs-2x border-transparent fs-5 fw-bolder flex-nowrap\">\r\n <li *ngIf=\"type !== 'audit'\" (click)=\"userValue('Workspace')\" class=\"nav-item cursor-pointer\"><a [ngClass]=\"userData ==='Workspace' ? 'active' :''\"\r\n class=\"nav-link text-active-primary me-6\">Workspace</a>\r\n </li>\r\n <!-- *ngIf=\"type!=='dataMismatch'\" -->\r\n <li (click)=\"userValue('History')\" class=\"nav-item cursor-pointer\"><a [ngClass]=\"userData ==='History' ? 'active' :''\"\r\n class=\"nav-link text-active-primary me-6\">History</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"userData ==='Workspace'\" class=\"card-body\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Open</span><span *ngIf=\"statusOpen?.length > 0 && !loading.open && !noData.open\" class=\"rounded-5 ms-3 px-1 border border-gray bg-badge\">{{statusOpen?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!loading.open && !noData.open\">\r\n <div *ngFor=\"let open of statusOpen; let index = index\">\r\n <div [ngClass]=\"open.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(open)\">\r\n <div *ngIf=\"open.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{open?.storeId ? open?.storeId :'--'}}</label><br>\r\n <label class=\"fw-semibold m-2\">{{open?.storeName ? open?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg>{{open?.Date ? open?.Date : '--'}}\r\n </div>\r\n <span *ngIf=\"open?.infraIssue\" class=\"badge badge-light-warning\">{{open?.infraIssue ? open?.infraIssue :'--'}}</span>\r\n <span *ngIf=\"type ==='installation'\" class=\"badge badge-light-primary\">{{open?.installationStatus ? open?.installationStatus :'--'}}</span>\r\n <span *ngIf=\"type ==='dataMismatch'\" class=\"badge badge-light-warning\">{{open?.issueType === 'highcount' ? 'High Count' : (open?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex\">\r\n <div *ngIf=\"open?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'open')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{open?.ticketId ? open?.ticketId : '--'}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"open?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span *ngIf=\"open?.issueStatus !== 'notidentified'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!open.isOpen\" (click)=\"selectView($event,index,'open')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!open.isOpen && open?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusOpen?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center\"> \r\n <img class=\"mx-auto mb-2\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-2 fw-bold\">No Open Tickets </span>\r\n <button class=\"w-100 btn btn-primary mt-5\" (click)=\"takeTicket()\">Take Ticket</button>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.open\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.open\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto mb-2\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Open Tickets </span>\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isEdit\" class=\"w-100 btn btn-primary mt-5\" (click)=\"takeTicket()\">Take Ticket</button>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Inprogress</span><span *ngIf=\"statusInprogress?.length > 0 && !loading.inprogress && !noData.inprogress\" class=\"rounded-5 ms-3 px-1 border border-gray bg-badge\">{{statusInprogress?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!loading.inprogress && !noData.inprogress\">\r\n <div *ngFor=\"let inprogress of statusInprogress; let index = index\">\r\n <div [ngClass]=\"inprogress.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(inprogress)\">\r\n <div *ngIf=\"inprogress?.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{inprogress?.storeId}}</label><br>\r\n <label class=\"fw-semibold my-2\">{{inprogress?.storeName ? inprogress?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg> {{inprogress?.Date}}\r\n </div>\r\n <span *ngIf=\"inprogress?.infraIssue\" class=\"badge badge-light-warning\">{{inprogress?.infraIssue}}</span>\r\n <span *ngIf=\"type ==='installation' && inprogress?.infraIssue!==''\" class=\"badge badge-light-primary text-capitalize ms-3\">{{inprogress?.installationStatus ? inprogress?.installationStatus :'--'}}</span>\r\n <span *ngIf=\"type ==='dataMismatch'\" class=\"badge badge-light-warning\">{{inprogress?.issueType === 'highcount' ? 'High Count' : (inprogress?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\" d-flex\">\r\n <div *ngIf=\"inprogress?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'inprogress')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{inprogress?.ticketId}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"inprogress?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span class=\"ms-3\" *ngIf=\"inprogress?.issueStatus !== 'notidentified'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!inprogress.isOpen\" (click)=\"selectView($event,index,'inprogress')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!inprogress.isOpen && inprogress?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusInprogress?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center mx-auto\"> \r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-2 fw-bold\">No In-Progress Tickets </span>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.inprogress\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.inprogress\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No In-Progress Tickets </span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\" (click)=\"selectTicket()\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Closed</span><span *ngIf=\"statusClosed?.length > 0 && !noData.closed && !loading.closed\" class=\"rounded-5 ms-3 px-1 border border-gray border-gray bg-badge\">{{statusClosed?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!noData.closed && !loading.closed\">\r\n <div *ngFor=\"let closed of statusClosed; let index = index\">\r\n <div [ngClass]=\"closed.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(closed)\">\r\n <div *ngIf=\"closed?.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{closed?.storeId}}</label><br>\r\n <label class=\"fw-semibold m-2\">{{closed?.storeName ? closed?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg> {{closed?.Date}}\r\n </div>\r\n <span *ngIf=\"closed?.infraIssue\" [ngClass]=\"closed?.infraIssue === 'Live'? 'badge badge-light-success':''\" class=\"badge badge-light-warning\"> {{closed?.infraIssue}} </span>\r\n <span *ngIf=\"type ==='dataMismatch'\" [ngClass]=\"closed?.infraIssue === 'Live'? 'badge badge-light-success':''\" class=\"badge badge-light-warning\">{{closed?.issueType === 'highcount' ? 'High Count' : (closed?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\" d-flex\">\r\n <div *ngIf=\"closed?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'closed')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{closed.ticketId}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"closed?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span *ngIf=\"closed?.issueStatus !== 'notidentified'\" class=\"ms-3\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!closed.isOpen\" (click)=\"selectView($event,index,'closed')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!closed.isOpen && closed?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusClosed?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center mx-auto\"> \r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Closed Tickets</span>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.closed\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.closed\">\r\n <div class=\"row rowbody\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Closed Tickets </span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div> \r\n</div>\r\n<div *ngIf=\"userData === 'History'\">\r\n<div *ngIf=\"type === 'installation' || type === 'infra' || type === 'dataMismatch'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\">\r\n <table class=\"table bottom-border text-nowrap\">\r\n <thead>\r\n <tr>\r\n <th><div (click)=\"sortData('issueDate')\">\r\n Created on\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div (click)=\"sortData('ticketId')\">\r\n Ticket ID\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== 1 || sortColumName !== 'ticketId' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'ticketId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'ticketId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientName')\">\r\n Brand Name\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientName' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientName' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientId')\">\r\n Brand ID\r\n <span *ngIf=\"sortColumName === 'clientId' && sortBy !== 1 || sortColumName !== 'clientId'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeName')\">\r\n Store Name\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeName' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeName' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeId')\">\r\n Store ID\r\n <span *ngIf=\"sortColumName === 'storeId' && sortBy !== 1 || sortColumName !== 'storeId'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'infra' || type ==='installation'\"><div (click)=\"sortData('issueDate')\">\r\n Issue Identified on\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'dataMismatch'\"><div (click)=\"sortData('issueDate')\">\r\n Issue date\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('issueClosedDate')\">\r\n Closed on\r\n <span *ngIf=\"sortColumName === 'issueClosedDate' && sortBy !== 1 || sortColumName !== 'issueClosedDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueClosedDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueClosedDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueClosedDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'infra' || type ==='installation'\"><div (click)=\"sortData('infraIssue')\">Issue Type\r\n <span *ngIf=\"sortColumName === 'infraIssue' && sortBy !== 1 || sortColumName !== 'infraIssue'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'infraIssue' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'infraIssue' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'infraIssue' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th *ngIf=\"type === 'dataMismatch'\"><div (click)=\"sortData('issueType')\">Issue Type\r\n <span *ngIf=\"sortColumName === 'issueType' && sortBy !== 1 || sortColumName !== 'issueType'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueType' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueType' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueType' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th ><div (click)=\"sortData('status')\">Issue Type\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== 1 || sortColumName !== 'status'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'status' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'status' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistoryTable ; let i = index\">\r\n <td>{{history?.issueDate|customDateFormat}}</td>\r\n <td class=\"text-primary cursor-pointer\" (click)=\"routetoTicket(history)\">{{history?.ticketId ? history?.ticketId :'--'}}</td>\r\n <td>\r\n <div class=\"d-grid ms-3 cursor-pointer\" (click)=\"routetoTicket(history)\">\r\n <span class=\"text-primary mb-1 text-capitalize\">{{history?.clientName ? history?.clientName : '--'}}</span>\r\n \r\n </div>\r\n </td>\r\n <td>\r\n {{history?.clientId ? history?.clientId :'--'}}\r\n </td>\r\n <td>\r\n <div class=\"d-grid ms-3 cursor-pointer\" (click)=\"routetoTicket(history)\">\r\n <span class=\"text-primary mb-1\">{{history?.storeName ? history?.storeName :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n {{history?.storeId ? history?.storeId :'--'}}\r\n </td>\r\n <td *ngIf=\"type === 'infra' || type ==='installation'\">{{history?.issueIdentifiedDate?(history?.issueIdentifiedDate |customDateFormat): '--'}}</td>\r\n <td *ngIf=\"type === 'dataMismatch'\">{{history?.issueDate?(history?.issueDate |customDateFormat): '--'}}</td>\r\n <td>{{history?.issueClosedDate?(history?.issueClosedDate|customDateFormat):\"--\"}}</td>\r\n <td *ngIf=\"type === 'infra' || type ==='installation'\">{{history?.infraIssue ? history?.infraIssue :'--'}}</td>\r\n <td *ngIf=\"type === 'dataMismatch'\">{{history?.issueType ? history?.issueType :'--'}}</td>\r\n <td> <span class=\"badge badge-light-primary\" *ngIf=\"history?.status ==='open'\">Open</span>\r\n <span class=\"badge badge-light-warning\" *ngIf=\"history?.status ==='inprogress'\">Inprogress</span>\r\n <span class=\"badge badge-light-success\" *ngIf=\"history?.status ==='closed'\">Closed</span></td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"totalItems\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n</div>\r\n<div *ngIf=\"userData === 'History'\">\r\n <div *ngIf=\"type === 'mat'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\">\r\n <table class=\"table bottom-border\">\r\n <thead>\r\n <tr>\r\n <th><div (click)=\"sortData('issueDate')\">\r\n Date\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div (click)=\"sortData('ticketId')\">\r\n Ticket ID\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== 1 || sortColumName !== 'ticketId' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientName')\">\r\n Client Info\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeName')\"></div>\r\n Store Info\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </th>\r\n <th><div (click)=\"sortData('status')\">Status\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== 1 || sortColumName !== 'status'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistoryTable ; let i = index\">\r\n <td>{{history?.issueDate|customDateFormat}}</td>\r\n <td>{{history?.ticketId ? history?.ticketId :'--'}}</td>\r\n <td>\r\n <div class=\"d-grid\">\r\n <span class=\"text-primary\">{{history?.clientName ? history?.clientName : '--'}}</span>\r\n <span class=\"textSub mt-1\">ID : {{history?.clientId ? history?.clientId :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n <div class=\"d-grid ms-3\">\r\n <span class=\"text-primary mb-1\">{{history?.storeName ? history?.storeName :'--'}}</span>\r\n <span class=\"textSub\">ID : {{history?.storeId ? history?.storeId :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n <span *ngIf=\"history.status ==='open'\" class=\"badge badge-light-danger\">Open</span>\r\n <span *ngIf=\"history.status ==='closed'\" class=\"badge badge-light-success\">Closed</span>\r\n <span *ngIf=\"history.status ==='inprogress'\" class=\"badge badge-light-primary\">In\r\n Progress</span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"totalItems\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"userData === 'History'\">\r\n <div *ngIf=\"type === 'audit'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\"> \r\n <table class=\"table bottom-border\">\r\n <thead>\r\n <tr>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('fileDate')\">\r\n File Date\r\n <span *ngIf=\"sortColumName === 'fileDate' && sortBy !== 1 || sortColumName !== 'fileDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'fileDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('clientName')\">\r\n Client Info\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('storeName')\">\r\n Store Info\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('location')\"></div>\r\n Location\r\n <span *ngIf=\"sortColumName === 'location' && sortBy !== 1 || sortColumName !== 'location'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'location' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('type')\">Type\r\n <span *ngIf=\"sortColumName === 'type' && sortBy !== 1 || sortColumName !== 'type'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'type' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('accuracy')\">Accuracy\r\n <span *ngIf=\"sortColumName === 'accuracy' && sortBy !== 1 || sortColumName !== 'accuracy'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'accuracy' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('timespent')\">Time Spent\r\n <span *ngIf=\"sortColumName === 'timespent' && sortBy !== 1 || sortColumName !== 'timespent'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'timespent' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th>Status\r\n </th>\r\n <th>Actions\r\n \r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistorydata ; let i = index\">\r\n <td>{{history?.fileDate}}</td>\r\n <td>{{history?.clientName ? history?.clientName :'--'}}</td>\r\n <td>{{history?.storeName ? history?.storeName : '--'}}\r\n </td>\r\n <td>{{history?.location ? history?.location :'--'}}</td>\r\n <td>{{history?.type ? history?.type :'--'}}\r\n </td>\r\n <td>{{history?.accuracy ? history?.accuracy :'--'}}</td>\r\n <td>{{history?.timespent ? history?.timespent :'--'}}</td>\r\n <td>\r\n <span *ngIf=\"history.status ==='draft'\" class=\"badge badge-light-warning\">Draft</span>\r\n <span *ngIf=\"history.status ==='completed'\" class=\"badge badge-light-success\">Closed</span>\r\n <span *ngIf=\"history.status ==='inprogress'\" class=\"badge badge-light-primary\">In\r\n Progress</span>\r\n </td>\r\n <td><span class=\"cursor-pointer\" (click)=\"viewUser()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M0.833374 10C0.833374 10 4.16671 3.33337 10 3.33337C15.8334 3.33337 19.1667 10 19.1667 10C19.1667 10 15.8334 16.6667 10 16.6667C4.16671 16.6667 0.833374 10 0.833374 10Z\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M10 12.5C11.3808 12.5 12.5 11.3808 12.5 10C12.5 8.61933 11.3808 7.50004 10 7.50004C8.61933 7.50004 7.50004 8.61933 7.50004 10C7.50004 11.3808 8.61933 12.5 10 12.5Z\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <!-- <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"workHistoryTable.count\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination> -->\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n", styles: [".rowbody{background:var(--Gray-50, #F9FAFB)}.issuecard{border-radius:8px;border:1px solid var(--Gray-100, #F2F4F7);background:var(--White, #FFF);box-shadow:0 1px 2px #1018280d;padding:14px 12px}.issuecard label{color:var(--Black, #101828);font-size:16px;line-height:24px}.issuecard.active{background:var(--Primary-25, #F6FCFF);box-shadow:0 2px 4px -2px #1018280f,0 4px 8px -2px #1018281a}.fw-bold-700{font-weight:700!important}.fw-bold-400{font-weight:400!important}.profile{width:24px;height:24px;overflow:hidden;border-radius:200px}.msgprofile{width:48px!important;height:48px!important;border-radius:200px;overflow:hidden}.timingtext{color:var(--Gray-500, #667085);font-size:12px;line-height:18px}.bg-badge{background-color:#776f6f29!important}.items:hover,.tems.focus,.items.active,.camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.textSub{color:var(--Gray-500, #667085);font-size:14px;font-weight:400;line-height:20px}.taketicket{color:var(--Gray-500, #667085);font-size:16px;line-height:24px}tr{vertical-align:middle!important}.img-src{width:25%}.mh-60vh{height:40vh!important}.min-height-60vh{min-height:50vh!important}.text-primary{color:var(--Primary-700, #009BF3)!important;font-family:Inter;font-size:14px;font-weight:500}\n"], dependencies: [{ kind: "directive", type: i7.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PaginationComponent, selector: "lib-pagination", inputs: ["collection", "itemsPerPage", "currentPage", "totalItems", "directionLinks", "pageSize", "paginationSizes"], outputs: ["pageChange", "pageSizeChange"] }, { kind: "component", type: i3.FiltersComponent, selector: "lib-filters", inputs: ["dataObject"], outputs: ["appliedFilters"] }, { kind: "pipe", type: i7.AsyncPipe, name: "async" }, { kind: "pipe", type: i7.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i3.CustomDateFormatPipe, name: "customDateFormat" }] });
|
|
571
566
|
}
|
|
572
567
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: InfraticketsComponent, decorators: [{
|
|
573
568
|
type: Component,
|
|
574
|
-
args: [{ selector: "lib-infratickets", template: "\r\n<div class=\"card\">\r\n <div class=\"card-header border-0 pt-3\">\r\n <h3 class=\"card-title align-items-start flex-column\">\r\n <span *ngIf=\"type !== 'mat' && type !== 'dataMismatch'\" class=\"card-label mb-2\">{{type | titlecase}} Tickets</span>\r\n <span *ngIf=\"type === 'dataMismatch'\" class=\"card-label mb-2\">Data Mismatch Tickets</span>\r\n <span *ngIf=\"type === 'mat'\" class=\"card-label mb-2\">Employee Mat</span>\r\n <!-- <span class=\"text-sub mb-2\">Last updated 1 hour ago</span> -->\r\n </h3>\r\n <div *ngIf=\"userData ==='Workspace'\" class=\"card-toolbar\">\r\n <div class=\"d-flex\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <span class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <rect opacity=\"0.5\" x=\"17.0365\" y=\"15.1223\" width=\"8.15546\" height=\"2\" rx=\"1\"\r\n transform=\"rotate(45 17.0365 15.1223)\" fill=\"currentColor\"></rect>\r\n <path\r\n d=\"M11 19C6.55556 19 3 15.4444 3 11C3 6.55556 6.55556 3 11 3C15.4444 3 19 6.55556 19 11C19 15.4444 15.4444 19 11 19ZM11 5C7.53333 5 5 7.53333 5 11C5 14.4667 7.53333 17 11 17C14.4667 17 17 14.4667 17 11C17 7.53333 14.4667 5 11 5Z\"\r\n fill=\"currentColor\"></path>\r\n </svg>\r\n </span>\r\n <input type=\"text\" class=\"form-control ps-14 me-2\" \r\n placeholder=\"Search\" autocomplete=\"off\" [(ngModel)]=\"searchWorkspace\" (change)=\"searchTickets()\"/>\r\n <lib-filters *ngIf=\"type !== 'mat' && type !=='dataMismatch'\" [dataObject]=\"dataObject1\" (appliedFilters)=\"applyFilters($event)\"></lib-filters>\r\n \r\n <!-- <div *ngIf=\"type !== 'mat'\" class=\"position-relative\">\r\n <button type=\"button\" (click)=\"openDropdown($event)\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\"><svg\r\n width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M5 10H15M2.5 5H17.5M7.5 15H12.5\" stroke=\"#344054\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2\">Filter</span> </button>\r\n <div *ngIf=\"dropDown\" class=\"card py-1 w-200px position-absolute top-50px end-0\">\r\n <ul *ngFor=\"let item of dropdownItems\" class=\"list-unstyled\">\r\n <li [ngClass]=\"this.selectedIssue === item ? 'active' : ''\" class=\"camera px-5 items fw-semibold cursor-pointer py-2\" (click)=\"selectItem(item)\">{{item}}</li>\r\n </ul>\r\n </div>\r\n </div> -->\r\n\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isDownload && (!noData.open || !noData.inprogress || !noData.closed)\" (click)=\"exportData()\" class=\"btn btn-outline p-3 text-nowrap border border-gray ms-2 me-2\" type=\"button\"><span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M17.5 12.5V15.8333C17.5 16.2754 17.3244 16.6993 17.0118 17.0118C16.6993 17.3244 16.2754 17.5 15.8333 17.5H4.16667C3.72464 17.5 3.30072 17.3244 2.98816 17.0118C2.67559 16.6993 2.5 16.2754 2.5 15.8333V12.5M14.1667 6.66667L10 2.5M10 2.5L5.83333 6.66667M10 2.5V12.5\" stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span> Export</button>\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isEdit\" type=\"button\" (click)=\"takeTicket()\"\r\n class=\"btn btn-primary mx-2 rounded-3 text-nowrap\"><span class=\"ms-2 text-white\">Take Ticket</span> </button>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"userData ==='History'\" class=\"card-toolbar\">\r\n <div class=\"d-flex\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <span class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <rect opacity=\"0.5\" x=\"17.0365\" y=\"15.1223\" width=\"8.15546\" height=\"2\" rx=\"1\"\r\n transform=\"rotate(45 17.0365 15.1223)\" fill=\"currentColor\"></rect>\r\n <path\r\n d=\"M11 19C6.55556 19 3 15.4444 3 11C3 6.55556 6.55556 3 11 3C15.4444 3 19 6.55556 19 11C19 15.4444 15.4444 19 11 19ZM11 5C7.53333 5 5 7.53333 5 11C5 14.4667 7.53333 17 11 17C14.4667 17 17 14.4667 17 11C17 7.53333 14.4667 5 11 5Z\"\r\n fill=\"currentColor\"></path>\r\n </svg>\r\n </span>\r\n <input type=\"text\" class=\"form-control ps-14 me-2\" \r\n placeholder=\"Search\" autocomplete=\"off\" [(ngModel)]=\"searchHistory\" (change)=\"searchHistoryTable()\" />\r\n \r\n <lib-filters *ngIf=\"type !== 'mat' && type!=='audit' && filterStores?.length > 0\" [dataObject]=\"dataObject\" (appliedFilters)=\"receiveData($event)\" ></lib-filters>\r\n\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isDownload && !historyNodata\" (click)=\"ExportHistoryasXlsx()\" class=\"btn btn-outline p-3 border border-gray ms-2 me-2 text-nowrap\" type=\"button\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M17.5 12.5V15.8333C17.5 16.2754 17.3244 16.6993 17.0118 17.0118C16.6993 17.3244 16.2754 17.5 15.8333 17.5H4.16667C3.72464 17.5 3.30072 17.3244 2.98816 17.0118C2.67559 16.6993 2.5 16.2754 2.5 15.8333V12.5M14.1667 6.66667L10 2.5M10 2.5L5.83333 6.66667M10 2.5V12.5\" stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span> Export\r\n </button>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body py-2\">\r\n <div class=\"d-flex overflow-auto h-55px\">\r\n <ul class=\"nav nav-stretch nav-line-tabs nav-line-tabs-2x border-transparent fs-5 fw-bolder flex-nowrap\">\r\n <li *ngIf=\"type !== 'audit'\" (click)=\"userValue('Workspace')\" class=\"nav-item cursor-pointer\"><a [ngClass]=\"userData ==='Workspace' ? 'active' :''\"\r\n class=\"nav-link text-active-primary me-6\">Workspace</a>\r\n </li>\r\n <!-- *ngIf=\"type!=='dataMismatch'\" -->\r\n <li (click)=\"userValue('History')\" class=\"nav-item cursor-pointer\"><a [ngClass]=\"userData ==='History' ? 'active' :''\"\r\n class=\"nav-link text-active-primary me-6\">History</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"userData ==='Workspace'\" class=\"card-body\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Open</span><span *ngIf=\"statusOpen?.length > 0 && !loading.open && !noData.open\" class=\"rounded-5 ms-3 px-1 border border-gray bg-badge\">{{statusOpen?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!loading.open && !noData.open\">\r\n <div *ngFor=\"let open of statusOpen; let index = index\">\r\n <div [ngClass]=\"open.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(open)\">\r\n <div *ngIf=\"open.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{open?.storeId ? open?.storeId :'--'}}</label><br>\r\n <label class=\"fw-semibold m-2\">{{open?.storeName ? open?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg>{{open?.Date ? open?.Date : '--'}}\r\n </div>\r\n <span *ngIf=\"open?.infraIssue\" class=\"badge badge-light-warning\">{{open?.infraIssue ? open?.infraIssue :'--'}}</span>\r\n <span *ngIf=\"type ==='installation'\" class=\"badge badge-light-primary\">{{open?.installationStatus ? open?.installationStatus :'--'}}</span>\r\n <span *ngIf=\"type ==='dataMismatch'\" class=\"badge badge-light-warning\">{{open?.issueType === 'highcount' ? 'High Count' : (open?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex\">\r\n <div *ngIf=\"open?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'open')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{open?.ticketId ? open?.ticketId : '--'}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"open?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span *ngIf=\"open?.issueStatus !== 'notidentified'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!open.isOpen\" (click)=\"selectView($event,index,'open')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!open.isOpen && open?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusOpen?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center\"> \r\n <img class=\"mx-auto mb-2\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-2 fw-bold\">No Open Tickets </span>\r\n <button class=\"w-100 btn btn-primary mt-5\" (click)=\"takeTicket()\">Take Ticket</button>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.open\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.open\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto mb-2\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Open Tickets </span>\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isEdit\" class=\"w-100 btn btn-primary mt-5\" (click)=\"takeTicket()\">Take Ticket</button>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Inprogress</span><span *ngIf=\"statusInprogress?.length > 0 && !loading.inprogress && !noData.inprogress\" class=\"rounded-5 ms-3 px-1 border border-gray bg-badge\">{{statusInprogress?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!loading.inprogress && !noData.inprogress\">\r\n <div *ngFor=\"let inprogress of statusInprogress; let index = index\">\r\n <div [ngClass]=\"inprogress.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(inprogress)\">\r\n <div *ngIf=\"inprogress?.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{inprogress?.storeId}}</label><br>\r\n <label class=\"fw-semibold my-2\">{{inprogress?.storeName ? inprogress?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg> {{inprogress?.Date}}\r\n </div>\r\n <span *ngIf=\"inprogress?.infraIssue\" class=\"badge badge-light-warning\">{{inprogress?.infraIssue}}</span>\r\n <span *ngIf=\"type ==='installation' && inprogress?.infraIssue!==''\" class=\"badge badge-light-primary text-capitalize ms-3\">{{inprogress?.installationStatus ? inprogress?.installationStatus :'--'}}</span>\r\n <span *ngIf=\"type ==='dataMismatch'\" class=\"badge badge-light-warning\">{{inprogress?.issueType === 'highcount' ? 'High Count' : (inprogress?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\" d-flex\">\r\n <div *ngIf=\"inprogress?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'inprogress')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{inprogress?.ticketId}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"inprogress?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span class=\"ms-3\" *ngIf=\"inprogress?.issueStatus !== 'notidentified'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!inprogress.isOpen\" (click)=\"selectView($event,index,'inprogress')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!inprogress.isOpen && inprogress?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusInprogress?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center mx-auto\"> \r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-2 fw-bold\">No In-Progress Tickets </span>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.inprogress\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.inprogress\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No In-Progress Tickets </span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\" (click)=\"selectTicket()\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Closed</span><span *ngIf=\"statusClosed?.length > 0 && !noData.closed && !loading.closed\" class=\"rounded-5 ms-3 px-1 border border-gray border-gray bg-badge\">{{statusClosed?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!noData.closed && !loading.closed\">\r\n <div *ngFor=\"let closed of statusClosed; let index = index\">\r\n <div [ngClass]=\"closed.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(closed)\">\r\n <div *ngIf=\"closed?.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{closed?.storeId}}</label><br>\r\n <label class=\"fw-semibold m-2\">{{closed?.storeName ? closed?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg> {{closed?.Date}}\r\n </div>\r\n <span *ngIf=\"closed?.infraIssue\" [ngClass]=\"closed?.infraIssue === 'Live'? 'badge badge-light-success':''\" class=\"badge badge-light-warning\"> {{closed?.infraIssue}} </span>\r\n <span *ngIf=\"type ==='dataMismatch'\" [ngClass]=\"closed?.infraIssue === 'Live'? 'badge badge-light-success':''\" class=\"badge badge-light-warning\">{{closed?.issueType === 'highcount' ? 'High Count' : (closed?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\" d-flex\">\r\n <div *ngIf=\"closed?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'closed')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{closed.ticketId}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"closed?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span *ngIf=\"closed?.issueStatus !== 'notidentified'\" class=\"ms-3\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!closed.isOpen\" (click)=\"selectView($event,index,'closed')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!closed.isOpen && closed?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusClosed?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center mx-auto\"> \r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Closed Tickets</span>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.closed\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.closed\">\r\n <div class=\"row rowbody\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Closed Tickets </span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div> \r\n</div>\r\n<div *ngIf=\"userData === 'History'\">\r\n<div *ngIf=\"type === 'installation' || type === 'infra' || type === 'dataMismatch'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\">\r\n <table class=\"table bottom-border text-nowrap\">\r\n <thead>\r\n <tr>\r\n <th><div (click)=\"sortData('issueDate')\">\r\n Created on\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div (click)=\"sortData('ticketId')\">\r\n Ticket ID\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== 1 || sortColumName !== 'ticketId' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'ticketId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'ticketId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientName')\">\r\n Brand Name\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientName' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientName' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientId')\">\r\n Brand ID\r\n <span *ngIf=\"sortColumName === 'clientId' && sortBy !== 1 || sortColumName !== 'clientId'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeName')\">\r\n Store Name\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeName' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeName' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeId')\">\r\n Store ID\r\n <span *ngIf=\"sortColumName === 'storeId' && sortBy !== 1 || sortColumName !== 'storeId'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'infra' || type ==='installation'\"><div (click)=\"sortData('issueDate')\">\r\n Issue Identified on\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'dataMismatch'\"><div (click)=\"sortData('issueDate')\">\r\n Issue date\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('issueClosedDate')\">\r\n Closed on\r\n <span *ngIf=\"sortColumName === 'issueClosedDate' && sortBy !== 1 || sortColumName !== 'issueClosedDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueClosedDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueClosedDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueClosedDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'infra' || type ==='installation'\"><div (click)=\"sortData('infraIssue')\">Issue Type\r\n <span *ngIf=\"sortColumName === 'infraIssue' && sortBy !== 1 || sortColumName !== 'infraIssue'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'infraIssue' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'infraIssue' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'infraIssue' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th *ngIf=\"type === 'dataMismatch'\"><div (click)=\"sortData('issueType')\">Issue Type\r\n <span *ngIf=\"sortColumName === 'issueType' && sortBy !== 1 || sortColumName !== 'issueType'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueType' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueType' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueType' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistoryTable ; let i = index\">\r\n <td>{{history?.issueDate|customDateFormat}}</td>\r\n <td>{{history?.ticketId ? history?.ticketId :'--'}}</td>\r\n <td>\r\n <div class=\"d-grid ms-3 cursor-pointer\" (click)=\"routetoTicket(history)\">\r\n <span class=\"text-primary mb-1 text-capitalize\">{{history?.clientName ? history?.clientName : '--'}}</span>\r\n \r\n </div>\r\n </td>\r\n <td>\r\n {{history?.clientId ? history?.clientId :'--'}}\r\n </td>\r\n <td>\r\n <div class=\"d-grid ms-3 cursor-pointer\" (click)=\"routetoTicket(history)\">\r\n <span class=\"text-primary mb-1\">{{history?.storeName ? history?.storeName :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n {{history?.storeId ? history?.storeId :'--'}}\r\n </td>\r\n <td *ngIf=\"type === 'infra' || type ==='installation'\">{{history?.issueIdentifiedDate?(history?.issueIdentifiedDate |customDateFormat): '--'}}</td>\r\n <td *ngIf=\"type === 'dataMismatch'\">{{history?.issueDate?(history?.issueDate |customDateFormat): '--'}}</td>\r\n <td>{{history?.issueClosedDate|customDateFormat}}</td>\r\n <td *ngIf=\"type === 'infra' || type ==='installation'\">{{history?.infraIssue ? history?.infraIssue :'--'}}</td>\r\n <td *ngIf=\"type === 'dataMismatch'\">{{history?.issueType ? history?.issueType :'--'}}</td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"totalItems\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n</div>\r\n<div *ngIf=\"userData === 'History'\">\r\n <div *ngIf=\"type === 'mat'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\">\r\n <table class=\"table bottom-border\">\r\n <thead>\r\n <tr>\r\n <th><div (click)=\"sortData('issueDate')\">\r\n Date\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div (click)=\"sortData('ticketId')\">\r\n Ticket ID\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== 1 || sortColumName !== 'ticketId' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientName')\">\r\n Client Info\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeName')\"></div>\r\n Store Info\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </th>\r\n <th><div (click)=\"sortData('status')\">Status\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== 1 || sortColumName !== 'status'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistoryTable ; let i = index\">\r\n <td>{{history?.issueDate|customDateFormat}}</td>\r\n <td>{{history?.ticketId ? history?.ticketId :'--'}}</td>\r\n <td>\r\n <div class=\"d-grid\">\r\n <span class=\"text-primary\">{{history?.clientName ? history?.clientName : '--'}}</span>\r\n <span class=\"textSub mt-1\">ID : {{history?.clientId ? history?.clientId :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n <div class=\"d-grid ms-3\">\r\n <span class=\"text-primary mb-1\">{{history?.storeName ? history?.storeName :'--'}}</span>\r\n <span class=\"textSub\">ID : {{history?.storeId ? history?.storeId :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n <span *ngIf=\"history.status ==='open'\" class=\"badge badge-light-danger\">Open</span>\r\n <span *ngIf=\"history.status ==='closed'\" class=\"badge badge-light-success\">Closed</span>\r\n <span *ngIf=\"history.status ==='inprogress'\" class=\"badge badge-light-primary\">In\r\n Progress</span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"totalItems\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"userData === 'History'\">\r\n <div *ngIf=\"type === 'audit'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\"> \r\n <table class=\"table bottom-border\">\r\n <thead>\r\n <tr>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('fileDate')\">\r\n File Date\r\n <span *ngIf=\"sortColumName === 'fileDate' && sortBy !== 1 || sortColumName !== 'fileDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'fileDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('clientName')\">\r\n Client Info\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('storeName')\">\r\n Store Info\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('location')\"></div>\r\n Location\r\n <span *ngIf=\"sortColumName === 'location' && sortBy !== 1 || sortColumName !== 'location'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'location' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('type')\">Type\r\n <span *ngIf=\"sortColumName === 'type' && sortBy !== 1 || sortColumName !== 'type'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'type' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('accuracy')\">Accuracy\r\n <span *ngIf=\"sortColumName === 'accuracy' && sortBy !== 1 || sortColumName !== 'accuracy'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'accuracy' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('timespent')\">Time Spent\r\n <span *ngIf=\"sortColumName === 'timespent' && sortBy !== 1 || sortColumName !== 'timespent'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'timespent' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th>Status\r\n </th>\r\n <th>Actions\r\n \r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistorydata ; let i = index\">\r\n <td>{{history?.fileDate}}</td>\r\n <td>{{history?.clientName ? history?.clientName :'--'}}</td>\r\n <td>{{history?.storeName ? history?.storeName : '--'}}\r\n </td>\r\n <td>{{history?.location ? history?.location :'--'}}</td>\r\n <td>{{history?.type ? history?.type :'--'}}\r\n </td>\r\n <td>{{history?.accuracy ? history?.accuracy :'--'}}</td>\r\n <td>{{history?.timespent ? history?.timespent :'--'}}</td>\r\n <td>\r\n <span *ngIf=\"history.status ==='draft'\" class=\"badge badge-light-warning\">Draft</span>\r\n <span *ngIf=\"history.status ==='completed'\" class=\"badge badge-light-success\">Closed</span>\r\n <span *ngIf=\"history.status ==='inprogress'\" class=\"badge badge-light-primary\">In\r\n Progress</span>\r\n </td>\r\n <td><span class=\"cursor-pointer\" (click)=\"viewUser()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M0.833374 10C0.833374 10 4.16671 3.33337 10 3.33337C15.8334 3.33337 19.1667 10 19.1667 10C19.1667 10 15.8334 16.6667 10 16.6667C4.16671 16.6667 0.833374 10 0.833374 10Z\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M10 12.5C11.3808 12.5 12.5 11.3808 12.5 10C12.5 8.61933 11.3808 7.50004 10 7.50004C8.61933 7.50004 7.50004 8.61933 7.50004 10C7.50004 11.3808 8.61933 12.5 10 12.5Z\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <!-- <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"workHistoryTable.count\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination> -->\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n", styles: [".rowbody{background:var(--Gray-50, #F9FAFB)}.issuecard{border-radius:8px;border:1px solid var(--Gray-100, #F2F4F7);background:var(--White, #FFF);box-shadow:0 1px 2px #1018280d;padding:14px 12px}.issuecard label{color:var(--Black, #101828);font-size:16px;line-height:24px}.issuecard.active{background:var(--Primary-25, #F6FCFF);box-shadow:0 2px 4px -2px #1018280f,0 4px 8px -2px #1018281a}.fw-bold-700{font-weight:700!important}.fw-bold-400{font-weight:400!important}.profile{width:24px;height:24px;overflow:hidden;border-radius:200px}.msgprofile{width:48px!important;height:48px!important;border-radius:200px;overflow:hidden}.timingtext{color:var(--Gray-500, #667085);font-size:12px;line-height:18px}.bg-badge{background-color:#776f6f29!important}.items:hover,.tems.focus,.items.active,.camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.textSub{color:var(--Gray-500, #667085);font-size:14px;font-weight:400;line-height:20px}.taketicket{color:var(--Gray-500, #667085);font-size:16px;line-height:24px}tr{vertical-align:middle!important}.img-src{width:25%}.mh-60vh{height:40vh!important}.min-height-60vh{min-height:50vh!important}.text-primary{color:var(--Primary-700, #009BF3)!important;font-family:Inter;font-size:14px;font-weight:500}\n"] }]
|
|
569
|
+
args: [{ selector: "lib-infratickets", template: "\r\n<div class=\"card\">\r\n <div class=\"card-header border-0 pt-3\">\r\n <h3 class=\"card-title align-items-start flex-column\">\r\n <span *ngIf=\"type !== 'mat' && type !== 'dataMismatch'\" class=\"card-label mb-2\">{{type | titlecase}} Tickets</span>\r\n <span *ngIf=\"type === 'dataMismatch'\" class=\"card-label mb-2\">Data Mismatch Tickets</span>\r\n <span *ngIf=\"type === 'mat'\" class=\"card-label mb-2\">Employee Mat</span>\r\n <!-- <span class=\"text-sub mb-2\">Last updated 1 hour ago</span> -->\r\n </h3>\r\n <div *ngIf=\"userData ==='Workspace'\" class=\"card-toolbar\">\r\n <div class=\"d-flex\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <span class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <rect opacity=\"0.5\" x=\"17.0365\" y=\"15.1223\" width=\"8.15546\" height=\"2\" rx=\"1\"\r\n transform=\"rotate(45 17.0365 15.1223)\" fill=\"currentColor\"></rect>\r\n <path\r\n d=\"M11 19C6.55556 19 3 15.4444 3 11C3 6.55556 6.55556 3 11 3C15.4444 3 19 6.55556 19 11C19 15.4444 15.4444 19 11 19ZM11 5C7.53333 5 5 7.53333 5 11C5 14.4667 7.53333 17 11 17C14.4667 17 17 14.4667 17 11C17 7.53333 14.4667 5 11 5Z\"\r\n fill=\"currentColor\"></path>\r\n </svg>\r\n </span>\r\n <input type=\"text\" class=\"form-control ps-14 me-2\" \r\n placeholder=\"Search\" autocomplete=\"off\" [(ngModel)]=\"searchWorkspace\" (change)=\"searchTickets()\"/>\r\n <lib-filters *ngIf=\"type !== 'mat' && type !=='dataMismatch'\" [dataObject]=\"dataObject1\" (appliedFilters)=\"applyFilters($event)\"></lib-filters>\r\n \r\n <!-- <div *ngIf=\"type !== 'mat'\" class=\"position-relative\">\r\n <button type=\"button\" (click)=\"openDropdown($event)\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\"><svg\r\n width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M5 10H15M2.5 5H17.5M7.5 15H12.5\" stroke=\"#344054\" stroke-width=\"2\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2\">Filter</span> </button>\r\n <div *ngIf=\"dropDown\" class=\"card py-1 w-200px position-absolute top-50px end-0\">\r\n <ul *ngFor=\"let item of dropdownItems\" class=\"list-unstyled\">\r\n <li [ngClass]=\"this.selectedIssue === item ? 'active' : ''\" class=\"camera px-5 items fw-semibold cursor-pointer py-2\" (click)=\"selectItem(item)\">{{item}}</li>\r\n </ul>\r\n </div>\r\n </div> -->\r\n\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isDownload && (!noData.open || !noData.inprogress || !noData.closed)\" (click)=\"exportData()\" class=\"btn btn-outline p-3 text-nowrap border border-gray ms-2 me-2\" type=\"button\"><span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M17.5 12.5V15.8333C17.5 16.2754 17.3244 16.6993 17.0118 17.0118C16.6993 17.3244 16.2754 17.5 15.8333 17.5H4.16667C3.72464 17.5 3.30072 17.3244 2.98816 17.0118C2.67559 16.6993 2.5 16.2754 2.5 15.8333V12.5M14.1667 6.66667L10 2.5M10 2.5L5.83333 6.66667M10 2.5V12.5\" stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span> Export</button>\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isEdit\" type=\"button\" (click)=\"takeTicket()\"\r\n class=\"btn btn-primary mx-2 rounded-3 text-nowrap\"><span class=\"ms-2 text-white\">Take Ticket</span> </button>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"userData ==='History'\" class=\"card-toolbar\">\r\n <div class=\"d-flex\">\r\n <div class=\"d-flex align-items-center position-relative my-1\">\r\n <span class=\"svg-icon svg-icon-1 position-absolute ms-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\">\r\n <rect opacity=\"0.5\" x=\"17.0365\" y=\"15.1223\" width=\"8.15546\" height=\"2\" rx=\"1\"\r\n transform=\"rotate(45 17.0365 15.1223)\" fill=\"currentColor\"></rect>\r\n <path\r\n d=\"M11 19C6.55556 19 3 15.4444 3 11C3 6.55556 6.55556 3 11 3C15.4444 3 19 6.55556 19 11C19 15.4444 15.4444 19 11 19ZM11 5C7.53333 5 5 7.53333 5 11C5 14.4667 7.53333 17 11 17C14.4667 17 17 14.4667 17 11C17 7.53333 14.4667 5 11 5Z\"\r\n fill=\"currentColor\"></path>\r\n </svg>\r\n </span>\r\n <input type=\"text\" class=\"form-control ps-14 me-2\" \r\n placeholder=\"Search\" autocomplete=\"off\" [(ngModel)]=\"searchHistory\" (change)=\"searchHistoryTable()\" />\r\n \r\n <lib-filters *ngIf=\"type !== 'mat' && type!=='audit' && filterStores?.length > 0\" [dataObject]=\"dataObject\" (appliedFilters)=\"receiveData($event)\" ></lib-filters>\r\n\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isDownload && !historyNodata\" (click)=\"ExportHistoryasXlsx()\" class=\"btn btn-outline p-3 border border-gray ms-2 me-2 text-nowrap\" type=\"button\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M17.5 12.5V15.8333C17.5 16.2754 17.3244 16.6993 17.0118 17.0118C16.6993 17.3244 16.2754 17.5 15.8333 17.5H4.16667C3.72464 17.5 3.30072 17.3244 2.98816 17.0118C2.67559 16.6993 2.5 16.2754 2.5 15.8333V12.5M14.1667 6.66667L10 2.5M10 2.5L5.83333 6.66667M10 2.5V12.5\" stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span> Export\r\n </button>\r\n \r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body py-2\">\r\n <div class=\"d-flex overflow-auto h-55px\">\r\n <ul class=\"nav nav-stretch nav-line-tabs nav-line-tabs-2x border-transparent fs-5 fw-bolder flex-nowrap\">\r\n <li *ngIf=\"type !== 'audit'\" (click)=\"userValue('Workspace')\" class=\"nav-item cursor-pointer\"><a [ngClass]=\"userData ==='Workspace' ? 'active' :''\"\r\n class=\"nav-link text-active-primary me-6\">Workspace</a>\r\n </li>\r\n <!-- *ngIf=\"type!=='dataMismatch'\" -->\r\n <li (click)=\"userValue('History')\" class=\"nav-item cursor-pointer\"><a [ngClass]=\"userData ==='History' ? 'active' :''\"\r\n class=\"nav-link text-active-primary me-6\">History</a></li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"userData ==='Workspace'\" class=\"card-body\">\r\n <div class=\"row\">\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Open</span><span *ngIf=\"statusOpen?.length > 0 && !loading.open && !noData.open\" class=\"rounded-5 ms-3 px-1 border border-gray bg-badge\">{{statusOpen?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!loading.open && !noData.open\">\r\n <div *ngFor=\"let open of statusOpen; let index = index\">\r\n <div [ngClass]=\"open.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(open)\">\r\n <div *ngIf=\"open.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{open?.storeId ? open?.storeId :'--'}}</label><br>\r\n <label class=\"fw-semibold m-2\">{{open?.storeName ? open?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg>{{open?.Date ? open?.Date : '--'}}\r\n </div>\r\n <span *ngIf=\"open?.infraIssue\" class=\"badge badge-light-warning\">{{open?.infraIssue ? open?.infraIssue :'--'}}</span>\r\n <span *ngIf=\"type ==='installation'\" class=\"badge badge-light-primary\">{{open?.installationStatus ? open?.installationStatus :'--'}}</span>\r\n <span *ngIf=\"type ==='dataMismatch'\" class=\"badge badge-light-warning\">{{open?.issueType === 'highcount' ? 'High Count' : (open?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex\">\r\n <div *ngIf=\"open?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'open')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{open?.ticketId ? open?.ticketId : '--'}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"open?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span *ngIf=\"open?.issueStatus !== 'notidentified'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!open.isOpen\" (click)=\"selectView($event,index,'open')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!open.isOpen && open?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusOpen?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center\"> \r\n <img class=\"mx-auto mb-2\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-2 fw-bold\">No Open Tickets </span>\r\n <button class=\"w-100 btn btn-primary mt-5\" (click)=\"takeTicket()\">Take Ticket</button>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.open\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.open\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto mb-2\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Open Tickets </span>\r\n <button *ngIf=\"(gs.userAccess | async)?.manage_tickets_isEdit\" class=\"w-100 btn btn-primary mt-5\" (click)=\"takeTicket()\">Take Ticket</button>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Inprogress</span><span *ngIf=\"statusInprogress?.length > 0 && !loading.inprogress && !noData.inprogress\" class=\"rounded-5 ms-3 px-1 border border-gray bg-badge\">{{statusInprogress?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!loading.inprogress && !noData.inprogress\">\r\n <div *ngFor=\"let inprogress of statusInprogress; let index = index\">\r\n <div [ngClass]=\"inprogress.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(inprogress)\">\r\n <div *ngIf=\"inprogress?.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{inprogress?.storeId}}</label><br>\r\n <label class=\"fw-semibold my-2\">{{inprogress?.storeName ? inprogress?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg> {{inprogress?.Date}}\r\n </div>\r\n <span *ngIf=\"inprogress?.infraIssue\" class=\"badge badge-light-warning\">{{inprogress?.infraIssue}}</span>\r\n <span *ngIf=\"type ==='installation' && inprogress?.infraIssue!==''\" class=\"badge badge-light-primary text-capitalize ms-3\">{{inprogress?.installationStatus ? inprogress?.installationStatus :'--'}}</span>\r\n <span *ngIf=\"type ==='dataMismatch'\" class=\"badge badge-light-warning\">{{inprogress?.issueType === 'highcount' ? 'High Count' : (inprogress?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\" d-flex\">\r\n <div *ngIf=\"inprogress?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'inprogress')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{inprogress?.ticketId}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"inprogress?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span class=\"ms-3\" *ngIf=\"inprogress?.issueStatus !== 'notidentified'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!inprogress.isOpen\" (click)=\"selectView($event,index,'inprogress')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!inprogress.isOpen && inprogress?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusInprogress?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center mx-auto\"> \r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-2 fw-bold\">No In-Progress Tickets </span>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.inprogress\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.inprogress\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No In-Progress Tickets </span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-sm-4\">\r\n <div class=\"w-100 h-100 rounded-2 overflow-hidden\" (click)=\"selectTicket()\">\r\n <div class=\"badge-light-default px-3 py-4\">\r\n <span>Closed</span><span *ngIf=\"statusClosed?.length > 0 && !noData.closed && !loading.closed\" class=\"rounded-5 ms-3 px-1 border border-gray border-gray bg-badge\">{{statusClosed?.length}}</span>\r\n </div>\r\n <div class=\"rowbody h-100 px-4 py-3\">\r\n <div *ngIf=\"!noData.closed && !loading.closed\">\r\n <div *ngFor=\"let closed of statusClosed; let index = index\">\r\n <div [ngClass]=\"closed.isOpen ? 'active':''\" class=\"issuecard cursor-pointer w-100 mb-5\" (click)=\"routetoTicket(closed)\">\r\n <div *ngIf=\"closed?.isOpen\" class=\"d-flex justify-content-between\">\r\n <div class=\"mb-5\">\r\n <label class=\"fw-semibold\">{{closed?.storeId}}</label><br>\r\n <label class=\"fw-semibold m-2\">{{closed?.storeName ? closed?.storeName :'--'}}</label><br>\r\n <div class=\"d-flex align-items-center mt-2\">\r\n <div class=\"badge badge-light-default me-3\">\r\n <svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3732_60277)\">\r\n <path d=\"M8 1V3M4 1V3M1.5 5H10.5M2.5 2H9.5C10.0523 2 10.5 2.44772 10.5 3V10C10.5 10.5523 10.0523 11 9.5 11H2.5C1.94772 11 1.5 10.5523 1.5 10V3C1.5 2.44772 1.94772 2 2.5 2Z\" stroke=\"#667085\" stroke-width=\"1.1\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3732_60277\">\r\n <rect width=\"12\" height=\"12\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg> {{closed?.Date}}\r\n </div>\r\n <span *ngIf=\"closed?.infraIssue\" [ngClass]=\"closed?.infraIssue === 'Live'? 'badge badge-light-success':''\" class=\"badge badge-light-warning\"> {{closed?.infraIssue}} </span>\r\n <span *ngIf=\"type ==='dataMismatch'\" [ngClass]=\"closed?.infraIssue === 'Live'? 'badge badge-light-success':''\" class=\"badge badge-light-warning\">{{closed?.issueType === 'highcount' ? 'High Count' : (closed?.issueType === 'lowcount' ? 'Low Count' : '')}}</span>\r\n </div>\r\n </div>\r\n <div class=\" d-flex\">\r\n <div *ngIf=\"closed?.notification\" class=\"profile d-flex align-items-centre justify-content-centre me-3\">\r\n <img src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <span (click)=\"selectView($event,index,'closed')\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </div>\r\n </div>\r\n <div class=\"d-flex justify-content-between text-center align-items-center\"> \r\n <div class=\"d-flex justify-content-between\" > \r\n <span class=\" d-flex align-items-center\"><svg class=\"me-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" fill=\"#667085\"/>\r\n <path d=\"M10.7966 1.42752C10.6541 1.29681 10.4667 1.22617 10.2733 1.23037C10.08 1.23456 9.8958 1.31325 9.75911 1.45002L1.48911 9.72002C1.41938 9.78968 1.36406 9.87239 1.32632 9.96344C1.28857 10.0545 1.26915 10.1521 1.26915 10.2506C1.26915 10.3492 1.28857 10.4468 1.32632 10.5379C1.36406 10.6289 1.41938 10.7116 1.48911 10.7813L2.64661 11.9388C2.65632 11.9418 2.66647 11.943 2.67661 11.9425C2.71411 11.9425 2.76411 11.9288 2.81161 11.8975C3.26845 11.5927 3.8168 11.4557 4.36331 11.5097C4.90983 11.5637 5.42073 11.8055 5.80905 12.1938C6.19738 12.5822 6.43913 13.0931 6.49316 13.6396C6.54718 14.1861 6.41014 14.7344 6.10536 15.1913C6.07792 15.2311 6.06231 15.2779 6.06036 15.3263C6.06036 15.3425 6.06286 15.3513 6.06411 15.355L7.19411 16.4863C7.26512 16.5574 7.34971 16.6136 7.44285 16.6514C7.53599 16.6892 7.63579 16.7079 7.7363 16.7064C7.83682 16.7049 7.936 16.6832 8.02796 16.6426C8.11992 16.602 8.20278 16.5433 8.27161 16.47L16.5204 7.70502C16.5883 7.63267 16.6412 7.54755 16.676 7.4546C16.7108 7.36165 16.7268 7.26272 16.7231 7.16354C16.7193 7.06436 16.696 6.96691 16.6543 6.87683C16.6126 6.78675 16.5535 6.70583 16.4804 6.63877L15.3729 5.62252H15.3691C15.3514 5.61902 15.3331 5.61902 15.3154 5.62252C15.2448 5.63722 15.1806 5.67348 15.1316 5.72627C14.9227 5.96305 14.6687 6.15579 14.3845 6.29323C14.1002 6.43067 13.7914 6.51005 13.4761 6.52673C13.1608 6.54341 12.8453 6.49704 12.5481 6.39035C12.251 6.28366 11.978 6.11879 11.7453 5.90537C11.5126 5.69195 11.3248 5.43428 11.1929 5.14742C11.061 4.86055 10.9876 4.55027 10.977 4.2347C10.9664 3.91913 11.0188 3.60462 11.1312 3.30956C11.2436 3.01449 11.4137 2.74481 11.6316 2.51627C11.6797 2.46264 11.7098 2.39535 11.7179 2.32377C11.7201 2.30488 11.7184 2.28572 11.7129 2.26752L10.7966 1.42752ZM9.05286 0.742522C9.37176 0.423638 9.80145 0.240174 10.2523 0.230393C10.7032 0.220611 11.1404 0.385268 11.4729 0.690022L12.3891 1.53127C12.6629 1.78127 12.7391 2.12252 12.7141 2.41377C12.6879 2.70127 12.5616 2.98252 12.3666 3.19377C12.2446 3.3269 12.1499 3.48276 12.0881 3.65246C12.0263 3.82216 11.9985 4.00237 12.0064 4.18281C12.0142 4.36325 12.0575 4.54037 12.1338 4.70407C12.2101 4.86778 12.3179 5.01485 12.451 5.1369C12.5841 5.25894 12.74 5.35358 12.9097 5.41539C13.0794 5.4772 13.2596 5.50498 13.44 5.49714C13.6205 5.48931 13.7976 5.44601 13.9613 5.36972C14.125 5.29344 14.2721 5.18565 14.3941 5.05252C14.5879 4.84002 14.8566 4.69002 15.1404 4.63877C15.3004 4.60665 15.4656 4.61218 15.6231 4.65492C15.7806 4.69765 15.926 4.77643 16.0479 4.88502L17.1566 5.90127C17.3273 6.0579 17.4652 6.24687 17.5623 6.4572C17.6594 6.66754 17.7138 6.89507 17.7223 7.12658C17.7308 7.35809 17.6932 7.58899 17.6118 7.80587C17.5303 8.02276 17.4066 8.22131 17.2479 8.39002L9.00036 17.155C8.83975 17.3257 8.64649 17.4624 8.43206 17.5569C8.21763 17.6515 7.98638 17.702 7.75205 17.7055C7.51771 17.709 7.28506 17.6654 7.0679 17.5773C6.85074 17.4892 6.65349 17.3583 6.48786 17.1925L5.35786 16.0625C4.92411 15.6288 5.02911 15.0038 5.27411 14.6375C5.44988 14.3731 5.52871 14.0559 5.4972 13.74C5.46569 13.424 5.32579 13.1287 5.10125 12.9041C4.87672 12.6796 4.58139 12.5397 4.26542 12.5082C3.94945 12.4767 3.63231 12.5555 3.36786 12.7313C2.99911 12.975 2.37536 13.08 1.94161 12.645L0.784111 11.4875C0.621589 11.325 0.492669 11.1321 0.404712 10.9198C0.316755 10.7074 0.271484 10.4798 0.271484 10.25C0.271484 10.0202 0.316755 9.79262 0.404712 9.58029C0.492669 9.36795 0.621589 9.17503 0.784111 9.01252L9.05286 0.742522Z\" stroke=\"#667085\"/>\r\n </svg> {{closed.ticketId}} </span>\r\n </div>\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <span *ngIf=\"closed?.ticketType === 'refreshticket'\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"17\" height=\"14\" viewBox=\"0 0 17 14\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.94602 4.98881L2.66602 6.33881L2.00602 6.07881L0.666016 2.83881L1.58602 2.45881L2.39602 4.40881C2.93977 3.04801 3.92872 1.91169 5.20145 1.18532C6.47419 0.458951 7.95554 0.185426 9.40375 0.409387C10.852 0.633349 12.1815 1.34157 13.1754 2.41846C14.1692 3.49535 14.7687 4.87732 14.876 6.33881H13.876C13.7616 5.09008 13.2224 3.91836 12.3484 3.01919C11.4743 2.12003 10.3184 1.54781 9.0734 1.39804C7.82842 1.24826 6.56973 1.53 5.50739 2.19622C4.44505 2.86244 3.64332 3.87284 3.23602 5.05881L5.55602 4.05881L5.94602 4.98881ZM14.806 7.66881L16.146 10.8988L15.226 11.3388L14.406 9.33881C13.858 10.7049 12.8618 11.8442 11.581 12.5696C10.3001 13.295 8.81077 13.5634 7.35728 13.3309C5.9038 13.0983 4.57255 12.3786 3.582 11.2898C2.59145 10.2009 2.00046 8.80775 1.90602 7.33881H2.90602V6.83881C2.90882 8.12627 3.36402 9.3718 4.19203 10.3577C5.02005 11.3436 6.16821 12.0071 7.43584 12.2322C8.70346 12.4574 10.0099 12.2299 11.1268 11.5895C12.2437 10.9491 13.1 9.93655 13.546 8.72881L11.296 9.65881L10.906 8.73881L14.156 7.38881L14.806 7.66881Z\" fill=\"#98A2B3\"/>\r\n <path d=\"M8.40625 7.54004C8.95853 7.54004 9.40625 7.09232 9.40625 6.54004C9.40625 5.98775 8.95853 5.54004 8.40625 5.54004C7.85397 5.54004 7.40625 5.98775 7.40625 6.54004C7.40625 7.09232 7.85397 7.54004 8.40625 7.54004Z\" fill=\"#98A2B3\"/>\r\n </svg>\r\n </span>\r\n <span *ngIf=\"closed?.issueStatus !== 'notidentified'\" class=\"ms-3\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_3827_12061)\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.20065 10.3333H9.15621V12.3333H7.20065V10.3333ZM9.15621 4.33327H7.20065V9.33326H9.15621V4.33327ZM10.6229 5.83327L9.6451 6.83327L12.0895 9.33326L16.0007 4.83327L15.0229 3.83327L12.0895 7.33326L10.6229 5.83327ZM8.17843 14.0333C6.70108 14.0306 5.28499 13.4292 4.24034 12.3608C3.1957 11.2925 2.60768 9.84418 2.6051 8.33326C2.6051 5.19327 5.10821 2.63327 8.17843 2.63327C9.96776 2.63327 11.5518 3.51327 12.5784 4.83327L13.478 3.91327C12.8395 3.10534 12.0319 2.45415 11.1147 2.00765C10.1976 1.56115 9.19419 1.3307 8.17843 1.33327C4.40421 1.33327 1.33398 4.47327 1.33398 8.33326C1.33398 12.1933 4.40421 15.3333 8.17843 15.3333C11.9527 15.3333 15.0229 12.1933 15.0229 8.33326L13.5367 9.85326C12.8913 12.2633 10.7402 14.0433 8.17843 14.0433V14.0333Z\" fill=\"#98A2B3\"/>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_3827_12061\">\r\n <rect width=\"16\" height=\"16\" fill=\"white\"/>\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n <span *ngIf=\"!closed.isOpen\" (click)=\"selectView($event,index,'closed')\" class=\"ms-3\"> <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path d=\"M13.166 2.5H18.166M18.166 2.5V7.5M18.166 2.5L12.3327 8.33333M8.16602 17.5H3.16602M3.16602 17.5V12.5M3.16602 17.5L8.99935 11.6667\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n <div *ngIf=\"!closed.isOpen && closed?.notification\" class=\"profile d-flex align-items-centre justify-content-centre ms-3\">\r\n <img class=\"\" src=\"./assets/tango/Images/Bellnotification.png\" alt=\"\">\r\n </div>\r\n <!-- <img *ngIf=\"cardView\" class=\"profile ms-3\" src=\"./assets/tango/Images/gropmodal.png\" alt=\"\"> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"statusClosed?.length === 0 || !noData && !loading\" class=\"w-100 mt-10 mb-10 mh-60vh d-grid text-center mx-auto\"> \r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Closed Tickets</span>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"loading?.closed\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData?.closed\">\r\n <div class=\"row rowbody\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body mh-60vh d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"mx-auto\" src=\"./assets/tango/Images/taketicket.svg\">\r\n <span class=\"taketicket mt-5 fw-bold\">No Closed Tickets </span>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container> \r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div> \r\n</div>\r\n<div *ngIf=\"userData === 'History'\">\r\n<div *ngIf=\"type === 'installation' || type === 'infra' || type === 'dataMismatch'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\">\r\n <table class=\"table bottom-border text-nowrap\">\r\n <thead>\r\n <tr>\r\n <th><div (click)=\"sortData('issueDate')\">\r\n Created on\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div (click)=\"sortData('ticketId')\">\r\n Ticket ID\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== 1 || sortColumName !== 'ticketId' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'ticketId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'ticketId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientName')\">\r\n Brand Name\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientName' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientName' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientId')\">\r\n Brand ID\r\n <span *ngIf=\"sortColumName === 'clientId' && sortBy !== 1 || sortColumName !== 'clientId'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'clientId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeName')\">\r\n Store Name\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeName' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeName' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeId')\">\r\n Store ID\r\n <span *ngIf=\"sortColumName === 'storeId' && sortBy !== 1 || sortColumName !== 'storeId'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeId' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'storeId' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'infra' || type ==='installation'\"><div (click)=\"sortData('issueDate')\">\r\n Issue Identified on\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'dataMismatch'\"><div (click)=\"sortData('issueDate')\">\r\n Issue date\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('issueClosedDate')\">\r\n Closed on\r\n <span *ngIf=\"sortColumName === 'issueClosedDate' && sortBy !== 1 || sortColumName !== 'issueClosedDate'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueClosedDate' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueClosedDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueClosedDate' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th *ngIf=\"type === 'infra' || type ==='installation'\"><div (click)=\"sortData('infraIssue')\">Issue Type\r\n <span *ngIf=\"sortColumName === 'infraIssue' && sortBy !== 1 || sortColumName !== 'infraIssue'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'infraIssue' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'infraIssue' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'infraIssue' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th *ngIf=\"type === 'dataMismatch'\"><div (click)=\"sortData('issueType')\">Issue Type\r\n <span *ngIf=\"sortColumName === 'issueType' && sortBy !== 1 || sortColumName !== 'issueType'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueType' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueType' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'issueType' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th ><div (click)=\"sortData('status')\">Issue Type\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== 1 || sortColumName !== 'status'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'status' && sortBy !== 1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n [attr.stroke]=\"sortColumName === 'status' && sortBy !== -1 ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistoryTable ; let i = index\">\r\n <td>{{history?.issueDate|customDateFormat}}</td>\r\n <td class=\"text-primary cursor-pointer\" (click)=\"routetoTicket(history)\">{{history?.ticketId ? history?.ticketId :'--'}}</td>\r\n <td>\r\n <div class=\"d-grid ms-3 cursor-pointer\" (click)=\"routetoTicket(history)\">\r\n <span class=\"text-primary mb-1 text-capitalize\">{{history?.clientName ? history?.clientName : '--'}}</span>\r\n \r\n </div>\r\n </td>\r\n <td>\r\n {{history?.clientId ? history?.clientId :'--'}}\r\n </td>\r\n <td>\r\n <div class=\"d-grid ms-3 cursor-pointer\" (click)=\"routetoTicket(history)\">\r\n <span class=\"text-primary mb-1\">{{history?.storeName ? history?.storeName :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n {{history?.storeId ? history?.storeId :'--'}}\r\n </td>\r\n <td *ngIf=\"type === 'infra' || type ==='installation'\">{{history?.issueIdentifiedDate?(history?.issueIdentifiedDate |customDateFormat): '--'}}</td>\r\n <td *ngIf=\"type === 'dataMismatch'\">{{history?.issueDate?(history?.issueDate |customDateFormat): '--'}}</td>\r\n <td>{{history?.issueClosedDate?(history?.issueClosedDate|customDateFormat):\"--\"}}</td>\r\n <td *ngIf=\"type === 'infra' || type ==='installation'\">{{history?.infraIssue ? history?.infraIssue :'--'}}</td>\r\n <td *ngIf=\"type === 'dataMismatch'\">{{history?.issueType ? history?.issueType :'--'}}</td>\r\n <td> <span class=\"badge badge-light-primary\" *ngIf=\"history?.status ==='open'\">Open</span>\r\n <span class=\"badge badge-light-warning\" *ngIf=\"history?.status ==='inprogress'\">Inprogress</span>\r\n <span class=\"badge badge-light-success\" *ngIf=\"history?.status ==='closed'\">Closed</span></td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"totalItems\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</div>\r\n</div>\r\n<div *ngIf=\"userData === 'History'\">\r\n <div *ngIf=\"type === 'mat'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\">\r\n <table class=\"table bottom-border\">\r\n <thead>\r\n <tr>\r\n <th><div (click)=\"sortData('issueDate')\">\r\n Date\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== 1 || sortColumName !== 'issueDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'issueDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div (click)=\"sortData('ticketId')\">\r\n Ticket ID\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== 1 || sortColumName !== 'ticketId' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'ticketId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('clientName')\">\r\n Client Info\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div (click)=\"sortData('storeName')\"></div>\r\n Store Info\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </th>\r\n <th><div (click)=\"sortData('status')\">Status\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== 1 || sortColumName !== 'status'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'status' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistoryTable ; let i = index\">\r\n <td>{{history?.issueDate|customDateFormat}}</td>\r\n <td>{{history?.ticketId ? history?.ticketId :'--'}}</td>\r\n <td>\r\n <div class=\"d-grid\">\r\n <span class=\"text-primary\">{{history?.clientName ? history?.clientName : '--'}}</span>\r\n <span class=\"textSub mt-1\">ID : {{history?.clientId ? history?.clientId :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n <div class=\"d-grid ms-3\">\r\n <span class=\"text-primary mb-1\">{{history?.storeName ? history?.storeName :'--'}}</span>\r\n <span class=\"textSub\">ID : {{history?.storeId ? history?.storeId :'--'}}</span>\r\n </div>\r\n </td>\r\n <td>\r\n <span *ngIf=\"history.status ==='open'\" class=\"badge badge-light-danger\">Open</span>\r\n <span *ngIf=\"history.status ==='closed'\" class=\"badge badge-light-success\">Closed</span>\r\n <span *ngIf=\"history.status ==='inprogress'\" class=\"badge badge-light-primary\">In\r\n Progress</span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"totalItems\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"userData === 'History'\">\r\n <div *ngIf=\"type === 'audit'\" class=\"card-body\">\r\n <div *ngIf=\"!historyLoading && !historyNodata\">\r\n <div class=\"table-responsive\"> \r\n <table class=\"table bottom-border\">\r\n <thead>\r\n <tr>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('fileDate')\">\r\n File Date\r\n <span *ngIf=\"sortColumName === 'fileDate' && sortBy !== 1 || sortColumName !== 'fileDate' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'fileDate' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('clientName')\">\r\n Client Info\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== 1 || sortColumName !== 'clientName' \">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'clientName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('storeName')\">\r\n Store Info\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('location')\"></div>\r\n Location\r\n <span *ngIf=\"sortColumName === 'location' && sortBy !== 1 || sortColumName !== 'location'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'location' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('type')\">Type\r\n <span *ngIf=\"sortColumName === 'type' && sortBy !== 1 || sortColumName !== 'type'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'type' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('accuracy')\">Accuracy\r\n <span *ngIf=\"sortColumName === 'accuracy' && sortBy !== 1 || sortColumName !== 'accuracy'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'accuracy' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('timespent')\">Time Spent\r\n <span *ngIf=\"sortColumName === 'timespent' && sortBy !== 1 || sortColumName !== 'timespent'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 1.33337V10.6667M6.00016 10.6667L10.6668 6.00004M6.00016 10.6667L1.3335 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span *ngIf=\"sortColumName === 'timespent' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path d=\"M6.00016 10.6667L6.00016 1.33337M6.00016 1.33337L1.3335 6.00004M6.00016 1.33337L10.6668 6.00004\"\r\n stroke=\"#667085\" stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span></div>\r\n </th>\r\n <th>Status\r\n </th>\r\n <th>Actions\r\n \r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let history of workHistorydata ; let i = index\">\r\n <td>{{history?.fileDate}}</td>\r\n <td>{{history?.clientName ? history?.clientName :'--'}}</td>\r\n <td>{{history?.storeName ? history?.storeName : '--'}}\r\n </td>\r\n <td>{{history?.location ? history?.location :'--'}}</td>\r\n <td>{{history?.type ? history?.type :'--'}}\r\n </td>\r\n <td>{{history?.accuracy ? history?.accuracy :'--'}}</td>\r\n <td>{{history?.timespent ? history?.timespent :'--'}}</td>\r\n <td>\r\n <span *ngIf=\"history.status ==='draft'\" class=\"badge badge-light-warning\">Draft</span>\r\n <span *ngIf=\"history.status ==='completed'\" class=\"badge badge-light-success\">Closed</span>\r\n <span *ngIf=\"history.status ==='inprogress'\" class=\"badge badge-light-primary\">In\r\n Progress</span>\r\n </td>\r\n <td><span class=\"cursor-pointer\" (click)=\"viewUser()\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M0.833374 10C0.833374 10 4.16671 3.33337 10 3.33337C15.8334 3.33337 19.1667 10 19.1667 10C19.1667 10 15.8334 16.6667 10 16.6667C4.16671 16.6667 0.833374 10 0.833374 10Z\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n <path d=\"M10 12.5C11.3808 12.5 12.5 11.3808 12.5 10C12.5 8.61933 11.3808 7.50004 10 7.50004C8.61933 7.50004 7.50004 8.61933 7.50004 10C7.50004 11.3808 8.61933 12.5 10 12.5Z\" stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n \r\n </table> \r\n </div>\r\n <!-- <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\"\r\n [totalItems]=\"workHistoryTable.count\" [paginationSizes]=\"[10,20,30]\" [pageSize]=\"limit\"\r\n (pageChange)=\"onPageChange($event)\" (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination> -->\r\n </div> \r\n <ng-container *ngIf=\"historyLoading && !historyNodata\" >\r\n <div class=\"row loader d-flex justify-content-center align-items-center\">\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n <div class=\"shimmer\">\r\n <div class=\"wrapper\">\r\n <div class=\"stroke animate title\"></div>\r\n <div class=\"stroke animate link\"></div>\r\n <div class=\"stroke animate description\"></div>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"historyNodata && !historyLoading\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column\">\r\n <img class=\"img-src\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </div>\r\n</div>\r\n\r\n\r\n\r\n\r\n\r\n\r\n", styles: [".rowbody{background:var(--Gray-50, #F9FAFB)}.issuecard{border-radius:8px;border:1px solid var(--Gray-100, #F2F4F7);background:var(--White, #FFF);box-shadow:0 1px 2px #1018280d;padding:14px 12px}.issuecard label{color:var(--Black, #101828);font-size:16px;line-height:24px}.issuecard.active{background:var(--Primary-25, #F6FCFF);box-shadow:0 2px 4px -2px #1018280f,0 4px 8px -2px #1018281a}.fw-bold-700{font-weight:700!important}.fw-bold-400{font-weight:400!important}.profile{width:24px;height:24px;overflow:hidden;border-radius:200px}.msgprofile{width:48px!important;height:48px!important;border-radius:200px;overflow:hidden}.timingtext{color:var(--Gray-500, #667085);font-size:12px;line-height:18px}.bg-badge{background-color:#776f6f29!important}.items:hover,.tems.focus,.items.active,.camera.focus-visible{background:var(--Gray-50, #F9FAFB)}.textSub{color:var(--Gray-500, #667085);font-size:14px;font-weight:400;line-height:20px}.taketicket{color:var(--Gray-500, #667085);font-size:16px;line-height:24px}tr{vertical-align:middle!important}.img-src{width:25%}.mh-60vh{height:40vh!important}.min-height-60vh{min-height:50vh!important}.text-primary{color:var(--Primary-700, #009BF3)!important;font-family:Inter;font-size:14px;font-weight:500}\n"] }]
|
|
575
570
|
}], ctorParameters: () => [{ type: i1.ActivatedRoute }, { type: i1.Router }, { type: i0.ChangeDetectorRef }, { type: i2.DataService }, { type: i3.ToastService }, { type: i4.TicketsService }, { type: i2.DataService }, { type: i5.GlobalStateService }, { type: i6.ExcelService }], propDecorators: { onClick: [{
|
|
576
571
|
type: HostListener,
|
|
577
572
|
args: ["document:click", ["$event"]]
|
|
578
573
|
}] } });
|
|
579
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mcmF0aWNrZXRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXRpY2tldC11c2VyL3NyYy9saWIvY29tcG9uZW50cy9pbmZyYXRpY2tldHMvaW5mcmF0aWNrZXRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXRpY2tldC11c2VyL3NyYy9saWIvY29tcG9uZW50cy9pbmZyYXRpY2tldHMvaW5mcmF0aWNrZXRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxHQUdiLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7O0FBTzFDLE1BQU0sT0FBTyxxQkFBcUI7SUE4RFo7SUFBK0I7SUFDekM7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNEO0lBQ0M7SUFwRVYsV0FBVyxHQUFRLE9BQU8sQ0FBQztJQUMzQixVQUFVLEdBQVEsQ0FBQyxDQUFDO0lBQ3BCLGFBQWEsR0FBUSxFQUFFLENBQUM7SUFDeEIsUUFBUSxHQUFRLFdBQVcsQ0FBQztJQUM1QixnQkFBZ0IsQ0FBTTtJQUN0Qix1QkFBdUI7SUFDdkIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixNQUFNLENBQVU7SUFDaEIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixlQUFlLENBQU07SUFDckIsTUFBTSxHQUFRLENBQUMsQ0FBQztJQUNoQixNQUFNLEdBQVEsQ0FBQyxDQUFDLENBQUM7SUFDakIsS0FBSyxHQUFRLEVBQUUsQ0FBQztJQUNoQixhQUFhLENBQU07SUFDbkIsYUFBYSxDQUFNO0lBQ25CLFNBQVMsR0FBVSxFQUFFLENBQUM7SUFDdEIsZUFBZSxHQUFVLEVBQUUsQ0FBQztJQUM1QixXQUFXLEdBQVUsRUFBRSxD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LE9BQU8sQ0FBQyxXQUFXLEtBQUssUUFBUSxFQUFFO29CQUNwQyxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7aUJBQ2hFO1lBQ0gsQ0FBQyxDQUFDLENBQUE7U0FDRDtRQUNELElBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUNoQyxJQUFJLENBQUMsYUFBYSxHQUFFLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoQyxDQUFDO3dHQTdpQlEscUJBQXFCOzRGQUFyQixxQkFBcUIsc0hDcEJsQyxvNitHQTgrQkE7OzRGRDE5QmEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGtCQUFrQjtnVEFpRjVCLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uRGVzdHJveSxcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgT25Jbml0LFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IFRpY2tldHNTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3RpY2tldC1pbmZyYS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2RhdGEuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tIFwidGFuZ28tYXBwLXVpLXNoYXJlZFwiO1xyXG5pbXBvcnQgeyBHbG9iYWxTdGF0ZVNlcnZpY2UgfSBmcm9tIFwidGFuZ28tYXBwLXVpLWdsb2JhbFwiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBFeGNlbFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvZXhjZWwuc2VydmljZVwiO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJsaWItaW5mcmF0aWNrZXRzXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9pbmZyYXRpY2tldHMuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybDogXCIuL2luZnJhdGlja2V0cy5jb21wb25lbnQuc2Nzc1wiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5mcmF0aWNrZXRzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHNlbGVjdGVkVGFiOiBhbnkgPSBcImluZnJhXCI7XHJcbiAgc2VsZWN0Q2FyZDogYW55ID0gMDtcclxuICBzZWxlY3RlZElzc3VlOiBhbnkgPSBcIlwiO1xyXG4gIHVzZXJEYXRhOiBhbnkgPSBcIldvcmtzcGFjZVwiO1xyXG4gIHdvcmtIaXN0b3J5VGFibGU6IGFueTtcclxuICAvLyB3b3JrSGlzdG9yeWRhdGE6YW55O1xyXG4gIGNhcmRWaWV3OiBib29sZWFuID0gZmFsc2U7XHJcbiAgaXNPcGVuOiBib29sZWFuO1xyXG4gIGRyb3BEb3duOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc2VhcmNoV29ya3NwYWNlOiBhbnk7XHJcbiAgb2Zmc2V0OiBhbnkgPSAxO1xyXG4gIHNvcnRCeTogYW55ID0gLTE7XHJcbiAgbGltaXQ6IGFueSA9IDEwO1xyXG4gIHNvcnRDb2x1bU5hbWU6IGFueTtcclxuICBzZWFyY2hIaXN0b3J5OiBhbnk7XHJcbiAgZHVtbXlPcGVuOiBhbnlbXSA9IFtdO1xyXG4gIGR1bW15SW5wcm9ncmVzczogYW55W10gPSBbXTtcclxuICBkdW1teUNsb3NlZDogYW55W10gPSBbXTtcclxuICBkcm9wZG93bkl0ZW1zOiBhbnlbXTtcclxuICBoaXN0b3J5TG9hZGluZzogYm9vbGVhbiA9IHRydWU7XHJcbiAgaGlzdG9yeU5vZGF0YTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGxvYWRpbmc6IGFueSA9IHtcclxuICAgIG9wZW46IHRydWUsXHJcbiAgICBpbnByb2dyZXNzOiB0cnVlLFxyXG4gICAgY2xvc2VkOiB0cnVlLFxyXG4gIH07XHJcbiAgbm9EYXRhOiBhbnkgPSB7XHJcbiAgICBvcGVuOiBmYWxzZSxcclxuICAgIGlucHJvZ3Jlc3M6IGZhbHNlLFxyXG4gICAgY2xvc2VkOiBmYWxzZSxcclxuICB9O1xyXG4gIHBhZ2luYXRpb24gPSB7XHJcbiAgICBvZmZzZXQ6IDEsXHJcbiAgICBsaW1pdDogMTAsXHJcbiAgICB0b3RhbENvdW50OiAxMDAwLFxyXG4gICAgdG90YWxQYWdlczogMjAsXHJcbiAgfTtcclxuICBkYXRhT2JqZWN0OiBhbnk7XHJcbiAgc3RhdHVzT3BlbjogYW55O1xyXG4gIHN0YXR1c0Nsb3NlZDogYW55O1xyXG4gIHN0YXR1c0lucHJvZ3Jlc3M6IGFueTtcclxuICBkdW1teUhpc3Rvcnk6IGFueTtcclxuICBoZWFkZXJGaWx0ZXI6IGFueTtcclxuICBmaWx0ZXJlZERhdGE6IGFueVtdO1xyXG4gIGRhdGVGaWx0ZXI6IGFueTtcclxuICBzdG9yZUZpbHRlcjogYW55O1xyXG4gIGlzc3VlRmlsdGVyOiBhbnk7XHJcbiAgZmlsdGVyU3RvcmVzOiBhbnkgPSBbXTtcclxuICBjbGllbnRJZDogYW55O1xyXG4gIHdvcmtIaXN0b3J5ZGF0YTphbnlbXT1be2ZpbGVEYXRlOicwNi0wNi0yNCcsY2xpZW50TmFtZTonbGVuc2thcnQnLHN0b3JlTmFtZTonbGtzdDkwNScsbG9jYXRpb246J2NoZW5uYWknLHR5cGU6J2F1ZGl0JyxhY2N1cmFjeTonODAlJyx0aW1lc3BlbnQ6JzE1bWlucycsc3RhdHVzOidjb21wbGV0ZWQnfSxcclxuICAgIHtmaWxlRGF0ZTonMDctMDYtMjQnLGNsaWVudE5hbWU6J3NhbmdlZXRoYScsc3RvcmVOYW1lOidsa3N0OTA1Jyxsb2NhdGlvbjonY2hlbm5haScsdHlwZTonYXVkaXQnLGFjY3VyYWN5Oic4MCUnLHRpbWVzcGVudDonMTVtaW5zJyxzdGF0dXM6J2NvbXBsZXRlZCd9LFxyXG4gICAge2ZpbGVEYXRlOicwOC0wNi0yNCcsY2xpZW50TmFtZTonbWluaXNvJyxzdG9yZU5hbWU6J2xrc3Q5MDUnLGxvY2F0aW9uOidjaGVubmFpJyx0eXBlOidyZS1hdWRpdCcsYWNjdXJhY3k6JzgwJScsdGltZXNwZW50OicxNW1pbnMnLHN0YXR1czonaW5wcm9ncmVzcyd9LFxyXG4gICAge2ZpbGVEYXRlOicwOS0wNi0yNCcsY2xpZW50TmFtZTonbGVuc2thcnQnLHN0b3JlTmFtZTonbGtzdDkwNScsbG9jYXRpb246J2NoZW5uYWknLHR5cGU6J2F1ZGl0JyxhY2N1cmFjeTonODAlJyx0aW1lc3BlbnQ6JzE1bWlucycsc3RhdHVzOidkcmFmdCd9LFxyXG4gICAge2ZpbGVEYXRlOicxMC0wNi0yNCcsY2xpZW50TmFtZTonbGVuc2thcnQnLHN0b3JlTmFtZTonbGtzdDkwNScsbG9jYXRpb246J2NoZW5uYWknLHR5cGU6J2F1ZGl0JyxhY2N1cmFjeTonODAlJyx0aW1lc3BlbnQ6JzE1bWlucycsc3RhdHVzOidjb21wbGV0ZWQnfVxyXG4gIF07XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xyXG4gIHVzZXI6IGFueTtcclxuICB0eXBlOiBzdHJpbmcgfCBudWxsID0gXCJpbmZyYVwiO1xyXG4gIHVuaXF1ZUFycmF5OiBhbnk7XHJcbiAgdG90YWxJdGVtczogYW55ID0wO1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLCBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxyXG4gICAgcHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSxcclxuICAgIHByaXZhdGUgdG9hc3RTZXJ2aWNlOiBUb2FzdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIHNlcnZpY2U6IFRpY2tldHNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBkYXRhc2VydmljZTogRGF0YVNlcnZpY2UsXHJcbiAgICBwdWJsaWMgZ3M6IEdsb2JhbFN0YXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgZXhjZWw6IEV4Y2VsU2VydmljZVxyXG4gICkge1xyXG4gICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtcy5zdWJzY3JpYmUoKHBhcmFtcykgPT4ge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkVGFiID0gcGFyYW1zLnNlbGVjdGVkVGFiO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKFwiZG9jdW1lbnQ6Y2xpY2tcIiwgW1wiJGV2ZW50XCJdKVxyXG4gIG9uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGNvbnN0IHRhcmdldCA9IGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuICAgIGlmICghdGFyZ2V0LmNsb3Nlc3QoXCIuZHJvcGRvd25cIikpIHtcclxuICAgICAgdGhpcy5kcm9wRG93biA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnNlcnZpY2U/LmRhdGFTdWJqZWN0Py5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICB0aGlzLnVzZXJEYXRhID0gJ1dvcmtzcGFjZSdcclxuICAgIH0pXHJcbiAgICB0aGlzLmdzLmRhdGFSYW5nZVZhbHVlLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKGRhdGE6IGFueSkgPT4ge1xyXG4gICAgICBpZiAoZGF0YSAhPSBudWxsKSB7XHJcbiAgICAgICAgdGhpcy51c2VyID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndXNlci1pbmZvJykgfHwgXCJcIilcclxuICAgICAgICB0aGlzLmhlYWRlckZpbHRlciA9IGRhdGE7XHJcbiAgICAgICAgdGhpcy5jbGllbnRJZCA9IHRoaXMuaGVhZGVyRmlsdGVyPy5jbGllbnRzXHJcbiAgICAgICAgdGhpcy5yb3V0ZS5xdWVyeVBhcmFtTWFwLnN1YnNjcmliZShwYXJhbXMgPT4ge1xyXG4gICAgICAgICAgdGhpcy50eXBlID0gKHBhcmFtcy5nZXQoJ3R5cGUnKSkgPyAocGFyYW1zLmdldCgndHlwZScpKSA6IHRoaXMudHlwZTtcclxuICAgICAgICAgIGlmKHRoaXMudHlwZSA9PT0nYXVkaXQnKXt0aGlzLnVzZXJEYXRhID0gJ0hpc3RvcnknfWVsc2V7fVxyXG4gICAgICAgICAgdGhpcy5nZXRkYXRhT2JqZWN0KCk7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdERyb3Bkb3ducygpO1xyXG4gICAgICAgICAgaWYgKHRoaXMudXNlckRhdGEgPT0gJ1dvcmtzcGFjZScpIHtcclxuICAgICAgICAgICAgdGhpcy51c2VyVGlja2V0TGlzdCgnb3BlbicpO1xyXG4gICAgICAgICAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KCdpbnByb2dyZXNzJyk7XHJcbiAgICAgICAgICAgIHRoaXMudXNlclRpY2tldExpc3QoJ2Nsb3NlZCcpO1xyXG4gICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnVzZXJEYXRhID09ICdIaXN0b3J5Jykge1xyXG4gICAgICAgICAgICB0aGlzLndvcmtIaXN0b3J5KCk7XHJcbiAgICAgICAgICAgIHRoaXMuc3RvcmVGaWx0ZXJzKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICB9KTtcclxuXHJcbiAgfVxyXG4gIGdldGRhdGFPYmplY3QoKSB7XHJcbiAgICBpZiAodGhpcy50eXBlID09PSBcImluZnJhXCIgfHwgdGhpcy50eXBlID09PSBcImluc3RhbGxhdGlvblwiKSB7XHJcbiAgICAgIHRoaXMuZGF0YU9iamVjdCA9IFtcclxuICAgICAgICB7IERlc2NyaXB0aW9uOiBcIlN0b3JlIElEXCIsIElzc3VlczogW10gfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBEZXNjcmlwdGlvbjogXCJJc3N1ZSBUeXBlXCIsXHJcbiAgICAgICAgICBJc3N1ZXM6IFsgeyB0ZXh0OiBcIlN0b3JlIE9wZXJhdGlvbiBJc3N1ZXNcIiB9LHsgdGV4dDogXCJDYW1lcmEgSXNzdWVzXCIgfSx7IHRleHQ6IFwiSW50ZXJuZXQgSXNzdWVzXCIgfSwgeyB0ZXh0OiBcIlN5c3RlbSBJc3N1ZXNcIiB9LHsgdGV4dDogXCJBcHBsaWNhdGlvbiBJc3N1ZXNcIiB9LCBdLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgRGVzY3JpcHRpb246IFwiRGF0ZSBUeXBlXCIsdHlwZTogXCJzaW5nbGVcIixcclxuICAgICAgICAgIElzc3VlczogW1xyXG4gICAgICAgICAgICB7IGlkOiBcImlzc3VlSWRlbnRpZmllZERhdGVcIiwgdGV4dDogXCJJc3N1ZSBJZGVudGlmaWVkIERhdGVcIiB9LFxyXG4gICAgICAgICAgICB7IGlkOiBcImNyZWF0ZWREYXRlXCIsIHRleHQ6IFwiQ3JlYXRlZCBEYXRlXCIgfSxcclxuICAgICAgICAgICAgeyBpZDogXCJjbG9zZWREYXRlXCIsIHRleHQ6IFwiQ2xvc2VkIERhdGVcIiB9LFxyXG4gICAgICAgICAgXSxcclxuICAgICAgICB9LFxyXG4gICAgICBdO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT09IFwiZGF0YU1pc21hdGNoXCIpIHtcclxuICAgICAgdGhpcy5kYXRhT2JqZWN0ID0gW1xyXG4gICAgICAgIHsgRGVzY3JpcHRpb246ICdTdG9yZSBJRCcsIElzc3VlczogW10gfSxcclxuICAgICAgICB7IERlc2NyaXB0aW9uOiAnSXNzdWUgVHlwZScsIElzc3VlczogW3tpZDonaGlnaGNvdW50JywgdGV4dDogXCJIaWdoIGNvdW50XCIgfSwge2lkOidsb3djb3VudCcsIHRleHQ6IFwiTG93IGNvdW50XCIgfV0gfSxcclxuICAgICAgICB7IERlc2NyaXB0aW9uOiAnRGF0ZSBUeXBlJywgdHlwZTogJ3NpbmdsZScsIElzc3VlczogW3sgaWQ6IFwiaXNzdWVEYXRlXCIsdGV4dDogXCJJc3N1ZSBEYXRlXCIgfSwgeyBpZDogXCJjcmVhdGVkRGF0ZVwiLHRleHQ6IFwiQ3JlYXRlZCBEYXRlXCIgfSwgeyBpZDogXCJjbG9zZWREYXRlXCIsdGV4dDogXCJDbG9zZWQgRGF0ZVwiIH1dIH1cclxuICAgICAgXTtcclxuICAgIH1cclxuICB9XHJcbiAgcmVtb3ZlRHVwbGljYXRlcygpIHtcclxuICAgIGNvbnN0IGtleSA9ICdpZCc7IC8vIENoYW5nZSB0aGlzIGtleSB0byBhbnkga2V5IHlvdSB3YW50IHRvIHVzZSBmb3IgdW5pcXVlbmVzc1xyXG4gICAgY29uc3QgdW5pcXVlS2V5cyA9IG5ldyBTZXQoKTtcclxuICAgIGxldCBvcmlnaW5hbEFycmF5ID0gdGhpcy5kYXRhT2JqZWN0LmZpbmQoKGRhdGE6YW55KSA9PiBkYXRhLkRlc2NyaXB0aW9uID09PSdTdG9yZSBJRCcpLklzc3Vlc1xyXG4gICAgdGhpcy51bmlxdWVBcnJheSA9IG9yaWdpbmFsQXJyYXkuZmlsdGVyKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICBjb25zdCBpc0R1cGxpY2F0ZSA9IHVuaXF1ZUtleXMuaGFzKGl0ZW1ba2V5XSk7XHJcbiAgICAgIHVuaXF1ZUtleXMuYWRkKGl0ZW1ba2V5XSk7XHJcbiAgICAgIHJldHVybiAhaXNEdXBsaWNhdGU7XHJcbiAgICB9KTtcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG4gIHVzZXJUaWNrZXRMaXN0KHZhbHVlOiBhbnkpIHtcclxuICAgIC8vIHRoaXMuc2VsZWN0ZWRJc3N1ZSA9IHRoaXMuc2VsZWN0ZWRJc3N1ZSA9PT0gJ0hpZ2ggQ291bnQnID8gJ2hpZ2hjb3VudCcgOih0aGlzLnNlbGVjdGVkSXNzdWUgPT09ICdMb3cgQ291bnQnID8gJ2xvd2NvdW50JyA6ICcnKVxyXG4gICAgbGV0IGRhdGEgPSB7XHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmNsaWVudElkLFxyXG4gICAgICB1c2VySWQ6IHRoaXMudXNlcj8uX2lkLFxyXG4gICAgICBzdGF0dXM6IHZhbHVlLFxyXG4gICAgICBpc3N1ZVR5cGU6IHRoaXMudHlwZSxcclxuICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRmlsdGVyPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICAgIHRvRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LmVuZERhdGUsXHJcbiAgICAgIHNlYXJjaFZhbHVlOiB0aGlzLnNlYXJjaFdvcmtzcGFjZSxcclxuICAgICAgZmlsdGVyOiB0aGlzLnNlbGVjdGVkSXNzdWUsXHJcbiAgICB9O1xyXG4gICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgIC51c2VyVGlja2V0TGlzdChkYXRhKVxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCAmJiByZXMuZGF0YS5kYXRhLmxlbmd0aCkge1xyXG4gICAgICAgICAgICBpZiAodmFsdWUgPT0gXCJvcGVuXCIpIHtcclxuICAgICAgICAgICAgICB0aGlzLnN0YXR1c09wZW4gPSByZXMuZGF0YS5kYXRhO1xyXG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZy5vcGVuID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgdGhpcy5ub0RhdGEub3BlbiA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKHZhbHVlID09IFwiaW5wcm9ncmVzc1wiKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5zdGF0dXNJbnByb2dyZXNzID0gcmVzLmRhdGEuZGF0YTtcclxuICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcuaW5wcm9ncmVzcyA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMubm9EYXRhLmlucHJvZ3Jlc3MgPSBmYWxzZTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLnN0YXR1c0Nsb3NlZCA9IHJlcy5kYXRhLmRhdGE7XHJcbiAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nLmNsb3NlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgIHRoaXMubm9EYXRhLmNsb3NlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBpZiAodmFsdWUgPT0gXCJvcGVuXCIpIHtcclxuICAgICAgICAgICAgICB0aGlzLm5vRGF0YS5vcGVuID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcub3BlbiA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKHZhbHVlID09IFwiaW5wcm9ncmVzc1wiKSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5ub0RhdGEuaW5wcm9ncmVzcyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nLmlucHJvZ3Jlc3MgPSBmYWxzZTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICB0aGlzLm5vRGF0YS5jbG9zZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZy5jbG9zZWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMubm9EYXRhLm9wZW4gPSB0cnVlO1xyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nLm9wZW4gPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMubm9EYXRhLmlucHJvZ3Jlc3MgPSB0cnVlO1xyXG4gICAgICAgICAgdGhpcy5sb2FkaW5nLmlucHJvZ3Jlc3MgPSBmYWxzZTtcclxuICAgICAgICAgIHRoaXMubm9EYXRhLmNsb3NlZCA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcuY2xvc2VkID0gZmFsc2U7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wbGV0ZTogKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICB0YWtlVGlja2V0KCkge1xyXG4gICAgbGV0IGRhdGEgPSB7IHVzZXJJZDogdGhpcy51c2VyPy5faWQsIGlzc3VlVHlwZTogdGhpcy50eXBlIH07XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLnVzZXJUYWtlVGlja2V0KGRhdGEpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5nZXRTdWNjZXNzVG9hc3QocmVzLm1lc3NhZ2UpO1xyXG4gICAgICAgICAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KFwib3BlblwiKTtcclxuICAgICAgICAgIH0gZWxzZSBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMSkge1xyXG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5nZXRFcnJvclRvYXN0KHJlcy5lcnJvcik7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5nZXRFcnJvclRvYXN0KFwiTm8gVGlja2V0IEF2YWlsYWJsZVwiKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5nZXRFcnJvclRvYXN0KGVyci5lcnJvcik7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wbGV0ZTogKCkgPT4ge30sXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgU2hvd1RpY2tldChpbmRleDogYW55KSB7XHJcbiAgICB0aGlzLnNlbGVjdENhcmQgPSBpbmRleCA/IGluZGV4IDogMDtcclxuICB9XHJcblxyXG4gIHNlbGVjdFRpY2tldCgpIHtcclxuIFxyXG4gIH1cclxuICBzZWxlY3RWaWV3KGU6IE1vdXNlRXZlbnQsIGluZGV4OiBhbnksIHZhbHVlOiBhbnkpIHtcclxuICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBpZiAodmFsdWUgPT0gXCJvcGVuXCIpIHtcclxuICAgICAgdGhpcy5zdGF0dXNPcGVuW2luZGV4XS5pc09wZW4gPSAhdGhpcy5zdGF0dXNPcGVuW2luZGV4XS5pc09wZW47XHJcbiAgICB9IGVsc2UgaWYgKHZhbHVlID09IFwiaW5wcm9ncmVzc1wiKSB7XHJcbiAgICAgIHRoaXMuc3RhdHVzSW5wcm9ncmVzc1tpbmRleF0uaXNPcGVuID1cclxuICAgICAgICAhdGhpcy5zdGF0dXNJbnByb2dyZXNzW2luZGV4XS5pc09wZW47XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnN0YXR1c0Nsb3NlZFtpbmRleF0uaXNPcGVuID0gIXRoaXMuc3RhdHVzQ2xvc2VkW2luZGV4XS5pc09wZW47XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByb3V0ZXRvVGlja2V0KHZhbHVlOiBhbnkpIHtcclxuICAgIGxldCBpc3N1ZVR5cGUgPVxyXG4gICAgICB2YWx1ZT8uaXNzdWVUeXBlID09PSBcImhpZ2hjb3VudFwiXHJcbiAgICAgICAgPyBcImhpZ2gtY291bnRcIlxyXG4gICAgICAgIDogdmFsdWU/Lmlzc3VlVHlwZSA9PT0gXCJsb3djb3VudFwiXHJcbiAgICAgICAgPyBcImxvdy1jb3VudFwiXHJcbiAgICAgICAgOiBcIlwiO1xyXG4gICAgaWYgKHZhbHVlPy5pc3N1ZVR5cGUgPT0gXCJpbmZyYVwiKSB7XHJcbiAgICAgIC8vIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcclxuICAgICAgLy8gICBgL3RpY2tldHMvdXNlcnMvdGlja2V0aW5mby8ke3ZhbHVlLnRpY2tldElkfS8ke3ZhbHVlLnN0b3JlSWR9YCxcclxuICAgICAgLy8gXSk7XHJcbiAgICAgIGxldCBkYXRhOiBhbnkgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKFwiaGVhZGVyLWZpbHRlcnNcIikgfHwgXCJcIik7XHJcbiAgICAgIGRhdGEuc3RvcmUgPSB2YWx1ZS5zdG9yZUlkO1xyXG4gICAgICBkYXRhLmNsaWVudCA9IHZhbHVlLmNsaWVudElkO1xyXG4gICAgICBkYXRhLmNsaWVudE5hbWUgPSB2YWx1ZT8uY2xpZW50TmFtZSA/IHZhbHVlPy5jbGllbnROYW1lOidTdG9yZXMnOyBcclxuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oXCJoZWFkZXItZmlsdGVyc1wiLCBKU09OLnN0cmluZ2lmeShkYXRhKSk7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtgL21hbmFnZS9zdG9yZXMvaW5mcmEtdGlja2V0YF0sIHtxdWVyeVBhcmFtczogeyBzdG9yZUlkOiB2YWx1ZS5zdG9yZUlkLHR5cGU6XCJpbmZyYVwiIH19KTtcclxuICAgXHJcbiAgICB9IGVsc2UgaWYgKHZhbHVlPy5pc3N1ZVR5cGUgPT0gXCJpbnN0YWxsYXRpb25cIikge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXHJcbiAgICAgICAgYC90aWNrZXRzL3VzZXJzL2luc3RhbGxhdGlvbmluZm8vJHt2YWx1ZS50aWNrZXRJZH0vJHt2YWx1ZS5zdG9yZUlkfWAsXHJcbiAgICAgIF0pO1xyXG4gICAgfSAgZWxzZSBpZih2YWx1ZT8uaXNzdWVUeXBlID09ICdtYXQnKSB7XHJcbiAgICAgIGlmKHZhbHVlLm1hdFN0YXR1cyA9PSdEcmFmdCcpe1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwgKGAvdGlja2V0cy9lbXBsb3llZXRyYWluaW5nLyR7dmFsdWUudGlja2V0SWR9LyR7dmFsdWUuc3RvcmVJZH0/ZnVuY3Rpb25UeXBlPXN0b3JlTWF0dXBkYXRlYCk7XHJcbiAgICAgIH1cclxuICAgICAgLy8gZWxzZSBpZih2YWx1ZS5tYXRTdGF0dXMgPT0nY2xvc2VkJyl7XHJcbiAgICAgIC8vICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCAoYC90aWNrZXRzL2VtcGxveWVldHJhaW5pbmcvJHt2YWx1ZS50aWNrZXRJZH0vJHt2YWx1ZS5zdG9yZUlkfT9mdW5jdGlvblR5cGU9b3V0cHV0YCk7XHJcbiAgICAgIC8vIH1cclxuICAgICAgZWxzZXtcclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsIChgL3RpY2tldHMvZW1wbG95ZWV0cmFpbmluZy8ke3ZhbHVlLnRpY2tldElkfS8ke3ZhbHVlLnN0b3JlSWR9YCk7XHJcbiAgICAgIH1cclxuICAgIH1lbHNlIGlmIChcclxuICAgICAgdmFsdWU/Lmlzc3VlVHlwZSA9PSBcImhpZ2hjb3VudFwiIHx8XHJcbiAgICAgIHZhbHVlPy5pc3N1ZVR5cGUgPT0gXCJsb3djb3VudFwiXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5zdGF0dXNVcGRhdGUodmFsdWUudGlja2V0SWQsIHZhbHVlPy5pc3N1ZVR5cGUsIHZhbHVlPy5zdGF0dXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdHVzVXBkYXRlKHZhbHVlOiBhbnksIGlzc3VlVHlwZTogYW55LCBzdGF0dXM6IGFueSkge1xyXG4gICAgLy8gY29uc29sZS5sb2coYC90aWNrZXRzL2RhdGEtbWlzbWF0Y2gvJHt0eXBlfT90aWNrZXRJZD0ke3ZhbHVlfWAsXCJ0cmVxcnFcIilcclxuICAgIGxldCB0eXBlID1cclxuICAgICAgaXNzdWVUeXBlID09PSBcImhpZ2hjb3VudFwiXHJcbiAgICAgICAgPyBcImhpZ2gtY291bnRcIlxyXG4gICAgICAgIDogaXNzdWVUeXBlID09PSBcImxvd2NvdW50XCJcclxuICAgICAgICA/IFwibG93LWNvdW50XCJcclxuICAgICAgICA6IFwiXCI7XHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgdGlja2V0SWQ6IHZhbHVlLFxyXG4gICAgICBzdGF0dXM6IFwiaW5wcm9ncmVzc1wiLFxyXG4gICAgfTtcclxuICAgIGlmIChzdGF0dXMgPT09IFwib3BlblwiKSB7XHJcbiAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgIC5zdGF0dXNVcGRhdGUoZGF0YSlcclxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKFxyXG4gICAgICAgICAgICAgICAgYC90aWNrZXRzL2RhdGEtbWlzbWF0Y2gvJHt0eXBlfT90aWNrZXRJZD0ke3ZhbHVlfWBcclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmKHN0YXR1cyAhPT0gXCJjbG9zZWRcIikge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKFxyXG4gICAgICAgIGAvdGlja2V0cy9kYXRhLW1pc21hdGNoLyR7dHlwZX0/dGlja2V0SWQ9JHt2YWx1ZX1gXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGV4cG9ydERhdGEoKSB7XHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgdXNlcklkOiB0aGlzLnVzZXI/Ll9pZCxcclxuICAgICAgZXhwb3J0OiB0cnVlLFxyXG4gICAgICBpc3N1ZVR5cGU6IHRoaXMudHlwZSxcclxuICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRmlsdGVyPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICAgIHRvRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LmVuZERhdGUsXHJcbiAgICAgIHNlYXJjaFZhbHVlOiB0aGlzLnNlYXJjaFdvcmtzcGFjZSxcclxuICAgICAgZmlsdGVyOiB0aGlzLnNlbGVjdGVkSXNzdWUsXHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckZpbHRlci5jbGllbnRzLFxyXG4gICAgfTtcclxuICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAuZXhwb3J0dXNlclRpY2tldExpc3QoZGF0YSlcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuZXhjZWwuc2F2ZUFzRXhjZWxGaWxlKHJlcywgXCJVc2VyIFRpY2tldCBMaXN0XCIpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICB3b3JrSGlzdG9yeSgpIHtcclxuICAgIGxldCBkYXRhID0ge1xyXG4gICAgICB1c2VySWQ6IHRoaXMudXNlcj8uX2lkLFxyXG4gICAgICBvZmZzZXQ6IHRoaXMub2Zmc2V0LFxyXG4gICAgICBsaW1pdDogdGhpcy5saW1pdCxcclxuICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRmlsdGVyPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICAgIHRvRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LmVuZERhdGUsXHJcbiAgICAgIHNlYXJjaFZhbHVlOiB0aGlzLnNlYXJjaEhpc3RvcnksXHJcbiAgICAgIHNvcnRDb2x1bU5hbWU6IHRoaXMuc29ydENvbHVtTmFtZSxcclxuICAgICAgc29ydEJ5OiB0aGlzLnNvcnRCeSxcclxuICAgICAgaXNzdWVUeXBlOiB0aGlzLnR5cGUsXHJcbiAgICAgIGRhdGVGaWx0ZXI6IHRoaXMuZGF0ZUZpbHRlcixcclxuICAgICAgc3RvcmVGaWx0ZXI6IHRoaXMuc3RvcmVGaWx0ZXIsXHJcbiAgICAgIGlzc3VlRmlsdGVyOiB0aGlzLmlzc3VlRmlsdGVyLFxyXG4gICAgICBjbGllbnRJZDogdGhpcy5jbGllbnRJZCxcclxuICAgIH07XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLndvcmtIaXN0b3J5KGRhdGEpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcz8uY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgdGhpcy53b3JrSGlzdG9yeVRhYmxlID0gcmVzPy5kYXRhPy5yZXN1bHQ7XHJcbiAgICAgICAgICAgIHRoaXMudG90YWxJdGVtcyA9cmVzPy5kYXRhPy5jb3VudDtcclxuICAgICAgICAgICAgdGhpcy5oaXN0b3J5TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLmhpc3RvcnlOb2RhdGEgPSBmYWxzZTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuaGlzdG9yeU5vZGF0YSA9IHRydWU7XHJcbiAgICAgICAgICAgIHRoaXMuaGlzdG9yeUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICAgIHRoaXMuaGlzdG9yeU5vZGF0YSA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmhpc3RvcnlMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wbGV0ZSgpIHt9LFxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHNlbGVjdEl0ZW0odmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHZhbHVlID09IFwiQWxsXCIpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZElzc3VlID0gXCJcIjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRJc3N1ZSA9IHZhbHVlO1xyXG4gICAgfVxyXG4gICAgaWYodGhpcy50eXBlID09PSAnaW5mcmEnIHx8IHRoaXMudHlwZSA9PT0gJ2luc3RhbGxhdGlvbicpe1xyXG4gICAgICB0aGlzLnNlbGVjdGVkSXNzdWUgPSB0aGlzLnNlbGVjdGVkSXNzdWU7XHJcbiAgICB9ZWxzZSBpZih0aGlzLnR5cGUgPT09ICdkYXRhTWlzbWF0Y2gnKXtcclxuICAgICAgLy8gY29uc29sZS5sb2coJ3RoaXMuc2VsZWN0ZWRJc3N1ZScsdGhpcy5zZWxlY3RlZElzc3VlKVxyXG4gICAgICB0aGlzLnNlbGVjdGVkSXNzdWUgPSAodGhpcy5zZWxlY3RlZElzc3VlID09PSAnTG93IENvdW50JyA/ICdsb3djb3VudCcgOih0aGlzLnNlbGVjdGVkSXNzdWUgPT09ICdIaWdoIENvdW50JyA/ICdoaWdoY291bnQnIDogJycpKVxyXG4gICAgICAvLyBjb25zb2xlLmxvZygndGhpcy5zZWxlY3RlZElzc3VlMScsdGhpcy5zZWxlY3RlZElzc3VlKVxyXG4gICAgfVxyXG4gICAgdGhpcy5kcm9wRG93biA9IGZhbHNlO1xyXG4gICAgdGhpcy51c2VyVGlja2V0TGlzdChcIm9wZW5cIik7XHJcbiAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KFwiaW5wcm9ncmVzc1wiKTtcclxuICAgIHRoaXMudXNlclRpY2tldExpc3QoXCJjbG9zZWRcIik7XHJcbiAgfVxyXG4gIHNlbGVjdERyb3Bkb3ducygpe1xyXG4gICAgaWYodGhpcy50eXBlID09PSAnaW5mcmEnIHx8IHRoaXMudHlwZSA9PT0gJ2luc3RhbGxhdGlvbicpe1xyXG4gICAgICB0aGlzLmRyb3Bkb3duSXRlbXMgPSBbJ0FsbCcsICdJbnRlcm5ldCBJc3N1ZXMnLCAnQ2FtZXJhIElzc3VlcycsICdTeXN0ZW0gSXNzdWVzJywgJ0FwcGxpY2F0aW9uIElzc3VlcycsICdTdG9yZSBPcGVyYXRpb24gSXNzdWVzJywgJ05vdCBJZGVudGlmaWVkJ11cclxuICAgIH1lbHNlIGlmKHRoaXMudHlwZSA9PT0gJ2RhdGFNaXNtYXRjaCcpe1xyXG4gICAgICB0aGlzLmRyb3Bkb3duSXRlbXMgPSBbJ0FsbCcsICdMb3cgQ291bnQnLCAnSGlnaCBDb3VudCddXHJcbiAgICB9XHJcbiAgfVxyXG4gIG9wZW5Ecm9wZG93bihldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLmRyb3BEb3duID0gIXRoaXMuZHJvcERvd247XHJcbiAgfVxyXG5cclxuICB1c2VyVmFsdWUoZGF0YTogYW55KSB7XHJcbiAgICB0aGlzLnVzZXJEYXRhID0gZGF0YTtcclxuICAgIGlmICh0aGlzLnVzZXJEYXRhID09IFwiSGlzdG9yeVwiKSB7XHJcbiAgICAgIHRoaXMud29ya0hpc3RvcnkoKTtcclxuICAgICAgdGhpcy5zdG9yZUZpbHRlcnMoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzZWFyY2hUaWNrZXRzKCkge1xyXG4gICAgdGhpcy51c2VyVGlja2V0TGlzdChcIm9wZW5cIik7XHJcbiAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KFwiaW5wcm9ncmVzc1wiKTtcclxuICAgIHRoaXMudXNlclRpY2tldExpc3QoXCJjbG9zZWRcIik7XHJcbiAgfVxyXG5cclxuICBzZWFyY2hIaXN0b3J5VGFibGUoKSB7XHJcbiAgICB0aGlzLndvcmtIaXN0b3J5KCk7XHJcbiAgfVxyXG5cclxuICByZWNlaXZlRGF0YShkYXRhOiBhbnlbXSkge1xyXG4gICAgdGhpcy5zdG9yZUZpbHRlciA9IGRhdGFcclxuICAgICAgLmZpbmQoKG9iaikgPT4gb2JqLkRlc2NyaXB0aW9uID09PSBcIlN0b3JlIElEXCIpXHJcbiAgICAgID8uSXNzdWVzLm1hcCgoaXRlbTogYW55KSA9PiBpdGVtPy50ZXh0KTtcclxuICAgIHRoaXMuZGF0ZUZpbHRlciA9IGRhdGEuZmluZChcclxuICAgICAgKG9iaikgPT4gb2JqLkRlc2NyaXB0aW9uID09PSBcIkRhdGUgVHlwZVwiXHJcbiAgICApPy5Jc3N1ZXM/LmlkO1xyXG4gICAgaWYgKHRoaXMudHlwZSA9PT0gXCJpbmZyYVwiIHx8IHRoaXMudHlwZSA9PT0gXCJpbnN0YWxsYXRpb25cIikge1xyXG4gICAgICBjb25zb2xlLmxvZyhcImluZnJhXCIpO1xyXG4gICAgICB0aGlzLmlzc3VlRmlsdGVyID0gZGF0YVxyXG4gICAgICAgIC5maW5kKChvYmopID0+IG9iai5EZXNjcmlwdGlvbiA9PT0gXCJJc3N1ZSBUeXBlXCIpXHJcbiAgICAgICAgPy5Jc3N1ZXMubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0/LnRleHQpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLnR5cGUgPT09IFwiZGF0YU1pc21hdGNoXCIpIHtcclxuICAgICAgY29uc29sZS5sb2coXCJkYXRhTWlzbWF0Y2hcIik7XHJcbiAgICAgIHRoaXMuaXNzdWVGaWx0ZXIgPSBkYXRhXHJcbiAgICAgICAgLmZpbmQoKG9iaikgPT4gb2JqLkRlc2NyaXB0aW9uID09PSBcIklzc3VlIFR5cGVcIilcclxuICAgICAgICA/Lklzc3Vlcy5tYXAoKGl0ZW06IGFueSkgPT4gaXRlbT8uaWQpO1xyXG4gICAgfVxyXG4gICAgdGhpcy53b3JrSGlzdG9yeSgpO1xyXG4gIH1cclxuXHJcbiAgRXhwb3J0SGlzdG9yeWFzWGxzeCgpIHtcclxuICAgIGxldCBleHBvcnREYXRhID0ge1xyXG4gICAgICB1c2VySWQ6IHRoaXMudXNlcj8uX2lkLFxyXG4gICAgICBpc3N1ZVR5cGU6IHRoaXMudHlwZSxcclxuICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcclxuICAgICAgbGltaXQ6IDEwMDAsXHJcbiAgICAgIGZyb21EYXRlOiB0aGlzLmhlYWRlckZpbHRlcj8uZGF0ZT8uc3RhcnREYXRlLFxyXG4gICAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRmlsdGVyPy5kYXRlPy5lbmREYXRlLFxyXG4gICAgICBzZWFyY2hWYWx1ZTogdGhpcy5zZWFyY2hIaXN0b3J5LFxyXG4gICAgICBzb3J0Q29sdW1OYW1lOiB0aGlzLnNvcnRDb2x1bU5hbWUsXHJcbiAgICAgIHNvcnRCeTogdGhpcy5zb3J0QnksXHJcbiAgICAgIGV4cG9ydDogXCJ0cnVlXCIsXHJcbiAgICAgIGRhdGVGaWx0ZXI6IHRoaXMuZGF0ZUZpbHRlcixcclxuICAgICAgc3RvcmVGaWx0ZXI6IHRoaXMuc3RvcmVGaWx0ZXIsXHJcbiAgICAgIGlzc3VlRmlsdGVyOiB0aGlzLmlzc3VlRmlsdGVyLFxyXG4gICAgICBjbGllbnRJZDogdGhpcy5oZWFkZXJGaWx0ZXIuY2xpZW50cyxcclxuICAgIH07XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLndvcmtIaXN0b3J5RXhwb3J0KGV4cG9ydERhdGEpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2Uuc2F2ZUFzRXhjZWxGaWxlKHJlcywgXCJIaXN0b3J5XCIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgICAgdGhpcy5oaXN0b3J5Tm9kYXRhID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuaGlzdG9yeUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlKCkge30sXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc29ydERhdGEodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5zb3J0Q29sdW1OYW1lID0gdmFsdWU7XHJcbiAgICB0aGlzLnNvcnRCeSAqPSAtMTtcclxuICAgIHRoaXMud29ya0hpc3RvcnkoKTtcclxuICB9XHJcblxyXG4gIG9uUGFnZUNoYW5nZShwYWdlT2Zmc2V0OiBudW1iZXIpIHtcclxuICAgIHRoaXMub2Zmc2V0ID0gcGFnZU9mZnNldDtcclxuICAgIHRoaXMud29ya0hpc3RvcnkoKTtcclxuICB9XHJcblxyXG4gIG9uUGFnZVNpemVDaGFuZ2UocGFnZVNpemU6IG51bWJlcikge1xyXG4gICAgdGhpcy5saW1pdCA9IHBhZ2VTaXplO1xyXG4gICAgdGhpcy5vZmZzZXQgPSAxO1xyXG4gICAgdGhpcy53b3JrSGlzdG9yeSgpO1xyXG4gIH1cclxuXHJcbiAgc3RvcmVGaWx0ZXJzKCkge1xyXG4gICAgbGV0IGRhdGEgPSB7XHJcbiAgICAgIHVzZXJJZDogdGhpcy51c2VyPy5faWQsXHJcbiAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXHJcbiAgICAgIGxpbWl0OiAxMDAwMCxcclxuICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRmlsdGVyPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICAgIHRvRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LmVuZERhdGUsXHJcbiAgICAgIGlzc3VlVHlwZTogdGhpcy50eXBlLFxyXG4gICAgICBjbGllbnRJZDogdGhpcy5oZWFkZXJGaWx0ZXIuY2xpZW50c1xyXG4gICAgfVxyXG4gICAgdGhpcy5maWx0ZXJTdG9yZXMgPSBbXTtcclxuICAgIHRoaXMuc2VydmljZS53b3JrSGlzdG9yeShkYXRhKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKHtcclxuICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgaWYgKHJlcyAmJiByZXM/LmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICB0aGlzLmZpbHRlclN0b3JlcyA9IHJlcy5kYXRhLnJlc3VsdDtcclxuICAgICAgICAgIGNvbnN0IGlzc3VlcyA9IHRoaXMuZmlsdGVyU3RvcmVzLm1hcCgob2JqOiBhbnkpID0+ICh7IHRleHQ6IG9iai5zdG9yZUlkIH0pKTtcclxuICAgICAgICAgIGNvbnN0IHVuaXF1ZUlzc3VlczphbnlbXSA9IFtdO1xyXG4gICAgICAgICAgY29uc3Qgc3RvcmVJZHMgPSBuZXcgU2V0KCk7XHJcbiAgICAgICAgICBpc3N1ZXMuZm9yRWFjaCgoaXNzdWU6YW55KSA9PiB7XHJcbiAgICAgICAgICAgIGlmICghc3RvcmVJZHMuaGFzKGlzc3VlLnRleHQpKSB7XHJcbiAgICAgICAgICAgICAgc3RvcmVJZHMuYWRkKGlzc3VlLnRleHQpO1xyXG4gICAgICAgICAgICAgIHVuaXF1ZUlzc3Vlcy5wdXNoKGlzc3VlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgICBjb25zdCBmaWx0cmVkT2JqZWN0ID0gKHRoaXMuZGF0YU9iamVjdC5maW5kKChvYmo6IGFueSkgPT4gb2JqLkRlc2NyaXB0aW9uID09PSBcIlN0b3JlIElEXCIpKVxyXG4gICAgICAgICAgZmlsdHJlZE9iamVjdC5Jc3N1ZXMgPSB1bmlxdWVJc3N1ZXM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9LFxyXG4gICAgfSlcclxuICB9XHJcbiAgdmlld1VzZXIoKXtcclxuXHJcbiAgfVxyXG5cclxuICBkYXRhT2JqZWN0MTogYW55ID0gW1xyXG4gICAgeyBEZXNjcmlwdGlvbjogJ1N0YXR1cycsIElzc3VlczogW3sgdGV4dDogXCJTdG9yZSBPcGVyYXRpb24gSXNzdWVzXCIsIGlkOiAnU3RvcmUgT3BlcmF0aW9uIElzc3VlcycgfSwgeyB0ZXh0OiBcIkludGVybmV0IElzc3Vlc1wiLCBpZDogJ0ludGVybmV0IElzc3VlcycgfSwgXHJcbiAgICAgIHsgdGV4dDogXCJDYW1lcmEgSXNzdWVzXCIsIGlkOiBcIkNhbWVyYSBJc3N1ZXNcIiB9LHsgdGV4dDogXCJTeXN0ZW0gSXNzdWVzXCIsIGlkOiBcIlN5c3RlbSBJc3N1ZXNcIiB9LHsgdGV4dDogXCJBcHBsaWNhdGlvbiBJc3N1ZXNcIiwgaWQ6IFwiQXBwbGljYXRpb24gSXNzdWVzXCIgfSx7dGV4dDogXCJOb3QgSWRlbnRpZmllZFwiLCBpZDogXCJOb3QgSWRlbnRpZmllZFwifV0gfSxcclxuICBdXHJcbiAgYXBwbHlGaWx0ZXJzKGV2ZW50OmFueSl7XHJcbiAgICBpZiAoZXZlbnQ/Lmxlbmd0aCkge1xyXG4gICAgICBldmVudC5mb3JFYWNoKChlbGVtZW50OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoZWxlbWVudC5EZXNjcmlwdGlvbiA9PT0gXCJTdGF0dXNcIikge1xyXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZElzc3VlID0gZWxlbWVudC5Jc3N1ZXMubWFwKCh2YWw6IGFueSkgPT4gdmFsPy5pZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgICB9XHJcbiAgICAgIGlmKHRoaXMuc2VsZWN0ZWRJc3N1ZS5sZW5ndGggPT09IDYpXHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZElzc3VlID1bXTtcclxuICAgICAgdGhpcy51c2VyVGlja2V0TGlzdCgnb3BlbicpO1xyXG4gICAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KCdpbnByb2dyZXNzJyk7XHJcbiAgICAgIHRoaXMudXNlclRpY2tldExpc3QoJ2Nsb3NlZCcpO1xyXG4gICAgfVxyXG5cclxufVxyXG4iLCJcclxuPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC0zXCI+XHJcbiAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInR5cGUgIT09ICdtYXQnICYmIHR5cGUgIT09ICdkYXRhTWlzbWF0Y2gnXCIgY2xhc3M9XCJjYXJkLWxhYmVsIG1iLTJcIj57e3R5cGUgfCB0aXRsZWNhc2V9fSBUaWNrZXRzPC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInR5cGUgPT09ICdkYXRhTWlzbWF0Y2gnXCIgY2xhc3M9XCJjYXJkLWxhYmVsIG1iLTJcIj5EYXRhIE1pc21hdGNoIFRpY2tldHM8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidHlwZSA9PT0gJ21hdCdcIiBjbGFzcz1cImNhcmQtbGFiZWwgbWItMlwiPkVtcGxveWVlIE1hdDwvc3Bhbj5cclxuICAgICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cInRleHQtc3ViIG1iLTJcIj5MYXN0IHVwZGF0ZWQgMSBob3VyIGFnbzwvc3Bhbj4gLS0+XHJcbiAgICAgICAgPC9oMz5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwidXNlckRhdGEgPT09J1dvcmtzcGFjZSdcIiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBwb3NpdGlvbi1yZWxhdGl2ZSBteS0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdmctaWNvbiBzdmctaWNvbi0xIHBvc2l0aW9uLWFic29sdXRlIG1zLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCBvcGFjaXR5PVwiMC41XCIgeD1cIjE3LjAzNjVcIiB5PVwiMTUuMTIyM1wiIHdpZHRoPVwiOC4xNTU0NlwiIGhlaWdodD1cIjJcIiByeD1cIjFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInJvdGF0ZSg0NSAxNy4wMzY1IDE1LjEyMjMpXCIgZmlsbD1cImN1cnJlbnRDb2xvclwiPjwvcmVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMSAxOUM2LjU1NTU2IDE5IDMgMTUuNDQ0NCAzIDExQzMgNi41NTU1NiA2LjU1NTU2IDMgMTEgM0MxNS40NDQ0IDMgMTkgNi41NTU1NiAxOSAxMUMxOSAxNS40NDQ0IDE1LjQ0NDQgMTkgMTEgMTlaTTExIDVDNy41MzMzMyA1IDUgNy41MzMzMyA1IDExQzUgMTQuNDY2NyA3LjUzMzMzIDE3IDExIDE3QzE0LjQ2NjcgMTcgMTcgMTQuNDY2NyAxNyAxMUMxNyA3LjUzMzMzIDE0LjQ2NjcgNSAxMSA1WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiPjwvcGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sIHBzLTE0IG1lLTJcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiU2VhcmNoXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCIgWyhuZ01vZGVsKV09XCJzZWFyY2hXb3Jrc3BhY2VcIiAoY2hhbmdlKT1cInNlYXJjaFRpY2tldHMoKVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIDxsaWItZmlsdGVycyAqbmdJZj1cInR5cGUgIT09ICdtYXQnICYmIHR5cGUgIT09J2RhdGFNaXNtYXRjaCdcIiBbZGF0YU9iamVjdF09XCJkYXRhT2JqZWN0MVwiIChhcHBsaWVkRmlsdGVycyk9XCJhcHBseUZpbHRlcnMoJGV2ZW50KVwiPjwvbGliLWZpbHRlcnM+XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgKm5nSWY9XCJ0eXBlICE9PSAnbWF0J1wiIGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9wZW5Ecm9wZG93bigkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgbXgtMiBidG4tb3V0bGluZSBidG4tb3V0bGluZS1kZWZhdWx0IHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsXCI+PHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk01IDEwSDE1TTIuNSA1SDE3LjVNNy41IDE1SDEyLjVcIiBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiPkZpbHRlcjwvc3Bhbj4gPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJkcm9wRG93blwiIGNsYXNzPVwiY2FyZCBweS0xIHctMjAwcHggcG9zaXRpb24tYWJzb2x1dGUgdG9wLTUwcHggZW5kLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZHJvcGRvd25JdGVtc1wiIGNsYXNzPVwibGlzdC11bnN0eWxlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCJ0aGlzLnNlbGVjdGVkSXNzdWUgPT09IGl0ZW0gPyAnYWN0aXZlJyA6ICcnXCIgY2xhc3M9XCJjYW1lcmEgcHgtNSBpdGVtcyBmdy1zZW1pYm9sZCBjdXJzb3ItcG9pbnRlciBweS0yXCIgKGNsaWNrKT1cInNlbGVjdEl0ZW0oaXRlbSlcIj57e2l0ZW19fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/Lm1hbmFnZV90aWNrZXRzX2lzRG93bmxvYWQgJiYgKCFub0RhdGEub3BlbiB8fCAhbm9EYXRhLmlucHJvZ3Jlc3MgfHwgIW5vRGF0YS5jbG9zZWQpXCIgKGNsaWNrKT1cImV4cG9ydERhdGEoKVwiIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lIHAtMyB0ZXh0LW5vd3JhcCBib3JkZXIgYm9yZGVyLWdyYXkgbXMtMiBtZS0yXCIgdHlwZT1cImJ1dHRvblwiPjxzcGFuPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTE3LjUgMTIuNVYxNS44MzMzQzE3LjUgMTYuMjc1NCAxNy4zMjQ0IDE2LjY5OTMgMTcuMDExOCAxNy4wMTE4QzE2LjY5OTMgMTcuMzI0NCAxNi4yNzU0IDE3LjUgMTUuODMzMyAxNy41SDQuMTY2NjdDMy43MjQ2NCAxNy41IDMuMzAwNzIgMTcuMzI0NCAyLjk4ODE2IDE3LjAxMThDMi42NzU1OSAxNi42OTkzIDIuNSAxNi4yNzU0IDIuNSAxNS44MzMzVjEyLjVNMTQuMTY2NyA2LjY2NjY3TDEwIDIuNU0xMCAyLjVMNS44MzMzMyA2LjY2NjY3TTEwIDIuNVYxMi41XCIgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj4gRXhwb3J0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy5tYW5hZ2VfdGlja2V0c19pc0VkaXRcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInRha2VUaWNrZXQoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG14LTIgcm91bmRlZC0zIHRleHQtbm93cmFwXCI+PHNwYW4gY2xhc3M9XCJtcy0yIHRleHQtd2hpdGVcIj5UYWtlIFRpY2tldDwvc3Bhbj4gPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cInVzZXJEYXRhID09PSdIaXN0b3J5J1wiIGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHBvc2l0aW9uLXJlbGF0aXZlIG15LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN2Zy1pY29uIHN2Zy1pY29uLTEgcG9zaXRpb24tYWJzb2x1dGUgbXMtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IG9wYWNpdHk9XCIwLjVcIiB4PVwiMTcuMDM2NVwiIHk9XCIxNS4xMjIzXCIgd2lkdGg9XCI4LjE1NTQ2XCIgaGVpZ2h0PVwiMlwiIHJ4PVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwicm90YXRlKDQ1IDE3LjAzNjUgMTUuMTIyMylcIiBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9yZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTExIDE5QzYuNTU1NTYgMTkgMyAxNS40NDQ0IDMgMTFDMyA2LjU1NTU2IDYuNTU1NTYgMyAxMSAzQzE1LjQ0NDQgMyAxOSA2LjU1NTU2IDE5IDExQzE5IDE1LjQ0NDQgMTUuNDQ0NCAxOSAxMSAxOVpNMTEgNUM3LjUzMzMzIDUgNSA3LjUzMzMzIDUgMTFDNSAxNC40NjY3IDcuNTMzMzMgMTcgMTEgMTdDMTQuNDY2NyAxNyAxNyAxNC40NjY3IDE3IDExQzE3IDcuNTMzMzMgMTQuNDY2NyA1IDExIDVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgcHMtMTQgbWUtMlwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2hcIiBhdXRvY29tcGxldGU9XCJvZmZcIiBbKG5nTW9kZWwpXT1cInNlYXJjaEhpc3RvcnlcIiAoY2hhbmdlKT1cInNlYXJjaEhpc3RvcnlUYWJsZSgpXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDxsaWItZmlsdGVycyAqbmdJZj1cInR5cGUgIT09ICdtYXQnICYmIHR5cGUhPT0nYXVkaXQnICYmIGZpbHRlclN0b3Jlcz8ubGVuZ3RoID4gMFwiIFtkYXRhT2JqZWN0XT1cImRhdGFPYmplY3RcIiAoYXBwbGllZEZpbHRlcnMpPVwicmVjZWl2ZURhdGEoJGV2ZW50KVwiID48L2xpYi1maWx0ZXJzPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/Lm1hbmFnZV90aWNrZXRzX2lzRG93bmxvYWQgJiYgIWhpc3RvcnlOb2RhdGFcIiAoY2xpY2spPVwiRXhwb3J0SGlzdG9yeWFzWGxzeCgpXCIgY2xhc3M9XCJidG4gYnRuLW91dGxpbmUgcC0zIGJvcmRlciBib3JkZXItZ3JheSBtcy0yIG1lLTIgdGV4dC1ub3dyYXBcIiB0eXBlPVwiYnV0dG9uXCI+PHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xNy41IDEyLjVWMTUuODMzM0MxNy41IDE2LjI3NTQgMTcuMzI0NCAxNi42OTkzIDE3LjAxMTggMTcuMDExOEMxNi42OTkzIDE3LjMyNDQgMTYuMjc1NCAxNy41IDE1LjgzMzMgMTcuNUg0LjE2NjY3QzMuNzI0NjQgMTcuNSAzLjMwMDcyIDE3LjMyNDQgMi45ODgxNiAxNy4wMTE4QzIuNjc1NTkgMTYuNjk5MyAyLjUgMTYuMjc1NCAyLjUgMTUuODMzM1YxMi41TTE0LjE2NjcgNi42NjY2N0wxMCAyLjVNMTAgMi41TDUuODMzMzMgNi42NjY2N00xMCAyLjVWMTIuNVwiIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPiBFeHBvcnRcclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBweS0yXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBvdmVyZmxvdy1hdXRvIGgtNTVweFwiPlxyXG4gICAgICAgICAgICA8dWwgY2xhc3M9XCJuYXYgbmF2LXN0cmV0Y2ggbmF2LWxpbmUtdGFicyBuYXYtbGluZS10YWJzLTJ4IGJvcmRlci10cmFuc3BhcmVudCBmcy01IGZ3LWJvbGRlciBmbGV4LW5vd3JhcFwiPlxyXG4gICAgICAgICAgICAgICAgPGxpICpuZ0lmPVwidHlwZSAhPT0gJ2F1ZGl0J1wiIChjbGljayk9XCJ1c2VyVmFsdWUoJ1dvcmtzcGFjZScpXCIgIGNsYXNzPVwibmF2LWl0ZW0gY3Vyc29yLXBvaW50ZXJcIj48YSBbbmdDbGFzc109XCJ1c2VyRGF0YSA9PT0nV29ya3NwYWNlJyA/ICdhY3RpdmUnIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibmF2LWxpbmsgdGV4dC1hY3RpdmUtcHJpbWFyeSBtZS02XCI+V29ya3NwYWNlPC9hPlxyXG4gICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgIDwhLS0gKm5nSWY9XCJ0eXBlIT09J2RhdGFNaXNtYXRjaCdcIiAtLT5cclxuICAgICAgICAgICAgICAgIDxsaSAoY2xpY2spPVwidXNlclZhbHVlKCdIaXN0b3J5JylcIiBjbGFzcz1cIm5hdi1pdGVtIGN1cnNvci1wb2ludGVyXCI+PGEgW25nQ2xhc3NdPVwidXNlckRhdGEgPT09J0hpc3RvcnknID8gJ2FjdGl2ZScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuYXYtbGluayB0ZXh0LWFjdGl2ZS1wcmltYXJ5IG1lLTZcIj5IaXN0b3J5PC9hPjwvbGk+XHJcbiAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwidXNlckRhdGEgPT09J1dvcmtzcGFjZSdcIiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS00XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgaC0xMDAgcm91bmRlZC0yIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWRnZS1saWdodC1kZWZhdWx0IHB4LTMgcHktNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPk9wZW48L3NwYW4+PHNwYW4gKm5nSWY9XCJzdGF0dXNPcGVuPy5sZW5ndGggPiAwICYmICFsb2FkaW5nLm9wZW4gJiYgIW5vRGF0YS5vcGVuXCIgY2xhc3M9XCJyb3VuZGVkLTUgbXMtMyBweC0xIGJvcmRlciBib3JkZXItZ3JheSBiZy1iYWRnZVwiPnt7c3RhdHVzT3Blbj8ubGVuZ3RofX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd2JvZHkgaC0xMDAgcHgtNCBweS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbG9hZGluZy5vcGVuICYmICFub0RhdGEub3BlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgb3BlbiBvZiBzdGF0dXNPcGVuOyBsZXQgaW5kZXggPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJvcGVuLmlzT3BlbiA/ICdhY3RpdmUnOicnXCIgIGNsYXNzPVwiaXNzdWVjYXJkIGN1cnNvci1wb2ludGVyIHctMTAwIG1iLTVcIiAoY2xpY2spPVwicm91dGV0b1RpY2tldChvcGVuKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib3Blbi5pc09wZW5cIiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmdy1zZW1pYm9sZFwiPnt7b3Blbj8uc3RvcmVJZCA/IG9wZW4/LnN0b3JlSWQgOictLSd9fTwvbGFiZWw+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZ3LXNlbWlib2xkIG0tMlwiPnt7b3Blbj8uc3RvcmVOYW1lID8gb3Blbj8uc3RvcmVOYW1lIDonLS0nfX08L2xhYmVsPjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1kZWZhdWx0IG1lLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJtZS0yXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzczMl82MDI3NylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTggMVYzTTQgMVYzTTEuNSA1SDEwLjVNMi41IDJIOS41QzEwLjA1MjMgMiAxMC41IDIuNDQ3NzIgMTAuNSAzVjEwQzEwLjUgMTAuNTUyMyAxMC4wNTIzIDExIDkuNSAxMUgyLjVDMS45NDc3MiAxMSAxLjUgMTAuNTUyMyAxLjUgMTBWM0MxLjUgMi40NDc3MiAxLjk0NzcyIDIgMi41IDJaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzczMl82MDI3N1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz57e29wZW4/LkRhdGUgPyBvcGVuPy5EYXRlIDogJy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIm9wZW4/LmluZnJhSXNzdWVcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXdhcm5pbmdcIj57e29wZW4/LmluZnJhSXNzdWUgPyBvcGVuPy5pbmZyYUlzc3VlIDonLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidHlwZSA9PT0naW5zdGFsbGF0aW9uJ1wiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtcHJpbWFyeVwiPnt7b3Blbj8uaW5zdGFsbGF0aW9uU3RhdHVzID8gb3Blbj8uaW5zdGFsbGF0aW9uU3RhdHVzIDonLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidHlwZSA9PT0nZGF0YU1pc21hdGNoJ1wiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtd2FybmluZ1wiPnt7b3Blbj8uaXNzdWVUeXBlID09PSAnaGlnaGNvdW50JyA/ICdIaWdoIENvdW50JyA6IChvcGVuPy5pc3N1ZVR5cGUgPT09ICdsb3djb3VudCcgPyAnTG93IENvdW50JyA6ICcnKX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm9wZW4/Lm5vdGlmaWNhdGlvblwiIGNsYXNzPVwicHJvZmlsZSBkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmUgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy9CZWxsbm90aWZpY2F0aW9uLnBuZ1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAoY2xpY2spPVwic2VsZWN0VmlldygkZXZlbnQsaW5kZXgsJ29wZW4nKVwiPiA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIxXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIxIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMy4xNjYgMi41SDE4LjE2Nk0xOC4xNjYgMi41VjcuNU0xOC4xNjYgMi41TDEyLjMzMjcgOC4zMzMzM004LjE2NjAyIDE3LjVIMy4xNjYwMk0zLjE2NjAyIDE3LjVWMTIuNU0zLjE2NjAyIDE3LjVMOC45OTkzNSAxMS42NjY3XCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuNjY2NjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gdGV4dC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+PHN2ZyBjbGFzcz1cIm1lLTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNzk2NiAxLjQyNzUyQzEwLjY1NDEgMS4yOTY4MSAxMC40NjY3IDEuMjI2MTcgMTAuMjczMyAxLjIzMDM3QzEwLjA4IDEuMjM0NTYgOS44OTU4IDEuMzEzMjUgOS43NTkxMSAxLjQ1MDAyTDEuNDg5MTEgOS43MjAwMkMxLjQxOTM4IDkuNzg5NjggMS4zNjQwNiA5Ljg3MjM5IDEuMzI2MzIgOS45NjM0NEMxLjI4ODU3IDEwLjA1NDUgMS4yNjkxNSAxMC4xNTIxIDEuMjY5MTUgMTAuMjUwNkMxLjI2OTE1IDEwLjM0OTIgMS4yODg1NyAxMC40NDY4IDEuMzI2MzIgMTAuNTM3OUMxLjM2NDA2IDEwLjYyODkgMS40MTkzOCAxMC43MTE2IDEuNDg5MTEgMTAuNzgxM0wyLjY0NjYxIDExLjkzODhDMi42NTYzMiAxMS45NDE4IDIuNjY2NDcgMTEuOTQzIDIuNjc2NjEgMTEuOTQyNUMyLjcxNDExIDExLjk0MjUgMi43NjQxMSAxMS45Mjg4IDIuODExNjEgMTEuODk3NUMzLjI2ODQ1IDExLjU5MjcgMy44MTY4IDExLjQ1NTcgNC4zNjMzMSAxMS41MDk3QzQuOTA5ODMgMTEuNTYzNyA1LjQyMDczIDExLjgwNTUgNS44MDkwNSAxMi4xOTM4QzYuMTk3MzggMTIuNTgyMiA2LjQzOTEzIDEzLjA5MzEgNi40OTMxNiAxMy42Mzk2QzYuNTQ3MTggMTQuMTg2MSA2LjQxMDE0IDE0LjczNDQgNi4xMDUzNiAxNS4xOTEzQzYuMDc3OTIgMTUuMjMxMSA2LjA2MjMxIDE1LjI3NzkgNi4wNjAzNiAxNS4zMjYzQzYuMDYwMzYgMTUuMzQyNSA2LjA2Mjg2IDE1LjM1MTMgNi4wNjQxMSAxNS4zNTVMNy4xOTQxMSAxNi40ODYzQzcuMjY1MTIgMTYuNTU3NCA3LjM0OTcxIDE2LjYxMzYgNy40NDI4NSAxNi42NTE0QzcuNTM1OTkgMTYuNjg5MiA3LjYzNTc5IDE2LjcwNzkgNy43MzYzIDE2LjcwNjRDNy44MzY4MiAxNi43MDQ5IDcuOTM2IDE2LjY4MzIgOC4wMjc5NiAxNi42NDI2QzguMTE5OTIgMTYuNjAyIDguMjAyNzggMTYuNTQzMyA4LjI3MTYxIDE2LjQ3TDE2LjUyMDQgNy43MDUwMkMxNi41ODgzIDcuNjMyNjcgMTYuNjQxMiA3LjU0NzU1IDE2LjY3NiA3LjQ1NDZDMTYuNzEwOCA3LjM2MTY1IDE2LjcyNjggNy4yNjI3MiAxNi43MjMxIDcuMTYzNTRDMTYuNzE5MyA3LjA2NDM2IDE2LjY5NiA2Ljk2NjkxIDE2LjY1NDMgNi44NzY4M0MxNi42MTI2IDYuNzg2NzUgMTYuNTUzNSA2LjcwNTgzIDE2LjQ4MDQgNi42Mzg3N0wxNS4zNzI5IDUuNjIyNTJIMTUuMzY5MUMxNS4zNTE0IDUuNjE5MDIgMTUuMzMzMSA1LjYxOTAyIDE1LjMxNTQgNS42MjI1MkMxNS4yNDQ4IDUuNjM3MjIgMTUuMTgwNiA1LjY3MzQ4IDE1LjEzMTYgNS43MjYyN0MxNC45MjI3IDUuOTYzMDUgMTQuNjY4NyA2LjE1NTc5IDE0LjM4NDUgNi4yOTMyM0MxNC4xMDAyIDYuNDMwNjcgMTMuNzkxNCA2LjUxMDA1IDEzLjQ3NjEgNi41MjY3M0MxMy4xNjA4IDYuNTQzNDEgMTIuODQ1MyA2LjQ5NzA0IDEyLjU0ODEgNi4zOTAzNUMxMi4yNTEgNi4yODM2NiAxMS45NzggNi4xMTg3OSAxMS43NDUzIDUuOTA1MzdDMTEuNTEyNiA1LjY5MTk1IDExLjMyNDggNS40MzQyOCAxMS4xOTI5IDUuMTQ3NDJDMTEuMDYxIDQuODYwNTUgMTAuOTg3NiA0LjU1MDI3IDEwLjk3NyA0LjIzNDdDMTAuOTY2NCAzLjkxOTEzIDExLjAxODggMy42MDQ2MiAxMS4xMzEyIDMuMzA5NTZDMTEuMjQzNiAzLjAxNDQ5IDExLjQxMzcgMi43NDQ4MSAxMS42MzE2IDIuNTE2MjdDMTEuNjc5NyAyLjQ2MjY0IDExLjcwOTggMi4zOTUzNSAxMS43MTc5IDIuMzIzNzdDMTEuNzIwMSAyLjMwNDg4IDExLjcxODQgMi4yODU3MiAxMS43MTI5IDIuMjY3NTJMMTAuNzk2NiAxLjQyNzUyWk05LjA1Mjg2IDAuNzQyNTIyQzkuMzcxNzYgMC40MjM2MzggOS44MDE0NSAwLjI0MDE3NCAxMC4yNTIzIDAuMjMwMzkzQzEwLjcwMzIgMC4yMjA2MTEgMTEuMTQwNCAwLjM4NTI2OCAxMS40NzI5IDAuNjkwMDIyTDEyLjM4OTEgMS41MzEyN0MxMi42NjI5IDEuNzgxMjcgMTIuNzM5MSAyLjEyMjUyIDEyLjcxNDEgMi40MTM3N0MxMi42ODc5IDIuNzAxMjcgMTIuNTYxNiAyLjk4MjUyIDEyLjM2NjYgMy4xOTM3N0MxMi4yNDQ2IDMuMzI2OSAxMi4xNDk5IDMuNDgyNzYgMTIuMDg4MSAzLjY1MjQ2QzEyLjAyNjMgMy44MjIxNiAxMS45OTg1IDQuMDAyMzcgMTIuMDA2NCA0LjE4MjgxQzEyLjAxNDIgNC4zNjMyNSAxMi4wNTc1IDQuNTQwMzcgMTIuMTMzOCA0LjcwNDA3QzEyLjIxMDEgNC44Njc3OCAxMi4zMTc5IDUuMDE0ODUgMTIuNDUxIDUuMTM2OUMxMi41ODQxIDUuMjU4OTQgMTIuNzQgNS4zNTM1OCAxMi45MDk3IDUuNDE1MzlDMTMuMDc5NCA1LjQ3NzIgMTMuMjU5NiA1LjUwNDk4IDEzLjQ0IDUuNDk3MTRDMTMuNjIwNSA1LjQ4OTMxIDEzLjc5NzYgNS40NDYwMSAxMy45NjEzIDUuMzY5NzJDMTQuMTI1IDUuMjkzNDQgMTQuMjcyMSA1LjE4NTY1IDE0LjM5NDEgNS4wNTI1MkMxNC41ODc5IDQuODQwMDIgMTQuODU2NiA0LjY5MDAyIDE1LjE0MDQgNC42Mzg3N0MxNS4zMDA0IDQuNjA2NjUgMTUuNDY1NiA0LjYxMjE4IDE1LjYyMzEgNC42NTQ5MkMxNS43ODA2IDQuNjk3NjUgMTUuOTI2IDQuNzc2NDMgMTYuMDQ3OSA0Ljg4NTAyTDE3LjE1NjYgNS45MDEyN0MxNy4zMjczIDYuMDU3OSAxNy40NjUyIDYuMjQ2ODcgMTcuNTYyMyA2LjQ1NzJDMTcuNjU5NCA2LjY2NzU0IDE3LjcxMzggNi44OTUwNyAxNy43MjIzIDcuMTI2NThDMTcuNzMwOCA3LjM1ODA5IDE3LjY5MzIgNy41ODg5OSAxNy42MTE4IDcuODA1ODdDMTcuNTMwMyA4LjAyMjc2IDE3LjQwNjYgOC4yMjEzMSAxNy4yNDc5IDguMzkwMDJMOS4wMDAzNiAxNy4xNTVDOC44Mzk3NSAxNy4zMjU3IDguNjQ2NDkgMTcuNDYyNCA4LjQzMjA2IDE3LjU1NjlDOC4yMTc2MyAxNy42NTE1IDcuOTg2MzggMTcuNzAyIDcuNzUyMDUgMTcuNzA1NUM3LjUxNzcxIDE3LjcwOSA3LjI4NTA2IDE3LjY2NTQgNy4wNjc5IDE3LjU3NzNDNi44NTA3NCAxNy40ODkyIDYuNjUzNDkgMTcuMzU4MyA2LjQ4Nzg2IDE3LjE5MjVMNS4zNTc4NiAxNi4wNjI1QzQuOTI0MTEgMTUuNjI4OCA1LjAyOTExIDE1LjAwMzggNS4yNzQxMSAxNC42Mzc1QzUuNDQ5ODggMTQuMzczMSA1LjUyODcxIDE0LjA1NTkgNS40OTcyIDEzLjc0QzUuNDY1NjkgMTMuNDI0IDUuMzI1NzkgMTMuMTI4NyA1LjEwMTI1IDEyLjkwNDFDNC44NzY3MiAxMi42Nzk2IDQuNTgxMzkgMTIuNTM5NyA0LjI2NTQyIDEyLjUwODJDMy45NDk0NSAxMi40NzY3IDMuNjMyMzEgMTIuNTU1NSAzLjM2Nzg2IDEyLjczMTNDMi45OTkxMSAxMi45NzUgMi4zNzUzNiAxMy4wOCAxLjk0MTYxIDEyLjY0NUwwLjc4NDExMSAxMS40ODc1QzAuNjIxNTg5IDExLjMyNSAwLjQ5MjY2OSAxMS4xMzIxIDAuNDA0NzEyIDEwLjkxOThDMC4zMTY3NTUgMTAuNzA3NCAwLjI3MTQ4NCAxMC40Nzk4IDAuMjcxNDg0IDEwLjI1QzAuMjcxNDg0IDEwLjAyMDIgMC4zMTY3NTUgOS43OTI2MiAwLjQwNDcxMiA5LjU4MDI5QzAuNDkyNjY5IDkuMzY3OTUgMC42MjE1ODkgOS4xNzUwMyAwLjc4NDExMSA5LjAxMjUyTDkuMDUyODYgMC43NDI1MjJaXCIgZmlsbD1cIiM2NjcwODVcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNzk2NiAxLjQyNzUyQzEwLjY1NDEgMS4yOTY4MSAxMC40NjY3IDEuMjI2MTcgMTAuMjczMyAxLjIzMDM3QzEwLjA4IDEuMjM0NTYgOS44OTU4IDEuMzEzMjUgOS43NTkxMSAxLjQ1MDAyTDEuNDg5MTEgOS43MjAwMkMxLjQxOTM4IDkuNzg5NjggMS4zNjQwNiA5Ljg3MjM5IDEuMzI2MzIgOS45NjM0NEMxLjI4ODU3IDEwLjA1NDUgMS4yNjkxNSAxMC4xNTIxIDEuMjY5MTUgMTAuMjUwNkMxLjI2OTE1IDEwLjM0OTIgMS4yODg1NyAxMC40NDY4IDEuMzI2MzIgMTAuNTM3OUMxLjM2NDA2IDEwLjYyODkgMS40MTkzOCAxMC43MTE2IDEuNDg5MTEgMTAuNzgxM0wyLjY0NjYxIDExLjkzODhDMi42NTYzMiAxMS45NDE4IDIuNjY2NDcgMTEuOTQzIDIuNjc2NjEgMTEuOTQyNUMyLjcxNDExIDExLjk0MjUgMi43NjQxMSAxMS45Mjg4IDIuODExNjEgMTEuODk3NUMzLjI2ODQ1IDExLjU5MjcgMy44MTY4IDExLjQ1NTcgNC4zNjMzMSAxMS41MDk3QzQuOTA5ODMgMTEuNTYzNyA1LjQyMDczIDExLjgwNTUgNS44MDkwNSAxMi4xOTM4QzYuMTk3MzggMTIuNTgyMiA2LjQzOTEzIDEzLjA5MzEgNi40OTMxNiAxMy42Mzk2QzYuNTQ3MTggMTQuMTg2MSA2LjQxMDE0IDE0LjczNDQgNi4xMDUzNiAxNS4xOTEzQzYuMDc3OTIgMTUuMjMxMSA2LjA2MjMxIDE1LjI3NzkgNi4wNjAzNiAxNS4zMjYzQzYuMDYwMzYgMTUuMzQyNSA2LjA2Mjg2IDE1LjM1MTMgNi4wNjQxMSAxNS4zNTVMNy4xOTQxMSAxNi40ODYzQzcuMjY1MTIgMTYuNTU3NCA3LjM0OTcxIDE2LjYxMzYgNy40NDI4NSAxNi42NTE0QzcuNTM1OTkgMTYuNjg5MiA3LjYzNTc5IDE2LjcwNzkgNy43MzYzIDE2LjcwNjRDNy44MzY4MiAxNi43MDQ5IDcuOTM2IDE2LjY4MzIgOC4wMjc5NiAxNi42NDI2QzguMTE5OTIgMTYuNjAyIDguMjAyNzggMTYuNTQzMyA4LjI3MTYxIDE2LjQ3TDE2LjUyMDQgNy43MDUwMkMxNi41ODgzIDcuNjMyNjcgMTYuNjQxMiA3LjU0NzU1IDE2LjY3NiA3LjQ1NDZDMTYuNzEwOCA3LjM2MTY1IDE2LjcyNjggNy4yNjI3MiAxNi43MjMxIDcuMTYzNTRDMTYuNzE5MyA3LjA2NDM2IDE2LjY5NiA2Ljk2NjkxIDE2LjY1NDMgNi44NzY4M0MxNi42MTI2IDYuNzg2NzUgMTYuNTUzNSA2LjcwNTgzIDE2LjQ4MDQgNi42Mzg3N0wxNS4zNzI5IDUuNjIyNTJIMTUuMzY5MUMxNS4zNTE0IDUuNjE5MDIgMTUuMzMzMSA1LjYxOTAyIDE1LjMxNTQgNS42MjI1MkMxNS4yNDQ4IDUuNjM3MjIgMTUuMTgwNiA1LjY3MzQ4IDE1LjEzMTYgNS43MjYyN0MxNC45MjI3IDUuOTYzMDUgMTQuNjY4NyA2LjE1NTc5IDE0LjM4NDUgNi4yOTMyM0MxNC4xMDAyIDYuNDMwNjcgMTMuNzkxNCA2LjUxMDA1IDEzLjQ3NjEgNi41MjY3M0MxMy4xNjA4IDYuNTQzNDEgMTIuODQ1MyA2LjQ5NzA0IDEyLjU0ODEgNi4zOTAzNUMxMi4yNTEgNi4yODM2NiAxMS45NzggNi4xMTg3OSAxMS43NDUzIDUuOTA1MzdDMTEuNTEyNiA1LjY5MTk1IDExLjMyNDggNS40MzQyOCAxMS4xOTI5IDUuMTQ3NDJDMTEuMDYxIDQuODYwNTUgMTAuOTg3NiA0LjU1MDI3IDEwLjk3NyA0LjIzNDdDMTAuOTY2NCAzLjkxOTEzIDExLjAxODggMy42MDQ2MiAxMS4xMzEyIDMuMzA5NTZDMTEuMjQzNiAzLjAxNDQ5IDExLjQxMzcgMi43NDQ4MSAxMS42MzE2IDIuNTE2MjdDMTEuNjc5NyAyLjQ2MjY0IDExLjcwOTggMi4zOTUzNSAxMS43MTc5IDIuMzIzNzdDMTEuNzIwMSAyLjMwNDg4IDExLjcxODQgMi4yODU3MiAxMS43MTI5IDIuMjY3NTJMMTAuNzk2NiAxLjQyNzUyWk05LjA1Mjg2IDAuNzQyNTIyQzkuMzcxNzYgMC40MjM2MzggOS44MDE0NSAwLjI0MDE3NCAxMC4yNTIzIDAuMjMwMzkzQzEwLjcwMzIgMC4yMjA2MTEgMTEuMTQwNCAwLjM4NTI2OCAxMS40NzI5IDAuNjkwMDIyTDEyLjM4OTEgMS41MzEyN0MxMi42NjI5IDEuNzgxMjcgMTIuNzM5MSAyLjEyMjUyIDEyLjcxNDEgMi40MTM3N0MxMi42ODc5IDIuNzAxMjcgMTIuNTYxNiAyLjk4MjUyIDEyLjM2NjYgMy4xOTM3N0MxMi4yNDQ2IDMuMzI2OSAxMi4xNDk5IDMuNDgyNzYgMTIuMDg4MSAzLjY1MjQ2QzEyLjAyNjMgMy44MjIxNiAxMS45OTg1IDQuMDAyMzcgMTIuMDA2NCA0LjE4MjgxQzEyLjAxNDIgNC4zNjMyNSAxMi4wNTc1IDQuNTQwMzcgMTIuMTMzOCA0LjcwNDA3QzEyLjIxMDEgNC44Njc3OCAxMi4zMTc5IDUuMDE0ODUgMTIuNDUxIDUuMTM2OUMxMi41ODQxIDUuMjU4OTQgMTIuNzQgNS4zNTM1OCAxMi45MDk3IDUuNDE1MzlDMTMuMDc5NCA1LjQ3NzIgMTMuMjU5NiA1LjUwNDk4IDEzLjQ0IDUuNDk3MTRDMTMuNjIwNSA1LjQ4OTMxIDEzLjc5NzYgNS40NDYwMSAxMy45NjEzIDUuMzY5NzJDMTQuMTI1IDUuMjkzNDQgMTQuMjcyMSA1LjE4NTY1IDE0LjM5NDEgNS4wNTI1MkMxNC41ODc5IDQuODQwMDIgMTQuODU2NiA0LjY5MDAyIDE1LjE0MDQgNC42Mzg3N0MxNS4zMDA0IDQuNjA2NjUgMTUuNDY1NiA0LjYxMjE4IDE1LjYyMzEgNC42NTQ5MkMxNS43ODA2IDQuNjk3NjUgMTUuOTI2IDQuNzc2NDMgMTYuMDQ3OSA0Ljg4NTAyTDE3LjE1NjYgNS45MDEyN0MxNy4zMjczIDYuMDU3OSAxNy40NjUyIDYuMjQ2ODcgMTcuNTYyMyA2LjQ1NzJDMTcuNjU5NCA2LjY2NzU0IDE3LjcxMzggNi44OTUwNyAxNy43MjIzIDcuMTI2NThDMTcuNzMwOCA3LjM1ODA5IDE3LjY5MzIgNy41ODg5OSAxNy42MTE4IDcuODA1ODdDMTcuNTMwMyA4LjAyMjc2IDE3LjQwNjYgOC4yMjEzMSAxNy4yNDc5IDguMzkwMDJMOS4wMDAzNiAxNy4xNTVDOC44Mzk3NSAxNy4zMjU3IDguNjQ2NDkgMTcuNDYyNCA4LjQzMjA2IDE3LjU1NjlDOC4yMTc2MyAxNy42NTE1IDcuOTg2MzggMTcuNzAyIDcuNzUyMDUgMTcuNzA1NUM3LjUxNzcxIDE3LjcwOSA3LjI4NTA2IDE3LjY2NTQgNy4wNjc5IDE3LjU3NzNDNi44NTA3NCAxNy40ODkyIDYuNjUzNDkgMTcuMzU4MyA2LjQ4Nzg2IDE3LjE5MjVMNS4zNTc4NiAxNi4wNjI1QzQuOTI0MTEgMTUuNjI4OCA1LjAyOTExIDE1LjAwMzggNS4yNzQxMSAxNC42Mzc1QzUuNDQ5ODggMTQuMzczMSA1LjUyODcxIDE0LjA1NTkgNS40OTcyIDEzLjc0QzUuNDY1NjkgMTMuNDI0IDUuMzI1NzkgMTMuMTI4NyA1LjEwMTI1IDEyLjkwNDFDNC44NzY3MiAxMi42Nzk2IDQuNTgxMzkgMTIuNTM5NyA0LjI2NTQyIDEyLjUwODJDMy45NDk0NSAxMi40NzY3IDMuNjMyMzEgMTIuNTU1NSAzLjM2Nzg2IDEyLjczMTNDMi45OTkxMSAxMi45NzUgMi4zNzUzNiAxMy4wOCAxLjk0MTYxIDEyLjY0NUwwLjc4NDExMSAxMS40ODc1QzAuNjIxNTg5IDExLjMyNSAwLjQ5MjY2OSAxMS4xMzIxIDAuNDA0NzEyIDEwLjkxOThDMC4zMTY3NTUgMTAuNzA3NCAwLjI3MTQ4NCAxMC40Nzk4IDAuMjcxNDg0IDEwLjI1QzAuMjcxNDg0IDEwLjAyMDIgMC4zMTY3NTUgOS43OTI2MiAwLjQwNDcxMiA5LjU4MDI5QzAuNDkyNjY5IDkuMzY3OTUgMC42MjE1ODkgOS4xNzUwMyAwLjc4NDExMSA5LjAxMjUyTDkuMDUyODYgMC43NDI1MjJaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+IHt7b3Blbj8udGlja2V0SWQgPyBvcGVuPy50aWNrZXRJZCA6ICctLSd9fSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIm9wZW4/LnRpY2tldFR5cGUgPT09ICdyZWZyZXNodGlja2V0J1wiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTdcIiBoZWlnaHQ9XCIxNFwiIHZpZXdCb3g9XCIwIDAgMTcgMTRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNS45NDYwMiA0Ljk4ODgxTDIuNjY2MDIgNi4zMzg4MUwyLjAwNjAyIDYuMDc4ODFMMC42NjYwMTYgMi44Mzg4MUwxLjU4NjAyIDIuNDU4ODFMMi4zOTYwMiA0LjQwODgxQzIuOTM5NzcgMy4wNDgwMSAzLjkyODcyIDEuOTExNjkgNS4yMDE0NSAxLjE4NTMyQzYuNDc0MTkgMC40NTg5NTEgNy45NTU1NCAwLjE4NTQyNiA5LjQwMzc1IDAuNDA5Mzg3QzEwLjg1MiAwLjYzMzM0OSAxMi4xODE1IDEuMzQxNTcgMTMuMTc1NCAyLjQxODQ2QzE0LjE2OTIgMy40OTUzNSAxNC43Njg3IDQuODc3MzIgMTQuODc2IDYuMzM4ODFIMTMuODc2QzEzLjc2MTYgNS4wOTAwOCAxMy4yMjI0IDMuOTE4MzYgMTIuMzQ4NCAzLjAxOTE5QzExLjQ3NDMgMi4xMjAwMyAxMC4zMTg0IDEuNTQ3ODEgOS4wNzM0IDEuMzk4MDRDNy44Mjg0MiAxLjI0ODI2IDYuNTY5NzMgMS41MyA1LjUwNzM5IDIuMTk2MjJDNC40NDUwNSAyLjg2MjQ0IDMuNjQzMzIgMy44NzI4NCAzLjIzNjAyIDUuMDU4ODFMNS41NTYwMiA0LjA1ODgxTDUuOTQ2MDIgNC45ODg4MVpNMTQuODA2IDcuNjY4ODFMMTYuMTQ2IDEwLjg5ODhMMTUuMjI2IDExLjMzODhMMTQuNDA2IDkuMzM4ODFDMTMuODU4IDEwLjcwNDkgMTIuODYxOCAxMS44NDQyIDExLjU4MSAxMi41Njk2QzEwLjMwMDEgMTMuMjk1IDguODEwNzcgMTMuNTYzNCA3LjM1NzI4IDEzLjMzMDlDNS45MDM4IDEzLjA5ODMgNC41NzI1NSAxMi4zNzg2IDMuNTgyIDExLjI4OThDMi41OTE0NSAxMC4yMDA5IDIuMDAwNDYgOC44MDc3NSAxLjkwNjAyIDcuMzM4ODFIMi45MDYwMlY2LjgzODgxQzIuOTA4ODIgOC4xMjYyNyAzLjM2NDAyIDkuMzcxOCA0LjE5MjAzIDEwLjM1NzdDNS4wMjAwNSAxMS4zNDM2IDYuMTY4MjEgMTIuMDA3MSA3LjQzNTg0IDEyLjIzMjJDOC43MDM0NiAxMi40NTc0IDEwLjAwOTkgMTIuMjI5OSAxMS4xMjY4IDExLjU4OTVDMTIuMjQzNyAxMC45NDkxIDEzLjEgOS45MzY1NSAxMy41NDYgOC43Mjg4MUwxMS4yOTYgOS42NTg4MUwxMC45MDYgOC43Mzg4MUwxNC4xNTYgNy4zODg4MUwxNC44MDYgNy42Njg4MVpcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk04LjQwNjI1IDcuNTQwMDRDOC45NTg1MyA3LjU0MDA0IDkuNDA2MjUgNy4wOTIzMiA5LjQwNjI1IDYuNTQwMDRDOS40MDYyNSA1Ljk4Nzc1IDguOTU4NTMgNS41NDAwNCA4LjQwNjI1IDUuNTQwMDRDNy44NTM5NyA1LjU0MDA0IDcuNDA2MjUgNS45ODc3NSA3LjQwNjI1IDYuNTQwMDRDNy40MDYyNSA3LjA5MjMyIDcuODUzOTcgNy41NDAwNCA4LjQwNjI1IDcuNTQwMDRaXCIgZmlsbD1cIiM5OEEyQjNcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIm9wZW4/Lmlzc3VlU3RhdHVzICE9PSAnbm90aWRlbnRpZmllZCdcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zODI3XzEyMDYxKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNy4yMDA2NSAxMC4zMzMzSDkuMTU2MjFWMTIuMzMzM0g3LjIwMDY1VjEwLjMzMzNaTTkuMTU2MjEgNC4zMzMyN0g3LjIwMDY1VjkuMzMzMjZIOS4xNTYyMVY0LjMzMzI3Wk0xMC42MjI5IDUuODMzMjdMOS42NDUxIDYuODMzMjdMMTIuMDg5NSA5LjMzMzI2TDE2LjAwMDcgNC44MzMyN0wxNS4wMjI5IDMuODMzMjdMMTIuMDg5NSA3LjMzMzI2TDEwLjYyMjkgNS44MzMyN1pNOC4xNzg0MyAxNC4wMzMzQzYuNzAxMDggMTQuMDMwNiA1LjI4NDk5IDEzLjQyOTIgNC4yNDAzNCAxMi4zNjA4QzMuMTk1NyAxMS4yOTI1IDIuNjA3NjggOS44NDQxOCAyLjYwNTEgOC4zMzMyNkMyLjYwNTEgNS4xOTMyNyA1LjEwODIxIDIuNjMzMjcgOC4xNzg0MyAyLjYzMzI3QzkuOTY3NzYgMi42MzMyNyAxMS41NTE4IDMuNTEzMjcgMTIuNTc4NCA0LjgzMzI3TDEzLjQ3OCAzLjkxMzI3QzEyLjgzOTUgMy4xMDUzNCAxMi4wMzE5IDIuNDU0MTUgMTEuMTE0NyAyLjAwNzY1QzEwLjE5NzYgMS41NjExNSA5LjE5NDE5IDEuMzMwNyA4LjE3ODQzIDEuMzMzMjdDNC40MDQyMSAxLjMzMzI3IDEuMzMzOTggNC40NzMyNyAxLjMzMzk4IDguMzMzMjZDMS4zMzM5OCAxMi4xOTMzIDQuNDA0MjEgMTUuMzMzMyA4LjE3ODQzIDE1LjMzMzNDMTEuOTUyNyAxNS4zMzMzIDE1LjAyMjkgMTIuMTkzMyAxNS4wMjI5IDguMzMzMjZMMTMuNTM2NyA5Ljg1MzI2QzEyLjg5MTMgMTIuMjYzMyAxMC43NDAyIDE0LjA0MzMgOC4xNzg0MyAxNC4wNDMzVjE0LjAzMzNaXCIgZmlsbD1cIiM5OEEyQjNcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzM4MjdfMTIwNjFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFvcGVuLmlzT3BlblwiIChjbGljayk9XCJzZWxlY3RWaWV3KCRldmVudCxpbmRleCwnb3BlbicpXCIgY2xhc3M9XCJtcy0zXCI+IDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjE2NiAyLjVIMTguMTY2TTE4LjE2NiAyLjVWNy41TTE4LjE2NiAyLjVMMTIuMzMyNyA4LjMzMzMzTTguMTY2MDIgMTcuNUgzLjE2NjAyTTMuMTY2MDIgMTcuNVYxMi41TTMuMTY2MDIgMTcuNUw4Ljk5OTM1IDExLjY2NjdcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhb3Blbi5pc09wZW4gJiYgb3Blbj8ubm90aWZpY2F0aW9uXCIgY2xhc3M9XCJwcm9maWxlIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50cmUganVzdGlmeS1jb250ZW50LWNlbnRyZSBtcy0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvQmVsbG5vdGlmaWNhdGlvbi5wbmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8aW1nICpuZ0lmPVwiY2FyZFZpZXdcIiBjbGFzcz1cInByb2ZpbGUgbXMtM1wiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy9ncm9wbW9kYWwucG5nXCIgYWx0PVwiXCI+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic3RhdHVzT3Blbj8ubGVuZ3RoID09PSAwIHx8ICFub0RhdGEgJiYgIWxvYWRpbmdcIiBjbGFzcz1cInctMTAwIG10LTEwIG1iLTEwIG1oLTYwdmggZC1ncmlkIHRleHQtY2VudGVyXCI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJteC1hdXRvIG1iLTJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvdGFrZXRpY2tldC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRha2V0aWNrZXQgbXQtMiBmdy1ib2xkXCI+Tm8gT3BlbiBUaWNrZXRzIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwidy0xMDAgYnRuIGJ0bi1wcmltYXJ5IG10LTVcIiAoY2xpY2spPVwidGFrZVRpY2tldCgpXCI+VGFrZSBUaWNrZXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2FkaW5nPy5vcGVuXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9EYXRhPy5vcGVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgbWgtNjB2aCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJteC1hdXRvIG1iLTJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvdGFrZXRpY2tldC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGFrZXRpY2tldCBtdC01IGZ3LWJvbGRcIj5ObyBPcGVuIFRpY2tldHMgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy5tYW5hZ2VfdGlja2V0c19pc0VkaXRcIiBjbGFzcz1cInctMTAwIGJ0biBidG4tcHJpbWFyeSBtdC01XCIgKGNsaWNrKT1cInRha2VUaWNrZXQoKVwiPlRha2UgVGlja2V0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPiBcclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS00XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgaC0xMDAgcm91bmRlZC0yIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWRnZS1saWdodC1kZWZhdWx0IHB4LTMgcHktNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPklucHJvZ3Jlc3M8L3NwYW4+PHNwYW4gKm5nSWY9XCJzdGF0dXNJbnByb2dyZXNzPy5sZW5ndGggPiAwICYmICFsb2FkaW5nLmlucHJvZ3Jlc3MgJiYgIW5vRGF0YS5pbnByb2dyZXNzXCIgY2xhc3M9XCJyb3VuZGVkLTUgbXMtMyBweC0xIGJvcmRlciBib3JkZXItZ3JheSBiZy1iYWRnZVwiPnt7c3RhdHVzSW5wcm9ncmVzcz8ubGVuZ3RofX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd2JvZHkgaC0xMDAgcHgtNCBweS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbG9hZGluZy5pbnByb2dyZXNzICYmICFub0RhdGEuaW5wcm9ncmVzc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaW5wcm9ncmVzcyBvZiBzdGF0dXNJbnByb2dyZXNzOyBsZXQgaW5kZXggPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJpbnByb2dyZXNzLmlzT3BlbiA/ICdhY3RpdmUnOicnXCIgY2xhc3M9XCJpc3N1ZWNhcmQgY3Vyc29yLXBvaW50ZXIgdy0xMDAgbWItNVwiIChjbGljayk9XCJyb3V0ZXRvVGlja2V0KGlucHJvZ3Jlc3MpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpbnByb2dyZXNzPy5pc09wZW5cIiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmdy1zZW1pYm9sZFwiPnt7aW5wcm9ncmVzcz8uc3RvcmVJZH19PC9sYWJlbD48YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZnctc2VtaWJvbGQgbXktMlwiPnt7aW5wcm9ncmVzcz8uc3RvcmVOYW1lID8gaW5wcm9ncmVzcz8uc3RvcmVOYW1lIDonLS0nfX08L2xhYmVsPjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1kZWZhdWx0IG1lLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJtZS0yXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzczMl82MDI3NylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTggMVYzTTQgMVYzTTEuNSA1SDEwLjVNMi41IDJIOS41QzEwLjA1MjMgMiAxMC41IDIuNDQ3NzIgMTAuNSAzVjEwQzEwLjUgMTAuNTUyMyAxMC4wNTIzIDExIDkuNSAxMUgyLjVDMS45NDc3MiAxMSAxLjUgMTAuNTUyMyAxLjUgMTBWM0MxLjUgMi40NDc3MiAxLjk0NzcyIDIgMi41IDJaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzczMl82MDI3N1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4ge3tpbnByb2dyZXNzPy5EYXRlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaW5wcm9ncmVzcz8uaW5mcmFJc3N1ZVwiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtd2FybmluZ1wiPnt7aW5wcm9ncmVzcz8uaW5mcmFJc3N1ZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInR5cGUgPT09J2luc3RhbGxhdGlvbicgJiYgaW5wcm9ncmVzcz8uaW5mcmFJc3N1ZSE9PScnXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1wcmltYXJ5IHRleHQtY2FwaXRhbGl6ZSBtcy0zXCI+e3tpbnByb2dyZXNzPy5pbnN0YWxsYXRpb25TdGF0dXMgPyBpbnByb2dyZXNzPy5pbnN0YWxsYXRpb25TdGF0dXMgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ0eXBlID09PSdkYXRhTWlzbWF0Y2gnXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC13YXJuaW5nXCI+e3tpbnByb2dyZXNzPy5pc3N1ZVR5cGUgPT09ICdoaWdoY291bnQnID8gJ0hpZ2ggQ291bnQnIDogKGlucHJvZ3Jlc3M/Lmlzc3VlVHlwZSA9PT0gJ2xvd2NvdW50JyA/ICdMb3cgQ291bnQnIDogJycpfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCIgZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImlucHJvZ3Jlc3M/Lm5vdGlmaWNhdGlvblwiIGNsYXNzPVwicHJvZmlsZSBkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmUgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy9CZWxsbm90aWZpY2F0aW9uLnBuZ1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAoY2xpY2spPVwic2VsZWN0VmlldygkZXZlbnQsaW5kZXgsJ2lucHJvZ3Jlc3MnKVwiPiA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIxXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIxIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMy4xNjYgMi41SDE4LjE2Nk0xOC4xNjYgMi41VjcuNU0xOC4xNjYgMi41TDEyLjMzMjcgOC4zMzMzM004LjE2NjAyIDE3LjVIMy4xNjYwMk0zLjE2NjAyIDE3LjVWMTIuNU0zLjE2NjAyIDE3LjVMOC45OTkzNSAxMS42NjY3XCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuNjY2NjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gdGV4dC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+PHN2ZyBjbGFzcz1cIm1lLTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNzk2NiAxLjQyNzUyQzEwLjY1NDEgMS4yOTY4MSAxMC40NjY3IDEuMjI2MTcgMTAuMjczMyAxLjIzMDM3QzEwLjA4IDEuMjM0NTYgOS44OTU4IDEuMzEzMjUgOS43NTkxMSAxLjQ1MDAyTDEuNDg5MTEgOS43MjAwMkMxLjQxOTM4IDkuNzg5NjggMS4zNjQwNiA5Ljg3MjM5IDEuMzI2MzIgOS45NjM0NEMxLjI4ODU3IDEwLjA1NDUgMS4yNjkxNSAxMC4xNTIxIDEuMjY5MTUgMTAuMjUwNkMxLjI2OTE1IDEwLjM0OTIgMS4yODg1NyAxMC40NDY4IDEuMzI2MzIgMTAuNTM3OUMxLjM2NDA2IDEwLjYyODkgMS40MTkzOCAxMC43MTE2IDEuNDg5MTEgMTAuNzgxM0wyLjY0NjYxIDExLjkzODhDMi42NTYzMiAxMS45NDE4IDIuNjY2NDcgMTEuOTQzIDIuNjc2NjEgMTEuOTQyNUMyLjcxNDExIDExLjk0MjUgMi43NjQxMSAxMS45Mjg4IDIuODExNjEgMTEuODk3NUMzLjI2ODQ1IDExLjU5MjcgMy44MTY4IDExLjQ1NTcgNC4zNjMzMSAxMS41MDk3QzQuOTA5ODMgMTEuNTYzNyA1LjQyMDczIDExLjgwNTUgNS44MDkwNSAxMi4xOTM4QzYuMTk3MzggMTIuNTgyMiA2LjQzOTEzIDEzLjA5MzEgNi40OTMxNiAxMy42Mzk2QzYuNTQ3MTggMTQuMTg2MSA2LjQxMDE0IDE0LjczNDQgNi4xMDUzNiAxNS4xOTEzQzYuMDc3OTIgMTUuMjMxMSA2LjA2MjMxIDE1LjI3NzkgNi4wNjAzNiAxNS4zMjYzQzYuMDYwMzYgMTUuMzQyNSA2LjA2Mjg2IDE1LjM1MTMgNi4wNjQxMSAxNS4zNTVMNy4xOTQxMSAxNi40ODYzQzcuMjY1MTIgMTYuNTU3NCA3LjM0OTcxIDE2LjYxMzYgNy40NDI4NSAxNi42NTE0QzcuNTM1OTkgMTYuNjg5MiA3LjYzNTc5IDE2LjcwNzkgNy43MzYzIDE2LjcwNjRDNy44MzY4MiAxNi43MDQ5IDcuOTM2IDE2LjY4MzIgOC4wMjc5NiAxNi42NDI2QzguMTE5OTIgMTYuNjAyIDguMjAyNzggMTYuNTQzMyA4LjI3MTYxIDE2LjQ3TDE2LjUyMDQgNy43MDUwMkMxNi41ODgzIDcuNjMyNjcgMTYuNjQxMiA3LjU0NzU1IDE2LjY3NiA3LjQ1NDZDMTYuNzEwOCA3LjM2MTY1IDE2LjcyNjggNy4yNjI3MiAxNi43MjMxIDcuMTYzNTRDMTYuNzE5MyA3LjA2NDM2IDE2LjY5NiA2Ljk2NjkxIDE2LjY1NDMgNi44NzY4M0MxNi42MTI2IDYuNzg2NzUgMTYuNTUzNSA2LjcwNTgzIDE2LjQ4MDQgNi42Mzg3N0wxNS4zNzI5IDUuNjIyNTJIMTUuMzY5MUMxNS4zNTE0IDUuNjE5MDIgMTUuMzMzMSA1LjYxOTAyIDE1LjMxNTQgNS42MjI1MkMxNS4yNDQ4IDUuNjM3MjIgMTUuMTgwNiA1LjY3MzQ4IDE1LjEzMTYgNS43MjYyN0MxNC45MjI3IDUuOTYzMDUgMTQuNjY4NyA2LjE1NTc5IDE0LjM4NDUgNi4yOTMyM0MxNC4xMDAyIDYuNDMwNjcgMTMuNzkxNCA2LjUxMDA1IDEzLjQ3NjEgNi41MjY3M0MxMy4xNjA4IDYuNTQzNDEgMTIuODQ1MyA2LjQ5NzA0IDEyLjU0ODEgNi4zOTAzNUMxMi4yNTEgNi4yODM2NiAxMS45NzggNi4xMTg3OSAxMS43NDUzIDUuOTA1MzdDMTEuNTEyNiA1LjY5MTk1IDExLjMyNDggNS40MzQyOCAxMS4xOTI5IDUuMTQ3NDJDMTEuMDYxIDQuODYwNTUgMTAuOTg3NiA0LjU1MDI3IDEwLjk3NyA0LjIzNDdDMTAuOTY2NCAzLjkxOTEzIDExLjAxODggMy42MDQ2MiAxMS4xMzEyIDMuMzA5NTZDMTEuMjQzNiAzLjAxNDQ5IDExLjQxMzcgMi43NDQ4MSAxMS42MzE2IDIuNTE2MjdDMTEuNjc5NyAyLjQ2MjY0IDExLjcwOTggMi4zOTUzNSAxMS43MTc5IDIuMzIzNzdDMTEuNzIwMSAyLjMwNDg4IDExLjcxODQgMi4yODU3MiAxMS43MTI5IDIuMjY3NTJMMTAuNzk2NiAxLjQyNzUyWk05LjA1Mjg2IDAuNzQyNTIyQzkuMzcxNzYgMC40MjM2MzggOS44MDE0NSAwLjI0MDE3NCAxMC4yNTIzIDAuMjMwMzkzQzEwLjcwMzIgMC4yMjA2MTEgMTEuMTQwNCAwLjM4NTI2OCAxMS40NzI5IDAuNjkwMDIyTDEyLjM4OTEgMS41MzEyN0MxMi42NjI5IDEuNzgxMjcgMTIuNzM5MSAyLjEyMjUyIDEyLjcxNDEgMi40MTM3N0MxMi42ODc5IDIuNzAxMjcgMTIuNTYxNiAyLjk4MjUyIDEyLjM2NjYgMy4xOTM3N0MxMi4yNDQ2IDMuMzI2OSAxMi4xNDk5IDMuNDgyNzYgMTIuMDg4MSAzLjY1MjQ2QzEyLjAyNjMgMy44MjIxNiAxMS45OTg1IDQuMDAyMzcgMTIuMDA2NCA0LjE4MjgxQzEyLjAxNDIgNC4zNjMyNSAxMi4wNTc1IDQuNTQwMzcgMTIuMTMzOCA0LjcwNDA3QzEyLjIxMDEgNC44Njc3OCAxMi4zMTc5IDUuMDE0ODUgMTIuNDUxIDUuMTM2OUMxMi41ODQxIDUuMjU4OTQgMTIuNzQgNS4zNTM1OCAxMi45MDk3IDUuNDE1MzlDMTMuMDc5NCA1LjQ3NzIgMTMuMjU5NiA1LjUwNDk4IDEzLjQ0IDUuNDk3MTRDMTMuNjIwNSA1LjQ4OTMxIDEzLjc5NzYgNS40NDYwMSAxMy45NjEzIDUuMzY5NzJDMTQuMTI1IDUuMjkzNDQgMTQuMjcyMSA1LjE4NTY1IDE0LjM5NDEgNS4wNTI1MkMxNC41ODc5IDQuODQwMDIgMTQuODU2NiA0LjY5MDAyIDE1LjE0MDQgNC42Mzg3N0MxNS4zMDA0IDQuNjA2NjUgMTUuNDY1NiA0LjYxMjE4IDE1LjYyMzEgNC42NTQ5MkMxNS43ODA2IDQuNjk3NjUgMTUuOTI2IDQuNzc2NDMgMTYuMDQ3OSA0Ljg4NTAyTDE3LjE1NjYgNS45MDEyN0MxNy4zMjczIDYuMDU3OSAxNy40NjUyIDYuMjQ2ODcgMTcuNTYyMyA2LjQ1NzJDMTcuNjU5NCA2LjY2NzU0IDE3LjcxMzggNi44OTUwNyAxNy43MjIzIDcuMTI2NThDMTcuNzMwOCA3LjM1ODA5IDE3LjY5MzIgNy41ODg5OSAxNy42MTE4IDcuODA1ODdDMTcuNTMwMyA4LjAyMjc2IDE3LjQwNjYgOC4yMjEzMSAxNy4yNDc5IDguMzkwMDJMOS4wMDAzNiAxNy4xNTVDOC44Mzk3NSAxNy4zMjU3IDguNjQ2NDkgMTcuNDYyNCA4LjQzMjA2IDE3LjU1NjlDOC4yMTc2MyAxNy42NTE1IDcuOTg2MzggMTcuNzAyIDcuNzUyMDUgMTcuNzA1NUM3LjUxNzcxIDE3LjcwOSA3LjI4NTA2IDE3LjY2NTQgNy4wNjc5IDE3LjU3NzNDNi44NTA3NCAxNy40ODkyIDYuNjUzNDkgMTcuMzU4MyA2LjQ4Nzg2IDE3LjE5MjVMNS4zNTc4NiAxNi4wNjI1QzQuOTI0MTEgMTUuNjI4OCA1LjAyOTExIDE1LjAwMzggNS4yNzQxMSAxNC42Mzc1QzUuNDQ5ODggMTQuMzczMSA1LjUyODcxIDE0LjA1NTkgNS40OTcyIDEzLjc0QzUuNDY1NjkgMTMuNDI0IDUuMzI1NzkgMTMuMTI4NyA1LjEwMTI1IDEyLjkwNDFDNC44NzY3MiAxMi42Nzk2IDQuNTgxMzkgMTIuNTM5NyA0LjI2NTQyIDEyLjUwODJDMy45NDk0NSAxMi40NzY3IDMuNjMyMzEgMTIuNTU1NSAzLjM2Nzg2IDEyLjczMTNDMi45OTkxMSAxMi45NzUgMi4zNzUzNiAxMy4wOCAxLjk0MTYxIDEyLjY0NUwwLjc4NDExMSAxMS40ODc1QzAuNjIxNTg5IDExLjMyNSAwLjQ5MjY2OSAxMS4xMzIxIDAuNDA0NzEyIDEwLjkxOThDMC4zMTY3NTUgMTAuNzA3NCAwLjI3MTQ4NCAxMC40Nzk4IDAuMjcxNDg0IDEwLjI1QzAuMjcxNDg0IDEwLjAyMDIgMC4zMTY3NTUgOS43OTI2MiAwLjQwNDcxMiA5LjU4MDI5QzAuNDkyNjY5IDkuMzY3OTUgMC42MjE1ODkgOS4xNzUwMyAwLjc4NDExMSA5LjAxMjUyTDkuMDUyODYgMC43NDI1MjJaXCIgZmlsbD1cIiM2NjcwODVcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNzk2NiAxLjQyNzUyQzEwLjY1NDEgMS4yOTY4MSAxMC40NjY3IDEuMjI2MTcgMTAuMjczMyAxLjIzMDM3QzEwLjA4IDEuMjM0NTYgOS44OTU4IDEuMzEzMjUgOS43NTkxMSAxLjQ1MDAyTDEuNDg5MTEgOS43MjAwMkMxLjQxOTM4IDkuNzg5NjggMS4zNjQwNiA5Ljg3MjM5IDEuMzI2MzIgOS45NjM0NEMxLjI4ODU3IDEwLjA1NDUgMS4yNjkxNSAxMC4xNTIxIDEuMjY5MTUgMTAuMjUwNkMxLjI2OTE1IDEwLjM0OTIgMS4yODg1NyAxMC40NDY4IDEuMzI2MzIgMTAuNTM3OUMxLjM2NDA2IDEwLjYyODkgMS40MTkzOCAxMC43MTE2IDEuNDg5MTEgMTAuNzgxM0wyLjY0NjYxIDExLjkzODhDMi42NTYzMiAxMS45NDE4IDIuNjY2NDcgMTEuOTQzIDIuNjc2NjEgMTEuOTQyNUMyLjcxNDExIDExLjk0MjUgMi43NjQxMSAxMS45Mjg4IDIuODExNjEgMTEuODk3NUMzLjI2ODQ1IDExLjU5MjcgMy44MTY4IDExLjQ1NTcgNC4zNjMzMSAxMS41MDk3QzQuOTA5ODMgMTEuNTYzNyA1LjQyMDczIDExLjgwNTUgNS44MDkwNSAxMi4xOTM4QzYuMTk3MzggMTIuNTgyMiA2LjQzOTEzIDEzLjA5MzEgNi40OTMxNiAxMy42Mzk2QzYuNTQ3MTggMTQuMTg2MSA2LjQxMDE0IDE0LjczNDQgNi4xMDUzNiAxNS4xOTEzQzYuMDc3OTIgMTUuMjMxMSA2LjA2MjMxIDE1LjI3NzkgNi4wNjAzNiAxNS4zMjYzQzYuMDYwMzYgMTUuMzQyNSA2LjA2Mjg2IDE1LjM1MTMgNi4wNjQxMSAxNS4zNTVMNy4xOTQxMSAxNi40ODYzQzcuMjY1MTIgMTYuNTU3NCA3LjM0OTcxIDE2LjYxMzYgNy40NDI4NSAxNi42NTE0QzcuNTM1OTkgMTYuNjg5MiA3LjYzNTc5IDE2LjcwNzkgNy43MzYzIDE2LjcwNjRDNy44MzY4MiAxNi43MDQ5IDcuOTM2IDE2LjY4MzIgOC4wMjc5NiAxNi42NDI2QzguMTE5OTIgMTYuNjAyIDguMjAyNzggMTYuNTQzMyA4LjI3MTYxIDE2LjQ3TDE2LjUyMDQgNy43MDUwMkMxNi41ODgzIDcuNjMyNjcgMTYuNjQxMiA3LjU0NzU1IDE2LjY3NiA3LjQ1NDZDMTYuNzEwOCA3LjM2MTY1IDE2LjcyNjggNy4yNjI3MiAxNi43MjMxIDcuMTYzNTRDMTYuNzE5MyA3LjA2NDM2IDE2LjY5NiA2Ljk2NjkxIDE2LjY1NDMgNi44NzY4M0MxNi42MTI2IDYuNzg2NzUgMTYuNTUzNSA2LjcwNTgzIDE2LjQ4MDQgNi42Mzg3N0wxNS4zNzI5IDUuNjIyNTJIMTUuMzY5MUMxNS4zNTE0IDUuNjE5MDIgMTUuMzMzMSA1LjYxOTAyIDE1LjMxNTQgNS42MjI1MkMxNS4yNDQ4IDUuNjM3MjIgMTUuMTgwNiA1LjY3MzQ4IDE1LjEzMTYgNS43MjYyN0MxNC45MjI3IDUuOTYzMDUgMTQuNjY4NyA2LjE1NTc5IDE0LjM4NDUgNi4yOTMyM0MxNC4xMDAyIDYuNDMwNjcgMTMuNzkxNCA2LjUxMDA1IDEzLjQ3NjEgNi41MjY3M0MxMy4xNjA4IDYuNTQzNDEgMTIuODQ1MyA2LjQ5NzA0IDEyLjU0ODEgNi4zOTAzNUMxMi4yNTEgNi4yODM2NiAxMS45NzggNi4xMTg3OSAxMS43NDUzIDUuOTA1MzdDMTEuNTEyNiA1LjY5MTk1IDExLjMyNDggNS40MzQyOCAxMS4xOTI5IDUuMTQ3NDJDMTEuMDYxIDQuODYwNTUgMTAuOTg3NiA0LjU1MDI3IDEwLjk3NyA0LjIzNDdDMTAuOTY2NCAzLjkxOTEzIDExLjAxODggMy42MDQ2MiAxMS4xMzEyIDMuMzA5NTZDMTEuMjQzNiAzLjAxNDQ5IDExLjQxMzcgMi43NDQ4MSAxMS42MzE2IDIuNTE2MjdDMTEuNjc5NyAyLjQ2MjY0IDExLjcwOTggMi4zOTUzNSAxMS43MTc5IDIuMzIzNzdDMTEuNzIwMSAyLjMwNDg4IDExLjcxODQgMi4yODU3MiAxMS43MTI5IDIuMjY3NTJMMTAuNzk2NiAxLjQyNzUyWk05LjA1Mjg2IDAuNzQyNTIyQzkuMzcxNzYgMC40MjM2MzggOS44MDE0NSAwLjI0MDE3NCAxMC4yNTIzIDAuMjMwMzkzQzEwLjcwMzIgMC4yMjA2MTEgMTEuMTQwNCAwLjM4NTI2OCAxMS40NzI5IDAuNjkwMDIyTDEyLjM4OTEgMS41MzEyN0MxMi42NjI5IDEuNzgxMjcgMTIuNzM5MSAyLjEyMjUyIDEyLjcxNDEgMi40MTM3N0MxMi42ODc5IDIuNzAxMjcgMTIuNTYxNiAyLjk4MjUyIDEyLjM2NjYgMy4xOTM3N0MxMi4yNDQ2IDMuMzI2OSAxMi4xNDk5IDMuNDgyNzYgMTIuMDg4MSAzLjY1MjQ2QzEyLjAyNjMgMy44MjIxNiAxMS45OTg1IDQuMDAyMzcgMTIuMDA2NCA0LjE4MjgxQzEyLjAxNDIgNC4zNjMyNSAxMi4wNTc1IDQuNTQwMzcgMTIuMTMzOCA0LjcwNDA3QzEyLjIxMDEgNC44Njc3OCAxMi4zMTc5IDUuMDE0ODUgMTIuNDUxIDUuMTM2OUMxMi41ODQxIDUuMjU4OTQgMTIuNzQgNS4zNTM1OCAxMi45MDk3IDUuNDE1MzlDMTMuMDc5NCA1LjQ3NzIgMTMuMjU5NiA1LjUwNDk4IDEzLjQ0IDUuNDk3MTRDMTMuNjIwNSA1LjQ4OTMxIDEzLjc5NzYgNS40NDYwMSAxMy45NjEzIDUuMzY5NzJDMTQuMTI1IDUuMjkzNDQgMTQuMjcyMSA1LjE4NTY1IDE0LjM5NDEgNS4wNTI1MkMxNC41ODc5IDQuODQwMDIgMTQuODU2NiA0LjY5MDAyIDE1LjE0MDQgNC42Mzg3N0MxNS4zMDA0IDQuNjA2NjUgMTUuNDY1NiA0LjYxMjE4IDE1LjYyMzEgNC42NTQ5MkMxNS43ODA2IDQuNjk3NjUgMTUuOTI2IDQuNzc2NDMgMTYuMDQ3OSA0Ljg4NTAyTDE3LjE1NjYgNS45MDEyN0MxNy4zMjczIDYuMDU3OSAxNy40NjUyIDYuMjQ2ODcgMTcuNTYyMyA2LjQ1NzJDMTcuNjU5NCA2LjY2NzU0IDE3LjcxMzggNi44OTUwNyAxNy43MjIzIDcuMTI2NThDMTcuNzMwOCA3LjM1ODA5IDE3LjY5MzIgNy41ODg5OSAxNy42MTE4IDcuODA1ODdDMTcuNTMwMyA4LjAyMjc2IDE3LjQwNjYgOC4yMjEzMSAxNy4yNDc5IDguMzkwMDJMOS4wMDAzNiAxNy4xNTVDOC44Mzk3NSAxNy4zMjU3IDguNjQ2NDkgMTcuNDYyNCA4LjQzMjA2IDE3LjU1NjlDOC4yMTc2MyAxNy42NTE1IDcuOTg2MzggMTcuNzAyIDcuNzUyMDUgMTcuNzA1NUM3LjUxNzcxIDE3LjcwOSA3LjI4NTA2IDE3LjY2NTQgNy4wNjc5IDE3LjU3NzNDNi44NTA3NCAxNy40ODkyIDYuNjUzNDkgMTcuMzU4MyA2LjQ4Nzg2IDE3LjE5MjVMNS4zNTc4NiAxNi4wNjI1QzQuOTI0MTEgMTUuNjI4OCA1LjAyOTExIDE1LjAwMzggNS4yNzQxMSAxNC42Mzc1QzUuNDQ5ODggMTQuMzczMSA1LjUyODcxIDE0LjA1NTkgNS40OTcyIDEzLjc0QzUuNDY1NjkgMTMuNDI0IDUuMzI1NzkgMTMuMTI4NyA1LjEwMTI1IDEyLjkwNDFDNC44NzY3MiAxMi42Nzk2IDQuNTgxMzkgMTIuNTM5NyA0LjI2NTQyIDEyLjUwODJDMy45NDk0NSAxMi40NzY3IDMuNjMyMzEgMTIuNTU1NSAzLjM2Nzg2IDEyLjczMTNDMi45OTkxMSAxMi45NzUgMi4zNzUzNiAxMy4wOCAxLjk0MTYxIDEyLjY0NUwwLjc4NDExMSAxMS40ODc1QzAuNjIxNTg5IDExLjMyNSAwLjQ5MjY2OSAxMS4xMzIxIDAuNDA0NzEyIDEwLjkxOThDMC4zMTY3NTUgMTAuNzA3NCAwLjI3MTQ4NCAxMC40Nzk4IDAuMjcxNDg0IDEwLjI1QzAuMjcxNDg0IDEwLjAyMDIgMC4zMTY3NTUgOS43OTI2MiAwLjQwNDcxMiA5LjU4MDI5QzAuNDkyNjY5IDkuMzY3OTUgMC42MjE1ODkgOS4xNzUwMyAwLjc4NDExMSA5LjAxMjUyTDkuMDUyODYgMC43NDI1MjJaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+IHt7aW5wcm9ncmVzcz8udGlja2V0SWR9fSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImlucHJvZ3Jlc3M/LnRpY2tldFR5cGUgPT09ICdyZWZyZXNodGlja2V0J1wiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTdcIiBoZWlnaHQ9XCIxNFwiIHZpZXdCb3g9XCIwIDAgMTcgMTRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNS45NDYwMiA0Ljk4ODgxTDIuNjY2MDIgNi4zMzg4MUwyLjAwNjAyIDYuMDc4ODFMMC42NjYwMTYgMi44Mzg4MUwxLjU4NjAyIDIuNDU4ODFMMi4zOTYwMiA0LjQwODgxQzIuOTM5NzcgMy4wNDgwMSAzLjkyODcyIDEuOTExNjkgNS4yMDE0NSAxLjE4NTMyQzYuNDc0MTkgMC40NTg5NTEgNy45NTU1NCAwLjE4NTQyNiA5LjQwMzc1IDAuNDA5Mzg3QzEwLjg1MiAwLjYzMzM0OSAxMi4xODE1IDEuMzQxNTcgMTMuMTc1NCAyLjQxODQ2QzE0LjE2OTIgMy40OTUzNSAxNC43Njg3IDQuODc3MzIgMTQuODc2IDYuMzM4ODFIMTMuODc2QzEzLjc2MTYgNS4wOTAwOCAxMy4yMjI0IDMuOTE4MzYgMTIuMzQ4NCAzLjAxOTE5QzExLjQ3NDMgMi4xMjAwMyAxMC4zMTg0IDEuNTQ3ODEgOS4wNzM0IDEuMzk4MDRDNy44Mjg0MiAxLjI0ODI2IDYuNTY5NzMgMS41MyA1LjUwNzM5IDIuMTk2MjJDNC40NDUwNSAyLjg2MjQ0IDMuNjQzMzIgMy44NzI4NCAzLjIzNjAyIDUuMDU4ODFMNS41NTYwMiA0LjA1ODgxTDUuOTQ2MDIgNC45ODg4MVpNMTQuODA2IDcuNjY4ODFMMTYuMTQ2IDEwLjg5ODhMMTUuMjI2IDExLjMzODhMMTQuNDA2IDkuMzM4ODFDMTMuODU4IDEwLjcwNDkgMTIuODYxOCAxMS44NDQyIDExLjU4MSAxMi41Njk2QzEwLjMwMDEgMTMuMjk1IDguODEwNzcgMTMuNTYzNCA3LjM1NzI4IDEzLjMzMDlDNS45MDM4IDEzLjA5ODMgNC41NzI1NSAxMi4zNzg2IDMuNTgyIDExLjI4OThDMi41OTE0NSAxMC4yMDA5IDIuMDAwNDYgOC44MDc3NSAxLjkwNjAyIDcuMzM4ODFIMi45MDYwMlY2LjgzODgxQzIuOTA4ODIgOC4xMjYyNyAzLjM2NDAyIDkuMzcxOCA0LjE5MjAzIDEwLjM1NzdDNS4wMjAwNSAxMS4zNDM2IDYuMTY4MjEgMTIuMDA3MSA3LjQzNTg0IDEyLjIzMjJDOC43MDM0NiAxMi40NTc0IDEwLjAwOTkgMTIuMjI5OSAxMS4xMjY4IDExLjU4OTVDMTIuMjQzNyAxMC45NDkxIDEzLjEgOS45MzY1NSAxMy41NDYgOC43Mjg4MUwxMS4yOTYgOS42NTg4MUwxMC45MDYgOC43Mzg4MUwxNC4xNTYgNy4zODg4MUwxNC44MDYgNy42Njg4MVpcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk04LjQwNjI1IDcuNTQwMDRDOC45NTg1MyA3LjU0MDA0IDkuNDA2MjUgNy4wOTIzMiA5LjQwNjI1IDYuNTQwMDRDOS40MDYyNSA1Ljk4Nzc1IDguOTU4NTMgNS41NDAwNCA4LjQwNjI1IDUuNTQwMDRDNy44NTM5NyA1LjU0MDA0IDcuNDA2MjUgNS45ODc3NSA3LjQwNjI1IDYuNTQwMDRDNy40MDYyNSA3LjA5MjMyIDcuODUzOTcgNy41NDAwNCA4LjQwNjI1IDcuNTQwMDRaXCIgZmlsbD1cIiM5OEEyQjNcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTNcIiAqbmdJZj1cImlucHJvZ3Jlc3M/Lmlzc3VlU3RhdHVzICE9PSAnbm90aWRlbnRpZmllZCdcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zODI3XzEyMDYxKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNy4yMDA2NSAxMC4zMzMzSDkuMTU2MjFWMTIuMzMzM0g3LjIwMDY1VjEwLjMzMzNaTTkuMTU2MjEgNC4zMzMyN0g3LjIwMDY1VjkuMzMzMjZIOS4xNTYyMVY0LjMzMzI3Wk0xMC42MjI5IDUuODMzMjdMOS42NDUxIDYuODMzMjdMMTIuMDg5NSA5LjMzMzI2TDE2LjAwMDcgNC44MzMyN0wxNS4wMjI5IDMuODMzMjdMMTIuMDg5NSA3LjMzMzI2TDEwLjYyMjkgNS44MzMyN1pNOC4xNzg0MyAxNC4wMzMzQzYuNzAxMDggMTQuMDMwNiA1LjI4NDk5IDEzLjQyOTIgNC4yNDAzNCAxMi4zNjA4QzMuMTk1NyAxMS4yOTI1IDIuNjA3NjggOS44NDQxOCAyLjYwNTEgOC4zMzMyNkMyLjYwNTEgNS4xOTMyNyA1LjEwODIxIDIuNjMzMjcgOC4xNzg0MyAyLjYzMzI3QzkuOTY3NzYgMi42MzMyNyAxMS41NTE4IDMuNTEzMjcgMTIuNTc4NCA0LjgzMzI3TDEzLjQ3OCAzLjkxMzI3QzEyLjgzOTUgMy4xMDUzNCAxMi4wMzE5IDIuNDU0MTUgMTEuMTE0NyAyLjAwNzY1QzEwLjE5NzYgMS41NjExNSA5LjE5NDE5IDEuMzMwNyA4LjE3ODQzIDEuMzMzMjdDNC40MDQyMSAxLjMzMzI3IDEuMzMzOTggNC40NzMyNyAxLjMzMzk4IDguMzMzMjZDMS4zMzM5OCAxMi4xOTMzIDQuNDA0MjEgMTUuMzMzMyA4LjE3ODQzIDE1LjMzMzNDMTEuOTUyNyAxNS4zMzMzIDE1LjAyMjkgMTIuMTkzMyAxNS4wMjI5IDguMzMzMjZMMTMuNTM2NyA5Ljg1MzI2QzEyLjg5MTMgMTIuMjYzMyAxMC43NDAyIDE0LjA0MzMgOC4xNzg0MyAxNC4wNDMzVjE0LjAzMzNaXCIgZmlsbD1cIiM5OEEyQjNcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzM4MjdfMTIwNjFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFpbnByb2dyZXNzLmlzT3BlblwiIChjbGljayk9XCJzZWxlY3RWaWV3KCRldmVudCxpbmRleCwnaW5wcm9ncmVzcycpXCIgY2xhc3M9XCJtcy0zXCI+IDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjE2NiAyLjVIMTguMTY2TTE4LjE2NiAyLjVWNy41TTE4LjE2NiAyLjVMMTIuMzMyNyA4LjMzMzMzTTguMTY2MDIgMTcuNUgzLjE2NjAyTTMuMTY2MDIgMTcuNVYxMi41TTMuMTY2MDIgMTcuNUw4Ljk5OTM1IDExLjY2NjdcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhaW5wcm9ncmVzcy5pc09wZW4gJiYgaW5wcm9ncmVzcz8ubm90aWZpY2F0aW9uXCIgY2xhc3M9XCJwcm9maWxlIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50cmUganVzdGlmeS1jb250ZW50LWNlbnRyZSBtcy0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvQmVsbG5vdGlmaWNhdGlvbi5wbmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8aW1nICpuZ0lmPVwiY2FyZFZpZXdcIiBjbGFzcz1cInByb2ZpbGUgbXMtM1wiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy9ncm9wbW9kYWwucG5nXCIgYWx0PVwiXCI+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzdGF0dXNJbnByb2dyZXNzPy5sZW5ndGggPT09IDAgfHwgIW5vRGF0YSAmJiAhbG9hZGluZ1wiIGNsYXNzPVwidy0xMDAgbXQtMTAgbWItMTAgbWgtNjB2aCBkLWdyaWQgdGV4dC1jZW50ZXIgbXgtYXV0b1wiPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJteC1hdXRvXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL3Rha2V0aWNrZXQuc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRha2V0aWNrZXQgbXQtMiBmdy1ib2xkXCI+Tm8gSW4tUHJvZ3Jlc3MgVGlja2V0cyA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2FkaW5nPy5pbnByb2dyZXNzXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vRGF0YT8uaW5wcm9ncmVzc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IG1oLTYwdmggZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cIm14LWF1dG9cIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvdGFrZXRpY2tldC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0YWtldGlja2V0IG10LTUgZnctYm9sZFwiPk5vIEluLVByb2dyZXNzIFRpY2tldHMgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+IFxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctMTAwIGgtMTAwIHJvdW5kZWQtMiBvdmVyZmxvdy1oaWRkZW5cIiAoY2xpY2spPVwic2VsZWN0VGlja2V0KClcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmFkZ2UtbGlnaHQtZGVmYXVsdCBweC0zIHB5LTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+Q2xvc2VkPC9zcGFuPjxzcGFuICpuZ0lmPVwic3RhdHVzQ2xvc2VkPy5sZW5ndGggPiAwICYmICFub0RhdGEuY2xvc2VkICYmICFsb2FkaW5nLmNsb3NlZFwiIGNsYXNzPVwicm91bmRlZC01IG1zLTMgcHgtMSBib3JkZXIgYm9yZGVyLWdyYXkgYm9yZGVyLWdyYXkgYmctYmFkZ2VcIj57e3N0YXR1c0Nsb3NlZD8ubGVuZ3RofX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd2JvZHkgaC0xMDAgcHgtNCBweS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbm9EYXRhLmNsb3NlZCAmJiAhbG9hZGluZy5jbG9zZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGNsb3NlZCBvZiBzdGF0dXNDbG9zZWQ7IGxldCBpbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJjbG9zZWQuaXNPcGVuID8gJ2FjdGl2ZSc6JydcIiBjbGFzcz1cImlzc3VlY2FyZCBjdXJzb3ItcG9pbnRlciB3LTEwMCBtYi01XCIgKGNsaWNrKT1cInJvdXRldG9UaWNrZXQoY2xvc2VkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjbG9zZWQ/LmlzT3BlblwiIGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmdy1zZW1pYm9sZFwiPnt7Y2xvc2VkPy5zdG9yZUlkfX08L2xhYmVsPjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZ3LXNlbWlib2xkIG0tMlwiPnt7Y2xvc2VkPy5zdG9yZU5hbWUgPyBjbG9zZWQ/LnN0b3JlTmFtZSA6Jy0tJ319PC9sYWJlbD48YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LWRlZmF1bHQgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwibWUtMlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzczMl82MDI3NylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNOCAxVjNNNCAxVjNNMS41IDVIMTAuNU0yLjUgMkg5LjVDMTAuMDUyMyAyIDEwLjUgMi40NDc3MiAxMC41IDNWMTBDMTAuNSAxMC41NTIzIDEwLjA1MjMgMTEgOS41IDExSDIuNUMxLjk0NzcyIDExIDEuNSAxMC41NTIzIDEuNSAxMFYzQzEuNSAyLjQ0NzcyIDEuOTQ3NzIgMiAyLjUgMlpcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4xXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zNzMyXzYwMjc3XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+IHt7Y2xvc2VkPy5EYXRlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNsb3NlZD8uaW5mcmFJc3N1ZVwiIFtuZ0NsYXNzXT1cImNsb3NlZD8uaW5mcmFJc3N1ZSA9PT0gJ0xpdmUnPyAnYmFkZ2UgYmFkZ2UtbGlnaHQtc3VjY2Vzcyc6JydcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXdhcm5pbmdcIj4ge3tjbG9zZWQ/LmluZnJhSXNzdWV9fSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ0eXBlID09PSdkYXRhTWlzbWF0Y2gnXCIgW25nQ2xhc3NdPVwiY2xvc2VkPy5pbmZyYUlzc3VlID09PSAnTGl2ZSc/ICdiYWRnZSBiYWRnZS1saWdodC1zdWNjZXNzJzonJ1wiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtd2FybmluZ1wiPnt7Y2xvc2VkPy5pc3N1ZVR5cGUgPT09ICdoaWdoY291bnQnID8gJ0hpZ2ggQ291bnQnIDogKGNsb3NlZD8uaXNzdWVUeXBlID09PSAnbG93Y291bnQnID8gJ0xvdyBDb3VudCcgOiAnJyl9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIiBkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjbG9zZWQ/Lm5vdGlmaWNhdGlvblwiIGNsYXNzPVwicHJvZmlsZSBkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmUgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL0JlbGxub3RpZmljYXRpb24ucG5nXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAoY2xpY2spPVwic2VsZWN0VmlldygkZXZlbnQsaW5kZXgsJ2Nsb3NlZCcpXCI+IDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMuMTY2IDIuNUgxOC4xNjZNMTguMTY2IDIuNVY3LjVNMTguMTY2IDIuNUwxMi4zMzI3IDguMzMzMzNNOC4xNjYwMiAxNy41SDMuMTY2MDJNMy4xNjYwMiAxNy41VjEyLjVNMy4xNjYwMiAxNy41TDguOTk5MzUgMTEuNjY2N1wiIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjY2NjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gdGV4dC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj48c3ZnIGNsYXNzPVwibWUtMlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEwLjc5NjYgMS40Mjc1MkMxMC42NTQxIDEuMjk2ODEgMTAuNDY2NyAxLjIyNjE3IDEwLjI3MzMgMS4yMzAzN0MxMC4wOCAxLjIzNDU2IDkuODk1OCAxLjMxMzI1IDkuNzU5MTEgMS40NTAwMkwxLjQ4OTExIDkuNzIwMDJDMS40MTkzOCA5Ljc4OTY4IDEuMzY0MDYgOS44NzIzOSAxLjMyNjMyIDkuOTYzNDRDMS4yODg1NyAxMC4wNTQ1IDEuMjY5MTUgMTAuMTUyMSAxLjI2OTE1IDEwLjI1MDZDMS4yNjkxNSAxMC4zNDkyIDEuMjg4NTcgMTAuNDQ2OCAxLjMyNjMyIDEwLjUzNzlDMS4zNjQwNiAxMC42Mjg5IDEuNDE5MzggMTAuNzExNiAxLjQ4OTExIDEwLjc4MTNMMi42NDY2MSAxMS45Mzg4QzIuNjU2MzIgMTEuOTQxOCAyLjY2NjQ3IDExLjk0MyAyLjY3NjYxIDExLjk0MjVDMi43MTQxMSAxMS45NDI1IDIuNzY0MTEgMTEuOTI4OCAyLjgxMTYxIDExLjg5NzVDMy4yNjg0NSAxMS41OTI3IDMuODE2OCAxMS40NTU3IDQuMzYzMzEgMTEuNTA5N0M0LjkwOTgzIDExLjU2MzcgNS40MjA3MyAxMS44MDU1IDUuODA5MDUgMTIuMTkzOEM2LjE5NzM4IDEyLjU4MjIgNi40MzkxMyAxMy4wOTMxIDYuNDkzMTYgMTMuNjM5NkM2LjU0NzE4IDE0LjE4NjEgNi40MTAxNCAxNC43MzQ0IDYuMTA1MzYgMTUuMTkxM0M2LjA3NzkyIDE1LjIzMTEgNi4wNjIzMSAxNS4yNzc5IDYuMDYwMzYgMTUuMzI2M0M2LjA2MDM2IDE1LjM0MjUgNi4wNjI4NiAxNS4zNTEzIDYuMDY0MTEgMTUuMzU1TDcuMTk0MTEgMTYuNDg2M0M3LjI2NTEyIDE2LjU1NzQgNy4zNDk3MSAxNi42MTM2IDcuNDQyODUgMTYuNjUxNEM3LjUzNTk5IDE2LjY4OTIgNy42MzU3OSAxNi43MDc5IDcuNzM2MyAxNi43MDY0QzcuODM2ODIgMTYuNzA0OSA3LjkzNiAxNi42ODMyIDguMDI3OTYgMTYuNjQyNkM4LjExOTkyIDE2LjYwMiA4LjIwMjc4IDE2LjU0MzMgOC4yNzE2MSAxNi40N0wxNi41MjA0IDcuNzA1MDJDMTYuNTg4MyA3LjYzMjY3IDE2LjY0MTIgNy41NDc1NSAxNi42NzYgNy40NTQ2QzE2LjcxMDggNy4zNjE2NSAxNi43MjY4IDcuMjYyNzIgMTYuNzIzMSA3LjE2MzU0QzE2LjcxOTMgNy4wNjQzNiAxNi42OTYgNi45NjY5MSAxNi42NTQzIDYuODc2ODNDMTYuNjEyNiA2Ljc4Njc1IDE2LjU1MzUgNi43MDU4MyAxNi40ODA0IDYuNjM4NzdMMTUuMzcyOSA1LjYyMjUySDE1LjM2OTFDMTUuMzUxNCA1LjYxOTAyIDE1LjMzMzEgNS42MTkwMiAxNS4zMTU0IDUuNjIyNTJDMTUuMjQ0OCA1LjYzNzIyIDE1LjE4MDYgNS42NzM0OCAxNS4xMzE2IDUuNzI2MjdDMTQuOTIyNyA1Ljk2MzA1IDE0LjY2ODcgNi4xNTU3OSAxNC4zODQ1IDYuMjkzMjNDMTQuMTAwMiA2LjQzMDY3IDEzLjc5MTQgNi41MTAwNSAxMy40NzYxIDYuNTI2NzNDMTMuMTYwOCA2LjU0MzQxIDEyLjg0NTMgNi40OTcwNCAxMi41NDgxIDYuMzkwMzVDMTIuMjUxIDYuMjgzNjYgMTEuOTc4IDYuMTE4NzkgMTEuNzQ1MyA1LjkwNTM3QzExLjUxMjYgNS42OTE5NSAxMS4zMjQ4IDUuNDM0MjggMTEuMTkyOSA1LjE0NzQyQzExLjA2MSA0Ljg2MDU1IDEwLjk4NzYgNC41NTAyNyAxMC45NzcgNC4yMzQ3QzEwLjk2NjQgMy45MTkxMyAxMS4wMTg4IDMuNjA0NjIgMTEuMTMxMiAzLjMwOTU2QzExLjI0MzYgMy4wMTQ0OSAxMS40MTM3IDIuNzQ0ODEgMTEuNjMxNiAyLjUxNjI3QzExLjY3OTcgMi40NjI2NCAxMS43MDk4IDIuMzk1MzUgMTEuNzE3OSAyLjMyMzc3QzExLjcyMDEgMi4zMDQ4OCAxMS43MTg0IDIuMjg1NzIgMTEuNzEyOSAyLjI2NzUyTDEwLjc5NjYgMS40Mjc1MlpNOS4wNTI4NiAwLjc0MjUyMkM5LjM3MTc2IDAuNDIzNjM4IDkuODAxNDUgMC4yNDAxNzQgMTAuMjUyMyAwLjIzMDM5M0MxMC43MDMyIDAuMjIwNjExIDExLjE0MDQgMC4zODUyNjggMTEuNDcyOSAwLjY5MDAyMkwxMi4zODkxIDEuNTMxMjdDMTIuNjYyOSAxLjc4MTI3IDEyLjczOTEgMi4xMjI1MiAxMi43MTQxIDIuNDEzNzdDMTIuNjg3OSAyLjcwMTI3IDEyLjU2MTYgMi45ODI1MiAxMi4zNjY2IDMuMTkzNzdDMTIuMjQ0NiAzLjMyNjkgMTIuMTQ5OSAzLjQ4Mjc2IDEyLjA4ODEgMy42NTI0NkMxMi4wMjYzIDMuODIyMTYgMTEuOTk4NSA0LjAwMjM3IDEyLjAwNjQgNC4xODI4MUMxMi4wMTQyIDQuMzYzMjUgMTIuMDU3NSA0LjU0MDM3IDEyLjEzMzggNC43MDQwN0MxMi4yMTAxIDQuODY3NzggMTIuMzE3OSA1LjAxNDg1IDEyLjQ1MSA1LjEzNjlDMTIuNTg0MSA1LjI1ODk0IDEyLjc0IDUuMzUzNTggMTIuOTA5NyA1LjQxNTM5QzEzLjA3OTQgNS40NzcyIDEzLjI1OTYgNS41MDQ5OCAxMy40NCA1LjQ5NzE0QzEzLjYyMDUgNS40ODkzMSAxMy43OTc2IDUuNDQ2MDEgMTMuOTYxMyA1LjM2OTcyQzE0LjEyNSA1LjI5MzQ0IDE0LjI3MjEgNS4xODU2NSAxNC4zOTQxIDUuMDUyNTJDMTQuNTg3OSA0Ljg0MDAyIDE0Ljg1NjYgNC42OTAwMiAxNS4xNDA0IDQuNjM4NzdDMTUuMzAwNCA0LjYwNjY1IDE1LjQ2NTYgNC42MTIxOCAxNS42MjMxIDQuNjU0OTJDMTUuNzgwNiA0LjY5NzY1IDE1LjkyNiA0Ljc3NjQzIDE2LjA0NzkgNC44ODUwMkwxNy4xNTY2IDUuOTAxMjdDMTcuMzI3MyA2LjA1NzkgMTcuNDY1MiA2LjI0Njg3IDE3LjU2MjMgNi40NTcyQzE3LjY1OTQgNi42Njc1NCAxNy43MTM4IDYuODk1MDcgMTcuNzIyMyA3LjEyNjU4QzE3LjczMDggNy4zNTgwOSAxNy42OTMyIDcuNTg4OTkgMTcuNjExOCA3LjgwNTg3QzE3LjUzMDMgOC4wMjI3NiAxNy40MDY2IDguMjIxMzEgMTcuMjQ3OSA4LjM5MDAyTDkuMDAwMzYgMTcuMTU1QzguODM5NzUgMTcuMzI1NyA4LjY0NjQ5IDE3LjQ2MjQgOC40MzIwNiAxNy41NTY5QzguMjE3NjMgMTcuNjUxNSA3Ljk4NjM4IDE3LjcwMiA3Ljc1MjA1IDE3LjcwNTVDNy41MTc3MSAxNy43MDkgNy4yODUwNiAxNy42NjU0IDcuMDY3OSAxNy41NzczQzYuODUwNzQgMTcuNDg5MiA2LjY1MzQ5IDE3LjM1ODMgNi40ODc4NiAxNy4xOTI1TDUuMzU3ODYgMTYuMDYyNUM0LjkyNDExIDE1LjYyODggNS4wMjkxMSAxNS4wMDM4IDUuMjc0MTEgMTQuNjM3NUM1LjQ0OTg4IDE0LjM3MzEgNS41Mjg3MSAxNC4wNTU5IDUuNDk3MiAxMy43NEM1LjQ2NTY5IDEzLjQyNCA1LjMyNTc5IDEzLjEyODcgNS4xMDEyNSAxMi45MDQxQzQuODc2NzIgMTIuNjc5NiA0LjU4MTM5IDEyLjUzOTcgNC4yNjU0MiAxMi41MDgyQzMuOTQ5NDUgMTIuNDc2NyAzLjYzMjMxIDEyLjU1NTUgMy4zNjc4NiAxMi43MzEzQzIuOTk5MTEgMTIuOTc1IDIuMzc1MzYgMTMuMDggMS45NDE2MSAxMi42NDVMMC43ODQxMTEgMTEuNDg3NUMwLjYyMTU4OSAxMS4zMjUgMC40OTI2NjkgMTEuMTMyMSAwLjQwNDcxMiAxMC45MTk4QzAuMzE2NzU1IDEwLjcwNzQgMC4yNzE0ODQgMTAuNDc5OCAwLjI3MTQ4NCAxMC4yNUMwLjI3MTQ4NCAxMC4wMjAyIDAuMzE2NzU1IDkuNzkyNjIgMC40MDQ3MTIgOS41ODAyOUMwLjQ5MjY2OSA5LjM2Nzk1IDAuNjIxNTg5IDkuMTc1MDMgMC43ODQxMTEgOS4wMTI1Mkw5LjA1Mjg2IDAuNzQyNTIyWlwiIGZpbGw9XCIjNjY3MDg1XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNzk2NiAxLjQyNzUyQzEwLjY1NDEgMS4yOTY4MSAxMC40NjY3IDEuMjI2MTcgMTAuMjczMyAxLjIzMDM3QzEwLjA4IDEuMjM0NTYgOS44OTU4IDEuMzEzMjUgOS43NTkxMSAxLjQ1MDAyTDEuNDg5MTEgOS43MjAwMkMxLjQxOTM4IDkuNzg5NjggMS4zNjQwNiA5Ljg3MjM5IDEuMzI2MzIgOS45NjM0NEMxLjI4ODU3IDEwLjA1NDUgMS4yNjkxNSAxMC4xNTIxIDEuMjY5MTUgMTAuMjUwNkMxLjI2OTE1IDEwLjM0OTIgMS4yODg1NyAxMC40NDY4IDEuMzI2MzIgMTAuNTM3OUMxLjM2NDA2IDEwLjYyODkgMS40MTkzOCAxMC43MTE2IDEuNDg5MTEgMTAuNzgxM0wyLjY0NjYxIDExLjkzODhDMi42NTYzMiAxMS45NDE4IDIuNjY2NDcgMTEuOTQzIDIuNjc2NjEgMTEuOTQyNUMyLjcxNDExIDExLjk0MjUgMi43NjQxMSAxMS45Mjg4IDIuODExNjEgMTEuODk3NUMzLjI2ODQ1IDExLjU5MjcgMy44MTY4IDExLjQ1NTcgNC4zNjMzMSAxMS41MDk3QzQuOTA5ODMgMTEuNTYzNyA1LjQyMDczIDExLjgwNTUgNS44MDkwNSAxMi4xOTM4QzYuMTk3MzggMTIuNTgyMiA2LjQzOTEzIDEzLjA5MzEgNi40OTMxNiAxMy42Mzk2QzYuNTQ3MTggMTQuMTg2MSA2LjQxMDE0IDE0LjczNDQgNi4xMDUzNiAxNS4xOTEzQzYuMDc3OTIgMTUuMjMxMSA2LjA2MjMxIDE1LjI3NzkgNi4wNjAzNiAxNS4zMjYzQzYuMDYwMzYgMTUuMzQyNSA2LjA2Mjg2IDE1LjM1MTMgNi4wNjQxMSAxNS4zNTVMNy4xOTQxMSAxNi40ODYzQzcuMjY1MTIgMTYuNTU3NCA3LjM0OTcxIDE2LjYxMzYgNy40NDI4NSAxNi42NTE0QzcuNTM1OTkgMTYuNjg5MiA3LjYzNTc5IDE2LjcwNzkgNy43MzYzIDE2LjcwNjRDNy44MzY4MiAxNi43MDQ5IDcuOTM2IDE2LjY4MzIgOC4wMjc5NiAxNi42NDI2QzguMTE5OTIgMTYuNjAyIDguMjAyNzggMTYuNTQzMyA4LjI3MTYxIDE2LjQ3TDE2LjUyMDQgNy43MDUwMkMxNi41ODgzIDcuNjMyNjcgMTYuNjQxMiA3LjU0NzU1IDE2LjY3NiA3LjQ1NDZDMTYuNzEwOCA3LjM2MTY1IDE2LjcyNjggNy4yNjI3MiAxNi43MjMxIDcuMTYzNTRDMTYuNzE5MyA3LjA2NDM2IDE2LjY5NiA2Ljk2NjkxIDE2LjY1NDMgNi44NzY4M0MxNi42MTI2IDYuNzg2NzUgMTYuNTUzNSA2LjcwNTgzIDE2LjQ4MDQgNi42Mzg3N0wxNS4zNzI5IDUuNjIyNTJIMTUuMzY5MUMxNS4zNTE0IDUuNjE5MDIgMTUuMzMzMSA1LjYxOTAyIDE1LjMxNTQgNS42MjI1MkMxNS4yNDQ4IDUuNjM3MjIgMTUuMTgwNiA1LjY3MzQ4IDE1LjEzMTYgNS43MjYyN0MxNC45MjI3IDUuOTYzMDUgMTQuNjY4NyA2LjE1NTc5IDE0LjM4NDUgNi4yOTMyM0MxNC4xMDAyIDYuNDMwNjcgMTMuNzkxNCA2LjUxMDA1IDEzLjQ3NjEgNi41MjY3M0MxMy4xNjA4IDYuNTQzNDEgMTIuODQ1MyA2LjQ5NzA0IDEyLjU0ODEgNi4zOTAzNUMxMi4yNTEgNi4yODM2NiAxMS45NzggNi4xMTg3OSAxMS43NDUzIDUuOTA1MzdDMTEuNTEyNiA1LjY5MTk1IDExLjMyNDggNS40MzQyOCAxMS4xOTI5IDUuMTQ3NDJDMTEuMDYxIDQuODYwNTUgMTAuOTg3NiA0LjU1MDI3IDEwLjk3NyA0LjIzNDdDMTAuOTY2NCAzLjkxOTEzIDExLjAxODggMy42MDQ2MiAxMS4xMzEyIDMuMzA5NTZDMTEuMjQzNiAzLjAxNDQ5IDExLjQxMzcgMi43NDQ4MSAxMS42MzE2IDIuNTE2MjdDMTEuNjc5NyAyLjQ2MjY0IDExLjcwOTggMi4zOTUzNSAxMS43MTc5IDIuMzIzNzdDMTEuNzIwMSAyLjMwNDg4IDExLjcxODQgMi4yODU3MiAxMS43MTI5IDIuMjY3NTJMMTAuNzk2NiAxLjQyNzUyWk05LjA1Mjg2IDAuNzQyNTIyQzkuMzcxNzYgMC40MjM2MzggOS44MDE0NSAwLjI0MDE3NCAxMC4yNTIzIDAuMjMwMzkzQzEwLjcwMzIgMC4yMjA2MTEgMTEuMTQwNCAwLjM4NTI2OCAxMS40NzI5IDAuNjkwMDIyTDEyLjM4OTEgMS41MzEyN0MxMi42NjI5IDEuNzgxMjcgMTIuNzM5MSAyLjEyMjUyIDEyLjcxNDEgMi40MTM3N0MxMi42ODc5IDIuNzAxMjcgMTIuNTYxNiAyLjk4MjUyIDEyLjM2NjYgMy4xOTM3N0MxMi4yNDQ2IDMuMzI2OSAxMi4xNDk5IDMuNDgyNzYgMTIuMDg4MSAzLjY1MjQ2QzEyLjAyNjMgMy44MjIxNiAxMS45OTg1IDQuMDAyMzcgMTIuMDA2NCA0LjE4MjgxQzEyLjAxNDIgNC4zNjMyNSAxMi4wNTc1IDQuNTQwMzcgMTIuMTMzOCA0LjcwNDA3QzEyLjIxMDEgNC44Njc3OCAxMi4zMTc5IDUuMDE0ODUgMTIuNDUxIDUuMTM2OUMxMi41ODQxIDUuMjU4OTQgMTIuNzQgNS4zNTM1OCAxMi45MDk3IDUuNDE1MzlDMTMuMDc5NCA1LjQ3NzIgMTMuMjU5NiA1LjUwNDk4IDEzLjQ0IDUuNDk3MTRDMTMuNjIwNSA1LjQ4OTMxIDEzLjc5NzYgNS40NDYwMSAxMy45NjEzIDUuMzY5NzJDMTQuMTI1IDUuMjkzNDQgMTQuMjcyMSA1LjE4NTY1IDE0LjM5NDEgNS4wNTI1MkMxNC41ODc5IDQuODQwMDIgMTQuODU2NiA0LjY5MDAyIDE1LjE0MDQgNC42Mzg3N0MxNS4zMDA0IDQuNjA2NjUgMTUuNDY1NiA0LjYxMjE4IDE1LjYyMzEgNC42NTQ5MkMxNS43ODA2IDQuNjk3NjUgMTUuOTI2IDQuNzc2NDMgMTYuMDQ3OSA0Ljg4NTAyTDE3LjE1NjYgNS45MDEyN0MxNy4zMjczIDYuMDU3OSAxNy40NjUyIDYuMjQ2ODcgMTcuNTYyMyA2LjQ1NzJDMTcuNjU5NCA2LjY2NzU0IDE3LjcxMzggNi44OTUwNyAxNy43MjIzIDcuMTI2NThDMTcuNzMwOCA3LjM1ODA5IDE3LjY5MzIgNy41ODg5OSAxNy42MTE4IDcuODA1ODdDMTcuNTMwMyA4LjAyMjc2IDE3LjQwNjYgOC4yMjEzMSAxNy4yNDc5IDguMzkwMDJMOS4wMDAzNiAxNy4xNTVDOC44Mzk3NSAxNy4zMjU3IDguNjQ2NDkgMTcuNDYyNCA4LjQzMjA2IDE3LjU1NjlDOC4yMTc2MyAxNy42NTE1IDcuOTg2MzggMTcuNzAyIDcuNzUyMDUgMTcuNzA1NUM3LjUxNzcxIDE3LjcwOSA3LjI4NTA2IDE3LjY2NTQgNy4wNjc5IDE3LjU3NzNDNi44NTA3NCAxNy40ODkyIDYuNjUzNDkgMTcuMzU4MyA2LjQ4Nzg2IDE3LjE5MjVMNS4zNTc4NiAxNi4wNjI1QzQuOTI0MTEgMTUuNjI4OCA1LjAyOTExIDE1LjAwMzggNS4yNzQxMSAxNC42Mzc1QzUuNDQ5ODggMTQuMzczMSA1LjUyODcxIDE0LjA1NTkgNS40OTcyIDEzLjc0QzUuNDY1NjkgMTMuNDI0IDUuMzI1NzkgMTMuMTI4NyA1LjEwMTI1IDEyLjkwNDFDNC44NzY3MiAxMi42Nzk2IDQuNTgxMzkgMTIuNTM5NyA0LjI2NTQyIDEyLjUwODJDMy45NDk0NSAxMi40NzY3IDMuNjMyMzEgMTIuNTU1NSAzLjM2Nzg2IDEyLjczMTNDMi45OTkxMSAxMi45NzUgMi4zNzUzNiAxMy4wOCAxLjk0MTYxIDEyLjY0NUwwLjc4NDExMSAxMS40ODc1QzAuNjIxNTg5IDExLjMyNSAwLjQ5MjY2OSAxMS4xMzIxIDAuNDA0NzEyIDEwLjkxOThDMC4zMTY3NTUgMTAuNzA3NCAwLjI3MTQ4NCAxMC40Nzk4IDAuMjcxNDg0IDEwLjI1QzAuMjcxNDg0IDEwLjAyMDIgMC4zMTY3NTUgOS43OTI2MiAwLjQwNDcxMiA5LjU4MDI5QzAuNDkyNjY5IDkuMzY3OTUgMC42MjE1ODkgOS4xNzUwMyAwLjc4NDExMSA5LjAxMjUyTDkuMDUyODYgMC43NDI1MjJaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4ge3tjbG9zZWQudGlja2V0SWR9fSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY2xvc2VkPy50aWNrZXRUeXBlID09PSAncmVmcmVzaHRpY2tldCdcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE3XCIgaGVpZ2h0PVwiMTRcIiB2aWV3Qm94PVwiMCAwIDE3IDE0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNS45NDYwMiA0Ljk4ODgxTDIuNjY2MDIgNi4zMzg4MUwyLjAwNjAyIDYuMDc4ODFMMC42NjYwMTYgMi44Mzg4MUwxLjU4NjAyIDIuNDU4ODFMMi4zOTYwMiA0LjQwODgxQzIuOTM5NzcgMy4wNDgwMSAzLjkyODcyIDEuOTExNjkgNS4yMDE0NSAxLjE4NTMyQzYuNDc0MTkgMC40NTg5NTEgNy45NTU1NCAwLjE4NTQyNiA5LjQwMzc1IDAuNDA5Mzg3QzEwLjg1MiAwLjYzMzM0OSAxMi4xODE1IDEuMzQxNTcgMTMuMTc1NCAyLjQxODQ2QzE0LjE2OTIgMy40OTUzNSAxNC43Njg3IDQuODc3MzIgMTQuODc2IDYuMzM4ODFIMTMuODc2QzEzLjc2MTYgNS4wOTAwOCAxMy4yMjI0IDMuOTE4MzYgMTIuMzQ4NCAzLjAxOTE5QzExLjQ3NDMgMi4xMjAwMyAxMC4zMTg0IDEuNTQ3ODEgOS4wNzM0IDEuMzk4MDRDNy44Mjg0MiAxLjI0ODI2IDYuNTY5NzMgMS41MyA1LjUwNzM5IDIuMTk2MjJDNC40NDUwNSAyLjg2MjQ0IDMuNjQzMzIgMy44NzI4NCAzLjIzNjAyIDUuMDU4ODFMNS41NTYwMiA0LjA1ODgxTDUuOTQ2MDIgNC45ODg4MVpNMTQuODA2IDcuNjY4ODFMMTYuMTQ2IDEwLjg5ODhMMTUuMjI2IDExLjMzODhMMTQuNDA2IDkuMzM4ODFDMTMuODU4IDEwLjcwNDkgMTIuODYxOCAxMS44NDQyIDExLjU4MSAxMi41Njk2QzEwLjMwMDEgMTMuMjk1IDguODEwNzcgMTMuNTYzNCA3LjM1NzI4IDEzLjMzMDlDNS45MDM4IDEzLjA5ODMgNC41NzI1NSAxMi4zNzg2IDMuNTgyIDExLjI4OThDMi41OTE0NSAxMC4yMDA5IDIuMDAwNDYgOC44MDc3NSAxLjkwNjAyIDcuMzM4ODFIMi45MDYwMlY2LjgzODgxQzIuOTA4ODIgOC4xMjYyNyAzLjM2NDAyIDkuMzcxOCA0LjE5MjAzIDEwLjM1NzdDNS4wMjAwNSAxMS4zNDM2IDYuMTY4MjEgMTIuMDA3MSA3LjQzNTg0IDEyLjIzMjJDOC43MDM0NiAxMi40NTc0IDEwLjAwOTkgMTIuMjI5OSAxMS4xMjY4IDExLjU4OTVDMTIuMjQzNyAxMC45NDkxIDEzLjEgOS45MzY1NSAxMy41NDYgOC43Mjg4MUwxMS4yOTYgOS42NTg4MUwxMC45MDYgOC43Mzg4MUwxNC4xNTYgNy4zODg4MUwxNC44MDYgNy42Njg4MVpcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTguNDA2MjUgNy41NDAwNEM4Ljk1ODUzIDcuNTQwMDQgOS40MDYyNSA3LjA5MjMyIDkuNDA2MjUgNi41NDAwNEM5LjQwNjI1IDUuOTg3NzUgOC45NTg1MyA1LjU0MDA0IDguNDA2MjUgNS41NDAwNEM3Ljg1Mzk3IDUuNTQwMDQgNy40MDYyNSA1Ljk4Nzc1IDcuNDA2MjUgNi41NDAwNEM3LjQwNjI1IDcuMDkyMzIgNy44NTM5NyA3LjU0MDA0IDguNDA2MjUgNy41NDAwNFpcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY2xvc2VkPy5pc3N1ZVN0YXR1cyAhPT0gJ25vdGlkZW50aWZpZWQnXCIgY2xhc3M9XCJtcy0zXCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zODI3XzEyMDYxKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03LjIwMDY1IDEwLjMzMzNIOS4xNTYyMVYxMi4zMzMzSDcuMjAwNjVWMTAuMzMzM1pNOS4xNTYyMSA0LjMzMzI3SDcuMjAwNjVWOS4zMzMyNkg5LjE1NjIxVjQuMzMzMjdaTTEwLjYyMjkgNS44MzMyN0w5LjY0NTEgNi44MzMyN0wxMi4wODk1IDkuMzMzMjZMMTYuMDAwNyA0LjgzMzI3TDE1LjAyMjkgMy44MzMyN0wxMi4wODk1IDcuMzMzMjZMMTAuNjIyOSA1LjgzMzI3Wk04LjE3ODQzIDE0LjAzMzNDNi43MDEwOCAxNC4wMzA2IDUuMjg0OTkgMTMuNDI5MiA0LjI0MDM0IDEyLjM2MDhDMy4xOTU3IDExLjI5MjUgMi42MDc2OCA5Ljg0NDE4IDIuNjA1MSA4LjMzMzI2QzIuNjA1MSA1LjE5MzI3IDUuMTA4MjEgMi42MzMyNyA4LjE3ODQzIDIuNjMzMjdDOS45Njc3NiAyLjYzMzI3IDExLjU1MTggMy41MTMyNyAxMi41Nzg0IDQuODMzMjdMMTMuNDc4IDMuOTEzMjdDMTIuODM5NSAzLjEwNTM0IDEyLjAzMTkgMi40NTQxNSAxMS4xMTQ3IDIuMDA3NjVDMTAuMTk3NiAxLjU2MTE1IDkuMTk0MTkgMS4zMzA3IDguMTc4NDMgMS4zMzMyN0M0LjQwNDIxIDEuMzMzMjcgMS4zMzM5OCA0LjQ3MzI3IDEuMzMzOTggOC4zMzMyNkMxLjMzMzk4IDEyLjE5MzMgNC40MDQyMSAxNS4zMzMzIDguMTc4NDMgMTUuMzMzM0MxMS45NTI3IDE1LjMzMzMgMTUuMDIyOSAxMi4xOTMzIDE1LjAyMjkgOC4zMzMyNkwxMy41MzY3IDkuODUzMjZDMTIuODkxMyAxMi4yNjMzIDEwLjc0MDIgMTQuMDQzMyA4LjE3ODQzIDE0LjA0MzNWMTQuMDMzM1pcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzgyN18xMjA2MVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFjbG9zZWQuaXNPcGVuXCIgKGNsaWNrKT1cInNlbGVjdFZpZXcoJGV2ZW50LGluZGV4LCdjbG9zZWQnKVwiIGNsYXNzPVwibXMtM1wiPiA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIxXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIxIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjE2NiAyLjVIMTguMTY2TTE4LjE2NiAyLjVWNy41TTE4LjE2NiAyLjVMMTIuMzMyNyA4LjMzMzMzTTguMTY2MDIgMTcuNUgzLjE2NjAyTTMuMTY2MDIgMTcuNVYxMi41TTMuMTY2MDIgMTcuNUw4Ljk5OTM1IDExLjY2NjdcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWNsb3NlZC5pc09wZW4gJiYgY2xvc2VkPy5ub3RpZmljYXRpb25cIiBjbGFzcz1cInByb2ZpbGUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRyZSBqdXN0aWZ5LWNvbnRlbnQtY2VudHJlIG1zLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL0JlbGxub3RpZmljYXRpb24ucG5nXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxpbWcgKm5nSWY9XCJjYXJkVmlld1wiIGNsYXNzPVwicHJvZmlsZSBtcy0zXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL2dyb3Btb2RhbC5wbmdcIiBhbHQ9XCJcIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzdGF0dXNDbG9zZWQ/Lmxlbmd0aCA9PT0gMCB8fCAhbm9EYXRhICYmICFsb2FkaW5nXCIgY2xhc3M9XCJ3LTEwMCBtdC0xMCBtYi0xMCBtaC02MHZoIGQtZ3JpZCB0ZXh0LWNlbnRlciBteC1hdXRvXCI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJteC1hdXRvXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL3Rha2V0aWNrZXQuc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0YWtldGlja2V0IG10LTUgZnctYm9sZFwiPk5vIENsb3NlZCBUaWNrZXRzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9hZGluZz8uY2xvc2VkXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJub0RhdGE/LmNsb3NlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyByb3dib2R5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgbWgtNjB2aCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJteC1hdXRvXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL3Rha2V0aWNrZXQuc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGFrZXRpY2tldCBtdC01IGZ3LWJvbGRcIj5ObyBDbG9zZWQgVGlja2V0cyA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPiBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj4gXHJcbjwvZGl2PlxyXG48ZGl2ICpuZ0lmPVwidXNlckRhdGEgPT09ICdIaXN0b3J5J1wiPlxyXG48ZGl2ICpuZ0lmPVwidHlwZSA9PT0gJ2luc3RhbGxhdGlvbicgfHwgdHlwZSA9PT0gJ2luZnJhJyB8fCB0eXBlID09PSAnZGF0YU1pc21hdGNoJ1wiIGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgIDxkaXYgKm5nSWY9XCIhaGlzdG9yeUxvYWRpbmcgJiYgIWhpc3RvcnlOb2RhdGFcIj5cclxuICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1yZXNwb25zaXZlXCI+XHJcbiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIGJvdHRvbS1ib3JkZXIgdGV4dC1ub3dyYXBcIj5cclxuICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnaXNzdWVEYXRlJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZWQgb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdpc3N1ZURhdGUnIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IC0xID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ3RpY2tldElkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpY2tldCBJRFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAndGlja2V0SWQnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAndGlja2V0SWQnIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICd0aWNrZXRJZCcgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICd0aWNrZXRJZCcgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ3RpY2tldElkJyAmJiBzb3J0QnkgIT09IC0xID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ2NsaWVudE5hbWUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQnJhbmQgTmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnY2xpZW50TmFtZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdjbGllbnROYW1lJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnROYW1lJyAmJiBzb3J0QnkgIT09IDEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2NsaWVudE5hbWUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnROYW1lJyAmJiBzb3J0QnkgIT09IC0xID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ2NsaWVudElkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJyYW5kIElEXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnRJZCcgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdjbGllbnRJZCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnY2xpZW50SWQnICYmIHNvcnRCeSAhPT0gMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnY2xpZW50SWQnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnRJZCcgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdzdG9yZU5hbWUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgTmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVOYW1lJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ3N0b3JlTmFtZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVOYW1lJyAmJiBzb3J0QnkgIT09IDEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlTmFtZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlTmFtZScgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdzdG9yZUlkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIElEXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdzdG9yZUlkJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ3N0b3JlSWQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlSWQnICYmIHNvcnRCeSAhPT0gMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVJZCcgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlSWQnICYmIHNvcnRCeSAhPT0gLTEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cInR5cGUgPT09ICdpbmZyYScgfHwgdHlwZSA9PT0naW5zdGFsbGF0aW9uJ1wiPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdpc3N1ZURhdGUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgSXNzdWUgSWRlbnRpZmllZCBvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2lzc3VlRGF0ZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IDEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwidHlwZSA9PT0gJ2RhdGFNaXNtYXRjaCdcIj48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnaXNzdWVEYXRlJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIElzc3VlIGRhdGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdpc3N1ZURhdGUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gLTEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnaXNzdWVDbG9zZWREYXRlJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsb3NlZCBvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlQ2xvc2VkRGF0ZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdpc3N1ZUNsb3NlZERhdGUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlQ2xvc2VkRGF0ZScgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZUNsb3NlZERhdGUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZUNsb3NlZERhdGUnICYmIHNvcnRCeSAhPT0gLTEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwidHlwZSA9PT0gJ2luZnJhJyB8fCB0eXBlID09PSdpbnN0YWxsYXRpb24nXCI+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ2luZnJhSXNzdWUnKVwiPklzc3VlIFR5cGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2luZnJhSXNzdWUnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnaW5mcmFJc3N1ZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaW5mcmFJc3N1ZScgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpbmZyYUlzc3VlJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaW5mcmFJc3N1ZScgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJ0eXBlID09PSAnZGF0YU1pc21hdGNoJ1wiPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdpc3N1ZVR5cGUnKVwiPklzc3VlIFR5cGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlVHlwZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdpc3N1ZVR5cGUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlVHlwZScgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZVR5cGUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZVR5cGUnICYmIHNvcnRCeSAhPT0gLTEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICA8dHIgKm5nRm9yPVwibGV0IGhpc3Rvcnkgb2Ygd29ya0hpc3RvcnlUYWJsZSA7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8uaXNzdWVEYXRlfGN1c3RvbURhdGVGb3JtYXR9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2hpc3Rvcnk/LnRpY2tldElkID8gaGlzdG9yeT8udGlja2V0SWQgOictLSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWdyaWQgbXMtMyBjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJyb3V0ZXRvVGlja2V0KGhpc3RvcnkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXByaW1hcnkgbWItMSB0ZXh0LWNhcGl0YWxpemVcIj57e2hpc3Rvcnk/LmNsaWVudE5hbWUgPyBoaXN0b3J5Py5jbGllbnROYW1lIDogJy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAge3toaXN0b3J5Py5jbGllbnRJZCA/IGhpc3Rvcnk/LmNsaWVudElkIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZ3JpZCBtcy0zIGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInJvdXRldG9UaWNrZXQoaGlzdG9yeSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtcHJpbWFyeSBtYi0xXCI+e3toaXN0b3J5Py5zdG9yZU5hbWUgPyBoaXN0b3J5Py5zdG9yZU5hbWUgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2hpc3Rvcnk/LnN0b3JlSWQgPyBoaXN0b3J5Py5zdG9yZUlkIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInR5cGUgPT09ICdpbmZyYScgfHwgdHlwZSA9PT0naW5zdGFsbGF0aW9uJ1wiPnt7aGlzdG9yeT8uaXNzdWVJZGVudGlmaWVkRGF0ZT8oaGlzdG9yeT8uaXNzdWVJZGVudGlmaWVkRGF0ZSB8Y3VzdG9tRGF0ZUZvcm1hdCk6ICctLSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInR5cGUgPT09ICdkYXRhTWlzbWF0Y2gnXCI+e3toaXN0b3J5Py5pc3N1ZURhdGU/KGhpc3Rvcnk/Lmlzc3VlRGF0ZSB8Y3VzdG9tRGF0ZUZvcm1hdCk6ICctLSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2hpc3Rvcnk/Lmlzc3VlQ2xvc2VkRGF0ZXxjdXN0b21EYXRlRm9ybWF0fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJ0eXBlID09PSAnaW5mcmEnIHx8IHR5cGUgPT09J2luc3RhbGxhdGlvbidcIj57e2hpc3Rvcnk/LmluZnJhSXNzdWUgPyBoaXN0b3J5Py5pbmZyYUlzc3VlIDonLS0nfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJ0eXBlID09PSAnZGF0YU1pc21hdGNoJ1wiPnt7aGlzdG9yeT8uaXNzdWVUeXBlID8gaGlzdG9yeT8uaXNzdWVUeXBlIDonLS0nfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIDwvdGFibGU+ICAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGxpYi1wYWdpbmF0aW9uIFtpdGVtc1BlclBhZ2VdPVwibGltaXRcIiBbY3VycmVudFBhZ2VdPVwib2Zmc2V0XCJcclxuICAgICAgICAgICAgICAgIFt0b3RhbEl0ZW1zXT1cInRvdGFsSXRlbXNcIiBbcGFnaW5hdGlvblNpemVzXT1cIlsxMCwyMCwzMF1cIiBbcGFnZVNpemVdPVwibGltaXRcIlxyXG4gICAgICAgICAgICAgICAgKHBhZ2VDaGFuZ2UpPVwib25QYWdlQ2hhbmdlKCRldmVudClcIiAocGFnZVNpemVDaGFuZ2UpPVwib25QYWdlU2l6ZUNoYW5nZSgkZXZlbnQpXCI+PC9saWItcGFnaW5hdGlvbj5cclxuICAgPC9kaXY+IFxyXG4gICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGlzdG9yeUxvYWRpbmcgJiYgIWhpc3RvcnlOb2RhdGFcIiA+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGlzdG9yeU5vZGF0YSAmJiAhaGlzdG9yeUxvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1zcmNcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGEuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbjwvZGl2PlxyXG48L2Rpdj5cclxuPGRpdiAqbmdJZj1cInVzZXJEYXRhID09PSAnSGlzdG9yeSdcIj5cclxuICAgIDxkaXYgKm5nSWY9XCJ0eXBlID09PSAnbWF0J1wiIGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cIiFoaXN0b3J5TG9hZGluZyAmJiAhaGlzdG9yeU5vZGF0YVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcmVzcG9uc2l2ZVwiPlxyXG4gICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIGJvdHRvbS1ib3JkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdpc3N1ZURhdGUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERhdGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnaXNzdWVEYXRlJyBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCd0aWNrZXRJZCcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpY2tldCBJRFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICd0aWNrZXRJZCcgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICd0aWNrZXRJZCcgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAndGlja2V0SWQnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ2NsaWVudE5hbWUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbGllbnQgSW5mb1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnROYW1lJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2NsaWVudE5hbWUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnY2xpZW50TmFtZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnc3RvcmVOYW1lJylcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgSW5mb1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdzdG9yZU5hbWUnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnc3RvcmVOYW1lJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlTmFtZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnc3RhdHVzJylcIj5TdGF0dXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdzdGF0dXMnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnc3RhdHVzJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0YXR1cycgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCBoaXN0b3J5IG9mIHdvcmtIaXN0b3J5VGFibGUgOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8uaXNzdWVEYXRlfGN1c3RvbURhdGVGb3JtYXR9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8udGlja2V0SWQgPyBoaXN0b3J5Py50aWNrZXRJZCA6Jy0tJ319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZ3JpZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtcHJpbWFyeVwiPnt7aGlzdG9yeT8uY2xpZW50TmFtZSA/IGhpc3Rvcnk/LmNsaWVudE5hbWUgOiAnLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dFN1YiBtdC0xXCI+SUQgOiB7e2hpc3Rvcnk/LmNsaWVudElkID8gaGlzdG9yeT8uY2xpZW50SWQgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZ3JpZCBtcy0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtcHJpbWFyeSBtYi0xXCI+e3toaXN0b3J5Py5zdG9yZU5hbWUgPyBoaXN0b3J5Py5zdG9yZU5hbWUgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dFN1YlwiPklEIDoge3toaXN0b3J5Py5zdG9yZUlkID8gaGlzdG9yeT8uc3RvcmVJZCA6Jy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhpc3Rvcnkuc3RhdHVzID09PSdvcGVuJ1wiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtZGFuZ2VyXCI+T3Blbjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhpc3Rvcnkuc3RhdHVzID09PSdjbG9zZWQnXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1zdWNjZXNzXCI+Q2xvc2VkPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGlzdG9yeS5zdGF0dXMgPT09J2lucHJvZ3Jlc3MnXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1wcmltYXJ5XCI+SW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJvZ3Jlc3M8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgPC90Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgPC90YWJsZT4gICBcclxuICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgPGxpYi1wYWdpbmF0aW9uIFtpdGVtc1BlclBhZ2VdPVwibGltaXRcIiBbY3VycmVudFBhZ2VdPVwib2Zmc2V0XCJcclxuICAgICAgICAgICAgICAgICAgICAgW3RvdGFsSXRlbXNdPVwidG90YWxJdGVtc1wiIFtwYWdpbmF0aW9uU2l6ZXNdPVwiWzEwLDIwLDMwXVwiIFtwYWdlU2l6ZV09XCJsaW1pdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIChwYWdlQ2hhbmdlKT1cIm9uUGFnZUNoYW5nZSgkZXZlbnQpXCIgKHBhZ2VTaXplQ2hhbmdlKT1cIm9uUGFnZVNpemVDaGFuZ2UoJGV2ZW50KVwiPjwvbGliLXBhZ2luYXRpb24+XHJcbiAgICAgICAgPC9kaXY+IFxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoaXN0b3J5TG9hZGluZyAmJiAhaGlzdG9yeU5vZGF0YVwiID5cclxuICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhpc3RvcnlOb2RhdGEgJiYgIWhpc3RvcnlMb2FkaW5nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cImltZy1zcmNcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JY29ucy9Ob2RhdGEuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICA8L2Rpdj5cclxuPC9kaXY+XHJcblxyXG48ZGl2ICpuZ0lmPVwidXNlckRhdGEgPT09ICdIaXN0b3J5J1wiPlxyXG4gICAgPGRpdiAqbmdJZj1cInR5cGUgPT09ICdhdWRpdCdcIiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCIhaGlzdG9yeUxvYWRpbmcgJiYgIWhpc3RvcnlOb2RhdGFcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJlc3BvbnNpdmVcIj4gIFxyXG4gICAgICAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIGJvdHRvbS1ib3JkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPHRyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJzb3J0RGF0YSgnZmlsZURhdGUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZpbGUgRGF0ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2ZpbGVEYXRlJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2ZpbGVEYXRlJyBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdmaWxlRGF0ZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNvcnREYXRhKCdjbGllbnROYW1lJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xpZW50IEluZm9cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnY2xpZW50TmFtZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdjbGllbnROYW1lJyBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnROYW1lJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJzb3J0RGF0YSgnc3RvcmVOYW1lJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgSW5mb1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdzdG9yZU5hbWUnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnc3RvcmVOYW1lJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlTmFtZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic29ydERhdGEoJ2xvY2F0aW9uJylcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTG9jYXRpb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnbG9jYXRpb24nICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnbG9jYXRpb24nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnbG9jYXRpb24nICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNvcnREYXRhKCd0eXBlJylcIj5UeXBlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAndHlwZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICd0eXBlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3R5cGUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic29ydERhdGEoJ2FjY3VyYWN5JylcIj5BY2N1cmFjeVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2FjY3VyYWN5JyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2FjY3VyYWN5J1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2FjY3VyYWN5JyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNvcnREYXRhKCd0aW1lc3BlbnQnKVwiPlRpbWUgU3BlbnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICd0aW1lc3BlbnQnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAndGltZXNwZW50J1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3RpbWVzcGVudCcgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5TdGF0dXNcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+QWN0aW9uc1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgIDx0Ym9keT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgaGlzdG9yeSBvZiB3b3JrSGlzdG9yeWRhdGEgOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8uZmlsZURhdGV9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8uY2xpZW50TmFtZSA/IGhpc3Rvcnk/LmNsaWVudE5hbWUgOictLSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8uc3RvcmVOYW1lID8gaGlzdG9yeT8uc3RvcmVOYW1lIDogJy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3toaXN0b3J5Py5sb2NhdGlvbiA/IGhpc3Rvcnk/LmxvY2F0aW9uIDonLS0nfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2hpc3Rvcnk/LnR5cGUgPyBoaXN0b3J5Py50eXBlIDonLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2hpc3Rvcnk/LmFjY3VyYWN5ID8gaGlzdG9yeT8uYWNjdXJhY3kgOictLSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8udGltZXNwZW50ID8gaGlzdG9yeT8udGltZXNwZW50IDonLS0nfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhpc3Rvcnkuc3RhdHVzID09PSdkcmFmdCdcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXdhcm5pbmdcIj5EcmFmdDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImhpc3Rvcnkuc3RhdHVzID09PSdjb21wbGV0ZWQnXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1zdWNjZXNzXCI+Q2xvc2VkPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGlzdG9yeS5zdGF0dXMgPT09J2lucHJvZ3Jlc3MnXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1wcmltYXJ5XCI+SW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJvZ3Jlc3M8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPjxzcGFuIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwidmlld1VzZXIoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTAuODMzMzc0IDEwQzAuODMzMzc0IDEwIDQuMTY2NzEgMy4zMzMzNyAxMCAzLjMzMzM3QzE1LjgzMzQgMy4zMzMzNyAxOS4xNjY3IDEwIDE5LjE2NjcgMTBDMTkuMTY2NyAxMCAxNS44MzM0IDE2LjY2NjcgMTAgMTYuNjY2N0M0LjE2NjcxIDE2LjY2NjcgMC44MzMzNzQgMTAgMC44MzMzNzQgMTBaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuNjY2NjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAgMTIuNUMxMS4zODA4IDEyLjUgMTIuNSAxMS4zODA4IDEyLjUgMTBDMTIuNSA4LjYxOTMzIDExLjM4MDggNy41MDAwNCAxMCA3LjUwMDA0QzguNjE5MzMgNy41MDAwNCA3LjUwMDA0IDguNjE5MzMgNy41MDAwNCAxMEM3LjUwMDA0IDExLjM4MDggOC42MTkzMyAxMi41IDEwIDEyLjVaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuNjY2NjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICA8L3RhYmxlPiAgIFxyXG4gICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICA8IS0tIDxsaWItcGFnaW5hdGlvbiBbaXRlbXNQZXJQYWdlXT1cImxpbWl0XCIgW2N1cnJlbnRQYWdlXT1cIm9mZnNldFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFt0b3RhbEl0ZW1zXT1cIndvcmtIaXN0b3J5VGFibGUuY291bnRcIiBbcGFnaW5hdGlvblNpemVzXT1cIlsxMCwyMCwzMF1cIiBbcGFnZVNpemVdPVwibGltaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAocGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCRldmVudClcIj48L2xpYi1wYWdpbmF0aW9uPiAtLT5cclxuICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhpc3RvcnlMb2FkaW5nICYmICFoaXN0b3J5Tm9kYXRhXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGlzdG9yeU5vZGF0YSAmJiAhaGlzdG9yeUxvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLXNyY1wiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuIl19
|
|
574
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mcmF0aWNrZXRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXRpY2tldC11c2VyL3NyYy9saWIvY29tcG9uZW50cy9pbmZyYXRpY2tldHMvaW5mcmF0aWNrZXRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXRpY2tldC11c2VyL3NyYy9saWIvY29tcG9uZW50cy9pbmZyYXRpY2tldHMvaW5mcmF0aWNrZXRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxHQUdiLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7O0FBTzFDLE1BQU0sT0FBTyxxQkFBcUI7SUF5RFo7SUFBK0I7SUFDekM7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNEO0lBQ0M7SUEvRFYsV0FBVyxHQUFRLE9BQU8sQ0FBQztJQUMzQixVQUFVLEdBQVEsQ0FBQyxDQUFDO0lBQ3BCLGFBQWEsR0FBUSxFQUFFLENBQUM7SUFDeEIsUUFBUSxHQUFRLFdBQVcsQ0FBQztJQUM1QixnQkFBZ0IsQ0FBTTtJQUN0Qix1QkFBdUI7SUFDdkIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixNQUFNLENBQVU7SUFDaEIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixlQUFlLENBQU07SUFDckIsTUFBTSxHQUFRLENBQUMsQ0FBQztJQUNoQixNQUFNLEdBQVEsQ0FBQyxDQUFDLENBQUM7SUFDakIsS0FBSyxHQUFRLEVBQUUsQ0FBQztJQUNoQixhQUFhLENBQU07SUFDbkIsYUFBYSxDQUFNO0lBQ25CLFNBQVMsR0FBVSxFQUFFLENBQUM7SUFDdEIsZUFBZSxHQUFVLEVBQUUsQ0FBQztJQUM1QixXQUFXLEdBQVUsRUFBRSxD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akIsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQVksRUFBRSxFQUFFO2dCQUM3QixJQUFJLE9BQU8sQ0FBQyxXQUFXLEtBQUssUUFBUSxFQUFFO29CQUNwQyxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7aUJBQ2hFO1lBQ0gsQ0FBQyxDQUFDLENBQUE7U0FDRDtRQUNELElBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUNoQyxJQUFJLENBQUMsYUFBYSxHQUFFLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoQyxDQUFDO3dHQXhpQlEscUJBQXFCOzRGQUFyQixxQkFBcUIsc0hDcEJsQyxvMGlIQSsvQkE7OzRGRDMrQmEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGtCQUFrQjtnVEE0RTVCLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uRGVzdHJveSxcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgT25Jbml0LFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IFRpY2tldHNTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3RpY2tldC1pbmZyYS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2RhdGEuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tIFwidGFuZ28tYXBwLXVpLXNoYXJlZFwiO1xyXG5pbXBvcnQgeyBHbG9iYWxTdGF0ZVNlcnZpY2UgfSBmcm9tIFwidGFuZ28tYXBwLXVpLWdsb2JhbFwiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBFeGNlbFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvZXhjZWwuc2VydmljZVwiO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJsaWItaW5mcmF0aWNrZXRzXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9pbmZyYXRpY2tldHMuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybDogXCIuL2luZnJhdGlja2V0cy5jb21wb25lbnQuc2Nzc1wiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5mcmF0aWNrZXRzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHNlbGVjdGVkVGFiOiBhbnkgPSBcImluZnJhXCI7XHJcbiAgc2VsZWN0Q2FyZDogYW55ID0gMDtcclxuICBzZWxlY3RlZElzc3VlOiBhbnkgPSBcIlwiO1xyXG4gIHVzZXJEYXRhOiBhbnkgPSBcIldvcmtzcGFjZVwiO1xyXG4gIHdvcmtIaXN0b3J5VGFibGU6IGFueTtcclxuICAvLyB3b3JrSGlzdG9yeWRhdGE6YW55O1xyXG4gIGNhcmRWaWV3OiBib29sZWFuID0gZmFsc2U7XHJcbiAgaXNPcGVuOiBib29sZWFuO1xyXG4gIGRyb3BEb3duOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc2VhcmNoV29ya3NwYWNlOiBhbnk7XHJcbiAgb2Zmc2V0OiBhbnkgPSAxO1xyXG4gIHNvcnRCeTogYW55ID0gLTE7XHJcbiAgbGltaXQ6IGFueSA9IDEwO1xyXG4gIHNvcnRDb2x1bU5hbWU6IGFueTtcclxuICBzZWFyY2hIaXN0b3J5OiBhbnk7XHJcbiAgZHVtbXlPcGVuOiBhbnlbXSA9IFtdO1xyXG4gIGR1bW15SW5wcm9ncmVzczogYW55W10gPSBbXTtcclxuICBkdW1teUNsb3NlZDogYW55W10gPSBbXTtcclxuICBkcm9wZG93bkl0ZW1zOiBhbnlbXTtcclxuICBoaXN0b3J5TG9hZGluZzogYm9vbGVhbiA9IHRydWU7XHJcbiAgaGlzdG9yeU5vZGF0YTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGxvYWRpbmc6IGFueSA9IHtcclxuICAgIG9wZW46IHRydWUsXHJcbiAgICBpbnByb2dyZXNzOiB0cnVlLFxyXG4gICAgY2xvc2VkOiB0cnVlLFxyXG4gIH07XHJcbiAgbm9EYXRhOiBhbnkgPSB7XHJcbiAgICBvcGVuOiBmYWxzZSxcclxuICAgIGlucHJvZ3Jlc3M6IGZhbHNlLFxyXG4gICAgY2xvc2VkOiBmYWxzZSxcclxuICB9O1xyXG4gIHBhZ2luYXRpb24gPSB7XHJcbiAgICBvZmZzZXQ6IDEsXHJcbiAgICBsaW1pdDogMTAsXHJcbiAgICB0b3RhbENvdW50OiAxMDAwLFxyXG4gICAgdG90YWxQYWdlczogMjAsXHJcbiAgfTtcclxuICBkYXRhT2JqZWN0OiBhbnk7XHJcbiAgc3RhdHVzT3BlbjogYW55O1xyXG4gIHN0YXR1c0Nsb3NlZDogYW55O1xyXG4gIHN0YXR1c0lucHJvZ3Jlc3M6IGFueTtcclxuICBkdW1teUhpc3Rvcnk6IGFueTtcclxuICBoZWFkZXJGaWx0ZXI6IGFueTtcclxuICBmaWx0ZXJlZERhdGE6IGFueVtdO1xyXG4gIGRhdGVGaWx0ZXI6IGFueTtcclxuICBzdG9yZUZpbHRlcjogYW55O1xyXG4gIGlzc3VlRmlsdGVyOiBhbnk7XHJcbiAgZmlsdGVyU3RvcmVzOiBhbnkgPSBbXTtcclxuICBjbGllbnRJZDogYW55O1xyXG4gIHdvcmtIaXN0b3J5ZGF0YTphbnlbXT1bXTtcclxuXHJcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgdXNlcjogYW55O1xyXG4gIHR5cGU6IHN0cmluZyB8IG51bGwgPSBcImluZnJhXCI7XHJcbiAgdW5pcXVlQXJyYXk6IGFueTtcclxuICB0b3RhbEl0ZW1zOiBhbnkgPTA7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0b2FzdFNlcnZpY2U6IFRvYXN0U2VydmljZSxcclxuICAgIHByaXZhdGUgc2VydmljZTogVGlja2V0c1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRhdGFzZXJ2aWNlOiBEYXRhU2VydmljZSxcclxuICAgIHB1YmxpYyBnczogR2xvYmFsU3RhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBleGNlbDogRXhjZWxTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLnJvdXRlLnF1ZXJ5UGFyYW1zLnN1YnNjcmliZSgocGFyYW1zKSA9PiB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBwYXJhbXMuc2VsZWN0ZWRUYWI7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoXCJkb2N1bWVudDpjbGlja1wiLCBbXCIkZXZlbnRcIl0pXHJcbiAgb25DbGljayhldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgaWYgKCF0YXJnZXQuY2xvc2VzdChcIi5kcm9wZG93blwiKSkge1xyXG4gICAgICB0aGlzLmRyb3BEb3duID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2VydmljZT8uZGF0YVN1YmplY3Q/LnN1YnNjcmliZSh2YWx1ZSA9PiB7XHJcbiAgICAgIHRoaXMudXNlckRhdGEgPSAnV29ya3NwYWNlJ1xyXG4gICAgfSlcclxuICAgIHRoaXMuZ3MuZGF0YVJhbmdlVmFsdWUucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgIGlmIChkYXRhICE9IG51bGwpIHtcclxuICAgICAgICB0aGlzLnVzZXIgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd1c2VyLWluZm8nKSB8fCBcIlwiKVxyXG4gICAgICAgIHRoaXMuaGVhZGVyRmlsdGVyID0gZGF0YTtcclxuICAgICAgICB0aGlzLmNsaWVudElkID0gdGhpcy5oZWFkZXJGaWx0ZXI/LmNsaWVudHNcclxuICAgICAgICB0aGlzLnJvdXRlLnF1ZXJ5UGFyYW1NYXAuc3Vic2NyaWJlKHBhcmFtcyA9PiB7XHJcbiAgICAgICAgICB0aGlzLnR5cGUgPSAocGFyYW1zLmdldCgndHlwZScpKSA/IChwYXJhbXMuZ2V0KCd0eXBlJykpIDogdGhpcy50eXBlO1xyXG4gICAgICAgICAgaWYodGhpcy50eXBlID09PSdhdWRpdCcpe3RoaXMudXNlckRhdGEgPSAnSGlzdG9yeSd9ZWxzZXt9XHJcbiAgICAgICAgICB0aGlzLmdldGRhdGFPYmplY3QoKTtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0RHJvcGRvd25zKCk7XHJcbiAgICAgICAgICBpZiAodGhpcy51c2VyRGF0YSA9PSAnV29ya3NwYWNlJykge1xyXG4gICAgICAgICAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KCdvcGVuJyk7XHJcbiAgICAgICAgICAgIHRoaXMudXNlclRpY2tldExpc3QoJ2lucHJvZ3Jlc3MnKTtcclxuICAgICAgICAgICAgdGhpcy51c2VyVGlja2V0TGlzdCgnY2xvc2VkJyk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMudXNlckRhdGEgPT0gJ0hpc3RvcnknKSB7XHJcbiAgICAgICAgICAgIHRoaXMud29ya0hpc3RvcnkoKTtcclxuICAgICAgICAgICAgdGhpcy5zdG9yZUZpbHRlcnMoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG5cclxuICAgIH0pO1xyXG5cclxuICB9XHJcbiAgZ2V0ZGF0YU9iamVjdCgpIHtcclxuICAgIGlmICh0aGlzLnR5cGUgPT09IFwiaW5mcmFcIiB8fCB0aGlzLnR5cGUgPT09IFwiaW5zdGFsbGF0aW9uXCIpIHtcclxuICAgICAgdGhpcy5kYXRhT2JqZWN0ID0gW1xyXG4gICAgICAgIHsgRGVzY3JpcHRpb246IFwiU3RvcmUgSURcIiwgSXNzdWVzOiBbXSB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIERlc2NyaXB0aW9uOiBcIklzc3VlIFR5cGVcIixcclxuICAgICAgICAgIElzc3VlczogWyB7IHRleHQ6IFwiU3RvcmUgT3BlcmF0aW9uIElzc3Vlc1wiIH0seyB0ZXh0OiBcIkNhbWVyYSBJc3N1ZXNcIiB9LHsgdGV4dDogXCJJbnRlcm5ldCBJc3N1ZXNcIiB9LCB7IHRleHQ6IFwiU3lzdGVtIElzc3Vlc1wiIH0seyB0ZXh0OiBcIkFwcGxpY2F0aW9uIElzc3Vlc1wiIH0sIF0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBEZXNjcmlwdGlvbjogXCJEYXRlIFR5cGVcIix0eXBlOiBcInNpbmdsZVwiLFxyXG4gICAgICAgICAgSXNzdWVzOiBbXHJcbiAgICAgICAgICAgIHsgaWQ6IFwiaXNzdWVJZGVudGlmaWVkRGF0ZVwiLCB0ZXh0OiBcIklzc3VlIElkZW50aWZpZWQgRGF0ZVwiIH0sXHJcbiAgICAgICAgICAgIHsgaWQ6IFwiY3JlYXRlZERhdGVcIiwgdGV4dDogXCJDcmVhdGVkIERhdGVcIiB9LFxyXG4gICAgICAgICAgICB7IGlkOiBcImNsb3NlZERhdGVcIiwgdGV4dDogXCJDbG9zZWQgRGF0ZVwiIH0sXHJcbiAgICAgICAgICBdLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIF07XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMudHlwZSA9PT0gXCJkYXRhTWlzbWF0Y2hcIikge1xyXG4gICAgICB0aGlzLmRhdGFPYmplY3QgPSBbXHJcbiAgICAgICAgeyBEZXNjcmlwdGlvbjogJ1N0b3JlIElEJywgSXNzdWVzOiBbXSB9LFxyXG4gICAgICAgIHsgRGVzY3JpcHRpb246ICdJc3N1ZSBUeXBlJywgSXNzdWVzOiBbe2lkOidoaWdoY291bnQnLCB0ZXh0OiBcIkhpZ2ggY291bnRcIiB9LCB7aWQ6J2xvd2NvdW50JywgdGV4dDogXCJMb3cgY291bnRcIiB9XSB9LFxyXG4gICAgICAgIHsgRGVzY3JpcHRpb246ICdEYXRlIFR5cGUnLCB0eXBlOiAnc2luZ2xlJywgSXNzdWVzOiBbeyBpZDogXCJpc3N1ZURhdGVcIix0ZXh0OiBcIklzc3VlIERhdGVcIiB9LCB7IGlkOiBcImNyZWF0ZWREYXRlXCIsdGV4dDogXCJDcmVhdGVkIERhdGVcIiB9LCB7IGlkOiBcImNsb3NlZERhdGVcIix0ZXh0OiBcIkNsb3NlZCBEYXRlXCIgfV0gfVxyXG4gICAgICBdO1xyXG4gICAgfVxyXG4gIH1cclxuICByZW1vdmVEdXBsaWNhdGVzKCkge1xyXG4gICAgY29uc3Qga2V5ID0gJ2lkJzsgLy8gQ2hhbmdlIHRoaXMga2V5IHRvIGFueSBrZXkgeW91IHdhbnQgdG8gdXNlIGZvciB1bmlxdWVuZXNzXHJcbiAgICBjb25zdCB1bmlxdWVLZXlzID0gbmV3IFNldCgpO1xyXG4gICAgbGV0IG9yaWdpbmFsQXJyYXkgPSB0aGlzLmRhdGFPYmplY3QuZmluZCgoZGF0YTphbnkpID0+IGRhdGEuRGVzY3JpcHRpb24gPT09J1N0b3JlIElEJykuSXNzdWVzXHJcbiAgICB0aGlzLnVuaXF1ZUFycmF5ID0gb3JpZ2luYWxBcnJheS5maWx0ZXIoKGl0ZW06YW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IGlzRHVwbGljYXRlID0gdW5pcXVlS2V5cy5oYXMoaXRlbVtrZXldKTtcclxuICAgICAgdW5pcXVlS2V5cy5hZGQoaXRlbVtrZXldKTtcclxuICAgICAgcmV0dXJuICFpc0R1cGxpY2F0ZTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcbiAgdXNlclRpY2tldExpc3QodmFsdWU6IGFueSkge1xyXG4gICAgLy8gdGhpcy5zZWxlY3RlZElzc3VlID0gdGhpcy5zZWxlY3RlZElzc3VlID09PSAnSGlnaCBDb3VudCcgPyAnaGlnaGNvdW50JyA6KHRoaXMuc2VsZWN0ZWRJc3N1ZSA9PT0gJ0xvdyBDb3VudCcgPyAnbG93Y291bnQnIDogJycpXHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgY2xpZW50SWQ6IHRoaXMuY2xpZW50SWQsXHJcbiAgICAgIHVzZXJJZDogdGhpcy51c2VyPy5faWQsXHJcbiAgICAgIHN0YXR1czogdmFsdWUsXHJcbiAgICAgIGlzc3VlVHlwZTogdGhpcy50eXBlLFxyXG4gICAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LnN0YXJ0RGF0ZSxcclxuICAgICAgdG9EYXRlOiB0aGlzLmhlYWRlckZpbHRlcj8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgICAgc2VhcmNoVmFsdWU6IHRoaXMuc2VhcmNoV29ya3NwYWNlLFxyXG4gICAgICBmaWx0ZXI6IHRoaXMuc2VsZWN0ZWRJc3N1ZSxcclxuICAgIH07XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLnVzZXJUaWNrZXRMaXN0KGRhdGEpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAwICYmIHJlcy5kYXRhLmRhdGEubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIGlmICh2YWx1ZSA9PSBcIm9wZW5cIikge1xyXG4gICAgICAgICAgICAgIHRoaXMuc3RhdHVzT3BlbiA9IHJlcy5kYXRhLmRhdGE7XHJcbiAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nLm9wZW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgICB0aGlzLm5vRGF0YS5vcGVuID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT0gXCJpbnByb2dyZXNzXCIpIHtcclxuICAgICAgICAgICAgICB0aGlzLnN0YXR1c0lucHJvZ3Jlc3MgPSByZXMuZGF0YS5kYXRhO1xyXG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZy5pbnByb2dyZXNzID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgdGhpcy5ub0RhdGEuaW5wcm9ncmVzcyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMuc3RhdHVzQ2xvc2VkID0gcmVzLmRhdGEuZGF0YTtcclxuICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcuY2xvc2VkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgdGhpcy5ub0RhdGEuY2xvc2VkID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGlmICh2YWx1ZSA9PSBcIm9wZW5cIikge1xyXG4gICAgICAgICAgICAgIHRoaXMubm9EYXRhLm9wZW4gPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZy5vcGVuID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT0gXCJpbnByb2dyZXNzXCIpIHtcclxuICAgICAgICAgICAgICB0aGlzLm5vRGF0YS5pbnByb2dyZXNzID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcuaW5wcm9ncmVzcyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMubm9EYXRhLmNsb3NlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nLmNsb3NlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5ub0RhdGEub3BlbiA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcub3BlbiA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5ub0RhdGEuaW5wcm9ncmVzcyA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcuaW5wcm9ncmVzcyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5ub0RhdGEuY2xvc2VkID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMubG9hZGluZy5jbG9zZWQgPSBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHRha2VUaWNrZXQoKSB7XHJcbiAgICBsZXQgZGF0YSA9IHsgdXNlcklkOiB0aGlzLnVzZXI/Ll9pZCwgaXNzdWVUeXBlOiB0aGlzLnR5cGUgfTtcclxuICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAudXNlclRha2VUaWNrZXQoZGF0YSlcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldFN1Y2Nlc3NUb2FzdChyZXMubWVzc2FnZSk7XHJcbiAgICAgICAgICAgIHRoaXMudXNlclRpY2tldExpc3QoXCJvcGVuXCIpO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAxKSB7XHJcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldEVycm9yVG9hc3QocmVzLmVycm9yKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldEVycm9yVG9hc3QoXCJObyBUaWNrZXQgQXZhaWxhYmxlXCIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldEVycm9yVG9hc3QoZXJyLmVycm9yKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBTaG93VGlja2V0KGluZGV4OiBhbnkpIHtcclxuICAgIHRoaXMuc2VsZWN0Q2FyZCA9IGluZGV4ID8gaW5kZXggOiAwO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0VGlja2V0KCkge1xyXG4gXHJcbiAgfVxyXG4gIHNlbGVjdFZpZXcoZTogTW91c2VFdmVudCwgaW5kZXg6IGFueSwgdmFsdWU6IGFueSkge1xyXG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIGlmICh2YWx1ZSA9PSBcIm9wZW5cIikge1xyXG4gICAgICB0aGlzLnN0YXR1c09wZW5baW5kZXhdLmlzT3BlbiA9ICF0aGlzLnN0YXR1c09wZW5baW5kZXhdLmlzT3BlbjtcclxuICAgIH0gZWxzZSBpZiAodmFsdWUgPT0gXCJpbnByb2dyZXNzXCIpIHtcclxuICAgICAgdGhpcy5zdGF0dXNJbnByb2dyZXNzW2luZGV4XS5pc09wZW4gPVxyXG4gICAgICAgICF0aGlzLnN0YXR1c0lucHJvZ3Jlc3NbaW5kZXhdLmlzT3BlbjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc3RhdHVzQ2xvc2VkW2luZGV4XS5pc09wZW4gPSAhdGhpcy5zdGF0dXNDbG9zZWRbaW5kZXhdLmlzT3BlbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJvdXRldG9UaWNrZXQodmFsdWU6IGFueSkge1xyXG4gICAgbGV0IGlzc3VlVHlwZSA9XHJcbiAgICAgIHZhbHVlPy5pc3N1ZVR5cGUgPT09IFwiaGlnaGNvdW50XCJcclxuICAgICAgICA/IFwiaGlnaC1jb3VudFwiXHJcbiAgICAgICAgOiB2YWx1ZT8uaXNzdWVUeXBlID09PSBcImxvd2NvdW50XCJcclxuICAgICAgICA/IFwibG93LWNvdW50XCJcclxuICAgICAgICA6IFwiXCI7XHJcbiAgICBpZiAodmFsdWU/Lmlzc3VlVHlwZSA9PSBcImluZnJhXCIpIHtcclxuICAgICAgLy8gdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1xyXG4gICAgICAvLyAgIGAvdGlja2V0cy91c2Vycy90aWNrZXRpbmZvLyR7dmFsdWUudGlja2V0SWR9LyR7dmFsdWUuc3RvcmVJZH1gLFxyXG4gICAgICAvLyBdKTtcclxuICAgICAgbGV0IGRhdGE6IGFueSA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJoZWFkZXItZmlsdGVyc1wiKSB8fCBcIlwiKTtcclxuICAgICAgZGF0YS5zdG9yZSA9IHZhbHVlLnN0b3JlSWQ7XHJcbiAgICAgIGRhdGEuY2xpZW50ID0gdmFsdWUuY2xpZW50SWQ7XHJcbiAgICAgIGRhdGEuY2xpZW50TmFtZSA9IHZhbHVlPy5jbGllbnROYW1lID8gdmFsdWU/LmNsaWVudE5hbWU6J1N0b3Jlcyc7IFxyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcImhlYWRlci1maWx0ZXJzXCIsIEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2AvbWFuYWdlL3N0b3Jlcy9pbmZyYS10aWNrZXRgXSwge3F1ZXJ5UGFyYW1zOiB7IHN0b3JlSWQ6IHZhbHVlLnN0b3JlSWQsdHlwZTpcImluZnJhXCIgfX0pO1xyXG4gICBcclxuICAgIH0gZWxzZSBpZiAodmFsdWU/Lmlzc3VlVHlwZSA9PSBcImluc3RhbGxhdGlvblwiKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcclxuICAgICAgICBgL3RpY2tldHMvdXNlcnMvaW5zdGFsbGF0aW9uaW5mby8ke3ZhbHVlLnRpY2tldElkfS8ke3ZhbHVlLnN0b3JlSWR9YCxcclxuICAgICAgXSk7XHJcbiAgICB9ICBlbHNlIGlmKHZhbHVlPy5pc3N1ZVR5cGUgPT0gJ21hdCcpIHtcclxuICAgICAgaWYodmFsdWUubWF0U3RhdHVzID09J0RyYWZ0Jyl7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCAoYC90aWNrZXRzL2VtcGxveWVldHJhaW5pbmcvJHt2YWx1ZS50aWNrZXRJZH0vJHt2YWx1ZS5zdG9yZUlkfT9mdW5jdGlvblR5cGU9c3RvcmVNYXR1cGRhdGVgKTtcclxuICAgICAgfVxyXG4gICAgICAvLyBlbHNlIGlmKHZhbHVlLm1hdFN0YXR1cyA9PSdjbG9zZWQnKXtcclxuICAgICAgLy8gICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsIChgL3RpY2tldHMvZW1wbG95ZWV0cmFpbmluZy8ke3ZhbHVlLnRpY2tldElkfS8ke3ZhbHVlLnN0b3JlSWR9P2Z1bmN0aW9uVHlwZT1vdXRwdXRgKTtcclxuICAgICAgLy8gfVxyXG4gICAgICBlbHNle1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwgKGAvdGlja2V0cy9lbXBsb3llZXRyYWluaW5nLyR7dmFsdWUudGlja2V0SWR9LyR7dmFsdWUuc3RvcmVJZH1gKTtcclxuICAgICAgfVxyXG4gICAgfWVsc2UgaWYgKFxyXG4gICAgICB2YWx1ZT8uaXNzdWVUeXBlID09IFwiaGlnaGNvdW50XCIgfHxcclxuICAgICAgdmFsdWU/Lmlzc3VlVHlwZSA9PSBcImxvd2NvdW50XCJcclxuICAgICkge1xyXG4gICAgICB0aGlzLnN0YXR1c1VwZGF0ZSh2YWx1ZS50aWNrZXRJZCwgdmFsdWU/Lmlzc3VlVHlwZSwgdmFsdWU/LnN0YXR1cyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBzdGF0dXNVcGRhdGUodmFsdWU6IGFueSwgaXNzdWVUeXBlOiBhbnksIHN0YXR1czogYW55KSB7XHJcbiAgICAvLyBjb25zb2xlLmxvZyhgL3RpY2tldHMvZGF0YS1taXNtYXRjaC8ke3R5cGV9P3RpY2tldElkPSR7dmFsdWV9YCxcInRyZXFycVwiKVxyXG4gICAgbGV0IHR5cGUgPVxyXG4gICAgICBpc3N1ZVR5cGUgPT09IFwiaGlnaGNvdW50XCJcclxuICAgICAgICA/IFwiaGlnaC1jb3VudFwiXHJcbiAgICAgICAgOiBpc3N1ZVR5cGUgPT09IFwibG93Y291bnRcIlxyXG4gICAgICAgID8gXCJsb3ctY291bnRcIlxyXG4gICAgICAgIDogXCJcIjtcclxuICAgIGxldCBkYXRhID0ge1xyXG4gICAgICB0aWNrZXRJZDogdmFsdWUsXHJcbiAgICAgIHN0YXR1czogXCJpbnByb2dyZXNzXCIsXHJcbiAgICB9O1xyXG4gICAgaWYgKHN0YXR1cyA9PT0gXCJvcGVuXCIpIHtcclxuICAgICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgICAgLnN0YXR1c1VwZGF0ZShkYXRhKVxyXG4gICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoXHJcbiAgICAgICAgICAgICAgICBgL3RpY2tldHMvZGF0YS1taXNtYXRjaC8ke3R5cGV9P3RpY2tldElkPSR7dmFsdWV9YFxyXG4gICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSk7XHJcbiAgICB9IGVsc2UgaWYoc3RhdHVzICE9PSBcImNsb3NlZFwiKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwoXHJcbiAgICAgICAgYC90aWNrZXRzL2RhdGEtbWlzbWF0Y2gvJHt0eXBlfT90aWNrZXRJZD0ke3ZhbHVlfWBcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcbiAgZXhwb3J0RGF0YSgpIHtcclxuICAgIGxldCBkYXRhID0ge1xyXG4gICAgICB1c2VySWQ6IHRoaXMudXNlcj8uX2lkLFxyXG4gICAgICBleHBvcnQ6IHRydWUsXHJcbiAgICAgIGlzc3VlVHlwZTogdGhpcy50eXBlLFxyXG4gICAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LnN0YXJ0RGF0ZSxcclxuICAgICAgdG9EYXRlOiB0aGlzLmhlYWRlckZpbHRlcj8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgICAgc2VhcmNoVmFsdWU6IHRoaXMuc2VhcmNoV29ya3NwYWNlLFxyXG4gICAgICBmaWx0ZXI6IHRoaXMuc2VsZWN0ZWRJc3N1ZSxcclxuICAgICAgY2xpZW50SWQ6IHRoaXMuaGVhZGVyRmlsdGVyLmNsaWVudHMsXHJcbiAgICB9O1xyXG4gICAgdGhpcy5zZXJ2aWNlXHJcbiAgICAgIC5leHBvcnR1c2VyVGlja2V0TGlzdChkYXRhKVxyXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgIC5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5leGNlbC5zYXZlQXNFeGNlbEZpbGUocmVzLCBcIlVzZXIgVGlja2V0IExpc3RcIik7XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG4gIHdvcmtIaXN0b3J5KCkge1xyXG4gICAgbGV0IGRhdGEgPSB7XHJcbiAgICAgIHVzZXJJZDogdGhpcy51c2VyPy5faWQsXHJcbiAgICAgIG9mZnNldDogdGhpcy5vZmZzZXQsXHJcbiAgICAgIGxpbWl0OiB0aGlzLmxpbWl0LFxyXG4gICAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LnN0YXJ0RGF0ZSxcclxuICAgICAgdG9EYXRlOiB0aGlzLmhlYWRlckZpbHRlcj8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgICAgc2VhcmNoVmFsdWU6IHRoaXMuc2VhcmNoSGlzdG9yeSxcclxuICAgICAgc29ydENvbHVtTmFtZTogdGhpcy5zb3J0Q29sdW1OYW1lLFxyXG4gICAgICBzb3J0Qnk6IHRoaXMuc29ydEJ5LFxyXG4gICAgICBpc3N1ZVR5cGU6IHRoaXMudHlwZSxcclxuICAgICAgZGF0ZUZpbHRlcjogdGhpcy5kYXRlRmlsdGVyLFxyXG4gICAgICBzdG9yZUZpbHRlcjogdGhpcy5zdG9yZUZpbHRlcixcclxuICAgICAgaXNzdWVGaWx0ZXI6IHRoaXMuaXNzdWVGaWx0ZXIsXHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmNsaWVudElkLFxyXG4gICAgfTtcclxuICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAud29ya0hpc3RvcnkoZGF0YSlcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMgJiYgcmVzPy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICB0aGlzLndvcmtIaXN0b3J5VGFibGUgPSByZXM/LmRhdGE/LnJlc3VsdDtcclxuICAgICAgICAgICAgdGhpcy50b3RhbEl0ZW1zID1yZXM/LmRhdGE/LmNvdW50O1xyXG4gICAgICAgICAgICB0aGlzLmhpc3RvcnlMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuaGlzdG9yeU5vZGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5oaXN0b3J5Tm9kYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5oaXN0b3J5TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgICAgdGhpcy5oaXN0b3J5Tm9kYXRhID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuaGlzdG9yeUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlKCkge30sXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0SXRlbSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAodmFsdWUgPT0gXCJBbGxcIikge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkSXNzdWUgPSBcIlwiO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZElzc3VlID0gdmFsdWU7XHJcbiAgICB9XHJcbiAgICBpZih0aGlzLnR5cGUgPT09ICdpbmZyYScgfHwgdGhpcy50eXBlID09PSAnaW5zdGFsbGF0aW9uJyl7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRJc3N1ZSA9IHRoaXMuc2VsZWN0ZWRJc3N1ZTtcclxuICAgIH1lbHNlIGlmKHRoaXMudHlwZSA9PT0gJ2RhdGFNaXNtYXRjaCcpe1xyXG4gICAgICAvLyBjb25zb2xlLmxvZygndGhpcy5zZWxlY3RlZElzc3VlJyx0aGlzLnNlbGVjdGVkSXNzdWUpXHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRJc3N1ZSA9ICh0aGlzLnNlbGVjdGVkSXNzdWUgPT09ICdMb3cgQ291bnQnID8gJ2xvd2NvdW50JyA6KHRoaXMuc2VsZWN0ZWRJc3N1ZSA9PT0gJ0hpZ2ggQ291bnQnID8gJ2hpZ2hjb3VudCcgOiAnJykpXHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKCd0aGlzLnNlbGVjdGVkSXNzdWUxJyx0aGlzLnNlbGVjdGVkSXNzdWUpXHJcbiAgICB9XHJcbiAgICB0aGlzLmRyb3BEb3duID0gZmFsc2U7XHJcbiAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KFwib3BlblwiKTtcclxuICAgIHRoaXMudXNlclRpY2tldExpc3QoXCJpbnByb2dyZXNzXCIpO1xyXG4gICAgdGhpcy51c2VyVGlja2V0TGlzdChcImNsb3NlZFwiKTtcclxuICB9XHJcbiAgc2VsZWN0RHJvcGRvd25zKCl7XHJcbiAgICBpZih0aGlzLnR5cGUgPT09ICdpbmZyYScgfHwgdGhpcy50eXBlID09PSAnaW5zdGFsbGF0aW9uJyl7XHJcbiAgICAgIHRoaXMuZHJvcGRvd25JdGVtcyA9IFsnQWxsJywgJ0ludGVybmV0IElzc3VlcycsICdDYW1lcmEgSXNzdWVzJywgJ1N5c3RlbSBJc3N1ZXMnLCAnQXBwbGljYXRpb24gSXNzdWVzJywgJ1N0b3JlIE9wZXJhdGlvbiBJc3N1ZXMnLCAnTm90IElkZW50aWZpZWQnXVxyXG4gICAgfWVsc2UgaWYodGhpcy50eXBlID09PSAnZGF0YU1pc21hdGNoJyl7XHJcbiAgICAgIHRoaXMuZHJvcGRvd25JdGVtcyA9IFsnQWxsJywgJ0xvdyBDb3VudCcsICdIaWdoIENvdW50J11cclxuICAgIH1cclxuICB9XHJcbiAgb3BlbkRyb3Bkb3duKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuZHJvcERvd24gPSAhdGhpcy5kcm9wRG93bjtcclxuICB9XHJcblxyXG4gIHVzZXJWYWx1ZShkYXRhOiBhbnkpIHtcclxuICAgIHRoaXMudXNlckRhdGEgPSBkYXRhO1xyXG4gICAgaWYgKHRoaXMudXNlckRhdGEgPT0gXCJIaXN0b3J5XCIpIHtcclxuICAgICAgdGhpcy53b3JrSGlzdG9yeSgpO1xyXG4gICAgICB0aGlzLnN0b3JlRmlsdGVycygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlYXJjaFRpY2tldHMoKSB7XHJcbiAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KFwib3BlblwiKTtcclxuICAgIHRoaXMudXNlclRpY2tldExpc3QoXCJpbnByb2dyZXNzXCIpO1xyXG4gICAgdGhpcy51c2VyVGlja2V0TGlzdChcImNsb3NlZFwiKTtcclxuICB9XHJcblxyXG4gIHNlYXJjaEhpc3RvcnlUYWJsZSgpIHtcclxuICAgIHRoaXMud29ya0hpc3RvcnkoKTtcclxuICB9XHJcblxyXG4gIHJlY2VpdmVEYXRhKGRhdGE6IGFueVtdKSB7XHJcbiAgICB0aGlzLnN0b3JlRmlsdGVyID0gZGF0YVxyXG4gICAgICAuZmluZCgob2JqKSA9PiBvYmouRGVzY3JpcHRpb24gPT09IFwiU3RvcmUgSURcIilcclxuICAgICAgPy5Jc3N1ZXMubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0/LnRleHQpO1xyXG4gICAgdGhpcy5kYXRlRmlsdGVyID0gZGF0YS5maW5kKFxyXG4gICAgICAob2JqKSA9PiBvYmouRGVzY3JpcHRpb24gPT09IFwiRGF0ZSBUeXBlXCJcclxuICAgICk/Lklzc3Vlcz8uaWQ7XHJcbiAgICBpZiAodGhpcy50eXBlID09PSBcImluZnJhXCIgfHwgdGhpcy50eXBlID09PSBcImluc3RhbGxhdGlvblwiKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiaW5mcmFcIik7XHJcbiAgICAgIHRoaXMuaXNzdWVGaWx0ZXIgPSBkYXRhXHJcbiAgICAgICAgLmZpbmQoKG9iaikgPT4gb2JqLkRlc2NyaXB0aW9uID09PSBcIklzc3VlIFR5cGVcIilcclxuICAgICAgICA/Lklzc3Vlcy5tYXAoKGl0ZW06IGFueSkgPT4gaXRlbT8udGV4dCk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMudHlwZSA9PT0gXCJkYXRhTWlzbWF0Y2hcIikge1xyXG4gICAgICBjb25zb2xlLmxvZyhcImRhdGFNaXNtYXRjaFwiKTtcclxuICAgICAgdGhpcy5pc3N1ZUZpbHRlciA9IGRhdGFcclxuICAgICAgICAuZmluZCgob2JqKSA9PiBvYmouRGVzY3JpcHRpb24gPT09IFwiSXNzdWUgVHlwZVwiKVxyXG4gICAgICAgID8uSXNzdWVzLm1hcCgoaXRlbTogYW55KSA9PiBpdGVtPy5pZCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLndvcmtIaXN0b3J5KCk7XHJcbiAgfVxyXG5cclxuICBFeHBvcnRIaXN0b3J5YXNYbHN4KCkge1xyXG4gICAgbGV0IGV4cG9ydERhdGEgPSB7XHJcbiAgICAgIHVzZXJJZDogdGhpcy51c2VyPy5faWQsXHJcbiAgICAgIGlzc3VlVHlwZTogdGhpcy50eXBlLFxyXG4gICAgICBvZmZzZXQ6IHRoaXMub2Zmc2V0LFxyXG4gICAgICBsaW1pdDogMTAwMCxcclxuICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRmlsdGVyPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICAgIHRvRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LmVuZERhdGUsXHJcbiAgICAgIHNlYXJjaFZhbHVlOiB0aGlzLnNlYXJjaEhpc3RvcnksXHJcbiAgICAgIHNvcnRDb2x1bU5hbWU6IHRoaXMuc29ydENvbHVtTmFtZSxcclxuICAgICAgc29ydEJ5OiB0aGlzLnNvcnRCeSxcclxuICAgICAgZXhwb3J0OiBcInRydWVcIixcclxuICAgICAgZGF0ZUZpbHRlcjogdGhpcy5kYXRlRmlsdGVyLFxyXG4gICAgICBzdG9yZUZpbHRlcjogdGhpcy5zdG9yZUZpbHRlcixcclxuICAgICAgaXNzdWVGaWx0ZXI6IHRoaXMuaXNzdWVGaWx0ZXIsXHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckZpbHRlci5jbGllbnRzLFxyXG4gICAgfTtcclxuICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAud29ya0hpc3RvcnlFeHBvcnQoZXhwb3J0RGF0YSlcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5zYXZlQXNFeGNlbEZpbGUocmVzLCBcIkhpc3RvcnlcIik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmhpc3RvcnlOb2RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgdGhpcy5oaXN0b3J5TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY29tcGxldGUoKSB7fSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBzb3J0RGF0YSh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLnNvcnRDb2x1bU5hbWUgPSB2YWx1ZTtcclxuICAgIHRoaXMuc29ydEJ5ICo9IC0xO1xyXG4gICAgdGhpcy53b3JrSGlzdG9yeSgpO1xyXG4gIH1cclxuXHJcbiAgb25QYWdlQ2hhbmdlKHBhZ2VPZmZzZXQ6IG51bWJlcikge1xyXG4gICAgdGhpcy5vZmZzZXQgPSBwYWdlT2Zmc2V0O1xyXG4gICAgdGhpcy53b3JrSGlzdG9yeSgpO1xyXG4gIH1cclxuXHJcbiAgb25QYWdlU2l6ZUNoYW5nZShwYWdlU2l6ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmxpbWl0ID0gcGFnZVNpemU7XHJcbiAgICB0aGlzLm9mZnNldCA9IDE7XHJcbiAgICB0aGlzLndvcmtIaXN0b3J5KCk7XHJcbiAgfVxyXG5cclxuICBzdG9yZUZpbHRlcnMoKSB7XHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgdXNlcklkOiB0aGlzLnVzZXI/Ll9pZCxcclxuICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcclxuICAgICAgbGltaXQ6IHRoaXMubGltaXQsXHJcbiAgICAgIGZyb21EYXRlOiB0aGlzLmhlYWRlckZpbHRlcj8uZGF0ZT8uc3RhcnREYXRlLFxyXG4gICAgICB0b0RhdGU6IHRoaXMuaGVhZGVyRmlsdGVyPy5kYXRlPy5lbmREYXRlLFxyXG4gICAgICBpc3N1ZVR5cGU6IHRoaXMudHlwZSxcclxuICAgICAgY2xpZW50SWQ6IHRoaXMuaGVhZGVyRmlsdGVyLmNsaWVudHNcclxuICAgIH1cclxuICAgIHRoaXMuZmlsdGVyU3RvcmVzID0gW107XHJcbiAgICB0aGlzLnNlcnZpY2Uud29ya0hpc3RvcnkoZGF0YSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSh7XHJcbiAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXMgJiYgcmVzPy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgdGhpcy5maWx0ZXJTdG9yZXMgPSByZXMuZGF0YS5yZXN1bHQ7XHJcbiAgICAgICAgICBjb25zdCBpc3N1ZXMgPSB0aGlzLmZpbHRlclN0b3Jlcy5tYXAoKG9iajogYW55KSA9PiAoeyB0ZXh0OiBvYmouc3RvcmVJZCB9KSk7XHJcbiAgICAgICAgICBjb25zdCB1bmlxdWVJc3N1ZXM6YW55W10gPSBbXTtcclxuICAgICAgICAgIGNvbnN0IHN0b3JlSWRzID0gbmV3IFNldCgpO1xyXG4gICAgICAgICAgaXNzdWVzLmZvckVhY2goKGlzc3VlOmFueSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXN0b3JlSWRzLmhhcyhpc3N1ZS50ZXh0KSkge1xyXG4gICAgICAgICAgICAgIHN0b3JlSWRzLmFkZChpc3N1ZS50ZXh0KTtcclxuICAgICAgICAgICAgICB1bmlxdWVJc3N1ZXMucHVzaChpc3N1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgY29uc3QgZmlsdHJlZE9iamVjdCA9ICh0aGlzLmRhdGFPYmplY3QuZmluZCgob2JqOiBhbnkpID0+IG9iai5EZXNjcmlwdGlvbiA9PT0gXCJTdG9yZSBJRFwiKSlcclxuICAgICAgICAgIGZpbHRyZWRPYmplY3QuSXNzdWVzID0gdW5pcXVlSXNzdWVzO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfSxcclxuICAgIH0pXHJcbiAgfVxyXG4gIHZpZXdVc2VyKCl7XHJcblxyXG4gIH1cclxuXHJcbiAgZGF0YU9iamVjdDE6IGFueSA9IFtcclxuICAgIHsgRGVzY3JpcHRpb246ICdTdGF0dXMnLCBJc3N1ZXM6IFt7IHRleHQ6IFwiU3RvcmUgT3BlcmF0aW9uIElzc3Vlc1wiLCBpZDogJ1N0b3JlIE9wZXJhdGlvbiBJc3N1ZXMnIH0sIHsgdGV4dDogXCJJbnRlcm5ldCBJc3N1ZXNcIiwgaWQ6ICdJbnRlcm5ldCBJc3N1ZXMnIH0sIFxyXG4gICAgICB7IHRleHQ6IFwiQ2FtZXJhIElzc3Vlc1wiLCBpZDogXCJDYW1lcmEgSXNzdWVzXCIgfSx7IHRleHQ6IFwiU3lzdGVtIElzc3Vlc1wiLCBpZDogXCJTeXN0ZW0gSXNzdWVzXCIgfSx7IHRleHQ6IFwiQXBwbGljYXRpb24gSXNzdWVzXCIsIGlkOiBcIkFwcGxpY2F0aW9uIElzc3Vlc1wiIH0se3RleHQ6IFwiTm90IElkZW50aWZpZWRcIiwgaWQ6IFwibm90aWRlbnRpZmllZFwifV0gfSxcclxuICBdXHJcbiAgYXBwbHlGaWx0ZXJzKGV2ZW50OmFueSl7XHJcbiAgICBpZiAoZXZlbnQ/Lmxlbmd0aCkge1xyXG4gICAgICBldmVudC5mb3JFYWNoKChlbGVtZW50OiBhbnkpID0+IHtcclxuICAgICAgICBpZiAoZWxlbWVudC5EZXNjcmlwdGlvbiA9PT0gXCJTdGF0dXNcIikge1xyXG4gICAgICAgICAgdGhpcy5zZWxlY3RlZElzc3VlID0gZWxlbWVudC5Jc3N1ZXMubWFwKCh2YWw6IGFueSkgPT4gdmFsPy5pZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KVxyXG4gICAgICB9XHJcbiAgICAgIGlmKHRoaXMuc2VsZWN0ZWRJc3N1ZS5sZW5ndGggPT09IDYpXHJcbiAgICAgICAgdGhpcy5zZWxlY3RlZElzc3VlID1bXTtcclxuICAgICAgdGhpcy51c2VyVGlja2V0TGlzdCgnb3BlbicpO1xyXG4gICAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KCdpbnByb2dyZXNzJyk7XHJcbiAgICAgIHRoaXMudXNlclRpY2tldExpc3QoJ2Nsb3NlZCcpO1xyXG4gICAgfVxyXG5cclxufVxyXG4iLCJcclxuPGRpdiBjbGFzcz1cImNhcmRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLWhlYWRlciBib3JkZXItMCBwdC0zXCI+XHJcbiAgICAgICAgPGgzIGNsYXNzPVwiY2FyZC10aXRsZSBhbGlnbi1pdGVtcy1zdGFydCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInR5cGUgIT09ICdtYXQnICYmIHR5cGUgIT09ICdkYXRhTWlzbWF0Y2gnXCIgY2xhc3M9XCJjYXJkLWxhYmVsIG1iLTJcIj57e3R5cGUgfCB0aXRsZWNhc2V9fSBUaWNrZXRzPC9zcGFuPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInR5cGUgPT09ICdkYXRhTWlzbWF0Y2gnXCIgY2xhc3M9XCJjYXJkLWxhYmVsIG1iLTJcIj5EYXRhIE1pc21hdGNoIFRpY2tldHM8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidHlwZSA9PT0gJ21hdCdcIiBjbGFzcz1cImNhcmQtbGFiZWwgbWItMlwiPkVtcGxveWVlIE1hdDwvc3Bhbj5cclxuICAgICAgICAgICAgPCEtLSA8c3BhbiBjbGFzcz1cInRleHQtc3ViIG1iLTJcIj5MYXN0IHVwZGF0ZWQgMSBob3VyIGFnbzwvc3Bhbj4gLS0+XHJcbiAgICAgICAgPC9oMz5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwidXNlckRhdGEgPT09J1dvcmtzcGFjZSdcIiBjbGFzcz1cImNhcmQtdG9vbGJhclwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBwb3NpdGlvbi1yZWxhdGl2ZSBteS0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdmctaWNvbiBzdmctaWNvbi0xIHBvc2l0aW9uLWFic29sdXRlIG1zLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCBvcGFjaXR5PVwiMC41XCIgeD1cIjE3LjAzNjVcIiB5PVwiMTUuMTIyM1wiIHdpZHRoPVwiOC4xNTU0NlwiIGhlaWdodD1cIjJcIiByeD1cIjFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybT1cInJvdGF0ZSg0NSAxNy4wMzY1IDE1LjEyMjMpXCIgZmlsbD1cImN1cnJlbnRDb2xvclwiPjwvcmVjdD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMSAxOUM2LjU1NTU2IDE5IDMgMTUuNDQ0NCAzIDExQzMgNi41NTU1NiA2LjU1NTU2IDMgMTEgM0MxNS40NDQ0IDMgMTkgNi41NTU1NiAxOSAxMUMxOSAxNS40NDQ0IDE1LjQ0NDQgMTkgMTEgMTlaTTExIDVDNy41MzMzMyA1IDUgNy41MzMzMyA1IDExQzUgMTQuNDY2NyA3LjUzMzMzIDE3IDExIDE3QzE0LjQ2NjcgMTcgMTcgMTQuNDY2NyAxNyAxMUMxNyA3LjUzMzMzIDE0LjQ2NjcgNSAxMSA1WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cImN1cnJlbnRDb2xvclwiPjwvcGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sIHBzLTE0IG1lLTJcIiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiU2VhcmNoXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCIgWyhuZ01vZGVsKV09XCJzZWFyY2hXb3Jrc3BhY2VcIiAoY2hhbmdlKT1cInNlYXJjaFRpY2tldHMoKVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIDxsaWItZmlsdGVycyAqbmdJZj1cInR5cGUgIT09ICdtYXQnICYmIHR5cGUgIT09J2RhdGFNaXNtYXRjaCdcIiBbZGF0YU9iamVjdF09XCJkYXRhT2JqZWN0MVwiIChhcHBsaWVkRmlsdGVycyk9XCJhcHBseUZpbHRlcnMoJGV2ZW50KVwiPjwvbGliLWZpbHRlcnM+XHJcbiAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxkaXYgKm5nSWY9XCJ0eXBlICE9PSAnbWF0J1wiIGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9wZW5Ecm9wZG93bigkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRlZmF1bHQgbXgtMiBidG4tb3V0bGluZSBidG4tb3V0bGluZS1kZWZhdWx0IHJvdW5kZWQtMyB0ZXh0LW5vd3JhcCBib3JkZXItdmFsXCI+PHN2Z1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk01IDEwSDE1TTIuNSA1SDE3LjVNNy41IDE1SDEyLjVcIiBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtMlwiPkZpbHRlcjwvc3Bhbj4gPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJkcm9wRG93blwiIGNsYXNzPVwiY2FyZCBweS0xIHctMjAwcHggcG9zaXRpb24tYWJzb2x1dGUgdG9wLTUwcHggZW5kLTBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZHJvcGRvd25JdGVtc1wiIGNsYXNzPVwibGlzdC11bnN0eWxlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSBbbmdDbGFzc109XCJ0aGlzLnNlbGVjdGVkSXNzdWUgPT09IGl0ZW0gPyAnYWN0aXZlJyA6ICcnXCIgY2xhc3M9XCJjYW1lcmEgcHgtNSBpdGVtcyBmdy1zZW1pYm9sZCBjdXJzb3ItcG9pbnRlciBweS0yXCIgKGNsaWNrKT1cInNlbGVjdEl0ZW0oaXRlbSlcIj57e2l0ZW19fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/Lm1hbmFnZV90aWNrZXRzX2lzRG93bmxvYWQgJiYgKCFub0RhdGEub3BlbiB8fCAhbm9EYXRhLmlucHJvZ3Jlc3MgfHwgIW5vRGF0YS5jbG9zZWQpXCIgKGNsaWNrKT1cImV4cG9ydERhdGEoKVwiIGNsYXNzPVwiYnRuIGJ0bi1vdXRsaW5lIHAtMyB0ZXh0LW5vd3JhcCBib3JkZXIgYm9yZGVyLWdyYXkgbXMtMiBtZS0yXCIgdHlwZT1cImJ1dHRvblwiPjxzcGFuPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTE3LjUgMTIuNVYxNS44MzMzQzE3LjUgMTYuMjc1NCAxNy4zMjQ0IDE2LjY5OTMgMTcuMDExOCAxNy4wMTE4QzE2LjY5OTMgMTcuMzI0NCAxNi4yNzU0IDE3LjUgMTUuODMzMyAxNy41SDQuMTY2NjdDMy43MjQ2NCAxNy41IDMuMzAwNzIgMTcuMzI0NCAyLjk4ODE2IDE3LjAxMThDMi42NzU1OSAxNi42OTkzIDIuNSAxNi4yNzU0IDIuNSAxNS44MzMzVjEyLjVNMTQuMTY2NyA2LjY2NjY3TDEwIDIuNU0xMCAyLjVMNS44MzMzMyA2LjY2NjY3TTEwIDIuNVYxMi41XCIgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj4gRXhwb3J0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy5tYW5hZ2VfdGlja2V0c19pc0VkaXRcIiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInRha2VUaWNrZXQoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IG14LTIgcm91bmRlZC0zIHRleHQtbm93cmFwXCI+PHNwYW4gY2xhc3M9XCJtcy0yIHRleHQtd2hpdGVcIj5UYWtlIFRpY2tldDwvc3Bhbj4gPC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cInVzZXJEYXRhID09PSdIaXN0b3J5J1wiIGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHBvc2l0aW9uLXJlbGF0aXZlIG15LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN2Zy1pY29uIHN2Zy1pY29uLTEgcG9zaXRpb24tYWJzb2x1dGUgbXMtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IG9wYWNpdHk9XCIwLjVcIiB4PVwiMTcuMDM2NVwiIHk9XCIxNS4xMjIzXCIgd2lkdGg9XCI4LjE1NTQ2XCIgaGVpZ2h0PVwiMlwiIHJ4PVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwicm90YXRlKDQ1IDE3LjAzNjUgMTUuMTIyMylcIiBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9yZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTExIDE5QzYuNTU1NTYgMTkgMyAxNS40NDQ0IDMgMTFDMyA2LjU1NTU2IDYuNTU1NTYgMyAxMSAzQzE1LjQ0NDQgMyAxOSA2LjU1NTU2IDE5IDExQzE5IDE1LjQ0NDQgMTUuNDQ0NCAxOSAxMSAxOVpNMTEgNUM3LjUzMzMzIDUgNSA3LjUzMzMzIDUgMTFDNSAxNC40NjY3IDcuNTMzMzMgMTcgMTEgMTdDMTQuNDY2NyAxNyAxNyAxNC40NjY3IDE3IDExQzE3IDcuNTMzMzMgMTQuNDY2NyA1IDExIDVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgcHMtMTQgbWUtMlwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2hcIiBhdXRvY29tcGxldGU9XCJvZmZcIiBbKG5nTW9kZWwpXT1cInNlYXJjaEhpc3RvcnlcIiAoY2hhbmdlKT1cInNlYXJjaEhpc3RvcnlUYWJsZSgpXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIDxsaWItZmlsdGVycyAqbmdJZj1cInR5cGUgIT09ICdtYXQnICYmIHR5cGUhPT0nYXVkaXQnICYmIGZpbHRlclN0b3Jlcz8ubGVuZ3RoID4gMFwiIFtkYXRhT2JqZWN0XT1cImRhdGFPYmplY3RcIiAoYXBwbGllZEZpbHRlcnMpPVwicmVjZWl2ZURhdGEoJGV2ZW50KVwiID48L2xpYi1maWx0ZXJzPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/Lm1hbmFnZV90aWNrZXRzX2lzRG93bmxvYWQgJiYgIWhpc3RvcnlOb2RhdGFcIiAoY2xpY2spPVwiRXhwb3J0SGlzdG9yeWFzWGxzeCgpXCIgY2xhc3M9XCJidG4gYnRuLW91dGxpbmUgcC0zIGJvcmRlciBib3JkZXItZ3JheSBtcy0yIG1lLTIgdGV4dC1ub3dyYXBcIiB0eXBlPVwiYnV0dG9uXCI+PHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjAgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xNy41IDEyLjVWMTUuODMzM0MxNy41IDE2LjI3NTQgMTcuMzI0NCAxNi42OTkzIDE3LjAxMTggMTcuMDExOEMxNi42OTkzIDE3LjMyNDQgMTYuMjc1NCAxNy41IDE1LjgzMzMgMTcuNUg0LjE2NjY3QzMuNzI0NjQgMTcuNSAzLjMwMDcyIDE3LjMyNDQgMi45ODgxNiAxNy4wMTE4QzIuNjc1NTkgMTYuNjk5MyAyLjUgMTYuMjc1NCAyLjUgMTUuODMzM1YxMi41TTE0LjE2NjcgNi42NjY2N0wxMCAyLjVNMTAgMi41TDUuODMzMzMgNi42NjY2N00xMCAyLjVWMTIuNVwiIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPiBFeHBvcnRcclxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBweS0yXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBvdmVyZmxvdy1hdXRvIGgtNTVweFwiPlxyXG4gICAgICAgICAgICA8dWwgY2xhc3M9XCJuYXYgbmF2LXN0cmV0Y2ggbmF2LWxpbmUtdGFicyBuYXYtbGluZS10YWJzLTJ4IGJvcmRlci10cmFuc3BhcmVudCBmcy01IGZ3LWJvbGRlciBmbGV4LW5vd3JhcFwiPlxyXG4gICAgICAgICAgICAgICAgPGxpICpuZ0lmPVwidHlwZSAhPT0gJ2F1ZGl0J1wiIChjbGljayk9XCJ1c2VyVmFsdWUoJ1dvcmtzcGFjZScpXCIgIGNsYXNzPVwibmF2LWl0ZW0gY3Vyc29yLXBvaW50ZXJcIj48YSBbbmdDbGFzc109XCJ1c2VyRGF0YSA9PT0nV29ya3NwYWNlJyA/ICdhY3RpdmUnIDonJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibmF2LWxpbmsgdGV4dC1hY3RpdmUtcHJpbWFyeSBtZS02XCI+V29ya3NwYWNlPC9hPlxyXG4gICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICAgIDwhLS0gKm5nSWY9XCJ0eXBlIT09J2RhdGFNaXNtYXRjaCdcIiAtLT5cclxuICAgICAgICAgICAgICAgIDxsaSAoY2xpY2spPVwidXNlclZhbHVlKCdIaXN0b3J5JylcIiBjbGFzcz1cIm5hdi1pdGVtIGN1cnNvci1wb2ludGVyXCI+PGEgW25nQ2xhc3NdPVwidXNlckRhdGEgPT09J0hpc3RvcnknID8gJ2FjdGl2ZScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuYXYtbGluayB0ZXh0LWFjdGl2ZS1wcmltYXJ5IG1lLTZcIj5IaXN0b3J5PC9hPjwvbGk+XHJcbiAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2ICpuZ0lmPVwidXNlckRhdGEgPT09J1dvcmtzcGFjZSdcIiBjbGFzcz1cImNhcmQtYm9keVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS00XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgaC0xMDAgcm91bmRlZC0yIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWRnZS1saWdodC1kZWZhdWx0IHB4LTMgcHktNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPk9wZW48L3NwYW4+PHNwYW4gKm5nSWY9XCJzdGF0dXNPcGVuPy5sZW5ndGggPiAwICYmICFsb2FkaW5nLm9wZW4gJiYgIW5vRGF0YS5vcGVuXCIgY2xhc3M9XCJyb3VuZGVkLTUgbXMtMyBweC0xIGJvcmRlciBib3JkZXItZ3JheSBiZy1iYWRnZVwiPnt7c3RhdHVzT3Blbj8ubGVuZ3RofX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd2JvZHkgaC0xMDAgcHgtNCBweS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbG9hZGluZy5vcGVuICYmICFub0RhdGEub3BlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgb3BlbiBvZiBzdGF0dXNPcGVuOyBsZXQgaW5kZXggPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJvcGVuLmlzT3BlbiA/ICdhY3RpdmUnOicnXCIgIGNsYXNzPVwiaXNzdWVjYXJkIGN1cnNvci1wb2ludGVyIHctMTAwIG1iLTVcIiAoY2xpY2spPVwicm91dGV0b1RpY2tldChvcGVuKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib3Blbi5pc09wZW5cIiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmdy1zZW1pYm9sZFwiPnt7b3Blbj8uc3RvcmVJZCA/IG9wZW4/LnN0b3JlSWQgOictLSd9fTwvbGFiZWw+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZ3LXNlbWlib2xkIG0tMlwiPnt7b3Blbj8uc3RvcmVOYW1lID8gb3Blbj8uc3RvcmVOYW1lIDonLS0nfX08L2xhYmVsPjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1kZWZhdWx0IG1lLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJtZS0yXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzczMl82MDI3NylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTggMVYzTTQgMVYzTTEuNSA1SDEwLjVNMi41IDJIOS41QzEwLjA1MjMgMiAxMC41IDIuNDQ3NzIgMTAuNSAzVjEwQzEwLjUgMTAuNTUyMyAxMC4wNTIzIDExIDkuNSAxMUgyLjVDMS45NDc3MiAxMSAxLjUgMTAuNTUyMyAxLjUgMTBWM0MxLjUgMi40NDc3MiAxLjk0NzcyIDIgMi41IDJaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzczMl82MDI3N1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz57e29wZW4/LkRhdGUgPyBvcGVuPy5EYXRlIDogJy0tJ319XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIm9wZW4/LmluZnJhSXNzdWVcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXdhcm5pbmdcIj57e29wZW4/LmluZnJhSXNzdWUgPyBvcGVuPy5pbmZyYUlzc3VlIDonLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidHlwZSA9PT0naW5zdGFsbGF0aW9uJ1wiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtcHJpbWFyeVwiPnt7b3Blbj8uaW5zdGFsbGF0aW9uU3RhdHVzID8gb3Blbj8uaW5zdGFsbGF0aW9uU3RhdHVzIDonLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidHlwZSA9PT0nZGF0YU1pc21hdGNoJ1wiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtd2FybmluZ1wiPnt7b3Blbj8uaXNzdWVUeXBlID09PSAnaGlnaGNvdW50JyA/ICdIaWdoIENvdW50JyA6IChvcGVuPy5pc3N1ZVR5cGUgPT09ICdsb3djb3VudCcgPyAnTG93IENvdW50JyA6ICcnKX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm9wZW4/Lm5vdGlmaWNhdGlvblwiIGNsYXNzPVwicHJvZmlsZSBkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmUgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy9CZWxsbm90aWZpY2F0aW9uLnBuZ1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAoY2xpY2spPVwic2VsZWN0VmlldygkZXZlbnQsaW5kZXgsJ29wZW4nKVwiPiA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIxXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIxIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMy4xNjYgMi41SDE4LjE2Nk0xOC4xNjYgMi41VjcuNU0xOC4xNjYgMi41TDEyLjMzMjcgOC4zMzMzM004LjE2NjAyIDE3LjVIMy4xNjYwMk0zLjE2NjAyIDE3LjVWMTIuNU0zLjE2NjAyIDE3LjVMOC45OTkzNSAxMS42NjY3XCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuNjY2NjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gdGV4dC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+PHN2ZyBjbGFzcz1cIm1lLTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNzk2NiAxLjQyNzUyQzEwLjY1NDEgMS4yOTY4MSAxMC40NjY3IDEuMjI2MTcgMTAuMjczMyAxLjIzMDM3QzEwLjA4IDEuMjM0NTYgOS44OTU4IDEuMzEzMjUgOS43NTkxMSAxLjQ1MDAyTDEuNDg5MTEgOS43MjAwMkMxLjQxOTM4IDkuNzg5NjggMS4zNjQwNiA5Ljg3MjM5IDEuMzI2MzIgOS45NjM0NEMxLjI4ODU3IDEwLjA1NDUgMS4yNjkxNSAxMC4xNTIxIDEuMjY5MTUgMTAuMjUwNkMxLjI2OTE1IDEwLjM0OTIgMS4yODg1NyAxMC40NDY4IDEuMzI2MzIgMTAuNTM3OUMxLjM2NDA2IDEwLjYyODkgMS40MTkzOCAxMC43MTE2IDEuNDg5MTEgMTAuNzgxM0wyLjY0NjYxIDExLjkzODhDMi42NTYzMiAxMS45NDE4IDIuNjY2NDcgMTEuOTQzIDIuNjc2NjEgMTEuOTQyNUMyLjcxNDExIDExLjk0MjUgMi43NjQxMSAxMS45Mjg4IDIuODExNjEgMTEuODk3NUMzLjI2ODQ1IDExLjU5MjcgMy44MTY4IDExLjQ1NTcgNC4zNjMzMSAxMS41MDk3QzQuOTA5ODMgMTEuNTYzNyA1LjQyMDczIDExLjgwNTUgNS44MDkwNSAxMi4xOTM4QzYuMTk3MzggMTIuNTgyMiA2LjQzOTEzIDEzLjA5MzEgNi40OTMxNiAxMy42Mzk2QzYuNTQ3MTggMTQuMTg2MSA2LjQxMDE0IDE0LjczNDQgNi4xMDUzNiAxNS4xOTEzQzYuMDc3OTIgMTUuMjMxMSA2LjA2MjMxIDE1LjI3NzkgNi4wNjAzNiAxNS4zMjYzQzYuMDYwMzYgMTUuMzQyNSA2LjA2Mjg2IDE1LjM1MTMgNi4wNjQxMSAxNS4zNTVMNy4xOTQxMSAxNi40ODYzQzcuMjY1MTIgMTYuNTU3NCA3LjM0OTcxIDE2LjYxMzYgNy40NDI4NSAxNi42NTE0QzcuNTM1OTkgMTYuNjg5MiA3LjYzNTc5IDE2LjcwNzkgNy43MzYzIDE2LjcwNjRDNy44MzY4MiAxNi43MDQ5IDcuOTM2IDE2LjY4MzIgOC4wMjc5NiAxNi42NDI2QzguMTE5OTIgMTYuNjAyIDguMjAyNzggMTYuNTQzMyA4LjI3MTYxIDE2LjQ3TDE2LjUyMDQgNy43MDUwMkMxNi41ODgzIDcuNjMyNjcgMTYuNjQxMiA3LjU0NzU1IDE2LjY3NiA3LjQ1NDZDMTYuNzEwOCA3LjM2MTY1IDE2LjcyNjggNy4yNjI3MiAxNi43MjMxIDcuMTYzNTRDMTYuNzE5MyA3LjA2NDM2IDE2LjY5NiA2Ljk2NjkxIDE2LjY1NDMgNi44NzY4M0MxNi42MTI2IDYuNzg2NzUgMTYuNTUzNSA2LjcwNTgzIDE2LjQ4MDQgNi42Mzg3N0wxNS4zNzI5IDUuNjIyNTJIMTUuMzY5MUMxNS4zNTE0IDUuNjE5MDIgMTUuMzMzMSA1LjYxOTAyIDE1LjMxNTQgNS42MjI1MkMxNS4yNDQ4IDUuNjM3MjIgMTUuMTgwNiA1LjY3MzQ4IDE1LjEzMTYgNS43MjYyN0MxNC45MjI3IDUuOTYzMDUgMTQuNjY4NyA2LjE1NTc5IDE0LjM4NDUgNi4yOTMyM0MxNC4xMDAyIDYuNDMwNjcgMTMuNzkxNCA2LjUxMDA1IDEzLjQ3NjEgNi41MjY3M0MxMy4xNjA4IDYuNTQzNDEgMTIuODQ1MyA2LjQ5NzA0IDEyLjU0ODEgNi4zOTAzNUMxMi4yNTEgNi4yODM2NiAxMS45NzggNi4xMTg3OSAxMS43NDUzIDUuOTA1MzdDMTEuNTEyNiA1LjY5MTk1IDExLjMyNDggNS40MzQyOCAxMS4xOTI5IDUuMTQ3NDJDMTEuMDYxIDQuODYwNTUgMTAuOTg3NiA0LjU1MDI3IDEwLjk3NyA0LjIzNDdDMTAuOTY2NCAzLjkxOTEzIDExLjAxODggMy42MDQ2MiAxMS4xMzEyIDMuMzA5NTZDMTEuMjQzNiAzLjAxNDQ5IDExLjQxMzcgMi43NDQ4MSAxMS42MzE2IDIuNTE2MjdDMTEuNjc5NyAyLjQ2MjY0IDExLjcwOTggMi4zOTUzNSAxMS43MTc5IDIuMzIzNzdDMTEuNzIwMSAyLjMwNDg4IDExLjcxODQgMi4yODU3MiAxMS43MTI5IDIuMjY3NTJMMTAuNzk2NiAxLjQyNzUyWk05LjA1Mjg2IDAuNzQyNTIyQzkuMzcxNzYgMC40MjM2MzggOS44MDE0NSAwLjI0MDE3NCAxMC4yNTIzIDAuMjMwMzkzQzEwLjcwMzIgMC4yMjA2MTEgMTEuMTQwNCAwLjM4NTI2OCAxMS40NzI5IDAuNjkwMDIyTDEyLjM4OTEgMS41MzEyN0MxMi42NjI5IDEuNzgxMjcgMTIuNzM5MSAyLjEyMjUyIDEyLjcxNDEgMi40MTM3N0MxMi42ODc5IDIuNzAxMjcgMTIuNTYxNiAyLjk4MjUyIDEyLjM2NjYgMy4xOTM3N0MxMi4yNDQ2IDMuMzI2OSAxMi4xNDk5IDMuNDgyNzYgMTIuMDg4MSAzLjY1MjQ2QzEyLjAyNjMgMy44MjIxNiAxMS45OTg1IDQuMDAyMzcgMTIuMDA2NCA0LjE4MjgxQzEyLjAxNDIgNC4zNjMyNSAxMi4wNTc1IDQuNTQwMzcgMTIuMTMzOCA0LjcwNDA3QzEyLjIxMDEgNC44Njc3OCAxMi4zMTc5IDUuMDE0ODUgMTIuNDUxIDUuMTM2OUMxMi41ODQxIDUuMjU4OTQgMTIuNzQgNS4zNTM1OCAxMi45MDk3IDUuNDE1MzlDMTMuMDc5NCA1LjQ3NzIgMTMuMjU5NiA1LjUwNDk4IDEzLjQ0IDUuNDk3MTRDMTMuNjIwNSA1LjQ4OTMxIDEzLjc5NzYgNS40NDYwMSAxMy45NjEzIDUuMzY5NzJDMTQuMTI1IDUuMjkzNDQgMTQuMjcyMSA1LjE4NTY1IDE0LjM5NDEgNS4wNTI1MkMxNC41ODc5IDQuODQwMDIgMTQuODU2NiA0LjY5MDAyIDE1LjE0MDQgNC42Mzg3N0MxNS4zMDA0IDQuNjA2NjUgMTUuNDY1NiA0LjYxMjE4IDE1LjYyMzEgNC42NTQ5MkMxNS43ODA2IDQuNjk3NjUgMTUuOTI2IDQuNzc2NDMgMTYuMDQ3OSA0Ljg4NTAyTDE3LjE1NjYgNS45MDEyN0MxNy4zMjczIDYuMDU3OSAxNy40NjUyIDYuMjQ2ODcgMTcuNTYyMyA2LjQ1NzJDMTcuNjU5NCA2LjY2NzU0IDE3LjcxMzggNi44OTUwNyAxNy43MjIzIDcuMTI2NThDMTcuNzMwOCA3LjM1ODA5IDE3LjY5MzIgNy41ODg5OSAxNy42MTE4IDcuODA1ODdDMTcuNTMwMyA4LjAyMjc2IDE3LjQwNjYgOC4yMjEzMSAxNy4yNDc5IDguMzkwMDJMOS4wMDAzNiAxNy4xNTVDOC44Mzk3NSAxNy4zMjU3IDguNjQ2NDkgMTcuNDYyNCA4LjQzMjA2IDE3LjU1NjlDOC4yMTc2MyAxNy42NTE1IDcuOTg2MzggMTcuNzAyIDcuNzUyMDUgMTcuNzA1NUM3LjUxNzcxIDE3LjcwOSA3LjI4NTA2IDE3LjY2NTQgNy4wNjc5IDE3LjU3NzNDNi44NTA3NCAxNy40ODkyIDYuNjUzNDkgMTcuMzU4MyA2LjQ4Nzg2IDE3LjE5MjVMNS4zNTc4NiAxNi4wNjI1QzQuOTI0MTEgMTUuNjI4OCA1LjAyOTExIDE1LjAwMzggNS4yNzQxMSAxNC42Mzc1QzUuNDQ5ODggMTQuMzczMSA1LjUyODcxIDE0LjA1NTkgNS40OTcyIDEzLjc0QzUuNDY1NjkgMTMuNDI0IDUuMzI1NzkgMTMuMTI4NyA1LjEwMTI1IDEyLjkwNDFDNC44NzY3MiAxMi42Nzk2IDQuNTgxMzkgMTIuNTM5NyA0LjI2NTQyIDEyLjUwODJDMy45NDk0NSAxMi40NzY3IDMuNjMyMzEgMTIuNTU1NSAzLjM2Nzg2IDEyLjczMTNDMi45OTkxMSAxMi45NzUgMi4zNzUzNiAxMy4wOCAxLjk0MTYxIDEyLjY0NUwwLjc4NDExMSAxMS40ODc1QzAuNjIxNTg5IDExLjMyNSAwLjQ5MjY2OSAxMS4xMzIxIDAuNDA0NzEyIDEwLjkxOThDMC4zMTY3NTUgMTAuNzA3NCAwLjI3MTQ4NCAxMC40Nzk4IDAuMjcxNDg0IDEwLjI1QzAuMjcxNDg0IDEwLjAyMDIgMC4zMTY3NTUgOS43OTI2MiAwLjQwNDcxMiA5LjU4MDI5QzAuNDkyNjY5IDkuMzY3OTUgMC42MjE1ODkgOS4xNzUwMyAwLjc4NDExMSA5LjAxMjUyTDkuMDUyODYgMC43NDI1MjJaXCIgZmlsbD1cIiM2NjcwODVcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNzk2NiAxLjQyNzUyQzEwLjY1NDEgMS4yOTY4MSAxMC40NjY3IDEuMjI2MTcgMTAuMjczMyAxLjIzMDM3QzEwLjA4IDEuMjM0NTYgOS44OTU4IDEuMzEzMjUgOS43NTkxMSAxLjQ1MDAyTDEuNDg5MTEgOS43MjAwMkMxLjQxOTM4IDkuNzg5NjggMS4zNjQwNiA5Ljg3MjM5IDEuMzI2MzIgOS45NjM0NEMxLjI4ODU3IDEwLjA1NDUgMS4yNjkxNSAxMC4xNTIxIDEuMjY5MTUgMTAuMjUwNkMxLjI2OTE1IDEwLjM0OTIgMS4yODg1NyAxMC40NDY4IDEuMzI2MzIgMTAuNTM3OUMxLjM2NDA2IDEwLjYyODkgMS40MTkzOCAxMC43MTE2IDEuNDg5MTEgMTAuNzgxM0wyLjY0NjYxIDExLjkzODhDMi42NTYzMiAxMS45NDE4IDIuNjY2NDcgMTEuOTQzIDIuNjc2NjEgMTEuOTQyNUMyLjcxNDExIDExLjk0MjUgMi43NjQxMSAxMS45Mjg4IDIuODExNjEgMTEuODk3NUMzLjI2ODQ1IDExLjU5MjcgMy44MTY4IDExLjQ1NTcgNC4zNjMzMSAxMS41MDk3QzQuOTA5ODMgMTEuNTYzNyA1LjQyMDczIDExLjgwNTUgNS44MDkwNSAxMi4xOTM4QzYuMTk3MzggMTIuNTgyMiA2LjQzOTEzIDEzLjA5MzEgNi40OTMxNiAxMy42Mzk2QzYuNTQ3MTggMTQuMTg2MSA2LjQxMDE0IDE0LjczNDQgNi4xMDUzNiAxNS4xOTEzQzYuMDc3OTIgMTUuMjMxMSA2LjA2MjMxIDE1LjI3NzkgNi4wNjAzNiAxNS4zMjYzQzYuMDYwMzYgMTUuMzQyNSA2LjA2Mjg2IDE1LjM1MTMgNi4wNjQxMSAxNS4zNTVMNy4xOTQxMSAxNi40ODYzQzcuMjY1MTIgMTYuNTU3NCA3LjM0OTcxIDE2LjYxMzYgNy40NDI4NSAxNi42NTE0QzcuNTM1OTkgMTYuNjg5MiA3LjYzNTc5IDE2LjcwNzkgNy43MzYzIDE2LjcwNjRDNy44MzY4MiAxNi43MDQ5IDcuOTM2IDE2LjY4MzIgOC4wMjc5NiAxNi42NDI2QzguMTE5OTIgMTYuNjAyIDguMjAyNzggMTYuNTQzMyA4LjI3MTYxIDE2LjQ3TDE2LjUyMDQgNy43MDUwMkMxNi41ODgzIDcuNjMyNjcgMTYuNjQxMiA3LjU0NzU1IDE2LjY3NiA3LjQ1NDZDMTYuNzEwOCA3LjM2MTY1IDE2LjcyNjggNy4yNjI3MiAxNi43MjMxIDcuMTYzNTRDMTYuNzE5MyA3LjA2NDM2IDE2LjY5NiA2Ljk2NjkxIDE2LjY1NDMgNi44NzY4M0MxNi42MTI2IDYuNzg2NzUgMTYuNTUzNSA2LjcwNTgzIDE2LjQ4MDQgNi42Mzg3N0wxNS4zNzI5IDUuNjIyNTJIMTUuMzY5MUMxNS4zNTE0IDUuNjE5MDIgMTUuMzMzMSA1LjYxOTAyIDE1LjMxNTQgNS42MjI1MkMxNS4yNDQ4IDUuNjM3MjIgMTUuMTgwNiA1LjY3MzQ4IDE1LjEzMTYgNS43MjYyN0MxNC45MjI3IDUuOTYzMDUgMTQuNjY4NyA2LjE1NTc5IDE0LjM4NDUgNi4yOTMyM0MxNC4xMDAyIDYuNDMwNjcgMTMuNzkxNCA2LjUxMDA1IDEzLjQ3NjEgNi41MjY3M0MxMy4xNjA4IDYuNTQzNDEgMTIuODQ1MyA2LjQ5NzA0IDEyLjU0ODEgNi4zOTAzNUMxMi4yNTEgNi4yODM2NiAxMS45NzggNi4xMTg3OSAxMS43NDUzIDUuOTA1MzdDMTEuNTEyNiA1LjY5MTk1IDExLjMyNDggNS40MzQyOCAxMS4xOTI5IDUuMTQ3NDJDMTEuMDYxIDQuODYwNTUgMTAuOTg3NiA0LjU1MDI3IDEwLjk3NyA0LjIzNDdDMTAuOTY2NCAzLjkxOTEzIDExLjAxODggMy42MDQ2MiAxMS4xMzEyIDMuMzA5NTZDMTEuMjQzNiAzLjAxNDQ5IDExLjQxMzcgMi43NDQ4MSAxMS42MzE2IDIuNTE2MjdDMTEuNjc5NyAyLjQ2MjY0IDExLjcwOTggMi4zOTUzNSAxMS43MTc5IDIuMzIzNzdDMTEuNzIwMSAyLjMwNDg4IDExLjcxODQgMi4yODU3MiAxMS43MTI5IDIuMjY3NTJMMTAuNzk2NiAxLjQyNzUyWk05LjA1Mjg2IDAuNzQyNTIyQzkuMzcxNzYgMC40MjM2MzggOS44MDE0NSAwLjI0MDE3NCAxMC4yNTIzIDAuMjMwMzkzQzEwLjcwMzIgMC4yMjA2MTEgMTEuMTQwNCAwLjM4NTI2OCAxMS40NzI5IDAuNjkwMDIyTDEyLjM4OTEgMS41MzEyN0MxMi42NjI5IDEuNzgxMjcgMTIuNzM5MSAyLjEyMjUyIDEyLjcxNDEgMi40MTM3N0MxMi42ODc5IDIuNzAxMjcgMTIuNTYxNiAyLjk4MjUyIDEyLjM2NjYgMy4xOTM3N0MxMi4yNDQ2IDMuMzI2OSAxMi4xNDk5IDMuNDgyNzYgMTIuMDg4MSAzLjY1MjQ2QzEyLjAyNjMgMy44MjIxNiAxMS45OTg1IDQuMDAyMzcgMTIuMDA2NCA0LjE4MjgxQzEyLjAxNDIgNC4zNjMyNSAxMi4wNTc1IDQuNTQwMzcgMTIuMTMzOCA0LjcwNDA3QzEyLjIxMDEgNC44Njc3OCAxMi4zMTc5IDUuMDE0ODUgMTIuNDUxIDUuMTM2OUMxMi41ODQxIDUuMjU4OTQgMTIuNzQgNS4zNTM1OCAxMi45MDk3IDUuNDE1MzlDMTMuMDc5NCA1LjQ3NzIgMTMuMjU5NiA1LjUwNDk4IDEzLjQ0IDUuNDk3MTRDMTMuNjIwNSA1LjQ4OTMxIDEzLjc5NzYgNS40NDYwMSAxMy45NjEzIDUuMzY5NzJDMTQuMTI1IDUuMjkzNDQgMTQuMjcyMSA1LjE4NTY1IDE0LjM5NDEgNS4wNTI1MkMxNC41ODc5IDQuODQwMDIgMTQuODU2NiA0LjY5MDAyIDE1LjE0MDQgNC42Mzg3N0MxNS4zMDA0IDQuNjA2NjUgMTUuNDY1NiA0LjYxMjE4IDE1LjYyMzEgNC42NTQ5MkMxNS43ODA2IDQuNjk3NjUgMTUuOTI2IDQuNzc2NDMgMTYuMDQ3OSA0Ljg4NTAyTDE3LjE1NjYgNS45MDEyN0MxNy4zMjczIDYuMDU3OSAxNy40NjUyIDYuMjQ2ODcgMTcuNTYyMyA2LjQ1NzJDMTcuNjU5NCA2LjY2NzU0IDE3LjcxMzggNi44OTUwNyAxNy43MjIzIDcuMTI2NThDMTcuNzMwOCA3LjM1ODA5IDE3LjY5MzIgNy41ODg5OSAxNy42MTE4IDcuODA1ODdDMTcuNTMwMyA4LjAyMjc2IDE3LjQwNjYgOC4yMjEzMSAxNy4yNDc5IDguMzkwMDJMOS4wMDAzNiAxNy4xNTVDOC44Mzk3NSAxNy4zMjU3IDguNjQ2NDkgMTcuNDYyNCA4LjQzMjA2IDE3LjU1NjlDOC4yMTc2MyAxNy42NTE1IDcuOTg2MzggMTcuNzAyIDcuNzUyMDUgMTcuNzA1NUM3LjUxNzcxIDE3LjcwOSA3LjI4NTA2IDE3LjY2NTQgNy4wNjc5IDE3LjU3NzNDNi44NTA3NCAxNy40ODkyIDYuNjUzNDkgMTcuMzU4MyA2LjQ4Nzg2IDE3LjE5MjVMNS4zNTc4NiAxNi4wNjI1QzQuOTI0MTEgMTUuNjI4OCA1LjAyOTExIDE1LjAwMzggNS4yNzQxMSAxNC42Mzc1QzUuNDQ5ODggMTQuMzczMSA1LjUyODcxIDE0LjA1NTkgNS40OTcyIDEzLjc0QzUuNDY1NjkgMTMuNDI0IDUuMzI1NzkgMTMuMTI4NyA1LjEwMTI1IDEyLjkwNDFDNC44NzY3MiAxMi42Nzk2IDQuNTgxMzkgMTIuNTM5NyA0LjI2NTQyIDEyLjUwODJDMy45NDk0NSAxMi40NzY3IDMuNjMyMzEgMTIuNTU1NSAzLjM2Nzg2IDEyLjczMTNDMi45OTkxMSAxMi45NzUgMi4zNzUzNiAxMy4wOCAxLjk0MTYxIDEyLjY0NUwwLjc4NDExMSAxMS40ODc1QzAuNjIxNTg5IDExLjMyNSAwLjQ5MjY2OSAxMS4xMzIxIDAuNDA0NzEyIDEwLjkxOThDMC4zMTY3NTUgMTAuNzA3NCAwLjI3MTQ4NCAxMC40Nzk4IDAuMjcxNDg0IDEwLjI1QzAuMjcxNDg0IDEwLjAyMDIgMC4zMTY3NTUgOS43OTI2MiAwLjQwNDcxMiA5LjU4MDI5QzAuNDkyNjY5IDkuMzY3OTUgMC42MjE1ODkgOS4xNzUwMyAwLjc4NDExMSA5LjAxMjUyTDkuMDUyODYgMC43NDI1MjJaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+IHt7b3Blbj8udGlja2V0SWQgPyBvcGVuPy50aWNrZXRJZCA6ICctLSd9fSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIm9wZW4/LnRpY2tldFR5cGUgPT09ICdyZWZyZXNodGlja2V0J1wiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTdcIiBoZWlnaHQ9XCIxNFwiIHZpZXdCb3g9XCIwIDAgMTcgMTRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNS45NDYwMiA0Ljk4ODgxTDIuNjY2MDIgNi4zMzg4MUwyLjAwNjAyIDYuMDc4ODFMMC42NjYwMTYgMi44Mzg4MUwxLjU4NjAyIDIuNDU4ODFMMi4zOTYwMiA0LjQwODgxQzIuOTM5NzcgMy4wNDgwMSAzLjkyODcyIDEuOTExNjkgNS4yMDE0NSAxLjE4NTMyQzYuNDc0MTkgMC40NTg5NTEgNy45NTU1NCAwLjE4NTQyNiA5LjQwMzc1IDAuNDA5Mzg3QzEwLjg1MiAwLjYzMzM0OSAxMi4xODE1IDEuMzQxNTcgMTMuMTc1NCAyLjQxODQ2QzE0LjE2OTIgMy40OTUzNSAxNC43Njg3IDQuODc3MzIgMTQuODc2IDYuMzM4ODFIMTMuODc2QzEzLjc2MTYgNS4wOTAwOCAxMy4yMjI0IDMuOTE4MzYgMTIuMzQ4NCAzLjAxOTE5QzExLjQ3NDMgMi4xMjAwMyAxMC4zMTg0IDEuNTQ3ODEgOS4wNzM0IDEuMzk4MDRDNy44Mjg0MiAxLjI0ODI2IDYuNTY5NzMgMS41MyA1LjUwNzM5IDIuMTk2MjJDNC40NDUwNSAyLjg2MjQ0IDMuNjQzMzIgMy44NzI4NCAzLjIzNjAyIDUuMDU4ODFMNS41NTYwMiA0LjA1ODgxTDUuOTQ2MDIgNC45ODg4MVpNMTQuODA2IDcuNjY4ODFMMTYuMTQ2IDEwLjg5ODhMMTUuMjI2IDExLjMzODhMMTQuNDA2IDkuMzM4ODFDMTMuODU4IDEwLjcwNDkgMTIuODYxOCAxMS44NDQyIDExLjU4MSAxMi41Njk2QzEwLjMwMDEgMTMuMjk1IDguODEwNzcgMTMuNTYzNCA3LjM1NzI4IDEzLjMzMDlDNS45MDM4IDEzLjA5ODMgNC41NzI1NSAxMi4zNzg2IDMuNTgyIDExLjI4OThDMi41OTE0NSAxMC4yMDA5IDIuMDAwNDYgOC44MDc3NSAxLjkwNjAyIDcuMzM4ODFIMi45MDYwMlY2LjgzODgxQzIuOTA4ODIgOC4xMjYyNyAzLjM2NDAyIDkuMzcxOCA0LjE5MjAzIDEwLjM1NzdDNS4wMjAwNSAxMS4zNDM2IDYuMTY4MjEgMTIuMDA3MSA3LjQzNTg0IDEyLjIzMjJDOC43MDM0NiAxMi40NTc0IDEwLjAwOTkgMTIuMjI5OSAxMS4xMjY4IDExLjU4OTVDMTIuMjQzNyAxMC45NDkxIDEzLjEgOS45MzY1NSAxMy41NDYgOC43Mjg4MUwxMS4yOTYgOS42NTg4MUwxMC45MDYgOC43Mzg4MUwxNC4xNTYgNy4zODg4MUwxNC44MDYgNy42Njg4MVpcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk04LjQwNjI1IDcuNTQwMDRDOC45NTg1MyA3LjU0MDA0IDkuNDA2MjUgNy4wOTIzMiA5LjQwNjI1IDYuNTQwMDRDOS40MDYyNSA1Ljk4Nzc1IDguOTU4NTMgNS41NDAwNCA4LjQwNjI1IDUuNTQwMDRDNy44NTM5NyA1LjU0MDA0IDcuNDA2MjUgNS45ODc3NSA3LjQwNjI1IDYuNTQwMDRDNy40MDYyNSA3LjA5MjMyIDcuODUzOTcgNy41NDAwNCA4LjQwNjI1IDcuNTQwMDRaXCIgZmlsbD1cIiM5OEEyQjNcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIm9wZW4/Lmlzc3VlU3RhdHVzICE9PSAnbm90aWRlbnRpZmllZCdcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zODI3XzEyMDYxKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNy4yMDA2NSAxMC4zMzMzSDkuMTU2MjFWMTIuMzMzM0g3LjIwMDY1VjEwLjMzMzNaTTkuMTU2MjEgNC4zMzMyN0g3LjIwMDY1VjkuMzMzMjZIOS4xNTYyMVY0LjMzMzI3Wk0xMC42MjI5IDUuODMzMjdMOS42NDUxIDYuODMzMjdMMTIuMDg5NSA5LjMzMzI2TDE2LjAwMDcgNC44MzMyN0wxNS4wMjI5IDMuODMzMjdMMTIuMDg5NSA3LjMzMzI2TDEwLjYyMjkgNS44MzMyN1pNOC4xNzg0MyAxNC4wMzMzQzYuNzAxMDggMTQuMDMwNiA1LjI4NDk5IDEzLjQyOTIgNC4yNDAzNCAxMi4zNjA4QzMuMTk1NyAxMS4yOTI1IDIuNjA3NjggOS44NDQxOCAyLjYwNTEgOC4zMzMyNkMyLjYwNTEgNS4xOTMyNyA1LjEwODIxIDIuNjMzMjcgOC4xNzg0MyAyLjYzMzI3QzkuOTY3NzYgMi42MzMyNyAxMS41NTE4IDMuNTEzMjcgMTIuNTc4NCA0LjgzMzI3TDEzLjQ3OCAzLjkxMzI3QzEyLjgzOTUgMy4xMDUzNCAxMi4wMzE5IDIuNDU0MTUgMTEuMTE0NyAyLjAwNzY1QzEwLjE5NzYgMS41NjExNSA5LjE5NDE5IDEuMzMwNyA4LjE3ODQzIDEuMzMzMjdDNC40MDQyMSAxLjMzMzI3IDEuMzMzOTggNC40NzMyNyAxLjMzMzk4IDguMzMzMjZDMS4zMzM5OCAxMi4xOTMzIDQuNDA0MjEgMTUuMzMzMyA4LjE3ODQzIDE1LjMzMzNDMTEuOTUyNyAxNS4zMzMzIDE1LjAyMjkgMTIuMTkzMyAxNS4wMjI5IDguMzMzMjZMMTMuNTM2NyA5Ljg1MzI2QzEyLjg5MTMgMTIuMjYzMyAxMC43NDAyIDE0LjA0MzMgOC4xNzg0MyAxNC4wNDMzVjE0LjAzMzNaXCIgZmlsbD1cIiM5OEEyQjNcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzM4MjdfMTIwNjFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFvcGVuLmlzT3BlblwiIChjbGljayk9XCJzZWxlY3RWaWV3KCRldmVudCxpbmRleCwnb3BlbicpXCIgY2xhc3M9XCJtcy0zXCI+IDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjE2NiAyLjVIMTguMTY2TTE4LjE2NiAyLjVWNy41TTE4LjE2NiAyLjVMMTIuMzMyNyA4LjMzMzMzTTguMTY2MDIgMTcuNUgzLjE2NjAyTTMuMTY2MDIgMTcuNVYxMi41TTMuMTY2MDIgMTcuNUw4Ljk5OTM1IDExLjY2NjdcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhb3Blbi5pc09wZW4gJiYgb3Blbj8ubm90aWZpY2F0aW9uXCIgY2xhc3M9XCJwcm9maWxlIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50cmUganVzdGlmeS1jb250ZW50LWNlbnRyZSBtcy0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvQmVsbG5vdGlmaWNhdGlvbi5wbmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8aW1nICpuZ0lmPVwiY2FyZFZpZXdcIiBjbGFzcz1cInByb2ZpbGUgbXMtM1wiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy9ncm9wbW9kYWwucG5nXCIgYWx0PVwiXCI+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwic3RhdHVzT3Blbj8ubGVuZ3RoID09PSAwIHx8ICFub0RhdGEgJiYgIWxvYWRpbmdcIiBjbGFzcz1cInctMTAwIG10LTEwIG1iLTEwIG1oLTYwdmggZC1ncmlkIHRleHQtY2VudGVyXCI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJteC1hdXRvIG1iLTJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvdGFrZXRpY2tldC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRha2V0aWNrZXQgbXQtMiBmdy1ib2xkXCI+Tm8gT3BlbiBUaWNrZXRzIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwidy0xMDAgYnRuIGJ0bi1wcmltYXJ5IG10LTVcIiAoY2xpY2spPVwidGFrZVRpY2tldCgpXCI+VGFrZSBUaWNrZXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2FkaW5nPy5vcGVuXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9EYXRhPy5vcGVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgbWgtNjB2aCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJteC1hdXRvIG1iLTJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvdGFrZXRpY2tldC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGFrZXRpY2tldCBtdC01IGZ3LWJvbGRcIj5ObyBPcGVuIFRpY2tldHMgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy5tYW5hZ2VfdGlja2V0c19pc0VkaXRcIiBjbGFzcz1cInctMTAwIGJ0biBidG4tcHJpbWFyeSBtdC01XCIgKGNsaWNrKT1cInRha2VUaWNrZXQoKVwiPlRha2UgVGlja2V0PC9idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPiBcclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS00XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgaC0xMDAgcm91bmRlZC0yIG92ZXJmbG93LWhpZGRlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWRnZS1saWdodC1kZWZhdWx0IHB4LTMgcHktNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPklucHJvZ3Jlc3M8L3NwYW4+PHNwYW4gKm5nSWY9XCJzdGF0dXNJbnByb2dyZXNzPy5sZW5ndGggPiAwICYmICFsb2FkaW5nLmlucHJvZ3Jlc3MgJiYgIW5vRGF0YS5pbnByb2dyZXNzXCIgY2xhc3M9XCJyb3VuZGVkLTUgbXMtMyBweC0xIGJvcmRlciBib3JkZXItZ3JheSBiZy1iYWRnZVwiPnt7c3RhdHVzSW5wcm9ncmVzcz8ubGVuZ3RofX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd2JvZHkgaC0xMDAgcHgtNCBweS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbG9hZGluZy5pbnByb2dyZXNzICYmICFub0RhdGEuaW5wcm9ncmVzc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgaW5wcm9ncmVzcyBvZiBzdGF0dXNJbnByb2dyZXNzOyBsZXQgaW5kZXggPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJpbnByb2dyZXNzLmlzT3BlbiA/ICdhY3RpdmUnOicnXCIgY2xhc3M9XCJpc3N1ZWNhcmQgY3Vyc29yLXBvaW50ZXIgdy0xMDAgbWItNVwiIChjbGljayk9XCJyb3V0ZXRvVGlja2V0KGlucHJvZ3Jlc3MpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJpbnByb2dyZXNzPy5pc09wZW5cIiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmdy1zZW1pYm9sZFwiPnt7aW5wcm9ncmVzcz8uc3RvcmVJZH19PC9sYWJlbD48YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZnctc2VtaWJvbGQgbXktMlwiPnt7aW5wcm9ncmVzcz8uc3RvcmVOYW1lID8gaW5wcm9ncmVzcz8uc3RvcmVOYW1lIDonLS0nfX08L2xhYmVsPjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1kZWZhdWx0IG1lLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJtZS0yXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzczMl82MDI3NylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTggMVYzTTQgMVYzTTEuNSA1SDEwLjVNMi41IDJIOS41QzEwLjA1MjMgMiAxMC41IDIuNDQ3NzIgMTAuNSAzVjEwQzEwLjUgMTAuNTUyMyAxMC4wNTIzIDExIDkuNSAxMUgyLjVDMS45NDc3MiAxMSAxLjUgMTAuNTUyMyAxLjUgMTBWM0MxLjUgMi40NDc3MiAxLjk0NzcyIDIgMi41IDJaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzczMl82MDI3N1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4ge3tpbnByb2dyZXNzPy5EYXRlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaW5wcm9ncmVzcz8uaW5mcmFJc3N1ZVwiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtd2FybmluZ1wiPnt7aW5wcm9ncmVzcz8uaW5mcmFJc3N1ZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInR5cGUgPT09J2luc3RhbGxhdGlvbicgJiYgaW5wcm9ncmVzcz8uaW5mcmFJc3N1ZSE9PScnXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1wcmltYXJ5IHRleHQtY2FwaXRhbGl6ZSBtcy0zXCI+e3tpbnByb2dyZXNzPy5pbnN0YWxsYXRpb25TdGF0dXMgPyBpbnByb2dyZXNzPy5pbnN0YWxsYXRpb25TdGF0dXMgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ0eXBlID09PSdkYXRhTWlzbWF0Y2gnXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC13YXJuaW5nXCI+e3tpbnByb2dyZXNzPy5pc3N1ZVR5cGUgPT09ICdoaWdoY291bnQnID8gJ0hpZ2ggQ291bnQnIDogKGlucHJvZ3Jlc3M/Lmlzc3VlVHlwZSA9PT0gJ2xvd2NvdW50JyA/ICdMb3cgQ291bnQnIDogJycpfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCIgZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImlucHJvZ3Jlc3M/Lm5vdGlmaWNhdGlvblwiIGNsYXNzPVwicHJvZmlsZSBkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmUgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy9CZWxsbm90aWZpY2F0aW9uLnBuZ1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAoY2xpY2spPVwic2VsZWN0VmlldygkZXZlbnQsaW5kZXgsJ2lucHJvZ3Jlc3MnKVwiPiA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIxXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIxIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMy4xNjYgMi41SDE4LjE2Nk0xOC4xNjYgMi41VjcuNU0xOC4xNjYgMi41TDEyLjMzMjcgOC4zMzMzM004LjE2NjAyIDE3LjVIMy4xNjYwMk0zLjE2NjAyIDE3LjVWMTIuNU0zLjE2NjAyIDE3LjVMOC45OTkzNSAxMS42NjY3XCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuNjY2NjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gdGV4dC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIiBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+PHN2ZyBjbGFzcz1cIm1lLTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgdmlld0JveD1cIjAgMCAxOCAxOFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNzk2NiAxLjQyNzUyQzEwLjY1NDEgMS4yOTY4MSAxMC40NjY3IDEuMjI2MTcgMTAuMjczMyAxLjIzMDM3QzEwLjA4IDEuMjM0NTYgOS44OTU4IDEuMzEzMjUgOS43NTkxMSAxLjQ1MDAyTDEuNDg5MTEgOS43MjAwMkMxLjQxOTM4IDkuNzg5NjggMS4zNjQwNiA5Ljg3MjM5IDEuMzI2MzIgOS45NjM0NEMxLjI4ODU3IDEwLjA1NDUgMS4yNjkxNSAxMC4xNTIxIDEuMjY5MTUgMTAuMjUwNkMxLjI2OTE1IDEwLjM0OTIgMS4yODg1NyAxMC40NDY4IDEuMzI2MzIgMTAuNTM3OUMxLjM2NDA2IDEwLjYyODkgMS40MTkzOCAxMC43MTE2IDEuNDg5MTEgMTAuNzgxM0wyLjY0NjYxIDExLjkzODhDMi42NTYzMiAxMS45NDE4IDIuNjY2NDcgMTEuOTQzIDIuNjc2NjEgMTEuOTQyNUMyLjcxNDExIDExLjk0MjUgMi43NjQxMSAxMS45Mjg4IDIuODExNjEgMTEuODk3NUMzLjI2ODQ1IDExLjU5MjcgMy44MTY4IDExLjQ1NTcgNC4zNjMzMSAxMS41MDk3QzQuOTA5ODMgMTEuNTYzNyA1LjQyMDczIDExLjgwNTUgNS44MDkwNSAxMi4xOTM4QzYuMTk3MzggMTIuNTgyMiA2LjQzOTEzIDEzLjA5MzEgNi40OTMxNiAxMy42Mzk2QzYuNTQ3MTggMTQuMTg2MSA2LjQxMDE0IDE0LjczNDQgNi4xMDUzNiAxNS4xOTEzQzYuMDc3OTIgMTUuMjMxMSA2LjA2MjMxIDE1LjI3NzkgNi4wNjAzNiAxNS4zMjYzQzYuMDYwMzYgMTUuMzQyNSA2LjA2Mjg2IDE1LjM1MTMgNi4wNjQxMSAxNS4zNTVMNy4xOTQxMSAxNi40ODYzQzcuMjY1MTIgMTYuNTU3NCA3LjM0OTcxIDE2LjYxMzYgNy40NDI4NSAxNi42NTE0QzcuNTM1OTkgMTYuNjg5MiA3LjYzNTc5IDE2LjcwNzkgNy43MzYzIDE2LjcwNjRDNy44MzY4MiAxNi43MDQ5IDcuOTM2IDE2LjY4MzIgOC4wMjc5NiAxNi42NDI2QzguMTE5OTIgMTYuNjAyIDguMjAyNzggMTYuNTQzMyA4LjI3MTYxIDE2LjQ3TDE2LjUyMDQgNy43MDUwMkMxNi41ODgzIDcuNjMyNjcgMTYuNjQxMiA3LjU0NzU1IDE2LjY3NiA3LjQ1NDZDMTYuNzEwOCA3LjM2MTY1IDE2LjcyNjggNy4yNjI3MiAxNi43MjMxIDcuMTYzNTRDMTYuNzE5MyA3LjA2NDM2IDE2LjY5NiA2Ljk2NjkxIDE2LjY1NDMgNi44NzY4M0MxNi42MTI2IDYuNzg2NzUgMTYuNTUzNSA2LjcwNTgzIDE2LjQ4MDQgNi42Mzg3N0wxNS4zNzI5IDUuNjIyNTJIMTUuMzY5MUMxNS4zNTE0IDUuNjE5MDIgMTUuMzMzMSA1LjYxOTAyIDE1LjMxNTQgNS42MjI1MkMxNS4yNDQ4IDUuNjM3MjIgMTUuMTgwNiA1LjY3MzQ4IDE1LjEzMTYgNS43MjYyN0MxNC45MjI3IDUuOTYzMDUgMTQuNjY4NyA2LjE1NTc5IDE0LjM4NDUgNi4yOTMyM0MxNC4xMDAyIDYuNDMwNjcgMTMuNzkxNCA2LjUxMDA1IDEzLjQ3NjEgNi41MjY3M0MxMy4xNjA4IDYuNTQzNDEgMTIuODQ1MyA2LjQ5NzA0IDEyLjU0ODEgNi4zOTAzNUMxMi4yNTEgNi4yODM2NiAxMS45NzggNi4xMTg3OSAxMS43NDUzIDUuOTA1MzdDMTEuNTEyNiA1LjY5MTk1IDExLjMyNDggNS40MzQyOCAxMS4xOTI5IDUuMTQ3NDJDMTEuMDYxIDQuODYwNTUgMTAuOTg3NiA0LjU1MDI3IDEwLjk3NyA0LjIzNDdDMTAuOTY2NCAzLjkxOTEzIDExLjAxODggMy42MDQ2MiAxMS4xMzEyIDMuMzA5NTZDMTEuMjQzNiAzLjAxNDQ5IDExLjQxMzcgMi43NDQ4MSAxMS42MzE2IDIuNTE2MjdDMTEuNjc5NyAyLjQ2MjY0IDExLjcwOTggMi4zOTUzNSAxMS43MTc5IDIuMzIzNzdDMTEuNzIwMSAyLjMwNDg4IDExLjcxODQgMi4yODU3MiAxMS43MTI5IDIuMjY3NTJMMTAuNzk2NiAxLjQyNzUyWk05LjA1Mjg2IDAuNzQyNTIyQzkuMzcxNzYgMC40MjM2MzggOS44MDE0NSAwLjI0MDE3NCAxMC4yNTIzIDAuMjMwMzkzQzEwLjcwMzIgMC4yMjA2MTEgMTEuMTQwNCAwLjM4NTI2OCAxMS40NzI5IDAuNjkwMDIyTDEyLjM4OTEgMS41MzEyN0MxMi42NjI5IDEuNzgxMjcgMTIuNzM5MSAyLjEyMjUyIDEyLjcxNDEgMi40MTM3N0MxMi42ODc5IDIuNzAxMjcgMTIuNTYxNiAyLjk4MjUyIDEyLjM2NjYgMy4xOTM3N0MxMi4yNDQ2IDMuMzI2OSAxMi4xNDk5IDMuNDgyNzYgMTIuMDg4MSAzLjY1MjQ2QzEyLjAyNjMgMy44MjIxNiAxMS45OTg1IDQuMDAyMzcgMTIuMDA2NCA0LjE4MjgxQzEyLjAxNDIgNC4zNjMyNSAxMi4wNTc1IDQuNTQwMzcgMTIuMTMzOCA0LjcwNDA3QzEyLjIxMDEgNC44Njc3OCAxMi4zMTc5IDUuMDE0ODUgMTIuNDUxIDUuMTM2OUMxMi41ODQxIDUuMjU4OTQgMTIuNzQgNS4zNTM1OCAxMi45MDk3IDUuNDE1MzlDMTMuMDc5NCA1LjQ3NzIgMTMuMjU5NiA1LjUwNDk4IDEzLjQ0IDUuNDk3MTRDMTMuNjIwNSA1LjQ4OTMxIDEzLjc5NzYgNS40NDYwMSAxMy45NjEzIDUuMzY5NzJDMTQuMTI1IDUuMjkzNDQgMTQuMjcyMSA1LjE4NTY1IDE0LjM5NDEgNS4wNTI1MkMxNC41ODc5IDQuODQwMDIgMTQuODU2NiA0LjY5MDAyIDE1LjE0MDQgNC42Mzg3N0MxNS4zMDA0IDQuNjA2NjUgMTUuNDY1NiA0LjYxMjE4IDE1LjYyMzEgNC42NTQ5MkMxNS43ODA2IDQuNjk3NjUgMTUuOTI2IDQuNzc2NDMgMTYuMDQ3OSA0Ljg4NTAyTDE3LjE1NjYgNS45MDEyN0MxNy4zMjczIDYuMDU3OSAxNy40NjUyIDYuMjQ2ODcgMTcuNTYyMyA2LjQ1NzJDMTcuNjU5NCA2LjY2NzU0IDE3LjcxMzggNi44OTUwNyAxNy43MjIzIDcuMTI2NThDMTcuNzMwOCA3LjM1ODA5IDE3LjY5MzIgNy41ODg5OSAxNy42MTE4IDcuODA1ODdDMTcuNTMwMyA4LjAyMjc2IDE3LjQwNjYgOC4yMjEzMSAxNy4yNDc5IDguMzkwMDJMOS4wMDAzNiAxNy4xNTVDOC44Mzk3NSAxNy4zMjU3IDguNjQ2NDkgMTcuNDYyNCA4LjQzMjA2IDE3LjU1NjlDOC4yMTc2MyAxNy42NTE1IDcuOTg2MzggMTcuNzAyIDcuNzUyMDUgMTcuNzA1NUM3LjUxNzcxIDE3LjcwOSA3LjI4NTA2IDE3LjY2NTQgNy4wNjc5IDE3LjU3NzNDNi44NTA3NCAxNy40ODkyIDYuNjUzNDkgMTcuMzU4MyA2LjQ4Nzg2IDE3LjE5MjVMNS4zNTc4NiAxNi4wNjI1QzQuOTI0MTEgMTUuNjI4OCA1LjAyOTExIDE1LjAwMzggNS4yNzQxMSAxNC42Mzc1QzUuNDQ5ODggMTQuMzczMSA1LjUyODcxIDE0LjA1NTkgNS40OTcyIDEzLjc0QzUuNDY1NjkgMTMuNDI0IDUuMzI1NzkgMTMuMTI4NyA1LjEwMTI1IDEyLjkwNDFDNC44NzY3MiAxMi42Nzk2IDQuNTgxMzkgMTIuNTM5NyA0LjI2NTQyIDEyLjUwODJDMy45NDk0NSAxMi40NzY3IDMuNjMyMzEgMTIuNTU1NSAzLjM2Nzg2IDEyLjczMTNDMi45OTkxMSAxMi45NzUgMi4zNzUzNiAxMy4wOCAxLjk0MTYxIDEyLjY0NUwwLjc4NDExMSAxMS40ODc1QzAuNjIxNTg5IDExLjMyNSAwLjQ5MjY2OSAxMS4xMzIxIDAuNDA0NzEyIDEwLjkxOThDMC4zMTY3NTUgMTAuNzA3NCAwLjI3MTQ4NCAxMC40Nzk4IDAuMjcxNDg0IDEwLjI1QzAuMjcxNDg0IDEwLjAyMDIgMC4zMTY3NTUgOS43OTI2MiAwLjQwNDcxMiA5LjU4MDI5QzAuNDkyNjY5IDkuMzY3OTUgMC42MjE1ODkgOS4xNzUwMyAwLjc4NDExMSA5LjAxMjUyTDkuMDUyODYgMC43NDI1MjJaXCIgZmlsbD1cIiM2NjcwODVcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNzk2NiAxLjQyNzUyQzEwLjY1NDEgMS4yOTY4MSAxMC40NjY3IDEuMjI2MTcgMTAuMjczMyAxLjIzMDM3QzEwLjA4IDEuMjM0NTYgOS44OTU4IDEuMzEzMjUgOS43NTkxMSAxLjQ1MDAyTDEuNDg5MTEgOS43MjAwMkMxLjQxOTM4IDkuNzg5NjggMS4zNjQwNiA5Ljg3MjM5IDEuMzI2MzIgOS45NjM0NEMxLjI4ODU3IDEwLjA1NDUgMS4yNjkxNSAxMC4xNTIxIDEuMjY5MTUgMTAuMjUwNkMxLjI2OTE1IDEwLjM0OTIgMS4yODg1NyAxMC40NDY4IDEuMzI2MzIgMTAuNTM3OUMxLjM2NDA2IDEwLjYyODkgMS40MTkzOCAxMC43MTE2IDEuNDg5MTEgMTAuNzgxM0wyLjY0NjYxIDExLjkzODhDMi42NTYzMiAxMS45NDE4IDIuNjY2NDcgMTEuOTQzIDIuNjc2NjEgMTEuOTQyNUMyLjcxNDExIDExLjk0MjUgMi43NjQxMSAxMS45Mjg4IDIuODExNjEgMTEuODk3NUMzLjI2ODQ1IDExLjU5MjcgMy44MTY4IDExLjQ1NTcgNC4zNjMzMSAxMS41MDk3QzQuOTA5ODMgMTEuNTYzNyA1LjQyMDczIDExLjgwNTUgNS44MDkwNSAxMi4xOTM4QzYuMTk3MzggMTIuNTgyMiA2LjQzOTEzIDEzLjA5MzEgNi40OTMxNiAxMy42Mzk2QzYuNTQ3MTggMTQuMTg2MSA2LjQxMDE0IDE0LjczNDQgNi4xMDUzNiAxNS4xOTEzQzYuMDc3OTIgMTUuMjMxMSA2LjA2MjMxIDE1LjI3NzkgNi4wNjAzNiAxNS4zMjYzQzYuMDYwMzYgMTUuMzQyNSA2LjA2Mjg2IDE1LjM1MTMgNi4wNjQxMSAxNS4zNTVMNy4xOTQxMSAxNi40ODYzQzcuMjY1MTIgMTYuNTU3NCA3LjM0OTcxIDE2LjYxMzYgNy40NDI4NSAxNi42NTE0QzcuNTM1OTkgMTYuNjg5MiA3LjYzNTc5IDE2LjcwNzkgNy43MzYzIDE2LjcwNjRDNy44MzY4MiAxNi43MDQ5IDcuOTM2IDE2LjY4MzIgOC4wMjc5NiAxNi42NDI2QzguMTE5OTIgMTYuNjAyIDguMjAyNzggMTYuNTQzMyA4LjI3MTYxIDE2LjQ3TDE2LjUyMDQgNy43MDUwMkMxNi41ODgzIDcuNjMyNjcgMTYuNjQxMiA3LjU0NzU1IDE2LjY3NiA3LjQ1NDZDMTYuNzEwOCA3LjM2MTY1IDE2LjcyNjggNy4yNjI3MiAxNi43MjMxIDcuMTYzNTRDMTYuNzE5MyA3LjA2NDM2IDE2LjY5NiA2Ljk2NjkxIDE2LjY1NDMgNi44NzY4M0MxNi42MTI2IDYuNzg2NzUgMTYuNTUzNSA2LjcwNTgzIDE2LjQ4MDQgNi42Mzg3N0wxNS4zNzI5IDUuNjIyNTJIMTUuMzY5MUMxNS4zNTE0IDUuNjE5MDIgMTUuMzMzMSA1LjYxOTAyIDE1LjMxNTQgNS42MjI1MkMxNS4yNDQ4IDUuNjM3MjIgMTUuMTgwNiA1LjY3MzQ4IDE1LjEzMTYgNS43MjYyN0MxNC45MjI3IDUuOTYzMDUgMTQuNjY4NyA2LjE1NTc5IDE0LjM4NDUgNi4yOTMyM0MxNC4xMDAyIDYuNDMwNjcgMTMuNzkxNCA2LjUxMDA1IDEzLjQ3NjEgNi41MjY3M0MxMy4xNjA4IDYuNTQzNDEgMTIuODQ1MyA2LjQ5NzA0IDEyLjU0ODEgNi4zOTAzNUMxMi4yNTEgNi4yODM2NiAxMS45NzggNi4xMTg3OSAxMS43NDUzIDUuOTA1MzdDMTEuNTEyNiA1LjY5MTk1IDExLjMyNDggNS40MzQyOCAxMS4xOTI5IDUuMTQ3NDJDMTEuMDYxIDQuODYwNTUgMTAuOTg3NiA0LjU1MDI3IDEwLjk3NyA0LjIzNDdDMTAuOTY2NCAzLjkxOTEzIDExLjAxODggMy42MDQ2MiAxMS4xMzEyIDMuMzA5NTZDMTEuMjQzNiAzLjAxNDQ5IDExLjQxMzcgMi43NDQ4MSAxMS42MzE2IDIuNTE2MjdDMTEuNjc5NyAyLjQ2MjY0IDExLjcwOTggMi4zOTUzNSAxMS43MTc5IDIuMzIzNzdDMTEuNzIwMSAyLjMwNDg4IDExLjcxODQgMi4yODU3MiAxMS43MTI5IDIuMjY3NTJMMTAuNzk2NiAxLjQyNzUyWk05LjA1Mjg2IDAuNzQyNTIyQzkuMzcxNzYgMC40MjM2MzggOS44MDE0NSAwLjI0MDE3NCAxMC4yNTIzIDAuMjMwMzkzQzEwLjcwMzIgMC4yMjA2MTEgMTEuMTQwNCAwLjM4NTI2OCAxMS40NzI5IDAuNjkwMDIyTDEyLjM4OTEgMS41MzEyN0MxMi42NjI5IDEuNzgxMjcgMTIuNzM5MSAyLjEyMjUyIDEyLjcxNDEgMi40MTM3N0MxMi42ODc5IDIuNzAxMjcgMTIuNTYxNiAyLjk4MjUyIDEyLjM2NjYgMy4xOTM3N0MxMi4yNDQ2IDMuMzI2OSAxMi4xNDk5IDMuNDgyNzYgMTIuMDg4MSAzLjY1MjQ2QzEyLjAyNjMgMy44MjIxNiAxMS45OTg1IDQuMDAyMzcgMTIuMDA2NCA0LjE4MjgxQzEyLjAxNDIgNC4zNjMyNSAxMi4wNTc1IDQuNTQwMzcgMTIuMTMzOCA0LjcwNDA3QzEyLjIxMDEgNC44Njc3OCAxMi4zMTc5IDUuMDE0ODUgMTIuNDUxIDUuMTM2OUMxMi41ODQxIDUuMjU4OTQgMTIuNzQgNS4zNTM1OCAxMi45MDk3IDUuNDE1MzlDMTMuMDc5NCA1LjQ3NzIgMTMuMjU5NiA1LjUwNDk4IDEzLjQ0IDUuNDk3MTRDMTMuNjIwNSA1LjQ4OTMxIDEzLjc5NzYgNS40NDYwMSAxMy45NjEzIDUuMzY5NzJDMTQuMTI1IDUuMjkzNDQgMTQuMjcyMSA1LjE4NTY1IDE0LjM5NDEgNS4wNTI1MkMxNC41ODc5IDQuODQwMDIgMTQuODU2NiA0LjY5MDAyIDE1LjE0MDQgNC42Mzg3N0MxNS4zMDA0IDQuNjA2NjUgMTUuNDY1NiA0LjYxMjE4IDE1LjYyMzEgNC42NTQ5MkMxNS43ODA2IDQuNjk3NjUgMTUuOTI2IDQuNzc2NDMgMTYuMDQ3OSA0Ljg4NTAyTDE3LjE1NjYgNS45MDEyN0MxNy4zMjczIDYuMDU3OSAxNy40NjUyIDYuMjQ2ODcgMTcuNTYyMyA2LjQ1NzJDMTcuNjU5NCA2LjY2NzU0IDE3LjcxMzggNi44OTUwNyAxNy43MjIzIDcuMTI2NThDMTcuNzMwOCA3LjM1ODA5IDE3LjY5MzIgNy41ODg5OSAxNy42MTE4IDcuODA1ODdDMTcuNTMwMyA4LjAyMjc2IDE3LjQwNjYgOC4yMjEzMSAxNy4yNDc5IDguMzkwMDJMOS4wMDAzNiAxNy4xNTVDOC44Mzk3NSAxNy4zMjU3IDguNjQ2NDkgMTcuNDYyNCA4LjQzMjA2IDE3LjU1NjlDOC4yMTc2MyAxNy42NTE1IDcuOTg2MzggMTcuNzAyIDcuNzUyMDUgMTcuNzA1NUM3LjUxNzcxIDE3LjcwOSA3LjI4NTA2IDE3LjY2NTQgNy4wNjc5IDE3LjU3NzNDNi44NTA3NCAxNy40ODkyIDYuNjUzNDkgMTcuMzU4MyA2LjQ4Nzg2IDE3LjE5MjVMNS4zNTc4NiAxNi4wNjI1QzQuOTI0MTEgMTUuNjI4OCA1LjAyOTExIDE1LjAwMzggNS4yNzQxMSAxNC42Mzc1QzUuNDQ5ODggMTQuMzczMSA1LjUyODcxIDE0LjA1NTkgNS40OTcyIDEzLjc0QzUuNDY1NjkgMTMuNDI0IDUuMzI1NzkgMTMuMTI4NyA1LjEwMTI1IDEyLjkwNDFDNC44NzY3MiAxMi42Nzk2IDQuNTgxMzkgMTIuNTM5NyA0LjI2NTQyIDEyLjUwODJDMy45NDk0NSAxMi40NzY3IDMuNjMyMzEgMTIuNTU1NSAzLjM2Nzg2IDEyLjczMTNDMi45OTkxMSAxMi45NzUgMi4zNzUzNiAxMy4wOCAxLjk0MTYxIDEyLjY0NUwwLjc4NDExMSAxMS40ODc1QzAuNjIxNTg5IDExLjMyNSAwLjQ5MjY2OSAxMS4xMzIxIDAuNDA0NzEyIDEwLjkxOThDMC4zMTY3NTUgMTAuNzA3NCAwLjI3MTQ4NCAxMC40Nzk4IDAuMjcxNDg0IDEwLjI1QzAuMjcxNDg0IDEwLjAyMDIgMC4zMTY3NTUgOS43OTI2MiAwLjQwNDcxMiA5LjU4MDI5QzAuNDkyNjY5IDkuMzY3OTUgMC42MjE1ODkgOS4xNzUwMyAwLjc4NDExMSA5LjAxMjUyTDkuMDUyODYgMC43NDI1MjJaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+IHt7aW5wcm9ncmVzcz8udGlja2V0SWR9fSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImlucHJvZ3Jlc3M/LnRpY2tldFR5cGUgPT09ICdyZWZyZXNodGlja2V0J1wiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTdcIiBoZWlnaHQ9XCIxNFwiIHZpZXdCb3g9XCIwIDAgMTcgMTRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNS45NDYwMiA0Ljk4ODgxTDIuNjY2MDIgNi4zMzg4MUwyLjAwNjAyIDYuMDc4ODFMMC42NjYwMTYgMi44Mzg4MUwxLjU4NjAyIDIuNDU4ODFMMi4zOTYwMiA0LjQwODgxQzIuOTM5NzcgMy4wNDgwMSAzLjkyODcyIDEuOTExNjkgNS4yMDE0NSAxLjE4NTMyQzYuNDc0MTkgMC40NTg5NTEgNy45NTU1NCAwLjE4NTQyNiA5LjQwMzc1IDAuNDA5Mzg3QzEwLjg1MiAwLjYzMzM0OSAxMi4xODE1IDEuMzQxNTcgMTMuMTc1NCAyLjQxODQ2QzE0LjE2OTIgMy40OTUzNSAxNC43Njg3IDQuODc3MzIgMTQuODc2IDYuMzM4ODFIMTMuODc2QzEzLjc2MTYgNS4wOTAwOCAxMy4yMjI0IDMuOTE4MzYgMTIuMzQ4NCAzLjAxOTE5QzExLjQ3NDMgMi4xMjAwMyAxMC4zMTg0IDEuNTQ3ODEgOS4wNzM0IDEuMzk4MDRDNy44Mjg0MiAxLjI0ODI2IDYuNTY5NzMgMS41MyA1LjUwNzM5IDIuMTk2MjJDNC40NDUwNSAyLjg2MjQ0IDMuNjQzMzIgMy44NzI4NCAzLjIzNjAyIDUuMDU4ODFMNS41NTYwMiA0LjA1ODgxTDUuOTQ2MDIgNC45ODg4MVpNMTQuODA2IDcuNjY4ODFMMTYuMTQ2IDEwLjg5ODhMMTUuMjI2IDExLjMzODhMMTQuNDA2IDkuMzM4ODFDMTMuODU4IDEwLjcwNDkgMTIuODYxOCAxMS44NDQyIDExLjU4MSAxMi41Njk2QzEwLjMwMDEgMTMuMjk1IDguODEwNzcgMTMuNTYzNCA3LjM1NzI4IDEzLjMzMDlDNS45MDM4IDEzLjA5ODMgNC41NzI1NSAxMi4zNzg2IDMuNTgyIDExLjI4OThDMi41OTE0NSAxMC4yMDA5IDIuMDAwNDYgOC44MDc3NSAxLjkwNjAyIDcuMzM4ODFIMi45MDYwMlY2LjgzODgxQzIuOTA4ODIgOC4xMjYyNyAzLjM2NDAyIDkuMzcxOCA0LjE5MjAzIDEwLjM1NzdDNS4wMjAwNSAxMS4zNDM2IDYuMTY4MjEgMTIuMDA3MSA3LjQzNTg0IDEyLjIzMjJDOC43MDM0NiAxMi40NTc0IDEwLjAwOTkgMTIuMjI5OSAxMS4xMjY4IDExLjU4OTVDMTIuMjQzNyAxMC45NDkxIDEzLjEgOS45MzY1NSAxMy41NDYgOC43Mjg4MUwxMS4yOTYgOS42NTg4MUwxMC45MDYgOC43Mzg4MUwxNC4xNTYgNy4zODg4MUwxNC44MDYgNy42Njg4MVpcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk04LjQwNjI1IDcuNTQwMDRDOC45NTg1MyA3LjU0MDA0IDkuNDA2MjUgNy4wOTIzMiA5LjQwNjI1IDYuNTQwMDRDOS40MDYyNSA1Ljk4Nzc1IDguOTU4NTMgNS41NDAwNCA4LjQwNjI1IDUuNTQwMDRDNy44NTM5NyA1LjU0MDA0IDcuNDA2MjUgNS45ODc3NSA3LjQwNjI1IDYuNTQwMDRDNy40MDYyNSA3LjA5MjMyIDcuODUzOTcgNy41NDAwNCA4LjQwNjI1IDcuNTQwMDRaXCIgZmlsbD1cIiM5OEEyQjNcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1zLTNcIiAqbmdJZj1cImlucHJvZ3Jlc3M/Lmlzc3VlU3RhdHVzICE9PSAnbm90aWRlbnRpZmllZCdcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zODI3XzEyMDYxKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNy4yMDA2NSAxMC4zMzMzSDkuMTU2MjFWMTIuMzMzM0g3LjIwMDY1VjEwLjMzMzNaTTkuMTU2MjEgNC4zMzMyN0g3LjIwMDY1VjkuMzMzMjZIOS4xNTYyMVY0LjMzMzI3Wk0xMC42MjI5IDUuODMzMjdMOS42NDUxIDYuODMzMjdMMTIuMDg5NSA5LjMzMzI2TDE2LjAwMDcgNC44MzMyN0wxNS4wMjI5IDMuODMzMjdMMTIuMDg5NSA3LjMzMzI2TDEwLjYyMjkgNS44MzMyN1pNOC4xNzg0MyAxNC4wMzMzQzYuNzAxMDggMTQuMDMwNiA1LjI4NDk5IDEzLjQyOTIgNC4yNDAzNCAxMi4zNjA4QzMuMTk1NyAxMS4yOTI1IDIuNjA3NjggOS44NDQxOCAyLjYwNTEgOC4zMzMyNkMyLjYwNTEgNS4xOTMyNyA1LjEwODIxIDIuNjMzMjcgOC4xNzg0MyAyLjYzMzI3QzkuOTY3NzYgMi42MzMyNyAxMS41NTE4IDMuNTEzMjcgMTIuNTc4NCA0LjgzMzI3TDEzLjQ3OCAzLjkxMzI3QzEyLjgzOTUgMy4xMDUzNCAxMi4wMzE5IDIuNDU0MTUgMTEuMTE0NyAyLjAwNzY1QzEwLjE5NzYgMS41NjExNSA5LjE5NDE5IDEuMzMwNyA4LjE3ODQzIDEuMzMzMjdDNC40MDQyMSAxLjMzMzI3IDEuMzMzOTggNC40NzMyNyAxLjMzMzk4IDguMzMzMjZDMS4zMzM5OCAxMi4xOTMzIDQuNDA0MjEgMTUuMzMzMyA4LjE3ODQzIDE1LjMzMzNDMTEuOTUyNyAxNS4zMzMzIDE1LjAyMjkgMTIuMTkzMyAxNS4wMjI5IDguMzMzMjZMMTMuNTM2NyA5Ljg1MzI2QzEyLjg5MTMgMTIuMjYzMyAxMC43NDAyIDE0LjA0MzMgOC4xNzg0MyAxNC4wNDMzVjE0LjAzMzNaXCIgZmlsbD1cIiM5OEEyQjNcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzM4MjdfMTIwNjFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFpbnByb2dyZXNzLmlzT3BlblwiIChjbGljayk9XCJzZWxlY3RWaWV3KCRldmVudCxpbmRleCwnaW5wcm9ncmVzcycpXCIgY2xhc3M9XCJtcy0zXCI+IDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjE2NiAyLjVIMTguMTY2TTE4LjE2NiAyLjVWNy41TTE4LjE2NiAyLjVMMTIuMzMyNyA4LjMzMzMzTTguMTY2MDIgMTcuNUgzLjE2NjAyTTMuMTY2MDIgMTcuNVYxMi41TTMuMTY2MDIgMTcuNUw4Ljk5OTM1IDExLjY2NjdcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhaW5wcm9ncmVzcy5pc09wZW4gJiYgaW5wcm9ncmVzcz8ubm90aWZpY2F0aW9uXCIgY2xhc3M9XCJwcm9maWxlIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50cmUganVzdGlmeS1jb250ZW50LWNlbnRyZSBtcy0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvQmVsbG5vdGlmaWNhdGlvbi5wbmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPCEtLSA8aW1nICpuZ0lmPVwiY2FyZFZpZXdcIiBjbGFzcz1cInByb2ZpbGUgbXMtM1wiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy9ncm9wbW9kYWwucG5nXCIgYWx0PVwiXCI+IC0tPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzdGF0dXNJbnByb2dyZXNzPy5sZW5ndGggPT09IDAgfHwgIW5vRGF0YSAmJiAhbG9hZGluZ1wiIGNsYXNzPVwidy0xMDAgbXQtMTAgbWItMTAgbWgtNjB2aCBkLWdyaWQgdGV4dC1jZW50ZXIgbXgtYXV0b1wiPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJteC1hdXRvXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL3Rha2V0aWNrZXQuc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRha2V0aWNrZXQgbXQtMiBmdy1ib2xkXCI+Tm8gSW4tUHJvZ3Jlc3MgVGlja2V0cyA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2FkaW5nPy5pbnByb2dyZXNzXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vRGF0YT8uaW5wcm9ncmVzc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IG1oLTYwdmggZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyIGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cIm14LWF1dG9cIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvdGFrZXRpY2tldC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0YWtldGlja2V0IG10LTUgZnctYm9sZFwiPk5vIEluLVByb2dyZXNzIFRpY2tldHMgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+IFxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtc20tNFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInctMTAwIGgtMTAwIHJvdW5kZWQtMiBvdmVyZmxvdy1oaWRkZW5cIiAoY2xpY2spPVwic2VsZWN0VGlja2V0KClcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmFkZ2UtbGlnaHQtZGVmYXVsdCBweC0zIHB5LTRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+Q2xvc2VkPC9zcGFuPjxzcGFuICpuZ0lmPVwic3RhdHVzQ2xvc2VkPy5sZW5ndGggPiAwICYmICFub0RhdGEuY2xvc2VkICYmICFsb2FkaW5nLmNsb3NlZFwiIGNsYXNzPVwicm91bmRlZC01IG1zLTMgcHgtMSBib3JkZXIgYm9yZGVyLWdyYXkgYm9yZGVyLWdyYXkgYmctYmFkZ2VcIj57e3N0YXR1c0Nsb3NlZD8ubGVuZ3RofX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd2JvZHkgaC0xMDAgcHgtNCBweS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhbm9EYXRhLmNsb3NlZCAmJiAhbG9hZGluZy5jbG9zZWRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGNsb3NlZCBvZiBzdGF0dXNDbG9zZWQ7IGxldCBpbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJjbG9zZWQuaXNPcGVuID8gJ2FjdGl2ZSc6JydcIiBjbGFzcz1cImlzc3VlY2FyZCBjdXJzb3ItcG9pbnRlciB3LTEwMCBtYi01XCIgKGNsaWNrKT1cInJvdXRldG9UaWNrZXQoY2xvc2VkKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjbG9zZWQ/LmlzT3BlblwiIGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi01XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmdy1zZW1pYm9sZFwiPnt7Y2xvc2VkPy5zdG9yZUlkfX08L2xhYmVsPjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZ3LXNlbWlib2xkIG0tMlwiPnt7Y2xvc2VkPy5zdG9yZU5hbWUgPyBjbG9zZWQ/LnN0b3JlTmFtZSA6Jy0tJ319PC9sYWJlbD48YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBtdC0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LWRlZmF1bHQgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwibWUtMlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMzczMl82MDI3NylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNOCAxVjNNNCAxVjNNMS41IDVIMTAuNU0yLjUgMkg5LjVDMTAuMDUyMyAyIDEwLjUgMi40NDc3MiAxMC41IDNWMTBDMTAuNSAxMC41NTIzIDEwLjA1MjMgMTEgOS41IDExSDIuNUMxLjk0NzcyIDExIDEuNSAxMC41NTIzIDEuNSAxMFYzQzEuNSAyLjQ0NzcyIDEuOTQ3NzIgMiAyLjUgMlpcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4xXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zNzMyXzYwMjc3XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiBmaWxsPVwid2hpdGVcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+IHt7Y2xvc2VkPy5EYXRlfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImNsb3NlZD8uaW5mcmFJc3N1ZVwiIFtuZ0NsYXNzXT1cImNsb3NlZD8uaW5mcmFJc3N1ZSA9PT0gJ0xpdmUnPyAnYmFkZ2UgYmFkZ2UtbGlnaHQtc3VjY2Vzcyc6JydcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXdhcm5pbmdcIj4ge3tjbG9zZWQ/LmluZnJhSXNzdWV9fSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ0eXBlID09PSdkYXRhTWlzbWF0Y2gnXCIgW25nQ2xhc3NdPVwiY2xvc2VkPy5pbmZyYUlzc3VlID09PSAnTGl2ZSc/ICdiYWRnZSBiYWRnZS1saWdodC1zdWNjZXNzJzonJ1wiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtd2FybmluZ1wiPnt7Y2xvc2VkPy5pc3N1ZVR5cGUgPT09ICdoaWdoY291bnQnID8gJ0hpZ2ggQ291bnQnIDogKGNsb3NlZD8uaXNzdWVUeXBlID09PSAnbG93Y291bnQnID8gJ0xvdyBDb3VudCcgOiAnJyl9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIiBkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjbG9zZWQ/Lm5vdGlmaWNhdGlvblwiIGNsYXNzPVwicHJvZmlsZSBkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmUgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL0JlbGxub3RpZmljYXRpb24ucG5nXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAoY2xpY2spPVwic2VsZWN0VmlldygkZXZlbnQsaW5kZXgsJ2Nsb3NlZCcpXCI+IDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMuMTY2IDIuNUgxOC4xNjZNMTguMTY2IDIuNVY3LjVNMTguMTY2IDIuNUwxMi4zMzI3IDguMzMzMzNNOC4xNjYwMiAxNy41SDMuMTY2MDJNMy4xNjYwMiAxNy41VjEyLjVNMy4xNjYwMiAxNy41TDguOTk5MzUgMTEuNjY2N1wiIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjY2NjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gdGV4dC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCIgPiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj48c3ZnIGNsYXNzPVwibWUtMlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEwLjc5NjYgMS40Mjc1MkMxMC42NTQxIDEuMjk2ODEgMTAuNDY2NyAxLjIyNjE3IDEwLjI3MzMgMS4yMzAzN0MxMC4wOCAxLjIzNDU2IDkuODk1OCAxLjMxMzI1IDkuNzU5MTEgMS40NTAwMkwxLjQ4OTExIDkuNzIwMDJDMS40MTkzOCA5Ljc4OTY4IDEuMzY0MDYgOS44NzIzOSAxLjMyNjMyIDkuOTYzNDRDMS4yODg1NyAxMC4wNTQ1IDEuMjY5MTUgMTAuMTUyMSAxLjI2OTE1IDEwLjI1MDZDMS4yNjkxNSAxMC4zNDkyIDEuMjg4NTcgMTAuNDQ2OCAxLjMyNjMyIDEwLjUzNzlDMS4zNjQwNiAxMC42Mjg5IDEuNDE5MzggMTAuNzExNiAxLjQ4OTExIDEwLjc4MTNMMi42NDY2MSAxMS45Mzg4QzIuNjU2MzIgMTEuOTQxOCAyLjY2NjQ3IDExLjk0MyAyLjY3NjYxIDExLjk0MjVDMi43MTQxMSAxMS45NDI1IDIuNzY0MTEgMTEuOTI4OCAyLjgxMTYxIDExLjg5NzVDMy4yNjg0NSAxMS41OTI3IDMuODE2OCAxMS40NTU3IDQuMzYzMzEgMTEuNTA5N0M0LjkwOTgzIDExLjU2MzcgNS40MjA3MyAxMS44MDU1IDUuODA5MDUgMTIuMTkzOEM2LjE5NzM4IDEyLjU4MjIgNi40MzkxMyAxMy4wOTMxIDYuNDkzMTYgMTMuNjM5NkM2LjU0NzE4IDE0LjE4NjEgNi40MTAxNCAxNC43MzQ0IDYuMTA1MzYgMTUuMTkxM0M2LjA3NzkyIDE1LjIzMTEgNi4wNjIzMSAxNS4yNzc5IDYuMDYwMzYgMTUuMzI2M0M2LjA2MDM2IDE1LjM0MjUgNi4wNjI4NiAxNS4zNTEzIDYuMDY0MTEgMTUuMzU1TDcuMTk0MTEgMTYuNDg2M0M3LjI2NTEyIDE2LjU1NzQgNy4zNDk3MSAxNi42MTM2IDcuNDQyODUgMTYuNjUxNEM3LjUzNTk5IDE2LjY4OTIgNy42MzU3OSAxNi43MDc5IDcuNzM2MyAxNi43MDY0QzcuODM2ODIgMTYuNzA0OSA3LjkzNiAxNi42ODMyIDguMDI3OTYgMTYuNjQyNkM4LjExOTkyIDE2LjYwMiA4LjIwMjc4IDE2LjU0MzMgOC4yNzE2MSAxNi40N0wxNi41MjA0IDcuNzA1MDJDMTYuNTg4MyA3LjYzMjY3IDE2LjY0MTIgNy41NDc1NSAxNi42NzYgNy40NTQ2QzE2LjcxMDggNy4zNjE2NSAxNi43MjY4IDcuMjYyNzIgMTYuNzIzMSA3LjE2MzU0QzE2LjcxOTMgNy4wNjQzNiAxNi42OTYgNi45NjY5MSAxNi42NTQzIDYuODc2ODNDMTYuNjEyNiA2Ljc4Njc1IDE2LjU1MzUgNi43MDU4MyAxNi40ODA0IDYuNjM4NzdMMTUuMzcyOSA1LjYyMjUySDE1LjM2OTFDMTUuMzUxNCA1LjYxOTAyIDE1LjMzMzEgNS42MTkwMiAxNS4zMTU0IDUuNjIyNTJDMTUuMjQ0OCA1LjYzNzIyIDE1LjE4MDYgNS42NzM0OCAxNS4xMzE2IDUuNzI2MjdDMTQuOTIyNyA1Ljk2MzA1IDE0LjY2ODcgNi4xNTU3OSAxNC4zODQ1IDYuMjkzMjNDMTQuMTAwMiA2LjQzMDY3IDEzLjc5MTQgNi41MTAwNSAxMy40NzYxIDYuNTI2NzNDMTMuMTYwOCA2LjU0MzQxIDEyLjg0NTMgNi40OTcwNCAxMi41NDgxIDYuMzkwMzVDMTIuMjUxIDYuMjgzNjYgMTEuOTc4IDYuMTE4NzkgMTEuNzQ1MyA1LjkwNTM3QzExLjUxMjYgNS42OTE5NSAxMS4zMjQ4IDUuNDM0MjggMTEuMTkyOSA1LjE0NzQyQzExLjA2MSA0Ljg2MDU1IDEwLjk4NzYgNC41NTAyNyAxMC45NzcgNC4yMzQ3QzEwLjk2NjQgMy45MTkxMyAxMS4wMTg4IDMuNjA0NjIgMTEuMTMxMiAzLjMwOTU2QzExLjI0MzYgMy4wMTQ0OSAxMS40MTM3IDIuNzQ0ODEgMTEuNjMxNiAyLjUxNjI3QzExLjY3OTcgMi40NjI2NCAxMS43MDk4IDIuMzk1MzUgMTEuNzE3OSAyLjMyMzc3QzExLjcyMDEgMi4zMDQ4OCAxMS43MTg0IDIuMjg1NzIgMTEuNzEyOSAyLjI2NzUyTDEwLjc5NjYgMS40Mjc1MlpNOS4wNTI4NiAwLjc0MjUyMkM5LjM3MTc2IDAuNDIzNjM4IDkuODAxNDUgMC4yNDAxNzQgMTAuMjUyMyAwLjIzMDM5M0MxMC43MDMyIDAuMjIwNjExIDExLjE0MDQgMC4zODUyNjggMTEuNDcyOSAwLjY5MDAyMkwxMi4zODkxIDEuNTMxMjdDMTIuNjYyOSAxLjc4MTI3IDEyLjczOTEgMi4xMjI1MiAxMi43MTQxIDIuNDEzNzdDMTIuNjg3OSAyLjcwMTI3IDEyLjU2MTYgMi45ODI1MiAxMi4zNjY2IDMuMTkzNzdDMTIuMjQ0NiAzLjMyNjkgMTIuMTQ5OSAzLjQ4Mjc2IDEyLjA4ODEgMy42NTI0NkMxMi4wMjYzIDMuODIyMTYgMTEuOTk4NSA0LjAwMjM3IDEyLjAwNjQgNC4xODI4MUMxMi4wMTQyIDQuMzYzMjUgMTIuMDU3NSA0LjU0MDM3IDEyLjEzMzggNC43MDQwN0MxMi4yMTAxIDQuODY3NzggMTIuMzE3OSA1LjAxNDg1IDEyLjQ1MSA1LjEzNjlDMTIuNTg0MSA1LjI1ODk0IDEyLjc0IDUuMzUzNTggMTIuOTA5NyA1LjQxNTM5QzEzLjA3OTQgNS40NzcyIDEzLjI1OTYgNS41MDQ5OCAxMy40NCA1LjQ5NzE0QzEzLjYyMDUgNS40ODkzMSAxMy43OTc2IDUuNDQ2MDEgMTMuOTYxMyA1LjM2OTcyQzE0LjEyNSA1LjI5MzQ0IDE0LjI3MjEgNS4xODU2NSAxNC4zOTQxIDUuMDUyNTJDMTQuNTg3OSA0Ljg0MDAyIDE0Ljg1NjYgNC42OTAwMiAxNS4xNDA0IDQuNjM4NzdDMTUuMzAwNCA0LjYwNjY1IDE1LjQ2NTYgNC42MTIxOCAxNS42MjMxIDQuNjU0OTJDMTUuNzgwNiA0LjY5NzY1IDE1LjkyNiA0Ljc3NjQzIDE2LjA0NzkgNC44ODUwMkwxNy4xNTY2IDUuOTAxMjdDMTcuMzI3MyA2LjA1NzkgMTcuNDY1MiA2LjI0Njg3IDE3LjU2MjMgNi40NTcyQzE3LjY1OTQgNi42Njc1NCAxNy43MTM4IDYuODk1MDcgMTcuNzIyMyA3LjEyNjU4QzE3LjczMDggNy4zNTgwOSAxNy42OTMyIDcuNTg4OTkgMTcuNjExOCA3LjgwNTg3QzE3LjUzMDMgOC4wMjI3NiAxNy40MDY2IDguMjIxMzEgMTcuMjQ3OSA4LjM5MDAyTDkuMDAwMzYgMTcuMTU1QzguODM5NzUgMTcuMzI1NyA4LjY0NjQ5IDE3LjQ2MjQgOC40MzIwNiAxNy41NTY5QzguMjE3NjMgMTcuNjUxNSA3Ljk4NjM4IDE3LjcwMiA3Ljc1MjA1IDE3LjcwNTVDNy41MTc3MSAxNy43MDkgNy4yODUwNiAxNy42NjU0IDcuMDY3OSAxNy41NzczQzYuODUwNzQgMTcuNDg5MiA2LjY1MzQ5IDE3LjM1ODMgNi40ODc4NiAxNy4xOTI1TDUuMzU3ODYgMTYuMDYyNUM0LjkyNDExIDE1LjYyODggNS4wMjkxMSAxNS4wMDM4IDUuMjc0MTEgMTQuNjM3NUM1LjQ0OTg4IDE0LjM3MzEgNS41Mjg3MSAxNC4wNTU5IDUuNDk3MiAxMy43NEM1LjQ2NTY5IDEzLjQyNCA1LjMyNTc5IDEzLjEyODcgNS4xMDEyNSAxMi45MDQxQzQuODc2NzIgMTIuNjc5NiA0LjU4MTM5IDEyLjUzOTcgNC4yNjU0MiAxMi41MDgyQzMuOTQ5NDUgMTIuNDc2NyAzLjYzMjMxIDEyLjU1NTUgMy4zNjc4NiAxMi43MzEzQzIuOTk5MTEgMTIuOTc1IDIuMzc1MzYgMTMuMDggMS45NDE2MSAxMi42NDVMMC43ODQxMTEgMTEuNDg3NUMwLjYyMTU4OSAxMS4zMjUgMC40OTI2NjkgMTEuMTMyMSAwLjQwNDcxMiAxMC45MTk4QzAuMzE2NzU1IDEwLjcwNzQgMC4yNzE0ODQgMTAuNDc5OCAwLjI3MTQ4NCAxMC4yNUMwLjI3MTQ4NCAxMC4wMjAyIDAuMzE2NzU1IDkuNzkyNjIgMC40MDQ3MTIgOS41ODAyOUMwLjQ5MjY2OSA5LjM2Nzk1IDAuNjIxNTg5IDkuMTc1MDMgMC43ODQxMTEgOS4wMTI1Mkw5LjA1Mjg2IDAuNzQyNTIyWlwiIGZpbGw9XCIjNjY3MDg1XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNzk2NiAxLjQyNzUyQzEwLjY1NDEgMS4yOTY4MSAxMC40NjY3IDEuMjI2MTcgMTAuMjczMyAxLjIzMDM3QzEwLjA4IDEuMjM0NTYgOS44OTU4IDEuMzEzMjUgOS43NTkxMSAxLjQ1MDAyTDEuNDg5MTEgOS43MjAwMkMxLjQxOTM4IDkuNzg5NjggMS4zNjQwNiA5Ljg3MjM5IDEuMzI2MzIgOS45NjM0NEMxLjI4ODU3IDEwLjA1NDUgMS4yNjkxNSAxMC4xNTIxIDEuMjY5MTUgMTAuMjUwNkMxLjI2OTE1IDEwLjM0OTIgMS4yODg1NyAxMC40NDY4IDEuMzI2MzIgMTAuNTM3OUMxLjM2NDA2IDEwLjYyODkgMS40MTkzOCAxMC43MTE2IDEuNDg5MTEgMTAuNzgxM0wyLjY0NjYxIDExLjkzODhDMi42NTYzMiAxMS45NDE4IDIuNjY2NDcgMTEuOTQzIDIuNjc2NjEgMTEuOTQyNUMyLjcxNDExIDExLjk0MjUgMi43NjQxMSAxMS45Mjg4IDIuODExNjEgMTEuODk3NUMzLjI2ODQ1IDExLjU5MjcgMy44MTY4IDExLjQ1NTcgNC4zNjMzMSAxMS41MDk3QzQuOTA5ODMgMTEuNTYzNyA1LjQyMDczIDExLjgwNTUgNS44MDkwNSAxMi4xOTM4QzYuMTk3MzggMTIuNTgyMiA2LjQzOTEzIDEzLjA5MzEgNi40OTMxNiAxMy42Mzk2QzYuNTQ3MTggMTQuMTg2MSA2LjQxMDE0IDE0LjczNDQgNi4xMDUzNiAxNS4xOTEzQzYuMDc3OTIgMTUuMjMxMSA2LjA2MjMxIDE1LjI3NzkgNi4wNjAzNiAxNS4zMjYzQzYuMDYwMzYgMTUuMzQyNSA2LjA2Mjg2IDE1LjM1MTMgNi4wNjQxMSAxNS4zNTVMNy4xOTQxMSAxNi40ODYzQzcuMjY1MTIgMTYuNTU3NCA3LjM0OTcxIDE2LjYxMzYgNy40NDI4NSAxNi42NTE0QzcuNTM1OTkgMTYuNjg5MiA3LjYzNTc5IDE2LjcwNzkgNy43MzYzIDE2LjcwNjRDNy44MzY4MiAxNi43MDQ5IDcuOTM2IDE2LjY4MzIgOC4wMjc5NiAxNi42NDI2QzguMTE5OTIgMTYuNjAyIDguMjAyNzggMTYuNTQzMyA4LjI3MTYxIDE2LjQ3TDE2LjUyMDQgNy43MDUwMkMxNi41ODgzIDcuNjMyNjcgMTYuNjQxMiA3LjU0NzU1IDE2LjY3NiA3LjQ1NDZDMTYuNzEwOCA3LjM2MTY1IDE2LjcyNjggNy4yNjI3MiAxNi43MjMxIDcuMTYzNTRDMTYuNzE5MyA3LjA2NDM2IDE2LjY5NiA2Ljk2NjkxIDE2LjY1NDMgNi44NzY4M0MxNi42MTI2IDYuNzg2NzUgMTYuNTUzNSA2LjcwNTgzIDE2LjQ4MDQgNi42Mzg3N0wxNS4zNzI5IDUuNjIyNTJIMTUuMzY5MUMxNS4zNTE0IDUuNjE5MDIgMTUuMzMzMSA1LjYxOTAyIDE1LjMxNTQgNS42MjI1MkMxNS4yNDQ4IDUuNjM3MjIgMTUuMTgwNiA1LjY3MzQ4IDE1LjEzMTYgNS43MjYyN0MxNC45MjI3IDUuOTYzMDUgMTQuNjY4NyA2LjE1NTc5IDE0LjM4NDUgNi4yOTMyM0MxNC4xMDAyIDYuNDMwNjcgMTMuNzkxNCA2LjUxMDA1IDEzLjQ3NjEgNi41MjY3M0MxMy4xNjA4IDYuNTQzNDEgMTIuODQ1MyA2LjQ5NzA0IDEyLjU0ODEgNi4zOTAzNUMxMi4yNTEgNi4yODM2NiAxMS45NzggNi4xMTg3OSAxMS43NDUzIDUuOTA1MzdDMTEuNTEyNiA1LjY5MTk1IDExLjMyNDggNS40MzQyOCAxMS4xOTI5IDUuMTQ3NDJDMTEuMDYxIDQuODYwNTUgMTAuOTg3NiA0LjU1MDI3IDEwLjk3NyA0LjIzNDdDMTAuOTY2NCAzLjkxOTEzIDExLjAxODggMy42MDQ2MiAxMS4xMzEyIDMuMzA5NTZDMTEuMjQzNiAzLjAxNDQ5IDExLjQxMzcgMi43NDQ4MSAxMS42MzE2IDIuNTE2MjdDMTEuNjc5NyAyLjQ2MjY0IDExLjcwOTggMi4zOTUzNSAxMS43MTc5IDIuMzIzNzdDMTEuNzIwMSAyLjMwNDg4IDExLjcxODQgMi4yODU3MiAxMS43MTI5IDIuMjY3NTJMMTAuNzk2NiAxLjQyNzUyWk05LjA1Mjg2IDAuNzQyNTIyQzkuMzcxNzYgMC40MjM2MzggOS44MDE0NSAwLjI0MDE3NCAxMC4yNTIzIDAuMjMwMzkzQzEwLjcwMzIgMC4yMjA2MTEgMTEuMTQwNCAwLjM4NTI2OCAxMS40NzI5IDAuNjkwMDIyTDEyLjM4OTEgMS41MzEyN0MxMi42NjI5IDEuNzgxMjcgMTIuNzM5MSAyLjEyMjUyIDEyLjcxNDEgMi40MTM3N0MxMi42ODc5IDIuNzAxMjcgMTIuNTYxNiAyLjk4MjUyIDEyLjM2NjYgMy4xOTM3N0MxMi4yNDQ2IDMuMzI2OSAxMi4xNDk5IDMuNDgyNzYgMTIuMDg4MSAzLjY1MjQ2QzEyLjAyNjMgMy44MjIxNiAxMS45OTg1IDQuMDAyMzcgMTIuMDA2NCA0LjE4MjgxQzEyLjAxNDIgNC4zNjMyNSAxMi4wNTc1IDQuNTQwMzcgMTIuMTMzOCA0LjcwNDA3QzEyLjIxMDEgNC44Njc3OCAxMi4zMTc5IDUuMDE0ODUgMTIuNDUxIDUuMTM2OUMxMi41ODQxIDUuMjU4OTQgMTIuNzQgNS4zNTM1OCAxMi45MDk3IDUuNDE1MzlDMTMuMDc5NCA1LjQ3NzIgMTMuMjU5NiA1LjUwNDk4IDEzLjQ0IDUuNDk3MTRDMTMuNjIwNSA1LjQ4OTMxIDEzLjc5NzYgNS40NDYwMSAxMy45NjEzIDUuMzY5NzJDMTQuMTI1IDUuMjkzNDQgMTQuMjcyMSA1LjE4NTY1IDE0LjM5NDEgNS4wNTI1MkMxNC41ODc5IDQuODQwMDIgMTQuODU2NiA0LjY5MDAyIDE1LjE0MDQgNC42Mzg3N0MxNS4zMDA0IDQuNjA2NjUgMTUuNDY1NiA0LjYxMjE4IDE1LjYyMzEgNC42NTQ5MkMxNS43ODA2IDQuNjk3NjUgMTUuOTI2IDQuNzc2NDMgMTYuMDQ3OSA0Ljg4NTAyTDE3LjE1NjYgNS45MDEyN0MxNy4zMjczIDYuMDU3OSAxNy40NjUyIDYuMjQ2ODcgMTcuNTYyMyA2LjQ1NzJDMTcuNjU5NCA2LjY2NzU0IDE3LjcxMzggNi44OTUwNyAxNy43MjIzIDcuMTI2NThDMTcuNzMwOCA3LjM1ODA5IDE3LjY5MzIgNy41ODg5OSAxNy42MTE4IDcuODA1ODdDMTcuNTMwMyA4LjAyMjc2IDE3LjQwNjYgOC4yMjEzMSAxNy4yNDc5IDguMzkwMDJMOS4wMDAzNiAxNy4xNTVDOC44Mzk3NSAxNy4zMjU3IDguNjQ2NDkgMTcuNDYyNCA4LjQzMjA2IDE3LjU1NjlDOC4yMTc2MyAxNy42NTE1IDcuOTg2MzggMTcuNzAyIDcuNzUyMDUgMTcuNzA1NUM3LjUxNzcxIDE3LjcwOSA3LjI4NTA2IDE3LjY2NTQgNy4wNjc5IDE3LjU3NzNDNi44NTA3NCAxNy40ODkyIDYuNjUzNDkgMTcuMzU4MyA2LjQ4Nzg2IDE3LjE5MjVMNS4zNTc4NiAxNi4wNjI1QzQuOTI0MTEgMTUuNjI4OCA1LjAyOTExIDE1LjAwMzggNS4yNzQxMSAxNC42Mzc1QzUuNDQ5ODggMTQuMzczMSA1LjUyODcxIDE0LjA1NTkgNS40OTcyIDEzLjc0QzUuNDY1NjkgMTMuNDI0IDUuMzI1NzkgMTMuMTI4NyA1LjEwMTI1IDEyLjkwNDFDNC44NzY3MiAxMi42Nzk2IDQuNTgxMzkgMTIuNTM5NyA0LjI2NTQyIDEyLjUwODJDMy45NDk0NSAxMi40NzY3IDMuNjMyMzEgMTIuNTU1NSAzLjM2Nzg2IDEyLjczMTNDMi45OTkxMSAxMi45NzUgMi4zNzUzNiAxMy4wOCAxLjk0MTYxIDEyLjY0NUwwLjc4NDExMSAxMS40ODc1QzAuNjIxNTg5IDExLjMyNSAwLjQ5MjY2OSAxMS4xMzIxIDAuNDA0NzEyIDEwLjkxOThDMC4zMTY3NTUgMTAuNzA3NCAwLjI3MTQ4NCAxMC40Nzk4IDAuMjcxNDg0IDEwLjI1QzAuMjcxNDg0IDEwLjAyMDIgMC4zMTY3NTUgOS43OTI2MiAwLjQwNDcxMiA5LjU4MDI5QzAuNDkyNjY5IDkuMzY3OTUgMC42MjE1ODkgOS4xNzUwMyAwLjc4NDExMSA5LjAxMjUyTDkuMDUyODYgMC43NDI1MjJaXCIgc3Ryb2tlPVwiIzY2NzA4NVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4ge3tjbG9zZWQudGlja2V0SWR9fSA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY2xvc2VkPy50aWNrZXRUeXBlID09PSAncmVmcmVzaHRpY2tldCdcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE3XCIgaGVpZ2h0PVwiMTRcIiB2aWV3Qm94PVwiMCAwIDE3IDE0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgY2xpcC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNS45NDYwMiA0Ljk4ODgxTDIuNjY2MDIgNi4zMzg4MUwyLjAwNjAyIDYuMDc4ODFMMC42NjYwMTYgMi44Mzg4MUwxLjU4NjAyIDIuNDU4ODFMMi4zOTYwMiA0LjQwODgxQzIuOTM5NzcgMy4wNDgwMSAzLjkyODcyIDEuOTExNjkgNS4yMDE0NSAxLjE4NTMyQzYuNDc0MTkgMC40NTg5NTEgNy45NTU1NCAwLjE4NTQyNiA5LjQwMzc1IDAuNDA5Mzg3QzEwLjg1MiAwLjYzMzM0OSAxMi4xODE1IDEuMzQxNTcgMTMuMTc1NCAyLjQxODQ2QzE0LjE2OTIgMy40OTUzNSAxNC43Njg3IDQuODc3MzIgMTQuODc2IDYuMzM4ODFIMTMuODc2QzEzLjc2MTYgNS4wOTAwOCAxMy4yMjI0IDMuOTE4MzYgMTIuMzQ4NCAzLjAxOTE5QzExLjQ3NDMgMi4xMjAwMyAxMC4zMTg0IDEuNTQ3ODEgOS4wNzM0IDEuMzk4MDRDNy44Mjg0MiAxLjI0ODI2IDYuNTY5NzMgMS41MyA1LjUwNzM5IDIuMTk2MjJDNC40NDUwNSAyLjg2MjQ0IDMuNjQzMzIgMy44NzI4NCAzLjIzNjAyIDUuMDU4ODFMNS41NTYwMiA0LjA1ODgxTDUuOTQ2MDIgNC45ODg4MVpNMTQuODA2IDcuNjY4ODFMMTYuMTQ2IDEwLjg5ODhMMTUuMjI2IDExLjMzODhMMTQuNDA2IDkuMzM4ODFDMTMuODU4IDEwLjcwNDkgMTIuODYxOCAxMS44NDQyIDExLjU4MSAxMi41Njk2QzEwLjMwMDEgMTMuMjk1IDguODEwNzcgMTMuNTYzNCA3LjM1NzI4IDEzLjMzMDlDNS45MDM4IDEzLjA5ODMgNC41NzI1NSAxMi4zNzg2IDMuNTgyIDExLjI4OThDMi41OTE0NSAxMC4yMDA5IDIuMDAwNDYgOC44MDc3NSAxLjkwNjAyIDcuMzM4ODFIMi45MDYwMlY2LjgzODgxQzIuOTA4ODIgOC4xMjYyNyAzLjM2NDAyIDkuMzcxOCA0LjE5MjAzIDEwLjM1NzdDNS4wMjAwNSAxMS4zNDM2IDYuMTY4MjEgMTIuMDA3MSA3LjQzNTg0IDEyLjIzMjJDOC43MDM0NiAxMi40NTc0IDEwLjAwOTkgMTIuMjI5OSAxMS4xMjY4IDExLjU4OTVDMTIuMjQzNyAxMC45NDkxIDEzLjEgOS45MzY1NSAxMy41NDYgOC43Mjg4MUwxMS4yOTYgOS42NTg4MUwxMC45MDYgOC43Mzg4MUwxNC4xNTYgNy4zODg4MUwxNC44MDYgNy42Njg4MVpcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTguNDA2MjUgNy41NDAwNEM4Ljk1ODUzIDcuNTQwMDQgOS40MDYyNSA3LjA5MjMyIDkuNDA2MjUgNi41NDAwNEM5LjQwNjI1IDUuOTg3NzUgOC45NTg1MyA1LjU0MDA0IDguNDA2MjUgNS41NDAwNEM3Ljg1Mzk3IDUuNTQwMDQgNy40MDYyNSA1Ljk4Nzc1IDcuNDA2MjUgNi41NDAwNEM3LjQwNjI1IDcuMDkyMzIgNy44NTM5NyA3LjU0MDA0IDguNDA2MjUgNy41NDAwNFpcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY2xvc2VkPy5pc3N1ZVN0YXR1cyAhPT0gJ25vdGlkZW50aWZpZWQnXCIgY2xhc3M9XCJtcy0zXCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgdmlld0JveD1cIjAgMCAxNiAxNlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zODI3XzEyMDYxKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03LjIwMDY1IDEwLjMzMzNIOS4xNTYyMVYxMi4zMzMzSDcuMjAwNjVWMTAuMzMzM1pNOS4xNTYyMSA0LjMzMzI3SDcuMjAwNjVWOS4zMzMyNkg5LjE1NjIxVjQuMzMzMjdaTTEwLjYyMjkgNS44MzMyN0w5LjY0NTEgNi44MzMyN0wxMi4wODk1IDkuMzMzMjZMMTYuMDAwNyA0LjgzMzI3TDE1LjAyMjkgMy44MzMyN0wxMi4wODk1IDcuMzMzMjZMMTAuNjIyOSA1LjgzMzI3Wk04LjE3ODQzIDE0LjAzMzNDNi43MDEwOCAxNC4wMzA2IDUuMjg0OTkgMTMuNDI5MiA0LjI0MDM0IDEyLjM2MDhDMy4xOTU3IDExLjI5MjUgMi42MDc2OCA5Ljg0NDE4IDIuNjA1MSA4LjMzMzI2QzIuNjA1MSA1LjE5MzI3IDUuMTA4MjEgMi42MzMyNyA4LjE3ODQzIDIuNjMzMjdDOS45Njc3NiAyLjYzMzI3IDExLjU1MTggMy41MTMyNyAxMi41Nzg0IDQuODMzMjdMMTMuNDc4IDMuOTEzMjdDMTIuODM5NSAzLjEwNTM0IDEyLjAzMTkgMi40NTQxNSAxMS4xMTQ3IDIuMDA3NjVDMTAuMTk3NiAxLjU2MTE1IDkuMTk0MTkgMS4zMzA3IDguMTc4NDMgMS4zMzMyN0M0LjQwNDIxIDEuMzMzMjcgMS4zMzM5OCA0LjQ3MzI3IDEuMzMzOTggOC4zMzMyNkMxLjMzMzk4IDEyLjE5MzMgNC40MDQyMSAxNS4zMzMzIDguMTc4NDMgMTUuMzMzM0MxMS45NTI3IDE1LjMzMzMgMTUuMDIyOSAxMi4xOTMzIDE1LjAyMjkgOC4zMzMyNkwxMy41MzY3IDkuODUzMjZDMTIuODkxMyAxMi4yNjMzIDEwLjc0MDIgMTQuMDQzMyA4LjE3ODQzIDE0LjA0MzNWMTQuMDMzM1pcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzgyN18xMjA2MVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIGZpbGw9XCJ3aGl0ZVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NsaXBQYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cIiFjbG9zZWQuaXNPcGVuXCIgKGNsaWNrKT1cInNlbGVjdFZpZXcoJGV2ZW50LGluZGV4LCdjbG9zZWQnKVwiIGNsYXNzPVwibXMtM1wiPiA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjIxXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIxIDIwXCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjE2NiAyLjVIMTguMTY2TTE4LjE2NiAyLjVWNy41TTE4LjE2NiAyLjVMMTIuMzMyNyA4LjMzMzMzTTguMTY2MDIgMTcuNUgzLjE2NjAyTTMuMTY2MDIgMTcuNVYxMi41TTMuMTY2MDIgMTcuNUw4Ljk5OTM1IDExLjY2NjdcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiIWNsb3NlZC5pc09wZW4gJiYgY2xvc2VkPy5ub3RpZmljYXRpb25cIiBjbGFzcz1cInByb2ZpbGUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRyZSBqdXN0aWZ5LWNvbnRlbnQtY2VudHJlIG1zLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL0JlbGxub3RpZmljYXRpb24ucG5nXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxpbWcgKm5nSWY9XCJjYXJkVmlld1wiIGNsYXNzPVwicHJvZmlsZSBtcy0zXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL2dyb3Btb2RhbC5wbmdcIiBhbHQ9XCJcIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzdGF0dXNDbG9zZWQ/Lmxlbmd0aCA9PT0gMCB8fCAhbm9EYXRhICYmICFsb2FkaW5nXCIgY2xhc3M9XCJ3LTEwMCBtdC0xMCBtYi0xMCBtaC02MHZoIGQtZ3JpZCB0ZXh0LWNlbnRlciBteC1hdXRvXCI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJteC1hdXRvXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL3Rha2V0aWNrZXQuc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0YWtldGlja2V0IG10LTUgZnctYm9sZFwiPk5vIENsb3NlZCBUaWNrZXRzPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9hZGluZz8uY2xvc2VkXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJub0RhdGE/LmNsb3NlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyByb3dib2R5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgbWgtNjB2aCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJteC1hdXRvXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL3Rha2V0aWNrZXQuc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGFrZXRpY2tldCBtdC01IGZ3LWJvbGRcIj5ObyBDbG9zZWQgVGlja2V0cyA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPiBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj4gXHJcbjwvZGl2PlxyXG48ZGl2ICpuZ0lmPVwidXNlckRhdGEgPT09ICdIaXN0b3J5J1wiPlxyXG48ZGl2ICpuZ0lmPVwidHlwZSA9PT0gJ2luc3RhbGxhdGlvbicgfHwgdHlwZSA9PT0gJ2luZnJhJyB8fCB0eXBlID09PSAnZGF0YU1pc21hdGNoJ1wiIGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgIDxkaXYgKm5nSWY9XCIhaGlzdG9yeUxvYWRpbmcgJiYgIWhpc3RvcnlOb2RhdGFcIj5cclxuICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1yZXNwb25zaXZlXCI+XHJcbiAgICAgICAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIGJvdHRvbS1ib3JkZXIgdGV4dC1ub3dyYXBcIj5cclxuICAgICAgICAgICAgICAgIDx0aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnaXNzdWVEYXRlJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIENyZWF0ZWQgb25cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdpc3N1ZURhdGUnIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IC0xID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ3RpY2tldElkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRpY2tldCBJRFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAndGlja2V0SWQnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAndGlja2V0SWQnIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICd0aWNrZXRJZCcgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICd0aWNrZXRJZCcgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ3RpY2tldElkJyAmJiBzb3J0QnkgIT09IC0xID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ2NsaWVudE5hbWUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQnJhbmQgTmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnY2xpZW50TmFtZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdjbGllbnROYW1lJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnROYW1lJyAmJiBzb3J0QnkgIT09IDEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2NsaWVudE5hbWUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnROYW1lJyAmJiBzb3J0QnkgIT09IC0xID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ2NsaWVudElkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJyYW5kIElEXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnRJZCcgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdjbGllbnRJZCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnY2xpZW50SWQnICYmIHNvcnRCeSAhPT0gMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnY2xpZW50SWQnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnRJZCcgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdzdG9yZU5hbWUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgTmFtZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVOYW1lJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ3N0b3JlTmFtZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVOYW1lJyAmJiBzb3J0QnkgIT09IDEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlTmFtZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlTmFtZScgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdzdG9yZUlkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0b3JlIElEXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdzdG9yZUlkJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ3N0b3JlSWQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlSWQnICYmIHNvcnRCeSAhPT0gMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVJZCcgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlSWQnICYmIHNvcnRCeSAhPT0gLTEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cInR5cGUgPT09ICdpbmZyYScgfHwgdHlwZSA9PT0naW5zdGFsbGF0aW9uJ1wiPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdpc3N1ZURhdGUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgSXNzdWUgSWRlbnRpZmllZCBvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2lzc3VlRGF0ZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IDEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwidHlwZSA9PT0gJ2RhdGFNaXNtYXRjaCdcIj48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnaXNzdWVEYXRlJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIElzc3VlIGRhdGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdpc3N1ZURhdGUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gLTEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnaXNzdWVDbG9zZWREYXRlJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsb3NlZCBvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlQ2xvc2VkRGF0ZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdpc3N1ZUNsb3NlZERhdGUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlQ2xvc2VkRGF0ZScgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZUNsb3NlZERhdGUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZUNsb3NlZERhdGUnICYmIHNvcnRCeSAhPT0gLTEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwidHlwZSA9PT0gJ2luZnJhJyB8fCB0eXBlID09PSdpbnN0YWxsYXRpb24nXCI+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ2luZnJhSXNzdWUnKVwiPklzc3VlIFR5cGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2luZnJhSXNzdWUnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnaW5mcmFJc3N1ZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaW5mcmFJc3N1ZScgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpbmZyYUlzc3VlJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaW5mcmFJc3N1ZScgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJ0eXBlID09PSAnZGF0YU1pc21hdGNoJ1wiPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdpc3N1ZVR5cGUnKVwiPklzc3VlIFR5cGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlVHlwZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdpc3N1ZVR5cGUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlVHlwZScgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZVR5cGUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZVR5cGUnICYmIHNvcnRCeSAhPT0gLTEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoID48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnc3RhdHVzJylcIj5Jc3N1ZSBUeXBlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdzdGF0dXMnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnc3RhdHVzJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdzdGF0dXMnICYmIHNvcnRCeSAhPT0gMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnc3RhdHVzJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnc3RhdHVzJyAmJiBzb3J0QnkgIT09IC0xID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgIDwvdGhlYWQ+XHJcbiAgICAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCBoaXN0b3J5IG9mIHdvcmtIaXN0b3J5VGFibGUgOyBsZXQgaSA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2hpc3Rvcnk/Lmlzc3VlRGF0ZXxjdXN0b21EYXRlRm9ybWF0fX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ0ZXh0LXByaW1hcnkgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwicm91dGV0b1RpY2tldChoaXN0b3J5KVwiPnt7aGlzdG9yeT8udGlja2V0SWQgPyBoaXN0b3J5Py50aWNrZXRJZCA6Jy0tJ319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZ3JpZCBtcy0zIGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInJvdXRldG9UaWNrZXQoaGlzdG9yeSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtcHJpbWFyeSBtYi0xIHRleHQtY2FwaXRhbGl6ZVwiPnt7aGlzdG9yeT8uY2xpZW50TmFtZSA/IGhpc3Rvcnk/LmNsaWVudE5hbWUgOiAnLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICB7e2hpc3Rvcnk/LmNsaWVudElkID8gaGlzdG9yeT8uY2xpZW50SWQgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1ncmlkIG1zLTMgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwicm91dGV0b1RpY2tldChoaXN0b3J5KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1wcmltYXJ5IG1iLTFcIj57e2hpc3Rvcnk/LnN0b3JlTmFtZSA/IGhpc3Rvcnk/LnN0b3JlTmFtZSA6Jy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7aGlzdG9yeT8uc3RvcmVJZCA/IGhpc3Rvcnk/LnN0b3JlSWQgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwidHlwZSA9PT0gJ2luZnJhJyB8fCB0eXBlID09PSdpbnN0YWxsYXRpb24nXCI+e3toaXN0b3J5Py5pc3N1ZUlkZW50aWZpZWREYXRlPyhoaXN0b3J5Py5pc3N1ZUlkZW50aWZpZWREYXRlIHxjdXN0b21EYXRlRm9ybWF0KTogJy0tJ319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwidHlwZSA9PT0gJ2RhdGFNaXNtYXRjaCdcIj57e2hpc3Rvcnk/Lmlzc3VlRGF0ZT8oaGlzdG9yeT8uaXNzdWVEYXRlIHxjdXN0b21EYXRlRm9ybWF0KTogJy0tJ319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8uaXNzdWVDbG9zZWREYXRlPyhoaXN0b3J5Py5pc3N1ZUNsb3NlZERhdGV8Y3VzdG9tRGF0ZUZvcm1hdCk6XCItLVwifX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJ0eXBlID09PSAnaW5mcmEnIHx8IHR5cGUgPT09J2luc3RhbGxhdGlvbidcIj57e2hpc3Rvcnk/LmluZnJhSXNzdWUgPyBoaXN0b3J5Py5pbmZyYUlzc3VlIDonLS0nfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJ0eXBlID09PSAnZGF0YU1pc21hdGNoJ1wiPnt7aGlzdG9yeT8uaXNzdWVUeXBlID8gaGlzdG9yeT8uaXNzdWVUeXBlIDonLS0nfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgIDx0ZD4gPHNwYW4gY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1wcmltYXJ5XCIgKm5nSWY9XCJoaXN0b3J5Py5zdGF0dXMgPT09J29wZW4nXCI+T3Blbjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtd2FybmluZ1wiICpuZ0lmPVwiaGlzdG9yeT8uc3RhdHVzID09PSdpbnByb2dyZXNzJ1wiPklucHJvZ3Jlc3M8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtc3VjY2Vzc1wiICpuZ0lmPVwiaGlzdG9yeT8uc3RhdHVzID09PSdjbG9zZWQnXCI+Q2xvc2VkPC9zcGFuPjwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgPC90YWJsZT4gICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8bGliLXBhZ2luYXRpb24gW2l0ZW1zUGVyUGFnZV09XCJsaW1pdFwiIFtjdXJyZW50UGFnZV09XCJvZmZzZXRcIlxyXG4gICAgICAgICAgICAgICAgW3RvdGFsSXRlbXNdPVwidG90YWxJdGVtc1wiIFtwYWdpbmF0aW9uU2l6ZXNdPVwiWzEwLDIwLDMwXVwiIFtwYWdlU2l6ZV09XCJsaW1pdFwiXHJcbiAgICAgICAgICAgICAgICAocGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCRldmVudClcIj48L2xpYi1wYWdpbmF0aW9uPlxyXG4gICA8L2Rpdj4gXHJcbiAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoaXN0b3J5TG9hZGluZyAmJiAhaGlzdG9yeU5vZGF0YVwiID5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoaXN0b3J5Tm9kYXRhICYmICFoaXN0b3J5TG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLXNyY1wiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuPC9kaXY+XHJcbjwvZGl2PlxyXG48ZGl2ICpuZ0lmPVwidXNlckRhdGEgPT09ICdIaXN0b3J5J1wiPlxyXG4gICAgPGRpdiAqbmdJZj1cInR5cGUgPT09ICdtYXQnXCIgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiIWhpc3RvcnlMb2FkaW5nICYmICFoaXN0b3J5Tm9kYXRhXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1yZXNwb25zaXZlXCI+XHJcbiAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwidGFibGUgYm90dG9tLWJvcmRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ2lzc3VlRGF0ZScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRGF0ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdpc3N1ZURhdGUnIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ3RpY2tldElkJylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVGlja2V0IElEXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3RpY2tldElkJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ3RpY2tldElkJyBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICd0aWNrZXRJZCcgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnY2xpZW50TmFtZScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENsaWVudCBJbmZvXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2NsaWVudE5hbWUnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnY2xpZW50TmFtZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnROYW1lJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdzdG9yZU5hbWUnKVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSBJbmZvXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlTmFtZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdzdG9yZU5hbWUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVOYW1lJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdzdGF0dXMnKVwiPlN0YXR1c1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0YXR1cycgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdzdGF0dXMnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnc3RhdHVzJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgICA8dGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8dHIgKm5nRm9yPVwibGV0IGhpc3Rvcnkgb2Ygd29ya0hpc3RvcnlUYWJsZSA7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3toaXN0b3J5Py5pc3N1ZURhdGV8Y3VzdG9tRGF0ZUZvcm1hdH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3toaXN0b3J5Py50aWNrZXRJZCA/IGhpc3Rvcnk/LnRpY2tldElkIDonLS0nfX08L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1ncmlkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1wcmltYXJ5XCI+e3toaXN0b3J5Py5jbGllbnROYW1lID8gaGlzdG9yeT8uY2xpZW50TmFtZSA6ICctLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0U3ViIG10LTFcIj5JRCA6IHt7aGlzdG9yeT8uY2xpZW50SWQgPyBoaXN0b3J5Py5jbGllbnRJZCA6Jy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1ncmlkIG1zLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1wcmltYXJ5IG1iLTFcIj57e2hpc3Rvcnk/LnN0b3JlTmFtZSA/IGhpc3Rvcnk/LnN0b3JlTmFtZSA6Jy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0U3ViXCI+SUQgOiB7e2hpc3Rvcnk/LnN0b3JlSWQgPyBoaXN0b3J5Py5zdG9yZUlkIDonLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGlzdG9yeS5zdGF0dXMgPT09J29wZW4nXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1kYW5nZXJcIj5PcGVuPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGlzdG9yeS5zdGF0dXMgPT09J2Nsb3NlZCdcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXN1Y2Nlc3NcIj5DbG9zZWQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJoaXN0b3J5LnN0YXR1cyA9PT0naW5wcm9ncmVzcydcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXByaW1hcnlcIj5JblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcm9ncmVzczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8L3RyPlxyXG4gICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICA8L3RhYmxlPiAgIFxyXG4gICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICA8bGliLXBhZ2luYXRpb24gW2l0ZW1zUGVyUGFnZV09XCJsaW1pdFwiIFtjdXJyZW50UGFnZV09XCJvZmZzZXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbdG90YWxJdGVtc109XCJ0b3RhbEl0ZW1zXCIgW3BhZ2luYXRpb25TaXplc109XCJbMTAsMjAsMzBdXCIgW3BhZ2VTaXplXT1cImxpbWl0XCJcclxuICAgICAgICAgICAgICAgICAgICAgKHBhZ2VDaGFuZ2UpPVwib25QYWdlQ2hhbmdlKCRldmVudClcIiAocGFnZVNpemVDaGFuZ2UpPVwib25QYWdlU2l6ZUNoYW5nZSgkZXZlbnQpXCI+PC9saWItcGFnaW5hdGlvbj5cclxuICAgICAgICA8L2Rpdj4gXHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImhpc3RvcnlMb2FkaW5nICYmICFoaXN0b3J5Tm9kYXRhXCIgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGlzdG9yeU5vZGF0YSAmJiAhaGlzdG9yeUxvYWRpbmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctMTIgbWItM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwiaW1nLXNyY1wiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ljb25zL05vZGF0YS5zdmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgIDwvZGl2PlxyXG48L2Rpdj5cclxuXHJcbjxkaXYgKm5nSWY9XCJ1c2VyRGF0YSA9PT0gJ0hpc3RvcnknXCI+XHJcbiAgICA8ZGl2ICpuZ0lmPVwidHlwZSA9PT0gJ2F1ZGl0J1wiIGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cIiFoaXN0b3J5TG9hZGluZyAmJiAhaGlzdG9yeU5vZGF0YVwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcmVzcG9uc2l2ZVwiPiAgXHJcbiAgICAgICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwidGFibGUgYm90dG9tLWJvcmRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICA8dGhlYWQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8dHI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNvcnREYXRhKCdmaWxlRGF0ZScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmlsZSBEYXRlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnZmlsZURhdGUnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnZmlsZURhdGUnIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2ZpbGVEYXRlJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic29ydERhdGEoJ2NsaWVudE5hbWUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDbGllbnQgSW5mb1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnROYW1lJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2NsaWVudE5hbWUnIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2NsaWVudE5hbWUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiBjbGFzcz1cImN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInNvcnREYXRhKCdzdG9yZU5hbWUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSBJbmZvXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlTmFtZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdzdG9yZU5hbWUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVOYW1lJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJzb3J0RGF0YSgnbG9jYXRpb24nKVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMb2NhdGlvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdsb2NhdGlvbicgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdsb2NhdGlvbidcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdsb2NhdGlvbicgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic29ydERhdGEoJ3R5cGUnKVwiPlR5cGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICd0eXBlJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ3R5cGUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAndHlwZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJzb3J0RGF0YSgnYWNjdXJhY3knKVwiPkFjY3VyYWN5XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnYWNjdXJhY3knICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnYWNjdXJhY3knXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnYWNjdXJhY3knICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwic29ydERhdGEoJ3RpbWVzcGVudCcpXCI+VGltZSBTcGVudFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3RpbWVzcGVudCcgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICd0aW1lc3BlbnQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAndGltZXNwZW50JyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRoPlN0YXR1c1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0aD5BY3Rpb25zXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgICAgICAgPC90aGVhZD5cclxuICAgICAgICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPHRyICpuZ0Zvcj1cImxldCBoaXN0b3J5IG9mIHdvcmtIaXN0b3J5ZGF0YSA7IGxldCBpID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3toaXN0b3J5Py5maWxlRGF0ZX19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3toaXN0b3J5Py5jbGllbnROYW1lID8gaGlzdG9yeT8uY2xpZW50TmFtZSA6Jy0tJ319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3toaXN0b3J5Py5zdG9yZU5hbWUgPyBoaXN0b3J5Py5zdG9yZU5hbWUgOiAnLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD57e2hpc3Rvcnk/LmxvY2F0aW9uID8gaGlzdG9yeT8ubG9jYXRpb24gOictLSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8udHlwZSA/IGhpc3Rvcnk/LnR5cGUgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8uYWNjdXJhY3kgPyBoaXN0b3J5Py5hY2N1cmFjeSA6Jy0tJ319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3toaXN0b3J5Py50aW1lc3BlbnQgPyBoaXN0b3J5Py50aW1lc3BlbnQgOictLSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGlzdG9yeS5zdGF0dXMgPT09J2RyYWZ0J1wiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtd2FybmluZ1wiPkRyYWZ0PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaGlzdG9yeS5zdGF0dXMgPT09J2NvbXBsZXRlZCdcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXN1Y2Nlc3NcIj5DbG9zZWQ8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJoaXN0b3J5LnN0YXR1cyA9PT0naW5wcm9ncmVzcydcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXByaW1hcnlcIj5JblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBQcm9ncmVzczwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGQ+PHNwYW4gY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJ2aWV3VXNlcigpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMC44MzMzNzQgMTBDMC44MzMzNzQgMTAgNC4xNjY3MSAzLjMzMzM3IDEwIDMuMzMzMzdDMTUuODMzNCAzLjMzMzM3IDE5LjE2NjcgMTAgMTkuMTY2NyAxMEMxOS4xNjY3IDEwIDE1LjgzMzQgMTYuNjY2NyAxMCAxNi42NjY3QzQuMTY2NzEgMTYuNjY2NyAwLjgzMzM3NCAxMCAwLjgzMzM3NCAxMFpcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMCAxMi41QzExLjM4MDggMTIuNSAxMi41IDExLjM4MDggMTIuNSAxMEMxMi41IDguNjE5MzMgMTEuMzgwOCA3LjUwMDA0IDEwIDcuNTAwMDRDOC42MTkzMyA3LjUwMDA0IDcuNTAwMDQgOC42MTkzMyA3LjUwMDA0IDEwQzcuNTAwMDQgMTEuMzgwOCA4LjYxOTMzIDEyLjUgMTAgMTIuNVpcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgIDwvdGFibGU+ICAgXHJcbiAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgIDwhLS0gPGxpYi1wYWdpbmF0aW9uIFtpdGVtc1BlclBhZ2VdPVwibGltaXRcIiBbY3VycmVudFBhZ2VdPVwib2Zmc2V0XCJcclxuICAgICAgICAgICAgICAgICAgICAgW3RvdGFsSXRlbXNdPVwid29ya0hpc3RvcnlUYWJsZS5jb3VudFwiIFtwYWdpbmF0aW9uU2l6ZXNdPVwiWzEwLDIwLDMwXVwiIFtwYWdlU2l6ZV09XCJsaW1pdFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIChwYWdlQ2hhbmdlKT1cIm9uUGFnZUNoYW5nZSgkZXZlbnQpXCIgKHBhZ2VTaXplQ2hhbmdlKT1cIm9uUGFnZVNpemVDaGFuZ2UoJGV2ZW50KVwiPjwvbGliLXBhZ2luYXRpb24+IC0tPlxyXG4gICAgICAgIDwvZGl2PiBcclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaGlzdG9yeUxvYWRpbmcgJiYgIWhpc3RvcnlOb2RhdGFcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoaXN0b3J5Tm9kYXRhICYmICFoaXN0b3J5TG9hZGluZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy0xMiBtYi0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJpbWctc3JjXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSWNvbnMvTm9kYXRhLnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgPC9kaXY+XHJcbjwvZGl2PlxyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG4iXX0=
|