import { Component, Input, ViewEncapsulation, ViewChild } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "@angular/common";
const dummyContainer = typeof document !== 'undefined' ? document.createDocumentFragment() : null;
export class TransportContainerComponent {
ngAfterViewInit() {
const rootEl = this.rootElRef?.nativeElement; // assumed defined
replaceEl(rootEl, this.inPlaceOf);
applyElAttrs(rootEl, undefined, this.elAttrs);
// insurance for if Preact recreates and reroots inPlaceOf element
this.inPlaceOf.style.display = 'none';
this.reportEl(rootEl);
}
ngOnChanges(changes) {
const rootEl = this.rootElRef?.nativeElement;
// ngOnChanges is called before ngAfterViewInit (and before DOM initializes)
// so make sure rootEl is defined before doing anything
if (rootEl) {
// If the ContentContainer's tagName changed, it will create a new DOM element in its
// original place. Detect this and re-replace.
if (this.inPlaceOf.parentNode !== dummyContainer) {
replaceEl(rootEl, this.inPlaceOf);
applyElAttrs(rootEl, undefined, this.elAttrs);
this.reportEl(rootEl);
}
else {
const elAttrsChange = changes['elAttrs'];
if (elAttrsChange) {
applyElAttrs(rootEl, elAttrsChange.previousValue, elAttrsChange.currentValue);
}
}
}
}
// invoked BEFORE component removed from DOM
ngOnDestroy() {
if (
// protect against Preact recreating and rerooting inPlaceOf element
this.inPlaceOf.parentNode === dummyContainer &&
dummyContainer) {
dummyContainer.removeChild(this.inPlaceOf);
}
this.reportEl(null);
}
}
TransportContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TransportContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
TransportContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: TransportContainerComponent, selector: "transport-container", inputs: { inPlaceOf: "inPlaceOf", reportEl: "reportEl", elTag: "elTag", elClasses: "elClasses", elStyle: "elStyle", elAttrs: "elAttrs", template: "template", renderProps: "renderProps" }, viewQueries: [{ propertyName: "rootElRef", first: true, predicate: ["rootEl"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "\n \n \n
\n\n\n \n \n \n\n\n \n \n \n\n\n \n \n
\n\n\n \n \n | \n\n\n \n \n | \n\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], encapsulation: i0.ViewEncapsulation.None });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TransportContainerComponent, decorators: [{
type: Component,
args: [{ selector: 'transport-container', encapsulation: ViewEncapsulation.None, template: "\n \n \n
\n\n\n \n \n \n\n\n \n \n \n\n\n \n \n
\n\n\n \n \n | \n\n\n \n \n | \n\n" }]
}], propDecorators: { inPlaceOf: [{
type: Input
}], reportEl: [{
type: Input
}], elTag: [{
type: Input
}], elClasses: [{
type: Input
}], elStyle: [{
type: Input
}], elAttrs: [{
type: Input
}], template: [{
type: Input
}], renderProps: [{
type: Input
}], rootElRef: [{
type: ViewChild,
args: ['rootEl']
}] } });
function replaceEl(subject, inPlaceOf) {
inPlaceOf.parentNode?.insertBefore(subject, inPlaceOf.nextSibling);
if (dummyContainer) {
dummyContainer.appendChild(inPlaceOf);
}
}
function applyElAttrs(el, previousAttrs = {}, currentAttrs = {}) {
// these are called "attributes" but they manipulate DOM node *properties*
for (const attrName in previousAttrs) {
if (!(attrName in currentAttrs)) {
el[attrName] = null;
}
}
for (const attrName in currentAttrs) {
el[attrName] = currentAttrs[attrName];
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNwb3J0LWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvc3JjL3V0aWxzL3RyYW5zcG9ydC1jb250YWluZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vbGliL3NyYy91dGlscy90cmFuc3BvcnQtY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLGlCQUFpQixFQUNqQixTQUFTLEVBT1YsTUFBTSxlQUFlLENBQUM7OztBQUV2QixNQUFNLGNBQWMsR0FBRyxPQUFPLFFBQVEsS0FBSyxXQUFXLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFPbEcsTUFBTSxPQUFPLDJCQUEyQjtJQVl0QyxlQUFlO1FBQ2IsTUFBTSxNQUFNLEdBQVksSUFBSSxDQUFDLFNBQVMsRUFBRSxhQUFhLENBQUMsQ0FBQyxrQkFBa0I7UUFFekUsU0FBUyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbEMsWUFBWSxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTlDLGtFQUFrRTtRQUNsRSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBRXRDLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBcUIsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsTUFBTSxNQUFNLEdBQXdCLElBQUksQ0FBQyxTQUFTLEVBQUUsYUFBYSxDQUFDO1FBRWxFLDRFQUE0RTtRQUM1RSx1REFBdUQ7UUFDdkQsSUFBSSxNQUFNLEVBQUU7WUFDVixxRkFBcUY7WUFDckYsOENBQThDO1lBQzlDLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEtBQUssY0FBYyxFQUFFO2dCQUNoRCxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDbEMsWUFBWSxDQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUM5QyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQXFCLENBQUMsQ0FBQzthQUN0QztpQkFBTTtnQkFDTCxNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBRXpDLElBQUksYUFBYSxFQUFFO29CQUNqQixZQUFZLENBQUMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxhQUFhLEVBQUUsYUFBYSxDQUFDLFlBQVksQ0FBQyxDQUFDO2lCQUMvRTthQUNGO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsNENBQTRDO0lBQzVDLFdBQVc7UUFDVDtRQUNFLG9FQUFvRTtRQUNwRSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsS0FBSyxjQUFjO1lBQzVDLGNBQWMsRUFDZDtZQUNBLGNBQWMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzVDO1FBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN0QixDQUFDOzt5SEF6RFUsMkJBQTJCOzZHQUEzQiwyQkFBMkIsaVhDcEJ4QyxzckRBZ0RBOzRGRDVCYSwyQkFBMkI7a0JBTHZDLFNBQVM7K0JBQ0UscUJBQXFCLGlCQUVoQixpQkFBaUIsQ0FBQyxJQUFJOzhCQUc1QixTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRWUsU0FBUztzQkFBN0IsU0FBUzt1QkFBQyxRQUFROztBQWtEckIsU0FBUyxTQUFTLENBQUMsT0FBZ0IsRUFBRSxTQUFrQjtJQUNyRCxTQUFTLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRW5FLElBQUksY0FBYyxFQUFFO1FBQ2xCLGNBQWMsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7S0FDdkM7QUFDSCxDQUFDO0FBRUQsU0FBUyxZQUFZLENBQ25CLEVBQVcsRUFDWCxnQkFBcUMsRUFBRSxFQUN2QyxlQUFvQyxFQUFFO0lBRXRDLDBFQUEwRTtJQUUxRSxLQUFLLE1BQU0sUUFBUSxJQUFJLGFBQWEsRUFBRTtRQUNwQyxJQUFJLENBQUMsQ0FBQyxRQUFRLElBQUksWUFBWSxDQUFDLEVBQUU7WUFDOUIsRUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQztTQUM5QjtLQUNGO0lBRUQsS0FBSyxNQUFNLFFBQVEsSUFBSSxZQUFZLEVBQUU7UUFDbEMsRUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztLQUNoRDtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgVmlld0NoaWxkLFxuICBUZW1wbGF0ZVJlZixcbiAgRWxlbWVudFJlZixcbiAgT25DaGFuZ2VzLFxuICBBZnRlclZpZXdJbml0LFxuICBPbkRlc3Ryb3ksXG4gIFNpbXBsZUNoYW5nZXNcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmNvbnN0IGR1bW15Q29udGFpbmVyID0gdHlwZW9mIGRvY3VtZW50ICE9PSAndW5kZWZpbmVkJyA/IGRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKSA6IG51bGw7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RyYW5zcG9ydC1jb250YWluZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdHJhbnNwb3J0LWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcbn0pXG5leHBvcnQgY2xhc3MgVHJhbnNwb3J0Q29udGFpbmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBpblBsYWNlT2YhOiBIVE1MRWxlbWVudDsgLy8gcmVxdWlyZWRcbiAgQElucHV0KCkgcmVwb3J0RWwhOiAoZWw6IEhUTUxFbGVtZW50IHwgbnVsbCkgPT4gdm9pZDsgLy8gcmVxdWlyZWRcbiAgQElucHV0KCkgZWxUYWchOiBzdHJpbmc7IC8vIHJlcXVpcmVkXG4gIEBJbnB1dCgpIGVsQ2xhc3Nlcz86IHN0cmluZ1tdO1xuICBASW5wdXQoKSBlbFN0eWxlPzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIEBJbnB1dCgpIGVsQXR0cnM/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgQElucHV0KCkgdGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+OyAvLyByZXF1aXJlZFxuICBASW5wdXQoKSByZW5kZXJQcm9wcz86IGFueTtcblxuICBAVmlld0NoaWxkKCdyb290RWwnKSByb290RWxSZWY/OiBFbGVtZW50UmVmO1xuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCByb290RWw6IEVsZW1lbnQgPSB0aGlzLnJvb3RFbFJlZj8ubmF0aXZlRWxlbWVudDsgLy8gYXNzdW1lZCBkZWZpbmVkXG5cbiAgICByZXBsYWNlRWwocm9vdEVsLCB0aGlzLmluUGxhY2VPZik7XG4gICAgYXBwbHlFbEF0dHJzKHJvb3RFbCwgdW5kZWZpbmVkLCB0aGlzLmVsQXR0cnMpO1xuXG4gICAgLy8gaW5zdXJhbmNlIGZvciBpZiBQcmVhY3QgcmVjcmVhdGVzIGFuZCByZXJvb3RzIGluUGxhY2VPZiBlbGVtZW50XG4gICAgdGhpcy5pblBsYWNlT2Yuc3R5bGUuZGlzcGxheSA9ICdub25lJztcblxuICAgIHRoaXMucmVwb3J0RWwocm9vdEVsIGFzIEhUTUxFbGVtZW50KTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBjb25zdCByb290RWw6IEVsZW1lbnQgfCB1bmRlZmluZWQgPSB0aGlzLnJvb3RFbFJlZj8ubmF0aXZlRWxlbWVudDtcblxuICAgIC8vIG5nT25DaGFuZ2VzIGlzIGNhbGxlZCBiZWZvcmUgbmdBZnRlclZpZXdJbml0IChhbmQgYmVmb3JlIERPTSBpbml0aWFsaXplcylcbiAgICAvLyBzbyBtYWtlIHN1cmUgcm9vdEVsIGlzIGRlZmluZWQgYmVmb3JlIGRvaW5nIGFueXRoaW5nXG4gICAgaWYgKHJvb3RFbCkge1xuICAgICAgLy8gSWYgdGhlIENvbnRlbnRDb250YWluZXIncyB0YWdOYW1lIGNoYW5nZWQsIGl0IHdpbGwgY3JlYXRlIGEgbmV3IERPTSBlbGVtZW50IGluIGl0c1xuICAgICAgLy8gb3JpZ2luYWwgcGxhY2UuIERldGVjdCB0aGlzIGFuZCByZS1yZXBsYWNlLlxuICAgICAgaWYgKHRoaXMuaW5QbGFjZU9mLnBhcmVudE5vZGUgIT09IGR1bW15Q29udGFpbmVyKSB7XG4gICAgICAgIHJlcGxhY2VFbChyb290RWwsIHRoaXMuaW5QbGFjZU9mKTtcbiAgICAgICAgYXBwbHlFbEF0dHJzKHJvb3RFbCwgdW5kZWZpbmVkLCB0aGlzLmVsQXR0cnMpO1xuICAgICAgICB0aGlzLnJlcG9ydEVsKHJvb3RFbCBhcyBIVE1MRWxlbWVudCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBlbEF0dHJzQ2hhbmdlID0gY2hhbmdlc1snZWxBdHRycyddO1xuXG4gICAgICAgIGlmIChlbEF0dHJzQ2hhbmdlKSB7XG4gICAgICAgICAgYXBwbHlFbEF0dHJzKHJvb3RFbCwgZWxBdHRyc0NoYW5nZS5wcmV2aW91c1ZhbHVlLCBlbEF0dHJzQ2hhbmdlLmN1cnJlbnRWYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBpbnZva2VkIEJFRk9SRSBjb21wb25lbnQgcmVtb3ZlZCBmcm9tIERPTVxuICBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAoXG4gICAgICAvLyBwcm90ZWN0IGFnYWluc3QgUHJlYWN0IHJlY3JlYXRpbmcgYW5kIHJlcm9vdGluZyBpblBsYWNlT2YgZWxlbWVudFxuICAgICAgdGhpcy5pblBsYWNlT2YucGFyZW50Tm9kZSA9PT0gZHVtbXlDb250YWluZXIgJiZcbiAgICAgIGR1bW15Q29udGFpbmVyXG4gICAgKSB7XG4gICAgICBkdW1teUNvbnRhaW5lci5yZW1vdmVDaGlsZCh0aGlzLmluUGxhY2VPZik7XG4gICAgfVxuXG4gICAgdGhpcy5yZXBvcnRFbChudWxsKTtcbiAgfVxufVxuXG5mdW5jdGlvbiByZXBsYWNlRWwoc3ViamVjdDogRWxlbWVudCwgaW5QbGFjZU9mOiBFbGVtZW50KTogdm9pZCB7XG4gIGluUGxhY2VPZi5wYXJlbnROb2RlPy5pbnNlcnRCZWZvcmUoc3ViamVjdCwgaW5QbGFjZU9mLm5leHRTaWJsaW5nKTtcblxuICBpZiAoZHVtbXlDb250YWluZXIpIHtcbiAgICBkdW1teUNvbnRhaW5lci5hcHBlbmRDaGlsZChpblBsYWNlT2YpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGFwcGx5RWxBdHRycyhcbiAgZWw6IEVsZW1lbnQsXG4gIHByZXZpb3VzQXR0cnM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSxcbiAgY3VycmVudEF0dHJzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+ID0ge31cbik6IHZvaWQge1xuICAvLyB0aGVzZSBhcmUgY2FsbGVkIFwiYXR0cmlidXRlc1wiIGJ1dCB0aGV5IG1hbmlwdWxhdGUgRE9NIG5vZGUgKnByb3BlcnRpZXMqXG5cbiAgZm9yIChjb25zdCBhdHRyTmFtZSBpbiBwcmV2aW91c0F0dHJzKSB7XG4gICAgaWYgKCEoYXR0ck5hbWUgaW4gY3VycmVudEF0dHJzKSkge1xuICAgICAgKGVsIGFzIGFueSlbYXR0ck5hbWVdID0gbnVsbDtcbiAgICB9XG4gIH1cblxuICBmb3IgKGNvbnN0IGF0dHJOYW1lIGluIGN1cnJlbnRBdHRycykge1xuICAgIChlbCBhcyBhbnkpW2F0dHJOYW1lXSA9IGN1cnJlbnRBdHRyc1thdHRyTmFtZV07XG4gIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSBbbmdJZl09XCJlbFRhZyA9PSAnZGl2J1wiPlxuICA8ZGl2ICNyb290RWwgW25nQ2xhc3NdPVwiZWxDbGFzc2VzIHx8ICcnXCIgW25nU3R5bGVdPVwiZWxTdHlsZSB8fCBudWxsXCI+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwidGVtcGxhdGVcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiByZW5kZXJQcm9wcyB9XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSBbbmdJZl09XCJlbFRhZyA9PSAnc3BhbidcIj5cbiAgPHNwYW4gI3Jvb3RFbCBbbmdDbGFzc109XCJlbENsYXNzZXMgfHwgJydcIiBbbmdTdHlsZV09XCJlbFN0eWxlIHx8IG51bGxcIj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0ZW1wbGF0ZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IHJlbmRlclByb3BzIH1cIlxuICAgID48L25nLWNvbnRhaW5lcj5cbiAgPC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSBbbmdJZl09XCJlbFRhZyA9PSAnYSdcIj5cbiAgPGEgI3Jvb3RFbCBbbmdDbGFzc109XCJlbENsYXNzZXMgfHwgJydcIiBbbmdTdHlsZV09XCJlbFN0eWxlIHx8IG51bGxcIj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ0ZW1wbGF0ZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IHJlbmRlclByb3BzIH1cIlxuICAgID48L25nLWNvbnRhaW5lcj5cbiAgPC9hPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSBbbmdJZl09XCJlbFRhZyA9PSAndHInXCI+XG4gIDx0ciAjcm9vdEVsIFtuZ0NsYXNzXT1cImVsQ2xhc3NlcyB8fCAnJ1wiIFtuZ1N0eWxlXT1cImVsU3R5bGUgfHwgbnVsbFwiPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRlbXBsYXRlXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogcmVuZGVyUHJvcHMgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuICA8L3RyPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSBbbmdJZl09XCJlbFRhZyA9PSAndGgnXCI+XG4gIDx0aCAjcm9vdEVsIFtuZ0NsYXNzXT1cImVsQ2xhc3NlcyB8fCAnJ1wiIFtuZ1N0eWxlXT1cImVsU3R5bGUgfHwgbnVsbFwiPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRlbXBsYXRlXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogcmVuZGVyUHJvcHMgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuICA8L3RoPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSBbbmdJZl09XCJlbFRhZyA9PSAndGQnXCI+XG4gIDx0ZCAjcm9vdEVsIFtuZ0NsYXNzXT1cImVsQ2xhc3NlcyB8fCAnJ1wiIFtuZ1N0eWxlXT1cImVsU3R5bGUgfHwgbnVsbFwiPlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRlbXBsYXRlXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogcmVuZGVyUHJvcHMgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuICA8L3RkPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==