@everymatrix/casino-challenge-details 0.0.1
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/dist/casino-challenge-details/app-globals-0f993ce5.js +1 -0
- package/dist/casino-challenge-details/casino-challenge-details-5a765f2c.js +1 -0
- package/dist/casino-challenge-details/casino-challenge-details.esm.js +1 -0
- package/dist/casino-challenge-details/casino-challenge-details_4.entry.js +1 -0
- package/dist/casino-challenge-details/index-30adf0cb.js +2 -0
- package/dist/casino-challenge-details/index.esm.js +1 -0
- package/dist/cjs/app-globals-3a1e7e63.js +5 -0
- package/dist/cjs/casino-challenge-details-ddf27d4e.js +761 -0
- package/dist/cjs/casino-challenge-details.cjs.js +25 -0
- package/dist/cjs/casino-challenge-details_4.cjs.entry.js +144 -0
- package/dist/cjs/index-2a30d71d.js +1250 -0
- package/dist/cjs/index.cjs.js +10 -0
- package/dist/cjs/loader.cjs.js +15 -0
- package/dist/collection/assets/active-chevron.svg +3 -0
- package/dist/collection/assets/alert.svg +3 -0
- package/dist/collection/assets/back-arrow.svg +9 -0
- package/dist/collection/assets/check.svg +10 -0
- package/dist/collection/assets/finish.svg +7 -0
- package/dist/collection/assets/gift.svg +14 -0
- package/dist/collection/assets/inactive-chevron.svg +3 -0
- package/dist/collection/assets/info-circle.svg +3 -0
- package/dist/collection/assets/lock.svg +3 -0
- package/dist/collection/assets/notification.svg +20 -0
- package/dist/collection/assets/target.svg +9 -0
- package/dist/collection/assets/title-icon.svg +1 -0
- package/dist/collection/assets/trophy.svg +14 -0
- package/dist/collection/collection-manifest.json +15 -0
- package/dist/collection/components/casino-challenge-details/casino-challenge-details.css +592 -0
- package/dist/collection/components/casino-challenge-details/casino-challenge-details.js +684 -0
- package/dist/collection/components/casino-challenge-details/index.js +1 -0
- package/dist/collection/components/components/casino-challenge-expandable-paragraph.css +76 -0
- package/dist/collection/components/components/casino-challenge-expandable-paragraph.js +116 -0
- package/dist/collection/components/components/casino-challenge-level-progress-bar.css +33 -0
- package/dist/collection/components/components/casino-challenge-level-progress-bar.js +81 -0
- package/dist/collection/components/components/casino-challenge-progress-bar.css +66 -0
- package/dist/collection/components/components/casino-challenge-progress-bar.js +120 -0
- package/dist/collection/index.js +1 -0
- package/dist/collection/utils/locale.utils.js +166 -0
- package/dist/collection/utils/mock.js +238 -0
- package/dist/collection/utils/types.js +60 -0
- package/dist/collection/utils/utils.js +29 -0
- package/dist/esm/app-globals-0f993ce5.js +3 -0
- package/dist/esm/casino-challenge-details-5a765f2c.js +758 -0
- package/dist/esm/casino-challenge-details.js +20 -0
- package/dist/esm/casino-challenge-details_4.entry.js +138 -0
- package/dist/esm/index-30adf0cb.js +1221 -0
- package/dist/esm/index.js +2 -0
- package/dist/esm/loader.js +11 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.js +1 -0
- package/dist/stencil.config.dev.js +19 -0
- package/dist/stencil.config.js +19 -0
- package/dist/storybook/main.js +43 -0
- package/dist/storybook/preview.js +9 -0
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/casino-challenge-details/.stencil/libs/common/src/storybook/storybook-utils.d.ts +39 -0
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/casino-challenge-details/.stencil/packages/stencil/casino-challenge-details/stencil.config.d.ts +2 -0
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/casino-challenge-details/.stencil/packages/stencil/casino-challenge-details/stencil.config.dev.d.ts +2 -0
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/casino-challenge-details/.stencil/packages/stencil/casino-challenge-details/storybook/main.d.ts +3 -0
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/casino-challenge-details/.stencil/packages/stencil/casino-challenge-details/storybook/preview.d.ts +70 -0
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/casino-challenge-details/.stencil/tools/plugins/index.d.ts +4 -0
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/casino-challenge-details/.stencil/tools/plugins/lazy-load-chunk-plugin.d.ts +12 -0
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/casino-challenge-details/.stencil/tools/plugins/stencil-clean-deps-plugin.d.ts +5 -0
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/casino-challenge-details/.stencil/tools/plugins/vite-chunk-plugin.d.ts +6 -0
- package/dist/types/builds/emfe-widgets/widgets-monorepo/packages/stencil/casino-challenge-details/.stencil/tools/plugins/vite-clean-deps-plugin.d.ts +4 -0
- package/dist/types/components/casino-challenge-details/casino-challenge-details.d.ts +105 -0
- package/dist/types/components/casino-challenge-details/index.d.ts +1 -0
- package/dist/types/components/components/casino-challenge-expandable-paragraph.d.ts +16 -0
- package/dist/types/components/components/casino-challenge-level-progress-bar.d.ts +6 -0
- package/dist/types/components/components/casino-challenge-progress-bar.d.ts +8 -0
- package/dist/types/components.d.ts +198 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/stencil-public-runtime.d.ts +1674 -0
- package/dist/types/utils/locale.utils.d.ts +3 -0
- package/dist/types/utils/mock.d.ts +76 -0
- package/dist/types/utils/types.d.ts +127 -0
- package/dist/types/utils/utils.d.ts +3 -0
- package/loader/cdn.js +1 -0
- package/loader/index.cjs.js +1 -0
- package/loader/index.d.ts +24 -0
- package/loader/index.es2017.js +1 -0
- package/loader/index.js +2 -0
- package/loader/package.json +11 -0
- package/package.json +27 -0
|
@@ -0,0 +1,758 @@
|
|
|
1
|
+
import { r as registerInstance, c as createEvent, h } from './index-30adf0cb.js';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* @name setClientStyling
|
|
5
|
+
* @description Method used to create and append to the passed element of the widget a style element with the content received
|
|
6
|
+
* @param {HTMLElement} stylingContainer The reference element of the widget
|
|
7
|
+
* @param {string} clientStyling The style content
|
|
8
|
+
*/
|
|
9
|
+
function setClientStyling(stylingContainer, clientStyling) {
|
|
10
|
+
if (stylingContainer) {
|
|
11
|
+
const sheet = document.createElement('style');
|
|
12
|
+
sheet.innerHTML = clientStyling;
|
|
13
|
+
stylingContainer.appendChild(sheet);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* @name setClientStylingURL
|
|
19
|
+
* @description Method used to create and append to the passed element of the widget a style element with the content fetched from a given URL
|
|
20
|
+
* @param {HTMLElement} stylingContainer The reference element of the widget
|
|
21
|
+
* @param {string} clientStylingUrl The URL of the style content
|
|
22
|
+
*/
|
|
23
|
+
function setClientStylingURL(stylingContainer, clientStylingUrl) {
|
|
24
|
+
const url = new URL(clientStylingUrl);
|
|
25
|
+
|
|
26
|
+
fetch(url.href)
|
|
27
|
+
.then((res) => res.text())
|
|
28
|
+
.then((data) => {
|
|
29
|
+
const cssFile = document.createElement('style');
|
|
30
|
+
cssFile.innerHTML = data;
|
|
31
|
+
if (stylingContainer) {
|
|
32
|
+
stylingContainer.appendChild(cssFile);
|
|
33
|
+
}
|
|
34
|
+
})
|
|
35
|
+
.catch((err) => {
|
|
36
|
+
console.error('There was an error while trying to load client styling from URL', err);
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* @name setStreamLibrary
|
|
42
|
+
* @description Method used to create and append to the passed element of the widget a style element with content fetched from the MessageBus
|
|
43
|
+
* @param {HTMLElement} stylingContainer The highest element of the widget
|
|
44
|
+
* @param {string} domain The domain from where the content should be fetched (e.g. 'Casino.Style', 'App.Style', 'casino-footer.style', etc.)
|
|
45
|
+
* @param {ref} subscription A reference to a variable where the subscription should be saved for unsubscribing when no longer needed
|
|
46
|
+
*/
|
|
47
|
+
function setStreamStyling(stylingContainer, domain, subscription) {
|
|
48
|
+
if (window.emMessageBus) {
|
|
49
|
+
const sheet = document.createElement('style');
|
|
50
|
+
|
|
51
|
+
window.emMessageBus.subscribe(domain, (data) => {
|
|
52
|
+
sheet.innerHTML = data;
|
|
53
|
+
if (stylingContainer) {
|
|
54
|
+
stylingContainer.appendChild(sheet);
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
const DEFAULT_LANGUAGE = 'en';
|
|
61
|
+
const SUPPORTED_LANGUAGES = ['ro', 'en', 'fr', 'ar', 'hr'];
|
|
62
|
+
const TRANSLATIONS = {
|
|
63
|
+
en: {
|
|
64
|
+
title: 'Challenges',
|
|
65
|
+
totalLevels: 'Total levels:',
|
|
66
|
+
endsIn: 'Ends In',
|
|
67
|
+
expired: 'Expired',
|
|
68
|
+
placeBetsOf: 'Place bets of',
|
|
69
|
+
place: 'Place',
|
|
70
|
+
bet: 'bet',
|
|
71
|
+
bets: 'bets',
|
|
72
|
+
minBet: 'min bet',
|
|
73
|
+
forfeited: 'Forfeited',
|
|
74
|
+
finished: 'Finished',
|
|
75
|
+
suspended: 'Suspended',
|
|
76
|
+
completed: 'Completed',
|
|
77
|
+
start: 'Start',
|
|
78
|
+
resume: 'Resume',
|
|
79
|
+
pause: 'Pause',
|
|
80
|
+
join: 'Join to Start',
|
|
81
|
+
congrats: 'Congratulations!',
|
|
82
|
+
forfeitNotification: 'Unfortunately, your progress has been forfeited, and you are no longer eligible to continue this challenge. Check out other available challenges!',
|
|
83
|
+
completedNofitication: "You've successfully completed this challenge! Explore the next one and keep playing to earn more rewards!",
|
|
84
|
+
expiredNotification: "Unfortunately, this challenge has expired and is no longer available to complete. Try another one that’s still active!",
|
|
85
|
+
terms: "Terms & Conditions",
|
|
86
|
+
contribution: 'contribution',
|
|
87
|
+
endDate: 'End Date',
|
|
88
|
+
back: 'Back',
|
|
89
|
+
all: 'All Challenges'
|
|
90
|
+
},
|
|
91
|
+
ro: {
|
|
92
|
+
title: 'Provocări',
|
|
93
|
+
totalLevels: 'Niveluri totale:',
|
|
94
|
+
endsIn: 'Se termină în',
|
|
95
|
+
expired: 'Expirat',
|
|
96
|
+
placeBetsOf: 'Plasează pariuri de',
|
|
97
|
+
place: 'Plasare',
|
|
98
|
+
bet: 'pariu',
|
|
99
|
+
bets: 'pariuri',
|
|
100
|
+
minBet: 'pariu minim',
|
|
101
|
+
forfeited: 'Pierdut',
|
|
102
|
+
finished: 'Terminat',
|
|
103
|
+
suspended: 'Suspendat',
|
|
104
|
+
start: 'Start',
|
|
105
|
+
resume: 'Reia',
|
|
106
|
+
pause: 'Pauză',
|
|
107
|
+
join: 'Alătură-te pentru a începe',
|
|
108
|
+
congrats: "Felicitări!",
|
|
109
|
+
forfeitNotification: "Din păcate, progresul tău a fost abandonat și nu mai poți continua această provocare. Consultă celelalte provocări disponibile!",
|
|
110
|
+
completedNofitication: "Ai finalizat cu succes această provocare! Explorează următoarea și continuă să joci pentru a câștiga mai multe recompense!",
|
|
111
|
+
expiredNotification: "Din păcate, această provocare a expirat și nu mai este disponibilă pentru finalizare. Încearcă una care este încă activă!",
|
|
112
|
+
terms: "Termeni și condiții",
|
|
113
|
+
contribution: "contribuție",
|
|
114
|
+
endDate: "Data de încheiere",
|
|
115
|
+
back: "Înapoi",
|
|
116
|
+
all: "Toate Provocările"
|
|
117
|
+
},
|
|
118
|
+
fr: {
|
|
119
|
+
title: 'Défis',
|
|
120
|
+
totalLevels: 'Niveaux totaux :',
|
|
121
|
+
endsIn: 'Se termine dans',
|
|
122
|
+
expired: 'Expiré',
|
|
123
|
+
placeBetsOf: 'Placez des paris de',
|
|
124
|
+
place: 'Placer',
|
|
125
|
+
bet: 'pari',
|
|
126
|
+
bets: 'paris',
|
|
127
|
+
minBet: 'mise minimale',
|
|
128
|
+
forfeited: 'Forfait',
|
|
129
|
+
finished: 'Terminé',
|
|
130
|
+
suspended: 'Suspendu',
|
|
131
|
+
start: 'Démarrer',
|
|
132
|
+
resume: 'Reprendre',
|
|
133
|
+
pause: 'Pause',
|
|
134
|
+
join: 'Rejoindre pour commencer',
|
|
135
|
+
congrats: "Félicitations !",
|
|
136
|
+
forfeitNotification: "Malheureusement, votre progression a été abandonnée et vous n'êtes plus éligible pour continuer ce défi. Découvrez les autres défis disponibles !",
|
|
137
|
+
completedNofitication: "Vous avez réussi ce défi ! Découvrez le suivant et continuez à jouer pour gagner plus de récompenses !",
|
|
138
|
+
expiredNotification: "Malheureusement, ce défi a expiré et n’est plus disponible à compléter. Essayez-en un autre qui est encore actif !",
|
|
139
|
+
terms: "Termes et conditions",
|
|
140
|
+
contribution: "contribution",
|
|
141
|
+
endDate: "Date de fin",
|
|
142
|
+
back: "Retour",
|
|
143
|
+
all: "Tous les Défis"
|
|
144
|
+
},
|
|
145
|
+
ar: {
|
|
146
|
+
title: 'تحديات',
|
|
147
|
+
totalLevels: 'إجمالي المستويات:',
|
|
148
|
+
endsIn: 'ينتهي في',
|
|
149
|
+
expired: 'منتهي الصلاحية',
|
|
150
|
+
placeBetsOf: 'قم بوضع رهانات بقيمة',
|
|
151
|
+
place: 'ضع',
|
|
152
|
+
bet: 'رهان',
|
|
153
|
+
bets: 'رهانات',
|
|
154
|
+
minBet: 'الحد الأدنى للرهان',
|
|
155
|
+
forfeited: 'خاسر',
|
|
156
|
+
finished: 'منتهي',
|
|
157
|
+
suspended: 'معلق',
|
|
158
|
+
start: 'ابدأ',
|
|
159
|
+
resume: 'استئناف',
|
|
160
|
+
pause: 'إيقاف مؤقت',
|
|
161
|
+
join: 'انضم للبدء',
|
|
162
|
+
congrats: "تهانينا!",
|
|
163
|
+
forfeitNotification: "للأسف، تم التخلي عن تقدمك ولم تعد مؤهلاً لمتابعة هذا التحدي. تحقق من التحديات الأخرى المتاحة!",
|
|
164
|
+
completedNofitication: "لقد أكملت هذا التحدي بنجاح! استكشف التحدي التالي واستمر في اللعب للحصول على مزيد من الجوائز!",
|
|
165
|
+
expiredNotification: "للأسف، هذا التحدي انتهت صلاحيته ولم يعد متاحًا لإكماله. جرّب تحديًا آخر لا يزال نشطًا!",
|
|
166
|
+
terms: "الشروط والأحكام",
|
|
167
|
+
contribution: "مساهمة",
|
|
168
|
+
endDate: "تاريخ الانتهاء",
|
|
169
|
+
back: "عودة",
|
|
170
|
+
all: "جميع التحديات"
|
|
171
|
+
},
|
|
172
|
+
hr: {
|
|
173
|
+
title: 'Izazovi',
|
|
174
|
+
totalLevels: 'Ukupno razina:',
|
|
175
|
+
endsIn: 'Završava za',
|
|
176
|
+
expired: 'Isteklo',
|
|
177
|
+
placeBetsOf: 'Postavite oklade od',
|
|
178
|
+
place: 'Postavi',
|
|
179
|
+
bet: 'kladnja',
|
|
180
|
+
bets: 'kladnje',
|
|
181
|
+
minBet: 'minimalna oklada',
|
|
182
|
+
forfeited: 'Oduzeto',
|
|
183
|
+
finished: 'Završeno',
|
|
184
|
+
suspended: 'Suspendirano',
|
|
185
|
+
start: 'Počni',
|
|
186
|
+
resume: 'Nastavi',
|
|
187
|
+
pause: 'Pauza',
|
|
188
|
+
join: 'Pridruži se za početak',
|
|
189
|
+
congrats: "Čestitamo!",
|
|
190
|
+
forfeitNotification: "Nažalost, tvoj napredak je izgubljen i više nisi podoban nastaviti ovaj izazov. Pogledaj ostale dostupne izazove!",
|
|
191
|
+
completedNofitication: "Uspješno si završio ovaj izazov! Istraži sljedeći i nastavi igrati kako bi zaradio/la više nagrada!",
|
|
192
|
+
expiredNotification: "Nažalost, ovaj izazov je istekao i više nije dostupan za dovršavanje. Probaj neki drugi koji je još aktivan!",
|
|
193
|
+
terms: "Uvjeti i odredbe",
|
|
194
|
+
contribution: "doprinos",
|
|
195
|
+
endDate: "Datum završetka",
|
|
196
|
+
back: "Nazad",
|
|
197
|
+
all: "Svi Izazovi"
|
|
198
|
+
}
|
|
199
|
+
};
|
|
200
|
+
const translate = (key, customLang) => {
|
|
201
|
+
const lang = customLang;
|
|
202
|
+
return TRANSLATIONS[lang !== undefined && SUPPORTED_LANGUAGES.includes(lang) ? lang : DEFAULT_LANGUAGE][key];
|
|
203
|
+
};
|
|
204
|
+
const getTranslations = (data) => {
|
|
205
|
+
Object.keys(data).forEach((item) => {
|
|
206
|
+
for (let key in data[item]) {
|
|
207
|
+
TRANSLATIONS[item][key] = data[item][key];
|
|
208
|
+
}
|
|
209
|
+
});
|
|
210
|
+
};
|
|
211
|
+
const resolveTranslationUrl = async (translationUrl) => {
|
|
212
|
+
if (translationUrl) {
|
|
213
|
+
try {
|
|
214
|
+
const response = await fetch(translationUrl);
|
|
215
|
+
if (!response.ok) {
|
|
216
|
+
throw new Error(`HTTP error! status: ${response.status}`);
|
|
217
|
+
}
|
|
218
|
+
const translations = await response.json();
|
|
219
|
+
getTranslations(translations);
|
|
220
|
+
}
|
|
221
|
+
catch (error) {
|
|
222
|
+
console.error('Failed to fetch or parse translations from URL:', error);
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
};
|
|
226
|
+
|
|
227
|
+
function getTimeLeft(endTime) {
|
|
228
|
+
const now = new Date();
|
|
229
|
+
const end = new Date(endTime);
|
|
230
|
+
let diff = end.getTime() - now.getTime();
|
|
231
|
+
if (diff <= 0) {
|
|
232
|
+
return;
|
|
233
|
+
}
|
|
234
|
+
const days = Math.floor(diff / (1000 * 60 * 60 * 24));
|
|
235
|
+
diff -= days * (1000 * 60 * 60 * 24);
|
|
236
|
+
const hours = Math.floor(diff / (1000 * 60 * 60));
|
|
237
|
+
diff -= hours * (1000 * 60 * 60);
|
|
238
|
+
const minutes = Math.floor(diff / (1000 * 60));
|
|
239
|
+
diff -= minutes * (1000 * 60);
|
|
240
|
+
const seconds = Math.floor(diff / 1000);
|
|
241
|
+
const pad = (n) => n.toString().padStart(2, '0');
|
|
242
|
+
return `${pad(days)} : ${pad(hours)} : ${pad(minutes)} : ${pad(seconds)}`;
|
|
243
|
+
}
|
|
244
|
+
function formatDate(dateToFormat) {
|
|
245
|
+
const formatter = new Intl.DateTimeFormat('en-CA', {
|
|
246
|
+
year: 'numeric',
|
|
247
|
+
month: '2-digit',
|
|
248
|
+
day: '2-digit'
|
|
249
|
+
});
|
|
250
|
+
const date = new Date(dateToFormat);
|
|
251
|
+
return formatter.format(date).replace(/-/g, '/');
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
const giftSvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzExODRfMTY4MSkiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTQuMjMyMTUgMS41QzQuMTA3MjEgMS41IDMuOTg1NTMgMS41NTA0NSAzLjg5NDM5IDEuNjQzMjVDMy44MDI5NSAxLjczNjM1IDMuNzUgMS44NjQ1MSAzLjc1IDJDMy43NSAyLjEzNTQ5IDMuODAyOTUgMi4yNjM2NSAzLjg5NDM5IDIuMzU2NzVDMy45ODU1MyAyLjQ0OTU1IDQuMTA3MjEgMi41IDQuMjMyMTUgMi41SDUuMzE3MTNDNS4yODA5MyAyLjQxNDMzIDUuMjM5MjggMi4zMjU1OCA1LjE5MTc4IDIuMjM3NjRDNC45NDg4NCAxLjc4NzkgNC42MzY5OSAxLjUgNC4yMzIxNSAxLjVaTTUuNSAzLjVWNUwxLjggNUMxLjY1MTc0IDUgMS41NzA2MSA0Ljk5OTYxIDEuNTEyMzIgNC45OTQ4NUMxLjUxIDQuOTk0NjYgMS41MDc4IDQuOTk0NDcgMS41MDU3MyA0Ljk5NDI4QzEuNTA1NTQgNC45OTIyIDEuNTA1MzQgNC45OSAxLjUwNTE1IDQuOTg3NjhDMS41MDAzOSA0LjkyOTM5IDEuNSA0Ljg0ODI2IDEuNSA0LjdWMy44QzEuNSAzLjY1MTc0IDEuNTAwMzkgMy41NzA2MSAxLjUwNTE1IDMuNTEyMzJDMS41MDUzNCAzLjUxIDEuNTA1NTQgMy41MDc4IDEuNTA1NzMgMy41MDU3MkMxLjUwNzggMy41MDU1MyAxLjUxIDMuNTA1MzQgMS41MTIzMiAzLjUwNTE1QzEuNTcwNjEgMy41MDAzOSAxLjY1MTc0IDMuNSAxLjggMy41SDUuNVpNMi44MzQ3NiAyLjVDMi43NzkxMSAyLjM0MDY3IDIuNzUgMi4xNzE2OSAyLjc1IDJDMi43NSAxLjYwNTA1IDIuOTA0MDEgMS4yMjQ1MSAzLjE4MDk0IDAuOTQyNTM5QzMuNDU4MTcgMC42NjAyNjUgMy44MzYxMiAwLjUgNC4yMzIxNSAwLjVDNS4xMjk1IDAuNSA1LjY4NjI3IDEuMTA5MjMgNiAxLjYzNjEyQzYuMzEzNzQgMS4xMDkyMyA2Ljg3MDUxIDAuNSA3Ljc2Nzg2IDAuNUM4LjE2Mzg5IDAuNSA4LjU0MTgzIDAuNjYwMjY1IDguODE5MDYgMC45NDI1MzlDOS4wOTYgMS4yMjQ1MSA5LjI1IDEuNjA1MDUgOS4yNSAyQzkuMjUgMi4xNzE2OSA5LjIyMDkgMi4zNDA2NyA5LjE2NTI0IDIuNUwxMC4yMTYgMi41QzEwLjM0MjEgMi40OTk5OCAxMC40NjUgMi40OTk5NyAxMC41NjkxIDIuNTA4NDdDMTAuNjgzNCAyLjUxNzgxIDEwLjgxODMgMi41Mzk4NCAxMC45NTQgMi42MDg5OUMxMS4xNDIyIDIuNzA0ODcgMTEuMjk1MSAyLjg1Nzg1IDExLjM5MSAzLjA0NjAxQzExLjQ2MDIgMy4xODE3MiAxMS40ODIyIDMuMzE2NTkgMTEuNDkxNSAzLjQzMDg5QzExLjUgMy41MzQ5NiAxMS41IDMuNjU3ODUgMTEuNSAzLjc4NDA0VjQuNzE1OTZDMTEuNSA0Ljg0MjE1IDExLjUgNC45NjUwNCAxMS40OTE1IDUuMDY5MTJDMTEuNDgyMiA1LjE4MzQxIDExLjQ2MDIgNS4zMTgyOCAxMS4zOTEgNS40NTM5OUMxMS4yOTUxIDUuNjQyMTUgMTEuMTQyMiA1Ljc5NTEzIDEwLjk1NCA1Ljg5MTAxQzEwLjgxODMgNS45NjAxNiAxMC42ODM0IDUuOTgyMTkgMTAuNTY5MSA1Ljk5MTUzQzEwLjU0NjkgNS45OTMzNCAxMC41MjM4IDUuOTk0NzcgMTAuNSA1Ljk5NTg5VjkuNDE5MjhDMTAuNSA5LjY4Mjg1IDEwLjUgOS45MTAyMyAxMC40ODQ3IDEwLjA5NzVDMTAuNDY4NiAxMC4yOTUyIDEwLjQzMjkgMTAuNDkxOCAxMC4zMzY1IDEwLjY4MUMxMC4xOTI3IDEwLjk2MzIgOS45NjMyMyAxMS4xOTI3IDkuNjgwOTkgMTEuMzM2NUM5LjQ5MTggMTEuNDMyOSA5LjI5NTE5IDExLjQ2ODYgOS4wOTc1MiAxMS40ODQ3QzguOTEwMjMgMTEuNSA4LjY4Mjg2IDExLjUgOC40MTkyOSAxMS41SDYuMDAwN0M2LjAwMDQ3IDExLjUgNi4wMDAyNCAxMS41IDYgMTEuNUM1Ljk5OTc3IDExLjUgNS45OTk1NCAxMS41IDUuOTk5MyAxMS41SDMuNTgwNzJDMy4zMTcxNSAxMS41IDMuMDg5NzcgMTEuNSAyLjkwMjQ5IDExLjQ4NDdDMi43MDQ4MiAxMS40Njg2IDIuNTA4MjEgMTEuNDMyOSAyLjMxOTAyIDExLjMzNjVDMi4wMzY3NyAxMS4xOTI3IDEuODA3MyAxMC45NjMyIDEuNjYzNDkgMTAuNjgxQzEuNTY3MSAxMC40OTE4IDEuNTMxNDQgMTAuMjk1MiAxLjUxNTI5IDEwLjA5NzVDMS40OTk5OSA5LjkxMDIzIDEuNDk5OTkgOS42ODI4NSAxLjUgOS40MTkyN0wxLjUgNS45OTU4OUMxLjQ3NjIxIDUuOTk0NzcgMS40NTMxMiA1Ljk5MzM0IDEuNDMwODkgNS45OTE1M0MxLjMxNjU5IDUuOTgyMTkgMS4xODE3MiA1Ljk2MDE1IDEuMDQ2MDEgNS44OTEwMUMwLjg1Nzg1IDUuNzk1MTMgMC43MDQ4NyA1LjY0MjE1IDAuNjA4OTk2IDUuNDUzOTlDMC41Mzk4NDcgNS4zMTgyOCAwLjUxNzgxNCA1LjE4MzQxIDAuNTA4NDc1IDUuMDY5MTFDMC40OTk5NzIgNC45NjUwNCAwLjQ5OTk4NiA0Ljg0MjE0IDAuNTAwMDAxIDQuNzE1OTVMMC41MDAwMDMgMy44QzAuNTAwMDAzIDMuNzk0NjggMC41MDAwMDIgMy43ODkzNiAwLjUwMDAwMSAzLjc4NDA1QzAuNDk5OTg2IDMuNjU3ODYgMC40OTk5NzIgMy41MzQ5NiAwLjUwODQ3NSAzLjQzMDg5QzAuNTE3ODE0IDMuMzE2NTkgMC41Mzk4NDcgMy4xODE3MiAwLjYwODk5NiAzLjA0NjAxQzAuNzA0ODcgMi44NTc4NSAwLjg1Nzg1IDIuNzA0ODcgMS4wNDYwMSAyLjYwODk5QzEuMTgxNzIgMi41Mzk4NCAxLjMxNjU5IDIuNTE3ODEgMS40MzA4OSAyLjUwODQ3QzEuNTM0OTcgMi40OTk5NyAxLjY1Nzg2IDIuNDk5OTggMS43ODQwNSAyLjVDMS43ODkzNiAyLjUgMS43OTQ2OCAyLjUgMS44IDIuNUgyLjgzNDc2Wk0yLjUgNlY5LjRDMi41IDkuNjg4MjggMi41MDAzOSA5Ljg3NDQxIDIuNTExOTcgMTAuMDE2MUMyLjUyMzA2IDEwLjE1MTkgMi41NDE5IDEwLjIwMjMgMi41NTQ1IDEwLjIyN0MyLjYwMjQ0IDEwLjMyMTEgMi42Nzg5MyAxMC4zOTc2IDIuNzczMDEgMTAuNDQ1NUMyLjc5NzczIDEwLjQ1ODEgMi44NDgwOSAxMC40NzY5IDIuOTgzOTIgMTAuNDg4QzMuMTI1NTkgMTAuNDk5NiAzLjMxMTczIDEwLjUgMy42IDEwLjVINS41VjZIMi41Wk02LjUgNlYxMC41SDguNEM4LjY4ODI4IDEwLjUgOC44NzQ0MiAxMC40OTk2IDkuMDE2MDggMTAuNDg4QzkuMTUxOTIgMTAuNDc2OSA5LjIwMjI4IDEwLjQ1ODEgOS4yMjcgMTAuNDQ1NUM5LjMyMTA4IDEwLjM5NzYgOS4zOTc1NyAxMC4zMjExIDkuNDQ1NTEgMTAuMjI3QzkuNDU4MSAxMC4yMDIzIDkuNDc2OTQgMTAuMTUxOSA5LjQ4ODA0IDEwLjAxNjFDOS40OTk2MSA5Ljg3NDQxIDkuNSA5LjY4ODI4IDkuNSA5LjRWNkg2LjVaTTEwLjIgNUMxMC4zNDgzIDUgMTAuNDI5NCA0Ljk5OTYxIDEwLjQ4NzcgNC45OTQ4NUMxMC40OSA0Ljk5NDY2IDEwLjQ5MjIgNC45OTQ0NiAxMC40OTQzIDQuOTk0MjdDMTAuNDk0NSA0Ljk5MjIgMTAuNDk0NyA0Ljk5IDEwLjQ5NDkgNC45ODc2OEMxMC40OTk2IDQuOTI5MzkgMTAuNSA0Ljg0ODI2IDEwLjUgNC43VjMuOEMxMC41IDMuNjUxNzQgMTAuNDk5NiAzLjU3MDYxIDEwLjQ5NDkgMy41MTIzMkMxMC40OTQ3IDMuNTEgMTAuNDk0NSAzLjUwNzggMTAuNDk0MyAzLjUwNTcyQzEwLjQ5MjIgMy41MDU1MyAxMC40OSAzLjUwNTM0IDEwLjQ4NzcgMy41MDUxNUMxMC40Mjk0IDMuNTAwMzkgMTAuMzQ4MyAzLjUgMTAuMiAzLjVINi41VjVIMTAuMlpNNy43Njc4NiAyLjVDNy44OTI4IDIuNSA4LjAxNDQ3IDIuNDQ5NTUgOC4xMDU2MiAyLjM1Njc1QzguMTk3MDYgMi4yNjM2NSA4LjI1IDIuMTM1NDkgOC4yNSAyQzguMjUgMS44NjQ1MSA4LjE5NzA2IDEuNzM2MzUgOC4xMDU2MiAxLjY0MzI1QzguMDE0NDcgMS41NTA0NSA3Ljg5Mjc5IDEuNSA3Ljc2Nzg2IDEuNUM3LjM2MzAyIDEuNSA3LjA1MTE2IDEuNzg3OSA2LjgwODIzIDIuMjM3NjRDNi43NjA3MiAyLjMyNTU4IDYuNzE5MDcgMi40MTQzMyA2LjY4Mjg4IDIuNUg3Ljc2Nzg2WiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzExODRfMTY4MSkiLz4KPC9nPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzExODRfMTY4MSIgeDE9IjYiIHkxPSIwLjUiIHgyPSI2IiB5Mj0iMTEuNSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjRUE5MDE4Ii8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0UwQTg0RSIvPgo8L2xpbmVhckdyYWRpZW50Pgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzExODRfMTY4MSI+CjxyZWN0IHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K';
|
|
255
|
+
|
|
256
|
+
const targetSvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMiAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05LjU4MDA3IDAuNTA2NDYyQzkuNzM4NzIgMC41MzIyMDcgOS44NzUzMiAwLjYzMjY0NSA5Ljk0NzE5IDAuNzc2Mzk5TDEwLjM3MjcgMS42MjczM0wxMS4yMjM2IDIuMDUyNzlDMTEuMzY3MyAyLjEyNDY3IDExLjQ2NzggMi4yNjEyNyAxMS40OTM1IDIuNDE5OTFDMTEuNTE5MyAyLjU3ODU2IDExLjQ2NzIgMi43Mzk5MSAxMS4zNTM1IDIuODUzNTZMOS44NTM1MyA0LjM1MzU2QzkuNzU5NzYgNC40NDczMyA5LjYzMjU5IDQuNTAwMDEgOS40OTk5OCA0LjUwMDAxSDguMjA3MDhMNi4zNTM1NCA2LjM1MzUzQzYuMTU4MjcgNi41NDg4IDUuODQxNjkgNi41NDg3OSA1LjY0NjQzIDYuMzUzNTNDNS40NTExNyA2LjE1ODI3IDUuNDUxMTcgNS44NDE2OSA1LjY0NjQzIDUuNjQ2NDJMNy40OTk5OCAzLjc5MjlWMi41MDAwMUM3LjQ5OTk4IDIuMzY3NCA3LjU1MjY2IDIuMjQwMjIgNy42NDY0MyAyLjE0NjQ1TDkuMTQ2NDMgMC42NDY0NTNDOS4yNjAwNyAwLjUzMjgwNSA5LjQyMTQyIDAuNDgwNzE4IDkuNTgwMDcgMC41MDY0NjJaTTguNDk5OTggMy41MDAwMUg5LjI5Mjg3TDEwLjE1NTkgMi42MzY5OEw5Ljc3NjM3IDIuNDQ3MjJDOS42Nzk2MSAyLjM5ODg0IDkuNjAxMTUgMi4zMjAzOCA5LjU1Mjc3IDIuMjIzNjFMOS4zNjMgMS44NDQwOUw4LjQ5OTk4IDIuNzA3MTFWMy41MDAwMVpNNiAxLjUwMDAxQzMuNTE0NzIgMS41MDAwMSAxLjUgMy41MTQ3MiAxLjUgNi4wMDAwMUMxLjUgOC40ODUyOSAzLjUxNDcyIDEwLjUgNiAxMC41QzguNDg1MjggMTAuNSAxMC41IDguNDg1MjkgMTAuNSA2LjAwMDAxQzEwLjUgNS43MjM4NiAxMC43MjM5IDUuNTAwMDEgMTEgNS41MDAwMUMxMS4yNzYxIDUuNTAwMDEgMTEuNSA1LjcyMzg2IDExLjUgNi4wMDAwMUMxMS41IDkuMDM3NTcgOS4wMzc1NyAxMS41IDYgMTEuNUMyLjk2MjQzIDExLjUgMC41IDkuMDM3NTcgMC41IDYuMDAwMDFDMC41IDIuOTYyNDQgMi45NjI0MyAwLjUwMDAwNiA2IDAuNTAwMDA2QzYuMjc2MTQgMC41MDAwMDYgNi41IDAuNzIzODY0IDYuNSAxLjAwMDAxQzYuNSAxLjI3NjE1IDYuMjc2MTQgMS41MDAwMSA2IDEuNTAwMDFaTTYgNC4wMDAwMUM0Ljg5NTQzIDQuMDAwMDEgNCA0Ljg5NTQ0IDQgNi4wMDAwMUM0IDcuMTA0NTggNC44OTU0MyA4LjAwMDAxIDYgOC4wMDAwMUM3LjEwNDU3IDguMDAwMDEgOCA3LjEwNDU4IDggNi4wMDAwMUM4IDUuNzIzODYgOC4yMjM4NiA1LjUwMDAxIDguNSA1LjUwMDAxQzguNzc2MTQgNS41MDAwMSA5IDUuNzIzODYgOSA2LjAwMDAxQzkgNy42NTY4NiA3LjY1Njg1IDkuMDAwMDEgNiA5LjAwMDAxQzQuMzQzMTUgOS4wMDAwMSAzIDcuNjU2ODYgMyA2LjAwMDAxQzMgNC4zNDMxNSA0LjM0MzE1IDMuMDAwMDEgNiAzLjAwMDAxQzYuMjc2MTQgMy4wMDAwMSA2LjUgMy4yMjM4NiA2LjUgMy41MDAwMUM2LjUgMy43NzYxNSA2LjI3NjE0IDQuMDAwMDEgNiA0LjAwMDAxWiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzExODRfMTY4NikiLz4KPGRlZnM+CjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhcl8xMTg0XzE2ODYiIHgxPSI2IiB5MT0iMC41IiB4Mj0iNiIgeTI9IjExLjUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iIzI0QjI0RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiMxOENFNTEiLz4KPC9saW5lYXJHcmFkaWVudD4KPC9kZWZzPgo8L3N2Zz4K';
|
|
257
|
+
|
|
258
|
+
const backArrowSvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNiIgaGVpZ2h0PSIxMCIgdmlld0JveD0iMCAwIDYgMTAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNS41MzAzMyAwLjQ2OTY3QzUuODIzMjIgMC43NjI1NjMgNS44MjMyMiAxLjIzNzQ0IDUuNTMwMzMgMS41MzAzM0wyLjA2MDY2IDVMNS41MzAzMyA4LjQ2OTY3QzUuODIzMjIgOC43NjI1NiA1LjgyMzIyIDkuMjM3NDQgNS41MzAzMyA5LjUzMDMzQzUuMjM3NDQgOS44MjMyMiA0Ljc2MjU2IDkuODIzMjIgNC40Njk2NyA5LjUzMDMzTDAuNDY5NjcgNS41MzAzM0MwLjE3Njc3NyA1LjIzNzQ0IDAuMTc2Nzc3IDQuNzYyNTYgMC40Njk2NyA0LjQ2OTY3TDQuNDY5NjcgMC40Njk2N0M0Ljc2MjU2IDAuMTc2Nzc3IDUuMjM3NDQgMC4xNzY3NzcgNS41MzAzMyAwLjQ2OTY3WiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzEyNTBfMzU1KSIvPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzEyNTBfMzU1IiB4MT0iMyIgeTE9IjAuMjUiIHgyPSIzIiB5Mj0iOS43NSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjMjRCMjRFIi8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzE4Q0U1MSIvPgo8L2xpbmVhckdyYWRpZW50Pgo8L2RlZnM+Cjwvc3ZnPgo=';
|
|
259
|
+
|
|
260
|
+
const lockSvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAxNCAxNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yLjUwMDQ5IDQuNUMyLjUwMDQ5IDIuMDE0NzIgNC41MTUyMSAwIDcuMDAwNDkgMEM5LjQ4NTc3IDAgMTEuNTAwNSAyLjAxNDcyIDExLjUwMDUgNC41VjUuMzYyNzRDMTEuNzEyNCA1LjQwOTE5IDExLjkxNTkgNS40NzY4MiAxMi4xMTI1IDUuNTc2OThDMTIuNjc2OSA1Ljg2NDYgMTMuMTM1OSA2LjMyMzU0IDEzLjQyMzUgNi44ODgwM0MxMy42MDkgNy4yNTIwMyAxMy42ODI5IDcuNjM5NTYgMTMuNzE3MyA4LjA2MTEzQzEzLjc1MDUgOC40NjcwMiAxMy43NTA1IDguOTY1MjkgMTMuNzUwNSA5LjU2OTAxVjEwLjY4MUMxMy43NTA1IDExLjI4NDcgMTMuNzUwNSAxMS43ODMgMTMuNzE3MyAxMi4xODg5QzEzLjY4MjkgMTIuNjEwNCAxMy42MDkgMTIuOTk4IDEzLjQyMzUgMTMuMzYyQzEzLjEzNTkgMTMuOTI2NSAxMi42NzY5IDE0LjM4NTQgMTIuMTEyNSAxNC42NzNDMTEuNzQ4NSAxNC44NTg1IDExLjM2MDkgMTQuOTMyNCAxMC45Mzk0IDE0Ljk2NjlDMTAuNTMzNSAxNSAxMC4wMzUyIDE1IDkuNDMxNDggMTVINC41Njk1QzMuOTY1NzggMTUgMy40Njc1MSAxNSAzLjA2MTYyIDE0Ljk2NjlDMi42NDAwNSAxNC45MzI0IDIuMjUyNTIgMTQuODU4NSAxLjg4ODUyIDE0LjY3M0MxLjMyNDAzIDE0LjM4NTQgMC44NjUwODkgMTMuOTI2NSAwLjU3NzQ2OSAxMy4zNjJDMC4zOTIwMDEgMTIuOTk4IDAuMzE4MDc4IDEyLjYxMDQgMC4yODM2MzQgMTIuMTg4OUMwLjI1MDQ3MSAxMS43ODMgMC4yNTA0NzkgMTEuMjg0NyAwLjI1MDQ4OSAxMC42ODFWOS41NjkwM0MwLjI1MDQ3OSA4Ljk2NTMgMC4yNTA0NzEgOC40NjcwMyAwLjI4MzYzNCA4LjA2MTEzQzAuMzE4MDc4IDcuNjM5NTYgMC4zOTIwMDEgNy4yNTIwMyAwLjU3NzQ2OSA2Ljg4ODAzQzAuODY1MDkgNi4zMjM1NCAxLjMyNDAzIDUuODY0NiAxLjg4ODUyIDUuNTc2OThDMi4wODUwOSA1LjQ3NjgyIDIuMjg4NTMgNS40MDkxOSAyLjUwMDQ5IDUuMzYyNzRWNC41Wk00LjAwMDQ5IDUuMjUxMjJDNC4xNzg3NyA1LjI0OTk5IDQuMzY4MjkgNS4yNSA0LjU2OTUxIDUuMjVIOS40MzE0NkM5LjYzMjY5IDUuMjUgOS44MjIyMSA1LjI0OTk5IDEwLjAwMDUgNS4yNTEyMlY0LjVDMTAuMDAwNSAyLjg0MzE1IDguNjU3MzQgMS41IDcuMDAwNDkgMS41QzUuMzQzNjMgMS41IDQuMDAwNDkgMi44NDMxNSA0LjAwMDQ5IDQuNVY1LjI1MTIyWk0zLjE4Mzc3IDYuNzc4MTZDMi44NTQ5NiA2LjgwNTAzIDIuNjg2OCA2Ljg1MzcyIDIuNTY5NSA2LjkxMzQ5QzIuMjg3MjYgNy4wNTczIDIuMDU3NzkgNy4yODY3NyAxLjkxMzk4IDcuNTY5MDFDMS44NTQyMSA3LjY4NjMxIDEuODA1NTIgNy44NTQ0NyAxLjc3ODY1IDguMTgzMjhDMS43NTEwNyA4LjUyMDg1IDEuNzUwNDkgOC45NTc1NyAxLjc1MDQ5IDkuNlYxMC42NUMxLjc1MDQ5IDExLjI5MjQgMS43NTEwNyAxMS43MjkyIDEuNzc4NjUgMTIuMDY2N0MxLjgwNTUyIDEyLjM5NTUgMS44NTQyMSAxMi41NjM3IDEuOTEzOTggMTIuNjgxQzIuMDU3NzkgMTIuOTYzMiAyLjI4NzI2IDEzLjE5MjcgMi41Njk1IDEzLjMzNjVDMi42ODY4IDEzLjM5NjMgMi44NTQ5NiAxMy40NDUgMy4xODM3NyAxMy40NzE4QzMuNTIxMzMgMTMuNDk5NCAzLjk1ODA1IDEzLjUgNC42MDA0OSAxMy41SDkuNDAwNDlDMTAuMDQyOSAxMy41IDEwLjQ3OTYgMTMuNDk5NCAxMC44MTcyIDEzLjQ3MThDMTEuMTQ2IDEzLjQ0NSAxMS4zMTQyIDEzLjM5NjMgMTEuNDMxNSAxMy4zMzY1QzExLjcxMzcgMTMuMTkyNyAxMS45NDMyIDEyLjk2MzIgMTIuMDg3IDEyLjY4MUMxMi4xNDY4IDEyLjU2MzcgMTIuMTk1NSAxMi4zOTU1IDEyLjIyMjMgMTIuMDY2N0MxMi4yNDk5IDExLjcyOTIgMTIuMjUwNSAxMS4yOTI0IDEyLjI1MDUgMTAuNjVWOS42QzEyLjI1MDUgOC45NTc1NyAxMi4yNDk5IDguNTIwODUgMTIuMjIyMyA4LjE4MzI4QzEyLjE5NTUgNy44NTQ0NyAxMi4xNDY4IDcuNjg2MzEgMTIuMDg3IDcuNTY5MDFDMTEuOTQzMiA3LjI4Njc3IDExLjcxMzcgNy4wNTczIDExLjQzMTUgNi45MTM0OUMxMS4zMTQyIDYuODUzNzIgMTEuMTQ2IDYuODA1MDMgMTAuODE3MiA2Ljc3ODE2QzEwLjQ3OTYgNi43NTA1OCAxMC4wNDI5IDYuNzUgOS40MDA0OSA2Ljc1SDQuNjAwNDlDMy45NTgwNSA2Ljc1IDMuNTIxMzMgNi43NTA1OCAzLjE4Mzc3IDYuNzc4MTZaTTcuMDAwNDkgOC42MjVDNy40MTQ3IDguNjI1IDcuNzUwNDkgOC45NjA3OSA3Ljc1MDQ5IDkuMzc1VjEwLjg3NUM3Ljc1MDQ5IDExLjI4OTIgNy40MTQ3IDExLjYyNSA3LjAwMDQ5IDExLjYyNUM2LjU4NjI4IDExLjYyNSA2LjI1MDQ5IDExLjI4OTIgNi4yNTA0OSAxMC44NzVWOS4zNzVDNi4yNTA0OSA4Ljk2MDc5IDYuNTg2MjggOC42MjUgNy4wMDA0OSA4LjYyNVoiIGZpbGw9IiM3Mjc2NzIiLz4KPC9zdmc+Cg==';
|
|
261
|
+
|
|
262
|
+
const alertSvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTkiIHZpZXdCb3g9IjAgMCAyMCAxOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05Ljk5OTkyIDEuOTk5NjdDNS44NTc3OCAxLjk5OTY3IDIuNDk5OTIgNS4zNTc1NCAyLjQ5OTkyIDkuNDk5NjdDMi40OTk5MiAxMy42NDE4IDUuODU3NzggMTYuOTk5NyA5Ljk5OTkyIDE2Ljk5OTdDMTQuMTQyMSAxNi45OTk3IDE3LjQ5OTkgMTMuNjQxOCAxNy40OTk5IDkuNDk5NjdDMTcuNDk5OSA1LjM1NzU0IDE0LjE0MjEgMS45OTk2NyA5Ljk5OTkyIDEuOTk5NjdaTTAuODMzMjUyIDkuNDk5NjdDMC44MzMyNTIgNC40MzcwNiA0LjkzNzMxIDAuMzMzMDA4IDkuOTk5OTIgMC4zMzMwMDhDMTUuMDYyNSAwLjMzMzAwOCAxOS4xNjY2IDQuNDM3MDYgMTkuMTY2NiA5LjQ5OTY3QzE5LjE2NjYgMTQuNTYyMyAxNS4wNjI1IDE4LjY2NjMgOS45OTk5MiAxOC42NjYzQzQuOTM3MzEgMTguNjY2MyAwLjgzMzI1MiAxNC41NjIzIDAuODMzMjUyIDkuNDk5NjdaTTkuOTk5OTIgNS4zMzMwMUMxMC40NjAyIDUuMzMzMDEgMTAuODMzMyA1LjcwNjEgMTAuODMzMyA2LjE2NjM0VjkuNDk5NjdDMTAuODMzMyA5Ljk1OTkxIDEwLjQ2MDIgMTAuMzMzIDkuOTk5OTIgMTAuMzMzQzkuNTM5NjggMTAuMzMzIDkuMTY2NTkgOS45NTk5MSA5LjE2NjU5IDkuNDk5NjdWNi4xNjYzNEM5LjE2NjU5IDUuNzA2MSA5LjUzOTY4IDUuMzMzMDEgOS45OTk5MiA1LjMzMzAxWk05LjE2NjU5IDEyLjgzM0M5LjE2NjU5IDEyLjM3MjggOS41Mzk2OCAxMS45OTk3IDkuOTk5OTIgMTEuOTk5N0gxMC4wMDgzQzEwLjQ2ODUgMTEuOTk5NyAxMC44NDE2IDEyLjM3MjggMTAuODQxNiAxMi44MzNDMTAuODQxNiAxMy4yOTMyIDEwLjQ2ODUgMTMuNjY2MyAxMC4wMDgzIDEzLjY2NjNIOS45OTk5MkM5LjUzOTY4IDEzLjY2NjMgOS4xNjY1OSAxMy4yOTMyIDkuMTY2NTkgMTIuODMzWiIgZmlsbD0iI0Q2NDIxRSIvPgo8L3N2Zz4K';
|
|
263
|
+
|
|
264
|
+
const checkSvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzE2MDNfNjEwNSkiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTkuOTk5OTIgMi41MDA2NUM1Ljg1Nzc4IDIuNTAwNjUgMi40OTk5MiA1Ljg1ODUyIDIuNDk5OTIgMTAuMDAwN0MyLjQ5OTkyIDE0LjE0MjggNS44NTc3OCAxNy41MDA3IDkuOTk5OTIgMTcuNTAwN0MxNC4xNDIxIDE3LjUwMDcgMTcuNDk5OSAxNC4xNDI4IDE3LjQ5OTkgMTAuMDAwN0MxNy40OTk5IDUuODU4NTIgMTQuMTQyMSAyLjUwMDY1IDkuOTk5OTIgMi41MDA2NVpNMC44MzMyNTIgMTAuMDAwN0MwLjgzMzI1MiA0LjkzODA0IDQuOTM3MzEgMC44MzM5ODQgOS45OTk5MiAwLjgzMzk4NEMxNS4wNjI1IDAuODMzOTg0IDE5LjE2NjYgNC45MzgwNCAxOS4xNjY2IDEwLjAwMDdDMTkuMTY2NiAxNS4wNjMzIDE1LjA2MjUgMTkuMTY3MyA5Ljk5OTkyIDE5LjE2NzNDNC45MzczMSAxOS4xNjczIDAuODMzMjUyIDE1LjA2MzMgMC44MzMyNTIgMTAuMDAwN1pNMTQuMzM5MiA2LjkxMTRDMTQuNjY0NiA3LjIzNjgzIDE0LjY2NDYgNy43NjQ0NyAxNC4zMzkyIDguMDg5OTFMOS4zMzkxNyAxMy4wODk5QzkuMDEzNzQgMTMuNDE1MyA4LjQ4NjEgMTMuNDE1MyA4LjE2MDY2IDEzLjA4OTlMNS42NjA2NiAxMC41ODk5QzUuMzM1MjMgMTAuMjY0NSA1LjMzNTIzIDkuNzM2ODMgNS42NjA2NiA5LjQxMTRDNS45ODYxIDkuMDg1OTYgNi41MTM3NCA5LjA4NTk2IDYuODM5MTcgOS40MTE0TDguNzQ5OTIgMTEuMzIyMUwxMy4xNjA3IDYuOTExNEMxMy40ODYxIDYuNTg1OTYgMTQuMDEzNyA2LjU4NTk2IDE0LjMzOTIgNi45MTE0WiIgZmlsbD0iIzAwQjc0RiIvPgo8L2c+CjxkZWZzPgo8Y2xpcFBhdGggaWQ9ImNsaXAwXzE2MDNfNjEwNSI+CjxyZWN0IHdpZHRoPSIyMCIgaGVpZ2h0PSIyMCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K';
|
|
265
|
+
|
|
266
|
+
const infoCircleSvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMCAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik05Ljk5OTkyIDMuMDAwNjVDNS44NTc3OCAzLjAwMDY1IDIuNDk5OTIgNi4zNTg1MiAyLjQ5OTkyIDEwLjUwMDdDMi40OTk5MiAxNC42NDI4IDUuODU3NzggMTguMDAwNyA5Ljk5OTkyIDE4LjAwMDdDMTQuMTQyMSAxOC4wMDA3IDE3LjQ5OTkgMTQuNjQyOCAxNy40OTk5IDEwLjUwMDdDMTcuNDk5OSA2LjM1ODUyIDE0LjE0MjEgMy4wMDA2NSA5Ljk5OTkyIDMuMDAwNjVaTTAuODMzMjUyIDEwLjUwMDdDMC44MzMyNTIgNS40MzgwNCA0LjkzNzMxIDEuMzMzOTggOS45OTk5MiAxLjMzMzk4QzE1LjA2MjUgMS4zMzM5OCAxOS4xNjY2IDUuNDM4MDQgMTkuMTY2NiAxMC41MDA3QzE5LjE2NjYgMTUuNTYzMyAxNS4wNjI1IDE5LjY2NzMgOS45OTk5MiAxOS42NjczQzQuOTM3MzEgMTkuNjY3MyAwLjgzMzI1MiAxNS41NjMzIDAuODMzMjUyIDEwLjUwMDdaTTkuMTY2NTkgNy4xNjczMkM5LjE2NjU5IDYuNzA3MDggOS41Mzk2OCA2LjMzMzk4IDkuOTk5OTIgNi4zMzM5OEgxMC4wMDgzQzEwLjQ2ODUgNi4zMzM5OCAxMC44NDE2IDYuNzA3MDggMTAuODQxNiA3LjE2NzMyQzEwLjg0MTYgNy42Mjc1NiAxMC40Njg1IDguMDAwNjUgMTAuMDA4MyA4LjAwMDY1SDkuOTk5OTJDOS41Mzk2OCA4LjAwMDY1IDkuMTY2NTkgNy42Mjc1NiA5LjE2NjU5IDcuMTY3MzJaTTkuOTk5OTIgOS42NjczMkMxMC40NjAyIDkuNjY3MzIgMTAuODMzMyAxMC4wNDA0IDEwLjgzMzMgMTAuNTAwN1YxMy44MzRDMTAuODMzMyAxNC4yOTQyIDEwLjQ2MDIgMTQuNjY3MyA5Ljk5OTkyIDE0LjY2NzNDOS41Mzk2OCAxNC42NjczIDkuMTY2NTkgMTQuMjk0MiA5LjE2NjU5IDEzLjgzNFYxMC41MDA3QzkuMTY2NTkgMTAuMDQwNCA5LjUzOTY4IDkuNjY3MzIgOS45OTk5MiA5LjY2NzMyWiIgZmlsbD0iI0UyRTJFMiIvPgo8L3N2Zz4K';
|
|
267
|
+
|
|
268
|
+
const titleIconSvg = 'data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iNDEiIGhlaWdodD0iNDIiIGZpbGw9Im5vbmUiPjxyZWN0IHdpZHRoPSI0MSIgaGVpZ2h0PSI0MSIgeT0iLjUiIGZpbGw9InVybCgjYSkiIHJ4PSI0Ii8+PGcgY2xpcC1wYXRoPSJ1cmwoI2IpIj48cmVjdCB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHg9IjE1IiB5PSIxMyIgZmlsbD0iIzEyMTIxNyIgcng9IjIiLz48cGF0aCBmaWxsPSIjQzhENkNFIiBkPSJNMjIuMjk0IDE5LjgzYTEuODc3IDEuODc3IDAgMCAwLTEuODc1IDEuODc2YzAgMS4wMzQuODQyIDEuODc1IDEuODc1IDEuODc1YTEuODc3IDEuODc3IDAgMCAwIDEuODc1LTEuODc1IDEuODc3IDEuODc3IDAgMCAwLTEuODc1LTEuODc1Wm0wIDIuNzNhLjg1NS44NTUgMCAxIDEgMC0xLjcxLjg1NS44NTUgMCAwIDEgMCAxLjcxWiIvPjxwYXRoIGZpbGw9IiNDOEQ2Q0UiIGQ9Ik0yMi4yOTQgMTcuMTU5YTQuNTUyIDQuNTUyIDAgMCAwLTQuNTQ2IDQuNTQ3IDQuNTUyIDQuNTUyIDAgMCAwIDQuNTQ2IDQuNTQ3IDQuNTUyIDQuNTUyIDAgMCAwIDQuNTQ3LTQuNTQ3IDQuNTUyIDQuNTUyIDAgMCAwLTQuNTQ3LTQuNTQ3Wm0wIDcuODgyYTMuMzM5IDMuMzM5IDAgMCAxLTMuMzM0LTMuMzM1IDMuMzM5IDMuMzM5IDAgMCAxIDMuMzM0LTMuMzM1IDMuMzM5IDMuMzM5IDAgMCAxIDMuMzM1IDMuMzM1IDMuMzM5IDMuMzM5IDAgMCAxLTMuMzM1IDMuMzM1WiIvPjxwYXRoIGZpbGw9IiNDOEQ2Q0UiIGQ9Ik0yMi4yOTQgMTQuNDExYTcuMjk0IDcuMjk0IDAgMSAwIDAgMTQuNTkgNy4yOTQgNy4yOTQgMCAwIDAgMC0xNC41OVptMCAxMy4zMjZhNi4wMzggNi4wMzggMCAwIDEtNi4wMy02LjAzMSA2LjAzOCA2LjAzOCAwIDAgMSA2LjAzLTYuMDMxIDYuMDM4IDYuMDM4IDAgMCAxIDYuMDMyIDYuMDMgNi4wMzggNi4wMzggMCAwIDEtNi4wMzIgNi4wMzJaIi8+PHBhdGggZmlsbD0iI0M4RDZDRSIgZD0ibTMwLjc3IDE0LjY3My0uOTA3LS4yMDFhLjI4LjI4IDAgMCAwLS4zMzUtLjMzNWwtLjItLjkwOGEuMjkyLjI5MiAwIDAgMC0uNDkzLS4xNDNsLTEuNDI0IDEuNDI0Yy0uMDcuMDctLjEuMTcyLS4wNzguMjdsLjI3IDEuMjItNS41MDcgNS41MDdhLjI4MS4yODEgMCAxIDAgLjM5Ny4zOTdMMjggMTYuMzk4bDEuMjIuMjdjLjA5OC4wMjIuMi0uMDA4LjI3LS4wNzhsMS40MjQtMS40MjRhLjI5Mi4yOTIgMCAwIDAtLjE0My0uNDkyWiIvPjwvZz48ZGVmcz48Y2xpcFBhdGggaWQ9ImIiPjxyZWN0IHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgeD0iMTUiIHk9IjEzIiBmaWxsPSIjZmZmIiByeD0iMiIvPjwvY2xpcFBhdGg+PHBhdHRlcm4gaWQ9ImEiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIHBhdHRlcm5Db250ZW50VW5pdHM9Im9iamVjdEJvdW5kaW5nQm94Ij48dXNlIHhsaW5rOmhyZWY9IiNjIiB0cmFuc2Zvcm09Im1hdHJpeCguMDA2OTQgMCAwIC4wMDY5NCAtLjA0OSAwKSIvPjwvcGF0dGVybj48aW1hZ2UgeGxpbms6aHJlZj0iZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFKNEFBQUNRQ0FZQUFBRDVqOUlMQUFBTVMybERRMUJKUTBNZ1VISnZabWxzWlFBQVNJbVZWd2RZVTFjYlBuZGtRZ2dRaUlDTXNKY2dJaU9BakJCVzJCdEJWRUlTSUl3WUU0S0tHeWxXc0c0UndWSFJLa054VlVDS0M3VnFwU2p1WFJ5b0tMVllpMXY1VHdpZ3BmOTQvaS9QdWZmTmU3N3pudS83N3JuakFFRHY0a3VsdWFnbUFIbVNmRmxzc0Q5cmNuSUtpOVFERUtBSmY3YUF4UmZJcFp6bzZIQUFiZmo4ZDN0OURYcER1K3lnMVBwbi8zODFMYUZJTGdBQWlZWTRYU2dYNUVIOEl3QjRxMEFxeXdlQUtJVzgrYXg4cVJLdmcxaEhCZ09FdUVhSk0xVzRWWW5UVmZqaW9FOThMQmZpUndDUTFmbDhXU1lBR24yUVp4VUlNcUVPSFdZTG5DUkNzUVJpUDRoOTh2Sm1DQ0ZlQkxFTjlJRnowcFg2N1BTdmRETC9wcGsrb3Nublo0NWdWUzZEUmc0UXk2VzUvRG4vWnpuK3QrWGxLb2Juc0laTlBVc1dFcXZNR2RidFVjNk1NQ1ZXaC9pdEpEMHlDbUp0QUZCY0xCejBWMkptbGlJa1FlV1AyZ2prWEZnendJUjRranczampmRXh3cjVBV0VRRzBLY0ljbU5EQi95S2NvUUJ5bDlZUDNRQ25FK0x4NWlQWWhyUlBMQXVDR2Y0N0lac2NQelhzdVFjVGxEL0ZPK2JEQUdwZjVuUlU0Q1I2V1BhV2VKZUVQNm1HTmhWbndTeEZTSUF3ckVpWkVRYTBBY0tjK0pDeHZ5U1MzTTRrWU8rOGdVc2NwY0xDQ1dpU1RCL2lwOXJEeERGaFE3NUYrWEp4L09IVHVlSmVaRkR1RkwrVm54SWFwYVlZOEUvTUg0WVM1WW4wakNTUmpXRWNrbmh3L25JaFFGQktweXg4a2lTVUtjaXNmMXBQbitzYXF4dUowME4zcklIL2NYNVFZcmVUT0k0K1VGY2NOakMvTGg0bFRwNHlYUy9PaDRWWng0WlRZL05Gb1ZENzRQaEFNdUNBQXNvSUF0SGN3QTJVRGMwZHZVQy8rcGVvSUFIOGhBSmhBQmh5Rm1lRVRTWUk4RUh1TkFJZmdkSWhHUWo0enpIK3dWZ1FMSWZ4ckZLam54Q0tjNk9vQ01vVDZsU2c1NERIRWVDQU81OEw5aVVFa3lFa0VpZUFRWjhUOGk0c01tZ0Rua3dxYnMvL2Y4TVB1RjRVQW1mSWhSRE0vSW9nOTdFZ09KQWNRUVloRFJGamZBZlhBdlBCd2UvV0J6eHRtNHgzQWVYL3dKandtZGhBZUVxNFF1d3MzcDRpTFpxQ2dqUUJmVUR4cXFUL3JYOWNHdG9LWXI3bzk3UTNXb2pETnhBK0NBdThCNU9MZ3ZuTmtWc3R5aHVKVlZZWTNTL2xzR1gxMmhJVCtLRXdXbGpLSDRVV3hHajlTdzAzQWRVVkhXK3V2NnFHSk5INmszZDZSbjlQemNyNm92aE9ldzBaN1l0OWhCN0F4MkFqdUh0V0pOZ0lVZHc1cXhkdXlJRW8rc3VFZURLMjU0dHRqQmVIS2d6dWcxOCtYS0tpc3BkNnAzNm5INnFPckxGODNPVjk2TTNCblNPVEp4WmxZK2l3UGZHQ0lXVHlKd0hNZHlkbkoyQlVENS9sRTkzbDdGREw1WEVHYjdGMjdKYndCNEh4c1lHUGpwQ3hkNkRJRDk3dkNSY1BnTFo4T0dyeFkxQU00ZUZpaGtCU29PVng0SThNbEJoM2VmUGpBRzVzQUc1dU1NM0lBWDhBT0JJQlJFZ1hpUURLYkI2TFBnT3BlQldXQWVXQXhLUUJsWUJkYURTckFWYkFjMVlBODRBSnBBS3pnQmZnYm53VVZ3RmR5R3E2Y2JQQWQ5NERYNGdDQUlDYUVoREVRZk1VRXNFWHZFR1dFalBrZ2dFbzdFSXNsSUdwS0pTQkFGTWc5WmdwUWhhNUJLWkJ0U2kreEhEaU1ua0hOSUozSVR1WS8wSUg4aTcxRU1WVWQxVUNQVUNoMlBzbEVPR29iR28xUFJUSFFtV29nV295dlFDclFhM1kwMm9pZlE4K2hWdEF0OWp2WmpBRlBEbUpncDVvQ3hNUzRXaGFWZ0daZ01XNENWWXVWWU5kYUF0Y0RyZkJucnducXhkemdSWitBczNBR3U0QkE4QVJmZ00vRUYrSEs4RXEvQkcvRlQrR1g4UHQ2SGZ5YlFDSVlFZTRJbmdVZVlUTWdrekNLVUVNb0pPd21IQ0tmaHZkUk5lRTBrRXBsRWE2STd2QmVUaWRuRXVjVGx4TTNFdmNUanhFN2lRMkkvaVVUU0o5bVR2RWxSSkQ0cG4xUkMya2phVFRwR3VrVHFKcjBscTVGTnlNN2tJSElLV1VJdUlwZVQ2OGhIeVpmSVQ4Z2ZLSm9VUzRvbkpZb2lwTXlocktUc29MUlFMbEM2S1Irb1dsUnJxamMxbnBwTlhVeXRvRFpRVDFQdlVGK3BxYW1acVhtb3hhaUoxUmFwVmFqdFV6dXJkbC90bmJxMnVwMDZWejFWWGFHK1FuMlgrbkgxbStxdmFEU2FGYzJQbGtMTHA2MmcxZEpPMHU3UjNtb3dOQncxZUJwQ2pZVWFWUnFOR3BjMFh0QXBkRXM2aHo2TlhrZ3ZweCtrWDZEM2FsSTByVFM1bW56TkJacFZtb2MxcjJ2MmF6RzBKbWhGYWVWcExkZXEwenFuOVZTYnBHMmxIYWd0MUM3VzNxNTlVdnNoQTJPWU03Z01BV01KWXdmak5LTmJoNmhqcmNQVHlkWXAwOW1qMDZIVHA2dXQ2NkticUR0YnQwcjNpRzRYRTJOYU1Ybk1YT1pLNWdIbU5lYjdNVVpqT0dORVk1YU5hUmh6YWN3YnZiRjZmbm9pdlZLOXZYcFg5ZDdycy9RRDlYUDBWK3MzNmQ4MXdBM3NER0lNWmhsc01UaHQwRHRXWjZ6WFdNSFkwckVIeHQ0eVJBM3RER01ONXhwdU4ydzM3RGN5TmdvMmtocHRORHBwMUd2TU5QWXp6alplWjN6VXVNZUVZZUpqSWpaWlozTE01QmxMbDhWaDViSXFXS2RZZmFhR3BpR21DdE50cGgybUg4eXN6UkxNaXN6Mm10MDFwNXF6elRQTTE1bTNtZmRabUZoRVdNeXpxTGU0WlVteFpGdG1XVzZ3UEdQNXhzcmFLc2xxcVZXVDFWTnJQV3VlZGFGMXZmVWRHNXFOcjgxTW0ycWJLN1pFVzdadGp1MW0yNHQycUoyclhaWmRsZDBGZTlUZXpWNXN2OW0rY3h4aG5NYzR5YmpxY2RjZDFCMDREZ1VPOVE3M0habU80WTVGamsyT0w4WmJqRThadjNyOG1mR2ZuVnlkY3AxMk9OMmVvRDBoZEVMUmhKWUpmenJiT1F1Y3E1eXZUS1JOREpxNGNHTHp4SmN1OWk0aWx5MHVOMXdacmhHdVMxM2JYRCs1dWJ2SjNCcmNldHd0M05QY043bGZaK3V3bzluTDJXYzlDQjcrSGdzOVdqM2VlYnA1NW5zZThQekR5OEVyeDZ2TzYra2s2MG1pU1RzbVBmUTI4K1o3Yi9QdThtSDVwUGw4NzlQbGErckw5NjMyZmVCbjdpZjAyK24zaEdQTHllYnM1cnp3ZC9LWCtSL3lmOFAxNU03bkhnL0FBb0lEU2dNNkFyVURFd0lyQSs4Rm1RVmxCdFVIOVFXN0JzOE5QaDVDQ0FrTFdSMXluV2ZFRS9CcWVYMmg3cUh6UTArRnFZZkZoVldHUFFpM0M1ZUZ0MFNnRWFFUmF5UHVSRnBHU2lLYm9rQVVMMnB0MU4xbzYraVowVC9GRUdPaVk2cGlIc2RPaUowWGV5YU9FVGM5cmk3dWRieC8vTXI0MndrMkNZcUV0a1I2WW1waWJlS2JwSUNrTlVsZGs4ZFBuai81ZkxKQnNqaTVPWVdVa3BpeU02Vi9TdUNVOVZPNlUxMVRTMUt2VGJXZU9udnF1V2tHMDNLbkhabE9uODZmZmpDTmtKYVVWcGYya1IvRnIrYjNwL1BTTjZYM0NiaUNEWUxuUWovaE9tR1B5RnUwUnZRa3d6dGpUY2JUVE8vTXRaazlXYjVaNVZtOVlxNjRVdnd5T3lSN2EvYWJuS2ljWFRrRHVVbTVlL1BJZVdsNWh5WGFraHpKcVJuR00yYlA2SlRhUzB1a1hUTTlaNjZmMlNjTGsrMlVJL0twOHVaOEhmaWgzNjZ3VVh5anVGL2dVMUJWOEhaVzRxeURzN1ZtUzJhM3o3R2JzMnpPazhLZ3doL200bk1GYzl2bW1jNWJQTy8rZk03OGJRdVFCZWtMMmhhYUx5eGUyTDBvZUZITll1cmluTVcvRmprVnJTbjZhMG5Ta3BaaW8rSkZ4USsvQ2Y2bXZrU2pSRlp5ZmFuWDBxM2Y0dCtLdisxWU5uSFp4bVdmUzRXbHY1UTVsWldYZlZ3dVdQN0xkeE8rcS9odVlFWEdpbzZWYml1M3JDS3VrcXk2dHRwM2RjMGFyVFdGYXg2dWpWamJ1STYxcm5UZFgrdW5yejlYN2xLK2RRTjFnMkpEVjBWNFJmTkdpNDJyTm42c3pLcThXdVZmdFhlVDRhWmxtOTVzRm02K3RNVnZTOE5XbzYxbFc5OS9MLzcreHJiZ2JZM1ZWdFhsMjRuYkM3WS8zcEc0NDh3UDdCOXFkeHJzTE52NWFaZGtWMWROYk0ycFd2ZmEyanJEdXBYMWFMMml2bWQzNnU2TGV3TDJORGM0Tkd6Ynk5eGJ0Zy9zVSt4N3RqOXQvN1VEWVFmYURySVBOdnhvK2VPbVE0eERwWTFJNDV6R3ZxYXNwcTdtNU9iT3c2R0gyMXE4V2c3OTVQalRybGJUMXFvanVrZFdIcVVlTFQ0NmNLendXUDl4NmZIZUU1a25IclpOYjd0OWN2TEpLNmRpVG5XY0RqdDk5dWVnbjArZTRadzVkdGI3Yk9zNXozT0hmMkgvMG5UZTdYeGp1MnY3b1Y5ZGZ6M1U0ZGJSZU1IOVF2TkZqNHN0blpNNmoxN3l2WFRpY3NEbG42L3dycHkvR25tMTgxckN0UnZYVTY5MzNSRGVlSG96OStiTFd3VzNQdHhlZElkd3AvU3U1dDN5ZTRiM3FuK3ovVzF2bDF2WGtmc0I5OXNmeEQyNC9WRHc4UGtqK2FPUDNjV1BhWS9MbjVnOHFYM3EvTFMxSjZqbjRyTXB6N3FmUzU5LzZDMzVYZXYzVFM5c1h2ejRoOThmN1gyVCs3cGZ5bDRPL0xuOGxmNnJYWCs1L05YV0g5MS83M1hlNnc5dlN0L3F2NjE1eDM1MzVuM1MreWNmWm4wa2ZhejRaUHVwNVhQWTV6c0RlUU1EVXI2TVAvZ3BnQUhsMWlZRGdEOTNBVUJMQm9BQjk0M1VLYXI5NGFBaHFqM3RJQUwvQ2F2MmtJUG1Ca0FEL0thUDZZVmZOOWNCMkxjREFDdW9UMDhGSUpvR1FMd0hRQ2RPSEduRGU3bkJmYWZTaUhCdjhIMzBwL1M4ZFBCdlRMVW4vU3J1MFdlZ1ZIVUJvOC8vQWpDZWd4NTJmK3dtQUFBQWltVllTV1pOVFFBcUFBQUFDQUFFQVJvQUJRQUFBQUVBQUFBK0FSc0FCUUFBQUFFQUFBQkdBU2dBQXdBQUFBRUFBZ0FBaDJrQUJBQUFBQUVBQUFCT0FBQUFBQUFBQUpBQUFBQUJBQUFBa0FBQUFBRUFBNUtHQUFjQUFBQVNBQUFBZUtBQ0FBUUFBQUFCQUFBQW5xQURBQVFBQUFBQkFBQUFrQUFBQUFCQlUwTkpTUUFBQUZOamNtVmxibk5vYjNTTW9kczRBQUFBQ1hCSVdYTUFBQllsQUFBV0pRRkpVaVR3QUFBQjFtbFVXSFJZVFV3NlkyOXRMbUZrYjJKbExuaHRjQUFBQUFBQVBIZzZlRzF3YldWMFlTQjRiV3h1Y3pwNFBTSmhaRzlpWlRwdWN6cHRaWFJoTHlJZ2VEcDRiWEIwYXowaVdFMVFJRU52Y21VZ05pNHdMakFpUGdvZ0lDQThjbVJtT2xKRVJpQjRiV3h1Y3pweVpHWTlJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MekU1T1Rrdk1ESXZNakl0Y21SbUxYTjViblJoZUMxdWN5TWlQZ29nSUNBZ0lDQThjbVJtT2tSbGMyTnlhWEIwYVc5dUlISmtaanBoWW05MWREMGlJZ29nSUNBZ0lDQWdJQ0FnSUNCNGJXeHVjenBsZUdsbVBTSm9kSFJ3T2k4dmJuTXVZV1J2WW1VdVkyOXRMMlY0YVdZdk1TNHdMeUkrQ2lBZ0lDQWdJQ0FnSUR4bGVHbG1PbEJwZUdWc1dVUnBiV1Z1YzJsdmJqNHhORFE4TDJWNGFXWTZVR2w0Wld4WlJHbHRaVzV6YVc5dVBnb2dJQ0FnSUNBZ0lDQThaWGhwWmpwUWFYaGxiRmhFYVcxbGJuTnBiMjQrTVRVNFBDOWxlR2xtT2xCcGVHVnNXRVJwYldWdWMybHZiajRLSUNBZ0lDQWdJQ0FnUEdWNGFXWTZWWE5sY2tOdmJXMWxiblErVTJOeVpXVnVjMmh2ZER3dlpYaHBaanBWYzJWeVEyOXRiV1Z1ZEQ0S0lDQWdJQ0FnUEM5eVpHWTZSR1Z6WTNKcGNIUnBiMjQrQ2lBZ0lEd3ZjbVJtT2xKRVJqNEtQQzk0T25odGNHMWxkR0UrQ3FlSlpsY0FBQUFjYVVSUFZBQUFBQUlBQUFBQUFBQUFTQUFBQUNnQUFBQklBQUFBU0FBQUlqK2NSa1QxQUFBaUMwbEVRVlI0QWRSYzdaSWxSM0h0TzdNZjBncEpDRXNJTEdQQ0VRNy80UW1NOUF4V0JINFVnK1JIQUlFZnhZNkFWekFTdnh4aGg4T0JNY2JZQmlNaFZueEl1MXJ0N3N5TzgrVEpVNWxWWFgzbnp1d2dpUmJUVlpWNThtUm1WZDdxajN1WDNiTXZQSGUyL01FY3UybWtrcDR0VjVXS0dOR0NNM2hIZXNHVzFwbkcxd3VOWkpPblI4NUgxZGRJTkxmWUw2MTgrNUJYNFN2NWQ1Lyt3anRrWXE1eVVzN3paNzdnYm5jZUxpZDUzZ3VldWRMNFJ3VUVneERETStXdWRyUTdmK3cwSS9mSzdQTDhLeW9UZkVvTGI1amdXZVJOZHBVVHN0OXYxVDZ1MTU3TDJMWUlIVmpSdGQ4bWdUWHBSYmhGVkxBYlhUR2ZUWXZ3OHJ3emQ1K3l3bFBxczFCSDJWVk94UGwrMTRqMFAxK29NVjZPMXp3OTdxenRZQ1ozOEQ2TFVZZVlNcTZlK2Z4Uno1YWpaTXplK1d6N0VaK2l3c3RFdDBPK3FzUVA4WlZSN0E1WXpJeHNtM3Riazc1cUx6bXJkS3N2ZGxoZHpITEdTRFp4SnVLcTdxTS93Y0piSjVYcGpiM0huOGkyRmhlNk4rTmVkbm52c1h5SEVBQUszTWEwSEVLUnMzWXhkTnBsTDhQSUhyUi93SVhYSjVLcGJ2VWVZeEtycWJzOXozYzEySXJuVVBuT2FxajZNKzdMMERjS0doOTJXYitNbzNWZWZmeXB2NHJpK3dSMnZEYVRtY20wOXhpVEoxUGYzVEE0eEtlTXBzRVVEc1BOb00wRk9tMHdJWXZTY1pvMVVWMXNYK0FKbFVUYlJWaGlGSGdTeVNHaUdrL0YrNzNvWTNCL3pJVzNQMUxjUzYyWG9xWjdhSCsvbjU3bFBJL2lVaXQ4V1Z3UUhuQUpGMFBuUCtpbW1VOE5PdXRTNHNPZGFIMUk4Zmg2dTBOSHM4THpXRFVOQjhRNDgvVXBLanhsTWd2elVObWhzd0Jmd0U1OFNsV1dkSjkzZmxqTzkzcytndUZNQ3hBQjdDR2dxZ2QwVDhjMWdSNVdOWnY5YWZIVndyNE01OGY3QW5rZDRkWHNjbXZlK1N4T0NnM0FLajVnNTRMSnpHT2xBVWFIWTFYUWFxWGNhbTFocDN3eng4WkJIM1llOU4zdVZIME51S3JhNnRjQ25QSmVnUE5qM1BFeUt1MFNqMXQwL1VSc1RSZmtreVVjUlljV25CZk9hRng5TTA4OUQrLzJRYXRaN2VkVXVYUzZ5TkFNdU4xWkVaUnVwZTUyd2cxTXhjLzZNUE8weHR3dXdQZXhGVjR0RWhYQ0dQY3N5Wm1zNStvUlBXYy9jdVFvT3FUZ3pNWmhzQjBxeWVtazkwcVl6YjRCSE5qSHVuZmtORENxZkxFTHpyZ0FNL2xxYnFwNU9FeHo2MkV3d1FSMGJ4TXVFeVBpQS9nK2djSmpkSW94b3o2OHQ1cmMwUlJWMGk1VjVtbm1iRi9CQ1c4MDlBV0JabE5LT3RXSVdtSEdnRFEyZEtNQ3RvNDViTUZ1VWtteFhZVFQrWkZaaEtLNEZWbnptNEtEZTZTKzJQWHI5MXg0bVMzQ3dyRk8rTkQ4bE40K3ZHRUFDeWZwU3dKcnR3b3V3VkZqMCtWcnptUFoyL2ppblgzNUtCaTFXK3prZ0xhN2hBWjhsVUhDTlVVYnhPZjU3YzBLclNrNElzTTJ6KytoOFBvd0VPSmhvZlRKY0xURlZiREl6V0U5ZGt5OGF0dDB0RTd3R1dpMVdLYXFYSlZIVVl3MGtoL1Nqbnk0TjB5Wm1OWE9HQlBkdEFhdkh3d2lDczY2K3hnYmozY09ReVk3ZTJ1clhuS0ZoWmV1KzhDeG1IVGF1eDVSZGJ5UHErTFE1eFR2bGlOWHBBLzJlcWJVdXFVUEEyR05scHlvSGd1ODM5N0ZaYnp0bk9XMVFtOEIzbDRDRGgzdVZaQzJDL2Q0anZxb3BweDZxSEJTZWJBMjZGU0VZbktFWVh0dnhhNTFGZUQ1U0prd0JLMjRwTFdOcks3dWRjcVk5ZHBabGV6dno3bFNxcWtVQ3pUUzlwTkVhUzlydFdJTFR2MysreE9pZ0FTUFd2aytwNVZyT2pLR2ZrK2JXOHVJV28wVWJaWk1hRlI0SWd0ZkdyYlc0VGdSNE1NdGJETUM0RkVibmRlcGRQTnZWaGp6NzMzSDI3K2tzelJxNkwxK3l1WHpTQnVjYzFwbHkwUXhPcWpnQkRleVhHaHhmUkt0QXFKdmpUSzJrRWhSUTV4TUpjcytiY2FhcmVaOWYrYWdSMmpFZFpnNEZ3QWZ2cXZaOGZZN2FmNE82bHlBSytaaTF5NVY0VUJ6Rks4K2FzRk5ReEErbEN1K3FWRVJEdmE1S2RvRTc0NzZHLzk5NlJYS2VYZDBCRlFsTlAwNUVPMUNzaHF2SFhPL2tNNkl0OUhnbDY4MTZvb0xqODdxVkJ5ZVZnYW5LVW5KTkduTWcwSHpreC80TWovTmUxeFNpNHJnVVREanEyR2c3MzdOYTdPTkNMeTZJM2J3U0k4UGhmY1pUUnM2bFYzQ1RFQ29ERWFIVzJQRHd5UmN0azc3bEExMkRhZlpwQURuczNZcExhREJYRllyOFI0QnVXZWNWMWg0Yy9vTFRHYWJSSlZTMm1hdlprbVB6ZThFaE1zSTlDdlZJTmpjNGFLWUdGSEd4UWNaSTRucmxQc0JwMWVWeU5uS3FrYnVKU2lzRng2d2tDTGFSNHkzSlZZdHQvcnlDUlo1TkZtS20yRi9hWlVUK204ZzcwZ25hZkNOWXFrMzI1bkJGUlNlMHB6NWJUdk9URmxsTVVGWWk3RlUxblBYSitLakVSUVFMbVJSbHE2N045dzBmc05CVHAyeGVHV0IxQlNWZ3dFM0dVdkhTVjNtNnJZRE1haXg2RHdPWUFnT2VtR3RDTnZXNmNqOUorTlJZU24yTGw1WUczVk5nWVR3MXo5QU1BSWFOTHh5U1NYTnp6MnZEUjc3SG84SnJqMGZYSFROdERJeDFaWXdabXR5dURSQlBxbHhzc2t0aXRJRnpXeUhTeTdFd2YvOGFTUUtndTZOcUsyc1dUZ3ZUbjE4VFdKaXJ4dW9IUXNXRkFkc1RhRFc3VGtXckRMaTVUQUs4TEFpN0RMM1ROeTVpQkZCSlVkSTdTZ2drL1V3akhydVpuWk9oNVlEMitNK1hOUnlxZjdQRDdFUEJMYTYyMEcvbndLOG8rc2x3TFROd0tuSTEva2RURllGNS9vemV3TUlmc3Rrd01NSGR5SjBVc21hc1dpdGc0Y0hMeUxYbDV6UURaUFNCVkZiZUpjN1IzS2RuWEhuOFhtMXdrUSt6Z291SCtOU2JQOU5nd1Y1eklBYndadG54bzZmUTE4azJjMGNKVXNhOXRhSXRVUzJmWnRNa0QvV2puZTVvdXNEVUhBMXJUNlZPZDZEZCtQVWQxTmFTR1lGQnl2R2ozTXN2TWxnNW5oVVY0elJZbk9DUlR0Y2JTZFhRRzU5bWdRRUE1T0h5bkdORXdXTG9oSVV4VVVzSUtCazJ6b1NzRFZML3c5cSs3T3ptRnJyWDZHNVRpSm1xeEhhYnI2a2lCZzk3cEIxTktaWWV5T2JLT2J0d0hLcEhRK2VqU2RUb1dDYVNCZEY3N3lxK05tdUV1czc3Y1RHNUdNaGRMNWhaOGVxNENBMDNaR3RWc1lPSU9WUWQvMFFIOW11OXNoMklzRm9HMEhBbHlsODkzTUVTR3hzc3VtbWhJSURsNzltNFZNdFl1cUxuWVhwUEhhQ1g4NkZXbmZvQ244VTJjVURDWEJ4c0g0UW5CMU9vRzRaT0dra1lHcEhxL0JXZHJUSE9mYmdGSGd2ZkEzU2ZwaStMN2ZqUmF4dEFZejlFTGZkRFBRUjJkeDBwWk9FckRCSHQ0VXNNdm9ONzExY2d3TWI3czU0VVZXd0RnZVhUWFl3UkVIREZuSzAxRGdXUXh4dUEwM3VWQTdEdkFhUVZvN093Z2sxcExYUUhCVnh1RitRdExnbVBtQ2dnSm8vUklPSEVXZHJKOS81TUNyeS9OREJHSDg2Q0hLSkNyQ3pJMjVlZU5CVkxuSFdOc2tlcy9ET2QxWGRkdGwzaWlGZ0RUSDVjZVFHRHhubGhEVnduVnVaZVlDMHdIU0hyU1kxVUdDQXhsdnp5ZDBybENxSWtFTUtIdC9STUpCNzlPTkFVV0dIUlBINGgwVWNzTFAvR01kb3FBZ2FpWEViUnJacW14UHJPRVd4TTJlNFErVDlueW5EQlpzWUFHNEhZMEFQOHRCaDZERjZwNXhTVDI5QlVoRHNKbTZsYWdMYVhyend3RzIyY24ySUsvcVVSWXVnZEFhV0dPYWxzdXJCd3dVRVFVNWdvVlBYekk0Q2NZYkxLMHc3cWhDTXNpaE1pR1dDV0x3Z3V3S0FOZzRCTlViYnNLbkVFNjFidVkrVXkyeGJNbWpFSGEzaWcwOWN5cmVlZ24wSDlBRG9FZEh3MHE4SU1FVUY0R0w1N2lZcURWcXY2cHR3MGpHdkY3ckhFNi9Gb2RBa21yQVBJbGtNWWgrT0xNVHlYSFdRc09pU0xYdU4yVXd3b1NnNkx6UTBrR214REFqV2xXWG81ZEgxeFliOHRHb0w3VnlRNFU5TFJnekczTitTTWYyaUJ6MC9ITmlydkFpY1NUbXlGYmVwOHFBN0pHVTB4aEl0Q3dsamV6UG45MzdzeTNCOTZhVlh4QUZ2T3BTSnhteFQ3dzU2Wll3cVpncndQQzlkZUhQS2ZWSXR4b2lwZ1NhR3ZkUnhBU0VOR1JxOHl1akdISEtYQ3k1UmlMb2IyMVRib29rMTE5QWt2aU1aWHp1QUVnbUVYS1lxRVRWc3ZURERvc2tIQnNRdVhmSXdVNVlzenlxcWRXdUVJckF1RHpBbEIzYStSN2dBcHdQQ0xFWTNEVG5LajJSQmFGZUk4WDV4ZENaUEpOUjVGWkFVWFh0NDRZblB2Q25Fam1udkFCWmJCNGloNzFscFFhZW9nYnFReEJhK2lBMlRsN3VjQ2V2TTlmVEZHSzdUdjFPaGNCQ1B5Vm1ZTERMNkRWMHdBRCtXWUlSai9xM24zTEtNZHBCbk1DdzA4alVXanlYS2hORDhoS1FQY0NKbUx5ZTBPc3pTaXcreEpDZXJMc1lOTG51ek5WV2RQckdSUDBmMFdjZkZSeFVQL1FzV25wSEdSQTQ4MjBQRXNjZUdHejNNKzRDMTFFeE1JMXYwa1MvTU1HWGc2djZsRldnMWwyckRreTZWRURNKzcySEV3M25oVjd0SFVqa0F4V2w1ZVRqVkpDU1ZqU0VTcVREVXpyaUlod2ErMlhvVEowb05aZjUzS3VKOXJiRWdqek5jZW12eFZWSkhJTWVNZkx3ZkpEeWpTL08wU2RrTWw5cUxGZDZNUDduMjlMWU1KVjhIS1EybWdsbzcyLzljcmtJT00wd1czczNwVUZGcDNPWXk4SkpqU0Q3ZkoyMkRJc2Rtc1hra2RXa1FVbU54TG8zU0ZRdTMrdVNIakw1d1h0c3dyaVp2UmE3N1FOTmdEbEJzNWxVejFLeWtLeTJLQ0E4Mlo4dXB3V0EzSEY2NGlvV3hZVFJCMHE4Z1R0TU5nbmhxMlp3ZVhuaGNJalBjVDlpWTBRRVV5YThPY2VBZURZZkdIUFZMQ3kzMW5DL2pFNldKMGZXM2N6MEZpWUlaaGNoRkNySGJTMmF0djh3RkFUMnpCeE00Y0xEN2FmTEdUdjhZUXNkREtPbzBTdjBnSDN5QVl4TnJHaTh6Rlk3WlptNklNN3d4WkNUZ0lZMDc1Q096eCs0bnVJTThRNzJJemhYUTNCT2pzL0dHcTdTVnJyYjBYeVhxN3lrOFJTK28ybTB5SWJ3VnpCYU9UQlJJek9uWFpIV1dQcm1TdE1UTjBDZFpDbXR4V1czM2RFVmV1L0RudGVNZHJvVzh3cHJpM0RPcXJXWUFHQjZ4OERZUWh6UWFxNVVjclhqUVp6NlVDTXMyQWpTRVpveDRuYXRVUEN3OHZ3L1ZoNnUwa3JmNHJlTytVSGo0RDhVM09SUWpvNVN2QVJoRm5ja0pYWEQrb1NyajB0MG92QW1KRzdVVUNzVkdOK2FSMDBXNzNucmlvN01wQ1E5eWhYSmszMFI0VVNtRTNnR2xxcnFxTXhubkJJVVg1TllpMWh6MUJkQzdFQ29MRU5sczc1QTlmdVRxL1liV0F2UmJCaHM2dDR4YWhKS0RXN0hTaitkVUNwREpHa3R3Z2dKM0ZYN1A1NitjRzdsM09DZmdoMmV3dzhBNkhMck1PZEZyc3RhaDNzOHdtaCtUd3BzUnlIaWJTQWh2QlRPcTdjSXJyMEprYkhiYTFaUThFcFpNTUZ4cHdLdUp5VWtKYjZncUhVaW5ER0dKWmVMUkdCS3l0ZURnakNxWE5XbHhUaDd3cGpzV0JCRkZQdmhJbXhsWFdzTkxqbUNGQXhJYzFxcllXbjRGN1RwRUdnZkc5cjlIdTFPcm9YN25JeVBQOHVuOG9oT0g1amxKcFluV0RFWWJ1VisvUUc0c0F3bUdER2FpNkVVQmkzVnlYVzg1OFJFQmRvbkMwdVMxOEdDSlN5eC9uT25VQk5sbGs0Y1pWR2R0TVNBR3V5NnZGVWJuTlNvV1BpVTRFOUhiS0ZicDVSOXlIVFVVeUlUMWRpam10US9pZXk2aGtvdDZ2S3N6VmhXMXVOVUdpY2RtT00ycHYybzVPMWtYbjl2UmlIbWEzM1JOQlRBNE10MXg0UEgwZXJlWWZYUFJzUkRsNTNCU0pOT3VZRVlqSm9rYVRhMUlDQVZ3RzN5cVErQU5KaWs5OFpjbEdJY1FHTzhLWklJd1R5dm91Tk9oZDM1Uk5YYW5JQjBkeVl1NHF5dHkwM1oyMlpVTjJzcVRIT3Nkc3VNTXU4U1RVVnh0M3R6SVVGR0ltc0RkN3RnTVRIN0VwM2lYRzhaZk1aOCs2SXF2Y2RHRnhXdTRXYUd0WklvbURMMFpJN2JRK2gxdlppU0N0YkUwWFN1WVVZbE5vc1JKWTVLaXhLZXdKUnh5Sk94RU5vWVZwNnpZT3luRytETnJtd2oyVE9JVER3RDFjb1VSRG8zUjQ2ZTZzWmlXcU1ZMTRLRVhEN25BTnJNSk9lTHkvT1FEVmp4NkhzZzJ1TERJeU1rT25JWGluRlU1TkhZRWFIZGtIYlB6bjJJaFZ5czhWNXZjTTdmeDZjbUQ1ZEhwUXlQTnl5NC9QQTQxcWxpYm9IWnVxRmFGNTh3MHFtZVBQUVZYVzNnS3l2aGpmbnh5bWp1ZktVNVFsYm5FRjZVUVdMY1ZEdWJObjJCbEpRNjFra2VyeWJBaFM2cGVYaWtaTFBvNFRTbG1SdVNCdXdua0dvMjdtamhSQ0xRWEMyMWNiN0ZOQzlBWHByZXF2cE9wY0VWMkxaNFdBSHpZSUFvT1lwOUxDUEUxSTFyVE9hZUw4SHREaS9yazRYTDY4Q094Yk94d29YYmo2R3UrbTZ4MUdwY1hhQkVmV0hpY2dtVFo2QWxtRHVSRG9yYXlQaU9tYndwdzBZQ2ZYQnU2RHA5UTl0SHdsM1JRWU1MME5HcERQd0lJSHA4RXc4SFlubnJURFF1T0RHWHhoZ1d2ZUkvTCtNR3VnL3FSSzFpTnF4WVZiSVJuM0dLQlhKNmlBRUlsS2ZLb1hFMXVkcjJGZkpDZ3pRUTZOZ2ZhM1ZpRStSYWdGU0oyUDh5Vi9aMDllclNjM0wrN25KMmV0RUQ3eTJ1dys1d0JnckVkR09zSVVkTkpqcmJabVRZdnRjMmlRcU5maUNmYUpoTE1xTUNtb2V0ajRBbERVSlZJV2dLVE93YjZJTUhsTlI4bVpuSEtXN1NXNE5uQys1bTZTSFFweDFWVHc5a29LbU9zRm1MeDNDSlU5WmtMNHh3aUU4UlQweURqU2c4alA3QWRseTlpNzBOOGFqR1B1Mk1yTE56VCtVNW5yUDdEQ2tOZ3g5UHVaN3ZBN2dqelpiOGp0RXZ1eVVkM3ZBakIweGRleEdDK1VhczhHQlZtcHhZV2tjS296YXl1cnZDU3N3VlZSTDZ5MDZKRFRGRjRuZ3VNTXF2NG1icURjTEtqWmR4R25yU1BjTEpsTjQ3eDZaWFRRMnQzUWFTZHlkZXplcmdnODZPejNiUGdGUWZEekI4UjRzTTErbCtQM1dFZ2EweGpNUlBuMlpMVmkySDBZUjVSZE5ldXNRQXhyekczdk8rTDNRNE14MVo0Qm9mODRiMDd5K245ZXpabUJtUHh1Vy8zcHlqb043T0JYTmtLbzVhY0J4UWVnVEtidGhXQzNBeFVSUnFzQ3E4Vm1LRmgwTVlrQUE5MnV6elFyMk5vYkF5UjJYdmpWSW5KWGg5VG1NZ1VSQWJBSnprdEVGSTlVZ011RDlqVVkxRkoza2U2eFVWNWI2UFI5ajBrb2lKS01aRUhZdWJRT0V4MFpMdmU3c1lOTHo2WEkwZjdxOFhuZVlmOGtkM3JQZnp3ZytYczRRTTRNc3BnRDJkb0lNdXBvb0lvZk1Uc3NGT3p3N2dkZ2VLbGxvWk4xM1hDYVNjYkJoVmlWR0NySWcwOHVhcnd5Q1ZZeDVEL0tHZkVKSlk3Q2ZTVStTK053ei9qU0YxYUtiNWVweEVuZGR3OVlNTWlxOW5EaHNkWWdCSWJJbGFJOFNSZU1Tc3VjdkU4N3BCdU5Ta3ErUWFYZUNCTExwTkRjZTE0T2I1NWs3SFk3dWEvYW9uN083L2s2a0hFU1hiTDZVY2ZMaWQzMzkrODVMcmZvZmdVT1hRWkM2V1ExVjdzZUFrRG9EOFMzc3ZMcUVEMEtXaWk2TFNkUklwSWtPRmdnRDhwT2NKWFlsVkc2U3pXa05tVGJ6SnNGd0ppQWE0eXlXNG1Rd3pUUXRnakIvdGhYSXBrWDFHUHNjcUdjbzJVZzZVMjlYMTA4OGFDUDk3eldYUllMUHZ6QnhDLzM0T2gzYVJZUVNLYUI3KzliUVZvbDF3YnRkMnJTOHBRYlZ6blBuS0hUcnVsZFhYNEIzai9qbGRUa2RuUURoQUUwb2xpMEFxdmFSR1ZSeGF0K3BUNnR4T2RxeUFHekM3QTlDSWJKQTM5dnNXakR1RzRGU2JFWjIyUWc5NlBub3RweUxxUG5EcGFaVVNJc01jRFViRzBHTGhhWENrWFRpMTg0RWl1clJ5U3cyMXNwenQrOG9sbGQvMjZYMmJ4ZlMwZk1IQ3ZaLy96SFJBUElpekdFN3ZQZS9DYjIrMHBkMy94TVNyRzFIL29hcVNNM0h3OSs4TG5NbjVKVzd0SEpVeUYwTGMwYktGSFVsenVvb3ZpY2IwS2llcituWjFNUkI2RXpnY1p4bVp2alRRK1FmRlJsSlZZZ01FaHVjWnBUVjNLY3l4dlpNaHo1UkptYkIyTkQ0YkYxZUpNaWhhUFJPbC9MS3IrQTdIR1U2S1lNTW9QZ08xbU42OHZ4MDgvN1o4NTMzbnNhZFkzQmV4NC9xUnJscGc3L05ucmxRZS8rN1ZkY2o5dzBySHc0QU15bjJxdllzNmlneTBqNkYyaWhLbnc4NVVXSGdMSUNhTlBlUEhBM0oxT0NNbkREZ0ZEbE5idjdUd1JZMU9ycFpFRE55R1Bmc0FKZTdHcWRjNERGMXpVaktOZjRGeTgwUWVzUEJoRlNKZnRuRG9odVZoOUFUSmVJY1NvU05DT0JVaWRYOHBpZ3J1Y1czbjNYRmlNbzZlZXRKM3ZsbjllOVJvRkR4cnVIVS9CVVlUQW5ueDRaM253NjEvWnJtYy9KZ0FDSUJ6bURLWGx4WXRkV3RtYm5CQnROZmJqMVNoS3Q0dlRuc0tUaHdvZitnTUUrWGVpR1BBeVd6VTU2UzFnQldRd1BzbGlHdTJBV1hUWmdjRCtMQmxNa09lY2dQQlBJNWxoNUFmQXd5SUJvMElJRktIdFRKWVZWd25NT1dROEZEbkU5SS9Dd1NFbXlRSEFycEZ6VXVPZHlzTjNNaFV1MDdFZ05GdGdZNFFzQlJ2WnBSYTczdEVOdStSaVBsQjAxdUpTNjJNVkhpeXRmKytkbnkrbjkrN2FDS0ZHZE9IY214WXdEQnptVVRDcWRkNUFYRjNoaFVPNmpYUGt6SVJyZFB6bWdTYTlZZjRJb0RJVlRIQnk3bEY0b1pzc0hqUStVWmpVUWxjamNZenAxRHBzd2tWekxtcWg4akJlZWZtcnk4dXYyTjlYLzdLcFhqWVpqamZmZkl2dFd6OXdIOS8vL2x2TDkxM1djekVtSlpmeGRIRVprOFpzZTd3N2l0Tm1qaWdjSzdEanAyNHQxNTcrakJXYnZiOERtUmNlKzdyWGM3bGhIMzd3dStYQjdWLzZyZ2Y2V253K3N5cEdLTUVWQjJQZ3VWOEJnMjNmNDlYUVJUVzBCWUlQVGhtMkFlVDk0Vm1hU09nZWNMeDZrZ1hVTUJYbXB0b2hjSCtZeC9ZbFVaakRGbHhvdFhBUHQ5N2FSTC95eXN2TGE2LzlqYXRWWk1JZTByN3g3Yjl6MkxlKzlaMEdsNDhtaUk1UzE0eEJMS3hhaDZJQVlzSTcrY0RqUTN1cGZQMXpuN1ZkejE2eDZON09pOURtQnp1ZUY2THRnRlo0cC9ZKzc2TjNmbkh4WGMvakNlZldxUGg4SHVlRlYxTk13MVZQTU10eWxXam9mT3R1UlFZR0ZRejdsWk1QRlNzbXQzR2NSMnduTDBUdWRrRGpLS0YwNHl5WGRZenkxTFhENGpsWm5PQUR1eHNLN2pMRlZyblUvM1lVNERlLzlXMWZHRS9SbExVVlZybGl6SHlGeXR3OGx5RUhvZngrek1rTVpZVjEvSm1ubG12UFBzTnZMZUx5eWt1dDZhMFlqNndRL1JKc3czdS9mR2Q1K052M3pERllqRkdreHJlMTYvRnE0dzdsMWRGdWV1bkNnN1VPNUdIOUpsTEg1WjNHVU9kZFpnZDgzZTNFNjk3RWs0WGMxT1lGTERxcUhMSmVCeTBsOHN4V2N1NlFLTFI5QllkTDZwdHYvcUJkV3VVYnJSZXBrZUpTdkZXd0tFRHNmaTNXU2ZFNHA4bFJISXBPZm1USFRDaVZETVZTYlNUSDEyUTNYbmgrMlQxeDA5L2RvUmk1KytXT1oxdWVUOC9ETys4djkzNzIzM0szdnR4Q2c1aHhSQkErOGp4U2pObDB5RlVVSHVMRm9ZVFU0VzVYTlpnd2ZENkVETU9BSExmM2N4RG9HTWtoeCtXVmNqTGh6REhPWXA5Tk9QVTkza3o4RUpjdUNSQkNobDN1dTkvOWU4ZlVFNHJ0alRlKzR3Vlg1YzIvQ1JXUFd1QmVmKzNydnNiZitBWXYxZFVXbCtBM3l1VTN1VGh6d3JaYmlvMmlZdVNaaVhLcjg0UjdQZXg0eDU5OXhyclhYSVZMSzNhNUl6eHd4S3NXdjl3K3VMOTg5SXVmTFNkMytHb0ZjZVNPSmovbUpRTFdyWGNUS0hDdDAvb0ZjcWJhc0xPT1lEYWpkVklkR2pvV25vRFExRThxclBMSXl5eGtzakVNdWlzSGRnbndUeEk1eEVRckdraFcyVUNtc3U4cHgwV0ZGWS9YWC8vNjh0cFFJTFhnMXVITnVJUmlLbUNHQk53NFJ2NDMzckRkendvYVI4MERZOWpoa0Z6TTQzd0lKNnh3R0ZmZDhhMWJ5L1VYL3NqdTlld2JEU3M0WHpNclByeGU0V3NWKzVCampLZmJ0MysyM0wvOXJyL2ZJMDh5c2ZSc0hLSXN2TkVqSTdlSGkrY0NXbE1CK0p4RFBzME1saHE2bFEyY1RWdWhheUdwU0VjMEozeW9LRVM5dWppQUFwZlpuZzJBaXhZVm5Dc2liNGRpZm0xU2RLdExZb3NrdWNCYmozMCtnTnZ5ODAzdGZKdTdHcjJBSDBlM0JqRWYxRUNuR2NzNDNjNGVNbTYrK0hsN3QzZUxSWWZpczBMellrTWI5Mzc0R2czdjlPNzg1RC9zQjZQbDkzcmhsWVhIS0RDTkxJRDByaDViUTN2aE9YQWVmbThRbzVLaGFxdUpvdE11c3o2Mmt3UHJFdlRNM2RPczd1dGd1d29MUlpjOEszV1l5TFMxUTFGSmppaHFYK1BaVHZmcXEzOGRyMEl5TE9IUjZsQk1HR1BCeHc4RW81ZFg2bkh2TjE3T1ZlVGluZTFxNHNxRkYzcGRiSXduOURFZldLZmpaNTllYnJ6NG90VWFMck9XVzF4aVcvRkZJWjdlKzlEdjgwNCtlTDg1WVVGalBqSnJ5UnJJTzhpWDgrWVpQL3Q4N0hod2FBcXFIYk45RWloc0FKUklIUys4S3JSUERvYjFZaXNIK0RXeWJlWWFSbHZHalFjcXU4emF1WStWa21KaEdLRVM2emF0QUxuZzRhekQvNjN0ZFBYK0M1Zld2N0tpd3lHL1BkY2dIM3luRC9UV2NibmU0c0tjb2ZqcUE4aXJyMzdOaXAzdkFIc2VjbzFGWGJua0NTMFBTdnA1c2htMTcyOXZmT0ZGYTUrMGhUQkczK1Y0ZVYzd2t5cmYrWmo1M1ovK3hMN0p1RzFwVk5iS2F6UFBvWndXMyt5Q2FmYzRoYmZhN2NCclR2dmRqczY0NHlsWVBCeW9iN25heDZ4T0JpMU1raENSbU1oc1k1R2c1blJFaTR3anFNcVhuOEQwMDZnblhPL2RmanY4c1huKytTOTZoemIwMnZNTHptSW1vb2JmRnpuUTRzcUl5SUZZMzd2OWpnaTlyVHN0TEt1TmVEZ0RPb3NyYWZiT2s4M1pqWmUrdUZ4N0JxOVdXR2dxUHU1NjltTFpDM0paN3IvNzduTDNwejltQWo0SjJFcjRENFF5cnB4eFJpRHZqQmFqcnZBeXpITjZ0SThDeTlUZENrTkx4R01LbkU5SEU3aGJBNFhTR3V4MnJ1N2NGbHpqUWNFbXNvbW5pd0VYM0VXQWcxWEZRNUpNMEJFMVhtSnowUThycXZSaER1MlFYMitIRDRiaUFrNTJ3STJYWGUyNDRnSWVoOFo5bTZ5UTEwT2EybEovdHR6NC9PZjVrSEh0dWhIYjNNUXU1NWZkOHZQNUI3OTViN256bnoreUg0bmF2MGlUQTh1TGQwY2hpSEg2Vm9UTUVpTVdudldrU3ZDZVhrUU9HeHlrWTUvbnNmQk02anVSVWs0c2tFY3JBbU1XdExaK21VMUJMWjFLb2Jqa1JVV0ZzZkpVS3d6R0tMcDZpYTJ2TmlwL3RXblJERVVGekdpanVGSytWY3pMTWw3dTh3UEFIQlREZG00dE1zdFpuaFVUZFUxcWEzUHRtYWVYbTE5NmFUbXl3anVMeTYwWFhkemYrVS9qemVEMDd0M2x6bzkvYUs5VjdrUWdZQUZmK3ZPK1ZTS0tNUS9vZVVCODhjSUxlNitqSUdxVTdqdTlkZitTVElVM1lyendGSHdRbG9seWlUc0FSdmVKSmMxaHdaMStpRXNST1UwUVlqR0VsYnp1ZHJpeGIwK1ZnYXc4c2hZSGFMRlQ0VHRiZmcyMlhWVGlnUTE5Snd0MEd0WDd2WDdYRTJJc1FqRm1xWkVmcE51N1A5Qkh0NTVjYnY3SlM4dTFwNTdpWlJWZm4xblIrWGU1S0VUdGdJYjk3Yi84MDNKaTM5KzJ3OWNBSTBWUHI1aUJkalFNVVk5UmVIS2l5VE1YUGgvcGJDdzhmRHBkVnFyV0h5encvU3dWSk9HK25TdmdlWUFYaGVkT1BKLzBCS2prNDRKTFBsc2twL0hUdU1OZ3QwTUJLVXR2aHlLWE5YeS8vdm8zMnZ1NHJtZ25DNzdGNVdsR0hzQ01sMXc4YU9EYkVXVkVQS0xvYzg2NDJBT1hqcTE1UXBIZCtvcy9YL0Jlajd0YlBGU2c2SENwdFFjT0ZDRmVwZHo5bi85YVB2cjUvL1lUYWpFb0xpNGNQUExqNmVOVStwejY2eFIrUG1pb0FEZmJSZ0FycHM2ekxFcWFwdkJSRkJvOHRNSUxJN0RnSGkrb1NqS3dESDd3NEtuWUNyS3dteFo2U2lRUFdyZFZoTWtFc2NWZzhjaFMrSEczNjc2K01uVDFMSnZLOWIzaGFYVDFLcVI1Vk1RV0M4SmhzeGxYNWRXdUp4TzB5czNiNFlNeDVpaTg3T21icUozOW00d252dmdGZTYzeUJkL3gvRDRQLy9JTXV4NWFtMy84b3lHMGQzL3lvK1dlRlI1K281ZEhYUTFsRlJXQ3VIREVJcUc1Wk9HUmdlZGFzTUhzWHV3a2Y3N1FNYkNtdldveCtQcUpOamdBRjUzdmdKYUViaG8yaWtlRjBMc1B2MTNwdE5BOFNCVFY3ZklreTkyT1g5cjNYQnBsYUpCZ0JyNzMzWC9vWG9OQXJsMFRmYVdDUGlOaWdwSXJTbUdwN1hjOUZSNXNwRSsrOUpGYy9VNlljbUxGSWZsTks3eWJMLzJ4RnhxZmJtMkhpOHV0ZjVPQnk2ODV2Ly8yL3kzdi8vdS90Vzh3TU8rUWl3Yzk1c1ZJVlhkMUVuYWZiVDk5cndXRWRQWWRwQ1VpM1dYcVlSc3FkeThUeVdJWDlQK1B1eEp5UEI0WmdRekVoWEhLU0lNelpUaHJGQzdjc0pjTElTdmFqTi9GNHZXSmtMT1h0azVjVHZCUjc4ZUthdWt1dTZibzR4R1MzcURUVWZlUCtucEg3L1gwSVd0eHl0RGFuZ2NLb1FiL1hqQkU0M3pkZmpEd3hKOSt5ZjhwSkg2WmdsY29pM1k5TDBBYlcvdmdWKzh1Ny8vclArYzNHTWFqUFFIZUdCczY4eDNQTlJjdlBBWUs0enlRR0E3Ymlyc2ljcUg1aDAxZ3JQSExWb2h3bVUzRzJxdjNjMmJrbVZFdmIwRVJUdGdrUS9Qb0NtSFZ1dEFtREx0dmZackZyb0luU1Bqb3VTUVpkeEhLNnlXUmtlUzVQaDFEaXFKQzFzbElYN1hZcXU5YTFMcUV3OWFQeUdIRkZYTEIwTktHeU1vdkx2eE02ak5mK1lyOUEzRDdkeGl4dStFeWk2ZmNvMWFBeDh2OVg3NjkzUG5SRDVmVEQvbXJaQlNhQ28rOFlvekNZNkExbEtYc2VKeVFUanNkMUpBRllES2FQa2tqVTE5Y1RxcHBETm91dFRiTXdnUHZqRHRra1prOGpUdVJmRzR0SHFkQzFoa3AyRit6WDR2b1I1MWFXUEROdU1oRGJTMmVXaHpRanNmc3NqdHl5YWJKbzNqcWQ3bTgzSDdOb1BVRE80OFZmQ01YeHNpNXlhMG5wbXZQUGJjOCtXZGZ0aWZjZU1Ed3AxbmU1K0granI5YU9WNU83S3V6My96Z0g1ZEg5Ky9EUmN5VGQ0TUw3Smk5dXA3cEVjai9Cd0FBLy8rQ205ZFhBQUFxKzBsRVFWVE5mV21UWmNkeFhmWGVQUnRtd1U3c0N5bGFwaVZTTWlrU01DTVUvdUFJTzJ4R3lEL0ZKdWlmd01YNkM5N0NEa2M0WkRrSUs3eklFbVNEV0NodW9rQ1RsQ2xSTWlGc2c5bFhUUGQwVC91Y3pEeFZXZlh1Nis0WkFLUUw2RnRWV1prbnM2ck9xN3JiZTdOdy9KNlR1eVdsM2RKVlU0dUtDeW9NdWVUSm5rV0lGL0JmeFlXTWRmNVBWMHRsTVhCa3oybzBSbTcydThKd1BXbFhiN3U3WldHQk9zM2FnQWM1Wlc3am1zVDUrdGYvWTNubW1jK1orbGUvOXR2bEsxLysyalFXTEMxMjA4dzRwVHovOWQrdEdORThrMzBOMkYvK3l0Y2c5LzdOWXRHazkwSEpNODk4RmpIK0xvdmw1WmRmS2Yvb0MvKzRqcEFKY2RCNHNENzJyOGxZYXNtamlHZ3dUc3RIajVSREgzMjZMQjA1VXNyaVlsbFlXdktjNVVWb1c3NVV0cTljTGhlKy9XcTU5ZDU3QnJZTFd3WFErbFJudkRtTXlLaThjSHZFeTkxTGVDalNZZXR3dERFZWtJR3BobUV4UXNiL28rd2FQSHJKRE96QU9sR1JHL0ZjZ3hKUDNwYXRXbHZUTlJRYkhNZHJnK1BvenlmaWZRR1R5c2wxSE1lbkw3ZHNlUVJRNVJsRGJWTTVpZjNWci94ejlhcjRwSGtQc2cvYXFpL1A0a1BCRHdlVEUrKzM0SGZpUTRiMmpDRjdqYUY3TVJnY3ZHK3RoK0RWeG5vNThyYytnWHdEbFFYd2pNU0RKK2FKaERjdm5DOVhmdlNEY3ZQOE9RTTdHUEhvL1ZZNEIrWklQTFpVa29SYXkvclFtNXdkbmlBZUZDaG5xcGpvcWNpSVVTOUx1MWp4akp6enNZa2k0aGtZRHRUV29JMlRSeDIyNVNUMEtvZHZyWkRuenI1ZFZVbThsMEE4SnZtb2pTRlR2V0pCY0ZEaTBWWStGQk5sUGo3dVVXUHB0ZDN5N0RQUFZPSlI5KzY3SDVqYnZ4NnI5VUZZTHRHUjJob3JySGgzM1ZVMm5uaWlyQncvQnNJdFljWEQzRENQMVk4NWlYaHJjNnVjZS9FUHk4NzE2NTA5SzIyK1djc2o1Qkc0REZvZkRQSG9nTUFDcDFNbWhhR0I3V1dNeTdkYUREdFd0RXJJc0ZXUVZyVStFSCs2TzUzblJDckozYkpEck1NeUVzOVd2THBDZXEvTThlQ2JNdUhtN1ZxNjgvSzJxbXJjR281MTB3eDl5MlU5cjNoc0V2SFVOMU8zM25nMGltbkVjcjAwZnNNNExSNCtWSTc4alkrWHBXUEhqR3phYnAxdzNHNUp2TVd5YysxcU9mL3FTMlhuNmhXRG5Gcng2a0lqcDhFRnlXZUlwNGFxWHd2cVRoV2tncnFJd09wMGFqRGRydUpDVlFSanl3SUpWNmZQSklIQnNnWWYxdERyRVZGRmNzODhOaFJGd3hYVlYxTzNkQzNhcU9UeVRCcXRSc1NtUjZWeFZjMCsySitNSVp1cGZONDVwUFUyNHBWZitYaDJPTWRqakdwclk2UStxbS85dVdMVDk2amtneldOeDlMNldqbjJtVStYaGRVVjIxNjEwbkVNYXhsYjdzMXpaOHZsSC94cDJUcDN4aWJBN0FOUXM1REpLSS9XeDRoODRhNjR1RkFnSG9TcjlrZHA5Rkt2cVZ1OWp0ZjhXSEdoS3VMUmRwSEVJNm1xYVMyRUk5WmhIUVNWSjVLS09LeTdScWlISktOVUc3UnhZRWFidkUxbTR0bW9tb1d3WGFLYS9ESS9DUEY0Y2ZFVm5OOHhlVXlLcFBWQm1LYUVBK3ZQZmVtZmx1ZSsrRTlNbEM4dUtHaDlzMlk3Q01QeWlROWYwL1FTOVppV1Q1NG9oNTUrR2xzdVZyeDBUdWVrdzZLeWdGVnZlYmxzWTZVNzkrSUxXUG11V1FBajhhemV1dWJnMWhNV1BlSVBnSGhqMTlVTkRwcThzOVQwOUttZ0NGMngvMnlJNnlCcDZDSm15SGZUMVcvendHN0l4elNwaU5EclV5SWJiOHVrc1JVSjVGQUVsdGU0R2xickRmSDJQOGZUUlFWMVpTc2ZsSG55dUJTdjlMNlVpT2RYeGs3ZWVTczZzUndwWUtQdXRYR2NtdWJxM2FmS0JxNXFsMk9ydGEwVjUza2tJUzh3ckk2dDl1YmxpK1hzSC94KzJiMTVNNllOR0JHMGZiQTVYa3pxU0sxUTd2NDY0bVZ5bU83TW9VT0sxbkJTZFYzSGoycHpDbEtGVjdMYS9oaURFYTliOGFpbExSc291N2NpMUVYa1RsbWhVbE1STlprNVlKTzFOYm1KT2psdDJlY3ZmZW1MTXl1S3RGMW53TUxBanF0dFhqVmxxenlUV2JMMmdXblk4aVVkNXBUZHlRZUR0cU1QeXBoc1RJWStjRTVJdUtPLzhXbGNUL2h0bEVXZTA1RjBkcEdCbVVLZGYrLzk5ZXZsOG12ZnQ5c3FCRE0vRE5RU0NuT0psNjVxdGRXNjBkUTBCWjVBYzlYS3lVWkZuaE5FbThXQXVsSkhQQWh0cTdWRzZTaUhrTVptRzJpczRqKzZvWVFkbGllRGlJUENrQ3doK2lDWnRUQ21UOTVsNjc3azBhV3E1Zk8rZWNUVDlqckdSQ1R2UTNnYWlGRDFJVDkzN3AxUWFsZkU3RDFUN24rMkdUOFlEdENQVjlVM3JJV3kvcEVIN1haSzRTcG5KT050bENndkxVT0dpRW04bi8zZmN2RjczOEY5dk91WW9rQ0pRZWI4VnR3ODhCWkFiU2wxeFZOZ251OTNkTVIrQTRXTllyQm1Idnd6NTBNY1IrcDBSTVQ5SXJxTFZjK0paVXBWejg0SjBiNTdTM2pSVGlpYUtxOUVIZVJWdytWUXQwUTdXV2ZpMkhuZVN5OTNxNW8wcGU4allBQ0dudTFkV29xMlYwN09QQ0l3b2hGTHFHemhOdnZGT0wrai9OU3ArK2RndVZXUHBaRVp4OE4xZWN6anQvR3hqNWFOUng4cEMydHJSakxiWW0yYjlaV1A5L1Yyc1FQZGVPUDFjdTRiLzB0RDRlUUx4elovQXhtYk54OXhxcjV2NGhIVTRWSWhyWGhzWi9mNklYQXBoUXgwa2RRejByamNpRVlaSWpRNzRKRjByQ1ExYXdzTnF0WkVHMC8rQ1RjTUNFYTV0SmpuN1l3bjhDUWZrMU9kNkh0alpYdmFUVyt2YlBIa2lOYkZtRGp2d2RpUHFmTTdzN1dCYURhemZYUnNlc3Y5OWhIM0dKb2MwdVdsY2hpM1VqWWVlZGkzVjY1NHRzM21iWGNaSzk1Q3Vmejk3NVhMZi9yOTFCR01Fa0twSHlIRVp0aTVNeWtLaWl2eFpsWXZoNTA5V2cvVllRKzlkc0RhYUtJUTFMSWY4VngvbDFkTjJsb3R1dkJENGdGejkrYU9UNUpGNVVSUWdEa1NlZS9idkVaRWhabTN5dkZlbWE1dVBZTFp5U05heHNyRTB3V0F0OHViNjlOT296SmlTRk1yWkw2YXBXN0daWjJwWVkzakliUSt6cWJ2OXVyZkVoNlhiVHoxVkZsLytDRTdwN01MaVhwKzUrZDVkb0VCMmRrWC9rZTVnZk84M1Z0eHprYWlBY2pHblIrSVNKVFZaQjhVcjFGOFo4U2pvUkdFUU1GdUw3S0JKVXRPTnhiTkZYSUVaZU1ST2lnejJNVUZkTXhFSkI3VmNSQ09sU0hEaW5kckd4M2x5b2ZrUnl2V0EwME5ucmwxMUVETk81V3lqYmRRMnVSNXU5UnRDOWZ3SHFpY2NTZ1RGbGVubDdCRnYvVHlxNmJheGRNaXN6NzNXSXE2WWJIOXVlZHdHK1U1djQyU1NlY2ozdmVOK3ZQaXNyWmhQT1JSV0N2SGorUDg3bStXRmR4U3NWc3BJSmpmUU9ZNW5pNHdsc290UEswNC8vS0w1Y2FiYnhEV1V5VVZZbUpaWWcwTTYxWEgrMmpFODNZM2FHWXlIL0tJdUswcWlYaW0ycno1aFVRWTJQUU1aVlJKNENVakhyZFcyT3FQV0NnYndTRm0zTGUydHN2dWpxNk0wQnloRWRXSDNTVTh5bE1qNE95SzBMUU53Qjd5YytWU3F1ZG9FQmltRFY2enFqNnF0eFlUTVJRWHg2cnBCanF3MkxjWmVVaisyWEJ1NTFzM1hsNjRBeXlQMlAxNlRCNWRuVU5zbjhzblRwU1RmK2Zac291eWlNZXJXWHRPRzlzdXovRnVuSDY3WE1LRnhlYmJiMFZIbEVWUE9FWktjT3kxSkVNYjR3SHhUbUJGVkdnamlZU1Fjc052Rm9SdXNBWUo1U1FKZlNKUXM3dXFqYllsWERGeDFldUlSZ0lpbWFlWW9OMmJJQjdKWjNKNWxwNnAyOEc5dTFicldiVFBtL0FnVlY3MWFQR0ZML3lXcldEQ29jenh2Y1Q0V2p5VU1mVWtkNG1PZWV4eUg5eUdXT08ycnl0akliUUlSaXhxZUdLOE5hN29HMXVtK2tHaUhYcjhzWExrRTc4Y3QwKzAydUZLRnVUajdaWGRJTi8xbi8xVnVmREt5L1Z4bVNQU1UzaGpabVZrY09aVkhNT3gvQ2ZpbVlwTWFMMUhjbk0vN2tNOFErazEvVG9XL3VnU1RVdExxL2pqaVN0V1BVc01GQTFHUHVhdXlLMzIxbnViMEdpVFJHUzJXcHBIcW5CRVhTV1AyaVhDWU03WG8vS3FSMzA5RzNYYm5sVFZ0emZhK0hxMGlLdE8rSng0WWFPWUdnNXVuNXh0dDA4SWV3b3ZCZVNVNHgzN1FiMkc1ZmcxSHJTWmJZMHIvR1BjajMvMk0yWDFnZnRpV3dYeFFEWS96OE9jQk9sNFR2ZmVYLzYwblB1Zkw2UndpS2hkQ0dWaUs3RUp5Y2ZCeXp4U25MWmFpaktKV0orWEFoSE4vTHduVnlicHJORG9pNWV2RFBUUmYwN1pyK1d5dkxLR2dvVVVrVUVMRnh1V0lEWWZPTC9iSWZHMmQweWMvZEtTZGM5VlVyM2xaaGg2S2p1TzI5QitKSi9POXpvZjQrVEJ6bkVjbGJwS1ZRNmJjWHVWbm5UR0ZWZmJmY1B5T0ZudjRrbTl6K1ByMnZrb0pNYnI4c1cxMVhMUFAvd0hHSCs4c3NFNXdDcG5iNldRZkN4Ymp2Tzd6YzF5OFR2ZkxsZi85MnNOeEVwRUNxKzQzZUtSZVdha28wNTBWUDAxNGpYNVNDSzJqRW1tVGQ2VGI2cTl5ZVFoRHc0L1djdXJHK2dyVmowa3V4b0NXKzM4amdKbnJuVnQrL29tdGx2OFljeUl5cUhMcVhuS2JYdXZPRDc4dlg1K21pSDhmS1hiYkZvcDl5bkhOUnVUYkZvZnh1MlZQa1U2RVlTeWcyQlJqd09VU1c0aWI4QXhSMXJ3S3RUajVkaXZmY29JVjRrR0VwSndKT0l1Yzh6Tnp1YU5jdm8vL1U2NWVlR0NJYldEK29PY0U4TW9JOUI5aWRlRHROcHNpYXNRd1hNYTYybDQwS1FWanhaVHhLTjhaZU53V1Z4ZWtUSWtERDV3bU1XdGxsdDRQcmh6QlhmTWIzSFZZOE5JcXZyWlExdExVeEUyR1V2dXl4RzlOdDdPSUZxN3VtdzJsRmVzWWNLelhQMXhUN0xwSDlrUmk4a3VKZzc0SmpUMTNZL0hKSHlYdTJ4Mm5OaUtoREUrK2ZsbnkrcjkyR1pCTUh0U3dkeXVaRWs0cm42K0FtNisrMDU1NTNmK2c5dlZvM3Fva1pNL0tHQXNyRFVGSksyNjRsV2NOb1JOMUpVU1NpZFhBQlEySFRzOXE2SnhiV3g2UzZ0clpSbmtxNnVjMmFEZHlLY2NmUUhoZHE2Q2VKdDRRSTNVdkk0RXRHYnJmSjd3ck04NFd3VFRXT1BWSlZGSkN0cnhUUlBINDNIRWNobjFxYXVhNjFQcUwzanlkb2xldTZlVUtWOU1zTjVzQml5dUx2SGhuUGJoK3NSZ2Nod2V2ZGNjYTc3bWZ2ZmYvM3RHTHI1NVFwSTUyYmpOcHEwV1JMend6VmZLcFcvL3NXRzFRMTZQKzBqSDFZNDJOYzcrV1MwYnRDWTE2TDdrUWZjeTFySlQxcU56RWx1VjZFdzQ0djlNTXE1Mnk0ZXc2bkc3eFlCMDIwU1FqN2FVNzF4N3o5NSs1Y2x1bm03SER2eXVKVWMzRXRSUUxhWnByR0tQcmZSYUV0R1ZSTUF2cDdkWjFKWkh5ZU55UDVTVGFGT0VveTIzYzU1VCtnbDVqR0dBdHY2NVFENnFmTjVxRy9iTWFDUDl4ZFZWZk1maUtYcysyKzdWNFJZS1Zya0Z6b1BsSko4VDhzMS84eS93dXZ2NWhPWkliVVNGN0pHTnhLdnhRbTFpeFNPdUFKS1ByaWlJSnV3SVMzT1NSODJDTXdJUkhZS1FaZkt0SGpsV0ZySHlPZkd3dkF2QXNPREI2c2h4VzJYN3dxVnlhMmVuRGlTYnpHMlhTOUtneHBCWTcyd25WaEhaVEsxK2FpTlpYbjdsVmNONjZTVi9kVjV0eko5OTluUGxjNS83N016cUpoM2FmL1dydjIydjNYZnhxRmN6cE9KME0vbFJPRDZzZmI5Vkc4bThmUHl1Y3RkdmZLYXM0SFVvVzkyNHBRYlpDc2htTHdYWXFyZGNObkgvN3UxLy8rL2tKbkt0ZG94QlY3WnNDalo0TURWRTlZdGR1a1BpT1RpUFRONzFZYVVrZUJCTkpIUGxSTkVZRVZGMGFYMmpySkI4R0FCcmdyMTltc3dCRGxZSENsYTY3U3RYYmN0MTM0YmN1NEVvNEpQY1A1dXVYYm12YWplRkdsSnFNVDVoOGJ5UGFXb0ZyRUMzVVJEaG1DdlJsNkpYLzF4R01lS0pjV0NiNG1yeGFqNjhUUnJDRVRKWHUzVzhFSEQ4TTMvYnQxbWV5eG5KZUg3bks1NHVOT2prd2tzdmxrdmYvVGJOVThwZWE0Um94M2p4QTh5VUhDdGU0cjBQNGpWVVlYZlVJL2drOFRRZ3NGZHNvYmU0c2xwV2p4MHZpeXU0eURCNGRBQnRqbytqRlZDSDdOYldUYnlDZmFId1lrTkpjYkR1MER4V2E1T3hObjd5cGNYNG16WlJoTU5DUCtIdmg0QWlHVmM0bG1NWVpueFVlVVRlOTA5UmV3OVZxellScjNVaTk4UDZ1RkJXNzd2WFhncFlmK1FoRUsyZHkrbGRQRCsvY3hMeXl6MXYvdHQvVmJZdlhSSmNRclFSVFhWWEVlOWlRRTFvbWhFZ2lIY0N4ZHdsTjB4RExzRkVMbEswcGthK29hMk9DSFJCSE5OVEVFRTgzbFpaUFhZQzUzcUhmRElrTjMxR21ZaUkrMFhibDY5aU1QQ0ZFL1N5d2c4RVVXVGU3cXRYTDBOdHNLbFlodHI2TVUvT2M3Wm5zSlV5UFlQdDFITEltRVF5bGwvQlZzeHRXTEtHMTgrQTk4Ym5STk9xbkRoTWVjYlVOeDhoYjZkc3lrYnlJNS84RmJ6bS9sUlpPb3dMT3J5WllqZUxiYVZ6RWk3ZzNpcmx1OXZiNVJwdUdyLzduNy91d1BXb0tPbGx6amFiZzVSZGREcUlSK21vRlJveW1KTzNhWkdDU0VBOG80bzNaRGcwMWFvQ0NaSXQ0VjJ3OVZQM1lka25PV01vclMzcW9VY0VmaEp2bnI5WWJ0M2cwNHcyMFBUY1ZyVTVaSVA5R0x1R2NnYUxna2lHamJMeUxHZTU5a3NOeUtYYng5WGtTZFdLMUdOcVdCNnJqMGVXTnd6NWFKWjk3OVEzU3BkUEhpL0hQLzk1dkJCd0hBQjRqaFJYczdxb3NDMDJicWZjdkhpK25NYzJlKzNIUDNib2VoUWlCUzFTUmpSM20wMXFleEJ2Qkt3ZXUwTGZQWTloRi9kUStGak0vYkRzY2pkRXdPZ3MvN1BRRlF5VVRJb09yeDdIcW5ma3FPbmh6TVAxWWNNTytkTU03elJYcXAzTDEzQkQ4MklwdU5CZ0VoekxtZ3pMb2N0QnpuS3JESHFVTlF5ZmNPbFIzbUdtdXVtRUQvZVNjZHhPT016YnRMbVBodDM3bEUyTHlTWHkwV09OOFFtMStlZVh0Zm1sYmI1NzV3U0wyeWM2djBOdWR4YXcrdkcyeXBYLzgyZmx6SC83ci9hMnNXSnBQZE5vOU5GeEdDeWxJRTFUY2pRbTRsRTFhWm9sRDBtN3lscGhpbmdPNHl1VTdBMlpVQ0NsejQvYW13dWRFeTRmUGxwV1Q1NktHOHIwWllhd2JZU3R4TVdONWExMzNzVk41YXRPekFaSFEwdTVWN2szTmhqUXNId2dacGdtZ3ZSWWpoTnhDVVA1Z0NXdGJLT1lYQVpEMkl3WERlWnhBc3ZrR3BQdzZUS045a2ptYUFYV3hwTlBsR09mL25XN2Y2Y3JXVi9wdU1YNmxxdGJLVnY0cFlCTDMvcGp2UGo1SjRKM2Izd3NaaDNnNGZhM1dZSWw0bWtvS002cERrMFcxdklNOGF5bFlXbXdzNFJqcWRYSDFNT0ZpTWNibVd0MzMxdFdRTUE2bEFDb3oyNURLc3lkNnpmS3piUG44QnlYditYaFVoN05qZVd6cTBpNFJHdExzakhKdkFtSFBCT0V1bzVGSDB4K1pLbjZHR3lxUENLVXhUeDVod1ViLzlDNXAyeVQ1eUxMcWNuRmZ1WFVxWEwwVTU4czYzakxtQ1N6UjJMTTdkd3VybXF0N0NTODlMM3Y0b2J4dDhyVzJUTU1BWW1SRXBsL3VZeXExZEZpazF1cmJIRE5GcERML09MQ3lxR2lzdkxCUXVLVTV3NVhNWHNLVTdmMkkwT3RFb3BpNjB0aW0xVEtsdy9qamRnSFBtSk5qSnpEdlpqMEhkR2JDOTdSdTNueHNwR1B0MXBhMjV4Sk9pQVJpRDRYaXdOczhiaVBpTVF5dCtHeEg1bTJ2Y1prbUViMk1TV2Z4YUVUOThIU1lGUGphbkxxTFBMTDJyLythN2JpTGVFM1V1dzlPNjV3dkc5SHN1RVV4NGtJQXJLTXZyMzVyLzlsdWZIMm0zZ0gwazlqR3FMSFpGRW9FSi9jR2VLRm1BdDZTeENtRlk5eXFUV2R2b3RabnN0dTExdDdyZm5qQkRHNXhBSkpSTkpJMWxVUGc3SjI2aDc4amdmZWlNWEE4T1p4bTBaT29SUFJjYkRnNDZieXpUTm55ellJU1BJcGhUZFUzVHVQbENtWG51cVdENU5IbmRZUFdUU01LWnQ1K2oyV1IwTDdYajVnUjd2TlhveVo0bFVUYytHdzNQeGpwRUNrUS9naXoxMjRaOGN2OGl6aWF0VldPY2o5dGtrakh1dTdPOXZsNm85L1ZFN3pTamFOSlhFYk1yeGxObGsxdktaQVdEUnBDOGdDSFloSDRHVEZxcVZzSmRtWXo5b1ppV0RxMWlJZTdVS0NUTnVXb2JuWVpLenpodkw2L1ErVUpUeEs0eWZRUE5qQXg5b0JmWnE0Q09lTVdQbHV2UFUyTGpndTI1ZUQxT2srTjR1NXZleDFMU280UWV4dzRwYUszdHNzcGxCajFsWTE5amZiakhVZjZhYmY0OUZYOU01S1hWd1RId3pYMWhpM3FPeTBCZCtqT1BxcFh5MnI5OXpqcXh1M1Y2eDBmQjNOWGtYRHFRMEo1NjlFTGR0cjdXZGYrQU84ZS9lWEhxUkZ3SEFRbFVFSHZvaFhxeDUxSGx3Mm1UU2FEQXJDQ2VLeEtaQk1pNGRzVllWRFliU1JuZVRNTlRDT1ozRWJhd0lxM0dqVkk2TldUNXdFK1Q2QzFSK2ZSRUdaT3BXZGpEVTZBUElGZ3EzVHVOaTRpcDlYUU1vVDZ4RjQ3MGE1S1p1K1cya01PaHNiZUE5aUw3a1FoS2xjTmxhZndISTk3eGZMN3FsSmZmeWFOUGQ3K29PeGl5L3ZQRnlPZnZKWHk5b0QrRm9rQ1daYktwOU04RUxDdDFvOUp1UE93cDNqL0l0L1pHOFoxeFhOWW5VVzJJaXpubE9FNUxld1dvTWk3ZFJET0lkNE5KYVpnQVpuRW5mNWFNUEdzR01HSXVVMXdGb2gxNkN4TG5XUmJ3R1BkalllZk1odXNWaTd4V1ZHR29scVl3VTBiVis1VWpiZndNcDM0MGJYQzRiUWpMeUhMcU1ZSDRySlZjMVhLak9OUTdWQnNMTTkyaHVMWHZNb3pjZGlDelhuK0xDQkdyRmtBMHVRYU9uUVJqbjVkMzhUYnhZL1lFUWJMeVlxOGVxV3UxUXU0eVhQYzMvMEFzNlhjVUVSY0psUTVqRXpLVG96OTZLQ1k2Wk9wbzdmQnZFeUFzdERzaUFUY20wT3IzSk9PU2JZRTRUVmpyS29tNHAwOEdNeWVIVm40NkZIZk10bEd5ZWtOV3Q4SEpJTmdESHlZZHZkdm5vVjliM0kwMEhCMUFLeVdPaW4xUUlla2p6ZGJJOU9XSWxoemRxNGp5WlhxZmN0SkFQQ29jUGlaTWU0U1Q2bEo0eTFCeDhvaDMvcFkvWjBZbUZGSzUyZjAvSGl3VjU5c3UyMlBhUGRPblBHenV2ZWUvMW5kbTduL0tKZjkrU2trd2VYMVYxSVpLeTYwWjdWbzQyaUQ0NTRjbEJKUllFU0J4b3BNZzFnTDdPYUgwSlBxeDZGYS9mZVY5WWZlTkRlWG1IOFRoQzJlRzlzdFJJKzIzRWx4aHZMbTIrOGFVODR6R1ppOGh5TE9KNGNyWVhxcGZBQmxlUkNKajFCS3UwVVdXOGpmMTJPdUtaWDJ6NG0xcHIvY1NWa2k4ZTVjZ0pQSnZBSWIrMCt2Tnk1aml0WU82ZmoxZ3JxY0l1MU4wOGE0Ymc2OHBlZnpyLzhEWHNaUUYzSUt4MTlPL0ZpNU4wVnhaNXNiRlZSSklpM0JkeUVVTHRONGhFNEl6VkhWcksranhFTk5qSVhRV3ZkTzFZSkJYa21ucjFOZ1MxMy9iNzczUlhzNVltNXc3UVNCUnk0SGF4NG0yKzhaU3NnYjd0MDBld3g0Y0x1OU0yNkd6KzRHUW5nN2Q0UGo2ZEZxamdaYlpONnplUFZoMUk5OGJ4ZlpTT002TE5xdkF1eVdGYnV2YmNjdzNQWTljY2VOWUxaK1p2TzZ5TDNGd0d3NnNYVkxWKzB1UHpkN3hqeHRpL2lLUkRIVHVneEVJeTJicWQwR1hMM3poNjBwQ2FUcWtuQ1VOdURlTlFZdE0xSVNJRXdtZTFoSjNNUmovWWg4MCs5RkJ5NFRROEdGbzk3RGovNnVGMXcySzhPbUNGODBSM05rT3VERjFVVDhCV3F6YmZld2c4SjRyc0NKSnREMjlHOVZlME01UU1kY1NZWGNOWHJDMjRlbGp1Q1gyREpzdVVxdGRGMkhGbzU0YVJSNVJNZm1FWDhtT0w2bzQrV0l4Ly9XRmw3Q0w4R1lLVHlpd2V1YVBaK25hMTh2SnIxcTFyS3VRTHkxc203LytYMy9DVlBZSE1NNlZzRFphUmpYUUhrQVRUVnBzdXFtazE5anMySFF6dzZ5OFJpTkRYcVZNdzZac09nT1RrUkxiSzg2aEZsK2VqUmN1aVJ4M0YvNzdoUFpNYWdnaUVrYnh4RmpBU3ZjcmZlUGwyMmNLOXZkL3Vta1NxVG1wYnVsY2UreGVWVW1DVVA3V2paV3pTc1dibmp5NmJWSEVueVZuTjg2d1NLL1FmQXRYaTFlamp1MC9IbWNMR3JWOTlLZWN0a2x6ZUpTVG9TemNnV1Y3V1EzY0FIOHN6dlBWK3UveFZ1blVUcXQxanZnYzJKZ3BWaXplc0lXWHdTTzRGUkV4UFZRRkgvNUNLMTFHS3pVcWtTbytvTWhScWdMTlFlQVNyT1RKcGtRNnZtWTVnNkROemFxYnZMNFNlZkxvdjhWU1A4WjNEQTRpOFpEZHFHUk8rbWcvTytyZE5uOEMzNGQvQksxUlViRDRVeWY4STVicTBmVForb0F4R001SzdyZldoakxqc2hxZTZSOVRhT1BHQlhYN1FNZlJCbjVkUkpQSTE0SEN2ZHg4dmlFWHgxQU9OakJJdlgxZjJjam9URDdhamhZdUs5MTE4dkYxNytCcjZ1K0lQMGRBSVJ4WWVWY2FqdldVYTVKOGJSYnRhcmI3U3FSS1ZpYTNBeml2WWtYdTFqZERUTUdpa3F6cHpDaEVlblFEQ0JFU1NkOEZjN0c3cXF5d2tIY3hWUE5RNDkvb1E5V25ONUVNL3dIRWhINWtZc0ZQaTZQSjl1YkwzempsMTg3T0xWS20rMXJEc3dNc2ZRWkl6ajBOUlRMOVJER3ZtcUREVmh5VUoxNVpJejc3RVVRY05nTy85cEFONmpPL3pMdjRSWDErL0dGZjhoSTVlZjAybUZhMXV0cjNpc1krWGpoL1RtVm5rTHI3SmYrK2xmNE91aUdnUDRhdTRRaDBkU1NaUURxd0hUd0ZOclRzUnJRcWxadmpmeHFHS0J1SFhHMkpkOHlhN3pxR2xSdkpsNG9kZzY3QUdvM3VNVXU4cmRlT1F4K3lYTHZzMHRHQ05qN2s2S3FjaUJCK0UyY2FPNVhuaFF6TFpJYnNzQjdDZmNQL21HV2llR0ptMDgrbWk5bTBLWnhUcm9lWitGUmJkWXVWYnZ1YnRzUFAxVU9mWXJuL0NmbHVBcVo2dVpiNmYrV2hPVVFUS2R4OUZPcXgrMzEwdmYrVmE1K0NyZWZxN1BZV09jWWhCeUwxcmZMSW80K0JnNFFmTFkrWmp4UTJjcDhMSWx5L3NUajFyQUdNKzFYQnpnckV5bU9WNXRPbUZRNTJOV1R4MTNEMDRnakhvWWVjWnZ3Sy9mLzJBNS9QUkh5NEplbDFjY1pvaERKbmJJZEViR0FiMTF6WjkwOE8yV2JUeHE0NTE3cGh5UllxQlVjcGRCY1dKVm8wNGphTU9hd3FHdnZiRFlUZzF1bGZ4eXpxRW5uN0NMaUpWNzc4R3RKZjQ2TzdkV2tncXhJYS9uY1pEenRvbDlHZHQwZkJYY092TXViaEQvWWJuNlp6KzJLLzZBTngrNko5ZDZhYTN3WGlOMFFSMEZiYk1hbFdobWxyYnJKSzNGZ3hFUDZtTXdSSmdOcU9LbXdrUlF1U1BzVXlaSFdMcVZIK25IU2xPNnNGM0ZLMVNIbjNvYVY3c25ERmtlYlRXeFR4NGxadHppTWlVZStBK0czTUQyZTZsc3Zmc3VydXp3UFE2OFhuV0xQNU9CQitUaml1UUFvbTZEODdGd3o5bGJtN0xlWnA2Y2lHcWpiMTQ0OEFQRzkrajRvSDhWcnpieFEwWTVuN002OFhnTzUzOTFsVE15aXBSNHlRTGpjT3Y2dFhMNitlZkw1VC81bmdmdTRScEp6S2ZWTmRNZWhXSnBQV1dwR3ZiaVdwdTJxczFFMlBNY0wya3FuQ1N5NHY3a1U1RFpjaXF3UVE4cWVaV3Q1S3VkYm5qY1F0WndmNDhYSE11ODJxMDZneCs4Tk1vSjhETVFhTVZBZTBkY2wxOW8yWHpuZE5sODh5MWZFU0NlUnlyYXlVT08zbVU4VGtkQ1hXOU51YTBRanNKWGxYaDF5bk8zVmR3RVhzTkQvaFY4cUpid0Q2RFlPNG1WWkVFMjFPMmJlWlJyZTBWWkpHUWMxLzdpeiszTDJGZC8rRVA3RFpRNlJOWUo5RERHd2lOZ2RPcUZTNmpteWZ1MDU3eGJYNlEvblIrWWVEUnZ3OWpBOWd5Z3FabDFWNjFUSnVuWVFmalQ3SmdLMjMwd2xER2lPb0Q0OUsrY09HVXIzOW85OS9yYnkyWVhOckdxQ25MY0NpWFBKbHRuejRLQWJ4c0o2N2Zac0FycTZsazI0YUdMTWtVYmNmZWoxNUVac2JOUEpNMHlybEx0Wi8rZmVoSzNqTzRxUzdoOTVNOVVmUnZWS3BkWE9yK0s5Zk01bHYxOGo2c2QzenBaTEZkLzlNTnk5dmYvdTkwNjBUOFJZTUhXUTR2R1BwZ00zbEtjcjZscWc4M2VxdWUxWVNqa0VSbWFvdm9MSTU2dk9tTlF0Y2ZXNE1SVEo5aVdyQ0EyN1NDVWtQaXRxY05QUElYZjhuME1Mei9pY1ZFUDJUZ3JBME90bEhZQ3dJWmViWFd4UXJHcllMNzFzblh1dkwxeXhXOWY4VEVUYzhYaHF5bHRmVnNOVThjQ0h1dEsvRmQwK0JvWGY0RnpDYmRCK0hZd2Z4eVJqN3ZzQzlZOFg4TjVHMWhuY2RqakxzanNoeE81c3BGZ2tWc1pCR3N5SituMjVVdjRrczZQeXZsdnZJaFZIRDk5cG9Bc0NIWVM1MmdXUEFYYUIzS1VJL0g2TnZXbHo3Tk8zNUpydDBXOFpqajE2VzJ0MDZYYXc2RTVCenFyazd1dXN5VG1kUnJEUEcvTHZMV3c4ZkFqWmVPeEovQld5M0U3ejgwRFhHMFppYmtNdjl3aVRCVDF5RnlKYlI3Tk5uNHR5YjdqZ1N0Q2ZyK1gyelAvZUM3R0h3bmY0VDFDUEpobmZlZTlHL1k5WWNiRW4vbmlmVGUrY2NPdmNLN2k1LzBaSExkUmU5TEFiUkovL0xRMEVvRmcvUFJVa3JIc3F4dDFLaEZqaTFVYmY3SHp3amUvYVQ4cE52dnJUdXlsOTlWN3hZNnk1REsycXE5ZXpuSnZjL25VY2RTZDBnSDZRYy94ZXZNNkl5RSttRE4yWmpabFc3WnJFSnBtUno2b2N5WHF0bmlUeldLdllzczlnaXZlOVFjL1lwUGRFS05rSmpnRTRWeUt1djhmVlhnblBtdFVKU21zQlhMVzhRdWxTeVFjL3R1NWhCZFFzWW9zSFQwR1lsNnhXeFg4UjB0OGU4TVA1R0RiNUFySkw2emJsOVlKeEpYTGlFVmNDT3lDSWJiVlNrQzBjT1dqYnYyRERHWDk4WHlPQWZMKzNMVS8vd25lcVh1eFhNZjNZV2ZmSUxiZzYvaVpUOVJHMGxITFRrZFk4QTZ6RkdsR29BYmt4Tm8vZlVERW82T0RPSndPbU1UcXJYczlyMlVOU2lRTmVXMzJvYlN1WXhMNWlHMzlvWWZ4bU8xUnJDeFliY2JiTHFiSUEvRUlvbzBTZGZ2Zm96TnZKQWlUNWQ3dVNpNXZ6YlFKUFpLSERiWmxRczVpMUlrRHNiWFptOENtU3pLNVBrbG1GdzJVWXlzMWpDQ2ViNzBpSWw5WDM4RzU2SnYyVHdGYytjRnJ3NC9yTUJqTmtBWXFqVlAwMjNXOEwyNFF1a2xrOGxrbXV0aDdIZVc5c3pza0hrRm5vb0ZNblpybmRNcUdTRzdYV2F2Q1FhOXdFbEpBcWJkMHRBMlZ2UFZTYmUwK3ZKK0dXeTZIbm53Szg4ZlpwbmtnZHl0ZWtwdFNIQlNITVFWT3pCYjJ3aUJVbE9YYkNSWTZiQXZ5TVI1cml6anFTZ1lkS3dzcnRsUmRVQkEvMzZ1cnF5TlcyUXV2dkZJdTRodGgzR0wxSkVMaDIvaHdYSWhyS1k4cEJORi8zY2N6RlkxSnRYRnpQODF4bE5sam5wL1pWa29FOTNNbVhuYmRBaFB4S09sQ3p4VU9lalhSS0daSlVxNUYyRFFWMjhhNC9aS0E2L2dHRzgrdGZCK1ZFdk13bGdoZXJTaWdmWEtSalZZMmtZeWJOalhueWdVM0pDR0p4eVpiNFZ5bmtZdDIzSEloeDUrSVNoc24zMEs1aWZQS0xUdVhlOVcrSDhHWFgzT2EyaW9aVjB1Z3BJYXlDYjNFaHF3S0thdnZoM2p1MngxK3dNUmp6REZ4TEU2bW9UZlFjVW16YXlVMHFxSUpUNWo5SUVwVkJtNXJFNVpzdUgydDRGK2k1bjAvWG9Ed2FuSUpYNlhrRHdaNUlMU1BHR3VvNFFreCtLcUF1dUlob1lpZjZsYU4xY3prYklzL0o1dlhuVXdxYzlza0xuTVNNbndZMGFJTlplc2R0dFhMcjcxV3J1SHB3M1hjbnlQaGVPNm9WQWxuZ1VqS1hsbWtJZWoyaWFaVVMyMGNtMVZlSXFwaXhSc2xxdmQrWGZvK2lFZUFGcEtjYVBwYmZWNnB0MjAxNzNEcmRyWnZXclBTMXRZTktZQ3NSY1JJaHJ6ZHNzSHpQN3hzc1BFSS9nMHYvRGFmcmlxcHhnSEQvWDRVTVBHc0E0TnhaZEtSSUdyemNnd3pkZEZrdXRUQm54TXRrWW95cm1pTWtHUmpPZlNNb0NhRDNMNWlpQlh1L0ZuOE8ySi9YUzUraTFzcVh1dkhJNzZjT3NKWlVLMDFvb0lBUFlqQjdiYldxc3A0OUNqTUlxc3QwNnRkZ0ZXdHZ0RDhEdkk3dTZvVkNJUHNFNmRtNzFCNmZkVWNpY2RtM1VxOWxtcks3WDVmcmJEUVI5R3dwVFNiOCtxVDUzOUhQb29YS1IvMDJ4eW1SZElCZ0FQWVZqdVhXYXpjTWtrc1YvYVpJbmxvWktSQ0E5dUZ3OXhXTnJZVEI1cnh4MXNqaTJpM0syZmFvbjN6Tk40aHhLTzg2N2hTNWNQOXpYZFA0NGtLZnlFclhDSzdYY0lwMUFUUndLemtMWWdna3BkY090OUsyam0zY2NnQ0liNC80aEdsaGRmd2J5KzRPb2ljb0lvNHI1dVlyR3BnNmg3QjZOS2dHZ0g5WnZSVXJJNlJqeXNuVCtMRkExeUk0RVkwdDJLZUNOa3RrRFc4Wk1sa1JBb3Nrb1lSbUlNZ0lhb014N1pONm9xQUpCeDFtWk93UVR6SGd3My91U3o4eHZQV3VYTzJkVjdCZG5yanJUZkt0Wi84QkNyb0MxZStPT20zai9ka255MUNlc2Qvb1RDaE40bzhZdG5TT2lmVzRGRkdmV05XN01yVzEwN1NLdTl6cXhYUVZDU0tVanI3NUZRM21CRnJ4R0c3ZEZwYnQrckpWZUE1ZE5OdDlsS2NuNU40RzNpbGZCMVh4WHdxd3UyWno0UDl3Z1RUZ2ZPdGRuN0kwRWdxT0xhL1dCa2pEaWNhdmZ1cXgyL0FMZUYxL2kyc1lqZnhYWWZ0SzVmTDlaLysxTFpRUG1uZ205Szg2VHltdlZZNDZ0S2Q5VGwzV1NBV1M2YlpyRktvaElYb0N6MERGZEQrK1JUeDNCczI3ZmUvNGpHQVBsU1gzTm1XTzRYVnV1aGhjK0s4eEpiaHpLTTFORE9XU0FSTG9jRE1SSkpIOHg3Wk1pNUs3Q2MxOEgwRysvVlNmTEdHVjhtR2dCdTRMUE8zNXJhdmdWQjRNa0dTOHNzekM3akJ2SVRWMGg1YllaWGoyeS84SVJ3Ky83MkJyeEx5VFJqcTdlQWZIclk0N1p5dUQyVC9GYzY3WTcyTHBhbWIrS0diRlcrUXU5Y3A0YnlCN2VOVXpSSDhxS0Z1Q0I4aThSaEEyK2dVemtIeXFVN1AybWxRMVJsOUxrMVR3bXhtc0JsN3JsSzJtbHZtUlloZW91Uk5hdjRtQ1o5V0xHMGNLc3QzSGZQdjgySTFYRHAyRng2blhUUmQvaVRITnM3UDdQa3U3RzAxWTBoVG9TVFArNjF3VlZXRVV6ZDE5YUI2S0ZhOFFSNmZ4QXJYRi9ZSnNsZEdiUVk4YVh6SXhLT24yeWZmWGdHMzJQMmN6ZXRjOHpyaVNXMXFyQ3E4RjdRdVY3RnM5eHk0cXZTaEZ1cXFSQzlEZ1A3QmkraEh3bGxVellERHdGb2REdXEzNXFvOTdCMG1iNGRxM1VSelN1NXJjRkIxSGVjRDJtcUpPdXNvaytIZ1lSTnI5Z0tDMGk1MVkwZDArSjhOd1UxRzUvV0VVQWFlM3lrSmFhY1Z1TTZ1b0x1ZzUxV29ISDFBcmppbXRQY25ISzN5eUF0RkFkRlBHeENYK3JGSlphTjhmb3MwK2x5K2VxblhIT3RESlI0ZHFVdTNGenF0K0xlM2xXRW5GVTFZSllFN1p4aWVwRnVKcHdibVV0YWtUWDMrUTBjckJ2QUVtWkZhbWZwTlF4NnNYZWVjaG9VVzVOb1ptejFMdFRkQXlnNFJYd2ZvdXJJZHZVcVY5eVc5TElsYk5IMGg1SHp2Vm1rS2NXcmtwS1B4K0FDSkoyaTU5M3FyZWZBSDZ3SnRtNldRcDNMVDZrQkZQOWUyYVp1RTZvd0dhQmw0VGszUlVZcDdXVXRuWGk3MDNON3dHdEg2ZG1nMEpXOEtvSXpYcTB4aEJVNDJBbHB2SjgvVFVyWG12TUdOSXlXdEh1dERJSjRjTWM4ZGI0NWJLZXZ1Vlc3ZEdyVzZsZ0c0cDZCYnRwdTlyQThHSTNnbGYrZkZ0SnBsSzgyWUgwQ1FSMmhVZDJRY3M0dlpVTnhNSzZmVlhLbXFzbUFZR2FqMzFscGFxZGZZdXlaZi9XbzNIK3RESmw0ZnJBL3lGQjE2dmIxcjZxSnI5VFhJSnZvNjZSR0diaXVFQ1VPNnFPSnE0REl6NHdFSzFLbDFHczFMTFJKVDc5UWtjVERUbEc4MWRmcFJJZUhHRkxGNGh1T1VUckpwVVNYaEFZc3ROQzhkRk92blF6eU5UWXZTNWtuaUEvYXhxZEhRc0J3d3dmWTZyUVp1d0lpS1UwNGhuMFVLSjFQNkNYZW1hRUNPMXJjUkNGRUU3SXdHVC9Ed3Y5cDcyNG5hU0tZWlFObzBZU3ZOWWgyVUxLTmx3MnlsZzJMOWZJaW5pTWRKUkx3TWVSUkxmZDg4R2ZaYmFMSk1PdnozTjdvMFZLM05ZbW9EYWJJcHZRNW90bEtmNjliZTdRRUM1ZWtMaTFuY21kVnJDTlV0Sm9YV2xGc09TcEtKS0dMZXVJY1JwVWVkMGg5bC94OFFyd1Y5UndNeE5aK0FuRGwzb2g2SU42VnVnekxSWUpITlhqcU9ZK2lmSENxYmova2ZwTmJUQmpIaHRqWG1VbDdocG9CTWQyNURSa0w1d0Y0SE82OTZWNmQ4SFJ6MzUwczhkU1BGTjdWUzdVRVBJY3ptQ1RNM3p1THZnejRQaDUvcXFiSE96bENlWTk1cHphNFNYZk5RQVNKQkozMVRPTGR4d0dIMUlORk5tSFdpeVVCQzQrRDR2eGppTVV6RmlIN01yRTdXTElYbzAwR3owU3l0V0Q1a3JqQ3FUY0pQS05WWUo4Wi9RbjBXZG1ibEVwQnlvU2lmaFhDSjlPZTFaL2wrV0ZsM3VreHYvWlk2cFhkd1A3ODQ0akZ1eERtN0lubUg5bG1YcG5yZHl6UUdOai9UazZRN1RsTHRBQmhiV21hbTRyRjJRTHY5dEEvMVJscjFBNWVkZFRGT1JwTzA5L0lqTldJd3NNQTZpSWxNWi9LREd1OFhkdy84aXlWZXhKSW5PSWMzTmRtNS9lRGwvUWRQSkxRSkkvRHRqYU9IWW02YUw0Ly9Ub0RtOWF4aFQydkFWM2Ezbi9vMFNFaHYxemc3M2hQWUd2OGYvVDlqeUxQOUVBTUFBQUFBU1VWT1JLNUNZSUk9IiBpZD0iYyIgd2lkdGg9IjE1OCIgaGVpZ2h0PSIxNDQiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiLz48L2RlZnM+PC9zdmc+';
|
|
269
|
+
|
|
270
|
+
const notificationSvg = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzgzOF8zMTApIj4KPHBhdGggZD0iTTcuNTAwNDYgMTIuOTk5OUM4LjQwNTk1IDEyLjk5OTkgOS4xNjM0MSAxMi4zNTQ0IDkuMzM3MzUgMTEuNUg1LjY2MzU3QzUuODM3NiAxMi4zNTQ0IDYuNTk1MDYgMTIuOTk5OSA3LjUwMDQ2IDEyLjk5OTlaIiBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXJfODM4XzMxMCkiLz4KPHBhdGggZD0iTTExLjAwNTggNi45OTkxN0MxMS4wMDM3IDYuOTk5MTcgMTEuMDAxNyA2Ljk5OTYzIDEwLjk5OTcgNi45OTk2M0M5LjA3MDM2IDYuOTk5NjMgNy40OTk5NyA1LjQyOTcgNy40OTk5NyAzLjQ5OTlDNy40OTk5NyAyLjk2OTM5IDcuNjIyIDIuNDY3ODkgNy44MzQ0OCAyLjAxNjk0QzcuNzI0NDQgMi4wMDY1IDcuNjEyOTMgMiA3LjQ5OTk3IDJDNS41NjcxMyAyIDQuMDAwMjIgMy41NjY4MiA0LjAwMDIyIDUuNDk5NzNWNi44OTM2MkM0LjAwMDIyIDcuODgzMDUgMy41NjY3NCA4LjgxNzAxIDIuODA2MjYgOS40NTk5NEMyLjU1Mjc3IDkuNjc2NDUgMi40NDAyNiAxMC4wMjE0IDIuNTMxMjUgMTAuMzU3OUMyLjYzNzI3IDEwLjc0OTQgMy4wMjQyMyAxMC45OTk0IDMuNDMwMjUgMTAuOTk5NEgxMS41NjcyQzExLjk5MzIgMTAuOTk5NCAxMi4zOTQ3IDEwLjcyMzQgMTIuNDgxMSAxMC4zMDU5QzEyLjU0ODEgOS45ODI5NCAxMi40MzMyIDkuNjYwNDMgMTIuMTgyNyA5LjQ0OTk2QzExLjQ1NTcgOC44NDA1NCAxMS4wMzUyIDcuOTQ1MDMgMTEuMDA1OCA2Ljk5OTE3WiIgZmlsbD0idXJsKCNwYWludDFfbGluZWFyXzgzOF8zMTApIi8+CjxwYXRoIGQ9Ik0xMy41MDA2IDMuNDk5ODZDMTMuNTAwNiA0Ljg4MDQ3IDEyLjM4MTUgNS45OTk2MyAxMS4wMDA4IDUuOTk5NjNDOS42MjAxNCA1Ljk5OTYzIDguNTAwOTggNC44ODA0NyA4LjUwMDk4IDMuNDk5ODZDOC41MDA5OCAyLjExOTI1IDkuNjIwMTQgMSAxMS4wMDA4IDFDMTIuMzgxNSAxIDEzLjUwMDYgMi4xMTkyNSAxMy41MDA2IDMuNDk5ODZaIiBmaWxsPSIjRDY0MjFFIi8+CjwvZz4KPGRlZnM+CjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhcl84MzhfMzEwIiB4MT0iNy41MDA0NiIgeTE9IjExLjUiIHgyPSI3LjUwMDQ2IiB5Mj0iMTIuOTk5OSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPgo8c3RvcCBzdG9wLWNvbG9yPSIjRUE5MDE4Ii8+CjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI0UwQTg0RSIvPgo8L2xpbmVhckdyYWRpZW50Pgo8bGluZWFyR3JhZGllbnQgaWQ9InBhaW50MV9saW5lYXJfODM4XzMxMCIgeDE9IjcuNDk5OTciIHkxPSIyIiB4Mj0iNy40OTk5NyIgeTI9IjEwLjk5OTQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0VBOTAxOCIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNFMEE4NEUiLz4KPC9saW5lYXJHcmFkaWVudD4KPGNsaXBQYXRoIGlkPSJjbGlwMF84MzhfMzEwIj4KPHJlY3Qgd2lkdGg9IjEzIiBoZWlnaHQ9IjE2IiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC41KSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo=';
|
|
271
|
+
|
|
272
|
+
var EChallengeLevelTargetType;
|
|
273
|
+
(function (EChallengeLevelTargetType) {
|
|
274
|
+
EChallengeLevelTargetType[EChallengeLevelTargetType["Accumulative"] = 0] = "Accumulative";
|
|
275
|
+
EChallengeLevelTargetType[EChallengeLevelTargetType["SingleBet"] = 1] = "SingleBet";
|
|
276
|
+
EChallengeLevelTargetType[EChallengeLevelTargetType["MultipleOneBetSize"] = 2] = "MultipleOneBetSize";
|
|
277
|
+
})(EChallengeLevelTargetType || (EChallengeLevelTargetType = {}));
|
|
278
|
+
var EChallengeRecurrenceType;
|
|
279
|
+
(function (EChallengeRecurrenceType) {
|
|
280
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Single"] = 0] = "Single";
|
|
281
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Daily"] = 1] = "Daily";
|
|
282
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Weekly"] = 2] = "Weekly";
|
|
283
|
+
EChallengeRecurrenceType[EChallengeRecurrenceType["Monthly"] = 3] = "Monthly";
|
|
284
|
+
})(EChallengeRecurrenceType || (EChallengeRecurrenceType = {}));
|
|
285
|
+
var EChallengeRewardType;
|
|
286
|
+
(function (EChallengeRewardType) {
|
|
287
|
+
EChallengeRewardType[EChallengeRewardType["FreeSpins"] = 0] = "FreeSpins";
|
|
288
|
+
EChallengeRewardType[EChallengeRewardType["LuckyWheel"] = 1] = "LuckyWheel";
|
|
289
|
+
EChallengeRewardType[EChallengeRewardType["Leaderboard"] = 2] = "Leaderboard";
|
|
290
|
+
EChallengeRewardType[EChallengeRewardType["Challenge"] = 3] = "Challenge";
|
|
291
|
+
EChallengeRewardType[EChallengeRewardType["Custom"] = 4] = "Custom";
|
|
292
|
+
})(EChallengeRewardType || (EChallengeRewardType = {}));
|
|
293
|
+
var EChallengeProgressStatus;
|
|
294
|
+
(function (EChallengeProgressStatus) {
|
|
295
|
+
EChallengeProgressStatus[EChallengeProgressStatus["Closed"] = 0] = "Closed";
|
|
296
|
+
EChallengeProgressStatus[EChallengeProgressStatus["InProgress"] = 1] = "InProgress";
|
|
297
|
+
EChallengeProgressStatus[EChallengeProgressStatus["Fillup"] = 2] = "Fillup";
|
|
298
|
+
EChallengeProgressStatus[EChallengeProgressStatus["Completed"] = 3] = "Completed";
|
|
299
|
+
})(EChallengeProgressStatus || (EChallengeProgressStatus = {}));
|
|
300
|
+
var EChallengeStatus;
|
|
301
|
+
(function (EChallengeStatus) {
|
|
302
|
+
EChallengeStatus[EChallengeStatus["Started"] = 0] = "Started";
|
|
303
|
+
EChallengeStatus[EChallengeStatus["InProgress"] = 1] = "InProgress";
|
|
304
|
+
EChallengeStatus[EChallengeStatus["PendingLevelReward"] = 2] = "PendingLevelReward";
|
|
305
|
+
EChallengeStatus[EChallengeStatus["Completed"] = 3] = "Completed";
|
|
306
|
+
EChallengeStatus[EChallengeStatus["Expired"] = 4] = "Expired";
|
|
307
|
+
EChallengeStatus[EChallengeStatus["Forfeited"] = 5] = "Forfeited";
|
|
308
|
+
EChallengeStatus[EChallengeStatus["Awaiting"] = 6] = "Awaiting";
|
|
309
|
+
EChallengeStatus[EChallengeStatus["Paused"] = 7] = "Paused";
|
|
310
|
+
})(EChallengeStatus || (EChallengeStatus = {}));
|
|
311
|
+
const ChallengeStatusDictionary = [
|
|
312
|
+
'started',
|
|
313
|
+
'inProgress',
|
|
314
|
+
'pendingLevelReward',
|
|
315
|
+
'completed',
|
|
316
|
+
'expired',
|
|
317
|
+
'forfeited',
|
|
318
|
+
'awaiting',
|
|
319
|
+
'paused'
|
|
320
|
+
];
|
|
321
|
+
var EChallengeTriggerType;
|
|
322
|
+
(function (EChallengeTriggerType) {
|
|
323
|
+
EChallengeTriggerType[EChallengeTriggerType["GameLaunch"] = 0] = "GameLaunch";
|
|
324
|
+
EChallengeTriggerType[EChallengeTriggerType["Reward"] = 1] = "Reward";
|
|
325
|
+
EChallengeTriggerType[EChallengeTriggerType["Manual"] = 2] = "Manual";
|
|
326
|
+
})(EChallengeTriggerType || (EChallengeTriggerType = {}));
|
|
327
|
+
var EChallengeValidityType;
|
|
328
|
+
(function (EChallengeValidityType) {
|
|
329
|
+
EChallengeValidityType[EChallengeValidityType["Period"] = 0] = "Period";
|
|
330
|
+
EChallengeValidityType[EChallengeValidityType["Date"] = 1] = "Date";
|
|
331
|
+
})(EChallengeValidityType || (EChallengeValidityType = {}));
|
|
332
|
+
|
|
333
|
+
const casinoChallengeDetailsCss = ".container {\n font-family: var(--emw--font-family-secondary, \"Montserrat\", sans-serif);\n background: var(--emw--color-background, #000);\n min-height: 100vh;\n padding-top: 16px;\n container-type: inline-size;\n container-name: challenges-details;\n min-width: 375px;\n width: 100%;\n margin: 0 auto;\n}\n\n.challenges-header {\n display: none;\n}\n\n.back-button {\n display: flex;\n align-items: center;\n padding: 14px 0 14px 10px;\n outline: none;\n background: var(--emw--color-background-secondary, linear-gradient(180deg, #24b24e 0%, #18ce51 100%));\n background-clip: text;\n border: none;\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: 700;\n line-height: 18px;\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n.back-button__icon {\n margin: 0 4px;\n}\n.back-button__text {\n margin-left: 4px;\n}\n\n.details {\n min-width: 308px;\n box-sizing: border-box;\n position: relative;\n display: flex;\n flex-wrap: wrap;\n justify-content: space-between;\n padding: 16px;\n min-width: 375px;\n width: 100%;\n}\n.details.grayed {\n opacity: 0.5;\n}\n.details__general-info {\n max-width: 344px;\n padding-bottom: 16px;\n}\n.details__general-info-image-container {\n position: relative;\n margin-bottom: 22px;\n}\n.details__general-info-image {\n display: block;\n width: 344px;\n height: 226px;\n border-radius: var(--emw--border-radius-medium, 16px);\n}\n.details__general-info-image.grayed {\n opacity: 0.5;\n}\n.details__general-info-timer-badge {\n position: absolute;\n background: var(--emw--color-white, #fff);\n top: 6px;\n right: 6px;\n border-radius: var(--emw--border-radius-large, 30px);\n padding: 2px 12px;\n line-height: 22px;\n font-weight: var(--emw--font-weight-medium, 500);\n font-size: var(--emw--font-size-x-small, 12px);\n box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);\n backdrop-filter: blur(20px);\n}\n.details__general-info-timer-badge span {\n font-weight: var(--emw--font-weight-bold, 700);\n}\n.details__general-info-timer-badge.expired {\n background: var(--emw--background-gray-color, rgba(250, 250, 250, 0.5019607843));\n border: 1px solid var(--emw--border-gray-color, #292c29);\n font-weight: var(--emw--font-weight-bold, 700);\n}\n.details__general-info-timer-badge.completed {\n background: var(--emw--background-success-color, #c9f0d7);\n border: 1px solid var(--emw--border-success-color, #00b74f);\n color: var(--emw--color-gray-300, #083b17);\n font-weight: var(--emw--font-weight-bold, 700);\n}\n.details__general-info-timer-badge.forfeited {\n background: var(--emw--background-errored-color, #ffe1df);\n border: 1px solid var(--emw--border-errored-color, #d6421e);\n color: var(--emw--errored-color, #850606);\n font-weight: var(--emw--font-weight-bold, 700);\n}\n.details__general-info-timer-badge.paused {\n background: var(--emw--background-warning-color, #f8e4ad);\n border: 1px solid var(--emw--border-warning-color, #ea9018);\n color: var(--emw--warning-color, #6d460a);\n font-weight: var(--emw--font-weight-bold, 700);\n}\n.details__general-info-title {\n margin: 0 0 4px;\n color: var(--emw--color-white, #fff);\n font-size: var(--emw--font-size-large, 20px);\n font-weight: var(--emw--font-weight-bold, 700);\n}\n.details__general-info-end-date_label {\n color: var(--emw--color-gray-150, #727672);\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-medium, 500);\n line-height: 22px;\n margin: 0;\n}\n.details__general-info-end-date_value {\n font-weight: var(--emw--font-weight-bold, 700);\n}\n.details__general-info-action-button,\n.details .footer-action-button {\n width: 100%;\n color: var(--emw--color-white, #fff);\n font-size: var(--emw--font-size-medium, 16px);\n border-radius: var(--emw--button-border-radius, 99px);\n border: 2px solid var(--emw--button-border-color, #083b17);\n background: var(--emw--button-background-color, linear-gradient(180deg, #24b24e 0%, #18ce51 100%));\n text-align: center;\n text-transform: uppercase;\n font-weight: var(--emw--font-weight-bold, 700);\n height: 51px;\n padding: 16px 32px;\n display: flex;\n justify-content: center;\n align-items: center;\n align-self: stretch;\n gap: 10px;\n}\n.details__general-info-action-button:hover,\n.details .footer-action-button:hover {\n border-color: var(--emw--color-secondary, #083b17);\n cursor: pointer;\n}\n.details__general-info-action-button.filled,\n.details .footer-action-button.filled {\n background-color: var(--emw--button-background-primary-color, #18ce51);\n color: var(--emw--color-white, #fff);\n border-color: var(--emw--color-gray-300, #083b17);\n}\n.details__general-info-action-button.filled:hover,\n.details .footer-action-button.filled:hover {\n border-color: transparent;\n box-shadow: 0 0 4px 0 rgba(188, 252, 177, 0.2), 0 0 20px 0 rgba(0, 183, 79, 0.5);\n}\n.details__general-info-action-button.grayed,\n.details .footer-action-button.grayed {\n color: var(--emw--color-gray-50, #e2e2e2);\n background: var(--emw--color-black-150, #000000);\n border-color: var(--emw--button-disabled-border-color, #727672);\n box-shadow: 0 0 20px 0 rgba(188, 252, 177, 0.2);\n}\n.details__general-info-action-button.grayed:hover,\n.details .footer-action-button.grayed:hover {\n color: var(--emw--color-white, #fff);\n}\n.details__general-info-action-button:disabled, .details__general-info-action-button:disabled:hover,\n.details .footer-action-button:disabled,\n.details .footer-action-button:disabled:hover {\n color: var(--emw--color-gray-50, #e2e2e2);\n cursor: not-allowed;\n border: 2px solid var(--emw--button-disabled-border-color, #727672);\n opacity: 0.7;\n}\n.details .footer-action-button {\n height: 44px;\n padding: 14px 20px;\n font-size: var(--emw--font-size-sm, 14px);\n}\n.details__general-info-action-button {\n display: none;\n margin-top: 32px;\n}\n.details__tabs-container {\n flex-grow: 1;\n max-width: 100%;\n}\n.details__tabs {\n position: relative;\n display: flex;\n justify-content: flex-start;\n border-bottom: 1px solid var(--emw--border-warning-color, #ea9018);\n}\n.details__tab {\n padding: 10px 20px;\n cursor: pointer;\n position: relative;\n font-weight: var(--emw--font-weight-medium, 500);\n color: var(--emw--color-gray-300, #555);\n display: flex;\n width: 33.3333333333%;\n padding: 12px 10px;\n justify-content: center;\n align-items: center;\n gap: 10px;\n}\n.details__tab.active {\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-bold, 700);\n text-transform: uppercase;\n background: var(--emw--active-tab, linear-gradient(180deg, #ea9018 0%, #e0a84e 100%));\n background-clip: text;\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n.details__tab {\n color: var(--emw--color-gray-100, #727672);\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-bold, 700);\n text-transform: uppercase;\n}\n.details__tab:nth-of-type(1).active ~ .active-tab-indicator {\n left: 0;\n width: 33.3333333333%;\n}\n.details__tab:nth-of-type(2).active ~ .active-tab-indicator {\n left: 33.3333333333%;\n width: 33.3333333333%;\n}\n.details__tab:nth-of-type(3).active ~ .active-tab-indicator {\n left: 66.6666666667%;\n width: 33.3333333333%;\n}\n.details .active-tab-indicator {\n position: absolute;\n bottom: -3px;\n height: 2px;\n background: var(--emw--active-tab-indicator, linear-gradient(180deg, rgba(234, 144, 24, 0.7) 0%, rgba(224, 168, 78, 0.7) 100%), #727672);\n transition: left 0.3s ease, width 0.3s ease;\n}\n.details .levels__tab {\n margin-top: 22px;\n display: flex;\n gap: 12px;\n flex-direction: column;\n overflow-y: auto;\n height: 300px;\n padding-bottom: 80px;\n}\n.details .level {\n display: flex;\n padding: 20px;\n flex-direction: column;\n align-items: flex-start;\n border-radius: var(--emw--border-radius-small, 12px);\n background-color: var(--emw--color-background, rgba(114, 118, 114, 0.2));\n}\n.details .level.grayed {\n background: rgba(114, 118, 114, 0.15);\n}\n.details .level.active {\n background: linear-gradient(90deg, rgba(30, 101, 79, 0.2) 0%, rgba(28, 141, 86, 0.2) 100%);\n border: 2px solid var(--Gradient-Blue, #003e5c);\n box-shadow: 0 0 20px 0 rgba(188, 252, 177, 0.2);\n}\n.details .level.completed {\n background: linear-gradient(90deg, rgba(0, 62, 92, 0.3) 0.05%, rgba(17, 59, 33, 0.3) 87.69%);\n}\n.details .level__status {\n display: flex;\n align-items: center;\n gap: 4px;\n font-size: var(--emw--font-size-small, 14px);\n font-weight: var(--emw--font-weight-bold, 700);\n line-height: 18px;\n}\n.details .level__title {\n width: 100%;\n display: flex;\n justify-content: space-between;\n color: var(--emw--color-white, #fff);\n font-size: var(--emw--font-size-small, 14px);\n font-weight: var(--emw--font-weight-bold, 700);\n line-height: 18px;\n margin-bottom: 10px;\n}\n.details .level__title .completed, .details .level__title .in-progress {\n color: var(--emw--color-valid, #00b74f);\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-medium, 500);\n text-align: right;\n line-height: 22px;\n}\n.details .level__title.grayed {\n color: var(--emw--disabled-color, #727672);\n}\n.details .level__progress {\n width: 100%;\n margin-bottom: 10px;\n}\n.details .level__icon {\n display: flex;\n margin: 5px 6px 5px 0;\n opacity: 1;\n}\n.details .level__icon img {\n display: block;\n width: 12px;\n height: 12px;\n}\n.details .level__icon img.grayed {\n opacity: 0.5;\n}\n.details .level__bonus, .details .level__target {\n display: flex;\n align-items: flex-start;\n color: var(--emw--color-gray-200, #c8d6ce);\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-medium, 500);\n line-height: 22px;\n margin-bottom: 4px;\n}\n.details .level__value {\n color: var(--emw--color-gray-200, #c8d6ce);\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-medium, 500);\n line-height: 22px;\n}\n.details .level__value.grayed {\n opacity: 0.5;\n}\n.details .games__tab {\n display: flex;\n flex-wrap: wrap;\n gap: 12px;\n padding: 22px 0;\n overflow-y: auto;\n height: 300px;\n padding-bottom: 80px;\n}\n.details .games__tab .game {\n position: relative;\n width: 105px;\n height: 85px;\n}\n.details .games__tab .game img {\n width: 100%;\n height: 100%;\n border-radius: var(--emw--border-radius-medium, 16px);\n}\n.details .games__tab .game .contribution {\n position: absolute;\n top: 4px;\n right: 4px;\n color: var(--emw--color-white, #fff);\n border-radius: var(--emw--border-radius-small, 12px);\n border: 1px solid var(--Gradient-Blue, #003e5c);\n background: rgba(0, 0, 0, 0.5);\n box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);\n backdrop-filter: blur(5px);\n padding: 0 8px;\n font-size: var(--emw--font-size-2x-small, 8px);\n font-weight: var(--emw--font-weight-bold, 700);\n line-height: 22px;\n text-align: center;\n}\n.details .rules__tab {\n display: flex;\n flex-direction: column;\n padding: 22px 0;\n gap: 8px;\n overflow-y: auto;\n height: 300px;\n padding-bottom: 80px;\n}\n.details .rules__tab .rule {\n color: var(--emw--color-gray-200, #c8d6ce);\n font-size: var(--emw--font-size-small, 14px);\n font-style: normal;\n font-weight: 500;\n line-height: 24px;\n}\n.details .rules__tab .link {\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-bold, 700);\n line-height: 18px;\n background: var(--emw--button-background-color, linear-gradient(180deg, #24b24e 0%, #18ce51 100%));\n background-clip: text;\n padding: 14px 0;\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n.details__button {\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 10px;\n flex: 1 0 0;\n height: 42px;\n padding: 14px 20px;\n border-radius: var(--emw--button-border-radius, 99px);\n border: 2px solid var(--emw--button-border-color, #083b17);\n background-color: var(--emw--button-background-color, linear-gradient(180deg, #24b24e 0%, #18ce51 100%));\n color: var(--emw--color-white, #fff);\n font-size: var(--emw--font-size-small, 14px);\n font-weight: var(--emw--font-weight-bold, 700);\n text-transform: uppercase;\n}\n\n.button__container {\n position: fixed;\n bottom: 0;\n left: 50%;\n transform: translateX(-50%);\n display: flex;\n width: calc(100% - 32px);\n padding: 16px 16px 22px 16px;\n justify-content: center;\n align-items: center;\n gap: 4px;\n border-top: 1px solid var(--emw--color-blue, #003e5c);\n background: var(--emw--color-background, #000);\n box-shadow: 0 0 20px 0 rgba(188, 252, 177, 0.2);\n}\n\n.lds-dual-ring {\n display: block;\n width: 80px;\n height: 80px;\n margin: 80px auto 0 auto;\n}\n\n.lds-dual-ring:after {\n content: \" \";\n display: block;\n width: 64px;\n height: 64px;\n margin: 8px;\n border-radius: 50%;\n border: 6px solid var(--emw--casino-color-primary, var(--emw--color-primary, #22b04e));\n border-color: var(--emw--casino-color-primary, var(--emw--color-primary, #22b04e)) transparent var(--emw--casino-color-primary, var(--emw--color-primary, #22b04e));\n animation: lds-dual-ring 1.2s linear infinite;\n}\n\n@keyframes lds-dual-ring {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n}\n.notification {\n display: flex;\n align-items: flex-start;\n border-radius: var(--emw--border-radius-small, 12px);\n background: rgba(188, 252, 177, 0.1);\n display: flex;\n padding: 16px;\n align-items: flex-start;\n gap: 10px;\n margin: 16px 16px 22px 16px;\n}\n.notification__icon {\n margin-top: 2px;\n}\n.notification__message, .notification__title {\n color: var(--emw--color-gray-50, #e2e2e2);\n font-size: var(--emw--font-size-x-small, 12px);\n font-weight: var(--emw--font-weight-medium, 500);\n line-height: 22px;\n}\n.notification__title {\n background: var(--emw--color-background-secondary, linear-gradient(180deg, #24b24e 0%, #18ce51 100%));\n background-clip: text;\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n.notification__column {\n display: flex;\n flex-direction: column;\n}\n\n@container challenges-details (min-width: 768px) {\n .button__container {\n display: none;\n }\n .details {\n gap: 36px;\n flex-wrap: nowrap;\n }\n .details__general-info-action-button {\n display: flex;\n }\n .details__general-info-image {\n width: 380px;\n min-height: 226px;\n height: auto;\n }\n .details__general-info {\n max-width: 380px;\n }\n .details__tabs__container {\n max-width: calc(100% - 380px);\n }\n .details .levels__tab {\n gap: 20px;\n height: 60vh;\n }\n .details .levels__tab .level__icon {\n width: 14px;\n height: 14px;\n margin: 4px 6px 4px 0px;\n }\n .details .levels__tab .level__icon img {\n width: 100%;\n height: 100%;\n }\n .details .levels__tab .level__title {\n font-size: var(--emw--font-size-medium, 16px);\n }\n .details .levels__tab .level__title .completed, .details .levels__tab .level__title .in-progress {\n font-size: var(--emw--font-size-sm, 14px);\n }\n .details .levels__tab .level__bonus, .details .levels__tab .level__target, .details .levels__tab .level__value {\n font-size: var(--emw--font-size-sm, 14px);\n }\n .details .games__tab, .details .rules__tab {\n height: 60vh;\n }\n .details .games__tab {\n gap: 20px;\n min-width: 340px;\n }\n .details .games__tab .game {\n width: 160px;\n height: 110px;\n }\n .details .games__tab .game .contribution {\n top: 8px;\n right: 8px;\n padding: 4px 10px;\n font-size: var(--emw--font-size-2x-small, 10px);\n line-height: 18px;\n }\n .challenges-header {\n margin: 0 0 32px;\n display: flex;\n justify-content: space-between;\n }\n .challenges-title {\n margin: 0;\n display: flex;\n gap: 10px;\n align-items: center;\n font-size: var(--emw--font-size-x-large, 24px);\n font-weight: var(--emw--font-weight-bold, 700);\n color: var(--emw--color-white, #ffffff);\n }\n .challenges-tabs {\n display: flex;\n gap: 12px;\n border-radius: 48px;\n padding: 6px;\n color: var(--emw--color-gray-150, #c8d6ce);\n background-color: var(--emw--color-background-secondary, #272727);\n }\n .challenges-tab {\n padding: 10px 16px;\n border-radius: 40px;\n font-size: var(--emw--font-size-small, 14px);\n font-weight: var(--emw--font-weight-bold, 700);\n cursor: pointer;\n text-align: center;\n width: 95px;\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 4px;\n }\n .challenges-tab.active {\n color: var(--emw--color-white, #ffffff);\n background: linear-gradient(90deg, rgb(0, 62, 92) 0%, rgb(17, 59, 33) 100%);\n }\n .challenges-tab:last-child {\n width: inherit;\n padding: 10px 16px;\n }\n}";
|
|
334
|
+
const CasinoChallengeDetailsStyle0 = casinoChallengeDetailsCss;
|
|
335
|
+
|
|
336
|
+
const CasinoChallengeDetails = class {
|
|
337
|
+
constructor(hostRef) {
|
|
338
|
+
registerInstance(this, hostRef);
|
|
339
|
+
this.timerExpired = createEvent(this, "timerExpired", 7);
|
|
340
|
+
this.activeEntityRef = null;
|
|
341
|
+
this.scrollContainerRef = null;
|
|
342
|
+
this.challengesTabs = ['Active', 'Pending', 'Finished', 'Code'];
|
|
343
|
+
this.tabs = ['LEVELS', 'GAMES', 'RULES'];
|
|
344
|
+
this.showNotification = 10;
|
|
345
|
+
this.checkIsMobile = () => {
|
|
346
|
+
this.isMobile = window.innerWidth <= 768;
|
|
347
|
+
};
|
|
348
|
+
this.calculateTargetValue = (level, currencySymbol) => {
|
|
349
|
+
var _a;
|
|
350
|
+
if (!level)
|
|
351
|
+
return '';
|
|
352
|
+
const minbet = ((_a = level.BetRange) === null || _a === void 0 ? void 0 : _a.MinBet)
|
|
353
|
+
? `, ${translate('minBet', this.language)} ${currencySymbol + level.BetRange.MinBet}`
|
|
354
|
+
: '';
|
|
355
|
+
switch (level.LevelTargetType) {
|
|
356
|
+
case EChallengeLevelTargetType.Accumulative:
|
|
357
|
+
return `${translate('placeBetsOf', this.language)} ${currencySymbol + level.DisplayCurrencyTargetTurnover + minbet}`;
|
|
358
|
+
case EChallengeLevelTargetType.SingleBet:
|
|
359
|
+
return `${translate('place', this.language)} ${currencySymbol + level.TargetTurnover} ${translate('bet', this.language)}`;
|
|
360
|
+
case EChallengeLevelTargetType.MultipleOneBetSize:
|
|
361
|
+
return `${translate('place', this.language)} ${level.TargetBetCount} ${translate('bets', this.language) + minbet}`;
|
|
362
|
+
default:
|
|
363
|
+
return '-';
|
|
364
|
+
}
|
|
365
|
+
};
|
|
366
|
+
this.getBadgeContent = () => {
|
|
367
|
+
var _a;
|
|
368
|
+
if (this.challenge) {
|
|
369
|
+
switch ((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.Status) {
|
|
370
|
+
case EChallengeStatus.Expired:
|
|
371
|
+
return translate('expired', this.language);
|
|
372
|
+
case EChallengeStatus.Forfeited:
|
|
373
|
+
return translate('forfeited', this.language);
|
|
374
|
+
case EChallengeStatus.Completed:
|
|
375
|
+
return translate('finished', this.language);
|
|
376
|
+
case EChallengeStatus.Paused:
|
|
377
|
+
return translate('suspended', this.language);
|
|
378
|
+
default:
|
|
379
|
+
return [translate('endsIn', this.language), ' - ', h("span", null, this.timeLeft || null)];
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
else
|
|
383
|
+
return null;
|
|
384
|
+
};
|
|
385
|
+
this.checkAttrs = () => {
|
|
386
|
+
if (!this.endpoint) {
|
|
387
|
+
this.error = 'Endpoint is missing! Please provide a valid endpointURL.';
|
|
388
|
+
this.hasError = true;
|
|
389
|
+
console.error(this.error);
|
|
390
|
+
}
|
|
391
|
+
return this.hasError;
|
|
392
|
+
};
|
|
393
|
+
this.joinUnjoinProgress = async () => {
|
|
394
|
+
var _a, _b, _c, _d;
|
|
395
|
+
if (!this.isUserAuthorized) {
|
|
396
|
+
this.openLoginRegisterModal();
|
|
397
|
+
}
|
|
398
|
+
const join = ((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.Status) === EChallengeStatus.Started || ((_b = this.challenge) === null || _b === void 0 ? void 0 : _b.Status) === EChallengeStatus.Paused;
|
|
399
|
+
const progress = (_d = (_c = this.challenge) === null || _c === void 0 ? void 0 : _c.LevelProgresses) === null || _d === void 0 ? void 0 : _d.find((x) => (x === null || x === void 0 ? void 0 : x.ProgressStatus) === EChallengeProgressStatus.InProgress);
|
|
400
|
+
if (!this.checkAttrs()) {
|
|
401
|
+
const url = `${this.endpoint}/challenge/ChangeProgressStatus`;
|
|
402
|
+
const body = Object.assign(Object.assign({ DomainId: this.domain }, (this.session && { PlayerSessionId: this.session })), (join ? { ProgressToActivate: progress.LevelId } : { ProgressToDeactivate: progress.LevelId }));
|
|
403
|
+
this.actionLoading = true;
|
|
404
|
+
return fetch(url, {
|
|
405
|
+
method: 'POST',
|
|
406
|
+
headers: {
|
|
407
|
+
'Content-Type': 'application/json'
|
|
408
|
+
},
|
|
409
|
+
body: JSON.stringify(body)
|
|
410
|
+
})
|
|
411
|
+
.then((res) => res.json())
|
|
412
|
+
.finally(() => (this.actionLoading = false));
|
|
413
|
+
}
|
|
414
|
+
};
|
|
415
|
+
this.handleTabClick = (index) => () => {
|
|
416
|
+
if (index === 0) {
|
|
417
|
+
setTimeout(() => {
|
|
418
|
+
this.scrollToActiveLevel();
|
|
419
|
+
}, 0);
|
|
420
|
+
}
|
|
421
|
+
if (index === 1) {
|
|
422
|
+
this.fetchGames();
|
|
423
|
+
}
|
|
424
|
+
this.activeTabIndex = index;
|
|
425
|
+
};
|
|
426
|
+
this.handleChallengesTabClick = (tabIndex) => () => {
|
|
427
|
+
window.postMessage({ type: 'GoToChallengesPage', tabIndex }, window.location.href);
|
|
428
|
+
};
|
|
429
|
+
this.getBackButtonText = () => {
|
|
430
|
+
return (h("span", { class: "back-button__text" }, this.isMobile ? translate('all', this.language) : translate('back', this.language)));
|
|
431
|
+
};
|
|
432
|
+
this.mbSource = undefined;
|
|
433
|
+
this.clientStyling = undefined;
|
|
434
|
+
this.endpoint = '';
|
|
435
|
+
this.domain = '';
|
|
436
|
+
this.session = '';
|
|
437
|
+
this.clientStylingUrl = undefined;
|
|
438
|
+
this.translationUrl = '';
|
|
439
|
+
this.language = 'en';
|
|
440
|
+
this.isUserAuthorized = true;
|
|
441
|
+
this.challengeId = '';
|
|
442
|
+
this.activeChallengeTabIndex = '0';
|
|
443
|
+
this.timeLeft = undefined;
|
|
444
|
+
this.activeTabIndex = 0;
|
|
445
|
+
this.actionLoading = false;
|
|
446
|
+
this.isMobile = false;
|
|
447
|
+
this.error = '';
|
|
448
|
+
this.hasError = false;
|
|
449
|
+
this.games = [];
|
|
450
|
+
this.gamesAreLoading = false;
|
|
451
|
+
this.challenge = undefined;
|
|
452
|
+
this.loading = false;
|
|
453
|
+
}
|
|
454
|
+
handleClientStylingChange(newValue, oldValue) {
|
|
455
|
+
if (newValue != oldValue) {
|
|
456
|
+
setClientStyling(this.stylingContainer, this.clientStyling);
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
handleClientStylingUrlChange(newValue, oldValue) {
|
|
460
|
+
if (newValue != oldValue) {
|
|
461
|
+
setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
handleMbSourceChange(newValue, oldValue) {
|
|
465
|
+
if (newValue != oldValue) {
|
|
466
|
+
setStreamStyling(this.stylingContainer, `${this.mbSource}.Style`);
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
onEntityChange(newChallenge, previousChallenge) {
|
|
470
|
+
var _a, _b, _c, _d;
|
|
471
|
+
const newActiveProgressId = (_b = (_a = newChallenge === null || newChallenge === void 0 ? void 0 : newChallenge.LevelProgresses) === null || _a === void 0 ? void 0 : _a.find((level) => level.ProgressStatus === EChallengeProgressStatus.InProgress)) === null || _b === void 0 ? void 0 : _b.LevelId;
|
|
472
|
+
const prevActiveProgressId = (_d = (_c = previousChallenge === null || previousChallenge === void 0 ? void 0 : previousChallenge.LevelProgresses) === null || _c === void 0 ? void 0 : _c.find((level) => level.ProgressStatus === EChallengeProgressStatus.InProgress)) === null || _d === void 0 ? void 0 : _d.LevelId;
|
|
473
|
+
if (newActiveProgressId == prevActiveProgressId) {
|
|
474
|
+
setTimeout(() => {
|
|
475
|
+
this.scrollToActiveLevel();
|
|
476
|
+
}, 0);
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
scrollToActiveLevel() {
|
|
480
|
+
if (this.activeEntityRef) {
|
|
481
|
+
const container = this.scrollContainerRef;
|
|
482
|
+
const target = this.activeEntityRef;
|
|
483
|
+
const containerTop = container.getBoundingClientRect().top;
|
|
484
|
+
const targetTop = target.getBoundingClientRect().top;
|
|
485
|
+
const scrollOffset = targetTop - containerTop;
|
|
486
|
+
container.scrollTo({
|
|
487
|
+
top: container.scrollTop + scrollOffset - container.clientHeight / 2 + target.clientHeight / 2,
|
|
488
|
+
behavior: 'smooth'
|
|
489
|
+
});
|
|
490
|
+
}
|
|
491
|
+
}
|
|
492
|
+
connectedCallback() {
|
|
493
|
+
this.timerId = setInterval(() => {
|
|
494
|
+
this.updateTime();
|
|
495
|
+
}, 1000);
|
|
496
|
+
}
|
|
497
|
+
async getChallenge() {
|
|
498
|
+
if (!this.checkAttrs()) {
|
|
499
|
+
const url = `${this.endpoint}/challenge/GetChallengesInfo`;
|
|
500
|
+
const body = Object.assign({ DomainId: this.domain, PlayerLanguage: this.language, PageNumber: 1, PageSize: 1, ChallengeId: this.challengeId }, (this.session && { PlayerSessionId: this.session }));
|
|
501
|
+
this.loading = true;
|
|
502
|
+
return fetch(url, {
|
|
503
|
+
method: 'POST',
|
|
504
|
+
headers: {
|
|
505
|
+
'Content-Type': 'application/json'
|
|
506
|
+
},
|
|
507
|
+
body: JSON.stringify(body)
|
|
508
|
+
})
|
|
509
|
+
.then((res) => res.json())
|
|
510
|
+
.then((res) => {
|
|
511
|
+
this.challenge = res.Data[0];
|
|
512
|
+
})
|
|
513
|
+
.finally(() => (this.loading = false));
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
componentWillLoad() {
|
|
517
|
+
if (this.translationUrl) {
|
|
518
|
+
resolveTranslationUrl(this.translationUrl);
|
|
519
|
+
}
|
|
520
|
+
this.updateTime();
|
|
521
|
+
}
|
|
522
|
+
componentDidLoad() {
|
|
523
|
+
if (this.stylingContainer) {
|
|
524
|
+
if (this.mbSource)
|
|
525
|
+
setStreamStyling(this.stylingContainer, `${this.mbSource}.Style`);
|
|
526
|
+
if (this.clientStyling)
|
|
527
|
+
setClientStyling(this.stylingContainer, this.clientStyling);
|
|
528
|
+
if (this.clientStylingUrl)
|
|
529
|
+
setClientStylingURL(this.stylingContainer, this.clientStylingUrl);
|
|
530
|
+
}
|
|
531
|
+
this.getChallenge();
|
|
532
|
+
this.checkIsMobile();
|
|
533
|
+
window.addEventListener('resize', this.checkIsMobile);
|
|
534
|
+
setTimeout(() => {
|
|
535
|
+
this.scrollToActiveLevel();
|
|
536
|
+
}, 0);
|
|
537
|
+
}
|
|
538
|
+
disconnectedCallback() {
|
|
539
|
+
if (this.stylingSubscription) {
|
|
540
|
+
this.stylingSubscription.unsubscribe();
|
|
541
|
+
}
|
|
542
|
+
clearInterval(this.timerId);
|
|
543
|
+
window.removeEventListener('resize', this.checkIsMobile);
|
|
544
|
+
}
|
|
545
|
+
getReward(level) {
|
|
546
|
+
return level.Rewards.map((r) => r.RewardDescription).join(' + ') || '-';
|
|
547
|
+
}
|
|
548
|
+
getTarget(level) {
|
|
549
|
+
var _a;
|
|
550
|
+
return this.calculateTargetValue(level, (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.CurrencySymbol) || '-';
|
|
551
|
+
}
|
|
552
|
+
updateTime() {
|
|
553
|
+
var _a, _b;
|
|
554
|
+
if (this.challenge) {
|
|
555
|
+
this.timeLeft = getTimeLeft((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.ExpirationTime);
|
|
556
|
+
if (!this.timeLeft && this.timerExpired) {
|
|
557
|
+
clearInterval(this.timerId);
|
|
558
|
+
this.timerExpired.emit((_b = this.challenge) === null || _b === void 0 ? void 0 : _b.Id);
|
|
559
|
+
}
|
|
560
|
+
}
|
|
561
|
+
}
|
|
562
|
+
get getCardBadge() {
|
|
563
|
+
var _a;
|
|
564
|
+
if (this.timeLeft) {
|
|
565
|
+
return (h("div", { class: `details__general-info-timer-badge ${ChallengeStatusDictionary[(_a = this.challenge) === null || _a === void 0 ? void 0 : _a.Status]}` }, this.getBadgeContent()));
|
|
566
|
+
}
|
|
567
|
+
return null;
|
|
568
|
+
}
|
|
569
|
+
get actionButtonText() {
|
|
570
|
+
var _a;
|
|
571
|
+
if (this.isUserAuthorized) {
|
|
572
|
+
let buttonText;
|
|
573
|
+
switch ((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.Status) {
|
|
574
|
+
case EChallengeStatus.Started:
|
|
575
|
+
buttonText = 'start';
|
|
576
|
+
break;
|
|
577
|
+
case EChallengeStatus.Paused:
|
|
578
|
+
buttonText = 'resume';
|
|
579
|
+
break;
|
|
580
|
+
case EChallengeStatus.InProgress:
|
|
581
|
+
buttonText = 'resume';
|
|
582
|
+
break;
|
|
583
|
+
case EChallengeStatus.PendingLevelReward:
|
|
584
|
+
buttonText = 'pause';
|
|
585
|
+
break;
|
|
586
|
+
default:
|
|
587
|
+
buttonText = 'start';
|
|
588
|
+
break;
|
|
589
|
+
}
|
|
590
|
+
return buttonText;
|
|
591
|
+
}
|
|
592
|
+
return 'join';
|
|
593
|
+
}
|
|
594
|
+
openLoginRegisterModal() {
|
|
595
|
+
window.postMessage({
|
|
596
|
+
type: 'OpenLoginRegisterModal',
|
|
597
|
+
transition: 'Login'
|
|
598
|
+
});
|
|
599
|
+
}
|
|
600
|
+
async fetchGames() {
|
|
601
|
+
var _a;
|
|
602
|
+
if (!this.checkAttrs()) {
|
|
603
|
+
const url = `${this.endpoint}/challenge/GetChallengeGames`;
|
|
604
|
+
const body = Object.assign({ ChallengeId: (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.ChallengeId }, (this.session && { PlayerSessionId: this.session }));
|
|
605
|
+
this.gamesAreLoading = true;
|
|
606
|
+
return fetch(url, {
|
|
607
|
+
method: 'POST',
|
|
608
|
+
headers: {
|
|
609
|
+
'Content-Type': 'application/json'
|
|
610
|
+
},
|
|
611
|
+
body: JSON.stringify(body)
|
|
612
|
+
})
|
|
613
|
+
.then((res) => res.json())
|
|
614
|
+
.then((res) => {
|
|
615
|
+
this.games = res.ChallengeGames;
|
|
616
|
+
})
|
|
617
|
+
.finally(() => (this.gamesAreLoading = false));
|
|
618
|
+
}
|
|
619
|
+
}
|
|
620
|
+
getLevelStatus(level, active) {
|
|
621
|
+
if (this.isUserAuthorized) {
|
|
622
|
+
if (level.ProgressStatus === EChallengeProgressStatus.InProgress && !active)
|
|
623
|
+
return (h("div", { class: "level__status" }, h("span", null, level.ProgressPercentage, "%"), h("img", { src: lockSvg, alt: "lock-icon", title: "lock-icon" })));
|
|
624
|
+
else if (level.ProgressStatus === EChallengeProgressStatus.Closed || !active)
|
|
625
|
+
return (h("div", { class: "level__status" }, h("img", { src: lockSvg, alt: "lock-icon", title: "lock-icon" })));
|
|
626
|
+
else if (level.ProgressStatus === EChallengeProgressStatus.Fillup)
|
|
627
|
+
return (h("div", { class: "level__status" }, h("img", { src: lockSvg, alt: "lock-icon", title: "lock-icon" })));
|
|
628
|
+
else if (level.ProgressStatus === EChallengeProgressStatus.Completed)
|
|
629
|
+
return h("span", { class: "completed" }, translate('completed', this.language));
|
|
630
|
+
else if (level.ProgressStatus === EChallengeProgressStatus.InProgress)
|
|
631
|
+
return h("span", { class: "level__status in-progress" }, level.ProgressPercentage, "%");
|
|
632
|
+
}
|
|
633
|
+
return null;
|
|
634
|
+
}
|
|
635
|
+
get pageHeader() {
|
|
636
|
+
return (h("div", { class: "challenges-header" }, h("h1", { class: "challenges-title" }, h("img", { src: titleIconSvg, alt: "icon" }), translate('title', this.language)), this.isUserAuthorized && (h("div", { class: "challenges-tabs" }, this.challengesTabs.map((label, index) => (h("div", { class: `challenges-tab ${index === +this.activeChallengeTabIndex ? 'active' : ''}`, onClick: this.handleChallengesTabClick(index) }, label, this.showNotification === index && h("img", { src: notificationSvg }))))))));
|
|
637
|
+
}
|
|
638
|
+
get cardGeneralInfo() {
|
|
639
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
640
|
+
return (h("div", { class: "details__general-info" }, h("div", { class: "details__general-info-image-container" }, h("img", { class: {
|
|
641
|
+
'details__general-info-image': true,
|
|
642
|
+
grayed: [EChallengeStatus.Expired, EChallengeStatus.Forfeited, EChallengeStatus.Completed].includes((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.Status)
|
|
643
|
+
}, src: (_c = (_b = this.challenge) === null || _b === void 0 ? void 0 : _b.ChallengePresentation) === null || _c === void 0 ? void 0 : _c.BannerUrl, alt: "banner-image", title: "banner-image" }), this.getCardBadge), h("div", { class: "details__general-info-content" }, h("h1", { class: "details__general-info-title" }, (_e = (_d = this.challenge) === null || _d === void 0 ? void 0 : _d.ChallengePresentation) === null || _e === void 0 ? void 0 : _e.PresentationName), h("h3", { class: "details__general-info-end-date_label" }, translate('endDate', this.language), " -", ' ', h("span", { class: "details__general-info-end-date_value" }, this.challenge ? formatDate((_f = this.challenge) === null || _f === void 0 ? void 0 : _f.ExpirationTime) : '-')), h("casino-challenge-progress-bar", { challenge: this.challenge, isUserAuthorized: this.isUserAuthorized, language: this.language }), h("button", { class: {
|
|
644
|
+
'details__general-info-action-button': true,
|
|
645
|
+
filled: ((_g = this.challenge) === null || _g === void 0 ? void 0 : _g.Status) === EChallengeStatus.Started,
|
|
646
|
+
grayed: ((_h = this.challenge) === null || _h === void 0 ? void 0 : _h.Status) === EChallengeStatus.Paused ||
|
|
647
|
+
((_j = this.challenge) === null || _j === void 0 ? void 0 : _j.Status) === EChallengeStatus.InProgress ||
|
|
648
|
+
((_k = this.challenge) === null || _k === void 0 ? void 0 : _k.Status) === EChallengeStatus.PendingLevelReward
|
|
649
|
+
}, disabled: this.actionLoading, onClick: this.joinUnjoinProgress }, translate(this.actionButtonText, this.language)))));
|
|
650
|
+
}
|
|
651
|
+
get challengeTabs() {
|
|
652
|
+
return (h("div", { class: "details__tabs" }, this.tabs.map((label, index) => (h("div", { class: {
|
|
653
|
+
details__tab: true,
|
|
654
|
+
active: index === this.activeTabIndex
|
|
655
|
+
}, onClick: this.handleTabClick(index) }, label))), h("div", { class: "active-tab-indicator" })));
|
|
656
|
+
}
|
|
657
|
+
get levelsTab() {
|
|
658
|
+
var _a, _b;
|
|
659
|
+
return (h("div", { class: "levels__tab", ref: (el) => (this.scrollContainerRef = el) }, (_b = (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.LevelProgresses) === null || _b === void 0 ? void 0 : _b.map((level, index) => {
|
|
660
|
+
var _a;
|
|
661
|
+
const activeChallenge = [0, 1, 2, 3].includes((_a = this === null || this === void 0 ? void 0 : this.challenge) === null || _a === void 0 ? void 0 : _a.Status);
|
|
662
|
+
const isGrayed = (this.isUserAuthorized && level.ProgressStatus !== EChallengeProgressStatus.InProgress) || !activeChallenge;
|
|
663
|
+
const isActiveMatch = level.ProgressStatus === EChallengeProgressStatus.InProgress;
|
|
664
|
+
return (h("div", { class: {
|
|
665
|
+
level: true,
|
|
666
|
+
active: this.isUserAuthorized &&
|
|
667
|
+
activeChallenge &&
|
|
668
|
+
level.ProgressStatus === EChallengeProgressStatus.InProgress,
|
|
669
|
+
completed: this.isUserAuthorized &&
|
|
670
|
+
activeChallenge &&
|
|
671
|
+
level.ProgressStatus === EChallengeProgressStatus.Completed,
|
|
672
|
+
grayed: this.isUserAuthorized &&
|
|
673
|
+
(level.ProgressStatus === EChallengeProgressStatus.Closed ||
|
|
674
|
+
level.ProgressStatus === EChallengeProgressStatus.Fillup)
|
|
675
|
+
}, ref: isActiveMatch ? (el) => (this.activeEntityRef = el) : undefined, key: level.LevelId }, h("div", { class: {
|
|
676
|
+
level__title: true,
|
|
677
|
+
grayed: isGrayed
|
|
678
|
+
} }, h("span", null, "Level ", index + 1), this.isUserAuthorized && this.getLevelStatus(level, activeChallenge)), this.isUserAuthorized && level.ProgressStatus === EChallengeProgressStatus.InProgress && (h("div", { class: "level__progress" }, h("casino-challenge-level-progress-bar", { height: "8px", value: level.ProgressPercentage, active: activeChallenge }))), h("casino-challenge-expandable-paragraph", { "max-height": "56", active: level.ProgressStatus === EChallengeProgressStatus.InProgress && activeChallenge }, h("div", { class: {
|
|
679
|
+
level__bonus: true,
|
|
680
|
+
grayed: isGrayed
|
|
681
|
+
} }, h("span", { class: "level__icon" }, h("img", { class: {
|
|
682
|
+
grayed: isGrayed
|
|
683
|
+
}, src: giftSvg, alt: "gift-icon", title: "gift-icon" })), h("span", { class: {
|
|
684
|
+
level__value: true,
|
|
685
|
+
grayed: isGrayed
|
|
686
|
+
} }, this.getTarget(level))), h("div", { class: {
|
|
687
|
+
level__target: true,
|
|
688
|
+
grayed: isGrayed
|
|
689
|
+
} }, h("span", { class: "level__icon" }, h("img", { class: {
|
|
690
|
+
grayed: isGrayed
|
|
691
|
+
}, src: targetSvg, alt: "target-icon", title: "target-icon" })), h("span", { class: {
|
|
692
|
+
level__value: true,
|
|
693
|
+
grayed: isGrayed
|
|
694
|
+
} }, this.getReward(level))))));
|
|
695
|
+
})));
|
|
696
|
+
}
|
|
697
|
+
handleGameClick(game) {
|
|
698
|
+
if (!this.isUserAuthorized) {
|
|
699
|
+
this.openLoginRegisterModal();
|
|
700
|
+
return;
|
|
701
|
+
}
|
|
702
|
+
window.postMessage({
|
|
703
|
+
type: 'GameClick',
|
|
704
|
+
detail: {
|
|
705
|
+
ClientCompatibility: game.ClientCompatibility,
|
|
706
|
+
GameId: game.GameId,
|
|
707
|
+
GameName: game.GameName,
|
|
708
|
+
GameLaunchUrl: game.GameLaunchUrl,
|
|
709
|
+
RestrictedCountries: game.RestrictedCountries,
|
|
710
|
+
Vendor: game.Vendor
|
|
711
|
+
}
|
|
712
|
+
});
|
|
713
|
+
}
|
|
714
|
+
get gamesTab() {
|
|
715
|
+
return (h("div", { class: "games__tab" }, this.gamesAreLoading ? (h("div", { class: "lds-dual-ring" })) : (this.games.map((game) => {
|
|
716
|
+
return (h("div", { class: "game", onClick: () => this.handleGameClick(game) }, h("img", { src: game.GameIcon, alt: "game-icon", title: "game-icon" }), h("span", { class: "contribution" }, translate('contribution', this.language), " ", game.Contribution, "%")));
|
|
717
|
+
}))));
|
|
718
|
+
}
|
|
719
|
+
get rulesTab() {
|
|
720
|
+
var _a, _b, _c, _d;
|
|
721
|
+
return (h("div", { class: "rules__tab" }, h("div", { class: "rule" }, (_b = (_a = this.challenge) === null || _a === void 0 ? void 0 : _a.ChallengePresentation) === null || _b === void 0 ? void 0 : _b.Description), h("a", { class: "link", href: (_d = (_c = this.challenge) === null || _c === void 0 ? void 0 : _c.ChallengePresentation) === null || _d === void 0 ? void 0 : _d.Url, target: "_blank" }, translate('terms', this.language))));
|
|
722
|
+
}
|
|
723
|
+
get footer() {
|
|
724
|
+
var _a, _b, _c, _d;
|
|
725
|
+
return (h("div", { class: "button__container" }, h("button", { class: {
|
|
726
|
+
'footer-action-button': true,
|
|
727
|
+
filled: ((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.Status) === EChallengeStatus.Started || !this.isUserAuthorized,
|
|
728
|
+
grayed: this.isUserAuthorized &&
|
|
729
|
+
(((_b = this.challenge) === null || _b === void 0 ? void 0 : _b.Status) === EChallengeStatus.Paused ||
|
|
730
|
+
((_c = this.challenge) === null || _c === void 0 ? void 0 : _c.Status) === EChallengeStatus.InProgress ||
|
|
731
|
+
((_d = this.challenge) === null || _d === void 0 ? void 0 : _d.Status) === EChallengeStatus.PendingLevelReward)
|
|
732
|
+
}, onClick: this.joinUnjoinProgress, disabled: this.actionLoading }, translate(this.actionButtonText, this.language))));
|
|
733
|
+
}
|
|
734
|
+
get forfeitedNofitication() {
|
|
735
|
+
var _a;
|
|
736
|
+
return (((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.Status) === 5 && (h("div", { class: "notification" }, h("img", { class: "notification__icon", src: alertSvg }), h("span", { class: "notification__message" }, translate('forfeitNotification', this.language)))));
|
|
737
|
+
}
|
|
738
|
+
get completedNotification() {
|
|
739
|
+
var _a;
|
|
740
|
+
return (((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.Status) === 3 && (h("div", { class: "notification" }, h("img", { class: "notification__icon", src: checkSvg }), h("div", { class: "notification__column" }, h("span", { class: "notification__title" }, translate('congrats', this.language)), h("span", { class: "notification__message" }, translate('completedNofitication', this.language))))));
|
|
741
|
+
}
|
|
742
|
+
get expiredNotification() {
|
|
743
|
+
var _a;
|
|
744
|
+
return (((_a = this.challenge) === null || _a === void 0 ? void 0 : _a.Status) === 4 && (h("div", { class: "notification" }, h("img", { class: "notification__icon", src: infoCircleSvg }), h("span", { class: "notification__message" }, translate('expiredNotification', this.language)))));
|
|
745
|
+
}
|
|
746
|
+
render() {
|
|
747
|
+
return (h("div", { key: 'ac5dde048e4d00efd0a174bb3b077ecc5e7abce7', ref: (el) => (this.stylingContainer = el), class: "container" }, this.pageHeader, this.loading ? (h("div", { class: "lds-dual-ring" })) : (h("div", null, h("button", { class: "back-button" }, h("img", { class: "back-button__icon", src: backArrowSvg }), this.getBackButtonText()), this.forfeitedNofitication, this.completedNotification, this.expiredNotification, h("div", { class: "details" }, this.cardGeneralInfo, h("div", { class: "details__tabs-container" }, this.challengeTabs, this.activeTabIndex === 0 && this.levelsTab, this.activeTabIndex === 1 && this.gamesTab, this.activeTabIndex === 2 && this.rulesTab), this.footer)))));
|
|
748
|
+
}
|
|
749
|
+
static get watchers() { return {
|
|
750
|
+
"clientStyling": ["handleClientStylingChange"],
|
|
751
|
+
"clientStylingUrl": ["handleClientStylingUrlChange"],
|
|
752
|
+
"mbSource": ["handleMbSourceChange"],
|
|
753
|
+
"challenge": ["onEntityChange"]
|
|
754
|
+
}; }
|
|
755
|
+
};
|
|
756
|
+
CasinoChallengeDetails.style = CasinoChallengeDetailsStyle0;
|
|
757
|
+
|
|
758
|
+
export { CasinoChallengeDetails as C, EChallengeProgressStatus as E, EChallengeStatus as a, translate as t };
|