vcomply-workflow-engine 6.0.52 → 6.0.53

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.
Files changed (73) hide show
  1. package/esm2022/lib/add-multiple-responsibility-container/add-multiple-responsibility-container.component.mjs +2 -2
  2. package/esm2022/lib/add-multiple-risk/add-multiple-risk.component.mjs +2 -2
  3. package/esm2022/lib/constants/assets.constants.mjs +57 -0
  4. package/esm2022/lib/constants/link-responsibility.constants.mjs +2 -2
  5. package/esm2022/lib/log-an-issue/log-an-issue.component.mjs +2 -2
  6. package/esm2022/lib/more-option/more-option.component.mjs +2 -2
  7. package/esm2022/lib/report-a-case/components/assignee/assignee.component.mjs +2 -2
  8. package/esm2022/lib/report-a-case/components/case-assignees/case-assignees.component.mjs +2 -2
  9. package/esm2022/lib/report-a-case/components/case-category/case-category.component.mjs +2 -2
  10. package/esm2022/lib/report-a-case/components/case-details/case-details.component.mjs +2 -2
  11. package/esm2022/lib/report-a-case/components/case-owners/case-owners.component.mjs +2 -2
  12. package/esm2022/lib/report-a-case/components/case-priority/case-priority.component.mjs +2 -2
  13. package/esm2022/lib/report-a-case/components/case-resolution-deadline/case-resolution-deadline.component.mjs +2 -2
  14. package/esm2022/lib/report-a-case/components/case-type-dropdown/case-dropdown.component.mjs +2 -2
  15. package/esm2022/lib/report-a-case/components/due-date/due-date.component.mjs +2 -2
  16. package/esm2022/lib/report-a-case/components/field-holder/field-holder.component.mjs +2 -2
  17. package/esm2022/lib/report-a-case/components/linked assessment/linked-assessment.component.mjs +2 -2
  18. package/esm2022/lib/report-a-case/components/linked-responsibilities/linked-responsibilities.component.mjs +2 -2
  19. package/esm2022/lib/report-a-case/components/rc-details/rc-details.component.mjs +2 -2
  20. package/esm2022/lib/report-a-case/components/report-date/report-date.component.mjs +2 -2
  21. package/esm2022/lib/report-a-case/workflow-case/workflow-case.component.mjs +2 -2
  22. package/esm2022/lib/sharedComponents/approval-workflow/approval-create-form/approval-create-form.component.mjs +2 -2
  23. package/esm2022/lib/sharedComponents/assessment-editor/components/build/image-choice/image-choice.component.mjs +2 -2
  24. package/esm2022/lib/sharedComponents/assessment-editor/components/build/thank-you/thank-you.component.mjs +2 -2
  25. package/esm2022/lib/sharedComponents/assessment-editor/components/build/welcome/welcome.component.mjs +2 -2
  26. package/esm2022/lib/sharedComponents/assessment-editor/components/logic/logic.component.mjs +2 -2
  27. package/esm2022/lib/sharedComponents/assessment-editor/components/logic-questions/logic-image-choice/logic-image-choice.component.mjs +2 -2
  28. package/esm2022/lib/sharedComponents/assessment-editor/components/preview/thank-you/thank-you.component.mjs +2 -2
  29. package/esm2022/lib/sharedComponents/assessment-editor/components/preview/welcome/welcome.component.mjs +2 -2
  30. package/esm2022/lib/sharedComponents/assessment-editor/components/welcome-thankyou/welcome-thankyou.component.mjs +2 -2
  31. package/esm2022/lib/sharedComponents/assessment-list/assessment-list.component.mjs +2 -2
  32. package/esm2022/lib/sharedComponents/audit-category-list/audit-category-list.component.mjs +2 -2
  33. package/esm2022/lib/sharedComponents/category-list/category-list.component.mjs +2 -2
  34. package/esm2022/lib/sharedComponents/category-list-selection/category-list-selection/category-list-selection.component.mjs +2 -2
  35. package/esm2022/lib/sharedComponents/category-multiselect/category-multi-select.component.mjs +2 -2
  36. package/esm2022/lib/sharedComponents/checkbox-list/checkbox-list.component.mjs +2 -2
  37. package/esm2022/lib/sharedComponents/format-and-evidence/format-and-evidence.component.mjs +2 -2
  38. package/esm2022/lib/sharedComponents/framework-list/framework-list.component.mjs +2 -2
  39. package/esm2022/lib/sharedComponents/frequency/frequency-responsibility-list/frequency-responsibility-list.component.mjs +2 -2
  40. package/esm2022/lib/sharedComponents/group-users-list/group-users-list.component.mjs +2 -2
  41. package/esm2022/lib/sharedComponents/link-program/link-program/link-program.component.mjs +2 -2
  42. package/esm2022/lib/sharedComponents/owner-list/owner-list.component.mjs +2 -2
  43. package/esm2022/lib/sharedComponents/policy-access/policy-access.component.mjs +2 -2
  44. package/esm2022/lib/sharedComponents/policy-template/constants/template.constant.mjs +2 -2
  45. package/esm2022/lib/sharedComponents/program-listing/program-listing.component.mjs +2 -2
  46. package/esm2022/lib/sharedComponents/radio-list/radio-list.component.mjs +2 -2
  47. package/esm2022/lib/sharedComponents/radio-list-with-pagination/radio-list.component.mjs +2 -2
  48. package/esm2022/lib/sharedComponents/responsibility-centers-list/responsibility-centers-list.component.mjs +2 -2
  49. package/esm2022/lib/sharedComponents/responsibility-risk-selector/responsibility-risk-selector.component.mjs +2 -2
  50. package/esm2022/lib/sharedComponents/review-frequency/review-frequency.component.mjs +2 -2
  51. package/esm2022/lib/sharedComponents/roles-list/roles-list.component.mjs +2 -2
  52. package/esm2022/lib/sharedComponents/select-approvers/select-approvers.component.mjs +2 -2
  53. package/esm2022/lib/sharedComponents/users-radio-list/users-radio-list.component.mjs +2 -2
  54. package/esm2022/lib/ui-kit/pagination/pagination/pagination.component.mjs +2 -2
  55. package/esm2022/lib/workflow/shared/components/attributes/attributes-checkbox/attributes-checkbox.component.mjs +2 -2
  56. package/esm2022/lib/workflow/shared/constants/cdn-link.constant.mjs +2 -2
  57. package/esm2022/lib/workflow-assessment/import-an-assessment/import-an-assessment.component.mjs +2 -2
  58. package/esm2022/lib/workflow-assessment/workflow-assessment.component.mjs +2 -2
  59. package/esm2022/lib/workflow-compliance/workflow-compliance.component.mjs +2 -2
  60. package/esm2022/lib/workflow-policy/workflow-policy.component.mjs +2 -2
  61. package/esm2022/lib/workflow-program/create-program-ui/assessment-picker/assessment-picker.component.mjs +2 -2
  62. package/esm2022/lib/workflow-program/create-program-ui/define-framework-listing/define-framework-listing.component.mjs +2 -2
  63. package/esm2022/lib/workflow-program/create-program-ui/pagination/pagination/pagination.component.mjs +2 -2
  64. package/esm2022/lib/workflow-program/create-program-ui/role-list/role-list.component.mjs +2 -2
  65. package/esm2022/lib/workflow-program/create-program-ui/user-group-list/user-group-list.component.mjs +2 -2
  66. package/esm2022/lib/workflow-program/workflow-program.component.mjs +2 -2
  67. package/esm2022/lib/workflow-risk/workflow-risk.component.mjs +2 -2
  68. package/esm2022/lib/workflow-survey-form/workflow-survey-form.component.mjs +2 -2
  69. package/fesm2022/vcomply-workflow-engine.mjs +14 -15
  70. package/fesm2022/vcomply-workflow-engine.mjs.map +1 -1
  71. package/package.json +1 -1
  72. package/esm2022/lib/constants/assessts.constants.mjs +0 -57
  73. /package/lib/constants/{assessts.constants.d.ts → assets.constants.d.ts} +0 -0
@@ -2,7 +2,7 @@ import { HttpParams } from '@angular/common/http';
2
2
  import { Component, EventEmitter, Input, Output, ViewChild, } from '@angular/core';
3
3
  import { Subject } from 'rxjs';
4
4
  import { takeUntil } from 'rxjs/operators';
5
- import { ASSETS } from '../../../constants/assessts.constants';
5
+ import { ASSETS } from '../../../constants/assets.constants';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "../restapi.service";
8
8
  import * as i2 from "../../../ui-kit/snack-bar/snack-bar.service";
@@ -468,4 +468,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
468
468
  type: ViewChild,
469
469
  args: ['searchProgram']
470
470
  }] } });
471
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1wcm9ncmFtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvbGluay1wcm9ncmFtL2xpbmstcHJvZ3JhbS9saW5rLXByb2dyYW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9saW5rLXByb2dyYW0vbGluay1wcm9ncmFtL2xpbmstcHJvZ3JhbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFNM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7Ozs7Ozs7Ozs7OztBQU8vRCxNQUFNLE9BQU8sb0JBQW9CO0lBeUQvQixJQUE4QixrQkFBa0IsQ0FBQyxPQUFZO1FBQzNELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUk7WUFDM0QsT0FBTyxFQUFFLEVBQUU7WUFDWCxVQUFVLEVBQUUsRUFBRTtZQUNkLGdCQUFnQixFQUFFLEVBQUU7U0FDckIsQ0FBQztJQUNKLENBQUM7SUF3Q0QsU0FBUztJQUVULFlBQ1UsY0FBOEIsRUFDOUIsUUFBeUI7UUFEekIsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGFBQVEsR0FBUixRQUFRLENBQWlCO1FBMUduQyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2xCLFdBQU0sR0FBRyxNQUFNLENBQUM7UUFDaEIsc0JBQWlCLEdBQUc7WUFDbEIsSUFBSSxFQUFFLENBQUM7WUFDUCxFQUFFLEVBQUUsQ0FBQztZQUNMLFdBQVcsRUFBRSxDQUFDO1lBQ2QsU0FBUyxFQUFFLENBQUM7WUFDWixZQUFZLEVBQUUsQ0FBQztZQUNmLElBQUksRUFBRSxFQUFFO1NBQ1QsQ0FBQztRQUNGLHlCQUFvQixHQUFHO1lBQ3JCLElBQUksRUFBRSxDQUFDO1lBQ1AsRUFBRSxFQUFFLENBQUM7WUFDTCxXQUFXLEVBQUUsQ0FBQztZQUNkLFNBQVMsRUFBRSxDQUFDO1lBQ1osWUFBWSxFQUFFLENBQUM7WUFDZixJQUFJLEVBQUUsRUFBRTtTQUNULENBQUM7UUFFRixlQUFVLEdBQUc7WUFDWCxPQUFPLEVBQUUsRUFBRTtZQUNYLFFBQVEsRUFBRSxFQUFFO1lBQ1osY0FBYyxFQUFFLEVBQUU7U0FDbkIsQ0FBQztRQUVGLG1CQUFjLEdBQW1CO1lBQy9CLE9BQU8sRUFBRSxFQUFFO1lBQ1gsVUFBVSxFQUFFLEVBQUU7WUFDZCxnQkFBZ0IsRUFBRSxFQUFFO1NBQ3JCLENBQUM7UUFDRixnQkFBVyxHQUFnQjtZQUN6QixVQUFVLEVBQUUsRUFBRTtZQUNkLGdCQUFnQixFQUFFLEVBQUU7U0FDckIsQ0FBQztRQUVGLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUN6QixvQkFBZSxHQUFRLEVBQUUsQ0FBQztRQUVqQixXQUFNLEdBQVEsRUFBRSxDQUFDO1FBRWpCLFNBQUksR0FBVyxFQUFFLENBQUM7UUFDakIsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDL0IsMEJBQXFCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUdyRCxXQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ2Ysa0JBQWEsR0FBbUIsTUFBTSxDQUFDO1FBQ3ZDLGdCQUFXLEdBQW1ELFVBQVUsQ0FBQztRQUN6RSxnQkFBVyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFDbEIsU0FBSSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFDMUIsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFM0IsMEJBQXFCLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUNyRCxTQUFTO1FBQ1QsWUFBTyxHQUFHLEtBQUssQ0FBQztRQVNQLHVCQUFrQixHQUFVLEVBQUUsQ0FBQztRQUMvQix3QkFBbUIsR0FBRztZQUM3QixHQUFHLEVBQUUsRUFBRTtTQUNSLENBQUM7UUFJRiwyQkFBc0IsR0FBUTtZQUM1QixPQUFPLEVBQUUsRUFBRTtZQUNYLFVBQVUsRUFBRSxFQUFFO1NBQ2YsQ0FBQztRQUNGLGdCQUFXLEdBQWdCO1lBQ3pCLElBQUksRUFBRSxFQUFFO1lBQ1IsSUFBSSxFQUFFLENBQUM7WUFDUCxFQUFFLEVBQUUsQ0FBQztZQUNMLFVBQVUsRUFBRSxDQUFDO1lBQ2IsWUFBWSxFQUFFLENBQUM7WUFDZixXQUFXLEVBQUUsQ0FBQztZQUNkLGdDQUFnQyxFQUFFLENBQUM7WUFDbkMsc0JBQXNCLEVBQUUsQ0FBQztZQUN6QiwwQkFBMEIsRUFBRSxDQUFDO1lBQzdCLHdCQUF3QixFQUFFLENBQUM7WUFDM0IscUNBQXFDLEVBQUUsQ0FBQztZQUN4QywyQkFBMkIsRUFBRSxDQUFDO1lBQzlCLCtCQUErQixFQUFFLENBQUM7WUFDbEMsNkJBQTZCLEVBQUUsQ0FBQztTQUNqQyxDQUFDO1FBQ0Ysc0JBQWlCLEdBQUc7WUFDbEIsV0FBVyxFQUFFLENBQUM7WUFDZCxTQUFTLEVBQUUsQ0FBQztZQUNaLGlCQUFpQixFQUFFLENBQUM7WUFDcEIsTUFBTSxFQUFFLENBQUM7U0FDVixDQUFDO1FBRUYsK0JBQTBCLEdBQUcsS0FBSyxDQUFDO1FBRW5DLGNBQVMsR0FDUCxhQUFhLENBQUM7UUFRZCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztRQUN0QixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDekIsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ1IsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUNyRSxDQUFDO0lBRUQsV0FBVyxDQUFDLElBQVU7UUFDcEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbkIsSUFBSSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUM5QixvRUFBb0U7UUFDcEUsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQ3BCLGFBQWEsRUFDYixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUN2QyxDQUFDO1FBQ0YsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDckQsSUFBSSxJQUFJLEVBQUUsTUFBTSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFO1lBQzNDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQy9EO2FBQU07WUFDTCxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUNoRTtRQUNELE1BQU0sT0FBTyxHQUFHO1lBQ2QsTUFBTSxFQUFFLEtBQUs7WUFDYixNQUFNLEVBQUUsZUFBZTtZQUN2QixNQUFNO1NBQ1AsQ0FBQztRQUNGLElBQUksQ0FBQyxjQUFjO2FBQ2hCLFdBQVcsQ0FBQyxPQUFPLEVBQUUsZ0NBQWdDLENBQUM7YUFDdEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7YUFDakMsU0FBUyxDQUFDO1lBQ1QsSUFBSSxFQUFFLENBQUMsR0FBUSxFQUFFLEVBQUU7Z0JBQ2pCLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7Z0JBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUM7Z0JBQ2pDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQyxVQUFVLENBQUM7Z0JBQzdDLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxXQUFXLENBQUMsZ0NBQWdDO29CQUMvQyxHQUFHLENBQUMsZ0NBQWdDLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxXQUFXLENBQUMsc0JBQXNCLEdBQUcsR0FBRyxDQUFDLHNCQUFzQixDQUFDO2dCQUNyRSxJQUFJLENBQUMsV0FBVyxDQUFDLDBCQUEwQjtvQkFDekMsR0FBRyxDQUFDLDBCQUEwQixDQUFDO2dCQUNqQyxJQUFJLENBQUMsV0FBVyxDQUFDLHdCQUF3QjtvQkFDdkMsR0FBRyxDQUFDLHdCQUF3QixDQUFDO2dCQUMvQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUN0QixDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMsR0FBUSxFQUFFLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ3RCLENBQUM7U0FDRixDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsYUFBYSxDQUFDLElBQVU7UUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbkIsSUFBSSxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUM5QixNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFFckUsSUFBSSxJQUFJLEVBQUUsTUFBTSxFQUFFO1lBQ2hCLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsTUFBTSxPQUFPLEdBQUc7WUFDZCxNQUFNLEVBQUUsS0FBSztZQUNiLE1BQU0sRUFBRSxpQkFBaUI7WUFDekIsTUFBTTtTQUNQLENBQUM7UUFDRixJQUFJLENBQUMsY0FBYzthQUNoQixXQUFXLENBQUMsT0FBTyxFQUFFLGdCQUFnQixDQUFDO2FBQ3RDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ2pDLFNBQVMsQ0FBQztZQUNULElBQUksRUFBRSxDQUFDLEdBQVEsRUFBRSxFQUFFO2dCQUNqQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDO2dCQUNsRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxHQUFHLEdBQUcsQ0FBQyxRQUFRLElBQUksQ0FBQyxDQUFDO2dCQUM5QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsU0FBUyxHQUFHLEdBQUcsQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDO2dCQUN4RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxXQUFXLElBQUksQ0FBQyxDQUFDO2dCQUMzRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUM3QyxJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUN0QixDQUFDO1lBQ0QsS0FBSyxFQUFFLENBQUMsR0FBUSxFQUFFLEVBQUU7Z0JBQ2xCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ3RCLENBQUM7U0FDRixDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsZ0JBQWdCLENBQ2QsSUFBa0U7UUFFbEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQzVDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsbUJBQW1CLENBQUMsSUFBVTtRQUM1QixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUVuQixNQUFNLE9BQU8sR0FBRztZQUNkLE1BQU0sRUFBRSxLQUFLO1lBQ2IsTUFBTSxFQUFFLGlCQUFpQjtZQUN6QixhQUFhLEVBQUU7Z0JBQ2IsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUUsVUFBVTtnQkFDekMsTUFBTSxFQUFFLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxXQUFXO2dCQUM5QyxVQUFVLEVBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUU7Z0JBQy9ELFFBQVEsRUFBRSxnQkFBZ0I7YUFDM0I7U0FDRixDQUFDO1FBQ0YsSUFBSSxDQUFDLGNBQWM7YUFDaEIsV0FBVyxDQUFDLE9BQU8sRUFBRSwyQkFBMkIsQ0FBQzthQUNqRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQzthQUNqQyxTQUFTLENBQUM7WUFDVCxJQUFJLEVBQUUsQ0FBQyxHQUFRLEVBQUUsRUFBRTtnQkFDakIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLFVBQVUsSUFBSSxDQUFDLENBQUM7Z0JBQ3JELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLEdBQUcsR0FBRyxDQUFDLFFBQVEsSUFBSSxDQUFDLENBQUM7Z0JBQ2pELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLFdBQVcsSUFBSSxDQUFDLENBQUM7Z0JBQzNELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLFdBQVcsSUFBSSxDQUFDLENBQUM7Z0JBQzlELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7WUFDbEQsQ0FBQztZQUNELEtBQUssRUFBRSxDQUFDLEdBQVEsRUFBRSxFQUFFO2dCQUNsQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUN0QixDQUFDO1NBQ0YsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFVLEVBQUUsSUFBb0Q7UUFDekUsUUFBUSxJQUFJLEVBQUU7WUFDWixLQUFLLFVBQVU7Z0JBQ2IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO2dCQUNyQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ25CLE1BQU07WUFDUixLQUFLLFlBQVk7Z0JBQ2YsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDckIsTUFBTTtZQUNSLEtBQUssa0JBQWtCO2dCQUNyQixJQUFJLENBQUMsb0JBQW9CLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztnQkFDOUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7Z0JBQzNCLE1BQU07U0FDVDtJQUNILENBQUM7SUFDRCxRQUFRLENBQUMsS0FBVSxFQUFFLElBQW9EO1FBQ3ZFLFFBQVEsSUFBSSxFQUFFO1lBQ1osS0FBSyxVQUFVO2dCQUNiLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLElBQUksS0FBSyxFQUFFO29CQUNwQyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7b0JBQ2hDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztpQkFDcEM7Z0JBQ0QsTUFBTTtZQUNSLEtBQUssWUFBWTtnQkFDZixJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxJQUFJLEtBQUssRUFBRTtvQkFDckMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO29CQUNqQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7aUJBQ3RDO2dCQUNELE1BQU07WUFDUixLQUFLLGtCQUFrQjtnQkFDckIsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsSUFBSSxLQUFLLEVBQUU7b0JBQzNDLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztvQkFDdkMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7aUJBQzVDO2dCQUNELE1BQU07U0FDVDtJQUNILENBQUM7SUFFRCxhQUFhLENBQUMsS0FBVSxFQUFFLElBQVM7UUFDakMsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDbkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztZQUNwQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztZQUN2QyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztTQUMzQztJQUNILENBQUM7SUFFRCxjQUFjLENBQUMsS0FBVSxFQUFFLFFBQWE7UUFDdEMsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUMvQzthQUFNO1lBQ0wsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUNqRCxDQUFDLE9BQVksRUFBRSxFQUFFLENBQUMsT0FBTyxJQUFJLFFBQVEsQ0FBQyxXQUFXLENBQ2xELENBQUM7WUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzdDLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FDNUQsQ0FBQyxHQUFRLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxXQUFXLElBQUksUUFBUSxDQUFDLFdBQVcsQ0FDdEQsQ0FBQztZQUNGLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDekQ7SUFDSCxDQUFDO0lBQ0Qsb0JBQW9CLENBQUMsS0FBVSxFQUFFLElBQVM7UUFDeEMsSUFBSSxLQUFLLEVBQUU7WUFDVCxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdEQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDakQ7YUFBTTtZQUNMLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUN2RCxDQUFDLE9BQVksRUFBRSxFQUFFLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQzNDLENBQUM7WUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbkQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQ2hFLENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQzVDLENBQUM7WUFDRixJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDN0Q7SUFDSCxDQUFDO0lBQ0QsTUFBTSxDQUFDLElBQXdDO1FBQzdDLElBQUksSUFBSSxFQUFFO1lBQ1IsUUFBUSxJQUFJLEVBQUU7Z0JBQ1osS0FBSyxZQUFZO29CQUNmLElBQUksQ0FBQyxXQUFXLEdBQUcsVUFBVSxDQUFDO29CQUM5QixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsR0FBRyxFQUFFLENBQUM7b0JBQ2pDLE1BQU07Z0JBQ1IsS0FBSyxrQkFBa0I7b0JBQ3JCLElBQUksQ0FBQyxXQUFXLEdBQUcsWUFBWSxDQUFDO29CQUNoQyxJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztvQkFDdkMsTUFBTTthQUNUO1NBQ0Y7YUFBTTtZQUNMLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQW9ELEVBQUUsSUFBUztRQUNwRSxRQUFRLElBQUksRUFBRTtZQUNaLEtBQUssVUFBVTtnQkFDYixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7Z0JBQ2pDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztnQkFDcEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7Z0JBQzFDLE1BQU07WUFDUixLQUFLLFlBQVk7Z0JBQ2YsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUM1RCxDQUFDLEdBQVEsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsSUFBSSxJQUFJLENBQUMsV0FBVyxDQUNsRCxDQUFDO2dCQUNGLElBQUksYUFBYSxJQUFJLENBQUMsQ0FBQyxFQUFFO29CQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUN4RCxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztpQkFDM0M7Z0JBQ0QsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsU0FBUyxDQUMzRCxDQUFDLE9BQVksRUFBRSxFQUFFLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQzlDLENBQUM7Z0JBQ0YsSUFBSSxlQUFlLElBQUksQ0FBQyxDQUFDLEVBQUU7b0JBQ3pCLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQyxDQUFDLENBQUM7aUJBQ3hEO2dCQUNELE1BQU07WUFDUixLQUFLLGtCQUFrQjtnQkFDckIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQzlELENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQzVDLENBQUM7Z0JBQ0YsSUFBSSxTQUFTLElBQUksQ0FBQyxDQUFDLEVBQUU7b0JBQ25CLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztpQkFDM0Q7Z0JBQ0QsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQ3ZELENBQUMsT0FBWSxFQUFFLEVBQUUsQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FDM0MsQ0FBQztnQkFDRixJQUFJLEtBQUssSUFBSSxDQUFDLENBQUMsRUFBRTtvQkFDZixJQUFJLENBQUMsV0FBVyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7aUJBQ3BEO2dCQUVELE1BQU07U0FDVDtJQUNILENBQUM7SUFFRCxXQUFXLENBQ1QsSUFBcUU7UUFFckUsUUFBUSxJQUFJLEVBQUU7WUFDWixLQUFLLFVBQVU7Z0JBQ2IsSUFBSSxDQUFDLFdBQVcsR0FBRyxZQUFZLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztnQkFDcEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7Z0JBQzFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDckIsTUFBTTtZQUNSLEtBQUssWUFBWTtnQkFDZixJQUFJLENBQUMsV0FBVyxHQUFHLGtCQUFrQixDQUFDO2dCQUN0QyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztnQkFDMUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7Z0JBRTNCLE1BQU07WUFDUixLQUFLLGtCQUFrQjtnQkFDckIsSUFBSSxDQUFDLHdCQUF3QixFQUFFLENBQUM7Z0JBQ2hDLE1BQU07WUFDUixLQUFLLGNBQWM7Z0JBQ2pCLElBQUksQ0FBQywwQkFBMEIsR0FBRyxJQUFJLENBQUM7Z0JBQ3ZDLE1BQU07U0FDVDtJQUNILENBQUM7SUFDRCxzQkFBc0IsQ0FBQyxLQUFjO1FBQ25DLElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLDBCQUEwQixHQUFHLEtBQUssQ0FBQztZQUN4QyxJQUFJLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztTQUNqQzthQUFNO1lBQ0wsSUFBSSxDQUFDLDBCQUEwQixHQUFHLEtBQUssQ0FBQztTQUN6QztJQUNILENBQUM7SUFFRCx3QkFBd0I7UUFDdEIsZ0NBQWdDO1FBQ2hDLElBQUksTUFBTSxHQUFHLElBQUksVUFBVSxFQUFFLENBQUM7UUFDOUIsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLDRCQUE0QixDQUFDLENBQUM7UUFFN0QsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxVQUFVLENBQUM7UUFFbkQsTUFBTSxPQUFPLEdBQUc7WUFDZCxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxTQUFTLElBQUksQ0FBQztZQUNyQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsSUFBSSxDQUFDO1lBQ25ELFdBQVcsRUFBRSxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDeEMsUUFBUSxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUUsT0FBTyxFQUFFLFdBQVc7U0FDcEQsQ0FBQztRQUNGLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNoQixJQUNFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxHQUFHO1lBQzdCLElBQUksQ0FBQyxjQUFjLEVBQUUsT0FBTyxFQUFFLEdBQUcsS0FBSyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxFQUNuRTtZQUNBLE1BQU0sR0FBRztnQkFDUCxTQUFTLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLFNBQVMsSUFBSSxDQUFDLENBQUM7Z0JBQ3hDLFNBQVMsRUFBRSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsR0FBRzthQUN6QyxDQUFDO1NBQ0g7UUFDRCxNQUFNLG9CQUFvQixHQUFHO1lBQzNCLFVBQVUsRUFBRSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsVUFBVTtZQUNqRCxRQUFRLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixFQUFFLFFBQVE7WUFDN0Msa0JBQWtCLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixFQUFFLGtCQUFrQjtZQUNqRSxjQUFjLEVBQUUsSUFBSSxDQUFDLG9CQUFvQixFQUFFLGNBQWM7U0FDMUQsQ0FBQztRQUNGLElBQUksV0FBVyxHQUFHO1lBQ2hCLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNuRCxPQUFPLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDcEQsQ0FBQztRQUNGLElBQUksZUFBZSxHQUFHO1lBQ3BCLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztZQUNuQyxXQUFXLEVBQUUsV0FBVztZQUN4QixhQUFhLEVBQUUsb0JBQW9CO1NBQ3BDLENBQUM7UUFDRixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FDNUMsQ0FBQztRQUNGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFFOUIsTUFBTSxPQUFPLEdBQUc7WUFDZCxNQUFNLEVBQUUsTUFBTTtZQUNkLE1BQU0sRUFBRSxrQkFBa0I7WUFDMUIsTUFBTTtZQUNOLElBQUksRUFBRSxPQUFPO1lBQ2IsYUFBYSxFQUFFLG9CQUFvQjtTQUNwQyxDQUFDO1FBQ0YseUZBQXlGO1FBQ3pGLDBCQUEwQjtRQUMxQixxQ0FBcUM7UUFDckMsc0ZBQXNGO1FBQ3RGLHlCQUF5QjtRQUN6QixrREFBa0Q7UUFDbEQsNkNBQTZDO1FBQzdDLG9DQUFvQztRQUNwQyxVQUFVO1FBQ1YsMkJBQTJCO1FBQzNCLGdCQUFnQjtRQUVoQixPQUFPO1FBQ1AsMkJBQTJCO1FBQzNCLHFDQUFxQztRQUNyQyx3SUFBd0k7UUFDeEksT0FBTztRQUNQLE1BQU07SUFDUixDQUFDOytHQXpkVSxvQkFBb0I7bUdBQXBCLG9CQUFvQix5bUJDdkJqQyw4a2lDQSt2QkE7OzRGRHh1QmEsb0JBQW9CO2tCQUxoQyxTQUFTOytCQUNFLGlCQUFpQjttSUEyQ2xCLE1BQU07c0JBQWQsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLHFCQUFxQjtzQkFBOUIsTUFBTTtnQkFPRyxJQUFJO3NCQUFiLE1BQU07Z0JBQ0csS0FBSztzQkFBZCxNQUFNO2dCQUVHLHFCQUFxQjtzQkFBOUIsTUFBTTtnQkFHRSxZQUFZO3NCQUFwQixLQUFLO2dCQUN3QixrQkFBa0I7c0JBQS9DLEtBQUs7dUJBQUMsaUJBQWlCO2dCQU9mLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBR0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNzQixhQUFhO3NCQUF4QyxTQUFTO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgUmVzdEFwaVNlcnZpY2UgfSBmcm9tICcuLi9yZXN0YXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgU25hY2tCYXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdWkta2l0L3NuYWNrLWJhci9zbmFjay1iYXIuc2VydmljZSc7XG5pbXBvcnQgeyBTZWxlY3RlZElkcywgU2VsZWN0ZWRWYWx1ZXMgfSBmcm9tICcuLi9wcm9ncmFtLWludGVncmF0aW9uLWludGVyZmFjZXMnO1xuaW1wb3J0IHsgcHJvZ3JhbUxpc3QgfSBmcm9tICcuL3Byb2dyYW0tbGlzdC1tb2RlbCc7XG5pbXBvcnQgeyBBU1NFVFMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYXNzZXNzdHMuY29uc3RhbnRzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmMtbGluay1wcm9ncmFtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xpbmstcHJvZ3JhbS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xpbmstcHJvZ3JhbS5jb21wb25lbnQubGVzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBMaW5rUHJvZ3JhbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIGFuaW1hdGlvbiA9IGZhbHNlO1xuICBBU1NFVFMgPSBBU1NFVFM7XG4gIHN1YkNhdGVnb3JpZXNMaXN0ID0ge1xuICAgIGZyb206IDEsXG4gICAgdG86IDAsXG4gICAgY3VycmVudFBhZ2U6IDEsXG4gICAgdG90YWxQYWdlOiAwLFxuICAgIHRvdGFsUmVjb3JkczogMCxcbiAgICBkYXRhOiBbXSxcbiAgfTtcbiAgcmVzcG9uc2liaWxpdGllc0xpc3QgPSB7XG4gICAgZnJvbTogMSxcbiAgICB0bzogMCxcbiAgICBjdXJyZW50UGFnZTogMSxcbiAgICB0b3RhbFBhZ2U6IDAsXG4gICAgdG90YWxSZWNvcmRzOiAwLFxuICAgIGRhdGE6IFtdLFxuICB9O1xuXG4gIHNlYXJjaFRleHQgPSB7XG4gICAgcHJvZ3JhbTogJycsXG4gICAgY2F0ZWdvcnk6ICcnLFxuICAgIHJlc3BvbnNpYmlsaXR5OiAnJyxcbiAgfTtcblxuICBzZWxlY3RlZFZhbHVlczogU2VsZWN0ZWRWYWx1ZXMgPSB7XG4gICAgcHJvZ3JhbToge30sXG4gICAgY2F0ZWdvcmllczogW10sXG4gICAgcmVzcG9uc2liaWxpdGllczogW10sXG4gIH07XG4gIHNlbGVjdGVkSWRzOiBTZWxlY3RlZElkcyA9IHtcbiAgICBjYXRlZ29yaWVzOiBbXSxcbiAgICByZXNwb25zaWJpbGl0aWVzOiBbXSxcbiAgfTtcblxuICBzdWJtaXNzaW9uTG9hZGVyID0gZmFsc2U7XG4gIGN1cnJlbnRDYXRlZ29yeTogYW55ID0ge307XG5cbiAgQElucHV0KCkgcG9saWN5OiBhbnkgPSB7fTtcbiAgQElucHV0KCkgY3VycmVudFRhYiE6IGFueTtcbiAgQElucHV0KCkgbW9kZTogc3RyaW5nID0gJyc7XG4gIEBPdXRwdXQoKSBjaGFuZ2VUYWIgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSB1cGRhdGVkUHJvZ3JhbURldGFpbHMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgY3VycmVudEJ1c2luZXNzQ3ljbGUhOiBhbnk7XG4gIGxvYWRlciA9IGZhbHNlO1xuICBwcm9ncmFtU29ydEJ5OiAnZGVzYycgfCAnYXNjJyA9ICdkZXNjJztcbiAgY3VycmVudExpc3Q6ICdwcm9ncmFtcycgfCAnY2F0ZWdvcmllcycgfCAncmVzcG9uc2liaWxpdGllcycgPSAncHJvZ3JhbXMnO1xuICB1bnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG4gIEBPdXRwdXQoKSBzYXZlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgY2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgQE91dHB1dCgpIHJlZnJlc2hMaW5rZWRQb2xpY2llcyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgLy9wcm9ncmFtXG4gIHN1Ykxpc3QgPSBmYWxzZTtcbiAgQElucHV0KCkgcHJvZ3JhbXNMaXN0OiBhbnk7XG4gIEBJbnB1dCgnc2VsZWN0ZWRQcm9ncmFtJykgc2V0IGdldFNlbGVjdGVkUHJvZ3JhbShwcm9ncmFtOiBhbnkpIHtcbiAgICB0aGlzLnNlbGVjdGVkVmFsdWVzID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShwcm9ncmFtKSkgPz8ge1xuICAgICAgcHJvZ3JhbToge30sXG4gICAgICBjYXRlZ29yaWVzOiBbXSxcbiAgICAgIHJlc3BvbnNpYmlsaXRpZXM6IFtdLFxuICAgIH07XG4gIH1cbiAgQElucHV0KCkgc2VsZWN0ZWRDYXRlZ29yaWVzOiBhbnlbXSA9IFtdO1xuICBASW5wdXQoKSBzZWxlY3RlZExpbmtQcm9ncmFtID0ge1xuICAgIF9pZDogJycsXG4gIH07XG4gIEBJbnB1dCgpIGhpZGVQcm9ncmFtc0xpc3QhOiBhbnk7XG4gIEBWaWV3Q2hpbGQoJ3NlYXJjaFByb2dyYW0nKSBzZWFyY2hQcm9ncmFtITogYW55O1xuXG4gIHByZXZpb3VzU2VsZWN0ZWRWYWx1ZXM6IGFueSA9IHtcbiAgICBwcm9ncmFtOiB7fSxcbiAgICBjYXRlZ29yaWVzOiBbXSxcbiAgfTtcbiAgcHJvZ3JhbURhdGE6IHByb2dyYW1MaXN0ID0ge1xuICAgIGRhdGE6IFtdLFxuICAgIGZyb206IDAsXG4gICAgdG86IDAsXG4gICAgdG90YWxQYWdlczogMCxcbiAgICB0b3RhbFJlY29yZHM6IDAsXG4gICAgY3VycmVudFBhZ2U6IDEsXG4gICAgQWxsSW50ZXJuYWxDb250cm9sc1Byb2dyYW1zQ291bnQ6IDAsXG4gICAgQWxsT3RoZXJzUHJvZ3JhbXNDb3VudDogMCxcbiAgICBBbGxSZWd1bGF0aW9uUHJvZ3JhbXNDb3VudDogMCxcbiAgICBBbGxTdGFuZGFyZFByb2dyYW1zQ291bnQ6IDAsXG4gICAgU2VsZWN0ZWRJbnRlcm5hbENvbnRyb2xzUHJvZ3JhbXNDb3VudDogMCxcbiAgICBTZWxlY3RlZE90aGVyc1Byb2dyYW1zQ291bnQ6IDAsXG4gICAgU2VsZWN0ZWRSZWd1bGF0aW9uUHJvZ3JhbXNDb3VudDogMCxcbiAgICBTZWxlY3RlZFN0YW5kYXJkUHJvZ3JhbXNDb3VudDogMCxcbiAgfTtcbiAgcHJvZ3JhbVR5cGVPYmplY3QgPSB7XG4gICAgcmVndWxhdGlvbnM6IDEsXG4gICAgc3RhbmRhcmRzOiAyLFxuICAgIGludGVybmFsX2NvbnRyb2xzOiAzLFxuICAgIG90aGVyczogMCxcbiAgfTtcblxuICBkaXNwbGF5Q29uZmlybWF0aW9uTWVzc2FnZSA9IGZhbHNlO1xuXG4gIGFjdGl2ZVRhYjogJ3JlZ3VsYXRpb25zJyB8ICdzdGFuZGFyZHMnIHwgJ2ludGVybmFsX2NvbnRyb2xzJyB8ICdvdGhlcnMnID1cbiAgICAncmVndWxhdGlvbnMnO1xuXG4gIC8vcHJvZ3JhbVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVzdEFwaVNlcnZpY2U6IFJlc3RBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgc25hY2tiYXI6IFNuYWNrQmFyU2VydmljZVxuICApIHtcbiAgICB0aGlzLmdldFByb2dyYW1zKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmFuaW1hdGlvbiA9IHRydWU7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmFuaW1hdGlvbiA9IGZhbHNlO1xuICAgIH0sIDMwMCk7XG4gICAgdGhpcy5jdXJyZW50QnVzaW5lc3NDeWNsZSA9IHRoaXMucmVzdEFwaVNlcnZpY2UuZ2V0QnVzaW5lc3NDeWNsZSgpO1xuICB9XG5cbiAgZ2V0UHJvZ3JhbXMoZGF0YT86IGFueSkge1xuICAgIHRoaXMubG9hZGVyID0gdHJ1ZTtcbiAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcbiAgICAvLyBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdtb2RlJywgJ2NvbXBsaWFuY2VDYXRlZ29yeS9wcm9ncmFtTGlzdCcpO1xuICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoXG4gICAgICAncHJvZ3JhbVR5cGUnLFxuICAgICAgdGhpcy5wcm9ncmFtVHlwZU9iamVjdFt0aGlzLmFjdGl2ZVRhYl1cbiAgICApO1xuICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ3BhZ2VOYW1lJywgJ3BvbGljeVdvcmtyb29tJyk7XG4gICAgaWYgKGRhdGE/LnNlYXJjaCB8fCB0aGlzLnNlYXJjaFRleHQucHJvZ3JhbSkge1xuICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgnc2VhcmNoVGV4dCcsIHRoaXMuc2VhcmNoVGV4dC5wcm9ncmFtKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgncGFnZU5vJywgdGhpcy5wcm9ncmFtRGF0YS5jdXJyZW50UGFnZSk7XG4gICAgfVxuICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgYWN0aW9uOiAnY29tcGxpYW5jZUdldCcsXG4gICAgICBwYXJhbXMsXG4gICAgfTtcbiAgICB0aGlzLnJlc3RBcGlTZXJ2aWNlXG4gICAgICAuYXBpRGVsZWdhdGUocmVxdWVzdCwgJ2NvbXBsaWFuY2VDYXRlZ29yeS9wcm9ncmFtTGlzdCcpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XG4gICAgICAgICAgdGhpcy5wcm9ncmFtRGF0YS5kYXRhID0gcmVzLmRhdGE7XG4gICAgICAgICAgdGhpcy5wcm9ncmFtRGF0YS5mcm9tID0gcmVzLmZyb207XG4gICAgICAgICAgdGhpcy5wcm9ncmFtRGF0YS50byA9IHJlcy50bztcbiAgICAgICAgICB0aGlzLnByb2dyYW1EYXRhLnRvdGFsUGFnZXMgPSByZXMudG90YWxQYWdlcztcbiAgICAgICAgICB0aGlzLnByb2dyYW1EYXRhLnRvdGFsUmVjb3JkcyA9IHJlcy50b3RhbFJlY29yZHM7XG4gICAgICAgICAgdGhpcy5wcm9ncmFtRGF0YS5BbGxJbnRlcm5hbENvbnRyb2xzUHJvZ3JhbXNDb3VudCA9XG4gICAgICAgICAgICByZXMuQWxsSW50ZXJuYWxDb250cm9sc1Byb2dyYW1zQ291bnQ7XG4gICAgICAgICAgdGhpcy5wcm9ncmFtRGF0YS5BbGxPdGhlcnNQcm9ncmFtc0NvdW50ID0gcmVzLkFsbE90aGVyc1Byb2dyYW1zQ291bnQ7XG4gICAgICAgICAgdGhpcy5wcm9ncmFtRGF0YS5BbGxSZWd1bGF0aW9uUHJvZ3JhbXNDb3VudCA9XG4gICAgICAgICAgICByZXMuQWxsUmVndWxhdGlvblByb2dyYW1zQ291bnQ7XG4gICAgICAgICAgdGhpcy5wcm9ncmFtRGF0YS5BbGxTdGFuZGFyZFByb2dyYW1zQ291bnQgPVxuICAgICAgICAgICAgcmVzLkFsbFN0YW5kYXJkUHJvZ3JhbXNDb3VudDtcbiAgICAgICAgICB0aGlzLmxvYWRlciA9IGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XG4gICAgICAgICAgdGhpcy5sb2FkZXIgPSBmYWxzZTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICB9XG5cbiAgZ2V0Q2F0ZWdvcmllcyhkYXRhPzogYW55KSB7XG4gICAgdGhpcy5sb2FkZXIgPSB0cnVlO1xuICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ3BhcmVudElkJywgdGhpcy5zZWxlY3RlZFZhbHVlcy5wcm9ncmFtPy5faWQpO1xuXG4gICAgaWYgKGRhdGE/LnNlYXJjaCkge1xuICAgICAgcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgncScsIHRoaXMuc2VhcmNoVGV4dC5jYXRlZ29yeSk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVxdWVzdCA9IHtcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICBhY3Rpb246ICdwcm9ncmFtRW5kcG9pbnQnLFxuICAgICAgcGFyYW1zLFxuICAgIH07XG4gICAgdGhpcy5yZXN0QXBpU2VydmljZVxuICAgICAgLmFwaURlbGVnYXRlKHJlcXVlc3QsICcvc3ViQ2F0ZWdvcmllcycpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XG4gICAgICAgICAgdGhpcy5zdWJDYXRlZ29yaWVzTGlzdC5mcm9tID0gcmVzLml0ZW1zX2Zyb20gPz8gMTtcbiAgICAgICAgICB0aGlzLnN1YkNhdGVnb3JpZXNMaXN0LnRvID0gcmVzLml0ZW1zX3RvID8/IDA7XG4gICAgICAgICAgdGhpcy5zdWJDYXRlZ29yaWVzTGlzdC50b3RhbFBhZ2UgPSByZXMudG90YWxfcGFnZXMgPz8gMDtcbiAgICAgICAgICB0aGlzLnN1YkNhdGVnb3JpZXNMaXN0LnRvdGFsUmVjb3JkcyA9IHJlcy50b3RhbF9pdGVtcyA/PyAwO1xuICAgICAgICAgIHRoaXMuc3ViQ2F0ZWdvcmllc0xpc3QuZGF0YSA9IHJlcy5kYXRhID8/IFtdO1xuICAgICAgICAgIHRoaXMubG9hZGVyID0gZmFsc2U7XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcbiAgICAgICAgICB0aGlzLmxvYWRlciA9IGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gIH1cbiAgY2hhbmdlVGFiUHJvZ3JhbShcbiAgICB0eXBlOiAncmVndWxhdGlvbnMnIHwgJ3N0YW5kYXJkcycgfCAnaW50ZXJuYWxfY29udHJvbHMnIHwgJ290aGVycydcbiAgKSB7XG4gICAgdGhpcy5hY3RpdmVUYWIgPSB0eXBlO1xuICAgIHRoaXMucHJvZ3JhbURhdGEuY3VycmVudFBhZ2UgPSAxO1xuICAgIHRoaXMuc2VhcmNoVGV4dC5wcm9ncmFtID0gJyc7XG4gICAgdGhpcy5zZWFyY2hQcm9ncmFtLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICB0aGlzLmdldFByb2dyYW1zKCk7XG4gIH1cblxuICBnZXRSZXNwb25zaWJpbGl0aWVzKGRhdGE/OiBhbnkpIHtcbiAgICB0aGlzLmxvYWRlciA9IHRydWU7XG5cbiAgICBjb25zdCByZXF1ZXN0ID0ge1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIGFjdGlvbjogJ3Byb2dyYW1FbmRwb2ludCcsXG4gICAgICBwYXlsb2FkT2JqZWN0OiB7XG4gICAgICAgIGNhdGVnb3J5SWRzOiB0aGlzLnNlbGVjdGVkSWRzPy5jYXRlZ29yaWVzLFxuICAgICAgICBwYWdlTm86IHRoaXMucmVzcG9uc2liaWxpdGllc0xpc3Q/LmN1cnJlbnRQYWdlLFxuICAgICAgICBzZWFyY2hUZXh0OiBkYXRhPy5zZWFyY2ggPyB0aGlzLnNlYXJjaFRleHQ/LnJlc3BvbnNpYmlsaXR5IDogJycsXG4gICAgICAgIHBhZ2VOYW1lOiAncG9saWN5V29ya3Jvb20nLFxuICAgICAgfSxcbiAgICB9O1xuICAgIHRoaXMucmVzdEFwaVNlcnZpY2VcbiAgICAgIC5hcGlEZWxlZ2F0ZShyZXF1ZXN0LCAnL2NhdGVnb3J5UmVzcG9uc2liaWxpdGllcycpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy51bnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKHJlczogYW55KSA9PiB7XG4gICAgICAgICAgdGhpcy5sb2FkZXIgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLnJlc3BvbnNpYmlsaXRpZXNMaXN0LmZyb20gPSByZXMuaXRlbXNfZnJvbSA/PyAxO1xuICAgICAgICAgIHRoaXMucmVzcG9uc2liaWxpdGllc0xpc3QudG8gPSByZXMuaXRlbXNfdG8gPz8gMDtcbiAgICAgICAgICB0aGlzLnJlc3BvbnNpYmlsaXRpZXNMaXN0LnRvdGFsUGFnZSA9IHJlcy50b3RhbF9wYWdlcyA/PyAxO1xuICAgICAgICAgIHRoaXMucmVzcG9uc2liaWxpdGllc0xpc3QudG90YWxSZWNvcmRzID0gcmVzLnRvdGFsX2l0ZW1zID8/IDA7XG4gICAgICAgICAgdGhpcy5yZXNwb25zaWJpbGl0aWVzTGlzdC5kYXRhID0gcmVzLmRhdGEgPz8gW107XG4gICAgICAgIH0sXG4gICAgICAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcbiAgICAgICAgICB0aGlzLmxvYWRlciA9IGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gIH1cblxuICBjaGFuZ2VQYWdlKGV2ZW50OiBhbnksIHR5cGU6ICdwcm9ncmFtcycgfCAnY2F0ZWdvcmllcycgfCAncmVzcG9uc2liaWxpdGllcycpIHtcbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgIGNhc2UgJ3Byb2dyYW1zJzpcbiAgICAgICAgdGhpcy5wcm9ncmFtRGF0YS5jdXJyZW50UGFnZSA9IGV2ZW50O1xuICAgICAgICB0aGlzLmdldFByb2dyYW1zKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnY2F0ZWdvcmllcyc6XG4gICAgICAgIHRoaXMuc3ViQ2F0ZWdvcmllc0xpc3QuY3VycmVudFBhZ2UgPSBldmVudDtcbiAgICAgICAgdGhpcy5nZXRDYXRlZ29yaWVzKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAncmVzcG9uc2liaWxpdGllcyc6XG4gICAgICAgIHRoaXMucmVzcG9uc2liaWxpdGllc0xpc3QuY3VycmVudFBhZ2UgPSBldmVudDtcbiAgICAgICAgdGhpcy5nZXRSZXNwb25zaWJpbGl0aWVzKCk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuICBzZWFyY2hCeShldmVudDogYW55LCB0eXBlOiAncHJvZ3JhbXMnIHwgJ2NhdGVnb3JpZXMnIHwgJ3Jlc3BvbnNpYmlsaXRpZXMnKSB7XG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlICdwcm9ncmFtcyc6XG4gICAgICAgIGlmICh0aGlzLnNlYXJjaFRleHQucHJvZ3JhbSAhPSBldmVudCkge1xuICAgICAgICAgIHRoaXMuc2VhcmNoVGV4dC5wcm9ncmFtID0gZXZlbnQ7XG4gICAgICAgICAgdGhpcy5nZXRQcm9ncmFtcyh7IHNlYXJjaDogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2NhdGVnb3JpZXMnOlxuICAgICAgICBpZiAodGhpcy5zZWFyY2hUZXh0LmNhdGVnb3J5ICE9IGV2ZW50KSB7XG4gICAgICAgICAgdGhpcy5zZWFyY2hUZXh0LmNhdGVnb3J5ID0gZXZlbnQ7XG4gICAgICAgICAgdGhpcy5nZXRDYXRlZ29yaWVzKHsgc2VhcmNoOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAncmVzcG9uc2liaWxpdGllcyc6XG4gICAgICAgIGlmICh0aGlzLnNlYXJjaFRleHQucmVzcG9uc2liaWxpdHkgIT0gZXZlbnQpIHtcbiAgICAgICAgICB0aGlzLnNlYXJjaFRleHQucmVzcG9uc2liaWxpdHkgPSBldmVudDtcbiAgICAgICAgICB0aGlzLmdldFJlc3BvbnNpYmlsaXRpZXMoeyBzZWFyY2g6IHRydWUgfSk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0UHJvZ3JhbShldmVudDogYW55LCBkYXRhOiBhbnkpIHtcbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMucHJvZ3JhbSA9IGRhdGE7XG4gICAgICB0aGlzLnNlbGVjdGVkSWRzLmNhdGVnb3JpZXMgPSBbXTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMuY2F0ZWdvcmllcyA9IFtdO1xuICAgICAgdGhpcy5zZWxlY3RlZElkcy5yZXNwb25zaWJpbGl0aWVzID0gW107XG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnJlc3BvbnNpYmlsaXRpZXMgPSBbXTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3RDYXRlZ29yeShldmVudDogYW55LCBjYXRlZ29yeTogYW55KSB7XG4gICAgaWYgKGV2ZW50KSB7XG4gICAgICB0aGlzLnNlbGVjdGVkSWRzLmNhdGVnb3JpZXMucHVzaChjYXRlZ29yeS5jYXRlZ29yeV9pZCk7XG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLmNhdGVnb3JpZXMucHVzaChjYXRlZ29yeSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5zZWxlY3RlZElkcy5jYXRlZ29yaWVzLmZpbmRJbmRleChcbiAgICAgICAgKGVsZW1lbnQ6IGFueSkgPT4gZWxlbWVudCA9PSBjYXRlZ29yeS5jYXRlZ29yeV9pZFxuICAgICAgKTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJZHMuY2F0ZWdvcmllcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgY29uc3QgY2F0ZWdvcnlJbmRleCA9IHRoaXMuc2VsZWN0ZWRWYWx1ZXMuY2F0ZWdvcmllcy5maW5kSW5kZXgoXG4gICAgICAgIChlbGU6IGFueSkgPT4gZWxlLmNhdGVnb3J5X2lkID09IGNhdGVnb3J5LmNhdGVnb3J5X2lkXG4gICAgICApO1xuICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcy5jYXRlZ29yaWVzLnNwbGljZShjYXRlZ29yeUluZGV4LCAxKTtcbiAgICB9XG4gIH1cbiAgc2VsZWN0UmVzcG9uc2liaWxpdHkoZXZlbnQ6IGFueSwgZGF0YTogYW55KSB7XG4gICAgaWYgKGV2ZW50KSB7XG4gICAgICB0aGlzLnNlbGVjdGVkSWRzLnJlc3BvbnNpYmlsaXRpZXMucHVzaChkYXRhLlJlcG9ydElkKTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMucmVzcG9uc2liaWxpdGllcy5wdXNoKGRhdGEpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBpbmRleCA9IHRoaXMuc2VsZWN0ZWRJZHMucmVzcG9uc2liaWxpdGllcy5maW5kSW5kZXgoXG4gICAgICAgIChlbGVtZW50OiBhbnkpID0+IGVsZW1lbnQgPT0gZGF0YS5SZXBvcnRJZFxuICAgICAgKTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJZHMucmVzcG9uc2liaWxpdGllcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgY29uc3QgcmVwb3J0SW5kZXggPSB0aGlzLnNlbGVjdGVkVmFsdWVzLnJlc3BvbnNpYmlsaXRpZXMuZmluZEluZGV4KFxuICAgICAgICAoZWxlOiBhbnkpID0+IGVsZS5SZXBvcnRJZCA9PSBkYXRhLlJlcG9ydElkXG4gICAgICApO1xuICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcy5yZXNwb25zaWJpbGl0aWVzLnNwbGljZShyZXBvcnRJbmRleCwgMSk7XG4gICAgfVxuICB9XG4gIGdvQmFjayhmcm9tPzogJ2NhdGVnb3JpZXMnIHwgJ3Jlc3BvbnNpYmlsaXRpZXMnKSB7XG4gICAgaWYgKGZyb20pIHtcbiAgICAgIHN3aXRjaCAoZnJvbSkge1xuICAgICAgICBjYXNlICdjYXRlZ29yaWVzJzpcbiAgICAgICAgICB0aGlzLmN1cnJlbnRMaXN0ID0gJ3Byb2dyYW1zJztcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkSWRzLmNhdGVnb3JpZXMgPSBbXTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAncmVzcG9uc2liaWxpdGllcyc6XG4gICAgICAgICAgdGhpcy5jdXJyZW50TGlzdCA9ICdjYXRlZ29yaWVzJztcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkSWRzLnJlc3BvbnNpYmlsaXRpZXMgPSBbXTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jbG9zZS5lbWl0KCk7XG4gICAgfVxuICB9XG5cbiAgcmVtb3ZlKHR5cGU6ICdwcm9ncmFtcycgfCAnY2F0ZWdvcmllcycgfCAncmVzcG9uc2liaWxpdGllcycsIGl0ZW06IGFueSkge1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSAncHJvZ3JhbXMnOlxuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnByb2dyYW0gPSB7fTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcy5jYXRlZ29yaWVzID0gW107XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMucmVzcG9uc2liaWxpdGllcyA9IFtdO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2NhdGVnb3JpZXMnOlxuICAgICAgICBjb25zdCBjYXRlZ29yeUluZGV4ID0gdGhpcy5zZWxlY3RlZFZhbHVlcy5jYXRlZ29yaWVzLmZpbmRJbmRleChcbiAgICAgICAgICAoZWxlOiBhbnkpID0+IGVsZS5jYXRlZ29yeV9pZCA9PSBpdGVtLmNhdGVnb3J5X2lkXG4gICAgICAgICk7XG4gICAgICAgIGlmIChjYXRlZ29yeUluZGV4ICE9IC0xKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcy5jYXRlZ29yaWVzLnNwbGljZShjYXRlZ29yeUluZGV4LCAxKTtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnJlc3BvbnNpYmlsaXRpZXMgPSBbXTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjYXRlZ29yeUlkSW5kZXggPSB0aGlzLnNlbGVjdGVkSWRzLmNhdGVnb3JpZXMuZmluZEluZGV4KFxuICAgICAgICAgIChlbGVtZW50OiBhbnkpID0+IGVsZW1lbnQgPT0gaXRlbS5jYXRlZ29yeV9pZFxuICAgICAgICApO1xuICAgICAgICBpZiAoY2F0ZWdvcnlJZEluZGV4ICE9IC0xKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZElkcy5jYXRlZ29yaWVzLnNwbGljZShjYXRlZ29yeUlkSW5kZXgsIDEpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAncmVzcG9uc2liaWxpdGllcyc6XG4gICAgICAgIGNvbnN0IHJlc3BJbmRleCA9IHRoaXMuc2VsZWN0ZWRWYWx1ZXMucmVzcG9uc2liaWxpdGllcy5maW5kSW5kZXgoXG4gICAgICAgICAgKGVsZTogYW55KSA9PiBlbGUuUmVwb3J0SWQgPT0gaXRlbS5SZXBvcnRJZFxuICAgICAgICApO1xuICAgICAgICBpZiAocmVzcEluZGV4ICE9IC0xKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcy5yZXNwb25zaWJpbGl0aWVzLnNwbGljZShyZXNwSW5kZXgsIDEpO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5zZWxlY3RlZElkcy5yZXNwb25zaWJpbGl0aWVzLmZpbmRJbmRleChcbiAgICAgICAgICAoZWxlbWVudDogYW55KSA9PiBlbGVtZW50ID09IGl0ZW0uUmVwb3J0SWRcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKGluZGV4ICE9IC0xKSB7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZElkcy5yZXNwb25zaWJpbGl0aWVzLnNwbGljZShpbmRleCwgMSk7XG4gICAgICAgIH1cblxuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICBzYXZlQ2hhbmdlcyhcbiAgICB0eXBlOiAncHJvZ3JhbXMnIHwgJ2NhdGVnb3JpZXMnIHwgJ3Jlc3BvbnNpYmlsaXRpZXMnIHwgJ3Byb2dyYW1zT25seSdcbiAgKSB7XG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlICdwcm9ncmFtcyc6XG4gICAgICAgIHRoaXMuY3VycmVudExpc3QgPSAnY2F0ZWdvcmllcyc7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMuY2F0ZWdvcmllcyA9IFtdO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnJlc3BvbnNpYmlsaXRpZXMgPSBbXTtcbiAgICAgICAgdGhpcy5nZXRDYXRlZ29yaWVzKCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnY2F0ZWdvcmllcyc6XG4gICAgICAgIHRoaXMuY3VycmVudExpc3QgPSAncmVzcG9uc2liaWxpdGllcyc7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMucmVzcG9uc2liaWxpdGllcyA9IFtdO1xuICAgICAgICB0aGlzLmdldFJlc3BvbnNpYmlsaXRpZXMoKTtcblxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3Jlc3BvbnNpYmlsaXRpZXMnOlxuICAgICAgICB0aGlzLnN1Ym1pdHByb2dyYW1JbnRlZ3JhdGlvbigpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3Byb2dyYW1zT25seSc6XG4gICAgICAgIHRoaXMuZGlzcGxheUNvbmZpcm1hdGlvbk1lc3NhZ2UgPSB0cnVlO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cbiAgc2F2ZUNoYW5nZXNGcm9tUHJvZ3JhbShldmVudDogYm9vbGVhbikge1xuICAgIGlmIChldmVudCkge1xuICAgICAgdGhpcy5kaXNwbGF5Q29uZmlybWF0aW9uTWVzc2FnZSA9IGZhbHNlO1xuICAgICAgdGhpcy5zdWJtaXRwcm9ncmFtSW50ZWdyYXRpb24oKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kaXNwbGF5Q29uZmlybWF0aW9uTWVzc2FnZSA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHN1Ym1pdHByb2dyYW1JbnRlZ3JhdGlvbigpIHtcbiAgICAvLyB0aGlzLnN1Ym1pc3Npb25Mb2FkZXIgPSB0cnVlO1xuICAgIGxldCBwYXJhbXMgPSBuZXcgSHR0cFBhcmFtcygpO1xuICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ21vZGUnLCAncHJvZ3JhbVBvbGljeVVwZGF0ZS91cGRhdGUnKTtcblxuICAgIGNvbnN0IGNhdGVnb3J5QXJyYXkgPSB0aGlzLnNlbGVjdGVkSWRzPy5jYXRlZ29yaWVzO1xuXG4gICAgY29uc3QgcGF5bG9hZCA9IHtcbiAgICAgIHBvbGljeUlkOiB0aGlzLnBvbGljeT8ucG9saWN5X2lkID8/IDAsXG4gICAgICByZXBvcnRfaWRzOiB0aGlzLnNlbGVjdGVkSWRzPy5yZXNwb25zaWJpbGl0aWVzID8/IDAsXG4gICAgICBjYXRlZ29yeV9pZDogWy4uLm5ldyBTZXQoY2F0ZWdvcnlBcnJheSldLFxuICAgICAgcGFyZW50SWQ6IHRoaXMuc2VsZWN0ZWRWYWx1ZXM/LnByb2dyYW0/LmNhdGVnb3J5X2lkLFxuICAgIH07XG4gICAgbGV0IHJlbW92ZSA9IHt9O1xuICAgIGlmIChcbiAgICAgIHRoaXMuc2VsZWN0ZWRMaW5rUHJvZ3JhbT8uX2lkICYmXG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzPy5wcm9ncmFtPy5faWQgIT09IHRoaXMuc2VsZWN0ZWRMaW5rUHJvZ3JhbT8uX2lkXG4gICAgKSB7XG4gICAgICByZW1vdmUgPSB7XG4gICAgICAgIHBvbGljeUlkczogW3RoaXMucG9saWN5Py5wb2xpY3lfaWQgPz8gMF0sXG4gICAgICAgIHByb2dyYW1JZDogdGhpcy5zZWxlY3RlZExpbmtQcm9ncmFtPy5faWQsXG4gICAgICB9O1xuICAgIH1cbiAgICBjb25zdCBjdXJyZW50QnVzaW5lc3NDeWNsZSA9IHtcbiAgICAgIHN0YXJ0X2RhdGU6IHRoaXMuY3VycmVudEJ1c2luZXNzQ3ljbGU/LnN0YXJ0X2RhdGUsXG4gICAgICBlbmRfZGF0ZTogdGhpcy5jdXJyZW50QnVzaW5lc3NDeWNsZT8uZW5kX2RhdGUsXG4gICAgICBzZWxlY3RlZF9jeWNsZV9hcnI6IHRoaXMuY3VycmVudEJ1c2luZXNzQ3ljbGU/LnNlbGVjdGVkX2N5Y2xlX2FycixcbiAgICAgIHNlbGVjdGVkX2N5Y2xlOiB0aGlzLmN1cnJlbnRCdXNpbmVzc0N5Y2xlPy5zZWxlY3RlZF9jeWNsZSxcbiAgICB9O1xuICAgIGxldCBsaW5rUHJvZ3JhbSA9IHtcbiAgICAgIGFkZGVkOiBPYmplY3Qua2V5cyhwYXlsb2FkKS5sZW5ndGggPyBbcGF5bG9hZF0gOiBbXSxcbiAgICAgIHJlbW92ZWQ6IE9iamVjdC5rZXlzKHJlbW92ZSkubGVuZ3RoID8gW3JlbW92ZV0gOiBbXSxcbiAgICB9O1xuICAgIGxldCBzZWxlY3RlZFByb2dyYW0gPSB7XG4gICAgICBzZWxlY3RlZFZhbHVlczogdGhpcy5zZWxlY3RlZFZhbHVlcyxcbiAgICAgIGxpbmtQcm9ncmFtOiBsaW5rUHJvZ3JhbSxcbiAgICAgIGJ1c2luZXNzQ3ljbGU6IGN1cnJlbnRCdXNpbmVzc0N5Y2xlLFxuICAgIH07XG4gICAgdGhpcy51cGRhdGVkUHJvZ3JhbURldGFpbHMuZW1pdChcbiAgICAgIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoc2VsZWN0ZWRQcm9ncmFtKSlcbiAgICApO1xuICAgIHRoaXMuc3VibWlzc2lvbkxvYWRlciA9IGZhbHNlO1xuXG4gICAgY29uc3QgcmVxdWVzdCA9IHtcbiAgICAgIG1ldGhvZDogJ3Bvc3QnLFxuICAgICAgYWN0aW9uOiAnL2NvbXBsaWFuY2VfcG9zdCcsXG4gICAgICBwYXJhbXMsXG4gICAgICBkYXRhOiBwYXlsb2FkLFxuICAgICAgYnVzaW5lc3NDeWNsZTogY3VycmVudEJ1c2luZXNzQ3ljbGUsXG4gICAgfTtcbiAgICAvLyB0aGlzLnJlc3RBcGlTZXJ2aWNlLmFwaURlbGVnYXRlKHJlcXVlc3QpLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUpKS5zdWJzY3JpYmUoe1xuICAgIC8vICAgbmV4dDogKHJlczogYW55KSA9PiB7XG4gICAgLy8gICAgIHRoaXMuc3VibWlzc2lvbkxvYWRlciA9IGZhbHNlO1xuICAgIC8vICAgICB0aGlzLnNuYWNrYmFyLnNob3coJ1RoZSBwcm9ncmFtIGhhcyBiZWVuIGxpbmtlZCB3aXRoIHRoaXMgUG9saWN5LicsICdzdWNjZXNzJyk7XG4gICAgLy8gICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgIC8vICAgICAgIGlmKHRoaXMuY3VycmVudFRhYiAhPSAnbGlua2VkX3Byb2dyYW1zJyl7XG4gICAgLy8gICAgICAgICB0aGlzLnJlZnJlc2hMaW5rZWRQb2xpY2llcy5lbWl0KCk7XG4gICAgLy8gICAgICAgICAvLyB0aGlzLmNoYW5nZVRhYi5lbWl0KCk7XG4gICAgLy8gICAgICAgfVxuICAgIC8vICAgICAgIHRoaXMuY2xvc2UuZW1pdCgpO1xuICAgIC8vICAgICB9LCAxMDAwKTtcblxuICAgIC8vICAgfSxcbiAgICAvLyAgIGVycm9yOiAoZXJyOiBhbnkpID0+IHtcbiAgICAvLyAgICAgdGhpcy5zdWJtaXNzaW9uTG9hZGVyID0gZmFsc2U7XG4gICAgLy8gICAgIHRoaXMuc25hY2tiYXIuc2hvdyhcIk9vcHMgU29tZXRoaW5nIHdlbnQgd3JvbmcgYW5kIHdlIHdlcmUgdW5hYmxlIHRvIGNvbXBsZXRlIHRoaXMgYWN0aW9uLiBMZXQncyBnaXZlIGl0IGFub3RoZXIgdHJ5IHNoYWxsIHdlID9cIik7XG4gICAgLy8gICB9LFxuICAgIC8vIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwibGluay1wb2xpY3lcIiBbY2xhc3MuYW5pbWF0ZV09XCJhbmltYXRpb25cIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1cnJlbnRMaXN0ID09ICdwcm9ncmFtcydcIj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInByb2dyYW0tbGlzdGluZy1oZWFkIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuIHZ4LXBsLTQgdngtcHItNFwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cInZ4LWZzLTE0IHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHRcIj5TZWxlY3QgYSBQcm9ncmFtPC9kaXY+XG4gICAgICA8IS0tIDxidXR0b24gKGNsaWNrKT1cImdvQmFjaygpXCIgY2xhc3M9XCJiYWNrLWJ0biB2eC1mcy0xMiB2eC1mdy01MDAgdngtbGFibGUtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1wLTAgdngtbS0wIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj48aSBjbGFzcz1cImljb25zIHZ4LW1yLTFcIj4mI3hlOTFkOzwvaT4gQmFjazwvYnV0dG9uPiAtLT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwicHJvZ3JhbS1saXN0aW5nLWJvZHlcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmaWx0ZXItY2FyZC1yb3cgdngtZC1mbGV4IHZ4LW1iLTJcIj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiZmlsdGVyLWNhcmQgdngtYmctd2hpdGUgdngtZC1mbGV4IHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1hbGlnbi1jZW50ZXIgdngtcHQtMiB2eC1wYi0yIHZ4LXBsLTMgdngtcHItMyB2eC13LTEwMFwiXG4gICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVUYWIgPT0gJ3JlZ3VsYXRpb25zJ1wiXG4gICAgICAgICAgKGNsaWNrKT1cImNoYW5nZVRhYlByb2dyYW0oJ3JlZ3VsYXRpb25zJylcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQgdngtZC1ibG9jayB2eC13LTEwMFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtYmxvY2sgdngtbGgtM1wiPlxuICAgICAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2UgdngtZC1mbGV4IHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1hbGlnbi1jZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgPlJFR1VMQVRJT05TPC9sYWJlbFxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2eC1mcy0xMCB2eC1mdy02MDAgdngtbGFiZWwtdHh0IHZ4LWxoLTRcIlxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJwcm9ncmFtRGF0YT8uU2VsZWN0ZWRSZWd1bGF0aW9uUHJvZ3JhbXNDb3VudCA+IDBcIlxuICAgICAgICAgICAgICAgICAgPnt7IHByb2dyYW1EYXRhPy5TZWxlY3RlZFJlZ3VsYXRpb25Qcm9ncmFtc0NvdW50IH19XG4gICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICBwcm9ncmFtRGF0YT8uU2VsZWN0ZWRSZWd1bGF0aW9uUHJvZ3JhbXNDb3VudCA9PSAxXG4gICAgICAgICAgICAgICAgICAgICAgPyBcIlByb2dyYW1cIlxuICAgICAgICAgICAgICAgICAgICAgIDogXCJQcm9ncmFtc1wiXG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQ8L3NwYW5cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0IHZ4LWQtZmxleCB2eC1qdXN0aWZ5LWVuZCB2eC13LTEwMFwiPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJjb3VudGVyIHZ4LXR4dC13aGl0ZSB2eC1mdy01MDAgdngtZC1pbmxpbmUtYmxvY2sgdngtdGV4dC1jZW50ZXJcIlxuICAgICAgICAgICAgICA+e3sgcHJvZ3JhbURhdGE/LkFsbFJlZ3VsYXRpb25Qcm9ncmFtc0NvdW50IH19PC9zcGFuXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJmaWx0ZXItY2FyZCB2eC1iZy13aGl0ZSB2eC1kLWZsZXggdngtanVzdGlmeS1iZXR3ZWVuIHZ4LWFsaWduLWNlbnRlciB2eC1wdC0yIHZ4LXBiLTIgdngtcGwtMyB2eC1wci0zIHZ4LXctMTAwXCJcbiAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVRhYiA9PSAnc3RhbmRhcmRzJ1wiXG4gICAgICAgICAgKGNsaWNrKT1cImNoYW5nZVRhYlByb2dyYW0oJ3N0YW5kYXJkcycpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0IHZ4LWQtYmxvY2sgdngtdy0xMDBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1kLWJsb2NrIHZ4LWxoLTNcIj5cbiAgICAgICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwidngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlIHZ4LWQtZmxleCB2eC1qdXN0aWZ5LWJldHdlZW4gdngtYWxpZ24tY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgID5TVEFOREFSRFM8L2xhYmVsXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInZ4LWZzLTEwIHZ4LWZ3LTYwMCB2eC1sYWJlbC10eHQgdngtbGgtNFwiXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cInByb2dyYW1EYXRhPy5TZWxlY3RlZFN0YW5kYXJkUHJvZ3JhbXNDb3VudCA+IDBcIlxuICAgICAgICAgICAgICAgICAgPnt7IHByb2dyYW1EYXRhPy5TZWxlY3RlZFN0YW5kYXJkUHJvZ3JhbXNDb3VudCB9fVxuICAgICAgICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgICAgICAgcHJvZ3JhbURhdGE/LlNlbGVjdGVkU3RhbmRhcmRQcm9ncmFtc0NvdW50ID09IDFcbiAgICAgICAgICAgICAgICAgICAgICA/IFwiUHJvZ3JhbVwiXG4gICAgICAgICAgICAgICAgICAgICAgOiBcIlByb2dyYW1zXCJcbiAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICBzZWxlY3RlZDwvc3BhblxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicmlnaHQgdngtZC1mbGV4IHZ4LWp1c3RpZnktZW5kIHZ4LXctMTAwXCI+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICBjbGFzcz1cImNvdW50ZXIgdngtdHh0LXdoaXRlIHZ4LWZ3LTUwMCB2eC1kLWlubGluZS1ibG9jayB2eC10ZXh0LWNlbnRlclwiXG4gICAgICAgICAgICAgID57eyBwcm9ncmFtRGF0YT8uQWxsU3RhbmRhcmRQcm9ncmFtc0NvdW50IH19PC9zcGFuXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJmaWx0ZXItY2FyZCB2eC1iZy13aGl0ZSB2eC1kLWZsZXggdngtanVzdGlmeS1iZXR3ZWVuIHZ4LWFsaWduLWNlbnRlciB2eC1wdC0yIHZ4LXBiLTIgdngtcGwtMyB2eC1wci0zIHZ4LXctMTAwXCJcbiAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVRhYiA9PSAnaW50ZXJuYWxfY29udHJvbHMnXCJcbiAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlVGFiUHJvZ3JhbSgnaW50ZXJuYWxfY29udHJvbHMnKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdCB2eC1kLWJsb2NrIHZ4LXctMTAwXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGFiZWwgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZC1ibG9jayB2eC1saC0zXCI+XG4gICAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZSB2eC1kLWZsZXggdngtanVzdGlmeS1iZXR3ZWVuIHZ4LWFsaWduLWNlbnRlclwiXG4gICAgICAgICAgICAgICAgICA+SU5URVJOQUwgQ09OVFJPTFM8L2xhYmVsXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInZ4LWZzLTEwIHZ4LWZ3LTYwMCB2eC1sYWJlbC10eHQgdngtbGgtNFwiXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cInByb2dyYW1EYXRhPy5TZWxlY3RlZEludGVybmFsQ29udHJvbHNQcm9ncmFtc0NvdW50ID4gMFwiXG4gICAgICAgICAgICAgICAgICA+e3sgcHJvZ3JhbURhdGE/LlNlbGVjdGVkSW50ZXJuYWxDb250cm9sc1Byb2dyYW1zQ291bnQgfX1cbiAgICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgICAgIHByb2dyYW1EYXRhPy5TZWxlY3RlZEludGVybmFsQ29udHJvbHNQcm9ncmFtc0NvdW50ID09IDFcbiAgICAgICAgICAgICAgICAgICAgICA/IFwiUHJvZ3JhbVwiXG4gICAgICAgICAgICAgICAgICAgICAgOiBcIlByb2dyYW1zXCJcbiAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICBzZWxlY3RlZDwvc3BhblxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicmlnaHQgdngtZC1mbGV4IHZ4LWp1c3RpZnktZW5kIHZ4LXctMTAwXCI+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICBjbGFzcz1cImNvdW50ZXIgdngtdHh0LXdoaXRlIHZ4LWZ3LTUwMCB2eC1kLWlubGluZS1ibG9jayB2eC10ZXh0LWNlbnRlclwiXG4gICAgICAgICAgICAgID57eyBwcm9ncmFtRGF0YT8uQWxsSW50ZXJuYWxDb250cm9sc1Byb2dyYW1zQ291bnQgfX08L3NwYW5cbiAgICAgICAgICAgID5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImZpbHRlci1jYXJkIHZ4LWJnLXdoaXRlIHZ4LWQtZmxleCB2eC1qdXN0aWZ5LWJldHdlZW4gdngtYWxpZ24tY2VudGVyIHZ4LXB0LTIgdngtcGItMiB2eC1wbC0zIHZ4LXByLTMgdngtdy0xMDBcIlxuICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlVGFiID09ICdvdGhlcnMnXCJcbiAgICAgICAgICAoY2xpY2spPVwiY2hhbmdlVGFiUHJvZ3JhbSgnb3RoZXJzJylcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQgdngtZC1ibG9jayB2eC13LTEwMFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtYmxvY2sgdngtbGgtM1wiPlxuICAgICAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2UgdngtZC1mbGV4IHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1hbGlnbi1jZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgPk9USEVSUzwvbGFiZWxcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwidngtZnMtMTAgdngtZnctNjAwIHZ4LWxhYmVsLXR4dCB2eC1saC00XCJcbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwicHJvZ3JhbURhdGE/LlNlbGVjdGVkT3RoZXJzUHJvZ3JhbXNDb3VudCA+IDBcIlxuICAgICAgICAgICAgICAgICAgPnt7IHByb2dyYW1EYXRhPy5TZWxlY3RlZE90aGVyc1Byb2dyYW1zQ291bnQgfX1cbiAgICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgICAgIHByb2dyYW1EYXRhPy5TZWxlY3RlZE90aGVyc1Byb2dyYW1zQ291bnQgPT0gMVxuICAgICAgICAgICAgICAgICAgICAgID8gXCJQcm9ncmFtXCJcbiAgICAgICAgICAgICAgICAgICAgICA6IFwiUHJvZ3JhbXNcIlxuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgIHNlbGVjdGVkPC9zcGFuXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyaWdodCB2eC1kLWZsZXggdngtanVzdGlmeS1lbmQgdngtdy0xMDBcIj5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgIGNsYXNzPVwiY291bnRlciB2eC10eHQtd2hpdGUgdngtZnctNTAwIHZ4LWQtaW5saW5lLWJsb2NrIHZ4LXRleHQtY2VudGVyXCJcbiAgICAgICAgICAgICAgPnt7IHByb2dyYW1EYXRhPy5BbGxPdGhlcnNQcm9ncmFtc0NvdW50IH19PC9zcGFuXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImZpbHRlci1jYXJkXCIgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVUYWIgPT0gJ3JlZ3VsYXRpb25zJ1wiIChjbGljayk9XCJjaGFuZ2VUYWJQcm9ncmFtKCdyZWd1bGF0aW9ucycpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWw+UkVHVUxBVElPTlM8L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgKm5nSWY9XCJwcm9ncmFtRGF0YT8uU2VsZWN0ZWRSZWd1bGF0aW9uUHJvZ3JhbXNDb3VudD4gMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7cHJvZ3JhbURhdGE/LlNlbGVjdGVkUmVndWxhdGlvblByb2dyYW1zQ291bnR9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7KHByb2dyYW1EYXRhPy5TZWxlY3RlZFJlZ3VsYXRpb25Qcm9ncmFtc0NvdW50PT0xKT8nUHJvZ3JhbSc6J1Byb2dyYW1zJ319IHNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvdW50ZXJcIj57e3Byb2dyYW1EYXRhPy5BbGxSZWd1bGF0aW9uUHJvZ3JhbXNDb3VudH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cbiAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiZmlsdGVyLWNhcmRcIiBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVRhYiA9PSAnc3RhbmRhcmRzJ1wiIChjbGljayk9XCJjaGFuZ2VUYWJQcm9ncmFtKCdzdGFuZGFyZHMnKVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsPlNUQU5EQVJEUzwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cCAqbmdJZj1cInByb2dyYW1EYXRhPy5TZWxlY3RlZFN0YW5kYXJkUHJvZ3JhbXNDb3VudD4gMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7cHJvZ3JhbURhdGE/LlNlbGVjdGVkU3RhbmRhcmRQcm9ncmFtc0NvdW50fX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyhwcm9ncmFtRGF0YT8uU2VsZWN0ZWRTdGFuZGFyZFByb2dyYW1zQ291bnQ9PTEpPydQcm9ncmFtJzonUHJvZ3JhbXMnfX0gc2VsZWN0ZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY291bnRlclwiPnt7cHJvZ3JhbURhdGE/LkFsbFN0YW5kYXJkUHJvZ3JhbXNDb3VudH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cbiAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiZmlsdGVyLWNhcmRcIiBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVRhYiA9PSAnaW50ZXJuYWxfY29udHJvbHMnXCIgKGNsaWNrKT1cImNoYW5nZVRhYlByb2dyYW0oJ2ludGVybmFsX2NvbnRyb2xzJylcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbD5JTlRFUk5BTCBDT05UUk9MUzwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cCAqbmdJZj1cInByb2dyYW1EYXRhPy5TZWxlY3RlZEludGVybmFsQ29udHJvbHNQcm9ncmFtc0NvdW50PiAwXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3twcm9ncmFtRGF0YT8uU2VsZWN0ZWRJbnRlcm5hbENvbnRyb2xzUHJvZ3JhbXNDb3VudH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3socHJvZ3JhbURhdGE/LlNlbGVjdGVkSW50ZXJuYWxDb250cm9sc1Byb2dyYW1zQ291bnQ9PTEpPydQcm9ncmFtJzonUHJvZ3JhbXMnfX0gc2VsZWN0ZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY291bnRlclwiPnt7cHJvZ3JhbURhdGE/LkFsbEludGVybmFsQ29udHJvbHNQcm9ncmFtc0NvdW50fX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9kaXY+IC0tPlxuICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJmaWx0ZXItY2FyZFwiIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlVGFiID09ICdvdGhlcnMnXCIgKGNsaWNrKT1cImNoYW5nZVRhYlByb2dyYW0oJ290aGVycycpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWw+T1RIRVJTPC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwICpuZ0lmPVwicHJvZ3JhbURhdGE/LlNlbGVjdGVkT3RoZXJzUHJvZ3JhbXNDb3VudD4gMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7cHJvZ3JhbURhdGE/LlNlbGVjdGVkT3RoZXJzUHJvZ3JhbXNDb3VudH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3socHJvZ3JhbURhdGE/LlNlbGVjdGVkT3RoZXJzUHJvZ3JhbXNDb3VudD09MSk/J1Byb2dyYW0nOidQcm9ncmFtcyd9fSBzZWxlY3RlZFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjb3VudGVyXCI+e3twcm9ncmFtRGF0YT8uQWxsT3RoZXJzUHJvZ3JhbXNDb3VudH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cbiAgICAgIDwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cImxpbmstcG9saWN5LXNlYXJjaCB2eC1tYi0yXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbnMgdngtZnMtMTJcIj4mI3hlOTBiOzwvaT5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwiU2VhcmNoIFByb2dyYW1zXCJcbiAgICAgICAgICAjc2VhcmNoUHJvZ3JhbVxuICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJzZWFyY2hCeSgkZXZlbnQudGFyZ2V0LnZhbHVlLCAncHJvZ3JhbXMnKVwiXG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDx2dWktcGFnaW5hdGlvblxuICAgICAgICAqbmdJZj1cIiFsb2FkZXIgJiYgcHJvZ3JhbURhdGEudG90YWxQYWdlcyA+IDFcIlxuICAgICAgICBbZnJvbV09XCJwcm9ncmFtRGF0YS5mcm9tXCJcbiAgICAgICAgW3RvXT1cInByb2dyYW1EYXRhLnRvXCJcbiAgICAgICAgW3RvdGFsXT1cInByb2dyYW1EYXRhLnRvdGFsUmVjb3Jkc1wiXG4gICAgICAgIFtzaG93UGFnZURldGFpbF09XCJ0cnVlXCJcbiAgICAgICAgW3RvdGFsUGFnZV09XCJwcm9ncmFtRGF0YS50b3RhbFBhZ2VzXCJcbiAgICAgICAgW2N1cnJlbnRQYWdlXT1cInByb2dyYW1EYXRhLmN1cnJlbnRQYWdlXCJcbiAgICAgICAgW3BhZ2VJblNpbmdsZVZpZXddPVwiNVwiXG4gICAgICAgIChwYWdlQ2hhbmdlZCk9XCJjaGFuZ2VQYWdlKCRldmVudCwgJ3Byb2dyYW1zJylcIlxuICAgICAgPlxuICAgICAgPC92dWktcGFnaW5hdGlvbj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJwcm9ncmFtLWxpc3RpbmctcGFydCB2eC1tYi00XCJcbiAgICAgICAgW2NsYXNzLndpdGgtcGFnaW5hdGlvbl09XCIhbG9hZGVyICYmIHByb2dyYW1EYXRhLnRvdGFsUGFnZXMgPiAxXCJcbiAgICAgID5cbiAgICAgICAgPGFwcC1uby1kYXRhXG4gICAgICAgICAgKm5nSWY9XCJwcm9ncmFtRGF0YT8uZGF0YT8ubGVuZ3RoID09IDAgJiYgIWxvYWRlclwiXG4gICAgICAgICAgW25vRGF0YUltYWdlXT1cIkFTU0VUUy5zZWFyY2hfZGF0YVwiXG4gICAgICAgICAgW25vRGF0YVRleHRdPVwiJ05vIGRhdGEgdG8gZGlzcGxheSdcIlxuICAgICAgICA+PC9hcHAtbm8tZGF0YT5cblxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJwcm9ncmFtLWxpc3RpbmctaXRlbVwiXG4gICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJcbiAgICAgICAgICAgIHNlbGVjdGVkVmFsdWVzPy5wcm9ncmFtPy5jYXRlZ29yeV9pZCA9PSBwcm9ncmFtPy5jYXRlZ29yeV9pZFxuICAgICAgICAgIFwiXG4gICAgICAgICAgKm5nRm9yPVwibGV0IHByb2dyYW0gb2YgcHJvZ3JhbURhdGEuZGF0YTsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cInRhYmxlLXJvdyBtYWluLWxpc3RcIlxuICAgICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJcbiAgICAgICAgICAgICAgc2VsZWN0ZWRWYWx1ZXM/LnByb2dyYW0/LmNhdGVnb3J5X2lkID09IHByb2dyYW0/LmNhdGVnb3J5X2lkXG4gICAgICAgICAgICBcIlxuICAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cInByb2dyYW0/LnByb2dyYW1SZXBvcnRFeGlzdHMgPT0gMFwiXG4gICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0UHJvZ3JhbSh0cnVlLCBwcm9ncmFtKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLWNvbHVtbiBzZXJpYWxcIj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwic3Itbm9cIlxuICAgICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cImkgKyBwcm9ncmFtRGF0YS5mcm9tXCJcbiAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b21cIlxuICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiXG4gICAgICAgICAgICAgICAgdHlwZT1cImJsYWNrXCJcbiAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IGkgKyBwcm9ncmFtRGF0YS5mcm9tIH19XG4gICAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICAgIDxhcHAtY3MtcmFkaW9cbiAgICAgICAgICAgICAgICBbbmFtZV09XCIncG9saWN5TmFtZSdcIlxuICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cIlxuICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRWYWx1ZXM/LnByb2dyYW0/LmNhdGVnb3J5X2lkID09IHByb2dyYW0/LmNhdGVnb3J5X2lkXG4gICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAoY2hlY2tlZEV2ZW50KT1cInNlbGVjdFByb2dyYW0oJGV2ZW50LnRhcmdldC5jaGVja2VkLCBwcm9ncmFtKVwiXG4gICAgICAgICAgICAgID48L2FwcC1jcy1yYWRpbz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLWNvbHVtbiBuYW1lXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYW1lLWlubmVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm5hbWUtd2l0aC1jb3VudFwiPlxuICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgYXBwVG9vbHRpcD1cInt7IHByb2dyYW0/Lm5hbWUgfCB0b29sdGlwVmFsaWRhdGlvbiB9fVwiXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbS1sZWZ0XCJcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJsYWNrXCJcbiAgICAgICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyBwcm9ncmFtPy5uYW1lIH19XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImxpbmstcG9saWN5LWZsb2F0aW5nLWJhciB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1wLTNcIlxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGluay1wb2xpY3ktZmxvYXRpbmctYmFyLWxlZnQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiY2hpcENvbnRhaW5lciB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LXBsLTIgdngtcHItMlwiXG4gICAgICAgICAgICAqbmdJZj1cInNlbGVjdGVkVmFsdWVzPy5wcm9ncmFtPy5uYW1lXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8aVxuICAgICAgICAgICAgICBjbGFzcz1cImljb25zIGNyb3NzIHZ4LWZzLTEwIHZ4LXBhcmFncmFwaC10eHQgdngtbXItMVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmUoJ3Byb2dyYW1zJywgJycpXCJcbiAgICAgICAgICAgICAgPiYjeGU5YWU7PC9pXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICBjbGFzcz1cImNoaXBOYW1lIHZ4LWZzLTExIHZ4LWxhYmVsLXR4dFwiXG4gICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cInNlbGVjdGVkVmFsdWVzPy5wcm9ncmFtPy5uYW1lXCJcbiAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tLWxlZnRcIlxuICAgICAgICAgICAgICBkZWxheT1cIjBcIlxuICAgICAgICAgICAgICB0eXBlPVwiYmxhY2tcIlxuICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJmYWxzZVwiXG4gICAgICAgICAgICAgID57eyBzZWxlY3RlZFZhbHVlcz8ucHJvZ3JhbT8ubmFtZSB9fTwvc3BhblxuICAgICAgICAgICAgPlxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY2hpcCB2eC1wbC0yIHZ4LXByLTIgdngtdHh0LWJsdWUgdngtZnMtMTIgdngtbGgtNiB2eC1tci0xXCIgKm5nSWY9XCJzZWxlY3RlZFZhbHVlcz8ucHJvZ3JhbT8ubmFtZVwiPjxpIGNsYXNzPVwiaWNvbnMgdngtbXItMVwiIChjbGljayk9XCJyZW1vdmUoJ3Byb2dyYW1zJywnJylcIj4mI3hlOWFlOzwvaT57e3NlbGVjdGVkVmFsdWVzPy5wcm9ncmFtPy5uYW1lfX08L2Rpdj4gLS0+XG4gICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwidngtZnMtMTIgdngtZnctNTAwIHZ4LXBhcmFncmFwaC10eHQgdngtbWwtMlwiPlBvbGljeSBzZWxlY3RlZDwvZGl2PiAtLT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJsaW5rLXBvbGljeS1mbG9hdGluZy1iYXItcmlnaHQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJnb0JhY2soKVwiXG4gICAgICAgICAgICBjbGFzcz1cImNhbmNlbC1idG4gdngtZnMtMTEgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZSB2eC1tLTAgdngtbXItMiB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktY2VudGVyIHZ4LXR4dC1yZWRcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIENBTkNFTFxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwhLS0gPGJ1dHRvbiAoY2xpY2spPVwic2F2ZUNoYW5nZXMoJ3Byb2dyYW1zJylcIiBbY2xhc3MuZGlzYWJsZWRdPVwiIXNlbGVjdGVkVmFsdWVzPy5wcm9ncmFtPy5uYW1lXCIgY2xhc3M9XCJ3aGl0ZS1idG4gdngtZnMtMTEgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZSB2eC1tLTAgdngtbXItMSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktY2VudGVyIHZ4LXR4dC1ibHVlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICBMSU5LIENBVEVHT1JJRVMgQU5EIFJFU1BPTlNJQklMSVRJRVM8L2J1dHRvbj4gLS0+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKGNsaWNrKT1cInNhdmVDaGFuZ2VzKCdwcm9ncmFtcycpXCJcbiAgICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhc2VsZWN0ZWRWYWx1ZXM/LnByb2dyYW0/Lm5hbWVcIlxuICAgICAgICAgICAgY2xhc3M9XCJuZXh0LWJ0biB2eC1mcy0xMSB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlIHZ4LW0tMCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktY2VudGVyIHZ4LXR4dC13aGl0ZVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgTGluayA8aSBjbGFzcz1cImljb25zIHZ4LW1sLTJcIj4mI3hlOTFlOzwvaT5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwicHJvZ3JhbS1saXN0aW5nLWNvbmZpcm1hdGlvblwiXG4gICAgICAqbmdJZj1cImRpc3BsYXlDb25maXJtYXRpb25NZXNzYWdlXCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29uZmlybWF0aW9uLXRvcFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaWNvbi1ibG9ja1wiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTMwOzwvaT48L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRleHRcIj5cbiAgICAgICAgICBZb3UgaGF2ZSBvcHRlZCB0byBsaW5rIGFsbCB0aGUgcmVzcG9uc2liaWxpdGllcyB1bmRlciB0aGUgc2VsZWN0ZWRcbiAgICAgICAgICBwcm9ncmFtIFwie3sgc2VsZWN0ZWRWYWx1ZXM/LnByb2dyYW0/Lm5hbWUgfX1cIiBhbmQgaXQncyBzdWItY2F0ZWdvcmllcy5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb25maXJtYXRpb24tYm90dG9tXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJtZXNzYWdlXCI+QXJlIHlvdSBzdXJlIHlvdSB3b3VsZCBsaWtlIHRvIHByb2NlZWQ/PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24tZ3JvdXBcIj5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwibm8tYnRuXCIgKGNsaWNrKT1cInNhdmVDaGFuZ2VzRnJvbVByb2dyYW0oZmFsc2UpXCI+XG4gICAgICAgICAgICBOT1xuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJ5ZXMtYnRuXCIgKGNsaWNrKT1cInNhdmVDaGFuZ2VzRnJvbVByb2dyYW0odHJ1ZSlcIj5cbiAgICAgICAgICAgIFlFU1xuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiY3VycmVudExpc3QgPT0gJ2NhdGVnb3JpZXMnXCI+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJsaW5rLXBvbGljeS1oZWFkIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuIHZ4LXBsLTQgdngtcHItNFwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cInZ4LWZzLTE0IHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cImdvQmFjaygnY2F0ZWdvcmllcycpXCJcbiAgICAgICAgICBjbGFzcz1cImJhY2stYnRuIHZ4LWZzLTE0IHZ4LWZ3LTUwMCB2eC1sYWJsZS10eHQgdngtcC0wIHZ4LW1yLTIgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiXG4gICAgICAgID5cbiAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTkxZDs8L2k+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICBTZWxlY3QgcHJvZ3JhbSBjYXRlZ29yaWVzIHRvIGxpbmsgd2l0aCB0aGlzIHBvbGljeVxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImxpbmstcG9saWN5LWJvZHlcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJsaW5rLXBvbGljeS1zZWFyY2ggdngtbWItMlwiPlxuICAgICAgICA8aSBjbGFzcz1cImljb25zIHZ4LWZzLTEyXCI+JiN4ZTkwYjs8L2k+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cIlNlYXJjaCBwcm9ncmFtIGNhdGVnb3JpZXNcIlxuICAgICAgICAgICNzZWFyY2hDYXRlZ29yeVxuICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJzZWFyY2hCeSgkZXZlbnQudGFyZ2V0LnZhbHVlLCAnY2F0ZWdvcmllcycpXCJcbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuICAgICAgPHZ1aS1wYWdpbmF0aW9uXG4gICAgICAgICpuZ0lmPVwiIWxvYWRlciAmJiBzdWJDYXRlZ29yaWVzTGlzdC50b3RhbFBhZ2UgPiAxXCJcbiAgICAgICAgW2Zyb21dPVwic3ViQ2F0ZWdvcmllc0xpc3QuZnJvbVwiXG4gICAgICAgIFt0b109XCJzdWJDYXRlZ29yaWVzTGlzdC50b1wiXG4gICAgICAgIFt0b3RhbF09XCJzdWJDYXRlZ29yaWVzTGlzdC50b3RhbFJlY29yZHNcIlxuICAgICAgICBbc2hvd1BhZ2VEZXRhaWxdPVwidHJ1ZVwiXG4gICAgICAgIFt0b3RhbFBhZ2VdPVwic3ViQ2F0ZWdvcmllc0xpc3QudG90YWxQYWdlXCJcbiAgICAgICAgW2N1cnJlbnRQYWdlXT1cInN1YkNhdGVnb3JpZXNMaXN0LmN1cnJlbnRQYWdlXCJcbiAgICAgICAgW3BhZ2VJblNpbmdsZVZpZXddPVwiNVwiXG4gICAgICAgIChwYWdlQ2hhbmdlZCk9XCJjaGFuZ2VQYWdlKCRldmVudCwgJ3Byb2dyYW1zJylcIlxuICAgICAgPlxuICAgICAgPC92dWktcGFnaW5hdGlvbj5cblxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImxpbmstcG9saWN5LXRhYmxlIHZ4LW1iLTRcIlxuICAgICAgICBbY2xhc3Mud2l0aC1wYWdpbmF0aW9uXT1cIiFsb2FkZXIgJiYgc3ViQ2F0ZWdvcmllc0xpc3QudG90YWxQYWdlID4gMVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbG9hZGVyICYmIHN1YkNhdGVnb3JpZXNMaXN0LmRhdGE/Lmxlbmd0aCA+IDBcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtaGVhZGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcm93XCI+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cInRhYmxlLWNvbHVtbiB2eC1mcy0xMCB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LWxoLTUgdngtdHQtdXBwZXJjYXNlIHZ4LXBsLTEgdngtcHItMSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHNlcmlhbFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAjXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gdngtZnMtMTAgdngtZnctNTAwIHZ4LWxhYmVsLXR4dCB2eC1saC01IHZ4LXR0LXVwcGVyY2FzZSB2eC1wbC0xIHZ4LXByLTEgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciBjYXRlZ29yeS1uYW1lXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIENBVEVHT1JJRVNcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtYm9keVwiPlxuICAgICAgICAgICAgPCEtLSB3aGVuIGNoZWNrYm94IHdhcyBjaGVja2VkIHRoZW4gYWN0aXZlIGNsYXNzIHdhcyB0cnVlIC0tPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cInRhYmxlLXJvd1wiXG4gICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiXG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRJZHMuY2F0ZWdvcmllcy5pbmNsdWRlcyhjYXRlZ29yeS5jYXRlZ29yeV9pZClcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNhdGVnb3J5IG9mIHN1YkNhdGVnb3JpZXNMaXN0LmRhdGE7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gdngtcGwtMSB2eC1wci0xIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgc2VyaWFsXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwic3Itbm9cIlxuICAgICAgICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwiaSArIHN1YkNhdGVnb3JpZXNMaXN0LmZyb21cIlxuICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcbiAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYmxhY2tcIlxuICAgICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgaSArIHN1YkNhdGVnb3JpZXNMaXN0LmZyb20gfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8dnVpLWNoZWNrYm94XG4gICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRJZHMuY2F0ZWdvcmllcy5pbmNsdWRlcyhjYXRlZ29yeS5jYXRlZ29yeV9pZClcbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInNlbGVjdENhdGVnb3J5KCRldmVudC50YXJnZXQuY2hlY2tlZCwgY2F0ZWdvcnkpXCJcbiAgICAgICAgICAgICAgICA+PC92dWktY2hlY2tib3g+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gdngtcGwtMSB2eC1wci0xIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgY2F0ZWdvcnktbmFtZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZC1ibG9jayB2eC13LTEwMFwiPlxuICAgICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInZhbHVlIHZ4LWZzLTEyIHZ4LWxhYmVsLXR4dFwiXG4gICAgICAgICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cImNhdGVnb3J5Py5pdGVtX25hbWUgfCB0b29sdGlwVmFsaWRhdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbS1sZWZ0XCJcbiAgICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJsYWNrXCJcbiAgICAgICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7eyBjYXRlZ29yeT8uaXRlbV9uYW1lIH19XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPGFwcC1uby1kYXRhXG4gICAgICAgICAgKm5nSWY9XCIhbG9hZGVyICYmIHN1YkNhdGVnb3JpZXNMaXN0LmRhdGE/Lmxlbmd0aCA9PSAwXCJcbiAgICAgICAgICBbbm9EYXRhSW1hZ2VdPVwiQVNTRVRTLnNlYXJjaF9kYXRhXCJcbiAgICAgICAgICBbbm9EYXRhVGV4dF09XCInTm8gZGF0YSB0byBkaXNwbGF5J1wiXG4gICAgICAgID48L2FwcC1uby1kYXRhPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJsaW5rLXBvbGljeS1mbG9hdGluZy1iYXIgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWJldHdlZW4gdngtcC0zXCJcbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxpbmstcG9saWN5LWZsb2F0aW5nLWJhci1sZWZ0IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImNoaXBDb250YWluZXIgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1wbC0yIHZ4LXByLTJcIlxuICAgICAgICAgICAgKm5nSWY9XCJzZWxlY3RlZFZhbHVlcz8uY2F0ZWdvcmllcz8ubGVuZ3RoID4gMFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGlcbiAgICAgICAgICAgICAgY2xhc3M9XCJpY29ucyBjcm9zcyB2eC1mcy0xMCB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1yLTFcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwicmVtb3ZlKCdjYXRlZ29yaWVzJywgc2VsZWN0ZWRWYWx1ZXM/LmNhdGVnb3JpZXNbMF0pXCJcbiAgICAgICAgICAgICAgPiYjeGU5YWU7PC9pXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICBjbGFzcz1cImNoaXBOYW1lIHZ4LWZzLTExIHZ4LWxhYmVsLXR4dFwiXG4gICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cInNlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzWzBdPy5pdGVtX25hbWVcIlxuICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiXG4gICAgICAgICAgICAgIGRlbGF5PVwiMFwiXG4gICAgICAgICAgICAgIHR5cGU9XCJibGFja1wiXG4gICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgPnt7IHNlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzWzBdPy5pdGVtX25hbWUgfX08L3NwYW5cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3M9XCJjb3VudEJ0biB2eC1mcy05IHZ4LWZ3LTUwMCB2eC10eHQtd2hpdGUgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlciB2eC1saC00XCJcbiAgICAgICAgICAgICAgYXBwUG9wb3ZlclxuICAgICAgICAgICAgICAoY2xpY2spPVwicHJvZ3JhbUNvdW50LnBvcG92ZXIoKVwiXG4gICAgICAgICAgICAgIHBsYWNlbWVudD1cImxlZnRcIlxuICAgICAgICAgICAgICAqbmdJZj1cInNlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzPy5sZW5ndGggPiAxXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgK3t7IHNlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzPy5zbGljZSgxKS5sZW5ndGggfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICpuZ0lmPVwic2VsZWN0ZWRWYWx1ZXM/LmNhdGVnb3JpZXM/LnNsaWNlKDEpLmxlbmd0aFwiXG4gICAgICAgICAgICBjbGFzcz1cInZ4LWZzLTEyIHZ4LWZ3LTUwMCB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1sLTJcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgIHNlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzPy5zbGljZSgxKS5sZW5ndGggPT09IDFcbiAgICAgICAgICAgICAgICA/IFwiUHJvZ3JhbSBjYXRlZ29yeVxuICAgICAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRcIlxuICAgICAgICAgICAgICAgIDogXCJQcm9ncmFtIGNhdGVnb3JpZXMgc2VsZWN0ZWRcIlxuICAgICAgICAgICAgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8YXBwLXBvcG92ZXIgI3Byb2dyYW1Db3VudD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Zi1hY3Rpb24tbGlzdFwiPlxuICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxuICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgICAgICAgIGxldCBzZWxlY3RlZENhdGVnb3J5IG9mIHNlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzPy5zbGljZSgxKVxuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cbiAgICAgICAgICAgICAgICAgICAgPGlcbiAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImljb25zIGNyb3NzLWJ0biB2eC1mcy0xMiB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1yLTJcIlxuICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmUoJ2NhdGVnb3JpZXMnLCBzZWxlY3RlZENhdGVnb3J5KVwiXG4gICAgICAgICAgICAgICAgICAgICAgPiYjeGU5YWU7PC9pXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPnt7IHNlbGVjdGVkQ2F0ZWdvcnk/Lml0ZW1fbmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgIDwvdWw+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxuXG4gICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiY2hpcCB2eC1wbC0yIHZ4LXByLTIgdngtdHh0LWJsdWUgdngtZnMtMTIgdngtbGgtNiB2eC1tci0xXCIgKm5nSWY9XCJzZWxlY3RlZFZhbHVlcy5jYXRlZ29yaWVzLmxlbmd0aD4wXCI+PGkgKGNsaWNrKT1cInJlbW92ZSgnY2F0ZWdvcmllcycsc2VsZWN0ZWRWYWx1ZXM/LmNhdGVnb3JpZXNbMF0pXCIgY2xhc3M9XCJpY29ucyB2eC1tci0xXCI+JiN4ZTlhZTs8L2k+IHt7c2VsZWN0ZWRWYWx1ZXM/LmNhdGVnb3JpZXNbMF0/Lml0ZW1fbmFtZX19PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzZWxlY3RlZFZhbHVlcy5jYXRlZ29yaWVzLmxlbmd0aD4xXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiY291bnQgdngtZnMtMTIgdngtZnctNTAwIHZ4LXR4dC13aGl0ZSB2eC1wLTAgdngtcGwtMSB2eC1wci0xIHZ4LW0tMCB2eC1tbC0xIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1jZW50ZXJcIiB2Y1BvcG92ZXIgKGNsaWNrKT1cInByb2dyYW1Db3VudC5wb3BvdmVyKClcIiBwb3NpdGlvbj1cImxlZnRcIj4re3tzZWxlY3RlZFZhbHVlcz8uY2F0ZWdvcmllcz8uc2xpY2UoMSkubGVuZ3RofX08L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xMiB2eC1mdy01MDAgdngtcGFyYWdyYXBoLXR4dCB2eC1tbC0yXCI+e3soc2VsZWN0ZWRWYWx1ZXM/LmNhdGVnb3JpZXM/LnNsaWNlKDEpPy5sZW5ndGg9PTEpPydDYXRlZ29yeSBzZWxlY3RlZCc6J0NhdGVnb3JpZXMgc2VsZWN0ZWQnfX08L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjcHJvZ3JhbUNvdW50PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Zi1hY3Rpb24tbGlzdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8dWwgY2xhc3M9XCJhY3Rpb24taXRlbVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBzZWxlY3RlZENhdGVnb3J5IG9mIHNlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzPy5zbGljZSgxKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zIGNyb3NzLWJ0biB2eC1mcy0xMiB2eC10eHQtYmx1ZSB2eC1tci0yXCIgKGNsaWNrKT1cInJlbW92ZSgnY2F0ZWdvcmllcycsc2VsZWN0ZWRDYXRlZ29yeSlcIj4mI3hlOWFlOzwvaT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPnt7c2VsZWN0ZWRDYXRlZ29yeT8uaXRlbV9uYW1lfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9hcHAtcG9wb3Zlcj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+IC0tPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxpbmstcG9saWN5LWZsb2F0aW5nLWJhci1yaWdodCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKGNsaWNrKT1cImdvQmFjaygnY2F0ZWdvcmllcycpXCJcbiAgICAgICAgICAgIGNsYXNzPVwiY2FuY2VsLWJ0biB2eC1mcy0xMSB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1jZW50ZXIgdngtdHh0LXJlZFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgQ0FOQ0VMXG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKGNsaWNrKT1cInNhdmVDaGFuZ2VzKCdjYXRlZ29yaWVzJylcIlxuICAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiFzZWxlY3RlZFZhbHVlcz8uY2F0ZWdvcmllcz8ubGVuZ3RoXCJcbiAgICAgICAgICAgIGNsYXNzPVwibmV4dC1idG4gdngtZnMtMTEgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktY2VudGVyIHZ4LXR4dC13aGl0ZSB2eC1tbC01XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICBBZGQgPGkgY2xhc3M9XCJpY29ucyB2eC1tbC0yXCI+JiN4ZTkxZTs8L2k+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXJyZW50TGlzdCA9PSAncmVzcG9uc2liaWxpdGllcydcIj5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImxpbmstcG9saWN5LWhlYWQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWJldHdlZW4gdngtcGwtNCB2eC1wci00XCJcbiAgICA+XG4gICAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTQgdngtZnctNTAwIHZ4LWxhYmVsLXR4dCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAoY2xpY2spPVwiZ29CYWNrKCdyZXNwb25zaWJpbGl0aWVzJylcIlxuICAgICAgICAgIGNsYXNzPVwiYmFjay1idG4gdngtZnMtMTQgdngtZnctNTAwIHZ4LWxhYmxlLXR4dCB2eC1wLTAgdngtbXItMiB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTFkOzwvaT5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIFNlbGVjdCBSZXNwb25zaWJpbGl0aWVzIHRvIGxpbmsgd2l0aCB0aGlzIHBvbGljeVxuICAgICAgPC9kaXY+XG4gICAgICA8IS0tIDxkaXYgY2xhc3M9XCJwYWdlLXRpdGxlIHZ4LWZzLTE0IHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHRcIj5TZWxlY3QgUmVzcG9uc2liaWxpdGllcyB0byBsaW5rIHdpdGggdGhpcyBwb2xpY3kgPC9kaXY+IC0tPlxuXG4gICAgICA8IS0tIDxidXR0b24gIChjbGljayk9XCJnb0JhY2soJ3Jlc3BvbnNpYmlsaXRpZXMnKVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJiYWNrLWJ0biB2eC1mcy0xNCB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1wLTAgdngtbS0wIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj48aVxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImljb25zIHZ4LW1yLTFcIj4mI3hlOTFkOzwvaT4gQkFDSzwvYnV0dG9uPiAtLT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibGluay1wb2xpY3ktYm9keVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImxpbmstcG9saWN5LXNlYXJjaCB2eC1tYi0yXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbnMgdngtZnMtMTJcIj4mI3hlOTBiOzwvaT5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICAgIHBsYWNlaG9sZGVyPVwiU2VhcmNoIFJlc3BvbnNpYmlsaXRpZXNcIlxuICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJzZWFyY2hCeSgkZXZlbnQudGFyZ2V0LnZhbHVlLCAncmVzcG9uc2liaWxpdGllcycpXCJcbiAgICAgICAgLz5cbiAgICAgIDwvZGl2PlxuICAgICAgPHZ1aS1wYWdpbmF0aW9uXG4gICAgICAgICpuZ0lmPVwiIWxvYWRlciAmJiByZXNwb25zaWJpbGl0aWVzTGlzdC50b3RhbFBhZ2UgPiAxXCJcbiAgICAgICAgW2Zyb21dPVwicmVzcG9uc2liaWxpdGllc0xpc3QuZnJvbVwiXG4gICAgICAgIFt0b109XCJyZXNwb25zaWJpbGl0aWVzTGlzdC50b1wiXG4gICAgICAgIFt0b3RhbF09XCJyZXNwb25zaWJpbGl0aWVzTGlzdC50b3RhbFJlY29yZHNcIlxuICAgICAgICBbc2hvd1BhZ2VEZXRhaWxdPVwidHJ1ZVwiXG4gICAgICAgIFt0b3RhbFBhZ2VdPVwicmVzcG9uc2liaWxpdGllc0xpc3QudG90YWxQYWdlXCJcbiAgICAgICAgW2N1cnJlbnRQYWdlXT1cInJlc3BvbnNpYmlsaXRpZXNMaXN0LmN1cnJlbnRQYWdlXCJcbiAgICAgICAgW3BhZ2VJblNpbmdsZVZpZXddPVwiNVwiXG4gICAgICAgIChwYWdlQ2hhbmdlZCk9XCJjaGFuZ2VQYWdlKCRldmVudCwgJ3Jlc3BvbnNpYmlsaXRpZXMnKVwiXG4gICAgICA+XG4gICAgICA8L3Z1aS1wYWdpbmF0aW9uPlxuXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwibGluay1wb2xpY3ktdGFibGUgdngtbWItNFwiXG4gICAgICAgIFtjbGFzcy53aXRoLXBhZ2luYXRpb25dPVwiIWxvYWRlciAmJiBzdWJDYXRlZ29yaWVzTGlzdC50b3RhbFBhZ2UgPiAxXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsb2FkZXIgJiYgcmVzcG9uc2liaWxpdGllc0xpc3QuZGF0YT8ubGVuZ3RoID4gMFwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1oZWFkZXJcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1yb3dcIj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGFibGUtY29sdW1uIHZ4LWZzLTEwIHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHQgdngtbGgtNSB2eC10dC11cHBlcmNhc2UgdngtcGwtMSB2eC1wci0xIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgc2VyaWFsXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICNcbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cInRhYmxlLWNvbHVtbiB2eC1mcy0xMCB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LWxoLTUgdngtdHQtdXBwZXJjYXNlIHZ4LXBsLTEgdngtcHItMSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIGNhdGVnb3J5LW5hbWVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgUkVTUE9OU0lCTElUSUVTXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLWJvZHlcIj5cbiAgICAgICAgICAgIDwhLS0gd2hlbiBjaGVja2JveCB3YXMgY2hlY2tlZCB0aGVuIGFjdGl2ZSBjbGFzcyB3YXMgdHJ1ZSAtLT5cblxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cInRhYmxlLXJvd1wiXG4gICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiXG4gICAgICAgICAgICAgICAgc2VsZWN0ZWRJZHMucmVzcG9uc2liaWxpdGllcy5pbmNsdWRlcyhyZXNwb25zaWJpbGl0eS5SZXBvcnRJZClcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgICAgbGV0IHJlc3BvbnNpYmlsaXR5IG9mIHJlc3BvbnNpYmlsaXRpZXNMaXN0LmRhdGE7XG4gICAgICAgICAgICAgICAgbGV0IGkgPSBpbmRleFxuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gdngtcGwtMSB2eC1wci0xIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgc2VyaWFsXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwic3Itbm9cIlxuICAgICAgICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwiaSArIHJlc3BvbnNpYmlsaXRpZXNMaXN0LmZyb21cIlxuICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcbiAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYmxhY2tcIlxuICAgICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAge3sgaSArIHJlc3BvbnNpYmlsaXRpZXNMaXN0LmZyb20gfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8dnVpLWNoZWNrYm94XG4gICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0ZWRJZHMucmVzcG9uc2liaWxpdGllcy5pbmNsdWRlcyhcbiAgICAgICAgICAgICAgICAgICAgICByZXNwb25zaWJpbGl0eS5SZXBvcnRJZFxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0UmVzcG9uc2liaWxpdHkoJGV2ZW50LnRhcmdldC5jaGVja2VkLCByZXNwb25zaWJpbGl0eSlcbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDwvdnVpLWNoZWNrYm94PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGFibGUtY29sdW1uIHZ4LXBsLTEgdngtcHItMSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIGNhdGVnb3J5LW5hbWVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2YWx1ZSB2eC1mcy0xMiB2eC1sYWJlbC10eHRcIlxuICAgICAgICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwiXG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNpYmlsaXR5Py5jb250cm9sX2lkICsgcmVzcG9uc2liaWxpdHk/LlJlcG9ydE5hbWVcbiAgICAgICAgICAgICAgICAgICAgICB8IHRvb2x0aXBWYWxpZGF0aW9uXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tLWxlZnRcIlxuICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJibGFja1wiXG4gICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xMCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlIHZ4LW1yLTFcIj57e1xuICAgICAgICAgICAgICAgICAgICByZXNwb25zaWJpbGl0eT8uY29udHJvbF9pZFxuICAgICAgICAgICAgICAgICAgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICB7eyByZXNwb25zaWJpbGl0eT8uUmVwb3J0TmFtZSB9fVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwidGFibGUtY29sdW1uIHZ4LXBsLTEgdngtcHItMSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIGNhdGVnb3J5LW5hbWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2YWx1ZSB2eC1mcy0xMiB2eC1sYWJlbC10eHRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cIidbQ0lELTIwMjEwMDA1XSBBLjguMS4zIEFjY2VwdGFibGUgVXNlIG9mIEFzc2V0cydcIiBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCIgdHlwZT1cImJsYWNrXCIgW3Rvb2x0aXBNYW5kYXRvcnldPVwiZmFsc2VcIj48c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInZ4LWZzLTEwIHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2UgdngtbXItMVwiPltDSUQtMjAyMTAwMDVdPC9zcGFuPiBBLjguMS4zXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQWNjZXB0YWJsZSBVc2Ugb2YgQXNzZXRzPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8YXBwLW5vLWRhdGFcbiAgICAgICAgICAqbmdJZj1cIiFsb2FkZXIgJiYgcmVzcG9uc2liaWxpdGllc0xpc3QuZGF0YT8ubGVuZ3RoID09IDBcIlxuICAgICAgICAgIFtub0RhdGFJbWFnZV09XCJBU1NFVFMuc2VhcmNoX2RhdGFcIlxuICAgICAgICAgIFtub0RhdGFUZXh0XT1cIidObyBkYXRhIHRvIGRpc3BsYXknXCJcbiAgICAgICAgPjwvYXBwLW5vLWRhdGE+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJsaW5rLXBvbGljeS1mbG9hdGluZy1iYXIgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWJldHdlZW4gdngtcC0zIHZ4LW10LTFcIlxuICAgICAgPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGluay1wb2xpY3ktZmxvYXRpbmctYmFyLWxlZnQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiPlxuICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgIGNsYXNzPVwiY2hpcENvbnRhaW5lciB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LXBsLTIgdngtcHItMlwiXG4gICAgICAgICAgICAqbmdJZj1cInNlbGVjdGVkVmFsdWVzLnJlc3BvbnNpYmlsaXRpZXMubGVuZ3RoID4gMFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGlcbiAgICAgICAgICAgICAgY2xhc3M9XCJpY29ucyBjcm9zcyB2eC1mcy0xMCB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1yLTFcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiXG4gICAgICAgICAgICAgICAgcmVtb3ZlKCdyZXNwb25zaWJpbGl0aWVzJywgc2VsZWN0ZWRWYWx1ZXM/LnJlc3BvbnNpYmlsaXRpZXNbMF0pXG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgID4mI3hlOWFlOzwvaVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJjaGlwTmFtZSB2eC1mcy0xMSB2eC1sYWJlbC10eHRcIlxuICAgICAgICAgICAgICBbYXBwVG9vbHRpcF09XCJzZWxlY3RlZFZhbHVlcz8ucmVzcG9uc2liaWxpdGllc1swXT8uUmVwb3J0TmFtZVwiXG4gICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbS1sZWZ0XCJcbiAgICAgICAgICAgICAgZGVsYXk9XCIwXCJcbiAgICAgICAgICAgICAgdHlwZT1cImJsYWNrXCJcbiAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwiZmFsc2VcIlxuICAgICAgICAgICAgICA+e3sgc2VsZWN0ZWRWYWx1ZXM/LnJlc3BvbnNpYmlsaXRpZXNbMF0/LlJlcG9ydE5hbWUgfX08L3NwYW5cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgY2xhc3M9XCJjb3VudEJ0biB2eC1mcy05IHZ4LWZ3LTUwMCB2eC10eHQtd2hpdGUgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlciB2eC1saC00XCJcbiAgICAgICAgICAgICAgYXBwUG9wb3ZlclxuICAgICAgICAgICAgICAoY2xpY2spPVwicmVzcG9uc2liaWxpdGllc1BvcG92ZXIucG9wb3ZlcigpXCJcbiAgICAgICAgICAgICAgcGxhY2VtZW50PVwibGVmdFwiXG4gICAgICAgICAgICAgICpuZ0lmPVwic2VsZWN0ZWRWYWx1ZXMucmVzcG9uc2liaWxpdGllcy5sZW5ndGggPiAxXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgK3t7IHNlbGVjdGVkVmFsdWVzPy5yZXNwb25zaWJpbGl0aWVzPy5zbGljZSgxKS5sZW5ndGggfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPGFwcC1wb3BvdmVyICNyZXNwb25zaWJpbGl0aWVzUG9wb3Zlcj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndmLWFjdGlvbi1saXN0XCI+XG4gICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICAqbmdGb3I9XCJcbiAgICAgICAgICAgICAgICAgICAgICBsZXQgc2VsZWN0ZWRyZXMgb2Ygc2VsZWN0ZWRWYWx1ZXM/LnJlc3BvbnNpYmlsaXRpZXM/LnNsaWNlKFxuICAgICAgICAgICAgICAgICAgICAgICAgMVxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XG4gICAgICAgICAgICAgICAgICAgICAgPGlcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiaWNvbnMgY3Jvc3MtYnRuIHZ4LWZzLTEyIHZ4LXBhcmFncmFwaC10eHQgdngtbXItMlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwicmVtb3ZlKCdyZXNwb25zaWJpbGl0aWVzJywgc2VsZWN0ZWRyZXMpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID4mI3hlOWFlOzwvaVxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCI+e3sgc2VsZWN0ZWRyZXM/LlJlcG9ydE5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGluay1wb2xpY3ktZmxvYXRpbmctYmFyLXJpZ2h0IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAoY2xpY2spPVwiZ29CYWNrKCdyZXNwb25zaWJpbGl0aWVzJylcIlxuICAgICAgICAgICAgY2xhc3M9XCJjYW5jZWwtYnRuIHZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2UgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlciB2eC10eHQtcmVkXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICBDQU5DRUxcbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAoY2xpY2spPVwic2F2ZUNoYW5nZXMoJ3Jlc3BvbnNpYmlsaXRpZXMnKVwiXG4gICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIXNlbGVjdGVkVmFsdWVzPy5yZXNwb25zaWJpbGl0aWVzPy5sZW5ndGhcIlxuICAgICAgICAgICAgY2xhc3M9XCJuZXh0LWJ0biB2eC1mcy0xMSB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1jZW50ZXIgdngtdHh0LXdoaXRlIHZ4LW1sLTVcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIEFERCA8aSBjbGFzcz1cImljb25zIHZ4LW1sLTJcIj4mI3hlOTFlOzwvaT5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxhcHAtbG9hZGVyLWlubGluZSAqbmdJZj1cImxvYWRlciB8fCBzdWJtaXNzaW9uTG9hZGVyXCI+PC9hcHAtbG9hZGVyLWlubGluZT5cbjwvZGl2PlxuIl19
471
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGluay1wcm9ncmFtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3Z4LXdvcmtmbG93LWVuZ2luZS9zcmMvbGliL3NoYXJlZENvbXBvbmVudHMvbGluay1wcm9ncmFtL2xpbmstcHJvZ3JhbS9saW5rLXByb2dyYW0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvc2hhcmVkQ29tcG9uZW50cy9saW5rLXByb2dyYW0vbGluay1wcm9ncmFtL2xpbmstcHJvZ3JhbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUNMLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUVMLE1BQU0sRUFDTixTQUFTLEdBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFNM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFDQUFxQyxDQUFDOzs7Ozs7Ozs7Ozs7OztBQU83RCxNQUFNLE9BQU8sb0JBQW9CO0lBeUQvQixJQUE4QixrQkFBa0IsQ0FBQyxPQUFZO1FBQzNELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUk7WUFDM0QsT0FBTyxFQUFFLEVBQUU7WUFDWCxVQUFVLEVBQUUsRUFBRTtZQUNkLGdCQUFnQixFQUFFLEVBQUU7U0FDckIsQ0FBQztJQUNKLENBQUM7SUF3Q0QsU0FBUztJQUVULFlBQ1UsY0FBOEIsRUFDOUIsUUFBeUI7UUFEekIsbUJBQWMsR0FBZCxj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QUFNO2dCQUNHLHFCQUFxQjtzQkFBOUIsTUFBTTtnQkFPRyxJQUFJO3NCQUFiLE1BQU07Z0JBQ0csS0FBSztzQkFBZCxNQUFNO2dCQUVHLHFCQUFxQjtzQkFBOUIsTUFBTTtnQkFHRSxZQUFZO3NCQUFwQixLQUFLO2dCQUN3QixrQkFBa0I7c0JBQS9DLEtBQUs7dUJBQUMsaUJBQWlCO2dCQU9mLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBR0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNzQixhQUFhO3NCQUF4QyxTQUFTO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwUGFyYW1zIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgUmVzdEFwaVNlcnZpY2UgfSBmcm9tICcuLi9yZXN0YXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgU25hY2tCYXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vdWkta2l0L3NuYWNrLWJhci9zbmFjay1iYXIuc2VydmljZSc7XG5pbXBvcnQgeyBTZWxlY3RlZElkcywgU2VsZWN0ZWRWYWx1ZXMgfSBmcm9tICcuLi9wcm9ncmFtLWludGVncmF0aW9uLWludGVyZmFjZXMnO1xuaW1wb3J0IHsgcHJvZ3JhbUxpc3QgfSBmcm9tICcuL3Byb2dyYW0tbGlzdC1tb2RlbCc7XG5pbXBvcnQgeyBBU1NFVFMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYXNzZXRzLmNvbnN0YW50cyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZjLWxpbmstcHJvZ3JhbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9saW5rLXByb2dyYW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9saW5rLXByb2dyYW0uY29tcG9uZW50Lmxlc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgTGlua1Byb2dyYW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBhbmltYXRpb24gPSBmYWxzZTtcbiAgQVNTRVRTID0gQVNTRVRTO1xuICBzdWJDYXRlZ29yaWVzTGlzdCA9IHtcbiAgICBmcm9tOiAxLFxuICAgIHRvOiAwLFxuICAgIGN1cnJlbnRQYWdlOiAxLFxuICAgIHRvdGFsUGFnZTogMCxcbiAgICB0b3RhbFJlY29yZHM6IDAsXG4gICAgZGF0YTogW10sXG4gIH07XG4gIHJlc3BvbnNpYmlsaXRpZXNMaXN0ID0ge1xuICAgIGZyb206IDEsXG4gICAgdG86IDAsXG4gICAgY3VycmVudFBhZ2U6IDEsXG4gICAgdG90YWxQYWdlOiAwLFxuICAgIHRvdGFsUmVjb3JkczogMCxcbiAgICBkYXRhOiBbXSxcbiAgfTtcblxuICBzZWFyY2hUZXh0ID0ge1xuICAgIHByb2dyYW06ICcnLFxuICAgIGNhdGVnb3J5OiAnJyxcbiAgICByZXNwb25zaWJpbGl0eTogJycsXG4gIH07XG5cbiAgc2VsZWN0ZWRWYWx1ZXM6IFNlbGVjdGVkVmFsdWVzID0ge1xuICAgIHByb2dyYW06IHt9LFxuICAgIGNhdGVnb3JpZXM6IFtdLFxuICAgIHJlc3BvbnNpYmlsaXRpZXM6IFtdLFxuICB9O1xuICBzZWxlY3RlZElkczogU2VsZWN0ZWRJZHMgPSB7XG4gICAgY2F0ZWdvcmllczogW10sXG4gICAgcmVzcG9uc2liaWxpdGllczogW10sXG4gIH07XG5cbiAgc3VibWlzc2lvbkxvYWRlciA9IGZhbHNlO1xuICBjdXJyZW50Q2F0ZWdvcnk6IGFueSA9IHt9O1xuXG4gIEBJbnB1dCgpIHBvbGljeTogYW55ID0ge307XG4gIEBJbnB1dCgpIGN1cnJlbnRUYWIhOiBhbnk7XG4gIEBJbnB1dCgpIG1vZGU6IHN0cmluZyA9ICcnO1xuICBAT3V0cHV0KCkgY2hhbmdlVGFiID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgdXBkYXRlZFByb2dyYW1EZXRhaWxzID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGN1cnJlbnRCdXNpbmVzc0N5Y2xlITogYW55O1xuICBsb2FkZXIgPSBmYWxzZTtcbiAgcHJvZ3JhbVNvcnRCeTogJ2Rlc2MnIHwgJ2FzYycgPSAnZGVzYyc7XG4gIGN1cnJlbnRMaXN0OiAncHJvZ3JhbXMnIHwgJ2NhdGVnb3JpZXMnIHwgJ3Jlc3BvbnNpYmlsaXRpZXMnID0gJ3Byb2dyYW1zJztcbiAgdW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xuICBAT3V0cHV0KCkgc2F2ZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIEBPdXRwdXQoKSByZWZyZXNoTGlua2VkUG9saWNpZXMgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIC8vcHJvZ3JhbVxuICBzdWJMaXN0ID0gZmFsc2U7XG4gIEBJbnB1dCgpIHByb2dyYW1zTGlzdDogYW55O1xuICBASW5wdXQoJ3NlbGVjdGVkUHJvZ3JhbScpIHNldCBnZXRTZWxlY3RlZFByb2dyYW0ocHJvZ3JhbTogYW55KSB7XG4gICAgdGhpcy5zZWxlY3RlZFZhbHVlcyA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkocHJvZ3JhbSkpID8/IHtcbiAgICAgIHByb2dyYW06IHt9LFxuICAgICAgY2F0ZWdvcmllczogW10sXG4gICAgICByZXNwb25zaWJpbGl0aWVzOiBbXSxcbiAgICB9O1xuICB9XG4gIEBJbnB1dCgpIHNlbGVjdGVkQ2F0ZWdvcmllczogYW55W10gPSBbXTtcbiAgQElucHV0KCkgc2VsZWN0ZWRMaW5rUHJvZ3JhbSA9IHtcbiAgICBfaWQ6ICcnLFxuICB9O1xuICBASW5wdXQoKSBoaWRlUHJvZ3JhbXNMaXN0ITogYW55O1xuICBAVmlld0NoaWxkKCdzZWFyY2hQcm9ncmFtJykgc2VhcmNoUHJvZ3JhbSE6IGFueTtcblxuICBwcmV2aW91c1NlbGVjdGVkVmFsdWVzOiBhbnkgPSB7XG4gICAgcHJvZ3JhbToge30sXG4gICAgY2F0ZWdvcmllczogW10sXG4gIH07XG4gIHByb2dyYW1EYXRhOiBwcm9ncmFtTGlzdCA9IHtcbiAgICBkYXRhOiBbXSxcbiAgICBmcm9tOiAwLFxuICAgIHRvOiAwLFxuICAgIHRvdGFsUGFnZXM6IDAsXG4gICAgdG90YWxSZWNvcmRzOiAwLFxuICAgIGN1cnJlbnRQYWdlOiAxLFxuICAgIEFsbEludGVybmFsQ29udHJvbHNQcm9ncmFtc0NvdW50OiAwLFxuICAgIEFsbE90aGVyc1Byb2dyYW1zQ291bnQ6IDAsXG4gICAgQWxsUmVndWxhdGlvblByb2dyYW1zQ291bnQ6IDAsXG4gICAgQWxsU3RhbmRhcmRQcm9ncmFtc0NvdW50OiAwLFxuICAgIFNlbGVjdGVkSW50ZXJuYWxDb250cm9sc1Byb2dyYW1zQ291bnQ6IDAsXG4gICAgU2VsZWN0ZWRPdGhlcnNQcm9ncmFtc0NvdW50OiAwLFxuICAgIFNlbGVjdGVkUmVndWxhdGlvblByb2dyYW1zQ291bnQ6IDAsXG4gICAgU2VsZWN0ZWRTdGFuZGFyZFByb2dyYW1zQ291bnQ6IDAsXG4gIH07XG4gIHByb2dyYW1UeXBlT2JqZWN0ID0ge1xuICAgIHJlZ3VsYXRpb25zOiAxLFxuICAgIHN0YW5kYXJkczogMixcbiAgICBpbnRlcm5hbF9jb250cm9sczogMyxcbiAgICBvdGhlcnM6IDAsXG4gIH07XG5cbiAgZGlzcGxheUNvbmZpcm1hdGlvbk1lc3NhZ2UgPSBmYWxzZTtcblxuICBhY3RpdmVUYWI6ICdyZWd1bGF0aW9ucycgfCAnc3RhbmRhcmRzJyB8ICdpbnRlcm5hbF9jb250cm9scycgfCAnb3RoZXJzJyA9XG4gICAgJ3JlZ3VsYXRpb25zJztcblxuICAvL3Byb2dyYW1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlc3RBcGlTZXJ2aWNlOiBSZXN0QXBpU2VydmljZSxcbiAgICBwcml2YXRlIHNuYWNrYmFyOiBTbmFja0JhclNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5nZXRQcm9ncmFtcygpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5hbmltYXRpb24gPSB0cnVlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5hbmltYXRpb24gPSBmYWxzZTtcbiAgICB9LCAzMDApO1xuICAgIHRoaXMuY3VycmVudEJ1c2luZXNzQ3ljbGUgPSB0aGlzLnJlc3RBcGlTZXJ2aWNlLmdldEJ1c2luZXNzQ3ljbGUoKTtcbiAgfVxuXG4gIGdldFByb2dyYW1zKGRhdGE/OiBhbnkpIHtcbiAgICB0aGlzLmxvYWRlciA9IHRydWU7XG4gICAgbGV0IHBhcmFtcyA9IG5ldyBIdHRwUGFyYW1zKCk7XG4gICAgLy8gcGFyYW1zID0gcGFyYW1zLmFwcGVuZCgnbW9kZScsICdjb21wbGlhbmNlQ2F0ZWdvcnkvcHJvZ3JhbUxpc3QnKTtcbiAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKFxuICAgICAgJ3Byb2dyYW1UeXBlJyxcbiAgICAgIHRoaXMucHJvZ3JhbVR5cGVPYmplY3RbdGhpcy5hY3RpdmVUYWJdXG4gICAgKTtcbiAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdwYWdlTmFtZScsICdwb2xpY3lXb3Jrcm9vbScpO1xuICAgIGlmIChkYXRhPy5zZWFyY2ggfHwgdGhpcy5zZWFyY2hUZXh0LnByb2dyYW0pIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ3NlYXJjaFRleHQnLCB0aGlzLnNlYXJjaFRleHQucHJvZ3JhbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ3BhZ2VObycsIHRoaXMucHJvZ3JhbURhdGEuY3VycmVudFBhZ2UpO1xuICAgIH1cbiAgICBjb25zdCByZXF1ZXN0ID0ge1xuICAgICAgbWV0aG9kOiAnZ2V0JyxcbiAgICAgIGFjdGlvbjogJ2NvbXBsaWFuY2VHZXQnLFxuICAgICAgcGFyYW1zLFxuICAgIH07XG4gICAgdGhpcy5yZXN0QXBpU2VydmljZVxuICAgICAgLmFwaURlbGVnYXRlKHJlcXVlc3QsICdjb21wbGlhbmNlQ2F0ZWdvcnkvcHJvZ3JhbUxpc3QnKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMucHJvZ3JhbURhdGEuZGF0YSA9IHJlcy5kYXRhO1xuICAgICAgICAgIHRoaXMucHJvZ3JhbURhdGEuZnJvbSA9IHJlcy5mcm9tO1xuICAgICAgICAgIHRoaXMucHJvZ3JhbURhdGEudG8gPSByZXMudG87XG4gICAgICAgICAgdGhpcy5wcm9ncmFtRGF0YS50b3RhbFBhZ2VzID0gcmVzLnRvdGFsUGFnZXM7XG4gICAgICAgICAgdGhpcy5wcm9ncmFtRGF0YS50b3RhbFJlY29yZHMgPSByZXMudG90YWxSZWNvcmRzO1xuICAgICAgICAgIHRoaXMucHJvZ3JhbURhdGEuQWxsSW50ZXJuYWxDb250cm9sc1Byb2dyYW1zQ291bnQgPVxuICAgICAgICAgICAgcmVzLkFsbEludGVybmFsQ29udHJvbHNQcm9ncmFtc0NvdW50O1xuICAgICAgICAgIHRoaXMucHJvZ3JhbURhdGEuQWxsT3RoZXJzUHJvZ3JhbXNDb3VudCA9IHJlcy5BbGxPdGhlcnNQcm9ncmFtc0NvdW50O1xuICAgICAgICAgIHRoaXMucHJvZ3JhbURhdGEuQWxsUmVndWxhdGlvblByb2dyYW1zQ291bnQgPVxuICAgICAgICAgICAgcmVzLkFsbFJlZ3VsYXRpb25Qcm9ncmFtc0NvdW50O1xuICAgICAgICAgIHRoaXMucHJvZ3JhbURhdGEuQWxsU3RhbmRhcmRQcm9ncmFtc0NvdW50ID1cbiAgICAgICAgICAgIHJlcy5BbGxTdGFuZGFyZFByb2dyYW1zQ291bnQ7XG4gICAgICAgICAgdGhpcy5sb2FkZXIgPSBmYWxzZTtcbiAgICAgICAgfSxcbiAgICAgICAgZXJyb3I6IChlcnI6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMubG9hZGVyID0gZmFsc2U7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgfVxuXG4gIGdldENhdGVnb3JpZXMoZGF0YT86IGFueSkge1xuICAgIHRoaXMubG9hZGVyID0gdHJ1ZTtcbiAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcbiAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdwYXJlbnRJZCcsIHRoaXMuc2VsZWN0ZWRWYWx1ZXMucHJvZ3JhbT8uX2lkKTtcblxuICAgIGlmIChkYXRhPy5zZWFyY2gpIHtcbiAgICAgIHBhcmFtcyA9IHBhcmFtcy5hcHBlbmQoJ3EnLCB0aGlzLnNlYXJjaFRleHQuY2F0ZWdvcnkpO1xuICAgIH1cblxuICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICBtZXRob2Q6ICdnZXQnLFxuICAgICAgYWN0aW9uOiAncHJvZ3JhbUVuZHBvaW50JyxcbiAgICAgIHBhcmFtcyxcbiAgICB9O1xuICAgIHRoaXMucmVzdEFwaVNlcnZpY2VcbiAgICAgIC5hcGlEZWxlZ2F0ZShyZXF1ZXN0LCAnL3N1YkNhdGVnb3JpZXMnKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMuc3ViQ2F0ZWdvcmllc0xpc3QuZnJvbSA9IHJlcy5pdGVtc19mcm9tID8/IDE7XG4gICAgICAgICAgdGhpcy5zdWJDYXRlZ29yaWVzTGlzdC50byA9IHJlcy5pdGVtc190byA/PyAwO1xuICAgICAgICAgIHRoaXMuc3ViQ2F0ZWdvcmllc0xpc3QudG90YWxQYWdlID0gcmVzLnRvdGFsX3BhZ2VzID8/IDA7XG4gICAgICAgICAgdGhpcy5zdWJDYXRlZ29yaWVzTGlzdC50b3RhbFJlY29yZHMgPSByZXMudG90YWxfaXRlbXMgPz8gMDtcbiAgICAgICAgICB0aGlzLnN1YkNhdGVnb3JpZXNMaXN0LmRhdGEgPSByZXMuZGF0YSA/PyBbXTtcbiAgICAgICAgICB0aGlzLmxvYWRlciA9IGZhbHNlO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XG4gICAgICAgICAgdGhpcy5sb2FkZXIgPSBmYWxzZTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICB9XG4gIGNoYW5nZVRhYlByb2dyYW0oXG4gICAgdHlwZTogJ3JlZ3VsYXRpb25zJyB8ICdzdGFuZGFyZHMnIHwgJ2ludGVybmFsX2NvbnRyb2xzJyB8ICdvdGhlcnMnXG4gICkge1xuICAgIHRoaXMuYWN0aXZlVGFiID0gdHlwZTtcbiAgICB0aGlzLnByb2dyYW1EYXRhLmN1cnJlbnRQYWdlID0gMTtcbiAgICB0aGlzLnNlYXJjaFRleHQucHJvZ3JhbSA9ICcnO1xuICAgIHRoaXMuc2VhcmNoUHJvZ3JhbS5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgdGhpcy5nZXRQcm9ncmFtcygpO1xuICB9XG5cbiAgZ2V0UmVzcG9uc2liaWxpdGllcyhkYXRhPzogYW55KSB7XG4gICAgdGhpcy5sb2FkZXIgPSB0cnVlO1xuXG4gICAgY29uc3QgcmVxdWVzdCA9IHtcbiAgICAgIG1ldGhvZDogJ2dldCcsXG4gICAgICBhY3Rpb246ICdwcm9ncmFtRW5kcG9pbnQnLFxuICAgICAgcGF5bG9hZE9iamVjdDoge1xuICAgICAgICBjYXRlZ29yeUlkczogdGhpcy5zZWxlY3RlZElkcz8uY2F0ZWdvcmllcyxcbiAgICAgICAgcGFnZU5vOiB0aGlzLnJlc3BvbnNpYmlsaXRpZXNMaXN0Py5jdXJyZW50UGFnZSxcbiAgICAgICAgc2VhcmNoVGV4dDogZGF0YT8uc2VhcmNoID8gdGhpcy5zZWFyY2hUZXh0Py5yZXNwb25zaWJpbGl0eSA6ICcnLFxuICAgICAgICBwYWdlTmFtZTogJ3BvbGljeVdvcmtyb29tJyxcbiAgICAgIH0sXG4gICAgfTtcbiAgICB0aGlzLnJlc3RBcGlTZXJ2aWNlXG4gICAgICAuYXBpRGVsZWdhdGUocmVxdWVzdCwgJy9jYXRlZ29yeVJlc3BvbnNpYmlsaXRpZXMnKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMudW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMubG9hZGVyID0gZmFsc2U7XG4gICAgICAgICAgdGhpcy5yZXNwb25zaWJpbGl0aWVzTGlzdC5mcm9tID0gcmVzLml0ZW1zX2Zyb20gPz8gMTtcbiAgICAgICAgICB0aGlzLnJlc3BvbnNpYmlsaXRpZXNMaXN0LnRvID0gcmVzLml0ZW1zX3RvID8/IDA7XG4gICAgICAgICAgdGhpcy5yZXNwb25zaWJpbGl0aWVzTGlzdC50b3RhbFBhZ2UgPSByZXMudG90YWxfcGFnZXMgPz8gMTtcbiAgICAgICAgICB0aGlzLnJlc3BvbnNpYmlsaXRpZXNMaXN0LnRvdGFsUmVjb3JkcyA9IHJlcy50b3RhbF9pdGVtcyA/PyAwO1xuICAgICAgICAgIHRoaXMucmVzcG9uc2liaWxpdGllc0xpc3QuZGF0YSA9IHJlcy5kYXRhID8/IFtdO1xuICAgICAgICB9LFxuICAgICAgICBlcnJvcjogKGVycjogYW55KSA9PiB7XG4gICAgICAgICAgdGhpcy5sb2FkZXIgPSBmYWxzZTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICB9XG5cbiAgY2hhbmdlUGFnZShldmVudDogYW55LCB0eXBlOiAncHJvZ3JhbXMnIHwgJ2NhdGVnb3JpZXMnIHwgJ3Jlc3BvbnNpYmlsaXRpZXMnKSB7XG4gICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICBjYXNlICdwcm9ncmFtcyc6XG4gICAgICAgIHRoaXMucHJvZ3JhbURhdGEuY3VycmVudFBhZ2UgPSBldmVudDtcbiAgICAgICAgdGhpcy5nZXRQcm9ncmFtcygpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2NhdGVnb3JpZXMnOlxuICAgICAgICB0aGlzLnN1YkNhdGVnb3JpZXNMaXN0LmN1cnJlbnRQYWdlID0gZXZlbnQ7XG4gICAgICAgIHRoaXMuZ2V0Q2F0ZWdvcmllcygpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3Jlc3BvbnNpYmlsaXRpZXMnOlxuICAgICAgICB0aGlzLnJlc3BvbnNpYmlsaXRpZXNMaXN0LmN1cnJlbnRQYWdlID0gZXZlbnQ7XG4gICAgICAgIHRoaXMuZ2V0UmVzcG9uc2liaWxpdGllcygpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cbiAgc2VhcmNoQnkoZXZlbnQ6IGFueSwgdHlwZTogJ3Byb2dyYW1zJyB8ICdjYXRlZ29yaWVzJyB8ICdyZXNwb25zaWJpbGl0aWVzJykge1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSAncHJvZ3JhbXMnOlxuICAgICAgICBpZiAodGhpcy5zZWFyY2hUZXh0LnByb2dyYW0gIT0gZXZlbnQpIHtcbiAgICAgICAgICB0aGlzLnNlYXJjaFRleHQucHJvZ3JhbSA9IGV2ZW50O1xuICAgICAgICAgIHRoaXMuZ2V0UHJvZ3JhbXMoeyBzZWFyY2g6IHRydWUgfSk7XG4gICAgICAgIH1cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdjYXRlZ29yaWVzJzpcbiAgICAgICAgaWYgKHRoaXMuc2VhcmNoVGV4dC5jYXRlZ29yeSAhPSBldmVudCkge1xuICAgICAgICAgIHRoaXMuc2VhcmNoVGV4dC5jYXRlZ29yeSA9IGV2ZW50O1xuICAgICAgICAgIHRoaXMuZ2V0Q2F0ZWdvcmllcyh7IHNlYXJjaDogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3Jlc3BvbnNpYmlsaXRpZXMnOlxuICAgICAgICBpZiAodGhpcy5zZWFyY2hUZXh0LnJlc3BvbnNpYmlsaXR5ICE9IGV2ZW50KSB7XG4gICAgICAgICAgdGhpcy5zZWFyY2hUZXh0LnJlc3BvbnNpYmlsaXR5ID0gZXZlbnQ7XG4gICAgICAgICAgdGhpcy5nZXRSZXNwb25zaWJpbGl0aWVzKHsgc2VhcmNoOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdFByb2dyYW0oZXZlbnQ6IGFueSwgZGF0YTogYW55KSB7XG4gICAgaWYgKGV2ZW50KSB7XG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnByb2dyYW0gPSBkYXRhO1xuICAgICAgdGhpcy5zZWxlY3RlZElkcy5jYXRlZ29yaWVzID0gW107XG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLmNhdGVnb3JpZXMgPSBbXTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJZHMucmVzcG9uc2liaWxpdGllcyA9IFtdO1xuICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcy5yZXNwb25zaWJpbGl0aWVzID0gW107XG4gICAgfVxuICB9XG5cbiAgc2VsZWN0Q2F0ZWdvcnkoZXZlbnQ6IGFueSwgY2F0ZWdvcnk6IGFueSkge1xuICAgIGlmIChldmVudCkge1xuICAgICAgdGhpcy5zZWxlY3RlZElkcy5jYXRlZ29yaWVzLnB1c2goY2F0ZWdvcnkuY2F0ZWdvcnlfaWQpO1xuICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcy5jYXRlZ29yaWVzLnB1c2goY2F0ZWdvcnkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBpbmRleCA9IHRoaXMuc2VsZWN0ZWRJZHMuY2F0ZWdvcmllcy5maW5kSW5kZXgoXG4gICAgICAgIChlbGVtZW50OiBhbnkpID0+IGVsZW1lbnQgPT0gY2F0ZWdvcnkuY2F0ZWdvcnlfaWRcbiAgICAgICk7XG4gICAgICB0aGlzLnNlbGVjdGVkSWRzLmNhdGVnb3JpZXMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIGNvbnN0IGNhdGVnb3J5SW5kZXggPSB0aGlzLnNlbGVjdGVkVmFsdWVzLmNhdGVnb3JpZXMuZmluZEluZGV4KFxuICAgICAgICAoZWxlOiBhbnkpID0+IGVsZS5jYXRlZ29yeV9pZCA9PSBjYXRlZ29yeS5jYXRlZ29yeV9pZFxuICAgICAgKTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMuY2F0ZWdvcmllcy5zcGxpY2UoY2F0ZWdvcnlJbmRleCwgMSk7XG4gICAgfVxuICB9XG4gIHNlbGVjdFJlc3BvbnNpYmlsaXR5KGV2ZW50OiBhbnksIGRhdGE6IGFueSkge1xuICAgIGlmIChldmVudCkge1xuICAgICAgdGhpcy5zZWxlY3RlZElkcy5yZXNwb25zaWJpbGl0aWVzLnB1c2goZGF0YS5SZXBvcnRJZCk7XG4gICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnJlc3BvbnNpYmlsaXRpZXMucHVzaChkYXRhKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnNlbGVjdGVkSWRzLnJlc3BvbnNpYmlsaXRpZXMuZmluZEluZGV4KFxuICAgICAgICAoZWxlbWVudDogYW55KSA9PiBlbGVtZW50ID09IGRhdGEuUmVwb3J0SWRcbiAgICAgICk7XG4gICAgICB0aGlzLnNlbGVjdGVkSWRzLnJlc3BvbnNpYmlsaXRpZXMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgIGNvbnN0IHJlcG9ydEluZGV4ID0gdGhpcy5zZWxlY3RlZFZhbHVlcy5yZXNwb25zaWJpbGl0aWVzLmZpbmRJbmRleChcbiAgICAgICAgKGVsZTogYW55KSA9PiBlbGUuUmVwb3J0SWQgPT0gZGF0YS5SZXBvcnRJZFxuICAgICAgKTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMucmVzcG9uc2liaWxpdGllcy5zcGxpY2UocmVwb3J0SW5kZXgsIDEpO1xuICAgIH1cbiAgfVxuICBnb0JhY2soZnJvbT86ICdjYXRlZ29yaWVzJyB8ICdyZXNwb25zaWJpbGl0aWVzJykge1xuICAgIGlmIChmcm9tKSB7XG4gICAgICBzd2l0Y2ggKGZyb20pIHtcbiAgICAgICAgY2FzZSAnY2F0ZWdvcmllcyc6XG4gICAgICAgICAgdGhpcy5jdXJyZW50TGlzdCA9ICdwcm9ncmFtcyc7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZElkcy5jYXRlZ29yaWVzID0gW107XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ3Jlc3BvbnNpYmlsaXRpZXMnOlxuICAgICAgICAgIHRoaXMuY3VycmVudExpc3QgPSAnY2F0ZWdvcmllcyc7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZElkcy5yZXNwb25zaWJpbGl0aWVzID0gW107XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuY2xvc2UuZW1pdCgpO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZSh0eXBlOiAncHJvZ3JhbXMnIHwgJ2NhdGVnb3JpZXMnIHwgJ3Jlc3BvbnNpYmlsaXRpZXMnLCBpdGVtOiBhbnkpIHtcbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgIGNhc2UgJ3Byb2dyYW1zJzpcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcy5wcm9ncmFtID0ge307XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMuY2F0ZWdvcmllcyA9IFtdO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnJlc3BvbnNpYmlsaXRpZXMgPSBbXTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdjYXRlZ29yaWVzJzpcbiAgICAgICAgY29uc3QgY2F0ZWdvcnlJbmRleCA9IHRoaXMuc2VsZWN0ZWRWYWx1ZXMuY2F0ZWdvcmllcy5maW5kSW5kZXgoXG4gICAgICAgICAgKGVsZTogYW55KSA9PiBlbGUuY2F0ZWdvcnlfaWQgPT0gaXRlbS5jYXRlZ29yeV9pZFxuICAgICAgICApO1xuICAgICAgICBpZiAoY2F0ZWdvcnlJbmRleCAhPSAtMSkge1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMuY2F0ZWdvcmllcy5zcGxpY2UoY2F0ZWdvcnlJbmRleCwgMSk7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcy5yZXNwb25zaWJpbGl0aWVzID0gW107XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY2F0ZWdvcnlJZEluZGV4ID0gdGhpcy5zZWxlY3RlZElkcy5jYXRlZ29yaWVzLmZpbmRJbmRleChcbiAgICAgICAgICAoZWxlbWVudDogYW55KSA9PiBlbGVtZW50ID09IGl0ZW0uY2F0ZWdvcnlfaWRcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKGNhdGVnb3J5SWRJbmRleCAhPSAtMSkge1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJZHMuY2F0ZWdvcmllcy5zcGxpY2UoY2F0ZWdvcnlJZEluZGV4LCAxKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3Jlc3BvbnNpYmlsaXRpZXMnOlxuICAgICAgICBjb25zdCByZXNwSW5kZXggPSB0aGlzLnNlbGVjdGVkVmFsdWVzLnJlc3BvbnNpYmlsaXRpZXMuZmluZEluZGV4KFxuICAgICAgICAgIChlbGU6IGFueSkgPT4gZWxlLlJlcG9ydElkID09IGl0ZW0uUmVwb3J0SWRcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKHJlc3BJbmRleCAhPSAtMSkge1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRWYWx1ZXMucmVzcG9uc2liaWxpdGllcy5zcGxpY2UocmVzcEluZGV4LCAxKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuc2VsZWN0ZWRJZHMucmVzcG9uc2liaWxpdGllcy5maW5kSW5kZXgoXG4gICAgICAgICAgKGVsZW1lbnQ6IGFueSkgPT4gZWxlbWVudCA9PSBpdGVtLlJlcG9ydElkXG4gICAgICAgICk7XG4gICAgICAgIGlmIChpbmRleCAhPSAtMSkge1xuICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJZHMucmVzcG9uc2liaWxpdGllcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgc2F2ZUNoYW5nZXMoXG4gICAgdHlwZTogJ3Byb2dyYW1zJyB8ICdjYXRlZ29yaWVzJyB8ICdyZXNwb25zaWJpbGl0aWVzJyB8ICdwcm9ncmFtc09ubHknXG4gICkge1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSAncHJvZ3JhbXMnOlxuICAgICAgICB0aGlzLmN1cnJlbnRMaXN0ID0gJ2NhdGVnb3JpZXMnO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLmNhdGVnb3JpZXMgPSBbXTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcy5yZXNwb25zaWJpbGl0aWVzID0gW107XG4gICAgICAgIHRoaXMuZ2V0Q2F0ZWdvcmllcygpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2NhdGVnb3JpZXMnOlxuICAgICAgICB0aGlzLmN1cnJlbnRMaXN0ID0gJ3Jlc3BvbnNpYmlsaXRpZXMnO1xuICAgICAgICB0aGlzLnNlbGVjdGVkVmFsdWVzLnJlc3BvbnNpYmlsaXRpZXMgPSBbXTtcbiAgICAgICAgdGhpcy5nZXRSZXNwb25zaWJpbGl0aWVzKCk7XG5cbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdyZXNwb25zaWJpbGl0aWVzJzpcbiAgICAgICAgdGhpcy5zdWJtaXRwcm9ncmFtSW50ZWdyYXRpb24oKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdwcm9ncmFtc09ubHknOlxuICAgICAgICB0aGlzLmRpc3BsYXlDb25maXJtYXRpb25NZXNzYWdlID0gdHJ1ZTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG4gIHNhdmVDaGFuZ2VzRnJvbVByb2dyYW0oZXZlbnQ6IGJvb2xlYW4pIHtcbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIHRoaXMuZGlzcGxheUNvbmZpcm1hdGlvbk1lc3NhZ2UgPSBmYWxzZTtcbiAgICAgIHRoaXMuc3VibWl0cHJvZ3JhbUludGVncmF0aW9uKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuZGlzcGxheUNvbmZpcm1hdGlvbk1lc3NhZ2UgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBzdWJtaXRwcm9ncmFtSW50ZWdyYXRpb24oKSB7XG4gICAgLy8gdGhpcy5zdWJtaXNzaW9uTG9hZGVyID0gdHJ1ZTtcbiAgICBsZXQgcGFyYW1zID0gbmV3IEh0dHBQYXJhbXMoKTtcbiAgICBwYXJhbXMgPSBwYXJhbXMuYXBwZW5kKCdtb2RlJywgJ3Byb2dyYW1Qb2xpY3lVcGRhdGUvdXBkYXRlJyk7XG5cbiAgICBjb25zdCBjYXRlZ29yeUFycmF5ID0gdGhpcy5zZWxlY3RlZElkcz8uY2F0ZWdvcmllcztcblxuICAgIGNvbnN0IHBheWxvYWQgPSB7XG4gICAgICBwb2xpY3lJZDogdGhpcy5wb2xpY3k/LnBvbGljeV9pZCA/PyAwLFxuICAgICAgcmVwb3J0X2lkczogdGhpcy5zZWxlY3RlZElkcz8ucmVzcG9uc2liaWxpdGllcyA/PyAwLFxuICAgICAgY2F0ZWdvcnlfaWQ6IFsuLi5uZXcgU2V0KGNhdGVnb3J5QXJyYXkpXSxcbiAgICAgIHBhcmVudElkOiB0aGlzLnNlbGVjdGVkVmFsdWVzPy5wcm9ncmFtPy5jYXRlZ29yeV9pZCxcbiAgICB9O1xuICAgIGxldCByZW1vdmUgPSB7fTtcbiAgICBpZiAoXG4gICAgICB0aGlzLnNlbGVjdGVkTGlua1Byb2dyYW0/Ll9pZCAmJlxuICAgICAgdGhpcy5zZWxlY3RlZFZhbHVlcz8ucHJvZ3JhbT8uX2lkICE9PSB0aGlzLnNlbGVjdGVkTGlua1Byb2dyYW0/Ll9pZFxuICAgICkge1xuICAgICAgcmVtb3ZlID0ge1xuICAgICAgICBwb2xpY3lJZHM6IFt0aGlzLnBvbGljeT8ucG9saWN5X2lkID8/IDBdLFxuICAgICAgICBwcm9ncmFtSWQ6IHRoaXMuc2VsZWN0ZWRMaW5rUHJvZ3JhbT8uX2lkLFxuICAgICAgfTtcbiAgICB9XG4gICAgY29uc3QgY3VycmVudEJ1c2luZXNzQ3ljbGUgPSB7XG4gICAgICBzdGFydF9kYXRlOiB0aGlzLmN1cnJlbnRCdXNpbmVzc0N5Y2xlPy5zdGFydF9kYXRlLFxuICAgICAgZW5kX2RhdGU6IHRoaXMuY3VycmVudEJ1c2luZXNzQ3ljbGU/LmVuZF9kYXRlLFxuICAgICAgc2VsZWN0ZWRfY3ljbGVfYXJyOiB0aGlzLmN1cnJlbnRCdXNpbmVzc0N5Y2xlPy5zZWxlY3RlZF9jeWNsZV9hcnIsXG4gICAgICBzZWxlY3RlZF9jeWNsZTogdGhpcy5jdXJyZW50QnVzaW5lc3NDeWNsZT8uc2VsZWN0ZWRfY3ljbGUsXG4gICAgfTtcbiAgICBsZXQgbGlua1Byb2dyYW0gPSB7XG4gICAgICBhZGRlZDogT2JqZWN0LmtleXMocGF5bG9hZCkubGVuZ3RoID8gW3BheWxvYWRdIDogW10sXG4gICAgICByZW1vdmVkOiBPYmplY3Qua2V5cyhyZW1vdmUpLmxlbmd0aCA/IFtyZW1vdmVdIDogW10sXG4gICAgfTtcbiAgICBsZXQgc2VsZWN0ZWRQcm9ncmFtID0ge1xuICAgICAgc2VsZWN0ZWRWYWx1ZXM6IHRoaXMuc2VsZWN0ZWRWYWx1ZXMsXG4gICAgICBsaW5rUHJvZ3JhbTogbGlua1Byb2dyYW0sXG4gICAgICBidXNpbmVzc0N5Y2xlOiBjdXJyZW50QnVzaW5lc3NDeWNsZSxcbiAgICB9O1xuICAgIHRoaXMudXBkYXRlZFByb2dyYW1EZXRhaWxzLmVtaXQoXG4gICAgICBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KHNlbGVjdGVkUHJvZ3JhbSkpXG4gICAgKTtcbiAgICB0aGlzLnN1Ym1pc3Npb25Mb2FkZXIgPSBmYWxzZTtcblxuICAgIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgICBtZXRob2Q6ICdwb3N0JyxcbiAgICAgIGFjdGlvbjogJy9jb21wbGlhbmNlX3Bvc3QnLFxuICAgICAgcGFyYW1zLFxuICAgICAgZGF0YTogcGF5bG9hZCxcbiAgICAgIGJ1c2luZXNzQ3ljbGU6IGN1cnJlbnRCdXNpbmVzc0N5Y2xlLFxuICAgIH07XG4gICAgLy8gdGhpcy5yZXN0QXBpU2VydmljZS5hcGlEZWxlZ2F0ZShyZXF1ZXN0KS5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlKSkuc3Vic2NyaWJlKHtcbiAgICAvLyAgIG5leHQ6IChyZXM6IGFueSkgPT4ge1xuICAgIC8vICAgICB0aGlzLnN1Ym1pc3Npb25Mb2FkZXIgPSBmYWxzZTtcbiAgICAvLyAgICAgdGhpcy5zbmFja2Jhci5zaG93KCdUaGUgcHJvZ3JhbSBoYXMgYmVlbiBsaW5rZWQgd2l0aCB0aGlzIFBvbGljeS4nLCAnc3VjY2VzcycpO1xuICAgIC8vICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAvLyAgICAgICBpZih0aGlzLmN1cnJlbnRUYWIgIT0gJ2xpbmtlZF9wcm9ncmFtcycpe1xuICAgIC8vICAgICAgICAgdGhpcy5yZWZyZXNoTGlua2VkUG9saWNpZXMuZW1pdCgpO1xuICAgIC8vICAgICAgICAgLy8gdGhpcy5jaGFuZ2VUYWIuZW1pdCgpO1xuICAgIC8vICAgICAgIH1cbiAgICAvLyAgICAgICB0aGlzLmNsb3NlLmVtaXQoKTtcbiAgICAvLyAgICAgfSwgMTAwMCk7XG5cbiAgICAvLyAgIH0sXG4gICAgLy8gICBlcnJvcjogKGVycjogYW55KSA9PiB7XG4gICAgLy8gICAgIHRoaXMuc3VibWlzc2lvbkxvYWRlciA9IGZhbHNlO1xuICAgIC8vICAgICB0aGlzLnNuYWNrYmFyLnNob3coXCJPb3BzIFNvbWV0aGluZyB3ZW50IHdyb25nIGFuZCB3ZSB3ZXJlIHVuYWJsZSB0byBjb21wbGV0ZSB0aGlzIGFjdGlvbi4gTGV0J3MgZ2l2ZSBpdCBhbm90aGVyIHRyeSBzaGFsbCB3ZSA/XCIpO1xuICAgIC8vICAgfSxcbiAgICAvLyB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImxpbmstcG9saWN5XCIgW2NsYXNzLmFuaW1hdGVdPVwiYW5pbWF0aW9uXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJjdXJyZW50TGlzdCA9PSAncHJvZ3JhbXMnXCI+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJwcm9ncmFtLWxpc3RpbmctaGVhZCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1wbC00IHZ4LXByLTRcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xNCB2eC1mdy01MDAgdngtbGFiZWwtdHh0XCI+U2VsZWN0IGEgUHJvZ3JhbTwvZGl2PlxuICAgICAgPCEtLSA8YnV0dG9uIChjbGljayk9XCJnb0JhY2soKVwiIGNsYXNzPVwiYmFjay1idG4gdngtZnMtMTIgdngtZnctNTAwIHZ4LWxhYmxlLXR4dCB2eC10dC11cHBlcmNhc2UgdngtcC0wIHZ4LW0tMCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+PGkgY2xhc3M9XCJpY29ucyB2eC1tci0xXCI+JiN4ZTkxZDs8L2k+IEJhY2s8L2J1dHRvbj4gLS0+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInByb2dyYW0tbGlzdGluZy1ib2R5XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmlsdGVyLWNhcmQtcm93IHZ4LWQtZmxleCB2eC1tYi0yXCI+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBjbGFzcz1cImZpbHRlci1jYXJkIHZ4LWJnLXdoaXRlIHZ4LWQtZmxleCB2eC1qdXN0aWZ5LWJldHdlZW4gdngtYWxpZ24tY2VudGVyIHZ4LXB0LTIgdngtcGItMiB2eC1wbC0zIHZ4LXByLTMgdngtdy0xMDBcIlxuICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlVGFiID09ICdyZWd1bGF0aW9ucydcIlxuICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VUYWJQcm9ncmFtKCdyZWd1bGF0aW9ucycpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0IHZ4LWQtYmxvY2sgdngtdy0xMDBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1kLWJsb2NrIHZ4LWxoLTNcIj5cbiAgICAgICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwidngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlIHZ4LWQtZmxleCB2eC1qdXN0aWZ5LWJldHdlZW4gdngtYWxpZ24tY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgID5SRUdVTEFUSU9OUzwvbGFiZWxcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwidngtZnMtMTAgdngtZnctNjAwIHZ4LWxhYmVsLXR4dCB2eC1saC00XCJcbiAgICAgICAgICAgICAgICAgICpuZ0lmPVwicHJvZ3JhbURhdGE/LlNlbGVjdGVkUmVndWxhdGlvblByb2dyYW1zQ291bnQgPiAwXCJcbiAgICAgICAgICAgICAgICAgID57eyBwcm9ncmFtRGF0YT8uU2VsZWN0ZWRSZWd1bGF0aW9uUHJvZ3JhbXNDb3VudCB9fVxuICAgICAgICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgICAgICAgcHJvZ3JhbURhdGE/LlNlbGVjdGVkUmVndWxhdGlvblByb2dyYW1zQ291bnQgPT0gMVxuICAgICAgICAgICAgICAgICAgICAgID8gXCJQcm9ncmFtXCJcbiAgICAgICAgICAgICAgICAgICAgICA6IFwiUHJvZ3JhbXNcIlxuICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgIHNlbGVjdGVkPC9zcGFuXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyaWdodCB2eC1kLWZsZXggdngtanVzdGlmeS1lbmQgdngtdy0xMDBcIj5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgIGNsYXNzPVwiY291bnRlciB2eC10eHQtd2hpdGUgdngtZnctNTAwIHZ4LWQtaW5saW5lLWJsb2NrIHZ4LXRleHQtY2VudGVyXCJcbiAgICAgICAgICAgICAgPnt7IHByb2dyYW1EYXRhPy5BbGxSZWd1bGF0aW9uUHJvZ3JhbXNDb3VudCB9fTwvc3BhblxuICAgICAgICAgICAgPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiZmlsdGVyLWNhcmQgdngtYmctd2hpdGUgdngtZC1mbGV4IHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1hbGlnbi1jZW50ZXIgdngtcHQtMiB2eC1wYi0yIHZ4LXBsLTMgdngtcHItMyB2eC13LTEwMFwiXG4gICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVUYWIgPT0gJ3N0YW5kYXJkcydcIlxuICAgICAgICAgIChjbGljayk9XCJjaGFuZ2VUYWJQcm9ncmFtKCdzdGFuZGFyZHMnKVwiXG4gICAgICAgID5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdCB2eC1kLWJsb2NrIHZ4LXctMTAwXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGFiZWwgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZC1ibG9jayB2eC1saC0zXCI+XG4gICAgICAgICAgICAgICAgPGxhYmVsXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInZ4LXBhcmFncmFwaC10eHQgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZSB2eC1kLWZsZXggdngtanVzdGlmeS1iZXR3ZWVuIHZ4LWFsaWduLWNlbnRlclwiXG4gICAgICAgICAgICAgICAgICA+U1RBTkRBUkRTPC9sYWJlbFxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2eC1mcy0xMCB2eC1mdy02MDAgdngtbGFiZWwtdHh0IHZ4LWxoLTRcIlxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJwcm9ncmFtRGF0YT8uU2VsZWN0ZWRTdGFuZGFyZFByb2dyYW1zQ291bnQgPiAwXCJcbiAgICAgICAgICAgICAgICAgID57eyBwcm9ncmFtRGF0YT8uU2VsZWN0ZWRTdGFuZGFyZFByb2dyYW1zQ291bnQgfX1cbiAgICAgICAgICAgICAgICAgIHt7XG4gICAgICAgICAgICAgICAgICAgIHByb2dyYW1EYXRhPy5TZWxlY3RlZFN0YW5kYXJkUHJvZ3JhbXNDb3VudCA9PSAxXG4gICAgICAgICAgICAgICAgICAgICAgPyBcIlByb2dyYW1cIlxuICAgICAgICAgICAgICAgICAgICAgIDogXCJQcm9ncmFtc1wiXG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQ8L3NwYW5cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0IHZ4LWQtZmxleCB2eC1qdXN0aWZ5LWVuZCB2eC13LTEwMFwiPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJjb3VudGVyIHZ4LXR4dC13aGl0ZSB2eC1mdy01MDAgdngtZC1pbmxpbmUtYmxvY2sgdngtdGV4dC1jZW50ZXJcIlxuICAgICAgICAgICAgICA+e3sgcHJvZ3JhbURhdGE/LkFsbFN0YW5kYXJkUHJvZ3JhbXNDb3VudCB9fTwvc3BhblxuICAgICAgICAgICAgPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwiZmlsdGVyLWNhcmQgdngtYmctd2hpdGUgdngtZC1mbGV4IHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1hbGlnbi1jZW50ZXIgdngtcHQtMiB2eC1wYi0yIHZ4LXBsLTMgdngtcHItMyB2eC13LTEwMFwiXG4gICAgICAgICAgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVUYWIgPT0gJ2ludGVybmFsX2NvbnRyb2xzJ1wiXG4gICAgICAgICAgKGNsaWNrKT1cImNoYW5nZVRhYlByb2dyYW0oJ2ludGVybmFsX2NvbnRyb2xzJylcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQgdngtZC1ibG9jayB2eC13LTEwMFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxhYmVsIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtYmxvY2sgdngtbGgtM1wiPlxuICAgICAgICAgICAgICAgIDxsYWJlbFxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2eC1wYXJhZ3JhcGgtdHh0IHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2UgdngtZC1mbGV4IHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1hbGlnbi1jZW50ZXJcIlxuICAgICAgICAgICAgICAgICAgPklOVEVSTkFMIENPTlRST0xTPC9sYWJlbFxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2eC1mcy0xMCB2eC1mdy02MDAgdngtbGFiZWwtdHh0IHZ4LWxoLTRcIlxuICAgICAgICAgICAgICAgICAgKm5nSWY9XCJwcm9ncmFtRGF0YT8uU2VsZWN0ZWRJbnRlcm5hbENvbnRyb2xzUHJvZ3JhbXNDb3VudCA+IDBcIlxuICAgICAgICAgICAgICAgICAgPnt7IHByb2dyYW1EYXRhPy5TZWxlY3RlZEludGVybmFsQ29udHJvbHNQcm9ncmFtc0NvdW50IH19XG4gICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICBwcm9ncmFtRGF0YT8uU2VsZWN0ZWRJbnRlcm5hbENvbnRyb2xzUHJvZ3JhbXNDb3VudCA9PSAxXG4gICAgICAgICAgICAgICAgICAgICAgPyBcIlByb2dyYW1cIlxuICAgICAgICAgICAgICAgICAgICAgIDogXCJQcm9ncmFtc1wiXG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgc2VsZWN0ZWQ8L3NwYW5cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInJpZ2h0IHZ4LWQtZmxleCB2eC1qdXN0aWZ5LWVuZCB2eC13LTEwMFwiPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJjb3VudGVyIHZ4LXR4dC13aGl0ZSB2eC1mdy01MDAgdngtZC1pbmxpbmUtYmxvY2sgdngtdGV4dC1jZW50ZXJcIlxuICAgICAgICAgICAgICA+e3sgcHJvZ3JhbURhdGE/LkFsbEludGVybmFsQ29udHJvbHNQcm9ncmFtc0NvdW50IH19PC9zcGFuXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgY2xhc3M9XCJmaWx0ZXItY2FyZCB2eC1iZy13aGl0ZSB2eC1kLWZsZXggdngtanVzdGlmeS1iZXR3ZWVuIHZ4LWFsaWduLWNlbnRlciB2eC1wdC0yIHZ4LXBiLTIgdngtcGwtMyB2eC1wci0zIHZ4LXctMTAwXCJcbiAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVRhYiA9PSAnb3RoZXJzJ1wiXG4gICAgICAgICAgKGNsaWNrKT1cImNoYW5nZVRhYlByb2dyYW0oJ290aGVycycpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0IHZ4LWQtYmxvY2sgdngtdy0xMDBcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsYWJlbCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1kLWJsb2NrIHZ4LWxoLTNcIj5cbiAgICAgICAgICAgICAgICA8bGFiZWxcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwidngtcGFyYWdyYXBoLXR4dCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlIHZ4LWQtZmxleCB2eC1qdXN0aWZ5LWJldHdlZW4gdngtYWxpZ24tY2VudGVyXCJcbiAgICAgICAgICAgICAgICAgID5PVEhFUlM8L2xhYmVsXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInZ4LWZzLTEwIHZ4LWZ3LTYwMCB2eC1sYWJlbC10eHQgdngtbGgtNFwiXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cInByb2dyYW1EYXRhPy5TZWxlY3RlZE90aGVyc1Byb2dyYW1zQ291bnQgPiAwXCJcbiAgICAgICAgICAgICAgICAgID57eyBwcm9ncmFtRGF0YT8uU2VsZWN0ZWRPdGhlcnNQcm9ncmFtc0NvdW50IH19XG4gICAgICAgICAgICAgICAgICB7e1xuICAgICAgICAgICAgICAgICAgICBwcm9ncmFtRGF0YT8uU2VsZWN0ZWRPdGhlcnNQcm9ncmFtc0NvdW50ID09IDFcbiAgICAgICAgICAgICAgICAgICAgICA/IFwiUHJvZ3JhbVwiXG4gICAgICAgICAgICAgICAgICAgICAgOiBcIlByb2dyYW1zXCJcbiAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICBzZWxlY3RlZDwvc3BhblxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicmlnaHQgdngtZC1mbGV4IHZ4LWp1c3RpZnktZW5kIHZ4LXctMTAwXCI+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICBjbGFzcz1cImNvdW50ZXIgdngtdHh0LXdoaXRlIHZ4LWZ3LTUwMCB2eC1kLWlubGluZS1ibG9jayB2eC10ZXh0LWNlbnRlclwiXG4gICAgICAgICAgICAgID57eyBwcm9ncmFtRGF0YT8uQWxsT3RoZXJzUHJvZ3JhbXNDb3VudCB9fTwvc3BhblxuICAgICAgICAgICAgPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8IS0tIDxkaXYgY2xhc3M9XCJmaWx0ZXItY2FyZFwiIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlVGFiID09ICdyZWd1bGF0aW9ucydcIiAoY2xpY2spPVwiY2hhbmdlVGFiUHJvZ3JhbSgncmVndWxhdGlvbnMnKVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsPlJFR1VMQVRJT05TPC9sYWJlbD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxwICpuZ0lmPVwicHJvZ3JhbURhdGE/LlNlbGVjdGVkUmVndWxhdGlvblByb2dyYW1zQ291bnQ+IDBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Byb2dyYW1EYXRhPy5TZWxlY3RlZFJlZ3VsYXRpb25Qcm9ncmFtc0NvdW50fX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyhwcm9ncmFtRGF0YT8uU2VsZWN0ZWRSZWd1bGF0aW9uUHJvZ3JhbXNDb3VudD09MSk/J1Byb2dyYW0nOidQcm9ncmFtcyd9fSBzZWxlY3RlZFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjb3VudGVyXCI+e3twcm9ncmFtRGF0YT8uQWxsUmVndWxhdGlvblByb2dyYW1zQ291bnR9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XG4gICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImZpbHRlci1jYXJkXCIgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVUYWIgPT0gJ3N0YW5kYXJkcydcIiAoY2xpY2spPVwiY2hhbmdlVGFiUHJvZ3JhbSgnc3RhbmRhcmRzJylcIj5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxsYWJlbD5TVEFOREFSRFM8L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgKm5nSWY9XCJwcm9ncmFtRGF0YT8uU2VsZWN0ZWRTdGFuZGFyZFByb2dyYW1zQ291bnQ+IDBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Byb2dyYW1EYXRhPy5TZWxlY3RlZFN0YW5kYXJkUHJvZ3JhbXNDb3VudH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3socHJvZ3JhbURhdGE/LlNlbGVjdGVkU3RhbmRhcmRQcm9ncmFtc0NvdW50PT0xKT8nUHJvZ3JhbSc6J1Byb2dyYW1zJ319IHNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvdW50ZXJcIj57e3Byb2dyYW1EYXRhPy5BbGxTdGFuZGFyZFByb2dyYW1zQ291bnR9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XG4gICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImZpbHRlci1jYXJkXCIgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVUYWIgPT0gJ2ludGVybmFsX2NvbnRyb2xzJ1wiIChjbGljayk9XCJjaGFuZ2VUYWJQcm9ncmFtKCdpbnRlcm5hbF9jb250cm9scycpXCI+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsZWZ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bGFiZWw+SU5URVJOQUwgQ09OVFJPTFM8L2xhYmVsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPHAgKm5nSWY9XCJwcm9ncmFtRGF0YT8uU2VsZWN0ZWRJbnRlcm5hbENvbnRyb2xzUHJvZ3JhbXNDb3VudD4gMFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7cHJvZ3JhbURhdGE/LlNlbGVjdGVkSW50ZXJuYWxDb250cm9sc1Byb2dyYW1zQ291bnR9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7KHByb2dyYW1EYXRhPy5TZWxlY3RlZEludGVybmFsQ29udHJvbHNQcm9ncmFtc0NvdW50PT0xKT8nUHJvZ3JhbSc6J1Byb2dyYW1zJ319IHNlbGVjdGVkXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNvdW50ZXJcIj57e3Byb2dyYW1EYXRhPy5BbGxJbnRlcm5hbENvbnRyb2xzUHJvZ3JhbXNDb3VudH19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PiAtLT5cbiAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwiZmlsdGVyLWNhcmRcIiBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZVRhYiA9PSAnb3RoZXJzJ1wiIChjbGljayk9XCJjaGFuZ2VUYWJQcm9ncmFtKCdvdGhlcnMnKVwiPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGVmdFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGxhYmVsPk9USEVSUzwvbGFiZWw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8cCAqbmdJZj1cInByb2dyYW1EYXRhPy5TZWxlY3RlZE90aGVyc1Byb2dyYW1zQ291bnQ+IDBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e3Byb2dyYW1EYXRhPy5TZWxlY3RlZE90aGVyc1Byb2dyYW1zQ291bnR9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7KHByb2dyYW1EYXRhPy5TZWxlY3RlZE90aGVyc1Byb2dyYW1zQ291bnQ9PTEpPydQcm9ncmFtJzonUHJvZ3JhbXMnfX0gc2VsZWN0ZWRcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY291bnRlclwiPnt7cHJvZ3JhbURhdGE/LkFsbE90aGVyc1Byb2dyYW1zQ291bnR9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJsaW5rLXBvbGljeS1zZWFyY2ggdngtbWItMlwiPlxuICAgICAgICA8aSBjbGFzcz1cImljb25zIHZ4LWZzLTEyXCI+JiN4ZTkwYjs8L2k+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cIlNlYXJjaCBQcm9ncmFtc1wiXG4gICAgICAgICAgI3NlYXJjaFByb2dyYW1cbiAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwic2VhcmNoQnkoJGV2ZW50LnRhcmdldC52YWx1ZSwgJ3Byb2dyYW1zJylcIlxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG4gICAgICA8dnVpLXBhZ2luYXRpb25cbiAgICAgICAgKm5nSWY9XCIhbG9hZGVyICYmIHByb2dyYW1EYXRhLnRvdGFsUGFnZXMgPiAxXCJcbiAgICAgICAgW2Zyb21dPVwicHJvZ3JhbURhdGEuZnJvbVwiXG4gICAgICAgIFt0b109XCJwcm9ncmFtRGF0YS50b1wiXG4gICAgICAgIFt0b3RhbF09XCJwcm9ncmFtRGF0YS50b3RhbFJlY29yZHNcIlxuICAgICAgICBbc2hvd1BhZ2VEZXRhaWxdPVwidHJ1ZVwiXG4gICAgICAgIFt0b3RhbFBhZ2VdPVwicHJvZ3JhbURhdGEudG90YWxQYWdlc1wiXG4gICAgICAgIFtjdXJyZW50UGFnZV09XCJwcm9ncmFtRGF0YS5jdXJyZW50UGFnZVwiXG4gICAgICAgIFtwYWdlSW5TaW5nbGVWaWV3XT1cIjVcIlxuICAgICAgICAocGFnZUNoYW5nZWQpPVwiY2hhbmdlUGFnZSgkZXZlbnQsICdwcm9ncmFtcycpXCJcbiAgICAgID5cbiAgICAgIDwvdnVpLXBhZ2luYXRpb24+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwicHJvZ3JhbS1saXN0aW5nLXBhcnQgdngtbWItNFwiXG4gICAgICAgIFtjbGFzcy53aXRoLXBhZ2luYXRpb25dPVwiIWxvYWRlciAmJiBwcm9ncmFtRGF0YS50b3RhbFBhZ2VzID4gMVwiXG4gICAgICA+XG4gICAgICAgIDxhcHAtbm8tZGF0YVxuICAgICAgICAgICpuZ0lmPVwicHJvZ3JhbURhdGE/LmRhdGE/Lmxlbmd0aCA9PSAwICYmICFsb2FkZXJcIlxuICAgICAgICAgIFtub0RhdGFJbWFnZV09XCJBU1NFVFMuc2VhcmNoX2RhdGFcIlxuICAgICAgICAgIFtub0RhdGFUZXh0XT1cIidObyBkYXRhIHRvIGRpc3BsYXknXCJcbiAgICAgICAgPjwvYXBwLW5vLWRhdGE+XG5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIGNsYXNzPVwicHJvZ3JhbS1saXN0aW5nLWl0ZW1cIlxuICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiXG4gICAgICAgICAgICBzZWxlY3RlZFZhbHVlcz8ucHJvZ3JhbT8uY2F0ZWdvcnlfaWQgPT0gcHJvZ3JhbT8uY2F0ZWdvcnlfaWRcbiAgICAgICAgICBcIlxuICAgICAgICAgICpuZ0Zvcj1cImxldCBwcm9ncmFtIG9mIHByb2dyYW1EYXRhLmRhdGE7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICA+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJ0YWJsZS1yb3cgbWFpbi1saXN0XCJcbiAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiXG4gICAgICAgICAgICAgIHNlbGVjdGVkVmFsdWVzPy5wcm9ncmFtPy5jYXRlZ29yeV9pZCA9PSBwcm9ncmFtPy5jYXRlZ29yeV9pZFxuICAgICAgICAgICAgXCJcbiAgICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCJwcm9ncmFtPy5wcm9ncmFtUmVwb3J0RXhpc3RzID09IDBcIlxuICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdFByb2dyYW0odHJ1ZSwgcHJvZ3JhbSlcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gc2VyaWFsXCI+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cInNyLW5vXCJcbiAgICAgICAgICAgICAgICBbYXBwVG9vbHRpcF09XCJpICsgcHJvZ3JhbURhdGEuZnJvbVwiXG4gICAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcbiAgICAgICAgICAgICAgICBkZWxheT1cIjBcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJibGFja1wiXG4gICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyBpICsgcHJvZ3JhbURhdGEuZnJvbSB9fVxuICAgICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgICA8YXBwLWNzLXJhZGlvXG4gICAgICAgICAgICAgICAgW25hbWVdPVwiJ3BvbGljeU5hbWUnXCJcbiAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJcbiAgICAgICAgICAgICAgICAgIHNlbGVjdGVkVmFsdWVzPy5wcm9ncmFtPy5jYXRlZ29yeV9pZCA9PSBwcm9ncmFtPy5jYXRlZ29yeV9pZFxuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgKGNoZWNrZWRFdmVudCk9XCJzZWxlY3RQcm9ncmFtKCRldmVudC50YXJnZXQuY2hlY2tlZCwgcHJvZ3JhbSlcIlxuICAgICAgICAgICAgICA+PC9hcHAtY3MtcmFkaW8+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gbmFtZVwiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFtZS1pbm5lclwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYW1lLXdpdGgtY291bnRcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgICAgIGFwcFRvb2x0aXA9XCJ7eyBwcm9ncmFtPy5uYW1lIHwgdG9vbHRpcFZhbGlkYXRpb24gfX1cIlxuICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiXG4gICAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJibGFja1wiXG4gICAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgcHJvZ3JhbT8ubmFtZSB9fVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJsaW5rLXBvbGljeS1mbG9hdGluZy1iYXIgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWJldHdlZW4gdngtcC0zXCJcbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxpbmstcG9saWN5LWZsb2F0aW5nLWJhci1sZWZ0IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImNoaXBDb250YWluZXIgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1wbC0yIHZ4LXByLTJcIlxuICAgICAgICAgICAgKm5nSWY9XCJzZWxlY3RlZFZhbHVlcz8ucHJvZ3JhbT8ubmFtZVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGlcbiAgICAgICAgICAgICAgY2xhc3M9XCJpY29ucyBjcm9zcyB2eC1mcy0xMCB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1yLTFcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwicmVtb3ZlKCdwcm9ncmFtcycsICcnKVwiXG4gICAgICAgICAgICAgID4mI3hlOWFlOzwvaVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJjaGlwTmFtZSB2eC1mcy0xMSB2eC1sYWJlbC10eHRcIlxuICAgICAgICAgICAgICBbYXBwVG9vbHRpcF09XCJzZWxlY3RlZFZhbHVlcz8ucHJvZ3JhbT8ubmFtZVwiXG4gICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbS1sZWZ0XCJcbiAgICAgICAgICAgICAgZGVsYXk9XCIwXCJcbiAgICAgICAgICAgICAgdHlwZT1cImJsYWNrXCJcbiAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwiZmFsc2VcIlxuICAgICAgICAgICAgICA+e3sgc2VsZWN0ZWRWYWx1ZXM/LnByb2dyYW0/Lm5hbWUgfX08L3NwYW5cbiAgICAgICAgICAgID5cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImNoaXAgdngtcGwtMiB2eC1wci0yIHZ4LXR4dC1ibHVlIHZ4LWZzLTEyIHZ4LWxoLTYgdngtbXItMVwiICpuZ0lmPVwic2VsZWN0ZWRWYWx1ZXM/LnByb2dyYW0/Lm5hbWVcIj48aSBjbGFzcz1cImljb25zIHZ4LW1yLTFcIiAoY2xpY2spPVwicmVtb3ZlKCdwcm9ncmFtcycsJycpXCI+JiN4ZTlhZTs8L2k+e3tzZWxlY3RlZFZhbHVlcz8ucHJvZ3JhbT8ubmFtZX19PC9kaXY+IC0tPlxuICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cInZ4LWZzLTEyIHZ4LWZ3LTUwMCB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1sLTJcIj5Qb2xpY3kgc2VsZWN0ZWQ8L2Rpdj4gLS0+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibGluay1wb2xpY3ktZmxvYXRpbmctYmFyLXJpZ2h0IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj5cbiAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAoY2xpY2spPVwiZ29CYWNrKClcIlxuICAgICAgICAgICAgY2xhc3M9XCJjYW5jZWwtYnRuIHZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2UgdngtbS0wIHZ4LW1yLTIgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlciB2eC10eHQtcmVkXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICBDQU5DRUxcbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8IS0tIDxidXR0b24gKGNsaWNrKT1cInNhdmVDaGFuZ2VzKCdwcm9ncmFtcycpXCIgW2NsYXNzLmRpc2FibGVkXT1cIiFzZWxlY3RlZFZhbHVlcz8ucHJvZ3JhbT8ubmFtZVwiIGNsYXNzPVwid2hpdGUtYnRuIHZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2UgdngtbS0wIHZ4LW1yLTEgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlciB2eC10eHQtYmx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgTElOSyBDQVRFR09SSUVTIEFORCBSRVNQT05TSUJJTElUSUVTPC9idXR0b24+IC0tPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJzYXZlQ2hhbmdlcygncHJvZ3JhbXMnKVwiXG4gICAgICAgICAgICBbY2xhc3MuZGlzYWJsZWRdPVwiIXNlbGVjdGVkVmFsdWVzPy5wcm9ncmFtPy5uYW1lXCJcbiAgICAgICAgICAgIGNsYXNzPVwibmV4dC1idG4gdngtZnMtMTEgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZSB2eC1tLTAgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlciB2eC10eHQtd2hpdGVcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIExpbmsgPGkgY2xhc3M9XCJpY29ucyB2eC1tbC0yXCI+JiN4ZTkxZTs8L2k+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInByb2dyYW0tbGlzdGluZy1jb25maXJtYXRpb25cIlxuICAgICAgKm5nSWY9XCJkaXNwbGF5Q29uZmlybWF0aW9uTWVzc2FnZVwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbmZpcm1hdGlvbi10b3BcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImljb24tYmxvY2tcIj48aSBjbGFzcz1cImljb25zXCI+JiN4ZTkzMDs8L2k+PC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0XCI+XG4gICAgICAgICAgWW91IGhhdmUgb3B0ZWQgdG8gbGluayBhbGwgdGhlIHJlc3BvbnNpYmlsaXRpZXMgdW5kZXIgdGhlIHNlbGVjdGVkXG4gICAgICAgICAgcHJvZ3JhbSBcInt7IHNlbGVjdGVkVmFsdWVzPy5wcm9ncmFtPy5uYW1lIH19XCIgYW5kIGl0J3Mgc3ViLWNhdGVnb3JpZXMuXG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29uZmlybWF0aW9uLWJvdHRvbVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwibWVzc2FnZVwiPkFyZSB5b3Ugc3VyZSB5b3Ugd291bGQgbGlrZSB0byBwcm9jZWVkPzwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLWdyb3VwXCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm5vLWJ0blwiIChjbGljayk9XCJzYXZlQ2hhbmdlc0Zyb21Qcm9ncmFtKGZhbHNlKVwiPlxuICAgICAgICAgICAgTk9cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwieWVzLWJ0blwiIChjbGljayk9XCJzYXZlQ2hhbmdlc0Zyb21Qcm9ncmFtKHRydWUpXCI+XG4gICAgICAgICAgICBZRVNcbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImN1cnJlbnRMaXN0ID09ICdjYXRlZ29yaWVzJ1wiPlxuICAgIDxkaXZcbiAgICAgIGNsYXNzPVwibGluay1wb2xpY3ktaGVhZCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1wbC00IHZ4LXByLTRcIlxuICAgID5cbiAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xNCB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIChjbGljayk9XCJnb0JhY2soJ2NhdGVnb3JpZXMnKVwiXG4gICAgICAgICAgY2xhc3M9XCJiYWNrLWJ0biB2eC1mcy0xNCB2eC1mdy01MDAgdngtbGFibGUtdHh0IHZ4LXAtMCB2eC1tci0yIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIlxuICAgICAgICA+XG4gICAgICAgICAgPGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5MWQ7PC9pPlxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgU2VsZWN0IHByb2dyYW0gY2F0ZWdvcmllcyB0byBsaW5rIHdpdGggdGhpcyBwb2xpY3lcbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJsaW5rLXBvbGljeS1ib2R5XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwibGluay1wb2xpY3ktc2VhcmNoIHZ4LW1iLTJcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJpY29ucyB2eC1mcy0xMlwiPiYjeGU5MGI7PC9pPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgcGxhY2Vob2xkZXI9XCJTZWFyY2ggcHJvZ3JhbSBjYXRlZ29yaWVzXCJcbiAgICAgICAgICAjc2VhcmNoQ2F0ZWdvcnlcbiAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwic2VhcmNoQnkoJGV2ZW50LnRhcmdldC52YWx1ZSwgJ2NhdGVnb3JpZXMnKVwiXG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDx2dWktcGFnaW5hdGlvblxuICAgICAgICAqbmdJZj1cIiFsb2FkZXIgJiYgc3ViQ2F0ZWdvcmllc0xpc3QudG90YWxQYWdlID4gMVwiXG4gICAgICAgIFtmcm9tXT1cInN1YkNhdGVnb3JpZXNMaXN0LmZyb21cIlxuICAgICAgICBbdG9dPVwic3ViQ2F0ZWdvcmllc0xpc3QudG9cIlxuICAgICAgICBbdG90YWxdPVwic3ViQ2F0ZWdvcmllc0xpc3QudG90YWxSZWNvcmRzXCJcbiAgICAgICAgW3Nob3dQYWdlRGV0YWlsXT1cInRydWVcIlxuICAgICAgICBbdG90YWxQYWdlXT1cInN1YkNhdGVnb3JpZXNMaXN0LnRvdGFsUGFnZVwiXG4gICAgICAgIFtjdXJyZW50UGFnZV09XCJzdWJDYXRlZ29yaWVzTGlzdC5jdXJyZW50UGFnZVwiXG4gICAgICAgIFtwYWdlSW5TaW5nbGVWaWV3XT1cIjVcIlxuICAgICAgICAocGFnZUNoYW5nZWQpPVwiY2hhbmdlUGFnZSgkZXZlbnQsICdwcm9ncmFtcycpXCJcbiAgICAgID5cbiAgICAgIDwvdnVpLXBhZ2luYXRpb24+XG5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJsaW5rLXBvbGljeS10YWJsZSB2eC1tYi00XCJcbiAgICAgICAgW2NsYXNzLndpdGgtcGFnaW5hdGlvbl09XCIhbG9hZGVyICYmIHN1YkNhdGVnb3JpZXNMaXN0LnRvdGFsUGFnZSA+IDFcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxvYWRlciAmJiBzdWJDYXRlZ29yaWVzTGlzdC5kYXRhPy5sZW5ndGggPiAwXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLWhlYWRlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLXJvd1wiPlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gdngtZnMtMTAgdngtZnctNTAwIHZ4LWxhYmVsLXR4dCB2eC1saC01IHZ4LXR0LXVwcGVyY2FzZSB2eC1wbC0xIHZ4LXByLTEgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciBzZXJpYWxcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgI1xuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGFibGUtY29sdW1uIHZ4LWZzLTEwIHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHQgdngtbGgtNSB2eC10dC11cHBlcmNhc2UgdngtcGwtMSB2eC1wci0xIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgY2F0ZWdvcnktbmFtZVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBDQVRFR09SSUVTXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRhYmxlLWJvZHlcIj5cbiAgICAgICAgICAgIDwhLS0gd2hlbiBjaGVja2JveCB3YXMgY2hlY2tlZCB0aGVuIGFjdGl2ZSBjbGFzcyB3YXMgdHJ1ZSAtLT5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJ0YWJsZS1yb3dcIlxuICAgICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cIlxuICAgICAgICAgICAgICAgIHNlbGVjdGVkSWRzLmNhdGVnb3JpZXMuaW5jbHVkZXMoY2F0ZWdvcnkuY2F0ZWdvcnlfaWQpXG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjYXRlZ29yeSBvZiBzdWJDYXRlZ29yaWVzTGlzdC5kYXRhOyBsZXQgaSA9IGluZGV4XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGFibGUtY29sdW1uIHZ4LXBsLTEgdngtcHItMSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHNlcmlhbFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNyLW5vXCJcbiAgICAgICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cImkgKyBzdWJDYXRlZ29yaWVzTGlzdC5mcm9tXCJcbiAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXG4gICAgICAgICAgICAgICAgICBkZWxheT1cIjBcIlxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJsYWNrXCJcbiAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHt7IGkgKyBzdWJDYXRlZ29yaWVzTGlzdC5mcm9tIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHZ1aS1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkSWRzLmNhdGVnb3JpZXMuaW5jbHVkZXMoY2F0ZWdvcnkuY2F0ZWdvcnlfaWQpXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJzZWxlY3RDYXRlZ29yeSgkZXZlbnQudGFyZ2V0LmNoZWNrZWQsIGNhdGVnb3J5KVwiXG4gICAgICAgICAgICAgICAgPjwvdnVpLWNoZWNrYm94PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGFibGUtY29sdW1uIHZ4LXBsLTEgdngtcHItMSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIGNhdGVnb3J5LW5hbWVcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtYmxvY2sgdngtdy0xMDBcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2YWx1ZSB2eC1mcy0xMiB2eC1sYWJlbC10eHRcIlxuICAgICAgICAgICAgICAgICAgICBbYXBwVG9vbHRpcF09XCJjYXRlZ29yeT8uaXRlbV9uYW1lIHwgdG9vbHRpcFZhbGlkYXRpb25cIlxuICAgICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiXG4gICAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiXG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJibGFja1wiXG4gICAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAge3sgY2F0ZWdvcnk/Lml0ZW1fbmFtZSB9fVxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxhcHAtbm8tZGF0YVxuICAgICAgICAgICpuZ0lmPVwiIWxvYWRlciAmJiBzdWJDYXRlZ29yaWVzTGlzdC5kYXRhPy5sZW5ndGggPT0gMFwiXG4gICAgICAgICAgW25vRGF0YUltYWdlXT1cIkFTU0VUUy5zZWFyY2hfZGF0YVwiXG4gICAgICAgICAgW25vRGF0YVRleHRdPVwiJ05vIGRhdGEgdG8gZGlzcGxheSdcIlxuICAgICAgICA+PC9hcHAtbm8tZGF0YT5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwibGluay1wb2xpY3ktZmxvYXRpbmctYmFyIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuIHZ4LXAtM1wiXG4gICAgICA+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJsaW5rLXBvbGljeS1mbG9hdGluZy1iYXItbGVmdCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XG4gICAgICAgICAgPGRpdlxuICAgICAgICAgICAgY2xhc3M9XCJjaGlwQ29udGFpbmVyIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtcGwtMiB2eC1wci0yXCJcbiAgICAgICAgICAgICpuZ0lmPVwic2VsZWN0ZWRWYWx1ZXM/LmNhdGVnb3JpZXM/Lmxlbmd0aCA+IDBcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgIGNsYXNzPVwiaWNvbnMgY3Jvc3MgdngtZnMtMTAgdngtcGFyYWdyYXBoLXR4dCB2eC1tci0xXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZSgnY2F0ZWdvcmllcycsIHNlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzWzBdKVwiXG4gICAgICAgICAgICAgID4mI3hlOWFlOzwvaVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJjaGlwTmFtZSB2eC1mcy0xMSB2eC1sYWJlbC10eHRcIlxuICAgICAgICAgICAgICBbYXBwVG9vbHRpcF09XCJzZWxlY3RlZFZhbHVlcz8uY2F0ZWdvcmllc1swXT8uaXRlbV9uYW1lXCJcbiAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tLWxlZnRcIlxuICAgICAgICAgICAgICBkZWxheT1cIjBcIlxuICAgICAgICAgICAgICB0eXBlPVwiYmxhY2tcIlxuICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJmYWxzZVwiXG4gICAgICAgICAgICAgID57eyBzZWxlY3RlZFZhbHVlcz8uY2F0ZWdvcmllc1swXT8uaXRlbV9uYW1lIH19PC9zcGFuXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGNsYXNzPVwiY291bnRCdG4gdngtZnMtOSB2eC1mdy01MDAgdngtdHh0LXdoaXRlIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1jZW50ZXIgdngtbGgtNFwiXG4gICAgICAgICAgICAgIGFwcFBvcG92ZXJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInByb2dyYW1Db3VudC5wb3BvdmVyKClcIlxuICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJsZWZ0XCJcbiAgICAgICAgICAgICAgKm5nSWY9XCJzZWxlY3RlZFZhbHVlcz8uY2F0ZWdvcmllcz8ubGVuZ3RoID4gMVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICt7eyBzZWxlY3RlZFZhbHVlcz8uY2F0ZWdvcmllcz8uc2xpY2UoMSkubGVuZ3RoIH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cInNlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzPy5zbGljZSgxKS5sZW5ndGhcIlxuICAgICAgICAgICAgY2xhc3M9XCJ2eC1mcy0xMiB2eC1mdy01MDAgdngtcGFyYWdyYXBoLXR4dCB2eC1tbC0yXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICB7e1xuICAgICAgICAgICAgICBzZWxlY3RlZFZhbHVlcz8uY2F0ZWdvcmllcz8uc2xpY2UoMSkubGVuZ3RoID09PSAxXG4gICAgICAgICAgICAgICAgPyBcIlByb2dyYW0gY2F0ZWdvcnlcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkXCJcbiAgICAgICAgICAgICAgICA6IFwiUHJvZ3JhbSBjYXRlZ29yaWVzIHNlbGVjdGVkXCJcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGFwcC1wb3BvdmVyICNwcm9ncmFtQ291bnQ+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2YtYWN0aW9uLWxpc3RcIj5cbiAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cbiAgICAgICAgICAgICAgICA8bGlcbiAgICAgICAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICAgICAgICBsZXQgc2VsZWN0ZWRDYXRlZ29yeSBvZiBzZWxlY3RlZFZhbHVlcz8uY2F0ZWdvcmllcz8uc2xpY2UoMSlcbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YXRhci1jYXJkXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpY29ucyBjcm9zcy1idG4gdngtZnMtMTIgdngtcGFyYWdyYXBoLXR4dCB2eC1tci0yXCJcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwicmVtb3ZlKCdjYXRlZ29yaWVzJywgc2VsZWN0ZWRDYXRlZ29yeSlcIlxuICAgICAgICAgICAgICAgICAgICAgID4mI3hlOWFlOzwvaVxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj57eyBzZWxlY3RlZENhdGVnb3J5Py5pdGVtX25hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICA8L3VsPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9hcHAtcG9wb3Zlcj5cblxuICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cImNoaXAgdngtcGwtMiB2eC1wci0yIHZ4LXR4dC1ibHVlIHZ4LWZzLTEyIHZ4LWxoLTYgdngtbXItMVwiICpuZ0lmPVwic2VsZWN0ZWRWYWx1ZXMuY2F0ZWdvcmllcy5sZW5ndGg+MFwiPjxpIChjbGljayk9XCJyZW1vdmUoJ2NhdGVnb3JpZXMnLHNlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzWzBdKVwiIGNsYXNzPVwiaWNvbnMgdngtbXItMVwiPiYjeGU5YWU7PC9pPiB7e3NlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzWzBdPy5pdGVtX25hbWV9fTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2VsZWN0ZWRWYWx1ZXMuY2F0ZWdvcmllcy5sZW5ndGg+MVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImNvdW50IHZ4LWZzLTEyIHZ4LWZ3LTUwMCB2eC10eHQtd2hpdGUgdngtcC0wIHZ4LXBsLTEgdngtcHItMSB2eC1tLTAgdngtbWwtMSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktY2VudGVyXCIgdmNQb3BvdmVyIChjbGljayk9XCJwcm9ncmFtQ291bnQucG9wb3ZlcigpXCIgcG9zaXRpb249XCJsZWZ0XCI+K3t7c2VsZWN0ZWRWYWx1ZXM/LmNhdGVnb3JpZXM/LnNsaWNlKDEpLmxlbmd0aH19PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTIgdngtZnctNTAwIHZ4LXBhcmFncmFwaC10eHQgdngtbWwtMlwiPnt7KHNlbGVjdGVkVmFsdWVzPy5jYXRlZ29yaWVzPy5zbGljZSgxKT8ubGVuZ3RoPT0xKT8nQ2F0ZWdvcnkgc2VsZWN0ZWQnOidDYXRlZ29yaWVzIHNlbGVjdGVkJ319PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YXBwLXBvcG92ZXIgI3Byb2dyYW1Db3VudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2YtYWN0aW9uLWxpc3RcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHVsIGNsYXNzPVwiYWN0aW9uLWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgc2VsZWN0ZWRDYXRlZ29yeSBvZiBzZWxlY3RlZFZhbHVlcz8uY2F0ZWdvcmllcz8uc2xpY2UoMSlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyLWNhcmRcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29ucyBjcm9zcy1idG4gdngtZnMtMTIgdngtdHh0LWJsdWUgdngtbXItMlwiIChjbGljayk9XCJyZW1vdmUoJ2NhdGVnb3JpZXMnLHNlbGVjdGVkQ2F0ZWdvcnkpXCI+JiN4ZTlhZTs8L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidmFsdWVcIj57e3NlbGVjdGVkQ2F0ZWdvcnk/Lml0ZW1fbmFtZX19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9saT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvYXBwLXBvcG92ZXI+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPiAtLT5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJsaW5rLXBvbGljeS1mbG9hdGluZy1iYXItcmlnaHQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJnb0JhY2soJ2NhdGVnb3JpZXMnKVwiXG4gICAgICAgICAgICBjbGFzcz1cImNhbmNlbC1idG4gdngtZnMtMTEgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktY2VudGVyIHZ4LXR4dC1yZWRcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIENBTkNFTFxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIChjbGljayk9XCJzYXZlQ2hhbmdlcygnY2F0ZWdvcmllcycpXCJcbiAgICAgICAgICAgIFtjbGFzcy5kaXNhYmxlZF09XCIhc2VsZWN0ZWRWYWx1ZXM/LmNhdGVnb3JpZXM/Lmxlbmd0aFwiXG4gICAgICAgICAgICBjbGFzcz1cIm5leHQtYnRuIHZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC10dC11cHBlcmNhc2UgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWNlbnRlciB2eC10eHQtd2hpdGUgdngtbWwtNVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgQWRkIDxpIGNsYXNzPVwiaWNvbnMgdngtbWwtMlwiPiYjeGU5MWU7PC9pPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiY3VycmVudExpc3QgPT0gJ3Jlc3BvbnNpYmlsaXRpZXMnXCI+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJsaW5rLXBvbGljeS1oZWFkIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuIHZ4LXBsLTQgdngtcHItNFwiXG4gICAgPlxuICAgICAgPGRpdiBjbGFzcz1cInZ4LWZzLTE0IHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKGNsaWNrKT1cImdvQmFjaygncmVzcG9uc2liaWxpdGllcycpXCJcbiAgICAgICAgICBjbGFzcz1cImJhY2stYnRuIHZ4LWZzLTE0IHZ4LWZ3LTUwMCB2eC1sYWJsZS10eHQgdngtcC0wIHZ4LW1yLTIgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiXG4gICAgICAgID5cbiAgICAgICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTkxZDs8L2k+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgICBTZWxlY3QgUmVzcG9uc2liaWxpdGllcyB0byBsaW5rIHdpdGggdGhpcyBwb2xpY3lcbiAgICAgIDwvZGl2PlxuICAgICAgPCEtLSA8ZGl2IGNsYXNzPVwicGFnZS10aXRsZSB2eC1mcy0xNCB2eC1mdy01MDAgdngtbGFiZWwtdHh0XCI+U2VsZWN0IFJlc3BvbnNpYmlsaXRpZXMgdG8gbGluayB3aXRoIHRoaXMgcG9saWN5IDwvZGl2PiAtLT5cblxuICAgICAgPCEtLSA8YnV0dG9uICAoY2xpY2spPVwiZ29CYWNrKCdyZXNwb25zaWJpbGl0aWVzJylcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYmFjay1idG4gdngtZnMtMTQgdngtZnctNTAwIHZ4LWxhYmVsLXR4dCB2eC10dC11cHBlcmNhc2UgdngtcC0wIHZ4LW0tMCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+PGlcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpY29ucyB2eC1tci0xXCI+JiN4ZTkxZDs8L2k+IEJBQ0s8L2J1dHRvbj4gLS0+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImxpbmstcG9saWN5LWJvZHlcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJsaW5rLXBvbGljeS1zZWFyY2ggdngtbWItMlwiPlxuICAgICAgICA8aSBjbGFzcz1cImljb25zIHZ4LWZzLTEyXCI+JiN4ZTkwYjs8L2k+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICBwbGFjZWhvbGRlcj1cIlNlYXJjaCBSZXNwb25zaWJpbGl0aWVzXCJcbiAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwic2VhcmNoQnkoJGV2ZW50LnRhcmdldC52YWx1ZSwgJ3Jlc3BvbnNpYmlsaXRpZXMnKVwiXG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDx2dWktcGFnaW5hdGlvblxuICAgICAgICAqbmdJZj1cIiFsb2FkZXIgJiYgcmVzcG9uc2liaWxpdGllc0xpc3QudG90YWxQYWdlID4gMVwiXG4gICAgICAgIFtmcm9tXT1cInJlc3BvbnNpYmlsaXRpZXNMaXN0LmZyb21cIlxuICAgICAgICBbdG9dPVwicmVzcG9uc2liaWxpdGllc0xpc3QudG9cIlxuICAgICAgICBbdG90YWxdPVwicmVzcG9uc2liaWxpdGllc0xpc3QudG90YWxSZWNvcmRzXCJcbiAgICAgICAgW3Nob3dQYWdlRGV0YWlsXT1cInRydWVcIlxuICAgICAgICBbdG90YWxQYWdlXT1cInJlc3BvbnNpYmlsaXRpZXNMaXN0LnRvdGFsUGFnZVwiXG4gICAgICAgIFtjdXJyZW50UGFnZV09XCJyZXNwb25zaWJpbGl0aWVzTGlzdC5jdXJyZW50UGFnZVwiXG4gICAgICAgIFtwYWdlSW5TaW5nbGVWaWV3XT1cIjVcIlxuICAgICAgICAocGFnZUNoYW5nZWQpPVwiY2hhbmdlUGFnZSgkZXZlbnQsICdyZXNwb25zaWJpbGl0aWVzJylcIlxuICAgICAgPlxuICAgICAgPC92dWktcGFnaW5hdGlvbj5cblxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cImxpbmstcG9saWN5LXRhYmxlIHZ4LW1iLTRcIlxuICAgICAgICBbY2xhc3Mud2l0aC1wYWdpbmF0aW9uXT1cIiFsb2FkZXIgJiYgc3ViQ2F0ZWdvcmllc0xpc3QudG90YWxQYWdlID4gMVwiXG4gICAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbG9hZGVyICYmIHJlc3BvbnNpYmlsaXRpZXNMaXN0LmRhdGE/Lmxlbmd0aCA+IDBcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtaGVhZGVyXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGFibGUtcm93XCI+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cInRhYmxlLWNvbHVtbiB2eC1mcy0xMCB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LWxoLTUgdngtdHQtdXBwZXJjYXNlIHZ4LXBsLTEgdngtcHItMSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHNlcmlhbFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAjXG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ0YWJsZS1jb2x1bW4gdngtZnMtMTAgdngtZnctNTAwIHZ4LWxhYmVsLXR4dCB2eC1saC01IHZ4LXR0LXVwcGVyY2FzZSB2eC1wbC0xIHZ4LXByLTEgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciBjYXRlZ29yeS1uYW1lXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIFJFU1BPTlNJQkxJVElFU1xuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1ib2R5XCI+XG4gICAgICAgICAgICA8IS0tIHdoZW4gY2hlY2tib3ggd2FzIGNoZWNrZWQgdGhlbiBhY3RpdmUgY2xhc3Mgd2FzIHRydWUgLS0+XG5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJ0YWJsZS1yb3dcIlxuICAgICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cIlxuICAgICAgICAgICAgICAgIHNlbGVjdGVkSWRzLnJlc3BvbnNpYmlsaXRpZXMuaW5jbHVkZXMocmVzcG9uc2liaWxpdHkuUmVwb3J0SWQpXG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICpuZ0Zvcj1cIlxuICAgICAgICAgICAgICAgIGxldCByZXNwb25zaWJpbGl0eSBvZiByZXNwb25zaWJpbGl0aWVzTGlzdC5kYXRhO1xuICAgICAgICAgICAgICAgIGxldCBpID0gaW5kZXhcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgIGNsYXNzPVwidGFibGUtY29sdW1uIHZ4LXBsLTEgdngtcHItMSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHNlcmlhbFwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInNyLW5vXCJcbiAgICAgICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cImkgKyByZXNwb25zaWJpbGl0aWVzTGlzdC5mcm9tXCJcbiAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXG4gICAgICAgICAgICAgICAgICBkZWxheT1cIjBcIlxuICAgICAgICAgICAgICAgICAgdHlwZT1cImJsYWNrXCJcbiAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIHt7IGkgKyByZXNwb25zaWJpbGl0aWVzTGlzdC5mcm9tIH19XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPHZ1aS1jaGVja2JveFxuICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdGVkSWRzLnJlc3BvbnNpYmlsaXRpZXMuaW5jbHVkZXMoXG4gICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2liaWxpdHkuUmVwb3J0SWRcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdFJlc3BvbnNpYmlsaXR5KCRldmVudC50YXJnZXQuY2hlY2tlZCwgcmVzcG9uc2liaWxpdHkpXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8L3Z1aS1jaGVja2JveD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICBjbGFzcz1cInRhYmxlLWNvbHVtbiB2eC1wbC0xIHZ4LXByLTEgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciBjYXRlZ29yeS1uYW1lXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwidmFsdWUgdngtZnMtMTIgdngtbGFiZWwtdHh0XCJcbiAgICAgICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cIlxuICAgICAgICAgICAgICAgICAgICByZXNwb25zaWJpbGl0eT8uY29udHJvbF9pZCArIHJlc3BvbnNpYmlsaXR5Py5SZXBvcnROYW1lXG4gICAgICAgICAgICAgICAgICAgICAgfCB0b29sdGlwVmFsaWRhdGlvblxuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbS1sZWZ0XCJcbiAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwiYmxhY2tcIlxuICAgICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwiZmFsc2VcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidngtZnMtMTAgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZSB2eC1tci0xXCI+e3tcbiAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2liaWxpdHk/LmNvbnRyb2xfaWRcbiAgICAgICAgICAgICAgICAgIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAge3sgcmVzcG9uc2liaWxpdHk/LlJlcG9ydE5hbWUgfX1cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwhLS0gPGRpdiBjbGFzcz1cInRhYmxlLWNvbHVtbiB2eC1wbC0xIHZ4LXByLTEgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciBjYXRlZ29yeS1uYW1lXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidmFsdWUgdngtZnMtMTIgdngtbGFiZWwtdHh0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbYXBwVG9vbHRpcF09XCInW0NJRC0yMDIxMDAwNV0gQS44LjEuMyBBY2NlcHRhYmxlIFVzZSBvZiBBc3NldHMnXCIgcGxhY2VtZW50PVwiYm90dG9tLWxlZnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiIHR5cGU9XCJibGFja1wiIFt0b29sdGlwTWFuZGF0b3J5XT1cImZhbHNlXCI+PHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2eC1mcy0xMCB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlIHZ4LW1yLTFcIj5bQ0lELTIwMjEwMDA1XTwvc3Bhbj4gQS44LjEuM1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFjY2VwdGFibGUgVXNlIG9mIEFzc2V0czwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj4gLS0+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPGFwcC1uby1kYXRhXG4gICAgICAgICAgKm5nSWY9XCIhbG9hZGVyICYmIHJlc3BvbnNpYmlsaXRpZXNMaXN0LmRhdGE/Lmxlbmd0aCA9PSAwXCJcbiAgICAgICAgICBbbm9EYXRhSW1hZ2VdPVwiQVNTRVRTLnNlYXJjaF9kYXRhXCJcbiAgICAgICAgICBbbm9EYXRhVGV4dF09XCInTm8gZGF0YSB0byBkaXNwbGF5J1wiXG4gICAgICAgID48L2FwcC1uby1kYXRhPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwibGluay1wb2xpY3ktZmxvYXRpbmctYmFyIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuIHZ4LXAtMyB2eC1tdC0xXCJcbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxpbmstcG9saWN5LWZsb2F0aW5nLWJhci1sZWZ0IHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImNoaXBDb250YWluZXIgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1wbC0yIHZ4LXByLTJcIlxuICAgICAgICAgICAgKm5nSWY9XCJzZWxlY3RlZFZhbHVlcy5yZXNwb25zaWJpbGl0aWVzLmxlbmd0aCA+IDBcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgIGNsYXNzPVwiaWNvbnMgY3Jvc3MgdngtZnMtMTAgdngtcGFyYWdyYXBoLXR4dCB2eC1tci0xXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cIlxuICAgICAgICAgICAgICAgIHJlbW92ZSgncmVzcG9uc2liaWxpdGllcycsIHNlbGVjdGVkVmFsdWVzPy5yZXNwb25zaWJpbGl0aWVzWzBdKVxuICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICA+JiN4ZTlhZTs8L2lcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgIGNsYXNzPVwiY2hpcE5hbWUgdngtZnMtMTEgdngtbGFiZWwtdHh0XCJcbiAgICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwic2VsZWN0ZWRWYWx1ZXM/LnJlc3BvbnNpYmlsaXRpZXNbMF0/LlJlcG9ydE5hbWVcIlxuICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiXG4gICAgICAgICAgICAgIGRlbGF5PVwiMFwiXG4gICAgICAgICAgICAgIHR5cGU9XCJibGFja1wiXG4gICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgPnt7IHNlbGVjdGVkVmFsdWVzPy5yZXNwb25zaWJpbGl0aWVzWzBdPy5SZXBvcnROYW1lIH19PC9zcGFuXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgIGNsYXNzPVwiY291bnRCdG4gdngtZnMtOSB2eC1mdy01MDAgdngtdHh0LXdoaXRlIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1jZW50ZXIgdngtbGgtNFwiXG4gICAgICAgICAgICAgIGFwcFBvcG92ZXJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInJlc3BvbnNpYmlsaXRpZXNQb3BvdmVyLnBvcG92ZXIoKVwiXG4gICAgICAgICAgICAgIHBsYWNlbWVudD1cImxlZnRcIlxuICAgICAgICAgICAgICAqbmdJZj1cInNlbGVjdGVkVmFsdWVzLnJlc3BvbnNpYmlsaXRpZXMubGVuZ3RoID4gMVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICt7eyBzZWxlY3RlZFZhbHVlcz8ucmVzcG9uc2liaWxpdGllcz8uc2xpY2UoMSkubGVuZ3RoIH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDxhcHAtcG9wb3ZlciAjcmVzcG9uc2liaWxpdGllc1BvcG92ZXI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3Zi1hY3Rpb24tbGlzdFwiPlxuICAgICAgICAgICAgICAgIDx1bCBjbGFzcz1cImFjdGlvbi1pdGVtXCI+XG4gICAgICAgICAgICAgICAgICA8bGlcbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwiXG4gICAgICAgICAgICAgICAgICAgICAgbGV0IHNlbGVjdGVkcmVzIG9mIHNlbGVjdGVkVmFsdWVzPy5yZXNwb25zaWJpbGl0aWVzPy5zbGljZShcbiAgICAgICAgICAgICAgICAgICAgICAgIDFcbiAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhdmF0YXItY2FyZFwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImljb25zIGNyb3NzLWJ0biB2eC1mcy0xMiB2eC1wYXJhZ3JhcGgtdHh0IHZ4LW1yLTJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZSgncmVzcG9uc2liaWxpdGllcycsIHNlbGVjdGVkcmVzKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+JiN4ZTlhZTs8L2lcbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ2YWx1ZVwiPnt7IHNlbGVjdGVkcmVzPy5SZXBvcnROYW1lIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgPC91bD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2FwcC1wb3BvdmVyPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImxpbmstcG9saWN5LWZsb2F0aW5nLWJhci1yaWdodCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKGNsaWNrKT1cImdvQmFjaygncmVzcG9uc2liaWxpdGllcycpXCJcbiAgICAgICAgICAgIGNsYXNzPVwiY2FuY2VsLWJ0biB2eC1mcy0xMSB2eC1mdy01MDAgdngtdHQtdXBwZXJjYXNlIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1jZW50ZXIgdngtdHh0LXJlZFwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgQ0FOQ0VMXG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgKGNsaWNrKT1cInNhdmVDaGFuZ2VzKCdyZXNwb25zaWJpbGl0aWVzJylcIlxuICAgICAgICAgICAgW2NsYXNzLmRpc2FibGVkXT1cIiFzZWxlY3RlZFZhbHVlcz8ucmVzcG9uc2liaWxpdGllcz8ubGVuZ3RoXCJcbiAgICAgICAgICAgIGNsYXNzPVwibmV4dC1idG4gdngtZnMtMTEgdngtZnctNTAwIHZ4LXR0LXVwcGVyY2FzZSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktY2VudGVyIHZ4LXR4dC13aGl0ZSB2eC1tbC01XCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICBBREQgPGkgY2xhc3M9XCJpY29ucyB2eC1tbC0yXCI+JiN4ZTkxZTs8L2k+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuICA8YXBwLWxvYWRlci1pbmxpbmUgKm5nSWY9XCJsb2FkZXIgfHwgc3VibWlzc2lvbkxvYWRlclwiPjwvYXBwLWxvYWRlci1pbmxpbmU+XG48L2Rpdj5cbiJdfQ==
@@ -1,6 +1,6 @@
1
1
  import { Component, Input, Output, EventEmitter, } from '@angular/core';
2
2
  import { cloneDeep } from 'lodash';
3
- import { ASSETS } from '../../constants/assessts.constants';
3
+ import { ASSETS } from '../../constants/assets.constants';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "@angular/forms";
6
6
  import * as i2 from "@angular/common";
@@ -175,4 +175,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
175
175
  }], overseerIds: [{
176
176
  type: Input
177
177
  }] } });
178
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3duZXItbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL293bmVyLWxpc3Qvb3duZXItbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL293bmVyLWxpc3Qvb3duZXItbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxHQUdiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7Ozs7OztBQU01RCxNQUFNLE9BQU8sa0JBQWtCO0lBa0M3QjtRQWpDUyxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2Ysa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFDbkIsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNmLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBRWxCLGdCQUFXLEdBQUcsZ0JBQWdCLENBQUM7UUFDL0Isc0JBQWlCLEdBQUcsYUFBYSxDQUFDO1FBQ2xDLGVBQVUsR0FBVyxFQUFFLENBQUM7UUFDeEIsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFDMUIseUJBQW9CLEdBQVcsWUFBWSxDQUFDO1FBQzVDLFNBQUksR0FBVyxRQUFRLENBQUM7UUFDeEIsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNoQixpQkFBWSxHQUFHO1lBQ3RCLFlBQVk7WUFDWix3Q0FBd0M7U0FDekMsQ0FBQztRQUNPLGlCQUFZLEdBQUcsbUJB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bkluaXQsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgT25DaGFuZ2VzLFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBBU1NFVFMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvYXNzZXNzdHMuY29uc3RhbnRzJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1vd25lci1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL293bmVyLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9vd25lci1saXN0LmNvbXBvbmVudC5sZXNzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE93bmVyTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgdXNlcnNMaXN0ID0gW107XG4gIEBJbnB1dCgpIHNlbGVjdGVkVXNlcnMgPSBbXTtcbiAgQElucHV0KCkgdXNlcklkS2V5ID0gJyc7XG4gIEBJbnB1dCgpIGl0ZW1OYW1lS2V5ID0gJyc7XG4gIEBJbnB1dCgpIGl0ZW1FbWFpbEtleSA9ICcnO1xuICBASW5wdXQoKSBzaG93V29ya2Zsb3chOiBib29sZWFuO1xuICBASW5wdXQoKSBsaXN0SGVhZGluZyA9ICdTZWxlY3QgVXNlcihzKSc7XG4gIEBJbnB1dCgpIHNlYXJjaFBsYWNlaG9sZGVyID0gJ1NlYXJjaCBVc2VyJztcbiAgQElucHV0KCkgcGx1cmFsVGV4dDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHNpbmd1bGFyVGV4dDogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHJldmlld2VyV29ya2Zsb3dUeXBlOiBzdHJpbmcgPSAnU0VRVUVOVElBTCc7XG4gIEBJbnB1dCgpIG1vZGU6IHN0cmluZyA9ICdDUkVBVEUnO1xuICBASW5wdXQoKSBub0RhdGFUZXh0ID0gJyc7XG4gIEBJbnB1dCgpIHdvcmtmbG93TGlzdCA9IFtcbiAgICAnU0VRVUVOVElBTCcsXG4gICAgJ0FOWSBSRVZJRVdFUiBDQU4gTUFSSyBUSElTIEFTIFJFVklFV0VEJyxcbiAgXTtcbiAgQElucHV0KCkgd29ya2Zsb3dUZXh0ID0gJ1Jldmlld2VyIFdvcmtmbG93JztcbiAgQElucHV0KCkgZGlzYWJsZWRJZHM6IGFueSA9IFtdO1xuICBASW5wdXQoKSBub25SZW1vdmFibGVVc2Vyc0xpc3Q6IGFueSA9IFtdO1xuICBAT3V0cHV0KCkgc2F2ZVNlbGVjdGVkTGlzdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIGNsb3NlVXNlcnNMaXN0ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgcmV2aWV3ZXJXb3JrZmxvd1R5cGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBJbnB1dCgpIGZyb21SZXNwb25zaWJpbGl0eTogYW55O1xuICBASW5wdXQoKSBhc3NpZ25vcklkOiBhbnlbXSA9IFtdO1xuICBASW5wdXQoKSBhc3NpZ25lZUlkczogYW55W10gPSBbXTtcbiAgQElucHV0KCkgcmV2aWV3ZXJJZHM6IGFueVtdID0gW107XG4gIEBJbnB1dCgpIG92ZXJzZWVySWRzOiBhbnlbXSA9IFtdO1xuICBBU1NFVFMgPSBBU1NFVFM7XG4gIHNlYXJjaCA9ICcnO1xuICBzZWxlY3RlZElkczogYW55W10gPSBbXTtcbiAgYW5pbWF0aW9uID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuc2VsZWN0ZWRJZHMgPSB0aGlzLnNlbGVjdGVkVXNlcnMubWFwKChlbGU6IGFueSkgPT4ge1xuICAgICAgaWYgKGVsZVt0aGlzLnVzZXJJZEtleV0pIHtcbiAgICAgICAgcmV0dXJuIGVsZVt0aGlzLnVzZXJJZEtleV07XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBsZXQgZGlzYWJsZWRJZHMgPSBbLi4udGhpcy5kaXNhYmxlZElkcywgLi4udGhpcy5ub25SZW1vdmFibGVVc2Vyc0xpc3RdO1xuICAgIHRoaXMuZGlzYWJsZWRJZHMgPSBbLi4ubmV3IFNldChkaXNhYmxlZElkcyldO1xuXG4gICAgdGhpcy5hbmltYXRpb24gPSB0cnVlO1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5hbmltYXRpb24gPSBmYWxzZTtcbiAgICB9LCAzMDApO1xuICB9XG5cbiAgc2VsZWN0VXNlcih1c2VyOiBhbnksIG1vZGU6IGFueSkge1xuICAgIGlmIChtb2RlKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkSWRzLnB1c2godXNlcik7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5zZWxlY3RlZElkcy5maW5kSW5kZXgoXG4gICAgICAgIChlbGVtZW50OiBhbnkpID0+IGVsZW1lbnQgPT0gdXNlclxuICAgICAgKTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJZHMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICB9XG4gICAgdGhpcy5zZXRMaXN0KCk7XG4gIH1cblxuICBkZWxldGVFdmVudChldmVudDogYW55KSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLnNlbGVjdGVkSWRzLmZpbmRJbmRleChcbiAgICAgIChlbGVtZW50OiBhbnkpID0+IGVsZW1lbnQgPT0gZXZlbnRbdGhpcy51c2VySWRLZXldXG4gICAgKTtcbiAgICB0aGlzLnNlbGVjdGVkSWRzLnNwbGljZShpbmRleCwgMSk7XG4gICAgdGhpcy5zZXRMaXN0KCk7XG4gIH1cblxuICBzZWxlY3RBbGwobW9kZTogYW55KSB7XG4gICAgaWYgKG1vZGUpIHtcbiAgICAgIGxldCBsaXN0ID0gWy4uLnRoaXMudXNlcnNMaXN0XTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJZHMgPSBbXTtcbiAgICAgIGxpc3QuZm9yRWFjaCgoZWxlbWVudCkgPT4ge1xuICAgICAgICB0aGlzLnNlbGVjdGVkSWRzLnB1c2goZWxlbWVudFt0aGlzLnVzZXJJZEtleV0pO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJZHMgPSBbLi4udGhpcy5ub25SZW1vdmFibGVVc2Vyc0xpc3RdO1xuICAgIH1cbiAgICB0aGlzLnNldExpc3QoKTtcbiAgfVxuXG4gIHNldExpc3QoKSB7XG4gICAgY29uc3QgZGF0YTogYW55ID0gW107XG4gICAgY29uc3QgdXNlckxpc3QgPSBjbG9uZURlZXAodGhpcy51c2Vyc0xpc3QpO1xuICAgIGNvbnN0IHNlbGVjdGVkSWRzID0gY2xvbmVEZWVwKHRoaXMuc2VsZWN0ZWRJZHMpO1xuICAgIHNlbGVjdGVkSWRzLmZvckVhY2goKGVsZW1lbnQ6IGFueSkgPT4ge1xuICAgICAgY29uc3QgaW5kZXggPSB1c2VyTGlzdC5maW5kSW5kZXgoXG4gICAgICAgICh1c2VyOiBhbnkpID0+IHVzZXJbdGhpcy51c2VySWRLZXldID09IGVsZW1lbnRcbiAgICAgICk7XG4gICAgICBpZiAoaW5kZXggIT09IC0xKSB7XG4gICAgICAgIGRhdGEucHVzaCh1c2VyTGlzdFtpbmRleF0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIC8vIHVzZXJMaXN0LmZvckVhY2goKGVsZW1lbnQ6IGFueSkgPT4ge1xuICAgIC8vICAgaWYgKHNlbGVjdGVkSWRzLmluY2x1ZGVzKGVsZW1lbnRbdGhpcy51c2VySWRLZXldKSkge1xuICAgIC8vICAgICBkYXRhLnB1c2goZWxlbWVudCk7XG4gICAgLy8gICB9XG4gICAgLy8gfSk7XG4gICAgdGhpcy5zZWxlY3RlZFVzZXJzID0gZGF0YTtcbiAgfVxuXG4gIGNoZWNrU2VsZWN0QWxsKCkge1xuICAgIGNvbnN0IGRhdGEgPSB0aGlzLnVzZXJzTGlzdC5ldmVyeSgodXNlcjogYW55KSA9PlxuICAgICAgdGhpcy5zZWxlY3RlZElkcy5pbmNsdWRlcyh1c2VyW3RoaXMudXNlcklkS2V5XSlcbiAgICApO1xuICAgIHJldHVybiBkYXRhO1xuICB9XG5cbiAgc2F2ZShzZWxlY3RlZElkczogYW55KSB7XG4gICAgdGhpcy5zYXZlU2VsZWN0ZWRMaXN0LmVtaXQoc2VsZWN0ZWRJZHMpO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5jbG9zZVVzZXJzTGlzdC5lbWl0KCk7XG4gIH1cblxuICB3b3JrZmxvd1R5cGVDaGFuZ2VkKGV2ZW50OiBzdHJpbmcpIHtcbiAgICB0aGlzLnJldmlld2VyV29ya2Zsb3dUeXBlID0gZXZlbnQ7XG4gICAgdGhpcy5yZXZpZXdlcldvcmtmbG93VHlwZUNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImFkZC1yaXNrLW93bmVyLWxpc3RcIiBbY2xhc3MuYW5pbWF0ZV09XCJhbmltYXRpb25cIj5cbiAgPGRpdlxuICAgIGNsYXNzPVwiYWRkLXJpc2stb3duZXItbGlzdC1oZWFkIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuIHZ4LXBsLTQgdngtcHItNFwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTQgdngtZnctNTAwIHZ4LWxhYmVsLXR4dFwiPnt7IGxpc3RIZWFkaW5nIH19PC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiYWRkLXJpc2stb3duZXItbGlzdC1ib2R5XCI+XG4gICAgPGRpdiBjbGFzcz1cInNlYXJjaC1ibG9jayB2eC1tYi0yXCI+XG4gICAgICA8aSBjbGFzcz1cImljb25zXCI+JiN4ZTkwYjs8L2k+XG4gICAgICA8aW5wdXRcbiAgICAgICAgdHlwZT1cInRleHRcIlxuICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaFwiXG4gICAgICAgIFthdHRyLnBsYWNlaG9sZGVyXT1cInNlYXJjaFBsYWNlaG9sZGVyXCJcbiAgICAgIC8+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInVzZXJzTGlzdCB8IGZpbHRlciA6IHNlYXJjaCBhcyBzZWFyY2hMaXN0XCI+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYm9keS10b3AgdngtcGItNFwiXG4gICAgICAgICpuZ0lmPVwic2VhcmNoTGlzdD8ubGVuZ3RoID4gMCAmJiBzZWFyY2g/LnRyaW0oKT8ubGVuZ3RoID09PSAwXCJcbiAgICAgID5cbiAgICAgICAgPGFwcC1jcy1jaGVja2JveFxuICAgICAgICAgIFtuZ1ZhbHVlXT1cImNoZWNrU2VsZWN0QWxsKClcIlxuICAgICAgICAgIChuZ1ZhbHVlQ2hhbmdlKT1cInNlbGVjdEFsbCgkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxzdHJvbmc+e3tcbiAgICAgICAgICAgIGNoZWNrU2VsZWN0QWxsKGFjdGl2ZVRhYikgPyBcIkRlc2VsZWN0IEFsbFwiIDogXCJTZWxlY3QgQWxsXCJcbiAgICAgICAgICB9fTwvc3Ryb25nPlxuICAgICAgICA8L2FwcC1jcy1jaGVja2JveD5cbiAgICAgIDwvZGl2PlxuICAgICAgPHVsIGNsYXNzPVwib3duZXItbGlzdCB2eC1tYi00XCIgKm5nSWY9XCJzZWFyY2hMaXN0Lmxlbmd0aCA+IDBcIj5cbiAgICAgICAgPGxpXG4gICAgICAgICAgKm5nRm9yPVwibGV0IHVzZXIgb2Ygc2VhcmNoTGlzdFwiXG4gICAgICAgICAgW2FwcFRvb2x0aXBdPVwiXG4gICAgICAgICAgICB1c2VyXG4gICAgICAgICAgICAgIHwgdG9vbHRpcE1lc3NhZ2VcbiAgICAgICAgICAgICAgICA6IGZyb21SZXNwb25zaWJpbGl0eVxuICAgICAgICAgICAgICAgIDogcmV2aWV3ZXJJZHNcbiAgICAgICAgICAgICAgICA6IG92ZXJzZWVySWRzXG4gICAgICAgICAgICAgICAgOiBhc3NpZ25vcklkXG4gICAgICAgICAgICAgICAgOiBhc3NpZ25lZUlkc1xuICAgICAgICAgICAgICAgIDogJ215X21lbWJlcl9pZCdcbiAgICAgICAgICAgICAgICA6IGRpc2FibGVkSWRzPy5pbmNsdWRlcyh1c2VyW3VzZXJJZEtleV0pXG4gICAgICAgICAgXCJcbiAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b20tbGVmdFwiXG4gICAgICAgICAgZGVsYXk9XCIwXCJcbiAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxhcHAtY3MtY2hlY2tib3hcbiAgICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZElkcz8uaW5jbHVkZXModXNlclt1c2VySWRLZXldKVwiXG4gICAgICAgICAgICBbbmdWYWx1ZV09XCJzZWxlY3RlZElkcz8uaW5jbHVkZXModXNlclt1c2VySWRLZXldKVwiXG4gICAgICAgICAgICAobmdWYWx1ZUNoYW5nZSk9XCJzZWxlY3RVc2VyKHVzZXJbdXNlcklkS2V5XSwgJGV2ZW50KVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJuYW1lXCI+e3sgdXNlcltpdGVtTmFtZUtleV0gfX08L3NwYW4+XG4gICAgICAgICAgPC9hcHAtY3MtY2hlY2tib3g+XG4gICAgICAgIDwvbGk+XG4gICAgICA8L3VsPlxuICAgICAgPGFwcC1uby1kYXRhXG4gICAgICAgICpuZ0lmPVwic2VhcmNoTGlzdC5sZW5ndGggPT09IDBcIlxuICAgICAgICBbbm9EYXRhSW1hZ2VdPVwiQVNTRVRTLnNlYXJjaF9kYXRhXCJcbiAgICAgICAgW25vRGF0YVRleHRdPVwibm9EYXRhVGV4dD8ubGVuZ3RoID4gMCA/IG5vRGF0YVRleHQgOiAnTm8gVXNlcnMgRm91bmQnXCJcbiAgICAgID48L2FwcC1uby1kYXRhPlxuICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgPGFwcC1mbG9hdGluZy1iYXJcbiAgICAgIFtzZWxlY3RlZERhdGFdPVwic2VsZWN0ZWRVc2VycyB8IHNob3J0TWVyZ2UgOiBub25SZW1vdmFibGVVc2Vyc0xpc3RcIlxuICAgICAgW2Rpc3BsYXlFbGVtZW50S2V5XT1cIml0ZW1OYW1lS2V5XCJcbiAgICAgIFtlbGVtZW50SWRdPVwidXNlcklkS2V5XCJcbiAgICAgIFtub25SZW1vdmFibGVVc2Vyc0xpc3RdPVwibm9uUmVtb3ZhYmxlVXNlcnNMaXN0XCJcbiAgICAgIFtzaW5ndWxhclRleHRdPVwic2luZ3VsYXJUZXh0XCJcbiAgICAgIFtwbHVyYWxUZXh0XT1cInBsdXJhbFRleHRcIlxuICAgICAgKGNsb3NlRXZlbnQpPVwic2F2ZShzZWxlY3RlZElkcylcIlxuICAgICAgKGNsb3NlTGlzdCk9XCJjbG9zZSgpXCJcbiAgICAgIChkZWxldGVFdmVudCk9XCJkZWxldGVFdmVudCgkZXZlbnQpXCJcbiAgICAgICh3b3JrZmxvd1R5cGVDaGFuZ2VkKT1cIndvcmtmbG93VHlwZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgICBbc2hvd1dvcmtmbG93XT1cInNob3dXb3JrZmxvd1wiXG4gICAgICBbd29ya2Zsb3dUZXh0XT1cIndvcmtmbG93VGV4dFwiXG4gICAgICBbc2VsZWN0ZWRXb3JrZmxvd109XCJyZXZpZXdlcldvcmtmbG93VHlwZVwiXG4gICAgICBbd29ya2Zsb3dMaXN0XT1cIndvcmtmbG93TGlzdFwiXG4gICAgICBbbW9kZV09XCJtb2RlXCJcbiAgICAgIFt3b3JrZmxvd1BsYWNlSG9sZGVyXT1cIicnXCJcbiAgICAgIFtpc0Rpc2FibGVkXT1cInNlbGVjdGVkVXNlcnM/Lmxlbmd0aCA9PT0gMCB8fCB1c2Vyc0xpc3Q/Lmxlbmd0aCA9PT0gMFwiXG4gICAgPlxuICAgIDwvYXBwLWZsb2F0aW5nLWJhcj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
178
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3duZXItbGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL293bmVyLWxpc3Qvb3duZXItbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL293bmVyLWxpc3Qvb3duZXItbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUVULEtBQUssRUFDTCxNQUFNLEVBQ04sWUFBWSxHQUdiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDbkMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7Ozs7OztBQU0xRCxNQUFNLE9BQU8sa0JBQWtCO0lBa0M3QjtRQWpDUyxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2Ysa0JBQWEsR0FBRyxFQUFFLENBQUM7UUFDbkIsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNmLGdCQUFXLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBRWxCLGdCQUFXLEdBQUcsZ0JBQWdCLENBQUM7UUFDL0Isc0JBQWlCLEdBQUcsYUFBYSxDQUFDO1FBQ2xDLGVBQVUsR0FBVyxFQUFFLENBQUM7UUFDeEIsaUJBQVksR0FBVyxFQUFFLENBQUM7UUFDMUIseUJBQW9CLEdBQVcsWUFBWSxDQUFDO1FBQzVDLFNBQUksR0FBVyxRQUFRLENBQUM7UUFDeEIsZUFBVSxHQUFHLEVBQUUsQ0FBQztRQUNoQixpQkFBWSxHQUFHO1lBQ3RCLFlBQVk7WUFDWix3Q0FBd0M7U0FDekMsQ0FBQztRQUNPLGlCQUFZLEdBQUcsbUJB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bkluaXQsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIEV2ZW50RW1pdHRlcixcbiAgT25DaGFuZ2VzLFxuICBTaW1wbGVDaGFuZ2VzLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNsb25lRGVlcCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBBU1NFVFMgfSBmcm9tICcuLi8uLi9jb25zdGFudHMvYXNzZXRzLmNvbnN0YW50cyc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtb3duZXItbGlzdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9vd25lci1saXN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vb3duZXItbGlzdC5jb21wb25lbnQubGVzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBPd25lckxpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHVzZXJzTGlzdCA9IFtdO1xuICBASW5wdXQoKSBzZWxlY3RlZFVzZXJzID0gW107XG4gIEBJbnB1dCgpIHVzZXJJZEtleSA9ICcnO1xuICBASW5wdXQoKSBpdGVtTmFtZUtleSA9ICcnO1xuICBASW5wdXQoKSBpdGVtRW1haWxLZXkgPSAnJztcbiAgQElucHV0KCkgc2hvd1dvcmtmbG93ITogYm9vbGVhbjtcbiAgQElucHV0KCkgbGlzdEhlYWRpbmcgPSAnU2VsZWN0IFVzZXIocyknO1xuICBASW5wdXQoKSBzZWFyY2hQbGFjZWhvbGRlciA9ICdTZWFyY2ggVXNlcic7XG4gIEBJbnB1dCgpIHBsdXJhbFRleHQ6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSBzaW5ndWxhclRleHQ6IHN0cmluZyA9ICcnO1xuICBASW5wdXQoKSByZXZpZXdlcldvcmtmbG93VHlwZTogc3RyaW5nID0gJ1NFUVVFTlRJQUwnO1xuICBASW5wdXQoKSBtb2RlOiBzdHJpbmcgPSAnQ1JFQVRFJztcbiAgQElucHV0KCkgbm9EYXRhVGV4dCA9ICcnO1xuICBASW5wdXQoKSB3b3JrZmxvd0xpc3QgPSBbXG4gICAgJ1NFUVVFTlRJQUwnLFxuICAgICdBTlkgUkVWSUVXRVIgQ0FOIE1BUksgVEhJUyBBUyBSRVZJRVdFRCcsXG4gIF07XG4gIEBJbnB1dCgpIHdvcmtmbG93VGV4dCA9ICdSZXZpZXdlciBXb3JrZmxvdyc7XG4gIEBJbnB1dCgpIGRpc2FibGVkSWRzOiBhbnkgPSBbXTtcbiAgQElucHV0KCkgbm9uUmVtb3ZhYmxlVXNlcnNMaXN0OiBhbnkgPSBbXTtcbiAgQE91dHB1dCgpIHNhdmVTZWxlY3RlZExpc3QgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBjbG9zZVVzZXJzTGlzdCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHJldmlld2VyV29ya2Zsb3dUeXBlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBASW5wdXQoKSBmcm9tUmVzcG9uc2liaWxpdHk6IGFueTtcbiAgQElucHV0KCkgYXNzaWdub3JJZDogYW55W10gPSBbXTtcbiAgQElucHV0KCkgYXNzaWduZWVJZHM6IGFueVtdID0gW107XG4gIEBJbnB1dCgpIHJldmlld2VySWRzOiBhbnlbXSA9IFtdO1xuICBASW5wdXQoKSBvdmVyc2VlcklkczogYW55W10gPSBbXTtcbiAgQVNTRVRTID0gQVNTRVRTO1xuICBzZWFyY2ggPSAnJztcbiAgc2VsZWN0ZWRJZHM6IGFueVtdID0gW107XG4gIGFuaW1hdGlvbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZElkcyA9IHRoaXMuc2VsZWN0ZWRVc2Vycy5tYXAoKGVsZTogYW55KSA9PiB7XG4gICAgICBpZiAoZWxlW3RoaXMudXNlcklkS2V5XSkge1xuICAgICAgICByZXR1cm4gZWxlW3RoaXMudXNlcklkS2V5XTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGxldCBkaXNhYmxlZElkcyA9IFsuLi50aGlzLmRpc2FibGVkSWRzLCAuLi50aGlzLm5vblJlbW92YWJsZVVzZXJzTGlzdF07XG4gICAgdGhpcy5kaXNhYmxlZElkcyA9IFsuLi5uZXcgU2V0KGRpc2FibGVkSWRzKV07XG5cbiAgICB0aGlzLmFuaW1hdGlvbiA9IHRydWU7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmFuaW1hdGlvbiA9IGZhbHNlO1xuICAgIH0sIDMwMCk7XG4gIH1cblxuICBzZWxlY3RVc2VyKHVzZXI6IGFueSwgbW9kZTogYW55KSB7XG4gICAgaWYgKG1vZGUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJZHMucHVzaCh1c2VyKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgaW5kZXggPSB0aGlzLnNlbGVjdGVkSWRzLmZpbmRJbmRleChcbiAgICAgICAgKGVsZW1lbnQ6IGFueSkgPT4gZWxlbWVudCA9PSB1c2VyXG4gICAgICApO1xuICAgICAgdGhpcy5zZWxlY3RlZElkcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbiAgICB0aGlzLnNldExpc3QoKTtcbiAgfVxuXG4gIGRlbGV0ZUV2ZW50KGV2ZW50OiBhbnkpIHtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuc2VsZWN0ZWRJZHMuZmluZEluZGV4KFxuICAgICAgKGVsZW1lbnQ6IGFueSkgPT4gZWxlbWVudCA9PSBldmVudFt0aGlzLnVzZXJJZEtleV1cbiAgICApO1xuICAgIHRoaXMuc2VsZWN0ZWRJZHMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICB0aGlzLnNldExpc3QoKTtcbiAgfVxuXG4gIHNlbGVjdEFsbChtb2RlOiBhbnkpIHtcbiAgICBpZiAobW9kZSkge1xuICAgICAgbGV0IGxpc3QgPSBbLi4udGhpcy51c2Vyc0xpc3RdO1xuICAgICAgdGhpcy5zZWxlY3RlZElkcyA9IFtdO1xuICAgICAgbGlzdC5mb3JFYWNoKChlbGVtZW50KSA9PiB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRJZHMucHVzaChlbGVtZW50W3RoaXMudXNlcklkS2V5XSk7XG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZElkcyA9IFsuLi50aGlzLm5vblJlbW92YWJsZVVzZXJzTGlzdF07XG4gICAgfVxuICAgIHRoaXMuc2V0TGlzdCgpO1xuICB9XG5cbiAgc2V0TGlzdCgpIHtcbiAgICBjb25zdCBkYXRhOiBhbnkgPSBbXTtcbiAgICBjb25zdCB1c2VyTGlzdCA9IGNsb25lRGVlcCh0aGlzLnVzZXJzTGlzdCk7XG4gICAgY29uc3Qgc2VsZWN0ZWRJZHMgPSBjbG9uZURlZXAodGhpcy5zZWxlY3RlZElkcyk7XG4gICAgc2VsZWN0ZWRJZHMuZm9yRWFjaCgoZWxlbWVudDogYW55KSA9PiB7XG4gICAgICBjb25zdCBpbmRleCA9IHVzZXJMaXN0LmZpbmRJbmRleChcbiAgICAgICAgKHVzZXI6IGFueSkgPT4gdXNlclt0aGlzLnVzZXJJZEtleV0gPT0gZWxlbWVudFxuICAgICAgKTtcbiAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgZGF0YS5wdXNoKHVzZXJMaXN0W2luZGV4XSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgLy8gdXNlckxpc3QuZm9yRWFjaCgoZWxlbWVudDogYW55KSA9PiB7XG4gICAgLy8gICBpZiAoc2VsZWN0ZWRJZHMuaW5jbHVkZXMoZWxlbWVudFt0aGlzLnVzZXJJZEtleV0pKSB7XG4gICAgLy8gICAgIGRhdGEucHVzaChlbGVtZW50KTtcbiAgICAvLyAgIH1cbiAgICAvLyB9KTtcbiAgICB0aGlzLnNlbGVjdGVkVXNlcnMgPSBkYXRhO1xuICB9XG5cbiAgY2hlY2tTZWxlY3RBbGwoKSB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMudXNlcnNMaXN0LmV2ZXJ5KCh1c2VyOiBhbnkpID0+XG4gICAgICB0aGlzLnNlbGVjdGVkSWRzLmluY2x1ZGVzKHVzZXJbdGhpcy51c2VySWRLZXldKVxuICAgICk7XG4gICAgcmV0dXJuIGRhdGE7XG4gIH1cblxuICBzYXZlKHNlbGVjdGVkSWRzOiBhbnkpIHtcbiAgICB0aGlzLnNhdmVTZWxlY3RlZExpc3QuZW1pdChzZWxlY3RlZElkcyk7XG4gIH1cblxuICBjbG9zZSgpIHtcbiAgICB0aGlzLmNsb3NlVXNlcnNMaXN0LmVtaXQoKTtcbiAgfVxuXG4gIHdvcmtmbG93VHlwZUNoYW5nZWQoZXZlbnQ6IHN0cmluZykge1xuICAgIHRoaXMucmV2aWV3ZXJXb3JrZmxvd1R5cGUgPSBldmVudDtcbiAgICB0aGlzLnJldmlld2VyV29ya2Zsb3dUeXBlQ2hhbmdlLmVtaXQoZXZlbnQpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYWRkLXJpc2stb3duZXItbGlzdFwiIFtjbGFzcy5hbmltYXRlXT1cImFuaW1hdGlvblwiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJhZGQtcmlzay1vd25lci1saXN0LWhlYWQgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWJldHdlZW4gdngtcGwtNCB2eC1wci00XCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xNCB2eC1mdy01MDAgdngtbGFiZWwtdHh0XCI+e3sgbGlzdEhlYWRpbmcgfX08L2Rpdj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJhZGQtcmlzay1vd25lci1saXN0LWJvZHlcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2VhcmNoLWJsb2NrIHZ4LW1iLTJcIj5cbiAgICAgIDxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTBiOzwvaT5cbiAgICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoXCJcbiAgICAgICAgW2F0dHIucGxhY2Vob2xkZXJdPVwic2VhcmNoUGxhY2Vob2xkZXJcIlxuICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidXNlcnNMaXN0IHwgZmlsdGVyIDogc2VhcmNoIGFzIHNlYXJjaExpc3RcIj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJib2R5LXRvcCB2eC1wYi00XCJcbiAgICAgICAgKm5nSWY9XCJzZWFyY2hMaXN0Py5sZW5ndGggPiAwICYmIHNlYXJjaD8udHJpbSgpPy5sZW5ndGggPT09IDBcIlxuICAgICAgPlxuICAgICAgICA8YXBwLWNzLWNoZWNrYm94XG4gICAgICAgICAgW25nVmFsdWVdPVwiY2hlY2tTZWxlY3RBbGwoKVwiXG4gICAgICAgICAgKG5nVmFsdWVDaGFuZ2UpPVwic2VsZWN0QWxsKCRldmVudClcIlxuICAgICAgICA+XG4gICAgICAgICAgPHN0cm9uZz57e1xuICAgICAgICAgICAgY2hlY2tTZWxlY3RBbGwoYWN0aXZlVGFiKSA/IFwiRGVzZWxlY3QgQWxsXCIgOiBcIlNlbGVjdCBBbGxcIlxuICAgICAgICAgIH19PC9zdHJvbmc+XG4gICAgICAgIDwvYXBwLWNzLWNoZWNrYm94PlxuICAgICAgPC9kaXY+XG4gICAgICA8dWwgY2xhc3M9XCJvd25lci1saXN0IHZ4LW1iLTRcIiAqbmdJZj1cInNlYXJjaExpc3QubGVuZ3RoID4gMFwiPlxuICAgICAgICA8bGlcbiAgICAgICAgICAqbmdGb3I9XCJsZXQgdXNlciBvZiBzZWFyY2hMaXN0XCJcbiAgICAgICAgICBbYXBwVG9vbHRpcF09XCJcbiAgICAgICAgICAgIHVzZXJcbiAgICAgICAgICAgICAgfCB0b29sdGlwTWVzc2FnZVxuICAgICAgICAgICAgICAgIDogZnJvbVJlc3BvbnNpYmlsaXR5XG4gICAgICAgICAgICAgICAgOiByZXZpZXdlcklkc1xuICAgICAgICAgICAgICAgIDogb3ZlcnNlZXJJZHNcbiAgICAgICAgICAgICAgICA6IGFzc2lnbm9ySWRcbiAgICAgICAgICAgICAgICA6IGFzc2lnbmVlSWRzXG4gICAgICAgICAgICAgICAgOiAnbXlfbWVtYmVyX2lkJ1xuICAgICAgICAgICAgICAgIDogZGlzYWJsZWRJZHM/LmluY2x1ZGVzKHVzZXJbdXNlcklkS2V5XSlcbiAgICAgICAgICBcIlxuICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbS1sZWZ0XCJcbiAgICAgICAgICBkZWxheT1cIjBcIlxuICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIlxuICAgICAgICA+XG4gICAgICAgICAgPGFwcC1jcy1jaGVja2JveFxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkSWRzPy5pbmNsdWRlcyh1c2VyW3VzZXJJZEtleV0pXCJcbiAgICAgICAgICAgIFtuZ1ZhbHVlXT1cInNlbGVjdGVkSWRzPy5pbmNsdWRlcyh1c2VyW3VzZXJJZEtleV0pXCJcbiAgICAgICAgICAgIChuZ1ZhbHVlQ2hhbmdlKT1cInNlbGVjdFVzZXIodXNlclt1c2VySWRLZXldLCAkZXZlbnQpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cIm5hbWVcIj57eyB1c2VyW2l0ZW1OYW1lS2V5XSB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2FwcC1jcy1jaGVja2JveD5cbiAgICAgICAgPC9saT5cbiAgICAgIDwvdWw+XG4gICAgICA8YXBwLW5vLWRhdGFcbiAgICAgICAgKm5nSWY9XCJzZWFyY2hMaXN0Lmxlbmd0aCA9PT0gMFwiXG4gICAgICAgIFtub0RhdGFJbWFnZV09XCJBU1NFVFMuc2VhcmNoX2RhdGFcIlxuICAgICAgICBbbm9EYXRhVGV4dF09XCJub0RhdGFUZXh0Py5sZW5ndGggPiAwID8gbm9EYXRhVGV4dCA6ICdObyBVc2VycyBGb3VuZCdcIlxuICAgICAgPjwvYXBwLW5vLWRhdGE+XG4gICAgPC9uZy1jb250YWluZXI+XG5cbiAgICA8YXBwLWZsb2F0aW5nLWJhclxuICAgICAgW3NlbGVjdGVkRGF0YV09XCJzZWxlY3RlZFVzZXJzIHwgc2hvcnRNZXJnZSA6IG5vblJlbW92YWJsZVVzZXJzTGlzdFwiXG4gICAgICBbZGlzcGxheUVsZW1lbnRLZXldPVwiaXRlbU5hbWVLZXlcIlxuICAgICAgW2VsZW1lbnRJZF09XCJ1c2VySWRLZXlcIlxuICAgICAgW25vblJlbW92YWJsZVVzZXJzTGlzdF09XCJub25SZW1vdmFibGVVc2Vyc0xpc3RcIlxuICAgICAgW3Npbmd1bGFyVGV4dF09XCJzaW5ndWxhclRleHRcIlxuICAgICAgW3BsdXJhbFRleHRdPVwicGx1cmFsVGV4dFwiXG4gICAgICAoY2xvc2VFdmVudCk9XCJzYXZlKHNlbGVjdGVkSWRzKVwiXG4gICAgICAoY2xvc2VMaXN0KT1cImNsb3NlKClcIlxuICAgICAgKGRlbGV0ZUV2ZW50KT1cImRlbGV0ZUV2ZW50KCRldmVudClcIlxuICAgICAgKHdvcmtmbG93VHlwZUNoYW5nZWQpPVwid29ya2Zsb3dUeXBlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgIFtzaG93V29ya2Zsb3ddPVwic2hvd1dvcmtmbG93XCJcbiAgICAgIFt3b3JrZmxvd1RleHRdPVwid29ya2Zsb3dUZXh0XCJcbiAgICAgIFtzZWxlY3RlZFdvcmtmbG93XT1cInJldmlld2VyV29ya2Zsb3dUeXBlXCJcbiAgICAgIFt3b3JrZmxvd0xpc3RdPVwid29ya2Zsb3dMaXN0XCJcbiAgICAgIFttb2RlXT1cIm1vZGVcIlxuICAgICAgW3dvcmtmbG93UGxhY2VIb2xkZXJdPVwiJydcIlxuICAgICAgW2lzRGlzYWJsZWRdPVwic2VsZWN0ZWRVc2Vycz8ubGVuZ3RoID09PSAwIHx8IHVzZXJzTGlzdD8ubGVuZ3RoID09PSAwXCJcbiAgICA+XG4gICAgPC9hcHAtZmxvYXRpbmctYmFyPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -1,5 +1,5 @@
1
1
  import { Component, EventEmitter, Input, Output } from '@angular/core';
2
- import { ASSETS } from 'projects/vx-workflow-engine/src/lib/constants/assessts.constants';
2
+ import { ASSETS } from '../../constants/assets.constants';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@angular/common";
5
5
  import * as i2 from "../../formgroup/cs-radio/cs-radio.component";
@@ -86,4 +86,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
86
86
  }], setPolicyAccessType: [{
87
87
  type: Output
88
88
  }] } });
89
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9saWN5LWFjY2Vzcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL3BvbGljeS1hY2Nlc3MvcG9saWN5LWFjY2Vzcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL3BvbGljeS1hY2Nlc3MvcG9saWN5LWFjY2Vzcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQzs7Ozs7O0FBTTFGLE1BQU0sT0FBTyxxQkFBcUI7SUFvQmhDO1FBbkJBLFdBQU0sR0FBRyxNQUFNLENBQUM7UUFFUCxxQkFBZ0IsR0FBVyxDQUFDLENBQUM7UUFFN0IsaUJBQVksR0FBUSxFQUFFLENBQUM7UUFDdkIsY0FBUyxHQUFRLEVBQUUsQ0FBQztRQUNwQixrQkFBYSxHQUFRLEVBQUUsQ0FBQztRQUN4QixtQkFBYyxHQUFRLEVBQUUsQ0FBQztRQUN6QixnQkFBVyxHQUFRLEVBQUUsQ0FBQztRQUN0QixvQkFBZSxHQUFRLEVBQUUsQ0FBQztRQUMxQixxQkFBZ0IsR0FBUSxFQUFFLENBQUM7UUFDM0IscUJBQWdCLEdBQVEsRUFBRSxDQUFDO1FBQzNCLDBCQUFxQixHQUFZLEtBQUssQ0FBQztRQUN0QyxVQUFLLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUMsbUJBQWMsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN2RCx3QkFBbUIsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN0RSwrQkFBMEIsR0FBWSxLQUFLLENBQUM7SUFHN0IsQ0FBQztJQUVoQixRQUFRLEtBQVUsQ0FBQztJQUVuQixjQUFjLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLElBQUksQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ3pCLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTtZQUNmLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxLQUFVO1FBQzFCLElBQUksS0FBSyxFQUFFLHFCQUFxQixFQUFFO1lBQ2hDLElBQUksQ0FBQywwQkFBMEIsR0FBRyxLQUFLLEVBQUUscUJBQXFCLENBQUM7WUFDL0QsSUFBSSxDQUFDLDBCQUEwQixHQUFHLEtBQUssQ0FBQztTQUN6QzthQUFNO1lBQ0wsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUN0RDtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsS0FBYztRQUN4QixJQUFJLENBQUMsMEJBQTBCLEdBQUcsS0FBSyxDQUFDO1FBQ3hDLElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUM7WUFDMUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUN0RDtJQUNILENBQUM7K0dBcERVLHFCQUFxQjttR0FBckIscUJBQXFCLGdqQkNQbEMsMHRNQXlKQTs7NEZEbEphLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxtQkFBbUI7MEVBT3BCLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0ksS0FBSztzQkFBZCxNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVNTRVRTIH0gZnJvbSAncHJvamVjdHMvdngtd29ya2Zsb3ctZW5naW5lL3NyYy9saWIvY29uc3RhbnRzL2Fzc2Vzc3RzLmNvbnN0YW50cyc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtcG9saWN5LWFjY2VzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9wb2xpY3ktYWNjZXNzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcG9saWN5LWFjY2Vzcy5jb21wb25lbnQubGVzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQb2xpY3lBY2Nlc3NDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBBU1NFVFMgPSBBU1NFVFM7XG5cbiAgQElucHV0KCkgcG9saWN5QWNjZXNzVHlwZTogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgU2VsZWN0ZWRDYXRlZ29yeSE6IGFueTtcbiAgQElucHV0KCkgb3JnVXNlcnNMaXN0OiBhbnkgPSBbXTtcbiAgQElucHV0KCkgZ3JvdXBMaXN0OiBhbnkgPSBbXTtcbiAgQElucHV0KCkgc2VsZWN0ZWRVc2VyczogYW55ID0gW107XG4gIEBJbnB1dCgpIHNlbGVjdGVkR3JvdXBzOiBhbnkgPSBbXTtcbiAgQElucHV0KCkgZGlzYWJsZWRJZHM6IGFueSA9IFtdO1xuICBASW5wdXQoKSB1c2Vyc0FjY2Vzc0xpc3Q6IGFueSA9IFtdO1xuICBASW5wdXQoKSBncm91cHNBY2Nlc3NMaXN0OiBhbnkgPSBbXTtcbiAgQElucHV0KCkgZGlzYWJsZWRHcm91cElkczogYW55ID0gW107XG4gIEBJbnB1dCgpIGZ1dHVyZVVzZXJzV2lsbFNlbGVjdDogYm9vbGVhbiA9IGZhbHNlO1xuICBAT3V0cHV0KCkgY2xvc2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgc2F2ZUNoZWNrUG9pbnQ6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgc2V0UG9saWN5QWNjZXNzVHlwZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIGlzQ29uZmlybWF0aW9uQWxlcnRWaXNpYmxlOiBib29sZWFuID0gZmFsc2U7XG4gIHNlbGVjdGVkVXNlcnNEZXRhaWxzT25OZXh0ITogYW55O1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG5cbiAgc2V0QWNjZXNzRmllbGQoZXZlbnQ6IG51bWJlcikge1xuICAgIHRoaXMucG9saWN5QWNjZXNzVHlwZSA9IGV2ZW50O1xuICAgIHRoaXMuc2VsZWN0ZWRHcm91cHMgPSBbXTtcbiAgICBpZiAoZXZlbnQgPT09IDEpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRVc2VycyA9IFtdO1xuICAgIH1cbiAgfVxuXG4gIGRpc2FibGVTZWxlY3RvcigpIHtcbiAgICB0aGlzLmNsb3NlLmVtaXQoKTtcbiAgfVxuXG4gIHNhdmVTZWxlY3RlZFVzZXJzKGV2ZW50OiBhbnkpIHtcbiAgICBpZiAoZXZlbnQ/LmZ1dHVyZVVzZXJzV2lsbFNlbGVjdCkge1xuICAgICAgdGhpcy5pc0NvbmZpcm1hdGlvbkFsZXJ0VmlzaWJsZSA9IGV2ZW50Py5mdXR1cmVVc2Vyc1dpbGxTZWxlY3Q7XG4gICAgICB0aGlzLnNlbGVjdGVkVXNlcnNEZXRhaWxzT25OZXh0ID0gZXZlbnQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2F2ZUNoZWNrUG9pbnQuZW1pdChldmVudCk7XG4gICAgICB0aGlzLnNldFBvbGljeUFjY2Vzc1R5cGUuZW1pdCh0aGlzLnBvbGljeUFjY2Vzc1R5cGUpO1xuICAgIH1cbiAgfVxuXG4gIHNhdmVDaGFuZ2VzKGV2ZW50OiBib29sZWFuKSB7XG4gICAgdGhpcy5pc0NvbmZpcm1hdGlvbkFsZXJ0VmlzaWJsZSA9IGZhbHNlO1xuICAgIGlmIChldmVudCkge1xuICAgICAgdGhpcy5zYXZlQ2hlY2tQb2ludC5lbWl0KHRoaXMuc2VsZWN0ZWRVc2Vyc0RldGFpbHNPbk5leHQpO1xuICAgICAgdGhpcy5zZXRQb2xpY3lBY2Nlc3NUeXBlLmVtaXQodGhpcy5wb2xpY3lBY2Nlc3NUeXBlKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJwb2xpY3ktYWNjZXNzLWRpYWxvZ1wiPlxuICA8ZGl2XG4gICAgY2xhc3M9XCJwb2xpY3ktYWNjZXNzLWRpYWxvZy1oZWFkIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuIHZ4LXBsLTQgdngtcHItNFwiXG4gID5cbiAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTQgdngtZnctNTAwIHZ4LWxhYmVsLXR4dFwiPlxuICAgICAgU3BlY2lmeSBQb2xpY3kgUG9ydGFsIEFjY2VzcyBUeXBlXG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwicG9saWN5LWFjY2Vzcy1kaWFsb2ctYm9keVwiPlxuICAgIDxkaXYgY2xhc3M9XCJwb2xpY3ktYWNjZXNzLWRpYWxvZy1ib2R5LWlubmVyXCI+XG4gICAgICA8IS0tIFN0ZXAgMSAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJhcHByb3ZlcnMtZm9ybS1ncm91cCB2eC1tYi0yXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xMSB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1tYi0xXCI+XG4gICAgICAgICAgU1RFUCAxOiBBQ0NFU1MgVFlQRSA8c3BhbiBjbGFzcz1cInZ4LWZzLTE0IHZ4LXR4dC1yZWRcIj4qPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuXCI+XG4gICAgICAgICAgPGFwcC1jcy1yYWRpb1xuICAgICAgICAgICAgW25hbWVdPVwiJ3BvbGljeUFjY2Vzc1R5cGUnXCJcbiAgICAgICAgICAgIFtjaGVja2VkXT1cInBvbGljeUFjY2Vzc1R5cGUgPT09IDBcIlxuICAgICAgICAgICAgKGNoZWNrZWRFdmVudCk9XCJzZXRBY2Nlc3NGaWVsZCgwKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cImFwcHJvdmFsLXR5cGUgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWJldHdlZW4gdngtcC0yIHZ4LXBsLTMgdngtcHItM1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cIkFTU0VUUy5zZWxlY3RfdXNlcnNcIiAvPlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwidngtZnMtMTEgdngtZnctNTAwIHZ4LXBhcmFncmFwaC10eHQgdngtdHQtdXBwZXJjYXNlXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICBFVkVSWU9ORSBXSE8gSEFTIEFDQ0VTUyBUTyBUSElTIFBPTElDWSBDQVRFR09SWVxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImljb25zIHZ4LWZzLTEyIHZ4LXR4dC1ibHVlIHZ4LW1sLTJcIlxuICAgICAgICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwiXG4gICAgICAgICAgICAgICAgICAgICdJZiBzZWxlY3RlZCwgdGhpcyBwb2xpY3kgd2lsbCBiZSB2aXNpYmxlIHRvIGFsbCB1c2VycyBzZWxlY3RlZCBhcyBhdXRob3JzLCBhcHByb3ZlcnMgYW5kIGNhdGVnb3J5IG93bmVycyBvZiB0aGUgcG9saWN5IGNhdGVnb3JpZXMgbGlua2VkIHdpdGggdGhpcyBwb2xpY3kuJ1xuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXG4gICAgICAgICAgICAgICAgICBkZWxheT1cIjBcIlxuICAgICAgICAgICAgICAgICAgdHlwZT1cIndoaXRlXCJcbiAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgPiYjeGU5MWY7PC9pXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtYmxvY2tcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNpcmNsZS1zZWxlY3Rpb25cIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29ucyBja2Vjay1zZWxlY3Rpb24gdngtZnMtMTZcIj4mI3hlOTQ5OzwvaT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2FwcC1jcy1yYWRpbz5cbiAgICAgICAgICA8YXBwLWNzLXJhZGlvXG4gICAgICAgICAgICBbbmFtZV09XCIncG9saWN5QWNjZXNzVHlwZSdcIlxuICAgICAgICAgICAgW2NoZWNrZWRdPVwicG9saWN5QWNjZXNzVHlwZSA9PT0gMVwiXG4gICAgICAgICAgICAoY2hlY2tlZEV2ZW50KT1cInNldEFjY2Vzc0ZpZWxkKDEpXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgIGNsYXNzPVwiYXBwcm92YWwtdHlwZSB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1wLTIgdngtcGwtMyB2eC1wci0zXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXJcIj5cbiAgICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwiQVNTRVRTLmV2ZXJ5b25lX2FzX3Blcl9jYXRlZ29yeVwiIC8+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ2eC1mcy0xMSB2eC1mdy01MDAgdngtcGFyYWdyYXBoLXR4dCB2eC10dC11cHBlcmNhc2VcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIFNFTEVDVCBVU0VSUyAmIEdST1VQU1xuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxpXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImljb25zIHZ4LWZzLTEyIHZ4LXR4dC1ibHVlIHZ4LW1sLTJcIlxuICAgICAgICAgICAgICAgICAgW2FwcFRvb2x0aXBdPVwiXG4gICAgICAgICAgICAgICAgICAgICdUaGlzIG9wdGlvbiBhbGxvd3MgeW91IHRvIHNwZWNpZnkgdXNlcnMgb3IgZ3JvdXBzIHRoYXQgY2FuIHZpZXcgdGhpcyBwb2xpY3ksIFRoaXMgaXMgdGhlIGxpc3Qgb2YgYWxsIHVzZXJzIHdpdGhpbiB5b3VyIFZDb21wbHkgYWNjb3VudC4nXG4gICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgcGxhY2VtZW50PVwiYm90dG9tXCJcbiAgICAgICAgICAgICAgICAgIGRlbGF5PVwiMFwiXG4gICAgICAgICAgICAgICAgICB0eXBlPVwid2hpdGVcIlxuICAgICAgICAgICAgICAgICAgW3Rvb2x0aXBNYW5kYXRvcnldPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgICA+JiN4ZTkxZjs8L2lcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZC1ibG9ja1wiPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2lyY2xlLXNlbGVjdGlvblwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb25zIGNrZWNrLXNlbGVjdGlvbiB2eC1mcy0xNlwiPiYjeGU5NDk7PC9pPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvYXBwLWNzLXJhZGlvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8IS0tIFN0ZXAgMiAtLT5cbiAgICAgIDxkaXYgY2xhc3M9XCJhcHByb3ZlcnMtZm9ybS1ncm91cCB2eC1tYi0yXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1mcy0xMSB2eC1mdy01MDAgdngtbGFiZWwtdHh0IHZ4LXR0LXVwcGVyY2FzZSB2eC1tYi0xXCI+XG4gICAgICAgICAgU1RFUCAyOiBTRUxFQ1QgVVNFUihTKSA8c3BhbiBjbGFzcz1cInZ4LWZzLTE0IHZ4LXR4dC1yZWRcIj4qPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFwcHJvdmVycy11c2VyLWdyb3VwXCI+XG4gICAgICAgICAgPHVzZXItZ3JvdXAtbGlzdFxuICAgICAgICAgICAgKm5nSWY9XCJwb2xpY3lBY2Nlc3NUeXBlID09PSAwXCJcbiAgICAgICAgICAgIFt1c2VybGlzdF09XCJvcmdVc2Vyc0xpc3RcIlxuICAgICAgICAgICAgW2dyb3VwRW5hYmxlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgIFtpc0dyb3VwVGFiU2hvd109XCJ0cnVlXCJcbiAgICAgICAgICAgIFtzZWxlY3RlZFVzZXJzXT1cInVzZXJzQWNjZXNzTGlzdFwiXG4gICAgICAgICAgICBbc2VsZWN0ZWRHcm91cHNdPVwiZ3JvdXBzQWNjZXNzTGlzdFwiXG4gICAgICAgICAgICBbZGlzYWJsZWRJZHNdPVwiZGlzYWJsZWRJZHNcIlxuICAgICAgICAgICAgW25vblJlbW92YWJsZVVzZXJJZHNdPVwiZGlzYWJsZWRJZHNcIlxuICAgICAgICAgICAgW25vblJlbW92YWJsZUdyb3VwSWRzXT1cImRpc2FibGVkR3JvdXBJZHNcIlxuICAgICAgICAgICAgW2dyb3VwTGlzdF09XCJncm91cHNBY2Nlc3NMaXN0XCJcbiAgICAgICAgICAgIFthbGxVc2VyU2VsZWN0ZWREaXNhYmxlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgIFtzaG93RnV0dXJlVXNlcnNTd2l0Y2hdPVwiZmFsc2VcIlxuICAgICAgICAgICAgW2lzQWxsRGlzYWJsZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICAoY2FuY2VsKT1cImRpc2FibGVTZWxlY3RvcigpXCJcbiAgICAgICAgICAgIChzYXZlKT1cInNhdmVTZWxlY3RlZFVzZXJzKCRldmVudClcIlxuICAgICAgICAgID48L3VzZXItZ3JvdXAtbGlzdD5cblxuICAgICAgICAgIDx1c2VyLWdyb3VwLWxpc3RcbiAgICAgICAgICAgICpuZ0lmPVwicG9saWN5QWNjZXNzVHlwZSA9PT0gMVwiXG4gICAgICAgICAgICBbdXNlcmxpc3RdPVwib3JnVXNlcnNMaXN0XCJcbiAgICAgICAgICAgIFtncm91cEVuYWJsZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbZ3JvdXBMaXN0XT1cImdyb3VwTGlzdFwiXG4gICAgICAgICAgICBbc2VsZWN0ZWRVc2Vyc109XCJzZWxlY3RlZFVzZXJzXCJcbiAgICAgICAgICAgIFtzZWxlY3RlZEdyb3Vwc109XCJzZWxlY3RlZEdyb3Vwc1wiXG4gICAgICAgICAgICBbc2hvd0Z1dHVyZVVzZXJzU3dpdGNoXT1cInRydWVcIlxuICAgICAgICAgICAgW2Z1dHVyZVVzZXJzV2lsbFNlbGVjdF09XCJmdXR1cmVVc2Vyc1dpbGxTZWxlY3RcIlxuICAgICAgICAgICAgKGNhbmNlbCk9XCJkaXNhYmxlU2VsZWN0b3IoKVwiXG4gICAgICAgICAgICAoc2F2ZSk9XCJzYXZlU2VsZWN0ZWRVc2VycygkZXZlbnQpXCJcbiAgICAgICAgICA+PC91c2VyLWdyb3VwLWxpc3Q+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2XG4gICAgY2xhc3M9XCJwb2xpY3ktYWNjZXNzLWRpYWxvZy1jb25maXJtYXRpb25cIlxuICAgICpuZ0lmPVwiaXNDb25maXJtYXRpb25BbGVydFZpc2libGVcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cImNvbmZpcm1hdGlvbi10b3BcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJpY29uLWJsb2NrXCI+PGkgY2xhc3M9XCJpY29uc1wiPiYjeGU5MzA7PC9pPjwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInRleHRcIj5cbiAgICAgICAgVGhlIHBvbGljaWVzIHRoYXQgeW91IGludGVuZCB0byBtYWtlIGFjY2Vzc2libGUgdG8gdGhlIGVudGlyZVxuICAgICAgICBvcmdhbml6YXRpb24gY2FuIGJlIGFkZGVkIHRvIHRoZSBwb2xpY3kgcG9ydGFsLiBJdCBpcyBsaWtlIGEgc2hhcmVkXG4gICAgICAgIGNhdGFsb2cgb2YgYWxsIGFjdGl2ZSAmIHVwZGF0ZWQgcG9saWNpZXMgdGhhdCBhbnkgbG9nZ2VkIGluIHVzZXIgY2FuXG4gICAgICAgIHJlYWQvIGRvd25sb2FkIGZvciByZWZlcmVuY2UuIEhlbmNlLCBpZiB0aGlzIG9wdGlvbiBpcyBlbmFibGVkLCBpdCBpc1xuICAgICAgICBub3QgbmVjZXNzYXJ5IGZvciB5b3UgdG8gc2V0IHVwIGFuIGF0dGVzdGF0aW9uIHNjaGVkdWxlIG9yIHNlbGVjdFxuICAgICAgICByZWFkZXJzIHRvIGF0dGVzdCB0aGUgcG9saWNpZXMuXG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29uZmlybWF0aW9uLWJvdHRvbVwiPlxuICAgICAgPGRpdiBjbGFzcz1cIm1lc3NhZ2VcIj5BcmUgeW91IHN1cmUgeW91IHdvdWxkIGxpa2UgdG8gcHJvY2VlZD88L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJidXR0b24tZ3JvdXBcIj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm5vLWJ0blwiIChjbGljayk9XCJzYXZlQ2hhbmdlcyhmYWxzZSlcIj5OTzwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwieWVzLWJ0blwiIChjbGljayk9XCJzYXZlQ2hhbmdlcyh0cnVlKVwiPllFUzwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjwhLS0gW3NlbGVjdGVkVXNlcnNdPVwicG9saWN5Rm9ybS5DQ0ZhaWxFbWFpbFwiXG5bc2VsZWN0ZWRHcm91cHNdPVwicG9saWN5Rm9ybS5DQ0ZhaWxFbWFpbEdyb3VwXCJcbihzYXZlKT1cInNhdmVTZWxlY3RlZExpc3QoJ2NjRmFpbCcsICRldmVudClcIiAtLT5cbiJdfQ==
89
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9saWN5LWFjY2Vzcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL3BvbGljeS1hY2Nlc3MvcG9saWN5LWFjY2Vzcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL3BvbGljeS1hY2Nlc3MvcG9saWN5LWFjY2Vzcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7Ozs7O0FBTTFELE1BQU0sT0FBTyxxQkFBcUI7SUFvQmhDO1FBbkJBLFdBQU0sR0FBRyxNQUFNLENBQUM7UUFFUCxxQkFBZ0IsR0FBVyxDQUFDLENBQUM7UUFFN0IsaUJBQVksR0FBUSxFQUFFLENBQUM7UUFDdkIsY0FBUyxHQUFRLEVBQUUsQ0FBQztRQUNwQixrQkFBYSxHQUFRLEVBQUUsQ0FBQztRQUN4QixtQkFBYyxHQUFRLEVBQUUsQ0FBQztRQUN6QixnQkFBVyxHQUFRLEVBQUUsQ0FBQztRQUN0QixvQkFBZSxHQUFRLEVBQUUsQ0FBQztRQUMxQixxQkFBZ0IsR0FBUSxFQUFFLENBQUM7UUFDM0IscUJBQWdCLEdBQVEsRUFBRSxDQUFDO1FBQzNCLDBCQUFxQixHQUFZLEtBQUssQ0FBQztRQUN0QyxVQUFLLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDOUMsbUJBQWMsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN2RCx3QkFBbUIsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUN0RSwrQkFBMEIsR0FBWSxLQUFLLENBQUM7SUFHN0IsQ0FBQztJQUVoQixRQUFRLEtBQVUsQ0FBQztJQUVuQixjQUFjLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLElBQUksQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ3pCLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTtZQUNmLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1NBQ3pCO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxLQUFVO1FBQzFCLElBQUksS0FBSyxFQUFFLHFCQUFxQixFQUFFO1lBQ2hDLElBQUksQ0FBQywwQkFBMEIsR0FBRyxLQUFLLEVBQUUscUJBQXFCLENBQUM7WUFDL0QsSUFBSSxDQUFDLDBCQUEwQixHQUFHLEtBQUssQ0FBQztTQUN6QzthQUFNO1lBQ0wsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDaEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUN0RDtJQUNILENBQUM7SUFFRCxXQUFXLENBQUMsS0FBYztRQUN4QixJQUFJLENBQUMsMEJBQTBCLEdBQUcsS0FBSyxDQUFDO1FBQ3hDLElBQUksS0FBSyxFQUFFO1lBQ1QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUM7WUFDMUQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUN0RDtJQUNILENBQUM7K0dBcERVLHFCQUFxQjttR0FBckIscUJBQXFCLGdqQkNQbEMsMHRNQXlKQTs7NEZEbEphLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxtQkFBbUI7MEVBT3BCLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBQ0ksS0FBSztzQkFBZCxNQUFNO2dCQUNHLGNBQWM7c0JBQXZCLE1BQU07Z0JBQ0csbUJBQW1CO3NCQUE1QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVNTRVRTIH0gZnJvbSAnLi4vLi4vY29uc3RhbnRzL2Fzc2V0cy5jb25zdGFudHMnO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXBvbGljeS1hY2Nlc3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vcG9saWN5LWFjY2Vzcy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3BvbGljeS1hY2Nlc3MuY29tcG9uZW50Lmxlc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUG9saWN5QWNjZXNzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQVNTRVRTID0gQVNTRVRTO1xuXG4gIEBJbnB1dCgpIHBvbGljeUFjY2Vzc1R5cGU6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIFNlbGVjdGVkQ2F0ZWdvcnkhOiBhbnk7XG4gIEBJbnB1dCgpIG9yZ1VzZXJzTGlzdDogYW55ID0gW107XG4gIEBJbnB1dCgpIGdyb3VwTGlzdDogYW55ID0gW107XG4gIEBJbnB1dCgpIHNlbGVjdGVkVXNlcnM6IGFueSA9IFtdO1xuICBASW5wdXQoKSBzZWxlY3RlZEdyb3VwczogYW55ID0gW107XG4gIEBJbnB1dCgpIGRpc2FibGVkSWRzOiBhbnkgPSBbXTtcbiAgQElucHV0KCkgdXNlcnNBY2Nlc3NMaXN0OiBhbnkgPSBbXTtcbiAgQElucHV0KCkgZ3JvdXBzQWNjZXNzTGlzdDogYW55ID0gW107XG4gIEBJbnB1dCgpIGRpc2FibGVkR3JvdXBJZHM6IGFueSA9IFtdO1xuICBASW5wdXQoKSBmdXR1cmVVc2Vyc1dpbGxTZWxlY3Q6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQE91dHB1dCgpIGNsb3NlOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHNhdmVDaGVja1BvaW50OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgQE91dHB1dCgpIHNldFBvbGljeUFjY2Vzc1R5cGU6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBpc0NvbmZpcm1hdGlvbkFsZXJ0VmlzaWJsZTogYm9vbGVhbiA9IGZhbHNlO1xuICBzZWxlY3RlZFVzZXJzRGV0YWlsc09uTmV4dCE6IGFueTtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gIHNldEFjY2Vzc0ZpZWxkKGV2ZW50OiBudW1iZXIpIHtcbiAgICB0aGlzLnBvbGljeUFjY2Vzc1R5cGUgPSBldmVudDtcbiAgICB0aGlzLnNlbGVjdGVkR3JvdXBzID0gW107XG4gICAgaWYgKGV2ZW50ID09PSAxKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkVXNlcnMgPSBbXTtcbiAgICB9XG4gIH1cblxuICBkaXNhYmxlU2VsZWN0b3IoKSB7XG4gICAgdGhpcy5jbG9zZS5lbWl0KCk7XG4gIH1cblxuICBzYXZlU2VsZWN0ZWRVc2VycyhldmVudDogYW55KSB7XG4gICAgaWYgKGV2ZW50Py5mdXR1cmVVc2Vyc1dpbGxTZWxlY3QpIHtcbiAgICAgIHRoaXMuaXNDb25maXJtYXRpb25BbGVydFZpc2libGUgPSBldmVudD8uZnV0dXJlVXNlcnNXaWxsU2VsZWN0O1xuICAgICAgdGhpcy5zZWxlY3RlZFVzZXJzRGV0YWlsc09uTmV4dCA9IGV2ZW50O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNhdmVDaGVja1BvaW50LmVtaXQoZXZlbnQpO1xuICAgICAgdGhpcy5zZXRQb2xpY3lBY2Nlc3NUeXBlLmVtaXQodGhpcy5wb2xpY3lBY2Nlc3NUeXBlKTtcbiAgICB9XG4gIH1cblxuICBzYXZlQ2hhbmdlcyhldmVudDogYm9vbGVhbikge1xuICAgIHRoaXMuaXNDb25maXJtYXRpb25BbGVydFZpc2libGUgPSBmYWxzZTtcbiAgICBpZiAoZXZlbnQpIHtcbiAgICAgIHRoaXMuc2F2ZUNoZWNrUG9pbnQuZW1pdCh0aGlzLnNlbGVjdGVkVXNlcnNEZXRhaWxzT25OZXh0KTtcbiAgICAgIHRoaXMuc2V0UG9saWN5QWNjZXNzVHlwZS5lbWl0KHRoaXMucG9saWN5QWNjZXNzVHlwZSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicG9saWN5LWFjY2Vzcy1kaWFsb2dcIj5cbiAgPGRpdlxuICAgIGNsYXNzPVwicG9saWN5LWFjY2Vzcy1kaWFsb2ctaGVhZCB2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktYmV0d2VlbiB2eC1wbC00IHZ4LXByLTRcIlxuICA+XG4gICAgPGRpdiBjbGFzcz1cInZ4LWZzLTE0IHZ4LWZ3LTUwMCB2eC1sYWJlbC10eHRcIj5cbiAgICAgIFNwZWNpZnkgUG9saWN5IFBvcnRhbCBBY2Nlc3MgVHlwZVxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBvbGljeS1hY2Nlc3MtZGlhbG9nLWJvZHlcIj5cbiAgICA8ZGl2IGNsYXNzPVwicG9saWN5LWFjY2Vzcy1kaWFsb2ctYm9keS1pbm5lclwiPlxuICAgICAgPCEtLSBTdGVwIDEgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXBwcm92ZXJzLWZvcm0tZ3JvdXAgdngtbWItMlwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTEgdngtZnctNTAwIHZ4LWxhYmVsLXR4dCB2eC10dC11cHBlcmNhc2UgdngtbWItMVwiPlxuICAgICAgICAgIFNURVAgMTogQUNDRVNTIFRZUEUgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xNCB2eC10eHQtcmVkXCI+Kjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyIHZ4LWp1c3RpZnktYmV0d2VlblwiPlxuICAgICAgICAgIDxhcHAtY3MtcmFkaW9cbiAgICAgICAgICAgIFtuYW1lXT1cIidwb2xpY3lBY2Nlc3NUeXBlJ1wiXG4gICAgICAgICAgICBbY2hlY2tlZF09XCJwb2xpY3lBY2Nlc3NUeXBlID09PSAwXCJcbiAgICAgICAgICAgIChjaGVja2VkRXZlbnQpPVwic2V0QWNjZXNzRmllbGQoMClcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgY2xhc3M9XCJhcHByb3ZhbC10eXBlIHZ4LWQtZmxleCB2eC1hbGlnbi1jZW50ZXIgdngtanVzdGlmeS1iZXR3ZWVuIHZ4LXAtMiB2eC1wbC0zIHZ4LXByLTNcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlclwiPlxuICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJBU1NFVFMuc2VsZWN0X3VzZXJzXCIgLz5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInZ4LWZzLTExIHZ4LWZ3LTUwMCB2eC1wYXJhZ3JhcGgtdHh0IHZ4LXR0LXVwcGVyY2FzZVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgRVZFUllPTkUgV0hPIEhBUyBBQ0NFU1MgVE8gVEhJUyBQT0xJQ1kgQ0FURUdPUllcbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8aVxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpY29ucyB2eC1mcy0xMiB2eC10eHQtYmx1ZSB2eC1tbC0yXCJcbiAgICAgICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cIlxuICAgICAgICAgICAgICAgICAgICAnSWYgc2VsZWN0ZWQsIHRoaXMgcG9saWN5IHdpbGwgYmUgdmlzaWJsZSB0byBhbGwgdXNlcnMgc2VsZWN0ZWQgYXMgYXV0aG9ycywgYXBwcm92ZXJzIGFuZCBjYXRlZ29yeSBvd25lcnMgb2YgdGhlIHBvbGljeSBjYXRlZ29yaWVzIGxpbmtlZCB3aXRoIHRoaXMgcG9saWN5LidcbiAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICBwbGFjZW1lbnQ9XCJib3R0b21cIlxuICAgICAgICAgICAgICAgICAgZGVsYXk9XCIwXCJcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJ3aGl0ZVwiXG4gICAgICAgICAgICAgICAgICBbdG9vbHRpcE1hbmRhdG9yeV09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgID4mI3hlOTFmOzwvaVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1kLWJsb2NrXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaXJjbGUtc2VsZWN0aW9uXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiaWNvbnMgY2tlY2stc2VsZWN0aW9uIHZ4LWZzLTE2XCI+JiN4ZTk0OTs8L2k+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9hcHAtY3MtcmFkaW8+XG4gICAgICAgICAgPGFwcC1jcy1yYWRpb1xuICAgICAgICAgICAgW25hbWVdPVwiJ3BvbGljeUFjY2Vzc1R5cGUnXCJcbiAgICAgICAgICAgIFtjaGVja2VkXT1cInBvbGljeUFjY2Vzc1R5cGUgPT09IDFcIlxuICAgICAgICAgICAgKGNoZWNrZWRFdmVudCk9XCJzZXRBY2Nlc3NGaWVsZCgxKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICBjbGFzcz1cImFwcHJvdmFsLXR5cGUgdngtZC1mbGV4IHZ4LWFsaWduLWNlbnRlciB2eC1qdXN0aWZ5LWJldHdlZW4gdngtcC0yIHZ4LXBsLTMgdngtcHItM1wiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ2eC1kLWZsZXggdngtYWxpZ24tY2VudGVyXCI+XG4gICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cIkFTU0VUUy5ldmVyeW9uZV9hc19wZXJfY2F0ZWdvcnlcIiAvPlxuICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwidngtZnMtMTEgdngtZnctNTAwIHZ4LXBhcmFncmFwaC10eHQgdngtdHQtdXBwZXJjYXNlXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICBTRUxFQ1QgVVNFUlMgJiBHUk9VUFNcbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8aVxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJpY29ucyB2eC1mcy0xMiB2eC10eHQtYmx1ZSB2eC1tbC0yXCJcbiAgICAgICAgICAgICAgICAgIFthcHBUb29sdGlwXT1cIlxuICAgICAgICAgICAgICAgICAgICAnVGhpcyBvcHRpb24gYWxsb3dzIHlvdSB0byBzcGVjaWZ5IHVzZXJzIG9yIGdyb3VwcyB0aGF0IGNhbiB2aWV3IHRoaXMgcG9saWN5LCBUaGlzIGlzIHRoZSBsaXN0IG9mIGFsbCB1c2VycyB3aXRoaW4geW91ciBWQ29tcGx5IGFjY291bnQuJ1xuICAgICAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgICAgIHBsYWNlbWVudD1cImJvdHRvbVwiXG4gICAgICAgICAgICAgICAgICBkZWxheT1cIjBcIlxuICAgICAgICAgICAgICAgICAgdHlwZT1cIndoaXRlXCJcbiAgICAgICAgICAgICAgICAgIFt0b29sdGlwTWFuZGF0b3J5XT1cInRydWVcIlxuICAgICAgICAgICAgICAgICAgPiYjeGU5MWY7PC9pXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInZ4LWQtYmxvY2tcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNpcmNsZS1zZWxlY3Rpb25cIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29ucyBja2Vjay1zZWxlY3Rpb24gdngtZnMtMTZcIj4mI3hlOTQ5OzwvaT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L2FwcC1jcy1yYWRpbz5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPCEtLSBTdGVwIDIgLS0+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXBwcm92ZXJzLWZvcm0tZ3JvdXAgdngtbWItMlwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidngtZnMtMTEgdngtZnctNTAwIHZ4LWxhYmVsLXR4dCB2eC10dC11cHBlcmNhc2UgdngtbWItMVwiPlxuICAgICAgICAgIFNURVAgMjogU0VMRUNUIFVTRVIoUykgPHNwYW4gY2xhc3M9XCJ2eC1mcy0xNCB2eC10eHQtcmVkXCI+Kjwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJhcHByb3ZlcnMtdXNlci1ncm91cFwiPlxuICAgICAgICAgIDx1c2VyLWdyb3VwLWxpc3RcbiAgICAgICAgICAgICpuZ0lmPVwicG9saWN5QWNjZXNzVHlwZSA9PT0gMFwiXG4gICAgICAgICAgICBbdXNlcmxpc3RdPVwib3JnVXNlcnNMaXN0XCJcbiAgICAgICAgICAgIFtncm91cEVuYWJsZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbaXNHcm91cFRhYlNob3ddPVwidHJ1ZVwiXG4gICAgICAgICAgICBbc2VsZWN0ZWRVc2Vyc109XCJ1c2Vyc0FjY2Vzc0xpc3RcIlxuICAgICAgICAgICAgW3NlbGVjdGVkR3JvdXBzXT1cImdyb3Vwc0FjY2Vzc0xpc3RcIlxuICAgICAgICAgICAgW2Rpc2FibGVkSWRzXT1cImRpc2FibGVkSWRzXCJcbiAgICAgICAgICAgIFtub25SZW1vdmFibGVVc2VySWRzXT1cImRpc2FibGVkSWRzXCJcbiAgICAgICAgICAgIFtub25SZW1vdmFibGVHcm91cElkc109XCJkaXNhYmxlZEdyb3VwSWRzXCJcbiAgICAgICAgICAgIFtncm91cExpc3RdPVwiZ3JvdXBzQWNjZXNzTGlzdFwiXG4gICAgICAgICAgICBbYWxsVXNlclNlbGVjdGVkRGlzYWJsZWRdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbc2hvd0Z1dHVyZVVzZXJzU3dpdGNoXT1cImZhbHNlXCJcbiAgICAgICAgICAgIFtpc0FsbERpc2FibGVkXT1cInRydWVcIlxuICAgICAgICAgICAgKGNhbmNlbCk9XCJkaXNhYmxlU2VsZWN0b3IoKVwiXG4gICAgICAgICAgICAoc2F2ZSk9XCJzYXZlU2VsZWN0ZWRVc2VycygkZXZlbnQpXCJcbiAgICAgICAgICA+PC91c2VyLWdyb3VwLWxpc3Q+XG5cbiAgICAgICAgICA8dXNlci1ncm91cC1saXN0XG4gICAgICAgICAgICAqbmdJZj1cInBvbGljeUFjY2Vzc1R5cGUgPT09IDFcIlxuICAgICAgICAgICAgW3VzZXJsaXN0XT1cIm9yZ1VzZXJzTGlzdFwiXG4gICAgICAgICAgICBbZ3JvdXBFbmFibGVkXT1cInRydWVcIlxuICAgICAgICAgICAgW2dyb3VwTGlzdF09XCJncm91cExpc3RcIlxuICAgICAgICAgICAgW3NlbGVjdGVkVXNlcnNdPVwic2VsZWN0ZWRVc2Vyc1wiXG4gICAgICAgICAgICBbc2VsZWN0ZWRHcm91cHNdPVwic2VsZWN0ZWRHcm91cHNcIlxuICAgICAgICAgICAgW3Nob3dGdXR1cmVVc2Vyc1N3aXRjaF09XCJ0cnVlXCJcbiAgICAgICAgICAgIFtmdXR1cmVVc2Vyc1dpbGxTZWxlY3RdPVwiZnV0dXJlVXNlcnNXaWxsU2VsZWN0XCJcbiAgICAgICAgICAgIChjYW5jZWwpPVwiZGlzYWJsZVNlbGVjdG9yKClcIlxuICAgICAgICAgICAgKHNhdmUpPVwic2F2ZVNlbGVjdGVkVXNlcnMoJGV2ZW50KVwiXG4gICAgICAgICAgPjwvdXNlci1ncm91cC1saXN0PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdlxuICAgIGNsYXNzPVwicG9saWN5LWFjY2Vzcy1kaWFsb2ctY29uZmlybWF0aW9uXCJcbiAgICAqbmdJZj1cImlzQ29uZmlybWF0aW9uQWxlcnRWaXNpYmxlXCJcbiAgPlxuICAgIDxkaXYgY2xhc3M9XCJjb25maXJtYXRpb24tdG9wXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaWNvbi1ibG9ja1wiPjxpIGNsYXNzPVwiaWNvbnNcIj4mI3hlOTMwOzwvaT48L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0XCI+XG4gICAgICAgIFRoZSBwb2xpY2llcyB0aGF0IHlvdSBpbnRlbmQgdG8gbWFrZSBhY2Nlc3NpYmxlIHRvIHRoZSBlbnRpcmVcbiAgICAgICAgb3JnYW5pemF0aW9uIGNhbiBiZSBhZGRlZCB0byB0aGUgcG9saWN5IHBvcnRhbC4gSXQgaXMgbGlrZSBhIHNoYXJlZFxuICAgICAgICBjYXRhbG9nIG9mIGFsbCBhY3RpdmUgJiB1cGRhdGVkIHBvbGljaWVzIHRoYXQgYW55IGxvZ2dlZCBpbiB1c2VyIGNhblxuICAgICAgICByZWFkLyBkb3dubG9hZCBmb3IgcmVmZXJlbmNlLiBIZW5jZSwgaWYgdGhpcyBvcHRpb24gaXMgZW5hYmxlZCwgaXQgaXNcbiAgICAgICAgbm90IG5lY2Vzc2FyeSBmb3IgeW91IHRvIHNldCB1cCBhbiBhdHRlc3RhdGlvbiBzY2hlZHVsZSBvciBzZWxlY3RcbiAgICAgICAgcmVhZGVycyB0byBhdHRlc3QgdGhlIHBvbGljaWVzLlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbmZpcm1hdGlvbi1ib3R0b21cIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJtZXNzYWdlXCI+QXJlIHlvdSBzdXJlIHlvdSB3b3VsZCBsaWtlIHRvIHByb2NlZWQ/PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYnV0dG9uLWdyb3VwXCI+XG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJuby1idG5cIiAoY2xpY2spPVwic2F2ZUNoYW5nZXMoZmFsc2UpXCI+Tk88L2J1dHRvbj5cbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cInllcy1idG5cIiAoY2xpY2spPVwic2F2ZUNoYW5nZXModHJ1ZSlcIj5ZRVM8L2J1dHRvbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48IS0tIFtzZWxlY3RlZFVzZXJzXT1cInBvbGljeUZvcm0uQ0NGYWlsRW1haWxcIlxuW3NlbGVjdGVkR3JvdXBzXT1cInBvbGljeUZvcm0uQ0NGYWlsRW1haWxHcm91cFwiXG4oc2F2ZSk9XCJzYXZlU2VsZWN0ZWRMaXN0KCdjY0ZhaWwnLCAkZXZlbnQpXCIgLS0+XG4iXX0=
@@ -1,4 +1,4 @@
1
- import { ASSETS } from '../../../constants/assessts.constants';
1
+ import { ASSETS } from '../../../constants/assets.constants';
2
2
  export const NO_DATA_FOUND_IMAGE = ASSETS.search_data;
3
3
  export const NO_DATA_FOUND_MESSAGE = 'No results matched your search criteria.';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL3BvbGljeS10ZW1wbGF0ZS9jb25zdGFudHMvdGVtcGxhdGUuY29uc3RhbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRS9ELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7QUFDdEQsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsMENBQTBDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBU1NFVFMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYXNzZXNzdHMuY29uc3RhbnRzJztcblxuZXhwb3J0IGNvbnN0IE5PX0RBVEFfRk9VTkRfSU1BR0UgPSBBU1NFVFMuc2VhcmNoX2RhdGE7XG5leHBvcnQgY29uc3QgTk9fREFUQV9GT1VORF9NRVNTQUdFID0gJ05vIHJlc3VsdHMgbWF0Y2hlZCB5b3VyIHNlYXJjaCBjcml0ZXJpYS4nO1xuIl19
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUuY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy92eC13b3JrZmxvdy1lbmdpbmUvc3JjL2xpYi9zaGFyZWRDb21wb25lbnRzL3BvbGljeS10ZW1wbGF0ZS9jb25zdGFudHMvdGVtcGxhdGUuY29uc3RhbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRTdELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7QUFDdEQsTUFBTSxDQUFDLE1BQU0scUJBQXFCLEdBQUcsMENBQTBDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBU1NFVFMgfSBmcm9tICcuLi8uLi8uLi9jb25zdGFudHMvYXNzZXRzLmNvbnN0YW50cyc7XG5cbmV4cG9ydCBjb25zdCBOT19EQVRBX0ZPVU5EX0lNQUdFID0gQVNTRVRTLnNlYXJjaF9kYXRhO1xuZXhwb3J0IGNvbnN0IE5PX0RBVEFfRk9VTkRfTUVTU0FHRSA9ICdObyByZXN1bHRzIG1hdGNoZWQgeW91ciBzZWFyY2ggY3JpdGVyaWEuJztcbiJdfQ==