fx-form-builder-wrapper 0.0.90 → 0.0.92

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.
@@ -136,7 +136,12 @@ class ConfigurationPanelComponent {
136
136
  labelKey: '',
137
137
  className: '',
138
138
  apiKey: '',
139
- isMultiselect: false
139
+ isMultiselect: false,
140
+ checkedValue: '',
141
+ unCheckedValue: '',
142
+ checkBoxLabel: '',
143
+ isRequired: false,
144
+ errorMessage: ''
140
145
  });
141
146
  this.columns.push(columnFormGroup);
142
147
  }
@@ -158,6 +163,11 @@ class ConfigurationPanelComponent {
158
163
  className: [currentColumn.className],
159
164
  apiKey: [currentColumn.apiKey],
160
165
  isMultiselect: false,
166
+ checkedValue: [currentColumn.checkedValue],
167
+ unCheckedValue: [currentColumn.unCheckedValue],
168
+ checkBoxLabel: [currentColumn.checkBoxLabel],
169
+ isRequired: [currentColumn.isRequired],
170
+ errorMessage: [currentColumn.errorMessage],
161
171
  options: this.fb.array(currentColumn.options.map((option) => this.fb.group({
162
172
  optionName: [option.optionName, Validators.required],
163
173
  optionValue: [option.optionValue, Validators.required]
@@ -212,17 +222,22 @@ class ConfigurationPanelComponent {
212
222
  labelKey: [column.labelKey || ''],
213
223
  className: [column.className || ''],
214
224
  apiKey: [column.apiKey || ''],
215
- isMultiselect: [column.isMultiselect || false]
225
+ isMultiselect: [column.isMultiselect || false],
226
+ checkBoxLabel: [column.checkBoxLabel || ''],
227
+ checkedValue: [column.checkedValue || ''],
228
+ unCheckedValue: [column.unCheckedValue || ''],
229
+ isRequired: [column.isRequired || false],
230
+ errorMessage: [column.errorMessage || ''],
216
231
  });
217
232
  this.columns.push(columnFormGroup);
218
233
  });
219
234
  }
220
235
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConfigurationPanelComponent, deps: [{ token: i1$1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
221
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ConfigurationPanelComponent, isStandalone: true, selector: "fx-configuration-panel", inputs: { visible: "visible", configs: "configs", tableConfigData: "tableConfigData" }, outputs: { isVisible: "isVisible", configuration: "configuration" }, usesOnChanges: true, ngImport: i0, template: "<p-dialog header=\"Edit Configurations\" [modal]=\"true\" [draggable]=\"false\" [(visible)]=\"visible\" [style]=\"{width: '70rem'}\" class=\"customDialogClass\" (onHide)=\"closeDialog()\">\r\n <!-- <ng-template pTemplate=\"header\">\r\n <div class=\"flex p-2 bg-white border-2\">\r\n <p class=\"text-base\">Edit Configurations</p>\r\n </div>\r\n </ng-template> -->\r\n <div class=\"flex flex-col gap-4 bg-white p-2 border-2 border-gray-200\">\r\n <div class=\"flex items-center gap-4 mb-8 w-full\">\r\n <div class=\"w-1/3\">\r\n <label for=\"rows\" class=\"font-semibold w-24\">Rows</label>\r\n <input type=\"text\" [disabled]=\"enableAPI\" [(ngModel)]=\"rows\" placeholder=\"rows\" class=\"form__input\" id=\"name\" autocomplete=\"rows\" />\r\n </div>\r\n <div class=\"w-1/3\">\r\n <label for=\"enableAPI\" class=\"font-semibold w-24\">Enable API</label>\r\n <input type=\"checkbox\" [(ngModel)]=\"enableAPI\" placeholder=\"API Url\" id=\"enableAPI\" autocomplete=\"enableAPI\" />\r\n </div>\r\n <div class=\"w-1/3\">\r\n @if (enableAPI) {\r\n <ng-container>\r\n <label for=\"api\" class=\"font-semibold w-24\">API</label>\r\n <input type=\"text\" [(ngModel)]=\"api\" placeholder=\"Enter API Url\" id=\"api\" class=\"form__input\" autocomplete=\"api\" />\r\n </ng-container>\r\n }\r\n </div> \r\n \r\n </div>\r\n <!-- <div class=\"flex items-center gap-4 mb-8\">\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n <div class=\"w-1/2\">\r\n \r\n \r\n </div>\r\n \r\n \r\n </div>\r\n \r\n <div class=\"flex items-center gap-4 mb-8\">\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n \r\n \r\n </div> -->\r\n \r\n <div class=\"flex flex-wrap gap-4 mb-8\">\r\n \r\n <div class=\"w-full flex items-center justify-between\">\r\n <p class=\"text-sm font-semibold\">Columns:</p>\r\n <!-- <button type=\"button\" (click)=\"addColumn()\" class=\"custom-save-button\">Add Column</button> -->\r\n </div>\r\n \r\n <div class=\"w-full overflow-x-auto\">\r\n <form [formGroup]=\"dynamicForm\" (ngSubmit)=\"onSubmit()\">\r\n <!-- Flex container with nowrap to keep all columns in a single row -->\r\n <div formArrayName=\"columns\" class=\"flex gap-4 flex-nowrap whitespace-nowrap\">\r\n <div *ngFor=\"let column of columns.controls; let i = index\" [formGroupName]=\"i\" \r\n class=\"border p-4 rounded-lg min-w-[20rem] flex-shrink-0 card-width\">\r\n <div class=\"top-2 right-2 flex gap-2 justify-end\">\r\n <button type=\"button\" (click)=\"duplicateColumn(i)\" \r\n class=\"bg-green-500 text-white px-3 py-1 rounded-md hover:bg-green-600\">\r\n \u2795\r\n </button>\r\n <button type=\"button\" (click)=\"removeColumn(i)\" \r\n class=\"text-white px-3 py-1 rounded-md hover:bg-red-600\" *ngIf=\"columns.length>1\">\r\n \u274C\r\n </button>\r\n </div>\r\n <!-- Columns in a Single Row -->\r\n <div class=\"grid grid-cols-1 gap-4 items-center mb-2\">\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Column Name:</label>\r\n <input formControlName=\"header\" placeholder=\"Enter Column Name\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Column Type:</label>\r\n <select formControlName=\"cellType\" class=\"w-full border rounded-md px-3 py-2\">\r\n <option *ngFor=\"let type of columnTypes\" [value]=\"type\">{{ type }}</option>\r\n </select>\r\n </div>\r\n <div class=\"col-span-3\" *ngIf=\"['smart-dropdown', 'dropdown'].includes(column.value.cellType)\">\r\n <label class=\"font-semibold\">Multiselect:</label>\r\n <select formControlName=\"isMultiselect\" class=\"w-full border rounded-md px-3 py-2\">\r\n <option value=\"true\">Enable</option>\r\n <option value=\"false\">Disable</option>\r\n </select>\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">PlaceHolder:</label>\r\n <input formControlName=\"placeholder\" placeholder=\"Enter Placeholder\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n @if (enableAPI) {\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">API Value Key:</label>\r\n <input formControlName=\"apiKey\" placeholder=\"Enter Value Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n }\r\n \r\n </div>\r\n <div *ngIf=\"['radio-group', 'dropdown'].includes(column.value.cellType)\" class=\"mt-2\">\r\n \r\n <label class=\"font-semibold\">Options:</label>\r\n <button type=\"button\" (click)=\"addOption(i)\" class=\"custom-save-button justify-end\"> \u271A </button>\r\n\r\n <div formArrayName=\"options\" class=\"card-height\">\r\n <div *ngFor=\"let option of getOptions(i).controls; let j = index\" [formGroupName]=\"j\" \r\n class=\"relative grid grid-cols-1 gap-4 items-center mt-2 option-card\">\r\n \r\n <button type=\"button\" (click)=\"getOptions(i).removeAt(j)\" \r\n class=\"absolute top-0 right-0 bg-transparent text-red-500 hover:text-red-700 \r\n text-xl font-bold p-1 cursor-pointer\">\r\n \u274C\r\n </button>\r\n \r\n <input formControlName=\"optionName\" placeholder=\"Enter Option Name\" \r\n class=\"col-span-4 border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n <input formControlName=\"optionValue\" placeholder=\"Enter Option Value\" \r\n class=\"col-span-4 border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n \r\n </div>\r\n <!-- <button type=\"button\" (click)=\"addOption(i)\" class=\"custom-save-button justify-end\">Add Option</button> -->\r\n </div>\r\n \r\n \r\n <div *ngIf=\"['smart-dropdown'].includes(column.value.cellType)\" class=\"grid grid-cols-1 gap-4 mt-4\">\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">API Url:</label>\r\n <input formControlName=\"apiUrl\" placeholder=\"Enter API URL\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">Value Key:</label>\r\n <input formControlName=\"valueKey\" placeholder=\"Enter Value Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">Label Key:</label>\r\n <input formControlName=\"labelKey\" placeholder=\"Enter Label Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n \r\n \r\n \r\n \r\n </div>\r\n \r\n </div>\r\n\r\n\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <!-- <hr class=\"mt-3 mx-2 mb-0 opacity-10\"> -->\r\n <!-- <div class=\"flex justify-end gap-4 w-full\">\r\n <p-button label=\"Cancel\" severity=\"secondary\" (click)=\"closeDialog()\" />\r\n <p-button styleClass=\"border border-indigo-600\" label=\"Save\" (click)=\"saveConfiguration()\" />\r\n </div> -->\r\n <div class=\"flex justify-center my-3\">\r\n <p-button label=\"Cancel\" severity=\"secondary\" (click)=\"closeDialog()\"\r\n styleClass=\"border-gray-400\" />\r\n <p-button label=\"Attach\" label=\"Save\" (click)=\"saveConfiguration()\" \r\n styleClass=\"cta_buttons text-medium button_text_white secondary-color border-1 stroke_secondary no_hightlight no_hightlight_stroke h-max mr-2 w-6rem custom-save-button\"\r\n />\r\n </div>\r\n </ng-template>\r\n</p-dialog>", styles: [".p-overflow-hidden{overflow:hidden;padding-right:var(--scrollbar-width)}@layer primeng{.p-component,.p-component *{box-sizing:border-box}.p-hidden{display:none}.p-hidden-space{visibility:hidden}.p-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.p-hidden-accessible input,.p-hidden-accessible select{transform:scale(0)}.p-reset{margin:0;padding:0;border:0;outline:0;text-decoration:none;font-size:100%;list-style:none}.p-disabled,.p-disabled *{cursor:default!important;pointer-events:none}.p-component-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.p-unselectable-text{-webkit-user-select:none;user-select:none}.p-scrollbar-measure{width:100px;height:100px;overflow:scroll;position:absolute;top:-9999px}@-webkit-keyframes p-fadein{0%{opacity:0}to{opacity:1}}@keyframes p-fadein{0%{opacity:0}to{opacity:1}}input[type=button],input[type=submit],input[type=reset],input[type=file]::-webkit-file-upload-button,button{border-radius:0}.p-link{text-align:left;background-color:transparent;margin:0;padding:0;border:0;cursor:pointer;-webkit-user-select:none;user-select:none}.p-link:disabled{cursor:default}.p-sr-only{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.p-connected-overlay{opacity:0;transform:scaleY(.8);transition:transform .12s cubic-bezier(0,0,.2,1),opacity .12s cubic-bezier(0,0,.2,1)}.p-connected-overlay-visible{opacity:1;transform:scaleY(1)}.p-connected-overlay-hidden{opacity:0;transform:scaleY(1);transition:opacity .1s linear}.p-toggleable-content.ng-animating{overflow:hidden}.p-icon-wrapper{display:inline-flex}.p-icon{display:inline-block}.p-icon-spin{-webkit-animation:p-icon-spin 2s infinite linear;animation:p-icon-spin 2s infinite linear}}@-webkit-keyframes p-icon-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes p-icon-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@layer primeng{.p-badge{display:inline-block;border-radius:10px;text-align:center;padding:0 .5rem}.p-overlay-badge{position:relative}.p-overlay-badge .p-badge{position:absolute;top:0;right:0;transform:translate(50%,-50%);transform-origin:100% 0;margin:0}.p-badge-dot{width:.5rem;min-width:.5rem;height:.5rem;border-radius:50%;padding:0}.p-badge-no-gutter{padding:0;border-radius:50%}}@layer primeng{.p-button{margin:0;display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;vertical-align:bottom;text-align:center;overflow:hidden;position:relative}.p-button-label{flex:1 1 auto}.p-button-icon-right{order:1}.p-button:disabled{cursor:default;pointer-events:none}.p-button-icon-only{justify-content:center}.p-button-icon-only:after{content:\"p\";visibility:hidden;clip:rect(0 0 0 0);width:0}.p-button-vertical{flex-direction:column}.p-button-icon-bottom{order:2}.p-button-group .p-button{margin:0}.p-button-group .p-button:focus,.p-button-group p-button:focus .p-button,.p-buttonset .p-button:focus,.p-buttonset p-button:focus .p-button{position:relative;z-index:1}.p-button-group .p-button:not(:last-child),.p-button-group .p-button:not(:last-child):hover,.p-button-group p-button:not(:last-child) .p-button,.p-button-group p-button:not(:last-child) .p-button:hover,.p-buttonset .p-button:not(:last-child),.p-buttonset .p-button:not(:last-child):hover,.p-buttonset p-button:not(:last-child) .p-button,.p-buttonset p-button:not(:last-child) .p-button:hover{border-right:0 none}.p-button-group .p-button:not(:first-of-type):not(:last-of-type),.p-button-group p-button:not(:first-of-type):not(:last-of-type) .p-button,.p-buttonset .p-button:not(:first-of-type):not(:last-of-type),.p-buttonset p-button:not(:first-of-type):not(:last-of-type) .p-button{border-radius:0}.p-button-group .p-button:first-of-type:not(:only-of-type),.p-button-group p-button:first-of-type:not(:only-of-type) .p-button,.p-buttonset .p-button:first-of-type:not(:only-of-type),.p-buttonset p-button:first-of-type:not(:only-of-type) .p-button{border-top-right-radius:0;border-bottom-right-radius:0}.p-button-group .p-button:last-of-type:not(:only-of-type),.p-button-group p-button:last-of-type:not(:only-of-type) .p-button,.p-buttonset .p-button:last-of-type:not(:only-of-type),.p-buttonset p-button:last-of-type:not(:only-of-type) .p-button{border-top-left-radius:0;border-bottom-left-radius:0}p-button[iconpos=right] spinnericon{order:1}}@layer primeng{.p-checkbox{display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:bottom;position:relative}.p-checkbox-disabled{cursor:default!important;pointer-events:none}.p-checkbox-box{display:flex;justify-content:center;align-items:center}p-checkbox{display:inline-flex;vertical-align:bottom;align-items:center}.p-checkbox-label{line-height:1}}.p-colorpicker-panel .p-colorpicker-color{background:transparent url('data:image/png,\\fffdPNG%0D%0A\u001A%0A\\0\\0\\0%0DIHDR\\0\\0\\0\\fffd\\0\\0\\0\\fffd\b\u0006\\0\\0\\0<\u0001q\\fffd\\0\\0\\0%09pHYs\\0\\0\v\u0013\\0\\0\v\u0013\u0001\\0\\fffd\\fffd\u0018\\0\\0\\0 cHRM\\0\\0z-\\0\\0\\fffd\\fffd\\0\\0\\fffd\\fffd\\0\\0\\fffdR\\0\\0qE\\0\\0\\fffd f\\0\\0 9\u0007\\0\\0!\\fffd\u0003\\'\\fffdV\\0\\0\\'\\fffdIDATx\\fffd\\fffd}\\2ce\\fffdH\\fffd\\fffd\u001A\\'\\fffd\\fffd\u001E\\fffdO\\fffd;\\fffd\u000F\\fffd 8\\fffdn\\fffd\\fffd]\\755Y\\fffd\\fffd\u000F\\fffd=\u0014\\fffd%\u0014\\fffd\\fffd\\fffd\\fffdG\\fffd\u0002\\fffd%09 \u0010\\fffdN:\\fffd\\fffd(T\u0011\u0015U36w\\fffd/3\\fffd\\fffd f\\fffd 03\\fffd\\fffd\\fffd\u001B=\\fffd\\fffd\\fffd\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffd~\\fffd 6w/\\fffdW=\\fffdx\\fffd\\fffd 1\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd\\1e2\\fffd\\fffd\\c?\\fffd\\fffd\\fffd\\fffd\\fffdw\u001C\\fffd\\fffdZ\\fffd\\fffd\\77d\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\77f}\\fffd\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd\\fffd cf\\fffdk\u0007\\fffd\\fffdy\u0016O\\fffdl@\" \\fffdN\\533z\\fffd\\fffd\\f203\\fffd\\fffd 1\u0012\\fffd\\fffd\\fffd\\0\u0010\\fffd\u0018\\fffd\\fffd\\fffdyvq\\fffd\\fffd\\fffd\\fffd%09\\fffd\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\\7fad\\fffd\\fffd\\6ce\\fffd\u0006\\fffd\\fffdx<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u001F\u001F\u001F\\fffd\\fffd\\fffdw\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdO?\\fffd_\\fffd\\fffdW\\fffd\\fffd{\\fffdz|\\fffdI\\fffd\\640\\fffds\\fffd^<\\fffd\\fffd/\\\\\\fffdo\\fffd\\fffd\\fffdN?\\fffdo23\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd 9?v<\\fffd\\fffd\\fffd\\fffdo\\fffd\\fffdv\u0010\\fffd\\5cf}v\\fffdl;\\fffd\\fffdk\\fffd|>\\fffd\\fffd|\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\\fffd\\fffdn7\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdO?\\fffd d\\7fe}\\fffd/\\fffd\u000F\\fffd~h\\fffd ffm\\fffd\\1035\\fffdV\\fffd\\fffd\\fffd\\7381%0D\u001E\\fffd\u0006=\\fffd\\fffd\\fffd*\\fffd}\\fffd\\\\<\\fffd\\fffd\\fffdm\u0007>\\fffd\\fffd\u0005\\fffd\u0018\u001C\v\\fffdy\\fffdG\\fffd 7\\0\\fffd F\\0r\\0V\u001B@\\fffd\\fffdt\\fffd\\fffd\\fffd\\fffd\\fffd|Z\\ff4d\\fffd\\fffd\\1e3=\u001E\\fffd\\fffd~\\fffd\\fffd\\fffdv\\cf3cf\\fffd\\fffd\\fffd\u000F\\fffd\\fffd\\fffd[\\fffd\\fffd\\fffd_\\fffd?\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd~\\fffd\\fffd\\fffd\\fffdx<\\697\\fffd\\fffd\\289\\fffd\\fffd\u0015\\fffd\u0004\\'o%0A\u0010\\fffdl\\fffd\\fffdr\u0002\\fffd\\0\\fffd\\fffd D\\fffd\\58e\u0013\\fffd\u0017B\\fffdY\\c\u0012\\fffd\u0001\\fffd\\fffd\\fffd\\fffd\\fffd 6xlj\\fffd\\fffd[km\\fffd[k\\fffd\\fffd[\\fffd=\u0004\u0016E\\fffd%23R\\fffd\\fffd\u0007\\fffd\\fffds~\u0002\\448R;\\fffd|\\fffdP}\\fffd\\6de\\fffdg\\fffd\\fffd\\fffd\\fffdn;\u0005\\fffd\\5ef_\\fffd_\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd/\\fffd\\fffd\\5ef_\\fffd\\fffd|\\fffd\u0014X00)\\fffd\\fffd\u0011&\u0004g!\\fffd\\fffd\\'^\\0I\\fffdM\u0015\\fffd a$%0A\\fffd\\fffd\u0001\\fffd\\fffd\\fffd FA\\fffd 9\\fffd\\fffd\\fffd A\\fffd 0\\fffd\\fffd c\\fffd\u0011\\fffdN\\fffd 6\\fffd\\fffd\u0007\\fffd\\fffd 1\\fffd\\fffd\\fffd\\fffd{\\fffd\\fffd`rw{<\u001E\u0003X\\fffd|>}\\0\\fffdv\\fffd\\fffd\\fffd\\fffd f\\fffd\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffdo\\fffd\u001D\\fffd\\fffd\\fffd\\fffd_\\fffd\\fffd\\5ef\\fffd\\fffdo\\fffdY\\fffd}%0A\\fffd\\fffd\\fffd\"m\\fffd\"[\\fffd\\fffd\\1a0\\fffd\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffd\u0010\\fffd\\fffd DT\\fffd\\fffd.\u0003V\\fffdx\u0003$\\fffd\\fffd\\fffd.`\"\\fffd 4\\0\\519\\fffd\\fffdl\\fffd\u0019\u0002\\fffd 0B\\fffd\\fffd\\fffd\\7fe\\fffd 6\u0004\\fffd\\fffd{?\"\u0016\u0002\v5\\fffd\\fffd~\\fffd\\fffd\\fffd\u000F\\fffd\\fffd\\fffdG\\fffd\\fffd\\fffdh\\fffd\\fffd\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdv\\fffd\\fffd\u000E\\fffd(RT\u0001\\fffd\\fffdg\"N\\fffdH\\fffd\\fffd*\\fffd\\fffd|\\fffd\b \\fffd\\fffd\\fffd\\fffd\\fffdZ\\d3\\fffd\\fffd 5\\cb\u0011%23z\\0\\fffd\\fffdG\u0001Pf\\fffdr\u0012\\5ca\\fffd\u001A\\fffd\\fffd\u001E\\fffd\u0006x\u001AF,\\fffdQ\\fffd\\fffd\\fffd\\fffd\\fffdv\u001D5@5\\fffd\\6ee\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\\fffd\\fffd\\fffd\\fffd\\7ff\\fffd\\fffd~\\fffd\\fffd}||\\c\\fffd\\fffd~\\fffd\\fffd\\fffdn\\fffd\\fffd=\u001E\\fffd ffZcU\\fffd 5\\fffd d+\\0\\fffd-\\fffd\\b20e<H *\\fffdNQ\\fffd\\fffd D^\\fffdK\u0006\u0011\\fffdG\\fffd\"\\0!\\fffdu\\fffd/\\fffdK\\fffd\\fffd f`\\fffd\\fffd\\fffd D\\fffd\\fffd\b\\fffd A\\fffd%23za\\fffd\u001AT\\fffdk\\fffd\\fffd\\fffd\\fffd\\fffd,pD,\\fffd\\fffd\\fffd\\fffdo\\7fe%0D!o?~\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd B\\fffd\u001E\\\\\\fffd/\\464 8\\fffd>\\fffdt\u0019\\fffdI\\fffd(\\fffd)@\\fffd 1[!\\fffd\\fffd\u0019\u0015\\fffd\\fffd\\fffd\u001E\\fffd\\fffd\\fffd\u0016\\0\\fffd\\fffd\\fffd\\fffd`\\fffd\bu\\fffdk\\fffd\\fffd&\\fffd\\fffd d{;\\fffd a\u0004\\6d0\\fffd\bL\u0003h\\fffd\\fffd\\fffd\\0\\fffd\\fffd\\fffd\\fffd]S\\fffd\\fffd\\fffd@\\fffd\\fffd\u0001*\u0004\\fffd\\0\\4b7o\\fffd\\fffd\\fffd\\fffd\\1f6\\fffd\u0001,\\fffdP\\fffd\\cO\\fffdZHRs\\fffd e\\fffd\u00118\\fffd 82\\fffd\u0005\\78fGQ\\fffd\\fffd=ff\u0002\u0014\\fffd\u0017X\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd 5p\\fffd\u0018t\\fffd\\f0$]u\\fffd\\fffd a\u001B\\c:DKa\\8a9d\\fffdl\\fffd\\fffd\u0013\\fffd=\\fffd\\3f6G\\fffdv\\fffd\\fffd\\6ee\\fffdNT\\fffd\\fffd?>>\\fffd\\fffd\\1c7=\u001E\\fffd\\fffd\\fffdx\\fffd\u0011\u00199bM\\fffd\\fffd,J\\fffd\\fffd\\fffd\u0005\\fffd\\fffd\u0001\\fffd\"\\a2f2 1\\fffdG\\fffd|\u0011y\u001C\\fffdsa\u0007x$\\4154h\\fffd)\\fffd@6\u001Cn\\fffdT\\fffd^\"1\\0 b%23\\fffd\\fffd%0D\\fffd\\fffd\\fffd\\fffds\\fffd d\\fffd%0D-\\fffd\\fffd@\u0007\\fffdj\u0018\\fffdGd\\fffd\u001F\\fffd}\\fffdVv\\fffd\\fffd\\fffd~\\fffd\\fffd\\fffd\\fffd%0DSt\b\\fffd}\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffdw{<\u001EG\\fffd\\fffdh\\fffd\\fffdQ\\fffd\\fffd*\u0003TK\"Oh\\fffd\\fffd\\c\\c897\\fffd\\fffdv\\fffd\\fffd\\fffd\\fffd\\fffd\\4f6\b\\fffdM\\0 FzP\\fffd\\fffd 5\u0006\\c\u001CsS\u0019\u001D\\fffd\u0001\\200\\fffd\\cJ.hn\\fffd 7\\fffdQ\\fffd\\fffd@C a&\\fffd\\fffdWuP\\fffdn\\fffdn\u0002Xv\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\u001Bf\\fffd\\fffd\u0003qd\\fffd>\\fffd}\u0002\u0016g<\\fffdl+\\fffdrHApB\\fffd\\fffdw\\fffd\\fffd\\fffdV\\0\\fffd\u0005\\11c(\\fffd\\fffd m\u0001\\fffd\\fffdy\u0014\\fffd.\u0011p\\fffd\\fffd\u0010\\fffd\\fffd\\fffd.2-\\fffd c\u0016\\fffd\\'\\fffd\\fffd`\u0002 %0DZ\\fffd\u001C\\fffd\\fffd(\\fffd\\fffdj\\0iD)\\736!\\fffd\u0006\\fffd\\fffd\\235\\fffdQh\\0i\\0\\c\\fffd\\fffd\u0003\\fffd\u001F\u001F\u001F\u000E\u0011\\fffd\\fffd\\fffd^\\0U\\fffd\u001F\\'W\\42d\\fffd\\fffd\u001A\\9ca2\\fffd\\ch\u0002\\517\\c\u000F\\fffd\\fffd B^\u0001\\fffdu\\fffd\\fffd\u000EX\\fffd\\fffd\\fffd\u0011\\fffd\\fffd\u0003\\0N\\fffd\\fffd\\fffd\\fffd 9\u0007\\fffd\\fffd\u0013\\fffd\\fffd\u0001L\\fffd\\fffd\u001BF\\fffd\\fffd\\fffdyl{>\\fffd\\fffd\\78dpD\\fffd\\fffd%09\u000E\\fffdt\\fffd\\fffd\u0007\\fffd\\fffd\u000E\\fffd\\fffdG\\fffd~\\fffd\\fffd}\\fffd am\u0007\\fffd A\\fffd\\fffd\\fffd\\73d\\fffd\\fffdp\\fffd\\fffd%0A(-\u0013\\fffdx\\fffdK\u0003\\fffd 4\\fffd\\fffd 2\\fffd\\fffd 2\u001D%\u0004\\fffd\\6b6\u0012\\fffd\"\\fffdi\u0013T\\fffd\\fffd\u001A@\\fffd}\\fffd\\fffd\\fffd\u0001F\\fffd\\fffd F\\fffd\"\\fffd a\\fffd 2\\fffd\\fffd\\fffd\u001C\\fffd F&xh\\fffd\\fffd\\fffd\u0013\\fffd\\fffdY\\fffd 6\"\\fffd\u000E0\\fffd\\fffdn\u000E\\fffd\\fffd\\fffd 4k\\fffd\u000Ek\\fffd%0A\u0003\u0010\\fffdh\\fffd E\\fffd\b \u0015\\fffd E\u0011\\154\\fffd\\'\\fffd\\fffd 2NU\\fffd\\'\"\\fffd\u0001\u0005JG=+\\fffd 2x\\fffd\\fffd CJ\u001BB\u001E\\fffd\u0015\\fffd\u0012\\fffd\\fffd\bL\\fffd-\u0005\u0004\\fffd\\fffdU\\fffdu\\fffd\u0014 \v\\fffd\\fffd\\7cf9{\\fffd[_\\fffd\\fffd\\fffdw%0A\\fffd\\fffdn\\fffd\\fffd\\fffd\\fffdG\\fffd C[\\fffdv\\fffd\\fffd\\fffd\\3c61 E1>c\\fffd\\fffd\\fffd\\fffdP\\fffd\\'\u0002ODm\\fffd\\fffd\u001F\\fffd\u0012E8\u00052\\fffdh\\fffd(\\303\\fffd\u0001E\\fffd\\fffdQ\b\\fffd\u0017\u0001K\\fffd:%09E\\fffd 38\\fffd\\fffdr\\fffdo?a\u0017K\u0001\\fffdU\u001F\\fffdR\\8d33w\u0005\u001D\vH\\fffd\u0007\\fffd=\u001E\u000Fw\\fffd\\fffdn\u0018\\fffdgv\\fffd\\fffdmG\u0007\u0004GO3\\fffd\\4c8U\\fffd`\u0013\\fffdXf!\\43e\\fffd\\fffd\\fffd\u0010\\fffd\\fffd\\fffd\\fffd\\fffd 6p\\fffd\u0011L\u001C\\fffd\\fffd\\fffd\u0002U\\fffd\u0013\\fffdm\\fffd\\fffd 9eyG$\u001A\\fffd\u0003\\fffd\\fffd&\u0011\\fffd\u001D\\fffdN\\0;\\fffd\\fffd\\fffdkX%0A\\0\\fffd\\fffd\\fffduw\u001F\u0002\u001E;\u001A\u001A\\fffd`%0D=\\fffd\\fffd\\fffd\\fffdk\\fffd\\fffd\u0001;,\u000E3\\fffd\u0010XQ%09\\fffdR\\fffd\\fffd,\"%09cRQ!\\fffd)O\\fffd\\fffd)@\\fffd\\fffd\\fffd\\fffd 3\u0016\\0\\fffd\\fffd 1\\fffd&g\\fffd\u0007\\fffd\\0\v4\\fffd\\27b\\fffdl\u000FLOI\\fffd\\0\\fffd\u0011\\fffd\u0018d\\6fe\\fffd@\u0018\\fffd\\fffd+w}\\fffdg\u001B\\fffd f\\fffdX{\\fffdr\\fffd\u0018\\fffd\\fffdv\\fffd\\fffd|h*\u0004\\fffd\\0\\fffd\\fffd\\fffd_T\\fffd 4\u0003L\\fffd\\761\\fffd\\fffd\b\\fffd\\fffdkG\\fffd\\fffd[\u0007\\fffd\\fffd\\fffd\u0006\\fffd\u0003?\u001F \\fffd\\fffd\\fffd\u0014\\fffd 8%23\\fffdHo\u0011\\fffd 5\\fffd_\\fffdw\\0\\fffdO\u0004\\fffd 1\u001E\u0004,n\\fffds\\fffd\\fffd 9\\fffd\\fffd\\fffd)\\fffd\\fffd\\fffd\u00151\\fffd\\fffdx\\fffdH\\fffd\\fffd\\0\\fffd]C%0D\\fffd\\fffd 9\\fffd\\fffd\\fffd a3\\fffd%23\\fffd\\0\\fffd\\fffd[?\u001Cx,V\\fffd\\c;+\u000E\\\\|\u0011\\fffd\\fffd)5\u0006\\fffd\\fffd\\fffd\u001D\\fffd\\fffd\\fffd\\fffd\u0018\\fffd\\fffd\\452P\\fffd\\251OR+\\fffdL8JBC\\fffd\\fffd\\fffd 1a\u0013\\\\\\fffd 1\\fffd\u0006\bt\\fffd\\fffduA\\fffd\\708g\\0\\fffd%23\u0019\u0018\\fffd%09\\fffd\\13b C\u001B\\320\\fffd\u000E\\fffd\\fffd\\fffdN\\fffd\\fffd\\fffd\\fffdx\u000E\\fffd\\fffd\\fffd\\fffd\\686\\fffd\\fffd%23\\fffd 6\\fffd 8\\fffd\u0012[\\fffdGd\\fffd\u00028S\\fffdL_)\\fffd[=\\fffd\\fffd\u000E\\fffd\\fffd\\fffd>\\fffd@\\fffd\u001F\\eda0IE}\u001BL\u001C\\fffd D/\\fffd\\fffd dZ2H&\\fffd\\fffd E\\723\\fffd\u0010\u0018\\fffdln\"5\"-np\\fffd\\fffd F\\fffd\\fffd\\3b6SZC\\fffd\u0014\\fffd f\\0.\\fffd\u001B:P\\fffd\\fffd\\fffdl\\fffd\\fffd@\\fffd\u001F\\fffd\\fffd\\fffd\\6a7\\fffd\\fffd\\430U`\\fffd\\fffd]\\fffd\\\\Y\u0011-\u0002P\\fffd\\fffd\\fffd\\fffd b\\fffd\\fffd\\fffd\\fffdXD\\fffd.\\fffd 9\u0017\\fffdO\\fffdu\\fffd\\fffd\u0016\\fffd\\fffd\\fffd\\fffdX7\\fffd\\fffd\\fffd\u0003\\fffd 5\u0002\\fffd 6a1t0E\u0011dR\\fffd\u000F\\fffd\\fffd\\fffd 3\u0004{\\fffd c\\fffd\\fffd\\fffd\\fffd\u0004b\\fffd\\fffdlX\\1b9 D,\\fffd\\fffd*-& \\fffd\\fffd\\fffd\\fffd%09\\fffdy@\\fffd\\fffd\\fffdvn\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd-\\fffd\\fffd\\fffd\\fffdLX\u0003\u0017\u001D\u0015\\fffd\\c362\\560x\\9f23\\740\\fffd%0A\\0\\fffd\u001A\vg\\fffd 86\\fffd=\\fffdO7\\fffd\\fffd\\fffd\\fffd\\fffdw\\fffd\\fffd\\fffd\u0003\\fffd\\fffdn%\u001C\u0019\\fffd\\fffd\\432\\fffd D\\fffd%0A\\fffdg\\fffd 5\\fffd\u00120d%\u0016\\fffdT\\fffdRJD\\fffd\"\\fffd;\\fffd\u0006Aq\\fffdj\\fffd\\fffdY\\fffd\\fffdp\\fffd\\fffd\\fffd\\fffdV\\fffd\\fffd^\\fffd\\fffd\u0003\\fffd d\\fffd\\fffd 8*\\fffdZ\\fffd\\0@\\fffd\\fffd Zu(\\fffd\\c \u001ETH\\fffdx\\fffd 6\\cR\\fffd\\fffdm\u001Cs\\fffdt%23J\\fffdN\\fffd\u001B\\0\\fffdl7\\fffd\"V5Z\u00118<q\\fffd%23\\fffd 5u\\fffd@S\\fffd\\fffdP\\fffd(\u001F\u0003%23\\fffd*Bg\\fffdS\\fffd 7z\\fffd\\fffd\\fffd aL\\\\ \\fffd D\\fffd\\b92b:Lv8m\\fffd\\fffd\u001D\\fffd\\fffdN\\fffd\\fffd\u0007\\fffd\\fffd~\\fffd\\ced08%\u001Ep\\d3d2\\fffd\u001E\u0001\u001D\\fffd\u0006O\\fffd!\u0005\u0002\\6d4\\fffd\\fffd\u0005\\fffd\vr?\\232\\fffd\\fffd|X\u0012`G\\\\\\fffd\\fffd\u0001\\fffd\\fffd\\fffd\u0005\\fffd\\fffd D6AiFB\\fffd\\fffd\u0004\u001B\\fffd\\fffd\\'\\fffd\\fffdhnP\u000E|\\fffd%{\u0004%0As\\fffd^XXv\u0010\\fffd\\fffd\\fffd|\\fffd%0D\\fffd\u0016\\fffd\\fffdN\\fffd\\fffd C\\fffd\u001Ct\\fffd\\fffd\\fffdU0\\fffd 8\\fffdg\u0014\\fffd\\fffdR84\\fffdN\\fffd\\fffdj=0\\fffd\\fffdv\u0003\\fffd\\fffd\\fffd\b\u0015i\\fffd\u0006\\fffdM\\fffd\vk\u0019\u0004\b\\fffd C\\fffdUu\u0015\u0011Y\u0007\u0005\\fffd\\525\\fffd\"\\fffd%09m\\fffd\\fffd a\u0013\\fffd\\fffd%09\\fffd\u0001=\\fffd\\fffd\\fffd>\\fffd\u0019\\fffd\\fffdT$\\fffd\\8166(D\\fffd F\u0011kc*\\fffd%23%0DRacZ\\729\\fffd-\u000E\\fffd\\fffd\\fffdp\u0007S\\fffd f\\fffd\\164d\\fffd\u0012\\fffd\\fffd\\fffdJ:E\\fffdj\\fffd%\\fffd E49\\fffdL\\fffd\u0005\u000E\\fffd\\fffdY!\\fffd\\'},\u0006\u001A\u001B\\fffd\\fffd\\cp\\fffd\u001A\u0003\\fffd\\fffd\\fffd\\fffd\\fffd@@\\fffdJc\\fffd\\fffd@\\fffd\\fffd\u001F\u001F\\fffd ?\u0006\\fffd\u001DA7<*\u0006]\\fffd\\fffd 5\\fffdt48\\fffd\\fffd cB\\fffd\\fffd\\fffd\u0019\\fffd,\u0001U\\fffd\\fffd-\u0002\\fffd\u0005`\\fffd 3\\fffd\u0002\v\\fffd\\fffd\\5dc 3\u0016*\\fffd 8\\fffd\\fffdM\\fffd\\fffd<\u0002\u001B\u0014\\fffd%2309\u001B\\fffdH\\fffd\\fffd\\fffd]\\fffd\\fffd\\fffd\\fffd\u000E\\fffd;e\\fffd\u001B\\fffd\\1a0\\fffd\u0015\\0\\fffd!%0A\\fffd\\fffdwJ\\0\\fffd}+\u0004\u0013\\fffd*\\fffd\u001B\\fffd\\fffd\\fffd\u0017\\0 7\\fffd f\\fffdg\v y2\\fffd!r\\fffd%23\\fffd D\\fffd\\3c0v\\fffd\\fffd\u0011\\65e\\fffdRN\u0016\\fffd\\fffd\u0016M4\\fffd\u0019\\fffd\u0003\\fffd\\fffd\u0006|\\fffd\\fffd%0A\\7c7Z\\a939\\fffd\u001Ey\\fffd\u001EPP\\fffd\\fffd\\fffd\\fffd 9b\\fffd\\fffd\\fffdX\u0017\\fffd@\\fffd\\fffd%\\fffd\\fffd\\fffd\\fffd\\fffd E\\fffd\\fffd d\\fffdKDc\\fffd 8\\fffd dQ\\fffd\u0010\u0017\\410\u0016\u0003\\fffd\\fffd\\227\\fffdP\\fffdx\\fffd\\fffd\u001D\\fffd\\fffd\\fffd-\\fffd%0Aw0cI\\fffd\\fffdy\\fffdP\u001B\\fffdp\\fffdg\\fffd\\1e7\\206\\fffdr\\406 \\fffd\u001E\\fffd\u000E-3\u0016\\fffd%0D\u0013\\fffd\\fffd E\\fffd\v8\\fffd\\fffdR\\0$ps\\fffd E\\fffdVMQ\\fffd\u0010\\fffd 3-e\\fffd\\fffdoA\\fffd\\fffd\u0016\\fffd\\fffdT\u001F\u001F\\fffdh\\fffd%0AB\\fffd c%09\\fffd c\\fffd\u0006\\fffd\\fffd\\fffd\\fffd@\\fffd\\fffd\\fffdz<\u001E\\fffd%0A\\fffd B@\\fffd\\5415\\fffd\\fffd\u000Ei\u0012\\5cb\\fffd\\fffdo\\fffd\\fffd\\fffd%0AK`\"1\u001F%09\\fffdW(\\3c2\u0006\\fffd\u0019x<\\fffd@\\fffdKwL\\fffd\u0013J<\\fffd=\\fffd\u0010\\fffdN\\fffdI\\fffd\\fffd\\fffd_\\fffd\\fffd\\fffd\\fffd\u0019\\fffd\v@?&\\fffd\\fffdQc96\\fffd%0D\\fffd Bz\u001B6\\fffd\u0018Kl\\fffd\\fffd\\fffdjRk\\fffd\\fffd\\0\\517\\fffd 1b\\fffd\\fffd\u0006\\fffdL\\fffd c\\fffdh\\fffdzG\\fffdz\u0001\\fffd\\1b5\\fffd\u0004H\\c^\\fffd\\fffdW\\fffd\\fffd\u0005B\u001C\\fffd-\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd:E/\\fffd\\fffd^\\fffd\\fffd\\4a1\\fffd}2A\\fffd\u0010\\fffd\\0\"\\'*<(%0D%23\u0014\\0\\fffd\\fffd\\fffd\\fffd\"\\fffd\\fffd\\293!z\\\\W\\fffdTh\\fffd\\c aE[*\\fffd\\fffd\u0017\u0001Id\u00195^@\\fffdm\\fffd\\1ee\\fffd\\fffdY\\fffdr\\1f8\\fffdX\\fffd\u0006\\fffd\\fffd \u0007\\fffd\\fffd\\fffd eC\\\\\\fffd 1\\40f\u0012\\fffdh8\u0013\\fffd\\fffd\\fffdMQ!f\\fffd\u0004\\fffd\\fffd\\fffd\\fffd\\fffd A6\\fffd\\fffd\\fffd e*3\u0004\\fffd\\373\\fffd%09\\fffd\\fffd\u001A\\fffd\\fffd\\fffd\\7dd\\fffd\\fffd_i\u001B\\fffd%0DLM\u0014\\fffd\\fffd\\245Q{\\fffd\\1ad\\fffd%23\\fffdp\\fffdQY\u0014Q4\\fffd\\fffd*\u0002\\fffd E\\fffd\\fffd 1\\fffdm\b:\\fffd\u0002\\fffd 6t\\fffd\\fffd\\fffd:\\fffd~Fd\":D\\fffdw\\fffdn\\fffd\u001Bv%23\\fffd\u0001\\fffd\\ecG\\fffdl{\\fffd\\fffdG+\\fffdX\\fffdnS\\1c1\u0005QLE=W\\fffd-\\fffd 2@\\fffdl\\fffd\\fffd A\\fffd\\fffdz\\fffdR\u001D\\fffdm\\fffd\\fffd\\fffd\\fffdh8\\fffd(\\fffd\\fffdN\\fffd\\fffd\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\u0001\\fffd/\\fffdn\\'K\u0002t\\fffd\\fffd 4ee h\\9f3e\\fffd\\fffd\\fffd\\fffd at\\fffd EKJ\u0013\u0019\\fffd\u0005`\\fffd\\fffd\b\\fffd\\'\\fffd E\u0007CF\\fffdlZ\\fffd\\fffdp\\fffdh\\fffd E\\fffd\u001A\\fffd\\66e 4V\\fffd\\fffd\\fffd%\\fffd\\fffd\\'\\fffd+\\fffd\\fffd\\fffd\u001E,\\fffd\\fffd\v\\fffd!-\\fffd\\fffd\\fffd\\fffd=\\fffd\\fffd\v\\fffd\\fffd/\\fffd 28z\u0011%0D\\fffdI\\fffd\\fffd]\\fffd\bj:\\56cw*\\fffd\u001F<\\fffdG\u001Eh,~\\fffd\\fffd\\fffdK\u0003E\\fffd\\fffd(\\3d5\\fffdN\\fffd\u0007K1\\fffd\\fffd C\\fffdO\\fffd%0A&Y\\fffd\\fffd>\u001C\\fffd-8\\fffd\\']\u00056\u0004>o\\\\;\\fffd\\fffdM\\fffd\u0002$\\fffd)\u0016\\fffdT\\fffd\\fffd\u0015\\fffds\\fffd 5\\fffd|P\\fffd\\1fe`-\\fffd\\0 FF\\fffd\\fffd\b.\\fffd\\fffd`\\fffdK1\\fffdq\u0001=\\fffdX\\fffd\u0016\\fffd\\fffdL\v\\fffd\u0006\\'\\fffd\\fffd\\fffd\\fffd)Z\u0002\u001D\\fffd\\fffdp\u0012\\fffd\u0001M\\fffd 1\u0010\\fffdl%23\\fffd\\fffd:\\fffd\\fffdha\\fffd\\fffd\\fffd\\fffd\\fffd\u001C\\fffd\\fffdV\u0018\u0001`%\\fffd\\fffd\\cr\\fffd\\fffd\u0014\\fffd 1\\fffd\u0016\\fffd\\fffd\u0002-\\fffdR!;\\fffd{A\\fffd\\fffdy\\fffdHg@o\\fffd\\0\\fffd\u0004\u0005Z%0A\u0018^ +D\\fffd\\fffd~,SV\\fffd\\fffd%0A\\fffdn8\\fffd)D&\\fffd\\fffd\\fffd\\fffdh\\fffd\\fffd\\fffd\\fffdq\\fffd\\fffdmI\\fffd\u0007-1\\fffd^\\fffd\\360\\fffd\"W\\fffdK\\fffd\u00010\\fffd\u0014\\\\\\fffd\u0004\\fffd)]\\49fRB?\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u0006*\\fffd X\\fffdm\\fffdP&\\4d6\\fffd F\\fffd\\fffd\\fffd\\fffdG\u0006\u0007\\fffd A\\0\\fffd\\fffd\\fffd(\u0012=-\u0004\\fffd\\fffdqS\u0004\u00137O\\fffdR\\fffd<3k\\fffd\\0 Fs%0DG\\fffd_&\\fffd\\fffd}hI\u0018\\fffd\\fffd\\fffd*5Mt0\\fffd\\fffd 2\\fffdh\u001E!w%\\fffd\\fffd~\\fffd\\fffd\\fffd}hU \\fffd\\fffd\\fffd\\'\\fffd\u001E\\fffd 2\\fffd\u001B\\fffd 5v\\fffd\u000Fw\u001DW\\fffd a\u001A\\fffd)\\fffd\\fffd\u0012\\fffdw\\fffdI7:\\fffd\u0016\\fffdz\\70f\\fffdX\\420\\fffd\\a8}f\\fffd\\fffd\\fffd\\4da\\fffd C\\fffdW\\fffd;j\\fffd\\fffd/S\u0016\u0003\\4df\\fffdx\\fffd F>\u0017\\fffd\\fffd FEh\\fffd\\fffd\\fffd D\b\\fffdT\u001ED\\fffd\\fffd\\0\\36d 2\\fffd)rC F,%23?%0A\\fffd\\fffd Fm\\fffd\u0018\\fffd\u001C\\fffd\\fffd c\\fffd\\fffdX\\fffd\\fffd\\fffd[\\fffd)\\fffdJ\\fffd\\fffd\\aa a\u001A\\fffdlR%0D\\fffd\\fffd|Iw\u0001x,\\fffd\u0002G\\742\\fffd>K(2+\\fffd\\\\\\fffd\u0016\\fffdw\\fffd\\fffd DGe\u0011\\fffd Ep\\439\\fffd\\d153\\fffd\\507\\fffd 9fw\\fffdq\\fffd\\fffd\u0012\\fffdo\\c@<\\fffd\u0003\\fffd\\fffd\\0+[\\fffd\\fffd&\\fffdS\\fffdy\\fffd\\fffd\u0016\\fffdo.V\\0\\fffd\u0011Jg%09\\fffd\\542\\fffd:\u0015\\fffd\\fffd\\fffd 3\\fffd\u0014\\fffdv\"a4\\fffd 4\u001BD%09\\fffd\\fffd\\125\u001B\\fffd\"\\fffd\u001C=\\fffd%09t\\fffd\\fffd\\fffd\\fffd++\u000F\\0\\fffd?\\fffd\\fffd\u0006\\fffd:i\\fffd\u0011\\fffd\\fffd\\fffd\\55d2\\18a\"\\fffd,\\fffd]\\0\\fffdh%23\\fffd.\u0006\u0019\\fffd\\fffdq\u0014\\fffdR\\fffdV\\fffdz\u0003\u0007\\fffd Df\\fffd 4\\fffd\\fffd\u0005\\173\\fffd\u0010\\fffd~g \\fffd\\fffd\\fffd\\fffd\\fffd_JC\\fffd\\fffd\u001B\\356\\fffd(\\fffd\\fffdo\\fffd\\fffd\\10b\\fffd?0\\fffdrU\\fffd%\\fffdU\\fffd b!\\fffd\\fffd\\fffdq\\fffd fU\\fffd\\2e5\\fffd=\\2e8QD3~=r\\fffdM\\462z\\fffd\\fffd e[\\fffd B\\fffd\\fffd\\fffd\u0001\\fffds\\fffd$a`\\fffd\\fffd\u0017g\\fffd\\fffd\\fffd\\fffd 85\\fffdm\u000E^\\\\\\fffd\\fffd[\\fffd%0D\\fffd\\fffd 6n\\fffd\\fffd\\fffd\\'&\\0\\fffd\\fffdK\\fffd\\fffd\\0\\fffd\\fffd\u0011\\fffd eQ%09\\fffd\\fffd\\fffd\\fffd B\\fffd\\fffd\\689\\fffd\\fffdr\\5c9\\fffdN\\fffd\u0005-\\fffd a\\fffdqQ%0D\\fffd\\fffd(\\b2H\\fffd\\fffd D\\50a\\fffd\\fffd\\fffd%0D\\fffdLP\\fffd e\\fffd\\fffd\\fffd\\fffd 6\\fffdz\\fffdg\\fffdl!3T\\fffd~\\fffd@g\\fffd!\u0012\\fffd\u0016L\\fffdp%\\fffd\\fffdmKT&xq\\fffd%098\\fffd\u000E\\fffd\\fffd\\fffd\\606\\fffd\\fffd.Z\u001Dv\\fffd\\fffd\\fffd\\fffd B\\fffd\\fffd\\fffd\\fffd\u001FN\\fffdw\\fffd\\fffdwv\\133\\fffd?\\fffd\\fffd\")\\fffdt2Xt\\fffd(\u001AMh0\\fffd\\fffd\u0015i\\c\u000F\\fffdk\\fffd\\fffd*\\fffd D\u0004\\fffdL\\fffd\\fffdp\\5d5\\fffd\\fffd\\fffd\u0019\\fffdJ\\fffd\\fffd~\\fffd\u0005\u0006\v\\5e7 cPM\\fffd\u0014\\fffd\\fffd\\fffdp1J\\fffd|\\fffd\\fffd\\5f2\\a4\\fffd 8\\fffd F\\fffd\\fffd d\\fffd\\fffd\\262\\fffd\\8a72\u0002E\\fffd\\fffd b\\fffd\\fffd\\fffd)\\fffd b\u0002@\\fffd 8Lw\\fffd\\fffd$\\310 9\u0001\\fffdO2\u0003\\fffd\\c193>\"Q\\fffd\\fffd{\\fffdUo6A\\fffdNEg\\fffd\\fffdO9\\fffd\u0012X\\fffd\\fffd\\3a2Rd+\\cg=\\fffd\\fffd\\fffd\\fffd\u001E\u0002dL\\147\\fffd 2\v|,\\fffd 271\\fffd\\fffd\\fffd\\fffd\\fffdu\\fffd\\fffd\\fffd\u0010XL\u0015bf\\fffd)+B\\fffd%23\\fffdmF\\0\\fffd\\fffdO\\fffd\\fffd\\0\\fffd\\fffd\\fffdt|\\fffd\\fffd]|\u0007\\fffd\\fffd\\fffd \\fffd;\\108c4f\\fffd\\fffd;\u0015\\fffd\\fffd\u001A\\fffdR;\\fffdJ7j\\fffd\\fffd\\fffd>\u0018\\fffd\u0006\\fffd\u001D\\fffd\\fffd\\fffd\u0001\\fffdyf\\fffd\\fffd\\fffd \u001B\\fffd\u0010\\fffd B\\fffd\\fffd\\fffd\u001E\u0019\\fffdQD\u0013 \\fffd\\fffd<\\fffd%23\\fffd`\\fffd\\fffd 7A\\fffd\\fffd,\\fffd\\fffd>\\fffdg\\fffd b\\fffdr\\fffd\\6f3\u0015\u001DYb(\\fffd!+\u0004O\\17b\\fffdJ%09(e\u0017gFwB\\fffd](\\fffd%23\\fffdj+N\"]4\\fffd>\\fffd=a?\\fffd@\\fffd\\fffd\\382e\\fffdn\\fffd\\fffd\\fffd\\fffd\\fffd\vo\\54b%\u001D\u0013\\fffd\\fffd\\fffd\\fffd\\fffd D\\fffd\u0003|Js\\fffd\\586\\fffd\\fffdZk\u000E\\fffd\\fffd 0J\\fffd\u001A\\fffd\\6a6\\fffd\\fffd<\\fffd\u0002\\355\\fffd\u000El%09\\fffd\\fffd|\u0005\\fffd\\fffd b\\fffd\u00065\\fffdw\\fffd%\\fffd{\u0015d \\fffd;\\fffd\u001D\\fffd\\fffd\\fffd\\fffd D\\588\\fffd}\v\\0\\fffdhE\\fffdN\\fffdnJ7\\fffd~\\fffd\\fffd\"(W\u000E\u000F+\\fffd\u001B^\\fffd\u001F\u0012\u0003U\\fffd D\\fffdV\\fffd\\fffd\\271\\fffd br\\fffd b_T\\fffd\\fffdh\u000E\\fffd\\fffdrDwJ\\fffd\\fffd \\fffd\\fffd\\fffd&\u001A\u0003\\fffd\\fffd_I\\fffd\\fffd\u0014\\fffd\\fffd\u0007\\fffd\\fffd\\fffd@fs\u0013\\53c\u00015\\fffd\\fffd\\fffd\\fffd_\u0014\\fffd\\fffd\u0014x\u0012\\fffdm\u0012\\fffd f\u0013S-\\fffdyc*\\c3\\fffd+\\'\\fffd\\fffd\\fffd\\fffd\u001B\\fffdNL\\fffd\\\\-c4\\fffd b+\\fffd\\6a0>7\\fffd\\490\\fffd,\\fffd\u0012MQ!\\fffd\\fffd,\\fffd\\fffd\\fffd\\fffdNY\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdx<\u001A\\fffd \\fffd-\\fffdX\u0015K!\\\\p6\\fffd 5\u0016g\\fffd(@N\u0001\\fffd\\0\\fffd(Z\\fffd\u0019:8w\\fffd\u0005\u001A\\fffd\\fffd-\\fffd\\fffd\\fffd 1\\22epe\u00130\u0010\\fffd/w\\fffd\\fffd\u0006\\fffd\u0006\\fffd\\fffd\u0016u\u001A\\41cQ\\fffd\\fffdtZ\\fffd\\fffd 0\\fffd~n\\fffdUc2\\0 Fkf\u0005\\fffd F\u0013=@\\fffdk\\fffd E5\\fffd\\fffd\u001A\\fffd 0sY\\fffdOL\\fffdp\\fffd$\u0011\\fffd\v*\\6e6\u0012Pd-\\fffd\\fffd\u0011\\fffd Dq\u0017*\\fffd=V\\fffd\\fffd\\218\\fffd 2\\fffdS\\fffd%{\\fffd\u0015\\fffd=\\fffd\\fffd\\fffd%09\\fffd\\fffd\\fffd~\\fffd\\fffd f\\fffd(\\fffd\u0014\\fffd\\fffd\u0019\\39eP\\fffd\\fffd D{E\\333w\\fffd\u0012\\fffd\\fffd\u0018\\fffd\\fffd\\fffdM\\fffdj\u001BL\\fffd 8E\\fffd\\fffd\\fffdqvJ\\fffd\\1d9\\fffd\\fffd\\539\\248\\fffd\u000E\u0015~\\fffd_e+\\fffd\\44c 4\\fffd%\\fffdTC\\fffdl{EO\\fffd\u0017\\fffd\\fffd\\fffd\\fffd\u0006\\fffd 6\\fffd{u0?\\fffd 0B\\6cc\u0016\\fffd 5\u0004%0A\\fffd bE?\\fffd\\fffd\\536 2\\fffdV\\fffdV\u0004%0A\\55c\\'\\fffd;\\fffdX\\276hMv\v\\0\\fffdHc\\fffd\\fffd\u001F~%0A\\fffd\\fffd\b5\\fffd&\\fffd B\\fffd\u0006\\fffd\\fffd\u0006\\fffd&:\u0014\\fffd`\\fffd{\\fffdP\\fffdG\u0011*\\fffd%23^\\fffd\u001B^\\fffdj?\\fffd(1\u0015\\fffd 7E\\fffd*\\fffd E\\fffd\\fffd\\fffdx\\fffd>\u0010\\fffd\\fffd%\\fffd\\322\\fffd d\\fffd\\fffd\\10aW\\fffd)\\fffdQ\\fffd\\fffd`\\fffd 8\\fffd\\fffd \\fffd\\fffd Ep\\fffd_)+\\fffd\b\\fffd\v%\\fffd\u0019\\fffd\u0015\\fffd(\\fffd 3xO\u0018\\fffd\\412\\fffd\\fffdj^\\fffd\"Z\\fffd\\fffd\u001C\\fffd-\\fffd\\fffd\\489\\fffd\u000F\\fffd\u0013\vq\\fffd\\fffdv>\\fffd 2R\\fffdT\\fffd\\fffd\u000E4\\fffd\\fffd\\fffd\u0014\\fffd|\\fffd-\\fffd 0!u\\fffd+T\\fffd@\\fffd\\fffd\\fffd%\\fffd\u0011Qa\\fffd\\fffd\\fffd\\fffdx\u0017\u0011\\292\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdMe\\fffd\\fffdp\u0017\\fffd\u001A\u0005\\fffd-0_\\fffdM\\fffd\\fffd-1 \\fffdYOD\\fffd\\fffd e\u001D\\fffd\\fffd F\\fffd\u0010\\fffd 7\u0017\\fffd\\fffd\\fffd]\\fffd 8\\fffd-\\fffdiw\\fffd\\fffdl\u0004\\fffd 2\\fffd\u0005\\fffd 6\\fffd\u0016\\fffdH\\'\\a456,Y\\fffdu\\fffdj\\fffd\\fffd\\fffd\\fffd 3\\fffdwU\\fffd F\\fffd_L\\fffd\\fffd\\fffd\\fffd&\u0013<fe/y\\fffd\\fffd\\4deQe\\fffd%0A\\fffd\"t\u0006%0A\\fffd\\152~*S\\fffdZ\\fffd\\fffd\\fffd?18-\u001B\\fffdJ&X}\\fffd\\fffd\\fffd`\\fffd e\\fffd 2\u0010\\fffdX\\fffdi/\\fffd(J\\fffd 356\\fffd\\fffd\\fffd\u0014.\u0014\\fffd\u001BOk\\fffd\\fffdV\\fffd\u0016\\fffd\\fffd\\fffd\\fffd F(\\fffd\u0017O\u0013\\fffd\\fffdP\\fffdG\\fffdw(\\fffd\\fffd\\385\\fffd\\fffd\\fffd\\fffdWy\u0002\\fffd\\655\\768 3!\u0003W\\fffd\u0014\\fffd%0D\\fffd\\fffd\u0010h\\fffd 0\\fffd\u0013\\fffd\\fffd\\fffd\\fffdKt\u0017/K\u0010Y%0D6J:aV8\u0003\\fffdh\\fffd\\fffdQ\u0018\\fffd\u0007\\fffd\u001BY\\fffd\\fffdT;\\fffdXa\u0016\\fffdk\\fffdr\\fffdW\\fffd\\fffd\u0004S\\fffd$\\fffd(2f \\fffd\\fffd\u0015f\u0013`/\u001A\b\u0016\\fffdU\\fffd+\\fffd B\\fffdz\u0002O\\fffd d\\fffd\\fffd\\fffd\u0019;\\fffdyM\\fffd\u0010%23\\fffd\\fffdl7$\\fffdx\\fffd(Ri\\fffd\\fffd\\fffd\\fffd\\fffd 4\u0013\\fffd 3$\\fffd e\\689V\u0001\\c=.\\fffd\\fffd \\fffd\u0011-j\\fffd\\fffd\u0004`V\\fffdN*\bV\\fffd\\fffd%0A\\\\u5\\fffd\u0019?g%23\u0001o\\fffd\\109\\fffd\\fffd 7\\fffd\\fffd\\fffd%0DoN\u0001\\fffd\\fffd 9\\fffd\\fffdRTr\\fffd\\fffdl`?\\fffd\\fffd\vRa$h+\\fffd*x.\\fffd\bf\\fffd\u0005\\fffdt\u001A\\fffd\\fffd\\fffd\u0003\u0016\u001E\\fffd:\\fffd\\fffd\\fffd\\fffd&/\\fffdKL\\fffdP\\fffd\u001C/S\\fffdg\\fffd-\\fffdza*\\fffd$\\fffdx\\fffdYB-\\fffd.\u0015\\fffd\\fffdR\\fffd\\fffd\\fffd&\\fffd\\fffdq\\fffd\\fffd\\'\\fffd\\fffdl=\u0014\\fffd\\fffd=&S\u0002]\\fffd\\fffd&GDu\\9c%0A+\\fffd\\fffdH1\\fffdG\\fffd:%0D\\fffdt1\\fffdX\\fffdm\u0019e\\fffdu\\fffd\\fffdp\\fffd\\fffd d\\fffd\\fffd\\fffd\\fffd 9\\fffd\\fffd d\\fffd\\fffd%09\u001B,/X\\fffd%0A\\0\\fffd 4b\\fffdMD\\fffd\\fffd{\\fffdyI\\fffd\u0003P\\fffdn\\fffd\\fffd;\u0015\\fffd\u0013\\fffdV%23\\fffd\\'kh}f\\fffdR\\0\\fffd\\fffd\\fffd\\fffd*UR\\fffd\\fffd F\\fffdI\\fffd\\fffd\\fffd\\fffdnVt\\fffd\\fffd(%\\fffdtYR\v\\fffd dj\\fffdYc}2\\fffdJ\u001AK\\fffd\v>\\fffd\\fffd:;~\\fffd\\fffdM\\fffdw\\fffdM\\fffd(\\fffd]-\\fffdX\\fffdUO\\fffd\\1d0\\fffd\\fffd%\u0002`\\fffd\\fffd\\fffd\\fffd\u001A\\fffd\\fffd\u0018j\u000E!\\fffdi\\fffd\\fffd B*\\fffd\\fffd\\fffd\u0011\\a569\\fffd dC\\fffdYa\\fffd\\fffd_\"\\fffd\\fffdy\\fffd\\fffd\\fffd?\\fffdI\\fffdY\\fffd BV\\fffdylaVX\\fffdl\\fffdw)+\\fffd\v\\fffd%23V\\fffd ;8\\fffd(\\21f\\fffdWk\\fffd\\'\\fffd\\fffd\\fffd\\fffd&\\fffd\\fffd+Y\\fffd\\fffd\\fffd\\fffd`F\\fffd\\fffd 3\"\\fffdhFl\u0013\\3ebM&\u0017\\30e!\\fffd\\fffdg\\fffd&@\\fffd\\fffd\\fffd fT\\fffds\u0004X+%09\\fffd 3\\fffdK\\fffdN\\fffd\\fffd|Mh\\fffd\\fffd\\fffd 7\\c\\fffdhq\\fffd\\fffdx\\fffd\\fffd\u0017uE\\fffd\\fffdO\\fffdz\\fffd\\fffd \\c\\426&a&\\fffd%0D\\fffd\\fffdr0\\fffd\\fffd%23T\\fffd%0A\\fffd\\35fi)5\\fffd\\fffd\\fffdk\\fffd\\fffd\\fffd\\fffdN\\fffd%0D\\fffd\\fffd\\fffd\\fffd\\fffd\u0005M\\fffd\\fffd\\fffd\u0004\u0005^^\\fffd 2=\\fffd\\5a2\\fffdMO2\\116%09v1\\fffdT\\fffd a\\fffdzE\\fffdO(\\fffdo\\fffd b\\fffd`\\fffdtX+\b\\fffd\u0006s\\fffdTdkB\\fffd 7\\fffdX\\fffd b!\u0002D\\fffd\\'h\\fffd\\fffd\u0011k\\fffd\\fffd f\\65c\\fffd[\\fffdU\\fffd\\fffdlE\\fffd&f\\fffd dV\\fffd\u0005\\fffd%09\\fffd\\fffd\\fffd EQw\\fffdO\\fffd\\fffd\u0007\\3be)-\u00164\u0014Z4\\3cf\\fffdZq\\fffdi\\fffdZxT\\fffd\u0004vI\\fffdy\\fffd>40>\\fffd\\727\\fffd\\fffd\\fffd\\fffd\"U\\fffd\"\\fffdI\\fffdi\u0013+\\fffd D\\'>\\fffd\\fffd\\fffd\\fffdz[\\fffd 6\\'\\0\\fffd\\fffdW:(\\fffd 4\\fffd DHh\\fffd e\\fffdh\u0012\\fffd\u0018\u0014HmM\\fffd\\fffd 1\\6d8\"\u000F\u0013eO\\fffd\u001E\\fffd\\fffd 7a\\fffd\\fffdI\\fffdZ\\fffdX\\fffd\\fffd\u000Ez\\6e3\\fffd\\fffd 6Y\\fffd-j9\\fffd\\fffdX\\fffd(\\fffdK,\\fffdi\\fffdtq\u0006P\\fffd\u0019\\fffd\\fffd\\fffd 7\\fffd\u000F\\fffd 2U\u0012\\fffd f\\9eu\\fffd\\fffd\\fffdR\\fffd\u0011\\fffd Aj)\\fffd\\\\\\fffd%0D\u0004\\fffd\\fffd\u0006\u0017\\fffd\u000EU\\fffd\\fffd\u0017W\\fffd\\fffd\\fffd\\fffd\\13c\\fffd 6\\fffd e\\fffd\u001C\\fffd BJ\\fffd 4)V\\fffd\\fffd 6\\fffdt2\\fffd\\c b*z\\fffd^t\\fffd\\382\\fffdwJ\\fffd\\fffd\\fffd\\fffd A\\fffd=\\fffd\\fffd\\fffdv\\fffd e-\\fffdWg\\fffd>OfXK\\fffd\\fffdNT\\fffd 9a\\fffd\\fffd\v=\\fffd>\\fffd 4+)LPZ\\fffd\u001D\\fffd\u0006/YetQr\\fffdh\\76ca^\\c\\fffd\\fffdw\\fffd\\fffd\\fffd\\fffd\\fffdWT\\fffd\\fffd\\cX3A\\fffd\u0005\u001D\\fffd f\\fffd(\\fffd 6\\fffd d\\fffd\b9k:Z=&Z\u000Fbe\\fffd\\42b\u0019cbI\\fffd\\fffdSY\u0003\\fffd\\fffdR\\fffd\u0018$d\\fffd*\\fffd<e\\fffd\b&Q\\fffdi\\285\\fffdm\\fffd\\fffd\\fffd\\cQ\\fffdw\\fffd\\74dcN,-\\fffdq\u000F\\fffdW\\fffdz\u0016\\fffdQ\\1e2\u0015\\fffdZ\u001B\\fffd\u0013z\u0006*g\u001D\\fffd,d\u0012&%0A\\fffd\u0004\\0\\fffd 9\u0011\\fffd|\u0002\\fffd\u0016h\\fffd\\2f9`-\\fffd\\fffdU;2\\fffd\u000F\\fffd\\fffd\\fffd\\fffd\\fffd%0D\u0001\\fffd\\fffd\\fffd\u0012\\fffd\\fffd\\fffdkfk7$\v\\fffd\\fffd\b\u0010m3\\fffd fW\\fffd\\fffd dD\\c5\\26f\\fffd\\fffd\\fffd,]\\fffd F\\fffdL%0ADS\\fffdx\\fffdR\\fffd.\\fffd\\fffd\\fffd@\\fffd^G;\\cg\\fffd\\fffd\\fffdJ\\fffd\\fffdZ\\fffd\\fffd\\fffd 5\\fffd\\fffd\\fffd_\u0011(%09\\fffd\\fffd 8O\\443h\\fffd\u0005p\u001C\\fffd_\\424\\fffdl!\\fffd\\fffd c\\fffd{D\\3e2YvO\\fffdSv&tXD\\fffd\u0017%0A%\\fffd)Sm\\fffd\\fffd\u0012E\\fffd\\fffd %23T\u0012m2ao\\fffdty\u0005J^\\fffd E\\fffd\\fffd\\fffd\\fffd,\\0p\\fffd\\fffd[d\\'\\fffd\\fffd\\fffd B\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdG<\\fffd\\fffd\\fffd\\fffdyc*\u0004\\fffd\\fffd\u0002\\fffd 5.&\\fffd\\fffd\\fffd\\fffd*\\fffd\\fa\\fffd.\\fffdN\\fffd\\fffd\\fffdMp\\fffd\\fffd\\fffd\\6b39X\\31fR\\fffdly\\fffd\u0010dA\\fffd\\fffd|\\fffd%0D\\fffd\\fffd 2\\fffd\\fffd\\fffd\\fffd\\fffdw|\\fffd\\fffd\\fffd\\fffd\\878f!\u0015\\fffd\\fffdV@i\u0011%0DV\\59cwFz\\0\\fffdt%\\fffd@\u0003\\fffd 3\\fffd\\fffdl.\u0003\\fffd\\fffd\\fffd}\u0018E\\fffd d\\fffd\\fffd\\fffd,\\fffdyT%0Aj\\fffd\\a612 D\\fffd_\\fffd\\fffd\\fffdX\\fffd\\fffdzQ\\fffd\\fffd%%0A\\fffd\\1be\\fffdX%0D\\fffd%0Ae\\fffd\\fffd\\fffd]\\fffd d\\fffd\bh2\\fffd E\\fffd\\fffd\\fffdL\\fffdpE?\\fffd>\\fffdy\\fffd\\fffd\\468S\\fffd\\fffd\\fffd\\fffd\\fffd EM\\fffd\\fffd}Z\\fffd\\fffd e\\1dd\\fffd d\\fffd\u0006\\fffdz\\fffdPq\\fffd\\fffdH_5\\fffd\\fffd\\fffdj\u0011\\fffdH\\fffd!\\cg\\fffd\\fffd\\fffd\u001F\u001E\\fffd\\fffd%23Q*{\\fffdYD\\fffd\\fffd\\1f7\\fffdMo(`\\fffd\\fffd{\u0012\u001D/\\fffdy\\fffd\\fffd\u000F\\fffd@\\fffd:\\fffd.\\fffd\\268\\fffd d1\u0013\u001E\\fffdJ\\fffdt\\fffd}\\fffdq\u001F\\7e1\u0007N\\fffd\u001A\u0015\u0016\u001A\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd,\u001B-\\fffd\\fffd\v71W\\fffd\v\\fffd\\fffd\\fffd\\fffdO\\fffd\\fffd<\\fffd\\acd3I!a\\fffd\u0017gn\\fffd?\\'\\fffd\\fffd\\fb58i\\fffdp|\u0004\\236\\fffd C\\fffd,\u0004\u0015\\fffd 6\\fffd\\fffd&\\fffdk\\fffd\\fffdU\\fffd\u0019J\\0\u0014\\46c|/\u001D53(\\fffd%0A-\\fffd\\fffd\u000EG\\fffd\u0002\\fffd\\66c\\fffd\\fffd\\fffd$_\\fffd^\\fffd\\fffd.Sn{E\\fffdMZ\\fffd\\\\]P\\fffd B\b\\fffdG\\fffdZ\u0006\\fffd\\fffdJ\\fffd\\fffd\\fffd\\fffdV\u0013\\fffd eBPg\\fffd d%09(\\fffd+\\fffdQ\\fffd\\0\\fffd\\fffd\\fffd\\fffd\\6cc\\fffd\\fffd\\fffd\\fffd D\\fffd\u0014Db\\fffd\\5d4\u000F\\fffd?\\fffd\\fffd!\u0012-\\fffd\\fffd e SQ\\fffd\\fffd\u0013\\fffd 7ZcE\\fffd\\fffd Bs\u0013\\fffd 55Hg\\'M%%09\u00010\\fffd\\fffd\\fffd\\fffd\\fffd-GQ\\fffd)}\u0017e\\12a\\fffd\u001F@\\fffd\\eb68 2[i;\\fffd\\fffd\\fffd\\fffd!\\fffd@\\fffd\\fffd\\'\\fffd \\fffdVDP9he*\\fffd\\0k\\fffdV(YdjI\\fffdX\u001Ep\vn\\fffd\u001Bd\\fffd/\\fffd\\fffd\\fffd\\fffd\\fffd+m\\fffd\\\\$\\fffdy\\fffd\\fffd-\"\\fffd\\fffd@EdR\\fffd\\fffd\u0002g]\\fffd}\\fffd%0AS\\fffd 8\\fffdG\u0019\\764\u0003.\\fffd\\fffd\\fffd\\fffdW\\0\\fffd\\fffd:\\4cb ae\\fffd\\fffd\\fffdm\\fffd\u0013?\\fffd\\fffd%0A\\fffd\u0011eV\\fffd\\7e3 D\\fffd 4\\fffd\u001CXI\u0004\\280\\fffd\\fffd\u0007\\fffd\\fffd\\fffd\\fffd 0/\\fffd\\fffd\\fffd\\fffdPFyr\\fffd\\fffd\\fffd\\445\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd_h\\fffd\\fffd\u0014Syy\\fffd\\fffd\\fffd\\fffd\u000EtX\u0014\\fffd\\4c2w\\fffd\u0016\\67e!eV\\fffd\\fffdJ\\255\\fffd\\fffd\\fffdJ\\fffd E\\'\\fffd\\fffd.\\fffd\\fffd\u0015\\fffdk*\\fffd\\fffd 2\\fffd 7j\\fffd.\\fffd\u001B\\fffd(\\fffd\\fffd\\fffd\\fffd E\\fffd@\\fffd\\fffd\\fffd\u001Eg|\"+\\fffd\\fffd a\\fffd%0Ag6\\fffd D?\\fffd\\fffdW\\fffd 6\\16c-\\fffd@\\135e\"A\\fffd\\0\\fffd%\\fffd\u0014\\fffd 0ZK\\fffd\\fffdW\\fffd\u001Fdt2\u0013D\\'\"\\fffd\\fffd\\fffd.\\fffdl`\\fffd\\fffd\\fffd\v\\fffd+\\fffd\\fffdl-\\fffdJ\\fffd\\fffdo\\fffd\\fffdW,\\fffd\\fffd+\\fffdlE\\fffdM\\fffdHQ\\fffd\\fffdU5\u0013\\fffd\\fffd\\'\\fffd\u001D\\fffd%0A\\fffdt\\fffd^\\fffd\u0001%0A{\\fffd\\32c e\u001A+\\fffd\v2Z\\c 4\\fffd\\fffd\\fffd_\u001A\\fffd&F\\fffd\\fffd\u0004\\fffd 4\\fffd\\fffd^\\fffd\\fffd\\fffd\\fffd+\u0013HdG\\fffd\\fffd^\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd&\\\\w|\\fffd 6\\fffd;\\fffdu=\\fffd 5\\fffd\\fffd\\fffd\\fffd\u0013=\\fffdJ\\fffd\\fffd\\fffd\\fffdz\\fffd\\fffd\\fffd\\fffd\\fffd\u0013\\fffd\\fffd E\\fffd\\fffd`\u0014\\fffd\\319\\fffd\\fffd>\\fffd F\\fffdr\u0017\u001A\\fffd\\fffd\\fffd\"\\fffd\\fffd\\fffdl%0A\u0010\\fffd\\fffd\\fffd%23\\fffd\\fffd DGU\\8c2a\\fffdT\b.\\fffd%\\fffd\\fffd\\2ba]\u001E\\fffdM\\fffdh\\fffd\u0002\\fffd,J{\\fffd\\fffd 0K\u0011QM}{!\\fffd:\\fffd\\192\\fffdW\\fffd_\\fffd\\fffdP\u001DHe\u0001L\\fffd\\fffdp\\fffdM\\fffd\u0005Q\\fffd\\fffd\u0003\\fffdU\\fffdZ:\\fffd 8g\\fffd|a\\fffd\\fffd\\fffd\\fffd-\\fffd\u000E\\fffd\\fffd)3\\fffd+\u0017\\fffd\\fffd\\fffd\\fffd\\4f6 f\\fffd\\fffdV\\fffd\\fffd\\fffd\\fffd\u0016\\fffd[\\fffd\\fffd\\fffd.\\fffd,\u001A\\fffd\\fffd\\fffd\\fffdMZ\u000ETA\\fffdT\\fffd-/\\fffd db\u0002o\\fffdj\\744\u001F\\fffdq\\fffd\\fffd aAy2c\\c\\fffd\\fffdM\\cR\\fffd D\\fffdl2E\\4a4\\fffd\u0001\\fffd\\fffdi\\fffd\u0005}f\u0005\\fffd\\fffd\\fffd)j\\723\\fffd\u0017\u0003\\fffd\\fffd\\fffd\\fffd\\fffd\u0007\\fffd 1\\fffd\\fffd+~^\\fffd\u001AK\\fffd,\\fffdt)\\fffdR`\\fffd 8\u001F\\fffd\\fffd\\fffd~<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd)5\u0005.\\fffd E\\fffd 9\\fffd\\0\\fffd\\fffd\\fffd\\fffdx%0D=\\fffdY\\fffd\\fffd\\fffd\\fffdP\\fffd\u0013\\fffd b|\\fffd\\fffdW(\\fffd{\\420\\fffdN\\'+b\u0016\\fffd\\fffdm\\fffd\\fffd au\\5b1P\\fffd_\\fffdW{`\\fffd)\\fffd%09\\fffdW5\\fffd\\fffd F\\fffdY\\fffd\\fffd$\\fffd_)\\fffd\\fffd\\fffd=3oy\\fffd\u0006\u0011\\fffd||\\fffd 9\\fffd\\fffdt2\\fffd\u001D\\fffd\\fffd\\fffd\\fffd\"`XD\\fffd\u0005\\fffdKg\\fffdT%23\\4a4\\fffd d\\fffd$[a2oa\\fffd\u0010\\fffd\u001E\\fffd@\\fffdzQD4i3\u001A\\c\\fffdU\\fffd\\fffd\u0016\\fffd e\u0005\\fffd 3\\fffd\u001F\\fffd\\0\\fffd 6\\fffd\\1f3\\fffd eB\\7ae\\fffd<X\u0005t\\fffd\\fffd&4e%:[\\fffd\\fffd C\\\\\b\\fffd>%0A*\u000F!H\u0016\\fffd\u0014\u0001\\fffd}\\fffd e1\u0015\\fffd 1\u0011\\fffd\\fffd|\\fffd\u0018L\\fffd\\fffd\" -(\\fffd_\\fffdu\\fffd\\fffd\\fffd\\fffd dK\\fffd\u0017\\fffd%\\fffd/Pn\\fffd\\fffd\\fffd\\fffd 8\\fffd-Qq\\fffd\\fffdT8\u0003I\u0001\\fffd/\u0001Ae\\fffd\\fffd\\fffd\\fffd\"M\\fffd&\\fffd&\\fffd/\\fffdG\\fffd 3\\fffd:\u001EV\\fffd\\c\\fffdO\\fffd\\fffd\\fffd\\fffd%23\u001Cu\v2\\fffd(ri*L\\fffd\\fffdY\\fffd\\fffd\\fffd\\fffd\\fffd}\\fffd\\fffd\\3d9 b\u0005\u0014+`+g\\fffd\u0005\\fffdM\\fffd\\fffd\\fffd\\fffd-\u0003\\fffd\v2\\fffdX\\fffd\\fffd\\fffd\\750%0D\\fffd\\fffdQk&\\fffd+Wz\\fffd\\fffd\\fffd+\\63dxR\\571\\fffdz\u0012\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u0019\\fffdXV\\fffd*\u001E\\fffd|a\\fffdPx\\fffdSa\\fffd E\\fffdY\\fffd\\fffd 3Z\\fffdP\\fffd\v\\0\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdg\\fffd \\fffd%0D\\fffdK_\u0019\\fffd%F\\fffdhW\\0\\fffd\u0017\u0005|J\\fffd\\fffd\\fffd\\fffd\u0014\\fffd%23\\fffd}e@\\fffd\\fffd\\fffd%0A\\fffd_\u0001\\fffd\\fffd\\fffd\\fffd\\fffd f\\fffd\u0012\\fffd\\fffd\\fffdxi\\fffd\\fffdu\\fffd&\u001A+\\fffd\u0017\\fffduC\\fffd\u0006V\\fffdOG\u0013)8\\fffdJ\\fffd\\fffd\\fffd\\fffd\\fffd 8\\fffd\u0018\u0011\\fffd\\fffdU\\fffdM\\fffd\u0015\\fffd>\\fffd=%090\\fffd\\fffd fc \\fffd\\fffd<\\fffd\\0\\fffd,\\fffdi`\u0015\\b3\\fffd\\fffd f\\fffd\u0015\\fffd\u0017\\fffd\\fffdT\\fffdZ\u0015xU\\fffd\\\\8QK\\'t!\\fffdJ\\fffd\u0016D\\fffdH\\\\\\fffd\\fffd\\fffd.+)\\fffd\\fffd\\fffd\\fffd\u0011l\u0005@\u0015\\fffd\\\\\\fffd\\fffd\b\"\\fffd\u0001b\\fffd dW\\681^\\fffd\\fffd\\7b8H8\u001A\\fffd\\fffd\\fffd\\fffdQh!B\\569p\u0006\u0018\u0013S\\fffd\u0016\u0007\\fffdV\"Bpu\\fffd\u0006/\\fffd\\fffdV(\\fffd\\fffd}\\fffd\u0017`%09\\fffd\u0013\\fffd\\fffd\\fffd\\fffd\\fffd 2$\\fffd\\fffd\u0019\\0 c*\\\\LC3:{gP\\fffdN\\0iJ\\fffd\\fffd\u0002\\fffd\u0015\\fffd\\fffd\\fffd@\\fffd]\u0004t\\fffdZ\\fffd@\\fffd\\fffd\u0005\\fffd\\fffd\u0013T z\\fffd\\fffd\\fffd\u0014\\\\\\fffd\\fffd 5=\\fffd\u0014\\fffdR\\fffd\\fffd{\\fffd\\fffd!\\fffd|\\fffd\\fffdIy%b\\fffdV\\fffd\\fffd=\\fffd\u0012\\563\\fffd\\fffd)\\fffd\\fffd\\fffd\\fffd;Sd\u00149\\fffd\\b4\\fffd\\fffdUp-\\fffd\\fffd\\fffdg%0D\\fffd*\\fffd^y>\u0001\\fffdg_\\fffd/]\\fffdo\\fffd]K\\fffd\\fffd\u001CX\u0005\\fffdK\\fffd\u0006McU\\fffd\\fffdQW\\fffd\\fffd{f\u0003\\fffd\\fffd\\fffd\"\\fffd(L\\fffd\\fffd|\\fffd\u000E\\fffd\\fffdlN\\fffdhsq\\2f6 7\u0001:\\fffdX\\fffd.x\\fffd\\fffd\u0011\\fffd %0A\\fffd\\fffdk\\fffdw\\fffd f\\fffdM2\\fffd}h\\fffd\\fffdlQ\\fffd\\ce6dR\\fffd*(\u0017\\fffdz\\fffd\\'w\\fffd 0K\\fffd<\\fffd 2\\fffd b\\fffd\\fffd\\fffdU>Wz\\fffd\\fffd\\fffdPUw\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\\fffd\\fffdM\\464\\fffd\\fffd*W[\\fffd*MN\\fffd\\fffd\\fffdW\\fffdX*\\fffd\u0005\u0017\\fffd\\fffd\u0002\\fffd\\fffd\\fffd\\568\\fffd\\fffdS\u001E\\fffdJ\\fffd:-n\\fffd\\526\\fffd\\fffdT}M|\\fffdW\\fffdSy%0D\\fffd\\fffd%j\u0004\\fffdM\u0017\u001C\\fffd\\fffd\\fffd\\0 D\u0019p\\fffd\\fffd\\fffdt|*\u0017\\20b6\u001A\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\\\\u0001\\fffd\\fffdh\\fffd\\fffd,\\c\\fffd\\fffd\\fffdT8\u0001\\fffd\\fffd)\\fffd@+\\fffd\\fffd/_4+\\0\\fffd\\\\\\fffd\u0005\\0\\fffd b7\\fffdi\\fffdZ8\\fffd\\fffd\\'=;q\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffdYuP\v\u0005\\fffd\\fffd\\fffdjuLVAN\\fffd^5\\fffd\\fffd<V\\1ab\\37c\u0018\\fffd\\488\\fffd%0A\\fffd\u0015\\fffdQ&g\\fffd 0 \\fffd\\0Z~\\fffd\\fffd\vT\by_\\fffd\\fffd\\fffd\\fffd\\fffd\u0010\\fffd<\\fffd\\fffdW*\\fffd]\\fffd%23eV\\fffd\\fffdm\\fffd\\fffd\u0019\\fffdvq\\5f3m\\fffd 6c\\fffd]|\\fffd a\u0001\\fffd\\fffd\\fffd\\fffd\\fffdm\\fffd\\fffd\\'\\fffdx\\fffd|\\fffd 9\\fffd\\fffd\\fffd$RD\\fffd d\\fffdM\\fffd D\\fffd e\\fffd+\\fffd\\fffd\\fffdO\"Pd%09\\fffd\u001AVe\\fffd\\\\\\fffdq\u0012\\fffd\\fffd\\fffd\\fffd\\fffdjoQ\\fffdSI\\fffd\\fffd\\fffdO\\656xN+\u0011\\fffd\u001C\\fffd\\fffd\\fffd fQ\\fffdN\\fffdU\\fffd\u0005`(\\fffd\\fffd\\fffdzw\\fffd*W\\fffd 96\\fffd\\fffd.^h\\fffd c\\fffd\\fffd\\fffdL\\fffd 5\u0019\\fffd\\fffd\\fffd 7\u0006\\fffd]0\\fffd\u000E\\fffdR\u000Fz\\fffd\\fffd\\\\\\fffd\\fffd\\fffd d:\\fffd%0A\\fffd\\3f8\u0010\u0017.\\fffdx2\\fffd\\fffd\\0\\fffd\\fffdU\\fffdg\u0002\\a5}^\\0k+\u0002z\\fffd\\fffd\"wj\\fffdV\\'F,\\0\\fffd%0A\u0017\\fffd\\fffd>\\fffd\\fffd]\\fffd?\v\u0014\\fffd\\fffdU9a\\fffdh\\fffd)\u0003\\fffdx\\fffd\\fffd\\fffd\\fffd\\2f1%0A\\fffd\\fffd\u0002`\\fffdL-j\\fffd\\fffdX\u0019\\fffdO\u001B\\fffd*\u001D\\fffdy\\fffdV.\\b7\\fffdj\u0005\\fffd+\u0011\\fffd\\771\\fffd\\fffd\\fffd\\fffd\u0005\\fffd\\fffd\\fffd+\\fffd\\fffd\\fffd\\fffd\\c\\fffd%0A@\\fffdyO\v,\\fffd\\fffd\\5ac\\fffdo\\fffdX\u0001Fh{\\fffdx\u0001\\fffd\\fffd%0A\\fffd\u0001\\fffd+\\'\\fffdj\\fffd\u0017\\fffd\\fffdW\\fffd\\217\\fffd\\fffdj\\fffd\\fffd\\fffd\\fffd\u0019\u0017\\4bb\\fffdl\u0001\\fffd 9\u0015~\u0012\\fffdV\\fffd\\fffd\\fffd\u001D\\fffd\\fffd\u001C\\fffd 7\\fffd\\fffdgH\\fffd\\fffd\\fffd\\1548\\fffdI\\470\u000E,Z\\fffd\\fffd\\fffd\\fffdW\u0006Z\\fffd\\fffdr\\fffd@\\fffd\\fffd\\fffd>\\fffd\\fffd\\fffd\\141m+\\fffd\\fffd d|>=\\fffd\\fffd\u0004@z\\fffdsg\\fffdj_\\fffd%0D\\fffdW\\fffd+I\\fffd\\fffd\\fffd\\fffd\\fffdW\\fffd 1\\fffd\\fffd\\fffd\\fffd\\fffdl3\u0015?\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u001B\u0006\\fffd\\fffd\\fffd\u0003HW\\fffd\\fffdK\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd~>\\fffd\\fffd_\\fffdo\\0\\fffdx=)\\fffd\\fffd{z\\0\\0\\0\\0IEND\\fffd B`\\fffd') no-repeat left top}.p-colorpicker-panel .p-colorpicker-hue{background:transparent url(\"data:image/png,\\fffdPNG%0D%0A\u001A%0A\\0\\0\\0%0DIHDR\\0\\0\\0\u0011\\0\\0\\0\\fffd\b\u0002\\0\\0\\0\\fffd\\fffd\\fffd\\fffd\\0\\0\\0\\fffdIDATX\\fffd\\fffdQ%0A\\fffd@\\c D\\fffd\\456\\fffd\\fffdz\u0005\\fffd%?<D\\fffd\u0015EK\\fffd\\fffdIA\\fffd\u0012\\fffd\\fffd!y\\fffd\\fffd$,\\fffd~\\fffd_\\fffd\\fffd\\fffd\\fffd\\fffdr\\fffdoE\\fffdI \\fffd 2z\\fffd\\fffd\btb\\fffd\\fffd 9\\fffd%Nmg\u0010<\\fffd c\\fffd\\d0c7*\u0016@\\fffd\\253\u0001U\\\\\\fffd \\fffd 1\\fffd\\a4f\\fffd\\fffd\u000E\\fffd\u0004\\fffd{\\fffd\\fffd\\fffd*\\fffd-\u001E\\fffd\\fffd 5\\fffd\\fffd\u0005\\fffd'x\\fffd\\fffd\\109\\fffd\u0006O\u0002q?TQ_\u000F2\\fffd\u0016_\b\\fffd[\\fffd 1\\fffdU<W\\fffd Am<\\fffdk\u001A<\\fffd\\7dc\\fffd)\\fffd C\u0015\\fffd\\62e\u0013@\\fffd]\\fffd<\\fffd(\u0001\\fffd\\fffd\u0015<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdr\\7da%0D\\fffd\\fffd\\fffdk\\fffdG\\fffd\\c\\fffd 4\\fffd\\fffdx\\fffd\\fffd A\\fffd+\\fffd\\fffd\\fffd DM\u001D\\fffd\\fffd\\fffdS\\fffd 6+*{\\fffd\u0005\\fffd FbV0\\fffd\u001C%\\0\\0\\0\\0IEND\\fffd B`\\fffd\") no-repeat left top}@layer primeng{.p-inputtext{margin:0}.p-fluid .p-inputtext{width:100%}.p-inputgroup{display:flex;align-items:stretch;width:100%}.p-inputgroup-addon{display:flex;align-items:center;justify-content:center}.p-inputgroup .p-float-label{display:flex;align-items:stretch;width:100%}.p-inputgroup .p-inputtext,.p-fluid .p-inputgroup .p-inputtext,.p-inputgroup .p-inputwrapper,.p-inputgroup .p-inputwrapper>.p-component{flex:1 1 auto;width:1%}.p-float-label{display:block;position:relative}.p-float-label label{position:absolute;pointer-events:none;top:50%;margin-top:-.5rem;transition-property:all;transition-timing-function:ease;line-height:1}.p-float-label textarea~label{top:1rem}.p-float-label input:focus~label,.p-float-label input.p-filled~label,.p-float-label textarea:focus~label,.p-float-label textarea.p-filled~label,.p-float-label .p-inputwrapper-focus~label,.p-float-label .p-inputwrapper-filled~label{top:-.75rem;font-size:12px}.p-float-label .input:-webkit-autofill~label{top:-20px;font-size:12px}.p-float-label .p-placeholder,.p-float-label input::placeholder,.p-float-label .p-inputtext::placeholder{opacity:0;transition-property:all;transition-timing-function:ease}.p-float-label .p-focus .p-placeholder,.p-float-label input:focus::placeholder,.p-float-label .p-inputtext:focus::placeholder{opacity:1;transition-property:all;transition-timing-function:ease}.p-input-icon-left,.p-input-icon-right{position:relative;display:inline-block}.p-input-icon-left>i,.p-input-icon-left>.p-icon-wrapper,.p-input-icon-right>i,.p-input-icon-right>.p-icon-wrapper{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-input-icon-left,.p-fluid .p-input-icon-right{display:block;width:100%}}@layer primeng{.p-inputtextarea-resizable{overflow:hidden;resize:none}.p-fluid .p-inputtextarea{width:100%}}@layer primeng{.p-password{position:relative;display:inline-flex}.p-password-panel{position:absolute;top:0;left:0}.p-password .p-password-panel{min-width:100%}.p-password-meter{height:10px}.p-password-strength{height:100%;width:0;transition:width 1s ease-in-out}.p-fluid .p-password{display:flex}.p-password-input::-ms-reveal,.p-password-input::-ms-clear{display:none}.p-password-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-password .p-icon{cursor:pointer}.p-password-clearable.p-password-mask .p-password-clear-icon{margin-top:unset}.p-password-clearable{position:relative}}@layer primeng{.p-radiobutton{display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:bottom;position:relative}.p-radiobutton-box{display:flex;justify-content:center;align-items:center}.p-radiobutton-icon{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0) scale(.1);border-radius:50%;visibility:hidden}.p-radiobutton-box.p-highlight .p-radiobutton-icon{transform:translateZ(0) scale(1);visibility:visible}p-radiobutton{display:inline-flex;vertical-align:bottom;align-items:center}.p-radiobutton-label{line-height:1}}@layer primeng{.p-ripple{overflow:hidden;position:relative}.p-ink{display:block;position:absolute;background:#ffffff80;border-radius:100%;transform:scale(0)}.p-ink-active{animation:ripple .4s linear}.p-ripple-disabled .p-ink{display:none!important}}@keyframes ripple{to{opacity:0;transform:scale(2.5)}}@layer primeng{.p-tooltip{position:absolute;display:none;padding:.25em .5rem;max-width:12.5rem;pointer-events:none}.p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-left{padding:0 .25rem}.p-tooltip.p-tooltip-top,.p-tooltip.p-tooltip-bottom{padding:.25em 0}.p-tooltip .p-tooltip-text{white-space:pre-line;word-break:break-word}.p-tooltip-arrow{scale:2;position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.p-tooltip-right .p-tooltip-arrow{top:50%;left:0;margin-top:-.25rem;border-width:.25em .25em .25em 0}.p-tooltip-left .p-tooltip-arrow{top:50%;right:0;margin-top:-.25rem;border-width:.25em 0 .25em .25rem}.p-tooltip.p-tooltip-top{padding:.25em 0}.p-tooltip-top .p-tooltip-arrow{bottom:0;left:50%;margin-left:-.25rem;border-width:.25em .25em 0}.p-tooltip-bottom .p-tooltip-arrow{top:0;left:50%;margin-left:-.25rem;border-width:0 .25em .25rem}}.customDialogClass .p-dialog{height:auto}.customDialogClass .p-dialog-header{padding:.8rem .55rem!important;background-color:#fff!important}.customDialogClass .p-dialog-header-close-icon{color:#000!important}.customDialogClass .p-dialog-content{border-top-left-radius:0%;padding:0}.p-dialog .p-dialog-header{background-color:#fff!important;border-bottom:2px solid #e5e7eb;padding:12px 16px;font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:space-between}.p-dialog-mask{background:#00000080!important}.p-dialog .p-dialog-content{background-color:#fff;padding:16px}.p-dialog .p-dialog-footer{background-color:#f3f4f6;padding:12px 16px;border-top:2px solid #e5e7eb}.p-dialog .p-dialog-content::-webkit-scrollbar{width:8px}.p-dialog .p-dialog-content::-webkit-scrollbar-track{background-color:#f1f1f1}.p-dialog .p-dialog-content::-webkit-scrollbar-thumb{background-color:#faa762;border-radius:10px}.p-dialog .p-dialog-content::-webkit-scrollbar-thumb:hover{background-color:#faa762}.custom-save-button{background-color:#faa762!important;color:#fff!important;border:1px solid #FAA762!important}.custom-save-button:hover{background-color:#e59550!important;border-color:#e59550!important}.form__input{width:100%;padding:8px;border:1px solid #ccc;border-radius:5px}label{font-size:14px;font-weight:600;margin-bottom:5px}.button-group{display:flex;justify-content:flex-end;gap:10px;padding-top:1rem}button{padding:8px 12px;border:none;border-radius:5px;cursor:pointer}.cancel{background:#ccc;color:#000}.save{background:#007bff;color:#fff}button:hover{opacity:.8}.card-width{width:295px!important;flex-shrink:0}.justify-end{justify-content:end}.card-height{max-height:300px;overflow:scroll}.option-card{border:1px solid grey;padding:26px;border-radius:10px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1$1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i5.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: DropdownModule }] });
236
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ConfigurationPanelComponent, isStandalone: true, selector: "fx-configuration-panel", inputs: { visible: "visible", configs: "configs", tableConfigData: "tableConfigData" }, outputs: { isVisible: "isVisible", configuration: "configuration" }, usesOnChanges: true, ngImport: i0, template: "<p-dialog header=\"Edit Configurations\" [modal]=\"true\" [draggable]=\"false\" [(visible)]=\"visible\" [style]=\"{width: '70rem'}\" class=\"customDialogClass\" (onHide)=\"closeDialog()\">\r\n <!-- <ng-template pTemplate=\"header\">\r\n <div class=\"flex p-2 bg-white border-2\">\r\n <p class=\"text-base\">Edit Configurations</p>\r\n </div>\r\n </ng-template> -->\r\n <div class=\"flex flex-col gap-4 bg-white p-2 border-2 border-gray-200\">\r\n <div class=\"flex items-center gap-4 mb-8 w-full\">\r\n <div class=\"w-1/3\">\r\n <label for=\"rows\" class=\"font-semibold w-24\">Rows</label>\r\n <input type=\"text\" [disabled]=\"enableAPI\" [(ngModel)]=\"rows\" placeholder=\"rows\" class=\"form__input\" id=\"name\" autocomplete=\"rows\" />\r\n </div>\r\n <div class=\"w-1/3\">\r\n <label for=\"enableAPI\" class=\"font-semibold w-24\">Enable API</label>\r\n <input type=\"checkbox\" [(ngModel)]=\"enableAPI\" placeholder=\"API Url\" id=\"enableAPI\" autocomplete=\"enableAPI\" />\r\n </div>\r\n <div class=\"w-1/3\">\r\n @if (enableAPI) {\r\n <ng-container>\r\n <label for=\"api\" class=\"font-semibold w-24\">API</label>\r\n <input type=\"text\" [(ngModel)]=\"api\" placeholder=\"Enter API Url\" id=\"api\" class=\"form__input\" autocomplete=\"api\" />\r\n </ng-container>\r\n }\r\n </div> \r\n \r\n </div>\r\n <!-- <div class=\"flex items-center gap-4 mb-8\">\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n <div class=\"w-1/2\">\r\n \r\n \r\n </div>\r\n \r\n \r\n </div>\r\n \r\n <div class=\"flex items-center gap-4 mb-8\">\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n \r\n \r\n </div> -->\r\n \r\n <div class=\"flex flex-wrap gap-4 mb-8\">\r\n \r\n <div class=\"w-full flex items-center justify-between\">\r\n <p class=\"text-sm font-semibold\">Columns:</p>\r\n <!-- <button type=\"button\" (click)=\"addColumn()\" class=\"custom-save-button\">Add Column</button> -->\r\n </div>\r\n \r\n <div class=\"w-full overflow-x-auto\">\r\n <form [formGroup]=\"dynamicForm\" (ngSubmit)=\"onSubmit()\">\r\n <!-- Flex container with nowrap to keep all columns in a single row -->\r\n <div formArrayName=\"columns\" class=\"flex gap-4 flex-nowrap whitespace-nowrap\">\r\n <div *ngFor=\"let column of columns.controls; let i = index\" [formGroupName]=\"i\" \r\n class=\"border p-4 rounded-lg min-w-[20rem] flex-shrink-0 card-width\">\r\n <div class=\"top-2 right-2 flex gap-2 justify-end\">\r\n <button type=\"button\" (click)=\"duplicateColumn(i)\" \r\n class=\"bg-green-500 text-white px-3 py-1 rounded-md hover:bg-green-600\">\r\n \u2795\r\n </button>\r\n <button type=\"button\" (click)=\"removeColumn(i)\" \r\n class=\"text-white px-3 py-1 rounded-md hover:bg-red-600\" *ngIf=\"columns.length>1\">\r\n \u274C\r\n </button>\r\n </div>\r\n <!-- Columns in a Single Row -->\r\n <div class=\"grid grid-cols-1 gap-4 items-center mb-2\">\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Column Name:</label>\r\n <input formControlName=\"header\" placeholder=\"Enter Column Name\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Column Type:</label>\r\n <select formControlName=\"cellType\" class=\"w-full border rounded-md px-3 py-2\">\r\n <option *ngFor=\"let type of columnTypes\" [value]=\"type\">{{ type }}</option>\r\n </select>\r\n </div>\r\n <div class=\"col-span-3\" *ngIf=\"['smart-dropdown', 'dropdown'].includes(column.value.cellType)\">\r\n <label class=\"font-semibold\"> <input type=\"checkbox\" formControlName=\"isMultiselect\" class=\"custom-margin\"/>Multiselect</label>\r\n <!-- <select formControlName=\"isMultiselect\" class=\"w-full border rounded-md px-3 py-2\">\r\n <option value=\"true\">Enable</option>\r\n <option value=\"false\">Disable</option>\r\n </select> -->\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">PlaceHolder:</label>\r\n <input formControlName=\"placeholder\" placeholder=\"Enter Placeholder\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <ng-container *ngIf=\"['checkbox'].includes(column.value.cellType)\">\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">CheckedValue:</label>\r\n <input formControlName=\"checkedValue\" placeholder=\"Enter checkedvalue\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">UnCheckedValue:</label>\r\n <input formControlName=\"unCheckedValue\" placeholder=\"Enter UnCheckedValue\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Checkbox Label:</label>\r\n <input formControlName=\"checkBoxLabel\" placeholder=\"Enter Checkbox Label\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"['input-text','input-number'].includes(column.value.cellType)\">\r\n <div class=\"col-span-3\">\r\n <label for=\"isRequired\" class=\"font-semibold w-24\">\r\n <input type=\"checkbox\" formControlName=\"isRequired\" class=\"custom-margin\"/>Required</label>\r\n </div>\r\n \r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Error Message:</label>\r\n <input formControlName=\"errorMessage\" placeholder=\"Enter Checkbox Label\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n </ng-container>\r\n \r\n\r\n @if (enableAPI) {\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">API Value Key:</label>\r\n <input formControlName=\"apiKey\" placeholder=\"Enter Value Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n }\r\n \r\n </div>\r\n <div *ngIf=\"['radio-group', 'dropdown'].includes(column.value.cellType)\" class=\"mt-2\">\r\n \r\n <label class=\"font-semibold\">Options:</label>\r\n <button type=\"button\" (click)=\"addOption(i)\" class=\"custom-save-button justify-end\"> \u271A </button>\r\n\r\n <div formArrayName=\"options\" class=\"card-height\">\r\n <div *ngFor=\"let option of getOptions(i).controls; let j = index\" [formGroupName]=\"j\" \r\n class=\"relative grid grid-cols-1 gap-4 items-center mt-2 option-card\">\r\n \r\n <button type=\"button\" (click)=\"getOptions(i).removeAt(j)\" \r\n class=\"absolute top-0 right-0 bg-transparent text-red-500 hover:text-red-700 \r\n text-xl font-bold p-1 cursor-pointer\">\r\n \u274C\r\n </button>\r\n \r\n <input formControlName=\"optionName\" placeholder=\"Enter Option Name\" \r\n class=\"col-span-4 border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n <input formControlName=\"optionValue\" placeholder=\"Enter Option Value\" \r\n class=\"col-span-4 border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n \r\n </div>\r\n <!-- <button type=\"button\" (click)=\"addOption(i)\" class=\"custom-save-button justify-end\">Add Option</button> -->\r\n </div>\r\n \r\n \r\n <div *ngIf=\"['smart-dropdown'].includes(column.value.cellType)\" class=\"grid grid-cols-1 gap-4 mt-4\">\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">API Url:</label>\r\n <input formControlName=\"apiUrl\" placeholder=\"Enter API URL\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">Value Key:</label>\r\n <input formControlName=\"valueKey\" placeholder=\"Enter Value Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">Label Key:</label>\r\n <input formControlName=\"labelKey\" placeholder=\"Enter Label Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n \r\n \r\n \r\n \r\n </div>\r\n \r\n </div>\r\n\r\n\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <!-- <hr class=\"mt-3 mx-2 mb-0 opacity-10\"> -->\r\n <!-- <div class=\"flex justify-end gap-4 w-full\">\r\n <p-button label=\"Cancel\" severity=\"secondary\" (click)=\"closeDialog()\" />\r\n <p-button styleClass=\"border border-indigo-600\" label=\"Save\" (click)=\"saveConfiguration()\" />\r\n </div> -->\r\n <div class=\"flex justify-center my-3\">\r\n <p-button label=\"Cancel\" severity=\"secondary\" (click)=\"closeDialog()\"\r\n styleClass=\"border-gray-400\" />\r\n <p-button label=\"Attach\" label=\"Save\" (click)=\"saveConfiguration()\" \r\n styleClass=\"cta_buttons text-medium button_text_white secondary-color border-1 stroke_secondary no_hightlight no_hightlight_stroke h-max mr-2 w-6rem custom-save-button\"\r\n />\r\n </div>\r\n </ng-template>\r\n</p-dialog>", styles: [".p-overflow-hidden{overflow:hidden;padding-right:var(--scrollbar-width)}@layer primeng{.p-component,.p-component *{box-sizing:border-box}.p-hidden{display:none}.p-hidden-space{visibility:hidden}.p-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.p-hidden-accessible input,.p-hidden-accessible select{transform:scale(0)}.p-reset{margin:0;padding:0;border:0;outline:0;text-decoration:none;font-size:100%;list-style:none}.p-disabled,.p-disabled *{cursor:default!important;pointer-events:none}.p-component-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.p-unselectable-text{-webkit-user-select:none;user-select:none}.p-scrollbar-measure{width:100px;height:100px;overflow:scroll;position:absolute;top:-9999px}@-webkit-keyframes p-fadein{0%{opacity:0}to{opacity:1}}@keyframes p-fadein{0%{opacity:0}to{opacity:1}}input[type=button],input[type=submit],input[type=reset],input[type=file]::-webkit-file-upload-button,button{border-radius:0}.p-link{text-align:left;background-color:transparent;margin:0;padding:0;border:0;cursor:pointer;-webkit-user-select:none;user-select:none}.p-link:disabled{cursor:default}.p-sr-only{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.p-connected-overlay{opacity:0;transform:scaleY(.8);transition:transform .12s cubic-bezier(0,0,.2,1),opacity .12s cubic-bezier(0,0,.2,1)}.p-connected-overlay-visible{opacity:1;transform:scaleY(1)}.p-connected-overlay-hidden{opacity:0;transform:scaleY(1);transition:opacity .1s linear}.p-toggleable-content.ng-animating{overflow:hidden}.p-icon-wrapper{display:inline-flex}.p-icon{display:inline-block}.p-icon-spin{-webkit-animation:p-icon-spin 2s infinite linear;animation:p-icon-spin 2s infinite linear}}@-webkit-keyframes p-icon-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes p-icon-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@layer primeng{.p-badge{display:inline-block;border-radius:10px;text-align:center;padding:0 .5rem}.p-overlay-badge{position:relative}.p-overlay-badge .p-badge{position:absolute;top:0;right:0;transform:translate(50%,-50%);transform-origin:100% 0;margin:0}.p-badge-dot{width:.5rem;min-width:.5rem;height:.5rem;border-radius:50%;padding:0}.p-badge-no-gutter{padding:0;border-radius:50%}}@layer primeng{.p-button{margin:0;display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;vertical-align:bottom;text-align:center;overflow:hidden;position:relative}.p-button-label{flex:1 1 auto}.p-button-icon-right{order:1}.p-button:disabled{cursor:default;pointer-events:none}.p-button-icon-only{justify-content:center}.p-button-icon-only:after{content:\"p\";visibility:hidden;clip:rect(0 0 0 0);width:0}.p-button-vertical{flex-direction:column}.p-button-icon-bottom{order:2}.p-button-group .p-button{margin:0}.p-button-group .p-button:focus,.p-button-group p-button:focus .p-button,.p-buttonset .p-button:focus,.p-buttonset p-button:focus .p-button{position:relative;z-index:1}.p-button-group .p-button:not(:last-child),.p-button-group .p-button:not(:last-child):hover,.p-button-group p-button:not(:last-child) .p-button,.p-button-group p-button:not(:last-child) .p-button:hover,.p-buttonset .p-button:not(:last-child),.p-buttonset .p-button:not(:last-child):hover,.p-buttonset p-button:not(:last-child) .p-button,.p-buttonset p-button:not(:last-child) .p-button:hover{border-right:0 none}.p-button-group .p-button:not(:first-of-type):not(:last-of-type),.p-button-group p-button:not(:first-of-type):not(:last-of-type) .p-button,.p-buttonset .p-button:not(:first-of-type):not(:last-of-type),.p-buttonset p-button:not(:first-of-type):not(:last-of-type) .p-button{border-radius:0}.p-button-group .p-button:first-of-type:not(:only-of-type),.p-button-group p-button:first-of-type:not(:only-of-type) .p-button,.p-buttonset .p-button:first-of-type:not(:only-of-type),.p-buttonset p-button:first-of-type:not(:only-of-type) .p-button{border-top-right-radius:0;border-bottom-right-radius:0}.p-button-group .p-button:last-of-type:not(:only-of-type),.p-button-group p-button:last-of-type:not(:only-of-type) .p-button,.p-buttonset .p-button:last-of-type:not(:only-of-type),.p-buttonset p-button:last-of-type:not(:only-of-type) .p-button{border-top-left-radius:0;border-bottom-left-radius:0}p-button[iconpos=right] spinnericon{order:1}}@layer primeng{.p-checkbox{display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:bottom;position:relative}.p-checkbox-disabled{cursor:default!important;pointer-events:none}.p-checkbox-box{display:flex;justify-content:center;align-items:center}p-checkbox{display:inline-flex;vertical-align:bottom;align-items:center}.p-checkbox-label{line-height:1}}.p-colorpicker-panel .p-colorpicker-color{background:transparent url('data:image/png,\\fffdPNG%0D%0A\u001A%0A\\0\\0\\0%0DIHDR\\0\\0\\0\\fffd\\0\\0\\0\\fffd\b\u0006\\0\\0\\0<\u0001q\\fffd\\0\\0\\0%09pHYs\\0\\0\v\u0013\\0\\0\v\u0013\u0001\\0\\fffd\\fffd\u0018\\0\\0\\0 cHRM\\0\\0z-\\0\\0\\fffd\\fffd\\0\\0\\fffd\\fffd\\0\\0\\fffdR\\0\\0qE\\0\\0\\fffd f\\0\\0 9\u0007\\0\\0!\\fffd\u0003\\'\\fffdV\\0\\0\\'\\fffdIDATx\\fffd\\fffd}\\2ce\\fffdH\\fffd\\fffd\u001A\\'\\fffd\\fffd\u001E\\fffdO\\fffd;\\fffd\u000F\\fffd 8\\fffdn\\fffd\\fffd]\\755Y\\fffd\\fffd\u000F\\fffd=\u0014\\fffd%\u0014\\fffd\\fffd\\fffd\\fffdG\\fffd\u0002\\fffd%09 \u0010\\fffdN:\\fffd\\fffd(T\u0011\u0015U36w\\fffd/3\\fffd\\fffd f\\fffd 03\\fffd\\fffd\\fffd\u001B=\\fffd\\fffd\\fffd\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffd~\\fffd 6w/\\fffdW=\\fffdx\\fffd\\fffd 1\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd\\1e2\\fffd\\fffd\\c?\\fffd\\fffd\\fffd\\fffd\\fffdw\u001C\\fffd\\fffdZ\\fffd\\fffd\\77d\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\77f}\\fffd\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd\\fffd cf\\fffdk\u0007\\fffd\\fffdy\u0016O\\fffdl@\" \\fffdN\\533z\\fffd\\fffd\\f203\\fffd\\fffd 1\u0012\\fffd\\fffd\\fffd\\0\u0010\\fffd\u0018\\fffd\\fffd\\fffdyvq\\fffd\\fffd\\fffd\\fffd%09\\fffd\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\\7fad\\fffd\\fffd\\6ce\\fffd\u0006\\fffd\\fffdx<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u001F\u001F\u001F\\fffd\\fffd\\fffdw\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdO?\\fffd_\\fffd\\fffdW\\fffd\\fffd{\\fffdz|\\fffdI\\fffd\\640\\fffds\\fffd^<\\fffd\\fffd/\\\\\\fffdo\\fffd\\fffd\\fffdN?\\fffdo23\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd 9?v<\\fffd\\fffd\\fffd\\fffdo\\fffd\\fffdv\u0010\\fffd\\5cf}v\\fffdl;\\fffd\\fffdk\\fffd|>\\fffd\\fffd|\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\\fffd\\fffdn7\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdO?\\fffd d\\7fe}\\fffd/\\fffd\u000F\\fffd~h\\fffd ffm\\fffd\\1035\\fffdV\\fffd\\fffd\\fffd\\7381%0D\u001E\\fffd\u0006=\\fffd\\fffd\\fffd*\\fffd}\\fffd\\\\<\\fffd\\fffd\\fffdm\u0007>\\fffd\\fffd\u0005\\fffd\u0018\u001C\v\\fffdy\\fffdG\\fffd 7\\0\\fffd F\\0r\\0V\u001B@\\fffd\\fffdt\\fffd\\fffd\\fffd\\fffd\\fffd|Z\\ff4d\\fffd\\fffd\\1e3=\u001E\\fffd\\fffd~\\fffd\\fffd\\fffdv\\cf3cf\\fffd\\fffd\\fffd\u000F\\fffd\\fffd\\fffd[\\fffd\\fffd\\fffd_\\fffd?\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd~\\fffd\\fffd\\fffd\\fffdx<\\697\\fffd\\fffd\\289\\fffd\\fffd\u0015\\fffd\u0004\\'o%0A\u0010\\fffdl\\fffd\\fffdr\u0002\\fffd\\0\\fffd\\fffd D\\fffd\\58e\u0013\\fffd\u0017B\\fffdY\\c\u0012\\fffd\u0001\\fffd\\fffd\\fffd\\fffd\\fffd 6xlj\\fffd\\fffd[km\\fffd[k\\fffd\\fffd[\\fffd=\u0004\u0016E\\fffd%23R\\fffd\\fffd\u0007\\fffd\\fffds~\u0002\\448R;\\fffd|\\fffdP}\\fffd\\6de\\fffdg\\fffd\\fffd\\fffd\\fffdn;\u0005\\fffd\\5ef_\\fffd_\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd/\\fffd\\fffd\\5ef_\\fffd\\fffd|\\fffd\u0014X00)\\fffd\\fffd\u0011&\u0004g!\\fffd\\fffd\\'^\\0I\\fffdM\u0015\\fffd a$%0A\\fffd\\fffd\u0001\\fffd\\fffd\\fffd FA\\fffd 9\\fffd\\fffd\\fffd A\\fffd 0\\fffd\\fffd c\\fffd\u0011\\fffdN\\fffd 6\\fffd\\fffd\u0007\\fffd\\fffd 1\\fffd\\fffd\\fffd\\fffd{\\fffd\\fffd`rw{<\u001E\u0003X\\fffd|>}\\0\\fffdv\\fffd\\fffd\\fffd\\fffd f\\fffd\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffdo\\fffd\u001D\\fffd\\fffd\\fffd\\fffd_\\fffd\\fffd\\5ef\\fffd\\fffdo\\fffdY\\fffd}%0A\\fffd\\fffd\\fffd\"m\\fffd\"[\\fffd\\fffd\\1a0\\fffd\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffd\u0010\\fffd\\fffd DT\\fffd\\fffd.\u0003V\\fffdx\u0003$\\fffd\\fffd\\fffd.`\"\\fffd 4\\0\\519\\fffd\\fffdl\\fffd\u0019\u0002\\fffd 0B\\fffd\\fffd\\fffd\\7fe\\fffd 6\u0004\\fffd\\fffd{?\"\u0016\u0002\v5\\fffd\\fffd~\\fffd\\fffd\\fffd\u000F\\fffd\\fffd\\fffdG\\fffd\\fffd\\fffdh\\fffd\\fffd\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdv\\fffd\\fffd\u000E\\fffd(RT\u0001\\fffd\\fffdg\"N\\fffdH\\fffd\\fffd*\\fffd\\fffd|\\fffd\b \\fffd\\fffd\\fffd\\fffd\\fffdZ\\d3\\fffd\\fffd 5\\cb\u0011%23z\\0\\fffd\\fffdG\u0001Pf\\fffdr\u0012\\5ca\\fffd\u001A\\fffd\\fffd\u001E\\fffd\u0006x\u001AF,\\fffdQ\\fffd\\fffd\\fffd\\fffd\\fffdv\u001D5@5\\fffd\\6ee\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\\fffd\\fffd\\fffd\\fffd\\7ff\\fffd\\fffd~\\fffd\\fffd}||\\c\\fffd\\fffd~\\fffd\\fffd\\fffdn\\fffd\\fffd=\u001E\\fffd ffZcU\\fffd 5\\fffd d+\\0\\fffd-\\fffd\\b20e<H *\\fffdNQ\\fffd\\fffd D^\\fffdK\u0006\u0011\\fffdG\\fffd\"\\0!\\fffdu\\fffd/\\fffdK\\fffd\\fffd f`\\fffd\\fffd\\fffd D\\fffd\\fffd\b\\fffd A\\fffd%23za\\fffd\u001AT\\fffdk\\fffd\\fffd\\fffd\\fffd\\fffd,pD,\\fffd\\fffd\\fffd\\fffdo\\7fe%0D!o?~\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd B\\fffd\u001E\\\\\\fffd/\\464 8\\fffd>\\fffdt\u0019\\fffdI\\fffd(\\fffd)@\\fffd 1[!\\fffd\\fffd\u0019\u0015\\fffd\\fffd\\fffd\u001E\\fffd\\fffd\\fffd\u0016\\0\\fffd\\fffd\\fffd\\fffd`\\fffd\bu\\fffdk\\fffd\\fffd&\\fffd\\fffd d{;\\fffd a\u0004\\6d0\\fffd\bL\u0003h\\fffd\\fffd\\fffd\\0\\fffd\\fffd\\fffd\\fffd]S\\fffd\\fffd\\fffd@\\fffd\\fffd\u0001*\u0004\\fffd\\0\\4b7o\\fffd\\fffd\\fffd\\fffd\\1f6\\fffd\u0001,\\fffdP\\fffd\\cO\\fffdZHRs\\fffd e\\fffd\u00118\\fffd 82\\fffd\u0005\\78fGQ\\fffd\\fffd=ff\u0002\u0014\\fffd\u0017X\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd 5p\\fffd\u0018t\\fffd\\f0$]u\\fffd\\fffd a\u001B\\c:DKa\\8a9d\\fffdl\\fffd\\fffd\u0013\\fffd=\\fffd\\3f6G\\fffdv\\fffd\\fffd\\6ee\\fffdNT\\fffd\\fffd?>>\\fffd\\fffd\\1c7=\u001E\\fffd\\fffd\\fffdx\\fffd\u0011\u00199bM\\fffd\\fffd,J\\fffd\\fffd\\fffd\u0005\\fffd\\fffd\u0001\\fffd\"\\a2f2 1\\fffdG\\fffd|\u0011y\u001C\\fffdsa\u0007x$\\4154h\\fffd)\\fffd@6\u001Cn\\fffdT\\fffd^\"1\\0 b%23\\fffd\\fffd%0D\\fffd\\fffd\\fffd\\fffds\\fffd d\\fffd%0D-\\fffd\\fffd@\u0007\\fffdj\u0018\\fffdGd\\fffd\u001F\\fffd}\\fffdVv\\fffd\\fffd\\fffd~\\fffd\\fffd\\fffd\\fffd%0DSt\b\\fffd}\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffdw{<\u001EG\\fffd\\fffdh\\fffd\\fffdQ\\fffd\\fffd*\u0003TK\"Oh\\fffd\\fffd\\c\\c897\\fffd\\fffdv\\fffd\\fffd\\fffd\\fffd\\fffd\\4f6\b\\fffdM\\0 FzP\\fffd\\fffd 5\u0006\\c\u001CsS\u0019\u001D\\fffd\u0001\\200\\fffd\\cJ.hn\\fffd 7\\fffdQ\\fffd\\fffd@C a&\\fffd\\fffdWuP\\fffdn\\fffdn\u0002Xv\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\u001Bf\\fffd\\fffd\u0003qd\\fffd>\\fffd}\u0002\u0016g<\\fffdl+\\fffdrHApB\\fffd\\fffdw\\fffd\\fffd\\fffdV\\0\\fffd\u0005\\11c(\\fffd\\fffd m\u0001\\fffd\\fffdy\u0014\\fffd.\u0011p\\fffd\\fffd\u0010\\fffd\\fffd\\fffd.2-\\fffd c\u0016\\fffd\\'\\fffd\\fffd`\u0002 %0DZ\\fffd\u001C\\fffd\\fffd(\\fffd\\fffdj\\0iD)\\736!\\fffd\u0006\\fffd\\fffd\\235\\fffdQh\\0i\\0\\c\\fffd\\fffd\u0003\\fffd\u001F\u001F\u001F\u000E\u0011\\fffd\\fffd\\fffd^\\0U\\fffd\u001F\\'W\\42d\\fffd\\fffd\u001A\\9ca2\\fffd\\ch\u0002\\517\\c\u000F\\fffd\\fffd B^\u0001\\fffdu\\fffd\\fffd\u000EX\\fffd\\fffd\\fffd\u0011\\fffd\\fffd\u0003\\0N\\fffd\\fffd\\fffd\\fffd 9\u0007\\fffd\\fffd\u0013\\fffd\\fffd\u0001L\\fffd\\fffd\u001BF\\fffd\\fffd\\fffdyl{>\\fffd\\fffd\\78dpD\\fffd\\fffd%09\u000E\\fffdt\\fffd\\fffd\u0007\\fffd\\fffd\u000E\\fffd\\fffdG\\fffd~\\fffd\\fffd}\\fffd am\u0007\\fffd A\\fffd\\fffd\\fffd\\73d\\fffd\\fffdp\\fffd\\fffd%0A(-\u0013\\fffdx\\fffdK\u0003\\fffd 4\\fffd\\fffd 2\\fffd\\fffd 2\u001D%\u0004\\fffd\\6b6\u0012\\fffd\"\\fffdi\u0013T\\fffd\\fffd\u001A@\\fffd}\\fffd\\fffd\\fffd\u0001F\\fffd\\fffd F\\fffd\"\\fffd a\\fffd 2\\fffd\\fffd\\fffd\u001C\\fffd F&xh\\fffd\\fffd\\fffd\u0013\\fffd\\fffdY\\fffd 6\"\\fffd\u000E0\\fffd\\fffdn\u000E\\fffd\\fffd\\fffd 4k\\fffd\u000Ek\\fffd%0A\u0003\u0010\\fffdh\\fffd E\\fffd\b \u0015\\fffd E\u0011\\154\\fffd\\'\\fffd\\fffd 2NU\\fffd\\'\"\\fffd\u0001\u0005JG=+\\fffd 2x\\fffd\\fffd CJ\u001BB\u001E\\fffd\u0015\\fffd\u0012\\fffd\\fffd\bL\\fffd-\u0005\u0004\\fffd\\fffdU\\fffdu\\fffd\u0014 \v\\fffd\\fffd\\7cf9{\\fffd[_\\fffd\\fffd\\fffdw%0A\\fffd\\fffdn\\fffd\\fffd\\fffd\\fffdG\\fffd C[\\fffdv\\fffd\\fffd\\fffd\\3c61 E1>c\\fffd\\fffd\\fffd\\fffdP\\fffd\\'\u0002ODm\\fffd\\fffd\u001F\\fffd\u0012E8\u00052\\fffdh\\fffd(\\303\\fffd\u0001E\\fffd\\fffdQ\b\\fffd\u0017\u0001K\\fffd:%09E\\fffd 38\\fffd\\fffdr\\fffdo?a\u0017K\u0001\\fffdU\u001F\\fffdR\\8d33w\u0005\u001D\vH\\fffd\u0007\\fffd=\u001E\u000Fw\\fffd\\fffdn\u0018\\fffdgv\\fffd\\fffdmG\u0007\u0004GO3\\fffd\\4c8U\\fffd`\u0013\\fffdXf!\\43e\\fffd\\fffd\\fffd\u0010\\fffd\\fffd\\fffd\\fffd\\fffd 6p\\fffd\u0011L\u001C\\fffd\\fffd\\fffd\u0002U\\fffd\u0013\\fffdm\\fffd\\fffd 9eyG$\u001A\\fffd\u0003\\fffd\\fffd&\u0011\\fffd\u001D\\fffdN\\0;\\fffd\\fffd\\fffdkX%0A\\0\\fffd\\fffd\\fffduw\u001F\u0002\u001E;\u001A\u001A\\fffd`%0D=\\fffd\\fffd\\fffd\\fffdk\\fffd\\fffd\u0001;,\u000E3\\fffd\u0010XQ%09\\fffdR\\fffd\\fffd,\"%09cRQ!\\fffd)O\\fffd\\fffd)@\\fffd\\fffd\\fffd\\fffd 3\u0016\\0\\fffd\\fffd 1\\fffd&g\\fffd\u0007\\fffd\\0\v4\\fffd\\27b\\fffdl\u000FLOI\\fffd\\0\\fffd\u0011\\fffd\u0018d\\6fe\\fffd@\u0018\\fffd\\fffd+w}\\fffdg\u001B\\fffd f\\fffdX{\\fffdr\\fffd\u0018\\fffd\\fffdv\\fffd\\fffd|h*\u0004\\fffd\\0\\fffd\\fffd\\fffd_T\\fffd 4\u0003L\\fffd\\761\\fffd\\fffd\b\\fffd\\fffdkG\\fffd\\fffd[\u0007\\fffd\\fffd\\fffd\u0006\\fffd\u0003?\u001F \\fffd\\fffd\\fffd\u0014\\fffd 8%23\\fffdHo\u0011\\fffd 5\\fffd_\\fffdw\\0\\fffdO\u0004\\fffd 1\u001E\u0004,n\\fffds\\fffd\\fffd 9\\fffd\\fffd\\fffd)\\fffd\\fffd\\fffd\u00151\\fffd\\fffdx\\fffdH\\fffd\\fffd\\0\\fffd]C%0D\\fffd\\fffd 9\\fffd\\fffd\\fffd a3\\fffd%23\\fffd\\0\\fffd\\fffd[?\u001Cx,V\\fffd\\c;+\u000E\\\\|\u0011\\fffd\\fffd)5\u0006\\fffd\\fffd\\fffd\u001D\\fffd\\fffd\\fffd\\fffd\u0018\\fffd\\fffd\\452P\\fffd\\251OR+\\fffdL8JBC\\fffd\\fffd\\fffd 1a\u0013\\\\\\fffd 1\\fffd\u0006\bt\\fffd\\fffduA\\fffd\\708g\\0\\fffd%23\u0019\u0018\\fffd%09\\fffd\\13b C\u001B\\320\\fffd\u000E\\fffd\\fffd\\fffdN\\fffd\\fffd\\fffd\\fffdx\u000E\\fffd\\fffd\\fffd\\fffd\\686\\fffd\\fffd%23\\fffd 6\\fffd 8\\fffd\u0012[\\fffdGd\\fffd\u00028S\\fffdL_)\\fffd[=\\fffd\\fffd\u000E\\fffd\\fffd\\fffd>\\fffd@\\fffd\u001F\\eda0IE}\u001BL\u001C\\fffd D/\\fffd\\fffd dZ2H&\\fffd\\fffd E\\723\\fffd\u0010\u0018\\fffdln\"5\"-np\\fffd\\fffd F\\fffd\\fffd\\3b6SZC\\fffd\u0014\\fffd f\\0.\\fffd\u001B:P\\fffd\\fffd\\fffdl\\fffd\\fffd@\\fffd\u001F\\fffd\\fffd\\fffd\\6a7\\fffd\\fffd\\430U`\\fffd\\fffd]\\fffd\\\\Y\u0011-\u0002P\\fffd\\fffd\\fffd\\fffd b\\fffd\\fffd\\fffd\\fffdXD\\fffd.\\fffd 9\u0017\\fffdO\\fffdu\\fffd\\fffd\u0016\\fffd\\fffd\\fffd\\fffdX7\\fffd\\fffd\\fffd\u0003\\fffd 5\u0002\\fffd 6a1t0E\u0011dR\\fffd\u000F\\fffd\\fffd\\fffd 3\u0004{\\fffd c\\fffd\\fffd\\fffd\\fffd\u0004b\\fffd\\fffdlX\\1b9 D,\\fffd\\fffd*-& \\fffd\\fffd\\fffd\\fffd%09\\fffdy@\\fffd\\fffd\\fffdvn\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd-\\fffd\\fffd\\fffd\\fffdLX\u0003\u0017\u001D\u0015\\fffd\\c362\\560x\\9f23\\740\\fffd%0A\\0\\fffd\u001A\vg\\fffd 86\\fffd=\\fffdO7\\fffd\\fffd\\fffd\\fffd\\fffdw\\fffd\\fffd\\fffd\u0003\\fffd\\fffdn%\u001C\u0019\\fffd\\fffd\\432\\fffd D\\fffd%0A\\fffdg\\fffd 5\\fffd\u00120d%\u0016\\fffdT\\fffdRJD\\fffd\"\\fffd;\\fffd\u0006Aq\\fffdj\\fffd\\fffdY\\fffd\\fffdp\\fffd\\fffd\\fffd\\fffdV\\fffd\\fffd^\\fffd\\fffd\u0003\\fffd d\\fffd\\fffd 8*\\fffdZ\\fffd\\0@\\fffd\\fffd Zu(\\fffd\\c \u001ETH\\fffdx\\fffd 6\\cR\\fffd\\fffdm\u001Cs\\fffdt%23J\\fffdN\\fffd\u001B\\0\\fffdl7\\fffd\"V5Z\u00118<q\\fffd%23\\fffd 5u\\fffd@S\\fffd\\fffdP\\fffd(\u001F\u0003%23\\fffd*Bg\\fffdS\\fffd 7z\\fffd\\fffd\\fffd aL\\\\ \\fffd D\\fffd\\b92b:Lv8m\\fffd\\fffd\u001D\\fffd\\fffdN\\fffd\\fffd\u0007\\fffd\\fffd~\\fffd\\ced08%\u001Ep\\d3d2\\fffd\u001E\u0001\u001D\\fffd\u0006O\\fffd!\u0005\u0002\\6d4\\fffd\\fffd\u0005\\fffd\vr?\\232\\fffd\\fffd|X\u0012`G\\\\\\fffd\\fffd\u0001\\fffd\\fffd\\fffd\u0005\\fffd\\fffd D6AiFB\\fffd\\fffd\u0004\u001B\\fffd\\fffd\\'\\fffd\\fffdhnP\u000E|\\fffd%{\u0004%0As\\fffd^XXv\u0010\\fffd\\fffd\\fffd|\\fffd%0D\\fffd\u0016\\fffd\\fffdN\\fffd\\fffd C\\fffd\u001Ct\\fffd\\fffd\\fffdU0\\fffd 8\\fffdg\u0014\\fffd\\fffdR84\\fffdN\\fffd\\fffdj=0\\fffd\\fffdv\u0003\\fffd\\fffd\\fffd\b\u0015i\\fffd\u0006\\fffdM\\fffd\vk\u0019\u0004\b\\fffd C\\fffdUu\u0015\u0011Y\u0007\u0005\\fffd\\525\\fffd\"\\fffd%09m\\fffd\\fffd a\u0013\\fffd\\fffd%09\\fffd\u0001=\\fffd\\fffd\\fffd>\\fffd\u0019\\fffd\\fffdT$\\fffd\\8166(D\\fffd F\u0011kc*\\fffd%23%0DRacZ\\729\\fffd-\u000E\\fffd\\fffd\\fffdp\u0007S\\fffd f\\fffd\\164d\\fffd\u0012\\fffd\\fffd\\fffdJ:E\\fffdj\\fffd%\\fffd E49\\fffdL\\fffd\u0005\u000E\\fffd\\fffdY!\\fffd\\'},\u0006\u001A\u001B\\fffd\\fffd\\cp\\fffd\u001A\u0003\\fffd\\fffd\\fffd\\fffd\\fffd@@\\fffdJc\\fffd\\fffd@\\fffd\\fffd\u001F\u001F\\fffd ?\u0006\\fffd\u001DA7<*\u0006]\\fffd\\fffd 5\\fffdt48\\fffd\\fffd cB\\fffd\\fffd\\fffd\u0019\\fffd,\u0001U\\fffd\\fffd-\u0002\\fffd\u0005`\\fffd 3\\fffd\u0002\v\\fffd\\fffd\\5dc 3\u0016*\\fffd 8\\fffd\\fffdM\\fffd\\fffd<\u0002\u001B\u0014\\fffd%2309\u001B\\fffdH\\fffd\\fffd\\fffd]\\fffd\\fffd\\fffd\\fffd\u000E\\fffd;e\\fffd\u001B\\fffd\\1a0\\fffd\u0015\\0\\fffd!%0A\\fffd\\fffdwJ\\0\\fffd}+\u0004\u0013\\fffd*\\fffd\u001B\\fffd\\fffd\\fffd\u0017\\0 7\\fffd f\\fffdg\v y2\\fffd!r\\fffd%23\\fffd D\\fffd\\3c0v\\fffd\\fffd\u0011\\65e\\fffdRN\u0016\\fffd\\fffd\u0016M4\\fffd\u0019\\fffd\u0003\\fffd\\fffd\u0006|\\fffd\\fffd%0A\\7c7Z\\a939\\fffd\u001Ey\\fffd\u001EPP\\fffd\\fffd\\fffd\\fffd 9b\\fffd\\fffd\\fffdX\u0017\\fffd@\\fffd\\fffd%\\fffd\\fffd\\fffd\\fffd\\fffd E\\fffd\\fffd d\\fffdKDc\\fffd 8\\fffd dQ\\fffd\u0010\u0017\\410\u0016\u0003\\fffd\\fffd\\227\\fffdP\\fffdx\\fffd\\fffd\u001D\\fffd\\fffd\\fffd-\\fffd%0Aw0cI\\fffd\\fffdy\\fffdP\u001B\\fffdp\\fffdg\\fffd\\1e7\\206\\fffdr\\406 \\fffd\u001E\\fffd\u000E-3\u0016\\fffd%0D\u0013\\fffd\\fffd E\\fffd\v8\\fffd\\fffdR\\0$ps\\fffd E\\fffdVMQ\\fffd\u0010\\fffd 3-e\\fffd\\fffdoA\\fffd\\fffd\u0016\\fffd\\fffdT\u001F\u001F\\fffdh\\fffd%0AB\\fffd c%09\\fffd c\\fffd\u0006\\fffd\\fffd\\fffd\\fffd@\\fffd\\fffd\\fffdz<\u001E\\fffd%0A\\fffd B@\\fffd\\5415\\fffd\\fffd\u000Ei\u0012\\5cb\\fffd\\fffdo\\fffd\\fffd\\fffd%0AK`\"1\u001F%09\\fffdW(\\3c2\u0006\\fffd\u0019x<\\fffd@\\fffdKwL\\fffd\u0013J<\\fffd=\\fffd\u0010\\fffdN\\fffdI\\fffd\\fffd\\fffd_\\fffd\\fffd\\fffd\\fffd\u0019\\fffd\v@?&\\fffd\\fffdQc96\\fffd%0D\\fffd Bz\u001B6\\fffd\u0018Kl\\fffd\\fffd\\fffdjRk\\fffd\\fffd\\0\\517\\fffd 1b\\fffd\\fffd\u0006\\fffdL\\fffd c\\fffdh\\fffdzG\\fffdz\u0001\\fffd\\1b5\\fffd\u0004H\\c^\\fffd\\fffdW\\fffd\\fffd\u0005B\u001C\\fffd-\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd:E/\\fffd\\fffd^\\fffd\\fffd\\4a1\\fffd}2A\\fffd\u0010\\fffd\\0\"\\'*<(%0D%23\u0014\\0\\fffd\\fffd\\fffd\\fffd\"\\fffd\\fffd\\293!z\\\\W\\fffdTh\\fffd\\c aE[*\\fffd\\fffd\u0017\u0001Id\u00195^@\\fffdm\\fffd\\1ee\\fffd\\fffdY\\fffdr\\1f8\\fffdX\\fffd\u0006\\fffd\\fffd \u0007\\fffd\\fffd\\fffd eC\\\\\\fffd 1\\40f\u0012\\fffdh8\u0013\\fffd\\fffd\\fffdMQ!f\\fffd\u0004\\fffd\\fffd\\fffd\\fffd\\fffd A6\\fffd\\fffd\\fffd e*3\u0004\\fffd\\373\\fffd%09\\fffd\\fffd\u001A\\fffd\\fffd\\fffd\\7dd\\fffd\\fffd_i\u001B\\fffd%0DLM\u0014\\fffd\\fffd\\245Q{\\fffd\\1ad\\fffd%23\\fffdp\\fffdQY\u0014Q4\\fffd\\fffd*\u0002\\fffd E\\fffd\\fffd 1\\fffdm\b:\\fffd\u0002\\fffd 6t\\fffd\\fffd\\fffd:\\fffd~Fd\":D\\fffdw\\fffdn\\fffd\u001Bv%23\\fffd\u0001\\fffd\\ecG\\fffdl{\\fffd\\fffdG+\\fffdX\\fffdnS\\1c1\u0005QLE=W\\fffd-\\fffd 2@\\fffdl\\fffd\\fffd A\\fffd\\fffdz\\fffdR\u001D\\fffdm\\fffd\\fffd\\fffd\\fffdh8\\fffd(\\fffd\\fffdN\\fffd\\fffd\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\u0001\\fffd/\\fffdn\\'K\u0002t\\fffd\\fffd 4ee h\\9f3e\\fffd\\fffd\\fffd\\fffd at\\fffd EKJ\u0013\u0019\\fffd\u0005`\\fffd\\fffd\b\\fffd\\'\\fffd E\u0007CF\\fffdlZ\\fffd\\fffdp\\fffdh\\fffd E\\fffd\u001A\\fffd\\66e 4V\\fffd\\fffd\\fffd%\\fffd\\fffd\\'\\fffd+\\fffd\\fffd\\fffd\u001E,\\fffd\\fffd\v\\fffd!-\\fffd\\fffd\\fffd\\fffd=\\fffd\\fffd\v\\fffd\\fffd/\\fffd 28z\u0011%0D\\fffdI\\fffd\\fffd]\\fffd\bj:\\56cw*\\fffd\u001F<\\fffdG\u001Eh,~\\fffd\\fffd\\fffdK\u0003E\\fffd\\fffd(\\3d5\\fffdN\\fffd\u0007K1\\fffd\\fffd C\\fffdO\\fffd%0A&Y\\fffd\\fffd>\u001C\\fffd-8\\fffd\\']\u00056\u0004>o\\\\;\\fffd\\fffdM\\fffd\u0002$\\fffd)\u0016\\fffdT\\fffd\\fffd\u0015\\fffds\\fffd 5\\fffd|P\\fffd\\1fe`-\\fffd\\0 FF\\fffd\\fffd\b.\\fffd\\fffd`\\fffdK1\\fffdq\u0001=\\fffdX\\fffd\u0016\\fffd\\fffdL\v\\fffd\u0006\\'\\fffd\\fffd\\fffd\\fffd)Z\u0002\u001D\\fffd\\fffdp\u0012\\fffd\u0001M\\fffd 1\u0010\\fffdl%23\\fffd\\fffd:\\fffd\\fffdha\\fffd\\fffd\\fffd\\fffd\\fffd\u001C\\fffd\\fffdV\u0018\u0001`%\\fffd\\fffd\\cr\\fffd\\fffd\u0014\\fffd 1\\fffd\u0016\\fffd\\fffd\u0002-\\fffdR!;\\fffd{A\\fffd\\fffdy\\fffdHg@o\\fffd\\0\\fffd\u0004\u0005Z%0A\u0018^ +D\\fffd\\fffd~,SV\\fffd\\fffd%0A\\fffdn8\\fffd)D&\\fffd\\fffd\\fffd\\fffdh\\fffd\\fffd\\fffd\\fffdq\\fffd\\fffdmI\\fffd\u0007-1\\fffd^\\fffd\\360\\fffd\"W\\fffdK\\fffd\u00010\\fffd\u0014\\\\\\fffd\u0004\\fffd)]\\49fRB?\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u0006*\\fffd X\\fffdm\\fffdP&\\4d6\\fffd F\\fffd\\fffd\\fffd\\fffdG\u0006\u0007\\fffd A\\0\\fffd\\fffd\\fffd(\u0012=-\u0004\\fffd\\fffdqS\u0004\u00137O\\fffdR\\fffd<3k\\fffd\\0 Fs%0DG\\fffd_&\\fffd\\fffd}hI\u0018\\fffd\\fffd\\fffd*5Mt0\\fffd\\fffd 2\\fffdh\u001E!w%\\fffd\\fffd~\\fffd\\fffd\\fffd}hU \\fffd\\fffd\\fffd\\'\\fffd\u001E\\fffd 2\\fffd\u001B\\fffd 5v\\fffd\u000Fw\u001DW\\fffd a\u001A\\fffd)\\fffd\\fffd\u0012\\fffdw\\fffdI7:\\fffd\u0016\\fffdz\\70f\\fffdX\\420\\fffd\\a8}f\\fffd\\fffd\\fffd\\4da\\fffd C\\fffdW\\fffd;j\\fffd\\fffd/S\u0016\u0003\\4df\\fffdx\\fffd F>\u0017\\fffd\\fffd FEh\\fffd\\fffd\\fffd D\b\\fffdT\u001ED\\fffd\\fffd\\0\\36d 2\\fffd)rC F,%23?%0A\\fffd\\fffd Fm\\fffd\u0018\\fffd\u001C\\fffd\\fffd c\\fffd\\fffdX\\fffd\\fffd\\fffd[\\fffd)\\fffdJ\\fffd\\fffd\\aa a\u001A\\fffdlR%0D\\fffd\\fffd|Iw\u0001x,\\fffd\u0002G\\742\\fffd>K(2+\\fffd\\\\\\fffd\u0016\\fffdw\\fffd\\fffd DGe\u0011\\fffd Ep\\439\\fffd\\d153\\fffd\\507\\fffd 9fw\\fffdq\\fffd\\fffd\u0012\\fffdo\\c@<\\fffd\u0003\\fffd\\fffd\\0+[\\fffd\\fffd&\\fffdS\\fffdy\\fffd\\fffd\u0016\\fffdo.V\\0\\fffd\u0011Jg%09\\fffd\\542\\fffd:\u0015\\fffd\\fffd\\fffd 3\\fffd\u0014\\fffdv\"a4\\fffd 4\u001BD%09\\fffd\\fffd\\125\u001B\\fffd\"\\fffd\u001C=\\fffd%09t\\fffd\\fffd\\fffd\\fffd++\u000F\\0\\fffd?\\fffd\\fffd\u0006\\fffd:i\\fffd\u0011\\fffd\\fffd\\fffd\\55d2\\18a\"\\fffd,\\fffd]\\0\\fffdh%23\\fffd.\u0006\u0019\\fffd\\fffdq\u0014\\fffdR\\fffdV\\fffdz\u0003\u0007\\fffd Df\\fffd 4\\fffd\\fffd\u0005\\173\\fffd\u0010\\fffd~g \\fffd\\fffd\\fffd\\fffd\\fffd_JC\\fffd\\fffd\u001B\\356\\fffd(\\fffd\\fffdo\\fffd\\fffd\\10b\\fffd?0\\fffdrU\\fffd%\\fffdU\\fffd b!\\fffd\\fffd\\fffdq\\fffd fU\\fffd\\2e5\\fffd=\\2e8QD3~=r\\fffdM\\462z\\fffd\\fffd e[\\fffd B\\fffd\\fffd\\fffd\u0001\\fffds\\fffd$a`\\fffd\\fffd\u0017g\\fffd\\fffd\\fffd\\fffd 85\\fffdm\u000E^\\\\\\fffd\\fffd[\\fffd%0D\\fffd\\fffd 6n\\fffd\\fffd\\fffd\\'&\\0\\fffd\\fffdK\\fffd\\fffd\\0\\fffd\\fffd\u0011\\fffd eQ%09\\fffd\\fffd\\fffd\\fffd B\\fffd\\fffd\\689\\fffd\\fffdr\\5c9\\fffdN\\fffd\u0005-\\fffd a\\fffdqQ%0D\\fffd\\fffd(\\b2H\\fffd\\fffd D\\50a\\fffd\\fffd\\fffd%0D\\fffdLP\\fffd e\\fffd\\fffd\\fffd\\fffd 6\\fffdz\\fffdg\\fffdl!3T\\fffd~\\fffd@g\\fffd!\u0012\\fffd\u0016L\\fffdp%\\fffd\\fffdmKT&xq\\fffd%098\\fffd\u000E\\fffd\\fffd\\fffd\\606\\fffd\\fffd.Z\u001Dv\\fffd\\fffd\\fffd\\fffd B\\fffd\\fffd\\fffd\\fffd\u001FN\\fffdw\\fffd\\fffdwv\\133\\fffd?\\fffd\\fffd\")\\fffdt2Xt\\fffd(\u001AMh0\\fffd\\fffd\u0015i\\c\u000F\\fffdk\\fffd\\fffd*\\fffd D\u0004\\fffdL\\fffd\\fffdp\\5d5\\fffd\\fffd\\fffd\u0019\\fffdJ\\fffd\\fffd~\\fffd\u0005\u0006\v\\5e7 cPM\\fffd\u0014\\fffd\\fffd\\fffdp1J\\fffd|\\fffd\\fffd\\5f2\\a4\\fffd 8\\fffd F\\fffd\\fffd d\\fffd\\fffd\\262\\fffd\\8a72\u0002E\\fffd\\fffd b\\fffd\\fffd\\fffd)\\fffd b\u0002@\\fffd 8Lw\\fffd\\fffd$\\310 9\u0001\\fffdO2\u0003\\fffd\\c193>\"Q\\fffd\\fffd{\\fffdUo6A\\fffdNEg\\fffd\\fffdO9\\fffd\u0012X\\fffd\\fffd\\3a2Rd+\\cg=\\fffd\\fffd\\fffd\\fffd\u001E\u0002dL\\147\\fffd 2\v|,\\fffd 271\\fffd\\fffd\\fffd\\fffd\\fffdu\\fffd\\fffd\\fffd\u0010XL\u0015bf\\fffd)+B\\fffd%23\\fffdmF\\0\\fffd\\fffdO\\fffd\\fffd\\0\\fffd\\fffd\\fffdt|\\fffd\\fffd]|\u0007\\fffd\\fffd\\fffd \\fffd;\\108c4f\\fffd\\fffd;\u0015\\fffd\\fffd\u001A\\fffdR;\\fffdJ7j\\fffd\\fffd\\fffd>\u0018\\fffd\u0006\\fffd\u001D\\fffd\\fffd\\fffd\u0001\\fffdyf\\fffd\\fffd\\fffd \u001B\\fffd\u0010\\fffd B\\fffd\\fffd\\fffd\u001E\u0019\\fffdQD\u0013 \\fffd\\fffd<\\fffd%23\\fffd`\\fffd\\fffd 7A\\fffd\\fffd,\\fffd\\fffd>\\fffdg\\fffd b\\fffdr\\fffd\\6f3\u0015\u001DYb(\\fffd!+\u0004O\\17b\\fffdJ%09(e\u0017gFwB\\fffd](\\fffd%23\\fffdj+N\"]4\\fffd>\\fffd=a?\\fffd@\\fffd\\fffd\\382e\\fffdn\\fffd\\fffd\\fffd\\fffd\\fffd\vo\\54b%\u001D\u0013\\fffd\\fffd\\fffd\\fffd\\fffd D\\fffd\u0003|Js\\fffd\\586\\fffd\\fffdZk\u000E\\fffd\\fffd 0J\\fffd\u001A\\fffd\\6a6\\fffd\\fffd<\\fffd\u0002\\355\\fffd\u000El%09\\fffd\\fffd|\u0005\\fffd\\fffd b\\fffd\u00065\\fffdw\\fffd%\\fffd{\u0015d \\fffd;\\fffd\u001D\\fffd\\fffd\\fffd\\fffd D\\588\\fffd}\v\\0\\fffdhE\\fffdN\\fffdnJ7\\fffd~\\fffd\\fffd\"(W\u000E\u000F+\\fffd\u001B^\\fffd\u001F\u0012\u0003U\\fffd D\\fffdV\\fffd\\fffd\\271\\fffd br\\fffd b_T\\fffd\\fffdh\u000E\\fffd\\fffdrDwJ\\fffd\\fffd \\fffd\\fffd\\fffd&\u001A\u0003\\fffd\\fffd_I\\fffd\\fffd\u0014\\fffd\\fffd\u0007\\fffd\\fffd\\fffd@fs\u0013\\53c\u00015\\fffd\\fffd\\fffd\\fffd_\u0014\\fffd\\fffd\u0014x\u0012\\fffdm\u0012\\fffd f\u0013S-\\fffdyc*\\c3\\fffd+\\'\\fffd\\fffd\\fffd\\fffd\u001B\\fffdNL\\fffd\\\\-c4\\fffd b+\\fffd\\6a0>7\\fffd\\490\\fffd,\\fffd\u0012MQ!\\fffd\\fffd,\\fffd\\fffd\\fffd\\fffdNY\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdx<\u001A\\fffd \\fffd-\\fffdX\u0015K!\\\\p6\\fffd 5\u0016g\\fffd(@N\u0001\\fffd\\0\\fffd(Z\\fffd\u0019:8w\\fffd\u0005\u001A\\fffd\\fffd-\\fffd\\fffd\\fffd 1\\22epe\u00130\u0010\\fffd/w\\fffd\\fffd\u0006\\fffd\u0006\\fffd\\fffd\u0016u\u001A\\41cQ\\fffd\\fffdtZ\\fffd\\fffd 0\\fffd~n\\fffdUc2\\0 Fkf\u0005\\fffd F\u0013=@\\fffdk\\fffd E5\\fffd\\fffd\u001A\\fffd 0sY\\fffdOL\\fffdp\\fffd$\u0011\\fffd\v*\\6e6\u0012Pd-\\fffd\\fffd\u0011\\fffd Dq\u0017*\\fffd=V\\fffd\\fffd\\218\\fffd 2\\fffdS\\fffd%{\\fffd\u0015\\fffd=\\fffd\\fffd\\fffd%09\\fffd\\fffd\\fffd~\\fffd\\fffd f\\fffd(\\fffd\u0014\\fffd\\fffd\u0019\\39eP\\fffd\\fffd D{E\\333w\\fffd\u0012\\fffd\\fffd\u0018\\fffd\\fffd\\fffdM\\fffdj\u001BL\\fffd 8E\\fffd\\fffd\\fffdqvJ\\fffd\\1d9\\fffd\\fffd\\539\\248\\fffd\u000E\u0015~\\fffd_e+\\fffd\\44c 4\\fffd%\\fffdTC\\fffdl{EO\\fffd\u0017\\fffd\\fffd\\fffd\\fffd\u0006\\fffd 6\\fffd{u0?\\fffd 0B\\6cc\u0016\\fffd 5\u0004%0A\\fffd bE?\\fffd\\fffd\\536 2\\fffdV\\fffdV\u0004%0A\\55c\\'\\fffd;\\fffdX\\276hMv\v\\0\\fffdHc\\fffd\\fffd\u001F~%0A\\fffd\\fffd\b5\\fffd&\\fffd B\\fffd\u0006\\fffd\\fffd\u0006\\fffd&:\u0014\\fffd`\\fffd{\\fffdP\\fffdG\u0011*\\fffd%23^\\fffd\u001B^\\fffdj?\\fffd(1\u0015\\fffd 7E\\fffd*\\fffd E\\fffd\\fffd\\fffdx\\fffd>\u0010\\fffd\\fffd%\\fffd\\322\\fffd d\\fffd\\fffd\\10aW\\fffd)\\fffdQ\\fffd\\fffd`\\fffd 8\\fffd\\fffd \\fffd\\fffd Ep\\fffd_)+\\fffd\b\\fffd\v%\\fffd\u0019\\fffd\u0015\\fffd(\\fffd 3xO\u0018\\fffd\\412\\fffd\\fffdj^\\fffd\"Z\\fffd\\fffd\u001C\\fffd-\\fffd\\fffd\\489\\fffd\u000F\\fffd\u0013\vq\\fffd\\fffdv>\\fffd 2R\\fffdT\\fffd\\fffd\u000E4\\fffd\\fffd\\fffd\u0014\\fffd|\\fffd-\\fffd 0!u\\fffd+T\\fffd@\\fffd\\fffd\\fffd%\\fffd\u0011Qa\\fffd\\fffd\\fffd\\fffdx\u0017\u0011\\292\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdMe\\fffd\\fffdp\u0017\\fffd\u001A\u0005\\fffd-0_\\fffdM\\fffd\\fffd-1 \\fffdYOD\\fffd\\fffd e\u001D\\fffd\\fffd F\\fffd\u0010\\fffd 7\u0017\\fffd\\fffd\\fffd]\\fffd 8\\fffd-\\fffdiw\\fffd\\fffdl\u0004\\fffd 2\\fffd\u0005\\fffd 6\\fffd\u0016\\fffdH\\'\\a456,Y\\fffdu\\fffdj\\fffd\\fffd\\fffd\\fffd 3\\fffdwU\\fffd F\\fffd_L\\fffd\\fffd\\fffd\\fffd&\u0013<fe/y\\fffd\\fffd\\4deQe\\fffd%0A\\fffd\"t\u0006%0A\\fffd\\152~*S\\fffdZ\\fffd\\fffd\\fffd?18-\u001B\\fffdJ&X}\\fffd\\fffd\\fffd`\\fffd e\\fffd 2\u0010\\fffdX\\fffdi/\\fffd(J\\fffd 356\\fffd\\fffd\\fffd\u0014.\u0014\\fffd\u001BOk\\fffd\\fffdV\\fffd\u0016\\fffd\\fffd\\fffd\\fffd F(\\fffd\u0017O\u0013\\fffd\\fffdP\\fffdG\\fffdw(\\fffd\\fffd\\385\\fffd\\fffd\\fffd\\fffdWy\u0002\\fffd\\655\\768 3!\u0003W\\fffd\u0014\\fffd%0D\\fffd\\fffd\u0010h\\fffd 0\\fffd\u0013\\fffd\\fffd\\fffd\\fffdKt\u0017/K\u0010Y%0D6J:aV8\u0003\\fffdh\\fffd\\fffdQ\u0018\\fffd\u0007\\fffd\u001BY\\fffd\\fffdT;\\fffdXa\u0016\\fffdk\\fffdr\\fffdW\\fffd\\fffd\u0004S\\fffd$\\fffd(2f \\fffd\\fffd\u0015f\u0013`/\u001A\b\u0016\\fffdU\\fffd+\\fffd B\\fffdz\u0002O\\fffd d\\fffd\\fffd\\fffd\u0019;\\fffdyM\\fffd\u0010%23\\fffd\\fffdl7$\\fffdx\\fffd(Ri\\fffd\\fffd\\fffd\\fffd\\fffd 4\u0013\\fffd 3$\\fffd e\\689V\u0001\\c=.\\fffd\\fffd \\fffd\u0011-j\\fffd\\fffd\u0004`V\\fffdN*\bV\\fffd\\fffd%0A\\\\u5\\fffd\u0019?g%23\u0001o\\fffd\\109\\fffd\\fffd 7\\fffd\\fffd\\fffd%0DoN\u0001\\fffd\\fffd 9\\fffd\\fffdRTr\\fffd\\fffdl`?\\fffd\\fffd\vRa$h+\\fffd*x.\\fffd\bf\\fffd\u0005\\fffdt\u001A\\fffd\\fffd\\fffd\u0003\u0016\u001E\\fffd:\\fffd\\fffd\\fffd\\fffd&/\\fffdKL\\fffdP\\fffd\u001C/S\\fffdg\\fffd-\\fffdza*\\fffd$\\fffdx\\fffdYB-\\fffd.\u0015\\fffd\\fffdR\\fffd\\fffd\\fffd&\\fffd\\fffdq\\fffd\\fffd\\'\\fffd\\fffdl=\u0014\\fffd\\fffd=&S\u0002]\\fffd\\fffd&GDu\\9c%0A+\\fffd\\fffdH1\\fffdG\\fffd:%0D\\fffdt1\\fffdX\\fffdm\u0019e\\fffdu\\fffd\\fffdp\\fffd\\fffd d\\fffd\\fffd\\fffd\\fffd 9\\fffd\\fffd d\\fffd\\fffd%09\u001B,/X\\fffd%0A\\0\\fffd 4b\\fffdMD\\fffd\\fffd{\\fffdyI\\fffd\u0003P\\fffdn\\fffd\\fffd;\u0015\\fffd\u0013\\fffdV%23\\fffd\\'kh}f\\fffdR\\0\\fffd\\fffd\\fffd\\fffd*UR\\fffd\\fffd F\\fffdI\\fffd\\fffd\\fffd\\fffdnVt\\fffd\\fffd(%\\fffdtYR\v\\fffd dj\\fffdYc}2\\fffdJ\u001AK\\fffd\v>\\fffd\\fffd:;~\\fffd\\fffdM\\fffdw\\fffdM\\fffd(\\fffd]-\\fffdX\\fffdUO\\fffd\\1d0\\fffd\\fffd%\u0002`\\fffd\\fffd\\fffd\\fffd\u001A\\fffd\\fffd\u0018j\u000E!\\fffdi\\fffd\\fffd B*\\fffd\\fffd\\fffd\u0011\\a569\\fffd dC\\fffdYa\\fffd\\fffd_\"\\fffd\\fffdy\\fffd\\fffd\\fffd?\\fffdI\\fffdY\\fffd BV\\fffdylaVX\\fffdl\\fffdw)+\\fffd\v\\fffd%23V\\fffd ;8\\fffd(\\21f\\fffdWk\\fffd\\'\\fffd\\fffd\\fffd\\fffd&\\fffd\\fffd+Y\\fffd\\fffd\\fffd\\fffd`F\\fffd\\fffd 3\"\\fffdhFl\u0013\\3ebM&\u0017\\30e!\\fffd\\fffdg\\fffd&@\\fffd\\fffd\\fffd fT\\fffds\u0004X+%09\\fffd 3\\fffdK\\fffdN\\fffd\\fffd|Mh\\fffd\\fffd\\fffd 7\\c\\fffdhq\\fffd\\fffdx\\fffd\\fffd\u0017uE\\fffd\\fffdO\\fffdz\\fffd\\fffd \\c\\426&a&\\fffd%0D\\fffd\\fffdr0\\fffd\\fffd%23T\\fffd%0A\\fffd\\35fi)5\\fffd\\fffd\\fffdk\\fffd\\fffd\\fffd\\fffdN\\fffd%0D\\fffd\\fffd\\fffd\\fffd\\fffd\u0005M\\fffd\\fffd\\fffd\u0004\u0005^^\\fffd 2=\\fffd\\5a2\\fffdMO2\\116%09v1\\fffdT\\fffd a\\fffdzE\\fffdO(\\fffdo\\fffd b\\fffd`\\fffdtX+\b\\fffd\u0006s\\fffdTdkB\\fffd 7\\fffdX\\fffd b!\u0002D\\fffd\\'h\\fffd\\fffd\u0011k\\fffd\\fffd f\\65c\\fffd[\\fffdU\\fffd\\fffdlE\\fffd&f\\fffd dV\\fffd\u0005\\fffd%09\\fffd\\fffd\\fffd EQw\\fffdO\\fffd\\fffd\u0007\\3be)-\u00164\u0014Z4\\3cf\\fffdZq\\fffdi\\fffdZxT\\fffd\u0004vI\\fffdy\\fffd>40>\\fffd\\727\\fffd\\fffd\\fffd\\fffd\"U\\fffd\"\\fffdI\\fffdi\u0013+\\fffd D\\'>\\fffd\\fffd\\fffd\\fffdz[\\fffd 6\\'\\0\\fffd\\fffdW:(\\fffd 4\\fffd DHh\\fffd e\\fffdh\u0012\\fffd\u0018\u0014HmM\\fffd\\fffd 1\\6d8\"\u000F\u0013eO\\fffd\u001E\\fffd\\fffd 7a\\fffd\\fffdI\\fffdZ\\fffdX\\fffd\\fffd\u000Ez\\6e3\\fffd\\fffd 6Y\\fffd-j9\\fffd\\fffdX\\fffd(\\fffdK,\\fffdi\\fffdtq\u0006P\\fffd\u0019\\fffd\\fffd\\fffd 7\\fffd\u000F\\fffd 2U\u0012\\fffd f\\9eu\\fffd\\fffd\\fffdR\\fffd\u0011\\fffd Aj)\\fffd\\\\\\fffd%0D\u0004\\fffd\\fffd\u0006\u0017\\fffd\u000EU\\fffd\\fffd\u0017W\\fffd\\fffd\\fffd\\fffd\\13c\\fffd 6\\fffd e\\fffd\u001C\\fffd BJ\\fffd 4)V\\fffd\\fffd 6\\fffdt2\\fffd\\c b*z\\fffd^t\\fffd\\382\\fffdwJ\\fffd\\fffd\\fffd\\fffd A\\fffd=\\fffd\\fffd\\fffdv\\fffd e-\\fffdWg\\fffd>OfXK\\fffd\\fffdNT\\fffd 9a\\fffd\\fffd\v=\\fffd>\\fffd 4+)LPZ\\fffd\u001D\\fffd\u0006/YetQr\\fffdh\\76ca^\\c\\fffd\\fffdw\\fffd\\fffd\\fffd\\fffd\\fffdWT\\fffd\\fffd\\cX3A\\fffd\u0005\u001D\\fffd f\\fffd(\\fffd 6\\fffd d\\fffd\b9k:Z=&Z\u000Fbe\\fffd\\42b\u0019cbI\\fffd\\fffdSY\u0003\\fffd\\fffdR\\fffd\u0018$d\\fffd*\\fffd<e\\fffd\b&Q\\fffdi\\285\\fffdm\\fffd\\fffd\\fffd\\cQ\\fffdw\\fffd\\74dcN,-\\fffdq\u000F\\fffdW\\fffdz\u0016\\fffdQ\\1e2\u0015\\fffdZ\u001B\\fffd\u0013z\u0006*g\u001D\\fffd,d\u0012&%0A\\fffd\u0004\\0\\fffd 9\u0011\\fffd|\u0002\\fffd\u0016h\\fffd\\2f9`-\\fffd\\fffdU;2\\fffd\u000F\\fffd\\fffd\\fffd\\fffd\\fffd%0D\u0001\\fffd\\fffd\\fffd\u0012\\fffd\\fffd\\fffdkfk7$\v\\fffd\\fffd\b\u0010m3\\fffd fW\\fffd\\fffd dD\\c5\\26f\\fffd\\fffd\\fffd,]\\fffd F\\fffdL%0ADS\\fffdx\\fffdR\\fffd.\\fffd\\fffd\\fffd@\\fffd^G;\\cg\\fffd\\fffd\\fffdJ\\fffd\\fffdZ\\fffd\\fffd\\fffd 5\\fffd\\fffd\\fffd_\u0011(%09\\fffd\\fffd 8O\\443h\\fffd\u0005p\u001C\\fffd_\\424\\fffdl!\\fffd\\fffd c\\fffd{D\\3e2YvO\\fffdSv&tXD\\fffd\u0017%0A%\\fffd)Sm\\fffd\\fffd\u0012E\\fffd\\fffd %23T\u0012m2ao\\fffdty\u0005J^\\fffd E\\fffd\\fffd\\fffd\\fffd,\\0p\\fffd\\fffd[d\\'\\fffd\\fffd\\fffd B\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdG<\\fffd\\fffd\\fffd\\fffdyc*\u0004\\fffd\\fffd\u0002\\fffd 5.&\\fffd\\fffd\\fffd\\fffd*\\fffd\\fa\\fffd.\\fffdN\\fffd\\fffd\\fffdMp\\fffd\\fffd\\fffd\\6b39X\\31fR\\fffdly\\fffd\u0010dA\\fffd\\fffd|\\fffd%0D\\fffd\\fffd 2\\fffd\\fffd\\fffd\\fffd\\fffdw|\\fffd\\fffd\\fffd\\fffd\\878f!\u0015\\fffd\\fffdV@i\u0011%0DV\\59cwFz\\0\\fffdt%\\fffd@\u0003\\fffd 3\\fffd\\fffdl.\u0003\\fffd\\fffd\\fffd}\u0018E\\fffd d\\fffd\\fffd\\fffd,\\fffdyT%0Aj\\fffd\\a612 D\\fffd_\\fffd\\fffd\\fffdX\\fffd\\fffdzQ\\fffd\\fffd%%0A\\fffd\\1be\\fffdX%0D\\fffd%0Ae\\fffd\\fffd\\fffd]\\fffd d\\fffd\bh2\\fffd E\\fffd\\fffd\\fffdL\\fffdpE?\\fffd>\\fffdy\\fffd\\fffd\\468S\\fffd\\fffd\\fffd\\fffd\\fffd EM\\fffd\\fffd}Z\\fffd\\fffd e\\1dd\\fffd d\\fffd\u0006\\fffdz\\fffdPq\\fffd\\fffdH_5\\fffd\\fffd\\fffdj\u0011\\fffdH\\fffd!\\cg\\fffd\\fffd\\fffd\u001F\u001E\\fffd\\fffd%23Q*{\\fffdYD\\fffd\\fffd\\1f7\\fffdMo(`\\fffd\\fffd{\u0012\u001D/\\fffdy\\fffd\\fffd\u000F\\fffd@\\fffd:\\fffd.\\fffd\\268\\fffd d1\u0013\u001E\\fffdJ\\fffdt\\fffd}\\fffdq\u001F\\7e1\u0007N\\fffd\u001A\u0015\u0016\u001A\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd,\u001B-\\fffd\\fffd\v71W\\fffd\v\\fffd\\fffd\\fffd\\fffdO\\fffd\\fffd<\\fffd\\acd3I!a\\fffd\u0017gn\\fffd?\\'\\fffd\\fffd\\fb58i\\fffdp|\u0004\\236\\fffd C\\fffd,\u0004\u0015\\fffd 6\\fffd\\fffd&\\fffdk\\fffd\\fffdU\\fffd\u0019J\\0\u0014\\46c|/\u001D53(\\fffd%0A-\\fffd\\fffd\u000EG\\fffd\u0002\\fffd\\66c\\fffd\\fffd\\fffd$_\\fffd^\\fffd\\fffd.Sn{E\\fffdMZ\\fffd\\\\]P\\fffd B\b\\fffdG\\fffdZ\u0006\\fffd\\fffdJ\\fffd\\fffd\\fffd\\fffdV\u0013\\fffd eBPg\\fffd d%09(\\fffd+\\fffdQ\\fffd\\0\\fffd\\fffd\\fffd\\fffd\\6cc\\fffd\\fffd\\fffd\\fffd D\\fffd\u0014Db\\fffd\\5d4\u000F\\fffd?\\fffd\\fffd!\u0012-\\fffd\\fffd e SQ\\fffd\\fffd\u0013\\fffd 7ZcE\\fffd\\fffd Bs\u0013\\fffd 55Hg\\'M%%09\u00010\\fffd\\fffd\\fffd\\fffd\\fffd-GQ\\fffd)}\u0017e\\12a\\fffd\u001F@\\fffd\\eb68 2[i;\\fffd\\fffd\\fffd\\fffd!\\fffd@\\fffd\\fffd\\'\\fffd \\fffdVDP9he*\\fffd\\0k\\fffdV(YdjI\\fffdX\u001Ep\vn\\fffd\u001Bd\\fffd/\\fffd\\fffd\\fffd\\fffd\\fffd+m\\fffd\\\\$\\fffdy\\fffd\\fffd-\"\\fffd\\fffd@EdR\\fffd\\fffd\u0002g]\\fffd}\\fffd%0AS\\fffd 8\\fffdG\u0019\\764\u0003.\\fffd\\fffd\\fffd\\fffdW\\0\\fffd\\fffd:\\4cb ae\\fffd\\fffd\\fffdm\\fffd\u0013?\\fffd\\fffd%0A\\fffd\u0011eV\\fffd\\7e3 D\\fffd 4\\fffd\u001CXI\u0004\\280\\fffd\\fffd\u0007\\fffd\\fffd\\fffd\\fffd 0/\\fffd\\fffd\\fffd\\fffdPFyr\\fffd\\fffd\\fffd\\445\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd_h\\fffd\\fffd\u0014Syy\\fffd\\fffd\\fffd\\fffd\u000EtX\u0014\\fffd\\4c2w\\fffd\u0016\\67e!eV\\fffd\\fffdJ\\255\\fffd\\fffd\\fffdJ\\fffd E\\'\\fffd\\fffd.\\fffd\\fffd\u0015\\fffdk*\\fffd\\fffd 2\\fffd 7j\\fffd.\\fffd\u001B\\fffd(\\fffd\\fffd\\fffd\\fffd E\\fffd@\\fffd\\fffd\\fffd\u001Eg|\"+\\fffd\\fffd a\\fffd%0Ag6\\fffd D?\\fffd\\fffdW\\fffd 6\\16c-\\fffd@\\135e\"A\\fffd\\0\\fffd%\\fffd\u0014\\fffd 0ZK\\fffd\\fffdW\\fffd\u001Fdt2\u0013D\\'\"\\fffd\\fffd\\fffd.\\fffdl`\\fffd\\fffd\\fffd\v\\fffd+\\fffd\\fffdl-\\fffdJ\\fffd\\fffdo\\fffd\\fffdW,\\fffd\\fffd+\\fffdlE\\fffdM\\fffdHQ\\fffd\\fffdU5\u0013\\fffd\\fffd\\'\\fffd\u001D\\fffd%0A\\fffdt\\fffd^\\fffd\u0001%0A{\\fffd\\32c e\u001A+\\fffd\v2Z\\c 4\\fffd\\fffd\\fffd_\u001A\\fffd&F\\fffd\\fffd\u0004\\fffd 4\\fffd\\fffd^\\fffd\\fffd\\fffd\\fffd+\u0013HdG\\fffd\\fffd^\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd&\\\\w|\\fffd 6\\fffd;\\fffdu=\\fffd 5\\fffd\\fffd\\fffd\\fffd\u0013=\\fffdJ\\fffd\\fffd\\fffd\\fffdz\\fffd\\fffd\\fffd\\fffd\\fffd\u0013\\fffd\\fffd E\\fffd\\fffd`\u0014\\fffd\\319\\fffd\\fffd>\\fffd F\\fffdr\u0017\u001A\\fffd\\fffd\\fffd\"\\fffd\\fffd\\fffdl%0A\u0010\\fffd\\fffd\\fffd%23\\fffd\\fffd DGU\\8c2a\\fffdT\b.\\fffd%\\fffd\\fffd\\2ba]\u001E\\fffdM\\fffdh\\fffd\u0002\\fffd,J{\\fffd\\fffd 0K\u0011QM}{!\\fffd:\\fffd\\192\\fffdW\\fffd_\\fffd\\fffdP\u001DHe\u0001L\\fffd\\fffdp\\fffdM\\fffd\u0005Q\\fffd\\fffd\u0003\\fffdU\\fffdZ:\\fffd 8g\\fffd|a\\fffd\\fffd\\fffd\\fffd-\\fffd\u000E\\fffd\\fffd)3\\fffd+\u0017\\fffd\\fffd\\fffd\\fffd\\4f6 f\\fffd\\fffdV\\fffd\\fffd\\fffd\\fffd\u0016\\fffd[\\fffd\\fffd\\fffd.\\fffd,\u001A\\fffd\\fffd\\fffd\\fffdMZ\u000ETA\\fffdT\\fffd-/\\fffd db\u0002o\\fffdj\\744\u001F\\fffdq\\fffd\\fffd aAy2c\\c\\fffd\\fffdM\\cR\\fffd D\\fffdl2E\\4a4\\fffd\u0001\\fffd\\fffdi\\fffd\u0005}f\u0005\\fffd\\fffd\\fffd)j\\723\\fffd\u0017\u0003\\fffd\\fffd\\fffd\\fffd\\fffd\u0007\\fffd 1\\fffd\\fffd+~^\\fffd\u001AK\\fffd,\\fffdt)\\fffdR`\\fffd 8\u001F\\fffd\\fffd\\fffd~<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd)5\u0005.\\fffd E\\fffd 9\\fffd\\0\\fffd\\fffd\\fffd\\fffdx%0D=\\fffdY\\fffd\\fffd\\fffd\\fffdP\\fffd\u0013\\fffd b|\\fffd\\fffdW(\\fffd{\\420\\fffdN\\'+b\u0016\\fffd\\fffdm\\fffd\\fffd au\\5b1P\\fffd_\\fffdW{`\\fffd)\\fffd%09\\fffdW5\\fffd\\fffd F\\fffdY\\fffd\\fffd$\\fffd_)\\fffd\\fffd\\fffd=3oy\\fffd\u0006\u0011\\fffd||\\fffd 9\\fffd\\fffdt2\\fffd\u001D\\fffd\\fffd\\fffd\\fffd\"`XD\\fffd\u0005\\fffdKg\\fffdT%23\\4a4\\fffd d\\fffd$[a2oa\\fffd\u0010\\fffd\u001E\\fffd@\\fffdzQD4i3\u001A\\c\\fffdU\\fffd\\fffd\u0016\\fffd e\u0005\\fffd 3\\fffd\u001F\\fffd\\0\\fffd 6\\fffd\\1f3\\fffd eB\\7ae\\fffd<X\u0005t\\fffd\\fffd&4e%:[\\fffd\\fffd C\\\\\b\\fffd>%0A*\u000F!H\u0016\\fffd\u0014\u0001\\fffd}\\fffd e1\u0015\\fffd 1\u0011\\fffd\\fffd|\\fffd\u0018L\\fffd\\fffd\" -(\\fffd_\\fffdu\\fffd\\fffd\\fffd\\fffd dK\\fffd\u0017\\fffd%\\fffd/Pn\\fffd\\fffd\\fffd\\fffd 8\\fffd-Qq\\fffd\\fffdT8\u0003I\u0001\\fffd/\u0001Ae\\fffd\\fffd\\fffd\\fffd\"M\\fffd&\\fffd&\\fffd/\\fffdG\\fffd 3\\fffd:\u001EV\\fffd\\c\\fffdO\\fffd\\fffd\\fffd\\fffd%23\u001Cu\v2\\fffd(ri*L\\fffd\\fffdY\\fffd\\fffd\\fffd\\fffd\\fffd}\\fffd\\fffd\\3d9 b\u0005\u0014+`+g\\fffd\u0005\\fffdM\\fffd\\fffd\\fffd\\fffd-\u0003\\fffd\v2\\fffdX\\fffd\\fffd\\fffd\\750%0D\\fffd\\fffdQk&\\fffd+Wz\\fffd\\fffd\\fffd+\\63dxR\\571\\fffdz\u0012\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u0019\\fffdXV\\fffd*\u001E\\fffd|a\\fffdPx\\fffdSa\\fffd E\\fffdY\\fffd\\fffd 3Z\\fffdP\\fffd\v\\0\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdg\\fffd \\fffd%0D\\fffdK_\u0019\\fffd%F\\fffdhW\\0\\fffd\u0017\u0005|J\\fffd\\fffd\\fffd\\fffd\u0014\\fffd%23\\fffd}e@\\fffd\\fffd\\fffd%0A\\fffd_\u0001\\fffd\\fffd\\fffd\\fffd\\fffd f\\fffd\u0012\\fffd\\fffd\\fffdxi\\fffd\\fffdu\\fffd&\u001A+\\fffd\u0017\\fffduC\\fffd\u0006V\\fffdOG\u0013)8\\fffdJ\\fffd\\fffd\\fffd\\fffd\\fffd 8\\fffd\u0018\u0011\\fffd\\fffdU\\fffdM\\fffd\u0015\\fffd>\\fffd=%090\\fffd\\fffd fc \\fffd\\fffd<\\fffd\\0\\fffd,\\fffdi`\u0015\\b3\\fffd\\fffd f\\fffd\u0015\\fffd\u0017\\fffd\\fffdT\\fffdZ\u0015xU\\fffd\\\\8QK\\'t!\\fffdJ\\fffd\u0016D\\fffdH\\\\\\fffd\\fffd\\fffd.+)\\fffd\\fffd\\fffd\\fffd\u0011l\u0005@\u0015\\fffd\\\\\\fffd\\fffd\b\"\\fffd\u0001b\\fffd dW\\681^\\fffd\\fffd\\7b8H8\u001A\\fffd\\fffd\\fffd\\fffdQh!B\\569p\u0006\u0018\u0013S\\fffd\u0016\u0007\\fffdV\"Bpu\\fffd\u0006/\\fffd\\fffdV(\\fffd\\fffd}\\fffd\u0017`%09\\fffd\u0013\\fffd\\fffd\\fffd\\fffd\\fffd 2$\\fffd\\fffd\u0019\\0 c*\\\\LC3:{gP\\fffdN\\0iJ\\fffd\\fffd\u0002\\fffd\u0015\\fffd\\fffd\\fffd@\\fffd]\u0004t\\fffdZ\\fffd@\\fffd\\fffd\u0005\\fffd\\fffd\u0013T z\\fffd\\fffd\\fffd\u0014\\\\\\fffd\\fffd 5=\\fffd\u0014\\fffdR\\fffd\\fffd{\\fffd\\fffd!\\fffd|\\fffd\\fffdIy%b\\fffdV\\fffd\\fffd=\\fffd\u0012\\563\\fffd\\fffd)\\fffd\\fffd\\fffd\\fffd;Sd\u00149\\fffd\\b4\\fffd\\fffdUp-\\fffd\\fffd\\fffdg%0D\\fffd*\\fffd^y>\u0001\\fffdg_\\fffd/]\\fffdo\\fffd]K\\fffd\\fffd\u001CX\u0005\\fffdK\\fffd\u0006McU\\fffd\\fffdQW\\fffd\\fffd{f\u0003\\fffd\\fffd\\fffd\"\\fffd(L\\fffd\\fffd|\\fffd\u000E\\fffd\\fffdlN\\fffdhsq\\2f6 7\u0001:\\fffdX\\fffd.x\\fffd\\fffd\u0011\\fffd %0A\\fffd\\fffdk\\fffdw\\fffd f\\fffdM2\\fffd}h\\fffd\\fffdlQ\\fffd\\ce6dR\\fffd*(\u0017\\fffdz\\fffd\\'w\\fffd 0K\\fffd<\\fffd 2\\fffd b\\fffd\\fffd\\fffdU>Wz\\fffd\\fffd\\fffdPUw\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\\fffd\\fffdM\\464\\fffd\\fffd*W[\\fffd*MN\\fffd\\fffd\\fffdW\\fffdX*\\fffd\u0005\u0017\\fffd\\fffd\u0002\\fffd\\fffd\\fffd\\568\\fffd\\fffdS\u001E\\fffdJ\\fffd:-n\\fffd\\526\\fffd\\fffdT}M|\\fffdW\\fffdSy%0D\\fffd\\fffd%j\u0004\\fffdM\u0017\u001C\\fffd\\fffd\\fffd\\0 D\u0019p\\fffd\\fffd\\fffdt|*\u0017\\20b6\u001A\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\\\\u0001\\fffd\\fffdh\\fffd\\fffd,\\c\\fffd\\fffd\\fffdT8\u0001\\fffd\\fffd)\\fffd@+\\fffd\\fffd/_4+\\0\\fffd\\\\\\fffd\u0005\\0\\fffd b7\\fffdi\\fffdZ8\\fffd\\fffd\\'=;q\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffdYuP\v\u0005\\fffd\\fffd\\fffdjuLVAN\\fffd^5\\fffd\\fffd<V\\1ab\\37c\u0018\\fffd\\488\\fffd%0A\\fffd\u0015\\fffdQ&g\\fffd 0 \\fffd\\0Z~\\fffd\\fffd\vT\by_\\fffd\\fffd\\fffd\\fffd\\fffd\u0010\\fffd<\\fffd\\fffdW*\\fffd]\\fffd%23eV\\fffd\\fffdm\\fffd\\fffd\u0019\\fffdvq\\5f3m\\fffd 6c\\fffd]|\\fffd a\u0001\\fffd\\fffd\\fffd\\fffd\\fffdm\\fffd\\fffd\\'\\fffdx\\fffd|\\fffd 9\\fffd\\fffd\\fffd$RD\\fffd d\\fffdM\\fffd D\\fffd e\\fffd+\\fffd\\fffd\\fffdO\"Pd%09\\fffd\u001AVe\\fffd\\\\\\fffdq\u0012\\fffd\\fffd\\fffd\\fffd\\fffdjoQ\\fffdSI\\fffd\\fffd\\fffdO\\656xN+\u0011\\fffd\u001C\\fffd\\fffd\\fffd fQ\\fffdN\\fffdU\\fffd\u0005`(\\fffd\\fffd\\fffdzw\\fffd*W\\fffd 96\\fffd\\fffd.^h\\fffd c\\fffd\\fffd\\fffdL\\fffd 5\u0019\\fffd\\fffd\\fffd 7\u0006\\fffd]0\\fffd\u000E\\fffdR\u000Fz\\fffd\\fffd\\\\\\fffd\\fffd\\fffd d:\\fffd%0A\\fffd\\3f8\u0010\u0017.\\fffdx2\\fffd\\fffd\\0\\fffd\\fffdU\\fffdg\u0002\\a5}^\\0k+\u0002z\\fffd\\fffd\"wj\\fffdV\\'F,\\0\\fffd%0A\u0017\\fffd\\fffd>\\fffd\\fffd]\\fffd?\v\u0014\\fffd\\fffdU9a\\fffdh\\fffd)\u0003\\fffdx\\fffd\\fffd\\fffd\\fffd\\2f1%0A\\fffd\\fffd\u0002`\\fffdL-j\\fffd\\fffdX\u0019\\fffdO\u001B\\fffd*\u001D\\fffdy\\fffdV.\\b7\\fffdj\u0005\\fffd+\u0011\\fffd\\771\\fffd\\fffd\\fffd\\fffd\u0005\\fffd\\fffd\\fffd+\\fffd\\fffd\\fffd\\fffd\\c\\fffd%0A@\\fffdyO\v,\\fffd\\fffd\\5ac\\fffdo\\fffdX\u0001Fh{\\fffdx\u0001\\fffd\\fffd%0A\\fffd\u0001\\fffd+\\'\\fffdj\\fffd\u0017\\fffd\\fffdW\\fffd\\217\\fffd\\fffdj\\fffd\\fffd\\fffd\\fffd\u0019\u0017\\4bb\\fffdl\u0001\\fffd 9\u0015~\u0012\\fffdV\\fffd\\fffd\\fffd\u001D\\fffd\\fffd\u001C\\fffd 7\\fffd\\fffdgH\\fffd\\fffd\\fffd\\1548\\fffdI\\470\u000E,Z\\fffd\\fffd\\fffd\\fffdW\u0006Z\\fffd\\fffdr\\fffd@\\fffd\\fffd\\fffd>\\fffd\\fffd\\fffd\\141m+\\fffd\\fffd d|>=\\fffd\\fffd\u0004@z\\fffdsg\\fffdj_\\fffd%0D\\fffdW\\fffd+I\\fffd\\fffd\\fffd\\fffd\\fffdW\\fffd 1\\fffd\\fffd\\fffd\\fffd\\fffdl3\u0015?\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u001B\u0006\\fffd\\fffd\\fffd\u0003HW\\fffd\\fffdK\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd~>\\fffd\\fffd_\\fffdo\\0\\fffdx=)\\fffd\\fffd{z\\0\\0\\0\\0IEND\\fffd B`\\fffd') no-repeat left top}.p-colorpicker-panel .p-colorpicker-hue{background:transparent url(\"data:image/png,\\fffdPNG%0D%0A\u001A%0A\\0\\0\\0%0DIHDR\\0\\0\\0\u0011\\0\\0\\0\\fffd\b\u0002\\0\\0\\0\\fffd\\fffd\\fffd\\fffd\\0\\0\\0\\fffdIDATX\\fffd\\fffdQ%0A\\fffd@\\c D\\fffd\\456\\fffd\\fffdz\u0005\\fffd%?<D\\fffd\u0015EK\\fffd\\fffdIA\\fffd\u0012\\fffd\\fffd!y\\fffd\\fffd$,\\fffd~\\fffd_\\fffd\\fffd\\fffd\\fffd\\fffdr\\fffdoE\\fffdI \\fffd 2z\\fffd\\fffd\btb\\fffd\\fffd 9\\fffd%Nmg\u0010<\\fffd c\\fffd\\d0c7*\u0016@\\fffd\\253\u0001U\\\\\\fffd \\fffd 1\\fffd\\a4f\\fffd\\fffd\u000E\\fffd\u0004\\fffd{\\fffd\\fffd\\fffd*\\fffd-\u001E\\fffd\\fffd 5\\fffd\\fffd\u0005\\fffd'x\\fffd\\fffd\\109\\fffd\u0006O\u0002q?TQ_\u000F2\\fffd\u0016_\b\\fffd[\\fffd 1\\fffdU<W\\fffd Am<\\fffdk\u001A<\\fffd\\7dc\\fffd)\\fffd C\u0015\\fffd\\62e\u0013@\\fffd]\\fffd<\\fffd(\u0001\\fffd\\fffd\u0015<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdr\\7da%0D\\fffd\\fffd\\fffdk\\fffdG\\fffd\\c\\fffd 4\\fffd\\fffdx\\fffd\\fffd A\\fffd+\\fffd\\fffd\\fffd DM\u001D\\fffd\\fffd\\fffdS\\fffd 6+*{\\fffd\u0005\\fffd FbV0\\fffd\u001C%\\0\\0\\0\\0IEND\\fffd B`\\fffd\") no-repeat left top}@layer primeng{.p-inputtext{margin:0}.p-fluid .p-inputtext{width:100%}.p-inputgroup{display:flex;align-items:stretch;width:100%}.p-inputgroup-addon{display:flex;align-items:center;justify-content:center}.p-inputgroup .p-float-label{display:flex;align-items:stretch;width:100%}.p-inputgroup .p-inputtext,.p-fluid .p-inputgroup .p-inputtext,.p-inputgroup .p-inputwrapper,.p-inputgroup .p-inputwrapper>.p-component{flex:1 1 auto;width:1%}.p-float-label{display:block;position:relative}.p-float-label label{position:absolute;pointer-events:none;top:50%;margin-top:-.5rem;transition-property:all;transition-timing-function:ease;line-height:1}.p-float-label textarea~label{top:1rem}.p-float-label input:focus~label,.p-float-label input.p-filled~label,.p-float-label textarea:focus~label,.p-float-label textarea.p-filled~label,.p-float-label .p-inputwrapper-focus~label,.p-float-label .p-inputwrapper-filled~label{top:-.75rem;font-size:12px}.p-float-label .input:-webkit-autofill~label{top:-20px;font-size:12px}.p-float-label .p-placeholder,.p-float-label input::placeholder,.p-float-label .p-inputtext::placeholder{opacity:0;transition-property:all;transition-timing-function:ease}.p-float-label .p-focus .p-placeholder,.p-float-label input:focus::placeholder,.p-float-label .p-inputtext:focus::placeholder{opacity:1;transition-property:all;transition-timing-function:ease}.p-input-icon-left,.p-input-icon-right{position:relative;display:inline-block}.p-input-icon-left>i,.p-input-icon-left>.p-icon-wrapper,.p-input-icon-right>i,.p-input-icon-right>.p-icon-wrapper{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-input-icon-left,.p-fluid .p-input-icon-right{display:block;width:100%}}@layer primeng{.p-inputtextarea-resizable{overflow:hidden;resize:none}.p-fluid .p-inputtextarea{width:100%}}@layer primeng{.p-password{position:relative;display:inline-flex}.p-password-panel{position:absolute;top:0;left:0}.p-password .p-password-panel{min-width:100%}.p-password-meter{height:10px}.p-password-strength{height:100%;width:0;transition:width 1s ease-in-out}.p-fluid .p-password{display:flex}.p-password-input::-ms-reveal,.p-password-input::-ms-clear{display:none}.p-password-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-password .p-icon{cursor:pointer}.p-password-clearable.p-password-mask .p-password-clear-icon{margin-top:unset}.p-password-clearable{position:relative}}@layer primeng{.p-radiobutton{display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:bottom;position:relative}.p-radiobutton-box{display:flex;justify-content:center;align-items:center}.p-radiobutton-icon{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0) scale(.1);border-radius:50%;visibility:hidden}.p-radiobutton-box.p-highlight .p-radiobutton-icon{transform:translateZ(0) scale(1);visibility:visible}p-radiobutton{display:inline-flex;vertical-align:bottom;align-items:center}.p-radiobutton-label{line-height:1}}@layer primeng{.p-ripple{overflow:hidden;position:relative}.p-ink{display:block;position:absolute;background:#ffffff80;border-radius:100%;transform:scale(0)}.p-ink-active{animation:ripple .4s linear}.p-ripple-disabled .p-ink{display:none!important}}@keyframes ripple{to{opacity:0;transform:scale(2.5)}}@layer primeng{.p-tooltip{position:absolute;display:none;padding:.25em .5rem;max-width:12.5rem;pointer-events:none}.p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-left{padding:0 .25rem}.p-tooltip.p-tooltip-top,.p-tooltip.p-tooltip-bottom{padding:.25em 0}.p-tooltip .p-tooltip-text{white-space:pre-line;word-break:break-word}.p-tooltip-arrow{scale:2;position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.p-tooltip-right .p-tooltip-arrow{top:50%;left:0;margin-top:-.25rem;border-width:.25em .25em .25em 0}.p-tooltip-left .p-tooltip-arrow{top:50%;right:0;margin-top:-.25rem;border-width:.25em 0 .25em .25rem}.p-tooltip.p-tooltip-top{padding:.25em 0}.p-tooltip-top .p-tooltip-arrow{bottom:0;left:50%;margin-left:-.25rem;border-width:.25em .25em 0}.p-tooltip-bottom .p-tooltip-arrow{top:0;left:50%;margin-left:-.25rem;border-width:0 .25em .25rem}}.customDialogClass .p-dialog{height:auto}.customDialogClass .p-dialog-header{padding:.8rem .55rem!important;background-color:#fff!important}.customDialogClass .p-dialog-header-close-icon{color:#000!important}.customDialogClass .p-dialog-content{border-top-left-radius:0%;padding:0}.p-dialog .p-dialog-header{background-color:#fff!important;border-bottom:2px solid #e5e7eb;padding:12px 16px;font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:space-between}.p-dialog-mask{background:#00000080!important}.p-dialog .p-dialog-content{background-color:#fff;padding:16px}.p-dialog .p-dialog-footer{background-color:#f3f4f6;padding:12px 16px;border-top:2px solid #e5e7eb}.p-dialog .p-dialog-content::-webkit-scrollbar{width:8px}.p-dialog .p-dialog-content::-webkit-scrollbar-track{background-color:#f1f1f1}.p-dialog .p-dialog-content::-webkit-scrollbar-thumb{background-color:#faa762;border-radius:10px}.p-dialog .p-dialog-content::-webkit-scrollbar-thumb:hover{background-color:#faa762}.custom-save-button{background-color:#faa762!important;color:#fff!important;border:1px solid #FAA762!important}.custom-save-button:hover{background-color:#e59550!important;border-color:#e59550!important}.form__input{width:100%;padding:8px;border:1px solid #ccc;border-radius:5px}label{font-size:14px;font-weight:600;margin-bottom:5px}.button-group{display:flex;justify-content:flex-end;gap:10px;padding-top:1rem}button{padding:8px 12px;border:none;border-radius:5px;cursor:pointer}.cancel{background:#ccc;color:#000}.save{background:#007bff;color:#fff}button:hover{opacity:.8}.card-width{width:295px!important;flex-shrink:0}.justify-end{justify-content:end}.card-height{max-height:300px;overflow:scroll}.option-card{border:1px solid grey;padding:26px;border-radius:10px}.custom-margin{margin:10px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i1$1.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i1$1.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: DialogModule }, { kind: "component", type: i5.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: DropdownModule }] });
222
237
  }
223
238
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ConfigurationPanelComponent, decorators: [{
224
239
  type: Component,
225
- args: [{ selector: 'fx-configuration-panel', standalone: true, imports: [CommonModule, ReactiveFormsModule, ButtonModule, DialogModule, InputTextModule, FormsModule, DropdownModule, ButtonModule], template: "<p-dialog header=\"Edit Configurations\" [modal]=\"true\" [draggable]=\"false\" [(visible)]=\"visible\" [style]=\"{width: '70rem'}\" class=\"customDialogClass\" (onHide)=\"closeDialog()\">\r\n <!-- <ng-template pTemplate=\"header\">\r\n <div class=\"flex p-2 bg-white border-2\">\r\n <p class=\"text-base\">Edit Configurations</p>\r\n </div>\r\n </ng-template> -->\r\n <div class=\"flex flex-col gap-4 bg-white p-2 border-2 border-gray-200\">\r\n <div class=\"flex items-center gap-4 mb-8 w-full\">\r\n <div class=\"w-1/3\">\r\n <label for=\"rows\" class=\"font-semibold w-24\">Rows</label>\r\n <input type=\"text\" [disabled]=\"enableAPI\" [(ngModel)]=\"rows\" placeholder=\"rows\" class=\"form__input\" id=\"name\" autocomplete=\"rows\" />\r\n </div>\r\n <div class=\"w-1/3\">\r\n <label for=\"enableAPI\" class=\"font-semibold w-24\">Enable API</label>\r\n <input type=\"checkbox\" [(ngModel)]=\"enableAPI\" placeholder=\"API Url\" id=\"enableAPI\" autocomplete=\"enableAPI\" />\r\n </div>\r\n <div class=\"w-1/3\">\r\n @if (enableAPI) {\r\n <ng-container>\r\n <label for=\"api\" class=\"font-semibold w-24\">API</label>\r\n <input type=\"text\" [(ngModel)]=\"api\" placeholder=\"Enter API Url\" id=\"api\" class=\"form__input\" autocomplete=\"api\" />\r\n </ng-container>\r\n }\r\n </div> \r\n \r\n </div>\r\n <!-- <div class=\"flex items-center gap-4 mb-8\">\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n <div class=\"w-1/2\">\r\n \r\n \r\n </div>\r\n \r\n \r\n </div>\r\n \r\n <div class=\"flex items-center gap-4 mb-8\">\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n \r\n \r\n </div> -->\r\n \r\n <div class=\"flex flex-wrap gap-4 mb-8\">\r\n \r\n <div class=\"w-full flex items-center justify-between\">\r\n <p class=\"text-sm font-semibold\">Columns:</p>\r\n <!-- <button type=\"button\" (click)=\"addColumn()\" class=\"custom-save-button\">Add Column</button> -->\r\n </div>\r\n \r\n <div class=\"w-full overflow-x-auto\">\r\n <form [formGroup]=\"dynamicForm\" (ngSubmit)=\"onSubmit()\">\r\n <!-- Flex container with nowrap to keep all columns in a single row -->\r\n <div formArrayName=\"columns\" class=\"flex gap-4 flex-nowrap whitespace-nowrap\">\r\n <div *ngFor=\"let column of columns.controls; let i = index\" [formGroupName]=\"i\" \r\n class=\"border p-4 rounded-lg min-w-[20rem] flex-shrink-0 card-width\">\r\n <div class=\"top-2 right-2 flex gap-2 justify-end\">\r\n <button type=\"button\" (click)=\"duplicateColumn(i)\" \r\n class=\"bg-green-500 text-white px-3 py-1 rounded-md hover:bg-green-600\">\r\n \u2795\r\n </button>\r\n <button type=\"button\" (click)=\"removeColumn(i)\" \r\n class=\"text-white px-3 py-1 rounded-md hover:bg-red-600\" *ngIf=\"columns.length>1\">\r\n \u274C\r\n </button>\r\n </div>\r\n <!-- Columns in a Single Row -->\r\n <div class=\"grid grid-cols-1 gap-4 items-center mb-2\">\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Column Name:</label>\r\n <input formControlName=\"header\" placeholder=\"Enter Column Name\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Column Type:</label>\r\n <select formControlName=\"cellType\" class=\"w-full border rounded-md px-3 py-2\">\r\n <option *ngFor=\"let type of columnTypes\" [value]=\"type\">{{ type }}</option>\r\n </select>\r\n </div>\r\n <div class=\"col-span-3\" *ngIf=\"['smart-dropdown', 'dropdown'].includes(column.value.cellType)\">\r\n <label class=\"font-semibold\">Multiselect:</label>\r\n <select formControlName=\"isMultiselect\" class=\"w-full border rounded-md px-3 py-2\">\r\n <option value=\"true\">Enable</option>\r\n <option value=\"false\">Disable</option>\r\n </select>\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">PlaceHolder:</label>\r\n <input formControlName=\"placeholder\" placeholder=\"Enter Placeholder\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n @if (enableAPI) {\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">API Value Key:</label>\r\n <input formControlName=\"apiKey\" placeholder=\"Enter Value Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n }\r\n \r\n </div>\r\n <div *ngIf=\"['radio-group', 'dropdown'].includes(column.value.cellType)\" class=\"mt-2\">\r\n \r\n <label class=\"font-semibold\">Options:</label>\r\n <button type=\"button\" (click)=\"addOption(i)\" class=\"custom-save-button justify-end\"> \u271A </button>\r\n\r\n <div formArrayName=\"options\" class=\"card-height\">\r\n <div *ngFor=\"let option of getOptions(i).controls; let j = index\" [formGroupName]=\"j\" \r\n class=\"relative grid grid-cols-1 gap-4 items-center mt-2 option-card\">\r\n \r\n <button type=\"button\" (click)=\"getOptions(i).removeAt(j)\" \r\n class=\"absolute top-0 right-0 bg-transparent text-red-500 hover:text-red-700 \r\n text-xl font-bold p-1 cursor-pointer\">\r\n \u274C\r\n </button>\r\n \r\n <input formControlName=\"optionName\" placeholder=\"Enter Option Name\" \r\n class=\"col-span-4 border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n <input formControlName=\"optionValue\" placeholder=\"Enter Option Value\" \r\n class=\"col-span-4 border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n \r\n </div>\r\n <!-- <button type=\"button\" (click)=\"addOption(i)\" class=\"custom-save-button justify-end\">Add Option</button> -->\r\n </div>\r\n \r\n \r\n <div *ngIf=\"['smart-dropdown'].includes(column.value.cellType)\" class=\"grid grid-cols-1 gap-4 mt-4\">\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">API Url:</label>\r\n <input formControlName=\"apiUrl\" placeholder=\"Enter API URL\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">Value Key:</label>\r\n <input formControlName=\"valueKey\" placeholder=\"Enter Value Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">Label Key:</label>\r\n <input formControlName=\"labelKey\" placeholder=\"Enter Label Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n \r\n \r\n \r\n \r\n </div>\r\n \r\n </div>\r\n\r\n\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <!-- <hr class=\"mt-3 mx-2 mb-0 opacity-10\"> -->\r\n <!-- <div class=\"flex justify-end gap-4 w-full\">\r\n <p-button label=\"Cancel\" severity=\"secondary\" (click)=\"closeDialog()\" />\r\n <p-button styleClass=\"border border-indigo-600\" label=\"Save\" (click)=\"saveConfiguration()\" />\r\n </div> -->\r\n <div class=\"flex justify-center my-3\">\r\n <p-button label=\"Cancel\" severity=\"secondary\" (click)=\"closeDialog()\"\r\n styleClass=\"border-gray-400\" />\r\n <p-button label=\"Attach\" label=\"Save\" (click)=\"saveConfiguration()\" \r\n styleClass=\"cta_buttons text-medium button_text_white secondary-color border-1 stroke_secondary no_hightlight no_hightlight_stroke h-max mr-2 w-6rem custom-save-button\"\r\n />\r\n </div>\r\n </ng-template>\r\n</p-dialog>", styles: [".p-overflow-hidden{overflow:hidden;padding-right:var(--scrollbar-width)}@layer primeng{.p-component,.p-component *{box-sizing:border-box}.p-hidden{display:none}.p-hidden-space{visibility:hidden}.p-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.p-hidden-accessible input,.p-hidden-accessible select{transform:scale(0)}.p-reset{margin:0;padding:0;border:0;outline:0;text-decoration:none;font-size:100%;list-style:none}.p-disabled,.p-disabled *{cursor:default!important;pointer-events:none}.p-component-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.p-unselectable-text{-webkit-user-select:none;user-select:none}.p-scrollbar-measure{width:100px;height:100px;overflow:scroll;position:absolute;top:-9999px}@-webkit-keyframes p-fadein{0%{opacity:0}to{opacity:1}}@keyframes p-fadein{0%{opacity:0}to{opacity:1}}input[type=button],input[type=submit],input[type=reset],input[type=file]::-webkit-file-upload-button,button{border-radius:0}.p-link{text-align:left;background-color:transparent;margin:0;padding:0;border:0;cursor:pointer;-webkit-user-select:none;user-select:none}.p-link:disabled{cursor:default}.p-sr-only{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.p-connected-overlay{opacity:0;transform:scaleY(.8);transition:transform .12s cubic-bezier(0,0,.2,1),opacity .12s cubic-bezier(0,0,.2,1)}.p-connected-overlay-visible{opacity:1;transform:scaleY(1)}.p-connected-overlay-hidden{opacity:0;transform:scaleY(1);transition:opacity .1s linear}.p-toggleable-content.ng-animating{overflow:hidden}.p-icon-wrapper{display:inline-flex}.p-icon{display:inline-block}.p-icon-spin{-webkit-animation:p-icon-spin 2s infinite linear;animation:p-icon-spin 2s infinite linear}}@-webkit-keyframes p-icon-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes p-icon-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@layer primeng{.p-badge{display:inline-block;border-radius:10px;text-align:center;padding:0 .5rem}.p-overlay-badge{position:relative}.p-overlay-badge .p-badge{position:absolute;top:0;right:0;transform:translate(50%,-50%);transform-origin:100% 0;margin:0}.p-badge-dot{width:.5rem;min-width:.5rem;height:.5rem;border-radius:50%;padding:0}.p-badge-no-gutter{padding:0;border-radius:50%}}@layer primeng{.p-button{margin:0;display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;vertical-align:bottom;text-align:center;overflow:hidden;position:relative}.p-button-label{flex:1 1 auto}.p-button-icon-right{order:1}.p-button:disabled{cursor:default;pointer-events:none}.p-button-icon-only{justify-content:center}.p-button-icon-only:after{content:\"p\";visibility:hidden;clip:rect(0 0 0 0);width:0}.p-button-vertical{flex-direction:column}.p-button-icon-bottom{order:2}.p-button-group .p-button{margin:0}.p-button-group .p-button:focus,.p-button-group p-button:focus .p-button,.p-buttonset .p-button:focus,.p-buttonset p-button:focus .p-button{position:relative;z-index:1}.p-button-group .p-button:not(:last-child),.p-button-group .p-button:not(:last-child):hover,.p-button-group p-button:not(:last-child) .p-button,.p-button-group p-button:not(:last-child) .p-button:hover,.p-buttonset .p-button:not(:last-child),.p-buttonset .p-button:not(:last-child):hover,.p-buttonset p-button:not(:last-child) .p-button,.p-buttonset p-button:not(:last-child) .p-button:hover{border-right:0 none}.p-button-group .p-button:not(:first-of-type):not(:last-of-type),.p-button-group p-button:not(:first-of-type):not(:last-of-type) .p-button,.p-buttonset .p-button:not(:first-of-type):not(:last-of-type),.p-buttonset p-button:not(:first-of-type):not(:last-of-type) .p-button{border-radius:0}.p-button-group .p-button:first-of-type:not(:only-of-type),.p-button-group p-button:first-of-type:not(:only-of-type) .p-button,.p-buttonset .p-button:first-of-type:not(:only-of-type),.p-buttonset p-button:first-of-type:not(:only-of-type) .p-button{border-top-right-radius:0;border-bottom-right-radius:0}.p-button-group .p-button:last-of-type:not(:only-of-type),.p-button-group p-button:last-of-type:not(:only-of-type) .p-button,.p-buttonset .p-button:last-of-type:not(:only-of-type),.p-buttonset p-button:last-of-type:not(:only-of-type) .p-button{border-top-left-radius:0;border-bottom-left-radius:0}p-button[iconpos=right] spinnericon{order:1}}@layer primeng{.p-checkbox{display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:bottom;position:relative}.p-checkbox-disabled{cursor:default!important;pointer-events:none}.p-checkbox-box{display:flex;justify-content:center;align-items:center}p-checkbox{display:inline-flex;vertical-align:bottom;align-items:center}.p-checkbox-label{line-height:1}}.p-colorpicker-panel .p-colorpicker-color{background:transparent url('data:image/png,\\fffdPNG%0D%0A\u001A%0A\\0\\0\\0%0DIHDR\\0\\0\\0\\fffd\\0\\0\\0\\fffd\b\u0006\\0\\0\\0<\u0001q\\fffd\\0\\0\\0%09pHYs\\0\\0\v\u0013\\0\\0\v\u0013\u0001\\0\\fffd\\fffd\u0018\\0\\0\\0 cHRM\\0\\0z-\\0\\0\\fffd\\fffd\\0\\0\\fffd\\fffd\\0\\0\\fffdR\\0\\0qE\\0\\0\\fffd f\\0\\0 9\u0007\\0\\0!\\fffd\u0003\\'\\fffdV\\0\\0\\'\\fffdIDATx\\fffd\\fffd}\\2ce\\fffdH\\fffd\\fffd\u001A\\'\\fffd\\fffd\u001E\\fffdO\\fffd;\\fffd\u000F\\fffd 8\\fffdn\\fffd\\fffd]\\755Y\\fffd\\fffd\u000F\\fffd=\u0014\\fffd%\u0014\\fffd\\fffd\\fffd\\fffdG\\fffd\u0002\\fffd%09 \u0010\\fffdN:\\fffd\\fffd(T\u0011\u0015U36w\\fffd/3\\fffd\\fffd f\\fffd 03\\fffd\\fffd\\fffd\u001B=\\fffd\\fffd\\fffd\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffd~\\fffd 6w/\\fffdW=\\fffdx\\fffd\\fffd 1\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd\\1e2\\fffd\\fffd\\c?\\fffd\\fffd\\fffd\\fffd\\fffdw\u001C\\fffd\\fffdZ\\fffd\\fffd\\77d\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\77f}\\fffd\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd\\fffd cf\\fffdk\u0007\\fffd\\fffdy\u0016O\\fffdl@\" \\fffdN\\533z\\fffd\\fffd\\f203\\fffd\\fffd 1\u0012\\fffd\\fffd\\fffd\\0\u0010\\fffd\u0018\\fffd\\fffd\\fffdyvq\\fffd\\fffd\\fffd\\fffd%09\\fffd\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\\7fad\\fffd\\fffd\\6ce\\fffd\u0006\\fffd\\fffdx<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u001F\u001F\u001F\\fffd\\fffd\\fffdw\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdO?\\fffd_\\fffd\\fffdW\\fffd\\fffd{\\fffdz|\\fffdI\\fffd\\640\\fffds\\fffd^<\\fffd\\fffd/\\\\\\fffdo\\fffd\\fffd\\fffdN?\\fffdo23\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd 9?v<\\fffd\\fffd\\fffd\\fffdo\\fffd\\fffdv\u0010\\fffd\\5cf}v\\fffdl;\\fffd\\fffdk\\fffd|>\\fffd\\fffd|\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\\fffd\\fffdn7\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdO?\\fffd d\\7fe}\\fffd/\\fffd\u000F\\fffd~h\\fffd ffm\\fffd\\1035\\fffdV\\fffd\\fffd\\fffd\\7381%0D\u001E\\fffd\u0006=\\fffd\\fffd\\fffd*\\fffd}\\fffd\\\\<\\fffd\\fffd\\fffdm\u0007>\\fffd\\fffd\u0005\\fffd\u0018\u001C\v\\fffdy\\fffdG\\fffd 7\\0\\fffd F\\0r\\0V\u001B@\\fffd\\fffdt\\fffd\\fffd\\fffd\\fffd\\fffd|Z\\ff4d\\fffd\\fffd\\1e3=\u001E\\fffd\\fffd~\\fffd\\fffd\\fffdv\\cf3cf\\fffd\\fffd\\fffd\u000F\\fffd\\fffd\\fffd[\\fffd\\fffd\\fffd_\\fffd?\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd~\\fffd\\fffd\\fffd\\fffdx<\\697\\fffd\\fffd\\289\\fffd\\fffd\u0015\\fffd\u0004\\'o%0A\u0010\\fffdl\\fffd\\fffdr\u0002\\fffd\\0\\fffd\\fffd D\\fffd\\58e\u0013\\fffd\u0017B\\fffdY\\c\u0012\\fffd\u0001\\fffd\\fffd\\fffd\\fffd\\fffd 6xlj\\fffd\\fffd[km\\fffd[k\\fffd\\fffd[\\fffd=\u0004\u0016E\\fffd%23R\\fffd\\fffd\u0007\\fffd\\fffds~\u0002\\448R;\\fffd|\\fffdP}\\fffd\\6de\\fffdg\\fffd\\fffd\\fffd\\fffdn;\u0005\\fffd\\5ef_\\fffd_\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd/\\fffd\\fffd\\5ef_\\fffd\\fffd|\\fffd\u0014X00)\\fffd\\fffd\u0011&\u0004g!\\fffd\\fffd\\'^\\0I\\fffdM\u0015\\fffd a$%0A\\fffd\\fffd\u0001\\fffd\\fffd\\fffd FA\\fffd 9\\fffd\\fffd\\fffd A\\fffd 0\\fffd\\fffd c\\fffd\u0011\\fffdN\\fffd 6\\fffd\\fffd\u0007\\fffd\\fffd 1\\fffd\\fffd\\fffd\\fffd{\\fffd\\fffd`rw{<\u001E\u0003X\\fffd|>}\\0\\fffdv\\fffd\\fffd\\fffd\\fffd f\\fffd\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffdo\\fffd\u001D\\fffd\\fffd\\fffd\\fffd_\\fffd\\fffd\\5ef\\fffd\\fffdo\\fffdY\\fffd}%0A\\fffd\\fffd\\fffd\"m\\fffd\"[\\fffd\\fffd\\1a0\\fffd\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffd\u0010\\fffd\\fffd DT\\fffd\\fffd.\u0003V\\fffdx\u0003$\\fffd\\fffd\\fffd.`\"\\fffd 4\\0\\519\\fffd\\fffdl\\fffd\u0019\u0002\\fffd 0B\\fffd\\fffd\\fffd\\7fe\\fffd 6\u0004\\fffd\\fffd{?\"\u0016\u0002\v5\\fffd\\fffd~\\fffd\\fffd\\fffd\u000F\\fffd\\fffd\\fffdG\\fffd\\fffd\\fffdh\\fffd\\fffd\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdv\\fffd\\fffd\u000E\\fffd(RT\u0001\\fffd\\fffdg\"N\\fffdH\\fffd\\fffd*\\fffd\\fffd|\\fffd\b \\fffd\\fffd\\fffd\\fffd\\fffdZ\\d3\\fffd\\fffd 5\\cb\u0011%23z\\0\\fffd\\fffdG\u0001Pf\\fffdr\u0012\\5ca\\fffd\u001A\\fffd\\fffd\u001E\\fffd\u0006x\u001AF,\\fffdQ\\fffd\\fffd\\fffd\\fffd\\fffdv\u001D5@5\\fffd\\6ee\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\\fffd\\fffd\\fffd\\fffd\\7ff\\fffd\\fffd~\\fffd\\fffd}||\\c\\fffd\\fffd~\\fffd\\fffd\\fffdn\\fffd\\fffd=\u001E\\fffd ffZcU\\fffd 5\\fffd d+\\0\\fffd-\\fffd\\b20e<H *\\fffdNQ\\fffd\\fffd D^\\fffdK\u0006\u0011\\fffdG\\fffd\"\\0!\\fffdu\\fffd/\\fffdK\\fffd\\fffd f`\\fffd\\fffd\\fffd D\\fffd\\fffd\b\\fffd A\\fffd%23za\\fffd\u001AT\\fffdk\\fffd\\fffd\\fffd\\fffd\\fffd,pD,\\fffd\\fffd\\fffd\\fffdo\\7fe%0D!o?~\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd B\\fffd\u001E\\\\\\fffd/\\464 8\\fffd>\\fffdt\u0019\\fffdI\\fffd(\\fffd)@\\fffd 1[!\\fffd\\fffd\u0019\u0015\\fffd\\fffd\\fffd\u001E\\fffd\\fffd\\fffd\u0016\\0\\fffd\\fffd\\fffd\\fffd`\\fffd\bu\\fffdk\\fffd\\fffd&\\fffd\\fffd d{;\\fffd a\u0004\\6d0\\fffd\bL\u0003h\\fffd\\fffd\\fffd\\0\\fffd\\fffd\\fffd\\fffd]S\\fffd\\fffd\\fffd@\\fffd\\fffd\u0001*\u0004\\fffd\\0\\4b7o\\fffd\\fffd\\fffd\\fffd\\1f6\\fffd\u0001,\\fffdP\\fffd\\cO\\fffdZHRs\\fffd e\\fffd\u00118\\fffd 82\\fffd\u0005\\78fGQ\\fffd\\fffd=ff\u0002\u0014\\fffd\u0017X\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd 5p\\fffd\u0018t\\fffd\\f0$]u\\fffd\\fffd a\u001B\\c:DKa\\8a9d\\fffdl\\fffd\\fffd\u0013\\fffd=\\fffd\\3f6G\\fffdv\\fffd\\fffd\\6ee\\fffdNT\\fffd\\fffd?>>\\fffd\\fffd\\1c7=\u001E\\fffd\\fffd\\fffdx\\fffd\u0011\u00199bM\\fffd\\fffd,J\\fffd\\fffd\\fffd\u0005\\fffd\\fffd\u0001\\fffd\"\\a2f2 1\\fffdG\\fffd|\u0011y\u001C\\fffdsa\u0007x$\\4154h\\fffd)\\fffd@6\u001Cn\\fffdT\\fffd^\"1\\0 b%23\\fffd\\fffd%0D\\fffd\\fffd\\fffd\\fffds\\fffd d\\fffd%0D-\\fffd\\fffd@\u0007\\fffdj\u0018\\fffdGd\\fffd\u001F\\fffd}\\fffdVv\\fffd\\fffd\\fffd~\\fffd\\fffd\\fffd\\fffd%0DSt\b\\fffd}\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffdw{<\u001EG\\fffd\\fffdh\\fffd\\fffdQ\\fffd\\fffd*\u0003TK\"Oh\\fffd\\fffd\\c\\c897\\fffd\\fffdv\\fffd\\fffd\\fffd\\fffd\\fffd\\4f6\b\\fffdM\\0 FzP\\fffd\\fffd 5\u0006\\c\u001CsS\u0019\u001D\\fffd\u0001\\200\\fffd\\cJ.hn\\fffd 7\\fffdQ\\fffd\\fffd@C a&\\fffd\\fffdWuP\\fffdn\\fffdn\u0002Xv\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\u001Bf\\fffd\\fffd\u0003qd\\fffd>\\fffd}\u0002\u0016g<\\fffdl+\\fffdrHApB\\fffd\\fffdw\\fffd\\fffd\\fffdV\\0\\fffd\u0005\\11c(\\fffd\\fffd m\u0001\\fffd\\fffdy\u0014\\fffd.\u0011p\\fffd\\fffd\u0010\\fffd\\fffd\\fffd.2-\\fffd c\u0016\\fffd\\'\\fffd\\fffd`\u0002 %0DZ\\fffd\u001C\\fffd\\fffd(\\fffd\\fffdj\\0iD)\\736!\\fffd\u0006\\fffd\\fffd\\235\\fffdQh\\0i\\0\\c\\fffd\\fffd\u0003\\fffd\u001F\u001F\u001F\u000E\u0011\\fffd\\fffd\\fffd^\\0U\\fffd\u001F\\'W\\42d\\fffd\\fffd\u001A\\9ca2\\fffd\\ch\u0002\\517\\c\u000F\\fffd\\fffd B^\u0001\\fffdu\\fffd\\fffd\u000EX\\fffd\\fffd\\fffd\u0011\\fffd\\fffd\u0003\\0N\\fffd\\fffd\\fffd\\fffd 9\u0007\\fffd\\fffd\u0013\\fffd\\fffd\u0001L\\fffd\\fffd\u001BF\\fffd\\fffd\\fffdyl{>\\fffd\\fffd\\78dpD\\fffd\\fffd%09\u000E\\fffdt\\fffd\\fffd\u0007\\fffd\\fffd\u000E\\fffd\\fffdG\\fffd~\\fffd\\fffd}\\fffd am\u0007\\fffd A\\fffd\\fffd\\fffd\\73d\\fffd\\fffdp\\fffd\\fffd%0A(-\u0013\\fffdx\\fffdK\u0003\\fffd 4\\fffd\\fffd 2\\fffd\\fffd 2\u001D%\u0004\\fffd\\6b6\u0012\\fffd\"\\fffdi\u0013T\\fffd\\fffd\u001A@\\fffd}\\fffd\\fffd\\fffd\u0001F\\fffd\\fffd F\\fffd\"\\fffd a\\fffd 2\\fffd\\fffd\\fffd\u001C\\fffd F&xh\\fffd\\fffd\\fffd\u0013\\fffd\\fffdY\\fffd 6\"\\fffd\u000E0\\fffd\\fffdn\u000E\\fffd\\fffd\\fffd 4k\\fffd\u000Ek\\fffd%0A\u0003\u0010\\fffdh\\fffd E\\fffd\b \u0015\\fffd E\u0011\\154\\fffd\\'\\fffd\\fffd 2NU\\fffd\\'\"\\fffd\u0001\u0005JG=+\\fffd 2x\\fffd\\fffd CJ\u001BB\u001E\\fffd\u0015\\fffd\u0012\\fffd\\fffd\bL\\fffd-\u0005\u0004\\fffd\\fffdU\\fffdu\\fffd\u0014 \v\\fffd\\fffd\\7cf9{\\fffd[_\\fffd\\fffd\\fffdw%0A\\fffd\\fffdn\\fffd\\fffd\\fffd\\fffdG\\fffd C[\\fffdv\\fffd\\fffd\\fffd\\3c61 E1>c\\fffd\\fffd\\fffd\\fffdP\\fffd\\'\u0002ODm\\fffd\\fffd\u001F\\fffd\u0012E8\u00052\\fffdh\\fffd(\\303\\fffd\u0001E\\fffd\\fffdQ\b\\fffd\u0017\u0001K\\fffd:%09E\\fffd 38\\fffd\\fffdr\\fffdo?a\u0017K\u0001\\fffdU\u001F\\fffdR\\8d33w\u0005\u001D\vH\\fffd\u0007\\fffd=\u001E\u000Fw\\fffd\\fffdn\u0018\\fffdgv\\fffd\\fffdmG\u0007\u0004GO3\\fffd\\4c8U\\fffd`\u0013\\fffdXf!\\43e\\fffd\\fffd\\fffd\u0010\\fffd\\fffd\\fffd\\fffd\\fffd 6p\\fffd\u0011L\u001C\\fffd\\fffd\\fffd\u0002U\\fffd\u0013\\fffdm\\fffd\\fffd 9eyG$\u001A\\fffd\u0003\\fffd\\fffd&\u0011\\fffd\u001D\\fffdN\\0;\\fffd\\fffd\\fffdkX%0A\\0\\fffd\\fffd\\fffduw\u001F\u0002\u001E;\u001A\u001A\\fffd`%0D=\\fffd\\fffd\\fffd\\fffdk\\fffd\\fffd\u0001;,\u000E3\\fffd\u0010XQ%09\\fffdR\\fffd\\fffd,\"%09cRQ!\\fffd)O\\fffd\\fffd)@\\fffd\\fffd\\fffd\\fffd 3\u0016\\0\\fffd\\fffd 1\\fffd&g\\fffd\u0007\\fffd\\0\v4\\fffd\\27b\\fffdl\u000FLOI\\fffd\\0\\fffd\u0011\\fffd\u0018d\\6fe\\fffd@\u0018\\fffd\\fffd+w}\\fffdg\u001B\\fffd f\\fffdX{\\fffdr\\fffd\u0018\\fffd\\fffdv\\fffd\\fffd|h*\u0004\\fffd\\0\\fffd\\fffd\\fffd_T\\fffd 4\u0003L\\fffd\\761\\fffd\\fffd\b\\fffd\\fffdkG\\fffd\\fffd[\u0007\\fffd\\fffd\\fffd\u0006\\fffd\u0003?\u001F \\fffd\\fffd\\fffd\u0014\\fffd 8%23\\fffdHo\u0011\\fffd 5\\fffd_\\fffdw\\0\\fffdO\u0004\\fffd 1\u001E\u0004,n\\fffds\\fffd\\fffd 9\\fffd\\fffd\\fffd)\\fffd\\fffd\\fffd\u00151\\fffd\\fffdx\\fffdH\\fffd\\fffd\\0\\fffd]C%0D\\fffd\\fffd 9\\fffd\\fffd\\fffd a3\\fffd%23\\fffd\\0\\fffd\\fffd[?\u001Cx,V\\fffd\\c;+\u000E\\\\|\u0011\\fffd\\fffd)5\u0006\\fffd\\fffd\\fffd\u001D\\fffd\\fffd\\fffd\\fffd\u0018\\fffd\\fffd\\452P\\fffd\\251OR+\\fffdL8JBC\\fffd\\fffd\\fffd 1a\u0013\\\\\\fffd 1\\fffd\u0006\bt\\fffd\\fffduA\\fffd\\708g\\0\\fffd%23\u0019\u0018\\fffd%09\\fffd\\13b C\u001B\\320\\fffd\u000E\\fffd\\fffd\\fffdN\\fffd\\fffd\\fffd\\fffdx\u000E\\fffd\\fffd\\fffd\\fffd\\686\\fffd\\fffd%23\\fffd 6\\fffd 8\\fffd\u0012[\\fffdGd\\fffd\u00028S\\fffdL_)\\fffd[=\\fffd\\fffd\u000E\\fffd\\fffd\\fffd>\\fffd@\\fffd\u001F\\eda0IE}\u001BL\u001C\\fffd D/\\fffd\\fffd dZ2H&\\fffd\\fffd E\\723\\fffd\u0010\u0018\\fffdln\"5\"-np\\fffd\\fffd F\\fffd\\fffd\\3b6SZC\\fffd\u0014\\fffd f\\0.\\fffd\u001B:P\\fffd\\fffd\\fffdl\\fffd\\fffd@\\fffd\u001F\\fffd\\fffd\\fffd\\6a7\\fffd\\fffd\\430U`\\fffd\\fffd]\\fffd\\\\Y\u0011-\u0002P\\fffd\\fffd\\fffd\\fffd b\\fffd\\fffd\\fffd\\fffdXD\\fffd.\\fffd 9\u0017\\fffdO\\fffdu\\fffd\\fffd\u0016\\fffd\\fffd\\fffd\\fffdX7\\fffd\\fffd\\fffd\u0003\\fffd 5\u0002\\fffd 6a1t0E\u0011dR\\fffd\u000F\\fffd\\fffd\\fffd 3\u0004{\\fffd c\\fffd\\fffd\\fffd\\fffd\u0004b\\fffd\\fffdlX\\1b9 D,\\fffd\\fffd*-& \\fffd\\fffd\\fffd\\fffd%09\\fffdy@\\fffd\\fffd\\fffdvn\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd-\\fffd\\fffd\\fffd\\fffdLX\u0003\u0017\u001D\u0015\\fffd\\c362\\560x\\9f23\\740\\fffd%0A\\0\\fffd\u001A\vg\\fffd 86\\fffd=\\fffdO7\\fffd\\fffd\\fffd\\fffd\\fffdw\\fffd\\fffd\\fffd\u0003\\fffd\\fffdn%\u001C\u0019\\fffd\\fffd\\432\\fffd D\\fffd%0A\\fffdg\\fffd 5\\fffd\u00120d%\u0016\\fffdT\\fffdRJD\\fffd\"\\fffd;\\fffd\u0006Aq\\fffdj\\fffd\\fffdY\\fffd\\fffdp\\fffd\\fffd\\fffd\\fffdV\\fffd\\fffd^\\fffd\\fffd\u0003\\fffd d\\fffd\\fffd 8*\\fffdZ\\fffd\\0@\\fffd\\fffd Zu(\\fffd\\c \u001ETH\\fffdx\\fffd 6\\cR\\fffd\\fffdm\u001Cs\\fffdt%23J\\fffdN\\fffd\u001B\\0\\fffdl7\\fffd\"V5Z\u00118<q\\fffd%23\\fffd 5u\\fffd@S\\fffd\\fffdP\\fffd(\u001F\u0003%23\\fffd*Bg\\fffdS\\fffd 7z\\fffd\\fffd\\fffd aL\\\\ \\fffd D\\fffd\\b92b:Lv8m\\fffd\\fffd\u001D\\fffd\\fffdN\\fffd\\fffd\u0007\\fffd\\fffd~\\fffd\\ced08%\u001Ep\\d3d2\\fffd\u001E\u0001\u001D\\fffd\u0006O\\fffd!\u0005\u0002\\6d4\\fffd\\fffd\u0005\\fffd\vr?\\232\\fffd\\fffd|X\u0012`G\\\\\\fffd\\fffd\u0001\\fffd\\fffd\\fffd\u0005\\fffd\\fffd D6AiFB\\fffd\\fffd\u0004\u001B\\fffd\\fffd\\'\\fffd\\fffdhnP\u000E|\\fffd%{\u0004%0As\\fffd^XXv\u0010\\fffd\\fffd\\fffd|\\fffd%0D\\fffd\u0016\\fffd\\fffdN\\fffd\\fffd C\\fffd\u001Ct\\fffd\\fffd\\fffdU0\\fffd 8\\fffdg\u0014\\fffd\\fffdR84\\fffdN\\fffd\\fffdj=0\\fffd\\fffdv\u0003\\fffd\\fffd\\fffd\b\u0015i\\fffd\u0006\\fffdM\\fffd\vk\u0019\u0004\b\\fffd C\\fffdUu\u0015\u0011Y\u0007\u0005\\fffd\\525\\fffd\"\\fffd%09m\\fffd\\fffd a\u0013\\fffd\\fffd%09\\fffd\u0001=\\fffd\\fffd\\fffd>\\fffd\u0019\\fffd\\fffdT$\\fffd\\8166(D\\fffd F\u0011kc*\\fffd%23%0DRacZ\\729\\fffd-\u000E\\fffd\\fffd\\fffdp\u0007S\\fffd f\\fffd\\164d\\fffd\u0012\\fffd\\fffd\\fffdJ:E\\fffdj\\fffd%\\fffd E49\\fffdL\\fffd\u0005\u000E\\fffd\\fffdY!\\fffd\\'},\u0006\u001A\u001B\\fffd\\fffd\\cp\\fffd\u001A\u0003\\fffd\\fffd\\fffd\\fffd\\fffd@@\\fffdJc\\fffd\\fffd@\\fffd\\fffd\u001F\u001F\\fffd ?\u0006\\fffd\u001DA7<*\u0006]\\fffd\\fffd 5\\fffdt48\\fffd\\fffd cB\\fffd\\fffd\\fffd\u0019\\fffd,\u0001U\\fffd\\fffd-\u0002\\fffd\u0005`\\fffd 3\\fffd\u0002\v\\fffd\\fffd\\5dc 3\u0016*\\fffd 8\\fffd\\fffdM\\fffd\\fffd<\u0002\u001B\u0014\\fffd%2309\u001B\\fffdH\\fffd\\fffd\\fffd]\\fffd\\fffd\\fffd\\fffd\u000E\\fffd;e\\fffd\u001B\\fffd\\1a0\\fffd\u0015\\0\\fffd!%0A\\fffd\\fffdwJ\\0\\fffd}+\u0004\u0013\\fffd*\\fffd\u001B\\fffd\\fffd\\fffd\u0017\\0 7\\fffd f\\fffdg\v y2\\fffd!r\\fffd%23\\fffd D\\fffd\\3c0v\\fffd\\fffd\u0011\\65e\\fffdRN\u0016\\fffd\\fffd\u0016M4\\fffd\u0019\\fffd\u0003\\fffd\\fffd\u0006|\\fffd\\fffd%0A\\7c7Z\\a939\\fffd\u001Ey\\fffd\u001EPP\\fffd\\fffd\\fffd\\fffd 9b\\fffd\\fffd\\fffdX\u0017\\fffd@\\fffd\\fffd%\\fffd\\fffd\\fffd\\fffd\\fffd E\\fffd\\fffd d\\fffdKDc\\fffd 8\\fffd dQ\\fffd\u0010\u0017\\410\u0016\u0003\\fffd\\fffd\\227\\fffdP\\fffdx\\fffd\\fffd\u001D\\fffd\\fffd\\fffd-\\fffd%0Aw0cI\\fffd\\fffdy\\fffdP\u001B\\fffdp\\fffdg\\fffd\\1e7\\206\\fffdr\\406 \\fffd\u001E\\fffd\u000E-3\u0016\\fffd%0D\u0013\\fffd\\fffd E\\fffd\v8\\fffd\\fffdR\\0$ps\\fffd E\\fffdVMQ\\fffd\u0010\\fffd 3-e\\fffd\\fffdoA\\fffd\\fffd\u0016\\fffd\\fffdT\u001F\u001F\\fffdh\\fffd%0AB\\fffd c%09\\fffd c\\fffd\u0006\\fffd\\fffd\\fffd\\fffd@\\fffd\\fffd\\fffdz<\u001E\\fffd%0A\\fffd B@\\fffd\\5415\\fffd\\fffd\u000Ei\u0012\\5cb\\fffd\\fffdo\\fffd\\fffd\\fffd%0AK`\"1\u001F%09\\fffdW(\\3c2\u0006\\fffd\u0019x<\\fffd@\\fffdKwL\\fffd\u0013J<\\fffd=\\fffd\u0010\\fffdN\\fffdI\\fffd\\fffd\\fffd_\\fffd\\fffd\\fffd\\fffd\u0019\\fffd\v@?&\\fffd\\fffdQc96\\fffd%0D\\fffd Bz\u001B6\\fffd\u0018Kl\\fffd\\fffd\\fffdjRk\\fffd\\fffd\\0\\517\\fffd 1b\\fffd\\fffd\u0006\\fffdL\\fffd c\\fffdh\\fffdzG\\fffdz\u0001\\fffd\\1b5\\fffd\u0004H\\c^\\fffd\\fffdW\\fffd\\fffd\u0005B\u001C\\fffd-\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd:E/\\fffd\\fffd^\\fffd\\fffd\\4a1\\fffd}2A\\fffd\u0010\\fffd\\0\"\\'*<(%0D%23\u0014\\0\\fffd\\fffd\\fffd\\fffd\"\\fffd\\fffd\\293!z\\\\W\\fffdTh\\fffd\\c aE[*\\fffd\\fffd\u0017\u0001Id\u00195^@\\fffdm\\fffd\\1ee\\fffd\\fffdY\\fffdr\\1f8\\fffdX\\fffd\u0006\\fffd\\fffd \u0007\\fffd\\fffd\\fffd eC\\\\\\fffd 1\\40f\u0012\\fffdh8\u0013\\fffd\\fffd\\fffdMQ!f\\fffd\u0004\\fffd\\fffd\\fffd\\fffd\\fffd A6\\fffd\\fffd\\fffd e*3\u0004\\fffd\\373\\fffd%09\\fffd\\fffd\u001A\\fffd\\fffd\\fffd\\7dd\\fffd\\fffd_i\u001B\\fffd%0DLM\u0014\\fffd\\fffd\\245Q{\\fffd\\1ad\\fffd%23\\fffdp\\fffdQY\u0014Q4\\fffd\\fffd*\u0002\\fffd E\\fffd\\fffd 1\\fffdm\b:\\fffd\u0002\\fffd 6t\\fffd\\fffd\\fffd:\\fffd~Fd\":D\\fffdw\\fffdn\\fffd\u001Bv%23\\fffd\u0001\\fffd\\ecG\\fffdl{\\fffd\\fffdG+\\fffdX\\fffdnS\\1c1\u0005QLE=W\\fffd-\\fffd 2@\\fffdl\\fffd\\fffd A\\fffd\\fffdz\\fffdR\u001D\\fffdm\\fffd\\fffd\\fffd\\fffdh8\\fffd(\\fffd\\fffdN\\fffd\\fffd\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\u0001\\fffd/\\fffdn\\'K\u0002t\\fffd\\fffd 4ee h\\9f3e\\fffd\\fffd\\fffd\\fffd at\\fffd EKJ\u0013\u0019\\fffd\u0005`\\fffd\\fffd\b\\fffd\\'\\fffd E\u0007CF\\fffdlZ\\fffd\\fffdp\\fffdh\\fffd E\\fffd\u001A\\fffd\\66e 4V\\fffd\\fffd\\fffd%\\fffd\\fffd\\'\\fffd+\\fffd\\fffd\\fffd\u001E,\\fffd\\fffd\v\\fffd!-\\fffd\\fffd\\fffd\\fffd=\\fffd\\fffd\v\\fffd\\fffd/\\fffd 28z\u0011%0D\\fffdI\\fffd\\fffd]\\fffd\bj:\\56cw*\\fffd\u001F<\\fffdG\u001Eh,~\\fffd\\fffd\\fffdK\u0003E\\fffd\\fffd(\\3d5\\fffdN\\fffd\u0007K1\\fffd\\fffd C\\fffdO\\fffd%0A&Y\\fffd\\fffd>\u001C\\fffd-8\\fffd\\']\u00056\u0004>o\\\\;\\fffd\\fffdM\\fffd\u0002$\\fffd)\u0016\\fffdT\\fffd\\fffd\u0015\\fffds\\fffd 5\\fffd|P\\fffd\\1fe`-\\fffd\\0 FF\\fffd\\fffd\b.\\fffd\\fffd`\\fffdK1\\fffdq\u0001=\\fffdX\\fffd\u0016\\fffd\\fffdL\v\\fffd\u0006\\'\\fffd\\fffd\\fffd\\fffd)Z\u0002\u001D\\fffd\\fffdp\u0012\\fffd\u0001M\\fffd 1\u0010\\fffdl%23\\fffd\\fffd:\\fffd\\fffdha\\fffd\\fffd\\fffd\\fffd\\fffd\u001C\\fffd\\fffdV\u0018\u0001`%\\fffd\\fffd\\cr\\fffd\\fffd\u0014\\fffd 1\\fffd\u0016\\fffd\\fffd\u0002-\\fffdR!;\\fffd{A\\fffd\\fffdy\\fffdHg@o\\fffd\\0\\fffd\u0004\u0005Z%0A\u0018^ +D\\fffd\\fffd~,SV\\fffd\\fffd%0A\\fffdn8\\fffd)D&\\fffd\\fffd\\fffd\\fffdh\\fffd\\fffd\\fffd\\fffdq\\fffd\\fffdmI\\fffd\u0007-1\\fffd^\\fffd\\360\\fffd\"W\\fffdK\\fffd\u00010\\fffd\u0014\\\\\\fffd\u0004\\fffd)]\\49fRB?\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u0006*\\fffd X\\fffdm\\fffdP&\\4d6\\fffd F\\fffd\\fffd\\fffd\\fffdG\u0006\u0007\\fffd A\\0\\fffd\\fffd\\fffd(\u0012=-\u0004\\fffd\\fffdqS\u0004\u00137O\\fffdR\\fffd<3k\\fffd\\0 Fs%0DG\\fffd_&\\fffd\\fffd}hI\u0018\\fffd\\fffd\\fffd*5Mt0\\fffd\\fffd 2\\fffdh\u001E!w%\\fffd\\fffd~\\fffd\\fffd\\fffd}hU \\fffd\\fffd\\fffd\\'\\fffd\u001E\\fffd 2\\fffd\u001B\\fffd 5v\\fffd\u000Fw\u001DW\\fffd a\u001A\\fffd)\\fffd\\fffd\u0012\\fffdw\\fffdI7:\\fffd\u0016\\fffdz\\70f\\fffdX\\420\\fffd\\a8}f\\fffd\\fffd\\fffd\\4da\\fffd C\\fffdW\\fffd;j\\fffd\\fffd/S\u0016\u0003\\4df\\fffdx\\fffd F>\u0017\\fffd\\fffd FEh\\fffd\\fffd\\fffd D\b\\fffdT\u001ED\\fffd\\fffd\\0\\36d 2\\fffd)rC F,%23?%0A\\fffd\\fffd Fm\\fffd\u0018\\fffd\u001C\\fffd\\fffd c\\fffd\\fffdX\\fffd\\fffd\\fffd[\\fffd)\\fffdJ\\fffd\\fffd\\aa a\u001A\\fffdlR%0D\\fffd\\fffd|Iw\u0001x,\\fffd\u0002G\\742\\fffd>K(2+\\fffd\\\\\\fffd\u0016\\fffdw\\fffd\\fffd DGe\u0011\\fffd Ep\\439\\fffd\\d153\\fffd\\507\\fffd 9fw\\fffdq\\fffd\\fffd\u0012\\fffdo\\c@<\\fffd\u0003\\fffd\\fffd\\0+[\\fffd\\fffd&\\fffdS\\fffdy\\fffd\\fffd\u0016\\fffdo.V\\0\\fffd\u0011Jg%09\\fffd\\542\\fffd:\u0015\\fffd\\fffd\\fffd 3\\fffd\u0014\\fffdv\"a4\\fffd 4\u001BD%09\\fffd\\fffd\\125\u001B\\fffd\"\\fffd\u001C=\\fffd%09t\\fffd\\fffd\\fffd\\fffd++\u000F\\0\\fffd?\\fffd\\fffd\u0006\\fffd:i\\fffd\u0011\\fffd\\fffd\\fffd\\55d2\\18a\"\\fffd,\\fffd]\\0\\fffdh%23\\fffd.\u0006\u0019\\fffd\\fffdq\u0014\\fffdR\\fffdV\\fffdz\u0003\u0007\\fffd Df\\fffd 4\\fffd\\fffd\u0005\\173\\fffd\u0010\\fffd~g \\fffd\\fffd\\fffd\\fffd\\fffd_JC\\fffd\\fffd\u001B\\356\\fffd(\\fffd\\fffdo\\fffd\\fffd\\10b\\fffd?0\\fffdrU\\fffd%\\fffdU\\fffd b!\\fffd\\fffd\\fffdq\\fffd fU\\fffd\\2e5\\fffd=\\2e8QD3~=r\\fffdM\\462z\\fffd\\fffd e[\\fffd B\\fffd\\fffd\\fffd\u0001\\fffds\\fffd$a`\\fffd\\fffd\u0017g\\fffd\\fffd\\fffd\\fffd 85\\fffdm\u000E^\\\\\\fffd\\fffd[\\fffd%0D\\fffd\\fffd 6n\\fffd\\fffd\\fffd\\'&\\0\\fffd\\fffdK\\fffd\\fffd\\0\\fffd\\fffd\u0011\\fffd eQ%09\\fffd\\fffd\\fffd\\fffd B\\fffd\\fffd\\689\\fffd\\fffdr\\5c9\\fffdN\\fffd\u0005-\\fffd a\\fffdqQ%0D\\fffd\\fffd(\\b2H\\fffd\\fffd D\\50a\\fffd\\fffd\\fffd%0D\\fffdLP\\fffd e\\fffd\\fffd\\fffd\\fffd 6\\fffdz\\fffdg\\fffdl!3T\\fffd~\\fffd@g\\fffd!\u0012\\fffd\u0016L\\fffdp%\\fffd\\fffdmKT&xq\\fffd%098\\fffd\u000E\\fffd\\fffd\\fffd\\606\\fffd\\fffd.Z\u001Dv\\fffd\\fffd\\fffd\\fffd B\\fffd\\fffd\\fffd\\fffd\u001FN\\fffdw\\fffd\\fffdwv\\133\\fffd?\\fffd\\fffd\")\\fffdt2Xt\\fffd(\u001AMh0\\fffd\\fffd\u0015i\\c\u000F\\fffdk\\fffd\\fffd*\\fffd D\u0004\\fffdL\\fffd\\fffdp\\5d5\\fffd\\fffd\\fffd\u0019\\fffdJ\\fffd\\fffd~\\fffd\u0005\u0006\v\\5e7 cPM\\fffd\u0014\\fffd\\fffd\\fffdp1J\\fffd|\\fffd\\fffd\\5f2\\a4\\fffd 8\\fffd F\\fffd\\fffd d\\fffd\\fffd\\262\\fffd\\8a72\u0002E\\fffd\\fffd b\\fffd\\fffd\\fffd)\\fffd b\u0002@\\fffd 8Lw\\fffd\\fffd$\\310 9\u0001\\fffdO2\u0003\\fffd\\c193>\"Q\\fffd\\fffd{\\fffdUo6A\\fffdNEg\\fffd\\fffdO9\\fffd\u0012X\\fffd\\fffd\\3a2Rd+\\cg=\\fffd\\fffd\\fffd\\fffd\u001E\u0002dL\\147\\fffd 2\v|,\\fffd 271\\fffd\\fffd\\fffd\\fffd\\fffdu\\fffd\\fffd\\fffd\u0010XL\u0015bf\\fffd)+B\\fffd%23\\fffdmF\\0\\fffd\\fffdO\\fffd\\fffd\\0\\fffd\\fffd\\fffdt|\\fffd\\fffd]|\u0007\\fffd\\fffd\\fffd \\fffd;\\108c4f\\fffd\\fffd;\u0015\\fffd\\fffd\u001A\\fffdR;\\fffdJ7j\\fffd\\fffd\\fffd>\u0018\\fffd\u0006\\fffd\u001D\\fffd\\fffd\\fffd\u0001\\fffdyf\\fffd\\fffd\\fffd \u001B\\fffd\u0010\\fffd B\\fffd\\fffd\\fffd\u001E\u0019\\fffdQD\u0013 \\fffd\\fffd<\\fffd%23\\fffd`\\fffd\\fffd 7A\\fffd\\fffd,\\fffd\\fffd>\\fffdg\\fffd b\\fffdr\\fffd\\6f3\u0015\u001DYb(\\fffd!+\u0004O\\17b\\fffdJ%09(e\u0017gFwB\\fffd](\\fffd%23\\fffdj+N\"]4\\fffd>\\fffd=a?\\fffd@\\fffd\\fffd\\382e\\fffdn\\fffd\\fffd\\fffd\\fffd\\fffd\vo\\54b%\u001D\u0013\\fffd\\fffd\\fffd\\fffd\\fffd D\\fffd\u0003|Js\\fffd\\586\\fffd\\fffdZk\u000E\\fffd\\fffd 0J\\fffd\u001A\\fffd\\6a6\\fffd\\fffd<\\fffd\u0002\\355\\fffd\u000El%09\\fffd\\fffd|\u0005\\fffd\\fffd b\\fffd\u00065\\fffdw\\fffd%\\fffd{\u0015d \\fffd;\\fffd\u001D\\fffd\\fffd\\fffd\\fffd D\\588\\fffd}\v\\0\\fffdhE\\fffdN\\fffdnJ7\\fffd~\\fffd\\fffd\"(W\u000E\u000F+\\fffd\u001B^\\fffd\u001F\u0012\u0003U\\fffd D\\fffdV\\fffd\\fffd\\271\\fffd br\\fffd b_T\\fffd\\fffdh\u000E\\fffd\\fffdrDwJ\\fffd\\fffd \\fffd\\fffd\\fffd&\u001A\u0003\\fffd\\fffd_I\\fffd\\fffd\u0014\\fffd\\fffd\u0007\\fffd\\fffd\\fffd@fs\u0013\\53c\u00015\\fffd\\fffd\\fffd\\fffd_\u0014\\fffd\\fffd\u0014x\u0012\\fffdm\u0012\\fffd f\u0013S-\\fffdyc*\\c3\\fffd+\\'\\fffd\\fffd\\fffd\\fffd\u001B\\fffdNL\\fffd\\\\-c4\\fffd b+\\fffd\\6a0>7\\fffd\\490\\fffd,\\fffd\u0012MQ!\\fffd\\fffd,\\fffd\\fffd\\fffd\\fffdNY\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdx<\u001A\\fffd \\fffd-\\fffdX\u0015K!\\\\p6\\fffd 5\u0016g\\fffd(@N\u0001\\fffd\\0\\fffd(Z\\fffd\u0019:8w\\fffd\u0005\u001A\\fffd\\fffd-\\fffd\\fffd\\fffd 1\\22epe\u00130\u0010\\fffd/w\\fffd\\fffd\u0006\\fffd\u0006\\fffd\\fffd\u0016u\u001A\\41cQ\\fffd\\fffdtZ\\fffd\\fffd 0\\fffd~n\\fffdUc2\\0 Fkf\u0005\\fffd F\u0013=@\\fffdk\\fffd E5\\fffd\\fffd\u001A\\fffd 0sY\\fffdOL\\fffdp\\fffd$\u0011\\fffd\v*\\6e6\u0012Pd-\\fffd\\fffd\u0011\\fffd Dq\u0017*\\fffd=V\\fffd\\fffd\\218\\fffd 2\\fffdS\\fffd%{\\fffd\u0015\\fffd=\\fffd\\fffd\\fffd%09\\fffd\\fffd\\fffd~\\fffd\\fffd f\\fffd(\\fffd\u0014\\fffd\\fffd\u0019\\39eP\\fffd\\fffd D{E\\333w\\fffd\u0012\\fffd\\fffd\u0018\\fffd\\fffd\\fffdM\\fffdj\u001BL\\fffd 8E\\fffd\\fffd\\fffdqvJ\\fffd\\1d9\\fffd\\fffd\\539\\248\\fffd\u000E\u0015~\\fffd_e+\\fffd\\44c 4\\fffd%\\fffdTC\\fffdl{EO\\fffd\u0017\\fffd\\fffd\\fffd\\fffd\u0006\\fffd 6\\fffd{u0?\\fffd 0B\\6cc\u0016\\fffd 5\u0004%0A\\fffd bE?\\fffd\\fffd\\536 2\\fffdV\\fffdV\u0004%0A\\55c\\'\\fffd;\\fffdX\\276hMv\v\\0\\fffdHc\\fffd\\fffd\u001F~%0A\\fffd\\fffd\b5\\fffd&\\fffd B\\fffd\u0006\\fffd\\fffd\u0006\\fffd&:\u0014\\fffd`\\fffd{\\fffdP\\fffdG\u0011*\\fffd%23^\\fffd\u001B^\\fffdj?\\fffd(1\u0015\\fffd 7E\\fffd*\\fffd E\\fffd\\fffd\\fffdx\\fffd>\u0010\\fffd\\fffd%\\fffd\\322\\fffd d\\fffd\\fffd\\10aW\\fffd)\\fffdQ\\fffd\\fffd`\\fffd 8\\fffd\\fffd \\fffd\\fffd Ep\\fffd_)+\\fffd\b\\fffd\v%\\fffd\u0019\\fffd\u0015\\fffd(\\fffd 3xO\u0018\\fffd\\412\\fffd\\fffdj^\\fffd\"Z\\fffd\\fffd\u001C\\fffd-\\fffd\\fffd\\489\\fffd\u000F\\fffd\u0013\vq\\fffd\\fffdv>\\fffd 2R\\fffdT\\fffd\\fffd\u000E4\\fffd\\fffd\\fffd\u0014\\fffd|\\fffd-\\fffd 0!u\\fffd+T\\fffd@\\fffd\\fffd\\fffd%\\fffd\u0011Qa\\fffd\\fffd\\fffd\\fffdx\u0017\u0011\\292\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdMe\\fffd\\fffdp\u0017\\fffd\u001A\u0005\\fffd-0_\\fffdM\\fffd\\fffd-1 \\fffdYOD\\fffd\\fffd e\u001D\\fffd\\fffd F\\fffd\u0010\\fffd 7\u0017\\fffd\\fffd\\fffd]\\fffd 8\\fffd-\\fffdiw\\fffd\\fffdl\u0004\\fffd 2\\fffd\u0005\\fffd 6\\fffd\u0016\\fffdH\\'\\a456,Y\\fffdu\\fffdj\\fffd\\fffd\\fffd\\fffd 3\\fffdwU\\fffd F\\fffd_L\\fffd\\fffd\\fffd\\fffd&\u0013<fe/y\\fffd\\fffd\\4deQe\\fffd%0A\\fffd\"t\u0006%0A\\fffd\\152~*S\\fffdZ\\fffd\\fffd\\fffd?18-\u001B\\fffdJ&X}\\fffd\\fffd\\fffd`\\fffd e\\fffd 2\u0010\\fffdX\\fffdi/\\fffd(J\\fffd 356\\fffd\\fffd\\fffd\u0014.\u0014\\fffd\u001BOk\\fffd\\fffdV\\fffd\u0016\\fffd\\fffd\\fffd\\fffd F(\\fffd\u0017O\u0013\\fffd\\fffdP\\fffdG\\fffdw(\\fffd\\fffd\\385\\fffd\\fffd\\fffd\\fffdWy\u0002\\fffd\\655\\768 3!\u0003W\\fffd\u0014\\fffd%0D\\fffd\\fffd\u0010h\\fffd 0\\fffd\u0013\\fffd\\fffd\\fffd\\fffdKt\u0017/K\u0010Y%0D6J:aV8\u0003\\fffdh\\fffd\\fffdQ\u0018\\fffd\u0007\\fffd\u001BY\\fffd\\fffdT;\\fffdXa\u0016\\fffdk\\fffdr\\fffdW\\fffd\\fffd\u0004S\\fffd$\\fffd(2f \\fffd\\fffd\u0015f\u0013`/\u001A\b\u0016\\fffdU\\fffd+\\fffd B\\fffdz\u0002O\\fffd d\\fffd\\fffd\\fffd\u0019;\\fffdyM\\fffd\u0010%23\\fffd\\fffdl7$\\fffdx\\fffd(Ri\\fffd\\fffd\\fffd\\fffd\\fffd 4\u0013\\fffd 3$\\fffd e\\689V\u0001\\c=.\\fffd\\fffd \\fffd\u0011-j\\fffd\\fffd\u0004`V\\fffdN*\bV\\fffd\\fffd%0A\\\\u5\\fffd\u0019?g%23\u0001o\\fffd\\109\\fffd\\fffd 7\\fffd\\fffd\\fffd%0DoN\u0001\\fffd\\fffd 9\\fffd\\fffdRTr\\fffd\\fffdl`?\\fffd\\fffd\vRa$h+\\fffd*x.\\fffd\bf\\fffd\u0005\\fffdt\u001A\\fffd\\fffd\\fffd\u0003\u0016\u001E\\fffd:\\fffd\\fffd\\fffd\\fffd&/\\fffdKL\\fffdP\\fffd\u001C/S\\fffdg\\fffd-\\fffdza*\\fffd$\\fffdx\\fffdYB-\\fffd.\u0015\\fffd\\fffdR\\fffd\\fffd\\fffd&\\fffd\\fffdq\\fffd\\fffd\\'\\fffd\\fffdl=\u0014\\fffd\\fffd=&S\u0002]\\fffd\\fffd&GDu\\9c%0A+\\fffd\\fffdH1\\fffdG\\fffd:%0D\\fffdt1\\fffdX\\fffdm\u0019e\\fffdu\\fffd\\fffdp\\fffd\\fffd d\\fffd\\fffd\\fffd\\fffd 9\\fffd\\fffd d\\fffd\\fffd%09\u001B,/X\\fffd%0A\\0\\fffd 4b\\fffdMD\\fffd\\fffd{\\fffdyI\\fffd\u0003P\\fffdn\\fffd\\fffd;\u0015\\fffd\u0013\\fffdV%23\\fffd\\'kh}f\\fffdR\\0\\fffd\\fffd\\fffd\\fffd*UR\\fffd\\fffd F\\fffdI\\fffd\\fffd\\fffd\\fffdnVt\\fffd\\fffd(%\\fffdtYR\v\\fffd dj\\fffdYc}2\\fffdJ\u001AK\\fffd\v>\\fffd\\fffd:;~\\fffd\\fffdM\\fffdw\\fffdM\\fffd(\\fffd]-\\fffdX\\fffdUO\\fffd\\1d0\\fffd\\fffd%\u0002`\\fffd\\fffd\\fffd\\fffd\u001A\\fffd\\fffd\u0018j\u000E!\\fffdi\\fffd\\fffd B*\\fffd\\fffd\\fffd\u0011\\a569\\fffd dC\\fffdYa\\fffd\\fffd_\"\\fffd\\fffdy\\fffd\\fffd\\fffd?\\fffdI\\fffdY\\fffd BV\\fffdylaVX\\fffdl\\fffdw)+\\fffd\v\\fffd%23V\\fffd ;8\\fffd(\\21f\\fffdWk\\fffd\\'\\fffd\\fffd\\fffd\\fffd&\\fffd\\fffd+Y\\fffd\\fffd\\fffd\\fffd`F\\fffd\\fffd 3\"\\fffdhFl\u0013\\3ebM&\u0017\\30e!\\fffd\\fffdg\\fffd&@\\fffd\\fffd\\fffd fT\\fffds\u0004X+%09\\fffd 3\\fffdK\\fffdN\\fffd\\fffd|Mh\\fffd\\fffd\\fffd 7\\c\\fffdhq\\fffd\\fffdx\\fffd\\fffd\u0017uE\\fffd\\fffdO\\fffdz\\fffd\\fffd \\c\\426&a&\\fffd%0D\\fffd\\fffdr0\\fffd\\fffd%23T\\fffd%0A\\fffd\\35fi)5\\fffd\\fffd\\fffdk\\fffd\\fffd\\fffd\\fffdN\\fffd%0D\\fffd\\fffd\\fffd\\fffd\\fffd\u0005M\\fffd\\fffd\\fffd\u0004\u0005^^\\fffd 2=\\fffd\\5a2\\fffdMO2\\116%09v1\\fffdT\\fffd a\\fffdzE\\fffdO(\\fffdo\\fffd b\\fffd`\\fffdtX+\b\\fffd\u0006s\\fffdTdkB\\fffd 7\\fffdX\\fffd b!\u0002D\\fffd\\'h\\fffd\\fffd\u0011k\\fffd\\fffd f\\65c\\fffd[\\fffdU\\fffd\\fffdlE\\fffd&f\\fffd dV\\fffd\u0005\\fffd%09\\fffd\\fffd\\fffd EQw\\fffdO\\fffd\\fffd\u0007\\3be)-\u00164\u0014Z4\\3cf\\fffdZq\\fffdi\\fffdZxT\\fffd\u0004vI\\fffdy\\fffd>40>\\fffd\\727\\fffd\\fffd\\fffd\\fffd\"U\\fffd\"\\fffdI\\fffdi\u0013+\\fffd D\\'>\\fffd\\fffd\\fffd\\fffdz[\\fffd 6\\'\\0\\fffd\\fffdW:(\\fffd 4\\fffd DHh\\fffd e\\fffdh\u0012\\fffd\u0018\u0014HmM\\fffd\\fffd 1\\6d8\"\u000F\u0013eO\\fffd\u001E\\fffd\\fffd 7a\\fffd\\fffdI\\fffdZ\\fffdX\\fffd\\fffd\u000Ez\\6e3\\fffd\\fffd 6Y\\fffd-j9\\fffd\\fffdX\\fffd(\\fffdK,\\fffdi\\fffdtq\u0006P\\fffd\u0019\\fffd\\fffd\\fffd 7\\fffd\u000F\\fffd 2U\u0012\\fffd f\\9eu\\fffd\\fffd\\fffdR\\fffd\u0011\\fffd Aj)\\fffd\\\\\\fffd%0D\u0004\\fffd\\fffd\u0006\u0017\\fffd\u000EU\\fffd\\fffd\u0017W\\fffd\\fffd\\fffd\\fffd\\13c\\fffd 6\\fffd e\\fffd\u001C\\fffd BJ\\fffd 4)V\\fffd\\fffd 6\\fffdt2\\fffd\\c b*z\\fffd^t\\fffd\\382\\fffdwJ\\fffd\\fffd\\fffd\\fffd A\\fffd=\\fffd\\fffd\\fffdv\\fffd e-\\fffdWg\\fffd>OfXK\\fffd\\fffdNT\\fffd 9a\\fffd\\fffd\v=\\fffd>\\fffd 4+)LPZ\\fffd\u001D\\fffd\u0006/YetQr\\fffdh\\76ca^\\c\\fffd\\fffdw\\fffd\\fffd\\fffd\\fffd\\fffdWT\\fffd\\fffd\\cX3A\\fffd\u0005\u001D\\fffd f\\fffd(\\fffd 6\\fffd d\\fffd\b9k:Z=&Z\u000Fbe\\fffd\\42b\u0019cbI\\fffd\\fffdSY\u0003\\fffd\\fffdR\\fffd\u0018$d\\fffd*\\fffd<e\\fffd\b&Q\\fffdi\\285\\fffdm\\fffd\\fffd\\fffd\\cQ\\fffdw\\fffd\\74dcN,-\\fffdq\u000F\\fffdW\\fffdz\u0016\\fffdQ\\1e2\u0015\\fffdZ\u001B\\fffd\u0013z\u0006*g\u001D\\fffd,d\u0012&%0A\\fffd\u0004\\0\\fffd 9\u0011\\fffd|\u0002\\fffd\u0016h\\fffd\\2f9`-\\fffd\\fffdU;2\\fffd\u000F\\fffd\\fffd\\fffd\\fffd\\fffd%0D\u0001\\fffd\\fffd\\fffd\u0012\\fffd\\fffd\\fffdkfk7$\v\\fffd\\fffd\b\u0010m3\\fffd fW\\fffd\\fffd dD\\c5\\26f\\fffd\\fffd\\fffd,]\\fffd F\\fffdL%0ADS\\fffdx\\fffdR\\fffd.\\fffd\\fffd\\fffd@\\fffd^G;\\cg\\fffd\\fffd\\fffdJ\\fffd\\fffdZ\\fffd\\fffd\\fffd 5\\fffd\\fffd\\fffd_\u0011(%09\\fffd\\fffd 8O\\443h\\fffd\u0005p\u001C\\fffd_\\424\\fffdl!\\fffd\\fffd c\\fffd{D\\3e2YvO\\fffdSv&tXD\\fffd\u0017%0A%\\fffd)Sm\\fffd\\fffd\u0012E\\fffd\\fffd %23T\u0012m2ao\\fffdty\u0005J^\\fffd E\\fffd\\fffd\\fffd\\fffd,\\0p\\fffd\\fffd[d\\'\\fffd\\fffd\\fffd B\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdG<\\fffd\\fffd\\fffd\\fffdyc*\u0004\\fffd\\fffd\u0002\\fffd 5.&\\fffd\\fffd\\fffd\\fffd*\\fffd\\fa\\fffd.\\fffdN\\fffd\\fffd\\fffdMp\\fffd\\fffd\\fffd\\6b39X\\31fR\\fffdly\\fffd\u0010dA\\fffd\\fffd|\\fffd%0D\\fffd\\fffd 2\\fffd\\fffd\\fffd\\fffd\\fffdw|\\fffd\\fffd\\fffd\\fffd\\878f!\u0015\\fffd\\fffdV@i\u0011%0DV\\59cwFz\\0\\fffdt%\\fffd@\u0003\\fffd 3\\fffd\\fffdl.\u0003\\fffd\\fffd\\fffd}\u0018E\\fffd d\\fffd\\fffd\\fffd,\\fffdyT%0Aj\\fffd\\a612 D\\fffd_\\fffd\\fffd\\fffdX\\fffd\\fffdzQ\\fffd\\fffd%%0A\\fffd\\1be\\fffdX%0D\\fffd%0Ae\\fffd\\fffd\\fffd]\\fffd d\\fffd\bh2\\fffd E\\fffd\\fffd\\fffdL\\fffdpE?\\fffd>\\fffdy\\fffd\\fffd\\468S\\fffd\\fffd\\fffd\\fffd\\fffd EM\\fffd\\fffd}Z\\fffd\\fffd e\\1dd\\fffd d\\fffd\u0006\\fffdz\\fffdPq\\fffd\\fffdH_5\\fffd\\fffd\\fffdj\u0011\\fffdH\\fffd!\\cg\\fffd\\fffd\\fffd\u001F\u001E\\fffd\\fffd%23Q*{\\fffdYD\\fffd\\fffd\\1f7\\fffdMo(`\\fffd\\fffd{\u0012\u001D/\\fffdy\\fffd\\fffd\u000F\\fffd@\\fffd:\\fffd.\\fffd\\268\\fffd d1\u0013\u001E\\fffdJ\\fffdt\\fffd}\\fffdq\u001F\\7e1\u0007N\\fffd\u001A\u0015\u0016\u001A\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd,\u001B-\\fffd\\fffd\v71W\\fffd\v\\fffd\\fffd\\fffd\\fffdO\\fffd\\fffd<\\fffd\\acd3I!a\\fffd\u0017gn\\fffd?\\'\\fffd\\fffd\\fb58i\\fffdp|\u0004\\236\\fffd C\\fffd,\u0004\u0015\\fffd 6\\fffd\\fffd&\\fffdk\\fffd\\fffdU\\fffd\u0019J\\0\u0014\\46c|/\u001D53(\\fffd%0A-\\fffd\\fffd\u000EG\\fffd\u0002\\fffd\\66c\\fffd\\fffd\\fffd$_\\fffd^\\fffd\\fffd.Sn{E\\fffdMZ\\fffd\\\\]P\\fffd B\b\\fffdG\\fffdZ\u0006\\fffd\\fffdJ\\fffd\\fffd\\fffd\\fffdV\u0013\\fffd eBPg\\fffd d%09(\\fffd+\\fffdQ\\fffd\\0\\fffd\\fffd\\fffd\\fffd\\6cc\\fffd\\fffd\\fffd\\fffd D\\fffd\u0014Db\\fffd\\5d4\u000F\\fffd?\\fffd\\fffd!\u0012-\\fffd\\fffd e SQ\\fffd\\fffd\u0013\\fffd 7ZcE\\fffd\\fffd Bs\u0013\\fffd 55Hg\\'M%%09\u00010\\fffd\\fffd\\fffd\\fffd\\fffd-GQ\\fffd)}\u0017e\\12a\\fffd\u001F@\\fffd\\eb68 2[i;\\fffd\\fffd\\fffd\\fffd!\\fffd@\\fffd\\fffd\\'\\fffd \\fffdVDP9he*\\fffd\\0k\\fffdV(YdjI\\fffdX\u001Ep\vn\\fffd\u001Bd\\fffd/\\fffd\\fffd\\fffd\\fffd\\fffd+m\\fffd\\\\$\\fffdy\\fffd\\fffd-\"\\fffd\\fffd@EdR\\fffd\\fffd\u0002g]\\fffd}\\fffd%0AS\\fffd 8\\fffdG\u0019\\764\u0003.\\fffd\\fffd\\fffd\\fffdW\\0\\fffd\\fffd:\\4cb ae\\fffd\\fffd\\fffdm\\fffd\u0013?\\fffd\\fffd%0A\\fffd\u0011eV\\fffd\\7e3 D\\fffd 4\\fffd\u001CXI\u0004\\280\\fffd\\fffd\u0007\\fffd\\fffd\\fffd\\fffd 0/\\fffd\\fffd\\fffd\\fffdPFyr\\fffd\\fffd\\fffd\\445\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd_h\\fffd\\fffd\u0014Syy\\fffd\\fffd\\fffd\\fffd\u000EtX\u0014\\fffd\\4c2w\\fffd\u0016\\67e!eV\\fffd\\fffdJ\\255\\fffd\\fffd\\fffdJ\\fffd E\\'\\fffd\\fffd.\\fffd\\fffd\u0015\\fffdk*\\fffd\\fffd 2\\fffd 7j\\fffd.\\fffd\u001B\\fffd(\\fffd\\fffd\\fffd\\fffd E\\fffd@\\fffd\\fffd\\fffd\u001Eg|\"+\\fffd\\fffd a\\fffd%0Ag6\\fffd D?\\fffd\\fffdW\\fffd 6\\16c-\\fffd@\\135e\"A\\fffd\\0\\fffd%\\fffd\u0014\\fffd 0ZK\\fffd\\fffdW\\fffd\u001Fdt2\u0013D\\'\"\\fffd\\fffd\\fffd.\\fffdl`\\fffd\\fffd\\fffd\v\\fffd+\\fffd\\fffdl-\\fffdJ\\fffd\\fffdo\\fffd\\fffdW,\\fffd\\fffd+\\fffdlE\\fffdM\\fffdHQ\\fffd\\fffdU5\u0013\\fffd\\fffd\\'\\fffd\u001D\\fffd%0A\\fffdt\\fffd^\\fffd\u0001%0A{\\fffd\\32c e\u001A+\\fffd\v2Z\\c 4\\fffd\\fffd\\fffd_\u001A\\fffd&F\\fffd\\fffd\u0004\\fffd 4\\fffd\\fffd^\\fffd\\fffd\\fffd\\fffd+\u0013HdG\\fffd\\fffd^\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd&\\\\w|\\fffd 6\\fffd;\\fffdu=\\fffd 5\\fffd\\fffd\\fffd\\fffd\u0013=\\fffdJ\\fffd\\fffd\\fffd\\fffdz\\fffd\\fffd\\fffd\\fffd\\fffd\u0013\\fffd\\fffd E\\fffd\\fffd`\u0014\\fffd\\319\\fffd\\fffd>\\fffd F\\fffdr\u0017\u001A\\fffd\\fffd\\fffd\"\\fffd\\fffd\\fffdl%0A\u0010\\fffd\\fffd\\fffd%23\\fffd\\fffd DGU\\8c2a\\fffdT\b.\\fffd%\\fffd\\fffd\\2ba]\u001E\\fffdM\\fffdh\\fffd\u0002\\fffd,J{\\fffd\\fffd 0K\u0011QM}{!\\fffd:\\fffd\\192\\fffdW\\fffd_\\fffd\\fffdP\u001DHe\u0001L\\fffd\\fffdp\\fffdM\\fffd\u0005Q\\fffd\\fffd\u0003\\fffdU\\fffdZ:\\fffd 8g\\fffd|a\\fffd\\fffd\\fffd\\fffd-\\fffd\u000E\\fffd\\fffd)3\\fffd+\u0017\\fffd\\fffd\\fffd\\fffd\\4f6 f\\fffd\\fffdV\\fffd\\fffd\\fffd\\fffd\u0016\\fffd[\\fffd\\fffd\\fffd.\\fffd,\u001A\\fffd\\fffd\\fffd\\fffdMZ\u000ETA\\fffdT\\fffd-/\\fffd db\u0002o\\fffdj\\744\u001F\\fffdq\\fffd\\fffd aAy2c\\c\\fffd\\fffdM\\cR\\fffd D\\fffdl2E\\4a4\\fffd\u0001\\fffd\\fffdi\\fffd\u0005}f\u0005\\fffd\\fffd\\fffd)j\\723\\fffd\u0017\u0003\\fffd\\fffd\\fffd\\fffd\\fffd\u0007\\fffd 1\\fffd\\fffd+~^\\fffd\u001AK\\fffd,\\fffdt)\\fffdR`\\fffd 8\u001F\\fffd\\fffd\\fffd~<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd)5\u0005.\\fffd E\\fffd 9\\fffd\\0\\fffd\\fffd\\fffd\\fffdx%0D=\\fffdY\\fffd\\fffd\\fffd\\fffdP\\fffd\u0013\\fffd b|\\fffd\\fffdW(\\fffd{\\420\\fffdN\\'+b\u0016\\fffd\\fffdm\\fffd\\fffd au\\5b1P\\fffd_\\fffdW{`\\fffd)\\fffd%09\\fffdW5\\fffd\\fffd F\\fffdY\\fffd\\fffd$\\fffd_)\\fffd\\fffd\\fffd=3oy\\fffd\u0006\u0011\\fffd||\\fffd 9\\fffd\\fffdt2\\fffd\u001D\\fffd\\fffd\\fffd\\fffd\"`XD\\fffd\u0005\\fffdKg\\fffdT%23\\4a4\\fffd d\\fffd$[a2oa\\fffd\u0010\\fffd\u001E\\fffd@\\fffdzQD4i3\u001A\\c\\fffdU\\fffd\\fffd\u0016\\fffd e\u0005\\fffd 3\\fffd\u001F\\fffd\\0\\fffd 6\\fffd\\1f3\\fffd eB\\7ae\\fffd<X\u0005t\\fffd\\fffd&4e%:[\\fffd\\fffd C\\\\\b\\fffd>%0A*\u000F!H\u0016\\fffd\u0014\u0001\\fffd}\\fffd e1\u0015\\fffd 1\u0011\\fffd\\fffd|\\fffd\u0018L\\fffd\\fffd\" -(\\fffd_\\fffdu\\fffd\\fffd\\fffd\\fffd dK\\fffd\u0017\\fffd%\\fffd/Pn\\fffd\\fffd\\fffd\\fffd 8\\fffd-Qq\\fffd\\fffdT8\u0003I\u0001\\fffd/\u0001Ae\\fffd\\fffd\\fffd\\fffd\"M\\fffd&\\fffd&\\fffd/\\fffdG\\fffd 3\\fffd:\u001EV\\fffd\\c\\fffdO\\fffd\\fffd\\fffd\\fffd%23\u001Cu\v2\\fffd(ri*L\\fffd\\fffdY\\fffd\\fffd\\fffd\\fffd\\fffd}\\fffd\\fffd\\3d9 b\u0005\u0014+`+g\\fffd\u0005\\fffdM\\fffd\\fffd\\fffd\\fffd-\u0003\\fffd\v2\\fffdX\\fffd\\fffd\\fffd\\750%0D\\fffd\\fffdQk&\\fffd+Wz\\fffd\\fffd\\fffd+\\63dxR\\571\\fffdz\u0012\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u0019\\fffdXV\\fffd*\u001E\\fffd|a\\fffdPx\\fffdSa\\fffd E\\fffdY\\fffd\\fffd 3Z\\fffdP\\fffd\v\\0\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdg\\fffd \\fffd%0D\\fffdK_\u0019\\fffd%F\\fffdhW\\0\\fffd\u0017\u0005|J\\fffd\\fffd\\fffd\\fffd\u0014\\fffd%23\\fffd}e@\\fffd\\fffd\\fffd%0A\\fffd_\u0001\\fffd\\fffd\\fffd\\fffd\\fffd f\\fffd\u0012\\fffd\\fffd\\fffdxi\\fffd\\fffdu\\fffd&\u001A+\\fffd\u0017\\fffduC\\fffd\u0006V\\fffdOG\u0013)8\\fffdJ\\fffd\\fffd\\fffd\\fffd\\fffd 8\\fffd\u0018\u0011\\fffd\\fffdU\\fffdM\\fffd\u0015\\fffd>\\fffd=%090\\fffd\\fffd fc \\fffd\\fffd<\\fffd\\0\\fffd,\\fffdi`\u0015\\b3\\fffd\\fffd f\\fffd\u0015\\fffd\u0017\\fffd\\fffdT\\fffdZ\u0015xU\\fffd\\\\8QK\\'t!\\fffdJ\\fffd\u0016D\\fffdH\\\\\\fffd\\fffd\\fffd.+)\\fffd\\fffd\\fffd\\fffd\u0011l\u0005@\u0015\\fffd\\\\\\fffd\\fffd\b\"\\fffd\u0001b\\fffd dW\\681^\\fffd\\fffd\\7b8H8\u001A\\fffd\\fffd\\fffd\\fffdQh!B\\569p\u0006\u0018\u0013S\\fffd\u0016\u0007\\fffdV\"Bpu\\fffd\u0006/\\fffd\\fffdV(\\fffd\\fffd}\\fffd\u0017`%09\\fffd\u0013\\fffd\\fffd\\fffd\\fffd\\fffd 2$\\fffd\\fffd\u0019\\0 c*\\\\LC3:{gP\\fffdN\\0iJ\\fffd\\fffd\u0002\\fffd\u0015\\fffd\\fffd\\fffd@\\fffd]\u0004t\\fffdZ\\fffd@\\fffd\\fffd\u0005\\fffd\\fffd\u0013T z\\fffd\\fffd\\fffd\u0014\\\\\\fffd\\fffd 5=\\fffd\u0014\\fffdR\\fffd\\fffd{\\fffd\\fffd!\\fffd|\\fffd\\fffdIy%b\\fffdV\\fffd\\fffd=\\fffd\u0012\\563\\fffd\\fffd)\\fffd\\fffd\\fffd\\fffd;Sd\u00149\\fffd\\b4\\fffd\\fffdUp-\\fffd\\fffd\\fffdg%0D\\fffd*\\fffd^y>\u0001\\fffdg_\\fffd/]\\fffdo\\fffd]K\\fffd\\fffd\u001CX\u0005\\fffdK\\fffd\u0006McU\\fffd\\fffdQW\\fffd\\fffd{f\u0003\\fffd\\fffd\\fffd\"\\fffd(L\\fffd\\fffd|\\fffd\u000E\\fffd\\fffdlN\\fffdhsq\\2f6 7\u0001:\\fffdX\\fffd.x\\fffd\\fffd\u0011\\fffd %0A\\fffd\\fffdk\\fffdw\\fffd f\\fffdM2\\fffd}h\\fffd\\fffdlQ\\fffd\\ce6dR\\fffd*(\u0017\\fffdz\\fffd\\'w\\fffd 0K\\fffd<\\fffd 2\\fffd b\\fffd\\fffd\\fffdU>Wz\\fffd\\fffd\\fffdPUw\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\\fffd\\fffdM\\464\\fffd\\fffd*W[\\fffd*MN\\fffd\\fffd\\fffdW\\fffdX*\\fffd\u0005\u0017\\fffd\\fffd\u0002\\fffd\\fffd\\fffd\\568\\fffd\\fffdS\u001E\\fffdJ\\fffd:-n\\fffd\\526\\fffd\\fffdT}M|\\fffdW\\fffdSy%0D\\fffd\\fffd%j\u0004\\fffdM\u0017\u001C\\fffd\\fffd\\fffd\\0 D\u0019p\\fffd\\fffd\\fffdt|*\u0017\\20b6\u001A\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\\\\u0001\\fffd\\fffdh\\fffd\\fffd,\\c\\fffd\\fffd\\fffdT8\u0001\\fffd\\fffd)\\fffd@+\\fffd\\fffd/_4+\\0\\fffd\\\\\\fffd\u0005\\0\\fffd b7\\fffdi\\fffdZ8\\fffd\\fffd\\'=;q\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffdYuP\v\u0005\\fffd\\fffd\\fffdjuLVAN\\fffd^5\\fffd\\fffd<V\\1ab\\37c\u0018\\fffd\\488\\fffd%0A\\fffd\u0015\\fffdQ&g\\fffd 0 \\fffd\\0Z~\\fffd\\fffd\vT\by_\\fffd\\fffd\\fffd\\fffd\\fffd\u0010\\fffd<\\fffd\\fffdW*\\fffd]\\fffd%23eV\\fffd\\fffdm\\fffd\\fffd\u0019\\fffdvq\\5f3m\\fffd 6c\\fffd]|\\fffd a\u0001\\fffd\\fffd\\fffd\\fffd\\fffdm\\fffd\\fffd\\'\\fffdx\\fffd|\\fffd 9\\fffd\\fffd\\fffd$RD\\fffd d\\fffdM\\fffd D\\fffd e\\fffd+\\fffd\\fffd\\fffdO\"Pd%09\\fffd\u001AVe\\fffd\\\\\\fffdq\u0012\\fffd\\fffd\\fffd\\fffd\\fffdjoQ\\fffdSI\\fffd\\fffd\\fffdO\\656xN+\u0011\\fffd\u001C\\fffd\\fffd\\fffd fQ\\fffdN\\fffdU\\fffd\u0005`(\\fffd\\fffd\\fffdzw\\fffd*W\\fffd 96\\fffd\\fffd.^h\\fffd c\\fffd\\fffd\\fffdL\\fffd 5\u0019\\fffd\\fffd\\fffd 7\u0006\\fffd]0\\fffd\u000E\\fffdR\u000Fz\\fffd\\fffd\\\\\\fffd\\fffd\\fffd d:\\fffd%0A\\fffd\\3f8\u0010\u0017.\\fffdx2\\fffd\\fffd\\0\\fffd\\fffdU\\fffdg\u0002\\a5}^\\0k+\u0002z\\fffd\\fffd\"wj\\fffdV\\'F,\\0\\fffd%0A\u0017\\fffd\\fffd>\\fffd\\fffd]\\fffd?\v\u0014\\fffd\\fffdU9a\\fffdh\\fffd)\u0003\\fffdx\\fffd\\fffd\\fffd\\fffd\\2f1%0A\\fffd\\fffd\u0002`\\fffdL-j\\fffd\\fffdX\u0019\\fffdO\u001B\\fffd*\u001D\\fffdy\\fffdV.\\b7\\fffdj\u0005\\fffd+\u0011\\fffd\\771\\fffd\\fffd\\fffd\\fffd\u0005\\fffd\\fffd\\fffd+\\fffd\\fffd\\fffd\\fffd\\c\\fffd%0A@\\fffdyO\v,\\fffd\\fffd\\5ac\\fffdo\\fffdX\u0001Fh{\\fffdx\u0001\\fffd\\fffd%0A\\fffd\u0001\\fffd+\\'\\fffdj\\fffd\u0017\\fffd\\fffdW\\fffd\\217\\fffd\\fffdj\\fffd\\fffd\\fffd\\fffd\u0019\u0017\\4bb\\fffdl\u0001\\fffd 9\u0015~\u0012\\fffdV\\fffd\\fffd\\fffd\u001D\\fffd\\fffd\u001C\\fffd 7\\fffd\\fffdgH\\fffd\\fffd\\fffd\\1548\\fffdI\\470\u000E,Z\\fffd\\fffd\\fffd\\fffdW\u0006Z\\fffd\\fffdr\\fffd@\\fffd\\fffd\\fffd>\\fffd\\fffd\\fffd\\141m+\\fffd\\fffd d|>=\\fffd\\fffd\u0004@z\\fffdsg\\fffdj_\\fffd%0D\\fffdW\\fffd+I\\fffd\\fffd\\fffd\\fffd\\fffdW\\fffd 1\\fffd\\fffd\\fffd\\fffd\\fffdl3\u0015?\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u001B\u0006\\fffd\\fffd\\fffd\u0003HW\\fffd\\fffdK\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd~>\\fffd\\fffd_\\fffdo\\0\\fffdx=)\\fffd\\fffd{z\\0\\0\\0\\0IEND\\fffd B`\\fffd') no-repeat left top}.p-colorpicker-panel .p-colorpicker-hue{background:transparent url(\"data:image/png,\\fffdPNG%0D%0A\u001A%0A\\0\\0\\0%0DIHDR\\0\\0\\0\u0011\\0\\0\\0\\fffd\b\u0002\\0\\0\\0\\fffd\\fffd\\fffd\\fffd\\0\\0\\0\\fffdIDATX\\fffd\\fffdQ%0A\\fffd@\\c D\\fffd\\456\\fffd\\fffdz\u0005\\fffd%?<D\\fffd\u0015EK\\fffd\\fffdIA\\fffd\u0012\\fffd\\fffd!y\\fffd\\fffd$,\\fffd~\\fffd_\\fffd\\fffd\\fffd\\fffd\\fffdr\\fffdoE\\fffdI \\fffd 2z\\fffd\\fffd\btb\\fffd\\fffd 9\\fffd%Nmg\u0010<\\fffd c\\fffd\\d0c7*\u0016@\\fffd\\253\u0001U\\\\\\fffd \\fffd 1\\fffd\\a4f\\fffd\\fffd\u000E\\fffd\u0004\\fffd{\\fffd\\fffd\\fffd*\\fffd-\u001E\\fffd\\fffd 5\\fffd\\fffd\u0005\\fffd'x\\fffd\\fffd\\109\\fffd\u0006O\u0002q?TQ_\u000F2\\fffd\u0016_\b\\fffd[\\fffd 1\\fffdU<W\\fffd Am<\\fffdk\u001A<\\fffd\\7dc\\fffd)\\fffd C\u0015\\fffd\\62e\u0013@\\fffd]\\fffd<\\fffd(\u0001\\fffd\\fffd\u0015<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdr\\7da%0D\\fffd\\fffd\\fffdk\\fffdG\\fffd\\c\\fffd 4\\fffd\\fffdx\\fffd\\fffd A\\fffd+\\fffd\\fffd\\fffd DM\u001D\\fffd\\fffd\\fffdS\\fffd 6+*{\\fffd\u0005\\fffd FbV0\\fffd\u001C%\\0\\0\\0\\0IEND\\fffd B`\\fffd\") no-repeat left top}@layer primeng{.p-inputtext{margin:0}.p-fluid .p-inputtext{width:100%}.p-inputgroup{display:flex;align-items:stretch;width:100%}.p-inputgroup-addon{display:flex;align-items:center;justify-content:center}.p-inputgroup .p-float-label{display:flex;align-items:stretch;width:100%}.p-inputgroup .p-inputtext,.p-fluid .p-inputgroup .p-inputtext,.p-inputgroup .p-inputwrapper,.p-inputgroup .p-inputwrapper>.p-component{flex:1 1 auto;width:1%}.p-float-label{display:block;position:relative}.p-float-label label{position:absolute;pointer-events:none;top:50%;margin-top:-.5rem;transition-property:all;transition-timing-function:ease;line-height:1}.p-float-label textarea~label{top:1rem}.p-float-label input:focus~label,.p-float-label input.p-filled~label,.p-float-label textarea:focus~label,.p-float-label textarea.p-filled~label,.p-float-label .p-inputwrapper-focus~label,.p-float-label .p-inputwrapper-filled~label{top:-.75rem;font-size:12px}.p-float-label .input:-webkit-autofill~label{top:-20px;font-size:12px}.p-float-label .p-placeholder,.p-float-label input::placeholder,.p-float-label .p-inputtext::placeholder{opacity:0;transition-property:all;transition-timing-function:ease}.p-float-label .p-focus .p-placeholder,.p-float-label input:focus::placeholder,.p-float-label .p-inputtext:focus::placeholder{opacity:1;transition-property:all;transition-timing-function:ease}.p-input-icon-left,.p-input-icon-right{position:relative;display:inline-block}.p-input-icon-left>i,.p-input-icon-left>.p-icon-wrapper,.p-input-icon-right>i,.p-input-icon-right>.p-icon-wrapper{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-input-icon-left,.p-fluid .p-input-icon-right{display:block;width:100%}}@layer primeng{.p-inputtextarea-resizable{overflow:hidden;resize:none}.p-fluid .p-inputtextarea{width:100%}}@layer primeng{.p-password{position:relative;display:inline-flex}.p-password-panel{position:absolute;top:0;left:0}.p-password .p-password-panel{min-width:100%}.p-password-meter{height:10px}.p-password-strength{height:100%;width:0;transition:width 1s ease-in-out}.p-fluid .p-password{display:flex}.p-password-input::-ms-reveal,.p-password-input::-ms-clear{display:none}.p-password-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-password .p-icon{cursor:pointer}.p-password-clearable.p-password-mask .p-password-clear-icon{margin-top:unset}.p-password-clearable{position:relative}}@layer primeng{.p-radiobutton{display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:bottom;position:relative}.p-radiobutton-box{display:flex;justify-content:center;align-items:center}.p-radiobutton-icon{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0) scale(.1);border-radius:50%;visibility:hidden}.p-radiobutton-box.p-highlight .p-radiobutton-icon{transform:translateZ(0) scale(1);visibility:visible}p-radiobutton{display:inline-flex;vertical-align:bottom;align-items:center}.p-radiobutton-label{line-height:1}}@layer primeng{.p-ripple{overflow:hidden;position:relative}.p-ink{display:block;position:absolute;background:#ffffff80;border-radius:100%;transform:scale(0)}.p-ink-active{animation:ripple .4s linear}.p-ripple-disabled .p-ink{display:none!important}}@keyframes ripple{to{opacity:0;transform:scale(2.5)}}@layer primeng{.p-tooltip{position:absolute;display:none;padding:.25em .5rem;max-width:12.5rem;pointer-events:none}.p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-left{padding:0 .25rem}.p-tooltip.p-tooltip-top,.p-tooltip.p-tooltip-bottom{padding:.25em 0}.p-tooltip .p-tooltip-text{white-space:pre-line;word-break:break-word}.p-tooltip-arrow{scale:2;position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.p-tooltip-right .p-tooltip-arrow{top:50%;left:0;margin-top:-.25rem;border-width:.25em .25em .25em 0}.p-tooltip-left .p-tooltip-arrow{top:50%;right:0;margin-top:-.25rem;border-width:.25em 0 .25em .25rem}.p-tooltip.p-tooltip-top{padding:.25em 0}.p-tooltip-top .p-tooltip-arrow{bottom:0;left:50%;margin-left:-.25rem;border-width:.25em .25em 0}.p-tooltip-bottom .p-tooltip-arrow{top:0;left:50%;margin-left:-.25rem;border-width:0 .25em .25rem}}.customDialogClass .p-dialog{height:auto}.customDialogClass .p-dialog-header{padding:.8rem .55rem!important;background-color:#fff!important}.customDialogClass .p-dialog-header-close-icon{color:#000!important}.customDialogClass .p-dialog-content{border-top-left-radius:0%;padding:0}.p-dialog .p-dialog-header{background-color:#fff!important;border-bottom:2px solid #e5e7eb;padding:12px 16px;font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:space-between}.p-dialog-mask{background:#00000080!important}.p-dialog .p-dialog-content{background-color:#fff;padding:16px}.p-dialog .p-dialog-footer{background-color:#f3f4f6;padding:12px 16px;border-top:2px solid #e5e7eb}.p-dialog .p-dialog-content::-webkit-scrollbar{width:8px}.p-dialog .p-dialog-content::-webkit-scrollbar-track{background-color:#f1f1f1}.p-dialog .p-dialog-content::-webkit-scrollbar-thumb{background-color:#faa762;border-radius:10px}.p-dialog .p-dialog-content::-webkit-scrollbar-thumb:hover{background-color:#faa762}.custom-save-button{background-color:#faa762!important;color:#fff!important;border:1px solid #FAA762!important}.custom-save-button:hover{background-color:#e59550!important;border-color:#e59550!important}.form__input{width:100%;padding:8px;border:1px solid #ccc;border-radius:5px}label{font-size:14px;font-weight:600;margin-bottom:5px}.button-group{display:flex;justify-content:flex-end;gap:10px;padding-top:1rem}button{padding:8px 12px;border:none;border-radius:5px;cursor:pointer}.cancel{background:#ccc;color:#000}.save{background:#007bff;color:#fff}button:hover{opacity:.8}.card-width{width:295px!important;flex-shrink:0}.justify-end{justify-content:end}.card-height{max-height:300px;overflow:scroll}.option-card{border:1px solid grey;padding:26px;border-radius:10px}\n"] }]
240
+ args: [{ selector: 'fx-configuration-panel', standalone: true, imports: [CommonModule, ReactiveFormsModule, ButtonModule, DialogModule, InputTextModule, FormsModule, DropdownModule, ButtonModule], template: "<p-dialog header=\"Edit Configurations\" [modal]=\"true\" [draggable]=\"false\" [(visible)]=\"visible\" [style]=\"{width: '70rem'}\" class=\"customDialogClass\" (onHide)=\"closeDialog()\">\r\n <!-- <ng-template pTemplate=\"header\">\r\n <div class=\"flex p-2 bg-white border-2\">\r\n <p class=\"text-base\">Edit Configurations</p>\r\n </div>\r\n </ng-template> -->\r\n <div class=\"flex flex-col gap-4 bg-white p-2 border-2 border-gray-200\">\r\n <div class=\"flex items-center gap-4 mb-8 w-full\">\r\n <div class=\"w-1/3\">\r\n <label for=\"rows\" class=\"font-semibold w-24\">Rows</label>\r\n <input type=\"text\" [disabled]=\"enableAPI\" [(ngModel)]=\"rows\" placeholder=\"rows\" class=\"form__input\" id=\"name\" autocomplete=\"rows\" />\r\n </div>\r\n <div class=\"w-1/3\">\r\n <label for=\"enableAPI\" class=\"font-semibold w-24\">Enable API</label>\r\n <input type=\"checkbox\" [(ngModel)]=\"enableAPI\" placeholder=\"API Url\" id=\"enableAPI\" autocomplete=\"enableAPI\" />\r\n </div>\r\n <div class=\"w-1/3\">\r\n @if (enableAPI) {\r\n <ng-container>\r\n <label for=\"api\" class=\"font-semibold w-24\">API</label>\r\n <input type=\"text\" [(ngModel)]=\"api\" placeholder=\"Enter API Url\" id=\"api\" class=\"form__input\" autocomplete=\"api\" />\r\n </ng-container>\r\n }\r\n </div> \r\n \r\n </div>\r\n <!-- <div class=\"flex items-center gap-4 mb-8\">\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n <div class=\"w-1/2\">\r\n \r\n \r\n </div>\r\n \r\n \r\n </div>\r\n \r\n <div class=\"flex items-center gap-4 mb-8\">\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n <div class=\"w-1/2\">\r\n \r\n </div>\r\n \r\n \r\n </div> -->\r\n \r\n <div class=\"flex flex-wrap gap-4 mb-8\">\r\n \r\n <div class=\"w-full flex items-center justify-between\">\r\n <p class=\"text-sm font-semibold\">Columns:</p>\r\n <!-- <button type=\"button\" (click)=\"addColumn()\" class=\"custom-save-button\">Add Column</button> -->\r\n </div>\r\n \r\n <div class=\"w-full overflow-x-auto\">\r\n <form [formGroup]=\"dynamicForm\" (ngSubmit)=\"onSubmit()\">\r\n <!-- Flex container with nowrap to keep all columns in a single row -->\r\n <div formArrayName=\"columns\" class=\"flex gap-4 flex-nowrap whitespace-nowrap\">\r\n <div *ngFor=\"let column of columns.controls; let i = index\" [formGroupName]=\"i\" \r\n class=\"border p-4 rounded-lg min-w-[20rem] flex-shrink-0 card-width\">\r\n <div class=\"top-2 right-2 flex gap-2 justify-end\">\r\n <button type=\"button\" (click)=\"duplicateColumn(i)\" \r\n class=\"bg-green-500 text-white px-3 py-1 rounded-md hover:bg-green-600\">\r\n \u2795\r\n </button>\r\n <button type=\"button\" (click)=\"removeColumn(i)\" \r\n class=\"text-white px-3 py-1 rounded-md hover:bg-red-600\" *ngIf=\"columns.length>1\">\r\n \u274C\r\n </button>\r\n </div>\r\n <!-- Columns in a Single Row -->\r\n <div class=\"grid grid-cols-1 gap-4 items-center mb-2\">\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Column Name:</label>\r\n <input formControlName=\"header\" placeholder=\"Enter Column Name\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Column Type:</label>\r\n <select formControlName=\"cellType\" class=\"w-full border rounded-md px-3 py-2\">\r\n <option *ngFor=\"let type of columnTypes\" [value]=\"type\">{{ type }}</option>\r\n </select>\r\n </div>\r\n <div class=\"col-span-3\" *ngIf=\"['smart-dropdown', 'dropdown'].includes(column.value.cellType)\">\r\n <label class=\"font-semibold\"> <input type=\"checkbox\" formControlName=\"isMultiselect\" class=\"custom-margin\"/>Multiselect</label>\r\n <!-- <select formControlName=\"isMultiselect\" class=\"w-full border rounded-md px-3 py-2\">\r\n <option value=\"true\">Enable</option>\r\n <option value=\"false\">Disable</option>\r\n </select> -->\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">PlaceHolder:</label>\r\n <input formControlName=\"placeholder\" placeholder=\"Enter Placeholder\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <ng-container *ngIf=\"['checkbox'].includes(column.value.cellType)\">\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">CheckedValue:</label>\r\n <input formControlName=\"checkedValue\" placeholder=\"Enter checkedvalue\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">UnCheckedValue:</label>\r\n <input formControlName=\"unCheckedValue\" placeholder=\"Enter UnCheckedValue\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Checkbox Label:</label>\r\n <input formControlName=\"checkBoxLabel\" placeholder=\"Enter Checkbox Label\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"['input-text','input-number'].includes(column.value.cellType)\">\r\n <div class=\"col-span-3\">\r\n <label for=\"isRequired\" class=\"font-semibold w-24\">\r\n <input type=\"checkbox\" formControlName=\"isRequired\" class=\"custom-margin\"/>Required</label>\r\n </div>\r\n \r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">Error Message:</label>\r\n <input formControlName=\"errorMessage\" placeholder=\"Enter Checkbox Label\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n </ng-container>\r\n \r\n\r\n @if (enableAPI) {\r\n <div class=\"col-span-3\">\r\n <label class=\"font-semibold\">API Value Key:</label>\r\n <input formControlName=\"apiKey\" placeholder=\"Enter Value Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n }\r\n \r\n </div>\r\n <div *ngIf=\"['radio-group', 'dropdown'].includes(column.value.cellType)\" class=\"mt-2\">\r\n \r\n <label class=\"font-semibold\">Options:</label>\r\n <button type=\"button\" (click)=\"addOption(i)\" class=\"custom-save-button justify-end\"> \u271A </button>\r\n\r\n <div formArrayName=\"options\" class=\"card-height\">\r\n <div *ngFor=\"let option of getOptions(i).controls; let j = index\" [formGroupName]=\"j\" \r\n class=\"relative grid grid-cols-1 gap-4 items-center mt-2 option-card\">\r\n \r\n <button type=\"button\" (click)=\"getOptions(i).removeAt(j)\" \r\n class=\"absolute top-0 right-0 bg-transparent text-red-500 hover:text-red-700 \r\n text-xl font-bold p-1 cursor-pointer\">\r\n \u274C\r\n </button>\r\n \r\n <input formControlName=\"optionName\" placeholder=\"Enter Option Name\" \r\n class=\"col-span-4 border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n <input formControlName=\"optionValue\" placeholder=\"Enter Option Value\" \r\n class=\"col-span-4 border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n \r\n </div>\r\n <!-- <button type=\"button\" (click)=\"addOption(i)\" class=\"custom-save-button justify-end\">Add Option</button> -->\r\n </div>\r\n \r\n \r\n <div *ngIf=\"['smart-dropdown'].includes(column.value.cellType)\" class=\"grid grid-cols-1 gap-4 mt-4\">\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">API Url:</label>\r\n <input formControlName=\"apiUrl\" placeholder=\"Enter API URL\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">Value Key:</label>\r\n <input formControlName=\"valueKey\" placeholder=\"Enter Value Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n <div class=\"col-span-4\">\r\n <label class=\"font-semibold\">Label Key:</label>\r\n <input formControlName=\"labelKey\" placeholder=\"Enter Label Key\" \r\n class=\"w-full border rounded-md px-3 py-2 focus:ring focus:ring-blue-200\" />\r\n </div>\r\n </div>\r\n \r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n \r\n \r\n \r\n \r\n </div>\r\n \r\n </div>\r\n\r\n\r\n\r\n <ng-template pTemplate=\"footer\">\r\n <!-- <hr class=\"mt-3 mx-2 mb-0 opacity-10\"> -->\r\n <!-- <div class=\"flex justify-end gap-4 w-full\">\r\n <p-button label=\"Cancel\" severity=\"secondary\" (click)=\"closeDialog()\" />\r\n <p-button styleClass=\"border border-indigo-600\" label=\"Save\" (click)=\"saveConfiguration()\" />\r\n </div> -->\r\n <div class=\"flex justify-center my-3\">\r\n <p-button label=\"Cancel\" severity=\"secondary\" (click)=\"closeDialog()\"\r\n styleClass=\"border-gray-400\" />\r\n <p-button label=\"Attach\" label=\"Save\" (click)=\"saveConfiguration()\" \r\n styleClass=\"cta_buttons text-medium button_text_white secondary-color border-1 stroke_secondary no_hightlight no_hightlight_stroke h-max mr-2 w-6rem custom-save-button\"\r\n />\r\n </div>\r\n </ng-template>\r\n</p-dialog>", styles: [".p-overflow-hidden{overflow:hidden;padding-right:var(--scrollbar-width)}@layer primeng{.p-component,.p-component *{box-sizing:border-box}.p-hidden{display:none}.p-hidden-space{visibility:hidden}.p-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.p-hidden-accessible input,.p-hidden-accessible select{transform:scale(0)}.p-reset{margin:0;padding:0;border:0;outline:0;text-decoration:none;font-size:100%;list-style:none}.p-disabled,.p-disabled *{cursor:default!important;pointer-events:none}.p-component-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.p-unselectable-text{-webkit-user-select:none;user-select:none}.p-scrollbar-measure{width:100px;height:100px;overflow:scroll;position:absolute;top:-9999px}@-webkit-keyframes p-fadein{0%{opacity:0}to{opacity:1}}@keyframes p-fadein{0%{opacity:0}to{opacity:1}}input[type=button],input[type=submit],input[type=reset],input[type=file]::-webkit-file-upload-button,button{border-radius:0}.p-link{text-align:left;background-color:transparent;margin:0;padding:0;border:0;cursor:pointer;-webkit-user-select:none;user-select:none}.p-link:disabled{cursor:default}.p-sr-only{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}.p-connected-overlay{opacity:0;transform:scaleY(.8);transition:transform .12s cubic-bezier(0,0,.2,1),opacity .12s cubic-bezier(0,0,.2,1)}.p-connected-overlay-visible{opacity:1;transform:scaleY(1)}.p-connected-overlay-hidden{opacity:0;transform:scaleY(1);transition:opacity .1s linear}.p-toggleable-content.ng-animating{overflow:hidden}.p-icon-wrapper{display:inline-flex}.p-icon{display:inline-block}.p-icon-spin{-webkit-animation:p-icon-spin 2s infinite linear;animation:p-icon-spin 2s infinite linear}}@-webkit-keyframes p-icon-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes p-icon-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@layer primeng{.p-badge{display:inline-block;border-radius:10px;text-align:center;padding:0 .5rem}.p-overlay-badge{position:relative}.p-overlay-badge .p-badge{position:absolute;top:0;right:0;transform:translate(50%,-50%);transform-origin:100% 0;margin:0}.p-badge-dot{width:.5rem;min-width:.5rem;height:.5rem;border-radius:50%;padding:0}.p-badge-no-gutter{padding:0;border-radius:50%}}@layer primeng{.p-button{margin:0;display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;vertical-align:bottom;text-align:center;overflow:hidden;position:relative}.p-button-label{flex:1 1 auto}.p-button-icon-right{order:1}.p-button:disabled{cursor:default;pointer-events:none}.p-button-icon-only{justify-content:center}.p-button-icon-only:after{content:\"p\";visibility:hidden;clip:rect(0 0 0 0);width:0}.p-button-vertical{flex-direction:column}.p-button-icon-bottom{order:2}.p-button-group .p-button{margin:0}.p-button-group .p-button:focus,.p-button-group p-button:focus .p-button,.p-buttonset .p-button:focus,.p-buttonset p-button:focus .p-button{position:relative;z-index:1}.p-button-group .p-button:not(:last-child),.p-button-group .p-button:not(:last-child):hover,.p-button-group p-button:not(:last-child) .p-button,.p-button-group p-button:not(:last-child) .p-button:hover,.p-buttonset .p-button:not(:last-child),.p-buttonset .p-button:not(:last-child):hover,.p-buttonset p-button:not(:last-child) .p-button,.p-buttonset p-button:not(:last-child) .p-button:hover{border-right:0 none}.p-button-group .p-button:not(:first-of-type):not(:last-of-type),.p-button-group p-button:not(:first-of-type):not(:last-of-type) .p-button,.p-buttonset .p-button:not(:first-of-type):not(:last-of-type),.p-buttonset p-button:not(:first-of-type):not(:last-of-type) .p-button{border-radius:0}.p-button-group .p-button:first-of-type:not(:only-of-type),.p-button-group p-button:first-of-type:not(:only-of-type) .p-button,.p-buttonset .p-button:first-of-type:not(:only-of-type),.p-buttonset p-button:first-of-type:not(:only-of-type) .p-button{border-top-right-radius:0;border-bottom-right-radius:0}.p-button-group .p-button:last-of-type:not(:only-of-type),.p-button-group p-button:last-of-type:not(:only-of-type) .p-button,.p-buttonset .p-button:last-of-type:not(:only-of-type),.p-buttonset p-button:last-of-type:not(:only-of-type) .p-button{border-top-left-radius:0;border-bottom-left-radius:0}p-button[iconpos=right] spinnericon{order:1}}@layer primeng{.p-checkbox{display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:bottom;position:relative}.p-checkbox-disabled{cursor:default!important;pointer-events:none}.p-checkbox-box{display:flex;justify-content:center;align-items:center}p-checkbox{display:inline-flex;vertical-align:bottom;align-items:center}.p-checkbox-label{line-height:1}}.p-colorpicker-panel .p-colorpicker-color{background:transparent url('data:image/png,\\fffdPNG%0D%0A\u001A%0A\\0\\0\\0%0DIHDR\\0\\0\\0\\fffd\\0\\0\\0\\fffd\b\u0006\\0\\0\\0<\u0001q\\fffd\\0\\0\\0%09pHYs\\0\\0\v\u0013\\0\\0\v\u0013\u0001\\0\\fffd\\fffd\u0018\\0\\0\\0 cHRM\\0\\0z-\\0\\0\\fffd\\fffd\\0\\0\\fffd\\fffd\\0\\0\\fffdR\\0\\0qE\\0\\0\\fffd f\\0\\0 9\u0007\\0\\0!\\fffd\u0003\\'\\fffdV\\0\\0\\'\\fffdIDATx\\fffd\\fffd}\\2ce\\fffdH\\fffd\\fffd\u001A\\'\\fffd\\fffd\u001E\\fffdO\\fffd;\\fffd\u000F\\fffd 8\\fffdn\\fffd\\fffd]\\755Y\\fffd\\fffd\u000F\\fffd=\u0014\\fffd%\u0014\\fffd\\fffd\\fffd\\fffdG\\fffd\u0002\\fffd%09 \u0010\\fffdN:\\fffd\\fffd(T\u0011\u0015U36w\\fffd/3\\fffd\\fffd f\\fffd 03\\fffd\\fffd\\fffd\u001B=\\fffd\\fffd\\fffd\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffd~\\fffd 6w/\\fffdW=\\fffdx\\fffd\\fffd 1\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd\\1e2\\fffd\\fffd\\c?\\fffd\\fffd\\fffd\\fffd\\fffdw\u001C\\fffd\\fffdZ\\fffd\\fffd\\77d\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\77f}\\fffd\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd\\fffd cf\\fffdk\u0007\\fffd\\fffdy\u0016O\\fffdl@\" \\fffdN\\533z\\fffd\\fffd\\f203\\fffd\\fffd 1\u0012\\fffd\\fffd\\fffd\\0\u0010\\fffd\u0018\\fffd\\fffd\\fffdyvq\\fffd\\fffd\\fffd\\fffd%09\\fffd\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\\7fad\\fffd\\fffd\\6ce\\fffd\u0006\\fffd\\fffdx<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u001F\u001F\u001F\\fffd\\fffd\\fffdw\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdO?\\fffd_\\fffd\\fffdW\\fffd\\fffd{\\fffdz|\\fffdI\\fffd\\640\\fffds\\fffd^<\\fffd\\fffd/\\\\\\fffdo\\fffd\\fffd\\fffdN?\\fffdo23\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd 9?v<\\fffd\\fffd\\fffd\\fffdo\\fffd\\fffdv\u0010\\fffd\\5cf}v\\fffdl;\\fffd\\fffdk\\fffd|>\\fffd\\fffd|\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\\fffd\\fffdn7\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdO?\\fffd d\\7fe}\\fffd/\\fffd\u000F\\fffd~h\\fffd ffm\\fffd\\1035\\fffdV\\fffd\\fffd\\fffd\\7381%0D\u001E\\fffd\u0006=\\fffd\\fffd\\fffd*\\fffd}\\fffd\\\\<\\fffd\\fffd\\fffdm\u0007>\\fffd\\fffd\u0005\\fffd\u0018\u001C\v\\fffdy\\fffdG\\fffd 7\\0\\fffd F\\0r\\0V\u001B@\\fffd\\fffdt\\fffd\\fffd\\fffd\\fffd\\fffd|Z\\ff4d\\fffd\\fffd\\1e3=\u001E\\fffd\\fffd~\\fffd\\fffd\\fffdv\\cf3cf\\fffd\\fffd\\fffd\u000F\\fffd\\fffd\\fffd[\\fffd\\fffd\\fffd_\\fffd?\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd~\\fffd\\fffd\\fffd\\fffdx<\\697\\fffd\\fffd\\289\\fffd\\fffd\u0015\\fffd\u0004\\'o%0A\u0010\\fffdl\\fffd\\fffdr\u0002\\fffd\\0\\fffd\\fffd D\\fffd\\58e\u0013\\fffd\u0017B\\fffdY\\c\u0012\\fffd\u0001\\fffd\\fffd\\fffd\\fffd\\fffd 6xlj\\fffd\\fffd[km\\fffd[k\\fffd\\fffd[\\fffd=\u0004\u0016E\\fffd%23R\\fffd\\fffd\u0007\\fffd\\fffds~\u0002\\448R;\\fffd|\\fffdP}\\fffd\\6de\\fffdg\\fffd\\fffd\\fffd\\fffdn;\u0005\\fffd\\5ef_\\fffd_\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd/\\fffd\\fffd\\5ef_\\fffd\\fffd|\\fffd\u0014X00)\\fffd\\fffd\u0011&\u0004g!\\fffd\\fffd\\'^\\0I\\fffdM\u0015\\fffd a$%0A\\fffd\\fffd\u0001\\fffd\\fffd\\fffd FA\\fffd 9\\fffd\\fffd\\fffd A\\fffd 0\\fffd\\fffd c\\fffd\u0011\\fffdN\\fffd 6\\fffd\\fffd\u0007\\fffd\\fffd 1\\fffd\\fffd\\fffd\\fffd{\\fffd\\fffd`rw{<\u001E\u0003X\\fffd|>}\\0\\fffdv\\fffd\\fffd\\fffd\\fffd f\\fffd\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffdo\\fffd\u001D\\fffd\\fffd\\fffd\\fffd_\\fffd\\fffd\\5ef\\fffd\\fffdo\\fffdY\\fffd}%0A\\fffd\\fffd\\fffd\"m\\fffd\"[\\fffd\\fffd\\1a0\\fffd\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffd\u0010\\fffd\\fffd DT\\fffd\\fffd.\u0003V\\fffdx\u0003$\\fffd\\fffd\\fffd.`\"\\fffd 4\\0\\519\\fffd\\fffdl\\fffd\u0019\u0002\\fffd 0B\\fffd\\fffd\\fffd\\7fe\\fffd 6\u0004\\fffd\\fffd{?\"\u0016\u0002\v5\\fffd\\fffd~\\fffd\\fffd\\fffd\u000F\\fffd\\fffd\\fffdG\\fffd\\fffd\\fffdh\\fffd\\fffd\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdv\\fffd\\fffd\u000E\\fffd(RT\u0001\\fffd\\fffdg\"N\\fffdH\\fffd\\fffd*\\fffd\\fffd|\\fffd\b \\fffd\\fffd\\fffd\\fffd\\fffdZ\\d3\\fffd\\fffd 5\\cb\u0011%23z\\0\\fffd\\fffdG\u0001Pf\\fffdr\u0012\\5ca\\fffd\u001A\\fffd\\fffd\u001E\\fffd\u0006x\u001AF,\\fffdQ\\fffd\\fffd\\fffd\\fffd\\fffdv\u001D5@5\\fffd\\6ee\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\\fffd\\fffd\\fffd\\fffd\\7ff\\fffd\\fffd~\\fffd\\fffd}||\\c\\fffd\\fffd~\\fffd\\fffd\\fffdn\\fffd\\fffd=\u001E\\fffd ffZcU\\fffd 5\\fffd d+\\0\\fffd-\\fffd\\b20e<H *\\fffdNQ\\fffd\\fffd D^\\fffdK\u0006\u0011\\fffdG\\fffd\"\\0!\\fffdu\\fffd/\\fffdK\\fffd\\fffd f`\\fffd\\fffd\\fffd D\\fffd\\fffd\b\\fffd A\\fffd%23za\\fffd\u001AT\\fffdk\\fffd\\fffd\\fffd\\fffd\\fffd,pD,\\fffd\\fffd\\fffd\\fffdo\\7fe%0D!o?~\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd B\\fffd\u001E\\\\\\fffd/\\464 8\\fffd>\\fffdt\u0019\\fffdI\\fffd(\\fffd)@\\fffd 1[!\\fffd\\fffd\u0019\u0015\\fffd\\fffd\\fffd\u001E\\fffd\\fffd\\fffd\u0016\\0\\fffd\\fffd\\fffd\\fffd`\\fffd\bu\\fffdk\\fffd\\fffd&\\fffd\\fffd d{;\\fffd a\u0004\\6d0\\fffd\bL\u0003h\\fffd\\fffd\\fffd\\0\\fffd\\fffd\\fffd\\fffd]S\\fffd\\fffd\\fffd@\\fffd\\fffd\u0001*\u0004\\fffd\\0\\4b7o\\fffd\\fffd\\fffd\\fffd\\1f6\\fffd\u0001,\\fffdP\\fffd\\cO\\fffdZHRs\\fffd e\\fffd\u00118\\fffd 82\\fffd\u0005\\78fGQ\\fffd\\fffd=ff\u0002\u0014\\fffd\u0017X\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd 5p\\fffd\u0018t\\fffd\\f0$]u\\fffd\\fffd a\u001B\\c:DKa\\8a9d\\fffdl\\fffd\\fffd\u0013\\fffd=\\fffd\\3f6G\\fffdv\\fffd\\fffd\\6ee\\fffdNT\\fffd\\fffd?>>\\fffd\\fffd\\1c7=\u001E\\fffd\\fffd\\fffdx\\fffd\u0011\u00199bM\\fffd\\fffd,J\\fffd\\fffd\\fffd\u0005\\fffd\\fffd\u0001\\fffd\"\\a2f2 1\\fffdG\\fffd|\u0011y\u001C\\fffdsa\u0007x$\\4154h\\fffd)\\fffd@6\u001Cn\\fffdT\\fffd^\"1\\0 b%23\\fffd\\fffd%0D\\fffd\\fffd\\fffd\\fffds\\fffd d\\fffd%0D-\\fffd\\fffd@\u0007\\fffdj\u0018\\fffdGd\\fffd\u001F\\fffd}\\fffdVv\\fffd\\fffd\\fffd~\\fffd\\fffd\\fffd\\fffd%0DSt\b\\fffd}\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffdw{<\u001EG\\fffd\\fffdh\\fffd\\fffdQ\\fffd\\fffd*\u0003TK\"Oh\\fffd\\fffd\\c\\c897\\fffd\\fffdv\\fffd\\fffd\\fffd\\fffd\\fffd\\4f6\b\\fffdM\\0 FzP\\fffd\\fffd 5\u0006\\c\u001CsS\u0019\u001D\\fffd\u0001\\200\\fffd\\cJ.hn\\fffd 7\\fffdQ\\fffd\\fffd@C a&\\fffd\\fffdWuP\\fffdn\\fffdn\u0002Xv\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdn\\fffd\u001Bf\\fffd\\fffd\u0003qd\\fffd>\\fffd}\u0002\u0016g<\\fffdl+\\fffdrHApB\\fffd\\fffdw\\fffd\\fffd\\fffdV\\0\\fffd\u0005\\11c(\\fffd\\fffd m\u0001\\fffd\\fffdy\u0014\\fffd.\u0011p\\fffd\\fffd\u0010\\fffd\\fffd\\fffd.2-\\fffd c\u0016\\fffd\\'\\fffd\\fffd`\u0002 %0DZ\\fffd\u001C\\fffd\\fffd(\\fffd\\fffdj\\0iD)\\736!\\fffd\u0006\\fffd\\fffd\\235\\fffdQh\\0i\\0\\c\\fffd\\fffd\u0003\\fffd\u001F\u001F\u001F\u000E\u0011\\fffd\\fffd\\fffd^\\0U\\fffd\u001F\\'W\\42d\\fffd\\fffd\u001A\\9ca2\\fffd\\ch\u0002\\517\\c\u000F\\fffd\\fffd B^\u0001\\fffdu\\fffd\\fffd\u000EX\\fffd\\fffd\\fffd\u0011\\fffd\\fffd\u0003\\0N\\fffd\\fffd\\fffd\\fffd 9\u0007\\fffd\\fffd\u0013\\fffd\\fffd\u0001L\\fffd\\fffd\u001BF\\fffd\\fffd\\fffdyl{>\\fffd\\fffd\\78dpD\\fffd\\fffd%09\u000E\\fffdt\\fffd\\fffd\u0007\\fffd\\fffd\u000E\\fffd\\fffdG\\fffd~\\fffd\\fffd}\\fffd am\u0007\\fffd A\\fffd\\fffd\\fffd\\73d\\fffd\\fffdp\\fffd\\fffd%0A(-\u0013\\fffdx\\fffdK\u0003\\fffd 4\\fffd\\fffd 2\\fffd\\fffd 2\u001D%\u0004\\fffd\\6b6\u0012\\fffd\"\\fffdi\u0013T\\fffd\\fffd\u001A@\\fffd}\\fffd\\fffd\\fffd\u0001F\\fffd\\fffd F\\fffd\"\\fffd a\\fffd 2\\fffd\\fffd\\fffd\u001C\\fffd F&xh\\fffd\\fffd\\fffd\u0013\\fffd\\fffdY\\fffd 6\"\\fffd\u000E0\\fffd\\fffdn\u000E\\fffd\\fffd\\fffd 4k\\fffd\u000Ek\\fffd%0A\u0003\u0010\\fffdh\\fffd E\\fffd\b \u0015\\fffd E\u0011\\154\\fffd\\'\\fffd\\fffd 2NU\\fffd\\'\"\\fffd\u0001\u0005JG=+\\fffd 2x\\fffd\\fffd CJ\u001BB\u001E\\fffd\u0015\\fffd\u0012\\fffd\\fffd\bL\\fffd-\u0005\u0004\\fffd\\fffdU\\fffdu\\fffd\u0014 \v\\fffd\\fffd\\7cf9{\\fffd[_\\fffd\\fffd\\fffdw%0A\\fffd\\fffdn\\fffd\\fffd\\fffd\\fffdG\\fffd C[\\fffdv\\fffd\\fffd\\fffd\\3c61 E1>c\\fffd\\fffd\\fffd\\fffdP\\fffd\\'\u0002ODm\\fffd\\fffd\u001F\\fffd\u0012E8\u00052\\fffdh\\fffd(\\303\\fffd\u0001E\\fffd\\fffdQ\b\\fffd\u0017\u0001K\\fffd:%09E\\fffd 38\\fffd\\fffdr\\fffdo?a\u0017K\u0001\\fffdU\u001F\\fffdR\\8d33w\u0005\u001D\vH\\fffd\u0007\\fffd=\u001E\u000Fw\\fffd\\fffdn\u0018\\fffdgv\\fffd\\fffdmG\u0007\u0004GO3\\fffd\\4c8U\\fffd`\u0013\\fffdXf!\\43e\\fffd\\fffd\\fffd\u0010\\fffd\\fffd\\fffd\\fffd\\fffd 6p\\fffd\u0011L\u001C\\fffd\\fffd\\fffd\u0002U\\fffd\u0013\\fffdm\\fffd\\fffd 9eyG$\u001A\\fffd\u0003\\fffd\\fffd&\u0011\\fffd\u001D\\fffdN\\0;\\fffd\\fffd\\fffdkX%0A\\0\\fffd\\fffd\\fffduw\u001F\u0002\u001E;\u001A\u001A\\fffd`%0D=\\fffd\\fffd\\fffd\\fffdk\\fffd\\fffd\u0001;,\u000E3\\fffd\u0010XQ%09\\fffdR\\fffd\\fffd,\"%09cRQ!\\fffd)O\\fffd\\fffd)@\\fffd\\fffd\\fffd\\fffd 3\u0016\\0\\fffd\\fffd 1\\fffd&g\\fffd\u0007\\fffd\\0\v4\\fffd\\27b\\fffdl\u000FLOI\\fffd\\0\\fffd\u0011\\fffd\u0018d\\6fe\\fffd@\u0018\\fffd\\fffd+w}\\fffdg\u001B\\fffd f\\fffdX{\\fffdr\\fffd\u0018\\fffd\\fffdv\\fffd\\fffd|h*\u0004\\fffd\\0\\fffd\\fffd\\fffd_T\\fffd 4\u0003L\\fffd\\761\\fffd\\fffd\b\\fffd\\fffdkG\\fffd\\fffd[\u0007\\fffd\\fffd\\fffd\u0006\\fffd\u0003?\u001F \\fffd\\fffd\\fffd\u0014\\fffd 8%23\\fffdHo\u0011\\fffd 5\\fffd_\\fffdw\\0\\fffdO\u0004\\fffd 1\u001E\u0004,n\\fffds\\fffd\\fffd 9\\fffd\\fffd\\fffd)\\fffd\\fffd\\fffd\u00151\\fffd\\fffdx\\fffdH\\fffd\\fffd\\0\\fffd]C%0D\\fffd\\fffd 9\\fffd\\fffd\\fffd a3\\fffd%23\\fffd\\0\\fffd\\fffd[?\u001Cx,V\\fffd\\c;+\u000E\\\\|\u0011\\fffd\\fffd)5\u0006\\fffd\\fffd\\fffd\u001D\\fffd\\fffd\\fffd\\fffd\u0018\\fffd\\fffd\\452P\\fffd\\251OR+\\fffdL8JBC\\fffd\\fffd\\fffd 1a\u0013\\\\\\fffd 1\\fffd\u0006\bt\\fffd\\fffduA\\fffd\\708g\\0\\fffd%23\u0019\u0018\\fffd%09\\fffd\\13b C\u001B\\320\\fffd\u000E\\fffd\\fffd\\fffdN\\fffd\\fffd\\fffd\\fffdx\u000E\\fffd\\fffd\\fffd\\fffd\\686\\fffd\\fffd%23\\fffd 6\\fffd 8\\fffd\u0012[\\fffdGd\\fffd\u00028S\\fffdL_)\\fffd[=\\fffd\\fffd\u000E\\fffd\\fffd\\fffd>\\fffd@\\fffd\u001F\\eda0IE}\u001BL\u001C\\fffd D/\\fffd\\fffd dZ2H&\\fffd\\fffd E\\723\\fffd\u0010\u0018\\fffdln\"5\"-np\\fffd\\fffd F\\fffd\\fffd\\3b6SZC\\fffd\u0014\\fffd f\\0.\\fffd\u001B:P\\fffd\\fffd\\fffdl\\fffd\\fffd@\\fffd\u001F\\fffd\\fffd\\fffd\\6a7\\fffd\\fffd\\430U`\\fffd\\fffd]\\fffd\\\\Y\u0011-\u0002P\\fffd\\fffd\\fffd\\fffd b\\fffd\\fffd\\fffd\\fffdXD\\fffd.\\fffd 9\u0017\\fffdO\\fffdu\\fffd\\fffd\u0016\\fffd\\fffd\\fffd\\fffdX7\\fffd\\fffd\\fffd\u0003\\fffd 5\u0002\\fffd 6a1t0E\u0011dR\\fffd\u000F\\fffd\\fffd\\fffd 3\u0004{\\fffd c\\fffd\\fffd\\fffd\\fffd\u0004b\\fffd\\fffdlX\\1b9 D,\\fffd\\fffd*-& \\fffd\\fffd\\fffd\\fffd%09\\fffdy@\\fffd\\fffd\\fffdvn\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd-\\fffd\\fffd\\fffd\\fffdLX\u0003\u0017\u001D\u0015\\fffd\\c362\\560x\\9f23\\740\\fffd%0A\\0\\fffd\u001A\vg\\fffd 86\\fffd=\\fffdO7\\fffd\\fffd\\fffd\\fffd\\fffdw\\fffd\\fffd\\fffd\u0003\\fffd\\fffdn%\u001C\u0019\\fffd\\fffd\\432\\fffd D\\fffd%0A\\fffdg\\fffd 5\\fffd\u00120d%\u0016\\fffdT\\fffdRJD\\fffd\"\\fffd;\\fffd\u0006Aq\\fffdj\\fffd\\fffdY\\fffd\\fffdp\\fffd\\fffd\\fffd\\fffdV\\fffd\\fffd^\\fffd\\fffd\u0003\\fffd d\\fffd\\fffd 8*\\fffdZ\\fffd\\0@\\fffd\\fffd Zu(\\fffd\\c \u001ETH\\fffdx\\fffd 6\\cR\\fffd\\fffdm\u001Cs\\fffdt%23J\\fffdN\\fffd\u001B\\0\\fffdl7\\fffd\"V5Z\u00118<q\\fffd%23\\fffd 5u\\fffd@S\\fffd\\fffdP\\fffd(\u001F\u0003%23\\fffd*Bg\\fffdS\\fffd 7z\\fffd\\fffd\\fffd aL\\\\ \\fffd D\\fffd\\b92b:Lv8m\\fffd\\fffd\u001D\\fffd\\fffdN\\fffd\\fffd\u0007\\fffd\\fffd~\\fffd\\ced08%\u001Ep\\d3d2\\fffd\u001E\u0001\u001D\\fffd\u0006O\\fffd!\u0005\u0002\\6d4\\fffd\\fffd\u0005\\fffd\vr?\\232\\fffd\\fffd|X\u0012`G\\\\\\fffd\\fffd\u0001\\fffd\\fffd\\fffd\u0005\\fffd\\fffd D6AiFB\\fffd\\fffd\u0004\u001B\\fffd\\fffd\\'\\fffd\\fffdhnP\u000E|\\fffd%{\u0004%0As\\fffd^XXv\u0010\\fffd\\fffd\\fffd|\\fffd%0D\\fffd\u0016\\fffd\\fffdN\\fffd\\fffd C\\fffd\u001Ct\\fffd\\fffd\\fffdU0\\fffd 8\\fffdg\u0014\\fffd\\fffdR84\\fffdN\\fffd\\fffdj=0\\fffd\\fffdv\u0003\\fffd\\fffd\\fffd\b\u0015i\\fffd\u0006\\fffdM\\fffd\vk\u0019\u0004\b\\fffd C\\fffdUu\u0015\u0011Y\u0007\u0005\\fffd\\525\\fffd\"\\fffd%09m\\fffd\\fffd a\u0013\\fffd\\fffd%09\\fffd\u0001=\\fffd\\fffd\\fffd>\\fffd\u0019\\fffd\\fffdT$\\fffd\\8166(D\\fffd F\u0011kc*\\fffd%23%0DRacZ\\729\\fffd-\u000E\\fffd\\fffd\\fffdp\u0007S\\fffd f\\fffd\\164d\\fffd\u0012\\fffd\\fffd\\fffdJ:E\\fffdj\\fffd%\\fffd E49\\fffdL\\fffd\u0005\u000E\\fffd\\fffdY!\\fffd\\'},\u0006\u001A\u001B\\fffd\\fffd\\cp\\fffd\u001A\u0003\\fffd\\fffd\\fffd\\fffd\\fffd@@\\fffdJc\\fffd\\fffd@\\fffd\\fffd\u001F\u001F\\fffd ?\u0006\\fffd\u001DA7<*\u0006]\\fffd\\fffd 5\\fffdt48\\fffd\\fffd cB\\fffd\\fffd\\fffd\u0019\\fffd,\u0001U\\fffd\\fffd-\u0002\\fffd\u0005`\\fffd 3\\fffd\u0002\v\\fffd\\fffd\\5dc 3\u0016*\\fffd 8\\fffd\\fffdM\\fffd\\fffd<\u0002\u001B\u0014\\fffd%2309\u001B\\fffdH\\fffd\\fffd\\fffd]\\fffd\\fffd\\fffd\\fffd\u000E\\fffd;e\\fffd\u001B\\fffd\\1a0\\fffd\u0015\\0\\fffd!%0A\\fffd\\fffdwJ\\0\\fffd}+\u0004\u0013\\fffd*\\fffd\u001B\\fffd\\fffd\\fffd\u0017\\0 7\\fffd f\\fffdg\v y2\\fffd!r\\fffd%23\\fffd D\\fffd\\3c0v\\fffd\\fffd\u0011\\65e\\fffdRN\u0016\\fffd\\fffd\u0016M4\\fffd\u0019\\fffd\u0003\\fffd\\fffd\u0006|\\fffd\\fffd%0A\\7c7Z\\a939\\fffd\u001Ey\\fffd\u001EPP\\fffd\\fffd\\fffd\\fffd 9b\\fffd\\fffd\\fffdX\u0017\\fffd@\\fffd\\fffd%\\fffd\\fffd\\fffd\\fffd\\fffd E\\fffd\\fffd d\\fffdKDc\\fffd 8\\fffd dQ\\fffd\u0010\u0017\\410\u0016\u0003\\fffd\\fffd\\227\\fffdP\\fffdx\\fffd\\fffd\u001D\\fffd\\fffd\\fffd-\\fffd%0Aw0cI\\fffd\\fffdy\\fffdP\u001B\\fffdp\\fffdg\\fffd\\1e7\\206\\fffdr\\406 \\fffd\u001E\\fffd\u000E-3\u0016\\fffd%0D\u0013\\fffd\\fffd E\\fffd\v8\\fffd\\fffdR\\0$ps\\fffd E\\fffdVMQ\\fffd\u0010\\fffd 3-e\\fffd\\fffdoA\\fffd\\fffd\u0016\\fffd\\fffdT\u001F\u001F\\fffdh\\fffd%0AB\\fffd c%09\\fffd c\\fffd\u0006\\fffd\\fffd\\fffd\\fffd@\\fffd\\fffd\\fffdz<\u001E\\fffd%0A\\fffd B@\\fffd\\5415\\fffd\\fffd\u000Ei\u0012\\5cb\\fffd\\fffdo\\fffd\\fffd\\fffd%0AK`\"1\u001F%09\\fffdW(\\3c2\u0006\\fffd\u0019x<\\fffd@\\fffdKwL\\fffd\u0013J<\\fffd=\\fffd\u0010\\fffdN\\fffdI\\fffd\\fffd\\fffd_\\fffd\\fffd\\fffd\\fffd\u0019\\fffd\v@?&\\fffd\\fffdQc96\\fffd%0D\\fffd Bz\u001B6\\fffd\u0018Kl\\fffd\\fffd\\fffdjRk\\fffd\\fffd\\0\\517\\fffd 1b\\fffd\\fffd\u0006\\fffdL\\fffd c\\fffdh\\fffdzG\\fffdz\u0001\\fffd\\1b5\\fffd\u0004H\\c^\\fffd\\fffdW\\fffd\\fffd\u0005B\u001C\\fffd-\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd:E/\\fffd\\fffd^\\fffd\\fffd\\4a1\\fffd}2A\\fffd\u0010\\fffd\\0\"\\'*<(%0D%23\u0014\\0\\fffd\\fffd\\fffd\\fffd\"\\fffd\\fffd\\293!z\\\\W\\fffdTh\\fffd\\c aE[*\\fffd\\fffd\u0017\u0001Id\u00195^@\\fffdm\\fffd\\1ee\\fffd\\fffdY\\fffdr\\1f8\\fffdX\\fffd\u0006\\fffd\\fffd \u0007\\fffd\\fffd\\fffd eC\\\\\\fffd 1\\40f\u0012\\fffdh8\u0013\\fffd\\fffd\\fffdMQ!f\\fffd\u0004\\fffd\\fffd\\fffd\\fffd\\fffd A6\\fffd\\fffd\\fffd e*3\u0004\\fffd\\373\\fffd%09\\fffd\\fffd\u001A\\fffd\\fffd\\fffd\\7dd\\fffd\\fffd_i\u001B\\fffd%0DLM\u0014\\fffd\\fffd\\245Q{\\fffd\\1ad\\fffd%23\\fffdp\\fffdQY\u0014Q4\\fffd\\fffd*\u0002\\fffd E\\fffd\\fffd 1\\fffdm\b:\\fffd\u0002\\fffd 6t\\fffd\\fffd\\fffd:\\fffd~Fd\":D\\fffdw\\fffdn\\fffd\u001Bv%23\\fffd\u0001\\fffd\\ecG\\fffdl{\\fffd\\fffdG+\\fffdX\\fffdnS\\1c1\u0005QLE=W\\fffd-\\fffd 2@\\fffdl\\fffd\\fffd A\\fffd\\fffdz\\fffdR\u001D\\fffdm\\fffd\\fffd\\fffd\\fffdh8\\fffd(\\fffd\\fffdN\\fffd\\fffd\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\u0001\\fffd/\\fffdn\\'K\u0002t\\fffd\\fffd 4ee h\\9f3e\\fffd\\fffd\\fffd\\fffd at\\fffd EKJ\u0013\u0019\\fffd\u0005`\\fffd\\fffd\b\\fffd\\'\\fffd E\u0007CF\\fffdlZ\\fffd\\fffdp\\fffdh\\fffd E\\fffd\u001A\\fffd\\66e 4V\\fffd\\fffd\\fffd%\\fffd\\fffd\\'\\fffd+\\fffd\\fffd\\fffd\u001E,\\fffd\\fffd\v\\fffd!-\\fffd\\fffd\\fffd\\fffd=\\fffd\\fffd\v\\fffd\\fffd/\\fffd 28z\u0011%0D\\fffdI\\fffd\\fffd]\\fffd\bj:\\56cw*\\fffd\u001F<\\fffdG\u001Eh,~\\fffd\\fffd\\fffdK\u0003E\\fffd\\fffd(\\3d5\\fffdN\\fffd\u0007K1\\fffd\\fffd C\\fffdO\\fffd%0A&Y\\fffd\\fffd>\u001C\\fffd-8\\fffd\\']\u00056\u0004>o\\\\;\\fffd\\fffdM\\fffd\u0002$\\fffd)\u0016\\fffdT\\fffd\\fffd\u0015\\fffds\\fffd 5\\fffd|P\\fffd\\1fe`-\\fffd\\0 FF\\fffd\\fffd\b.\\fffd\\fffd`\\fffdK1\\fffdq\u0001=\\fffdX\\fffd\u0016\\fffd\\fffdL\v\\fffd\u0006\\'\\fffd\\fffd\\fffd\\fffd)Z\u0002\u001D\\fffd\\fffdp\u0012\\fffd\u0001M\\fffd 1\u0010\\fffdl%23\\fffd\\fffd:\\fffd\\fffdha\\fffd\\fffd\\fffd\\fffd\\fffd\u001C\\fffd\\fffdV\u0018\u0001`%\\fffd\\fffd\\cr\\fffd\\fffd\u0014\\fffd 1\\fffd\u0016\\fffd\\fffd\u0002-\\fffdR!;\\fffd{A\\fffd\\fffdy\\fffdHg@o\\fffd\\0\\fffd\u0004\u0005Z%0A\u0018^ +D\\fffd\\fffd~,SV\\fffd\\fffd%0A\\fffdn8\\fffd)D&\\fffd\\fffd\\fffd\\fffdh\\fffd\\fffd\\fffd\\fffdq\\fffd\\fffdmI\\fffd\u0007-1\\fffd^\\fffd\\360\\fffd\"W\\fffdK\\fffd\u00010\\fffd\u0014\\\\\\fffd\u0004\\fffd)]\\49fRB?\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u0006*\\fffd X\\fffdm\\fffdP&\\4d6\\fffd F\\fffd\\fffd\\fffd\\fffdG\u0006\u0007\\fffd A\\0\\fffd\\fffd\\fffd(\u0012=-\u0004\\fffd\\fffdqS\u0004\u00137O\\fffdR\\fffd<3k\\fffd\\0 Fs%0DG\\fffd_&\\fffd\\fffd}hI\u0018\\fffd\\fffd\\fffd*5Mt0\\fffd\\fffd 2\\fffdh\u001E!w%\\fffd\\fffd~\\fffd\\fffd\\fffd}hU \\fffd\\fffd\\fffd\\'\\fffd\u001E\\fffd 2\\fffd\u001B\\fffd 5v\\fffd\u000Fw\u001DW\\fffd a\u001A\\fffd)\\fffd\\fffd\u0012\\fffdw\\fffdI7:\\fffd\u0016\\fffdz\\70f\\fffdX\\420\\fffd\\a8}f\\fffd\\fffd\\fffd\\4da\\fffd C\\fffdW\\fffd;j\\fffd\\fffd/S\u0016\u0003\\4df\\fffdx\\fffd F>\u0017\\fffd\\fffd FEh\\fffd\\fffd\\fffd D\b\\fffdT\u001ED\\fffd\\fffd\\0\\36d 2\\fffd)rC F,%23?%0A\\fffd\\fffd Fm\\fffd\u0018\\fffd\u001C\\fffd\\fffd c\\fffd\\fffdX\\fffd\\fffd\\fffd[\\fffd)\\fffdJ\\fffd\\fffd\\aa a\u001A\\fffdlR%0D\\fffd\\fffd|Iw\u0001x,\\fffd\u0002G\\742\\fffd>K(2+\\fffd\\\\\\fffd\u0016\\fffdw\\fffd\\fffd DGe\u0011\\fffd Ep\\439\\fffd\\d153\\fffd\\507\\fffd 9fw\\fffdq\\fffd\\fffd\u0012\\fffdo\\c@<\\fffd\u0003\\fffd\\fffd\\0+[\\fffd\\fffd&\\fffdS\\fffdy\\fffd\\fffd\u0016\\fffdo.V\\0\\fffd\u0011Jg%09\\fffd\\542\\fffd:\u0015\\fffd\\fffd\\fffd 3\\fffd\u0014\\fffdv\"a4\\fffd 4\u001BD%09\\fffd\\fffd\\125\u001B\\fffd\"\\fffd\u001C=\\fffd%09t\\fffd\\fffd\\fffd\\fffd++\u000F\\0\\fffd?\\fffd\\fffd\u0006\\fffd:i\\fffd\u0011\\fffd\\fffd\\fffd\\55d2\\18a\"\\fffd,\\fffd]\\0\\fffdh%23\\fffd.\u0006\u0019\\fffd\\fffdq\u0014\\fffdR\\fffdV\\fffdz\u0003\u0007\\fffd Df\\fffd 4\\fffd\\fffd\u0005\\173\\fffd\u0010\\fffd~g \\fffd\\fffd\\fffd\\fffd\\fffd_JC\\fffd\\fffd\u001B\\356\\fffd(\\fffd\\fffdo\\fffd\\fffd\\10b\\fffd?0\\fffdrU\\fffd%\\fffdU\\fffd b!\\fffd\\fffd\\fffdq\\fffd fU\\fffd\\2e5\\fffd=\\2e8QD3~=r\\fffdM\\462z\\fffd\\fffd e[\\fffd B\\fffd\\fffd\\fffd\u0001\\fffds\\fffd$a`\\fffd\\fffd\u0017g\\fffd\\fffd\\fffd\\fffd 85\\fffdm\u000E^\\\\\\fffd\\fffd[\\fffd%0D\\fffd\\fffd 6n\\fffd\\fffd\\fffd\\'&\\0\\fffd\\fffdK\\fffd\\fffd\\0\\fffd\\fffd\u0011\\fffd eQ%09\\fffd\\fffd\\fffd\\fffd B\\fffd\\fffd\\689\\fffd\\fffdr\\5c9\\fffdN\\fffd\u0005-\\fffd a\\fffdqQ%0D\\fffd\\fffd(\\b2H\\fffd\\fffd D\\50a\\fffd\\fffd\\fffd%0D\\fffdLP\\fffd e\\fffd\\fffd\\fffd\\fffd 6\\fffdz\\fffdg\\fffdl!3T\\fffd~\\fffd@g\\fffd!\u0012\\fffd\u0016L\\fffdp%\\fffd\\fffdmKT&xq\\fffd%098\\fffd\u000E\\fffd\\fffd\\fffd\\606\\fffd\\fffd.Z\u001Dv\\fffd\\fffd\\fffd\\fffd B\\fffd\\fffd\\fffd\\fffd\u001FN\\fffdw\\fffd\\fffdwv\\133\\fffd?\\fffd\\fffd\")\\fffdt2Xt\\fffd(\u001AMh0\\fffd\\fffd\u0015i\\c\u000F\\fffdk\\fffd\\fffd*\\fffd D\u0004\\fffdL\\fffd\\fffdp\\5d5\\fffd\\fffd\\fffd\u0019\\fffdJ\\fffd\\fffd~\\fffd\u0005\u0006\v\\5e7 cPM\\fffd\u0014\\fffd\\fffd\\fffdp1J\\fffd|\\fffd\\fffd\\5f2\\a4\\fffd 8\\fffd F\\fffd\\fffd d\\fffd\\fffd\\262\\fffd\\8a72\u0002E\\fffd\\fffd b\\fffd\\fffd\\fffd)\\fffd b\u0002@\\fffd 8Lw\\fffd\\fffd$\\310 9\u0001\\fffdO2\u0003\\fffd\\c193>\"Q\\fffd\\fffd{\\fffdUo6A\\fffdNEg\\fffd\\fffdO9\\fffd\u0012X\\fffd\\fffd\\3a2Rd+\\cg=\\fffd\\fffd\\fffd\\fffd\u001E\u0002dL\\147\\fffd 2\v|,\\fffd 271\\fffd\\fffd\\fffd\\fffd\\fffdu\\fffd\\fffd\\fffd\u0010XL\u0015bf\\fffd)+B\\fffd%23\\fffdmF\\0\\fffd\\fffdO\\fffd\\fffd\\0\\fffd\\fffd\\fffdt|\\fffd\\fffd]|\u0007\\fffd\\fffd\\fffd \\fffd;\\108c4f\\fffd\\fffd;\u0015\\fffd\\fffd\u001A\\fffdR;\\fffdJ7j\\fffd\\fffd\\fffd>\u0018\\fffd\u0006\\fffd\u001D\\fffd\\fffd\\fffd\u0001\\fffdyf\\fffd\\fffd\\fffd \u001B\\fffd\u0010\\fffd B\\fffd\\fffd\\fffd\u001E\u0019\\fffdQD\u0013 \\fffd\\fffd<\\fffd%23\\fffd`\\fffd\\fffd 7A\\fffd\\fffd,\\fffd\\fffd>\\fffdg\\fffd b\\fffdr\\fffd\\6f3\u0015\u001DYb(\\fffd!+\u0004O\\17b\\fffdJ%09(e\u0017gFwB\\fffd](\\fffd%23\\fffdj+N\"]4\\fffd>\\fffd=a?\\fffd@\\fffd\\fffd\\382e\\fffdn\\fffd\\fffd\\fffd\\fffd\\fffd\vo\\54b%\u001D\u0013\\fffd\\fffd\\fffd\\fffd\\fffd D\\fffd\u0003|Js\\fffd\\586\\fffd\\fffdZk\u000E\\fffd\\fffd 0J\\fffd\u001A\\fffd\\6a6\\fffd\\fffd<\\fffd\u0002\\355\\fffd\u000El%09\\fffd\\fffd|\u0005\\fffd\\fffd b\\fffd\u00065\\fffdw\\fffd%\\fffd{\u0015d \\fffd;\\fffd\u001D\\fffd\\fffd\\fffd\\fffd D\\588\\fffd}\v\\0\\fffdhE\\fffdN\\fffdnJ7\\fffd~\\fffd\\fffd\"(W\u000E\u000F+\\fffd\u001B^\\fffd\u001F\u0012\u0003U\\fffd D\\fffdV\\fffd\\fffd\\271\\fffd br\\fffd b_T\\fffd\\fffdh\u000E\\fffd\\fffdrDwJ\\fffd\\fffd \\fffd\\fffd\\fffd&\u001A\u0003\\fffd\\fffd_I\\fffd\\fffd\u0014\\fffd\\fffd\u0007\\fffd\\fffd\\fffd@fs\u0013\\53c\u00015\\fffd\\fffd\\fffd\\fffd_\u0014\\fffd\\fffd\u0014x\u0012\\fffdm\u0012\\fffd f\u0013S-\\fffdyc*\\c3\\fffd+\\'\\fffd\\fffd\\fffd\\fffd\u001B\\fffdNL\\fffd\\\\-c4\\fffd b+\\fffd\\6a0>7\\fffd\\490\\fffd,\\fffd\u0012MQ!\\fffd\\fffd,\\fffd\\fffd\\fffd\\fffdNY\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdx<\u001A\\fffd \\fffd-\\fffdX\u0015K!\\\\p6\\fffd 5\u0016g\\fffd(@N\u0001\\fffd\\0\\fffd(Z\\fffd\u0019:8w\\fffd\u0005\u001A\\fffd\\fffd-\\fffd\\fffd\\fffd 1\\22epe\u00130\u0010\\fffd/w\\fffd\\fffd\u0006\\fffd\u0006\\fffd\\fffd\u0016u\u001A\\41cQ\\fffd\\fffdtZ\\fffd\\fffd 0\\fffd~n\\fffdUc2\\0 Fkf\u0005\\fffd F\u0013=@\\fffdk\\fffd E5\\fffd\\fffd\u001A\\fffd 0sY\\fffdOL\\fffdp\\fffd$\u0011\\fffd\v*\\6e6\u0012Pd-\\fffd\\fffd\u0011\\fffd Dq\u0017*\\fffd=V\\fffd\\fffd\\218\\fffd 2\\fffdS\\fffd%{\\fffd\u0015\\fffd=\\fffd\\fffd\\fffd%09\\fffd\\fffd\\fffd~\\fffd\\fffd f\\fffd(\\fffd\u0014\\fffd\\fffd\u0019\\39eP\\fffd\\fffd D{E\\333w\\fffd\u0012\\fffd\\fffd\u0018\\fffd\\fffd\\fffdM\\fffdj\u001BL\\fffd 8E\\fffd\\fffd\\fffdqvJ\\fffd\\1d9\\fffd\\fffd\\539\\248\\fffd\u000E\u0015~\\fffd_e+\\fffd\\44c 4\\fffd%\\fffdTC\\fffdl{EO\\fffd\u0017\\fffd\\fffd\\fffd\\fffd\u0006\\fffd 6\\fffd{u0?\\fffd 0B\\6cc\u0016\\fffd 5\u0004%0A\\fffd bE?\\fffd\\fffd\\536 2\\fffdV\\fffdV\u0004%0A\\55c\\'\\fffd;\\fffdX\\276hMv\v\\0\\fffdHc\\fffd\\fffd\u001F~%0A\\fffd\\fffd\b5\\fffd&\\fffd B\\fffd\u0006\\fffd\\fffd\u0006\\fffd&:\u0014\\fffd`\\fffd{\\fffdP\\fffdG\u0011*\\fffd%23^\\fffd\u001B^\\fffdj?\\fffd(1\u0015\\fffd 7E\\fffd*\\fffd E\\fffd\\fffd\\fffdx\\fffd>\u0010\\fffd\\fffd%\\fffd\\322\\fffd d\\fffd\\fffd\\10aW\\fffd)\\fffdQ\\fffd\\fffd`\\fffd 8\\fffd\\fffd \\fffd\\fffd Ep\\fffd_)+\\fffd\b\\fffd\v%\\fffd\u0019\\fffd\u0015\\fffd(\\fffd 3xO\u0018\\fffd\\412\\fffd\\fffdj^\\fffd\"Z\\fffd\\fffd\u001C\\fffd-\\fffd\\fffd\\489\\fffd\u000F\\fffd\u0013\vq\\fffd\\fffdv>\\fffd 2R\\fffdT\\fffd\\fffd\u000E4\\fffd\\fffd\\fffd\u0014\\fffd|\\fffd-\\fffd 0!u\\fffd+T\\fffd@\\fffd\\fffd\\fffd%\\fffd\u0011Qa\\fffd\\fffd\\fffd\\fffdx\u0017\u0011\\292\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdMe\\fffd\\fffdp\u0017\\fffd\u001A\u0005\\fffd-0_\\fffdM\\fffd\\fffd-1 \\fffdYOD\\fffd\\fffd e\u001D\\fffd\\fffd F\\fffd\u0010\\fffd 7\u0017\\fffd\\fffd\\fffd]\\fffd 8\\fffd-\\fffdiw\\fffd\\fffdl\u0004\\fffd 2\\fffd\u0005\\fffd 6\\fffd\u0016\\fffdH\\'\\a456,Y\\fffdu\\fffdj\\fffd\\fffd\\fffd\\fffd 3\\fffdwU\\fffd F\\fffd_L\\fffd\\fffd\\fffd\\fffd&\u0013<fe/y\\fffd\\fffd\\4deQe\\fffd%0A\\fffd\"t\u0006%0A\\fffd\\152~*S\\fffdZ\\fffd\\fffd\\fffd?18-\u001B\\fffdJ&X}\\fffd\\fffd\\fffd`\\fffd e\\fffd 2\u0010\\fffdX\\fffdi/\\fffd(J\\fffd 356\\fffd\\fffd\\fffd\u0014.\u0014\\fffd\u001BOk\\fffd\\fffdV\\fffd\u0016\\fffd\\fffd\\fffd\\fffd F(\\fffd\u0017O\u0013\\fffd\\fffdP\\fffdG\\fffdw(\\fffd\\fffd\\385\\fffd\\fffd\\fffd\\fffdWy\u0002\\fffd\\655\\768 3!\u0003W\\fffd\u0014\\fffd%0D\\fffd\\fffd\u0010h\\fffd 0\\fffd\u0013\\fffd\\fffd\\fffd\\fffdKt\u0017/K\u0010Y%0D6J:aV8\u0003\\fffdh\\fffd\\fffdQ\u0018\\fffd\u0007\\fffd\u001BY\\fffd\\fffdT;\\fffdXa\u0016\\fffdk\\fffdr\\fffdW\\fffd\\fffd\u0004S\\fffd$\\fffd(2f \\fffd\\fffd\u0015f\u0013`/\u001A\b\u0016\\fffdU\\fffd+\\fffd B\\fffdz\u0002O\\fffd d\\fffd\\fffd\\fffd\u0019;\\fffdyM\\fffd\u0010%23\\fffd\\fffdl7$\\fffdx\\fffd(Ri\\fffd\\fffd\\fffd\\fffd\\fffd 4\u0013\\fffd 3$\\fffd e\\689V\u0001\\c=.\\fffd\\fffd \\fffd\u0011-j\\fffd\\fffd\u0004`V\\fffdN*\bV\\fffd\\fffd%0A\\\\u5\\fffd\u0019?g%23\u0001o\\fffd\\109\\fffd\\fffd 7\\fffd\\fffd\\fffd%0DoN\u0001\\fffd\\fffd 9\\fffd\\fffdRTr\\fffd\\fffdl`?\\fffd\\fffd\vRa$h+\\fffd*x.\\fffd\bf\\fffd\u0005\\fffdt\u001A\\fffd\\fffd\\fffd\u0003\u0016\u001E\\fffd:\\fffd\\fffd\\fffd\\fffd&/\\fffdKL\\fffdP\\fffd\u001C/S\\fffdg\\fffd-\\fffdza*\\fffd$\\fffdx\\fffdYB-\\fffd.\u0015\\fffd\\fffdR\\fffd\\fffd\\fffd&\\fffd\\fffdq\\fffd\\fffd\\'\\fffd\\fffdl=\u0014\\fffd\\fffd=&S\u0002]\\fffd\\fffd&GDu\\9c%0A+\\fffd\\fffdH1\\fffdG\\fffd:%0D\\fffdt1\\fffdX\\fffdm\u0019e\\fffdu\\fffd\\fffdp\\fffd\\fffd d\\fffd\\fffd\\fffd\\fffd 9\\fffd\\fffd d\\fffd\\fffd%09\u001B,/X\\fffd%0A\\0\\fffd 4b\\fffdMD\\fffd\\fffd{\\fffdyI\\fffd\u0003P\\fffdn\\fffd\\fffd;\u0015\\fffd\u0013\\fffdV%23\\fffd\\'kh}f\\fffdR\\0\\fffd\\fffd\\fffd\\fffd*UR\\fffd\\fffd F\\fffdI\\fffd\\fffd\\fffd\\fffdnVt\\fffd\\fffd(%\\fffdtYR\v\\fffd dj\\fffdYc}2\\fffdJ\u001AK\\fffd\v>\\fffd\\fffd:;~\\fffd\\fffdM\\fffdw\\fffdM\\fffd(\\fffd]-\\fffdX\\fffdUO\\fffd\\1d0\\fffd\\fffd%\u0002`\\fffd\\fffd\\fffd\\fffd\u001A\\fffd\\fffd\u0018j\u000E!\\fffdi\\fffd\\fffd B*\\fffd\\fffd\\fffd\u0011\\a569\\fffd dC\\fffdYa\\fffd\\fffd_\"\\fffd\\fffdy\\fffd\\fffd\\fffd?\\fffdI\\fffdY\\fffd BV\\fffdylaVX\\fffdl\\fffdw)+\\fffd\v\\fffd%23V\\fffd ;8\\fffd(\\21f\\fffdWk\\fffd\\'\\fffd\\fffd\\fffd\\fffd&\\fffd\\fffd+Y\\fffd\\fffd\\fffd\\fffd`F\\fffd\\fffd 3\"\\fffdhFl\u0013\\3ebM&\u0017\\30e!\\fffd\\fffdg\\fffd&@\\fffd\\fffd\\fffd fT\\fffds\u0004X+%09\\fffd 3\\fffdK\\fffdN\\fffd\\fffd|Mh\\fffd\\fffd\\fffd 7\\c\\fffdhq\\fffd\\fffdx\\fffd\\fffd\u0017uE\\fffd\\fffdO\\fffdz\\fffd\\fffd \\c\\426&a&\\fffd%0D\\fffd\\fffdr0\\fffd\\fffd%23T\\fffd%0A\\fffd\\35fi)5\\fffd\\fffd\\fffdk\\fffd\\fffd\\fffd\\fffdN\\fffd%0D\\fffd\\fffd\\fffd\\fffd\\fffd\u0005M\\fffd\\fffd\\fffd\u0004\u0005^^\\fffd 2=\\fffd\\5a2\\fffdMO2\\116%09v1\\fffdT\\fffd a\\fffdzE\\fffdO(\\fffdo\\fffd b\\fffd`\\fffdtX+\b\\fffd\u0006s\\fffdTdkB\\fffd 7\\fffdX\\fffd b!\u0002D\\fffd\\'h\\fffd\\fffd\u0011k\\fffd\\fffd f\\65c\\fffd[\\fffdU\\fffd\\fffdlE\\fffd&f\\fffd dV\\fffd\u0005\\fffd%09\\fffd\\fffd\\fffd EQw\\fffdO\\fffd\\fffd\u0007\\3be)-\u00164\u0014Z4\\3cf\\fffdZq\\fffdi\\fffdZxT\\fffd\u0004vI\\fffdy\\fffd>40>\\fffd\\727\\fffd\\fffd\\fffd\\fffd\"U\\fffd\"\\fffdI\\fffdi\u0013+\\fffd D\\'>\\fffd\\fffd\\fffd\\fffdz[\\fffd 6\\'\\0\\fffd\\fffdW:(\\fffd 4\\fffd DHh\\fffd e\\fffdh\u0012\\fffd\u0018\u0014HmM\\fffd\\fffd 1\\6d8\"\u000F\u0013eO\\fffd\u001E\\fffd\\fffd 7a\\fffd\\fffdI\\fffdZ\\fffdX\\fffd\\fffd\u000Ez\\6e3\\fffd\\fffd 6Y\\fffd-j9\\fffd\\fffdX\\fffd(\\fffdK,\\fffdi\\fffdtq\u0006P\\fffd\u0019\\fffd\\fffd\\fffd 7\\fffd\u000F\\fffd 2U\u0012\\fffd f\\9eu\\fffd\\fffd\\fffdR\\fffd\u0011\\fffd Aj)\\fffd\\\\\\fffd%0D\u0004\\fffd\\fffd\u0006\u0017\\fffd\u000EU\\fffd\\fffd\u0017W\\fffd\\fffd\\fffd\\fffd\\13c\\fffd 6\\fffd e\\fffd\u001C\\fffd BJ\\fffd 4)V\\fffd\\fffd 6\\fffdt2\\fffd\\c b*z\\fffd^t\\fffd\\382\\fffdwJ\\fffd\\fffd\\fffd\\fffd A\\fffd=\\fffd\\fffd\\fffdv\\fffd e-\\fffdWg\\fffd>OfXK\\fffd\\fffdNT\\fffd 9a\\fffd\\fffd\v=\\fffd>\\fffd 4+)LPZ\\fffd\u001D\\fffd\u0006/YetQr\\fffdh\\76ca^\\c\\fffd\\fffdw\\fffd\\fffd\\fffd\\fffd\\fffdWT\\fffd\\fffd\\cX3A\\fffd\u0005\u001D\\fffd f\\fffd(\\fffd 6\\fffd d\\fffd\b9k:Z=&Z\u000Fbe\\fffd\\42b\u0019cbI\\fffd\\fffdSY\u0003\\fffd\\fffdR\\fffd\u0018$d\\fffd*\\fffd<e\\fffd\b&Q\\fffdi\\285\\fffdm\\fffd\\fffd\\fffd\\cQ\\fffdw\\fffd\\74dcN,-\\fffdq\u000F\\fffdW\\fffdz\u0016\\fffdQ\\1e2\u0015\\fffdZ\u001B\\fffd\u0013z\u0006*g\u001D\\fffd,d\u0012&%0A\\fffd\u0004\\0\\fffd 9\u0011\\fffd|\u0002\\fffd\u0016h\\fffd\\2f9`-\\fffd\\fffdU;2\\fffd\u000F\\fffd\\fffd\\fffd\\fffd\\fffd%0D\u0001\\fffd\\fffd\\fffd\u0012\\fffd\\fffd\\fffdkfk7$\v\\fffd\\fffd\b\u0010m3\\fffd fW\\fffd\\fffd dD\\c5\\26f\\fffd\\fffd\\fffd,]\\fffd F\\fffdL%0ADS\\fffdx\\fffdR\\fffd.\\fffd\\fffd\\fffd@\\fffd^G;\\cg\\fffd\\fffd\\fffdJ\\fffd\\fffdZ\\fffd\\fffd\\fffd 5\\fffd\\fffd\\fffd_\u0011(%09\\fffd\\fffd 8O\\443h\\fffd\u0005p\u001C\\fffd_\\424\\fffdl!\\fffd\\fffd c\\fffd{D\\3e2YvO\\fffdSv&tXD\\fffd\u0017%0A%\\fffd)Sm\\fffd\\fffd\u0012E\\fffd\\fffd %23T\u0012m2ao\\fffdty\u0005J^\\fffd E\\fffd\\fffd\\fffd\\fffd,\\0p\\fffd\\fffd[d\\'\\fffd\\fffd\\fffd B\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdG<\\fffd\\fffd\\fffd\\fffdyc*\u0004\\fffd\\fffd\u0002\\fffd 5.&\\fffd\\fffd\\fffd\\fffd*\\fffd\\fa\\fffd.\\fffdN\\fffd\\fffd\\fffdMp\\fffd\\fffd\\fffd\\6b39X\\31fR\\fffdly\\fffd\u0010dA\\fffd\\fffd|\\fffd%0D\\fffd\\fffd 2\\fffd\\fffd\\fffd\\fffd\\fffdw|\\fffd\\fffd\\fffd\\fffd\\878f!\u0015\\fffd\\fffdV@i\u0011%0DV\\59cwFz\\0\\fffdt%\\fffd@\u0003\\fffd 3\\fffd\\fffdl.\u0003\\fffd\\fffd\\fffd}\u0018E\\fffd d\\fffd\\fffd\\fffd,\\fffdyT%0Aj\\fffd\\a612 D\\fffd_\\fffd\\fffd\\fffdX\\fffd\\fffdzQ\\fffd\\fffd%%0A\\fffd\\1be\\fffdX%0D\\fffd%0Ae\\fffd\\fffd\\fffd]\\fffd d\\fffd\bh2\\fffd E\\fffd\\fffd\\fffdL\\fffdpE?\\fffd>\\fffdy\\fffd\\fffd\\468S\\fffd\\fffd\\fffd\\fffd\\fffd EM\\fffd\\fffd}Z\\fffd\\fffd e\\1dd\\fffd d\\fffd\u0006\\fffdz\\fffdPq\\fffd\\fffdH_5\\fffd\\fffd\\fffdj\u0011\\fffdH\\fffd!\\cg\\fffd\\fffd\\fffd\u001F\u001E\\fffd\\fffd%23Q*{\\fffdYD\\fffd\\fffd\\1f7\\fffdMo(`\\fffd\\fffd{\u0012\u001D/\\fffdy\\fffd\\fffd\u000F\\fffd@\\fffd:\\fffd.\\fffd\\268\\fffd d1\u0013\u001E\\fffdJ\\fffdt\\fffd}\\fffdq\u001F\\7e1\u0007N\\fffd\u001A\u0015\u0016\u001A\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd,\u001B-\\fffd\\fffd\v71W\\fffd\v\\fffd\\fffd\\fffd\\fffdO\\fffd\\fffd<\\fffd\\acd3I!a\\fffd\u0017gn\\fffd?\\'\\fffd\\fffd\\fb58i\\fffdp|\u0004\\236\\fffd C\\fffd,\u0004\u0015\\fffd 6\\fffd\\fffd&\\fffdk\\fffd\\fffdU\\fffd\u0019J\\0\u0014\\46c|/\u001D53(\\fffd%0A-\\fffd\\fffd\u000EG\\fffd\u0002\\fffd\\66c\\fffd\\fffd\\fffd$_\\fffd^\\fffd\\fffd.Sn{E\\fffdMZ\\fffd\\\\]P\\fffd B\b\\fffdG\\fffdZ\u0006\\fffd\\fffdJ\\fffd\\fffd\\fffd\\fffdV\u0013\\fffd eBPg\\fffd d%09(\\fffd+\\fffdQ\\fffd\\0\\fffd\\fffd\\fffd\\fffd\\6cc\\fffd\\fffd\\fffd\\fffd D\\fffd\u0014Db\\fffd\\5d4\u000F\\fffd?\\fffd\\fffd!\u0012-\\fffd\\fffd e SQ\\fffd\\fffd\u0013\\fffd 7ZcE\\fffd\\fffd Bs\u0013\\fffd 55Hg\\'M%%09\u00010\\fffd\\fffd\\fffd\\fffd\\fffd-GQ\\fffd)}\u0017e\\12a\\fffd\u001F@\\fffd\\eb68 2[i;\\fffd\\fffd\\fffd\\fffd!\\fffd@\\fffd\\fffd\\'\\fffd \\fffdVDP9he*\\fffd\\0k\\fffdV(YdjI\\fffdX\u001Ep\vn\\fffd\u001Bd\\fffd/\\fffd\\fffd\\fffd\\fffd\\fffd+m\\fffd\\\\$\\fffdy\\fffd\\fffd-\"\\fffd\\fffd@EdR\\fffd\\fffd\u0002g]\\fffd}\\fffd%0AS\\fffd 8\\fffdG\u0019\\764\u0003.\\fffd\\fffd\\fffd\\fffdW\\0\\fffd\\fffd:\\4cb ae\\fffd\\fffd\\fffdm\\fffd\u0013?\\fffd\\fffd%0A\\fffd\u0011eV\\fffd\\7e3 D\\fffd 4\\fffd\u001CXI\u0004\\280\\fffd\\fffd\u0007\\fffd\\fffd\\fffd\\fffd 0/\\fffd\\fffd\\fffd\\fffdPFyr\\fffd\\fffd\\fffd\\445\\fffd\\fffd\\fffd\\fffd/\\fffd\\fffd_h\\fffd\\fffd\u0014Syy\\fffd\\fffd\\fffd\\fffd\u000EtX\u0014\\fffd\\4c2w\\fffd\u0016\\67e!eV\\fffd\\fffdJ\\255\\fffd\\fffd\\fffdJ\\fffd E\\'\\fffd\\fffd.\\fffd\\fffd\u0015\\fffdk*\\fffd\\fffd 2\\fffd 7j\\fffd.\\fffd\u001B\\fffd(\\fffd\\fffd\\fffd\\fffd E\\fffd@\\fffd\\fffd\\fffd\u001Eg|\"+\\fffd\\fffd a\\fffd%0Ag6\\fffd D?\\fffd\\fffdW\\fffd 6\\16c-\\fffd@\\135e\"A\\fffd\\0\\fffd%\\fffd\u0014\\fffd 0ZK\\fffd\\fffdW\\fffd\u001Fdt2\u0013D\\'\"\\fffd\\fffd\\fffd.\\fffdl`\\fffd\\fffd\\fffd\v\\fffd+\\fffd\\fffdl-\\fffdJ\\fffd\\fffdo\\fffd\\fffdW,\\fffd\\fffd+\\fffdlE\\fffdM\\fffdHQ\\fffd\\fffdU5\u0013\\fffd\\fffd\\'\\fffd\u001D\\fffd%0A\\fffdt\\fffd^\\fffd\u0001%0A{\\fffd\\32c e\u001A+\\fffd\v2Z\\c 4\\fffd\\fffd\\fffd_\u001A\\fffd&F\\fffd\\fffd\u0004\\fffd 4\\fffd\\fffd^\\fffd\\fffd\\fffd\\fffd+\u0013HdG\\fffd\\fffd^\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd&\\\\w|\\fffd 6\\fffd;\\fffdu=\\fffd 5\\fffd\\fffd\\fffd\\fffd\u0013=\\fffdJ\\fffd\\fffd\\fffd\\fffdz\\fffd\\fffd\\fffd\\fffd\\fffd\u0013\\fffd\\fffd E\\fffd\\fffd`\u0014\\fffd\\319\\fffd\\fffd>\\fffd F\\fffdr\u0017\u001A\\fffd\\fffd\\fffd\"\\fffd\\fffd\\fffdl%0A\u0010\\fffd\\fffd\\fffd%23\\fffd\\fffd DGU\\8c2a\\fffdT\b.\\fffd%\\fffd\\fffd\\2ba]\u001E\\fffdM\\fffdh\\fffd\u0002\\fffd,J{\\fffd\\fffd 0K\u0011QM}{!\\fffd:\\fffd\\192\\fffdW\\fffd_\\fffd\\fffdP\u001DHe\u0001L\\fffd\\fffdp\\fffdM\\fffd\u0005Q\\fffd\\fffd\u0003\\fffdU\\fffdZ:\\fffd 8g\\fffd|a\\fffd\\fffd\\fffd\\fffd-\\fffd\u000E\\fffd\\fffd)3\\fffd+\u0017\\fffd\\fffd\\fffd\\fffd\\4f6 f\\fffd\\fffdV\\fffd\\fffd\\fffd\\fffd\u0016\\fffd[\\fffd\\fffd\\fffd.\\fffd,\u001A\\fffd\\fffd\\fffd\\fffdMZ\u000ETA\\fffdT\\fffd-/\\fffd db\u0002o\\fffdj\\744\u001F\\fffdq\\fffd\\fffd aAy2c\\c\\fffd\\fffdM\\cR\\fffd D\\fffdl2E\\4a4\\fffd\u0001\\fffd\\fffdi\\fffd\u0005}f\u0005\\fffd\\fffd\\fffd)j\\723\\fffd\u0017\u0003\\fffd\\fffd\\fffd\\fffd\\fffd\u0007\\fffd 1\\fffd\\fffd+~^\\fffd\u001AK\\fffd,\\fffdt)\\fffdR`\\fffd 8\u001F\\fffd\\fffd\\fffd~<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd)5\u0005.\\fffd E\\fffd 9\\fffd\\0\\fffd\\fffd\\fffd\\fffdx%0D=\\fffdY\\fffd\\fffd\\fffd\\fffdP\\fffd\u0013\\fffd b|\\fffd\\fffdW(\\fffd{\\420\\fffdN\\'+b\u0016\\fffd\\fffdm\\fffd\\fffd au\\5b1P\\fffd_\\fffdW{`\\fffd)\\fffd%09\\fffdW5\\fffd\\fffd F\\fffdY\\fffd\\fffd$\\fffd_)\\fffd\\fffd\\fffd=3oy\\fffd\u0006\u0011\\fffd||\\fffd 9\\fffd\\fffdt2\\fffd\u001D\\fffd\\fffd\\fffd\\fffd\"`XD\\fffd\u0005\\fffdKg\\fffdT%23\\4a4\\fffd d\\fffd$[a2oa\\fffd\u0010\\fffd\u001E\\fffd@\\fffdzQD4i3\u001A\\c\\fffdU\\fffd\\fffd\u0016\\fffd e\u0005\\fffd 3\\fffd\u001F\\fffd\\0\\fffd 6\\fffd\\1f3\\fffd eB\\7ae\\fffd<X\u0005t\\fffd\\fffd&4e%:[\\fffd\\fffd C\\\\\b\\fffd>%0A*\u000F!H\u0016\\fffd\u0014\u0001\\fffd}\\fffd e1\u0015\\fffd 1\u0011\\fffd\\fffd|\\fffd\u0018L\\fffd\\fffd\" -(\\fffd_\\fffdu\\fffd\\fffd\\fffd\\fffd dK\\fffd\u0017\\fffd%\\fffd/Pn\\fffd\\fffd\\fffd\\fffd 8\\fffd-Qq\\fffd\\fffdT8\u0003I\u0001\\fffd/\u0001Ae\\fffd\\fffd\\fffd\\fffd\"M\\fffd&\\fffd&\\fffd/\\fffdG\\fffd 3\\fffd:\u001EV\\fffd\\c\\fffdO\\fffd\\fffd\\fffd\\fffd%23\u001Cu\v2\\fffd(ri*L\\fffd\\fffdY\\fffd\\fffd\\fffd\\fffd\\fffd}\\fffd\\fffd\\3d9 b\u0005\u0014+`+g\\fffd\u0005\\fffdM\\fffd\\fffd\\fffd\\fffd-\u0003\\fffd\v2\\fffdX\\fffd\\fffd\\fffd\\750%0D\\fffd\\fffdQk&\\fffd+Wz\\fffd\\fffd\\fffd+\\63dxR\\571\\fffdz\u0012\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u0019\\fffdXV\\fffd*\u001E\\fffd|a\\fffdPx\\fffdSa\\fffd E\\fffdY\\fffd\\fffd 3Z\\fffdP\\fffd\v\\0\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdg\\fffd \\fffd%0D\\fffdK_\u0019\\fffd%F\\fffdhW\\0\\fffd\u0017\u0005|J\\fffd\\fffd\\fffd\\fffd\u0014\\fffd%23\\fffd}e@\\fffd\\fffd\\fffd%0A\\fffd_\u0001\\fffd\\fffd\\fffd\\fffd\\fffd f\\fffd\u0012\\fffd\\fffd\\fffdxi\\fffd\\fffdu\\fffd&\u001A+\\fffd\u0017\\fffduC\\fffd\u0006V\\fffdOG\u0013)8\\fffdJ\\fffd\\fffd\\fffd\\fffd\\fffd 8\\fffd\u0018\u0011\\fffd\\fffdU\\fffdM\\fffd\u0015\\fffd>\\fffd=%090\\fffd\\fffd fc \\fffd\\fffd<\\fffd\\0\\fffd,\\fffdi`\u0015\\b3\\fffd\\fffd f\\fffd\u0015\\fffd\u0017\\fffd\\fffdT\\fffdZ\u0015xU\\fffd\\\\8QK\\'t!\\fffdJ\\fffd\u0016D\\fffdH\\\\\\fffd\\fffd\\fffd.+)\\fffd\\fffd\\fffd\\fffd\u0011l\u0005@\u0015\\fffd\\\\\\fffd\\fffd\b\"\\fffd\u0001b\\fffd dW\\681^\\fffd\\fffd\\7b8H8\u001A\\fffd\\fffd\\fffd\\fffdQh!B\\569p\u0006\u0018\u0013S\\fffd\u0016\u0007\\fffdV\"Bpu\\fffd\u0006/\\fffd\\fffdV(\\fffd\\fffd}\\fffd\u0017`%09\\fffd\u0013\\fffd\\fffd\\fffd\\fffd\\fffd 2$\\fffd\\fffd\u0019\\0 c*\\\\LC3:{gP\\fffdN\\0iJ\\fffd\\fffd\u0002\\fffd\u0015\\fffd\\fffd\\fffd@\\fffd]\u0004t\\fffdZ\\fffd@\\fffd\\fffd\u0005\\fffd\\fffd\u0013T z\\fffd\\fffd\\fffd\u0014\\\\\\fffd\\fffd 5=\\fffd\u0014\\fffdR\\fffd\\fffd{\\fffd\\fffd!\\fffd|\\fffd\\fffdIy%b\\fffdV\\fffd\\fffd=\\fffd\u0012\\563\\fffd\\fffd)\\fffd\\fffd\\fffd\\fffd;Sd\u00149\\fffd\\b4\\fffd\\fffdUp-\\fffd\\fffd\\fffdg%0D\\fffd*\\fffd^y>\u0001\\fffdg_\\fffd/]\\fffdo\\fffd]K\\fffd\\fffd\u001CX\u0005\\fffdK\\fffd\u0006McU\\fffd\\fffdQW\\fffd\\fffd{f\u0003\\fffd\\fffd\\fffd\"\\fffd(L\\fffd\\fffd|\\fffd\u000E\\fffd\\fffdlN\\fffdhsq\\2f6 7\u0001:\\fffdX\\fffd.x\\fffd\\fffd\u0011\\fffd %0A\\fffd\\fffdk\\fffdw\\fffd f\\fffdM2\\fffd}h\\fffd\\fffdlQ\\fffd\\ce6dR\\fffd*(\u0017\\fffdz\\fffd\\'w\\fffd 0K\\fffd<\\fffd 2\\fffd b\\fffd\\fffd\\fffdU>Wz\\fffd\\fffd\\fffdPUw\\fffd\\fffd\u0006\\fffd\\fffd\\fffd\\fffd\\fffdM\\464\\fffd\\fffd*W[\\fffd*MN\\fffd\\fffd\\fffdW\\fffdX*\\fffd\u0005\u0017\\fffd\\fffd\u0002\\fffd\\fffd\\fffd\\568\\fffd\\fffdS\u001E\\fffdJ\\fffd:-n\\fffd\\526\\fffd\\fffdT}M|\\fffdW\\fffdSy%0D\\fffd\\fffd%j\u0004\\fffdM\u0017\u001C\\fffd\\fffd\\fffd\\0 D\u0019p\\fffd\\fffd\\fffdt|*\u0017\\20b6\u001A\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\\\\u0001\\fffd\\fffdh\\fffd\\fffd,\\c\\fffd\\fffd\\fffdT8\u0001\\fffd\\fffd)\\fffd@+\\fffd\\fffd/_4+\\0\\fffd\\\\\\fffd\u0005\\0\\fffd b7\\fffdi\\fffdZ8\\fffd\\fffd\\'=;q\\fffd;\\fffd\\fffd\\fffd\\fffd\\fffdYuP\v\u0005\\fffd\\fffd\\fffdjuLVAN\\fffd^5\\fffd\\fffd<V\\1ab\\37c\u0018\\fffd\\488\\fffd%0A\\fffd\u0015\\fffdQ&g\\fffd 0 \\fffd\\0Z~\\fffd\\fffd\vT\by_\\fffd\\fffd\\fffd\\fffd\\fffd\u0010\\fffd<\\fffd\\fffdW*\\fffd]\\fffd%23eV\\fffd\\fffdm\\fffd\\fffd\u0019\\fffdvq\\5f3m\\fffd 6c\\fffd]|\\fffd a\u0001\\fffd\\fffd\\fffd\\fffd\\fffdm\\fffd\\fffd\\'\\fffdx\\fffd|\\fffd 9\\fffd\\fffd\\fffd$RD\\fffd d\\fffdM\\fffd D\\fffd e\\fffd+\\fffd\\fffd\\fffdO\"Pd%09\\fffd\u001AVe\\fffd\\\\\\fffdq\u0012\\fffd\\fffd\\fffd\\fffd\\fffdjoQ\\fffdSI\\fffd\\fffd\\fffdO\\656xN+\u0011\\fffd\u001C\\fffd\\fffd\\fffd fQ\\fffdN\\fffdU\\fffd\u0005`(\\fffd\\fffd\\fffdzw\\fffd*W\\fffd 96\\fffd\\fffd.^h\\fffd c\\fffd\\fffd\\fffdL\\fffd 5\u0019\\fffd\\fffd\\fffd 7\u0006\\fffd]0\\fffd\u000E\\fffdR\u000Fz\\fffd\\fffd\\\\\\fffd\\fffd\\fffd d:\\fffd%0A\\fffd\\3f8\u0010\u0017.\\fffdx2\\fffd\\fffd\\0\\fffd\\fffdU\\fffdg\u0002\\a5}^\\0k+\u0002z\\fffd\\fffd\"wj\\fffdV\\'F,\\0\\fffd%0A\u0017\\fffd\\fffd>\\fffd\\fffd]\\fffd?\v\u0014\\fffd\\fffdU9a\\fffdh\\fffd)\u0003\\fffdx\\fffd\\fffd\\fffd\\fffd\\2f1%0A\\fffd\\fffd\u0002`\\fffdL-j\\fffd\\fffdX\u0019\\fffdO\u001B\\fffd*\u001D\\fffdy\\fffdV.\\b7\\fffdj\u0005\\fffd+\u0011\\fffd\\771\\fffd\\fffd\\fffd\\fffd\u0005\\fffd\\fffd\\fffd+\\fffd\\fffd\\fffd\\fffd\\c\\fffd%0A@\\fffdyO\v,\\fffd\\fffd\\5ac\\fffdo\\fffdX\u0001Fh{\\fffdx\u0001\\fffd\\fffd%0A\\fffd\u0001\\fffd+\\'\\fffdj\\fffd\u0017\\fffd\\fffdW\\fffd\\217\\fffd\\fffdj\\fffd\\fffd\\fffd\\fffd\u0019\u0017\\4bb\\fffdl\u0001\\fffd 9\u0015~\u0012\\fffdV\\fffd\\fffd\\fffd\u001D\\fffd\\fffd\u001C\\fffd 7\\fffd\\fffdgH\\fffd\\fffd\\fffd\\1548\\fffdI\\470\u000E,Z\\fffd\\fffd\\fffd\\fffdW\u0006Z\\fffd\\fffdr\\fffd@\\fffd\\fffd\\fffd>\\fffd\\fffd\\fffd\\141m+\\fffd\\fffd d|>=\\fffd\\fffd\u0004@z\\fffdsg\\fffdj_\\fffd%0D\\fffdW\\fffd+I\\fffd\\fffd\\fffd\\fffd\\fffdW\\fffd 1\\fffd\\fffd\\fffd\\fffd\\fffdl3\u0015?\\fffd}\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\u001B\u0006\\fffd\\fffd\\fffd\u0003HW\\fffd\\fffdK\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd~>\\fffd\\fffd_\\fffdo\\0\\fffdx=)\\fffd\\fffd{z\\0\\0\\0\\0IEND\\fffd B`\\fffd') no-repeat left top}.p-colorpicker-panel .p-colorpicker-hue{background:transparent url(\"data:image/png,\\fffdPNG%0D%0A\u001A%0A\\0\\0\\0%0DIHDR\\0\\0\\0\u0011\\0\\0\\0\\fffd\b\u0002\\0\\0\\0\\fffd\\fffd\\fffd\\fffd\\0\\0\\0\\fffdIDATX\\fffd\\fffdQ%0A\\fffd@\\c D\\fffd\\456\\fffd\\fffdz\u0005\\fffd%?<D\\fffd\u0015EK\\fffd\\fffdIA\\fffd\u0012\\fffd\\fffd!y\\fffd\\fffd$,\\fffd~\\fffd_\\fffd\\fffd\\fffd\\fffd\\fffdr\\fffdoE\\fffdI \\fffd 2z\\fffd\\fffd\btb\\fffd\\fffd 9\\fffd%Nmg\u0010<\\fffd c\\fffd\\d0c7*\u0016@\\fffd\\253\u0001U\\\\\\fffd \\fffd 1\\fffd\\a4f\\fffd\\fffd\u000E\\fffd\u0004\\fffd{\\fffd\\fffd\\fffd*\\fffd-\u001E\\fffd\\fffd 5\\fffd\\fffd\u0005\\fffd'x\\fffd\\fffd\\109\\fffd\u0006O\u0002q?TQ_\u000F2\\fffd\u0016_\b\\fffd[\\fffd 1\\fffdU<W\\fffd Am<\\fffdk\u001A<\\fffd\\7dc\\fffd)\\fffd C\u0015\\fffd\\62e\u0013@\\fffd]\\fffd<\\fffd(\u0001\\fffd\\fffd\u0015<\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffd\\fffdr\\7da%0D\\fffd\\fffd\\fffdk\\fffdG\\fffd\\c\\fffd 4\\fffd\\fffdx\\fffd\\fffd A\\fffd+\\fffd\\fffd\\fffd DM\u001D\\fffd\\fffd\\fffdS\\fffd 6+*{\\fffd\u0005\\fffd FbV0\\fffd\u001C%\\0\\0\\0\\0IEND\\fffd B`\\fffd\") no-repeat left top}@layer primeng{.p-inputtext{margin:0}.p-fluid .p-inputtext{width:100%}.p-inputgroup{display:flex;align-items:stretch;width:100%}.p-inputgroup-addon{display:flex;align-items:center;justify-content:center}.p-inputgroup .p-float-label{display:flex;align-items:stretch;width:100%}.p-inputgroup .p-inputtext,.p-fluid .p-inputgroup .p-inputtext,.p-inputgroup .p-inputwrapper,.p-inputgroup .p-inputwrapper>.p-component{flex:1 1 auto;width:1%}.p-float-label{display:block;position:relative}.p-float-label label{position:absolute;pointer-events:none;top:50%;margin-top:-.5rem;transition-property:all;transition-timing-function:ease;line-height:1}.p-float-label textarea~label{top:1rem}.p-float-label input:focus~label,.p-float-label input.p-filled~label,.p-float-label textarea:focus~label,.p-float-label textarea.p-filled~label,.p-float-label .p-inputwrapper-focus~label,.p-float-label .p-inputwrapper-filled~label{top:-.75rem;font-size:12px}.p-float-label .input:-webkit-autofill~label{top:-20px;font-size:12px}.p-float-label .p-placeholder,.p-float-label input::placeholder,.p-float-label .p-inputtext::placeholder{opacity:0;transition-property:all;transition-timing-function:ease}.p-float-label .p-focus .p-placeholder,.p-float-label input:focus::placeholder,.p-float-label .p-inputtext:focus::placeholder{opacity:1;transition-property:all;transition-timing-function:ease}.p-input-icon-left,.p-input-icon-right{position:relative;display:inline-block}.p-input-icon-left>i,.p-input-icon-left>.p-icon-wrapper,.p-input-icon-right>i,.p-input-icon-right>.p-icon-wrapper{position:absolute;top:50%;margin-top:-.5rem}.p-fluid .p-input-icon-left,.p-fluid .p-input-icon-right{display:block;width:100%}}@layer primeng{.p-inputtextarea-resizable{overflow:hidden;resize:none}.p-fluid .p-inputtextarea{width:100%}}@layer primeng{.p-password{position:relative;display:inline-flex}.p-password-panel{position:absolute;top:0;left:0}.p-password .p-password-panel{min-width:100%}.p-password-meter{height:10px}.p-password-strength{height:100%;width:0;transition:width 1s ease-in-out}.p-fluid .p-password{display:flex}.p-password-input::-ms-reveal,.p-password-input::-ms-clear{display:none}.p-password-clear-icon{position:absolute;top:50%;margin-top:-.5rem;cursor:pointer}.p-password .p-icon{cursor:pointer}.p-password-clearable.p-password-mask .p-password-clear-icon{margin-top:unset}.p-password-clearable{position:relative}}@layer primeng{.p-radiobutton{display:inline-flex;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:bottom;position:relative}.p-radiobutton-box{display:flex;justify-content:center;align-items:center}.p-radiobutton-icon{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0) scale(.1);border-radius:50%;visibility:hidden}.p-radiobutton-box.p-highlight .p-radiobutton-icon{transform:translateZ(0) scale(1);visibility:visible}p-radiobutton{display:inline-flex;vertical-align:bottom;align-items:center}.p-radiobutton-label{line-height:1}}@layer primeng{.p-ripple{overflow:hidden;position:relative}.p-ink{display:block;position:absolute;background:#ffffff80;border-radius:100%;transform:scale(0)}.p-ink-active{animation:ripple .4s linear}.p-ripple-disabled .p-ink{display:none!important}}@keyframes ripple{to{opacity:0;transform:scale(2.5)}}@layer primeng{.p-tooltip{position:absolute;display:none;padding:.25em .5rem;max-width:12.5rem;pointer-events:none}.p-tooltip.p-tooltip-right,.p-tooltip.p-tooltip-left{padding:0 .25rem}.p-tooltip.p-tooltip-top,.p-tooltip.p-tooltip-bottom{padding:.25em 0}.p-tooltip .p-tooltip-text{white-space:pre-line;word-break:break-word}.p-tooltip-arrow{scale:2;position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.p-tooltip-right .p-tooltip-arrow{top:50%;left:0;margin-top:-.25rem;border-width:.25em .25em .25em 0}.p-tooltip-left .p-tooltip-arrow{top:50%;right:0;margin-top:-.25rem;border-width:.25em 0 .25em .25rem}.p-tooltip.p-tooltip-top{padding:.25em 0}.p-tooltip-top .p-tooltip-arrow{bottom:0;left:50%;margin-left:-.25rem;border-width:.25em .25em 0}.p-tooltip-bottom .p-tooltip-arrow{top:0;left:50%;margin-left:-.25rem;border-width:0 .25em .25rem}}.customDialogClass .p-dialog{height:auto}.customDialogClass .p-dialog-header{padding:.8rem .55rem!important;background-color:#fff!important}.customDialogClass .p-dialog-header-close-icon{color:#000!important}.customDialogClass .p-dialog-content{border-top-left-radius:0%;padding:0}.p-dialog .p-dialog-header{background-color:#fff!important;border-bottom:2px solid #e5e7eb;padding:12px 16px;font-weight:700;font-size:1rem;display:flex;align-items:center;justify-content:space-between}.p-dialog-mask{background:#00000080!important}.p-dialog .p-dialog-content{background-color:#fff;padding:16px}.p-dialog .p-dialog-footer{background-color:#f3f4f6;padding:12px 16px;border-top:2px solid #e5e7eb}.p-dialog .p-dialog-content::-webkit-scrollbar{width:8px}.p-dialog .p-dialog-content::-webkit-scrollbar-track{background-color:#f1f1f1}.p-dialog .p-dialog-content::-webkit-scrollbar-thumb{background-color:#faa762;border-radius:10px}.p-dialog .p-dialog-content::-webkit-scrollbar-thumb:hover{background-color:#faa762}.custom-save-button{background-color:#faa762!important;color:#fff!important;border:1px solid #FAA762!important}.custom-save-button:hover{background-color:#e59550!important;border-color:#e59550!important}.form__input{width:100%;padding:8px;border:1px solid #ccc;border-radius:5px}label{font-size:14px;font-weight:600;margin-bottom:5px}.button-group{display:flex;justify-content:flex-end;gap:10px;padding-top:1rem}button{padding:8px 12px;border:none;border-radius:5px;cursor:pointer}.cancel{background:#ccc;color:#000}.save{background:#007bff;color:#fff}button:hover{opacity:.8}.card-width{width:295px!important;flex-shrink:0}.justify-end{justify-content:end}.card-height{max-height:300px;overflow:scroll}.option-card{border:1px solid grey;padding:26px;border-radius:10px}.custom-margin{margin:10px}\n"] }]
226
241
  }], ctorParameters: () => [{ type: i1$1.FormBuilder }], propDecorators: { visible: [{
227
242
  type: Input
228
243
  }], configs: [{
@@ -309,9 +324,8 @@ class DynamicTableComponent extends FxBaseComponent {
309
324
  this.parseUrls(item[fileHeaderName], index, dynamicTableValues?.columns);
310
325
  }
311
326
  });
312
- console.log("uploadedImages", this.uploadedImages);
313
- console.log("dynamictable", dynamicTableValues);
314
- this.tableConfig = dynamicTableValues;
327
+ this.tableConfig = this.initializeCheckboxDefaults(dynamicTableValues);
328
+ // this.tableConfig = dynamicTableValues;
315
329
  this.fxData.value = this.tableConfig;
316
330
  // this.tableFormControl.reset();
317
331
  // this.tableFormControl.setValue(this.tableConfig);
@@ -408,7 +422,12 @@ class DynamicTableComponent extends FxBaseComponent {
408
422
  labelKey: col?.labelKey,
409
423
  className: col?.className,
410
424
  apiKey: col?.apiKey,
411
- isMultiselect: col?.isMultiselect
425
+ isMultiselect: col?.isMultiselect,
426
+ checkedValue: col?.checkedValue,
427
+ unCheckedValue: col?.unCheckedValue,
428
+ checkBoxLabel: col?.checkBoxLabel,
429
+ isRequired: col?.isRequired,
430
+ errorMessage: col?.errorMessage
412
431
  };
413
432
  });
414
433
  if (!event?.enableAPI) {
@@ -437,6 +456,7 @@ class DynamicTableComponent extends FxBaseComponent {
437
456
  rows: []
438
457
  };
439
458
  }
459
+ this.tableConfig = this.initializeCheckboxDefaults(this.tableConfig);
440
460
  this.tableConfig.generalValues = this.generalValues;
441
461
  this.fxData.value = this.tableConfig;
442
462
  this.tableFormControl.reset();
@@ -567,16 +587,30 @@ class DynamicTableComponent extends FxBaseComponent {
567
587
  }
568
588
  });
569
589
  }
590
+ onCheckboxChange(event, row, column) {
591
+ const input = event.target;
592
+ row[column.header] = input.checked ? column.checkedValue : column.unCheckedValue;
593
+ }
594
+ initializeCheckboxDefaults(tableData) {
595
+ tableData.rows.forEach((row) => {
596
+ tableData.columns.forEach((column) => {
597
+ if (column.cellType === 'checkbox' && column.unCheckedValue) {
598
+ row[column.header] = column.unCheckedValue;
599
+ }
600
+ });
601
+ });
602
+ return tableData;
603
+ }
570
604
  ngOnDestroy() {
571
605
  this.destroy$.next(true);
572
606
  this.destroy$.complete();
573
607
  }
574
608
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicTableComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: FxBuilderWrapperService }], target: i0.ɵɵFactoryTarget.Component });
575
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DynamicTableComponent, isStandalone: true, selector: "fx-dynamic-table", inputs: { tableRows: "tableRows", previewType: "previewType", tableConfig: "tableConfig" }, usesInheritance: true, ngImport: i0, template: "<fx-settings-panel [fxData]=\"fxData\" [tableData]=\"fxData\" (configuration)=\"onChangeConfiguration($event)\">\r\n <div *ngIf=\"fxData\">\r\n <table style=\"width: 100%;\" class=\"formBuilder_dynamic_table\">\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let column of tableConfig.columns\">{{ column.header }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of tableConfig.rows; let rowIndex = index\">\r\n <td *ngFor=\"let column of tableConfig.columns\">\r\n <ng-container [ngSwitch]=\"column.cellType\">\r\n <span [class]=\"column?.className\" *ngSwitchCase=\"'text'\">{{row[column.header]}}</span>\r\n \r\n <input [class]=\"column?.className\" *ngSwitchCase=\"'input-text'\" type=\"text\" [placeholder]=\"column?.placeholder\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <input [class]=\"column?.className\" *ngSwitchCase=\"'input-number'\" type=\"number\" [placeholder]=\"column?.placeholder\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <select [class]=\"column?.className\" *ngSwitchCase=\"'dropdown'\"\r\n [(ngModel)]=\"row[column.header]\">\r\n \r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of column?.options\" [value]=\"option?.optionValue\"> \r\n {{ option?.optionName }}\r\n </option>\r\n </select>\r\n \r\n <!-- <select [class]=\"column?.className\" style=\"width: 60%;\" *ngSwitchCase=\"'smart-dropdown'\"\r\n [(ngModel)]=\"row[column.header]\">\r\n <option value=\"\">Select {{column.header}}</option>\r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of smartDropdownOptions[column.header]\" [value]=\"option?.value\">\r\n {{option?.name }}\r\n </option>\r\n </select> -->\r\n \r\n <!-- <p-multiSelect [options]=\"smartDropdownOptions[column.header]\" [(ngModel)]=\"row[column.header]\" optionLabel=\"name\" optionValue=\"value\" placeholder=\"Select Cities\" *ngSwitchCase=\"'smart-dropdown'\"/> -->\r\n\r\n <!-- smart-dropdown handling -->\r\n <ng-container *ngSwitchCase=\"'smart-dropdown'\">\r\n\r\n <!-- Regular dropdown if isMultiselect is false or not set -->\r\n <select *ngIf=\"!column?.isMultiselect\" [class]=\"column?.className\" style=\"width: 60%;\"\r\n [(ngModel)]=\"row[column.header]\">\r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of smartDropdownOptions[column.header]\" [value]=\"option?.value\">\r\n {{ option?.name }}\r\n </option>\r\n </select>\r\n\r\n <!-- PrimeNG multiselect if isMultiselect is true -->\r\n <p-multiSelect *ngIf=\"column?.isMultiselect\" [options]=\"smartDropdownOptions[column.header]\"\r\n [(ngModel)]=\"row[column.header]\" [class]=\"column?.className\" optionLabel=\"name\" optionValue=\"value\"\r\n [placeholder]=\"column.placeholder || ('Select ' + column.header)\">\r\n </p-multiSelect>\r\n\r\n </ng-container>\r\n\r\n \r\n <input [class]=\"column?.className\" *ngSwitchCase=\"'checkbox'\" type=\"checkbox\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <input name=\"radio-{{rowIndex}}\" [class]=\"column?.className\" *ngSwitchCase=\"'radio'\" type=\"radio\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <div [class]=\"column?.className\" style=\"display: flex; justify-content: center; gap: 10px;\"\r\n *ngSwitchCase=\"'radio-group'\">\r\n <label *ngFor=\"let option of column.options\">\r\n <input name=\"radio-group-{{rowIndex}}\" type=\"radio\" [value]=\"option?.optionName\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n {{ option?.optionName }}\r\n </label>\r\n </div>\r\n \r\n <ng-container *ngSwitchCase=\"'file-upload'\">\r\n <!-- <div style=\"display: flex; flex-direction: column; align-items: end;justify-content: end;\">\r\n <img width=\"100\" *ngIf=\"uploadedImages?.[rowIndex]?.['result']\" [src]=\"uploadedImages[rowIndex]?.['result']\"\r\n alt=\"Uploaded Image\" (click)=\"deleteFile(uploadedImages[rowIndex], rowIndex)\"/>\r\n <input [class]=\"column?.className\" type=\"file\" name=\"file\" #uploadFile hidden multiple\r\n (change)=\"uploadImage($event, rowIndex)\" />\r\n <button (click)=\"uploadFile.click()\">Upload</button>\r\n </div> -->\r\n <!-- <div class=\"flex flex-col items-end justify-end relative\">\r\n <div class=\"relative\">\r\n <img \r\n width=\"100\" \r\n *ngIf=\"uploadedImages?.[rowIndex]?.['result']\" \r\n [src]=\"uploadedImages[rowIndex]?.['result']\"\r\n alt=\"Uploaded Image\"\r\n class=\"rounded shadow\"\r\n />\r\n <button \r\n *ngIf=\"uploadedImages?.[rowIndex]?.['result']\"\r\n (click)=\"deleteFile(uploadedImages[rowIndex], rowIndex)\" \r\n class=\"absolute top-0 right-0 text-white rounded-md w-5 h-5 flex items-center justify-center shadow-lg hover:bg-red-600\"\r\n >\r\n \u274C\r\n </button>\r\n </div>\r\n \r\n <input \r\n [class]=\"column?.className\" \r\n type=\"file\" \r\n name=\"file\" \r\n #uploadFile \r\n hidden \r\n multiple\r\n (change)=\"uploadImage($event, rowIndex)\" \r\n />\r\n \r\n <button (click)=\"uploadFile.click()\" class=\"mt-2 bg-blue-500 text-white px-3 py-1 rounded hover:bg-blue-600\">\r\n Upload\r\n </button>\r\n </div> -->\r\n\r\n <div class=\"flex flex-col items-end justify-end relative\">\r\n <div class=\"flex gap-2 flex-wrap\">\r\n <div \r\n class=\"relative\" \r\n *ngFor=\"let image of uploadedImages?.[rowIndex]; let i = index\"\r\n >\r\n <img \r\n width=\"100\" \r\n [src]=\"image?.result\"\r\n alt=\"Uploaded Image\"\r\n class=\"rounded shadow\"\r\n />\r\n <button \r\n (click)=\"deleteFile(rowIndex, i)\" \r\n class=\"absolute top-0 right-0 text-white rounded-md w-5 h-5 flex items-center justify-center shadow-lg hover:bg-red-600\"\r\n >\r\n \u274C\r\n </button>\r\n </div>\r\n </div>\r\n \r\n <input \r\n [class]=\"column?.className\" \r\n type=\"file\" \r\n name=\"file\" \r\n #uploadFile \r\n hidden \r\n multiple\r\n (change)=\"uploadImage($event, rowIndex)\" \r\n />\r\n \r\n <button \r\n (click)=\"uploadFile.click()\" \r\n class=\"mt-2 bg-blue-500 text-white px-3 py-1 rounded hover:bg-blue-600\"\r\n >\r\n Upload\r\n </button>\r\n </div>\r\n \r\n \r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'textarea'\">\r\n <textarea [class]=\"column?.className\" name=\"\" id=\"\" cols=\"30\" rows=\"2\" [placeholder]=\"column?.placeholder\"></textarea>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n</fx-settings-panel>", styles: ["@import\"https://unpkg.com/primeng@17.18.10/resources/themes/lara-light-blue/theme.css\";@import\"https://unpkg.com/primeng@17.18.10/resources/primeng.min.css\";@import\"https://unpkg.com/primeicons@6.0.0/primeicons.css\";.formBuilder_dynamic_table{border:.6px solid #ccc}.formBuilder_dynamic_table>thead>tr{background-color:#4682b4;color:#fff}.formBuilder_dynamic_table>thead>tr>th{font-weight:400!important;padding:.25rem .55rem;font-size:.875rem;text-align:left}.formBuilder_dynamic_table>tbody>tr:nth-child(odd){background-color:#fff}.formBuilder_dynamic_table>tbody>tr:nth-child(2n){background-color:#f6f6f6}.formBuilder_dynamic_table>tbody>tr>td{text-align:left;padding:.25rem .55rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$1.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: SettingsPanelComponent, selector: "fx-settings-panel", inputs: ["tableData"], outputs: ["configuration"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i4$1.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "ngmodule", type: InputNumberModule }, { kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: DropdownModule }] });
609
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DynamicTableComponent, isStandalone: true, selector: "fx-dynamic-table", inputs: { tableRows: "tableRows", previewType: "previewType", tableConfig: "tableConfig" }, usesInheritance: true, ngImport: i0, template: "<fx-settings-panel [fxData]=\"fxData\" [tableData]=\"fxData\" (configuration)=\"onChangeConfiguration($event)\">\r\n <div *ngIf=\"fxData\">\r\n <table style=\"width: 100%;\" class=\"formBuilder_dynamic_table\">\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let column of tableConfig.columns\">{{ column.header }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of tableConfig.rows; let rowIndex = index\">\r\n <td *ngFor=\"let column of tableConfig.columns\">\r\n <ng-container [ngSwitch]=\"column.cellType\">\r\n <span [class]=\"column?.className\" *ngSwitchCase=\"'text'\">{{row[column.header]}}</span>\r\n \r\n <!-- <input [class]=\"column?.className\" *ngSwitchCase=\"'input-text'\" type=\"text\" [placeholder]=\"column?.placeholder\"\r\n [(ngModel)]=\"row[column.header]\" /> -->\r\n\r\n <ng-container *ngSwitchCase=\"'input-text'\">\r\n <input\r\n [class]=\"column?.className\"\r\n type=\"text\"\r\n [placeholder]=\"column?.placeholder\"\r\n [(ngModel)]=\"row[column.header]\"\r\n [required]=\"column?.isRequired\"\r\n #model=\"ngModel\"\r\n />\r\n \r\n <div\r\n *ngIf=\"column?.isRequired && model.invalid && model.touched\"\r\n class=\"text-red-500 text-sm mt-1\"\r\n >\r\n {{ column?.errorMessage }}\r\n </div>\r\n </ng-container>\r\n \r\n\r\n \r\n <input [class]=\"column?.className\" *ngSwitchCase=\"'input-number'\" type=\"number\" [placeholder]=\"column?.placeholder\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <select [class]=\"column?.className\" *ngSwitchCase=\"'dropdown'\"\r\n [(ngModel)]=\"row[column.header]\">\r\n \r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of column?.options\" [value]=\"option?.optionValue\"> \r\n {{ option?.optionName }}\r\n </option>\r\n </select>\r\n \r\n <!-- <select [class]=\"column?.className\" style=\"width: 60%;\" *ngSwitchCase=\"'smart-dropdown'\"\r\n [(ngModel)]=\"row[column.header]\">\r\n <option value=\"\">Select {{column.header}}</option>\r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of smartDropdownOptions[column.header]\" [value]=\"option?.value\">\r\n {{option?.name }}\r\n </option>\r\n </select> -->\r\n \r\n <!-- <p-multiSelect [options]=\"smartDropdownOptions[column.header]\" [(ngModel)]=\"row[column.header]\" optionLabel=\"name\" optionValue=\"value\" placeholder=\"Select Cities\" *ngSwitchCase=\"'smart-dropdown'\"/> -->\r\n\r\n <!-- smart-dropdown handling -->\r\n <ng-container *ngSwitchCase=\"'smart-dropdown'\">\r\n\r\n <!-- Regular dropdown if isMultiselect is false or not set -->\r\n <select *ngIf=\"!column?.isMultiselect\" [class]=\"column?.className\" style=\"width: 60%;\"\r\n [(ngModel)]=\"row[column.header]\">\r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of smartDropdownOptions[column.header]\" [value]=\"option?.value\">\r\n {{ option?.name }}\r\n </option>\r\n </select>\r\n\r\n <!-- PrimeNG multiselect if isMultiselect is true -->\r\n <p-multiSelect *ngIf=\"column?.isMultiselect\" [options]=\"smartDropdownOptions[column.header]\"\r\n [(ngModel)]=\"row[column.header]\" [class]=\"column?.className\" optionLabel=\"name\" optionValue=\"value\"\r\n [placeholder]=\"column.placeholder || ('Select ' + column.header)\">\r\n <ng-template pTemplate=\"dropdownicon\">\r\n <div class=\"flex align-items-center dd_down_icon\">\r\n <span class=\"pi pi-angle-down text-xl\"></span>\r\n </div>\r\n </ng-template>\r\n </p-multiSelect>\r\n\r\n </ng-container>\r\n\r\n \r\n <!-- <input [class]=\"column?.className\" *ngSwitchCase=\"'checkbox'\" type=\"checkbox\"\r\n [(ngModel)]=\"row[column.header]\" /> -->\r\n <ng-container *ngSwitchCase=\"'checkbox'\">\r\n <label [class]=\"column?.className\" class=\"inline-flex items-center gap-2\">\r\n <input\r\n type=\"checkbox\"\r\n [checked]=\"row[column.header] === column.checkedValue\"\r\n (change)=\"onCheckboxChange($event, row, column)\"\r\n />\r\n {{ column?.checkBoxLabel || '' }}\r\n </label>\r\n </ng-container>\r\n \r\n \r\n \r\n <input name=\"radio-{{rowIndex}}\" [class]=\"column?.className\" *ngSwitchCase=\"'radio'\" type=\"radio\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <div [class]=\"column?.className\" style=\"display: flex; justify-content: center; gap: 10px;\"\r\n *ngSwitchCase=\"'radio-group'\">\r\n <label *ngFor=\"let option of column.options\">\r\n <input name=\"radio-group-{{rowIndex}}\" type=\"radio\" [value]=\"option?.optionName\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n {{ option?.optionName }}\r\n </label>\r\n </div>\r\n \r\n <!-- <ng-container *ngSwitchCase=\"'file-upload'\">\r\n \r\n\r\n <div class=\"flex flex-col items-end justify-end relative\">\r\n <div class=\"flex gap-2 flex-wrap\">\r\n <div \r\n class=\"relative\" \r\n *ngFor=\"let image of uploadedImages?.[rowIndex]; let i = index\"\r\n >\r\n <img \r\n width=\"100\" \r\n [src]=\"image?.result\"\r\n alt=\"Uploaded Image\"\r\n class=\"rounded shadow\"\r\n />\r\n <button \r\n (click)=\"deleteFile(rowIndex, i)\" \r\n class=\"absolute top-0 right-0 text-white rounded-md w-5 h-5 flex items-center justify-center shadow-lg hover:bg-red-600\"\r\n >\r\n \u274C\r\n </button>\r\n </div>\r\n </div>\r\n \r\n <input \r\n [class]=\"column?.className\" \r\n type=\"file\" \r\n name=\"file\" \r\n #uploadFile \r\n hidden \r\n multiple\r\n (change)=\"uploadImage($event, rowIndex)\" \r\n />\r\n \r\n <button \r\n (click)=\"uploadFile.click()\" \r\n class=\"mt-2 bg-blue-500 text-white px-3 py-1 rounded hover:bg-blue-600\"\r\n >\r\n Upload\r\n </button>\r\n </div>\r\n \r\n \r\n </ng-container> -->\r\n \r\n <ng-container *ngSwitchCase=\"'file-upload'\">\r\n <div class=\"flex items-center justify-end relative gap-4 flex-wrap\">\r\n <div class=\"flex gap-2 flex-wrap\">\r\n <div class=\"relative\" *ngFor=\"let image of uploadedImages?.[rowIndex]; let i = index\">\r\n <img width=\"100\" height=\"80\" [src]=\"image?.result\" alt=\"Uploaded Image\" class=\"rounded shadow orientation\" />\r\n <a (click)=\"deleteFile(rowIndex, i)\"\r\n class=\"absolute top-0 right-0 text-white rounded-md w-5 h-5 flex items-center justify-center cursor-pointer\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_6837_29683)\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"#F3A041\" />\r\n <mask id=\"mask0_6837_29683\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"4\" y=\"4\"\r\n width=\"24\" height=\"24\">\r\n <rect x=\"4\" y=\"4\" width=\"24\" height=\"24\" fill=\"#D9D9D9\" />\r\n </mask>\r\n <g mask=\"url(#mask0_6837_29683)\">\r\n <path\r\n d=\"M8.2045 8.99815L5.81802 6.61167L6.61351 5.81617L9 8.20266L11.3865 5.81617L12.182 6.61167L9.7955 8.99815L12.182 11.3846L11.3865 12.1801L9 9.79365L6.61351 12.1801L5.81802 11.3846L8.2045 8.99815Z\"\r\n fill=\"white\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_6837_29683\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </a>\r\n </div>\r\n </div>\r\n \r\n <input [class]=\"column?.className\" type=\"file\" name=\"file\" #uploadFile hidden multiple\r\n (change)=\"uploadImage($event, rowIndex)\" />\r\n <div class=\"flex flex-col justify-center items-center cursor-pointer\" (click)=\"uploadFile.click()\">\r\n <div>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"29\" height=\"28\" viewBox=\"0 0 29 28\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M14.001 3.00195C11.5322 3.00195 9.16722 3.86956 7.23641 5.38414L7.23598 4.59695C7.23598 4.52473 7.22175 4.45321 7.19411 4.38648C7.16647 4.31975 7.12596 4.25912 7.07489 4.20804C7.02381 4.15697 6.96318 4.11646 6.89645 4.08882C6.82972 4.06118 6.7582 4.04695 6.68598 4.04695C6.61375 4.04695 6.54223 4.06118 6.4755 4.08882C6.40877 4.11646 6.34814 4.15697 6.29707 4.20804C6.24599 4.25912 6.20548 4.31975 6.17784 4.38648C6.1502 4.45321 6.13598 4.52473 6.13598 4.59695L6.13642 6.68652C6.13643 6.83239 6.19438 6.97228 6.29752 7.07542C6.40067 7.17856 6.54055 7.23651 6.68642 7.23652H8.77598C8.8482 7.23652 8.91972 7.2223 8.98645 7.19466C9.05318 7.16702 9.11381 7.12651 9.16489 7.07543C9.21596 7.02436 9.25647 6.96373 9.28411 6.897C9.31175 6.83027 9.32598 6.75875 9.32598 6.68652C9.32598 6.6143 9.31175 6.54278 9.28411 6.47605C9.25647 6.40932 9.21596 6.34869 9.16489 6.29761C9.11381 6.24654 9.05318 6.20603 8.98645 6.17839C8.91972 6.15075 8.8482 6.13652 8.77598 6.13652H8.0584C9.7702 4.84387 11.8399 4.10195 14.001 4.10195C19.4751 4.10195 23.901 8.52782 23.901 14.002C23.901 19.4761 19.4751 23.902 14.001 23.902C8.52684 23.902 4.10098 19.4761 4.10098 14.002C4.10098 12.6381 4.38263 11.2888 4.92855 10.0389C4.98691 9.90532 4.98982 9.75399 4.93665 9.61822C4.88347 9.48246 4.77855 9.37336 4.64496 9.31492C4.57877 9.28596 4.50753 9.27032 4.4353 9.2689C4.36306 9.26747 4.29126 9.2803 4.22398 9.30663C4.15671 9.33297 4.09528 9.3723 4.04321 9.42238C3.99114 9.47247 3.94944 9.53232 3.92051 9.59852C3.31393 10.9872 3.00098 12.4866 3.00098 14.002C3.00098 20.0706 7.93236 25.002 14.001 25.002C20.0696 25.002 25.001 20.0706 25.001 14.002C25.001 7.93334 20.0696 3.00195 14.001 3.00195Z\"\r\n fill=\"#F3A041\" />\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M13.9988 6.13965C9.6616 6.13965 6.13379 9.66746 6.13379 14.0046C6.13379 18.3418 9.6616 21.8696 13.9988 21.8696C18.336 21.8696 21.8638 18.3418 21.8638 14.0046C21.8638 9.66746 18.336 6.13965 13.9988 6.13965ZM13.9988 8.22965C14.1447 8.22965 14.2846 8.28759 14.3877 8.39074C14.4908 8.49388 14.5488 8.63378 14.5488 8.77965V13.7769L17.5227 16.7508C17.6258 16.8539 17.6837 16.9938 17.6837 17.1396C17.6837 17.2855 17.6258 17.4254 17.5227 17.5285C17.4195 17.6316 17.2796 17.6896 17.1338 17.6896C16.9879 17.6896 16.8481 17.6316 16.7449 17.5285L13.6099 14.3935C13.5068 14.2904 13.4488 14.1505 13.4488 14.0046V8.77965C13.4488 8.63378 13.5067 8.49388 13.6099 8.39074C13.713 8.28759 13.8529 8.22965 13.9988 8.22965Z\"\r\n fill=\"#F3A041\" />\r\n <rect width=\"28.56\" height=\"28\" rx=\"1.51479\" fill=\"#F3A041\" />\r\n <path\r\n d=\"M15.068 22.7391V17.6708H18.4968L14.2108 12.6025L9.9248 17.6708H13.3536V22.7391H9.06759V22.6969C8.92358 22.7053 8.78643 22.7391 8.63899 22.7391C6.93391 22.7391 5.29866 22.0717 4.09298 20.8835C2.8873 19.6954 2.20996 18.084 2.20996 16.4037C2.20996 13.1532 4.70443 10.5042 7.90523 10.141C8.18585 8.6953 8.96892 7.39118 10.1197 6.45292C11.2706 5.51465 12.7172 5.00089 14.2108 5C15.7047 5.00082 17.1515 5.51452 18.3026 6.45277C19.4537 7.39101 20.2371 8.69516 20.5181 10.141C23.7189 10.5042 26.21 13.1532 26.21 16.4037C26.21 18.084 25.5326 19.6954 24.3269 20.8835C23.1213 22.0717 21.486 22.7391 19.7809 22.7391C19.6369 22.7391 19.4981 22.7053 19.3523 22.6969V22.7391H15.068Z\"\r\n fill=\"white\" />\r\n </svg>\r\n </div>\r\n <a type=\"button\" (click)=\"uploadFile.click()\" class=\"text-base cursor-pointer\">\r\n {{ 'Upload' }}\r\n </a>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'textarea'\">\r\n <textarea [class]=\"column?.className\" name=\"\" id=\"\" cols=\"30\" rows=\"2\" [placeholder]=\"column?.placeholder\"></textarea>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n</fx-settings-panel>", styles: ["@import\"https://unpkg.com/primeng@17.18.10/resources/themes/lara-light-blue/theme.css\";@import\"https://unpkg.com/primeng@17.18.10/resources/primeng.min.css\";@import\"https://unpkg.com/primeicons@6.0.0/primeicons.css\";.formBuilder_dynamic_table{border:.6px solid #ccc}.formBuilder_dynamic_table>thead>tr{background-color:#4682b4;color:#fff}.formBuilder_dynamic_table>thead>tr>th{font-weight:400!important;padding:.25rem .55rem;font-size:.875rem;text-align:left}.formBuilder_dynamic_table>tbody>tr:nth-child(odd){background-color:#fff}.formBuilder_dynamic_table>tbody>tr:nth-child(2n){background-color:#f6f6f6}.formBuilder_dynamic_table>tbody>tr>td{text-align:left;padding:.25rem .55rem}[type=text],[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],[multiple],textarea,select{border:1px solid #ccc;border-radius:4px;padding:4px}select:not([size]){background:url('data:image/svg+xml,<svg width=\"22\" height=\"20\" viewBox=\"0 0 26 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A <rect x=\"0.5\" width=\"24.766\" height=\"24\" rx=\"3\" fill=\"%23FF7900\" fill-opacity=\"0.1\"/>%0D%0A <path d=\"M12.8918 16.5019C12.7255 16.5019 12.5695 16.4736 12.4239 16.4169C12.2783 16.3602 12.1431 16.2628 12.0183 16.1248L6.27803 9.8162C6.04925 9.56477 5.92946 9.25025 5.91864 8.87265C5.90783 8.49505 6.02762 8.16956 6.27803 7.89619C6.50681 7.64476 6.79799 7.51905 7.15155 7.51905C7.50512 7.51905 7.7963 7.64476 8.02508 7.89619L12.8918 13.2105L17.7586 7.89619C17.9874 7.64476 18.2736 7.51356 18.6172 7.50259C18.9607 7.49162 19.2569 7.62282 19.5056 7.89619C19.7344 8.14762 19.8488 8.46762 19.8488 8.85619C19.8488 9.24477 19.7344 9.56477 19.5056 9.8162L13.7654 16.1248C13.6406 16.2619 13.5054 16.3593 13.3598 16.4169C13.2142 16.4745 13.0582 16.5028 12.8918 16.5019Z\" fill=\"%23FAA762\"/>%0D%0A</svg>%0D%0A') right .4rem center no-repeat #fff;border:1px solid #cdcdcd;padding:6px 30px 6px 10px;border-radius:4px;font-size:14px;font-weight:400;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%!important}.dd_down_icon{background:#f3a04126;border-radius:3px!important;padding:2px}[type=checkbox]{padding:12px}[type=checkbox]:checked{background-color:#f3a041!important;padding:12px;background-size:1em 1em!important}[type=radio]{width:20px;height:20px}[type=radio]:checked{background-color:#f3a041!important;background-size:1.5em 1.5em}[type=checkbox]:focus,[type=radio]:focus{--tw-ring-color: #f3a041 !important}:host::ng-deep .p-multiselect{height:37.6px!important;border:1px solid #cdcdcd}:host::ng-deep .p-multiselect .p-multiselect-label{padding:.5rem .75rem}:host::ng-deep .p-multiselect .p-multiselect-label .p-placeholder{color:#454545}:host::ng-deep .p-multiselect .p-multiselect-trigger{width:2.5rem!important}.dd_down_icon span{color:#f3a041}.orientation{height:82%!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$1.SelectControlValueAccessor, selector: "select:not([multiple])[formControlName],select:not([multiple])[formControl],select:not([multiple])[ngModel]", inputs: ["compareWith"] }, { kind: "directive", type: i1$1.RadioControlValueAccessor, selector: "input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]", inputs: ["name", "formControlName", "value"] }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: SettingsPanelComponent, selector: "fx-settings-panel", inputs: ["tableData"], outputs: ["configuration"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i4$1.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "directive", type: i4.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: InputNumberModule }, { kind: "ngmodule", type: InputTextModule }, { kind: "ngmodule", type: DropdownModule }] });
576
610
  }
577
611
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DynamicTableComponent, decorators: [{
578
612
  type: Component,
579
- args: [{ selector: 'fx-dynamic-table', standalone: true, imports: [CommonModule, FormsModule, SettingsPanelComponent, ReactiveFormsModule, MultiSelectModule, InputNumberModule, InputTextModule, DropdownModule], template: "<fx-settings-panel [fxData]=\"fxData\" [tableData]=\"fxData\" (configuration)=\"onChangeConfiguration($event)\">\r\n <div *ngIf=\"fxData\">\r\n <table style=\"width: 100%;\" class=\"formBuilder_dynamic_table\">\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let column of tableConfig.columns\">{{ column.header }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of tableConfig.rows; let rowIndex = index\">\r\n <td *ngFor=\"let column of tableConfig.columns\">\r\n <ng-container [ngSwitch]=\"column.cellType\">\r\n <span [class]=\"column?.className\" *ngSwitchCase=\"'text'\">{{row[column.header]}}</span>\r\n \r\n <input [class]=\"column?.className\" *ngSwitchCase=\"'input-text'\" type=\"text\" [placeholder]=\"column?.placeholder\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <input [class]=\"column?.className\" *ngSwitchCase=\"'input-number'\" type=\"number\" [placeholder]=\"column?.placeholder\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <select [class]=\"column?.className\" *ngSwitchCase=\"'dropdown'\"\r\n [(ngModel)]=\"row[column.header]\">\r\n \r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of column?.options\" [value]=\"option?.optionValue\"> \r\n {{ option?.optionName }}\r\n </option>\r\n </select>\r\n \r\n <!-- <select [class]=\"column?.className\" style=\"width: 60%;\" *ngSwitchCase=\"'smart-dropdown'\"\r\n [(ngModel)]=\"row[column.header]\">\r\n <option value=\"\">Select {{column.header}}</option>\r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of smartDropdownOptions[column.header]\" [value]=\"option?.value\">\r\n {{option?.name }}\r\n </option>\r\n </select> -->\r\n \r\n <!-- <p-multiSelect [options]=\"smartDropdownOptions[column.header]\" [(ngModel)]=\"row[column.header]\" optionLabel=\"name\" optionValue=\"value\" placeholder=\"Select Cities\" *ngSwitchCase=\"'smart-dropdown'\"/> -->\r\n\r\n <!-- smart-dropdown handling -->\r\n <ng-container *ngSwitchCase=\"'smart-dropdown'\">\r\n\r\n <!-- Regular dropdown if isMultiselect is false or not set -->\r\n <select *ngIf=\"!column?.isMultiselect\" [class]=\"column?.className\" style=\"width: 60%;\"\r\n [(ngModel)]=\"row[column.header]\">\r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of smartDropdownOptions[column.header]\" [value]=\"option?.value\">\r\n {{ option?.name }}\r\n </option>\r\n </select>\r\n\r\n <!-- PrimeNG multiselect if isMultiselect is true -->\r\n <p-multiSelect *ngIf=\"column?.isMultiselect\" [options]=\"smartDropdownOptions[column.header]\"\r\n [(ngModel)]=\"row[column.header]\" [class]=\"column?.className\" optionLabel=\"name\" optionValue=\"value\"\r\n [placeholder]=\"column.placeholder || ('Select ' + column.header)\">\r\n </p-multiSelect>\r\n\r\n </ng-container>\r\n\r\n \r\n <input [class]=\"column?.className\" *ngSwitchCase=\"'checkbox'\" type=\"checkbox\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <input name=\"radio-{{rowIndex}}\" [class]=\"column?.className\" *ngSwitchCase=\"'radio'\" type=\"radio\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <div [class]=\"column?.className\" style=\"display: flex; justify-content: center; gap: 10px;\"\r\n *ngSwitchCase=\"'radio-group'\">\r\n <label *ngFor=\"let option of column.options\">\r\n <input name=\"radio-group-{{rowIndex}}\" type=\"radio\" [value]=\"option?.optionName\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n {{ option?.optionName }}\r\n </label>\r\n </div>\r\n \r\n <ng-container *ngSwitchCase=\"'file-upload'\">\r\n <!-- <div style=\"display: flex; flex-direction: column; align-items: end;justify-content: end;\">\r\n <img width=\"100\" *ngIf=\"uploadedImages?.[rowIndex]?.['result']\" [src]=\"uploadedImages[rowIndex]?.['result']\"\r\n alt=\"Uploaded Image\" (click)=\"deleteFile(uploadedImages[rowIndex], rowIndex)\"/>\r\n <input [class]=\"column?.className\" type=\"file\" name=\"file\" #uploadFile hidden multiple\r\n (change)=\"uploadImage($event, rowIndex)\" />\r\n <button (click)=\"uploadFile.click()\">Upload</button>\r\n </div> -->\r\n <!-- <div class=\"flex flex-col items-end justify-end relative\">\r\n <div class=\"relative\">\r\n <img \r\n width=\"100\" \r\n *ngIf=\"uploadedImages?.[rowIndex]?.['result']\" \r\n [src]=\"uploadedImages[rowIndex]?.['result']\"\r\n alt=\"Uploaded Image\"\r\n class=\"rounded shadow\"\r\n />\r\n <button \r\n *ngIf=\"uploadedImages?.[rowIndex]?.['result']\"\r\n (click)=\"deleteFile(uploadedImages[rowIndex], rowIndex)\" \r\n class=\"absolute top-0 right-0 text-white rounded-md w-5 h-5 flex items-center justify-center shadow-lg hover:bg-red-600\"\r\n >\r\n \u274C\r\n </button>\r\n </div>\r\n \r\n <input \r\n [class]=\"column?.className\" \r\n type=\"file\" \r\n name=\"file\" \r\n #uploadFile \r\n hidden \r\n multiple\r\n (change)=\"uploadImage($event, rowIndex)\" \r\n />\r\n \r\n <button (click)=\"uploadFile.click()\" class=\"mt-2 bg-blue-500 text-white px-3 py-1 rounded hover:bg-blue-600\">\r\n Upload\r\n </button>\r\n </div> -->\r\n\r\n <div class=\"flex flex-col items-end justify-end relative\">\r\n <div class=\"flex gap-2 flex-wrap\">\r\n <div \r\n class=\"relative\" \r\n *ngFor=\"let image of uploadedImages?.[rowIndex]; let i = index\"\r\n >\r\n <img \r\n width=\"100\" \r\n [src]=\"image?.result\"\r\n alt=\"Uploaded Image\"\r\n class=\"rounded shadow\"\r\n />\r\n <button \r\n (click)=\"deleteFile(rowIndex, i)\" \r\n class=\"absolute top-0 right-0 text-white rounded-md w-5 h-5 flex items-center justify-center shadow-lg hover:bg-red-600\"\r\n >\r\n \u274C\r\n </button>\r\n </div>\r\n </div>\r\n \r\n <input \r\n [class]=\"column?.className\" \r\n type=\"file\" \r\n name=\"file\" \r\n #uploadFile \r\n hidden \r\n multiple\r\n (change)=\"uploadImage($event, rowIndex)\" \r\n />\r\n \r\n <button \r\n (click)=\"uploadFile.click()\" \r\n class=\"mt-2 bg-blue-500 text-white px-3 py-1 rounded hover:bg-blue-600\"\r\n >\r\n Upload\r\n </button>\r\n </div>\r\n \r\n \r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'textarea'\">\r\n <textarea [class]=\"column?.className\" name=\"\" id=\"\" cols=\"30\" rows=\"2\" [placeholder]=\"column?.placeholder\"></textarea>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n</fx-settings-panel>", styles: ["@import\"https://unpkg.com/primeng@17.18.10/resources/themes/lara-light-blue/theme.css\";@import\"https://unpkg.com/primeng@17.18.10/resources/primeng.min.css\";@import\"https://unpkg.com/primeicons@6.0.0/primeicons.css\";.formBuilder_dynamic_table{border:.6px solid #ccc}.formBuilder_dynamic_table>thead>tr{background-color:#4682b4;color:#fff}.formBuilder_dynamic_table>thead>tr>th{font-weight:400!important;padding:.25rem .55rem;font-size:.875rem;text-align:left}.formBuilder_dynamic_table>tbody>tr:nth-child(odd){background-color:#fff}.formBuilder_dynamic_table>tbody>tr:nth-child(2n){background-color:#f6f6f6}.formBuilder_dynamic_table>tbody>tr>td{text-align:left;padding:.25rem .55rem}\n"] }]
613
+ args: [{ selector: 'fx-dynamic-table', standalone: true, imports: [CommonModule, FormsModule, SettingsPanelComponent, ReactiveFormsModule, MultiSelectModule, InputNumberModule, InputTextModule, DropdownModule], template: "<fx-settings-panel [fxData]=\"fxData\" [tableData]=\"fxData\" (configuration)=\"onChangeConfiguration($event)\">\r\n <div *ngIf=\"fxData\">\r\n <table style=\"width: 100%;\" class=\"formBuilder_dynamic_table\">\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let column of tableConfig.columns\">{{ column.header }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of tableConfig.rows; let rowIndex = index\">\r\n <td *ngFor=\"let column of tableConfig.columns\">\r\n <ng-container [ngSwitch]=\"column.cellType\">\r\n <span [class]=\"column?.className\" *ngSwitchCase=\"'text'\">{{row[column.header]}}</span>\r\n \r\n <!-- <input [class]=\"column?.className\" *ngSwitchCase=\"'input-text'\" type=\"text\" [placeholder]=\"column?.placeholder\"\r\n [(ngModel)]=\"row[column.header]\" /> -->\r\n\r\n <ng-container *ngSwitchCase=\"'input-text'\">\r\n <input\r\n [class]=\"column?.className\"\r\n type=\"text\"\r\n [placeholder]=\"column?.placeholder\"\r\n [(ngModel)]=\"row[column.header]\"\r\n [required]=\"column?.isRequired\"\r\n #model=\"ngModel\"\r\n />\r\n \r\n <div\r\n *ngIf=\"column?.isRequired && model.invalid && model.touched\"\r\n class=\"text-red-500 text-sm mt-1\"\r\n >\r\n {{ column?.errorMessage }}\r\n </div>\r\n </ng-container>\r\n \r\n\r\n \r\n <input [class]=\"column?.className\" *ngSwitchCase=\"'input-number'\" type=\"number\" [placeholder]=\"column?.placeholder\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <select [class]=\"column?.className\" *ngSwitchCase=\"'dropdown'\"\r\n [(ngModel)]=\"row[column.header]\">\r\n \r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of column?.options\" [value]=\"option?.optionValue\"> \r\n {{ option?.optionName }}\r\n </option>\r\n </select>\r\n \r\n <!-- <select [class]=\"column?.className\" style=\"width: 60%;\" *ngSwitchCase=\"'smart-dropdown'\"\r\n [(ngModel)]=\"row[column.header]\">\r\n <option value=\"\">Select {{column.header}}</option>\r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of smartDropdownOptions[column.header]\" [value]=\"option?.value\">\r\n {{option?.name }}\r\n </option>\r\n </select> -->\r\n \r\n <!-- <p-multiSelect [options]=\"smartDropdownOptions[column.header]\" [(ngModel)]=\"row[column.header]\" optionLabel=\"name\" optionValue=\"value\" placeholder=\"Select Cities\" *ngSwitchCase=\"'smart-dropdown'\"/> -->\r\n\r\n <!-- smart-dropdown handling -->\r\n <ng-container *ngSwitchCase=\"'smart-dropdown'\">\r\n\r\n <!-- Regular dropdown if isMultiselect is false or not set -->\r\n <select *ngIf=\"!column?.isMultiselect\" [class]=\"column?.className\" style=\"width: 60%;\"\r\n [(ngModel)]=\"row[column.header]\">\r\n <option *ngIf=\"column.placeholder\" value=\"\">{{ column.placeholder }}</option>\r\n <option *ngFor=\"let option of smartDropdownOptions[column.header]\" [value]=\"option?.value\">\r\n {{ option?.name }}\r\n </option>\r\n </select>\r\n\r\n <!-- PrimeNG multiselect if isMultiselect is true -->\r\n <p-multiSelect *ngIf=\"column?.isMultiselect\" [options]=\"smartDropdownOptions[column.header]\"\r\n [(ngModel)]=\"row[column.header]\" [class]=\"column?.className\" optionLabel=\"name\" optionValue=\"value\"\r\n [placeholder]=\"column.placeholder || ('Select ' + column.header)\">\r\n <ng-template pTemplate=\"dropdownicon\">\r\n <div class=\"flex align-items-center dd_down_icon\">\r\n <span class=\"pi pi-angle-down text-xl\"></span>\r\n </div>\r\n </ng-template>\r\n </p-multiSelect>\r\n\r\n </ng-container>\r\n\r\n \r\n <!-- <input [class]=\"column?.className\" *ngSwitchCase=\"'checkbox'\" type=\"checkbox\"\r\n [(ngModel)]=\"row[column.header]\" /> -->\r\n <ng-container *ngSwitchCase=\"'checkbox'\">\r\n <label [class]=\"column?.className\" class=\"inline-flex items-center gap-2\">\r\n <input\r\n type=\"checkbox\"\r\n [checked]=\"row[column.header] === column.checkedValue\"\r\n (change)=\"onCheckboxChange($event, row, column)\"\r\n />\r\n {{ column?.checkBoxLabel || '' }}\r\n </label>\r\n </ng-container>\r\n \r\n \r\n \r\n <input name=\"radio-{{rowIndex}}\" [class]=\"column?.className\" *ngSwitchCase=\"'radio'\" type=\"radio\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n \r\n <div [class]=\"column?.className\" style=\"display: flex; justify-content: center; gap: 10px;\"\r\n *ngSwitchCase=\"'radio-group'\">\r\n <label *ngFor=\"let option of column.options\">\r\n <input name=\"radio-group-{{rowIndex}}\" type=\"radio\" [value]=\"option?.optionName\"\r\n [(ngModel)]=\"row[column.header]\" />\r\n {{ option?.optionName }}\r\n </label>\r\n </div>\r\n \r\n <!-- <ng-container *ngSwitchCase=\"'file-upload'\">\r\n \r\n\r\n <div class=\"flex flex-col items-end justify-end relative\">\r\n <div class=\"flex gap-2 flex-wrap\">\r\n <div \r\n class=\"relative\" \r\n *ngFor=\"let image of uploadedImages?.[rowIndex]; let i = index\"\r\n >\r\n <img \r\n width=\"100\" \r\n [src]=\"image?.result\"\r\n alt=\"Uploaded Image\"\r\n class=\"rounded shadow\"\r\n />\r\n <button \r\n (click)=\"deleteFile(rowIndex, i)\" \r\n class=\"absolute top-0 right-0 text-white rounded-md w-5 h-5 flex items-center justify-center shadow-lg hover:bg-red-600\"\r\n >\r\n \u274C\r\n </button>\r\n </div>\r\n </div>\r\n \r\n <input \r\n [class]=\"column?.className\" \r\n type=\"file\" \r\n name=\"file\" \r\n #uploadFile \r\n hidden \r\n multiple\r\n (change)=\"uploadImage($event, rowIndex)\" \r\n />\r\n \r\n <button \r\n (click)=\"uploadFile.click()\" \r\n class=\"mt-2 bg-blue-500 text-white px-3 py-1 rounded hover:bg-blue-600\"\r\n >\r\n Upload\r\n </button>\r\n </div>\r\n \r\n \r\n </ng-container> -->\r\n \r\n <ng-container *ngSwitchCase=\"'file-upload'\">\r\n <div class=\"flex items-center justify-end relative gap-4 flex-wrap\">\r\n <div class=\"flex gap-2 flex-wrap\">\r\n <div class=\"relative\" *ngFor=\"let image of uploadedImages?.[rowIndex]; let i = index\">\r\n <img width=\"100\" height=\"80\" [src]=\"image?.result\" alt=\"Uploaded Image\" class=\"rounded shadow orientation\" />\r\n <a (click)=\"deleteFile(rowIndex, i)\"\r\n class=\"absolute top-0 right-0 text-white rounded-md w-5 h-5 flex items-center justify-center cursor-pointer\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_6837_29683)\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"#F3A041\" />\r\n <mask id=\"mask0_6837_29683\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"4\" y=\"4\"\r\n width=\"24\" height=\"24\">\r\n <rect x=\"4\" y=\"4\" width=\"24\" height=\"24\" fill=\"#D9D9D9\" />\r\n </mask>\r\n <g mask=\"url(#mask0_6837_29683)\">\r\n <path\r\n d=\"M8.2045 8.99815L5.81802 6.61167L6.61351 5.81617L9 8.20266L11.3865 5.81617L12.182 6.61167L9.7955 8.99815L12.182 11.3846L11.3865 12.1801L9 9.79365L6.61351 12.1801L5.81802 11.3846L8.2045 8.99815Z\"\r\n fill=\"white\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_6837_29683\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </a>\r\n </div>\r\n </div>\r\n \r\n <input [class]=\"column?.className\" type=\"file\" name=\"file\" #uploadFile hidden multiple\r\n (change)=\"uploadImage($event, rowIndex)\" />\r\n <div class=\"flex flex-col justify-center items-center cursor-pointer\" (click)=\"uploadFile.click()\">\r\n <div>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"29\" height=\"28\" viewBox=\"0 0 29 28\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M14.001 3.00195C11.5322 3.00195 9.16722 3.86956 7.23641 5.38414L7.23598 4.59695C7.23598 4.52473 7.22175 4.45321 7.19411 4.38648C7.16647 4.31975 7.12596 4.25912 7.07489 4.20804C7.02381 4.15697 6.96318 4.11646 6.89645 4.08882C6.82972 4.06118 6.7582 4.04695 6.68598 4.04695C6.61375 4.04695 6.54223 4.06118 6.4755 4.08882C6.40877 4.11646 6.34814 4.15697 6.29707 4.20804C6.24599 4.25912 6.20548 4.31975 6.17784 4.38648C6.1502 4.45321 6.13598 4.52473 6.13598 4.59695L6.13642 6.68652C6.13643 6.83239 6.19438 6.97228 6.29752 7.07542C6.40067 7.17856 6.54055 7.23651 6.68642 7.23652H8.77598C8.8482 7.23652 8.91972 7.2223 8.98645 7.19466C9.05318 7.16702 9.11381 7.12651 9.16489 7.07543C9.21596 7.02436 9.25647 6.96373 9.28411 6.897C9.31175 6.83027 9.32598 6.75875 9.32598 6.68652C9.32598 6.6143 9.31175 6.54278 9.28411 6.47605C9.25647 6.40932 9.21596 6.34869 9.16489 6.29761C9.11381 6.24654 9.05318 6.20603 8.98645 6.17839C8.91972 6.15075 8.8482 6.13652 8.77598 6.13652H8.0584C9.7702 4.84387 11.8399 4.10195 14.001 4.10195C19.4751 4.10195 23.901 8.52782 23.901 14.002C23.901 19.4761 19.4751 23.902 14.001 23.902C8.52684 23.902 4.10098 19.4761 4.10098 14.002C4.10098 12.6381 4.38263 11.2888 4.92855 10.0389C4.98691 9.90532 4.98982 9.75399 4.93665 9.61822C4.88347 9.48246 4.77855 9.37336 4.64496 9.31492C4.57877 9.28596 4.50753 9.27032 4.4353 9.2689C4.36306 9.26747 4.29126 9.2803 4.22398 9.30663C4.15671 9.33297 4.09528 9.3723 4.04321 9.42238C3.99114 9.47247 3.94944 9.53232 3.92051 9.59852C3.31393 10.9872 3.00098 12.4866 3.00098 14.002C3.00098 20.0706 7.93236 25.002 14.001 25.002C20.0696 25.002 25.001 20.0706 25.001 14.002C25.001 7.93334 20.0696 3.00195 14.001 3.00195Z\"\r\n fill=\"#F3A041\" />\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M13.9988 6.13965C9.6616 6.13965 6.13379 9.66746 6.13379 14.0046C6.13379 18.3418 9.6616 21.8696 13.9988 21.8696C18.336 21.8696 21.8638 18.3418 21.8638 14.0046C21.8638 9.66746 18.336 6.13965 13.9988 6.13965ZM13.9988 8.22965C14.1447 8.22965 14.2846 8.28759 14.3877 8.39074C14.4908 8.49388 14.5488 8.63378 14.5488 8.77965V13.7769L17.5227 16.7508C17.6258 16.8539 17.6837 16.9938 17.6837 17.1396C17.6837 17.2855 17.6258 17.4254 17.5227 17.5285C17.4195 17.6316 17.2796 17.6896 17.1338 17.6896C16.9879 17.6896 16.8481 17.6316 16.7449 17.5285L13.6099 14.3935C13.5068 14.2904 13.4488 14.1505 13.4488 14.0046V8.77965C13.4488 8.63378 13.5067 8.49388 13.6099 8.39074C13.713 8.28759 13.8529 8.22965 13.9988 8.22965Z\"\r\n fill=\"#F3A041\" />\r\n <rect width=\"28.56\" height=\"28\" rx=\"1.51479\" fill=\"#F3A041\" />\r\n <path\r\n d=\"M15.068 22.7391V17.6708H18.4968L14.2108 12.6025L9.9248 17.6708H13.3536V22.7391H9.06759V22.6969C8.92358 22.7053 8.78643 22.7391 8.63899 22.7391C6.93391 22.7391 5.29866 22.0717 4.09298 20.8835C2.8873 19.6954 2.20996 18.084 2.20996 16.4037C2.20996 13.1532 4.70443 10.5042 7.90523 10.141C8.18585 8.6953 8.96892 7.39118 10.1197 6.45292C11.2706 5.51465 12.7172 5.00089 14.2108 5C15.7047 5.00082 17.1515 5.51452 18.3026 6.45277C19.4537 7.39101 20.2371 8.69516 20.5181 10.141C23.7189 10.5042 26.21 13.1532 26.21 16.4037C26.21 18.084 25.5326 19.6954 24.3269 20.8835C23.1213 22.0717 21.486 22.7391 19.7809 22.7391C19.6369 22.7391 19.4981 22.7053 19.3523 22.6969V22.7391H15.068Z\"\r\n fill=\"white\" />\r\n </svg>\r\n </div>\r\n <a type=\"button\" (click)=\"uploadFile.click()\" class=\"text-base cursor-pointer\">\r\n {{ 'Upload' }}\r\n </a>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'textarea'\">\r\n <textarea [class]=\"column?.className\" name=\"\" id=\"\" cols=\"30\" rows=\"2\" [placeholder]=\"column?.placeholder\"></textarea>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </div>\r\n</fx-settings-panel>", styles: ["@import\"https://unpkg.com/primeng@17.18.10/resources/themes/lara-light-blue/theme.css\";@import\"https://unpkg.com/primeng@17.18.10/resources/primeng.min.css\";@import\"https://unpkg.com/primeicons@6.0.0/primeicons.css\";.formBuilder_dynamic_table{border:.6px solid #ccc}.formBuilder_dynamic_table>thead>tr{background-color:#4682b4;color:#fff}.formBuilder_dynamic_table>thead>tr>th{font-weight:400!important;padding:.25rem .55rem;font-size:.875rem;text-align:left}.formBuilder_dynamic_table>tbody>tr:nth-child(odd){background-color:#fff}.formBuilder_dynamic_table>tbody>tr:nth-child(2n){background-color:#f6f6f6}.formBuilder_dynamic_table>tbody>tr>td{text-align:left;padding:.25rem .55rem}[type=text],[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],[multiple],textarea,select{border:1px solid #ccc;border-radius:4px;padding:4px}select:not([size]){background:url('data:image/svg+xml,<svg width=\"22\" height=\"20\" viewBox=\"0 0 26 24\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">%0D%0A <rect x=\"0.5\" width=\"24.766\" height=\"24\" rx=\"3\" fill=\"%23FF7900\" fill-opacity=\"0.1\"/>%0D%0A <path d=\"M12.8918 16.5019C12.7255 16.5019 12.5695 16.4736 12.4239 16.4169C12.2783 16.3602 12.1431 16.2628 12.0183 16.1248L6.27803 9.8162C6.04925 9.56477 5.92946 9.25025 5.91864 8.87265C5.90783 8.49505 6.02762 8.16956 6.27803 7.89619C6.50681 7.64476 6.79799 7.51905 7.15155 7.51905C7.50512 7.51905 7.7963 7.64476 8.02508 7.89619L12.8918 13.2105L17.7586 7.89619C17.9874 7.64476 18.2736 7.51356 18.6172 7.50259C18.9607 7.49162 19.2569 7.62282 19.5056 7.89619C19.7344 8.14762 19.8488 8.46762 19.8488 8.85619C19.8488 9.24477 19.7344 9.56477 19.5056 9.8162L13.7654 16.1248C13.6406 16.2619 13.5054 16.3593 13.3598 16.4169C13.2142 16.4745 13.0582 16.5028 12.8918 16.5019Z\" fill=\"%23FAA762\"/>%0D%0A</svg>%0D%0A') right .4rem center no-repeat #fff;border:1px solid #cdcdcd;padding:6px 30px 6px 10px;border-radius:4px;font-size:14px;font-weight:400;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%!important}.dd_down_icon{background:#f3a04126;border-radius:3px!important;padding:2px}[type=checkbox]{padding:12px}[type=checkbox]:checked{background-color:#f3a041!important;padding:12px;background-size:1em 1em!important}[type=radio]{width:20px;height:20px}[type=radio]:checked{background-color:#f3a041!important;background-size:1.5em 1.5em}[type=checkbox]:focus,[type=radio]:focus{--tw-ring-color: #f3a041 !important}:host::ng-deep .p-multiselect{height:37.6px!important;border:1px solid #cdcdcd}:host::ng-deep .p-multiselect .p-multiselect-label{padding:.5rem .75rem}:host::ng-deep .p-multiselect .p-multiselect-label .p-placeholder{color:#454545}:host::ng-deep .p-multiselect .p-multiselect-trigger{width:2.5rem!important}.dd_down_icon span{color:#f3a041}.orientation{height:82%!important}\n"] }]
580
614
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: FxBuilderWrapperService }], propDecorators: { tableRows: [{
581
615
  type: Input
582
616
  }], previewType: [{
@@ -638,9 +672,6 @@ class UploaderComponent extends FxBaseComponent {
638
672
  this._register(this.uploadFileControl);
639
673
  });
640
674
  }
641
- ngOnDestroy() {
642
- throw new Error('Method not implemented.');
643
- }
644
675
  uploadedImages = {};
645
676
  deletedFiles = [];
646
677
  // public ngOnInit(): void {
@@ -898,11 +929,11 @@ class UploaderComponent extends FxBaseComponent {
898
929
  return [FxValidatorService.required];
899
930
  }
900
931
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UploaderComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: FxBuilderWrapperService }], target: i0.ɵɵFactoryTarget.Component });
901
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UploaderComponent, isStandalone: true, selector: "fx-uploader", usesInheritance: true, ngImport: i0, template: "<fx-component [fxData]=\"fxData\">\r\n <div class=\"custom-upload\">\r\n <button type=\"button\" (click)=\"fileInput.click()\">\r\n {{ setting('upload-text') }}\r\n </button>\r\n <input\r\n #fileInput\r\n type=\"file\"\r\n [multiple]=\"setting('multiple-upload')\"\r\n (change)=\"onFileSelected($event)\"\r\n hidden\r\n />\r\n <div class=\"file-list\">\r\n <ng-container *ngIf=\"uploadedFiles?.length\">\r\n <div *ngFor=\"let file of uploadedFiles; let i = index\" (click)=\"deleteFile(i)\">\r\n <img\r\n class=\"file-thumbnail\"\r\n style=\"border-radius: 4px\"\r\n [src]=\"file?.result\"\r\n alt=\"\"\r\n />\r\n </div>\r\n </ng-container>\r\n \r\n </div>\r\n </div>\r\n</fx-component>\r\n\r\n", styles: [".custom-upload{display:flex;flex-direction:row;align-items:flex-start}.custom-upload button{padding:10px 20px;font-size:16px;font-weight:700;color:#fff;background-color:#007bff;border:none;border-radius:5px;cursor:pointer;transition:background-color .3s}.custom-upload button:hover{background-color:#0056b3}.custom-upload .file-list{display:flex}.custom-upload .file-list p{margin:0;padding:5px;background-color:#f1f1f1;border:1px solid #ddd;border-radius:3px;font-size:14px}.custom-upload .file-list>div{display:flex;flex-direction:column;align-items:center;justify-content:center}.custom-upload .file-list .file-thumbnail{width:100px;height:100px;object-fit:contain}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FxComponent, selector: "fx-component", inputs: ["fxData"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }] });
932
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UploaderComponent, isStandalone: true, selector: "fx-uploader", usesInheritance: true, ngImport: i0, template: "<fx-component [fxData]=\"fxData\">\r\n <div class=\"custom-upload flex flex-row items-center gap-2 p-2 pb-0 rounded-sm\">\r\n <div class=\"flex flex-col justify-center items-center\" (click)=\"fileInput.click()\">\r\n <div>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"29\" height=\"28\" viewBox=\"0 0 29 28\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M14.001 3.00195C11.5322 3.00195 9.16722 3.86956 7.23641 5.38414L7.23598 4.59695C7.23598 4.52473 7.22175 4.45321 7.19411 4.38648C7.16647 4.31975 7.12596 4.25912 7.07489 4.20804C7.02381 4.15697 6.96318 4.11646 6.89645 4.08882C6.82972 4.06118 6.7582 4.04695 6.68598 4.04695C6.61375 4.04695 6.54223 4.06118 6.4755 4.08882C6.40877 4.11646 6.34814 4.15697 6.29707 4.20804C6.24599 4.25912 6.20548 4.31975 6.17784 4.38648C6.1502 4.45321 6.13598 4.52473 6.13598 4.59695L6.13642 6.68652C6.13643 6.83239 6.19438 6.97228 6.29752 7.07542C6.40067 7.17856 6.54055 7.23651 6.68642 7.23652H8.77598C8.8482 7.23652 8.91972 7.2223 8.98645 7.19466C9.05318 7.16702 9.11381 7.12651 9.16489 7.07543C9.21596 7.02436 9.25647 6.96373 9.28411 6.897C9.31175 6.83027 9.32598 6.75875 9.32598 6.68652C9.32598 6.6143 9.31175 6.54278 9.28411 6.47605C9.25647 6.40932 9.21596 6.34869 9.16489 6.29761C9.11381 6.24654 9.05318 6.20603 8.98645 6.17839C8.91972 6.15075 8.8482 6.13652 8.77598 6.13652H8.0584C9.7702 4.84387 11.8399 4.10195 14.001 4.10195C19.4751 4.10195 23.901 8.52782 23.901 14.002C23.901 19.4761 19.4751 23.902 14.001 23.902C8.52684 23.902 4.10098 19.4761 4.10098 14.002C4.10098 12.6381 4.38263 11.2888 4.92855 10.0389C4.98691 9.90532 4.98982 9.75399 4.93665 9.61822C4.88347 9.48246 4.77855 9.37336 4.64496 9.31492C4.57877 9.28596 4.50753 9.27032 4.4353 9.2689C4.36306 9.26747 4.29126 9.2803 4.22398 9.30663C4.15671 9.33297 4.09528 9.3723 4.04321 9.42238C3.99114 9.47247 3.94944 9.53232 3.92051 9.59852C3.31393 10.9872 3.00098 12.4866 3.00098 14.002C3.00098 20.0706 7.93236 25.002 14.001 25.002C20.0696 25.002 25.001 20.0706 25.001 14.002C25.001 7.93334 20.0696 3.00195 14.001 3.00195Z\"\r\n fill=\"#F3A041\" />\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M13.9988 6.13965C9.6616 6.13965 6.13379 9.66746 6.13379 14.0046C6.13379 18.3418 9.6616 21.8696 13.9988 21.8696C18.336 21.8696 21.8638 18.3418 21.8638 14.0046C21.8638 9.66746 18.336 6.13965 13.9988 6.13965ZM13.9988 8.22965C14.1447 8.22965 14.2846 8.28759 14.3877 8.39074C14.4908 8.49388 14.5488 8.63378 14.5488 8.77965V13.7769L17.5227 16.7508C17.6258 16.8539 17.6837 16.9938 17.6837 17.1396C17.6837 17.2855 17.6258 17.4254 17.5227 17.5285C17.4195 17.6316 17.2796 17.6896 17.1338 17.6896C16.9879 17.6896 16.8481 17.6316 16.7449 17.5285L13.6099 14.3935C13.5068 14.2904 13.4488 14.1505 13.4488 14.0046V8.77965C13.4488 8.63378 13.5067 8.49388 13.6099 8.39074C13.713 8.28759 13.8529 8.22965 13.9988 8.22965Z\"\r\n fill=\"#F3A041\" />\r\n <rect width=\"28.56\" height=\"28\" rx=\"1.51479\" fill=\"#F3A041\" />\r\n <path\r\n d=\"M15.068 22.7391V17.6708H18.4968L14.2108 12.6025L9.9248 17.6708H13.3536V22.7391H9.06759V22.6969C8.92358 22.7053 8.78643 22.7391 8.63899 22.7391C6.93391 22.7391 5.29866 22.0717 4.09298 20.8835C2.8873 19.6954 2.20996 18.084 2.20996 16.4037C2.20996 13.1532 4.70443 10.5042 7.90523 10.141C8.18585 8.6953 8.96892 7.39118 10.1197 6.45292C11.2706 5.51465 12.7172 5.00089 14.2108 5C15.7047 5.00082 17.1515 5.51452 18.3026 6.45277C19.4537 7.39101 20.2371 8.69516 20.5181 10.141C23.7189 10.5042 26.21 13.1532 26.21 16.4037C26.21 18.084 25.5326 19.6954 24.3269 20.8835C23.1213 22.0717 21.486 22.7391 19.7809 22.7391C19.6369 22.7391 19.4981 22.7053 19.3523 22.6969V22.7391H15.068Z\"\r\n fill=\"white\" />\r\n </svg>\r\n </div>\r\n <a type=\"button\" (click)=\"fileInput.click()\" class=\"text-base cursor-pointer\">\r\n {{ setting('upload-text') }}\r\n </a>\r\n </div>\r\n <input #fileInput type=\"file\" [multiple]=\"setting('multiple-upload')\" (change)=\"onFileSelected($event)\" hidden />\r\n <div class=\"separator\"></div>\r\n <div class=\"file-list flex items-center gap-4 flex-wrap\">\r\n <ng-container *ngIf=\"uploadedFiles?.length\">\r\n <div *ngFor=\"let file of uploadedFiles; let i = index\" (click)=\"deleteFile(i)\"\r\n class=\"flex flex-col items-center justify-center\">\r\n <div class=\"relative\">\r\n <div class=\"close_icon cursor-pointer\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_6837_29683)\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"#F3A041\" />\r\n <mask id=\"mask0_6837_29683\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"4\" y=\"4\" width=\"24\"\r\n height=\"24\">\r\n <rect x=\"4\" y=\"4\" width=\"24\" height=\"24\" fill=\"#D9D9D9\" />\r\n </mask>\r\n <g mask=\"url(#mask0_6837_29683)\">\r\n <path\r\n d=\"M8.2045 8.99815L5.81802 6.61167L6.61351 5.81617L9 8.20266L11.3865 5.81617L12.182 6.61167L9.7955 8.99815L12.182 11.3846L11.3865 12.1801L9 9.79365L6.61351 12.1801L5.81802 11.3846L8.2045 8.99815Z\"\r\n fill=\"white\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_6837_29683\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </div>\r\n <img class=\"file-thumbnail\" style=\"border-radius: 4px\" [src]=\"file?.result\" alt=\"\" />\r\n </div>\r\n\r\n <p>{{file?.name}}</p>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</fx-component>", styles: [".custom-upload{border:1px solid #ccc}.custom-upload a{color:#000}.custom-upload .file-list .file-thumbnail{width:120px;height:auto;border:1px solid #ccc;background-color:#fff;padding:4px}.custom-upload .separator{height:56px;width:2px;background-color:#ccc;margin:10px}.close_icon{position:absolute;top:-8px;right:-8px}[type=checkbox]{padding:12px}[type=checkbox]:checked{background-color:#f3a041!important;padding:12px;background-size:1em 1em!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FxComponent, selector: "fx-component", inputs: ["fxData"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ReactiveFormsModule }] });
902
933
  }
903
934
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UploaderComponent, decorators: [{
904
935
  type: Component,
905
- args: [{ selector: 'fx-uploader', standalone: true, imports: [CommonModule, FxComponent, FormsModule, ReactiveFormsModule], template: "<fx-component [fxData]=\"fxData\">\r\n <div class=\"custom-upload\">\r\n <button type=\"button\" (click)=\"fileInput.click()\">\r\n {{ setting('upload-text') }}\r\n </button>\r\n <input\r\n #fileInput\r\n type=\"file\"\r\n [multiple]=\"setting('multiple-upload')\"\r\n (change)=\"onFileSelected($event)\"\r\n hidden\r\n />\r\n <div class=\"file-list\">\r\n <ng-container *ngIf=\"uploadedFiles?.length\">\r\n <div *ngFor=\"let file of uploadedFiles; let i = index\" (click)=\"deleteFile(i)\">\r\n <img\r\n class=\"file-thumbnail\"\r\n style=\"border-radius: 4px\"\r\n [src]=\"file?.result\"\r\n alt=\"\"\r\n />\r\n </div>\r\n </ng-container>\r\n \r\n </div>\r\n </div>\r\n</fx-component>\r\n\r\n", styles: [".custom-upload{display:flex;flex-direction:row;align-items:flex-start}.custom-upload button{padding:10px 20px;font-size:16px;font-weight:700;color:#fff;background-color:#007bff;border:none;border-radius:5px;cursor:pointer;transition:background-color .3s}.custom-upload button:hover{background-color:#0056b3}.custom-upload .file-list{display:flex}.custom-upload .file-list p{margin:0;padding:5px;background-color:#f1f1f1;border:1px solid #ddd;border-radius:3px;font-size:14px}.custom-upload .file-list>div{display:flex;flex-direction:column;align-items:center;justify-content:center}.custom-upload .file-list .file-thumbnail{width:100px;height:100px;object-fit:contain}\n"] }]
936
+ args: [{ selector: 'fx-uploader', standalone: true, imports: [CommonModule, FxComponent, FormsModule, ReactiveFormsModule], template: "<fx-component [fxData]=\"fxData\">\r\n <div class=\"custom-upload flex flex-row items-center gap-2 p-2 pb-0 rounded-sm\">\r\n <div class=\"flex flex-col justify-center items-center\" (click)=\"fileInput.click()\">\r\n <div>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"29\" height=\"28\" viewBox=\"0 0 29 28\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M14.001 3.00195C11.5322 3.00195 9.16722 3.86956 7.23641 5.38414L7.23598 4.59695C7.23598 4.52473 7.22175 4.45321 7.19411 4.38648C7.16647 4.31975 7.12596 4.25912 7.07489 4.20804C7.02381 4.15697 6.96318 4.11646 6.89645 4.08882C6.82972 4.06118 6.7582 4.04695 6.68598 4.04695C6.61375 4.04695 6.54223 4.06118 6.4755 4.08882C6.40877 4.11646 6.34814 4.15697 6.29707 4.20804C6.24599 4.25912 6.20548 4.31975 6.17784 4.38648C6.1502 4.45321 6.13598 4.52473 6.13598 4.59695L6.13642 6.68652C6.13643 6.83239 6.19438 6.97228 6.29752 7.07542C6.40067 7.17856 6.54055 7.23651 6.68642 7.23652H8.77598C8.8482 7.23652 8.91972 7.2223 8.98645 7.19466C9.05318 7.16702 9.11381 7.12651 9.16489 7.07543C9.21596 7.02436 9.25647 6.96373 9.28411 6.897C9.31175 6.83027 9.32598 6.75875 9.32598 6.68652C9.32598 6.6143 9.31175 6.54278 9.28411 6.47605C9.25647 6.40932 9.21596 6.34869 9.16489 6.29761C9.11381 6.24654 9.05318 6.20603 8.98645 6.17839C8.91972 6.15075 8.8482 6.13652 8.77598 6.13652H8.0584C9.7702 4.84387 11.8399 4.10195 14.001 4.10195C19.4751 4.10195 23.901 8.52782 23.901 14.002C23.901 19.4761 19.4751 23.902 14.001 23.902C8.52684 23.902 4.10098 19.4761 4.10098 14.002C4.10098 12.6381 4.38263 11.2888 4.92855 10.0389C4.98691 9.90532 4.98982 9.75399 4.93665 9.61822C4.88347 9.48246 4.77855 9.37336 4.64496 9.31492C4.57877 9.28596 4.50753 9.27032 4.4353 9.2689C4.36306 9.26747 4.29126 9.2803 4.22398 9.30663C4.15671 9.33297 4.09528 9.3723 4.04321 9.42238C3.99114 9.47247 3.94944 9.53232 3.92051 9.59852C3.31393 10.9872 3.00098 12.4866 3.00098 14.002C3.00098 20.0706 7.93236 25.002 14.001 25.002C20.0696 25.002 25.001 20.0706 25.001 14.002C25.001 7.93334 20.0696 3.00195 14.001 3.00195Z\"\r\n fill=\"#F3A041\" />\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M13.9988 6.13965C9.6616 6.13965 6.13379 9.66746 6.13379 14.0046C6.13379 18.3418 9.6616 21.8696 13.9988 21.8696C18.336 21.8696 21.8638 18.3418 21.8638 14.0046C21.8638 9.66746 18.336 6.13965 13.9988 6.13965ZM13.9988 8.22965C14.1447 8.22965 14.2846 8.28759 14.3877 8.39074C14.4908 8.49388 14.5488 8.63378 14.5488 8.77965V13.7769L17.5227 16.7508C17.6258 16.8539 17.6837 16.9938 17.6837 17.1396C17.6837 17.2855 17.6258 17.4254 17.5227 17.5285C17.4195 17.6316 17.2796 17.6896 17.1338 17.6896C16.9879 17.6896 16.8481 17.6316 16.7449 17.5285L13.6099 14.3935C13.5068 14.2904 13.4488 14.1505 13.4488 14.0046V8.77965C13.4488 8.63378 13.5067 8.49388 13.6099 8.39074C13.713 8.28759 13.8529 8.22965 13.9988 8.22965Z\"\r\n fill=\"#F3A041\" />\r\n <rect width=\"28.56\" height=\"28\" rx=\"1.51479\" fill=\"#F3A041\" />\r\n <path\r\n d=\"M15.068 22.7391V17.6708H18.4968L14.2108 12.6025L9.9248 17.6708H13.3536V22.7391H9.06759V22.6969C8.92358 22.7053 8.78643 22.7391 8.63899 22.7391C6.93391 22.7391 5.29866 22.0717 4.09298 20.8835C2.8873 19.6954 2.20996 18.084 2.20996 16.4037C2.20996 13.1532 4.70443 10.5042 7.90523 10.141C8.18585 8.6953 8.96892 7.39118 10.1197 6.45292C11.2706 5.51465 12.7172 5.00089 14.2108 5C15.7047 5.00082 17.1515 5.51452 18.3026 6.45277C19.4537 7.39101 20.2371 8.69516 20.5181 10.141C23.7189 10.5042 26.21 13.1532 26.21 16.4037C26.21 18.084 25.5326 19.6954 24.3269 20.8835C23.1213 22.0717 21.486 22.7391 19.7809 22.7391C19.6369 22.7391 19.4981 22.7053 19.3523 22.6969V22.7391H15.068Z\"\r\n fill=\"white\" />\r\n </svg>\r\n </div>\r\n <a type=\"button\" (click)=\"fileInput.click()\" class=\"text-base cursor-pointer\">\r\n {{ setting('upload-text') }}\r\n </a>\r\n </div>\r\n <input #fileInput type=\"file\" [multiple]=\"setting('multiple-upload')\" (change)=\"onFileSelected($event)\" hidden />\r\n <div class=\"separator\"></div>\r\n <div class=\"file-list flex items-center gap-4 flex-wrap\">\r\n <ng-container *ngIf=\"uploadedFiles?.length\">\r\n <div *ngFor=\"let file of uploadedFiles; let i = index\" (click)=\"deleteFile(i)\"\r\n class=\"flex flex-col items-center justify-center\">\r\n <div class=\"relative\">\r\n <div class=\"close_icon cursor-pointer\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_6837_29683)\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"#F3A041\" />\r\n <mask id=\"mask0_6837_29683\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"4\" y=\"4\" width=\"24\"\r\n height=\"24\">\r\n <rect x=\"4\" y=\"4\" width=\"24\" height=\"24\" fill=\"#D9D9D9\" />\r\n </mask>\r\n <g mask=\"url(#mask0_6837_29683)\">\r\n <path\r\n d=\"M8.2045 8.99815L5.81802 6.61167L6.61351 5.81617L9 8.20266L11.3865 5.81617L12.182 6.61167L9.7955 8.99815L12.182 11.3846L11.3865 12.1801L9 9.79365L6.61351 12.1801L5.81802 11.3846L8.2045 8.99815Z\"\r\n fill=\"white\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_6837_29683\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </div>\r\n <img class=\"file-thumbnail\" style=\"border-radius: 4px\" [src]=\"file?.result\" alt=\"\" />\r\n </div>\r\n\r\n <p>{{file?.name}}</p>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</fx-component>", styles: [".custom-upload{border:1px solid #ccc}.custom-upload a{color:#000}.custom-upload .file-list .file-thumbnail{width:120px;height:auto;border:1px solid #ccc;background-color:#fff;padding:4px}.custom-upload .separator{height:56px;width:2px;background-color:#ccc;margin:10px}.close_icon{position:absolute;top:-8px;right:-8px}[type=checkbox]{padding:12px}[type=checkbox]:checked{background-color:#f3a041!important;padding:12px;background-size:1em 1em!important}\n"] }]
906
937
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: FxBuilderWrapperService }] });
907
938
 
908
939
  class ToggleComponent extends FxBaseComponent {
@@ -932,6 +963,302 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
932
963
  args: [{ selector: 'fx-toggle', standalone: true, imports: [CommonModule, FxComponent, FormsModule, ReactiveFormsModule], template: "<fx-component [fxData]=\"fxData\">\r\n <div style=\"display: flex;\">\r\n <label>\r\n <input [formControl]=\"toggleControl\" type=\"radio\" name=\"radio_grp\" class=\"form-radio mr-3\" value=\"true\">\r\n <span class=\"mt-1\">{{setting('accept')}}</span>\r\n </label>\r\n <label>\r\n <input [formControl]=\"toggleControl\" type=\"radio\" name=\"radio_grp\" class=\"form-radio mr-3\" value=\"false\">\r\n <span class=\"mt-1\">{{setting('reject')}}</span>\r\n </label>\r\n </div>\r\n</fx-component>\r\n", styles: ["label{position:relative;white-space:nowrap;border-radius:0;border:0 solid #999999;margin:0 14px 0 0;width:120px;height:auto;padding:0;text-align:center;cursor:pointer}.form-radio{background-color:#dae6f0;color:#fff;box-shadow:none;transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s;border:1px solid #DEDEDE;padding:9px 10px;margin:0;white-space:nowrap;width:100%;height:38px;background-image:none;border-radius:4px}.form-radio:checked{background-color:#add8e6;border-color:#9bbbd6}.form-radio:focus{box-shadow:0 0 0 2px #fff,0 0 0 4px #9dc1fb,0 1px 2px #000;background-color:#add8e6}.form-radio:hover{border-color:#4682b4}span{position:absolute;inset:8px 0 0;margin:0;padding:0}\n"] }]
933
964
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
934
965
 
966
+ class UploaderCheckboxComponent extends FxBaseComponent {
967
+ cdr;
968
+ fxBuilderWrapperService;
969
+ // public uploadFileControl = new UntypedFormControl();
970
+ uploadFileControl = new FormControl();
971
+ uploadedFiles = [];
972
+ formattedData = {
973
+ uploadedFiles: [],
974
+ deletedFiles: [],
975
+ checkboxEnabled: false
976
+ };
977
+ destroy$ = new Subject();
978
+ http = inject(HttpClient);
979
+ checkboxEnabled = false;
980
+ constructor(cdr, fxBuilderWrapperService) {
981
+ super(cdr);
982
+ this.cdr = cdr;
983
+ this.fxBuilderWrapperService = fxBuilderWrapperService;
984
+ this.onInit.subscribe((fxData) => {
985
+ this._register(this.uploadFileControl);
986
+ });
987
+ }
988
+ uploadedImages = {};
989
+ deletedFiles = [];
990
+ // public ngOnInit(): void {
991
+ // this.fxBuilderWrapperService.variables$
992
+ // .pipe(takeUntil(this.destroy$))
993
+ // .subscribe((variables: any) => {
994
+ // if (!variables) return;
995
+ // const uploadedFiles: { [key: string]: string[] } = {};
996
+ // for (const [key, value] of Object.entries(variables)) {
997
+ // if (key.includes('uploader') && Array.isArray(value)) {
998
+ // uploadedFiles[key] = value;
999
+ // }
1000
+ // }
1001
+ // for (const [uploaderKey, urls] of Object.entries(uploadedFiles)) {
1002
+ // const imageFetches: Observable<string>[] = [];
1003
+ // urls.forEach((url: string) => {
1004
+ // if (url) {
1005
+ // const image$ = this.http.get(url, { responseType: 'blob' }).pipe(
1006
+ // map((blob: Blob) => URL.createObjectURL(blob))
1007
+ // );
1008
+ // imageFetches.push(image$);
1009
+ // }
1010
+ // });
1011
+ // if (imageFetches.length) {
1012
+ // forkJoin(imageFetches).subscribe({
1013
+ // next: (imageUrls: string[]) => {
1014
+ // this.uploadedImages[uploaderKey] = imageUrls.map(result => ({
1015
+ // result,
1016
+ // file: null
1017
+ // }));
1018
+ // // this.uploadedFiles = [...this.uploadedImages]
1019
+ // this.uploadedFiles = Object.values(this.uploadedImages).flat();
1020
+ // },
1021
+ // error: (err) => {
1022
+ // console.error(`Failed to fetch images for ${uploaderKey}:`, err);
1023
+ // }
1024
+ // });
1025
+ // }
1026
+ // }
1027
+ // });
1028
+ // }
1029
+ // ngOnInit(): void {
1030
+ // this.fxBuilderWrapperService.variables$
1031
+ // .pipe(takeUntil(this.destroy$))
1032
+ // .subscribe((variables: any) => {
1033
+ // if (!variables) return;
1034
+ // const uploadedFiles: { [key: string]: string[] } = {};
1035
+ // for (const [key, value] of Object.entries(variables)) {
1036
+ // if (key.includes('uploader') && Array.isArray(value)) {
1037
+ // uploadedFiles[key] = value;
1038
+ // }
1039
+ // }
1040
+ // for (const [uploaderKey, urls] of Object.entries(uploadedFiles)) {
1041
+ // const imageFetches: Observable<{ result: string, originalUrl: string }>[] = [];
1042
+ // urls.forEach((url: string) => {
1043
+ // if (url) {
1044
+ // const image$ = this.http.get(url, { responseType: 'blob' }).pipe(
1045
+ // map((blob: Blob) => ({
1046
+ // result: URL.createObjectURL(blob), // just for preview
1047
+ // originalUrl: url
1048
+ // }))
1049
+ // );
1050
+ // imageFetches.push(image$);
1051
+ // }
1052
+ // });
1053
+ // if (imageFetches.length) {
1054
+ // forkJoin(imageFetches).subscribe({
1055
+ // next: (imageData) => {
1056
+ // const formatted = imageData.map(item => ({
1057
+ // id: uuidv4(),
1058
+ // file: null,
1059
+ // originalUrl: item.originalUrl,
1060
+ // result: item.result
1061
+ // }));
1062
+ // this.uploadedFiles = [...this.uploadedFiles, ...formatted];
1063
+ // this.uploadFileControl.setValue(this.uploadedFiles);
1064
+ // },
1065
+ // error: (err) => {
1066
+ // console.error(`Failed to fetch images for ${uploaderKey}:`, err);
1067
+ // }
1068
+ // });
1069
+ // }
1070
+ // }
1071
+ // });
1072
+ // }
1073
+ ngOnInit() {
1074
+ this.fxBuilderWrapperService.variables$
1075
+ .pipe(takeUntil(this.destroy$))
1076
+ .subscribe((variables) => {
1077
+ if (!variables)
1078
+ return;
1079
+ const uploadedFilesMap = {};
1080
+ // Extract uploader keys and their corresponding URL arrays
1081
+ for (const [key, value] of Object.entries(variables)) {
1082
+ if (key.includes('uploader-checkbox') && Array.isArray(value)) {
1083
+ uploadedFilesMap[key] = value;
1084
+ }
1085
+ }
1086
+ for (const [uploaderKey, urls] of Object.entries(uploadedFilesMap)) {
1087
+ const imageFetches = [];
1088
+ urls.forEach((originalUrl) => {
1089
+ if (originalUrl) {
1090
+ const image$ = this.http.get(originalUrl?.originalUrl, { responseType: 'blob' }).pipe(map((blob) => ({
1091
+ result: URL.createObjectURL(blob), // for preview
1092
+ originalUrl: originalUrl?.originalUrl // preserve original
1093
+ })));
1094
+ imageFetches.push(image$);
1095
+ }
1096
+ });
1097
+ if (imageFetches.length > 0) {
1098
+ forkJoin(imageFetches).subscribe({
1099
+ next: (imageData) => {
1100
+ const formatted = imageData.map(item => ({
1101
+ id: v4(),
1102
+ file: null,
1103
+ originalUrl: item.originalUrl,
1104
+ result: item.result
1105
+ }));
1106
+ this.uploadedFiles = [...this.uploadedFiles, ...formatted];
1107
+ this.formattedData.uploadedFiles = this.uploadedFiles;
1108
+ this.uploadFileControl.setValue(this.formattedData);
1109
+ },
1110
+ error: (err) => {
1111
+ console.error(`Failed to fetch images for ${uploaderKey}:`, err);
1112
+ }
1113
+ });
1114
+ }
1115
+ }
1116
+ });
1117
+ }
1118
+ // ngOnInit(): void {
1119
+ // this.fxBuilderWrapperService.variables$
1120
+ // .pipe(takeUntil(this.destroy$))
1121
+ // .subscribe((variables: any) => {
1122
+ // if (!variables) return;
1123
+ // const uploadedFilesMap: { [key: string]: { originalUrl: string }[] } = variables.uploadedFiles;
1124
+ // for (const [uploaderKey, urls] of Object.entries(uploadedFilesMap)) {
1125
+ // const imageFetches: Observable<{ result: string; originalUrl: string }>[] = [];
1126
+ // urls.forEach((fileObj: any) => {
1127
+ // const originalUrl = fileObj?.originalUrl;
1128
+ // if (originalUrl) {
1129
+ // const image$ = this.http.get(originalUrl, { responseType: 'blob' }).pipe(
1130
+ // map((blob: Blob) => ({
1131
+ // result: URL.createObjectURL(blob), // for preview
1132
+ // originalUrl
1133
+ // }))
1134
+ // );
1135
+ // imageFetches.push(image$);
1136
+ // }
1137
+ // });
1138
+ // if (imageFetches.length > 0) {
1139
+ // forkJoin(imageFetches).subscribe({
1140
+ // next: (imageData) => {
1141
+ // const formatted = imageData.map(item => ({
1142
+ // id: uuidv4(),
1143
+ // file: null,
1144
+ // originalUrl: item.originalUrl,
1145
+ // result: item.result
1146
+ // }));
1147
+ // this.uploadedFiles = [...this.uploadedFiles, ...formatted];
1148
+ // this.formattedData.uploadedFiles = this.uploadedFiles;
1149
+ // this.uploadFileControl.setValue(this.formattedData);
1150
+ // },
1151
+ // error: (err) => {
1152
+ // console.error(`Failed to fetch images for ${uploaderKey}:`, err);
1153
+ // }
1154
+ // });
1155
+ // }
1156
+ // }
1157
+ // });
1158
+ // }
1159
+ // public onFileSelected(event: Event) {
1160
+ // const input = event.target as HTMLInputElement;
1161
+ // if (input.files) {
1162
+ // for(let i = 0; i < input?.files?.length; i++) {
1163
+ // const file = input.files[i];
1164
+ // const reader = new FileReader();
1165
+ // reader.onload = e => {
1166
+ // this.uploadedFiles.push({
1167
+ // file: file,
1168
+ // result: e.target?.result,
1169
+ // name: file?.name,
1170
+ // id: uuidv4()
1171
+ // })
1172
+ // this.uploadFileControl.setValue(this.uploadedFiles);
1173
+ // console.log(this.uploadFileControl);
1174
+ // }
1175
+ // reader.readAsDataURL(file);
1176
+ // }
1177
+ // }
1178
+ // }
1179
+ onFileSelected(event) {
1180
+ const input = event.target;
1181
+ if (input.files) {
1182
+ for (let i = 0; i < input.files.length; i++) {
1183
+ const file = input.files[i];
1184
+ const reader = new FileReader();
1185
+ reader.onload = e => {
1186
+ const newFile = {
1187
+ id: v4(),
1188
+ file: file,
1189
+ originalUrl: null,
1190
+ result: e.target?.result,
1191
+ name: file.name
1192
+ };
1193
+ this.uploadedFiles.push(newFile);
1194
+ this.formattedData.uploadedFiles = this.uploadedFiles;
1195
+ this.uploadFileControl.setValue(this.formattedData);
1196
+ };
1197
+ reader.readAsDataURL(file);
1198
+ }
1199
+ }
1200
+ }
1201
+ // public deleteFile(id: string): void {
1202
+ // this.uploadedFiles = this.uploadedFiles.filter(file => file?.id !== id);
1203
+ // }
1204
+ // deleteFile(index: number): void {
1205
+ // const [deletedFile] = this.uploadedFiles.splice(index, 1);
1206
+ // if (deletedFile) {
1207
+ // this.deletedFiles.push(deletedFile);
1208
+ // this.formattedData = {
1209
+ // ...this.formattedData,
1210
+ // uploadedFiles: [...this.uploadedFiles],
1211
+ // deletedFiles: [...this.deletedFiles]
1212
+ // };
1213
+ // this.uploadFileControl.setValue(this.formattedData);
1214
+ // }
1215
+ // }
1216
+ deleteFile(index) {
1217
+ const deletedFile = this.uploadedFiles?.[index];
1218
+ if (!deletedFile)
1219
+ return;
1220
+ // Ensure formattedData exists and initialize if undefined
1221
+ this.formattedData = this.formattedData || { uploadedFiles: [], deletedFiles: [] };
1222
+ // Add the deleted file to the deletedFiles array
1223
+ this.deletedFiles = [...this.deletedFiles, deletedFile];
1224
+ // Remove the file from uploadedFiles using filter for immutability
1225
+ this.uploadedFiles = this.uploadedFiles.filter((_, i) => i !== index);
1226
+ // Update formattedData
1227
+ this.formattedData = {
1228
+ ...this.formattedData,
1229
+ uploadedFiles: this.uploadedFiles,
1230
+ deletedFiles: this.deletedFiles
1231
+ };
1232
+ // Set the value of the uploadFileControl
1233
+ this.uploadFileControl.setValue(this.formattedData);
1234
+ }
1235
+ onCheckboxChange() {
1236
+ this.formattedData = {
1237
+ ...this.formattedData,
1238
+ uploadedFiles: this.uploadedFiles,
1239
+ deletedFiles: this.deletedFiles,
1240
+ checkboxEnabled: this.checkboxEnabled
1241
+ };
1242
+ this.uploadFileControl.setValue(this.formattedData);
1243
+ }
1244
+ settings() {
1245
+ return [
1246
+ new FxStringSetting({ key: 'upload-text', $title: 'Upload Text', value: 'Upload File' }),
1247
+ new FxStringSetting({ key: 'checkbox-label', $title: 'Checkbox Label', value: '' }),
1248
+ new FxSelectSetting({ key: 'multiple-upload', $title: 'Multiple Upload', value: false }, [{ option: 'Enable', value: true }, { option: 'Disable', value: false }])
1249
+ ];
1250
+ }
1251
+ validations() {
1252
+ return [FxValidatorService.required];
1253
+ }
1254
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UploaderCheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: FxBuilderWrapperService }], target: i0.ɵɵFactoryTarget.Component });
1255
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UploaderCheckboxComponent, isStandalone: true, selector: "lib-uploader-checkbox", usesInheritance: true, ngImport: i0, template: "<fx-component [fxData]=\"fxData\">\r\n <label class=\"inline-flex items-center gap-2\">\r\n <input\r\n type=\"checkbox\"\r\n [(ngModel)] = \"checkboxEnabled\"\r\n (change)=\"onCheckboxChange()\"\r\n />\r\n {{ setting('checkbox-label') }}\r\n </label>\r\n <div class=\"custom-upload flex flex-row items-center gap-2 p-2 pb-0 rounded-sm\">\r\n <div class=\"flex flex-col justify-center items-center\" (click)=\"fileInput.click()\">\r\n <div>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"29\" height=\"28\" viewBox=\"0 0 29 28\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M14.001 3.00195C11.5322 3.00195 9.16722 3.86956 7.23641 5.38414L7.23598 4.59695C7.23598 4.52473 7.22175 4.45321 7.19411 4.38648C7.16647 4.31975 7.12596 4.25912 7.07489 4.20804C7.02381 4.15697 6.96318 4.11646 6.89645 4.08882C6.82972 4.06118 6.7582 4.04695 6.68598 4.04695C6.61375 4.04695 6.54223 4.06118 6.4755 4.08882C6.40877 4.11646 6.34814 4.15697 6.29707 4.20804C6.24599 4.25912 6.20548 4.31975 6.17784 4.38648C6.1502 4.45321 6.13598 4.52473 6.13598 4.59695L6.13642 6.68652C6.13643 6.83239 6.19438 6.97228 6.29752 7.07542C6.40067 7.17856 6.54055 7.23651 6.68642 7.23652H8.77598C8.8482 7.23652 8.91972 7.2223 8.98645 7.19466C9.05318 7.16702 9.11381 7.12651 9.16489 7.07543C9.21596 7.02436 9.25647 6.96373 9.28411 6.897C9.31175 6.83027 9.32598 6.75875 9.32598 6.68652C9.32598 6.6143 9.31175 6.54278 9.28411 6.47605C9.25647 6.40932 9.21596 6.34869 9.16489 6.29761C9.11381 6.24654 9.05318 6.20603 8.98645 6.17839C8.91972 6.15075 8.8482 6.13652 8.77598 6.13652H8.0584C9.7702 4.84387 11.8399 4.10195 14.001 4.10195C19.4751 4.10195 23.901 8.52782 23.901 14.002C23.901 19.4761 19.4751 23.902 14.001 23.902C8.52684 23.902 4.10098 19.4761 4.10098 14.002C4.10098 12.6381 4.38263 11.2888 4.92855 10.0389C4.98691 9.90532 4.98982 9.75399 4.93665 9.61822C4.88347 9.48246 4.77855 9.37336 4.64496 9.31492C4.57877 9.28596 4.50753 9.27032 4.4353 9.2689C4.36306 9.26747 4.29126 9.2803 4.22398 9.30663C4.15671 9.33297 4.09528 9.3723 4.04321 9.42238C3.99114 9.47247 3.94944 9.53232 3.92051 9.59852C3.31393 10.9872 3.00098 12.4866 3.00098 14.002C3.00098 20.0706 7.93236 25.002 14.001 25.002C20.0696 25.002 25.001 20.0706 25.001 14.002C25.001 7.93334 20.0696 3.00195 14.001 3.00195Z\"\r\n fill=\"#F3A041\" />\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M13.9988 6.13965C9.6616 6.13965 6.13379 9.66746 6.13379 14.0046C6.13379 18.3418 9.6616 21.8696 13.9988 21.8696C18.336 21.8696 21.8638 18.3418 21.8638 14.0046C21.8638 9.66746 18.336 6.13965 13.9988 6.13965ZM13.9988 8.22965C14.1447 8.22965 14.2846 8.28759 14.3877 8.39074C14.4908 8.49388 14.5488 8.63378 14.5488 8.77965V13.7769L17.5227 16.7508C17.6258 16.8539 17.6837 16.9938 17.6837 17.1396C17.6837 17.2855 17.6258 17.4254 17.5227 17.5285C17.4195 17.6316 17.2796 17.6896 17.1338 17.6896C16.9879 17.6896 16.8481 17.6316 16.7449 17.5285L13.6099 14.3935C13.5068 14.2904 13.4488 14.1505 13.4488 14.0046V8.77965C13.4488 8.63378 13.5067 8.49388 13.6099 8.39074C13.713 8.28759 13.8529 8.22965 13.9988 8.22965Z\"\r\n fill=\"#F3A041\" />\r\n <rect width=\"28.56\" height=\"28\" rx=\"1.51479\" fill=\"#F3A041\" />\r\n <path\r\n d=\"M15.068 22.7391V17.6708H18.4968L14.2108 12.6025L9.9248 17.6708H13.3536V22.7391H9.06759V22.6969C8.92358 22.7053 8.78643 22.7391 8.63899 22.7391C6.93391 22.7391 5.29866 22.0717 4.09298 20.8835C2.8873 19.6954 2.20996 18.084 2.20996 16.4037C2.20996 13.1532 4.70443 10.5042 7.90523 10.141C8.18585 8.6953 8.96892 7.39118 10.1197 6.45292C11.2706 5.51465 12.7172 5.00089 14.2108 5C15.7047 5.00082 17.1515 5.51452 18.3026 6.45277C19.4537 7.39101 20.2371 8.69516 20.5181 10.141C23.7189 10.5042 26.21 13.1532 26.21 16.4037C26.21 18.084 25.5326 19.6954 24.3269 20.8835C23.1213 22.0717 21.486 22.7391 19.7809 22.7391C19.6369 22.7391 19.4981 22.7053 19.3523 22.6969V22.7391H15.068Z\"\r\n fill=\"white\" />\r\n </svg>\r\n </div>\r\n <a type=\"button\" (click)=\"fileInput.click()\" class=\"text-base cursor-pointer\">\r\n {{ setting('upload-text') }}\r\n </a>\r\n </div>\r\n <input #fileInput type=\"file\" [multiple]=\"setting('multiple-upload')\" (change)=\"onFileSelected($event)\" hidden />\r\n <div class=\"separator\"></div>\r\n <div class=\"file-list flex items-center gap-4 flex-wrap\">\r\n <ng-container *ngIf=\"uploadedFiles?.length\">\r\n <div *ngFor=\"let file of uploadedFiles; let i = index\" (click)=\"deleteFile(i)\"\r\n class=\"flex flex-col items-center justify-center\">\r\n <div class=\"relative\">\r\n <div class=\"close_icon cursor-pointer\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_6837_29683)\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"#F3A041\" />\r\n <mask id=\"mask0_6837_29683\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"4\" y=\"4\" width=\"24\"\r\n height=\"24\">\r\n <rect x=\"4\" y=\"4\" width=\"24\" height=\"24\" fill=\"#D9D9D9\" />\r\n </mask>\r\n <g mask=\"url(#mask0_6837_29683)\">\r\n <path\r\n d=\"M8.2045 8.99815L5.81802 6.61167L6.61351 5.81617L9 8.20266L11.3865 5.81617L12.182 6.61167L9.7955 8.99815L12.182 11.3846L11.3865 12.1801L9 9.79365L6.61351 12.1801L5.81802 11.3846L8.2045 8.99815Z\"\r\n fill=\"white\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_6837_29683\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </div>\r\n <img class=\"file-thumbnail\" style=\"border-radius: 4px\" [src]=\"file?.result\" alt=\"\" />\r\n </div>\r\n \r\n <p>{{file?.name}}</p>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </fx-component>", styles: [".custom-upload{border:1px solid #ccc}.custom-upload a{color:#000}.custom-upload .file-list .file-thumbnail{width:120px;height:auto;border:1px solid #ccc;background-color:#fff;padding:4px}.custom-upload .separator{height:56px;width:2px;background-color:#ccc;margin:10px}.close_icon{position:absolute;top:-8px;right:-8px}[type=checkbox]{padding:12px}[type=checkbox]:checked{background-color:#f3a041!important;padding:12px;background-size:1em 1em!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: FxComponent, selector: "fx-component", inputs: ["fxData"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }] });
1256
+ }
1257
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UploaderCheckboxComponent, decorators: [{
1258
+ type: Component,
1259
+ args: [{ selector: 'lib-uploader-checkbox', standalone: true, imports: [CommonModule, FxComponent, FormsModule, ReactiveFormsModule], template: "<fx-component [fxData]=\"fxData\">\r\n <label class=\"inline-flex items-center gap-2\">\r\n <input\r\n type=\"checkbox\"\r\n [(ngModel)] = \"checkboxEnabled\"\r\n (change)=\"onCheckboxChange()\"\r\n />\r\n {{ setting('checkbox-label') }}\r\n </label>\r\n <div class=\"custom-upload flex flex-row items-center gap-2 p-2 pb-0 rounded-sm\">\r\n <div class=\"flex flex-col justify-center items-center\" (click)=\"fileInput.click()\">\r\n <div>\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"29\" height=\"28\" viewBox=\"0 0 29 28\" fill=\"none\">\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M14.001 3.00195C11.5322 3.00195 9.16722 3.86956 7.23641 5.38414L7.23598 4.59695C7.23598 4.52473 7.22175 4.45321 7.19411 4.38648C7.16647 4.31975 7.12596 4.25912 7.07489 4.20804C7.02381 4.15697 6.96318 4.11646 6.89645 4.08882C6.82972 4.06118 6.7582 4.04695 6.68598 4.04695C6.61375 4.04695 6.54223 4.06118 6.4755 4.08882C6.40877 4.11646 6.34814 4.15697 6.29707 4.20804C6.24599 4.25912 6.20548 4.31975 6.17784 4.38648C6.1502 4.45321 6.13598 4.52473 6.13598 4.59695L6.13642 6.68652C6.13643 6.83239 6.19438 6.97228 6.29752 7.07542C6.40067 7.17856 6.54055 7.23651 6.68642 7.23652H8.77598C8.8482 7.23652 8.91972 7.2223 8.98645 7.19466C9.05318 7.16702 9.11381 7.12651 9.16489 7.07543C9.21596 7.02436 9.25647 6.96373 9.28411 6.897C9.31175 6.83027 9.32598 6.75875 9.32598 6.68652C9.32598 6.6143 9.31175 6.54278 9.28411 6.47605C9.25647 6.40932 9.21596 6.34869 9.16489 6.29761C9.11381 6.24654 9.05318 6.20603 8.98645 6.17839C8.91972 6.15075 8.8482 6.13652 8.77598 6.13652H8.0584C9.7702 4.84387 11.8399 4.10195 14.001 4.10195C19.4751 4.10195 23.901 8.52782 23.901 14.002C23.901 19.4761 19.4751 23.902 14.001 23.902C8.52684 23.902 4.10098 19.4761 4.10098 14.002C4.10098 12.6381 4.38263 11.2888 4.92855 10.0389C4.98691 9.90532 4.98982 9.75399 4.93665 9.61822C4.88347 9.48246 4.77855 9.37336 4.64496 9.31492C4.57877 9.28596 4.50753 9.27032 4.4353 9.2689C4.36306 9.26747 4.29126 9.2803 4.22398 9.30663C4.15671 9.33297 4.09528 9.3723 4.04321 9.42238C3.99114 9.47247 3.94944 9.53232 3.92051 9.59852C3.31393 10.9872 3.00098 12.4866 3.00098 14.002C3.00098 20.0706 7.93236 25.002 14.001 25.002C20.0696 25.002 25.001 20.0706 25.001 14.002C25.001 7.93334 20.0696 3.00195 14.001 3.00195Z\"\r\n fill=\"#F3A041\" />\r\n <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\r\n d=\"M13.9988 6.13965C9.6616 6.13965 6.13379 9.66746 6.13379 14.0046C6.13379 18.3418 9.6616 21.8696 13.9988 21.8696C18.336 21.8696 21.8638 18.3418 21.8638 14.0046C21.8638 9.66746 18.336 6.13965 13.9988 6.13965ZM13.9988 8.22965C14.1447 8.22965 14.2846 8.28759 14.3877 8.39074C14.4908 8.49388 14.5488 8.63378 14.5488 8.77965V13.7769L17.5227 16.7508C17.6258 16.8539 17.6837 16.9938 17.6837 17.1396C17.6837 17.2855 17.6258 17.4254 17.5227 17.5285C17.4195 17.6316 17.2796 17.6896 17.1338 17.6896C16.9879 17.6896 16.8481 17.6316 16.7449 17.5285L13.6099 14.3935C13.5068 14.2904 13.4488 14.1505 13.4488 14.0046V8.77965C13.4488 8.63378 13.5067 8.49388 13.6099 8.39074C13.713 8.28759 13.8529 8.22965 13.9988 8.22965Z\"\r\n fill=\"#F3A041\" />\r\n <rect width=\"28.56\" height=\"28\" rx=\"1.51479\" fill=\"#F3A041\" />\r\n <path\r\n d=\"M15.068 22.7391V17.6708H18.4968L14.2108 12.6025L9.9248 17.6708H13.3536V22.7391H9.06759V22.6969C8.92358 22.7053 8.78643 22.7391 8.63899 22.7391C6.93391 22.7391 5.29866 22.0717 4.09298 20.8835C2.8873 19.6954 2.20996 18.084 2.20996 16.4037C2.20996 13.1532 4.70443 10.5042 7.90523 10.141C8.18585 8.6953 8.96892 7.39118 10.1197 6.45292C11.2706 5.51465 12.7172 5.00089 14.2108 5C15.7047 5.00082 17.1515 5.51452 18.3026 6.45277C19.4537 7.39101 20.2371 8.69516 20.5181 10.141C23.7189 10.5042 26.21 13.1532 26.21 16.4037C26.21 18.084 25.5326 19.6954 24.3269 20.8835C23.1213 22.0717 21.486 22.7391 19.7809 22.7391C19.6369 22.7391 19.4981 22.7053 19.3523 22.6969V22.7391H15.068Z\"\r\n fill=\"white\" />\r\n </svg>\r\n </div>\r\n <a type=\"button\" (click)=\"fileInput.click()\" class=\"text-base cursor-pointer\">\r\n {{ setting('upload-text') }}\r\n </a>\r\n </div>\r\n <input #fileInput type=\"file\" [multiple]=\"setting('multiple-upload')\" (change)=\"onFileSelected($event)\" hidden />\r\n <div class=\"separator\"></div>\r\n <div class=\"file-list flex items-center gap-4 flex-wrap\">\r\n <ng-container *ngIf=\"uploadedFiles?.length\">\r\n <div *ngFor=\"let file of uploadedFiles; let i = index\" (click)=\"deleteFile(i)\"\r\n class=\"flex flex-col items-center justify-center\">\r\n <div class=\"relative\">\r\n <div class=\"close_icon cursor-pointer\">\r\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\" fill=\"none\">\r\n <g clip-path=\"url(#clip0_6837_29683)\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"#F3A041\" />\r\n <mask id=\"mask0_6837_29683\" style=\"mask-type:alpha\" maskUnits=\"userSpaceOnUse\" x=\"4\" y=\"4\" width=\"24\"\r\n height=\"24\">\r\n <rect x=\"4\" y=\"4\" width=\"24\" height=\"24\" fill=\"#D9D9D9\" />\r\n </mask>\r\n <g mask=\"url(#mask0_6837_29683)\">\r\n <path\r\n d=\"M8.2045 8.99815L5.81802 6.61167L6.61351 5.81617L9 8.20266L11.3865 5.81617L12.182 6.61167L9.7955 8.99815L12.182 11.3846L11.3865 12.1801L9 9.79365L6.61351 12.1801L5.81802 11.3846L8.2045 8.99815Z\"\r\n fill=\"white\" />\r\n </g>\r\n </g>\r\n <defs>\r\n <clipPath id=\"clip0_6837_29683\">\r\n <rect width=\"18\" height=\"18\" rx=\"9\" fill=\"white\" />\r\n </clipPath>\r\n </defs>\r\n </svg>\r\n </div>\r\n <img class=\"file-thumbnail\" style=\"border-radius: 4px\" [src]=\"file?.result\" alt=\"\" />\r\n </div>\r\n \r\n <p>{{file?.name}}</p>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </fx-component>", styles: [".custom-upload{border:1px solid #ccc}.custom-upload a{color:#000}.custom-upload .file-list .file-thumbnail{width:120px;height:auto;border:1px solid #ccc;background-color:#fff;padding:4px}.custom-upload .separator{height:56px;width:2px;background-color:#ccc;margin:10px}.close_icon{position:absolute;top:-8px;right:-8px}[type=checkbox]{padding:12px}[type=checkbox]:checked{background-color:#f3a041!important;padding:12px;background-size:1em 1em!important}\n"] }]
1260
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: FxBuilderWrapperService }] });
1261
+
935
1262
  class FxBuilderWrapperComponent {
936
1263
  fxWrapperService;
937
1264
  componentBuilder;
@@ -960,6 +1287,9 @@ class FxBuilderWrapperComponent {
960
1287
  if (!Boolean(this.fxWrapperService.getComponent('uploader'))) {
961
1288
  this.fxWrapperService.registerCustomComponent('Uploader', 'uploader', UploaderComponent);
962
1289
  }
1290
+ if (!Boolean(this.fxWrapperService.getComponent('uploader-checkbox'))) {
1291
+ this.fxWrapperService.registerCustomComponent('Uploader with Checkbox', 'uploader-checkbox', UploaderCheckboxComponent);
1292
+ }
963
1293
  if (!Boolean(this.fxWrapperService.getComponent('toggle'))) {
964
1294
  this.fxWrapperService.registerCustomComponent('Toggle', 'toggle', ToggleComponent);
965
1295
  }