tango-app-ui-manage-tickets 3.7.0-beta.5 → 3.7.0-beta.6

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.
@@ -1 +1 @@
1
- {"version":3,"file":"tango-app-ui-manage-tickets.mjs","sources":["../../../projects/tango-manage-tickets/src/lib/services/ticket.service.ts","../../../projects/tango-manage-tickets/src/lib/components/add-csm-modal/add-csm-modal.component.ts","../../../projects/tango-manage-tickets/src/lib/components/add-csm-modal/add-csm-modal.component.html","../../../projects/tango-manage-tickets/src/lib/components/comment-model/comment-model.component.ts","../../../projects/tango-manage-tickets/src/lib/components/comment-model/comment-model.component.html","../../../projects/tango-manage-tickets/src/lib/services/excel.service.ts","../../../projects/tango-manage-tickets/src/lib/components/tickets/tickets.component.ts","../../../projects/tango-manage-tickets/src/lib/components/tickets/tickets.component.html","../../../projects/tango-manage-tickets/src/lib/components/re-trigger/re-trigger.component.ts","../../../projects/tango-manage-tickets/src/lib/components/re-trigger/re-trigger.component.html","../../../projects/tango-manage-tickets/src/lib/components/count/count.component.ts","../../../projects/tango-manage-tickets/src/lib/components/count/count.component.html","../../../projects/tango-manage-tickets/src/lib/components/audit-metrics/audit-metrics.component.ts","../../../projects/tango-manage-tickets/src/lib/components/audit-metrics/audit-metrics.component.html","../../../projects/tango-manage-tickets/src/lib/components/reactive-select/reactive-select.component.ts","../../../projects/tango-manage-tickets/src/lib/components/reactive-select/reactive-select.component.html","../../../projects/tango-manage-tickets/src/lib/components/group-select/group-select.component.ts","../../../projects/tango-manage-tickets/src/lib/components/group-select/group-select.component.html","../../../projects/tango-manage-tickets/src/lib/components/footfall-dic/footfall-dic.component.ts","../../../projects/tango-manage-tickets/src/lib/components/footfall-dic/footfall-dic.component.html","../../../projects/tango-manage-tickets/src/lib/components/tango-manage-tickets/tango-manage-tickets.component.ts","../../../projects/tango-manage-tickets/src/lib/components/tango-manage-tickets/tango-manage-tickets.component.html","../../../projects/tango-manage-tickets/src/lib/tango-manage-tickets-routing.module.ts","../../../projects/tango-manage-tickets/src/lib/components/audit-log/audit-log.component.ts","../../../projects/tango-manage-tickets/src/lib/components/audit-log/audit-log.component.html","../../../projects/tango-manage-tickets/src/lib/tango-manage-tickets.module.ts","../../../projects/tango-manage-tickets/src/public-api.ts","../../../projects/tango-manage-tickets/src/tango-app-ui-manage-tickets.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\r\nimport { Injectable, Optional } from '@angular/core';\r\nimport { GlobalStateService } from 'tango-app-ui-global';\r\nimport {\r\n BehaviorSubject,\r\n Observable,\r\n catchError,\r\n map,\r\n of,\r\n throwError,\r\n} from \"rxjs\";\r\nimport { HttpParams } from '@angular/common/http';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TicketService {\r\n userApiUrl: any;\r\n ticketsApiUrl: any;\r\n auditApiUrl:any;\r\n auditmetricApiUrl:any;\r\n zoneauditApiUrl:any;\r\n footfallDirapiUrl: any;\r\n footfallCDN:any;\r\n trafficApiUrl:any;\r\n dropDownTrigger = new BehaviorSubject<any>(null)\r\n constructor(private http: HttpClient, private gs: GlobalStateService) {\r\n this.gs.environment.subscribe((env) => {\r\n if (env) {\r\n this.userApiUrl = env.userApiUrl;\r\n this.ticketsApiUrl =env.ticketsApiUrl;\r\n this.auditmetricApiUrl = env.auditmetricApiUrl;\r\n this.auditApiUrl = env.auditApiUrl;\r\n this.zoneauditApiUrl = env.zoneauditApiUrl;\r\n this.footfallDirapiUrl= env.footfallDirapiUrl;\r\n this.footfallCDN =env.footfallCDN;\r\n this.trafficApiUrl =env.trafficApiUrl;\r\n }\r\n })\r\n }\r\n\r\n getUserList(params: any): Observable<any> {\r\n return this.http.post<any>(`${this.userApiUrl}/get-list`, params)\r\n }\r\n exportInstallationList(data:any){\r\n return this.http.post(`${this.ticketsApiUrl}/infra/installationTable`,data,{responseType: 'arraybuffer'})\r\n }\r\n exportInfraList(data:any){\r\n return this.http.post(`${this.ticketsApiUrl}/infra/infraTable`,data,{responseType: 'arraybuffer'})\r\n }\r\n exportMatList(data:any){\r\n return this.http.post(`${this.ticketsApiUrl}/infra/matTable`,data,{responseType: 'arraybuffer'})\r\n }\r\n getSotresList(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/storeFilter`, data)\r\n }\r\n\r\n getInstallationList(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/installationTable`, data)\r\n }\r\n\r\n getInfraList(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/infraTable`, data)\r\n }\r\n\r\n getAssignTicket(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/assignTicket`, data)\r\n }\r\n getMatList(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/matTable`, data)\r\n }\r\n \r\n updateTicketIssue(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/employeeTraning/updatecomment`, data)\r\n }\r\n\r\n getUserActiveList(params: any): Observable<any> {\r\n return this.http.post<any>(`${this.userApiUrl}/list`, params)\r\n }\r\n \r\n getDataMismathList(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/dataMismatchTable`, data)\r\n }\r\n exportDataMismatchList(data:any){\r\n return this.http.post(`${this.ticketsApiUrl}/infra/dataMismatchTable`,data,{responseType: 'arraybuffer'})\r\n }\r\n\r\n getAllCounts(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/allCounts`, data)\r\n }\r\n getstoreMetrics(data:any){\r\n return this.http.post(`${this.auditApiUrl}/metrics/store-metrics`,data)\r\n }\r\n getstoreMetricsExport(data:any){\r\n return this.http.post(`${this.auditApiUrl}/metrics/store-metrics`,data,{responseType: 'arraybuffer'})\r\n }\r\n getclientList(){\r\n return this.http.get(`${this.auditApiUrl}/clients`)\r\n }\r\n getuserList(){\r\n return this.http.get(`${this.auditApiUrl}/tango-users`)\r\n }\r\n auditretrigger(data:any){\r\n return this.http.post(`${this.auditApiUrl}/metrics/re-trigger`,data)\r\n }\r\n getstoreList(data:any){\r\n return this.http.post(`${this.auditApiUrl}/audit-stores`,data)\r\n }\r\n getAuditImages(data:any){\r\n return this.http.get(`${this.auditApiUrl}/audit-images?fileDate=${data?.fileDate}&storeId=${data?.storeId}&imageType=${data?.imageType}&export=${data?.export}&zoneName=${data?.zoneName}&moduleType=${data?.moduleType}`)\r\n }\r\n ExportAuditImagesasxlsx(data:any){\r\n return this.http.get(`${this.auditApiUrl}/audit-images?fileDate=${data?.fileDate}&storeId=${data?.storeId}&imageType=${data?.imageType}&export=${data?.export}&zoneName=${data?.zoneName}&moduleType=${data?.moduleType}`,{responseType:'arraybuffer'})\r\n }\r\n\r\n getTicketSummaryApi(client: any, fromDate: any, toDate: any): Observable<any> {\r\n return this.http.get(`${this.footfallDirapiUrl}/ticket-summary?clientId=${client}&fromDate=${fromDate}&toDate=${toDate}`);\r\n }\r\n\r\n getTicketListApi(client: any, fromDate: any, toDate: any, searchvalue:any, limit:any, offset:any, isExport:any,sortBy:any,sortOrder:any): Observable<any> {\r\n return this.http.get(`${this.footfallDirapiUrl}/ticket-list?clientId=${client}&fromDate=${fromDate}&toDate=${toDate}&searchValue=${searchvalue}&limit=${limit}&offset=${offset}&isExport=${isExport}&sortBy=${sortBy}&sortOrder=${sortOrder}`);\r\n }\r\n\r\n getTicketListExportApi(client: any, fromDate: any, toDate: any, searchvalue:any, limit:any, offset:any, isExport:any,sortBy:any,sortOrder:any): Observable<any> {\r\n return this.http.get(`${this.footfallDirapiUrl}/ticket-list?clientId=${client}&fromDate=${fromDate}&toDate=${toDate}&searchValue=${searchvalue}&limit=${limit}&offset=${offset}&isExport=${isExport}&sortBy=${sortBy}&sortOrder=${sortOrder}`,{responseType: 'arraybuffer'});\r\n }\r\n\r\n\r\n\r\ngetTicketsApi(store: any, fromDate: any, toDate: any, revopsType: any, status: any, action: any, offset: any, limit: any): Observable<any> {\r\n let params = new HttpParams()\r\n .set('storeId', store)\r\n .set('fromDate', fromDate)\r\n .set('toDate', toDate)\r\n .set('offset', offset)\r\n .set('limit', limit);\r\n if (revopsType) {\r\n params = params.set('revopsType', revopsType);\r\n }\r\n if (status) {\r\n params = params.set('status', status);\r\n }\r\n if (action) {\r\n params = params.set('action', action);\r\n }\r\n return this.http.get(`${this.footfallDirapiUrl}/get-tickets`, { params });\r\n}\r\n\r\ngetTaggedStoresApi(client: any, fromDate: any, toDate: any,searchValue:any, clusters: any): Observable<any> {\r\n let params = new HttpParams()\r\n .set('clientId', client)\r\n .set('fromDate', fromDate)\r\n .set('toDate', toDate); // Add searchValue as an empty string if not provided\r\n // Only add 'clusters' if it's not null, undefined, or an empty array/string\r\n if (searchValue) {\r\n params = params.set('searchValue', searchValue);\r\n }\r\n if (clusters && clusters.length > 0) {\r\n params = params.set('clusters', clusters);\r\n }\r\n return this.http.get(`${this.footfallDirapiUrl}/get-tagged-stores`, { params });\r\n}\r\n\r\n\r\ngetUpdateStatusApi(data:any): Observable<any> {\r\n const url = `${this.footfallDirapiUrl}/update-status`;\r\n return this.http.put(url, data);\r\n}\r\n getclusters(data: any) {\r\n return this.http.post(`${this.trafficApiUrl}/headercluster_v2`, data)\r\n }\r\n}\r\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Subject, takeUntil } from 'rxjs';\r\nimport { GlobalStateService } from 'tango-app-ui-global';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { ToastService } from 'tango-app-ui-shared';\r\n\r\n@Component({\r\n selector: \"lib-add-csm-modal\",\r\n templateUrl: \"./add-csm-modal.component.html\",\r\n styleUrl: \"./add-csm-modal.component.scss\",\r\n})\r\nexport class AddCsmModalComponent implements OnInit, OnDestroy {\r\n @Input() ticketId: any;\r\n csmUserList: any = [];\r\n csmSelectInput = new FormControl(\"\");\r\n private readonly destroy$ = new Subject();\r\n headerFilters: any;\r\n userList_req: {};\r\n users: any=[];\r\n userList: any=[];\r\n\r\n constructor(\r\n private activeModal: NgbActiveModal,\r\n public gs: GlobalStateService,\r\n private service: TicketService,\r\n private toast: ToastService\r\n ) {}\r\n ngOnInit(): void {\r\n const userData: any = JSON.parse(localStorage.getItem(\"user-info\") || \"{}\");\r\n this.users = userData;\r\n this.gs.dataRangeValue?.pipe(takeUntil(this.destroy$))?.subscribe({\r\n next: (data: any) => {\r\n if (data) {\r\n this.headerFilters = data;\r\n this.userList_req = {\r\n \"userType\": this.users.userType, \"isActive\": true\r\n // clientId: this.headerFilters.client,\r\n // limit: 10000,\r\n // offset: 1,\r\n // userType: this.users.userType,\r\n // FilterByStatus:'isActive'\r\n };\r\n this.getuserlist();\r\n }\r\n },\r\n });\r\n }\r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n\r\n getuserlist() {\r\n this.service\r\n .getUserActiveList(this.userList_req)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((res: any) => {\r\n if (res && res.code === 200) {\r\n this.userList = res?.data?.result;\r\n }\r\n });\r\n }\r\n\r\n assignCsm() {\r\n let obj = {\r\n tickets: this.ticketId,\r\n user: this.csmSelectInput.value,\r\n };\r\n this.service\r\n .getAssignTicket(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.toast.getSuccessToast(res.message);\r\n this.activeModal.close(\"submit\");\r\n }\r\n },\r\n error: (err: any) => {\r\n this.toast.getErrorToast(err.error.error ? err.error.error : err.error);\r\n },\r\n complete: () => {},\r\n });\r\n }\r\n\r\n onCsmSelect(selectedCsm: any) {\r\n this.csmSelectInput.setValue(selectedCsm?._id);\r\n }\r\n cancel() {\r\n this.activeModal.close(\"submit\");\r\n }\r\n}\r\n","<div class=\"card py-0\">\r\n <div class=\"card-body py-0 d-flex flex-start flex-column p-9 \">\r\n <div class=\"my-5\">\r\n <div class=\"symbol symbol-75px symbol-circle\">\r\n <svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" fill=\"#DAF1FF\"/>\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" stroke=\"#EAF8FF\" stroke-width=\"8\"/>\r\n <path d=\"M32 37V35C32 33.9391 31.5786 32.9217 30.8284 32.1716C30.0783 31.4214 29.0609 31 28 31H21C19.9391 31 18.9217 31.4214 18.1716 32.1716C17.4214 32.9217 17 33.9391 17 35V37M36 24V30M39 27H33M28.5 23C28.5 25.2091 26.7091 27 24.5 27C22.2909 27 20.5 25.2091 20.5 23C20.5 20.7909 22.2909 19 24.5 19C26.7091 19 28.5 20.7909 28.5 23Z\" stroke=\"#00A3FF\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n </div>\r\n <a class=\"fs-4 text-gray-800 text-hover-primary fw-bold mb-0 title cursor-pointer\">Assign Ticket</a>\r\n <p class=\"text-sub\">Assign the ticket to a particular user</p>\r\n <div class=\"mt-5 w-100\">\r\n <!-- <lib-reactive-select [formControl]=\"csmSelectInput\" [idField]=\"'email'\" [nameField]=\"'userName'\" [data]=\"csmUserList\" ></lib-reactive-select> -->\r\n\r\n <!-- <select [formControl]=\"csmSelectInput\" class=\"form-select border-val my-3\">\r\n <option [value]=\"user.email\" *ngFor=\"let user of csmUserList\">{{user.userName}}</option>\r\n </select> -->\r\n\r\n <lib-select [items]=\"userList\" [multi]=\"false\" [searchField]=\"'userName'\" [idField]=\"'_id'\"\r\n (selected)=\"onCsmSelect($event)\" ></lib-select>\r\n\r\n <div class=\"d-flex my-7\" role=\"group\">\r\n <button class=\"btn btn-outline w-100 me-3\" (click)=\"cancel()\">Cancel</button>\r\n <button class=\"btn btn-primary w-100 ms-3\" [disabled]=\"!csmSelectInput.value\" (click)=\"assignCsm()\">Submit</button>\r\n </div>\r\n \r\n </div>\r\n\r\n </div>\r\n</div>","import { Component, Input } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { ToastService } from 'tango-app-ui-shared';\r\nimport { Subject, takeUntil } from 'rxjs';\r\n@Component({\r\n selector: 'lib-comment-model',\r\n templateUrl: './comment-model.component.html',\r\n styleUrl: './comment-model.component.scss'\r\n})\r\nexport class CommentModelComponent {\r\n @Input() ticketId: any;\r\n comment:any= \"\"\r\n private readonly destroy$ = new Subject();\r\n constructor(private activeModal:NgbActiveModal, private service: TicketService,\r\n private toast: ToastService){\r\n\r\n }\r\n\r\n cancel(){\r\n this.activeModal.close();\r\n }\r\n commentSubmit(){\r\n if(this.comment == ''){\r\n return this.toast.getErrorToast(\"Please Enter Any comment\")\r\n }\r\n let obj = {\r\n \"ticketId\": this.ticketId,\r\n \"primary\": \"\",\r\n \"secondary\": [],\r\n \"comment\": this.comment,\r\n \r\n }\r\n this.service\r\n .updateTicketIssue(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.toast.getSuccessToast(res.message);\r\n this.activeModal.close(\"submit\");\r\n }\r\n },\r\n error: (err: any) => {\r\n this.toast.getErrorToast(err.error.error ? err.error.error : err.error);\r\n },\r\n complete: () => {},\r\n });\r\n }\r\n \r\n}\r\n\r\n\r\n","<div class=\"card py-0\">\r\n <div class=\"card-body py-0 d-flex flex-start flex-column p-9 \">\r\n <div class=\"my-5\">\r\n <div class=\"symbol symbol-75px symbol-circle\">\r\n <svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" fill=\"#DAF1FF\"/>\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" stroke=\"#EAF8FF\" stroke-width=\"8\"/>\r\n <path d=\"M37 31C37 31.5304 36.7893 32.0391 36.4142 32.4142C36.0391 32.7893 35.5304 33 35 33H23L19 37V21C19 20.4696 19.2107 19.9609 19.5858 19.5858C19.9609 19.2107 20.4696 19 21 19H35C35.5304 19 36.0391 19.2107 36.4142 19.5858C36.7893 19.9609 37 20.4696 37 21V31Z\" stroke=\"#00A3FF\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n </div>\r\n <a class=\"fs-4 text-gray-800 text-hover-primary fw-bold mb-0 title cursor-pointer\">Comment</a>\r\n <p class=\"text-sub\">Add comment for the ticket</p>\r\n <div class=\"w-100\">\r\n <label class=\"label my-2\">Comments</label>\r\n <textarea class=\"form-control\" [(ngModel)]=\"comment\" rows=\"4\" type=\"text\"></textarea>\r\n\r\n <div class=\"d-flex my-7\" role=\"group\">\r\n <button class=\"btn btn-outline w-100 me-3\" (click)=\"cancel()\">Cancel</button>\r\n <button class=\"btn btn-primary w-100 ms-3\" (click)=\"commentSubmit()\">Submit</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>","import { Injectable } from '@angular/core';\r\nimport * as FileSaver from 'file-saver';\r\nimport * as XLSX from 'xlsx';\r\n\r\nconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\nconst EXCEL_EXTENSION = '.xlsx';\r\nconst ZIP_TYPE = 'application/zip'\r\nconst ZIP_EXTENSION = '.zip'\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ExcelService {\r\n\r\n \r\n constructor() { }\r\n\r\n public exportAsExcelFile(json: any[], excelFileName: string): void {\r\n const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(json);\r\n const workbook: XLSX.WorkBook = { Sheets: { 'data': worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });\r\n this.saveAsExcelFile(excelBuffer, excelFileName);\r\n }\r\n\r\n public saveAsExcelFile(buffer: any, fileName: string): void {\r\n console.log(buffer, fileName);\r\n \r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n FileSaver.saveAs(data, fileName + 'list'+ EXCEL_EXTENSION);\r\n }\r\n \r\n private saveAsTemplate(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n FileSaver.saveAs(data, fileName + EXCEL_EXTENSION);\r\n }\r\n\r\n public saveAsZipFile(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], {\r\n type: ZIP_TYPE\r\n });\r\n FileSaver.saveAs(data, fileName + 'Images'+ ZIP_EXTENSION);\r\n }\r\n\r\n}\r\n","import { ChangeDetectorRef, Component, OnDestroy, OnInit } from \"@angular/core\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { GlobalStateService } from \"tango-app-ui-global\";\r\nimport { Subject, takeUntil } from \"rxjs\";\r\nimport { NgbModal } from \"@ng-bootstrap/ng-bootstrap\";\r\nimport { AddCsmModalComponent } from \"../add-csm-modal/add-csm-modal.component\";\r\nimport { TicketService } from \"../../services/ticket.service\";\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { CommentModelComponent } from \"../comment-model/comment-model.component\";\r\n@Component({\r\n selector: \"lib-tickets\",\r\n templateUrl: \"./tickets.component.html\",\r\n styleUrl: \"./tickets.component.scss\",\r\n})\r\nexport class TicketsComponent implements OnInit, OnDestroy {\r\n type = \"Infra\";\r\n searchValue: any = \"\";\r\n selectedTab: any = \"total\";\r\n // paginationVariables\r\n itemsPerPage = 10;\r\n currentPage = 1;\r\n totalItems = 0;\r\n paginationSizes = [10, 20, 30];\r\n pageSize = 10;\r\n private readonly destroy$ = new Subject();\r\n assignTicket: boolean = false;\r\n filterByStores: any = [];\r\n filterByinstalled: any = [];\r\n filterByStatus: any = [];\r\n filterByQueryType: any = [];\r\n issueType: any = [];\r\n sortedColumn: string;\r\n sortDirection: number;\r\n headerFilters: any;\r\n userList_req: any;\r\n userList: any = [];\r\n dataObject: any=[];\r\n storeList: any = [];\r\n statusType: { text: string; id: string }[];\r\n typeName: string;\r\n users: any;\r\n limit: number = 10;\r\n offset: number = 1;\r\n sortBy: any = -1;\r\n sortColumName: any = \"\";\r\n listArray: any = [];\r\n tableListArray: any = [];\r\n loading: boolean = true;\r\n noData: boolean = false;\r\n selectAll: any = false;\r\n assignStores: any = [];\r\n issueTypeList: any=[];\r\n queryTypeList: any=[];\r\n \r\n constructor(\r\n private cd: ChangeDetectorRef,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public gs: GlobalStateService,\r\n private modalService: NgbModal,\r\n private service: TicketService,\r\n private excelservice: ExcelService,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n const userData: any = JSON.parse(localStorage.getItem(\"user-info\") || \"{}\");\r\n this.users = userData;\r\n this.route?.queryParams\r\n ?.pipe(takeUntil(this.destroy$))\r\n .subscribe((params) => {\r\n this.type = params.type;\r\n this.filterByStores =[]; this.storeList=[]\r\n this.filterByinstalled=[]; this.statusType =[]\r\n this.filterByStatus =[]; this.userList=[];\r\n this.issueType=[]; this.issueTypeList =[]\r\n this.filterByQueryType =[]; this.queryTypeList=[];\r\n this.dataObject=[]\r\n this.gs.manageRefreshTrigger.next(true)\r\n this.getInitload();\r\n this.gs.dataRangeValue?.pipe(takeUntil(this.destroy$))?.subscribe({\r\n next: (data: any) => {\r\n if (data) {\r\n this.headerFilters = data;\r\n this.userList_req = {\r\n limit: 10000,\r\n offset: 1,\r\n userType: this.users.userType,\r\n };\r\n this.getstoreFilter();\r\n }\r\n },\r\n });\r\n if (this.type === \"installation\") {\r\n this.typeName = \"Installed By\";\r\n this.statusType = [\r\n { text: \"Onboarded\", id: \"onboarded\" },\r\n { text: \"Paired\", id: \"paired\" },\r\n { text: \"Installationfailed\", id: \"installationfailed\" },\r\n { text: \"Deployed\", id: \"deployed\" },\r\n ];\r\n } else {\r\n this.typeName = \"Resolved By\";\r\n \r\n if (this.users.userType === \"tango\" && this.type ==='infra'){ \r\n this.statusType = [\r\n { text: \"Open\", id: \"open\" },\r\n { text: \"In Progress\", id: \"inprogress\" },\r\n { text: \"Refresh Ticket\", id: \"refreshticket\" },\r\n { text: \"Closed\", id: \"closed\" },\r\n ];\r\n }else{\r\n this.statusType = [\r\n { text: \"Open\", id: \"open\" },\r\n { text: \"In Progress\", id: \"inprogress\" },\r\n { text: \"Closed\", id: \"closed\" },\r\n ];\r\n }\r\n this.issueTypeList = [\r\n { text: \"High Count\", id: \"highcount\" },\r\n { text: \"Low Count\", id: \"lowcount\" },\r\n ];\r\n this.queryTypeList = [\r\n { text: \"Internal\", id: \"internal\" },\r\n { text: \"External\", id: \"external\" },\r\n ];\r\n }\r\n });\r\n }\r\n getInitload() {\r\n this.searchValue = \"\";\r\n this.limit = 10;\r\n this.pageSize = 10;\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.selectedTab = \"total\";\r\n this.loading = true;\r\n this.noData = false;\r\n this.sortedColumn='';\r\n }\r\n getstoreFilter() {\r\n this.service\r\n .getSotresList({ issueType: this.type,clientId:this.headerFilters.clients })\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({ \r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.storeList = res?.data?.data;\r\n this.storeList.forEach((element: any) => {\r\n element.text = element.storeId;\r\n element.id = element.storeId;\r\n });\r\n if(this.users.userType === \"tango\"){\r\n this.getuserlist();\r\n } else {\r\n if(this.type ==='installation'){\r\n this.dataObject = [\r\n { Description: \"Store ID\", Issues: this.storeList },\r\n { Description: \"Deployed Status\", Issues: this.statusType },\r\n ];\r\n } else if(this.type ==='infra' || this.type ==='dataMismatch'){\r\n this.dataObject = [\r\n { Description: \"Store ID\", Issues: this.storeList },\r\n { Description: \"Status\", Issues: this.statusType },\r\n ]; \r\n }else if(this.type ==='mat' ){\r\n this.dataObject = [\r\n { Description: \"Status\", Issues: this.statusType },\r\n ]; \r\n }\r\n }\r\n this.getTable();\r\n }else{\r\n this.getTable();\r\n }\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n }\r\n getuserlist() {\r\n this.service\r\n .getUserList(this.userList_req)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((res: any) => {\r\n if (res && res.code === 200) {\r\n this.userList = res?.data?.result;\r\n this.userList?.forEach((element: any) => {\r\n element.text = element.userName;\r\n element.id = element.email;\r\n });\r\n }\r\n \r\n if (this.users.userType === \"tango\" && (this.type ==='installation')) {\r\n this.dataObject = [\r\n { Description: \"Store ID\", Issues: this.storeList },\r\n { Description: \"Deployed Status\", Issues: this.statusType },\r\n { Description: this.typeName, Issues: this.userList },\r\n ];\r\n } else if (this.users.userType === \"tango\" && this.type ==='infra') {\r\n this.dataObject = [\r\n { Description: \"Store ID\", Issues: this.storeList },\r\n { Description: \"Status\", Issues: this.statusType },\r\n { Description: this.typeName, Issues: this.userList },\r\n ];\r\n } else if(this.users.userType === \"tango\" && this.type ==='dataMismatch'){\r\n this.dataObject = [\r\n { Description: \"Store ID\", Issues: this.storeList },\r\n { Description: \"Query Type\", Issues: this.queryTypeList },\r\n { Description: \"Status\", Issues: this.statusType },\r\n ];\r\n } else if(this.type ==='mat'){\r\n this.dataObject = [\r\n { Description: \"Status\", Issues: this.statusType },\r\n ];\r\n } \r\n });\r\n }\r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n searchData() {\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit=10;\r\n this.getTable();\r\n }\r\n\r\n onSort(column: string) {\r\n if (this.sortedColumn === column) {\r\n this.sortDirection = this.sortDirection === 1 ? -1 : 1;\r\n } else {\r\n this.sortedColumn = column;\r\n this.sortDirection = 1;\r\n }\r\n this.getTable();\r\n }\r\n exportXLSX() {\r\n let obj: Record<string, any> = {\r\n clientId: this.headerFilters?.clients,\r\n fromDate: this.headerFilters?.date?.startDate,\r\n toDate: this.headerFilters?.date?.endDate,\r\n offset: this.offset,\r\n limit: this.limit,\r\n filterIssue: this.selectedTab ? this.selectedTab : \"\",\r\n searchValue: this.searchValue ? this.searchValue : \"\",\r\n export: true,\r\n };\r\n if (this.sortedColumn) {\r\n obj.sortColumName = this.sortedColumn;\r\n obj.sortBy = this.sortDirection;\r\n }\r\n if(this.type === \"installation\" || this.type === \"infra\"){\r\n if (this.filterByStores?.length) {\r\n obj.storeIdFilter = this.filterByStores ? this.filterByStores : [];\r\n } \r\n if (this.filterByStatus?.length) {\r\n obj.statusFilter = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n if (this.filterByinstalled?.length) {\r\n obj.userFilter = this.filterByinstalled ? this.filterByinstalled : [];\r\n }\r\n }else if(this.type ===\"mat\"){\r\n if (this.filterByStatus?.length) {\r\n obj.statusFilter = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n } else {\r\n if (this.filterByStores?.length) {\r\n obj.filterByStores = this.filterByStores ? this.filterByStores : [];\r\n } \r\n if (this.filterByStatus?.length) {\r\n obj.filterByStatus = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n if(this.filterByQueryType?.length){\r\n obj.filterByQueryType = this.filterByQueryType ? this.filterByQueryType : [];\r\n }\r\n }\r\n if (this.type === \"installation\") {\r\n this.service\r\n .exportInstallationList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n this.excelservice.saveAsExcelFile(res, 'Installation')\r\n\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n } else if (this.type === \"infra\") {\r\n this.service\r\n .exportInfraList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n \r\n this.excelservice.saveAsExcelFile(res, 'Infra')\r\n \r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n } else if (this.type === \"mat\") {\r\n this.service\r\n .exportMatList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n \r\n this.excelservice.saveAsExcelFile(res, 'Mat')\r\n \r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n }else if(this.type==='dataMismatch'){\r\n this.service\r\n .exportDataMismatchList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n this.excelservice.saveAsExcelFile(res, 'Data Mismatch')\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n selectedTabs(type: any) {\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit=10;\r\n if(this.type ==='dataMismatch'){\r\n this.selectedTab = type.name.replace(/\\s+/g, '').toLocaleLowerCase();\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit = 10;\r\n this.pageSize = 10;\r\n this.getTable();\r\n this.transformName(type);\r\n } else {\r\n this.selectedTab = type.name;\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit = 10;\r\n this.pageSize = 10;\r\n this.getTable();\r\n }\r\n }\r\n transformName(name: string): string {\r\n return name.toLocaleLowerCase().replace(/\\s+/g, '');\r\n \r\n }\r\n onPageChange(pageOffset: number) {\r\n this.currentPage = Number(pageOffset);\r\n this.offset = Number(pageOffset);\r\n this.limit =10;\r\n this.getTable();\r\n }\r\n\r\n onPageSizeChange(pageSize: number) {\r\n this.pageSize = Number(pageSize);\r\n this.limit = Number(pageSize);\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.getTable();\r\n }\r\n selectAllStore(event: any) {\r\n this.selectAll = event.target.checked;\r\n this.tableListArray.forEach((obj: any) => (obj.checked = this.selectAll));\r\n // If all checkboxes are checked, assign all ticketIds to assignStores, otherwise clear assignStores\r\n this.assignStores = this.selectAll\r\n ? this.tableListArray.map((obj: any) => obj.ticketId)\r\n : [];\r\n this.assignTicket = this.selectAll; // Update assignTicket based on selectAll state\r\n }\r\n\r\n updateCheck(event: any, ticketId: any) {\r\n const ticket = this.tableListArray.find(\r\n (obj: any) => obj.ticketId === ticketId\r\n );\r\n\r\n if (ticket) {\r\n ticket.checked = event.target.checked;\r\n // If the checkbox is checked, add or remove the corresponding array from the selected arrays\r\n if (event.target.checked) {\r\n this.assignStores.push(ticketId);\r\n } else {\r\n const index = this.assignStores.indexOf(ticketId);\r\n if (index !== -1) {\r\n this.assignStores.splice(index, 1);\r\n }\r\n }\r\n // Update selectAll based on the current state of checkboxes\r\n this.selectAll = this.tableListArray.every((obj: any) => obj.checked);\r\n // Update assignTicket based on whether any individual ticket checkbox is checked\r\n this.assignTicket = this.tableListArray.some((obj: any) => obj.checked);\r\n }\r\n }\r\n\r\n addAssignTicket() {\r\n const modalRef = this.modalService.open(AddCsmModalComponent, {\r\n centered: true,\r\n size: \"md\",\r\n scrollable: true,\r\n backdrop:\"static\"\r\n });\r\n modalRef.componentInstance.ticketId = this.assignStores;\r\n modalRef.result.then((result) => {\r\n if (result === \"submit\") {\r\n this.searchValue = \"\";\r\n this.assignStores = [];\r\n this.selectAll = false;\r\n this.assignTicket = false;\r\n this.getTable();\r\n }\r\n });\r\n }\r\n\r\n applyFilters(event: any) {\r\n if (event?.length) {\r\n event.forEach((element: any) => {\r\n if (element.Description === \"Store ID\") {\r\n this.filterByStores = element.Issues.map((val: any) => val?.id);\r\n }\r\n if(this.type !=='installation'){\r\n if (element.Description === \"Status\") {\r\n this.filterByStatus = element.Issues.map((val: any) => val?.id);\r\n }\r\n } if(this.type==='installation'){\r\n if (element.Description === \"Deployed Status\") {\r\n this.filterByStatus = element.Issues.map((val: any) => val?.id);\r\n }\r\n }\r\n if (this.users.userType === \"tango\" && (this.type ==='installation' || this.type==='infra')) {\r\n if (element.Description === this.typeName) {\r\n this.filterByinstalled = element.Issues.map((val: any) => val?.id);\r\n }\r\n } else {\r\n this.filterByinstalled = [];\r\n }\r\n if (element.Description === \"Query Type\") {\r\n this.filterByQueryType = element.Issues.map((val: any) => val?.id);\r\n }\r\n // if (element.Description === \"Issue Type\") {\r\n // this.issueType = element.Issues.map((val: any) => val?.id);\r\n // }\r\n });\r\n }\r\n\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit=10;\r\n this.getTable();\r\n }\r\n\r\n getTable() {\r\n this.loading = true;\r\n this.noData = false;\r\n let obj: Record<string, any> = {\r\n clientId: this.headerFilters?.clients,\r\n fromDate: this.headerFilters?.date?.startDate,\r\n toDate: this.headerFilters?.date?.endDate,\r\n offset: this.offset,\r\n limit: this.limit,\r\n filterIssue: this.selectedTab ? this.selectedTab : \"\",\r\n searchValue: this.searchValue ? this.searchValue : \"\",\r\n export: false,\r\n };\r\n if (this.sortedColumn) {\r\n if(this.type ==='dataMismatch'){\r\n obj.sortColumnName = this.sortedColumn;\r\n obj.sortBy = this.sortDirection;\r\n } else {\r\n obj.sortColumName = this.sortedColumn;\r\n obj.sortBy = this.sortDirection;\r\n }\r\n }\r\n if(this.type === \"installation\" || this.type === \"infra\"){\r\n if (this.filterByStores?.length) {\r\n obj.storeIdFilter = this.filterByStores ? this.filterByStores : [];\r\n } \r\n if (this.filterByStatus?.length) {\r\n obj.statusFilter = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n if (this.filterByinstalled?.length) {\r\n obj.userFilter = this.filterByinstalled ? this.filterByinstalled : [];\r\n }\r\n } else if(this.type === \"mat\"){\r\n if (this.filterByStatus?.length) {\r\n obj.statusFilter = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n } else {\r\n if (this.filterByStores?.length) {\r\n obj.filterByStores = this.filterByStores ? this.filterByStores : [];\r\n } \r\n if (this.filterByStatus?.length) {\r\n obj.filterByStatus = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n if(this.filterByQueryType?.length){\r\n obj.filterByQueryType = this.filterByQueryType ? this.filterByQueryType : [];\r\n }\r\n }\r\n // console.log(obj)\r\n // return\r\n if (this.type === \"installation\") {\r\n this.service\r\n .getInstallationList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.listArray = res.data.response;\r\n if(res.data.result.length ===0){\r\n this.loading = false;\r\n this.noData = true;\r\n } else {\r\n this.tableListArray = res.data.result;\r\n this.totalItems = res.data?.count;\r\n if (this.totalItems < 10) { this.paginationSizes = [this.totalItems] } else { this.paginationSizes = [10, 20, 30] }\r\n this.loading = false;\r\n this.noData = false;\r\n this.selectAll = false;\r\n this.assignTicket =false;\r\n this.cd.detectChanges();\r\n }\r\n } else {\r\n this.loading = false;\r\n this.noData = true;\r\n }\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n } else if (this.type === \"infra\") {\r\n this.service\r\n .getInfraList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.listArray = res.data.response;\r\n if(res.data.result.length ===0){\r\n this.loading = false;\r\n this.noData = true;\r\n } else {\r\n this.tableListArray = res.data.result;\r\n this.totalItems = res.data?.count;\r\n if (this.totalItems < 10) { this.paginationSizes = [this.totalItems] } else { this.paginationSizes = [10, 20, 30] }\r\n this.loading = false;\r\n this.noData = false;\r\n this.selectAll = false;\r\n this.assignTicket =false;\r\n }\r\n } else {\r\n this.loading = false;\r\n this.noData = true;\r\n }\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n } else if (this.type === \"mat\") {\r\n this.service\r\n .getMatList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.listArray = res?.data?.response;\r\n this.tableListArray = res?.data?.result;\r\n this.totalItems = res.data?.count;\r\n if (this.totalItems < 10) { this.paginationSizes = [this.totalItems] } else { this.paginationSizes = [10, 20, 30] } this.loading = false;\r\n this.noData = false;\r\n } else {\r\n this.loading = false;\r\n this.noData = true;\r\n }\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n }); } else if(this.type==='dataMismatch'){\r\n this.service\r\n .getDataMismathList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.listArray = res?.data?.response;\r\n if(res.data.result.length ===0){\r\n this.loading = false;\r\n this.noData = true;\r\n } else {\r\n this.tableListArray = res?.data?.result;\r\n this.totalItems = res.data?.count;\r\n if (this.totalItems < 10) { this.paginationSizes = [this.totalItems] } else { this.paginationSizes = [10, 20, 30] }\r\n this.loading = false;\r\n this.noData = false;\r\n this.selectAll = false;\r\n this.assignTicket =false;\r\n this.cd.detectChanges();\r\n }\r\n } else {\r\n this.loading = false;\r\n this.noData = true;\r\n }\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n }\r\n }\r\n\r\n routeToStore(storeId: any, clientId: any) {\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores/infra-ticket'], { \r\n queryParams: { storeId: storeId }\r\n });\r\n }\r\n routeToMat(storeId: any, clientId: any,clientName:any) {\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n data.clientName = clientName ? clientName:'Stores';\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores/mat'], { \r\n queryParams: { storeId: storeId }\r\n });\r\n }\r\n commentModal(obj:any){\r\n const modalRef = this.modalService.open(CommentModelComponent, {\r\n centered: true,\r\n size: \"md\",\r\n scrollable: true,\r\n backdrop:\"static\"\r\n });\r\n modalRef.componentInstance.ticketId = obj.ticketId;\r\n modalRef.result.then((result) => {\r\n })\r\n }\r\n\r\n tickets(type:any,clientId:any,storeId:any,clientName:any){\r\n if(type ==='mat'){\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n data.clientName = clientName ? clientName:'Stores';\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores/mat'], { \r\n queryParams: { storeId: storeId }\r\n });\r\n } else {\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n data.clientName = clientName ? clientName:'Stores';\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores/infra-ticket'], { \r\n queryParams: { storeId: storeId,type:type }\r\n });\r\n}\r\n }\r\n\r\n clientTickets(clientId:any,storeId:any,clientName:any){\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n data.clientName = clientName ? clientName:'Stores';\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores']);\r\n }\r\n storeTickets(clientId:any,storeId:any,clientName:any){\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n data.clientName = clientName ? clientName:'Stores';\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores/cameras'], { \r\n queryParams: { storeId: storeId }\r\n });\r\n }\r\n userTickets(clientId:any,storeId:any){\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/users']);\r\n }\r\n\r\n setpageSize() {\r\n if (this.totalItems < 10) {\r\n return this.totalItems;\r\n } else {\r\n return this.pageSize;\r\n }\r\n }\r\n\r\n}\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 !=='dataMismatch' && type !== 'mat'\" class=\"card-label mb-2\">{{type | titlecase}}</span>\r\n <span *ngIf=\"type ==='dataMismatch'\" class=\"card-label mb-2\">Data Mismatch</span>\r\n <span *ngIf=\"type ==='mat'\" class=\"card-label mb-2\">Employee Mat</span>\r\n\r\n <!-- <span class=\"text-sub mb-2\">Last updated 1 hour ago</span> -->\r\n </h3>\r\n <div class=\"card-toolbar\">\r\n <div *ngIf=\"!assignTicket\" 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\" placeholder=\"Search\" autocomplete=\"off\"\r\n (change)=\"searchData()\" [(ngModel)]=\"searchValue\" />\r\n <lib-filters *ngIf=\"users.userType === 'tango' && userList?.length || users.userType === 'client' && storeList?.length\" [dataObject]=\"dataObject\"\r\n (appliedFilters)=\"applyFilters($event)\"></lib-filters>\r\n\r\n <button type=\"button\" *ngIf=\"!noData&&!loading\" (click)=\"exportXLSX()\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path\r\n 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\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2\">Export</span>\r\n </button>\r\n </div>\r\n </div>\r\n <div *ngIf=\"assignTicket\" class=\"d-flex\">\r\n <button type=\"button\" (click)=\"addAssignTicket()\"\r\n class=\"btn mx-2 btn-primary rounded-3 text-nowrap border-val\">\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=\"M9.99984 4.1665V15.8332M4.1665 9.99984H15.8332\" stroke=\"white\" stroke-width=\"1.67\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2 text-white\">Assign Ticket</span>\r\n </button>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n\r\n\r\n <ul *ngIf=\"!loading && listArray?.length && type !== 'mat' && type !== 'dataMismatch'\" class=\"nav nav-stretch nav-line-tabs1 nav-line-tabs border-transparent flex-nowrap horizontal-scroll\">\r\n <li class=\"nav-item\" *ngFor=\"let obj of listArray.slice().reverse()\" (click)=\"selectedTabs(obj)\">\r\n <a [ngClass]=\"{'active': selectedTab === obj.name}\" class=\"nav-link cursor-pointer no-border me-2\">\r\n {{obj.name | titlecase}} <span class=\"mx-2\"\r\n [ngClass]=\"selectedTab === obj.name ? 'text-border-priamry' : 'text-border'\">{{obj.count}}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n <ul *ngIf=\"!loading && listArray?.length && type === 'dataMismatch'\" class=\"nav nav-stretch nav-line-tabs1 nav-line-tabs border-transparent flex-nowrap horizontal-scroll\">\r\n <li class=\"nav-item\" *ngFor=\"let obj of listArray.slice().reverse()\" (click)=\"selectedTabs(obj)\">\r\n <a [ngClass]=\"selectedTab === transformName(obj.name) ? 'active' : ''\" class=\"nav-link cursor-pointer no-border me-2\">\r\n {{obj.name | titlecase}} <span class=\"mx-2\"\r\n [ngClass]=\"selectedTab === transformName(obj.name) ? 'text-border-priamry' : 'text-border'\">{{obj.count}}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n <div *ngIf=\"loading\" 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 </div>\r\n <div *ngIf=\"noData\" 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 <div *ngIf=\"!loading && !noData\" class=\"table-responsive mt-5\">\r\n <table class=\"table bottom-border text-nowrap \">\r\n <thead>\r\n <tr>\r\n <th class=\"cursor-pointer\" >\r\n \r\n <input *ngIf=\"this.users.userType ==='tango'\"\r\n class=\"form-check-input cursor-pointer me-4\" type=\"checkbox\" [(ngModel)]=\"selectAll\"\r\n (click)=\"selectAllStore($event)\"> <span class=\"cursor-pointer\" (click)=\"onSort('ticketId')\"> Ticket ID <svg\r\n [ngClass]=\"sortedColumn === 'ticketId' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'ticketId' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></span> \r\n </th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type !=='dataMismatch'\" (click)=\"onSort('issueDate')\"> Created Date\r\n <svg [ngClass]=\"sortedColumn === 'issueDate' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'issueDate' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type ==='infra'\" (click)=\"onSort('createdAt')\"> Created Time\r\n <svg [ngClass]=\"sortedColumn === 'createdAt' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'createdAt' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type ==='infra'\" (click)=\"onSort('issueClosedDate')\"> Closed Time\r\n <svg [ngClass]=\"sortedColumn === 'issueClosedDate' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'issueClosedDate' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('createdAt')\"> Created Date\r\n <svg [ngClass]=\"sortedColumn === 'createdAt' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'createdAt' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" ><span (click)=\"onSort('issueDate')\">Issue Date\r\n <svg [ngClass]=\"sortedColumn === 'issueDate' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'issueDate' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></span>\r\n </th>\r\n <th class=\"cursor-pointer\" *ngIf=\"(gs.userAccess | async)?.userType === 'tango'\" class=\"cursor-pointer\" (click)=\"onSort('clientName')\">Brand Name<svg\r\n [ngClass]=\"sortedColumn === 'clientName' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'clientName' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"(gs.userAccess | async)?.userType === 'tango'\" class=\"cursor-pointer\" (click)=\"onSort('clientId')\">Brand ID<svg\r\n [ngClass]=\"sortedColumn === 'clientId' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'clientId' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('storeName')\">Store Name<svg\r\n [ngClass]=\"sortedColumn === 'storeName' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'storeName' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('storeId')\">Store ID<svg\r\n [ngClass]=\"sortedColumn === 'storeId' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'storeId' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"this.users.userType ==='tango' && (type ==='infra'||type ==='dataMismatch'||type ==='mat')\" (click)=\"onSort('userName')\">Resolved By<svg [ngClass]=\"sortedColumn === 'userName' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'userName' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"this.users.userType ==='tango' && type ==='installation'\" (click)=\"onSort('userName')\">Installed By<svg [ngClass]=\"sortedColumn === 'userName' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'userName' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('issueType')\">Issue Type\r\n <svg [ngClass]=\"sortedColumn === 'issueType' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'issueType' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('type')\">Query Type\r\n <svg [ngClass]=\"sortedColumn === 'type' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'type' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('reportedFootfall')\">Reported Footfall\r\n <svg [ngClass]=\"sortedColumn === 'reportedFootfall' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'reportedFootfall' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('mappedCount')\">Unique Images\r\n <svg [ngClass]=\"sortedColumn === 'mappedCount' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'mappedCount' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('successPercentage')\">Success Percentage\r\n <svg [ngClass]=\"sortedColumn === 'successPercentage' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'successPercentage' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type ==='installation'\" (click)=\"onSort('status')\">Deployed Status<svg\r\n [ngClass]=\"sortedColumn === 'status' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'status' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th *ngIf=\"type ==='dataMismatch' ||type ==='mat'|| type ==='infra'\" class=\"cursor-pointer\" (click)=\"onSort('status')\">Status<svg\r\n [ngClass]=\"sortedColumn === 'status' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'status' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n<!-- added config and total downtime as per the prioduct team requirement -->\r\n <th>Configured Ticket Time\r\n </th> \r\n\r\n <th >Total Downtime\r\n </th>\r\n<!-- -->\r\n\r\n <th *ngIf=\"type !== 'mat' && type !== 'dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('primaryIssue')\">Primary Issues<svg\r\n [ngClass]=\"sortedColumn === 'primaryIssue' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'primaryIssue' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th *ngIf=\"type !== 'mat' && type !== 'dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('secondaryIssue')\">Secondary Issues<svg\r\n [ngClass]=\"sortedColumn === 'secondaryIssue' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'secondaryIssue' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th *ngIf=\"type!=='installation'\">Actions</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let obj of tableListArray\">\r\n <td>\r\n <input *ngIf=\"this.users.userType ==='tango'\" class=\"form-check-input cursor-pointer me-4 mt-3\" type=\"checkbox\" [(ngModel)]=\"obj.checked\"\r\n (change)=\"updateCheck($event,obj?.ticketId)\">\r\n <span *ngIf=\"type === 'dataMismatch' || type === 'mat' || type === 'infra'\"\r\n class=\"txt-light-primary cursor-pointer\" (click)=\"tickets(type,obj.clientId,obj.storeId,obj.clientName)\">\r\n {{obj.ticketId}}\r\n </span>\r\n <span *ngIf=\"type === 'installation'\">\r\n {{obj.ticketId}}\r\n </span>\r\n </td>\r\n <td *ngIf=\"type === 'dataMismatch'\">\r\n {{obj?.createdAt |\r\n date: 'dd MMM, yyyy'}}</td>\r\n <td *ngIf=\"type === 'dataMismatch'\">\r\n {{obj?.issueDate |\r\n date: 'dd MMM, yyyy'}}</td>\r\n <td *ngIf=\"type !== 'dataMismatch'\">\r\n {{obj?.createdAt |\r\n date: 'dd MMM, yyyy'}}\r\n </td>\r\n <td *ngIf=\"type === 'infra'\">\r\n {{obj?.createdAt |\r\n date: 'hh:mm a' | uppercase}}\r\n </td>\r\n <td *ngIf=\"type === 'infra'\">\r\n {{obj?.issueClosedDate?(obj?.issueClosedDate |\r\n date: 'hh:mm a' | uppercase):\"--\"}}\r\n </td>\r\n <td *ngIf=\"this.users.userType ==='tango'\">\r\n <div class=\"table-title cursor-pointer\" (click)=\"clientTickets(obj.clientId,obj.storeId,obj.clientName)\">\r\n <span class=\"txt-light-primary\">\r\n {{obj.clientName}}\r\n </span>\r\n </div>\r\n </td>\r\n <td *ngIf=\"this.users.userType ==='tango'\">{{obj.clientId}}\r\n </td>\r\n <td>\r\n <div class=\"table-title cursor-pointer\" (click)=\"storeTickets(obj.clientId,obj.storeId,obj.clientName)\">\r\n <span class=\"txt-light-primary\">\r\n {{obj.storeName}}\r\n </span>\r\n </div>\r\n </td>\r\n <td>{{obj.storeId}}\r\n </td>\r\n \r\n <td *ngIf=\"this.users.userType ==='tango'\">\r\n <div class=\"table-title cursor-pointer\" >\r\n <span >\r\n {{obj.userName}}\r\n </span>\r\n </div>\r\n </td>\r\n <td *ngIf=\"type ==='dataMismatch' && obj.issueType ==='lowcount'\" >Low Count</td>\r\n <td *ngIf=\"type ==='dataMismatch' && obj.issueType ==='highcount'\">High Count</td>\r\n <td class=\"text-capitalize\" *ngIf=\"type ==='dataMismatch'\">{{obj?.type ? obj?.type:'--'}}</td>\r\n <td class=\"text-capitalize\" *ngIf=\"type ==='dataMismatch'\">{{obj?.reportedFootfall ? obj?.reportedFootfall:'--'}}</td>\r\n <td class=\"text-capitalize\" *ngIf=\"type ==='dataMismatch'\">{{obj?.mappedCount ? obj?.mappedCount:'--'}}</td>\r\n <td class=\"text-capitalize\" *ngIf=\"type ==='dataMismatch'\">{{obj?.successPercentage ? obj?.successPercentage:'--'}}</td>\r\n <td *ngIf=\"type==='installation'\">\r\n <span *ngIf=\"obj.installationStatus ==='paired' || obj.installationStatus ==='onboarded'\"\r\n class=\"badge badge-light-primary mx-4\">{{obj.installationStatus | titlecase}}</span>\r\n <span *ngIf=\"obj.installationStatus ==='live'\" class=\"badge badge-light-success mx-4\">Live</span>\r\n <span *ngIf=\"obj.installationStatus ==='installationfailed'\"\r\n class=\"badge badge-light-warning mx-4\">Installationfailed</span>\r\n <span *ngIf=\"obj.installationStatus ==='deployed'\"\r\n class=\"badge badge-light-success mx-4 text-capitalize\">deployed</span>\r\n </td>\r\n <td *ngIf=\"type==='infra' || type==='mat' || type==='dataMismatch'\">\r\n <span *ngIf=\"obj.status ==='open'\" class=\"badge badge-light-danger\">Open</span>\r\n <span *ngIf=\"obj.status ==='closed'\" class=\"badge badge-light-success\">Closed</span>\r\n <span *ngIf=\"obj.status ==='inprogress'\" class=\"badge badge-light-primary\">In\r\n Progress</span>\r\n </td>\r\n <td *ngIf=\"type==='infra'\">\r\n{{obj.configuredDownTime?obj.configuredDownTime*60:0 || 0 }} {{obj.configuredDownTime > 1? 'mins' : 'min'}} \r\n </td>\r\n <td *ngIf=\"type==='infra'\"> \r\n{{obj.totalDownTime || 0 }} {{obj.totalDownTime > 1? 'mins' : 'min'}} \r\n </td>\r\n <td *ngIf=\"type==='installation' || type==='infra'\">\r\n <div>\r\n <span *ngIf=\"obj.primaryIssue !=='-'\">{{obj.primaryIssue ? obj.primaryIssue :'Issue not identified'}}</span>\r\n <span *ngIf=\"obj.primaryIssue ==='-'\">Issue not identified</span>\r\n </div>\r\n </td>\r\n <td *ngIf=\"type==='installation' || type==='infra'\">\r\n <span *ngIf=\"obj.secondaryIssue\">{{obj.secondaryIssue}}</span>\r\n </td>\r\n <td *ngIf=\"type==='infra' || type ==='dataMismatch'\">\r\n <span class=\"mx-2 cursor-pointer\" *ngIf=\"this.users.userType ==='tango'\" (click)=\"commentModal(obj)\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path\r\n d=\"M17.6431 12.5C17.6431 12.942 17.4675 13.366 17.1549 13.6785C16.8423 13.9911 16.4184 14.1667 15.9764 14.1667H5.9764L2.64307 17.5V4.16667C2.64307 3.72464 2.81866 3.30072 3.13122 2.98816C3.44378 2.67559 3.86771 2.5 4.30973 2.5H15.9764C16.4184 2.5 16.8423 2.67559 17.1549 2.98816C17.4675 3.30072 17.6431 3.72464 17.6431 4.16667V12.5Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></span>\r\n <span class=\"mx-2 cursor-pointer\" (click)=\"tickets(type,obj.clientId,obj.storeId,obj.clientName)\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_10640_18061)\">\r\n <path\r\n d=\"M0.976562 10C0.976562 10 4.3099 3.33337 10.1432 3.33337C15.9766 3.33337 19.3099 10 19.3099 10C19.3099 10 15.9766 16.6667 10.1432 16.6667C4.3099 16.6667 0.976562 10 0.976562 10Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M10.1432 12.5C11.5239 12.5 12.6432 11.3808 12.6432 10C12.6432 8.61933 11.5239 7.50004 10.1432 7.50004C8.76252 7.50004 7.64323 8.61933 7.64323 10C7.64323 11.3808 8.76252 12.5 10.1432 12.5Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_10640_18061\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" transform=\"translate(0.143066)\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n </td>\r\n <td *ngIf=\"type === 'mat'\">\r\n <span class=\"mx-2 cursor-pointer\" (click)=\"routeToMat(obj.storeId,obj.clientId,obj.clientName)\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_10640_18061)\">\r\n <path\r\n d=\"M0.976562 10C0.976562 10 4.3099 3.33337 10.1432 3.33337C15.9766 3.33337 19.3099 10 19.3099 10C19.3099 10 15.9766 16.6667 10.1432 16.6667C4.3099 16.6667 0.976562 10 0.976562 10Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M10.1432 12.5C11.5239 12.5 12.6432 11.3808 12.6432 10C12.6432 8.61933 11.5239 7.50004 10.1432 7.50004C8.76252 7.50004 7.64323 8.61933 7.64323 10C7.64323 11.3808 8.76252 12.5 10.1432 12.5Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_10640_18061\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" transform=\"translate(0.143066)\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span> \r\n \r\n </td>\r\n \r\n \r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n <div *ngIf=\"!loading && !noData\" class=\"my-3\">\r\n <lib-pagination [itemsPerPage]=\"pageSize\" [currentPage]=\"currentPage\" [totalItems]=\"totalItems\"\r\n [paginationSizes]=\"paginationSizes\" [pageSize]=\"setpageSize()\" (pageChange)=\"onPageChange($event)\"\r\n (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div>\r\n </div>\r\n</div>","import { Component,HostListener, OnDestroy, OnInit,Input } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { takeUntil, Subject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'lib-retrigger',\r\n templateUrl: './re-trigger.component.html',\r\n styleUrl: './re-trigger.component.scss'\r\n})\r\nexport class ReTriggerComponent implements OnInit,OnDestroy {\r\n\r\n dropDown: boolean = false;\r\n loading:boolean = true;\r\n noData:boolean = false;\r\n dropdownItems:any[] = [];\r\n selectedItem: any = 'Audit';\r\n selectedData:any = 'To Queue';\r\n standardData:any = ['To Queue','To User']\r\n Comment:any = '';\r\n userId:any = '';\r\n private readonly destroy$ = new Subject();\r\n @Input() reTrigerData:any;\r\n userList: any = [];\r\n\r\n constructor(public activeModal:NgbActiveModal,private service:TicketService){\r\n\r\n }\r\n\r\n @HostListener('document:click', ['$event'])\r\n onClick(event: MouseEvent) {\r\n const\r\n target = event.target as HTMLElement;\r\n if (!target.closest('.dropDown')) {\r\n this.dropDown = false;\r\n }\r\n }\r\n\r\nngOnInit(){\r\n if(this.reTrigerData?.data?.auditType ==='ReAudit'){\r\n this.dropdownItems = ['Audit','ReAudit']\r\n }else if(this.reTrigerData?.data?.auditType ==='Audit'){\r\n this.dropdownItems = ['Audit']\r\n }\r\n this.getuserList();\r\n}\r\n\r\ngetuserList(){\r\n this.service.getuserList().subscribe({\r\n next:(res:any)=>{\r\n if(res && res.code === 200) {\r\n this.userList = res?.data?.result;\r\n }\r\n },\r\n })\r\n}\r\n\r\nngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n}\r\n\r\nselectRadio(value:any){\r\n this.selectedData = value;\r\n}\r\n\r\nopenDropdown(event: MouseEvent) {\r\n event.stopPropagation();\r\n this.dropDown = !this.dropDown;\r\n}\r\n\r\nselectItem(value: any) {\r\n this.selectedItem = value;\r\n this.dropDown = false;\r\n}\r\n\r\nonReportSelect(event:any){\r\n this.userId = event;\r\n}\r\n\r\ncloseModal(){\r\n let data:any = {\r\n fileDate: this.reTrigerData?.data?.fileDate,\r\n storeId: this.reTrigerData?.data?.storeId,\r\n auditType: this.selectedItem,\r\n zoneName : this.reTrigerData?.data?.zoneName,\r\n triggerType: this.selectedData === 'To Queue' ? 'queue' : 'user',\r\n totalCount: this.selectedItem ==='Audit' ? this.reTrigerData?.data?.beforeCount : this.reTrigerData?.data?.afterCount,\r\n comments: this.Comment,\r\n moduleType : this.reTrigerData?.data?.moduleType\r\n }\r\n this.selectedData === 'To User' ? data.userId = this.userId.userId : ''\r\n this.activeModal.close(data);\r\n}\r\n\r\n}\r\n","<div class=\"card\">\r\n \r\n <div class=\"card-header border-0\">\r\n <div class=\"card-title d-grid\">\r\n <div class=\"card-title\">Re-trigger File</div>\r\n <div class=\"text-sub\">Re-trigger the file to a queue or other users</div>\r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <div class=\"\">\r\n <label class=\"label\">Push Form</label>\r\n <div class=\"position-relative w-100 mt-3 mb-5\">\r\n <button type=\"button\" (click)=\"openDropdown($event)\"\r\n class=\"btn btn-default w-100 btn-outline btn-outline-default rounded-3 text-nowrap border-val d-flex justify-content-between\">\r\n {{selectedItem}}\r\n <span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\"\r\n viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M5 7.5L10 12.5L15 7.5\" stroke=\"#667085\" stroke-width=\"1.66667\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></span>\r\n </button>\r\n <div *ngIf=\"dropDown\" class=\"card py-1 w-100 position-absolute top-50px end-0\">\r\n <ul *ngFor=\"let item of dropdownItems\" class=\"list-unstyled\">\r\n <li [ngClass]=\"selectedItem === item ? 'active' : ''\"\r\n class=\"camera px-5 items fw-semibold cursor-pointer py-2\"\r\n (click)=\"selectItem(item)\">{{item}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mt-5 cursor-pointer d-flex mb-5\">\r\n <div *ngFor=\"let data of standardData\" (click)=\"selectRadio(data)\" class=\"d-flex align-items-center me-20\">\r\n <input [checked]=\"selectedData === data\" type=\"radio\" class=\"radio\">\r\n <span class=\"ms-3 standard\">{{data}}</span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"selectedData === 'To User'\" class=\"w-100 mb-5\">\r\n <label for=\"infraDownTime\" class=\"label mb-3\">Select User<span class=\"alert-required\"></span></label>\r\n <lib-select [items]=\"userList\" [multi]=\"false\" [searchField]=\"'userName'\" [idField]=\"'userId'\"\r\n (selected)=\"onReportSelect($event)\" [selectedValues]=\"[userId]\"></lib-select>\r\n </div>\r\n <div>\r\n <label class=\"label mb-3\">Comments</label>\r\n <textarea class=\"form-control\" [(ngModel)]=\"Comment\"></textarea>\r\n </div>\r\n <div class=\"d-flex mt-5\">\r\n <button class=\"btn btn-outline w-100 me-2\" (click)=\"activeModal.dismiss()\">Cancel</button>\r\n <button *ngIf=\"selectedData === 'To User'\" class=\"btn btn-primary w-100 ms-2\" [disabled]=\"!userId || !Comment\" (click)=\"closeModal()\">Submit</button>\r\n <button *ngIf=\"selectedData === 'To Queue'\" class=\"btn btn-primary w-100 ms-2\" [disabled]=\"!Comment\" (click)=\"closeModal()\">Submit</button>\r\n </div>\r\n </div>\r\n</div>","import { ChangeDetectorRef, Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { ToastService } from 'tango-app-ui-shared';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { Subject, takeUntil } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'lib-count',\r\n templateUrl: './count.component.html',\r\n styleUrl: './count.component.scss'\r\n})\r\nexport class CountComponent implements OnInit,OnDestroy {\r\n\r\n private readonly destroy$ = new Subject();\r\n @Input() data:any;\r\n loading:any = true;\r\n noData:any=false;\r\n auditImages:any;\r\n \r\n constructor(private Service:TicketService,private toast:ToastService,private excel : ExcelService,private cd: ChangeDetectorRef){}\r\n ngOnInit(){\r\n this.getAuditImages();\r\n }\r\n \r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n \r\n getAuditImages(){\r\n let params:any = {\r\n fileDate: this.data?.fileDate,\r\n storeId:this.data?.storeId,\r\n imageType:this.data?.imageType,\r\n export : false,\r\n moduleType : this.data?.selectedType,\r\n zoneName: this.data?.zoneName\r\n }\r\n this.Service.getAuditImages(params).pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any)=>{\r\n if(res && res?.code === 200){\r\n this.auditImages = res?.data?.result;\r\n this.loading = false;\r\n this.noData = false;\r\n }else{\r\n this.noData = true;\r\n this.loading = false;\r\n }\r\n this.cd.detectChanges();\r\n },\r\n error:(err:any)=>{\r\n this.noData = true;\r\n this.loading = false;\r\n },\r\n })\r\n \r\n }\r\n \r\n exportTable(){\r\n let params:any = {\r\n fileDate: this.data?.fileDate,\r\n storeId:this.data?.storeId,\r\n imageType:this.data?.imageType,\r\n export : true,\r\n moduleType: this.data?.selectedType,\r\n zoneName: this.data?.zoneName\r\n }\r\n let type = this.data?.type === 'before' ? 'BeforeCount' : 'AfterCount'\r\n this.Service.ExportAuditImagesasxlsx(params).pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any)=>{\r\n if(res){\r\n this.excel.saveAsZipFile(res,type)\r\n }\r\n },\r\n error:(err:any)=>{\r\n this.toast.getErrorToast(err?.error)\r\n },\r\n })\r\n \r\n }\r\n \r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-header\">\r\n <div class=\"card-title d-grid\">\r\n <div *ngIf=\"data?.type\" class=\"card-label\">{{data?.type | titlecase}} Count - {{data?.storeId}}</div>\r\n <div class=\"text-sub\">{{data?.fileDate | customDateFormat}}</div>\r\n </div>\r\n <div class=\"card-toolbar\">\r\n <button *ngIf=\"!noData\" type=\"button\" (click)=\"exportTable()\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\"><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>\r\n <span class=\"ms-2\">Export</span> </button>\r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <div class=\"row mx-3\">\r\n <div class=\"col-md-12 item scroll-y\">\r\n <div class=\"item\" *ngFor=\"let images of auditImages;let i=index\" style=\"padding: 10px;\">\r\n <img class=\"mx-3 my-3 img\" [src]=\"images?.imgPath\">\r\n <div class=\"text-center m-0 fs-7 fw-bold\">{{images?.imgName}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"loading\">\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 </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData\">\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 w-25\" 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\r\n","import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Subject, takeUntil } from 'rxjs';\r\nimport { GlobalStateService } from 'tango-app-ui-global';\r\nimport dayjs from \"dayjs\";\r\nimport \"dayjs/locale/en\";\r\nimport utc from \"dayjs/plugin/utc\";\r\nimport timezone from \"dayjs/plugin/timezone\";\r\nimport { ReTriggerComponent } from '../re-trigger/re-trigger.component';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { ToastService } from 'tango-app-ui-shared';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { CountComponent } from '../count/count.component';\r\n\r\n\r\n@Component({\r\n selector: 'lib-audit-metrics',\r\n templateUrl: './audit-metrics.component.html',\r\n styleUrl: './audit-metrics.component.scss'\r\n})\r\nexport class AuditMetricsComponent implements OnInit,OnDestroy {\r\n noData:boolean = false;\r\n loading:boolean = true;\r\n\r\n storesData:any = [];\r\n activity:any = [\r\n {type:'Audit',FileDate:'28-11-2023',Time:'03:24 pm',beforeCout:'300',AfterCount:'100'},\r\n {type:'Re-Audit',FileDate:'28-10-2023',Time:'03:24 pm',beforeCout:'350',AfterCount:'120'},\r\n {type:'Audit',FileDate:'28-11-2023',Time:'03:24 pm',beforeCout:'300',AfterCount:'100'}\r\n ]\r\n @ViewChild('activitylog') activitylog:any;\r\n private readonly destroy$ = new Subject();\r\n headerFilter: any;\r\n sortColumName: any = '';\r\n sortBy: any = 1;\r\n filterByClient: any = [];\r\n filterByStatus: any = [];\r\n pagination: any = [10, 20, 30];\r\n searchTerm: any;\r\n limit:any = 10;\r\n offset:any = 1;\r\n selectedValue: string;\r\n dayjs = dayjs;\r\n filterByStore: any = [];\r\n totalCount: any; \r\n selectedTab:any = '';\r\n\r\n dataObject:any = [\r\n { Description: 'Module Type',type:'single', Issues: [{id:'traffic', text: \"Traffic\"},{id:'zone', text: \"Zone\" }]},\r\n { Description: 'Clients', Issues: [] },\r\n { Description: 'Status', Issues: [{id:'closed', text: \"Completed\" }, {id:'inprogress', text: \"Inprogress\" },{id:'drafted', text: \"Draft\" },{id:'assigned', text: \"Assigned\" },{id:'not_assign', text: \"Not Assigened\" },{id:'skipped', text: \"Skip\"},] }\r\n ];\r\n \r\n clientList: any;\r\n selectedType: any = 'traffic';\r\n\r\n constructor(private gs:GlobalStateService,private modalService:NgbModal,private service: TicketService,private toast:ToastService,private excel:ExcelService){\r\n \r\n }\r\n\r\n ngOnInit(){\r\n this.gs.dataRangeValue.pipe(takeUntil(this.destroy$)).subscribe((data: any) => {\r\n if(data!=null){\r\n this.headerFilter = data\r\n this.metricsList();\r\n }\r\n })\r\n }\r\n\r\n metricsList(){\r\n let data:any = {\r\n fromDate: this.dayjs(this.headerFilter?.date?.startDate).format('YYYY-MM-DD'),\r\n toDate: this.dayjs(this.headerFilter?.date?.endDate).format('YYYY-MM-DD'),\r\n filterByClientId : this.filterByClient,\r\n filterByStoreId : this.filterByStore,\r\n filterByStatus : this.filterByStatus,\r\n filterByAuditType : this.selectedTab ===''? [] : [this.selectedTab],\r\n filterByModuleType: [this.selectedType],\r\n searchValue: this.searchTerm,\r\n sortBy: this.sortBy,\r\n limit: this.limit,\r\n offset: this.offset,\r\n isExport: false\r\n };\r\n if(this.sortColumName){data.sortColumnName = this.sortColumName}else if(this.searchTerm){data.searchValue = this.searchTerm}\r\n this.getclientList();\r\n this.service.getstoreMetrics(data).pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any) => {\r\n if(res && res?.code === 200){\r\n this.storesData = res?.data?.result;\r\n this.totalCount = res?.data?.count;\r\n if(!this.storesData?.length){\r\n this.noData = true;\r\n }\r\n if(this.totalCount < 10){\r\n this.pagination = [this.totalCount]\r\n }else{\r\n this.pagination = [10, 20, 30]\r\n }\r\n this.loading = false;\r\n this.noData = false;\r\n }else{\r\n this.noData = true;\r\n this.loading = false;\r\n }\r\n },\r\n error:(err:any)=>{\r\n this.noData = true;\r\n this.loading = false;\r\n this.toast.getErrorToast(err?.message)\r\n }\r\n })\r\n}\r\n\r\nsetItemsperPage(){\r\n if(this.totalCount < 10){\r\n return this.totalCount;\r\n }else{\r\n return this.limit;\r\n }\r\n}\r\n\r\ngetclientList(){\r\n this.service.getclientList().pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any) => {\r\n if(res && res?.code ===200){\r\n this.clientList = res?.data?.result;\r\n const issues = this.clientList.map((obj: any) => ({ text: obj.clientName,id:obj.clientId }));\r\n const uniqueIssues:any[] = [];\r\n const Clients = new Set();\r\n issues.forEach((issue:any) => {\r\n if (!Clients.has(issue.text)) {\r\n Clients.add(issue.text);\r\n uniqueIssues.push(issue);\r\n }\r\n });\r\n const filtredObject = (this.dataObject.find((obj: any) => obj.Description === \"Clients\"))\r\n filtredObject.Issues = uniqueIssues;\r\n }\r\n },\r\n error:(err:any) => {\r\n \r\n },\r\n})\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n\r\n receiveData(data:any) {\r\n this.filterByClient = data.find((obj:any) => obj.Description === \"Clients\")?.Issues.map((item: any) => item?.id);\r\n this.filterByStatus = data.find((obj:any) => obj.Description === \"Status\")?.Issues?.map((item: any) => item?.id);\r\n this.selectedType = data.find((obj:any) => obj.Description ==='Module Type')?.Issues?.id;\r\n this.metricsList();\r\n }\r\n\r\n onPageChange(pageOffset: any) {\r\n this.pagination.offset = pageOffset;\r\n this.metricsList();\r\n }\r\n \r\n onPageSizeChange(pageSize: any) {\r\n this.pagination.limit = pageSize;\r\n this.pagination.offset = 1;\r\n this.metricsList();\r\n }\r\n\r\n exportXLSX(){\r\n let data:any = {\r\n fromDate: this.dayjs(this.headerFilter?.date?.startDate).format('YYYY-MM-DD'),\r\n toDate: this.dayjs(this.headerFilter?.date?.endDate).format('YYYY-MM-DD'),\r\n filterByClientId : this.filterByClient,\r\n filterByStoreId : this.filterByStore,\r\n filterByStatus : this.filterByStatus,\r\n filterByAuditType : this.selectedTab ===''? [] : [this.selectedTab],\r\n filterByModuleType: [this.selectedType],\r\n searchValue: this.searchTerm,\r\n sortBy: this.sortBy,\r\n limit: 10000,\r\n offset: this.offset,\r\n isExport: true\r\n };\r\n if(this.sortColumName){data.sortColumnName = this.sortColumName}else if(this.searchTerm){data.searchValue = this.searchTerm}\r\n this.service.getstoreMetricsExport(data).pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any) => {\r\n if(res){\r\n this.excel.saveAsExcelFile(res,'AuditMetrics')\r\n }\r\n },\r\n error:(err:any)=>{\r\n this.toast.getErrorToast(err?.message)\r\n }\r\n })\r\n }\r\n\r\n selectedTabs(data:any){\r\n if(data === 'all'){\r\n this.selectedTab = '';\r\n }else{\r\n this.selectedTab = data;\r\n }\r\n this.limit = 10;\r\n this.offset = 1;\r\n this.metricsList();\r\n }\r\n\r\n searchData(){\r\n this.searchTerm = this.searchTerm;\r\n this.metricsList();\r\n }\r\n\r\n openBeforecount(value:any) {\r\n const modalRef = this.modalService.open(CountComponent,{\r\n centered:true,\r\n size:'xl'\r\n })\r\n modalRef.componentInstance.data ={\r\n type : 'before',\r\n fileDate:value?.fileDate,\r\n storeId: value?.storeId,\r\n selectedType: this.selectedType,\r\n zoneName:value?.zoneName,\r\n imageType: 'BC'\r\n }\r\n}\r\nopenAftercount(value:any){\r\n const modalRef = this.modalService.open(CountComponent,{\r\n centered:true,\r\n size:'xl'\r\n })\r\nmodalRef.componentInstance.data ={\r\n type : 'after',\r\n fileDate:value?.fileDate,\r\n storeId: value?.storeId,\r\n selectedType: this.selectedType,\r\n zoneName:value?.zoneName,\r\n imageType: 'AC'\r\n}\r\n}\r\n\r\nopenView(){\r\n const modalRef = this.modalService.open(this.activitylog)\r\n}\r\n\r\nopenreTrigger(value:any){\r\n const modalRef = this.modalService.open(ReTriggerComponent,{\r\n centered:true,\r\n // size:''\r\n })\r\n modalRef.componentInstance.reTrigerData ={\r\n type : 'after',\r\n data: value,\r\n selectedType : this.selectedType\r\n }\r\n modalRef.closed.subscribe((res: any) => {\r\n if (res) {\r\n this.service.auditretrigger(res).pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any)=>{\r\n if(res && res.code === 200){\r\n this.toast.getSuccessToast(res?.data?.result);\r\n this.metricsList();\r\n } \r\n },\r\n error:(err:any)=> {\r\n this.toast.getErrorToast(err?.message)\r\n }\r\n })\r\n }\r\n } )\r\n}\r\n\r\nstatusBadge(value:any){\r\n let AccountStatus = value;\r\n if(AccountStatus === 'closed'){\r\n return 'badge-light-success'\r\n }else if(AccountStatus === 'assigned' || AccountStatus === 'not Assigned'){\r\n return 'badge-light-warning'\r\n }else{\r\n return 'badge-light-primary'\r\n }\r\n}\r\n\r\nsortData(value:any){\r\n this.sortColumName = value\r\n this.sortBy *= -1;\r\n this.metricsList();\r\n}\r\n\r\n\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 class=\"card-label mb-2\">Audit Metrics</span>\r\n <!-- <span class=\"text-sub mb-2\">Last updated 1 hour ago</span> -->\r\n </h3>\r\n <div 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\" placeholder=\"Search\" autocomplete=\"off\"\r\n (change)=\"searchData()\" [(ngModel)]=\"searchTerm\" />\r\n \r\n <lib-filters *ngIf=\"clientList\" [dataObject]=\"dataObject\" (appliedFilters)=\"receiveData($event)\"></lib-filters>\r\n\r\n <button type=\"button\" *ngIf=\"!noData&&!loading\" (click)=\"exportXLSX()\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path\r\n 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\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2\">Export</span>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <ul class=\"nav nav-stretch nav-line-tabs1 nav-line-tabs border-transparent flex-nowrap horizontal-scroll\">\r\n <li class=\"nav-item\" (click)=\"selectedTabs('all')\">\r\n <a [ngClass]=\"selectedTab === '' ? 'active' : ''\" class=\"nav-link cursor-pointer no-border me-2\">\r\n All <span class=\"mx-2\"\r\n [ngClass]=\"selectedTab === '' ? 'text-border-priamry' : 'text-border'\">{{totalCount?.totalauditCount ? totalCount?.totalauditCount : 0}}</span>\r\n </a>\r\n </li>\r\n <li class=\"nav-item\" (click)=\"selectedTabs('Audit')\">\r\n <a [ngClass]=\"selectedTab === 'Audit' ? 'active' :''\" class=\"nav-link cursor-pointer no-border me-2\">\r\n Audit <span class=\"mx-2\"\r\n [ngClass]=\"selectedTab === 'Audit' ? 'text-border-priamry' : 'text-border'\">{{totalCount?.auditCount ? totalCount?.auditCount : 0}}</span>\r\n </a>\r\n </li>\r\n <li class=\"nav-item\" (click)=\"selectedTabs('ReAudit')\">\r\n <a [ngClass]=\"selectedTab === 'ReAudit' ? 'active' : ''\" class=\"nav-link cursor-pointer no-border me-2\">\r\n Re Audit <span class=\"mx-2\"\r\n [ngClass]=\"selectedTab === 'ReAudit' ? 'text-border-priamry' : 'text-border'\">{{totalCount?.reauditCount ? totalCount?.reauditCount : 0}}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n <div *ngIf=\"!loading && !noData\" class=\"mt-5\">\r\n <div class=\"table-responsive\">\r\n <table class=\"table bottom-border text-nowrap\">\r\n <thead>\r\n <tr>\r\n <th>File Date</th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('storeName')\">\r\n Store Name\r\n <span\r\n *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('storeId')\">\r\n Store Id\r\n <span\r\n *ngIf=\"sortColumName === 'storeId' && sortBy !== 1 || sortColumName !== 'storeId'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"/>\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'storeId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('userName')\">\r\n User Name\r\n <span\r\n *ngIf=\"sortColumName === 'userName' && sortBy !== 1 || sortColumName !== 'userName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'userName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"/>\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('userEmail')\">\r\n User Email\r\n <span\r\n *ngIf=\"sortColumName === 'userEmail' && sortBy !== 1 || sortColumName !== 'userEmail'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'userEmail' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th>BC</th>\r\n <th>AC</th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('accuracy')\">\r\n Accuracy\r\n <span\r\n *ngIf=\"sortColumName === 'accuracy' && sortBy !== 1 || sortColumName !== 'accuracy'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'accuracy' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('timeSpent')\">\r\n TimeSpent\r\n <span\r\n *ngIf=\"sortColumName === 'timeSpent' && sortBy !== 1 || sortColumName !== 'timeSpent'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'timeSpent' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th>Audit Type</th>\r\n <th>Status</th>\r\n <th><span>Actions</span></th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let item of storesData\">\r\n <td>\r\n <div>{{ item?.fileDate ? item?.fileDate :'NA' }}</div>\r\n </td>\r\n <td>\r\n <div>{{ item?.storeName ? item?.storeName :'NA' }}</div>\r\n </td>\r\n <td>\r\n <div>{{item?.storeId ? item?.storeId : 'NA'}}</div>\r\n </td>\r\n <td>\r\n <div>{{ item?.userName ? item?.userName :'NA' }}</div>\r\n </td>\r\n <td>\r\n <div>{{ item?.userEmail ? item?.userEmail :'NA' }}</div>\r\n </td>\r\n <td>\r\n <div class=\"d-flex align-items-center\">\r\n <div [ngClass]=\"item?.beforeCount ? 'text-decoration-underline':''\" class=\"text-title text-primary cursor-pointer mb-1\" (click)=\"openBeforecount(item)\">\r\n {{ item?.beforeCount ?? '--' }}</div>\r\n </div>\r\n </td>\r\n <td>\r\n <div class=\"d-flex align-items-center\">\r\n <div [ngClass]=\"item?.afterCount ? 'text-decoration-underline':''\" class=\"text-title text-primary cursor-pointer mb-1\" (click)=\"openAftercount(item)\">\r\n {{ item?.afterCount ?? '--' }}</div>\r\n </div>\r\n </td>\r\n <td>\r\n <div>{{ item?.accuracy ?? '--' }}</div>\r\n </td>\r\n <td>{{ item?.timeSpent ? item?.timeSpent :'NA'}}</td>\r\n <td><span *ngIf=\"item?.auditType\" [ngClass]=\"item?.auditType === 'Audit' ? 'badge-light-success':'badge-light-warning'\" class=\"badge\">{{ item?.auditType }}</span></td>\r\n <td><span *ngIf=\"item?.status\" [ngClass]=\"statusBadge(item?.status)\" class=\"badge\">{{ item?.status | titlecase}}</span></td>\r\n <td><button class=\"btn btn-default btn-outline\" (click)=\"openView()\">View-Log</button>\r\n <button class=\"btn btn-default btn-outline ms-3\" [disabled]=\"item?.status === 'not_assign' || item?.status === 'assigned'\" (click)=\"openreTrigger(item)\">Re-Trigger</button></td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!loading && !noData\" class=\"my-3\">\r\n <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\" [totalItems]=\"totalCount\"\r\n [paginationSizes]=\"pagination\" [pageSize]=\"setItemsperPage()\" (pageChange)=\"onPageChange($event)\"\r\n (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div>\r\n\r\n <div *ngIf=\"loading\" 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 </div>\r\n <div *ngIf=\"noData\" 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 w-25\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div> \r\n\r\n </div>\r\n</div>\r\n\r\n<ng-template #activitylog let-modal>\r\n <div class=\"card\">\r\n <div class=\"card-header\">\r\n <div class=\"card-title\">\r\n <span class=\"card-label\">Activity Log</span>\r\n </div>\r\n <div class=\"card-toolbar\">\r\n <div class=\"cursor-pointer\" (click)=\"modal.dismiss()\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></div> \r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <div *ngFor=\"let log of activity\" class=\"d-flex mb-5 ms-5\">\r\n <div\r\n class=\"d-flex flex-column justify-content-center align-items-center pe-3\">\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <!-- <img class=\"msgprofile\"\r\n src=\"./assets/tango/Images/userProfile.svg\"> -->\r\n <div class=\"symbol symbol-35px symbol-circle\">\r\n <span [ngClass]=\"log?.type === 'Audit' ? 'badge-light-success' : 'badge-light-primary'\" class=\"symbol-label badge-light-primary text-symbol\">\r\n <span [ngClass]=\"log?.type === 'Audit' ? 'text-success badge badge-light-success' : 'text-primary badge badge-light-primary'\" class=\"fs-4 fw-normal\">\r\n {{log?.type?.slice(0,1) | uppercase }}\r\n </span>\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"p-0 h-100 mt-1 border border-1 border-gray\" style=\"width:0px\"></div>\r\n </div>\r\n <div class=\"py-3 pt-0\">\r\n <div class=\"activity-title fw-semibold mt-2 d-flex mb-4\">\r\n <span>{{log?.type}} </span><span class=\"ms-5 list\"><li>Fasila</li></span>\r\n </div>\r\n <div class=\"date-time mb-4\">\r\n {{log?.FileDate}} | {{log?.Time}}\r\n </div>\r\n <div class=\"\"><span class=\"badge badge-light-default fw-semibold\">Before Count : {{log?.beforeCout}}</span>\r\n <span class=\"badge badge-light-default fw-semibold ms-3\">After Count : {{log?.AfterCount}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>","import { ChangeDetectorRef, Component, EventEmitter, HostListener, Input, OnInit, Output, Provider, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { TicketService } from '../../services/ticket.service';\r\n\r\nconst SELECT_CONTROL_VALUE_ACCESSOR: Provider = {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => ReactiveSelectComponent),\r\n multi: true,\r\n};\r\n\r\n@Component({\r\n selector: 'lib-reactive-select',\r\n templateUrl: './reactive-select.component.html',\r\n styleUrl: './reactive-select.component.scss',\r\n providers: [SELECT_CONTROL_VALUE_ACCESSOR]\r\n})\r\nexport class ReactiveSelectComponent implements ControlValueAccessor, OnInit {\r\n\r\n private onTouched: Function;\r\n private onChanged: Function;\r\n @Input() isDisabled: boolean;\r\n @Input() idField: string\r\n @Input() nameField: string\r\n @Input() label: string\r\n @Input() data: any\r\n @Output() itemChange = new EventEmitter()\r\n protected isOpened: boolean = false\r\n protected selected: Record<string, any> | null = null\r\n protected selectedId: string | number\r\n instanceId: string;\r\n\r\n\r\n constructor(private apiService: TicketService, private cd: ChangeDetectorRef) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.instanceId = crypto.randomUUID();\r\n this.apiService.dropDownTrigger.subscribe((e) => {\r\n if (e !== this.instanceId) {\r\n this.isOpened = false\r\n this.cd.detectChanges()\r\n }\r\n })\r\n }\r\n\r\n\r\n writeValue(val: string | number): void {\r\n this.selectedId = val\r\n this.selected = this.data.filter((item: Record<string, any>) => item?.[this.idField] === val)[0]\r\n \r\n }\r\n registerOnChange(fn: any): void {\r\n this.onChanged = fn\r\n \r\n }\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn\r\n }\r\n setDisabledState?(isDisabled: boolean): void {\r\n this.isDisabled = isDisabled\r\n\r\n }\r\n\r\n onSelect(item: Record<string, any>) {\r\n this.onTouched()\r\n this.selected = item\r\n this.selectedId = item?.[this.idField]\r\n this.isOpened = false\r\n this.itemChange.next(this.selectedId)\r\n this.onChanged(this.selectedId)\r\n }\r\n\r\n @HostListener('document:click', ['$event'])\r\n onClick(event: MouseEvent) {\r\n // console.log(this.isDisabled)\r\n if (!this.isDisabled) {\r\n const targetElement = event.target as HTMLElement;\r\n if (!this.isComponentClicked(targetElement)) {\r\n this.isOpened = false;\r\n }\r\n }\r\n }\r\n\r\n isComponentClicked(targetElement: HTMLElement): boolean {\r\n const parentElement = targetElement.parentElement;\r\n if (parentElement) {\r\n const clickedOnComponent = parentElement.classList.contains('custom-select');\r\n if (clickedOnComponent) {\r\n return true;\r\n } else {\r\n return this.isComponentClicked(parentElement);\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n openDropdown(){\r\n this.isOpened = !this.isOpened;\r\n this.apiService.dropDownTrigger.next(this.instanceId)\r\n }\r\n\r\n\r\n}\r\n","<div class=\"custom-select\">\r\n <div class=\"form-group\">\r\n <label *ngIf=\"label\" class=\"form-label\">{{label}}</label>\r\n <div class=\"position-relative\">\r\n <div (click)=\"openDropdown()\" [ngClass]=\"isDisabled ? 'disable' : ''\" class=\"form-select dropselect ellipse1\">\r\n {{selected?.[nameField]}}</div>\r\n <div *ngIf=\"isOpened\" class=\"card py-2 w-100 position-absolute end-0 z-1 drop-list\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li *ngFor=\"let item of data\" (click)=\"onSelect(item)\"\r\n [ngClass]=\"item?.[idField] === selected?.[idField] ? 'active' : ''\"\r\n class=\"text px-5 items cursor-pointer py-4 \">\r\n {{item?.[nameField]}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</div>","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, HostListener, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { TicketService } from '../../services/ticket.service';\r\n@Component({\r\n selector: 'lib-group-select',\r\n templateUrl: './group-select.component.html',\r\n styleUrl: './group-select.component.scss'\r\n})\r\nexport class GroupSelectComponent implements OnInit, OnChanges {\r\n @HostListener('document:click', ['$event'])\r\n onClick(event: MouseEvent) {\r\n const target = event.target as HTMLElement;\r\n if (!target.closest('.dropdown')) {\r\n this.showDropdown = false;\r\n }\r\n }\r\n \r\n @Input() items: any\r\n @Input() searchField: string\r\n @Input() multi: boolean\r\n @Input() idField: string\r\n @Input() selectedValues: any = []\r\n @Input() disabled: boolean | undefined\r\n @Input() label: string\r\n @Output() selected = new EventEmitter<any>()\r\n filteredValues: any = []\r\n showDropdown: boolean\r\n searchValue: string\r\n instanceId: any;\r\n \r\n \r\n constructor(private cd: ChangeDetectorRef, private authService:TicketService) { }\r\n ngOnInit(): void {\r\n this.instanceId = crypto.randomUUID();\r\n this.authService.dropDownTrigger.subscribe((e)=>{ \r\n if(e !== this.instanceId){ \r\n this.showDropdown = false\r\n this.cd.detectChanges()\r\n }\r\n })\r\n }\r\n \r\n ngOnChanges(changes: SimpleChanges): void {\r\n \r\n if (changes['items'] && this.items?.length) {\r\n this.initializeItems();\r\n }\r\n if (changes['selectedValues'] && Array.isArray(changes['selectedValues']?.currentValue) && changes['selectedValues']?.currentValue?.length > 0 && changes['selectedValues']?.currentValue[0]) { \r\n this.updateSelectedValues();\r\n }\r\n }\r\n \r\n initializeItems() {\r\n this.filteredValues = this.items.map((item: any) => ({ ...item }));\r\n this.updateSelectedValues()\r\n }\r\n \r\n updateSelectedValues() { \r\n this.selectedValues?.forEach((selectedItem: any) => {\r\n const item = this.filteredValues?.find((filteredItem: any) => filteredItem?.[this.idField] === selectedItem?.[this.idField]);\r\n if (item) {\r\n item.isSelected = true;\r\n }\r\n });\r\n \r\n }\r\n \r\n openDropdown(event: any) {\r\n this.authService.dropDownTrigger.next(this.instanceId)\r\n event.stopPropagation();\r\n this.showDropdown = !this.showDropdown;\r\n }\r\n \r\n onInput(event: any) {\r\n if (!event.target.value) {\r\n this.filteredValues = [...this.items];\r\n } else {\r\n const searchTerm = event.target.value.toLowerCase();\r\n this.filteredValues = this.items.filter((item: any) =>\r\n item[this.searchField].toLowerCase().includes(searchTerm)\r\n );\r\n }\r\n this.updateSelectedValues();\r\n this.cd.detectChanges();\r\n }\r\n \r\n onSelect(event: any, item: any) { \r\n if (this.multi) {\r\n if (event.currentTarget.checked) {\r\n this.selectedValues.push(item ); \r\n } else {\r\n this.selectedValues = this.selectedValues.filter((elem: any) => elem[this.idField] !== item[this.idField]);\r\n }\r\n } else {\r\n this.selectedValues = [{ ...item }];\r\n this.filteredValues.forEach((element:any) => {\r\n if(element[this.idField] !== item[this.idField]){\r\n element.isSelected = false\r\n }\r\n });\r\n this.showDropdown = false;\r\n }\r\n \r\n const valuesToEmit = this.selectedValues.map((value: any) => {\r\n const selectedItem = { ...value };\r\n delete selectedItem.isSelected;\r\n return selectedItem;\r\n });\r\n \r\n this.cd.detectChanges();\r\n this.emitSelectedValues(valuesToEmit);\r\n \r\n }\r\n \r\n onSelectAll(event: any) {\r\n const selectAll = event.currentTarget.checked;\r\n this.filteredValues.forEach((item: any) => item.isSelected = selectAll);\r\n \r\n if (selectAll) {\r\n this.selectedValues = [...this.filteredValues];\r\n } else {\r\n this.selectedValues = [];\r\n }\r\n \r\n const valuesToEmit = this.selectedValues.map((value: any) => {\r\n const { isSelected, ...selectedItem } = value;\r\n return selectedItem;\r\n });\r\n \r\n this.cd.detectChanges();\r\n this.emitSelectedValues(valuesToEmit);\r\n }\r\n \r\n \r\n emitSelectedValues(values: any[]) {\r\n if (this.multi) {\r\n this.selected.emit(values);\r\n } else {\r\n this.selected.emit(values[0]);\r\n }\r\n }\r\n \r\n checkIfAllSelected() {\r\n return this.filteredValues.every((item: any) => item.isSelected);\r\n }\r\n}\r\n","<div class=\"outer-container\">\r\n <div [ngClass]=\"disabled ? 'disable-input':''\" (click)=\"openDropdown($event)\" class=\"form-select\">\r\n <ng-container *ngIf=\"multi\" >\r\n <span *ngIf=\"selectedValues?.length\" class=\"select-value mx-2\"> <img class=\"me-2\" alt=\"Pic\" src=\"./assets/tango/Image/users-teams.svg\">{{selectedValues?.[0]?.[searchField]}}</span> \r\n <!-- <span *ngIf=\"selectedValues?.length > 1\" class=\"select-value mx-2\"><img class=\"me-2\" alt=\"Pic\" src=\"./assets/tango/Image/users-teams.svg\">{{selectedValues?.[1]?.[searchField]}}</span> -->\r\n <span class=\"select-value mx-2\" *ngIf=\"selectedValues?.length > 1\">+{{selectedValues?.length -1}}</span> {{label}} \r\n </ng-container>\r\n <ng-container *ngIf=\"!multi\" >\r\n {{selectedValues?.[0]?.[searchField]}}\r\n </ng-container>\r\n </div>\r\n <div [ngClass]=\"showDropdown ? '' : 'd-none'\" class=\"input-container dropdown\" >\r\n <div class=\"w-100 input-wrapper\">\r\n <input [(ngModel)]=\"searchValue\" placeholder=\"Search\" (input)=\"onInput($event)\" type=\"text\"> \r\n <svg class=\"search-icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"17\" viewBox=\"0 0 16 17\" fill=\"none\">\r\n <path d=\"M14 14.5L11.1 11.6M12.6667 7.83333C12.6667 10.7789 10.2789 13.1667 7.33333 13.1667C4.38781 13.1667 2 10.7789 2 7.83333C2 4.88781 4.38781 2.5 7.33333 2.5C10.2789 2.5 12.6667 4.88781 12.6667 7.83333Z\" stroke=\"#667085\" stroke-width=\"1.3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg> \r\n </div>\r\n <ul>\r\n <li *ngIf=\"multi && filteredValues?.length\">\r\n <label class=\"form-check\" [for]=\"instanceId\" >\r\n <input (change)=\"onSelectAll($event)\" [checked]=\"checkIfAllSelected()\" class=\"form-check-input me-3\" type=\"checkbox\"\r\n [id]=\"instanceId\">\r\n <span class=\"form-check-label\" >\r\n Select All\r\n </span>\r\n </label>\r\n </li>\r\n <li *ngFor=\"let item of filteredValues\" [ngClass]=\"item.isSelected && !multi ? 'selected' : ''\" >\r\n <label [for]=\"item[idField] + instanceId\" [ngClass]=\"multi ? '': 'ps-0'\" class=\"form-check\">\r\n <input [ngClass]=\"multi ? '': 'd-none'\" (change)=\"onSelect($event, item)\" [(ngModel)]=\"item.isSelected\" class=\"form-check-input me-3\" type=\"checkbox\" value=\"\"\r\n [id]=\"item[idField] + instanceId\">\r\n <span class=\"form-check-label\" >\r\n {{item[searchField]}}\r\n </span>\r\n </label>\r\n </li>\r\n <li *ngIf=\"!filteredValues?.length\" >\r\n <span class=\"d-flex align-items-center justify-content-center\" >No data found</span>\r\n </li>\r\n </ul> \r\n </div> \r\n \r\n</div>","import { ChangeDetectorRef, Component, OnDestroy, OnInit,ElementRef,ViewChild } from '@angular/core';\r\nimport { Subject, takeUntil } from 'rxjs';\r\nimport { GlobalStateService } from 'tango-app-ui-global';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { ToastService } from 'tango-app-ui-shared';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { FormBuilder, FormControl } from '@angular/forms';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: \"lib-footfall-dic\",\r\n templateUrl: \"./footfall-dic.component.html\",\r\n styleUrl: \"./footfall-dic.component.scss\",\r\n})\r\nexport class FootfallDicComponent implements OnInit,OnDestroy {\r\n searchValue: any;\r\n loading: boolean = false;\r\n noData: boolean = false;\r\n sortedColumn: any='';\r\n sortDirection: any=1;\r\n\r\n footfallView:boolean = true;\r\n headerFilters: any;\r\n footfallList_req: any;\r\n form: any;\r\n selectedRevopsType: FormControl;\r\n revopsTypeArray: any = [\r\n { value: \"\", label: \"All\" },\r\n { value: \"duplicateImages\", label: \"Duplicates\" },\r\n { value: \"employee\", label: \"Employee/Staff\" },\r\n { value: \"houseKeeping\", label: \"House Keeping\" },\r\n ];\r\n type: any = [\r\n { value: \"open\", label: \"Open\" },\r\n { value: \"closed\", label: \"Closed\" },\r\n ];\r\n // selectedStatus: FormControl;\r\n\r\n pendingArray: any = [\r\n // { value: \"\", label: \"All\" },\r\n { value: \"pending\", label: \"Pending\" },\r\n { value: \"approved\", label: \"Approved\" },\r\n { value: \"rejected\", label: \"Rejected\" },\r\n ];\r\n actionStatus: FormControl;\r\n filterForm:any;\r\n\r\n ticketData: any = {\r\n ticketName: \"Footfall Directory\",\r\n ticketId: \"TE_INF_F5645G4534A24\",\r\n storeName: \"LKST98 | RK Salai, Mylapore, Chennai, Tamil Nadu, India\",\r\n status: \"Open\",\r\n date: \"04 Sep 2023\",\r\n footfall: {\r\n total: 100,\r\n duplicates: 10,\r\n employee: 2,\r\n houseKeeping: 1,\r\n },\r\n duplicates: [\r\n { url: \"assets/img1.jpg\" },\r\n { url: \"assets/img2.jpg\" },\r\n { url: \"assets/img3.jpg\" },\r\n ],\r\n };\r\n selectedStores: any[] = []; \r\nallSelected: boolean = false;\r\nstores: any[] = []; \r\n private readonly destroy$ = new Subject();\r\n\r\n constructor(\r\n private gs: GlobalStateService,\r\n private ticketService: TicketService,\r\n private cd: ChangeDetectorRef,\r\n private toast: ToastService,private modalService: NgbModal,\r\n private excelservice: ExcelService,private fb: FormBuilder,\r\n ) {}\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n ngOnInit(): void {\r\n this.footfallView = true;\r\n\r\n this.selectedRevopsType = new FormControl('');\r\n this.filterForm = this.fb.group({\r\n selectedStatus: new FormControl('open'),\r\n actionStatus: new FormControl('pending'),\r\n ClusterList: new FormControl([]),\r\n });\r\n\r\n this.form = this.fb.group({\r\n selectedRevopsType: this.selectedRevopsType,\r\n });\r\n this.gs.dataRangeValue?.pipe(takeUntil(this.destroy$))?.subscribe({\r\n next: (data: any) => {\r\n if (data) {\r\n this.headerFilters = data;\r\n this.footfallList_req = {\r\n client: this.headerFilters.clients.toString(),\r\n fromDate: this.headerFilters?.date?.startDate,\r\n toDate: this.headerFilters?.date?.endDate,\r\n };\r\n this.getTicketSummary();\r\n this.getTicketList();\r\n this.getAllGroups();\r\n \r\n }\r\n },\r\n });\r\n }\r\n getFootfallSummaryData: any;\r\n getTicketSummary() {\r\n this.ticketService\r\n .getTicketSummaryApi(\r\n this.footfallList_req.client,\r\n this.footfallList_req.fromDate,\r\n this.footfallList_req.toDate\r\n )\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res?.data && res?.data?.result) {\r\n this.getFootfallSummaryData = res?.data?.result;\r\n } else {\r\n this.getFootfallSummaryData = [];\r\n }\r\n },\r\n error: (err: any) => {\r\n this.getFootfallSummaryData = [];\r\n },\r\n complete: () => {\r\n this.getFootfallSummaryData.length === 0;\r\n },\r\n });\r\n this.cd.detectChanges();\r\n }\r\n offset = 0;\r\n limit = 10;\r\n isExport:any = false;\r\n footfallListData:any;\r\n totalItems:any;\r\n paginationSizes = [10, 20, 30];\r\n getTicketList(){\r\n this.loading = true;\r\n this.searchValue = this.searchValue?.trim() || '';\r\n this.offset = this.offset || 1;\r\n this.limit = this.limit || 10;\r\n this.isExport = false;\r\n this.ticketService\r\n .getTicketListApi(\r\n this.footfallList_req.client,\r\n this.footfallList_req.fromDate,\r\n this.footfallList_req.toDate,\r\n this.searchValue,this.limit,\r\n this.offset,this.isExport,this.sortedColumn,this.sortDirection\r\n )\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.noData = false;\r\n this.loading = false;\r\n this.footfallListData = res?.data?.result;\r\n \r\n this.totalItems = res?.data?.count;\r\n if (this.totalItems < 10) { this.paginationSizes = [this.totalItems] } else { this.paginationSizes = [10, 20, 30] }\r\n } else {\r\n this.noData = true;\r\n this.loading = false;\r\n this.footfallListData =[];\r\n \r\n }\r\n this.cd.detectChanges();\r\n },\r\n error: (err: any) => {\r\n this.noData = true;\r\n this.loading = false;\r\n },\r\n complete: () => {\r\n this.loading = false;\r\n },\r\n });\r\n }\r\n\r\ncurrentPage:any = 1;\r\npageSize:any = 10;\r\n onPageChange(pageOffset: number) {\r\n this.currentPage = Number(pageOffset);\r\n this.offset = Number(pageOffset);\r\n this.limit =10;\r\n this.getTicketList();\r\n }\r\n\r\n onPageSizeChange(pageSize: number) {\r\n this.pageSize = Number(pageSize);\r\n this.limit = Number(pageSize);\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.getTicketList();\r\n }\r\n\r\n setpageSize() {\r\n if (this.totalItems < 10) {\r\n return this.totalItems;\r\n } else {\r\n return this.pageSize;\r\n }\r\n }\r\n searchData() {\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit=10;\r\n this.getTicketList();\r\n }\r\n\r\n exportXLSX() {\r\n this.searchValue = this.searchValue?.trim() || '';\r\n this.offset = 1;\r\n this.limit = 10000;\r\n this.isExport = true;\r\n this.ticketService\r\n .getTicketListExportApi(\r\n this.footfallList_req.client,\r\n this.footfallList_req.fromDate,\r\n this.footfallList_req.toDate,\r\n this.searchValue,this.limit,\r\n this.offset,this.isExport,this.sortedColumn,this.sortDirection\r\n )\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n this.excelservice.saveAsExcelFile(res, 'footfall directory ticket ')\r\n },\r\n error: (err: any) => {\r\n this.toast.getErrorToast('Error exporting data:' + err.error ? err.error : err.message);\r\n }\r\n })\r\n }\r\n\r\n onSort(column: string) {\r\n if (this.sortedColumn === column) {\r\n this.sortDirection = this.sortDirection === 1 ? -1 : 1;\r\n } else {\r\n this.sortedColumn = column;\r\n this.sortDirection = 1;\r\n }\r\n this.getTicketList();\r\n }\r\n storeCount:any;\r\n\r\n searchStoresData(){\r\nthis.getStores();\r\n }\r\n\r\n StoresSearchValue:any='';\r\n getStores(){\r\n this.ticketService.getTaggedStoresApi(\r\n this.footfallList_req.client,\r\n this.footfallList_req.fromDate,\r\n this.footfallList_req.toDate,\r\n this.StoresSearchValue,\r\n this.groups,\r\n ).pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.stores = res?.data?.result;\r\n this.storeCount = res.data?.count || 0;\r\n } else {\r\n this.stores = [];\r\n this.storeCount =0;\r\n }\r\n this.cd.detectChanges();\r\n },\r\n error: (err: any) => {\r\n this.stores =[];\r\n this.storeCount =0;\r\n },\r\n complete: () => {},\r\n }); \r\n }\r\ngetTaggedStoresData: any;\r\n\r\n\r\ntypeChange(event: any) {\r\n this.filterForm.get('selectedStatus')?.setValue(event || null);\r\n}\r\n\r\npendingChange(event: any) {\r\n this.filterForm.get('actionStatus')?.setValue(event || null);\r\n}\r\n\r\nRevopsTypeChange(event: any) {\r\n const selectedType = event ?? '';\r\n this.footfalloffset =1;\r\n if( selectedType === '') \r\nthis.footfalllimit = 1;\r\n else\r\n this.footfalllimit = 250;\r\n this.form.get('selectedRevopsType')?.setValue(selectedType);\r\nthis.allSelectValue =false;\r\n // Clear selected lists\r\n this.selectedEmployeeImagesList = [];\r\n this.selectedHousekeepingImagesList = [];\r\n this.selectedDuplicateImagesList = [];\r\nthis.cd.detectChanges();\r\n // Reset counts\r\n this.employeeACCount = '';\r\n this.houseKeepingACCount = '';\r\n this.duplicateACCount = '';\r\n this.dataStoreView(); \r\n}\r\n\r\n\r\n\r\n footfalloffset=1;\r\n footfalllimit=1;\r\nfootfallTicketsData:any=[];\r\nstoreIdValue:any;\r\n \r\n\r\ndataReset(){\r\n this.selectedStores = [];\r\n this.allSelected = false;\r\n this.form.get('selectedRevopsType')?.setValue('');\r\n this.filterForm.get('selectedStatus')?.setValue('open');\r\n this.filterForm.get('actionStatus')?.setValue('pending');\r\n this.dataStoreView();\r\n}\r\ndataApply() {\r\n this.allSelectValue =false\r\n this.dataStoreView();\r\n}\r\nimageUrl:any;\r\ndataIndexId:any;\r\ndateString:any;\r\n footfallNoData = false;\r\n footfallLoading = true;\r\n private lastSelectedTicket: any = null;\r\n\r\nhasInitialStoreSynced = false;\r\n\r\naddStoreIfNotExists(store: any) {\r\n if (this.hasInitialStoreSynced) return;\r\n\r\n const storeId = store?.storeId;\r\n if (storeId && !this.selectedStores.includes(storeId)) {\r\n this.selectedStores.push(storeId);\r\n }\r\n\r\n this.hasInitialStoreSynced = true;\r\n this.allSelected = this.selectedStores.length === this.stores.length;\r\n}\r\nselecteValues:any;\r\ndataStoreView(data?: any) {\r\n this.footfallTicketsData = [];\r\n this.footfallNoData = false;\r\n this.footfallLoading = true;\r\n const ticket = data?._source ? data : this.lastSelectedTicket;\r\n\r\n if (!ticket || !ticket._source) {\r\n this.footfallLoading = false;\r\n this.footfallNoData = true;\r\n this.toast.getErrorToast('No ticket data available');\r\n return;\r\n }\r\n\r\n this.lastSelectedTicket = ticket;\r\nthis.addStoreIfNotExists(ticket._source);\r\n this.dataIndexId = ticket._id || '';\r\n this.dateString = ticket._source.dateString || '';\r\n this.imageUrl = this.ticketService?.footfallCDN;\r\n this.storeIdValue = this.selectedStores; \r\n const revopsType = this.form.get('selectedRevopsType')?.value;\r\n const selectedStatus = this.filterForm.get('selectedStatus')?.value;\r\n const actionStatus = this.selecteValues = this.filterForm.get('actionStatus')?.value;\r\n\r\n const storeId = this.storeIdValue;\r\n const fromDate = this.footfallList_req.fromDate;\r\n const toDate = this.footfallList_req.toDate;\r\n const offset = this.footfalloffset;\r\n const limit = revopsType ==='' ? this.footfalllimit :this.footfalllimit = 250;\r\n\r\n this.ticketService\r\n .getTicketsApi(storeId, fromDate, toDate, revopsType, selectedStatus, actionStatus, offset, limit)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if(res && res.code ===200){\r\n if (res?.data?.result?.length === 0) {\r\n this.footfallTicketsData = [];\r\n this.footfallView = true;\r\n this.footfallNoData = true;\r\n this.footfallLoading = false;\r\n this.toast.getErrorToast('No data found for the selected filters');\r\n } else {\r\n this.footfallTicketsData = res?.data?.result ?? [];\r\n this.totalItemsFootfall = res?.data?.count;\r\n\r\n this.paginationSizes = this.totalItemsFootfall < 1\r\n ? [this.totalItemsFootfall]\r\n : [1];\r\n\r\n this.footfallView = false;\r\n this.footfallNoData = false;\r\n this.footfallLoading = false;\r\n }\r\n } else {\r\n this.footfallTicketsData = [];\r\n this.footfallView = false;\r\n this.footfallNoData = true;\r\n this.footfallLoading = false;\r\n }\r\n },\r\n error: () => {\r\n this.footfallTicketsData = [];\r\n this.footfallView = false;\r\n this.footfallNoData = true;\r\n this.footfallLoading = false;\r\n },\r\n complete: () => {\r\n this.cd.detectChanges();\r\n },\r\n });\r\n}\r\n\r\nisCollapsed = false;\r\n\r\ntoggleSidebar() {\r\n this.isCollapsed = !this.isCollapsed;\r\n}\r\n matchedType: any;\r\n\r\n matchedArray: any = [{ value: \"all\", label: \"matched: All\" }];\r\n onFilterApply() {\r\n if(this.selectedRevopsType.value === '') \r\nthis.footfalllimit = 1;\r\n else\r\n this.footfalllimit = 250;\r\n this.dataStoreView();\r\n\r\n }\r\npageSizeFootfall:any = 1;\r\nfootfallcurrentPage:any = 1;\r\n onFootfallPageChange(pageOffset: number) {\r\n this.footfallcurrentPage = Number(pageOffset);\r\n this.footfalloffset = Number(pageOffset);\r\n this.footfalllimit =1;\r\n this.dataStoreView();\r\n }\r\n\r\n onFootfallPageSizeChange(pageSize: number) {\r\n this.footfalllimit = Number(pageSize);\r\n this.pageSizeFootfall = Number(pageSize);\r\n this.footfallcurrentPage = 1;\r\n this.footfalloffset = 1;\r\n this.dataStoreView();\r\n }\r\ntotalItemsFootfall:any;\r\n setFootfallpageSize() {\r\n if (this.totalItemsFootfall < 1) {\r\n return this.totalItemsFootfall;\r\n } else {\r\n return this.pageSizeFootfall;\r\n }\r\n }\r\n\r\n\r\n\r\ntoggleStoreSelection(store: any) {\r\n const storeId = store?.storeId;\r\n if (!storeId) return;\r\n\r\n const index = this.selectedStores.indexOf(storeId);\r\n\r\n if (index > -1) {\r\n this.selectedStores.splice(index, 1);\r\n } else {\r\n this.selectedStores.push(storeId);\r\n }\r\n\r\n this.allSelected = this.selectedStores.length === this.stores.length;\r\n}\r\n\r\n\r\ntoggleSelectAll() {\r\n const visibleStoreIds = this.filteredStores.map((s) => s.storeId);\r\n\r\n if (this.allSelected) {\r\n // Remove only the visible ones\r\n this.selectedStores = this.selectedStores.filter(\r\n id => !visibleStoreIds.includes(id)\r\n );\r\n } else {\r\n // Add only those that are not already selected\r\n const newIds = visibleStoreIds.filter(id => !this.selectedStores.includes(id)\r\n );\r\n this.selectedStores = [...this.selectedStores, ...newIds];\r\n }\r\n\r\n this.allSelected = this.selectedStores.length === this.stores.length;\r\n}\r\n\r\n\r\nisSelected(store: any): boolean {\r\n return this.selectedStores.includes(store.storeId);\r\n}\r\n\r\n\r\n imgtoggleSelectAll() {\r\n this.allSelected = !this.allSelected;\r\n this.ticketData.duplicates.forEach((img: any) => {\r\n img.selected = this.allSelected;\r\n });\r\n }\r\n\r\n selectedImagesList: any[] = [];\r\n\r\n selectedDuplicateImagesList: any[] = [];\r\n selectedHousekeepingImagesList: any[] = [];\r\n selectedEmployeeImagesList: any[] = [];\r\nhouseKeepingACCount:any;\r\nemployeeACCount:any;\r\nduplicateACCount:any;\r\n\r\ncloneWithoutSelected(obj: any) {\r\n const { ...rest } = obj;\r\n return rest;\r\n}\r\n\r\n\r\nallSelectValue = false;\r\n\r\ncloneWithoutSelected1(data: any): any {\r\n const { __parent, ...rest } = data;\r\n return { ...rest };\r\n}\r\n\r\nonImageCheckboxChange1(data: any, category: string, parentOriginal?: any) {\r\n let selectedList: any;\r\n\r\n if (category === 'duplicate') {\r\n parentOriginal = parentOriginal || data.__parent;\r\n\r\n const existingOriginal = this.selectedDuplicateImagesList.find(\r\n (item: any) => item.tempId === parentOriginal?.tempId\r\n );\r\n\r\n if (data.selected) {\r\n if (existingOriginal) {\r\n const alreadyExists = existingOriginal.data?.some(\r\n (dup: any) => dup.tempId === data.tempId\r\n );\r\n if (!alreadyExists) {\r\n existingOriginal.data.push(this.cloneWithoutSelected1(data));\r\n }\r\n } else {\r\n this.selectedDuplicateImagesList.push({\r\n tempId: parentOriginal?.tempId,\r\n filePath: parentOriginal?.filePath,\r\n entryTime: parentOriginal?.entryTime,\r\n exitTime: parentOriginal?.exitTime,\r\n timeRange: parentOriginal?.timeRange,\r\n data: [this.cloneWithoutSelected1(data)],\r\n });\r\n }\r\n } else {\r\n if (existingOriginal) {\r\n existingOriginal.data = existingOriginal.data.filter(\r\n (d: any) => d.tempId !== data.tempId\r\n );\r\n\r\n if (existingOriginal.data.length === 0) {\r\n this.selectedDuplicateImagesList = this.selectedDuplicateImagesList.filter(\r\n (o: any) => o.tempId !== parentOriginal?.tempId\r\n );\r\n }\r\n }\r\n }\r\n\r\n this.duplicateACCount = this.selectedDuplicateImagesList.reduce(\r\n (sum: number, orig: any) => sum + orig.data.length,\r\n 0\r\n );\r\n }\r\n\r\n if (category === 'employee') {\r\n selectedList = this.selectedEmployeeImagesList;\r\n } else if (category === 'housekeeping') {\r\n selectedList = this.selectedHousekeepingImagesList;\r\n }\r\n\r\n if (category !== 'duplicate') {\r\n if (data.selected) {\r\n const alreadyExists = selectedList.some((item: any) => item.tempId === data.tempId);\r\n if (!alreadyExists) {\r\n selectedList.push(data);\r\n }\r\n } else {\r\n const index = selectedList.findIndex((item: any) => item.tempId === data.tempId);\r\n if (index !== -1) {\r\n selectedList.splice(index, 1);\r\n }\r\n }\r\n\r\n this.employeeACCount = this.selectedEmployeeImagesList.length;\r\n this.houseKeepingACCount = this.selectedHousekeepingImagesList.length;\r\n }\r\n\r\n // 🔒 Disable other checkboxes if one type is selected\r\n const totalSelected =\r\n this.duplicateACCount + this.employeeACCount + this.houseKeepingACCount;\r\n\r\n if (totalSelected > 0) {\r\n this.checkedValue = false;\r\n } else {\r\n this.checkedValue = true;\r\n }\r\n\r\n this.cd.detectChanges(); // To update the template\r\n this.allSelectValue = this.areAllCheckboxesSelected();\r\n\r\n // console.log('✅ Counts:', {\r\n // duplicateACCount: this.duplicateACCount,\r\n // employeeACCount: this.employeeACCount,\r\n // houseKeepingACCount: this.houseKeepingACCount,\r\n // checkedValue: this.checkedValue,\r\n // });\r\n}\r\n\r\n\r\n\r\nselectAllValue() {\r\n this.allSelectValue = !this.allSelectValue;\r\n this.checkedValue = !this.allSelectValue;\r\n\r\n this.selectedEmployeeImagesList = [];\r\n this.selectedHousekeepingImagesList = [];\r\n this.selectedDuplicateImagesList = [];\r\n\r\n for (const ticket of this.footfallTicketsData) {\r\n const source = ticket._source;\r\n\r\n // ✅ Employee\r\n if (Array.isArray(source.employee)) {\r\n source.employee.forEach((img: any) => {\r\n img.selected = this.allSelectValue;\r\n if (this.allSelectValue && !this.selectedEmployeeImagesList.some(e => e.tempId === img.tempId)) {\r\n this.selectedEmployeeImagesList.push(img);\r\n }\r\n });\r\n }\r\n\r\n // ✅ Housekeeping\r\n if (Array.isArray(source.houseKeeping)) {\r\n source.houseKeeping.forEach((emp: any) => {\r\n emp.selected = this.allSelectValue;\r\n if (this.allSelectValue && !this.selectedHousekeepingImagesList.some(e => e.tempId === emp.tempId)) {\r\n this.selectedHousekeepingImagesList.push(emp);\r\n }\r\n });\r\n }\r\n\r\n // ✅ Duplicate\r\n if (Array.isArray(source.duplicateImages)) {\r\n source.duplicateImages.forEach((original: any) => {\r\n if (Array.isArray(original.data)) {\r\n original.data.forEach((dup: any) => {\r\n dup.selected = this.allSelectValue;\r\n dup.__parent = original; // ✅ Needed for uncheck\r\n });\r\n\r\n if (this.allSelectValue && original.data.length > 0) {\r\n const existing = this.selectedDuplicateImagesList.find(\r\n (o: any) => o.tempId === original.tempId\r\n );\r\n\r\n if (!existing) {\r\n this.selectedDuplicateImagesList.push({\r\n tempId: original.tempId,\r\n filePath: original.filePath,\r\n entryTime: original.entryTime,\r\n exitTime: original.exitTime,\r\n timeRange: original.timeRange,\r\n data: original.data.map((d: any) => this.cloneWithoutSelected1(d)),\r\n });\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\nconsole.log('✅ All selected:', this.selectedDuplicateImagesList);\r\n this.houseKeepingACCount = this.selectedHousekeepingImagesList.length;\r\n this.employeeACCount = this.selectedEmployeeImagesList.length;\r\n this.duplicateACCount = this.selectedDuplicateImagesList.reduce(\r\n (sum: number, orig: any) => sum + orig.data.length,\r\n 0\r\n );\r\n}\r\n\r\n\r\nareAllCheckboxesSelected(): boolean {\r\n for (const ticket of this.footfallTicketsData) {\r\n const source = ticket._source;\r\n\r\n if (source.employee?.some((img: any) => !img.selected)) return false;\r\n if (source.houseKeeping?.some((img: any) => !img.selected)) return false;\r\n if (source.duplicateImages?.some((original: any) => \r\n original.data?.some((dup: any) => !dup.selected))) return false;\r\n }\r\n return true;\r\n}\r\ncheckedValue =true;\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nonImageCheckboxChange(data: any, category: string, parentOriginal?: any) {\r\n let selectedList;\r\n\r\n switch (category) {\r\n case 'duplicate':\r\n // Ensure selectedDuplicateImagesList is an array of ORIGINALS with selected children\r\n const existingOriginal = this.selectedDuplicateImagesList.find(\r\n (item: any) => item.tempId === parentOriginal?.tempId\r\n );\r\n\r\n if (data.selected) {\r\n if (existingOriginal) {\r\n const alreadyExists = existingOriginal.data?.some(\r\n (dup: any) => dup.tempId === data.tempId\r\n );\r\n if (!alreadyExists) {\r\n existingOriginal.data.push(this.cloneWithoutSelected(data)); // ✅ no 'selected' key\r\n }\r\n } else {\r\n this.selectedDuplicateImagesList.push({\r\n tempId: parentOriginal?.tempId,\r\n filePath: parentOriginal?.filePath,\r\n entryTime: parentOriginal?.entryTime,\r\n exitTime: parentOriginal?.exitTime,\r\n timeRange: parentOriginal?.timeRange,\r\n data: [this.cloneWithoutSelected(data)], // ✅\r\n });\r\n }\r\n} else {\r\n // Remove from selected duplicates\r\n if (existingOriginal) {\r\n existingOriginal.data = existingOriginal.data.filter(\r\n (d: any) => d.tempId !== data.tempId\r\n );\r\n\r\n // Remove the whole original if no duplicates are left\r\n if (existingOriginal.data.length === 0) {\r\n this.selectedDuplicateImagesList = this.selectedDuplicateImagesList.filter(\r\n (o: any) => o.tempId !== parentOriginal?.tempId\r\n );\r\n }\r\n }\r\n }\r\n\r\n // Count only from selected duplicates\r\n this.duplicateACCount = this.selectedDuplicateImagesList.reduce(\r\n (sum: number, orig: any) => sum + orig.data.length,\r\n 0\r\n );\r\n return;\r\n\r\n case 'housekeeping':\r\n selectedList = this.selectedHousekeepingImagesList;\r\n break;\r\n\r\n case 'employee':\r\n selectedList = this.selectedEmployeeImagesList;\r\n break;\r\n\r\n default:\r\n return;\r\n }\r\n\r\n // Unchanged logic for employee and housekeeping\r\n selectedList = selectedList || [];\r\n if (data.selected) {\r\n const alreadyExists = Array.isArray(selectedList) && selectedList.some((item: any) => item.tempId === data.tempId);\r\n if (!alreadyExists) {\r\n selectedList.push(data);\r\n }\r\n } else {\r\n const updated = Array.isArray(selectedList) ? selectedList.filter((item: any) => item.tempId !== data.tempId) : [];\r\n\r\n if (category === 'housekeeping') {\r\n this.selectedHousekeepingImagesList = updated;\r\n } else if (category === 'employee') {\r\n this.selectedEmployeeImagesList = updated;\r\n }\r\n }\r\n this.houseKeepingACCount = this.selectedHousekeepingImagesList?.length|| 0\r\n this.employeeACCount = this.selectedEmployeeImagesList.length || 0\r\n}\r\n\r\n\r\ncommentText:any;\r\nsubmitValue(status: string = 'approved', category: string = 'duplicate') {\r\n // Step 1: Validate based on current category\r\n let selectedList;\r\n switch (category) {\r\n case 'duplicate':\r\n selectedList = this.selectedDuplicateImagesList;\r\n break;\r\n case 'housekeeping':\r\n selectedList = this.selectedHousekeepingImagesList;\r\n break;\r\n case 'employee':\r\n selectedList = this.selectedEmployeeImagesList;\r\n break;\r\n default:\r\n return;\r\n }\r\n\r\n if (selectedList.length === 0) {\r\n this.toast.getErrorToast('Please select at least one image');\r\n return;\r\n }\r\n\r\n // Replace selected → isChecked before sending\r\n const transformedList = selectedList.map(item => {\r\n const { selected, ...rest } = item;\r\n return { ...rest, isChecked: true };\r\n });\r\n\r\n // Step 2: Build full payload\r\nconst payload: any[] = [];\r\n\r\nfor (const ticket of this.footfallTicketsData) {\r\n const source = ticket._source;\r\n\r\n const singlePayload: any = {\r\n _id: ticket._id,\r\n comments: this.commentText || '',\r\n dateString: source.dateString || this.dateString,\r\n\r\n employeeStatus: category === 'employee' ? status : source.employeeStatus,\r\n houseKeepingStatus: category === 'housekeeping' ? status : source.houseKeepingStatus,\r\n duplicateStatus: category === 'duplicate' ? status : source.duplicateStatus,\r\n };\r\n\r\n if (category === 'employee') {\r\n singlePayload.employee = transformedList;\r\n singlePayload.employeeACCount = this.employeeACCount ? this.employeeACCount : 0;\r\n }\r\n\r\n if (category === 'housekeeping') {\r\n singlePayload.houseKeeping = transformedList;\r\n singlePayload.houseKeepingACCount = this.houseKeepingACCount ? this.houseKeepingACCount : 0;\r\n }\r\n\r\n if (category === 'duplicate') {\r\n singlePayload.duplicateImages = transformedList;\r\n singlePayload.duplicateACCount = this.duplicateACCount ? this.duplicateACCount : 0;\r\n }\r\n\r\n payload.push(singlePayload);\r\n}\r\n\r\n// console.log('Payload to submit:', payload);\r\n// return\r\n // Step 3: Set status based on current category\r\n switch (category) {\r\n case 'duplicate':\r\n payload.forEach(item => item.duplicateStatus = status);\r\n break;\r\n case 'housekeeping':\r\n payload.forEach(item => item.houseKeepingStatus = status);\r\n break;\r\n case 'employee':\r\n payload.forEach(item => item.employeeStatus = status);\r\n break;\r\n }\r\n\r\n // Step 4: Submit the payload\r\n this.ticketService.getUpdateStatusApi({data:payload})\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.toast.getSuccessToast(res?.message || 'Ticket updated successfully');\r\n this.selectedStores =[];\r\n this.allSelected = false;\r\n this.allSelectValue =false;\r\n this.dataStoreView();\r\n this.cancel();\r\n } else {\r\n this.toast.getErrorToast('Failed to update ticket');\r\n }\r\n },\r\n error: (err: any) => {\r\n const msg = err.error.error || err.error || err?.error?.message || err.message || 'Unknown error';\r\n this.toast.getErrorToast('Error updating ticket: ' + msg);\r\n \r\n this.allSelected = false;\r\n this.allSelectValue =false;\r\n }\r\n });\r\n}\r\nsearchTerm:any = '';\r\nget filteredStores() {\r\n if (!this.searchTerm?.trim()) return this.stores;\r\n\r\n const term = this.searchTerm.toLowerCase();\r\n return this.stores.filter(store =>\r\n store?.storeName?.toLowerCase().includes(term)\r\n );\r\n}\r\nonImageError(event: any): void {\r\n event.target.src = 'assets/images/fallback-image.png'; // or any default image path\r\n}\r\n backToNavigation(){\r\n this.selectedStores = [];\r\n this.allSelected = false;\r\n this.allSelectValue =false;\r\n this.hasInitialStoreSynced = false;\r\n this.footfallView =true;\r\n this.getTicketSummary();\r\n this.getTicketList();\r\n }\r\n @ViewChild('zoomPopup') zoomPopup: ElementRef;\r\n popupvalue:any;\r\n popupType:any;\r\n popupOpen(type:any,value:any){\r\n const modalRef = this.modalService.open(this.zoomPopup, { centered: true, size: 'md' });\r\n this.popupType = type;\r\n if(value ==='duplicateImages'){\r\n this.popupvalue = 'duplicate';\r\n } else{\r\n this.popupvalue = value;\r\n }\r\n }\r\ncancel() {\r\n this.modalService.dismissAll();\r\n\r\n\r\n this.allSelected = false;\r\n this.allSelectValue = false;\r\n\r\n // Clear all selected flags from the data\r\n for (const ticket of this.footfallTicketsData) {\r\n const source = ticket._source;\r\n\r\n source.employee?.forEach((img: any) => (img.selected = false));\r\n source.houseKeeping?.forEach((img: any) => (img.selected = false));\r\n source.duplicateImages?.forEach((original: any) => {\r\n original.data?.forEach((dup: any) => (dup.selected = false));\r\n });\r\n }\r\n\r\n // Clear selected lists\r\n this.selectedEmployeeImagesList = [];\r\n this.selectedHousekeepingImagesList = [];\r\n this.selectedDuplicateImagesList = [];\r\n\r\n // Reset counts\r\n this.employeeACCount = '';\r\n this.houseKeepingACCount = '';\r\n this.duplicateACCount = '';\r\n\r\n this.checkedValue = true;\r\n}\r\nClusterList:any=[];\r\n getAllGroups() {\r\n this.ticketService.getclusters({ clientId: this.headerFilters.client, group: [], city: [] }).subscribe({\r\n next: (res: any) => {\r\n if (res && res.code == 200) {\r\n this.ClusterList = res?.data?.groupData;\r\n this.getStores();\r\n } else {\r\n this.ClusterList = [];\r\n }\r\n }\r\n })\r\n }\r\ngroups: any = [];\r\n ongroupSelect(event: any) {\r\n this.filterForm.get('ClusterList')?.setValue(event)\r\n this.groups = event.map((el: any) => el.groupName)\r\n this.getStores();\r\n }\r\n// isSubmitDisabled(): boolean {\r\n// switch (this.selectedRevopsType?.value) {\r\n// case 'employee':\r\n// return this.employeeACCount === 0;\r\n// case 'houseKeeping':\r\n// return this.houseKeepingACCount === 0;\r\n// case 'duplicate':\r\n// return this.duplicateACCount === 0;\r\n// default:\r\n// return true;\r\n// }\r\n// }\r\ngetFormattedEntryTime(entryTime: string): string {\r\n if (!entryTime) return '-';\r\n const [hours, minutes, seconds] = entryTime.split(':').map(Number);\r\n const date = new Date();\r\n date.setHours(hours, minutes, seconds);\r\n return date.toLocaleTimeString('en-US', {\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n // second: '2-digit',\r\n hour12: true\r\n });\r\n}\r\nshowSelectAllBox() {\r\n this.filterForm.get('actionStatus')?.setValue('pending');\r\n}\r\n}\r\n","<div *ngIf=\"footfallView\" class=\"row\">\r\n <div class=\"col-md-3 mb-3\">\r\n <div class=\"card\">\r\n <div class=\"card-header ellipse1 py-1 px-5\">\r\n <div class=\"my-0\">\r\n <h5 class=\"card-title my-0\">{{ getFootfallSummaryData?.totalTickets !== null ?\r\n getFootfallSummaryData?.totalTickets : '--' }}</h5>\r\n <span class=\"sub-header\">Total tickets</span>\r\n </div>\r\n </div>\r\n <div class=\"card-body py-2 px-5\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-6 col-xl-9 col-md-6 my-3\">\r\n <h5 class=\"card-title\">{{ getFootfallSummaryData?.openTickets !== null ?\r\n getFootfallSummaryData?.openTickets : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Open</span>\r\n </div>\r\n <div class=\"col-lg-6 col-xl-3 col-md-6 my-3\">\r\n <h5 class=\"card-title\">{{ getFootfallSummaryData?.closedTickets !== null ?\r\n getFootfallSummaryData?.closedTickets : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Closed</span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-md-9 mb-3\">\r\n <div class=\"card\">\r\n <div class=\"card-header ellipse1 py-1 px-5\">\r\n <div class=\"my-0\">\r\n <h5 class=\"card-title mt-0\">{{ getFootfallSummaryData?.noShopper !== null ?\r\n getFootfallSummaryData?.noShopper : '--' }}</h5>\r\n <div class=\"sub-header\">Non-Shoppers</div>\r\n </div>\r\n </div>\r\n <div class=\"card-body py-2 px-5\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-4 col-xl-5 col-md-4 my-3\">\r\n <h5 class=\"card-title\">{{ getFootfallSummaryData?.duplicateCount !== null ?\r\n getFootfallSummaryData?.duplicateCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Duplicates</span>\r\n </div>\r\n <div class=\"col-lg-4 col-xl-5 col-md-4 my-3 \">\r\n <h5 class=\"card-title \">{{ getFootfallSummaryData?.employeeCount !== null ?\r\n getFootfallSummaryData?.employeeCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header \">Employee/Staff</span>\r\n </div>\r\n <div class=\"col-lg-4 col-xl-2 col-md-4 my-3\">\r\n <h5 class=\"card-title \">{{ getFootfallSummaryData?.houseKeepingCount !== null ?\r\n getFootfallSummaryData?.houseKeepingCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Housekeeping</span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"footfallView\" 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 class=\"card-label mb-2\">Ticket Info <span *ngIf=\"totalItems\" class=\"ms-2 px-3 badge badge-light-primary\">{{totalItems ? totalItems :'--'}} Total</span></span>\r\n <span class=\"text-sub mb-2\">Based on {{footfallList_req?.fromDate | date: 'dd MMM, yyyy'}} – {{footfallList_req?.toDate | date: 'dd MMM, yyyy'}} </span>\r\n </h3>\r\n <div 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\" placeholder=\"Search by store\" autocomplete=\"off\"\r\n (change)=\"searchData()\" [(ngModel)]=\"searchValue\" />\r\n <!-- <lib-filters [dataObject]=\"dataObject\"\r\n (appliedFilters)=\"applyFilters($event)\"></lib-filters> -->\r\n\r\n <button type=\"button\" (click)=\"exportXLSX()\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path\r\n 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\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2\">Export</span>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body mt-3 py-0 px-0\">\r\n\r\n\r\n\r\n <div *ngIf=\"loading\" 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 </div>\r\n <div *ngIf=\"noData\" 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/Nodata1.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No data found</div>\r\n <div class=\"nodata-sub\">There is no result for this Date</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!loading && !noData\" class=\"table-responsive\">\r\n <table class=\"table bottom-border text-nowrap \">\r\n <thead>\r\n <tr>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('storeName')\">Store Info<svg\r\n [ngClass]=\"sortedColumn === 'storeName' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'storeName' ? '#00A3FF' : '#667085'\"\r\n stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('ticketId')\">Ticket ID<svg\r\n [ngClass]=\"sortedColumn === 'ticketId' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'ticketId' ? '#00A3FF' : '#667085'\"\r\n stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('dateString')\">Ticket raised on\r\n <svg [ngClass]=\"sortedColumn === 'dateString' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'dateString' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('footfallCount')\">Total footfalls\r\n <svg [ngClass]=\"sortedColumn === 'footfallCount' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'footfallCount' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('duplicateCount')\">Duplicates\r\n <svg [ngClass]=\"sortedColumn === 'duplicateCount' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'duplicateCount' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('employeeCount')\">Employee/Staff\r\n <svg [ngClass]=\"sortedColumn === 'employeeCount' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'employeeCount' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('houseKeepingCount')\">Housekeeping\r\n <svg [ngClass]=\"sortedColumn === 'houseKeepingCount' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'houseKeepingCount' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n\r\n <th>Revised footfalls\r\n \r\n </th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('status')\">Status<svg\r\n [ngClass]=\"sortedColumn === 'status' && sortDirection === 1 ? 'rotate' : ''\" width=\"16\"\r\n height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'status' ? '#00A3FF' : '#667085'\"\r\n stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <!-- <th >Actions</th> -->\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let ticket of footfallListData\">\r\n <ng-container *ngIf=\"ticket?._source as source\">\r\n <td (click)=\"dataStoreView(ticket)\">\r\n <div class=\"text-primary cursor-pointer\">{{ source.storeName }}</div>\r\n <div class=\"text-gray-500 fs-7 mt-2\">ID : {{ source.storeId }}</div>\r\n </td>\r\n \r\n <td class=\"py-7\">{{ source.ticketId }}</td>\r\n <td class=\"py-7\">{{ source.dateString | date: 'dd MMM, yyyy' }}</td>\r\n <td class=\"py-7\">{{ source.footfallCount }}</td>\r\n <td class=\"py-7\">{{ source.duplicateCount }}</td>\r\n <td class=\"py-7\">{{ source.employeeCount }}</td>\r\n <td class=\"py-7\">{{ source.houseKeepingCount }}</td>\r\n <td class=\"py-7\">\r\n {{ source.footfallCount - (source.houseKeepingCount + source.employeeCount +\r\n source.duplicateCount) }}\r\n </td>\r\n \r\n <td class=\"py-7\">\r\n <span *ngIf=\"source.status === 'open' || source.status === 'closed'\" class=\"badge mx-2\" [ngClass]=\"{\r\n 'badge-light-primary': source.status === 'open',\r\n 'badge-light-default': source.status === 'closed'\r\n }\">\r\n {{ source.status | titlecase }}\r\n </span>\r\n </td>\r\n </ng-container>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n <div *ngIf=\"!loading && !noData\" class=\"my-3\">\r\n <lib-pagination [itemsPerPage]=\"pageSize\" [currentPage]=\"currentPage\" [totalItems]=\"totalItems\"\r\n [paginationSizes]=\"paginationSizes\" [pageSize]=\"setpageSize()\" (pageChange)=\"onPageChange($event)\"\r\n (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n\r\n\r\n<div *ngIf=\"!footfallView\" class=\"card mt-2\">\r\n <form [formGroup]=\"filterForm\">\r\n <div class=\"row my-0\">\r\n <div class=\"col-lg-3 my-3\">\r\n <span class=\"ms-2 cursor-pointer\" (click)=\"backToNavigation()\" ><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"56\" height=\"44\" viewBox=\"0 0 56 44\"\r\n fill=\"none\">\r\n <g filter=\"url(#filter0_d_887_4505)\">\r\n <rect x=\"2\" y=\"1\" width=\"52\" height=\"40\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"51\" height=\"39\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <path d=\"M30.5 26L25.5 21L30.5 16\" stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_887_4505\" x=\"0\" y=\"0\" width=\"56\" height=\"44\" filterUnits=\"userSpaceOnUse\"\r\n color-interpolation-filters=\"sRGB\">\r\n <feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\" />\r\n <feColorMatrix in=\"SourceAlpha\" type=\"matrix\"\r\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\" result=\"hardAlpha\" />\r\n <feOffset dy=\"1\" />\r\n <feGaussianBlur stdDeviation=\"1\" />\r\n <feColorMatrix type=\"matrix\"\r\n values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.05 0\" />\r\n <feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_887_4505\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect1_dropShadow_887_4505\"\r\n result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg></span>\r\n <span class=\"card-title-foot ms-3\">Footfall Directory</span>\r\n </div>\r\n <div class=\"col-md-2 my-3\">\r\n \r\n <lib-reactive-select formControlName=\"selectedStatus\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"type\"\r\n (itemChange)=\"typeChange($event)\"></lib-reactive-select>\r\n \r\n\r\n </div>\r\n <div class=\"col-md-2 my-3\">\r\n \r\n <lib-reactive-select formControlName=\"actionStatus\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"pendingArray\"\r\n (itemChange)=\"pendingChange($event)\"></lib-reactive-select>\r\n \r\n </div>\r\n <div class=\"col-md-3 my-4\" >\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(filterForm.get('ClusterList')?.value?.length)\">\r\n Select cluster\r\n </div>\r\n <lib-group-select [items]=\"ClusterList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'groupName'\" [idField]=\"'groupName'\" (selected)=\"ongroupSelect($event)\"\r\n [selectedValues]=\"filterForm.get('ClusterList')?.value\">\r\n </lib-group-select>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-2 my-4\">\r\n <div class=\"d-flex me-3\">\r\n <a (click)=\"onFilterApply()\" type=\"submit\" class=\"btn btn-sm btn-primary px-4 \"><span>Apply</span></a>\r\n </div>\r\n </div>\r\n </div>\r\n</form>\r\n</div>\r\n<div *ngIf=\"!footfallView\" class=\"row mt-3\">\r\n <div class=\"position-relative\" \r\n [ngClass]=\"isCollapsed ? 'd-none' : 'col-md-3'\" >\r\n <div class=\"card\">\r\n <div class=\"card-header border-0 pt-3 px-5\">\r\n <h3 class=\"card-title align-items-start flex-column\">\r\n <span class=\"card-label mb-2\">Footfall Directory</span>\r\n <span class=\"text-sub mb-2\">Based on {{footfallList_req.fromDate | date: 'dd MMM, yyyy'}} – {{footfallList_req.toDate | date: 'dd MMM, yyyy'}} </span>\r\n </h3>\r\n </div>\r\n <span class=\"cursor-pointer\" (click)=\"toggleSidebar()\" style=\"position: absolute; top: 15px; right: -25px;\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"68\" height=\"68\" viewBox=\"0 0 68 68\" fill=\"none\">\r\n<g filter=\"url(#filter0_dd_778_34282)\">\r\n<rect x=\"12\" width=\"44\" height=\"44\" rx=\"22\" fill=\"white\"/>\r\n<path d=\"M33 27L28 22L33 17M40 27L35 22L40 17\" stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</g>\r\n<defs>\r\n<filter id=\"filter0_dd_778_34282\" x=\"0\" y=\"0\" width=\"68\" height=\"68\" filterUnits=\"userSpaceOnUse\" color-interpolation-filters=\"sRGB\">\r\n<feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"/>\r\n<feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\" result=\"hardAlpha\"/>\r\n<feMorphology radius=\"2\" operator=\"erode\" in=\"SourceAlpha\" result=\"effect1_dropShadow_778_34282\"/>\r\n<feOffset dy=\"4\"/>\r\n<feGaussianBlur stdDeviation=\"3\"/>\r\n<feColorMatrix type=\"matrix\" values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.03 0\"/>\r\n<feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_778_34282\"/>\r\n<feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\" result=\"hardAlpha\"/>\r\n<feMorphology radius=\"4\" operator=\"erode\" in=\"SourceAlpha\" result=\"effect2_dropShadow_778_34282\"/>\r\n<feOffset dy=\"12\"/>\r\n<feGaussianBlur stdDeviation=\"8\"/>\r\n<feColorMatrix type=\"matrix\" values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.08 0\"/>\r\n<feBlend mode=\"normal\" in2=\"effect1_dropShadow_778_34282\" result=\"effect2_dropShadow_778_34282\"/>\r\n<feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect2_dropShadow_778_34282\" result=\"shape\"/>\r\n</filter>\r\n</defs>\r\n</svg>\r\n</span>\r\n <div class=\"text-end mt-10\">\r\n <button class=\"btn btn-outline w-25 me-3 btn-resize\" (click)=\"dataReset()\"> Reset </button>\r\n <button class=\"btn btn-primary w-25 me-5 btn-resize\" (click)=\"dataApply()\">Apply</button>\r\n </div>\r\n <div class=\"p-4 w-100 overflow-auto\">\r\n <input\r\n class=\"form-control form-control-sm mb-2 px-2 py-1 w-100\"\r\n type=\"text\"\r\n placeholder=\"Search\"\r\n [(ngModel)]=\"StoresSearchValue\"\r\n (change)=\"searchStoresData()\"\r\n/>\r\n\r\n <div class=\"mb-2 border-selectall\">\r\n <input type=\"checkbox\" [checked]=\"allSelected\" (change)=\"toggleSelectAll()\" />\r\n <label class=\"mt-2 font-semibold ms-2\">Select All {{storeCount}} Stores</label>\r\n </div>\r\n <ul class=\"list-unstyled ps-0\">\r\n <li *ngFor=\"let store of stores\" class=\"mb-5\">\r\n <input type=\"checkbox\" [checked]=\"isSelected(store)\" (change)=\"toggleStoreSelection(store)\" />\r\n {{ store?.storeName }}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div [ngClass]=\"isCollapsed ? 'col-12' : 'col-md-9'\" >\r\n <div class=\"card\">\r\n\r\n <div class=\"card-header min-h-35px border-0 pt-3\">\r\n <h3 class=\"card-title align-items-start flex-column\">\r\n \r\n </h3>\r\n <div class=\"card-toolbar\">\r\n <form class=\"mx-4\" [formGroup]=\"form\">\r\n <lib-reactive-select formControlName=\"selectedRevopsType\" [idField]=\"'value'\" [nameField]=\"'label'\"\r\n [data]=\"revopsTypeArray\" (itemChange)=\"RevopsTypeChange($event)\"></lib-reactive-select>\r\n </form>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"selectedRevopsType?.value !== '' && selecteValues ==='pending'\" class=\"card-header min-h-35px border-0\">\r\n <h3 class=\"align-items-start flex-column\">\r\n \r\n <div *ngIf=\"selectedRevopsType?.value !== ''\" class=\"mt-12 mb-2 font-semibold\">\r\n \r\n <input *ngIf=\"!footfallLoading && !footfallNoData\"\r\n type=\"checkbox\"\r\n [checked]=\"allSelectValue\"\r\n (change)=\"selectAllValue()\" />\r\n <label *ngIf=\"!footfallLoading && !footfallNoData\" class=\"mt-2 fs-6 font-semibold ms-2\">\r\n Select All (\r\n {{\r\n houseKeepingACCount > 0\r\n ? houseKeepingACCount\r\n : employeeACCount > 0\r\n ? employeeACCount\r\n : duplicateACCount > 0\r\n ? duplicateACCount\r\n : 0\r\n }}\r\n )\r\n </label>\r\n </div>\r\n <!-- -->\r\n \r\n </h3>\r\n <div class=\"card-toolbar\">\r\n <div *ngIf=\"selectedRevopsType?.value !== ''\" class=\"my-7 d-flex justify-content-end me-5\" role=\"group\">\r\n <button *ngIf=\"!footfallLoading && !footfallNoData\" [disabled]=\"checkedValue\" class=\"btn btn-outline me-1\" (click)=\"popupOpen('rejected',this.selectedRevopsType.value)\">Reject selection</button>\r\n <button *ngIf=\"!footfallLoading && !footfallNoData\" [disabled]=\"checkedValue\" class=\"btn btn-primary ms-1\" (click)=\"popupOpen('approved',this.selectedRevopsType.value)\">Approve selection</button>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n <section *ngIf=\"selectedRevopsType?.value === ''\">\r\n <div *ngIf=\"!footfallLoading && !footfallNoData\" class=\"card-body mt-3 py-0\">\r\n\r\n <span class=\"cursor-pointer\" *ngIf=\"isCollapsed\" (click)=\"toggleSidebar()\" style=\"position: absolute; top: 15px; left: 0;\">\r\n <svg class=\"mt-2 ms-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path\r\n d=\"M9.72714 12.6365L13.3635 9.00013L9.72714 5.36377M4.63623 12.6365L8.27259 9.00013L4.63623 5.36377\"\r\n stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <div class=\"col-md-12 text-center my-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"240\" height=\"86\" viewBox=\"0 0 240 86\" fill=\"none\">\r\n <rect width=\"240\" height=\"86\" fill=\"#FAFAFA\"/>\r\n <rect x=\"31\" width=\"178\" height=\"86\" fill=\"url(#pattern0_778_33543)\"/>\r\n <defs>\r\n <pattern id=\"pattern0_778_33543\" patternContentUnits=\"objectBoundingBox\" width=\"1\" height=\"1\">\r\n <use xlink:href=\"#image0_778_33543\" transform=\"matrix(0.000333333 0 0 0.000689922 0 -0.0822946)\"/>\r\n </pattern>\r\n <image id=\"image0_778_33543\" width=\"3000\" height=\"1688\" preserveAspectRatio=\"none\" xlink:href=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAC7gAAAaYCAYAAAAXbpGPAAAgAElEQVR4AezQgQAAAACAoP2pFymECgMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDJZikLkAACAASURBVBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwjXnEogAAIABJREFUYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBiYvXvBtZAGAgCqi3MT7sJFuG4NUSIP74cW2s60x8QAl0KnZ6Y8IU0kQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBBp7TinAAAgAElEQVQgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQO/m9l0AACAASURBVIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAA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QIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAptcw2AAAgAElEQVQgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECPx/duhAAAAAAADI/7UREhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgfUWlHgAACAASURBVAMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMH3CjNDQAAIABJREFUDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHtEPHAgAAAACD/K2nsaMQMmDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAGPnY0UAAAMe0lEQVQDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBt4DAfUfAYwpoEnzAAAAAElFTkSuQmCC\"/>\r\n </defs>\r\n </svg>\r\n </div>\r\n\r\n <ng-container *ngFor=\"let ticket of footfallTicketsData\">\r\n <div *ngIf=\"ticket?._source as source\" class=\"row mb-6\">\r\n <div class=\"col-2 card-title-label my-2\">Ticket Name</div>\r\n <div class=\"col-1 font-bold my-2\">:</div>\r\n <div class=\"col-9 card-title-value my-2\">{{ source.ticketName ? (source.ticketName | titlecase) : '-' }}</div>\r\n <div class=\"col-2 card-title-label my-2\">Ticket ID</div>\r\n <div class=\"col-1 font-bold my-2\">:</div>\r\n <div class=\"col-9 card-title-value my-2\">{{ source.ticketId ? source.ticketId:'-' }}</div>\r\n <div class=\"col-2 card-title-label my-2\">Store Name</div>\r\n <div class=\"col-1 font-bold my-2\">:</div>\r\n <div class=\"col-9 card-title-value my-2\">{{ source.storeName ? source.storeName:'-' }}</div>\r\n <div class=\"col-2 card-title-label my-2\">Status</div>\r\n <div class=\"col-1 font-bold my-2\">:</div>\r\n <div class=\"col-3 my-2\"><span \r\n class=\"badge\" \r\n [ngClass]=\"{\r\n 'badge-light-primary': source.status === 'open',\r\n 'badge-secondary': source.status === 'closed',\r\n 'badge-light-warning': source.status === 'pending',\r\n 'badge-light-danger': source.status === 'rejected'\r\n }\">\r\n {{ source.status ? (source.status | titlecase) : '-' }}\r\n</span></div>\r\n \r\n <div class=\"col-2 card-title-label my-2\">Date</div>\r\n <div class=\"col-1 font-bold my-2\">:</div>\r\n <div class=\"col-3 card-title-value my-2\">{{ source.dateString ? (source.dateString | date: 'dd MMM, yyyy') :'- ' }}</div>\r\n </div>\r\n \r\n <div *ngIf=\"ticket?._source as source\" class=\"border-totalfootfall\">\r\n <div class=\"card-header ellipse1 min-h-45px py-1 px-5\">\r\n <div class=\"my-0\">\r\n <h5 class=\"card-title\">{{ source?.footfallCount !== null ?\r\n source?.footfallCount : '--' }} <span class=\"sub-header ms-2\">Total Footfall</span></h5>\r\n \r\n </div>\r\n </div>\r\n <div class=\"card-body py-2 px-5\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-3 col-xl-3 col-md-3 my-3\">\r\n <h5 class=\"card-title\">{{ source?.duplicateCount !== null ?\r\n source?.duplicateCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Duplicates</span>\r\n </div>\r\n <div class=\"col-lg-3 col-xl-3 col-md-3 my-3\">\r\n <h5 class=\"card-title\">{{ source?.employeeCount !== null ?\r\n source?.employeeCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Employee/Staff</span>\r\n </div>\r\n \r\n <div class=\"col-lg-3 col-xl-3 col-md-3 my-3\">\r\n <h5 class=\"card-title\">{{ source?.houseKeepingCount !== null ?\r\n source?.houseKeepingCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">House Keeping</span>\r\n </div>\r\n <div class=\"col-lg-3 col-xl-3 col-md-3 my-3 vl\">\r\n <h5 class=\"card-title\"> {{ \r\n (source.footfallCount || 0) - \r\n ((source.houseKeepingCount || 0) + \r\n (source.employeeCount || 0) + \r\n (source.duplicateCount || 0)) \r\n }}</h5>\r\n <span class=\"card-title-sub-header\">Actual footfall</span>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n \r\n \r\n <div *ngIf=\"ticket?._source as source\" class=\"my-5\">\r\n <h3 *ngIf=\"source?.duplicateImages?.length\" class=\"text-lg font-semibold mb-4\"> <span class=\"me-2\"><svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_730_76157)\">\r\n <path\r\n d=\"M3.75 11.25H3C2.60218 11.25 2.22064 11.092 1.93934 10.8107C1.65804 10.5294 1.5 10.1478 1.5 9.75V3C1.5 2.60218 1.65804 2.22064 1.93934 1.93934C2.22064 1.65804 2.60218 1.5 3 1.5H9.75C10.1478 1.5 10.5294 1.65804 10.8107 1.93934C11.092 2.22064 11.25 2.60218 11.25 3V3.75M8.25 6.75H15C15.8284 6.75 16.5 7.42157 16.5 8.25V15C16.5 15.8284 15.8284 16.5 15 16.5H8.25C7.42157 16.5 6.75 15.8284 6.75 15V8.25C6.75 7.42157 7.42157 6.75 8.25 6.75Z\"\r\n stroke=\"#475467\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_730_76157\">\r\n <rect width=\"18\" height=\"18\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span>Duplicates</h3>\r\n \r\n \r\n <div *ngFor=\"let original of source.duplicateImages\" class=\"mb-4\">\r\n <div *ngIf=\"source?.duplicateImages?.length\" class=\"duplicate-head my-3\">Original image</div>\r\n <div class=\"row\">\r\n <div class=\"col-md-3 relative\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3\">\r\n \r\n <img [src]=\"imageUrl + original.filePath\" alt=\"\" class=\"w-100 rounded border\" />\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{ original.tempId }}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{ getFormattedEntryTime(original?.entryTime) }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div class=\"duplicate-head text-lg my-3\">Duplicates<span class=\"badge ms-2\" \r\n [ngClass]=\"{\r\n 'badge-light-primary': source?.duplicateStatus === 'pending',\r\n 'badge-light-success': source?.duplicateStatus === 'approved',\r\n 'badge-light-danger': source?.duplicateStatus === 'rejected'\r\n }\">{{source?.duplicateStatus | titlecase}}</span></div>\r\n <div class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of original.data\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n <input *ngIf=\"source?.duplicateStatus ==='pending'\"\r\n type=\"checkbox\"\r\n [(ngModel)]=\"img.selected\"\r\n class=\"position-absolute absolute form-check-input\"\r\n(change)=\"onImageCheckboxChange(img, 'duplicate', original)\"\r\n />\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{ img.tempId }}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{ getFormattedEntryTime(img?.entryTime) }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n \r\n <div *ngIf=\"source?.duplicateImages?.length\" class=\"my-7 d-flex justify-content-end\" role=\"group\">\r\n <button [disabled]=\"!duplicateACCount\" class=\"btn btn-outline me-1\" (click)=\"popupOpen('rejected','duplicate')\" >Reject</button>\r\n <button [disabled]=\"!duplicateACCount\" class=\"btn btn-primary ms-1\" (click)=\"popupOpen('approved','duplicate')\">Approve</button>\r\n </div>\r\n \r\n <div *ngIf=\"source?.employee?.length\" class=\"duplicate-head text-lg my-3\"><span class=\"me-2\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"16\" viewBox=\"0 0 18 16\" fill=\"none\">\r\n<path d=\"M12.75 14.75V13.25C12.75 12.4544 12.4339 11.6913 11.8713 11.1287C11.3087 10.5661 10.5456 10.25 9.75 10.25H3.75C2.95435 10.25 2.19129 10.5661 1.62868 11.1287C1.06607 11.6913 0.75 12.4544 0.75 13.25V14.75M17.25 14.75V13.25C17.2495 12.5853 17.0283 11.9396 16.621 11.4142C16.2138 10.8889 15.6436 10.5137 15 10.3475M12 1.3475C12.6453 1.51273 13.2173 1.88803 13.6257 2.41423C14.0342 2.94044 14.2559 3.58762 14.2559 4.25375C14.2559 4.91988 14.0342 5.56706 13.6257 6.09327C13.2173 6.61947 12.6453 6.99477 12 7.16M9.75 4.25C9.75 5.90685 8.40685 7.25 6.75 7.25C5.09315 7.25 3.75 5.90685 3.75 4.25C3.75 2.59315 5.09315 1.25 6.75 1.25C8.40685 1.25 9.75 2.59315 9.75 4.25Z\" stroke=\"#475467\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg></span>Employee/Staff <span class=\"badge ms-2\" \r\n [ngClass]=\"{\r\n 'badge-light-primary': source?.employeeStatus === 'pending',\r\n 'badge-light-success': source?.employeeStatus === 'approved',\r\n 'badge-light-danger': source?.employeeStatus === 'rejected'\r\n }\">{{source?.employeeStatus | titlecase}}</span></div>\r\n <div class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of source.employee\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n \r\n <!-- Top-right Checkbox -->\r\n <input *ngIf=\"source?.employeeStatus ==='pending'\" type=\"checkbox\" [(ngModel)]=\"img.selected\"\r\n class=\"position-absolute absolute form-check-input\"\r\n (change)=\"onImageCheckboxChange(img, 'employee')\" />\r\n \r\n \r\n <!-- Image -->\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n \r\n <!-- Details -->\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{img.tempId}}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{getFormattedEntryTime(img?.entryTime)}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div *ngIf=\"source?.employee?.length\" class=\"my-7 d-flex justify-content-end\" role=\"group\">\r\n <button [disabled]=\"!employeeACCount\" class=\"btn btn-outline me-1\" (click)=\"popupOpen('rejected','employee')\" >Reject</button>\r\n <button [disabled]=\"!employeeACCount\" class=\"btn btn-primary ms-1\" (click)=\"popupOpen('approved','employee')\">Approve</button>\r\n </div>\r\n \r\n \r\n <div *ngIf=\"source?.houseKeeping?.length\" class=\"duplicate-head text-lg my-3\"><span class=\"me-2\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.51995 0.613065C8.33739 -0.204355 9.66267 -0.204355 10.4801 0.613065L17.387 7.51995C18.2043 8.33739 18.2043 9.66267 17.387 10.4801L10.4801 17.387C9.66267 18.2043 8.33739 18.2043 7.51995 17.387L5.54626 15.4133L3.73708 17.2224C2.91966 18.0399 1.59436 18.0399 0.776944 17.2224C-0.0404767 16.4051 -0.0404767 15.0797 0.776944 14.2624L2.58612 12.4531L0.613065 10.4801C-0.204355 9.66267 -0.204355 8.33739 0.613065 7.51995L7.51995 0.613065ZM9.49336 1.59978C9.22088 1.32731 8.77909 1.32731 8.50661 1.59978L3.57286 6.53357L11.4665 14.4272L16.4002 9.49336C16.6727 9.22088 16.6727 8.77909 16.4002 8.5067L12.9465 5.05286L11.7952 6.20403C11.5228 6.4765 11.0811 6.4765 10.8086 6.20403C10.5361 5.93155 10.5361 5.48978 10.8086 5.21731L11.9597 4.06614L10.9732 3.07964L8.17757 5.87533C7.90509 6.1478 7.46329 6.1478 7.19081 5.87533C6.91833 5.60286 6.91833 5.16109 7.19081 4.88862L9.9865 2.09293L9.49336 1.59978ZM10.4797 15.4139L2.58615 7.52028L1.59978 8.5067C1.3273 8.77909 1.3273 9.22088 1.59978 9.49336L8.50661 16.4002C8.77909 16.6727 9.22088 16.6727 9.49336 16.4002L10.4797 15.4139ZM3.57275 13.4399L1.76366 15.249C1.49119 15.5215 1.49119 15.9633 1.76366 16.2358C2.03613 16.5082 2.4779 16.5082 2.75037 16.2358L4.55946 14.4266L3.57275 13.4399Z\" fill=\"#475467\"/>\r\n</svg></span> House Keeping <span class=\"badge ms-2\" \r\n [ngClass]=\"{\r\n 'badge-light-primary': source?.houseKeepingStatus === 'pending',\r\n 'badge-light-success': source?.houseKeepingStatus === 'approved',\r\n 'badge-light-danger': source?.houseKeepingStatus === 'rejected'\r\n }\">{{source?.houseKeepingStatus | titlecase}}</span></div>\r\n <div class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of source.houseKeeping\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n \r\n <!-- Top-right Checkbox -->\r\n <input *ngIf=\"source?.houseKeepingStatus ==='pending'\" type=\"checkbox\" [(ngModel)]=\"img.selected\" \r\n class=\"position-absolute absolute form-check-input\"\r\n (change)=\"onImageCheckboxChange(img, 'housekeeping')\" />\r\n \r\n \r\n <!-- Image -->\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n \r\n <!-- Details -->\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{img.tempId}}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{getFormattedEntryTime(img?.entryTime)}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div *ngIf=\"source?.houseKeeping?.length\" class=\"my-7 d-flex justify-content-end\" role=\"group\">\r\n <button [disabled]=\"!houseKeepingACCount\" class=\"btn btn-outline me-1\" (click)=\"popupOpen('rejected','housekeeping')\" >Reject</button>\r\n <button [disabled]=\"!houseKeepingACCount\" class=\"btn btn-primary ms-1\" (click)=\"popupOpen('approved','housekeeping')\">Approve</button>\r\n </div>\r\n </div>\r\n \r\n </ng-container>\r\n <div *ngIf=\"!footfallLoading && !footfallNoData\" class=\"my-3\">\r\n <lib-pagination [itemsPerPage]=\"pageSizeFootfall\" [currentPage]=\"footfallcurrentPage\" [totalItems]=\"totalItemsFootfall\"\r\n [paginationSizes]=\"paginationSizes\" [pageSize]=\"setFootfallpageSize()\" (pageChange)=\"onFootfallPageChange($event)\"\r\n (pageSizeChange)=\"onFootfallPageSizeChange($event)\"></lib-pagination>\r\n </div>\r\n \r\n </div>\r\n \r\n </section>\r\n <div *ngIf=\"footfallLoading\" 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 </div>\r\n <div *ngIf=\"footfallNoData\" class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n \r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column \" style=\"margin: 64px;border-radius: 8px;\r\nbackground: var(--Gray-50, #F9FAFB);\">\r\n <svg class=\"my-5\" xmlns=\"http://www.w3.org/2000/svg\" width=\"94\" height=\"94\" viewBox=\"0 0 94 94\" fill=\"none\">\r\n <rect x=\"7\" y=\"7\" width=\"80\" height=\"80\" rx=\"40\" fill=\"#DAF1FF\" />\r\n <rect x=\"7\" y=\"7\" width=\"80\" height=\"80\" rx=\"40\" stroke=\"#EAF8FF\" stroke-width=\"13.3333\" />\r\n <g clip-path=\"url(#clip0_730_75095)\">\r\n <path\r\n d=\"M55.3327 62V58.6667C55.3327 56.8986 54.6303 55.2029 53.3801 53.9526C52.1298 52.7024 50.4341 52 48.666 52H35.3327C33.5646 52 31.8689 52.7024 30.6186 53.9526C29.3684 55.2029 28.666 56.8986 28.666 58.6667V62M65.3327 62V58.6667C65.3316 57.1895 64.8399 55.7546 63.935 54.5872C63.03 53.4198 61.7629 52.5859 60.3327 52.2167M53.666 32.2167C55.1 32.5838 56.3711 33.4178 57.2787 34.5872C58.1864 35.7565 58.6791 37.1947 58.6791 38.675C58.6791 40.1553 58.1864 41.5935 57.2787 42.7628C56.3711 43.9322 55.1 44.7662 53.666 45.1333M48.666 38.6667C48.666 42.3486 45.6812 45.3333 41.9993 45.3333C38.3174 45.3333 35.3327 42.3486 35.3327 38.6667C35.3327 34.9848 38.3174 32 41.9993 32C45.6812 32 48.666 34.9848 48.666 38.6667Z\"\r\n stroke=\"#00A3FF\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_730_75095\">\r\n <rect width=\"40\" height=\"40\" fill=\"white\" transform=\"translate(27 27)\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n <div class=\"nodata-title my-3\">No pending items</div>\r\n <div class=\"nodata-sub mb-3\">Looks like there is no action item required for <span\r\n *ngIf=\"selectedRevopsType?.value==='duplicateImages'\">duplicates</span><span\r\n *ngIf=\"selectedRevopsType?.value==='employee'\">employee/staff</span> <span\r\n *ngIf=\"selectedRevopsType?.value==='houseKeeping'\">houseKeeping</span>\r\n <span\r\n *ngIf=\"!selectedRevopsType?.value\">items</span></div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- Card Body -->\r\n <div *ngIf=\"selectedRevopsType?.value !== ''\" class=\"card-body mt-3 py-0\">\r\n <span class=\"cursor-pointer\" *ngIf=\"isCollapsed\" (click)=\"toggleSidebar()\" style=\"position: absolute; top: 15px; left: 0;\">\r\n <svg class=\"mt-2 ms-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path\r\n d=\"M9.72714 12.6365L13.3635 9.00013L9.72714 5.36377M4.63623 12.6365L8.27259 9.00013L4.63623 5.36377\"\r\n stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <ng-container *ngFor=\"let ticket of footfallTicketsData\">\r\n <div *ngIf=\"ticket?._source as source\" class=\"my-4\">\r\n <div *ngFor=\"let original of source.duplicateImages\" class=\"mb-4\">\r\n <div *ngIf=\"source?.duplicateImages?.length\" class=\"duplicate-head my-2\">Original image</div>\r\n <div class=\"row\">\r\n <!-- ✅ Original Image -->\r\n <div class=\"col-md-3 relative\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3\">\r\n \r\n <img [src]=\"imageUrl + original.filePath\" alt=\"\" class=\"w-100 rounded border\" />\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{ original.tempId }}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{ getFormattedEntryTime(original?.entryTime) }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <!-- 🟨 Duplicate Images (for this original) -->\r\n <div class=\"duplicate-head my-3\">Duplicates <span class=\"badge ms-2\" \r\n [ngClass]=\"{\r\n 'badge-light-primary': source?.duplicateStatus === 'pending',\r\n 'badge-light-success': source?.duplicateStatus === 'approved',\r\n 'badge-light-danger': source?.duplicateStatus === 'rejected'\r\n }\">{{source?.duplicateStatus | titlecase}}</span></div>\r\n <div class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of original.data\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n <input *ngIf=\"source?.duplicateStatus ==='pending'\" type=\"checkbox\" [(ngModel)]=\"img.selected\"\r\n class=\"position-absolute absolute form-check-input\"\r\n (change)=\"onImageCheckboxChange1(img, 'duplicate')\" />\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{ img.tempId }}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{ getFormattedEntryTime(img?.entryTime) }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"source?.employee?.length\" class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of source.employee\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n \r\n <!-- Top-right Checkbox -->\r\n <input *ngIf=\"source?.employeeStatus ==='pending'\" type=\"checkbox\" [(ngModel)]=\"img.selected\"\r\n class=\"position-absolute absolute form-check-input\"\r\n (change)=\"onImageCheckboxChange1(img, 'employee')\" />\r\n \r\n \r\n <!-- Image -->\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n \r\n <!-- Details -->\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{img.tempId}}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{getFormattedEntryTime(img?.entryTime)}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"source?.houseKeeping?.length\" class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of source.houseKeeping\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n \r\n <!-- Top-right Checkbox -->\r\n <input *ngIf=\"source?.houseKeepingStatus ==='pending'\" type=\"checkbox\" [(ngModel)]=\"img.selected\"\r\n class=\"position-absolute absolute form-check-input\"\r\n (change)=\"onImageCheckboxChange1(img, 'housekeeping')\" />\r\n \r\n \r\n <!-- Image -->\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n \r\n <!-- Details -->\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{img.tempId}}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{getFormattedEntryTime(img?.entryTime)}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <!-- <div *ngIf=\"!footfallLoading && !footfallNoData\" class=\"my-3\">\r\n <lib-pagination [itemsPerPage]=\"pageSizeFootfall\" [currentPage]=\"footfallcurrentPage\"\r\n [totalItems]=\"totalItemsFootfall\" [paginationSizes]=\"paginationSizes\" [pageSize]=\"setFootfallpageSize()\"\r\n (pageChange)=\"onFootfallPageChange($event)\"\r\n (pageSizeChange)=\"onFootfallPageSizeChange($event)\"></lib-pagination>\r\n </div> -->\r\n </div>\r\n </div>\r\n \r\n </div>\r\n</div>\r\n\r\n<ng-template #zoomPopup let-model>\r\n <div class=\"p-4 m-4\">\r\n <div class=\"modal-header border-0 p-0 w-100 flex-column align-items-start\">\r\n \r\n <!-- Heading -->\r\n <h5 class=\"modal-title mb-2\">\r\n {{ popupType === 'approved' ? 'Approve' : 'Reject' }} Selected Images\r\n </h5>\r\n\r\n <!-- Description -->\r\n <p class=\"mb-3\">\r\n You're about to {{ popupType === 'approved' ? 'approve' : 'reject' }} the following number of selected images.\r\n </p>\r\n\r\n <!-- Count Box -->\r\n <div class=\"border border-1 rounded p-3 w-50 mb-4\">\r\n <div *ngIf=\"popupvalue === 'employee'\" class=\"fw-semibold fs-5 mb-2\">\r\n {{ employeeACCount || '--' }}\r\n </div>\r\n <div *ngIf=\"popupvalue === 'housekeeping'\" class=\"fw-semibold fs-5 mb-2\">\r\n {{ houseKeepingACCount || '--' }}\r\n </div>\r\n <div *ngIf=\"popupvalue === 'duplicate'\" class=\"fw-semibold fs-5 mb-2\">\r\n {{ duplicateACCount || '--' }}\r\n </div>\r\n <div class=\"fw-semibold text-muted fs-6 mt-2\">\r\n {{ popupvalue | titlecase }}s\r\n </div>\r\n </div>\r\n\r\n <!-- Action Buttons -->\r\n <div class=\"w-100 d-flex justify-content-end\">\r\n <button class=\"btn btn-outline me-2\" (click)=\"cancel()\">Cancel</button>\r\n <button class=\"btn btn-primary\" (click)=\"submitValue(popupType, popupvalue)\">\r\n {{ popupType === 'approved' ? 'Approve' : 'Reject' }}\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { GlobalStateService, PageInfoService } from 'tango-app-ui-global';\r\nimport { Subject, takeUntil } from \"rxjs\";\r\nimport { TicketService } from '../../services/ticket.service';\r\n@Component({\r\n selector: 'lib-tango-manage-tickets',\r\n templateUrl: './tango-manage-tickets.component.html',\r\n styleUrl: './tango-manage-tickets.component.scss'\r\n})\r\nexport class TangoManageTicketsComponent implements OnInit,OnDestroy {\r\n SelectedTab:any='installation'\r\n private readonly destroy$ = new Subject();\r\n headerFilters: any;\r\n ticketAllCount: any;\r\n users: any;\r\n constructor(private pageInfo:PageInfoService,private route: ActivatedRoute,private router:Router,public gs:GlobalStateService,private service:TicketService){\r\n }\r\n\r\n ngOnInit(): void {\r\n const userData: any = JSON.parse(localStorage.getItem(\"user-info\") || \"{}\");\r\n this.users = userData;\r\n this.route?.queryParams?.pipe(takeUntil(this.destroy$)).subscribe(params => {\r\n if (params.hasOwnProperty('type')) {\r\n const type = params['type'];\r\n this.Selectedtabs(type);\r\n \r\n } else{\r\n this.updateStoreIdQueryParam()\r\n }\r\n });\r\n this.onLoad(); \r\n this.setPageData();\r\n }\r\n\r\n updateStoreIdQueryParam() {\r\n const queryParams = { ...this.route?.snapshot?.queryParams };\r\n // Update storeId in queryParams\r\n queryParams.type = this.SelectedTab.toLocaleLowerCase();\r\n // Navigate to the same route with updated queryParams\r\n this.router.navigate([], { queryParams: queryParams, queryParamsHandling: 'merge' });\r\n }\r\n\r\n setPageData(){\r\n this.pageInfo.setTitle('Tickets')\r\n this.pageInfo.setDescription('Summary of queries raised,addresed & resolved')\r\n let breadcrumbs : any[]=[];\r\n if (this.gs.userAccess.value?.userType === \"tango\") {\r\n breadcrumbs= [\r\n {\r\n title: \"Manage\",\r\n path: \"/manage/brands\",\r\n isActive: false,\r\n isSeparator: false,\r\n },\r\n {\r\n title: \"Manage\",\r\n path: \"/manage/brands\",\r\n isActive: false,\r\n isSeparator: true,\r\n },\r\n ];\r\n } else if (this.gs.userAccess.value?.userType === \"client\") {\r\n breadcrumbs= [\r\n {\r\n title: \"Manage\",\r\n path: \"/manage/summary\",\r\n isActive: false,\r\n isSeparator: false,\r\n },\r\n {\r\n title: \"Manage\",\r\n path: \"/manage/summary\",\r\n isActive: false,\r\n isSeparator: true,\r\n },\r\n ];\r\n }\r\n this.pageInfo.setBreadcrumbs(breadcrumbs);\r\n }\r\n\r\n \r\n Selectedtabs(value:any){\r\n this.SelectedTab = value;\r\n }\r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\nonLoad(){\r\n this.gs.dataRangeValue?.pipe(takeUntil(this.destroy$))?.subscribe({\r\n next: (data: any) => {\r\n if (data) {\r\n this.headerFilters = data;\r\n this.getAllCount();\r\n }\r\n }\r\n })\r\n}\r\n\r\ngetAllCount(){\r\n let obj ={\r\n clientId: this.headerFilters?.clients,\r\n fromDate: this.headerFilters?.date?.startDate,\r\n toDate: this.headerFilters?.date?.endDate\r\n }\r\n this.service.getAllCounts(obj)?.pipe(takeUntil(this.destroy$))?.subscribe({\r\n next: (res: any) => {\r\n if(res.code ===200){\r\n this.ticketAllCount = res?.data[0];\r\n }\r\n }\r\n })\r\n}\r\n\r\n}\r\n","<div class=\"card mb-5 py-3 px-5\">\r\n <ul class=\"nav nav-stretch nav-line-tabs1 nav-line-tabs border-transparent flex-nowrap\">\r\n <li class=\"nav-item\">\r\n <a [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'installation' }\" (click)=\"Selectedtabs('installation')\"\r\n [ngClass]=\"SelectedTab === 'installation' ? 'active' : ''\" class=\"nav-link cursor-pointer no-border me-3\">\r\n Installation<span class=\"mx-2 \" [ngClass]=\"SelectedTab ==='installation' ? 'badge-num-primary' :'badge-num-muted'\">{{ticketAllCount?.installationCount?ticketAllCount?.installationCount:0}}</span>\r\n </a>\r\n </li>\r\n <li class=\"nav-item\" >\r\n <a [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'infra' }\" (click)=\"Selectedtabs('infra')\"\r\n [ngClass]=\"SelectedTab === 'infra' ? 'active' : ''\" class=\"nav-link cursor-pointer no-border me-3\">\r\n Infra<span class=\"mx-2\" [ngClass]=\"SelectedTab ==='infra' ? 'badge-num-primary' :'badge-num-muted'\">{{ticketAllCount?.infraCount?ticketAllCount?.infraCount:0}}</span>\r\n </a>\r\n </li> \r\n <li class=\"nav-item\" [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'dataMismatch' }\" (click)=\"Selectedtabs('dataMismatch')\">\r\n <a [ngClass]=\"SelectedTab ==='dataMismatch' ? 'active' :''\" class=\"nav-link cursor-pointer me-3\">Data Mismatch\r\n <span class=\"mx-2\" [ngClass]=\"SelectedTab ==='dataMismatch' ? 'badge-num-primary' :'badge-num-muted'\">{{ticketAllCount?.datamismatchCount? ticketAllCount?.datamismatchCount:0}}</span></a>\r\n </li>\r\n <!-- <li *ngIf=\"this.users.userType ==='tango'\" class=\"nav-item\" [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'audit' }\" (click)=\"Selectedtabs('audit')\"><a [ngClass]=\"SelectedTab ==='audit' ? 'active' :''\"\r\n class=\"nav-link cursor-pointer no-border me-3\">Audit</a>\r\n </li> -->\r\n <li *ngIf=\"this.users.userType ==='tango'\" class=\"nav-item\" (click)=\"Selectedtabs('mat')\"><a [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'mat' }\" [ngClass]=\"SelectedTab ==='mat' ? 'active' :''\"\r\n class=\"nav-link cursor-pointer no-border me-3\">Employee Mat\r\n <span class=\"mx-2 \" [ngClass]=\"SelectedTab ==='mat' ? 'badge-num-primary' :'badge-num-muted'\">{{ticketAllCount?.matCount ?ticketAllCount?.matCount:0}}</span></a>\r\n </li>\r\n<li *ngIf=\"(gs.userAccess | async)?.userType === 'tango' || headerFilters?.client ==='11'\" class=\"nav-item\" (click)=\"Selectedtabs('footfall')\"><a [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'footfall' }\" [ngClass]=\"SelectedTab ==='footfall' ? 'active' :''\"\r\n class=\"nav-link cursor-pointer no-border me-3\">Footfall Directory\r\n </a>\r\n <!-- <span class=\"mx-2 \" [ngClass]=\"SelectedTab ==='footfall' ? 'badge-num-primary' :'badge-num-muted'\">{{ticketAllCount?.matCount ?ticketAllCount?.matCount:0}}</span> -->\r\n </li>\r\n \r\n </ul>\r\n</div>\r\n<lib-footfall-dic *ngIf=\"SelectedTab ==='footfall'\"></lib-footfall-dic>\r\n<lib-tickets *ngIf=\"SelectedTab !=='audit' && SelectedTab !=='footfall'\"></lib-tickets>\r\n<lib-audit-metrics *ngIf=\"SelectedTab ==='audit'\"></lib-audit-metrics>\r\n<router-outlet></router-outlet>","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { TangoManageTicketsComponent } from './components/tango-manage-tickets/tango-manage-tickets.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path:'',\r\n component:TangoManageTicketsComponent\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class TangoManageTicketsRoutingModule { }\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-audit-log',\r\n templateUrl: './audit-log.component.html',\r\n styleUrl: './audit-log.component.scss'\r\n})\r\nexport class AuditLogComponent {\r\n\r\n}\r\n","<p>audit-log works!</p>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { TangoManageTicketsRoutingModule } from './tango-manage-tickets-routing.module';\r\nimport { TangoManageTicketsComponent } from './components/tango-manage-tickets/tango-manage-tickets.component';\r\nimport { TicketsComponent } from './components/tickets/tickets.component';\r\nimport { FormsModule,ReactiveFormsModule } from '@angular/forms';\r\nimport { CommonSharedModule } from 'tango-app-ui-shared';\r\nimport { AddCsmModalComponent } from './components/add-csm-modal/add-csm-modal.component';\r\nimport { CommentModelComponent } from './components/comment-model/comment-model.component';\r\nimport { AuditMetricsComponent } from './components/audit-metrics/audit-metrics.component';\r\nimport { ReTriggerComponent } from './components/re-trigger/re-trigger.component';\r\nimport { AuditLogComponent } from './components/audit-log/audit-log.component';\r\nimport { CountComponent } from './components/count/count.component';\r\nimport { FootfallDicComponent } from './components/footfall-dic/footfall-dic.component';\r\nimport { ReactiveSelectComponent } from './components/reactive-select/reactive-select.component';\r\nimport { GroupSelectComponent } from './components/group-select/group-select.component';\r\n@NgModule({\r\n declarations: [\r\n TangoManageTicketsComponent,\r\n TicketsComponent,AddCsmModalComponent, CommentModelComponent, AuditMetricsComponent, \r\n ReTriggerComponent, AuditLogComponent, CountComponent, FootfallDicComponent,\r\n ReactiveSelectComponent,\r\n GroupSelectComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n TangoManageTicketsRoutingModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n CommonSharedModule\r\n ]\r\n})\r\nexport class TangoManageTicketsModule { }\r\n","/*\r\n * Public API Surface of tango-manage-tickets\r\n */\r\n\r\nexport * from './lib/tango-manage-tickets.module';\r\n\r\nexport * from './lib/components/tango-manage-tickets/tango-manage-tickets.component';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i1","i3.TicketService","i2.TicketService","i3","i4","i4.TicketService","i5.ExcelService","i6","i7","i8","i5","i1.TicketService","i3.ExcelService","i8.ReactiveSelectComponent","i9.GroupSelectComponent","i5.TicketsComponent","i6.AuditMetricsComponent","i7.FootfallDicComponent"],"mappings":"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"}
1
+ {"version":3,"file":"tango-app-ui-manage-tickets.mjs","sources":["../../../projects/tango-manage-tickets/src/lib/services/ticket.service.ts","../../../projects/tango-manage-tickets/src/lib/components/add-csm-modal/add-csm-modal.component.ts","../../../projects/tango-manage-tickets/src/lib/components/add-csm-modal/add-csm-modal.component.html","../../../projects/tango-manage-tickets/src/lib/components/comment-model/comment-model.component.ts","../../../projects/tango-manage-tickets/src/lib/components/comment-model/comment-model.component.html","../../../projects/tango-manage-tickets/src/lib/services/excel.service.ts","../../../projects/tango-manage-tickets/src/lib/components/tickets/tickets.component.ts","../../../projects/tango-manage-tickets/src/lib/components/tickets/tickets.component.html","../../../projects/tango-manage-tickets/src/lib/components/re-trigger/re-trigger.component.ts","../../../projects/tango-manage-tickets/src/lib/components/re-trigger/re-trigger.component.html","../../../projects/tango-manage-tickets/src/lib/components/count/count.component.ts","../../../projects/tango-manage-tickets/src/lib/components/count/count.component.html","../../../projects/tango-manage-tickets/src/lib/components/audit-metrics/audit-metrics.component.ts","../../../projects/tango-manage-tickets/src/lib/components/audit-metrics/audit-metrics.component.html","../../../projects/tango-manage-tickets/src/lib/components/reactive-select/reactive-select.component.ts","../../../projects/tango-manage-tickets/src/lib/components/reactive-select/reactive-select.component.html","../../../projects/tango-manage-tickets/src/lib/components/group-select/group-select.component.ts","../../../projects/tango-manage-tickets/src/lib/components/group-select/group-select.component.html","../../../projects/tango-manage-tickets/src/lib/components/footfall-dic/footfall-dic.component.ts","../../../projects/tango-manage-tickets/src/lib/components/footfall-dic/footfall-dic.component.html","../../../projects/tango-manage-tickets/src/lib/components/tango-manage-tickets/tango-manage-tickets.component.ts","../../../projects/tango-manage-tickets/src/lib/components/tango-manage-tickets/tango-manage-tickets.component.html","../../../projects/tango-manage-tickets/src/lib/tango-manage-tickets-routing.module.ts","../../../projects/tango-manage-tickets/src/lib/components/audit-log/audit-log.component.ts","../../../projects/tango-manage-tickets/src/lib/components/audit-log/audit-log.component.html","../../../projects/tango-manage-tickets/src/lib/tango-manage-tickets.module.ts","../../../projects/tango-manage-tickets/src/public-api.ts","../../../projects/tango-manage-tickets/src/tango-app-ui-manage-tickets.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\r\nimport { Injectable, Optional } from '@angular/core';\r\nimport { GlobalStateService } from 'tango-app-ui-global';\r\nimport {\r\n BehaviorSubject,\r\n Observable,\r\n catchError,\r\n map,\r\n of,\r\n throwError,\r\n} from \"rxjs\";\r\nimport { HttpParams } from '@angular/common/http';\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class TicketService {\r\n userApiUrl: any;\r\n ticketsApiUrl: any;\r\n auditApiUrl:any;\r\n auditmetricApiUrl:any;\r\n zoneauditApiUrl:any;\r\n footfallDirapiUrl: any;\r\n footfallCDN:any;\r\n trafficApiUrl:any;\r\n dropDownTrigger = new BehaviorSubject<any>(null)\r\n constructor(private http: HttpClient, private gs: GlobalStateService) {\r\n this.gs.environment.subscribe((env) => {\r\n if (env) {\r\n this.userApiUrl = env.userApiUrl;\r\n this.ticketsApiUrl =env.ticketsApiUrl;\r\n this.auditmetricApiUrl = env.auditmetricApiUrl;\r\n this.auditApiUrl = env.auditApiUrl;\r\n this.zoneauditApiUrl = env.zoneauditApiUrl;\r\n this.footfallDirapiUrl= env.footfallDirapiUrl;\r\n this.footfallCDN =env.footfallCDN;\r\n this.trafficApiUrl =env.trafficApiUrl;\r\n }\r\n })\r\n }\r\n\r\n getUserList(params: any): Observable<any> {\r\n return this.http.post<any>(`${this.userApiUrl}/get-list`, params)\r\n }\r\n exportInstallationList(data:any){\r\n return this.http.post(`${this.ticketsApiUrl}/infra/installationTable`,data,{responseType: 'arraybuffer'})\r\n }\r\n exportInfraList(data:any){\r\n return this.http.post(`${this.ticketsApiUrl}/infra/infraTable`,data,{responseType: 'arraybuffer'})\r\n }\r\n exportMatList(data:any){\r\n return this.http.post(`${this.ticketsApiUrl}/infra/matTable`,data,{responseType: 'arraybuffer'})\r\n }\r\n getSotresList(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/storeFilter`, data)\r\n }\r\n\r\n getInstallationList(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/installationTable`, data)\r\n }\r\n\r\n getInfraList(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/infraTable`, data)\r\n }\r\n\r\n getAssignTicket(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/assignTicket`, data)\r\n }\r\n getMatList(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/matTable`, data)\r\n }\r\n \r\n updateTicketIssue(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/employeeTraning/updatecomment`, data)\r\n }\r\n\r\n getUserActiveList(params: any): Observable<any> {\r\n return this.http.post<any>(`${this.userApiUrl}/list`, params)\r\n }\r\n \r\n getDataMismathList(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/dataMismatchTable`, data)\r\n }\r\n exportDataMismatchList(data:any){\r\n return this.http.post(`${this.ticketsApiUrl}/infra/dataMismatchTable`,data,{responseType: 'arraybuffer'})\r\n }\r\n\r\n getAllCounts(data:any){\r\n return this.http.post<any>(`${this.ticketsApiUrl}/infra/allCounts`, data)\r\n }\r\n getstoreMetrics(data:any){\r\n return this.http.post(`${this.auditApiUrl}/metrics/store-metrics`,data)\r\n }\r\n getstoreMetricsExport(data:any){\r\n return this.http.post(`${this.auditApiUrl}/metrics/store-metrics`,data,{responseType: 'arraybuffer'})\r\n }\r\n getclientList(){\r\n return this.http.get(`${this.auditApiUrl}/clients`)\r\n }\r\n getuserList(){\r\n return this.http.get(`${this.auditApiUrl}/tango-users`)\r\n }\r\n auditretrigger(data:any){\r\n return this.http.post(`${this.auditApiUrl}/metrics/re-trigger`,data)\r\n }\r\n getstoreList(data:any){\r\n return this.http.post(`${this.auditApiUrl}/audit-stores`,data)\r\n }\r\n getAuditImages(data:any){\r\n return this.http.get(`${this.auditApiUrl}/audit-images?fileDate=${data?.fileDate}&storeId=${data?.storeId}&imageType=${data?.imageType}&export=${data?.export}&zoneName=${data?.zoneName}&moduleType=${data?.moduleType}`)\r\n }\r\n ExportAuditImagesasxlsx(data:any){\r\n return this.http.get(`${this.auditApiUrl}/audit-images?fileDate=${data?.fileDate}&storeId=${data?.storeId}&imageType=${data?.imageType}&export=${data?.export}&zoneName=${data?.zoneName}&moduleType=${data?.moduleType}`,{responseType:'arraybuffer'})\r\n }\r\n\r\n getTicketSummaryApi(client: any, fromDate: any, toDate: any): Observable<any> {\r\n return this.http.get(`${this.footfallDirapiUrl}/ticket-summary?clientId=${client}&fromDate=${fromDate}&toDate=${toDate}`);\r\n }\r\n\r\n getTicketListApi(client: any, fromDate: any, toDate: any, searchvalue:any, limit:any, offset:any, isExport:any,sortBy:any,sortOrder:any): Observable<any> {\r\n return this.http.get(`${this.footfallDirapiUrl}/ticket-list?clientId=${client}&fromDate=${fromDate}&toDate=${toDate}&searchValue=${searchvalue}&limit=${limit}&offset=${offset}&isExport=${isExport}&sortBy=${sortBy}&sortOrder=${sortOrder}`);\r\n }\r\n\r\n getTicketListExportApi(client: any, fromDate: any, toDate: any, searchvalue:any, limit:any, offset:any, isExport:any,sortBy:any,sortOrder:any): Observable<any> {\r\n return this.http.get(`${this.footfallDirapiUrl}/ticket-list?clientId=${client}&fromDate=${fromDate}&toDate=${toDate}&searchValue=${searchvalue}&limit=${limit}&offset=${offset}&isExport=${isExport}&sortBy=${sortBy}&sortOrder=${sortOrder}`,{responseType: 'arraybuffer'});\r\n }\r\n\r\n\r\n\r\ngetTicketsApi(store: any, fromDate: any, toDate: any, revopsType: any, status: any, action: any, offset: any, limit: any): Observable<any> {\r\n let params = new HttpParams()\r\n .set('storeId', store)\r\n .set('fromDate', fromDate)\r\n .set('toDate', toDate)\r\n .set('offset', offset)\r\n .set('limit', limit);\r\n if (revopsType) {\r\n params = params.set('revopsType', revopsType);\r\n }\r\n if (status) {\r\n params = params.set('status', status);\r\n }\r\n if (action) {\r\n params = params.set('action', action);\r\n }\r\n return this.http.get(`${this.footfallDirapiUrl}/get-tickets`, { params });\r\n}\r\n\r\ngetTaggedStoresApi(client: any, fromDate: any, toDate: any,searchValue:any, clusters: any): Observable<any> {\r\n let params = new HttpParams()\r\n .set('clientId', client)\r\n .set('fromDate', fromDate)\r\n .set('toDate', toDate); // Add searchValue as an empty string if not provided\r\n // Only add 'clusters' if it's not null, undefined, or an empty array/string\r\n if (searchValue) {\r\n params = params.set('searchValue', searchValue);\r\n }\r\n if (clusters && clusters.length > 0) {\r\n params = params.set('clusters', clusters);\r\n }\r\n return this.http.get(`${this.footfallDirapiUrl}/get-tagged-stores`, { params });\r\n}\r\n\r\n\r\ngetUpdateStatusApi(data:any): Observable<any> {\r\n const url = `${this.footfallDirapiUrl}/update-status`;\r\n return this.http.put(url, data);\r\n}\r\n getclusters(data: any) {\r\n return this.http.post(`${this.trafficApiUrl}/headercluster_v2`, data)\r\n }\r\n}\r\n","import { Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Subject, takeUntil } from 'rxjs';\r\nimport { GlobalStateService } from 'tango-app-ui-global';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { ToastService } from 'tango-app-ui-shared';\r\n\r\n@Component({\r\n selector: \"lib-add-csm-modal\",\r\n templateUrl: \"./add-csm-modal.component.html\",\r\n styleUrl: \"./add-csm-modal.component.scss\",\r\n})\r\nexport class AddCsmModalComponent implements OnInit, OnDestroy {\r\n @Input() ticketId: any;\r\n csmUserList: any = [];\r\n csmSelectInput = new FormControl(\"\");\r\n private readonly destroy$ = new Subject();\r\n headerFilters: any;\r\n userList_req: {};\r\n users: any=[];\r\n userList: any=[];\r\n\r\n constructor(\r\n private activeModal: NgbActiveModal,\r\n public gs: GlobalStateService,\r\n private service: TicketService,\r\n private toast: ToastService\r\n ) {}\r\n ngOnInit(): void {\r\n const userData: any = JSON.parse(localStorage.getItem(\"user-info\") || \"{}\");\r\n this.users = userData;\r\n this.gs.dataRangeValue?.pipe(takeUntil(this.destroy$))?.subscribe({\r\n next: (data: any) => {\r\n if (data) {\r\n this.headerFilters = data;\r\n this.userList_req = {\r\n \"userType\": this.users.userType, \"isActive\": true\r\n // clientId: this.headerFilters.client,\r\n // limit: 10000,\r\n // offset: 1,\r\n // userType: this.users.userType,\r\n // FilterByStatus:'isActive'\r\n };\r\n this.getuserlist();\r\n }\r\n },\r\n });\r\n }\r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n\r\n getuserlist() {\r\n this.service\r\n .getUserActiveList(this.userList_req)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((res: any) => {\r\n if (res && res.code === 200) {\r\n this.userList = res?.data?.result;\r\n }\r\n });\r\n }\r\n\r\n assignCsm() {\r\n let obj = {\r\n tickets: this.ticketId,\r\n user: this.csmSelectInput.value,\r\n };\r\n this.service\r\n .getAssignTicket(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.toast.getSuccessToast(res.message);\r\n this.activeModal.close(\"submit\");\r\n }\r\n },\r\n error: (err: any) => {\r\n this.toast.getErrorToast(err.error.error ? err.error.error : err.error);\r\n },\r\n complete: () => {},\r\n });\r\n }\r\n\r\n onCsmSelect(selectedCsm: any) {\r\n this.csmSelectInput.setValue(selectedCsm?._id);\r\n }\r\n cancel() {\r\n this.activeModal.close(\"submit\");\r\n }\r\n}\r\n","<div class=\"card py-0\">\r\n <div class=\"card-body py-0 d-flex flex-start flex-column p-9 \">\r\n <div class=\"my-5\">\r\n <div class=\"symbol symbol-75px symbol-circle\">\r\n <svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" fill=\"#DAF1FF\"/>\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" stroke=\"#EAF8FF\" stroke-width=\"8\"/>\r\n <path d=\"M32 37V35C32 33.9391 31.5786 32.9217 30.8284 32.1716C30.0783 31.4214 29.0609 31 28 31H21C19.9391 31 18.9217 31.4214 18.1716 32.1716C17.4214 32.9217 17 33.9391 17 35V37M36 24V30M39 27H33M28.5 23C28.5 25.2091 26.7091 27 24.5 27C22.2909 27 20.5 25.2091 20.5 23C20.5 20.7909 22.2909 19 24.5 19C26.7091 19 28.5 20.7909 28.5 23Z\" stroke=\"#00A3FF\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n </div>\r\n <a class=\"fs-4 text-gray-800 text-hover-primary fw-bold mb-0 title cursor-pointer\">Assign Ticket</a>\r\n <p class=\"text-sub\">Assign the ticket to a particular user</p>\r\n <div class=\"mt-5 w-100\">\r\n <!-- <lib-reactive-select [formControl]=\"csmSelectInput\" [idField]=\"'email'\" [nameField]=\"'userName'\" [data]=\"csmUserList\" ></lib-reactive-select> -->\r\n\r\n <!-- <select [formControl]=\"csmSelectInput\" class=\"form-select border-val my-3\">\r\n <option [value]=\"user.email\" *ngFor=\"let user of csmUserList\">{{user.userName}}</option>\r\n </select> -->\r\n\r\n <lib-select [items]=\"userList\" [multi]=\"false\" [searchField]=\"'userName'\" [idField]=\"'_id'\"\r\n (selected)=\"onCsmSelect($event)\" ></lib-select>\r\n\r\n <div class=\"d-flex my-7\" role=\"group\">\r\n <button class=\"btn btn-outline w-100 me-3\" (click)=\"cancel()\">Cancel</button>\r\n <button class=\"btn btn-primary w-100 ms-3\" [disabled]=\"!csmSelectInput.value\" (click)=\"assignCsm()\">Submit</button>\r\n </div>\r\n \r\n </div>\r\n\r\n </div>\r\n</div>","import { Component, Input } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { ToastService } from 'tango-app-ui-shared';\r\nimport { Subject, takeUntil } from 'rxjs';\r\n@Component({\r\n selector: 'lib-comment-model',\r\n templateUrl: './comment-model.component.html',\r\n styleUrl: './comment-model.component.scss'\r\n})\r\nexport class CommentModelComponent {\r\n @Input() ticketId: any;\r\n comment:any= \"\"\r\n private readonly destroy$ = new Subject();\r\n constructor(private activeModal:NgbActiveModal, private service: TicketService,\r\n private toast: ToastService){\r\n\r\n }\r\n\r\n cancel(){\r\n this.activeModal.close();\r\n }\r\n commentSubmit(){\r\n if(this.comment == ''){\r\n return this.toast.getErrorToast(\"Please Enter Any comment\")\r\n }\r\n let obj = {\r\n \"ticketId\": this.ticketId,\r\n \"primary\": \"\",\r\n \"secondary\": [],\r\n \"comment\": this.comment,\r\n \r\n }\r\n this.service\r\n .updateTicketIssue(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.toast.getSuccessToast(res.message);\r\n this.activeModal.close(\"submit\");\r\n }\r\n },\r\n error: (err: any) => {\r\n this.toast.getErrorToast(err.error.error ? err.error.error : err.error);\r\n },\r\n complete: () => {},\r\n });\r\n }\r\n \r\n}\r\n\r\n\r\n","<div class=\"card py-0\">\r\n <div class=\"card-body py-0 d-flex flex-start flex-column p-9 \">\r\n <div class=\"my-5\">\r\n <div class=\"symbol symbol-75px symbol-circle\">\r\n <svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" fill=\"#DAF1FF\"/>\r\n <rect x=\"4\" y=\"4\" width=\"48\" height=\"48\" rx=\"24\" stroke=\"#EAF8FF\" stroke-width=\"8\"/>\r\n <path d=\"M37 31C37 31.5304 36.7893 32.0391 36.4142 32.4142C36.0391 32.7893 35.5304 33 35 33H23L19 37V21C19 20.4696 19.2107 19.9609 19.5858 19.5858C19.9609 19.2107 20.4696 19 21 19H35C35.5304 19 36.0391 19.2107 36.4142 19.5858C36.7893 19.9609 37 20.4696 37 21V31Z\" stroke=\"#00A3FF\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg>\r\n </div>\r\n </div>\r\n <a class=\"fs-4 text-gray-800 text-hover-primary fw-bold mb-0 title cursor-pointer\">Comment</a>\r\n <p class=\"text-sub\">Add comment for the ticket</p>\r\n <div class=\"w-100\">\r\n <label class=\"label my-2\">Comments</label>\r\n <textarea class=\"form-control\" [(ngModel)]=\"comment\" rows=\"4\" type=\"text\"></textarea>\r\n\r\n <div class=\"d-flex my-7\" role=\"group\">\r\n <button class=\"btn btn-outline w-100 me-3\" (click)=\"cancel()\">Cancel</button>\r\n <button class=\"btn btn-primary w-100 ms-3\" (click)=\"commentSubmit()\">Submit</button>\r\n </div>\r\n </div>\r\n </div>\r\n</div>","import { Injectable } from '@angular/core';\r\nimport * as FileSaver from 'file-saver';\r\nimport * as XLSX from 'xlsx';\r\n\r\nconst EXCEL_TYPE = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=UTF-8';\r\nconst EXCEL_EXTENSION = '.xlsx';\r\nconst ZIP_TYPE = 'application/zip'\r\nconst ZIP_EXTENSION = '.zip'\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ExcelService {\r\n\r\n \r\n constructor() { }\r\n\r\n public exportAsExcelFile(json: any[], excelFileName: string): void {\r\n const worksheet: XLSX.WorkSheet = XLSX.utils.json_to_sheet(json);\r\n const workbook: XLSX.WorkBook = { Sheets: { 'data': worksheet }, SheetNames: ['data'] };\r\n const excelBuffer: any = XLSX.write(workbook, { bookType: 'xlsx', type: 'array' });\r\n this.saveAsExcelFile(excelBuffer, excelFileName);\r\n }\r\n\r\n public saveAsExcelFile(buffer: any, fileName: string): void {\r\n console.log(buffer, fileName);\r\n \r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n FileSaver.saveAs(data, fileName + 'list'+ EXCEL_EXTENSION);\r\n }\r\n \r\n private saveAsTemplate(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], {\r\n type: EXCEL_TYPE\r\n });\r\n FileSaver.saveAs(data, fileName + EXCEL_EXTENSION);\r\n }\r\n\r\n public saveAsZipFile(buffer: any, fileName: string): void {\r\n const data: Blob = new Blob([buffer], {\r\n type: ZIP_TYPE\r\n });\r\n FileSaver.saveAs(data, fileName + 'Images'+ ZIP_EXTENSION);\r\n }\r\n\r\n}\r\n","import { ChangeDetectorRef, Component, OnDestroy, OnInit } from \"@angular/core\";\r\nimport { ActivatedRoute, Router } from \"@angular/router\";\r\nimport { GlobalStateService } from \"tango-app-ui-global\";\r\nimport { Subject, takeUntil } from \"rxjs\";\r\nimport { NgbModal } from \"@ng-bootstrap/ng-bootstrap\";\r\nimport { AddCsmModalComponent } from \"../add-csm-modal/add-csm-modal.component\";\r\nimport { TicketService } from \"../../services/ticket.service\";\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { CommentModelComponent } from \"../comment-model/comment-model.component\";\r\n@Component({\r\n selector: \"lib-tickets\",\r\n templateUrl: \"./tickets.component.html\",\r\n styleUrl: \"./tickets.component.scss\",\r\n})\r\nexport class TicketsComponent implements OnInit, OnDestroy {\r\n type = \"Infra\";\r\n searchValue: any = \"\";\r\n selectedTab: any = \"total\";\r\n // paginationVariables\r\n itemsPerPage = 10;\r\n currentPage = 1;\r\n totalItems = 0;\r\n paginationSizes = [10, 20, 30];\r\n pageSize = 10;\r\n private readonly destroy$ = new Subject();\r\n assignTicket: boolean = false;\r\n filterByStores: any = [];\r\n filterByinstalled: any = [];\r\n filterByStatus: any = [];\r\n filterByQueryType: any = [];\r\n issueType: any = [];\r\n sortedColumn: string;\r\n sortDirection: number;\r\n headerFilters: any;\r\n userList_req: any;\r\n userList: any = [];\r\n dataObject: any=[];\r\n storeList: any = [];\r\n statusType: { text: string; id: string }[];\r\n typeName: string;\r\n users: any;\r\n limit: number = 10;\r\n offset: number = 1;\r\n sortBy: any = -1;\r\n sortColumName: any = \"\";\r\n listArray: any = [];\r\n tableListArray: any = [];\r\n loading: boolean = true;\r\n noData: boolean = false;\r\n selectAll: any = false;\r\n assignStores: any = [];\r\n issueTypeList: any=[];\r\n queryTypeList: any=[];\r\n \r\n constructor(\r\n private cd: ChangeDetectorRef,\r\n private router: Router,\r\n private route: ActivatedRoute,\r\n public gs: GlobalStateService,\r\n private modalService: NgbModal,\r\n private service: TicketService,\r\n private excelservice: ExcelService,\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n const userData: any = JSON.parse(localStorage.getItem(\"user-info\") || \"{}\");\r\n this.users = userData;\r\n this.route?.queryParams\r\n ?.pipe(takeUntil(this.destroy$))\r\n .subscribe((params) => {\r\n this.type = params.type;\r\n this.filterByStores =[]; this.storeList=[]\r\n this.filterByinstalled=[]; this.statusType =[]\r\n this.filterByStatus =[]; this.userList=[];\r\n this.issueType=[]; this.issueTypeList =[]\r\n this.filterByQueryType =[]; this.queryTypeList=[];\r\n this.dataObject=[]\r\n this.gs.manageRefreshTrigger.next(true)\r\n this.getInitload();\r\n this.gs.dataRangeValue?.pipe(takeUntil(this.destroy$))?.subscribe({\r\n next: (data: any) => {\r\n if (data) {\r\n this.headerFilters = data;\r\n this.userList_req = {\r\n limit: 10000,\r\n offset: 1,\r\n userType: this.users.userType,\r\n };\r\n this.getstoreFilter();\r\n }\r\n },\r\n });\r\n if (this.type === \"installation\") {\r\n this.typeName = \"Installed By\";\r\n this.statusType = [\r\n { text: \"Onboarded\", id: \"onboarded\" },\r\n { text: \"Paired\", id: \"paired\" },\r\n { text: \"Installationfailed\", id: \"installationfailed\" },\r\n { text: \"Deployed\", id: \"deployed\" },\r\n ];\r\n } else {\r\n this.typeName = \"Resolved By\";\r\n \r\n if (this.users.userType === \"tango\" && this.type ==='infra'){ \r\n this.statusType = [\r\n { text: \"Open\", id: \"open\" },\r\n { text: \"In Progress\", id: \"inprogress\" },\r\n { text: \"Refresh Ticket\", id: \"refreshticket\" },\r\n { text: \"Closed\", id: \"closed\" },\r\n ];\r\n }else{\r\n this.statusType = [\r\n { text: \"Open\", id: \"open\" },\r\n { text: \"In Progress\", id: \"inprogress\" },\r\n { text: \"Closed\", id: \"closed\" },\r\n ];\r\n }\r\n this.issueTypeList = [\r\n { text: \"High Count\", id: \"highcount\" },\r\n { text: \"Low Count\", id: \"lowcount\" },\r\n ];\r\n this.queryTypeList = [\r\n { text: \"Internal\", id: \"internal\" },\r\n { text: \"External\", id: \"external\" },\r\n ];\r\n }\r\n });\r\n }\r\n getInitload() {\r\n this.searchValue = \"\";\r\n this.limit = 10;\r\n this.pageSize = 10;\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.selectedTab = \"total\";\r\n this.loading = true;\r\n this.noData = false;\r\n this.sortedColumn='';\r\n }\r\n getstoreFilter() {\r\n this.service\r\n .getSotresList({ issueType: this.type,clientId:this.headerFilters.clients })\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({ \r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.storeList = res?.data?.data;\r\n this.storeList.forEach((element: any) => {\r\n element.text = element.storeId;\r\n element.id = element.storeId;\r\n });\r\n if(this.users.userType === \"tango\"){\r\n this.getuserlist();\r\n } else {\r\n if(this.type ==='installation'){\r\n this.dataObject = [\r\n { Description: \"Store ID\", Issues: this.storeList },\r\n { Description: \"Deployed Status\", Issues: this.statusType },\r\n ];\r\n } else if(this.type ==='infra' || this.type ==='dataMismatch'){\r\n this.dataObject = [\r\n { Description: \"Store ID\", Issues: this.storeList },\r\n { Description: \"Status\", Issues: this.statusType },\r\n ]; \r\n }else if(this.type ==='mat' ){\r\n this.dataObject = [\r\n { Description: \"Status\", Issues: this.statusType },\r\n ]; \r\n }\r\n }\r\n this.getTable();\r\n }else{\r\n this.getTable();\r\n }\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n }\r\n getuserlist() {\r\n this.service\r\n .getUserList(this.userList_req)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe((res: any) => {\r\n if (res && res.code === 200) {\r\n this.userList = res?.data?.result;\r\n this.userList?.forEach((element: any) => {\r\n element.text = element.userName;\r\n element.id = element.email;\r\n });\r\n }\r\n \r\n if (this.users.userType === \"tango\" && (this.type ==='installation')) {\r\n this.dataObject = [\r\n { Description: \"Store ID\", Issues: this.storeList },\r\n { Description: \"Deployed Status\", Issues: this.statusType },\r\n { Description: this.typeName, Issues: this.userList },\r\n ];\r\n } else if (this.users.userType === \"tango\" && this.type ==='infra') {\r\n this.dataObject = [\r\n { Description: \"Store ID\", Issues: this.storeList },\r\n { Description: \"Status\", Issues: this.statusType },\r\n { Description: this.typeName, Issues: this.userList },\r\n ];\r\n } else if(this.users.userType === \"tango\" && this.type ==='dataMismatch'){\r\n this.dataObject = [\r\n { Description: \"Store ID\", Issues: this.storeList },\r\n { Description: \"Query Type\", Issues: this.queryTypeList },\r\n { Description: \"Status\", Issues: this.statusType },\r\n ];\r\n } else if(this.type ==='mat'){\r\n this.dataObject = [\r\n { Description: \"Status\", Issues: this.statusType },\r\n ];\r\n } \r\n });\r\n }\r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n searchData() {\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit=10;\r\n this.getTable();\r\n }\r\n\r\n onSort(column: string) {\r\n if (this.sortedColumn === column) {\r\n this.sortDirection = this.sortDirection === 1 ? -1 : 1;\r\n } else {\r\n this.sortedColumn = column;\r\n this.sortDirection = 1;\r\n }\r\n this.getTable();\r\n }\r\n exportXLSX() {\r\n let obj: Record<string, any> = {\r\n clientId: this.headerFilters?.clients,\r\n fromDate: this.headerFilters?.date?.startDate,\r\n toDate: this.headerFilters?.date?.endDate,\r\n offset: this.offset,\r\n limit: this.limit,\r\n filterIssue: this.selectedTab ? this.selectedTab : \"\",\r\n searchValue: this.searchValue ? this.searchValue : \"\",\r\n export: true,\r\n };\r\n if (this.sortedColumn) {\r\n obj.sortColumName = this.sortedColumn;\r\n obj.sortBy = this.sortDirection;\r\n }\r\n if(this.type === \"installation\" || this.type === \"infra\"){\r\n if (this.filterByStores?.length) {\r\n obj.storeIdFilter = this.filterByStores ? this.filterByStores : [];\r\n } \r\n if (this.filterByStatus?.length) {\r\n obj.statusFilter = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n if (this.filterByinstalled?.length) {\r\n obj.userFilter = this.filterByinstalled ? this.filterByinstalled : [];\r\n }\r\n }else if(this.type ===\"mat\"){\r\n if (this.filterByStatus?.length) {\r\n obj.statusFilter = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n } else {\r\n if (this.filterByStores?.length) {\r\n obj.filterByStores = this.filterByStores ? this.filterByStores : [];\r\n } \r\n if (this.filterByStatus?.length) {\r\n obj.filterByStatus = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n if(this.filterByQueryType?.length){\r\n obj.filterByQueryType = this.filterByQueryType ? this.filterByQueryType : [];\r\n }\r\n }\r\n if (this.type === \"installation\") {\r\n this.service\r\n .exportInstallationList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n this.excelservice.saveAsExcelFile(res, 'Installation')\r\n\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n } else if (this.type === \"infra\") {\r\n this.service\r\n .exportInfraList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n \r\n this.excelservice.saveAsExcelFile(res, 'Infra')\r\n \r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n } else if (this.type === \"mat\") {\r\n this.service\r\n .exportMatList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n \r\n this.excelservice.saveAsExcelFile(res, 'Mat')\r\n \r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n }else if(this.type==='dataMismatch'){\r\n this.service\r\n .exportDataMismatchList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n this.excelservice.saveAsExcelFile(res, 'Data Mismatch')\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n }\r\n\r\n\r\n\r\n }\r\n\r\n selectedTabs(type: any) {\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit=10;\r\n if(this.type ==='dataMismatch'){\r\n this.selectedTab = type.name.replace(/\\s+/g, '').toLocaleLowerCase();\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit = 10;\r\n this.pageSize = 10;\r\n this.getTable();\r\n this.transformName(type);\r\n } else {\r\n this.selectedTab = type.name;\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit = 10;\r\n this.pageSize = 10;\r\n this.getTable();\r\n }\r\n }\r\n transformName(name: string): string {\r\n return name.toLocaleLowerCase().replace(/\\s+/g, '');\r\n \r\n }\r\n onPageChange(pageOffset: number) {\r\n this.currentPage = Number(pageOffset);\r\n this.offset = Number(pageOffset);\r\n this.limit =10;\r\n this.getTable();\r\n }\r\n\r\n onPageSizeChange(pageSize: number) {\r\n this.pageSize = Number(pageSize);\r\n this.limit = Number(pageSize);\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.getTable();\r\n }\r\n selectAllStore(event: any) {\r\n this.selectAll = event.target.checked;\r\n this.tableListArray.forEach((obj: any) => (obj.checked = this.selectAll));\r\n // If all checkboxes are checked, assign all ticketIds to assignStores, otherwise clear assignStores\r\n this.assignStores = this.selectAll\r\n ? this.tableListArray.map((obj: any) => obj.ticketId)\r\n : [];\r\n this.assignTicket = this.selectAll; // Update assignTicket based on selectAll state\r\n }\r\n\r\n updateCheck(event: any, ticketId: any) {\r\n const ticket = this.tableListArray.find(\r\n (obj: any) => obj.ticketId === ticketId\r\n );\r\n\r\n if (ticket) {\r\n ticket.checked = event.target.checked;\r\n // If the checkbox is checked, add or remove the corresponding array from the selected arrays\r\n if (event.target.checked) {\r\n this.assignStores.push(ticketId);\r\n } else {\r\n const index = this.assignStores.indexOf(ticketId);\r\n if (index !== -1) {\r\n this.assignStores.splice(index, 1);\r\n }\r\n }\r\n // Update selectAll based on the current state of checkboxes\r\n this.selectAll = this.tableListArray.every((obj: any) => obj.checked);\r\n // Update assignTicket based on whether any individual ticket checkbox is checked\r\n this.assignTicket = this.tableListArray.some((obj: any) => obj.checked);\r\n }\r\n }\r\n\r\n addAssignTicket() {\r\n const modalRef = this.modalService.open(AddCsmModalComponent, {\r\n centered: true,\r\n size: \"md\",\r\n scrollable: true,\r\n backdrop:\"static\"\r\n });\r\n modalRef.componentInstance.ticketId = this.assignStores;\r\n modalRef.result.then((result) => {\r\n if (result === \"submit\") {\r\n this.searchValue = \"\";\r\n this.assignStores = [];\r\n this.selectAll = false;\r\n this.assignTicket = false;\r\n this.getTable();\r\n }\r\n });\r\n }\r\n\r\n applyFilters(event: any) {\r\n if (event?.length) {\r\n event.forEach((element: any) => {\r\n if (element.Description === \"Store ID\") {\r\n this.filterByStores = element.Issues.map((val: any) => val?.id);\r\n }\r\n if(this.type !=='installation'){\r\n if (element.Description === \"Status\") {\r\n this.filterByStatus = element.Issues.map((val: any) => val?.id);\r\n }\r\n } if(this.type==='installation'){\r\n if (element.Description === \"Deployed Status\") {\r\n this.filterByStatus = element.Issues.map((val: any) => val?.id);\r\n }\r\n }\r\n if (this.users.userType === \"tango\" && (this.type ==='installation' || this.type==='infra')) {\r\n if (element.Description === this.typeName) {\r\n this.filterByinstalled = element.Issues.map((val: any) => val?.id);\r\n }\r\n } else {\r\n this.filterByinstalled = [];\r\n }\r\n if (element.Description === \"Query Type\") {\r\n this.filterByQueryType = element.Issues.map((val: any) => val?.id);\r\n }\r\n // if (element.Description === \"Issue Type\") {\r\n // this.issueType = element.Issues.map((val: any) => val?.id);\r\n // }\r\n });\r\n }\r\n\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit=10;\r\n this.getTable();\r\n }\r\n\r\n getTable() {\r\n this.loading = true;\r\n this.noData = false;\r\n let obj: Record<string, any> = {\r\n clientId: this.headerFilters?.clients,\r\n fromDate: this.headerFilters?.date?.startDate,\r\n toDate: this.headerFilters?.date?.endDate,\r\n offset: this.offset,\r\n limit: this.limit,\r\n filterIssue: this.selectedTab ? this.selectedTab : \"\",\r\n searchValue: this.searchValue ? this.searchValue : \"\",\r\n export: false,\r\n };\r\n if (this.sortedColumn) {\r\n if(this.type ==='dataMismatch'){\r\n obj.sortColumnName = this.sortedColumn;\r\n obj.sortBy = this.sortDirection;\r\n } else {\r\n obj.sortColumName = this.sortedColumn;\r\n obj.sortBy = this.sortDirection;\r\n }\r\n }\r\n if(this.type === \"installation\" || this.type === \"infra\"){\r\n if (this.filterByStores?.length) {\r\n obj.storeIdFilter = this.filterByStores ? this.filterByStores : [];\r\n } \r\n if (this.filterByStatus?.length) {\r\n obj.statusFilter = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n if (this.filterByinstalled?.length) {\r\n obj.userFilter = this.filterByinstalled ? this.filterByinstalled : [];\r\n }\r\n } else if(this.type === \"mat\"){\r\n if (this.filterByStatus?.length) {\r\n obj.statusFilter = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n } else {\r\n if (this.filterByStores?.length) {\r\n obj.filterByStores = this.filterByStores ? this.filterByStores : [];\r\n } \r\n if (this.filterByStatus?.length) {\r\n obj.filterByStatus = this.filterByStatus ? this.filterByStatus : [];\r\n }\r\n if(this.filterByQueryType?.length){\r\n obj.filterByQueryType = this.filterByQueryType ? this.filterByQueryType : [];\r\n }\r\n }\r\n // console.log(obj)\r\n // return\r\n if (this.type === \"installation\") {\r\n this.service\r\n .getInstallationList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.listArray = res.data.response;\r\n if(res.data.result.length ===0){\r\n this.loading = false;\r\n this.noData = true;\r\n } else {\r\n this.tableListArray = res.data.result;\r\n this.totalItems = res.data?.count;\r\n if (this.totalItems < 10) { this.paginationSizes = [this.totalItems] } else { this.paginationSizes = [10, 20, 30] }\r\n this.loading = false;\r\n this.noData = false;\r\n this.selectAll = false;\r\n this.assignTicket =false;\r\n this.cd.detectChanges();\r\n }\r\n } else {\r\n this.loading = false;\r\n this.noData = true;\r\n }\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n } else if (this.type === \"infra\") {\r\n this.service\r\n .getInfraList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.listArray = res.data.response;\r\n if(res.data.result.length ===0){\r\n this.loading = false;\r\n this.noData = true;\r\n } else {\r\n this.tableListArray = res.data.result;\r\n this.totalItems = res.data?.count;\r\n if (this.totalItems < 10) { this.paginationSizes = [this.totalItems] } else { this.paginationSizes = [10, 20, 30] }\r\n this.loading = false;\r\n this.noData = false;\r\n this.selectAll = false;\r\n this.assignTicket =false;\r\n }\r\n } else {\r\n this.loading = false;\r\n this.noData = true;\r\n }\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n } else if (this.type === \"mat\") {\r\n this.service\r\n .getMatList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.listArray = res?.data?.response;\r\n this.tableListArray = res?.data?.result;\r\n this.totalItems = res.data?.count;\r\n if (this.totalItems < 10) { this.paginationSizes = [this.totalItems] } else { this.paginationSizes = [10, 20, 30] } this.loading = false;\r\n this.noData = false;\r\n } else {\r\n this.loading = false;\r\n this.noData = true;\r\n }\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n }); } else if(this.type==='dataMismatch'){\r\n this.service\r\n .getDataMismathList(obj)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.listArray = res?.data?.response;\r\n if(res.data.result.length ===0){\r\n this.loading = false;\r\n this.noData = true;\r\n } else {\r\n this.tableListArray = res?.data?.result;\r\n this.totalItems = res.data?.count;\r\n if (this.totalItems < 10) { this.paginationSizes = [this.totalItems] } else { this.paginationSizes = [10, 20, 30] }\r\n this.loading = false;\r\n this.noData = false;\r\n this.selectAll = false;\r\n this.assignTicket =false;\r\n this.cd.detectChanges();\r\n }\r\n } else {\r\n this.loading = false;\r\n this.noData = true;\r\n }\r\n },\r\n error: (err: any) => {\r\n this.loading = false;\r\n this.noData = true;\r\n this.cd.detectChanges();\r\n },\r\n complete: () => {},\r\n });\r\n }\r\n }\r\n\r\n routeToStore(storeId: any, clientId: any) {\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores/infra-ticket'], { \r\n queryParams: { storeId: storeId }\r\n });\r\n }\r\n routeToMat(storeId: any, clientId: any,clientName:any) {\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n data.clientName = clientName ? clientName:'Stores';\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores/mat'], { \r\n queryParams: { storeId: storeId }\r\n });\r\n }\r\n commentModal(obj:any){\r\n const modalRef = this.modalService.open(CommentModelComponent, {\r\n centered: true,\r\n size: \"md\",\r\n scrollable: true,\r\n backdrop:\"static\"\r\n });\r\n modalRef.componentInstance.ticketId = obj.ticketId;\r\n modalRef.result.then((result) => {\r\n })\r\n }\r\n\r\n tickets(type:any,clientId:any,storeId:any,clientName:any){\r\n if(type ==='mat'){\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n data.clientName = clientName ? clientName:'Stores';\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores/mat'], { \r\n queryParams: { storeId: storeId }\r\n });\r\n } else {\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n data.clientName = clientName ? clientName:'Stores';\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores/infra-ticket'], { \r\n queryParams: { storeId: storeId,type:type }\r\n });\r\n}\r\n }\r\n\r\n clientTickets(clientId:any,storeId:any,clientName:any){\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n data.clientName = clientName ? clientName:'Stores';\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores']);\r\n }\r\n storeTickets(clientId:any,storeId:any,clientName:any){\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n data.clientName = clientName ? clientName:'Stores';\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/stores/cameras'], { \r\n queryParams: { storeId: storeId }\r\n });\r\n }\r\n userTickets(clientId:any,storeId:any){\r\n let data: any = JSON.parse(localStorage.getItem(\"header-filters\") || \"\");\r\n data.store = storeId;\r\n data.client = clientId;\r\n localStorage.setItem(\"header-filters\", JSON.stringify(data));\r\n this.gs.dataRangeValue.next(data);\r\n this.router.navigate(['/manage/users']);\r\n }\r\n\r\n setpageSize() {\r\n if (this.totalItems < 10) {\r\n return this.totalItems;\r\n } else {\r\n return this.pageSize;\r\n }\r\n }\r\n\r\n}\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 !=='dataMismatch' && type !== 'mat'\" class=\"card-label mb-2\">{{type | titlecase}}</span>\r\n <span *ngIf=\"type ==='dataMismatch'\" class=\"card-label mb-2\">Data Mismatch</span>\r\n <span *ngIf=\"type ==='mat'\" class=\"card-label mb-2\">Employee Mat</span>\r\n\r\n <!-- <span class=\"text-sub mb-2\">Last updated 1 hour ago</span> -->\r\n </h3>\r\n <div class=\"card-toolbar\">\r\n <div *ngIf=\"!assignTicket\" 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\" placeholder=\"Search\" autocomplete=\"off\"\r\n (change)=\"searchData()\" [(ngModel)]=\"searchValue\" />\r\n <lib-filters *ngIf=\"users.userType === 'tango' && userList?.length || users.userType === 'client' && storeList?.length\" [dataObject]=\"dataObject\"\r\n (appliedFilters)=\"applyFilters($event)\"></lib-filters>\r\n\r\n <button type=\"button\" *ngIf=\"!noData&&!loading\" (click)=\"exportXLSX()\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path\r\n 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\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2\">Export</span>\r\n </button>\r\n </div>\r\n </div>\r\n <div *ngIf=\"assignTicket\" class=\"d-flex\">\r\n <button type=\"button\" (click)=\"addAssignTicket()\"\r\n class=\"btn mx-2 btn-primary rounded-3 text-nowrap border-val\">\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=\"M9.99984 4.1665V15.8332M4.1665 9.99984H15.8332\" stroke=\"white\" stroke-width=\"1.67\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2 text-white\">Assign Ticket</span>\r\n </button>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body\">\r\n\r\n\r\n <ul *ngIf=\"!loading && listArray?.length && type !== 'mat' && type !== 'dataMismatch'\" class=\"nav nav-stretch nav-line-tabs1 nav-line-tabs border-transparent flex-nowrap horizontal-scroll\">\r\n <li class=\"nav-item\" *ngFor=\"let obj of listArray.slice().reverse()\" (click)=\"selectedTabs(obj)\">\r\n <a [ngClass]=\"{'active': selectedTab === obj.name}\" class=\"nav-link cursor-pointer no-border me-2\">\r\n {{obj.name | titlecase}} <span class=\"mx-2\"\r\n [ngClass]=\"selectedTab === obj.name ? 'text-border-priamry' : 'text-border'\">{{obj.count}}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n <ul *ngIf=\"!loading && listArray?.length && type === 'dataMismatch'\" class=\"nav nav-stretch nav-line-tabs1 nav-line-tabs border-transparent flex-nowrap horizontal-scroll\">\r\n <li class=\"nav-item\" *ngFor=\"let obj of listArray.slice().reverse()\" (click)=\"selectedTabs(obj)\">\r\n <a [ngClass]=\"selectedTab === transformName(obj.name) ? 'active' : ''\" class=\"nav-link cursor-pointer no-border me-2\">\r\n {{obj.name | titlecase}} <span class=\"mx-2\"\r\n [ngClass]=\"selectedTab === transformName(obj.name) ? 'text-border-priamry' : 'text-border'\">{{obj.count}}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n <div *ngIf=\"loading\" 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 </div>\r\n <div *ngIf=\"noData\" 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 <div *ngIf=\"!loading && !noData\" class=\"table-responsive mt-5\">\r\n <table class=\"table bottom-border text-nowrap \">\r\n <thead>\r\n <tr>\r\n <th class=\"cursor-pointer\" >\r\n \r\n <input *ngIf=\"this.users.userType ==='tango'\"\r\n class=\"form-check-input cursor-pointer me-4\" type=\"checkbox\" [(ngModel)]=\"selectAll\"\r\n (click)=\"selectAllStore($event)\"> <span class=\"cursor-pointer\" (click)=\"onSort('ticketId')\"> Ticket ID <svg\r\n [ngClass]=\"sortedColumn === 'ticketId' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'ticketId' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></span> \r\n </th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type !=='dataMismatch'\" (click)=\"onSort('issueDate')\"> Created Date\r\n <svg [ngClass]=\"sortedColumn === 'issueDate' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'issueDate' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type ==='infra'\" (click)=\"onSort('createdAt')\"> Created Time\r\n <svg [ngClass]=\"sortedColumn === 'createdAt' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'createdAt' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type ==='infra'\" (click)=\"onSort('issueClosedDate')\"> Closed Time\r\n <svg [ngClass]=\"sortedColumn === 'issueClosedDate' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'issueClosedDate' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('createdAt')\"> Created Date\r\n <svg [ngClass]=\"sortedColumn === 'createdAt' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'createdAt' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" ><span (click)=\"onSort('issueDate')\">Issue Date\r\n <svg [ngClass]=\"sortedColumn === 'issueDate' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'issueDate' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></span>\r\n </th>\r\n <th class=\"cursor-pointer\" *ngIf=\"(gs.userAccess | async)?.userType === 'tango'\" class=\"cursor-pointer\" (click)=\"onSort('clientName')\">Brand Name<svg\r\n [ngClass]=\"sortedColumn === 'clientName' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'clientName' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"(gs.userAccess | async)?.userType === 'tango'\" class=\"cursor-pointer\" (click)=\"onSort('clientId')\">Brand ID<svg\r\n [ngClass]=\"sortedColumn === 'clientId' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'clientId' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('storeName')\">Store Name<svg\r\n [ngClass]=\"sortedColumn === 'storeName' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'storeName' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('storeId')\">Store ID<svg\r\n [ngClass]=\"sortedColumn === 'storeId' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'storeId' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"this.users.userType ==='tango' && (type ==='infra'||type ==='dataMismatch'||type ==='mat')\" (click)=\"onSort('userName')\">Resolved By<svg [ngClass]=\"sortedColumn === 'userName' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'userName' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" *ngIf=\"this.users.userType ==='tango' && type ==='installation'\" (click)=\"onSort('userName')\">Installed By<svg [ngClass]=\"sortedColumn === 'userName' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'userName' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('issueType')\">Issue Type\r\n <svg [ngClass]=\"sortedColumn === 'issueType' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'issueType' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('type')\">Query Type\r\n <svg [ngClass]=\"sortedColumn === 'type' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'type' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('reportedFootfall')\">Reported Footfall\r\n <svg [ngClass]=\"sortedColumn === 'reportedFootfall' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'reportedFootfall' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('mappedCount')\">Unique Images\r\n <svg [ngClass]=\"sortedColumn === 'mappedCount' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'mappedCount' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th *ngIf=\"type ==='dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('successPercentage')\">Success Percentage\r\n <svg [ngClass]=\"sortedColumn === 'successPercentage' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'successPercentage' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th class=\"cursor-pointer\" *ngIf=\"type ==='installation'\" (click)=\"onSort('status')\">Deployed Status<svg\r\n [ngClass]=\"sortedColumn === 'status' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'status' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th *ngIf=\"type ==='dataMismatch' ||type ==='mat'|| type ==='infra'\" class=\"cursor-pointer\" (click)=\"onSort('status')\">Status<svg\r\n [ngClass]=\"sortedColumn === 'status' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'status' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n<!-- added config and total downtime as per the prioduct team requirement -->\r\n <th>Configured Ticket Time\r\n </th> \r\n\r\n <th >Total Downtime\r\n </th>\r\n<!-- -->\r\n\r\n <th *ngIf=\"type !== 'mat' && type !== 'dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('primaryIssue')\">Primary Issues<svg\r\n [ngClass]=\"sortedColumn === 'primaryIssue' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'primaryIssue' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th *ngIf=\"type !== 'mat' && type !== 'dataMismatch'\" class=\"cursor-pointer\" (click)=\"onSort('secondaryIssue')\">Secondary Issues<svg\r\n [ngClass]=\"sortedColumn === 'secondaryIssue' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'secondaryIssue' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th *ngIf=\"type!=='installation'\">Actions</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let obj of tableListArray\">\r\n <td>\r\n <input *ngIf=\"this.users.userType ==='tango'\" class=\"form-check-input cursor-pointer me-4 mt-3\" type=\"checkbox\" [(ngModel)]=\"obj.checked\"\r\n (change)=\"updateCheck($event,obj?.ticketId)\">\r\n <span *ngIf=\"type === 'dataMismatch' || type === 'mat' || type === 'infra'\"\r\n class=\"txt-light-primary cursor-pointer\" (click)=\"tickets(type,obj.clientId,obj.storeId,obj.clientName)\">\r\n {{obj.ticketId}}\r\n </span>\r\n <span *ngIf=\"type === 'installation'\">\r\n {{obj.ticketId}}\r\n </span>\r\n </td>\r\n <td *ngIf=\"type === 'dataMismatch'\">\r\n {{obj?.createdAt |\r\n date: 'dd MMM, yyyy'}}</td>\r\n <td *ngIf=\"type === 'dataMismatch'\">\r\n {{obj?.issueDate |\r\n date: 'dd MMM, yyyy'}}</td>\r\n <td *ngIf=\"type !== 'dataMismatch'\">\r\n {{obj?.createdAt |\r\n date: 'dd MMM, yyyy'}}\r\n </td>\r\n <td *ngIf=\"type === 'infra'\">\r\n {{obj?.createdAt |\r\n date: 'hh:mm a' | uppercase}}\r\n </td>\r\n <td *ngIf=\"type === 'infra'\">\r\n {{obj?.issueClosedDate?(obj?.issueClosedDate |\r\n date: 'hh:mm a' | uppercase):\"--\"}}\r\n </td>\r\n <td *ngIf=\"this.users.userType ==='tango'\">\r\n <div class=\"table-title cursor-pointer\" (click)=\"clientTickets(obj.clientId,obj.storeId,obj.clientName)\">\r\n <span class=\"txt-light-primary\">\r\n {{obj.clientName}}\r\n </span>\r\n </div>\r\n </td>\r\n <td *ngIf=\"this.users.userType ==='tango'\">{{obj.clientId}}\r\n </td>\r\n <td>\r\n <div class=\"table-title cursor-pointer\" (click)=\"storeTickets(obj.clientId,obj.storeId,obj.clientName)\">\r\n <span class=\"txt-light-primary\">\r\n {{obj.storeName}}\r\n </span>\r\n </div>\r\n </td>\r\n <td>{{obj.storeId}}\r\n </td>\r\n \r\n <td *ngIf=\"this.users.userType ==='tango'\">\r\n <div class=\"table-title cursor-pointer\" >\r\n <span >\r\n {{obj.userName}}\r\n </span>\r\n </div>\r\n </td>\r\n <td *ngIf=\"type ==='dataMismatch' && obj.issueType ==='lowcount'\" >Low Count</td>\r\n <td *ngIf=\"type ==='dataMismatch' && obj.issueType ==='highcount'\">High Count</td>\r\n <td class=\"text-capitalize\" *ngIf=\"type ==='dataMismatch'\">{{obj?.type ? obj?.type:'--'}}</td>\r\n <td class=\"text-capitalize\" *ngIf=\"type ==='dataMismatch'\">{{obj?.reportedFootfall ? obj?.reportedFootfall:'--'}}</td>\r\n <td class=\"text-capitalize\" *ngIf=\"type ==='dataMismatch'\">{{obj?.mappedCount ? obj?.mappedCount:'--'}}</td>\r\n <td class=\"text-capitalize\" *ngIf=\"type ==='dataMismatch'\">{{obj?.successPercentage ? obj?.successPercentage:'--'}}</td>\r\n <td *ngIf=\"type==='installation'\">\r\n <span *ngIf=\"obj.installationStatus ==='paired' || obj.installationStatus ==='onboarded'\"\r\n class=\"badge badge-light-primary mx-4\">{{obj.installationStatus | titlecase}}</span>\r\n <span *ngIf=\"obj.installationStatus ==='live'\" class=\"badge badge-light-success mx-4\">Live</span>\r\n <span *ngIf=\"obj.installationStatus ==='installationfailed'\"\r\n class=\"badge badge-light-warning mx-4\">Installationfailed</span>\r\n <span *ngIf=\"obj.installationStatus ==='deployed'\"\r\n class=\"badge badge-light-success mx-4 text-capitalize\">deployed</span>\r\n </td>\r\n <td *ngIf=\"type==='infra' || type==='mat' || type==='dataMismatch'\">\r\n <span *ngIf=\"obj.status ==='open'\" class=\"badge badge-light-danger\">Open</span>\r\n <span *ngIf=\"obj.status ==='closed'\" class=\"badge badge-light-success\">Closed</span>\r\n <span *ngIf=\"obj.status ==='inprogress'\" class=\"badge badge-light-primary\">In\r\n Progress</span>\r\n </td>\r\n <td *ngIf=\"type==='infra'\">\r\n{{obj.configuredDownTime?obj.configuredDownTime*60:0 || 0 }} {{obj.configuredDownTime > 1? 'mins' : 'min'}} \r\n </td>\r\n <td *ngIf=\"type==='infra'\"> \r\n{{obj.totalDownTime || 0 }} {{obj.totalDownTime > 1? 'mins' : 'min'}} \r\n </td>\r\n <td *ngIf=\"type==='installation' || type==='infra'\">\r\n <div>\r\n <span *ngIf=\"obj.primaryIssue !=='-'\">{{obj.primaryIssue ? obj.primaryIssue :'Issue not identified'}}</span>\r\n <span *ngIf=\"obj.primaryIssue ==='-'\">Issue not identified</span>\r\n </div>\r\n </td>\r\n <td *ngIf=\"type==='installation' || type==='infra'\">\r\n <span *ngIf=\"obj.secondaryIssue\">{{obj.secondaryIssue}}</span>\r\n </td>\r\n <td *ngIf=\"type==='infra' || type ==='dataMismatch'\">\r\n <span class=\"mx-2 cursor-pointer\" *ngIf=\"this.users.userType ==='tango'\" (click)=\"commentModal(obj)\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <path\r\n d=\"M17.6431 12.5C17.6431 12.942 17.4675 13.366 17.1549 13.6785C16.8423 13.9911 16.4184 14.1667 15.9764 14.1667H5.9764L2.64307 17.5V4.16667C2.64307 3.72464 2.81866 3.30072 3.13122 2.98816C3.44378 2.67559 3.86771 2.5 4.30973 2.5H15.9764C16.4184 2.5 16.8423 2.67559 17.1549 2.98816C17.4675 3.30072 17.6431 3.72464 17.6431 4.16667V12.5Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></span>\r\n <span class=\"mx-2 cursor-pointer\" (click)=\"tickets(type,obj.clientId,obj.storeId,obj.clientName)\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_10640_18061)\">\r\n <path\r\n d=\"M0.976562 10C0.976562 10 4.3099 3.33337 10.1432 3.33337C15.9766 3.33337 19.3099 10 19.3099 10C19.3099 10 15.9766 16.6667 10.1432 16.6667C4.3099 16.6667 0.976562 10 0.976562 10Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M10.1432 12.5C11.5239 12.5 12.6432 11.3808 12.6432 10C12.6432 8.61933 11.5239 7.50004 10.1432 7.50004C8.76252 7.50004 7.64323 8.61933 7.64323 10C7.64323 11.3808 8.76252 12.5 10.1432 12.5Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_10640_18061\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" transform=\"translate(0.143066)\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span>\r\n </td>\r\n <td *ngIf=\"type === 'mat'\">\r\n <span class=\"mx-2 cursor-pointer\" (click)=\"routeToMat(obj.storeId,obj.clientId,obj.clientName)\"><svg\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"21\" height=\"20\" viewBox=\"0 0 21 20\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_10640_18061)\">\r\n <path\r\n d=\"M0.976562 10C0.976562 10 4.3099 3.33337 10.1432 3.33337C15.9766 3.33337 19.3099 10 19.3099 10C19.3099 10 15.9766 16.6667 10.1432 16.6667C4.3099 16.6667 0.976562 10 0.976562 10Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M10.1432 12.5C11.5239 12.5 12.6432 11.3808 12.6432 10C12.6432 8.61933 11.5239 7.50004 10.1432 7.50004C8.76252 7.50004 7.64323 8.61933 7.64323 10C7.64323 11.3808 8.76252 12.5 10.1432 12.5Z\"\r\n stroke=\"#667085\" stroke-width=\"1.66667\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_10640_18061\">\r\n <rect width=\"20\" height=\"20\" fill=\"white\" transform=\"translate(0.143066)\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span> \r\n \r\n </td>\r\n \r\n \r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n <div *ngIf=\"!loading && !noData\" class=\"my-3\">\r\n <lib-pagination [itemsPerPage]=\"pageSize\" [currentPage]=\"currentPage\" [totalItems]=\"totalItems\"\r\n [paginationSizes]=\"paginationSizes\" [pageSize]=\"setpageSize()\" (pageChange)=\"onPageChange($event)\"\r\n (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div>\r\n </div>\r\n</div>","import { Component,HostListener, OnDestroy, OnInit,Input } from '@angular/core';\r\nimport { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { takeUntil, Subject } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'lib-retrigger',\r\n templateUrl: './re-trigger.component.html',\r\n styleUrl: './re-trigger.component.scss'\r\n})\r\nexport class ReTriggerComponent implements OnInit,OnDestroy {\r\n\r\n dropDown: boolean = false;\r\n loading:boolean = true;\r\n noData:boolean = false;\r\n dropdownItems:any[] = [];\r\n selectedItem: any = 'Audit';\r\n selectedData:any = 'To Queue';\r\n standardData:any = ['To Queue','To User']\r\n Comment:any = '';\r\n userId:any = '';\r\n private readonly destroy$ = new Subject();\r\n @Input() reTrigerData:any;\r\n userList: any = [];\r\n\r\n constructor(public activeModal:NgbActiveModal,private service:TicketService){\r\n\r\n }\r\n\r\n @HostListener('document:click', ['$event'])\r\n onClick(event: MouseEvent) {\r\n const\r\n target = event.target as HTMLElement;\r\n if (!target.closest('.dropDown')) {\r\n this.dropDown = false;\r\n }\r\n }\r\n\r\nngOnInit(){\r\n if(this.reTrigerData?.data?.auditType ==='ReAudit'){\r\n this.dropdownItems = ['Audit','ReAudit']\r\n }else if(this.reTrigerData?.data?.auditType ==='Audit'){\r\n this.dropdownItems = ['Audit']\r\n }\r\n this.getuserList();\r\n}\r\n\r\ngetuserList(){\r\n this.service.getuserList().subscribe({\r\n next:(res:any)=>{\r\n if(res && res.code === 200) {\r\n this.userList = res?.data?.result;\r\n }\r\n },\r\n })\r\n}\r\n\r\nngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n}\r\n\r\nselectRadio(value:any){\r\n this.selectedData = value;\r\n}\r\n\r\nopenDropdown(event: MouseEvent) {\r\n event.stopPropagation();\r\n this.dropDown = !this.dropDown;\r\n}\r\n\r\nselectItem(value: any) {\r\n this.selectedItem = value;\r\n this.dropDown = false;\r\n}\r\n\r\nonReportSelect(event:any){\r\n this.userId = event;\r\n}\r\n\r\ncloseModal(){\r\n let data:any = {\r\n fileDate: this.reTrigerData?.data?.fileDate,\r\n storeId: this.reTrigerData?.data?.storeId,\r\n auditType: this.selectedItem,\r\n zoneName : this.reTrigerData?.data?.zoneName,\r\n triggerType: this.selectedData === 'To Queue' ? 'queue' : 'user',\r\n totalCount: this.selectedItem ==='Audit' ? this.reTrigerData?.data?.beforeCount : this.reTrigerData?.data?.afterCount,\r\n comments: this.Comment,\r\n moduleType : this.reTrigerData?.data?.moduleType\r\n }\r\n this.selectedData === 'To User' ? data.userId = this.userId.userId : ''\r\n this.activeModal.close(data);\r\n}\r\n\r\n}\r\n","<div class=\"card\">\r\n \r\n <div class=\"card-header border-0\">\r\n <div class=\"card-title d-grid\">\r\n <div class=\"card-title\">Re-trigger File</div>\r\n <div class=\"text-sub\">Re-trigger the file to a queue or other users</div>\r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <div class=\"\">\r\n <label class=\"label\">Push Form</label>\r\n <div class=\"position-relative w-100 mt-3 mb-5\">\r\n <button type=\"button\" (click)=\"openDropdown($event)\"\r\n class=\"btn btn-default w-100 btn-outline btn-outline-default rounded-3 text-nowrap border-val d-flex justify-content-between\">\r\n {{selectedItem}}\r\n <span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\"\r\n viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M5 7.5L10 12.5L15 7.5\" stroke=\"#667085\" stroke-width=\"1.66667\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></span>\r\n </button>\r\n <div *ngIf=\"dropDown\" class=\"card py-1 w-100 position-absolute top-50px end-0\">\r\n <ul *ngFor=\"let item of dropdownItems\" class=\"list-unstyled\">\r\n <li [ngClass]=\"selectedItem === item ? 'active' : ''\"\r\n class=\"camera px-5 items fw-semibold cursor-pointer py-2\"\r\n (click)=\"selectItem(item)\">{{item}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"mt-5 cursor-pointer d-flex mb-5\">\r\n <div *ngFor=\"let data of standardData\" (click)=\"selectRadio(data)\" class=\"d-flex align-items-center me-20\">\r\n <input [checked]=\"selectedData === data\" type=\"radio\" class=\"radio\">\r\n <span class=\"ms-3 standard\">{{data}}</span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"selectedData === 'To User'\" class=\"w-100 mb-5\">\r\n <label for=\"infraDownTime\" class=\"label mb-3\">Select User<span class=\"alert-required\"></span></label>\r\n <lib-select [items]=\"userList\" [multi]=\"false\" [searchField]=\"'userName'\" [idField]=\"'userId'\"\r\n (selected)=\"onReportSelect($event)\" [selectedValues]=\"[userId]\"></lib-select>\r\n </div>\r\n <div>\r\n <label class=\"label mb-3\">Comments</label>\r\n <textarea class=\"form-control\" [(ngModel)]=\"Comment\"></textarea>\r\n </div>\r\n <div class=\"d-flex mt-5\">\r\n <button class=\"btn btn-outline w-100 me-2\" (click)=\"activeModal.dismiss()\">Cancel</button>\r\n <button *ngIf=\"selectedData === 'To User'\" class=\"btn btn-primary w-100 ms-2\" [disabled]=\"!userId || !Comment\" (click)=\"closeModal()\">Submit</button>\r\n <button *ngIf=\"selectedData === 'To Queue'\" class=\"btn btn-primary w-100 ms-2\" [disabled]=\"!Comment\" (click)=\"closeModal()\">Submit</button>\r\n </div>\r\n </div>\r\n</div>","import { ChangeDetectorRef, Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { ToastService } from 'tango-app-ui-shared';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { Subject, takeUntil } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'lib-count',\r\n templateUrl: './count.component.html',\r\n styleUrl: './count.component.scss'\r\n})\r\nexport class CountComponent implements OnInit,OnDestroy {\r\n\r\n private readonly destroy$ = new Subject();\r\n @Input() data:any;\r\n loading:any = true;\r\n noData:any=false;\r\n auditImages:any;\r\n \r\n constructor(private Service:TicketService,private toast:ToastService,private excel : ExcelService,private cd: ChangeDetectorRef){}\r\n ngOnInit(){\r\n this.getAuditImages();\r\n }\r\n \r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n \r\n getAuditImages(){\r\n let params:any = {\r\n fileDate: this.data?.fileDate,\r\n storeId:this.data?.storeId,\r\n imageType:this.data?.imageType,\r\n export : false,\r\n moduleType : this.data?.selectedType,\r\n zoneName: this.data?.zoneName\r\n }\r\n this.Service.getAuditImages(params).pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any)=>{\r\n if(res && res?.code === 200){\r\n this.auditImages = res?.data?.result;\r\n this.loading = false;\r\n this.noData = false;\r\n }else{\r\n this.noData = true;\r\n this.loading = false;\r\n }\r\n this.cd.detectChanges();\r\n },\r\n error:(err:any)=>{\r\n this.noData = true;\r\n this.loading = false;\r\n },\r\n })\r\n \r\n }\r\n \r\n exportTable(){\r\n let params:any = {\r\n fileDate: this.data?.fileDate,\r\n storeId:this.data?.storeId,\r\n imageType:this.data?.imageType,\r\n export : true,\r\n moduleType: this.data?.selectedType,\r\n zoneName: this.data?.zoneName\r\n }\r\n let type = this.data?.type === 'before' ? 'BeforeCount' : 'AfterCount'\r\n this.Service.ExportAuditImagesasxlsx(params).pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any)=>{\r\n if(res){\r\n this.excel.saveAsZipFile(res,type)\r\n }\r\n },\r\n error:(err:any)=>{\r\n this.toast.getErrorToast(err?.error)\r\n },\r\n })\r\n \r\n }\r\n \r\n}\r\n","<div class=\"card\">\r\n <div class=\"card-header\">\r\n <div class=\"card-title d-grid\">\r\n <div *ngIf=\"data?.type\" class=\"card-label\">{{data?.type | titlecase}} Count - {{data?.storeId}}</div>\r\n <div class=\"text-sub\">{{data?.fileDate | customDateFormat}}</div>\r\n </div>\r\n <div class=\"card-toolbar\">\r\n <button *ngIf=\"!noData\" type=\"button\" (click)=\"exportTable()\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\"><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>\r\n <span class=\"ms-2\">Export</span> </button>\r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <div class=\"row mx-3\">\r\n <div class=\"col-md-12 item scroll-y\">\r\n <div class=\"item\" *ngFor=\"let images of auditImages;let i=index\" style=\"padding: 10px;\">\r\n <img class=\"mx-3 my-3 img\" [src]=\"images?.imgPath\">\r\n <div class=\"text-center m-0 fs-7 fw-bold\">{{images?.imgName}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <ng-container *ngIf=\"loading\">\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 </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"noData\">\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 w-25\" 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\r\n","import { Component, OnDestroy, OnInit, ViewChild } from '@angular/core';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\nimport { Subject, takeUntil } from 'rxjs';\r\nimport { GlobalStateService } from 'tango-app-ui-global';\r\nimport dayjs from \"dayjs\";\r\nimport \"dayjs/locale/en\";\r\nimport utc from \"dayjs/plugin/utc\";\r\nimport timezone from \"dayjs/plugin/timezone\";\r\nimport { ReTriggerComponent } from '../re-trigger/re-trigger.component';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { ToastService } from 'tango-app-ui-shared';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { CountComponent } from '../count/count.component';\r\n\r\n\r\n@Component({\r\n selector: 'lib-audit-metrics',\r\n templateUrl: './audit-metrics.component.html',\r\n styleUrl: './audit-metrics.component.scss'\r\n})\r\nexport class AuditMetricsComponent implements OnInit,OnDestroy {\r\n noData:boolean = false;\r\n loading:boolean = true;\r\n\r\n storesData:any = [];\r\n activity:any = [\r\n {type:'Audit',FileDate:'28-11-2023',Time:'03:24 pm',beforeCout:'300',AfterCount:'100'},\r\n {type:'Re-Audit',FileDate:'28-10-2023',Time:'03:24 pm',beforeCout:'350',AfterCount:'120'},\r\n {type:'Audit',FileDate:'28-11-2023',Time:'03:24 pm',beforeCout:'300',AfterCount:'100'}\r\n ]\r\n @ViewChild('activitylog') activitylog:any;\r\n private readonly destroy$ = new Subject();\r\n headerFilter: any;\r\n sortColumName: any = '';\r\n sortBy: any = 1;\r\n filterByClient: any = [];\r\n filterByStatus: any = [];\r\n pagination: any = [10, 20, 30];\r\n searchTerm: any;\r\n limit:any = 10;\r\n offset:any = 1;\r\n selectedValue: string;\r\n dayjs = dayjs;\r\n filterByStore: any = [];\r\n totalCount: any; \r\n selectedTab:any = '';\r\n\r\n dataObject:any = [\r\n { Description: 'Module Type',type:'single', Issues: [{id:'traffic', text: \"Traffic\"},{id:'zone', text: \"Zone\" }]},\r\n { Description: 'Clients', Issues: [] },\r\n { Description: 'Status', Issues: [{id:'closed', text: \"Completed\" }, {id:'inprogress', text: \"Inprogress\" },{id:'drafted', text: \"Draft\" },{id:'assigned', text: \"Assigned\" },{id:'not_assign', text: \"Not Assigened\" },{id:'skipped', text: \"Skip\"},] }\r\n ];\r\n \r\n clientList: any;\r\n selectedType: any = 'traffic';\r\n\r\n constructor(private gs:GlobalStateService,private modalService:NgbModal,private service: TicketService,private toast:ToastService,private excel:ExcelService){\r\n \r\n }\r\n\r\n ngOnInit(){\r\n this.gs.dataRangeValue.pipe(takeUntil(this.destroy$)).subscribe((data: any) => {\r\n if(data!=null){\r\n this.headerFilter = data\r\n this.metricsList();\r\n }\r\n })\r\n }\r\n\r\n metricsList(){\r\n let data:any = {\r\n fromDate: this.dayjs(this.headerFilter?.date?.startDate).format('YYYY-MM-DD'),\r\n toDate: this.dayjs(this.headerFilter?.date?.endDate).format('YYYY-MM-DD'),\r\n filterByClientId : this.filterByClient,\r\n filterByStoreId : this.filterByStore,\r\n filterByStatus : this.filterByStatus,\r\n filterByAuditType : this.selectedTab ===''? [] : [this.selectedTab],\r\n filterByModuleType: [this.selectedType],\r\n searchValue: this.searchTerm,\r\n sortBy: this.sortBy,\r\n limit: this.limit,\r\n offset: this.offset,\r\n isExport: false\r\n };\r\n if(this.sortColumName){data.sortColumnName = this.sortColumName}else if(this.searchTerm){data.searchValue = this.searchTerm}\r\n this.getclientList();\r\n this.service.getstoreMetrics(data).pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any) => {\r\n if(res && res?.code === 200){\r\n this.storesData = res?.data?.result;\r\n this.totalCount = res?.data?.count;\r\n if(!this.storesData?.length){\r\n this.noData = true;\r\n }\r\n if(this.totalCount < 10){\r\n this.pagination = [this.totalCount]\r\n }else{\r\n this.pagination = [10, 20, 30]\r\n }\r\n this.loading = false;\r\n this.noData = false;\r\n }else{\r\n this.noData = true;\r\n this.loading = false;\r\n }\r\n },\r\n error:(err:any)=>{\r\n this.noData = true;\r\n this.loading = false;\r\n this.toast.getErrorToast(err?.message)\r\n }\r\n })\r\n}\r\n\r\nsetItemsperPage(){\r\n if(this.totalCount < 10){\r\n return this.totalCount;\r\n }else{\r\n return this.limit;\r\n }\r\n}\r\n\r\ngetclientList(){\r\n this.service.getclientList().pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any) => {\r\n if(res && res?.code ===200){\r\n this.clientList = res?.data?.result;\r\n const issues = this.clientList.map((obj: any) => ({ text: obj.clientName,id:obj.clientId }));\r\n const uniqueIssues:any[] = [];\r\n const Clients = new Set();\r\n issues.forEach((issue:any) => {\r\n if (!Clients.has(issue.text)) {\r\n Clients.add(issue.text);\r\n uniqueIssues.push(issue);\r\n }\r\n });\r\n const filtredObject = (this.dataObject.find((obj: any) => obj.Description === \"Clients\"))\r\n filtredObject.Issues = uniqueIssues;\r\n }\r\n },\r\n error:(err:any) => {\r\n \r\n },\r\n})\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n\r\n receiveData(data:any) {\r\n this.filterByClient = data.find((obj:any) => obj.Description === \"Clients\")?.Issues.map((item: any) => item?.id);\r\n this.filterByStatus = data.find((obj:any) => obj.Description === \"Status\")?.Issues?.map((item: any) => item?.id);\r\n this.selectedType = data.find((obj:any) => obj.Description ==='Module Type')?.Issues?.id;\r\n this.metricsList();\r\n }\r\n\r\n onPageChange(pageOffset: any) {\r\n this.pagination.offset = pageOffset;\r\n this.metricsList();\r\n }\r\n \r\n onPageSizeChange(pageSize: any) {\r\n this.pagination.limit = pageSize;\r\n this.pagination.offset = 1;\r\n this.metricsList();\r\n }\r\n\r\n exportXLSX(){\r\n let data:any = {\r\n fromDate: this.dayjs(this.headerFilter?.date?.startDate).format('YYYY-MM-DD'),\r\n toDate: this.dayjs(this.headerFilter?.date?.endDate).format('YYYY-MM-DD'),\r\n filterByClientId : this.filterByClient,\r\n filterByStoreId : this.filterByStore,\r\n filterByStatus : this.filterByStatus,\r\n filterByAuditType : this.selectedTab ===''? [] : [this.selectedTab],\r\n filterByModuleType: [this.selectedType],\r\n searchValue: this.searchTerm,\r\n sortBy: this.sortBy,\r\n limit: 10000,\r\n offset: this.offset,\r\n isExport: true\r\n };\r\n if(this.sortColumName){data.sortColumnName = this.sortColumName}else if(this.searchTerm){data.searchValue = this.searchTerm}\r\n this.service.getstoreMetricsExport(data).pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any) => {\r\n if(res){\r\n this.excel.saveAsExcelFile(res,'AuditMetrics')\r\n }\r\n },\r\n error:(err:any)=>{\r\n this.toast.getErrorToast(err?.message)\r\n }\r\n })\r\n }\r\n\r\n selectedTabs(data:any){\r\n if(data === 'all'){\r\n this.selectedTab = '';\r\n }else{\r\n this.selectedTab = data;\r\n }\r\n this.limit = 10;\r\n this.offset = 1;\r\n this.metricsList();\r\n }\r\n\r\n searchData(){\r\n this.searchTerm = this.searchTerm;\r\n this.metricsList();\r\n }\r\n\r\n openBeforecount(value:any) {\r\n const modalRef = this.modalService.open(CountComponent,{\r\n centered:true,\r\n size:'xl'\r\n })\r\n modalRef.componentInstance.data ={\r\n type : 'before',\r\n fileDate:value?.fileDate,\r\n storeId: value?.storeId,\r\n selectedType: this.selectedType,\r\n zoneName:value?.zoneName,\r\n imageType: 'BC'\r\n }\r\n}\r\nopenAftercount(value:any){\r\n const modalRef = this.modalService.open(CountComponent,{\r\n centered:true,\r\n size:'xl'\r\n })\r\nmodalRef.componentInstance.data ={\r\n type : 'after',\r\n fileDate:value?.fileDate,\r\n storeId: value?.storeId,\r\n selectedType: this.selectedType,\r\n zoneName:value?.zoneName,\r\n imageType: 'AC'\r\n}\r\n}\r\n\r\nopenView(){\r\n const modalRef = this.modalService.open(this.activitylog)\r\n}\r\n\r\nopenreTrigger(value:any){\r\n const modalRef = this.modalService.open(ReTriggerComponent,{\r\n centered:true,\r\n // size:''\r\n })\r\n modalRef.componentInstance.reTrigerData ={\r\n type : 'after',\r\n data: value,\r\n selectedType : this.selectedType\r\n }\r\n modalRef.closed.subscribe((res: any) => {\r\n if (res) {\r\n this.service.auditretrigger(res).pipe(takeUntil(this.destroy$)).subscribe({\r\n next:(res:any)=>{\r\n if(res && res.code === 200){\r\n this.toast.getSuccessToast(res?.data?.result);\r\n this.metricsList();\r\n } \r\n },\r\n error:(err:any)=> {\r\n this.toast.getErrorToast(err?.message)\r\n }\r\n })\r\n }\r\n } )\r\n}\r\n\r\nstatusBadge(value:any){\r\n let AccountStatus = value;\r\n if(AccountStatus === 'closed'){\r\n return 'badge-light-success'\r\n }else if(AccountStatus === 'assigned' || AccountStatus === 'not Assigned'){\r\n return 'badge-light-warning'\r\n }else{\r\n return 'badge-light-primary'\r\n }\r\n}\r\n\r\nsortData(value:any){\r\n this.sortColumName = value\r\n this.sortBy *= -1;\r\n this.metricsList();\r\n}\r\n\r\n\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 class=\"card-label mb-2\">Audit Metrics</span>\r\n <!-- <span class=\"text-sub mb-2\">Last updated 1 hour ago</span> -->\r\n </h3>\r\n <div 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\" placeholder=\"Search\" autocomplete=\"off\"\r\n (change)=\"searchData()\" [(ngModel)]=\"searchTerm\" />\r\n \r\n <lib-filters *ngIf=\"clientList\" [dataObject]=\"dataObject\" (appliedFilters)=\"receiveData($event)\"></lib-filters>\r\n\r\n <button type=\"button\" *ngIf=\"!noData&&!loading\" (click)=\"exportXLSX()\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path\r\n 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\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2\">Export</span>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <ul class=\"nav nav-stretch nav-line-tabs1 nav-line-tabs border-transparent flex-nowrap horizontal-scroll\">\r\n <li class=\"nav-item\" (click)=\"selectedTabs('all')\">\r\n <a [ngClass]=\"selectedTab === '' ? 'active' : ''\" class=\"nav-link cursor-pointer no-border me-2\">\r\n All <span class=\"mx-2\"\r\n [ngClass]=\"selectedTab === '' ? 'text-border-priamry' : 'text-border'\">{{totalCount?.totalauditCount ? totalCount?.totalauditCount : 0}}</span>\r\n </a>\r\n </li>\r\n <li class=\"nav-item\" (click)=\"selectedTabs('Audit')\">\r\n <a [ngClass]=\"selectedTab === 'Audit' ? 'active' :''\" class=\"nav-link cursor-pointer no-border me-2\">\r\n Audit <span class=\"mx-2\"\r\n [ngClass]=\"selectedTab === 'Audit' ? 'text-border-priamry' : 'text-border'\">{{totalCount?.auditCount ? totalCount?.auditCount : 0}}</span>\r\n </a>\r\n </li>\r\n <li class=\"nav-item\" (click)=\"selectedTabs('ReAudit')\">\r\n <a [ngClass]=\"selectedTab === 'ReAudit' ? 'active' : ''\" class=\"nav-link cursor-pointer no-border me-2\">\r\n Re Audit <span class=\"mx-2\"\r\n [ngClass]=\"selectedTab === 'ReAudit' ? 'text-border-priamry' : 'text-border'\">{{totalCount?.reauditCount ? totalCount?.reauditCount : 0}}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n <div *ngIf=\"!loading && !noData\" class=\"mt-5\">\r\n <div class=\"table-responsive\">\r\n <table class=\"table bottom-border text-nowrap\">\r\n <thead>\r\n <tr>\r\n <th>File Date</th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('storeName')\">\r\n Store Name\r\n <span\r\n *ngIf=\"sortColumName === 'storeName' && sortBy !== 1 || sortColumName !== 'storeName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'storeName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('storeId')\">\r\n Store Id\r\n <span\r\n *ngIf=\"sortColumName === 'storeId' && sortBy !== 1 || sortColumName !== 'storeId'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"/>\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'storeId' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('userName')\">\r\n User Name\r\n <span\r\n *ngIf=\"sortColumName === 'userName' && sortBy !== 1 || sortColumName !== 'userName'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'userName' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\"/>\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('userEmail')\">\r\n User Email\r\n <span\r\n *ngIf=\"sortColumName === 'userEmail' && sortBy !== 1 || sortColumName !== 'userEmail'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'userEmail' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th>BC</th>\r\n <th>AC</th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('accuracy')\">\r\n Accuracy\r\n <span\r\n *ngIf=\"sortColumName === 'accuracy' && sortBy !== 1 || sortColumName !== 'accuracy'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'accuracy' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th><div class=\"cursor-pointer\" (click)=\"sortData('timeSpent')\">\r\n TimeSpent\r\n <span\r\n *ngIf=\"sortColumName === 'timeSpent' && sortBy !== 1 || sortColumName !== 'timeSpent'\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <span\r\n *ngIf=\"sortColumName === 'timeSpent' && sortBy !== -1\">\r\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\"\r\n fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <path\r\n 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\"\r\n stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n \r\n </div></th>\r\n <th>Audit Type</th>\r\n <th>Status</th>\r\n <th><span>Actions</span></th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let item of storesData\">\r\n <td>\r\n <div>{{ item?.fileDate ? item?.fileDate :'NA' }}</div>\r\n </td>\r\n <td>\r\n <div>{{ item?.storeName ? item?.storeName :'NA' }}</div>\r\n </td>\r\n <td>\r\n <div>{{item?.storeId ? item?.storeId : 'NA'}}</div>\r\n </td>\r\n <td>\r\n <div>{{ item?.userName ? item?.userName :'NA' }}</div>\r\n </td>\r\n <td>\r\n <div>{{ item?.userEmail ? item?.userEmail :'NA' }}</div>\r\n </td>\r\n <td>\r\n <div class=\"d-flex align-items-center\">\r\n <div [ngClass]=\"item?.beforeCount ? 'text-decoration-underline':''\" class=\"text-title text-primary cursor-pointer mb-1\" (click)=\"openBeforecount(item)\">\r\n {{ item?.beforeCount ?? '--' }}</div>\r\n </div>\r\n </td>\r\n <td>\r\n <div class=\"d-flex align-items-center\">\r\n <div [ngClass]=\"item?.afterCount ? 'text-decoration-underline':''\" class=\"text-title text-primary cursor-pointer mb-1\" (click)=\"openAftercount(item)\">\r\n {{ item?.afterCount ?? '--' }}</div>\r\n </div>\r\n </td>\r\n <td>\r\n <div>{{ item?.accuracy ?? '--' }}</div>\r\n </td>\r\n <td>{{ item?.timeSpent ? item?.timeSpent :'NA'}}</td>\r\n <td><span *ngIf=\"item?.auditType\" [ngClass]=\"item?.auditType === 'Audit' ? 'badge-light-success':'badge-light-warning'\" class=\"badge\">{{ item?.auditType }}</span></td>\r\n <td><span *ngIf=\"item?.status\" [ngClass]=\"statusBadge(item?.status)\" class=\"badge\">{{ item?.status | titlecase}}</span></td>\r\n <td><button class=\"btn btn-default btn-outline\" (click)=\"openView()\">View-Log</button>\r\n <button class=\"btn btn-default btn-outline ms-3\" [disabled]=\"item?.status === 'not_assign' || item?.status === 'assigned'\" (click)=\"openreTrigger(item)\">Re-Trigger</button></td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!loading && !noData\" class=\"my-3\">\r\n <lib-pagination [itemsPerPage]=\"limit\" [currentPage]=\"offset\" [totalItems]=\"totalCount\"\r\n [paginationSizes]=\"pagination\" [pageSize]=\"setItemsperPage()\" (pageChange)=\"onPageChange($event)\"\r\n (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div>\r\n\r\n <div *ngIf=\"loading\" 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 </div>\r\n <div *ngIf=\"noData\" 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 w-25\" src=\"./assets/tango/Icons/Nodata.svg\" alt=\"\">\r\n </div>\r\n </div>\r\n </div> \r\n\r\n </div>\r\n</div>\r\n\r\n<ng-template #activitylog let-modal>\r\n <div class=\"card\">\r\n <div class=\"card-header\">\r\n <div class=\"card-title\">\r\n <span class=\"card-label\">Activity Log</span>\r\n </div>\r\n <div class=\"card-toolbar\">\r\n <div class=\"cursor-pointer\" (click)=\"modal.dismiss()\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path d=\"M15 5L5 15M5 5L15 15\" stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg></div> \r\n </div>\r\n </div>\r\n <div class=\"card-body\">\r\n <div *ngFor=\"let log of activity\" class=\"d-flex mb-5 ms-5\">\r\n <div\r\n class=\"d-flex flex-column justify-content-center align-items-center pe-3\">\r\n <div class=\"d-flex align-items-centre justify-content-centre\">\r\n <!-- <img class=\"msgprofile\"\r\n src=\"./assets/tango/Images/userProfile.svg\"> -->\r\n <div class=\"symbol symbol-35px symbol-circle\">\r\n <span [ngClass]=\"log?.type === 'Audit' ? 'badge-light-success' : 'badge-light-primary'\" class=\"symbol-label badge-light-primary text-symbol\">\r\n <span [ngClass]=\"log?.type === 'Audit' ? 'text-success badge badge-light-success' : 'text-primary badge badge-light-primary'\" class=\"fs-4 fw-normal\">\r\n {{log?.type?.slice(0,1) | uppercase }}\r\n </span>\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"p-0 h-100 mt-1 border border-1 border-gray\" style=\"width:0px\"></div>\r\n </div>\r\n <div class=\"py-3 pt-0\">\r\n <div class=\"activity-title fw-semibold mt-2 d-flex mb-4\">\r\n <span>{{log?.type}} </span><span class=\"ms-5 list\"><li>Fasila</li></span>\r\n </div>\r\n <div class=\"date-time mb-4\">\r\n {{log?.FileDate}} | {{log?.Time}}\r\n </div>\r\n <div class=\"\"><span class=\"badge badge-light-default fw-semibold\">Before Count : {{log?.beforeCout}}</span>\r\n <span class=\"badge badge-light-default fw-semibold ms-3\">After Count : {{log?.AfterCount}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>","import { ChangeDetectorRef, Component, EventEmitter, HostListener, Input, OnInit, Output, Provider, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\nimport { TicketService } from '../../services/ticket.service';\r\n\r\nconst SELECT_CONTROL_VALUE_ACCESSOR: Provider = {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: forwardRef(() => ReactiveSelectComponent),\r\n multi: true,\r\n};\r\n\r\n@Component({\r\n selector: 'lib-reactive-select',\r\n templateUrl: './reactive-select.component.html',\r\n styleUrl: './reactive-select.component.scss',\r\n providers: [SELECT_CONTROL_VALUE_ACCESSOR]\r\n})\r\nexport class ReactiveSelectComponent implements ControlValueAccessor, OnInit {\r\n\r\n private onTouched: Function;\r\n private onChanged: Function;\r\n @Input() isDisabled: boolean;\r\n @Input() idField: string\r\n @Input() nameField: string\r\n @Input() label: string\r\n @Input() data: any\r\n @Output() itemChange = new EventEmitter()\r\n protected isOpened: boolean = false\r\n protected selected: Record<string, any> | null = null\r\n protected selectedId: string | number\r\n instanceId: string;\r\n\r\n\r\n constructor(private apiService: TicketService, private cd: ChangeDetectorRef) {\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n this.instanceId = crypto.randomUUID();\r\n this.apiService.dropDownTrigger.subscribe((e) => {\r\n if (e !== this.instanceId) {\r\n this.isOpened = false\r\n this.cd.detectChanges()\r\n }\r\n })\r\n }\r\n\r\n\r\n writeValue(val: string | number): void {\r\n this.selectedId = val\r\n this.selected = this.data.filter((item: Record<string, any>) => item?.[this.idField] === val)[0]\r\n \r\n }\r\n registerOnChange(fn: any): void {\r\n this.onChanged = fn\r\n \r\n }\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn\r\n }\r\n setDisabledState?(isDisabled: boolean): void {\r\n this.isDisabled = isDisabled\r\n\r\n }\r\n\r\n onSelect(item: Record<string, any>) {\r\n this.onTouched()\r\n this.selected = item\r\n this.selectedId = item?.[this.idField]\r\n this.isOpened = false\r\n this.itemChange.next(this.selectedId)\r\n this.onChanged(this.selectedId)\r\n }\r\n\r\n @HostListener('document:click', ['$event'])\r\n onClick(event: MouseEvent) {\r\n // console.log(this.isDisabled)\r\n if (!this.isDisabled) {\r\n const targetElement = event.target as HTMLElement;\r\n if (!this.isComponentClicked(targetElement)) {\r\n this.isOpened = false;\r\n }\r\n }\r\n }\r\n\r\n isComponentClicked(targetElement: HTMLElement): boolean {\r\n const parentElement = targetElement.parentElement;\r\n if (parentElement) {\r\n const clickedOnComponent = parentElement.classList.contains('custom-select');\r\n if (clickedOnComponent) {\r\n return true;\r\n } else {\r\n return this.isComponentClicked(parentElement);\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n openDropdown(){\r\n this.isOpened = !this.isOpened;\r\n this.apiService.dropDownTrigger.next(this.instanceId)\r\n }\r\n\r\n\r\n}\r\n","<div class=\"custom-select\">\r\n <div class=\"form-group\">\r\n <label *ngIf=\"label\" class=\"form-label\">{{label}}</label>\r\n <div class=\"position-relative\">\r\n <div (click)=\"openDropdown()\" [ngClass]=\"isDisabled ? 'disable' : ''\" class=\"form-select dropselect ellipse1\">\r\n {{selected?.[nameField]}}</div>\r\n <div *ngIf=\"isOpened\" class=\"card py-2 w-100 position-absolute end-0 z-1 drop-list\">\r\n <ul class=\"list-unstyled mb-2\">\r\n <li *ngFor=\"let item of data\" (click)=\"onSelect(item)\"\r\n [ngClass]=\"item?.[idField] === selected?.[idField] ? 'active' : ''\"\r\n class=\"text px-5 items cursor-pointer py-4 \">\r\n {{item?.[nameField]}}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n</div>","import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, HostListener, Input, OnChanges, OnInit, Output, SimpleChanges } from '@angular/core';\r\nimport { TicketService } from '../../services/ticket.service';\r\n@Component({\r\n selector: 'lib-group-select',\r\n templateUrl: './group-select.component.html',\r\n styleUrl: './group-select.component.scss'\r\n})\r\nexport class GroupSelectComponent implements OnInit, OnChanges {\r\n @HostListener('document:click', ['$event'])\r\n onClick(event: MouseEvent) {\r\n const target = event.target as HTMLElement;\r\n if (!target.closest('.dropdown')) {\r\n this.showDropdown = false;\r\n }\r\n }\r\n \r\n @Input() items: any\r\n @Input() searchField: string\r\n @Input() multi: boolean\r\n @Input() idField: string\r\n @Input() selectedValues: any = []\r\n @Input() disabled: boolean | undefined\r\n @Input() label: string\r\n @Output() selected = new EventEmitter<any>()\r\n filteredValues: any = []\r\n showDropdown: boolean\r\n searchValue: string\r\n instanceId: any;\r\n \r\n \r\n constructor(private cd: ChangeDetectorRef, private authService:TicketService) { }\r\n ngOnInit(): void {\r\n this.instanceId = crypto.randomUUID();\r\n this.authService.dropDownTrigger.subscribe((e)=>{ \r\n if(e !== this.instanceId){ \r\n this.showDropdown = false\r\n this.cd.detectChanges()\r\n }\r\n })\r\n }\r\n \r\n ngOnChanges(changes: SimpleChanges): void {\r\n \r\n if (changes['items'] && this.items?.length) {\r\n this.initializeItems();\r\n }\r\n if (changes['selectedValues'] && Array.isArray(changes['selectedValues']?.currentValue) && changes['selectedValues']?.currentValue?.length > 0 && changes['selectedValues']?.currentValue[0]) { \r\n this.updateSelectedValues();\r\n }\r\n }\r\n \r\n initializeItems() {\r\n this.filteredValues = this.items.map((item: any) => ({ ...item }));\r\n this.updateSelectedValues()\r\n }\r\n \r\n updateSelectedValues() { \r\n this.selectedValues?.forEach((selectedItem: any) => {\r\n const item = this.filteredValues?.find((filteredItem: any) => filteredItem?.[this.idField] === selectedItem?.[this.idField]);\r\n if (item) {\r\n item.isSelected = true;\r\n }\r\n });\r\n \r\n }\r\n \r\n openDropdown(event: any) {\r\n this.authService.dropDownTrigger.next(this.instanceId)\r\n event.stopPropagation();\r\n this.showDropdown = !this.showDropdown;\r\n }\r\n \r\n onInput(event: any) {\r\n if (!event.target.value) {\r\n this.filteredValues = [...this.items];\r\n } else {\r\n const searchTerm = event.target.value.toLowerCase();\r\n this.filteredValues = this.items.filter((item: any) =>\r\n item[this.searchField].toLowerCase().includes(searchTerm)\r\n );\r\n }\r\n this.updateSelectedValues();\r\n this.cd.detectChanges();\r\n }\r\n \r\n onSelect(event: any, item: any) { \r\n if (this.multi) {\r\n if (event.currentTarget.checked) {\r\n this.selectedValues.push(item ); \r\n } else {\r\n this.selectedValues = this.selectedValues.filter((elem: any) => elem[this.idField] !== item[this.idField]);\r\n }\r\n } else {\r\n this.selectedValues = [{ ...item }];\r\n this.filteredValues.forEach((element:any) => {\r\n if(element[this.idField] !== item[this.idField]){\r\n element.isSelected = false\r\n }\r\n });\r\n this.showDropdown = false;\r\n }\r\n \r\n const valuesToEmit = this.selectedValues.map((value: any) => {\r\n const selectedItem = { ...value };\r\n delete selectedItem.isSelected;\r\n return selectedItem;\r\n });\r\n \r\n this.cd.detectChanges();\r\n this.emitSelectedValues(valuesToEmit);\r\n \r\n }\r\n \r\n onSelectAll(event: any) {\r\n const selectAll = event.currentTarget.checked;\r\n this.filteredValues.forEach((item: any) => item.isSelected = selectAll);\r\n \r\n if (selectAll) {\r\n this.selectedValues = [...this.filteredValues];\r\n } else {\r\n this.selectedValues = [];\r\n }\r\n \r\n const valuesToEmit = this.selectedValues.map((value: any) => {\r\n const { isSelected, ...selectedItem } = value;\r\n return selectedItem;\r\n });\r\n \r\n this.cd.detectChanges();\r\n this.emitSelectedValues(valuesToEmit);\r\n }\r\n \r\n \r\n emitSelectedValues(values: any[]) {\r\n if (this.multi) {\r\n this.selected.emit(values);\r\n } else {\r\n this.selected.emit(values[0]);\r\n }\r\n }\r\n \r\n checkIfAllSelected() {\r\n return this.filteredValues.every((item: any) => item.isSelected);\r\n }\r\n}\r\n","<div class=\"outer-container\">\r\n <div [ngClass]=\"disabled ? 'disable-input':''\" (click)=\"openDropdown($event)\" class=\"form-select\">\r\n <ng-container *ngIf=\"multi\" >\r\n <span *ngIf=\"selectedValues?.length\" class=\"select-value mx-2\"> <img class=\"me-2\" alt=\"Pic\" src=\"./assets/tango/Image/users-teams.svg\">{{selectedValues?.[0]?.[searchField]}}</span> \r\n <!-- <span *ngIf=\"selectedValues?.length > 1\" class=\"select-value mx-2\"><img class=\"me-2\" alt=\"Pic\" src=\"./assets/tango/Image/users-teams.svg\">{{selectedValues?.[1]?.[searchField]}}</span> -->\r\n <span class=\"select-value mx-2\" *ngIf=\"selectedValues?.length > 1\">+{{selectedValues?.length -1}}</span> {{label}} \r\n </ng-container>\r\n <ng-container *ngIf=\"!multi\" >\r\n {{selectedValues?.[0]?.[searchField]}}\r\n </ng-container>\r\n </div>\r\n <div [ngClass]=\"showDropdown ? '' : 'd-none'\" class=\"input-container dropdown\" >\r\n <div class=\"w-100 input-wrapper\">\r\n <input [(ngModel)]=\"searchValue\" placeholder=\"Search\" (input)=\"onInput($event)\" type=\"text\"> \r\n <svg class=\"search-icon\" xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"17\" viewBox=\"0 0 16 17\" fill=\"none\">\r\n <path d=\"M14 14.5L11.1 11.6M12.6667 7.83333C12.6667 10.7789 10.2789 13.1667 7.33333 13.1667C4.38781 13.1667 2 10.7789 2 7.83333C2 4.88781 4.38781 2.5 7.33333 2.5C10.2789 2.5 12.6667 4.88781 12.6667 7.83333Z\" stroke=\"#667085\" stroke-width=\"1.3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n </svg> \r\n </div>\r\n <ul>\r\n <li *ngIf=\"multi && filteredValues?.length\">\r\n <label class=\"form-check\" [for]=\"instanceId\" >\r\n <input (change)=\"onSelectAll($event)\" [checked]=\"checkIfAllSelected()\" class=\"form-check-input me-3\" type=\"checkbox\"\r\n [id]=\"instanceId\">\r\n <span class=\"form-check-label\" >\r\n Select All\r\n </span>\r\n </label>\r\n </li>\r\n <li *ngFor=\"let item of filteredValues\" [ngClass]=\"item.isSelected && !multi ? 'selected' : ''\" >\r\n <label [for]=\"item[idField] + instanceId\" [ngClass]=\"multi ? '': 'ps-0'\" class=\"form-check\">\r\n <input [ngClass]=\"multi ? '': 'd-none'\" (change)=\"onSelect($event, item)\" [(ngModel)]=\"item.isSelected\" class=\"form-check-input me-3\" type=\"checkbox\" value=\"\"\r\n [id]=\"item[idField] + instanceId\">\r\n <span class=\"form-check-label\" >\r\n {{item[searchField]}}\r\n </span>\r\n </label>\r\n </li>\r\n <li *ngIf=\"!filteredValues?.length\" >\r\n <span class=\"d-flex align-items-center justify-content-center\" >No data found</span>\r\n </li>\r\n </ul> \r\n </div> \r\n \r\n</div>","import { ChangeDetectorRef, Component, OnDestroy, OnInit,ElementRef,ViewChild } from '@angular/core';\r\nimport { Subject, takeUntil } from 'rxjs';\r\nimport { GlobalStateService } from 'tango-app-ui-global';\r\nimport { TicketService } from '../../services/ticket.service';\r\nimport { ToastService } from 'tango-app-ui-shared';\r\nimport { ExcelService } from '../../services/excel.service';\r\nimport { FormBuilder, FormControl } from '@angular/forms';\r\nimport { NgbModal } from '@ng-bootstrap/ng-bootstrap';\r\n\r\n@Component({\r\n selector: \"lib-footfall-dic\",\r\n templateUrl: \"./footfall-dic.component.html\",\r\n styleUrl: \"./footfall-dic.component.scss\",\r\n})\r\nexport class FootfallDicComponent implements OnInit,OnDestroy {\r\n searchValue: any;\r\n loading: boolean = false;\r\n noData: boolean = false;\r\n sortedColumn: any='';\r\n sortDirection: any=1;\r\n\r\n footfallView:boolean = true;\r\n headerFilters: any;\r\n footfallList_req: any;\r\n form: any;\r\n selectedRevopsType: FormControl;\r\n revopsTypeArray: any = [\r\n { value: \"\", label: \"All\" },\r\n { value: \"duplicateImages\", label: \"Duplicates\" },\r\n { value: \"employee\", label: \"Employee/Staff\" },\r\n { value: \"houseKeeping\", label: \"House Keeping\" },\r\n ];\r\n type: any = [\r\n { value: \"open\", label: \"Open\" },\r\n { value: \"closed\", label: \"Closed\" },\r\n ];\r\n // selectedStatus: FormControl;\r\n\r\n pendingArray: any = [\r\n // { value: \"\", label: \"All\" },\r\n { value: \"pending\", label: \"Pending\" },\r\n { value: \"approved\", label: \"Approved\" },\r\n { value: \"rejected\", label: \"Rejected\" },\r\n ];\r\n actionStatus: FormControl;\r\n filterForm:any;\r\n\r\n ticketData: any = {\r\n ticketName: \"Footfall Directory\",\r\n ticketId: \"TE_INF_F5645G4534A24\",\r\n storeName: \"LKST98 | RK Salai, Mylapore, Chennai, Tamil Nadu, India\",\r\n status: \"Open\",\r\n date: \"04 Sep 2023\",\r\n footfall: {\r\n total: 100,\r\n duplicates: 10,\r\n employee: 2,\r\n houseKeeping: 1,\r\n },\r\n duplicates: [\r\n { url: \"assets/img1.jpg\" },\r\n { url: \"assets/img2.jpg\" },\r\n { url: \"assets/img3.jpg\" },\r\n ],\r\n };\r\n selectedStores: any[] = []; \r\nallSelected: boolean = false;\r\nstores: any[] = []; \r\n private readonly destroy$ = new Subject();\r\n\r\n constructor(\r\n private gs: GlobalStateService,\r\n private ticketService: TicketService,\r\n private cd: ChangeDetectorRef,\r\n private toast: ToastService,private modalService: NgbModal,\r\n private excelservice: ExcelService,private fb: FormBuilder,\r\n ) {}\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\n ngOnInit(): void {\r\n this.footfallView = true;\r\n\r\n this.selectedRevopsType = new FormControl('');\r\n this.filterForm = this.fb.group({\r\n selectedStatus: new FormControl('open'),\r\n actionStatus: new FormControl('pending'),\r\n ClusterList: new FormControl([]),\r\n });\r\n\r\n this.form = this.fb.group({\r\n selectedRevopsType: this.selectedRevopsType,\r\n });\r\n this.gs.dataRangeValue?.pipe(takeUntil(this.destroy$))?.subscribe({\r\n next: (data: any) => {\r\n if (data) {\r\n this.headerFilters = data;\r\n this.footfallList_req = {\r\n client: this.headerFilters.clients.toString(),\r\n fromDate: this.headerFilters?.date?.startDate,\r\n toDate: this.headerFilters?.date?.endDate,\r\n };\r\n this.getTicketSummary();\r\n this.getTicketList();\r\n this.getAllGroups();\r\n \r\n }\r\n },\r\n });\r\n }\r\n getFootfallSummaryData: any;\r\n getTicketSummary() {\r\n this.ticketService\r\n .getTicketSummaryApi(\r\n this.footfallList_req.client,\r\n this.footfallList_req.fromDate,\r\n this.footfallList_req.toDate\r\n )\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res?.data && res?.data?.result) {\r\n this.getFootfallSummaryData = res?.data?.result;\r\n } else {\r\n this.getFootfallSummaryData = [];\r\n }\r\n },\r\n error: (err: any) => {\r\n this.getFootfallSummaryData = [];\r\n },\r\n complete: () => {\r\n this.getFootfallSummaryData.length === 0;\r\n },\r\n });\r\n this.cd.detectChanges();\r\n }\r\n offset = 0;\r\n limit = 10;\r\n isExport:any = false;\r\n footfallListData:any;\r\n totalItems:any;\r\n paginationSizes = [10, 20, 30];\r\n getTicketList(){\r\n this.loading = true;\r\n this.searchValue = this.searchValue?.trim() || '';\r\n this.offset = this.offset || 1;\r\n this.limit = this.limit || 10;\r\n this.isExport = false;\r\n this.ticketService\r\n .getTicketListApi(\r\n this.footfallList_req.client,\r\n this.footfallList_req.fromDate,\r\n this.footfallList_req.toDate,\r\n this.searchValue,this.limit,\r\n this.offset,this.isExport,this.sortedColumn,this.sortDirection\r\n )\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.noData = false;\r\n this.loading = false;\r\n this.footfallListData = res?.data?.result;\r\n \r\n this.totalItems = res?.data?.count;\r\n if (this.totalItems < 10) { this.paginationSizes = [this.totalItems] } else { this.paginationSizes = [10, 20, 30] }\r\n } else {\r\n this.noData = true;\r\n this.loading = false;\r\n this.footfallListData =[];\r\n \r\n }\r\n this.cd.detectChanges();\r\n },\r\n error: (err: any) => {\r\n this.noData = true;\r\n this.loading = false;\r\n },\r\n complete: () => {\r\n this.loading = false;\r\n },\r\n });\r\n }\r\n\r\ncurrentPage:any = 1;\r\npageSize:any = 10;\r\n onPageChange(pageOffset: number) {\r\n this.currentPage = Number(pageOffset);\r\n this.offset = Number(pageOffset);\r\n this.limit =10;\r\n this.getTicketList();\r\n }\r\n\r\n onPageSizeChange(pageSize: number) {\r\n this.pageSize = Number(pageSize);\r\n this.limit = Number(pageSize);\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.getTicketList();\r\n }\r\n\r\n setpageSize() {\r\n if (this.totalItems < 10) {\r\n return this.totalItems;\r\n } else {\r\n return this.pageSize;\r\n }\r\n }\r\n searchData() {\r\n this.currentPage = 1;\r\n this.offset = 1;\r\n this.limit=10;\r\n this.getTicketList();\r\n }\r\n\r\n exportXLSX() {\r\n this.searchValue = this.searchValue?.trim() || '';\r\n this.offset = 1;\r\n this.limit = 10000;\r\n this.isExport = true;\r\n this.ticketService\r\n .getTicketListExportApi(\r\n this.footfallList_req.client,\r\n this.footfallList_req.fromDate,\r\n this.footfallList_req.toDate,\r\n this.searchValue,this.limit,\r\n this.offset,this.isExport,this.sortedColumn,this.sortDirection\r\n )\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n this.excelservice.saveAsExcelFile(res, 'footfall directory ticket ')\r\n },\r\n error: (err: any) => {\r\n this.toast.getErrorToast('Error exporting data:' + err.error ? err.error : err.message);\r\n }\r\n })\r\n }\r\n\r\n onSort(column: string) {\r\n if (this.sortedColumn === column) {\r\n this.sortDirection = this.sortDirection === 1 ? -1 : 1;\r\n } else {\r\n this.sortedColumn = column;\r\n this.sortDirection = 1;\r\n }\r\n this.getTicketList();\r\n }\r\n storeCount:any;\r\n\r\n searchStoresData(){\r\nthis.getStores();\r\n }\r\n\r\n StoresSearchValue:any='';\r\n getStores(){\r\n this.ticketService.getTaggedStoresApi(\r\n this.footfallList_req.client,\r\n this.footfallList_req.fromDate,\r\n this.footfallList_req.toDate,\r\n this.StoresSearchValue,\r\n this.groups,\r\n ).pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.stores = res?.data?.result;\r\n this.storeCount = res.data?.count || 0;\r\n } else {\r\n this.stores = [];\r\n this.storeCount =0;\r\n }\r\n this.cd.detectChanges();\r\n },\r\n error: (err: any) => {\r\n this.stores =[];\r\n this.storeCount =0;\r\n },\r\n complete: () => {},\r\n }); \r\n }\r\ngetTaggedStoresData: any;\r\n\r\n\r\ntypeChange(event: any) {\r\n this.filterForm.get('selectedStatus')?.setValue(event || null);\r\n}\r\n\r\npendingChange(event: any) {\r\n this.filterForm.get('actionStatus')?.setValue(event || null);\r\n}\r\n\r\nRevopsTypeChange(event: any) {\r\n const selectedType = event ?? '';\r\n this.footfalloffset =1;\r\n if( selectedType === '') \r\nthis.footfalllimit = 1;\r\n else\r\n this.footfalllimit = 250;\r\n this.form.get('selectedRevopsType')?.setValue(selectedType);\r\nthis.allSelectValue =false;\r\n // Clear selected lists\r\n this.selectedEmployeeImagesList = [];\r\n this.selectedHousekeepingImagesList = [];\r\n this.selectedDuplicateImagesList = [];\r\nthis.cd.detectChanges();\r\n // Reset counts\r\n this.employeeACCount = '';\r\n this.houseKeepingACCount = '';\r\n this.duplicateACCount = '';\r\n this.dataStoreView(); \r\n}\r\n\r\n\r\n\r\n footfalloffset=1;\r\n footfalllimit=1;\r\nfootfallTicketsData:any=[];\r\nstoreIdValue:any;\r\n \r\n\r\ndataReset(){\r\n this.selectedStores = [];\r\n this.allSelected = false;\r\n this.form.get('selectedRevopsType')?.setValue('');\r\n this.filterForm.get('selectedStatus')?.setValue('open');\r\n this.filterForm.get('actionStatus')?.setValue('pending');\r\n this.dataStoreView();\r\n}\r\ndataApply() {\r\n if(this.selectedRevopsType.value === '') \r\nthis.footfalllimit = 1;\r\n else\r\n this.footfalllimit = 250;\r\n this.allSelectValue =false\r\n this.dataStoreView();\r\n}\r\nimageUrl:any;\r\ndataIndexId:any;\r\ndateString:any;\r\n footfallNoData = false;\r\n footfallLoading = true;\r\n private lastSelectedTicket: any = null;\r\n\r\nhasInitialStoreSynced = false;\r\n\r\naddStoreIfNotExists(store: any) {\r\n if (this.hasInitialStoreSynced) return;\r\n\r\n const storeId = store?.storeId;\r\n if (storeId && !this.selectedStores.includes(storeId)) {\r\n this.selectedStores.push(storeId);\r\n }\r\n\r\n this.hasInitialStoreSynced = true;\r\n this.allSelected = this.selectedStores.length === this.stores.length;\r\n}\r\nselecteValues:any;\r\ndataStoreView(data?: any) {\r\n this.footfallTicketsData = [];\r\n this.footfallNoData = false;\r\n this.footfallLoading = true;\r\n const ticket = data?._source ? data : this.lastSelectedTicket;\r\n\r\n if (!ticket || !ticket._source) {\r\n this.footfallLoading = false;\r\n this.footfallNoData = true;\r\n this.toast.getErrorToast('No ticket data available');\r\n return;\r\n }\r\n\r\n this.lastSelectedTicket = ticket;\r\nthis.addStoreIfNotExists(ticket._source);\r\n this.dataIndexId = ticket._id || '';\r\n this.dateString = ticket._source.dateString || '';\r\n this.imageUrl = this.ticketService?.footfallCDN;\r\n this.storeIdValue = this.selectedStores; \r\n const revopsType = this.form.get('selectedRevopsType')?.value;\r\n const selectedStatus = this.filterForm.get('selectedStatus')?.value;\r\n const actionStatus = this.selecteValues = this.filterForm.get('actionStatus')?.value;\r\n\r\n const storeId = this.storeIdValue;\r\n const fromDate = this.footfallList_req.fromDate;\r\n const toDate = this.footfallList_req.toDate;\r\n const offset = this.footfalloffset;\r\n const limit = revopsType ==='' ? this.footfalllimit :this.footfalllimit = 250;\r\n\r\n this.ticketService\r\n .getTicketsApi(storeId, fromDate, toDate, revopsType, selectedStatus, actionStatus, offset, limit)\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if(res && res.code ===200){\r\n if (res?.data?.result?.length === 0) {\r\n this.footfallTicketsData = [];\r\n this.footfallView = true;\r\n this.footfallNoData = true;\r\n this.footfallLoading = false;\r\n this.toast.getErrorToast('No data found for the selected filters');\r\n } else {\r\n this.footfallTicketsData = res?.data?.result ?? [];\r\n this.totalItemsFootfall = res?.data?.count;\r\n\r\n this.paginationSizes = this.totalItemsFootfall < 1\r\n ? [this.totalItemsFootfall]\r\n : [1];\r\n\r\n this.footfallView = false;\r\n this.footfallNoData = false;\r\n this.footfallLoading = false;\r\n }\r\n } else {\r\n this.footfallTicketsData = [];\r\n this.footfallView = false;\r\n this.footfallNoData = true;\r\n this.footfallLoading = false;\r\n }\r\n },\r\n error: () => {\r\n this.footfallTicketsData = [];\r\n this.footfallView = false;\r\n this.footfallNoData = true;\r\n this.footfallLoading = false;\r\n },\r\n complete: () => {\r\n this.cd.detectChanges();\r\n },\r\n });\r\n}\r\n\r\nisCollapsed = false;\r\n\r\ntoggleSidebar() {\r\n this.isCollapsed = !this.isCollapsed;\r\n}\r\n matchedType: any;\r\n\r\n matchedArray: any = [{ value: \"all\", label: \"matched: All\" }];\r\n onFilterApply() {\r\n if(this.selectedRevopsType.value === '') \r\nthis.footfalllimit = 1;\r\n else\r\n this.footfalllimit = 250;\r\n this.dataStoreView();\r\n\r\n }\r\npageSizeFootfall:any = 1;\r\nfootfallcurrentPage:any = 1;\r\n onFootfallPageChange(pageOffset: number) {\r\n this.footfallcurrentPage = Number(pageOffset);\r\n this.footfalloffset = Number(pageOffset);\r\n this.footfalllimit =1;\r\n this.dataStoreView();\r\n }\r\n\r\n onFootfallPageSizeChange(pageSize: number) {\r\n this.footfalllimit = Number(pageSize);\r\n this.pageSizeFootfall = Number(pageSize);\r\n this.footfallcurrentPage = 1;\r\n this.footfalloffset = 1;\r\n this.dataStoreView();\r\n }\r\ntotalItemsFootfall:any;\r\n setFootfallpageSize() {\r\n if (this.totalItemsFootfall < 1) {\r\n return this.totalItemsFootfall;\r\n } else {\r\n return this.pageSizeFootfall;\r\n }\r\n }\r\n\r\n\r\n\r\ntoggleStoreSelection(store: any) {\r\n const storeId = store?.storeId;\r\n if (!storeId) return;\r\n\r\n const index = this.selectedStores.indexOf(storeId);\r\n\r\n if (index > -1) {\r\n this.selectedStores.splice(index, 1);\r\n } else {\r\n this.selectedStores.push(storeId);\r\n }\r\n\r\n this.allSelected = this.selectedStores.length === this.stores.length;\r\n}\r\n\r\n\r\ntoggleSelectAll() {\r\n const visibleStoreIds = this.filteredStores.map((s) => s.storeId);\r\n\r\n if (this.allSelected) {\r\n // Remove only the visible ones\r\n this.selectedStores = this.selectedStores.filter(\r\n id => !visibleStoreIds.includes(id)\r\n );\r\n } else {\r\n // Add only those that are not already selected\r\n const newIds = visibleStoreIds.filter(id => !this.selectedStores.includes(id)\r\n );\r\n this.selectedStores = [...this.selectedStores, ...newIds];\r\n }\r\n\r\n this.allSelected = this.selectedStores.length === this.stores.length;\r\n}\r\n\r\n\r\nisSelected(store: any): boolean {\r\n return this.selectedStores.includes(store.storeId);\r\n}\r\n\r\n\r\n imgtoggleSelectAll() {\r\n this.allSelected = !this.allSelected;\r\n this.ticketData.duplicates.forEach((img: any) => {\r\n img.selected = this.allSelected;\r\n });\r\n }\r\n\r\n selectedImagesList: any[] = [];\r\n\r\n selectedDuplicateImagesList: any[] = [];\r\n selectedHousekeepingImagesList: any[] = [];\r\n selectedEmployeeImagesList: any[] = [];\r\nhouseKeepingACCount:any;\r\nemployeeACCount:any;\r\nduplicateACCount:any;\r\n\r\ncloneWithoutSelected(obj: any) {\r\n const { ...rest } = obj;\r\n return rest;\r\n}\r\n\r\n\r\nallSelectValue = false;\r\n\r\ncloneWithoutSelected1(data: any): any {\r\n const { __parent, ...rest } = data;\r\n return { ...rest };\r\n}\r\n\r\nonImageCheckboxChange1(data: any, category: string, parentOriginal?: any) {\r\n let selectedList: any;\r\n\r\n if (category === 'duplicate') {\r\n parentOriginal = parentOriginal || data.__parent;\r\n\r\n const existingOriginal = this.selectedDuplicateImagesList.find(\r\n (item: any) => item.tempId === parentOriginal?.tempId\r\n );\r\n\r\n if (data.selected) {\r\n if (existingOriginal) {\r\n const alreadyExists = existingOriginal.data?.some(\r\n (dup: any) => dup.tempId === data.tempId\r\n );\r\n if (!alreadyExists) {\r\n existingOriginal.data.push(this.cloneWithoutSelected1(data));\r\n }\r\n } else {\r\n this.selectedDuplicateImagesList.push({\r\n tempId: parentOriginal?.tempId,\r\n filePath: parentOriginal?.filePath,\r\n entryTime: parentOriginal?.entryTime,\r\n exitTime: parentOriginal?.exitTime,\r\n timeRange: parentOriginal?.timeRange,\r\n data: [this.cloneWithoutSelected1(data)],\r\n });\r\n }\r\n } else {\r\n if (existingOriginal) {\r\n existingOriginal.data = existingOriginal.data.filter(\r\n (d: any) => d.tempId !== data.tempId\r\n );\r\n\r\n if (existingOriginal.data.length === 0) {\r\n this.selectedDuplicateImagesList = this.selectedDuplicateImagesList.filter(\r\n (o: any) => o.tempId !== parentOriginal?.tempId\r\n );\r\n }\r\n }\r\n }\r\n\r\n this.duplicateACCount = this.selectedDuplicateImagesList.reduce(\r\n (sum: number, orig: any) => sum + orig.data.length,\r\n 0\r\n );\r\n }\r\n\r\n if (category === 'employee') {\r\n selectedList = this.selectedEmployeeImagesList;\r\n } else if (category === 'housekeeping') {\r\n selectedList = this.selectedHousekeepingImagesList;\r\n }\r\n\r\n if (category !== 'duplicate') {\r\n if (data.selected) {\r\n const alreadyExists = selectedList.some((item: any) => item.tempId === data.tempId);\r\n if (!alreadyExists) {\r\n selectedList.push(data);\r\n }\r\n } else {\r\n const index = selectedList.findIndex((item: any) => item.tempId === data.tempId);\r\n if (index !== -1) {\r\n selectedList.splice(index, 1);\r\n }\r\n }\r\n\r\n this.employeeACCount = this.selectedEmployeeImagesList.length;\r\n this.houseKeepingACCount = this.selectedHousekeepingImagesList.length;\r\n }\r\n\r\n // 🔒 Disable other checkboxes if one type is selected\r\n const totalSelected =\r\n this.duplicateACCount + this.employeeACCount + this.houseKeepingACCount;\r\n\r\n if (totalSelected > 0) {\r\n this.checkedValue = false;\r\n } else {\r\n this.checkedValue = true;\r\n }\r\n\r\n this.cd.detectChanges(); // To update the template\r\n this.allSelectValue = this.areAllCheckboxesSelected();\r\n\r\n // console.log('✅ Counts:', {\r\n // duplicateACCount: this.duplicateACCount,\r\n // employeeACCount: this.employeeACCount,\r\n // houseKeepingACCount: this.houseKeepingACCount,\r\n // checkedValue: this.checkedValue,\r\n // });\r\n}\r\n\r\n\r\n\r\nselectAllValue() {\r\n this.allSelectValue = !this.allSelectValue;\r\n this.checkedValue = !this.allSelectValue;\r\n\r\n this.selectedEmployeeImagesList = [];\r\n this.selectedHousekeepingImagesList = [];\r\n this.selectedDuplicateImagesList = [];\r\n\r\n for (const ticket of this.footfallTicketsData) {\r\n const source = ticket._source;\r\n\r\n // ✅ Employee\r\n if (Array.isArray(source.employee)) {\r\n source.employee.forEach((img: any) => {\r\n img.selected = this.allSelectValue;\r\n if (this.allSelectValue && !this.selectedEmployeeImagesList.some(e => e.tempId === img.tempId)) {\r\n this.selectedEmployeeImagesList.push(img);\r\n }\r\n });\r\n }\r\n\r\n // ✅ Housekeeping\r\n if (Array.isArray(source.houseKeeping)) {\r\n source.houseKeeping.forEach((emp: any) => {\r\n emp.selected = this.allSelectValue;\r\n if (this.allSelectValue && !this.selectedHousekeepingImagesList.some(e => e.tempId === emp.tempId)) {\r\n this.selectedHousekeepingImagesList.push(emp);\r\n }\r\n });\r\n }\r\n\r\n // ✅ Duplicate\r\n if (Array.isArray(source.duplicateImages)) {\r\n source.duplicateImages.forEach((original: any) => {\r\n if (Array.isArray(original.data)) {\r\n original.data.forEach((dup: any) => {\r\n dup.selected = this.allSelectValue;\r\n dup.__parent = original; // ✅ Needed for uncheck\r\n });\r\n\r\n if (this.allSelectValue && original.data.length > 0) {\r\n const existing = this.selectedDuplicateImagesList.find(\r\n (o: any) => o.tempId === original.tempId\r\n );\r\n\r\n if (!existing) {\r\n this.selectedDuplicateImagesList.push({\r\n tempId: original.tempId,\r\n filePath: original.filePath,\r\n entryTime: original.entryTime,\r\n exitTime: original.exitTime,\r\n timeRange: original.timeRange,\r\n data: original.data.map((d: any) => this.cloneWithoutSelected1(d)),\r\n });\r\n }\r\n }\r\n }\r\n });\r\n }\r\n }\r\nconsole.log('✅ All selected:', this.selectedDuplicateImagesList);\r\n this.houseKeepingACCount = this.selectedHousekeepingImagesList.length;\r\n this.employeeACCount = this.selectedEmployeeImagesList.length;\r\n this.duplicateACCount = this.selectedDuplicateImagesList.reduce(\r\n (sum: number, orig: any) => sum + orig.data.length,\r\n 0\r\n );\r\n}\r\n\r\n\r\nareAllCheckboxesSelected(): boolean {\r\n for (const ticket of this.footfallTicketsData) {\r\n const source = ticket._source;\r\n\r\n if (source.employee?.some((img: any) => !img.selected)) return false;\r\n if (source.houseKeeping?.some((img: any) => !img.selected)) return false;\r\n if (source.duplicateImages?.some((original: any) => \r\n original.data?.some((dup: any) => !dup.selected))) return false;\r\n }\r\n return true;\r\n}\r\ncheckedValue =true;\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\nonImageCheckboxChange(data: any, category: string, parentOriginal?: any) {\r\n let selectedList;\r\n\r\n switch (category) {\r\n case 'duplicate':\r\n // Ensure selectedDuplicateImagesList is an array of ORIGINALS with selected children\r\n const existingOriginal = this.selectedDuplicateImagesList.find(\r\n (item: any) => item.tempId === parentOriginal?.tempId\r\n );\r\n\r\n if (data.selected) {\r\n if (existingOriginal) {\r\n const alreadyExists = existingOriginal.data?.some(\r\n (dup: any) => dup.tempId === data.tempId\r\n );\r\n if (!alreadyExists) {\r\n existingOriginal.data.push(this.cloneWithoutSelected(data)); // ✅ no 'selected' key\r\n }\r\n } else {\r\n this.selectedDuplicateImagesList.push({\r\n tempId: parentOriginal?.tempId,\r\n filePath: parentOriginal?.filePath,\r\n entryTime: parentOriginal?.entryTime,\r\n exitTime: parentOriginal?.exitTime,\r\n timeRange: parentOriginal?.timeRange,\r\n data: [this.cloneWithoutSelected(data)], // ✅\r\n });\r\n }\r\n} else {\r\n // Remove from selected duplicates\r\n if (existingOriginal) {\r\n existingOriginal.data = existingOriginal.data.filter(\r\n (d: any) => d.tempId !== data.tempId\r\n );\r\n\r\n // Remove the whole original if no duplicates are left\r\n if (existingOriginal.data.length === 0) {\r\n this.selectedDuplicateImagesList = this.selectedDuplicateImagesList.filter(\r\n (o: any) => o.tempId !== parentOriginal?.tempId\r\n );\r\n }\r\n }\r\n }\r\n\r\n // Count only from selected duplicates\r\n this.duplicateACCount = this.selectedDuplicateImagesList.reduce(\r\n (sum: number, orig: any) => sum + orig.data.length,\r\n 0\r\n );\r\n return;\r\n\r\n case 'housekeeping':\r\n selectedList = this.selectedHousekeepingImagesList;\r\n break;\r\n\r\n case 'employee':\r\n selectedList = this.selectedEmployeeImagesList;\r\n break;\r\n\r\n default:\r\n return;\r\n }\r\n\r\n // Unchanged logic for employee and housekeeping\r\n selectedList = selectedList || [];\r\n if (data.selected) {\r\n const alreadyExists = Array.isArray(selectedList) && selectedList.some((item: any) => item.tempId === data.tempId);\r\n if (!alreadyExists) {\r\n selectedList.push(data);\r\n }\r\n } else {\r\n const updated = Array.isArray(selectedList) ? selectedList.filter((item: any) => item.tempId !== data.tempId) : [];\r\n\r\n if (category === 'housekeeping') {\r\n this.selectedHousekeepingImagesList = updated;\r\n } else if (category === 'employee') {\r\n this.selectedEmployeeImagesList = updated;\r\n }\r\n }\r\n this.houseKeepingACCount = this.selectedHousekeepingImagesList?.length|| 0\r\n this.employeeACCount = this.selectedEmployeeImagesList.length || 0\r\n}\r\n\r\n\r\ncommentText:any;\r\nsubmitValue(status: string = 'approved', category: string = 'duplicate') {\r\n // Step 1: Validate based on current category\r\n let selectedList;\r\n switch (category) {\r\n case 'duplicate':\r\n selectedList = this.selectedDuplicateImagesList;\r\n break;\r\n case 'housekeeping':\r\n selectedList = this.selectedHousekeepingImagesList;\r\n break;\r\n case 'employee':\r\n selectedList = this.selectedEmployeeImagesList;\r\n break;\r\n default:\r\n return;\r\n }\r\n\r\n if (selectedList.length === 0) {\r\n this.toast.getErrorToast('Please select at least one image');\r\n return;\r\n }\r\n\r\n // Replace selected → isChecked before sending\r\n const transformedList = selectedList.map(item => {\r\n const { selected, ...rest } = item;\r\n return { ...rest, isChecked: true };\r\n });\r\n\r\n // Step 2: Build full payload\r\nconst payload: any[] = [];\r\n\r\nfor (const ticket of this.footfallTicketsData) {\r\n const source = ticket._source;\r\n\r\n const singlePayload: any = {\r\n _id: ticket._id,\r\n comments: this.commentText || '',\r\n dateString: source.dateString || this.dateString,\r\n\r\n employeeStatus: category === 'employee' ? status : source.employeeStatus,\r\n houseKeepingStatus: category === 'housekeeping' ? status : source.houseKeepingStatus,\r\n duplicateStatus: category === 'duplicate' ? status : source.duplicateStatus,\r\n };\r\n\r\n if (category === 'employee') {\r\n singlePayload.employee = transformedList;\r\n singlePayload.employeeACCount = this.employeeACCount ? this.employeeACCount : 0;\r\n }\r\n\r\n if (category === 'housekeeping') {\r\n singlePayload.houseKeeping = transformedList;\r\n singlePayload.houseKeepingACCount = this.houseKeepingACCount ? this.houseKeepingACCount : 0;\r\n }\r\n\r\n if (category === 'duplicate') {\r\n singlePayload.duplicateImages = transformedList;\r\n singlePayload.duplicateACCount = this.duplicateACCount ? this.duplicateACCount : 0;\r\n }\r\n\r\n payload.push(singlePayload);\r\n}\r\n\r\n// console.log('Payload to submit:', payload);\r\n// return\r\n // Step 3: Set status based on current category\r\n switch (category) {\r\n case 'duplicate':\r\n payload.forEach(item => item.duplicateStatus = status);\r\n break;\r\n case 'housekeeping':\r\n payload.forEach(item => item.houseKeepingStatus = status);\r\n break;\r\n case 'employee':\r\n payload.forEach(item => item.employeeStatus = status);\r\n break;\r\n }\r\n\r\n // Step 4: Submit the payload\r\n this.ticketService.getUpdateStatusApi({data:payload})\r\n .pipe(takeUntil(this.destroy$))\r\n .subscribe({\r\n next: (res: any) => {\r\n if (res && res.code === 200) {\r\n this.toast.getSuccessToast(res?.message || 'Ticket updated successfully');\r\n this.selectedStores =[];\r\n this.allSelected = false;\r\n this.allSelectValue =false;\r\n this.dataStoreView();\r\n this.cancel();\r\n } else {\r\n this.toast.getErrorToast('Failed to update ticket');\r\n }\r\n },\r\n error: (err: any) => {\r\n const msg = err.error.error || err.error || err?.error?.message || err.message || 'Unknown error';\r\n this.toast.getErrorToast('Error updating ticket: ' + msg);\r\n \r\n this.allSelected = false;\r\n this.allSelectValue =false;\r\n }\r\n });\r\n}\r\nsearchTerm:any = '';\r\nget filteredStores() {\r\n if (!this.searchTerm?.trim()) return this.stores;\r\n\r\n const term = this.searchTerm.toLowerCase();\r\n return this.stores.filter(store =>\r\n store?.storeName?.toLowerCase().includes(term)\r\n );\r\n}\r\nonImageError(event: any): void {\r\n event.target.src = 'assets/images/fallback-image.png'; // or any default image path\r\n}\r\n backToNavigation(){\r\n this.selectedStores = [];\r\n this.allSelected = false;\r\n this.allSelectValue =false;\r\n this.hasInitialStoreSynced = false;\r\n this.footfallView =true;\r\n this.getTicketSummary();\r\n this.getTicketList();\r\n }\r\n @ViewChild('zoomPopup') zoomPopup: ElementRef;\r\n popupvalue:any;\r\n popupType:any;\r\n popupOpen(type:any,value:any){\r\n const modalRef = this.modalService.open(this.zoomPopup, { centered: true, size: 'md' });\r\n this.popupType = type;\r\n if(value ==='duplicateImages'){\r\n this.popupvalue = 'duplicate';\r\n } else{\r\n this.popupvalue = value;\r\n }\r\n }\r\ncancel() {\r\n this.modalService.dismissAll();\r\n\r\n\r\n this.allSelected = false;\r\n this.allSelectValue = false;\r\n\r\n // Clear all selected flags from the data\r\n for (const ticket of this.footfallTicketsData) {\r\n const source = ticket._source;\r\n\r\n source.employee?.forEach((img: any) => (img.selected = false));\r\n source.houseKeeping?.forEach((img: any) => (img.selected = false));\r\n source.duplicateImages?.forEach((original: any) => {\r\n original.data?.forEach((dup: any) => (dup.selected = false));\r\n });\r\n }\r\n\r\n // Clear selected lists\r\n this.selectedEmployeeImagesList = [];\r\n this.selectedHousekeepingImagesList = [];\r\n this.selectedDuplicateImagesList = [];\r\n\r\n // Reset counts\r\n this.employeeACCount = '';\r\n this.houseKeepingACCount = '';\r\n this.duplicateACCount = '';\r\n\r\n this.checkedValue = true;\r\n}\r\nClusterList:any=[];\r\n getAllGroups() {\r\n this.ticketService.getclusters({ clientId: this.headerFilters.client, group: [], city: [] }).subscribe({\r\n next: (res: any) => {\r\n if (res && res.code == 200) {\r\n this.ClusterList = res?.data?.groupData;\r\n this.getStores();\r\n } else {\r\n this.ClusterList = [];\r\n }\r\n }\r\n })\r\n }\r\ngroups: any = [];\r\n ongroupSelect(event: any) {\r\n this.filterForm.get('ClusterList')?.setValue(event)\r\n this.groups = event.map((el: any) => el.groupName)\r\n this.getStores();\r\n }\r\n// isSubmitDisabled(): boolean {\r\n// switch (this.selectedRevopsType?.value) {\r\n// case 'employee':\r\n// return this.employeeACCount === 0;\r\n// case 'houseKeeping':\r\n// return this.houseKeepingACCount === 0;\r\n// case 'duplicate':\r\n// return this.duplicateACCount === 0;\r\n// default:\r\n// return true;\r\n// }\r\n// }\r\ngetFormattedEntryTime(entryTime: string): string {\r\n if (!entryTime) return '-';\r\n const [hours, minutes, seconds] = entryTime.split(':').map(Number);\r\n const date = new Date();\r\n date.setHours(hours, minutes, seconds);\r\n return date.toLocaleTimeString('en-US', {\r\n hour: '2-digit',\r\n minute: '2-digit',\r\n // second: '2-digit',\r\n hour12: true\r\n });\r\n}\r\nshowSelectAllBox() {\r\n this.filterForm.get('actionStatus')?.setValue('pending');\r\n}\r\n}\r\n","<div *ngIf=\"footfallView\" class=\"row\">\r\n <div class=\"col-md-3 mb-3\">\r\n <div class=\"card\">\r\n <div class=\"card-header ellipse1 py-1 px-5\">\r\n <div class=\"my-0\">\r\n <h5 class=\"card-title my-0\">{{ getFootfallSummaryData?.totalTickets !== null ?\r\n getFootfallSummaryData?.totalTickets : '--' }}</h5>\r\n <span class=\"sub-header\">Total tickets</span>\r\n </div>\r\n </div>\r\n <div class=\"card-body py-2 px-5\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-6 col-xl-9 col-md-6 my-3\">\r\n <h5 class=\"card-title\">{{ getFootfallSummaryData?.openTickets !== null ?\r\n getFootfallSummaryData?.openTickets : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Open</span>\r\n </div>\r\n <div class=\"col-lg-6 col-xl-3 col-md-6 my-3\">\r\n <h5 class=\"card-title\">{{ getFootfallSummaryData?.closedTickets !== null ?\r\n getFootfallSummaryData?.closedTickets : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Closed</span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-md-9 mb-3\">\r\n <div class=\"card\">\r\n <div class=\"card-header ellipse1 py-1 px-5\">\r\n <div class=\"my-0\">\r\n <h5 class=\"card-title mt-0\">{{ getFootfallSummaryData?.noShopper !== null ?\r\n getFootfallSummaryData?.noShopper : '--' }}</h5>\r\n <div class=\"sub-header\">Non-Shoppers</div>\r\n </div>\r\n </div>\r\n <div class=\"card-body py-2 px-5\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-4 col-xl-5 col-md-4 my-3\">\r\n <h5 class=\"card-title\">{{ getFootfallSummaryData?.duplicateCount !== null ?\r\n getFootfallSummaryData?.duplicateCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Duplicates</span>\r\n </div>\r\n <div class=\"col-lg-4 col-xl-5 col-md-4 my-3 \">\r\n <h5 class=\"card-title \">{{ getFootfallSummaryData?.employeeCount !== null ?\r\n getFootfallSummaryData?.employeeCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header \">Employee/Staff</span>\r\n </div>\r\n <div class=\"col-lg-4 col-xl-2 col-md-4 my-3\">\r\n <h5 class=\"card-title \">{{ getFootfallSummaryData?.houseKeepingCount !== null ?\r\n getFootfallSummaryData?.houseKeepingCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Housekeeping</span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"footfallView\" 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 class=\"card-label mb-2\">Ticket Info <span *ngIf=\"totalItems\" class=\"ms-2 px-3 badge badge-light-primary\">{{totalItems ? totalItems :'--'}} Total</span></span>\r\n <span class=\"text-sub mb-2\">Based on {{footfallList_req?.fromDate | date: 'dd MMM, yyyy'}} – {{footfallList_req?.toDate | date: 'dd MMM, yyyy'}} </span>\r\n </h3>\r\n <div 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\" placeholder=\"Search by store\" autocomplete=\"off\"\r\n (change)=\"searchData()\" [(ngModel)]=\"searchValue\" />\r\n <!-- <lib-filters [dataObject]=\"dataObject\"\r\n (appliedFilters)=\"applyFilters($event)\"></lib-filters> -->\r\n\r\n <button type=\"button\" (click)=\"exportXLSX()\"\r\n class=\"btn btn-default mx-2 btn-outline btn-outline-default rounded-3 text-nowrap border-val\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\r\n <path\r\n 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\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n <span class=\"ms-2\">Export</span>\r\n </button>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <div class=\"card-body mt-3 py-0 px-0\">\r\n\r\n\r\n\r\n <div *ngIf=\"loading\" 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 </div>\r\n <div *ngIf=\"noData\" 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/Nodata1.svg\" alt=\"\">\r\n <div class=\"nodata-title\">No data found</div>\r\n <div class=\"nodata-sub\">There is no result for this Date</div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"!loading && !noData\" class=\"table-responsive\">\r\n <table class=\"table bottom-border text-nowrap \">\r\n <thead>\r\n <tr>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('storeName')\">Store Info<svg\r\n [ngClass]=\"sortedColumn === 'storeName' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'storeName' ? '#00A3FF' : '#667085'\"\r\n stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('ticketId')\">Ticket ID<svg\r\n [ngClass]=\"sortedColumn === 'ticketId' && sortDirection === 1 ? 'rotate' : ''\"\r\n width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'ticketId' ? '#00A3FF' : '#667085'\"\r\n stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('dateString')\">Ticket raised on\r\n <svg [ngClass]=\"sortedColumn === 'dateString' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'dateString' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('footfallCount')\">Total footfalls\r\n <svg [ngClass]=\"sortedColumn === 'footfallCount' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'footfallCount' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('duplicateCount')\">Duplicates\r\n <svg [ngClass]=\"sortedColumn === 'duplicateCount' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'duplicateCount' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('employeeCount')\">Employee/Staff\r\n <svg [ngClass]=\"sortedColumn === 'employeeCount' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'employeeCount' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('houseKeepingCount')\">Housekeeping\r\n <svg [ngClass]=\"sortedColumn === 'houseKeepingCount' && sortDirection === 1 ? 'rotate' : ''\"\r\n xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\"\r\n fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'houseKeepingCount' ? '#00A3FF' : '#667085'\" stroke-width=\"1.33333\"\r\n stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </th>\r\n\r\n <th>Revised footfalls\r\n \r\n </th>\r\n <th class=\"cursor-pointer\" (click)=\"onSort('status')\">Status<svg\r\n [ngClass]=\"sortedColumn === 'status' && sortDirection === 1 ? 'rotate' : ''\" width=\"16\"\r\n height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\">\r\n <path\r\n d=\"M8.00016 3.33337V12.6667M8.00016 12.6667L12.6668 8.00004M8.00016 12.6667L3.3335 8.00004\"\r\n [attr.stroke]=\"sortedColumn === 'status' ? '#00A3FF' : '#667085'\"\r\n stroke-width=\"1.33333\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg></th>\r\n <!-- <th >Actions</th> -->\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let ticket of footfallListData\">\r\n <ng-container *ngIf=\"ticket?._source as source\">\r\n <td (click)=\"dataStoreView(ticket)\">\r\n <div class=\"text-primary cursor-pointer\">{{ source.storeName }}</div>\r\n <div class=\"text-gray-500 fs-7 mt-2\">ID : {{ source.storeId }}</div>\r\n </td>\r\n \r\n <td class=\"py-7\">{{ source.ticketId }}</td>\r\n <td class=\"py-7\">{{ source.dateString | date: 'dd MMM, yyyy' }}</td>\r\n <td class=\"py-7\">{{ source.footfallCount }}</td>\r\n <td class=\"py-7\">{{ source.duplicateCount }}</td>\r\n <td class=\"py-7\">{{ source.employeeCount }}</td>\r\n <td class=\"py-7\">{{ source.houseKeepingCount }}</td>\r\n <td class=\"py-7\">\r\n {{ source.footfallCount - (source.houseKeepingCount + source.employeeCount +\r\n source.duplicateCount) }}\r\n </td>\r\n \r\n <td class=\"py-7\">\r\n <span *ngIf=\"source.status === 'open' || source.status === 'closed'\" class=\"badge mx-2\" [ngClass]=\"{\r\n 'badge-light-primary': source.status === 'open',\r\n 'badge-light-default': source.status === 'closed'\r\n }\">\r\n {{ source.status | titlecase }}\r\n </span>\r\n </td>\r\n </ng-container>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n <div *ngIf=\"!loading && !noData\" class=\"my-3\">\r\n <lib-pagination [itemsPerPage]=\"pageSize\" [currentPage]=\"currentPage\" [totalItems]=\"totalItems\"\r\n [paginationSizes]=\"paginationSizes\" [pageSize]=\"setpageSize()\" (pageChange)=\"onPageChange($event)\"\r\n (pageSizeChange)=\"onPageSizeChange($event)\"></lib-pagination>\r\n </div>\r\n </div>\r\n\r\n</div>\r\n\r\n\r\n<div *ngIf=\"!footfallView\" class=\"card mt-2\">\r\n <form [formGroup]=\"filterForm\">\r\n <div class=\"row my-0\">\r\n <div class=\"col-lg-3 my-3\">\r\n <span class=\"ms-2 cursor-pointer\" (click)=\"backToNavigation()\" ><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"56\" height=\"44\" viewBox=\"0 0 56 44\"\r\n fill=\"none\">\r\n <g filter=\"url(#filter0_d_887_4505)\">\r\n <rect x=\"2\" y=\"1\" width=\"52\" height=\"40\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"51\" height=\"39\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <path d=\"M30.5 26L25.5 21L30.5 16\" stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_887_4505\" x=\"0\" y=\"0\" width=\"56\" height=\"44\" filterUnits=\"userSpaceOnUse\"\r\n color-interpolation-filters=\"sRGB\">\r\n <feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\" />\r\n <feColorMatrix in=\"SourceAlpha\" type=\"matrix\"\r\n values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\" result=\"hardAlpha\" />\r\n <feOffset dy=\"1\" />\r\n <feGaussianBlur stdDeviation=\"1\" />\r\n <feColorMatrix type=\"matrix\"\r\n values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.05 0\" />\r\n <feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_887_4505\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect1_dropShadow_887_4505\"\r\n result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg></span>\r\n <span class=\"card-title-foot ms-3\">Footfall Directory</span>\r\n </div>\r\n <div class=\"col-md-2 my-3\">\r\n \r\n <lib-reactive-select formControlName=\"selectedStatus\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"type\"\r\n (itemChange)=\"typeChange($event)\"></lib-reactive-select>\r\n \r\n\r\n </div>\r\n <div class=\"col-md-2 my-3\">\r\n \r\n <lib-reactive-select formControlName=\"actionStatus\" [idField]=\"'value'\" [nameField]=\"'label'\" [data]=\"pendingArray\"\r\n (itemChange)=\"pendingChange($event)\"></lib-reactive-select>\r\n \r\n </div>\r\n <div class=\"col-md-3 my-4\" >\r\n <div class=\"select-wrapper\">\r\n <div class=\"placeholder-overlay\" *ngIf=\"!(filterForm.get('ClusterList')?.value?.length)\">\r\n Select cluster\r\n </div>\r\n <lib-group-select [items]=\"ClusterList\" [disabled]=\"false\" [multi]=\"true\"\r\n [searchField]=\"'groupName'\" [idField]=\"'groupName'\" (selected)=\"ongroupSelect($event)\"\r\n [selectedValues]=\"filterForm.get('ClusterList')?.value\">\r\n </lib-group-select>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-md-2 my-4\">\r\n <div class=\"d-flex me-3\">\r\n <a (click)=\"onFilterApply()\" type=\"submit\" class=\"btn btn-sm btn-primary px-4 \"><span>Apply</span></a>\r\n </div>\r\n </div>\r\n </div>\r\n</form>\r\n</div>\r\n<div *ngIf=\"!footfallView\" class=\"row mt-3\">\r\n <div class=\"position-relative\" \r\n [ngClass]=\"isCollapsed ? 'd-none' : 'col-md-3 h-auto'\" >\r\n <div class=\"card h-100\">\r\n <div class=\"card-header border-0 pt-3 px-5\">\r\n <h3 class=\"card-title align-items-start flex-column\">\r\n <span class=\"card-label mb-2\">Footfall Directory</span>\r\n <span class=\"text-sub mb-2\">Based on {{footfallList_req.fromDate | date: 'dd MMM, yyyy'}} – {{footfallList_req.toDate | date: 'dd MMM, yyyy'}} </span>\r\n </h3>\r\n </div>\r\n <span class=\"cursor-pointer\" (click)=\"toggleSidebar()\" style=\"position: absolute; top: 15px; right: -25px;\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"68\" height=\"68\" viewBox=\"0 0 68 68\" fill=\"none\">\r\n<g filter=\"url(#filter0_dd_778_34282)\">\r\n<rect x=\"12\" width=\"44\" height=\"44\" rx=\"22\" fill=\"white\"/>\r\n<path d=\"M33 27L28 22L33 17M40 27L35 22L40 17\" stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</g>\r\n<defs>\r\n<filter id=\"filter0_dd_778_34282\" x=\"0\" y=\"0\" width=\"68\" height=\"68\" filterUnits=\"userSpaceOnUse\" color-interpolation-filters=\"sRGB\">\r\n<feFlood flood-opacity=\"0\" result=\"BackgroundImageFix\"/>\r\n<feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\" result=\"hardAlpha\"/>\r\n<feMorphology radius=\"2\" operator=\"erode\" in=\"SourceAlpha\" result=\"effect1_dropShadow_778_34282\"/>\r\n<feOffset dy=\"4\"/>\r\n<feGaussianBlur stdDeviation=\"3\"/>\r\n<feColorMatrix type=\"matrix\" values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.03 0\"/>\r\n<feBlend mode=\"normal\" in2=\"BackgroundImageFix\" result=\"effect1_dropShadow_778_34282\"/>\r\n<feColorMatrix in=\"SourceAlpha\" type=\"matrix\" values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0\" result=\"hardAlpha\"/>\r\n<feMorphology radius=\"4\" operator=\"erode\" in=\"SourceAlpha\" result=\"effect2_dropShadow_778_34282\"/>\r\n<feOffset dy=\"12\"/>\r\n<feGaussianBlur stdDeviation=\"8\"/>\r\n<feColorMatrix type=\"matrix\" values=\"0 0 0 0 0.0627451 0 0 0 0 0.0941176 0 0 0 0 0.156863 0 0 0 0.08 0\"/>\r\n<feBlend mode=\"normal\" in2=\"effect1_dropShadow_778_34282\" result=\"effect2_dropShadow_778_34282\"/>\r\n<feBlend mode=\"normal\" in=\"SourceGraphic\" in2=\"effect2_dropShadow_778_34282\" result=\"shape\"/>\r\n</filter>\r\n</defs>\r\n</svg>\r\n</span>\r\n <div class=\"text-end mt-10\">\r\n <button class=\"btn btn-outline w-25 me-3 btn-resize\" (click)=\"dataReset()\"> Reset </button>\r\n <button class=\"btn btn-primary w-25 me-5 btn-resize\" (click)=\"dataApply()\">Apply</button>\r\n </div>\r\n <div class=\"p-4 w-100 overflow-auto\">\r\n <input\r\n class=\"form-control form-control-sm mb-2 px-2 py-1 w-100\"\r\n type=\"text\"\r\n placeholder=\"Search\"\r\n [(ngModel)]=\"StoresSearchValue\"\r\n (change)=\"searchStoresData()\"\r\n/>\r\n\r\n <div class=\"mb-2 border-selectall\">\r\n <input type=\"checkbox\" [checked]=\"allSelected\" (change)=\"toggleSelectAll()\" />\r\n <label class=\"mt-2 font-semibold ms-2\">Select All {{storeCount}} Stores</label>\r\n </div>\r\n <ul class=\"list-unstyled ps-0\">\r\n <li *ngFor=\"let store of stores\" class=\"mb-5\">\r\n <input type=\"checkbox\" [checked]=\"isSelected(store)\" (change)=\"toggleStoreSelection(store)\" />\r\n {{ store?.storeName }}\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </div>\r\n <div [ngClass]=\"isCollapsed ? 'col-12' : 'col-md-9'\" >\r\n <div class=\"card h-100\">\r\n\r\n <div class=\"card-header min-h-35px border-0 pt-3\">\r\n <h3 class=\"card-title align-items-start flex-column\">\r\n \r\n </h3>\r\n <div class=\"card-toolbar\">\r\n <form class=\"mx-4\" [formGroup]=\"form\">\r\n <lib-reactive-select formControlName=\"selectedRevopsType\" [idField]=\"'value'\" [nameField]=\"'label'\"\r\n [data]=\"revopsTypeArray\" (itemChange)=\"RevopsTypeChange($event)\"></lib-reactive-select>\r\n </form>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"selectedRevopsType?.value !== '' && selecteValues ==='pending'\" class=\"card-header min-h-35px border-0\">\r\n <h3 class=\"align-items-start flex-column\">\r\n \r\n <div *ngIf=\"selectedRevopsType?.value !== ''\" class=\"mt-12 mb-2 font-semibold\">\r\n \r\n <input *ngIf=\"!footfallLoading && !footfallNoData\"\r\n type=\"checkbox\"\r\n [checked]=\"allSelectValue\"\r\n (change)=\"selectAllValue()\" />\r\n <label *ngIf=\"!footfallLoading && !footfallNoData\" class=\"mt-2 fs-6 font-semibold ms-2\">\r\n Select All (\r\n {{\r\n houseKeepingACCount > 0\r\n ? houseKeepingACCount\r\n : employeeACCount > 0\r\n ? employeeACCount\r\n : duplicateACCount > 0\r\n ? duplicateACCount\r\n : 0\r\n }}\r\n )\r\n </label>\r\n </div>\r\n <!-- -->\r\n \r\n </h3>\r\n <div class=\"card-toolbar\">\r\n <div *ngIf=\"selectedRevopsType?.value !== ''\" class=\"my-7 d-flex justify-content-end me-5\" role=\"group\">\r\n <button *ngIf=\"!footfallLoading && !footfallNoData\" [disabled]=\"checkedValue\" class=\"btn btn-outline me-1\" (click)=\"popupOpen('rejected',this.selectedRevopsType.value)\">Reject selection</button>\r\n <button *ngIf=\"!footfallLoading && !footfallNoData\" [disabled]=\"checkedValue\" class=\"btn btn-primary ms-1\" (click)=\"popupOpen('approved',this.selectedRevopsType.value)\">Approve selection</button>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n <section *ngIf=\"selectedRevopsType?.value === ''\">\r\n <div *ngIf=\"!footfallLoading && !footfallNoData\" class=\"card-body mt-3 py-0\">\r\n\r\n <span class=\"cursor-pointer\" *ngIf=\"isCollapsed\" (click)=\"toggleSidebar()\" style=\"position: absolute; top: 15px; left: 0;\">\r\n <svg class=\"mt-2 ms-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path\r\n d=\"M9.72714 12.6365L13.3635 9.00013L9.72714 5.36377M4.63623 12.6365L8.27259 9.00013L4.63623 5.36377\"\r\n stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <div class=\"col-md-12 text-center my-3\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"240\" height=\"86\" viewBox=\"0 0 240 86\" fill=\"none\">\r\n <rect width=\"240\" height=\"86\" fill=\"#FAFAFA\"/>\r\n <rect x=\"31\" width=\"178\" height=\"86\" fill=\"url(#pattern0_778_33543)\"/>\r\n <defs>\r\n <pattern id=\"pattern0_778_33543\" patternContentUnits=\"objectBoundingBox\" width=\"1\" height=\"1\">\r\n <use xlink:href=\"#image0_778_33543\" transform=\"matrix(0.000333333 0 0 0.000689922 0 -0.0822946)\"/>\r\n </pattern>\r\n <image id=\"image0_778_33543\" width=\"3000\" height=\"1688\" preserveAspectRatio=\"none\" xlink:href=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAC7gAAAaYCAYAAAAXbpGPAAAgAElEQVR4AezQgQAAAACAoP2pFymECgMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDJZikLkAACAASURBVBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwjXnEogAAIABJREFUYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBgwYMCAAQMGDBiYvXvBtZAGAgCqi3MT7sJFuG4NUSIP74cW2s60x8QAl0KnZ6Y8IU0kQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBBp7TinAAAgAElEQVQgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQO/m9l0AACAASURBVIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBB4WOD33//8Y7vlp+3x3Lbf+t89nmO/+2/H7Xl/O/YPAQIEZhH49Azcn8PbWPf90u3x2n3/1Xb7zT8ECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAgWYC50WTW0fn3/aFkvu5/fjYbv/tVZv93Kft+brj8bf9/fy23f/ZY9uPj9tff/ntr+OxfQIECEQQePVsOj7L9v3j9ry/Hb/7bT933G7jPh6f9/fzr7avzF6N4VU7vxEgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQILCGwLCz/9eyTYFjFux+fFjLMc72Pbx/zJ5Xhub29LgACBVgLHZ855f+9zfxZvx/t+pO0e1zn+8/E+HlsCBAgQiC2wP7+3KPf9HtvYKqIjQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBCoEuix8GTFPqqS4SICBAh8EVjxebqN+QuL0wQIECAwSCDi36VBFLolQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAoFYi4+GTlmErzN6r9uxyNike/BO4KZKnpd3H6/ef/aeRuPbieAAECBO4JZPm7dG+UriZAgAABAgQIECBAgEBMgcjvZDHFREWAAAECBAgQIECAAAECBAgQIECAwDCByB80xfZzYebZY1jRfOj4HOO74+0W7875/XPe+cTw+TANupxSB/froEuidEKAAAECPwQy/v36MQAHBAgQIECAAAECBAgQSCqQ6X0sKbGwCRAgQIAAAQIECBAgQIAAAQIECBCoFcj0AVOs9Ys3a+vjievkrT5v7HLZPTFfrt5DbfSpjav50I4AAQIE6gWy/k2rH7ErCRAgQIAAAQIECBAgEEPA+1iMPIiCAAECBAgQIECAAAECBAgQIECAAIF/BbJ+tBT3Mws6e08EeXsmbxzjO7aeW2pgbA20zq/7EyBAYFWBGf6+rZo74yZAgAABAgQIECBAILdA9vex3PqiJ0CAAAECBAgQIECAAAECBAgQILCwQPaPk+Lvu5iz1VSRx7555D3O++k5JJfjcnnF/ul8v7rfOY5XbfxGgACB7ALnZ13W4+x5ED8BAgQIECBAgAABAusJZH3/Ose9XuaMmAABAgQIECBAgAABAgQIECBAgEBSgfPHPcexF0lGy0+Lso82RvGYEy1q4Km50yI292xX80/l/Xyfdzk7t3NMgACB7ALvnncZf8+eC/ETIECAAAECBAgQILCWQMb3rncxr5U5oyVAgAABAgQIECBAgAABAgQIECAQXODdhzy/t1vIuLrtnSmxup3xzz0va+aGmpi3Jmrq4XxNbX2c7+OYAAEC0QVqn3eRr4tuLj4CBAgQIECAAAECBAhsApHfq2pjk1kCBAgQIECAAAECBAgQIECAAAECBAYK1H7Yc928iyl75ra29HvGqC+13rMGauZEz/j0NWY+1NTF8Zon8na8n30CBAhEFXjieRfxHlG9xUWAAAECBAgQIECAAIFdIOK71BMx7eOzJUCAAAECBAgQIECAAAECBAgQIECgs8ATH/jcY8yCxxncnyj3GRyMYe05dHceqJ/56ydCjdyNwfUECBDoITDr38QedvogQIAAAQIECBAgQIDAHQHvY3f0XEuAAAECBAgQIECAAAECBAgQIECAwJT/m8hZP5yuPK7aqbqymbHnWuRcW+PbdXKdK9ct8lVaPy1iON6zNB7tCRAg0Erg+Gyabb+VmfsSIECAAAECBAgQIEDgCYHZ3sGO43nCxz0IECBAgAABAgQIECBAgAABAgQIEPggcPwgZ98Cyeg18KGUi05FH6f41piLRUX7obF6WaNeruT5Q5m8PXXlvrVt3nbqBAECBDoK1D7DMl3XkVNXBAgQIECAAAECBAgQuCyQ6b2qJtbLEBoSIECAAAECBAgQIECAAAECBAgQIPBdoOYjnWssnoxaA98r/nuLqGMT17zz7ntVfm6hNuatjSdz+7mKfp59st8r9/rZuyMCBAi0FbjyXMrepq2guxMgQIAAAQIECBAgQKBOIPu71pX462RcRYAAAQIECBAgQIAAAQIECBAgQGBRge2j23noVz7EaWPRZNYaONd7zXHWsYs7z7ytqcvzNfKdJ98RcnWun2/HvWP+Fo/zBAgQeEKg97NtVH9PWLkHAQIECBAgQIAAAQIEnhQY9X7Uu98nzdyLAAECBAgQIECAAAECBAgQIECAwPQCvT/g6c+iyyg18MTkjjIWccwxr+7UpBqYowYi5LGmDnvHXROjawgQIPBNoPezbFR/3xycJ0CAAAECBAgQIECAQG+BUe9HI/rtbas/AgQIECBAgAABAgQIECBAgAABAqkERny006fFl5Fr4M4EjjwuseWYd+ovR55Wm081dTnKqCZW1xAgQOAsMOoZNqLf89gdEyBAgAABAgQIECBAYKTAiPeiUX2OdNY3AQIECBAgQIAAAQIECBAgQIAAgbACoz7Y6dfizUw1UDqBM41NrLHm4lZre05K6m6/xjZWPmfNx5XajDT2K/FqQ4AAgVcCkZ5lPWJ5ZeA3AgQIECBAgAABAgQIjBDo8Q4UqY8RxvokQIAAAQIECBAgQIAAAQIECBAgEFIg0oc7sViQmaUGaidzlvGJc+xcrKkvORubs9X9S2s2gldpzNoTILC2QITnVu8Y1s640RMgQIAAAQIECBAgEEWg97vQ6P6iuIuDAAECBAgQIECAAAECBAgQIECAwDCB0R/p9G8x5gw1UDuBZxi7MTw/h9XT86bqtJ9paf1GyE1pzNoTILCuQIRnVu8Y1s22kRMgQIAAAQIECBAgEEmg97tQhP4i+YuFAAECBAgQIECAAAECBAgQIECAQFeBCB/oxNBv0SHr9ta1E1hu2ucmg7H6UQcZ6vRKjDW1fOW+rdvUxO0aAgTWEmj9HIp4/7UybLQECBAgQIAAAQIECEQViPi+1DqmqLkQFwECBAgQIECAAAECBAgQIECAAIEmAq0/uLm/BZpq4Le/aicvuzXnj3pZM+8rzPea2o7iUhO7awgQmF8gyjOqZxzzZ9UICRAgQIAAAQIECBDIINDzPShSXxlyI0YCBAgQIECAAAECBAgQIECAAAECtwQifZATi8Wcq9TAnUm7itHK46ytj5XNjD3n34/SWo+U59LYtSdAYG6BSM+nXrHMnVGjI0CAAAECBAgQIEAgi0Cvd6CI/WTJkTgJECBAgAABAgQIECBAgAABAgQIFAlE/BgnppwLFOXtXt6KJu6hMfd77hH9Dukt2o04FjHNV5+tclpU7P82bhVL7X1rxuAaAgTmEqh9fmS/bq4sGg0BAgQIECBAgAABAhkFsr9X3Yk/Y77ETIAAAQIECBAgQIAAAQIECBAgQOCjwJ0PZq61aFENPF8DHyfsl5Py8Xw+Rph+SfPL0yPi1Occ9RYxjy+L/MOP0cbwIVSnCBBYQCDaM6lnPAuk1xAJECBAgAABAgQIEAgs0PP9J1pfgdMiNAIECBAgQIAAAQIECBAgQIAAAQLXBaJ9eBOPRZJq4H0NXJ/Z/7Xk+d4zss1/Gby+F3k8YstZh5Hydn0m/NMyUuzHWErHoT0BArkFjvN/tf3cmRM9AQIECBAgQIAAAQLZBVZ7BzuPN3v+xE+AAAECBAgQIECAAAECBAgQILCwwPljl2OLD9VAjhqofWzJb478bnmqybH85smvXNXnqnRuRLUuHYf2BAjkFYj6HOoRV96siZwAAQIECBAgQIAAgRkEerz3RO5jhhwaAwECBAgQIECAAAECBAgQIECAwGICkT+4ia1+0R+79exqHl3qJHadlOZUPmPnU37a5WemuVI6Fu0JEMglsPLfglyZEi0BAgQIECBAgAABArMJrPw+to19tnwaDwECBAgQIECAAAECBAgQIECAwOQCq3/QM/52iw3ZjrGteWTtudqu3fdtx+Tv6F6ay+O19sfnTw7656BkzkTPT8lYtCVAIJdA9OdPy/hyZUq0BAgQIECAAAECBAjMJtDyfSfDvWfLp/EQIECAAAECBAgQIECAAAECBAhMKpDhY5sYPy8OjFaa8vU5X719auujd5z6+3/d1OSO4/8dmaxpUjp/otdJ6Xi0J0AgvkD0507L+OJnR4QECBAgQIAAAQIECMws0PJ9J8u9Z86vsREgQIAAAQIECBAgQIAAAQIECEwgkOVD22pxTlBal4ewWm5HjfdyQk4NR8W7er+nNFw6XN3M+NdcxP4t75cmz6nRt3uOPH8K1SEBAskFRj5PRvedPHXCJ0CAAAECBAgQIEAgucDod6II/SdPofAJECBAgAABAgQIECBAgAABAgRmFYjw8UwM/yxGnLXG7oxLbbRdqFqTGzlpm5Ojb0l+jtfZ75cj1vmsS+bV1jZDjkvHpD0BAvEEMjxrWsUYLxsiIkCAAAECBAgQIEBgJYFW7zqZ7rtSvo2VAAECBAgQIECAAAECBAgQIEAgiUCmD2wzxZqkPEKHOVM9jB5LbaJHxz1r//KRb8H0rLU487hK51kGi9IxaU+AQCyBDM+ZVjHGyoRoCBAgQIAAAQIECBBYTaDVu06m+66Wc+MlQIAAAQIECBAgQIAAAQIECBAILpDp41r2WIOXwhThZa+RCPHXFEKEuGeKoSYH2zUzGRiLBf69aqB0vvWK604/pWPSngCBOAJ35n72a+NkQSQECBAgQIAAAQIECKwokP2d6on4V8y7MRMgQIAAAQIEegg88d9qf7N3r9nN4zqihvfkav5DqrO86qjjKCLFC4jr+yuxSJHAA4h2+vOujrCGhiV7IIAAAggggEARgQgffqLHWKSVXKcZvYes4l8tqlW8mfZdsc+UP7nwxXaLHph97ixiXNlzNi/mI4CAvcDKs57lHnt9IkAAAQQQQAABBBBAAIHKAln+ttrJo3L9yR0BBBBAAAEEEDghsPPZLPq9JzxZEwEEEEAAAQQKCET/EOQ9fssW8mZjafG0tzefCPE8Ob5di5CX1xjfbO/jXvMgLr6kHrEH7s/X2+tIOb7lwjgCCPgRiHS2SMfqpwpEggACCCCAAAIIIIAAAhUFpP/GibhexbqTMwIIIIAAAgggcEog4udByZhPubIuAggggAACCCQWkPwwwlo/X2DUbpkM9tpmT/tlcNTK4cnv7ZpWbBn2ebN8Gs+QNzn8vI9g4cfi6XnrXYtUu14ejCGAgA+BSGeKdKw+KkAUCCCAAAIIIIAAAgggUFVA+m+ciOtVrT15I4AAAggggAACJwQifh6UjvmEK2sigAACCCCAQEIB6Q8hrPfzRTzpdsH2nO1TrfD+8R6xeDLsXRtZkzn//Nsz/B77WH1eYzbXt3jhNdsD38/d2++za1vPf8uHcQQQsBWwPiMs97eVZ3cEEEAAAQQQQAABBBCoLmD595CXvav3APkjgAACCCCAAAKSAl4+41nGIenJWggggAACCCCQWMDyA0vGvU+2Skav1ZxOOj+tvRpnpfue3HrXKtms5trzu4+t7sF9fMGbHpjrgfuz9/Y6mu9bPowjgICdQLTzRDJeO3V2RgABBBBAAAEEEEAAAQT4j4p8/r6jDxBAAAEEEEAAAQTkBCT/7+dR15LTZCUEEEAAAQQQSCkQ9UOO17ilm8RrnhHikq7FtV6E3D3EeHmN/vQQs7cYRu2ued7iJ565L0zjFc/revZGf0ar8WhezEMAAV2BaGeJZLy60uyGAAIIIIAAAggggAACCPwWkPz7Jupav0V4hQACCCCAAAIIILAjEPUzoWTcO37ciwACCCCAAALJBSQ/dFRd60SLVLU8mfeJOn2veTL2yGt/G438HjlX6dhHvL7nSO/PevG+bE3NbGr2/RyO/B6xTiN5MQcBBPQEIp4jUjHrKbMTAggggAACCCCAAAIIIPBXQOpvm8jr/FXhCgIIIIAAAggggMCqQOTPhVKxr9pxHwIIIIAAAggkF5D6sFF1Hcn2qGpolbdk7e5rWeXkfd+709tr7/mcjO/N5j5+MhbWtvnCNO7x3O/P5dvriDV+y4lxBBDQE4h4hkjFrKfMTggggAACCCCAAAIIIIDAXwGpv20ir/NXhSsIIIAAAggggAACqwKRPxdKxb5qx30IIIAAAgggkFRA6kNGxXUkW6Kin9ecJev6vZbXfK3i+rYZ+d0qTst9R1yuOZZxsne8L2BTM52aXc/nyM+oNRnJjTkIIHBWIOr5IRH3WVlWRwABBBBAAAEEEEAAAQT6AhJ/10Rfoy/EKAIIIIAAAggggMCMQPTPhhLxz3gxFwEEEEAAAQSSC0h8uKi4hlRbVLSLmLNUva91IhqcjPlyGf15MhYva49aXPO8xE0cOl+axjmW8/WcjvyMWtuR3JiDAALnBKKeHRJxn1NlZQQQQAABBBBAAAEEEEDgXUDi75roa7wrMQMBBBBAAAEEEEBgVCD6Z0OJ+EetmIcAAggggAACiQUkPlRUXEOiJSq6ZcpZogeuNTK5SORyuYz8lNjP6xoj+V9zvOZAXLG+gE29dOp1PbcjP6PWZCQ35iCAgLxA1DNDIm55TVZEAAEEEEAAAQQQQAABBMYFJP6uib7GuBYzEUAAAQQQQAABBN4Eon82lIj/zYhxBBBAAAEEEEguIPGBouIaO21R0atKzjt98bm3itNonrOeo+tGmTeTf5SciFPny9M4x3AefcYj13M0R+YhgICcQOQzYzd2OUVWQgABBBBAAAEEEEAAAQTmBXb/pslw/7wadyCAAAIIIIAAAgi0BDJ8PtzNoWXDdQQQQAABBBAoILD7QaLi/bttUdGsWs67PfJ9fzW7p3y/Pd5+f7o/6rW3XL/Ho+ZI3DG+hE2dztXp+zl++z1yHd5yYxwBBGQFIp8Xu7HLSrIaAggggAACCCCAAAIIIDAnsPs3TYb758SYjQACCCCAAAIIINATyPD5cDeHng9jCCCAAAIIIJBYYPdDRMX7d9uholnVnHd75fv+qobfeX97vP3+fV/U399y/B6PmiNxn/vSNLaxbL+f57ffI9f2LTfGEUBATiDyWbEbu5wiKyGAAAIIIIAAAggggAAC8wK7f9NkuH9ejTsQQAABBBBAAAEEWgIZPh/u5tCy4ToCCCCAAAIIJBbY/QBR6f6dNqjkRK7vX6jc6aXPvRj/8++oYWSrCjlGrg+xv591GM0bVXruR3NlHgIIrAtUPofX1bgTAQQQQAABBBBAAAEEENgXqPz32JX7viIrIIAAAggggAACCFwC12esyj8vC34igAACCCCAQBGByh98ZnKXaIeZ/Zg7/4XAaGYSPfVZI1rekvHOGkrufXKt2byq98HJWrB2/rPYY41nzgCP8c/ENJMrcxFAYE1g5pnMNndNjLsQQAABBBBAAAEEEEAAARmBbH9jreQjI8kqCCCAAAIIIIAAAh+Blc9j2e6hExBAAAEEEECgkEC2DzIn8tlthxMxsWa+L1zSZ3s1nfGL8PxkyyeCOTHuPYP4yftVOwdm8mUuAgjMCVQ+o+ekmI0AAggggAACCCCAAAIIyApU/nvsyl1WlNUQQAABBBBAAIHaAtdnrMo/a3cA2SOAAAIIIFBIoPIHnpHcJVphZB/myH8pMLLpd9998vh+Pfp75Px3Yh/1uebt7HXy3iu+kZ8n42BtziZ6wL4HRs6Ba06Gel258BMBBGQFMpwPqznISrIaAggggAACCCCAAAIIIDAnsPq3TKb75sSYjQACCCCAAAIIINATyPQ5cTWXng9jCCCAAAIIIJBEYPWDQoX7JEpcwYkcz3/xcbcXq9Zoxs2bUeTYvVkSz/kzCmMd42rnwky+zEUAgTGByuf1mBCzEEAAAQQQQAABBBBAAIEzApX/HrtyPyPLqggggAACCCCAQE2B6zNW5Z81K0/WCCCAAAIIFBGo/CFnJHeJNhjZhzk6XwrM4LzbkxkMVnMYtVtdX/q+aPFK5896nIv0QLsHRs+Hz7wMjjP5MhcBBN4FMpwLqzm86zADAQQQQAABBBBAAAEEEDgnsPq3TKb7zumyMgIIIIAAAgggUE8g0+fE1VzqVZ2MEUAAAQQQKCKw+uGgyn27bVDFiTzbX0A8bbPTo6dj87r+qJl1/FHitHZif7vzB3t7+9Fz4jMvQ71m8mUuAgj0BTKcCas59GUYRQABBBBAAAEEEEAAAQTOCqz+LZPpvrPCrI4AAggggAACCNQSyPQ5cTWXWhUnWwQQQAABBAoJrH44qHDfbhtkMHozyJBjhhze6tQbz5D/bA49j/vY7NpS8+9x9F5L7ck69l9WzlaDXt9+xj75XnOy5a6Zz2X49lMzppN7veXJOAIIjAmcfE69rz0mxCwEEEAAAQQQQAABBBBA4IyA97+ZNOI7I8uqCCCAAAIIIIBATQGNz2/e96hZebJGAAEEEEAguYD3DyDW8a2W3zpuif2v3D9rXb+3fkrsxxr7X6xt1WfkekX/EZfPHAsbz7FZeLDn/vlgYTjax9/zLOLMsue3Y+/3DPn28mMMAQTGBTKcB6s5jCsxEwEEEEAAAQQQQAABBBCQF1j9WybTffKqrIgAAggggAACCNQVyPQ5cTWXutUncwQQQAABBJIKrH4oqHDfbsm9GO3mYXm/F8NocezWLFq+u/GOen32+czd5wWiaQAAIABJREFU3W/k/pmYRtZjTswvh3uo22gveprnwc0qhtE6WMV3Yt/RnJmHAALPAieeyyhrPotwFQEEEEAAAQQQQAABBBDQEYjyt9PJOHWk2QUBBBBAAAEEEKghcPJzW5S1a1SaLBFAAAEEECgiEOUDiGacEqXXjLe1l0Qe3tZo5cr19hd3d2pYzXXG6rTNaCyn42D99rOV3Wa0B6PMy16ve36jdbnfF/n1aM7MQwCBvwKRn/3d2P9qcAUBBBBAAAEEEEAAAQQQ0BPY/Zsmw/162uyEAAIIIIAAAgjkF8jw+XA3h/xVJkMEEEAAAQSKCOx+KMh6/275NV12Y812v6Z9tL1Wax0tT4l4Z6wk9ruvMbr//T5e1/0y+mrtR3st87xVuwj3jdYtQi6jMY7mzDwEEPgtMPqMZZz3W4JXCCCAAAIIIIAAAggggICuQMa/s2Zz0hVnNwQQQAABBBBAILfA7GexjPNzV5jsEEAAAQQQKCKQ8UPKbk67pd/df/T+3Tir3D/qWW3eav1xepaTdnne5fdV6T1Zr9YX4393E6++BbI9C9+5vf2eKfe3XBlHAIG/ApnOgNlc/mpwBQEEEEAAAQQQQAABBBDQE5j9GybjfD1tdkIAAQQQQAABBPILZPy8OJtT/iqTIQIIIIAAAokFZt/4q8zfLflpp934uP9//ztdo2jrr/REtBx34x012t3nul97v2tffub+gvtoXzHvWSD68/Gc1d+r0fO8x/83Q64ggEBP4P4MVXrdc2EMAQQQQAABBBBAAAEEEDgtUOnvr1aup41ZHwEEEEAAAQQQqCTQ+sxV6XqlepMrAggggAAC6QQqfWgZzXWnyKN7rM7biY172wKr9ch4X1upPZLRoZVTW+H3SOv+0eu/V3t+NboW83J/YX20vs9dxNVVgVF3r/NG8vYa+2pcIzkzBwEE/hNYfc4y3EcPIIAAAggggAACCCCAAAKWAhn+rtrNwdKfvRFAAAEEEEAAgWwCu5/NMtyfrabkgwACCCCAQBmBDB9EJHPYLbxkLJ+1duPh/nUB6VpGW29FLlqOO/GO+qzscXLtlXi4J+6X40d7iXkyAtGeldGso+X1Fu9o3sxDoLrA27OUebx67ckfAQQQQAABBBBAAAEEbAUy/701mpttBdgdAQQQQAABBBDIJTD6GSzzvFwVJRsEEEAAAQSKCGT+cLKa207pV/d8um8nDu6VE3iqTaVrK5L4/FWbNfm7wt8rs2syP+6X1Fdq97djuKIpsFIzq3tGXKxiO7nvSN7MQaC6wMln0Pva1WtP/ggggAACCCCAAAIIIGAr4P1vJo34bCvA7ggggAACCCCAQC4Bjc9v3vfIVVGyQQABBBBAoICA9w8XFvGtll0y1tUYuO+8gGSdI641Ixwxv9WYR11G1x9Zb3Qt5tX6Uvun3iP9wxw9gSjP4IhIlFxm4hzJmzkIVBaYeZ6yza1cd3JHAAEEEEAAAQQQQAABe4Fsf2Ot5GNfBSJAAAEEEEAAAQTyCKx8Hst2T55qkgkCCCCAAAIFBLJ9ENnNZ7fku/t/7t+Ngft1BSRqHm2NWeFo+e3EO2rztsfIOm9rMF7vS+2fmo/0DnNsBTw/myMynuPfiW0kd+YgUFVg59mKfm/VmpM3AggggAACCCCAAAII+BCI/jeVRPw+KkEUCCCAAAIIIIBADgGJz2fR18hRSbJAAAEEEECgiED0Dx7S8e+UfTeWnb25115gt/7R7l8Rj5bjaryjNq31R+5v3ct1vtQ+0j/M8SHg9Xkd1fEa/05co7kzD4FqAjvPVfR7q9WafBFAAAEEEEAAAQQQQMCXQPS/qSTi91URokEAAQQQQAABBGILSHw+i75G7AoSPQIIIIAAAoUEon/okIx/t+yrsezuy/3+BFZ7Iep9sxWImuds3KMu93VH7rvfw+t6X2of6RPmxBLw9hyP6HmLWSqekdyZg0A1AannK+I61WpNvggggAACCCCAAAIIIOBLIOLfUdIx+6oI0SCAAAIIIIAAArEFpD+rRVwvdgWJHgEEEEAAgSICET9knIp5t+Qrce3uyf0xBFZ6I+I9s9WImONKzLMuI/NX4uCeXF+AH+kT5sQV8PK8jgp6iVcyjtHcmYdAJQHJZyzaWpXqTK4IIIAAAggggAACCCDgTyDa31An4vVXFSJCAAEEEEAAAQTiCpz4vBZtzbjVI3IEEEAAAQSKCET7cHEy3t2Sz8a2ux/3xxSY7ZOo82erEzXPmbhnTVrzZ/Zkbq4vtF/1bPUG13MKXHW3/jmiax3jqf1HcmcOAlUETj1nEdatUmPyRAABBBBAAAEEEEAAAZ8CEf5uOh2jz8oQFQIIIIAAAgggEFPg9Ge3COvHrBxRI4AAAgggUEQgwocJrRh3Sz4T5+5e3J9DYKZnIs5dqVLEPGdjXnG53zO7J/PzfMn93gu8riVg/SyPaFvHeGr/kdyZg0AVgVPPWYR1q9SYPBFAAAEEEEAAAQQQQMCnQIS/m07H6LMyRIUAAggggAACCMQUOP3ZLcL6MStH1AgggAACCBQQiPBBQivGnXLPxLizD/fmFJjpn6hzZysXNc+ZuGdNrvkzezA3z5far1pefcBPBD4CV19o/hyR14xHe6+R/JmDQAUB7WfP034V6kuOCCCAAAIIIIAAAggg4FfA099HVrH4rQ6RIYAAAggggAAC8QSsPtN52jde1YgYAQQQQACBIgKePjBYxrJT7pm4d/bh3twCM30Ude5sBaPmORM3Jvm+gD5T/5m5n175zJ/tGebnFZjpH+m5I6rSe3pabyR/5iCQXcDTM6kdS/bakh8CCCCAAAIIIIAAAgj4FtD+G8jjfr4rRHQIIIAAAggggEAsAY+f97RjilUxokUAAQQQQKCQgPaHAq/77ZR8NKedPbi3jsBoP0WdN1vJqHnOxD1jMrMuc/N8eX6mR5hbU0D7eR9V1o5La7/R/JmHQGYBrefN4z6Z60puCCCAAAIIIIAAAggg4F/A499J2jH5rxIRIoAAAggggAACcQS0P8t53C9OtYgUAQQQQACBQgIePzRYxLRT8tF4d/bg3noCo30Vdd5sRaPmORr3jMfomszjy+0zfcXcPAKaz/6ImmY8mnuN5M4cBLILaD5z3vbKXlvyQwABBBBAAAEEEEAAAd8C3v5GsojHd4WIDgEEEEAAAQQQiCVg8XnO256xKka0CCCAAAIIFBDw9mHBKp6dUo/EvLM+9yIw0mNR58xWN2qeo3GPeoyux7z4X3Af7QnmIfAkoHUGPO39fU0rDqt9vnPldwSqCVg9dx72rVZr8kUAAQQQQAABBBBAAAFfAh7+LrKOwVdFiAYBBBBAAAEEEIgtYP3ZzsP+sStI9AgggAACCCQT8PDhwEMMO2UdiX9nfe5F4FtgpN8izvnOceT3iDnOxvzmMLse8+N90f2tBxhHYFRA4/kfiUUjDqs9RvJnDgJZBayeOw/7Zq0peSGAAAIIIIAAAggggEAMAQ9/F1nHEKNSRIkAAggggAACCMQQsP5s52H/GJUiSgQQQAABBAoIePhg4CGG3VK/5bC7PvcjcBd467mo4/c8315HzXMm7p7BzDrM5cvtvV5irI7AybNgVPFkDNZrjxowD4FsAtbPnuX+2WpJPggggAACCCCAAAIIIBBLwPLvIS97x6oY0SKAAAIIIIAAAr4FvHzGs4zDd4WIDgEEEEAAgUIClh8IvOwtUe5eLhLrswYCTwK9vos89pRr61rkPGdib+X/uT6zDnNjfMm9V2/GEJAQOH0W9GI8vbeH9Xv5M4ZAVgEPz55VDFlrSl4IIIAAAggggAACCCAQQ8DqbyFP+8aoFFEigAACCCCAAAIxBDx9zrOKJUaliBIBBBBAAIHkAlYfBDztK1Xip5yk1mYdBN4Envovw7W3vL/HM+T7lsN3vk+/v93PuP8vtz/VlWsInBQ4dS68xXxqX0/rvhlc45+Yr9/5iUBkAU/Pn3YsketG7AgggAACCCCAAAIIIBBfQPtvII/7xa8iGSCAAAIIIIAAAn4EPH7e047JTzWIBAEEEEAAgQQC9zfykZTu91R8PeI0Oufbb/Qe5iEgKfDdg5l+nzHKlHcrlzeP1n1c58vtb73DeF2BU+fDm+ipfT2t2zN4irM3nzEEvAs89XSVa95rQ3wIIIAAAggggAACCCCQW6DK3169PHNXmOwQQAABBBBAAAFdgd7nripjuuLshgACCCCAQEKBtw8Nbym/3Z99/M2HcQSiCmR8dmdqkTH/75xGLL7n87v/L7Z/ajRSV+YgcFLgxFkxEu+JfT2t2TMYjbO3BmMIeBIY7emM8zzVgVgQQAABBBBAAAEEEECgnkDGv7Nmc6pXdTJGAAEEEEAAAQTOCcx+Fss4/5wuKyOAAAIIIJBcYOSDQY9g5P4Kc3pGjCEQWSDr8ztTk6wGV14jFtdcfvr/gvtIPZmDgIbAifPiLe4Te3pbs2cwGmtvDcYQ8CIw2s8Z53mpAXEggAACCCCAAAIIIIBATYGMf2fN5lSz8mSNAAIIIIAAAgicEZj9LJZx/hlZVkUAAQQQQCChwMoHgR7DynrZ7un5MIZAFoFsz+0nn9HaZMz9ntOIxf0eXvv7svtIHZmDgKbAiXOiF/+J/TyuKWnQW4sxBCwFPD57WjFZurM3AggggAACCCCAAAIIIKD1t4/nfegCBBBAAAEEEEAAATkBz5/7tGKT02QlBBBAAAEEkglIvBn3SCTWj7xGz4YxBLIJRH5WW7GP1qh1f5brIw5Zcs2Yx0j9mIOApYDkc/eWh+ReXtfqGezG3FubMQQ0BXZ7OfL9ms7shQACCCCAAAIIIIAAAgjcBSL/PSUV+92E1wgggAACCCCAAALrAlKf0SKvs67HnQgggAACCCQVkHxjbxFJ7hF1rZYN1xHIKhD1We3FPVqr3hoZxkYcMuSZKYeRmjEHAS8CUs/eWz5S+3hfp+cgEXtvfcYQ0BCQ6OOoa2j4sgcCCCCAAAIIIIAAAggg0BKI+reUZNwtG64jgAACCCCAAAIIzAtIfk6Luta8GncggAACCCCQROD0m3eL6fS+3tdvuXAdgQoC3p/PlfhG67aydqR7Rhwi5ZM51pFaMQcBjwISz+VbXhJ7RFij5XA69ta+XEdAUuB0H3teX9KRtRBAAAEEEEAAAQQQQACBWQHPfy9pxTZrxnwEEEAAAQQQQACBtoDWZzjP+7R1GEEAAQQQQCCpgNYb8xOf1t6e93ly4RoClQQ8P5+rsY3Wb3X9KPeNOETJJWucIzViDgKeBXafzZHcdveIcH/LQSP21t5cR0BKQKOPve4hZcg6CCCAAAIIIIAAAggggMCKgNe/lTTjWnHjHgQQQAABBBBAAIFnAc3PcV73epbhKgIIIIAAAkkELN6Ae3QW8Xjas2fDGALVBDw9mxKxjNZPYi/Pa4w4eI4/c2wjtWEOAhEEdp7Tkfx21o90b89CO49eLIwhMCug3b+e9pu1Yj4CCCCAAAIIIIAAAgggICng6e8jq1gkPVkLAQQQQAABBBCoLmD1mc7TvtV7gPwRQAABBJIKWL3Z9jitYvKyb8+GMQSqCnh5PqXiGK2j1H5e13lz8Bp35rjeasI4ApEEdp/Vt1x31490f8vCKodWPFxHYEbAqn897DvjxFwEEEAAAQQQQAABBBBAQFrAw99F1jFIm7IeAggggAACCCBQWcD6s52H/SvXn9wRQAABBBIIeHgz/Y6hRfo9p+rvLRuuI1BdINuZMFrPbHnf8xlxuN/D63/+PWEwUgvmIBBRYOd56eW7s260eyM49GJkDIEngWjPoWS8Tx5cQwABBBBAAAEEEEAAAQS0BCT/vom6lpY1+yCAAAIIIIAAAhUEon4mlIy7Qp3JEQEEEEAgqYDkG6LEWj1mifUjr9GzYQwBBP73v8jP91PsozV9ujfLtRGDLLl6zmOkDsxBILLA6vP3lvPquhHv61l4yacXI2MI3AW89K1FHHcLXiOAAAIIIIAAAggggAACmgIWfwd521PTm70QQAABBBBAAIHsAt4+61nEk73G5IcAAgggkEDgeoP8pHL97vFni9pjrNoxtWy4jgACPwLaz+Xp/X4ya/92OgYP67ez/2/EQ4xZY3izZxyBLAIrz/Bb7itrRr2nZ+E5p17cjNUW8Ny3p2OrXXmyRwABBBBAAAEEEEAAAWuB03/zRFjfugbsjwACCCCAAAIIZBKI8PnvdIyZ6kkuCCCAAAJJBU6/GUqs36OXWD/yGj0bxhBA4Ecg8nP+FPtPZv3fnu7NdK2fve//4VbkOry5M45ANoHZ53Uk/9k1o89/MvGe01PMXEPAe9+ejI/qI4AAAggggAACCCCAAAKWAif/3omytqU/eyOAAAIIIIAAAtkEonwGPBlntpqSDwIIIIBAIoGTb4CSa/fIJfeJulbPhzEEEPgtEPU5b8X9O7v2q9b9Ga63s/4ZyZCnpxx+ZPkNgToCK8/gm87KmpHvaXlEyKkVO9drCkTo2VMx1qw4WSOAAAIIIIAAAggggIAXgVN/60Ra10stiAMBBBBAAAEEEMggEOlz4KlYM9SRHBBAAAEEkgmcetM7tW6P/9SeUdbt2TCGAALPAlGe79E4n7P8fXV0rajzfmf7/Cpqbt7iftblKgJ1BGafyTeZ2fUiz+9ZRMmrlwNjdQSi9OuJOOtUmUwRQAABBBBAAAEEEEDAo8CJv3OiremxLsSEAAIIIIAAAghEFYj2WfBEvFFrR9wIIIAAAkkFTrzZnV6zV4rTe3tfv2fDGAIItAW8P9sz8bWz/D0ys2a0ub8zbb+Klpe3eNuyjCBQR2D2uXyTmV0v+vyWR6S8WjlwvY5ApH6VjrVOlckUAQQQQAABBBBAAAEEPApI/40TcT2PdSEmBBBAAAEEEEAgqkDEz4PSMUetHXEjgAACCCQUkH6T01qvVQqt/b3u03LhOgIIjAl4fbZX4hrL+H//W1k70j1vDpFy8Rbrmy3jCFQSmHk+31xm1sowt+URLbdWHlyvIRCtXyXjrVFhskQAAQQQQAABBBBAAAGvApJ/30Rdy2ttiAsBBBBAAAEEEIgoEPUzoWTcEetGzAgggAACyQQk39g01+qVQTMOj3v1bBhDAIFxAY/P92pMo1mvrh/hvhGDCHl4i3HElTkIVBOYeU57NjPrZJmbyaOXC2N5BbI8iyt55K0qmSGAAAIIIIAAAggggEAEgZW/Y7LdE6FOxIgAAggggAACCEQRyPZZcSWfKLUiTgQQQACBxAIrb2Ae7umVxEN8ljH0bBhDAIE5ActnWXrvkcyl9/S2Hgb//CtZkxFP5iBQVWDmWesZzayTYW4mi14ujOUVyPAcruaQt6pkhgACCCCAAAIIIIAAAhEEVv+WyXRfhDoRIwIIIIAAAgggEEUg0+fE1Vyi1Io4EUAAAQSSCXzeuK6UVt/ErO+74n/6aR2b9f5PJlxDAIF1AetnWmr/UQGp/byu8+bgNW6Pcb1ZMo5AZYHZZ7ZlNbtO9Pkth8/1iLn18mEsp0DEPpWKOWdFyQoBBBBAAAEEEEAAAQSiCEj9bRN5nSi1Ik4EEEAAAQQQQCCCQOTPhVKxR6gTMSKAAAIIJBSQeiOzWqdVEqt4PO3bsuE6AgisC3h6xiVieZOQ2MP7Ghjs/5fc3wwZRwCBuS9k97y8n6nS8WWz6OXDWD4B6ech0nr5qklGCCCAAAIIIIAAAgggEEkg0t9Pp2KNVC9iRQABBBBAAAEEvAuc+swWaV3vNSI+BBBAAIGkApHeLO+x9kpyn1vtdc+GMQQQ2BPIdJ6MSmTK+Z7LiMH9Hl7/fCl+xI85CCDwIzByfvzM/vvbyP3Z5vxV+LkSLdefyPmtgkC0/pSMt0J9yREBBBBAAAEEEEAAAQT8Ckj+fRN1Lb/VITIEEEAAAQQQQCCeQNTPhJJxx6saESOAAAIIpBCQfDPTXqtVAO04PO7XsuE6AgjICHh87ndiGlHZWd/7vdXzX63PiBtzEEDgt8Do8/b7rp9Xo/dnmveT/d/fIub5NwuuZBWI2J9SMWetKXnJC0j13O468pmxIgIIeBTYPStW7/doQUwIeBJYfbZO3OfJhVj2BE70R7Q19wS5GwEEsgh4ObuyeJIHAgjUFfBynlrGUbf6ZI4AAgggYCpg+ea3u3cPbnftyPf3XBhDAAE5gcjnxD32EZX7Pdlevxlky3c3nzcvxhFAoC0w8vy17/7f/0buzzQno0UvJ8byCGR6DmdzyVNFMpEUmO0jy/mSebMWAgjYCVieI29726mwMwJ2Am/PhcdxOy123hXw2E/aMe0acj8CCMQU0D5rVveLqUvUCCBQWWD1vMt0X+X6kzsCCCCAgKFA1DfTHlnUnCTi7rkwhgACsgISz6ynNUZ0PMV7IpY3gxN7Rl3zzYpxBBDoC7w9+/27a33JPaPFW06M5xB4e84zj+eoIFnMCmTu6XtuszbMRwCBMwL3ZzPL6zNarIrAeYEsz+BsHudl2WFFYLaOGeevuHEPAgj4F8h4Xt1z8l8FIkQAgYoC97Oq4uuKdSdnBBBAAAEHAhHfdHtsEfORjLlnwxgCCMgLSD6/HtYaEfIQ56kYquc/4jpixBwEEBgTeHvmequ83ZtxPJNHLxfG8ghkfA5Hc8pTRTJ5Exjticzz3owYRwABWYHM58lTbrJ6rIaAvMBT31a9Jq/LijsCVfvwO+8dP+5FAAFfAt/PdrXffVWCaBBAwFJg5fyTjHdl/2z3SHqyFgIIIIAAAsMCEd9Qe8lFzEcq5p4LYwggcE5A6hn2sM6Ikoc4T8bwZnBy7whrv/kwjgAC4wIjz3xvtZH7M83JZNHLhbE8Apmev9lc8lSRTC6B2R5g/j//Xnb8RACBPQHOk3/+fTLYU+VuBOYFnvqQa8/P591lXps7JATudaj4WsKRNRBAQFeg4lm1krNuVdgNAQROCqycAbP3SMU/u2/G+VKWrIMAAggggMCUQMQ31V6CEfORirnnwhgCCJwVkHqOPawzIuUhzpMxvBmc3Nvz2m8ujCOAwLzA2zPfWvHtvozjLYvP9Wj59nJhLI9AtL6UjDdPFWtmItkLrPX7i281O4qsEZgT4Nz4fW6MeswpMxuBvsBo3zFv7Xn9uPUrwKiEAP1Jn0n0EWucE+As/M+Ws2r9vfTb7lynsjICCEgJfD+z2r9nyEHbrLWflCXrIIAAAgggMCXQemPyfL2XoOe4T8fWc2EMAQTOC5x+xjXXH9HSjEd7r7f8tePxsN+bCeMIILAu0HvGW6v27sk61rK4rkfK+4qZn7kFIvWkdKy5K5s3O+k+YL32P9Tn7SIyQ2BNgPOifV6s2KxVgbsQiPc/HF55PrzdQ9+dE/BWa4t4zumyMgLrAt/Pwvoqse/8NuB3PgfH7maiR6At4Ol8a0c5N+IpJ4tY5rSYjQACCCCAgKCAxRvf6p5vaa+um+G+NxvGEUDgvECGs+TK4aP1+b2nds3N+rOX++WTNfenvN48GEcAgXWBp2fuutZa9Rqv+DODSSsHrucSqPh8XjnnqmSdbK768VP2H9ifPOt0FZkiMC7w9Kxwbf48GhdnJgJ/BXjm5p+5XbO/VeCKlMBubTLcL2XJOghICnw/W5LrRlrr24DfZd97I/UBsSJQQcDLGSdl7SUfqzikHFkHAQQQQACBaQGrN7+VfXvJrayX6Z6eDWMIIKAjkOlM+eQyopYt5+983vL/npv99zcLxhFAYE/g7Qzprf52b8bxlkekXFs5cD2XQKSelI41VyVzZiNdc9bb+0f5nF0WP6uMfe2pKhl9veXkqd7E4k/AW78Sz9j/LdZfJ/mNiJ6ipyy6k76b+7vIokYWe9IXc30h6WVR75E9JXP0tNZI7ifneLKQjOWkmdTakvmeWKtKnifsWPP5PUyqp1gHAQQQQGBQINIbUi+lSHlIx9pzYQwBBPQFpJ9xy/Xe9CxjO733W+6f8dMxeFh/xIE5CCCwJ/D2rPdWf7s343gGj14OjOURyPj8jeaUp4o5MxmtI/Oe/wHjlEvOboub1ak6W6/rpSLWDtX291J34vAjUO0ZiJavn06JHUm0up+IN3YFY0Z/oo5Z14xZ4fmos9YvUl7zVTt/RyS/mVjPy/V3mIk10tx+1j5GvXtKKXnPk/j0/m+5Uj3FOggggAACgwKR3uR6KUXKQzrWngtjCCCgLyD9jFuuN6JnGd/pvd/yP72/h/XfDBhHAAE5gdYz39uhdU/m6xk8ejkwlkcg83P4llueKubK5K1ujOv9I8ibda7Oi5fNW30ij1tXI7Jdhtit68/+9gIZ+rhSDvYdEzuCSr3SyjV2BeNF36oD15//zopX4fGIqflzza1dxit4dqa1w8n9z8r1Vz+Zl/Xa/cztRq1dZvaXUprZk7k+3wuk6iLVU6yDAAIIIDAoIHWAa6zTS0ljf6979FwYQwABfQGvZ8VqXG+Cq+tGua+Xf5QcVuLs5c0YAgicE3h6Xnu7Pc2vcK1lEiX3VvxczyUQpR9PxJmrkrGzOVFf1tT7B5rY3Rc3+uw9blGZ7KbR8rPoAfa0FYjWo8T7+7OGbffE3Z0++uffuNWLFzn99vvcGvGIV+X3iEfyZs58r5wwe6/muRkn8vG05jm5/sqeDKRj6WeuOyqdm9Z6Ukpa8bKPj/eKXh2keop1EEAAAQQGBXqHspexXipeYrSMo+fDGAII2AlYngvSe48oSu/pZb2quY/kzRwEEJAXeDr7ers8za9wLbpJL37G8ghUeBZbOeapYsxMWnXhuv9/HOnVKGY3xoy6V4cMY5pVyeCVPQfNfmAvPYHsfVs5P70uir9T5T65co9fxRgZXN78nPt7K0Z136Ok7nN19+b1XmH5Gd4MpOORFxtbUToPT+uNCZyd5cljJRYpnZW9uSf2+0SrflI9xToIIIAAAoMCrQPZ0/VeKp7i1I6l58IYAgjYC2ifCaf3exM9vb/l+m+5f8ZXaUaJAAAgAElEQVQt4zux90jOzEEAAXmBp+e5t8vT/CrXWi4R8m/FzvVcAhF68VSMuSoZJ5tT9WRdX/8QE6cj40aavec1KpPdMFt+Gj3BHjoC2XqTfNqfQXQ6KvYu9A//BXeNDqbP2udUz0ajNqf36OXH2FpfWLqd7pfv9S3z1Nj7O1fN3zVys9pD0/G+l1XO0vve81p9LR0X68V7v7hqttpD3IcAAgggsChwHcCef/ZS8xz36dh6LowhgIAPgdPngOb6I6Ka8Wjv9Za/djyn9nvLk3EEEDgrcH+233a7z6/0umUTwaAVO9dzCUToxVMx5qqk/2xO1ZF1ff8ji//OjBth9t4/WZnsdtnzO9kbrH1WIHtvkl/7M8nZzoq9On3DF9xPdzA91j6bejan63J6/V5ujK31hBe3071zre8l31NxXHlq/zyVj4d1tS0/+3nIWzIGKUPJmFiL9wypvmQdBBBAoIRAhDfOXiEixH8qxp4LYwgg4EPg1PNvte6IqlVsGvv28tfYX2OPXo6MIYCAXwGN88HbHq1qeIvzKZ5W7FzPJfBU+yrXclXSdzZVeoo82//o47tDY0aXvd9OVSW7W5X8TvUH654TqNKb5MlngdmniJ7hC+6zPTMzn/5qn0ktmxlfj3NbeXF9vhc8m2n0nuf8JWLTMHzaQyJ2r2s85XvqmleD3bikvHbj4P487xlSPcU6CCCAAAKDAt7fRN/S8B7/yfjebBhHAAEfAifPAe21R0S1Y9Lc7y1/zVhO7fWWI+MIIOBT4NSZ4HndXiU8x/2JrRc7Y3kEvPfhyfjyVNFvJifrx9rx/rHFb6fGjKzCMyBdmQpmlXKU7g/WOydQqS/J9f3zyblOi7kyPcP/7eFU59Jb7+fRk9Gpemis+5QP19b6IIrbyb6KYrAa50m73tqr8Ua5r5e71FgUi5U4Mcp9Zq/0xO49Uj3FOggggAACgwK7B/fp+1tpfPb9jJ3e3+v6LReuI4CAPwGv58hqXG/Cq+tGuO8t9894hDxaMY7kxxwEEPAp0Hqus19vVcN73q24uZ5LwHsfnowvVyV9ZXOybqwd/x97fHVr3GgqPAtS1algVTlHqT5hHXmByn1J7u+fV+Q7LuaK9ApfcD/RufTV+xn0ZHSiFhprPuXCtbUeiOh2qsciWszEfMrtbd2ZGCPOfct/dzyiyUzMuz7X/TN7Mjf3+8XVE/xEAAEEEFAS8P7G2mLwHvfp+FouXEcAAZ8Cp88EzfVHhDXj0d7rLX/teCT3e8uNcQQQ8CsgeRZEW6tVFc95tGLmei4Bzz14OrZclfSRzemasX6ef3Tx0bGxo6jwPEhUqIITOfLlSIlnRXINejLP+/XpWkr2XdS1ThtHWD9q7bzGHaHmHmP0Ws+3uDxaEpP+54C3PlkZz17HFROJe7K7fvKTcLqvUcFN0q6KF3m+v9/cnyVeI4AAAggcFvD+5tRK33vcJ+NrmXAdAQT8Cpw8EyzWfpO2iElrz6y5v+XFOAII+BbQOgM97tOqjMdYr5haMXM9l8BV74o/c1XSPpuKPUTO7/+Q8mZk37lxI3izzTC+W50MBuQwd87s9gz37wvQs3M9i9eZL0Htd7LeCvQAPSDZbfTT/Bks6a+1FnWer3MVM8kezG4maTWzVnbXK78Zk7e515oVfr5ZjI5XsCLHsffC0Z5hHgIIIICAkIDnN6heip7jPhlbz4QxBBDwLXDybLBY+03bIiatPTPm/pYT4wgg4FtA6/zzuE+vMh7j/cTUi5mxPAJe+08jrjxVtM1Eo1bsMfaPFlGdbDs47u5R6z0T9051ZvZhbq4zZqdvuHddgOco13NkUc/17ot9p4W1tz1jV9BP9N7qGiEeP9UbjySCKzHafiYY76b+zOx17Gd/bjS765WflOC1XpWfuNmenxn7TKqnWAcBBBBAYFDA85tJLwXPcZ+MrWfCGAII+Bc4eT5orz2irR2T5n69/DXjkNirlwtjCCAQQ0DiLIi6Rq9CXnPqxcxYHgGv/acRV54q2mWiUSf2qPOPO3adHHPnCs/GamUq2JBj/2xc7R3uWxOgH/v9iM+cz1oXxr2L/uB/XC/RvfTR3Dnz8ZJw116DOs/XuaqZRG9mt5MwWlkju+uV34rN9z3XOtV+fhvs/F7NjXzb7487fcS9CCCAAAILAp7flHrpeI77ZGw9E8YQQCCGwMkzQnPtEW3NeLT3estfO56d/d5yYRwBBGII7JwDke99q47H3N5iZjyHgMfe04opRwVtstCqEfu0/4Eis41NV8fbNXMPXLnNVuW6j581z46nus/2EPPnBZ7cucYzuNsD850Y945dqwz3x62ej8gz9IB2Dj4qNx6Ftg/75XkfH++yvzOz98HfjHWuZHe98tvRvNao+HPH7fveinbk/Pze9d0X/I4AAgggoCDg9Q2pl7rXmE/H1TNhDAEE4gicPiu01+/Ja8eiuV8v78+YZiy7e73lwjgCCMQQ2D0Lot7/Vh2Peb3FzHgOAY+9pxVTjgrqZqFVG/Z5/keJSi66nR1ztwr9MFOZCh7kuHY2zvQRc8cF6Me1fsRtzm28I+POpCdi/pe0vXQc/TN3pny8vNRuJA7qO19fzP6ajfTafU4Fx3vOWq8r2H5yXPWs4tPKc9Xtfl9rfa7/PSOzm9x7g9cIIIAAAocFvL6xtNL2Gq9GXC0TriOAQDwBjTNDa483fa04rPbp5W8V08y+vfgZQwCBeAIzz3+mub1KecyzFy9jeQQ89p5WTHmqqJOJVl3Yp94/trRqrtPZcXdpuWW6PlqdTDmTi/wZONpHzBsXoE/l+xTTtul4Z8acSe3XvwQXs+JyUdM77XOjZSOnf36lVg5cn687ZvPnbAWz80/x8w4VbD85Pmffv1rFppdnX2h8tLcHY7XeR8a7hpkIIIAAAiICXt9oW8l5jVcjrpYJ1xFAIJ6AxpmhtceIvlYsFvv08reIZ2bPXuyMIYBATIGZMyDT3F61PObZi5exPAIee08rpjxVPJ+JVk3Yp9Y/sozU+3x3x91hxC/6nJHqRM+R+HXOvZFeYs6YAD2r07M4/3Ye686Ys6j12pfgYlZbLmr65vcZMeohV4GzK43mw7y1PqjqNtO1FYxmPCTnVrD95DhrVsXlLc9Zt9b8t30Yr/P+0eoRriOAAAIIHBLw+CbbS9VjvFox9VwYQwCBeAJaZ8fpfUbkT8dguf5b/pax9fZ+i5txBBCIKdB77rOPtSrmMe9WrFzPJeCx97RiylXJc9lo1YN96vzjymytz3V37JVnHSPOf6tQxJyI2e6se+snxt8F6F+7/q1u/96dcWdUr+0n/7jVs4mcnlk7i22qNb8r9V2rL25jbqMdWcFz1EJ6XgXbT44zblVMRvKccevNHdmLOWPnZnSnXp8whgACCCBwQMDjG0crTY+xasbUcuE6AgjEE9A8OzT36lVCMw7NvXo5f8Y0Y5nZ6y1uxhFAIKbAzDmQbW6rYh7zbMXK9VwCHntPK6ZclZTPRqsO7FPjH1R26yzf4fFX3DWNcn+vUlFyIE4/51yvnxjrC9DHfvq4ci36XRpztHI9r9xjVs4m6suMn+Nnsk2l1nalruN1xWrNarQzK/iOWkjPq2D7yXHUrYrHaJ6jbm/zRvdj3tpZGsntrVcYRwABBBAQFvD4JtFK0WOsmjG1XLiOAALxBDTPDs29epXQjEN7r4h592JmDAEE4gpon3/e9nuqnLcYP/E8xcm1fAIee08rpnzVlM1Iqw7sk/8fUyRrLNvlsVeTdPW8VqtKnmMmNt/nWqunuN4WoKd993S1+rQ7NeZItfo95RuzcvpRP9lxrX8+61dpfUdq2a8lPrI+b51awfvN4NR4BdtPjiN+VSxm8hxxG5kzsydzZc9Xb54j/cIcBBBAAAFBAW9vBJ94Wul5jFUzppYL1xFAIK6A5hmisddbJTRisNyjlb9lTE97t+LkOgIIxBd4euYrXWtV0JtBK06u5xLw1nea8eSqpFw2mjVgr9z/iHKqvnLdHnulU77e1r1XyVt8xBPzHLv3Fa/bAvR4zB7PXrd2x8YbyV6rkfziVc0m4hFL5vyc2TZVWtuVuv3UDQs9i163VqhDL/+TYxVsPzm+GVZxmM3zzW10fHZf5uudvdrWoz3DPAQQQAABIQHtg/5tv15ab/dmH+/ZMIYAAjEFsp1bb1XIlu89n17+97mWr3txMoYAArEFLM8WD3v3quchviuGXpyM5RG46l3xZ54qymVSsQ/IOeY/4sh1fdyVqvTuvUJV8ibP82fTvbd4/VeAPjzfhxivG//t2JhX6IH3L8HFrKxc1PTI/Dkhp39+Jeo7X1/MZMx63V3BuJf/ybEKtp8ce4ZVDFby7LnNjK3szT0yZ6s3x5m+YS4CCCCAgIBAlDcCb3FqxiNQZpZAAAGnAppnidZePWqtGKz2iZJ7L07GEEAgtoDV+edl3171vMT4iaMXJ2N5BDz1nHYseaq4n4m2Pfvl/EcT7brud37sFbS9rfb7rpJVDOyb98z67i9+/y1A3+ft+0y1/d21MV9lqsdqLjErpxP1qmnl+3QqI7NL5TqRu5/PGU/dXKE+T3lrXKtg+8mxZVkl/9U8W26z11f35z4/Z7NULWZ7h/kIIIAAApsCUge4xDq9VCTWj7pGz4UxBBDIIRD1fHqKe6QiT/dludbL30uOvRgZQwCB+AJezhqLOHrVs4intWcvTsbyCLTqX+F6niruZVKh1uSY7x9orprudX/suy+D7D+vKmXPk/zszqmrx/j5I0A/2vUj9vP2P50b8zdq3v4SXMyKykVNb+Q9D6jtfG0xO2f2dGpV8H7KW+NaBdtPji3LKvmv5tlym72+uj/3nTtrrWxne4f5CCCAAAKbAlYH/tO+vVSe5le51nNhDAEEcghkOs9GKpIp33suvfzvc7Vff2L77NmLkTEEEIgvoH22eNqvV70ocfZyYCyWgKee044lVqXORKttzn75/qHES03PPCG+V/VifzqOqwqn92H92ufT1Wf8/O//HsPzUPt5iFj/yM9uRG/pmCPX71Ts0sZV1jtVD8l1q9SCPGN9lrj3eIX63XPWel3B9pPjk2eV3HfyfHJbubYTA/fGOr/f6rXSP9yDAAIIILAh8HYwa42/paAVh8d93mwYRwCB+AIez56dmN4qsrN2hHt7+VvG34uLMQQQyCNgec5Y792ronVs3/v34mQsj8B3zav9nqeKa5lUqzf55voHmqd6rj0Jce96Msh47VOhjHmRk78zKe5pIBc5femvL6nJeE3kngTdlajx85fgdKvgazd6Yvy5/7byVcXnaL7j5fe1OuN2zu27ays4f+er+XsF20+Od9Mqee/meXdbfb0bB/efO2u1bVd7iPsQQAABBBYFtA/61n5v4bfuq3D9zYZxBBDIIZDtPHurSrZ8v/Pp5f49T/v3XlyMIYBAHgHts8Xjfk/V9BTnU3xcyyfgqee0Y8lXzfGMtK3ZL88/jHiu5fgTkGOm51pIxvapluR6rMV51OqBHCfDXhYtG67z3ETpgb0nwObuKLYn47SR97vrSeusa/ut5k9kWe3JK9dnhKtjK9T1ylX7ZwXbT4531yp57+Z5d1t9vRsH9+c521d7iPsQQAABBBYFvLyJvoXvJU6LON5sGEcAgRwCFufLyT3fqnJyb+u1Peb+FhPjCCCQR8D6DPSw/1M1PcR1xfAUH9fyCVz1rvgzXzXHMqpYa3LO8w8zb7UcewpyzHqzYLxO31NruVrnOB3WsqCP5PoIS1vLtSfA7i765e+X4OyqYb8z/TB/fthXbSwCajtfW8z0za5urmB/5ar9s4LtJ8dv1yo5S+T57bbzu0QsrKF/Bp8w3+kj7kUAAQQQWBA4cZivrNkLfWW9TPf0bBhDAIFcAtXOrkz53nPpdeZ9rsbrXjyMIYBALgGNM8X7Hk8V9RTzU3xcyyfgqee0Y8lXzfeMtI3ZL8c/hkSr4/uTkGNGtLoQL+dBlB7IcULMZRGlNsTJOTLSA3Pdbz97JKfsc+yr4COC7HU+kZ+PyvWjOJE3a/J+eLIHPh19cn0va/ef3HOjXvI/Hce34Om9Mq3/7bbzeyYTctl7z9vpI+5FAAEEEFgQ8PLG1QvdS4wWcfRcGEMAgXwCFufMyT1HKnRyf8u133LXju0tHsYRQCCXgPYZ422/p2p6ivEpPq7lE/DUc9qx5KtmPyNtX/bb+wcI/Pb8+k9DjlF6ZK9H8MOv1wM5TomxLHoOjPGcRO2Bse73MSuqsWTcPiphG4WkZ4W1bKs1t3uFepBjrs8Lnw6vUNO5J1ludgXbT46XWJV8pfK83HZ/SsXDOvHP991e4n4EEEAAgUkBL2+evbC9xGgRR8+FMQQQyCtgcd6c2vOtSqf29bBuL3fN+HpxMIYAAjkFNM8Yj3u1quol1lZ8XM8l4KXfLOLIVcl+Nha+7Bn/H0Gi17D/VMQfjV4f4ueM8N4D8U+J9wy814D4OCd2euD9CfAxYyfHLPf6qIRdFFnqqJWHXaXmdtbyYB/eK+mBtR6Ye6LlZlep10esSq6SeUp1mmRMrLV2xnhxk+op1kEAAQQQGBSI8AbgJUbtOAZLyDQEEEgooH3enNzvrTwn97Zeu5e7Zmy9OBhDAIGcAppnjMe9WlX1EmsrPq7nEvDSbxZx5KpkOxsLW/aM/Y8fmerXfjLij2SqE7lwZnjsgfinxHsGHt2JifNAsgfenwL7GZL5Rl3Lvgo2EUStl3XcNtWa29XaiP15L6UH3ntg7qmWm12lNh+xKrlK5inVaZIxsdb7eeLZSKqnWAcBBBBAYFDAy5tCL1wvMWrH0TNhDAEEcgtonzen9+tV6/Telut7yLsXA2MIIJBXwPLs87B3q7IeYvvE0IqP67kEvPSbRRy5KvmcjYUre8b+h4+M9Xt+OuJfzVgrcuL88NYD8U+KdgberImH5/9UD7SfAh8jp/KOtK6PSuhGEak+XmLVrdD6bl68iIP3VXqg3wPrT/nendSlX5fqPnvd9XN3dUfy/3nOfrqC3xBAAAEEVASs34RGkrSO0Wr/ERvmIIBAXgGrs+fEvr0qndjP05qt3D8xfsZOx9ran+sIIJBb4PTZEmH9VoU9xN6Kjeu5BDz0mlUMuSr5NxsrV/b9+UcELPxY/H1C4l+hv/z0F7XIW4v4J8VzBvRs3p6lts+1fX4SfFylZvX+x/XU/Pk5fXPx8cT2o3jLgfG12uOG24ke6D/N50ZP5MKaeZ4Rqc6jJ/L0xG4tpXqKdRBAAAEEBgV2D+7d+9/C3F0/8v1vNowjgEB+gchn2HfsI5X6np/t917+p3Pt7c0YAgjkFTh9tkRYv1VdD7G3YuN6LgEPvWYVQ65K/s7GypR9+QcUzz3w+ymJ/8qzNbFxFmTpgfgnxXMGWepDHpw1Mz3w/DTYX53JIetc+yroRZC1hqfz0qvQ+k6nDVif9zx6QLYH1p/2vTupo2wds3nuddfP3dlcyGf9ufnpCn5DAAEEEFARsH7TekvSOj7L/d9sGEcAgfwClmeQ9N5v1ZLez9N6vdxPx9nbmzEEEMgrcPpsibB+q7oeYm/FxvVcAh56zSqGXJX8nY2VKfuu/4MDduftfj8l8V/RM+d7BmOMPz0Q/7T4mwG9TW9X7IG/T4KPKxVrcc/ZRyXOR3HPm9djZ/H5ysjsQD3H6okTTl56QObJn1/FS/7E4fNZnO+o5zuor8/6WtTluUO4igACCCBwTMDisP/es5fY97yKv/dsGEMAgRoC2c6+XtWy5fqdj2Xevb0ZQwCBvALfZ1DV31vV9eDRio3ruQQ89JpVDLkq+ZONlSf78o8nEXrg50mJ/1sEb2LkXMjSA/FPjJ8MstSEPDhfVnvg52nw8dtqHpnu81GJ81FkqplWLuerIrODlgf78N5HD8j1gMzTP78KNZSrYUbL+Y56viOjDTmtPTvPHcJVBBBAAIFjAtZvWL3ErGOz3r9nwxgCCOQXsD6DTuz/VrUTe3pY0zLvt70ZRwCB3AIezkCrGFqVtYrne99WbFzPJfBd82q/56rkf9lUqyH5rv3jRnW3LM9+9TqSP8+/Zg9kOTc+eWi6sRfPqcce8PY8ezTSjslbTU7Eo22aYb8TdTixZgZrcuD9umIPnDgPRtasaE3O42fMSA+NzMF83Dy71Ui/MAcBBBBAQFDA+o2ll4p1bNb792wYQwCB/AKfM+iTpfVZJL1/r3LSe3lazyLv3p6MIYBADQFP56B2LK0Ka8fxtF8rNq7nEniqfZVruSqZ7/N4lT4kT/1/dMry7NM7+r2DeV1zzo26tee5z1d7b88zPfbfvy14q4tkPNR4/hyR9D+9FvWdry9mmHnogdNnQ2t9D7kTg99nsNU3s9epsd8aa9dmtneYjwACCCCwKaB90N/364V/n1vtdc+GMQQQqCOQ7ewbqVy2nK98erlfcyR+9vZhDAEEaglInClR12hV2kM+rdi4nkvAQ69ZxZCpklaG7Ms/mETtgc/z/4k98jkQ1Z64OTci9wBnBv0buX+J/ad/PT3L1CX257G3XqK+P8/diMWbp7fxkZyYM9cDeOGl1QNW54lWfuwT81mS6kvqH7P+J+om1VOsgwACCCAwKHDiMJ9ZsxfmzDrZ5vZcGEMAgVoCFc+3bDl/59Pq3u85u7+39uA6AgjUE9g9TyLf36q2h5xasXE9l4CHXrOKIUslrfzYl38sid4D0c+A6P7EzxkSsQcinxsRvYmZc+JkD3h5nk/mGGVtL7WQjiOKv5c4pf011vNiRxy8X9ID8z2gcUY87UGt5mtVyeypZ1auVTIj1/4ztdI/3IMAAgggsCFg/cbUC906Nsv9ey6MIYBALQHLs+jU3m8VPLWvh3VbuUvG1tqD6wggUE9A8myJuNZTxT3k8RQX1/IJeOg1qxgyVNPKjn37/3iATxyfyOcAfRanz6hVrlpFPTfow1x9SD1l6unheaaWOf8L7tR17hn18CzOxEB95+qLF14ee2DmmZec69GCmPw8o1K9Rk391NS6FlI9xToIIIAAAoMCng9+69gs9x8sH9MQQKCQgOWZdGLvt9Kd2NPDmq28JWNr7cF1BBCoJyB5tkRc66niHvJ4iotr+QQ89JpVDNGraeXGvvwjSaYeiHwOZKoDuXCuROqBiOdGJF9i5TzQ7AEPz7Nmvl738lAHyRi8OnuOS9JfYy3PlsTG+yg9MNYDGmfF0x7UZ6w+VZ2eemblWlU/8v77fK30D/cggAACCGwIWL8Z9UK3js1y/54LYwggUFPA8kyS3nukgtJ7elmvl7tUjL09GEMAgVoCUudK1HWequ0hl6e4uJZPwEOvWcUQvZpWbuz79x8LMIltEvUsoO9i9x31i12/SOcGvRa716jf2fp5eJapca7/gjv1nH9mPTyHszFQ5/k6Y4aZtx6Yfe6l5ntzIB5fzyZ95qseGZ4PqZ5iHQQQQACBQQHrN49emNaxWe7fc2EMAQRqClieSSf2fqviiT29rNnLXSLG3vqMIYBALQGJMyXyGk/V9pDPU1xcyyfgodesYohcTSsz9uUfWrL2QMTzIGstyItzJkIPRDkzIlgSI8+8lx6weq695G8Zh5W99L6WhlH3lq7B6fWiOhM377X0wN8eOH1etNanFn9rgcmPSatvZq9j+mNa3WK2d5iPAAIIILApYP3G0wvfOjbL/XsujCGAQE0ByzPpxN5vVTyxp5c1e7lLxNhbnzEEEKglIHGmRF7jqdoe8nmKi2v5BDz0mlUMkatpZca+/ANJ1h6IeB5krQV5cc5E6IEoZ0YES2LkmffSA1bPtZf8LeOwspfc19Iv6t6S/lprRbUmbt5r6YG/PaB1btz3oRZ/a4HJj8m9X1ZfY/pjWt1itYe4DwEEEEBgUcDyjectZMvYrPd+s2EcAQTqCVifSyf271XxxH5e1jyZd29txhBAoJ6Al3PPKo6nilvF8r3vU1xcyyfwXfNqv0etZrU6kS//KKPVA9HOBC0X9uEZpAf+9kCU84La/a0dJpj0esDi2e7FU2XMwl1yzyp1ksxT0l9rLcn8WYv3InrAvge0zo77PtTevvaea3Dvl9XXnnMkNt1nYLWHuA8BBBBAYFHA8o3uLWTL2Kz3frNhHAEEagpYn03S+79VUXo/L+v18t6JsbcuYwggUFNg50zJcO9T1T3k9RQX1/IJeOg1qxgiVtPKin11//EBbxvvaGcCfWLTJ7jj/t0D3s+N71j5fb93T9ab+uzXR8LwZI1ba0vEHX2Nlk2E69HtLeKPUNd7jBZO7OnjfYE65K3D/TnXek1P5e0pidpK9aFELKyRo1eleop1EEAAAQQGBSzfQHshWsblYe+eDWMIIFBbwMMZJRXDSCWl9vK2Tiv3nThba3IdAQTqCuycKRnufaq8h7ye4uJaPgEPvWYVQ8RqWlmxb45/1KCO73WMdC5Qz/d6YoTR6R7wfmaczj/7+tb1ze7rMT+Lmnt00I7Jwl1iT22nDPtJuFuskcGeHPhcTA/87gGLs+SzJ3X4XQc8fntI9SWuv10re0j1FOsggAACCAwKWL3p9MKzisnTvj0fxhBAAAFP59VOLCOV3Fnf+729/Fdi763HGAII1BRYOUsy3fNUdQ/5PcXFtXwCHnrNKoZo1bRyYt+xfxTZ6SeMx4y1nHZqqXmvlgf7nOnP1V6hHmfqseq6WkeN+1ZzqnifRj0k96hYI62cJes0upZWbp73GbXyNM+zp9fYPNVvNhavpsTV/lw4W+NrPqZt02w2V821f2ZzJB/ZZ0aqH6mLbF0ie0r1FOsggAACCAwKWL1p9MKzisnTvj0fxhBAAAFP59VuLG/V3F3f8/293Ffi7q3HGAII1BRYOUsy3fNUdQ/5PcXFtXwCHnrNKoZI1bQyYt/2P4ic7B/c2+5aNifrK7W2lgX7yPSjVN3v61AfmfqsOt7r4eX1aj7V7vNSr9U4qtVLI9/VWuzcp5GX9z12/EY7T/sAACAASURBVCzu9e7pMT6LOkns6dGSmJ4/+0nU+2kNvJ+9M7g81VvjWgY7cjj3XEj1IDU6V6NotlI9xToIIIAAAoMCVm8UvfCsYvK0b8+HMQQQQMDTeSURy1tFJfbwuEYv75V4e+sxhgACNQVWzpJM9zxV3UN+T3FxLZ+Ah16ziiFKNa18Ku/rvTcq10Yrd+898IlPy4J9xv9h1FvfULvx2u1Yeas750O/7h7rJRnTTi9Xv1eyDjNrVXf/5D/jZT2XevXP2Ccf65rt7P+UD9fme0DCbKeOJ++VyI01avUU9bapdxR3qfMqSr7Eef55kOop1kEAAQQQGBSwenPrhWcVk6d9ez6MIYAAAp7OK4lY3ioqsYfHNXp5r8TbW48xBBCoKbBylmS656nqHvJ7iotr+QQ89JpVDFGqaeVTcd8oPXHFWbFGmjlfzl5/alqwV/sfHb32x3dc1K9dPymbb28Pv0vllW0dD7XRiiFb7U7mo1WT1j4nc4uydsvG2/Uonp7i9FbD2Xg8WVaLZbZW1vOr1SdDvlY9k8GOHM79fSnVl9ToXI2i2Ur1FOsggAACCAwKWL1R9MKzisnTvj0fxhBAAIGPgKczazeWkYru7uHx/re8Z2N+W49xBBCoJzB7jmSb/1RxDzk+xcW1fAIees0qhijVtPKptG+UXmjFWalWmrm2vL1c17Rgr+d/HPXSC6NxUMfnOkq4jNZAa55ETtnW0LL3tE+2Gp7Ix0O9TuQVbU0PdXiLIZqph3jfTD2Pf/w+8XlwrBaD574Yia1avSLnO1LPE3MimxH7ub8nL1upnrvW4+f5mnk3luop1kEAAQQQGBSwemPohWcVk6d9ez6MIYAAAh8BT2fWbiwjFd3dw/P9rfxnY26tw3UEEKgrMHuOZJv/VHkPOT7FxbV8Ah56zSoG79W0cqmyr/f678RXpYYaee7U4fS9Gvmzx+9/DD1dU831qe3v2u56aNZuZK/dfLLcP2JVYU6Wekrm4anuknlFXctTPZ5iiepqGfeTY6RrlnYV947UG7OxVqxnlJxnayk1P4oPccr+vTjqSZ/ZuI/WJ+I8qZ5iHQQQQACBQQGrN4teeFYxedm3Z8MYAgggcAl4ObMk4rhy6v2U2MfrGlJ599ZhDAEEagp4Pfe04nqqutbevX2e4uJaPoFeD2Qf817N7P4W+XmvuXR8FsbZ9pSuieR62aw95yNZN29reXaPFBt19fdFBG818RJPpOfqVKxeanHFcSrPSOteFh5/RnL0EqvHOs7G5MUycxyzNYk+P3Mto+Zm1VNRvYhb5+8dqb6kXjr1iuAs1VOsgwACCCAwKGD15tALzyomL/v2bBhDAAEELgEvZ5ZkHFduTz8l9/G21lO+17XZWK/7+IkAAgh8BGbPkGzzn7rAQ45PcXEtn4CHXrOKwXs1rVyy7eu9zlrxZaurZj5aNZrdR9Og6l6zNYk8v2qNpfL2VnupvKKu460eHuOJWtuduD3W4RPTTk5Z7qU2eb6E5bWWs3Fleba85TFbh6zzvdWlajxW/VXVm7zH3uul+rK6t5Qj6yCAAAIIIDAtYPUm3AvUKiYv+/ZsGEMAAQQuAS9nlmQcV26tn5J7eVqrle/n+mic19zeWowhgEA9gdEzJOu8p4p7yPUpLq7lE/DQa1YxeK6mlUmWfT3X1jq2LDXWzMO6Zq39NQ2q7dUyr3C9Wq2l8vXUG1I5RV3HUy0ixBK1zrNxe67FbC4Z53utT0brkzl5reNsXCeNqq49W4Mq86v2g5e8rfrMS/7EMfaFc20nqb7UjtvbflKOrIMAAggggMC0gNWbYi9Qq5i87NuzYQwBBBC4BD5n1ud3L2eXRBxXbq2fEnt4XKOV70x9e2swhgACdQU8nnmaMT1VXnP/1l5PcXEtn0Cr/hWue61mBfuTOXqtq7e4TtYg69rU0Oc/AEv2m7caW8UjaVppLat63fetZH7P9W7B6zGBu2O212MKdrOyea/kY6f/vPNKDtXveZaMd7V6HaXzj9cBNhFLu7Pe2N+tNtXO9W/l9NpYr804SfXlzJ5Z50pZsg4CCCCAAAJTAlZvrL0grWLysm/PhjEEEEDgLuDl7JKI457b/bXEHh7XuOd5fz0S8/0eXiOAAAIfgZHzI/Ocpy7wkO9TXFzLJ+Ch16xi8FpNK4/o+3qtp+e4otdcO35vtdTOP/t+3urrIZ7sNT+RH3WT/5LHaJ082EeOYdQ50rwo9YhkeipWT7U6lWPmdT3VbzeWzHXSzm23FhXv165R9f2seqy6e6X8Wz12GXzGP79f875/v66t/rz2qPxz1Y77EEAAAQQQ2BKwevPtBW0Vk5d9ezaMIYAAAncBL2eXVBz3/L5fS+3hdZ3vXL9/H4n3ez6/I4AAApfAyPmRec7l8P3TQ77f8fB7XgEPvWYVg9eqWnlE3ddrHSPFFbX22nF7q6l2/ln381ZXb/FkrfupvDzU71Ru3tf1YJ8hBu91Ho0vUi1Gc8o8z1O9MjufyM1T7XZjOeFTcc3dOlS/v2LPWOVs1WtW+bLv+v8Q16pXdval3j//w4EdR+5FAAEEEEBgWsDqTbgXqFVMXvbt2TCGAAII3AW8nF2Scdxz/H4tuY+3tb7z/P59JM7v+fyOAAIIXAIj50fmOZfD908P+X7Hw+95BTz0mlUMHqtqZRF5X491jBhT5B7Qit1bXbXyzr6Pt7p6iyd7/aXz81A/6ZyirOfBPkMMUerdizNaHXq5VBnzULMq1pJ5eqibZAySNpXXkqxJ1bUq949m7lb9pZkje61/qf3JzqpnVvZ9ir/atRU37kEAAQQQQGBbwOoNtxe4VUxe9u3ZMIYAAgjcBbycXZJx3HP8fi25j7e1vvO8//4W630+rxFAAIGPwNvZkX38qQs85PwUF9fyCXjoNasYvFXTyiHqvt7qFz2eqH2gGbe3GmvmnnUvbzX1Gk/W+p/Iy0MNT+TlfU0P7tli8F7zVnwR69DKpdJ1D3Wr5C2Rq4eaScYgYVJ5DclasNZ/ApX7SSt3q17Tyo99xr/cbtULJ/el/vwX3E/2F2sjgAACCHQErN6EOyHxRZweDmMIIIDAg4DVWX5q34cU/1w6tbflun+S/P8XRmJq3ct1BBCoLTByfmSe81R9D/k+xcW1fAIees0qBm/VtHKIuK+32mWKJ2I/aMbsqdaaeWfcy1MtI8SSsQdO5OShlify8r6mB/eMMXiv+z2+qDW451HxtXXtKprv5GxdrxP773hwL18iPNGT15r01/iXlGetLmPtn7NxMj9fD2j0HH3De5NGn7EHAggggMCDgNWb8EMo/3fJKiYv+/4fBL8ggAACgwJezi+pOEbSltrL0zq9vN/i7N3LGAII1BV4Ozuyjz9V3kPOT3FxLZ+Ah16zisFbNa0cou3rrW5Z44nWF1rxeqq3Vs4Z9/FUx0ixZOwF6Zw81FM6pwjreXDPGgP1P1/ZCManYzyv3N7hdG7Z1m9LxhzJVh/tfGJWPV7U2nWtsp9VJ1Tx9ZinVc0t9vXorx2ThTt7IoAAAgggYPZfS+/Ra78Je9uvZ8MYAggg0BLwdpbtxtPK87q+u77X+6/87j/f4r3P5zUCCCDwEXg7O7KPP3WBh5yf4uJaPgEPvWYVg5dqfvL/xGLlEGlfLzWrEkek3tCK1VPttXLOto+nGkaMJVs/SOfjoabSOXlfz4N59hg890AGe8++WrFZ1VErvyz7WNXp9L5Z6qOZx+masP5fAc36Vtnrr7LOlSq+nvLUqayvXTz5W8XiqyJEgwACCCBQRsDjG59VTF72LdN8JIoAAqICXs4wyTh6QJL7eFqrlfNbjK37uI4AAgi8nR+Zx5+q7yHfp7i4lk/AQ69ZxeClmlb5R9rXS60qxhGpTzRi9dQDGvlm28NT/aLGkq0nTuRjXdsTOXle09q7yv4eeyCLvUdb7ZgsaqmdY/T9LGqktWf02mjHr1UX9nkW0K535v2ehc9fzWzqKbfzlfS9g6daWMXiu0JEhwACCCCQVsDjG59VTF72TdtsJIYAAkcFvJxhknH0wCT38bZWK+9enK17uI4AArUFeudGhbGn6nvI+ykuruUT8NBrVjF4qaZV/lH29VKnynFE6RXNOD30g2a+GfbyULMMMWTohdM5WNf5dH7e1rf2rrS/l9pnM/fiahmHZk0t84y6t2Z9tPeKWhPLuLVrxH5/BSzrn2nvv7I6VzIZesxFp4r+d/FYG+2Y/FeJCBFAAAEEUgpov+Fd+/UwrzlVf/ZsGEMAAQRaAhnPzFau1/WMOX9yuvK7/+zle5/LawQQQOAj0Ds3Kow9dYGHvJ/i4lo+AQ+9ZhWDl2pa5R9hXy81Ig7eq+/Pi4eeuMfE63/+7Rl4qFmmGHrW1ces61zN39q74v6WPZbR29LTy96adfWSc5Q4NGtjsVeUOniI06I+7NkW8NAT0WNo654die7mNf6zVYu3utc6acYVr2pEjAACCCCQQkDzze57rx7e97yKv/dsGEMAAQR6AtnOzF6u11i2nK98rvy+f15jTz+/5/E7AgggcAk8nReVrl0O3z895P8dD7/nFfDQa1YxeKiqVe4R9vVQH2L4EYjQM9ox/ujY/Kadb+T9bCqUf9fIPXE6dsvqn87N2/qW1lX3tuiBzNYWnt721Kivt5wjxKNRF8s9ItTAS4yWdWLvtoCX/ogaR1v27EhUL89xn61YzNU910srtpiVI2oEEEAAgfACWm909316cPe51V73bBhDAAEEegIZz8tevtdYpbxbuV4W/EQAAQS+BVpnRpXr3xbX7x5yv2LhZ24BD71mFYOHylrl7n1fD7Uhhr8C3vtGO76/QrpXtPONup9uVertFrUvNOK26gaN3DztYeVcfV/tHsjsrW3pcb/T9fWYs/eYTtfEw/rea+AlPg+1Ioa2gJc+iRhHW/XsSEQrzzGfrVbc1T3XTCu2uNUjcgQQQACB0AJab3T3fXpo97nVXvdsGEMAAQR6AlnPy17On7FKebdyfTNiHAEEagq0zowK11sV95B7Kzau5xLw0GtWMXiopFXunvf1UBdiaAt47h3t2NpKOiPa+UbdT6cadXeJ2hcacVt1hUZunvawcmZfvf87Z3ZrT8+TVSyna2yVV+R9T9fEw/qR66MVu4c6EcO7gFY/ZNvnXfbMjGyOlvmcqVCOVS3r4mXvHJUkCwQQQACBcAJWb4Q9KKuYvOzbs2EMAQQQ6Al4Ocek4+jl/BmT3s/Lek95t2J7mss1BBBAoHVmVLjeqr6H3FuxcT2XgIdes4rBupJWeXve17om7D8m4LmHNGMb0zo3SzPXqHud02flSyBqb2jEfRlp/9TIzdMe2r7s9yNwug9+dsr922nHCOufrHCE/L3FeLIentb25u4tHk+1Ipa+gLfeiRJPX/XcaBQf73Geq1COlb3XTyO+HJUkCwQQQACBcAIab3JPe/SgnuZXutazYQwBBBB4E8h4XlbM+VPHp7xb9X2ayzUEEECgdWZUuN6qvnXurbi4nk/Autcs97espmXenve2rAl7jwt47iHt2MbV5Gdq5xptP3lxVmwJROsNrXhbXqeva+XnZZ/TnqzfFzjVB/1dc42eMoy07qmKRjLwEuupWnhc14u51zg81oyY2gJe+8hzXG3NsyOeTSLEdrY6eVaPUMvTMeapJpkggAACCIQSOP0G11q/h9S6p8r1ng1jCCCAwPdZ+KTxPZ7l96c8v69lyfOex3eO/I4AAgisCNzPlUqvW17WBq24uJ5PwLrXLPe3rqZl7h73tq4H+88LeOwj7Zjm1eTu0M412n5y0qz0JhCtNzTjfbM7Ma6Zn5e9Tjiy5riAZB+M75pnpqRf1LVOVDOqhVXcJ2rgeU0r5yj7eq4dsbUFovSXlzjbkmdHvOQfMY6zlcm1esT6Ssecq6JkgwACCCAQRkD6DW10vR7Q6BpZ5/VsGEMAgboCrTPvLtKaF/36Pc/76+j5teK/58lrBBBAYEagdbZUuN5yss69FRfX8wlY95rl/pbVtMzb496WtWDvdQGPvWQR07rg3p0WuUbZc0+Wu2cFovSFRZyzlhLzLfK03lPCjTX2BHZ7YG/32Hfv2mW4X7KCGTy0c5D0j7CWtm+0/SLUkBjbAtH6zTLetuLZEcucI+99tir5Vo9ca6nY81WVjBBAAAEEQglIvaGNrtPDGV0j67yeDWMIIFBXoHXmPYm05ka//pTr97Xo+T3F/50fvyOAAAKzAk/nSpVrLSvL/FsxcT2ngGWvWe9tVVHrvL3tb1UH9pUR8NZPFvHISM6vYpFrlD3nNbljRyBKX2jHuWO6c692nh722/HiXjmB1V6QiyDmSqtume6TrFwmF41cJO2jrKXhGnmPKHUkzrZA5P7TjL0teHZEM8dMe52tSr7VM9V+NZd8VSUjBBBAAIFwAqtvYqv3tYBW18tyX8uF6wggUFugd8Y9yfTmRx17yvP7WtS8enF/58fvCCCAwKxA73zJPtayssi7FQvXcwtY9JqXPa0q6yV/D3FY1YB95QQ89JF1DHKacytZ5+15/zlJZu8KfHrhs4bnnrCIbdd19X6LXD3suerFfXICK30gt3vclVbcst0jVb1sLqfzkXKPts5p18jrR6sl8T4LRO5Bzdif9c5f1cwxy17nq5Jvhyy138kjX1XJCAEEEEAgnMDOG9nKvS2glbUy3dNy4ToCCNQW6J1zTzK9+VHHnvL8vhY1r17c3/nxOwIIIDAr0Dtfso+1rCzybsXC9dwCFr3mZU+rynrJ30McVjVgX1kBD71kGYOs5vhqljl733tckZmSAt77QjM+SdfZtTTz9LTXrBPz5QVm+0E+gpgrzrplnC9RuYwuJ3P6mH/Wl7CPtsZJ16hrR6sh8b4LRO1FzbjfFc/M0Mwxw15nqpB/1Qy1380hf5XJEAEEEEAgjMDum9ro/S2Q0fszz2vZcB0BBOoK9M68J5Xe/MhjT7le1yLn1Yv9yo+fCCCAwKxA72zJPNZz0s67FwtjuQW0e83TfhaV9ZS/dSwW/ux5TsC6nyz3/6h+9j+n+7yyZc5e97aqxXOF6l312heWcVl0gWW+1ntbeLPnb4GRHvh9B69GzLLP2e2C7D7S+e16R79f2jPDetFrSvzPAhl682QOz2rnr57MKdva56uRd4dsvbCST97qkhkCCCCAQDiBlTeylXtaMCtrZbunZcN1BBCoK9A653oirXsiX+/l+xmLnFsr9recGUcAAQRaAq1zJfv1lsfnumbuvTgYyy+g2Wve9rKorjcDq3gs7NnzrIBVL3nZ96zu8+pecvcUx7MUV7UEPPWCl1i07L/38ZK7VRzfFvyuL/BWd/2I/O/4ZlZhfKdKFXykc9zxjnzvx/ETv7Rn9PUi15TY+wLRe/N0/H29c6On88q0/rkq5F85Ux+s5pK/ymSIAAIIIBBKYPUNbea+FsjMGlnntmy4jgACdQV6511LpXdP1LFWrtf1qHm9xX3lx08EEEBgRuDtbMk63jPSyrkXA2M1BLR6zeM+FhX26GARk4U9e54VsOgjT3ue1X1e3VP+XmJ5luKqloCXPvAUh5b99z6e8reK5duD33UFejXXjSTObj2zKmOr1ariI5nnqnWG+yQdM62Vobbk8CyQqU9P5PKsdv7qiVwyrnm+Erl3yNgTsznlrjDZIYAAAgiEFZh9Q5uZ30KZWSPr3JYN1xFAoK5A77xrqfTuiT7WyvlzPXpuT/H38mUMAQQQaAk8nScVrrU8PtdP59/bm7FaAqd7zfP6FpX27KEZm4U9e54X0Owhb3ud1/27gzcDD/H8VeKKtoCHPvAUg7b/Zz9P+VvGYmHPnv8JPNUdm7bAk1e1a22d9kg1I4l825o1RiQMM65Ro/p1s8zYs1I5WXWFVPzZ17GqT5Z9s/fHSH5ZakkeCCCAAAKJBUbe0Ebn9JhG18g8r+fDGAII1BTonXktkd490cdaOX+uR8/tKf5evowhgAACLYGn86TCtZbHdV3a4FqXnwh8C0j3WaT1vh00fo9kczpWDW/2sBE43Tte17fQ9mphGZdFHdjzr4BlD3jb+6/O+SveDCzjOa/NDk8CV82fxrj2V+Dyqvzzr0r/SmWr1dz7ojVGV+0y31ej8rWzzNy/u7lZdcZu3FXut6pPln2r9Ekvzyy1JA8EEEAAgUICvTe277FZku97q/4+a8Z8BBDIL9A7D3vZ9+6LPtbKO3peT/G3cuU6Aggg0BN4Ok8qXOuZ3MdWPe7r8BqBu8Bqb2W4725x+nUGs90cThuzvr3Abo9Evd9CPqrVybgt6sCezwIn6xxp7Weds1cj+WjGelad1RFYF9B8DrzuNaPnNQevcc3YZp/rtUZWcWWvN/n9CFj1mPd9f4R0f/PuYh2fbjXy7mZdRw/7560umSGAAAIIIDAp4OGN2TqGSTKmI4BAAYHeufSWfu/eyGOtvD85fcYi59aKvZUz1xFAAIEngdZZkvX6kwHXELASyPqcjeSlaT4ST4U5mubsZSNQoY+fcrTQfoqj6jULf/bsC1TtxXvefaUzo/cYeP3Pv98GZ9RZFYF1ge/+rPr7qF5Vn9W8R12rzFt1zHpflbqT549A1l5ezetHRve31Xir3Kdbjby7VemXXp55q0tmCCCAAAIITAr03jCrjE2SMR0BBAoIvJ1/PYK3e6OO93L+jEXNqxf3W86MI4AAAt8CvfMk49h37vyOgLVAxmdsNCdN+9GYss/TNGcvG4HsPdzLT1u8F0u1MW179nsXqNaDrXzfpeRntGLh+u8vul8e8hVgRQTmBK5erPxzRKyyz0ruI6bV5qw4Zr6nWv3JN+e/Q+48o1Y9sRNzhXut6pJt3wq98pZjtpqSDwIIIIAAAssCb2+aFcaX8bgRAQTSCrydfb3E3+6NOt7L+TMWNa9e3G85M44AAgh8C/TOk4xj37nzOwLWAhmfsdGcNO1HY8o8T9ObvewEPj382T1zL/dy05TvxVFtTNOdvcYEqvVgK98xLflZrXi4/vwl98tFvhKsiMC7wNV/lX++KVW2Wcn9zbPi+Ipj5nsq9gA51/0bvfUsW/VEKx6u//d/S7KqS7Z96Sf6KVtPkw8CCCCAwIYAHwz4YLDRPtyKQDqB0TOxl/joGtHm9XL+jEXLZyTet5wZRwABBL4FRs6VTHO+c+d3BKwFMj1bs7lo2s/Glm2+pjV72Qp8evcTQbYeHs1HU380pgrzNN3Za0ygQt+N5DimJT9rJDbm9L/sfvnIV4cVEfgtcPVa5Z+/RX6/quyymvtvQV59BFYtM95HR9QVyNjPOzlZdcJOzNnvtapJxn2z98pIfhnrSk4IIIAAAggsCYy8cWafswTHTQggkFJg9LzrJT+6RsR5FfPu5cwYAggg8C0Q8Vzfifk7d35HwFpgp5ej36tpH91qN35Na/byIbDbM1Hv19SPanQibk139hoTOFHniGuOacnPimgVIWb5SrEiAnzx9vPst/ogwrngLcaWZeXr3mpkHU/lXiB33nO+nz+rfviOgd9//w9OrWqScV96q/35MmO9yQkBBBBAAIGuAB8M+GDQbRAGESgmMHMm9mhm1ok0t2LOn/r08mYMAQQQuAQinecSsV558xMBDwISPR11DU3/qEZScWtas5cPAaneibaOpn40m5Pxarqz15jAyXpHWntMS35WJKPoscpXjxWrCUR/BiTif6q5xLrV1nhy5Bpf6L0/B/QEAveeqPraqhOqer/lbVWPrPu+eVcYz1pb8kIAAQQQQGBZoMIHgFaOy2jciAAC6QRa58TT9bfkn+6Jfu0t58949Byf4h/JmzkIIIDA0/mR9RrVRsCbQNZnbSQvzVqMxJN5jqY1e/kQyNzPvdw09XtxVBrTNGevOYFKfdjKdU5MbnYrHq7//q9ESnvIVZCVKglI92HE9e71jpiDdcx3Q17/CFjXxtv+PzL8VlXAW09axWNVf6t8I+xrVZOM+0ao9+kYM9aVnBBAAAEEENgSOP3m63n9LThuRgCBVAKzZ1Uv+dm1Iszv5XuNRchjNsYrN34igAACPYHZsyXy/J4DYwhYCER+nnZj1/DejTHD/RrO7OFPIEPvruSgWYmV+DLeo2nOXnMCGfttNqc5MbnZs3Ey/+wX31u+chVnpcgCrf6odP27fpXylsr124/f/wpIOWdY568OVyoKZOhliRysai8Re9Y1rGqScd+sPTKTV8a6khMCCCCAAAJbAjNvpNnmbsFxMwIIpBKYPd96yc+uFWV+L+fPWJQ8ZuJ8y5lxBBCoLfA5Tz4CM+dK9Lm1K072HgWiP1M78WvUYye+LPdqOLOHX4EsfTyah2YlRmPKPk/TnL3mBLL33kh+c2Jys0diY47Nl9qf3OUqz0oRBZ56otq1q27V8pbI97LjZ1tAwjnLGm0lRioJZOnn3Tysar4bd+b7rWqScd/MfTKaW8a6khMCCCCAAAJbAqNvohnnbcFxMwIIpBKYPeN6yc+uFWl+tbx7+TKGAAIIRDq/JWKl4gh4FJDo7ahraNQjqo1U3BrG7OFbQKqXoqyjWY0oJifj1PRmr3mBk7WPsva8mtwdUYyIc+yL9nKdwUreBHgG6v2HD6Rq7q2XvcYj5Z1hHa81Ii59gQz9vJuDvvp/O+7GnfH+j8wnL6uaZNw3Y5/M5pSxruSEAAIIIIDAlsDsm2mm+Vtw3IwAAqkEZs+2XvKza0Wa38v7MxYpl5lY3/JmHAEEagrMnCMZ5tasMll7F8jwbK3moFGb1diy3KdhzB6+BbL08mweGlWZjSnjfA1n9lgXyNhzszmt6+3fORsr88e+aO7Fab9DWMGLgJeesorjUwervSPv66V/I8QRuc7SsUeoFzHqCEj3VsT1dKT/7hLR6nTMf5W4sitwumYR1t815H4EEEAAAQTSCUR4Az8ZY7qCkhACCCwJzJ4zI5vMrhlhPnmPCDAHAQSqCEQ4t6VirFJT8ownINXjEdfRqFZEQFW/7gAAIABJREFUF2KO9QU3z/X6PGOe4zsZG+eLznOk4cwe6wInn7Eoa6/rydwZxYk4z52ZMp3EKicF6P9z/Z/V9mQ/Zlw7ax/M5pWxtuS0LjDbPxnnr+vt3ZnRcjenPVHufhLYrUmG+59cuIYAAggggEBpgQxv8Ds5lC4+ySOAwP8JrJ4j/7fAwy+ra3q/7yHVX5e8x78S368EeYEAAgj8f4GV8yTqPRQdAa8CUZ8pibg1aiIRJ2vwpRd6IF4PcL7o1EzDmT3WBTi7/vl3XU/mTmqgcxZFcpbpLFaRFIjUP8Rqe6ZI9l2ltejb//q2Us3J9V2A58Luczr2f99L3zuWGbMC9JndMz5bK+YjgAACCCCgJlD9A4IaNBshgIBrgdWzsJfU6poR7quWdy9fxhBAoK5AhPNaKsa6VSZz7wJSPR5xHY3aRHQh5r//2IYJJis9cPqMWYkp2z2njVl/TyBbv63ksye4f/dKzNzDe96nB/a7jxVGBXjmeOZGe2C0p5j3IzBqW2Hejwq/IVD3/9Pa97Nu1QffMfD7f58BrGqReV96i79nMvc3uSGAAAIILApU/4CwyMZtCCCQTGDnLGxR7Kzp/d5Wzp/r3mNfia+XL2MIIFBXYOU8iXpP3SqTuXeBqM+URNwatZGIkzX40gs9ELMHTp8x9AX/YHm6x3bXp0fte5QaxHz/8FC33eef+8cFPNSbGGKcFeNdxcxLgN7+r7cvD34icAnwbNh9Tsf+73vu1Zf8lBOgz+yecbkqshICCCCAAALCAtU/IAhzshwCCAQV2DkLWynvrOn93lbO13Xv8a/Ed+XGTwQQQOASWDlLot5z5cxPBLwJRH2mJOLWqIVEnKzx9x+/MMEkQg+cPmMiGJyO8bQx6+8JnK5/hPX3BPfvjmBEjDHe0/e7kRVaAjwDMZ4BT3Vq9RLXfwt4qpllLL9VeIXAj4BlX3rY+0dC9zcPuXuKQVe/zm6eamwVS51qkykCCCCAAAKDAlZvyl72HWRiGgIIJBbYPY9aNLvrer6/lfN13XPsO7Fd+fETAQQQ2DlLIt5LxRHwKhDxeZKKWaMmUrGyDl98oQfi9cDpM4ae4L/IdbrHdtenR330KHWI9/4RpWa7ZwT3/ycQpd7E6ecs4dkZE6Bn/+vZMS1mVRSo/oxY1by6+z1/qzpk3/fuXPF19hqTHwIIIIAAAtMCFT8QfOc8DcYNCCCQSuD7PFj9/Q1kdV3P91XM+VOPT97XzzcDxhFAILeA5zNaMrbcVSS7DAKS/R5trdP1i+ZBvH6+tEItctSCM+Z8HU8bs/6eAGeZjy+4X1WkHufPpOrGV6/xc06get+Q//zZNNdhdWfTW//1Vt0OIPMRgcrPyYjPiTmVzZ9yP2HMmv/9O/yTd6Vr9AECCCCAAAIIPAhU+jBwz/WBg0sIIFBI4H4mrL7uka2u6f2+qjl/6tLLnTEEEKgh4P2MloqvRjXJMrKAVK9HXOd03SKaEPP8F0www6zVA5wx53vjtDHr7wm0no1K1/cEZe+u5E6u58/fEWPZDs672oglc3z0tLc65H0qZDLzVi+reGQ0WSWrgFVfetjXqqYecvcSg1UNKuzrpcaWcVSoMzkigAACCCAwLWD55uxh72kwbkAAgTQCUmdQD0RqD2/rVMz5qkEvd8YQQKCGwHUeZP9Zo5pkGVkg+zPYy+903Xp7M8aXVOiB/D3AGXO+xqeNWX9PgHPO1/+4n3qcP5Mw7hvvnSh576Zv+n2DT9sn71Mhkxm94+tziExVWUVaoPJzIm05ul5l83vuo2bMmxe4W1d8Pa/GHQgggAACCBQQqPih4DvnAiUmRQQQ6Ah8nwerv3eW/9/qmt7v6+X8GfMe/2p8b3kzjgACNQRWz5Bo99WoJllGFoj2TEnGe7pukrGyVvuLHdhg47UHOGPO9+ZpY9bfE/D6bGrGtScoe7dm3ux1/vyLbCzb2fFXi1xLYrd/1uM/AecyoD/5gvu57sqzcuXnxKqKlc3vuVvVoMK+d+uKryvUmRwRQAABBBBYEqj4weA75yU0bkIAgRQC32fB6u89iNU1I9zXy/szFiGH2RjfcmYcAQTyC8yeG5Hn568mGUYXiPx87cZ+una78XG//RdGqAE12OkBzpjz/XPamPX3BHaenyz37gnK353FlTzOn6+axvKdHmtFTWv2yvXsXPWM1fF60V4+lX/qabNTVAGeD/3KVTa/566vX2fHu3XF13WqTaYIIIAAAghMClT8YPCd8yQX0xFAIInA9zmw8/sIx876nu/t5e457tXYevkyhgACNQRWz49o99WoJllGF4j2XEnGe7p2krGyVs4vo1DX3HXljDlf39PGrL8nwBnn77+cSk3On0sYrxnvnTax76Zn1noGt99usZ+CM9HTI/4+h5ypNKvuCFR+Tnbcdu6tbH7PfceRe/sCd+uKr/tCjCKAAAIIIFBYoOIHg++cC5ee1BEoLfB9Duz+/ga5u77n+1u5e455J7ZWvlxHAIEaAjvnR5R7a1SSLDMIRHmmTsR5un4nYmbN31/kwAMPzz3AGXO+P08bs/6egOfnUyu2PUH5u7XyZp/z519WY/mu979i1lqSl+454L/T9SOkB/mCu37Xxdux8nNiVa3K5vfcrWpQYd+7dcXXFepMjggggAACCCwJVPxg8J3zEho3IYBAaIHvM0Dq9x6I1B4e16mYdy9nxhBAILeAx3NYOqbcFSS7TALSvR9pvdN1jGRBrLpfQMG7hjdnzPk6nzZm/T0Bzjq/XyyjNufPJ4z3jfdOoDh30yv7vYLhf4Zxul4nUvrC7+cQnQ5glxGBys/JiM+JOZXN77mf8GXN/wTu1hVf0wsIIIAAAggg0BCo+MHgO+cGC5cRQCCxwPcZIPV7j0tqD4/r9PL+jHmMeTemt5wZRwCBvAK754f3+/NWjswyCnh/nk7Gd7qeJ2Nnbb4IQw/47wHOmPM1Om3M+nsCnFN+v1hGbc6fTxjLGO+dQjHupldkegVHv+85Vk8iPUFPWPVetH2rPitWdarq/ZS3VQ0q7PvkXe1ahTqTIwIIIIAAAssC1T4YfOe7jMaNCCAQVuD7DJD6vYchtYfHdXp5X2Me496J6cqLnwggUE9g5+yIcm+9qpJxVIEoz9SJOE/X7ETMrMkXYOiBOD3AGXO+VqeNWX9PgPPK9xfLqM/5MwpjWeO9E8nv3fSJbJ9U9/Tb6fqRVe+FT/766uwYUaDqs2JVq6reT3lb1aDCvk/e1a5VqDM5IoAAAgggsCxQ7YPBd77LaNyIAAJhBb7PAKnf3zCk9vG6Ti9/rzHvxtXLmTEEEMgpsHtueL7/U7FPfDkrR1YZBTw/T6djO13P0/GzPl+GoQd89wBnzPn6nDZm/T0Bzij/fxNQo/PnFMayxnunks+76RHZHsHT/3uP1pNYvRe0nNknvkDVZ8WqclW9n/K2qkGFfZ+8q12rUGdyRAABBBBAYFmg2geDp3yX8bgRAQTCCDw9+1LXRhCk9vK4Ti9/j/FKxdTLmzEEEMglIHVueF3nU61PbLmqRjaZBbw+Sxpxna6rRg7swRdi6AG/PcAZc742p41Zf0+A88n/3wTU6Pw5hfEZ473Tydfd9MiZHqns6qvD7aKp3AOf3O3k2TmaQNVnxapOVb2f8raqQYV9n7yrXatQZ3JEAAEEEEBgWaDaB4OnfJfxuBEBBMIIPD370td6GNJ7eVqvl/dnzFOskrG85c04AgjkEJA8N7yulaNSZFFJwOuzpBHX6Tpr5MAefCGGHvDbA5wx52tz2pj19wQ4n2J8uYw6nT+rMD5nvHdK+bib/jjXH5VtfXS3bRTU39af3WMJVHxerCpU0fopZyv/Kvs+mVe7VqXW5IkAAggggMCSQLUPBk/5LsFxEwIIhBJ4evalr/VApPfytN4n7088rfw9xSoZSytfriOAQC4ByXPD41q5qkU2VQQ8PktaMZ2usVYe7MOXYugBvz1w8pyh7u2/m0+6s/a4AD0ao0epk9/3EGozVpvxU8nnTOo8Vmec5p18drxeVJV7Rk+ZnbIIVHxerGpX0fopZyv/Kvs+mVe7VqXW5IkAAggggMCSQLUPBk/5LsFxEwIIhBF4eu5PXOuBnNjP25qt/L3FKRlPK2euI4BAHgHJM8PbWnmqRCbVBLw9S5rxnK61Zi7sNf+FD8ww0+iBk+eMRvze9zjpy9r7At77RyO+fUWdFTQs2IP33ZM9oPOknNnlpAtr89yd6do4q1Z9BuJUiEi9CFR8VqzsK1o/5WzlX2XfJ/Nq16rUmjwRQAABBBBYFqj24eCe7zIcNyKAQAiB+zN/6vUbxql9vazbyt9LfCfiaOXMdQQQyCNw4uzwsmaeKpFJNQEvz5BFHKdrbZETe/IlFnrAVw+cPGeodYz/OvbJHvC+Nj0aq0epl6/3D+oxXw/vZ2IrPmo9X2vMxs1afVfheuU+qVBfcpQVqPi8yAqOr1bR+inncTFmrgg8mVe7tuLGPQgggAACCJQSqPbh4J5vqWKTLAIFBe7P/OnXLeLT+1qv38r7c906tpP79/JmDAEE4gucPD+s145fHTKoKmD97Fjuf7rmlrmx9/iXPrDC6mQPnDxnTsYdZe2Tvqy9LxClj07Gua+ou8JJC9bm/VajB3SfGJndNFzYo+7zJ9OlMVep3PcxK0bUlgIVnxcr74rWTzlb+VfZ98m82rUqtSZPBBBAAAEElgWqfTi457sMx40IIBBC4P7Mn3zdAzm5r4e1e7l/xjzEeCKGt7wZRwCBmAKf8+IT+Ylzw8OaMatC1Aj8J+DhGbKK4XQPWOXFvnW/wELt/dX+5DlDvWP917FP9oLXtenRmD1K3fy9l1CTuZp4PRNbcVHfufriNe/V6r3s1yv3Svbakp+8QMXnRV5xbMWK1k85j2kxa1XgybzatVU77kMAAQQQQKCMQLUPB0/5lik2iSJQTODpeT957Y335N7Wa5P7mwDjCCAQScD6TD25f6Q6ECsCTwInnw/vaz95SF7znj/xzX85BDPMZntA8ky5rzUbS8b5dxNe+xLI2HOzOfmqyHg0s3kyn/dHjz0w3vG2Mz3aEVO+Z9q2y212r9zHNuLsGlmg4vNiVa+K1k85W/lX2ffJvNq1KrUmTwQQQAABBLYEqn1AuOe7hcfNCCDgVuD+rJ9+/QZxen/r9avm/8n7Y/+WP+MIIBBHwPo8Pbl/nCoQKQLPAiefD+9rP4vIXfWeP/Hl++IKNfVXU7kT5e9K1Ju/Gf92ha8r9GjsHqV+/t5TqMl8TXydis/RUNf5umK2ZvbcgXmvVu6TvFUls1MCFZ+XU5Zv61a0fsr5zYnxPYEn82rX9gS5GwEEEEAAgSIC1T4g3PMtUmbSRKCcwP1Z13j9hqwRg9Ue5P4mwDgCCEQRsDpHNfaNUgPiRKAloPGceN2jZSJ13WvexLX2hRDccFvpAanz5GmdlXiy3fPkwjU/Atn6bSUfP9VYj2Qlb+7hPdNTD6x3v86dnqyIJfezq9PRfnap3M9+qkAkUQQqPi9Wtalo/ZSzlX+VfZ/Mq12rUmvyRAABBBBAYEug2geEe75beNyMAAIuBe7PuebrHohmHBZ7Vc29lzdjCCAQT8Di/NTYM14liBiBvwIaz4rXPf5qyF7xmjdx5f7iCvX1VV/ZU+X3atQ69n8d+3c1c76iR3P0KHX09b5CPdbq4fmUpaZrNcVtzc3zsyAdW+UekbZkvfwCFZ8Xq6pWtH7K2cq/yr5P5tWuVak1eSKAAAIIILAtUO1Dwj3fbUAWQAABVwL3Z1z7dQtDOw6L/arm3sqb6wggEE/A4uzU2DNeJYgYgb8CGs+K1z3+ashe8Zo3ca19GQQ33FZ6QPZU+b3aSjzZ7vktwitvAtn6bSUfbzVZjWcld+7hfdNbD6z2/+n7vDkRT+5n93Q/e1q/ci97qgOxxBCo+LxYVaai9VPOVv5V9n0yr3atSq3JEwEEEEAAARGBah8U7vmKILIIAgiYC9yfbYvXPQSLeLT3bOWvHYfmfq2cuY4AArEENM8Nzb1iVYFoEWgLaD433vZqq8iMeMuXeHJ/WYX6+qyvzGnyvAo1z/Ffx36ubo6r9GiuHqWePt9nqMtcXTyertRwroZ47Xt5fA5OxFS5V054smZugYrPi1VFK1rfc7ayr7Tv3bzi60r1JlcEEEAAAQS2BSp+WLjnvI3IAgggYC5wf64tXr8hWMSkuWcvf804tPfq5c0YAgjEENA+N7T2i6FPlAi8C2g9Mx73edfZm+ExZ2La/0IIhhjO9MDeKdK/eyaOrHP7QoxaC2Ttu5m8rGsgvf9M7szl/dJrD0g/F7vreXUirtzP8G7fRri/cg9HqA8x+hKo+LxYVaCi9T1nK/tK+97NK76uVG9yRQABBBBAYFug4oeFe87biCyAAALmAvfn2vJ1C8MyJo29W3l/rmvsb7VHL2/GEEAghoDV+XFy3xjyRInAmMDJZ8X72mNC67O85098ub+0Qn191Hf9BHm/kxrn+q9jv1c83gx6NGePUlcf7y/UYb0O3k5TarleS+zW7bw9ByfiqdwfJzxZM7dAxefFqqIVre85W9lX2vduXvF1pXqTKwIIIIAAAtsCFT8s3HPeRmQBBBAwF7g/15avexiWcWnsXTX3Xt6MIYCAfwGN81FzD//iRIjAnIDm8+Ntrzmp+dne8iWe9S+AYIfdag/Mnxzjd6zGlOm+cS1mWghk6rXVXCzctfZcNeE+3lM99IDWczKyjwcPYqj5XI70Z+Q5lfs6ct2I3Uag4vNiI537P1g22kdW9pX2Ha1F5nmV6k2uCCCAAAIIbAtk/lAwmts2IgsggICpwOizrjXvDUMrDot9erlbxKO5Zy93xhBAwK+A5jmhtZdfbSJDYE1A69nxuM+a2PhdHnMmpppfXqHudnUfPzHmZ1LXnP917PlO8HsHPZq/R6mx3fsL9vv2Xk5ParlfSwzXDb08ByfiqNwXJzxZM7dAxefFqqIVre85W9lX2vduXvF1pXqTKwIIIIAAAtsCnw8Ln0Uqfmi457yNyQIIIKAucH+OPbx+Q/AQ48kYKuf/ljvjCCDgS+DkWWi1ti9hokFARsDqefKwr4xgexUPORLD+pc9sMNOogfaJ8T+iER80dfYV2SFkwLR+0si/pO+ntaWsGIN3nctesDDc2SRN3vyvF094OEZOBXDlWPFn6dMWTevAM+JXm0rWt9z1tOuu9PdvOLrutUncwQQQAABBDYEKn5ouOe8wcetCCBgJHB/jr287nF4ifFkHFXz7+XNGAII+BM4eQ5arO1PmIgQkBGweJ687Ckj2F7FS57EwRdY6AG7HmifEPsj1DX/fx17v0tsV6BH6/UoNbd7v8F+3d72pOQ/jkXvrveulJ31M3BqfymfiOucMmXdvAIR+3w3Zqtq7sad4X4r+0r7ZuiT3Rwq1ZtcEUAAAQQQEBPYfQPOcL8YJgshgICagOez5w3Bc+y7sfVy313b+/293BlDAAE/At7Pktn4/MgSCQLyArPPQ6b58pq/V8xkRS72XzyhBjFr8PtUkH1FT9T78rBsB51fjR6t2aPUPeb7VfW6nT8R2ztUtyd/H2dGu0PjjlTvrbiVI3ILgYrPi4XzZ8+K1vecrewr7Xs3r/i6Ur3JFYH/x97dZkmK7AgCrc29TcwuZhGz7jfHO5sKTw8cDLAPyez+eCciHDBJVzIgM6OrCRAgQKCawIovDZ81V8O0EAECXQQ+93C0n88QouVbMx+1nwk4ToDASIGa97soa430FJtAa4Eo+2xEHmxj/DLFiN6Lqfe9ZqDlfaZXDZHjtPS19nOByLPTK7fninlX6GUsjmd6jRkYudNq5G8N+6DGDIzcBy1i1zDJvEYLU2vOKZB5zp/kPqqbT3Ke5dpR9ivFnWVWntSxUr/VSoAAAQIEqgk8efjOdG01UAsRINBcIMO95wghQ/5Pcjyq/XXsydrRrz2r3XECBMYJRL9/3MlvnKbIBPoI3NkXs1zTWngWJ3X4hRkzcH8GWt5n9GXN/zp2y5mqvbYZNaOvmTIH958h7Pra1b4Hlq6nz337zPvYu3RuM5y3eq8z9EiOMQRW3Suj9Ff1fq97lP1Kcd+9V/1+pX6rlQABAgQIVBNY9cXhs+5qoBYiQKC5wOf+jfjzGULEnGvmdFR/zTjR1jqq2zECBMYKRLtfPM1nrKboBPoIPN0nma9vLZzZRu7Hv/jBh0/pDLS8z5TmMPN5LX2t/Vxg5tkrre254jwrlJo5zzN25AyM2HEj6xXbftubgRH7oEXMvdpW+6yFqzXnE1htX2z1jurkFn/lr6PsV4q78nxtta/Ub7USIECAAIHqAtsDdeWv1VEtSIBAVYFM96dX4a98vwFkquVqrt9q3j6/ul6287c6fSVAIJZAtnvJWb6xdGVDoI3A2T6Y+Xgb0Z9VZ7ZTm1+GMQNlM/BzR6j/nR58/7uA+tpWvCNgRs3o59yYibJnB6dxTp8z2+Nn/R7Xb/b79j3mvkcM/fUe0mPOssdYeZ+M6t3K5lvto+xXirtZr/x1pX6rlQABAgQIVBdY+SViq706qgUJEKgmsO3TbF+PALLVciXfo7pfx66sle3cs9odJ0BgjEC2e8lRvmMERSXQX+BoH8x+rLX27H7q2/+FEC5cthlwj2k/C62Nrf9MYNsLK399Jjj31SvPhdrbPx+eGPfeeU9ydW3sWcrcn977oEW8zP61cm/has25BGrNWsZ1RnUyo1XtnEfZrxS3ds8yrrdSv9VKgAABAgSqC2R8+NfOuTqqBQkQqCZQe7/3Wu8IoFcOo+Ic1f46NiqvHnHPanecAIG+Aj32fa8YfeVEIzBWoNe+ihintXzEmuXkl2DMQL8ZcI9pb93a2PrPBNxv/JdTSyfIrLS/XzIuNy6d21rn6U15b1j1s6o13yPXMS/eQ0bOX5bYK++TUT1a2XyrfZT9SnE365W/rtRvtRIgQIAAgeoCK79EvNdeHdaCBAhUEXjfp5m+Pyo+Ux13cj2q/XXszpqZrjmr33ECBPoIZLpvnOXaR0wUAnEEzvbEzMdbd2FmO7X1++US1nmt3WPa9661sfWfCbh/+cWyqxNkZtrfNxmXGV+d3Sfn60lZTzj1dXoy01GuNTPeQ6LMYuQ8Vt4no/qysvlW+yj7leJu1it/XanfaiVAgAABAtUFVn6J2Ku9OrAFCRC4LbC3RzN9dlR4pjqu5rpq3ZvTUf2OESDQT2Dbk9m/9hMTiUAcgez79kn+rbvwJDfX9v0FDt68W8yAe0z7uWptbP1nAi32VbY1nwm6+iWQrefybX/v72Hcc/f1qEeMOeaydx977oMWsXp7RYzXwtWacwlEnNteOY3qZK/6IscZZb9S3Mj975XbSv1WKwECBAgQaCbQ68EdPU4zYAsTIHBZIPr9oiS/b0WXXJv5nG91b59nrq00961WXwkQ6C9Quk8znNdfT0QC4wUy7M1WObbWb5W3df2CihnIMQPuMe371NrY+s8E3Kv8l1OfTdDP1Wap/f2U8d/GP9PX/jv2f9vziOXRfge0i2CWvIe0m655Vl55n4zq4srmW+2j7FeKu1mv/HWlfquVAAECBAg0E1j5ZeK99mbAFiZA4JLA+77M/P23ojPXVJr7t9pfn5eukfm8o/odI0CgrUDme8eW+0vo9X1bKasTiCmw7YMVv7buyIqmao71Cyn6MbYf7jHt/VsbW/+ZgHuQP188m6Dzq81Y+/vsysbnE1jnjJWNR9f+6uDoHDLErzPp/VfJYNs6x/7qImYTaD2Dkdcf1avIJr1yG2W/UtxevYwcZ6V+q5UAAQIECDQTiPyw75lbM2ALEyBwSaDnvm8d66zw1vFHrv+t9pE59Yz9rX6fEyDQTqDnHm8Zq52QlQnEF2i5t6Kv3aM70Q3k5xfDzEC7GWh9j9E7vzzcesaerm9GzejTGSq53py1e46x7bOHOY+b4e0eowfHPdicsn3V1z99zdY3+fYVWHmf9JX+ibay+Vb7j4bvWgls1it/bWVrXQIECBAgsJTAyi8Tn7Uv1XjFEggo8Lkns/98Rpy9vqP8j2o/um6mY0cGjhEgUF9ghvtHfRUrEsglMMM+vltDj07dzS37dT1sxSCwukD2+0SN/Fefgej11+hx9jWi92jm/LLPjvyPf+G2l0+PPdKrFnH+nqn33rL522bP490ry/d7daz4WZZ+yXOMwIp7Yqt5jLj/zyEv/1H2K8Xd5nzlryv1W60ECBAgQKCpwMovFO+1N0W2OAECpwLv+3GW74+KnqXGvTqO6n4d27tmts/ODBwnQKCewAz3j3oaViKQV2CGvXy3hh5du5vbDNf18BWDwMoCM9wnntawcv8z1P60vzNcn6FPK+Q4wyyp4fwXcFsY9dgfLfK25vG87PWV2bHZy2fPLfJnevqnp5F7JLfxAivvk1H6K5tvtY+yXynuZr3y15X6rVYCBAgQINBUYOUXis/am0JbnACBrwKfe3GWn78W7Je8/ZL70XA4RoBAscAKz4tiDCcSSC4wy36+U0eP1t3Ja5ZreviKQWBlgVnuFU/qWLn/GWp/0ttZrs3Qp5VynGWu1HH+i7i1jHrsj1q5Wqd8Lvb6yu/cb88t+mf6mu//MCH6TM2U3+r7Y1QvV3d/1T/KfqW45sycrTTvaiVAgACBxgJeLH7+wqQxteUJENgRmPketFPur49WrX/mut9r+9VwHxAgUFXgfb9l/b4qiMUIJBbIuodr5N2jbTXyzLpGD18xCKwskPXeUDPvlfufofaavc66VoY+yfG7QNa5k/fPvzs9tfg+HfWOPM3R9eX9Lukaz++eJX7RztHPn35G6418xgrYG+N++ZX9OPuxu65vdHNmzvpOnGgECBAgML2Alwt/uJ5+yBUYVmD2+88Z/Mz1r1z7e1/PHBwnQOCewPs+y/p9SeXvtZWc7xwCWQXeZ32173v0bDXTz3p7GItBYFWBz/01vv1eAAAgAElEQVS24s+r9j5L3SvO5GfNWXolz+sCn73288+/88xmcX06rl0xm1fUekq7EjX/KHmVOkY5L4pbhDyi9EQeMQQizOToHEZ1YnTdEeKPsl8pboQ+j85hpX6rlQABAgQINBcY/WCPFr85uAAECPwTbd+3zOes3S1jj1x71br3zM8sHCdA4JrA3j7L9llJxXs1lVznHAIZBfbmfZXPevRrFctvdfYwFoPAqgLf9t1Kn6/a+yx1rzSL32rN0it51hX4Ng8+z/lL8HWn4/dq5qL9XPxWP/5ET457cqwX76h+/ulnvM7IaKSAfTHuv+7Mfpz9yD3XO7Y5M2e9Z048AgQIEFhEwEuGP2AvMurKDCCw0v3mjHtmi5Vrf+/rmYPjBAiUC7zvrazfl1T7rbaSa51DIKPAt5lf4fMe/VrB8azGHs5iEFhR4GzvrXB8xb5nqnmFGTyrMVO/5NpH4GxmHD/+xdoRPq0nY0RNK8W807+VfO7Wesd11DV3a5ztulH+4sYUmG2+79QzqjN3cp3tmlH2K8WdbWbu1LNSv9VKgAABAgS6Cdx5KM96TTd0gQgsKDDrfeOorrM2H12b+dhZ3a/jmeu7knuJhXMIEDgXuLLvIp57XuHxfbHkeucQyCgQcb/2yqlHv3rVEjlOD2cxCKwoEHnf98ptxb5nqrnXHESOk6lfch0vEHmWV86t9WSsbNu69ie9a53bDOs/8e157QzWNWroaS5WfIEaM5V9jVFdyu5WI/9R9ivFrdGn7Gus1G+1EiBAgACBbgLZXxBq598NXiACCwnU3qdZ1itpcZZaruZ5VvvV9TKff2bhOAECxwIr7P+jGo91HCWQW+Bo9mc/1qNzsxuW1NfDWQwCKwqU7L/Zz1mx75lqnn3+SurL1C+5xhYomTfntPmvv7eeDH2L2ze9Oe5N671Ra319/OljLVPr5BawJ/7siVFd5P+f/46yXymuOTNnK827WgkQIECgo4CXjJ8/YL8sOtILRWAZgVXvMyUNntnmrP6Za/+s7czCcQIE9gU+91K2n/er+v3pUV2/z/YJgXkEjmZ/9mM9uji7YUl9PZzFILCiQMn+m/2cFfueqebZ56+kvkz9kmtOgZI5dM7f//Z01aP1ZFzNx/nn/azVM9bH1rWcW6+jjz99bG1t/RwC9sSfPTGqW/z9HlCP2TNn5qzHnIlBgAABAosKeNH4+UP2y2LRMVA2gSYC7i/n95RZjc4Gata69+o6s3CcAIF9gb39lOWz/Yp+f3pWz+8rfEJgHoGz+Z/5eK8uzmxYWlsva3EIrCRQuv9mPm+lfmesdebZK60tY99q5bwZ1VrPOscCm7evf/8bUy2PY/1nR2vlaJ02v7DI9XxPPdsB7a/Ww7972F5chOgC9kSb50Vp3/mf/3t9qaXzvguYM3P2fTocIUCAAAECFQS8bPz8QbsCpyUIEPjnn3/cV8r+smJWp5JNMGvte3WVeDiHAIEfgb19lOWznyqOvzur5/hqRwnkFzjbAzMf79m9mR1LautpLRaBVQRK9t7s56zS66x1zj5/JfVl7V2NvN99aqxnjesC7z3w/c+/O92xuK5ffsWdfFyz389y9fIzWe9bv7uUa4458z1X3/uFvzFTGCuqfVD2b8atusbffajVbL2va87M2fs8+J4AAQIECFQX8LLx85cl1XEtSGBBAfeUa/eUmb3Oxn/m2j9rO7NwnACBH4HP/ZPl558Kjr87q+f4akcJzCFwtg9mPt6zgzM7ltTW01osAqsIlOy92c9ZpddZ65x9/krqy9q7J3nvuTxZz7V1BPb64rOfvzcusajTid+rlMR2znmvfsvW+4T/sX896XYr6eFPD9spWzmLgP3wZz+M6hd/v3jcY/bMmTnrMWdiECBAgMDCAl42fv6QvVksPA5KJ/BIYNtDvv59XzlDndVr1bq/9fPMw3ECqwt82zsZPi/tXUktpWs5j0BmgZK9MOs5Pfs2q2FpXT2txSKwikDp/pv5vFV6nbXOmWevtLasvbub95HL3TVd107gqF+O/f33yS+PVp1g/dv6qkmr3ryvezWn1c5/t4r4/Wr9OKo3Yn/k1EfgaC5WPNZH/XeUFa0/a/6t4pPaAp/mK/5c29R6BAgQIECAwIfAii8YRzV/8PiRAIFCgaN9tfqxM8IZfVas+ayPZyaOE1hZ4Gz/RDx+pV8l+V9Zz7kEMguU7IdZz+nZt1kNr9TV01ssAisIXNl/s567Qp8z1zjr3F2pK3P/ruReYnJlPef2FSjpn3P8gnvUGei1W6LWHymvXr24GyeS1ehc7hq6LrfA6LmLFn9UN6M5jMhnlP1KcUf0NVrMlfqtVgIECBAgMEwg2gtAhHyGNUNgAgkFIuzZ6DkctTV67k/yW7Xub2ZHHo4RWFHg216J/vmVXpXUcmU95xLILlCyJ2Y9p2fvZjW8WldPc7EIzC5wdf/NeP7sPc5e34wzd7Wm7D0szb/UpXQ9540TKO3liue16sqKlrVqbtWTb+vWynvmdb7ZRfh8Zvc7tUXoiRz6CtyZk5mv6av/E21m09LafjR811KgtB+zntfS1toECBAgQIDA/wrM+iLxpC7DQYBAmcCTfbbStWeas1qsWvdRP89MHCewisDRPol8rLQ/V2soXdd5BLILXN0bM53fs3czuT2ppae5WARmF3iyF2e5dvYeZ69vljl7Ukf2Hh7lf8flaD3H4gjc6e0K17Tq0Ap2LWps1Y+jdVvUMduaR36jj81m/bSe0f0Qv7/A05mZ7fr+HfgTcTbHO/WMsl8t7p3ezHTNav1WLwECBAgQ6C4w04tD7Vq6N0NAAskEau+5mdcrae2s9Z/VPmvdR3WdmThOYHaBo/0R9diVnlyt4craziWQXeDq/pjp/J69m8ntSS09zcWKJ7DNTrzMcma0ea78NWfn1sl65dncap+121t9d7/O6jJbXXf7O+t1rfo7q1fLulr14mzdljXNtPaZ46jjMxnXqGVUH8TtL1BjXmZco38n/kSc0fJqTaPsV4t7tS+znb9av9VLgAABAgSGCcz2ElGjnmHNEJhAAoEae2ylNUpaOrPHUf0z131U25GJYwRmFzjaGxGPvfrxyqukL1fzL1nTOQRmEri6R2Y6v3cfZ7K7W0tvc/FiCBzNS4wMc2Zx5LrKsZydWyfrVebwqM7Zun1U65Vjs7nMWs+Vnq5wbqs+r2BXs8ZWfbiybs16Zl3rimevc2e1vltXL3dxxgvcnZHZrxvVmdldS+obZb9i3JJ+zHrOiv1WMwECBAgQGCYw6wvFk7qGNUNgAsEFnuyrVa8taemsNme1z1r3UV1nJo4TmFXgaF9EPVbai6v5l67rPAIzCVzdJzOd37uPM9k9raW3vXjjBEpnZVyGeSOX2s58Xt7urZH5zLNXWttMnS6tueS8mVxmr6Wkn6uc06rXq/jVqrNVH66sW6uW2de5Ytrj3Nm979bXw16McQJ352KF60Z1ZQXbsxpH2a8Y96wXMx9fsd9qJkCAAAECwwRmfql4UtuwhghMIKjAk/206rVXWjmjUUn9M9Z9VlOJi3MIzCRwtieiHb9ifyf3K+s7l8AsAnf2yizXjOjhLHZP6xhhL+YYgTuzMibTfFHv2M52Tb6urZXxbPN2p55ZOn6n9rNrZrFZpY6zfq5wvFWvV7CrUWMr/7vr1qhp9jXu2ra6bnbvu/W18rZuDIG7c7HCdaM6tILtWY2j7FeMe9aLmY+v2G81EyBAgACBoQIzv1g8qW1oUwQnEEjgyT5a8do7rZvV6cxi1rpL6jqzcZzADAIleyHSOVfM7+Z9JYZzCcwicHe/zHDdiB7O4FajhhH2Yo4RMC/t3GvYZl+jna6Vawhkn68a+ddwHL1GDYejNUbXJ365wFEfVzhWLnXtzBXsntZ4TbTf2U/rWuH6ft04j7SC950az+WckVXgzjysdM2ovq5k/K3WUfYrxv3WgxU+X7HfaiZAgAABAsMFVnjJuFrj8KZIgEAAgav7ZuXzn7ZrVrszl1nrLqnrzMZxApkFSvZApHNKre/mXLq+8wjMKHB338xw3Yh+zuBWq4YR/mL2F6g1L9s6/SuIG3EzWflr3O7I7CWw8mxutWeehK2G1l8zG62We+tZiL5+q35HrztCfq3sa6wbwSd6DjWca64R3WtEfjV9rRVHYMQsZYo5qlOZjFrlOsp+xbitephh3RX7rWYCBAgQIBBCIMOLwogcQzRHEgQGCIzYbxlj1mxNxvrPci7xOVtj5uMlPs4hkE0g0569anu3tqtxnE9gJoG7+2aG60b0cQa3WjWM8Bezv0Ctedlbp381sSLumaz2WayOyOZTYLV53Kv30yTDz3t1tP4sg4scfwRaz0PU9X8E6n4Xtd4IedWVbrNaBKfoObSRv79qdK8R+d3XdGVkgRGzlCnmqN5lMmqV6yj7FeO26mGWdVfsuZoJECBAgMBwgSwvCiPyHN4cCRDoKDBij2WN2aItWS2O8i5xOrp+9mMlPs4hkEEg01694lmjrivxnEtgNoEaeyjrGqN6mdWrRd6jeiBue4EW83K2ZvuqYkU481jheKyOyOZTYIUZPKvx0yTyz2e1tD4e2UZufwu0noWo6/+tUO+nqPWOzquecPuVRltliN++C+URMniNyLFc0JnRBUbMT8aYo/qY0ap2zqPsV4xbu3fZ1lux52omQIAAAQJhBLK9OPTKN0yDJEKgoUCv/TRDnIZtmPL/zfaZ1wwz8aSGMx/HCUQXeDL/Pa+96vg0t6vxnE9gRoGn+yjz9aP6mdmsRe6j+iBuW4EWs3JlzbbVxVj9ises58bohCy+Ccw6d1fq+mYT7fMrNbU8N5qLfPYFWs5A5LX3NZ5/Grnmkbk9l+27wkirDLH7duM4WgavUTkeyzmaRWDU/GSLO6qf2Zxa5DvKfsW4LfqXac0Ve65mAgQIECAQRiDTS0PvXMM0SSIEKgv03kvZ41Xm/7Vcdp9v+f8q9OODb9et9PkHiR8JpBDIskdLMWvWUxrTeQRmFqi5p7KtNaqv2Zx65DuqF+K2EegxM1ditKly/KpXDGY9d3wXZHAkMOvcXanryCfCsSu19Dg3gokczgV6zELEGOcy986IWOvInO4pjr9qpFmW2OO79CeDLF6j8ozSJ3ncExg1Nxnj3hN+flVGq9o5P1e0QqlA7d5lW6/UyXkECBAgQIBAA4FsLw69821AbkkCQwV676Hs8Xo2K7vVZ/4ldp/XrPZziZFzCEQSyLJHS81q11Ma13kEZhaova8yrTeyr5mceuQ6shdi1xXoMS9XY7wq/LymbtVjVvusacWfx8iLWiqw4kx+1lxqNeK8z1wj/TzCQ8xygUiz0jOXcqFrZ/asIUOsa3qxzs7gOzrHCB0bbRA9foQeyeGeQPTZipbfPeXnV0VzGJHPc0UrlAqM6G/EmKVeziNAgAABAgQqC0R8MYiSU2VqyxEYLhBlb0XPY0Sjoptcza/E8Oqas55fYuUcAqMFsuy/Uqfa9ZTGdR6B2QVq761M643sbSannrmO7InYdQR6zsuTWHWqHbvKk/pnuXZsB0Q/E5hlzp7UcWY06viTmnpcO8pF3GsCPWYhUoxrOuVnR6pxdC7lanHPHG0YPX6UzkV3Gp1flD7J45rA6LnJFv+abr2zszm1yLeeppXOBFr0L+OaZ06OEyBAgAABAg0FMr489My5Ib2lCXQT6LlnMsfq1pCdQJndvuW+U+ZfH327brXP/0LxA4FgAln2Ywlbq1pKYjuHwAoCrfZYhnVH9jeDz4gcR/ZE7OcCI2amVszn1fdfoVbtmdfpry7iFYHMs1Ur9ytevc6tVVvrdXp5iHNfoPUMRFv/vtTxldHqHJXPsVKeo6P8MsWN0s1MZiNyjdIneZQJjJiR7DHLZOufld2tRv71Va34TaBGv2ZZ45uRzwkQIECAAIHGArO8TLSqozG/5Qk0F2i1N2Zat3kTCgPMZPqqpaTs2Wq+U0+Jk3MIjBC4M889r7li0iqvKzk4l8DsAq32WYZ1R/Y2g8+oHEf2Rez7AqPmpXbc+wL9r6xde8b1+quLeEUg40zVzvmKV49za9fXer0eJmLcF2jd/2jr35c6vjJanSPyORbKd3SEYaaYUTqayWxUrlF6JY9jgVHzkT3usWq7o9ndauTfTtfKnwI1+jXLGp82fiZAgAABAgQ6CszyQtGqjo6tEIpANYFW+2GmdathV1xoJt9XLWc0s9X7pJ4zK8cJ9BJ4Msc9rr3i0DKfK3k4l8AKAi33W/S1I/Q3utGo/CL0Rg7XBEbNSuu41xT6nt269gzr9xUX7apAhhlqneNVs1bnt66z5fqtTKz7XKBl3yOu/Vxsf4WItfbOaV8m96e9DbPFi9DdbGYj8o3QJzkcC4yYi1liHsu2OzqL35M62ula+VPgSZ9mu/bTxs8ECBAgQIBAZ4HZXi5q19O5HcIReCRQe/5nXO8RcMOLV7Sesea7NTUcLUsTKBK4O7s9risq4O2k1jm9hfItAQL//PNP6z0Xef0IAxDZZ3RuEfojh3OB0XPSK/65RP8zetUeOU5/dRGvCESenV65XfFqdW6vWlvGaWVj3WcCLXsece1nWt+vjlhr75y+6+Q+0tsxW7zR3c3mNSrf0X0S/7vAqJmYJe532bZHZvF7UkdbYau/Czzp04zXvtv4ngABAgQIEOgsMOPLRe2aOrdEOAK3BGrP/Wzr3ULtfNGK5rPV/LSeziMnHIH/EXg6t62uv9qeVnm8r3s1J+cTWEHgfY+s9n2U/q7mXlpvlP7I41igtJ8znvcu86rv/ece389oerWmHs5i3Be42s8Zz7+v9/zK2Tyfi1ihtsBsM3ZWT22/bb2zuCsc3yxm/LpC/57UOLLnT/Je7dqRfRJ7X2C1GWxR775s+09b1JJtzfbKImwC2Wajdb6bi68ECBAgQIDAIIHWD/sZ1h/UGmEJnArMsL9a13CKGOiE1ha91y+h7Z1T9HglZs4hUEMg6l64WluvOq7m5XwCqwj02oMR40TpcUSbSDlF6ZM89gUizcroXPaF2n06ut4I8dvpWrmGQIQZGZ1DDcc7a4yuu1X8OxauaSfQqs9R120lGbXennm1so2wbk/HrLFG9imr2ai8R/ZK7B+BUf2fLe6PaN/vZnO8U09f8bWj3enP7NesPRGqJ0CAAAECAQRmf9moVV+AVkmBwL8CteZ61nX+hUr0zWy9KKWfre4a9ZTaOY/AHYEaM1p7ja2O17rb90dfa8c/Wu8oD8cIrC5wtHdmPxal97M716gvSq/k8SNQo6+zrfGj0+e72fzu1NNHWpS7And6Ots1d+3uXjeb3149d21cV19grz8zf1Zf8M+KM5uV1tbKNsK6pQYrnzeyTyu73619ZL/E/uefu31z3X/++2kwap4+81jx51H2K8ddcc6Oal55FtROgAABAgRCCBw9qB37+cNLiGZJYmkB+/FnP36zyDwg32rK+nlpL7LW1zLvUjvnESgVaDmvd9cuzX07726cu9dtcX0lQGBf4O7emuG6fZH+n85g2aOG/p0R8ZtAj35ni/HNquXn2Yxa5NvS19rPBVr0PNuazxXLV8hm8yTfchVnthJ40r+s17I8//v8u71tZRtl3bsuK103slcrOdeqdWS/Vo5dq3/W+fM8GzVL/Mv+40ij+jNrXHP3+z121l6riwABAgQIpBDwcvL75eSbSYqGSnJKgW8z6fOf/TtD42frZ0lPZqu5Vj0lds4hUCpQay5rrVOa93ZerbhX1tli+0qAwL7Alf0027n7IuM+nc23dj3jOiPyu0Dtvs6y3rtRr+9nsXtSRy9rce4JPOntLNfek7t21SxWV+u4puTsmgJXezXL+TUN39eaxedJHe8es37/xGeFa0f1fQXbFjWO6tfqcVv0cuU1R83TyuZb7aPsV4672fs61++irDzTaidAgACBCQS8mPy8mJxZTNBuJSQTOJvJ1Y8na+dpurP186zg2eqtWc9m91pz+95XAlcEas7j07Wu5P0692m8p9dfzdf5BFYTeLrHMl8frdeZLXvmHq1vK+XTs8/ZYo2Yg2xGLfId4S5muUCLnmdbs1zr3pnZPFrke0/OVU8EWvQxw5pPzI6uzVB76xyPfGY51tpwhvVH9XoGu1E1jOrZinFH9XjmuKPmaGbT0tpG2a8ct7Q3q5238kyonQABAgQIhBBY7eXjSb0hGiaJ6QWezOgq1846BDP1r6RHM9XbopYSQ+cQ+BRoMYt31vzM6+znOzFqX3OWo+MECIz/P0Kpve+vrBet/1dyX/3caL1bIZ/VZ+6s/hEzcJbTCsdHuItZLrDCDJ7VWK51/cyz2Csdv67niicCK83We61PzI6ufY+x6vdHPjMdW7W/pXWP7HVpjs77/R+YG9m3FWKbud8zV8tk1PzUyj/zOqPsV46beV565L7ybKidAAECBAgMF+jxsJ8lxvBmSWBqgVn2Sas6pm7+/xbXym7EuiX9GpFXppglhs4h8BIYPdd3uzA67y3+3fxdR2A1gW3PrPg1Wq9X7MGTmqP1b+Z8nvRplWtH9H8V26M6R7iLWS5w1LtVjpVrXTtzFb8rdV4TdPYTgSt9mencJ2ZH185kdLeWI5+Zjt31Wem6kf1eybl2rSP7NnPs2n2y3t+/LD9qdvTB/5frEbNn7v7e/3seI/oiJgECBAgQIBDgl6L2Xgyif2ZwCNQSiD7rUfKr5Z1hnSjmNfIo8a4RZ/Y1Shyds5ZApJm/Ix8p/1cud2pwDYEVBaLt3Z75ROt3z9pnihWtjzPlM9Oc9Kild+971BQ9Rm9z8a4JRJ+fHvldEzs/u0fO2WOcKzrjiUD2+XiS/xO3o2uf5DTLtUc+sx2bpWct6xjV85Y1rbL2qN7NFneVeRld56i5GV13hPij7FeOG6HvWXJYeU7UToAAAQIEhglkeVGIlOewZgk8jUCkeY6YyzSNvlFIxH7czam0/Lvrr3RdqaXz5hYYNfNPVUflfRT3aU2uJ7CawNF+mv1Y1F7P7t6ivqi9zJxXiz7NuuaoPs/qeaWuUfbilglc6eWs55ZJnZ81q0+rus5FnXFHoFW/Mqx7x6v0mgz1t86x1GqW81p7Zl9/ZJ+z20XIf2T/ZogdoYer5DBqXlbxPapzlP3KcY/64dj3/7r7yjOjdgIECBAg0F3AS8n3l5Ijm+6NEjC1wNEsOfazB1M3uVLyM81DCclM9baupcTTOfMKtJ6vz/WfSH6uFennJ3W5lsCqApH2cO9cova8t8Ns8aL2NUNes81Cj3pG9rVHfdFjjPQX+1wg+vz0yO9c6fiMHjnOHONY19ErAjPPyVltV5zunHsWf4Xjd9yyX7NCX5/WOKLHT3N2vX8LvDu3ZudndnpZ3O3V0+t61Rc5zlND118XiDwPmXK7Lu8KAgQIECBA4JJApheDSLleQnbykgKR5jVyLksOx0HRkXt1NbeDMv89dHXN1c//F843Swm0nPsakC3zq7l2jVqtQWA1gZp7MNtakXudzTJivpH7GzG3iD3MktOofmbxaZnnKHtxywRa9j7L2mVS38/KUmf0PL8LO1IiEL2/rfMrMXpyTuv8M6z/xC/jtRl6EiHHEb2NUPdsOYzoY6aYs/U7Uz2j5iSTUatcR9mL+88/rXq6+rpmiwABAgQIEKgosPqLxZP6K7bBUpMIPJmnla6dpN3NyphlFkqAZqm1dx0lts6ZQ6D2bNVQqZ1T6/Vq1GwNAisKtN6bkdeP3u/Idplyi97nkfll6mPkXEf1MLJJr9xG2YtbJtBrDiLHKZPaPytyXVlz25f26ZFA1l7XzPvIp8axmrlmXauGY8Y1svarZ96j+tqzxlVijepl1Lir9D1ynaNmI7JJr9xG2YvrF9x7zXikOOaeAAECBAikE4j0IM2YS7qGS7iZQMb5HZVzsyZMsvCovtSOW9qO2nFXWa/U13m5BWrM80vgtc5TiRq5jFjjad2uJ7CqwIj9GiVm9J5HcZolj+j97p3fLH0dWUfvnn3GG1l7lNifJn6OJRBlTkbm8aQjI/OePfaTvqx07exzUFpf656X5jHzea2NI68/c19r1Taif7Vyt85//rtnMKKnUWLuefhsf05au4yaidZ1ZVh/lL24fsE9w/6onaO5J0CAAAECKQVqPxBXWy9l0yVdTWC1eb9bbzXwRRa66xztupJ2Rcs5Uz4lvs7JLXBlHltVeiWHSOe28rAugVUEIu3n3rlk6HFvk9njZeh56xxn73HP+lr36mz9nrVGjXVm5PhYgahz0zOvJx3omeeKsZ70ZpVrV5yLvZpb93sv5mqftTaOvP5qvb5T74j+3cnTNdd+SXlEX0fHNCPXZqS116h5aF1XhvVH2YvrF9wz7I/aOZp7AgQIECCQWqD2g3Gl9VI3XvK3BFaa77u13oJ10b8Cd92jXfdvQSffRMs7Wz4nvA4nFtibxdbl7MXM9FlrH+sTWEEg056vnWuG/tau2Xp//kE1Q+9r56j39f8xvXaPrq6np8//PxddNXf+NQEz+nxGGda/d++ZXpvsNc7ec1r1s9YdX9X1ve7WxtHXf7fw/f59v3cP9WG/Dy1ceve2d7wWZtasM5+9Z2GLp3/P/4y0Wfp6XcD81bl/ZHK8PiWuIECAAAECwQQyPXgj5hqsndKpKPCat9dyEecuWk4V2ZdfKlpv7+ZT2si767vu7z98l3o7j8BL4LV/tq8z7CVdJUCgjsAM94O7NdQRbL/K3fpc9/d7057Hq3vb5+072TfCVpev53Nwx6hvN/ej3cl7tmv2ZXwaRWC2ebtTz9Ne3Inpmvv3/af9muF68/N7flr3lblfdDMDv/fdnknrvbi3/l4ePivr11Wnl//rmr0+ZPzsav3ObzNXR66j5uoop1WOjbIX9+fvQFeZNXXO81y1fwkQIEBgcQEP9ed/YFp8hKYr354o2xPTNT5QQdlnsJQye53R8i91d96aAtHmtQpB4c0AACAASURBVFY+a3ZT1QTqC9TakxnXqa/ZZsWMtplzbtPFPqtmds+Se59OlkXJYtYyzzIpZ40SaNn7LGvXss9S70x51updhnVm6lvtWnr0r3bOGdfr4Rw9Rsa+9c55RA971yje3/8+OaLnd2Pq3d+9y+Bxt9dPr8tg0zrHp4aufybQur/Wj3U/fDYtriZAgAABAoEEvGQ8f8kI1E6p3BSwD8r2wU1el10UmGEeS0ueodZINZS6O28NgUizWTuXNTqoSgJ9BGrvz0zr9RGuEyWT6yy51ulcn1VmMc9QR5+OlkXJ4NU6xzIpZ40SaN3/DOvXtM9Q74w51uxhxLVm7FnNmnr0rGa+Wdfq4ZwhRtb+9cy7dx971ibW93+j7N33K/H07Xvfottc6XPNc6O79Mivpqe17gn06LMYMe6P9ybEVQQIECBAIKiAF4w6LxhB2yutHQEzXz7zO3w+6iCQfUavEGWvNWr+V3rg3PwCUeewRV75u6UCArEEWuzTLGvG6sR5NllcV8rzvGt1zljJNHqtdTpaZ5XoVj3yqyNplVYCPWYgeoyattFrXSW/mj0dtdYqvapRZ48e1cgz+xo9nDPEyN7HXvn37mWvusQp/zfLT6vWM/EZz8/3exXJrvXcfFs/ksGoXL7Z+LyfwKjei9v//tlvqkQiQIAAAQKdBLxQ1Huh6NQyYW4ImPNrc36D2CUVBbLP6xWK7LVGz/9KL5ybRyD63LXIL093ZEogj0CLvZplzTxd+pNpFld5/v4z19Gs8frtFdXkqI8jjkV16pnXCHcxywV6zkLUWOVa52dGrXHlvM67FueMlfv0pPYeHXyS3yzX9nDOEmOWnrasY0QvW9Zj7T5/HtybG/Z97KM6781Ej8+ievTMq4ezGMcCPfst1th77fEkOEqAAAECBJIKeMGo84Lxav/LMukYTJX2NtNbT7affd2f9amaP0kx2We1tA3Z68yWf2lfnBdDINt8tco3RjdkQWA+gVZ7NsO62bqZwVSO+3/O4jKHS7R7hrny927RZvIzHzNaf0aZ5niefO6F3j+bk3pz0qN3+lX/Xtmjby1jmInzPdzSf29tPTnvCSNG2WZgb6/3+CybU4t8eziLcSzQoq/WjPkcOJ4ERwkQIECAQFIBLx5tXjySjkPKtM3wsxlO2fQFks4+16Utyl5n9vxL++S8dgLZZ6hl/u3UrUyAQMu9G33trN2P7iq/Z38m4xfPL+q9wqz4hbios7nlZUbbzCjXeM+Jqz157ZHtmm2/fPv6Om/v/O16X9vNw7ee1P5cD9vcK2v3qed6ZuJ8X/fsxxZLX877wohRphnY9nbvr5mMWuXa21y8fYFW/bVurGfBfvd9SoAAAQIEJhDw0tHmpWOC0Qhdgrl9Prd3G/xuf3cN1x0LvBtn/f64wp+jWeubJe+fTviut8AsM9Sqjt79EI/ASgKt9m2GdbP2OYOtHJ//+YxhHMOo9woz4hfios7mlpcZbTOjXOM8H/Ri3l5s97EeX81Rm3tlj961jGEuzu8vLf331taT854wYpRpBvb2eY/PMhm1yrWHsxjnAq36a91Yz4LzSXAGAQIECBBILODFo82LR+KRCJe6Ga0zo08b+9mHp+u5/ljg0zvTz8eV/RzNVNPsuf50xXe1BWafnZr11ba3HgECvwVq7tlsa/3WyPNJNmv51vnzG8cxjlHvDObBL8RFnc0tLzPabkbZjnkecF/HfbuP9fhqrtrdK3v0r1UMc1F2v2nl/21dfSnrCydOGWbg2z5v/XkGm9Y5tja2fplA6z5bP8azoGwanEWAAAECBBILeOlo99KReCyGpG4W68/i00Z+68nTdV1/LvDNPsPn59X9OSNDLavmWNpD5/2e5dcnq87Nk7rNEgEC7QWe7NHs17bXbRchu7386/8Zj2kb03a7+PnKeu4X4p5PUdsVzGi7GWXb5p7Ples2A23vjn+vvsVc+evfIn7aBFaeidLaN6teX0vzcp7niRmIPwO97hufccxGuz8jfVr7+VzAPMa/Vz3t0fkUOIMAAQIECEwi8PSh6frjF6NJxqRqGWbmeGau+tRszlnsmrGsdSxw1ouox4+r+vto1Brk9fc96u+urfmTmfh7Jmp4rDlJqiYwRqDGns26xhjxelGzusu7/nOTaRvTeru1zUr67h/G20xWvVXNaPsZZdzm/s+Va7074flK5q39vfK8C7HPMCPH96QR3dOT457w4ZNhBkbcO14xM9i0znGUvbi/BVr32vrjnwe/u+4TAgQIECAwsYCXj/YvH9nG585MvGq8c51rrs9f7Xkq6UHtmNY7FyjpS8Rzziv7OSNi/nK6fk/azH46G/+7LWdf7/f7rl386ZAhgbkE7u7VGa7L3skZeqCG/s9Z5uXm0e8ReukX4sxo+X4etV9a92hUXeLGnz09ut+j1vv2c3298jz/nInPn83I+X7+NGv9s56c94QRo+gz0Po+8W396C498vtm4/P+Aj36LcbY50H/qRKRAAECBAgMFvDy0fflY3C7D8Obhb6zcMX7sHEXD46KezHN5U+/0qdo55Y2L1re8ol7D9Sb/L0pvS84jwCBegIr3zvrKY5daeUeqj3/sz9qD8fu6rLoUe165lUm5axRAj1nIWqsHvZRa5eXZ3TGGeixZz9jZHSqnfOniZ//FqjtPet6f6u1/2lWR3V5fq8yA+3vEvsRVvE9qnNfxqejBI565Vj+Z8KouRKXAAECBAgMFfAS0/8lZmjDvwQ3B/3nYM/8S3sefbwXp+SzR0FdXEWgpE8RzyktPmLucopxL9SHefpQej9wHgECdQVWvo/WlRy32so9VPs87wGRejluN1+LHMlsVC7XxJzdW2DUXESK29M8Ut1y8XzOOgM99+wWK6tVzbw3C1+PBWqaz7jWsV6bozM6qskzfJUZaHNXOF91Fd+jOs+VnNFT4KhXjuV/JvScJbEIECBAgEAYAS8xY19iogyCORg7B5/+T+fic707Pz/NwfXPBe70Lco1JdVHyVUese5/+jFPP0ruA84hQKCNwMr30jaiY1ZduY9qn+d9IEovx+zi61GjeI3M47qaK3oKjJyNKLF5e0ZFmUV5lM1izz27xdKb//x3s/D1WMCsnO/jY8H6R/XkvCeMGEWdgfp3hLIVo3r0zKtMylm9BHr2Xqz+z4RecyQOAQIECBAIKeDlo//Lx2YeYSC2XHztNwe1+16zd7Vzs94zgZq97blWadU9cxKr3z2O9drWpfvfeQQItBFY+R7cRnTcqiv3Uu1rv0vU7P+4HXw9cs26s651Xc0VPQWyzlXNvHt6v2LVzN1anq2rzUDv/brFW815r97NwtdzgT0/n/3cr88F65/B/8efBYtMM1D/blC2YiajVrmWSTmrp0CrXlt3/HOh5xyJRYAAAQIEQgp4IVn7hUT/2/e/1cav2btWOVr3mUDNHvdcq7TqnjmJ1f5ex3ht49J97zwCBNoJrHwfbqc6buWV+6n2td8pavR/3M69F7lGzdnXuCfnql4C2eerRv69rN/j1MjbGp6pq83A+x7q/f1q1nv19jbPHG/Pz2d/37NH9FcP/u4BDx4ZZmDEveIVM4NN6xxH2Yt7LNC679Yf82w47rqjBAgQIEBgEQEvImNeRL659xy7bzn4/NlMtOhhi560yNOadQVa9L3HmqUKPXIR49n9jB+/sxko3e/OI0CgrcDZXp35eFvZMavP3C+1ebdoOQNjduyzqC09sqz9TNDVrQWyzFHLPFsb763fsh5rexbPOgN7e6nXZ7OaXqmrl/UMca64rnxu716vbK127wZZZ6D3fWKLl9WrZt6bha/xBGr22Voxng/xpkxGBAgQIEBgoIAXlBgvKFsfRozCFtvX81no1Z8WveiVuzj1BFrMQes1r1TfOhfrn9/TGDG6MwNX9rlzCRBoK3BnD89yTVvZsavP0iN1eM/oMQNjd+v96D1sose4r+fKHgLR56dHfj2c92L0qE0Mz+hZZmBvD/X8bBbHJ3X09J4h1hPrVa4d0edVbNXp+T/LDIy4T7xizuL3pI5R9uKWCTzprWvjPSPKuu4sAgQIECCwkIAXlngvLK+ejBpB8/AzDz170NK9Zx1i1RVoORet1r4i0CoH6/7cx1iwqDkDV/a3cwkQaC9Qc39nW6u97tgI2fohX+8bI2Zg7C59Fn2EV7SYzwRd3Vog2ryMyKe18dn6I2oW0/M80wyc7aEexzN5tcq1h/NsMVr1YpZ1R/V7Fj91eJavMAPuE+PmfJS9uGUCK+z/lWos67qzCBAgQIDAggIrvRBkrDXySGbzjGDZwyxCnXKoI9BjXmrGuFJ1zbjWGvcXW+zntr+yp51LgEA/gZXvvf2Ux0Raubdqn/udolZ/x+zMelFrOWRep56mlVoIZJ6tWrm3cL2yZq06rOO5OusMXNlPrc6d1fZKXa1sZ173iu/K546YgZW91e59IdMMjLg/vGJmMmqV6yh7ccsFWvXeuv2fE+VddyYBAgQIEFhQwMtJ/5eTJ+bZRvRJrUfXRnc4yr3Vsegm8rsu0GpWWq17tcJWeVg313NNv2L16+o+dj4BAn0FVr5n9pUeF23lHqs91jtBpH6M25H1IkfyHJVLPU0rtRAYNReR4rZwvbpmJA+5eC5HmoGre6nV+ZFMRuXSynb2dUf1K1PcUTOQyUiuns2rzoD7w7jZH2Uv7jWBVe8Ns9V9revOJkCAAAECCwrM9vBfpZ4FRzV0yaPmLjSK5KoIjJqtO3GvFnwnhmvG/WUW+7ntr+5f5xMg0F9g5ftwf+0xEVfusdrnfs+4298xO7F+1Lv1z3RdfVUr1hSYadbu1lLT88lad/N3neforDPwZD/VvnZW4yt11TZdZb0rxqufO2ImVjdXv3eI6DMw4r7wihndpUd+o+zFvSbQYxbEaP+suNZ1ZxMgQIAAgUUFvJS0fynpbbzoKDcru3f/SuM1K9jCoQRK5yHCeVfgIuQrh/mef3p6vadX9q1zCRAYJ7Dy/W2cev/IK/dZ7def4TOb9d997SLO3KfS2trpWrmGQGkfZz6vhmPNNWa2VpvnfekM1NxTNdYqzXvm82o4rrzGzLNRq7YR81Erd+t4vpmBNjMw4r7wiqmf//nvKHtxrwuY1zb3n56u17vuCgIECBAgsLBAz4e0WO1ftBYe5aqlR5zVqgVaLI1AxFncy+kq6N4aPmv/jGDM+OpedT4BAmMFVr5vj5XvH33lXqvd+8k2A/13XruIW00rf22na+UaAivP5lZ7Dceaa2x5+eq5uPIM1NxTNdZauRdb7TUcV15jc/T1+N4+akb05bgvfPiMmgH3hHGzN8pe3HsCo/aouHX26L2uu4oAAQIECCws4CWkzktIVMfXaL9yW3jED0uP2rfPvA6LcHBagc85iP7zlUZEr0V+cz8bV+3vlT3qXAIExguseq961T1ev38GK/db7d67+u+4thHN9Jr38bZTVXd1MxpvRvXEs9AM2JcRZ6Du02fN1SL2NVpOoyYjmoN8vAuYgT8z4J4wbi+Mshf3noB7xri9UsP+XtddRYAAAQIEFheo8RC2Rr6XqFXGPvNsrtIjdR4LZJnh4yp+H81SlzzzPd/07HfPfu9AnxAgEF1g5XtZ9N60ym/lnqv997N7FZNW+2nkuqv07qjOkf5inwsc9W6VY+dKY85YxV+d6z73v/V+zI47jvot15U+PxZytERgpXl5UmuJZYtznuTsWs8yM9BmBlrs9ZI19TPe/7FhSd9WP8fctrkP9XBdfXbVT4AAAQIEHgn0eFiLkeNF69EgDbx4lvkaSCh0YIEM832HL0Ndcszx7NKn3326syddQ4BADIGV72kxOjAmi5X7rvbfz/GZTcbssD5RZ+5baW19pEW5K1Dax5nPu2vX47qZ3dW21rO+tN899tWdGKX5z3zeHTfX/BaYeUZq1fZbrd8ntWqwjmecGagzA/12/9+R9M8vuP89ETl+Mrd17jsjHHNMmCwJECBAgEBwgREPcTHzvoDpXd3eBb89SC+AQIY9d4cpQ11yrHu/49nO884edA0BArEEVr5HxupE/2xW7r3a270bRLPtv7P6RYxmPSKfftoi3REYMRPRYt5x63lNNC/5rPN87t3rnvvqaqzeFhHjXTVz/r5AxN5GzWlfsP2nUT3k5fm74gy03/H7EVa0/qx5X8an0QU+++jnHM+O6HMlPwIECBAgkEbAy0+Olx99mqtPaW4QEh0ukGXvX4XKUpc857r3ztbPq/vO+QQIxBSY7d50pZ6YHemb1RUv53ovyTYDfXdT/2jZ+tEi3/7qIl4RaNHzbGte8Rp1bjZT+XofuToDo/ZWadyr9cx4fqmV884FZpyPFjWdS7Y7o0U91vRsNAPXZ6DdLj9eWa/8F9yPJyT+UTN8/X4z0iz+RMmQAAECBAgkExj5YBc714uYft3vV7LbgnQDCWTYd1e5MtQkx/v3O3bt7K7uNecTIBBbYOX7ZezO9Mtu5RlQe7v3hZG2/XbP2EgjjaPEHtsB0c8EoszJyDzOjKIcH2kk9pzP4ih9jbLHjvKIYjUyjyMfx64LjOxlltjXVetfkcVKnp7Ts85A/V1dtuKsnlfqKpNyVmSBK/127tjnSOQ5khsBAgQIEEgr4AVn7AsO/7n9094YJB5GIMM94ipWhprkOPe9OWN/r+4z5xMgEFsg432oVs6xO9M3u1qm1vHeEmEG+u6ecdEiWI/OYZy+yCUCo+cjQvwSp0jnRDCTg3eJWjMQaW8d5VKr3szrHPk4dl0g8yz0zP26bP0retYrluerGfh7Burv6LIV9cF/wb1sUuKfZZb/vqdE9Yg/STIkQIAAAQKJBaK+AMgrx4uaPv30KfFtQOrBBaLvszt80WuS38+9jUV/izt7yjUECOQQWPmemqNDfbNceR7U3v/9orZ5390yPlptv4zrje+CDI4EMs5U7ZyPfKIeq21gvfzP14w9jLq/9vLK6Fs75z0Xnz0TqN2jWdd7plzn6llt1eX5H30G6uzg66tEd+mR33U1V0QV6DEvYjx7nkSdHXkRIECAAIFpBLysPHtZ4cdvmpuBQsIKRL/PXIWLXo/83NdHzcDVveR8AgRyCYy6t0SIm6tT/bKN0Bs5eO+5OgP9dkicSFeNZjw/Tjdksicw48xdrWnPJcNnV+t0vud2pBnIsMfec4xkNyqXdw/f1xMY1c9McetpP1spk5lc53jmvyZ29V4+27X3r17d/VX/fT1XRhMwz/GfCdFmRj4ECBAgQGBKAS9F8V+K9Chmj6a8ISgqpED0e8AL7ZVjKV70euQX8547c19K947zCBDIKzDzPeystrxda5v5mZvj3kcizkDbXRFz9Yh96J1TzM7IahPoPQ8R420WGb9G9JSTd5CSGci230pqmv2cbD3Lku/sc1Orvgj9rFWLdTwnS2fgNfel58563qi9P6vnlbpG2YvbRuBK753b/znVputWJUCAAAECBHYFvOz0f9lhntd8dxP5kEBjgej3jKvlR69Hfnnv0Vl6d3XPOJ8AgbwCWe5LLfLM27U+mbcwt6Z3mNoz0Gc3xIxS2zLjejE7I6tNIONM1c55s8j6tbaH9bwHtJ6BjHuttUmG9TP2LUvOGfo/OsdIvRxtIf4az+nXzOt1+X8Uq/Y9gv04+9q9tN6PgLmO+/z46ZLvCBAgQIAAgW4CXo7ivhzpzfjedNuIAhE4EIh8LzhI++uhyPXIbfx9d9YefN0QDhAgMKXArPeykrqmbGjlokocneOdZNQMVB73dMuNco8UN13TFks40qyMymWWlo/yE9c7xpUZyLrfrtQ467lZe5cl71nnpmZdkXpZsy5reY5+zsA265+fr/jzZtH764rWnzX3Nhevj8Bnn/0c4xnUp/uiECBAgAABArsCXohivBDpQ4w+7G4SHxIYLBD5/nCHJnI9cotxL87ehzv7wjUECMwhkP3+9ST/OTrYp4onzq71rtJiBvpMfuwoLVyzrRm7Q7LLNk8t8p1pClr4WNM7Qo0ZyL7PahhkXyN7DzPkn31GeuQfqY896hVjvWfw+4zr/7j/ijj7cfbve8D37QTMeKznS7tOW5kAAQIECBC4JOAlKdZLkn706celTeJkAoMFIt4X7pJErEVOfe67szrf3QuuI0BgHoFZ728ldc3TxT6VlJg6x3tJ6xnoM+05orS2zrB+jk6tm2WGGWqd44zdb21mfe8SV2Zghj12pd5Zz52hjxlqmHV+atYVrY81a7PW2s/Xz9k2D+N+yZr9OPvPfeDntgJmPcZzp22XrU6AAAECBAhcFvCSFOMlSR/a9uHyxnABgUACEe8Pd3ki1iKntvff2Xzvzr7rCBCYT2C2+9uVeubrZp+Krhg71/tJrRnoM925otSyzbxOro6tl23m2aqV+8xdr2VkHe8Kd2dglv11t/6ZrpullxnqmGluWtUSrY+t6rTuGs/fb/Os/+N+yZr9OPtv+8Hn7QTM+/hnTbvuWpkAAQIECBC4LeAlafxLkh6068HtjeFCAoEEot4j7hJFrUde7e7F2W3vzrrrCBCYVyD7fe1J/vN2tU9lT+xd613lygz0meh8Ua4Yznpuvq6tlfGsc3elrtk7fsXCuZ79tWZgtn1VyyXzOrP1NHI9meekV+5R+9erfnHmeV4fzbI+j/sla/bj7I/2hGNtBcz9uGdL285anQABAgQIEHgs4EVp3IsS+3r2jzeCBQgEFoh2r3hCFa0W+dS7D89i+WS+XUuAwNwCs9zn7tQxd2f7VHfH3TXeU0pnoM8U541S6jjzeXm7t0bmM89eaW1rdPqff0o9nOcd4OkMzLinnprMcP2MfY1c0wwz07qGqP1rXbf153lOn82wXo/7JWv24+zP9oXjbQXM/phnTNuuWp0AAQIECBCoIuBFacyLEvc67lU2gUUIBBaIeq+4Sxa1HnnVuSdndNxm+ZX79r2vBAgQ+BTIeH+rlfOnhZ+vC9TqhXXWfV/51vvr07jeFd/sVvp8va7nqnilWfxWa66O3c/2W/0+93yvPQP3pzTulbWNMq4XtztzZpZxRnrnHLnzvS3Ey/ksP5thfR337yXsx9mf7QvH2wqY/THPk7ZdtToBAgQIECBQXcBL05iXJu7X3asPvwUJJBGIdL94QhapDrlcvwfPYvZkhl1LgMBaArPc9+7UsVan21Z7x981676nnPW+7bTOs/qZ4wrH5+nmnJWsMINnNc7Z2e9VnXk47tl/dwa+T13+I3dNZroufxfzVTDT/LSqJXpXW9Vt3dzP6tK51edxv2TNfpx96f5wXnsB+6Dfs6Z9N0UgQIAAAQIEqgt4Wer3ssT6unX1gbcggYQCke4dT/gi1SGX6/fj7GZPZte1BAisJ5D9nvck//W63b7iJ/1w7XrvLJ89bz+hc0X49Fvx57k6Ol81K87kZ83zdbWsok8HP3vGP5mBsqnLe9YTm1muzdu9nJnPMjet68jQ3dYG1s/1/L4ys3o77pes2Y+zv7JHnNtewF7o84xp30kRCBAgQIAAgaYCXpr6vDRxPnZuOuQWJ5BcIMr94yljlDrkcXw/zu7zdE5dT4DAugLZ739P8l+36+0rf9IX1879zrLX3/YTOWeEPcvVPpuzs/NUtdo87tU7TzfvVbJn4rP1nvN3e35v6vJddddnpuvydW2OjGeaoVa1ZOl0q/qtm+eZfXVW9XbcL1mzH2d/dZ84v5+AfdHuedOviyIRIECAAAECTQW8MLV7YWL73bbpUFucwGQCUe4lT1mj1CGP7/fmjDZP59L1BAgQyHjvq5Wz7rcXqNUr68z1/vLez/ZTOG+Ed8dVv5+3u3NUtupcvtc9RyefV/Fu4vt5n+k1e/t86vKsUNMt61p5ujVXplnnpXfeWbre20W8GM/zu/Opf+N+yZr9OPu7+8V1/QTsj/rPln7dE4kAAQIECBDoKuDFqf6LE9M/pl0HWTACEwuMvqfUoB1dg/h5n3U15s8aBAgQeBdY+Znw7uD7tgIrz5na99+72k7cGqubLf8wHn3SzagZ/ZxRM7H/TOSy9t+d67975ee9sufP5u/8vtyzH7Vi6et5X7MbPZ2V7PXXyP+p4d3ra+SefY27dq5bSyD7nEfJf62pUS0BAgQIEFhIIMrLhjzm/AuIhbaSUgk0EYh0b3xSYKQ65JLvefNk9lxLgACBT4GVnwOfFn5uI7DyjKl9/z2rzaStt6r58gtx0afejJrR9xk1D/vPRC5/XN5nZbXvzYB75eiZN4Pn9+fRPboTX1/P+5rZ6M5MvF+TufZaub979Py+Vv6Z1+npLVZOgczzHS33nBMgawIECBAgQOCWQLQXEfnE/ouJW0PmIgIEHgmMvC8+Svzt4pE1iB3zufI2Hr4lQIBAM4GVnwHNUC18KrDy3K1Y++lAOOGWwIqz9FnzLTgXdRP47NeKP3fDThpoxZlQ899//5J0dKumbSb8gnvVgbqxmBn8+770zeMGbYhLvtXj87K+R3KqOVCR6hqVS03PK2uNqjdS3CteziXwLhBpjrPk8u7newIECBAgQGARgSwvKvIc8xcTi2wDZRIILzDyHlgDZ2T+Yo95fny615gjaxAgQKBU4PMetNLPpUbOayOw0qytWmubybHqJrDqXL3XvVn4GlPgvVerfh+zMzGzWnVGVq075hSOyWrVGXive4y8qJvAey98f/x3w5tZxq96e9zbyD4t5i1yvb1ya+Fasmav+iLHKXFyDoEjgcjzHS23I0fHCBAgQIAAgUUEor2gyKf/X1AsMurKJJBWYPR98Snc6PzF7/dceTorridAgMBdgZXv9XfNXFdXYOUZnLn2ulNitT2BmeentLY9F5/FESjt48znxelGjkxmngW1/fn7lRyT2DdLs+G/4N534r5HM4tlfw/8XTDHEX0u63MUp1ZTFaW+kXm0si1Zd2TdEWKXGDmHwFWBCLMdMYerjs4nQIAAAQIEJhaI+LIip3Z/c21RaAAAIABJREFUSTHxKCuNwLQCo++JT2FH5y9+m2fK07lwPQECBGoIrHyPr+FnjXoCK8/iTLXXmwgrnQnMNDd3azkzcnyswN2+znTd2A7kjT7TDKjl5+9T8k5k28zNiF9wbzth5aubxZ/71ZFFuWjsM49qdKxsFlo6tZ6elrlnWbu18dH6WYxa5Xlk4xiBpwKt5jbruk89XU+AAAECBAhMLJD1BUfe539pMfHYKo3AEgIj73M1gEfmL/b5M6LUqMYsWIMAAQK1BErvXTOeV8vQOnUFZpy1VWqqOwlWKxFYZba+1Vli5JxxAt/6ttLn4/TniLzSrMxc6xzT2K6KmXtfWls7XStfESjt1+rnXTHNcO7q/YxYf4+5iVh375x6OH+L0bvWaPG+uficQAuBaPPfO58WptYkQIAAAQIEJhPo/YIiXr1fPtwsJxtJ5RAg8Caw7fORX9/SufXtyNzFvvbMudVgFxEgQKCDwKr38w60QjwUWHU2s9X9sM0ufyiQbV5q5/uQz+WNBWr3O9t6jXmXWj5b7+X75+9LlhrSh8WuPDMP6VxeWWDlWSypvTJ3qOVK6nfOtX8PuOrVeyCu5jfT+b2tP+PNZHmnlk8PPxMYIXBndjNeM8JWTAIECBAgQGAigYwvQLPmPNFYKYUAgQoCI+51FdL+d4kR+YvpH2//HUDfECCQUmC1+3jKJkn6fwRWm9Vo9RrDuALRZqV1PnE7IbNvAq1nItL63wx8XlcgUs/l4u9Eak33arNUy8067QRWm8mzettJx1v5zMLx57/sHqXrK/Uyivl7HvzfNXxPYA6BSPt6DlFVECBAgAABAiEEIr3krJJLiMZLggCB0AKj7ocvlFfsGjijalgpbo0+WYMAAQIECBC4JrDSu0aEWq91x9kECBAgQKCvQIRn5co59O22aAQIECDQU2Dl51ur2nv2TywCBAgQIECAAAECBAgQINBcoNUfoFdYt3lzBCBAYEmBXvfP1ri96sgep3UfrE+AAAECBAg8F8j+vhEt/+cdsQIBAgQIEBgnEO25OlM+47oqMgECBAhEEZjpudajlih9kwcBAgQIECBAgAABAgQIEOgm0OMP3NlidMMXiAABAh8Cre6XH2Ga/9iqjmzrNocWgAABAgQIEGgukO39I0K+zZsiAAECBAgQGCQQ4TmbOYdBbROWAAECBBIIZH6+tc49QfukSIAAAQIECBAgQIAAAQIExgu0/gN66/XHC8qAAAEC9wSe3h/vRW1/1dO6RlzfXkUEAgQIECBAILrAiHeQiDGj90l+BAgQIECgh0DEZ3SEnHrYi0GAAAECcwtEeJ71zmHujqqOAAECBAgQIECAAAECBAgMEuj9B/xv8QaVLywBAgS6CHy7970+3xL4P//n//3f7fuMX49q7HUso5ucCRAgQIAAgTECR+8nW0bb+9nra8T/vfLccjyq53Vsq8lXAgQIECBAYF/g7Fm6PU+3Z2/Ed4P3nF5Vbrm+vj+qb1/EpwQIECBA4LnA0fMn6rP1VXXJM/S5jhUIECBAgAABAgQIECBAgAABAgQIECAQVGDvL3CDpiotAgQIECBAgMCyAts/bL//0tjd71/vf3ev3a7bGvH6efv+9XV7t3z/zPcECBAgQIBAfYHtGfz+dXtOP/la6z1hy6t+5VYkQIAAAQJtBLZn15Pn6Ovap8/SV3VbLm0qtSoBAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIEHgg8P6P2p/fv37u9b9XCZ/xH5TlUgIECBAgQKCCwPZs3vva6x1hi/OtnC23b8d9ToAAAQIEIgpsz6/tOdf667vBFvv9M98TIECAAAECBAgQIECAAAECBAgQIEBgeQF/ebr8CAAgQIAAAQIEggl8vp99+/n1ec3/vRi2WJ9f944FY5MOAQIECBCYVmB7Lm8Fbj8ffX0dq/m/V+y9eJ+fbTn6SoAAAQIEMgh8Psf2fn59VuN/L4+99Ten7dj2s68ECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAptcw2AAAgAElEQVQgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECPx/duhAAAAAAADI/7UREhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgfUWlHgAACAASURBVAMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMH3CjNDQAAIABJREFUDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHDhw4cODAgQMHtEPHAgAAAACD/K2nsaMQMmDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAGPnY0UAAAMe0lEQVQDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBgwYMGDAgAEDBt4DAfUfAYwpoEnzAAAAAElFTkSuQmCC\"/>\r\n </defs>\r\n </svg>\r\n </div>\r\n\r\n <ng-container *ngFor=\"let ticket of footfallTicketsData\">\r\n <div *ngIf=\"ticket?._source as source\" class=\"row mb-6\">\r\n <div class=\"col-2 card-title-label my-2\">Ticket Name</div>\r\n <div class=\"col-1 font-bold my-2\">:</div>\r\n <div class=\"col-9 card-title-value my-2\">{{ source.ticketName ? (source.ticketName | titlecase) : '-' }}</div>\r\n <div class=\"col-2 card-title-label my-2\">Ticket ID</div>\r\n <div class=\"col-1 font-bold my-2\">:</div>\r\n <div class=\"col-9 card-title-value my-2\">{{ source.ticketId ? source.ticketId:'-' }}</div>\r\n <div class=\"col-2 card-title-label my-2\">Store Name</div>\r\n <div class=\"col-1 font-bold my-2\">:</div>\r\n <div class=\"col-9 card-title-value my-2\">{{ source.storeName ? source.storeName:'-' }}</div>\r\n <div class=\"col-2 card-title-label my-2\">Status</div>\r\n <div class=\"col-1 font-bold my-2\">:</div>\r\n <div class=\"col-3 my-2\"><span \r\n class=\"badge\" \r\n [ngClass]=\"{\r\n 'badge-light-primary': source.status === 'open',\r\n 'badge-secondary': source.status === 'closed',\r\n 'badge-light-warning': source.status === 'pending',\r\n 'badge-light-danger': source.status === 'rejected'\r\n }\">\r\n {{ source.status ? (source.status | titlecase) : '-' }}\r\n</span></div>\r\n \r\n <div class=\"col-2 card-title-label my-2\">Date</div>\r\n <div class=\"col-1 font-bold my-2\">:</div>\r\n <div class=\"col-3 card-title-value my-2\">{{ source.dateString ? (source.dateString | date: 'dd MMM, yyyy') :'- ' }}</div>\r\n </div>\r\n \r\n <div *ngIf=\"ticket?._source as source\" class=\"border-totalfootfall\">\r\n <div class=\"card-header ellipse1 min-h-45px py-1 px-5\">\r\n <div class=\"my-0\">\r\n <h5 class=\"card-title\">{{ source?.footfallCount !== null ?\r\n source?.footfallCount : '--' }} <span class=\"sub-header ms-2\">Total Footfall</span></h5>\r\n \r\n </div>\r\n </div>\r\n <div class=\"card-body py-2 px-5\">\r\n <div class=\"row\">\r\n <div class=\"col-lg-3 col-xl-3 col-md-3 my-3\">\r\n <h5 class=\"card-title\">{{ source?.duplicateCount !== null ?\r\n source?.duplicateCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Duplicates</span>\r\n </div>\r\n <div class=\"col-lg-3 col-xl-3 col-md-3 my-3\">\r\n <h5 class=\"card-title\">{{ source?.employeeCount !== null ?\r\n source?.employeeCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">Employee/Staff</span>\r\n </div>\r\n \r\n <div class=\"col-lg-3 col-xl-3 col-md-3 my-3\">\r\n <h5 class=\"card-title\">{{ source?.houseKeepingCount !== null ?\r\n source?.houseKeepingCount : '--' }}</h5>\r\n <span class=\"card-title-sub-header\">House Keeping</span>\r\n </div>\r\n <div class=\"col-lg-3 col-xl-3 col-md-3 my-3 vl\">\r\n <h5 class=\"card-title\"> {{ \r\n (source.footfallCount || 0) - \r\n ((source.houseKeepingCount || 0) + \r\n (source.employeeCount || 0) + \r\n (source.duplicateCount || 0)) \r\n }}</h5>\r\n <span class=\"card-title-sub-header\">Actual footfall</span>\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n \r\n \r\n <div *ngIf=\"ticket?._source as source\" class=\"my-5\">\r\n <h3 *ngIf=\"source?.duplicateImages?.length\" class=\"text-lg font-semibold mb-4\"> <span class=\"me-2\"><svg xmlns=\"http://www.w3.org/2000/svg\"\r\n width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_730_76157)\">\r\n <path\r\n d=\"M3.75 11.25H3C2.60218 11.25 2.22064 11.092 1.93934 10.8107C1.65804 10.5294 1.5 10.1478 1.5 9.75V3C1.5 2.60218 1.65804 2.22064 1.93934 1.93934C2.22064 1.65804 2.60218 1.5 3 1.5H9.75C10.1478 1.5 10.5294 1.65804 10.8107 1.93934C11.092 2.22064 11.25 2.60218 11.25 3V3.75M8.25 6.75H15C15.8284 6.75 16.5 7.42157 16.5 8.25V15C16.5 15.8284 15.8284 16.5 15 16.5H8.25C7.42157 16.5 6.75 15.8284 6.75 15V8.25C6.75 7.42157 7.42157 6.75 8.25 6.75Z\"\r\n stroke=\"#475467\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_730_76157\">\r\n <rect width=\"18\" height=\"18\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg></span>Duplicates</h3>\r\n \r\n \r\n <div *ngFor=\"let original of source.duplicateImages\" class=\"mb-4\">\r\n <div *ngIf=\"source?.duplicateImages?.length\" class=\"duplicate-head my-3\">Original image</div>\r\n <div class=\"row\">\r\n <div class=\"col-md-3 relative\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3\">\r\n \r\n <img [src]=\"imageUrl + original.filePath\" alt=\"\" class=\"w-100 rounded border\" />\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{ original.tempId }}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{ getFormattedEntryTime(original?.entryTime) }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div class=\"duplicate-head text-lg my-3\">Duplicates<span class=\"badge ms-2\" \r\n [ngClass]=\"{\r\n 'badge-light-primary': source?.duplicateStatus === 'pending',\r\n 'badge-light-success': source?.duplicateStatus === 'approved',\r\n 'badge-light-danger': source?.duplicateStatus === 'rejected'\r\n }\">{{source?.duplicateStatus | titlecase}}</span></div>\r\n <div class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of original.data\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n <input *ngIf=\"source?.duplicateStatus ==='pending'\"\r\n type=\"checkbox\"\r\n [(ngModel)]=\"img.selected\"\r\n class=\"position-absolute absolute form-check-input\"\r\n(change)=\"onImageCheckboxChange(img, 'duplicate', original)\"\r\n />\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{ img.tempId }}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{ getFormattedEntryTime(img?.entryTime) }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n \r\n <div *ngIf=\"source?.duplicateImages?.length\" class=\"my-7 d-flex justify-content-end\" role=\"group\">\r\n <button [disabled]=\"!duplicateACCount\" class=\"btn btn-outline me-1\" (click)=\"popupOpen('rejected','duplicate')\" >Reject</button>\r\n <button [disabled]=\"!duplicateACCount\" class=\"btn btn-primary ms-1\" (click)=\"popupOpen('approved','duplicate')\">Approve</button>\r\n </div>\r\n \r\n <div *ngIf=\"source?.employee?.length\" class=\"duplicate-head text-lg my-3\"><span class=\"me-2\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"16\" viewBox=\"0 0 18 16\" fill=\"none\">\r\n<path d=\"M12.75 14.75V13.25C12.75 12.4544 12.4339 11.6913 11.8713 11.1287C11.3087 10.5661 10.5456 10.25 9.75 10.25H3.75C2.95435 10.25 2.19129 10.5661 1.62868 11.1287C1.06607 11.6913 0.75 12.4544 0.75 13.25V14.75M17.25 14.75V13.25C17.2495 12.5853 17.0283 11.9396 16.621 11.4142C16.2138 10.8889 15.6436 10.5137 15 10.3475M12 1.3475C12.6453 1.51273 13.2173 1.88803 13.6257 2.41423C14.0342 2.94044 14.2559 3.58762 14.2559 4.25375C14.2559 4.91988 14.0342 5.56706 13.6257 6.09327C13.2173 6.61947 12.6453 6.99477 12 7.16M9.75 4.25C9.75 5.90685 8.40685 7.25 6.75 7.25C5.09315 7.25 3.75 5.90685 3.75 4.25C3.75 2.59315 5.09315 1.25 6.75 1.25C8.40685 1.25 9.75 2.59315 9.75 4.25Z\" stroke=\"#475467\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"/>\r\n</svg></span>Employee/Staff <span class=\"badge ms-2\" \r\n [ngClass]=\"{\r\n 'badge-light-primary': source?.employeeStatus === 'pending',\r\n 'badge-light-success': source?.employeeStatus === 'approved',\r\n 'badge-light-danger': source?.employeeStatus === 'rejected'\r\n }\">{{source?.employeeStatus | titlecase}}</span></div>\r\n <div class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of source.employee\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n \r\n <!-- Top-right Checkbox -->\r\n <input *ngIf=\"source?.employeeStatus ==='pending'\" type=\"checkbox\" [(ngModel)]=\"img.selected\"\r\n class=\"position-absolute absolute form-check-input\"\r\n (change)=\"onImageCheckboxChange(img, 'employee')\" />\r\n \r\n \r\n <!-- Image -->\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n \r\n <!-- Details -->\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{img.tempId}}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{getFormattedEntryTime(img?.entryTime)}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div *ngIf=\"source?.employee?.length\" class=\"my-7 d-flex justify-content-end\" role=\"group\">\r\n <button [disabled]=\"!employeeACCount\" class=\"btn btn-outline me-1\" (click)=\"popupOpen('rejected','employee')\" >Reject</button>\r\n <button [disabled]=\"!employeeACCount\" class=\"btn btn-primary ms-1\" (click)=\"popupOpen('approved','employee')\">Approve</button>\r\n </div>\r\n \r\n \r\n <div *ngIf=\"source?.houseKeeping?.length\" class=\"duplicate-head text-lg my-3\"><span class=\"me-2\"><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M7.51995 0.613065C8.33739 -0.204355 9.66267 -0.204355 10.4801 0.613065L17.387 7.51995C18.2043 8.33739 18.2043 9.66267 17.387 10.4801L10.4801 17.387C9.66267 18.2043 8.33739 18.2043 7.51995 17.387L5.54626 15.4133L3.73708 17.2224C2.91966 18.0399 1.59436 18.0399 0.776944 17.2224C-0.0404767 16.4051 -0.0404767 15.0797 0.776944 14.2624L2.58612 12.4531L0.613065 10.4801C-0.204355 9.66267 -0.204355 8.33739 0.613065 7.51995L7.51995 0.613065ZM9.49336 1.59978C9.22088 1.32731 8.77909 1.32731 8.50661 1.59978L3.57286 6.53357L11.4665 14.4272L16.4002 9.49336C16.6727 9.22088 16.6727 8.77909 16.4002 8.5067L12.9465 5.05286L11.7952 6.20403C11.5228 6.4765 11.0811 6.4765 10.8086 6.20403C10.5361 5.93155 10.5361 5.48978 10.8086 5.21731L11.9597 4.06614L10.9732 3.07964L8.17757 5.87533C7.90509 6.1478 7.46329 6.1478 7.19081 5.87533C6.91833 5.60286 6.91833 5.16109 7.19081 4.88862L9.9865 2.09293L9.49336 1.59978ZM10.4797 15.4139L2.58615 7.52028L1.59978 8.5067C1.3273 8.77909 1.3273 9.22088 1.59978 9.49336L8.50661 16.4002C8.77909 16.6727 9.22088 16.6727 9.49336 16.4002L10.4797 15.4139ZM3.57275 13.4399L1.76366 15.249C1.49119 15.5215 1.49119 15.9633 1.76366 16.2358C2.03613 16.5082 2.4779 16.5082 2.75037 16.2358L4.55946 14.4266L3.57275 13.4399Z\" fill=\"#475467\"/>\r\n</svg></span> House Keeping <span class=\"badge ms-2\" \r\n [ngClass]=\"{\r\n 'badge-light-primary': source?.houseKeepingStatus === 'pending',\r\n 'badge-light-success': source?.houseKeepingStatus === 'approved',\r\n 'badge-light-danger': source?.houseKeepingStatus === 'rejected'\r\n }\">{{source?.houseKeepingStatus | titlecase}}</span></div>\r\n <div class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of source.houseKeeping\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n \r\n <!-- Top-right Checkbox -->\r\n <input *ngIf=\"source?.houseKeepingStatus ==='pending'\" type=\"checkbox\" [(ngModel)]=\"img.selected\" \r\n class=\"position-absolute absolute form-check-input\"\r\n (change)=\"onImageCheckboxChange(img, 'housekeeping')\" />\r\n \r\n \r\n <!-- Image -->\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n \r\n <!-- Details -->\r\n <div class=\"desc-title ms-2 mt-2\">Temp ID: {{img.tempId}}</div>\r\n <div class=\"desc-value ms-2\">Entry Time: {{getFormattedEntryTime(img?.entryTime)}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div *ngIf=\"source?.houseKeeping?.length\" class=\"my-7 d-flex justify-content-end\" role=\"group\">\r\n <button [disabled]=\"!houseKeepingACCount\" class=\"btn btn-outline me-1\" (click)=\"popupOpen('rejected','housekeeping')\" >Reject</button>\r\n <button [disabled]=\"!houseKeepingACCount\" class=\"btn btn-primary ms-1\" (click)=\"popupOpen('approved','housekeeping')\">Approve</button>\r\n </div>\r\n </div>\r\n \r\n </ng-container>\r\n <div *ngIf=\"!footfallLoading && !footfallNoData\" class=\"my-3\">\r\n <lib-pagination [itemsPerPage]=\"pageSizeFootfall\" [currentPage]=\"footfallcurrentPage\" [totalItems]=\"totalItemsFootfall\"\r\n [paginationSizes]=\"paginationSizes\" [pageSize]=\"setFootfallpageSize()\" (pageChange)=\"onFootfallPageChange($event)\"\r\n (pageSizeChange)=\"onFootfallPageSizeChange($event)\"></lib-pagination>\r\n </div>\r\n \r\n </div>\r\n \r\n </section>\r\n <div *ngIf=\"footfallLoading\" 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 </div>\r\n <div *ngIf=\"footfallNoData\" class=\"row\">\r\n <div class=\"col-lg-12 mb-3\">\r\n \r\n <div class=\"card-body d-flex justify-content-center align-items-center flex-column \" style=\"margin: 64px;border-radius: 8px;\r\nbackground: var(--Gray-50, #F9FAFB);\">\r\n <svg class=\"my-5\" xmlns=\"http://www.w3.org/2000/svg\" width=\"94\" height=\"94\" viewBox=\"0 0 94 94\" fill=\"none\">\r\n <rect x=\"7\" y=\"7\" width=\"80\" height=\"80\" rx=\"40\" fill=\"#DAF1FF\" />\r\n <rect x=\"7\" y=\"7\" width=\"80\" height=\"80\" rx=\"40\" stroke=\"#EAF8FF\" stroke-width=\"13.3333\" />\r\n <g clip-path=\"url(#clip0_730_75095)\">\r\n <path\r\n d=\"M55.3327 62V58.6667C55.3327 56.8986 54.6303 55.2029 53.3801 53.9526C52.1298 52.7024 50.4341 52 48.666 52H35.3327C33.5646 52 31.8689 52.7024 30.6186 53.9526C29.3684 55.2029 28.666 56.8986 28.666 58.6667V62M65.3327 62V58.6667C65.3316 57.1895 64.8399 55.7546 63.935 54.5872C63.03 53.4198 61.7629 52.5859 60.3327 52.2167M53.666 32.2167C55.1 32.5838 56.3711 33.4178 57.2787 34.5872C58.1864 35.7565 58.6791 37.1947 58.6791 38.675C58.6791 40.1553 58.1864 41.5935 57.2787 42.7628C56.3711 43.9322 55.1 44.7662 53.666 45.1333M48.666 38.6667C48.666 42.3486 45.6812 45.3333 41.9993 45.3333C38.3174 45.3333 35.3327 42.3486 35.3327 38.6667C35.3327 34.9848 38.3174 32 41.9993 32C45.6812 32 48.666 34.9848 48.666 38.6667Z\"\r\n stroke=\"#00A3FF\" stroke-width=\"4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_730_75095\">\r\n <rect width=\"40\" height=\"40\" fill=\"white\" transform=\"translate(27 27)\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n <div class=\"nodata-title my-3\">No pending items</div>\r\n <div class=\"nodata-sub mb-3\">Looks like there is no action item required for <span\r\n *ngIf=\"selectedRevopsType?.value==='duplicateImages'\">duplicates</span><span\r\n *ngIf=\"selectedRevopsType?.value==='employee'\">employee/staff</span> <span\r\n *ngIf=\"selectedRevopsType?.value==='houseKeeping'\">houseKeeping</span>\r\n <span\r\n *ngIf=\"!selectedRevopsType?.value\">items</span></div>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- Card Body -->\r\n <div *ngIf=\"selectedRevopsType?.value !== ''\" class=\"card-body mt-3 py-0\">\r\n <span class=\"cursor-pointer\" *ngIf=\"isCollapsed\" (click)=\"toggleSidebar()\" style=\"position: absolute; top: 15px; left: 0;\">\r\n <svg class=\"mt-2 ms-2\" xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path\r\n d=\"M9.72714 12.6365L13.3635 9.00013L9.72714 5.36377M4.63623 12.6365L8.27259 9.00013L4.63623 5.36377\"\r\n stroke=\"#101828\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n <ng-container *ngFor=\"let ticket of footfallTicketsData\">\r\n <div *ngIf=\"ticket?._source as source\" class=\"my-4\">\r\n <div *ngFor=\"let original of source.duplicateImages\" class=\"mb-4\">\r\n <div *ngIf=\"source?.duplicateImages?.length\" class=\"duplicate-head my-2\">Original image</div>\r\n <div class=\"row\">\r\n <!-- ✅ Original Image -->\r\n <div class=\"col-md-3 relative\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3\">\r\n \r\n <img [src]=\"imageUrl + original.filePath\" alt=\"\" class=\"w-100 rounded border\" />\r\n <div class=\"desc-title ms-2 mt-2\">{{source.storeName}}</div>\r\n <div class=\"desc-value ms-2\">Footfall date : {{source.dateString | date:'dd/MM/yyyy'}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <!-- 🟨 Duplicate Images (for this original) -->\r\n <div class=\"duplicate-head my-3\">Duplicates <span class=\"badge ms-2\" \r\n [ngClass]=\"{\r\n 'badge-light-primary': source?.duplicateStatus === 'pending',\r\n 'badge-light-success': source?.duplicateStatus === 'approved',\r\n 'badge-light-danger': source?.duplicateStatus === 'rejected'\r\n }\">{{source?.duplicateStatus | titlecase}}</span></div>\r\n <div class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of original.data\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n <input *ngIf=\"source?.duplicateStatus ==='pending'\" type=\"checkbox\" [(ngModel)]=\"img.selected\"\r\n class=\"position-absolute absolute form-check-input\"\r\n (change)=\"onImageCheckboxChange1(img, 'duplicate')\" />\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n <div class=\"desc-title ms-2 mt-2\">{{source.storeName}}</div>\r\n <div class=\"desc-value ms-2\">Footfall date : {{source.dateString | date:'dd/MM/yyyy'}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"source?.employee?.length\" class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of source.employee\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n \r\n <!-- Top-right Checkbox -->\r\n <input *ngIf=\"source?.employeeStatus ==='pending'\" type=\"checkbox\" [(ngModel)]=\"img.selected\"\r\n class=\"position-absolute absolute form-check-input\"\r\n (change)=\"onImageCheckboxChange1(img, 'employee')\" />\r\n \r\n \r\n <!-- Image -->\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n \r\n <!-- Details -->\r\n <div class=\"desc-title ms-2 mt-2\">{{source.storeName}}</div>\r\n <div class=\"desc-value ms-2\">Footfall date : {{source.dateString | date:'dd/MM/yyyy'}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"source?.houseKeeping?.length\" class=\"row\">\r\n <div class=\"col-md-3 position-relative\" *ngFor=\"let img of source.houseKeeping\">\r\n <div class=\"pb-3 img-border border border-1 h-100 rounded-3 position-relative\">\r\n \r\n <!-- Top-right Checkbox -->\r\n <input *ngIf=\"source?.houseKeepingStatus ==='pending'\" type=\"checkbox\" [(ngModel)]=\"img.selected\"\r\n class=\"position-absolute absolute form-check-input\"\r\n (change)=\"onImageCheckboxChange1(img, 'housekeeping')\" />\r\n \r\n \r\n <!-- Image -->\r\n <img [src]=\"imageUrl + img.filePath\" alt=\"\" class=\"w-100 mb-2 rounded border\" />\r\n \r\n <!-- Details -->\r\n <div class=\"desc-title ms-2 mt-2\">{{source.storeName}}</div>\r\n <div class=\"desc-value ms-2\">Footfall date : {{source.dateString | date:'dd/MM/yyyy'}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <!-- <div *ngIf=\"!footfallLoading && !footfallNoData\" class=\"my-3\">\r\n <lib-pagination [itemsPerPage]=\"pageSizeFootfall\" [currentPage]=\"footfallcurrentPage\"\r\n [totalItems]=\"totalItemsFootfall\" [paginationSizes]=\"paginationSizes\" [pageSize]=\"setFootfallpageSize()\"\r\n (pageChange)=\"onFootfallPageChange($event)\"\r\n (pageSizeChange)=\"onFootfallPageSizeChange($event)\"></lib-pagination>\r\n </div> -->\r\n </div>\r\n </div>\r\n \r\n </div>\r\n</div>\r\n\r\n<ng-template #zoomPopup let-model>\r\n <div class=\"p-4 m-4\">\r\n <div class=\"modal-header border-0 p-0 w-100 flex-column align-items-start\">\r\n \r\n <!-- Heading -->\r\n <h5 class=\"modal-title mb-2\">\r\n {{ popupType === 'approved' ? 'Approve' : 'Reject' }} Selected Images\r\n </h5>\r\n\r\n <!-- Description -->\r\n <p class=\"mb-3\">\r\n You're about to {{ popupType === 'approved' ? 'approve' : 'reject' }} the following number of selected images.\r\n </p>\r\n\r\n <!-- Count Box -->\r\n <div class=\"border border-1 rounded p-3 w-50 mb-4\">\r\n <div *ngIf=\"popupvalue === 'employee'\" class=\"fw-semibold fs-5 mb-2\">\r\n {{ employeeACCount || '--' }}\r\n </div>\r\n <div *ngIf=\"popupvalue === 'housekeeping'\" class=\"fw-semibold fs-5 mb-2\">\r\n {{ houseKeepingACCount || '--' }}\r\n </div>\r\n <div *ngIf=\"popupvalue === 'duplicate'\" class=\"fw-semibold fs-5 mb-2\">\r\n {{ duplicateACCount || '--' }}\r\n </div>\r\n <div class=\"fw-semibold text-muted fs-6 mt-2\">\r\n {{ popupvalue | titlecase }}s\r\n </div>\r\n </div>\r\n\r\n <!-- Action Buttons -->\r\n <div class=\"w-100 d-flex justify-content-end\">\r\n <button class=\"btn btn-outline me-2\" (click)=\"cancel()\">Cancel</button>\r\n <button class=\"btn btn-primary\" (click)=\"submitValue(popupType, popupvalue)\">\r\n {{ popupType === 'approved' ? 'Approve' : 'Reject' }}\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { GlobalStateService, PageInfoService } from 'tango-app-ui-global';\r\nimport { Subject, takeUntil } from \"rxjs\";\r\nimport { TicketService } from '../../services/ticket.service';\r\n@Component({\r\n selector: 'lib-tango-manage-tickets',\r\n templateUrl: './tango-manage-tickets.component.html',\r\n styleUrl: './tango-manage-tickets.component.scss'\r\n})\r\nexport class TangoManageTicketsComponent implements OnInit,OnDestroy {\r\n SelectedTab:any='installation'\r\n private readonly destroy$ = new Subject();\r\n headerFilters: any;\r\n ticketAllCount: any;\r\n users: any;\r\n constructor(private pageInfo:PageInfoService,private route: ActivatedRoute,private router:Router,public gs:GlobalStateService,private service:TicketService){\r\n }\r\n\r\n ngOnInit(): void {\r\n const userData: any = JSON.parse(localStorage.getItem(\"user-info\") || \"{}\");\r\n this.users = userData;\r\n this.route?.queryParams?.pipe(takeUntil(this.destroy$)).subscribe(params => {\r\n if (params.hasOwnProperty('type')) {\r\n const type = params['type'];\r\n this.Selectedtabs(type);\r\n \r\n } else{\r\n this.updateStoreIdQueryParam()\r\n }\r\n });\r\n this.onLoad(); \r\n this.setPageData();\r\n }\r\n\r\n updateStoreIdQueryParam() {\r\n const queryParams = { ...this.route?.snapshot?.queryParams };\r\n // Update storeId in queryParams\r\n queryParams.type = this.SelectedTab.toLocaleLowerCase();\r\n // Navigate to the same route with updated queryParams\r\n this.router.navigate([], { queryParams: queryParams, queryParamsHandling: 'merge' });\r\n }\r\n\r\n setPageData(){\r\n this.pageInfo.setTitle('Tickets')\r\n this.pageInfo.setDescription('Summary of queries raised,addresed & resolved')\r\n let breadcrumbs : any[]=[];\r\n if (this.gs.userAccess.value?.userType === \"tango\") {\r\n breadcrumbs= [\r\n {\r\n title: \"Manage\",\r\n path: \"/manage/brands\",\r\n isActive: false,\r\n isSeparator: false,\r\n },\r\n {\r\n title: \"Manage\",\r\n path: \"/manage/brands\",\r\n isActive: false,\r\n isSeparator: true,\r\n },\r\n ];\r\n } else if (this.gs.userAccess.value?.userType === \"client\") {\r\n breadcrumbs= [\r\n {\r\n title: \"Manage\",\r\n path: \"/manage/summary\",\r\n isActive: false,\r\n isSeparator: false,\r\n },\r\n {\r\n title: \"Manage\",\r\n path: \"/manage/summary\",\r\n isActive: false,\r\n isSeparator: true,\r\n },\r\n ];\r\n }\r\n this.pageInfo.setBreadcrumbs(breadcrumbs);\r\n }\r\n\r\n \r\n Selectedtabs(value:any){\r\n this.SelectedTab = value;\r\n }\r\n ngOnDestroy(): void {\r\n this.destroy$.next(true);\r\n this.destroy$.complete();\r\n }\r\nonLoad(){\r\n this.gs.dataRangeValue?.pipe(takeUntil(this.destroy$))?.subscribe({\r\n next: (data: any) => {\r\n if (data) {\r\n this.headerFilters = data;\r\n this.getAllCount();\r\n }\r\n }\r\n })\r\n}\r\n\r\ngetAllCount(){\r\n let obj ={\r\n clientId: this.headerFilters?.clients,\r\n fromDate: this.headerFilters?.date?.startDate,\r\n toDate: this.headerFilters?.date?.endDate\r\n }\r\n this.service.getAllCounts(obj)?.pipe(takeUntil(this.destroy$))?.subscribe({\r\n next: (res: any) => {\r\n if(res.code ===200){\r\n this.ticketAllCount = res?.data[0];\r\n }\r\n }\r\n })\r\n}\r\n\r\n}\r\n","<div class=\"card mb-5 py-3 px-5\">\r\n <ul class=\"nav nav-stretch nav-line-tabs1 nav-line-tabs border-transparent flex-nowrap\">\r\n <li class=\"nav-item\">\r\n <a [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'installation' }\" (click)=\"Selectedtabs('installation')\"\r\n [ngClass]=\"SelectedTab === 'installation' ? 'active' : ''\" class=\"nav-link cursor-pointer no-border me-3\">\r\n Installation<span class=\"mx-2 \" [ngClass]=\"SelectedTab ==='installation' ? 'badge-num-primary' :'badge-num-muted'\">{{ticketAllCount?.installationCount?ticketAllCount?.installationCount:0}}</span>\r\n </a>\r\n </li>\r\n <li class=\"nav-item\" >\r\n <a [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'infra' }\" (click)=\"Selectedtabs('infra')\"\r\n [ngClass]=\"SelectedTab === 'infra' ? 'active' : ''\" class=\"nav-link cursor-pointer no-border me-3\">\r\n Infra<span class=\"mx-2\" [ngClass]=\"SelectedTab ==='infra' ? 'badge-num-primary' :'badge-num-muted'\">{{ticketAllCount?.infraCount?ticketAllCount?.infraCount:0}}</span>\r\n </a>\r\n </li> \r\n <li class=\"nav-item\" [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'dataMismatch' }\" (click)=\"Selectedtabs('dataMismatch')\">\r\n <a [ngClass]=\"SelectedTab ==='dataMismatch' ? 'active' :''\" class=\"nav-link cursor-pointer me-3\">Data Mismatch\r\n <span class=\"mx-2\" [ngClass]=\"SelectedTab ==='dataMismatch' ? 'badge-num-primary' :'badge-num-muted'\">{{ticketAllCount?.datamismatchCount? ticketAllCount?.datamismatchCount:0}}</span></a>\r\n </li>\r\n <!-- <li *ngIf=\"this.users.userType ==='tango'\" class=\"nav-item\" [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'audit' }\" (click)=\"Selectedtabs('audit')\"><a [ngClass]=\"SelectedTab ==='audit' ? 'active' :''\"\r\n class=\"nav-link cursor-pointer no-border me-3\">Audit</a>\r\n </li> -->\r\n <li *ngIf=\"this.users.userType ==='tango'\" class=\"nav-item\" (click)=\"Selectedtabs('mat')\"><a [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'mat' }\" [ngClass]=\"SelectedTab ==='mat' ? 'active' :''\"\r\n class=\"nav-link cursor-pointer no-border me-3\">Employee Mat\r\n <span class=\"mx-2 \" [ngClass]=\"SelectedTab ==='mat' ? 'badge-num-primary' :'badge-num-muted'\">{{ticketAllCount?.matCount ?ticketAllCount?.matCount:0}}</span></a>\r\n </li>\r\n<li *ngIf=\"(gs.userAccess | async)?.userType === 'tango' || headerFilters?.client ==='11'\" class=\"nav-item\" (click)=\"Selectedtabs('footfall')\"><a [routerLink]=\"['/manage/tickets']\" [queryParams]=\"{ type: 'footfall' }\" [ngClass]=\"SelectedTab ==='footfall' ? 'active' :''\"\r\n class=\"nav-link cursor-pointer no-border me-3\">Footfall Directory\r\n </a>\r\n <!-- <span class=\"mx-2 \" [ngClass]=\"SelectedTab ==='footfall' ? 'badge-num-primary' :'badge-num-muted'\">{{ticketAllCount?.matCount ?ticketAllCount?.matCount:0}}</span> -->\r\n </li>\r\n \r\n </ul>\r\n</div>\r\n<lib-footfall-dic *ngIf=\"SelectedTab ==='footfall'\"></lib-footfall-dic>\r\n<lib-tickets *ngIf=\"SelectedTab !=='audit' && SelectedTab !=='footfall'\"></lib-tickets>\r\n<lib-audit-metrics *ngIf=\"SelectedTab ==='audit'\"></lib-audit-metrics>\r\n<router-outlet></router-outlet>","import { NgModule } from '@angular/core';\r\nimport { RouterModule, Routes } from '@angular/router';\r\nimport { TangoManageTicketsComponent } from './components/tango-manage-tickets/tango-manage-tickets.component';\r\n\r\nconst routes: Routes = [\r\n {\r\n path:'',\r\n component:TangoManageTicketsComponent\r\n }\r\n];\r\n\r\n@NgModule({\r\n imports: [RouterModule.forChild(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class TangoManageTicketsRoutingModule { }\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-audit-log',\r\n templateUrl: './audit-log.component.html',\r\n styleUrl: './audit-log.component.scss'\r\n})\r\nexport class AuditLogComponent {\r\n\r\n}\r\n","<p>audit-log works!</p>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { TangoManageTicketsRoutingModule } from './tango-manage-tickets-routing.module';\r\nimport { TangoManageTicketsComponent } from './components/tango-manage-tickets/tango-manage-tickets.component';\r\nimport { TicketsComponent } from './components/tickets/tickets.component';\r\nimport { FormsModule,ReactiveFormsModule } from '@angular/forms';\r\nimport { CommonSharedModule } from 'tango-app-ui-shared';\r\nimport { AddCsmModalComponent } from './components/add-csm-modal/add-csm-modal.component';\r\nimport { CommentModelComponent } from './components/comment-model/comment-model.component';\r\nimport { AuditMetricsComponent } from './components/audit-metrics/audit-metrics.component';\r\nimport { ReTriggerComponent } from './components/re-trigger/re-trigger.component';\r\nimport { AuditLogComponent } from './components/audit-log/audit-log.component';\r\nimport { CountComponent } from './components/count/count.component';\r\nimport { FootfallDicComponent } from './components/footfall-dic/footfall-dic.component';\r\nimport { ReactiveSelectComponent } from './components/reactive-select/reactive-select.component';\r\nimport { GroupSelectComponent } from './components/group-select/group-select.component';\r\n@NgModule({\r\n declarations: [\r\n TangoManageTicketsComponent,\r\n TicketsComponent,AddCsmModalComponent, CommentModelComponent, AuditMetricsComponent, \r\n ReTriggerComponent, AuditLogComponent, CountComponent, FootfallDicComponent,\r\n ReactiveSelectComponent,\r\n GroupSelectComponent,\r\n ],\r\n imports: [\r\n CommonModule,\r\n TangoManageTicketsRoutingModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n CommonSharedModule\r\n ]\r\n})\r\nexport class TangoManageTicketsModule { }\r\n","/*\r\n * Public API Surface of tango-manage-tickets\r\n */\r\n\r\nexport * from './lib/tango-manage-tickets.module';\r\n\r\nexport * from './lib/components/tango-manage-tickets/tango-manage-tickets.component';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i1","i3.TicketService","i2.TicketService","i3","i4","i4.TicketService","i5.ExcelService","i6","i7","i8","i5","i1.TicketService","i3.ExcelService","i8.ReactiveSelectComponent","i9.GroupSelectComponent","i5.TicketsComponent","i6.AuditMetricsComponent","i7.FootfallDicComponent"],"mappings":";;;;;;;;;;;;;;;;;;;;MAea,aAAa,CAAA;AAUJ,IAAA,IAAA;AAA0B,IAAA,EAAA;AAT9C,IAAA,UAAU;AACV,IAAA,aAAa;AACb,IAAA,WAAW;AACX,IAAA,iBAAiB;AACjB,IAAA,eAAe;AACf,IAAA,iBAAiB;AACjB,IAAA,WAAW;AACX,IAAA,aAAa;AACb,IAAA,eAAe,GAAG,IAAI,eAAe,CAAM,IAAI,CAAC;IAChD,WAAoB,CAAA,IAAgB,EAAU,EAAsB,EAAA;QAAhD,IAAI,CAAA,IAAA,GAAJ,IAAI;QAAsB,IAAE,CAAA,EAAA,GAAF,EAAE;QAC9C,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,GAAG,KAAI;AACpC,YAAA,IAAI,GAAG,EAAE;AACP,gBAAA,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU;AAChC,gBAAA,IAAI,CAAC,aAAa,GAAE,GAAG,CAAC,aAAa;AACrC,gBAAA,IAAI,CAAC,iBAAiB,GAAG,GAAG,CAAC,iBAAiB;AAC9C,gBAAA,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,WAAW;AAClC,gBAAA,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC,eAAe;AAC1C,gBAAA,IAAI,CAAC,iBAAiB,GAAE,GAAG,CAAC,iBAAiB;AAC7C,gBAAA,IAAI,CAAC,WAAW,GAAE,GAAG,CAAC,WAAW;AACjC,gBAAA,IAAI,CAAC,aAAa,GAAE,GAAG,CAAC,aAAa;AACtC;AACH,SAAC,CAAC;;AAGJ,IAAA,WAAW,CAAC,MAAW,EAAA;AACrB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,CAAA,EAAG,IAAI,CAAC,UAAU,CAAA,SAAA,CAAW,EAAE,MAAM,CAAC;;AAEnE,IAAA,sBAAsB,CAAC,IAAQ,EAAA;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAC,aAAa,0BAA0B,EAAC,IAAI,EAAC,EAAC,YAAY,EAAE,aAAa,EAAC,CAAC;;AAE3G,IAAA,eAAe,CAAC,IAAQ,EAAA;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAC,aAAa,mBAAmB,EAAC,IAAI,EAAC,EAAC,YAAY,EAAE,aAAa,EAAC,CAAC;;AAEpG,IAAA,aAAa,CAAC,IAAQ,EAAA;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAC,aAAa,iBAAiB,EAAC,IAAI,EAAC,EAAC,YAAY,EAAE,aAAa,EAAC,CAAC;;AAElG,IAAA,aAAa,CAAC,IAAQ,EAAA;AACpB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,CAAA,EAAG,IAAI,CAAC,aAAa,CAAA,kBAAA,CAAoB,EAAE,IAAI,CAAC;;AAG7E,IAAA,mBAAmB,CAAC,IAAQ,EAAA;AAC1B,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,CAAA,EAAG,IAAI,CAAC,aAAa,CAAA,wBAAA,CAA0B,EAAE,IAAI,CAAC;;AAGnF,IAAA,YAAY,CAAC,IAAQ,EAAA;AACnB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,CAAA,EAAG,IAAI,CAAC,aAAa,CAAA,iBAAA,CAAmB,EAAE,IAAI,CAAC;;AAG5E,IAAA,eAAe,CAAC,IAAQ,EAAA;AACtB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,CAAA,EAAG,IAAI,CAAC,aAAa,CAAA,mBAAA,CAAqB,EAAE,IAAI,CAAC;;AAE9E,IAAA,UAAU,CAAC,IAAQ,EAAA;AACjB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,CAAA,EAAG,IAAI,CAAC,aAAa,CAAA,eAAA,CAAiB,EAAE,IAAI,CAAC;;AAG1E,IAAA,iBAAiB,CAAC,IAAQ,EAAA;AACxB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,CAAA,EAAG,IAAI,CAAC,aAAa,CAAA,8BAAA,CAAgC,EAAE,IAAI,CAAC;;AAGzF,IAAA,iBAAiB,CAAC,MAAW,EAAA;AAC3B,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,CAAA,EAAG,IAAI,CAAC,UAAU,CAAA,KAAA,CAAO,EAAE,MAAM,CAAC;;AAG/D,IAAA,kBAAkB,CAAC,IAAQ,EAAA;AACzB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,CAAA,EAAG,IAAI,CAAC,aAAa,CAAA,wBAAA,CAA0B,EAAE,IAAI,CAAC;;AAEnF,IAAA,sBAAsB,CAAC,IAAQ,EAAA;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAC,aAAa,0BAA0B,EAAC,IAAI,EAAC,EAAC,YAAY,EAAE,aAAa,EAAC,CAAC;;AAG3G,IAAA,YAAY,CAAC,IAAQ,EAAA;AACnB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAM,CAAA,EAAG,IAAI,CAAC,aAAa,CAAA,gBAAA,CAAkB,EAAE,IAAI,CAAC;;AAE3E,IAAA,eAAe,CAAC,IAAQ,EAAA;AACtB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAC,WAAW,CAAA,sBAAA,CAAwB,EAAC,IAAI,CAAC;;AAEzE,IAAA,qBAAqB,CAAC,IAAQ,EAAA;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAC,WAAW,wBAAwB,EAAC,IAAI,EAAC,EAAC,YAAY,EAAE,aAAa,EAAC,CAAC;;IAEvG,aAAa,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAG,EAAA,IAAI,CAAC,WAAW,CAAU,QAAA,CAAA,CAAC;;IAErD,WAAW,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAG,EAAA,IAAI,CAAC,WAAW,CAAc,YAAA,CAAA,CAAC;;AAEzD,IAAA,cAAc,CAAC,IAAQ,EAAA;AACrB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAC,WAAW,CAAA,mBAAA,CAAqB,EAAC,IAAI,CAAC;;AAEvE,IAAA,YAAY,CAAC,IAAQ,EAAA;AACpB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAC,WAAW,CAAA,aAAA,CAAe,EAAC,IAAI,CAAC;;AAE/D,IAAA,cAAc,CAAC,IAAQ,EAAA;AACtB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAG,EAAA,IAAI,CAAC,WAAW,0BAA0B,IAAI,EAAE,QAAQ,CAAA,SAAA,EAAY,IAAI,EAAE,OAAO,CAAc,WAAA,EAAA,IAAI,EAAE,SAAS,CAAA,QAAA,EAAW,IAAI,EAAE,MAAM,CAAa,UAAA,EAAA,IAAI,EAAE,QAAQ,eAAe,IAAI,EAAE,UAAU,CAAA,CAAE,CAAC;;AAE1N,IAAA,uBAAuB,CAAC,IAAQ,EAAA;AAC9B,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAA0B,uBAAA,EAAA,IAAI,EAAE,QAAQ,CAAA,SAAA,EAAY,IAAI,EAAE,OAAO,cAAc,IAAI,EAAE,SAAS,CAAA,QAAA,EAAW,IAAI,EAAE,MAAM,aAAa,IAAI,EAAE,QAAQ,CAAe,YAAA,EAAA,IAAI,EAAE,UAAU,CAAA,CAAE,EAAC,EAAC,YAAY,EAAC,aAAa,EAAC,CAAC;;AAGzP,IAAA,mBAAmB,CAAC,MAAW,EAAE,QAAa,EAAE,MAAW,EAAA;AACzD,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAA,yBAAA,EAA4B,MAAM,CAAa,UAAA,EAAA,QAAQ,WAAW,MAAM,CAAA,CAAE,CAAC;;AAG3H,IAAA,gBAAgB,CAAC,MAAW,EAAE,QAAa,EAAE,MAAW,EAAE,WAAe,EAAE,KAAS,EAAE,MAAU,EAAE,QAAY,EAAC,MAAU,EAAC,SAAa,EAAA;AACrI,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAG,EAAA,IAAI,CAAC,iBAAiB,CAAyB,sBAAA,EAAA,MAAM,aAAa,QAAQ,CAAA,QAAA,EAAW,MAAM,CAAA,aAAA,EAAgB,WAAW,CAAA,OAAA,EAAU,KAAK,CAAA,QAAA,EAAW,MAAM,CAAA,UAAA,EAAa,QAAQ,CAAA,QAAA,EAAW,MAAM,CAAA,WAAA,EAAc,SAAS,CAAA,CAAE,CAAC;;AAGhP,IAAA,sBAAsB,CAAC,MAAW,EAAE,QAAa,EAAE,MAAW,EAAE,WAAe,EAAE,KAAS,EAAE,MAAU,EAAE,QAAY,EAAC,MAAU,EAAC,SAAa,EAAA;AAC3I,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAG,EAAA,IAAI,CAAC,iBAAiB,yBAAyB,MAAM,CAAA,UAAA,EAAa,QAAQ,CAAA,QAAA,EAAW,MAAM,CAAgB,aAAA,EAAA,WAAW,CAAU,OAAA,EAAA,KAAK,WAAW,MAAM,CAAA,UAAA,EAAa,QAAQ,CAAA,QAAA,EAAW,MAAM,CAAc,WAAA,EAAA,SAAS,CAAE,CAAA,EAAC,EAAC,YAAY,EAAE,aAAa,EAAC,CAAC;;AAKhR,IAAA,aAAa,CAAC,KAAU,EAAE,QAAa,EAAE,MAAW,EAAE,UAAe,EAAE,MAAW,EAAE,MAAW,EAAE,MAAW,EAAE,KAAU,EAAA;AACtH,QAAA,IAAI,MAAM,GAAG,IAAI,UAAU;AACxB,aAAA,GAAG,CAAC,SAAS,EAAE,KAAK;AACpB,aAAA,GAAG,CAAC,UAAU,EAAE,QAAQ;AACxB,aAAA,GAAG,CAAC,QAAQ,EAAE,MAAM;AACpB,aAAA,GAAG,CAAC,QAAQ,EAAE,MAAM;AACpB,aAAA,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC;AACtB,QAAA,IAAI,UAAU,EAAE;YACd,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC;AAC9C;AACD,QAAA,IAAI,MAAM,EAAE;YACV,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC;AACtC;AACD,QAAA,IAAI,MAAM,EAAE;YACV,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC;AACtC;AACD,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAG,EAAA,IAAI,CAAC,iBAAiB,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC;;IAG3E,kBAAkB,CAAC,MAAW,EAAE,QAAa,EAAE,MAAW,EAAC,WAAe,EAAE,QAAa,EAAA;AACvF,QAAA,IAAI,MAAM,GAAG,IAAI,UAAU;AACxB,aAAA,GAAG,CAAC,UAAU,EAAE,MAAM;AACtB,aAAA,GAAG,CAAC,UAAU,EAAE,QAAQ;AACxB,aAAA,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;;AAEvB,QAAA,IAAI,WAAW,EAAE;YACb,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,WAAW,CAAC;AAChD;AACL,QAAA,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACnC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAC;AAC1C;AACD,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAG,EAAA,IAAI,CAAC,iBAAiB,oBAAoB,EAAE,EAAE,MAAM,EAAE,CAAC;;AAIjF,IAAA,kBAAkB,CAAC,IAAQ,EAAA;AACzB,QAAA,MAAM,GAAG,GAAG,CAAA,EAAG,IAAI,CAAC,iBAAiB,gBAAgB;QACrD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC;;AAE/B,IAAA,WAAW,CAAC,IAAS,EAAA;AACnB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAC,aAAa,CAAA,iBAAA,CAAmB,EAAE,IAAI,CAAC;;wGAzJ5D,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAb,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,cAFZ,MAAM,EAAA,CAAA;;4FAEP,aAAa,EAAA,UAAA,EAAA,CAAA;kBAHzB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE;AACb,iBAAA;;;MCDY,oBAAoB,CAAA;AAWrB,IAAA,WAAA;AACD,IAAA,EAAA;AACC,IAAA,OAAA;AACA,IAAA,KAAA;AAbD,IAAA,QAAQ;IACjB,WAAW,GAAQ,EAAE;AACrB,IAAA,cAAc,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC;AACnB,IAAA,QAAQ,GAAG,IAAI,OAAO,EAAE;AACzC,IAAA,aAAa;AACb,IAAA,YAAY;IACZ,KAAK,GAAM,EAAE;IACb,QAAQ,GAAM,EAAE;AAEhB,IAAA,WAAA,CACU,WAA2B,EAC5B,EAAsB,EACrB,OAAsB,EACtB,KAAmB,EAAA;QAHnB,IAAW,CAAA,WAAA,GAAX,WAAW;QACZ,IAAE,CAAA,EAAA,GAAF,EAAE;QACD,IAAO,CAAA,OAAA,GAAP,OAAO;QACP,IAAK,CAAA,KAAA,GAAL,KAAK;;IAEf,QAAQ,GAAA;AACN,QAAA,MAAM,QAAQ,GAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC;AAC3E,QAAA,IAAI,CAAC,KAAK,GAAG,QAAQ;AACrB,QAAA,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC;AAChE,YAAA,IAAI,EAAE,CAAC,IAAS,KAAI;AAClB,gBAAA,IAAI,IAAI,EAAE;AACR,oBAAA,IAAI,CAAC,aAAa,GAAG,IAAI;oBACzB,IAAI,CAAC,YAAY,GAAG;wBAClB,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAK,UAAU,EAAE;;;;;;qBAMjD;oBACD,IAAI,CAAC,WAAW,EAAE;AACnB;aACF;AACF,SAAA,CAAC;;IAEJ,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;;IAG1B,WAAW,GAAA;AACT,QAAA,IAAI,CAAC;AACF,aAAA,iBAAiB,CAAC,IAAI,CAAC,YAAY;AACnC,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,aAAA,SAAS,CAAC,CAAC,GAAQ,KAAI;AACtB,YAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;gBAC3B,IAAI,CAAC,QAAQ,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM;AAClC;AACH,SAAC,CAAC;;IAGN,SAAS,GAAA;AACP,QAAA,IAAI,GAAG,GAAG;YACR,OAAO,EAAE,IAAI,CAAC,QAAQ;AACtB,YAAA,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK;SAChC;AACD,QAAA,IAAI,CAAC;aACF,eAAe,CAAC,GAAG;AACnB,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;oBAC3B,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC;AACvC,oBAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC;AACjC;aACF;AACD,YAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;gBAClB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;aACxE;AACD,YAAA,QAAQ,EAAE,MAAK,GAAG;AACnB,SAAA,CAAC;;AAGN,IAAA,WAAW,CAAC,WAAgB,EAAA;QAC1B,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC;;IAEhD,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC;;wGA9EvB,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAAD,IAAA,CAAA,kBAAA,EAAA,EAAA,EAAA,KAAA,EAAAE,aAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAApB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,2FCbjC,qyEA+BM,EAAA,MAAA,EAAA,CAAA,qQAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,aAAA,EAAA,OAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;4FDlBO,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;+BACE,mBAAmB,EAAA,QAAA,EAAA,qyEAAA,EAAA,MAAA,EAAA,CAAA,qQAAA,CAAA,EAAA;4KAKpB,QAAQ,EAAA,CAAA;sBAAhB;;;MEJU,qBAAqB,CAAA;AAIZ,IAAA,WAAA;AAAoC,IAAA,OAAA;AAC9C,IAAA,KAAA;AAJD,IAAA,QAAQ;IACjB,OAAO,GAAM,EAAE;AACE,IAAA,QAAQ,GAAG,IAAI,OAAO,EAAE;AACzC,IAAA,WAAA,CAAoB,WAA0B,EAAU,OAAsB,EACpE,KAAmB,EAAA;QADT,IAAW,CAAA,WAAA,GAAX,WAAW;QAAyB,IAAO,CAAA,OAAA,GAAP,OAAO;QACrD,IAAK,CAAA,KAAA,GAAL,KAAK;;IAIf,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE;;IAE1B,aAAa,GAAA;AACX,QAAA,IAAG,IAAI,CAAC,OAAO,IAAI,EAAE,EAAC;YACpB,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,0BAA0B,CAAC;AAC5D;AACD,QAAA,IAAI,GAAG,GAAG;YACR,UAAU,EAAE,IAAI,CAAC,QAAQ;AACzB,YAAA,SAAS,EAAE,EAAE;AACb,YAAA,WAAW,EAAE,EAAE;YACf,SAAS,EAAE,IAAI,CAAC,OAAO;SAE1B;AACC,QAAA,IAAI,CAAC;aACF,iBAAiB,CAAC,GAAG;AACrB,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;oBAC3B,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC;AACvC,oBAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC;AACjC;aACF;AACD,YAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;gBAClB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;aACxE;AACD,YAAA,QAAQ,EAAE,MAAK,GAAG;AACnB,SAAA,CAAC;;wGArCK,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAD,IAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAAE,aAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,EAAA,CAAA,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,2FCVlC,yqDAuBM,EAAA,MAAA,EAAA,CAAA,qWAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;4FDbO,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;+BACE,mBAAmB,EAAA,QAAA,EAAA,yqDAAA,EAAA,MAAA,EAAA,CAAA,qWAAA,CAAA,EAAA;yIAKpB,QAAQ,EAAA,CAAA;sBAAhB;;;AEPH,MAAM,UAAU,GAAG,iFAAiF;AACpG,MAAM,eAAe,GAAG,OAAO;AAC/B,MAAM,QAAQ,GAAG,iBAAiB;AAClC,MAAM,aAAa,GAAG,MAAM;MAKf,YAAY,CAAA;AAGvB,IAAA,WAAA,GAAA;IAEO,iBAAiB,CAAC,IAAW,EAAE,aAAqB,EAAA;QACzD,MAAM,SAAS,GAAmB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC;AAChE,QAAA,MAAM,QAAQ,GAAkB,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,EAAE;AACvF,QAAA,MAAM,WAAW,GAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAClF,QAAA,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,aAAa,CAAC;;IAG3C,eAAe,CAAC,MAAW,EAAE,QAAgB,EAAA;AAClD,QAAA,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC;QAE7B,MAAM,IAAI,GAAS,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE;AACpC,YAAA,IAAI,EAAE;AACP,SAAA,CAAC;QACF,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAE,eAAe,CAAC;;IAGpD,cAAc,CAAC,MAAW,EAAE,QAAgB,EAAA;QAClD,MAAM,IAAI,GAAS,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE;AACpC,YAAA,IAAI,EAAE;AACP,SAAA,CAAC;QACF,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,GAAG,eAAe,CAAC;;IAG7C,aAAa,CAAC,MAAW,EAAE,QAAgB,EAAA;QAChD,MAAM,IAAI,GAAS,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE;AACpC,YAAA,IAAI,EAAE;AACP,SAAA,CAAC;QACF,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAE,aAAa,CAAC;;wGAhCjD,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAZ,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,YAAY,cAFX,MAAM,EAAA,CAAA;;4FAEP,YAAY,EAAA,UAAA,EAAA,CAAA;kBAHxB,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE;AACb,iBAAA;;;MCGY,gBAAgB,CAAA;AAyCjB,IAAA,EAAA;AACA,IAAA,MAAA;AACA,IAAA,KAAA;AACD,IAAA,EAAA;AACC,IAAA,YAAA;AACA,IAAA,OAAA;AACA,IAAA,YAAA;IA9CV,IAAI,GAAG,OAAO;IACd,WAAW,GAAQ,EAAE;IACrB,WAAW,GAAQ,OAAO;;IAE1B,YAAY,GAAG,EAAE;IACjB,WAAW,GAAG,CAAC;IACf,UAAU,GAAG,CAAC;IACd,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC9B,QAAQ,GAAG,EAAE;AACI,IAAA,QAAQ,GAAG,IAAI,OAAO,EAAE;IACzC,YAAY,GAAY,KAAK;IAC7B,cAAc,GAAQ,EAAE;IACxB,iBAAiB,GAAQ,EAAE;IAC3B,cAAc,GAAQ,EAAE;IACxB,iBAAiB,GAAQ,EAAE;IAC3B,SAAS,GAAQ,EAAE;AACnB,IAAA,YAAY;AACZ,IAAA,aAAa;AACb,IAAA,aAAa;AACb,IAAA,YAAY;IACZ,QAAQ,GAAQ,EAAE;IAClB,UAAU,GAAM,EAAE;IAClB,SAAS,GAAQ,EAAE;AACnB,IAAA,UAAU;AACV,IAAA,QAAQ;AACR,IAAA,KAAK;IACL,KAAK,GAAW,EAAE;IAClB,MAAM,GAAW,CAAC;IAClB,MAAM,GAAQ,CAAC,CAAC;IAChB,aAAa,GAAQ,EAAE;IACvB,SAAS,GAAQ,EAAE;IACnB,cAAc,GAAQ,EAAE;IACxB,OAAO,GAAY,IAAI;IACvB,MAAM,GAAY,KAAK;IACvB,SAAS,GAAQ,KAAK;IACtB,YAAY,GAAQ,EAAE;IACtB,aAAa,GAAM,EAAE;IACrB,aAAa,GAAM,EAAE;AAErB,IAAA,WAAA,CACU,EAAqB,EACrB,MAAc,EACd,KAAqB,EACtB,EAAsB,EACrB,YAAsB,EACtB,OAAsB,EACtB,YAA0B,EAAA;QAN1B,IAAE,CAAA,EAAA,GAAF,EAAE;QACF,IAAM,CAAA,MAAA,GAAN,MAAM;QACN,IAAK,CAAA,KAAA,GAAL,KAAK;QACN,IAAE,CAAA,EAAA,GAAF,EAAE;QACD,IAAY,CAAA,YAAA,GAAZ,YAAY;QACZ,IAAO,CAAA,OAAA,GAAP,OAAO;QACP,IAAY,CAAA,YAAA,GAAZ,YAAY;;IAGtB,QAAQ,GAAA;AACN,QAAA,MAAM,QAAQ,GAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC;AAC3E,QAAA,IAAI,CAAC,KAAK,GAAG,QAAQ;QACrB,IAAI,CAAC,KAAK,EAAE;cACR,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC9B,aAAA,SAAS,CAAC,CAAC,MAAM,KAAI;AACpB,YAAA,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI;AACvB,YAAA,IAAI,CAAC,cAAc,GAAE,EAAE;AAAE,YAAA,IAAI,CAAC,SAAS,GAAC,EAAE;AAC1C,YAAA,IAAI,CAAC,iBAAiB,GAAC,EAAE;AAAE,YAAA,IAAI,CAAC,UAAU,GAAE,EAAE;AAC9C,YAAA,IAAI,CAAC,cAAc,GAAE,EAAE;AAAE,YAAA,IAAI,CAAC,QAAQ,GAAC,EAAE;AACzC,YAAA,IAAI,CAAC,SAAS,GAAC,EAAE;AAAE,YAAA,IAAI,CAAC,aAAa,GAAE,EAAE;AACzC,YAAA,IAAI,CAAC,iBAAiB,GAAE,EAAE;AAAE,YAAA,IAAI,CAAC,aAAa,GAAC,EAAE;AACjD,YAAA,IAAI,CAAC,UAAU,GAAC,EAAE;YAClB,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC;YACvC,IAAI,CAAC,WAAW,EAAE;AAClB,YAAA,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC;AAChE,gBAAA,IAAI,EAAE,CAAC,IAAS,KAAI;AAClB,oBAAA,IAAI,IAAI,EAAE;AACR,wBAAA,IAAI,CAAC,aAAa,GAAG,IAAI;wBACzB,IAAI,CAAC,YAAY,GAAG;AAClB,4BAAA,KAAK,EAAE,KAAK;AACZ,4BAAA,MAAM,EAAE,CAAC;AACT,4BAAA,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ;yBAC9B;wBACD,IAAI,CAAC,cAAc,EAAE;AACtB;iBACF;AACF,aAAA,CAAC;AACF,YAAA,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE;AAChC,gBAAA,IAAI,CAAC,QAAQ,GAAG,cAAc;gBAC9B,IAAI,CAAC,UAAU,GAAG;AAChB,oBAAA,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE;AACtC,oBAAA,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE;AAChC,oBAAA,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE,EAAE,oBAAoB,EAAE;AACxD,oBAAA,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE;iBACrC;AACF;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,QAAQ,GAAG,aAAa;AAE7B,gBAAA,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,IAAK,IAAI,CAAC,IAAI,KAAI,OAAO,EAAC;oBAC3D,IAAI,CAAC,UAAU,GAAI;AACjB,wBAAA,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE;AAC5B,wBAAA,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE;AACzC,wBAAA,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,EAAE,eAAe,EAAE;AAC/C,wBAAA,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE;qBACjC;AACJ;AAAI,qBAAA;oBACH,IAAI,CAAC,UAAU,GAAG;AAChB,wBAAA,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE;AAC5B,wBAAA,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,YAAY,EAAE;AACzC,wBAAA,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE;qBACjC;AACF;gBACC,IAAI,CAAC,aAAa,GAAG;AACnB,oBAAA,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,WAAW,EAAE;AACvC,oBAAA,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,UAAU,EAAE;iBACtC;gBACD,IAAI,CAAC,aAAa,GAAG;AACnB,oBAAA,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE;AACpC,oBAAA,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,EAAE;iBACrC;AACF;AACH,SAAC,CAAC;;IAEN,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,WAAW,GAAG,EAAE;AACrB,QAAA,IAAI,CAAC,KAAK,GAAG,EAAE;AACf,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;AAClB,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC;AACf,QAAA,IAAI,CAAC,WAAW,GAAG,OAAO;AAC1B,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI;AACnB,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACnB,QAAA,IAAI,CAAC,YAAY,GAAC,EAAE;;IAEtB,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC;AACF,aAAA,aAAa,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,EAAC,QAAQ,EAAC,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE;AAC1E,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACnB,gBAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;oBAC3B,IAAI,CAAC,SAAS,GAAG,GAAG,EAAE,IAAI,EAAE,IAAI;oBAChC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAY,KAAI;AACtC,wBAAA,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,OAAO;AAC9B,wBAAA,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO;AAC9B,qBAAC,CAAC;AACF,oBAAA,IAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,EAAC;wBACjC,IAAI,CAAC,WAAW,EAAE;AACnB;AAAM,yBAAA;AACL,wBAAA,IAAG,IAAI,CAAC,IAAI,KAAI,cAAc,EAAC;4BAC/B,IAAI,CAAC,UAAU,GAAG;gCAChB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;gCACnD,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;6BAC5D;AACF;6BAAM,IAAG,IAAI,CAAC,IAAI,KAAI,OAAO,IAAI,IAAI,CAAC,IAAI,KAAI,cAAc,EAAC;4BAC5D,IAAI,CAAC,UAAU,GAAG;gCAChB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;gCACnD,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;6BACnD;AACF;AAAK,6BAAA,IAAG,IAAI,CAAC,IAAI,KAAI,KAAK,EAAE;4BAC3B,IAAI,CAAC,UAAU,GAAG;gCAChB,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;6BACnD;AACF;AACA;oBACD,IAAI,CAAC,QAAQ,EAAE;AAChB;AAAI,qBAAA;oBACF,IAAI,CAAC,QAAQ,EAAE;AACjB;aACF;AACD,YAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AAClB,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,gBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,gBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;aACxB;AACD,YAAA,QAAQ,EAAE,MAAK,GAAG;AACrB,SAAA,CAAC;;IAEF,WAAW,GAAA;AACT,QAAA,IAAI,CAAC;AACF,aAAA,WAAW,CAAC,IAAI,CAAC,YAAY;AAC7B,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,aAAA,SAAS,CAAC,CAAC,GAAQ,KAAI;AACtB,YAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;gBAC3B,IAAI,CAAC,QAAQ,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM;gBACjC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAY,KAAI;AACtC,oBAAA,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,QAAQ;AAC/B,oBAAA,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,KAAK;AAC5B,iBAAC,CAAC;AACH;AAED,YAAA,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,KAAK,IAAI,CAAC,IAAI,KAAI,cAAc,CAAC,EAAE;gBACpE,IAAI,CAAC,UAAU,GAAG;oBAChB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;oBACnD,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;oBAC3D,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE;iBACtD;AACD;AAAM,iBAAA,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,IAAK,IAAI,CAAC,IAAI,KAAI,OAAO,EAAE;gBACpE,IAAI,CAAC,UAAU,GAAG;oBAChB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;oBACnD,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;oBAClD,EAAE,WAAW,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE;iBACtD;AACD;AAAM,iBAAA,IAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAI,cAAc,EAAC;gBACxE,IAAI,CAAC,UAAU,GAAG;oBAChB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE;oBACnD,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE;oBACzD,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;iBACnD;AACD;AAAM,iBAAA,IAAG,IAAI,CAAC,IAAI,KAAI,KAAK,EAAC;gBAC5B,IAAI,CAAC,UAAU,GAAG;oBAChB,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE;iBACnD;AACD;AACJ,SAAC,CAAC;;IAEN,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;;IAE1B,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC;AACf,QAAA,IAAI,CAAC,KAAK,GAAC,EAAE;QACb,IAAI,CAAC,QAAQ,EAAE;;AAGjB,IAAA,MAAM,CAAC,MAAc,EAAA;AACnB,QAAA,IAAI,IAAI,CAAC,YAAY,KAAK,MAAM,EAAE;AAChC,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;AACvD;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,YAAY,GAAG,MAAM;AAC1B,YAAA,IAAI,CAAC,aAAa,GAAG,CAAC;AACvB;QACD,IAAI,CAAC,QAAQ,EAAE;;IAEjB,UAAU,GAAA;AACR,QAAA,IAAI,GAAG,GAAwB;AAC7B,YAAA,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO;AACrC,YAAA,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS;AAC7C,YAAA,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO;YACzC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;AACjB,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE;AACrD,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE;AACrD,YAAA,MAAM,EAAE,IAAI;SACb;QACD,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY;AACrC,YAAA,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa;AAChC;QACD,IAAG,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAC;AACvD,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;AAC/B,gBAAA,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;AACnE;AACD,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;AAC/B,gBAAA,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;AAClE;AACD,YAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE,MAAM,EAAE;AAClC,gBAAA,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,GAAG,EAAE;AACtE;AACF;AAAK,aAAA,IAAG,IAAI,CAAC,IAAI,KAAI,KAAK,EAAC;AAC1B,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;AAC/B,gBAAA,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;AAClE;AACF;AAAO,aAAA;AACN,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;AAC/B,gBAAA,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;AACpE;AACD,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;AAC/B,gBAAA,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;AACpE;AACD,YAAA,IAAG,IAAI,CAAC,iBAAiB,EAAE,MAAM,EAAC;AAChC,gBAAA,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,GAAG,EAAE;AAC/E;AACF;AACC,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE;AAChC,YAAA,IAAI,CAAC;iBACF,sBAAsB,CAAC,GAAG;AAC1B,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,iBAAA,SAAS,CAAC;AACT,gBAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;oBACjB,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,EAAE,cAAc,CAAC;iBAEvD;AACD,gBAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AAClB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,oBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;iBACxB;AACD,gBAAA,QAAQ,EAAE,MAAK,GAAG;AACnB,aAAA,CAAC;AACL;AAAM,aAAA,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;AAChC,YAAA,IAAI,CAAC;iBACF,eAAe,CAAC,GAAG;AACnB,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,iBAAA,SAAS,CAAC;AACT,gBAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;oBAEf,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC;iBAElD;AACD,gBAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AAClB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,oBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;iBACxB;AACD,gBAAA,QAAQ,EAAE,MAAK,GAAG;AACnB,aAAA,CAAC;AACL;AAAO,aAAA,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE;AAC/B,YAAA,IAAI,CAAC;iBACF,aAAa,CAAC,GAAG;AACjB,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,iBAAA,SAAS,CAAC;AACT,gBAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;oBAEf,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC;iBAEhD;AACD,gBAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AAClB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,oBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;iBACxB;AACD,gBAAA,QAAQ,EAAE,MAAK,GAAG;AACnB,aAAA,CAAC;AACL;AAAK,aAAA,IAAG,IAAI,CAAC,IAAI,KAAG,cAAc,EAAC;AAClC,YAAA,IAAI,CAAC;iBACJ,sBAAsB,CAAC,GAAG;AAC1B,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,iBAAA,SAAS,CAAC;AACT,gBAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;oBACjB,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,EAAE,eAAe,CAAC;iBACxD;AACD,gBAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AAClB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,oBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;iBACxB;AACD,gBAAA,QAAQ,EAAE,MAAK,GAAG;AACnB,aAAA,CAAC;AACH;;AAMH,IAAA,YAAY,CAAC,IAAS,EAAA;AACpB,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC;AACf,QAAA,IAAI,CAAC,KAAK,GAAC,EAAE;AACb,QAAA,IAAG,IAAI,CAAC,IAAI,KAAI,cAAc,EAAC;AAC/B,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,iBAAiB,EAAE;AACpE,YAAA,IAAI,CAAC,WAAW,GAAG,CAAC;AACpB,YAAA,IAAI,CAAC,MAAM,GAAG,CAAC;AACf,YAAA,IAAI,CAAC,KAAK,GAAG,EAAE;AACf,YAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;YAClB,IAAI,CAAC,QAAQ,EAAE;AACf,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;AACvB;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI;AAC5B,YAAA,IAAI,CAAC,WAAW,GAAG,CAAC;AACpB,YAAA,IAAI,CAAC,MAAM,GAAG,CAAC;AACf,YAAA,IAAI,CAAC,KAAK,GAAG,EAAE;AACf,YAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;YACpB,IAAI,CAAC,QAAQ,EAAE;AACd;;AAEH,IAAA,aAAa,CAAC,IAAY,EAAA;QACxB,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;;AAGrD,IAAA,YAAY,CAAC,UAAkB,EAAA;AAC7B,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACrC,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC;AAChC,QAAA,IAAI,CAAC,KAAK,GAAE,EAAE;QACd,IAAI,CAAC,QAAQ,EAAE;;AAGjB,IAAA,gBAAgB,CAAC,QAAgB,EAAA;AAC/B,QAAA,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAChC,QAAA,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC7B,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC;QACf,IAAI,CAAC,QAAQ,EAAE;;AAEjB,IAAA,cAAc,CAAC,KAAU,EAAA;QACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO;QACrC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,GAAQ,MAAM,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;;AAEzE,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;AACvB,cAAE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,GAAQ,KAAK,GAAG,CAAC,QAAQ;cAClD,EAAE;QACN,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC;;IAGrC,WAAW,CAAC,KAAU,EAAE,QAAa,EAAA;AACnC,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CACrC,CAAC,GAAQ,KAAK,GAAG,CAAC,QAAQ,KAAK,QAAQ,CACxC;AAED,QAAA,IAAI,MAAM,EAAE;YACV,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO;;AAErC,YAAA,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE;AACxB,gBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC;AACjC;AAAM,iBAAA;gBACL,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC;AACjD,gBAAA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;oBAChB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;AACnC;AACF;;AAED,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,GAAQ,KAAK,GAAG,CAAC,OAAO,CAAC;;AAErE,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,GAAQ,KAAK,GAAG,CAAC,OAAO,CAAC;AACxE;;IAGH,eAAe,GAAA;QACb,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,oBAAoB,EAAE;AAC5D,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,QAAQ,EAAC;AACV,SAAA,CAAC;QACF,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY;QACvD,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,KAAI;YAC9B,IAAI,MAAM,KAAK,QAAQ,EAAE;AACvB,gBAAA,IAAI,CAAC,WAAW,GAAG,EAAE;AACrB,gBAAA,IAAI,CAAC,YAAY,GAAG,EAAE;AACtB,gBAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,gBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;gBACzB,IAAI,CAAC,QAAQ,EAAE;AAChB;AACH,SAAC,CAAC;;AAGJ,IAAA,YAAY,CAAC,KAAU,EAAA;QACrB,IAAI,KAAK,EAAE,MAAM,EAAE;AACjB,YAAA,KAAK,CAAC,OAAO,CAAC,CAAC,OAAY,KAAI;AAC7B,gBAAA,IAAI,OAAO,CAAC,WAAW,KAAK,UAAU,EAAE;AACtC,oBAAA,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAQ,KAAK,GAAG,EAAE,EAAE,CAAC;AAChE;AACF,gBAAA,IAAG,IAAI,CAAC,IAAI,KAAI,cAAc,EAAC;AAC9B,oBAAA,IAAI,OAAO,CAAC,WAAW,KAAK,QAAQ,EAAE;AACpC,wBAAA,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAQ,KAAK,GAAG,EAAE,EAAE,CAAC;AAChE;AACF;AAAC,gBAAA,IAAG,IAAI,CAAC,IAAI,KAAG,cAAc,EAAC;AAC9B,oBAAA,IAAI,OAAO,CAAC,WAAW,KAAK,iBAAiB,EAAE;AAC7C,wBAAA,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAQ,KAAK,GAAG,EAAE,EAAE,CAAC;AAChE;AACF;gBACC,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,KAAK,IAAI,CAAC,IAAI,KAAI,cAAc,IAAI,IAAI,CAAC,IAAI,KAAG,OAAO,CAAC,EAAE;AAC3F,oBAAA,IAAI,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC,QAAQ,EAAE;AACzC,wBAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAQ,KAAK,GAAG,EAAE,EAAE,CAAC;AACnE;AACF;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,iBAAiB,GAAG,EAAE;AAC5B;AACD,gBAAA,IAAI,OAAO,CAAC,WAAW,KAAK,YAAY,EAAE;AACxC,oBAAA,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAQ,KAAK,GAAG,EAAE,EAAE,CAAC;AACnE;;;;AAIH,aAAC,CAAC;AACH;AAED,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC;AACf,QAAA,IAAI,CAAC,KAAK,GAAC,EAAE;QACb,IAAI,CAAC,QAAQ,EAAE;;IAGjB,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI;AACnB,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACnB,QAAA,IAAI,GAAG,GAAwB;AAC7B,YAAA,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO;AACrC,YAAA,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS;AAC7C,YAAA,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO;YACzC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;AACjB,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE;AACrD,YAAA,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,GAAG,EAAE;AACrD,YAAA,MAAM,EAAE,KAAK;SACd;QACD,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,YAAA,IAAG,IAAI,CAAC,IAAI,KAAI,cAAc,EAAC;AAC7B,gBAAA,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,YAAY;AACtC,gBAAA,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa;AAChC;AAAM,iBAAA;AACP,gBAAA,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY;AACrC,gBAAA,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa;AAC9B;AACF;QACD,IAAG,IAAI,CAAC,IAAI,KAAK,cAAc,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAC;AACzD,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;AAC/B,gBAAA,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;AACnE;AACD,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;AAC/B,gBAAA,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;AAClE;AACD,YAAA,IAAI,IAAI,CAAC,iBAAiB,EAAE,MAAM,EAAE;AAClC,gBAAA,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,GAAG,EAAE;AACtE;AACF;AAAM,aAAA,IAAG,IAAI,CAAC,IAAI,KAAK,KAAK,EAAC;AAC5B,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;AAC/B,gBAAA,GAAG,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;AAClE;AACF;AAAM,aAAA;AACL,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;AAC/B,gBAAA,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;AACpE;AACD,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE;AAC/B,gBAAA,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,GAAG,EAAE;AACpE;AACD,YAAA,IAAG,IAAI,CAAC,iBAAiB,EAAE,MAAM,EAAC;AAChC,gBAAA,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,GAAG,EAAE;AAC/E;AACA;;;AAGC,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,EAAE;AAChC,YAAA,IAAI,CAAC;iBACF,mBAAmB,CAAC,GAAG;AACvB,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,iBAAA,SAAS,CAAC;AACT,gBAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,oBAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;wBAC3B,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ;wBAClC,IAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAI,CAAC,EAAC;AAC7B,4BAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,4BAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AACnB;AAAM,6BAAA;4BACP,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM;4BACnC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK;AACjC,4BAAA,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,EAAE;gCAAE,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;AAAE;AAAM,iCAAA;gCAAE,IAAI,CAAC,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAAE;AACrH,4BAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,4BAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACnB,4BAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,4BAAA,IAAI,CAAC,YAAY,GAAE,KAAK;AACxB,4BAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;AACtB;AACF;AAAM,yBAAA;AACL,wBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,wBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AACnB;iBACF;AACD,gBAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AAClB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,oBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;iBACxB;AACD,gBAAA,QAAQ,EAAE,MAAK,GAAG;AACnB,aAAA,CAAC;AACL;AAAM,aAAA,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;AAChC,YAAA,IAAI,CAAC;iBACF,YAAY,CAAC,GAAG;AAChB,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,iBAAA,SAAS,CAAC;AACT,gBAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,oBAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;wBAC3B,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ;wBAClC,IAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAI,CAAC,EAAC;AAC7B,4BAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,4BAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AACnB;AAAM,6BAAA;4BACP,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM;4BACnC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK;AACjC,4BAAA,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,EAAE;gCAAE,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;AAAE;AAAM,iCAAA;gCAAE,IAAI,CAAC,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAAE;AACrH,4BAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,4BAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACnB,4BAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,4BAAA,IAAI,CAAC,YAAY,GAAE,KAAK;AACvB;AACF;AAAM,yBAAA;AACL,wBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,wBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AACnB;iBACF;AACD,gBAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AAClB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,oBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;iBACxB;AACD,gBAAA,QAAQ,EAAE,MAAK,GAAG;AACnB,aAAA,CAAC;AACL;AAAM,aAAA,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE;AAC9B,YAAA,IAAI,CAAC;iBACF,UAAU,CAAC,GAAG;AACd,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,iBAAA,SAAS,CAAC;AACT,gBAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,oBAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;wBAC3B,IAAI,CAAC,SAAS,GAAG,GAAG,EAAE,IAAI,EAAE,QAAQ;wBACpC,IAAI,CAAC,cAAc,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM;wBACvC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK;AACjC,wBAAA,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,EAAE;4BAAE,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;AAAE;AAAM,6BAAA;4BAAE,IAAI,CAAC,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAAE;AAAc,wBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACrJ,wBAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACpB;AAAM,yBAAA;AACL,wBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,wBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AACnB;iBACF;AACD,gBAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AAClB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,oBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;iBACxB;AACD,gBAAA,QAAQ,EAAE,MAAK,GAAG;AACnB,aAAA,CAAC;AAAG;AAAM,aAAA,IAAG,IAAI,CAAC,IAAI,KAAG,cAAc,EAAC;AACvC,YAAA,IAAI,CAAC;iBACJ,kBAAkB,CAAC,GAAG;AACtB,iBAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,iBAAA,SAAS,CAAC;AACT,gBAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,oBAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;wBAC3B,IAAI,CAAC,SAAS,GAAG,GAAG,EAAE,IAAI,EAAE,QAAQ;wBACpC,IAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,KAAI,CAAC,EAAC;AAC7B,4BAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,4BAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AACnB;AAAM,6BAAA;4BACP,IAAI,CAAC,cAAc,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM;4BACrC,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK;AACjC,4BAAA,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,EAAE;gCAAE,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;AAAE;AAAM,iCAAA;gCAAE,IAAI,CAAC,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAAE;AACrH,4BAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,4BAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACnB,4BAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AACtB,4BAAA,IAAI,CAAC,YAAY,GAAE,KAAK;AACxB,4BAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;AACtB;AACF;AAAM,yBAAA;AACL,wBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,wBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AACnB;iBACF;AACD,gBAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AAClB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,oBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;iBACxB;AACD,gBAAA,QAAQ,EAAE,MAAK,GAAG;AACnB,aAAA,CAAC;AACH;;IAGP,YAAY,CAAC,OAAY,EAAE,QAAa,EAAA;AACtC,QAAA,IAAI,IAAI,GAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACxE,QAAA,IAAI,CAAC,KAAK,GAAG,OAAO;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,QAAQ;AACtB,QAAA,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,6BAA6B,CAAC,EAAE;AACpD,YAAA,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO;AAChC,SAAA,CAAC;;AAEJ,IAAA,UAAU,CAAC,OAAY,EAAE,QAAa,EAAC,UAAc,EAAA;AACnD,QAAA,IAAI,IAAI,GAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACxE,QAAA,IAAI,CAAC,KAAK,GAAG,OAAO;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,QAAQ;AACtB,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,GAAG,UAAU,GAAC,QAAQ;AAClD,QAAA,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC,EAAE;AAC3C,YAAA,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO;AAChC,SAAA,CAAC;;AAEJ,IAAA,YAAY,CAAC,GAAO,EAAA;QAClB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,qBAAqB,EAAE;AAC7D,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,IAAI,EAAE,IAAI;AACV,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,QAAQ,EAAC;AACV,SAAA,CAAC;QACF,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,GAAG,GAAG,CAAC,QAAQ;QAClD,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,KAAI;AAChC,SAAC,CAAC;;AAGJ,IAAA,OAAO,CAAC,IAAQ,EAAC,QAAY,EAAC,OAAW,EAAC,UAAc,EAAA;QACtD,IAAG,IAAI,KAAI,KAAK,EAAC;AACf,YAAA,IAAI,IAAI,GAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACxE,YAAA,IAAI,CAAC,KAAK,GAAG,OAAO;AACpB,YAAA,IAAI,CAAC,MAAM,GAAG,QAAQ;AACtB,YAAA,IAAI,CAAC,UAAU,GAAG,UAAU,GAAG,UAAU,GAAC,QAAQ;AAClD,YAAA,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC5D,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC,EAAE;AAC3C,gBAAA,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO;AAChC,aAAA,CAAC;AACH;AAAM,aAAA;AACT,YAAA,IAAI,IAAI,GAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACxE,YAAA,IAAI,CAAC,KAAK,GAAG,OAAO;AACpB,YAAA,IAAI,CAAC,MAAM,GAAG,QAAQ;AACtB,YAAA,IAAI,CAAC,UAAU,GAAG,UAAU,GAAG,UAAU,GAAC,QAAQ;AAClD,YAAA,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC5D,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,6BAA6B,CAAC,EAAE;gBACpD,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,EAAC,IAAI,EAAC,IAAI;AAC1C,aAAA,CAAC;AACH;;AAGC,IAAA,aAAa,CAAC,QAAY,EAAC,OAAW,EAAC,UAAc,EAAA;AACnD,QAAA,IAAI,IAAI,GAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACxE,QAAA,IAAI,CAAC,KAAK,GAAG,OAAO;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,QAAQ;AACtB,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,GAAG,UAAU,GAAC,QAAQ;AAClD,QAAA,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,CAAC;;AAE1C,IAAA,YAAY,CAAC,QAAY,EAAC,OAAW,EAAC,UAAc,EAAA;AAClD,QAAA,IAAI,IAAI,GAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACxE,QAAA,IAAI,CAAC,KAAK,GAAG,OAAO;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,QAAQ;AACtB,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU,GAAG,UAAU,GAAC,QAAQ;AAClD,QAAA,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,wBAAwB,CAAC,EAAE;AAC/C,YAAA,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO;AAChC,SAAA,CAAC;;IAEJ,WAAW,CAAC,QAAY,EAAC,OAAW,EAAA;AAClC,QAAA,IAAI,IAAI,GAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC;AACxE,QAAA,IAAI,CAAC,KAAK,GAAG,OAAO;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,QAAQ;AACtB,QAAA,YAAY,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC;;IAGzC,WAAW,GAAA;AACT,QAAA,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,EAAE;YACxB,OAAO,IAAI,CAAC,UAAU;AACvB;AAAM,aAAA;YACL,OAAO,IAAI,CAAC,QAAQ;AACrB;;wGA1tBQ,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAJ,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,EAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAAD,IAAA,CAAA,kBAAA,EAAA,EAAA,EAAA,KAAA,EAAAI,IAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAAE,aAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,mDCd7B,4qnCAsbM,EAAA,MAAA,EAAA,CAAA,8pEAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,4BAAA,EAAA,QAAA,EAAA,uGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,cAAA,EAAA,aAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAF,IAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA;;4FDxaO,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAL5B,SAAS;+BACE,aAAa,EAAA,QAAA,EAAA,4qnCAAA,EAAA,MAAA,EAAA,CAAA,8pEAAA,CAAA,EAAA;;;MEAZ,kBAAkB,CAAA;AAeV,IAAA,WAAA;AAAmC,IAAA,OAAA;IAbtD,QAAQ,GAAY,KAAK;IACzB,OAAO,GAAW,IAAI;IACtB,MAAM,GAAW,KAAK;IACtB,aAAa,GAAS,EAAE;IACxB,YAAY,GAAQ,OAAO;IAC3B,YAAY,GAAO,UAAU;AAC7B,IAAA,YAAY,GAAO,CAAC,UAAU,EAAC,SAAS,CAAC;IACzC,OAAO,GAAO,EAAE;IAChB,MAAM,GAAO,EAAE;AACE,IAAA,QAAQ,GAAG,IAAI,OAAO,EAAE;AAChC,IAAA,YAAY;IACrB,QAAQ,GAAQ,EAAE;IAElB,WAAmB,CAAA,WAA0B,EAAS,OAAqB,EAAA;QAAxD,IAAW,CAAA,WAAA,GAAX,WAAW;QAAwB,IAAO,CAAA,OAAA,GAAP,OAAO;;AAK7D,IAAA,OAAO,CAAC,KAAiB,EAAA;AACvB,QAAA,MACE,MAAM,GAAG,KAAK,CAAC,MAAqB;AACtC,QAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;AAChC,YAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;AACtB;;IAGL,QAAQ,GAAA;QACN,IAAG,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,SAAS,KAAI,SAAS,EAAC;YACjD,IAAI,CAAC,aAAa,GAAG,CAAC,OAAO,EAAC,SAAS,CAAC;AACzC;aAAK,IAAG,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,SAAS,KAAI,OAAO,EAAC;AACrD,YAAA,IAAI,CAAC,aAAa,GAAG,CAAC,OAAO,CAAC;AAC/B;QACD,IAAI,CAAC,WAAW,EAAE;;IAGpB,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,SAAS,CAAC;AACnC,YAAA,IAAI,EAAC,CAAC,GAAO,KAAG;AACd,gBAAA,IAAG,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;oBAC1B,IAAI,CAAC,QAAQ,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM;AAClC;aACF;AACF,SAAA,CAAC;;IAGJ,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;;AAG1B,IAAA,WAAW,CAAC,KAAS,EAAA;AACnB,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK;;AAG3B,IAAA,YAAY,CAAC,KAAiB,EAAA;QAC5B,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ;;AAGhC,IAAA,UAAU,CAAC,KAAU,EAAA;AACnB,QAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AACzB,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;;AAGvB,IAAA,cAAc,CAAC,KAAS,EAAA;AACtB,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK;;IAGrB,UAAU,GAAA;AACR,QAAA,IAAI,IAAI,GAAO;AACb,YAAA,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,QAAQ;AAC3C,YAAA,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO;YACzC,SAAS,EAAE,IAAI,CAAC,YAAY;AAC5B,YAAA,QAAQ,EAAG,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,QAAQ;AAC5C,YAAA,WAAW,EAAE,IAAI,CAAC,YAAY,KAAK,UAAU,GAAG,OAAO,GAAG,MAAM;YAChE,UAAU,EAAE,IAAI,CAAC,YAAY,KAAI,OAAO,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,UAAU;YACrH,QAAQ,EAAE,IAAI,CAAC,OAAO;AACtB,YAAA,UAAU,EAAG,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE;SACvC;QACD,IAAI,CAAC,YAAY,KAAK,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,EAAE;AACvE,QAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC;;wGAlFjB,kBAAkB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAP,IAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAAE,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAlB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,kBAAkB,6JCV/B,6sGAoDM,EAAA,MAAA,EAAA,CAAA,qOAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAM,EAAA,CAAA,qBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,aAAA,EAAA,OAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;4FD1CO,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAL9B,SAAS;+BACE,eAAe,EAAA,QAAA,EAAA,6sGAAA,EAAA,MAAA,EAAA,CAAA,qOAAA,CAAA,EAAA;8GAgBhB,YAAY,EAAA,CAAA;sBAApB;gBAQD,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC;;;MElB/B,cAAc,CAAA;AAQL,IAAA,OAAA;AAA8B,IAAA,KAAA;AAA2B,IAAA,KAAA;AAA6B,IAAA,EAAA;AANzF,IAAA,QAAQ,GAAG,IAAI,OAAO,EAAE;AAChC,IAAA,IAAI;IACb,OAAO,GAAO,IAAI;IAClB,MAAM,GAAK,KAAK;AAChB,IAAA,WAAW;AAEX,IAAA,WAAA,CAAoB,OAAqB,EAAS,KAAkB,EAAS,KAAoB,EAAS,EAAqB,EAAA;QAA3G,IAAO,CAAA,OAAA,GAAP,OAAO;QAAuB,IAAK,CAAA,KAAA,GAAL,KAAK;QAAsB,IAAK,CAAA,KAAA,GAAL,KAAK;QAAwB,IAAE,CAAA,EAAA,GAAF,EAAE;;IAC5G,QAAQ,GAAA;QACN,IAAI,CAAC,cAAc,EAAE;;IAGvB,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;;IAG1B,cAAc,GAAA;AACZ,QAAA,IAAI,MAAM,GAAO;AAChB,YAAA,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ;AAC7B,YAAA,OAAO,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO;AAC1B,YAAA,SAAS,EAAC,IAAI,CAAC,IAAI,EAAE,SAAS;AAC9B,YAAA,MAAM,EAAG,KAAK;AACd,YAAA,UAAU,EAAG,IAAI,CAAC,IAAI,EAAE,YAAY;AACpC,YAAA,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE;SACrB;AACD,QAAA,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3E,YAAA,IAAI,EAAC,CAAC,GAAO,KAAG;AACd,gBAAA,IAAG,GAAG,IAAI,GAAG,EAAE,IAAI,KAAK,GAAG,EAAC;oBAC1B,IAAI,CAAC,WAAW,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM;AACpC,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,oBAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACpB;AAAI,qBAAA;AACH,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACrB;AACD,gBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;aACxB;AACD,YAAA,KAAK,EAAC,CAAC,GAAO,KAAG;AACb,gBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;aACvB;AACF,SAAA,CAAC;;IAIJ,WAAW,GAAA;AACT,QAAA,IAAI,MAAM,GAAO;AACd,YAAA,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ;AAC7B,YAAA,OAAO,EAAC,IAAI,CAAC,IAAI,EAAE,OAAO;AAC1B,YAAA,SAAS,EAAC,IAAI,CAAC,IAAI,EAAE,SAAS;AAC9B,YAAA,MAAM,EAAG,IAAI;AACb,YAAA,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,YAAY;AACnC,YAAA,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE;SACrB;AACD,QAAA,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,QAAQ,GAAG,aAAa,GAAG,YAAY;AACtE,QAAA,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AACpF,YAAA,IAAI,EAAC,CAAC,GAAO,KAAG;AACd,gBAAA,IAAG,GAAG,EAAC;oBACL,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAC,IAAI,CAAC;AACnC;aACF;AACD,YAAA,KAAK,EAAC,CAAC,GAAO,KAAG;gBACd,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC;aACtC;AACF,SAAA,CAAC;;wGAlEK,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,aAAA,EAAA,EAAA,EAAA,KAAA,EAAAZ,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAAa,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAd,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,2ECX3B,62FAsDA,EAAA,MAAA,EAAA,CAAA,gLAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAR,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAL,EAAA,CAAA,oBAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,CAAA,EAAA,CAAA;;4FD3Ca,cAAc,EAAA,UAAA,EAAA,CAAA;kBAL1B,SAAS;+BACE,WAAW,EAAA,QAAA,EAAA,62FAAA,EAAA,MAAA,EAAA,CAAA,gLAAA,CAAA,EAAA;kKAOZ,IAAI,EAAA,CAAA;sBAAZ;;;MEMU,qBAAqB,CAAA;AAoCZ,IAAA,EAAA;AAA8B,IAAA,YAAA;AAA8B,IAAA,OAAA;AAA+B,IAAA,KAAA;AAA2B,IAAA,KAAA;IAnC1I,MAAM,GAAW,KAAK;IACtB,OAAO,GAAW,IAAI;IAEtB,UAAU,GAAO,EAAE;AACnB,IAAA,QAAQ,GAAO;AACb,QAAA,EAAC,IAAI,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAC,KAAK,EAAC,UAAU,EAAC,KAAK,EAAC;AACtF,QAAA,EAAC,IAAI,EAAC,UAAU,EAAC,QAAQ,EAAC,YAAY,EAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAC,KAAK,EAAC,UAAU,EAAC,KAAK,EAAC;AACzF,QAAA,EAAC,IAAI,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,IAAI,EAAC,UAAU,EAAC,UAAU,EAAC,KAAK,EAAC,UAAU,EAAC,KAAK;KACtF;AACyB,IAAA,WAAW;AACpB,IAAA,QAAQ,GAAG,IAAI,OAAO,EAAE;AACzC,IAAA,YAAY;IACZ,aAAa,GAAQ,EAAE;IACvB,MAAM,GAAQ,CAAC;IACf,cAAc,GAAQ,EAAE;IACxB,cAAc,GAAQ,EAAE;IACxB,UAAU,GAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAC9B,IAAA,UAAU;IACV,KAAK,GAAO,EAAE;IACd,MAAM,GAAO,CAAC;AACd,IAAA,aAAa;IACb,KAAK,GAAG,KAAK;IACb,aAAa,GAAQ,EAAE;AACvB,IAAA,UAAU;IACV,WAAW,GAAO,EAAE;AAEpB,IAAA,UAAU,GAAO;AACf,QAAA,EAAE,WAAW,EAAE,aAAa,EAAC,IAAI,EAAC,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAC,EAAE,EAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAC,EAAC,EAAC,EAAE,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAC;AACjH,QAAA,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE;AACtC,QAAA,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAC,EAAE,EAAC,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,EAAC,EAAC,EAAE,EAAC,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,EAAC,EAAC,EAAE,EAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,EAAC,EAAC,EAAE,EAAC,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,EAAC,EAAC,EAAE,EAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAC,EAAE;KACvP;AAED,IAAA,UAAU;IACV,YAAY,GAAQ,SAAS;IAE7B,WAAoB,CAAA,EAAqB,EAAS,YAAqB,EAAS,OAAsB,EAAS,KAAkB,EAAS,KAAkB,EAAA;QAAxI,IAAE,CAAA,EAAA,GAAF,EAAE;QAA4B,IAAY,CAAA,YAAA,GAAZ,YAAY;QAAkB,IAAO,CAAA,OAAA,GAAP,OAAO;QAAwB,IAAK,CAAA,KAAA,GAAL,KAAK;QAAsB,IAAK,CAAA,KAAA,GAAL,KAAK;;IAI/I,QAAQ,GAAA;QACN,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,IAAS,KAAI;YAC5E,IAAG,IAAI,IAAE,IAAI,EAAC;AACZ,gBAAA,IAAI,CAAC,YAAY,GAAG,IAAI;gBACxB,IAAI,CAAC,WAAW,EAAE;AACrB;AACH,SAAC,CAAC;;IAGH,WAAW,GAAA;AACV,QAAA,IAAI,IAAI,GAAO;AACb,YAAA,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;AAC7E,YAAA,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;YACzE,gBAAgB,EAAG,IAAI,CAAC,cAAc;YACtC,eAAe,EAAG,IAAI,CAAC,aAAa;YACpC,cAAc,EAAG,IAAI,CAAC,cAAc;AACpC,YAAA,iBAAiB,EAAG,IAAI,CAAC,WAAW,KAAI,EAAE,GAAE,EAAE,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;AACnE,YAAA,kBAAkB,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC;YACvC,WAAW,EAAE,IAAI,CAAC,UAAU;YAC5B,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM;AACnB,YAAA,QAAQ,EAAE;SACX;QACD,IAAG,IAAI,CAAC,aAAa,EAAC;AAAC,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa;AAAC;aAAK,IAAG,IAAI,CAAC,UAAU,EAAC;AAAC,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU;AAAC;QAC5H,IAAI,CAAC,aAAa,EAAE;AACpB,QAAA,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1E,YAAA,IAAI,EAAC,CAAC,GAAO,KAAI;AACf,gBAAA,IAAG,GAAG,IAAI,GAAG,EAAE,IAAI,KAAK,GAAG,EAAC;oBACxB,IAAI,CAAC,UAAU,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM;oBACnC,IAAI,CAAC,UAAU,GAAG,GAAG,EAAE,IAAI,EAAE,KAAK;AAClC,oBAAA,IAAG,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,EAAC;AAC1B,wBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AACnB;AACD,oBAAA,IAAG,IAAI,CAAC,UAAU,GAAG,EAAE,EAAC;wBACtB,IAAI,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;AACpC;AAAI,yBAAA;wBACH,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAC/B;AACD,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,oBAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACxB;AAAI,qBAAA;AACH,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACrB;aACF;AACD,YAAA,KAAK,EAAC,CAAC,GAAO,KAAG;AACf,gBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAChB,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;gBACtB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC;;AAExC,SAAA,CAAC;;IAGH,eAAe,GAAA;AACb,QAAA,IAAG,IAAI,CAAC,UAAU,GAAG,EAAE,EAAC;YACtB,OAAO,IAAI,CAAC,UAAU;AACvB;AAAI,aAAA;YACH,OAAO,IAAI,CAAC,KAAK;AAClB;;IAGH,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AACpE,YAAA,IAAI,EAAC,CAAC,GAAO,KAAI;AACf,gBAAA,IAAG,GAAG,IAAI,GAAG,EAAE,IAAI,KAAI,GAAG,EAAC;oBACzB,IAAI,CAAC,UAAU,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM;AACnC,oBAAA,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAQ,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,UAAU,EAAC,EAAE,EAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAC5F,MAAM,YAAY,GAAS,EAAE;AAC7B,oBAAA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAE;AACzB,oBAAA,MAAM,CAAC,OAAO,CAAC,CAAC,KAAS,KAAI;wBAC3B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;AAC5B,4BAAA,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;AACvB,4BAAA,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;AACzB;AACH,qBAAC,CAAC;oBACF,MAAM,aAAa,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,GAAQ,KAAK,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC;AACzF,oBAAA,aAAa,CAAC,MAAM,GAAG,YAAY;AACpC;aACF;AACD,YAAA,KAAK,EAAC,CAAC,GAAO,KAAI;aAEjB;AACJ,SAAA,CAAC;;IAGA,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;;AAG1B,IAAA,WAAW,CAAC,IAAQ,EAAA;AAClB,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAO,KAAK,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAS,KAAK,IAAI,EAAE,EAAE,CAAC;AAChH,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAO,KAAK,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,IAAS,KAAK,IAAI,EAAE,EAAE,CAAC;QAChH,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAO,KAAK,GAAG,CAAC,WAAW,KAAI,aAAa,CAAC,EAAE,MAAM,EAAE,EAAE;QACxF,IAAI,CAAC,WAAW,EAAE;;AAGpB,IAAA,YAAY,CAAC,UAAe,EAAA;AAC1B,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,UAAU;QACnC,IAAI,CAAC,WAAW,EAAE;;AAGpB,IAAA,gBAAgB,CAAC,QAAa,EAAA;AAC5B,QAAA,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,QAAQ;AAChC,QAAA,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;QAC1B,IAAI,CAAC,WAAW,EAAE;;IAGpB,UAAU,GAAA;AACR,QAAA,IAAI,IAAI,GAAO;AACb,YAAA,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;AAC7E,YAAA,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC;YACzE,gBAAgB,EAAG,IAAI,CAAC,cAAc;YACtC,eAAe,EAAG,IAAI,CAAC,aAAa;YACpC,cAAc,EAAG,IAAI,CAAC,cAAc;AACpC,YAAA,iBAAiB,EAAG,IAAI,CAAC,WAAW,KAAI,EAAE,GAAE,EAAE,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC;AACnE,YAAA,kBAAkB,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC;YACvC,WAAW,EAAE,IAAI,CAAC,UAAU;YAC5B,MAAM,EAAE,IAAI,CAAC,MAAM;AACnB,YAAA,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,IAAI,CAAC,MAAM;AACnB,YAAA,QAAQ,EAAE;SACX;QACD,IAAG,IAAI,CAAC,aAAa,EAAC;AAAC,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,aAAa;AAAC;aAAK,IAAG,IAAI,CAAC,UAAU,EAAC;AAAC,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU;AAAC;AAC5H,QAAA,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AAChF,YAAA,IAAI,EAAC,CAAC,GAAO,KAAI;AACf,gBAAA,IAAG,GAAG,EAAC;oBACH,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,EAAC,cAAc,CAAC;AACjD;aACJ;AACD,YAAA,KAAK,EAAC,CAAC,GAAO,KAAG;gBACf,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC;;AAExC,SAAA,CAAC;;AAGJ,IAAA,YAAY,CAAC,IAAQ,EAAA;QACpB,IAAG,IAAI,KAAK,KAAK,EAAC;AAChB,YAAA,IAAI,CAAC,WAAW,GAAG,EAAE;AACtB;AAAI,aAAA;AACH,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;AACxB;AACD,QAAA,IAAI,CAAC,KAAK,GAAG,EAAE;AACf,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC;QACf,IAAI,CAAC,WAAW,EAAE;;IAGnB,UAAU,GAAA;AACT,QAAA,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU;QACjC,IAAI,CAAC,WAAW,EAAE;;AAGnB,IAAA,eAAe,CAAC,KAAS,EAAA;QACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,EAAC;AACrD,YAAA,QAAQ,EAAC,IAAI;AACb,YAAA,IAAI,EAAC;AACN,SAAA,CAAC;AACF,QAAA,QAAQ,CAAC,iBAAiB,CAAC,IAAI,GAAE;AAC/B,YAAA,IAAI,EAAG,QAAQ;YACf,QAAQ,EAAC,KAAK,EAAE,QAAQ;YACxB,OAAO,EAAE,KAAK,EAAE,OAAO;YACvB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAC,KAAK,EAAE,QAAQ;AACxB,YAAA,SAAS,EAAE;SACZ;;AAEH,IAAA,cAAc,CAAC,KAAS,EAAA;QACtB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,cAAc,EAAC;AACrD,YAAA,QAAQ,EAAC,IAAI;AACb,YAAA,IAAI,EAAC;AACN,SAAA,CAAC;AACJ,QAAA,QAAQ,CAAC,iBAAiB,CAAC,IAAI,GAAE;AAC/B,YAAA,IAAI,EAAG,OAAO;YACd,QAAQ,EAAC,KAAK,EAAE,QAAQ;YACxB,OAAO,EAAE,KAAK,EAAE,OAAO;YACvB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,QAAQ,EAAC,KAAK,EAAE,QAAQ;AACxB,YAAA,SAAS,EAAE;SACZ;;IAGD,QAAQ,GAAA;AACN,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;;AAG3D,IAAA,aAAa,CAAC,KAAS,EAAA;QACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,EAAC;AACzD,YAAA,QAAQ,EAAC,IAAI;;AAEd,SAAA,CAAC;AACF,QAAA,QAAQ,CAAC,iBAAiB,CAAC,YAAY,GAAE;AACvC,YAAA,IAAI,EAAG,OAAO;AACd,YAAA,IAAI,EAAE,KAAK;YACX,YAAY,EAAG,IAAI,CAAC;SACrB;QACD,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAQ,KAAI;AACrC,YAAA,IAAI,GAAG,EAAE;AACH,gBAAA,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;AACxE,oBAAA,IAAI,EAAC,CAAC,GAAO,KAAG;AACd,wBAAA,IAAG,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAC;4BACzB,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,EAAE,MAAM,CAAC;4BAC7C,IAAI,CAAC,WAAW,EAAE;AACnB;qBACF;AACD,oBAAA,KAAK,EAAC,CAAC,GAAO,KAAG;wBACb,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC;;AAE3C,iBAAA,CAAC;AACH;AACL,SAAC,CAAE;;AAGP,IAAA,WAAW,CAAC,KAAS,EAAA;QACnB,IAAI,aAAa,GAAG,KAAK;QACzB,IAAG,aAAa,KAAK,QAAQ,EAAC;AAC5B,YAAA,OAAO,qBAAqB;AAC7B;AAAK,aAAA,IAAG,aAAa,KAAK,UAAU,IAAI,aAAa,KAAK,cAAc,EAAC;AACxE,YAAA,OAAO,qBAAqB;AAC7B;AAAI,aAAA;AACH,YAAA,OAAO,qBAAqB;AAC7B;;AAGH,IAAA,QAAQ,CAAC,KAAS,EAAA;AAChB,QAAA,IAAI,CAAC,aAAa,GAAG,KAAK;AAC1B,QAAA,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;QACjB,IAAI,CAAC,WAAW,EAAE;;wGA3QP,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,kBAAA,EAAA,EAAA,EAAA,KAAA,EAAAD,IAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAAE,aAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAAK,YAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAArB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,qKCpBlC,+zrBAwVc,EAAA,MAAA,EAAA,CAAA,goBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,cAAA,EAAA,aAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAD,IAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,CAAA;;4FDpUD,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;+BACE,mBAAmB,EAAA,QAAA,EAAA,+zrBAAA,EAAA,MAAA,EAAA,CAAA,goBAAA,CAAA,EAAA;8LAcH,WAAW,EAAA,CAAA;sBAApC,SAAS;uBAAC,aAAa;;;AE1B1B,MAAM,6BAA6B,GAAa;AAC9C,IAAA,OAAO,EAAE,iBAAiB;AAC1B,IAAA,WAAW,EAAE,UAAU,CAAC,MAAM,uBAAuB,CAAC;AACtD,IAAA,KAAK,EAAE,IAAI;CACZ;MAQY,uBAAuB,CAAA;AAgBd,IAAA,UAAA;AAAmC,IAAA,EAAA;AAd/C,IAAA,SAAS;AACT,IAAA,SAAS;AACR,IAAA,UAAU;AACV,IAAA,OAAO;AACP,IAAA,SAAS;AACT,IAAA,KAAK;AACL,IAAA,IAAI;AACH,IAAA,UAAU,GAAG,IAAI,YAAY,EAAE;IAC/B,QAAQ,GAAY,KAAK;IACzB,QAAQ,GAA+B,IAAI;AAC3C,IAAA,UAAU;AACpB,IAAA,UAAU;IAGV,WAAoB,CAAA,UAAyB,EAAU,EAAqB,EAAA;QAAxD,IAAU,CAAA,UAAA,GAAV,UAAU;QAAyB,IAAE,CAAA,EAAA,GAAF,EAAE;;IAIzD,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,EAAE;QACrC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,KAAI;AAC9C,YAAA,IAAI,CAAC,KAAK,IAAI,CAAC,UAAU,EAAE;AACzB,gBAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;AACrB,gBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;AACxB;AACH,SAAC,CAAC;;AAIJ,IAAA,UAAU,CAAC,GAAoB,EAAA;AAC7B,QAAA,IAAI,CAAC,UAAU,GAAG,GAAG;QACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAyB,KAAK,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;;AAGlG,IAAA,gBAAgB,CAAC,EAAO,EAAA;AACtB,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;;AAGrB,IAAA,iBAAiB,CAAC,EAAO,EAAA;AACvB,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;;AAErB,IAAA,gBAAgB,CAAE,UAAmB,EAAA;AACnC,QAAA,IAAI,CAAC,UAAU,GAAG,UAAU;;AAI9B,IAAA,QAAQ,CAAC,IAAyB,EAAA;QAChC,IAAI,CAAC,SAAS,EAAE;AAChB,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;QACpB,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;AACtC,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;QACrB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;AACrC,QAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC;;AAIjC,IAAA,OAAO,CAAC,KAAiB,EAAA;;AAEvB,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AACpB,YAAA,MAAM,aAAa,GAAG,KAAK,CAAC,MAAqB;AACjD,YAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE;AAC3C,gBAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;AACtB;AACF;;AAGH,IAAA,kBAAkB,CAAC,aAA0B,EAAA;AAC3C,QAAA,MAAM,aAAa,GAAG,aAAa,CAAC,aAAa;AACjD,QAAA,IAAI,aAAa,EAAE;YACjB,MAAM,kBAAkB,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC;AAC5E,YAAA,IAAI,kBAAkB,EAAE;AACtB,gBAAA,OAAO,IAAI;AACZ;AAAM,iBAAA;AACL,gBAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAAC;AAC9C;AACF;AACD,QAAA,OAAO,KAAK;;IAGd,YAAY,GAAA;AACV,QAAA,IAAI,CAAC,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ;QAC9B,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;;wGAnF5C,uBAAuB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAI,aAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAvB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,uBAAuB,EAFvB,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,OAAA,EAAA,SAAA,EAAA,SAAA,EAAA,WAAA,EAAA,KAAA,EAAA,OAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,gBAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,CAAC,6BAA6B,CAAC,0BCd5C,g7BAiBM,EAAA,MAAA,EAAA,CAAA,gwBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAZ,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;4FDDO,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBANnC,SAAS;+BACE,qBAAqB,EAAA,SAAA,EAGpB,CAAC,6BAA6B,CAAC,EAAA,QAAA,EAAA,g7BAAA,EAAA,MAAA,EAAA,CAAA,gwBAAA,CAAA,EAAA;+GAMjC,UAAU,EAAA,CAAA;sBAAlB;gBACQ,OAAO,EAAA,CAAA;sBAAf;gBACQ,SAAS,EAAA,CAAA;sBAAjB;gBACQ,KAAK,EAAA,CAAA;sBAAb;gBACQ,IAAI,EAAA,CAAA;sBAAZ;gBACS,UAAU,EAAA,CAAA;sBAAnB;gBAiDD,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC;;;MElE/B,oBAAoB,CAAA;AAuBX,IAAA,EAAA;AAA+B,IAAA,WAAA;AArBnD,IAAA,OAAO,CAAC,KAAiB,EAAA;AACvB,QAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAAqB;AAC1C,QAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;AAChC,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AAC1B;;AAGM,IAAA,KAAK;AACL,IAAA,WAAW;AACX,IAAA,KAAK;AACL,IAAA,OAAO;IACP,cAAc,GAAQ,EAAE;AACxB,IAAA,QAAQ;AACR,IAAA,KAAK;AACJ,IAAA,QAAQ,GAAG,IAAI,YAAY,EAAO;IAC5C,cAAc,GAAQ,EAAE;AACxB,IAAA,YAAY;AACZ,IAAA,WAAW;AACX,IAAA,UAAU;IAGV,WAAoB,CAAA,EAAqB,EAAU,WAAyB,EAAA;QAAxD,IAAE,CAAA,EAAA,GAAF,EAAE;QAA6B,IAAW,CAAA,WAAA,GAAX,WAAW;;IAC9D,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,EAAE;QACrC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,KAAG;AAC9C,YAAA,IAAG,CAAC,KAAK,IAAI,CAAC,UAAU,EAAC;AACvB,gBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AACzB,gBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;AACxB;AACH,SAAC,CAAC;;AAGJ,IAAA,WAAW,CAAC,OAAsB,EAAA;QAEhC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE;YAC1C,IAAI,CAAC,eAAe,EAAE;AACvB;AACD,QAAA,IAAI,OAAO,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE,YAAY,CAAC,IAAI,OAAO,CAAC,gBAAgB,CAAC,EAAE,YAAY,EAAE,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,gBAAgB,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE;YAC5L,IAAI,CAAC,oBAAoB,EAAE;AAC5B;;IAGH,eAAe,GAAA;QACb,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAS,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,oBAAoB,EAAE;;IAG7B,oBAAoB,GAAA;QAClB,IAAI,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,YAAiB,KAAI;AACjD,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,YAAiB,KAAK,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;AAC5H,YAAA,IAAI,IAAI,EAAE;AACR,gBAAA,IAAI,CAAC,UAAU,GAAG,IAAI;AACvB;AACH,SAAC,CAAC;;AAIJ,IAAA,YAAY,CAAC,KAAU,EAAA;QACrB,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;QACtD,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY;;AAGxC,IAAA,OAAO,CAAC,KAAU,EAAA;AAChB,QAAA,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE;YACvB,IAAI,CAAC,cAAc,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;AACtC;AAAM,aAAA;YACL,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE;AACnD,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAS,KAChD,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAC1D;AACF;QACD,IAAI,CAAC,oBAAoB,EAAE;AAC3B,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;;IAGzB,QAAQ,CAAC,KAAU,EAAE,IAAS,EAAA;QAC5B,IAAI,IAAI,CAAC,KAAK,EAAE;AACd,YAAA,IAAI,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE;AAC/B,gBAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAE;AAChC;AAAM,iBAAA;AACL,gBAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAC3G;AACF;AAAM,aAAA;YACL,IAAI,CAAC,cAAc,GAAG,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC;YACnC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,OAAW,KAAI;AAC1C,gBAAA,IAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC;AAC9C,oBAAA,OAAO,CAAC,UAAU,GAAG,KAAK;AAC3B;AACH,aAAC,CAAC;AACF,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AAC1B;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,KAAU,KAAI;AAC1D,YAAA,MAAM,YAAY,GAAG,EAAE,GAAG,KAAK,EAAE;YACjC,OAAO,YAAY,CAAC,UAAU;AAC9B,YAAA,OAAO,YAAY;AACrB,SAAC,CAAC;AAEF,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;AACvB,QAAA,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC;;AAIvC,IAAA,WAAW,CAAC,KAAU,EAAA;AACpB,QAAA,MAAM,SAAS,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO;AAC7C,QAAA,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;AAEvE,QAAA,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,cAAc,GAAG,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC;AAC/C;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,cAAc,GAAG,EAAE;AACzB;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,KAAU,KAAI;YAC1D,MAAM,EAAE,UAAU,EAAE,GAAG,YAAY,EAAE,GAAG,KAAK;AAC7C,YAAA,OAAO,YAAY;AACrB,SAAC,CAAC;AAEF,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;AACvB,QAAA,IAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC;;AAIvC,IAAA,kBAAkB,CAAC,MAAa,EAAA;QAC9B,IAAI,IAAI,CAAC,KAAK,EAAE;AACd,YAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC;AAC3B;AAAM,aAAA;YACL,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC9B;;IAGH,kBAAkB,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,UAAU,CAAC;;wGAvIvD,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAY,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAApB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,kVCPjC,o/FA2CM,EAAA,MAAA,EAAA,CAAA,guFAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAZ,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAI,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,4BAAA,EAAA,QAAA,EAAA,uGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;4FDpCO,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;+BACE,kBAAkB,EAAA,QAAA,EAAA,o/FAAA,EAAA,MAAA,EAAA,CAAA,guFAAA,CAAA,EAAA;+GAM5B,OAAO,EAAA,CAAA;sBADN,YAAY;uBAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC;gBAQjC,KAAK,EAAA,CAAA;sBAAb;gBACQ,WAAW,EAAA,CAAA;sBAAnB;gBACQ,KAAK,EAAA,CAAA;sBAAb;gBACQ,OAAO,EAAA,CAAA;sBAAf;gBACQ,cAAc,EAAA,CAAA;sBAAtB;gBACQ,QAAQ,EAAA,CAAA;sBAAhB;gBACQ,KAAK,EAAA,CAAA;sBAAb;gBACS,QAAQ,EAAA,CAAA;sBAAjB;;;METU,oBAAoB,CAAA;AAyDrB,IAAA,EAAA;AACA,IAAA,aAAA;AACA,IAAA,EAAA;AACA,IAAA,KAAA;AAA4B,IAAA,YAAA;AAC5B,IAAA,YAAA;AAAmC,IAAA,EAAA;AA5D7C,IAAA,WAAW;IACX,OAAO,GAAY,KAAK;IACxB,MAAM,GAAY,KAAK;IACvB,YAAY,GAAM,EAAE;IACpB,aAAa,GAAM,CAAC;IAEpB,YAAY,GAAW,IAAI;AAC3B,IAAA,aAAa;AACb,IAAA,gBAAgB;AAChB,IAAA,IAAI;AACJ,IAAA,kBAAkB;AAChB,IAAA,eAAe,GAAQ;AACvB,QAAA,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE;AAC3B,QAAA,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,YAAY,EAAE;AACjD,QAAA,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,gBAAgB,EAAE;AAC9C,QAAA,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,eAAe,EAAE;KAClD;AACD,IAAA,IAAI,GAAQ;AACV,QAAA,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;AAChC,QAAA,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;KACrC;;AAGC,IAAA,YAAY,GAAQ;;AAEpB,QAAA,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE;AACtC,QAAA,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;AACxC,QAAA,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE;KACzC;AACD,IAAA,YAAY;AACZ,IAAA,UAAU;AAER,IAAA,UAAU,GAAQ;AAClB,QAAA,UAAU,EAAE,oBAAoB;AAChC,QAAA,QAAQ,EAAE,sBAAsB;AAChC,QAAA,SAAS,EAAE,yDAAyD;AACpE,QAAA,MAAM,EAAE,MAAM;AACd,QAAA,IAAI,EAAE,aAAa;AACnB,QAAA,QAAQ,EAAE;AACR,YAAA,KAAK,EAAE,GAAG;AACV,YAAA,UAAU,EAAE,EAAE;AACd,YAAA,QAAQ,EAAE,CAAC;AACX,YAAA,YAAY,EAAE,CAAC;AAChB,SAAA;AACD,QAAA,UAAU,EAAE;YACV,EAAE,GAAG,EAAE,iBAAiB,EAAE;YAC1B,EAAE,GAAG,EAAE,iBAAiB,EAAE;YAC1B,EAAE,GAAG,EAAE,iBAAiB,EAAE;AAC3B,SAAA;KACF;IACD,cAAc,GAAU,EAAE;IAC5B,WAAW,GAAY,KAAK;IAC5B,MAAM,GAAU,EAAE;AACC,IAAA,QAAQ,GAAG,IAAI,OAAO,EAAE;AAEzC,IAAA,WAAA,CACU,EAAsB,EACtB,aAA4B,EAC5B,EAAqB,EACrB,KAAmB,EAAS,YAAsB,EAClD,YAA0B,EAAS,EAAe,EAAA;QAJlD,IAAE,CAAA,EAAA,GAAF,EAAE;QACF,IAAa,CAAA,aAAA,GAAb,aAAa;QACb,IAAE,CAAA,EAAA,GAAF,EAAE;QACF,IAAK,CAAA,KAAA,GAAL,KAAK;QAAuB,IAAY,CAAA,YAAA,GAAZ,YAAY;QACxC,IAAY,CAAA,YAAA,GAAZ,YAAY;QAAuB,IAAE,CAAA,EAAA,GAAF,EAAE;;IAG/C,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;;IAE1B,QAAQ,GAAA;AACN,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI;QAExB,IAAI,CAAC,kBAAkB,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;AAC/B,YAAA,cAAc,EAAE,IAAI,WAAW,CAAC,MAAM,CAAC;AACvC,YAAA,YAAY,EAAE,IAAI,WAAW,CAAC,SAAS,CAAC;AACxC,YAAA,WAAW,EAAE,IAAI,WAAW,CAAC,EAAE,CAAC;AACjC,SAAA,CAAC;QAEI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC;YACxB,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;AAC5C,SAAA,CAAC;AACN,QAAA,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC;AAChE,YAAA,IAAI,EAAE,CAAC,IAAS,KAAI;AAClB,gBAAA,IAAI,IAAI,EAAE;AACR,oBAAA,IAAI,CAAC,aAAa,GAAG,IAAI;oBACzB,IAAI,CAAC,gBAAgB,GAAG;wBACtB,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,QAAQ,EAAE;AAC7C,wBAAA,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS;AAC7C,wBAAA,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,OAAO;qBAC1C;oBACD,IAAI,CAAC,gBAAgB,EAAE;oBACvB,IAAI,CAAC,aAAa,EAAE;oBACpB,IAAI,CAAC,YAAY,EAAE;AAEpB;aACF;AACF,SAAA,CAAC;;AAEJ,IAAA,sBAAsB;IACtB,gBAAgB,GAAA;AACd,QAAA,IAAI,CAAC;AACF,aAAA,mBAAmB,CAClB,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAC5B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAC9B,IAAI,CAAC,gBAAgB,CAAC,MAAM;AAE7B,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;gBACjB,IAAI,GAAG,IAAI,GAAG,EAAE,IAAI,IAAI,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE;oBACzC,IAAI,CAAC,sBAAsB,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM;AAChD;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,sBAAsB,GAAG,EAAE;AACjC;aACF;AACD,YAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AAClB,gBAAA,IAAI,CAAC,sBAAsB,GAAG,EAAE;aACjC;YACD,QAAQ,EAAE,MAAK;AACb,gBAAA,IAAI,CAAC,sBAAsB,CAAC,MAAM,KAAK,CAAC;aACzC;AACF,SAAA,CAAC;AACA,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;;IAE7B,MAAM,GAAG,CAAC;IACV,KAAK,GAAG,EAAE;IACV,QAAQ,GAAO,KAAK;AACpB,IAAA,gBAAgB;AAChB,IAAA,UAAU;IACV,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IAC9B,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI;QACnB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE;QACjD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,EAAE;AAC7B,QAAA,IAAI,CAAC,QAAQ,GAAG,KAAK;AACrB,QAAA,IAAI,CAAC;AACF,aAAA,gBAAgB,CACf,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAC5B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAC9B,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAC5B,IAAI,CAAC,WAAW,EAAC,IAAI,CAAC,KAAK,EAC3B,IAAI,CAAC,MAAM,EAAC,IAAI,CAAC,QAAQ,EAAC,IAAI,CAAC,YAAY,EAAC,IAAI,CAAC,aAAa;AAE/D,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;AAC3B,oBAAA,IAAI,CAAC,MAAM,GAAG,KAAK;AACnB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;oBACpB,IAAI,CAAC,gBAAgB,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM;oBAEzC,IAAI,CAAC,UAAU,GAAG,GAAG,EAAE,IAAI,EAAE,KAAK;AAClC,oBAAA,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,EAAE;wBAAE,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;AAAE;AAAM,yBAAA;wBAAE,IAAI,CAAC,eAAe,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAAE;AACpH;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AACjB,oBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;AACpB,oBAAA,IAAI,CAAC,gBAAgB,GAAE,EAAE;AAE3B;AACD,gBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;aACxB;AACD,YAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AAClB,gBAAA,IAAI,CAAC,MAAM,GAAG,IAAI;AAClB,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;aACrB;YACD,QAAQ,EAAE,MAAK;AACb,gBAAA,IAAI,CAAC,OAAO,GAAG,KAAK;aACrB;AACF,SAAA,CAAC;;IAGR,WAAW,GAAO,CAAC;IACnB,QAAQ,GAAO,EAAE;AACb,IAAA,YAAY,CAAC,UAAkB,EAAA;AAC/B,QAAA,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AACrC,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC;AAChC,QAAA,IAAI,CAAC,KAAK,GAAE,EAAE;QACd,IAAI,CAAC,aAAa,EAAE;;AAGtB,IAAA,gBAAgB,CAAC,QAAgB,EAAA;AAC/B,QAAA,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAChC,QAAA,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC7B,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC;QACf,IAAI,CAAC,aAAa,EAAE;;IAGrB,WAAW,GAAA;AACV,QAAA,IAAI,IAAI,CAAC,UAAU,GAAG,EAAE,EAAE;YACxB,OAAO,IAAI,CAAC,UAAU;AACvB;AAAM,aAAA;YACL,OAAO,IAAI,CAAC,QAAQ;AACrB;;IAEH,UAAU,GAAA;AACR,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC;AACpB,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC;AACf,QAAA,IAAI,CAAC,KAAK,GAAC,EAAE;QACb,IAAI,CAAC,aAAa,EAAE;;IAGtB,UAAU,GAAA;QACR,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE;AACjD,QAAA,IAAI,CAAC,MAAM,GAAG,CAAC;AACf,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK;AAClB,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;AACpB,QAAA,IAAI,CAAC;AACF,aAAA,sBAAsB,CACrB,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAC5B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAC9B,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAC5B,IAAI,CAAC,WAAW,EAAC,IAAI,CAAC,KAAK,EAC3B,IAAI,CAAC,MAAM,EAAC,IAAI,CAAC,QAAQ,EAAC,IAAI,CAAC,YAAY,EAAC,IAAI,CAAC,aAAa;AAE/D,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;gBAChB,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,EAAE,4BAA4B,CAAC;aACtE;AACD,YAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;gBAClB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,uBAAuB,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC;;AAE1F,SAAA,CAAC;;AAGN,IAAA,MAAM,CAAC,MAAc,EAAA;AACnB,QAAA,IAAI,IAAI,CAAC,YAAY,KAAK,MAAM,EAAE;AAChC,YAAA,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;AACvD;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,YAAY,GAAG,MAAM;AAC1B,YAAA,IAAI,CAAC,aAAa,GAAG,CAAC;AACvB;QACD,IAAI,CAAC,aAAa,EAAE;;AAEtB,IAAA,UAAU;IAEV,gBAAgB,GAAA;QAClB,IAAI,CAAC,SAAS,EAAE;;IAGd,iBAAiB,GAAK,EAAE;IACxB,SAAS,GAAA;AACP,QAAA,IAAI,CAAC,aAAa,CAAC,kBAAkB,CACnC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAC5B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAC9B,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAC5B,IAAI,CAAC,iBAAiB,EACrB,IAAI,CAAC,MAAM,CACb,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC9B,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;oBAC3B,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM;oBAC/B,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC;AACvC;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,MAAM,GAAG,EAAE;AAChB,oBAAA,IAAI,CAAC,UAAU,GAAE,CAAC;AACnB;AACD,gBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;aACxB;AACD,YAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;AACnB,gBAAA,IAAI,CAAC,MAAM,GAAE,EAAE;AACf,gBAAA,IAAI,CAAC,UAAU,GAAE,CAAC;aAClB;AACD,YAAA,QAAQ,EAAE,MAAK,GAAG;AACnB,SAAA,CAAC;;AAEN,IAAA,mBAAmB;AAGnB,IAAA,UAAU,CAAC,KAAU,EAAA;AACnB,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC;;AAGhE,IAAA,aAAa,CAAC,KAAU,EAAA;AACtB,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC;;AAG9D,IAAA,gBAAgB,CAAC,KAAU,EAAA;AACzB,QAAA,MAAM,YAAY,GAAG,KAAK,IAAI,EAAE;AAC9B,QAAA,IAAI,CAAC,cAAc,GAAE,CAAC;QACxB,IAAI,YAAY,KAAK,EAAE;AACzB,YAAA,IAAI,CAAC,aAAa,GAAM,CAAC;;AAEvB,YAAA,IAAI,CAAC,aAAa,GAAG,GAAG;AACxB,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,QAAQ,CAAC,YAAY,CAAC;AAC7D,QAAA,IAAI,CAAC,cAAc,GAAE,KAAK;;AAExB,QAAA,IAAI,CAAC,0BAA0B,GAAG,EAAE;AACpC,QAAA,IAAI,CAAC,8BAA8B,GAAG,EAAE;AACxC,QAAA,IAAI,CAAC,2BAA2B,GAAG,EAAE;AACvC,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;;AAErB,QAAA,IAAI,CAAC,eAAe,GAAG,EAAE;AACzB,QAAA,IAAI,CAAC,mBAAmB,GAAG,EAAE;AAC7B,QAAA,IAAI,CAAC,gBAAgB,GAAG,EAAE;QAC1B,IAAI,CAAC,aAAa,EAAE;;IAKpB,cAAc,GAAC,CAAC;IAChB,aAAa,GAAC,CAAC;IACjB,mBAAmB,GAAK,EAAE;AAC1B,IAAA,YAAY;IAGZ,SAAS,GAAA;AACL,QAAA,IAAI,CAAC,cAAc,GAAG,EAAE;AACxB,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;AACjD,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC;AACvD,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC;QACxD,IAAI,CAAC,aAAa,EAAE;;IAEtB,SAAS,GAAA;AACH,QAAA,IAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,KAAK,EAAE;AAC7C,YAAA,IAAI,CAAC,aAAa,GAAI,CAAC;;AAErB,YAAA,IAAI,CAAC,aAAa,GAAG,GAAG;AACxB,QAAA,IAAI,CAAC,cAAc,GAAE,KAAK;QAC1B,IAAI,CAAC,aAAa,EAAE;;AAEtB,IAAA,QAAQ;AACR,IAAA,WAAW;AACX,IAAA,UAAU;IACR,cAAc,GAAG,KAAK;IACtB,eAAe,GAAG,IAAI;IACd,kBAAkB,GAAQ,IAAI;IAExC,qBAAqB,GAAG,KAAK;AAE7B,IAAA,mBAAmB,CAAC,KAAU,EAAA;QAC5B,IAAI,IAAI,CAAC,qBAAqB;YAAE;AAEhC,QAAA,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO;QAC9B,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;AACrD,YAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;AAClC;AAED,QAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI;AACjC,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM;;AAEtE,IAAA,aAAa;AACb,IAAA,aAAa,CAAC,IAAU,EAAA;AACrB,QAAA,IAAI,CAAC,mBAAmB,GAAG,EAAE;AAC9B,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK;AAC3B,QAAA,IAAI,CAAC,eAAe,GAAG,IAAI;AAC3B,QAAA,MAAM,MAAM,GAAG,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,IAAI,CAAC,kBAAkB;AAE7D,QAAA,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;AAC9B,YAAA,IAAI,CAAC,eAAe,GAAG,KAAK;AAC5B,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI;AAC1B,YAAA,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,0BAA0B,CAAC;YACpD;AACD;AAED,QAAA,IAAI,CAAC,kBAAkB,GAAG,MAAM;AAClC,QAAA,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC;QACtC,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE;QACnC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE;QACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,WAAW;AAChD,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc;AACtC,QAAA,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,KAAK;AAC7D,QAAA,MAAM,cAAc,GAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,KAAK;AACpE,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK;AAEpF,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY;AACjC,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ;AAC/C,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM;AAC3C,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc;AAClC,QAAA,MAAM,KAAK,GAAG,UAAU,KAAI,EAAE,GAAG,IAAI,CAAC,aAAa,GAAE,IAAI,CAAC,aAAa,GAAG,GAAG;AAE7E,QAAA,IAAI,CAAC;AACF,aAAA,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK;AAChG,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAG,GAAG,IAAI,GAAG,CAAC,IAAI,KAAI,GAAG,EAAC;oBAC1B,IAAI,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC,EAAE;AACnC,wBAAA,IAAI,CAAC,mBAAmB,GAAG,EAAE;AAC7B,wBAAA,IAAI,CAAC,YAAY,GAAG,IAAI;AACxB,wBAAA,IAAI,CAAC,cAAc,GAAG,IAAI;AAC1B,wBAAA,IAAI,CAAC,eAAe,GAAG,KAAK;AAC5B,wBAAA,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,wCAAwC,CAAC;AACnE;AAAM,yBAAA;wBACL,IAAI,CAAC,mBAAmB,GAAG,GAAG,EAAE,IAAI,EAAE,MAAM,IAAI,EAAE;wBAClD,IAAI,CAAC,kBAAkB,GAAG,GAAG,EAAE,IAAI,EAAE,KAAK;AAE1C,wBAAA,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,kBAAkB,GAAG;AAC/C,8BAAE,CAAC,IAAI,CAAC,kBAAkB;AAC1B,8BAAE,CAAC,CAAC,CAAC;AAEP,wBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AACzB,wBAAA,IAAI,CAAC,cAAc,GAAG,KAAK;AAC3B,wBAAA,IAAI,CAAC,eAAe,GAAG,KAAK;AAC7B;AACF;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,mBAAmB,GAAG,EAAE;AAC7B,oBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AACzB,oBAAA,IAAI,CAAC,cAAc,GAAG,IAAI;AAC1B,oBAAA,IAAI,CAAC,eAAe,GAAG,KAAK;AAC7B;aACA;YACD,KAAK,EAAE,MAAK;AACV,gBAAA,IAAI,CAAC,mBAAmB,GAAG,EAAE;AAC7B,gBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AACzB,gBAAA,IAAI,CAAC,cAAc,GAAG,IAAI;AAC1B,gBAAA,IAAI,CAAC,eAAe,GAAG,KAAK;aAC7B;YACD,QAAQ,EAAE,MAAK;AACb,gBAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE;aACxB;AACF,SAAA,CAAC;;IAGN,WAAW,GAAG,KAAK;IAEnB,aAAa,GAAA;AACX,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW;;AAEpC,IAAA,WAAW;AAEX,IAAA,YAAY,GAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC;IAC7D,aAAa,GAAA;AACV,QAAA,IAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,KAAK,EAAE;AAC5C,YAAA,IAAI,CAAC,aAAa,GAAM,CAAC;;AAEvB,YAAA,IAAI,CAAC,aAAa,GAAG,GAAG;QACxB,IAAI,CAAC,aAAa,EAAE;;IAGtB,gBAAgB,GAAO,CAAC;IACxB,mBAAmB,GAAO,CAAC;AACvB,IAAA,oBAAoB,CAAC,UAAkB,EAAA;AACvC,QAAA,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,UAAU,CAAC;AAC7C,QAAA,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC;AACxC,QAAA,IAAI,CAAC,aAAa,GAAE,CAAC;QACvB,IAAI,CAAC,aAAa,EAAE;;AAGpB,IAAA,wBAAwB,CAAC,QAAgB,EAAA;AACvC,QAAA,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC;AACpC,QAAA,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC;AACzC,QAAA,IAAI,CAAC,mBAAmB,GAAG,CAAC;AAC5B,QAAA,IAAI,CAAC,cAAc,GAAG,CAAC;QACvB,IAAI,CAAC,aAAa,EAAE;;AAExB,IAAA,kBAAkB;IACf,mBAAmB,GAAA;AAClB,QAAA,IAAI,IAAI,CAAC,kBAAkB,GAAG,CAAC,EAAE;YAC/B,OAAO,IAAI,CAAC,kBAAkB;AAC/B;AAAM,aAAA;YACL,OAAO,IAAI,CAAC,gBAAgB;AAC7B;;AAKL,IAAA,oBAAoB,CAAC,KAAU,EAAA;AAC7B,QAAA,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO;AAC9B,QAAA,IAAI,CAAC,OAAO;YAAE;QAEd,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC;AAElD,QAAA,IAAI,KAAK,GAAG,CAAC,CAAC,EAAE;YACd,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;AACrC;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC;AAClC;AAED,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM;;IAItE,eAAe,GAAA;AACb,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;QAEjE,IAAI,IAAI,CAAC,WAAW,EAAE;;YAEpB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAC9C,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC,CACpC;AACF;AAAM,aAAA;;YAEL,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAC5E;AACD,YAAA,IAAI,CAAC,cAAc,GAAG,CAAC,GAAG,IAAI,CAAC,cAAc,EAAE,GAAG,MAAM,CAAC;AAC1D;AAED,QAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM;;AAItE,IAAA,UAAU,CAAC,KAAU,EAAA;QACnB,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC;;IAIlD,kBAAkB,GAAA;AAChB,QAAA,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW;QACpC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,GAAQ,KAAI;AAC9C,YAAA,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,WAAW;AACjC,SAAC,CAAC;;IAGJ,kBAAkB,GAAU,EAAE;IAE9B,2BAA2B,GAAU,EAAE;IACvC,8BAA8B,GAAU,EAAE;IAC1C,0BAA0B,GAAU,EAAE;AACxC,IAAA,mBAAmB;AACnB,IAAA,eAAe;AACf,IAAA,gBAAgB;AAEhB,IAAA,oBAAoB,CAAC,GAAQ,EAAA;AAC3B,QAAA,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,GAAG;AACvB,QAAA,OAAO,IAAI;;IAIb,cAAc,GAAG,KAAK;AAEtB,IAAA,qBAAqB,CAAC,IAAS,EAAA;QAC7B,MAAM,EAAG,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI;AACnC,QAAA,OAAO,EAAE,GAAG,IAAI,EAAE;;AAGpB,IAAA,sBAAsB,CAAC,IAAS,EAAE,QAAgB,EAAE,cAAoB,EAAA;AACtE,QAAA,IAAI,YAAiB;QAErB,IAAI,QAAQ,KAAK,WAAW,EAAE;AAC5B,YAAA,cAAc,GAAG,cAAc,IAAI,IAAI,CAAC,QAAQ;YAEhD,MAAM,gBAAgB,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAC5D,CAAC,IAAS,KAAK,IAAI,CAAC,MAAM,KAAK,cAAc,EAAE,MAAM,CACtD;YAED,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,gBAAA,IAAI,gBAAgB,EAAE;oBACpB,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAC/C,CAAC,GAAQ,KAAK,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CACzC;oBACD,IAAI,CAAC,aAAa,EAAE;AAClB,wBAAA,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;AAC7D;AACF;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC;wBACpC,MAAM,EAAE,cAAc,EAAE,MAAM;wBAC9B,QAAQ,EAAE,cAAc,EAAE,QAAQ;wBAClC,SAAS,EAAE,cAAc,EAAE,SAAS;wBACpC,QAAQ,EAAE,cAAc,EAAE,QAAQ;wBAClC,SAAS,EAAE,cAAc,EAAE,SAAS;wBACpC,IAAI,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;AACzC,qBAAA,CAAC;AACH;AACF;AAAM,iBAAA;AACL,gBAAA,IAAI,gBAAgB,EAAE;oBACpB,gBAAgB,CAAC,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAClD,CAAC,CAAM,KAAK,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CACrC;AAED,oBAAA,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;wBACtC,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,2BAA2B,CAAC,MAAM,CACxE,CAAC,CAAM,KAAK,CAAC,CAAC,MAAM,KAAK,cAAc,EAAE,MAAM,CAChD;AACF;AACF;AACF;YAED,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAC7D,CAAC,GAAW,EAAE,IAAS,KAAK,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAClD,CAAC,CACF;AACF;QAED,IAAI,QAAQ,KAAK,UAAU,EAAE;AAC3B,YAAA,YAAY,GAAG,IAAI,CAAC,0BAA0B;AAC/C;aAAM,IAAI,QAAQ,KAAK,cAAc,EAAE;AACtC,YAAA,YAAY,GAAG,IAAI,CAAC,8BAA8B;AACnD;QAED,IAAI,QAAQ,KAAK,WAAW,EAAE;YAC5B,IAAI,IAAI,CAAC,QAAQ,EAAE;AACjB,gBAAA,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC;gBACnF,IAAI,CAAC,aAAa,EAAE;AAClB,oBAAA,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;AACF;AAAM,iBAAA;AACL,gBAAA,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC;AAChF,gBAAA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;AAChB,oBAAA,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;AAC9B;AACF;YAED,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,0BAA0B,CAAC,MAAM;YAC7D,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,8BAA8B,CAAC,MAAM;AACtE;;AAGD,QAAA,MAAM,aAAa,GACjB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,mBAAmB;QAEzE,IAAI,aAAa,GAAG,CAAC,EAAE;AACrB,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AAC1B;AAAM,aAAA;AACL,YAAA,IAAI,CAAC,YAAY,GAAG,IAAI;AACzB;AAED,QAAA,IAAI,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC;AACxB,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,wBAAwB,EAAE;;;;;;;;IAYvD,cAAc,GAAA;AACZ,QAAA,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,cAAc;AAC1C,QAAA,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,cAAc;AAExC,QAAA,IAAI,CAAC,0BAA0B,GAAG,EAAE;AACpC,QAAA,IAAI,CAAC,8BAA8B,GAAG,EAAE;AACxC,QAAA,IAAI,CAAC,2BAA2B,GAAG,EAAE;AAErC,QAAA,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,mBAAmB,EAAE;AAC7C,YAAA,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO;;YAG7B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;gBAClC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,GAAQ,KAAI;AACnC,oBAAA,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc;oBAClC,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE;AAC9F,wBAAA,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC;AAC1C;AACH,iBAAC,CAAC;AACH;;YAGD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;gBACtC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,GAAQ,KAAI;AACvC,oBAAA,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc;oBAClC,IAAI,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE;AAClG,wBAAA,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,GAAG,CAAC;AAC9C;AACH,iBAAC,CAAC;AACH;;YAGD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE;gBACzC,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,QAAa,KAAI;oBAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;wBAChC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,GAAQ,KAAI;AACjC,4BAAA,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc;AAClC,4BAAA,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC;AAC1B,yBAAC,CAAC;wBAEF,IAAI,IAAI,CAAC,cAAc,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;4BACnD,MAAM,QAAQ,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CACpD,CAAC,CAAM,KAAK,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,CACzC;4BAED,IAAI,CAAC,QAAQ,EAAE;AACb,gCAAA,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC;oCACpC,MAAM,EAAE,QAAQ,CAAC,MAAM;oCACvB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oCAC3B,SAAS,EAAE,QAAQ,CAAC,SAAS;oCAC7B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;oCAC3B,SAAS,EAAE,QAAQ,CAAC,SAAS;AAC7B,oCAAA,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAM,KAAK,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;AACnE,iCAAA,CAAC;AACH;AACF;AACF;AACH,iBAAC,CAAC;AACH;AACF;QACH,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,2BAA2B,CAAC;QAC9D,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,8BAA8B,CAAC,MAAM;QACrE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,0BAA0B,CAAC,MAAM;QAC7D,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAC7D,CAAC,GAAW,EAAE,IAAS,KAAK,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAClD,CAAC,CACF;;IAIH,wBAAwB,GAAA;AACtB,QAAA,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,mBAAmB,EAAE;AAC7C,YAAA,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO;AAE7B,YAAA,IAAI,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,GAAQ,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;AAAE,gBAAA,OAAO,KAAK;AACpE,YAAA,IAAI,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,GAAQ,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC;AAAE,gBAAA,OAAO,KAAK;YACxE,IAAI,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC,QAAa,KAC7C,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,GAAQ,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAAE,gBAAA,OAAO,KAAK;AAClE;AACD,QAAA,OAAO,IAAI;;IAEb,YAAY,GAAE,IAAI;AASlB,IAAA,qBAAqB,CAAC,IAAS,EAAE,QAAgB,EAAE,cAAoB,EAAA;AACrE,QAAA,IAAI,YAAY;AAEhB,QAAA,QAAQ,QAAQ;AACd,YAAA,KAAK,WAAW;;gBAEd,MAAM,gBAAgB,GAAG,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAC5D,CAAC,IAAS,KAAK,IAAI,CAAC,MAAM,KAAK,cAAc,EAAE,MAAM,CACtD;gBAEH,IAAI,IAAI,CAAC,QAAQ,EAAE;AACrB,oBAAA,IAAI,gBAAgB,EAAE;wBACpB,MAAM,aAAa,GAAG,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAC/C,CAAC,GAAQ,KAAK,GAAG,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CACzC;wBACD,IAAI,CAAC,aAAa,EAAE;AAClB,4BAAA,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7D;AACF;AAAM,yBAAA;AACL,wBAAA,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC;4BACpC,MAAM,EAAE,cAAc,EAAE,MAAM;4BAC9B,QAAQ,EAAE,cAAc,EAAE,QAAQ;4BAClC,SAAS,EAAE,cAAc,EAAE,SAAS;4BACpC,QAAQ,EAAE,cAAc,EAAE,QAAQ;4BAClC,SAAS,EAAE,cAAc,EAAE,SAAS;4BACpC,IAAI,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;AACxC,yBAAA,CAAC;AACH;AACF;AAAM,qBAAA;;AAEC,oBAAA,IAAI,gBAAgB,EAAE;wBACpB,gBAAgB,CAAC,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAClD,CAAC,CAAM,KAAK,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CACrC;;AAGD,wBAAA,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;4BACtC,IAAI,CAAC,2BAA2B,GAAG,IAAI,CAAC,2BAA2B,CAAC,MAAM,CACxE,CAAC,CAAM,KAAK,CAAC,CAAC,MAAM,KAAK,cAAc,EAAE,MAAM,CAChD;AACF;AACF;AACF;;gBAGD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,2BAA2B,CAAC,MAAM,CAC7D,CAAC,GAAW,EAAE,IAAS,KAAK,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAClD,CAAC,CACF;gBACD;AAEF,YAAA,KAAK,cAAc;AACjB,gBAAA,YAAY,GAAG,IAAI,CAAC,8BAA8B;gBAClD;AAEF,YAAA,KAAK,UAAU;AACb,gBAAA,YAAY,GAAG,IAAI,CAAC,0BAA0B;gBAC9C;AAEF,YAAA;gBACE;AACH;;AAGD,QAAA,YAAY,GAAG,YAAY,IAAI,EAAE;QACjC,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC;YAClH,IAAI,CAAC,aAAa,EAAE;AAClB,gBAAA,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;AACF;AAAM,aAAA;AACL,YAAA,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;YAElH,IAAI,QAAQ,KAAK,cAAc,EAAE;AAC/B,gBAAA,IAAI,CAAC,8BAA8B,GAAG,OAAO;AAC9C;iBAAM,IAAI,QAAQ,KAAK,UAAU,EAAE;AAClC,gBAAA,IAAI,CAAC,0BAA0B,GAAG,OAAO;AAC1C;AACF;QACD,IAAI,CAAC,mBAAmB,GAAI,IAAI,CAAC,8BAA8B,EAAE,MAAM,IAAG,CAAC;QAC3E,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,0BAA0B,CAAC,MAAM,IAAI,CAAC;;AAIpE,IAAA,WAAW;AACX,IAAA,WAAW,CAAC,MAAA,GAAiB,UAAU,EAAE,WAAmB,WAAW,EAAA;;AAEtE,QAAA,IAAI,YAAY;AACf,QAAA,QAAQ,QAAQ;AACd,YAAA,KAAK,WAAW;AACd,gBAAA,YAAY,GAAG,IAAI,CAAC,2BAA2B;gBAC/C;AACF,YAAA,KAAK,cAAc;AACjB,gBAAA,YAAY,GAAG,IAAI,CAAC,8BAA8B;gBAClD;AACF,YAAA,KAAK,UAAU;AACb,gBAAA,YAAY,GAAG,IAAI,CAAC,0BAA0B;gBAC9C;AACF,YAAA;gBACE;AACH;AAED,QAAA,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;AAC7B,YAAA,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,kCAAkC,CAAC;YAC5D;AACD;;QAGD,MAAM,eAAe,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,IAAG;YAC9C,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI;YAClC,OAAO,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE;AACrC,SAAC,CAAC;;QAGJ,MAAM,OAAO,GAAU,EAAE;AAEzB,QAAA,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,mBAAmB,EAAE;AAC7C,YAAA,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO;AAE7B,YAAA,MAAM,aAAa,GAAQ;gBACzB,GAAG,EAAE,MAAM,CAAC,GAAG;AACf,gBAAA,QAAQ,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;AAChC,gBAAA,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU;AAEhD,gBAAA,cAAc,EAAE,QAAQ,KAAK,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC,cAAc;AACxE,gBAAA,kBAAkB,EAAE,QAAQ,KAAK,cAAc,GAAG,MAAM,GAAG,MAAM,CAAC,kBAAkB;AACpF,gBAAA,eAAe,EAAE,QAAQ,KAAK,WAAW,GAAG,MAAM,GAAG,MAAM,CAAC,eAAe;aAC5E;YAED,IAAI,QAAQ,KAAK,UAAU,EAAE;AAC3B,gBAAA,aAAa,CAAC,QAAQ,GAAG,eAAe;AACxC,gBAAA,aAAa,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,GAAG,CAAC;AAChF;YAED,IAAI,QAAQ,KAAK,cAAc,EAAE;AAC/B,gBAAA,aAAa,CAAC,YAAY,GAAG,eAAe;AAC5C,gBAAA,aAAa,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,GAAG,CAAC;AAC5F;YAED,IAAI,QAAQ,KAAK,WAAW,EAAE;AAC5B,gBAAA,aAAa,CAAC,eAAe,GAAG,eAAe;AAC/C,gBAAA,aAAa,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,GAAG,CAAC;AACnF;AAED,YAAA,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;AAC5B;;;;AAKC,QAAA,QAAQ,QAAQ;AACd,YAAA,KAAK,WAAW;AACd,gBAAA,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC;gBACtD;AACF,YAAA,KAAK,cAAc;AACjB,gBAAA,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,kBAAkB,GAAG,MAAM,CAAC;gBACzD;AACF,YAAA,KAAK,UAAU;AACb,gBAAA,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;gBACrD;AACH;;QAGD,IAAI,CAAC,aAAa,CAAC,kBAAkB,CAAC,EAAC,IAAI,EAAC,OAAO,EAAC;AACjD,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC;AAC7B,aAAA,SAAS,CAAC;AACT,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE;oBAC3B,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,IAAI,6BAA6B,CAAC;AAC1E,oBAAA,IAAI,CAAC,cAAc,GAAE,EAAE;AAC5B,oBAAA,IAAI,CAAC,WAAW,GAAG,KAAK;AACxB,oBAAA,IAAI,CAAC,cAAc,GAAE,KAAK;oBACpB,IAAI,CAAC,aAAa,EAAE;oBACpB,IAAI,CAAC,MAAM,EAAE;AACd;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,yBAAyB,CAAC;AACpD;aACF;AACD,YAAA,KAAK,EAAE,CAAC,GAAQ,KAAI;gBAClB,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,EAAE,KAAK,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,IAAI,eAAe;gBACjG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,yBAAyB,GAAG,GAAG,CAAC;AAE7D,gBAAA,IAAI,CAAC,WAAW,GAAG,KAAK;AACxB,gBAAA,IAAI,CAAC,cAAc,GAAE,KAAK;;AAEzB,SAAA,CAAC;;IAEN,UAAU,GAAO,EAAE;AACnB,IAAA,IAAI,cAAc,GAAA;AAChB,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE;YAAE,OAAO,IAAI,CAAC,MAAM;QAEhD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE;QAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,IAC7B,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAC/C;;AAEH,IAAA,YAAY,CAAC,KAAU,EAAA;QACrB,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,kCAAkC,CAAC;;IAEtD,gBAAgB,GAAA;AAChB,QAAA,IAAI,CAAC,cAAc,GAAG,EAAE;AACtB,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;AACxB,QAAA,IAAI,CAAC,cAAc,GAAE,KAAK;AACxB,QAAA,IAAI,CAAC,qBAAqB,GAAG,KAAK;AACpC,QAAA,IAAI,CAAC,YAAY,GAAE,IAAI;QACvB,IAAI,CAAC,gBAAgB,EAAE;QACrB,IAAI,CAAC,aAAa,EAAE;;AAEA,IAAA,SAAS;AACjC,IAAA,UAAU;AACV,IAAA,SAAS;IACT,SAAS,CAAC,IAAQ,EAAC,KAAS,EAAA;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACpF,QAAA,IAAI,CAAC,SAAS,GAAG,IAAI;QACrB,IAAG,KAAK,KAAI,iBAAiB,EAAC;AAC5B,YAAA,IAAI,CAAC,UAAU,GAAG,WAAW;AAC9B;AAAK,aAAA;AACJ,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK;AACxB;;IAEL,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE;AAG9B,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;AACxB,QAAA,IAAI,CAAC,cAAc,GAAG,KAAK;;AAG3B,QAAA,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,mBAAmB,EAAE;AAC7C,YAAA,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO;AAE7B,YAAA,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,GAAQ,MAAM,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC;AAC9D,YAAA,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,GAAQ,MAAM,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC;YAClE,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,QAAa,KAAI;AAChD,gBAAA,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,GAAQ,MAAM,GAAG,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC;AAC9D,aAAC,CAAC;AACH;;AAGD,QAAA,IAAI,CAAC,0BAA0B,GAAG,EAAE;AACpC,QAAA,IAAI,CAAC,8BAA8B,GAAG,EAAE;AACxC,QAAA,IAAI,CAAC,2BAA2B,GAAG,EAAE;;AAGrC,QAAA,IAAI,CAAC,eAAe,GAAG,EAAE;AACzB,QAAA,IAAI,CAAC,mBAAmB,GAAG,EAAE;AAC7B,QAAA,IAAI,CAAC,gBAAgB,GAAG,EAAE;AAE1B,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI;;IAE1B,WAAW,GAAK,EAAE;IAChB,YAAY,GAAA;QACV,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC;AACrG,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,EAAE;oBAC1B,IAAI,CAAC,WAAW,GAAG,GAAG,EAAE,IAAI,EAAE,SAAS;oBACpC,IAAI,CAAC,SAAS,EAAE;AACpB;AAAM,qBAAA;AACL,oBAAA,IAAI,CAAC,WAAW,GAAG,EAAE;AACtB;;AAEJ,SAAA,CAAC;;IAEN,MAAM,GAAQ,EAAE;AACb,IAAA,aAAa,CAAC,KAAU,EAAA;AACvB,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC;AACnD,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,EAAO,KAAK,EAAE,CAAC,SAAS,CAAC;QAClD,IAAI,CAAC,SAAS,EAAE;;;;;;;;;;;;;;AAcpB,IAAA,qBAAqB,CAAC,SAAiB,EAAA;AACrC,QAAA,IAAI,CAAC,SAAS;AAAE,YAAA,OAAO,GAAG;AAC1B,QAAA,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;AAClE,QAAA,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE;QACvB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC;AACtC,QAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE;AACtC,YAAA,IAAI,EAAE,SAAS;AACf,YAAA,MAAM,EAAE,SAAS;;AAEjB,YAAA,MAAM,EAAE;AACT,SAAA,CAAC;;IAEJ,gBAAgB,GAAA;AACf,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,SAAS,CAAC;;wGAh/B5C,oBAAoB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAH,IAAA,CAAA,kBAAA,EAAA,EAAA,EAAA,KAAA,EAAAE,aAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,EAAA,CAAA,YAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAAE,YAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAApB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,oBAAoB,gKCdjC,k+6NA+0BA,EAAA,MAAA,EAAA,CAAA,0+GAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAE,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,QAAA,EAAA,8CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,8MAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,4BAAA,EAAA,QAAA,EAAA,uGAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,0FAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,WAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAL,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,cAAA,EAAA,aAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAU,uBAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,SAAA,EAAA,WAAA,EAAA,OAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,aAAA,EAAA,OAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAN,IAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA;;4FDj0Ba,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBALhC,SAAS;+BACE,kBAAkB,EAAA,QAAA,EAAA,k+6NAAA,EAAA,MAAA,EAAA,CAAA,0+GAAA,CAAA,EAAA;wPA85BJ,SAAS,EAAA,CAAA;sBAAhC,SAAS;uBAAC,WAAW;;;ME95BX,2BAA2B,CAAA;AAMlB,IAAA,QAAA;AAAiC,IAAA,KAAA;AAA8B,IAAA,MAAA;AAAqB,IAAA,EAAA;AAA8B,IAAA,OAAA;IALtI,WAAW,GAAK,cAAc;AACb,IAAA,QAAQ,GAAG,IAAI,OAAO,EAAE;AACzC,IAAA,aAAa;AACb,IAAA,cAAc;AACd,IAAA,KAAK;IACL,WAAoB,CAAA,QAAwB,EAAS,KAAqB,EAAS,MAAa,EAAQ,EAAqB,EAAS,OAAqB,EAAA;QAAvI,IAAQ,CAAA,QAAA,GAAR,QAAQ;QAAyB,IAAK,CAAA,KAAA,GAAL,KAAK;QAAyB,IAAM,CAAA,MAAA,GAAN,MAAM;QAAe,IAAE,CAAA,EAAA,GAAF,EAAE;QAA4B,IAAO,CAAA,OAAA,GAAP,OAAO;;IAG7I,QAAQ,GAAA;AACN,QAAA,MAAM,QAAQ,GAAQ,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC;AAC3E,QAAA,IAAI,CAAC,KAAK,GAAG,QAAQ;AACrB,QAAA,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,IAAG;AACzE,YAAA,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE;AAC/B,gBAAA,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;AAC3B,gBAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;AAE1B;AAAK,iBAAA;gBACJ,IAAI,CAAC,uBAAuB,EAAE;AAC/B;AACL,SAAC,CAAC;QACF,IAAI,CAAC,MAAM,EAAE;QACX,IAAI,CAAC,WAAW,EAAE;;IAGpB,uBAAuB,GAAA;AACrB,QAAA,MAAM,WAAW,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE;;QAE5D,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE;;AAEvD,QAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,OAAO,EAAE,CAAC;;IAGtF,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;AACjC,QAAA,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,+CAA+C,CAAC;QAC7E,IAAI,WAAW,GAAS,EAAE;QAC1B,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,KAAK,OAAO,EAAE;AAClD,YAAA,WAAW,GAAG;AACZ,gBAAA;AACE,oBAAA,KAAK,EAAE,QAAQ;AACf,oBAAA,IAAI,EAAE,gBAAgB;AACtB,oBAAA,QAAQ,EAAE,KAAK;AACf,oBAAA,WAAW,EAAE,KAAK;AACnB,iBAAA;AACD,gBAAA;AACE,oBAAA,KAAK,EAAE,QAAQ;AACf,oBAAA,IAAI,EAAE,gBAAgB;AACtB,oBAAA,QAAQ,EAAE,KAAK;AACf,oBAAA,WAAW,EAAE,IAAI;AAClB,iBAAA;aACF;AACF;aAAM,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,KAAK,QAAQ,EAAE;AAC1D,YAAA,WAAW,GAAE;AACX,gBAAA;AACE,oBAAA,KAAK,EAAE,QAAQ;AACf,oBAAA,IAAI,EAAE,iBAAiB;AACvB,oBAAA,QAAQ,EAAE,KAAK;AACf,oBAAA,WAAW,EAAE,KAAK;AACnB,iBAAA;AACD,gBAAA;AACE,oBAAA,KAAK,EAAE,QAAQ;AACf,oBAAA,IAAI,EAAE,iBAAiB;AACvB,oBAAA,QAAQ,EAAE,KAAK;AACf,oBAAA,WAAW,EAAE,IAAI;AAClB,iBAAA;aACF;AACF;AACD,QAAA,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC;;AAI3C,IAAA,YAAY,CAAC,KAAS,EAAA;AACpB,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;;IAE1B,WAAW,GAAA;AACT,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB,QAAA,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;;IAE5B,MAAM,GAAA;AACJ,QAAA,IAAI,CAAC,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC;AAChE,YAAA,IAAI,EAAE,CAAC,IAAS,KAAI;AAClB,gBAAA,IAAI,IAAI,EAAE;AACR,oBAAA,IAAI,CAAC,aAAa,GAAG,IAAI;oBACzB,IAAI,CAAC,WAAW,EAAE;AACnB;;AAEJ,SAAA,CAAC;;IAGJ,WAAW,GAAA;AACT,QAAA,IAAI,GAAG,GAAE;AACP,YAAA,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO;AACnC,YAAA,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS;AAC7C,YAAA,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE;SACrC;AACD,QAAA,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC;AACxE,YAAA,IAAI,EAAE,CAAC,GAAQ,KAAI;AACjB,gBAAA,IAAG,GAAG,CAAC,IAAI,KAAI,GAAG,EAAC;oBACf,IAAI,CAAC,cAAc,GAAG,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;AACrC;;AAEJ,SAAA,CAAC;;wGAtGS,2BAA2B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAR,IAAA,CAAA,eAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,kBAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,aAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA3B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,2BAA2B,gECVxC,u5GAoC+B,EAAA,MAAA,EAAA,CAAA,ytBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAG,IAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,IAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,YAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,QAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,MAAA,EAAA,YAAA,EAAA,kBAAA,EAAA,oBAAA,EAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAW,gBAAA,EAAA,QAAA,EAAA,aAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,qBAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,oBAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAAb,IAAA,CAAA,SAAA,EAAA,IAAA,EAAA,OAAA,EAAA,CAAA,EAAA,CAAA;;4FD1BlB,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBALvC,SAAS;+BACE,0BAA0B,EAAA,QAAA,EAAA,u5GAAA,EAAA,MAAA,EAAA,CAAA,ytBAAA,CAAA,EAAA;;;AEFtC,MAAM,MAAM,GAAW;AACrB,IAAA;AACE,QAAA,IAAI,EAAC,EAAE;AACP,QAAA,SAAS,EAAC;AACX;CACF;MAMY,+BAA+B,CAAA;wGAA/B,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAA/B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,+BAA+B,wCAFhC,YAAY,CAAA,EAAA,CAAA;yGAEX,+BAA+B,EAAA,OAAA,EAAA,CAHhC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC7B,YAAY,CAAA,EAAA,CAAA;;4FAEX,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAJ3C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBACxC,OAAO,EAAE,CAAC,YAAY;AACvB,iBAAA;;;MCPY,iBAAiB,CAAA;wGAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,qDCP9B,6BACA,EAAA,MAAA,EAAA,CAAA,EAAA,CAAA,EAAA,CAAA;;4FDMa,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAL7B,SAAS;+BACE,eAAe,EAAA,QAAA,EAAA,6BAAA,EAAA;;;ME8Bd,wBAAwB,CAAA;wGAAxB,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;AAAxB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,iBAdjC,2BAA2B;AAC3B,YAAA,gBAAgB,EAAC,oBAAoB,EAAE,qBAAqB,EAAE,qBAAqB;AACnF,YAAA,kBAAkB,EAAE,iBAAiB,EAAE,cAAc,EAAE,oBAAoB;YAC3E,uBAAuB;AACvB,YAAA,oBAAoB,aAGpB,YAAY;YACZ,+BAA+B;YAC/B,WAAW;YACX,mBAAmB;YACnB,kBAAkB,CAAA,EAAA,CAAA;AAGT,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,wBAAwB,YAPjC,YAAY;YACZ,+BAA+B;YAC/B,WAAW;YACX,mBAAmB;YACnB,kBAAkB,CAAA,EAAA,CAAA;;4FAGT,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAhBpC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE;wBACZ,2BAA2B;AAC3B,wBAAA,gBAAgB,EAAC,oBAAoB,EAAE,qBAAqB,EAAE,qBAAqB;AACnF,wBAAA,kBAAkB,EAAE,iBAAiB,EAAE,cAAc,EAAE,oBAAoB;wBAC3E,uBAAuB;wBACvB,oBAAoB;AACrB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACP,YAAY;wBACZ,+BAA+B;wBAC/B,WAAW;wBACX,mBAAmB;wBACnB;AACD;AACF,iBAAA;;;AChCD;;AAEG;;ACFH;;AAEG;;;;"}