valtech-components 4.0.478 → 4.0.480

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.
Files changed (58) hide show
  1. package/esm2022/lib/components/organisms/mini-games/bubble-blitz-game.component.mjs +9 -18
  2. package/esm2022/lib/components/organisms/mini-games/chessimals-engine.mjs +16 -109
  3. package/esm2022/lib/components/organisms/mini-games/chessimals-game.component.mjs +101 -26
  4. package/esm2022/lib/components/organisms/mini-games/memory-game.component.mjs +9 -18
  5. package/esm2022/lib/components/organisms/mini-games/mini-games.i18n.mjs +47 -283
  6. package/esm2022/lib/components/organisms/mini-games/simon-game.component.mjs +9 -18
  7. package/esm2022/lib/components/organisms/mini-games/types.mjs +1 -1
  8. package/esm2022/lib/version.mjs +2 -2
  9. package/esm2022/mini-games/public-api.mjs +2 -34
  10. package/esm2022/public-api.mjs +1 -3
  11. package/fesm2022/valtech-components-mini-games.mjs +2 -34
  12. package/fesm2022/valtech-components-mini-games.mjs.map +1 -1
  13. package/fesm2022/valtech-components.mjs +188 -3037
  14. package/fesm2022/valtech-components.mjs.map +1 -1
  15. package/lib/components/organisms/mini-games/bubble-blitz-game.component.d.ts +0 -2
  16. package/lib/components/organisms/mini-games/chessimals-game.component.d.ts +6 -3
  17. package/lib/components/organisms/mini-games/memory-game.component.d.ts +0 -2
  18. package/lib/components/organisms/mini-games/simon-game.component.d.ts +0 -2
  19. package/lib/components/organisms/mini-games/types.d.ts +1 -131
  20. package/lib/version.d.ts +1 -1
  21. package/mini-games/public-api.d.ts +0 -4
  22. package/package.json +1 -2
  23. package/public-api.d.ts +0 -2
  24. package/esm2022/lib/components/organisms/mini-games/christianity-card.component.mjs +0 -268
  25. package/esm2022/lib/components/organisms/mini-games/christianity-game.component.mjs +0 -2253
  26. package/esm2022/lib/directives/light-ripple.directive.mjs +0 -57
  27. package/lib/components/organisms/mini-games/christianity-card.component.d.ts +0 -46
  28. package/lib/components/organisms/mini-games/christianity-game.component.d.ts +0 -177
  29. package/lib/directives/light-ripple.directive.d.ts +0 -8
  30. package/src/lib/assets/games/christianity/card-symbol.svg +0 -51
  31. package/src/lib/assets/games/christianity/card-template-reference/front.html +0 -114
  32. package/src/lib/assets/games/christianity/card-template-reference/front.style.css +0 -352
  33. package/src/lib/assets/games/christianity/data/01-genesis.bible-reference-suggestions.csv +0 -191
  34. package/src/lib/assets/games/christianity/data/01-genesis.bible-verses.nbv-open.csv +0 -170
  35. package/src/lib/assets/games/christianity/data/01-genesis.cards.csv +0 -281
  36. package/src/lib/assets/games/christianity/data/01-genesis.cards.i18n.csv +0 -281
  37. package/src/lib/assets/games/christianity/data/01-genesis.cards.json +0 -16453
  38. package/src/lib/assets/games/christianity/data/01-genesis.unassigned-effects.csv +0 -49
  39. package/src/lib/assets/games/christianity/data/README.md +0 -40
  40. package/src/lib/assets/games/christianity/data/data-con-habilides.csv +0 -273
  41. package/src/lib/assets/games/christianity/data/habilidades-por-tipo.xlsx +0 -0
  42. package/src/lib/assets/games/christianity/data/listado-edicion.csv +0 -281
  43. package/src/lib/assets/games/christianity/editions/1/cards/.gitkeep +0 -1
  44. package/src/lib/assets/games/christianity/editions/1/cards/PLACEHOLDER.png +0 -0
  45. package/src/lib/assets/games/christianity/editions/README.md +0 -34
  46. package/src/lib/assets/games/christianity/icons/1-icon.png +0 -0
  47. package/src/lib/assets/games/christianity/icons/action.png +0 -0
  48. package/src/lib/assets/games/christianity/icons/character.png +0 -0
  49. package/src/lib/assets/games/christianity/icons/event.png +0 -0
  50. package/src/lib/assets/games/christianity/icons/leader.png +0 -0
  51. package/src/lib/assets/games/christianity/icons/offering.png +0 -0
  52. package/src/lib/assets/games/christianity/icons/place.png +0 -0
  53. package/src/lib/assets/games/christianity/icons/tool.png +0 -0
  54. package/src/lib/assets/games/christianity/icons/wisdom.png +0 -0
  55. package/src/lib/assets/games/christianity/sources/README.md +0 -16
  56. package/src/lib/assets/games/christianity/sources/spaonbv_vpl.txt +0 -29102
  57. package/src/lib/assets/games/christianity/sources/spaonbv_vpl.xml +0 -29104
  58. package/src/lib/assets/games/christianity/spaonbv.txt +0 -52
@@ -1,268 +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
74
- class="christianity-card-render__metric"
75
- [class.is-pips]="metric.kind === 'pips'"
76
- [class.is-offering-value]="card().type === 'offering'"
77
- >
78
- @if (metric.kind === 'pips') {
79
- @for (_ of offeringPips(metric.value); track $index) {
80
- <i aria-hidden="true"></i>
81
- }
82
- } @else {
83
- {{ metric.value }}
84
- }
85
- </span>
86
- }
87
- </header>
88
-
89
- <section class="christianity-card-render__art" [class.has-image]="card().imageUrl">
90
- @if (card().imageUrl) {
91
- <img [src]="card().imageUrl" [alt]="card().name" />
92
- } @else {
93
- <span>{{ card().name }}</span>
94
- }
95
- <small>{{ normalizedTypeLabel() }}</small>
96
- </section>
97
-
98
- @if (variant() === 'full') {
99
- <section class="christianity-card-render__verse">
100
- @if (card().verseText) {
101
- <p>{{ card().verseText }}</p>
102
- }
103
- @if (card().scripture) {
104
- <strong>{{ card().scripture }}</strong>
105
- }
106
- </section>
107
- }
108
-
109
- <section class="christianity-card-render__effect">
110
- @if (card().editionIcon) {
111
- <img class="christianity-card-render__edition-watermark" [src]="card().editionIcon" alt="" aria-hidden="true" />
112
- }
113
- <div class="christianity-card-render__stats">
114
- @if (card().type === 'offering') {
115
- <strong class="is-pips">
116
- @for (_ of offeringPips(card().offeringValue); track $index) {
117
- <i aria-hidden="true"></i>
118
- }
119
- </strong>
120
- } @else if (card().type === 'leader') {
121
- <strong>{{ leaderLifeText() }}</strong>
122
- } @else if (cardStatsText()) {
123
- <strong>{{ cardStatsText() }}</strong>
124
- }
125
- </div>
126
- @if (variant() === 'full') {
127
- <div class="christianity-card-render__text">
128
- @if (card().abilityName) {
129
- <strong>{{ card().abilityName }}</strong>
130
- }
131
- @if (card().abilityText || card().statusText) {
132
- <p>{{ card().abilityText || card().statusText }}</p>
133
- }
134
- </div>
135
- <span
136
- class="christianity-card-render__rarity"
137
- [class.is-normal]="!card().rarity || card().rarity === 'normal'"
138
- [class.is-uncommon]="card().rarity === 'uncommon'"
139
- [class.is-rare]="card().rarity === 'rare'"
140
- [class.is-legendary]="card().rarity === 'legendary'"
141
- aria-hidden="true"
142
- ></span>
143
- }
144
- </section>
145
-
146
- @if (variant() === 'full') {
147
- <footer class="christianity-card-render__footer">
148
- <span>{{ card().edition ?? 'MVP' }}</span>
149
- <span>{{ card().collectorNumber ?? card().id }}</span>
150
- <span>{{ card().year ?? '2026' }} CHRISTIANITY</span>
151
- <span>{{ card().author ?? 'MVP' }}</span>
152
- </footer>
153
- }
154
- </article>
155
- }
156
- `, 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:0;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--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__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--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;-webkit-line-clamp:2}.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--list .christianity-card-render__metric{min-width:1.2rem;height:1.2rem;padding:0 .18rem;font-size:.7rem}.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--full .christianity-card-render__metric.is-offering-value{display:none}.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--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}.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--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--list .christianity-card-render__art small{bottom:.2rem;padding:.08rem .26rem;font-size:.42rem}.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--list .christianity-card-render__effect{min-height:1.26rem;padding:.16rem;border-radius:.28rem}.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--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--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}: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{min-height:0;padding:1.05rem}}\n"] }); }
157
- }
158
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ChristianityCardComponent, decorators: [{
159
- type: Component,
160
- args: [{ selector: 'val-christianity-card', standalone: true, template: `
161
- @if (variant() === 'back') {
162
- <article class="christianity-card-render christianity-card-render--back" aria-hidden="true">
163
- <span></span>
164
- </article>
165
- } @else {
166
- <article
167
- class="christianity-card-render"
168
- [class.christianity-card-render--full]="variant() === 'full'"
169
- [class.christianity-card-render--table]="variant() === 'table'"
170
- [class.christianity-card-render--hand]="variant() === 'hand'"
171
- [class.christianity-card-render--list]="variant() === 'list'"
172
- [class.christianity-card-render--template-genesis-classic]="isGenesisClassicTemplate()"
173
- [class.christianity-card-render--template-genesis-full-art]="frontTemplate() === 'genesis-full-art'"
174
- [class.is-leader]="card().type === 'leader'"
175
- [class.is-offering]="card().type === 'offering'"
176
- >
177
- <header class="christianity-card-render__header">
178
- <span class="christianity-card-render__type-icon" aria-hidden="true">
179
- <img [src]="typeIconUrl()" alt="" />
180
- </span>
181
- <strong>{{ card().name }}</strong>
182
- @if (headerMetric(); as metric) {
183
- <span
184
- class="christianity-card-render__metric"
185
- [class.is-pips]="metric.kind === 'pips'"
186
- [class.is-offering-value]="card().type === 'offering'"
187
- >
188
- @if (metric.kind === 'pips') {
189
- @for (_ of offeringPips(metric.value); track $index) {
190
- <i aria-hidden="true"></i>
191
- }
192
- } @else {
193
- {{ metric.value }}
194
- }
195
- </span>
196
- }
197
- </header>
198
-
199
- <section class="christianity-card-render__art" [class.has-image]="card().imageUrl">
200
- @if (card().imageUrl) {
201
- <img [src]="card().imageUrl" [alt]="card().name" />
202
- } @else {
203
- <span>{{ card().name }}</span>
204
- }
205
- <small>{{ normalizedTypeLabel() }}</small>
206
- </section>
207
-
208
- @if (variant() === 'full') {
209
- <section class="christianity-card-render__verse">
210
- @if (card().verseText) {
211
- <p>{{ card().verseText }}</p>
212
- }
213
- @if (card().scripture) {
214
- <strong>{{ card().scripture }}</strong>
215
- }
216
- </section>
217
- }
218
-
219
- <section class="christianity-card-render__effect">
220
- @if (card().editionIcon) {
221
- <img class="christianity-card-render__edition-watermark" [src]="card().editionIcon" alt="" aria-hidden="true" />
222
- }
223
- <div class="christianity-card-render__stats">
224
- @if (card().type === 'offering') {
225
- <strong class="is-pips">
226
- @for (_ of offeringPips(card().offeringValue); track $index) {
227
- <i aria-hidden="true"></i>
228
- }
229
- </strong>
230
- } @else if (card().type === 'leader') {
231
- <strong>{{ leaderLifeText() }}</strong>
232
- } @else if (cardStatsText()) {
233
- <strong>{{ cardStatsText() }}</strong>
234
- }
235
- </div>
236
- @if (variant() === 'full') {
237
- <div class="christianity-card-render__text">
238
- @if (card().abilityName) {
239
- <strong>{{ card().abilityName }}</strong>
240
- }
241
- @if (card().abilityText || card().statusText) {
242
- <p>{{ card().abilityText || card().statusText }}</p>
243
- }
244
- </div>
245
- <span
246
- class="christianity-card-render__rarity"
247
- [class.is-normal]="!card().rarity || card().rarity === 'normal'"
248
- [class.is-uncommon]="card().rarity === 'uncommon'"
249
- [class.is-rare]="card().rarity === 'rare'"
250
- [class.is-legendary]="card().rarity === 'legendary'"
251
- aria-hidden="true"
252
- ></span>
253
- }
254
- </section>
255
-
256
- @if (variant() === 'full') {
257
- <footer class="christianity-card-render__footer">
258
- <span>{{ card().edition ?? 'MVP' }}</span>
259
- <span>{{ card().collectorNumber ?? card().id }}</span>
260
- <span>{{ card().year ?? '2026' }} CHRISTIANITY</span>
261
- <span>{{ card().author ?? 'MVP' }}</span>
262
- </footer>
263
- }
264
- </article>
265
- }
266
- `, 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:0;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--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__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--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;-webkit-line-clamp:2}.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--list .christianity-card-render__metric{min-width:1.2rem;height:1.2rem;padding:0 .18rem;font-size:.7rem}.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--full .christianity-card-render__metric.is-offering-value{display:none}.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--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}.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--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--list .christianity-card-render__art small{bottom:.2rem;padding:.08rem .26rem;font-size:.42rem}.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--list .christianity-card-render__effect{min-height:1.26rem;padding:.16rem;border-radius:.28rem}.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--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--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}: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{min-height:0;padding:1.05rem}}\n"] }]
267
- }] });
268
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hyaXN0aWFuaXR5LWNhcmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb21wb25lbnRzL29yZ2FuaXNtcy9taW5pLWdhbWVzL2NocmlzdGlhbml0eS1jYXJkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBdXZCM0QsTUFBTSxPQUFPLHlCQUF5QjtJQS9zQnRDO1FBZ3RCVyxTQUFJLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBK0IsQ0FBQztRQUNyRCxZQUFPLEdBQUcsS0FBSyxDQUFnQyxPQUFPLENBQUMsQ0FBQztRQUU5Qyx3QkFBbUIsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBQzFFLGtCQUFhLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxhQUFhLElBQUksaUJBQWlCLENBQUMsQ0FBQztRQUMvRSw2QkFBd0IsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxLQUFLLGlCQUFpQixJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsS0FBSyx1QkFBdUIsQ0FBQyxDQUFDO1FBQzFJLGdCQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLG1DQUFtQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkcsaUJBQVksR0FBRyxRQUFRLENBQW9ELEdBQUcsRUFBRTtZQUNqRyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekIsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFFBQVE7Z0JBQUUsT0FBTyxJQUFJLENBQUM7WUFDeEMsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVU7Z0JBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDdEYsSUFBSSxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssUUFBUTtnQkFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQy9FLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLENBQUM7UUFDZ0Isa0JBQWEsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQy9DLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN6QixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssV0FBVztnQkFBRSxPQUFPLEVBQUUsQ0FBQztZQUN6QyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ3JFLENBQUMsQ0FBQyxDQUFDO1FBQ2dCLG1CQUFjLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNoRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDekIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQztZQUNqRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksT0FBTyxDQUFDO1lBQy9DLE9BQU8sR0FBRyxPQUFPLElBQUksR0FBRyxFQUFFLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7S0FjSjtJQVpXLFlBQVksQ0FBQyxLQUF5QjtRQUM5QyxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUM7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUNyRCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRU8sUUFBUSxDQUFDLElBQWdDO1FBQy9DLElBQUksSUFBSSxLQUFLLFdBQVc7WUFBRSxPQUFPLFdBQVcsQ0FBQztRQUM3QyxJQUFJLElBQUksS0FBSyxVQUFVO1lBQUUsT0FBTyxVQUFVLENBQUM7UUFDM0MsSUFBSSxJQUFJLEtBQUssUUFBUTtZQUFFLE9BQU8sUUFBUSxDQUFDO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzsrR0F0Q1UseUJBQXlCO21HQUF6Qix5QkFBeUIsK1VBNXNCMUI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwR1Q7OzRGQWttQlUseUJBQXlCO2tCQS9zQnJDLFNBQVM7K0JBQ0UsdUJBQXVCLGNBQ3JCLElBQUksWUFDTjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBHVCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmV4cG9ydCB0eXBlIENocmlzdGlhbml0eUNhcmRSZW5kZXJUeXBlID1cbiAgfCAnbGVhZGVyJ1xuICB8ICdjaGFyYWN0ZXInXG4gIHwgJ29mZmVyaW5nJ1xuICB8ICd3aXNkb20nXG4gIHwgJ2FjdGlvbidcbiAgfCAndG9vbCdcbiAgfCAncGxhY2UnXG4gIHwgJ2V2ZW50JztcblxuZXhwb3J0IHR5cGUgQ2hyaXN0aWFuaXR5Q2FyZFJlbmRlclZhcmlhbnQgPSAnZnVsbCcgfCAndGFibGUnIHwgJ2hhbmQnIHwgJ2xpc3QnIHwgJ2JhY2snO1xuXG5leHBvcnQgaW50ZXJmYWNlIENocmlzdGlhbml0eUNhcmRSZW5kZXJNb2RlbCB7XG4gIGlkOiBzdHJpbmc7XG4gIG5hbWU6IHN0cmluZztcbiAgdHlwZTogQ2hyaXN0aWFuaXR5Q2FyZFJlbmRlclR5cGU7XG4gIHR5cGVMYWJlbDogc3RyaW5nO1xuICBjb3N0PzogbnVtYmVyO1xuICBvZmZlcmluZ1ZhbHVlPzogbnVtYmVyO1xuICBhdHRhY2s/OiBudW1iZXI7XG4gIGxpZmU/OiBudW1iZXI7XG4gIGN1cnJlbnRIcD86IG51bWJlcjtcbiAgbWF4SHA/OiBudW1iZXI7XG4gIGFiaWxpdHlOYW1lPzogc3RyaW5nO1xuICBhYmlsaXR5VGV4dD86IHN0cmluZztcbiAgdmVyc2VUZXh0Pzogc3RyaW5nO1xuICBzY3JpcHR1cmU/OiBzdHJpbmc7XG4gIGVkaXRpb24/OiBzdHJpbmc7XG4gIGNvbGxlY3Rvck51bWJlcj86IHN0cmluZztcbiAgZWRpdGlvbkljb24/OiBzdHJpbmc7XG4gIHllYXI/OiBzdHJpbmc7XG4gIGF1dGhvcj86IHN0cmluZztcbiAgcmFyaXR5PzogJ25vcm1hbCcgfCAndW5jb21tb24nIHwgJ3JhcmUnIHwgJ2xlZ2VuZGFyeSc7XG4gIGltYWdlVXJsPzogc3RyaW5nO1xuICBmcm9udFRlbXBsYXRlPzogc3RyaW5nO1xuICBzdGF0dXNUZXh0Pzogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2YWwtY2hyaXN0aWFuaXR5LWNhcmQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICB0ZW1wbGF0ZTogYFxuICAgIEBpZiAodmFyaWFudCgpID09PSAnYmFjaycpIHtcbiAgICAgIDxhcnRpY2xlIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyIGNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFja1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgICA8c3Bhbj48L3NwYW4+XG4gICAgICA8L2FydGljbGU+XG4gICAgfSBAZWxzZSB7XG4gICAgICA8YXJ0aWNsZVxuICAgICAgICBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlclwiXG4gICAgICAgIFtjbGFzcy5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGxdPVwidmFyaWFudCgpID09PSAnZnVsbCdcIlxuICAgICAgICBbY2xhc3MuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10YWJsZV09XCJ2YXJpYW50KCkgPT09ICd0YWJsZSdcIlxuICAgICAgICBbY2xhc3MuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1oYW5kXT1cInZhcmlhbnQoKSA9PT0gJ2hhbmQnXCJcbiAgICAgICAgW2NsYXNzLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdF09XCJ2YXJpYW50KCkgPT09ICdsaXN0J1wiXG4gICAgICAgIFtjbGFzcy5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtY2xhc3NpY109XCJpc0dlbmVzaXNDbGFzc2ljVGVtcGxhdGUoKVwiXG4gICAgICAgIFtjbGFzcy5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtZnVsbC1hcnRdPVwiZnJvbnRUZW1wbGF0ZSgpID09PSAnZ2VuZXNpcy1mdWxsLWFydCdcIlxuICAgICAgICBbY2xhc3MuaXMtbGVhZGVyXT1cImNhcmQoKS50eXBlID09PSAnbGVhZGVyJ1wiXG4gICAgICAgIFtjbGFzcy5pcy1vZmZlcmluZ109XCJjYXJkKCkudHlwZSA9PT0gJ29mZmVyaW5nJ1wiXG4gICAgICA+XG4gICAgICAgIDxoZWFkZXIgY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2hlYWRlclwiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb25cIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICAgIDxpbWcgW3NyY109XCJ0eXBlSWNvblVybCgpXCIgYWx0PVwiXCIgLz5cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPHN0cm9uZz57eyBjYXJkKCkubmFtZSB9fTwvc3Ryb25nPlxuICAgICAgICAgIEBpZiAoaGVhZGVyTWV0cmljKCk7IGFzIG1ldHJpYykge1xuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX21ldHJpY1wiXG4gICAgICAgICAgICAgIFtjbGFzcy5pcy1waXBzXT1cIm1ldHJpYy5raW5kID09PSAncGlwcydcIlxuICAgICAgICAgICAgICBbY2xhc3MuaXMtb2ZmZXJpbmctdmFsdWVdPVwiY2FyZCgpLnR5cGUgPT09ICdvZmZlcmluZydcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICBAaWYgKG1ldHJpYy5raW5kID09PSAncGlwcycpIHtcbiAgICAgICAgICAgICAgICBAZm9yIChfIG9mIG9mZmVyaW5nUGlwcyhtZXRyaWMudmFsdWUpOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgICAgICAgIDxpIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvaT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgICAgIHt7IG1ldHJpYy52YWx1ZSB9fVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgfVxuICAgICAgICA8L2hlYWRlcj5cblxuICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0XCIgW2NsYXNzLmhhcy1pbWFnZV09XCJjYXJkKCkuaW1hZ2VVcmxcIj5cbiAgICAgICAgICBAaWYgKGNhcmQoKS5pbWFnZVVybCkge1xuICAgICAgICAgICAgPGltZyBbc3JjXT1cImNhcmQoKS5pbWFnZVVybFwiIFthbHRdPVwiY2FyZCgpLm5hbWVcIiAvPlxuICAgICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgPHNwYW4+e3sgY2FyZCgpLm5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgfVxuICAgICAgICAgIDxzbWFsbD57eyBub3JtYWxpemVkVHlwZUxhYmVsKCkgfX08L3NtYWxsPlxuICAgICAgICA8L3NlY3Rpb24+XG5cbiAgICAgICAgQGlmICh2YXJpYW50KCkgPT09ICdmdWxsJykge1xuICAgICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX192ZXJzZVwiPlxuICAgICAgICAgICAgQGlmIChjYXJkKCkudmVyc2VUZXh0KSB7XG4gICAgICAgICAgICAgIDxwPnt7IGNhcmQoKS52ZXJzZVRleHQgfX08L3A+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgKGNhcmQoKS5zY3JpcHR1cmUpIHtcbiAgICAgICAgICAgICAgPHN0cm9uZz57eyBjYXJkKCkuc2NyaXB0dXJlIH19PC9zdHJvbmc+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgICB9XG5cbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJjaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2VmZmVjdFwiPlxuICAgICAgICAgIEBpZiAoY2FyZCgpLmVkaXRpb25JY29uKSB7XG4gICAgICAgICAgICA8aW1nIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZGl0aW9uLXdhdGVybWFya1wiIFtzcmNdPVwiY2FyZCgpLmVkaXRpb25JY29uXCIgYWx0PVwiXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgLz5cbiAgICAgICAgICB9XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHNcIj5cbiAgICAgICAgICAgIEBpZiAoY2FyZCgpLnR5cGUgPT09ICdvZmZlcmluZycpIHtcbiAgICAgICAgICAgICAgPHN0cm9uZyBjbGFzcz1cImlzLXBpcHNcIj5cbiAgICAgICAgICAgICAgICBAZm9yIChfIG9mIG9mZmVyaW5nUGlwcyhjYXJkKCkub2ZmZXJpbmdWYWx1ZSk7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgICAgICAgPGkgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9zdHJvbmc+XG4gICAgICAgICAgICB9IEBlbHNlIGlmIChjYXJkKCkudHlwZSA9PT0gJ2xlYWRlcicpIHtcbiAgICAgICAgICAgICAgPHN0cm9uZz57eyBsZWFkZXJMaWZlVGV4dCgpIH19PC9zdHJvbmc+XG4gICAgICAgICAgICB9IEBlbHNlIGlmIChjYXJkU3RhdHNUZXh0KCkpIHtcbiAgICAgICAgICAgICAgPHN0cm9uZz57eyBjYXJkU3RhdHNUZXh0KCkgfX08L3N0cm9uZz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICBAaWYgKHZhcmlhbnQoKSA9PT0gJ2Z1bGwnKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190ZXh0XCI+XG4gICAgICAgICAgICAgIEBpZiAoY2FyZCgpLmFiaWxpdHlOYW1lKSB7XG4gICAgICAgICAgICAgICAgPHN0cm9uZz57eyBjYXJkKCkuYWJpbGl0eU5hbWUgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAaWYgKGNhcmQoKS5hYmlsaXR5VGV4dCB8fCBjYXJkKCkuc3RhdHVzVGV4dCkge1xuICAgICAgICAgICAgICAgIDxwPnt7IGNhcmQoKS5hYmlsaXR5VGV4dCB8fCBjYXJkKCkuc3RhdHVzVGV4dCB9fTwvcD5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICBjbGFzcz1cImNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fcmFyaXR5XCJcbiAgICAgICAgICAgICAgW2NsYXNzLmlzLW5vcm1hbF09XCIhY2FyZCgpLnJhcml0eSB8fCBjYXJkKCkucmFyaXR5ID09PSAnbm9ybWFsJ1wiXG4gICAgICAgICAgICAgIFtjbGFzcy5pcy11bmNvbW1vbl09XCJjYXJkKCkucmFyaXR5ID09PSAndW5jb21tb24nXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmlzLXJhcmVdPVwiY2FyZCgpLnJhcml0eSA9PT0gJ3JhcmUnXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmlzLWxlZ2VuZGFyeV09XCJjYXJkKCkucmFyaXR5ID09PSAnbGVnZW5kYXJ5J1wiXG4gICAgICAgICAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgIH1cbiAgICAgICAgPC9zZWN0aW9uPlxuXG4gICAgICAgIEBpZiAodmFyaWFudCgpID09PSAnZnVsbCcpIHtcbiAgICAgICAgICA8Zm9vdGVyIGNsYXNzPVwiY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19mb290ZXJcIj5cbiAgICAgICAgICAgIDxzcGFuPnt7IGNhcmQoKS5lZGl0aW9uID8/ICdNVlAnIH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4+e3sgY2FyZCgpLmNvbGxlY3Rvck51bWJlciA/PyBjYXJkKCkuaWQgfX08L3NwYW4+XG4gICAgICAgICAgICA8c3Bhbj57eyBjYXJkKCkueWVhciA/PyAnMjAyNicgfX0gQ0hSSVNUSUFOSVRZPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4+e3sgY2FyZCgpLmF1dGhvciA/PyAnTVZQJyB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2Zvb3Rlcj5cbiAgICAgICAgfVxuICAgICAgPC9hcnRpY2xlPlxuICAgIH1cbiAgYCxcbiAgc3R5bGVzOiBbXG4gICAgYFxuICAgICAgOmhvc3Qge1xuICAgICAgICAtLWNocmlzdGlhbml0eS1jYXJkLWFzcGVjdDogNSAvIDcuNDU7XG4gICAgICAgIC0tY2hyaXN0aWFuaXR5LWNhcmQtYmFjazpcbiAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDE2LCA0MiwgNjcsIDAuMTYpLCByZ2JhKDE2LCA0MiwgNjcsIDAuMDMpKSxcbiAgICAgICAgICByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjZGJlYWZlIDAgMC4zM3JlbSwgI2ZmZmZmZiAwLjMzcmVtIDAuNjZyZW0pO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIG1pbm1heCgwLCAxZnIpIGF1dG87XG4gICAgICAgIGdhcDogMC4yOHJlbTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgYXNwZWN0LXJhdGlvOiB2YXIoLS1jaHJpc3RpYW5pdHktY2FyZC1hc3BlY3QpO1xuICAgICAgICBwYWRkaW5nOiAwLjQ4cmVtO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM2LCA0OCwgNjgsIDAuMTYpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjUycmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OCksIHJnYmEoMjQ4LCAyNTAsIDI1MiwgMC45OCkpLFxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMTglIDAlLCByZ2JhKDIxNCwgMTYyLCAyOSwgMC4xMiksIHRyYW5zcGFyZW50IDQ0JSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS12YWwtdGV4dC1jb2xvciwgIzFmMjkzMyk7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwLjVyZW0gMS4yNXJlbSByZ2JhKDM2LCA0OCwgNjgsIDAuMSksXG4gICAgICAgICAgaW5zZXQgMCAwIDAgMC4xOHJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNjIpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyID4gKiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGVtcGxhdGUtZ2VuZXNpcy1jbGFzc2ljIHtcbiAgICAgICAgLS1jaHJpc3RpYW5pdHktZnJhbWUtd2lkdGg6IDAuMjZyZW07XG4gICAgICAgIHBhZGRpbmc6IGNhbGMoMC40OHJlbSArIHZhcigtLWNocmlzdGlhbml0eS1mcmFtZS13aWR0aCkpO1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNTcsIDcxLCA4NywgMC4yKTtcbiAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDE3MCwgMTg0LCAxOTksIDAuOTYpLCByZ2JhKDE0MywgMTYwLCAxNzcsIDAuOTgpKSxcbiAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDE4JSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI0KSwgdHJhbnNwYXJlbnQgNDIlKTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAwIDAuNXJlbSAxLjI1cmVtIHJnYmEoMzYsIDQ4LCA2OCwgMC4xMyksXG4gICAgICAgICAgaW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40MiksXG4gICAgICAgICAgaW5zZXQgMCAwIDAgdmFyKC0tY2hyaXN0aWFuaXR5LWZyYW1lLXdpZHRoKSByZ2JhKDEzNSwgMTUxLCAxNjksIDAuNSk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtY2xhc3NpYzo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IHZhcigtLWNocmlzdGlhbml0eS1mcmFtZS13aWR0aCk7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGNhbGMoMC41MnJlbSAtIDAuMDhyZW0pO1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45OCksIHJnYmEoMjQ4LCAyNTAsIDI1MiwgMC45OCkpLFxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMTglIDAlLCByZ2JhKDIxNCwgMTYyLCAyOSwgMC4xKSwgdHJhbnNwYXJlbnQgNDQlKTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICBpbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcyKSxcbiAgICAgICAgICAwIDAuMTZyZW0gMC4zNXJlbSByZ2JhKDM2LCA0OCwgNjgsIDAuMSk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwge1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gbWlubWF4KDlyZW0sIDEuMjVmcikgYXV0byBtaW5tYXgoN3JlbSwgMC45ZnIpIGF1dG87XG4gICAgICAgIGdhcDogMC41OHJlbTtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgcGFkZGluZzogMC43MnJlbTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDM2LCA0OCwgNjgsIDAuMTgpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjc1cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NiksIHJnYmEoMjQ4LCAyNTAsIDI1MiwgMC45NikpLFxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMjAlIDAlLCByZ2JhKDIxNCwgMTYyLCAyOSwgMC4xOCksIHRyYW5zcGFyZW50IDQ1JSk7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDAgMC4xOHJlbSByZ2JhKDI1NSwgMjQ0LCAxOTQsIDAuNTgpLFxuICAgICAgICAgIDAgMCAyLjJyZW0gcmdiYSgyNDUsIDE5OSwgODUsIDAuMzIpLFxuICAgICAgICAgIDAgMi40cmVtIDVyZW0gcmdiYSgxNiwgNDIsIDY3LCAwLjM0KSxcbiAgICAgICAgICBpbnNldCAwIDAgMCAwLjM1cmVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41NSk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWNsYXNzaWMge1xuICAgICAgICAtLWNocmlzdGlhbml0eS1mcmFtZS13aWR0aDogMC40NnJlbTtcbiAgICAgICAgcGFkZGluZzogY2FsYygwLjcycmVtICsgdmFyKC0tY2hyaXN0aWFuaXR5LWZyYW1lLXdpZHRoKSk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNzhyZW07XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDAgMC4xNHJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDIpLFxuICAgICAgICAgIDAgMCAyLjJyZW0gcmdiYSgyNDUsIDE5OSwgODUsIDAuMTgpLFxuICAgICAgICAgIDAgMi40cmVtIDVyZW0gcmdiYSgxNiwgNDIsIDY3LCAwLjM0KSxcbiAgICAgICAgICBpbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM2KSxcbiAgICAgICAgICBpbnNldCAwIDAgMCB2YXIoLS1jaHJpc3RpYW5pdHktZnJhbWUtd2lkdGgpIHJnYmEoMTM1LCAxNTEsIDE2OSwgMC41OCk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWNsYXNzaWM6OmJlZm9yZSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNTZyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtZnVsbC1hcnQge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoOSwgMTMsIDIxLCAwLjU4KTtcbiAgICAgICAgYmFja2dyb3VuZDogIzExMTgyNztcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIHRleHQtc2hhZG93OiAwIDAuMDhyZW0gMC4xOHJlbSByZ2JhKDAsIDAsIDAsIDAuNzIpO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMC43cmVtIDEuNDVyZW0gcmdiYSg5LCAxMywgMjEsIDAuMiksXG4gICAgICAgICAgaW5zZXQgMCAwIDEuMnJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLXRlbXBsYXRlLWdlbmVzaXMtZnVsbC1hcnQgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fYXJ0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zNnJlbTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICBpbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE2KSxcbiAgICAgICAgICBpbnNldCAwIC0ycmVtIDIuNXJlbSByZ2JhKDksIDEzLCAyMSwgMC4zKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGVtcGxhdGUtZ2VuZXNpcy1mdWxsLWFydCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZmZlY3Qge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDksIDEzLCAyMSwgMC41OCk7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGVtcGxhdGUtZ2VuZXNpcy1mdWxsLWFydCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX192ZXJzZSB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS10ZW1wbGF0ZS1nZW5lc2lzLWZ1bGwtYXJ0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHN0cm9uZyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcbiAgICAgICAgY29sb3I6ICMxZjI5MzM7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tdGVtcGxhdGUtZ2VuZXNpcy1mdWxsLWFydCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBtaW5tYXgoMTRyZW0sIDFmcikgYXV0byBtaW5tYXgoOHJlbSwgYXV0bykgYXV0bztcbiAgICAgICAgbWluLWhlaWdodDogbWluKDM1cmVtLCBjYWxjKDEwMHZoIC0gNHJlbSkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjcycmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgNTAlIDglLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTYpLCB0cmFuc3BhcmVudCAzOCUpLFxuICAgICAgICAgICMwOTBkMTU7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwIDAgMC4xMnJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpLFxuICAgICAgICAgIDAgMi40cmVtIDVyZW0gcmdiYSg5LCAxMywgMjEsIDAuNDgpLFxuICAgICAgICAgIGluc2V0IDAgMCAxLjhyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE0KTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFjayB7XG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDAuNTVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNocmlzdGlhbml0eS1jYXJkLWJhY2spO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuOHJlbSAxLjU1cmVtIHJnYmEoMzYsIDQ4LCA2OCwgMC4xNCk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJhY2s6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGluc2V0OiAwLjVyZW07XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTYsIDQyLCA2NywgMC4xMik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzhyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xOCksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNCkpO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAwLjEycmVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3Qge1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gbWlubWF4KDAsIDFmcikgYXV0bztcbiAgICAgICAgZ2FwOiAwLjIycmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjM4cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjQ4cmVtO1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMC40NXJlbSAxcmVtIHJnYmEoMzYsIDQ4LCA2OCwgMC4xKSxcbiAgICAgICAgICBpbnNldCAwIDAgMCAwLjE0cmVtIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42Mik7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2hlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBtaW5tYXgoMCwgMWZyKSBhdXRvO1xuICAgICAgICBnYXA6IDAuMzRyZW07XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdHlwZS1pY29uLFxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fbWV0cmljIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbiB7XG4gICAgICAgIHdpZHRoOiAxLjJyZW07XG4gICAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDM2LCA0OCwgNjgsIDAuMDgpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDAuODJyZW07XG4gICAgICAgIGhlaWdodDogMC44MnJlbTtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9faGVhZGVyIHN0cm9uZyB7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBjbGlwO1xuICAgICAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC44NnJlbSwgMi41dncsIDEuMDZyZW0pO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4wNDtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19oZWFkZXIge1xuICAgICAgICBnYXA6IDAuMjJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdHlwZS1pY29uIHtcbiAgICAgICAgd2lkdGg6IDAuOXJlbTtcbiAgICAgICAgaGVpZ2h0OiAwLjlyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdHlwZS1pY29uIGltZyB7XG4gICAgICAgIHdpZHRoOiAwLjYycmVtO1xuICAgICAgICBoZWlnaHQ6IDAuNjJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9faGVhZGVyIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24ge1xuICAgICAgICB3aWR0aDogMS42cmVtO1xuICAgICAgICBoZWlnaHQ6IDEuNnJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24gaW1nIHtcbiAgICAgICAgd2lkdGg6IDFyZW07XG4gICAgICAgIGhlaWdodDogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19oZWFkZXIgc3Ryb25nIHtcbiAgICAgICAgZm9udC1zaXplOiBjbGFtcCgxLjI1cmVtLCA1dncsIDEuODVyZW0pO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMge1xuICAgICAgICBtaW4td2lkdGg6IDEuNTJyZW07XG4gICAgICAgIGhlaWdodDogMS41MnJlbTtcbiAgICAgICAgcGFkZGluZzogMCAwLjI0cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZkOTFhO1xuICAgICAgICBjb2xvcjogIzI0MzA0NDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg2cmVtO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMC4wOHJlbSAwIHJnYmEoODIsIDY0LCAyOCwgMC4xOCk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fbWV0cmljIHtcbiAgICAgICAgbWluLXdpZHRoOiAxLjJyZW07XG4gICAgICAgIGhlaWdodDogMS4ycmVtO1xuICAgICAgICBwYWRkaW5nOiAwIDAuMThyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX21ldHJpYyB7XG4gICAgICAgIG1pbi13aWR0aDogMi4xcmVtO1xuICAgICAgICBoZWlnaHQ6IDIuMXJlbTtcbiAgICAgICAgcGFkZGluZzogMCAwLjM2cmVtO1xuICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMuaXMtb2ZmZXJpbmctdmFsdWUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19tZXRyaWMuaXMtcGlwcyxcbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIC5pcy1waXBzIHtcbiAgICAgICAgZ3JpZC1hdXRvLWZsb3c6IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAwLjE2cmVtO1xuICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDAgMC4yOHJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fbWV0cmljIGksXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19zdGF0cyBpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAwLjcycmVtO1xuICAgICAgICBoZWlnaHQ6IDAuNzJyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOlxuICAgICAgICAgIHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgMzQlIDI4JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpIDAgMC4xMnJlbSwgdHJhbnNwYXJlbnQgMC4xM3JlbSksXG4gICAgICAgICAgI2ZmZDkxYTtcbiAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICBpbnNldCAwIC0wLjA4cmVtIDAgcmdiYSg4MiwgNjQsIDI4LCAwLjE4KSxcbiAgICAgICAgICAwIDAuMTJyZW0gMC4yNHJlbSByZ2JhKDE2LCA0MiwgNjcsIDAuMSk7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fbWV0cmljIGksXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIGkge1xuICAgICAgICB3aWR0aDogMC40OHJlbTtcbiAgICAgICAgaGVpZ2h0OiAwLjQ4cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19hcnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzZyZW07XG4gICAgICAgIGJhY2tncm91bmQ6XG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSg5NSwgMTExLCA0MiwgMC4xOCksIHJnYmEoMjE0LCAxNjIsIDI5LCAwLjE0KSksXG4gICAgICAgICAgcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA1MCUgMTglLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzIpLCB0cmFuc3BhcmVudCA0OCUpLFxuICAgICAgICAgICNkYmU3ZWY7XG4gICAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCByZ2JhKDM2LCA0OCwgNjgsIDAuMDgpO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19hcnQgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCA+IHNwYW4ge1xuICAgICAgICBtYXgtd2lkdGg6IDc4JTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgY29sb3I6IHJnYmEoMzYsIDQ4LCA2OCwgMC40OCk7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC44MnJlbSwgMi4ydncsIDEuMDVyZW0pO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4wMjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19hcnQgPiBzcGFuIHtcbiAgICAgICAgbWF4LXdpZHRoOiA4MiU7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1mdWxsIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCA+IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IGNsYW1wKDEuMXJlbSwgNXZ3LCAxLjhyZW0pO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19hcnQgc21hbGwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDAuMjhyZW07XG4gICAgICAgIG1heC13aWR0aDogNzglO1xuICAgICAgICBwYWRkaW5nOiAwLjFyZW0gMC4zNHJlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHggMCAwIDk5OXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gICAgICAgIGNvbG9yOiByZ2JhKDMxLCA0MSwgNTEsIDAuNjYpO1xuICAgICAgICBmb250LXNpemU6IDAuNDhyZW07XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2FydCBzbWFsbCB7XG4gICAgICAgIGJvdHRvbTogMC4ycmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjA4cmVtIDAuMjZyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMC40MnJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19hcnQgc21hbGwge1xuICAgICAgICBib3R0b206IDAuNTVyZW07XG4gICAgICAgIG1pbi13aWR0aDogNXJlbTtcbiAgICAgICAgcGFkZGluZzogMC4xNnJlbSAwLjQ4cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuNjhyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdmVyc2UsXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZmZlY3Qge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBnYXA6IDAuMzJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3ZlcnNlIHtcbiAgICAgICAgY29sb3I6ICMxNzE5MjM7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBHZW9yZ2lhLCAnVGltZXMgTmV3IFJvbWFuJywgc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC43MnJlbSwgMi43dncsIDAuODZyZW0pO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX192ZXJzZSBwLFxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fZWZmZWN0IHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX192ZXJzZSBzdHJvbmcge1xuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiAwLjc4cmVtO1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZmZlY3Qge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWluLWhlaWdodDogMS40NXJlbTtcbiAgICAgICAgcGFkZGluZzogMC4yNHJlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zNHJlbTtcbiAgICAgICAgYmFja2dyb3VuZDpcbiAgICAgICAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDUwJSA3MCUsIHJnYmEoMzYsIDQ4LCA2OCwgMC4wNiksIHRyYW5zcGFyZW50IDQ0JSksXG4gICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg2KTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZmZlY3Qge1xuICAgICAgICBtaW4taGVpZ2h0OiAxLjI2cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjE2cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjI4cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZGl0aW9uLXdhdGVybWFyayB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgd2lkdGg6IG1pbig2NiUsIDcuNHJlbSk7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgb3BhY2l0eTogMC4wNTU7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZmZlY3Qge1xuICAgICAgICBhbGlnbi1jb250ZW50OiBzdGFydDtcbiAgICAgICAgbWluLWhlaWdodDogN3JlbTtcbiAgICAgICAgcGFkZGluZzogMC42cmVtIDAuN3JlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC40NXJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19lZGl0aW9uLXdhdGVybWFyayB7XG4gICAgICAgIHdpZHRoOiBtaW4oNzIlLCAxMHJlbSk7XG4gICAgICAgIG9wYWNpdHk6IDAuMDY7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDAuNjVyZW07XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEuMnJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgc3Ryb25nIHtcbiAgICAgICAganVzdGlmeS1zZWxmOiBlbmQ7XG4gICAgICAgIGFsaWduLXNlbGY6IGVuZDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDAuMTJyZW0gMC4zMnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlZGYyZjc7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC42NnJlbSwgMnZ3LCAwLjgycmVtKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDU7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3QgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMge1xuICAgICAgICBtaW4taGVpZ2h0OiAwLjk1cmVtO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0IC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHN0cm9uZyB7XG4gICAgICAgIHBhZGRpbmc6IDAuMXJlbSAwLjI2cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuNjZyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWZ1bGwgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgc3Ryb25nIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3RleHQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdhcDogMC4xMnJlbTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdGV4dCBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IDAuODJyZW07XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3RleHQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2xhbXAoMC43OHJlbSwgMi45dncsIDAuOTJyZW0pO1xuICAgICAgfVxuXG4gICAgICAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19yYXJpdHkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMC42MnJlbTtcbiAgICAgICAgcmlnaHQ6IDAuNjJyZW07XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHdpZHRoOiAwLjQ2cmVtO1xuICAgICAgICBoZWlnaHQ6IDAuNDZyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMTJyZW07XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fcmFyaXR5LmlzLW5vcm1hbCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNkMWQ1ZGI7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3Jhcml0eS5pcy11bmNvbW1vbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMyMmM1NWU7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3Jhcml0eS5pcy1yYXJlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzNiODJmNjtcbiAgICAgIH1cblxuICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fcmFyaXR5LmlzLWxlZ2VuZGFyeSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlYWIzMDg7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2Zvb3RlciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvIG1pbm1heCgwLCAxZnIpIGF1dG87XG4gICAgICAgIGdhcDogMC4zNHJlbTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgY29sb3I6IHJnYmEoMzEsIDQxLCA1MSwgMC42OCk7XG4gICAgICAgIGZvbnQtc2l6ZTogMC41OHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG5cbiAgICAgIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX2Zvb3RlciBzcGFuIHtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgOmhvc3QtY29udGV4dCguZGFyayksXG4gICAgICA6aG9zdC1jb250ZXh0KC5pb24tcGFsZXR0ZS1kYXJrKSxcbiAgICAgIDpob3N0LWNvbnRleHQoaHRtbC5pb24tcGFsZXR0ZS1kYXJrKSxcbiAgICAgIDpob3N0LWNvbnRleHQoYm9keS5kYXJrKSxcbiAgICAgIDpob3N0LWNvbnRleHQoW2RhdGEtdGhlbWU9J2RhcmsnXSkge1xuICAgICAgICAtLWNocmlzdGlhbml0eS1jYXJkLWJhY2s6XG4gICAgICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSgxNDcsIDE5NywgMjUzLCAwLjIpLCByZ2JhKDE1LCAyMywgNDIsIDAuMDgpKSxcbiAgICAgICAgICByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCAjMWUzYTVmIDAgMC4zM3JlbSwgIzBmMTcyYSAwLjMzcmVtIDAuNjZyZW0pO1xuICAgICAgICBjb2xvci1zY2hlbWU6IGRhcms7XG4gICAgICB9XG5cbiAgICAgIDpob3N0LWNvbnRleHQoLmRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXIsXG4gICAgICA6aG9zdC1jb250ZXh0KC5pb24tcGFsZXR0ZS1kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLFxuICAgICAgOmhvc3QtY29udGV4dChodG1sLmlvbi1wYWxldHRlLWRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXIsXG4gICAgICA6aG9zdC1jb250ZXh0KGJvZHkuZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcixcbiAgICAgIDpob3N0LWNvbnRleHQoW2RhdGEtdGhlbWU9J2RhcmsnXSkgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlciB7XG4gICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgMCAwLjVyZW0gMS4yNXJlbSByZ2JhKDAsIDAsIDAsIDAuMjQpLFxuICAgICAgICAgIGluc2V0IDAgMCAwIDAuMThyZW0gcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM4KTtcbiAgICAgIH1cblxuICAgICAgOmhvc3QtY29udGV4dCguZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFjayxcbiAgICAgIDpob3N0LWNvbnRleHQoLmlvbi1wYWxldHRlLWRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJhY2ssXG4gICAgICA6aG9zdC1jb250ZXh0KGh0bWwuaW9uLXBhbGV0dGUtZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFjayxcbiAgICAgIDpob3N0LWNvbnRleHQoYm9keS5kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1iYWNrLFxuICAgICAgOmhvc3QtY29udGV4dChbZGF0YS10aGVtZT0nZGFyayddKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1iYWNrIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDE0NywgMTk3LCAyNTMsIDAuMjIpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuOHJlbSAxLjU1cmVtIHJnYmEoMCwgMCwgMCwgMC4zMik7XG4gICAgICB9XG5cbiAgICAgIDpob3N0LWNvbnRleHQoLmRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJhY2s6OmJlZm9yZSxcbiAgICAgIDpob3N0LWNvbnRleHQoLmlvbi1wYWxldHRlLWRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWJhY2s6OmJlZm9yZSxcbiAgICAgIDpob3N0LWNvbnRleHQoaHRtbC5pb24tcGFsZXR0ZS1kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1iYWNrOjpiZWZvcmUsXG4gICAgICA6aG9zdC1jb250ZXh0KGJvZHkuZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tYmFjazo6YmVmb3JlLFxuICAgICAgOmhvc3QtY29udGV4dChbZGF0YS10aGVtZT0nZGFyayddKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1iYWNrOjpiZWZvcmUge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMTQ3LCAxOTcsIDI1MywgMC4xNik7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMTQ3LCAxOTcsIDI1MywgMC4xNCksIHJnYmEoMTUsIDIzLCA0MiwgMC4wNCkpO1xuICAgICAgfVxuXG4gICAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0LFxuICAgICAgOmhvc3QtY29udGV4dCguaW9uLXBhbGV0dGUtZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tbGlzdCxcbiAgICAgIDpob3N0LWNvbnRleHQoaHRtbC5pb24tcGFsZXR0ZS1kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyLS1saXN0LFxuICAgICAgOmhvc3QtY29udGV4dChib2R5LmRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3QsXG4gICAgICA6aG9zdC1jb250ZXh0KFtkYXRhLXRoZW1lPSdkYXJrJ10pIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXItLWxpc3Qge1xuICAgICAgICBib3gtc2hhZG93OlxuICAgICAgICAgIDAgMC40NXJlbSAxcmVtIHJnYmEoMCwgMCwgMCwgMC4yNiksXG4gICAgICAgICAgaW5zZXQgMCAwIDAgMC4xNHJlbSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNDgpO1xuICAgICAgfVxuXG4gICAgICA6aG9zdC1jb250ZXh0KC5kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24sXG4gICAgICA6aG9zdC1jb250ZXh0KC5pb24tcGFsZXR0ZS1kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX190eXBlLWljb24sXG4gICAgICA6aG9zdC1jb250ZXh0KGh0bWwuaW9uLXBhbGV0dGUtZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdHlwZS1pY29uLFxuICAgICAgOmhvc3QtY29udGV4dChib2R5LmRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3R5cGUtaWNvbixcbiAgICAgIDpob3N0LWNvbnRleHQoW2RhdGEtdGhlbWU9J2RhcmsnXSkgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fdHlwZS1pY29uLFxuICAgICAgOmhvc3QtY29udGV4dCguZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgc3Ryb25nLFxuICAgICAgOmhvc3QtY29udGV4dCguaW9uLXBhbGV0dGUtZGFyaykgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlcl9fc3RhdHMgc3Ryb25nLFxuICAgICAgOmhvc3QtY29udGV4dChodG1sLmlvbi1wYWxldHRlLWRhcmspIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHN0cm9uZyxcbiAgICAgIDpob3N0LWNvbnRleHQoYm9keS5kYXJrKSAuY2hyaXN0aWFuaXR5LWNhcmQtcmVuZGVyX19zdGF0cyBzdHJvbmcsXG4gICAgICA6aG9zdC1jb250ZXh0KFtkYXRhLXRoZW1lPSdkYXJrJ10pIC5jaHJpc3RpYW5pdHktY2FyZC1yZW5kZXJfX3N0YXRzIHN0cm9uZyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjI2LCAyMzIsIDI0MCwgMC44Nik7XG4gICAgICAgIGNvbG9yOiAjMTcyMDMzO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNTJyZW0pIHtcbiAgICAgICAgLmNocmlzdGlhbml0eS1jYXJkLXJlbmRlci0tZnVsbCB7XG4gICAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nOiAxLjA1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgYCxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2hyaXN0aWFuaXR5Q2FyZENvbXBvbmVudCB7XG4gIHJlYWRvbmx5IGNhcmQgPSBpbnB1dC5yZXF1aXJlZDxDaHJpc3RpYW5pdHlDYXJkUmVuZGVyTW9kZWw+KCk7XG4gIHJlYWRvbmx5IHZhcmlhbnQgPSBpbnB1dDxDaHJpc3RpYW5pdHlDYXJkUmVuZGVyVmFyaWFudD4oJ3RhYmxlJyk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG5vcm1hbGl6ZWRUeXBlTGFiZWwgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmNhcmQoKS50eXBlTGFiZWwudG9VcHBlckNhc2UoKSk7XG4gIHByb3RlY3RlZCByZWFkb25seSBmcm9udFRlbXBsYXRlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5jYXJkKCkuZnJvbnRUZW1wbGF0ZSA/PyAnZ2VuZXNpcy1jbGFzc2ljJyk7XG4gIHByb3RlY3RlZCByZWFkb25seSBpc0dlbmVzaXNDbGFzc2ljVGVtcGxhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmZyb250VGVtcGxhdGUoKSA9PT0gJ2dlbmVzaXMtY2xhc3NpYycgfHwgdGhpcy5mcm9udFRlbXBsYXRlKCkgPT09ICdnZW5lc2lzLWNsYXNzaWMtZXh0cmEnKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHR5cGVJY29uVXJsID0gY29tcHV0ZWQoKCkgPT4gYGFzc2V0cy9nYW1lcy9jaHJpc3RpYW5pdHkvaWNvbnMvJHt0aGlzLmljb25OYW1lKHRoaXMuY2FyZCgpLnR5cGUpfS5wbmdgKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGhlYWRlck1ldHJpYyA9IGNvbXB1dGVkPHsga2luZDogJ251bWJlcicgfCAncGlwcyc7IHZhbHVlOiBudW1iZXIgfSB8IG51bGw+KCgpID0+IHtcbiAgICBjb25zdCBjYXJkID0gdGhpcy5jYXJkKCk7XG4gICAgaWYgKGNhcmQudHlwZSA9PT0gJ2xlYWRlcicpIHJldHVybiBudWxsO1xuICAgIGlmIChjYXJkLnR5cGUgPT09ICdvZmZlcmluZycpIHJldHVybiB7IGtpbmQ6ICdwaXBzJywgdmFsdWU6IGNhcmQub2ZmZXJpbmdWYWx1ZSA/PyAwIH07XG4gICAgaWYgKHR5cGVvZiBjYXJkLmNvc3QgPT09ICdudW1iZXInKSByZXR1cm4geyBraW5kOiAnbnVtYmVyJywgdmFsdWU6IGNhcmQuY29zdCB9O1xuICAgIHJldHVybiBudWxsO1xuICB9KTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNhcmRTdGF0c1RleHQgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgY2FyZCA9IHRoaXMuY2FyZCgpO1xuICAgIGlmIChjYXJkLnR5cGUgIT09ICdjaGFyYWN0ZXInKSByZXR1cm4gJyc7XG4gICAgcmV0dXJuIGAke2NhcmQuYXR0YWNrID8/IDB9IC8gJHtjYXJkLmN1cnJlbnRIcCA/PyBjYXJkLmxpZmUgPz8gMH1gO1xuICB9KTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGxlYWRlckxpZmVUZXh0ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGNhcmQgPSB0aGlzLmNhcmQoKTtcbiAgICBjb25zdCBjdXJyZW50ID0gY2FyZC5jdXJyZW50SHAgPz8gY2FyZC5saWZlID8/IDA7XG4gICAgY29uc3QgbWF4ID0gY2FyZC5tYXhIcCA/PyBjYXJkLmxpZmUgPz8gY3VycmVudDtcbiAgICByZXR1cm4gYCR7Y3VycmVudH0vJHttYXh9YDtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIG9mZmVyaW5nUGlwcyh2YWx1ZTogbnVtYmVyIHwgdW5kZWZpbmVkKTogdW5rbm93bltdIHtcbiAgICBjb25zdCBjb3VudCA9IE51bWJlcih2YWx1ZSk7XG4gICAgaWYgKCFOdW1iZXIuaXNGaW5pdGUoY291bnQpIHx8IGNvdW50IDw9IDApIHJldHVybiBbXTtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh7IGxlbmd0aDogTWF0aC5taW4oTWF0aC5mbG9vcihjb3VudCksIDUpIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBpY29uTmFtZSh0eXBlOiBDaHJpc3RpYW5pdHlDYXJkUmVuZGVyVHlwZSk6IHN0cmluZyB7XG4gICAgaWYgKHR5cGUgPT09ICdjaGFyYWN0ZXInKSByZXR1cm4gJ2NoYXJhY3Rlcic7XG4gICAgaWYgKHR5cGUgPT09ICdvZmZlcmluZycpIHJldHVybiAnb2ZmZXJpbmcnO1xuICAgIGlmICh0eXBlID09PSAnbGVhZGVyJykgcmV0dXJuICdsZWFkZXInO1xuICAgIHJldHVybiB0eXBlO1xuICB9XG59XG4iXX0=