tango-app-ui-ticket-user 3.0.50-dev → 3.0.51-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 +9 -7
- package/esm2022/lib/components/tango-ticket-users/tango-ticket-users.component.mjs +3 -3
- package/fesm2022/tango-app-ui-ticket-user.mjs +10 -8
- package/fesm2022/tango-app-ui-ticket-user.mjs.map +1 -1
- package/lib/components/infratickets/infratickets.component.d.ts +1 -0
- package/package.json +1 -1
|
@@ -78,6 +78,7 @@ export class InfraticketsComponent {
|
|
|
78
78
|
user;
|
|
79
79
|
type = "infra";
|
|
80
80
|
uniqueArray;
|
|
81
|
+
totalItems = 0;
|
|
81
82
|
constructor(route, router, cd, dataService, toastService, service, dataservice, gs, excel) {
|
|
82
83
|
this.route = route;
|
|
83
84
|
this.router = router;
|
|
@@ -299,9 +300,9 @@ export class InfraticketsComponent {
|
|
|
299
300
|
if (value.matStatus == 'Draft') {
|
|
300
301
|
this.router.navigateByUrl(`/tickets/employeetraining/${value.ticketId}/${value.storeId}?functionType=storeMatupdate`);
|
|
301
302
|
}
|
|
302
|
-
else if
|
|
303
|
-
|
|
304
|
-
}
|
|
303
|
+
// else if(value.matStatus =='closed'){
|
|
304
|
+
// this.router.navigateByUrl (`/tickets/employeetraining/${value.ticketId}/${value.storeId}?functionType=output`);
|
|
305
|
+
// }
|
|
305
306
|
else {
|
|
306
307
|
this.router.navigateByUrl(`/tickets/employeetraining/${value.ticketId}/${value.storeId}`);
|
|
307
308
|
}
|
|
@@ -380,7 +381,8 @@ export class InfraticketsComponent {
|
|
|
380
381
|
.subscribe({
|
|
381
382
|
next: (res) => {
|
|
382
383
|
if (res && res?.code == 200) {
|
|
383
|
-
this.workHistoryTable = res
|
|
384
|
+
this.workHistoryTable = res?.data?.result;
|
|
385
|
+
this.totalItems = res?.data?.count;
|
|
384
386
|
this.historyLoading = false;
|
|
385
387
|
this.historyNodata = false;
|
|
386
388
|
}
|
|
@@ -565,13 +567,13 @@ export class InfraticketsComponent {
|
|
|
565
567
|
this.userTicketList('closed');
|
|
566
568
|
}
|
|
567
569
|
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 });
|
|
568
|
-
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]=\"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<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]=\"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<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" }] });
|
|
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" }] });
|
|
569
571
|
}
|
|
570
572
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: InfraticketsComponent, decorators: [{
|
|
571
573
|
type: Component,
|
|
572
|
-
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]=\"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<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]=\"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<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"] }]
|
|
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"] }]
|
|
573
575
|
}], 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: [{
|
|
574
576
|
type: HostListener,
|
|
575
577
|
args: ["document:click", ["$event"]]
|
|
576
578
|
}] } });
|
|
577
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5mcmF0aWNrZXRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXRpY2tldC11c2VyL3NyYy9saWIvY29tcG9uZW50cy9pbmZyYXRpY2tldHMvaW5mcmF0aWNrZXRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXRpY2tldC11c2VyL3NyYy9saWIvY29tcG9uZW50cy9pbmZyYXRpY2tldHMvaW5mcmF0aWNrZXRzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsWUFBWSxHQUdiLE1BQU0sZUFBZSxDQUFDO0FBT3ZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7O0FBTzFDLE1BQU0sT0FBTyxxQkFBcUI7SUE2RFo7SUFBK0I7SUFDekM7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNEO0lBQ0M7SUFuRVYsV0FBVyxHQUFRLE9BQU8sQ0FBQztJQUMzQixVQUFVLEdBQVEsQ0FBQyxDQUFDO0lBQ3BCLGFBQWEsR0FBUSxFQUFFLENBQUM7SUFDeEIsUUFBUSxHQUFRLFdBQVcsQ0FBQztJQUM1QixnQkFBZ0IsQ0FBTTtJQUN0Qix1QkFBdUI7SUFDdkIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixNQUFNLENBQVU7SUFDaEIsUUFBUSxHQUFZLEtBQUssQ0FBQztJQUMxQixlQUFlLENBQU07SUFDckIsTUFBTSxHQUFRLENBQUMsQ0FBQztJQUNoQixNQUFNLEdBQVEsQ0FBQyxDQUFDLENBQUM7SUFDakIsS0FBSyxHQUFRLEVBQUUsQ0FBQztJQUNoQixhQUFhLENBQU07SUFDbkIsYUFBYSxDQUFNO0lBQ25CLFNBQVMsR0FBVSxFQUFFLENBQUM7SUFDdEIsZUFBZSxHQUFVLEVBQUUsQ0FBQztJQUM1QixXQUFXLEdBQVUsRUFBRSxD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QVksRUFBRSxFQUFFO2dCQUM3QixJQUFJLE9BQU8sQ0FBQyxXQUFXLEtBQUssUUFBUSxFQUFFO29CQUNwQyxJQUFJLENBQUMsYUFBYSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7aUJBQ2hFO1lBQ0gsQ0FBQyxDQUFDLENBQUE7U0FDRDtRQUNELElBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEtBQUssQ0FBQztZQUNoQyxJQUFJLENBQUMsYUFBYSxHQUFFLEVBQUUsQ0FBQztRQUN6QixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxjQUFjLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNoQyxDQUFDO3dHQXppQlEscUJBQXFCOzRGQUFyQixxQkFBcUIsc0hDcEJsQyw0NytHQTgrQkE7OzRGRDE5QmEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLGtCQUFrQjtnVEFnRjVCLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIE9uRGVzdHJveSxcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgT25Jbml0LFxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XHJcbmltcG9ydCB7IFRpY2tldHNTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3RpY2tldC1pbmZyYS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IERhdGFTZXJ2aWNlIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2RhdGEuc2VydmljZVwiO1xyXG5pbXBvcnQgeyBUb2FzdFNlcnZpY2UgfSBmcm9tIFwidGFuZ28tYXBwLXVpLXNoYXJlZFwiO1xyXG5pbXBvcnQgeyBHbG9iYWxTdGF0ZVNlcnZpY2UgfSBmcm9tIFwidGFuZ28tYXBwLXVpLWdsb2JhbFwiO1xyXG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQgeyBFeGNlbFNlcnZpY2UgfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvZXhjZWwuc2VydmljZVwiO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJsaWItaW5mcmF0aWNrZXRzXCIsXHJcbiAgdGVtcGxhdGVVcmw6IFwiLi9pbmZyYXRpY2tldHMuY29tcG9uZW50Lmh0bWxcIixcclxuICBzdHlsZVVybDogXCIuL2luZnJhdGlja2V0cy5jb21wb25lbnQuc2Nzc1wiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5mcmF0aWNrZXRzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHNlbGVjdGVkVGFiOiBhbnkgPSBcImluZnJhXCI7XHJcbiAgc2VsZWN0Q2FyZDogYW55ID0gMDtcclxuICBzZWxlY3RlZElzc3VlOiBhbnkgPSBcIlwiO1xyXG4gIHVzZXJEYXRhOiBhbnkgPSBcIldvcmtzcGFjZVwiO1xyXG4gIHdvcmtIaXN0b3J5VGFibGU6IGFueTtcclxuICAvLyB3b3JrSGlzdG9yeWRhdGE6YW55O1xyXG4gIGNhcmRWaWV3OiBib29sZWFuID0gZmFsc2U7XHJcbiAgaXNPcGVuOiBib29sZWFuO1xyXG4gIGRyb3BEb3duOiBib29sZWFuID0gZmFsc2U7XHJcbiAgc2VhcmNoV29ya3NwYWNlOiBhbnk7XHJcbiAgb2Zmc2V0OiBhbnkgPSAxO1xyXG4gIHNvcnRCeTogYW55ID0gLTE7XHJcbiAgbGltaXQ6IGFueSA9IDEwO1xyXG4gIHNvcnRDb2x1bU5hbWU6IGFueTtcclxuICBzZWFyY2hIaXN0b3J5OiBhbnk7XHJcbiAgZHVtbXlPcGVuOiBhbnlbXSA9IFtdO1xyXG4gIGR1bW15SW5wcm9ncmVzczogYW55W10gPSBbXTtcclxuICBkdW1teUNsb3NlZDogYW55W10gPSBbXTtcclxuICBkcm9wZG93bkl0ZW1zOiBhbnlbXTtcclxuICBoaXN0b3J5TG9hZGluZzogYm9vbGVhbiA9IHRydWU7XHJcbiAgaGlzdG9yeU5vZGF0YTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIGxvYWRpbmc6IGFueSA9IHtcclxuICAgIG9wZW46IHRydWUsXHJcbiAgICBpbnByb2dyZXNzOiB0cnVlLFxyXG4gICAgY2xvc2VkOiB0cnVlLFxyXG4gIH07XHJcbiAgbm9EYXRhOiBhbnkgPSB7XHJcbiAgICBvcGVuOiBmYWxzZSxcclxuICAgIGlucHJvZ3Jlc3M6IGZhbHNlLFxyXG4gICAgY2xvc2VkOiBmYWxzZSxcclxuICB9O1xyXG4gIHBhZ2luYXRpb24gPSB7XHJcbiAgICBvZmZzZXQ6IDEsXHJcbiAgICBsaW1pdDogMTAsXHJcbiAgICB0b3RhbENvdW50OiAxMDAwLFxyXG4gICAgdG90YWxQYWdlczogMjAsXHJcbiAgfTtcclxuICBkYXRhT2JqZWN0OiBhbnk7XHJcbiAgc3RhdHVzT3BlbjogYW55O1xyXG4gIHN0YXR1c0Nsb3NlZDogYW55O1xyXG4gIHN0YXR1c0lucHJvZ3Jlc3M6IGFueTtcclxuICBkdW1teUhpc3Rvcnk6IGFueTtcclxuICBoZWFkZXJGaWx0ZXI6IGFueTtcclxuICBmaWx0ZXJlZERhdGE6IGFueVtdO1xyXG4gIGRhdGVGaWx0ZXI6IGFueTtcclxuICBzdG9yZUZpbHRlcjogYW55O1xyXG4gIGlzc3VlRmlsdGVyOiBhbnk7XHJcbiAgZmlsdGVyU3RvcmVzOiBhbnkgPSBbXTtcclxuICBjbGllbnRJZDogYW55O1xyXG4gIHdvcmtIaXN0b3J5ZGF0YTphbnlbXT1be2ZpbGVEYXRlOicwNi0wNi0yNCcsY2xpZW50TmFtZTonbGVuc2thcnQnLHN0b3JlTmFtZTonbGtzdDkwNScsbG9jYXRpb246J2NoZW5uYWknLHR5cGU6J2F1ZGl0JyxhY2N1cmFjeTonODAlJyx0aW1lc3BlbnQ6JzE1bWlucycsc3RhdHVzOidjb21wbGV0ZWQnfSxcclxuICAgIHtmaWxlRGF0ZTonMDctMDYtMjQnLGNsaWVudE5hbWU6J3NhbmdlZXRoYScsc3RvcmVOYW1lOidsa3N0OTA1Jyxsb2NhdGlvbjonY2hlbm5haScsdHlwZTonYXVkaXQnLGFjY3VyYWN5Oic4MCUnLHRpbWVzcGVudDonMTVtaW5zJyxzdGF0dXM6J2NvbXBsZXRlZCd9LFxyXG4gICAge2ZpbGVEYXRlOicwOC0wNi0yNCcsY2xpZW50TmFtZTonbWluaXNvJyxzdG9yZU5hbWU6J2xrc3Q5MDUnLGxvY2F0aW9uOidjaGVubmFpJyx0eXBlOidyZS1hdWRpdCcsYWNjdXJhY3k6JzgwJScsdGltZXNwZW50OicxNW1pbnMnLHN0YXR1czonaW5wcm9ncmVzcyd9LFxyXG4gICAge2ZpbGVEYXRlOicwOS0wNi0yNCcsY2xpZW50TmFtZTonbGVuc2thcnQnLHN0b3JlTmFtZTonbGtzdDkwNScsbG9jYXRpb246J2NoZW5uYWknLHR5cGU6J2F1ZGl0JyxhY2N1cmFjeTonODAlJyx0aW1lc3BlbnQ6JzE1bWlucycsc3RhdHVzOidkcmFmdCd9LFxyXG4gICAge2ZpbGVEYXRlOicxMC0wNi0yNCcsY2xpZW50TmFtZTonbGVuc2thcnQnLHN0b3JlTmFtZTonbGtzdDkwNScsbG9jYXRpb246J2NoZW5uYWknLHR5cGU6J2F1ZGl0JyxhY2N1cmFjeTonODAlJyx0aW1lc3BlbnQ6JzE1bWlucycsc3RhdHVzOidjb21wbGV0ZWQnfVxyXG4gIF07XHJcblxyXG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBuZXcgU3ViamVjdCgpO1xyXG4gIHVzZXI6IGFueTtcclxuICB0eXBlOiBzdHJpbmcgfCBudWxsID0gXCJpbmZyYVwiO1xyXG4gIHVuaXF1ZUFycmF5OiBhbnk7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgZGF0YVNlcnZpY2U6IERhdGFTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSB0b2FzdFNlcnZpY2U6IFRvYXN0U2VydmljZSxcclxuICAgIHByaXZhdGUgc2VydmljZTogVGlja2V0c1NlcnZpY2UsXHJcbiAgICBwcml2YXRlIGRhdGFzZXJ2aWNlOiBEYXRhU2VydmljZSxcclxuICAgIHB1YmxpYyBnczogR2xvYmFsU3RhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBleGNlbDogRXhjZWxTZXJ2aWNlXHJcbiAgKSB7XHJcbiAgICB0aGlzLnJvdXRlLnF1ZXJ5UGFyYW1zLnN1YnNjcmliZSgocGFyYW1zKSA9PiB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWIgPSBwYXJhbXMuc2VsZWN0ZWRUYWI7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoXCJkb2N1bWVudDpjbGlja1wiLCBbXCIkZXZlbnRcIl0pXHJcbiAgb25DbGljayhldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xyXG4gICAgaWYgKCF0YXJnZXQuY2xvc2VzdChcIi5kcm9wZG93blwiKSkge1xyXG4gICAgICB0aGlzLmRyb3BEb3duID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpIHtcclxuICAgIHRoaXMuc2VydmljZT8uZGF0YVN1YmplY3Q/LnN1YnNjcmliZSh2YWx1ZSA9PiB7XHJcbiAgICAgIHRoaXMudXNlckRhdGEgPSAnV29ya3NwYWNlJ1xyXG4gICAgfSlcclxuICAgIHRoaXMuZ3MuZGF0YVJhbmdlVmFsdWUucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZGF0YTogYW55KSA9PiB7XHJcbiAgICAgIGlmIChkYXRhICE9IG51bGwpIHtcclxuICAgICAgICB0aGlzLnVzZXIgPSBKU09OLnBhcnNlKGxvY2FsU3RvcmFnZS5nZXRJdGVtKCd1c2VyLWluZm8nKSB8fCBcIlwiKVxyXG4gICAgICAgIHRoaXMuaGVhZGVyRmlsdGVyID0gZGF0YTtcclxuICAgICAgICB0aGlzLmNsaWVudElkID0gdGhpcy5oZWFkZXJGaWx0ZXI/LmNsaWVudHNcclxuICAgICAgICB0aGlzLnJvdXRlLnF1ZXJ5UGFyYW1NYXAuc3Vic2NyaWJlKHBhcmFtcyA9PiB7XHJcbiAgICAgICAgICB0aGlzLnR5cGUgPSAocGFyYW1zLmdldCgndHlwZScpKSA/IChwYXJhbXMuZ2V0KCd0eXBlJykpIDogdGhpcy50eXBlO1xyXG4gICAgICAgICAgaWYodGhpcy50eXBlID09PSdhdWRpdCcpe3RoaXMudXNlckRhdGEgPSAnSGlzdG9yeSd9ZWxzZXt9XHJcbiAgICAgICAgICB0aGlzLmdldGRhdGFPYmplY3QoKTtcclxuICAgICAgICAgIHRoaXMuc2VsZWN0RHJvcGRvd25zKCk7XHJcbiAgICAgICAgICBpZiAodGhpcy51c2VyRGF0YSA9PSAnV29ya3NwYWNlJykge1xyXG4gICAgICAgICAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KCdvcGVuJyk7XHJcbiAgICAgICAgICAgIHRoaXMudXNlclRpY2tldExpc3QoJ2lucHJvZ3Jlc3MnKTtcclxuICAgICAgICAgICAgdGhpcy51c2VyVGlja2V0TGlzdCgnY2xvc2VkJyk7XHJcbiAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMudXNlckRhdGEgPT0gJ0hpc3RvcnknKSB7XHJcbiAgICAgICAgICAgIHRoaXMud29ya0hpc3RvcnkoKTtcclxuICAgICAgICAgICAgdGhpcy5zdG9yZUZpbHRlcnMoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG5cclxuICAgIH0pO1xyXG5cclxuICB9XHJcbiAgZ2V0ZGF0YU9iamVjdCgpIHtcclxuICAgIGlmICh0aGlzLnR5cGUgPT09IFwiaW5mcmFcIiB8fCB0aGlzLnR5cGUgPT09IFwiaW5zdGFsbGF0aW9uXCIpIHtcclxuICAgICAgdGhpcy5kYXRhT2JqZWN0ID0gW1xyXG4gICAgICAgIHsgRGVzY3JpcHRpb246IFwiU3RvcmUgSURcIiwgSXNzdWVzOiBbXSB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIERlc2NyaXB0aW9uOiBcIklzc3VlIFR5cGVcIixcclxuICAgICAgICAgIElzc3VlczogWyB7IHRleHQ6IFwiU3RvcmUgT3BlcmF0aW9uIElzc3Vlc1wiIH0seyB0ZXh0OiBcIkNhbWVyYSBJc3N1ZXNcIiB9LHsgdGV4dDogXCJJbnRlcm5ldCBJc3N1ZXNcIiB9LCB7IHRleHQ6IFwiU3lzdGVtIElzc3Vlc1wiIH0seyB0ZXh0OiBcIkFwcGxpY2F0aW9uIElzc3Vlc1wiIH0sIF0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICB7XHJcbiAgICAgICAgICBEZXNjcmlwdGlvbjogXCJEYXRlIFR5cGVcIix0eXBlOiBcInNpbmdsZVwiLFxyXG4gICAgICAgICAgSXNzdWVzOiBbXHJcbiAgICAgICAgICAgIHsgaWQ6IFwiaXNzdWVJZGVudGlmaWVkRGF0ZVwiLCB0ZXh0OiBcIklzc3VlIElkZW50aWZpZWQgRGF0ZVwiIH0sXHJcbiAgICAgICAgICAgIHsgaWQ6IFwiY3JlYXRlZERhdGVcIiwgdGV4dDogXCJDcmVhdGVkIERhdGVcIiB9LFxyXG4gICAgICAgICAgICB7IGlkOiBcImNsb3NlZERhdGVcIiwgdGV4dDogXCJDbG9zZWQgRGF0ZVwiIH0sXHJcbiAgICAgICAgICBdLFxyXG4gICAgICAgIH0sXHJcbiAgICAgIF07XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMudHlwZSA9PT0gXCJkYXRhTWlzbWF0Y2hcIikge1xyXG4gICAgICB0aGlzLmRhdGFPYmplY3QgPSBbXHJcbiAgICAgICAgeyBEZXNjcmlwdGlvbjogJ1N0b3JlIElEJywgSXNzdWVzOiBbXSB9LFxyXG4gICAgICAgIHsgRGVzY3JpcHRpb246ICdJc3N1ZSBUeXBlJywgSXNzdWVzOiBbe2lkOidoaWdoY291bnQnLCB0ZXh0OiBcIkhpZ2ggY291bnRcIiB9LCB7aWQ6J2xvd2NvdW50JywgdGV4dDogXCJMb3cgY291bnRcIiB9XSB9LFxyXG4gICAgICAgIHsgRGVzY3JpcHRpb246ICdEYXRlIFR5cGUnLCB0eXBlOiAnc2luZ2xlJywgSXNzdWVzOiBbeyBpZDogXCJpc3N1ZURhdGVcIix0ZXh0OiBcIklzc3VlIERhdGVcIiB9LCB7IGlkOiBcImNyZWF0ZWREYXRlXCIsdGV4dDogXCJDcmVhdGVkIERhdGVcIiB9LCB7IGlkOiBcImNsb3NlZERhdGVcIix0ZXh0OiBcIkNsb3NlZCBEYXRlXCIgfV0gfVxyXG4gICAgICBdO1xyXG4gICAgfVxyXG4gIH1cclxuICByZW1vdmVEdXBsaWNhdGVzKCkge1xyXG4gICAgY29uc3Qga2V5ID0gJ2lkJzsgLy8gQ2hhbmdlIHRoaXMga2V5IHRvIGFueSBrZXkgeW91IHdhbnQgdG8gdXNlIGZvciB1bmlxdWVuZXNzXHJcbiAgICBjb25zdCB1bmlxdWVLZXlzID0gbmV3IFNldCgpO1xyXG4gICAgbGV0IG9yaWdpbmFsQXJyYXkgPSB0aGlzLmRhdGFPYmplY3QuZmluZCgoZGF0YTphbnkpID0+IGRhdGEuRGVzY3JpcHRpb24gPT09J1N0b3JlIElEJykuSXNzdWVzXHJcbiAgICB0aGlzLnVuaXF1ZUFycmF5ID0gb3JpZ2luYWxBcnJheS5maWx0ZXIoKGl0ZW06YW55KSA9PiB7XHJcbiAgICAgIGNvbnN0IGlzRHVwbGljYXRlID0gdW5pcXVlS2V5cy5oYXMoaXRlbVtrZXldKTtcclxuICAgICAgdW5pcXVlS2V5cy5hZGQoaXRlbVtrZXldKTtcclxuICAgICAgcmV0dXJuICFpc0R1cGxpY2F0ZTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVzdHJveSQubmV4dCh0cnVlKTtcclxuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcclxuICB9XHJcbiAgdXNlclRpY2tldExpc3QodmFsdWU6IGFueSkge1xyXG4gICAgLy8gdGhpcy5zZWxlY3RlZElzc3VlID0gdGhpcy5zZWxlY3RlZElzc3VlID09PSAnSGlnaCBDb3VudCcgPyAnaGlnaGNvdW50JyA6KHRoaXMuc2VsZWN0ZWRJc3N1ZSA9PT0gJ0xvdyBDb3VudCcgPyAnbG93Y291bnQnIDogJycpXHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgY2xpZW50SWQ6IHRoaXMuY2xpZW50SWQsXHJcbiAgICAgIHVzZXJJZDogdGhpcy51c2VyPy5faWQsXHJcbiAgICAgIHN0YXR1czogdmFsdWUsXHJcbiAgICAgIGlzc3VlVHlwZTogdGhpcy50eXBlLFxyXG4gICAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LnN0YXJ0RGF0ZSxcclxuICAgICAgdG9EYXRlOiB0aGlzLmhlYWRlckZpbHRlcj8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgICAgc2VhcmNoVmFsdWU6IHRoaXMuc2VhcmNoV29ya3NwYWNlLFxyXG4gICAgICBmaWx0ZXI6IHRoaXMuc2VsZWN0ZWRJc3N1ZSxcclxuICAgIH07XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLnVzZXJUaWNrZXRMaXN0KGRhdGEpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAwICYmIHJlcy5kYXRhLmRhdGEubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgIGlmICh2YWx1ZSA9PSBcIm9wZW5cIikge1xyXG4gICAgICAgICAgICAgIHRoaXMuc3RhdHVzT3BlbiA9IHJlcy5kYXRhLmRhdGE7XHJcbiAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nLm9wZW4gPSBmYWxzZTtcclxuICAgICAgICAgICAgICB0aGlzLm5vRGF0YS5vcGVuID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT0gXCJpbnByb2dyZXNzXCIpIHtcclxuICAgICAgICAgICAgICB0aGlzLnN0YXR1c0lucHJvZ3Jlc3MgPSByZXMuZGF0YS5kYXRhO1xyXG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZy5pbnByb2dyZXNzID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgdGhpcy5ub0RhdGEuaW5wcm9ncmVzcyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMuc3RhdHVzQ2xvc2VkID0gcmVzLmRhdGEuZGF0YTtcclxuICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcuY2xvc2VkID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgdGhpcy5ub0RhdGEuY2xvc2VkID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGlmICh2YWx1ZSA9PSBcIm9wZW5cIikge1xyXG4gICAgICAgICAgICAgIHRoaXMubm9EYXRhLm9wZW4gPSB0cnVlO1xyXG4gICAgICAgICAgICAgIHRoaXMubG9hZGluZy5vcGVuID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUgPT0gXCJpbnByb2dyZXNzXCIpIHtcclxuICAgICAgICAgICAgICB0aGlzLm5vRGF0YS5pbnByb2dyZXNzID0gdHJ1ZTtcclxuICAgICAgICAgICAgICB0aGlzLmxvYWRpbmcuaW5wcm9ncmVzcyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMubm9EYXRhLmNsb3NlZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgdGhpcy5sb2FkaW5nLmNsb3NlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5ub0RhdGEub3BlbiA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcub3BlbiA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5ub0RhdGEuaW5wcm9ncmVzcyA9IHRydWU7XHJcbiAgICAgICAgICB0aGlzLmxvYWRpbmcuaW5wcm9ncmVzcyA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5ub0RhdGEuY2xvc2VkID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMubG9hZGluZy5jbG9zZWQgPSBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9LFxyXG4gICAgICB9KTtcclxuICB9XHJcblxyXG4gIHRha2VUaWNrZXQoKSB7XHJcbiAgICBsZXQgZGF0YSA9IHsgdXNlcklkOiB0aGlzLnVzZXI/Ll9pZCwgaXNzdWVUeXBlOiB0aGlzLnR5cGUgfTtcclxuICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAudXNlclRha2VUaWNrZXQoZGF0YSlcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldFN1Y2Nlc3NUb2FzdChyZXMubWVzc2FnZSk7XHJcbiAgICAgICAgICAgIHRoaXMudXNlclRpY2tldExpc3QoXCJvcGVuXCIpO1xyXG4gICAgICAgICAgfSBlbHNlIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAxKSB7XHJcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldEVycm9yVG9hc3QocmVzLmVycm9yKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldEVycm9yVG9hc3QoXCJObyBUaWNrZXQgQXZhaWxhYmxlXCIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnIpID0+IHtcclxuICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmdldEVycm9yVG9hc3QoZXJyLmVycm9yKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlOiAoKSA9PiB7fSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBTaG93VGlja2V0KGluZGV4OiBhbnkpIHtcclxuICAgIHRoaXMuc2VsZWN0Q2FyZCA9IGluZGV4ID8gaW5kZXggOiAwO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0VGlja2V0KCkge1xyXG4gXHJcbiAgfVxyXG4gIHNlbGVjdFZpZXcoZTogTW91c2VFdmVudCwgaW5kZXg6IGFueSwgdmFsdWU6IGFueSkge1xyXG4gICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIGlmICh2YWx1ZSA9PSBcIm9wZW5cIikge1xyXG4gICAgICB0aGlzLnN0YXR1c09wZW5baW5kZXhdLmlzT3BlbiA9ICF0aGlzLnN0YXR1c09wZW5baW5kZXhdLmlzT3BlbjtcclxuICAgIH0gZWxzZSBpZiAodmFsdWUgPT0gXCJpbnByb2dyZXNzXCIpIHtcclxuICAgICAgdGhpcy5zdGF0dXNJbnByb2dyZXNzW2luZGV4XS5pc09wZW4gPVxyXG4gICAgICAgICF0aGlzLnN0YXR1c0lucHJvZ3Jlc3NbaW5kZXhdLmlzT3BlbjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuc3RhdHVzQ2xvc2VkW2luZGV4XS5pc09wZW4gPSAhdGhpcy5zdGF0dXNDbG9zZWRbaW5kZXhdLmlzT3BlbjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJvdXRldG9UaWNrZXQodmFsdWU6IGFueSkge1xyXG4gICAgbGV0IGlzc3VlVHlwZSA9XHJcbiAgICAgIHZhbHVlPy5pc3N1ZVR5cGUgPT09IFwiaGlnaGNvdW50XCJcclxuICAgICAgICA/IFwiaGlnaC1jb3VudFwiXHJcbiAgICAgICAgOiB2YWx1ZT8uaXNzdWVUeXBlID09PSBcImxvd2NvdW50XCJcclxuICAgICAgICA/IFwibG93LWNvdW50XCJcclxuICAgICAgICA6IFwiXCI7XHJcbiAgICBpZiAodmFsdWU/Lmlzc3VlVHlwZSA9PSBcImluZnJhXCIpIHtcclxuICAgICAgLy8gdGhpcy5yb3V0ZXIubmF2aWdhdGUoW1xyXG4gICAgICAvLyAgIGAvdGlja2V0cy91c2Vycy90aWNrZXRpbmZvLyR7dmFsdWUudGlja2V0SWR9LyR7dmFsdWUuc3RvcmVJZH1gLFxyXG4gICAgICAvLyBdKTtcclxuICAgICAgbGV0IGRhdGE6IGFueSA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0oXCJoZWFkZXItZmlsdGVyc1wiKSB8fCBcIlwiKTtcclxuICAgICAgZGF0YS5zdG9yZSA9IHZhbHVlLnN0b3JlSWQ7XHJcbiAgICAgIGRhdGEuY2xpZW50ID0gdmFsdWUuY2xpZW50SWQ7XHJcbiAgICAgIGRhdGEuY2xpZW50TmFtZSA9IHZhbHVlPy5jbGllbnROYW1lID8gdmFsdWU/LmNsaWVudE5hbWU6J1N0b3Jlcyc7IFxyXG4gICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbShcImhlYWRlci1maWx0ZXJzXCIsIEpTT04uc3RyaW5naWZ5KGRhdGEpKTtcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2AvbWFuYWdlL3N0b3Jlcy9pbmZyYS10aWNrZXRgXSwge3F1ZXJ5UGFyYW1zOiB7IHN0b3JlSWQ6IHZhbHVlLnN0b3JlSWQsdHlwZTpcImluZnJhXCIgfX0pO1xyXG4gICBcclxuICAgIH0gZWxzZSBpZiAodmFsdWU/Lmlzc3VlVHlwZSA9PSBcImluc3RhbGxhdGlvblwiKSB7XHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtcclxuICAgICAgICBgL3RpY2tldHMvdXNlcnMvaW5zdGFsbGF0aW9uaW5mby8ke3ZhbHVlLnRpY2tldElkfS8ke3ZhbHVlLnN0b3JlSWR9YCxcclxuICAgICAgXSk7XHJcbiAgICB9ICBlbHNlIGlmKHZhbHVlPy5pc3N1ZVR5cGUgPT0gJ21hdCcpIHtcclxuICAgICAgaWYodmFsdWUubWF0U3RhdHVzID09J0RyYWZ0Jyl7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGVCeVVybCAoYC90aWNrZXRzL2VtcGxveWVldHJhaW5pbmcvJHt2YWx1ZS50aWNrZXRJZH0vJHt2YWx1ZS5zdG9yZUlkfT9mdW5jdGlvblR5cGU9c3RvcmVNYXR1cGRhdGVgKTtcclxuICAgICAgfWVsc2UgaWYodmFsdWUubWF0U3RhdHVzID09J2Nsb3NlZCcpe1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlQnlVcmwgKGAvdGlja2V0cy9lbXBsb3llZXRyYWluaW5nLyR7dmFsdWUudGlja2V0SWR9LyR7dmFsdWUuc3RvcmVJZH0/ZnVuY3Rpb25UeXBlPW91dHB1dGApO1xyXG4gICAgICB9ZWxzZXtcclxuICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsIChgL3RpY2tldHMvZW1wbG95ZWV0cmFpbmluZy8ke3ZhbHVlLnRpY2tldElkfS8ke3ZhbHVlLnN0b3JlSWR9YCk7XHJcbiAgICAgIH1cclxuICAgIH1lbHNlIGlmIChcclxuICAgICAgdmFsdWU/Lmlzc3VlVHlwZSA9PSBcImhpZ2hjb3VudFwiIHx8XHJcbiAgICAgIHZhbHVlPy5pc3N1ZVR5cGUgPT0gXCJsb3djb3VudFwiXHJcbiAgICApIHtcclxuICAgICAgdGhpcy5zdGF0dXNVcGRhdGUodmFsdWUudGlja2V0SWQsIHZhbHVlPy5pc3N1ZVR5cGUsIHZhbHVlPy5zdGF0dXMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgc3RhdHVzVXBkYXRlKHZhbHVlOiBhbnksIGlzc3VlVHlwZTogYW55LCBzdGF0dXM6IGFueSkge1xyXG4gICAgLy8gY29uc29sZS5sb2coYC90aWNrZXRzL2RhdGEtbWlzbWF0Y2gvJHt0eXBlfT90aWNrZXRJZD0ke3ZhbHVlfWAsXCJ0cmVxcnFcIilcclxuICAgIGxldCB0eXBlID1cclxuICAgICAgaXNzdWVUeXBlID09PSBcImhpZ2hjb3VudFwiXHJcbiAgICAgICAgPyBcImhpZ2gtY291bnRcIlxyXG4gICAgICAgIDogaXNzdWVUeXBlID09PSBcImxvd2NvdW50XCJcclxuICAgICAgICA/IFwibG93LWNvdW50XCJcclxuICAgICAgICA6IFwiXCI7XHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgdGlja2V0SWQ6IHZhbHVlLFxyXG4gICAgICBzdGF0dXM6IFwiaW5wcm9ncmVzc1wiLFxyXG4gICAgfTtcclxuICAgIGlmIChzdGF0dXMgPT09IFwib3BlblwiKSB7XHJcbiAgICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAgIC5zdGF0dXNVcGRhdGUoZGF0YSlcclxuICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXHJcbiAgICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKFxyXG4gICAgICAgICAgICAgICAgYC90aWNrZXRzL2RhdGEtbWlzbWF0Y2gvJHt0eXBlfT90aWNrZXRJZD0ke3ZhbHVlfWBcclxuICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgfSBlbHNlIGlmKHN0YXR1cyAhPT0gXCJjbG9zZWRcIikge1xyXG4gICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZUJ5VXJsKFxyXG4gICAgICAgIGAvdGlja2V0cy9kYXRhLW1pc21hdGNoLyR7dHlwZX0/dGlja2V0SWQ9JHt2YWx1ZX1gXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGV4cG9ydERhdGEoKSB7XHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgdXNlcklkOiB0aGlzLnVzZXI/Ll9pZCxcclxuICAgICAgZXhwb3J0OiB0cnVlLFxyXG4gICAgICBpc3N1ZVR5cGU6IHRoaXMudHlwZSxcclxuICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRmlsdGVyPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICAgIHRvRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LmVuZERhdGUsXHJcbiAgICAgIHNlYXJjaFZhbHVlOiB0aGlzLnNlYXJjaFdvcmtzcGFjZSxcclxuICAgICAgZmlsdGVyOiB0aGlzLnNlbGVjdGVkSXNzdWUsXHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckZpbHRlci5jbGllbnRzLFxyXG4gICAgfTtcclxuICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAuZXhwb3J0dXNlclRpY2tldExpc3QoZGF0YSlcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIHRoaXMuZXhjZWwuc2F2ZUFzRXhjZWxGaWxlKHJlcywgXCJVc2VyIFRpY2tldCBMaXN0XCIpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICB3b3JrSGlzdG9yeSgpIHtcclxuICAgIGxldCBkYXRhID0ge1xyXG4gICAgICB1c2VySWQ6IHRoaXMudXNlcj8uX2lkLFxyXG4gICAgICBvZmZzZXQ6IHRoaXMub2Zmc2V0LFxyXG4gICAgICBsaW1pdDogdGhpcy5saW1pdCxcclxuICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRmlsdGVyPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICAgIHRvRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LmVuZERhdGUsXHJcbiAgICAgIHNlYXJjaFZhbHVlOiB0aGlzLnNlYXJjaEhpc3RvcnksXHJcbiAgICAgIHNvcnRDb2x1bU5hbWU6IHRoaXMuc29ydENvbHVtTmFtZSxcclxuICAgICAgc29ydEJ5OiB0aGlzLnNvcnRCeSxcclxuICAgICAgaXNzdWVUeXBlOiB0aGlzLnR5cGUsXHJcbiAgICAgIGRhdGVGaWx0ZXI6IHRoaXMuZGF0ZUZpbHRlcixcclxuICAgICAgc3RvcmVGaWx0ZXI6IHRoaXMuc3RvcmVGaWx0ZXIsXHJcbiAgICAgIGlzc3VlRmlsdGVyOiB0aGlzLmlzc3VlRmlsdGVyLFxyXG4gICAgICBjbGllbnRJZDogdGhpcy5jbGllbnRJZCxcclxuICAgIH07XHJcbiAgICB0aGlzLnNlcnZpY2VcclxuICAgICAgLndvcmtIaXN0b3J5KGRhdGEpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcclxuICAgICAgLnN1YnNjcmliZSh7XHJcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcz8uY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgdGhpcy53b3JrSGlzdG9yeVRhYmxlID0gcmVzLmRhdGEucmVzdWx0O1xyXG4gICAgICAgICAgICB0aGlzLmhpc3RvcnlMb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMuaGlzdG9yeU5vZGF0YSA9IGZhbHNlO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5oaXN0b3J5Tm9kYXRhID0gdHJ1ZTtcclxuICAgICAgICAgICAgdGhpcy5oaXN0b3J5TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnJvcjogKGVycikgPT4ge1xyXG4gICAgICAgICAgdGhpcy5oaXN0b3J5Tm9kYXRhID0gdHJ1ZTtcclxuICAgICAgICAgIHRoaXMuaGlzdG9yeUxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGNvbXBsZXRlKCkge30sXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgc2VsZWN0SXRlbSh2YWx1ZTogYW55KSB7XHJcbiAgICBpZiAodmFsdWUgPT0gXCJBbGxcIikge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkSXNzdWUgPSBcIlwiO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZElzc3VlID0gdmFsdWU7XHJcbiAgICB9XHJcbiAgICBpZih0aGlzLnR5cGUgPT09ICdpbmZyYScgfHwgdGhpcy50eXBlID09PSAnaW5zdGFsbGF0aW9uJyl7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRJc3N1ZSA9IHRoaXMuc2VsZWN0ZWRJc3N1ZTtcclxuICAgIH1lbHNlIGlmKHRoaXMudHlwZSA9PT0gJ2RhdGFNaXNtYXRjaCcpe1xyXG4gICAgICAvLyBjb25zb2xlLmxvZygndGhpcy5zZWxlY3RlZElzc3VlJyx0aGlzLnNlbGVjdGVkSXNzdWUpXHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRJc3N1ZSA9ICh0aGlzLnNlbGVjdGVkSXNzdWUgPT09ICdMb3cgQ291bnQnID8gJ2xvd2NvdW50JyA6KHRoaXMuc2VsZWN0ZWRJc3N1ZSA9PT0gJ0hpZ2ggQ291bnQnID8gJ2hpZ2hjb3VudCcgOiAnJykpXHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKCd0aGlzLnNlbGVjdGVkSXNzdWUxJyx0aGlzLnNlbGVjdGVkSXNzdWUpXHJcbiAgICB9XHJcbiAgICB0aGlzLmRyb3BEb3duID0gZmFsc2U7XHJcbiAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KFwib3BlblwiKTtcclxuICAgIHRoaXMudXNlclRpY2tldExpc3QoXCJpbnByb2dyZXNzXCIpO1xyXG4gICAgdGhpcy51c2VyVGlja2V0TGlzdChcImNsb3NlZFwiKTtcclxuICB9XHJcbiAgc2VsZWN0RHJvcGRvd25zKCl7XHJcbiAgICBpZih0aGlzLnR5cGUgPT09ICdpbmZyYScgfHwgdGhpcy50eXBlID09PSAnaW5zdGFsbGF0aW9uJyl7XHJcbiAgICAgIHRoaXMuZHJvcGRvd25JdGVtcyA9IFsnQWxsJywgJ0ludGVybmV0IElzc3VlcycsICdDYW1lcmEgSXNzdWVzJywgJ1N5c3RlbSBJc3N1ZXMnLCAnQXBwbGljYXRpb24gSXNzdWVzJywgJ1N0b3JlIE9wZXJhdGlvbiBJc3N1ZXMnLCAnTm90IElkZW50aWZpZWQnXVxyXG4gICAgfWVsc2UgaWYodGhpcy50eXBlID09PSAnZGF0YU1pc21hdGNoJyl7XHJcbiAgICAgIHRoaXMuZHJvcGRvd25JdGVtcyA9IFsnQWxsJywgJ0xvdyBDb3VudCcsICdIaWdoIENvdW50J11cclxuICAgIH1cclxuICB9XHJcbiAgb3BlbkRyb3Bkb3duKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuZHJvcERvd24gPSAhdGhpcy5kcm9wRG93bjtcclxuICB9XHJcblxyXG4gIHVzZXJWYWx1ZShkYXRhOiBhbnkpIHtcclxuICAgIHRoaXMudXNlckRhdGEgPSBkYXRhO1xyXG4gICAgaWYgKHRoaXMudXNlckRhdGEgPT0gXCJIaXN0b3J5XCIpIHtcclxuICAgICAgdGhpcy53b3JrSGlzdG9yeSgpO1xyXG4gICAgICB0aGlzLnN0b3JlRmlsdGVycygpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHNlYXJjaFRpY2tldHMoKSB7XHJcbiAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KFwib3BlblwiKTtcclxuICAgIHRoaXMudXNlclRpY2tldExpc3QoXCJpbnByb2dyZXNzXCIpO1xyXG4gICAgdGhpcy51c2VyVGlja2V0TGlzdChcImNsb3NlZFwiKTtcclxuICB9XHJcblxyXG4gIHNlYXJjaEhpc3RvcnlUYWJsZSgpIHtcclxuICAgIHRoaXMud29ya0hpc3RvcnkoKTtcclxuICB9XHJcblxyXG4gIHJlY2VpdmVEYXRhKGRhdGE6IGFueVtdKSB7XHJcbiAgICB0aGlzLnN0b3JlRmlsdGVyID0gZGF0YVxyXG4gICAgICAuZmluZCgob2JqKSA9PiBvYmouRGVzY3JpcHRpb24gPT09IFwiU3RvcmUgSURcIilcclxuICAgICAgPy5Jc3N1ZXMubWFwKChpdGVtOiBhbnkpID0+IGl0ZW0/LnRleHQpO1xyXG4gICAgdGhpcy5kYXRlRmlsdGVyID0gZGF0YS5maW5kKFxyXG4gICAgICAob2JqKSA9PiBvYmouRGVzY3JpcHRpb24gPT09IFwiRGF0ZSBUeXBlXCJcclxuICAgICk/Lklzc3Vlcz8uaWQ7XHJcbiAgICBpZiAodGhpcy50eXBlID09PSBcImluZnJhXCIgfHwgdGhpcy50eXBlID09PSBcImluc3RhbGxhdGlvblwiKSB7XHJcbiAgICAgIGNvbnNvbGUubG9nKFwiaW5mcmFcIik7XHJcbiAgICAgIHRoaXMuaXNzdWVGaWx0ZXIgPSBkYXRhXHJcbiAgICAgICAgLmZpbmQoKG9iaikgPT4gb2JqLkRlc2NyaXB0aW9uID09PSBcIklzc3VlIFR5cGVcIilcclxuICAgICAgICA/Lklzc3Vlcy5tYXAoKGl0ZW06IGFueSkgPT4gaXRlbT8udGV4dCk7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMudHlwZSA9PT0gXCJkYXRhTWlzbWF0Y2hcIikge1xyXG4gICAgICBjb25zb2xlLmxvZyhcImRhdGFNaXNtYXRjaFwiKTtcclxuICAgICAgdGhpcy5pc3N1ZUZpbHRlciA9IGRhdGFcclxuICAgICAgICAuZmluZCgob2JqKSA9PiBvYmouRGVzY3JpcHRpb24gPT09IFwiSXNzdWUgVHlwZVwiKVxyXG4gICAgICAgID8uSXNzdWVzLm1hcCgoaXRlbTogYW55KSA9PiBpdGVtPy5pZCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLndvcmtIaXN0b3J5KCk7XHJcbiAgfVxyXG5cclxuICBFeHBvcnRIaXN0b3J5YXNYbHN4KCkge1xyXG4gICAgbGV0IGV4cG9ydERhdGEgPSB7XHJcbiAgICAgIHVzZXJJZDogdGhpcy51c2VyPy5faWQsXHJcbiAgICAgIGlzc3VlVHlwZTogdGhpcy50eXBlLFxyXG4gICAgICBvZmZzZXQ6IHRoaXMub2Zmc2V0LFxyXG4gICAgICBsaW1pdDogMTAwMCxcclxuICAgICAgZnJvbURhdGU6IHRoaXMuaGVhZGVyRmlsdGVyPy5kYXRlPy5zdGFydERhdGUsXHJcbiAgICAgIHRvRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LmVuZERhdGUsXHJcbiAgICAgIHNlYXJjaFZhbHVlOiB0aGlzLnNlYXJjaEhpc3RvcnksXHJcbiAgICAgIHNvcnRDb2x1bU5hbWU6IHRoaXMuc29ydENvbHVtTmFtZSxcclxuICAgICAgc29ydEJ5OiB0aGlzLnNvcnRCeSxcclxuICAgICAgZXhwb3J0OiBcInRydWVcIixcclxuICAgICAgZGF0ZUZpbHRlcjogdGhpcy5kYXRlRmlsdGVyLFxyXG4gICAgICBzdG9yZUZpbHRlcjogdGhpcy5zdG9yZUZpbHRlcixcclxuICAgICAgaXNzdWVGaWx0ZXI6IHRoaXMuaXNzdWVGaWx0ZXIsXHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckZpbHRlci5jbGllbnRzLFxyXG4gICAgfTtcclxuICAgIHRoaXMuc2VydmljZVxyXG4gICAgICAud29ya0hpc3RvcnlFeHBvcnQoZXhwb3J0RGF0YSlcclxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKHtcclxuICAgICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMpIHtcclxuICAgICAgICAgICAgdGhpcy5kYXRhU2VydmljZS5zYXZlQXNFeGNlbEZpbGUocmVzLCBcIkhpc3RvcnlcIik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmhpc3RvcnlOb2RhdGEgPSB0cnVlO1xyXG4gICAgICAgICAgdGhpcy5oaXN0b3J5TG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY29tcGxldGUoKSB7fSxcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBzb3J0RGF0YSh2YWx1ZTogYW55KSB7XHJcbiAgICB0aGlzLnNvcnRDb2x1bU5hbWUgPSB2YWx1ZTtcclxuICAgIHRoaXMuc29ydEJ5ICo9IC0xO1xyXG4gICAgdGhpcy53b3JrSGlzdG9yeSgpO1xyXG4gIH1cclxuXHJcbiAgb25QYWdlQ2hhbmdlKHBhZ2VPZmZzZXQ6IG51bWJlcikge1xyXG4gICAgdGhpcy5vZmZzZXQgPSBwYWdlT2Zmc2V0O1xyXG4gICAgdGhpcy53b3JrSGlzdG9yeSgpO1xyXG4gIH1cclxuXHJcbiAgb25QYWdlU2l6ZUNoYW5nZShwYWdlU2l6ZTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLmxpbWl0ID0gcGFnZVNpemU7XHJcbiAgICB0aGlzLm9mZnNldCA9IDE7XHJcbiAgICB0aGlzLndvcmtIaXN0b3J5KCk7XHJcbiAgfVxyXG5cclxuICBzdG9yZUZpbHRlcnMoKSB7XHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgdXNlcklkOiB0aGlzLnVzZXI/Ll9pZCxcclxuICAgICAgb2Zmc2V0OiB0aGlzLm9mZnNldCxcclxuICAgICAgbGltaXQ6IDEwMDAwLFxyXG4gICAgICBmcm9tRGF0ZTogdGhpcy5oZWFkZXJGaWx0ZXI/LmRhdGU/LnN0YXJ0RGF0ZSxcclxuICAgICAgdG9EYXRlOiB0aGlzLmhlYWRlckZpbHRlcj8uZGF0ZT8uZW5kRGF0ZSxcclxuICAgICAgaXNzdWVUeXBlOiB0aGlzLnR5cGUsXHJcbiAgICAgIGNsaWVudElkOiB0aGlzLmhlYWRlckZpbHRlci5jbGllbnRzXHJcbiAgICB9XHJcbiAgICB0aGlzLmZpbHRlclN0b3JlcyA9IFtdO1xyXG4gICAgdGhpcy5zZXJ2aWNlLndvcmtIaXN0b3J5KGRhdGEpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoe1xyXG4gICAgICBuZXh0OiAocmVzOiBhbnkpID0+IHtcclxuICAgICAgICBpZiAocmVzICYmIHJlcz8uY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgIHRoaXMuZmlsdGVyU3RvcmVzID0gcmVzLmRhdGEucmVzdWx0O1xyXG4gICAgICAgICAgY29uc3QgaXNzdWVzID0gdGhpcy5maWx0ZXJTdG9yZXMubWFwKChvYmo6IGFueSkgPT4gKHsgdGV4dDogb2JqLnN0b3JlSWQgfSkpO1xyXG4gICAgICAgICAgY29uc3QgdW5pcXVlSXNzdWVzOmFueVtdID0gW107XHJcbiAgICAgICAgICBjb25zdCBzdG9yZUlkcyA9IG5ldyBTZXQoKTtcclxuICAgICAgICAgIGlzc3Vlcy5mb3JFYWNoKChpc3N1ZTphbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKCFzdG9yZUlkcy5oYXMoaXNzdWUudGV4dCkpIHtcclxuICAgICAgICAgICAgICBzdG9yZUlkcy5hZGQoaXNzdWUudGV4dCk7XHJcbiAgICAgICAgICAgICAgdW5pcXVlSXNzdWVzLnB1c2goaXNzdWUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIGNvbnN0IGZpbHRyZWRPYmplY3QgPSAodGhpcy5kYXRhT2JqZWN0LmZpbmQoKG9iajogYW55KSA9PiBvYmouRGVzY3JpcHRpb24gPT09IFwiU3RvcmUgSURcIikpXHJcbiAgICAgICAgICBmaWx0cmVkT2JqZWN0Lklzc3VlcyA9IHVuaXF1ZUlzc3VlcztcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH0sXHJcbiAgICB9KVxyXG4gIH1cclxuICB2aWV3VXNlcigpe1xyXG5cclxuICB9XHJcblxyXG4gIGRhdGFPYmplY3QxOiBhbnkgPSBbXHJcbiAgICB7IERlc2NyaXB0aW9uOiAnU3RhdHVzJywgSXNzdWVzOiBbeyB0ZXh0OiBcIlN0b3JlIE9wZXJhdGlvbiBJc3N1ZXNcIiwgaWQ6ICdTdG9yZSBPcGVyYXRpb24gSXNzdWVzJyB9LCB7IHRleHQ6IFwiSW50ZXJuZXQgSXNzdWVzXCIsIGlkOiAnSW50ZXJuZXQgSXNzdWVzJyB9LCBcclxuICAgICAgeyB0ZXh0OiBcIkNhbWVyYSBJc3N1ZXNcIiwgaWQ6IFwiQ2FtZXJhIElzc3Vlc1wiIH0seyB0ZXh0OiBcIlN5c3RlbSBJc3N1ZXNcIiwgaWQ6IFwiU3lzdGVtIElzc3Vlc1wiIH0seyB0ZXh0OiBcIkFwcGxpY2F0aW9uIElzc3Vlc1wiLCBpZDogXCJBcHBsaWNhdGlvbiBJc3N1ZXNcIiB9LHt0ZXh0OiBcIk5vdCBJZGVudGlmaWVkXCIsIGlkOiBcIk5vdCBJZGVudGlmaWVkXCJ9XSB9LFxyXG4gIF1cclxuICBhcHBseUZpbHRlcnMoZXZlbnQ6YW55KXtcclxuICAgIGlmIChldmVudD8ubGVuZ3RoKSB7XHJcbiAgICAgIGV2ZW50LmZvckVhY2goKGVsZW1lbnQ6IGFueSkgPT4ge1xyXG4gICAgICAgIGlmIChlbGVtZW50LkRlc2NyaXB0aW9uID09PSBcIlN0YXR1c1wiKSB7XHJcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkSXNzdWUgPSBlbGVtZW50Lklzc3Vlcy5tYXAoKHZhbDogYW55KSA9PiB2YWw/LmlkKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgICAgaWYodGhpcy5zZWxlY3RlZElzc3VlLmxlbmd0aCA9PT0gNilcclxuICAgICAgICB0aGlzLnNlbGVjdGVkSXNzdWUgPVtdO1xyXG4gICAgICB0aGlzLnVzZXJUaWNrZXRMaXN0KCdvcGVuJyk7XHJcbiAgICAgIHRoaXMudXNlclRpY2tldExpc3QoJ2lucHJvZ3Jlc3MnKTtcclxuICAgICAgdGhpcy51c2VyVGlja2V0TGlzdCgnY2xvc2VkJyk7XHJcbiAgICB9XHJcblxyXG59XHJcbiIsIlxyXG48ZGl2IGNsYXNzPVwiY2FyZFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImNhcmQtaGVhZGVyIGJvcmRlci0wIHB0LTNcIj5cclxuICAgICAgICA8aDMgY2xhc3M9XCJjYXJkLXRpdGxlIGFsaWduLWl0ZW1zLXN0YXJ0IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidHlwZSAhPT0gJ21hdCcgJiYgdHlwZSAhPT0gJ2RhdGFNaXNtYXRjaCdcIiBjbGFzcz1cImNhcmQtbGFiZWwgbWItMlwiPnt7dHlwZSB8IHRpdGxlY2FzZX19IFRpY2tldHM8L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidHlwZSA9PT0gJ2RhdGFNaXNtYXRjaCdcIiBjbGFzcz1cImNhcmQtbGFiZWwgbWItMlwiPkRhdGEgTWlzbWF0Y2ggVGlja2V0czwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ0eXBlID09PSAnbWF0J1wiIGNsYXNzPVwiY2FyZC1sYWJlbCBtYi0yXCI+RW1wbG95ZWUgTWF0PC9zcGFuPlxyXG4gICAgICAgICAgICA8IS0tIDxzcGFuIGNsYXNzPVwidGV4dC1zdWIgbWItMlwiPkxhc3QgdXBkYXRlZCAxIGhvdXIgYWdvPC9zcGFuPiAtLT5cclxuICAgICAgICA8L2gzPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJ1c2VyRGF0YSA9PT0nV29ya3NwYWNlJ1wiIGNsYXNzPVwiY2FyZC10b29sYmFyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHBvc2l0aW9uLXJlbGF0aXZlIG15LTFcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInN2Zy1pY29uIHN2Zy1pY29uLTEgcG9zaXRpb24tYWJzb2x1dGUgbXMtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IG9wYWNpdHk9XCIwLjVcIiB4PVwiMTcuMDM2NVwiIHk9XCIxNS4xMjIzXCIgd2lkdGg9XCI4LjE1NTQ2XCIgaGVpZ2h0PVwiMlwiIHJ4PVwiMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwicm90YXRlKDQ1IDE3LjAzNjUgMTUuMTIyMylcIiBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9yZWN0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTExIDE5QzYuNTU1NTYgMTkgMyAxNS40NDQ0IDMgMTFDMyA2LjU1NTU2IDYuNTU1NTYgMyAxMSAzQzE1LjQ0NDQgMyAxOSA2LjU1NTU2IDE5IDExQzE5IDE1LjQ0NDQgMTUuNDQ0NCAxOSAxMSAxOVpNMTEgNUM3LjUzMzMzIDUgNSA3LjUzMzMzIDUgMTFDNSAxNC40NjY3IDcuNTMzMzMgMTcgMTEgMTdDMTQuNDY2NyAxNyAxNyAxNC40NjY3IDE3IDExQzE3IDcuNTMzMzMgMTQuNDY2NyA1IDExIDVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiY3VycmVudENvbG9yXCI+PC9wYXRoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2wgcHMtMTQgbWUtMlwiIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2hcIiBhdXRvY29tcGxldGU9XCJvZmZcIiBbKG5nTW9kZWwpXT1cInNlYXJjaFdvcmtzcGFjZVwiIChjaGFuZ2UpPVwic2VhcmNoVGlja2V0cygpXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPGxpYi1maWx0ZXJzICpuZ0lmPVwidHlwZSAhPT0gJ21hdCcgJiYgdHlwZSAhPT0nZGF0YU1pc21hdGNoJ1wiIFtkYXRhT2JqZWN0XT1cImRhdGFPYmplY3QxXCIgKGFwcGxpZWRGaWx0ZXJzKT1cImFwcGx5RmlsdGVycygkZXZlbnQpXCI+PC9saWItZmlsdGVycz5cclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGRpdiAqbmdJZj1cInR5cGUgIT09ICdtYXQnXCIgY2xhc3M9XCJwb3NpdGlvbi1yZWxhdGl2ZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwib3BlbkRyb3Bkb3duKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tZGVmYXVsdCBteC0yIGJ0bi1vdXRsaW5lIGJ0bi1vdXRsaW5lLWRlZmF1bHQgcm91bmRlZC0zIHRleHQtbm93cmFwIGJvcmRlci12YWxcIj48c3ZnXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aD1cIjIwXCIgaGVpZ2h0PVwiMjBcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTUgMTBIMTVNMi41IDVIMTcuNU03LjUgMTVIMTIuNVwiIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtcy0yXCI+RmlsdGVyPC9zcGFuPiA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImRyb3BEb3duXCIgY2xhc3M9XCJjYXJkIHB5LTEgdy0yMDBweCBwb3NpdGlvbi1hYnNvbHV0ZSB0b3AtNTBweCBlbmQtMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkcm9wZG93bkl0ZW1zXCIgY2xhc3M9XCJsaXN0LXVuc3R5bGVkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIFtuZ0NsYXNzXT1cInRoaXMuc2VsZWN0ZWRJc3N1ZSA9PT0gaXRlbSA/ICdhY3RpdmUnIDogJydcIiBjbGFzcz1cImNhbWVyYSBweC01IGl0ZW1zIGZ3LXNlbWlib2xkIGN1cnNvci1wb2ludGVyIHB5LTJcIiAoY2xpY2spPVwic2VsZWN0SXRlbShpdGVtKVwiPnt7aXRlbX19PC9saT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8ubWFuYWdlX3RpY2tldHNfaXNEb3dubG9hZCAmJiAoIW5vRGF0YS5vcGVuIHx8ICFub0RhdGEuaW5wcm9ncmVzcyB8fCAhbm9EYXRhLmNsb3NlZClcIiAoY2xpY2spPVwiZXhwb3J0RGF0YSgpXCIgY2xhc3M9XCJidG4gYnRuLW91dGxpbmUgcC0zIHRleHQtbm93cmFwIGJvcmRlciBib3JkZXItZ3JheSBtcy0yIG1lLTJcIiB0eXBlPVwiYnV0dG9uXCI+PHNwYW4+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTcuNSAxMi41VjE1LjgzMzNDMTcuNSAxNi4yNzU0IDE3LjMyNDQgMTYuNjk5MyAxNy4wMTE4IDE3LjAxMThDMTYuNjk5MyAxNy4zMjQ0IDE2LjI3NTQgMTcuNSAxNS44MzMzIDE3LjVINC4xNjY2N0MzLjcyNDY0IDE3LjUgMy4zMDA3MiAxNy4zMjQ0IDIuOTg4MTYgMTcuMDExOEMyLjY3NTU5IDE2LjY5OTMgMi41IDE2LjI3NTQgMi41IDE1LjgzMzNWMTIuNU0xNC4xNjY3IDYuNjY2NjdMMTAgMi41TTEwIDIuNUw1LjgzMzMzIDYuNjY2NjdNMTAgMi41VjEyLjVcIiBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPiBFeHBvcnQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/Lm1hbmFnZV90aWNrZXRzX2lzRWRpdFwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwidGFrZVRpY2tldCgpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgbXgtMiByb3VuZGVkLTMgdGV4dC1ub3dyYXBcIj48c3BhbiBjbGFzcz1cIm1zLTIgdGV4dC13aGl0ZVwiPlRha2UgVGlja2V0PC9zcGFuPiA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwidXNlckRhdGEgPT09J0hpc3RvcnknXCIgY2xhc3M9XCJjYXJkLXRvb2xiYXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcG9zaXRpb24tcmVsYXRpdmUgbXktMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3ZnLWljb24gc3ZnLWljb24tMSBwb3NpdGlvbi1hYnNvbHV0ZSBtcy0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgb3BhY2l0eT1cIjAuNVwiIHg9XCIxNy4wMzY1XCIgeT1cIjE1LjEyMjNcIiB3aWR0aD1cIjguMTU1NDZcIiBoZWlnaHQ9XCIyXCIgcng9XCIxXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm09XCJyb3RhdGUoNDUgMTcuMDM2NSAxNS4xMjIzKVwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIj48L3JlY3Q+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTEgMTlDNi41NTU1NiAxOSAzIDE1LjQ0NDQgMyAxMUMzIDYuNTU1NTYgNi41NTU1NiAzIDExIDNDMTUuNDQ0NCAzIDE5IDYuNTU1NTYgMTkgMTFDMTkgMTUuNDQ0NCAxNS40NDQ0IDE5IDExIDE5Wk0xMSA1QzcuNTMzMzMgNSA1IDcuNTMzMzMgNSAxMUM1IDE0LjQ2NjcgNy41MzMzMyAxNyAxMSAxN0MxNC40NjY3IDE3IDE3IDE0LjQ2NjcgMTcgMTFDMTcgNy41MzMzMyAxNC40NjY3IDUgMTEgNVpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCJjdXJyZW50Q29sb3JcIj48L3BhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImZvcm0tY29udHJvbCBwcy0xNCBtZS0yXCIgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIlNlYXJjaFwiIGF1dG9jb21wbGV0ZT1cIm9mZlwiIFsobmdNb2RlbCldPVwic2VhcmNoSGlzdG9yeVwiIChjaGFuZ2UpPVwic2VhcmNoSGlzdG9yeVRhYmxlKClcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgPGxpYi1maWx0ZXJzICpuZ0lmPVwidHlwZSAhPT0gJ21hdCcgJiYgdHlwZSE9PSdhdWRpdCcgJiYgZmlsdGVyU3RvcmVzPy5sZW5ndGggPiAwXCIgW2RhdGFPYmplY3RdPVwiZGF0YU9iamVjdFwiIChhcHBsaWVkRmlsdGVycyk9XCJyZWNlaXZlRGF0YSgkZXZlbnQpXCIgPjwvbGliLWZpbHRlcnM+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDxidXR0b24gKm5nSWY9XCIoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8ubWFuYWdlX3RpY2tldHNfaXNEb3dubG9hZCAmJiAhaGlzdG9yeU5vZGF0YVwiIChjbGljayk9XCJFeHBvcnRIaXN0b3J5YXNYbHN4KClcIiBjbGFzcz1cImJ0biBidG4tb3V0bGluZSBwLTMgYm9yZGVyIGJvcmRlci1ncmF5IG1zLTIgbWUtMiB0ZXh0LW5vd3JhcFwiIHR5cGU9XCJidXR0b25cIj48c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMCAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTE3LjUgMTIuNVYxNS44MzMzQzE3LjUgMTYuMjc1NCAxNy4zMjQ0IDE2LjY5OTMgMTcuMDExOCAxNy4wMTE4QzE2LjY5OTMgMTcuMzI0NCAxNi4yNzU0IDE3LjUgMTUuODMzMyAxNy41SDQuMTY2NjdDMy43MjQ2NCAxNy41IDMuMzAwNzIgMTcuMzI0NCAyLjk4ODE2IDE3LjAxMThDMi42NzU1OSAxNi42OTkzIDIuNSAxNi4yNzU0IDIuNSAxNS44MzMzVjEyLjVNMTQuMTY2NyA2LjY2NjY3TDEwIDIuNU0xMCAyLjVMNS44MzMzMyA2LjY2NjY3TTEwIDIuNVYxMi41XCIgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+IEV4cG9ydFxyXG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiY2FyZC1ib2R5IHB5LTJcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG92ZXJmbG93LWF1dG8gaC01NXB4XCI+XHJcbiAgICAgICAgICAgIDx1bCBjbGFzcz1cIm5hdiBuYXYtc3RyZXRjaCBuYXYtbGluZS10YWJzIG5hdi1saW5lLXRhYnMtMnggYm9yZGVyLXRyYW5zcGFyZW50IGZzLTUgZnctYm9sZGVyIGZsZXgtbm93cmFwXCI+XHJcbiAgICAgICAgICAgICAgICA8bGkgKm5nSWY9XCJ0eXBlICE9PSAnYXVkaXQnXCIgKGNsaWNrKT1cInVzZXJWYWx1ZSgnV29ya3NwYWNlJylcIiAgY2xhc3M9XCJuYXYtaXRlbSBjdXJzb3ItcG9pbnRlclwiPjxhIFtuZ0NsYXNzXT1cInVzZXJEYXRhID09PSdXb3Jrc3BhY2UnID8gJ2FjdGl2ZScgOicnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJuYXYtbGluayB0ZXh0LWFjdGl2ZS1wcmltYXJ5IG1lLTZcIj5Xb3Jrc3BhY2U8L2E+XHJcbiAgICAgICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgICAgICAgPCEtLSAqbmdJZj1cInR5cGUhPT0nZGF0YU1pc21hdGNoJ1wiIC0tPlxyXG4gICAgICAgICAgICAgICAgPGxpIChjbGljayk9XCJ1c2VyVmFsdWUoJ0hpc3RvcnknKVwiIGNsYXNzPVwibmF2LWl0ZW0gY3Vyc29yLXBvaW50ZXJcIj48YSBbbmdDbGFzc109XCJ1c2VyRGF0YSA9PT0nSGlzdG9yeScgPyAnYWN0aXZlJyA6JydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm5hdi1saW5rIHRleHQtYWN0aXZlLXByaW1hcnkgbWUtNlwiPkhpc3Rvcnk8L2E+PC9saT5cclxuICAgICAgICAgICAgPC91bD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxkaXYgKm5nSWY9XCJ1c2VyRGF0YSA9PT0nV29ya3NwYWNlJ1wiIGNsYXNzPVwiY2FyZC1ib2R5XCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMCBoLTEwMCByb3VuZGVkLTIgb3ZlcmZsb3ctaGlkZGVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhZGdlLWxpZ2h0LWRlZmF1bHQgcHgtMyBweS00XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+T3Blbjwvc3Bhbj48c3BhbiAqbmdJZj1cInN0YXR1c09wZW4/Lmxlbmd0aCA+IDAgJiYgIWxvYWRpbmcub3BlbiAmJiAhbm9EYXRhLm9wZW5cIiBjbGFzcz1cInJvdW5kZWQtNSBtcy0zIHB4LTEgYm9yZGVyIGJvcmRlci1ncmF5IGJnLWJhZGdlXCI+e3tzdGF0dXNPcGVuPy5sZW5ndGh9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93Ym9keSBoLTEwMCBweC00IHB5LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFsb2FkaW5nLm9wZW4gJiYgIW5vRGF0YS5vcGVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBvcGVuIG9mIHN0YXR1c09wZW47IGxldCBpbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cIm9wZW4uaXNPcGVuID8gJ2FjdGl2ZSc6JydcIiAgY2xhc3M9XCJpc3N1ZWNhcmQgY3Vyc29yLXBvaW50ZXIgdy0xMDAgbWItNVwiIChjbGljayk9XCJyb3V0ZXRvVGlja2V0KG9wZW4pXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJvcGVuLmlzT3BlblwiIGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZ3LXNlbWlib2xkXCI+e3tvcGVuPy5zdG9yZUlkID8gb3Blbj8uc3RvcmVJZCA6Jy0tJ319PC9sYWJlbD48YnI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZnctc2VtaWJvbGQgbS0yXCI+e3tvcGVuPy5zdG9yZU5hbWUgPyBvcGVuPy5zdG9yZU5hbWUgOictLSd9fTwvbGFiZWw+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG10LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LWRlZmF1bHQgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cIm1lLTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zNzMyXzYwMjc3KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNOCAxVjNNNCAxVjNNMS41IDVIMTAuNU0yLjUgMkg5LjVDMTAuMDUyMyAyIDEwLjUgMi40NDc3MiAxMC41IDNWMTBDMTAuNSAxMC41NTIzIDEwLjA1MjMgMTEgOS41IDExSDIuNUMxLjk0NzcyIDExIDEuNSAxMC41NTIzIDEuNSAxMFYzQzEuNSAyLjQ0NzcyIDEuOTQ3NzIgMiAyLjUgMlpcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4xXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zNzMyXzYwMjc3XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPnt7b3Blbj8uRGF0ZSA/IG9wZW4/LkRhdGUgOiAnLS0nfX1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwib3Blbj8uaW5mcmFJc3N1ZVwiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtd2FybmluZ1wiPnt7b3Blbj8uaW5mcmFJc3N1ZSA/IG9wZW4/LmluZnJhSXNzdWUgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ0eXBlID09PSdpbnN0YWxsYXRpb24nXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC1wcmltYXJ5XCI+e3tvcGVuPy5pbnN0YWxsYXRpb25TdGF0dXMgPyBvcGVuPy5pbnN0YWxsYXRpb25TdGF0dXMgOictLSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJ0eXBlID09PSdkYXRhTWlzbWF0Y2gnXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC13YXJuaW5nXCI+e3tvcGVuPy5pc3N1ZVR5cGUgPT09ICdoaWdoY291bnQnID8gJ0hpZ2ggQ291bnQnIDogKG9wZW4/Lmlzc3VlVHlwZSA9PT0gJ2xvd2NvdW50JyA/ICdMb3cgQ291bnQnIDogJycpfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib3Blbj8ubm90aWZpY2F0aW9uXCIgY2xhc3M9XCJwcm9maWxlIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50cmUganVzdGlmeS1jb250ZW50LWNlbnRyZSBtZS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL0JlbGxub3RpZmljYXRpb24ucG5nXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIChjbGljayk9XCJzZWxlY3RWaWV3KCRldmVudCxpbmRleCwnb3BlbicpXCI+IDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjE2NiAyLjVIMTguMTY2TTE4LjE2NiAyLjVWNy41TTE4LjE2NiAyLjVMMTIuMzMyNyA4LjMzMzMzTTguMTY2MDIgMTcuNUgzLjE2NjAyTTMuMTY2MDIgMTcuNVYxMi41TTMuMTY2MDIgMTcuNUw4Ljk5OTM1IDExLjY2NjdcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiB0ZXh0LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj4gICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIiA+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj48c3ZnIGNsYXNzPVwibWUtMlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMC43OTY2IDEuNDI3NTJDMTAuNjU0MSAxLjI5NjgxIDEwLjQ2NjcgMS4yMjYxNyAxMC4yNzMzIDEuMjMwMzdDMTAuMDggMS4yMzQ1NiA5Ljg5NTggMS4zMTMyNSA5Ljc1OTExIDEuNDUwMDJMMS40ODkxMSA5LjcyMDAyQzEuNDE5MzggOS43ODk2OCAxLjM2NDA2IDkuODcyMzkgMS4zMjYzMiA5Ljk2MzQ0QzEuMjg4NTcgMTAuMDU0NSAxLjI2OTE1IDEwLjE1MjEgMS4yNjkxNSAxMC4yNTA2QzEuMjY5MTUgMTAuMzQ5MiAxLjI4ODU3IDEwLjQ0NjggMS4zMjYzMiAxMC41Mzc5QzEuMzY0MDYgMTAuNjI4OSAxLjQxOTM4IDEwLjcxMTYgMS40ODkxMSAxMC43ODEzTDIuNjQ2NjEgMTEuOTM4OEMyLjY1NjMyIDExLjk0MTggMi42NjY0NyAxMS45NDMgMi42NzY2MSAxMS45NDI1QzIuNzE0MTEgMTEuOTQyNSAyLjc2NDExIDExLjkyODggMi44MTE2MSAxMS44OTc1QzMuMjY4NDUgMTEuNTkyNyAzLjgxNjggMTEuNDU1NyA0LjM2MzMxIDExLjUwOTdDNC45MDk4MyAxMS41NjM3IDUuNDIwNzMgMTEuODA1NSA1LjgwOTA1IDEyLjE5MzhDNi4xOTczOCAxMi41ODIyIDYuNDM5MTMgMTMuMDkzMSA2LjQ5MzE2IDEzLjYzOTZDNi41NDcxOCAxNC4xODYxIDYuNDEwMTQgMTQuNzM0NCA2LjEwNTM2IDE1LjE5MTNDNi4wNzc5MiAxNS4yMzExIDYuMDYyMzEgMTUuMjc3OSA2LjA2MDM2IDE1LjMyNjNDNi4wNjAzNiAxNS4zNDI1IDYuMDYyODYgMTUuMzUxMyA2LjA2NDExIDE1LjM1NUw3LjE5NDExIDE2LjQ4NjNDNy4yNjUxMiAxNi41NTc0IDcuMzQ5NzEgMTYuNjEzNiA3LjQ0Mjg1IDE2LjY1MTRDNy41MzU5OSAxNi42ODkyIDcuNjM1NzkgMTYuNzA3OSA3LjczNjMgMTYuNzA2NEM3LjgzNjgyIDE2LjcwNDkgNy45MzYgMTYuNjgzMiA4LjAyNzk2IDE2LjY0MjZDOC4xMTk5MiAxNi42MDIgOC4yMDI3OCAxNi41NDMzIDguMjcxNjEgMTYuNDdMMTYuNTIwNCA3LjcwNTAyQzE2LjU4ODMgNy42MzI2NyAxNi42NDEyIDcuNTQ3NTUgMTYuNjc2IDcuNDU0NkMxNi43MTA4IDcuMzYxNjUgMTYuNzI2OCA3LjI2MjcyIDE2LjcyMzEgNy4xNjM1NEMxNi43MTkzIDcuMDY0MzYgMTYuNjk2IDYuOTY2OTEgMTYuNjU0MyA2Ljg3NjgzQzE2LjYxMjYgNi43ODY3NSAxNi41NTM1IDYuNzA1ODMgMTYuNDgwNCA2LjYzODc3TDE1LjM3MjkgNS42MjI1MkgxNS4zNjkxQzE1LjM1MTQgNS42MTkwMiAxNS4zMzMxIDUuNjE5MDIgMTUuMzE1NCA1LjYyMjUyQzE1LjI0NDggNS42MzcyMiAxNS4xODA2IDUuNjczNDggMTUuMTMxNiA1LjcyNjI3QzE0LjkyMjcgNS45NjMwNSAxNC42Njg3IDYuMTU1NzkgMTQuMzg0NSA2LjI5MzIzQzE0LjEwMDIgNi40MzA2NyAxMy43OTE0IDYuNTEwMDUgMTMuNDc2MSA2LjUyNjczQzEzLjE2MDggNi41NDM0MSAxMi44NDUzIDYuNDk3MDQgMTIuNTQ4MSA2LjM5MDM1QzEyLjI1MSA2LjI4MzY2IDExLjk3OCA2LjExODc5IDExLjc0NTMgNS45MDUzN0MxMS41MTI2IDUuNjkxOTUgMTEuMzI0OCA1LjQzNDI4IDExLjE5MjkgNS4xNDc0MkMxMS4wNjEgNC44NjA1NSAxMC45ODc2IDQuNTUwMjcgMTAuOTc3IDQuMjM0N0MxMC45NjY0IDMuOTE5MTMgMTEuMDE4OCAzLjYwNDYyIDExLjEzMTIgMy4zMDk1NkMxMS4yNDM2IDMuMDE0NDkgMTEuNDEzNyAyLjc0NDgxIDExLjYzMTYgMi41MTYyN0MxMS42Nzk3IDIuNDYyNjQgMTEuNzA5OCAyLjM5NTM1IDExLjcxNzkgMi4zMjM3N0MxMS43MjAxIDIuMzA0ODggMTEuNzE4NCAyLjI4NTcyIDExLjcxMjkgMi4yNjc1MkwxMC43OTY2IDEuNDI3NTJaTTkuMDUyODYgMC43NDI1MjJDOS4zNzE3NiAwLjQyMzYzOCA5LjgwMTQ1IDAuMjQwMTc0IDEwLjI1MjMgMC4yMzAzOTNDMTAuNzAzMiAwLjIyMDYxMSAxMS4xNDA0IDAuMzg1MjY4IDExLjQ3MjkgMC42OTAwMjJMMTIuMzg5MSAxLjUzMTI3QzEyLjY2MjkgMS43ODEyNyAxMi43MzkxIDIuMTIyNTIgMTIuNzE0MSAyLjQxMzc3QzEyLjY4NzkgMi43MDEyNyAxMi41NjE2IDIuOTgyNTIgMTIuMzY2NiAzLjE5Mzc3QzEyLjI0NDYgMy4zMjY5IDEyLjE0OTkgMy40ODI3NiAxMi4wODgxIDMuNjUyNDZDMTIuMDI2MyAzLjgyMjE2IDExLjk5ODUgNC4wMDIzNyAxMi4wMDY0IDQuMTgyODFDMTIuMDE0MiA0LjM2MzI1IDEyLjA1NzUgNC41NDAzNyAxMi4xMzM4IDQuNzA0MDdDMTIuMjEwMSA0Ljg2Nzc4IDEyLjMxNzkgNS4wMTQ4NSAxMi40NTEgNS4xMzY5QzEyLjU4NDEgNS4yNTg5NCAxMi43NCA1LjM1MzU4IDEyLjkwOTcgNS40MTUzOUMxMy4wNzk0IDUuNDc3MiAxMy4yNTk2IDUuNTA0OTggMTMuNDQgNS40OTcxNEMxMy42MjA1IDUuNDg5MzEgMTMuNzk3NiA1LjQ0NjAxIDEzLjk2MTMgNS4zNjk3MkMxNC4xMjUgNS4yOTM0NCAxNC4yNzIxIDUuMTg1NjUgMTQuMzk0MSA1LjA1MjUyQzE0LjU4NzkgNC44NDAwMiAxNC44NTY2IDQuNjkwMDIgMTUuMTQwNCA0LjYzODc3QzE1LjMwMDQgNC42MDY2NSAxNS40NjU2IDQuNjEyMTggMTUuNjIzMSA0LjY1NDkyQzE1Ljc4MDYgNC42OTc2NSAxNS45MjYgNC43NzY0MyAxNi4wNDc5IDQuODg1MDJMMTcuMTU2NiA1LjkwMTI3QzE3LjMyNzMgNi4wNTc5IDE3LjQ2NTIgNi4yNDY4NyAxNy41NjIzIDYuNDU3MkMxNy42NTk0IDYuNjY3NTQgMTcuNzEzOCA2Ljg5NTA3IDE3LjcyMjMgNy4xMjY1OEMxNy43MzA4IDcuMzU4MDkgMTcuNjkzMiA3LjU4ODk5IDE3LjYxMTggNy44MDU4N0MxNy41MzAzIDguMDIyNzYgMTcuNDA2NiA4LjIyMTMxIDE3LjI0NzkgOC4zOTAwMkw5LjAwMDM2IDE3LjE1NUM4LjgzOTc1IDE3LjMyNTcgOC42NDY0OSAxNy40NjI0IDguNDMyMDYgMTcuNTU2OUM4LjIxNzYzIDE3LjY1MTUgNy45ODYzOCAxNy43MDIgNy43NTIwNSAxNy43MDU1QzcuNTE3NzEgMTcuNzA5IDcuMjg1MDYgMTcuNjY1NCA3LjA2NzkgMTcuNTc3M0M2Ljg1MDc0IDE3LjQ4OTIgNi42NTM0OSAxNy4zNTgzIDYuNDg3ODYgMTcuMTkyNUw1LjM1Nzg2IDE2LjA2MjVDNC45MjQxMSAxNS42Mjg4IDUuMDI5MTEgMTUuMDAzOCA1LjI3NDExIDE0LjYzNzVDNS40NDk4OCAxNC4zNzMxIDUuNTI4NzEgMTQuMDU1OSA1LjQ5NzIgMTMuNzRDNS40NjU2OSAxMy40MjQgNS4zMjU3OSAxMy4xMjg3IDUuMTAxMjUgMTIuOTA0MUM0Ljg3NjcyIDEyLjY3OTYgNC41ODEzOSAxMi41Mzk3IDQuMjY1NDIgMTIuNTA4MkMzLjk0OTQ1IDEyLjQ3NjcgMy42MzIzMSAxMi41NTU1IDMuMzY3ODYgMTIuNzMxM0MyLjk5OTExIDEyLjk3NSAyLjM3NTM2IDEzLjA4IDEuOTQxNjEgMTIuNjQ1TDAuNzg0MTExIDExLjQ4NzVDMC42MjE1ODkgMTEuMzI1IDAuNDkyNjY5IDExLjEzMjEgMC40MDQ3MTIgMTAuOTE5OEMwLjMxNjc1NSAxMC43MDc0IDAuMjcxNDg0IDEwLjQ3OTggMC4yNzE0ODQgMTAuMjVDMC4yNzE0ODQgMTAuMDIwMiAwLjMxNjc1NSA5Ljc5MjYyIDAuNDA0NzEyIDkuNTgwMjlDMC40OTI2NjkgOS4zNjc5NSAwLjYyMTU4OSA5LjE3NTAzIDAuNzg0MTExIDkuMDEyNTJMOS4wNTI4NiAwLjc0MjUyMlpcIiBmaWxsPVwiIzY2NzA4NVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMC43OTY2IDEuNDI3NTJDMTAuNjU0MSAxLjI5NjgxIDEwLjQ2NjcgMS4yMjYxNyAxMC4yNzMzIDEuMjMwMzdDMTAuMDggMS4yMzQ1NiA5Ljg5NTggMS4zMTMyNSA5Ljc1OTExIDEuNDUwMDJMMS40ODkxMSA5LjcyMDAyQzEuNDE5MzggOS43ODk2OCAxLjM2NDA2IDkuODcyMzkgMS4zMjYzMiA5Ljk2MzQ0QzEuMjg4NTcgMTAuMDU0NSAxLjI2OTE1IDEwLjE1MjEgMS4yNjkxNSAxMC4yNTA2QzEuMjY5MTUgMTAuMzQ5MiAxLjI4ODU3IDEwLjQ0NjggMS4zMjYzMiAxMC41Mzc5QzEuMzY0MDYgMTAuNjI4OSAxLjQxOTM4IDEwLjcxMTYgMS40ODkxMSAxMC43ODEzTDIuNjQ2NjEgMTEuOTM4OEMyLjY1NjMyIDExLjk0MTggMi42NjY0NyAxMS45NDMgMi42NzY2MSAxMS45NDI1QzIuNzE0MTEgMTEuOTQyNSAyLjc2NDExIDExLjkyODggMi44MTE2MSAxMS44OTc1QzMuMjY4NDUgMTEuNTkyNyAzLjgxNjggMTEuNDU1NyA0LjM2MzMxIDExLjUwOTdDNC45MDk4MyAxMS41NjM3IDUuNDIwNzMgMTEuODA1NSA1LjgwOTA1IDEyLjE5MzhDNi4xOTczOCAxMi41ODIyIDYuNDM5MTMgMTMuMDkzMSA2LjQ5MzE2IDEzLjYzOTZDNi41NDcxOCAxNC4xODYxIDYuNDEwMTQgMTQuNzM0NCA2LjEwNTM2IDE1LjE5MTNDNi4wNzc5MiAxNS4yMzExIDYuMDYyMzEgMTUuMjc3OSA2LjA2MDM2IDE1LjMyNjNDNi4wNjAzNiAxNS4zNDI1IDYuMDYyODYgMTUuMzUxMyA2LjA2NDExIDE1LjM1NUw3LjE5NDExIDE2LjQ4NjNDNy4yNjUxMiAxNi41NTc0IDcuMzQ5NzEgMTYuNjEzNiA3LjQ0Mjg1IDE2LjY1MTRDNy41MzU5OSAxNi42ODkyIDcuNjM1NzkgMTYuNzA3OSA3LjczNjMgMTYuNzA2NEM3LjgzNjgyIDE2LjcwNDkgNy45MzYgMTYuNjgzMiA4LjAyNzk2IDE2LjY0MjZDOC4xMTk5MiAxNi42MDIgOC4yMDI3OCAxNi41NDMzIDguMjcxNjEgMTYuNDdMMTYuNTIwNCA3LjcwNTAyQzE2LjU4ODMgNy42MzI2NyAxNi42NDEyIDcuNTQ3NTUgMTYuNjc2IDcuNDU0NkMxNi43MTA4IDcuMzYxNjUgMTYuNzI2OCA3LjI2MjcyIDE2LjcyMzEgNy4xNjM1NEMxNi43MTkzIDcuMDY0MzYgMTYuNjk2IDYuOTY2OTEgMTYuNjU0MyA2Ljg3NjgzQzE2LjYxMjYgNi43ODY3NSAxNi41NTM1IDYuNzA1ODMgMTYuNDgwNCA2LjYzODc3TDE1LjM3MjkgNS42MjI1MkgxNS4zNjkxQzE1LjM1MTQgNS42MTkwMiAxNS4zMzMxIDUuNjE5MDIgMTUuMzE1NCA1LjYyMjUyQzE1LjI0NDggNS42MzcyMiAxNS4xODA2IDUuNjczNDggMTUuMTMxNiA1LjcyNjI3QzE0LjkyMjcgNS45NjMwNSAxNC42Njg3IDYuMTU1NzkgMTQuMzg0NSA2LjI5MzIzQzE0LjEwMDIgNi40MzA2NyAxMy43OTE0IDYuNTEwMDUgMTMuNDc2MSA2LjUyNjczQzEzLjE2MDggNi41NDM0MSAxMi44NDUzIDYuNDk3MDQgMTIuNTQ4MSA2LjM5MDM1QzEyLjI1MSA2LjI4MzY2IDExLjk3OCA2LjExODc5IDExLjc0NTMgNS45MDUzN0MxMS41MTI2IDUuNjkxOTUgMTEuMzI0OCA1LjQzNDI4IDExLjE5MjkgNS4xNDc0MkMxMS4wNjEgNC44NjA1NSAxMC45ODc2IDQuNTUwMjcgMTAuOTc3IDQuMjM0N0MxMC45NjY0IDMuOTE5MTMgMTEuMDE4OCAzLjYwNDYyIDExLjEzMTIgMy4zMDk1NkMxMS4yNDM2IDMuMDE0NDkgMTEuNDEzNyAyLjc0NDgxIDExLjYzMTYgMi41MTYyN0MxMS42Nzk3IDIuNDYyNjQgMTEuNzA5OCAyLjM5NTM1IDExLjcxNzkgMi4zMjM3N0MxMS43MjAxIDIuMzA0ODggMTEuNzE4NCAyLjI4NTcyIDExLjcxMjkgMi4yNjc1MkwxMC43OTY2IDEuNDI3NTJaTTkuMDUyODYgMC43NDI1MjJDOS4zNzE3NiAwLjQyMzYzOCA5LjgwMTQ1IDAuMjQwMTc0IDEwLjI1MjMgMC4yMzAzOTNDMTAuNzAzMiAwLjIyMDYxMSAxMS4xNDA0IDAuMzg1MjY4IDExLjQ3MjkgMC42OTAwMjJMMTIuMzg5MSAxLjUzMTI3QzEyLjY2MjkgMS43ODEyNyAxMi43MzkxIDIuMTIyNTIgMTIuNzE0MSAyLjQxMzc3QzEyLjY4NzkgMi43MDEyNyAxMi41NjE2IDIuOTgyNTIgMTIuMzY2NiAzLjE5Mzc3QzEyLjI0NDYgMy4zMjY5IDEyLjE0OTkgMy40ODI3NiAxMi4wODgxIDMuNjUyNDZDMTIuMDI2MyAzLjgyMjE2IDExLjk5ODUgNC4wMDIzNyAxMi4wMDY0IDQuMTgyODFDMTIuMDE0MiA0LjM2MzI1IDEyLjA1NzUgNC41NDAzNyAxMi4xMzM4IDQuNzA0MDdDMTIuMjEwMSA0Ljg2Nzc4IDEyLjMxNzkgNS4wMTQ4NSAxMi40NTEgNS4xMzY5QzEyLjU4NDEgNS4yNTg5NCAxMi43NCA1LjM1MzU4IDEyLjkwOTcgNS40MTUzOUMxMy4wNzk0IDUuNDc3MiAxMy4yNTk2IDUuNTA0OTggMTMuNDQgNS40OTcxNEMxMy42MjA1IDUuNDg5MzEgMTMuNzk3NiA1LjQ0NjAxIDEzLjk2MTMgNS4zNjk3MkMxNC4xMjUgNS4yOTM0NCAxNC4yNzIxIDUuMTg1NjUgMTQuMzk0MSA1LjA1MjUyQzE0LjU4NzkgNC44NDAwMiAxNC44NTY2IDQuNjkwMDIgMTUuMTQwNCA0LjYzODc3QzE1LjMwMDQgNC42MDY2NSAxNS40NjU2IDQuNjEyMTggMTUuNjIzMSA0LjY1NDkyQzE1Ljc4MDYgNC42OTc2NSAxNS45MjYgNC43NzY0MyAxNi4wNDc5IDQuODg1MDJMMTcuMTU2NiA1LjkwMTI3QzE3LjMyNzMgNi4wNTc5IDE3LjQ2NTIgNi4yNDY4NyAxNy41NjIzIDYuNDU3MkMxNy42NTk0IDYuNjY3NTQgMTcuNzEzOCA2Ljg5NTA3IDE3LjcyMjMgNy4xMjY1OEMxNy43MzA4IDcuMzU4MDkgMTcuNjkzMiA3LjU4ODk5IDE3LjYxMTggNy44MDU4N0MxNy41MzAzIDguMDIyNzYgMTcuNDA2NiA4LjIyMTMxIDE3LjI0NzkgOC4zOTAwMkw5LjAwMDM2IDE3LjE1NUM4LjgzOTc1IDE3LjMyNTcgOC42NDY0OSAxNy40NjI0IDguNDMyMDYgMTcuNTU2OUM4LjIxNzYzIDE3LjY1MTUgNy45ODYzOCAxNy43MDIgNy43NTIwNSAxNy43MDU1QzcuNTE3NzEgMTcuNzA5IDcuMjg1MDYgMTcuNjY1NCA3LjA2NzkgMTcuNTc3M0M2Ljg1MDc0IDE3LjQ4OTIgNi42NTM0OSAxNy4zNTgzIDYuNDg3ODYgMTcuMTkyNUw1LjM1Nzg2IDE2LjA2MjVDNC45MjQxMSAxNS42Mjg4IDUuMDI5MTEgMTUuMDAzOCA1LjI3NDExIDE0LjYzNzVDNS40NDk4OCAxNC4zNzMxIDUuNTI4NzEgMTQuMDU1OSA1LjQ5NzIgMTMuNzRDNS40NjU2OSAxMy40MjQgNS4zMjU3OSAxMy4xMjg3IDUuMTAxMjUgMTIuOTA0MUM0Ljg3NjcyIDEyLjY3OTYgNC41ODEzOSAxMi41Mzk3IDQuMjY1NDIgMTIuNTA4MkMzLjk0OTQ1IDEyLjQ3NjcgMy42MzIzMSAxMi41NTU1IDMuMzY3ODYgMTIuNzMxM0MyLjk5OTExIDEyLjk3NSAyLjM3NTM2IDEzLjA4IDEuOTQxNjEgMTIuNjQ1TDAuNzg0MTExIDExLjQ4NzVDMC42MjE1ODkgMTEuMzI1IDAuNDkyNjY5IDExLjEzMjEgMC40MDQ3MTIgMTAuOTE5OEMwLjMxNjc1NSAxMC43MDc0IDAuMjcxNDg0IDEwLjQ3OTggMC4yNzE0ODQgMTAuMjVDMC4yNzE0ODQgMTAuMDIwMiAwLjMxNjc1NSA5Ljc5MjYyIDAuNDA0NzEyIDkuNTgwMjlDMC40OTI2NjkgOS4zNjc5NSAwLjYyMTU4OSA5LjE3NTAzIDAuNzg0MTExIDkuMDEyNTJMOS4wNTI4NiAwLjc0MjUyMlpcIiBzdHJva2U9XCIjNjY3MDg1XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4ge3tvcGVuPy50aWNrZXRJZCA/IG9wZW4/LnRpY2tldElkIDogJy0tJ319IDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50cmUganVzdGlmeS1jb250ZW50LWNlbnRyZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwib3Blbj8udGlja2V0VHlwZSA9PT0gJ3JlZnJlc2h0aWNrZXQnXCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxN1wiIGhlaWdodD1cIjE0XCIgdmlld0JveD1cIjAgMCAxNyAxNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk01Ljk0NjAyIDQuOTg4ODFMMi42NjYwMiA2LjMzODgxTDIuMDA2MDIgNi4wNzg4MUwwLjY2NjAxNiAyLjgzODgxTDEuNTg2MDIgMi40NTg4MUwyLjM5NjAyIDQuNDA4ODFDMi45Mzk3NyAzLjA0ODAxIDMuOTI4NzIgMS45MTE2OSA1LjIwMTQ1IDEuMTg1MzJDNi40NzQxOSAwLjQ1ODk1MSA3Ljk1NTU0IDAuMTg1NDI2IDkuNDAzNzUgMC40MDkzODdDMTAuODUyIDAuNjMzMzQ5IDEyLjE4MTUgMS4zNDE1NyAxMy4xNzU0IDIuNDE4NDZDMTQuMTY5MiAzLjQ5NTM1IDE0Ljc2ODcgNC44NzczMiAxNC44NzYgNi4zMzg4MUgxMy44NzZDMTMuNzYxNiA1LjA5MDA4IDEzLjIyMjQgMy45MTgzNiAxMi4zNDg0IDMuMDE5MTlDMTEuNDc0MyAyLjEyMDAzIDEwLjMxODQgMS41NDc4MSA5LjA3MzQgMS4zOTgwNEM3LjgyODQyIDEuMjQ4MjYgNi41Njk3MyAxLjUzIDUuNTA3MzkgMi4xOTYyMkM0LjQ0NTA1IDIuODYyNDQgMy42NDMzMiAzLjg3Mjg0IDMuMjM2MDIgNS4wNTg4MUw1LjU1NjAyIDQuMDU4ODFMNS45NDYwMiA0Ljk4ODgxWk0xNC44MDYgNy42Njg4MUwxNi4xNDYgMTAuODk4OEwxNS4yMjYgMTEuMzM4OEwxNC40MDYgOS4zMzg4MUMxMy44NTggMTAuNzA0OSAxMi44NjE4IDExLjg0NDIgMTEuNTgxIDEyLjU2OTZDMTAuMzAwMSAxMy4yOTUgOC44MTA3NyAxMy41NjM0IDcuMzU3MjggMTMuMzMwOUM1LjkwMzggMTMuMDk4MyA0LjU3MjU1IDEyLjM3ODYgMy41ODIgMTEuMjg5OEMyLjU5MTQ1IDEwLjIwMDkgMi4wMDA0NiA4LjgwNzc1IDEuOTA2MDIgNy4zMzg4MUgyLjkwNjAyVjYuODM4ODFDMi45MDg4MiA4LjEyNjI3IDMuMzY0MDIgOS4zNzE4IDQuMTkyMDMgMTAuMzU3N0M1LjAyMDA1IDExLjM0MzYgNi4xNjgyMSAxMi4wMDcxIDcuNDM1ODQgMTIuMjMyMkM4LjcwMzQ2IDEyLjQ1NzQgMTAuMDA5OSAxMi4yMjk5IDExLjEyNjggMTEuNTg5NUMxMi4yNDM3IDEwLjk0OTEgMTMuMSA5LjkzNjU1IDEzLjU0NiA4LjcyODgxTDExLjI5NiA5LjY1ODgxTDEwLjkwNiA4LjczODgxTDE0LjE1NiA3LjM4ODgxTDE0LjgwNiA3LjY2ODgxWlwiIGZpbGw9XCIjOThBMkIzXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTguNDA2MjUgNy41NDAwNEM4Ljk1ODUzIDcuNTQwMDQgOS40MDYyNSA3LjA5MjMyIDkuNDA2MjUgNi41NDAwNEM5LjQwNjI1IDUuOTg3NzUgOC45NTg1MyA1LjU0MDA0IDguNDA2MjUgNS41NDAwNEM3Ljg1Mzk3IDUuNTQwMDQgNy40MDYyNSA1Ljk4Nzc1IDcuNDA2MjUgNi41NDAwNEM3LjQwNjI1IDcuMDkyMzIgNy44NTM5NyA3LjU0MDA0IDguNDA2MjUgNy41NDAwNFpcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwib3Blbj8uaXNzdWVTdGF0dXMgIT09ICdub3RpZGVudGlmaWVkJ1wiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzM4MjdfMTIwNjEpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03LjIwMDY1IDEwLjMzMzNIOS4xNTYyMVYxMi4zMzMzSDcuMjAwNjVWMTAuMzMzM1pNOS4xNTYyMSA0LjMzMzI3SDcuMjAwNjVWOS4zMzMyNkg5LjE1NjIxVjQuMzMzMjdaTTEwLjYyMjkgNS44MzMyN0w5LjY0NTEgNi44MzMyN0wxMi4wODk1IDkuMzMzMjZMMTYuMDAwNyA0LjgzMzI3TDE1LjAyMjkgMy44MzMyN0wxMi4wODk1IDcuMzMzMjZMMTAuNjIyOSA1LjgzMzI3Wk04LjE3ODQzIDE0LjAzMzNDNi43MDEwOCAxNC4wMzA2IDUuMjg0OTkgMTMuNDI5MiA0LjI0MDM0IDEyLjM2MDhDMy4xOTU3IDExLjI5MjUgMi42MDc2OCA5Ljg0NDE4IDIuNjA1MSA4LjMzMzI2QzIuNjA1MSA1LjE5MzI3IDUuMTA4MjEgMi42MzMyNyA4LjE3ODQzIDIuNjMzMjdDOS45Njc3NiAyLjYzMzI3IDExLjU1MTggMy41MTMyNyAxMi41Nzg0IDQuODMzMjdMMTMuNDc4IDMuOTEzMjdDMTIuODM5NSAzLjEwNTM0IDEyLjAzMTkgMi40NTQxNSAxMS4xMTQ3IDIuMDA3NjVDMTAuMTk3NiAxLjU2MTE1IDkuMTk0MTkgMS4zMzA3IDguMTc4NDMgMS4zMzMyN0M0LjQwNDIxIDEuMzMzMjcgMS4zMzM5OCA0LjQ3MzI3IDEuMzMzOTggOC4zMzMyNkMxLjMzMzk4IDEyLjE5MzMgNC40MDQyMSAxNS4zMzMzIDguMTc4NDMgMTUuMzMzM0MxMS45NTI3IDE1LjMzMzMgMTUuMDIyOSAxMi4xOTMzIDE1LjAyMjkgOC4zMzMyNkwxMy41MzY3IDkuODUzMjZDMTIuODkxMyAxMi4yNjMzIDEwLjc0MDIgMTQuMDQzMyA4LjE3ODQzIDE0LjA0MzNWMTQuMDMzM1pcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzgyN18xMjA2MVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIW9wZW4uaXNPcGVuXCIgKGNsaWNrKT1cInNlbGVjdFZpZXcoJGV2ZW50LGluZGV4LCdvcGVuJylcIiBjbGFzcz1cIm1zLTNcIj4gPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMVwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMSAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMuMTY2IDIuNUgxOC4xNjZNMTguMTY2IDIuNVY3LjVNMTguMTY2IDIuNUwxMi4zMzI3IDguMzMzMzNNOC4xNjYwMiAxNy41SDMuMTY2MDJNMy4xNjYwMiAxNy41VjEyLjVNMy4xNjYwMiAxNy41TDguOTk5MzUgMTEuNjY2N1wiIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjY2NjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFvcGVuLmlzT3BlbiAmJiBvcGVuPy5ub3RpZmljYXRpb25cIiBjbGFzcz1cInByb2ZpbGUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRyZSBqdXN0aWZ5LWNvbnRlbnQtY2VudHJlIG1zLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cIlwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy9CZWxsbm90aWZpY2F0aW9uLnBuZ1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxpbWcgKm5nSWY9XCJjYXJkVmlld1wiIGNsYXNzPVwicHJvZmlsZSBtcy0zXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL2dyb3Btb2RhbC5wbmdcIiBhbHQ9XCJcIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzdGF0dXNPcGVuPy5sZW5ndGggPT09IDAgfHwgIW5vRGF0YSAmJiAhbG9hZGluZ1wiIGNsYXNzPVwidy0xMDAgbXQtMTAgbWItMTAgbWgtNjB2aCBkLWdyaWQgdGV4dC1jZW50ZXJcIj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cIm14LWF1dG8gbWItMlwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy90YWtldGlja2V0LnN2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGFrZXRpY2tldCBtdC0yIGZ3LWJvbGRcIj5ObyBPcGVuIFRpY2tldHMgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJ3LTEwMCBidG4gYnRuLXByaW1hcnkgbXQtNVwiIChjbGljayk9XCJ0YWtlVGlja2V0KClcIj5UYWtlIFRpY2tldDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxvYWRpbmc/Lm9wZW5cIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbG9hZGVyICBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJub0RhdGE/Lm9wZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBtaC02MHZoIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cIm14LWF1dG8gbWItMlwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy90YWtldGlja2V0LnN2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0YWtldGlja2V0IG10LTUgZnctYm9sZFwiPk5vIE9wZW4gVGlja2V0cyA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/Lm1hbmFnZV90aWNrZXRzX2lzRWRpdFwiIGNsYXNzPVwidy0xMDAgYnRuIGJ0bi1wcmltYXJ5IG10LTVcIiAoY2xpY2spPVwidGFrZVRpY2tldCgpXCI+VGFrZSBUaWNrZXQ8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+IFxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLXNtLTRcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3LTEwMCBoLTEwMCByb3VuZGVkLTIgb3ZlcmZsb3ctaGlkZGVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhZGdlLWxpZ2h0LWRlZmF1bHQgcHgtMyBweS00XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4+SW5wcm9ncmVzczwvc3Bhbj48c3BhbiAqbmdJZj1cInN0YXR1c0lucHJvZ3Jlc3M/Lmxlbmd0aCA+IDAgJiYgIWxvYWRpbmcuaW5wcm9ncmVzcyAmJiAhbm9EYXRhLmlucHJvZ3Jlc3NcIiBjbGFzcz1cInJvdW5kZWQtNSBtcy0zIHB4LTEgYm9yZGVyIGJvcmRlci1ncmF5IGJnLWJhZGdlXCI+e3tzdGF0dXNJbnByb2dyZXNzPy5sZW5ndGh9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93Ym9keSBoLTEwMCBweC00IHB5LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFsb2FkaW5nLmlucHJvZ3Jlc3MgJiYgIW5vRGF0YS5pbnByb2dyZXNzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBpbnByb2dyZXNzIG9mIHN0YXR1c0lucHJvZ3Jlc3M7IGxldCBpbmRleCA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cImlucHJvZ3Jlc3MuaXNPcGVuID8gJ2FjdGl2ZSc6JydcIiBjbGFzcz1cImlzc3VlY2FyZCBjdXJzb3ItcG9pbnRlciB3LTEwMCBtYi01XCIgKGNsaWNrKT1cInJvdXRldG9UaWNrZXQoaW5wcm9ncmVzcylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImlucHJvZ3Jlc3M/LmlzT3BlblwiIGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItNVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZ3LXNlbWlib2xkXCI+e3tpbnByb2dyZXNzPy5zdG9yZUlkfX08L2xhYmVsPjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJmdy1zZW1pYm9sZCBteS0yXCI+e3tpbnByb2dyZXNzPy5zdG9yZU5hbWUgPyBpbnByb2dyZXNzPy5zdG9yZU5hbWUgOictLSd9fTwvbGFiZWw+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG10LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LWRlZmF1bHQgbWUtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cIm1lLTJcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zNzMyXzYwMjc3KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNOCAxVjNNNCAxVjNNMS41IDVIMTAuNU0yLjUgMkg5LjVDMTAuMDUyMyAyIDEwLjUgMi40NDc3MiAxMC41IDNWMTBDMTAuNSAxMC41NTIzIDEwLjA1MjMgMTEgOS41IDExSDIuNUMxLjk0NzcyIDExIDEuNSAxMC41NTIzIDEuNSAxMFYzQzEuNSAyLjQ0NzcyIDEuOTQ3NzIgMiAyLjUgMlpcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS4xXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zNzMyXzYwMjc3XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgZmlsbD1cIndoaXRlXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPiB7e2lucHJvZ3Jlc3M/LkRhdGV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJpbnByb2dyZXNzPy5pbmZyYUlzc3VlXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC13YXJuaW5nXCI+e3tpbnByb2dyZXNzPy5pbmZyYUlzc3VlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwidHlwZSA9PT0naW5zdGFsbGF0aW9uJyAmJiBpbnByb2dyZXNzPy5pbmZyYUlzc3VlIT09JydcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXByaW1hcnkgdGV4dC1jYXBpdGFsaXplIG1zLTNcIj57e2lucHJvZ3Jlc3M/Lmluc3RhbGxhdGlvblN0YXR1cyA/IGlucHJvZ3Jlc3M/Lmluc3RhbGxhdGlvblN0YXR1cyA6Jy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInR5cGUgPT09J2RhdGFNaXNtYXRjaCdcIiBjbGFzcz1cImJhZGdlIGJhZGdlLWxpZ2h0LXdhcm5pbmdcIj57e2lucHJvZ3Jlc3M/Lmlzc3VlVHlwZSA9PT0gJ2hpZ2hjb3VudCcgPyAnSGlnaCBDb3VudCcgOiAoaW5wcm9ncmVzcz8uaXNzdWVUeXBlID09PSAnbG93Y291bnQnID8gJ0xvdyBDb3VudCcgOiAnJyl9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIiBkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiaW5wcm9ncmVzcz8ubm90aWZpY2F0aW9uXCIgY2xhc3M9XCJwcm9maWxlIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50cmUganVzdGlmeS1jb250ZW50LWNlbnRyZSBtZS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL0JlbGxub3RpZmljYXRpb24ucG5nXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIChjbGljayk9XCJzZWxlY3RWaWV3KCRldmVudCxpbmRleCwnaW5wcm9ncmVzcycpXCI+IDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEzLjE2NiAyLjVIMTguMTY2TTE4LjE2NiAyLjVWNy41TTE4LjE2NiAyLjVMMTIuMzMyNyA4LjMzMzMzTTguMTY2MDIgMTcuNUgzLjE2NjAyTTMuMTY2MDIgMTcuNVYxMi41TTMuMTY2MDIgMTcuNUw4Ljk5OTM1IDExLjY2NjdcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMS42NjY2N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiB0ZXh0LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj4gICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIiA+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj48c3ZnIGNsYXNzPVwibWUtMlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiB2aWV3Qm94PVwiMCAwIDE4IDE4XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMC43OTY2IDEuNDI3NTJDMTAuNjU0MSAxLjI5NjgxIDEwLjQ2NjcgMS4yMjYxNyAxMC4yNzMzIDEuMjMwMzdDMTAuMDggMS4yMzQ1NiA5Ljg5NTggMS4zMTMyNSA5Ljc1OTExIDEuNDUwMDJMMS40ODkxMSA5LjcyMDAyQzEuNDE5MzggOS43ODk2OCAxLjM2NDA2IDkuODcyMzkgMS4zMjYzMiA5Ljk2MzQ0QzEuMjg4NTcgMTAuMDU0NSAxLjI2OTE1IDEwLjE1MjEgMS4yNjkxNSAxMC4yNTA2QzEuMjY5MTUgMTAuMzQ5MiAxLjI4ODU3IDEwLjQ0NjggMS4zMjYzMiAxMC41Mzc5QzEuMzY0MDYgMTAuNjI4OSAxLjQxOTM4IDEwLjcxMTYgMS40ODkxMSAxMC43ODEzTDIuNjQ2NjEgMTEuOTM4OEMyLjY1NjMyIDExLjk0MTggMi42NjY0NyAxMS45NDMgMi42NzY2MSAxMS45NDI1QzIuNzE0MTEgMTEuOTQyNSAyLjc2NDExIDExLjkyODggMi44MTE2MSAxMS44OTc1QzMuMjY4NDUgMTEuNTkyNyAzLjgxNjggMTEuNDU1NyA0LjM2MzMxIDExLjUwOTdDNC45MDk4MyAxMS41NjM3IDUuNDIwNzMgMTEuODA1NSA1LjgwOTA1IDEyLjE5MzhDNi4xOTczOCAxMi41ODIyIDYuNDM5MTMgMTMuMDkzMSA2LjQ5MzE2IDEzLjYzOTZDNi41NDcxOCAxNC4xODYxIDYuNDEwMTQgMTQuNzM0NCA2LjEwNTM2IDE1LjE5MTNDNi4wNzc5MiAxNS4yMzExIDYuMDYyMzEgMTUuMjc3OSA2LjA2MDM2IDE1LjMyNjNDNi4wNjAzNiAxNS4zNDI1IDYuMDYyODYgMTUuMzUxMyA2LjA2NDExIDE1LjM1NUw3LjE5NDExIDE2LjQ4NjNDNy4yNjUxMiAxNi41NTc0IDcuMzQ5NzEgMTYuNjEzNiA3LjQ0Mjg1IDE2LjY1MTRDNy41MzU5OSAxNi42ODkyIDcuNjM1NzkgMTYuNzA3OSA3LjczNjMgMTYuNzA2NEM3LjgzNjgyIDE2LjcwNDkgNy45MzYgMTYuNjgzMiA4LjAyNzk2IDE2LjY0MjZDOC4xMTk5MiAxNi42MDIgOC4yMDI3OCAxNi41NDMzIDguMjcxNjEgMTYuNDdMMTYuNTIwNCA3LjcwNTAyQzE2LjU4ODMgNy42MzI2NyAxNi42NDEyIDcuNTQ3NTUgMTYuNjc2IDcuNDU0NkMxNi43MTA4IDcuMzYxNjUgMTYuNzI2OCA3LjI2MjcyIDE2LjcyMzEgNy4xNjM1NEMxNi43MTkzIDcuMDY0MzYgMTYuNjk2IDYuOTY2OTEgMTYuNjU0MyA2Ljg3NjgzQzE2LjYxMjYgNi43ODY3NSAxNi41NTM1IDYuNzA1ODMgMTYuNDgwNCA2LjYzODc3TDE1LjM3MjkgNS42MjI1MkgxNS4zNjkxQzE1LjM1MTQgNS42MTkwMiAxNS4zMzMxIDUuNjE5MDIgMTUuMzE1NCA1LjYyMjUyQzE1LjI0NDggNS42MzcyMiAxNS4xODA2IDUuNjczNDggMTUuMTMxNiA1LjcyNjI3QzE0LjkyMjcgNS45NjMwNSAxNC42Njg3IDYuMTU1NzkgMTQuMzg0NSA2LjI5MzIzQzE0LjEwMDIgNi40MzA2NyAxMy43OTE0IDYuNTEwMDUgMTMuNDc2MSA2LjUyNjczQzEzLjE2MDggNi41NDM0MSAxMi44NDUzIDYuNDk3MDQgMTIuNTQ4MSA2LjM5MDM1QzEyLjI1MSA2LjI4MzY2IDExLjk3OCA2LjExODc5IDExLjc0NTMgNS45MDUzN0MxMS41MTI2IDUuNjkxOTUgMTEuMzI0OCA1LjQzNDI4IDExLjE5MjkgNS4xNDc0MkMxMS4wNjEgNC44NjA1NSAxMC45ODc2IDQuNTUwMjcgMTAuOTc3IDQuMjM0N0MxMC45NjY0IDMuOTE5MTMgMTEuMDE4OCAzLjYwNDYyIDExLjEzMTIgMy4zMDk1NkMxMS4yNDM2IDMuMDE0NDkgMTEuNDEzNyAyLjc0NDgxIDExLjYzMTYgMi41MTYyN0MxMS42Nzk3IDIuNDYyNjQgMTEuNzA5OCAyLjM5NTM1IDExLjcxNzkgMi4zMjM3N0MxMS43MjAxIDIuMzA0ODggMTEuNzE4NCAyLjI4NTcyIDExLjcxMjkgMi4yNjc1MkwxMC43OTY2IDEuNDI3NTJaTTkuMDUyODYgMC43NDI1MjJDOS4zNzE3NiAwLjQyMzYzOCA5LjgwMTQ1IDAuMjQwMTc0IDEwLjI1MjMgMC4yMzAzOTNDMTAuNzAzMiAwLjIyMDYxMSAxMS4xNDA0IDAuMzg1MjY4IDExLjQ3MjkgMC42OTAwMjJMMTIuMzg5MSAxLjUzMTI3QzEyLjY2MjkgMS43ODEyNyAxMi43MzkxIDIuMTIyNTIgMTIuNzE0MSAyLjQxMzc3QzEyLjY4NzkgMi43MDEyNyAxMi41NjE2IDIuOTgyNTIgMTIuMzY2NiAzLjE5Mzc3QzEyLjI0NDYgMy4zMjY5IDEyLjE0OTkgMy40ODI3NiAxMi4wODgxIDMuNjUyNDZDMTIuMDI2MyAzLjgyMjE2IDExLjk5ODUgNC4wMDIzNyAxMi4wMDY0IDQuMTgyODFDMTIuMDE0MiA0LjM2MzI1IDEyLjA1NzUgNC41NDAzNyAxMi4xMzM4IDQuNzA0MDdDMTIuMjEwMSA0Ljg2Nzc4IDEyLjMxNzkgNS4wMTQ4NSAxMi40NTEgNS4xMzY5QzEyLjU4NDEgNS4yNTg5NCAxMi43NCA1LjM1MzU4IDEyLjkwOTcgNS40MTUzOUMxMy4wNzk0IDUuNDc3MiAxMy4yNTk2IDUuNTA0OTggMTMuNDQgNS40OTcxNEMxMy42MjA1IDUuNDg5MzEgMTMuNzk3NiA1LjQ0NjAxIDEzLjk2MTMgNS4zNjk3MkMxNC4xMjUgNS4yOTM0NCAxNC4yNzIxIDUuMTg1NjUgMTQuMzk0MSA1LjA1MjUyQzE0LjU4NzkgNC44NDAwMiAxNC44NTY2IDQuNjkwMDIgMTUuMTQwNCA0LjYzODc3QzE1LjMwMDQgNC42MDY2NSAxNS40NjU2IDQuNjEyMTggMTUuNjIzMSA0LjY1NDkyQzE1Ljc4MDYgNC42OTc2NSAxNS45MjYgNC43NzY0MyAxNi4wNDc5IDQuODg1MDJMMTcuMTU2NiA1LjkwMTI3QzE3LjMyNzMgNi4wNTc5IDE3LjQ2NTIgNi4yNDY4NyAxNy41NjIzIDYuNDU3MkMxNy42NTk0IDYuNjY3NTQgMTcuNzEzOCA2Ljg5NTA3IDE3LjcyMjMgNy4xMjY1OEMxNy43MzA4IDcuMzU4MDkgMTcuNjkzMiA3LjU4ODk5IDE3LjYxMTggNy44MDU4N0MxNy41MzAzIDguMDIyNzYgMTcuNDA2NiA4LjIyMTMxIDE3LjI0NzkgOC4zOTAwMkw5LjAwMDM2IDE3LjE1NUM4LjgzOTc1IDE3LjMyNTcgOC42NDY0OSAxNy40NjI0IDguNDMyMDYgMTcuNTU2OUM4LjIxNzYzIDE3LjY1MTUgNy45ODYzOCAxNy43MDIgNy43NTIwNSAxNy43MDU1QzcuNTE3NzEgMTcuNzA5IDcuMjg1MDYgMTcuNjY1NCA3LjA2NzkgMTcuNTc3M0M2Ljg1MDc0IDE3LjQ4OTIgNi42NTM0OSAxNy4zNTgzIDYuNDg3ODYgMTcuMTkyNUw1LjM1Nzg2IDE2LjA2MjVDNC45MjQxMSAxNS42Mjg4IDUuMDI5MTEgMTUuMDAzOCA1LjI3NDExIDE0LjYzNzVDNS40NDk4OCAxNC4zNzMxIDUuNTI4NzEgMTQuMDU1OSA1LjQ5NzIgMTMuNzRDNS40NjU2OSAxMy40MjQgNS4zMjU3OSAxMy4xMjg3IDUuMTAxMjUgMTIuOTA0MUM0Ljg3NjcyIDEyLjY3OTYgNC41ODEzOSAxMi41Mzk3IDQuMjY1NDIgMTIuNTA4MkMzLjk0OTQ1IDEyLjQ3NjcgMy42MzIzMSAxMi41NTU1IDMuMzY3ODYgMTIuNzMxM0MyLjk5OTExIDEyLjk3NSAyLjM3NTM2IDEzLjA4IDEuOTQxNjEgMTIuNjQ1TDAuNzg0MTExIDExLjQ4NzVDMC42MjE1ODkgMTEuMzI1IDAuNDkyNjY5IDExLjEzMjEgMC40MDQ3MTIgMTAuOTE5OEMwLjMxNjc1NSAxMC43MDc0IDAuMjcxNDg0IDEwLjQ3OTggMC4yNzE0ODQgMTAuMjVDMC4yNzE0ODQgMTAuMDIwMiAwLjMxNjc1NSA5Ljc5MjYyIDAuNDA0NzEyIDkuNTgwMjlDMC40OTI2NjkgOS4zNjc5NSAwLjYyMTU4OSA5LjE3NTAzIDAuNzg0MTExIDkuMDEyNTJMOS4wNTI4NiAwLjc0MjUyMlpcIiBmaWxsPVwiIzY2NzA4NVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMC43OTY2IDEuNDI3NTJDMTAuNjU0MSAxLjI5NjgxIDEwLjQ2NjcgMS4yMjYxNyAxMC4yNzMzIDEuMjMwMzdDMTAuMDggMS4yMzQ1NiA5Ljg5NTggMS4zMTMyNSA5Ljc1OTExIDEuNDUwMDJMMS40ODkxMSA5LjcyMDAyQzEuNDE5MzggOS43ODk2OCAxLjM2NDA2IDkuODcyMzkgMS4zMjYzMiA5Ljk2MzQ0QzEuMjg4NTcgMTAuMDU0NSAxLjI2OTE1IDEwLjE1MjEgMS4yNjkxNSAxMC4yNTA2QzEuMjY5MTUgMTAuMzQ5MiAxLjI4ODU3IDEwLjQ0NjggMS4zMjYzMiAxMC41Mzc5QzEuMzY0MDYgMTAuNjI4OSAxLjQxOTM4IDEwLjcxMTYgMS40ODkxMSAxMC43ODEzTDIuNjQ2NjEgMTEuOTM4OEMyLjY1NjMyIDExLjk0MTggMi42NjY0NyAxMS45NDMgMi42NzY2MSAxMS45NDI1QzIuNzE0MTEgMTEuOTQyNSAyLjc2NDExIDExLjkyODggMi44MTE2MSAxMS44OTc1QzMuMjY4NDUgMTEuNTkyNyAzLjgxNjggMTEuNDU1NyA0LjM2MzMxIDExLjUwOTdDNC45MDk4MyAxMS41NjM3IDUuNDIwNzMgMTEuODA1NSA1LjgwOTA1IDEyLjE5MzhDNi4xOTczOCAxMi41ODIyIDYuNDM5MTMgMTMuMDkzMSA2LjQ5MzE2IDEzLjYzOTZDNi41NDcxOCAxNC4xODYxIDYuNDEwMTQgMTQuNzM0NCA2LjEwNTM2IDE1LjE5MTNDNi4wNzc5MiAxNS4yMzExIDYuMDYyMzEgMTUuMjc3OSA2LjA2MDM2IDE1LjMyNjNDNi4wNjAzNiAxNS4zNDI1IDYuMDYyODYgMTUuMzUxMyA2LjA2NDExIDE1LjM1NUw3LjE5NDExIDE2LjQ4NjNDNy4yNjUxMiAxNi41NTc0IDcuMzQ5NzEgMTYuNjEzNiA3LjQ0Mjg1IDE2LjY1MTRDNy41MzU5OSAxNi42ODkyIDcuNjM1NzkgMTYuNzA3OSA3LjczNjMgMTYuNzA2NEM3LjgzNjgyIDE2LjcwNDkgNy45MzYgMTYuNjgzMiA4LjAyNzk2IDE2LjY0MjZDOC4xMTk5MiAxNi42MDIgOC4yMDI3OCAxNi41NDMzIDguMjcxNjEgMTYuNDdMMTYuNTIwNCA3LjcwNTAyQzE2LjU4ODMgNy42MzI2NyAxNi42NDEyIDcuNTQ3NTUgMTYuNjc2IDcuNDU0NkMxNi43MTA4IDcuMzYxNjUgMTYuNzI2OCA3LjI2MjcyIDE2LjcyMzEgNy4xNjM1NEMxNi43MTkzIDcuMDY0MzYgMTYuNjk2IDYuOTY2OTEgMTYuNjU0MyA2Ljg3NjgzQzE2LjYxMjYgNi43ODY3NSAxNi41NTM1IDYuNzA1ODMgMTYuNDgwNCA2LjYzODc3TDE1LjM3MjkgNS42MjI1MkgxNS4zNjkxQzE1LjM1MTQgNS42MTkwMiAxNS4zMzMxIDUuNjE5MDIgMTUuMzE1NCA1LjYyMjUyQzE1LjI0NDggNS42MzcyMiAxNS4xODA2IDUuNjczNDggMTUuMTMxNiA1LjcyNjI3QzE0LjkyMjcgNS45NjMwNSAxNC42Njg3IDYuMTU1NzkgMTQuMzg0NSA2LjI5MzIzQzE0LjEwMDIgNi40MzA2NyAxMy43OTE0IDYuNTEwMDUgMTMuNDc2MSA2LjUyNjczQzEzLjE2MDggNi41NDM0MSAxMi44NDUzIDYuNDk3MDQgMTIuNTQ4MSA2LjM5MDM1QzEyLjI1MSA2LjI4MzY2IDExLjk3OCA2LjExODc5IDExLjc0NTMgNS45MDUzN0MxMS41MTI2IDUuNjkxOTUgMTEuMzI0OCA1LjQzNDI4IDExLjE5MjkgNS4xNDc0MkMxMS4wNjEgNC44NjA1NSAxMC45ODc2IDQuNTUwMjcgMTAuOTc3IDQuMjM0N0MxMC45NjY0IDMuOTE5MTMgMTEuMDE4OCAzLjYwNDYyIDExLjEzMTIgMy4zMDk1NkMxMS4yNDM2IDMuMDE0NDkgMTEuNDEzNyAyLjc0NDgxIDExLjYzMTYgMi41MTYyN0MxMS42Nzk3IDIuNDYyNjQgMTEuNzA5OCAyLjM5NTM1IDExLjcxNzkgMi4zMjM3N0MxMS43MjAxIDIuMzA0ODggMTEuNzE4NCAyLjI4NTcyIDExLjcxMjkgMi4yNjc1MkwxMC43OTY2IDEuNDI3NTJaTTkuMDUyODYgMC43NDI1MjJDOS4zNzE3NiAwLjQyMzYzOCA5LjgwMTQ1IDAuMjQwMTc0IDEwLjI1MjMgMC4yMzAzOTNDMTAuNzAzMiAwLjIyMDYxMSAxMS4xNDA0IDAuMzg1MjY4IDExLjQ3MjkgMC42OTAwMjJMMTIuMzg5MSAxLjUzMTI3QzEyLjY2MjkgMS43ODEyNyAxMi43MzkxIDIuMTIyNTIgMTIuNzE0MSAyLjQxMzc3QzEyLjY4NzkgMi43MDEyNyAxMi41NjE2IDIuOTgyNTIgMTIuMzY2NiAzLjE5Mzc3QzEyLjI0NDYgMy4zMjY5IDEyLjE0OTkgMy40ODI3NiAxMi4wODgxIDMuNjUyNDZDMTIuMDI2MyAzLjgyMjE2IDExLjk5ODUgNC4wMDIzNyAxMi4wMDY0IDQuMTgyODFDMTIuMDE0MiA0LjM2MzI1IDEyLjA1NzUgNC41NDAzNyAxMi4xMzM4IDQuNzA0MDdDMTIuMjEwMSA0Ljg2Nzc4IDEyLjMxNzkgNS4wMTQ4NSAxMi40NTEgNS4xMzY5QzEyLjU4NDEgNS4yNTg5NCAxMi43NCA1LjM1MzU4IDEyLjkwOTcgNS40MTUzOUMxMy4wNzk0IDUuNDc3MiAxMy4yNTk2IDUuNTA0OTggMTMuNDQgNS40OTcxNEMxMy42MjA1IDUuNDg5MzEgMTMuNzk3NiA1LjQ0NjAxIDEzLjk2MTMgNS4zNjk3MkMxNC4xMjUgNS4yOTM0NCAxNC4yNzIxIDUuMTg1NjUgMTQuMzk0MSA1LjA1MjUyQzE0LjU4NzkgNC44NDAwMiAxNC44NTY2IDQuNjkwMDIgMTUuMTQwNCA0LjYzODc3QzE1LjMwMDQgNC42MDY2NSAxNS40NjU2IDQuNjEyMTggMTUuNjIzMSA0LjY1NDkyQzE1Ljc4MDYgNC42OTc2NSAxNS45MjYgNC43NzY0MyAxNi4wNDc5IDQuODg1MDJMMTcuMTU2NiA1LjkwMTI3QzE3LjMyNzMgNi4wNTc5IDE3LjQ2NTIgNi4yNDY4NyAxNy41NjIzIDYuNDU3MkMxNy42NTk0IDYuNjY3NTQgMTcuNzEzOCA2Ljg5NTA3IDE3LjcyMjMgNy4xMjY1OEMxNy43MzA4IDcuMzU4MDkgMTcuNjkzMiA3LjU4ODk5IDE3LjYxMTggNy44MDU4N0MxNy41MzAzIDguMDIyNzYgMTcuNDA2NiA4LjIyMTMxIDE3LjI0NzkgOC4zOTAwMkw5LjAwMDM2IDE3LjE1NUM4LjgzOTc1IDE3LjMyNTcgOC42NDY0OSAxNy40NjI0IDguNDMyMDYgMTcuNTU2OUM4LjIxNzYzIDE3LjY1MTUgNy45ODYzOCAxNy43MDIgNy43NTIwNSAxNy43MDU1QzcuNTE3NzEgMTcuNzA5IDcuMjg1MDYgMTcuNjY1NCA3LjA2NzkgMTcuNTc3M0M2Ljg1MDc0IDE3LjQ4OTIgNi42NTM0OSAxNy4zNTgzIDYuNDg3ODYgMTcuMTkyNUw1LjM1Nzg2IDE2LjA2MjVDNC45MjQxMSAxNS42Mjg4IDUuMDI5MTEgMTUuMDAzOCA1LjI3NDExIDE0LjYzNzVDNS40NDk4OCAxNC4zNzMxIDUuNTI4NzEgMTQuMDU1OSA1LjQ5NzIgMTMuNzRDNS40NjU2OSAxMy40MjQgNS4zMjU3OSAxMy4xMjg3IDUuMTAxMjUgMTIuOTA0MUM0Ljg3NjcyIDEyLjY3OTYgNC41ODEzOSAxMi41Mzk3IDQuMjY1NDIgMTIuNTA4MkMzLjk0OTQ1IDEyLjQ3NjcgMy42MzIzMSAxMi41NTU1IDMuMzY3ODYgMTIuNzMxM0MyLjk5OTExIDEyLjk3NSAyLjM3NTM2IDEzLjA4IDEuOTQxNjEgMTIuNjQ1TDAuNzg0MTExIDExLjQ4NzVDMC42MjE1ODkgMTEuMzI1IDAuNDkyNjY5IDExLjEzMjEgMC40MDQ3MTIgMTAuOTE5OEMwLjMxNjc1NSAxMC43MDc0IDAuMjcxNDg0IDEwLjQ3OTggMC4yNzE0ODQgMTAuMjVDMC4yNzE0ODQgMTAuMDIwMiAwLjMxNjc1NSA5Ljc5MjYyIDAuNDA0NzEyIDkuNTgwMjlDMC40OTI2NjkgOS4zNjc5NSAwLjYyMTU4OSA5LjE3NTAzIDAuNzg0MTExIDkuMDEyNTJMOS4wNTI4NiAwLjc0MjUyMlpcIiBzdHJva2U9XCIjNjY3MDg1XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4ge3tpbnByb2dyZXNzPy50aWNrZXRJZH19IDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50cmUganVzdGlmeS1jb250ZW50LWNlbnRyZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaW5wcm9ncmVzcz8udGlja2V0VHlwZSA9PT0gJ3JlZnJlc2h0aWNrZXQnXCI+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIxN1wiIGhlaWdodD1cIjE0XCIgdmlld0JveD1cIjAgMCAxNyAxNFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk01Ljk0NjAyIDQuOTg4ODFMMi42NjYwMiA2LjMzODgxTDIuMDA2MDIgNi4wNzg4MUwwLjY2NjAxNiAyLjgzODgxTDEuNTg2MDIgMi40NTg4MUwyLjM5NjAyIDQuNDA4ODFDMi45Mzk3NyAzLjA0ODAxIDMuOTI4NzIgMS45MTE2OSA1LjIwMTQ1IDEuMTg1MzJDNi40NzQxOSAwLjQ1ODk1MSA3Ljk1NTU0IDAuMTg1NDI2IDkuNDAzNzUgMC40MDkzODdDMTAuODUyIDAuNjMzMzQ5IDEyLjE4MTUgMS4zNDE1NyAxMy4xNzU0IDIuNDE4NDZDMTQuMTY5MiAzLjQ5NTM1IDE0Ljc2ODcgNC44NzczMiAxNC44NzYgNi4zMzg4MUgxMy44NzZDMTMuNzYxNiA1LjA5MDA4IDEzLjIyMjQgMy45MTgzNiAxMi4zNDg0IDMuMDE5MTlDMTEuNDc0MyAyLjEyMDAzIDEwLjMxODQgMS41NDc4MSA5LjA3MzQgMS4zOTgwNEM3LjgyODQyIDEuMjQ4MjYgNi41Njk3MyAxLjUzIDUuNTA3MzkgMi4xOTYyMkM0LjQ0NTA1IDIuODYyNDQgMy42NDMzMiAzLjg3Mjg0IDMuMjM2MDIgNS4wNTg4MUw1LjU1NjAyIDQuMDU4ODFMNS45NDYwMiA0Ljk4ODgxWk0xNC44MDYgNy42Njg4MUwxNi4xNDYgMTAuODk4OEwxNS4yMjYgMTEuMzM4OEwxNC40MDYgOS4zMzg4MUMxMy44NTggMTAuNzA0OSAxMi44NjE4IDExLjg0NDIgMTEuNTgxIDEyLjU2OTZDMTAuMzAwMSAxMy4yOTUgOC44MTA3NyAxMy41NjM0IDcuMzU3MjggMTMuMzMwOUM1LjkwMzggMTMuMDk4MyA0LjU3MjU1IDEyLjM3ODYgMy41ODIgMTEuMjg5OEMyLjU5MTQ1IDEwLjIwMDkgMi4wMDA0NiA4LjgwNzc1IDEuOTA2MDIgNy4zMzg4MUgyLjkwNjAyVjYuODM4ODFDMi45MDg4MiA4LjEyNjI3IDMuMzY0MDIgOS4zNzE4IDQuMTkyMDMgMTAuMzU3N0M1LjAyMDA1IDExLjM0MzYgNi4xNjgyMSAxMi4wMDcxIDcuNDM1ODQgMTIuMjMyMkM4LjcwMzQ2IDEyLjQ1NzQgMTAuMDA5OSAxMi4yMjk5IDExLjEyNjggMTEuNTg5NUMxMi4yNDM3IDEwLjk0OTEgMTMuMSA5LjkzNjU1IDEzLjU0NiA4LjcyODgxTDExLjI5NiA5LjY1ODgxTDEwLjkwNiA4LjczODgxTDE0LjE1NiA3LjM4ODgxTDE0LjgwNiA3LjY2ODgxWlwiIGZpbGw9XCIjOThBMkIzXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTguNDA2MjUgNy41NDAwNEM4Ljk1ODUzIDcuNTQwMDQgOS40MDYyNSA3LjA5MjMyIDkuNDA2MjUgNi41NDAwNEM5LjQwNjI1IDUuOTg3NzUgOC45NTg1MyA1LjU0MDA0IDguNDA2MjUgNS41NDAwNEM3Ljg1Mzk3IDUuNTQwMDQgNy40MDYyNSA1Ljk4Nzc1IDcuNDA2MjUgNi41NDAwNEM3LjQwNjI1IDcuMDkyMzIgNy44NTM5NyA3LjU0MDA0IDguNDA2MjUgNy41NDAwNFpcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibXMtM1wiICpuZ0lmPVwiaW5wcm9ncmVzcz8uaXNzdWVTdGF0dXMgIT09ICdub3RpZGVudGlmaWVkJ1wiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTZcIiBoZWlnaHQ9XCIxNlwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzM4MjdfMTIwNjEpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03LjIwMDY1IDEwLjMzMzNIOS4xNTYyMVYxMi4zMzMzSDcuMjAwNjVWMTAuMzMzM1pNOS4xNTYyMSA0LjMzMzI3SDcuMjAwNjVWOS4zMzMyNkg5LjE1NjIxVjQuMzMzMjdaTTEwLjYyMjkgNS44MzMyN0w5LjY0NTEgNi44MzMyN0wxMi4wODk1IDkuMzMzMjZMMTYuMDAwNyA0LjgzMzI3TDE1LjAyMjkgMy44MzMyN0wxMi4wODk1IDcuMzMzMjZMMTAuNjIyOSA1LjgzMzI3Wk04LjE3ODQzIDE0LjAzMzNDNi43MDEwOCAxNC4wMzA2IDUuMjg0OTkgMTMuNDI5MiA0LjI0MDM0IDEyLjM2MDhDMy4xOTU3IDExLjI5MjUgMi42MDc2OCA5Ljg0NDE4IDIuNjA1MSA4LjMzMzI2QzIuNjA1MSA1LjE5MzI3IDUuMTA4MjEgMi42MzMyNyA4LjE3ODQzIDIuNjMzMjdDOS45Njc3NiAyLjYzMzI3IDExLjU1MTggMy41MTMyNyAxMi41Nzg0IDQuODMzMjdMMTMuNDc4IDMuOTEzMjdDMTIuODM5NSAzLjEwNTM0IDEyLjAzMTkgMi40NTQxNSAxMS4xMTQ3IDIuMDA3NjVDMTAuMTk3NiAxLjU2MTE1IDkuMTk0MTkgMS4zMzA3IDguMTc4NDMgMS4zMzMyN0M0LjQwNDIxIDEuMzMzMjcgMS4zMzM5OCA0LjQ3MzI3IDEuMzMzOTggOC4zMzMyNkMxLjMzMzk4IDEyLjE5MzMgNC40MDQyMSAxNS4zMzMzIDguMTc4NDMgMTUuMzMzM0MxMS45NTI3IDE1LjMzMzMgMTUuMDIyOSAxMi4xOTMzIDE1LjAyMjkgOC4zMzMyNkwxMy41MzY3IDkuODUzMjZDMTIuODkxMyAxMi4yNjMzIDEwLjc0MDIgMTQuMDQzMyA4LjE3ODQzIDE0LjA0MzNWMTQuMDMzM1pcIiBmaWxsPVwiIzk4QTJCM1wiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfMzgyN18xMjA2MVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiBmaWxsPVwid2hpdGVcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWlucHJvZ3Jlc3MuaXNPcGVuXCIgKGNsaWNrKT1cInNlbGVjdFZpZXcoJGV2ZW50LGluZGV4LCdpbnByb2dyZXNzJylcIiBjbGFzcz1cIm1zLTNcIj4gPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMVwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMSAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMuMTY2IDIuNUgxOC4xNjZNMTguMTY2IDIuNVY3LjVNMTguMTY2IDIuNUwxMi4zMzI3IDguMzMzMzNNOC4xNjYwMiAxNy41SDMuMTY2MDJNMy4xNjYwMiAxNy41VjEyLjVNMy4xNjYwMiAxNy41TDguOTk5MzUgMTEuNjY2N1wiIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjY2NjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz48L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFpbnByb2dyZXNzLmlzT3BlbiAmJiBpbnByb2dyZXNzPy5ub3RpZmljYXRpb25cIiBjbGFzcz1cInByb2ZpbGUgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRyZSBqdXN0aWZ5LWNvbnRlbnQtY2VudHJlIG1zLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cIlwiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy9CZWxsbm90aWZpY2F0aW9uLnBuZ1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIDxpbWcgKm5nSWY9XCJjYXJkVmlld1wiIGNsYXNzPVwicHJvZmlsZSBtcy0zXCIgc3JjPVwiLi9hc3NldHMvdGFuZ28vSW1hZ2VzL2dyb3Btb2RhbC5wbmdcIiBhbHQ9XCJcIj4gLS0+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInN0YXR1c0lucHJvZ3Jlc3M/Lmxlbmd0aCA9PT0gMCB8fCAhbm9EYXRhICYmICFsb2FkaW5nXCIgY2xhc3M9XCJ3LTEwMCBtdC0xMCBtYi0xMCBtaC02MHZoIGQtZ3JpZCB0ZXh0LWNlbnRlciBteC1hdXRvXCI+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cIm14LWF1dG9cIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvdGFrZXRpY2tldC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGFrZXRpY2tldCBtdC0yIGZ3LWJvbGRcIj5ObyBJbi1Qcm9ncmVzcyBUaWNrZXRzIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxvYWRpbmc/LmlucHJvZ3Jlc3NcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibm9EYXRhPy5pbnByb2dyZXNzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjYXJkLWJvZHkgbWgtNjB2aCBkLWZsZXgganVzdGlmeS1jb250ZW50LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXIgZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIGNsYXNzPVwibXgtYXV0b1wiIHNyYz1cIi4vYXNzZXRzL3RhbmdvL0ltYWdlcy90YWtldGlja2V0LnN2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRha2V0aWNrZXQgbXQtNSBmdy1ib2xkXCI+Tm8gSW4tUHJvZ3Jlc3MgVGlja2V0cyA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj4gXHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1zbS00XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidy0xMDAgaC0xMDAgcm91bmRlZC0yIG92ZXJmbG93LWhpZGRlblwiIChjbGljayk9XCJzZWxlY3RUaWNrZXQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJiYWRnZS1saWdodC1kZWZhdWx0IHB4LTMgcHktNFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5DbG9zZWQ8L3NwYW4+PHNwYW4gKm5nSWY9XCJzdGF0dXNDbG9zZWQ/Lmxlbmd0aCA+IDAgJiYgIW5vRGF0YS5jbG9zZWQgJiYgIWxvYWRpbmcuY2xvc2VkXCIgY2xhc3M9XCJyb3VuZGVkLTUgbXMtMyBweC0xIGJvcmRlciBib3JkZXItZ3JheSBib3JkZXItZ3JheSBiZy1iYWRnZVwiPnt7c3RhdHVzQ2xvc2VkPy5sZW5ndGh9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93Ym9keSBoLTEwMCBweC00IHB5LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFub0RhdGEuY2xvc2VkICYmICFsb2FkaW5nLmNsb3NlZFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgY2xvc2VkIG9mIHN0YXR1c0Nsb3NlZDsgbGV0IGluZGV4ID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cImNsb3NlZC5pc09wZW4gPyAnYWN0aXZlJzonJ1wiIGNsYXNzPVwiaXNzdWVjYXJkIGN1cnNvci1wb2ludGVyIHctMTAwIG1iLTVcIiAoY2xpY2spPVwicm91dGV0b1RpY2tldChjbG9zZWQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNsb3NlZD8uaXNPcGVuXCIgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1iLTVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cImZ3LXNlbWlib2xkXCI+e3tjbG9zZWQ/LnN0b3JlSWR9fTwvbGFiZWw+PGJyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwiZnctc2VtaWJvbGQgbS0yXCI+e3tjbG9zZWQ/LnN0b3JlTmFtZSA/IGNsb3NlZD8uc3RvcmVOYW1lIDonLS0nfX08L2xhYmVsPjxicj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIG10LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtZGVmYXVsdCBtZS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgY2xhc3M9XCJtZS0yXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgY2xpcC1wYXRoPVwidXJsKCNjbGlwMF8zNzMyXzYwMjc3KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk04IDFWM000IDFWM00xLjUgNUgxMC41TTIuNSAySDkuNUMxMC4wNTIzIDIgMTAuNSAyLjQ0NzcyIDEwLjUgM1YxMEMxMC41IDEwLjU1MjMgMTAuMDUyMyAxMSA5LjUgMTFIMi41QzEuOTQ3NzIgMTEgMS41IDEwLjU1MjMgMS41IDEwVjNDMS41IDIuNDQ3NzIgMS45NDc3MiAyIDIuNSAyWlwiIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjFcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzM3MzJfNjAyNzdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIGZpbGw9XCJ3aGl0ZVwiLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2RlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz4ge3tjbG9zZWQ/LkRhdGV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiY2xvc2VkPy5pbmZyYUlzc3VlXCIgW25nQ2xhc3NdPVwiY2xvc2VkPy5pbmZyYUlzc3VlID09PSAnTGl2ZSc/ICdiYWRnZSBiYWRnZS1saWdodC1zdWNjZXNzJzonJ1wiIGNsYXNzPVwiYmFkZ2UgYmFkZ2UtbGlnaHQtd2FybmluZ1wiPiB7e2Nsb3NlZD8uaW5mcmFJc3N1ZX19IDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInR5cGUgPT09J2RhdGFNaXNtYXRjaCdcIiBbbmdDbGFzc109XCJjbG9zZWQ/LmluZnJhSXNzdWUgPT09ICdMaXZlJz8gJ2JhZGdlIGJhZGdlLWxpZ2h0LXN1Y2Nlc3MnOicnXCIgY2xhc3M9XCJiYWRnZSBiYWRnZS1saWdodC13YXJuaW5nXCI+e3tjbG9zZWQ/Lmlzc3VlVHlwZSA9PT0gJ2hpZ2hjb3VudCcgPyAnSGlnaCBDb3VudCcgOiAoY2xvc2VkPy5pc3N1ZVR5cGUgPT09ICdsb3djb3VudCcgPyAnTG93IENvdW50JyA6ICcnKX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiIGQtZmxleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNsb3NlZD8ubm90aWZpY2F0aW9uXCIgY2xhc3M9XCJwcm9maWxlIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50cmUganVzdGlmeS1jb250ZW50LWNlbnRyZSBtZS0zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvQmVsbG5vdGlmaWNhdGlvbi5wbmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIChjbGljayk9XCJzZWxlY3RWaWV3KCRldmVudCxpbmRleCwnY2xvc2VkJylcIj4gPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyMVwiIGhlaWdodD1cIjIwXCIgdmlld0JveD1cIjAgMCAyMSAyMFwiIGZpbGw9XCJub25lXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMy4xNjYgMi41SDE4LjE2Nk0xOC4xNjYgMi41VjcuNU0xOC4xNjYgMi41TDEyLjMzMjcgOC4zMzMzM004LjE2NjAyIDE3LjVIMy4xNjYwMk0zLjE2NjAyIDE3LjVWMTIuNU0zLjE2NjAyIDE3LjVMOC45OTkzNSAxMS42NjY3XCIgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjEuNjY2NjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiB0ZXh0LWNlbnRlciBhbGlnbi1pdGVtcy1jZW50ZXJcIj4gICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW5cIiA+IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCIgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPjxzdmcgY2xhc3M9XCJtZS0yXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiIHZpZXdCb3g9XCIwIDAgMTggMThcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTAuNzk2NiAxLjQyNzUyQzEwLjY1NDEgMS4yOTY4MSAxMC40NjY3IDEuMjI2MTcgMTAuMjczMyAxLjIzMDM3QzEwLjA4IDEuMjM0NTYgOS44OTU4IDEuMzEzMjUgOS43NTkxMSAxLjQ1MDAyTDEuNDg5MTEgOS43MjAwMkMxLjQxOTM4IDkuNzg5NjggMS4zNjQwNiA5Ljg3MjM5IDEuMzI2MzIgOS45NjM0NEMxLjI4ODU3IDEwLjA1NDUgMS4yNjkxNSAxMC4xNTIxIDEuMjY5MTUgMTAuMjUwNkMxLjI2OTE1IDEwLjM0OTIgMS4yODg1NyAxMC40NDY4IDEuMzI2MzIgMTAuNTM3OUMxLjM2NDA2IDEwLjYyODkgMS40MTkzOCAxMC43MTE2IDEuNDg5MTEgMTAuNzgxM0wyLjY0NjYxIDExLjkzODhDMi42NTYzMiAxMS45NDE4IDIuNjY2NDcgMTEuOTQzIDIuNjc2NjEgMTEuOTQyNUMyLjcxNDExIDExLjk0MjUgMi43NjQxMSAxMS45Mjg4IDIuODExNjEgMTEuODk3NUMzLjI2ODQ1IDExLjU5MjcgMy44MTY4IDExLjQ1NTcgNC4zNjMzMSAxMS41MDk3QzQuOTA5ODMgMTEuNTYzNyA1LjQyMDczIDExLjgwNTUgNS44MDkwNSAxMi4xOTM4QzYuMTk3MzggMTIuNTgyMiA2LjQzOTEzIDEzLjA5MzEgNi40OTMxNiAxMy42Mzk2QzYuNTQ3MTggMTQuMTg2MSA2LjQxMDE0IDE0LjczNDQgNi4xMDUzNiAxNS4xOTEzQzYuMDc3OTIgMTUuMjMxMSA2LjA2MjMxIDE1LjI3NzkgNi4wNjAzNiAxNS4zMjYzQzYuMDYwMzYgMTUuMzQyNSA2LjA2Mjg2IDE1LjM1MTMgNi4wNjQxMSAxNS4zNTVMNy4xOTQxMSAxNi40ODYzQzcuMjY1MTIgMTYuNTU3NCA3LjM0OTcxIDE2LjYxMzYgNy40NDI4NSAxNi42NTE0QzcuNTM1OTkgMTYuNjg5MiA3LjYzNTc5IDE2LjcwNzkgNy43MzYzIDE2LjcwNjRDNy44MzY4MiAxNi43MDQ5IDcuOTM2IDE2LjY4MzIgOC4wMjc5NiAxNi42NDI2QzguMTE5OTIgMTYuNjAyIDguMjAyNzggMTYuNTQzMyA4LjI3MTYxIDE2LjQ3TDE2LjUyMDQgNy43MDUwMkMxNi41ODgzIDcuNjMyNjcgMTYuNjQxMiA3LjU0NzU1IDE2LjY3NiA3LjQ1NDZDMTYuNzEwOCA3LjM2MTY1IDE2LjcyNjggNy4yNjI3MiAxNi43MjMxIDcuMTYzNTRDMTYuNzE5MyA3LjA2NDM2IDE2LjY5NiA2Ljk2NjkxIDE2LjY1NDMgNi44NzY4M0MxNi42MTI2IDYuNzg2NzUgMTYuNTUzNSA2LjcwNTgzIDE2LjQ4MDQgNi42Mzg3N0wxNS4zNzI5IDUuNjIyNTJIMTUuMzY5MUMxNS4zNTE0IDUuNjE5MDIgMTUuMzMzMSA1LjYxOTAyIDE1LjMxNTQgNS42MjI1MkMxNS4yNDQ4IDUuNjM3MjIgMTUuMTgwNiA1LjY3MzQ4IDE1LjEzMTYgNS43MjYyN0MxNC45MjI3IDUuOTYzMDUgMTQuNjY4NyA2LjE1NTc5IDE0LjM4NDUgNi4yOTMyM0MxNC4xMDAyIDYuNDMwNjcgMTMuNzkxNCA2LjUxMDA1IDEzLjQ3NjEgNi41MjY3M0MxMy4xNjA4IDYuNTQzNDEgMTIuODQ1MyA2LjQ5NzA0IDEyLjU0ODEgNi4zOTAzNUMxMi4yNTEgNi4yODM2NiAxMS45NzggNi4xMTg3OSAxMS43NDUzIDUuOTA1MzdDMTEuNTEyNiA1LjY5MTk1IDExLjMyNDggNS40MzQyOCAxMS4xOTI5IDUuMTQ3NDJDMTEuMDYxIDQuODYwNTUgMTAuOTg3NiA0LjU1MDI3IDEwLjk3NyA0LjIzNDdDMTAuOTY2NCAzLjkxOTEzIDExLjAxODggMy42MDQ2MiAxMS4xMzEyIDMuMzA5NTZDMTEuMjQzNiAzLjAxNDQ5IDExLjQxMzcgMi43NDQ4MSAxMS42MzE2IDIuNTE2MjdDMTEuNjc5NyAyLjQ2MjY0IDExLjcwOTggMi4zOTUzNSAxMS43MTc5IDIuMzIzNzdDMTEuNzIwMSAyLjMwNDg4IDExLjcxODQgMi4yODU3MiAxMS43MTI5IDIuMjY3NTJMMTAuNzk2NiAxLjQyNzUyWk05LjA1Mjg2IDAuNzQyNTIyQzkuMzcxNzYgMC40MjM2MzggOS44MDE0NSAwLjI0MDE3NCAxMC4yNTIzIDAuMjMwMzkzQzEwLjcwMzIgMC4yMjA2MTEgMTEuMTQwNCAwLjM4NTI2OCAxMS40NzI5IDAuNjkwMDIyTDEyLjM4OTEgMS41MzEyN0MxMi42NjI5IDEuNzgxMjcgMTIuNzM5MSAyLjEyMjUyIDEyLjcxNDEgMi40MTM3N0MxMi42ODc5IDIuNzAxMjcgMTIuNTYxNiAyLjk4MjUyIDEyLjM2NjYgMy4xOTM3N0MxMi4yNDQ2IDMuMzI2OSAxMi4xNDk5IDMuNDgyNzYgMTIuMDg4MSAzLjY1MjQ2QzEyLjAyNjMgMy44MjIxNiAxMS45OTg1IDQuMDAyMzcgMTIuMDA2NCA0LjE4MjgxQzEyLjAxNDIgNC4zNjMyNSAxMi4wNTc1IDQuNTQwMzcgMTIuMTMzOCA0LjcwNDA3QzEyLjIxMDEgNC44Njc3OCAxMi4zMTc5IDUuMDE0ODUgMTIuNDUxIDUuMTM2OUMxMi41ODQxIDUuMjU4OTQgMTIuNzQgNS4zNTM1OCAxMi45MDk3IDUuNDE1MzlDMTMuMDc5NCA1LjQ3NzIgMTMuMjU5NiA1LjUwNDk4IDEzLjQ0IDUuNDk3MTRDMTMuNjIwNSA1LjQ4OTMxIDEzLjc5NzYgNS40NDYwMSAxMy45NjEzIDUuMzY5NzJDMTQuMTI1IDUuMjkzNDQgMTQuMjcyMSA1LjE4NTY1IDE0LjM5NDEgNS4wNTI1MkMxNC41ODc5IDQuODQwMDIgMTQuODU2NiA0LjY5MDAyIDE1LjE0MDQgNC42Mzg3N0MxNS4zMDA0IDQuNjA2NjUgMTUuNDY1NiA0LjYxMjE4IDE1LjYyMzEgNC42NTQ5MkMxNS43ODA2IDQuNjk3NjUgMTUuOTI2IDQuNzc2NDMgMTYuMDQ3OSA0Ljg4NTAyTDE3LjE1NjYgNS45MDEyN0MxNy4zMjczIDYuMDU3OSAxNy40NjUyIDYuMjQ2ODcgMTcuNTYyMyA2LjQ1NzJDMTcuNjU5NCA2LjY2NzU0IDE3LjcxMzggNi44OTUwNyAxNy43MjIzIDcuMTI2NThDMTcuNzMwOCA3LjM1ODA5IDE3LjY5MzIgNy41ODg5OSAxNy42MTE4IDcuODA1ODdDMTcuNTMwMyA4LjAyMjc2IDE3LjQwNjYgOC4yMjEzMSAxNy4yNDc5IDguMzkwMDJMOS4wMDAzNiAxNy4xNTVDOC44Mzk3NSAxNy4zMjU3IDguNjQ2NDkgMTcuNDYyNCA4LjQzMjA2IDE3LjU1NjlDOC4yMTc2MyAxNy42NTE1IDcuOTg2MzggMTcuNzAyIDcuNzUyMDUgMTcuNzA1NUM3LjUxNzcxIDE3LjcwOSA3LjI4NTA2IDE3LjY2NTQgNy4wNjc5IDE3LjU3NzNDNi44NTA3NCAxNy40ODkyIDYuNjUzNDkgMTcuMzU4MyA2LjQ4Nzg2IDE3LjE5MjVMNS4zNTc4NiAxNi4wNjI1QzQuOTI0MTEgMTUuNjI4OCA1LjAyOTExIDE1LjAwMzggNS4yNzQxMSAxNC42Mzc1QzUuNDQ5ODggMTQuMzczMSA1LjUyODcxIDE0LjA1NTkgNS40OTcyIDEzLjc0QzUuNDY1NjkgMTMuNDI0IDUuMzI1NzkgMTMuMTI4NyA1LjEwMTI1IDEyLjkwNDFDNC44NzY3MiAxMi42Nzk2IDQuNTgxMzkgMTIuNTM5NyA0LjI2NTQyIDEyLjUwODJDMy45NDk0NSAxMi40NzY3IDMuNjMyMzEgMTIuNTU1NSAzLjM2Nzg2IDEyLjczMTNDMi45OTkxMSAxMi45NzUgMi4zNzUzNiAxMy4wOCAxLjk0MTYxIDEyLjY0NUwwLjc4NDExMSAxMS40ODc1QzAuNjIxNTg5IDExLjMyNSAwLjQ5MjY2OSAxMS4xMzIxIDAuNDA0NzEyIDEwLjkxOThDMC4zMTY3NTUgMTAuNzA3NCAwLjI3MTQ4NCAxMC40Nzk4IDAuMjcxNDg0IDEwLjI1QzAuMjcxNDg0IDEwLjAyMDIgMC4zMTY3NTUgOS43OTI2MiAwLjQwNDcxMiA5LjU4MDI5QzAuNDkyNjY5IDkuMzY3OTUgMC42MjE1ODkgOS4xNzUwMyAwLjc4NDExMSA5LjAxMjUyTDkuMDUyODYgMC43NDI1MjJaXCIgZmlsbD1cIiM2NjcwODVcIi8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk0xMC43OTY2IDEuNDI3NTJDMTAuNjU0MSAxLjI5NjgxIDEwLjQ2NjcgMS4yMjYxNyAxMC4yNzMzIDEuMjMwMzdDMTAuMDggMS4yMzQ1NiA5Ljg5NTggMS4zMTMyNSA5Ljc1OTExIDEuNDUwMDJMMS40ODkxMSA5LjcyMDAyQzEuNDE5MzggOS43ODk2OCAxLjM2NDA2IDkuODcyMzkgMS4zMjYzMiA5Ljk2MzQ0QzEuMjg4NTcgMTAuMDU0NSAxLjI2OTE1IDEwLjE1MjEgMS4yNjkxNSAxMC4yNTA2QzEuMjY5MTUgMTAuMzQ5MiAxLjI4ODU3IDEwLjQ0NjggMS4zMjYzMiAxMC41Mzc5QzEuMzY0MDYgMTAuNjI4OSAxLjQxOTM4IDEwLjcxMTYgMS40ODkxMSAxMC43ODEzTDIuNjQ2NjEgMTEuOTM4OEMyLjY1NjMyIDExLjk0MTggMi42NjY0NyAxMS45NDMgMi42NzY2MSAxMS45NDI1QzIuNzE0MTEgMTEuOTQyNSAyLjc2NDExIDExLjkyODggMi44MTE2MSAxMS44OTc1QzMuMjY4NDUgMTEuNTkyNyAzLjgxNjggMTEuNDU1NyA0LjM2MzMxIDExLjUwOTdDNC45MDk4MyAxMS41NjM3IDUuNDIwNzMgMTEuODA1NSA1LjgwOTA1IDEyLjE5MzhDNi4xOTczOCAxMi41ODIyIDYuNDM5MTMgMTMuMDkzMSA2LjQ5MzE2IDEzLjYzOTZDNi41NDcxOCAxNC4xODYxIDYuNDEwMTQgMTQuNzM0NCA2LjEwNTM2IDE1LjE5MTNDNi4wNzc5MiAxNS4yMzExIDYuMDYyMzEgMTUuMjc3OSA2LjA2MDM2IDE1LjMyNjNDNi4wNjAzNiAxNS4zNDI1IDYuMDYyODYgMTUuMzUxMyA2LjA2NDExIDE1LjM1NUw3LjE5NDExIDE2LjQ4NjNDNy4yNjUxMiAxNi41NTc0IDcuMzQ5NzEgMTYuNjEzNiA3LjQ0Mjg1IDE2LjY1MTRDNy41MzU5OSAxNi42ODkyIDcuNjM1NzkgMTYuNzA3OSA3LjczNjMgMTYuNzA2NEM3LjgzNjgyIDE2LjcwNDkgNy45MzYgMTYuNjgzMiA4LjAyNzk2IDE2LjY0MjZDOC4xMTk5MiAxNi42MDIgOC4yMDI3OCAxNi41NDMzIDguMjcxNjEgMTYuNDdMMTYuNTIwNCA3LjcwNTAyQzE2LjU4ODMgNy42MzI2NyAxNi42NDEyIDcuNTQ3NTUgMTYuNjc2IDcuNDU0NkMxNi43MTA4IDcuMzYxNjUgMTYuNzI2OCA3LjI2MjcyIDE2LjcyMzEgNy4xNjM1NEMxNi43MTkzIDcuMDY0MzYgMTYuNjk2IDYuOTY2OTEgMTYuNjU0MyA2Ljg3NjgzQzE2LjYxMjYgNi43ODY3NSAxNi41NTM1IDYuNzA1ODMgMTYuNDgwNCA2LjYzODc3TDE1LjM3MjkgNS42MjI1MkgxNS4zNjkxQzE1LjM1MTQgNS42MTkwMiAxNS4zMzMxIDUuNjE5MDIgMTUuMzE1NCA1LjYyMjUyQzE1LjI0NDggNS42MzcyMiAxNS4xODA2IDUuNjczNDggMTUuMTMxNiA1LjcyNjI3QzE0LjkyMjcgNS45NjMwNSAxNC42Njg3IDYuMTU1NzkgMTQuMzg0NSA2LjI5MzIzQzE0LjEwMDIgNi40MzA2NyAxMy43OTE0IDYuNTEwMDUgMTMuNDc2MSA2LjUyNjczQzEzLjE2MDggNi41NDM0MSAxMi44NDUzIDYuNDk3MDQgMTIuNTQ4MSA2LjM5MDM1QzEyLjI1MSA2LjI4MzY2IDExLjk3OCA2LjExODc5IDExLjc0NTMgNS45MDUzN0MxMS41MTI2IDUuNjkxOTUgMTEuMzI0OCA1LjQzNDI4IDExLjE5MjkgNS4xNDc0MkMxMS4wNjEgNC44NjA1NSAxMC45ODc2IDQuNTUwMjcgMTAuOTc3IDQuMjM0N0MxMC45NjY0IDMuOTE5MTMgMTEuMDE4OCAzLjYwNDYyIDExLjEzMTIgMy4zMDk1NkMxMS4yNDM2IDMuMDE0NDkgMTEuNDEzNyAyLjc0NDgxIDExLjYzMTYgMi41MTYyN0MxMS42Nzk3IDIuNDYyNjQgMTEuNzA5OCAyLjM5NTM1IDExLjcxNzkgMi4zMjM3N0MxMS43MjAxIDIuMzA0ODggMTEuNzE4NCAyLjI4NTcyIDExLjcxMjkgMi4yNjc1MkwxMC43OTY2IDEuNDI3NTJaTTkuMDUyODYgMC43NDI1MjJDOS4zNzE3NiAwLjQyMzYzOCA5LjgwMTQ1IDAuMjQwMTc0IDEwLjI1MjMgMC4yMzAzOTNDMTAuNzAzMiAwLjIyMDYxMSAxMS4xNDA0IDAuMzg1MjY4IDExLjQ3MjkgMC42OTAwMjJMMTIuMzg5MSAxLjUzMTI3QzEyLjY2MjkgMS43ODEyNyAxMi43MzkxIDIuMTIyNTIgMTIuNzE0MSAyLjQxMzc3QzEyLjY4NzkgMi43MDEyNyAxMi41NjE2IDIuOTgyNTIgMTIuMzY2NiAzLjE5Mzc3QzEyLjI0NDYgMy4zMjY5IDEyLjE0OTkgMy40ODI3NiAxMi4wODgxIDMuNjUyNDZDMTIuMDI2MyAzLjgyMjE2IDExLjk5ODUgNC4wMDIzNyAxMi4wMDY0IDQuMTgyODFDMTIuMDE0MiA0LjM2MzI1IDEyLjA1NzUgNC41NDAzNyAxMi4xMzM4IDQuNzA0MDdDMTIuMjEwMSA0Ljg2Nzc4IDEyLjMxNzkgNS4wMTQ4NSAxMi40NTEgNS4xMzY5QzEyLjU4NDEgNS4yNTg5NCAxMi43NCA1LjM1MzU4IDEyLjkwOTcgNS40MTUzOUMxMy4wNzk0IDUuNDc3MiAxMy4yNTk2IDUuNTA0OTggMTMuNDQgNS40OTcxNEMxMy42MjA1IDUuNDg5MzEgMTMuNzk3NiA1LjQ0NjAxIDEzLjk2MTMgNS4zNjk3MkMxNC4xMjUgNS4yOTM0NCAxNC4yNzIxIDUuMTg1NjUgMTQuMzk0MSA1LjA1MjUyQzE0LjU4NzkgNC44NDAwMiAxNC44NTY2IDQuNjkwMDIgMTUuMTQwNCA0LjYzODc3QzE1LjMwMDQgNC42MDY2NSAxNS40NjU2IDQuNjEyMTggMTUuNjIzMSA0LjY1NDkyQzE1Ljc4MDYgNC42OTc2NSAxNS45MjYgNC43NzY0MyAxNi4wNDc5IDQuODg1MDJMMTcuMTU2NiA1LjkwMTI3QzE3LjMyNzMgNi4wNTc5IDE3LjQ2NTIgNi4yNDY4NyAxNy41NjIzIDYuNDU3MkMxNy42NTk0IDYuNjY3NTQgMTcuNzEzOCA2Ljg5NTA3IDE3LjcyMjMgNy4xMjY1OEMxNy43MzA4IDcuMzU4MDkgMTcuNjkzMiA3LjU4ODk5IDE3LjYxMTggNy44MDU4N0MxNy41MzAzIDguMDIyNzYgMTcuNDA2NiA4LjIyMTMxIDE3LjI0NzkgOC4zOTAwMkw5LjAwMDM2IDE3LjE1NUM4LjgzOTc1IDE3LjMyNTcgOC42NDY0OSAxNy40NjI0IDguNDMyMDYgMTcuNTU2OUM4LjIxNzYzIDE3LjY1MTUgNy45ODYzOCAxNy43MDIgNy43NTIwNSAxNy43MDU1QzcuNTE3NzEgMTcuNzA5IDcuMjg1MDYgMTcuNjY1NCA3LjA2NzkgMTcuNTc3M0M2Ljg1MDc0IDE3LjQ4OTIgNi42NTM0OSAxNy4zNTgzIDYuNDg3ODYgMTcuMTkyNUw1LjM1Nzg2IDE2LjA2MjVDNC45MjQxMSAxNS42Mjg4IDUuMDI5MTEgMTUuMDAzOCA1LjI3NDExIDE0LjYzNzVDNS40NDk4OCAxNC4zNzMxIDUuNTI4NzEgMTQuMDU1OSA1LjQ5NzIgMTMuNzRDNS40NjU2OSAxMy40MjQgNS4zMjU3OSAxMy4xMjg3IDUuMTAxMjUgMTIuOTA0MUM0Ljg3NjcyIDEyLjY3OTYgNC41ODEzOSAxMi41Mzk3IDQuMjY1NDIgMTIuNTA4MkMzLjk0OTQ1IDEyLjQ3NjcgMy42MzIzMSAxMi41NTU1IDMuMzY3ODYgMTIuNzMxM0MyLjk5OTExIDEyLjk3NSAyLjM3NTM2IDEzLjA4IDEuOTQxNjEgMTIuNjQ1TDAuNzg0MTExIDExLjQ4NzVDMC42MjE1ODkgMTEuMzI1IDAuNDkyNjY5IDExLjEzMjEgMC40MDQ3MTIgMTAuOTE5OEMwLjMxNjc1NSAxMC43MDc0IDAuMjcxNDg0IDEwLjQ3OTggMC4yNzE0ODQgMTAuMjVDMC4yNzE0ODQgMTAuMDIwMiAwLjMxNjc1NSA5Ljc5MjYyIDAuNDA0NzEyIDkuNTgwMjlDMC40OTI2NjkgOS4zNjc5NSAwLjYyMTU4OSA5LjE3NTAzIDAuNzg0MTExIDkuMDEyNTJMOS4wNTI4NiAwLjc0MjUyMlpcIiBzdHJva2U9XCIjNjY3MDg1XCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPiB7e2Nsb3NlZC50aWNrZXRJZH19IDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50cmUganVzdGlmeS1jb250ZW50LWNlbnRyZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjbG9zZWQ/LnRpY2tldFR5cGUgPT09ICdyZWZyZXNodGlja2V0J1wiPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMTdcIiBoZWlnaHQ9XCIxNFwiIHZpZXdCb3g9XCIwIDAgMTcgMTRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZD1cIk01Ljk0NjAyIDQuOTg4ODFMMi42NjYwMiA2LjMzODgxTDIuMDA2MDIgNi4wNzg4MUwwLjY2NjAxNiAyLjgzODgxTDEuNTg2MDIgMi40NTg4MUwyLjM5NjAyIDQuNDA4ODFDMi45Mzk3NyAzLjA0ODAxIDMuOTI4NzIgMS45MTE2OSA1LjIwMTQ1IDEuMTg1MzJDNi40NzQxOSAwLjQ1ODk1MSA3Ljk1NTU0IDAuMTg1NDI2IDkuNDAzNzUgMC40MDkzODdDMTAuODUyIDAuNjMzMzQ5IDEyLjE4MTUgMS4zNDE1NyAxMy4xNzU0IDIuNDE4NDZDMTQuMTY5MiAzLjQ5NTM1IDE0Ljc2ODcgNC44NzczMiAxNC44NzYgNi4zMzg4MUgxMy44NzZDMTMuNzYxNiA1LjA5MDA4IDEzLjIyMjQgMy45MTgzNiAxMi4zNDg0IDMuMDE5MTlDMTEuNDc0MyAyLjEyMDAzIDEwLjMxODQgMS41NDc4MSA5LjA3MzQgMS4zOTgwNEM3LjgyODQyIDEuMjQ4MjYgNi41Njk3MyAxLjUzIDUuNTA3MzkgMi4xOTYyMkM0LjQ0NTA1IDIuODYyNDQgMy42NDMzMiAzLjg3Mjg0IDMuMjM2MDIgNS4wNTg4MUw1LjU1NjAyIDQuMDU4ODFMNS45NDYwMiA0Ljk4ODgxWk0xNC44MDYgNy42Njg4MUwxNi4xNDYgMTAuODk4OEwxNS4yMjYgMTEuMzM4OEwxNC40MDYgOS4zMzg4MUMxMy44NTggMTAuNzA0OSAxMi44NjE4IDExLjg0NDIgMTEuNTgxIDEyLjU2OTZDMTAuMzAwMSAxMy4yOTUgOC44MTA3NyAxMy41NjM0IDcuMzU3MjggMTMuMzMwOUM1LjkwMzggMTMuMDk4MyA0LjU3MjU1IDEyLjM3ODYgMy41ODIgMTEuMjg5OEMyLjU5MTQ1IDEwLjIwMDkgMi4wMDA0NiA4LjgwNzc1IDEuOTA2MDIgNy4zMzg4MUgyLjkwNjAyVjYuODM4ODFDMi45MDg4MiA4LjEyNjI3IDMuMzY0MDIgOS4zNzE4IDQuMTkyMDMgMTAuMzU3N0M1LjAyMDA1IDExLjM0MzYgNi4xNjgyMSAxMi4wMDcxIDcuNDM1ODQgMTIuMjMyMkM4LjcwMzQ2IDEyLjQ1NzQgMTAuMDA5OSAxMi4yMjk5IDExLjEyNjggMTEuNTg5NUMxMi4yNDM3IDEwLjk0OTEgMTMuMSA5LjkzNjU1IDEzLjU0NiA4LjcyODgxTDExLjI5NiA5LjY1ODgxTDEwLjkwNiA4LjczODgxTDE0LjE1NiA3LjM4ODgxTDE0LjgwNiA3LjY2ODgxWlwiIGZpbGw9XCIjOThBMkIzXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNOC40MDYyNSA3LjU0MDA0QzguOTU4NTMgNy41NDAwNCA5LjQwNjI1IDcuMDkyMzIgOS40MDYyNSA2LjU0MDA0QzkuNDA2MjUgNS45ODc3NSA4Ljk1ODUzIDUuNTQwMDQgOC40MDYyNSA1LjU0MDA0QzcuODUzOTcgNS41NDAwNCA3LjQwNjI1IDUuOTg3NzUgNy40MDYyNSA2LjU0MDA0QzcuNDA2MjUgNy4wOTIzMiA3Ljg1Mzk3IDcuNTQwMDQgOC40MDYyNSA3LjU0MDA0WlwiIGZpbGw9XCIjOThBMkIzXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJjbG9zZWQ/Lmlzc3VlU3RhdHVzICE9PSAnbm90aWRlbnRpZmllZCdcIiBjbGFzcz1cIm1zLTNcIj48c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjE2XCIgaGVpZ2h0PVwiMTZcIiB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzM4MjdfMTIwNjEpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTcuMjAwNjUgMTAuMzMzM0g5LjE1NjIxVjEyLjMzMzNINy4yMDA2NVYxMC4zMzMzWk05LjE1NjIxIDQuMzMzMjdINy4yMDA2NVY5LjMzMzI2SDkuMTU2MjFWNC4zMzMyN1pNMTAuNjIyOSA1LjgzMzI3TDkuNjQ1MSA2LjgzMzI3TDEyLjA4OTUgOS4zMzMyNkwxNi4wMDA3IDQuODMzMjdMMTUuMDIyOSAzLjgzMzI3TDEyLjA4OTUgNy4zMzMyNkwxMC42MjI5IDUuODMzMjdaTTguMTc4NDMgMTQuMDMzM0M2LjcwMTA4IDE0LjAzMDYgNS4yODQ5OSAxMy40MjkyIDQuMjQwMzQgMTIuMzYwOEMzLjE5NTcgMTEuMjkyNSAyLjYwNzY4IDkuODQ0MTggMi42MDUxIDguMzMzMjZDMi42MDUxIDUuMTkzMjcgNS4xMDgyMSAyLjYzMzI3IDguMTc4NDMgMi42MzMyN0M5Ljk2Nzc2IDIuNjMzMjcgMTEuNTUxOCAzLjUxMzI3IDEyLjU3ODQgNC44MzMyN0wxMy40NzggMy45MTMyN0MxMi44Mzk1IDMuMTA1MzQgMTIuMDMxOSAyLjQ1NDE1IDExLjExNDcgMi4wMDc2NUMxMC4xOTc2IDEuNTYxMTUgOS4xOTQxOSAxLjMzMDcgOC4xNzg0MyAxLjMzMzI3QzQuNDA0MjEgMS4zMzMyNyAxLjMzMzk4IDQuNDczMjcgMS4zMzM5OCA4LjMzMzI2QzEuMzMzOTggMTIuMTkzMyA0LjQwNDIxIDE1LjMzMzMgOC4xNzg0MyAxNS4zMzMzQzExLjk1MjcgMTUuMzMzMyAxNS4wMjI5IDEyLjE5MzMgMTUuMDIyOSA4LjMzMzI2TDEzLjUzNjcgOS44NTMyNkMxMi44OTEzIDEyLjI2MzMgMTAuNzQwMiAxNC4wNDMzIDguMTc4NDMgMTQuMDQzM1YxNC4wMzMzWlwiIGZpbGw9XCIjOThBMkIzXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8zODI3XzEyMDYxXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIxNlwiIGhlaWdodD1cIjE2XCIgZmlsbD1cIndoaXRlXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWNsb3NlZC5pc09wZW5cIiAoY2xpY2spPVwic2VsZWN0VmlldygkZXZlbnQsaW5kZXgsJ2Nsb3NlZCcpXCIgY2xhc3M9XCJtcy0zXCI+IDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjFcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjEgMjBcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTMuMTY2IDIuNUgxOC4xNjZNMTguMTY2IDIuNVY3LjVNMTguMTY2IDIuNUwxMi4zMzI3IDguMzMzMzNNOC4xNjYwMiAxNy41SDMuMTY2MDJNMy4xNjYwMiAxNy41VjEyLjVNMy4xNjYwMiAxNy41TDguOTk5MzUgMTEuNjY2N1wiIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIxLjY2NjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhY2xvc2VkLmlzT3BlbiAmJiBjbG9zZWQ/Lm5vdGlmaWNhdGlvblwiIGNsYXNzPVwicHJvZmlsZSBkLWZsZXggYWxpZ24taXRlbXMtY2VudHJlIGp1c3RpZnktY29udGVudC1jZW50cmUgbXMtM1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgY2xhc3M9XCJcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvQmVsbG5vdGlmaWNhdGlvbi5wbmdcIiBhbHQ9XCJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPGltZyAqbmdJZj1cImNhcmRWaWV3XCIgY2xhc3M9XCJwcm9maWxlIG1zLTNcIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvZ3JvcG1vZGFsLnBuZ1wiIGFsdD1cIlwiPiAtLT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInN0YXR1c0Nsb3NlZD8ubGVuZ3RoID09PSAwIHx8ICFub0RhdGEgJiYgIWxvYWRpbmdcIiBjbGFzcz1cInctMTAwIG10LTEwIG1iLTEwIG1oLTYwdmggZC1ncmlkIHRleHQtY2VudGVyIG14LWF1dG9cIj4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cIm14LWF1dG9cIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvdGFrZXRpY2tldC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRha2V0aWNrZXQgbXQtNSBmdy1ib2xkXCI+Tm8gQ2xvc2VkIFRpY2tldHM8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2FkaW5nPy5jbG9zZWRcIiA+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGxvYWRlciAgZC1mbGV4IGp1c3RpZnktY29udGVudC1jZW50ZXIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm5vRGF0YT8uY2xvc2VkXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IHJvd2JvZHlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTEyIG1iLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNhcmQtYm9keSBtaC02MHZoIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlciBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBjbGFzcz1cIm14LWF1dG9cIiBzcmM9XCIuL2Fzc2V0cy90YW5nby9JbWFnZXMvdGFrZXRpY2tldC5zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0YWtldGlja2V0IG10LTUgZnctYm9sZFwiPk5vIENsb3NlZCBUaWNrZXRzIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+IFxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PiBcclxuPC9kaXY+XHJcbjxkaXYgKm5nSWY9XCJ1c2VyRGF0YSA9PT0gJ0hpc3RvcnknXCI+XHJcbjxkaXYgKm5nSWY9XCJ0eXBlID09PSAnaW5zdGFsbGF0aW9uJyB8fCB0eXBlID09PSAnaW5mcmEnIHx8IHR5cGUgPT09ICdkYXRhTWlzbWF0Y2gnXCIgY2xhc3M9XCJjYXJkLWJvZHlcIj5cclxuICAgPGRpdiAqbmdJZj1cIiFoaXN0b3J5TG9hZGluZyAmJiAhaGlzdG9yeU5vZGF0YVwiPlxyXG4gICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJlc3BvbnNpdmVcIj5cclxuICAgICAgICAgICAgPHRhYmxlIGNsYXNzPVwidGFibGUgYm90dG9tLWJvcmRlciB0ZXh0LW5vd3JhcFwiPlxyXG4gICAgICAgICAgICAgICAgPHRoZWFkPlxyXG4gICAgICAgICAgICAgICAgICAgIDx0cj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdpc3N1ZURhdGUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQ3JlYXRlZCBvblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2lzc3VlRGF0ZScgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gLTEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgndGlja2V0SWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgVGlja2V0IElEXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICd0aWNrZXRJZCcgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICd0aWNrZXRJZCcgXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ3RpY2tldElkJyAmJiBzb3J0QnkgIT09IDEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3RpY2tldElkJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAndGlja2V0SWQnICYmIHNvcnRCeSAhPT0gLTEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnY2xpZW50TmFtZScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBCcmFuZCBOYW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnROYW1lJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2NsaWVudE5hbWUnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxLjMzMzM3VjEwLjY2NjdNNi4wMDAxNiAxMC42NjY3TDEwLjY2NjggNi4wMDAwNE02LjAwMDE2IDEwLjY2NjdMMS4zMzM1IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2NsaWVudE5hbWUnICYmIHNvcnRCeSAhPT0gMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnY2xpZW50TmFtZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2NsaWVudE5hbWUnICYmIHNvcnRCeSAhPT0gLTEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aD48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnY2xpZW50SWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQnJhbmQgSURcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2NsaWVudElkJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2NsaWVudElkJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnRJZCcgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdjbGllbnRJZCcgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2NsaWVudElkJyAmJiBzb3J0QnkgIT09IC0xID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ3N0b3JlTmFtZScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdG9yZSBOYW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdzdG9yZU5hbWUnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnc3RvcmVOYW1lJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdzdG9yZU5hbWUnICYmIHNvcnRCeSAhPT0gMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVOYW1lJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVOYW1lJyAmJiBzb3J0QnkgIT09IC0xID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGg+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ3N0b3JlSWQnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgU3RvcmUgSURcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ3N0b3JlSWQnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnc3RvcmVJZCdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVJZCcgJiYgc29ydEJ5ICE9PSAxID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdzdG9yZUlkJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnc3RvcmVJZCcgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoICpuZ0lmPVwidHlwZSA9PT0gJ2luZnJhJyB8fCB0eXBlID09PSdpbnN0YWxsYXRpb24nXCI+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ2lzc3VlRGF0ZScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBJc3N1ZSBJZGVudGlmaWVkIG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gMSB8fCBzb3J0Q29sdW1OYW1lICE9PSAnaXNzdWVEYXRlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpc3N1ZURhdGUnICYmIHNvcnRCeSAhPT0gMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IC0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IC0xID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJ0eXBlID09PSAnZGF0YU1pc21hdGNoJ1wiPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdpc3N1ZURhdGUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgSXNzdWUgZGF0ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2lzc3VlRGF0ZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVEYXRlJyAmJiBzb3J0QnkgIT09IDEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlRGF0ZScgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRoPjxkaXYgKGNsaWNrKT1cInNvcnREYXRhKCdpc3N1ZUNsb3NlZERhdGUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2xvc2VkIG9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVDbG9zZWREYXRlJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2lzc3VlQ2xvc2VkRGF0ZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjEyXCIgaGVpZ2h0PVwiMTJcIiB2aWV3Qm94PVwiMCAwIDEyIDEyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVDbG9zZWREYXRlJyAmJiBzb3J0QnkgIT09IDEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlQ2xvc2VkRGF0ZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNi4wMDAxNiAxMC42NjY3TDYuMDAwMTYgMS4zMzMzN002LjAwMDE2IDEuMzMzMzdMMS4zMzM1IDYuMDAwMDRNNi4wMDAxNiAxLjMzMzM3TDEwLjY2NjggNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlQ2xvc2VkRGF0ZScgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGggKm5nSWY9XCJ0eXBlID09PSAnaW5mcmEnIHx8IHR5cGUgPT09J2luc3RhbGxhdGlvbidcIj48ZGl2IChjbGljayk9XCJzb3J0RGF0YSgnaW5mcmFJc3N1ZScpXCI+SXNzdWUgVHlwZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnaW5mcmFJc3N1ZScgJiYgc29ydEJ5ICE9PSAxIHx8IHNvcnRDb2x1bU5hbWUgIT09ICdpbmZyYUlzc3VlJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMS4zMzMzN1YxMC42NjY3TTYuMDAwMTYgMTAuNjY2N0wxMC42NjY4IDYuMDAwMDRNNi4wMDAxNiAxMC42NjY3TDEuMzMzNSA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpbmZyYUlzc3VlJyAmJiBzb3J0QnkgIT09IDEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2luZnJhSXNzdWUnICYmIHNvcnRCeSAhPT0gLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEwLjY2NjdMNi4wMDAxNiAxLjMzMzM3TTYuMDAwMTYgMS4zMzMzN0wxLjMzMzUgNi4wMDAwNE02LjAwMDE2IDEuMzMzMzdMMTAuNjY2OCA2LjAwMDA0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlXT1cInNvcnRDb2x1bU5hbWUgPT09ICdpbmZyYUlzc3VlJyAmJiBzb3J0QnkgIT09IC0xID8gJyMwMEEzRkYnIDogJyM2NjcwODUnXCIgc3Ryb2tlLXdpZHRoPVwiMS4zMzMzM1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0aCAqbmdJZj1cInR5cGUgPT09ICdkYXRhTWlzbWF0Y2gnXCI+PGRpdiAoY2xpY2spPVwic29ydERhdGEoJ2lzc3VlVHlwZScpXCI+SXNzdWUgVHlwZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVUeXBlJyAmJiBzb3J0QnkgIT09IDEgfHwgc29ydENvbHVtTmFtZSAhPT0gJ2lzc3VlVHlwZSdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCIxMlwiIHZpZXdCb3g9XCIwIDAgMTIgMTJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggZD1cIk02LjAwMDE2IDEuMzMzMzdWMTAuNjY2N002LjAwMDE2IDEwLjY2NjdMMTAuNjY2OCA2LjAwMDA0TTYuMDAwMTYgMTAuNjY2N0wxLjMzMzUgNi4wMDAwNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZV09XCJzb3J0Q29sdW1OYW1lID09PSAnaXNzdWVUeXBlJyAmJiBzb3J0QnkgIT09IDEgPyAnIzAwQTNGRicgOiAnIzY2NzA4NSdcIiBzdHJva2Utd2lkdGg9XCIxLjMzMzMzXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlVHlwZScgJiYgc29ydEJ5ICE9PSAtMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIxMlwiIGhlaWdodD1cIjEyXCIgdmlld0JveD1cIjAgMCAxMiAxMlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTYuMDAwMTYgMTAuNjY2N0w2LjAwMDE2IDEuMzMzMzdNNi4wMDAxNiAxLjMzMzM3TDEuMzMzNSA2LjAwMDA0TTYuMDAwMTYgMS4zMzMzN0wxMC42NjY4IDYuMDAwMDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2VdPVwic29ydENvbHVtTmFtZSA9PT0gJ2lzc3VlVHlwZScgJiYgc29ydEJ5ICE9PSAtMSA/ICcjMDBBM0ZGJyA6ICcjNjY3MDg1J1wiIHN0cm9rZS13aWR0aD1cIjEuMzMzMzNcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RoPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvdHI+XHJcbiAgICAgICAgICAgICAgICA8L3RoZWFkPlxyXG4gICAgICAgICAgICAgICAgPHRib2R5PlxyXG4gICAgICAgICAgICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgaGlzdG9yeSBvZiB3b3JrSGlzdG9yeVRhYmxlIDsgbGV0IGkgPSBpbmRleFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+e3toaXN0b3J5Py5pc3N1ZURhdGV8Y3VzdG9tRGF0ZUZvcm1hdH19PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8udGlja2V0SWQgPyBoaXN0b3J5Py50aWNrZXRJZCA6Jy0tJ319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZ3JpZCBtcy0zIGN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cInJvdXRldG9UaWNrZXQoaGlzdG9yeSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtcHJpbWFyeSBtYi0xIHRleHQtY2FwaXRhbGl6ZVwiPnt7aGlzdG9yeT8uY2xpZW50TmFtZSA/IGhpc3Rvcnk/LmNsaWVudE5hbWUgOiAnLS0nfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICB7e2hpc3Rvcnk/LmNsaWVudElkID8gaGlzdG9yeT8uY2xpZW50SWQgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3RkPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8dGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1ncmlkIG1zLTMgY3Vyc29yLXBvaW50ZXJcIiAoY2xpY2spPVwicm91dGV0b1RpY2tldChoaXN0b3J5KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1wcmltYXJ5IG1iLTFcIj57e2hpc3Rvcnk/LnN0b3JlTmFtZSA/IGhpc3Rvcnk/LnN0b3JlTmFtZSA6Jy0tJ319PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7aGlzdG9yeT8uc3RvcmVJZCA/IGhpc3Rvcnk/LnN0b3JlSWQgOictLSd9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgPC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwidHlwZSA9PT0gJ2luZnJhJyB8fCB0eXBlID09PSdpbnN0YWxsYXRpb24nXCI+e3toaXN0b3J5Py5pc3N1ZUlkZW50aWZpZWREYXRlPyhoaXN0b3J5Py5pc3N1ZUlkZW50aWZpZWREYXRlIHxjdXN0b21EYXRlRm9ybWF0KTogJy0tJ319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkICpuZ0lmPVwidHlwZSA9PT0gJ2RhdGFNaXNtYXRjaCdcIj57e2hpc3Rvcnk/Lmlzc3VlRGF0ZT8oaGlzdG9yeT8uaXNzdWVEYXRlIHxjdXN0b21EYXRlRm9ybWF0KTogJy0tJ319PC90ZD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHRkPnt7aGlzdG9yeT8uaXNzdWVDbG9zZWREYXRlfGN1c3RvbURhdGVGb3JtYXR9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInR5cGUgPT09ICdpbmZyYScgfHwgdHlwZSA9PT0naW5zdGFsbGF0aW9uJ1wiPnt7aGlzdG9yeT8uaW5mcmFJc3N1ZSA/IGhpc3Rvcnk/LmluZnJhSXNzdWUgOictLSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDx0ZCAqbmdJZj1cInR5cGUgPT09ICdkYXRhTWlzbWF0Y2gnXCI+e3toaXN0b3J5Py5pc3N1ZVR5cGUgPyBoaXN0b3J5Py5pc3N1ZVR5cGUgOictLSd9fTwvdGQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC90cj5cclxuICAgICAgICAgICAgICAgIDwvdGJvZHk+XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgPC90YWJsZT4gICBcclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8bGliLXBhZ2luYXRpb24gW2l0ZW1zUGVyUGFnZV09XCJsaW1pdFwiIFtjdXJyZW50UGFnZV09XCJvZmZzZXRcIlxyXG4gICAgICAgICAgICAgICAgW3RvdGFsSXRlbXNdPVwid29ya0hpc3RvcnlUYWJsZS5jb3VudFwiIFtwYWdpbmF0aW9uU2l6ZXNdPVwiWzEwLDIwLDMwXVwiIFtwYWdlU2l6ZV09XCJsaW1pdFwiXHJcbiAgICAgICAgICAgICAgICAocGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCRldmVudClcIj48L2xpYi1wYWdpbmF0aW9uPlxyXG4gICA8L2Rpdj4gXHJcbiAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJoaXN0b3J5TG9hZGluZyAmJiAhaGlzdG9yeU5vZGF0YVwiID5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+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+XHJcbiAgICAgICAgICAgICA8bGliLXBhZ2luYXRpb24gW2l0ZW1zUGVyUGFnZV09XCJsaW1pdFwiIFtjdXJyZW50UGFnZV09XCJvZmZzZXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbdG90YWxJdGVtc109XCJ3b3JrSGlzdG9yeVRhYmxlLmNvdW50XCIgW3BhZ2luYXRpb25TaXplc109XCJbMTAsMjAsMzBdXCIgW3BhZ2VTaXplXT1cImxpbWl0XCJcclxuICAgICAgICAgICAgICAgICAgICAgKHBhZ2VDaGFuZ2UpPVwib25QYWdlQ2hhbmdlKCRldmVudClcIiAocGFnZVNpemVDaGFuZ2UpPVwib25QYWdlU2l6ZUNoYW5nZSgkZXZlbnQpXCI+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=
|
|
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
|