@huntsman-cancer-institute/cod 17.0.5 → 17.0.7

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.
@@ -229,8 +229,8 @@ export class AttributeEditComponent extends AttributeBase {
229
229
  [checked]="attributeChoice.value"
230
230
  [disabled]="!editInline || attribute.isCalculated === 'Y'"
231
231
  (change)="valueMultiChoiceChange(attributeChoice)"
232
- class="form-control checkbox mt-auto mb-auto mr-2" />
233
- <div class="cod-label pl-1">
232
+ class="form-control checkbox mt-auto mb-auto me-2" />
233
+ <div class="cod-label ps-1">
234
234
  {{attributeChoice.choice}}
235
235
  </div>
236
236
  </div>
@@ -255,7 +255,7 @@ export class AttributeEditComponent extends AttributeBase {
255
255
  (change)="valueMultiDictChange(entry)"
256
256
  [disabled]="!editInline || attribute.isCalculated === 'Y'"
257
257
  class="form-control checkbox" />
258
- <div class="cod-label pl-1">
258
+ <div class="cod-label ps-1">
259
259
  {{entry.display}}
260
260
  </div>
261
261
  </div>
@@ -553,8 +553,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
553
553
  [checked]="attributeChoice.value"
554
554
  [disabled]="!editInline || attribute.isCalculated === 'Y'"
555
555
  (change)="valueMultiChoiceChange(attributeChoice)"
556
- class="form-control checkbox mt-auto mb-auto mr-2" />
557
- <div class="cod-label pl-1">
556
+ class="form-control checkbox mt-auto mb-auto me-2" />
557
+ <div class="cod-label ps-1">
558
558
  {{attributeChoice.choice}}
559
559
  </div>
560
560
  </div>
@@ -579,7 +579,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
579
579
  (change)="valueMultiDictChange(entry)"
580
580
  [disabled]="!editInline || attribute.isCalculated === 'Y'"
581
581
  class="form-control checkbox" />
582
- <div class="cod-label pl-1">
582
+ <div class="cod-label ps-1">
583
583
  {{entry.display}}
584
584
  </div>
585
585
  </div>
@@ -669,4 +669,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
669
669
  </ng-template>
670
670
  `, styles: [".hci-cod button.mat-icon-button.mat-button-base{height:20px;width:20px;line-height:unset}.btn-ga{padding:0;height:18px;width:18px}.ga-icon{font-size:.9em;vertical-align:top}.hci-cod .mat-datepicker-toggle-default-icon{height:20px;width:20px}\n"] }]
671
671
  }], ctorParameters: () => [{ type: i1.AttributeService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.NgbModal }] });
672
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlLWVkaXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29kL3NyYy9jb21wb25lbnRzL2F0dHJpYnV0ZS1lZGl0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFNVixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7O0FBTy9EOzs7R0FHRztBQTRWSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsYUFBYTtJQUV2RCxnRUFBZ0U7SUFFaEUsWUFBWSxnQkFBa0MsRUFBRSxVQUFzQixFQUFFLFFBQW1CLEVBQUUsWUFBc0I7UUFDakgsS0FBSyxDQUFDLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELElBQUk7UUFDRixLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZixDQUFDOzhHQVZVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLGlGQXpWdkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ1VULDZxV0F5QlUsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQTNWbEMsU0FBUzsrQkFDRSxvQkFBb0IsWUFDcEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ1VUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbmplY3QsXHJcbiAgSW5qZWN0aW9uVG9rZW4sXHJcbiAgSW5wdXQsXHJcbiAgaXNEZXZNb2RlLFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBSZW5kZXJlcjIsXHJcbiAgVmlld0NoaWxkcmVuXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7TmdiTW9kYWx9IGZyb20gXCJAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcFwiO1xyXG5pbXBvcnQge0F0dHJpYnV0ZUJhc2V9IGZyb20gXCIuL2F0dHJpYnV0ZS1iYXNlXCI7XHJcbmltcG9ydCB7QXR0cmlidXRlU2VydmljZX0gZnJvbSBcIi4uL3NlcnZpY2VzL2F0dHJpYnV0ZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QXR0cmlidXRlTG9uZ1RleHR9IGZyb20gXCIuLi9tb2RlbC9hdHRyaWJ1dGUtbG9uZy10ZXh0LmVudGl0eVwiO1xyXG5pbXBvcnQge0F0dHJpYnV0ZX0gZnJvbSBcIi4uL21vZGVsL2F0dHJpYnV0ZS5lbnRpdHlcIjtcclxuaW1wb3J0IHtBdHRyaWJ1dGVWYWx1ZX0gZnJvbSBcIi4uL21vZGVsL2F0dHJpYnV0ZS12YWx1ZS5lbnRpdHlcIjtcclxuaW1wb3J0IHtBdHRyaWJ1dGVDaG9pY2V9IGZyb20gXCIuLi9tb2RlbC9hdHRyaWJ1dGUtY2hvaWNlLmVudGl0eVwiO1xyXG5pbXBvcnQge0dyYXBoaWNhbEF0dHJpYnV0ZX0gZnJvbSBcIi4uL21vZGVsL2dyYXBoaWNhbC1hdHRyaWJ1dGUuZW50aXR5XCI7XHJcblxyXG4vKipcclxuICogVGhpcyBjb21wb25lbnQgaXMgc3BlY2lmaWNhbGx5IGRlc2lnbmVkIHRvIGV4aXN0IGluIGEgbW9kYWwgZm9yIGVkaXRpbmcuICBUaGlzIGlzIGRpZmZlcmVudCBmcm9tIHRoZSBmbGV4IGF0dHJpYnV0ZVxyXG4gKiBiZWNhdXNlIGNvbXBvbmVudHMgc3VjaCBhcyB0aGUgZ3JpZCBuZWVkIGV4dHJhIGNvbmZpZ3VyYXRpb24gZm9yIGVkaXRpbmcuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJoY2ktYXR0cmlidXRlLWVkaXRcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPCEtLSBTdHJpbmcgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ1MnXCI+XHJcbiAgICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVN0cmluZ0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIFRleHQgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ1RYVCdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgIHNwZWxsY2hlY2s9XCJzcGVsbGNoZWNrXCJcclxuICAgICAgICAgICAgICAgICBsYW5nPVwiZW5cIlxyXG4gICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZUxvbmdUZXh0LnRleHREYXRhXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVRleHRDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gTnVtZXJpYyAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnTidcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlTnVtZXJpY1wiXHJcbiAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVOdW1lcmljQ2hhbmdlKCRldmVudClcIi8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBJbnRlZ2VyIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdJJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcclxuICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVJbnRlZ2VyXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUludGVnZXJDaGFuZ2UoJGV2ZW50KVwiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBEYXRlIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdEJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgICAgIG5hbWU9XCJ2YWx1ZURhdGVcIlxyXG4gICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlRGF0ZVwiXHJcbiAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVEYXRlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIFttYXREYXRlcGlja2VyXT1cInZhbHVlRGF0ZVwiXHJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlICBtYXRTdWZmaXggW2Zvcl09XCJ2YWx1ZURhdGVcIiBjbGFzcz1cImNvZC1kcC10b2dnbGVcIj48L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cclxuICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyICN2YWx1ZURhdGU+PC9tYXQtZGF0ZXBpY2tlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIERhdGUgVGltZSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRFQnXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPGlucHV0ICNpbnB1dFJlZlxyXG4gICAgICAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgICAgICAgbmFtZT1cInZhbHVlRGF0ZVRpbWVcIlxyXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLmRhdGVcIlxyXG4gICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlRGF0ZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICBbbmd4TWF0RGF0ZXRpbWVQaWNrZXJdPVwiZHRwaWNrZXJcIj5cclxuICAgICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJkdHBpY2tlclwiIGNsYXNzPVwiY29kLWRwLXRvZ2dsZVwiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxyXG4gICAgICAgICAgICAgICA8bmd4LW1hdC1kYXRldGltZS1waWNrZXIgI2R0cGlja2VyIFtzaG93U2Vjb25kc109XCJ0cnVlXCI+PC9uZ3gtbWF0LWRhdGV0aW1lLXBpY2tlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIENoZWNrYm94IC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdDQidcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmcgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ2YWx1ZUNoZWNrYm94Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIEJvb2xlYW4gLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0InXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVN0cmluZ0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlZGl0LXJlbmRlcmVyXCI+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwidW5kZWZpbmVkXCI+PC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ1knXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1knXCI+WWVzPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ04nXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ04nXCI+Tm88L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gRXh0ZW5kZWQgQm9vbGVhbiAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRUInXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVN0cmluZ0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlZGl0LXJlbmRlcmVyXCI+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwidW5kZWZpbmVkXCI+PC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ1knXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1knXCI+WWVzPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ04nXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ04nXCI+Tm88L29wdGlvbj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCInVSdcIiBbc2VsZWN0ZWRdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlU3RyaW5nID09PSAnVSdcIj5Vbmtub3duPC9vcHRpb24+XHJcbiAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIENob2ljZTogU2luZ2xlIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdBQycgJiYgYXR0cmlidXRlLmlzTXVsdGlWYWx1ZSA9PT0gJ04nXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCBbbmdNb2RlbF09XCIoYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlQXR0cmlidXRlQ2hvaWNlKT9hdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVBdHRyaWJ1dGVDaG9pY2UuaWRBdHRyaWJ1dGVDaG9pY2U6dW5kZWZpbmVkXCJcclxuICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVDaG9pY2VDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZWRpdC1yZW5kZXJlclwiPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cInVuZGVmaW5lZFwiPjwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBhdHRyaWJ1dGVDaG9pY2Ugb2YgYXR0cmlidXRlQ2hvaWNlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nVmFsdWVdPVwiYXR0cmlidXRlQ2hvaWNlLmlkQXR0cmlidXRlQ2hvaWNlXCI+XHJcbiAgICAgICAgICAgICAge3sgYXR0cmlidXRlQ2hvaWNlLmNob2ljZSB9fVxyXG4gICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gQ2hvaWNlOiBNdWx0aSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnQUMnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdZJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gY29sLW1kLTZcIiBzdHlsZT1cInJvdy1nYXA6IDVweFwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYXR0cmlidXRlQ2hvaWNlIG9mIGF0dHJpYnV0ZUNob2ljZXNcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJhdHRyaWJ1dGVDaG9pY2UudmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ2YWx1ZU11bHRpQ2hvaWNlQ2hhbmdlKGF0dHJpYnV0ZUNob2ljZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBjaGVja2JveCBtdC1hdXRvIG1iLWF1dG8gbXItMlwiIC8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvZC1sYWJlbCBwbC0xXCI+XHJcbiAgICAgICAgICAgICAgICB7e2F0dHJpYnV0ZUNob2ljZS5jaG9pY2V9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgXHJcbiAgICA8IS0tIERpY3Rpb25hcnk6IE11bHRpIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdESUNUJyAmJiBhdHRyaWJ1dGUuaXNNdWx0aVZhbHVlID09PSAnWSdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvbC1tZC02XCIgc3R5bGU9XCJyb3ctZ2FwOiA1cHhcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGVudHJ5IG9mIGRpY3Rpb25hcnlFbnRyaWVzXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiZW50cnkuY2hlY2tlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInZhbHVlTXVsdGlEaWN0Q2hhbmdlKGVudHJ5KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBjaGVja2JveFwiIC8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvZC1sYWJlbCBwbC0xXCI+XHJcbiAgICAgICAgICAgICAgICB7e2VudHJ5LmRpc3BsYXl9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPiAgIFxyXG5cclxuICAgIDwhLS0gRGljdGlvbmFyeSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRElDVCcgJiYgYXR0cmlidXRlLmlzTXVsdGlWYWx1ZSA9PT0gJ04nXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlSWREaWN0aW9uYXJ5XCJcclxuICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVEaWN0Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZWRpdC1yZW5kZXJlclwiPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cInVuZGVmaW5lZFwiPjwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBlbnRyeSBvZiBkaWN0aW9uYXJ5RW50cmllc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nVmFsdWVdPVwiZW50cnkudmFsdWVcIj5cclxuICAgICAgICAgICAgICB7eyBlbnRyeS5kaXNwbGF5IH19XHJcbiAgICAgICAgICAgIDwvb3B0aW9uPlxyXG4gICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBHcmlkIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdHQSdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgc3R5bGU9XCJtYXJnaW4tbGVmdDogYXV0bztcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1nYVwiIChjbGljayk9XCJhZGRHcmlkUm93KGVkaXRHcmlkTW9kYWwsIGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZSlcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdhLWljb25cIj5cclxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXBsdXMgZmEteHNcIj48L2k+XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1nYVwiIChjbGljayk9XCJyZW1vdmVHcmlkUm93KGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZSlcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdhLWljb25cIj5cclxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLW1pbnVzIGZhLXhzXCI+PC9pPlxyXG4gICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgPGFnLWdyaWQtYW5ndWxhciAjZ3JpZEF0dHJpYnV0ZVxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiYWctdGhlbWUtYWxwaW5lXCJcclxuICAgICAgICAgICAgICAoZ3JpZFJlYWR5KT1cInRoaXMub25HcmlkUmVhZHkoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgKG1vZGVsVXBkYXRlZCk9XCJvbk1vZGVsVXBkYXRlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAoZ3JpZFNpemVDaGFuZ2VkKT1cIm9uR3JpZFNpemVDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChyb3dEb3VibGVDbGlja2VkKT1cImVkaXRHcmlkUm93KGVkaXRHcmlkTW9kYWwsIGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZSwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgW2dyaWRPcHRpb25zXT1cInRoaXMuZ3JpZE9wdGlvbnNcIlxyXG4gICAgICAgICAgICAgIFtyb3dTZWxlY3Rpb25dPVwiJ3NpbmdsZSdcIlxyXG4gICAgICAgICAgICAgIFtjb2x1bW5EZWZzXT1cImdyaWRDb2x1bW5zXCJcclxuICAgICAgICAgICAgICBbcm93RGF0YV09XCJncmlkRGF0YVwiXHJcbiAgICAgICAgICAgICAgW3N0eWxlLndpZHRoXT1cImF0dHJpYnV0ZS53ICsgJ3B4J1wiXHJcbiAgICAgICAgICAgICAgW3N0eWxlLmhlaWdodF09XCJhdHRyaWJ1dGUuaCArICdweCdcIj5cclxuICAgICAgICAgIDwvYWctZ3JpZC1hbmd1bGFyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZSAjZWRpdEdyaWRNb2RhbCBsZXQtY2xvc2U9XCJjbG9zZVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XHJcbiAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fSBHcmlkIFJvd1xyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHkgZC1mbGV4IGZsZXgtY29sdW1uIGhjaS1jb2QtZWRpdFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGF0dHJpYnV0ZSBvZiBlZGl0R3JvdXBSb3dBdHRyaWJ1dGVzXCI+XHJcbiAgICAgICAgICA8aGNpLWF0dHJpYnV0ZS1lZGl0IFtpZF09XCInZWRpdC1pZC1hdHRyaWJ1dGUtJyArIGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtncm91cEF0dHJpYnV0ZVJvd0lkXT1cImVkaXRHcm91cEF0dHJpYnV0ZVJvd0lkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHJpYnV0ZV09XCJhdHRyaWJ1dGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF0dHJpYnV0ZVwiPjwvaGNpLWF0dHJpYnV0ZS1lZGl0PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlclwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIiAoY2xpY2spPVwiY2xvc2UoJ1NhdmUnKVwiPlNhdmU8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cImNsb3NlKCdDYW5jZWwnKVwiPkNhbmNlbDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtgXHJcbiAgICAuaGNpLWNvZCBidXR0b24ubWF0LWljb24tYnV0dG9uLm1hdC1idXR0b24tYmFzZSB7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB1bnNldDtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuLWdhIHtcclxuICAgICAgcGFkZGluZzogMHB4O1xyXG4gICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5nYS1pY29uIHtcclxuICAgICAgZm9udC1zaXplOiAuOWVtO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgfVxyXG5cclxuICAgIC5oY2ktY29kIC5tYXQtZGF0ZXBpY2tlci10b2dnbGUtZGVmYXVsdC1pY29uIHtcclxuICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICB3aWR0aDogMjBweDtcclxuICAgIH1cclxuIGBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdHRyaWJ1dGVFZGl0Q29tcG9uZW50IGV4dGVuZHMgQXR0cmlidXRlQmFzZSB7XHJcblxyXG4gIC8vZGljdGlvbmFyeUVuZHBvaW50ID0gdGhpcy5hdHRyaWJ1dGVTZXJ2aWNlLmRpY3Rpb25hcnlFbmRwb2ludDtcclxuXHJcbiAgY29uc3RydWN0b3IoYXR0cmlidXRlU2VydmljZTogQXR0cmlidXRlU2VydmljZSwgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcmVuZGVyZXI6IFJlbmRlcmVyMiwgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCkge1xyXG4gICAgc3VwZXIoYXR0cmlidXRlU2VydmljZSwgZWxlbWVudFJlZiwgcmVuZGVyZXIsIG1vZGFsU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBpbml0KCk6IHZvaWQge1xyXG4gICAgc3VwZXIuaW5pdCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
672
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlLWVkaXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29kL3NyYy9jb21wb25lbnRzL2F0dHJpYnV0ZS1lZGl0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFVBQVUsRUFNVixTQUFTLEVBRVYsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7O0FBTy9EOzs7R0FHRztBQTRWSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsYUFBYTtJQUV2RCxnRUFBZ0U7SUFFaEUsWUFBWSxnQkFBa0MsRUFBRSxVQUFzQixFQUFFLFFBQW1CLEVBQUUsWUFBc0I7UUFDakgsS0FBSyxDQUFDLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELElBQUk7UUFDRixLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZixDQUFDOzhHQVZVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLGlGQXpWdkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ1VULDZxV0F5QlUsc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQTNWbEMsU0FBUzsrQkFDRSxvQkFBb0IsWUFDcEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBZ1VUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgRWxlbWVudFJlZixcclxuICBJbmplY3QsXHJcbiAgSW5qZWN0aW9uVG9rZW4sXHJcbiAgSW5wdXQsXHJcbiAgaXNEZXZNb2RlLFxyXG4gIFF1ZXJ5TGlzdCxcclxuICBSZW5kZXJlcjIsXHJcbiAgVmlld0NoaWxkcmVuXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbmltcG9ydCB7TmdiTW9kYWx9IGZyb20gXCJAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcFwiO1xyXG5pbXBvcnQge0F0dHJpYnV0ZUJhc2V9IGZyb20gXCIuL2F0dHJpYnV0ZS1iYXNlXCI7XHJcbmltcG9ydCB7QXR0cmlidXRlU2VydmljZX0gZnJvbSBcIi4uL3NlcnZpY2VzL2F0dHJpYnV0ZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7QXR0cmlidXRlTG9uZ1RleHR9IGZyb20gXCIuLi9tb2RlbC9hdHRyaWJ1dGUtbG9uZy10ZXh0LmVudGl0eVwiO1xyXG5pbXBvcnQge0F0dHJpYnV0ZX0gZnJvbSBcIi4uL21vZGVsL2F0dHJpYnV0ZS5lbnRpdHlcIjtcclxuaW1wb3J0IHtBdHRyaWJ1dGVWYWx1ZX0gZnJvbSBcIi4uL21vZGVsL2F0dHJpYnV0ZS12YWx1ZS5lbnRpdHlcIjtcclxuaW1wb3J0IHtBdHRyaWJ1dGVDaG9pY2V9IGZyb20gXCIuLi9tb2RlbC9hdHRyaWJ1dGUtY2hvaWNlLmVudGl0eVwiO1xyXG5pbXBvcnQge0dyYXBoaWNhbEF0dHJpYnV0ZX0gZnJvbSBcIi4uL21vZGVsL2dyYXBoaWNhbC1hdHRyaWJ1dGUuZW50aXR5XCI7XHJcblxyXG4vKipcclxuICogVGhpcyBjb21wb25lbnQgaXMgc3BlY2lmaWNhbGx5IGRlc2lnbmVkIHRvIGV4aXN0IGluIGEgbW9kYWwgZm9yIGVkaXRpbmcuICBUaGlzIGlzIGRpZmZlcmVudCBmcm9tIHRoZSBmbGV4IGF0dHJpYnV0ZVxyXG4gKiBiZWNhdXNlIGNvbXBvbmVudHMgc3VjaCBhcyB0aGUgZ3JpZCBuZWVkIGV4dHJhIGNvbmZpZ3VyYXRpb24gZm9yIGVkaXRpbmcuXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogXCJoY2ktYXR0cmlidXRlLWVkaXRcIixcclxuICB0ZW1wbGF0ZTogYFxyXG4gICAgPCEtLSBTdHJpbmcgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ1MnXCI+XHJcbiAgICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVN0cmluZ0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAvPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIFRleHQgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ1RYVCdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgIHNwZWxsY2hlY2s9XCJzcGVsbGNoZWNrXCJcclxuICAgICAgICAgICAgICAgICBsYW5nPVwiZW5cIlxyXG4gICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZUxvbmdUZXh0LnRleHREYXRhXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVRleHRDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gTnVtZXJpYyAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnTidcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlTnVtZXJpY1wiXHJcbiAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVOdW1lcmljQ2hhbmdlKCRldmVudClcIi8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBJbnRlZ2VyIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdJJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICB0eXBlPVwibnVtYmVyXCJcclxuICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVJbnRlZ2VyXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUludGVnZXJDaGFuZ2UoJGV2ZW50KVwiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBEYXRlIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdEJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICBtYXRJbnB1dFxyXG4gICAgICAgICAgICAgIG5hbWU9XCJ2YWx1ZURhdGVcIlxyXG4gICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlRGF0ZVwiXHJcbiAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVEYXRlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIFttYXREYXRlcGlja2VyXT1cInZhbHVlRGF0ZVwiXHJcbiAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICA8bWF0LWRhdGVwaWNrZXItdG9nZ2xlICBtYXRTdWZmaXggW2Zvcl09XCJ2YWx1ZURhdGVcIiBjbGFzcz1cImNvZC1kcC10b2dnbGVcIj48L21hdC1kYXRlcGlja2VyLXRvZ2dsZT5cclxuICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyICN2YWx1ZURhdGU+PC9tYXQtZGF0ZXBpY2tlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIERhdGUgVGltZSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRFQnXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPGlucHV0ICNpbnB1dFJlZlxyXG4gICAgICAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgICAgICAgbmFtZT1cInZhbHVlRGF0ZVRpbWVcIlxyXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLmRhdGVcIlxyXG4gICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlRGF0ZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICBbbmd4TWF0RGF0ZXRpbWVQaWNrZXJdPVwiZHRwaWNrZXJcIj5cclxuICAgICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJkdHBpY2tlclwiIGNsYXNzPVwiY29kLWRwLXRvZ2dsZVwiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxyXG4gICAgICAgICAgICAgICA8bmd4LW1hdC1kYXRldGltZS1waWNrZXIgI2R0cGlja2VyIFtzaG93U2Vjb25kc109XCJ0cnVlXCI+PC9uZ3gtbWF0LWRhdGV0aW1lLXBpY2tlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIENoZWNrYm94IC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdDQidcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmcgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ2YWx1ZUNoZWNrYm94Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgLz5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIEJvb2xlYW4gLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0InXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVN0cmluZ0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlZGl0LXJlbmRlcmVyXCI+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwidW5kZWZpbmVkXCI+PC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ1knXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1knXCI+WWVzPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ04nXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ04nXCI+Tm88L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gRXh0ZW5kZWQgQm9vbGVhbiAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRUInXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVN0cmluZ0NoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJlZGl0LXJlbmRlcmVyXCI+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwidW5kZWZpbmVkXCI+PC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ1knXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1knXCI+WWVzPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ04nXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ04nXCI+Tm88L29wdGlvbj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCInVSdcIiBbc2VsZWN0ZWRdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlU3RyaW5nID09PSAnVSdcIj5Vbmtub3duPC9vcHRpb24+XHJcbiAgICAgICAgICA8L3NlbGVjdD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIENob2ljZTogU2luZ2xlIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdBQycgJiYgYXR0cmlidXRlLmlzTXVsdGlWYWx1ZSA9PT0gJ04nXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCBbbmdNb2RlbF09XCIoYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlQXR0cmlidXRlQ2hvaWNlKT9hdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVBdHRyaWJ1dGVDaG9pY2UuaWRBdHRyaWJ1dGVDaG9pY2U6dW5kZWZpbmVkXCJcclxuICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVDaG9pY2VDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZWRpdC1yZW5kZXJlclwiPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cInVuZGVmaW5lZFwiPjwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBhdHRyaWJ1dGVDaG9pY2Ugb2YgYXR0cmlidXRlQ2hvaWNlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nVmFsdWVdPVwiYXR0cmlidXRlQ2hvaWNlLmlkQXR0cmlidXRlQ2hvaWNlXCI+XHJcbiAgICAgICAgICAgICAge3sgYXR0cmlidXRlQ2hvaWNlLmNob2ljZSB9fVxyXG4gICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gQ2hvaWNlOiBNdWx0aSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnQUMnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdZJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LXJvd1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gY29sLW1kLTZcIiBzdHlsZT1cInJvdy1nYXA6IDVweFwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYXR0cmlidXRlQ2hvaWNlIG9mIGF0dHJpYnV0ZUNob2ljZXNcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJhdHRyaWJ1dGVDaG9pY2UudmFsdWVcIlxyXG4gICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCJ2YWx1ZU11bHRpQ2hvaWNlQ2hhbmdlKGF0dHJpYnV0ZUNob2ljZSlcIlxyXG4gICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBjaGVja2JveCBtdC1hdXRvIG1iLWF1dG8gbWUtMlwiIC8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvZC1sYWJlbCBwcy0xXCI+XHJcbiAgICAgICAgICAgICAgICB7e2F0dHJpYnV0ZUNob2ljZS5jaG9pY2V9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgXHJcbiAgICA8IS0tIERpY3Rpb25hcnk6IE11bHRpIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdESUNUJyAmJiBhdHRyaWJ1dGUuaXNNdWx0aVZhbHVlID09PSAnWSdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3dcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTZcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvbC1tZC02XCIgc3R5bGU9XCJyb3ctZ2FwOiA1cHhcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGVudHJ5IG9mIGRpY3Rpb25hcnlFbnRyaWVzXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiZW50cnkuY2hlY2tlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInZhbHVlTXVsdGlEaWN0Q2hhbmdlKGVudHJ5KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBjaGVja2JveFwiIC8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvZC1sYWJlbCBwcy0xXCI+XHJcbiAgICAgICAgICAgICAgICB7e2VudHJ5LmRpc3BsYXl9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPiAgIFxyXG5cclxuICAgIDwhLS0gRGljdGlvbmFyeSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRElDVCcgJiYgYXR0cmlidXRlLmlzTXVsdGlWYWx1ZSA9PT0gJ04nXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtcm93XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvbC1tZC02XCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBjb2wtbWQtNlwiPlxyXG4gICAgICAgICAgPHNlbGVjdCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlSWREaWN0aW9uYXJ5XCJcclxuICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVEaWN0Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZWRpdC1yZW5kZXJlclwiPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cInVuZGVmaW5lZFwiPjwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBlbnRyeSBvZiBkaWN0aW9uYXJ5RW50cmllc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nVmFsdWVdPVwiZW50cnkudmFsdWVcIj5cclxuICAgICAgICAgICAgICB7eyBlbnRyeS5kaXNwbGF5IH19XHJcbiAgICAgICAgICAgIDwvb3B0aW9uPlxyXG4gICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBHcmlkIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdHQSdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW5cIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29sLW1kLTEyXCI+XHJcbiAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgc3R5bGU9XCJtYXJnaW4tbGVmdDogYXV0bztcIj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1nYVwiIChjbGljayk9XCJhZGRHcmlkUm93KGVkaXRHcmlkTW9kYWwsIGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZSlcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdhLWljb25cIj5cclxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXBsdXMgZmEteHNcIj48L2k+XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ0bi1nYVwiIChjbGljayk9XCJyZW1vdmVHcmlkUm93KGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZSlcIj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImdhLWljb25cIj5cclxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLW1pbnVzIGZhLXhzXCI+PC9pPlxyXG4gICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGNvbC1tZC0xMlwiPlxyXG4gICAgICAgICAgPGFnLWdyaWQtYW5ndWxhciAjZ3JpZEF0dHJpYnV0ZVxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiYWctdGhlbWUtYWxwaW5lXCJcclxuICAgICAgICAgICAgICAoZ3JpZFJlYWR5KT1cInRoaXMub25HcmlkUmVhZHkoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgKG1vZGVsVXBkYXRlZCk9XCJvbk1vZGVsVXBkYXRlZCgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAoZ3JpZFNpemVDaGFuZ2VkKT1cIm9uR3JpZFNpemVDaGFuZ2VkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChyb3dEb3VibGVDbGlja2VkKT1cImVkaXRHcmlkUm93KGVkaXRHcmlkTW9kYWwsIGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZSwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgW2dyaWRPcHRpb25zXT1cInRoaXMuZ3JpZE9wdGlvbnNcIlxyXG4gICAgICAgICAgICAgIFtyb3dTZWxlY3Rpb25dPVwiJ3NpbmdsZSdcIlxyXG4gICAgICAgICAgICAgIFtjb2x1bW5EZWZzXT1cImdyaWRDb2x1bW5zXCJcclxuICAgICAgICAgICAgICBbcm93RGF0YV09XCJncmlkRGF0YVwiXHJcbiAgICAgICAgICAgICAgW3N0eWxlLndpZHRoXT1cImF0dHJpYnV0ZS53ICsgJ3B4J1wiXHJcbiAgICAgICAgICAgICAgW3N0eWxlLmhlaWdodF09XCJhdHRyaWJ1dGUuaCArICdweCdcIj5cclxuICAgICAgICAgIDwvYWctZ3JpZC1hbmd1bGFyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDxuZy10ZW1wbGF0ZSAjZWRpdEdyaWRNb2RhbCBsZXQtY2xvc2U9XCJjbG9zZVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XHJcbiAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fSBHcmlkIFJvd1xyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHkgZC1mbGV4IGZsZXgtY29sdW1uIGhjaS1jb2QtZWRpdFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGF0dHJpYnV0ZSBvZiBlZGl0R3JvdXBSb3dBdHRyaWJ1dGVzXCI+XHJcbiAgICAgICAgICA8aGNpLWF0dHJpYnV0ZS1lZGl0IFtpZF09XCInZWRpdC1pZC1hdHRyaWJ1dGUtJyArIGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtncm91cEF0dHJpYnV0ZVJvd0lkXT1cImVkaXRHcm91cEF0dHJpYnV0ZVJvd0lkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHJpYnV0ZV09XCJhdHRyaWJ1dGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF0dHJpYnV0ZVwiPjwvaGNpLWF0dHJpYnV0ZS1lZGl0PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlclwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIiAoY2xpY2spPVwiY2xvc2UoJ1NhdmUnKVwiPlNhdmU8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cImNsb3NlKCdDYW5jZWwnKVwiPkNhbmNlbDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgYCxcclxuICBzdHlsZXM6IFtgXHJcbiAgICAuaGNpLWNvZCBidXR0b24ubWF0LWljb24tYnV0dG9uLm1hdC1idXR0b24tYmFzZSB7XHJcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB1bnNldDtcclxuICAgIH1cclxuXHJcbiAgICAuYnRuLWdhIHtcclxuICAgICAgcGFkZGluZzogMHB4O1xyXG4gICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5nYS1pY29uIHtcclxuICAgICAgZm9udC1zaXplOiAuOWVtO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xyXG4gICAgfVxyXG5cclxuICAgIC5oY2ktY29kIC5tYXQtZGF0ZXBpY2tlci10b2dnbGUtZGVmYXVsdC1pY29uIHtcclxuICAgICAgaGVpZ2h0OiAyMHB4O1xyXG4gICAgICB3aWR0aDogMjBweDtcclxuICAgIH1cclxuIGBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBdHRyaWJ1dGVFZGl0Q29tcG9uZW50IGV4dGVuZHMgQXR0cmlidXRlQmFzZSB7XHJcblxyXG4gIC8vZGljdGlvbmFyeUVuZHBvaW50ID0gdGhpcy5hdHRyaWJ1dGVTZXJ2aWNlLmRpY3Rpb25hcnlFbmRwb2ludDtcclxuXHJcbiAgY29uc3RydWN0b3IoYXR0cmlidXRlU2VydmljZTogQXR0cmlidXRlU2VydmljZSwgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcmVuZGVyZXI6IFJlbmRlcmVyMiwgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCkge1xyXG4gICAgc3VwZXIoYXR0cmlidXRlU2VydmljZSwgZWxlbWVudFJlZiwgcmVuZGVyZXIsIG1vZGFsU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBpbml0KCk6IHZvaWQge1xyXG4gICAgc3VwZXIuaW5pdCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -53,8 +53,8 @@ export class AttributeFlexComponent extends AttributeBase {
53
53
  <ng-container *ngIf="attribute.codeAttributeDataType === 'LINE'">
54
54
  <div #attributeRef
55
55
  class="d-flex flex-row cod-type-line">
56
- <div class="d-flex cod-line mr-1 mt-auto mb-auto flex-shrink-0"></div>
57
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1 flex-shrink-0">
56
+ <div class="d-flex cod-line me-1 mt-auto mb-auto flex-shrink-0"></div>
57
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1 flex-shrink-0">
58
58
  {{attribute.displayName}}
59
59
  </div>
60
60
  <div class="d-flex cod-line grow mt-auto mb-auto"></div>
@@ -65,7 +65,7 @@ export class AttributeFlexComponent extends AttributeBase {
65
65
  <ng-container *ngIf="attribute.codeAttributeDataType === 'LABEL'">
66
66
  <div #attributeRef
67
67
  class="d-flex flex-column cod-type-label">
68
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
68
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
69
69
  {{attribute.displayName}}
70
70
  </div>
71
71
  </div>
@@ -75,7 +75,7 @@ export class AttributeFlexComponent extends AttributeBase {
75
75
  <ng-container *ngIf="attribute.codeAttributeDataType === 'S'">
76
76
  <div #attributeRef
77
77
  class="d-flex flex-column cod-type-s">
78
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
78
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
79
79
  {{attribute.displayName}}
80
80
  </div>
81
81
  <div class="d-flex flex-grow-1">
@@ -93,7 +93,7 @@ export class AttributeFlexComponent extends AttributeBase {
93
93
  <ng-container *ngIf="attribute.codeAttributeDataType === 'TXT'">
94
94
  <div #attributeRef
95
95
  class="d-flex flex-column cod-type-txt">
96
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
96
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
97
97
  {{attribute.displayName}}
98
98
  </div>
99
99
  <div class="d-flex flex-grow-1">
@@ -115,7 +115,7 @@ export class AttributeFlexComponent extends AttributeBase {
115
115
  <ng-container *ngIf="attribute.codeAttributeDataType === 'CB'">
116
116
  <div #attributeRef
117
117
  class="d-flex flex-column cod-type-cb">
118
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
118
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
119
119
  {{attribute.displayName}}
120
120
  </div>
121
121
  <div class="d-flex flex-grow-1">
@@ -133,7 +133,7 @@ export class AttributeFlexComponent extends AttributeBase {
133
133
  <ng-container *ngIf="attribute.codeAttributeDataType === 'N'">
134
134
  <div #attributeRef
135
135
  class="d-flex flex-column cod-type-n">
136
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
136
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
137
137
  {{attribute.displayName}}
138
138
  </div>
139
139
  <div class="d-flex flex-grow-1">
@@ -151,7 +151,7 @@ export class AttributeFlexComponent extends AttributeBase {
151
151
  <ng-container *ngIf="attribute.codeAttributeDataType === 'I'">
152
152
  <div #attributeRef
153
153
  class="d-flex flex-column cod-type-i">
154
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
154
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
155
155
  {{attribute.displayName}}
156
156
  </div>
157
157
  <div class="d-flex flex-grow-1">
@@ -169,7 +169,7 @@ export class AttributeFlexComponent extends AttributeBase {
169
169
  <ng-container *ngIf="attribute.codeAttributeDataType === 'D'">
170
170
  <div #attributeRef
171
171
  class="d-flex flex-column cod-type-d">
172
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
172
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
173
173
  {{attribute.displayName}}
174
174
  </div>
175
175
  <div class="d-flex flex-grow-1">
@@ -191,7 +191,7 @@ export class AttributeFlexComponent extends AttributeBase {
191
191
  <ng-container *ngIf="attribute.codeAttributeDataType === 'DT'">
192
192
  <div #attributeRef
193
193
  class="d-flex flex-column cod-type-dt">
194
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
194
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
195
195
  {{attribute.displayName}}
196
196
  </div>
197
197
  <div class="d-flex flex-grow-1">
@@ -213,7 +213,7 @@ export class AttributeFlexComponent extends AttributeBase {
213
213
  <ng-container *ngIf="attribute.codeAttributeDataType === 'B'">
214
214
  <div #attributeRef
215
215
  class="d-flex flex-column cod-type-b">
216
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
216
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
217
217
  {{attribute.displayName}}
218
218
  </div>
219
219
  <div class="d-flex flex-grow-1">
@@ -234,7 +234,7 @@ export class AttributeFlexComponent extends AttributeBase {
234
234
  <ng-container *ngIf="attribute.codeAttributeDataType === 'EB'">
235
235
  <div #attributeRef
236
236
  class="d-flex flex-column cod-type-eb">
237
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
237
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
238
238
  {{attribute.displayName}}
239
239
  </div>
240
240
  <div class="d-flex flex-grow-1">
@@ -256,7 +256,7 @@ export class AttributeFlexComponent extends AttributeBase {
256
256
  <ng-container *ngIf="attribute.codeAttributeDataType === 'AC' && attribute.isMultiValue === 'N'">
257
257
  <div #attributeRef
258
258
  class="d-flex flex-column cod-type-ac-n">
259
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
259
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
260
260
  {{attribute.displayName}}
261
261
  </div>
262
262
  <div class="d-flex flex-grow-1">
@@ -278,7 +278,7 @@ export class AttributeFlexComponent extends AttributeBase {
278
278
  <ng-container *ngIf="attribute.codeAttributeDataType === 'AC' && attribute.isMultiValue === 'Y'">
279
279
  <div #attributeRef
280
280
  class="d-flex flex-column cod-type-ac-y">
281
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
281
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
282
282
  {{attribute.displayName}}
283
283
  </div>
284
284
  <div class="d-flex flex-grow-1 flex-column y-auto" style="max-height: 125px; row-gap: 5px">
@@ -290,7 +290,7 @@ export class AttributeFlexComponent extends AttributeBase {
290
290
  (change)="valueMultiChoiceChange(attributeChoice)"
291
291
  [disabled]="!editInline || attribute.isCalculated === 'Y'"
292
292
  class="form-control checkbox" />
293
- <div class="cod-label pl-1">
293
+ <div class="cod-label ps-1">
294
294
  {{attributeChoice.choice}}
295
295
  </div>
296
296
  </div>
@@ -303,7 +303,7 @@ export class AttributeFlexComponent extends AttributeBase {
303
303
  <ng-container *ngIf="attribute.codeAttributeDataType === 'DICT' && attribute.isMultiValue === 'Y'">
304
304
  <div #attributeRef
305
305
  class="d-flex flex-column cod-type-ac-y">
306
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
306
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
307
307
  {{attribute.displayName}}
308
308
  </div>
309
309
  <div class="d-flex flex-grow-1 flex-column y-auto" style="max-height: 125px; row-gap: 5px">
@@ -315,7 +315,7 @@ export class AttributeFlexComponent extends AttributeBase {
315
315
  (change)="valueMultiDictChange(entry)"
316
316
  [disabled]="!editInline || attribute.isCalculated === 'Y'"
317
317
  class="form-control checkbox" />
318
- <div class="cod-label pl-1">
318
+ <div class="cod-label ps-1">
319
319
  {{entry.display}}
320
320
  </div>
321
321
  </div>
@@ -328,7 +328,7 @@ export class AttributeFlexComponent extends AttributeBase {
328
328
  <ng-container *ngIf="attribute.codeAttributeDataType === 'DICT' && attribute.isMultiValue === 'N'">
329
329
  <div #attributeRef
330
330
  class="d-flex flex-column cod-type-dict">
331
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
331
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
332
332
  {{attribute.displayName}}
333
333
  </div>
334
334
  <div class="d-flex flex-grow-1">
@@ -350,7 +350,7 @@ export class AttributeFlexComponent extends AttributeBase {
350
350
  <!-- Grid -->
351
351
  <ng-container *ngIf="attribute.codeAttributeDataType === 'GA'">
352
352
  <div #attributeRef class="d-flex flex-column cod-type-ga">
353
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
353
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
354
354
  <div>
355
355
  {{attribute.displayName}}
356
356
  </div>
@@ -411,8 +411,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
411
411
  <ng-container *ngIf="attribute.codeAttributeDataType === 'LINE'">
412
412
  <div #attributeRef
413
413
  class="d-flex flex-row cod-type-line">
414
- <div class="d-flex cod-line mr-1 mt-auto mb-auto flex-shrink-0"></div>
415
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1 flex-shrink-0">
414
+ <div class="d-flex cod-line me-1 mt-auto mb-auto flex-shrink-0"></div>
415
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1 flex-shrink-0">
416
416
  {{attribute.displayName}}
417
417
  </div>
418
418
  <div class="d-flex cod-line grow mt-auto mb-auto"></div>
@@ -423,7 +423,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
423
423
  <ng-container *ngIf="attribute.codeAttributeDataType === 'LABEL'">
424
424
  <div #attributeRef
425
425
  class="d-flex flex-column cod-type-label">
426
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
426
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
427
427
  {{attribute.displayName}}
428
428
  </div>
429
429
  </div>
@@ -433,7 +433,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
433
433
  <ng-container *ngIf="attribute.codeAttributeDataType === 'S'">
434
434
  <div #attributeRef
435
435
  class="d-flex flex-column cod-type-s">
436
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
436
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
437
437
  {{attribute.displayName}}
438
438
  </div>
439
439
  <div class="d-flex flex-grow-1">
@@ -451,7 +451,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
451
451
  <ng-container *ngIf="attribute.codeAttributeDataType === 'TXT'">
452
452
  <div #attributeRef
453
453
  class="d-flex flex-column cod-type-txt">
454
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
454
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
455
455
  {{attribute.displayName}}
456
456
  </div>
457
457
  <div class="d-flex flex-grow-1">
@@ -473,7 +473,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
473
473
  <ng-container *ngIf="attribute.codeAttributeDataType === 'CB'">
474
474
  <div #attributeRef
475
475
  class="d-flex flex-column cod-type-cb">
476
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
476
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
477
477
  {{attribute.displayName}}
478
478
  </div>
479
479
  <div class="d-flex flex-grow-1">
@@ -491,7 +491,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
491
491
  <ng-container *ngIf="attribute.codeAttributeDataType === 'N'">
492
492
  <div #attributeRef
493
493
  class="d-flex flex-column cod-type-n">
494
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
494
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
495
495
  {{attribute.displayName}}
496
496
  </div>
497
497
  <div class="d-flex flex-grow-1">
@@ -509,7 +509,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
509
509
  <ng-container *ngIf="attribute.codeAttributeDataType === 'I'">
510
510
  <div #attributeRef
511
511
  class="d-flex flex-column cod-type-i">
512
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
512
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
513
513
  {{attribute.displayName}}
514
514
  </div>
515
515
  <div class="d-flex flex-grow-1">
@@ -527,7 +527,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
527
527
  <ng-container *ngIf="attribute.codeAttributeDataType === 'D'">
528
528
  <div #attributeRef
529
529
  class="d-flex flex-column cod-type-d">
530
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
530
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
531
531
  {{attribute.displayName}}
532
532
  </div>
533
533
  <div class="d-flex flex-grow-1">
@@ -549,7 +549,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
549
549
  <ng-container *ngIf="attribute.codeAttributeDataType === 'DT'">
550
550
  <div #attributeRef
551
551
  class="d-flex flex-column cod-type-dt">
552
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
552
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
553
553
  {{attribute.displayName}}
554
554
  </div>
555
555
  <div class="d-flex flex-grow-1">
@@ -571,7 +571,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
571
571
  <ng-container *ngIf="attribute.codeAttributeDataType === 'B'">
572
572
  <div #attributeRef
573
573
  class="d-flex flex-column cod-type-b">
574
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
574
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
575
575
  {{attribute.displayName}}
576
576
  </div>
577
577
  <div class="d-flex flex-grow-1">
@@ -592,7 +592,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
592
592
  <ng-container *ngIf="attribute.codeAttributeDataType === 'EB'">
593
593
  <div #attributeRef
594
594
  class="d-flex flex-column cod-type-eb">
595
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
595
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
596
596
  {{attribute.displayName}}
597
597
  </div>
598
598
  <div class="d-flex flex-grow-1">
@@ -614,7 +614,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
614
614
  <ng-container *ngIf="attribute.codeAttributeDataType === 'AC' && attribute.isMultiValue === 'N'">
615
615
  <div #attributeRef
616
616
  class="d-flex flex-column cod-type-ac-n">
617
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
617
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
618
618
  {{attribute.displayName}}
619
619
  </div>
620
620
  <div class="d-flex flex-grow-1">
@@ -636,7 +636,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
636
636
  <ng-container *ngIf="attribute.codeAttributeDataType === 'AC' && attribute.isMultiValue === 'Y'">
637
637
  <div #attributeRef
638
638
  class="d-flex flex-column cod-type-ac-y">
639
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
639
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
640
640
  {{attribute.displayName}}
641
641
  </div>
642
642
  <div class="d-flex flex-grow-1 flex-column y-auto" style="max-height: 125px; row-gap: 5px">
@@ -648,7 +648,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
648
648
  (change)="valueMultiChoiceChange(attributeChoice)"
649
649
  [disabled]="!editInline || attribute.isCalculated === 'Y'"
650
650
  class="form-control checkbox" />
651
- <div class="cod-label pl-1">
651
+ <div class="cod-label ps-1">
652
652
  {{attributeChoice.choice}}
653
653
  </div>
654
654
  </div>
@@ -661,7 +661,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
661
661
  <ng-container *ngIf="attribute.codeAttributeDataType === 'DICT' && attribute.isMultiValue === 'Y'">
662
662
  <div #attributeRef
663
663
  class="d-flex flex-column cod-type-ac-y">
664
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
664
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
665
665
  {{attribute.displayName}}
666
666
  </div>
667
667
  <div class="d-flex flex-grow-1 flex-column y-auto" style="max-height: 125px; row-gap: 5px">
@@ -673,7 +673,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
673
673
  (change)="valueMultiDictChange(entry)"
674
674
  [disabled]="!editInline || attribute.isCalculated === 'Y'"
675
675
  class="form-control checkbox" />
676
- <div class="cod-label pl-1">
676
+ <div class="cod-label ps-1">
677
677
  {{entry.display}}
678
678
  </div>
679
679
  </div>
@@ -686,7 +686,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
686
686
  <ng-container *ngIf="attribute.codeAttributeDataType === 'DICT' && attribute.isMultiValue === 'N'">
687
687
  <div #attributeRef
688
688
  class="d-flex flex-column cod-type-dict">
689
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
689
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
690
690
  {{attribute.displayName}}
691
691
  </div>
692
692
  <div class="d-flex flex-grow-1">
@@ -708,7 +708,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
708
708
  <!-- Grid -->
709
709
  <ng-container *ngIf="attribute.codeAttributeDataType === 'GA'">
710
710
  <div #attributeRef class="d-flex flex-column cod-type-ga">
711
- <div *ngIf="attribute.displayName" class="d-flex cod-top-label mr-1">
711
+ <div *ngIf="attribute.displayName" class="d-flex cod-top-label me-1">
712
712
  <div>
713
713
  {{attribute.displayName}}
714
714
  </div>
@@ -762,4 +762,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
762
762
  </ng-template>
763
763
  `, styles: [".hci-cod button.mat-icon-button.mat-button-base{height:20px;width:20px;line-height:unset}.btn-ga{padding:0;height:18px;width:18px}.ga-icon{font-size:.9em;vertical-align:top}.hci-cod .mat-datepicker-toggle-default-icon{height:20px;width:20px}\n"] }]
764
764
  }], ctorParameters: () => [{ type: i1.AttributeService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2.NgbModal }] });
765
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlLWZsZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29kL3NyYy9jb21wb25lbnRzL2F0dHJpYnV0ZS1mbGV4LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBVSxTQUFTLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBR3BELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7OztBQUkvRDs7OztHQUlHO0FBZ1lILE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxhQUFhO0lBRXZELFlBQVksZ0JBQWtDLEVBQUUsVUFBc0IsRUFBRSxRQUFtQixFQUFFLFlBQXNCO1FBQ2pILEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxxQkFBcUIsQ0FBQyxVQUFnQyxFQUFFLE9BQWM7UUFDcEUsS0FBSyxDQUFDLHFCQUFxQixDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVqRCxJQUFJLEtBQUssR0FBVyxDQUFDLENBQUM7UUFDdEIsS0FBSyxJQUFJLFNBQVMsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNqQyxLQUFLLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQztRQUN2QixDQUFDO1FBRUQsS0FBSyxJQUFJLFNBQVMsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNqQyxJQUFJLFlBQVksR0FBVyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUVuRSxLQUFLLElBQUksTUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUMzQixJQUFJLE1BQU0sQ0FBQyxjQUFjLElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUN6RixNQUFNLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUM7b0JBQzlCLE1BQU0sQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO29CQUNuQyxNQUFNO2dCQUNSLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7OEdBcENVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLGlGQTVYdkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtXVDs7MkZBMEJVLHNCQUFzQjtrQkEvWGxDLFNBQVM7K0JBQ0Usb0JBQW9CLGlCQUNmLGlCQUFpQixDQUFDLElBQUksWUFDM0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtXVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBJbmplY3QsIFJlbmRlcmVyMiwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7TmdiTW9kYWx9IGZyb20gXCJAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcFwiO1xyXG5cclxuXHJcbmltcG9ydCB7QXR0cmlidXRlQmFzZX0gZnJvbSBcIi4vYXR0cmlidXRlLWJhc2VcIjtcclxuaW1wb3J0IHtBdHRyaWJ1dGVTZXJ2aWNlfSBmcm9tIFwiLi4vc2VydmljZXMvYXR0cmlidXRlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtBdHRyaWJ1dGV9IGZyb20gXCIuLi9tb2RlbC9hdHRyaWJ1dGUuZW50aXR5XCI7XHJcbmltcG9ydCB7R3JhcGhpY2FsQXR0cmlidXRlfSBmcm9tIFwiLi4vbW9kZWwvZ3JhcGhpY2FsLWF0dHJpYnV0ZS5lbnRpdHlcIjtcclxuXHJcbi8qKlxyXG4gKiBUaGUgdmlldyBmb3IgYXR0cmlidXRlcyBvcmdhbml6ZWQgaW4gYSBmbGV4IGxheW91dC4gIFRoaXMgd2lsbCBhcnJhbmdlIGFsbCBhdHRyaWJ1dGVzIGluIGEgZm91ciBjb2x1bW4gbGF5b3V0XHJcbiAqIHdpdGggZ3JpZHMgdGFraW5nIHVwIGFsbCAxMiBjb2x1bW5zLiAgVGhlIGF0dHJpYnV0ZXMgaGVyZSB3aWxsIGZpbGwgdGhlIHRoaXMgcGFyZW50IGNvbXBvbmVudCB3aGljaCBkZWZpbmVzIHRoZVxyXG4gKiBjb2x1bW4gc2l6ZS5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImhjaS1hdHRyaWJ1dGUtZmxleFwiLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDwhLS0gTGluZSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnTElORSdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3cgY29kLXR5cGUtbGluZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggY29kLWxpbmUgbXItMSBtdC1hdXRvIG1iLWF1dG8gZmxleC1zaHJpbmstMFwiPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1yLTEgZmxleC1zaHJpbmstMFwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggY29kLWxpbmUgZ3JvdyBtdC1hdXRvIG1iLWF1dG9cIj48L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIExhYmVsIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdMQUJFTCdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1sYWJlbFwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1yLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIFN0cmluZyAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnUydcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gY29kLXR5cGUtc1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1yLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlU3RyaW5nXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVN0cmluZ0NoYW5nZSgkZXZlbnQpXCJcclxuXHRcdFx0XHQgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBUZXh0IC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdUWFQnXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvZC10eXBlLXR4dFwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1yLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICA8dGV4dGFyZWFcclxuICAgICAgICAgICAgI2lucHV0UmVmXHJcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgc3BlbGxjaGVjaz1cInNwZWxsY2hlY2tcIlxyXG4gICAgICAgICAgICBsYW5nPVwiZW5cIlxyXG4gICAgICAgICAgICBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVMb25nVGV4dC50ZXh0RGF0YVwiXHJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwidmFsdWVUZXh0Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIj5cclxuICAgICAgICAgIDwvdGV4dGFyZWE+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBDaGVja2JveCAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnQ0InXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvZC10eXBlLWNiXCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbXItMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTFcIj5cclxuICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInZhbHVlQ2hlY2tib3hDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gTnVtZXJpYyAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnTidcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gY29kLXR5cGUtblwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1yLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVOdW1lcmljXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZU51bWVyaWNDaGFuZ2UoJGV2ZW50KVwiXHJcblx0XHRcdFx0ICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gSW50ZWdlciAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnSSdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gY29kLXR5cGUtaVwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1yLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVJbnRlZ2VyXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUludGVnZXJDaGFuZ2UoJGV2ZW50KVwiXHJcblx0XHRcdFx0ICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gRGF0ZSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRCdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gY29kLXR5cGUtZFwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1yLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICAgPGlucHV0ICNpbnB1dFJlZlxyXG4gICAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgICAgbmFtZT1cInZhbHVlRGF0ZVwiICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlRGF0ZVwiIFxyXG4gICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlRGF0ZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJ2YWx1ZURhdGVcIlxyXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCI+XHJcbiAgICAgICAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgIG1hdFN1ZmZpeCBbZm9yXT1cInZhbHVlRGF0ZVwiIGNsYXNzPVwiY29kLWRwLXRvZ2dsZVwiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxyXG4gICAgICAgICAgICA8bWF0LWRhdGVwaWNrZXIgI3ZhbHVlRGF0ZT48L21hdC1kYXRlcGlja2VyPiAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBEYXRlIFRpbWUgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0RUJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1kdFwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1yLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgICAgICBuYW1lPVwidmFsdWVEYXRlVGltZVwiXHJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLmRhdGVcIlxyXG4gICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlRGF0ZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICBbbmd4TWF0RGF0ZXRpbWVQaWNrZXJdPVwiZHRwaWNrZXJcIj5cclxuICAgICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJkdHBpY2tlclwiIGNsYXNzPVwiY29kLWRwLXRvZ2dsZVwiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxyXG4gICAgICAgICAgICAgICA8bmd4LW1hdC1kYXRldGltZS1waWNrZXIgI2R0cGlja2VyIFtzaG93U2Vjb25kc109XCJ0cnVlXCI+PC9uZ3gtbWF0LWRhdGV0aW1lLXBpY2tlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIEJvb2xlYW4gLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0InXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvZC10eXBlLWJcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29kLXRvcC1sYWJlbCBtci0xXCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWdyb3ctMVwiPlxyXG4gICAgICAgICAgPHNlbGVjdCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlU3RyaW5nXCJcclxuICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVTdHJpbmdDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBlZGl0LXJlbmRlcmVyXCI+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwidW5kZWZpbmVkXCI+PC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ1knXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1knXCI+WWVzPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ04nXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ04nXCI+Tm88L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gRXh0ZW5kZWQgQm9vbGVhbiAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRUInXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvZC10eXBlLWViXCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbXItMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTFcIj5cclxuICAgICAgICAgIDxzZWxlY3QgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZ1wiXHJcbiAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlU3RyaW5nQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZWRpdC1yZW5kZXJlclwiPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cInVuZGVmaW5lZFwiPjwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cIidZJ1wiIFtzZWxlY3RlZF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmcgPT09ICdZJ1wiPlllczwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cIidOJ1wiIFtzZWxlY3RlZF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmcgPT09ICdOJ1wiPk5vPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ1UnXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1UnXCI+VW5rbm93bjwvb3B0aW9uPlxyXG4gICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBDaG9pY2U6IFNpbmdsZSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnQUMnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdOJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1hYy1uXCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbXItMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTFcIj5cclxuICAgICAgICAgIDxzZWxlY3QgW25nTW9kZWxdPVwiKGF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZUF0dHJpYnV0ZUNob2ljZSk/YXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlQXR0cmlidXRlQ2hvaWNlLmlkQXR0cmlidXRlQ2hvaWNlOnVuZGVmaW5lZFwiXHJcbiAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlQ2hvaWNlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgIFx0XHRcdFx0ICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZWRpdC1yZW5kZXJlclwiPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cInVuZGVmaW5lZFwiPjwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBhdHRyaWJ1dGVDaG9pY2Ugb2YgYXR0cmlidXRlQ2hvaWNlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nVmFsdWVdPVwiYXR0cmlidXRlQ2hvaWNlLmlkQXR0cmlidXRlQ2hvaWNlXCI+XHJcbiAgICAgICAgICAgICAge3sgYXR0cmlidXRlQ2hvaWNlLmNob2ljZSB9fVxyXG4gICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gQ2hvaWNlOiBNdWx0aSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnQUMnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdZJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1hYy15XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbXItMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTEgZmxleC1jb2x1bW4geS1hdXRvXCIgc3R5bGU9XCJtYXgtaGVpZ2h0OiAxMjVweDsgcm93LWdhcDogNXB4XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBhdHRyaWJ1dGVDaG9pY2Ugb2YgYXR0cmlidXRlQ2hvaWNlc1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtc2hyaW5rLTBcIj5cclxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiYXR0cmlidXRlQ2hvaWNlLnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwidmFsdWVNdWx0aUNob2ljZUNoYW5nZShhdHRyaWJ1dGVDaG9pY2UpXCJcclxuXHRcdFx0XHRcdCAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGNoZWNrYm94XCIgLz5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29kLWxhYmVsIHBsLTFcIj5cclxuICAgICAgICAgICAgICAgIHt7YXR0cmlidXRlQ2hvaWNlLmNob2ljZX19XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICBcclxuICAgIDwhLS0gRGljdGlvbmFyeTogTXVsdGkgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0RJQ1QnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdZJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1hYy15XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbXItMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTEgZmxleC1jb2x1bW4geS1hdXRvXCIgc3R5bGU9XCJtYXgtaGVpZ2h0OiAxMjVweDsgcm93LWdhcDogNXB4XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBlbnRyeSBvZiBkaWN0aW9uYXJ5RW50cmllc1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtc2hyaW5rLTBcIj5cclxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiZW50cnkuY2hlY2tlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInZhbHVlTXVsdGlEaWN0Q2hhbmdlKGVudHJ5KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBjaGVja2JveFwiIC8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvZC1sYWJlbCBwbC0xXCI+XHJcbiAgICAgICAgICAgICAgICB7e2VudHJ5LmRpc3BsYXl9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPiAgICBcclxuXHJcbiAgICA8IS0tIERpY3Rpb25hcnkgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0RJQ1QnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdOJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1kaWN0XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbXItMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTFcIj5cclxuICAgICAgICAgIDxzZWxlY3QgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZUlkRGljdGlvbmFyeVwiXHJcbiAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlRGljdENoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGVkaXQtcmVuZGVyZXJcIj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCJ1bmRlZmluZWRcIj48L29wdGlvbj5cclxuICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgZW50cnkgb2YgZGljdGlvbmFyeUVudHJpZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuZ1ZhbHVlXT1cImVudHJ5LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAge3sgZW50cnkuZGlzcGxheSB9fVxyXG4gICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gR3JpZCAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnR0EnXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1nYVwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1yLTFcIj5cclxuICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cImVkaXRJbmxpbmVcIiBzdHlsZT1cIm1hcmdpbi1sZWZ0OiBhdXRvO1wiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuLWdhXCIgKGNsaWNrKT1cImFkZEdyaWRSb3coZWRpdEdyaWRNb2RhbCwgYXR0cmlidXRlLmlkQXR0cmlidXRlKVwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ2EtaWNvblwiPlxyXG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtcGx1cyBmYS14c1wiPjwvaT5cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuLWdhXCIgKGNsaWNrKT1cInJlbW92ZUdyaWRSb3coYXR0cmlidXRlLmlkQXR0cmlidXRlKVwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ2EtaWNvblwiPlxyXG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtbWludXMgZmEteHNcIj48L2k+XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTFcIj4gICAgICAgICAgICAgXHJcbiAgICAgICAgICA8YWctZ3JpZC1hbmd1bGFyICNncmlkQXR0cmlidXRlXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhZy10aGVtZS1hbHBpbmVcIlxyXG4gICAgICAgICAgICAgIChncmlkUmVhZHkpPVwidGhpcy5vbkdyaWRSZWFkeSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAobW9kZWxVcGRhdGVkKT1cIm9uTW9kZWxVcGRhdGVkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChncmlkU2l6ZUNoYW5nZWQpPVwib25HcmlkU2l6ZUNoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgKHJvd0RvdWJsZUNsaWNrZWQpPVwiZWRpdEdyaWRSb3coZWRpdEdyaWRNb2RhbCwgYXR0cmlidXRlLmlkQXR0cmlidXRlLCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgICBbZ3JpZE9wdGlvbnNdPVwidGhpcy5ncmlkT3B0aW9uc1wiXHJcbiAgICAgICAgICAgICAgW3Jvd1NlbGVjdGlvbl09XCInc2luZ2xlJ1wiXHJcbiAgICAgICAgICAgICAgW2NvbHVtbkRlZnNdPVwiZ3JpZENvbHVtbnNcIlxyXG4gICAgICAgICAgICAgIFtyb3dEYXRhXT1cImdyaWREYXRhXCJcclxuICAgICAgICAgICAgICBbc3R5bGUud2lkdGhdPVwiYXR0cmlidXRlLncgKyAncHgnXCJcclxuICAgICAgICAgICAgICBbc3R5bGUuaGVpZ2h0XT1cImF0dHJpYnV0ZS5oICsgJ3B4J1wiPlxyXG4gICAgICAgICAgPC9hZy1ncmlkLWFuZ3VsYXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICBcclxuICAgIDxuZy10ZW1wbGF0ZSAjZWRpdEdyaWRNb2RhbCBsZXQtY2xvc2U9XCJjbG9zZVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XHJcbiAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fSBHcmlkIFJvd1xyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHkgZC1mbGV4IGZsZXgtY29sdW1uIGhjaS1jb2QtZWRpdFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGF0dHJpYnV0ZSBvZiBlZGl0R3JvdXBSb3dBdHRyaWJ1dGVzXCI+XHJcbiAgICAgICAgICA8aGNpLWF0dHJpYnV0ZS1lZGl0IFtpZF09XCInZWRpdC1pZC1hdHRyaWJ1dGUtJyArIGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtncm91cEF0dHJpYnV0ZVJvd0lkXT1cImVkaXRHcm91cEF0dHJpYnV0ZVJvd0lkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHJpYnV0ZV09XCJhdHRyaWJ1dGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF0dHJpYnV0ZVwiPjwvaGNpLWF0dHJpYnV0ZS1lZGl0PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlclwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIiAoY2xpY2spPVwiY2xvc2UoJ1NhdmUnKVwiPlNhdmU8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cImNsb3NlKCdDYW5jZWwnKVwiPkNhbmNlbDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgYFxyXG4gICxcclxuICBzdHlsZXM6IFtgXHJcbiAgXHQuaGNpLWNvZCBidXR0b24ubWF0LWljb24tYnV0dG9uLm1hdC1idXR0b24tYmFzZSB7XHJcbiAgICAgIFx0aGVpZ2h0OiAyMHB4O1xyXG4gICAgICBcdHdpZHRoOiAyMHB4O1xyXG4gICAgICBcdGxpbmUtaGVpZ2h0OiB1bnNldDtcclxuICBcdH1cclxuICBcdFxyXG4gICAgLmJ0bi1nYSB7XHJcbiAgICAgIHBhZGRpbmc6IDBweDtcclxuICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICB3aWR0aDogMThweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmdhLWljb24ge1xyXG4gICAgICBmb250LXNpemU6IC45ZW07XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICB9XHJcblxyXG4gICAgLmhjaS1jb2QgLm1hdC1kYXRlcGlja2VyLXRvZ2dsZS1kZWZhdWx0LWljb24ge1xyXG4gICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgfVxyXG4gYF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEF0dHJpYnV0ZUZsZXhDb21wb25lbnQgZXh0ZW5kcyBBdHRyaWJ1dGVCYXNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoYXR0cmlidXRlU2VydmljZTogQXR0cmlidXRlU2VydmljZSwgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcmVuZGVyZXI6IFJlbmRlcmVyMiwgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCkge1xyXG4gICAgc3VwZXIoYXR0cmlidXRlU2VydmljZSwgZWxlbWVudFJlZiwgcmVuZGVyZXIsIG1vZGFsU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlZnJlc2goKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZsZXggbmVlZHMgdG8gZXh0ZW5kIGdyaWQgY29sdW1ucyBiZWNhdXNlIHdlIG5vIGxvbmdlciB3YW50IHRvIHVzZSBhYnNvbHV0ZSB3aWR0aC4gIEhlcmUgd2UgZ2VuZXJhdGUgcGVyY2VudGFnZVxyXG4gICAqIGJhc2VkIHVwb24gdGhlIGFic29sdXRlIHdpZHRoLCBidXQgc3RpbGwgdXNlIGFic29sdXRlIHdpZHRoIGZvciB0aGUgbWluIHdpZHRoLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtBdHRyaWJ1dGVbXX0gYXR0cmlidXRlc1xyXG4gICAqIEBwYXJhbSB7YW55W119IGNvbHVtbnNcclxuICAgKi9cclxuICBpbml0aWFsaXplR3JpZENvbHVtbnMoYXR0cmlidXRlczogR3JhcGhpY2FsQXR0cmlidXRlW10sIGNvbHVtbnM6IGFueVtdKSB7XHJcbiAgICBzdXBlci5pbml0aWFsaXplR3JpZENvbHVtbnMoYXR0cmlidXRlcywgY29sdW1ucyk7XHJcblxyXG4gICAgbGV0IHdpZHRoOiBudW1iZXIgPSAwO1xyXG4gICAgZm9yIChsZXQgYXR0cmlidXRlIG9mIGF0dHJpYnV0ZXMpIHtcclxuICAgICAgd2lkdGggKz0gYXR0cmlidXRlLnc7XHJcbiAgICB9XHJcblxyXG4gICAgZm9yIChsZXQgYXR0cmlidXRlIG9mIGF0dHJpYnV0ZXMpIHtcclxuICAgICAgbGV0IHdpZHRoUGVyY2VudDogbnVtYmVyID0gTWF0aC5mbG9vcigxMDAgKiAoYXR0cmlidXRlLncgLyB3aWR0aCkpO1xyXG5cclxuICAgICAgZm9yIChsZXQgY29sdW1uIG9mIGNvbHVtbnMpIHtcclxuICAgICAgICBpZiAoY29sdW1uLmV4dGVybmFsQ29uZmlnICYmIGNvbHVtbi5leHRlcm5hbENvbmZpZy5pZEF0dHJpYnV0ZSA9PT0gYXR0cmlidXRlLmlkQXR0cmlidXRlKSB7XHJcbiAgICAgICAgICBjb2x1bW4ubWluV2lkdGggPSBhdHRyaWJ1dGUudztcclxuICAgICAgICAgIGNvbHVtbi53aWR0aFBlcmNlbnQgPSB3aWR0aFBlcmNlbnQ7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ==
765
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0cmlidXRlLWZsZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY29kL3NyYy9jb21wb25lbnRzL2F0dHJpYnV0ZS1mbGV4LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBVSxTQUFTLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLDRCQUE0QixDQUFDO0FBR3BELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMvQyxPQUFPLEVBQUMsZ0JBQWdCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQzs7Ozs7Ozs7OztBQUkvRDs7OztHQUlHO0FBZ1lILE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxhQUFhO0lBRXZELFlBQVksZ0JBQWtDLEVBQUUsVUFBc0IsRUFBRSxRQUFtQixFQUFFLFlBQXNCO1FBQ2pILEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxxQkFBcUIsQ0FBQyxVQUFnQyxFQUFFLE9BQWM7UUFDcEUsS0FBSyxDQUFDLHFCQUFxQixDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUVqRCxJQUFJLEtBQUssR0FBVyxDQUFDLENBQUM7UUFDdEIsS0FBSyxJQUFJLFNBQVMsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNqQyxLQUFLLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQztRQUN2QixDQUFDO1FBRUQsS0FBSyxJQUFJLFNBQVMsSUFBSSxVQUFVLEVBQUUsQ0FBQztZQUNqQyxJQUFJLFlBQVksR0FBVyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUVuRSxLQUFLLElBQUksTUFBTSxJQUFJLE9BQU8sRUFBRSxDQUFDO2dCQUMzQixJQUFJLE1BQU0sQ0FBQyxjQUFjLElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUN6RixNQUFNLENBQUMsUUFBUSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUM7b0JBQzlCLE1BQU0sQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO29CQUNuQyxNQUFNO2dCQUNSLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7OEdBcENVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLGlGQTVYdkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtXVDs7MkZBMEJVLHNCQUFzQjtrQkEvWGxDLFNBQVM7K0JBQ0Usb0JBQW9CLGlCQUNmLGlCQUFpQixDQUFDLElBQUksWUFDM0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtXVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBJbmplY3QsIFJlbmRlcmVyMiwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7TmdiTW9kYWx9IGZyb20gXCJAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcFwiO1xyXG5cclxuXHJcbmltcG9ydCB7QXR0cmlidXRlQmFzZX0gZnJvbSBcIi4vYXR0cmlidXRlLWJhc2VcIjtcclxuaW1wb3J0IHtBdHRyaWJ1dGVTZXJ2aWNlfSBmcm9tIFwiLi4vc2VydmljZXMvYXR0cmlidXRlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtBdHRyaWJ1dGV9IGZyb20gXCIuLi9tb2RlbC9hdHRyaWJ1dGUuZW50aXR5XCI7XHJcbmltcG9ydCB7R3JhcGhpY2FsQXR0cmlidXRlfSBmcm9tIFwiLi4vbW9kZWwvZ3JhcGhpY2FsLWF0dHJpYnV0ZS5lbnRpdHlcIjtcclxuXHJcbi8qKlxyXG4gKiBUaGUgdmlldyBmb3IgYXR0cmlidXRlcyBvcmdhbml6ZWQgaW4gYSBmbGV4IGxheW91dC4gIFRoaXMgd2lsbCBhcnJhbmdlIGFsbCBhdHRyaWJ1dGVzIGluIGEgZm91ciBjb2x1bW4gbGF5b3V0XHJcbiAqIHdpdGggZ3JpZHMgdGFraW5nIHVwIGFsbCAxMiBjb2x1bW5zLiAgVGhlIGF0dHJpYnV0ZXMgaGVyZSB3aWxsIGZpbGwgdGhlIHRoaXMgcGFyZW50IGNvbXBvbmVudCB3aGljaCBkZWZpbmVzIHRoZVxyXG4gKiBjb2x1bW4gc2l6ZS5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImhjaS1hdHRyaWJ1dGUtZmxleFwiLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgIDwhLS0gTGluZSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnTElORSdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1yb3cgY29kLXR5cGUtbGluZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggY29kLWxpbmUgbWUtMSBtdC1hdXRvIG1iLWF1dG8gZmxleC1zaHJpbmstMFwiPjwvZGl2PlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1lLTEgZmxleC1zaHJpbmstMFwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggY29kLWxpbmUgZ3JvdyBtdC1hdXRvIG1iLWF1dG9cIj48L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIExhYmVsIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdMQUJFTCdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1sYWJlbFwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1lLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIFN0cmluZyAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnUydcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gY29kLXR5cGUtc1wiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1lLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cInRleHRcIlxyXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlU3RyaW5nXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZVN0cmluZ0NoYW5nZSgkZXZlbnQpXCJcclxuXHRcdFx0XHQgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbFwiIC8+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBUZXh0IC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImF0dHJpYnV0ZS5jb2RlQXR0cmlidXRlRGF0YVR5cGUgPT09ICdUWFQnXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvZC10eXBlLXR4dFwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1lLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICA8dGV4dGFyZWFcclxuICAgICAgICAgICAgI2lucHV0UmVmXHJcbiAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgICAgICAgc3BlbGxjaGVjaz1cInNwZWxsY2hlY2tcIlxyXG4gICAgICAgICAgICBsYW5nPVwiZW5cIlxyXG4gICAgICAgICAgICBbbmdNb2RlbF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVMb25nVGV4dC50ZXh0RGF0YVwiXHJcbiAgICAgICAgICAgIChjaGFuZ2UpPVwidmFsdWVUZXh0Q2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIj5cclxuICAgICAgICAgIDwvdGV4dGFyZWE+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBDaGVja2JveCAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnQ0InXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvZC10eXBlLWNiXCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbWUtMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTFcIj5cclxuICAgICAgICAgIDxpbnB1dCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxyXG4gICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInZhbHVlQ2hlY2tib3hDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gTnVtZXJpYyAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnTidcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gY29kLXR5cGUtblwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1lLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVOdW1lcmljXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZU51bWVyaWNDaGFuZ2UoJGV2ZW50KVwiXHJcblx0XHRcdFx0ICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gSW50ZWdlciAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnSSdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gY29kLXR5cGUtaVwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1lLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgdHlwZT1cIm51bWJlclwiXHJcbiAgICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVJbnRlZ2VyXCJcclxuICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJ2YWx1ZUludGVnZXJDaGFuZ2UoJGV2ZW50KVwiXHJcblx0XHRcdFx0ICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gRGF0ZSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRCdcIj5cclxuICAgICAgPGRpdiAjYXR0cmlidXRlUmVmXHJcbiAgICAgICAgICAgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gY29kLXR5cGUtZFwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1lLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICAgPGlucHV0ICNpbnB1dFJlZlxyXG4gICAgICAgICAgICAgIG1hdElucHV0XHJcbiAgICAgICAgICAgICAgbmFtZT1cInZhbHVlRGF0ZVwiICAgICAgICAgIFxyXG4gICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlRGF0ZVwiIFxyXG4gICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlRGF0ZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICBbbWF0RGF0ZXBpY2tlcl09XCJ2YWx1ZURhdGVcIlxyXG4gICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sXCI+XHJcbiAgICAgICAgICAgIDxtYXQtZGF0ZXBpY2tlci10b2dnbGUgIG1hdFN1ZmZpeCBbZm9yXT1cInZhbHVlRGF0ZVwiIGNsYXNzPVwiY29kLWRwLXRvZ2dsZVwiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxyXG4gICAgICAgICAgICA8bWF0LWRhdGVwaWNrZXIgI3ZhbHVlRGF0ZT48L21hdC1kYXRlcGlja2VyPiAgXHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBEYXRlIFRpbWUgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0RUJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1kdFwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1lLTFcIj5cclxuICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtZ3Jvdy0xXCI+XHJcbiAgICAgICAgICA8aW5wdXQgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgbWF0SW5wdXRcclxuICAgICAgICAgICAgICAgICBuYW1lPVwidmFsdWVEYXRlVGltZVwiXHJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYXR0cmlidXRlVmFsdWVzWzBdLmRhdGVcIlxyXG4gICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlRGF0ZUNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICBbbmd4TWF0RGF0ZXRpbWVQaWNrZXJdPVwiZHRwaWNrZXJcIj5cclxuICAgICAgICAgICAgICAgPG1hdC1kYXRlcGlja2VyLXRvZ2dsZSBtYXRTdWZmaXggW2Zvcl09XCJkdHBpY2tlclwiIGNsYXNzPVwiY29kLWRwLXRvZ2dsZVwiPjwvbWF0LWRhdGVwaWNrZXItdG9nZ2xlPlxyXG4gICAgICAgICAgICAgICA8bmd4LW1hdC1kYXRldGltZS1waWNrZXIgI2R0cGlja2VyIFtzaG93U2Vjb25kc109XCJ0cnVlXCI+PC9uZ3gtbWF0LWRhdGV0aW1lLXBpY2tlcj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8IS0tIEJvb2xlYW4gLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0InXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvZC10eXBlLWJcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXR0cmlidXRlLmRpc3BsYXlOYW1lXCIgY2xhc3M9XCJkLWZsZXggY29kLXRvcC1sYWJlbCBtZS0xXCI+XHJcbiAgICAgICAgICB7e2F0dHJpYnV0ZS5kaXNwbGF5TmFtZX19XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWdyb3ctMVwiPlxyXG4gICAgICAgICAgPHNlbGVjdCAjaW5wdXRSZWZcclxuICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwiYXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlU3RyaW5nXCJcclxuICAgICAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVTdHJpbmdDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBlZGl0LXJlbmRlcmVyXCI+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwidW5kZWZpbmVkXCI+PC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ1knXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1knXCI+WWVzPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ04nXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ04nXCI+Tm88L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gRXh0ZW5kZWQgQm9vbGVhbiAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnRUInXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZlxyXG4gICAgICAgICAgIGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGNvZC10eXBlLWViXCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbWUtMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTFcIj5cclxuICAgICAgICAgIDxzZWxlY3QgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZ1wiXHJcbiAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlU3RyaW5nQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZWRpdC1yZW5kZXJlclwiPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cInVuZGVmaW5lZFwiPjwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cIidZJ1wiIFtzZWxlY3RlZF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmcgPT09ICdZJ1wiPlllczwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cIidOJ1wiIFtzZWxlY3RlZF09XCJhdHRyaWJ1dGVWYWx1ZXNbMF0udmFsdWVTdHJpbmcgPT09ICdOJ1wiPk5vPC9vcHRpb24+XHJcbiAgICAgICAgICAgIDxvcHRpb24gW25nVmFsdWVdPVwiJ1UnXCIgW3NlbGVjdGVkXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZVN0cmluZyA9PT0gJ1UnXCI+VW5rbm93bjwvb3B0aW9uPlxyXG4gICAgICAgICAgPC9zZWxlY3Q+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBDaG9pY2U6IFNpbmdsZSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnQUMnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdOJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1hYy1uXCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbWUtMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTFcIj5cclxuICAgICAgICAgIDxzZWxlY3QgW25nTW9kZWxdPVwiKGF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZUF0dHJpYnV0ZUNob2ljZSk/YXR0cmlidXRlVmFsdWVzWzBdLnZhbHVlQXR0cmlidXRlQ2hvaWNlLmlkQXR0cmlidXRlQ2hvaWNlOnVuZGVmaW5lZFwiXHJcbiAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlQ2hvaWNlQ2hhbmdlKCRldmVudClcIlxyXG4gICAgICAgIFx0XHRcdFx0ICBbZGlzYWJsZWRdPVwiIWVkaXRJbmxpbmUgfHwgYXR0cmlidXRlLmlzQ2FsY3VsYXRlZCA9PT0gJ1knXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgZWRpdC1yZW5kZXJlclwiPlxyXG4gICAgICAgICAgICA8b3B0aW9uIFtuZ1ZhbHVlXT1cInVuZGVmaW5lZFwiPjwvb3B0aW9uPlxyXG4gICAgICAgICAgICA8b3B0aW9uICpuZ0Zvcj1cImxldCBhdHRyaWJ1dGVDaG9pY2Ugb2YgYXR0cmlidXRlQ2hvaWNlc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nVmFsdWVdPVwiYXR0cmlidXRlQ2hvaWNlLmlkQXR0cmlidXRlQ2hvaWNlXCI+XHJcbiAgICAgICAgICAgICAge3sgYXR0cmlidXRlQ2hvaWNlLmNob2ljZSB9fVxyXG4gICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gQ2hvaWNlOiBNdWx0aSAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnQUMnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdZJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1hYy15XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbWUtMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTEgZmxleC1jb2x1bW4geS1hdXRvXCIgc3R5bGU9XCJtYXgtaGVpZ2h0OiAxMjVweDsgcm93LWdhcDogNXB4XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBhdHRyaWJ1dGVDaG9pY2Ugb2YgYXR0cmlidXRlQ2hvaWNlc1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtc2hyaW5rLTBcIj5cclxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiYXR0cmlidXRlQ2hvaWNlLnZhbHVlXCJcclxuICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwidmFsdWVNdWx0aUNob2ljZUNoYW5nZShhdHRyaWJ1dGVDaG9pY2UpXCJcclxuXHRcdFx0XHRcdCAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGNoZWNrYm94XCIgLz5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29kLWxhYmVsIHBzLTFcIj5cclxuICAgICAgICAgICAgICAgIHt7YXR0cmlidXRlQ2hvaWNlLmNob2ljZX19XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICBcclxuICAgIDwhLS0gRGljdGlvbmFyeTogTXVsdGkgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0RJQ1QnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdZJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1hYy15XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbWUtMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTEgZmxleC1jb2x1bW4geS1hdXRvXCIgc3R5bGU9XCJtYXgtaGVpZ2h0OiAxMjVweDsgcm93LWdhcDogNXB4XCI+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBlbnRyeSBvZiBkaWN0aW9uYXJ5RW50cmllc1wiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtc2hyaW5rLTBcIj5cclxuICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwiZW50cnkuY2hlY2tlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cInZhbHVlTXVsdGlEaWN0Q2hhbmdlKGVudHJ5KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCIhZWRpdElubGluZSB8fCBhdHRyaWJ1dGUuaXNDYWxjdWxhdGVkID09PSAnWSdcIlxyXG4gICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZvcm0tY29udHJvbCBjaGVja2JveFwiIC8+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvZC1sYWJlbCBwcy0xXCI+XHJcbiAgICAgICAgICAgICAgICB7e2VudHJ5LmRpc3BsYXl9fVxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPiAgICBcclxuXHJcbiAgICA8IS0tIERpY3Rpb25hcnkgLS0+XHJcbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYXR0cmlidXRlLmNvZGVBdHRyaWJ1dGVEYXRhVHlwZSA9PT0gJ0RJQ1QnICYmIGF0dHJpYnV0ZS5pc011bHRpVmFsdWUgPT09ICdOJ1wiPlxyXG4gICAgICA8ZGl2ICNhdHRyaWJ1dGVSZWZcclxuICAgICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1kaWN0XCI+XHJcbiAgICAgICAgPGRpdiAqbmdJZj1cImF0dHJpYnV0ZS5kaXNwbGF5TmFtZVwiIGNsYXNzPVwiZC1mbGV4IGNvZC10b3AtbGFiZWwgbWUtMVwiPlxyXG4gICAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fVxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTFcIj5cclxuICAgICAgICAgIDxzZWxlY3QgI2lucHV0UmVmXHJcbiAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cImF0dHJpYnV0ZVZhbHVlc1swXS52YWx1ZUlkRGljdGlvbmFyeVwiXHJcbiAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlRGljdENoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cIiFlZGl0SW5saW5lIHx8IGF0dHJpYnV0ZS5pc0NhbGN1bGF0ZWQgPT09ICdZJ1wiXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZm9ybS1jb250cm9sIGVkaXQtcmVuZGVyZXJcIj5cclxuICAgICAgICAgICAgPG9wdGlvbiBbbmdWYWx1ZV09XCJ1bmRlZmluZWRcIj48L29wdGlvbj5cclxuICAgICAgICAgICAgPG9wdGlvbiAqbmdGb3I9XCJsZXQgZW50cnkgb2YgZGljdGlvbmFyeUVudHJpZXNcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtuZ1ZhbHVlXT1cImVudHJ5LnZhbHVlXCI+XHJcbiAgICAgICAgICAgICAge3sgZW50cnkuZGlzcGxheSB9fVxyXG4gICAgICAgICAgICA8L29wdGlvbj5cclxuICAgICAgICAgIDwvc2VsZWN0PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gR3JpZCAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJhdHRyaWJ1dGUuY29kZUF0dHJpYnV0ZURhdGFUeXBlID09PSAnR0EnXCI+XHJcbiAgICAgIDxkaXYgI2F0dHJpYnV0ZVJlZiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBjb2QtdHlwZS1nYVwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJhdHRyaWJ1dGUuZGlzcGxheU5hbWVcIiBjbGFzcz1cImQtZmxleCBjb2QtdG9wLWxhYmVsIG1lLTFcIj5cclxuICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgIHt7YXR0cmlidXRlLmRpc3BsYXlOYW1lfX1cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cImVkaXRJbmxpbmVcIiBzdHlsZT1cIm1hcmdpbi1sZWZ0OiBhdXRvO1wiPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuLWdhXCIgKGNsaWNrKT1cImFkZEdyaWRSb3coZWRpdEdyaWRNb2RhbCwgYXR0cmlidXRlLmlkQXR0cmlidXRlKVwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ2EtaWNvblwiPlxyXG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtcGx1cyBmYS14c1wiPjwvaT5cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuLWdhXCIgKGNsaWNrKT1cInJlbW92ZUdyaWRSb3coYXR0cmlidXRlLmlkQXR0cmlidXRlKVwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZ2EtaWNvblwiPlxyXG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtbWludXMgZmEteHNcIj48L2k+XHJcbiAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93LTFcIj4gICAgICAgICAgICAgXHJcbiAgICAgICAgICA8YWctZ3JpZC1hbmd1bGFyICNncmlkQXR0cmlidXRlXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJhZy10aGVtZS1hbHBpbmVcIlxyXG4gICAgICAgICAgICAgIChncmlkUmVhZHkpPVwidGhpcy5vbkdyaWRSZWFkeSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAobW9kZWxVcGRhdGVkKT1cIm9uTW9kZWxVcGRhdGVkKCRldmVudClcIlxyXG4gICAgICAgICAgICAgIChncmlkU2l6ZUNoYW5nZWQpPVwib25HcmlkU2l6ZUNoYW5nZWQoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgKHJvd0RvdWJsZUNsaWNrZWQpPVwiZWRpdEdyaWRSb3coZWRpdEdyaWRNb2RhbCwgYXR0cmlidXRlLmlkQXR0cmlidXRlLCAkZXZlbnQpXCJcclxuICAgICAgICAgICAgICBbZ3JpZE9wdGlvbnNdPVwidGhpcy5ncmlkT3B0aW9uc1wiXHJcbiAgICAgICAgICAgICAgW3Jvd1NlbGVjdGlvbl09XCInc2luZ2xlJ1wiXHJcbiAgICAgICAgICAgICAgW2NvbHVtbkRlZnNdPVwiZ3JpZENvbHVtbnNcIlxyXG4gICAgICAgICAgICAgIFtyb3dEYXRhXT1cImdyaWREYXRhXCJcclxuICAgICAgICAgICAgICBbc3R5bGUud2lkdGhdPVwiYXR0cmlidXRlLncgKyAncHgnXCJcclxuICAgICAgICAgICAgICBbc3R5bGUuaGVpZ2h0XT1cImF0dHJpYnV0ZS5oICsgJ3B4J1wiPlxyXG4gICAgICAgICAgPC9hZy1ncmlkLWFuZ3VsYXI+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcbiAgICBcclxuICAgIDxuZy10ZW1wbGF0ZSAjZWRpdEdyaWRNb2RhbCBsZXQtY2xvc2U9XCJjbG9zZVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwibW9kYWwtaGVhZGVyXCI+XHJcbiAgICAgICAge3thdHRyaWJ1dGUuZGlzcGxheU5hbWV9fSBHcmlkIFJvd1xyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWJvZHkgZC1mbGV4IGZsZXgtY29sdW1uIGhjaS1jb2QtZWRpdFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGF0dHJpYnV0ZSBvZiBlZGl0R3JvdXBSb3dBdHRyaWJ1dGVzXCI+XHJcbiAgICAgICAgICA8aGNpLWF0dHJpYnV0ZS1lZGl0IFtpZF09XCInZWRpdC1pZC1hdHRyaWJ1dGUtJyArIGF0dHJpYnV0ZS5pZEF0dHJpYnV0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtncm91cEF0dHJpYnV0ZVJvd0lkXT1cImVkaXRHcm91cEF0dHJpYnV0ZVJvd0lkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHJpYnV0ZV09XCJhdHRyaWJ1dGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImF0dHJpYnV0ZVwiPjwvaGNpLWF0dHJpYnV0ZS1lZGl0PlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm1vZGFsLWZvb3RlclwiPlxyXG4gICAgICAgIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLXByaW1hcnlcIiAoY2xpY2spPVwiY2xvc2UoJ1NhdmUnKVwiPlNhdmU8L2J1dHRvbj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnRuIGJ0bi1wcmltYXJ5XCIgKGNsaWNrKT1cImNsb3NlKCdDYW5jZWwnKVwiPkNhbmNlbDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgYFxyXG4gICxcclxuICBzdHlsZXM6IFtgXHJcbiAgXHQuaGNpLWNvZCBidXR0b24ubWF0LWljb24tYnV0dG9uLm1hdC1idXR0b24tYmFzZSB7XHJcbiAgICAgIFx0aGVpZ2h0OiAyMHB4O1xyXG4gICAgICBcdHdpZHRoOiAyMHB4O1xyXG4gICAgICBcdGxpbmUtaGVpZ2h0OiB1bnNldDtcclxuICBcdH1cclxuICBcdFxyXG4gICAgLmJ0bi1nYSB7XHJcbiAgICAgIHBhZGRpbmc6IDBweDtcclxuICAgICAgaGVpZ2h0OiAxOHB4O1xyXG4gICAgICB3aWR0aDogMThweDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLmdhLWljb24ge1xyXG4gICAgICBmb250LXNpemU6IC45ZW07XHJcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICB9XHJcblxyXG4gICAgLmhjaS1jb2QgLm1hdC1kYXRlcGlja2VyLXRvZ2dsZS1kZWZhdWx0LWljb24ge1xyXG4gICAgICBoZWlnaHQ6IDIwcHg7XHJcbiAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgfVxyXG4gYF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEF0dHJpYnV0ZUZsZXhDb21wb25lbnQgZXh0ZW5kcyBBdHRyaWJ1dGVCYXNlIHtcclxuXHJcbiAgY29uc3RydWN0b3IoYXR0cmlidXRlU2VydmljZTogQXR0cmlidXRlU2VydmljZSwgZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcmVuZGVyZXI6IFJlbmRlcmVyMiwgbW9kYWxTZXJ2aWNlOiBOZ2JNb2RhbCkge1xyXG4gICAgc3VwZXIoYXR0cmlidXRlU2VydmljZSwgZWxlbWVudFJlZiwgcmVuZGVyZXIsIG1vZGFsU2VydmljZSk7XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnJlZnJlc2goKTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEZsZXggbmVlZHMgdG8gZXh0ZW5kIGdyaWQgY29sdW1ucyBiZWNhdXNlIHdlIG5vIGxvbmdlciB3YW50IHRvIHVzZSBhYnNvbHV0ZSB3aWR0aC4gIEhlcmUgd2UgZ2VuZXJhdGUgcGVyY2VudGFnZVxyXG4gICAqIGJhc2VkIHVwb24gdGhlIGFic29sdXRlIHdpZHRoLCBidXQgc3RpbGwgdXNlIGFic29sdXRlIHdpZHRoIGZvciB0aGUgbWluIHdpZHRoLlxyXG4gICAqXHJcbiAgICogQHBhcmFtIHtBdHRyaWJ1dGVbXX0gYXR0cmlidXRlc1xyXG4gICAqIEBwYXJhbSB7YW55W119IGNvbHVtbnNcclxuICAgKi9cclxuICBpbml0aWFsaXplR3JpZENvbHVtbnMoYXR0cmlidXRlczogR3JhcGhpY2FsQXR0cmlidXRlW10sIGNvbHVtbnM6IGFueVtdKSB7XHJcbiAgICBzdXBlci5pbml0aWFsaXplR3JpZENvbHVtbnMoYXR0cmlidXRlcywgY29sdW1ucyk7XHJcblxyXG4gICAgbGV0IHdpZHRoOiBudW1iZXIgPSAwO1xyXG4gICAgZm9yIChsZXQgYXR0cmlidXRlIG9mIGF0dHJpYnV0ZXMpIHtcclxuICAgICAgd2lkdGggKz0gYXR0cmlidXRlLnc7XHJcbiAgICB9XHJcblxyXG4gICAgZm9yIChsZXQgYXR0cmlidXRlIG9mIGF0dHJpYnV0ZXMpIHtcclxuICAgICAgbGV0IHdpZHRoUGVyY2VudDogbnVtYmVyID0gTWF0aC5mbG9vcigxMDAgKiAoYXR0cmlidXRlLncgLyB3aWR0aCkpO1xyXG5cclxuICAgICAgZm9yIChsZXQgY29sdW1uIG9mIGNvbHVtbnMpIHtcclxuICAgICAgICBpZiAoY29sdW1uLmV4dGVybmFsQ29uZmlnICYmIGNvbHVtbi5leHRlcm5hbENvbmZpZy5pZEF0dHJpYnV0ZSA9PT0gYXR0cmlidXRlLmlkQXR0cmlidXRlKSB7XHJcbiAgICAgICAgICBjb2x1bW4ubWluV2lkdGggPSBhdHRyaWJ1dGUudztcclxuICAgICAgICAgIGNvbHVtbi53aWR0aFBlcmNlbnQgPSB3aWR0aFBlcmNlbnQ7XHJcbiAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiJdfQ==