valtech-components 4.0.472 → 4.0.473
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/organisms/mini-games/bubble-blitz-game.component.mjs +9 -18
- package/esm2022/lib/components/organisms/mini-games/chessimals-engine.mjs +16 -109
- package/esm2022/lib/components/organisms/mini-games/chessimals-game.component.mjs +74 -21
- package/esm2022/lib/components/organisms/mini-games/memory-game.component.mjs +9 -18
- package/esm2022/lib/components/organisms/mini-games/mini-games.i18n.mjs +21 -275
- package/esm2022/lib/components/organisms/mini-games/simon-game.component.mjs +9 -18
- package/esm2022/lib/components/organisms/mini-games/types.mjs +1 -1
- package/esm2022/lib/version.mjs +2 -2
- package/esm2022/mini-games/public-api.mjs +2 -34
- package/esm2022/public-api.mjs +1 -3
- package/fesm2022/valtech-components-mini-games.mjs +2 -34
- package/fesm2022/valtech-components-mini-games.mjs.map +1 -1
- package/fesm2022/valtech-components.mjs +135 -3016
- package/fesm2022/valtech-components.mjs.map +1 -1
- package/lib/components/organisms/mini-games/bubble-blitz-game.component.d.ts +0 -2
- package/lib/components/organisms/mini-games/chessimals-game.component.d.ts +5 -3
- package/lib/components/organisms/mini-games/memory-game.component.d.ts +0 -2
- package/lib/components/organisms/mini-games/simon-game.component.d.ts +0 -2
- package/lib/components/organisms/mini-games/types.d.ts +1 -131
- package/lib/version.d.ts +1 -1
- package/mini-games/public-api.d.ts +0 -4
- package/package.json +1 -2
- package/public-api.d.ts +0 -2
- package/esm2022/lib/components/organisms/mini-games/christianity-card.component.mjs +0 -260
- package/esm2022/lib/components/organisms/mini-games/christianity-game.component.mjs +0 -2253
- package/esm2022/lib/directives/light-ripple.directive.mjs +0 -57
- package/lib/components/organisms/mini-games/christianity-card.component.d.ts +0 -46
- package/lib/components/organisms/mini-games/christianity-game.component.d.ts +0 -177
- package/lib/directives/light-ripple.directive.d.ts +0 -8
- 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,260 +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
|
-
this.normalizedTypeLabel = computed(() => this.card().typeLabel.toUpperCase());
|
|
8
|
-
this.frontTemplate = computed(() => this.card().frontTemplate ?? 'genesis-classic');
|
|
9
|
-
this.isGenesisClassicTemplate = computed(() => this.frontTemplate() === 'genesis-classic' || this.frontTemplate() === 'genesis-classic-extra');
|
|
10
|
-
this.typeIconUrl = computed(() => `assets/games/christianity/icons/${this.iconName(this.card().type)}.png`);
|
|
11
|
-
this.headerMetric = computed(() => {
|
|
12
|
-
const card = this.card();
|
|
13
|
-
if (card.type === 'leader')
|
|
14
|
-
return null;
|
|
15
|
-
if (card.type === 'offering')
|
|
16
|
-
return { kind: 'pips', value: card.offeringValue ?? 0 };
|
|
17
|
-
if (typeof card.cost === 'number')
|
|
18
|
-
return { kind: 'number', value: card.cost };
|
|
19
|
-
return null;
|
|
20
|
-
});
|
|
21
|
-
this.cardStatsText = computed(() => {
|
|
22
|
-
const card = this.card();
|
|
23
|
-
if (card.type !== 'character')
|
|
24
|
-
return '';
|
|
25
|
-
return `${card.attack ?? 0} / ${card.currentHp ?? card.life ?? 0}`;
|
|
26
|
-
});
|
|
27
|
-
this.leaderLifeText = computed(() => {
|
|
28
|
-
const card = this.card();
|
|
29
|
-
const current = card.currentHp ?? card.life ?? 0;
|
|
30
|
-
const max = card.maxHp ?? card.life ?? current;
|
|
31
|
-
return `${current}/${max}`;
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
offeringPips(value) {
|
|
35
|
-
const count = Number(value);
|
|
36
|
-
if (!Number.isFinite(count) || count <= 0)
|
|
37
|
-
return [];
|
|
38
|
-
return Array.from({ length: Math.min(Math.floor(count), 5) });
|
|
39
|
-
}
|
|
40
|
-
iconName(type) {
|
|
41
|
-
if (type === 'character')
|
|
42
|
-
return 'character';
|
|
43
|
-
if (type === 'offering')
|
|
44
|
-
return 'offering';
|
|
45
|
-
if (type === 'leader')
|
|
46
|
-
return 'leader';
|
|
47
|
-
return type;
|
|
48
|
-
}
|
|
49
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChristianityCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
50
|
-
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: `
|
|
51
|
-
@if (variant() === 'back') {
|
|
52
|
-
<article class="christianity-card-render christianity-card-render--back" aria-hidden="true">
|
|
53
|
-
<span></span>
|
|
54
|
-
</article>
|
|
55
|
-
} @else {
|
|
56
|
-
<article
|
|
57
|
-
class="christianity-card-render"
|
|
58
|
-
[class.christianity-card-render--full]="variant() === 'full'"
|
|
59
|
-
[class.christianity-card-render--table]="variant() === 'table'"
|
|
60
|
-
[class.christianity-card-render--hand]="variant() === 'hand'"
|
|
61
|
-
[class.christianity-card-render--list]="variant() === 'list'"
|
|
62
|
-
[class.christianity-card-render--template-genesis-classic]="isGenesisClassicTemplate()"
|
|
63
|
-
[class.christianity-card-render--template-genesis-full-art]="frontTemplate() === 'genesis-full-art'"
|
|
64
|
-
[class.is-leader]="card().type === 'leader'"
|
|
65
|
-
[class.is-offering]="card().type === 'offering'"
|
|
66
|
-
>
|
|
67
|
-
<header class="christianity-card-render__header">
|
|
68
|
-
<span class="christianity-card-render__type-icon" aria-hidden="true">
|
|
69
|
-
<img [src]="typeIconUrl()" alt="" />
|
|
70
|
-
</span>
|
|
71
|
-
<strong>{{ card().name }}</strong>
|
|
72
|
-
@if (headerMetric(); as metric) {
|
|
73
|
-
<span class="christianity-card-render__metric" [class.is-pips]="metric.kind === 'pips'">
|
|
74
|
-
@if (metric.kind === 'pips') {
|
|
75
|
-
@for (_ of offeringPips(metric.value); track $index) {
|
|
76
|
-
<i aria-hidden="true"></i>
|
|
77
|
-
}
|
|
78
|
-
} @else {
|
|
79
|
-
{{ metric.value }}
|
|
80
|
-
}
|
|
81
|
-
</span>
|
|
82
|
-
}
|
|
83
|
-
</header>
|
|
84
|
-
|
|
85
|
-
<section class="christianity-card-render__art" [class.has-image]="card().imageUrl">
|
|
86
|
-
@if (card().imageUrl) {
|
|
87
|
-
<img [src]="card().imageUrl" [alt]="card().name" />
|
|
88
|
-
} @else {
|
|
89
|
-
<span>{{ card().name }}</span>
|
|
90
|
-
}
|
|
91
|
-
<small>{{ normalizedTypeLabel() }}</small>
|
|
92
|
-
</section>
|
|
93
|
-
|
|
94
|
-
@if (variant() === 'full') {
|
|
95
|
-
<section class="christianity-card-render__verse">
|
|
96
|
-
@if (card().verseText) {
|
|
97
|
-
<p>{{ card().verseText }}</p>
|
|
98
|
-
}
|
|
99
|
-
@if (card().scripture) {
|
|
100
|
-
<strong>{{ card().scripture }}</strong>
|
|
101
|
-
}
|
|
102
|
-
</section>
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
<section class="christianity-card-render__effect">
|
|
106
|
-
@if (card().editionIcon) {
|
|
107
|
-
<img class="christianity-card-render__edition-watermark" [src]="card().editionIcon" alt="" aria-hidden="true" />
|
|
108
|
-
}
|
|
109
|
-
<div class="christianity-card-render__stats">
|
|
110
|
-
@if (card().type === 'offering') {
|
|
111
|
-
<strong class="is-pips">
|
|
112
|
-
@for (_ of offeringPips(card().offeringValue); track $index) {
|
|
113
|
-
<i aria-hidden="true"></i>
|
|
114
|
-
}
|
|
115
|
-
</strong>
|
|
116
|
-
} @else if (card().type === 'leader') {
|
|
117
|
-
<strong>{{ leaderLifeText() }}</strong>
|
|
118
|
-
} @else if (cardStatsText()) {
|
|
119
|
-
<strong>{{ cardStatsText() }}</strong>
|
|
120
|
-
}
|
|
121
|
-
</div>
|
|
122
|
-
@if (variant() === 'full') {
|
|
123
|
-
<div class="christianity-card-render__text">
|
|
124
|
-
@if (card().abilityName) {
|
|
125
|
-
<strong>{{ card().abilityName }}</strong>
|
|
126
|
-
}
|
|
127
|
-
@if (card().abilityText || card().statusText) {
|
|
128
|
-
<p>{{ card().abilityText || card().statusText }}</p>
|
|
129
|
-
}
|
|
130
|
-
</div>
|
|
131
|
-
<span
|
|
132
|
-
class="christianity-card-render__rarity"
|
|
133
|
-
[class.is-normal]="!card().rarity || card().rarity === 'normal'"
|
|
134
|
-
[class.is-uncommon]="card().rarity === 'uncommon'"
|
|
135
|
-
[class.is-rare]="card().rarity === 'rare'"
|
|
136
|
-
[class.is-legendary]="card().rarity === 'legendary'"
|
|
137
|
-
aria-hidden="true"
|
|
138
|
-
></span>
|
|
139
|
-
}
|
|
140
|
-
</section>
|
|
141
|
-
|
|
142
|
-
@if (variant() === 'full') {
|
|
143
|
-
<footer class="christianity-card-render__footer">
|
|
144
|
-
<span>{{ card().edition ?? 'MVP' }}</span>
|
|
145
|
-
<span>{{ card().collectorNumber ?? card().id }}</span>
|
|
146
|
-
<span>{{ card().year ?? '2026' }} CHRISTIANITY</span>
|
|
147
|
-
<span>{{ card().author ?? 'MVP' }}</span>
|
|
148
|
-
</footer>
|
|
149
|
-
}
|
|
150
|
-
</article>
|
|
151
|
-
}
|
|
152
|
-
`, isInline: true, styles: [":host{--christianity-card-aspect: 5 / 7.45;--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}.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);box-shadow:0 .5rem 1.25rem #2430441a,inset 0 0 0 .18rem #ffffff9e}.christianity-card-render>*{position:relative;z-index:1}.christianity-card-render--template-genesis-classic{--christianity-frame-width: .26rem;padding:calc(.48rem + var(--christianity-frame-width));border-color:#39475733;background:linear-gradient(180deg,#aab8c7f5,#8fa0b1fa),radial-gradient(circle at 18% 0%,rgba(255,255,255,.24),transparent 42%);box-shadow:0 .5rem 1.25rem #24304421,inset 0 0 0 1px #ffffff6b,inset 0 0 0 var(--christianity-frame-width) #8797a980}.christianity-card-render--template-genesis-classic:before{content:\"\";position:absolute;inset:var(--christianity-frame-width);z-index:0;border-radius:.44rem;background:linear-gradient(180deg,#fffffffa,#f8fafcfa),radial-gradient(circle at 18% 0%,rgba(214,162,29,.1),transparent 44%);box-shadow:inset 0 0 0 1px #ffffffb8,0 .16rem .35rem #2430441a}.christianity-card-render--full{grid-template-rows:auto minmax(9rem,1.25fr) auto minmax(7rem,.9fr) auto;gap:.58rem;min-height:min(29rem,calc(100vh - 3.5rem));padding:.72rem;border-color:#2430442e;border-radius:.75rem;background:linear-gradient(180deg,#fffffff5,#f8fafcf5),radial-gradient(circle at 20% 0%,rgba(214,162,29,.18),transparent 45%);box-shadow:0 0 0 .18rem #fff4c294,0 0 2.2rem #f5c75552,0 2.4rem 5rem #102a4357,inset 0 0 0 .35rem #ffffff8c}.christianity-card-render--full.christianity-card-render--template-genesis-classic{--christianity-frame-width: .46rem;padding:calc(.72rem + var(--christianity-frame-width));border-radius:.78rem;box-shadow:0 0 0 .14rem #ffffff6b,0 0 2.2rem #f5c7552e,0 2.4rem 5rem #102a4357,inset 0 0 0 1px #ffffff5c,inset 0 0 0 var(--christianity-frame-width) #8797a994}.christianity-card-render--full.christianity-card-render--template-genesis-classic:before{border-radius:.56rem}.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{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__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:-webkit-box;overflow:hidden;overflow-wrap:anywhere;text-overflow:clip;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:clamp(.86rem,2.5vw,1.06rem);line-height:1.04}.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.25rem,5vw,1.85rem)}.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--full .christianity-card-render__metric{min-width:2.1rem;height:2.1rem;padding:0 .36rem;font-size:1.1rem}.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 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__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}.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--full .christianity-card-render__art>span{font-size:clamp(1.1rem,5vw,1.8rem)}.christianity-card-render__art small{position:absolute;right:0;bottom:.28rem;max-width:78%;padding:.1rem .34rem;overflow:hidden;border-radius:999px 0 0 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--full .christianity-card-render__art small{bottom:.55rem;min-width:5rem;padding:.16rem .48rem;font-size:.68rem;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(.72rem,2.7vw,.86rem)}.christianity-card-render__verse p,.christianity-card-render__effect p{margin:0;line-height:1.25}.christianity-card-render__verse strong{font-family:inherit;font-size:.78rem;font-weight:900}.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__edition-watermark{position:absolute;top:50%;left:50%;z-index:0;width:min(66%,7.4rem);max-width:none;opacity:.055;pointer-events:none;transform:translate(-50%,-50%)}.christianity-card-render--full .christianity-card-render__effect{align-content:start;min-height:7rem;padding:.6rem .7rem;border-radius:.45rem}.christianity-card-render--full .christianity-card-render__edition-watermark{width:min(72%,10rem);opacity:.06}.christianity-card-render__stats{position:relative;z-index:1;display:flex;gap:.65rem;min-height:1.2rem}.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--full .christianity-card-render__stats strong{margin-left:0;padding:0;background:transparent;font-size:1rem}.christianity-card-render__text{position:relative;z-index:1;display:grid;gap:.12rem}.christianity-card-render__text strong{font-size:.82rem}.christianity-card-render__text p{font-size:clamp(.78rem,2.9vw,.92rem)}.christianity-card-render__rarity{position:absolute;top:.62rem;right:.62rem;z-index:1;width:.46rem;height:.46rem;border-radius:.12rem;transform:rotate(45deg)}.christianity-card-render__rarity.is-normal{background:#d1d5db}.christianity-card-render__rarity.is-uncommon{background:#22c55e}.christianity-card-render__rarity.is-rare{background:#3b82f6}.christianity-card-render__rarity.is-legendary{background:#eab308}.christianity-card-render__footer{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:.34rem;align-items:center;color:#1f2933ad;font-size:.58rem;line-height:1;text-transform:uppercase}.christianity-card-render__footer span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 52rem){.christianity-card-render--full{min-height:min(35rem,calc(100vh - 4rem));padding:1.05rem}}\n"] }); }
|
|
153
|
-
}
|
|
154
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChristianityCardComponent, decorators: [{
|
|
155
|
-
type: Component,
|
|
156
|
-
args: [{ selector: 'val-christianity-card', standalone: true, template: `
|
|
157
|
-
@if (variant() === 'back') {
|
|
158
|
-
<article class="christianity-card-render christianity-card-render--back" aria-hidden="true">
|
|
159
|
-
<span></span>
|
|
160
|
-
</article>
|
|
161
|
-
} @else {
|
|
162
|
-
<article
|
|
163
|
-
class="christianity-card-render"
|
|
164
|
-
[class.christianity-card-render--full]="variant() === 'full'"
|
|
165
|
-
[class.christianity-card-render--table]="variant() === 'table'"
|
|
166
|
-
[class.christianity-card-render--hand]="variant() === 'hand'"
|
|
167
|
-
[class.christianity-card-render--list]="variant() === 'list'"
|
|
168
|
-
[class.christianity-card-render--template-genesis-classic]="isGenesisClassicTemplate()"
|
|
169
|
-
[class.christianity-card-render--template-genesis-full-art]="frontTemplate() === 'genesis-full-art'"
|
|
170
|
-
[class.is-leader]="card().type === 'leader'"
|
|
171
|
-
[class.is-offering]="card().type === 'offering'"
|
|
172
|
-
>
|
|
173
|
-
<header class="christianity-card-render__header">
|
|
174
|
-
<span class="christianity-card-render__type-icon" aria-hidden="true">
|
|
175
|
-
<img [src]="typeIconUrl()" alt="" />
|
|
176
|
-
</span>
|
|
177
|
-
<strong>{{ card().name }}</strong>
|
|
178
|
-
@if (headerMetric(); as metric) {
|
|
179
|
-
<span class="christianity-card-render__metric" [class.is-pips]="metric.kind === 'pips'">
|
|
180
|
-
@if (metric.kind === 'pips') {
|
|
181
|
-
@for (_ of offeringPips(metric.value); track $index) {
|
|
182
|
-
<i aria-hidden="true"></i>
|
|
183
|
-
}
|
|
184
|
-
} @else {
|
|
185
|
-
{{ metric.value }}
|
|
186
|
-
}
|
|
187
|
-
</span>
|
|
188
|
-
}
|
|
189
|
-
</header>
|
|
190
|
-
|
|
191
|
-
<section class="christianity-card-render__art" [class.has-image]="card().imageUrl">
|
|
192
|
-
@if (card().imageUrl) {
|
|
193
|
-
<img [src]="card().imageUrl" [alt]="card().name" />
|
|
194
|
-
} @else {
|
|
195
|
-
<span>{{ card().name }}</span>
|
|
196
|
-
}
|
|
197
|
-
<small>{{ normalizedTypeLabel() }}</small>
|
|
198
|
-
</section>
|
|
199
|
-
|
|
200
|
-
@if (variant() === 'full') {
|
|
201
|
-
<section class="christianity-card-render__verse">
|
|
202
|
-
@if (card().verseText) {
|
|
203
|
-
<p>{{ card().verseText }}</p>
|
|
204
|
-
}
|
|
205
|
-
@if (card().scripture) {
|
|
206
|
-
<strong>{{ card().scripture }}</strong>
|
|
207
|
-
}
|
|
208
|
-
</section>
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
<section class="christianity-card-render__effect">
|
|
212
|
-
@if (card().editionIcon) {
|
|
213
|
-
<img class="christianity-card-render__edition-watermark" [src]="card().editionIcon" alt="" aria-hidden="true" />
|
|
214
|
-
}
|
|
215
|
-
<div class="christianity-card-render__stats">
|
|
216
|
-
@if (card().type === 'offering') {
|
|
217
|
-
<strong class="is-pips">
|
|
218
|
-
@for (_ of offeringPips(card().offeringValue); track $index) {
|
|
219
|
-
<i aria-hidden="true"></i>
|
|
220
|
-
}
|
|
221
|
-
</strong>
|
|
222
|
-
} @else if (card().type === 'leader') {
|
|
223
|
-
<strong>{{ leaderLifeText() }}</strong>
|
|
224
|
-
} @else if (cardStatsText()) {
|
|
225
|
-
<strong>{{ cardStatsText() }}</strong>
|
|
226
|
-
}
|
|
227
|
-
</div>
|
|
228
|
-
@if (variant() === 'full') {
|
|
229
|
-
<div class="christianity-card-render__text">
|
|
230
|
-
@if (card().abilityName) {
|
|
231
|
-
<strong>{{ card().abilityName }}</strong>
|
|
232
|
-
}
|
|
233
|
-
@if (card().abilityText || card().statusText) {
|
|
234
|
-
<p>{{ card().abilityText || card().statusText }}</p>
|
|
235
|
-
}
|
|
236
|
-
</div>
|
|
237
|
-
<span
|
|
238
|
-
class="christianity-card-render__rarity"
|
|
239
|
-
[class.is-normal]="!card().rarity || card().rarity === 'normal'"
|
|
240
|
-
[class.is-uncommon]="card().rarity === 'uncommon'"
|
|
241
|
-
[class.is-rare]="card().rarity === 'rare'"
|
|
242
|
-
[class.is-legendary]="card().rarity === 'legendary'"
|
|
243
|
-
aria-hidden="true"
|
|
244
|
-
></span>
|
|
245
|
-
}
|
|
246
|
-
</section>
|
|
247
|
-
|
|
248
|
-
@if (variant() === 'full') {
|
|
249
|
-
<footer class="christianity-card-render__footer">
|
|
250
|
-
<span>{{ card().edition ?? 'MVP' }}</span>
|
|
251
|
-
<span>{{ card().collectorNumber ?? card().id }}</span>
|
|
252
|
-
<span>{{ card().year ?? '2026' }} CHRISTIANITY</span>
|
|
253
|
-
<span>{{ card().author ?? 'MVP' }}</span>
|
|
254
|
-
</footer>
|
|
255
|
-
}
|
|
256
|
-
</article>
|
|
257
|
-
}
|
|
258
|
-
`, styles: [":host{--christianity-card-aspect: 5 / 7.45;--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}.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);box-shadow:0 .5rem 1.25rem #2430441a,inset 0 0 0 .18rem #ffffff9e}.christianity-card-render>*{position:relative;z-index:1}.christianity-card-render--template-genesis-classic{--christianity-frame-width: .26rem;padding:calc(.48rem + var(--christianity-frame-width));border-color:#39475733;background:linear-gradient(180deg,#aab8c7f5,#8fa0b1fa),radial-gradient(circle at 18% 0%,rgba(255,255,255,.24),transparent 42%);box-shadow:0 .5rem 1.25rem #24304421,inset 0 0 0 1px #ffffff6b,inset 0 0 0 var(--christianity-frame-width) #8797a980}.christianity-card-render--template-genesis-classic:before{content:\"\";position:absolute;inset:var(--christianity-frame-width);z-index:0;border-radius:.44rem;background:linear-gradient(180deg,#fffffffa,#f8fafcfa),radial-gradient(circle at 18% 0%,rgba(214,162,29,.1),transparent 44%);box-shadow:inset 0 0 0 1px #ffffffb8,0 .16rem .35rem #2430441a}.christianity-card-render--full{grid-template-rows:auto minmax(9rem,1.25fr) auto minmax(7rem,.9fr) auto;gap:.58rem;min-height:min(29rem,calc(100vh - 3.5rem));padding:.72rem;border-color:#2430442e;border-radius:.75rem;background:linear-gradient(180deg,#fffffff5,#f8fafcf5),radial-gradient(circle at 20% 0%,rgba(214,162,29,.18),transparent 45%);box-shadow:0 0 0 .18rem #fff4c294,0 0 2.2rem #f5c75552,0 2.4rem 5rem #102a4357,inset 0 0 0 .35rem #ffffff8c}.christianity-card-render--full.christianity-card-render--template-genesis-classic{--christianity-frame-width: .46rem;padding:calc(.72rem + var(--christianity-frame-width));border-radius:.78rem;box-shadow:0 0 0 .14rem #ffffff6b,0 0 2.2rem #f5c7552e,0 2.4rem 5rem #102a4357,inset 0 0 0 1px #ffffff5c,inset 0 0 0 var(--christianity-frame-width) #8797a994}.christianity-card-render--full.christianity-card-render--template-genesis-classic:before{border-radius:.56rem}.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{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__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:-webkit-box;overflow:hidden;overflow-wrap:anywhere;text-overflow:clip;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:clamp(.86rem,2.5vw,1.06rem);line-height:1.04}.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.25rem,5vw,1.85rem)}.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--full .christianity-card-render__metric{min-width:2.1rem;height:2.1rem;padding:0 .36rem;font-size:1.1rem}.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 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__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}.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--full .christianity-card-render__art>span{font-size:clamp(1.1rem,5vw,1.8rem)}.christianity-card-render__art small{position:absolute;right:0;bottom:.28rem;max-width:78%;padding:.1rem .34rem;overflow:hidden;border-radius:999px 0 0 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--full .christianity-card-render__art small{bottom:.55rem;min-width:5rem;padding:.16rem .48rem;font-size:.68rem;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(.72rem,2.7vw,.86rem)}.christianity-card-render__verse p,.christianity-card-render__effect p{margin:0;line-height:1.25}.christianity-card-render__verse strong{font-family:inherit;font-size:.78rem;font-weight:900}.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__edition-watermark{position:absolute;top:50%;left:50%;z-index:0;width:min(66%,7.4rem);max-width:none;opacity:.055;pointer-events:none;transform:translate(-50%,-50%)}.christianity-card-render--full .christianity-card-render__effect{align-content:start;min-height:7rem;padding:.6rem .7rem;border-radius:.45rem}.christianity-card-render--full .christianity-card-render__edition-watermark{width:min(72%,10rem);opacity:.06}.christianity-card-render__stats{position:relative;z-index:1;display:flex;gap:.65rem;min-height:1.2rem}.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--full .christianity-card-render__stats strong{margin-left:0;padding:0;background:transparent;font-size:1rem}.christianity-card-render__text{position:relative;z-index:1;display:grid;gap:.12rem}.christianity-card-render__text strong{font-size:.82rem}.christianity-card-render__text p{font-size:clamp(.78rem,2.9vw,.92rem)}.christianity-card-render__rarity{position:absolute;top:.62rem;right:.62rem;z-index:1;width:.46rem;height:.46rem;border-radius:.12rem;transform:rotate(45deg)}.christianity-card-render__rarity.is-normal{background:#d1d5db}.christianity-card-render__rarity.is-uncommon{background:#22c55e}.christianity-card-render__rarity.is-rare{background:#3b82f6}.christianity-card-render__rarity.is-legendary{background:#eab308}.christianity-card-render__footer{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;gap:.34rem;align-items:center;color:#1f2933ad;font-size:.58rem;line-height:1;text-transform:uppercase}.christianity-card-render__footer span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width: 52rem){.christianity-card-render--full{min-height:min(35rem,calc(100vh - 4rem));padding:1.05rem}}\n"] }]
|
|
259
|
-
}] });
|
|
260
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hyaXN0aWFuaXR5LWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9taW5pLWdhbWVzL2NocmlzdGlhbml0eS1jYXJkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBMm1CM0QsTUFBTSxPQUFPLHlCQUF5QjtJQW5rQnRDO1FBb2tCVyxTQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBK0IsQ0FBQztRQUNyRCxZQUFPLEdBQUcsS0FBSyxDQUFnQyxPQUFPLENBQUMsQ0FBQztRQUU5Qyx3QkFBbUIsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzFFLGtCQUFhLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxhQUFhLElBQUksaUJBQWlCLENBQUMsQ0FBQztRQUMvRSw2QkFBd0IsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxLQUFLLGlCQUFpQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsS0FBSyx1QkFBdUIsQ0FBQyxDQUFDO1FBQzFJLGdCQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1DQUFtQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkcsaUJBQVksR0FBRyxRQUFRLENBQW9ELEdBQUcsRUFBRTtZQUNqRyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVE7Z0JBQUUsT0FBTyxJQUFJLENBQUM7WUFDeEMsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVU7Z0JBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDdEYsSUFBSSxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssUUFBUTtnQkFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQy9FLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLENBQUM7UUFDZ0Isa0JBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQy9DLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN6QixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssV0FBVztnQkFBRSxPQUFPLEVBQUUsQ0FBQztZQUN6QyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3JFLENBQUMsQ0FBQyxDQUFDO1FBQ2dCLG1CQUFjLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNoRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQztZQUNqRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDO1lBQy9DLE9BQU8sR0FBRyxPQUFPLElBQUksR0FBRyxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7S0FjSjtJQVpXLFlBQVksQ0FBQyxLQUF5QjtRQUM5QyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUM7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUNyRCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRU8sUUFBUSxDQUFDLElBQWdDO1FBQy9DLElBQUksSUFBSSxLQUFLLFdBQVc7WUFBRSxPQUFPLFdBQVcsQ0FBQztRQUM3QyxJQUFJLElBQUksS0FBSyxVQUFVO1lBQUUsT0FBTyxVQUFVLENBQUM7UUFDM0MsSUFBSSxJQUFJLEtBQUssUUFBUTtZQUFFLE9BQU8sUUFBUSxDQUFDO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzsrR0F0Q1UseUJBQXlCO21HQUF6Qix5QkFBeUIsK1VBaGtCMUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNHVDs7NEZBMGRVLHlCQUF5QjtrQkFua0JyQyxTQUFTOytCQUNFLHVCQUF1QixjQUNyQixJQUFJLFlBQ047Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNHVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCB0eXBlIENocmlzdGlhbml0eUNhcmRSZW5kZXJUeXBlID1cbiAgfCAnbGVhZGVyJ1xuICB8ICdjaGFyYWN0ZXInXG4gIHwgJ29mZmVyaW5nJ1xuICB8ICd3aXNkb20nXG4gIHwgJ2FjdGlvbidcbiAgfCAndG9vbCdcbiAgfCAncGxhY2UnXG4gIHwgJ2V2ZW50JztcblxuZXhwb3J0IHR5cGUgQ2hyaXN0aWFuaXR5Q2FyZFJlbmRlclZhcmlhbnQgPSAnZnVsbCcgfCAndGFibGUnIHwgJ2hhbmQnIHwgJ2xpc3QnIHwgJ2JhY2snO1xuXG5leHBvcnQgaW50ZXJmYWNlIENocmlzdGlhbml0eUNhcmRSZW5kZXJNb2RlbCB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZTogQ2hyaXN0aWFuaXR5Q2FyZFJlbmRlclR5cGU7XG4gIHR5cGVMYWJlbDogc3RyaW5nO1xuICBjb3N0PzogbnVtYmVyO1xuICBvZmZlcmluZ1ZhbHVlPzogbnVtYmVyO1xuICBhdHRhY2s/OiBudW1iZXI7XG4gIGxpZmU/OiBudW1iZXI7XG4gIGN1cnJlbnRIcD86IG51bWJlcjtcbiAgbWF4SHA/OiBudW1iZXI7XG4gIGFiaWxpdHlOYW1lPzogc3RyaW5nO1xuICBhYmlsaXR5VGV4dD86IHN0cmluZztcbiAgdmVyc2VUZXh0Pzogc3RyaW5nO1xuICBzY3JpcHR1cmU/OiBzdHJpbmc7XG4gIGVkaXRpb24/OiBzdHJpbmc7XG4gIGNvbGxlY3Rvck51bWJlcj86IHN0cmluZztcbiAgZWRpdGlvbkljb24/OiBzdHJpbmc7XG4gIHllYXI/OiBzdHJpbmc7XG4gIGF1dGhvcj86IHN0cmluZztcbiAgcmFyaXR5PzogJ25vcm1hbCcgfCAndW5jb21tb24nIHwgJ3JhcmUnIHwgJ2xlZ2VuZGFyeSc7XG4gIGltYWdlVXJsPzogc3RyaW5nO1xuICBmcm9udFRlbXBsYXRlPzogc3RyaW5nO1xuICBzdGF0dXNUZXh0Pzogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtY2hyaXN0aWFuaXR5LWNhcmQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICB0ZW1wbGF0ZTogYFxuICAgIEBpZiAodmFyaWFudCgpID09PSAnYmFjaycpIHtcbiAgICAgIDxhcnRpY2xlIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyIGNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFja1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICA8c3Bhbj48L3NwYW4+XG4gICAgICA8L2FydGljbGU+XG4gICAgfSBAZWxzZSB7XG4gICAgICA8YXJ0aWNsZVxuICAgICAgICBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlclwiXG4gICAgICAgIFtjbGFzcy5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGxdPVwidmFyaWFudCgpID09PSAnZnVsbCdcIlxuICAgICAgICBbY2xhc3MuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10YWJsZV09XCJ2YXJpYW50KCkgPT09ICd0YWJsZSdcIlxuICAgICAgICBbY2xhc3MuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1oYW5kXT1cInZhcmlhbnQoKSA9PT0gJ2hhbmQnXCJcbiAgICAgICAgW2NsYXNzLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdF09XCJ2YXJpYW50KCkgPT09ICdsaXN0J1wiXG4gICAgICAgIFtjbGFzcy5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtY2xhc3NpY109XCJpc0dlbmVzaXNDbGFzc2ljVGVtcGxhdGUoKVwiXG4gICAgICAgIFtjbGFzcy5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtZnVsbC1hcnRdPVwiZnJvbnRUZW1wbGF0ZSgpID09PSAnZ2VuZXNpcy1mdWxsLWFydCdcIlxuICAgICAgICBbY2xhc3MuaXMtbGVhZGVyXT1cImNhcmQoKS50eXBlID09PSAnbGVhZGVyJ1wiXG4gICAgICAgIFtjbGFzcy5pcy1vZmZlcmluZ109XCJjYXJkKCkudHlwZSA9PT0gJ29mZmVyaW5nJ1wiXG4gICAgICA+XG4gICAgICAgIDxoZWFkZXIgY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2hlYWRlclwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb25cIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICAgIDxpbWcgW3NyY109XCJ0eXBlSWNvblVybCgpXCIgYWx0PVwiXCIgLz5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPHN0cm9uZz57eyBjYXJkKCkubmFtZSB9fTwvc3Ryb25nPlxuICAgICAgICAgIEBpZiAoaGVhZGVyTWV0cmljKCk7IGFzIG1ldHJpYykge1xuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX21ldHJpY1wiIFtjbGFzcy5pcy1waXBzXT1cIm1ldHJpYy5raW5kID09PSAncGlwcydcIj5cbiAgICAgICAgICAgICAgQGlmIChtZXRyaWMua2luZCA9PT0gJ3BpcHMnKSB7XG4gICAgICAgICAgICAgICAgQGZvciAoXyBvZiBvZmZlcmluZ1BpcHMobWV0cmljLnZhbHVlKTsgdHJhY2sgJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICA8aSBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICB7eyBtZXRyaWMudmFsdWUgfX1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9oZWFkZXI+XG5cbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydFwiIFtjbGFzcy5oYXMtaW1hZ2VdPVwiY2FyZCgpLmltYWdlVXJsXCI+XG4gICAgICAgICAgQGlmIChjYXJkKCkuaW1hZ2VVcmwpIHtcbiAgICAgICAgICAgIDxpbWcgW3NyY109XCJjYXJkKCkuaW1hZ2VVcmxcIiBbYWx0XT1cImNhcmQoKS5uYW1lXCIgLz5cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIDxzcGFuPnt7IGNhcmQoKS5uYW1lIH19PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgICA8c21hbGw+e3sgbm9ybWFsaXplZFR5cGVMYWJlbCgpIH19PC9zbWFsbD5cbiAgICAgICAgPC9zZWN0aW9uPlxuXG4gICAgICAgIEBpZiAodmFyaWFudCgpID09PSAnZnVsbCcpIHtcbiAgICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdmVyc2VcIj5cbiAgICAgICAgICAgIEBpZiAoY2FyZCgpLnZlcnNlVGV4dCkge1xuICAgICAgICAgICAgICA8cD57eyBjYXJkKCkudmVyc2VUZXh0IH19PC9wPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmIChjYXJkKCkuc2NyaXB0dXJlKSB7XG4gICAgICAgICAgICAgIDxzdHJvbmc+e3sgY2FyZCgpLnNjcmlwdHVyZSB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvc2VjdGlvbj5cbiAgICAgICAgfVxuXG4gICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZmZlY3RcIj5cbiAgICAgICAgICBAaWYgKGNhcmQoKS5lZGl0aW9uSWNvbikge1xuICAgICAgICAgICAgPGltZyBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZWRpdGlvbi13YXRlcm1hcmtcIiBbc3JjXT1cImNhcmQoKS5lZGl0aW9uSWNvblwiIGFsdD1cIlwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiIC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzXCI+XG4gICAgICAgICAgICBAaWYgKGNhcmQoKS50eXBlID09PSAnb2ZmZXJpbmcnKSB7XG4gICAgICAgICAgICAgIDxzdHJvbmcgY2xhc3M9XCJpcy1waXBzXCI+XG4gICAgICAgICAgICAgICAgQGZvciAoXyBvZiBvZmZlcmluZ1BpcHMoY2FyZCgpLm9mZmVyaW5nVmFsdWUpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgIDxpIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvc3Ryb25nPlxuICAgICAgICAgICAgfSBAZWxzZSBpZiAoY2FyZCgpLnR5cGUgPT09ICdsZWFkZXInKSB7XG4gICAgICAgICAgICAgIDxzdHJvbmc+e3sgbGVhZGVyTGlmZVRleHQoKSB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgfSBAZWxzZSBpZiAoY2FyZFN0YXRzVGV4dCgpKSB7XG4gICAgICAgICAgICAgIDxzdHJvbmc+e3sgY2FyZFN0YXRzVGV4dCgpIH19PC9zdHJvbmc+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgQGlmICh2YXJpYW50KCkgPT09ICdmdWxsJykge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdGV4dFwiPlxuICAgICAgICAgICAgICBAaWYgKGNhcmQoKS5hYmlsaXR5TmFtZSkge1xuICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgY2FyZCgpLmFiaWxpdHlOYW1lIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQGlmIChjYXJkKCkuYWJpbGl0eVRleHQgfHwgY2FyZCgpLnN0YXR1c1RleHQpIHtcbiAgICAgICAgICAgICAgICA8cD57eyBjYXJkKCkuYWJpbGl0eVRleHQgfHwgY2FyZCgpLnN0YXR1c1RleHQgfX08L3A+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3Jhcml0eVwiXG4gICAgICAgICAgICAgIFtjbGFzcy5pcy1ub3JtYWxdPVwiIWNhcmQoKS5yYXJpdHkgfHwgY2FyZCgpLnJhcml0eSA9PT0gJ25vcm1hbCdcIlxuICAgICAgICAgICAgICBbY2xhc3MuaXMtdW5jb21tb25dPVwiY2FyZCgpLnJhcml0eSA9PT0gJ3VuY29tbW9uJ1wiXG4gICAgICAgICAgICAgIFtjbGFzcy5pcy1yYXJlXT1cImNhcmQoKS5yYXJpdHkgPT09ICdyYXJlJ1wiXG4gICAgICAgICAgICAgIFtjbGFzcy5pcy1sZWdlbmRhcnldPVwiY2FyZCgpLnJhcml0eSA9PT0gJ2xlZ2VuZGFyeSdcIlxuICAgICAgICAgICAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgICAgICAgICAgPjwvc3Bhbj5cbiAgICAgICAgICB9XG4gICAgICAgIDwvc2VjdGlvbj5cblxuICAgICAgICBAaWYgKHZhcmlhbnQoKSA9PT0gJ2Z1bGwnKSB7XG4gICAgICAgICAgPGZvb3RlciBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZm9vdGVyXCI+XG4gICAgICAgICAgICA8c3Bhbj57eyBjYXJkKCkuZWRpdGlvbiA/PyAnTVZQJyB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuPnt7IGNhcmQoKS5jb2xsZWN0b3JOdW1iZXIgPz8gY2FyZCgpLmlkIH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4+e3sgY2FyZCgpLnllYXIgPz8gJzIwMjYnIH19IENIUklTVElBTklUWTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuPnt7IGNhcmQoKS5hdXRob3IgPz8gJ01WUCcgfX08L3NwYW4+XG4gICAgICAgICAgPC9mb290ZXI+XG4gICAgICAgIH1cbiAgICAgIDwvYXJ0aWNsZT5cbiAgICB9XG4gIGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIDpob3N0IHtcbiAgICAgICAgLS1jaHJpc3RpYW5pdHktY2FyZC1hc3BlY3Q6IDUgLyA3LjQ1O1xuICAgICAgICAtLWNocmlzdGlhbml0eS1jYXJkLWJhY2s6XG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgxNiwgNDIsIDY3LCAwLjE2KSwgcmdiYSgxNiwgNDIsIDY3LCAwLjAzKSksXG4gICAgICAgICAgcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudCg0NWRlZywgI2RiZWFmZSAwIDAuMzNyZW0sICNmZmZmZmYgMC4zM3JlbSAwLjY2cmVtKTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICAgICAgICBnYXA6IDAuMjhyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIGFzcGVjdC1yYXRpbzogdmFyKC0tY2hyaXN0aWFuaXR5LWNhcmQtYXNwZWN0KTtcbiAgICAgICAgcGFkZGluZzogMC40OHJlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNiwgNDgsIDY4LCAwLjE2KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC41MnJlbTtcbiAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTgpLCByZ2JhKDI0OCwgMjUwLCAyNTIsIDAuOTgpKSxcbiAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDE4JSAwJSwgcmdiYSgyMTQsIDE2MiwgMjksIDAuMTIpLCB0cmFuc3BhcmVudCA0NCUpO1xuICAgICAgICBjb2xvcjogdmFyKC0tdmFsLXRleHQtY29sb3IsICMxZjI5MzMpO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMC41cmVtIDEuMjVyZW0gcmdiYSgzNiwgNDgsIDY4LCAwLjEpLFxuICAgICAgICAgIGluc2V0IDAgMCAwIDAuMThyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYyKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlciA+ICoge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtY2xhc3NpYyB7XG4gICAgICAgIC0tY2hyaXN0aWFuaXR5LWZyYW1lLXdpZHRoOiAwLjI2cmVtO1xuICAgICAgICBwYWRkaW5nOiBjYWxjKDAuNDhyZW0gKyB2YXIoLS1jaHJpc3RpYW5pdHktZnJhbWUtd2lkdGgpKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDU3LCA3MSwgODcsIDAuMik7XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgxNzAsIDE4NCwgMTk5LCAwLjk2KSwgcmdiYSgxNDMsIDE2MCwgMTc3LCAwLjk4KSksXG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAxOCUgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCksIHRyYW5zcGFyZW50IDQyJSk7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwLjVyZW0gMS4yNXJlbSByZ2JhKDM2LCA0OCwgNjgsIDAuMTMpLFxuICAgICAgICAgIGluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDIpLFxuICAgICAgICAgIGluc2V0IDAgMCAwIHZhcigtLWNocmlzdGlhbml0eS1mcmFtZS13aWR0aCkgcmdiYSgxMzUsIDE1MSwgMTY5LCAwLjUpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWNsYXNzaWM6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiB2YXIoLS1jaHJpc3RpYW5pdHktZnJhbWUtd2lkdGgpO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiBjYWxjKDAuNTJyZW0gLSAwLjA4cmVtKTtcbiAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTgpLCByZ2JhKDI0OCwgMjUwLCAyNTIsIDAuOTgpKSxcbiAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDE4JSAwJSwgcmdiYSgyMTQsIDE2MiwgMjksIDAuMSksIHRyYW5zcGFyZW50IDQ0JSk7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgaW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43MiksXG4gICAgICAgICAgMCAwLjE2cmVtIDAuMzVyZW0gcmdiYSgzNiwgNDgsIDY4LCAwLjEpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIG1pbm1heCg5cmVtLCAxLjI1ZnIpIGF1dG8gbWlubWF4KDdyZW0sIDAuOWZyKSBhdXRvO1xuICAgICAgICBnYXA6IDAuNThyZW07XG4gICAgICAgIG1pbi1oZWlnaHQ6IG1pbigyOXJlbSwgY2FsYygxMDB2aCAtIDMuNXJlbSkpO1xuICAgICAgICBwYWRkaW5nOiAwLjcycmVtO1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMzYsIDQ4LCA2OCwgMC4xOCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNzVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk2KSwgcmdiYSgyNDgsIDI1MCwgMjUyLCAwLjk2KSksXG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAyMCUgMCUsIHJnYmEoMjE0LCAxNjIsIDI5LCAwLjE4KSwgdHJhbnNwYXJlbnQgNDUlKTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgMCAwLjE4cmVtIHJnYmEoMjU1LCAyNDQsIDE5NCwgMC41OCksXG4gICAgICAgICAgMCAwIDIuMnJlbSByZ2JhKDI0NSwgMTk5LCA4NSwgMC4zMiksXG4gICAgICAgICAgMCAyLjRyZW0gNXJlbSByZ2JhKDE2LCA0MiwgNjcsIDAuMzQpLFxuICAgICAgICAgIGluc2V0IDAgMCAwIDAuMzVyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjU1KTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtY2xhc3NpYyB7XG4gICAgICAgIC0tY2hyaXN0aWFuaXR5LWZyYW1lLXdpZHRoOiAwLjQ2cmVtO1xuICAgICAgICBwYWRkaW5nOiBjYWxjKDAuNzJyZW0gKyB2YXIoLS1jaHJpc3RpYW5pdHktZnJhbWUtd2lkdGgpKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC43OHJlbTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgMCAwLjE0cmVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40MiksXG4gICAgICAgICAgMCAwIDIuMnJlbSByZ2JhKDI0NSwgMTk5LCA4NSwgMC4xOCksXG4gICAgICAgICAgMCAyLjRyZW0gNXJlbSByZ2JhKDE2LCA0MiwgNjcsIDAuMzQpLFxuICAgICAgICAgIGluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzYpLFxuICAgICAgICAgIGluc2V0IDAgMCAwIHZhcigtLWNocmlzdGlhbml0eS1mcmFtZS13aWR0aCkgcmdiYSgxMzUsIDE1MSwgMTY5LCAwLjU4KTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtY2xhc3NpYzo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC41NnJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGVtcGxhdGUtZ2VuZXNpcy1mdWxsLWFydCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSg5LCAxMywgMjEsIDAuNTgpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMTExODI3O1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgdGV4dC1zaGFkb3c6IDAgMC4wOHJlbSAwLjE4cmVtIHJnYmEoMCwgMCwgMCwgMC43Mik7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwLjdyZW0gMS40NXJlbSByZ2JhKDksIDEzLCAyMSwgMC4yKSxcbiAgICAgICAgICBpbnNldCAwIDAgMS4ycmVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGVtcGxhdGUtZ2VuZXNpcy1mdWxsLWFydCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19hcnQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM2cmVtO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIGluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTYpLFxuICAgICAgICAgIGluc2V0IDAgLTJyZW0gMi41cmVtIHJnYmEoOSwgMTMsIDIxLCAwLjMpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWZ1bGwtYXJ0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2VmZmVjdCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoOSwgMTMsIDIxLCAwLjU4KTtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWZ1bGwtYXJ0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3ZlcnNlIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtZnVsbC1hcnQgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgc3Ryb25nIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICAgICAgICBjb2xvcjogIzFmMjkzMztcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWZ1bGwtYXJ0IHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIG1pbm1heCgxNHJlbSwgMWZyKSBhdXRvIG1pbm1heCg4cmVtLCBhdXRvKSBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiBtaW4oMzVyZW0sIGNhbGMoMTAwdmggLSA0cmVtKSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNzJyZW07XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA1MCUgOCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNiksIHRyYW5zcGFyZW50IDM4JSksXG4gICAgICAgICAgIzA5MGQxNTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAgMCAwLjEycmVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMiksXG4gICAgICAgICAgMCAyLjRyZW0gNXJlbSByZ2JhKDksIDEzLCAyMSwgMC40OCksXG4gICAgICAgICAgaW5zZXQgMCAwIDEuOHJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTQpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1iYWNrIHtcbiAgICAgICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMC41NXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tY2hyaXN0aWFuaXR5LWNhcmQtYmFjayk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMC44cmVtIDEuNTVyZW0gcmdiYSgzNiwgNDgsIDY4LCAwLjE0KTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFjazo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDAuNXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxNiwgNDIsIDY3LCAwLjEyKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zOHJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE4KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KSk7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDAuMTJyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9faGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIG1pbm1heCgwLCAxZnIpIGF1dG87XG4gICAgICAgIGdhcDogMC4zNHJlbTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24sXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdHlwZS1pY29uIHtcbiAgICAgICAgd2lkdGg6IDEuMnJlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjJyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMzYsIDQ4LCA2OCwgMC4wOCk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbiBpbWcge1xuICAgICAgICB3aWR0aDogMC44MnJlbTtcbiAgICAgICAgaGVpZ2h0OiAwLjgycmVtO1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19oZWFkZXIgc3Ryb25nIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGNsaXA7XG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XG4gICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgwLjg2cmVtLCAyLjV2dywgMS4wNnJlbSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjA0O1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbiB7XG4gICAgICAgIHdpZHRoOiAxLjZyZW07XG4gICAgICAgIGhlaWdodDogMS42cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbiBpbWcge1xuICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2hlYWRlciBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuMjVyZW0sIDV2dywgMS44NXJlbSk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX21ldHJpYyB7XG4gICAgICAgIG1pbi13aWR0aDogMS41MnJlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjUycmVtO1xuICAgICAgICBwYWRkaW5nOiAwIDAuMjRyZW07XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmQ5MWE7XG4gICAgICAgIGNvbG9yOiAjMjQzMDQ0O1xuICAgICAgICBmb250LXNpemU6IDAuODZyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIC0wLjA4cmVtIDAgcmdiYSg4MiwgNjQsIDI4LCAwLjE4KTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMge1xuICAgICAgICBtaW4td2lkdGg6IDIuMXJlbTtcbiAgICAgICAgaGVpZ2h0OiAyLjFyZW07XG4gICAgICAgIHBhZGRpbmc6IDAgMC4zNnJlbTtcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX21ldHJpYy5pcy1waXBzLFxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgLmlzLXBpcHMge1xuICAgICAgICBncmlkLWF1dG8tZmxvdzogY29sdW1uO1xuICAgICAgICBnYXA6IDAuMTZyZW07XG4gICAgICAgIG1pbi13aWR0aDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMCAwLjI4cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMgaSxcbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDAuNzJyZW07XG4gICAgICAgIGhlaWdodDogMC43MnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCAzNCUgMjglLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSkgMCAwLjEycmVtLCB0cmFuc3BhcmVudCAwLjEzcmVtKSxcbiAgICAgICAgICAjZmZkOTFhO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIGluc2V0IDAgLTAuMDhyZW0gMCByZ2JhKDgyLCA2NCwgMjgsIDAuMTgpLFxuICAgICAgICAgIDAgMC4xMnJlbSAwLjI0cmVtIHJnYmEoMTYsIDQyLCA2NywgMC4xKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBwbGFjZS1pdGVtczogY2VudGVyO1xuICAgICAgICBtaW4taGVpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM2cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoOTUsIDExMSwgNDIsIDAuMTgpLCByZ2JhKDIxNCwgMTYyLCAyOSwgMC4xNCkpLFxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgNTAlIDE4JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcyKSwgdHJhbnNwYXJlbnQgNDglKSxcbiAgICAgICAgICAjZGJlN2VmO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggcmdiYSgzNiwgNDgsIDY4LCAwLjA4KTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0IGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19hcnQgPiBzcGFuIHtcbiAgICAgICAgbWF4LXdpZHRoOiA3OCU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGNvbG9yOiByZ2JhKDM2LCA0OCwgNjgsIDAuNDgpO1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuODJyZW0sIDIuMnZ3LCAxLjA1cmVtKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0ID4gc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4xcmVtLCA1dncsIDEuOHJlbSk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCBzbWFsbCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMC4yOHJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiA3OCU7XG4gICAgICAgIHBhZGRpbmc6IDAuMXJlbSAwLjM0cmVtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweCAwIDAgOTk5cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICAgICAgY29sb3I6IHJnYmEoMzEsIDQxLCA1MSwgMC42Nik7XG4gICAgICAgIGZvbnQtc2l6ZTogMC40OHJlbTtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0IHNtYWxsIHtcbiAgICAgICAgYm90dG9tOiAwLjU1cmVtO1xuICAgICAgICBtaW4td2lkdGg6IDVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMTZyZW0gMC40OHJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjY4cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3ZlcnNlLFxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZWZmZWN0IHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAwLjMycmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX192ZXJzZSB7XG4gICAgICAgIGNvbG9yOiAjMTcxOTIzO1xuICAgICAgICBmb250LWZhbWlseTogR2VvcmdpYSwgJ1RpbWVzIE5ldyBSb21hbicsIHNlcmlmO1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuNzJyZW0sIDIuN3Z3LCAwLjg2cmVtKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdmVyc2UgcCxcbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2VmZmVjdCBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdmVyc2Ugc3Ryb25nIHtcbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZWZmZWN0IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEuNDVyZW07XG4gICAgICAgIHBhZGRpbmc6IDAuMjRyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzRyZW07XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA1MCUgNzAlLCByZ2JhKDM2LCA0OCwgNjgsIDAuMDYpLCB0cmFuc3BhcmVudCA0NCUpLFxuICAgICAgICAgIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44Nik7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2VkaXRpb24td2F0ZXJtYXJrIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICB3aWR0aDogbWluKDY2JSwgNy40cmVtKTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBvcGFjaXR5OiAwLjA1NTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2VmZmVjdCB7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IHN0YXJ0O1xuICAgICAgICBtaW4taGVpZ2h0OiA3cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjZyZW0gMC43cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjQ1cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2VkaXRpb24td2F0ZXJtYXJrIHtcbiAgICAgICAgd2lkdGg6IG1pbig3MiUsIDEwcmVtKTtcbiAgICAgICAgb3BhY2l0eTogMC4wNjtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMC42NXJlbTtcbiAgICAgICAgbWluLWhlaWdodDogMS4ycmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19zdGF0cyBzdHJvbmcge1xuICAgICAgICBqdXN0aWZ5LXNlbGY6IGVuZDtcbiAgICAgICAgYWxpZ24tc2VsZjogZW5kO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgcGFkZGluZzogMC4xMnJlbSAwLjMycmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICAgICAgYmFja2dyb3VuZDogI2VkZjJmNztcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgwLjY2cmVtLCAydncsIDAuODJyZW0pO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4wNTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19zdGF0cyBzdHJvbmcge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ2FwOiAwLjEycmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190ZXh0IHN0cm9uZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MnJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdGV4dCBwIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgwLjc4cmVtLCAyLjl2dywgMC45MnJlbSk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3Jhcml0eSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwLjYycmVtO1xuICAgICAgICByaWdodDogMC42MnJlbTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgd2lkdGg6IDAuNDZyZW07XG4gICAgICAgIGhlaWdodDogMC40NnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4xMnJlbTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19yYXJpdHkuaXMtbm9ybWFsIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2QxZDVkYjtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fcmFyaXR5LmlzLXVuY29tbW9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzIyYzU1ZTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fcmFyaXR5LmlzLXJhcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjM2I4MmY2O1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19yYXJpdHkuaXMtbGVnZW5kYXJ5IHtcbiAgICAgICAgYmFja2dyb3VuZDogI2VhYjMwODtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZm9vdGVyIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIGF1dG8gbWlubWF4KDAsIDFmcikgYXV0bztcbiAgICAgICAgZ2FwOiAwLjM0cmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjb2xvcjogcmdiYSgzMSwgNDEsIDUxLCAwLjY4KTtcbiAgICAgICAgZm9udC1zaXplOiAwLjU4cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZm9vdGVyIHNwYW4ge1xuICAgICAgICBtaW4td2lkdGg6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTJyZW0pIHtcbiAgICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCB7XG4gICAgICAgICAgbWluLWhlaWdodDogbWluKDM1cmVtLCBjYWxjKDEwMHZoIC0gNHJlbSkpO1xuICAgICAgICAgIHBhZGRpbmc6IDEuMDVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICBgLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBDaHJpc3RpYW5pdHlDYXJkQ29tcG9uZW50IHtcbiAgcmVhZG9ubHkgY2FyZCA9IGlucHV0LnJlcXVpcmVkPENocmlzdGlhbml0eUNhcmRSZW5kZXJNb2RlbD4oKTtcbiAgcmVhZG9ubHkgdmFyaWFudCA9IGlucHV0PENocmlzdGlhbml0eUNhcmRSZW5kZXJWYXJpYW50PigndGFibGUnKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbm9ybWFsaXplZFR5cGVMYWJlbCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuY2FyZCgpLnR5cGVMYWJlbC50b1VwcGVyQ2FzZSgpKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGZyb250VGVtcGxhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmNhcmQoKS5mcm9udFRlbXBsYXRlID8/ICdnZW5lc2lzLWNsYXNzaWMnKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGlzR2VuZXNpc0NsYXNzaWNUZW1wbGF0ZSA9IGNvbXB1dGVkKCgpID0+IHRoaXMuZnJvbnRUZW1wbGF0ZSgpID09PSAnZ2VuZXNpcy1jbGFzc2ljJyB8fCB0aGlzLmZyb250VGVtcGxhdGUoKSA9PT0gJ2dlbmVzaXMtY2xhc3NpYy1leHRyYScpO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgdHlwZUljb25VcmwgPSBjb21wdXRlZCgoKSA9PiBgYXNzZXRzL2dhbWVzL2NocmlzdGlhbml0eS9pY29ucy8ke3RoaXMuaWNvbk5hbWUodGhpcy5jYXJkKCkudHlwZSl9LnBuZ2ApO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgaGVhZGVyTWV0cmljID0gY29tcHV0ZWQ8eyBraW5kOiAnbnVtYmVyJyB8ICdwaXBzJzsgdmFsdWU6IG51bWJlciB9IHwgbnVsbD4oKCkgPT4ge1xuICAgIGNvbnN0IGNhcmQgPSB0aGlzLmNhcmQoKTtcbiAgICBpZiAoY2FyZC50eXBlID09PSAnbGVhZGVyJykgcmV0dXJuIG51bGw7XG4gICAgaWYgKGNhcmQudHlwZSA9PT0gJ29mZmVyaW5nJykgcmV0dXJuIHsga2luZDogJ3BpcHMnLCB2YWx1ZTogY2FyZC5vZmZlcmluZ1ZhbHVlID8/IDAgfTtcbiAgICBpZiAodHlwZW9mIGNhcmQuY29zdCA9PT0gJ251bWJlcicpIHJldHVybiB7IGtpbmQ6ICdudW1iZXInLCB2YWx1ZTogY2FyZC5jb3N0IH07XG4gICAgcmV0dXJuIG51bGw7XG4gIH0pO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2FyZFN0YXRzVGV4dCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBjYXJkID0gdGhpcy5jYXJkKCk7XG4gICAgaWYgKGNhcmQudHlwZSAhPT0gJ2NoYXJhY3RlcicpIHJldHVybiAnJztcbiAgICByZXR1cm4gYCR7Y2FyZC5hdHRhY2sgPz8gMH0gLyAke2NhcmQuY3VycmVudEhwID8/IGNhcmQubGlmZSA/PyAwfWA7XG4gIH0pO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbGVhZGVyTGlmZVRleHQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY2FyZCA9IHRoaXMuY2FyZCgpO1xuICAgIGNvbnN0IGN1cnJlbnQgPSBjYXJkLmN1cnJlbnRIcCA/PyBjYXJkLmxpZmUgPz8gMDtcbiAgICBjb25zdCBtYXggPSBjYXJkLm1heEhwID8/IGNhcmQubGlmZSA/PyBjdXJyZW50O1xuICAgIHJldHVybiBgJHtjdXJyZW50fS8ke21heH1gO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgb2ZmZXJpbmdQaXBzKHZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQpOiB1bmtub3duW10ge1xuICAgIGNvbnN0IGNvdW50ID0gTnVtYmVyKHZhbHVlKTtcbiAgICBpZiAoIU51bWJlci5pc0Zpbml0ZShjb3VudCkgfHwgY291bnQgPD0gMCkgcmV0dXJuIFtdO1xuICAgIHJldHVybiBBcnJheS5mcm9tKHsgbGVuZ3RoOiBNYXRoLm1pbihNYXRoLmZsb29yKGNvdW50KSwgNSkgfSk7XG4gIH1cblxuICBwcml2YXRlIGljb25OYW1lKHR5cGU6IENocmlzdGlhbml0eUNhcmRSZW5kZXJUeXBlKTogc3RyaW5nIHtcbiAgICBpZiAodHlwZSA9PT0gJ2NoYXJhY3RlcicpIHJldHVybiAnY2hhcmFjdGVyJztcbiAgICBpZiAodHlwZSA9PT0gJ29mZmVyaW5nJykgcmV0dXJuICdvZmZlcmluZyc7XG4gICAgaWYgKHR5cGUgPT09ICdsZWFkZXInKSByZXR1cm4gJ2xlYWRlcic7XG4gICAgcmV0dXJuIHR5cGU7XG4gIH1cbn1cbiJdfQ==
|