tango-app-ui-manage-settings 3.7.22 → 3.7.24

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.
@@ -405,13 +405,13 @@ export class TangoManageSettingsComponent {
405
405
  }
406
406
  }
407
407
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TangoManageSettingsComponent, deps: [{ token: i1.PageInfoService }, { token: i2.ClientApiService }, { token: i1.GlobalStateService }, { token: i3.PaymentSubscriptionService }, { token: i0.ChangeDetectorRef }, { token: i4.ToastService }, { token: i5.NgbModal }], target: i0.ɵɵFactoryTarget.Component });
408
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TangoManageSettingsComponent, selector: "lib-tango-manage-settings", host: { listeners: { "document:click": "onDocumentClick($event)" } }, ngImport: i0, template: "<!-- client request card start -->\r\n<div class=\"g-4\">\r\n <div class=\"my-2 d-flex overflow\">\r\n <div *ngFor=\"let notification of notificationDetails.notificationList;let i= index;let last = last\"\r\n [ngClass]=\"notificationDetails.notificationList?.length === 2 ? 'col-6' : (notificationDetails.notificationList?.length > 2 ? 'col-4' : 'col-12')\">\r\n <div class=\"toastcard\" [ngClass]=\"!last ? 'me-4' : ''\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-30px me-5\"><span>\r\n <img src=\"./assets/tango/custompopup-Icons/danger-alert-primary.svg\" alt=\"\">\r\n </span>\r\n </div>\r\n <span class=\"toasttext d-block\">{{notification.name}}</span>\r\n </div>\r\n <div class=\"d-flex align-items-center\"\r\n *ngIf=\"notification.category === 'Trial' && notificationDetails.notificationList.length === 1&&userType ==='tango'\">\r\n <a type=\"submit\" (click)=\"approvetrial(notification,'cancel')\"\r\n class=\"btn-outline btn needhelp me-6\"><span class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" (click)=\"approvetrial(notification,'approve')\"\r\n tabindex=\"0\"\r\n class=\"btn btn-primary px-4 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n <div class=\"row mt-1\"\r\n *ngIf=\"notification.category === 'trial product' && notificationDetails.notificationList.length === 1\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"align-items-start justify-content-between daysleft my-2\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail\">\r\n Free trial</div>\r\n </div>\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"70\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n\r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n\r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\"\r\n stroke=\"#007bff\" stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n\r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\"\r\n text-anchor=\"middle\" fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n\r\n <a type=\"button\" tabindex=\"0\" (click)=\"subscribeproduct(notification,'subscription')\"\r\n class=\"btn btn-primary px-4 ng-star-inserted\"><span>Subscribe\r\n </span></a>\r\n <div class=\"position-relative\" *ngIf=\"userType==='tango'\">\r\n <div class=\"ms-5\" (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer\"><svg width=\"44\" height=\"44\"\r\n viewBox=\"0 0 44 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_14876_280367)\">\r\n <rect x=\"2\" y=\"1\" width=\"40\" height=\"40\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"39\" height=\"39\" rx=\"7.5\"\r\n stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M22.0013 21.834C22.4615 21.834 22.8346 21.4609 22.8346 21.0007C22.8346 20.5404 22.4615 20.1673 22.0013 20.1673C21.5411 20.1673 21.168 20.5404 21.168 21.0007C21.168 21.4609 21.5411 21.834 22.0013 21.834Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 16.0007C22.4615 16.0007 22.8346 15.6276 22.8346 15.1673C22.8346 14.7071 22.4615 14.334 22.0013 14.334C21.5411 14.334 21.168 14.7071 21.168 15.1673C21.168 15.6276 21.5411 16.0007 22.0013 16.0007Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 27.6673C22.4615 27.6673 22.8346 27.2942 22.8346 26.834C22.8346 26.3737 22.4615 26.0007 22.0013 26.0007C21.5411 26.0007 21.168 26.3737 21.168 26.834C21.168 27.2942 21.5411 27.6673 22.0013 27.6673Z\"\r\n 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_14876_280367\" x=\"0\" y=\"0\" width=\"44\" height=\"44\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_14876_280367\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_14876_280367\" result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg>\r\n\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute productdrop top-20 end-0\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification, 'unsubscribe')\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"d-flex my-3\"\r\n *ngIf=\"notification.category === 'Trial' && notificationDetails.notificationList.length > 1&&userType ==='tango'\"><a\r\n type=\"submit\" (click)=\"approvetrial(notification,'cancel')\"\r\n class=\"btn-outline btn needhelp w-50 me-6 mt-3\"><span class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" (click)=\"approvetrial(notification,'approve')\"\r\n tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 w-50 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n\r\n <div class=\"row mt-1\"\r\n *ngIf=\"notification.category === 'trial product' && notificationDetails.notificationList.length > 1\">\r\n <div class=\"col-lg-6 d-flex\">\r\n <div class=\"align-items-start justify-content-between daysleft my-2\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail\">\r\n Free trial</div>\r\n </div>\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"70\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n\r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n\r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#007bff\"\r\n stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n\r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\" text-anchor=\"middle\"\r\n fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n\r\n\r\n </div>\r\n <div class=\"col-lg-6 \">\r\n <div class=\"d-flex\" style=\"justify-content: end;\">\r\n <a type=\"button\" tabindex=\"0\" (click)=\"subscribeproduct(notification,'subscription')\"\r\n class=\"btn btn-primary px-4 mt-3 ng-star-inserted\"><span>Subscribe\r\n </span></a>\r\n <div class=\"position-relative\" *ngIf=\"userType==='tango'\">\r\n <div class=\"ms-5 mt-4\" (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer\"><svg width=\"44\" height=\"44\"\r\n viewBox=\"0 0 44 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_14876_280367)\">\r\n <rect x=\"2\" y=\"1\" width=\"40\" height=\"40\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"39\" height=\"39\" rx=\"7.5\"\r\n stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M22.0013 21.834C22.4615 21.834 22.8346 21.4609 22.8346 21.0007C22.8346 20.5404 22.4615 20.1673 22.0013 20.1673C21.5411 20.1673 21.168 20.5404 21.168 21.0007C21.168 21.4609 21.5411 21.834 22.0013 21.834Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 16.0007C22.4615 16.0007 22.8346 15.6276 22.8346 15.1673C22.8346 14.7071 22.4615 14.334 22.0013 14.334C21.5411 14.334 21.168 14.7071 21.168 15.1673C21.168 15.6276 21.5411 16.0007 22.0013 16.0007Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 27.6673C22.4615 27.6673 22.8346 27.2942 22.8346 26.834C22.8346 26.3737 22.4615 26.0007 22.0013 26.0007C21.5411 26.0007 21.168 26.3737 21.168 26.834C21.168 27.2942 21.5411 27.6673 22.0013 27.6673Z\"\r\n 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_14876_280367\" x=\"0\" y=\"0\" width=\"44\" height=\"44\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_14876_280367\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_14876_280367\" result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg>\r\n\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute mt-17 z-1\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification, 'unsubscribe')\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- <div [ngClass]=\"{\r\n 'col-md-4': type === 'trail',\r\n 'col-md-6': type !== 'trail',\r\n 'col-12': type === 'trail'\r\n }\" class=\"col-md-4 mb-5\">\r\n <div class=\"toastcard\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-30px me-5\"><span>\r\n <img src=\"./assets/tango/custompopup-Icons/danger-alert-primary.svg\" alt=\"\">\r\n </span>\r\n </div>\r\n <span class=\"toasttext d-block\">Client has Requested Tango Zone </span>\r\n </div>\r\n <div class=\"d-flex mb-2\"><a type=\"submit\" class=\"btn-outline btn needhelp w-50 me-6 mt-3\"><span\r\n class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 w-50 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n </div>\r\n </div> -->\r\n</div>\r\n<!-- client request card end -->\r\n\r\n<!-- <div class=\"row gx-4 mb-4\">\r\n <div class=\"col-xl-6\" [ngClass]=\"i > 1? 'mt-5' : ''\"\r\n *ngFor=\"let notification of notificationDetails.notificationList;let i= index;\">\r\n <div class=\"billingcard h-xl-100 flex-row flex-stack flex-wrap mb-6 px-6\">\r\n <div class=\"d-flex flex-column mt-10\" *ngIf=\"notification.category === 'Trial'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n {{notification.name}} <span class=\"badge-light-grey ms-2\">{{currentPlan |\r\n titlecase}}</span>\r\n </div>\r\n <div class=\"subtext\">Kindly make necessary action for trial\r\n request or skip product to subscription list</div>\r\n\r\n <div data-kt-subscription-table-toolbar=\"base\" class=\"d-flex mt-15\"><a\r\n (click)=\"approvetrial(notification,'cancel')\" type=\"submit\"\r\n class=\"btn-outline btn needhelp me-6 mt-3\"><span class=\"mt-6\">Skip Trial</span></a><a\r\n (click)=\"approvetrial(notification,'approve')\" type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 ng-star-inserted\"\r\n *ngIf=\"(gs.userAccess | async)?.settings_paymentSubscriptions_isEdit\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n </div>\r\n <div class=\"d-flex flex-column mt-11\" *ngIf=\"notification.category === 'unsubscribe'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n Unsubscribe Request\r\n </div>\r\n <div class=\"subtext\">Client has requested to unsubscribe\r\n <span class=\"subtextbold\">Tango Suite</span>\r\n </div>\r\n\r\n <div data-kt-subscription-table-toolbar=\"base\" class=\"d-flex mt-20\"><a type=\"submit\"\r\n class=\"btn-outline btn needhelp me-6 mt-3\"\r\n (click)=\"cancelUnsubscribe(notification,'cancel')\"><span class=\"mt-6\">Cancel</span></a><a\r\n (click)=\"approveUnsubscribe(notification,'unsubscribe')\" type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-danger px-4 mt-3 ng-star-inserted\"\r\n *ngIf=\"(gs.userAccess | async)?.settings_paymentSubscriptions_isEdit\"><span>Approve\r\n </span></a></div>\r\n </div>\r\n <div class=\"d-flex flex-column mt-10\" *ngIf=\"notification.category === 'trial product'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n {{notification.name}} <span class=\"badge-light-grey ms-2\">{{currentPlan |\r\n titlecase}}</span>\r\n </div>\r\n <div class=\"subtext\">You will not be billed during your free\r\n <span class=\"subtextbold\">trial</span>.To keep your\r\n projects running after the trial end, upgrade to a paid\r\n option.\r\n </div>\r\n <div class=\"row mt-7\">\r\n <div class=\"col-lg-8 d-flex\">\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"94\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n \r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n \r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#007bff\"\r\n stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n \r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\" text-anchor=\"middle\"\r\n fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n <div class=\"align-items-start justify-content-between daysleft ms-6 mt-3\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail mt-4 me-16\">\r\n Free trial</div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-lg-4 mt-6\">\r\n <div class=\"position-relative\">\r\n <div (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer ms-20\"><svg width=\"60\" height=\"60\"\r\n viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_5221_60143)\">\r\n <rect x=\"2\" y=\"1\" width=\"56\" height=\"56\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"55\" height=\"55\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <g clip-path=\"url(#clip0_5221_60143)\">\r\n <path\r\n d=\"M30 32C31.6569 32 33 30.6569 33 29C33 27.3431 31.6569 26 30 26C28.3431 26 27 27.3431 27 29C27 30.6569 28.3431 32 30 32Z\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M37.4 32C37.2669 32.3016 37.2272 32.6362 37.286 32.9606C37.3448 33.285 37.4995 33.5843 37.73 33.82L37.79 33.88C37.976 34.0657 38.1235 34.2863 38.2241 34.5291C38.3248 34.7719 38.3766 35.0322 38.3766 35.295C38.3766 35.5578 38.3248 35.8181 38.2241 36.0609C38.1235 36.3037 37.976 36.5243 37.79 36.71C37.6043 36.896 37.3837 37.0435 37.1409 37.1441C36.8981 37.2448 36.6378 37.2966 36.375 37.2966C36.1122 37.2966 35.8519 37.2448 35.6091 37.1441C35.3663 37.0435 35.1457 36.896 34.96 36.71L34.9 36.65C34.6643 36.4195 34.365 36.2648 34.0406 36.206C33.7162 36.1472 33.3816 36.1869 33.08 36.32C32.7842 36.4468 32.532 36.6572 32.3543 36.9255C32.1766 37.1938 32.0813 37.5082 32.08 37.83V38C32.08 38.5304 31.8693 39.0391 31.4942 39.4142C31.1191 39.7893 30.6104 40 30.08 40C29.5496 40 29.0409 39.7893 28.6658 39.4142C28.2907 39.0391 28.08 38.5304 28.08 38V37.91C28.0723 37.579 27.9651 37.258 27.7725 36.9887C27.5799 36.7194 27.3107 36.5143 27 36.4C26.6984 36.2669 26.3638 36.2272 26.0394 36.286C25.715 36.3448 25.4157 36.4995 25.18 36.73L25.12 36.79C24.9343 36.976 24.7137 37.1235 24.4709 37.2241C24.2281 37.3248 23.9678 37.3766 23.705 37.3766C23.4422 37.3766 23.1819 37.3248 22.9391 37.2241C22.6963 37.1235 22.4757 36.976 22.29 36.79C22.104 36.6043 21.9565 36.3837 21.8559 36.1409C21.7552 35.8981 21.7034 35.6378 21.7034 35.375C21.7034 35.1122 21.7552 34.8519 21.8559 34.6091C21.9565 34.3663 22.104 34.1457 22.29 33.96L22.35 33.9C22.5805 33.6643 22.7352 33.365 22.794 33.0406C22.8528 32.7162 22.8131 32.3816 22.68 32.08C22.5532 31.7842 22.3428 31.532 22.0745 31.3543C21.8062 31.1766 21.4918 31.0813 21.17 31.08H21C20.4696 31.08 19.9609 30.8693 19.5858 30.4942C19.2107 30.1191 19 29.6104 19 29.08C19 28.5496 19.2107 28.0409 19.5858 27.6658C19.9609 27.2907 20.4696 27.08 21 27.08H21.09C21.421 27.0723 21.742 26.9651 22.0113 26.7725C22.2806 26.5799 22.4857 26.3107 22.6 26C22.7331 25.6984 22.7728 25.3638 22.714 25.0394C22.6552 24.715 22.5005 24.4157 22.27 24.18L22.21 24.12C22.024 23.9343 21.8765 23.7137 21.7759 23.4709C21.6752 23.2281 21.6234 22.9678 21.6234 22.705C21.6234 22.4422 21.6752 22.1819 21.7759 21.9391C21.8765 21.6963 22.024 21.4757 22.21 21.29C22.3957 21.104 22.6163 20.9565 22.8591 20.8559C23.1019 20.7552 23.3622 20.7034 23.625 20.7034C23.8878 20.7034 24.1481 20.7552 24.3909 20.8559C24.6337 20.9565 24.8543 21.104 25.04 21.29L25.1 21.35C25.3357 21.5805 25.635 21.7352 25.9594 21.794C26.2838 21.8528 26.6184 21.8131 26.92 21.68H27C27.2958 21.5532 27.548 21.3428 27.7257 21.0745C27.9034 20.8062 27.9987 20.4918 28 20.17V20C28 19.4696 28.2107 18.9609 28.5858 18.5858C28.9609 18.2107 29.4696 18 30 18C30.5304 18 31.0391 18.2107 31.4142 18.5858C31.7893 18.9609 32 19.4696 32 20V20.09C32.0013 20.4118 32.0966 20.7262 32.2743 20.9945C32.452 21.2628 32.7042 21.4732 33 21.6C33.3016 21.7331 33.6362 21.7728 33.9606 21.714C34.285 21.6552 34.5843 21.5005 34.82 21.27L34.88 21.21C35.0657 21.024 35.2863 20.8765 35.5291 20.7759C35.7719 20.6752 36.0322 20.6234 36.295 20.6234C36.5578 20.6234 36.8181 20.6752 37.0609 20.7759C37.3037 20.8765 37.5243 21.024 37.71 21.21C37.896 21.3957 38.0435 21.6163 38.1441 21.8591C38.2448 22.1019 38.2966 22.3622 38.2966 22.625C38.2966 22.8878 38.2448 23.1481 38.1441 23.3909C38.0435 23.6337 37.896 23.8543 37.71 24.04L37.65 24.1C37.4195 24.3357 37.2648 24.635 37.206 24.9594C37.1472 25.2838 37.1869 25.6184 37.32 25.92V26C37.4468 26.2958 37.6572 26.548 37.9255 26.7257C38.1938 26.9034 38.5082 26.9987 38.83 27H39C39.5304 27 40.0391 27.2107 40.4142 27.5858C40.7893 27.9609 41 28.4696 41 29C41 29.5304 40.7893 30.0391 40.4142 30.4142C40.0391 30.7893 39.5304 31 39 31H38.91C38.5882 31.0013 38.2738 31.0966 38.0055 31.2743C37.7372 31.452 37.5268 31.7042 37.4 32Z\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_5221_60143\" x=\"0\" y=\"0\" width=\"60\" height=\"60\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_5221_60143\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_5221_60143\" result=\"shape\" />\r\n </filter>\r\n <clipPath id=\"clip0_5221_60143\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\"\r\n transform=\"translate(18 17)\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute end-0 z-1\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification)\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n</div> -->\r\n\r\n\r\n\r\n\r\n<div class=\"row mb-5\">\r\n <div class=\"col-md-3\">\r\n <div class=\"card h-100\">\r\n <div class=\"m-0 w-100\">\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/brand-detail\" routerLinkActive=\"active\"\r\n [routerLinkActiveOptions]=\"{exact: true}\" #BR=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"BR.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <g clip-path=\"url(#clip0_1842_19728)\">\r\n <path [ngClass]=\" BR.isActive ? 'fillpath' : ''\"\r\n d=\"M2.625 24C1.92881 24 1.26113 23.7234 0.768845 23.2312C0.276562 22.7389 0 22.0712 0 21.375L0 2.625C0 1.176 1.176 0 2.625 0H15.375C16.824 0 18 1.176 18 2.625V21.375C18 21.5025 17.991 21.627 17.973 21.75H21.375C21.4745 21.75 21.5698 21.7105 21.6402 21.6402C21.7105 21.5698 21.75 21.4745 21.75 21.375V12.4275C21.75 12.3658 21.7349 12.3051 21.7058 12.2506C21.6768 12.1962 21.6348 12.1498 21.5835 12.1155L20.001 11.061C19.8781 10.9791 19.7725 10.8737 19.6903 10.751C19.6081 10.6282 19.5509 10.4905 19.5219 10.3456C19.4929 10.2008 19.4928 10.0516 19.5215 9.90669C19.5501 9.76177 19.6071 9.62392 19.689 9.501C19.7709 9.37808 19.8763 9.27251 19.999 9.19031C20.1218 9.10811 20.2595 9.05089 20.4044 9.02191C20.5492 8.99294 20.6984 8.99279 20.8433 9.02145C20.9882 9.05012 21.1261 9.10706 21.249 9.189L22.8315 10.2435C23.562 10.731 24 11.55 24 12.4275V21.375C24 22.0712 23.7234 22.7389 23.2312 23.2312C22.7389 23.7234 22.0712 24 21.375 24H16.125C16.0252 23.9999 15.9259 23.9868 15.8295 23.961C15.681 23.9865 15.5295 24 15.375 24H10.875C10.5766 24 10.2905 23.8815 10.0795 23.6705C9.86853 23.4595 9.75 23.1734 9.75 22.875V21H8.25V22.875C8.25 23.1734 8.13147 23.4595 7.9205 23.6705C7.70952 23.8815 7.42337 24 7.125 24H2.625ZM2.25 21.375C2.25 21.582 2.418 21.75 2.625 21.75H6V19.875C6 19.5766 6.11853 19.2905 6.3295 19.0795C6.54048 18.8685 6.82663 18.75 7.125 18.75H10.875C11.1734 18.75 11.4595 18.8685 11.6705 19.0795C11.8815 19.2905 12 19.5766 12 19.875V21.75H15.375C15.4745 21.75 15.5698 21.7105 15.6402 21.6402C15.7105 21.5698 15.75 21.4745 15.75 21.375V2.625C15.75 2.52554 15.7105 2.43016 15.6402 2.35984C15.5698 2.28951 15.4745 2.25 15.375 2.25H2.625C2.52554 2.25 2.43016 2.28951 2.35984 2.35984C2.28951 2.43016 2.25 2.52554 2.25 2.625V21.375ZM5.625 9H6.375C6.67337 9 6.95952 9.11853 7.1705 9.3295C7.38147 9.54048 7.5 9.82663 7.5 10.125C7.5 10.4234 7.38147 10.7095 7.1705 10.9205C6.95952 11.1315 6.67337 11.25 6.375 11.25H5.625C5.32663 11.25 5.04048 11.1315 4.8295 10.9205C4.61853 10.7095 4.5 10.4234 4.5 10.125C4.5 9.82663 4.61853 9.54048 4.8295 9.3295C5.04048 9.11853 5.32663 9 5.625 9ZM4.5 5.625C4.5 5.32663 4.61853 5.04048 4.8295 4.8295C5.04048 4.61853 5.32663 4.5 5.625 4.5H6.375C6.67337 4.5 6.95952 4.61853 7.1705 4.8295C7.38147 5.04048 7.5 5.32663 7.5 5.625C7.5 5.92337 7.38147 6.20952 7.1705 6.4205C6.95952 6.63147 6.67337 6.75 6.375 6.75H5.625C5.32663 6.75 5.04048 6.63147 4.8295 6.4205C4.61853 6.20952 4.5 5.92337 4.5 5.625ZM10.5 10.125C10.5 9.82663 10.6185 9.54048 10.8295 9.3295C11.0405 9.11853 11.3266 9 11.625 9H12.375C12.6734 9 12.9595 9.11853 13.1705 9.3295C13.3815 9.54048 13.5 9.82663 13.5 10.125C13.5 10.4234 13.3815 10.7095 13.1705 10.9205C12.9595 11.1315 12.6734 11.25 12.375 11.25H11.625C11.3266 11.25 11.0405 11.1315 10.8295 10.9205C10.6185 10.7095 10.5 10.4234 10.5 10.125ZM11.625 4.5H12.375C12.6734 4.5 12.9595 4.61853 13.1705 4.8295C13.3815 5.04048 13.5 5.32663 13.5 5.625C13.5 5.92337 13.3815 6.20952 13.1705 6.4205C12.9595 6.63147 12.6734 6.75 12.375 6.75H11.625C11.3266 6.75 11.0405 6.63147 10.8295 6.4205C10.6185 6.20952 10.5 5.92337 10.5 5.625C10.5 5.32663 10.6185 5.04048 10.8295 4.8295C11.0405 4.61853 11.3266 4.5 11.625 4.5ZM4.5 14.625C4.5 14.3266 4.61853 14.0405 4.8295 13.8295C5.04048 13.6185 5.32663 13.5 5.625 13.5H6.375C6.67337 13.5 6.95952 13.6185 7.1705 13.8295C7.38147 14.0405 7.5 14.3266 7.5 14.625C7.5 14.9234 7.38147 15.2095 7.1705 15.4205C6.95952 15.6315 6.67337 15.75 6.375 15.75H5.625C5.32663 15.75 5.04048 15.6315 4.8295 15.4205C4.61853 15.2095 4.5 14.9234 4.5 14.625ZM11.625 13.5H12.375C12.6734 13.5 12.9595 13.6185 13.1705 13.8295C13.3815 14.0405 13.5 14.3266 13.5 14.625C13.5 14.9234 13.3815 15.2095 13.1705 15.4205C12.9595 15.6315 12.6734 15.75 12.375 15.75H11.625C11.3266 15.75 11.0405 15.6315 10.8295 15.4205C10.6185 15.2095 10.5 14.9234 10.5 14.625C10.5 14.3266 10.6185 14.0405 10.8295 13.8295C11.0405 13.6185 11.3266 13.5 11.625 13.5Z\"\r\n fill=\"#667085\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_1842_19728\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" BR.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Brand Details\r\n </div>\r\n </div>\r\n </a></div>\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/configuration\" routerLinkActive=\"active\" #CON=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"CON.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <g clip-path=\"url(#clip0_1842_19733)\">\r\n <path [ngClass]=\" CON.isActive ? 'fillstroke' : ''\"\r\n d=\"M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path [ngClass]=\" CON.isActive ? 'fillstroke' : ''\"\r\n d=\"M19.4 15C19.2669 15.3016 19.2272 15.6362 19.286 15.9606C19.3448 16.285 19.4995 16.5843 19.73 16.82L19.79 16.88C19.976 17.0657 20.1235 17.2863 20.2241 17.5291C20.3248 17.7719 20.3766 18.0322 20.3766 18.295C20.3766 18.5578 20.3248 18.8181 20.2241 19.0609C20.1235 19.3037 19.976 19.5243 19.79 19.71C19.6043 19.896 19.3837 20.0435 19.1409 20.1441C18.8981 20.2448 18.6378 20.2966 18.375 20.2966C18.1122 20.2966 17.8519 20.2448 17.6091 20.1441C17.3663 20.0435 17.1457 19.896 16.96 19.71L16.9 19.65C16.6643 19.4195 16.365 19.2648 16.0406 19.206C15.7162 19.1472 15.3816 19.1869 15.08 19.32C14.7842 19.4468 14.532 19.6572 14.3543 19.9255C14.1766 20.1938 14.0813 20.5082 14.08 20.83V21C14.08 21.5304 13.8693 22.0391 13.4942 22.4142C13.1191 22.7893 12.6104 23 12.08 23C11.5496 23 11.0409 22.7893 10.6658 22.4142C10.2907 22.0391 10.08 21.5304 10.08 21V20.91C10.0723 20.579 9.96512 20.258 9.77251 19.9887C9.5799 19.7194 9.31074 19.5143 9 19.4C8.69838 19.2669 8.36381 19.2272 8.03941 19.286C7.71502 19.3448 7.41568 19.4995 7.18 19.73L7.12 19.79C6.93425 19.976 6.71368 20.1235 6.47088 20.2241C6.22808 20.3248 5.96783 20.3766 5.705 20.3766C5.44217 20.3766 5.18192 20.3248 4.93912 20.2241C4.69632 20.1235 4.47575 19.976 4.29 19.79C4.10405 19.6043 3.95653 19.3837 3.85588 19.1409C3.75523 18.8981 3.70343 18.6378 3.70343 18.375C3.70343 18.1122 3.75523 17.8519 3.85588 17.6091C3.95653 17.3663 4.10405 17.1457 4.29 16.96L4.35 16.9C4.58054 16.6643 4.73519 16.365 4.794 16.0406C4.85282 15.7162 4.81312 15.3816 4.68 15.08C4.55324 14.7842 4.34276 14.532 4.07447 14.3543C3.80618 14.1766 3.49179 14.0813 3.17 14.08H3C2.46957 14.08 1.96086 13.8693 1.58579 13.4942C1.21071 13.1191 1 12.6104 1 12.08C1 11.5496 1.21071 11.0409 1.58579 10.6658C1.96086 10.2907 2.46957 10.08 3 10.08H3.09C3.42099 10.0723 3.742 9.96512 4.0113 9.77251C4.28059 9.5799 4.48572 9.31074 4.6 9C4.73312 8.69838 4.77282 8.36381 4.714 8.03941C4.65519 7.71502 4.50054 7.41568 4.27 7.18L4.21 7.12C4.02405 6.93425 3.87653 6.71368 3.77588 6.47088C3.67523 6.22808 3.62343 5.96783 3.62343 5.705C3.62343 5.44217 3.67523 5.18192 3.77588 4.93912C3.87653 4.69632 4.02405 4.47575 4.21 4.29C4.39575 4.10405 4.61632 3.95653 4.85912 3.85588C5.10192 3.75523 5.36217 3.70343 5.625 3.70343C5.88783 3.70343 6.14808 3.75523 6.39088 3.85588C6.63368 3.95653 6.85425 4.10405 7.04 4.29L7.1 4.35C7.33568 4.58054 7.63502 4.73519 7.95941 4.794C8.28381 4.85282 8.61838 4.81312 8.92 4.68H9C9.29577 4.55324 9.54802 4.34276 9.72569 4.07447C9.90337 3.80618 9.99872 3.49179 10 3.17V3C10 2.46957 10.2107 1.96086 10.5858 1.58579C10.9609 1.21071 11.4696 1 12 1C12.5304 1 13.0391 1.21071 13.4142 1.58579C13.7893 1.96086 14 2.46957 14 3V3.09C14.0013 3.41179 14.0966 3.72618 14.2743 3.99447C14.452 4.26276 14.7042 4.47324 15 4.6C15.3016 4.73312 15.6362 4.77282 15.9606 4.714C16.285 4.65519 16.5843 4.50054 16.82 4.27L16.88 4.21C17.0657 4.02405 17.2863 3.87653 17.5291 3.77588C17.7719 3.67523 18.0322 3.62343 18.295 3.62343C18.5578 3.62343 18.8181 3.67523 19.0609 3.77588C19.3037 3.87653 19.5243 4.02405 19.71 4.21C19.896 4.39575 20.0435 4.61632 20.1441 4.85912C20.2448 5.10192 20.2966 5.36217 20.2966 5.625C20.2966 5.88783 20.2448 6.14808 20.1441 6.39088C20.0435 6.63368 19.896 6.85425 19.71 7.04L19.65 7.1C19.4195 7.33568 19.2648 7.63502 19.206 7.95941C19.1472 8.28381 19.1869 8.61838 19.32 8.92V9C19.4468 9.29577 19.6572 9.54802 19.9255 9.72569C20.1938 9.90337 20.5082 9.99872 20.83 10H21C21.5304 10 22.0391 10.2107 22.4142 10.5858C22.7893 10.9609 23 11.4696 23 12C23 12.5304 22.7893 13.0391 22.4142 13.4142C22.0391 13.7893 21.5304 14 21 14H20.91C20.5882 14.0013 20.2738 14.0966 20.0055 14.2743C19.7372 14.452 19.5268 14.7042 19.4 15Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_1842_19733\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" CON.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">\r\n Configuration\r\n </div>\r\n </div>\r\n </a></div>\r\n <div *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/contact-directory\" routerLinkActive=\"active\"\r\n #CONDIR=\"routerLinkActive\" class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"CONDIR.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <path [ngClass]=\"CONDIR.isActive ? 'fillstroke' : ''\"\r\n d=\"M17 21V19C17 17.9391 16.5786 16.9217 15.8284 16.1716C15.0783 15.4214 14.0609 15 13 15H5C3.93913 15 2.92172 15.4214 2.17157 16.1716C1.42143 16.9217 1 17.9391 1 19V21M23 21V19C22.9993 18.1137 22.7044 17.2528 22.1614 16.5523C21.6184 15.8519 20.8581 15.3516 20 15.13M16 3.13C16.8604 3.3503 17.623 3.8507 18.1676 4.55231C18.7122 5.25392 19.0078 6.11683 19.0078 7.005C19.0078 7.89317 18.7122 8.75608 18.1676 9.45769C17.623 10.1593 16.8604 10.6597 16 10.88M13 7C13 9.20914 11.2091 11 9 11C6.79086 11 5 9.20914 5 7C5 4.79086 6.79086 3 9 3C11.2091 3 13 4.79086 13 7Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" CONDIR.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Contact\r\n Directory</div>\r\n </div>\r\n </a></div>\r\n <ng-container *ngIf=\"!billingDisabled || (gs.userAccess | async)?.userType === 'tango'\">\r\n <div class=\"mb-3\"><a routerLink=\"/manage/settings/payment-subscription\" routerLinkActive=\"active\"\r\n #sa=\"routerLinkActive\" class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"sa.isActive ? 'btn text-tab' : ''\">\r\n <div class=\" me-4\"><span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\"\r\n viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path [ngClass]=\"sa.isActive ? 'fillstroke' : ''\"\r\n d=\"M14.1755 4.22225C14.1766 2.99445 11.6731 2 8.58832 2C5.50357 2 3.00224 2.99557 3 4.22225M3 4.22225C3 5.45004 5.50133 6.44449 8.58832 6.44449C11.6753 6.44449 14.1766 5.45004 14.1766 4.22225L14.1766 12.8445M3 4.22225V17.5556C3.00112 18.7834 5.50245 19.7779 8.58832 19.7779C10.0849 19.7779 11.4361 19.5412 12.4387 19.1601M3.00112 8.66672C3.00112 9.89451 5.50245 10.889 8.58944 10.889C11.6764 10.889 14.1778 9.89451 14.1778 8.66672M12.5057 14.6946C11.4976 15.0891 10.115 15.3335 8.58832 15.3335C5.50245 15.3335 3.00112 14.3391 3.00112 13.1113M20.5272 13.4646C22.4909 15.4169 22.4909 18.5836 20.5272 20.5358C18.5635 22.4881 15.3781 22.4881 13.4144 20.5358C11.4507 18.5836 11.4507 15.4169 13.4144 13.4646C15.3781 11.5124 18.5635 11.5124 20.5272 13.4646Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n \r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column \">\r\n <div [ngClass]=\"sa.isActive ? 'text-tab' : ''\" class=\"sideheading mb-1\">Plans &\r\n Subscription</div>\r\n </div>\r\n </a></div>\r\n </ng-container>\r\n \r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/documents\" routerLinkActive=\"active\" #DOC=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"DOC.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path [ngClass]=\" DOC.isActive ? 'fillstroke' : ''\"\r\n d=\"M14 2H6C5.46957 2 4.96086 2.21071 4.58579 2.58579C4.21071 2.96086 4 3.46957 4 4V20C4 20.5304 4.21071 21.0391 4.58579 21.4142C4.96086 21.7893 5.46957 22 6 22H18C18.5304 22 19.0391 21.7893 19.4142 21.4142C19.7893 21.0391 20 20.5304 20 20V8M14 2L20 8M14 2V8H20M16 13H8M16 17H8M10 9H8\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" DOC.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Documents\r\n </div>\r\n </div>\r\n </a></div>\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/activity-logs\" routerLinkActive=\"active\" #ACT=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"ACT.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path [ngClass]=\" ACT.isActive ? 'fillstroke fillpath' : ''\"\r\n d=\"M18.1539 7.72911L18.0341 7.85239L18.1539 7.72911C17.9972 7.57686 17.7859 7.49231 17.5667 7.49231H8.7C8.48081 7.49231 8.26948 7.57686 8.11279 7.72911C7.9559 7.88155 7.86667 8.08955 7.86667 8.30769C7.86667 8.52583 7.9559 8.73383 8.11279 8.88627C8.26948 9.03853 8.48081 9.12308 8.7 9.12308H17.5667C17.7859 9.12308 17.9972 9.03853 18.1539 8.88627C18.3108 8.73383 18.4 8.52583 18.4 8.30769C18.4 8.08955 18.3108 7.88155 18.1539 7.72911ZM3.04612 4.0368C2.88924 4.18924 2.8 4.39725 2.8 4.61538C2.8 4.83352 2.88924 5.04152 3.04612 5.19397C3.20282 5.34622 3.41415 5.43077 3.63333 5.43077H6.16667C6.38585 5.43077 6.59718 5.34622 6.75388 5.19397C6.91076 5.04152 7 4.83352 7 4.61538C7 4.39725 6.91076 4.18924 6.75388 4.0368C6.59718 3.88455 6.38585 3.8 6.16667 3.8H3.63333C3.41415 3.8 3.20282 3.88455 3.04612 4.0368ZM8.11279 4.0368C7.9559 4.18924 7.86667 4.39725 7.86667 4.61538C7.86667 4.83352 7.9559 5.04152 8.11279 5.19397C8.26948 5.34622 8.48081 5.43077 8.7 5.43077H21.3667C21.5859 5.43077 21.7972 5.34622 21.9539 5.19397C22.1108 5.04152 22.2 4.83352 22.2 4.61538C22.2 4.39725 22.1108 4.18924 21.9539 4.0368C21.7972 3.88455 21.5859 3.8 21.3667 3.8H8.7C8.48081 3.8 8.26948 3.88455 8.11279 4.0368ZM3.04612 11.4214C2.88924 11.5739 2.8 11.7819 2.8 12C2.8 12.2181 2.88924 12.4261 3.04612 12.5786C3.20282 12.7308 3.41414 12.8154 3.63333 12.8154H6.16667C6.38586 12.8154 6.59718 12.7308 6.75388 12.5786C6.91076 12.4261 7 12.2181 7 12C7 11.7819 6.91076 11.5739 6.75388 11.4214C6.59718 11.2692 6.38585 11.1846 6.16667 11.1846H3.63333C3.41415 11.1846 3.20282 11.2692 3.04612 11.4214ZM8.11279 11.4214C7.9559 11.5739 7.86667 11.7819 7.86667 12C7.86667 12.2181 7.9559 12.4261 8.11279 12.5786C8.26948 12.7308 8.48081 12.8154 8.7 12.8154H21.3667C21.5859 12.8154 21.7972 12.7308 21.9539 12.5786C22.1108 12.4261 22.2 12.2181 22.2 12C22.2 11.7819 22.1108 11.5739 21.9539 11.4214C21.7972 11.2692 21.5859 11.1846 21.3667 11.1846H8.7C8.48081 11.1846 8.26948 11.2692 8.11279 11.4214ZM8.11279 15.1137C7.9559 15.2662 7.86667 15.4742 7.86667 15.6923C7.86667 15.9104 7.9559 16.1184 8.11279 16.2709C8.26948 16.4231 8.48081 16.5077 8.7 16.5077H17.5667C17.7859 16.5077 17.9972 16.4231 18.1539 16.2709C18.3108 16.1184 18.4 15.9104 18.4 15.6923C18.4 15.4742 18.3108 15.2662 18.1539 15.1137C17.9972 14.9615 17.7859 14.8769 17.5667 14.8769H8.7C8.48081 14.8769 8.26948 14.9615 8.11279 15.1137ZM3.04612 18.806C2.88924 18.9585 2.8 19.1665 2.8 19.3846C2.8 19.6028 2.88924 19.8108 3.04612 19.9632C3.20282 20.1155 3.41415 20.2 3.63333 20.2H6.16667C6.38585 20.2 6.59718 20.1155 6.75388 19.9632C6.91076 19.8108 7 19.6028 7 19.3846C7 19.1665 6.91076 18.9585 6.75388 18.806C6.59718 18.6538 6.38585 18.5692 6.16667 18.5692H3.63333C3.41415 18.5692 3.20282 18.6538 3.04612 18.806ZM8.11279 18.806C7.9559 18.9585 7.86667 19.1665 7.86667 19.3846C7.86667 19.6028 7.9559 19.8108 8.11279 19.9632C8.26948 20.1155 8.48081 20.2 8.7 20.2H21.3667C21.5859 20.2 21.7972 20.1155 21.9539 19.9632C22.1108 19.8108 22.2 19.6028 22.2 19.3846C22.2 19.1665 22.1108 18.9585 21.9539 18.806C21.7972 18.6538 21.5859 18.5692 21.3667 18.5692H8.7C8.48081 18.5692 8.26948 18.6538 8.11279 18.806Z\"\r\n fill=\"#667085\" stroke=\"#667085\" stroke-width=\"0.4\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" ACT.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Activity Log\r\n </div>\r\n </div>\r\n </a></div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <ng-container *ngIf=\"pageState$ | async as pageState\">\r\n <ng-container [ngSwitch]=\"pageState\">\r\n <ng-container *ngSwitchCase=\"'loaded'\">\r\n <router-outlet></router-outlet>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'loading'\">\r\n <div class=\"shimmer-card w-100\">\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 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>\r\n\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n </div>\r\n</div>", styles: [".sideheading{color:var(--Gray-700, #344054);font-size:16px;font-style:normal;font-weight:500;line-height:24px}.card{border-radius:8px;padding:16px;flex-direction:column;align-items:flex-start}svg .fillpath{fill:#00a3ff!important}svg .fillstroke{stroke:#00a3ff!important}.text-tab{color:var(--Primary-700, #009BF3);font-size:16px;font-style:normal;font-weight:500;line-height:24px;border-radius:6px;background:var(--Primary-50, #EAF8FF)}.shimmer-card{border-radius:10px;background:#fff}.toastcard{border-left:2px solid #00A3FF;background:#fff;box-shadow:0 4px 16px #0000001a;padding:6px 12px 6px 16px;align-items:center;gap:16px;align-self:stretch;border-radius:4px}.overflow{overflow-x:scroll}.toasttext{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:140%}.needhelp{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF);color:var(--Gray-700, #344054)!important;font-size:16px;font-weight:600!important;text-transform:capitalize}.daysleft{color:var(--Gray-800, #1D2939);font-family:Inter;font-size:16px;font-style:normal;font-weight:500;line-height:32px}.trail{color:var(--Gray-500, #667085);font-size:14px;font-weight:600;line-height:28px}.producttext{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.productitem{right:545px!important}.productdrop{margin-top:12%;left:83%;z-index:10}\n"], dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i6.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i7.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i7.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i7.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
408
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: TangoManageSettingsComponent, selector: "lib-tango-manage-settings", host: { listeners: { "document:click": "onDocumentClick($event)" } }, ngImport: i0, template: "<!-- client request card start -->\r\n<div class=\"g-4\">\r\n <div class=\"my-2 d-flex overflow\">\r\n <div *ngFor=\"let notification of notificationDetails.notificationList;let i= index;let last = last\"\r\n [ngClass]=\"notificationDetails.notificationList?.length === 2 ? 'col-6' : (notificationDetails.notificationList?.length > 2 ? 'col-4' : 'col-12')\">\r\n <div class=\"toastcard\" [ngClass]=\"!last ? 'me-4' : ''\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-30px me-5\"><span>\r\n <img src=\"./assets/tango/custompopup-Icons/danger-alert-primary.svg\" alt=\"\">\r\n </span>\r\n </div>\r\n <span class=\"toasttext d-block\">{{notification.name}}</span>\r\n </div>\r\n <div class=\"d-flex align-items-center\"\r\n *ngIf=\"notification.category === 'Trial' && notificationDetails.notificationList.length === 1&&userType ==='tango'\">\r\n <a type=\"submit\" (click)=\"approvetrial(notification,'cancel')\"\r\n class=\"btn-outline btn needhelp me-6\"><span class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" (click)=\"approvetrial(notification,'approve')\"\r\n tabindex=\"0\"\r\n class=\"btn btn-primary px-4 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n <div class=\"row mt-1\"\r\n *ngIf=\"notification.category === 'trial product' && notificationDetails.notificationList.length === 1\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"align-items-start justify-content-between daysleft my-2\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail\">\r\n Free trial</div>\r\n </div>\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"70\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n\r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n\r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\"\r\n stroke=\"#007bff\" stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n\r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\"\r\n text-anchor=\"middle\" fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n\r\n <a type=\"button\" tabindex=\"0\" (click)=\"subscribeproduct(notification,'subscription')\"\r\n class=\"btn btn-primary px-4 ng-star-inserted\"><span>Subscribe\r\n </span></a>\r\n <div class=\"position-relative\" *ngIf=\"userType==='tango'\">\r\n <div class=\"ms-5\" (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer\"><svg width=\"44\" height=\"44\"\r\n viewBox=\"0 0 44 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_14876_280367)\">\r\n <rect x=\"2\" y=\"1\" width=\"40\" height=\"40\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"39\" height=\"39\" rx=\"7.5\"\r\n stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M22.0013 21.834C22.4615 21.834 22.8346 21.4609 22.8346 21.0007C22.8346 20.5404 22.4615 20.1673 22.0013 20.1673C21.5411 20.1673 21.168 20.5404 21.168 21.0007C21.168 21.4609 21.5411 21.834 22.0013 21.834Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 16.0007C22.4615 16.0007 22.8346 15.6276 22.8346 15.1673C22.8346 14.7071 22.4615 14.334 22.0013 14.334C21.5411 14.334 21.168 14.7071 21.168 15.1673C21.168 15.6276 21.5411 16.0007 22.0013 16.0007Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 27.6673C22.4615 27.6673 22.8346 27.2942 22.8346 26.834C22.8346 26.3737 22.4615 26.0007 22.0013 26.0007C21.5411 26.0007 21.168 26.3737 21.168 26.834C21.168 27.2942 21.5411 27.6673 22.0013 27.6673Z\"\r\n 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_14876_280367\" x=\"0\" y=\"0\" width=\"44\" height=\"44\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_14876_280367\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_14876_280367\" result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg>\r\n\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute productdrop top-20 end-0\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification, 'unsubscribe')\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"d-flex my-3\"\r\n *ngIf=\"notification.category === 'Trial' && notificationDetails.notificationList.length > 1&&userType ==='tango'\"><a\r\n type=\"submit\" (click)=\"approvetrial(notification,'cancel')\"\r\n class=\"btn-outline btn needhelp w-50 me-6 mt-3\"><span class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" (click)=\"approvetrial(notification,'approve')\"\r\n tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 w-50 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n\r\n <div class=\"row mt-1\"\r\n *ngIf=\"notification.category === 'trial product' && notificationDetails.notificationList.length > 1\">\r\n <div class=\"col-lg-6 d-flex\">\r\n <div class=\"align-items-start justify-content-between daysleft my-2\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail\">\r\n Free trial</div>\r\n </div>\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"70\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n\r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n\r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#007bff\"\r\n stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n\r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\" text-anchor=\"middle\"\r\n fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n\r\n\r\n </div>\r\n <div class=\"col-lg-6 \">\r\n <div class=\"d-flex\" style=\"justify-content: end;\">\r\n <a type=\"button\" tabindex=\"0\" (click)=\"subscribeproduct(notification,'subscription')\"\r\n class=\"btn btn-primary px-4 mt-3 ng-star-inserted\"><span>Subscribe\r\n </span></a>\r\n <div class=\"position-relative\" *ngIf=\"userType==='tango'\">\r\n <div class=\"ms-5 mt-4\" (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer\"><svg width=\"44\" height=\"44\"\r\n viewBox=\"0 0 44 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_14876_280367)\">\r\n <rect x=\"2\" y=\"1\" width=\"40\" height=\"40\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"39\" height=\"39\" rx=\"7.5\"\r\n stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M22.0013 21.834C22.4615 21.834 22.8346 21.4609 22.8346 21.0007C22.8346 20.5404 22.4615 20.1673 22.0013 20.1673C21.5411 20.1673 21.168 20.5404 21.168 21.0007C21.168 21.4609 21.5411 21.834 22.0013 21.834Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 16.0007C22.4615 16.0007 22.8346 15.6276 22.8346 15.1673C22.8346 14.7071 22.4615 14.334 22.0013 14.334C21.5411 14.334 21.168 14.7071 21.168 15.1673C21.168 15.6276 21.5411 16.0007 22.0013 16.0007Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 27.6673C22.4615 27.6673 22.8346 27.2942 22.8346 26.834C22.8346 26.3737 22.4615 26.0007 22.0013 26.0007C21.5411 26.0007 21.168 26.3737 21.168 26.834C21.168 27.2942 21.5411 27.6673 22.0013 27.6673Z\"\r\n 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_14876_280367\" x=\"0\" y=\"0\" width=\"44\" height=\"44\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_14876_280367\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_14876_280367\" result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg>\r\n\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute mt-17 z-1\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification, 'unsubscribe')\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- <div [ngClass]=\"{\r\n 'col-md-4': type === 'trail',\r\n 'col-md-6': type !== 'trail',\r\n 'col-12': type === 'trail'\r\n }\" class=\"col-md-4 mb-5\">\r\n <div class=\"toastcard\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-30px me-5\"><span>\r\n <img src=\"./assets/tango/custompopup-Icons/danger-alert-primary.svg\" alt=\"\">\r\n </span>\r\n </div>\r\n <span class=\"toasttext d-block\">Client has Requested Tango Zone </span>\r\n </div>\r\n <div class=\"d-flex mb-2\"><a type=\"submit\" class=\"btn-outline btn needhelp w-50 me-6 mt-3\"><span\r\n class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 w-50 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n </div>\r\n </div> -->\r\n</div>\r\n<!-- client request card end -->\r\n\r\n<!-- <div class=\"row gx-4 mb-4\">\r\n <div class=\"col-xl-6\" [ngClass]=\"i > 1? 'mt-5' : ''\"\r\n *ngFor=\"let notification of notificationDetails.notificationList;let i= index;\">\r\n <div class=\"billingcard h-xl-100 flex-row flex-stack flex-wrap mb-6 px-6\">\r\n <div class=\"d-flex flex-column mt-10\" *ngIf=\"notification.category === 'Trial'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n {{notification.name}} <span class=\"badge-light-grey ms-2\">{{currentPlan |\r\n titlecase}}</span>\r\n </div>\r\n <div class=\"subtext\">Kindly make necessary action for trial\r\n request or skip product to subscription list</div>\r\n\r\n <div data-kt-subscription-table-toolbar=\"base\" class=\"d-flex mt-15\"><a\r\n (click)=\"approvetrial(notification,'cancel')\" type=\"submit\"\r\n class=\"btn-outline btn needhelp me-6 mt-3\"><span class=\"mt-6\">Skip Trial</span></a><a\r\n (click)=\"approvetrial(notification,'approve')\" type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 ng-star-inserted\"\r\n *ngIf=\"(gs.userAccess | async)?.settings_paymentSubscriptions_isEdit\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n </div>\r\n <div class=\"d-flex flex-column mt-11\" *ngIf=\"notification.category === 'unsubscribe'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n Unsubscribe Request\r\n </div>\r\n <div class=\"subtext\">Client has requested to unsubscribe\r\n <span class=\"subtextbold\">Tango Suite</span>\r\n </div>\r\n\r\n <div data-kt-subscription-table-toolbar=\"base\" class=\"d-flex mt-20\"><a type=\"submit\"\r\n class=\"btn-outline btn needhelp me-6 mt-3\"\r\n (click)=\"cancelUnsubscribe(notification,'cancel')\"><span class=\"mt-6\">Cancel</span></a><a\r\n (click)=\"approveUnsubscribe(notification,'unsubscribe')\" type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-danger px-4 mt-3 ng-star-inserted\"\r\n *ngIf=\"(gs.userAccess | async)?.settings_paymentSubscriptions_isEdit\"><span>Approve\r\n </span></a></div>\r\n </div>\r\n <div class=\"d-flex flex-column mt-10\" *ngIf=\"notification.category === 'trial product'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n {{notification.name}} <span class=\"badge-light-grey ms-2\">{{currentPlan |\r\n titlecase}}</span>\r\n </div>\r\n <div class=\"subtext\">You will not be billed during your free\r\n <span class=\"subtextbold\">trial</span>.To keep your\r\n projects running after the trial end, upgrade to a paid\r\n option.\r\n </div>\r\n <div class=\"row mt-7\">\r\n <div class=\"col-lg-8 d-flex\">\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"94\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n \r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n \r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#007bff\"\r\n stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n \r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\" text-anchor=\"middle\"\r\n fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n <div class=\"align-items-start justify-content-between daysleft ms-6 mt-3\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail mt-4 me-16\">\r\n Free trial</div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-lg-4 mt-6\">\r\n <div class=\"position-relative\">\r\n <div (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer ms-20\"><svg width=\"60\" height=\"60\"\r\n viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_5221_60143)\">\r\n <rect x=\"2\" y=\"1\" width=\"56\" height=\"56\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"55\" height=\"55\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <g clip-path=\"url(#clip0_5221_60143)\">\r\n <path\r\n d=\"M30 32C31.6569 32 33 30.6569 33 29C33 27.3431 31.6569 26 30 26C28.3431 26 27 27.3431 27 29C27 30.6569 28.3431 32 30 32Z\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M37.4 32C37.2669 32.3016 37.2272 32.6362 37.286 32.9606C37.3448 33.285 37.4995 33.5843 37.73 33.82L37.79 33.88C37.976 34.0657 38.1235 34.2863 38.2241 34.5291C38.3248 34.7719 38.3766 35.0322 38.3766 35.295C38.3766 35.5578 38.3248 35.8181 38.2241 36.0609C38.1235 36.3037 37.976 36.5243 37.79 36.71C37.6043 36.896 37.3837 37.0435 37.1409 37.1441C36.8981 37.2448 36.6378 37.2966 36.375 37.2966C36.1122 37.2966 35.8519 37.2448 35.6091 37.1441C35.3663 37.0435 35.1457 36.896 34.96 36.71L34.9 36.65C34.6643 36.4195 34.365 36.2648 34.0406 36.206C33.7162 36.1472 33.3816 36.1869 33.08 36.32C32.7842 36.4468 32.532 36.6572 32.3543 36.9255C32.1766 37.1938 32.0813 37.5082 32.08 37.83V38C32.08 38.5304 31.8693 39.0391 31.4942 39.4142C31.1191 39.7893 30.6104 40 30.08 40C29.5496 40 29.0409 39.7893 28.6658 39.4142C28.2907 39.0391 28.08 38.5304 28.08 38V37.91C28.0723 37.579 27.9651 37.258 27.7725 36.9887C27.5799 36.7194 27.3107 36.5143 27 36.4C26.6984 36.2669 26.3638 36.2272 26.0394 36.286C25.715 36.3448 25.4157 36.4995 25.18 36.73L25.12 36.79C24.9343 36.976 24.7137 37.1235 24.4709 37.2241C24.2281 37.3248 23.9678 37.3766 23.705 37.3766C23.4422 37.3766 23.1819 37.3248 22.9391 37.2241C22.6963 37.1235 22.4757 36.976 22.29 36.79C22.104 36.6043 21.9565 36.3837 21.8559 36.1409C21.7552 35.8981 21.7034 35.6378 21.7034 35.375C21.7034 35.1122 21.7552 34.8519 21.8559 34.6091C21.9565 34.3663 22.104 34.1457 22.29 33.96L22.35 33.9C22.5805 33.6643 22.7352 33.365 22.794 33.0406C22.8528 32.7162 22.8131 32.3816 22.68 32.08C22.5532 31.7842 22.3428 31.532 22.0745 31.3543C21.8062 31.1766 21.4918 31.0813 21.17 31.08H21C20.4696 31.08 19.9609 30.8693 19.5858 30.4942C19.2107 30.1191 19 29.6104 19 29.08C19 28.5496 19.2107 28.0409 19.5858 27.6658C19.9609 27.2907 20.4696 27.08 21 27.08H21.09C21.421 27.0723 21.742 26.9651 22.0113 26.7725C22.2806 26.5799 22.4857 26.3107 22.6 26C22.7331 25.6984 22.7728 25.3638 22.714 25.0394C22.6552 24.715 22.5005 24.4157 22.27 24.18L22.21 24.12C22.024 23.9343 21.8765 23.7137 21.7759 23.4709C21.6752 23.2281 21.6234 22.9678 21.6234 22.705C21.6234 22.4422 21.6752 22.1819 21.7759 21.9391C21.8765 21.6963 22.024 21.4757 22.21 21.29C22.3957 21.104 22.6163 20.9565 22.8591 20.8559C23.1019 20.7552 23.3622 20.7034 23.625 20.7034C23.8878 20.7034 24.1481 20.7552 24.3909 20.8559C24.6337 20.9565 24.8543 21.104 25.04 21.29L25.1 21.35C25.3357 21.5805 25.635 21.7352 25.9594 21.794C26.2838 21.8528 26.6184 21.8131 26.92 21.68H27C27.2958 21.5532 27.548 21.3428 27.7257 21.0745C27.9034 20.8062 27.9987 20.4918 28 20.17V20C28 19.4696 28.2107 18.9609 28.5858 18.5858C28.9609 18.2107 29.4696 18 30 18C30.5304 18 31.0391 18.2107 31.4142 18.5858C31.7893 18.9609 32 19.4696 32 20V20.09C32.0013 20.4118 32.0966 20.7262 32.2743 20.9945C32.452 21.2628 32.7042 21.4732 33 21.6C33.3016 21.7331 33.6362 21.7728 33.9606 21.714C34.285 21.6552 34.5843 21.5005 34.82 21.27L34.88 21.21C35.0657 21.024 35.2863 20.8765 35.5291 20.7759C35.7719 20.6752 36.0322 20.6234 36.295 20.6234C36.5578 20.6234 36.8181 20.6752 37.0609 20.7759C37.3037 20.8765 37.5243 21.024 37.71 21.21C37.896 21.3957 38.0435 21.6163 38.1441 21.8591C38.2448 22.1019 38.2966 22.3622 38.2966 22.625C38.2966 22.8878 38.2448 23.1481 38.1441 23.3909C38.0435 23.6337 37.896 23.8543 37.71 24.04L37.65 24.1C37.4195 24.3357 37.2648 24.635 37.206 24.9594C37.1472 25.2838 37.1869 25.6184 37.32 25.92V26C37.4468 26.2958 37.6572 26.548 37.9255 26.7257C38.1938 26.9034 38.5082 26.9987 38.83 27H39C39.5304 27 40.0391 27.2107 40.4142 27.5858C40.7893 27.9609 41 28.4696 41 29C41 29.5304 40.7893 30.0391 40.4142 30.4142C40.0391 30.7893 39.5304 31 39 31H38.91C38.5882 31.0013 38.2738 31.0966 38.0055 31.2743C37.7372 31.452 37.5268 31.7042 37.4 32Z\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_5221_60143\" x=\"0\" y=\"0\" width=\"60\" height=\"60\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_5221_60143\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_5221_60143\" result=\"shape\" />\r\n </filter>\r\n <clipPath id=\"clip0_5221_60143\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\"\r\n transform=\"translate(18 17)\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute end-0 z-1\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification)\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n</div> -->\r\n\r\n\r\n\r\n\r\n<div class=\"row mb-5\">\r\n <div class=\"col-md-3\">\r\n <div class=\"card h-100\">\r\n <div class=\"m-0 w-100\">\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/brand-detail\" routerLinkActive=\"active\"\r\n [routerLinkActiveOptions]=\"{exact: true}\" #BR=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"BR.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <g clip-path=\"url(#clip0_1842_19728)\">\r\n <path [ngClass]=\" BR.isActive ? 'fillpath' : ''\"\r\n d=\"M2.625 24C1.92881 24 1.26113 23.7234 0.768845 23.2312C0.276562 22.7389 0 22.0712 0 21.375L0 2.625C0 1.176 1.176 0 2.625 0H15.375C16.824 0 18 1.176 18 2.625V21.375C18 21.5025 17.991 21.627 17.973 21.75H21.375C21.4745 21.75 21.5698 21.7105 21.6402 21.6402C21.7105 21.5698 21.75 21.4745 21.75 21.375V12.4275C21.75 12.3658 21.7349 12.3051 21.7058 12.2506C21.6768 12.1962 21.6348 12.1498 21.5835 12.1155L20.001 11.061C19.8781 10.9791 19.7725 10.8737 19.6903 10.751C19.6081 10.6282 19.5509 10.4905 19.5219 10.3456C19.4929 10.2008 19.4928 10.0516 19.5215 9.90669C19.5501 9.76177 19.6071 9.62392 19.689 9.501C19.7709 9.37808 19.8763 9.27251 19.999 9.19031C20.1218 9.10811 20.2595 9.05089 20.4044 9.02191C20.5492 8.99294 20.6984 8.99279 20.8433 9.02145C20.9882 9.05012 21.1261 9.10706 21.249 9.189L22.8315 10.2435C23.562 10.731 24 11.55 24 12.4275V21.375C24 22.0712 23.7234 22.7389 23.2312 23.2312C22.7389 23.7234 22.0712 24 21.375 24H16.125C16.0252 23.9999 15.9259 23.9868 15.8295 23.961C15.681 23.9865 15.5295 24 15.375 24H10.875C10.5766 24 10.2905 23.8815 10.0795 23.6705C9.86853 23.4595 9.75 23.1734 9.75 22.875V21H8.25V22.875C8.25 23.1734 8.13147 23.4595 7.9205 23.6705C7.70952 23.8815 7.42337 24 7.125 24H2.625ZM2.25 21.375C2.25 21.582 2.418 21.75 2.625 21.75H6V19.875C6 19.5766 6.11853 19.2905 6.3295 19.0795C6.54048 18.8685 6.82663 18.75 7.125 18.75H10.875C11.1734 18.75 11.4595 18.8685 11.6705 19.0795C11.8815 19.2905 12 19.5766 12 19.875V21.75H15.375C15.4745 21.75 15.5698 21.7105 15.6402 21.6402C15.7105 21.5698 15.75 21.4745 15.75 21.375V2.625C15.75 2.52554 15.7105 2.43016 15.6402 2.35984C15.5698 2.28951 15.4745 2.25 15.375 2.25H2.625C2.52554 2.25 2.43016 2.28951 2.35984 2.35984C2.28951 2.43016 2.25 2.52554 2.25 2.625V21.375ZM5.625 9H6.375C6.67337 9 6.95952 9.11853 7.1705 9.3295C7.38147 9.54048 7.5 9.82663 7.5 10.125C7.5 10.4234 7.38147 10.7095 7.1705 10.9205C6.95952 11.1315 6.67337 11.25 6.375 11.25H5.625C5.32663 11.25 5.04048 11.1315 4.8295 10.9205C4.61853 10.7095 4.5 10.4234 4.5 10.125C4.5 9.82663 4.61853 9.54048 4.8295 9.3295C5.04048 9.11853 5.32663 9 5.625 9ZM4.5 5.625C4.5 5.32663 4.61853 5.04048 4.8295 4.8295C5.04048 4.61853 5.32663 4.5 5.625 4.5H6.375C6.67337 4.5 6.95952 4.61853 7.1705 4.8295C7.38147 5.04048 7.5 5.32663 7.5 5.625C7.5 5.92337 7.38147 6.20952 7.1705 6.4205C6.95952 6.63147 6.67337 6.75 6.375 6.75H5.625C5.32663 6.75 5.04048 6.63147 4.8295 6.4205C4.61853 6.20952 4.5 5.92337 4.5 5.625ZM10.5 10.125C10.5 9.82663 10.6185 9.54048 10.8295 9.3295C11.0405 9.11853 11.3266 9 11.625 9H12.375C12.6734 9 12.9595 9.11853 13.1705 9.3295C13.3815 9.54048 13.5 9.82663 13.5 10.125C13.5 10.4234 13.3815 10.7095 13.1705 10.9205C12.9595 11.1315 12.6734 11.25 12.375 11.25H11.625C11.3266 11.25 11.0405 11.1315 10.8295 10.9205C10.6185 10.7095 10.5 10.4234 10.5 10.125ZM11.625 4.5H12.375C12.6734 4.5 12.9595 4.61853 13.1705 4.8295C13.3815 5.04048 13.5 5.32663 13.5 5.625C13.5 5.92337 13.3815 6.20952 13.1705 6.4205C12.9595 6.63147 12.6734 6.75 12.375 6.75H11.625C11.3266 6.75 11.0405 6.63147 10.8295 6.4205C10.6185 6.20952 10.5 5.92337 10.5 5.625C10.5 5.32663 10.6185 5.04048 10.8295 4.8295C11.0405 4.61853 11.3266 4.5 11.625 4.5ZM4.5 14.625C4.5 14.3266 4.61853 14.0405 4.8295 13.8295C5.04048 13.6185 5.32663 13.5 5.625 13.5H6.375C6.67337 13.5 6.95952 13.6185 7.1705 13.8295C7.38147 14.0405 7.5 14.3266 7.5 14.625C7.5 14.9234 7.38147 15.2095 7.1705 15.4205C6.95952 15.6315 6.67337 15.75 6.375 15.75H5.625C5.32663 15.75 5.04048 15.6315 4.8295 15.4205C4.61853 15.2095 4.5 14.9234 4.5 14.625ZM11.625 13.5H12.375C12.6734 13.5 12.9595 13.6185 13.1705 13.8295C13.3815 14.0405 13.5 14.3266 13.5 14.625C13.5 14.9234 13.3815 15.2095 13.1705 15.4205C12.9595 15.6315 12.6734 15.75 12.375 15.75H11.625C11.3266 15.75 11.0405 15.6315 10.8295 15.4205C10.6185 15.2095 10.5 14.9234 10.5 14.625C10.5 14.3266 10.6185 14.0405 10.8295 13.8295C11.0405 13.6185 11.3266 13.5 11.625 13.5Z\"\r\n fill=\"#667085\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_1842_19728\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" BR.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Brand Details\r\n </div>\r\n </div>\r\n </a></div>\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/configuration\" routerLinkActive=\"active\" #CON=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"CON.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <g clip-path=\"url(#clip0_1842_19733)\">\r\n <path [ngClass]=\" CON.isActive ? 'fillstroke' : ''\"\r\n d=\"M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path [ngClass]=\" CON.isActive ? 'fillstroke' : ''\"\r\n d=\"M19.4 15C19.2669 15.3016 19.2272 15.6362 19.286 15.9606C19.3448 16.285 19.4995 16.5843 19.73 16.82L19.79 16.88C19.976 17.0657 20.1235 17.2863 20.2241 17.5291C20.3248 17.7719 20.3766 18.0322 20.3766 18.295C20.3766 18.5578 20.3248 18.8181 20.2241 19.0609C20.1235 19.3037 19.976 19.5243 19.79 19.71C19.6043 19.896 19.3837 20.0435 19.1409 20.1441C18.8981 20.2448 18.6378 20.2966 18.375 20.2966C18.1122 20.2966 17.8519 20.2448 17.6091 20.1441C17.3663 20.0435 17.1457 19.896 16.96 19.71L16.9 19.65C16.6643 19.4195 16.365 19.2648 16.0406 19.206C15.7162 19.1472 15.3816 19.1869 15.08 19.32C14.7842 19.4468 14.532 19.6572 14.3543 19.9255C14.1766 20.1938 14.0813 20.5082 14.08 20.83V21C14.08 21.5304 13.8693 22.0391 13.4942 22.4142C13.1191 22.7893 12.6104 23 12.08 23C11.5496 23 11.0409 22.7893 10.6658 22.4142C10.2907 22.0391 10.08 21.5304 10.08 21V20.91C10.0723 20.579 9.96512 20.258 9.77251 19.9887C9.5799 19.7194 9.31074 19.5143 9 19.4C8.69838 19.2669 8.36381 19.2272 8.03941 19.286C7.71502 19.3448 7.41568 19.4995 7.18 19.73L7.12 19.79C6.93425 19.976 6.71368 20.1235 6.47088 20.2241C6.22808 20.3248 5.96783 20.3766 5.705 20.3766C5.44217 20.3766 5.18192 20.3248 4.93912 20.2241C4.69632 20.1235 4.47575 19.976 4.29 19.79C4.10405 19.6043 3.95653 19.3837 3.85588 19.1409C3.75523 18.8981 3.70343 18.6378 3.70343 18.375C3.70343 18.1122 3.75523 17.8519 3.85588 17.6091C3.95653 17.3663 4.10405 17.1457 4.29 16.96L4.35 16.9C4.58054 16.6643 4.73519 16.365 4.794 16.0406C4.85282 15.7162 4.81312 15.3816 4.68 15.08C4.55324 14.7842 4.34276 14.532 4.07447 14.3543C3.80618 14.1766 3.49179 14.0813 3.17 14.08H3C2.46957 14.08 1.96086 13.8693 1.58579 13.4942C1.21071 13.1191 1 12.6104 1 12.08C1 11.5496 1.21071 11.0409 1.58579 10.6658C1.96086 10.2907 2.46957 10.08 3 10.08H3.09C3.42099 10.0723 3.742 9.96512 4.0113 9.77251C4.28059 9.5799 4.48572 9.31074 4.6 9C4.73312 8.69838 4.77282 8.36381 4.714 8.03941C4.65519 7.71502 4.50054 7.41568 4.27 7.18L4.21 7.12C4.02405 6.93425 3.87653 6.71368 3.77588 6.47088C3.67523 6.22808 3.62343 5.96783 3.62343 5.705C3.62343 5.44217 3.67523 5.18192 3.77588 4.93912C3.87653 4.69632 4.02405 4.47575 4.21 4.29C4.39575 4.10405 4.61632 3.95653 4.85912 3.85588C5.10192 3.75523 5.36217 3.70343 5.625 3.70343C5.88783 3.70343 6.14808 3.75523 6.39088 3.85588C6.63368 3.95653 6.85425 4.10405 7.04 4.29L7.1 4.35C7.33568 4.58054 7.63502 4.73519 7.95941 4.794C8.28381 4.85282 8.61838 4.81312 8.92 4.68H9C9.29577 4.55324 9.54802 4.34276 9.72569 4.07447C9.90337 3.80618 9.99872 3.49179 10 3.17V3C10 2.46957 10.2107 1.96086 10.5858 1.58579C10.9609 1.21071 11.4696 1 12 1C12.5304 1 13.0391 1.21071 13.4142 1.58579C13.7893 1.96086 14 2.46957 14 3V3.09C14.0013 3.41179 14.0966 3.72618 14.2743 3.99447C14.452 4.26276 14.7042 4.47324 15 4.6C15.3016 4.73312 15.6362 4.77282 15.9606 4.714C16.285 4.65519 16.5843 4.50054 16.82 4.27L16.88 4.21C17.0657 4.02405 17.2863 3.87653 17.5291 3.77588C17.7719 3.67523 18.0322 3.62343 18.295 3.62343C18.5578 3.62343 18.8181 3.67523 19.0609 3.77588C19.3037 3.87653 19.5243 4.02405 19.71 4.21C19.896 4.39575 20.0435 4.61632 20.1441 4.85912C20.2448 5.10192 20.2966 5.36217 20.2966 5.625C20.2966 5.88783 20.2448 6.14808 20.1441 6.39088C20.0435 6.63368 19.896 6.85425 19.71 7.04L19.65 7.1C19.4195 7.33568 19.2648 7.63502 19.206 7.95941C19.1472 8.28381 19.1869 8.61838 19.32 8.92V9C19.4468 9.29577 19.6572 9.54802 19.9255 9.72569C20.1938 9.90337 20.5082 9.99872 20.83 10H21C21.5304 10 22.0391 10.2107 22.4142 10.5858C22.7893 10.9609 23 11.4696 23 12C23 12.5304 22.7893 13.0391 22.4142 13.4142C22.0391 13.7893 21.5304 14 21 14H20.91C20.5882 14.0013 20.2738 14.0966 20.0055 14.2743C19.7372 14.452 19.5268 14.7042 19.4 15Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_1842_19733\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" CON.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">\r\n Configuration\r\n </div>\r\n </div>\r\n </a></div>\r\n <div *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/contact-directory\" routerLinkActive=\"active\"\r\n #CONDIR=\"routerLinkActive\" class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"CONDIR.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <path [ngClass]=\"CONDIR.isActive ? 'fillstroke' : ''\"\r\n d=\"M17 21V19C17 17.9391 16.5786 16.9217 15.8284 16.1716C15.0783 15.4214 14.0609 15 13 15H5C3.93913 15 2.92172 15.4214 2.17157 16.1716C1.42143 16.9217 1 17.9391 1 19V21M23 21V19C22.9993 18.1137 22.7044 17.2528 22.1614 16.5523C21.6184 15.8519 20.8581 15.3516 20 15.13M16 3.13C16.8604 3.3503 17.623 3.8507 18.1676 4.55231C18.7122 5.25392 19.0078 6.11683 19.0078 7.005C19.0078 7.89317 18.7122 8.75608 18.1676 9.45769C17.623 10.1593 16.8604 10.6597 16 10.88M13 7C13 9.20914 11.2091 11 9 11C6.79086 11 5 9.20914 5 7C5 4.79086 6.79086 3 9 3C11.2091 3 13 4.79086 13 7Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" CONDIR.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Contact\r\n Directory</div>\r\n </div>\r\n </a></div>\r\n <!-- <ng-container *ngIf=\"!billingDisabled || (gs.userAccess | async)?.userType === 'tango'\">\r\n <div class=\"mb-3\"><a routerLink=\"/manage/settings/payment-subscription\" routerLinkActive=\"active\"\r\n #sa=\"routerLinkActive\" class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"sa.isActive ? 'btn text-tab' : ''\">\r\n <div class=\" me-4\"><span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\"\r\n viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path [ngClass]=\"sa.isActive ? 'fillstroke' : ''\"\r\n d=\"M14.1755 4.22225C14.1766 2.99445 11.6731 2 8.58832 2C5.50357 2 3.00224 2.99557 3 4.22225M3 4.22225C3 5.45004 5.50133 6.44449 8.58832 6.44449C11.6753 6.44449 14.1766 5.45004 14.1766 4.22225L14.1766 12.8445M3 4.22225V17.5556C3.00112 18.7834 5.50245 19.7779 8.58832 19.7779C10.0849 19.7779 11.4361 19.5412 12.4387 19.1601M3.00112 8.66672C3.00112 9.89451 5.50245 10.889 8.58944 10.889C11.6764 10.889 14.1778 9.89451 14.1778 8.66672M12.5057 14.6946C11.4976 15.0891 10.115 15.3335 8.58832 15.3335C5.50245 15.3335 3.00112 14.3391 3.00112 13.1113M20.5272 13.4646C22.4909 15.4169 22.4909 18.5836 20.5272 20.5358C18.5635 22.4881 15.3781 22.4881 13.4144 20.5358C11.4507 18.5836 11.4507 15.4169 13.4144 13.4646C15.3781 11.5124 18.5635 11.5124 20.5272 13.4646Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n \r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column \">\r\n <div [ngClass]=\"sa.isActive ? 'text-tab' : ''\" class=\"sideheading mb-1\">Plans &\r\n Subscription</div>\r\n </div>\r\n </a></div>\r\n </ng-container> -->\r\n \r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/documents\" routerLinkActive=\"active\" #DOC=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"DOC.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path [ngClass]=\" DOC.isActive ? 'fillstroke' : ''\"\r\n d=\"M14 2H6C5.46957 2 4.96086 2.21071 4.58579 2.58579C4.21071 2.96086 4 3.46957 4 4V20C4 20.5304 4.21071 21.0391 4.58579 21.4142C4.96086 21.7893 5.46957 22 6 22H18C18.5304 22 19.0391 21.7893 19.4142 21.4142C19.7893 21.0391 20 20.5304 20 20V8M14 2L20 8M14 2V8H20M16 13H8M16 17H8M10 9H8\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" DOC.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Documents\r\n </div>\r\n </div>\r\n </a></div>\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/activity-logs\" routerLinkActive=\"active\" #ACT=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"ACT.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path [ngClass]=\" ACT.isActive ? 'fillstroke fillpath' : ''\"\r\n d=\"M18.1539 7.72911L18.0341 7.85239L18.1539 7.72911C17.9972 7.57686 17.7859 7.49231 17.5667 7.49231H8.7C8.48081 7.49231 8.26948 7.57686 8.11279 7.72911C7.9559 7.88155 7.86667 8.08955 7.86667 8.30769C7.86667 8.52583 7.9559 8.73383 8.11279 8.88627C8.26948 9.03853 8.48081 9.12308 8.7 9.12308H17.5667C17.7859 9.12308 17.9972 9.03853 18.1539 8.88627C18.3108 8.73383 18.4 8.52583 18.4 8.30769C18.4 8.08955 18.3108 7.88155 18.1539 7.72911ZM3.04612 4.0368C2.88924 4.18924 2.8 4.39725 2.8 4.61538C2.8 4.83352 2.88924 5.04152 3.04612 5.19397C3.20282 5.34622 3.41415 5.43077 3.63333 5.43077H6.16667C6.38585 5.43077 6.59718 5.34622 6.75388 5.19397C6.91076 5.04152 7 4.83352 7 4.61538C7 4.39725 6.91076 4.18924 6.75388 4.0368C6.59718 3.88455 6.38585 3.8 6.16667 3.8H3.63333C3.41415 3.8 3.20282 3.88455 3.04612 4.0368ZM8.11279 4.0368C7.9559 4.18924 7.86667 4.39725 7.86667 4.61538C7.86667 4.83352 7.9559 5.04152 8.11279 5.19397C8.26948 5.34622 8.48081 5.43077 8.7 5.43077H21.3667C21.5859 5.43077 21.7972 5.34622 21.9539 5.19397C22.1108 5.04152 22.2 4.83352 22.2 4.61538C22.2 4.39725 22.1108 4.18924 21.9539 4.0368C21.7972 3.88455 21.5859 3.8 21.3667 3.8H8.7C8.48081 3.8 8.26948 3.88455 8.11279 4.0368ZM3.04612 11.4214C2.88924 11.5739 2.8 11.7819 2.8 12C2.8 12.2181 2.88924 12.4261 3.04612 12.5786C3.20282 12.7308 3.41414 12.8154 3.63333 12.8154H6.16667C6.38586 12.8154 6.59718 12.7308 6.75388 12.5786C6.91076 12.4261 7 12.2181 7 12C7 11.7819 6.91076 11.5739 6.75388 11.4214C6.59718 11.2692 6.38585 11.1846 6.16667 11.1846H3.63333C3.41415 11.1846 3.20282 11.2692 3.04612 11.4214ZM8.11279 11.4214C7.9559 11.5739 7.86667 11.7819 7.86667 12C7.86667 12.2181 7.9559 12.4261 8.11279 12.5786C8.26948 12.7308 8.48081 12.8154 8.7 12.8154H21.3667C21.5859 12.8154 21.7972 12.7308 21.9539 12.5786C22.1108 12.4261 22.2 12.2181 22.2 12C22.2 11.7819 22.1108 11.5739 21.9539 11.4214C21.7972 11.2692 21.5859 11.1846 21.3667 11.1846H8.7C8.48081 11.1846 8.26948 11.2692 8.11279 11.4214ZM8.11279 15.1137C7.9559 15.2662 7.86667 15.4742 7.86667 15.6923C7.86667 15.9104 7.9559 16.1184 8.11279 16.2709C8.26948 16.4231 8.48081 16.5077 8.7 16.5077H17.5667C17.7859 16.5077 17.9972 16.4231 18.1539 16.2709C18.3108 16.1184 18.4 15.9104 18.4 15.6923C18.4 15.4742 18.3108 15.2662 18.1539 15.1137C17.9972 14.9615 17.7859 14.8769 17.5667 14.8769H8.7C8.48081 14.8769 8.26948 14.9615 8.11279 15.1137ZM3.04612 18.806C2.88924 18.9585 2.8 19.1665 2.8 19.3846C2.8 19.6028 2.88924 19.8108 3.04612 19.9632C3.20282 20.1155 3.41415 20.2 3.63333 20.2H6.16667C6.38585 20.2 6.59718 20.1155 6.75388 19.9632C6.91076 19.8108 7 19.6028 7 19.3846C7 19.1665 6.91076 18.9585 6.75388 18.806C6.59718 18.6538 6.38585 18.5692 6.16667 18.5692H3.63333C3.41415 18.5692 3.20282 18.6538 3.04612 18.806ZM8.11279 18.806C7.9559 18.9585 7.86667 19.1665 7.86667 19.3846C7.86667 19.6028 7.9559 19.8108 8.11279 19.9632C8.26948 20.1155 8.48081 20.2 8.7 20.2H21.3667C21.5859 20.2 21.7972 20.1155 21.9539 19.9632C22.1108 19.8108 22.2 19.6028 22.2 19.3846C22.2 19.1665 22.1108 18.9585 21.9539 18.806C21.7972 18.6538 21.5859 18.5692 21.3667 18.5692H8.7C8.48081 18.5692 8.26948 18.6538 8.11279 18.806Z\"\r\n fill=\"#667085\" stroke=\"#667085\" stroke-width=\"0.4\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" ACT.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Activity Log\r\n </div>\r\n </div>\r\n </a></div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <ng-container *ngIf=\"pageState$ | async as pageState\">\r\n <ng-container [ngSwitch]=\"pageState\">\r\n <ng-container *ngSwitchCase=\"'loaded'\">\r\n <router-outlet></router-outlet>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'loading'\">\r\n <div class=\"shimmer-card w-100\">\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 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>\r\n\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n </div>\r\n</div>", styles: [".sideheading{color:var(--Gray-700, #344054);font-size:16px;font-style:normal;font-weight:500;line-height:24px}.card{border-radius:8px;padding:16px;flex-direction:column;align-items:flex-start}svg .fillpath{fill:#00a3ff!important}svg .fillstroke{stroke:#00a3ff!important}.text-tab{color:var(--Primary-700, #009BF3);font-size:16px;font-style:normal;font-weight:500;line-height:24px;border-radius:6px;background:var(--Primary-50, #EAF8FF)}.shimmer-card{border-radius:10px;background:#fff}.toastcard{border-left:2px solid #00A3FF;background:#fff;box-shadow:0 4px 16px #0000001a;padding:6px 12px 6px 16px;align-items:center;gap:16px;align-self:stretch;border-radius:4px}.overflow{overflow-x:scroll}.toasttext{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:140%}.needhelp{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF);color:var(--Gray-700, #344054)!important;font-size:16px;font-weight:600!important;text-transform:capitalize}.daysleft{color:var(--Gray-800, #1D2939);font-family:Inter;font-size:16px;font-style:normal;font-weight:500;line-height:32px}.trail{color:var(--Gray-500, #667085);font-size:14px;font-weight:600;line-height:28px}.producttext{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.productitem{right:545px!important}.productdrop{margin-top:12%;left:83%;z-index:10}\n"], dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i6.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i7.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i7.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i7.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }] });
409
409
  }
410
410
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TangoManageSettingsComponent, decorators: [{
411
411
  type: Component,
412
- args: [{ selector: 'lib-tango-manage-settings', template: "<!-- client request card start -->\r\n<div class=\"g-4\">\r\n <div class=\"my-2 d-flex overflow\">\r\n <div *ngFor=\"let notification of notificationDetails.notificationList;let i= index;let last = last\"\r\n [ngClass]=\"notificationDetails.notificationList?.length === 2 ? 'col-6' : (notificationDetails.notificationList?.length > 2 ? 'col-4' : 'col-12')\">\r\n <div class=\"toastcard\" [ngClass]=\"!last ? 'me-4' : ''\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-30px me-5\"><span>\r\n <img src=\"./assets/tango/custompopup-Icons/danger-alert-primary.svg\" alt=\"\">\r\n </span>\r\n </div>\r\n <span class=\"toasttext d-block\">{{notification.name}}</span>\r\n </div>\r\n <div class=\"d-flex align-items-center\"\r\n *ngIf=\"notification.category === 'Trial' && notificationDetails.notificationList.length === 1&&userType ==='tango'\">\r\n <a type=\"submit\" (click)=\"approvetrial(notification,'cancel')\"\r\n class=\"btn-outline btn needhelp me-6\"><span class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" (click)=\"approvetrial(notification,'approve')\"\r\n tabindex=\"0\"\r\n class=\"btn btn-primary px-4 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n <div class=\"row mt-1\"\r\n *ngIf=\"notification.category === 'trial product' && notificationDetails.notificationList.length === 1\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"align-items-start justify-content-between daysleft my-2\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail\">\r\n Free trial</div>\r\n </div>\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"70\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n\r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n\r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\"\r\n stroke=\"#007bff\" stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n\r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\"\r\n text-anchor=\"middle\" fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n\r\n <a type=\"button\" tabindex=\"0\" (click)=\"subscribeproduct(notification,'subscription')\"\r\n class=\"btn btn-primary px-4 ng-star-inserted\"><span>Subscribe\r\n </span></a>\r\n <div class=\"position-relative\" *ngIf=\"userType==='tango'\">\r\n <div class=\"ms-5\" (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer\"><svg width=\"44\" height=\"44\"\r\n viewBox=\"0 0 44 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_14876_280367)\">\r\n <rect x=\"2\" y=\"1\" width=\"40\" height=\"40\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"39\" height=\"39\" rx=\"7.5\"\r\n stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M22.0013 21.834C22.4615 21.834 22.8346 21.4609 22.8346 21.0007C22.8346 20.5404 22.4615 20.1673 22.0013 20.1673C21.5411 20.1673 21.168 20.5404 21.168 21.0007C21.168 21.4609 21.5411 21.834 22.0013 21.834Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 16.0007C22.4615 16.0007 22.8346 15.6276 22.8346 15.1673C22.8346 14.7071 22.4615 14.334 22.0013 14.334C21.5411 14.334 21.168 14.7071 21.168 15.1673C21.168 15.6276 21.5411 16.0007 22.0013 16.0007Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 27.6673C22.4615 27.6673 22.8346 27.2942 22.8346 26.834C22.8346 26.3737 22.4615 26.0007 22.0013 26.0007C21.5411 26.0007 21.168 26.3737 21.168 26.834C21.168 27.2942 21.5411 27.6673 22.0013 27.6673Z\"\r\n 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_14876_280367\" x=\"0\" y=\"0\" width=\"44\" height=\"44\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_14876_280367\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_14876_280367\" result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg>\r\n\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute productdrop top-20 end-0\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification, 'unsubscribe')\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"d-flex my-3\"\r\n *ngIf=\"notification.category === 'Trial' && notificationDetails.notificationList.length > 1&&userType ==='tango'\"><a\r\n type=\"submit\" (click)=\"approvetrial(notification,'cancel')\"\r\n class=\"btn-outline btn needhelp w-50 me-6 mt-3\"><span class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" (click)=\"approvetrial(notification,'approve')\"\r\n tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 w-50 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n\r\n <div class=\"row mt-1\"\r\n *ngIf=\"notification.category === 'trial product' && notificationDetails.notificationList.length > 1\">\r\n <div class=\"col-lg-6 d-flex\">\r\n <div class=\"align-items-start justify-content-between daysleft my-2\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail\">\r\n Free trial</div>\r\n </div>\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"70\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n\r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n\r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#007bff\"\r\n stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n\r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\" text-anchor=\"middle\"\r\n fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n\r\n\r\n </div>\r\n <div class=\"col-lg-6 \">\r\n <div class=\"d-flex\" style=\"justify-content: end;\">\r\n <a type=\"button\" tabindex=\"0\" (click)=\"subscribeproduct(notification,'subscription')\"\r\n class=\"btn btn-primary px-4 mt-3 ng-star-inserted\"><span>Subscribe\r\n </span></a>\r\n <div class=\"position-relative\" *ngIf=\"userType==='tango'\">\r\n <div class=\"ms-5 mt-4\" (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer\"><svg width=\"44\" height=\"44\"\r\n viewBox=\"0 0 44 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_14876_280367)\">\r\n <rect x=\"2\" y=\"1\" width=\"40\" height=\"40\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"39\" height=\"39\" rx=\"7.5\"\r\n stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M22.0013 21.834C22.4615 21.834 22.8346 21.4609 22.8346 21.0007C22.8346 20.5404 22.4615 20.1673 22.0013 20.1673C21.5411 20.1673 21.168 20.5404 21.168 21.0007C21.168 21.4609 21.5411 21.834 22.0013 21.834Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 16.0007C22.4615 16.0007 22.8346 15.6276 22.8346 15.1673C22.8346 14.7071 22.4615 14.334 22.0013 14.334C21.5411 14.334 21.168 14.7071 21.168 15.1673C21.168 15.6276 21.5411 16.0007 22.0013 16.0007Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 27.6673C22.4615 27.6673 22.8346 27.2942 22.8346 26.834C22.8346 26.3737 22.4615 26.0007 22.0013 26.0007C21.5411 26.0007 21.168 26.3737 21.168 26.834C21.168 27.2942 21.5411 27.6673 22.0013 27.6673Z\"\r\n 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_14876_280367\" x=\"0\" y=\"0\" width=\"44\" height=\"44\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_14876_280367\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_14876_280367\" result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg>\r\n\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute mt-17 z-1\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification, 'unsubscribe')\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- <div [ngClass]=\"{\r\n 'col-md-4': type === 'trail',\r\n 'col-md-6': type !== 'trail',\r\n 'col-12': type === 'trail'\r\n }\" class=\"col-md-4 mb-5\">\r\n <div class=\"toastcard\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-30px me-5\"><span>\r\n <img src=\"./assets/tango/custompopup-Icons/danger-alert-primary.svg\" alt=\"\">\r\n </span>\r\n </div>\r\n <span class=\"toasttext d-block\">Client has Requested Tango Zone </span>\r\n </div>\r\n <div class=\"d-flex mb-2\"><a type=\"submit\" class=\"btn-outline btn needhelp w-50 me-6 mt-3\"><span\r\n class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 w-50 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n </div>\r\n </div> -->\r\n</div>\r\n<!-- client request card end -->\r\n\r\n<!-- <div class=\"row gx-4 mb-4\">\r\n <div class=\"col-xl-6\" [ngClass]=\"i > 1? 'mt-5' : ''\"\r\n *ngFor=\"let notification of notificationDetails.notificationList;let i= index;\">\r\n <div class=\"billingcard h-xl-100 flex-row flex-stack flex-wrap mb-6 px-6\">\r\n <div class=\"d-flex flex-column mt-10\" *ngIf=\"notification.category === 'Trial'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n {{notification.name}} <span class=\"badge-light-grey ms-2\">{{currentPlan |\r\n titlecase}}</span>\r\n </div>\r\n <div class=\"subtext\">Kindly make necessary action for trial\r\n request or skip product to subscription list</div>\r\n\r\n <div data-kt-subscription-table-toolbar=\"base\" class=\"d-flex mt-15\"><a\r\n (click)=\"approvetrial(notification,'cancel')\" type=\"submit\"\r\n class=\"btn-outline btn needhelp me-6 mt-3\"><span class=\"mt-6\">Skip Trial</span></a><a\r\n (click)=\"approvetrial(notification,'approve')\" type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 ng-star-inserted\"\r\n *ngIf=\"(gs.userAccess | async)?.settings_paymentSubscriptions_isEdit\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n </div>\r\n <div class=\"d-flex flex-column mt-11\" *ngIf=\"notification.category === 'unsubscribe'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n Unsubscribe Request\r\n </div>\r\n <div class=\"subtext\">Client has requested to unsubscribe\r\n <span class=\"subtextbold\">Tango Suite</span>\r\n </div>\r\n\r\n <div data-kt-subscription-table-toolbar=\"base\" class=\"d-flex mt-20\"><a type=\"submit\"\r\n class=\"btn-outline btn needhelp me-6 mt-3\"\r\n (click)=\"cancelUnsubscribe(notification,'cancel')\"><span class=\"mt-6\">Cancel</span></a><a\r\n (click)=\"approveUnsubscribe(notification,'unsubscribe')\" type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-danger px-4 mt-3 ng-star-inserted\"\r\n *ngIf=\"(gs.userAccess | async)?.settings_paymentSubscriptions_isEdit\"><span>Approve\r\n </span></a></div>\r\n </div>\r\n <div class=\"d-flex flex-column mt-10\" *ngIf=\"notification.category === 'trial product'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n {{notification.name}} <span class=\"badge-light-grey ms-2\">{{currentPlan |\r\n titlecase}}</span>\r\n </div>\r\n <div class=\"subtext\">You will not be billed during your free\r\n <span class=\"subtextbold\">trial</span>.To keep your\r\n projects running after the trial end, upgrade to a paid\r\n option.\r\n </div>\r\n <div class=\"row mt-7\">\r\n <div class=\"col-lg-8 d-flex\">\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"94\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n \r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n \r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#007bff\"\r\n stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n \r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\" text-anchor=\"middle\"\r\n fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n <div class=\"align-items-start justify-content-between daysleft ms-6 mt-3\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail mt-4 me-16\">\r\n Free trial</div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-lg-4 mt-6\">\r\n <div class=\"position-relative\">\r\n <div (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer ms-20\"><svg width=\"60\" height=\"60\"\r\n viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_5221_60143)\">\r\n <rect x=\"2\" y=\"1\" width=\"56\" height=\"56\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"55\" height=\"55\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <g clip-path=\"url(#clip0_5221_60143)\">\r\n <path\r\n d=\"M30 32C31.6569 32 33 30.6569 33 29C33 27.3431 31.6569 26 30 26C28.3431 26 27 27.3431 27 29C27 30.6569 28.3431 32 30 32Z\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M37.4 32C37.2669 32.3016 37.2272 32.6362 37.286 32.9606C37.3448 33.285 37.4995 33.5843 37.73 33.82L37.79 33.88C37.976 34.0657 38.1235 34.2863 38.2241 34.5291C38.3248 34.7719 38.3766 35.0322 38.3766 35.295C38.3766 35.5578 38.3248 35.8181 38.2241 36.0609C38.1235 36.3037 37.976 36.5243 37.79 36.71C37.6043 36.896 37.3837 37.0435 37.1409 37.1441C36.8981 37.2448 36.6378 37.2966 36.375 37.2966C36.1122 37.2966 35.8519 37.2448 35.6091 37.1441C35.3663 37.0435 35.1457 36.896 34.96 36.71L34.9 36.65C34.6643 36.4195 34.365 36.2648 34.0406 36.206C33.7162 36.1472 33.3816 36.1869 33.08 36.32C32.7842 36.4468 32.532 36.6572 32.3543 36.9255C32.1766 37.1938 32.0813 37.5082 32.08 37.83V38C32.08 38.5304 31.8693 39.0391 31.4942 39.4142C31.1191 39.7893 30.6104 40 30.08 40C29.5496 40 29.0409 39.7893 28.6658 39.4142C28.2907 39.0391 28.08 38.5304 28.08 38V37.91C28.0723 37.579 27.9651 37.258 27.7725 36.9887C27.5799 36.7194 27.3107 36.5143 27 36.4C26.6984 36.2669 26.3638 36.2272 26.0394 36.286C25.715 36.3448 25.4157 36.4995 25.18 36.73L25.12 36.79C24.9343 36.976 24.7137 37.1235 24.4709 37.2241C24.2281 37.3248 23.9678 37.3766 23.705 37.3766C23.4422 37.3766 23.1819 37.3248 22.9391 37.2241C22.6963 37.1235 22.4757 36.976 22.29 36.79C22.104 36.6043 21.9565 36.3837 21.8559 36.1409C21.7552 35.8981 21.7034 35.6378 21.7034 35.375C21.7034 35.1122 21.7552 34.8519 21.8559 34.6091C21.9565 34.3663 22.104 34.1457 22.29 33.96L22.35 33.9C22.5805 33.6643 22.7352 33.365 22.794 33.0406C22.8528 32.7162 22.8131 32.3816 22.68 32.08C22.5532 31.7842 22.3428 31.532 22.0745 31.3543C21.8062 31.1766 21.4918 31.0813 21.17 31.08H21C20.4696 31.08 19.9609 30.8693 19.5858 30.4942C19.2107 30.1191 19 29.6104 19 29.08C19 28.5496 19.2107 28.0409 19.5858 27.6658C19.9609 27.2907 20.4696 27.08 21 27.08H21.09C21.421 27.0723 21.742 26.9651 22.0113 26.7725C22.2806 26.5799 22.4857 26.3107 22.6 26C22.7331 25.6984 22.7728 25.3638 22.714 25.0394C22.6552 24.715 22.5005 24.4157 22.27 24.18L22.21 24.12C22.024 23.9343 21.8765 23.7137 21.7759 23.4709C21.6752 23.2281 21.6234 22.9678 21.6234 22.705C21.6234 22.4422 21.6752 22.1819 21.7759 21.9391C21.8765 21.6963 22.024 21.4757 22.21 21.29C22.3957 21.104 22.6163 20.9565 22.8591 20.8559C23.1019 20.7552 23.3622 20.7034 23.625 20.7034C23.8878 20.7034 24.1481 20.7552 24.3909 20.8559C24.6337 20.9565 24.8543 21.104 25.04 21.29L25.1 21.35C25.3357 21.5805 25.635 21.7352 25.9594 21.794C26.2838 21.8528 26.6184 21.8131 26.92 21.68H27C27.2958 21.5532 27.548 21.3428 27.7257 21.0745C27.9034 20.8062 27.9987 20.4918 28 20.17V20C28 19.4696 28.2107 18.9609 28.5858 18.5858C28.9609 18.2107 29.4696 18 30 18C30.5304 18 31.0391 18.2107 31.4142 18.5858C31.7893 18.9609 32 19.4696 32 20V20.09C32.0013 20.4118 32.0966 20.7262 32.2743 20.9945C32.452 21.2628 32.7042 21.4732 33 21.6C33.3016 21.7331 33.6362 21.7728 33.9606 21.714C34.285 21.6552 34.5843 21.5005 34.82 21.27L34.88 21.21C35.0657 21.024 35.2863 20.8765 35.5291 20.7759C35.7719 20.6752 36.0322 20.6234 36.295 20.6234C36.5578 20.6234 36.8181 20.6752 37.0609 20.7759C37.3037 20.8765 37.5243 21.024 37.71 21.21C37.896 21.3957 38.0435 21.6163 38.1441 21.8591C38.2448 22.1019 38.2966 22.3622 38.2966 22.625C38.2966 22.8878 38.2448 23.1481 38.1441 23.3909C38.0435 23.6337 37.896 23.8543 37.71 24.04L37.65 24.1C37.4195 24.3357 37.2648 24.635 37.206 24.9594C37.1472 25.2838 37.1869 25.6184 37.32 25.92V26C37.4468 26.2958 37.6572 26.548 37.9255 26.7257C38.1938 26.9034 38.5082 26.9987 38.83 27H39C39.5304 27 40.0391 27.2107 40.4142 27.5858C40.7893 27.9609 41 28.4696 41 29C41 29.5304 40.7893 30.0391 40.4142 30.4142C40.0391 30.7893 39.5304 31 39 31H38.91C38.5882 31.0013 38.2738 31.0966 38.0055 31.2743C37.7372 31.452 37.5268 31.7042 37.4 32Z\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_5221_60143\" x=\"0\" y=\"0\" width=\"60\" height=\"60\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_5221_60143\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_5221_60143\" result=\"shape\" />\r\n </filter>\r\n <clipPath id=\"clip0_5221_60143\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\"\r\n transform=\"translate(18 17)\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute end-0 z-1\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification)\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n</div> -->\r\n\r\n\r\n\r\n\r\n<div class=\"row mb-5\">\r\n <div class=\"col-md-3\">\r\n <div class=\"card h-100\">\r\n <div class=\"m-0 w-100\">\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/brand-detail\" routerLinkActive=\"active\"\r\n [routerLinkActiveOptions]=\"{exact: true}\" #BR=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"BR.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <g clip-path=\"url(#clip0_1842_19728)\">\r\n <path [ngClass]=\" BR.isActive ? 'fillpath' : ''\"\r\n d=\"M2.625 24C1.92881 24 1.26113 23.7234 0.768845 23.2312C0.276562 22.7389 0 22.0712 0 21.375L0 2.625C0 1.176 1.176 0 2.625 0H15.375C16.824 0 18 1.176 18 2.625V21.375C18 21.5025 17.991 21.627 17.973 21.75H21.375C21.4745 21.75 21.5698 21.7105 21.6402 21.6402C21.7105 21.5698 21.75 21.4745 21.75 21.375V12.4275C21.75 12.3658 21.7349 12.3051 21.7058 12.2506C21.6768 12.1962 21.6348 12.1498 21.5835 12.1155L20.001 11.061C19.8781 10.9791 19.7725 10.8737 19.6903 10.751C19.6081 10.6282 19.5509 10.4905 19.5219 10.3456C19.4929 10.2008 19.4928 10.0516 19.5215 9.90669C19.5501 9.76177 19.6071 9.62392 19.689 9.501C19.7709 9.37808 19.8763 9.27251 19.999 9.19031C20.1218 9.10811 20.2595 9.05089 20.4044 9.02191C20.5492 8.99294 20.6984 8.99279 20.8433 9.02145C20.9882 9.05012 21.1261 9.10706 21.249 9.189L22.8315 10.2435C23.562 10.731 24 11.55 24 12.4275V21.375C24 22.0712 23.7234 22.7389 23.2312 23.2312C22.7389 23.7234 22.0712 24 21.375 24H16.125C16.0252 23.9999 15.9259 23.9868 15.8295 23.961C15.681 23.9865 15.5295 24 15.375 24H10.875C10.5766 24 10.2905 23.8815 10.0795 23.6705C9.86853 23.4595 9.75 23.1734 9.75 22.875V21H8.25V22.875C8.25 23.1734 8.13147 23.4595 7.9205 23.6705C7.70952 23.8815 7.42337 24 7.125 24H2.625ZM2.25 21.375C2.25 21.582 2.418 21.75 2.625 21.75H6V19.875C6 19.5766 6.11853 19.2905 6.3295 19.0795C6.54048 18.8685 6.82663 18.75 7.125 18.75H10.875C11.1734 18.75 11.4595 18.8685 11.6705 19.0795C11.8815 19.2905 12 19.5766 12 19.875V21.75H15.375C15.4745 21.75 15.5698 21.7105 15.6402 21.6402C15.7105 21.5698 15.75 21.4745 15.75 21.375V2.625C15.75 2.52554 15.7105 2.43016 15.6402 2.35984C15.5698 2.28951 15.4745 2.25 15.375 2.25H2.625C2.52554 2.25 2.43016 2.28951 2.35984 2.35984C2.28951 2.43016 2.25 2.52554 2.25 2.625V21.375ZM5.625 9H6.375C6.67337 9 6.95952 9.11853 7.1705 9.3295C7.38147 9.54048 7.5 9.82663 7.5 10.125C7.5 10.4234 7.38147 10.7095 7.1705 10.9205C6.95952 11.1315 6.67337 11.25 6.375 11.25H5.625C5.32663 11.25 5.04048 11.1315 4.8295 10.9205C4.61853 10.7095 4.5 10.4234 4.5 10.125C4.5 9.82663 4.61853 9.54048 4.8295 9.3295C5.04048 9.11853 5.32663 9 5.625 9ZM4.5 5.625C4.5 5.32663 4.61853 5.04048 4.8295 4.8295C5.04048 4.61853 5.32663 4.5 5.625 4.5H6.375C6.67337 4.5 6.95952 4.61853 7.1705 4.8295C7.38147 5.04048 7.5 5.32663 7.5 5.625C7.5 5.92337 7.38147 6.20952 7.1705 6.4205C6.95952 6.63147 6.67337 6.75 6.375 6.75H5.625C5.32663 6.75 5.04048 6.63147 4.8295 6.4205C4.61853 6.20952 4.5 5.92337 4.5 5.625ZM10.5 10.125C10.5 9.82663 10.6185 9.54048 10.8295 9.3295C11.0405 9.11853 11.3266 9 11.625 9H12.375C12.6734 9 12.9595 9.11853 13.1705 9.3295C13.3815 9.54048 13.5 9.82663 13.5 10.125C13.5 10.4234 13.3815 10.7095 13.1705 10.9205C12.9595 11.1315 12.6734 11.25 12.375 11.25H11.625C11.3266 11.25 11.0405 11.1315 10.8295 10.9205C10.6185 10.7095 10.5 10.4234 10.5 10.125ZM11.625 4.5H12.375C12.6734 4.5 12.9595 4.61853 13.1705 4.8295C13.3815 5.04048 13.5 5.32663 13.5 5.625C13.5 5.92337 13.3815 6.20952 13.1705 6.4205C12.9595 6.63147 12.6734 6.75 12.375 6.75H11.625C11.3266 6.75 11.0405 6.63147 10.8295 6.4205C10.6185 6.20952 10.5 5.92337 10.5 5.625C10.5 5.32663 10.6185 5.04048 10.8295 4.8295C11.0405 4.61853 11.3266 4.5 11.625 4.5ZM4.5 14.625C4.5 14.3266 4.61853 14.0405 4.8295 13.8295C5.04048 13.6185 5.32663 13.5 5.625 13.5H6.375C6.67337 13.5 6.95952 13.6185 7.1705 13.8295C7.38147 14.0405 7.5 14.3266 7.5 14.625C7.5 14.9234 7.38147 15.2095 7.1705 15.4205C6.95952 15.6315 6.67337 15.75 6.375 15.75H5.625C5.32663 15.75 5.04048 15.6315 4.8295 15.4205C4.61853 15.2095 4.5 14.9234 4.5 14.625ZM11.625 13.5H12.375C12.6734 13.5 12.9595 13.6185 13.1705 13.8295C13.3815 14.0405 13.5 14.3266 13.5 14.625C13.5 14.9234 13.3815 15.2095 13.1705 15.4205C12.9595 15.6315 12.6734 15.75 12.375 15.75H11.625C11.3266 15.75 11.0405 15.6315 10.8295 15.4205C10.6185 15.2095 10.5 14.9234 10.5 14.625C10.5 14.3266 10.6185 14.0405 10.8295 13.8295C11.0405 13.6185 11.3266 13.5 11.625 13.5Z\"\r\n fill=\"#667085\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_1842_19728\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" BR.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Brand Details\r\n </div>\r\n </div>\r\n </a></div>\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/configuration\" routerLinkActive=\"active\" #CON=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"CON.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <g clip-path=\"url(#clip0_1842_19733)\">\r\n <path [ngClass]=\" CON.isActive ? 'fillstroke' : ''\"\r\n d=\"M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path [ngClass]=\" CON.isActive ? 'fillstroke' : ''\"\r\n d=\"M19.4 15C19.2669 15.3016 19.2272 15.6362 19.286 15.9606C19.3448 16.285 19.4995 16.5843 19.73 16.82L19.79 16.88C19.976 17.0657 20.1235 17.2863 20.2241 17.5291C20.3248 17.7719 20.3766 18.0322 20.3766 18.295C20.3766 18.5578 20.3248 18.8181 20.2241 19.0609C20.1235 19.3037 19.976 19.5243 19.79 19.71C19.6043 19.896 19.3837 20.0435 19.1409 20.1441C18.8981 20.2448 18.6378 20.2966 18.375 20.2966C18.1122 20.2966 17.8519 20.2448 17.6091 20.1441C17.3663 20.0435 17.1457 19.896 16.96 19.71L16.9 19.65C16.6643 19.4195 16.365 19.2648 16.0406 19.206C15.7162 19.1472 15.3816 19.1869 15.08 19.32C14.7842 19.4468 14.532 19.6572 14.3543 19.9255C14.1766 20.1938 14.0813 20.5082 14.08 20.83V21C14.08 21.5304 13.8693 22.0391 13.4942 22.4142C13.1191 22.7893 12.6104 23 12.08 23C11.5496 23 11.0409 22.7893 10.6658 22.4142C10.2907 22.0391 10.08 21.5304 10.08 21V20.91C10.0723 20.579 9.96512 20.258 9.77251 19.9887C9.5799 19.7194 9.31074 19.5143 9 19.4C8.69838 19.2669 8.36381 19.2272 8.03941 19.286C7.71502 19.3448 7.41568 19.4995 7.18 19.73L7.12 19.79C6.93425 19.976 6.71368 20.1235 6.47088 20.2241C6.22808 20.3248 5.96783 20.3766 5.705 20.3766C5.44217 20.3766 5.18192 20.3248 4.93912 20.2241C4.69632 20.1235 4.47575 19.976 4.29 19.79C4.10405 19.6043 3.95653 19.3837 3.85588 19.1409C3.75523 18.8981 3.70343 18.6378 3.70343 18.375C3.70343 18.1122 3.75523 17.8519 3.85588 17.6091C3.95653 17.3663 4.10405 17.1457 4.29 16.96L4.35 16.9C4.58054 16.6643 4.73519 16.365 4.794 16.0406C4.85282 15.7162 4.81312 15.3816 4.68 15.08C4.55324 14.7842 4.34276 14.532 4.07447 14.3543C3.80618 14.1766 3.49179 14.0813 3.17 14.08H3C2.46957 14.08 1.96086 13.8693 1.58579 13.4942C1.21071 13.1191 1 12.6104 1 12.08C1 11.5496 1.21071 11.0409 1.58579 10.6658C1.96086 10.2907 2.46957 10.08 3 10.08H3.09C3.42099 10.0723 3.742 9.96512 4.0113 9.77251C4.28059 9.5799 4.48572 9.31074 4.6 9C4.73312 8.69838 4.77282 8.36381 4.714 8.03941C4.65519 7.71502 4.50054 7.41568 4.27 7.18L4.21 7.12C4.02405 6.93425 3.87653 6.71368 3.77588 6.47088C3.67523 6.22808 3.62343 5.96783 3.62343 5.705C3.62343 5.44217 3.67523 5.18192 3.77588 4.93912C3.87653 4.69632 4.02405 4.47575 4.21 4.29C4.39575 4.10405 4.61632 3.95653 4.85912 3.85588C5.10192 3.75523 5.36217 3.70343 5.625 3.70343C5.88783 3.70343 6.14808 3.75523 6.39088 3.85588C6.63368 3.95653 6.85425 4.10405 7.04 4.29L7.1 4.35C7.33568 4.58054 7.63502 4.73519 7.95941 4.794C8.28381 4.85282 8.61838 4.81312 8.92 4.68H9C9.29577 4.55324 9.54802 4.34276 9.72569 4.07447C9.90337 3.80618 9.99872 3.49179 10 3.17V3C10 2.46957 10.2107 1.96086 10.5858 1.58579C10.9609 1.21071 11.4696 1 12 1C12.5304 1 13.0391 1.21071 13.4142 1.58579C13.7893 1.96086 14 2.46957 14 3V3.09C14.0013 3.41179 14.0966 3.72618 14.2743 3.99447C14.452 4.26276 14.7042 4.47324 15 4.6C15.3016 4.73312 15.6362 4.77282 15.9606 4.714C16.285 4.65519 16.5843 4.50054 16.82 4.27L16.88 4.21C17.0657 4.02405 17.2863 3.87653 17.5291 3.77588C17.7719 3.67523 18.0322 3.62343 18.295 3.62343C18.5578 3.62343 18.8181 3.67523 19.0609 3.77588C19.3037 3.87653 19.5243 4.02405 19.71 4.21C19.896 4.39575 20.0435 4.61632 20.1441 4.85912C20.2448 5.10192 20.2966 5.36217 20.2966 5.625C20.2966 5.88783 20.2448 6.14808 20.1441 6.39088C20.0435 6.63368 19.896 6.85425 19.71 7.04L19.65 7.1C19.4195 7.33568 19.2648 7.63502 19.206 7.95941C19.1472 8.28381 19.1869 8.61838 19.32 8.92V9C19.4468 9.29577 19.6572 9.54802 19.9255 9.72569C20.1938 9.90337 20.5082 9.99872 20.83 10H21C21.5304 10 22.0391 10.2107 22.4142 10.5858C22.7893 10.9609 23 11.4696 23 12C23 12.5304 22.7893 13.0391 22.4142 13.4142C22.0391 13.7893 21.5304 14 21 14H20.91C20.5882 14.0013 20.2738 14.0966 20.0055 14.2743C19.7372 14.452 19.5268 14.7042 19.4 15Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_1842_19733\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" CON.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">\r\n Configuration\r\n </div>\r\n </div>\r\n </a></div>\r\n <div *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/contact-directory\" routerLinkActive=\"active\"\r\n #CONDIR=\"routerLinkActive\" class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"CONDIR.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <path [ngClass]=\"CONDIR.isActive ? 'fillstroke' : ''\"\r\n d=\"M17 21V19C17 17.9391 16.5786 16.9217 15.8284 16.1716C15.0783 15.4214 14.0609 15 13 15H5C3.93913 15 2.92172 15.4214 2.17157 16.1716C1.42143 16.9217 1 17.9391 1 19V21M23 21V19C22.9993 18.1137 22.7044 17.2528 22.1614 16.5523C21.6184 15.8519 20.8581 15.3516 20 15.13M16 3.13C16.8604 3.3503 17.623 3.8507 18.1676 4.55231C18.7122 5.25392 19.0078 6.11683 19.0078 7.005C19.0078 7.89317 18.7122 8.75608 18.1676 9.45769C17.623 10.1593 16.8604 10.6597 16 10.88M13 7C13 9.20914 11.2091 11 9 11C6.79086 11 5 9.20914 5 7C5 4.79086 6.79086 3 9 3C11.2091 3 13 4.79086 13 7Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" CONDIR.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Contact\r\n Directory</div>\r\n </div>\r\n </a></div>\r\n <ng-container *ngIf=\"!billingDisabled || (gs.userAccess | async)?.userType === 'tango'\">\r\n <div class=\"mb-3\"><a routerLink=\"/manage/settings/payment-subscription\" routerLinkActive=\"active\"\r\n #sa=\"routerLinkActive\" class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"sa.isActive ? 'btn text-tab' : ''\">\r\n <div class=\" me-4\"><span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\"\r\n viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path [ngClass]=\"sa.isActive ? 'fillstroke' : ''\"\r\n d=\"M14.1755 4.22225C14.1766 2.99445 11.6731 2 8.58832 2C5.50357 2 3.00224 2.99557 3 4.22225M3 4.22225C3 5.45004 5.50133 6.44449 8.58832 6.44449C11.6753 6.44449 14.1766 5.45004 14.1766 4.22225L14.1766 12.8445M3 4.22225V17.5556C3.00112 18.7834 5.50245 19.7779 8.58832 19.7779C10.0849 19.7779 11.4361 19.5412 12.4387 19.1601M3.00112 8.66672C3.00112 9.89451 5.50245 10.889 8.58944 10.889C11.6764 10.889 14.1778 9.89451 14.1778 8.66672M12.5057 14.6946C11.4976 15.0891 10.115 15.3335 8.58832 15.3335C5.50245 15.3335 3.00112 14.3391 3.00112 13.1113M20.5272 13.4646C22.4909 15.4169 22.4909 18.5836 20.5272 20.5358C18.5635 22.4881 15.3781 22.4881 13.4144 20.5358C11.4507 18.5836 11.4507 15.4169 13.4144 13.4646C15.3781 11.5124 18.5635 11.5124 20.5272 13.4646Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n \r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column \">\r\n <div [ngClass]=\"sa.isActive ? 'text-tab' : ''\" class=\"sideheading mb-1\">Plans &\r\n Subscription</div>\r\n </div>\r\n </a></div>\r\n </ng-container>\r\n \r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/documents\" routerLinkActive=\"active\" #DOC=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"DOC.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path [ngClass]=\" DOC.isActive ? 'fillstroke' : ''\"\r\n d=\"M14 2H6C5.46957 2 4.96086 2.21071 4.58579 2.58579C4.21071 2.96086 4 3.46957 4 4V20C4 20.5304 4.21071 21.0391 4.58579 21.4142C4.96086 21.7893 5.46957 22 6 22H18C18.5304 22 19.0391 21.7893 19.4142 21.4142C19.7893 21.0391 20 20.5304 20 20V8M14 2L20 8M14 2V8H20M16 13H8M16 17H8M10 9H8\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" DOC.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Documents\r\n </div>\r\n </div>\r\n </a></div>\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/activity-logs\" routerLinkActive=\"active\" #ACT=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"ACT.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path [ngClass]=\" ACT.isActive ? 'fillstroke fillpath' : ''\"\r\n d=\"M18.1539 7.72911L18.0341 7.85239L18.1539 7.72911C17.9972 7.57686 17.7859 7.49231 17.5667 7.49231H8.7C8.48081 7.49231 8.26948 7.57686 8.11279 7.72911C7.9559 7.88155 7.86667 8.08955 7.86667 8.30769C7.86667 8.52583 7.9559 8.73383 8.11279 8.88627C8.26948 9.03853 8.48081 9.12308 8.7 9.12308H17.5667C17.7859 9.12308 17.9972 9.03853 18.1539 8.88627C18.3108 8.73383 18.4 8.52583 18.4 8.30769C18.4 8.08955 18.3108 7.88155 18.1539 7.72911ZM3.04612 4.0368C2.88924 4.18924 2.8 4.39725 2.8 4.61538C2.8 4.83352 2.88924 5.04152 3.04612 5.19397C3.20282 5.34622 3.41415 5.43077 3.63333 5.43077H6.16667C6.38585 5.43077 6.59718 5.34622 6.75388 5.19397C6.91076 5.04152 7 4.83352 7 4.61538C7 4.39725 6.91076 4.18924 6.75388 4.0368C6.59718 3.88455 6.38585 3.8 6.16667 3.8H3.63333C3.41415 3.8 3.20282 3.88455 3.04612 4.0368ZM8.11279 4.0368C7.9559 4.18924 7.86667 4.39725 7.86667 4.61538C7.86667 4.83352 7.9559 5.04152 8.11279 5.19397C8.26948 5.34622 8.48081 5.43077 8.7 5.43077H21.3667C21.5859 5.43077 21.7972 5.34622 21.9539 5.19397C22.1108 5.04152 22.2 4.83352 22.2 4.61538C22.2 4.39725 22.1108 4.18924 21.9539 4.0368C21.7972 3.88455 21.5859 3.8 21.3667 3.8H8.7C8.48081 3.8 8.26948 3.88455 8.11279 4.0368ZM3.04612 11.4214C2.88924 11.5739 2.8 11.7819 2.8 12C2.8 12.2181 2.88924 12.4261 3.04612 12.5786C3.20282 12.7308 3.41414 12.8154 3.63333 12.8154H6.16667C6.38586 12.8154 6.59718 12.7308 6.75388 12.5786C6.91076 12.4261 7 12.2181 7 12C7 11.7819 6.91076 11.5739 6.75388 11.4214C6.59718 11.2692 6.38585 11.1846 6.16667 11.1846H3.63333C3.41415 11.1846 3.20282 11.2692 3.04612 11.4214ZM8.11279 11.4214C7.9559 11.5739 7.86667 11.7819 7.86667 12C7.86667 12.2181 7.9559 12.4261 8.11279 12.5786C8.26948 12.7308 8.48081 12.8154 8.7 12.8154H21.3667C21.5859 12.8154 21.7972 12.7308 21.9539 12.5786C22.1108 12.4261 22.2 12.2181 22.2 12C22.2 11.7819 22.1108 11.5739 21.9539 11.4214C21.7972 11.2692 21.5859 11.1846 21.3667 11.1846H8.7C8.48081 11.1846 8.26948 11.2692 8.11279 11.4214ZM8.11279 15.1137C7.9559 15.2662 7.86667 15.4742 7.86667 15.6923C7.86667 15.9104 7.9559 16.1184 8.11279 16.2709C8.26948 16.4231 8.48081 16.5077 8.7 16.5077H17.5667C17.7859 16.5077 17.9972 16.4231 18.1539 16.2709C18.3108 16.1184 18.4 15.9104 18.4 15.6923C18.4 15.4742 18.3108 15.2662 18.1539 15.1137C17.9972 14.9615 17.7859 14.8769 17.5667 14.8769H8.7C8.48081 14.8769 8.26948 14.9615 8.11279 15.1137ZM3.04612 18.806C2.88924 18.9585 2.8 19.1665 2.8 19.3846C2.8 19.6028 2.88924 19.8108 3.04612 19.9632C3.20282 20.1155 3.41415 20.2 3.63333 20.2H6.16667C6.38585 20.2 6.59718 20.1155 6.75388 19.9632C6.91076 19.8108 7 19.6028 7 19.3846C7 19.1665 6.91076 18.9585 6.75388 18.806C6.59718 18.6538 6.38585 18.5692 6.16667 18.5692H3.63333C3.41415 18.5692 3.20282 18.6538 3.04612 18.806ZM8.11279 18.806C7.9559 18.9585 7.86667 19.1665 7.86667 19.3846C7.86667 19.6028 7.9559 19.8108 8.11279 19.9632C8.26948 20.1155 8.48081 20.2 8.7 20.2H21.3667C21.5859 20.2 21.7972 20.1155 21.9539 19.9632C22.1108 19.8108 22.2 19.6028 22.2 19.3846C22.2 19.1665 22.1108 18.9585 21.9539 18.806C21.7972 18.6538 21.5859 18.5692 21.3667 18.5692H8.7C8.48081 18.5692 8.26948 18.6538 8.11279 18.806Z\"\r\n fill=\"#667085\" stroke=\"#667085\" stroke-width=\"0.4\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" ACT.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Activity Log\r\n </div>\r\n </div>\r\n </a></div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <ng-container *ngIf=\"pageState$ | async as pageState\">\r\n <ng-container [ngSwitch]=\"pageState\">\r\n <ng-container *ngSwitchCase=\"'loaded'\">\r\n <router-outlet></router-outlet>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'loading'\">\r\n <div class=\"shimmer-card w-100\">\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 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>\r\n\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n </div>\r\n</div>", styles: [".sideheading{color:var(--Gray-700, #344054);font-size:16px;font-style:normal;font-weight:500;line-height:24px}.card{border-radius:8px;padding:16px;flex-direction:column;align-items:flex-start}svg .fillpath{fill:#00a3ff!important}svg .fillstroke{stroke:#00a3ff!important}.text-tab{color:var(--Primary-700, #009BF3);font-size:16px;font-style:normal;font-weight:500;line-height:24px;border-radius:6px;background:var(--Primary-50, #EAF8FF)}.shimmer-card{border-radius:10px;background:#fff}.toastcard{border-left:2px solid #00A3FF;background:#fff;box-shadow:0 4px 16px #0000001a;padding:6px 12px 6px 16px;align-items:center;gap:16px;align-self:stretch;border-radius:4px}.overflow{overflow-x:scroll}.toasttext{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:140%}.needhelp{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF);color:var(--Gray-700, #344054)!important;font-size:16px;font-weight:600!important;text-transform:capitalize}.daysleft{color:var(--Gray-800, #1D2939);font-family:Inter;font-size:16px;font-style:normal;font-weight:500;line-height:32px}.trail{color:var(--Gray-500, #667085);font-size:14px;font-weight:600;line-height:28px}.producttext{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.productitem{right:545px!important}.productdrop{margin-top:12%;left:83%;z-index:10}\n"] }]
412
+ args: [{ selector: 'lib-tango-manage-settings', template: "<!-- client request card start -->\r\n<div class=\"g-4\">\r\n <div class=\"my-2 d-flex overflow\">\r\n <div *ngFor=\"let notification of notificationDetails.notificationList;let i= index;let last = last\"\r\n [ngClass]=\"notificationDetails.notificationList?.length === 2 ? 'col-6' : (notificationDetails.notificationList?.length > 2 ? 'col-4' : 'col-12')\">\r\n <div class=\"toastcard\" [ngClass]=\"!last ? 'me-4' : ''\">\r\n <div class=\"d-flex align-items-center justify-content-between\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-30px me-5\"><span>\r\n <img src=\"./assets/tango/custompopup-Icons/danger-alert-primary.svg\" alt=\"\">\r\n </span>\r\n </div>\r\n <span class=\"toasttext d-block\">{{notification.name}}</span>\r\n </div>\r\n <div class=\"d-flex align-items-center\"\r\n *ngIf=\"notification.category === 'Trial' && notificationDetails.notificationList.length === 1&&userType ==='tango'\">\r\n <a type=\"submit\" (click)=\"approvetrial(notification,'cancel')\"\r\n class=\"btn-outline btn needhelp me-6\"><span class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" (click)=\"approvetrial(notification,'approve')\"\r\n tabindex=\"0\"\r\n class=\"btn btn-primary px-4 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n <div class=\"row mt-1\"\r\n *ngIf=\"notification.category === 'trial product' && notificationDetails.notificationList.length === 1\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"align-items-start justify-content-between daysleft my-2\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail\">\r\n Free trial</div>\r\n </div>\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"70\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n\r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n\r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\"\r\n stroke=\"#007bff\" stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n\r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\"\r\n text-anchor=\"middle\" fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n\r\n <a type=\"button\" tabindex=\"0\" (click)=\"subscribeproduct(notification,'subscription')\"\r\n class=\"btn btn-primary px-4 ng-star-inserted\"><span>Subscribe\r\n </span></a>\r\n <div class=\"position-relative\" *ngIf=\"userType==='tango'\">\r\n <div class=\"ms-5\" (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer\"><svg width=\"44\" height=\"44\"\r\n viewBox=\"0 0 44 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_14876_280367)\">\r\n <rect x=\"2\" y=\"1\" width=\"40\" height=\"40\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"39\" height=\"39\" rx=\"7.5\"\r\n stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M22.0013 21.834C22.4615 21.834 22.8346 21.4609 22.8346 21.0007C22.8346 20.5404 22.4615 20.1673 22.0013 20.1673C21.5411 20.1673 21.168 20.5404 21.168 21.0007C21.168 21.4609 21.5411 21.834 22.0013 21.834Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 16.0007C22.4615 16.0007 22.8346 15.6276 22.8346 15.1673C22.8346 14.7071 22.4615 14.334 22.0013 14.334C21.5411 14.334 21.168 14.7071 21.168 15.1673C21.168 15.6276 21.5411 16.0007 22.0013 16.0007Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 27.6673C22.4615 27.6673 22.8346 27.2942 22.8346 26.834C22.8346 26.3737 22.4615 26.0007 22.0013 26.0007C21.5411 26.0007 21.168 26.3737 21.168 26.834C21.168 27.2942 21.5411 27.6673 22.0013 27.6673Z\"\r\n 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_14876_280367\" x=\"0\" y=\"0\" width=\"44\" height=\"44\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_14876_280367\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_14876_280367\" result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg>\r\n\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute productdrop top-20 end-0\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification, 'unsubscribe')\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n <div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"d-flex my-3\"\r\n *ngIf=\"notification.category === 'Trial' && notificationDetails.notificationList.length > 1&&userType ==='tango'\"><a\r\n type=\"submit\" (click)=\"approvetrial(notification,'cancel')\"\r\n class=\"btn-outline btn needhelp w-50 me-6 mt-3\"><span class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" (click)=\"approvetrial(notification,'approve')\"\r\n tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 w-50 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n\r\n <div class=\"row mt-1\"\r\n *ngIf=\"notification.category === 'trial product' && notificationDetails.notificationList.length > 1\">\r\n <div class=\"col-lg-6 d-flex\">\r\n <div class=\"align-items-start justify-content-between daysleft my-2\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail\">\r\n Free trial</div>\r\n </div>\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"70\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n\r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n\r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#007bff\"\r\n stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n\r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\" text-anchor=\"middle\"\r\n fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n\r\n\r\n </div>\r\n <div class=\"col-lg-6 \">\r\n <div class=\"d-flex\" style=\"justify-content: end;\">\r\n <a type=\"button\" tabindex=\"0\" (click)=\"subscribeproduct(notification,'subscription')\"\r\n class=\"btn btn-primary px-4 mt-3 ng-star-inserted\"><span>Subscribe\r\n </span></a>\r\n <div class=\"position-relative\" *ngIf=\"userType==='tango'\">\r\n <div class=\"ms-5 mt-4\" (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer\"><svg width=\"44\" height=\"44\"\r\n viewBox=\"0 0 44 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_14876_280367)\">\r\n <rect x=\"2\" y=\"1\" width=\"40\" height=\"40\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"39\" height=\"39\" rx=\"7.5\"\r\n stroke=\"#D0D5DD\" />\r\n <path\r\n d=\"M22.0013 21.834C22.4615 21.834 22.8346 21.4609 22.8346 21.0007C22.8346 20.5404 22.4615 20.1673 22.0013 20.1673C21.5411 20.1673 21.168 20.5404 21.168 21.0007C21.168 21.4609 21.5411 21.834 22.0013 21.834Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 16.0007C22.4615 16.0007 22.8346 15.6276 22.8346 15.1673C22.8346 14.7071 22.4615 14.334 22.0013 14.334C21.5411 14.334 21.168 14.7071 21.168 15.1673C21.168 15.6276 21.5411 16.0007 22.0013 16.0007Z\"\r\n stroke=\"#344054\" stroke-width=\"1.67\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M22.0013 27.6673C22.4615 27.6673 22.8346 27.2942 22.8346 26.834C22.8346 26.3737 22.4615 26.0007 22.0013 26.0007C21.5411 26.0007 21.168 26.3737 21.168 26.834C21.168 27.2942 21.5411 27.6673 22.0013 27.6673Z\"\r\n 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_14876_280367\" x=\"0\" y=\"0\" width=\"44\" height=\"44\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_14876_280367\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_14876_280367\" result=\"shape\" />\r\n </filter>\r\n </defs>\r\n </svg>\r\n\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute mt-17 z-1\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification, 'unsubscribe')\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- <div [ngClass]=\"{\r\n 'col-md-4': type === 'trail',\r\n 'col-md-6': type !== 'trail',\r\n 'col-12': type === 'trail'\r\n }\" class=\"col-md-4 mb-5\">\r\n <div class=\"toastcard\">\r\n <div class=\"d-flex align-items-center\">\r\n <div class=\"symbol symbol-30px me-5\"><span>\r\n <img src=\"./assets/tango/custompopup-Icons/danger-alert-primary.svg\" alt=\"\">\r\n </span>\r\n </div>\r\n <span class=\"toasttext d-block\">Client has Requested Tango Zone </span>\r\n </div>\r\n <div class=\"d-flex mb-2\"><a type=\"submit\" class=\"btn-outline btn needhelp w-50 me-6 mt-3\"><span\r\n class=\"mt-6\">Skip\r\n Trial</span></a><a type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 w-50 ng-star-inserted\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n </div>\r\n </div> -->\r\n</div>\r\n<!-- client request card end -->\r\n\r\n<!-- <div class=\"row gx-4 mb-4\">\r\n <div class=\"col-xl-6\" [ngClass]=\"i > 1? 'mt-5' : ''\"\r\n *ngFor=\"let notification of notificationDetails.notificationList;let i= index;\">\r\n <div class=\"billingcard h-xl-100 flex-row flex-stack flex-wrap mb-6 px-6\">\r\n <div class=\"d-flex flex-column mt-10\" *ngIf=\"notification.category === 'Trial'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n {{notification.name}} <span class=\"badge-light-grey ms-2\">{{currentPlan |\r\n titlecase}}</span>\r\n </div>\r\n <div class=\"subtext\">Kindly make necessary action for trial\r\n request or skip product to subscription list</div>\r\n\r\n <div data-kt-subscription-table-toolbar=\"base\" class=\"d-flex mt-15\"><a\r\n (click)=\"approvetrial(notification,'cancel')\" type=\"submit\"\r\n class=\"btn-outline btn needhelp me-6 mt-3\"><span class=\"mt-6\">Skip Trial</span></a><a\r\n (click)=\"approvetrial(notification,'approve')\" type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-primary px-4 mt-3 ng-star-inserted\"\r\n *ngIf=\"(gs.userAccess | async)?.settings_paymentSubscriptions_isEdit\"><span>Approve\r\n Trial\r\n </span></a></div>\r\n </div>\r\n <div class=\"d-flex flex-column mt-11\" *ngIf=\"notification.category === 'unsubscribe'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n Unsubscribe Request\r\n </div>\r\n <div class=\"subtext\">Client has requested to unsubscribe\r\n <span class=\"subtextbold\">Tango Suite</span>\r\n </div>\r\n\r\n <div data-kt-subscription-table-toolbar=\"base\" class=\"d-flex mt-20\"><a type=\"submit\"\r\n class=\"btn-outline btn needhelp me-6 mt-3\"\r\n (click)=\"cancelUnsubscribe(notification,'cancel')\"><span class=\"mt-6\">Cancel</span></a><a\r\n (click)=\"approveUnsubscribe(notification,'unsubscribe')\" type=\"button\" tabindex=\"0\"\r\n class=\"btn btn-danger px-4 mt-3 ng-star-inserted\"\r\n *ngIf=\"(gs.userAccess | async)?.settings_paymentSubscriptions_isEdit\"><span>Approve\r\n </span></a></div>\r\n </div>\r\n <div class=\"d-flex flex-column mt-10\" *ngIf=\"notification.category === 'trial product'\">\r\n <div class=\"d-flex align-items-center justify-content-between levelviewtext mb-2\">\r\n {{notification.name}} <span class=\"badge-light-grey ms-2\">{{currentPlan |\r\n titlecase}}</span>\r\n </div>\r\n <div class=\"subtext\">You will not be billed during your free\r\n <span class=\"subtextbold\">trial</span>.To keep your\r\n projects running after the trial end, upgrade to a paid\r\n option.\r\n </div>\r\n <div class=\"row mt-7\">\r\n <div class=\"col-lg-8 d-flex\">\r\n <div><svg id=\"circle-chart\" width=\"94\" height=\"94\" viewBox=\"0 0 100 100\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n \r\n <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#f0f0f0\" stroke-width=\"8\">\r\n </circle>\r\n \r\n <circle id=\"progress-circle-{{i}}\" cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#007bff\"\r\n stroke-width=\"8\" stroke-dasharray=\"251.2\"\r\n [attr.stroke-dashoffset]=\"updateCircleChart(notification.percentage,i)\">\r\n </circle>\r\n \r\n <text id=\"percentage-text-{{i}}\" x=\"50\" y=\"54\" class=\"producttext\" text-anchor=\"middle\"\r\n fill=\"#333333\">{{notification.percentage}}%</text>\r\n </svg></div>\r\n <div class=\"align-items-start justify-content-between daysleft ms-6 mt-3\">\r\n {{notification.day}} Days Left\r\n <div class=\"align-items-start trail mt-4 me-16\">\r\n Free trial</div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"col-lg-4 mt-6\">\r\n <div class=\"position-relative\">\r\n <div (click)=\"producttrailDropdown($event,i)\">\r\n <span class=\"justify-content-end cursor-pointer ms-20\"><svg width=\"60\" height=\"60\"\r\n viewBox=\"0 0 60 60\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <g filter=\"url(#filter0_d_5221_60143)\">\r\n <rect x=\"2\" y=\"1\" width=\"56\" height=\"56\" rx=\"8\" fill=\"white\" />\r\n <rect x=\"2.5\" y=\"1.5\" width=\"55\" height=\"55\" rx=\"7.5\" stroke=\"#D0D5DD\" />\r\n <g clip-path=\"url(#clip0_5221_60143)\">\r\n <path\r\n d=\"M30 32C31.6569 32 33 30.6569 33 29C33 27.3431 31.6569 26 30 26C28.3431 26 27 27.3431 27 29C27 30.6569 28.3431 32 30 32Z\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path\r\n d=\"M37.4 32C37.2669 32.3016 37.2272 32.6362 37.286 32.9606C37.3448 33.285 37.4995 33.5843 37.73 33.82L37.79 33.88C37.976 34.0657 38.1235 34.2863 38.2241 34.5291C38.3248 34.7719 38.3766 35.0322 38.3766 35.295C38.3766 35.5578 38.3248 35.8181 38.2241 36.0609C38.1235 36.3037 37.976 36.5243 37.79 36.71C37.6043 36.896 37.3837 37.0435 37.1409 37.1441C36.8981 37.2448 36.6378 37.2966 36.375 37.2966C36.1122 37.2966 35.8519 37.2448 35.6091 37.1441C35.3663 37.0435 35.1457 36.896 34.96 36.71L34.9 36.65C34.6643 36.4195 34.365 36.2648 34.0406 36.206C33.7162 36.1472 33.3816 36.1869 33.08 36.32C32.7842 36.4468 32.532 36.6572 32.3543 36.9255C32.1766 37.1938 32.0813 37.5082 32.08 37.83V38C32.08 38.5304 31.8693 39.0391 31.4942 39.4142C31.1191 39.7893 30.6104 40 30.08 40C29.5496 40 29.0409 39.7893 28.6658 39.4142C28.2907 39.0391 28.08 38.5304 28.08 38V37.91C28.0723 37.579 27.9651 37.258 27.7725 36.9887C27.5799 36.7194 27.3107 36.5143 27 36.4C26.6984 36.2669 26.3638 36.2272 26.0394 36.286C25.715 36.3448 25.4157 36.4995 25.18 36.73L25.12 36.79C24.9343 36.976 24.7137 37.1235 24.4709 37.2241C24.2281 37.3248 23.9678 37.3766 23.705 37.3766C23.4422 37.3766 23.1819 37.3248 22.9391 37.2241C22.6963 37.1235 22.4757 36.976 22.29 36.79C22.104 36.6043 21.9565 36.3837 21.8559 36.1409C21.7552 35.8981 21.7034 35.6378 21.7034 35.375C21.7034 35.1122 21.7552 34.8519 21.8559 34.6091C21.9565 34.3663 22.104 34.1457 22.29 33.96L22.35 33.9C22.5805 33.6643 22.7352 33.365 22.794 33.0406C22.8528 32.7162 22.8131 32.3816 22.68 32.08C22.5532 31.7842 22.3428 31.532 22.0745 31.3543C21.8062 31.1766 21.4918 31.0813 21.17 31.08H21C20.4696 31.08 19.9609 30.8693 19.5858 30.4942C19.2107 30.1191 19 29.6104 19 29.08C19 28.5496 19.2107 28.0409 19.5858 27.6658C19.9609 27.2907 20.4696 27.08 21 27.08H21.09C21.421 27.0723 21.742 26.9651 22.0113 26.7725C22.2806 26.5799 22.4857 26.3107 22.6 26C22.7331 25.6984 22.7728 25.3638 22.714 25.0394C22.6552 24.715 22.5005 24.4157 22.27 24.18L22.21 24.12C22.024 23.9343 21.8765 23.7137 21.7759 23.4709C21.6752 23.2281 21.6234 22.9678 21.6234 22.705C21.6234 22.4422 21.6752 22.1819 21.7759 21.9391C21.8765 21.6963 22.024 21.4757 22.21 21.29C22.3957 21.104 22.6163 20.9565 22.8591 20.8559C23.1019 20.7552 23.3622 20.7034 23.625 20.7034C23.8878 20.7034 24.1481 20.7552 24.3909 20.8559C24.6337 20.9565 24.8543 21.104 25.04 21.29L25.1 21.35C25.3357 21.5805 25.635 21.7352 25.9594 21.794C26.2838 21.8528 26.6184 21.8131 26.92 21.68H27C27.2958 21.5532 27.548 21.3428 27.7257 21.0745C27.9034 20.8062 27.9987 20.4918 28 20.17V20C28 19.4696 28.2107 18.9609 28.5858 18.5858C28.9609 18.2107 29.4696 18 30 18C30.5304 18 31.0391 18.2107 31.4142 18.5858C31.7893 18.9609 32 19.4696 32 20V20.09C32.0013 20.4118 32.0966 20.7262 32.2743 20.9945C32.452 21.2628 32.7042 21.4732 33 21.6C33.3016 21.7331 33.6362 21.7728 33.9606 21.714C34.285 21.6552 34.5843 21.5005 34.82 21.27L34.88 21.21C35.0657 21.024 35.2863 20.8765 35.5291 20.7759C35.7719 20.6752 36.0322 20.6234 36.295 20.6234C36.5578 20.6234 36.8181 20.6752 37.0609 20.7759C37.3037 20.8765 37.5243 21.024 37.71 21.21C37.896 21.3957 38.0435 21.6163 38.1441 21.8591C38.2448 22.1019 38.2966 22.3622 38.2966 22.625C38.2966 22.8878 38.2448 23.1481 38.1441 23.3909C38.0435 23.6337 37.896 23.8543 37.71 24.04L37.65 24.1C37.4195 24.3357 37.2648 24.635 37.206 24.9594C37.1472 25.2838 37.1869 25.6184 37.32 25.92V26C37.4468 26.2958 37.6572 26.548 37.9255 26.7257C38.1938 26.9034 38.5082 26.9987 38.83 27H39C39.5304 27 40.0391 27.2107 40.4142 27.5858C40.7893 27.9609 41 28.4696 41 29C41 29.5304 40.7893 30.0391 40.4142 30.4142C40.0391 30.7893 39.5304 31 39 31H38.91C38.5882 31.0013 38.2738 31.0966 38.0055 31.2743C37.7372 31.452 37.5268 31.7042 37.4 32Z\"\r\n stroke=\"#344054\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <filter id=\"filter0_d_5221_60143\" x=\"0\" y=\"0\" width=\"60\" height=\"60\"\r\n filterUnits=\"userSpaceOnUse\" 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\"\r\n 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\"\r\n result=\"effect1_dropShadow_5221_60143\" />\r\n <feBlend mode=\"normal\" in=\"SourceGraphic\"\r\n in2=\"effect1_dropShadow_5221_60143\" result=\"shape\" />\r\n </filter>\r\n <clipPath id=\"clip0_5221_60143\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\"\r\n transform=\"translate(18 17)\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div *ngIf=\"notification.producttraildropDown\"\r\n class=\"card py-2 w-200px position-absolute end-0 z-1\">\r\n <ul *ngFor=\"let producttrailitem of producttrailtype\" class=\"list-unstyled mb-2\">\r\n <li class=\"producttext px-5 items cursor-pointer py-4\"\r\n (click)=\"producttrailItem(producttrailitem,notification)\">\r\n {{producttrailitem}}</li>\r\n </ul>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n </div>\r\n\r\n </div>\r\n \r\n</div> -->\r\n\r\n\r\n\r\n\r\n<div class=\"row mb-5\">\r\n <div class=\"col-md-3\">\r\n <div class=\"card h-100\">\r\n <div class=\"m-0 w-100\">\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/brand-detail\" routerLinkActive=\"active\"\r\n [routerLinkActiveOptions]=\"{exact: true}\" #BR=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"BR.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span><svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <g clip-path=\"url(#clip0_1842_19728)\">\r\n <path [ngClass]=\" BR.isActive ? 'fillpath' : ''\"\r\n d=\"M2.625 24C1.92881 24 1.26113 23.7234 0.768845 23.2312C0.276562 22.7389 0 22.0712 0 21.375L0 2.625C0 1.176 1.176 0 2.625 0H15.375C16.824 0 18 1.176 18 2.625V21.375C18 21.5025 17.991 21.627 17.973 21.75H21.375C21.4745 21.75 21.5698 21.7105 21.6402 21.6402C21.7105 21.5698 21.75 21.4745 21.75 21.375V12.4275C21.75 12.3658 21.7349 12.3051 21.7058 12.2506C21.6768 12.1962 21.6348 12.1498 21.5835 12.1155L20.001 11.061C19.8781 10.9791 19.7725 10.8737 19.6903 10.751C19.6081 10.6282 19.5509 10.4905 19.5219 10.3456C19.4929 10.2008 19.4928 10.0516 19.5215 9.90669C19.5501 9.76177 19.6071 9.62392 19.689 9.501C19.7709 9.37808 19.8763 9.27251 19.999 9.19031C20.1218 9.10811 20.2595 9.05089 20.4044 9.02191C20.5492 8.99294 20.6984 8.99279 20.8433 9.02145C20.9882 9.05012 21.1261 9.10706 21.249 9.189L22.8315 10.2435C23.562 10.731 24 11.55 24 12.4275V21.375C24 22.0712 23.7234 22.7389 23.2312 23.2312C22.7389 23.7234 22.0712 24 21.375 24H16.125C16.0252 23.9999 15.9259 23.9868 15.8295 23.961C15.681 23.9865 15.5295 24 15.375 24H10.875C10.5766 24 10.2905 23.8815 10.0795 23.6705C9.86853 23.4595 9.75 23.1734 9.75 22.875V21H8.25V22.875C8.25 23.1734 8.13147 23.4595 7.9205 23.6705C7.70952 23.8815 7.42337 24 7.125 24H2.625ZM2.25 21.375C2.25 21.582 2.418 21.75 2.625 21.75H6V19.875C6 19.5766 6.11853 19.2905 6.3295 19.0795C6.54048 18.8685 6.82663 18.75 7.125 18.75H10.875C11.1734 18.75 11.4595 18.8685 11.6705 19.0795C11.8815 19.2905 12 19.5766 12 19.875V21.75H15.375C15.4745 21.75 15.5698 21.7105 15.6402 21.6402C15.7105 21.5698 15.75 21.4745 15.75 21.375V2.625C15.75 2.52554 15.7105 2.43016 15.6402 2.35984C15.5698 2.28951 15.4745 2.25 15.375 2.25H2.625C2.52554 2.25 2.43016 2.28951 2.35984 2.35984C2.28951 2.43016 2.25 2.52554 2.25 2.625V21.375ZM5.625 9H6.375C6.67337 9 6.95952 9.11853 7.1705 9.3295C7.38147 9.54048 7.5 9.82663 7.5 10.125C7.5 10.4234 7.38147 10.7095 7.1705 10.9205C6.95952 11.1315 6.67337 11.25 6.375 11.25H5.625C5.32663 11.25 5.04048 11.1315 4.8295 10.9205C4.61853 10.7095 4.5 10.4234 4.5 10.125C4.5 9.82663 4.61853 9.54048 4.8295 9.3295C5.04048 9.11853 5.32663 9 5.625 9ZM4.5 5.625C4.5 5.32663 4.61853 5.04048 4.8295 4.8295C5.04048 4.61853 5.32663 4.5 5.625 4.5H6.375C6.67337 4.5 6.95952 4.61853 7.1705 4.8295C7.38147 5.04048 7.5 5.32663 7.5 5.625C7.5 5.92337 7.38147 6.20952 7.1705 6.4205C6.95952 6.63147 6.67337 6.75 6.375 6.75H5.625C5.32663 6.75 5.04048 6.63147 4.8295 6.4205C4.61853 6.20952 4.5 5.92337 4.5 5.625ZM10.5 10.125C10.5 9.82663 10.6185 9.54048 10.8295 9.3295C11.0405 9.11853 11.3266 9 11.625 9H12.375C12.6734 9 12.9595 9.11853 13.1705 9.3295C13.3815 9.54048 13.5 9.82663 13.5 10.125C13.5 10.4234 13.3815 10.7095 13.1705 10.9205C12.9595 11.1315 12.6734 11.25 12.375 11.25H11.625C11.3266 11.25 11.0405 11.1315 10.8295 10.9205C10.6185 10.7095 10.5 10.4234 10.5 10.125ZM11.625 4.5H12.375C12.6734 4.5 12.9595 4.61853 13.1705 4.8295C13.3815 5.04048 13.5 5.32663 13.5 5.625C13.5 5.92337 13.3815 6.20952 13.1705 6.4205C12.9595 6.63147 12.6734 6.75 12.375 6.75H11.625C11.3266 6.75 11.0405 6.63147 10.8295 6.4205C10.6185 6.20952 10.5 5.92337 10.5 5.625C10.5 5.32663 10.6185 5.04048 10.8295 4.8295C11.0405 4.61853 11.3266 4.5 11.625 4.5ZM4.5 14.625C4.5 14.3266 4.61853 14.0405 4.8295 13.8295C5.04048 13.6185 5.32663 13.5 5.625 13.5H6.375C6.67337 13.5 6.95952 13.6185 7.1705 13.8295C7.38147 14.0405 7.5 14.3266 7.5 14.625C7.5 14.9234 7.38147 15.2095 7.1705 15.4205C6.95952 15.6315 6.67337 15.75 6.375 15.75H5.625C5.32663 15.75 5.04048 15.6315 4.8295 15.4205C4.61853 15.2095 4.5 14.9234 4.5 14.625ZM11.625 13.5H12.375C12.6734 13.5 12.9595 13.6185 13.1705 13.8295C13.3815 14.0405 13.5 14.3266 13.5 14.625C13.5 14.9234 13.3815 15.2095 13.1705 15.4205C12.9595 15.6315 12.6734 15.75 12.375 15.75H11.625C11.3266 15.75 11.0405 15.6315 10.8295 15.4205C10.6185 15.2095 10.5 14.9234 10.5 14.625C10.5 14.3266 10.6185 14.0405 10.8295 13.8295C11.0405 13.6185 11.3266 13.5 11.625 13.5Z\"\r\n fill=\"#667085\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_1842_19728\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" BR.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Brand Details\r\n </div>\r\n </div>\r\n </a></div>\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/configuration\" routerLinkActive=\"active\" #CON=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"CON.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <g clip-path=\"url(#clip0_1842_19733)\">\r\n <path [ngClass]=\" CON.isActive ? 'fillstroke' : ''\"\r\n d=\"M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n <path [ngClass]=\" CON.isActive ? 'fillstroke' : ''\"\r\n d=\"M19.4 15C19.2669 15.3016 19.2272 15.6362 19.286 15.9606C19.3448 16.285 19.4995 16.5843 19.73 16.82L19.79 16.88C19.976 17.0657 20.1235 17.2863 20.2241 17.5291C20.3248 17.7719 20.3766 18.0322 20.3766 18.295C20.3766 18.5578 20.3248 18.8181 20.2241 19.0609C20.1235 19.3037 19.976 19.5243 19.79 19.71C19.6043 19.896 19.3837 20.0435 19.1409 20.1441C18.8981 20.2448 18.6378 20.2966 18.375 20.2966C18.1122 20.2966 17.8519 20.2448 17.6091 20.1441C17.3663 20.0435 17.1457 19.896 16.96 19.71L16.9 19.65C16.6643 19.4195 16.365 19.2648 16.0406 19.206C15.7162 19.1472 15.3816 19.1869 15.08 19.32C14.7842 19.4468 14.532 19.6572 14.3543 19.9255C14.1766 20.1938 14.0813 20.5082 14.08 20.83V21C14.08 21.5304 13.8693 22.0391 13.4942 22.4142C13.1191 22.7893 12.6104 23 12.08 23C11.5496 23 11.0409 22.7893 10.6658 22.4142C10.2907 22.0391 10.08 21.5304 10.08 21V20.91C10.0723 20.579 9.96512 20.258 9.77251 19.9887C9.5799 19.7194 9.31074 19.5143 9 19.4C8.69838 19.2669 8.36381 19.2272 8.03941 19.286C7.71502 19.3448 7.41568 19.4995 7.18 19.73L7.12 19.79C6.93425 19.976 6.71368 20.1235 6.47088 20.2241C6.22808 20.3248 5.96783 20.3766 5.705 20.3766C5.44217 20.3766 5.18192 20.3248 4.93912 20.2241C4.69632 20.1235 4.47575 19.976 4.29 19.79C4.10405 19.6043 3.95653 19.3837 3.85588 19.1409C3.75523 18.8981 3.70343 18.6378 3.70343 18.375C3.70343 18.1122 3.75523 17.8519 3.85588 17.6091C3.95653 17.3663 4.10405 17.1457 4.29 16.96L4.35 16.9C4.58054 16.6643 4.73519 16.365 4.794 16.0406C4.85282 15.7162 4.81312 15.3816 4.68 15.08C4.55324 14.7842 4.34276 14.532 4.07447 14.3543C3.80618 14.1766 3.49179 14.0813 3.17 14.08H3C2.46957 14.08 1.96086 13.8693 1.58579 13.4942C1.21071 13.1191 1 12.6104 1 12.08C1 11.5496 1.21071 11.0409 1.58579 10.6658C1.96086 10.2907 2.46957 10.08 3 10.08H3.09C3.42099 10.0723 3.742 9.96512 4.0113 9.77251C4.28059 9.5799 4.48572 9.31074 4.6 9C4.73312 8.69838 4.77282 8.36381 4.714 8.03941C4.65519 7.71502 4.50054 7.41568 4.27 7.18L4.21 7.12C4.02405 6.93425 3.87653 6.71368 3.77588 6.47088C3.67523 6.22808 3.62343 5.96783 3.62343 5.705C3.62343 5.44217 3.67523 5.18192 3.77588 4.93912C3.87653 4.69632 4.02405 4.47575 4.21 4.29C4.39575 4.10405 4.61632 3.95653 4.85912 3.85588C5.10192 3.75523 5.36217 3.70343 5.625 3.70343C5.88783 3.70343 6.14808 3.75523 6.39088 3.85588C6.63368 3.95653 6.85425 4.10405 7.04 4.29L7.1 4.35C7.33568 4.58054 7.63502 4.73519 7.95941 4.794C8.28381 4.85282 8.61838 4.81312 8.92 4.68H9C9.29577 4.55324 9.54802 4.34276 9.72569 4.07447C9.90337 3.80618 9.99872 3.49179 10 3.17V3C10 2.46957 10.2107 1.96086 10.5858 1.58579C10.9609 1.21071 11.4696 1 12 1C12.5304 1 13.0391 1.21071 13.4142 1.58579C13.7893 1.96086 14 2.46957 14 3V3.09C14.0013 3.41179 14.0966 3.72618 14.2743 3.99447C14.452 4.26276 14.7042 4.47324 15 4.6C15.3016 4.73312 15.6362 4.77282 15.9606 4.714C16.285 4.65519 16.5843 4.50054 16.82 4.27L16.88 4.21C17.0657 4.02405 17.2863 3.87653 17.5291 3.77588C17.7719 3.67523 18.0322 3.62343 18.295 3.62343C18.5578 3.62343 18.8181 3.67523 19.0609 3.77588C19.3037 3.87653 19.5243 4.02405 19.71 4.21C19.896 4.39575 20.0435 4.61632 20.1441 4.85912C20.2448 5.10192 20.2966 5.36217 20.2966 5.625C20.2966 5.88783 20.2448 6.14808 20.1441 6.39088C20.0435 6.63368 19.896 6.85425 19.71 7.04L19.65 7.1C19.4195 7.33568 19.2648 7.63502 19.206 7.95941C19.1472 8.28381 19.1869 8.61838 19.32 8.92V9C19.4468 9.29577 19.6572 9.54802 19.9255 9.72569C20.1938 9.90337 20.5082 9.99872 20.83 10H21C21.5304 10 22.0391 10.2107 22.4142 10.5858C22.7893 10.9609 23 11.4696 23 12C23 12.5304 22.7893 13.0391 22.4142 13.4142C22.0391 13.7893 21.5304 14 21 14H20.91C20.5882 14.0013 20.2738 14.0966 20.0055 14.2743C19.7372 14.452 19.5268 14.7042 19.4 15Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_1842_19733\">\r\n <rect width=\"24\" height=\"24\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" CON.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">\r\n Configuration\r\n </div>\r\n </div>\r\n </a></div>\r\n <div *ngIf=\"(gs.userAccess | async)?.userType === 'tango' \" class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/contact-directory\" routerLinkActive=\"active\"\r\n #CONDIR=\"routerLinkActive\" class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"CONDIR.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\"\r\n xmlns=\"http://www.w3.org/2000/svg\">\r\n <path [ngClass]=\"CONDIR.isActive ? 'fillstroke' : ''\"\r\n d=\"M17 21V19C17 17.9391 16.5786 16.9217 15.8284 16.1716C15.0783 15.4214 14.0609 15 13 15H5C3.93913 15 2.92172 15.4214 2.17157 16.1716C1.42143 16.9217 1 17.9391 1 19V21M23 21V19C22.9993 18.1137 22.7044 17.2528 22.1614 16.5523C21.6184 15.8519 20.8581 15.3516 20 15.13M16 3.13C16.8604 3.3503 17.623 3.8507 18.1676 4.55231C18.7122 5.25392 19.0078 6.11683 19.0078 7.005C19.0078 7.89317 18.7122 8.75608 18.1676 9.45769C17.623 10.1593 16.8604 10.6597 16 10.88M13 7C13 9.20914 11.2091 11 9 11C6.79086 11 5 9.20914 5 7C5 4.79086 6.79086 3 9 3C11.2091 3 13 4.79086 13 7Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" CONDIR.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Contact\r\n Directory</div>\r\n </div>\r\n </a></div>\r\n <!-- <ng-container *ngIf=\"!billingDisabled || (gs.userAccess | async)?.userType === 'tango'\">\r\n <div class=\"mb-3\"><a routerLink=\"/manage/settings/payment-subscription\" routerLinkActive=\"active\"\r\n #sa=\"routerLinkActive\" class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"sa.isActive ? 'btn text-tab' : ''\">\r\n <div class=\" me-4\"><span><svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\"\r\n viewBox=\"0 0 24 24\" fill=\"none\">\r\n <path [ngClass]=\"sa.isActive ? 'fillstroke' : ''\"\r\n d=\"M14.1755 4.22225C14.1766 2.99445 11.6731 2 8.58832 2C5.50357 2 3.00224 2.99557 3 4.22225M3 4.22225C3 5.45004 5.50133 6.44449 8.58832 6.44449C11.6753 6.44449 14.1766 5.45004 14.1766 4.22225L14.1766 12.8445M3 4.22225V17.5556C3.00112 18.7834 5.50245 19.7779 8.58832 19.7779C10.0849 19.7779 11.4361 19.5412 12.4387 19.1601M3.00112 8.66672C3.00112 9.89451 5.50245 10.889 8.58944 10.889C11.6764 10.889 14.1778 9.89451 14.1778 8.66672M12.5057 14.6946C11.4976 15.0891 10.115 15.3335 8.58832 15.3335C5.50245 15.3335 3.00112 14.3391 3.00112 13.1113M20.5272 13.4646C22.4909 15.4169 22.4909 18.5836 20.5272 20.5358C18.5635 22.4881 15.3781 22.4881 13.4144 20.5358C11.4507 18.5836 11.4507 15.4169 13.4144 13.4646C15.3781 11.5124 18.5635 11.5124 20.5272 13.4646Z\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n \r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column \">\r\n <div [ngClass]=\"sa.isActive ? 'text-tab' : ''\" class=\"sideheading mb-1\">Plans &\r\n Subscription</div>\r\n </div>\r\n </a></div>\r\n </ng-container> -->\r\n \r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/documents\" routerLinkActive=\"active\" #DOC=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"DOC.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path [ngClass]=\" DOC.isActive ? 'fillstroke' : ''\"\r\n d=\"M14 2H6C5.46957 2 4.96086 2.21071 4.58579 2.58579C4.21071 2.96086 4 3.46957 4 4V20C4 20.5304 4.21071 21.0391 4.58579 21.4142C4.96086 21.7893 5.46957 22 6 22H18C18.5304 22 19.0391 21.7893 19.4142 21.4142C19.7893 21.0391 20 20.5304 20 20V8M14 2L20 8M14 2V8H20M16 13H8M16 17H8M10 9H8\"\r\n stroke=\"#667085\" stroke-width=\"2\" stroke-linecap=\"round\"\r\n stroke-linejoin=\"round\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" DOC.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Documents\r\n </div>\r\n </div>\r\n </a></div>\r\n <div class=\"mb-3\"><a\r\n routerLink=\"/manage/settings/activity-logs\" routerLinkActive=\"active\" #ACT=\"routerLinkActive\"\r\n class=\"custom-list d-flex align-items-center px-5 py-4\"\r\n [ngClass]=\"ACT.isActive ? 'btn text-tab' : ''\">\r\n <div class=\"me-4\"><span>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\"\r\n fill=\"none\">\r\n <path [ngClass]=\" ACT.isActive ? 'fillstroke fillpath' : ''\"\r\n d=\"M18.1539 7.72911L18.0341 7.85239L18.1539 7.72911C17.9972 7.57686 17.7859 7.49231 17.5667 7.49231H8.7C8.48081 7.49231 8.26948 7.57686 8.11279 7.72911C7.9559 7.88155 7.86667 8.08955 7.86667 8.30769C7.86667 8.52583 7.9559 8.73383 8.11279 8.88627C8.26948 9.03853 8.48081 9.12308 8.7 9.12308H17.5667C17.7859 9.12308 17.9972 9.03853 18.1539 8.88627C18.3108 8.73383 18.4 8.52583 18.4 8.30769C18.4 8.08955 18.3108 7.88155 18.1539 7.72911ZM3.04612 4.0368C2.88924 4.18924 2.8 4.39725 2.8 4.61538C2.8 4.83352 2.88924 5.04152 3.04612 5.19397C3.20282 5.34622 3.41415 5.43077 3.63333 5.43077H6.16667C6.38585 5.43077 6.59718 5.34622 6.75388 5.19397C6.91076 5.04152 7 4.83352 7 4.61538C7 4.39725 6.91076 4.18924 6.75388 4.0368C6.59718 3.88455 6.38585 3.8 6.16667 3.8H3.63333C3.41415 3.8 3.20282 3.88455 3.04612 4.0368ZM8.11279 4.0368C7.9559 4.18924 7.86667 4.39725 7.86667 4.61538C7.86667 4.83352 7.9559 5.04152 8.11279 5.19397C8.26948 5.34622 8.48081 5.43077 8.7 5.43077H21.3667C21.5859 5.43077 21.7972 5.34622 21.9539 5.19397C22.1108 5.04152 22.2 4.83352 22.2 4.61538C22.2 4.39725 22.1108 4.18924 21.9539 4.0368C21.7972 3.88455 21.5859 3.8 21.3667 3.8H8.7C8.48081 3.8 8.26948 3.88455 8.11279 4.0368ZM3.04612 11.4214C2.88924 11.5739 2.8 11.7819 2.8 12C2.8 12.2181 2.88924 12.4261 3.04612 12.5786C3.20282 12.7308 3.41414 12.8154 3.63333 12.8154H6.16667C6.38586 12.8154 6.59718 12.7308 6.75388 12.5786C6.91076 12.4261 7 12.2181 7 12C7 11.7819 6.91076 11.5739 6.75388 11.4214C6.59718 11.2692 6.38585 11.1846 6.16667 11.1846H3.63333C3.41415 11.1846 3.20282 11.2692 3.04612 11.4214ZM8.11279 11.4214C7.9559 11.5739 7.86667 11.7819 7.86667 12C7.86667 12.2181 7.9559 12.4261 8.11279 12.5786C8.26948 12.7308 8.48081 12.8154 8.7 12.8154H21.3667C21.5859 12.8154 21.7972 12.7308 21.9539 12.5786C22.1108 12.4261 22.2 12.2181 22.2 12C22.2 11.7819 22.1108 11.5739 21.9539 11.4214C21.7972 11.2692 21.5859 11.1846 21.3667 11.1846H8.7C8.48081 11.1846 8.26948 11.2692 8.11279 11.4214ZM8.11279 15.1137C7.9559 15.2662 7.86667 15.4742 7.86667 15.6923C7.86667 15.9104 7.9559 16.1184 8.11279 16.2709C8.26948 16.4231 8.48081 16.5077 8.7 16.5077H17.5667C17.7859 16.5077 17.9972 16.4231 18.1539 16.2709C18.3108 16.1184 18.4 15.9104 18.4 15.6923C18.4 15.4742 18.3108 15.2662 18.1539 15.1137C17.9972 14.9615 17.7859 14.8769 17.5667 14.8769H8.7C8.48081 14.8769 8.26948 14.9615 8.11279 15.1137ZM3.04612 18.806C2.88924 18.9585 2.8 19.1665 2.8 19.3846C2.8 19.6028 2.88924 19.8108 3.04612 19.9632C3.20282 20.1155 3.41415 20.2 3.63333 20.2H6.16667C6.38585 20.2 6.59718 20.1155 6.75388 19.9632C6.91076 19.8108 7 19.6028 7 19.3846C7 19.1665 6.91076 18.9585 6.75388 18.806C6.59718 18.6538 6.38585 18.5692 6.16667 18.5692H3.63333C3.41415 18.5692 3.20282 18.6538 3.04612 18.806ZM8.11279 18.806C7.9559 18.9585 7.86667 19.1665 7.86667 19.3846C7.86667 19.6028 7.9559 19.8108 8.11279 19.9632C8.26948 20.1155 8.48081 20.2 8.7 20.2H21.3667C21.5859 20.2 21.7972 20.1155 21.9539 19.9632C22.1108 19.8108 22.2 19.6028 22.2 19.3846C22.2 19.1665 22.1108 18.9585 21.9539 18.806C21.7972 18.6538 21.5859 18.5692 21.3667 18.5692H8.7C8.48081 18.5692 8.26948 18.6538 8.11279 18.806Z\"\r\n fill=\"#667085\" stroke=\"#667085\" stroke-width=\"0.4\" />\r\n </svg>\r\n </span>\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <div [ngClass]=\" ACT.isActive ? ' text-tab' : ''\" class=\"sideheading mb-1\">Activity Log\r\n </div>\r\n </div>\r\n </a></div>\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-9\">\r\n <ng-container *ngIf=\"pageState$ | async as pageState\">\r\n <ng-container [ngSwitch]=\"pageState\">\r\n <ng-container *ngSwitchCase=\"'loaded'\">\r\n <router-outlet></router-outlet>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'loading'\">\r\n <div class=\"shimmer-card w-100\">\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 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>\r\n\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n </div>\r\n</div>", styles: [".sideheading{color:var(--Gray-700, #344054);font-size:16px;font-style:normal;font-weight:500;line-height:24px}.card{border-radius:8px;padding:16px;flex-direction:column;align-items:flex-start}svg .fillpath{fill:#00a3ff!important}svg .fillstroke{stroke:#00a3ff!important}.text-tab{color:var(--Primary-700, #009BF3);font-size:16px;font-style:normal;font-weight:500;line-height:24px;border-radius:6px;background:var(--Primary-50, #EAF8FF)}.shimmer-card{border-radius:10px;background:#fff}.toastcard{border-left:2px solid #00A3FF;background:#fff;box-shadow:0 4px 16px #0000001a;padding:6px 12px 6px 16px;align-items:center;gap:16px;align-self:stretch;border-radius:4px}.overflow{overflow-x:scroll}.toasttext{color:var(--Gray-500, #667085);font-family:Inter;font-size:14px;font-style:normal;font-weight:600;line-height:140%}.needhelp{border-radius:8px;border:1px solid var(--Gray-300, #D0D5DD);background:var(--White, #FFF);color:var(--Gray-700, #344054)!important;font-size:16px;font-weight:600!important;text-transform:capitalize}.daysleft{color:var(--Gray-800, #1D2939);font-family:Inter;font-size:16px;font-style:normal;font-weight:500;line-height:32px}.trail{color:var(--Gray-500, #667085);font-size:14px;font-weight:600;line-height:28px}.producttext{color:var(--Gray-700, #344054);font-size:14px;font-weight:500;line-height:20px}.productitem{right:545px!important}.productdrop{margin-top:12%;left:83%;z-index:10}\n"] }]
413
413
  }], ctorParameters: () => [{ type: i1.PageInfoService }, { type: i2.ClientApiService }, { type: i1.GlobalStateService }, { type: i3.PaymentSubscriptionService }, { type: i0.ChangeDetectorRef }, { type: i4.ToastService }, { type: i5.NgbModal }], propDecorators: { onDocumentClick: [{
414
414
  type: HostListener,
415
415
  args: ['document:click', ['$event']]
416
416
  }] } });
417
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFuZ28tbWFuYWdlLXNldHRpbmdzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvdGFuZ28tbWFuYWdlLXNldHRpbmdzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy90YW5nby1tYW5hZ2Utc2V0dGluZ3MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUc5RixPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHM0QsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sZ0dBQWdHLENBQUM7QUFFN0ksT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0ZBQXNGLENBQUM7QUFFOUgsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sdUZBQXVGLENBQUM7QUFDbEksT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUVBQXVFLENBQUM7Ozs7Ozs7OztBQVUzRyxNQUFNLE9BQU8sNEJBQTRCO0lBK0JuQjtJQUFtQztJQUFvQztJQUFnQztJQUErRDtJQUEwQztJQUEyQjtJQTlCL1AsVUFBVSxDQUFNO0lBQ0MsUUFBUSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFDMUMsVUFBVSxHQUFHLElBQUksZUFBZSxDQUF1QixTQUFTLENBQUMsQ0FBQztJQUNsRSxlQUFlLENBQU07SUFFckIsbUJBQW1CLEdBQVEsRUFBRSxDQUFDO0lBQzlCLFFBQVEsR0FBVyxFQUFFLENBQUM7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QUMsQ0FBQTtvQkFDSiw0Q0FBNEM7aUJBQzNDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUNELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQUMzQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBaUI7UUFDakMsbUNBQW1DO1FBQ25DLHNDQUFzQztRQUN0QyxLQUFLO1FBQ0wsd0JBQXdCO1FBQ3hCLDJCQUEyQjtRQUMzQixLQUFLO1FBQ0wsZ0NBQWdDO1FBQ2hDLG1DQUFtQztRQUNuQyxLQUFLO1FBQ0wsK0JBQStCO1FBQy9CLGtDQUFrQztRQUNsQyxLQUFLO1FBQ0wsZ0NBQWdDO1FBQ2hDLG1DQUFtQztRQUNuQyxLQUFLO1FBQ0osSUFBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUU7WUFDN0MsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQVEsRUFBQyxFQUFFO2dCQUM3RCxJQUFJLENBQUMsb0JBQW9CLEdBQUksS0FBSyxDQUFBO1lBQ25DLENBQUMsQ0FBQyxDQUFBO1NBQ0g7SUFDRixDQUFDO3dHQXZaVSw0QkFBNEI7NEZBQTVCLDRCQUE0Qix1SUNyQnpDLDhuckRBa2lCTTs7NEZEN2dCTyw0QkFBNEI7a0JBTHhDLFNBQVM7K0JBQ0UsMkJBQTJCOytRQXNZckMsZUFBZTtzQkFEZCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBHbG9iYWxTdGF0ZVNlcnZpY2UsIFBhZ2VJbmZvU2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1nbG9iYWwnO1xyXG5pbXBvcnQgeyBDbGllbnRBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY2xpZW50LWFwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9wYXltZW50LXN1YnNjcmlwdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAndGFuZ28tYXBwLXVpLXNoYXJlZCc7XHJcbmltcG9ydCB7IFVuc3Vic2NyaWJlUmVxdWVzdENvbXBvbmVudCB9IGZyb20gJy4uL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3Vuc3Vic2NyaWJlLXJlcXVlc3QvdW5zdWJzY3JpYmUtcmVxdWVzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOZ2JNb2RhbCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgVHJhaWxTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4uL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3RyYWlsLXNldHRpbmdzL3RyYWlsLXNldHRpbmdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVuc3Vic2NyaWJlcHJvZHVjdENvbXBvbmVudCB9IGZyb20gJy4uL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3Vuc3Vic2NyaWJlcHJvZHVjdC91bnN1YnNjcmliZXByb2R1Y3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3Vic2NyaWJlUmVxdWVzdENvbXBvbmVudCB9IGZyb20gJy4uL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9yZXF1ZXN0LXBvcHVwcy9zdWJzY3JpYmUtcmVxdWVzdC9zdWJzY3JpYmUtcmVxdWVzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTa2lwdHJhaWxDb21wb25lbnQgfSBmcm9tICcuLi9wYXltZW50cy1zdWJzY3JpcHRpb24vcmVxdWVzdC1wb3B1cHMvc2tpcHRyYWlsL3NraXB0cmFpbC5jb21wb25lbnQnO1xyXG5cclxuXHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItdGFuZ28tbWFuYWdlLXNldHRpbmdzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGFuZ28tbWFuYWdlLXNldHRpbmdzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdGFuZ28tbWFuYWdlLXNldHRpbmdzLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFuZ29NYW5hZ2VTZXR0aW5nc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBjbGllbnREYXRhOiBhbnk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgcGFnZVN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8J2xvYWRlZCcgfCAnbG9hZGluZyc+KCdsb2FkaW5nJyk7XHJcbiAgYmlsbGluZ0Rpc2FibGVkOiBhbnk7XHJcbiAgXHJcbiAgbm90aWZpY2F0aW9uRGV0YWlsczogYW55ID0gW107XHJcbiAgY2xpZW50SWQ6IHN0cmluZyA9ICcnO1xyXG4gIGN1cnJlbnRQbGFuOiBzdHJpbmcgPSAnZnJlZSc7XHJcbiAgZHluYW1pY0RhdGE6IGFueSA9IHtcclxuICAgIGxpbWl0OiAxMCxcclxuICAgIG9mZnNldDogMSxcclxuICAgIGNsaWVudElkOiBcIlwiLFxyXG4gICAgc2VhcmNoVmFsdWU6IFwiXCIsXHJcbiAgICBzb3J0Q29sdW1uOiAnJyxcclxuICAgIHNvcnRCeTogJycsXHJcbiAgICBwcm9kdWN0OiBbXSxcclxuICAgIHN0b3JlOiBbXSxcclxuICAgIGxvY2F0aW9uOiBbXVxyXG4gIH1cclxuICB1c2VyVHlwZTphbnkgPSAnJztcclxuICBsb2FkaW5nOmJvb2xlYW49dHJ1ZTtcclxuICBzb3J0Qnk6bnVtYmVyPTE7XHJcbiAgbm9EYXRhOmJvb2xlYW4gPWZhbHNlO1xyXG4gIHByb2R1Y3RMaXN0OiBhbnkgPSBbXTtcclxuICBjbGllbnRpbmZvOiBhbnk7XHJcbiAgcHJvZHVjdHRyYWlsdHlwZTogYW55W10gPSBbJ0V4dGVuZCBUcmlhbCcsICdDYW5jZWwgUHJvZHVjdCddO1xyXG4gIHByb2R1Y3R0cmFpbElzc3VlOiBhbnkgPSAnRXh0ZW5kIFRyaWFsJztcclxuICBwcm9kdWN0dHJhaWxkcm9wRG93bjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHR5cGU9XCJ0cmFpbFwiO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBhZ2VJbmZvOiBQYWdlSW5mb1NlcnZpY2UsIHByaXZhdGUgY2xpZW50QXBpOiBDbGllbnRBcGlTZXJ2aWNlLCBwdWJsaWMgZ3M6R2xvYmFsU3RhdGVTZXJ2aWNlLCAgcHJpdmF0ZSBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZTogUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UscHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYscHJpdmF0ZSB0b2FzdDogVG9hc3RTZXJ2aWNlLHB1YmxpYyBtb2RhbFNlcnZpY2U6IE5nYk1vZGFsLCkge1xyXG4gICAgdGhpcy5nZXRDbGllbnREYXRhKClcclxuICAgIHRoaXMuY2xpZW50QXBpLmNsaWVudEZvcm1EYXRhLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKGUpID0+IHtcclxuICAgICAgY29uc29sZS5sb2coZSlcclxuICAgICAgaWYgKGUudHlwZSA9PT0gJ3N1Ym1pdHRlZCcpIHtcclxuICAgICAgICB0aGlzLmdldENsaWVudERhdGEoKTtcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgICB0aGlzLnBhZ2VTdGF0ZSQuY29tcGxldGUoKTtcclxuXHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0UGFnZURhdGEoKVxyXG4gICAgdGhpcy5ncy5kYXRhUmFuZ2VWYWx1ZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICB0aGlzLmNsaWVudElkID0gZGF0YS5jbGllbnQ7XHJcbiAgICAgICAgdGhpcy5keW5hbWljRGF0YS5jbGllbnRJZCA9IHRoaXMuY2xpZW50SWRcclxuICAgICAgICB0aGlzLmdzLnVzZXJBY2Nlc3MucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZGF0YTphbnkpID0+IHtcclxuICAgICAgICAgIGlmKGRhdGEpIHtcclxuICAgICAgICAgICAgdGhpcy51c2VyVHlwZSA9IGRhdGEudXNlclR5cGU7XHJcbiAgICAgICAgICAgIC8vIGlmKGRhdGE/LnVzZXJUeXBlID09ICd0YW5nbycpIHtcclxuICAgICAgICAgICAgICB0aGlzLmdldFByb2R1Y3RMaXN0KCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25MaXN0KCk7ICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcblxyXG4gICAgICAgIC8vIHRoaXMuY2xpZW50QmlsbGluZ0luZm8odGhpcy5jbGllbnRJZCk7XHJcbiAgICAgICAgLy8gdGhpcy5nZXRwYXltZW50aW52b2ljZSh0aGlzLmNsaWVudElkKTtcclxuICAgICAgICAvLyB0aGlzLnBheW1lbnRpbnZvaWNlZm9ybS5kaXNhYmxlKClcclxuICAgICAgICAvLyB0aGlzLmludm9pY2VUYWJsZURhdGEoKTtcclxuICAgICAgfSBlbHNlIGlmKCFkYXRhKXtcclxuICAgICAgICBjb25zdCB1c2VyRGF0YTogYW55ID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInVzZXItaW5mb1wiKSB8fCBcInt9XCIpO1xyXG4gICAgICAgIHRoaXMuY2xpZW50SWQgPSB1c2VyRGF0YS5jbGllbnRJZDtcclxuICAgICAgICB0aGlzLmR5bmFtaWNEYXRhLmNsaWVudElkID0gdGhpcy5jbGllbnRJZFxyXG4gICAgICAgIHRoaXMuZ3MudXNlckFjY2Vzcy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChkYXRhOmFueSkgPT4ge1xyXG4gICAgICAgICAgaWYoZGF0YSkge1xyXG4gICAgICAgICAgICB0aGlzLnVzZXJUeXBlID0gZGF0YS51c2VyVHlwZTtcclxuICAgICAgICAgICAgLy8gaWYoZGF0YT8udXNlclR5cGUgPT0gJ3RhbmdvJykge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgICB0aGlzLmdldFByb2R1Y3RMaXN0KCk7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uTGlzdCgpO1xyXG4gICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuXHJcbiAgICAgICAgLy8gdGhpcy5jbGllbnRCaWxsaW5nSW5mbyh0aGlzLmNsaWVudElkKTtcclxuICAgICAgICAvLyB0aGlzLmdldHBheW1lbnRpbnZvaWNlKHRoaXMuY2xpZW50SWQpO1xyXG4gICAgICAgIC8vIHRoaXMucGF5bWVudGludm9pY2Vmb3JtLmRpc2FibGUoKVxyXG4gICAgICAgIC8vIHRoaXMuaW52b2ljZVRhYmxlRGF0YSgpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLnJlZnJlc2hTdWJzY3JpcHRpb25Ob3RpZmljYXRpb24ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZSk9PntcclxuICAgICAgaWYoZSl7XHJcbiAgICAgICAgdGhpcy5nZXRQcm9kdWN0TGlzdCgpOyAgICAgICAgXHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25MaXN0KCk7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcblxyXG5cclxuICB9XHJcblxyXG4gIHNldFBhZ2VEYXRhKCkge1xyXG4gICAgdGhpcy5wYWdlSW5mby5zZXRUaXRsZSgnU2V0dGluZ3MnKVxyXG4gICAgdGhpcy5wYWdlSW5mby5zZXREZXNjcmlwdGlvbignRWRpdCBhbmQgY29uZmlndXJlIHlvdXIgYnJhbmQgYWNjb3VudCBkZXRhaWxzJylcclxuICAgIGxldCBicmVhZGNydW1icyA6IGFueVtdPVtdO1xyXG4gIGlmICh0aGlzLmdzLnVzZXJBY2Nlc3MudmFsdWU/LnVzZXJUeXBlID09PSBcInRhbmdvXCIpIHtcclxuICAgIGJyZWFkY3J1bWJzPSAgW1xyXG4gICAgICB7XHJcbiAgICAgICAgdGl0bGU6IFwiTWFuYWdlXCIsXHJcbiAgICAgICAgcGF0aDogXCIvbWFuYWdlL2JyYW5kc1wiLFxyXG4gICAgICAgIGlzQWN0aXZlOiBmYWxzZSxcclxuICAgICAgICBpc1NlcGFyYXRvcjogZmFsc2UsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB0aXRsZTogXCJNYW5hZ2VcIixcclxuICAgICAgICBwYXRoOiBcIi9tYW5hZ2UvYnJhbmRzXCIsXHJcbiAgICAgICAgaXNBY3RpdmU6IGZhbHNlLFxyXG4gICAgICAgIGlzU2VwYXJhdG9yOiB0cnVlLFxyXG4gICAgICB9LFxyXG4gICAgXTtcclxuICB9IGVsc2UgaWYgKHRoaXMuZ3MudXNlckFjY2Vzcy52YWx1ZT8udXNlclR5cGUgPT09IFwiY2xpZW50XCIpIHtcclxuICAgIGJyZWFkY3J1bWJzPSBbXHJcbiAgICAgIHtcclxuICAgICAgICB0aXRsZTogXCJNYW5hZ2VcIixcclxuICAgICAgICBwYXRoOiBcIi9tYW5hZ2Uvc3VtbWFyeVwiLFxyXG4gICAgICAgIGlzQWN0aXZlOiBmYWxzZSxcclxuICAgICAgICBpc1NlcGFyYXRvcjogZmFsc2UsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB0aXRsZTogXCJNYW5hZ2VcIixcclxuICAgICAgICBwYXRoOiBcIi9tYW5hZ2Uvc3VtbWFyeVwiLFxyXG4gICAgICAgIGlzQWN0aXZlOiBmYWxzZSxcclxuICAgICAgICBpc1NlcGFyYXRvcjogdHJ1ZSxcclxuICAgICAgfSxcclxuICAgIF07XHJcbiAgfVxyXG4gIHRoaXMucGFnZUluZm8uc2V0QnJlYWRjcnVtYnMoYnJlYWRjcnVtYnMpO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldENsaWVudERhdGEoKSB7XHJcbiAgICB0aGlzLmNsaWVudEFwaS5jbGllbnRJZC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChlKSA9PiB7XHJcbiAgICAgIGlmIChlKSB7XHJcbiAgICAgICAgdGhpcy5wYWdlU3RhdGUkLm5leHQoJ2xvYWRpbmcnKVxyXG4gICAgICAgIHRoaXMuY2xpZW50QXBpLmdldEJyYW5kRGV0YWlscyhlKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6IChyZXMpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jbGllbnRBcGkuY2xpZW50RGF0YS5uZXh0KHJlcy5kYXRhKVxyXG4gICAgICAgICAgICAgdGhpcy5iaWxsaW5nRGlzYWJsZWQgPSByZXMuZGF0YT8uZmVhdHVyZUNvbmZpZ3MuaXNiaWxsaW5nRGlzYWJsZWQ7XHJcbiAgICAgICAgICAgIHRoaXMucGFnZVN0YXRlJC5uZXh0KCdsb2FkZWQnKVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgIH0pXHJcblxyXG4gIH1cclxuICBwcm9kdWN0dHJhaWxEcm9wZG93bihldmVudDogTW91c2VFdmVudCwgaW5kZXg6IGFueSkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLm5vdGlmaWNhdGlvbkRldGFpbHMubm90aWZpY2F0aW9uTGlzdC5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICBpdGVtLnByb2R1Y3R0cmFpbGRyb3BEb3duID0gZmFsc2U7XHJcbiAgICB9KVxyXG4gICAgdGhpcy5ub3RpZmljYXRpb25EZXRhaWxzLm5vdGlmaWNhdGlvbkxpc3RbaW5kZXhdLnByb2R1Y3R0cmFpbGRyb3BEb3duID0gIXRoaXMubm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0W2luZGV4XS5wcm9kdWN0dHJhaWxkcm9wRG93blxyXG4gIH1cclxuICBub3RpZmljYXRpb25MaXN0KCkge1xyXG4gICAgdGhpcy5ub3RpZmljYXRpb25EZXRhaWxzID0gW107XHJcbiAgICBsZXQgZGF0YSA9IHRoaXMuY2xpZW50SWQ7XHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLmdldE5vdGlmaWNhdGlvbihkYXRhKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uRGV0YWlscyA9IHJlcy5kYXRhO1xyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0LmZvckVhY2goKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICAgICAgaXRlbS5wcm9kdWN0dHJhaWxkcm9wRG93biA9IGZhbHNlO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy5jdXJyZW50UGxhbiA9IHJlcy5kYXRhLmN1cnJlbnRQbGFuO1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiBcclxuICAgYXBwcm92ZXRyaWFsKGRhdGE6IGFueSwgdHlwZTogc3RyaW5nKSB7XHJcblxyXG5cclxuICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihTa2lwdHJhaWxDb21wb25lbnQsIHtcclxuICAgICAgY2VudGVyZWQ6IHRydWUsIHNpemU6ICdtZCcsXHJcbiAgICB9KTtcclxuICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnByb2R1Y3ROYW1lID0gZGF0YS5uYW1lO1xyXG4gICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UudHlwZSA9IHR5cGU7XHJcblxyXG4gICAgbW9kYWxSZWYucmVzdWx0LnRoZW4oKHJlc3VsdCkgPT4ge1xyXG4gICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICAgIGlkOiBkYXRhLl9pZCxcclxuICAgICAgICAgIHR5cGU6IHJlc3VsdFxyXG4gICAgICAgIH0gICBcclxuICAgICAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLmFwcHJvdmVUcmlhbChwYXJhbXMpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICBpZih0eXBlID09ICdhcHByb3ZlJykgeztcclxuICAgICAgICAgICAgICB0aGlzLmdldFByb2R1Y3RMaXN0KCk7XHJcbiAgICAgICAgICAgICAgdGhpcy50b2FzdC5nZXRTdWNjZXNzVG9hc3QoYCR7ZGF0YS5uYW1lfSB0cmlhbCByZXF1ZXN0IGhhcyBiZWVuIGFwcHJvdmVkIHN1Y2Nlc3NmdWxseS5gKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmKHR5cGUgPT0gJ2NhbmNlbCcpIHtcclxuICAgICAgICAgICAgICB0aGlzLnRvYXN0LmdldEVycm9yVG9hc3QoYCR7ZGF0YS5uYW1lfSB0cmlhbCByZXF1ZXN0IGhhcyBiZWVuIHNraXBwZWQuYClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbkxpc3QoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICB9fSlcclxuICAgIFxyXG4gIH1cclxuICBnZXRQcm9kdWN0TGlzdCgpIHtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgaWQ6dGhpcy5jbGllbnRJZCxcclxuICAgICAgc29ydENvbHVtbjonc3RvcmVDb3VudCcsXHJcbiAgICAgIHNvcnRCeTp0aGlzLnNvcnRCeVxyXG4gICAgfTtcclxuICAgIHRoaXMuUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UuZ2V0UHJvZHVjdExpc3QoZGF0YSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucHJvZHVjdExpc3QgPSByZXMuZGF0YTtcclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB0aGlzLm5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH0sKGVycm9yOmFueSkgPT4ge1xyXG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgdGhpcy5ub0RhdGEgPSB0cnVlO1xyXG4gICAgfSlcclxuICB9XHJcbiAgY2FuY2VsVW5zdWJzY3JpYmUoZGF0YTogYW55LCB0eXBlOiBhbnkpIHtcclxuICAgIGxldCBwYXJhbXMgPSB7XHJcbiAgICAgIGlkOiBkYXRhLl9pZCxcclxuICAgICAgdHlwZTogdHlwZVxyXG4gICAgfVxyXG4gICAgdGhpcy5hcHByb3ZlQ2FuY2VsVW5zdWJzY3JpYmUocGFyYW1zKTtcclxuICB9XHJcblxyXG4gIGFwcHJvdmVDYW5jZWxVbnN1YnNjcmliZShkYXRhOiBhbnkpIHtcclxuICAgIHRoaXMuUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UudW5zdWJzY3JpYmVBcHByb3ZhbChkYXRhKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIGlmIChkYXRhLnR5cGUgPT0gJ3Vuc3Vic2NyaWJlJykge1xyXG4gICAgICAgICAgdGhpcy50b2FzdC5nZXRQcmltYXJ5VG9hc3QoYFVuc3Vic2NyaWJlZCBUYW5nbyBTdWl0ZSBmb3IgJHt0aGlzLmNsaWVudGluZm8uY2xpZW50TmFtZX0gc3VjY2Vzc2Z1bGx5YClcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25MaXN0KCk7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG4gIFN1YnNjcmliZShwcm9kdWN0dHJhaWx2YWx1ZTogYW55LCBkYXRhOiBhbnkpIHtcclxuICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihUcmFpbFNldHRpbmdzQ29tcG9uZW50LCB7XHJcbiAgICAgIGNlbnRlcmVkOiB0cnVlLCBzaXplOiAnbWQnLFxyXG4gICAgfSk7XHJcbiAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5zZXR0aW5nc3ZhbHVlID0gcHJvZHVjdHRyYWlsdmFsdWU7XHJcbiAgICBtb2RhbFJlZi5yZXN1bHQudGhlbigocmVzdWx0KSA9PiB7XHJcbiAgICAgIGlmIChyZXN1bHQgPT0gJ3N1YnNjcmliZWQnKSB7XHJcbiAgICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICAgIGNsaWVudElkOiB0aGlzLmNsaWVudElkLFxyXG4gICAgICAgICAgcHJvZHVjdDogW1xyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgdHlwZTogJ3N1YnNjcmlwdGlvbicsXHJcbiAgICAgICAgICAgICAgbmFtZTogZGF0YS5wcm9kdWN0XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIF1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5QYXltZW50U3Vic2NyaXB0aW9uU2VydmljZS51cGRhdGVQcm9kdWN0KHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMudG9hc3QuZ2V0U3VjY2Vzc1RvYXN0KGAke2RhdGEubmFtZX0gc3VjY2Vzc2Z1bGx5IGFkZGVkIHRvIHRoZSBwcm9kdWN0IHN1YnNjcmlwdGlvbiBsaXN0LmApO1xyXG4gICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbkxpc3QoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHN1YnNjcmliZXByb2R1Y3QoZGF0YTogYW55LHR5cGU6YW55KSB7XHJcbiAgICBjb25zdCBtb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oU3Vic2NyaWJlUmVxdWVzdENvbXBvbmVudCwge1xyXG4gICAgICBjZW50ZXJlZDogdHJ1ZSwgc2l6ZTogJ21kJyxcclxuICAgIH0pO1xyXG4gICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UucHJvZHVjdE5hbWUgPSBkYXRhLm5hbWU7XHJcbiAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS50eXBlID0gdHlwZTtcclxuXHJcbiAgICBtb2RhbFJlZi5yZXN1bHQudGhlbigocmVzdWx0KSA9PiB7XHJcbiAgICAgIGlmIChyZXN1bHQgPT0gJ3N1YnNjcmliZXByb2R1Y3QnKSB7XHJcbiAgICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICAgIGNsaWVudElkOiB0aGlzLmNsaWVudElkLFxyXG4gICAgICAgICAgcHJvZHVjdDogW1xyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgdHlwZTogdHlwZSxcclxuICAgICAgICAgICAgICBuYW1lOiBkYXRhLnByb2R1Y3RcclxuICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgXVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLnVwZGF0ZVByb2R1Y3QocGFyYW1zKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgbGV0IG1lc3NhZ2U7XHJcbiAgICAgICAgICAgIG1lc3NhZ2UgPSB0eXBlID09ICd1bnN1YnNjcmliZScgPyBgJHtkYXRhLm5hbWV9IFVuc3Vic2NyaWJlZCBzdWNjZXNzZnVsbHlgIDogYCR7ZGF0YS5uYW1lfSBzdWNjZXNzZnVsbHkgYWRkZWQgdG8gdGhlIHByb2R1Y3Qgc3Vic2NyaXB0aW9uIGxpc3QuYDtcclxuICAgICAgICAgICAgdGhpcy50b2FzdC5nZXRTdWNjZXNzVG9hc3QobWVzc2FnZSk7XHJcbiAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uTGlzdCgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlQ2lyY2xlQ2hhcnQoZGF0YTogYW55LCBpbmRleDogYW55KTogdm9pZCB7XHJcbiAgICBsZXQgaWQgPSAncHJvZ3Jlc3MtY2lyY2xlLScgKyBpbmRleDtcclxuICAgIGxldCB0ZXh0ID0gJ3BlcmNlbnRhZ2UtdGV4dC0nICsgaW5kZXg7XHJcbiAgICBjb25zdCBwcm9ncmVzc0NpcmNsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtcclxuICAgIGNvbnN0IHBlcmNlbnRhZ2VUZXh0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGV4dCk7XHJcbiAgICBpZiAocHJvZ3Jlc3NDaXJjbGUgJiYgcGVyY2VudGFnZVRleHQpIHtcclxuICAgICAgY29uc3QgY2lyY3VtZmVyZW5jZSA9IE1hdGguUEkgKiAyICogcGFyc2VGbG9hdChwcm9ncmVzc0NpcmNsZS5nZXRBdHRyaWJ1dGUoJ3InKSEpO1xyXG4gICAgICBjb25zdCBkYXNoYXJyYXkgPSBjaXJjdW1mZXJlbmNlO1xyXG4gICAgICBjb25zdCBkYXNob2Zmc2V0ID0gY2lyY3VtZmVyZW5jZSAtIChkYXRhIC8gMTAwKSAqIGNpcmN1bWZlcmVuY2U7XHJcblxyXG4gICAgICBwcm9ncmVzc0NpcmNsZS5zZXRBdHRyaWJ1dGUoJ3N0cm9rZS1kYXNoYXJyYXknLCBkYXNoYXJyYXkudG9TdHJpbmcoKSk7XHJcbiAgICAgIHByb2dyZXNzQ2lyY2xlLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLWRhc2hvZmZzZXQnLCBkYXNob2Zmc2V0LnRvU3RyaW5nKCkpO1xyXG5cclxuICAgICAgcGVyY2VudGFnZVRleHQudGV4dENvbnRlbnQgPSBgJHtkYXRhfSVgO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvZHVjdHRyYWlsSXRlbShwcm9kdWN0dHJhaWx2YWx1ZTogYW55LCBkYXRhOiBhbnksIHR5cGU6YW55KSB7XHJcblxyXG4gICAgaWYgKHByb2R1Y3R0cmFpbHZhbHVlID09ICdFeHRlbmQgVHJpYWwnKSB7XHJcbiAgICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihUcmFpbFNldHRpbmdzQ29tcG9uZW50LCB7XHJcbiAgICAgICAgY2VudGVyZWQ6IHRydWUsIHNpemU6ICdtZCcsXHJcbiAgICAgIH0pO1xyXG4gICAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5zZXR0aW5nc3ZhbHVlID0gcHJvZHVjdHRyYWlsdmFsdWU7XHJcbiAgICAgIG1vZGFsUmVmLnJlc3VsdC50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnRpdGxlID09ICd0cmlhbGV4dGVuZCcpIHtcclxuICAgICAgICAgIGxldCBwYXJhbXMgPSB7XHJcbiAgICAgICAgICAgIGNsaWVudElkOiB0aGlzLmNsaWVudElkLFxyXG4gICAgICAgICAgICBkYXlzOiByZXN1bHQuY291bnQsXHJcbiAgICAgICAgICAgIHByb2R1Y3Q6IGRhdGEucHJvZHVjdFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5QYXltZW50U3Vic2NyaXB0aW9uU2VydmljZS50cmlhbEV4dGVudEFwcHJvdmFsKHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICB0aGlzLnRvYXN0LmdldFN1Y2Nlc3NUb2FzdChgJHtkYXRhLm5hbWV9IHRyaWFsIGV4dGVuZGVkIHN1Y2Nlc3NmdWxseWApO1xyXG4gICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uTGlzdCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgfSBlbHNlIGlmIChwcm9kdWN0dHJhaWx2YWx1ZSA9PSAnQ2FuY2VsIFByb2R1Y3QnKSB7XHJcbiAgICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihVbnN1YnNjcmliZVJlcXVlc3RDb21wb25lbnQsIHtcclxuICAgICAgICBjZW50ZXJlZDogdHJ1ZSwgc2l6ZTogJ21kJyxcclxuICAgICAgfSk7XHJcbiAgICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnNldHRpbmdzdmFsdWUgPSBwcm9kdWN0dHJhaWx2YWx1ZTtcclxuICAgICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UucHJvZHVjdE5hbWUgPSBkYXRhLm5hbWU7XHJcbiAgICAgIG1vZGFsUmVmLnJlc3VsdC50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0ID09ICd1bnN1YnNjcmliZWQnKSB7XHJcbiAgICAgICAgICBsZXQgcGFyYW1zID0ge1xyXG4gICAgICAgICAgICBjbGllbnRJZDogdGhpcy5jbGllbnRJZCxcclxuICAgICAgICAgICAgcHJvZHVjdDogW1xyXG4gICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6IHR5cGUsXHJcbiAgICAgICAgICAgICAgICBuYW1lOiBkYXRhLnByb2R1Y3RcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5QYXltZW50U3Vic2NyaXB0aW9uU2VydmljZS51cGRhdGVQcm9kdWN0KHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICBsZXQgbWVzc2FnZTtcclxuICAgICAgICAgICAgICBtZXNzYWdlID0gdHlwZSA9PSAndW5zdWJzY3JpYmUnID8gYCR7ZGF0YS5uYW1lfSBVbnN1YnNjcmliZWQgc3VjY2Vzc2Z1bGx5YCA6IGAke2RhdGEubmFtZX0gc3VjY2Vzc2Z1bGx5IGFkZGVkIHRvIHRoZSBwcm9kdWN0IHN1YnNjcmlwdGlvbiBsaXN0LmA7XHJcbiAgICAgICAgICAgICAgY29uc29sZS5sb2cobWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgdGhpcy50b2FzdC5nZXRTdWNjZXNzVG9hc3QobWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25MaXN0KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgLy8gdGhpcy5zdWJzY3JpYmVwcm9kdWN0KGRhdGEsJ3Vuc3Vic2NyaWJlJylcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9kdWN0dHJhaWxJc3N1ZSA9IHByb2R1Y3R0cmFpbHZhbHVlO1xyXG4gICAgdGhpcy5wcm9kdWN0dHJhaWxkcm9wRG93biA9IGZhbHNlO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXHJcbiAgb25Eb2N1bWVudENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgLy8gIGlmICh0aGlzLnBheW1lbnR0eXBlZHJvcERvd24pIHtcclxuICAvLyAgIHRoaXMucGF5bWVudHR5cGVkcm9wRG93biA9IGZhbHNlO1xyXG4gIC8vICB9XHJcbiAgLy8gIGlmICh0aGlzLmRyb3BEb3duKSB7XHJcbiAgLy8gICB0aGlzLmRyb3BEb3duID0gZmFsc2U7XHJcbiAgLy8gIH1cclxuICAvLyAgaWYgKHRoaXMuY3VycmVuY3lkcm9wRG93bikge1xyXG4gIC8vICAgdGhpcy5jdXJyZW5jeWRyb3BEb3duID0gZmFsc2U7XHJcbiAgLy8gIH1cclxuICAvLyAgaWYgKHRoaXMuaW52b2ljZWRyb3BEb3duKSB7XHJcbiAgLy8gICB0aGlzLmludm9pY2Vkcm9wRG93biA9IGZhbHNlO1xyXG4gIC8vICB9XHJcbiAgLy8gIGlmICh0aGlzLnZpZXdwbGFuZHJvcERvd24pIHtcclxuICAvLyAgIHRoaXMudmlld3BsYW5kcm9wRG93biA9IGZhbHNlO1xyXG4gIC8vICB9XHJcbiAgIGlmKHRoaXMubm90aWZpY2F0aW9uRGV0YWlscz8ubm90aWZpY2F0aW9uTGlzdCkge1xyXG4gICAgIHRoaXMubm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0LmZvckVhY2goKGl0ZW06YW55KT0+e1xyXG4gICAgICBpdGVtLnByb2R1Y3R0cmFpbGRyb3BEb3duID0gIGZhbHNlXHJcbiAgICAgfSlcclxuICAgfVxyXG4gIH1cclxuXHJcblxyXG5cclxufVxyXG4iLCI8IS0tIGNsaWVudCByZXF1ZXN0IGNhcmQgc3RhcnQgLS0+XHJcbjxkaXYgY2xhc3M9XCJnLTRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJteS0yIGQtZmxleCBvdmVyZmxvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG5vdGlmaWNhdGlvbiBvZiBub3RpZmljYXRpb25EZXRhaWxzLm5vdGlmaWNhdGlvbkxpc3Q7bGV0IGk9IGluZGV4O2xldCBsYXN0ID0gbGFzdFwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIm5vdGlmaWNhdGlvbkRldGFpbHMubm90aWZpY2F0aW9uTGlzdD8ubGVuZ3RoID09PSAyID8gJ2NvbC02JyA6IChub3RpZmljYXRpb25EZXRhaWxzLm5vdGlmaWNhdGlvbkxpc3Q/Lmxlbmd0aCA+IDIgPyAnY29sLTQnIDogJ2NvbC0xMicpXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b2FzdGNhcmRcIiBbbmdDbGFzc109XCIhbGFzdCA/ICdtZS00JyA6ICcnXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzeW1ib2wgc3ltYm9sLTMwcHggbWUtNVwiPjxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vY3VzdG9tcG9wdXAtSWNvbnMvZGFuZ2VyLWFsZXJ0LXByaW1hcnkuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRvYXN0dGV4dCBkLWJsb2NrXCI+e3tub3RpZmljYXRpb24ubmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJub3RpZmljYXRpb24uY2F0ZWdvcnkgPT09ICdUcmlhbCcgJiYgbm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0Lmxlbmd0aCA9PT0gMSYmdXNlclR5cGUgPT09J3RhbmdvJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YSB0eXBlPVwic3VibWl0XCIgKGNsaWNrKT1cImFwcHJvdmV0cmlhbChub3RpZmljYXRpb24sJ2NhbmNlbCcpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLW91dGxpbmUgYnRuIG5lZWRoZWxwIG1lLTZcIj48c3BhbiBjbGFzcz1cIm10LTZcIj5Ta2lwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJpYWw8L3NwYW4+PC9hPjxhIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiYXBwcm92ZXRyaWFsKG5vdGlmaWNhdGlvbiwnYXBwcm92ZScpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgcHgtNCBuZy1zdGFyLWluc2VydGVkXCI+PHNwYW4+QXBwcm92ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyaWFsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9hPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibm90aWZpY2F0aW9uLmNhdGVnb3J5ID09PSAndHJpYWwgcHJvZHVjdCcgJiYgbm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0Lmxlbmd0aCA9PT0gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsaWduLWl0ZW1zLXN0YXJ0IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGRheXNsZWZ0IG15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e25vdGlmaWNhdGlvbi5kYXl9fSBEYXlzIExlZnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWxpZ24taXRlbXMtc3RhcnQgdHJhaWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRnJlZSB0cmlhbDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxzdmcgaWQ9XCJjaXJjbGUtY2hhcnRcIiB3aWR0aD1cIjk0XCIgaGVpZ2h0PVwiNzBcIiB2aWV3Qm94PVwiMCAwIDEwMCAxMDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2lyY2xlIGN4PVwiNTBcIiBjeT1cIjUwXCIgcj1cIjQwXCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCIjZjBmMGYwXCIgc3Ryb2tlLXdpZHRoPVwiOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NpcmNsZT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgaWQ9XCJwcm9ncmVzcy1jaXJjbGUte3tpfX1cIiBjeD1cIjUwXCIgY3k9XCI1MFwiIHI9XCI0MFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMDdiZmZcIiBzdHJva2Utd2lkdGg9XCI4XCIgc3Ryb2tlLWRhc2hhcnJheT1cIjI1MS4yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZS1kYXNob2Zmc2V0XT1cInVwZGF0ZUNpcmNsZUNoYXJ0KG5vdGlmaWNhdGlvbi5wZXJjZW50YWdlLGkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2lyY2xlPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRleHQgaWQ9XCJwZXJjZW50YWdlLXRleHQte3tpfX1cIiB4PVwiNTBcIiB5PVwiNTRcIiBjbGFzcz1cInByb2R1Y3R0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYW5jaG9yPVwibWlkZGxlXCIgZmlsbD1cIiMzMzMzMzNcIj57e25vdGlmaWNhdGlvbi5wZXJjZW50YWdlfX0lPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIHR5cGU9XCJidXR0b25cIiB0YWJpbmRleD1cIjBcIiAoY2xpY2spPVwic3Vic2NyaWJlcHJvZHVjdChub3RpZmljYXRpb24sJ3N1YnNjcmlwdGlvbicpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00IG5nLXN0YXItaW5zZXJ0ZWRcIj48c3Bhbj5TdWJzY3JpYmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLXJlbGF0aXZlXCIgKm5nSWY9XCJ1c2VyVHlwZT09PSd0YW5nbydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXMtNVwiIChjbGljayk9XCJwcm9kdWN0dHJhaWxEcm9wZG93bigkZXZlbnQsaSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJqdXN0aWZ5LWNvbnRlbnQtZW5kIGN1cnNvci1wb2ludGVyXCI+PHN2ZyB3aWR0aD1cIjQ0XCIgaGVpZ2h0PVwiNDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNDQgNDRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBmaWx0ZXI9XCJ1cmwoI2ZpbHRlcjBfZF8xNDg3Nl8yODAzNjcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIyXCIgeT1cIjFcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiByeD1cIjhcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMi41XCIgeT1cIjEuNVwiIHdpZHRoPVwiMzlcIiBoZWlnaHQ9XCIzOVwiIHJ4PVwiNy41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiNEMEQ1RERcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMi4wMDEzIDIxLjgzNEMyMi40NjE1IDIxLjgzNCAyMi44MzQ2IDIxLjQ2MDkgMjIuODM0NiAyMS4wMDA3QzIyLjgzNDYgMjAuNTQwNCAyMi40NjE1IDIwLjE2NzMgMjIuMDAxMyAyMC4xNjczQzIxLjU0MTEgMjAuMTY3MyAyMS4xNjggMjAuNTQwNCAyMS4xNjggMjEuMDAwN0MyMS4xNjggMjEuNDYwOSAyMS41NDExIDIxLjgzNCAyMi4wMDEzIDIxLjgzNFpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjIuMDAxMyAxNi4wMDA3QzIyLjQ2MTUgMTYuMDAwNyAyMi44MzQ2IDE1LjYyNzYgMjIuODM0NiAxNS4xNjczQzIyLjgzNDYgMTQuNzA3MSAyMi40NjE1IDE0LjMzNCAyMi4wMDEzIDE0LjMzNEMyMS41NDExIDE0LjMzNCAyMS4xNjggMTQuNzA3MSAyMS4xNjggMTUuMTY3M0MyMS4xNjggMTUuNjI3NiAyMS41NDExIDE2LjAwMDcgMjIuMDAxMyAxNi4wMDA3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMi4wMDEzIDI3LjY2NzNDMjIuNDYxNSAyNy42NjczIDIyLjgzNDYgMjcuMjk0MiAyMi44MzQ2IDI2LjgzNEMyMi44MzQ2IDI2LjM3MzcgMjIuNDYxNSAyNi4wMDA3IDIyLjAwMTMgMjYuMDAwN0MyMS41NDExIDI2LjAwMDcgMjEuMTY4IDI2LjM3MzcgMjEuMTY4IDI2LjgzNEMyMS4xNjggMjcuMjk0MiAyMS41NDExIDI3LjY2NzMgMjIuMDAxMyAyNy42NjczWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpbHRlciBpZD1cImZpbHRlcjBfZF8xNDg3Nl8yODAzNjdcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI0NFwiIGhlaWdodD1cIjQ0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlclVuaXRzPVwidXNlclNwYWNlT25Vc2VcIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9XCJzUkdCXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PVwiMFwiIHJlc3VsdD1cIkJhY2tncm91bmRJbWFnZUZpeFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCBpbj1cIlNvdXJjZUFscGhhXCIgdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdD1cImhhcmRBbHBoYVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVPZmZzZXQgZHk9XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMC4wNjI3NDUxIDAgMCAwIDAgMC4wOTQxMTc2IDAgMCAwIDAgMC4xNTY4NjMgMCAwIDAgMC4wNSAwXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbjI9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdD1cImVmZmVjdDFfZHJvcFNoYWRvd18xNDg3Nl8yODAzNjdcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQmxlbmQgbW9kZT1cIm5vcm1hbFwiIGluPVwiU291cmNlR3JhcGhpY1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4yPVwiZWZmZWN0MV9kcm9wU2hhZG93XzE0ODc2XzI4MDM2N1wiIHJlc3VsdD1cInNoYXBlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWx0ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub3RpZmljYXRpb24ucHJvZHVjdHRyYWlsZHJvcERvd25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZCBweS0yIHctMjAwcHggcG9zaXRpb24tYWJzb2x1dGUgcHJvZHVjdGRyb3AgdG9wLTIwIGVuZC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsICpuZ0Zvcj1cImxldCBwcm9kdWN0dHJhaWxpdGVtIG9mIHByb2R1Y3R0cmFpbHR5cGVcIiBjbGFzcz1cImxpc3QtdW5zdHlsZWQgbWItMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJwcm9kdWN0dGV4dCBweC01IGl0ZW1zIGN1cnNvci1wb2ludGVyIHB5LTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInByb2R1Y3R0cmFpbEl0ZW0ocHJvZHVjdHRyYWlsaXRlbSxub3RpZmljYXRpb24sICd1bnN1YnNjcmliZScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Byb2R1Y3R0cmFpbGl0ZW19fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG15LTNcIlxyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibm90aWZpY2F0aW9uLmNhdGVnb3J5ID09PSAnVHJpYWwnICYmIG5vdGlmaWNhdGlvbkRldGFpbHMubm90aWZpY2F0aW9uTGlzdC5sZW5ndGggPiAxJiZ1c2VyVHlwZSA9PT0ndGFuZ28nXCI+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInN1Ym1pdFwiIChjbGljayk9XCJhcHByb3ZldHJpYWwobm90aWZpY2F0aW9uLCdjYW5jZWwnKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLW91dGxpbmUgYnRuIG5lZWRoZWxwIHctNTAgbWUtNiBtdC0zXCI+PHNwYW4gY2xhc3M9XCJtdC02XCI+U2tpcFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJpYWw8L3NwYW4+PC9hPjxhIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiYXBwcm92ZXRyaWFsKG5vdGlmaWNhdGlvbiwnYXBwcm92ZScpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHB4LTQgbXQtMyB3LTUwIG5nLXN0YXItaW5zZXJ0ZWRcIj48c3Bhbj5BcHByb3ZlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcmlhbFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9hPjwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJub3RpZmljYXRpb24uY2F0ZWdvcnkgPT09ICd0cmlhbCBwcm9kdWN0JyAmJiBub3RpZmljYXRpb25EZXRhaWxzLm5vdGlmaWNhdGlvbkxpc3QubGVuZ3RoID4gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctNiBkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsaWduLWl0ZW1zLXN0YXJ0IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGRheXNsZWZ0IG15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7bm90aWZpY2F0aW9uLmRheX19IERheXMgTGVmdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsaWduLWl0ZW1zLXN0YXJ0IHRyYWlsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRnJlZSB0cmlhbDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48c3ZnIGlkPVwiY2lyY2xlLWNoYXJ0XCIgd2lkdGg9XCI5NFwiIGhlaWdodD1cIjcwXCIgdmlld0JveD1cIjAgMCAxMDAgMTAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgY3g9XCI1MFwiIGN5PVwiNTBcIiByPVwiNDBcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cIiNmMGYwZjBcIiBzdHJva2Utd2lkdGg9XCI4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jaXJjbGU+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgaWQ9XCJwcm9ncmVzcy1jaXJjbGUte3tpfX1cIiBjeD1cIjUwXCIgY3k9XCI1MFwiIHI9XCI0MFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiIzAwN2JmZlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjhcIiBzdHJva2UtZGFzaGFycmF5PVwiMjUxLjJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2UtZGFzaG9mZnNldF09XCJ1cGRhdGVDaXJjbGVDaGFydChub3RpZmljYXRpb24ucGVyY2VudGFnZSxpKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2lyY2xlPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGV4dCBpZD1cInBlcmNlbnRhZ2UtdGV4dC17e2l9fVwiIHg9XCI1MFwiIHk9XCI1NFwiIGNsYXNzPVwicHJvZHVjdHRleHRcIiB0ZXh0LWFuY2hvcj1cIm1pZGRsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzMzMzMzXCI+e3tub3RpZmljYXRpb24ucGVyY2VudGFnZX19JTwvdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvZGl2PlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy02IFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCIgc3R5bGU9XCJqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIHR5cGU9XCJidXR0b25cIiB0YWJpbmRleD1cIjBcIiAoY2xpY2spPVwic3Vic2NyaWJlcHJvZHVjdChub3RpZmljYXRpb24sJ3N1YnNjcmlwdGlvbicpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00IG10LTMgbmctc3Rhci1pbnNlcnRlZFwiPjxzcGFuPlN1YnNjcmliZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIiAqbmdJZj1cInVzZXJUeXBlPT09J3RhbmdvJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcy01IG10LTRcIiAoY2xpY2spPVwicHJvZHVjdHRyYWlsRHJvcGRvd24oJGV2ZW50LGkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwianVzdGlmeS1jb250ZW50LWVuZCBjdXJzb3ItcG9pbnRlclwiPjxzdmcgd2lkdGg9XCI0NFwiIGhlaWdodD1cIjQ0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDQ0IDQ0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgZmlsdGVyPVwidXJsKCNmaWx0ZXIwX2RfMTQ4NzZfMjgwMzY3KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMlwiIHk9XCIxXCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCIgcng9XCI4XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjIuNVwiIHk9XCIxLjVcIiB3aWR0aD1cIjM5XCIgaGVpZ2h0PVwiMzlcIiByeD1cIjcuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjRDBENUREXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjIuMDAxMyAyMS44MzRDMjIuNDYxNSAyMS44MzQgMjIuODM0NiAyMS40NjA5IDIyLjgzNDYgMjEuMDAwN0MyMi44MzQ2IDIwLjU0MDQgMjIuNDYxNSAyMC4xNjczIDIyLjAwMTMgMjAuMTY3M0MyMS41NDExIDIwLjE2NzMgMjEuMTY4IDIwLjU0MDQgMjEuMTY4IDIxLjAwMDdDMjEuMTY4IDIxLjQ2MDkgMjEuNTQxMSAyMS44MzQgMjIuMDAxMyAyMS44MzRaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTIyLjAwMTMgMTYuMDAwN0MyMi40NjE1IDE2LjAwMDcgMjIuODM0NiAxNS42Mjc2IDIyLjgzNDYgMTUuMTY3M0MyMi44MzQ2IDE0LjcwNzEgMjIuNDYxNSAxNC4zMzQgMjIuMDAxMyAxNC4zMzRDMjEuNTQxMSAxNC4zMzQgMjEuMTY4IDE0LjcwNzEgMjEuMTY4IDE1LjE2NzNDMjEuMTY4IDE1LjYyNzYgMjEuNTQxMSAxNi4wMDA3IDIyLjAwMTMgMTYuMDAwN1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjIuMDAxMyAyNy42NjczQzIyLjQ2MTUgMjcuNjY3MyAyMi44MzQ2IDI3LjI5NDIgMjIuODM0NiAyNi44MzRDMjIuODM0NiAyNi4zNzM3IDIyLjQ2MTUgMjYuMDAwNyAyMi4wMDEzIDI2LjAwMDdDMjEuNTQxMSAyNi4wMDA3IDIxLjE2OCAyNi4zNzM3IDIxLjE2OCAyNi44MzRDMjEuMTY4IDI3LjI5NDIgMjEuNTQxMSAyNy42NjczIDIyLjAwMTMgMjcuNjY3M1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWx0ZXIgaWQ9XCJmaWx0ZXIwX2RfMTQ4NzZfMjgwMzY3XCIgeD1cIjBcIiB5PVwiMFwiIHdpZHRoPVwiNDRcIiBoZWlnaHQ9XCI0NFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJVbml0cz1cInVzZXJTcGFjZU9uVXNlXCIgY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzPVwic1JHQlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT1cIjBcIiByZXN1bHQ9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggaW49XCJTb3VyY2VBbHBoYVwiIHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJoYXJkQWxwaGFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlT2Zmc2V0IGR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB0eXBlPVwibWF0cml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAuMDYyNzQ1MSAwIDAgMCAwIDAuMDk0MTE3NiAwIDAgMCAwIDAuMTU2ODYzIDAgMCAwIDAuMDUgMFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW4yPVwiQmFja2dyb3VuZEltYWdlRml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJlZmZlY3QxX2Ryb3BTaGFkb3dfMTQ4NzZfMjgwMzY3XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbj1cIlNvdXJjZUdyYXBoaWNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluMj1cImVmZmVjdDFfZHJvcFNoYWRvd18xNDg3Nl8yODAzNjdcIiByZXN1bHQ9XCJzaGFwZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlsdGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm90aWZpY2F0aW9uLnByb2R1Y3R0cmFpbGRyb3BEb3duXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQgcHktMiB3LTIwMHB4IHBvc2l0aW9uLWFic29sdXRlIG10LTE3IHotMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCAqbmdGb3I9XCJsZXQgcHJvZHVjdHRyYWlsaXRlbSBvZiBwcm9kdWN0dHJhaWx0eXBlXCIgY2xhc3M9XCJsaXN0LXVuc3R5bGVkIG1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJwcm9kdWN0dHJhaWxJdGVtKHByb2R1Y3R0cmFpbGl0ZW0sbm90aWZpY2F0aW9uLCAndW5zdWJzY3JpYmUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3twcm9kdWN0dHJhaWxpdGVtfX08L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPCEtLSA8ZGl2IFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgJ2NvbC1tZC00JzogdHlwZSA9PT0gJ3RyYWlsJyxcclxuICAgICAgICAgICAgJ2NvbC1tZC02JzogdHlwZSAhPT0gJ3RyYWlsJyxcclxuICAgICAgICAgICAgJ2NvbC0xMic6IHR5cGUgPT09ICd0cmFpbCdcclxuICAgICAgICAgIH1cIiBjbGFzcz1cImNvbC1tZC00IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b2FzdGNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ltYm9sIHN5bWJvbC0zMHB4IG1lLTVcIj48c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL2N1c3RvbXBvcHVwLUljb25zL2Rhbmdlci1hbGVydC1wcmltYXJ5LnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0b2FzdHRleHQgZC1ibG9ja1wiPkNsaWVudCBoYXMgUmVxdWVzdGVkIFRhbmdvIFpvbmUgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggbWItMlwiPjxhIHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImJ0bi1vdXRsaW5lIGJ0biBuZWVkaGVscCB3LTUwIG1lLTYgbXQtM1wiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtdC02XCI+U2tpcFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyaWFsPC9zcGFuPjwvYT48YSB0eXBlPVwiYnV0dG9uXCIgdGFiaW5kZXg9XCIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHB4LTQgbXQtMyB3LTUwIG5nLXN0YXItaW5zZXJ0ZWRcIj48c3Bhbj5BcHByb3ZlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJpYWxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L2E+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+ICAtLT5cclxuPC9kaXY+XHJcbjwhLS0gY2xpZW50IHJlcXVlc3QgY2FyZCBlbmQgLS0+XHJcblxyXG48IS0tIDxkaXYgY2xhc3M9XCJyb3cgZ3gtNCBtYi00XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLXhsLTZcIiBbbmdDbGFzc109XCJpID4gMT8gJ210LTUnIDogJydcIlxyXG4gICAgICAgICpuZ0Zvcj1cImxldCBub3RpZmljYXRpb24gb2Ygbm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0O2xldCBpPSBpbmRleDtcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYmlsbGluZ2NhcmQgaC14bC0xMDAgZmxleC1yb3cgZmxleC1zdGFjayBmbGV4LXdyYXAgbWItNiBweC02XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gbXQtMTBcIiAqbmdJZj1cIm5vdGlmaWNhdGlvbi5jYXRlZ29yeSA9PT0gJ1RyaWFsJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gbGV2ZWx2aWV3dGV4dCBtYi0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3tub3RpZmljYXRpb24ubmFtZX19IDxzcGFuIGNsYXNzPVwiYmFkZ2UtbGlnaHQtZ3JleSBtcy0yXCI+e3tjdXJyZW50UGxhbiB8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlY2FzZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3VidGV4dFwiPktpbmRseSBtYWtlIG5lY2Vzc2FyeSBhY3Rpb24gZm9yIHRyaWFsXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWVzdCBvciBza2lwIHByb2R1Y3QgdG8gc3Vic2NyaXB0aW9uIGxpc3Q8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGRhdGEta3Qtc3Vic2NyaXB0aW9uLXRhYmxlLXRvb2xiYXI9XCJiYXNlXCIgY2xhc3M9XCJkLWZsZXggbXQtMTVcIj48YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiYXBwcm92ZXRyaWFsKG5vdGlmaWNhdGlvbiwnY2FuY2VsJylcIiB0eXBlPVwic3VibWl0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4tb3V0bGluZSBidG4gbmVlZGhlbHAgbWUtNiBtdC0zXCI+PHNwYW4gY2xhc3M9XCJtdC02XCI+U2tpcCBUcmlhbDwvc3Bhbj48L2E+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFwcHJvdmV0cmlhbChub3RpZmljYXRpb24sJ2FwcHJvdmUnKVwiIHR5cGU9XCJidXR0b25cIiB0YWJpbmRleD1cIjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00IG10LTMgbmctc3Rhci1pbnNlcnRlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/LnNldHRpbmdzX3BheW1lbnRTdWJzY3JpcHRpb25zX2lzRWRpdFwiPjxzcGFuPkFwcHJvdmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyaWFsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L2E+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIG10LTExXCIgKm5nSWY9XCJub3RpZmljYXRpb24uY2F0ZWdvcnkgPT09ICd1bnN1YnNjcmliZSdcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGxldmVsdmlld3RleHQgbWItMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIFVuc3Vic2NyaWJlIFJlcXVlc3RcclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN1YnRleHRcIj5DbGllbnQgaGFzIHJlcXVlc3RlZCB0byB1bnN1YnNjcmliZVxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3VidGV4dGJvbGRcIj5UYW5nbyBTdWl0ZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1rdC1zdWJzY3JpcHRpb24tdGFibGUtdG9vbGJhcj1cImJhc2VcIiBjbGFzcz1cImQtZmxleCBtdC0yMFwiPjxhIHR5cGU9XCJzdWJtaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bi1vdXRsaW5lIGJ0biBuZWVkaGVscCBtZS02IG10LTNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2FuY2VsVW5zdWJzY3JpYmUobm90aWZpY2F0aW9uLCdjYW5jZWwnKVwiPjxzcGFuIGNsYXNzPVwibXQtNlwiPkNhbmNlbDwvc3Bhbj48L2E+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFwcHJvdmVVbnN1YnNjcmliZShub3RpZmljYXRpb24sJ3Vuc3Vic2NyaWJlJylcIiB0eXBlPVwiYnV0dG9uXCIgdGFiaW5kZXg9XCIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRhbmdlciBweC00IG10LTMgbmctc3Rhci1pbnNlcnRlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/LnNldHRpbmdzX3BheW1lbnRTdWJzY3JpcHRpb25zX2lzRWRpdFwiPjxzcGFuPkFwcHJvdmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvYT48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gbXQtMTBcIiAqbmdJZj1cIm5vdGlmaWNhdGlvbi5jYXRlZ29yeSA9PT0gJ3RyaWFsIHByb2R1Y3QnXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBsZXZlbHZpZXd0ZXh0IG1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICB7e25vdGlmaWNhdGlvbi5uYW1lfX0gPHNwYW4gY2xhc3M9XCJiYWRnZS1saWdodC1ncmV5IG1zLTJcIj57e2N1cnJlbnRQbGFuIHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGVjYXNlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWJ0ZXh0XCI+WW91IHdpbGwgbm90IGJlIGJpbGxlZCBkdXJpbmcgeW91ciBmcmVlXHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWJ0ZXh0Ym9sZFwiPnRyaWFsPC9zcGFuPi5UbyBrZWVwIHlvdXJcclxuICAgICAgICAgICAgICAgICAgICBwcm9qZWN0cyBydW5uaW5nIGFmdGVyIHRoZSB0cmlhbCBlbmQsIHVwZ3JhZGUgdG8gYSBwYWlkXHJcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uLlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG10LTdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTggZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PHN2ZyBpZD1cImNpcmNsZS1jaGFydFwiIHdpZHRoPVwiOTRcIiBoZWlnaHQ9XCI5NFwiIHZpZXdCb3g9XCIwIDAgMTAwIDEwMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2lyY2xlIGN4PVwiNTBcIiBjeT1cIjUwXCIgcj1cIjQwXCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCIjZjBmMGYwXCIgc3Ryb2tlLXdpZHRoPVwiOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2lyY2xlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2lyY2xlIGlkPVwicHJvZ3Jlc3MtY2lyY2xlLXt7aX19XCIgY3g9XCI1MFwiIGN5PVwiNTBcIiByPVwiNDBcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cIiMwMDdiZmZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCI4XCIgc3Ryb2tlLWRhc2hhcnJheT1cIjI1MS4yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlLWRhc2hvZmZzZXRdPVwidXBkYXRlQ2lyY2xlQ2hhcnQobm90aWZpY2F0aW9uLnBlcmNlbnRhZ2UsaSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NpcmNsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0IGlkPVwicGVyY2VudGFnZS10ZXh0LXt7aX19XCIgeD1cIjUwXCIgeT1cIjU0XCIgY2xhc3M9XCJwcm9kdWN0dGV4dFwiIHRleHQtYW5jaG9yPVwibWlkZGxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMzMzMzMzNcIj57e25vdGlmaWNhdGlvbi5wZXJjZW50YWdlfX0lPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbGlnbi1pdGVtcy1zdGFydCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBkYXlzbGVmdCBtcy02IG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7bm90aWZpY2F0aW9uLmRheX19IERheXMgTGVmdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsaWduLWl0ZW1zLXN0YXJ0IHRyYWlsIG10LTQgbWUtMTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGcmVlIHRyaWFsPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTQgbXQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKGNsaWNrKT1cInByb2R1Y3R0cmFpbERyb3Bkb3duKCRldmVudCxpKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwianVzdGlmeS1jb250ZW50LWVuZCBjdXJzb3ItcG9pbnRlciBtcy0yMFwiPjxzdmcgd2lkdGg9XCI2MFwiIGhlaWdodD1cIjYwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNjAgNjBcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGZpbHRlcj1cInVybCgjZmlsdGVyMF9kXzUyMjFfNjAxNDMpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjJcIiB5PVwiMVwiIHdpZHRoPVwiNTZcIiBoZWlnaHQ9XCI1NlwiIHJ4PVwiOFwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjIuNVwiIHk9XCIxLjVcIiB3aWR0aD1cIjU1XCIgaGVpZ2h0PVwiNTVcIiByeD1cIjcuNVwiIHN0cm9rZT1cIiNEMEQ1RERcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfNTIyMV82MDE0MylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMzAgMzJDMzEuNjU2OSAzMiAzMyAzMC42NTY5IDMzIDI5QzMzIDI3LjM0MzEgMzEuNjU2OSAyNiAzMCAyNkMyOC4zNDMxIDI2IDI3IDI3LjM0MzEgMjcgMjlDMjcgMzAuNjU2OSAyOC4zNDMxIDMyIDMwIDMyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0zNy40IDMyQzM3LjI2NjkgMzIuMzAxNiAzNy4yMjcyIDMyLjYzNjIgMzcuMjg2IDMyLjk2MDZDMzcuMzQ0OCAzMy4yODUgMzcuNDk5NSAzMy41ODQzIDM3LjczIDMzLjgyTDM3Ljc5IDMzLjg4QzM3Ljk3NiAzNC4wNjU3IDM4LjEyMzUgMzQuMjg2MyAzOC4yMjQxIDM0LjUyOTFDMzguMzI0OCAzNC43NzE5IDM4LjM3NjYgMzUuMDMyMiAzOC4zNzY2IDM1LjI5NUMzOC4zNzY2IDM1LjU1NzggMzguMzI0OCAzNS44MTgxIDM4LjIyNDEgMzYuMDYwOUMzOC4xMjM1IDM2LjMwMzcgMzcuOTc2IDM2LjUyNDMgMzcuNzkgMzYuNzFDMzcuNjA0MyAzNi44OTYgMzcuMzgzNyAzNy4wNDM1IDM3LjE0MDkgMzcuMTQ0MUMzNi44OTgxIDM3LjI0NDggMzYuNjM3OCAzNy4yOTY2IDM2LjM3NSAzNy4yOTY2QzM2LjExMjIgMzcuMjk2NiAzNS44NTE5IDM3LjI0NDggMzUuNjA5MSAzNy4xNDQxQzM1LjM2NjMgMzcuMDQzNSAzNS4xNDU3IDM2Ljg5NiAzNC45NiAzNi43MUwzNC45IDM2LjY1QzM0LjY2NDMgMzYuNDE5NSAzNC4zNjUgMzYuMjY0OCAzNC4wNDA2IDM2LjIwNkMzMy43MTYyIDM2LjE0NzIgMzMuMzgxNiAzNi4xODY5IDMzLjA4IDM2LjMyQzMyLjc4NDIgMzYuNDQ2OCAzMi41MzIgMzYuNjU3MiAzMi4zNTQzIDM2LjkyNTVDMzIuMTc2NiAzNy4xOTM4IDMyLjA4MTMgMzcuNTA4MiAzMi4wOCAzNy44M1YzOEMzMi4wOCAzOC41MzA0IDMxLjg2OTMgMzkuMDM5MSAzMS40OTQyIDM5LjQxNDJDMzEuMTE5MSAzOS43ODkzIDMwLjYxMDQgNDAgMzAuMDggNDBDMjkuNTQ5NiA0MCAyOS4wNDA5IDM5Ljc4OTMgMjguNjY1OCAzOS40MTQyQzI4LjI5MDcgMzkuMDM5MSAyOC4wOCAzOC41MzA0IDI4LjA4IDM4VjM3LjkxQzI4LjA3MjMgMzcuNTc5IDI3Ljk2NTEgMzcuMjU4IDI3Ljc3MjUgMzYuOTg4N0MyNy41Nzk5IDM2LjcxOTQgMjcuMzEwNyAzNi41MTQzIDI3IDM2LjRDMjYuNjk4NCAzNi4yNjY5IDI2LjM2MzggMzYuMjI3MiAyNi4wMzk0IDM2LjI4NkMyNS43MTUgMzYuMzQ0OCAyNS40MTU3IDM2LjQ5OTUgMjUuMTggMzYuNzNMMjUuMTIgMzYuNzlDMjQuOTM0MyAzNi45NzYgMjQuNzEzNyAzNy4xMjM1IDI0LjQ3MDkgMzcuMjI0MUMyNC4yMjgxIDM3LjMyNDggMjMuOTY3OCAzNy4zNzY2IDIzLjcwNSAzNy4zNzY2QzIzLjQ0MjIgMzcuMzc2NiAyMy4xODE5IDM3LjMyNDggMjIuOTM5MSAzNy4yMjQxQzIyLjY5NjMgMzcuMTIzNSAyMi40NzU3IDM2Ljk3NiAyMi4yOSAzNi43OUMyMi4xMDQgMzYuNjA0MyAyMS45NTY1IDM2LjM4MzcgMjEuODU1OSAzNi4xNDA5QzIxLjc1NTIgMzUuODk4MSAyMS43MDM0IDM1LjYzNzggMjEuNzAzNCAzNS4zNzVDMjEuNzAzNCAzNS4xMTIyIDIxLjc1NTIgMzQuODUxOSAyMS44NTU5IDM0LjYwOTFDMjEuOTU2NSAzNC4zNjYzIDIyLjEwNCAzNC4xNDU3IDIyLjI5IDMzLjk2TDIyLjM1IDMzLjlDMjIuNTgwNSAzMy42NjQzIDIyLjczNTIgMzMuMzY1IDIyLjc5NCAzMy4wNDA2QzIyLjg1MjggMzIuNzE2MiAyMi44MTMxIDMyLjM4MTYgMjIuNjggMzIuMDhDMjIuNTUzMiAzMS43ODQyIDIyLjM0MjggMzEuNTMyIDIyLjA3NDUgMzEuMzU0M0MyMS44MDYyIDMxLjE3NjYgMjEuNDkxOCAzMS4wODEzIDIxLjE3IDMxLjA4SDIxQzIwLjQ2OTYgMzEuMDggMTkuOTYwOSAzMC44NjkzIDE5LjU4NTggMzAuNDk0MkMxOS4yMTA3IDMwLjExOTEgMTkgMjkuNjEwNCAxOSAyOS4wOEMxOSAyOC41NDk2IDE5LjIxMDcgMjguMDQwOSAxOS41ODU4IDI3LjY2NThDMTkuOTYwOSAyNy4yOTA3IDIwLjQ2OTYgMjcuMDggMjEgMjcuMDhIMjEuMDlDMjEuNDIxIDI3LjA3MjMgMjEuNzQyIDI2Ljk2NTEgMjIuMDExMyAyNi43NzI1QzIyLjI4MDYgMjYuNTc5OSAyMi40ODU3IDI2LjMxMDcgMjIuNiAyNkMyMi43MzMxIDI1LjY5ODQgMjIuNzcyOCAyNS4zNjM4IDIyLjcxNCAyNS4wMzk0QzIyLjY1NTIgMjQuNzE1IDIyLjUwMDUgMjQuNDE1NyAyMi4yNyAyNC4xOEwyMi4yMSAyNC4xMkMyMi4wMjQgMjMuOTM0MyAyMS44NzY1IDIzLjcxMzcgMjEuNzc1OSAyMy40NzA5QzIxLjY3NTIgMjMuMjI4MSAyMS42MjM0IDIyLjk2NzggMjEuNjIzNCAyMi43MDVDMjEuNjIzNCAyMi40NDIyIDIxLjY3NTIgMjIuMTgxOSAyMS43NzU5IDIxLjkzOTFDMjEuODc2NSAyMS42OTYzIDIyLjAyNCAyMS40NzU3IDIyLjIxIDIxLjI5QzIyLjM5NTcgMjEuMTA0IDIyLjYxNjMgMjAuOTU2NSAyMi44NTkxIDIwLjg1NTlDMjMuMTAxOSAyMC43NTUyIDIzLjM2MjIgMjAuNzAzNCAyMy42MjUgMjAuNzAzNEMyMy44ODc4IDIwLjcwMzQgMjQuMTQ4MSAyMC43NTUyIDI0LjM5MDkgMjAuODU1OUMyNC42MzM3IDIwLjk1NjUgMjQuODU0MyAyMS4xMDQgMjUuMDQgMjEuMjlMMjUuMSAyMS4zNUMyNS4zMzU3IDIxLjU4MDUgMjUuNjM1IDIxLjczNTIgMjUuOTU5NCAyMS43OTRDMjYuMjgzOCAyMS44NTI4IDI2LjYxODQgMjEuODEzMSAyNi45MiAyMS42OEgyN0MyNy4yOTU4IDIxLjU1MzIgMjcuNTQ4IDIxLjM0MjggMjcuNzI1NyAyMS4wNzQ1QzI3LjkwMzQgMjAuODA2MiAyNy45OTg3IDIwLjQ5MTggMjggMjAuMTdWMjBDMjggMTkuNDY5NiAyOC4yMTA3IDE4Ljk2MDkgMjguNTg1OCAxOC41ODU4QzI4Ljk2MDkgMTguMjEwNyAyOS40Njk2IDE4IDMwIDE4QzMwLjUzMDQgMTggMzEuMDM5MSAxOC4yMTA3IDMxLjQxNDIgMTguNTg1OEMzMS43ODkzIDE4Ljk2MDkgMzIgMTkuNDY5NiAzMiAyMFYyMC4wOUMzMi4wMDEzIDIwLjQxMTggMzIuMDk2NiAyMC43MjYyIDMyLjI3NDMgMjAuOTk0NUMzMi40NTIgMjEuMjYyOCAzMi43MDQyIDIxLjQ3MzIgMzMgMjEuNkMzMy4zMDE2IDIxLjczMzEgMzMuNjM2MiAyMS43NzI4IDMzLjk2MDYgMjEuNzE0QzM0LjI4NSAyMS42NTUyIDM0LjU4NDMgMjEuNTAwNSAzNC44MiAyMS4yN0wzNC44OCAyMS4yMUMzNS4wNjU3IDIxLjAyNCAzNS4yODYzIDIwLjg3NjUgMzUuNTI5MSAyMC43NzU5QzM1Ljc3MTkgMjAuNjc1MiAzNi4wMzIyIDIwLjYyMzQgMzYuMjk1IDIwLjYyMzRDMzYuNTU3OCAyMC42MjM0IDM2LjgxODEgMjAuNjc1MiAzNy4wNjA5IDIwLjc3NTlDMzcuMzAzNyAyMC44NzY1IDM3LjUyNDMgMjEuMDI0IDM3LjcxIDIxLjIxQzM3Ljg5NiAyMS4zOTU3IDM4LjA0MzUgMjEuNjE2MyAzOC4xNDQxIDIxLjg1OTFDMzguMjQ0OCAyMi4xMDE5IDM4LjI5NjYgMjIuMzYyMiAzOC4yOTY2IDIyLjYyNUMzOC4yOTY2IDIyLjg4NzggMzguMjQ0OCAyMy4xNDgxIDM4LjE0NDEgMjMuMzkwOUMzOC4wNDM1IDIzLjYzMzcgMzcuODk2IDIzLjg1NDMgMzcuNzEgMjQuMDRMMzcuNjUgMjQuMUMzNy40MTk1IDI0LjMzNTcgMzcuMjY0OCAyNC42MzUgMzcuMjA2IDI0Ljk1OTRDMzcuMTQ3MiAyNS4yODM4IDM3LjE4NjkgMjUuNjE4NCAzNy4zMiAyNS45MlYyNkMzNy40NDY4IDI2LjI5NTggMzcuNjU3MiAyNi41NDggMzcuOTI1NSAyNi43MjU3QzM4LjE5MzggMjYuOTAzNCAzOC41MDgyIDI2Ljk5ODcgMzguODMgMjdIMzlDMzkuNTMwNCAyNyA0MC4wMzkxIDI3LjIxMDcgNDAuNDE0MiAyNy41ODU4QzQwLjc4OTMgMjcuOTYwOSA0MSAyOC40Njk2IDQxIDI5QzQxIDI5LjUzMDQgNDAuNzg5MyAzMC4wMzkxIDQwLjQxNDIgMzAuNDE0MkM0MC4wMzkxIDMwLjc4OTMgMzkuNTMwNCAzMSAzOSAzMUgzOC45MUMzOC41ODgyIDMxLjAwMTMgMzguMjczOCAzMS4wOTY2IDM4LjAwNTUgMzEuMjc0M0MzNy43MzcyIDMxLjQ1MiAzNy41MjY4IDMxLjcwNDIgMzcuNCAzMlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlsdGVyIGlkPVwiZmlsdGVyMF9kXzUyMjFfNjAxNDNcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI2MFwiIGhlaWdodD1cIjYwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT1cIjBcIiByZXN1bHQ9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCBpbj1cIlNvdXJjZUFscGhhXCIgdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJoYXJkQWxwaGFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVPZmZzZXQgZHk9XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj1cIjFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB0eXBlPVwibWF0cml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMC4wNjI3NDUxIDAgMCAwIDAgMC4wOTQxMTc2IDAgMCAwIDAgMC4xNTY4NjMgMCAwIDAgMC4wNSAwXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQmxlbmQgbW9kZT1cIm5vcm1hbFwiIGluMj1cIkJhY2tncm91bmRJbWFnZUZpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJlZmZlY3QxX2Ryb3BTaGFkb3dfNTIyMV82MDE0M1wiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbj1cIlNvdXJjZUdyYXBoaWNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4yPVwiZWZmZWN0MV9kcm9wU2hhZG93XzUyMjFfNjAxNDNcIiByZXN1bHQ9XCJzaGFwZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWx0ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfNTIyMV82MDE0M1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBmaWxsPVwid2hpdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDE4IDE3KVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm90aWZpY2F0aW9uLnByb2R1Y3R0cmFpbGRyb3BEb3duXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQgcHktMiB3LTIwMHB4IHBvc2l0aW9uLWFic29sdXRlIGVuZC0wIHotMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCAqbmdGb3I9XCJsZXQgcHJvZHVjdHRyYWlsaXRlbSBvZiBwcm9kdWN0dHJhaWx0eXBlXCIgY2xhc3M9XCJsaXN0LXVuc3R5bGVkIG1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJwcm9kdWN0dHJhaWxJdGVtKHByb2R1Y3R0cmFpbGl0ZW0sbm90aWZpY2F0aW9uKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3twcm9kdWN0dHJhaWxpdGVtfX08L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgIDwvZGl2PlxyXG4gICBcclxuPC9kaXY+IC0tPlxyXG5cclxuXHJcblxyXG5cclxuPGRpdiBjbGFzcz1cInJvdyBtYi01XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBoLTEwMFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibS0wIHctMTAwXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICBjbGFzcz1cIm1iLTNcIj48YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rPVwiL21hbmFnZS9zZXR0aW5ncy9icmFuZC1kZXRhaWxcIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtBY3RpdmVPcHRpb25zXT1cIntleGFjdDogdHJ1ZX1cIiAjQlI9XCJyb3V0ZXJMaW5rQWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjdXN0b20tbGlzdCBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHB4LTUgcHktNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIkJSLmlzQWN0aXZlID8gJ2J0biB0ZXh0LXRhYicgOiAnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWUtNFwiPjxzcGFuPjxzdmcgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzE4NDJfMTk3MjgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBbbmdDbGFzc109XCIgQlIuaXNBY3RpdmUgPyAnZmlsbHBhdGgnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMi42MjUgMjRDMS45Mjg4MSAyNCAxLjI2MTEzIDIzLjcyMzQgMC43Njg4NDUgMjMuMjMxMkMwLjI3NjU2MiAyMi43Mzg5IDAgMjIuMDcxMiAwIDIxLjM3NUwwIDIuNjI1QzAgMS4xNzYgMS4xNzYgMCAyLjYyNSAwSDE1LjM3NUMxNi44MjQgMCAxOCAxLjE3NiAxOCAyLjYyNVYyMS4zNzVDMTggMjEuNTAyNSAxNy45OTEgMjEuNjI3IDE3Ljk3MyAyMS43NUgyMS4zNzVDMjEuNDc0NSAyMS43NSAyMS41Njk4IDIxLjcxMDUgMjEuNjQwMiAyMS42NDAyQzIxLjcxMDUgMjEuNTY5OCAyMS43NSAyMS40NzQ1IDIxLjc1IDIxLjM3NVYxMi40Mjc1QzIxLjc1IDEyLjM2NTggMjEuNzM0OSAxMi4zMDUxIDIxLjcwNTggMTIuMjUwNkMyMS42NzY4IDEyLjE5NjIgMjEuNjM0OCAxMi4xNDk4IDIxLjU4MzUgMTIuMTE1NUwyMC4wMDEgMTEuMDYxQzE5Ljg3ODEgMTAuOTc5MSAxOS43NzI1IDEwLjg3MzcgMTkuNjkwMyAxMC43NTFDMTkuNjA4MSAxMC42MjgyIDE5LjU1MDkgMTAuNDkwNSAxOS41MjE5IDEwLjM0NTZDMTkuNDkyOSAxMC4yMDA4IDE5LjQ5MjggMTAuMDUxNiAxOS41MjE1IDkuOTA2NjlDMTkuNTUwMSA5Ljc2MTc3IDE5LjYwNzEgOS42MjM5MiAxOS42ODkgOS41MDFDMTkuNzcwOSA5LjM3ODA4IDE5Ljg3NjMgOS4yNzI1MSAxOS45OTkgOS4xOTAzMUMyMC4xMjE4IDkuMTA4MTEgMjAuMjU5NSA5LjA1MDg5IDIwLjQwNDQgOS4wMjE5MUMyMC41NDkyIDguOTkyOTQgMjAuNjk4NCA4Ljk5Mjc5IDIwLjg0MzMgOS4wMjE0NUMyMC45ODgyIDkuMDUwMTIgMjEuMTI2MSA5LjEwNzA2IDIxLjI0OSA5LjE4OUwyMi44MzE1IDEwLjI0MzVDMjMuNTYyIDEwLjczMSAyNCAxMS41NSAyNCAxMi40Mjc1VjIxLjM3NUMyNCAyMi4wNzEyIDIzLjcyMzQgMjIuNzM4OSAyMy4yMzEyIDIzLjIzMTJDMjIuNzM4OSAyMy43MjM0IDIyLjA3MTIgMjQgMjEuMzc1IDI0SDE2LjEyNUMxNi4wMjUyIDIzLjk5OTkgMTUuOTI1OSAyMy45ODY4IDE1LjgyOTUgMjMuOTYxQzE1LjY4MSAyMy45ODY1IDE1LjUyOTUgMjQgMTUuMzc1IDI0SDEwLjg3NUMxMC41NzY2IDI0IDEwLjI5MDUgMjMuODgxNSAxMC4wNzk1IDIzLjY3MDVDOS44Njg1MyAyMy40NTk1IDkuNzUgMjMuMTczNCA5Ljc1IDIyLjg3NVYyMUg4LjI1VjIyLjg3NUM4LjI1IDIzLjE3MzQgOC4xMzE0NyAyMy40NTk1IDcuOTIwNSAyMy42NzA1QzcuNzA5NTIgMjMuODgxNSA3LjQyMzM3IDI0IDcuMTI1IDI0SDIuNjI1Wk0yLjI1IDIxLjM3NUMyLjI1IDIxLjU4MiAyLjQxOCAyMS43NSAyLjYyNSAyMS43NUg2VjE5Ljg3NUM2IDE5LjU3NjYgNi4xMTg1MyAxOS4yOTA1IDYuMzI5NSAxOS4wNzk1QzYuNTQwNDggMTguODY4NSA2LjgyNjYzIDE4Ljc1IDcuMTI1IDE4Ljc1SDEwLjg3NUMxMS4xNzM0IDE4Ljc1IDExLjQ1OTUgMTguODY4NSAxMS42NzA1IDE5LjA3OTVDMTEuODgxNSAxOS4yOTA1IDEyIDE5LjU3NjYgMTIgMTkuODc1VjIxLjc1SDE1LjM3NUMxNS40NzQ1IDIxLjc1IDE1LjU2OTggMjEuNzEwNSAxNS42NDAyIDIxLjY0MDJDMTUuNzEwNSAyMS41Njk4IDE1Ljc1IDIxLjQ3NDUgMTUuNzUgMjEuMzc1VjIuNjI1QzE1Ljc1IDIuNTI1NTQgMTUuNzEwNSAyLjQzMDE2IDE1LjY0MDIgMi4zNTk4NEMxNS41Njk4IDIuMjg5NTEgMTUuNDc0NSAyLjI1IDE1LjM3NSAyLjI1SDIuNjI1QzIuNTI1NTQgMi4yNSAyLjQzMDE2IDIuMjg5NTEgMi4zNTk4NCAyLjM1OTg0QzIuMjg5NTEgMi40MzAxNiAyLjI1IDIuNTI1NTQgMi4yNSAyLjYyNVYyMS4zNzVaTTUuNjI1IDlINi4zNzVDNi42NzMzNyA5IDYuOTU5NTIgOS4xMTg1MyA3LjE3MDUgOS4zMjk1QzcuMzgxNDcgOS41NDA0OCA3LjUgOS44MjY2MyA3LjUgMTAuMTI1QzcuNSAxMC40MjM0IDcuMzgxNDcgMTAuNzA5NSA3LjE3MDUgMTAuOTIwNUM2Ljk1OTUyIDExLjEzMTUgNi42NzMzNyAxMS4yNSA2LjM3NSAxMS4yNUg1LjYyNUM1LjMyNjYzIDExLjI1IDUuMDQwNDggMTEuMTMxNSA0LjgyOTUgMTAuOTIwNUM0LjYxODUzIDEwLjcwOTUgNC41IDEwLjQyMzQgNC41IDEwLjEyNUM0LjUgOS44MjY2MyA0LjYxODUzIDkuNTQwNDggNC44Mjk1IDkuMzI5NUM1LjA0MDQ4IDkuMTE4NTMgNS4zMjY2MyA5IDUuNjI1IDlaTTQuNSA1LjYyNUM0LjUgNS4zMjY2MyA0LjYxODUzIDUuMDQwNDggNC44Mjk1IDQuODI5NUM1LjA0MDQ4IDQuNjE4NTMgNS4zMjY2MyA0LjUgNS42MjUgNC41SDYuMzc1QzYuNjczMzcgNC41IDYuOTU5NTIgNC42MTg1MyA3LjE3MDUgNC44Mjk1QzcuMzgxNDcgNS4wNDA0OCA3LjUgNS4zMjY2MyA3LjUgNS42MjVDNy41IDUuOTIzMzcgNy4zODE0NyA2LjIwOTUyIDcuMTcwNSA2LjQyMDVDNi45NTk1MiA2LjYzMTQ3IDYuNjczMzcgNi43NSA2LjM3NSA2Ljc1SDUuNjI1QzUuMzI2NjMgNi43NSA1LjA0MDQ4IDYuNjMxNDcgNC44Mjk1IDYuNDIwNUM0LjYxODUzIDYuMjA5NTIgNC41IDUuOTIzMzcgNC41IDUuNjI1Wk0xMC41IDEwLjEyNUMxMC41IDkuODI2NjMgMTAuNjE4NSA5LjU0MDQ4IDEwLjgyOTUgOS4zMjk1QzExLjA0MDUgOS4xMTg1MyAxMS4zMjY2IDkgMTEuNjI1IDlIMTIuMzc1QzEyLjY3MzQgOSAxMi45NTk1IDkuMTE4NTMgMTMuMTcwNSA5LjMyOTVDMTMuMzgxNSA5LjU0MDQ4IDEzLjUgOS44MjY2MyAxMy41IDEwLjEyNUMxMy41IDEwLjQyMzQgMTMuMzgxNSAxMC43MDk1IDEzLjE3MDUgMTAuOTIwNUMxMi45NTk1IDExLjEzMTUgMTIuNjczNCAxMS4yNSAxMi4zNzUgMTEuMjVIMTEuNjI1QzExLjMyNjYgMTEuMjUgMTEuMDQwNSAxMS4xMzE1IDEwLjgyOTUgMTAuOTIwNUMxMC42MTg1IDEwLjcwOTUgMTAuNSAxMC40MjM0IDEwLjUgMTAuMTI1Wk0xMS42MjUgNC41SDEyLjM3NUMxMi42NzM0IDQuNSAxMi45NTk1IDQuNjE4NTMgMTMuMTcwNSA0LjgyOTVDMTMuMzgxNSA1LjA0MDQ4IDEzLjUgNS4zMjY2MyAxMy41IDUuNjI1QzEzLjUgNS45MjMzNyAxMy4zODE1IDYuMjA5NTIgMTMuMTcwNSA2LjQyMDVDMTIuOTU5NSA2LjYzMTQ3IDEyLjY3MzQgNi43NSAxMi4zNzUgNi43NUgxMS42MjVDMTEuMzI2NiA2Ljc1IDExLjA0MDUgNi42MzE0NyAxMC44Mjk1IDYuNDIwNUMxMC42MTg1IDYuMjA5NTIgMTAuNSA1LjkyMzM3IDEwLjUgNS42MjVDMTAuNSA1LjMyNjYzIDEwLjYxODUgNS4wNDA0OCAxMC44Mjk1IDQuODI5NUMxMS4wNDA1IDQuNjE4NTMgMTEuMzI2NiA0LjUgMTEuNjI1IDQuNVpNNC41IDE0LjYyNUM0LjUgMTQuMzI2NiA0LjYxODUzIDE0LjA0MDUgNC44Mjk1IDEzLjgyOTVDNS4wNDA0OCAxMy42MTg1IDUuMzI2NjMgMTMuNSA1LjYyNSAxMy41SDYuMzc1QzYuNjczMzcgMTMuNSA2Ljk1OTUyIDEzLjYxODUgNy4xNzA1IDEzLjgyOTVDNy4zODE0NyAxNC4wNDA1IDcuNSAxNC4zMjY2IDcuNSAxNC42MjVDNy41IDE0LjkyMzQgNy4zODE0NyAxNS4yMDk1IDcuMTcwNSAxNS40MjA1QzYuOTU5NTIgMTUuNjMxNSA2LjY3MzM3IDE1Ljc1IDYuMzc1IDE1Ljc1SDUuNjI1QzUuMzI2NjMgMTUuNzUgNS4wNDA0OCAxNS42MzE1IDQuODI5NSAxNS40MjA1QzQuNjE4NTMgMTUuMjA5NSA0LjUgMTQuOTIzNCA0LjUgMTQuNjI1Wk0xMS42MjUgMTMuNUgxMi4zNzVDMTIuNjczNCAxMy41IDEyLjk1OTUgMTMuNjE4NSAxMy4xNzA1IDEzLjgyOTVDMTMuMzgxNSAxNC4wNDA1IDEzLjUgMTQuMzI2NiAxMy41IDE0LjYyNUMxMy41IDE0LjkyMzQgMTMuMzgxNSAxNS4yMDk1IDEzLjE3MDUgMTUuNDIwNUMxMi45NTk1IDE1LjYzMTUgMTIuNjczNCAxNS43NSAxMi4zNzUgMTUuNzVIMTEuNjI1QzExLjMyNjYgMTUuNzUgMTEuMDQwNSAxNS42MzE1IDEwLjgyOTUgMTUuNDIwNUMxMC42MTg1IDE1LjIwOTUgMTAuNSAxNC45MjM0IDEwLjUgMTQuNjI1QzEwLjUgMTQuMzI2NiAxMC42MTg1IDE0LjA0MDUgMTAuODI5NSAxMy44Mjk1QzExLjA0MDUgMTMuNjE4NSAxMS4zMjY2IDEzLjUgMTEuNjI1IDEzLjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzY2NzA4NVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xODQyXzE5NzI4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiIEJSLmlzQWN0aXZlID8gJyB0ZXh0LXRhYicgOiAnJ1wiIGNsYXNzPVwic2lkZWhlYWRpbmcgIG1iLTFcIj5CcmFuZCBEZXRhaWxzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAgY2xhc3M9XCJtYi0zXCI+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyTGluaz1cIi9tYW5hZ2Uvc2V0dGluZ3MvY29uZmlndXJhdGlvblwiIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmVcIiAjQ09OPVwicm91dGVyTGlua0FjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3VzdG9tLWxpc3QgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBweC01IHB5LTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJDT04uaXNBY3RpdmUgPyAnYnRuIHRleHQtdGFiJyA6ICcnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZS00XCI+PHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTg0Ml8xOTczMylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIFtuZ0NsYXNzXT1cIiBDT04uaXNBY3RpdmUgPyAnZmlsbHN0cm9rZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMiAxNUMxMy42NTY5IDE1IDE1IDEzLjY1NjkgMTUgMTJDMTUgMTAuMzQzMSAxMy42NTY5IDkgMTIgOUMxMC4zNDMxIDkgOSAxMC4zNDMxIDkgMTJDOSAxMy42NTY5IDEwLjM0MzEgMTUgMTIgMTVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIFtuZ0NsYXNzXT1cIiBDT04uaXNBY3RpdmUgPyAnZmlsbHN0cm9rZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xOS40IDE1QzE5LjI2NjkgMTUuMzAxNiAxOS4yMjcyIDE1LjYzNjIgMTkuMjg2IDE1Ljk2MDZDMTkuMzQ0OCAxNi4yODUgMTkuNDk5NSAxNi41ODQzIDE5LjczIDE2LjgyTDE5Ljc5IDE2Ljg4QzE5Ljk3NiAxNy4wNjU3IDIwLjEyMzUgMTcuMjg2MyAyMC4yMjQxIDE3LjUyOTFDMjAuMzI0OCAxNy43NzE5IDIwLjM3NjYgMTguMDMyMiAyMC4zNzY2IDE4LjI5NUMyMC4zNzY2IDE4LjU1NzggMjAuMzI0OCAxOC44MTgxIDIwLjIyNDEgMTkuMDYwOUMyMC4xMjM1IDE5LjMwMzcgMTkuOTc2IDE5LjUyNDMgMTkuNzkgMTkuNzFDMTkuNjA0MyAxOS44OTYgMTkuMzgzNyAyMC4wNDM1IDE5LjE0MDkgMjAuMTQ0MUMxOC44OTgxIDIwLjI0NDggMTguNjM3OCAyMC4yOTY2IDE4LjM3NSAyMC4yOTY2QzE4LjExMjIgMjAuMjk2NiAxNy44NTE5IDIwLjI0NDggMTcuNjA5MSAyMC4xNDQxQzE3LjM2NjMgMjAuMDQzNSAxNy4xNDU3IDE5Ljg5NiAxNi45NiAxOS43MUwxNi45IDE5LjY1QzE2LjY2NDMgMTkuNDE5NSAxNi4zNjUgMTkuMjY0OCAxNi4wNDA2IDE5LjIwNkMxNS43MTYyIDE5LjE0NzIgMTUuMzgxNiAxOS4xODY5IDE1LjA4IDE5LjMyQzE0Ljc4NDIgMTkuNDQ2OCAxNC41MzIgMTkuNjU3MiAxNC4zNTQzIDE5LjkyNTVDMTQuMTc2NiAyMC4xOTM4IDE0LjA4MTMgMjAuNTA4MiAxNC4wOCAyMC44M1YyMUMxNC4wOCAyMS41MzA0IDEzLjg2OTMgMjIuMDM5MSAxMy40OTQyIDIyLjQxNDJDMTMuMTE5MSAyMi43ODkzIDEyLjYxMDQgMjMgMTIuMDggMjNDMTEuNTQ5NiAyMyAxMS4wNDA5IDIyLjc4OTMgMTAuNjY1OCAyMi40MTQyQzEwLjI5MDcgMjIuMDM5MSAxMC4wOCAyMS41MzA0IDEwLjA4IDIxVjIwLjkxQzEwLjA3MjMgMjAuNTc5IDkuOTY1MTIgMjAuMjU4IDkuNzcyNTEgMTkuOTg4N0M5LjU3OTkgMTkuNzE5NCA5LjMxMDc0IDE5LjUxNDMgOSAxOS40QzguNjk4MzggMTkuMjY2OSA4LjM2MzgxIDE5LjIyNzIgOC4wMzk0MSAxOS4yODZDNy43MTUwMiAxOS4zNDQ4IDcuNDE1NjggMTkuNDk5NSA3LjE4IDE5LjczTDcuMTIgMTkuNzlDNi45MzQyNSAxOS45NzYgNi43MTM2OCAyMC4xMjM1IDYuNDcwODggMjAuMjI0MUM2LjIyODA4IDIwLjMyNDggNS45Njc4MyAyMC4zNzY2IDUuNzA1IDIwLjM3NjZDNS40NDIxNyAyMC4zNzY2IDUuMTgxOTIgMjAuMzI0OCA0LjkzOTEyIDIwLjIyNDFDNC42OTYzMiAyMC4xMjM1IDQuNDc1NzUgMTkuOTc2IDQuMjkgMTkuNzlDNC4xMDQwNSAxOS42MDQzIDMuOTU2NTMgMTkuMzgzNyAzLjg1NTg4IDE5LjE0MDlDMy43NTUyMyAxOC44OTgxIDMuNzAzNDMgMTguNjM3OCAzLjcwMzQzIDE4LjM3NUMzLjcwMzQzIDE4LjExMjIgMy43NTUyMyAxNy44NTE5IDMuODU1ODggMTcuNjA5MUMzLjk1NjUzIDE3LjM2NjMgNC4xMDQwNSAxNy4xNDU3IDQuMjkgMTYuOTZMNC4zNSAxNi45QzQuNTgwNTQgMTYuNjY0MyA0LjczNTE5IDE2LjM2NSA0Ljc5NCAxNi4wNDA2QzQuODUyODIgMTUuNzE2MiA0LjgxMzEyIDE1LjM4MTYgNC42OCAxNS4wOEM0LjU1MzI0IDE0Ljc4NDIgNC4zNDI3NiAxNC41MzIgNC4wNzQ0NyAxNC4zNTQzQzMuODA2MTggMTQuMTc2NiAzLjQ5MTc5IDE0LjA4MTMgMy4xNyAxNC4wOEgzQzIuNDY5NTcgMTQuMDggMS45NjA4NiAxMy44NjkzIDEuNTg1NzkgMTMuNDk0MkMxLjIxMDcxIDEzLjExOTEgMSAxMi42MTA0IDEgMTIuMDhDMSAxMS41NDk2IDEuMjEwNzEgMTEuMDQwOSAxLjU4NTc5IDEwLjY2NThDMS45NjA4NiAxMC4yOTA3IDIuNDY5NTcgMTAuMDggMyAxMC4wOEgzLjA5QzMuNDIwOTkgMTAuMDcyMyAzLjc0MiA5Ljk2NTEyIDQuMDExMyA5Ljc3MjUxQzQuMjgwNTkgOS41Nzk5IDQuNDg1NzIgOS4zMTA3NCA0LjYgOUM0LjczMzEyIDguNjk4MzggNC43NzI4MiA4LjM2MzgxIDQuNzE0IDguMDM5NDFDNC42NTUxOSA3LjcxNTAyIDQuNTAwNTQgNy40MTU2OCA0LjI3IDcuMThMNC4yMSA3LjEyQzQuMDI0MDUgNi45MzQyNSAzLjg3NjUzIDYuNzEzNjggMy43NzU4OCA2LjQ3MDg4QzMuNjc1MjMgNi4yMjgwOCAzLjYyMzQzIDUuOTY3ODMgMy42MjM0MyA1LjcwNUMzLjYyMzQzIDUuNDQyMTcgMy42NzUyMyA1LjE4MTkyIDMuNzc1ODggNC45MzkxMkMzLjg3NjUzIDQuNjk2MzIgNC4wMjQwNSA0LjQ3NTc1IDQuMjEgNC4yOUM0LjM5NTc1IDQuMTA0MDUgNC42MTYzMiAzLjk1NjUzIDQuODU5MTIgMy44NTU4OEM1LjEwMTkyIDMuNzU1MjMgNS4zNjIxNyAzLjcwMzQzIDUuNjI1IDMuNzAzNDNDNS44ODc4MyAzLjcwMzQzIDYuMTQ4MDggMy43NTUyMyA2LjM5MDg4IDMuODU1ODhDNi42MzM2OCAzLjk1NjUzIDYuODU0MjUgNC4xMDQwNSA3LjA0IDQuMjlMNy4xIDQuMzVDNy4zMzU2OCA0LjU4MDU0IDcuNjM1MDIgNC43MzUxOSA3Ljk1OTQxIDQuNzk0QzguMjgzODEgNC44NTI4MiA4LjYxODM4IDQuODEzMTIgOC45MiA0LjY4SDlDOS4yOTU3NyA0LjU1MzI0IDkuNTQ4MDIgNC4zNDI3NiA5LjcyNTY5IDQuMDc0NDdDOS45MDMzNyAzLjgwNjE4IDkuOTk4NzIgMy40OTE3OSAxMCAzLjE3VjNDMTAgMi40Njk1NyAxMC4yMTA3IDEuOTYwODYgMTAuNTg1OCAxLjU4NTc5QzEwLjk2MDkgMS4yMTA3MSAxMS40Njk2IDEgMTIgMUMxMi41MzA0IDEgMTMuMDM5MSAxLjIxMDcxIDEzLjQxNDIgMS41ODU3OUMxMy43ODkzIDEuOTYwODYgMTQgMi40Njk1NyAxNCAzVjMuMDlDMTQuMDAxMyAzLjQxMTc5IDE0LjA5NjYgMy43MjYxOCAxNC4yNzQzIDMuOTk0NDdDMTQuNDUyIDQuMjYyNzYgMTQuNzA0MiA0LjQ3MzI0IDE1IDQuNkMxNS4zMDE2IDQuNzMzMTIgMTUuNjM2MiA0Ljc3MjgyIDE1Ljk2MDYgNC43MTRDMTYuMjg1IDQuNjU1MTkgMTYuNTg0MyA0LjUwMDU0IDE2LjgyIDQuMjdMMTYuODggNC4yMUMxNy4wNjU3IDQuMDI0MDUgMTcuMjg2MyAzLjg3NjUzIDE3LjUyOTEgMy43NzU4OEMxNy43NzE5IDMuNjc1MjMgMTguMDMyMiAzLjYyMzQzIDE4LjI5NSAzLjYyMzQzQzE4LjU1NzggMy42MjM0MyAxOC44MTgxIDMuNjc1MjMgMTkuMDYwOSAzLjc3NTg4QzE5LjMwMzcgMy44NzY1MyAxOS41MjQzIDQuMDI0MDUgMTkuNzEgNC4yMUMxOS44OTYgNC4zOTU3NSAyMC4wNDM1IDQuNjE2MzIgMjAuMTQ0MSA0Ljg1OTEyQzIwLjI0NDggNS4xMDE5MiAyMC4yOTY2IDUuMzYyMTcgMjAuMjk2NiA1LjYyNUMyMC4yOTY2IDUuODg3ODMgMjAuMjQ0OCA2LjE0ODA4IDIwLjE0NDEgNi4zOTA4OEMyMC4wNDM1IDYuNjMzNjggMTkuODk2IDYuODU0MjUgMTkuNzEgNy4wNEwxOS42NSA3LjFDMTkuNDE5NSA3LjMzNTY4IDE5LjI2NDggNy42MzUwMiAxOS4yMDYgNy45NTk0MUMxOS4xNDcyIDguMjgzODEgMTkuMTg2OSA4LjYxODM4IDE5LjMyIDguOTJWOUMxOS40NDY4IDkuMjk1NzcgMTkuNjU3MiA5LjU0ODAyIDE5LjkyNTUgOS43MjU2OUMyMC4xOTM4IDkuOTAzMzcgMjAuNTA4MiA5Ljk5ODcyIDIwLjgzIDEwSDIxQzIxLjUzMDQgMTAgMjIuMDM5MSAxMC4yMTA3IDIyLjQxNDIgMTAuNTg1OEMyMi43ODkzIDEwLjk2MDkgMjMgMTEuNDY5NiAyMyAxMkMyMyAxMi41MzA0IDIyLjc4OTMgMTMuMDM5MSAyMi40MTQyIDEzLjQxNDJDMjIuMDM5MSAxMy43ODkzIDIxLjUzMDQgMTQgMjEgMTRIMjAuOTFDMjAuNTg4MiAxNC4wMDEzIDIwLjI3MzggMTQuMDk2NiAyMC4wMDU1IDE0LjI3NDNDMTkuNzM3MiAxNC40NTIgMTkuNTI2OCAxNC43MDQyIDE5LjQgMTVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzE4NDJfMTk3MzNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCIgQ09OLmlzQWN0aXZlID8gJyB0ZXh0LXRhYicgOiAnJ1wiIGNsYXNzPVwic2lkZWhlYWRpbmcgIG1iLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmF0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJyBcIiAgY2xhc3M9XCJtYi0zXCI+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyTGluaz1cIi9tYW5hZ2Uvc2V0dGluZ3MvY29udGFjdC1kaXJlY3RvcnlcIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgI0NPTkRJUj1cInJvdXRlckxpbmtBY3RpdmVcIiBjbGFzcz1cImN1c3RvbS1saXN0IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcHgtNSBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiQ09ORElSLmlzQWN0aXZlID8gJ2J0biB0ZXh0LXRhYicgOiAnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWUtNFwiPjxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBbbmdDbGFzc109XCJDT05ESVIuaXNBY3RpdmUgPyAnZmlsbHN0cm9rZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE3IDIxVjE5QzE3IDE3LjkzOTEgMTYuNTc4NiAxNi45MjE3IDE1LjgyODQgMTYuMTcxNkMxNS4wNzgzIDE1LjQyMTQgMTQuMDYwOSAxNSAxMyAxNUg1QzMuOTM5MTMgMTUgMi45MjE3MiAxNS40MjE0IDIuMTcxNTcgMTYuMTcxNkMxLjQyMTQzIDE2LjkyMTcgMSAxNy45MzkxIDEgMTlWMjFNMjMgMjFWMTlDMjIuOTk5MyAxOC4xMTM3IDIyLjcwNDQgMTcuMjUyOCAyMi4xNjE0IDE2LjU1MjNDMjEuNjE4NCAxNS44NTE5IDIwLjg1ODEgMTUuMzUxNiAyMCAxNS4xM00xNiAzLjEzQzE2Ljg2MDQgMy4zNTAzIDE3LjYyMyAzLjg1MDcgMTguMTY3NiA0LjU1MjMxQzE4LjcxMjIgNS4yNTM5MiAxOS4wMDc4IDYuMTE2ODMgMTkuMDA3OCA3LjAwNUMxOS4wMDc4IDcuODkzMTcgMTguNzEyMiA4Ljc1NjA4IDE4LjE2NzYgOS40NTc2OUMxNy42MjMgMTAuMTU5MyAxNi44NjA0IDEwLjY1OTcgMTYgMTAuODhNMTMgN0MxMyA5LjIwOTE0IDExLjIwOTEgMTEgOSAxMUM2Ljc5MDg2IDExIDUgOS4yMDkxNCA1IDdDNSA0Ljc5MDg2IDYuNzkwODYgMyA5IDNDMTEuMjA5MSAzIDEzIDQuNzkwODYgMTMgN1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiIENPTkRJUi5pc0FjdGl2ZSA/ICcgdGV4dC10YWInIDogJydcIiBjbGFzcz1cInNpZGVoZWFkaW5nICBtYi0xXCI+Q29udGFjdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpcmVjdG9yeTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2E+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFiaWxsaW5nRGlzYWJsZWQgfHwgKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/LnVzZXJUeXBlID09PSAndGFuZ28nXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgIGNsYXNzPVwibWItM1wiPjxhIHJvdXRlckxpbms9XCIvbWFuYWdlL3NldHRpbmdzL3BheW1lbnQtc3Vic2NyaXB0aW9uXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjc2E9XCJyb3V0ZXJMaW5rQWN0aXZlXCIgY2xhc3M9XCJjdXN0b20tbGlzdCBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHB4LTUgcHktNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJzYS5pc0FjdGl2ZSA/ICdidG4gdGV4dC10YWInIDogJydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCIgbWUtNFwiPjxzcGFuPjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIFtuZ0NsYXNzXT1cInNhLmlzQWN0aXZlID8gJ2ZpbGxzdHJva2UnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTQuMTc1NSA0LjIyMjI1QzE0LjE3NjYgMi45OTQ0NSAxMS42NzMxIDIgOC41ODgzMiAyQzUuNTAzNTcgMiAzLjAwMjI0IDIuOTk1NTcgMyA0LjIyMjI1TTMgNC4yMjIyNUMzIDUuNDUwMDQgNS41MDEzMyA2LjQ0NDQ5IDguNTg4MzIgNi40NDQ0OUMxMS42NzUzIDYuNDQ0NDkgMTQuMTc2NiA1LjQ1MDA0IDE0LjE3NjYgNC4yMjIyNUwxNC4xNzY2IDEyLjg0NDVNMyA0LjIyMjI1VjE3LjU1NTZDMy4wMDExMiAxOC43ODM0IDUuNTAyNDUgMTkuNzc3OSA4LjU4ODMyIDE5Ljc3NzlDMTAuMDg0OSAxOS43Nzc5IDExLjQzNjEgMTkuNTQxMiAxMi40Mzg3IDE5LjE2MDFNMy4wMDExMiA4LjY2NjcyQzMuMDAxMTIgOS44OTQ1MSA1LjUwMjQ1IDEwLjg4OSA4LjU4OTQ0IDEwLjg4OUMxMS42NzY0IDEwLjg4OSAxNC4xNzc4IDkuODk0NTEgMTQuMTc3OCA4LjY2NjcyTTEyLjUwNTcgMTQuNjk0NkMxMS40OTc2IDE1LjA4OTEgMTAuMTE1IDE1LjMzMzUgOC41ODgzMiAxNS4zMzM1QzUuNTAyNDUgMTUuMzMzNSAzLjAwMTEyIDE0LjMzOTEgMy4wMDExMiAxMy4xMTEzTTIwLjUyNzIgMTMuNDY0NkMyMi40OTA5IDE1LjQxNjkgMjIuNDkwOSAxOC41ODM2IDIwLjUyNzIgMjAuNTM1OEMxOC41NjM1IDIyLjQ4ODEgMTUuMzc4MSAyMi40ODgxIDEzLjQxNDQgMjAuNTM1OEMxMS40NTA3IDE4LjU4MzYgMTEuNDUwNyAxNS40MTY5IDEzLjQxNDQgMTMuNDY0NkMxNS4zNzgxIDExLjUxMjQgMTguNTYzNSAxMS41MTI0IDIwLjUyNzIgMTMuNDY0NlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cInNhLmlzQWN0aXZlID8gJ3RleHQtdGFiJyA6ICcnXCIgY2xhc3M9XCJzaWRlaGVhZGluZyBtYi0xXCI+UGxhbnMgJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTdWJzY3JpcHRpb248L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2E+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPGRpdiAgY2xhc3M9XCJtYi0zXCI+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyTGluaz1cIi9tYW5hZ2Uvc2V0dGluZ3MvZG9jdW1lbnRzXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZVwiICNET0M9XCJyb3V0ZXJMaW5rQWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjdXN0b20tbGlzdCBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHB4LTUgcHktNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIkRPQy5pc0FjdGl2ZSA/ICdidG4gdGV4dC10YWInIDogJydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lLTRcIj48c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggW25nQ2xhc3NdPVwiIERPQy5pc0FjdGl2ZSA/ICdmaWxsc3Ryb2tlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTQgMkg2QzUuNDY5NTcgMiA0Ljk2MDg2IDIuMjEwNzEgNC41ODU3OSAyLjU4NTc5QzQuMjEwNzEgMi45NjA4NiA0IDMuNDY5NTcgNCA0VjIwQzQgMjAuNTMwNCA0LjIxMDcxIDIxLjAzOTEgNC41ODU3OSAyMS40MTQyQzQuOTYwODYgMjEuNzg5MyA1LjQ2OTU3IDIyIDYgMjJIMThDMTguNTMwNCAyMiAxOS4wMzkxIDIxLjc4OTMgMTkuNDE0MiAyMS40MTQyQzE5Ljc4OTMgMjEuMDM5MSAyMCAyMC41MzA0IDIwIDIwVjhNMTQgMkwyMCA4TTE0IDJWOEgyME0xNiAxM0g4TTE2IDE3SDhNMTAgOUg4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cIiBET0MuaXNBY3RpdmUgPyAnIHRleHQtdGFiJyA6ICcnXCIgY2xhc3M9XCJzaWRlaGVhZGluZyAgbWItMVwiPkRvY3VtZW50c1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYT48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgIGNsYXNzPVwibWItM1wiPjxhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbms9XCIvbWFuYWdlL3NldHRpbmdzL2FjdGl2aXR5LWxvZ3NcIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCIgI0FDVD1cInJvdXRlckxpbmtBY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImN1c3RvbS1saXN0IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcHgtNSBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiQUNULmlzQWN0aXZlID8gJ2J0biB0ZXh0LXRhYicgOiAnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWUtNFwiPjxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBbbmdDbGFzc109XCIgQUNULmlzQWN0aXZlID8gJ2ZpbGxzdHJva2UgZmlsbHBhdGgnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xOC4xNTM5IDcuNzI5MTFMMTguMDM0MSA3Ljg1MjM5TDE4LjE1MzkgNy43MjkxMUMxNy45OTcyIDcuNTc2ODYgMTcuNzg1OSA3LjQ5MjMxIDE3LjU2NjcgNy40OTIzMUg4LjdDOC40ODA4MSA3LjQ5MjMxIDguMjY5NDggNy41NzY4NiA4LjExMjc5IDcuNzI5MTFDNy45NTU5IDcuODgxNTUgNy44NjY2NyA4LjA4OTU1IDcuODY2NjcgOC4zMDc2OUM3Ljg2NjY3IDguNTI1ODMgNy45NTU5IDguNzMzODMgOC4xMTI3OSA4Ljg4NjI3QzguMjY5NDggOS4wMzg1MyA4LjQ4MDgxIDkuMTIzMDggOC43IDkuMTIzMDhIMTcuNTY2N0MxNy43ODU5IDkuMTIzMDggMTcuOTk3MiA5LjAzODUzIDE4LjE1MzkgOC44ODYyN0MxOC4zMTA4IDguNzMzODMgMTguNCA4LjUyNTgzIDE4LjQgOC4zMDc2OUMxOC40IDguMDg5NTUgMTguMzEwOCA3Ljg4MTU1IDE4LjE1MzkgNy43MjkxMVpNMy4wNDYxMiA0LjAzNjhDMi44ODkyNCA0LjE4OTI0IDIuOCA0LjM5NzI1IDIuOCA0LjYxNTM4QzIuOCA0LjgzMzUyIDIuODg5MjQgNS4wNDE1MiAzLjA0NjEyIDUuMTkzOTdDMy4yMDI4MiA1LjM0NjIyIDMuNDE0MTUgNS40MzA3NyAzLjYzMzMzIDUuNDMwNzdINi4xNjY2N0M2LjM4NTg1IDUuNDMwNzcgNi41OTcxOCA1LjM0NjIyIDYuNzUzODggNS4xOTM5N0M2LjkxMDc2IDUuMDQxNTIgNyA0LjgzMzUyIDcgNC42MTUzOEM3IDQuMzk3MjUgNi45MTA3NiA0LjE4OTI0IDYuNzUzODggNC4wMzY4QzYuNTk3MTggMy44ODQ1NSA2LjM4NTg1IDMuOCA2LjE2NjY3IDMuOEgzLjYzMzMzQzMuNDE0MTUgMy44IDMuMjAyODIgMy44ODQ1NSAzLjA0NjEyIDQuMDM2OFpNOC4xMTI3OSA0LjAzNjhDNy45NTU5IDQuMTg5MjQgNy44NjY2NyA0LjM5NzI1IDcuODY2NjcgNC42MTUzOEM3Ljg2NjY3IDQuODMzNTIgNy45NTU5IDUuMDQxNTIgOC4xMTI3OSA1LjE5Mzk3QzguMjY5NDggNS4zNDYyMiA4LjQ4MDgxIDUuNDMwNzcgOC43IDUuNDMwNzdIMjEuMzY2N0MyMS41ODU5IDUuNDMwNzcgMjEuNzk3MiA1LjM0NjIyIDIxLjk1MzkgNS4xOTM5N0MyMi4xMTA4IDUuMDQxNTIgMjIuMiA0LjgzMzUyIDIyLjIgNC42MTUzOEMyMi4yIDQuMzk3MjUgMjIuMTEwOCA0LjE4OTI0IDIxLjk1MzkgNC4wMzY4QzIxLjc5NzIgMy44ODQ1NSAyMS41ODU5IDMuOCAyMS4zNjY3IDMuOEg4LjdDOC40ODA4MSAzLjggOC4yNjk0OCAzLjg4NDU1IDguMTEyNzkgNC4wMzY4Wk0zLjA0NjEyIDExLjQyMTRDMi44ODkyNCAxMS41NzM5IDIuOCAxMS43ODE5IDIuOCAxMkMyLjggMTIuMjE4MSAyLjg4OTI0IDEyLjQyNjEgMy4wNDYxMiAxMi41Nzg2QzMuMjAyODIgMTIuNzMwOCAzLjQxNDE0IDEyLjgxNTQgMy42MzMzMyAxMi44MTU0SDYuMTY2NjdDNi4zODU4NiAxMi44MTU0IDYuNTk3MTggMTIuNzMwOCA2Ljc1Mzg4IDEyLjU3ODZDNi45MTA3NiAxMi40MjYxIDcgMTIuMjE4MSA3IDEyQzcgMTEuNzgxOSA2LjkxMDc2IDExLjU3MzkgNi43NTM4OCAxMS40MjE0QzYuNTk3MTggMTEuMjY5MiA2LjM4NTg1IDExLjE4NDYgNi4xNjY2NyAxMS4xODQ2SDMuNjMzMzNDMy40MTQxNSAxMS4xODQ2IDMuMjAyODIgMTEuMjY5MiAzLjA0NjEyIDExLjQyMTRaTTguMTEyNzkgMTEuNDIxNEM3Ljk1NTkgMTEuNTczOSA3Ljg2NjY3IDExLjc4MTkgNy44NjY2NyAxMkM3Ljg2NjY3IDEyLjIxODEgNy45NTU5IDEyLjQyNjEgOC4xMTI3OSAxMi41Nzg2QzguMjY5NDggMTIuNzMwOCA4LjQ4MDgxIDEyLjgxNTQgOC43IDEyLjgxNTRIMjEuMzY2N0MyMS41ODU5IDEyLjgxNTQgMjEuNzk3MiAxMi43MzA4IDIxLjk1MzkgMTIuNTc4NkMyMi4xMTA4IDEyLjQyNjEgMjIuMiAxMi4yMTgxIDIyLjIgMTJDMjIuMiAxMS43ODE5IDIyLjExMDggMTEuNTczOSAyMS45NTM5IDExLjQyMTRDMjEuNzk3MiAxMS4yNjkyIDIxLjU4NTkgMTEuMTg0NiAyMS4zNjY3IDExLjE4NDZIOC43QzguNDgwODEgMTEuMTg0NiA4LjI2OTQ4IDExLjI2OTIgOC4xMTI3OSAxMS40MjE0Wk04LjExMjc5IDE1LjExMzdDNy45NTU5IDE1LjI2NjIgNy44NjY2NyAxNS40NzQyIDcuODY2NjcgMTUuNjkyM0M3Ljg2NjY3IDE1LjkxMDQgNy45NTU5IDE2LjExODQgOC4xMTI3OSAxNi4yNzA5QzguMjY5NDggMTYuNDIzMSA4LjQ4MDgxIDE2LjUwNzcgOC43IDE2LjUwNzdIMTcuNTY2N0MxNy43ODU5IDE2LjUwNzcgMTcuOTk3MiAxNi40MjMxIDE4LjE1MzkgMTYuMjcwOUMxOC4zMTA4IDE2LjExODQgMTguNCAxNS45MTA0IDE4LjQgMTUuNjkyM0MxOC40IDE1LjQ3NDIgMTguMzEwOCAxNS4yNjYyIDE4LjE1MzkgMTUuMTEzN0MxNy45OTcyIDE0Ljk2MTUgMTcuNzg1OSAxNC44NzY5IDE3LjU2NjcgMTQuODc2OUg4LjdDOC40ODA4MSAxNC44NzY5IDguMjY5NDggMTQuOTYxNSA4LjExMjc5IDE1LjExMzdaTTMuMDQ2MTIgMTguODA2QzIuODg5MjQgMTguOTU4NSAyLjggMTkuMTY2NSAyLjggMTkuMzg0NkMyLjggMTkuNjAyOCAyLjg4OTI0IDE5LjgxMDggMy4wNDYxMiAxOS45NjMyQzMuMjAyODIgMjAuMTE1NSAzLjQxNDE1IDIwLjIgMy42MzMzMyAyMC4ySDYuMTY2NjdDNi4zODU4NSAyMC4yIDYuNTk3MTggMjAuMTE1NSA2Ljc1Mzg4IDE5Ljk2MzJDNi45MTA3NiAxOS44MTA4IDcgMTkuNjAyOCA3IDE5LjM4NDZDNyAxOS4xNjY1IDYuOTEwNzYgMTguOTU4NSA2Ljc1Mzg4IDE4LjgwNkM2LjU5NzE4IDE4LjY1MzggNi4zODU4NSAxOC41NjkyIDYuMTY2NjcgMTguNTY5MkgzLjYzMzMzQzMuNDE0MTUgMTguNTY5MiAzLjIwMjgyIDE4LjY1MzggMy4wNDYxMiAxOC44MDZaTTguMTEyNzkgMTguODA2QzcuOTU1OSAxOC45NTg1IDcuODY2NjcgMTkuMTY2NSA3Ljg2NjY3IDE5LjM4NDZDNy44NjY2NyAxOS42MDI4IDcuOTU1OSAxOS44MTA4IDguMTEyNzkgMTkuOTYzMkM4LjI2OTQ4IDIwLjExNTUgOC40ODA4MSAyMC4yIDguNyAyMC4ySDIxLjM2NjdDMjEuNTg1OSAyMC4yIDIxLjc5NzIgMjAuMTE1NSAyMS45NTM5IDE5Ljk2MzJDMjIuMTEwOCAxOS44MTA4IDIyLjIgMTkuNjAyOCAyMi4yIDE5LjM4NDZDMjIuMiAxOS4xNjY1IDIyLjExMDggMTguOTU4NSAyMS45NTM5IDE4LjgwNkMyMS43OTcyIDE4LjY1MzggMjEuNTg1OSAxOC41NjkyIDIxLjM2NjcgMTguNTY5Mkg4LjdDOC40ODA4MSAxOC41NjkyIDguMjY5NDggMTguNjUzOCA4LjExMjc5IDE4LjgwNlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiM2NjcwODVcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMC40XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiIEFDVC5pc0FjdGl2ZSA/ICcgdGV4dC10YWInIDogJydcIiBjbGFzcz1cInNpZGVoZWFkaW5nICBtYi0xXCI+QWN0aXZpdHkgTG9nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPjwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtOVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJwYWdlU3RhdGUkIHwgYXN5bmMgYXMgcGFnZVN0YXRlXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInBhZ2VTdGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2xvYWRlZCdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidsb2FkaW5nJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyLWNhcmQgdy0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
417
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFuZ28tbWFuYWdlLXNldHRpbmdzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy9zcmMvbGliL2NvbXBvbmVudHMvdGFuZ28tbWFuYWdlLXNldHRpbmdzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1tYW5hZ2Utc2V0dGluZ3Mvc3JjL2xpYi9jb21wb25lbnRzL3RhbmdvLW1hbmFnZS1zZXR0aW5ncy90YW5nby1tYW5hZ2Utc2V0dGluZ3MuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUc5RixPQUFPLEVBQUUsZUFBZSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHM0QsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sZ0dBQWdHLENBQUM7QUFFN0ksT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0ZBQXNGLENBQUM7QUFFOUgsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sdUZBQXVGLENBQUM7QUFDbEksT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sdUVBQXVFLENBQUM7Ozs7Ozs7OztBQVUzRyxNQUFNLE9BQU8sNEJBQTRCO0lBK0JuQjtJQUFtQztJQUFvQztJQUFnQztJQUErRDtJQUEwQztJQUEyQjtJQTlCL1AsVUFBVSxDQUFNO0lBQ0MsUUFBUSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFDMUMsVUFBVSxHQUFHLElBQUksZUFBZSxDQUF1QixTQUFTLENBQUMsQ0FBQztJQUNsRSxlQUFlLENBQU07SUFFckIsbUJBQW1CLEdBQVEsRUFBRSxDQUFDO0lBQzlCLFFBQVEsR0FBVyxFQUFFLENBQUM7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QUMsQ0FBQTtvQkFDSiw0Q0FBNEM7aUJBQzNDO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUNELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztRQUMzQyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsS0FBSyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxlQUFlLENBQUMsS0FBaUI7UUFDakMsbUNBQW1DO1FBQ25DLHNDQUFzQztRQUN0QyxLQUFLO1FBQ0wsd0JBQXdCO1FBQ3hCLDJCQUEyQjtRQUMzQixLQUFLO1FBQ0wsZ0NBQWdDO1FBQ2hDLG1DQUFtQztRQUNuQyxLQUFLO1FBQ0wsK0JBQStCO1FBQy9CLGtDQUFrQztRQUNsQyxLQUFLO1FBQ0wsZ0NBQWdDO1FBQ2hDLG1DQUFtQztRQUNuQyxLQUFLO1FBQ0osSUFBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsZ0JBQWdCLEVBQUU7WUFDN0MsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQVEsRUFBQyxFQUFFO2dCQUM3RCxJQUFJLENBQUMsb0JBQW9CLEdBQUksS0FBSyxDQUFBO1lBQ25DLENBQUMsQ0FBQyxDQUFBO1NBQ0g7SUFDRixDQUFDO3dHQXZaVSw0QkFBNEI7NEZBQTVCLDRCQUE0Qix1SUNyQnpDLHVvckRBa2lCTTs7NEZEN2dCTyw0QkFBNEI7a0JBTHhDLFNBQVM7K0JBQ0UsMkJBQTJCOytRQXNZckMsZUFBZTtzQkFEZCxZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBHbG9iYWxTdGF0ZVNlcnZpY2UsIFBhZ2VJbmZvU2VydmljZSB9IGZyb20gJ3RhbmdvLWFwcC11aS1nbG9iYWwnO1xyXG5pbXBvcnQgeyBDbGllbnRBcGlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY2xpZW50LWFwaS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9wYXltZW50LXN1YnNjcmlwdGlvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVG9hc3RTZXJ2aWNlIH0gZnJvbSAndGFuZ28tYXBwLXVpLXNoYXJlZCc7XHJcbmltcG9ydCB7IFVuc3Vic2NyaWJlUmVxdWVzdENvbXBvbmVudCB9IGZyb20gJy4uL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3Vuc3Vic2NyaWJlLXJlcXVlc3QvdW5zdWJzY3JpYmUtcmVxdWVzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOZ2JNb2RhbCB9IGZyb20gJ0BuZy1ib290c3RyYXAvbmctYm9vdHN0cmFwJztcclxuaW1wb3J0IHsgVHJhaWxTZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4uL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3RyYWlsLXNldHRpbmdzL3RyYWlsLXNldHRpbmdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVuc3Vic2NyaWJlcHJvZHVjdENvbXBvbmVudCB9IGZyb20gJy4uL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9zdWJzY3JpcHRpb24tcG9wdXBzL3Vuc3Vic2NyaWJlcHJvZHVjdC91bnN1YnNjcmliZXByb2R1Y3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU3Vic2NyaWJlUmVxdWVzdENvbXBvbmVudCB9IGZyb20gJy4uL3BheW1lbnRzLXN1YnNjcmlwdGlvbi9yZXF1ZXN0LXBvcHVwcy9zdWJzY3JpYmUtcmVxdWVzdC9zdWJzY3JpYmUtcmVxdWVzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTa2lwdHJhaWxDb21wb25lbnQgfSBmcm9tICcuLi9wYXltZW50cy1zdWJzY3JpcHRpb24vcmVxdWVzdC1wb3B1cHMvc2tpcHRyYWlsL3NraXB0cmFpbC5jb21wb25lbnQnO1xyXG5cclxuXHJcblxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItdGFuZ28tbWFuYWdlLXNldHRpbmdzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vdGFuZ28tbWFuYWdlLXNldHRpbmdzLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vdGFuZ28tbWFuYWdlLXNldHRpbmdzLmNvbXBvbmVudC5zY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgVGFuZ29NYW5hZ2VTZXR0aW5nc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICBjbGllbnREYXRhOiBhbnk7XHJcbiAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgcGFnZVN0YXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8J2xvYWRlZCcgfCAnbG9hZGluZyc+KCdsb2FkaW5nJyk7XHJcbiAgYmlsbGluZ0Rpc2FibGVkOiBhbnk7XHJcbiAgXHJcbiAgbm90aWZpY2F0aW9uRGV0YWlsczogYW55ID0gW107XHJcbiAgY2xpZW50SWQ6IHN0cmluZyA9ICcnO1xyXG4gIGN1cnJlbnRQbGFuOiBzdHJpbmcgPSAnZnJlZSc7XHJcbiAgZHluYW1pY0RhdGE6IGFueSA9IHtcclxuICAgIGxpbWl0OiAxMCxcclxuICAgIG9mZnNldDogMSxcclxuICAgIGNsaWVudElkOiBcIlwiLFxyXG4gICAgc2VhcmNoVmFsdWU6IFwiXCIsXHJcbiAgICBzb3J0Q29sdW1uOiAnJyxcclxuICAgIHNvcnRCeTogJycsXHJcbiAgICBwcm9kdWN0OiBbXSxcclxuICAgIHN0b3JlOiBbXSxcclxuICAgIGxvY2F0aW9uOiBbXVxyXG4gIH1cclxuICB1c2VyVHlwZTphbnkgPSAnJztcclxuICBsb2FkaW5nOmJvb2xlYW49dHJ1ZTtcclxuICBzb3J0Qnk6bnVtYmVyPTE7XHJcbiAgbm9EYXRhOmJvb2xlYW4gPWZhbHNlO1xyXG4gIHByb2R1Y3RMaXN0OiBhbnkgPSBbXTtcclxuICBjbGllbnRpbmZvOiBhbnk7XHJcbiAgcHJvZHVjdHRyYWlsdHlwZTogYW55W10gPSBbJ0V4dGVuZCBUcmlhbCcsICdDYW5jZWwgUHJvZHVjdCddO1xyXG4gIHByb2R1Y3R0cmFpbElzc3VlOiBhbnkgPSAnRXh0ZW5kIFRyaWFsJztcclxuICBwcm9kdWN0dHJhaWxkcm9wRG93bjogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIHR5cGU9XCJ0cmFpbFwiO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBhZ2VJbmZvOiBQYWdlSW5mb1NlcnZpY2UsIHByaXZhdGUgY2xpZW50QXBpOiBDbGllbnRBcGlTZXJ2aWNlLCBwdWJsaWMgZ3M6R2xvYmFsU3RhdGVTZXJ2aWNlLCAgcHJpdmF0ZSBQYXltZW50U3Vic2NyaXB0aW9uU2VydmljZTogUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UscHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYscHJpdmF0ZSB0b2FzdDogVG9hc3RTZXJ2aWNlLHB1YmxpYyBtb2RhbFNlcnZpY2U6IE5nYk1vZGFsLCkge1xyXG4gICAgdGhpcy5nZXRDbGllbnREYXRhKClcclxuICAgIHRoaXMuY2xpZW50QXBpLmNsaWVudEZvcm1EYXRhLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKGUpID0+IHtcclxuICAgICAgY29uc29sZS5sb2coZSlcclxuICAgICAgaWYgKGUudHlwZSA9PT0gJ3N1Ym1pdHRlZCcpIHtcclxuICAgICAgICB0aGlzLmdldENsaWVudERhdGEoKTtcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQodHJ1ZSk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgICB0aGlzLnBhZ2VTdGF0ZSQuY29tcGxldGUoKTtcclxuXHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc2V0UGFnZURhdGEoKVxyXG4gICAgdGhpcy5ncy5kYXRhUmFuZ2VWYWx1ZS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChkYXRhOiBhbnkpID0+IHtcclxuICAgICAgaWYgKGRhdGEpIHtcclxuICAgICAgICB0aGlzLmNsaWVudElkID0gZGF0YS5jbGllbnQ7XHJcbiAgICAgICAgdGhpcy5keW5hbWljRGF0YS5jbGllbnRJZCA9IHRoaXMuY2xpZW50SWRcclxuICAgICAgICB0aGlzLmdzLnVzZXJBY2Nlc3MucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZGF0YTphbnkpID0+IHtcclxuICAgICAgICAgIGlmKGRhdGEpIHtcclxuICAgICAgICAgICAgdGhpcy51c2VyVHlwZSA9IGRhdGEudXNlclR5cGU7XHJcbiAgICAgICAgICAgIC8vIGlmKGRhdGE/LnVzZXJUeXBlID09ICd0YW5nbycpIHtcclxuICAgICAgICAgICAgICB0aGlzLmdldFByb2R1Y3RMaXN0KCk7XHJcbiAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25MaXN0KCk7ICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgLy8gfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcblxyXG4gICAgICAgIC8vIHRoaXMuY2xpZW50QmlsbGluZ0luZm8odGhpcy5jbGllbnRJZCk7XHJcbiAgICAgICAgLy8gdGhpcy5nZXRwYXltZW50aW52b2ljZSh0aGlzLmNsaWVudElkKTtcclxuICAgICAgICAvLyB0aGlzLnBheW1lbnRpbnZvaWNlZm9ybS5kaXNhYmxlKClcclxuICAgICAgICAvLyB0aGlzLmludm9pY2VUYWJsZURhdGEoKTtcclxuICAgICAgfSBlbHNlIGlmKCFkYXRhKXtcclxuICAgICAgICBjb25zdCB1c2VyRGF0YTogYW55ID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcInVzZXItaW5mb1wiKSB8fCBcInt9XCIpO1xyXG4gICAgICAgIHRoaXMuY2xpZW50SWQgPSB1c2VyRGF0YS5jbGllbnRJZDtcclxuICAgICAgICB0aGlzLmR5bmFtaWNEYXRhLmNsaWVudElkID0gdGhpcy5jbGllbnRJZFxyXG4gICAgICAgIHRoaXMuZ3MudXNlckFjY2Vzcy5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChkYXRhOmFueSkgPT4ge1xyXG4gICAgICAgICAgaWYoZGF0YSkge1xyXG4gICAgICAgICAgICB0aGlzLnVzZXJUeXBlID0gZGF0YS51c2VyVHlwZTtcclxuICAgICAgICAgICAgLy8gaWYoZGF0YT8udXNlclR5cGUgPT0gJ3RhbmdvJykge1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgICB0aGlzLmdldFByb2R1Y3RMaXN0KCk7XHJcbiAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uTGlzdCgpO1xyXG4gICAgICAgICAgICAvLyB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSlcclxuXHJcbiAgICAgICAgLy8gdGhpcy5jbGllbnRCaWxsaW5nSW5mbyh0aGlzLmNsaWVudElkKTtcclxuICAgICAgICAvLyB0aGlzLmdldHBheW1lbnRpbnZvaWNlKHRoaXMuY2xpZW50SWQpO1xyXG4gICAgICAgIC8vIHRoaXMucGF5bWVudGludm9pY2Vmb3JtLmRpc2FibGUoKVxyXG4gICAgICAgIC8vIHRoaXMuaW52b2ljZVRhYmxlRGF0YSgpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLnJlZnJlc2hTdWJzY3JpcHRpb25Ob3RpZmljYXRpb24ucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgoZSk9PntcclxuICAgICAgaWYoZSl7XHJcbiAgICAgICAgdGhpcy5nZXRQcm9kdWN0TGlzdCgpOyAgICAgICAgXHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25MaXN0KCk7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcblxyXG5cclxuICB9XHJcblxyXG4gIHNldFBhZ2VEYXRhKCkge1xyXG4gICAgdGhpcy5wYWdlSW5mby5zZXRUaXRsZSgnU2V0dGluZ3MnKVxyXG4gICAgdGhpcy5wYWdlSW5mby5zZXREZXNjcmlwdGlvbignRWRpdCBhbmQgY29uZmlndXJlIHlvdXIgYnJhbmQgYWNjb3VudCBkZXRhaWxzJylcclxuICAgIGxldCBicmVhZGNydW1icyA6IGFueVtdPVtdO1xyXG4gIGlmICh0aGlzLmdzLnVzZXJBY2Nlc3MudmFsdWU/LnVzZXJUeXBlID09PSBcInRhbmdvXCIpIHtcclxuICAgIGJyZWFkY3J1bWJzPSAgW1xyXG4gICAgICB7XHJcbiAgICAgICAgdGl0bGU6IFwiTWFuYWdlXCIsXHJcbiAgICAgICAgcGF0aDogXCIvbWFuYWdlL2JyYW5kc1wiLFxyXG4gICAgICAgIGlzQWN0aXZlOiBmYWxzZSxcclxuICAgICAgICBpc1NlcGFyYXRvcjogZmFsc2UsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB0aXRsZTogXCJNYW5hZ2VcIixcclxuICAgICAgICBwYXRoOiBcIi9tYW5hZ2UvYnJhbmRzXCIsXHJcbiAgICAgICAgaXNBY3RpdmU6IGZhbHNlLFxyXG4gICAgICAgIGlzU2VwYXJhdG9yOiB0cnVlLFxyXG4gICAgICB9LFxyXG4gICAgXTtcclxuICB9IGVsc2UgaWYgKHRoaXMuZ3MudXNlckFjY2Vzcy52YWx1ZT8udXNlclR5cGUgPT09IFwiY2xpZW50XCIpIHtcclxuICAgIGJyZWFkY3J1bWJzPSBbXHJcbiAgICAgIHtcclxuICAgICAgICB0aXRsZTogXCJNYW5hZ2VcIixcclxuICAgICAgICBwYXRoOiBcIi9tYW5hZ2Uvc3VtbWFyeVwiLFxyXG4gICAgICAgIGlzQWN0aXZlOiBmYWxzZSxcclxuICAgICAgICBpc1NlcGFyYXRvcjogZmFsc2UsXHJcbiAgICAgIH0sXHJcbiAgICAgIHtcclxuICAgICAgICB0aXRsZTogXCJNYW5hZ2VcIixcclxuICAgICAgICBwYXRoOiBcIi9tYW5hZ2Uvc3VtbWFyeVwiLFxyXG4gICAgICAgIGlzQWN0aXZlOiBmYWxzZSxcclxuICAgICAgICBpc1NlcGFyYXRvcjogdHJ1ZSxcclxuICAgICAgfSxcclxuICAgIF07XHJcbiAgfVxyXG4gIHRoaXMucGFnZUluZm8uc2V0QnJlYWRjcnVtYnMoYnJlYWRjcnVtYnMpO1xyXG4gIH1cclxuXHJcblxyXG4gIGdldENsaWVudERhdGEoKSB7XHJcbiAgICB0aGlzLmNsaWVudEFwaS5jbGllbnRJZC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChlKSA9PiB7XHJcbiAgICAgIGlmIChlKSB7XHJcbiAgICAgICAgdGhpcy5wYWdlU3RhdGUkLm5leHQoJ2xvYWRpbmcnKVxyXG4gICAgICAgIHRoaXMuY2xpZW50QXBpLmdldEJyYW5kRGV0YWlscyhlKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKHtcclxuICAgICAgICAgIG5leHQ6IChyZXMpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5jbGllbnRBcGkuY2xpZW50RGF0YS5uZXh0KHJlcy5kYXRhKVxyXG4gICAgICAgICAgICAgdGhpcy5iaWxsaW5nRGlzYWJsZWQgPSByZXMuZGF0YT8uZmVhdHVyZUNvbmZpZ3MuaXNiaWxsaW5nRGlzYWJsZWQ7XHJcbiAgICAgICAgICAgIHRoaXMucGFnZVN0YXRlJC5uZXh0KCdsb2FkZWQnKVxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGVycm9yOiAoZXJyb3IpID0+IHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZXJyb3IpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgIH0pXHJcblxyXG4gIH1cclxuICBwcm9kdWN0dHJhaWxEcm9wZG93bihldmVudDogTW91c2VFdmVudCwgaW5kZXg6IGFueSkge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLm5vdGlmaWNhdGlvbkRldGFpbHMubm90aWZpY2F0aW9uTGlzdC5mb3JFYWNoKChpdGVtOmFueSkgPT4ge1xyXG4gICAgICBpdGVtLnByb2R1Y3R0cmFpbGRyb3BEb3duID0gZmFsc2U7XHJcbiAgICB9KVxyXG4gICAgdGhpcy5ub3RpZmljYXRpb25EZXRhaWxzLm5vdGlmaWNhdGlvbkxpc3RbaW5kZXhdLnByb2R1Y3R0cmFpbGRyb3BEb3duID0gIXRoaXMubm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0W2luZGV4XS5wcm9kdWN0dHJhaWxkcm9wRG93blxyXG4gIH1cclxuICBub3RpZmljYXRpb25MaXN0KCkge1xyXG4gICAgdGhpcy5ub3RpZmljYXRpb25EZXRhaWxzID0gW107XHJcbiAgICBsZXQgZGF0YSA9IHRoaXMuY2xpZW50SWQ7XHJcbiAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLmdldE5vdGlmaWNhdGlvbihkYXRhKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uRGV0YWlscyA9IHJlcy5kYXRhO1xyXG4gICAgICAgIFxyXG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0LmZvckVhY2goKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgICAgICAgaXRlbS5wcm9kdWN0dHJhaWxkcm9wRG93biA9IGZhbHNlO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy5jdXJyZW50UGxhbiA9IHJlcy5kYXRhLmN1cnJlbnRQbGFuO1xyXG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiBcclxuICAgYXBwcm92ZXRyaWFsKGRhdGE6IGFueSwgdHlwZTogc3RyaW5nKSB7XHJcblxyXG5cclxuICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihTa2lwdHJhaWxDb21wb25lbnQsIHtcclxuICAgICAgY2VudGVyZWQ6IHRydWUsIHNpemU6ICdtZCcsXHJcbiAgICB9KTtcclxuICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnByb2R1Y3ROYW1lID0gZGF0YS5uYW1lO1xyXG4gICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UudHlwZSA9IHR5cGU7XHJcblxyXG4gICAgbW9kYWxSZWYucmVzdWx0LnRoZW4oKHJlc3VsdCkgPT4ge1xyXG4gICAgICBpZiAocmVzdWx0KSB7XHJcbiAgICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICAgIGlkOiBkYXRhLl9pZCxcclxuICAgICAgICAgIHR5cGU6IHJlc3VsdFxyXG4gICAgICAgIH0gICBcclxuICAgICAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLmFwcHJvdmVUcmlhbChwYXJhbXMpLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XHJcbiAgICAgICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgICAgICBpZih0eXBlID09ICdhcHByb3ZlJykgeztcclxuICAgICAgICAgICAgICB0aGlzLmdldFByb2R1Y3RMaXN0KCk7XHJcbiAgICAgICAgICAgICAgdGhpcy50b2FzdC5nZXRTdWNjZXNzVG9hc3QoYCR7ZGF0YS5uYW1lfSB0cmlhbCByZXF1ZXN0IGhhcyBiZWVuIGFwcHJvdmVkIHN1Y2Nlc3NmdWxseS5gKVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGlmKHR5cGUgPT0gJ2NhbmNlbCcpIHtcclxuICAgICAgICAgICAgICB0aGlzLnRvYXN0LmdldEVycm9yVG9hc3QoYCR7ZGF0YS5uYW1lfSB0cmlhbCByZXF1ZXN0IGhhcyBiZWVuIHNraXBwZWQuYClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbkxpc3QoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICB9fSlcclxuICAgIFxyXG4gIH1cclxuICBnZXRQcm9kdWN0TGlzdCgpIHtcclxuICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICBsZXQgZGF0YSA9IHtcclxuICAgICAgaWQ6dGhpcy5jbGllbnRJZCxcclxuICAgICAgc29ydENvbHVtbjonc3RvcmVDb3VudCcsXHJcbiAgICAgIHNvcnRCeTp0aGlzLnNvcnRCeVxyXG4gICAgfTtcclxuICAgIHRoaXMuUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UuZ2V0UHJvZHVjdExpc3QoZGF0YSkucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICB0aGlzLm5vRGF0YSA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMucHJvZHVjdExpc3QgPSByZXMuZGF0YTtcclxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICB0aGlzLm5vRGF0YSA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH0sKGVycm9yOmFueSkgPT4ge1xyXG4gICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgdGhpcy5ub0RhdGEgPSB0cnVlO1xyXG4gICAgfSlcclxuICB9XHJcbiAgY2FuY2VsVW5zdWJzY3JpYmUoZGF0YTogYW55LCB0eXBlOiBhbnkpIHtcclxuICAgIGxldCBwYXJhbXMgPSB7XHJcbiAgICAgIGlkOiBkYXRhLl9pZCxcclxuICAgICAgdHlwZTogdHlwZVxyXG4gICAgfVxyXG4gICAgdGhpcy5hcHByb3ZlQ2FuY2VsVW5zdWJzY3JpYmUocGFyYW1zKTtcclxuICB9XHJcblxyXG4gIGFwcHJvdmVDYW5jZWxVbnN1YnNjcmliZShkYXRhOiBhbnkpIHtcclxuICAgIHRoaXMuUGF5bWVudFN1YnNjcmlwdGlvblNlcnZpY2UudW5zdWJzY3JpYmVBcHByb3ZhbChkYXRhKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICBpZiAocmVzICYmIHJlcy5jb2RlID09IDIwMCkge1xyXG4gICAgICAgIGlmIChkYXRhLnR5cGUgPT0gJ3Vuc3Vic2NyaWJlJykge1xyXG4gICAgICAgICAgdGhpcy50b2FzdC5nZXRQcmltYXJ5VG9hc3QoYFVuc3Vic2NyaWJlZCBUYW5nbyBTdWl0ZSBmb3IgJHt0aGlzLmNsaWVudGluZm8uY2xpZW50TmFtZX0gc3VjY2Vzc2Z1bGx5YClcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25MaXN0KCk7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIH1cclxuICAgIH0pXHJcbiAgfVxyXG4gIFN1YnNjcmliZShwcm9kdWN0dHJhaWx2YWx1ZTogYW55LCBkYXRhOiBhbnkpIHtcclxuICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihUcmFpbFNldHRpbmdzQ29tcG9uZW50LCB7XHJcbiAgICAgIGNlbnRlcmVkOiB0cnVlLCBzaXplOiAnbWQnLFxyXG4gICAgfSk7XHJcbiAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5zZXR0aW5nc3ZhbHVlID0gcHJvZHVjdHRyYWlsdmFsdWU7XHJcbiAgICBtb2RhbFJlZi5yZXN1bHQudGhlbigocmVzdWx0KSA9PiB7XHJcbiAgICAgIGlmIChyZXN1bHQgPT0gJ3N1YnNjcmliZWQnKSB7XHJcbiAgICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICAgIGNsaWVudElkOiB0aGlzLmNsaWVudElkLFxyXG4gICAgICAgICAgcHJvZHVjdDogW1xyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgdHlwZTogJ3N1YnNjcmlwdGlvbicsXHJcbiAgICAgICAgICAgICAgbmFtZTogZGF0YS5wcm9kdWN0XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIF1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5QYXltZW50U3Vic2NyaXB0aW9uU2VydmljZS51cGRhdGVQcm9kdWN0KHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgIGlmIChyZXMgJiYgcmVzLmNvZGUgPT0gMjAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMudG9hc3QuZ2V0U3VjY2Vzc1RvYXN0KGAke2RhdGEubmFtZX0gc3VjY2Vzc2Z1bGx5IGFkZGVkIHRvIHRoZSBwcm9kdWN0IHN1YnNjcmlwdGlvbiBsaXN0LmApO1xyXG4gICAgICAgICAgICB0aGlzLm5vdGlmaWNhdGlvbkxpc3QoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KVxyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHN1YnNjcmliZXByb2R1Y3QoZGF0YTogYW55LHR5cGU6YW55KSB7XHJcbiAgICBjb25zdCBtb2RhbFJlZiA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oU3Vic2NyaWJlUmVxdWVzdENvbXBvbmVudCwge1xyXG4gICAgICBjZW50ZXJlZDogdHJ1ZSwgc2l6ZTogJ21kJyxcclxuICAgIH0pO1xyXG4gICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UucHJvZHVjdE5hbWUgPSBkYXRhLm5hbWU7XHJcbiAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS50eXBlID0gdHlwZTtcclxuXHJcbiAgICBtb2RhbFJlZi5yZXN1bHQudGhlbigocmVzdWx0KSA9PiB7XHJcbiAgICAgIGlmIChyZXN1bHQgPT0gJ3N1YnNjcmliZXByb2R1Y3QnKSB7XHJcbiAgICAgICAgbGV0IHBhcmFtcyA9IHtcclxuICAgICAgICAgIGNsaWVudElkOiB0aGlzLmNsaWVudElkLFxyXG4gICAgICAgICAgcHJvZHVjdDogW1xyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgdHlwZTogdHlwZSxcclxuICAgICAgICAgICAgICBuYW1lOiBkYXRhLnByb2R1Y3RcclxuICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgXVxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLlBheW1lbnRTdWJzY3JpcHRpb25TZXJ2aWNlLnVwZGF0ZVByb2R1Y3QocGFyYW1zKS5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSkuc3Vic2NyaWJlKChyZXM6IGFueSkgPT4ge1xyXG4gICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgbGV0IG1lc3NhZ2U7XHJcbiAgICAgICAgICAgIG1lc3NhZ2UgPSB0eXBlID09ICd1bnN1YnNjcmliZScgPyBgJHtkYXRhLm5hbWV9IFVuc3Vic2NyaWJlZCBzdWNjZXNzZnVsbHlgIDogYCR7ZGF0YS5uYW1lfSBzdWNjZXNzZnVsbHkgYWRkZWQgdG8gdGhlIHByb2R1Y3Qgc3Vic2NyaXB0aW9uIGxpc3QuYDtcclxuICAgICAgICAgICAgdGhpcy50b2FzdC5nZXRTdWNjZXNzVG9hc3QobWVzc2FnZSk7XHJcbiAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uTGlzdCgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pXHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlQ2lyY2xlQ2hhcnQoZGF0YTogYW55LCBpbmRleDogYW55KTogdm9pZCB7XHJcbiAgICBsZXQgaWQgPSAncHJvZ3Jlc3MtY2lyY2xlLScgKyBpbmRleDtcclxuICAgIGxldCB0ZXh0ID0gJ3BlcmNlbnRhZ2UtdGV4dC0nICsgaW5kZXg7XHJcbiAgICBjb25zdCBwcm9ncmVzc0NpcmNsZSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtcclxuICAgIGNvbnN0IHBlcmNlbnRhZ2VUZXh0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGV4dCk7XHJcbiAgICBpZiAocHJvZ3Jlc3NDaXJjbGUgJiYgcGVyY2VudGFnZVRleHQpIHtcclxuICAgICAgY29uc3QgY2lyY3VtZmVyZW5jZSA9IE1hdGguUEkgKiAyICogcGFyc2VGbG9hdChwcm9ncmVzc0NpcmNsZS5nZXRBdHRyaWJ1dGUoJ3InKSEpO1xyXG4gICAgICBjb25zdCBkYXNoYXJyYXkgPSBjaXJjdW1mZXJlbmNlO1xyXG4gICAgICBjb25zdCBkYXNob2Zmc2V0ID0gY2lyY3VtZmVyZW5jZSAtIChkYXRhIC8gMTAwKSAqIGNpcmN1bWZlcmVuY2U7XHJcblxyXG4gICAgICBwcm9ncmVzc0NpcmNsZS5zZXRBdHRyaWJ1dGUoJ3N0cm9rZS1kYXNoYXJyYXknLCBkYXNoYXJyYXkudG9TdHJpbmcoKSk7XHJcbiAgICAgIHByb2dyZXNzQ2lyY2xlLnNldEF0dHJpYnV0ZSgnc3Ryb2tlLWRhc2hvZmZzZXQnLCBkYXNob2Zmc2V0LnRvU3RyaW5nKCkpO1xyXG5cclxuICAgICAgcGVyY2VudGFnZVRleHQudGV4dENvbnRlbnQgPSBgJHtkYXRhfSVgO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvZHVjdHRyYWlsSXRlbShwcm9kdWN0dHJhaWx2YWx1ZTogYW55LCBkYXRhOiBhbnksIHR5cGU6YW55KSB7XHJcblxyXG4gICAgaWYgKHByb2R1Y3R0cmFpbHZhbHVlID09ICdFeHRlbmQgVHJpYWwnKSB7XHJcbiAgICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihUcmFpbFNldHRpbmdzQ29tcG9uZW50LCB7XHJcbiAgICAgICAgY2VudGVyZWQ6IHRydWUsIHNpemU6ICdtZCcsXHJcbiAgICAgIH0pO1xyXG4gICAgICBtb2RhbFJlZi5jb21wb25lbnRJbnN0YW5jZS5zZXR0aW5nc3ZhbHVlID0gcHJvZHVjdHRyYWlsdmFsdWU7XHJcbiAgICAgIG1vZGFsUmVmLnJlc3VsdC50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0LnRpdGxlID09ICd0cmlhbGV4dGVuZCcpIHtcclxuICAgICAgICAgIGxldCBwYXJhbXMgPSB7XHJcbiAgICAgICAgICAgIGNsaWVudElkOiB0aGlzLmNsaWVudElkLFxyXG4gICAgICAgICAgICBkYXlzOiByZXN1bHQuY291bnQsXHJcbiAgICAgICAgICAgIHByb2R1Y3Q6IGRhdGEucHJvZHVjdFxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5QYXltZW50U3Vic2NyaXB0aW9uU2VydmljZS50cmlhbEV4dGVudEFwcHJvdmFsKHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICB0aGlzLnRvYXN0LmdldFN1Y2Nlc3NUb2FzdChgJHtkYXRhLm5hbWV9IHRyaWFsIGV4dGVuZGVkIHN1Y2Nlc3NmdWxseWApO1xyXG4gICAgICAgICAgICAgIHRoaXMubm90aWZpY2F0aW9uTGlzdCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcblxyXG4gICAgfSBlbHNlIGlmIChwcm9kdWN0dHJhaWx2YWx1ZSA9PSAnQ2FuY2VsIFByb2R1Y3QnKSB7XHJcbiAgICAgIGNvbnN0IG1vZGFsUmVmID0gdGhpcy5tb2RhbFNlcnZpY2Uub3BlbihVbnN1YnNjcmliZVJlcXVlc3RDb21wb25lbnQsIHtcclxuICAgICAgICBjZW50ZXJlZDogdHJ1ZSwgc2l6ZTogJ21kJyxcclxuICAgICAgfSk7XHJcbiAgICAgIG1vZGFsUmVmLmNvbXBvbmVudEluc3RhbmNlLnNldHRpbmdzdmFsdWUgPSBwcm9kdWN0dHJhaWx2YWx1ZTtcclxuICAgICAgbW9kYWxSZWYuY29tcG9uZW50SW5zdGFuY2UucHJvZHVjdE5hbWUgPSBkYXRhLm5hbWU7XHJcbiAgICAgIG1vZGFsUmVmLnJlc3VsdC50aGVuKChyZXN1bHQpID0+IHtcclxuICAgICAgICBpZiAocmVzdWx0ID09ICd1bnN1YnNjcmliZWQnKSB7XHJcbiAgICAgICAgICBsZXQgcGFyYW1zID0ge1xyXG4gICAgICAgICAgICBjbGllbnRJZDogdGhpcy5jbGllbnRJZCxcclxuICAgICAgICAgICAgcHJvZHVjdDogW1xyXG4gICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIHR5cGU6IHR5cGUsXHJcbiAgICAgICAgICAgICAgICBuYW1lOiBkYXRhLnByb2R1Y3RcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy5QYXltZW50U3Vic2NyaXB0aW9uU2VydmljZS51cGRhdGVQcm9kdWN0KHBhcmFtcykucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcclxuICAgICAgICAgICAgaWYgKHJlcyAmJiByZXMuY29kZSA9PSAyMDApIHtcclxuICAgICAgICAgICAgICBsZXQgbWVzc2FnZTtcclxuICAgICAgICAgICAgICBtZXNzYWdlID0gdHlwZSA9PSAndW5zdWJzY3JpYmUnID8gYCR7ZGF0YS5uYW1lfSBVbnN1YnNjcmliZWQgc3VjY2Vzc2Z1bGx5YCA6IGAke2RhdGEubmFtZX0gc3VjY2Vzc2Z1bGx5IGFkZGVkIHRvIHRoZSBwcm9kdWN0IHN1YnNjcmlwdGlvbiBsaXN0LmA7XHJcbiAgICAgICAgICAgICAgY29uc29sZS5sb2cobWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgdGhpcy50b2FzdC5nZXRTdWNjZXNzVG9hc3QobWVzc2FnZSk7XHJcbiAgICAgICAgICAgICAgdGhpcy5ub3RpZmljYXRpb25MaXN0KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0pXHJcbiAgICAgICAgLy8gdGhpcy5zdWJzY3JpYmVwcm9kdWN0KGRhdGEsJ3Vuc3Vic2NyaWJlJylcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9kdWN0dHJhaWxJc3N1ZSA9IHByb2R1Y3R0cmFpbHZhbHVlO1xyXG4gICAgdGhpcy5wcm9kdWN0dHJhaWxkcm9wRG93biA9IGZhbHNlO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDpjbGljaycsIFsnJGV2ZW50J10pXHJcbiAgb25Eb2N1bWVudENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgLy8gIGlmICh0aGlzLnBheW1lbnR0eXBlZHJvcERvd24pIHtcclxuICAvLyAgIHRoaXMucGF5bWVudHR5cGVkcm9wRG93biA9IGZhbHNlO1xyXG4gIC8vICB9XHJcbiAgLy8gIGlmICh0aGlzLmRyb3BEb3duKSB7XHJcbiAgLy8gICB0aGlzLmRyb3BEb3duID0gZmFsc2U7XHJcbiAgLy8gIH1cclxuICAvLyAgaWYgKHRoaXMuY3VycmVuY3lkcm9wRG93bikge1xyXG4gIC8vICAgdGhpcy5jdXJyZW5jeWRyb3BEb3duID0gZmFsc2U7XHJcbiAgLy8gIH1cclxuICAvLyAgaWYgKHRoaXMuaW52b2ljZWRyb3BEb3duKSB7XHJcbiAgLy8gICB0aGlzLmludm9pY2Vkcm9wRG93biA9IGZhbHNlO1xyXG4gIC8vICB9XHJcbiAgLy8gIGlmICh0aGlzLnZpZXdwbGFuZHJvcERvd24pIHtcclxuICAvLyAgIHRoaXMudmlld3BsYW5kcm9wRG93biA9IGZhbHNlO1xyXG4gIC8vICB9XHJcbiAgIGlmKHRoaXMubm90aWZpY2F0aW9uRGV0YWlscz8ubm90aWZpY2F0aW9uTGlzdCkge1xyXG4gICAgIHRoaXMubm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0LmZvckVhY2goKGl0ZW06YW55KT0+e1xyXG4gICAgICBpdGVtLnByb2R1Y3R0cmFpbGRyb3BEb3duID0gIGZhbHNlXHJcbiAgICAgfSlcclxuICAgfVxyXG4gIH1cclxuXHJcblxyXG5cclxufVxyXG4iLCI8IS0tIGNsaWVudCByZXF1ZXN0IGNhcmQgc3RhcnQgLS0+XHJcbjxkaXYgY2xhc3M9XCJnLTRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJteS0yIGQtZmxleCBvdmVyZmxvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IG5vdGlmaWNhdGlvbiBvZiBub3RpZmljYXRpb25EZXRhaWxzLm5vdGlmaWNhdGlvbkxpc3Q7bGV0IGk9IGluZGV4O2xldCBsYXN0ID0gbGFzdFwiXHJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIm5vdGlmaWNhdGlvbkRldGFpbHMubm90aWZpY2F0aW9uTGlzdD8ubGVuZ3RoID09PSAyID8gJ2NvbC02JyA6IChub3RpZmljYXRpb25EZXRhaWxzLm5vdGlmaWNhdGlvbkxpc3Q/Lmxlbmd0aCA+IDIgPyAnY29sLTQnIDogJ2NvbC0xMicpXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b2FzdGNhcmRcIiBbbmdDbGFzc109XCIhbGFzdCA/ICdtZS00JyA6ICcnXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzeW1ib2wgc3ltYm9sLTMwcHggbWUtNVwiPjxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgc3JjPVwiLi9hc3NldHMvdGFuZ28vY3VzdG9tcG9wdXAtSWNvbnMvZGFuZ2VyLWFsZXJ0LXByaW1hcnkuc3ZnXCIgYWx0PVwiXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRvYXN0dGV4dCBkLWJsb2NrXCI+e3tub3RpZmljYXRpb24ubmFtZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJub3RpZmljYXRpb24uY2F0ZWdvcnkgPT09ICdUcmlhbCcgJiYgbm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0Lmxlbmd0aCA9PT0gMSYmdXNlclR5cGUgPT09J3RhbmdvJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8YSB0eXBlPVwic3VibWl0XCIgKGNsaWNrKT1cImFwcHJvdmV0cmlhbChub3RpZmljYXRpb24sJ2NhbmNlbCcpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLW91dGxpbmUgYnRuIG5lZWRoZWxwIG1lLTZcIj48c3BhbiBjbGFzcz1cIm10LTZcIj5Ta2lwXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJpYWw8L3NwYW4+PC9hPjxhIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiYXBwcm92ZXRyaWFsKG5vdGlmaWNhdGlvbiwnYXBwcm92ZScpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLXByaW1hcnkgcHgtNCBuZy1zdGFyLWluc2VydGVkXCI+PHNwYW4+QXBwcm92ZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyaWFsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9hPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibm90aWZpY2F0aW9uLmNhdGVnb3J5ID09PSAndHJpYWwgcHJvZHVjdCcgJiYgbm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0Lmxlbmd0aCA9PT0gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsaWduLWl0ZW1zLXN0YXJ0IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGRheXNsZWZ0IG15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e25vdGlmaWNhdGlvbi5kYXl9fSBEYXlzIExlZnRcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYWxpZ24taXRlbXMtc3RhcnQgdHJhaWxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRnJlZSB0cmlhbDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2PjxzdmcgaWQ9XCJjaXJjbGUtY2hhcnRcIiB3aWR0aD1cIjk0XCIgaGVpZ2h0PVwiNzBcIiB2aWV3Qm94PVwiMCAwIDEwMCAxMDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2lyY2xlIGN4PVwiNTBcIiBjeT1cIjUwXCIgcj1cIjQwXCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCIjZjBmMGYwXCIgc3Ryb2tlLXdpZHRoPVwiOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NpcmNsZT5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgaWQ9XCJwcm9ncmVzcy1jaXJjbGUte3tpfX1cIiBjeD1cIjUwXCIgY3k9XCI1MFwiIHI9XCI0MFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMwMDdiZmZcIiBzdHJva2Utd2lkdGg9XCI4XCIgc3Ryb2tlLWRhc2hhcnJheT1cIjI1MS4yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLnN0cm9rZS1kYXNob2Zmc2V0XT1cInVwZGF0ZUNpcmNsZUNoYXJ0KG5vdGlmaWNhdGlvbi5wZXJjZW50YWdlLGkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2lyY2xlPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHRleHQgaWQ9XCJwZXJjZW50YWdlLXRleHQte3tpfX1cIiB4PVwiNTBcIiB5PVwiNTRcIiBjbGFzcz1cInByb2R1Y3R0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYW5jaG9yPVwibWlkZGxlXCIgZmlsbD1cIiMzMzMzMzNcIj57e25vdGlmaWNhdGlvbi5wZXJjZW50YWdlfX0lPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIHR5cGU9XCJidXR0b25cIiB0YWJpbmRleD1cIjBcIiAoY2xpY2spPVwic3Vic2NyaWJlcHJvZHVjdChub3RpZmljYXRpb24sJ3N1YnNjcmlwdGlvbicpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00IG5nLXN0YXItaW5zZXJ0ZWRcIj48c3Bhbj5TdWJzY3JpYmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9hPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLXJlbGF0aXZlXCIgKm5nSWY9XCJ1c2VyVHlwZT09PSd0YW5nbydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXMtNVwiIChjbGljayk9XCJwcm9kdWN0dHJhaWxEcm9wZG93bigkZXZlbnQsaSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJqdXN0aWZ5LWNvbnRlbnQtZW5kIGN1cnNvci1wb2ludGVyXCI+PHN2ZyB3aWR0aD1cIjQ0XCIgaGVpZ2h0PVwiNDRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNDQgNDRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBmaWx0ZXI9XCJ1cmwoI2ZpbHRlcjBfZF8xNDg3Nl8yODAzNjcpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxyZWN0IHg9XCIyXCIgeT1cIjFcIiB3aWR0aD1cIjQwXCIgaGVpZ2h0PVwiNDBcIiByeD1cIjhcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMi41XCIgeT1cIjEuNVwiIHdpZHRoPVwiMzlcIiBoZWlnaHQ9XCIzOVwiIHJ4PVwiNy41XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiNEMEQ1RERcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMi4wMDEzIDIxLjgzNEMyMi40NjE1IDIxLjgzNCAyMi44MzQ2IDIxLjQ2MDkgMjIuODM0NiAyMS4wMDA3QzIyLjgzNDYgMjAuNTQwNCAyMi40NjE1IDIwLjE2NzMgMjIuMDAxMyAyMC4xNjczQzIxLjU0MTEgMjAuMTY3MyAyMS4xNjggMjAuNTQwNCAyMS4xNjggMjEuMDAwN0MyMS4xNjggMjEuNDYwOSAyMS41NDExIDIxLjgzNCAyMi4wMDEzIDIxLjgzNFpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjIuMDAxMyAxNi4wMDA3QzIyLjQ2MTUgMTYuMDAwNyAyMi44MzQ2IDE1LjYyNzYgMjIuODM0NiAxNS4xNjczQzIyLjgzNDYgMTQuNzA3MSAyMi40NjE1IDE0LjMzNCAyMi4wMDEzIDE0LjMzNEMyMS41NDExIDE0LjMzNCAyMS4xNjggMTQuNzA3MSAyMS4xNjggMTUuMTY3M0MyMS4xNjggMTUuNjI3NiAyMS41NDExIDE2LjAwMDcgMjIuMDAxMyAxNi4wMDA3WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0yMi4wMDEzIDI3LjY2NzNDMjIuNDYxNSAyNy42NjczIDIyLjgzNDYgMjcuMjk0MiAyMi44MzQ2IDI2LjgzNEMyMi44MzQ2IDI2LjM3MzcgMjIuNDYxNSAyNi4wMDA3IDIyLjAwMTMgMjYuMDAwN0MyMS41NDExIDI2LjAwMDcgMjEuMTY4IDI2LjM3MzcgMjEuMTY4IDI2LjgzNEMyMS4xNjggMjcuMjk0MiAyMS41NDExIDI3LjY2NzMgMjIuMDAxMyAyNy42NjczWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMS42N1wiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZpbHRlciBpZD1cImZpbHRlcjBfZF8xNDg3Nl8yODAzNjdcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI0NFwiIGhlaWdodD1cIjQ0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlclVuaXRzPVwidXNlclNwYWNlT25Vc2VcIiBjb2xvci1pbnRlcnBvbGF0aW9uLWZpbHRlcnM9XCJzUkdCXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVGbG9vZCBmbG9vZC1vcGFjaXR5PVwiMFwiIHJlc3VsdD1cIkJhY2tncm91bmRJbWFnZUZpeFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCBpbj1cIlNvdXJjZUFscGhhXCIgdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVzPVwiMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMTI3IDBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdD1cImhhcmRBbHBoYVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVPZmZzZXQgZHk9XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMC4wNjI3NDUxIDAgMCAwIDAgMC4wOTQxMTc2IDAgMCAwIDAgMC4xNTY4NjMgMCAwIDAgMC4wNSAwXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbjI9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdD1cImVmZmVjdDFfZHJvcFNoYWRvd18xNDg3Nl8yODAzNjdcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQmxlbmQgbW9kZT1cIm5vcm1hbFwiIGluPVwiU291cmNlR3JhcGhpY1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4yPVwiZWZmZWN0MV9kcm9wU2hhZG93XzE0ODc2XzI4MDM2N1wiIHJlc3VsdD1cInNoYXBlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWx0ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJub3RpZmljYXRpb24ucHJvZHVjdHRyYWlsZHJvcERvd25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY2FyZCBweS0yIHctMjAwcHggcG9zaXRpb24tYWJzb2x1dGUgcHJvZHVjdGRyb3AgdG9wLTIwIGVuZC0wXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsICpuZ0Zvcj1cImxldCBwcm9kdWN0dHJhaWxpdGVtIG9mIHByb2R1Y3R0cmFpbHR5cGVcIiBjbGFzcz1cImxpc3QtdW5zdHlsZWQgbWItMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bGkgY2xhc3M9XCJwcm9kdWN0dGV4dCBweC01IGl0ZW1zIGN1cnNvci1wb2ludGVyIHB5LTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInByb2R1Y3R0cmFpbEl0ZW0ocHJvZHVjdHRyYWlsaXRlbSxub3RpZmljYXRpb24sICd1bnN1YnNjcmliZScpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Byb2R1Y3R0cmFpbGl0ZW19fTwvbGk+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG15LTNcIlxyXG4gICAgICAgICAgICAgICAgICAgICpuZ0lmPVwibm90aWZpY2F0aW9uLmNhdGVnb3J5ID09PSAnVHJpYWwnICYmIG5vdGlmaWNhdGlvbkRldGFpbHMubm90aWZpY2F0aW9uTGlzdC5sZW5ndGggPiAxJiZ1c2VyVHlwZSA9PT0ndGFuZ28nXCI+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInN1Ym1pdFwiIChjbGljayk9XCJhcHByb3ZldHJpYWwobm90aWZpY2F0aW9uLCdjYW5jZWwnKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuLW91dGxpbmUgYnRuIG5lZWRoZWxwIHctNTAgbWUtNiBtdC0zXCI+PHNwYW4gY2xhc3M9XCJtdC02XCI+U2tpcFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJpYWw8L3NwYW4+PC9hPjxhIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwiYXBwcm92ZXRyaWFsKG5vdGlmaWNhdGlvbiwnYXBwcm92ZScpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHB4LTQgbXQtMyB3LTUwIG5nLXN0YXItaW5zZXJ0ZWRcIj48c3Bhbj5BcHByb3ZlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcmlhbFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+PC9hPjwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgbXQtMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nSWY9XCJub3RpZmljYXRpb24uY2F0ZWdvcnkgPT09ICd0cmlhbCBwcm9kdWN0JyAmJiBub3RpZmljYXRpb25EZXRhaWxzLm5vdGlmaWNhdGlvbkxpc3QubGVuZ3RoID4gMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2wtbGctNiBkLWZsZXhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsaWduLWl0ZW1zLXN0YXJ0IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGRheXNsZWZ0IG15LTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7bm90aWZpY2F0aW9uLmRheX19IERheXMgTGVmdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsaWduLWl0ZW1zLXN0YXJ0IHRyYWlsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRnJlZSB0cmlhbDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj48c3ZnIGlkPVwiY2lyY2xlLWNoYXJ0XCIgd2lkdGg9XCI5NFwiIGhlaWdodD1cIjcwXCIgdmlld0JveD1cIjAgMCAxMDAgMTAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgY3g9XCI1MFwiIGN5PVwiNTBcIiByPVwiNDBcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cIiNmMGYwZjBcIiBzdHJva2Utd2lkdGg9XCI4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jaXJjbGU+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjaXJjbGUgaWQ9XCJwcm9ncmVzcy1jaXJjbGUte3tpfX1cIiBjeD1cIjUwXCIgY3k9XCI1MFwiIHI9XCI0MFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwiIzAwN2JmZlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS13aWR0aD1cIjhcIiBzdHJva2UtZGFzaGFycmF5PVwiMjUxLjJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5zdHJva2UtZGFzaG9mZnNldF09XCJ1cGRhdGVDaXJjbGVDaGFydChub3RpZmljYXRpb24ucGVyY2VudGFnZSxpKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2lyY2xlPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dGV4dCBpZD1cInBlcmNlbnRhZ2UtdGV4dC17e2l9fVwiIHg9XCI1MFwiIHk9XCI1NFwiIGNsYXNzPVwicHJvZHVjdHRleHRcIiB0ZXh0LWFuY2hvcj1cIm1pZGRsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGw9XCIjMzMzMzMzXCI+e3tub3RpZmljYXRpb24ucGVyY2VudGFnZX19JTwvdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPjwvZGl2PlxyXG5cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbC1sZy02IFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCIgc3R5bGU9XCJqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhIHR5cGU9XCJidXR0b25cIiB0YWJpbmRleD1cIjBcIiAoY2xpY2spPVwic3Vic2NyaWJlcHJvZHVjdChub3RpZmljYXRpb24sJ3N1YnNjcmlwdGlvbicpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00IG10LTMgbmctc3Rhci1pbnNlcnRlZFwiPjxzcGFuPlN1YnNjcmliZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L2E+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIiAqbmdJZj1cInVzZXJUeXBlPT09J3RhbmdvJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtcy01IG10LTRcIiAoY2xpY2spPVwicHJvZHVjdHRyYWlsRHJvcGRvd24oJGV2ZW50LGkpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwianVzdGlmeS1jb250ZW50LWVuZCBjdXJzb3ItcG9pbnRlclwiPjxzdmcgd2lkdGg9XCI0NFwiIGhlaWdodD1cIjQ0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2aWV3Qm94PVwiMCAwIDQ0IDQ0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGcgZmlsdGVyPVwidXJsKCNmaWx0ZXIwX2RfMTQ4NzZfMjgwMzY3KVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB4PVwiMlwiIHk9XCIxXCIgd2lkdGg9XCI0MFwiIGhlaWdodD1cIjQwXCIgcng9XCI4XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjIuNVwiIHk9XCIxLjVcIiB3aWR0aD1cIjM5XCIgaGVpZ2h0PVwiMzlcIiByeD1cIjcuNVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjRDBENUREXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjIuMDAxMyAyMS44MzRDMjIuNDYxNSAyMS44MzQgMjIuODM0NiAyMS40NjA5IDIyLjgzNDYgMjEuMDAwN0MyMi44MzQ2IDIwLjU0MDQgMjIuNDYxNSAyMC4xNjczIDIyLjAwMTMgMjAuMTY3M0MyMS41NDExIDIwLjE2NzMgMjEuMTY4IDIwLjU0MDQgMjEuMTY4IDIxLjAwMDdDMjEuMTY4IDIxLjQ2MDkgMjEuNTQxMSAyMS44MzQgMjIuMDAxMyAyMS44MzRaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiMzNDQwNTRcIiBzdHJva2Utd2lkdGg9XCIxLjY3XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTIyLjAwMTMgMTYuMDAwN0MyMi40NjE1IDE2LjAwMDcgMjIuODM0NiAxNS42Mjc2IDIyLjgzNDYgMTUuMTY3M0MyMi44MzQ2IDE0LjcwNzEgMjIuNDYxNSAxNC4zMzQgMjIuMDAxMyAxNC4zMzRDMjEuNTQxMSAxNC4zMzQgMjEuMTY4IDE0LjcwNzEgMjEuMTY4IDE1LjE2NzNDMjEuMTY4IDE1LjYyNzYgMjEuNTQxMSAxNi4wMDA3IDIyLjAwMTMgMTYuMDAwN1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMjIuMDAxMyAyNy42NjczQzIyLjQ2MTUgMjcuNjY3MyAyMi44MzQ2IDI3LjI5NDIgMjIuODM0NiAyNi44MzRDMjIuODM0NiAyNi4zNzM3IDIyLjQ2MTUgMjYuMDAwNyAyMi4wMDEzIDI2LjAwMDdDMjEuNTQxMSAyNi4wMDA3IDIxLjE2OCAyNi4zNzM3IDIxLjE2OCAyNi44MzRDMjEuMTY4IDI3LjI5NDIgMjEuNTQxMSAyNy42NjczIDIyLjAwMTMgMjcuNjY3M1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjEuNjdcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmaWx0ZXIgaWQ9XCJmaWx0ZXIwX2RfMTQ4NzZfMjgwMzY3XCIgeD1cIjBcIiB5PVwiMFwiIHdpZHRoPVwiNDRcIiBoZWlnaHQ9XCI0NFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWx0ZXJVbml0cz1cInVzZXJTcGFjZU9uVXNlXCIgY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzPVwic1JHQlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT1cIjBcIiByZXN1bHQ9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQ29sb3JNYXRyaXggaW49XCJTb3VyY2VBbHBoYVwiIHR5cGU9XCJtYXRyaXhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJoYXJkQWxwaGFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlT2Zmc2V0IGR5PVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPVwiMVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB0eXBlPVwibWF0cml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAuMDYyNzQ1MSAwIDAgMCAwIDAuMDk0MTE3NiAwIDAgMCAwIDAuMTU2ODYzIDAgMCAwIDAuMDUgMFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVCbGVuZCBtb2RlPVwibm9ybWFsXCIgaW4yPVwiQmFja2dyb3VuZEltYWdlRml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJlZmZlY3QxX2Ryb3BTaGFkb3dfMTQ4NzZfMjgwMzY3XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbj1cIlNvdXJjZUdyYXBoaWNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluMj1cImVmZmVjdDFfZHJvcFNoYWRvd18xNDg3Nl8yODAzNjdcIiByZXN1bHQ9XCJzaGFwZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZmlsdGVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm90aWZpY2F0aW9uLnByb2R1Y3R0cmFpbGRyb3BEb3duXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQgcHktMiB3LTIwMHB4IHBvc2l0aW9uLWFic29sdXRlIG10LTE3IHotMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCAqbmdGb3I9XCJsZXQgcHJvZHVjdHRyYWlsaXRlbSBvZiBwcm9kdWN0dHJhaWx0eXBlXCIgY2xhc3M9XCJsaXN0LXVuc3R5bGVkIG1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJwcm9kdWN0dHJhaWxJdGVtKHByb2R1Y3R0cmFpbGl0ZW0sbm90aWZpY2F0aW9uLCAndW5zdWJzY3JpYmUnKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3twcm9kdWN0dHJhaWxpdGVtfX08L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPCEtLSA8ZGl2IFtuZ0NsYXNzXT1cIntcclxuICAgICAgICAgICAgJ2NvbC1tZC00JzogdHlwZSA9PT0gJ3RyYWlsJyxcclxuICAgICAgICAgICAgJ2NvbC1tZC02JzogdHlwZSAhPT0gJ3RyYWlsJyxcclxuICAgICAgICAgICAgJ2NvbC0xMic6IHR5cGUgPT09ICd0cmFpbCdcclxuICAgICAgICAgIH1cIiBjbGFzcz1cImNvbC1tZC00IG1iLTVcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0b2FzdGNhcmRcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3ltYm9sIHN5bWJvbC0zMHB4IG1lLTVcIj48c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW1nIHNyYz1cIi4vYXNzZXRzL3RhbmdvL2N1c3RvbXBvcHVwLUljb25zL2Rhbmdlci1hbGVydC1wcmltYXJ5LnN2Z1wiIGFsdD1cIlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0b2FzdHRleHQgZC1ibG9ja1wiPkNsaWVudCBoYXMgUmVxdWVzdGVkIFRhbmdvIFpvbmUgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggbWItMlwiPjxhIHR5cGU9XCJzdWJtaXRcIiBjbGFzcz1cImJ0bi1vdXRsaW5lIGJ0biBuZWVkaGVscCB3LTUwIG1lLTYgbXQtM1wiPjxzcGFuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtdC02XCI+U2tpcFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyaWFsPC9zcGFuPjwvYT48YSB0eXBlPVwiYnV0dG9uXCIgdGFiaW5kZXg9XCIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5IHB4LTQgbXQtMyB3LTUwIG5nLXN0YXItaW5zZXJ0ZWRcIj48c3Bhbj5BcHByb3ZlXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgVHJpYWxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L2E+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+ICAtLT5cclxuPC9kaXY+XHJcbjwhLS0gY2xpZW50IHJlcXVlc3QgY2FyZCBlbmQgLS0+XHJcblxyXG48IS0tIDxkaXYgY2xhc3M9XCJyb3cgZ3gtNCBtYi00XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLXhsLTZcIiBbbmdDbGFzc109XCJpID4gMT8gJ210LTUnIDogJydcIlxyXG4gICAgICAgICpuZ0Zvcj1cImxldCBub3RpZmljYXRpb24gb2Ygbm90aWZpY2F0aW9uRGV0YWlscy5ub3RpZmljYXRpb25MaXN0O2xldCBpPSBpbmRleDtcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiYmlsbGluZ2NhcmQgaC14bC0xMDAgZmxleC1yb3cgZmxleC1zdGFjayBmbGV4LXdyYXAgbWItNiBweC02XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gbXQtMTBcIiAqbmdJZj1cIm5vdGlmaWNhdGlvbi5jYXRlZ29yeSA9PT0gJ1RyaWFsJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gbGV2ZWx2aWV3dGV4dCBtYi0yXCI+XHJcbiAgICAgICAgICAgICAgICAgICAge3tub3RpZmljYXRpb24ubmFtZX19IDxzcGFuIGNsYXNzPVwiYmFkZ2UtbGlnaHQtZ3JleSBtcy0yXCI+e3tjdXJyZW50UGxhbiB8XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlY2FzZX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3VidGV4dFwiPktpbmRseSBtYWtlIG5lY2Vzc2FyeSBhY3Rpb24gZm9yIHRyaWFsXHJcbiAgICAgICAgICAgICAgICAgICAgcmVxdWVzdCBvciBza2lwIHByb2R1Y3QgdG8gc3Vic2NyaXB0aW9uIGxpc3Q8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8ZGl2IGRhdGEta3Qtc3Vic2NyaXB0aW9uLXRhYmxlLXRvb2xiYXI9XCJiYXNlXCIgY2xhc3M9XCJkLWZsZXggbXQtMTVcIj48YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiYXBwcm92ZXRyaWFsKG5vdGlmaWNhdGlvbiwnY2FuY2VsJylcIiB0eXBlPVwic3VibWl0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4tb3V0bGluZSBidG4gbmVlZGhlbHAgbWUtNiBtdC0zXCI+PHNwYW4gY2xhc3M9XCJtdC02XCI+U2tpcCBUcmlhbDwvc3Bhbj48L2E+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFwcHJvdmV0cmlhbChub3RpZmljYXRpb24sJ2FwcHJvdmUnKVwiIHR5cGU9XCJidXR0b25cIiB0YWJpbmRleD1cIjBcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00IG10LTMgbmctc3Rhci1pbnNlcnRlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/LnNldHRpbmdzX3BheW1lbnRTdWJzY3JpcHRpb25zX2lzRWRpdFwiPjxzcGFuPkFwcHJvdmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyaWFsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj48L2E+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIG10LTExXCIgKm5nSWY9XCJub3RpZmljYXRpb24uY2F0ZWdvcnkgPT09ICd1bnN1YnNjcmliZSdcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGxldmVsdmlld3RleHQgbWItMlwiPlxyXG4gICAgICAgICAgICAgICAgICAgIFVuc3Vic2NyaWJlIFJlcXVlc3RcclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN1YnRleHRcIj5DbGllbnQgaGFzIHJlcXVlc3RlZCB0byB1bnN1YnNjcmliZVxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic3VidGV4dGJvbGRcIj5UYW5nbyBTdWl0ZTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1rdC1zdWJzY3JpcHRpb24tdGFibGUtdG9vbGJhcj1cImJhc2VcIiBjbGFzcz1cImQtZmxleCBtdC0yMFwiPjxhIHR5cGU9XCJzdWJtaXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJ0bi1vdXRsaW5lIGJ0biBuZWVkaGVscCBtZS02IG10LTNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2FuY2VsVW5zdWJzY3JpYmUobm90aWZpY2F0aW9uLCdjYW5jZWwnKVwiPjxzcGFuIGNsYXNzPVwibXQtNlwiPkNhbmNlbDwvc3Bhbj48L2E+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImFwcHJvdmVVbnN1YnNjcmliZShub3RpZmljYXRpb24sJ3Vuc3Vic2NyaWJlJylcIiB0eXBlPVwiYnV0dG9uXCIgdGFiaW5kZXg9XCIwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJidG4gYnRuLWRhbmdlciBweC00IG10LTMgbmctc3Rhci1pbnNlcnRlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiKGdzLnVzZXJBY2Nlc3MgfCBhc3luYyk/LnNldHRpbmdzX3BheW1lbnRTdWJzY3JpcHRpb25zX2lzRWRpdFwiPjxzcGFuPkFwcHJvdmVcclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPjwvYT48L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gbXQtMTBcIiAqbmdJZj1cIm5vdGlmaWNhdGlvbi5jYXRlZ29yeSA9PT0gJ3RyaWFsIHByb2R1Y3QnXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBsZXZlbHZpZXd0ZXh0IG1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICB7e25vdGlmaWNhdGlvbi5uYW1lfX0gPHNwYW4gY2xhc3M9XCJiYWRnZS1saWdodC1ncmV5IG1zLTJcIj57e2N1cnJlbnRQbGFuIHxcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGVjYXNlfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdWJ0ZXh0XCI+WW91IHdpbGwgbm90IGJlIGJpbGxlZCBkdXJpbmcgeW91ciBmcmVlXHJcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJzdWJ0ZXh0Ym9sZFwiPnRyaWFsPC9zcGFuPi5UbyBrZWVwIHlvdXJcclxuICAgICAgICAgICAgICAgICAgICBwcm9qZWN0cyBydW5uaW5nIGFmdGVyIHRoZSB0cmlhbCBlbmQsIHVwZ3JhZGUgdG8gYSBwYWlkXHJcbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uLlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicm93IG10LTdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTggZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXY+PHN2ZyBpZD1cImNpcmNsZS1jaGFydFwiIHdpZHRoPVwiOTRcIiBoZWlnaHQ9XCI5NFwiIHZpZXdCb3g9XCIwIDAgMTAwIDEwMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2lyY2xlIGN4PVwiNTBcIiBjeT1cIjUwXCIgcj1cIjQwXCIgZmlsbD1cIm5vbmVcIiBzdHJva2U9XCIjZjBmMGYwXCIgc3Ryb2tlLXdpZHRoPVwiOFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2lyY2xlPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2lyY2xlIGlkPVwicHJvZ3Jlc3MtY2lyY2xlLXt7aX19XCIgY3g9XCI1MFwiIGN5PVwiNTBcIiByPVwiNDBcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cIiMwMDdiZmZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2Utd2lkdGg9XCI4XCIgc3Ryb2tlLWRhc2hhcnJheT1cIjI1MS4yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuc3Ryb2tlLWRhc2hvZmZzZXRdPVwidXBkYXRlQ2lyY2xlQ2hhcnQobm90aWZpY2F0aW9uLnBlcmNlbnRhZ2UsaSlcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2NpcmNsZT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx0ZXh0IGlkPVwicGVyY2VudGFnZS10ZXh0LXt7aX19XCIgeD1cIjUwXCIgeT1cIjU0XCIgY2xhc3M9XCJwcm9kdWN0dGV4dFwiIHRleHQtYW5jaG9yPVwibWlkZGxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiMzMzMzMzNcIj57e25vdGlmaWNhdGlvbi5wZXJjZW50YWdlfX0lPC90ZXh0PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhbGlnbi1pdGVtcy1zdGFydCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBkYXlzbGVmdCBtcy02IG10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7bm90aWZpY2F0aW9uLmRheX19IERheXMgTGVmdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFsaWduLWl0ZW1zLXN0YXJ0IHRyYWlsIG10LTQgbWUtMTZcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGcmVlIHRyaWFsPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29sLWxnLTQgbXQtNlwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKGNsaWNrKT1cInByb2R1Y3R0cmFpbERyb3Bkb3duKCRldmVudCxpKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwianVzdGlmeS1jb250ZW50LWVuZCBjdXJzb3ItcG9pbnRlciBtcy0yMFwiPjxzdmcgd2lkdGg9XCI2MFwiIGhlaWdodD1cIjYwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgNjAgNjBcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGZpbHRlcj1cInVybCgjZmlsdGVyMF9kXzUyMjFfNjAxNDMpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjJcIiB5PVwiMVwiIHdpZHRoPVwiNTZcIiBoZWlnaHQ9XCI1NlwiIHJ4PVwiOFwiIGZpbGw9XCJ3aGl0ZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3QgeD1cIjIuNVwiIHk9XCIxLjVcIiB3aWR0aD1cIjU1XCIgaGVpZ2h0PVwiNTVcIiByeD1cIjcuNVwiIHN0cm9rZT1cIiNEMEQ1RERcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfNTIyMV82MDE0MylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGhcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMzAgMzJDMzEuNjU2OSAzMiAzMyAzMC42NTY5IDMzIDI5QzMzIDI3LjM0MzEgMzEuNjU2OSAyNiAzMCAyNkMyOC4zNDMxIDI2IDI3IDI3LjM0MzEgMjcgMjlDMjcgMzAuNjU2OSAyOC4zNDMxIDMyIDMwIDMyWlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjMzQ0MDU0XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0zNy40IDMyQzM3LjI2NjkgMzIuMzAxNiAzNy4yMjcyIDMyLjYzNjIgMzcuMjg2IDMyLjk2MDZDMzcuMzQ0OCAzMy4yODUgMzcuNDk5NSAzMy41ODQzIDM3LjczIDMzLjgyTDM3Ljc5IDMzLjg4QzM3Ljk3NiAzNC4wNjU3IDM4LjEyMzUgMzQuMjg2MyAzOC4yMjQxIDM0LjUyOTFDMzguMzI0OCAzNC43NzE5IDM4LjM3NjYgMzUuMDMyMiAzOC4zNzY2IDM1LjI5NUMzOC4zNzY2IDM1LjU1NzggMzguMzI0OCAzNS44MTgxIDM4LjIyNDEgMzYuMDYwOUMzOC4xMjM1IDM2LjMwMzcgMzcuOTc2IDM2LjUyNDMgMzcuNzkgMzYuNzFDMzcuNjA0MyAzNi44OTYgMzcuMzgzNyAzNy4wNDM1IDM3LjE0MDkgMzcuMTQ0MUMzNi44OTgxIDM3LjI0NDggMzYuNjM3OCAzNy4yOTY2IDM2LjM3NSAzNy4yOTY2QzM2LjExMjIgMzcuMjk2NiAzNS44NTE5IDM3LjI0NDggMzUuNjA5MSAzNy4xNDQxQzM1LjM2NjMgMzcuMDQzNSAzNS4xNDU3IDM2Ljg5NiAzNC45NiAzNi43MUwzNC45IDM2LjY1QzM0LjY2NDMgMzYuNDE5NSAzNC4zNjUgMzYuMjY0OCAzNC4wNDA2IDM2LjIwNkMzMy43MTYyIDM2LjE0NzIgMzMuMzgxNiAzNi4xODY5IDMzLjA4IDM2LjMyQzMyLjc4NDIgMzYuNDQ2OCAzMi41MzIgMzYuNjU3MiAzMi4zNTQzIDM2LjkyNTVDMzIuMTc2NiAzNy4xOTM4IDMyLjA4MTMgMzcuNTA4MiAzMi4wOCAzNy44M1YzOEMzMi4wOCAzOC41MzA0IDMxLjg2OTMgMzkuMDM5MSAzMS40OTQyIDM5LjQxNDJDMzEuMTE5MSAzOS43ODkzIDMwLjYxMDQgNDAgMzAuMDggNDBDMjkuNTQ5NiA0MCAyOS4wNDA5IDM5Ljc4OTMgMjguNjY1OCAzOS40MTQyQzI4LjI5MDcgMzkuMDM5MSAyOC4wOCAzOC41MzA0IDI4LjA4IDM4VjM3LjkxQzI4LjA3MjMgMzcuNTc5IDI3Ljk2NTEgMzcuMjU4IDI3Ljc3MjUgMzYuOTg4N0MyNy41Nzk5IDM2LjcxOTQgMjcuMzEwNyAzNi41MTQzIDI3IDM2LjRDMjYuNjk4NCAzNi4yNjY5IDI2LjM2MzggMzYuMjI3MiAyNi4wMzk0IDM2LjI4NkMyNS43MTUgMzYuMzQ0OCAyNS40MTU3IDM2LjQ5OTUgMjUuMTggMzYuNzNMMjUuMTIgMzYuNzlDMjQuOTM0MyAzNi45NzYgMjQuNzEzNyAzNy4xMjM1IDI0LjQ3MDkgMzcuMjI0MUMyNC4yMjgxIDM3LjMyNDggMjMuOTY3OCAzNy4zNzY2IDIzLjcwNSAzNy4zNzY2QzIzLjQ0MjIgMzcuMzc2NiAyMy4xODE5IDM3LjMyNDggMjIuOTM5MSAzNy4yMjQxQzIyLjY5NjMgMzcuMTIzNSAyMi40NzU3IDM2Ljk3NiAyMi4yOSAzNi43OUMyMi4xMDQgMzYuNjA0MyAyMS45NTY1IDM2LjM4MzcgMjEuODU1OSAzNi4xNDA5QzIxLjc1NTIgMzUuODk4MSAyMS43MDM0IDM1LjYzNzggMjEuNzAzNCAzNS4zNzVDMjEuNzAzNCAzNS4xMTIyIDIxLjc1NTIgMzQuODUxOSAyMS44NTU5IDM0LjYwOTFDMjEuOTU2NSAzNC4zNjYzIDIyLjEwNCAzNC4xNDU3IDIyLjI5IDMzLjk2TDIyLjM1IDMzLjlDMjIuNTgwNSAzMy42NjQzIDIyLjczNTIgMzMuMzY1IDIyLjc5NCAzMy4wNDA2QzIyLjg1MjggMzIuNzE2MiAyMi44MTMxIDMyLjM4MTYgMjIuNjggMzIuMDhDMjIuNTUzMiAzMS43ODQyIDIyLjM0MjggMzEuNTMyIDIyLjA3NDUgMzEuMzU0M0MyMS44MDYyIDMxLjE3NjYgMjEuNDkxOCAzMS4wODEzIDIxLjE3IDMxLjA4SDIxQzIwLjQ2OTYgMzEuMDggMTkuOTYwOSAzMC44NjkzIDE5LjU4NTggMzAuNDk0MkMxOS4yMTA3IDMwLjExOTEgMTkgMjkuNjEwNCAxOSAyOS4wOEMxOSAyOC41NDk2IDE5LjIxMDcgMjguMDQwOSAxOS41ODU4IDI3LjY2NThDMTkuOTYwOSAyNy4yOTA3IDIwLjQ2OTYgMjcuMDggMjEgMjcuMDhIMjEuMDlDMjEuNDIxIDI3LjA3MjMgMjEuNzQyIDI2Ljk2NTEgMjIuMDExMyAyNi43NzI1QzIyLjI4MDYgMjYuNTc5OSAyMi40ODU3IDI2LjMxMDcgMjIuNiAyNkMyMi43MzMxIDI1LjY5ODQgMjIuNzcyOCAyNS4zNjM4IDIyLjcxNCAyNS4wMzk0QzIyLjY1NTIgMjQuNzE1IDIyLjUwMDUgMjQuNDE1NyAyMi4yNyAyNC4xOEwyMi4yMSAyNC4xMkMyMi4wMjQgMjMuOTM0MyAyMS44NzY1IDIzLjcxMzcgMjEuNzc1OSAyMy40NzA5QzIxLjY3NTIgMjMuMjI4MSAyMS42MjM0IDIyLjk2NzggMjEuNjIzNCAyMi43MDVDMjEuNjIzNCAyMi40NDIyIDIxLjY3NTIgMjIuMTgxOSAyMS43NzU5IDIxLjkzOTFDMjEuODc2NSAyMS42OTYzIDIyLjAyNCAyMS40NzU3IDIyLjIxIDIxLjI5QzIyLjM5NTcgMjEuMTA0IDIyLjYxNjMgMjAuOTU2NSAyMi44NTkxIDIwLjg1NTlDMjMuMTAxOSAyMC43NTUyIDIzLjM2MjIgMjAuNzAzNCAyMy42MjUgMjAuNzAzNEMyMy44ODc4IDIwLjcwMzQgMjQuMTQ4MSAyMC43NTUyIDI0LjM5MDkgMjAuODU1OUMyNC42MzM3IDIwLjk1NjUgMjQuODU0MyAyMS4xMDQgMjUuMDQgMjEuMjlMMjUuMSAyMS4zNUMyNS4zMzU3IDIxLjU4MDUgMjUuNjM1IDIxLjczNTIgMjUuOTU5NCAyMS43OTRDMjYuMjgzOCAyMS44NTI4IDI2LjYxODQgMjEuODEzMSAyNi45MiAyMS42OEgyN0MyNy4yOTU4IDIxLjU1MzIgMjcuNTQ4IDIxLjM0MjggMjcuNzI1NyAyMS4wNzQ1QzI3LjkwMzQgMjAuODA2MiAyNy45OTg3IDIwLjQ5MTggMjggMjAuMTdWMjBDMjggMTkuNDY5NiAyOC4yMTA3IDE4Ljk2MDkgMjguNTg1OCAxOC41ODU4QzI4Ljk2MDkgMTguMjEwNyAyOS40Njk2IDE4IDMwIDE4QzMwLjUzMDQgMTggMzEuMDM5MSAxOC4yMTA3IDMxLjQxNDIgMTguNTg1OEMzMS43ODkzIDE4Ljk2MDkgMzIgMTkuNDY5NiAzMiAyMFYyMC4wOUMzMi4wMDEzIDIwLjQxMTggMzIuMDk2NiAyMC43MjYyIDMyLjI3NDMgMjAuOTk0NUMzMi40NTIgMjEuMjYyOCAzMi43MDQyIDIxLjQ3MzIgMzMgMjEuNkMzMy4zMDE2IDIxLjczMzEgMzMuNjM2MiAyMS43NzI4IDMzLjk2MDYgMjEuNzE0QzM0LjI4NSAyMS42NTUyIDM0LjU4NDMgMjEuNTAwNSAzNC44MiAyMS4yN0wzNC44OCAyMS4yMUMzNS4wNjU3IDIxLjAyNCAzNS4yODYzIDIwLjg3NjUgMzUuNTI5MSAyMC43NzU5QzM1Ljc3MTkgMjAuNjc1MiAzNi4wMzIyIDIwLjYyMzQgMzYuMjk1IDIwLjYyMzRDMzYuNTU3OCAyMC42MjM0IDM2LjgxODEgMjAuNjc1MiAzNy4wNjA5IDIwLjc3NTlDMzcuMzAzNyAyMC44NzY1IDM3LjUyNDMgMjEuMDI0IDM3LjcxIDIxLjIxQzM3Ljg5NiAyMS4zOTU3IDM4LjA0MzUgMjEuNjE2MyAzOC4xNDQxIDIxLjg1OTFDMzguMjQ0OCAyMi4xMDE5IDM4LjI5NjYgMjIuMzYyMiAzOC4yOTY2IDIyLjYyNUMzOC4yOTY2IDIyLjg4NzggMzguMjQ0OCAyMy4xNDgxIDM4LjE0NDEgMjMuMzkwOUMzOC4wNDM1IDIzLjYzMzcgMzcuODk2IDIzLjg1NDMgMzcuNzEgMjQuMDRMMzcuNjUgMjQuMUMzNy40MTk1IDI0LjMzNTcgMzcuMjY0OCAyNC42MzUgMzcuMjA2IDI0Ljk1OTRDMzcuMTQ3MiAyNS4yODM4IDM3LjE4NjkgMjUuNjE4NCAzNy4zMiAyNS45MlYyNkMzNy40NDY4IDI2LjI5NTggMzcuNjU3MiAyNi41NDggMzcuOTI1NSAyNi43MjU3QzM4LjE5MzggMjYuOTAzNCAzOC41MDgyIDI2Ljk5ODcgMzguODMgMjdIMzlDMzkuNTMwNCAyNyA0MC4wMzkxIDI3LjIxMDcgNDAuNDE0MiAyNy41ODU4QzQwLjc4OTMgMjcuOTYwOSA0MSAyOC40Njk2IDQxIDI5QzQxIDI5LjUzMDQgNDAuNzg5MyAzMC4wMzkxIDQwLjQxNDIgMzAuNDE0MkM0MC4wMzkxIDMwLjc4OTMgMzkuNTMwNCAzMSAzOSAzMUgzOC45MUMzOC41ODgyIDMxLjAwMTMgMzguMjczOCAzMS4wOTY2IDM4LjAwNTUgMzEuMjc0M0MzNy43MzcyIDMxLjQ1MiAzNy41MjY4IDMxLjcwNDIgMzcuNCAzMlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzM0NDA1NFwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2c+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmlsdGVyIGlkPVwiZmlsdGVyMF9kXzUyMjFfNjAxNDNcIiB4PVwiMFwiIHk9XCIwXCIgd2lkdGg9XCI2MFwiIGhlaWdodD1cIjYwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsdGVyVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz1cInNSR0JcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlRmxvb2QgZmxvb2Qtb3BhY2l0eT1cIjBcIiByZXN1bHQ9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCBpbj1cIlNvdXJjZUFscGhhXCIgdHlwZT1cIm1hdHJpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9XCIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJoYXJkQWxwaGFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVPZmZzZXQgZHk9XCIxXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlR2F1c3NpYW5CbHVyIHN0ZERldmlhdGlvbj1cIjFcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZmVDb2xvck1hdHJpeCB0eXBlPVwibWF0cml4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz1cIjAgMCAwIDAgMC4wNjI3NDUxIDAgMCAwIDAgMC4wOTQxMTc2IDAgMCAwIDAgMC4xNTY4NjMgMCAwIDAgMC4wNSAwXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGZlQmxlbmQgbW9kZT1cIm5vcm1hbFwiIGluMj1cIkJhY2tncm91bmRJbWFnZUZpeFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQ9XCJlZmZlY3QxX2Ryb3BTaGFkb3dfNTIyMV82MDE0M1wiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbj1cIlNvdXJjZUdyYXBoaWNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW4yPVwiZWZmZWN0MV9kcm9wU2hhZG93XzUyMjFfNjAxNDNcIiByZXN1bHQ9XCJzaGFwZVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9maWx0ZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGNsaXBQYXRoIGlkPVwiY2xpcDBfNTIyMV82MDE0M1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBmaWxsPVwid2hpdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtPVwidHJhbnNsYXRlKDE4IDE3KVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibm90aWZpY2F0aW9uLnByb2R1Y3R0cmFpbGRyb3BEb3duXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNhcmQgcHktMiB3LTIwMHB4IHBvc2l0aW9uLWFic29sdXRlIGVuZC0wIHotMVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDx1bCAqbmdGb3I9XCJsZXQgcHJvZHVjdHRyYWlsaXRlbSBvZiBwcm9kdWN0dHJhaWx0eXBlXCIgY2xhc3M9XCJsaXN0LXVuc3R5bGVkIG1iLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPVwicHJvZHVjdHRleHQgcHgtNSBpdGVtcyBjdXJzb3ItcG9pbnRlciBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJwcm9kdWN0dHJhaWxJdGVtKHByb2R1Y3R0cmFpbGl0ZW0sbm90aWZpY2F0aW9uKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge3twcm9kdWN0dHJhaWxpdGVtfX08L2xpPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgIDwvZGl2PlxyXG4gICBcclxuPC9kaXY+IC0tPlxyXG5cclxuXHJcblxyXG5cclxuPGRpdiBjbGFzcz1cInJvdyBtYi01XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLW1kLTNcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2FyZCBoLTEwMFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibS0wIHctMTAwXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICBjbGFzcz1cIm1iLTNcIj48YVxyXG4gICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rPVwiL21hbmFnZS9zZXR0aW5ncy9icmFuZC1kZXRhaWxcIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtBY3RpdmVPcHRpb25zXT1cIntleGFjdDogdHJ1ZX1cIiAjQlI9XCJyb3V0ZXJMaW5rQWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjdXN0b20tbGlzdCBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHB4LTUgcHktNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIkJSLmlzQWN0aXZlID8gJ2J0biB0ZXh0LXRhYicgOiAnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWUtNFwiPjxzcGFuPjxzdmcgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZyBjbGlwLXBhdGg9XCJ1cmwoI2NsaXAwXzE4NDJfMTk3MjgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBbbmdDbGFzc109XCIgQlIuaXNBY3RpdmUgPyAnZmlsbHBhdGgnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMi42MjUgMjRDMS45Mjg4MSAyNCAxLjI2MTEzIDIzLjcyMzQgMC43Njg4NDUgMjMuMjMxMkMwLjI3NjU2MiAyMi43Mzg5IDAgMjIuMDcxMiAwIDIxLjM3NUwwIDIuNjI1QzAgMS4xNzYgMS4xNzYgMCAyLjYyNSAwSDE1LjM3NUMxNi44MjQgMCAxOCAxLjE3NiAxOCAyLjYyNVYyMS4zNzVDMTggMjEuNTAyNSAxNy45OTEgMjEuNjI3IDE3Ljk3MyAyMS43NUgyMS4zNzVDMjEuNDc0NSAyMS43NSAyMS41Njk4IDIxLjcxMDUgMjEuNjQwMiAyMS42NDAyQzIxLjcxMDUgMjEuNTY5OCAyMS43NSAyMS40NzQ1IDIxLjc1IDIxLjM3NVYxMi40Mjc1QzIxLjc1IDEyLjM2NTggMjEuNzM0OSAxMi4zMDUxIDIxLjcwNTggMTIuMjUwNkMyMS42NzY4IDEyLjE5NjIgMjEuNjM0OCAxMi4xNDk4IDIxLjU4MzUgMTIuMTE1NUwyMC4wMDEgMTEuMDYxQzE5Ljg3ODEgMTAuOTc5MSAxOS43NzI1IDEwLjg3MzcgMTkuNjkwMyAxMC43NTFDMTkuNjA4MSAxMC42MjgyIDE5LjU1MDkgMTAuNDkwNSAxOS41MjE5IDEwLjM0NTZDMTkuNDkyOSAxMC4yMDA4IDE5LjQ5MjggMTAuMDUxNiAxOS41MjE1IDkuOTA2NjlDMTkuNTUwMSA5Ljc2MTc3IDE5LjYwNzEgOS42MjM5MiAxOS42ODkgOS41MDFDMTkuNzcwOSA5LjM3ODA4IDE5Ljg3NjMgOS4yNzI1MSAxOS45OTkgOS4xOTAzMUMyMC4xMjE4IDkuMTA4MTEgMjAuMjU5NSA5LjA1MDg5IDIwLjQwNDQgOS4wMjE5MUMyMC41NDkyIDguOTkyOTQgMjAuNjk4NCA4Ljk5Mjc5IDIwLjg0MzMgOS4wMjE0NUMyMC45ODgyIDkuMDUwMTIgMjEuMTI2MSA5LjEwNzA2IDIxLjI0OSA5LjE4OUwyMi44MzE1IDEwLjI0MzVDMjMuNTYyIDEwLjczMSAyNCAxMS41NSAyNCAxMi40Mjc1VjIxLjM3NUMyNCAyMi4wNzEyIDIzLjcyMzQgMjIuNzM4OSAyMy4yMzEyIDIzLjIzMTJDMjIuNzM4OSAyMy43MjM0IDIyLjA3MTIgMjQgMjEuMzc1IDI0SDE2LjEyNUMxNi4wMjUyIDIzLjk5OTkgMTUuOTI1OSAyMy45ODY4IDE1LjgyOTUgMjMuOTYxQzE1LjY4MSAyMy45ODY1IDE1LjUyOTUgMjQgMTUuMzc1IDI0SDEwLjg3NUMxMC41NzY2IDI0IDEwLjI5MDUgMjMuODgxNSAxMC4wNzk1IDIzLjY3MDVDOS44Njg1MyAyMy40NTk1IDkuNzUgMjMuMTczNCA5Ljc1IDIyLjg3NVYyMUg4LjI1VjIyLjg3NUM4LjI1IDIzLjE3MzQgOC4xMzE0NyAyMy40NTk1IDcuOTIwNSAyMy42NzA1QzcuNzA5NTIgMjMuODgxNSA3LjQyMzM3IDI0IDcuMTI1IDI0SDIuNjI1Wk0yLjI1IDIxLjM3NUMyLjI1IDIxLjU4MiAyLjQxOCAyMS43NSAyLjYyNSAyMS43NUg2VjE5Ljg3NUM2IDE5LjU3NjYgNi4xMTg1MyAxOS4yOTA1IDYuMzI5NSAxOS4wNzk1QzYuNTQwNDggMTguODY4NSA2LjgyNjYzIDE4Ljc1IDcuMTI1IDE4Ljc1SDEwLjg3NUMxMS4xNzM0IDE4Ljc1IDExLjQ1OTUgMTguODY4NSAxMS42NzA1IDE5LjA3OTVDMTEuODgxNSAxOS4yOTA1IDEyIDE5LjU3NjYgMTIgMTkuODc1VjIxLjc1SDE1LjM3NUMxNS40NzQ1IDIxLjc1IDE1LjU2OTggMjEuNzEwNSAxNS42NDAyIDIxLjY0MDJDMTUuNzEwNSAyMS41Njk4IDE1Ljc1IDIxLjQ3NDUgMTUuNzUgMjEuMzc1VjIuNjI1QzE1Ljc1IDIuNTI1NTQgMTUuNzEwNSAyLjQzMDE2IDE1LjY0MDIgMi4zNTk4NEMxNS41Njk4IDIuMjg5NTEgMTUuNDc0NSAyLjI1IDE1LjM3NSAyLjI1SDIuNjI1QzIuNTI1NTQgMi4yNSAyLjQzMDE2IDIuMjg5NTEgMi4zNTk4NCAyLjM1OTg0QzIuMjg5NTEgMi40MzAxNiAyLjI1IDIuNTI1NTQgMi4yNSAyLjYyNVYyMS4zNzVaTTUuNjI1IDlINi4zNzVDNi42NzMzNyA5IDYuOTU5NTIgOS4xMTg1MyA3LjE3MDUgOS4zMjk1QzcuMzgxNDcgOS41NDA0OCA3LjUgOS44MjY2MyA3LjUgMTAuMTI1QzcuNSAxMC40MjM0IDcuMzgxNDcgMTAuNzA5NSA3LjE3MDUgMTAuOTIwNUM2Ljk1OTUyIDExLjEzMTUgNi42NzMzNyAxMS4yNSA2LjM3NSAxMS4yNUg1LjYyNUM1LjMyNjYzIDExLjI1IDUuMDQwNDggMTEuMTMxNSA0LjgyOTUgMTAuOTIwNUM0LjYxODUzIDEwLjcwOTUgNC41IDEwLjQyMzQgNC41IDEwLjEyNUM0LjUgOS44MjY2MyA0LjYxODUzIDkuNTQwNDggNC44Mjk1IDkuMzI5NUM1LjA0MDQ4IDkuMTE4NTMgNS4zMjY2MyA5IDUuNjI1IDlaTTQuNSA1LjYyNUM0LjUgNS4zMjY2MyA0LjYxODUzIDUuMDQwNDggNC44Mjk1IDQuODI5NUM1LjA0MDQ4IDQuNjE4NTMgNS4zMjY2MyA0LjUgNS42MjUgNC41SDYuMzc1QzYuNjczMzcgNC41IDYuOTU5NTIgNC42MTg1MyA3LjE3MDUgNC44Mjk1QzcuMzgxNDcgNS4wNDA0OCA3LjUgNS4zMjY2MyA3LjUgNS42MjVDNy41IDUuOTIzMzcgNy4zODE0NyA2LjIwOTUyIDcuMTcwNSA2LjQyMDVDNi45NTk1MiA2LjYzMTQ3IDYuNjczMzcgNi43NSA2LjM3NSA2Ljc1SDUuNjI1QzUuMzI2NjMgNi43NSA1LjA0MDQ4IDYuNjMxNDcgNC44Mjk1IDYuNDIwNUM0LjYxODUzIDYuMjA5NTIgNC41IDUuOTIzMzcgNC41IDUuNjI1Wk0xMC41IDEwLjEyNUMxMC41IDkuODI2NjMgMTAuNjE4NSA5LjU0MDQ4IDEwLjgyOTUgOS4zMjk1QzExLjA0MDUgOS4xMTg1MyAxMS4zMjY2IDkgMTEuNjI1IDlIMTIuMzc1QzEyLjY3MzQgOSAxMi45NTk1IDkuMTE4NTMgMTMuMTcwNSA5LjMyOTVDMTMuMzgxNSA5LjU0MDQ4IDEzLjUgOS44MjY2MyAxMy41IDEwLjEyNUMxMy41IDEwLjQyMzQgMTMuMzgxNSAxMC43MDk1IDEzLjE3MDUgMTAuOTIwNUMxMi45NTk1IDExLjEzMTUgMTIuNjczNCAxMS4yNSAxMi4zNzUgMTEuMjVIMTEuNjI1QzExLjMyNjYgMTEuMjUgMTEuMDQwNSAxMS4xMzE1IDEwLjgyOTUgMTAuOTIwNUMxMC42MTg1IDEwLjcwOTUgMTAuNSAxMC40MjM0IDEwLjUgMTAuMTI1Wk0xMS42MjUgNC41SDEyLjM3NUMxMi42NzM0IDQuNSAxMi45NTk1IDQuNjE4NTMgMTMuMTcwNSA0LjgyOTVDMTMuMzgxNSA1LjA0MDQ4IDEzLjUgNS4zMjY2MyAxMy41IDUuNjI1QzEzLjUgNS45MjMzNyAxMy4zODE1IDYuMjA5NTIgMTMuMTcwNSA2LjQyMDVDMTIuOTU5NSA2LjYzMTQ3IDEyLjY3MzQgNi43NSAxMi4zNzUgNi43NUgxMS42MjVDMTEuMzI2NiA2Ljc1IDExLjA0MDUgNi42MzE0NyAxMC44Mjk1IDYuNDIwNUMxMC42MTg1IDYuMjA5NTIgMTAuNSA1LjkyMzM3IDEwLjUgNS42MjVDMTAuNSA1LjMyNjYzIDEwLjYxODUgNS4wNDA0OCAxMC44Mjk1IDQuODI5NUMxMS4wNDA1IDQuNjE4NTMgMTEuMzI2NiA0LjUgMTEuNjI1IDQuNVpNNC41IDE0LjYyNUM0LjUgMTQuMzI2NiA0LjYxODUzIDE0LjA0MDUgNC44Mjk1IDEzLjgyOTVDNS4wNDA0OCAxMy42MTg1IDUuMzI2NjMgMTMuNSA1LjYyNSAxMy41SDYuMzc1QzYuNjczMzcgMTMuNSA2Ljk1OTUyIDEzLjYxODUgNy4xNzA1IDEzLjgyOTVDNy4zODE0NyAxNC4wNDA1IDcuNSAxNC4zMjY2IDcuNSAxNC42MjVDNy41IDE0LjkyMzQgNy4zODE0NyAxNS4yMDk1IDcuMTcwNSAxNS40MjA1QzYuOTU5NTIgMTUuNjMxNSA2LjY3MzM3IDE1Ljc1IDYuMzc1IDE1Ljc1SDUuNjI1QzUuMzI2NjMgMTUuNzUgNS4wNDA0OCAxNS42MzE1IDQuODI5NSAxNS40MjA1QzQuNjE4NTMgMTUuMjA5NSA0LjUgMTQuOTIzNCA0LjUgMTQuNjI1Wk0xMS42MjUgMTMuNUgxMi4zNzVDMTIuNjczNCAxMy41IDEyLjk1OTUgMTMuNjE4NSAxMy4xNzA1IDEzLjgyOTVDMTMuMzgxNSAxNC4wNDA1IDEzLjUgMTQuMzI2NiAxMy41IDE0LjYyNUMxMy41IDE0LjkyMzQgMTMuMzgxNSAxNS4yMDk1IDEzLjE3MDUgMTUuNDIwNUMxMi45NTk1IDE1LjYzMTUgMTIuNjczNCAxNS43NSAxMi4zNzUgMTUuNzVIMTEuNjI1QzExLjMyNjYgMTUuNzUgMTEuMDQwNSAxNS42MzE1IDEwLjgyOTUgMTUuNDIwNUMxMC42MTg1IDE1LjIwOTUgMTAuNSAxNC45MjM0IDEwLjUgMTQuNjI1QzEwLjUgMTQuMzI2NiAxMC42MTg1IDE0LjA0MDUgMTAuODI5NSAxMy44Mjk1QzExLjA0MDUgMTMuNjE4NSAxMS4zMjY2IDEzLjUgMTEuNjI1IDEzLjVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwiIzY2NzA4NVwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRlZnM+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Y2xpcFBhdGggaWQ9XCJjbGlwMF8xODQyXzE5NzI4XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHJlY3Qgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgZmlsbD1cIndoaXRlXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvY2xpcFBhdGg+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiIEJSLmlzQWN0aXZlID8gJyB0ZXh0LXRhYicgOiAnJ1wiIGNsYXNzPVwic2lkZWhlYWRpbmcgIG1iLTFcIj5CcmFuZCBEZXRhaWxzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAgY2xhc3M9XCJtYi0zXCI+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyTGluaz1cIi9tYW5hZ2Uvc2V0dGluZ3MvY29uZmlndXJhdGlvblwiIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmVcIiAjQ09OPVwicm91dGVyTGlua0FjdGl2ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3VzdG9tLWxpc3QgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBweC01IHB5LTRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJDT04uaXNBY3RpdmUgPyAnYnRuIHRleHQtdGFiJyA6ICcnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtZS00XCI+PHNwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHN2ZyB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxnIGNsaXAtcGF0aD1cInVybCgjY2xpcDBfMTg0Ml8xOTczMylcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIFtuZ0NsYXNzXT1cIiBDT04uaXNBY3RpdmUgPyAnZmlsbHN0cm9rZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xMiAxNUMxMy42NTY5IDE1IDE1IDEzLjY1NjkgMTUgMTJDMTUgMTAuMzQzMSAxMy42NTY5IDkgMTIgOUMxMC4zNDMxIDkgOSAxMC4zNDMxIDkgMTJDOSAxMy42NTY5IDEwLjM0MzEgMTUgMTIgMTVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwYXRoIFtuZ0NsYXNzXT1cIiBDT04uaXNBY3RpdmUgPyAnZmlsbHN0cm9rZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xOS40IDE1QzE5LjI2NjkgMTUuMzAxNiAxOS4yMjcyIDE1LjYzNjIgMTkuMjg2IDE1Ljk2MDZDMTkuMzQ0OCAxNi4yODUgMTkuNDk5NSAxNi41ODQzIDE5LjczIDE2LjgyTDE5Ljc5IDE2Ljg4QzE5Ljk3NiAxNy4wNjU3IDIwLjEyMzUgMTcuMjg2MyAyMC4yMjQxIDE3LjUyOTFDMjAuMzI0OCAxNy43NzE5IDIwLjM3NjYgMTguMDMyMiAyMC4zNzY2IDE4LjI5NUMyMC4zNzY2IDE4LjU1NzggMjAuMzI0OCAxOC44MTgxIDIwLjIyNDEgMTkuMDYwOUMyMC4xMjM1IDE5LjMwMzcgMTkuOTc2IDE5LjUyNDMgMTkuNzkgMTkuNzFDMTkuNjA0MyAxOS44OTYgMTkuMzgzNyAyMC4wNDM1IDE5LjE0MDkgMjAuMTQ0MUMxOC44OTgxIDIwLjI0NDggMTguNjM3OCAyMC4yOTY2IDE4LjM3NSAyMC4yOTY2QzE4LjExMjIgMjAuMjk2NiAxNy44NTE5IDIwLjI0NDggMTcuNjA5MSAyMC4xNDQxQzE3LjM2NjMgMjAuMDQzNSAxNy4xNDU3IDE5Ljg5NiAxNi45NiAxOS43MUwxNi45IDE5LjY1QzE2LjY2NDMgMTkuNDE5NSAxNi4zNjUgMTkuMjY0OCAxNi4wNDA2IDE5LjIwNkMxNS43MTYyIDE5LjE0NzIgMTUuMzgxNiAxOS4xODY5IDE1LjA4IDE5LjMyQzE0Ljc4NDIgMTkuNDQ2OCAxNC41MzIgMTkuNjU3MiAxNC4zNTQzIDE5LjkyNTVDMTQuMTc2NiAyMC4xOTM4IDE0LjA4MTMgMjAuNTA4MiAxNC4wOCAyMC44M1YyMUMxNC4wOCAyMS41MzA0IDEzLjg2OTMgMjIuMDM5MSAxMy40OTQyIDIyLjQxNDJDMTMuMTE5MSAyMi43ODkzIDEyLjYxMDQgMjMgMTIuMDggMjNDMTEuNTQ5NiAyMyAxMS4wNDA5IDIyLjc4OTMgMTAuNjY1OCAyMi40MTQyQzEwLjI5MDcgMjIuMDM5MSAxMC4wOCAyMS41MzA0IDEwLjA4IDIxVjIwLjkxQzEwLjA3MjMgMjAuNTc5IDkuOTY1MTIgMjAuMjU4IDkuNzcyNTEgMTkuOTg4N0M5LjU3OTkgMTkuNzE5NCA5LjMxMDc0IDE5LjUxNDMgOSAxOS40QzguNjk4MzggMTkuMjY2OSA4LjM2MzgxIDE5LjIyNzIgOC4wMzk0MSAxOS4yODZDNy43MTUwMiAxOS4zNDQ4IDcuNDE1NjggMTkuNDk5NSA3LjE4IDE5LjczTDcuMTIgMTkuNzlDNi45MzQyNSAxOS45NzYgNi43MTM2OCAyMC4xMjM1IDYuNDcwODggMjAuMjI0MUM2LjIyODA4IDIwLjMyNDggNS45Njc4MyAyMC4zNzY2IDUuNzA1IDIwLjM3NjZDNS40NDIxNyAyMC4zNzY2IDUuMTgxOTIgMjAuMzI0OCA0LjkzOTEyIDIwLjIyNDFDNC42OTYzMiAyMC4xMjM1IDQuNDc1NzUgMTkuOTc2IDQuMjkgMTkuNzlDNC4xMDQwNSAxOS42MDQzIDMuOTU2NTMgMTkuMzgzNyAzLjg1NTg4IDE5LjE0MDlDMy43NTUyMyAxOC44OTgxIDMuNzAzNDMgMTguNjM3OCAzLjcwMzQzIDE4LjM3NUMzLjcwMzQzIDE4LjExMjIgMy43NTUyMyAxNy44NTE5IDMuODU1ODggMTcuNjA5MUMzLjk1NjUzIDE3LjM2NjMgNC4xMDQwNSAxNy4xNDU3IDQuMjkgMTYuOTZMNC4zNSAxNi45QzQuNTgwNTQgMTYuNjY0MyA0LjczNTE5IDE2LjM2NSA0Ljc5NCAxNi4wNDA2QzQuODUyODIgMTUuNzE2MiA0LjgxMzEyIDE1LjM4MTYgNC42OCAxNS4wOEM0LjU1MzI0IDE0Ljc4NDIgNC4zNDI3NiAxNC41MzIgNC4wNzQ0NyAxNC4zNTQzQzMuODA2MTggMTQuMTc2NiAzLjQ5MTc5IDE0LjA4MTMgMy4xNyAxNC4wOEgzQzIuNDY5NTcgMTQuMDggMS45NjA4NiAxMy44NjkzIDEuNTg1NzkgMTMuNDk0MkMxLjIxMDcxIDEzLjExOTEgMSAxMi42MTA0IDEgMTIuMDhDMSAxMS41NDk2IDEuMjEwNzEgMTEuMDQwOSAxLjU4NTc5IDEwLjY2NThDMS45NjA4NiAxMC4yOTA3IDIuNDY5NTcgMTAuMDggMyAxMC4wOEgzLjA5QzMuNDIwOTkgMTAuMDcyMyAzLjc0MiA5Ljk2NTEyIDQuMDExMyA5Ljc3MjUxQzQuMjgwNTkgOS41Nzk5IDQuNDg1NzIgOS4zMTA3NCA0LjYgOUM0LjczMzEyIDguNjk4MzggNC43NzI4MiA4LjM2MzgxIDQuNzE0IDguMDM5NDFDNC42NTUxOSA3LjcxNTAyIDQuNTAwNTQgNy40MTU2OCA0LjI3IDcuMThMNC4yMSA3LjEyQzQuMDI0MDUgNi45MzQyNSAzLjg3NjUzIDYuNzEzNjggMy43NzU4OCA2LjQ3MDg4QzMuNjc1MjMgNi4yMjgwOCAzLjYyMzQzIDUuOTY3ODMgMy42MjM0MyA1LjcwNUMzLjYyMzQzIDUuNDQyMTcgMy42NzUyMyA1LjE4MTkyIDMuNzc1ODggNC45MzkxMkMzLjg3NjUzIDQuNjk2MzIgNC4wMjQwNSA0LjQ3NTc1IDQuMjEgNC4yOUM0LjM5NTc1IDQuMTA0MDUgNC42MTYzMiAzLjk1NjUzIDQuODU5MTIgMy44NTU4OEM1LjEwMTkyIDMuNzU1MjMgNS4zNjIxNyAzLjcwMzQzIDUuNjI1IDMuNzAzNDNDNS44ODc4MyAzLjcwMzQzIDYuMTQ4MDggMy43NTUyMyA2LjM5MDg4IDMuODU1ODhDNi42MzM2OCAzLjk1NjUzIDYuODU0MjUgNC4xMDQwNSA3LjA0IDQuMjlMNy4xIDQuMzVDNy4zMzU2OCA0LjU4MDU0IDcuNjM1MDIgNC43MzUxOSA3Ljk1OTQxIDQuNzk0QzguMjgzODEgNC44NTI4MiA4LjYxODM4IDQuODEzMTIgOC45MiA0LjY4SDlDOS4yOTU3NyA0LjU1MzI0IDkuNTQ4MDIgNC4zNDI3NiA5LjcyNTY5IDQuMDc0NDdDOS45MDMzNyAzLjgwNjE4IDkuOTk4NzIgMy40OTE3OSAxMCAzLjE3VjNDMTAgMi40Njk1NyAxMC4yMTA3IDEuOTYwODYgMTAuNTg1OCAxLjU4NTc5QzEwLjk2MDkgMS4yMTA3MSAxMS40Njk2IDEgMTIgMUMxMi41MzA0IDEgMTMuMDM5MSAxLjIxMDcxIDEzLjQxNDIgMS41ODU3OUMxMy43ODkzIDEuOTYwODYgMTQgMi40Njk1NyAxNCAzVjMuMDlDMTQuMDAxMyAzLjQxMTc5IDE0LjA5NjYgMy43MjYxOCAxNC4yNzQzIDMuOTk0NDdDMTQuNDUyIDQuMjYyNzYgMTQuNzA0MiA0LjQ3MzI0IDE1IDQuNkMxNS4zMDE2IDQuNzMzMTIgMTUuNjM2MiA0Ljc3MjgyIDE1Ljk2MDYgNC43MTRDMTYuMjg1IDQuNjU1MTkgMTYuNTg0MyA0LjUwMDU0IDE2LjgyIDQuMjdMMTYuODggNC4yMUMxNy4wNjU3IDQuMDI0MDUgMTcuMjg2MyAzLjg3NjUzIDE3LjUyOTEgMy43NzU4OEMxNy43NzE5IDMuNjc1MjMgMTguMDMyMiAzLjYyMzQzIDE4LjI5NSAzLjYyMzQzQzE4LjU1NzggMy42MjM0MyAxOC44MTgxIDMuNjc1MjMgMTkuMDYwOSAzLjc3NTg4QzE5LjMwMzcgMy44NzY1MyAxOS41MjQzIDQuMDI0MDUgMTkuNzEgNC4yMUMxOS44OTYgNC4zOTU3NSAyMC4wNDM1IDQuNjE2MzIgMjAuMTQ0MSA0Ljg1OTEyQzIwLjI0NDggNS4xMDE5MiAyMC4yOTY2IDUuMzYyMTcgMjAuMjk2NiA1LjYyNUMyMC4yOTY2IDUuODg3ODMgMjAuMjQ0OCA2LjE0ODA4IDIwLjE0NDEgNi4zOTA4OEMyMC4wNDM1IDYuNjMzNjggMTkuODk2IDYuODU0MjUgMTkuNzEgNy4wNEwxOS42NSA3LjFDMTkuNDE5NSA3LjMzNTY4IDE5LjI2NDggNy42MzUwMiAxOS4yMDYgNy45NTk0MUMxOS4xNDcyIDguMjgzODEgMTkuMTg2OSA4LjYxODM4IDE5LjMyIDguOTJWOUMxOS40NDY4IDkuMjk1NzcgMTkuNjU3MiA5LjU0ODAyIDE5LjkyNTUgOS43MjU2OUMyMC4xOTM4IDkuOTAzMzcgMjAuNTA4MiA5Ljk5ODcyIDIwLjgzIDEwSDIxQzIxLjUzMDQgMTAgMjIuMDM5MSAxMC4yMTA3IDIyLjQxNDIgMTAuNTg1OEMyMi43ODkzIDEwLjk2MDkgMjMgMTEuNDY5NiAyMyAxMkMyMyAxMi41MzA0IDIyLjc4OTMgMTMuMDM5MSAyMi40MTQyIDEzLjQxNDJDMjIuMDM5MSAxMy43ODkzIDIxLjUzMDQgMTQgMjEgMTRIMjAuOTFDMjAuNTg4MiAxNC4wMDEzIDIwLjI3MzggMTQuMDk2NiAyMC4wMDU1IDE0LjI3NDNDMTkuNzM3MiAxNC40NTIgMTkuNTI2OCAxNC43MDQyIDE5LjQgMTVaXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9nPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGVmcz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxjbGlwUGF0aCBpZD1cImNsaXAwXzE4NDJfMTk3MzNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cmVjdCB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBmaWxsPVwid2hpdGVcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9jbGlwUGF0aD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kZWZzPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCIgQ09OLmlzQWN0aXZlID8gJyB0ZXh0LXRhYicgOiAnJ1wiIGNsYXNzPVwic2lkZWhlYWRpbmcgIG1iLTFcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25maWd1cmF0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cIihncy51c2VyQWNjZXNzIHwgYXN5bmMpPy51c2VyVHlwZSA9PT0gJ3RhbmdvJyBcIiAgY2xhc3M9XCJtYi0zXCI+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyTGluaz1cIi9tYW5hZ2Uvc2V0dGluZ3MvY29udGFjdC1kaXJlY3RvcnlcIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgI0NPTkRJUj1cInJvdXRlckxpbmtBY3RpdmVcIiBjbGFzcz1cImN1c3RvbS1saXN0IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcHgtNSBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiQ09ORElSLmlzQWN0aXZlID8gJ2J0biB0ZXh0LXRhYicgOiAnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWUtNFwiPjxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGZpbGw9XCJub25lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBbbmdDbGFzc109XCJDT05ESVIuaXNBY3RpdmUgPyAnZmlsbHN0cm9rZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkPVwiTTE3IDIxVjE5QzE3IDE3LjkzOTEgMTYuNTc4NiAxNi45MjE3IDE1LjgyODQgMTYuMTcxNkMxNS4wNzgzIDE1LjQyMTQgMTQuMDYwOSAxNSAxMyAxNUg1QzMuOTM5MTMgMTUgMi45MjE3MiAxNS40MjE0IDIuMTcxNTcgMTYuMTcxNkMxLjQyMTQzIDE2LjkyMTcgMSAxNy45MzkxIDEgMTlWMjFNMjMgMjFWMTlDMjIuOTk5MyAxOC4xMTM3IDIyLjcwNDQgMTcuMjUyOCAyMi4xNjE0IDE2LjU1MjNDMjEuNjE4NCAxNS44NTE5IDIwLjg1ODEgMTUuMzUxNiAyMCAxNS4xM00xNiAzLjEzQzE2Ljg2MDQgMy4zNTAzIDE3LjYyMyAzLjg1MDcgMTguMTY3NiA0LjU1MjMxQzE4LjcxMjIgNS4yNTM5MiAxOS4wMDc4IDYuMTE2ODMgMTkuMDA3OCA3LjAwNUMxOS4wMDc4IDcuODkzMTcgMTguNzEyMiA4Ljc1NjA4IDE4LjE2NzYgOS40NTc2OUMxNy42MjMgMTAuMTU5MyAxNi44NjA0IDEwLjY1OTcgMTYgMTAuODhNMTMgN0MxMyA5LjIwOTE0IDExLjIwOTEgMTEgOSAxMUM2Ljc5MDg2IDExIDUgOS4yMDkxNCA1IDdDNSA0Ljc5MDg2IDYuNzkwODYgMyA5IDNDMTEuMjA5MSAzIDEzIDQuNzkwODYgMTMgN1pcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiIENPTkRJUi5pc0FjdGl2ZSA/ICcgdGV4dC10YWInIDogJydcIiBjbGFzcz1cInNpZGVoZWFkaW5nICBtYi0xXCI+Q29udGFjdFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERpcmVjdG9yeTwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2E+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPCEtLSA8bmctY29udGFpbmVyICpuZ0lmPVwiIWJpbGxpbmdEaXNhYmxlZCB8fCAoZ3MudXNlckFjY2VzcyB8IGFzeW5jKT8udXNlclR5cGUgPT09ICd0YW5nbydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAgY2xhc3M9XCJtYi0zXCI+PGEgcm91dGVyTGluaz1cIi9tYW5hZ2Uvc2V0dGluZ3MvcGF5bWVudC1zdWJzY3JpcHRpb25cIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICNzYT1cInJvdXRlckxpbmtBY3RpdmVcIiBjbGFzcz1cImN1c3RvbS1saXN0IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcHgtNSBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInNhLmlzQWN0aXZlID8gJ2J0biB0ZXh0LXRhYicgOiAnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIiBtZS00XCI+PHNwYW4+PHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCIyNFwiIGhlaWdodD1cIjI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggW25nQ2xhc3NdPVwic2EuaXNBY3RpdmUgPyAnZmlsbHN0cm9rZScgOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xNC4xNzU1IDQuMjIyMjVDMTQuMTc2NiAyLjk5NDQ1IDExLjY3MzEgMiA4LjU4ODMyIDJDNS41MDM1NyAyIDMuMDAyMjQgMi45OTU1NyAzIDQuMjIyMjVNMyA0LjIyMjI1QzMgNS40NTAwNCA1LjUwMTMzIDYuNDQ0NDkgOC41ODgzMiA2LjQ0NDQ5QzExLjY3NTMgNi40NDQ0OSAxNC4xNzY2IDUuNDUwMDQgMTQuMTc2NiA0LjIyMjI1TDE0LjE3NjYgMTIuODQ0NU0zIDQuMjIyMjVWMTcuNTU1NkMzLjAwMTEyIDE4Ljc4MzQgNS41MDI0NSAxOS43Nzc5IDguNTg4MzIgMTkuNzc3OUMxMC4wODQ5IDE5Ljc3NzkgMTEuNDM2MSAxOS41NDEyIDEyLjQzODcgMTkuMTYwMU0zLjAwMTEyIDguNjY2NzJDMy4wMDExMiA5Ljg5NDUxIDUuNTAyNDUgMTAuODg5IDguNTg5NDQgMTAuODg5QzExLjY3NjQgMTAuODg5IDE0LjE3NzggOS44OTQ1MSAxNC4xNzc4IDguNjY2NzJNMTIuNTA1NyAxNC42OTQ2QzExLjQ5NzYgMTUuMDg5MSAxMC4xMTUgMTUuMzMzNSA4LjU4ODMyIDE1LjMzMzVDNS41MDI0NSAxNS4zMzM1IDMuMDAxMTIgMTQuMzM5MSAzLjAwMTEyIDEzLjExMTNNMjAuNTI3MiAxMy40NjQ2QzIyLjQ5MDkgMTUuNDE2OSAyMi40OTA5IDE4LjU4MzYgMjAuNTI3MiAyMC41MzU4QzE4LjU2MzUgMjIuNDg4MSAxNS4zNzgxIDIyLjQ4ODEgMTMuNDE0NCAyMC41MzU4QzExLjQ1MDcgMTguNTgzNiAxMS40NTA3IDE1LjQxNjkgMTMuNDE0NCAxMy40NjQ2QzE1LjM3ODEgMTEuNTEyNCAxOC41NjM1IDExLjUxMjQgMjAuNTI3MiAxMy40NjQ2WlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb2tlPVwiIzY2NzA4NVwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3ZnPlxyXG4gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwic2EuaXNBY3RpdmUgPyAndGV4dC10YWInIDogJydcIiBjbGFzcz1cInNpZGVoZWFkaW5nIG1iLTFcIj5QbGFucyAmXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN1YnNjcmlwdGlvbjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYT48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj4gLS0+XHJcbiAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgPGRpdiAgY2xhc3M9XCJtYi0zXCI+PGFcclxuICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyTGluaz1cIi9tYW5hZ2Uvc2V0dGluZ3MvZG9jdW1lbnRzXCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZVwiICNET0M9XCJyb3V0ZXJMaW5rQWN0aXZlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJjdXN0b20tbGlzdCBkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIHB4LTUgcHktNFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cIkRPQy5pc0FjdGl2ZSA/ICdidG4gdGV4dC10YWInIDogJydcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1lLTRcIj48c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIm5vbmVcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBhdGggW25nQ2xhc3NdPVwiIERPQy5pc0FjdGl2ZSA/ICdmaWxsc3Ryb2tlJyA6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGQ9XCJNMTQgMkg2QzUuNDY5NTcgMiA0Ljk2MDg2IDIuMjEwNzEgNC41ODU3OSAyLjU4NTc5QzQuMjEwNzEgMi45NjA4NiA0IDMuNDY5NTcgNCA0VjIwQzQgMjAuNTMwNCA0LjIxMDcxIDIxLjAzOTEgNC41ODU3OSAyMS40MTQyQzQuOTYwODYgMjEuNzg5MyA1LjQ2OTU3IDIyIDYgMjJIMThDMTguNTMwNCAyMiAxOS4wMzkxIDIxLjc4OTMgMTkuNDE0MiAyMS40MTQyQzE5Ljc4OTMgMjEuMDM5MSAyMCAyMC41MzA0IDIwIDIwVjhNMTQgMkwyMCA4TTE0IDJWOEgyME0xNiAxM0g4TTE2IDE3SDhNMTAgOUg4XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cm9rZT1cIiM2NjcwODVcIiBzdHJva2Utd2lkdGg9XCIyXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zdmc+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cIiBET0MuaXNBY3RpdmUgPyAnIHRleHQtdGFiJyA6ICcnXCIgY2xhc3M9XCJzaWRlaGVhZGluZyAgbWItMVwiPkRvY3VtZW50c1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvYT48L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgIGNsYXNzPVwibWItM1wiPjxhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJvdXRlckxpbms9XCIvbWFuYWdlL3NldHRpbmdzL2FjdGl2aXR5LWxvZ3NcIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCIgI0FDVD1cInJvdXRlckxpbmtBY3RpdmVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImN1c3RvbS1saXN0IGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgcHgtNSBweS00XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiQUNULmlzQWN0aXZlID8gJ2J0biB0ZXh0LXRhYicgOiAnJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWUtNFwiPjxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWxsPVwibm9uZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGF0aCBbbmdDbGFzc109XCIgQUNULmlzQWN0aXZlID8gJ2ZpbGxzdHJva2UgZmlsbHBhdGgnIDogJydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZD1cIk0xOC4xNTM5IDcuNzI5MTFMMTguMDM0MSA3Ljg1MjM5TDE4LjE1MzkgNy43MjkxMUMxNy45OTcyIDcuNTc2ODYgMTcuNzg1OSA3LjQ5MjMxIDE3LjU2NjcgNy40OTIzMUg4LjdDOC40ODA4MSA3LjQ5MjMxIDguMjY5NDggNy41NzY4NiA4LjExMjc5IDcuNzI5MTFDNy45NTU5IDcuODgxNTUgNy44NjY2NyA4LjA4OTU1IDcuODY2NjcgOC4zMDc2OUM3Ljg2NjY3IDguNTI1ODMgNy45NTU5IDguNzMzODMgOC4xMTI3OSA4Ljg4NjI3QzguMjY5NDggOS4wMzg1MyA4LjQ4MDgxIDkuMTIzMDggOC43IDkuMTIzMDhIMTcuNTY2N0MxNy43ODU5IDkuMTIzMDggMTcuOTk3MiA5LjAzODUzIDE4LjE1MzkgOC44ODYyN0MxOC4zMTA4IDguNzMzODMgMTguNCA4LjUyNTgzIDE4LjQgOC4zMDc2OUMxOC40IDguMDg5NTUgMTguMzEwOCA3Ljg4MTU1IDE4LjE1MzkgNy43MjkxMVpNMy4wNDYxMiA0LjAzNjhDMi44ODkyNCA0LjE4OTI0IDIuOCA0LjM5NzI1IDIuOCA0LjYxNTM4QzIuOCA0LjgzMzUyIDIuODg5MjQgNS4wNDE1MiAzLjA0NjEyIDUuMTkzOTdDMy4yMDI4MiA1LjM0NjIyIDMuNDE0MTUgNS40MzA3NyAzLjYzMzMzIDUuNDMwNzdINi4xNjY2N0M2LjM4NTg1IDUuNDMwNzcgNi41OTcxOCA1LjM0NjIyIDYuNzUzODggNS4xOTM5N0M2LjkxMDc2IDUuMDQxNTIgNyA0LjgzMzUyIDcgNC42MTUzOEM3IDQuMzk3MjUgNi45MTA3NiA0LjE4OTI0IDYuNzUzODggNC4wMzY4QzYuNTk3MTggMy44ODQ1NSA2LjM4NTg1IDMuOCA2LjE2NjY3IDMuOEgzLjYzMzMzQzMuNDE0MTUgMy44IDMuMjAyODIgMy44ODQ1NSAzLjA0NjEyIDQuMDM2OFpNOC4xMTI3OSA0LjAzNjhDNy45NTU5IDQuMTg5MjQgNy44NjY2NyA0LjM5NzI1IDcuODY2NjcgNC42MTUzOEM3Ljg2NjY3IDQuODMzNTIgNy45NTU5IDUuMDQxNTIgOC4xMTI3OSA1LjE5Mzk3QzguMjY5NDggNS4zNDYyMiA4LjQ4MDgxIDUuNDMwNzcgOC43IDUuNDMwNzdIMjEuMzY2N0MyMS41ODU5IDUuNDMwNzcgMjEuNzk3MiA1LjM0NjIyIDIxLjk1MzkgNS4xOTM5N0MyMi4xMTA4IDUuMDQxNTIgMjIuMiA0LjgzMzUyIDIyLjIgNC42MTUzOEMyMi4yIDQuMzk3MjUgMjIuMTEwOCA0LjE4OTI0IDIxLjk1MzkgNC4wMzY4QzIxLjc5NzIgMy44ODQ1NSAyMS41ODU5IDMuOCAyMS4zNjY3IDMuOEg4LjdDOC40ODA4MSAzLjggOC4yNjk0OCAzLjg4NDU1IDguMTEyNzkgNC4wMzY4Wk0zLjA0NjEyIDExLjQyMTRDMi44ODkyNCAxMS41NzM5IDIuOCAxMS43ODE5IDIuOCAxMkMyLjggMTIuMjE4MSAyLjg4OTI0IDEyLjQyNjEgMy4wNDYxMiAxMi41Nzg2QzMuMjAyODIgMTIuNzMwOCAzLjQxNDE0IDEyLjgxNTQgMy42MzMzMyAxMi44MTU0SDYuMTY2NjdDNi4zODU4NiAxMi44MTU0IDYuNTk3MTggMTIuNzMwOCA2Ljc1Mzg4IDEyLjU3ODZDNi45MTA3NiAxMi40MjYxIDcgMTIuMjE4MSA3IDEyQzcgMTEuNzgxOSA2LjkxMDc2IDExLjU3MzkgNi43NTM4OCAxMS40MjE0QzYuNTk3MTggMTEuMjY5MiA2LjM4NTg1IDExLjE4NDYgNi4xNjY2NyAxMS4xODQ2SDMuNjMzMzNDMy40MTQxNSAxMS4xODQ2IDMuMjAyODIgMTEuMjY5MiAzLjA0NjEyIDExLjQyMTRaTTguMTEyNzkgMTEuNDIxNEM3Ljk1NTkgMTEuNTczOSA3Ljg2NjY3IDExLjc4MTkgNy44NjY2NyAxMkM3Ljg2NjY3IDEyLjIxODEgNy45NTU5IDEyLjQyNjEgOC4xMTI3OSAxMi41Nzg2QzguMjY5NDggMTIuNzMwOCA4LjQ4MDgxIDEyLjgxNTQgOC43IDEyLjgxNTRIMjEuMzY2N0MyMS41ODU5IDEyLjgxNTQgMjEuNzk3MiAxMi43MzA4IDIxLjk1MzkgMTIuNTc4NkMyMi4xMTA4IDEyLjQyNjEgMjIuMiAxMi4yMTgxIDIyLjIgMTJDMjIuMiAxMS43ODE5IDIyLjExMDggMTEuNTczOSAyMS45NTM5IDExLjQyMTRDMjEuNzk3MiAxMS4yNjkyIDIxLjU4NTkgMTEuMTg0NiAyMS4zNjY3IDExLjE4NDZIOC43QzguNDgwODEgMTEuMTg0NiA4LjI2OTQ4IDExLjI2OTIgOC4xMTI3OSAxMS40MjE0Wk04LjExMjc5IDE1LjExMzdDNy45NTU5IDE1LjI2NjIgNy44NjY2NyAxNS40NzQyIDcuODY2NjcgMTUuNjkyM0M3Ljg2NjY3IDE1LjkxMDQgNy45NTU5IDE2LjExODQgOC4xMTI3OSAxNi4yNzA5QzguMjY5NDggMTYuNDIzMSA4LjQ4MDgxIDE2LjUwNzcgOC43IDE2LjUwNzdIMTcuNTY2N0MxNy43ODU5IDE2LjUwNzcgMTcuOTk3MiAxNi40MjMxIDE4LjE1MzkgMTYuMjcwOUMxOC4zMTA4IDE2LjExODQgMTguNCAxNS45MTA0IDE4LjQgMTUuNjkyM0MxOC40IDE1LjQ3NDIgMTguMzEwOCAxNS4yNjYyIDE4LjE1MzkgMTUuMTEzN0MxNy45OTcyIDE0Ljk2MTUgMTcuNzg1OSAxNC44NzY5IDE3LjU2NjcgMTQuODc2OUg4LjdDOC40ODA4MSAxNC44NzY5IDguMjY5NDggMTQuOTYxNSA4LjExMjc5IDE1LjExMzdaTTMuMDQ2MTIgMTguODA2QzIuODg5MjQgMTguOTU4NSAyLjggMTkuMTY2NSAyLjggMTkuMzg0NkMyLjggMTkuNjAyOCAyLjg4OTI0IDE5LjgxMDggMy4wNDYxMiAxOS45NjMyQzMuMjAyODIgMjAuMTE1NSAzLjQxNDE1IDIwLjIgMy42MzMzMyAyMC4ySDYuMTY2NjdDNi4zODU4NSAyMC4yIDYuNTk3MTggMjAuMTE1NSA2Ljc1Mzg4IDE5Ljk2MzJDNi45MTA3NiAxOS44MTA4IDcgMTkuNjAyOCA3IDE5LjM4NDZDNyAxOS4xNjY1IDYuOTEwNzYgMTguOTU4NSA2Ljc1Mzg4IDE4LjgwNkM2LjU5NzE4IDE4LjY1MzggNi4zODU4NSAxOC41NjkyIDYuMTY2NjcgMTguNTY5MkgzLjYzMzMzQzMuNDE0MTUgMTguNTY5MiAzLjIwMjgyIDE4LjY1MzggMy4wNDYxMiAxOC44MDZaTTguMTEyNzkgMTguODA2QzcuOTU1OSAxOC45NTg1IDcuODY2NjcgMTkuMTY2NSA3Ljg2NjY3IDE5LjM4NDZDNy44NjY2NyAxOS42MDI4IDcuOTU1OSAxOS44MTA4IDguMTEyNzkgMTkuOTYzMkM4LjI2OTQ4IDIwLjExNTUgOC40ODA4MSAyMC4yIDguNyAyMC4ySDIxLjM2NjdDMjEuNTg1OSAyMC4yIDIxLjc5NzIgMjAuMTE1NSAyMS45NTM5IDE5Ljk2MzJDMjIuMTEwOCAxOS44MTA4IDIyLjIgMTkuNjAyOCAyMi4yIDE5LjM4NDZDMjIuMiAxOS4xNjY1IDIyLjExMDggMTguOTU4NSAyMS45NTM5IDE4LjgwNkMyMS43OTcyIDE4LjY1MzggMjEuNTg1OSAxOC41NjkyIDIxLjM2NjcgMTguNTY5Mkg4LjdDOC40ODA4MSAxOC41NjkyIDguMjY5NDggMTguNjUzOCA4LjExMjc5IDE4LjgwNlpcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsbD1cIiM2NjcwODVcIiBzdHJva2U9XCIjNjY3MDg1XCIgc3Ryb2tlLXdpZHRoPVwiMC40XCIgLz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3N2Zz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwiIEFDVC5pc0FjdGl2ZSA/ICcgdGV4dC10YWInIDogJydcIiBjbGFzcz1cInNpZGVoZWFkaW5nICBtYi0xXCI+QWN0aXZpdHkgTG9nXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPjwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb2wtbWQtOVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJwYWdlU3RhdGUkIHwgYXN5bmMgYXMgcGFnZVN0YXRlXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInBhZ2VTdGF0ZVwiPlxyXG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiJ2xvYWRlZCdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cm91dGVyLW91dGxldD48L3JvdXRlci1vdXRsZXQ+XHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIidsb2FkaW5nJ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyLWNhcmQgdy0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBsb2FkZXIgIGQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNoaW1tZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgdGl0bGVcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGxpbmtcIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIGRlc2NyaXB0aW9uXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzaGltbWVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndyYXBwZXJcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInN0cm9rZSBhbmltYXRlIHRpdGxlXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBsaW5rXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSBkZXNjcmlwdGlvblwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic2hpbW1lclwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzdHJva2UgYW5pbWF0ZSB0aXRsZVwiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgbGlua1wiPjwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3Ryb2tlIGFuaW1hdGUgZGVzY3JpcHRpb25cIj48L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==