valtech-components 4.0.937 → 4.0.939
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.
- package/esm2022/lib/components/molecules/group-picker/group-picker.component.mjs +97 -0
- package/esm2022/lib/components/organisms/group-members/group-members.component.mjs +178 -0
- package/esm2022/lib/components/organisms/mini-games/mini-games.i18n.mjs +1 -381
- package/esm2022/lib/components/organisms/mini-games/types.mjs +1 -1
- package/esm2022/lib/services/groups/groups.service.mjs +92 -0
- package/esm2022/lib/services/groups/types.mjs +2 -0
- package/esm2022/lib/version.mjs +2 -2
- package/esm2022/public-api.mjs +4 -3
- package/fesm2022/valtech-components.mjs +641 -7612
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/molecules/group-picker/group-picker.component.d.ts +28 -0
- package/lib/components/organisms/group-members/group-members.component.d.ts +43 -0
- package/lib/components/organisms/mini-games/types.d.ts +0 -182
- package/lib/services/groups/groups.service.d.ts +39 -0
- package/lib/services/groups/types.d.ts +69 -0
- package/lib/version.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +4 -2
- package/src/lib/assets/games/README.md +8 -0
- package/esm2022/lib/components/organisms/mini-games/christianity-bot.mjs +0 -94
- package/esm2022/lib/components/organisms/mini-games/christianity-card.component.mjs +0 -503
- package/esm2022/lib/components/organisms/mini-games/christianity-catalog.mjs +0 -247
- package/esm2022/lib/components/organisms/mini-games/christianity-game.component.mjs +0 -4580
- package/esm2022/lib/components/organisms/mini-games/christianity-rules.mjs +0 -1383
- package/esm2022/lib/components/organisms/mini-games/christianity-tutorial.mjs +0 -152
- package/lib/components/organisms/mini-games/christianity-bot.d.ts +0 -15
- package/lib/components/organisms/mini-games/christianity-card.component.d.ts +0 -55
- package/lib/components/organisms/mini-games/christianity-catalog.d.ts +0 -18
- package/lib/components/organisms/mini-games/christianity-game.component.d.ts +0 -395
- package/lib/components/organisms/mini-games/christianity-rules.d.ts +0 -57
- package/lib/components/organisms/mini-games/christianity-tutorial.d.ts +0 -38
- package/src/lib/assets/games/christianity/card-symbol.svg +0 -51
- package/src/lib/assets/games/christianity/card-template-reference/front.html +0 -114
- package/src/lib/assets/games/christianity/card-template-reference/front.style.css +0 -352
- package/src/lib/assets/games/christianity/data/01-genesis.bible-reference-suggestions.csv +0 -191
- package/src/lib/assets/games/christianity/data/01-genesis.bible-verses.nbv-open.csv +0 -170
- package/src/lib/assets/games/christianity/data/01-genesis.cards.csv +0 -281
- package/src/lib/assets/games/christianity/data/01-genesis.cards.i18n.csv +0 -281
- package/src/lib/assets/games/christianity/data/01-genesis.cards.json +0 -16453
- package/src/lib/assets/games/christianity/data/01-genesis.unassigned-effects.csv +0 -49
- package/src/lib/assets/games/christianity/data/README.md +0 -40
- package/src/lib/assets/games/christianity/data/data-con-habilides.csv +0 -273
- package/src/lib/assets/games/christianity/data/habilidades-por-tipo.xlsx +0 -0
- package/src/lib/assets/games/christianity/data/listado-edicion.csv +0 -281
- package/src/lib/assets/games/christianity/editions/1/cards/.gitkeep +0 -1
- package/src/lib/assets/games/christianity/editions/1/cards/PLACEHOLDER.png +0 -0
- package/src/lib/assets/games/christianity/editions/README.md +0 -34
- package/src/lib/assets/games/christianity/icons/1-icon.png +0 -0
- package/src/lib/assets/games/christianity/icons/action.png +0 -0
- package/src/lib/assets/games/christianity/icons/character.png +0 -0
- package/src/lib/assets/games/christianity/icons/event.png +0 -0
- package/src/lib/assets/games/christianity/icons/leader.png +0 -0
- package/src/lib/assets/games/christianity/icons/offering.png +0 -0
- package/src/lib/assets/games/christianity/icons/place.png +0 -0
- package/src/lib/assets/games/christianity/icons/tool.png +0 -0
- package/src/lib/assets/games/christianity/icons/wisdom.png +0 -0
- package/src/lib/assets/games/christianity/sources/README.md +0 -16
- package/src/lib/assets/games/christianity/sources/spaonbv_vpl.txt +0 -29102
- package/src/lib/assets/games/christianity/sources/spaonbv_vpl.xml +0 -29104
- package/src/lib/assets/games/christianity/spaonbv.txt +0 -52
|
@@ -1,503 +0,0 @@
|
|
|
1
|
-
import { Component, computed, input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class ChristianityCardComponent {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.card = input.required();
|
|
6
|
-
this.variant = input('table');
|
|
7
|
-
// Color de marco por tipo (Dir 3 art-first). Fuente de verdad del sistema de color.
|
|
8
|
-
this.typeColors = {
|
|
9
|
-
leader: '#8e5b2e',
|
|
10
|
-
character: '#b23b3b',
|
|
11
|
-
offering: '#c9a227',
|
|
12
|
-
wisdom: '#3f7d9c',
|
|
13
|
-
action: '#4d6bbd',
|
|
14
|
-
tool: '#5a8f4e',
|
|
15
|
-
place: '#2f7d6b',
|
|
16
|
-
event: '#7a4fb0',
|
|
17
|
-
};
|
|
18
|
-
this.typeColor = computed(() => this.typeColors[this.card().type] ?? '#5f6b7a');
|
|
19
|
-
// Variantes en juego (tablero, mano, ofrendas, galería) usan el render art-first.
|
|
20
|
-
this.isInPlay = computed(() => {
|
|
21
|
-
const variant = this.variant();
|
|
22
|
-
return variant === 'board' || variant === 'baby' || variant === 'hand' || variant === 'table';
|
|
23
|
-
});
|
|
24
|
-
// El arte definitivo reemplaza al placeholder por tipo. Mientras sea PLACEHOLDER, usamos el placeholder intencional.
|
|
25
|
-
this.hasRealArt = computed(() => {
|
|
26
|
-
const url = this.card().imageUrl;
|
|
27
|
-
return !!url && !/placeholder/i.test(url);
|
|
28
|
-
});
|
|
29
|
-
this.normalizedTypeLabel = computed(() => this.card().typeLabel.toUpperCase());
|
|
30
|
-
this.frontTemplate = computed(() => this.card().frontTemplate ?? 'genesis-classic');
|
|
31
|
-
this.isGenesisClassicTemplate = computed(() => this.frontTemplate() === 'genesis-classic' || this.frontTemplate() === 'genesis-classic-extra');
|
|
32
|
-
this.typeIconUrl = computed(() => `assets/games/christianity/icons/${this.iconName(this.card().type)}.png`);
|
|
33
|
-
this.showTypeIcon = computed(() => true);
|
|
34
|
-
this.headerMetric = computed(() => {
|
|
35
|
-
const card = this.card();
|
|
36
|
-
if (card.type === 'leader')
|
|
37
|
-
return null;
|
|
38
|
-
// La ofrenda se representa con UN solo símbolo (su badge de tipo). El valor que genera
|
|
39
|
-
// (p. ej. "genera 2") vive en el texto de habilidad, no como dos monedas.
|
|
40
|
-
if (card.type === 'offering')
|
|
41
|
-
return null;
|
|
42
|
-
if (typeof card.cost === 'number')
|
|
43
|
-
return { kind: 'number', value: card.cost };
|
|
44
|
-
return null;
|
|
45
|
-
});
|
|
46
|
-
this.cardStatsText = computed(() => {
|
|
47
|
-
const card = this.card();
|
|
48
|
-
if (card.type !== 'character')
|
|
49
|
-
return '';
|
|
50
|
-
return `${card.attack ?? 0} / ${card.currentHp ?? card.life ?? 0}`;
|
|
51
|
-
});
|
|
52
|
-
this.leaderLifeText = computed(() => {
|
|
53
|
-
const card = this.card();
|
|
54
|
-
const current = card.currentHp ?? card.life ?? 0;
|
|
55
|
-
const max = card.maxHp ?? card.life ?? current;
|
|
56
|
-
return `${current}/${max}`;
|
|
57
|
-
});
|
|
58
|
-
this.leaderLifeValue = computed(() => {
|
|
59
|
-
const card = this.card();
|
|
60
|
-
return card.currentHp ?? card.life ?? card.maxHp ?? 0;
|
|
61
|
-
});
|
|
62
|
-
this.isRulesOnlyCard = computed(() => {
|
|
63
|
-
const type = this.card().type;
|
|
64
|
-
return (type === 'action' ||
|
|
65
|
-
type === 'event' ||
|
|
66
|
-
type === 'offering' ||
|
|
67
|
-
type === 'place' ||
|
|
68
|
-
type === 'tool' ||
|
|
69
|
-
type === 'wisdom');
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
offeringPips(value) {
|
|
73
|
-
const count = Number(value);
|
|
74
|
-
if (!Number.isFinite(count) || count <= 0)
|
|
75
|
-
return [];
|
|
76
|
-
return Array.from({ length: Math.min(Math.floor(count), 5) });
|
|
77
|
-
}
|
|
78
|
-
isLongText(text, threshold) {
|
|
79
|
-
return (text?.trim().length ?? 0) > threshold;
|
|
80
|
-
}
|
|
81
|
-
iconName(type) {
|
|
82
|
-
if (type === 'character')
|
|
83
|
-
return 'character';
|
|
84
|
-
if (type === 'offering')
|
|
85
|
-
return 'offering';
|
|
86
|
-
if (type === 'leader')
|
|
87
|
-
return 'leader';
|
|
88
|
-
return type;
|
|
89
|
-
}
|
|
90
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChristianityCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
91
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ChristianityCardComponent, isStandalone: true, selector: "val-christianity-card", inputs: { card: { classPropertyName: "card", publicName: "card", isSignal: true, isRequired: true, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
|
|
92
|
-
@if (variant() === 'back') {
|
|
93
|
-
<article class="christianity-card-render christianity-card-render--back" aria-hidden="true">
|
|
94
|
-
<span></span>
|
|
95
|
-
</article>
|
|
96
|
-
} @else if (isInPlay()) {
|
|
97
|
-
<article
|
|
98
|
-
class="cc"
|
|
99
|
-
[class.cc--leader]="card().type === 'leader'"
|
|
100
|
-
[class.cc--character]="card().type === 'character'"
|
|
101
|
-
[class.cc--board]="variant() === 'board'"
|
|
102
|
-
[style.--ct]="typeColor()"
|
|
103
|
-
>
|
|
104
|
-
<div class="cc__art" [class.cc__art--real]="hasRealArt()">
|
|
105
|
-
@if (hasRealArt()) {
|
|
106
|
-
<img class="cc__real" [src]="card().imageUrl" [alt]="card().name" draggable="false" />
|
|
107
|
-
} @else {
|
|
108
|
-
<img class="cc__wm" [src]="typeIconUrl()" alt="" aria-hidden="true" />
|
|
109
|
-
}
|
|
110
|
-
</div>
|
|
111
|
-
|
|
112
|
-
<!-- Tipo + coste juntos arriba-izquierda: en la mano en abanico solo se ve esa esquina. -->
|
|
113
|
-
<div class="cc__corner" aria-hidden="true">
|
|
114
|
-
<span class="cc__type"><img [src]="typeIconUrl()" alt="" /></span>
|
|
115
|
-
@if (headerMetric(); as metric) {
|
|
116
|
-
<span class="cc__cost" [class.cc__cost--pips]="metric.kind === 'pips'">
|
|
117
|
-
@if (metric.kind === 'pips') {
|
|
118
|
-
@for (_ of offeringPips(metric.value); track $index) {
|
|
119
|
-
<i></i>
|
|
120
|
-
}
|
|
121
|
-
} @else if (metric.kind === 'cost-symbol') {
|
|
122
|
-
<i></i>
|
|
123
|
-
} @else {
|
|
124
|
-
{{ metric.value }}
|
|
125
|
-
}
|
|
126
|
-
</span>
|
|
127
|
-
}
|
|
128
|
-
</div>
|
|
129
|
-
|
|
130
|
-
<div class="cc__hud">
|
|
131
|
-
<span class="cc__name">{{ card().name }}</span>
|
|
132
|
-
@if (card().type === 'character') {
|
|
133
|
-
<div class="cc__stats" aria-hidden="true">
|
|
134
|
-
<span class="cc__atk">
|
|
135
|
-
<svg class="cc__ico" viewBox="0 0 24 24" aria-hidden="true">
|
|
136
|
-
<path d="M14 5l5-2-2 5-8 8-3-3z" />
|
|
137
|
-
<path d="M6 13l-3 3 2 2 3-3" /></svg
|
|
138
|
-
>{{ card().attack ?? 0 }}
|
|
139
|
-
</span>
|
|
140
|
-
<span class="cc__life">
|
|
141
|
-
<svg class="cc__ico" viewBox="0 0 24 24" aria-hidden="true">
|
|
142
|
-
<path d="M12 20s-6-4.6-6-9a4 4 0 018-1 4 4 0 018 1c0 4.4-6 9-6 9z" /></svg
|
|
143
|
-
>{{ card().currentHp ?? card().life ?? 0 }}
|
|
144
|
-
</span>
|
|
145
|
-
</div>
|
|
146
|
-
} @else if (card().type === 'leader') {
|
|
147
|
-
<div class="cc__stats" aria-hidden="true">
|
|
148
|
-
<span class="cc__life">
|
|
149
|
-
<svg class="cc__ico" viewBox="0 0 24 24" aria-hidden="true">
|
|
150
|
-
<path d="M12 20s-6-4.6-6-9a4 4 0 018-1 4 4 0 018 1c0 4.4-6 9-6 9z" /></svg
|
|
151
|
-
>{{ leaderLifeText() }}
|
|
152
|
-
</span>
|
|
153
|
-
</div>
|
|
154
|
-
}
|
|
155
|
-
</div>
|
|
156
|
-
|
|
157
|
-
<span
|
|
158
|
-
class="cc__gem"
|
|
159
|
-
[class.is-normal]="!card().rarity || card().rarity === 'normal'"
|
|
160
|
-
[class.is-good]="card().rarity === 'good' || card().rarity === 'uncommon'"
|
|
161
|
-
[class.is-very-good]="
|
|
162
|
-
card().rarity === 'very-good' || card().rarity === 'rare' || card().rarity === 'legendary'
|
|
163
|
-
"
|
|
164
|
-
aria-hidden="true"
|
|
165
|
-
></span>
|
|
166
|
-
</article>
|
|
167
|
-
} @else {
|
|
168
|
-
<article
|
|
169
|
-
class="christianity-card-render"
|
|
170
|
-
[class.christianity-card-render--full]="variant() === 'full'"
|
|
171
|
-
[class.christianity-card-render--compact]="variant() !== 'full'"
|
|
172
|
-
[class.christianity-card-render--baby]="variant() === 'baby'"
|
|
173
|
-
[class.christianity-card-render--table]="variant() === 'table'"
|
|
174
|
-
[class.christianity-card-render--hand]="variant() === 'hand'"
|
|
175
|
-
[class.christianity-card-render--list]="variant() === 'list'"
|
|
176
|
-
[class.christianity-card-render--board]="variant() === 'board'"
|
|
177
|
-
[class.christianity-card-render--template-genesis-classic]="isGenesisClassicTemplate()"
|
|
178
|
-
[class.christianity-card-render--template-genesis-full-art]="frontTemplate() === 'genesis-full-art'"
|
|
179
|
-
[class.is-leader]="card().type === 'leader'"
|
|
180
|
-
[class.is-character]="card().type === 'character'"
|
|
181
|
-
[class.is-offering]="card().type === 'offering'"
|
|
182
|
-
[class.is-rules-only]="isRulesOnlyCard()"
|
|
183
|
-
[class.has-long-verse]="isLongText(card().verseText, 150)"
|
|
184
|
-
[class.has-long-effect]="isLongText(card().abilityText || card().statusText, 120)"
|
|
185
|
-
>
|
|
186
|
-
<header class="christianity-card-render__header">
|
|
187
|
-
@if (showTypeIcon()) {
|
|
188
|
-
<span class="christianity-card-render__type-icon" aria-hidden="true">
|
|
189
|
-
<img [src]="typeIconUrl()" alt="" />
|
|
190
|
-
</span>
|
|
191
|
-
}
|
|
192
|
-
<strong>{{ card().name }}</strong>
|
|
193
|
-
@if (headerMetric(); as metric) {
|
|
194
|
-
<span
|
|
195
|
-
class="christianity-card-render__metric"
|
|
196
|
-
[class.is-pips]="metric.kind === 'pips'"
|
|
197
|
-
[class.is-cost-symbol]="metric.kind === 'cost-symbol'"
|
|
198
|
-
[class.is-offering-value]="card().type === 'offering'"
|
|
199
|
-
aria-hidden="true"
|
|
200
|
-
>
|
|
201
|
-
@if (metric.kind === 'pips') {
|
|
202
|
-
@for (_ of offeringPips(metric.value); track $index) {
|
|
203
|
-
<i aria-hidden="true"></i>
|
|
204
|
-
}
|
|
205
|
-
} @else if (metric.kind === 'cost-symbol') {
|
|
206
|
-
<i aria-hidden="true"></i>
|
|
207
|
-
} @else {
|
|
208
|
-
{{ metric.value }}
|
|
209
|
-
}
|
|
210
|
-
</span>
|
|
211
|
-
}
|
|
212
|
-
</header>
|
|
213
|
-
|
|
214
|
-
<section class="christianity-card-render__art" [class.has-image]="card().imageUrl">
|
|
215
|
-
@if (card().imageUrl) {
|
|
216
|
-
<img [src]="card().imageUrl" [alt]="card().name" draggable="false" />
|
|
217
|
-
} @else {
|
|
218
|
-
<span>{{ card().name }}</span>
|
|
219
|
-
}
|
|
220
|
-
@if (variant() !== 'board' && variant() !== 'baby' && variant() !== 'table') {
|
|
221
|
-
<small>{{ normalizedTypeLabel() }}</small>
|
|
222
|
-
}
|
|
223
|
-
</section>
|
|
224
|
-
|
|
225
|
-
@if (variant() === 'full') {
|
|
226
|
-
<section class="christianity-card-render__verse">
|
|
227
|
-
@if (card().verseText) {
|
|
228
|
-
<p>{{ card().verseText }}</p>
|
|
229
|
-
}
|
|
230
|
-
@if (card().scripture) {
|
|
231
|
-
<strong class="christianity-card-render__verse-ref">{{ card().scripture }}</strong>
|
|
232
|
-
}
|
|
233
|
-
</section>
|
|
234
|
-
}
|
|
235
|
-
|
|
236
|
-
<section class="christianity-card-render__effect">
|
|
237
|
-
@if (card().editionIcon) {
|
|
238
|
-
<img
|
|
239
|
-
class="christianity-card-render__edition-watermark"
|
|
240
|
-
[src]="card().editionIcon"
|
|
241
|
-
alt=""
|
|
242
|
-
aria-hidden="true"
|
|
243
|
-
/>
|
|
244
|
-
}
|
|
245
|
-
@if (variant() !== 'full') {
|
|
246
|
-
<div class="christianity-card-render__stats">
|
|
247
|
-
@if (card().type === 'leader') {
|
|
248
|
-
<strong class="christianity-card-render__leader-life">{{ leaderLifeText() }}</strong>
|
|
249
|
-
} @else if (cardStatsText()) {
|
|
250
|
-
<strong>{{ cardStatsText() }}</strong>
|
|
251
|
-
}
|
|
252
|
-
</div>
|
|
253
|
-
}
|
|
254
|
-
@if (variant() === 'full') {
|
|
255
|
-
<div class="christianity-card-render__stats">
|
|
256
|
-
@if (card().type === 'leader') {
|
|
257
|
-
<strong class="christianity-card-render__leader-life">{{ leaderLifeValue() }}</strong>
|
|
258
|
-
} @else if (cardStatsText()) {
|
|
259
|
-
<strong>{{ cardStatsText() }}</strong>
|
|
260
|
-
}
|
|
261
|
-
</div>
|
|
262
|
-
<div class="christianity-card-render__text">
|
|
263
|
-
@if (card().abilityName) {
|
|
264
|
-
<strong>{{ card().abilityName }}</strong>
|
|
265
|
-
}
|
|
266
|
-
@if (card().abilityText || card().statusText) {
|
|
267
|
-
<p>{{ card().abilityText || card().statusText }}</p>
|
|
268
|
-
}
|
|
269
|
-
</div>
|
|
270
|
-
}
|
|
271
|
-
@if (variant() === 'list' || variant() === 'hand' || variant() === 'full') {
|
|
272
|
-
<span
|
|
273
|
-
class="christianity-card-render__rarity"
|
|
274
|
-
[class.is-normal]="!card().rarity || card().rarity === 'normal'"
|
|
275
|
-
[class.is-good]="card().rarity === 'good' || card().rarity === 'uncommon'"
|
|
276
|
-
[class.is-very-good]="
|
|
277
|
-
card().rarity === 'very-good' || card().rarity === 'rare' || card().rarity === 'legendary'
|
|
278
|
-
"
|
|
279
|
-
aria-hidden="true"
|
|
280
|
-
></span>
|
|
281
|
-
}
|
|
282
|
-
</section>
|
|
283
|
-
|
|
284
|
-
@if (variant() === 'full') {
|
|
285
|
-
<footer class="christianity-card-render__footer">
|
|
286
|
-
<span class="christianity-card-render__footer-badge">{{ card().edition ?? 'MVP' }}</span>
|
|
287
|
-
<span>{{ card().collectorNumber ?? card().id }}</span>
|
|
288
|
-
<span>{{ card().year ?? '2026' }} CHRISTIANITY</span>
|
|
289
|
-
<span>{{ card().author ?? 'MVP' }}</span>
|
|
290
|
-
</footer>
|
|
291
|
-
}
|
|
292
|
-
</article>
|
|
293
|
-
}
|
|
294
|
-
`, isInline: true, styles: [":host{--christianity-card-aspect: 5 / 7.75;--christianity-card-back: linear-gradient(135deg, rgba(16, 42, 67, .16), rgba(16, 42, 67, .03)), repeating-linear-gradient(45deg, #dbeafe 0 .33rem, #ffffff .33rem .66rem);display:block;width:100%;min-width:0;container-type:inline-size}.christianity-card-render{position:relative;box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:.28rem;width:100%;min-width:0;aspect-ratio:var(--christianity-card-aspect);padding:.48rem;overflow:hidden;border:1px solid rgba(36,48,68,.16);border-radius:.52rem;background:linear-gradient(180deg,#fffffffa,#f8fafcfa),radial-gradient(circle at 18% 0%,rgba(214,162,29,.12),transparent 44%);color:var(--val-text-color, #1f2933);-webkit-user-select:none;user-select:none;box-shadow:0 .5rem 1.25rem #2430441a,inset 0 0 0 .18rem #ffffff9e}.christianity-card-render>*{position:relative;z-index:1}.cc{position:relative;box-sizing:border-box;width:100%;min-width:0;aspect-ratio:var(--christianity-card-aspect);overflow:hidden;border:.14rem solid var(--ct, #5f6b7a);border-radius:.5rem;background:var(--ct, #5f6b7a);color:#fff;-webkit-user-select:none;user-select:none;box-shadow:0 .4rem .9rem #101a2847}.cc__art{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;background-image:linear-gradient(160deg,#ffffff29,#00000057)}.cc__art--real{background-image:none}.cc__real{width:100%;height:100%;object-fit:cover;object-position:center 42%;pointer-events:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.cc__wm{width:46%;height:auto;object-fit:contain;opacity:.18;filter:brightness(0) invert(1);pointer-events:none}.cc__corner{position:absolute;top:5cqw;left:5cqw;z-index:3;display:flex;flex-direction:column;align-items:flex-start;gap:3cqw}.cc__type{display:grid;place-items:center;width:clamp(.8rem,21cqw,1.65rem);height:clamp(.8rem,21cqw,1.65rem);border-radius:999px;background:var(--ct, #5f6b7a);border:1.5px solid rgba(255,255,255,.9);box-shadow:0 1px 3px #00000059}.cc__type img{width:60%;height:60%;object-fit:contain;filter:brightness(0) invert(1)}.cc__cost{display:flex;gap:.12rem;align-items:center;justify-content:center;min-width:clamp(.8rem,21cqw,1.65rem);height:clamp(.8rem,21cqw,1.65rem);padding:0 .18rem;border-radius:999px;background:#f4d35e;color:#4a3a06;font-weight:800;font-size:clamp(.56rem,12cqw,.94rem);line-height:1;border:1.5px solid rgba(255,255,255,.75);box-shadow:0 1px 3px #00000059}.cc__cost--pips{background:transparent;border:0;box-shadow:none;padding:0;gap:.12rem;min-width:0;height:auto}.cc__cost--pips i{display:block;width:clamp(.8rem,21cqw,1.65rem);height:clamp(.8rem,21cqw,1.65rem);border-radius:999px;background:#f4d35e;border:1.5px solid rgba(255,255,255,.75);box-shadow:0 1px 2px #0000004d}.cc__hud{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;gap:.06rem;padding:clamp(.62rem,15cqw,1rem) clamp(.18rem,5cqw,.44rem) clamp(.18rem,5cqw,.38rem);background:linear-gradient(transparent,#00000059 42%,#000000d1)}.cc__name{display:none;font-family:Georgia,Times New Roman,serif;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.12;font-size:clamp(.5rem,12cqw,.94rem);text-shadow:0 1px 2px rgba(0,0,0,.65)}.cc__stats{display:flex;align-items:center;gap:clamp(.25rem,6cqw,.5rem);font-weight:800;font-variant-numeric:tabular-nums;font-size:clamp(.56rem,13cqw,1.06rem);text-shadow:0 1px 2px rgba(0,0,0,.6)}.cc__atk,.cc__life{display:inline-flex;align-items:center;gap:.12rem}.cc__atk{color:#ff9a9a}.cc__life{color:#9af0ab}.cc__ico{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:2;flex:none}.cc__gem{display:none;position:absolute;right:5cqw;bottom:5cqw;z-index:3;width:clamp(.5rem,11cqw,.82rem);height:clamp(.5rem,11cqw,.82rem);border-radius:999px;border:1.5px solid rgba(255,255,255,.85);box-shadow:0 1px 2px #0006}.cc__gem.is-normal{background:#3a80e9}.cc__gem.is-good{background:#4ee93a}.cc__gem.is-very-good{background:#e9ce3a}@container (min-width: 58px){.cc__name{display:block}.cc--leader .cc__name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;line-height:1.05}}@container (min-width: 70px){.cc__gem{display:block}}.christianity-card-render--template-genesis-classic{--christianity-frame-width: .26rem;padding:calc(.48rem + var(--christianity-frame-width));border-color:transparent;background:linear-gradient(155deg,#d2e2eef7,#9baec0fa 48%,#768aa3f7),radial-gradient(circle at 18% 0%,rgba(255,255,255,.28),transparent 42%);box-shadow:0 0 0 1px #586c854d,0 .5rem 1.25rem #24304421}.christianity-card-render--template-genesis-classic:before{content:\"\";position:absolute;inset:var(--christianity-frame-width);z-index:0;border-radius:calc(.52rem - .1rem);background:linear-gradient(180deg,#fffffffa,#f8fafcfa),radial-gradient(circle at 18% 0%,rgba(214,162,29,.08),transparent 44%);box-shadow:0 .12rem .28rem #2430440f}.christianity-card-render--full{grid-template-rows:auto minmax(10.8rem,auto) minmax(3rem,auto) minmax(5.9rem,1fr) auto;gap:.42rem;min-height:0;padding:.72rem;border-color:#49586a47;border-radius:.75rem;background:linear-gradient(180deg,#aab8c7fa,#8e9eb0fa),radial-gradient(circle at 18% 0%,rgba(255,255,255,.26),transparent 44%);box-shadow:0 2.4rem 5rem #102a4357,inset 0 0 0 1px #ffffff75,inset 0 0 0 .36rem #8596a88f}.christianity-card-render--full.christianity-card-render--template-genesis-classic{--christianity-frame-width: .34rem;padding:calc(.66rem + var(--christianity-frame-width));border-radius:.78rem;border-color:transparent;box-shadow:0 0 0 1px #586c8547,0 2.4rem 5rem #102a4357}.christianity-card-render--full.christianity-card-render--template-genesis-classic:before{border-radius:.56rem;box-shadow:0 .14rem .38rem #24304414}.christianity-card-render--template-genesis-full-art{border-color:#090d1594;background:#111827;color:#fff;text-shadow:0 .08rem .18rem rgba(0,0,0,.72);box-shadow:0 .7rem 1.45rem #090d1533,inset 0 0 1.2rem #ffffff1a}.christianity-card-render--template-genesis-full-art .christianity-card-render__art{border-radius:.36rem;box-shadow:inset 0 0 0 1px #ffffff29,inset 0 -2rem 2.5rem #090d154d}.christianity-card-render--template-genesis-full-art .christianity-card-render__effect{background:#090d1594;color:#fff;box-shadow:inset 0 0 0 1px #ffffff1f}.christianity-card-render--template-genesis-full-art .christianity-card-render__verse{border-color:#ffffff1f;background:#090d1580;box-shadow:inset 0 0 0 1px #ffffff14;color:#fff}.christianity-card-render--template-genesis-full-art .christianity-card-render__stats strong{background:#ffffffe6;color:#1f2933;text-shadow:none}.christianity-card-render--full.christianity-card-render--template-genesis-full-art{grid-template-rows:auto minmax(14rem,1fr) auto minmax(8rem,auto) auto;min-height:min(35rem,calc(100vh - 4rem));border-radius:.72rem;background:radial-gradient(circle at 50% 8%,rgba(255,255,255,.16),transparent 38%),#090d15;box-shadow:0 0 0 .12rem #ffffff1f,0 2.4rem 5rem #090d157a,inset 0 0 1.8rem #ffffff24}.christianity-card-render--back{place-items:center;padding:.55rem;background:var(--christianity-card-back);box-shadow:0 .8rem 1.55rem #24304424}.christianity-card-render--back:before{content:\"\";position:absolute;inset:.5rem;border:1px solid rgba(16,42,67,.12);border-radius:.38rem;background:linear-gradient(180deg,#ffffff2e,#ffffff0a);box-shadow:inset 0 0 0 .12rem #ffffff1f}.christianity-card-render--list{grid-template-rows:auto minmax(0,1fr) auto;gap:.22rem;padding:.38rem;border-radius:.48rem;box-shadow:0 .45rem 1rem #2430441a,inset 0 0 0 .14rem #ffffff9e}.christianity-card-render--board{grid-template-rows:auto minmax(0,1fr) auto;gap:.22rem;padding:.34rem;border-color:#2430442e;border-radius:.48rem;background:linear-gradient(180deg,#fffffffa,#f8fafcf5),radial-gradient(circle at 52% 18%,rgba(37,99,235,.12),transparent 42%),radial-gradient(circle at 18% 0%,rgba(214,162,29,.12),transparent 44%);box-shadow:0 .46rem .95rem #102a431c,inset 0 0 0 .12rem #ffffffa8}.christianity-card-render--board.is-leader{grid-template-rows:auto minmax(2.35rem,1fr) auto;background:linear-gradient(180deg,#fffffffa,#eff6fff5),radial-gradient(circle at 50% 22%,rgba(37,99,235,.18),transparent 48%),radial-gradient(circle at 18% 0%,rgba(214,162,29,.14),transparent 44%)}.christianity-card-render--compact{grid-template-rows:minmax(1.4rem,auto) minmax(0,1fr) minmax(1.95rem,auto);gap:.26rem;padding:.42rem}.christianity-card-render--baby,.christianity-card-render--hand,.christianity-card-render--table{grid-template-rows:1.36rem minmax(0,1fr) 2.02rem}.christianity-card-render--baby{grid-template-rows:1.34rem minmax(0,1.32fr) 1.72rem}.christianity-card-render--compact.christianity-card-render--template-genesis-classic{--christianity-frame-width: .2rem;padding:calc(.42rem + var(--christianity-frame-width))}.christianity-card-render--compact.christianity-card-render--template-genesis-classic:before{border-radius:.42rem}.christianity-card-render__header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.34rem;align-items:center;min-width:0}.christianity-card-render__type-icon,.christianity-card-render__metric{display:grid;place-items:center;border-radius:999px}.christianity-card-render__type-icon{width:1.2rem;height:1.2rem;background:#24304414}.christianity-card-render__type-icon img{width:.82rem;height:.82rem;object-fit:contain}.christianity-card-render__header strong{min-width:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.86rem,2.5vw,1.06rem);line-height:1.04}.christianity-card-render--compact .christianity-card-render__header{gap:.24rem;align-items:center;min-height:1.28rem}.christianity-card-render--compact .christianity-card-render__type-icon{width:1rem;height:1rem}.christianity-card-render--compact .christianity-card-render__type-icon img{width:.7rem;height:.7rem}.christianity-card-render--compact .christianity-card-render__header strong{font-size:clamp(.72rem,2vw,.92rem);line-height:1}.christianity-card-render--list .christianity-card-render__header{gap:.22rem}.christianity-card-render--list .christianity-card-render__type-icon{width:.9rem;height:.9rem}.christianity-card-render--list .christianity-card-render__type-icon img{width:.62rem;height:.62rem}.christianity-card-render--list .christianity-card-render__header strong{font-size:.72rem;line-height:1}.christianity-card-render--board .christianity-card-render__header{gap:.2rem}.christianity-card-render--board .christianity-card-render__type-icon{width:1rem;height:1rem}.christianity-card-render--board .christianity-card-render__type-icon img{width:.68rem;height:.68rem}.christianity-card-render--board .christianity-card-render__header strong{display:-webkit-box;overflow-wrap:anywhere;text-overflow:clip;white-space:normal;font-size:clamp(.7rem,1.65vw,.84rem);line-height:.98;-webkit-box-orient:vertical;-webkit-line-clamp:2}.christianity-card-render--board.is-leader .christianity-card-render__header strong{font-size:clamp(.72rem,1.7vw,.86rem)}.christianity-card-render--full .christianity-card-render__type-icon{width:1.32rem;height:1.32rem}.christianity-card-render--full .christianity-card-render__type-icon img{width:.84rem;height:.84rem}.christianity-card-render--full .christianity-card-render__header strong{display:-webkit-box;overflow-wrap:anywhere;text-overflow:clip;white-space:normal;font-size:clamp(1.12rem,4.3vw,1.58rem);line-height:.98;-webkit-box-orient:vertical;-webkit-line-clamp:2}.christianity-card-render__metric{min-width:1.52rem;height:1.52rem;padding:0 .24rem;background:#ffd91a;color:#243044;font-size:.86rem;font-weight:900;line-height:1;box-shadow:inset 0 -.08rem #52401c2e}.christianity-card-render--compact .christianity-card-render__metric{min-width:1.28rem;height:1.28rem;padding:0 .2rem;font-size:.72rem}.christianity-card-render--list .christianity-card-render__metric{min-width:1.2rem;height:1.2rem;padding:0 .18rem;font-size:.7rem}.christianity-card-render--board .christianity-card-render__metric{min-width:1.25rem;height:1.25rem;padding:0 .18rem;font-size:.72rem}.christianity-card-render--full .christianity-card-render__metric{min-width:1.94rem;height:1.94rem;padding:0 .34rem;font-size:1.08rem;box-shadow:inset 0 -.1rem #52401c33,0 .16rem .4rem #102a431f}.christianity-card-render__metric.is-pips,.christianity-card-render__stats .is-pips{grid-auto-flow:column;gap:.16rem;min-width:auto;padding:0 .28rem}.christianity-card-render__metric.is-pips{height:auto;padding:0;background:transparent;box-shadow:none}.christianity-card-render__metric.is-cost-symbol{min-width:1.52rem;width:1.52rem;padding:0}.christianity-card-render--compact .christianity-card-render__metric.is-cost-symbol{min-width:1.28rem;width:1.28rem}.christianity-card-render--list .christianity-card-render__metric.is-cost-symbol{min-width:1.2rem;width:1.2rem}.christianity-card-render--full .christianity-card-render__metric.is-cost-symbol{min-width:1.72rem;width:1.72rem}.christianity-card-render__metric.is-cost-symbol i{display:none}.christianity-card-render__metric i,.christianity-card-render__stats i{display:block;width:.72rem;height:.72rem;border-radius:999px;background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.9) 0 .12rem,transparent .13rem),#ffd91a;box-shadow:inset 0 -.08rem #52401c2e,0 .12rem .24rem #102a431a}.christianity-card-render--compact .christianity-card-render__metric i,.christianity-card-render--compact .christianity-card-render__stats i{width:.5rem;height:.5rem}.christianity-card-render--list .christianity-card-render__metric i,.christianity-card-render--list .christianity-card-render__stats i{width:.48rem;height:.48rem}.christianity-card-render__art{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden;border-radius:.36rem;background:linear-gradient(135deg,#5f6f2a2e,#d6a21d24),radial-gradient(circle at 50% 18%,rgba(255,255,255,.72),transparent 48%),#dbe7ef;box-shadow:inset 0 0 0 1px #24304414}.christianity-card-render__art img{width:100%;height:100%;object-fit:cover;object-position:center 45%;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.christianity-card-render__art>span{max-width:78%;overflow:hidden;color:#2430447a;font-size:clamp(.82rem,2.2vw,1.05rem);font-weight:900;line-height:1.02;text-align:center;text-overflow:ellipsis}.christianity-card-render--list .christianity-card-render__art>span{max-width:82%;font-size:.7rem}.christianity-card-render--board .christianity-card-render__art>span{max-width:82%;display:-webkit-box;overflow-wrap:anywhere;text-overflow:clip;white-space:normal;font-size:clamp(.64rem,1.6vw,.78rem);-webkit-box-orient:vertical;-webkit-line-clamp:2}.christianity-card-render--full .christianity-card-render__art>span{font-size:clamp(1.1rem,5vw,1.8rem)}.christianity-card-render__art small{position:absolute;right:0;bottom:0;max-width:78%;padding:.1rem .34rem;overflow:hidden;border-radius:999px 0 .26rem 999px;background:#ffffffe6;color:#1f2933a8;font-size:.48rem;font-style:italic;font-weight:900;line-height:1;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.christianity-card-render--compact .christianity-card-render__art{border-radius:.3rem}.christianity-card-render--compact .christianity-card-render__art>span{max-width:76%;display:-webkit-box;font-size:clamp(.66rem,1.9vw,.84rem);-webkit-box-orient:vertical;-webkit-line-clamp:2}.christianity-card-render--compact .christianity-card-render__art small{bottom:.22rem;max-width:72%;padding:.08rem .28rem;font-size:.42rem}.christianity-card-render--list .christianity-card-render__art small{bottom:.2rem;padding:.08rem .26rem;font-size:.42rem}.christianity-card-render--board .christianity-card-render__art{border-radius:.3rem}.christianity-card-render--board .christianity-card-render__art small{bottom:.2rem;max-width:76%;padding:.08rem .26rem;font-size:.4rem}.christianity-card-render--board.is-leader .christianity-card-render__art{min-height:2.15rem;background:linear-gradient(135deg,#2563eb29,#d6a21d29),radial-gradient(circle at 50% 18%,rgba(255,255,255,.78),transparent 48%),#e7eef8}.christianity-card-render--full .christianity-card-render__art{aspect-ratio:1.34 / 1;border-radius:.34rem;box-shadow:inset 0 0 0 1px #2430441a,0 .16rem .36rem #102a4314}.christianity-card-render--full .christianity-card-render__art small{right:0;bottom:.34rem;min-width:4.1rem;padding:.13rem .46rem .12rem;border:1px solid rgba(36,48,68,.08);border-right:0;border-radius:999px 0 0 999px;background:linear-gradient(180deg,#fffffff0,#eff2f6e6);box-shadow:0 .12rem .28rem #102a431a;color:#1f2933ad;font-size:.46rem;letter-spacing:.02em;text-align:center}.christianity-card-render__verse,.christianity-card-render__effect{display:grid;gap:.32rem}.christianity-card-render__verse{color:#171923;font-family:Georgia,Times New Roman,serif;font-size:clamp(.58rem,1.92vw,.66rem)}.christianity-card-render--full .christianity-card-render__verse{align-content:start;padding:.3rem .2rem .14rem;border:0;border-radius:0;background:transparent;box-shadow:none;text-align:left;font-size:clamp(.52rem,1.72vw,.6rem)}.christianity-card-render__verse p,.christianity-card-render__effect p{margin:0;line-height:1.18}.christianity-card-render--full .christianity-card-render__verse p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}.christianity-card-render--full.has-long-verse .christianity-card-render__verse{font-size:clamp(.48rem,1.6vw,.56rem)}.christianity-card-render--full.has-long-verse .christianity-card-render__verse p{-webkit-line-clamp:5}.christianity-card-render__verse strong{font-family:inherit;font-size:.66rem;font-weight:900}.christianity-card-render__verse-ref{display:block;margin-top:.18rem;font-family:Georgia,Times New Roman,serif;font-size:.56rem;font-weight:900;color:#171923d9;letter-spacing:.01em}.christianity-card-render__effect{position:relative;align-content:center;min-height:1.45rem;padding:.24rem;overflow:hidden;border-radius:.34rem;background:radial-gradient(circle at 50% 70%,rgba(36,48,68,.06),transparent 44%),#ffffffdb}.christianity-card-render--compact .christianity-card-render__effect{align-content:end;box-sizing:border-box;height:1.95rem;min-height:1.95rem;padding:.2rem .24rem;border-radius:.3rem;background:radial-gradient(circle at 50% 80%,rgba(36,48,68,.05),transparent 45%),linear-gradient(180deg,#ffffffd1,#fffffff0)}.christianity-card-render--list .christianity-card-render__effect{min-height:1.26rem;padding:.16rem;border-radius:.28rem}.christianity-card-render--board .christianity-card-render__effect{align-content:end;min-height:1.45rem;padding:.16rem;border-radius:.28rem;background:radial-gradient(circle at 50% 80%,rgba(36,48,68,.05),transparent 45%),linear-gradient(180deg,#ffffffd6,#fffffff5)}.christianity-card-render__edition-watermark{position:absolute;top:50%;left:50%;z-index:0;width:min(42%,4.8rem);max-width:none;opacity:.055;pointer-events:none;transform:translate(-50%,-50%)}.christianity-card-render--compact .christianity-card-render__edition-watermark{width:min(36%,2.6rem);opacity:.045}.christianity-card-render--full .christianity-card-render__effect{align-content:start;min-height:5.9rem;padding:.6rem .72rem .48rem;border:none;border-radius:.56rem;background:#2430440b;box-shadow:none;text-align:left;gap:.36rem}.christianity-card-render--full .christianity-card-render__edition-watermark{width:min(42%,5.2rem);opacity:.1}.christianity-card-render__stats{position:relative;z-index:1;display:flex;gap:.65rem;min-height:1rem}.christianity-card-render--compact .christianity-card-render__stats{align-items:end;min-height:1rem}.christianity-card-render__stats strong{justify-self:end;align-self:end;margin-left:auto;padding:.12rem .32rem;border-radius:999px;background:#edf2f7;font-size:clamp(.66rem,2vw,.82rem);line-height:1.05}.christianity-card-render--compact .christianity-card-render__stats strong{padding:.1rem .28rem;font-size:clamp(.64rem,1.9vw,.78rem)}.christianity-card-render--list .christianity-card-render__stats{min-height:.95rem}.christianity-card-render--list .christianity-card-render__stats strong{padding:.1rem .26rem;font-size:.66rem}.christianity-card-render--board .christianity-card-render__stats strong{padding:.1rem .28rem;background:#edf2f7f5;font-size:clamp(.66rem,1.9vw,.8rem);font-weight:950}.christianity-card-render--board.is-leader .christianity-card-render__stats strong{margin-right:auto;margin-left:auto;padding:.16rem .42rem;background:#102a43;color:#fff;font-size:clamp(.82rem,2.2vw,1.05rem);letter-spacing:0;box-shadow:0 .28rem .72rem #102a432e}.christianity-card-render--full.is-leader .christianity-card-render__effect{min-height:6.8rem}.christianity-card-render--full.is-rules-only .christianity-card-render__effect{align-content:center}.christianity-card-render--full .christianity-card-render__text{gap:.28rem}.christianity-card-render__text{position:relative;z-index:1;display:grid;gap:.18rem}.christianity-card-render__text strong{font-size:.78rem;line-height:1.05}.christianity-card-render__text p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4;font-size:clamp(.7rem,2.32vw,.82rem);line-height:1.18}.christianity-card-render--full.has-long-effect .christianity-card-render__text p{-webkit-line-clamp:4;font-size:clamp(.64rem,2.05vw,.74rem);line-height:1.16}.christianity-card-render--full.is-rules-only .christianity-card-render__text p{font-size:clamp(.82rem,2.6vw,.96rem)}.christianity-card-render__rarity{position:absolute;top:.62rem;right:.62rem;z-index:1;width:.5rem;height:.5rem;border-radius:999px;border:1px solid rgba(255,255,255,.8)}.christianity-card-render--full .christianity-card-render__rarity{width:.52rem;height:.52rem;z-index:1}.christianity-card-render__rarity.is-normal{background:#3a80e9}.christianity-card-render__rarity.is-good{background:#4ee93a}.christianity-card-render__rarity.is-very-good{background:#e9ce3a}.christianity-card-render--full .christianity-card-render__stats{position:relative;z-index:1;align-items:center;min-height:0}.christianity-card-render--full .christianity-card-render__stats strong{margin-left:0;padding:0;border-radius:0;background:none;font-size:1.05rem;font-weight:900;box-shadow:none;line-height:1;color:var(--christianity-theme-ink, #171923);letter-spacing:-.01em}.christianity-card-render--full.is-character .christianity-card-render__stats strong{font-size:1.12rem}.christianity-card-render--full.is-leader .christianity-card-render__stats{position:relative;right:auto;bottom:auto;left:auto;min-height:0}.christianity-card-render--full .christianity-card-render__stats .christianity-card-render__rarity{position:absolute;top:.52rem;right:.52rem;margin-left:0;flex-shrink:0;z-index:2}.christianity-card-render--full.is-leader .christianity-card-render__leader-life{color:#1f2933e6;font-size:1.4rem;line-height:1;background:transparent;box-shadow:none;padding:0;border-radius:0;margin-left:0}.christianity-card-render__footer{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:.2rem;align-items:center;color:#1f2933ad;font-size:.34rem;line-height:1;text-transform:uppercase}.christianity-card-render--full .christianity-card-render__footer{gap:.2rem;color:#1f293394;font-size:.32rem;font-weight:700}.christianity-card-render__footer span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.christianity-card-render__footer-badge{display:inline-block;padding:.06rem .2rem;border-radius:.2rem;background:#24304424;font-weight:900;letter-spacing:.04em;overflow:visible}:host-context(.dark),:host-context(.ion-palette-dark),:host-context(html.ion-palette-dark),:host-context(body.dark),:host-context([data-theme=\"dark\"]){--christianity-card-back: linear-gradient(135deg, rgba(147, 197, 253, .2), rgba(15, 23, 42, .08)), repeating-linear-gradient(45deg, #1e3a5f 0 .33rem, #0f172a .33rem .66rem);color-scheme:dark}:host-context(.dark) .christianity-card-render,:host-context(.ion-palette-dark) .christianity-card-render,:host-context(html.ion-palette-dark) .christianity-card-render,:host-context(body.dark) .christianity-card-render,:host-context([data-theme=\"dark\"]) .christianity-card-render{box-shadow:0 .5rem 1.25rem #0000003d,inset 0 0 0 .18rem #ffffff61}:host-context(.dark) .christianity-card-render--back,:host-context(.ion-palette-dark) .christianity-card-render--back,:host-context(html.ion-palette-dark) .christianity-card-render--back,:host-context(body.dark) .christianity-card-render--back,:host-context([data-theme=\"dark\"]) .christianity-card-render--back{border-color:#93c5fd38;box-shadow:0 .8rem 1.55rem #00000052}:host-context(.dark) .christianity-card-render--back:before,:host-context(.ion-palette-dark) .christianity-card-render--back:before,:host-context(html.ion-palette-dark) .christianity-card-render--back:before,:host-context(body.dark) .christianity-card-render--back:before,:host-context([data-theme=\"dark\"]) .christianity-card-render--back:before{border-color:#93c5fd29;background:linear-gradient(180deg,#93c5fd24,#0f172a0a)}:host-context(.dark) .christianity-card-render--list,:host-context(.ion-palette-dark) .christianity-card-render--list,:host-context(html.ion-palette-dark) .christianity-card-render--list,:host-context(body.dark) .christianity-card-render--list,:host-context([data-theme=\"dark\"]) .christianity-card-render--list{box-shadow:0 .45rem 1rem #00000042,inset 0 0 0 .14rem #ffffff7a}:host-context(.dark) .christianity-card-render__type-icon,:host-context(.ion-palette-dark) .christianity-card-render__type-icon,:host-context(html.ion-palette-dark) .christianity-card-render__type-icon,:host-context(body.dark) .christianity-card-render__type-icon,:host-context([data-theme=\"dark\"]) .christianity-card-render__type-icon,:host-context(.dark) .christianity-card-render__stats strong,:host-context(.ion-palette-dark) .christianity-card-render__stats strong,:host-context(html.ion-palette-dark) .christianity-card-render__stats strong,:host-context(body.dark) .christianity-card-render__stats strong,:host-context([data-theme=\"dark\"]) .christianity-card-render__stats strong{background:#e2e8f0db;color:#172033}@media (min-width: 52rem){.christianity-card-render--full{grid-template-rows:auto minmax(15.8rem,auto) minmax(4.6rem,auto) minmax(8.8rem,1fr) auto;gap:.54rem;min-height:0;padding:1.05rem}.christianity-card-render--full.christianity-card-render--template-genesis-classic{--christianity-frame-width: .38rem;padding:calc(1.05rem + var(--christianity-frame-width))}.christianity-card-render--full .christianity-card-render__type-icon{width:1.6rem;height:1.6rem}.christianity-card-render--full .christianity-card-render__type-icon img{width:1rem;height:1rem}.christianity-card-render--full .christianity-card-render__header strong{font-size:clamp(1.34rem,4.5vw,2.28rem)}.christianity-card-render--full .christianity-card-render__verse{padding:.38rem .24rem .16rem;font-size:clamp(.6rem,1.5vw,.72rem)}.christianity-card-render--full .christianity-card-render__effect{min-height:8.8rem;padding:.9rem 1rem .48rem}.christianity-card-render--full .christianity-card-render__stats strong{font-size:.88rem}.christianity-card-render--full.is-leader .christianity-card-render__leader-life{font-size:1.8rem}.christianity-card-render--full .christianity-card-render__stats,.christianity-card-render--full.is-leader .christianity-card-render__stats{bottom:1.8rem}.christianity-card-render--full .christianity-card-render__text strong{font-size:.86rem}.christianity-card-render--full .christianity-card-render__text p{font-size:clamp(1rem,2.12vw,1.22rem)}}\n"] }); }
|
|
295
|
-
}
|
|
296
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChristianityCardComponent, decorators: [{
|
|
297
|
-
type: Component,
|
|
298
|
-
args: [{ selector: 'val-christianity-card', standalone: true, template: `
|
|
299
|
-
@if (variant() === 'back') {
|
|
300
|
-
<article class="christianity-card-render christianity-card-render--back" aria-hidden="true">
|
|
301
|
-
<span></span>
|
|
302
|
-
</article>
|
|
303
|
-
} @else if (isInPlay()) {
|
|
304
|
-
<article
|
|
305
|
-
class="cc"
|
|
306
|
-
[class.cc--leader]="card().type === 'leader'"
|
|
307
|
-
[class.cc--character]="card().type === 'character'"
|
|
308
|
-
[class.cc--board]="variant() === 'board'"
|
|
309
|
-
[style.--ct]="typeColor()"
|
|
310
|
-
>
|
|
311
|
-
<div class="cc__art" [class.cc__art--real]="hasRealArt()">
|
|
312
|
-
@if (hasRealArt()) {
|
|
313
|
-
<img class="cc__real" [src]="card().imageUrl" [alt]="card().name" draggable="false" />
|
|
314
|
-
} @else {
|
|
315
|
-
<img class="cc__wm" [src]="typeIconUrl()" alt="" aria-hidden="true" />
|
|
316
|
-
}
|
|
317
|
-
</div>
|
|
318
|
-
|
|
319
|
-
<!-- Tipo + coste juntos arriba-izquierda: en la mano en abanico solo se ve esa esquina. -->
|
|
320
|
-
<div class="cc__corner" aria-hidden="true">
|
|
321
|
-
<span class="cc__type"><img [src]="typeIconUrl()" alt="" /></span>
|
|
322
|
-
@if (headerMetric(); as metric) {
|
|
323
|
-
<span class="cc__cost" [class.cc__cost--pips]="metric.kind === 'pips'">
|
|
324
|
-
@if (metric.kind === 'pips') {
|
|
325
|
-
@for (_ of offeringPips(metric.value); track $index) {
|
|
326
|
-
<i></i>
|
|
327
|
-
}
|
|
328
|
-
} @else if (metric.kind === 'cost-symbol') {
|
|
329
|
-
<i></i>
|
|
330
|
-
} @else {
|
|
331
|
-
{{ metric.value }}
|
|
332
|
-
}
|
|
333
|
-
</span>
|
|
334
|
-
}
|
|
335
|
-
</div>
|
|
336
|
-
|
|
337
|
-
<div class="cc__hud">
|
|
338
|
-
<span class="cc__name">{{ card().name }}</span>
|
|
339
|
-
@if (card().type === 'character') {
|
|
340
|
-
<div class="cc__stats" aria-hidden="true">
|
|
341
|
-
<span class="cc__atk">
|
|
342
|
-
<svg class="cc__ico" viewBox="0 0 24 24" aria-hidden="true">
|
|
343
|
-
<path d="M14 5l5-2-2 5-8 8-3-3z" />
|
|
344
|
-
<path d="M6 13l-3 3 2 2 3-3" /></svg
|
|
345
|
-
>{{ card().attack ?? 0 }}
|
|
346
|
-
</span>
|
|
347
|
-
<span class="cc__life">
|
|
348
|
-
<svg class="cc__ico" viewBox="0 0 24 24" aria-hidden="true">
|
|
349
|
-
<path d="M12 20s-6-4.6-6-9a4 4 0 018-1 4 4 0 018 1c0 4.4-6 9-6 9z" /></svg
|
|
350
|
-
>{{ card().currentHp ?? card().life ?? 0 }}
|
|
351
|
-
</span>
|
|
352
|
-
</div>
|
|
353
|
-
} @else if (card().type === 'leader') {
|
|
354
|
-
<div class="cc__stats" aria-hidden="true">
|
|
355
|
-
<span class="cc__life">
|
|
356
|
-
<svg class="cc__ico" viewBox="0 0 24 24" aria-hidden="true">
|
|
357
|
-
<path d="M12 20s-6-4.6-6-9a4 4 0 018-1 4 4 0 018 1c0 4.4-6 9-6 9z" /></svg
|
|
358
|
-
>{{ leaderLifeText() }}
|
|
359
|
-
</span>
|
|
360
|
-
</div>
|
|
361
|
-
}
|
|
362
|
-
</div>
|
|
363
|
-
|
|
364
|
-
<span
|
|
365
|
-
class="cc__gem"
|
|
366
|
-
[class.is-normal]="!card().rarity || card().rarity === 'normal'"
|
|
367
|
-
[class.is-good]="card().rarity === 'good' || card().rarity === 'uncommon'"
|
|
368
|
-
[class.is-very-good]="
|
|
369
|
-
card().rarity === 'very-good' || card().rarity === 'rare' || card().rarity === 'legendary'
|
|
370
|
-
"
|
|
371
|
-
aria-hidden="true"
|
|
372
|
-
></span>
|
|
373
|
-
</article>
|
|
374
|
-
} @else {
|
|
375
|
-
<article
|
|
376
|
-
class="christianity-card-render"
|
|
377
|
-
[class.christianity-card-render--full]="variant() === 'full'"
|
|
378
|
-
[class.christianity-card-render--compact]="variant() !== 'full'"
|
|
379
|
-
[class.christianity-card-render--baby]="variant() === 'baby'"
|
|
380
|
-
[class.christianity-card-render--table]="variant() === 'table'"
|
|
381
|
-
[class.christianity-card-render--hand]="variant() === 'hand'"
|
|
382
|
-
[class.christianity-card-render--list]="variant() === 'list'"
|
|
383
|
-
[class.christianity-card-render--board]="variant() === 'board'"
|
|
384
|
-
[class.christianity-card-render--template-genesis-classic]="isGenesisClassicTemplate()"
|
|
385
|
-
[class.christianity-card-render--template-genesis-full-art]="frontTemplate() === 'genesis-full-art'"
|
|
386
|
-
[class.is-leader]="card().type === 'leader'"
|
|
387
|
-
[class.is-character]="card().type === 'character'"
|
|
388
|
-
[class.is-offering]="card().type === 'offering'"
|
|
389
|
-
[class.is-rules-only]="isRulesOnlyCard()"
|
|
390
|
-
[class.has-long-verse]="isLongText(card().verseText, 150)"
|
|
391
|
-
[class.has-long-effect]="isLongText(card().abilityText || card().statusText, 120)"
|
|
392
|
-
>
|
|
393
|
-
<header class="christianity-card-render__header">
|
|
394
|
-
@if (showTypeIcon()) {
|
|
395
|
-
<span class="christianity-card-render__type-icon" aria-hidden="true">
|
|
396
|
-
<img [src]="typeIconUrl()" alt="" />
|
|
397
|
-
</span>
|
|
398
|
-
}
|
|
399
|
-
<strong>{{ card().name }}</strong>
|
|
400
|
-
@if (headerMetric(); as metric) {
|
|
401
|
-
<span
|
|
402
|
-
class="christianity-card-render__metric"
|
|
403
|
-
[class.is-pips]="metric.kind === 'pips'"
|
|
404
|
-
[class.is-cost-symbol]="metric.kind === 'cost-symbol'"
|
|
405
|
-
[class.is-offering-value]="card().type === 'offering'"
|
|
406
|
-
aria-hidden="true"
|
|
407
|
-
>
|
|
408
|
-
@if (metric.kind === 'pips') {
|
|
409
|
-
@for (_ of offeringPips(metric.value); track $index) {
|
|
410
|
-
<i aria-hidden="true"></i>
|
|
411
|
-
}
|
|
412
|
-
} @else if (metric.kind === 'cost-symbol') {
|
|
413
|
-
<i aria-hidden="true"></i>
|
|
414
|
-
} @else {
|
|
415
|
-
{{ metric.value }}
|
|
416
|
-
}
|
|
417
|
-
</span>
|
|
418
|
-
}
|
|
419
|
-
</header>
|
|
420
|
-
|
|
421
|
-
<section class="christianity-card-render__art" [class.has-image]="card().imageUrl">
|
|
422
|
-
@if (card().imageUrl) {
|
|
423
|
-
<img [src]="card().imageUrl" [alt]="card().name" draggable="false" />
|
|
424
|
-
} @else {
|
|
425
|
-
<span>{{ card().name }}</span>
|
|
426
|
-
}
|
|
427
|
-
@if (variant() !== 'board' && variant() !== 'baby' && variant() !== 'table') {
|
|
428
|
-
<small>{{ normalizedTypeLabel() }}</small>
|
|
429
|
-
}
|
|
430
|
-
</section>
|
|
431
|
-
|
|
432
|
-
@if (variant() === 'full') {
|
|
433
|
-
<section class="christianity-card-render__verse">
|
|
434
|
-
@if (card().verseText) {
|
|
435
|
-
<p>{{ card().verseText }}</p>
|
|
436
|
-
}
|
|
437
|
-
@if (card().scripture) {
|
|
438
|
-
<strong class="christianity-card-render__verse-ref">{{ card().scripture }}</strong>
|
|
439
|
-
}
|
|
440
|
-
</section>
|
|
441
|
-
}
|
|
442
|
-
|
|
443
|
-
<section class="christianity-card-render__effect">
|
|
444
|
-
@if (card().editionIcon) {
|
|
445
|
-
<img
|
|
446
|
-
class="christianity-card-render__edition-watermark"
|
|
447
|
-
[src]="card().editionIcon"
|
|
448
|
-
alt=""
|
|
449
|
-
aria-hidden="true"
|
|
450
|
-
/>
|
|
451
|
-
}
|
|
452
|
-
@if (variant() !== 'full') {
|
|
453
|
-
<div class="christianity-card-render__stats">
|
|
454
|
-
@if (card().type === 'leader') {
|
|
455
|
-
<strong class="christianity-card-render__leader-life">{{ leaderLifeText() }}</strong>
|
|
456
|
-
} @else if (cardStatsText()) {
|
|
457
|
-
<strong>{{ cardStatsText() }}</strong>
|
|
458
|
-
}
|
|
459
|
-
</div>
|
|
460
|
-
}
|
|
461
|
-
@if (variant() === 'full') {
|
|
462
|
-
<div class="christianity-card-render__stats">
|
|
463
|
-
@if (card().type === 'leader') {
|
|
464
|
-
<strong class="christianity-card-render__leader-life">{{ leaderLifeValue() }}</strong>
|
|
465
|
-
} @else if (cardStatsText()) {
|
|
466
|
-
<strong>{{ cardStatsText() }}</strong>
|
|
467
|
-
}
|
|
468
|
-
</div>
|
|
469
|
-
<div class="christianity-card-render__text">
|
|
470
|
-
@if (card().abilityName) {
|
|
471
|
-
<strong>{{ card().abilityName }}</strong>
|
|
472
|
-
}
|
|
473
|
-
@if (card().abilityText || card().statusText) {
|
|
474
|
-
<p>{{ card().abilityText || card().statusText }}</p>
|
|
475
|
-
}
|
|
476
|
-
</div>
|
|
477
|
-
}
|
|
478
|
-
@if (variant() === 'list' || variant() === 'hand' || variant() === 'full') {
|
|
479
|
-
<span
|
|
480
|
-
class="christianity-card-render__rarity"
|
|
481
|
-
[class.is-normal]="!card().rarity || card().rarity === 'normal'"
|
|
482
|
-
[class.is-good]="card().rarity === 'good' || card().rarity === 'uncommon'"
|
|
483
|
-
[class.is-very-good]="
|
|
484
|
-
card().rarity === 'very-good' || card().rarity === 'rare' || card().rarity === 'legendary'
|
|
485
|
-
"
|
|
486
|
-
aria-hidden="true"
|
|
487
|
-
></span>
|
|
488
|
-
}
|
|
489
|
-
</section>
|
|
490
|
-
|
|
491
|
-
@if (variant() === 'full') {
|
|
492
|
-
<footer class="christianity-card-render__footer">
|
|
493
|
-
<span class="christianity-card-render__footer-badge">{{ card().edition ?? 'MVP' }}</span>
|
|
494
|
-
<span>{{ card().collectorNumber ?? card().id }}</span>
|
|
495
|
-
<span>{{ card().year ?? '2026' }} CHRISTIANITY</span>
|
|
496
|
-
<span>{{ card().author ?? 'MVP' }}</span>
|
|
497
|
-
</footer>
|
|
498
|
-
}
|
|
499
|
-
</article>
|
|
500
|
-
}
|
|
501
|
-
`, styles: [":host{--christianity-card-aspect: 5 / 7.75;--christianity-card-back: linear-gradient(135deg, rgba(16, 42, 67, .16), rgba(16, 42, 67, .03)), repeating-linear-gradient(45deg, #dbeafe 0 .33rem, #ffffff .33rem .66rem);display:block;width:100%;min-width:0;container-type:inline-size}.christianity-card-render{position:relative;box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:.28rem;width:100%;min-width:0;aspect-ratio:var(--christianity-card-aspect);padding:.48rem;overflow:hidden;border:1px solid rgba(36,48,68,.16);border-radius:.52rem;background:linear-gradient(180deg,#fffffffa,#f8fafcfa),radial-gradient(circle at 18% 0%,rgba(214,162,29,.12),transparent 44%);color:var(--val-text-color, #1f2933);-webkit-user-select:none;user-select:none;box-shadow:0 .5rem 1.25rem #2430441a,inset 0 0 0 .18rem #ffffff9e}.christianity-card-render>*{position:relative;z-index:1}.cc{position:relative;box-sizing:border-box;width:100%;min-width:0;aspect-ratio:var(--christianity-card-aspect);overflow:hidden;border:.14rem solid var(--ct, #5f6b7a);border-radius:.5rem;background:var(--ct, #5f6b7a);color:#fff;-webkit-user-select:none;user-select:none;box-shadow:0 .4rem .9rem #101a2847}.cc__art{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;background-image:linear-gradient(160deg,#ffffff29,#00000057)}.cc__art--real{background-image:none}.cc__real{width:100%;height:100%;object-fit:cover;object-position:center 42%;pointer-events:none;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.cc__wm{width:46%;height:auto;object-fit:contain;opacity:.18;filter:brightness(0) invert(1);pointer-events:none}.cc__corner{position:absolute;top:5cqw;left:5cqw;z-index:3;display:flex;flex-direction:column;align-items:flex-start;gap:3cqw}.cc__type{display:grid;place-items:center;width:clamp(.8rem,21cqw,1.65rem);height:clamp(.8rem,21cqw,1.65rem);border-radius:999px;background:var(--ct, #5f6b7a);border:1.5px solid rgba(255,255,255,.9);box-shadow:0 1px 3px #00000059}.cc__type img{width:60%;height:60%;object-fit:contain;filter:brightness(0) invert(1)}.cc__cost{display:flex;gap:.12rem;align-items:center;justify-content:center;min-width:clamp(.8rem,21cqw,1.65rem);height:clamp(.8rem,21cqw,1.65rem);padding:0 .18rem;border-radius:999px;background:#f4d35e;color:#4a3a06;font-weight:800;font-size:clamp(.56rem,12cqw,.94rem);line-height:1;border:1.5px solid rgba(255,255,255,.75);box-shadow:0 1px 3px #00000059}.cc__cost--pips{background:transparent;border:0;box-shadow:none;padding:0;gap:.12rem;min-width:0;height:auto}.cc__cost--pips i{display:block;width:clamp(.8rem,21cqw,1.65rem);height:clamp(.8rem,21cqw,1.65rem);border-radius:999px;background:#f4d35e;border:1.5px solid rgba(255,255,255,.75);box-shadow:0 1px 2px #0000004d}.cc__hud{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;flex-direction:column;gap:.06rem;padding:clamp(.62rem,15cqw,1rem) clamp(.18rem,5cqw,.44rem) clamp(.18rem,5cqw,.38rem);background:linear-gradient(transparent,#00000059 42%,#000000d1)}.cc__name{display:none;font-family:Georgia,Times New Roman,serif;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.12;font-size:clamp(.5rem,12cqw,.94rem);text-shadow:0 1px 2px rgba(0,0,0,.65)}.cc__stats{display:flex;align-items:center;gap:clamp(.25rem,6cqw,.5rem);font-weight:800;font-variant-numeric:tabular-nums;font-size:clamp(.56rem,13cqw,1.06rem);text-shadow:0 1px 2px rgba(0,0,0,.6)}.cc__atk,.cc__life{display:inline-flex;align-items:center;gap:.12rem}.cc__atk{color:#ff9a9a}.cc__life{color:#9af0ab}.cc__ico{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:2;flex:none}.cc__gem{display:none;position:absolute;right:5cqw;bottom:5cqw;z-index:3;width:clamp(.5rem,11cqw,.82rem);height:clamp(.5rem,11cqw,.82rem);border-radius:999px;border:1.5px solid rgba(255,255,255,.85);box-shadow:0 1px 2px #0006}.cc__gem.is-normal{background:#3a80e9}.cc__gem.is-good{background:#4ee93a}.cc__gem.is-very-good{background:#e9ce3a}@container (min-width: 58px){.cc__name{display:block}.cc--leader .cc__name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;white-space:normal;line-height:1.05}}@container (min-width: 70px){.cc__gem{display:block}}.christianity-card-render--template-genesis-classic{--christianity-frame-width: .26rem;padding:calc(.48rem + var(--christianity-frame-width));border-color:transparent;background:linear-gradient(155deg,#d2e2eef7,#9baec0fa 48%,#768aa3f7),radial-gradient(circle at 18% 0%,rgba(255,255,255,.28),transparent 42%);box-shadow:0 0 0 1px #586c854d,0 .5rem 1.25rem #24304421}.christianity-card-render--template-genesis-classic:before{content:\"\";position:absolute;inset:var(--christianity-frame-width);z-index:0;border-radius:calc(.52rem - .1rem);background:linear-gradient(180deg,#fffffffa,#f8fafcfa),radial-gradient(circle at 18% 0%,rgba(214,162,29,.08),transparent 44%);box-shadow:0 .12rem .28rem #2430440f}.christianity-card-render--full{grid-template-rows:auto minmax(10.8rem,auto) minmax(3rem,auto) minmax(5.9rem,1fr) auto;gap:.42rem;min-height:0;padding:.72rem;border-color:#49586a47;border-radius:.75rem;background:linear-gradient(180deg,#aab8c7fa,#8e9eb0fa),radial-gradient(circle at 18% 0%,rgba(255,255,255,.26),transparent 44%);box-shadow:0 2.4rem 5rem #102a4357,inset 0 0 0 1px #ffffff75,inset 0 0 0 .36rem #8596a88f}.christianity-card-render--full.christianity-card-render--template-genesis-classic{--christianity-frame-width: .34rem;padding:calc(.66rem + var(--christianity-frame-width));border-radius:.78rem;border-color:transparent;box-shadow:0 0 0 1px #586c8547,0 2.4rem 5rem #102a4357}.christianity-card-render--full.christianity-card-render--template-genesis-classic:before{border-radius:.56rem;box-shadow:0 .14rem .38rem #24304414}.christianity-card-render--template-genesis-full-art{border-color:#090d1594;background:#111827;color:#fff;text-shadow:0 .08rem .18rem rgba(0,0,0,.72);box-shadow:0 .7rem 1.45rem #090d1533,inset 0 0 1.2rem #ffffff1a}.christianity-card-render--template-genesis-full-art .christianity-card-render__art{border-radius:.36rem;box-shadow:inset 0 0 0 1px #ffffff29,inset 0 -2rem 2.5rem #090d154d}.christianity-card-render--template-genesis-full-art .christianity-card-render__effect{background:#090d1594;color:#fff;box-shadow:inset 0 0 0 1px #ffffff1f}.christianity-card-render--template-genesis-full-art .christianity-card-render__verse{border-color:#ffffff1f;background:#090d1580;box-shadow:inset 0 0 0 1px #ffffff14;color:#fff}.christianity-card-render--template-genesis-full-art .christianity-card-render__stats strong{background:#ffffffe6;color:#1f2933;text-shadow:none}.christianity-card-render--full.christianity-card-render--template-genesis-full-art{grid-template-rows:auto minmax(14rem,1fr) auto minmax(8rem,auto) auto;min-height:min(35rem,calc(100vh - 4rem));border-radius:.72rem;background:radial-gradient(circle at 50% 8%,rgba(255,255,255,.16),transparent 38%),#090d15;box-shadow:0 0 0 .12rem #ffffff1f,0 2.4rem 5rem #090d157a,inset 0 0 1.8rem #ffffff24}.christianity-card-render--back{place-items:center;padding:.55rem;background:var(--christianity-card-back);box-shadow:0 .8rem 1.55rem #24304424}.christianity-card-render--back:before{content:\"\";position:absolute;inset:.5rem;border:1px solid rgba(16,42,67,.12);border-radius:.38rem;background:linear-gradient(180deg,#ffffff2e,#ffffff0a);box-shadow:inset 0 0 0 .12rem #ffffff1f}.christianity-card-render--list{grid-template-rows:auto minmax(0,1fr) auto;gap:.22rem;padding:.38rem;border-radius:.48rem;box-shadow:0 .45rem 1rem #2430441a,inset 0 0 0 .14rem #ffffff9e}.christianity-card-render--board{grid-template-rows:auto minmax(0,1fr) auto;gap:.22rem;padding:.34rem;border-color:#2430442e;border-radius:.48rem;background:linear-gradient(180deg,#fffffffa,#f8fafcf5),radial-gradient(circle at 52% 18%,rgba(37,99,235,.12),transparent 42%),radial-gradient(circle at 18% 0%,rgba(214,162,29,.12),transparent 44%);box-shadow:0 .46rem .95rem #102a431c,inset 0 0 0 .12rem #ffffffa8}.christianity-card-render--board.is-leader{grid-template-rows:auto minmax(2.35rem,1fr) auto;background:linear-gradient(180deg,#fffffffa,#eff6fff5),radial-gradient(circle at 50% 22%,rgba(37,99,235,.18),transparent 48%),radial-gradient(circle at 18% 0%,rgba(214,162,29,.14),transparent 44%)}.christianity-card-render--compact{grid-template-rows:minmax(1.4rem,auto) minmax(0,1fr) minmax(1.95rem,auto);gap:.26rem;padding:.42rem}.christianity-card-render--baby,.christianity-card-render--hand,.christianity-card-render--table{grid-template-rows:1.36rem minmax(0,1fr) 2.02rem}.christianity-card-render--baby{grid-template-rows:1.34rem minmax(0,1.32fr) 1.72rem}.christianity-card-render--compact.christianity-card-render--template-genesis-classic{--christianity-frame-width: .2rem;padding:calc(.42rem + var(--christianity-frame-width))}.christianity-card-render--compact.christianity-card-render--template-genesis-classic:before{border-radius:.42rem}.christianity-card-render__header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.34rem;align-items:center;min-width:0}.christianity-card-render__type-icon,.christianity-card-render__metric{display:grid;place-items:center;border-radius:999px}.christianity-card-render__type-icon{width:1.2rem;height:1.2rem;background:#24304414}.christianity-card-render__type-icon img{width:.82rem;height:.82rem;object-fit:contain}.christianity-card-render__header strong{min-width:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.86rem,2.5vw,1.06rem);line-height:1.04}.christianity-card-render--compact .christianity-card-render__header{gap:.24rem;align-items:center;min-height:1.28rem}.christianity-card-render--compact .christianity-card-render__type-icon{width:1rem;height:1rem}.christianity-card-render--compact .christianity-card-render__type-icon img{width:.7rem;height:.7rem}.christianity-card-render--compact .christianity-card-render__header strong{font-size:clamp(.72rem,2vw,.92rem);line-height:1}.christianity-card-render--list .christianity-card-render__header{gap:.22rem}.christianity-card-render--list .christianity-card-render__type-icon{width:.9rem;height:.9rem}.christianity-card-render--list .christianity-card-render__type-icon img{width:.62rem;height:.62rem}.christianity-card-render--list .christianity-card-render__header strong{font-size:.72rem;line-height:1}.christianity-card-render--board .christianity-card-render__header{gap:.2rem}.christianity-card-render--board .christianity-card-render__type-icon{width:1rem;height:1rem}.christianity-card-render--board .christianity-card-render__type-icon img{width:.68rem;height:.68rem}.christianity-card-render--board .christianity-card-render__header strong{display:-webkit-box;overflow-wrap:anywhere;text-overflow:clip;white-space:normal;font-size:clamp(.7rem,1.65vw,.84rem);line-height:.98;-webkit-box-orient:vertical;-webkit-line-clamp:2}.christianity-card-render--board.is-leader .christianity-card-render__header strong{font-size:clamp(.72rem,1.7vw,.86rem)}.christianity-card-render--full .christianity-card-render__type-icon{width:1.32rem;height:1.32rem}.christianity-card-render--full .christianity-card-render__type-icon img{width:.84rem;height:.84rem}.christianity-card-render--full .christianity-card-render__header strong{display:-webkit-box;overflow-wrap:anywhere;text-overflow:clip;white-space:normal;font-size:clamp(1.12rem,4.3vw,1.58rem);line-height:.98;-webkit-box-orient:vertical;-webkit-line-clamp:2}.christianity-card-render__metric{min-width:1.52rem;height:1.52rem;padding:0 .24rem;background:#ffd91a;color:#243044;font-size:.86rem;font-weight:900;line-height:1;box-shadow:inset 0 -.08rem #52401c2e}.christianity-card-render--compact .christianity-card-render__metric{min-width:1.28rem;height:1.28rem;padding:0 .2rem;font-size:.72rem}.christianity-card-render--list .christianity-card-render__metric{min-width:1.2rem;height:1.2rem;padding:0 .18rem;font-size:.7rem}.christianity-card-render--board .christianity-card-render__metric{min-width:1.25rem;height:1.25rem;padding:0 .18rem;font-size:.72rem}.christianity-card-render--full .christianity-card-render__metric{min-width:1.94rem;height:1.94rem;padding:0 .34rem;font-size:1.08rem;box-shadow:inset 0 -.1rem #52401c33,0 .16rem .4rem #102a431f}.christianity-card-render__metric.is-pips,.christianity-card-render__stats .is-pips{grid-auto-flow:column;gap:.16rem;min-width:auto;padding:0 .28rem}.christianity-card-render__metric.is-pips{height:auto;padding:0;background:transparent;box-shadow:none}.christianity-card-render__metric.is-cost-symbol{min-width:1.52rem;width:1.52rem;padding:0}.christianity-card-render--compact .christianity-card-render__metric.is-cost-symbol{min-width:1.28rem;width:1.28rem}.christianity-card-render--list .christianity-card-render__metric.is-cost-symbol{min-width:1.2rem;width:1.2rem}.christianity-card-render--full .christianity-card-render__metric.is-cost-symbol{min-width:1.72rem;width:1.72rem}.christianity-card-render__metric.is-cost-symbol i{display:none}.christianity-card-render__metric i,.christianity-card-render__stats i{display:block;width:.72rem;height:.72rem;border-radius:999px;background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.9) 0 .12rem,transparent .13rem),#ffd91a;box-shadow:inset 0 -.08rem #52401c2e,0 .12rem .24rem #102a431a}.christianity-card-render--compact .christianity-card-render__metric i,.christianity-card-render--compact .christianity-card-render__stats i{width:.5rem;height:.5rem}.christianity-card-render--list .christianity-card-render__metric i,.christianity-card-render--list .christianity-card-render__stats i{width:.48rem;height:.48rem}.christianity-card-render__art{position:relative;display:grid;place-items:center;min-height:0;overflow:hidden;border-radius:.36rem;background:linear-gradient(135deg,#5f6f2a2e,#d6a21d24),radial-gradient(circle at 50% 18%,rgba(255,255,255,.72),transparent 48%),#dbe7ef;box-shadow:inset 0 0 0 1px #24304414}.christianity-card-render__art img{width:100%;height:100%;object-fit:cover;object-position:center 45%;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.christianity-card-render__art>span{max-width:78%;overflow:hidden;color:#2430447a;font-size:clamp(.82rem,2.2vw,1.05rem);font-weight:900;line-height:1.02;text-align:center;text-overflow:ellipsis}.christianity-card-render--list .christianity-card-render__art>span{max-width:82%;font-size:.7rem}.christianity-card-render--board .christianity-card-render__art>span{max-width:82%;display:-webkit-box;overflow-wrap:anywhere;text-overflow:clip;white-space:normal;font-size:clamp(.64rem,1.6vw,.78rem);-webkit-box-orient:vertical;-webkit-line-clamp:2}.christianity-card-render--full .christianity-card-render__art>span{font-size:clamp(1.1rem,5vw,1.8rem)}.christianity-card-render__art small{position:absolute;right:0;bottom:0;max-width:78%;padding:.1rem .34rem;overflow:hidden;border-radius:999px 0 .26rem 999px;background:#ffffffe6;color:#1f2933a8;font-size:.48rem;font-style:italic;font-weight:900;line-height:1;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.christianity-card-render--compact .christianity-card-render__art{border-radius:.3rem}.christianity-card-render--compact .christianity-card-render__art>span{max-width:76%;display:-webkit-box;font-size:clamp(.66rem,1.9vw,.84rem);-webkit-box-orient:vertical;-webkit-line-clamp:2}.christianity-card-render--compact .christianity-card-render__art small{bottom:.22rem;max-width:72%;padding:.08rem .28rem;font-size:.42rem}.christianity-card-render--list .christianity-card-render__art small{bottom:.2rem;padding:.08rem .26rem;font-size:.42rem}.christianity-card-render--board .christianity-card-render__art{border-radius:.3rem}.christianity-card-render--board .christianity-card-render__art small{bottom:.2rem;max-width:76%;padding:.08rem .26rem;font-size:.4rem}.christianity-card-render--board.is-leader .christianity-card-render__art{min-height:2.15rem;background:linear-gradient(135deg,#2563eb29,#d6a21d29),radial-gradient(circle at 50% 18%,rgba(255,255,255,.78),transparent 48%),#e7eef8}.christianity-card-render--full .christianity-card-render__art{aspect-ratio:1.34 / 1;border-radius:.34rem;box-shadow:inset 0 0 0 1px #2430441a,0 .16rem .36rem #102a4314}.christianity-card-render--full .christianity-card-render__art small{right:0;bottom:.34rem;min-width:4.1rem;padding:.13rem .46rem .12rem;border:1px solid rgba(36,48,68,.08);border-right:0;border-radius:999px 0 0 999px;background:linear-gradient(180deg,#fffffff0,#eff2f6e6);box-shadow:0 .12rem .28rem #102a431a;color:#1f2933ad;font-size:.46rem;letter-spacing:.02em;text-align:center}.christianity-card-render__verse,.christianity-card-render__effect{display:grid;gap:.32rem}.christianity-card-render__verse{color:#171923;font-family:Georgia,Times New Roman,serif;font-size:clamp(.58rem,1.92vw,.66rem)}.christianity-card-render--full .christianity-card-render__verse{align-content:start;padding:.3rem .2rem .14rem;border:0;border-radius:0;background:transparent;box-shadow:none;text-align:left;font-size:clamp(.52rem,1.72vw,.6rem)}.christianity-card-render__verse p,.christianity-card-render__effect p{margin:0;line-height:1.18}.christianity-card-render--full .christianity-card-render__verse p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4}.christianity-card-render--full.has-long-verse .christianity-card-render__verse{font-size:clamp(.48rem,1.6vw,.56rem)}.christianity-card-render--full.has-long-verse .christianity-card-render__verse p{-webkit-line-clamp:5}.christianity-card-render__verse strong{font-family:inherit;font-size:.66rem;font-weight:900}.christianity-card-render__verse-ref{display:block;margin-top:.18rem;font-family:Georgia,Times New Roman,serif;font-size:.56rem;font-weight:900;color:#171923d9;letter-spacing:.01em}.christianity-card-render__effect{position:relative;align-content:center;min-height:1.45rem;padding:.24rem;overflow:hidden;border-radius:.34rem;background:radial-gradient(circle at 50% 70%,rgba(36,48,68,.06),transparent 44%),#ffffffdb}.christianity-card-render--compact .christianity-card-render__effect{align-content:end;box-sizing:border-box;height:1.95rem;min-height:1.95rem;padding:.2rem .24rem;border-radius:.3rem;background:radial-gradient(circle at 50% 80%,rgba(36,48,68,.05),transparent 45%),linear-gradient(180deg,#ffffffd1,#fffffff0)}.christianity-card-render--list .christianity-card-render__effect{min-height:1.26rem;padding:.16rem;border-radius:.28rem}.christianity-card-render--board .christianity-card-render__effect{align-content:end;min-height:1.45rem;padding:.16rem;border-radius:.28rem;background:radial-gradient(circle at 50% 80%,rgba(36,48,68,.05),transparent 45%),linear-gradient(180deg,#ffffffd6,#fffffff5)}.christianity-card-render__edition-watermark{position:absolute;top:50%;left:50%;z-index:0;width:min(42%,4.8rem);max-width:none;opacity:.055;pointer-events:none;transform:translate(-50%,-50%)}.christianity-card-render--compact .christianity-card-render__edition-watermark{width:min(36%,2.6rem);opacity:.045}.christianity-card-render--full .christianity-card-render__effect{align-content:start;min-height:5.9rem;padding:.6rem .72rem .48rem;border:none;border-radius:.56rem;background:#2430440b;box-shadow:none;text-align:left;gap:.36rem}.christianity-card-render--full .christianity-card-render__edition-watermark{width:min(42%,5.2rem);opacity:.1}.christianity-card-render__stats{position:relative;z-index:1;display:flex;gap:.65rem;min-height:1rem}.christianity-card-render--compact .christianity-card-render__stats{align-items:end;min-height:1rem}.christianity-card-render__stats strong{justify-self:end;align-self:end;margin-left:auto;padding:.12rem .32rem;border-radius:999px;background:#edf2f7;font-size:clamp(.66rem,2vw,.82rem);line-height:1.05}.christianity-card-render--compact .christianity-card-render__stats strong{padding:.1rem .28rem;font-size:clamp(.64rem,1.9vw,.78rem)}.christianity-card-render--list .christianity-card-render__stats{min-height:.95rem}.christianity-card-render--list .christianity-card-render__stats strong{padding:.1rem .26rem;font-size:.66rem}.christianity-card-render--board .christianity-card-render__stats strong{padding:.1rem .28rem;background:#edf2f7f5;font-size:clamp(.66rem,1.9vw,.8rem);font-weight:950}.christianity-card-render--board.is-leader .christianity-card-render__stats strong{margin-right:auto;margin-left:auto;padding:.16rem .42rem;background:#102a43;color:#fff;font-size:clamp(.82rem,2.2vw,1.05rem);letter-spacing:0;box-shadow:0 .28rem .72rem #102a432e}.christianity-card-render--full.is-leader .christianity-card-render__effect{min-height:6.8rem}.christianity-card-render--full.is-rules-only .christianity-card-render__effect{align-content:center}.christianity-card-render--full .christianity-card-render__text{gap:.28rem}.christianity-card-render__text{position:relative;z-index:1;display:grid;gap:.18rem}.christianity-card-render__text strong{font-size:.78rem;line-height:1.05}.christianity-card-render__text p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:4;font-size:clamp(.7rem,2.32vw,.82rem);line-height:1.18}.christianity-card-render--full.has-long-effect .christianity-card-render__text p{-webkit-line-clamp:4;font-size:clamp(.64rem,2.05vw,.74rem);line-height:1.16}.christianity-card-render--full.is-rules-only .christianity-card-render__text p{font-size:clamp(.82rem,2.6vw,.96rem)}.christianity-card-render__rarity{position:absolute;top:.62rem;right:.62rem;z-index:1;width:.5rem;height:.5rem;border-radius:999px;border:1px solid rgba(255,255,255,.8)}.christianity-card-render--full .christianity-card-render__rarity{width:.52rem;height:.52rem;z-index:1}.christianity-card-render__rarity.is-normal{background:#3a80e9}.christianity-card-render__rarity.is-good{background:#4ee93a}.christianity-card-render__rarity.is-very-good{background:#e9ce3a}.christianity-card-render--full .christianity-card-render__stats{position:relative;z-index:1;align-items:center;min-height:0}.christianity-card-render--full .christianity-card-render__stats strong{margin-left:0;padding:0;border-radius:0;background:none;font-size:1.05rem;font-weight:900;box-shadow:none;line-height:1;color:var(--christianity-theme-ink, #171923);letter-spacing:-.01em}.christianity-card-render--full.is-character .christianity-card-render__stats strong{font-size:1.12rem}.christianity-card-render--full.is-leader .christianity-card-render__stats{position:relative;right:auto;bottom:auto;left:auto;min-height:0}.christianity-card-render--full .christianity-card-render__stats .christianity-card-render__rarity{position:absolute;top:.52rem;right:.52rem;margin-left:0;flex-shrink:0;z-index:2}.christianity-card-render--full.is-leader .christianity-card-render__leader-life{color:#1f2933e6;font-size:1.4rem;line-height:1;background:transparent;box-shadow:none;padding:0;border-radius:0;margin-left:0}.christianity-card-render__footer{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:.2rem;align-items:center;color:#1f2933ad;font-size:.34rem;line-height:1;text-transform:uppercase}.christianity-card-render--full .christianity-card-render__footer{gap:.2rem;color:#1f293394;font-size:.32rem;font-weight:700}.christianity-card-render__footer span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.christianity-card-render__footer-badge{display:inline-block;padding:.06rem .2rem;border-radius:.2rem;background:#24304424;font-weight:900;letter-spacing:.04em;overflow:visible}:host-context(.dark),:host-context(.ion-palette-dark),:host-context(html.ion-palette-dark),:host-context(body.dark),:host-context([data-theme=\"dark\"]){--christianity-card-back: linear-gradient(135deg, rgba(147, 197, 253, .2), rgba(15, 23, 42, .08)), repeating-linear-gradient(45deg, #1e3a5f 0 .33rem, #0f172a .33rem .66rem);color-scheme:dark}:host-context(.dark) .christianity-card-render,:host-context(.ion-palette-dark) .christianity-card-render,:host-context(html.ion-palette-dark) .christianity-card-render,:host-context(body.dark) .christianity-card-render,:host-context([data-theme=\"dark\"]) .christianity-card-render{box-shadow:0 .5rem 1.25rem #0000003d,inset 0 0 0 .18rem #ffffff61}:host-context(.dark) .christianity-card-render--back,:host-context(.ion-palette-dark) .christianity-card-render--back,:host-context(html.ion-palette-dark) .christianity-card-render--back,:host-context(body.dark) .christianity-card-render--back,:host-context([data-theme=\"dark\"]) .christianity-card-render--back{border-color:#93c5fd38;box-shadow:0 .8rem 1.55rem #00000052}:host-context(.dark) .christianity-card-render--back:before,:host-context(.ion-palette-dark) .christianity-card-render--back:before,:host-context(html.ion-palette-dark) .christianity-card-render--back:before,:host-context(body.dark) .christianity-card-render--back:before,:host-context([data-theme=\"dark\"]) .christianity-card-render--back:before{border-color:#93c5fd29;background:linear-gradient(180deg,#93c5fd24,#0f172a0a)}:host-context(.dark) .christianity-card-render--list,:host-context(.ion-palette-dark) .christianity-card-render--list,:host-context(html.ion-palette-dark) .christianity-card-render--list,:host-context(body.dark) .christianity-card-render--list,:host-context([data-theme=\"dark\"]) .christianity-card-render--list{box-shadow:0 .45rem 1rem #00000042,inset 0 0 0 .14rem #ffffff7a}:host-context(.dark) .christianity-card-render__type-icon,:host-context(.ion-palette-dark) .christianity-card-render__type-icon,:host-context(html.ion-palette-dark) .christianity-card-render__type-icon,:host-context(body.dark) .christianity-card-render__type-icon,:host-context([data-theme=\"dark\"]) .christianity-card-render__type-icon,:host-context(.dark) .christianity-card-render__stats strong,:host-context(.ion-palette-dark) .christianity-card-render__stats strong,:host-context(html.ion-palette-dark) .christianity-card-render__stats strong,:host-context(body.dark) .christianity-card-render__stats strong,:host-context([data-theme=\"dark\"]) .christianity-card-render__stats strong{background:#e2e8f0db;color:#172033}@media (min-width: 52rem){.christianity-card-render--full{grid-template-rows:auto minmax(15.8rem,auto) minmax(4.6rem,auto) minmax(8.8rem,1fr) auto;gap:.54rem;min-height:0;padding:1.05rem}.christianity-card-render--full.christianity-card-render--template-genesis-classic{--christianity-frame-width: .38rem;padding:calc(1.05rem + var(--christianity-frame-width))}.christianity-card-render--full .christianity-card-render__type-icon{width:1.6rem;height:1.6rem}.christianity-card-render--full .christianity-card-render__type-icon img{width:1rem;height:1rem}.christianity-card-render--full .christianity-card-render__header strong{font-size:clamp(1.34rem,4.5vw,2.28rem)}.christianity-card-render--full .christianity-card-render__verse{padding:.38rem .24rem .16rem;font-size:clamp(.6rem,1.5vw,.72rem)}.christianity-card-render--full .christianity-card-render__effect{min-height:8.8rem;padding:.9rem 1rem .48rem}.christianity-card-render--full .christianity-card-render__stats strong{font-size:.88rem}.christianity-card-render--full.is-leader .christianity-card-render__leader-life{font-size:1.8rem}.christianity-card-render--full .christianity-card-render__stats,.christianity-card-render--full.is-leader .christianity-card-render__stats{bottom:1.8rem}.christianity-card-render--full .christianity-card-render__text strong{font-size:.86rem}.christianity-card-render--full .christianity-card-render__text p{font-size:clamp(1rem,2.12vw,1.22rem)}}\n"] }]
|
|
502
|
-
}] });
|
|
503
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hyaXN0aWFuaXR5LWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9taW5pLWdhbWVzL2NocmlzdGlhbml0eS1jYXJkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBcWdEM0QsTUFBTSxPQUFPLHlCQUF5QjtJQTU5Q3RDO1FBNjlDVyxTQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBK0IsQ0FBQztRQUNyRCxZQUFPLEdBQUcsS0FBSyxDQUFnQyxPQUFPLENBQUMsQ0FBQztRQUVqRSxvRkFBb0Y7UUFDbkUsZUFBVSxHQUErQztZQUN4RSxNQUFNLEVBQUUsU0FBUztZQUNqQixTQUFTLEVBQUUsU0FBUztZQUNwQixRQUFRLEVBQUUsU0FBUztZQUNuQixNQUFNLEVBQUUsU0FBUztZQUNqQixNQUFNLEVBQUUsU0FBUztZQUNqQixJQUFJLEVBQUUsU0FBUztZQUNmLEtBQUssRUFBRSxTQUFTO1lBQ2hCLEtBQUssRUFBRSxTQUFTO1NBQ2pCLENBQUM7UUFDaUIsY0FBUyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxTQUFTLENBQUMsQ0FBQztRQUU5RixrRkFBa0Y7UUFDL0QsYUFBUSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDMUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQy9CLE9BQU8sT0FBTyxLQUFLLE9BQU8sSUFBSSxPQUFPLEtBQUssTUFBTSxJQUFJLE9BQU8sS0FBSyxNQUFNLElBQUksT0FBTyxLQUFLLE9BQU8sQ0FBQztRQUNoRyxDQUFDLENBQUMsQ0FBQztRQUVILHFIQUFxSDtRQUNsRyxlQUFVLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUM1QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDO1lBQ2pDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBQUM7UUFFZ0Isd0JBQW1CLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztRQUMxRSxrQkFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsYUFBYSxJQUFJLGlCQUFpQixDQUFDLENBQUM7UUFDL0UsNkJBQXdCLEdBQUcsUUFBUSxDQUNwRCxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEtBQUssaUJBQWlCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxLQUFLLHVCQUF1QixDQUNyRyxDQUFDO1FBQ2lCLGdCQUFXLEdBQUcsUUFBUSxDQUN2QyxHQUFHLEVBQUUsQ0FBQyxtQ0FBbUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FDL0UsQ0FBQztRQUNpQixpQkFBWSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwQyxpQkFBWSxHQUFHLFFBQVEsQ0FBb0UsR0FBRyxFQUFFO1lBQ2pILE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN6QixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssUUFBUTtnQkFBRSxPQUFPLElBQUksQ0FBQztZQUN4Qyx1RkFBdUY7WUFDdkYsMEVBQTBFO1lBQzFFLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVO2dCQUFFLE9BQU8sSUFBSSxDQUFDO1lBQzFDLElBQUksT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVE7Z0JBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMvRSxPQUFPLElBQUksQ0FBQztRQUNkLENBQUMsQ0FBQyxDQUFDO1FBQ2dCLGtCQUFhLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUMvQyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFdBQVc7Z0JBQUUsT0FBTyxFQUFFLENBQUM7WUFDekMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUNyRSxDQUFDLENBQUMsQ0FBQztRQUNnQixtQkFBYyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDaEQsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ3pCLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLENBQUM7WUFDakQsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQztZQUMvQyxPQUFPLEdBQUcsT0FBTyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO1FBQ2dCLG9CQUFlLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNqRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekIsT0FBTyxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUM7UUFDeEQsQ0FBQyxDQUFDLENBQUM7UUFDZ0Isb0JBQWUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ2pELE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUM7WUFDOUIsT0FBTyxDQUNMLElBQUksS0FBSyxRQUFRO2dCQUNqQixJQUFJLEtBQUssT0FBTztnQkFDaEIsSUFBSSxLQUFLLFVBQVU7Z0JBQ25CLElBQUksS0FBSyxPQUFPO2dCQUNoQixJQUFJLEtBQUssTUFBTTtnQkFDZixJQUFJLEtBQUssUUFBUSxDQUNsQixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7S0FrQko7SUFoQlcsWUFBWSxDQUFDLEtBQXlCO1FBQzlDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQztZQUFFLE9BQU8sRUFBRSxDQUFDO1FBQ3JELE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUFFUyxVQUFVLENBQUMsSUFBd0IsRUFBRSxTQUFpQjtRQUM5RCxPQUFPLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLE1BQU0sSUFBSSxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUM7SUFDaEQsQ0FBQztJQUVPLFFBQVEsQ0FBQyxJQUFnQztRQUMvQyxJQUFJLElBQUksS0FBSyxXQUFXO1lBQUUsT0FBTyxXQUFXLENBQUM7UUFDN0MsSUFBSSxJQUFJLEtBQUssVUFBVTtZQUFFLE9BQU8sVUFBVSxDQUFDO1FBQzNDLElBQUksSUFBSSxLQUFLLFFBQVE7WUFBRSxPQUFPLFFBQVEsQ0FBQztRQUN2QyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7K0dBekZVLHlCQUF5QjttR0FBekIseUJBQXlCLCtVQXo5QzFCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJNVDs7NEZBOHdDVSx5QkFBeUI7a0JBNTlDckMsU0FBUzsrQkFDRSx1QkFBdUIsY0FDckIsSUFBSSxZQUNOOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJNVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCB0eXBlIENocmlzdGlhbml0eUNhcmRSZW5kZXJUeXBlID1cbiAgfCAnbGVhZGVyJ1xuICB8ICdjaGFyYWN0ZXInXG4gIHwgJ29mZmVyaW5nJ1xuICB8ICd3aXNkb20nXG4gIHwgJ2FjdGlvbidcbiAgfCAndG9vbCdcbiAgfCAncGxhY2UnXG4gIHwgJ2V2ZW50JztcblxuZXhwb3J0IHR5cGUgQ2hyaXN0aWFuaXR5Q2FyZFJlbmRlclZhcmlhbnQgPSAnZnVsbCcgfCAnYmFieScgfCAndGFibGUnIHwgJ2hhbmQnIHwgJ2xpc3QnIHwgJ2JhY2snIHwgJ2JvYXJkJztcblxuZXhwb3J0IGludGVyZmFjZSBDaHJpc3RpYW5pdHlDYXJkUmVuZGVyTW9kZWwge1xuICBpZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIHR5cGU6IENocmlzdGlhbml0eUNhcmRSZW5kZXJUeXBlO1xuICB0eXBlTGFiZWw6IHN0cmluZztcbiAgY29zdD86IG51bWJlcjtcbiAgb2ZmZXJpbmdWYWx1ZT86IG51bWJlcjtcbiAgYXR0YWNrPzogbnVtYmVyO1xuICBsaWZlPzogbnVtYmVyO1xuICBjdXJyZW50SHA/OiBudW1iZXI7XG4gIG1heEhwPzogbnVtYmVyO1xuICBhYmlsaXR5TmFtZT86IHN0cmluZztcbiAgYWJpbGl0eVRleHQ/OiBzdHJpbmc7XG4gIHZlcnNlVGV4dD86IHN0cmluZztcbiAgc2NyaXB0dXJlPzogc3RyaW5nO1xuICBlZGl0aW9uPzogc3RyaW5nO1xuICBjb2xsZWN0b3JOdW1iZXI/OiBzdHJpbmc7XG4gIGVkaXRpb25JY29uPzogc3RyaW5nO1xuICB5ZWFyPzogc3RyaW5nO1xuICBhdXRob3I/OiBzdHJpbmc7XG4gIHJhcml0eT86ICdub3JtYWwnIHwgJ2dvb2QnIHwgJ3ZlcnktZ29vZCcgfCAndW5jb21tb24nIHwgJ3JhcmUnIHwgJ2xlZ2VuZGFyeSc7XG4gIGltYWdlVXJsPzogc3RyaW5nO1xuICBmcm9udFRlbXBsYXRlPzogc3RyaW5nO1xuICBzdGF0dXNUZXh0Pzogc3RyaW5nO1xuICBiaWJsZUNyZWRpdD86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWNocmlzdGlhbml0eS1jYXJkJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgdGVtcGxhdGU6IGBcbiAgICBAaWYgKHZhcmlhbnQoKSA9PT0gJ2JhY2snKSB7XG4gICAgICA8YXJ0aWNsZSBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlciBjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJhY2tcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgPHNwYW4+PC9zcGFuPlxuICAgICAgPC9hcnRpY2xlPlxuICAgIH0gQGVsc2UgaWYgKGlzSW5QbGF5KCkpIHtcbiAgICAgIDxhcnRpY2xlXG4gICAgICAgIGNsYXNzPVwiY2NcIlxuICAgICAgICBbY2xhc3MuY2MtLWxlYWRlcl09XCJjYXJkKCkudHlwZSA9PT0gJ2xlYWRlcidcIlxuICAgICAgICBbY2xhc3MuY2MtLWNoYXJhY3Rlcl09XCJjYXJkKCkudHlwZSA9PT0gJ2NoYXJhY3RlcidcIlxuICAgICAgICBbY2xhc3MuY2MtLWJvYXJkXT1cInZhcmlhbnQoKSA9PT0gJ2JvYXJkJ1wiXG4gICAgICAgIFtzdHlsZS4tLWN0XT1cInR5cGVDb2xvcigpXCJcbiAgICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNjX19hcnRcIiBbY2xhc3MuY2NfX2FydC0tcmVhbF09XCJoYXNSZWFsQXJ0KClcIj5cbiAgICAgICAgICBAaWYgKGhhc1JlYWxBcnQoKSkge1xuICAgICAgICAgICAgPGltZyBjbGFzcz1cImNjX19yZWFsXCIgW3NyY109XCJjYXJkKCkuaW1hZ2VVcmxcIiBbYWx0XT1cImNhcmQoKS5uYW1lXCIgZHJhZ2dhYmxlPVwiZmFsc2VcIiAvPlxuICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgPGltZyBjbGFzcz1cImNjX193bVwiIFtzcmNdPVwidHlwZUljb25VcmwoKVwiIGFsdD1cIlwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8IS0tIFRpcG8gKyBjb3N0ZSBqdW50b3MgYXJyaWJhLWl6cXVpZXJkYTogZW4gbGEgbWFubyBlbiBhYmFuaWNvIHNvbG8gc2UgdmUgZXNhIGVzcXVpbmEuIC0tPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2NfX2Nvcm5lclwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2NfX3R5cGVcIj48aW1nIFtzcmNdPVwidHlwZUljb25VcmwoKVwiIGFsdD1cIlwiIC8+PC9zcGFuPlxuICAgICAgICAgIEBpZiAoaGVhZGVyTWV0cmljKCk7IGFzIG1ldHJpYykge1xuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjY19fY29zdFwiIFtjbGFzcy5jY19fY29zdC0tcGlwc109XCJtZXRyaWMua2luZCA9PT0gJ3BpcHMnXCI+XG4gICAgICAgICAgICAgIEBpZiAobWV0cmljLmtpbmQgPT09ICdwaXBzJykge1xuICAgICAgICAgICAgICAgIEBmb3IgKF8gb2Ygb2ZmZXJpbmdQaXBzKG1ldHJpYy52YWx1ZSk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgPGk+PC9pPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfSBAZWxzZSBpZiAobWV0cmljLmtpbmQgPT09ICdjb3N0LXN5bWJvbCcpIHtcbiAgICAgICAgICAgICAgICA8aT48L2k+XG4gICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIHt7IG1ldHJpYy52YWx1ZSB9fVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiY2NfX2h1ZFwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2NfX25hbWVcIj57eyBjYXJkKCkubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgICBAaWYgKGNhcmQoKS50eXBlID09PSAnY2hhcmFjdGVyJykge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNjX19zdGF0c1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNjX19hdGtcIj5cbiAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwiY2NfX2ljb1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTQgNWw1LTItMiA1LTggOC0zLTN6XCIgLz5cbiAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNNiAxM2wtMyAzIDIgMiAzLTNcIiAvPjwvc3ZnXG4gICAgICAgICAgICAgICAgPnt7IGNhcmQoKS5hdHRhY2sgPz8gMCB9fVxuICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2NfX2xpZmVcIj5cbiAgICAgICAgICAgICAgICA8c3ZnIGNsYXNzPVwiY2NfX2ljb1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICAgICAgICAgIDxwYXRoIGQ9XCJNMTIgMjBzLTYtNC42LTYtOWE0IDQgMCAwMTgtMSA0IDQgMCAwMTggMWMwIDQuNC02IDktNiA5elwiIC8+PC9zdmdcbiAgICAgICAgICAgICAgICA+e3sgY2FyZCgpLmN1cnJlbnRIcCA/PyBjYXJkKCkubGlmZSA/PyAwIH19XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIH0gQGVsc2UgaWYgKGNhcmQoKS50eXBlID09PSAnbGVhZGVyJykge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNjX19zdGF0c1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNjX19saWZlXCI+XG4gICAgICAgICAgICAgICAgPHN2ZyBjbGFzcz1cImNjX19pY29cIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4gICAgICAgICAgICAgICAgICA8cGF0aCBkPVwiTTEyIDIwcy02LTQuNi02LTlhNCA0IDAgMDE4LTEgNCA0IDAgMDE4IDFjMCA0LjQtNiA5LTYgOXpcIiAvPjwvc3ZnXG4gICAgICAgICAgICAgICAgPnt7IGxlYWRlckxpZmVUZXh0KCkgfX1cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzPVwiY2NfX2dlbVwiXG4gICAgICAgICAgW2NsYXNzLmlzLW5vcm1hbF09XCIhY2FyZCgpLnJhcml0eSB8fCBjYXJkKCkucmFyaXR5ID09PSAnbm9ybWFsJ1wiXG4gICAgICAgICAgW2NsYXNzLmlzLWdvb2RdPVwiY2FyZCgpLnJhcml0eSA9PT0gJ2dvb2QnIHx8IGNhcmQoKS5yYXJpdHkgPT09ICd1bmNvbW1vbidcIlxuICAgICAgICAgIFtjbGFzcy5pcy12ZXJ5LWdvb2RdPVwiXG4gICAgICAgICAgICBjYXJkKCkucmFyaXR5ID09PSAndmVyeS1nb29kJyB8fCBjYXJkKCkucmFyaXR5ID09PSAncmFyZScgfHwgY2FyZCgpLnJhcml0eSA9PT0gJ2xlZ2VuZGFyeSdcbiAgICAgICAgICBcIlxuICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgID48L3NwYW4+XG4gICAgICA8L2FydGljbGU+XG4gICAgfSBAZWxzZSB7XG4gICAgICA8YXJ0aWNsZVxuICAgICAgICBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlclwiXG4gICAgICAgIFtjbGFzcy5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGxdPVwidmFyaWFudCgpID09PSAnZnVsbCdcIlxuICAgICAgICBbY2xhc3MuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1jb21wYWN0XT1cInZhcmlhbnQoKSAhPT0gJ2Z1bGwnXCJcbiAgICAgICAgW2NsYXNzLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFieV09XCJ2YXJpYW50KCkgPT09ICdiYWJ5J1wiXG4gICAgICAgIFtjbGFzcy5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRhYmxlXT1cInZhcmlhbnQoKSA9PT0gJ3RhYmxlJ1wiXG4gICAgICAgIFtjbGFzcy5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWhhbmRdPVwidmFyaWFudCgpID09PSAnaGFuZCdcIlxuICAgICAgICBbY2xhc3MuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0XT1cInZhcmlhbnQoKSA9PT0gJ2xpc3QnXCJcbiAgICAgICAgW2NsYXNzLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYm9hcmRdPVwidmFyaWFudCgpID09PSAnYm9hcmQnXCJcbiAgICAgICAgW2NsYXNzLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGVtcGxhdGUtZ2VuZXNpcy1jbGFzc2ljXT1cImlzR2VuZXNpc0NsYXNzaWNUZW1wbGF0ZSgpXCJcbiAgICAgICAgW2NsYXNzLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGVtcGxhdGUtZ2VuZXNpcy1mdWxsLWFydF09XCJmcm9udFRlbXBsYXRlKCkgPT09ICdnZW5lc2lzLWZ1bGwtYXJ0J1wiXG4gICAgICAgIFtjbGFzcy5pcy1sZWFkZXJdPVwiY2FyZCgpLnR5cGUgPT09ICdsZWFkZXInXCJcbiAgICAgICAgW2NsYXNzLmlzLWNoYXJhY3Rlcl09XCJjYXJkKCkudHlwZSA9PT0gJ2NoYXJhY3RlcidcIlxuICAgICAgICBbY2xhc3MuaXMtb2ZmZXJpbmddPVwiY2FyZCgpLnR5cGUgPT09ICdvZmZlcmluZydcIlxuICAgICAgICBbY2xhc3MuaXMtcnVsZXMtb25seV09XCJpc1J1bGVzT25seUNhcmQoKVwiXG4gICAgICAgIFtjbGFzcy5oYXMtbG9uZy12ZXJzZV09XCJpc0xvbmdUZXh0KGNhcmQoKS52ZXJzZVRleHQsIDE1MClcIlxuICAgICAgICBbY2xhc3MuaGFzLWxvbmctZWZmZWN0XT1cImlzTG9uZ1RleHQoY2FyZCgpLmFiaWxpdHlUZXh0IHx8IGNhcmQoKS5zdGF0dXNUZXh0LCAxMjApXCJcbiAgICAgID5cbiAgICAgICAgPGhlYWRlciBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9faGVhZGVyXCI+XG4gICAgICAgICAgQGlmIChzaG93VHlwZUljb24oKSkge1xuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvblwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICAgICAgICA8aW1nIFtzcmNdPVwidHlwZUljb25VcmwoKVwiIGFsdD1cIlwiIC8+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxzdHJvbmc+e3sgY2FyZCgpLm5hbWUgfX08L3N0cm9uZz5cbiAgICAgICAgICBAaWYgKGhlYWRlck1ldHJpYygpOyBhcyBtZXRyaWMpIHtcbiAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWNcIlxuICAgICAgICAgICAgICBbY2xhc3MuaXMtcGlwc109XCJtZXRyaWMua2luZCA9PT0gJ3BpcHMnXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmlzLWNvc3Qtc3ltYm9sXT1cIm1ldHJpYy5raW5kID09PSAnY29zdC1zeW1ib2wnXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmlzLW9mZmVyaW5nLXZhbHVlXT1cImNhcmQoKS50eXBlID09PSAnb2ZmZXJpbmcnXCJcbiAgICAgICAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgQGlmIChtZXRyaWMua2luZCA9PT0gJ3BpcHMnKSB7XG4gICAgICAgICAgICAgICAgQGZvciAoXyBvZiBvZmZlcmluZ1BpcHMobWV0cmljLnZhbHVlKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICA8aSBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9IEBlbHNlIGlmIChtZXRyaWMua2luZCA9PT0gJ2Nvc3Qtc3ltYm9sJykge1xuICAgICAgICAgICAgICAgIDxpIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cbiAgICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgICAge3sgbWV0cmljLnZhbHVlIH19XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICB9XG4gICAgICAgIDwvaGVhZGVyPlxuXG4gICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19hcnRcIiBbY2xhc3MuaGFzLWltYWdlXT1cImNhcmQoKS5pbWFnZVVybFwiPlxuICAgICAgICAgIEBpZiAoY2FyZCgpLmltYWdlVXJsKSB7XG4gICAgICAgICAgICA8aW1nIFtzcmNdPVwiY2FyZCgpLmltYWdlVXJsXCIgW2FsdF09XCJjYXJkKCkubmFtZVwiIGRyYWdnYWJsZT1cImZhbHNlXCIgLz5cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIDxzcGFuPnt7IGNhcmQoKS5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgKHZhcmlhbnQoKSAhPT0gJ2JvYXJkJyAmJiB2YXJpYW50KCkgIT09ICdiYWJ5JyAmJiB2YXJpYW50KCkgIT09ICd0YWJsZScpIHtcbiAgICAgICAgICAgIDxzbWFsbD57eyBub3JtYWxpemVkVHlwZUxhYmVsKCkgfX08L3NtYWxsPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9zZWN0aW9uPlxuXG4gICAgICAgIEBpZiAodmFyaWFudCgpID09PSAnZnVsbCcpIHtcbiAgICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdmVyc2VcIj5cbiAgICAgICAgICAgIEBpZiAoY2FyZCgpLnZlcnNlVGV4dCkge1xuICAgICAgICAgICAgICA8cD57eyBjYXJkKCkudmVyc2VUZXh0IH19PC9wPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmIChjYXJkKCkuc2NyaXB0dXJlKSB7XG4gICAgICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3ZlcnNlLXJlZlwiPnt7IGNhcmQoKS5zY3JpcHR1cmUgfX08L3N0cm9uZz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L3NlY3Rpb24+XG4gICAgICAgIH1cblxuICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZWZmZWN0XCI+XG4gICAgICAgICAgQGlmIChjYXJkKCkuZWRpdGlvbkljb24pIHtcbiAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2VkaXRpb24td2F0ZXJtYXJrXCJcbiAgICAgICAgICAgICAgW3NyY109XCJjYXJkKCkuZWRpdGlvbkljb25cIlxuICAgICAgICAgICAgICBhbHQ9XCJcIlxuICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmICh2YXJpYW50KCkgIT09ICdmdWxsJykge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHNcIj5cbiAgICAgICAgICAgICAgQGlmIChjYXJkKCkudHlwZSA9PT0gJ2xlYWRlcicpIHtcbiAgICAgICAgICAgICAgICA8c3Ryb25nIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19sZWFkZXItbGlmZVwiPnt7IGxlYWRlckxpZmVUZXh0KCkgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgfSBAZWxzZSBpZiAoY2FyZFN0YXRzVGV4dCgpKSB7XG4gICAgICAgICAgICAgICAgPHN0cm9uZz57eyBjYXJkU3RhdHNUZXh0KCkgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiAodmFyaWFudCgpID09PSAnZnVsbCcpIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzXCI+XG4gICAgICAgICAgICAgIEBpZiAoY2FyZCgpLnR5cGUgPT09ICdsZWFkZXInKSB7XG4gICAgICAgICAgICAgICAgPHN0cm9uZyBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fbGVhZGVyLWxpZmVcIj57eyBsZWFkZXJMaWZlVmFsdWUoKSB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICB9IEBlbHNlIGlmIChjYXJkU3RhdHNUZXh0KCkpIHtcbiAgICAgICAgICAgICAgICA8c3Ryb25nPnt7IGNhcmRTdGF0c1RleHQoKSB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3RleHRcIj5cbiAgICAgICAgICAgICAgQGlmIChjYXJkKCkuYWJpbGl0eU5hbWUpIHtcbiAgICAgICAgICAgICAgICA8c3Ryb25nPnt7IGNhcmQoKS5hYmlsaXR5TmFtZSB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBpZiAoY2FyZCgpLmFiaWxpdHlUZXh0IHx8IGNhcmQoKS5zdGF0dXNUZXh0KSB7XG4gICAgICAgICAgICAgICAgPHA+e3sgY2FyZCgpLmFiaWxpdHlUZXh0IHx8IGNhcmQoKS5zdGF0dXNUZXh0IH19PC9wPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmICh2YXJpYW50KCkgPT09ICdsaXN0JyB8fCB2YXJpYW50KCkgPT09ICdoYW5kJyB8fCB2YXJpYW50KCkgPT09ICdmdWxsJykge1xuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3Jhcml0eVwiXG4gICAgICAgICAgICAgIFtjbGFzcy5pcy1ub3JtYWxdPVwiIWNhcmQoKS5yYXJpdHkgfHwgY2FyZCgpLnJhcml0eSA9PT0gJ25vcm1hbCdcIlxuICAgICAgICAgICAgICBbY2xhc3MuaXMtZ29vZF09XCJjYXJkKCkucmFyaXR5ID09PSAnZ29vZCcgfHwgY2FyZCgpLnJhcml0eSA9PT0gJ3VuY29tbW9uJ1wiXG4gICAgICAgICAgICAgIFtjbGFzcy5pcy12ZXJ5LWdvb2RdPVwiXG4gICAgICAgICAgICAgICAgY2FyZCgpLnJhcml0eSA9PT0gJ3ZlcnktZ29vZCcgfHwgY2FyZCgpLnJhcml0eSA9PT0gJ3JhcmUnIHx8IGNhcmQoKS5yYXJpdHkgPT09ICdsZWdlbmRhcnknXG4gICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9zZWN0aW9uPlxuXG4gICAgICAgIEBpZiAodmFyaWFudCgpID09PSAnZnVsbCcpIHtcbiAgICAgICAgICA8Zm9vdGVyIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19mb290ZXJcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19mb290ZXItYmFkZ2VcIj57eyBjYXJkKCkuZWRpdGlvbiA/PyAnTVZQJyB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuPnt7IGNhcmQoKS5jb2xsZWN0b3JOdW1iZXIgPz8gY2FyZCgpLmlkIH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4+e3sgY2FyZCgpLnllYXIgPz8gJzIwMjYnIH19IENIUklTVElBTklUWTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuPnt7IGNhcmQoKS5hdXRob3IgPz8gJ01WUCcgfX08L3NwYW4+XG4gICAgICAgICAgPC9mb290ZXI+XG4gICAgICAgIH1cbiAgICAgIDwvYXJ0aWNsZT5cbiAgICB9XG4gIGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIDpob3N0IHtcbiAgICAgICAgLS1jaHJpc3RpYW5pdHktY2FyZC1hc3BlY3Q6IDUgLyA3Ljc1O1xuICAgICAgICAtLWNocmlzdGlhbml0eS1jYXJkLWJhY2s6XG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgxNiwgNDIsIDY3LCAwLjE2KSwgcmdiYSgxNiwgNDIsIDY3LCAwLjAzKSksXG4gICAgICAgICAgcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCg0NWRlZywgI2RiZWFmZSAwIDAuMzNyZW0sICNmZmZmZmYgMC4zM3JlbSAwLjY2cmVtKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIG1pbm1heCgwLCAxZnIpIGF1dG87XG4gICAgICAgIGdhcDogMC4yOHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiB2YXIoLS1jaHJpc3RpYW5pdHktY2FyZC1hc3BlY3QpO1xuICAgICAgICBwYWRkaW5nOiAwLjQ4cmVtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM2LCA0OCwgNjgsIDAuMTYpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjUycmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OCksIHJnYmEoMjQ4LCAyNTAsIDI1MiwgMC45OCkpLFxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMTglIDAlLCByZ2JhKDIxNCwgMTYyLCAyOSwgMC4xMiksIHRyYW5zcGFyZW50IDQ0JSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS12YWwtdGV4dC1jb2xvciwgIzFmMjkzMyk7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMC41cmVtIDEuMjVyZW0gcmdiYSgzNiwgNDgsIDY4LCAwLjEpLFxuICAgICAgICAgIGluc2V0IDAgMCAwIDAuMThyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYyKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlciA+ICoge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG5cbiAgICAgIC8qID09PT09IERpciAzIMK3IGNhcnRhIGVuIGp1ZWdvIChhcnQtZmlyc3QgKyBIVUQsIGNvbG9yIHBvciB0aXBvLCBkaXZ1bGdhY2nDs24gcHJvZ3Jlc2l2YSkgPT09PT0gKi9cbiAgICAgIC5jYyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiB2YXIoLS1jaHJpc3RpYW5pdHktY2FyZC1hc3BlY3QpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXI6IDAuMTRyZW0gc29saWQgdmFyKC0tY3QsICM1ZjZiN2EpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWN0LCAjNWY2YjdhKTtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuNHJlbSAwLjlyZW0gcmdiYSgxNiwgMjYsIDQwLCAwLjI4KTtcbiAgICAgIH1cblxuICAgICAgLmNjX19hcnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMTYwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTYpLCByZ2JhKDAsIDAsIDAsIDAuMzQpKTtcbiAgICAgIH1cblxuICAgICAgLmNjX19hcnQtLXJlYWwge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgfVxuXG4gICAgICAuY2NfX3JlYWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgNDIlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgLXdlYmtpdC11c2VyLWRyYWc6IG5vbmU7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuY2NfX3dtIHtcbiAgICAgICAgd2lkdGg6IDQ2JTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBvcGFjaXR5OiAwLjE4O1xuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLmNjX19jb3JuZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNWNxdztcbiAgICAgICAgbGVmdDogNWNxdztcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGdhcDogM2NxdztcbiAgICAgIH1cblxuICAgICAgLmNjX190eXBlIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IGNsYW1wKDAuOHJlbSwgMjFjcXcsIDEuNjVyZW0pO1xuICAgICAgICBoZWlnaHQ6IGNsYW1wKDAuOHJlbSwgMjFjcXcsIDEuNjVyZW0pO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY3QsICM1ZjZiN2EpO1xuICAgICAgICBib3JkZXI6IDEuNXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gICAgICB9XG5cbiAgICAgIC5jY19fdHlwZSBpbWcge1xuICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICBoZWlnaHQ6IDYwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIGludmVydCgxKTtcbiAgICAgIH1cblxuICAgICAgLmNjX19jb3N0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAwLjEycmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWluLXdpZHRoOiBjbGFtcCgwLjhyZW0sIDIxY3F3LCAxLjY1cmVtKTtcbiAgICAgICAgaGVpZ2h0OiBjbGFtcCgwLjhyZW0sIDIxY3F3LCAxLjY1cmVtKTtcbiAgICAgICAgcGFkZGluZzogMCAwLjE4cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y0ZDM1ZTtcbiAgICAgICAgY29sb3I6ICM0YTNhMDY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC41NnJlbSwgMTJjcXcsIDAuOTRyZW0pO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgYm9yZGVyOiAxLjVweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjM1KTtcbiAgICAgIH1cblxuICAgICAgLmNjX19jb3N0LS1waXBzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZ2FwOiAwLjEycmVtO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cblxuICAgICAgLmNjX19jb3N0LS1waXBzIGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IGNsYW1wKDAuOHJlbSwgMjFjcXcsIDEuNjVyZW0pO1xuICAgICAgICBoZWlnaHQ6IGNsYW1wKDAuOHJlbSwgMjFjcXcsIDEuNjVyZW0pO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2Y0ZDM1ZTtcbiAgICAgICAgYm9yZGVyOiAxLjVweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAgICAgfVxuXG4gICAgICAuY2NfX2h1ZCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAwLjA2cmVtO1xuICAgICAgICBwYWRkaW5nOiBjbGFtcCgwLjYycmVtLCAxNWNxdywgMXJlbSkgY2xhbXAoMC4xOHJlbSwgNWNxdywgMC40NHJlbSkgY2xhbXAoMC4xOHJlbSwgNWNxdywgMC4zOHJlbSk7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0cmFuc3BhcmVudCwgcmdiYSgwLCAwLCAwLCAwLjM1KSA0MiUsIHJnYmEoMCwgMCwgMCwgMC44MikpO1xuICAgICAgfVxuXG4gICAgICAuY2NfX25hbWUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBmb250LWZhbWlseTogR2VvcmdpYSwgJ1RpbWVzIE5ldyBSb21hbicsIHNlcmlmO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTI7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC41cmVtLCAxMmNxdywgMC45NHJlbSk7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjY1KTtcbiAgICAgIH1cblxuICAgICAgLmNjX19zdGF0cyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogY2xhbXAoMC4yNXJlbSwgNmNxdywgMC41cmVtKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgwLjU2cmVtLCAxM2NxdywgMS4wNnJlbSk7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgICAgfVxuXG4gICAgICAuY2NfX2F0ayxcbiAgICAgIC5jY19fbGlmZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBnYXA6IDAuMTJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jY19fYXRrIHtcbiAgICAgICAgY29sb3I6ICNmZjlhOWE7XG4gICAgICB9XG5cbiAgICAgIC5jY19fbGlmZSB7XG4gICAgICAgIGNvbG9yOiAjOWFmMGFiO1xuICAgICAgfVxuXG4gICAgICAuY2NfX2ljbyB7XG4gICAgICAgIHdpZHRoOiAxZW07XG4gICAgICAgIGhlaWdodDogMWVtO1xuICAgICAgICBmaWxsOiBub25lO1xuICAgICAgICBzdHJva2U6IGN1cnJlbnRDb2xvcjtcbiAgICAgICAgc3Ryb2tlLXdpZHRoOiAyO1xuICAgICAgICBmbGV4OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuY2NfX2dlbSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDVjcXc7XG4gICAgICAgIGJvdHRvbTogNWNxdztcbiAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgd2lkdGg6IGNsYW1wKDAuNXJlbSwgMTFjcXcsIDAuODJyZW0pO1xuICAgICAgICBoZWlnaHQ6IGNsYW1wKDAuNXJlbSwgMTFjcXcsIDAuODJyZW0pO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgYm9yZGVyOiAxLjVweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjQpO1xuICAgICAgfVxuXG4gICAgICAuY2NfX2dlbS5pcy1ub3JtYWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjM2E4MGU5O1xuICAgICAgfVxuXG4gICAgICAuY2NfX2dlbS5pcy1nb29kIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzRlZTkzYTtcbiAgICAgIH1cblxuICAgICAgLmNjX19nZW0uaXMtdmVyeS1nb29kIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2U5Y2UzYTtcbiAgICAgIH1cblxuICAgICAgLyogRGl2dWxnYWNpw7NuIHByb2dyZXNpdmE6IGxhIGNhcnRhIHN1ZWx0YSBkZXRhbGxlIHNlZ8O6biBlbCBhbmNobyBxdWUgbGUgZGEgZWwgdGFibGVyby4gKi9cbiAgICAgIEBjb250YWluZXIgKG1pbi13aWR0aDogNThweCkge1xuICAgICAgICAuY2NfX25hbWUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC8qIEVsIGzDrWRlciBzdWVsZSB0ZW5lciBub21icmUgbGFyZ28gKFwiQWTDoW4sIHBhZHJlIGRlIGxhIGh1bWFuaWRhZFwiKTogMiBsw61uZWFzLiAqL1xuICAgICAgICAuY2MtLWxlYWRlciAuY2NfX25hbWUge1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGNvbnRhaW5lciAobWluLXdpZHRoOiA3MHB4KSB7XG4gICAgICAgIC5jY19fZ2VtIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWNsYXNzaWMge1xuICAgICAgICAtLWNocmlzdGlhbml0eS1mcmFtZS13aWR0aDogMC4yNnJlbTtcbiAgICAgICAgcGFkZGluZzogY2FsYygwLjQ4cmVtICsgdmFyKC0tY2hyaXN0aWFuaXR5LWZyYW1lLXdpZHRoKSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgMTU1ZGVnLFxuICAgICAgICAgICAgcmdiYSgyMTAsIDIyNiwgMjM4LCAwLjk3KSAwJSxcbiAgICAgICAgICAgIHJnYmEoMTU1LCAxNzQsIDE5MiwgMC45OCkgNDglLFxuICAgICAgICAgICAgcmdiYSgxMTgsIDEzOCwgMTYzLCAwLjk3KSAxMDAlXG4gICAgICAgICAgKSxcbiAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDE4JSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI4KSwgdHJhbnNwYXJlbnQgNDIlKTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgMCAxcHggcmdiYSg4OCwgMTA4LCAxMzMsIDAuMyksXG4gICAgICAgICAgMCAwLjVyZW0gMS4yNXJlbSByZ2JhKDM2LCA0OCwgNjgsIDAuMTMpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWNsYXNzaWM6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiB2YXIoLS1jaHJpc3RpYW5pdHktZnJhbWUtd2lkdGgpO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiBjYWxjKDAuNTJyZW0gLSAwLjFyZW0pO1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OCksIHJnYmEoMjQ4LCAyNTAsIDI1MiwgMC45OCkpLFxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMTglIDAlLCByZ2JhKDIxNCwgMTYyLCAyOSwgMC4wOCksIHRyYW5zcGFyZW50IDQ0JSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMC4xMnJlbSAwLjI4cmVtIHJnYmEoMzYsIDQ4LCA2OCwgMC4wNik7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwge1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gbWlubWF4KDEwLjhyZW0sIGF1dG8pIG1pbm1heCgzcmVtLCBhdXRvKSBtaW5tYXgoNS45cmVtLCAxZnIpIGF1dG87XG4gICAgICAgIGdhcDogMC40MnJlbTtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgcGFkZGluZzogMC43MnJlbTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDczLCA4OCwgMTA2LCAwLjI4KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDE3MCwgMTg0LCAxOTksIDAuOTgpLCByZ2JhKDE0MiwgMTU4LCAxNzYsIDAuOTgpKSxcbiAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDE4JSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI2KSwgdHJhbnNwYXJlbnQgNDQlKTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDIuNHJlbSA1cmVtIHJnYmEoMTYsIDQyLCA2NywgMC4zNCksXG4gICAgICAgICAgaW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40NiksXG4gICAgICAgICAgaW5zZXQgMCAwIDAgMC4zNnJlbSByZ2JhKDEzMywgMTUwLCAxNjgsIDAuNTYpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGVtcGxhdGUtZ2VuZXNpcy1jbGFzc2ljIHtcbiAgICAgICAgLS1jaHJpc3RpYW5pdHktZnJhbWUtd2lkdGg6IDAuMzRyZW07XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMC42NnJlbSArIHZhcigtLWNocmlzdGlhbml0eS1mcmFtZS13aWR0aCkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjc4cmVtO1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMCAwIDFweCByZ2JhKDg4LCAxMDgsIDEzMywgMC4yOCksXG4gICAgICAgICAgMCAyLjRyZW0gNXJlbSByZ2JhKDE2LCA0MiwgNjcsIDAuMzQpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGVtcGxhdGUtZ2VuZXNpcy1jbGFzc2ljOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjU2cmVtO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuMTRyZW0gMC4zOHJlbSByZ2JhKDM2LCA0OCwgNjgsIDAuMDgpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWZ1bGwtYXJ0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDksIDEzLCAyMSwgMC41OCk7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxMTE4Mjc7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICB0ZXh0LXNoYWRvdzogMCAwLjA4cmVtIDAuMThyZW0gcmdiYSgwLCAwLCAwLCAwLjcyKTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAuN3JlbSAxLjQ1cmVtIHJnYmEoOSwgMTMsIDIxLCAwLjIpLFxuICAgICAgICAgIGluc2V0IDAgMCAxLjJyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWZ1bGwtYXJ0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzZyZW07XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgaW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNiksXG4gICAgICAgICAgaW5zZXQgMCAtMnJlbSAyLjVyZW0gcmdiYSg5LCAxMywgMjEsIDAuMyk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtZnVsbC1hcnQgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZWZmZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSg5LCAxMywgMjEsIDAuNTgpO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtZnVsbC1hcnQgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdmVyc2Uge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoOSwgMTMsIDIxLCAwLjUpO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtZnVsbC1hcnQgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgc3Ryb25nIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICAgICAgICBjb2xvcjogIzFmMjkzMztcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWZ1bGwtYXJ0IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIG1pbm1heCgxNHJlbSwgMWZyKSBhdXRvIG1pbm1heCg4cmVtLCBhdXRvKSBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiBtaW4oMzVyZW0sIGNhbGMoMTAwdmggLSA0cmVtKSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNzJyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgNTAlIDglLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTYpLCB0cmFuc3BhcmVudCAzOCUpLCAjMDkwZDE1O1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMCAwIDAuMTJyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKSxcbiAgICAgICAgICAwIDIuNHJlbSA1cmVtIHJnYmEoOSwgMTMsIDIxLCAwLjQ4KSxcbiAgICAgICAgICBpbnNldCAwIDAgMS44cmVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNCk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJhY2sge1xuICAgICAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwLjU1cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jaHJpc3RpYW5pdHktY2FyZC1iYWNrKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwLjhyZW0gMS41NXJlbSByZ2JhKDM2LCA0OCwgNjgsIDAuMTQpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1iYWNrOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldDogMC41cmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE2LCA0MiwgNjcsIDAuMTIpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM4cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTgpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDQpKTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMC4xMnJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIG1pbm1heCgwLCAxZnIpIGF1dG87XG4gICAgICAgIGdhcDogMC4yMnJlbTtcbiAgICAgICAgcGFkZGluZzogMC4zOHJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC40OHJlbTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAuNDVyZW0gMXJlbSByZ2JhKDM2LCA0OCwgNjgsIDAuMSksXG4gICAgICAgICAgaW5zZXQgMCAwIDAgMC4xNHJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjIpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1ib2FyZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICAgICAgICBnYXA6IDAuMjJyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMzRyZW07XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgzNiwgNDgsIDY4LCAwLjE4KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC40OHJlbTtcbiAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTgpLCByZ2JhKDI0OCwgMjUwLCAyNTIsIDAuOTYpKSxcbiAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDUyJSAxOCUsIHJnYmEoMzcsIDk5LCAyMzUsIDAuMTIpLCB0cmFuc3BhcmVudCA0MiUpLFxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMTglIDAlLCByZ2JhKDIxNCwgMTYyLCAyOSwgMC4xMiksIHRyYW5zcGFyZW50IDQ0JSk7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwLjQ2cmVtIDAuOTVyZW0gcmdiYSgxNiwgNDIsIDY3LCAwLjExKSxcbiAgICAgICAgICBpbnNldCAwIDAgMCAwLjEycmVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42Nik7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJvYXJkLmlzLWxlYWRlciB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBtaW5tYXgoMi4zNXJlbSwgMWZyKSBhdXRvO1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OCksIHJnYmEoMjM5LCAyNDYsIDI1NSwgMC45NikpLFxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgNTAlIDIyJSwgcmdiYSgzNywgOTksIDIzNSwgMC4xOCksIHRyYW5zcGFyZW50IDQ4JSksXG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAxOCUgMCUsIHJnYmEoMjE0LCAxNjIsIDI5LCAwLjE0KSwgdHJhbnNwYXJlbnQgNDQlKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tY29tcGFjdCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogbWlubWF4KDEuNHJlbSwgYXV0bykgbWlubWF4KDAsIDFmcikgbWlubWF4KDEuOTVyZW0sIGF1dG8pO1xuICAgICAgICBnYXA6IDAuMjZyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuNDJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJhYnksXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1oYW5kLFxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGFibGUge1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDEuMzZyZW0gbWlubWF4KDAsIDFmcikgMi4wMnJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFieSB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMS4zNHJlbSBtaW5tYXgoMCwgMS4zMmZyKSAxLjcycmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1jb21wYWN0LmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGVtcGxhdGUtZ2VuZXNpcy1jbGFzc2ljIHtcbiAgICAgICAgLS1jaHJpc3RpYW5pdHktZnJhbWUtd2lkdGg6IDAuMnJlbTtcbiAgICAgICAgcGFkZGluZzogY2FsYygwLjQycmVtICsgdmFyKC0tY2hyaXN0aWFuaXR5LWZyYW1lLXdpZHRoKSk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWNvbXBhY3QuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWNsYXNzaWM6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNDJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2hlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICAgICAgICBnYXA6IDAuMzRyZW07XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdHlwZS1pY29uLFxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fbWV0cmljIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbiB7XG4gICAgICAgIHdpZHRoOiAxLjJyZW07XG4gICAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDM2LCA0OCwgNjgsIDAuMDgpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDAuODJyZW07XG4gICAgICAgIGhlaWdodDogMC44MnJlbTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9faGVhZGVyIHN0cm9uZyB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuODZyZW0sIDIuNXZ3LCAxLjA2cmVtKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDQ7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWNvbXBhY3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9faGVhZGVyIHtcbiAgICAgICAgZ2FwOiAwLjI0cmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtaW4taGVpZ2h0OiAxLjI4cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1jb21wYWN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbiB7XG4gICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWNvbXBhY3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdHlwZS1pY29uIGltZyB7XG4gICAgICAgIHdpZHRoOiAwLjdyZW07XG4gICAgICAgIGhlaWdodDogMC43cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1jb21wYWN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2hlYWRlciBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuNzJyZW0sIDJ2dywgMC45MnJlbSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2hlYWRlciB7XG4gICAgICAgIGdhcDogMC4yMnJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24ge1xuICAgICAgICB3aWR0aDogMC45cmVtO1xuICAgICAgICBoZWlnaHQ6IDAuOXJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDAuNjJyZW07XG4gICAgICAgIGhlaWdodDogMC42MnJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19oZWFkZXIgc3Ryb25nIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjcycmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYm9hcmQgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9faGVhZGVyIHtcbiAgICAgICAgZ2FwOiAwLjJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJvYXJkIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbiB7XG4gICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJvYXJkIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbiBpbWcge1xuICAgICAgICB3aWR0aDogMC42OHJlbTtcbiAgICAgICAgaGVpZ2h0OiAwLjY4cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1ib2FyZCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19oZWFkZXIgc3Ryb25nIHtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBjbGlwO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuN3JlbSwgMS42NXZ3LCAwLjg0cmVtKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuOTg7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYm9hcmQuaXMtbGVhZGVyIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2hlYWRlciBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuNzJyZW0sIDEuN3Z3LCAwLjg2cmVtKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24ge1xuICAgICAgICB3aWR0aDogMS4zMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjMycmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbiBpbWcge1xuICAgICAgICB3aWR0aDogMC44NHJlbTtcbiAgICAgICAgaGVpZ2h0OiAwLjg0cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2hlYWRlciBzdHJvbmcge1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGNsaXA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4xMnJlbSwgNC4zdncsIDEuNThyZW0pO1xuICAgICAgICBsaW5lLWhlaWdodDogMC45ODtcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMge1xuICAgICAgICBtaW4td2lkdGg6IDEuNTJyZW07XG4gICAgICAgIGhlaWdodDogMS41MnJlbTtcbiAgICAgICAgcGFkZGluZzogMCAwLjI0cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZkOTFhO1xuICAgICAgICBjb2xvcjogIzI0MzA0NDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg2cmVtO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4wOHJlbSAwIHJnYmEoODIsIDY0LCAyOCwgMC4xOCk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWNvbXBhY3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fbWV0cmljIHtcbiAgICAgICAgbWluLXdpZHRoOiAxLjI4cmVtO1xuICAgICAgICBoZWlnaHQ6IDEuMjhyZW07XG4gICAgICAgIHBhZGRpbmc6IDAgMC4ycmVtO1xuICAgICAgICBmb250LXNpemU6IDAuNzJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fbWV0cmljIHtcbiAgICAgICAgbWluLXdpZHRoOiAxLjJyZW07XG4gICAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgICAgICBwYWRkaW5nOiAwIDAuMThyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1ib2FyZCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMge1xuICAgICAgICBtaW4td2lkdGg6IDEuMjVyZW07XG4gICAgICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICAgICAgcGFkZGluZzogMCAwLjE4cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuNzJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fbWV0cmljIHtcbiAgICAgICAgbWluLXdpZHRoOiAxLjk0cmVtO1xuICAgICAgICBoZWlnaHQ6IDEuOTRyZW07XG4gICAgICAgIHBhZGRpbmc6IDAgMC4zNHJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjA4cmVtO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIGluc2V0IDAgLTAuMXJlbSAwIHJnYmEoODIsIDY0LCAyOCwgMC4yKSxcbiAgICAgICAgICAwIDAuMTZyZW0gMC40cmVtIHJnYmEoMTYsIDQyLCA2NywgMC4xMik7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX21ldHJpYy5pcy1waXBzLFxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgLmlzLXBpcHMge1xuICAgICAgICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICAgICAgICBnYXA6IDAuMTZyZW07XG4gICAgICAgIG1pbi13aWR0aDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMCAwLjI4cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMuaXMtcGlwcyB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX21ldHJpYy5pcy1jb3N0LXN5bWJvbCB7XG4gICAgICAgIG1pbi13aWR0aDogMS41MnJlbTtcbiAgICAgICAgd2lkdGg6IDEuNTJyZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWNvbXBhY3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fbWV0cmljLmlzLWNvc3Qtc3ltYm9sIHtcbiAgICAgICAgbWluLXdpZHRoOiAxLjI4cmVtO1xuICAgICAgICB3aWR0aDogMS4yOHJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMuaXMtY29zdC1zeW1ib2wge1xuICAgICAgICBtaW4td2lkdGg6IDEuMnJlbTtcbiAgICAgICAgd2lkdGg6IDEuMnJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMuaXMtY29zdC1zeW1ib2wge1xuICAgICAgICBtaW4td2lkdGg6IDEuNzJyZW07XG4gICAgICAgIHdpZHRoOiAxLjcycmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMuaXMtY29zdC1zeW1ib2wgaSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX21ldHJpYyBpLFxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMC43MnJlbTtcbiAgICAgICAgaGVpZ2h0OiAwLjcycmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDM0JSAyOCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KSAwIDAuMTJyZW0sIHRyYW5zcGFyZW50IDAuMTNyZW0pLCAjZmZkOTFhO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIGluc2V0IDAgLTAuMDhyZW0gMCByZ2JhKDgyLCA2NCwgMjgsIDAuMTgpLFxuICAgICAgICAgIDAgMC4xMnJlbSAwLjI0cmVtIHJnYmEoMTYsIDQyLCA2NywgMC4xKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tY29tcGFjdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMgaSxcbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWNvbXBhY3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgaSB7XG4gICAgICAgIHdpZHRoOiAwLjVyZW07XG4gICAgICAgIGhlaWdodDogMC41cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX21ldHJpYyBpLFxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19zdGF0cyBpIHtcbiAgICAgICAgd2lkdGg6IDAuNDhyZW07XG4gICAgICAgIGhlaWdodDogMC40OHJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM2cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoOTUsIDExMSwgNDIsIDAuMTgpLCByZ2JhKDIxNCwgMTYyLCAyOSwgMC4xNCkpLFxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgNTAlIDE4JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcyKSwgdHJhbnNwYXJlbnQgNDglKSwgI2RiZTdlZjtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHJnYmEoMzYsIDQ4LCA2OCwgMC4wOCk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXIgNDUlO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIC13ZWJraXQtdXNlci1kcmFnOiBub25lO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19hcnQgPiBzcGFuIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3OCU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGNvbG9yOiByZ2JhKDM2LCA0OCwgNjgsIDAuNDgpO1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuODJyZW0sIDIuMnZ3LCAxLjA1cmVtKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0ID4gc3BhbiB7XG4gICAgICAgIG1heC13aWR0aDogODIlO1xuICAgICAgICBmb250LXNpemU6IDAuN3JlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYm9hcmQgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0ID4gc3BhbiB7XG4gICAgICAgIG1heC13aWR0aDogODIlO1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGNsaXA7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC42NHJlbSwgMS42dncsIDAuNzhyZW0pO1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0ID4gc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4xcmVtLCA1dncsIDEuOHJlbSk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCBzbWFsbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbWF4LXdpZHRoOiA3OCU7XG4gICAgICAgIHBhZGRpbmc6IDAuMXJlbSAwLjM0cmVtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweCAwIDAuMjZyZW0gOTk5cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICAgICAgY29sb3I6IHJnYmEoMzEsIDQxLCA1MSwgMC42Nik7XG4gICAgICAgIGZvbnQtc2l6ZTogMC40OHJlbTtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWNvbXBhY3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1jb21wYWN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCA+IHNwYW4ge1xuICAgICAgICBtYXgtd2lkdGg6IDc2JTtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC42NnJlbSwgMS45dncsIDAuODRyZW0pO1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWNvbXBhY3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0IHNtYWxsIHtcbiAgICAgICAgYm90dG9tOiAwLjIycmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDcyJTtcbiAgICAgICAgcGFkZGluZzogMC4wOHJlbSAwLjI4cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuNDJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0IHNtYWxsIHtcbiAgICAgICAgYm90dG9tOiAwLjJyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMDhyZW0gMC4yNnJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjQycmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1ib2FyZCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19hcnQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJvYXJkIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCBzbWFsbCB7XG4gICAgICAgIGJvdHRvbTogMC4ycmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDc2JTtcbiAgICAgICAgcGFkZGluZzogMC4wOHJlbSAwLjI2cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuNHJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYm9hcmQuaXMtbGVhZGVyIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDIuMTVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgzNywgOTksIDIzNSwgMC4xNiksIHJnYmEoMjE0LCAxNjIsIDI5LCAwLjE2KSksXG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA1MCUgMTglLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzgpLCB0cmFuc3BhcmVudCA0OCUpLCAjZTdlZWY4O1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCB7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogMS4zNCAvIDE7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzRyZW07XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgaW5zZXQgMCAwIDAgMXB4IHJnYmEoMzYsIDQ4LCA2OCwgMC4xKSxcbiAgICAgICAgICAwIDAuMTZyZW0gMC4zNnJlbSByZ2JhKDE2LCA0MiwgNjcsIDAuMDgpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCBzbWFsbCB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDAuMzRyZW07XG4gICAgICAgIG1pbi13aWR0aDogNC4xcmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjEzcmVtIDAuNDZyZW0gMC4xMnJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNiwgNDgsIDY4LCAwLjA4KTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweCAwIDAgOTk5cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NCksIHJnYmEoMjM5LCAyNDIsIDI0NiwgMC45KSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMC4xMnJlbSAwLjI4cmVtIHJnYmEoMTYsIDQyLCA2NywgMC4xKTtcbiAgICAgICAgY29sb3I6IHJnYmEoMzEsIDQxLCA1MSwgMC42OCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMC40NnJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX192ZXJzZSxcbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2VmZmVjdCB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogMC4zMnJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdmVyc2Uge1xuICAgICAgICBjb2xvcjogIzE3MTkyMztcbiAgICAgICAgZm9udC1mYW1pbHk6IEdlb3JnaWEsICdUaW1lcyBOZXcgUm9tYW4nLCBzZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgwLjU4cmVtLCAxLjkydncsIDAuNjZyZW0pO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3ZlcnNlIHtcbiAgICAgICAgYWxpZ24tY29udGVudDogc3RhcnQ7XG4gICAgICAgIHBhZGRpbmc6IDAuM3JlbSAwLjJyZW0gMC4xNHJlbTtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgwLjUycmVtLCAxLjcydncsIDAuNnJlbSk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3ZlcnNlIHAsXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZmZlY3QgcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTg7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdmVyc2UgcCB7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDQ7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwuaGFzLWxvbmctdmVyc2UgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdmVyc2Uge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuNDhyZW0sIDEuNnZ3LCAwLjU2cmVtKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbC5oYXMtbG9uZy12ZXJzZSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX192ZXJzZSBwIHtcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiA1O1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX192ZXJzZSBzdHJvbmcge1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiAwLjY2cmVtO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX192ZXJzZS1yZWYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLXRvcDogMC4xOHJlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6IEdlb3JnaWEsICdUaW1lcyBOZXcgUm9tYW4nLCBzZXJpZjtcbiAgICAgICAgZm9udC1zaXplOiAwLjU2cmVtO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBjb2xvcjogcmdiYSgyMywgMjUsIDM1LCAwLjg1KTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDFlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZWZmZWN0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEuNDVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMjRyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzRyZW07XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA1MCUgNzAlLCByZ2JhKDM2LCA0OCwgNjgsIDAuMDYpLCB0cmFuc3BhcmVudCA0NCUpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODYpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1jb21wYWN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2VmZmVjdCB7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IGVuZDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgaGVpZ2h0OiAxLjk1cmVtO1xuICAgICAgICBtaW4taGVpZ2h0OiAxLjk1cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjJyZW0gMC4yNHJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgNTAlIDgwJSwgcmdiYSgzNiwgNDgsIDY4LCAwLjA1KSwgdHJhbnNwYXJlbnQgNDUlKSxcbiAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODIpLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTQpKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZmZlY3Qge1xuICAgICAgICBtaW4taGVpZ2h0OiAxLjI2cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjE2cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI4cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1ib2FyZCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZmZlY3Qge1xuICAgICAgICBhbGlnbi1jb250ZW50OiBlbmQ7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEuNDVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMTZyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMjhyZW07XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA1MCUgODAlLCByZ2JhKDM2LCA0OCwgNjgsIDAuMDUpLCB0cmFuc3BhcmVudCA0NSUpLFxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NCksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NikpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZGl0aW9uLXdhdGVybWFyayB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgd2lkdGg6IG1pbig0MiUsIDQuOHJlbSk7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgb3BhY2l0eTogMC4wNTU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tY29tcGFjdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZGl0aW9uLXdhdGVybWFyayB7XG4gICAgICAgIHdpZHRoOiBtaW4oMzYlLCAyLjZyZW0pO1xuICAgICAgICBvcGFjaXR5OiAwLjA0NTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZmZlY3Qge1xuICAgICAgICBhbGlnbi1jb250ZW50OiBzdGFydDtcbiAgICAgICAgbWluLWhlaWdodDogNS45cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMC43MnJlbSAwLjQ4cmVtO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNTZyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMzYsIDQ4LCA2OCwgMC4wNDUpO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICBnYXA6IDAuMzZyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZWRpdGlvbi13YXRlcm1hcmsge1xuICAgICAgICB3aWR0aDogbWluKDQyJSwgNS4ycmVtKTtcbiAgICAgICAgb3BhY2l0eTogMC4xO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19zdGF0cyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZ2FwOiAwLjY1cmVtO1xuICAgICAgICBtaW4taGVpZ2h0OiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1jb21wYWN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGVuZDtcbiAgICAgICAgbWluLWhlaWdodDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgc3Ryb25nIHtcbiAgICAgICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gICAgICAgIGFsaWduLXNlbGY6IGVuZDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDAuMTJyZW0gMC4zMnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlZGYyZjc7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC42NnJlbSwgMnZ3LCAwLjgycmVtKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDU7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWNvbXBhY3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgc3Ryb25nIHtcbiAgICAgICAgcGFkZGluZzogMC4xcmVtIDAuMjhyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC42NHJlbSwgMS45dncsIDAuNzhyZW0pO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHtcbiAgICAgICAgbWluLWhlaWdodDogMC45NXJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19zdGF0cyBzdHJvbmcge1xuICAgICAgICBwYWRkaW5nOiAwLjFyZW0gMC4yNnJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjY2cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1ib2FyZCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19zdGF0cyBzdHJvbmcge1xuICAgICAgICBwYWRkaW5nOiAwLjFyZW0gMC4yOHJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMzcsIDI0MiwgMjQ3LCAwLjk2KTtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgwLjY2cmVtLCAxLjl2dywgMC44cmVtKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDk1MDtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYm9hcmQuaXMtbGVhZGVyIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHN0cm9uZyB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDAuMTZyZW0gMC40MnJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogIzEwMmE0MztcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC44MnJlbSwgMi4ydncsIDEuMDVyZW0pO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwLjI4cmVtIDAuNzJyZW0gcmdiYSgxNiwgNDIsIDY3LCAwLjE4KTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbC5pcy1sZWFkZXIgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZWZmZWN0IHtcbiAgICAgICAgbWluLWhlaWdodDogNi44cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsLmlzLXJ1bGVzLW9ubHkgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZWZmZWN0IHtcbiAgICAgICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3RleHQge1xuICAgICAgICBnYXA6IDAuMjhyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3RleHQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogMC4xOHJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdGV4dCBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IDAuNzhyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjA1O1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190ZXh0IHAge1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiA0O1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuN3JlbSwgMi4zMnZ3LCAwLjgycmVtKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTg7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwuaGFzLWxvbmctZWZmZWN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3RleHQgcCB7XG4gICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogNDtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgwLjY0cmVtLCAyLjA1dncsIDAuNzRyZW0pO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xNjtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbC5pcy1ydWxlcy1vbmx5IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3RleHQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC44MnJlbSwgMi42dncsIDAuOTZyZW0pO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19yYXJpdHkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMC42MnJlbTtcbiAgICAgICAgcmlnaHQ6IDAuNjJyZW07XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHdpZHRoOiAwLjVyZW07XG4gICAgICAgIGhlaWdodDogMC41cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3Jhcml0eSB7XG4gICAgICAgIHdpZHRoOiAwLjUycmVtO1xuICAgICAgICBoZWlnaHQ6IDAuNTJyZW07XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3Jhcml0eS5pcy1ub3JtYWwge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjM2E4MGU5O1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19yYXJpdHkuaXMtZ29vZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICM0ZWU5M2E7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3Jhcml0eS5pcy12ZXJ5LWdvb2Qge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZTljZTNhO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHN0cm9uZyB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDEuMDVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBjb2xvcjogdmFyKC0tY2hyaXN0aWFuaXR5LXRoZW1lLWluaywgIzE3MTkyMyk7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsLmlzLWNoYXJhY3RlciAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19zdGF0cyBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IDEuMTJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwuaXMtbGVhZGVyIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3Jhcml0eSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwLjUycmVtO1xuICAgICAgICByaWdodDogMC41MnJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsLmlzLWxlYWRlciAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19sZWFkZXItbGlmZSB7XG4gICAgICAgIGNvbG9yOiByZ2JhKDMxLCA0MSwgNTEsIDAuOSk7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19mb290ZXIge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gYXV0byBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICAgICAgICBnYXA6IDAuMnJlbTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgY29sb3I6IHJnYmEoMzEsIDQxLCA1MSwgMC42OCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMC4zNHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZm9vdGVyIHtcbiAgICAgICAgZ2FwOiAwLjJyZW07XG4gICAgICAgIGNvbG9yOiByZ2JhKDMxLCA0MSwgNTEsIDAuNTgpO1xuICAgICAgICBmb250LXNpemU6IDAuMzJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2Zvb3RlciBzcGFuIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZm9vdGVyLWJhZGdlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAwLjA2cmVtIDAuMnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDM2LCA0OCwgNjgsIDAuMTQpO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIH1cblxuICAgICAgOmhvc3QtY29udGV4dCguZGFyayksXG4gICAgICA6aG9zdC1jb250ZXh0KC5pb24tcGFsZXR0ZS1kYXJrKSxcbiAgICAgIDpob3N0LWNvbnRleHQoaHRtbC5pb24tcGFsZXR0ZS1kYXJrKSxcbiAgICAgIDpob3N0LWNvbnRleHQoYm9keS5kYXJrKSxcbiAgICAgIDpob3N0LWNvbnRleHQoW2RhdGEtdGhlbWU9J2RhcmsnXSkge1xuICAgICAgICAtLWNocmlzdGlhbml0eS1jYXJkLWJhY2s6XG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgxNDcsIDE5NywgMjUzLCAwLjIpLCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpKSxcbiAgICAgICAgICByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjMWUzYTVmIDAgMC4zM3JlbSwgIzBmMTcyYSAwLjMzcmVtIDAuNjZyZW0pO1xuICAgICAgICBjb2xvci1zY2hlbWU6IGRhcms7XG4gICAgICB9XG5cbiAgICAgIDpob3N0LWNvbnRleHQoLmRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXIsXG4gICAgICA6aG9zdC1jb250ZXh0KC5pb24tcGFsZXR0ZS1kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLFxuICAgICAgOmhvc3QtY29udGV4dChodG1sLmlvbi1wYWxldHRlLWRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXIsXG4gICAgICA6aG9zdC1jb250ZXh0KGJvZHkuZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcixcbiAgICAgIDpob3N0LWNvbnRleHQoW2RhdGEtdGhlbWU9J2RhcmsnXSkgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlciB7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwLjVyZW0gMS4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMjQpLFxuICAgICAgICAgIGluc2V0IDAgMCAwIDAuMThyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM4KTtcbiAgICAgIH1cblxuICAgICAgOmhvc3QtY29udGV4dCguZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFjayxcbiAgICAgIDpob3N0LWNvbnRleHQoLmlvbi1wYWxldHRlLWRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJhY2ssXG4gICAgICA6aG9zdC1jb250ZXh0KGh0bWwuaW9uLXBhbGV0dGUtZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFjayxcbiAgICAgIDpob3N0LWNvbnRleHQoYm9keS5kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1iYWNrLFxuICAgICAgOmhvc3QtY29udGV4dChbZGF0YS10aGVtZT0nZGFyayddKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1iYWNrIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE0NywgMTk3LCAyNTMsIDAuMjIpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuOHJlbSAxLjU1cmVtIHJnYmEoMCwgMCwgMCwgMC4zMik7XG4gICAgICB9XG5cbiAgICAgIDpob3N0LWNvbnRleHQoLmRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJhY2s6OmJlZm9yZSxcbiAgICAgIDpob3N0LWNvbnRleHQoLmlvbi1wYWxldHRlLWRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJhY2s6OmJlZm9yZSxcbiAgICAgIDpob3N0LWNvbnRleHQoaHRtbC5pb24tcGFsZXR0ZS1kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1iYWNrOjpiZWZvcmUsXG4gICAgICA6aG9zdC1jb250ZXh0KGJvZHkuZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFjazo6YmVmb3JlLFxuICAgICAgOmhvc3QtY29udGV4dChbZGF0YS10aGVtZT0nZGFyayddKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1iYWNrOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMTQ3LCAxOTcsIDI1MywgMC4xNik7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMTQ3LCAxOTcsIDI1MywgMC4xNCksIHJnYmEoMTUsIDIzLCA0MiwgMC4wNCkpO1xuICAgICAgfVxuXG4gICAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0LFxuICAgICAgOmhvc3QtY29udGV4dCguaW9uLXBhbGV0dGUtZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCxcbiAgICAgIDpob3N0LWNvbnRleHQoaHRtbC5pb24tcGFsZXR0ZS1kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0LFxuICAgICAgOmhvc3QtY29udGV4dChib2R5LmRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3QsXG4gICAgICA6aG9zdC1jb250ZXh0KFtkYXRhLXRoZW1lPSdkYXJrJ10pIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3Qge1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMC40NXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4yNiksXG4gICAgICAgICAgaW5zZXQgMCAwIDAgMC4xNHJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDgpO1xuICAgICAgfVxuXG4gICAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24sXG4gICAgICA6aG9zdC1jb250ZXh0KC5pb24tcGFsZXR0ZS1kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24sXG4gICAgICA6aG9zdC1jb250ZXh0KGh0bWwuaW9uLXBhbGV0dGUtZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdHlwZS1pY29uLFxuICAgICAgOmhvc3QtY29udGV4dChib2R5LmRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbixcbiAgICAgIDpob3N0LWNvbnRleHQoW2RhdGEtdGhlbWU9J2RhcmsnXSkgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdHlwZS1pY29uLFxuICAgICAgOmhvc3QtY29udGV4dCguZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgc3Ryb25nLFxuICAgICAgOmhvc3QtY29udGV4dCguaW9uLXBhbGV0dGUtZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgc3Ryb25nLFxuICAgICAgOmhvc3QtY29udGV4dChodG1sLmlvbi1wYWxldHRlLWRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHN0cm9uZyxcbiAgICAgIDpob3N0LWNvbnRleHQoYm9keS5kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19zdGF0cyBzdHJvbmcsXG4gICAgICA6aG9zdC1jb250ZXh0KFtkYXRhLXRoZW1lPSdkYXJrJ10pIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHN0cm9uZyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjI2LCAyMzIsIDI0MCwgMC44Nik7XG4gICAgICAgIGNvbG9yOiAjMTcyMDMzO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTJyZW0pIHtcbiAgICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCB7XG4gICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIG1pbm1heCgxNS44cmVtLCBhdXRvKSBtaW5tYXgoNC42cmVtLCBhdXRvKSBtaW5tYXgoOC44cmVtLCAxZnIpIGF1dG87XG4gICAgICAgICAgZ2FwOiAwLjU0cmVtO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgICAgcGFkZGluZzogMS4wNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWNsYXNzaWMge1xuICAgICAgICAgIC0tY2hyaXN0aWFuaXR5LWZyYW1lLXdpZHRoOiAwLjM4cmVtO1xuICAgICAgICAgIHBhZGRpbmc6IGNhbGMoMS4wNXJlbSArIHZhcigtLWNocmlzdGlhbml0eS1mcmFtZS13aWR0aCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24ge1xuICAgICAgICAgIHdpZHRoOiAxLjZyZW07XG4gICAgICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbiBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxcmVtO1xuICAgICAgICAgIGhlaWdodDogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9faGVhZGVyIHN0cm9uZyB7XG4gICAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjM0cmVtLCA0LjV2dywgMi4yOHJlbSk7XG4gICAgICAgIH1cblxuICAgICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3ZlcnNlIHtcbiAgICAgICAgICBwYWRkaW5nOiAwLjM4cmVtIDAuMjRyZW0gMC4xNnJlbTtcbiAgICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuNnJlbSwgMS41dncsIDAuNzJyZW0pO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZmZlY3Qge1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDguOHJlbTtcbiAgICAgICAgICBwYWRkaW5nOiAwLjlyZW0gMXJlbSAwLjQ4cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19zdGF0cyBzdHJvbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44OHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwuaXMtbGVhZGVyIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2xlYWRlci1saWZlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMge1xuICAgICAgICAgIGJvdHRvbTogMS44cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbC5pcy1sZWFkZXIgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMge1xuICAgICAgICAgIGJvdHRvbTogMS44cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190ZXh0IHN0cm9uZyB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg2cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190ZXh0IHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMXJlbSwgMi4xMnZ3LCAxLjIycmVtKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIGAsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIENocmlzdGlhbml0eUNhcmRDb21wb25lbnQge1xuICByZWFkb25seSBjYXJkID0gaW5wdXQucmVxdWlyZWQ8Q2hyaXN0aWFuaXR5Q2FyZFJlbmRlck1vZGVsPigpO1xuICByZWFkb25seSB2YXJpYW50ID0gaW5wdXQ8Q2hyaXN0aWFuaXR5Q2FyZFJlbmRlclZhcmlhbnQ+KCd0YWJsZScpO1xuXG4gIC8vIENvbG9yIGRlIG1hcmNvIHBvciB0aXBvIChEaXIgMyBhcnQtZmlyc3QpLiBGdWVudGUgZGUgdmVyZGFkIGRlbCBzaXN0ZW1hIGRlIGNvbG9yLlxuICBwcml2YXRlIHJlYWRvbmx5IHR5cGVDb2xvcnM6IFJlY29yZDxDaHJpc3RpYW5pdHlDYXJkUmVuZGVyVHlwZSwgc3RyaW5nPiA9IHtcbiAgICBsZWFkZXI6ICcjOGU1YjJlJyxcbiAgICBjaGFyYWN0ZXI6ICcjYjIzYjNiJyxcbiAgICBvZmZlcmluZzogJyNjOWEyMjcnLFxuICAgIHdpc2RvbTogJyMzZjdkOWMnLFxuICAgIGFjdGlvbjogJyM0ZDZiYmQnLFxuICAgIHRvb2w6ICcjNWE4ZjRlJyxcbiAgICBwbGFjZTogJyMyZjdkNmInLFxuICAgIGV2ZW50OiAnIzdhNGZiMCcsXG4gIH07XG4gIHByb3RlY3RlZCByZWFkb25seSB0eXBlQ29sb3IgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnR5cGVDb2xvcnNbdGhpcy5jYXJkKCkudHlwZV0gPz8gJyM1ZjZiN2EnKTtcblxuICAvLyBWYXJpYW50ZXMgZW4ganVlZ28gKHRhYmxlcm8sIG1hbm8sIG9mcmVuZGFzLCBnYWxlcsOtYSkgdXNhbiBlbCByZW5kZXIgYXJ0LWZpcnN0LlxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNJblBsYXkgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgdmFyaWFudCA9IHRoaXMudmFyaWFudCgpO1xuICAgIHJldHVybiB2YXJpYW50ID09PSAnYm9hcmQnIHx8IHZhcmlhbnQgPT09ICdiYWJ5JyB8fCB2YXJpYW50ID09PSAnaGFuZCcgfHwgdmFyaWFudCA9PT0gJ3RhYmxlJztcbiAgfSk7XG5cbiAgLy8gRWwgYXJ0ZSBkZWZpbml0aXZvIHJlZW1wbGF6YSBhbCBwbGFjZWhvbGRlciBwb3IgdGlwby4gTWllbnRyYXMgc2VhIFBMQUNFSE9MREVSLCB1c2Ftb3MgZWwgcGxhY2Vob2xkZXIgaW50ZW5jaW9uYWwuXG4gIHByb3RlY3RlZCByZWFkb25seSBoYXNSZWFsQXJ0ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IHVybCA9IHRoaXMuY2FyZCgpLmltYWdlVXJsO1xuICAgIHJldHVybiAhIXVybCAmJiAhL3BsYWNlaG9sZGVyL2kudGVzdCh1cmwpO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbm9ybWFsaXplZFR5cGVMYWJlbCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuY2FyZCgpLnR5cGVMYWJlbC50b1VwcGVyQ2FzZSgpKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGZyb250VGVtcGxhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmNhcmQoKS5mcm9udFRlbXBsYXRlID8/ICdnZW5lc2lzLWNsYXNzaWMnKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGlzR2VuZXNpc0NsYXNzaWNUZW1wbGF0ZSA9IGNvbXB1dGVkKFxuICAgICgpID0+IHRoaXMuZnJvbnRUZW1wbGF0ZSgpID09PSAnZ2VuZXNpcy1jbGFzc2ljJyB8fCB0aGlzLmZyb250VGVtcGxhdGUoKSA9PT0gJ2dlbmVzaXMtY2xhc3NpYy1leHRyYSdcbiAgKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHR5cGVJY29uVXJsID0gY29tcHV0ZWQoXG4gICAgKCkgPT4gYGFzc2V0cy9nYW1lcy9jaHJpc3RpYW5pdHkvaWNvbnMvJHt0aGlzLmljb25OYW1lKHRoaXMuY2FyZCgpLnR5cGUpfS5wbmdgXG4gICk7XG4gIHByb3RlY3RlZCByZWFkb25seSBzaG93VHlwZUljb24gPSBjb21wdXRlZCgoKSA9PiB0cnVlKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGhlYWRlck1ldHJpYyA9IGNvbXB1dGVkPHsga2luZDogJ251bWJlcicgfCAncGlwcycgfCAnY29zdC1zeW1ib2wnOyB2YWx1ZTogbnVtYmVyIH0gfCBudWxsPigoKSA9PiB7XG4gICAgY29uc3QgY2FyZCA9IHRoaXMuY2FyZCgpO1xuICAgIGlmIChjYXJkLnR5cGUgPT09ICdsZWFkZXInKSByZXR1cm4gbnVsbDtcbiAgICAvLyBMYSBvZnJlbmRhIHNlIHJlcHJlc2VudGEgY29uIFVOIHNvbG8gc8OtbWJvbG8gKHN1IGJhZGdlIGRlIHRpcG8pLiBFbCB2YWxvciBxdWUgZ2VuZXJhXG4gICAgLy8gKHAuIGVqLiBcImdlbmVyYSAyXCIpIHZpdmUgZW4gZWwgdGV4dG8gZGUgaGFiaWxpZGFkLCBubyBjb21vIGRvcyBtb25lZGFzLlxuICAgIGlmIChjYXJkLnR5cGUgPT09ICdvZmZlcmluZycpIHJldHVybiBudWxsO1xuICAgIGlmICh0eXBlb2YgY2FyZC5jb3N0ID09PSAnbnVtYmVyJykgcmV0dXJuIHsga2luZDogJ251bWJlcicsIHZhbHVlOiBjYXJkLmNvc3QgfTtcbiAgICByZXR1cm4gbnVsbDtcbiAgfSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBjYXJkU3RhdHNUZXh0ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNhcmQgPSB0aGlzLmNhcmQoKTtcbiAgICBpZiAoY2FyZC50eXBlICE9PSAnY2hhcmFjdGVyJykgcmV0dXJuICcnO1xuICAgIHJldHVybiBgJHtjYXJkLmF0dGFjayA/PyAwfSAvICR7Y2FyZC5jdXJyZW50SHAgPz8gY2FyZC5saWZlID8/IDB9YDtcbiAgfSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBsZWFkZXJMaWZlVGV4dCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBjYXJkID0gdGhpcy5jYXJkKCk7XG4gICAgY29uc3QgY3VycmVudCA9IGNhcmQuY3VycmVudEhwID8/IGNhcmQubGlmZSA/PyAwO1xuICAgIGNvbnN0IG1heCA9IGNhcmQubWF4SHAgPz8gY2FyZC5saWZlID8/IGN1cnJlbnQ7XG4gICAgcmV0dXJuIGAke2N1cnJlbnR9LyR7bWF4fWA7XG4gIH0pO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbGVhZGVyTGlmZVZhbHVlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNhcmQgPSB0aGlzLmNhcmQoKTtcbiAgICByZXR1cm4gY2FyZC5jdXJyZW50SHAgPz8gY2FyZC5saWZlID8/IGNhcmQubWF4SHAgPz8gMDtcbiAgfSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBpc1J1bGVzT25seUNhcmQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgdHlwZSA9IHRoaXMuY2FyZCgpLnR5cGU7XG4gICAgcmV0dXJuIChcbiAgICAgIHR5cGUgPT09ICdhY3Rpb24nIHx8XG4gICAgICB0eXBlID09PSAnZXZlbnQnIHx8XG4gICAgICB0eXBlID09PSAnb2ZmZXJpbmcnIHx8XG4gICAgICB0eXBlID09PSAncGxhY2UnIHx8XG4gICAgICB0eXBlID09PSAndG9vbCcgfHxcbiAgICAgIHR5cGUgPT09ICd3aXNkb20nXG4gICAgKTtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIG9mZmVyaW5nUGlwcyh2YWx1ZTogbnVtYmVyIHwgdW5kZWZpbmVkKTogdW5rbm93bltdIHtcbiAgICBjb25zdCBjb3VudCA9IE51bWJlcih2YWx1ZSk7XG4gICAgaWYgKCFOdW1iZXIuaXNGaW5pdGUoY291bnQpIHx8IGNvdW50IDw9IDApIHJldHVybiBbXTtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh7IGxlbmd0aDogTWF0aC5taW4oTWF0aC5mbG9vcihjb3VudCksIDUpIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGlzTG9uZ1RleHQodGV4dDogc3RyaW5nIHwgdW5kZWZpbmVkLCB0aHJlc2hvbGQ6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiAodGV4dD8udHJpbSgpLmxlbmd0aCA/PyAwKSA+IHRocmVzaG9sZDtcbiAgfVxuXG4gIHByaXZhdGUgaWNvbk5hbWUodHlwZTogQ2hyaXN0aWFuaXR5Q2FyZFJlbmRlclR5cGUpOiBzdHJpbmcge1xuICAgIGlmICh0eXBlID09PSAnY2hhcmFjdGVyJykgcmV0dXJuICdjaGFyYWN0ZXInO1xuICAgIGlmICh0eXBlID09PSAnb2ZmZXJpbmcnKSByZXR1cm4gJ29mZmVyaW5nJztcbiAgICBpZiAodHlwZSA9PT0gJ2xlYWRlcicpIHJldHVybiAnbGVhZGVyJztcbiAgICByZXR1cm4gdHlwZTtcbiAgfVxufVxuIl19
|