forked from mirrors/akkoma
15 lines
No EOL
347 KiB
JavaScript
15 lines
No EOL
347 KiB
JavaScript
(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[11],{
|
|
|
|
/***/ "./src/i18n/fi.json":
|
|
/*!**************************!*\
|
|
!*** ./src/i18n/fi.json ***!
|
|
\**************************/
|
|
/*! exports provided: default */
|
|
/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
|
"use strict";
|
|
eval("__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n \"chat\": {\n \"title\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Chat\"])};fn.source=\"Chat\";return fn;})()\n },\n \"features_panel\": {\n \"chat\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Chat\"])};fn.source=\"Chat\";return fn;})(),\n \"gopher\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Gopher\"])};fn.source=\"Gopher\";return fn;})(),\n \"media_proxy\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Media-välityspalvelin\"])};fn.source=\"Media-välityspalvelin\";return fn;})(),\n \"scope_options\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näkyvyyden rajaus\"])};fn.source=\"Näkyvyyden rajaus\";return fn;})(),\n \"text_limit\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tekstin pituusraja\"])};fn.source=\"Tekstin pituusraja\";return fn;})(),\n \"title\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ominaisuudet\"])};fn.source=\"Ominaisuudet\";return fn;})(),\n \"who_to_follow\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seurausehdotukset\"])};fn.source=\"Seurausehdotukset\";return fn;})()\n },\n \"finder\": {\n \"error_fetching_user\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe hakiessa käyttäjää\"])};fn.source=\"Virhe hakiessa käyttäjää\";return fn;})(),\n \"find_user\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hae käyttäjä\"])};fn.source=\"Hae käyttäjä\";return fn;})()\n },\n \"general\": {\n \"apply\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aseta\"])};fn.source=\"Aseta\";return fn;})(),\n \"submit\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lähetä\"])};fn.source=\"Lähetä\";return fn;})(),\n \"more\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lisää\"])};fn.source=\"Lisää\";return fn;})(),\n \"generic_error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe tapahtui\"])};fn.source=\"Virhe tapahtui\";return fn;})(),\n \"optional\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"valinnainen\"])};fn.source=\"valinnainen\";return fn;})(),\n \"show_more\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä lisää\"])};fn.source=\"Näytä lisää\";return fn;})(),\n \"show_less\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä vähemmän\"])};fn.source=\"Näytä vähemmän\";return fn;})(),\n \"dismiss\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sulje\"])};fn.source=\"Sulje\";return fn;})(),\n \"cancel\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Peruuta\"])};fn.source=\"Peruuta\";return fn;})(),\n \"disable\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista käytöstä\"])};fn.source=\"Poista käytöstä\";return fn;})(),\n \"confirm\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hyväksy\"])};fn.source=\"Hyväksy\";return fn;})(),\n \"verify\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Varmenna\"])};fn.source=\"Varmenna\";return fn;})(),\n \"enable\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ota käyttöön\"])};fn.source=\"Ota käyttöön\";return fn;})(),\n \"loading\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ladataan…\"])};fn.source=\"Ladataan…\";return fn;})(),\n \"error_retry\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yritä uudelleen\"])};fn.source=\"Yritä uudelleen\";return fn;})(),\n \"retry\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yritä uudelleen\"])};fn.source=\"Yritä uudelleen\";return fn;})(),\n \"close\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sulje\"])};fn.source=\"Sulje\";return fn;})(),\n \"peek\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kurkkaa\"])};fn.source=\"Kurkkaa\";return fn;})()\n },\n \"login\": {\n \"login\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kirjaudu sisään\"])};fn.source=\"Kirjaudu sisään\";return fn;})(),\n \"description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kirjaudu sisään OAuthilla\"])};fn.source=\"Kirjaudu sisään OAuthilla\";return fn;})(),\n \"logout\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kirjaudu ulos\"])};fn.source=\"Kirjaudu ulos\";return fn;})(),\n \"password\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Salasana\"])};fn.source=\"Salasana\";return fn;})(),\n \"placeholder\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"esim. Seppo\"])};fn.source=\"esim. Seppo\";return fn;})(),\n \"register\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rekisteröidy\"])};fn.source=\"Rekisteröidy\";return fn;})(),\n \"username\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttäjänimi\"])};fn.source=\"Käyttäjänimi\";return fn;})(),\n \"hint\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kirjaudu sisään liittyäksesi keskusteluun\"])};fn.source=\"Kirjaudu sisään liittyäksesi keskusteluun\";return fn;})(),\n \"authentication_code\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Todennuskoodi\"])};fn.source=\"Todennuskoodi\";return fn;})(),\n \"enter_recovery_code\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Syötä palautuskoodi\"])};fn.source=\"Syötä palautuskoodi\";return fn;})(),\n \"recovery_code\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Palautuskoodi\"])};fn.source=\"Palautuskoodi\";return fn;})(),\n \"heading\": {\n \"totp\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Monivaihetodennus\"])};fn.source=\"Monivaihetodennus\";return fn;})(),\n \"recovery\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Monivaihepalautus\"])};fn.source=\"Monivaihepalautus\";return fn;})()\n },\n \"enter_two_factor_code\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Syötä monivaihetodennuskoodi\"])};fn.source=\"Syötä monivaihetodennuskoodi\";return fn;})()\n },\n \"nav\": {\n \"about\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tietoja\"])};fn.source=\"Tietoja\";return fn;})(),\n \"back\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Takaisin\"])};fn.source=\"Takaisin\";return fn;})(),\n \"chat\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Paikallinen Chat\"])};fn.source=\"Paikallinen Chat\";return fn;})(),\n \"friend_requests\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seurauspyynnöt\"])};fn.source=\"Seurauspyynnöt\";return fn;})(),\n \"mentions\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Maininnat\"])};fn.source=\"Maininnat\";return fn;})(),\n \"interactions\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Interaktiot\"])};fn.source=\"Interaktiot\";return fn;})(),\n \"dms\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yksityisviestit\"])};fn.source=\"Yksityisviestit\";return fn;})(),\n \"public_tl\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Julkinen Aikajana\"])};fn.source=\"Julkinen Aikajana\";return fn;})(),\n \"timeline\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aikajana\"])};fn.source=\"Aikajana\";return fn;})(),\n \"twkn\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tunnettu Verkosto\"])};fn.source=\"Tunnettu Verkosto\";return fn;})(),\n \"user_search\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttäjähaku\"])};fn.source=\"Käyttäjähaku\";return fn;})(),\n \"who_to_follow\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seurausehdotukset\"])};fn.source=\"Seurausehdotukset\";return fn;})(),\n \"preferences\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Asetukset\"])};fn.source=\"Asetukset\";return fn;})(),\n \"administration\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ylläpito\"])};fn.source=\"Ylläpito\";return fn;})(),\n \"search\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Haku\"])};fn.source=\"Haku\";return fn;})(),\n \"bookmarks\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kirjanmerkit\"])};fn.source=\"Kirjanmerkit\";return fn;})()\n },\n \"notifications\": {\n \"broken_favorite\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Viestiä ei löydetty…\"])};fn.source=\"Viestiä ei löydetty…\";return fn;})(),\n \"favorited_you\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"tykkäsi viestistäsi\"])};fn.source=\"tykkäsi viestistäsi\";return fn;})(),\n \"followed_you\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"seuraa sinua\"])};fn.source=\"seuraa sinua\";return fn;})(),\n \"load_older\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lataa vanhempia ilmoituksia\"])};fn.source=\"Lataa vanhempia ilmoituksia\";return fn;})(),\n \"notifications\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ilmoitukset\"])};fn.source=\"Ilmoitukset\";return fn;})(),\n \"read\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lue!\"])};fn.source=\"Lue!\";return fn;})(),\n \"repeated_you\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"toisti viestisi\"])};fn.source=\"toisti viestisi\";return fn;})(),\n \"no_more_notifications\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ei enempää ilmoituksia\"])};fn.source=\"Ei enempää ilmoituksia\";return fn;})(),\n \"reacted_with\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"lisäsi reaktion \", _interpolate(_list(0))])};fn.source=\"lisäsi reaktion {0}\";return fn;})(),\n \"migrated_to\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"siirtyi sivulle\"])};fn.source=\"siirtyi sivulle\";return fn;})(),\n \"follow_request\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"haluaa seurata sinua\"])};fn.source=\"haluaa seurata sinua\";return fn;})()\n },\n \"polls\": {\n \"add_poll\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lisää äänestys\"])};fn.source=\"Lisää äänestys\";return fn;})(),\n \"add_option\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lisää vaihtoehto\"])};fn.source=\"Lisää vaihtoehto\";return fn;})(),\n \"option\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vaihtoehto\"])};fn.source=\"Vaihtoehto\";return fn;})(),\n \"votes\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ääntä\"])};fn.source=\"ääntä\";return fn;})(),\n \"vote\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Äänestä\"])};fn.source=\"Äänestä\";return fn;})(),\n \"type\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Äänestyksen tyyppi\"])};fn.source=\"Äänestyksen tyyppi\";return fn;})(),\n \"single_choice\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yksi valinta\"])};fn.source=\"Yksi valinta\";return fn;})(),\n \"multiple_choices\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Monivalinta\"])};fn.source=\"Monivalinta\";return fn;})(),\n \"expiry\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Äänestyksen kesto\"])};fn.source=\"Äänestyksen kesto\";return fn;})(),\n \"expires_in\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Päättyy \", _interpolate(_list(0)), \" päästä\"])};fn.source=\"Päättyy {0} päästä\";return fn;})(),\n \"expired\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Päättyi \", _interpolate(_list(0)), \" sitten\"])};fn.source=\"Päättyi {0} sitten\";return fn;})(),\n \"not_enough_option\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Liian vähän uniikkeja vaihtoehtoja äänestyksessä\"])};fn.source=\"Liian vähän uniikkeja vaihtoehtoja äänestyksessä\";return fn;})(),\n \"not_enough_options\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Liian vähän ainutkertaisia vaihtoehtoja\"])};fn.source=\"Liian vähän ainutkertaisia vaihtoehtoja\";return fn;})()\n },\n \"interactions\": {\n \"favs_repeats\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Toistot ja tykkäykset\"])};fn.source=\"Toistot ja tykkäykset\";return fn;})(),\n \"follows\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Uudet seuraukset\"])};fn.source=\"Uudet seuraukset\";return fn;})(),\n \"load_older\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lataa vanhempia interaktioita\"])};fn.source=\"Lataa vanhempia interaktioita\";return fn;})(),\n \"moves\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttäjien siirtymiset\"])};fn.source=\"Käyttäjien siirtymiset\";return fn;})()\n },\n \"post_status\": {\n \"new_status\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Uusi viesti\"])};fn.source=\"Uusi viesti\";return fn;})(),\n \"account_not_locked_warning\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Tilisi ei ole \", _interpolate(_list(0)), \". Kuka vain voi seurata sinua nähdäksesi 'vain-seuraajille' -viestisi.\"])};fn.source=\"Tilisi ei ole {0}. Kuka vain voi seurata sinua nähdäksesi 'vain-seuraajille' -viestisi.\";return fn;})(),\n \"account_not_locked_warning_link\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"lukittu\"])};fn.source=\"lukittu\";return fn;})(),\n \"attachments_sensitive\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Merkkaa liitteet arkaluonteisiksi\"])};fn.source=\"Merkkaa liitteet arkaluonteisiksi\";return fn;})(),\n \"content_type\": {\n \"text/plain\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tavallinen teksti\"])};fn.source=\"Tavallinen teksti\";return fn;})(),\n \"text/html\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"HTML\"])};fn.source=\"HTML\";return fn;})(),\n \"text/markdown\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Markdown\"])};fn.source=\"Markdown\";return fn;})(),\n \"text/bbcode\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"BBCode\"])};fn.source=\"BBCode\";return fn;})()\n },\n \"content_warning\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aihe (valinnainen)\"])};fn.source=\"Aihe (valinnainen)\";return fn;})(),\n \"default\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tulin juuri saunasta.\"])};fn.source=\"Tulin juuri saunasta.\";return fn;})(),\n \"direct_warning\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä viesti näkyy vain mainituille käyttäjille.\"])};fn.source=\"Tämä viesti näkyy vain mainituille käyttäjille.\";return fn;})(),\n \"posting\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lähetetään\"])};fn.source=\"Lähetetään\";return fn;})(),\n \"scope\": {\n \"direct\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yksityisviesti - Näkyy vain mainituille käyttäjille\"])};fn.source=\"Yksityisviesti - Näkyy vain mainituille käyttäjille\";return fn;})(),\n \"private\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vain-seuraajille - Näkyy vain seuraajillesi\"])};fn.source=\"Vain-seuraajille - Näkyy vain seuraajillesi\";return fn;})(),\n \"public\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Julkinen - Näkyy julkisilla aikajanoilla\"])};fn.source=\"Julkinen - Näkyy julkisilla aikajanoilla\";return fn;})(),\n \"unlisted\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Listaamaton - Ei näy julkisilla aikajanoilla\"])};fn.source=\"Listaamaton - Ei näy julkisilla aikajanoilla\";return fn;})()\n },\n \"direct_warning_to_all\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä viesti näkyy vain viestissä mainituille käyttäjille.\"])};fn.source=\"Tämä viesti näkyy vain viestissä mainituille käyttäjille.\";return fn;})(),\n \"direct_warning_to_first_only\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä viesti näkyy vain viestin alussa mainituille käyttäjille.\"])};fn.source=\"Tämä viesti näkyy vain viestin alussa mainituille käyttäjille.\";return fn;})(),\n \"scope_notice\": {\n \"public\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä viesti näkyy kaikille\"])};fn.source=\"Tämä viesti näkyy kaikille\";return fn;})(),\n \"private\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä viesti näkyy vain sinun seuraajillesi\"])};fn.source=\"Tämä viesti näkyy vain sinun seuraajillesi\";return fn;})(),\n \"unlisted\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä viesti ei näy Julkisella Aikajanalla tai Koko Tunnettu Verkosto -aikajanalla\"])};fn.source=\"Tämä viesti ei näy Julkisella Aikajanalla tai Koko Tunnettu Verkosto -aikajanalla\";return fn;})()\n },\n \"preview\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Esikatselu\"])};fn.source=\"Esikatselu\";return fn;})(),\n \"preview_empty\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tyhjä\"])};fn.source=\"Tyhjä\";return fn;})(),\n \"empty_status_error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tyhjää viestiä ilman tiedostoja ei voi lähettää\"])};fn.source=\"Tyhjää viestiä ilman tiedostoja ei voi lähettää\";return fn;})(),\n \"media_description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tiedoston kuvaus\"])};fn.source=\"Tiedoston kuvaus\";return fn;})(),\n \"media_description_error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tiedostojen päivitys epäonnistui, yritä uudelleen\"])};fn.source=\"Tiedostojen päivitys epäonnistui, yritä uudelleen\";return fn;})()\n },\n \"registration\": {\n \"bio\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kuvaus\"])};fn.source=\"Kuvaus\";return fn;})(),\n \"email\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sähköposti\"])};fn.source=\"Sähköposti\";return fn;})(),\n \"fullname\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Koko nimi\"])};fn.source=\"Koko nimi\";return fn;})(),\n \"password_confirm\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Salasanan vahvistaminen\"])};fn.source=\"Salasanan vahvistaminen\";return fn;})(),\n \"registration\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rekisteröityminen\"])};fn.source=\"Rekisteröityminen\";return fn;})(),\n \"token\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kutsuvaltuus\"])};fn.source=\"Kutsuvaltuus\";return fn;})(),\n \"captcha\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Varmenne\"])};fn.source=\"Varmenne\";return fn;})(),\n \"new_captcha\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Paina kuvaa saadaksesi uuden varmenteen\"])};fn.source=\"Paina kuvaa saadaksesi uuden varmenteen\";return fn;})(),\n \"validations\": {\n \"username_required\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ei voi olla tyhjä\"])};fn.source=\"ei voi olla tyhjä\";return fn;})(),\n \"fullname_required\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ei voi olla tyhjä\"])};fn.source=\"ei voi olla tyhjä\";return fn;})(),\n \"email_required\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ei voi olla tyhjä\"])};fn.source=\"ei voi olla tyhjä\";return fn;})(),\n \"password_required\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ei voi olla tyhjä\"])};fn.source=\"ei voi olla tyhjä\";return fn;})(),\n \"password_confirmation_required\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ei voi olla tyhjä\"])};fn.source=\"ei voi olla tyhjä\";return fn;})(),\n \"password_confirmation_match\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pitää vastata salasanaa\"])};fn.source=\"pitää vastata salasanaa\";return fn;})()\n },\n \"username_placeholder\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"esim. peke\"])};fn.source=\"esim. peke\";return fn;})(),\n \"fullname_placeholder\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"esim. Pekka Postaaja\"])};fn.source=\"esim. Pekka Postaaja\";return fn;})(),\n \"bio_placeholder\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"esim.\\nHei, olen Pekka.\\nOlen esimerkkikäyttäjä tässä verkostossa.\"])};fn.source=\"esim.\\nHei, olen Pekka.\\nOlen esimerkkikäyttäjä tässä verkostossa.\";return fn;})()\n },\n \"settings\": {\n \"attachmentRadius\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Liitteet\"])};fn.source=\"Liitteet\";return fn;})(),\n \"attachments\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Liitteet\"])};fn.source=\"Liitteet\";return fn;})(),\n \"avatar\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profiilikuva\"])};fn.source=\"Profiilikuva\";return fn;})(),\n \"avatarAltRadius\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profiilikuvat (ilmoitukset)\"])};fn.source=\"Profiilikuvat (ilmoitukset)\";return fn;})(),\n \"avatarRadius\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profiilikuvat\"])};fn.source=\"Profiilikuvat\";return fn;})(),\n \"background\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tausta\"])};fn.source=\"Tausta\";return fn;})(),\n \"bio\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kuvaus\"])};fn.source=\"Kuvaus\";return fn;})(),\n \"btnRadius\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Napit\"])};fn.source=\"Napit\";return fn;})(),\n \"cBlue\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sininen (Vastaukset, seuraukset)\"])};fn.source=\"Sininen (Vastaukset, seuraukset)\";return fn;})(),\n \"cGreen\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vihreä (Toistot)\"])};fn.source=\"Vihreä (Toistot)\";return fn;})(),\n \"cOrange\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Oranssi (Tykkäykset)\"])};fn.source=\"Oranssi (Tykkäykset)\";return fn;})(),\n \"cRed\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Punainen (Peruminen)\"])};fn.source=\"Punainen (Peruminen)\";return fn;})(),\n \"change_password\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vaihda salasana\"])};fn.source=\"Vaihda salasana\";return fn;})(),\n \"change_password_error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe vaihtaessa salasanaa.\"])};fn.source=\"Virhe vaihtaessa salasanaa.\";return fn;})(),\n \"changed_password\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Salasana vaihdettu!\"])};fn.source=\"Salasana vaihdettu!\";return fn;})(),\n \"collapse_subject\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Minimoi viestit, joille on asetettu aihe\"])};fn.source=\"Minimoi viestit, joille on asetettu aihe\";return fn;})(),\n \"composing\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Viestien laatiminen\"])};fn.source=\"Viestien laatiminen\";return fn;})(),\n \"confirm_new_password\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vahvista uusi salasana\"])};fn.source=\"Vahvista uusi salasana\";return fn;})(),\n \"current_avatar\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nykyinen profiilikuvasi\"])};fn.source=\"Nykyinen profiilikuvasi\";return fn;})(),\n \"current_password\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nykyinen salasana\"])};fn.source=\"Nykyinen salasana\";return fn;})(),\n \"current_profile_banner\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nykyinen julisteesi\"])};fn.source=\"Nykyinen julisteesi\";return fn;})(),\n \"data_import_export_tab\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tietojen tuonti / vienti\"])};fn.source=\"Tietojen tuonti / vienti\";return fn;})(),\n \"default_vis\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Oletusnäkyvyysrajaus\"])};fn.source=\"Oletusnäkyvyysrajaus\";return fn;})(),\n \"delete_account\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista tili\"])};fn.source=\"Poista tili\";return fn;})(),\n \"delete_account_description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista tietosi ja lukitse tili pysyvästi.\"])};fn.source=\"Poista tietosi ja lukitse tili pysyvästi.\";return fn;})(),\n \"delete_account_error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe poistaessa tiliäsi. Jos virhe jatkuu, ota yhteyttä palvelimesi ylläpitoon.\"])};fn.source=\"Virhe poistaessa tiliäsi. Jos virhe jatkuu, ota yhteyttä palvelimesi ylläpitoon.\";return fn;})(),\n \"delete_account_instructions\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Syötä salasanasi vahvistaaksesi tilin poiston.\"])};fn.source=\"Syötä salasanasi vahvistaaksesi tilin poiston.\";return fn;})(),\n \"emoji_reactions_on_timeline\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä emojireaktiot aikajanalla\"])};fn.source=\"Näytä emojireaktiot aikajanalla\";return fn;})(),\n \"export_theme\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tallenna teema\"])};fn.source=\"Tallenna teema\";return fn;})(),\n \"filtering\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Suodatus\"])};fn.source=\"Suodatus\";return fn;})(),\n \"filtering_explanation\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kaikki viestit, jotka sisältävät näitä sanoja, suodatetaan. Yksi sana per rivi.\"])};fn.source=\"Kaikki viestit, jotka sisältävät näitä sanoja, suodatetaan. Yksi sana per rivi.\";return fn;})(),\n \"follow_export\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seurausten vienti\"])};fn.source=\"Seurausten vienti\";return fn;})(),\n \"follow_export_button\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vie seurauksesi CSV-tiedostoon\"])};fn.source=\"Vie seurauksesi CSV-tiedostoon\";return fn;})(),\n \"follow_export_processing\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käsitellään, sinua pyydetään lataamaan tiedosto hetken päästä\"])};fn.source=\"Käsitellään, sinua pyydetään lataamaan tiedosto hetken päästä\";return fn;})(),\n \"follow_import\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seurausten tuonti\"])};fn.source=\"Seurausten tuonti\";return fn;})(),\n \"follow_import_error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe tuodessa seuraksia\"])};fn.source=\"Virhe tuodessa seuraksia\";return fn;})(),\n \"follows_imported\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seuraukset tuotu! Niiden käsittely vie hetken.\"])};fn.source=\"Seuraukset tuotu! Niiden käsittely vie hetken.\";return fn;})(),\n \"foreground\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etuala\"])};fn.source=\"Etuala\";return fn;})(),\n \"general\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yleinen\"])};fn.source=\"Yleinen\";return fn;})(),\n \"hide_attachments_in_convo\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota liitteet keskusteluissa\"])};fn.source=\"Piilota liitteet keskusteluissa\";return fn;})(),\n \"hide_attachments_in_tl\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota liitteet aikajanalla\"])};fn.source=\"Piilota liitteet aikajanalla\";return fn;})(),\n \"max_thumbnails\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Suurin sallittu määrä liitteitä esikatselussa\"])};fn.source=\"Suurin sallittu määrä liitteitä esikatselussa\";return fn;})(),\n \"hide_isp\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota palvelimenkohtainen ruutu\"])};fn.source=\"Piilota palvelimenkohtainen ruutu\";return fn;})(),\n \"preload_images\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Esilataa kuvat\"])};fn.source=\"Esilataa kuvat\";return fn;})(),\n \"use_one_click_nsfw\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Avaa NSFW-liitteet yhdellä painalluksella\"])};fn.source=\"Avaa NSFW-liitteet yhdellä painalluksella\";return fn;})(),\n \"hide_post_stats\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota viestien statistiikka (esim. tykkäysten määrä)\"])};fn.source=\"Piilota viestien statistiikka (esim. tykkäysten määrä)\";return fn;})(),\n \"hide_user_stats\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota käyttäjien statistiikka (esim. seuraajien määrä)\"])};fn.source=\"Piilota käyttäjien statistiikka (esim. seuraajien määrä)\";return fn;})(),\n \"import_followers_from_a_csv_file\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tuo seuraukset CSV-tiedostosta\"])};fn.source=\"Tuo seuraukset CSV-tiedostosta\";return fn;})(),\n \"import_theme\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tuo tallennettu teema\"])};fn.source=\"Tuo tallennettu teema\";return fn;})(),\n \"inputRadius\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Syöttökentät\"])};fn.source=\"Syöttökentät\";return fn;})(),\n \"checkboxRadius\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valintalaatikot\"])};fn.source=\"Valintalaatikot\";return fn;})(),\n \"instance_default\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, named: _named } = ctx;return _normalize([\"(oletus: \", _interpolate(_named(\"value\")), \")\"])};fn.source=\"(oletus: {value})\";return fn;})(),\n \"instance_default_simple\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"(oletus)\"])};fn.source=\"(oletus)\";return fn;})(),\n \"interface\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttöliittymä\"])};fn.source=\"Käyttöliittymä\";return fn;})(),\n \"interfaceLanguage\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttöliittymän kieli\"])};fn.source=\"Käyttöliittymän kieli\";return fn;})(),\n \"invalid_theme_imported\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tuotu tallennettu teema on epäkelpo, muutoksia ei tehty nykyiseen teemaasi.\"])};fn.source=\"Tuotu tallennettu teema on epäkelpo, muutoksia ei tehty nykyiseen teemaasi.\";return fn;})(),\n \"limited_availability\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ei saatavilla selaimessasi\"])};fn.source=\"Ei saatavilla selaimessasi\";return fn;})(),\n \"links\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Linkit\"])};fn.source=\"Linkit\";return fn;})(),\n \"lock_account_description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vain erikseen hyväksytyt käyttäjät voivat seurata tiliäsi\"])};fn.source=\"Vain erikseen hyväksytyt käyttäjät voivat seurata tiliäsi\";return fn;})(),\n \"loop_video\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Uudelleentoista videot\"])};fn.source=\"Uudelleentoista videot\";return fn;})(),\n \"loop_video_silent_only\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Uudelleentoista ainoastaan äänettömät videot (Video-\\\"giffit\\\")\"])};fn.source=\"Uudelleentoista ainoastaan äänettömät videot (Video-\\\"giffit\\\")\";return fn;})(),\n \"play_videos_in_modal\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Toista videot modaalissa\"])};fn.source=\"Toista videot modaalissa\";return fn;})(),\n \"use_contain_fit\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Älä rajaa liitteitä esikatselussa\"])};fn.source=\"Älä rajaa liitteitä esikatselussa\";return fn;})(),\n \"name\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nimi\"])};fn.source=\"Nimi\";return fn;})(),\n \"name_bio\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nimi ja kuvaus\"])};fn.source=\"Nimi ja kuvaus\";return fn;})(),\n \"new_password\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Uusi salasana\"])};fn.source=\"Uusi salasana\";return fn;})(),\n \"notification_visibility\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ilmoitusten näkyvyys\"])};fn.source=\"Ilmoitusten näkyvyys\";return fn;})(),\n \"notification_visibility_follows\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seuraukset\"])};fn.source=\"Seuraukset\";return fn;})(),\n \"notification_visibility_likes\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tykkäykset\"])};fn.source=\"Tykkäykset\";return fn;})(),\n \"notification_visibility_mentions\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Maininnat\"])};fn.source=\"Maininnat\";return fn;})(),\n \"notification_visibility_repeats\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Toistot\"])};fn.source=\"Toistot\";return fn;})(),\n \"notification_visibility_emoji_reactions\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Reaktiot\"])};fn.source=\"Reaktiot\";return fn;})(),\n \"no_rich_text_description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Älä näytä tekstin muotoilua\"])};fn.source=\"Älä näytä tekstin muotoilua\";return fn;})(),\n \"hide_network_description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Älä näytä seurauksiani tai seuraajiani\"])};fn.source=\"Älä näytä seurauksiani tai seuraajiani\";return fn;})(),\n \"nsfw_clickthrough\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota NSFW liitteet klikkauksen taakse\"])};fn.source=\"Piilota NSFW liitteet klikkauksen taakse\";return fn;})(),\n \"oauth_tokens\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"OAuth-merkit\"])};fn.source=\"OAuth-merkit\";return fn;})(),\n \"token\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Token\"])};fn.source=\"Token\";return fn;})(),\n \"refresh_token\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Päivitä token\"])};fn.source=\"Päivitä token\";return fn;})(),\n \"valid_until\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Voimassa asti\"])};fn.source=\"Voimassa asti\";return fn;})(),\n \"revoke_token\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Peruuta\"])};fn.source=\"Peruuta\";return fn;})(),\n \"panelRadius\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ruudut\"])};fn.source=\"Ruudut\";return fn;})(),\n \"pause_on_unfocused\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pysäytä automaattinen viestien näyttö välilehden ollessa pois fokuksesta\"])};fn.source=\"Pysäytä automaattinen viestien näyttö välilehden ollessa pois fokuksesta\";return fn;})(),\n \"presets\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valmiit teemat\"])};fn.source=\"Valmiit teemat\";return fn;})(),\n \"profile_background\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taustakuva\"])};fn.source=\"Taustakuva\";return fn;})(),\n \"profile_banner\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Juliste\"])};fn.source=\"Juliste\";return fn;})(),\n \"profile_tab\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profiili\"])};fn.source=\"Profiili\";return fn;})(),\n \"radii_help\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aseta reunojen pyöristys (pikseleinä)\"])};fn.source=\"Aseta reunojen pyöristys (pikseleinä)\";return fn;})(),\n \"replies_in_timeline\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Keskustelut aikajanalla\"])};fn.source=\"Keskustelut aikajanalla\";return fn;})(),\n \"reply_visibility_all\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä kaikki vastaukset\"])};fn.source=\"Näytä kaikki vastaukset\";return fn;})(),\n \"reply_visibility_following\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä vain vastaukset minulle tai seuraamilleni käyttäjille\"])};fn.source=\"Näytä vain vastaukset minulle tai seuraamilleni käyttäjille\";return fn;})(),\n \"reply_visibility_self\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä vain vastaukset minulle\"])};fn.source=\"Näytä vain vastaukset minulle\";return fn;})(),\n \"saving_err\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe tallentaessa asetuksia\"])};fn.source=\"Virhe tallentaessa asetuksia\";return fn;})(),\n \"saving_ok\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Asetukset tallennettu\"])};fn.source=\"Asetukset tallennettu\";return fn;})(),\n \"security_tab\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tietoturva\"])};fn.source=\"Tietoturva\";return fn;})(),\n \"scope_copy\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kopioi näkyvyysrajaus vastatessa (Yksityisviestit aina kopioivat)\"])};fn.source=\"Kopioi näkyvyysrajaus vastatessa (Yksityisviestit aina kopioivat)\";return fn;})(),\n \"set_new_avatar\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aseta uusi profiilikuva\"])};fn.source=\"Aseta uusi profiilikuva\";return fn;})(),\n \"set_new_profile_background\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aseta uusi taustakuva\"])};fn.source=\"Aseta uusi taustakuva\";return fn;})(),\n \"set_new_profile_banner\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aseta uusi juliste\"])};fn.source=\"Aseta uusi juliste\";return fn;})(),\n \"settings\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Asetukset\"])};fn.source=\"Asetukset\";return fn;})(),\n \"subject_input_always_show\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä aihe-kenttä\"])};fn.source=\"Näytä aihe-kenttä\";return fn;})(),\n \"subject_line_behavior\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aihe-kentän kopiointi\"])};fn.source=\"Aihe-kentän kopiointi\";return fn;})(),\n \"subject_line_email\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kuten sähköposti: \\\"re: aihe\\\"\"])};fn.source=\"Kuten sähköposti: \\\"re: aihe\\\"\";return fn;})(),\n \"subject_line_mastodon\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kopioi sellaisenaan\"])};fn.source=\"Kopioi sellaisenaan\";return fn;})(),\n \"subject_line_noop\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Älä kopioi\"])};fn.source=\"Älä kopioi\";return fn;})(),\n \"stop_gifs\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Toista giffit vain kohdistaessa\"])};fn.source=\"Toista giffit vain kohdistaessa\";return fn;})(),\n \"streaming\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä uudet viestit automaattisesti ollessasi ruudun huipulla\"])};fn.source=\"Näytä uudet viestit automaattisesti ollessasi ruudun huipulla\";return fn;})(),\n \"text\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Teksti\"])};fn.source=\"Teksti\";return fn;})(),\n \"theme\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Teema\"])};fn.source=\"Teema\";return fn;})(),\n \"theme_help\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käytä heksadesimaalivärejä muokataksesi väriteemaasi.\"])};fn.source=\"Käytä heksadesimaalivärejä muokataksesi väriteemaasi.\";return fn;})(),\n \"theme_help_v2_1\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Voit asettaa tiettyjen osien värin tai läpinäkyvyyden täyttämällä valintalaatikon, käytä \\\"Tyhjennä kaikki\\\"-nappia tyhjentääksesi kaiken.\"])};fn.source=\"Voit asettaa tiettyjen osien värin tai läpinäkyvyyden täyttämällä valintalaatikon, käytä \\\"Tyhjennä kaikki\\\"-nappia tyhjentääksesi kaiken.\";return fn;})(),\n \"theme_help_v2_2\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ikonit kenttien alla ovat kontrasti-indikaattoreita, lisätietoa kohdistamalla. Käyttäessä läpinäkyvyyttä ne näyttävät pahimman skenaarion.\"])};fn.source=\"Ikonit kenttien alla ovat kontrasti-indikaattoreita, lisätietoa kohdistamalla. Käyttäessä läpinäkyvyyttä ne näyttävät pahimman skenaarion.\";return fn;})(),\n \"tooltipRadius\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ohje- tai huomioviestit\"])};fn.source=\"Ohje- tai huomioviestit\";return fn;})(),\n \"user_settings\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttäjän asetukset\"])};fn.source=\"Käyttäjän asetukset\";return fn;})(),\n \"values\": {\n \"false\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"pois päältä\"])};fn.source=\"pois päältä\";return fn;})(),\n \"true\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"päällä\"])};fn.source=\"päällä\";return fn;})()\n },\n \"hide_follows_description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Älä näytä ketä seuraan\"])};fn.source=\"Älä näytä ketä seuraan\";return fn;})(),\n \"show_moderator_badge\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä Moderaattori-merkki profiilissani\"])};fn.source=\"Näytä Moderaattori-merkki profiilissani\";return fn;})(),\n \"useStreamingApi\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vastaanota viestiejä ja ilmoituksia reaaliajassa\"])};fn.source=\"Vastaanota viestiejä ja ilmoituksia reaaliajassa\";return fn;})(),\n \"notification_setting_filters\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Suodattimet\"])};fn.source=\"Suodattimet\";return fn;})(),\n \"notification_setting_privacy_option\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota lähettäjä ja sisältö sovelluksen ulkopuolisista ilmoituksista\"])};fn.source=\"Piilota lähettäjä ja sisältö sovelluksen ulkopuolisista ilmoituksista\";return fn;})(),\n \"enable_web_push_notifications\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ota käyttöön sovelluksen ulkopuoliset ilmoitukset\"])};fn.source=\"Ota käyttöön sovelluksen ulkopuoliset ilmoitukset\";return fn;})(),\n \"app_name\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sovelluksen nimi\"])};fn.source=\"Sovelluksen nimi\";return fn;})(),\n \"security\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Turvallisuus\"])};fn.source=\"Turvallisuus\";return fn;})(),\n \"mfa\": {\n \"otp\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"OTP\"])};fn.source=\"OTP\";return fn;})(),\n \"setup_otp\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"OTP-asetukset\"])};fn.source=\"OTP-asetukset\";return fn;})(),\n \"wait_pre_setup_otp\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"esiasetetaan OTP:ta\"])};fn.source=\"esiasetetaan OTP:ta\";return fn;})(),\n \"confirm_and_enable\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hyväksy ja käytä OTP\"])};fn.source=\"Hyväksy ja käytä OTP\";return fn;})(),\n \"title\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Monivaihetodennus\"])};fn.source=\"Monivaihetodennus\";return fn;})(),\n \"generate_new_recovery_codes\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Luo uudet palautuskoodit\"])};fn.source=\"Luo uudet palautuskoodit\";return fn;})(),\n \"authentication_methods\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Todennus\"])};fn.source=\"Todennus\";return fn;})(),\n \"warning_of_generate_new_codes\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Luodessasi uudet palautuskoodit, vanhat koodisi lakkaavat toimimasta.\"])};fn.source=\"Luodessasi uudet palautuskoodit, vanhat koodisi lakkaavat toimimasta.\";return fn;})(),\n \"recovery_codes\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Palautuskoodit.\"])};fn.source=\"Palautuskoodit.\";return fn;})(),\n \"waiting_a_recovery_codes\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Odotetaan palautuskoodeja…\"])};fn.source=\"Odotetaan palautuskoodeja…\";return fn;})(),\n \"recovery_codes_warning\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kirjoita koodit ylös tai tallenna ne turvallisesti, muuten et näe niitä uudestaan. Jos et voi käyttää monivaihetodennusta ja sinulla ei ole palautuskoodeja, et voi enää kirjautua sisään tilillesi.\"])};fn.source=\"Kirjoita koodit ylös tai tallenna ne turvallisesti, muuten et näe niitä uudestaan. Jos et voi käyttää monivaihetodennusta ja sinulla ei ole palautuskoodeja, et voi enää kirjautua sisään tilillesi.\";return fn;})(),\n \"scan\": {\n \"title\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Skannaa\"])};fn.source=\"Skannaa\";return fn;})(),\n \"secret_code\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Avain\"])};fn.source=\"Avain\";return fn;})(),\n \"desc\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käytä monivaihetodennus-sovellusta skannakksesi tämän QR-kooding, tai syötä avain:\"])};fn.source=\"Käytä monivaihetodennus-sovellusta skannakksesi tämän QR-kooding, tai syötä avain:\";return fn;})()\n },\n \"verify\": {\n \"desc\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kytkeäksesi päälle monivaihetodennuksen, syötä koodi monivaihetodennussovellksesta:\"])};fn.source=\"Kytkeäksesi päälle monivaihetodennuksen, syötä koodi monivaihetodennussovellksesta:\";return fn;})()\n }\n },\n \"allow_following_move\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Salli automaattinen seuraaminen kun käyttäjä siirtää tilinsä\"])};fn.source=\"Salli automaattinen seuraaminen kun käyttäjä siirtää tilinsä\";return fn;})(),\n \"block_export\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Estojen vienti\"])};fn.source=\"Estojen vienti\";return fn;})(),\n \"block_export_button\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vie estosi CSV-tiedostoon\"])};fn.source=\"Vie estosi CSV-tiedostoon\";return fn;})(),\n \"block_import\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Estojen tuonti\"])};fn.source=\"Estojen tuonti\";return fn;})(),\n \"block_import_error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe tuodessa estoja\"])};fn.source=\"Virhe tuodessa estoja\";return fn;})(),\n \"blocks_imported\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Estot tuotu! Käsittely vie hetken.\"])};fn.source=\"Estot tuotu! Käsittely vie hetken.\";return fn;})(),\n \"blocks_tab\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Estot\"])};fn.source=\"Estot\";return fn;})(),\n \"change_email\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vaihda sähköpostiosoite\"])};fn.source=\"Vaihda sähköpostiosoite\";return fn;})(),\n \"change_email_error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe vaihtaessa sähköpostiosoitetta.\"])};fn.source=\"Virhe vaihtaessa sähköpostiosoitetta.\";return fn;})(),\n \"changed_email\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sähköpostiosoite vaihdettu!\"])};fn.source=\"Sähköpostiosoite vaihdettu!\";return fn;})(),\n \"domain_mutes\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sivut\"])};fn.source=\"Sivut\";return fn;})(),\n \"avatar_size_instruction\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Suositeltu vähimmäiskoko profiilikuville on 150x150 pikseliä.\"])};fn.source=\"Suositeltu vähimmäiskoko profiilikuville on 150x150 pikseliä.\";return fn;})(),\n \"accent\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Korostus\"])};fn.source=\"Korostus\";return fn;})(),\n \"hide_muted_posts\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota mykistettyjen käyttäjien viestit\"])};fn.source=\"Piilota mykistettyjen käyttäjien viestit\";return fn;})(),\n \"hide_filtered_statuses\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota mykistetyt viestit\"])};fn.source=\"Piilota mykistetyt viestit\";return fn;})(),\n \"import_blocks_from_a_csv_file\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tuo estot CSV-tiedostosta\"])};fn.source=\"Tuo estot CSV-tiedostosta\";return fn;})(),\n \"no_blocks\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ei estoja\"])};fn.source=\"Ei estoja\";return fn;})(),\n \"no_mutes\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ei mykistyksiä\"])};fn.source=\"Ei mykistyksiä\";return fn;})(),\n \"notification_visibility_moves\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttäjien siirtymiset\"])};fn.source=\"Käyttäjien siirtymiset\";return fn;})(),\n \"hide_followers_description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Älä näytä ketkä seuraavat minua\"])};fn.source=\"Älä näytä ketkä seuraavat minua\";return fn;})(),\n \"hide_follows_count_description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Älä näytä seurauksien määrää\"])};fn.source=\"Älä näytä seurauksien määrää\";return fn;})(),\n \"hide_followers_count_description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Älä näytä seuraajien määrää\"])};fn.source=\"Älä näytä seuraajien määrää\";return fn;})(),\n \"show_admin_badge\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä Ylläpitäjä-merkki proofilissani\"])};fn.source=\"Näytä Ylläpitäjä-merkki proofilissani\";return fn;})(),\n \"autohide_floating_post_button\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota Uusi Viesti -nappi automaattisesti (mobiili)\"])};fn.source=\"Piilota Uusi Viesti -nappi automaattisesti (mobiili)\";return fn;})(),\n \"search_user_to_block\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hae estettäviä käyttäjiä\"])};fn.source=\"Hae estettäviä käyttäjiä\";return fn;})(),\n \"search_user_to_mute\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hae mykistettäviä käyttäjiä\"])};fn.source=\"Hae mykistettäviä käyttäjiä\";return fn;})(),\n \"minimal_scopes_mode\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yksinkertaista näkyvyydenrajauksen vaihtoehdot\"])};fn.source=\"Yksinkertaista näkyvyydenrajauksen vaihtoehdot\";return fn;})(),\n \"post_status_content_type\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Uuden viestin sisällön muoto\"])};fn.source=\"Uuden viestin sisällön muoto\";return fn;})(),\n \"user_mutes\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttäjät\"])};fn.source=\"Käyttäjät\";return fn;})(),\n \"useStreamingApiWarning\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"(Kokeellinen)\"])};fn.source=\"(Kokeellinen)\";return fn;})(),\n \"type_domains_to_mute\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etsi mykistettäviä sivustoja\"])};fn.source=\"Etsi mykistettäviä sivustoja\";return fn;})(),\n \"upload_a_photo\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lataa kuva\"])};fn.source=\"Lataa kuva\";return fn;})(),\n \"fun\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hupi\"])};fn.source=\"Hupi\";return fn;})(),\n \"greentext\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Meeminuolet\"])};fn.source=\"Meeminuolet\";return fn;})(),\n \"notifications\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ilmoitukset\"])};fn.source=\"Ilmoitukset\";return fn;})(),\n \"style\": {\n \"switcher\": {\n \"save_load_hint\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"\\\"Säilytä\\\" asetukset säilyttävät tällä hetkellä asetetut asetukset valittaessa tai ladatessa teemaa, se myös tallentaa kyseiset asetukset viedessä teemaa. Kun kaikki laatikot ovat tyhjänä, viety teema tallentaa kaiken.\"])};fn.source=\"\\\"Säilytä\\\" asetukset säilyttävät tällä hetkellä asetetut asetukset valittaessa tai ladatessa teemaa, se myös tallentaa kyseiset asetukset viedessä teemaa. Kun kaikki laatikot ovat tyhjänä, viety teema tallentaa kaiken.\";return fn;})(),\n \"help\": {\n \"older_version_imported\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tuomasi tiedosto on luotu vanhemmalla versiolla.\"])};fn.source=\"Tuomasi tiedosto on luotu vanhemmalla versiolla.\";return fn;})(),\n \"fe_upgraded\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"PleromaFE:n teemaus päivitetty versiopäivityksen yhteydessä.\"])};fn.source=\"PleromaFE:n teemaus päivitetty versiopäivityksen yhteydessä.\";return fn;})(),\n \"migration_snapshot_ok\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Varmuuden vuoksi teeman kaappaus ladattu. Voit koittaa ladata teeman sisällön.\"])};fn.source=\"Varmuuden vuoksi teeman kaappaus ladattu. Voit koittaa ladata teeman sisällön.\";return fn;})(),\n \"migration_napshot_gone\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jostain syystä teeman kaappaus puuttuu, kaikki asiat eivät välttämättä näytä oikealta.\"])};fn.source=\"Jostain syystä teeman kaappaus puuttuu, kaikki asiat eivät välttämättä näytä oikealta.\";return fn;})(),\n \"snapshot_source_mismatch\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Versiot eivät täsmää: todennäköisesti versio vaihdettu vanhempaan ja päivitetty uudestaan, jos vaihdoit teemaa vanhalla versiolla, sinun tulisi käyttää vanhaa versiota, muutoin uutta.\"])};fn.source=\"Versiot eivät täsmää: todennäköisesti versio vaihdettu vanhempaan ja päivitetty uudestaan, jos vaihdoit teemaa vanhalla versiolla, sinun tulisi käyttää vanhaa versiota, muutoin uutta.\";return fn;})(),\n \"upgraded_from_v2\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"PleromaFE on päivitetty, teemasi saattaa näyttää erilaiselta kuin muistat.\"])};fn.source=\"PleromaFE on päivitetty, teemasi saattaa näyttää erilaiselta kuin muistat.\";return fn;})(),\n \"v2_imported\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tuomasi tiedosto on luotu vanhemmalla versiolla. Yhteensopivuus ei välttämättä ole täydellinen.\"])};fn.source=\"Tuomasi tiedosto on luotu vanhemmalla versiolla. Yhteensopivuus ei välttämättä ole täydellinen.\";return fn;})(),\n \"future_version_imported\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tuomasi tiedosto on luotu uudemmalla versiolla.\"])};fn.source=\"Tuomasi tiedosto on luotu uudemmalla versiolla.\";return fn;})(),\n \"snapshot_present\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Teeman kaappaus ladattu, joten kaikki arvot ovat ylikirjoitettu. Voit sen sijaan ladata teeman sisällön.\"])};fn.source=\"Teeman kaappaus ladattu, joten kaikki arvot ovat ylikirjoitettu. Voit sen sijaan ladata teeman sisällön.\";return fn;})(),\n \"snapshot_missing\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Teeman kaappausta ei tiedostossa, joten se voi näyttää erilaiselta kuin suunniteltu.\"])};fn.source=\"Teeman kaappausta ei tiedostossa, joten se voi näyttää erilaiselta kuin suunniteltu.\";return fn;})(),\n \"fe_downgraded\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"PleromaFE:n versio vaihtunut vanhempaan.\"])};fn.source=\"PleromaFE:n versio vaihtunut vanhempaan.\";return fn;})()\n },\n \"keep_color\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Säilytä värit\"])};fn.source=\"Säilytä värit\";return fn;})(),\n \"keep_shadows\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Säilytä varjot\"])};fn.source=\"Säilytä varjot\";return fn;})(),\n \"keep_opacity\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Säilytä läpinäkyvyys\"])};fn.source=\"Säilytä läpinäkyvyys\";return fn;})(),\n \"keep_roundness\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Säilytä pyöristys\"])};fn.source=\"Säilytä pyöristys\";return fn;})(),\n \"keep_fonts\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Säilytä fontit\"])};fn.source=\"Säilytä fontit\";return fn;})(),\n \"reset\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Palauta\"])};fn.source=\"Palauta\";return fn;})(),\n \"clear_all\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tyhjennä kaikki\"])};fn.source=\"Tyhjennä kaikki\";return fn;})(),\n \"clear_opacity\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tyhjennä läpinäkyvyys\"])};fn.source=\"Tyhjennä läpinäkyvyys\";return fn;})(),\n \"load_theme\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lataa teema\"])};fn.source=\"Lataa teema\";return fn;})(),\n \"keep_as_is\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pidä sellaisenaan\"])};fn.source=\"Pidä sellaisenaan\";return fn;})(),\n \"use_snapshot\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vanha\"])};fn.source=\"Vanha\";return fn;})(),\n \"use_source\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Uusi\"])};fn.source=\"Uusi\";return fn;})()\n },\n \"advanced_colors\": {\n \"selectedPost\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valittu viesti\"])};fn.source=\"Valittu viesti\";return fn;})(),\n \"_tab_label\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edistynyt\"])};fn.source=\"Edistynyt\";return fn;})(),\n \"alert\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Varoituksen tausta\"])};fn.source=\"Varoituksen tausta\";return fn;})(),\n \"alert_error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe\"])};fn.source=\"Virhe\";return fn;})(),\n \"alert_warning\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Varoitus\"])};fn.source=\"Varoitus\";return fn;})(),\n \"alert_neutral\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Neutraali\"])};fn.source=\"Neutraali\";return fn;})(),\n \"post\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Viestit/Käyttäjien kuvaukset\"])};fn.source=\"Viestit/Käyttäjien kuvaukset\";return fn;})(),\n \"badge\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Merkin tausta\"])};fn.source=\"Merkin tausta\";return fn;})(),\n \"badge_notification\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ilmoitus\"])};fn.source=\"Ilmoitus\";return fn;})(),\n \"panel_header\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ruudun otsikko\"])};fn.source=\"Ruudun otsikko\";return fn;})(),\n \"top_bar\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yläpalkki\"])};fn.source=\"Yläpalkki\";return fn;})(),\n \"borders\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Reunat\"])};fn.source=\"Reunat\";return fn;})(),\n \"buttons\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Napit\"])};fn.source=\"Napit\";return fn;})(),\n \"inputs\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Syöttökentät\"])};fn.source=\"Syöttökentät\";return fn;})(),\n \"faint_text\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Häivytetty teksti\"])};fn.source=\"Häivytetty teksti\";return fn;})(),\n \"underlay\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Taustapeite\"])};fn.source=\"Taustapeite\";return fn;})(),\n \"poll\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Äänestyksen kuvaaja\"])};fn.source=\"Äänestyksen kuvaaja\";return fn;})(),\n \"icons\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ikonit\"])};fn.source=\"Ikonit\";return fn;})(),\n \"highlight\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Korostetut elementit\"])};fn.source=\"Korostetut elementit\";return fn;})(),\n \"pressed\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Painettu\"])};fn.source=\"Painettu\";return fn;})(),\n \"selectedMenu\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valikon valinta\"])};fn.source=\"Valikon valinta\";return fn;})(),\n \"disabled\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pois käytöstä\"])};fn.source=\"Pois käytöstä\";return fn;})(),\n \"toggled\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kytketty\"])};fn.source=\"Kytketty\";return fn;})(),\n \"tabs\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Välilehdet\"])};fn.source=\"Välilehdet\";return fn;})(),\n \"popover\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Työkaluvinkit, valikot, ponnahdusviestit\"])};fn.source=\"Työkaluvinkit, valikot, ponnahdusviestit\";return fn;})()\n },\n \"common\": {\n \"color\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Väri\"])};fn.source=\"Väri\";return fn;})(),\n \"opacity\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Läpinäkyvyys\"])};fn.source=\"Läpinäkyvyys\";return fn;})(),\n \"contrast\": {\n \"level\": {\n \"aaa\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"saavuttaa AAA-tason (suositeltu)\"])};fn.source=\"saavuttaa AAA-tason (suositeltu)\";return fn;})(),\n \"aa\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"saavuttaa AA-tason (minimi)\"])};fn.source=\"saavuttaa AA-tason (minimi)\";return fn;})(),\n \"bad\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"ei saavuta mitään helppokäyttöisyyssuosituksia\"])};fn.source=\"ei saavuta mitään helppokäyttöisyyssuosituksia\";return fn;})()\n },\n \"hint\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, named: _named } = ctx;return _normalize([\"Kontrastisuhde on \", _interpolate(_named(\"ratio\")), \", se \", _interpolate(_named(\"level\")), \" \", _interpolate(_named(\"context\"))])};fn.source=\"Kontrastisuhde on {ratio}, se {level} {context}\";return fn;})(),\n \"context\": {\n \"18pt\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"suurella (18pt+) tekstillä\"])};fn.source=\"suurella (18pt+) tekstillä\";return fn;})(),\n \"text\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"tekstillä\"])};fn.source=\"tekstillä\";return fn;})()\n }\n }\n },\n \"common_colors\": {\n \"_tab_label\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yleinen\"])};fn.source=\"Yleinen\";return fn;})(),\n \"main\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yleiset värit\"])};fn.source=\"Yleiset värit\";return fn;})(),\n \"foreground_hint\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Löydät \\\"Edistynyt\\\"-välilehdeltä tarkemmat asetukset\"])};fn.source=\"Löydät \\\"Edistynyt\\\"-välilehdeltä tarkemmat asetukset\";return fn;})(),\n \"rgbo\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ikonit, korostukset, merkit\"])};fn.source=\"Ikonit, korostukset, merkit\";return fn;})()\n },\n \"shadows\": {\n \"filter_hint\": {\n \"always_drop_shadow\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Varoitus, tämä varjo käyttää aina \", _interpolate(_list(0)), \" kun selain tukee sitä.\"])};fn.source=\"Varoitus, tämä varjo käyttää aina {0} kun selain tukee sitä.\";return fn;})(),\n \"avatar_inset\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Huom. sisennettyjen ja ei-sisennettyjen varjojen yhdistelmät saattavat luoda ei-odotettuja lopputuloksia läpinäkyvillä profiilikuvilla.\"])};fn.source=\"Huom. sisennettyjen ja ei-sisennettyjen varjojen yhdistelmät saattavat luoda ei-odotettuja lopputuloksia läpinäkyvillä profiilikuvilla.\";return fn;})(),\n \"drop_shadow_syntax\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" ei tue \", _interpolate(_list(1)), \" parametria ja \", _interpolate(_list(2)), \" avainsanaa.\"])};fn.source=\"{0} ei tue {1} parametria ja {2} avainsanaa.\";return fn;})(),\n \"spread_zero\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Varjot joiden levitys > 0 näyttävät samalta kuin se olisi nolla\"])};fn.source=\"Varjot joiden levitys > 0 näyttävät samalta kuin se olisi nolla\";return fn;})(),\n \"inset_classic\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Sisennetyt varjot käyttävät \", _interpolate(_list(0))])};fn.source=\"Sisennetyt varjot käyttävät {0}\";return fn;})()\n },\n \"components\": {\n \"buttonPressedHover\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nappi (painettu ja kohdistettu)\"])};fn.source=\"Nappi (painettu ja kohdistettu)\";return fn;})(),\n \"panel\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ruutu\"])};fn.source=\"Ruutu\";return fn;})(),\n \"panelHeader\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ruudun otsikko\"])};fn.source=\"Ruudun otsikko\";return fn;})(),\n \"topBar\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yläpalkki\"])};fn.source=\"Yläpalkki\";return fn;})(),\n \"avatar\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profiilikuva (profiilinäkymässä)\"])};fn.source=\"Profiilikuva (profiilinäkymässä)\";return fn;})(),\n \"avatarStatus\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profiilikuva (viestin yhtyedessä)\"])};fn.source=\"Profiilikuva (viestin yhtyedessä)\";return fn;})(),\n \"popup\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ponnahdusviestit ja työkaluvinkit\"])};fn.source=\"Ponnahdusviestit ja työkaluvinkit\";return fn;})(),\n \"button\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nappi\"])};fn.source=\"Nappi\";return fn;})(),\n \"buttonHover\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nappi (kohdistus)\"])};fn.source=\"Nappi (kohdistus)\";return fn;})(),\n \"buttonPressed\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nappi (painettu)\"])};fn.source=\"Nappi (painettu)\";return fn;})(),\n \"input\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Syöttökenttä\"])};fn.source=\"Syöttökenttä\";return fn;})()\n },\n \"hintV3\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Voit käyttää \", _interpolate(_list(0)), \" merkintää varjoille käyttääksesi väriä toisesta asetuksesta.\"])};fn.source=\"Voit käyttää {0} merkintää varjoille käyttääksesi väriä toisesta asetuksesta.\";return fn;})(),\n \"_tab_label\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valo ja varjostus\"])};fn.source=\"Valo ja varjostus\";return fn;})(),\n \"component\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Komponentti\"])};fn.source=\"Komponentti\";return fn;})(),\n \"override\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ylikirjoita\"])};fn.source=\"Ylikirjoita\";return fn;})(),\n \"shadow_id\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, named: _named } = ctx;return _normalize([\"Varjo #\", _interpolate(_named(\"value\"))])};fn.source=\"Varjo #{value}\";return fn;})(),\n \"blur\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sumennus\"])};fn.source=\"Sumennus\";return fn;})(),\n \"spread\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Levitys\"])};fn.source=\"Levitys\";return fn;})(),\n \"inset\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sisennys\"])};fn.source=\"Sisennys\";return fn;})()\n },\n \"fonts\": {\n \"help\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valitse fontti käyttöliittymälle. \\\"Oma\\\"-vaihtohdolle on syötettävä fontin nimi tarkalleen samana kuin se on järjestelmässäsi.\"])};fn.source=\"Valitse fontti käyttöliittymälle. \\\"Oma\\\"-vaihtohdolle on syötettävä fontin nimi tarkalleen samana kuin se on järjestelmässäsi.\";return fn;})(),\n \"_tab_label\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Fontit\"])};fn.source=\"Fontit\";return fn;})(),\n \"components\": {\n \"interface\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttöliittymä\"])};fn.source=\"Käyttöliittymä\";return fn;})(),\n \"input\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Syöttökentät\"])};fn.source=\"Syöttökentät\";return fn;})(),\n \"post\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Viestin teksti\"])};fn.source=\"Viestin teksti\";return fn;})(),\n \"postCode\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tasavälistetty teksti viestissä\"])};fn.source=\"Tasavälistetty teksti viestissä\";return fn;})()\n },\n \"family\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Fontin nimi\"])};fn.source=\"Fontin nimi\";return fn;})(),\n \"size\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Koko (pikseleissä)\"])};fn.source=\"Koko (pikseleissä)\";return fn;})(),\n \"weight\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Painostus (paksuus)\"])};fn.source=\"Painostus (paksuus)\";return fn;})(),\n \"custom\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Oma\"])};fn.source=\"Oma\";return fn;})()\n },\n \"preview\": {\n \"input\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tulin juuri saunasta.\"])};fn.source=\"Tulin juuri saunasta.\";return fn;})(),\n \"header\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Esikatselu\"])};fn.source=\"Esikatselu\";return fn;})(),\n \"content\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sisältö\"])};fn.source=\"Sisältö\";return fn;})(),\n \"error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Esimerkkivirhe\"])};fn.source=\"Esimerkkivirhe\";return fn;})(),\n \"button\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nappi\"])};fn.source=\"Nappi\";return fn;})(),\n \"text\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Vähän lisää \", _interpolate(_list(0)), \" ja \", _interpolate(_list(1))])};fn.source=\"Vähän lisää {0} ja {1}\";return fn;})(),\n \"mono\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"sisältöä\"])};fn.source=\"sisältöä\";return fn;})(),\n \"faint_link\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"manuaali\"])};fn.source=\"manuaali\";return fn;})(),\n \"fine_print\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Lue meidän \", _interpolate(_list(0)), \" vaikka huvin vuoksi!\"])};fn.source=\"Lue meidän {0} vaikka huvin vuoksi!\";return fn;})(),\n \"header_faint\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä on OK\"])};fn.source=\"Tämä on OK\";return fn;})(),\n \"checkbox\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Olen silmäillyt käyttöehdot\"])};fn.source=\"Olen silmäillyt käyttöehdot\";return fn;})(),\n \"link\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"kiva linkki\"])};fn.source=\"kiva linkki\";return fn;})()\n },\n \"radii\": {\n \"_tab_label\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pyöristys\"])};fn.source=\"Pyöristys\";return fn;})()\n }\n },\n \"enter_current_password_to_confirm\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Syötä nykyinen salasanasi todentaaksesi henkilöllisyytesi\"])};fn.source=\"Syötä nykyinen salasanasi todentaaksesi henkilöllisyytesi\";return fn;})(),\n \"discoverable\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Salli tilisi näkyvyys hakukoneisiin ja muihin palveluihin\"])};fn.source=\"Salli tilisi näkyvyys hakukoneisiin ja muihin palveluihin\";return fn;})(),\n \"pad_emoji\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Välistä emojit välilyönneillä lisätessäsi niitä valitsimesta\"])};fn.source=\"Välistä emojit välilyönneillä lisätessäsi niitä valitsimesta\";return fn;})(),\n \"mutes_tab\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mykistykset\"])};fn.source=\"Mykistykset\";return fn;})(),\n \"new_email\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Uusi sähköpostiosoite\"])};fn.source=\"Uusi sähköpostiosoite\";return fn;})(),\n \"notification_setting_privacy\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yksityisyys\"])};fn.source=\"Yksityisyys\";return fn;})(),\n \"notification_mutes\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Jos et halua ilmoituksia joltain käyttäjältä, käytä mykistystä.\"])};fn.source=\"Jos et halua ilmoituksia joltain käyttäjältä, käytä mykistystä.\";return fn;})(),\n \"notification_blocks\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Estäminen pysäyttää kaikki ilmoitukset käyttäjältä ja poistaa seurauksen.\"])};fn.source=\"Estäminen pysäyttää kaikki ilmoitukset käyttäjältä ja poistaa seurauksen.\";return fn;})(),\n \"version\": {\n \"title\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Versio\"])};fn.source=\"Versio\";return fn;})(),\n \"backend_version\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Palvelimen versio\"])};fn.source=\"Palvelimen versio\";return fn;})(),\n \"frontend_version\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttöliittymän versio\"])};fn.source=\"Käyttöliittymän versio\";return fn;})()\n },\n \"reset_profile_background\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nollaa taustakuva\"])};fn.source=\"Nollaa taustakuva\";return fn;})(),\n \"reset_background_confirm\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Haluatko todella nollata taustakuvan?\"])};fn.source=\"Haluatko todella nollata taustakuvan?\";return fn;})(),\n \"mutes_and_blocks\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mykistykset ja Estot\"])};fn.source=\"Mykistykset ja Estot\";return fn;})(),\n \"bot\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä on bottitili\"])};fn.source=\"Tämä on bottitili\";return fn;})(),\n \"profile_fields\": {\n \"label\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Profiilin metatiedot\"])};fn.source=\"Profiilin metatiedot\";return fn;})(),\n \"add_field\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lisää kenttä\"])};fn.source=\"Lisää kenttä\";return fn;})(),\n \"name\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nimi\"])};fn.source=\"Nimi\";return fn;})(),\n \"value\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sisältö\"])};fn.source=\"Sisältö\";return fn;})()\n },\n \"reset_avatar\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nollaa profiilikuva\"])};fn.source=\"Nollaa profiilikuva\";return fn;})(),\n \"reset_profile_banner\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Nollaa profiilin tausta\"])};fn.source=\"Nollaa profiilin tausta\";return fn;})(),\n \"reset_avatar_confirm\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Haluatko todella nollata profiilikuvan?\"])};fn.source=\"Haluatko todella nollata profiilikuvan?\";return fn;})(),\n \"reset_banner_confirm\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Haluatko todella nollata profiilin taustan?\"])};fn.source=\"Haluatko todella nollata profiilin taustan?\";return fn;})()\n },\n \"time\": {\n \"day\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" päivä\"])};fn.source=\"{0} päivä\";return fn;})(),\n \"days\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" päivää\"])};fn.source=\"{0} päivää\";return fn;})(),\n \"day_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"pv\"])};fn.source=\"{0}pv\";return fn;})(),\n \"days_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"pv\"])};fn.source=\"{0}pv\";return fn;})(),\n \"hour\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" tunti\"])};fn.source=\"{0} tunti\";return fn;})(),\n \"hours\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" tuntia\"])};fn.source=\"{0} tuntia\";return fn;})(),\n \"hour_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"t\"])};fn.source=\"{0}t\";return fn;})(),\n \"hours_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"t\"])};fn.source=\"{0}t\";return fn;})(),\n \"in_future\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" tulevaisuudessa\"])};fn.source=\"{0} tulevaisuudessa\";return fn;})(),\n \"in_past\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" sitten\"])};fn.source=\"{0} sitten\";return fn;})(),\n \"minute\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" minuutti\"])};fn.source=\"{0} minuutti\";return fn;})(),\n \"minutes\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" minuuttia\"])};fn.source=\"{0} minuuttia\";return fn;})(),\n \"minute_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"min\"])};fn.source=\"{0}min\";return fn;})(),\n \"minutes_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"min\"])};fn.source=\"{0}min\";return fn;})(),\n \"month\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" kuukausi\"])};fn.source=\"{0} kuukausi\";return fn;})(),\n \"months\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" kuukautta\"])};fn.source=\"{0} kuukautta\";return fn;})(),\n \"month_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"kk\"])};fn.source=\"{0}kk\";return fn;})(),\n \"months_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"kk\"])};fn.source=\"{0}kk\";return fn;})(),\n \"now\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"juuri nyt\"])};fn.source=\"juuri nyt\";return fn;})(),\n \"now_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"nyt\"])};fn.source=\"nyt\";return fn;})(),\n \"second\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" sekunti\"])};fn.source=\"{0} sekunti\";return fn;})(),\n \"seconds\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" sekuntia\"])};fn.source=\"{0} sekuntia\";return fn;})(),\n \"second_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"s\"])};fn.source=\"{0}s\";return fn;})(),\n \"seconds_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"s\"])};fn.source=\"{0}s\";return fn;})(),\n \"week\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" viikko\"])};fn.source=\"{0} viikko\";return fn;})(),\n \"weeks\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" viikkoa\"])};fn.source=\"{0} viikkoa\";return fn;})(),\n \"week_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"vk\"])};fn.source=\"{0}vk\";return fn;})(),\n \"weeks_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"vk\"])};fn.source=\"{0}vk\";return fn;})(),\n \"year\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" vuosi\"])};fn.source=\"{0} vuosi\";return fn;})(),\n \"years\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" vuotta\"])};fn.source=\"{0} vuotta\";return fn;})(),\n \"year_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"v\"])};fn.source=\"{0}v\";return fn;})(),\n \"years_short\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \"v\"])};fn.source=\"{0}v\";return fn;})()\n },\n \"timeline\": {\n \"collapse\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sulje\"])};fn.source=\"Sulje\";return fn;})(),\n \"conversation\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Keskustelu\"])};fn.source=\"Keskustelu\";return fn;})(),\n \"error_fetching\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe ladatessa viestejä\"])};fn.source=\"Virhe ladatessa viestejä\";return fn;})(),\n \"load_older\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lataa vanhempia viestejä\"])};fn.source=\"Lataa vanhempia viestejä\";return fn;})(),\n \"no_retweet_hint\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Viesti ei ole julkinen, eikä sitä voi toistaa\"])};fn.source=\"Viesti ei ole julkinen, eikä sitä voi toistaa\";return fn;})(),\n \"repeated\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"toisti\"])};fn.source=\"toisti\";return fn;})(),\n \"show_new\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä uudet\"])};fn.source=\"Näytä uudet\";return fn;})(),\n \"up_to_date\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ajantasalla\"])};fn.source=\"Ajantasalla\";return fn;})(),\n \"no_more_statuses\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ei enempää viestejä\"])};fn.source=\"Ei enempää viestejä\";return fn;})(),\n \"no_statuses\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ei viestejä\"])};fn.source=\"Ei viestejä\";return fn;})(),\n \"reload\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Päivitä\"])};fn.source=\"Päivitä\";return fn;})()\n },\n \"status\": {\n \"favorites\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tykkäykset\"])};fn.source=\"Tykkäykset\";return fn;})(),\n \"repeats\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Toistot\"])};fn.source=\"Toistot\";return fn;})(),\n \"delete\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista\"])};fn.source=\"Poista\";return fn;})(),\n \"pin\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kiinnitä profiiliisi\"])};fn.source=\"Kiinnitä profiiliisi\";return fn;})(),\n \"unpin\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista kiinnitys\"])};fn.source=\"Poista kiinnitys\";return fn;})(),\n \"pinned\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kiinnitetty\"])};fn.source=\"Kiinnitetty\";return fn;})(),\n \"delete_confirm\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Haluatko varmasti postaa viestin?\"])};fn.source=\"Haluatko varmasti postaa viestin?\";return fn;})(),\n \"reply_to\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vastaus\"])};fn.source=\"Vastaus\";return fn;})(),\n \"replies_list\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vastaukset:\"])};fn.source=\"Vastaukset:\";return fn;})(),\n \"mute_conversation\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mykistä keskustelu\"])};fn.source=\"Mykistä keskustelu\";return fn;})(),\n \"unmute_conversation\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista mykistys\"])};fn.source=\"Poista mykistys\";return fn;})(),\n \"status_unavailable\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Viesti ei saatavissa\"])};fn.source=\"Viesti ei saatavissa\";return fn;})(),\n \"copy_link\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kopioi linkki\"])};fn.source=\"Kopioi linkki\";return fn;})(),\n \"bookmark\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lisää kirjanmerkkeihin\"])};fn.source=\"Lisää kirjanmerkkeihin\";return fn;})(),\n \"unbookmark\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista kirjanmerkeistä\"])};fn.source=\"Poista kirjanmerkeistä\";return fn;})(),\n \"thread_muted\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Keskustelu mykistetty\"])};fn.source=\"Keskustelu mykistetty\";return fn;})(),\n \"thread_muted_and_words\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\", sisältää sanat:\"])};fn.source=\", sisältää sanat:\";return fn;})(),\n \"show_full_subject\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä koko otsikko\"])};fn.source=\"Näytä koko otsikko\";return fn;})(),\n \"hide_full_subject\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota koko otsikko\"])};fn.source=\"Piilota koko otsikko\";return fn;})(),\n \"show_content\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä sisältö\"])};fn.source=\"Näytä sisältö\";return fn;})(),\n \"hide_content\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota sisältö\"])};fn.source=\"Piilota sisältö\";return fn;})(),\n \"status_deleted\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poistettu viesti\"])};fn.source=\"Poistettu viesti\";return fn;})(),\n \"you\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"(sinä)\"])};fn.source=\"(sinä)\";return fn;})()\n },\n \"user_card\": {\n \"approve\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hyväksy\"])};fn.source=\"Hyväksy\";return fn;})(),\n \"block\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Estä\"])};fn.source=\"Estä\";return fn;})(),\n \"blocked\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Estetty!\"])};fn.source=\"Estetty!\";return fn;})(),\n \"deny\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Älä hyväksy\"])};fn.source=\"Älä hyväksy\";return fn;})(),\n \"follow\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seuraa\"])};fn.source=\"Seuraa\";return fn;})(),\n \"follow_sent\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pyyntö lähetetty!\"])};fn.source=\"Pyyntö lähetetty!\";return fn;})(),\n \"follow_progress\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pyydetään…\"])};fn.source=\"Pyydetään…\";return fn;})(),\n \"follow_unfollow\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Älä seuraa\"])};fn.source=\"Älä seuraa\";return fn;})(),\n \"followees\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seuraa\"])};fn.source=\"Seuraa\";return fn;})(),\n \"followers\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seuraajat\"])};fn.source=\"Seuraajat\";return fn;})(),\n \"following\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seuraat!\"])};fn.source=\"Seuraat!\";return fn;})(),\n \"follows_you\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seuraa sinua!\"])};fn.source=\"Seuraa sinua!\";return fn;})(),\n \"its_you\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sinun tili!\"])};fn.source=\"Sinun tili!\";return fn;})(),\n \"mute\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mykistä\"])};fn.source=\"Mykistä\";return fn;})(),\n \"muted\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mykistetty\"])};fn.source=\"Mykistetty\";return fn;})(),\n \"per_day\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"päivässä\"])};fn.source=\"päivässä\";return fn;})(),\n \"remote_follow\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seuraa muualta\"])};fn.source=\"Seuraa muualta\";return fn;})(),\n \"statuses\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Viestit\"])};fn.source=\"Viestit\";return fn;})(),\n \"hidden\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilotettu\"])};fn.source=\"Piilotettu\";return fn;})(),\n \"media\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Media\"])};fn.source=\"Media\";return fn;})(),\n \"block_progress\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Estetään…\"])};fn.source=\"Estetään…\";return fn;})(),\n \"admin_menu\": {\n \"grant_admin\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Anna Ylläpitöoikeudet\"])};fn.source=\"Anna Ylläpitöoikeudet\";return fn;})(),\n \"force_nsfw\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Merkitse kaikki viestit NSFW:nä\"])};fn.source=\"Merkitse kaikki viestit NSFW:nä\";return fn;})(),\n \"disable_any_subscription\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Estä käyttäjän seuraaminen\"])};fn.source=\"Estä käyttäjän seuraaminen\";return fn;})(),\n \"moderation\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Moderaatio\"])};fn.source=\"Moderaatio\";return fn;})(),\n \"revoke_admin\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista Ylläpitöoikeudet\"])};fn.source=\"Poista Ylläpitöoikeudet\";return fn;})(),\n \"grant_moderator\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Anna Moderaattorioikeudet\"])};fn.source=\"Anna Moderaattorioikeudet\";return fn;})(),\n \"revoke_moderator\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista Moderaattorioikeudet\"])};fn.source=\"Poista Moderaattorioikeudet\";return fn;})(),\n \"activate_account\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aktivoi tili\"])};fn.source=\"Aktivoi tili\";return fn;})(),\n \"deactivate_account\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Deaktivoi tili\"])};fn.source=\"Deaktivoi tili\";return fn;})(),\n \"delete_account\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista tili\"])};fn.source=\"Poista tili\";return fn;})(),\n \"strip_media\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista media viesteistä\"])};fn.source=\"Poista media viesteistä\";return fn;})(),\n \"force_unlisted\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pakota viestit listaamattomiksi\"])};fn.source=\"Pakota viestit listaamattomiksi\";return fn;})(),\n \"sandbox\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pakota viestit vain seuraajille\"])};fn.source=\"Pakota viestit vain seuraajille\";return fn;})(),\n \"disable_remote_subscription\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Estä seuraaminen ulkopuolisilta sivuilta\"])};fn.source=\"Estä seuraaminen ulkopuolisilta sivuilta\";return fn;})(),\n \"quarantine\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Estä käyttäjän viestin federoituminen\"])};fn.source=\"Estä käyttäjän viestin federoituminen\";return fn;})(),\n \"delete_user\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista käyttäjä\"])};fn.source=\"Poista käyttäjä\";return fn;})(),\n \"delete_user_confirmation\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Oletko aivan varma? Tätä ei voi kumota.\"])};fn.source=\"Oletko aivan varma? Tätä ei voi kumota.\";return fn;})()\n },\n \"favorites\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tykkäykset\"])};fn.source=\"Tykkäykset\";return fn;})(),\n \"mention\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mainitse\"])};fn.source=\"Mainitse\";return fn;})(),\n \"report\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ilmianna\"])};fn.source=\"Ilmianna\";return fn;})(),\n \"subscribe\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tilaa\"])};fn.source=\"Tilaa\";return fn;})(),\n \"unsubscribe\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista tilaus\"])};fn.source=\"Poista tilaus\";return fn;})(),\n \"unblock\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista esto\"])};fn.source=\"Poista esto\";return fn;})(),\n \"unblock_progress\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poistetaan estoa…\"])};fn.source=\"Poistetaan estoa…\";return fn;})(),\n \"unmute\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista mykistys\"])};fn.source=\"Poista mykistys\";return fn;})(),\n \"unmute_progress\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poistetaan mykistystä…\"])};fn.source=\"Poistetaan mykistystä…\";return fn;})(),\n \"mute_progress\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mykistetään…\"])};fn.source=\"Mykistetään…\";return fn;})(),\n \"hide_repeats\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Piilota toistot\"])};fn.source=\"Piilota toistot\";return fn;})(),\n \"show_repeats\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Näytä toistot\"])};fn.source=\"Näytä toistot\";return fn;})()\n },\n \"user_profile\": {\n \"timeline_title\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttäjän aikajana\"])};fn.source=\"Käyttäjän aikajana\";return fn;})(),\n \"profile_does_not_exist\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tätä profiilia ei ole.\"])};fn.source=\"Tätä profiilia ei ole.\";return fn;})(),\n \"profile_loading_error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe ladatessa profiilia.\"])};fn.source=\"Virhe ladatessa profiilia.\";return fn;})()\n },\n \"who_to_follow\": {\n \"more\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lisää\"])};fn.source=\"Lisää\";return fn;})(),\n \"who_to_follow\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seurausehdotukset\"])};fn.source=\"Seurausehdotukset\";return fn;})()\n },\n \"tool_tip\": {\n \"media_upload\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lataa tiedosto\"])};fn.source=\"Lataa tiedosto\";return fn;})(),\n \"repeat\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Toista\"])};fn.source=\"Toista\";return fn;})(),\n \"reply\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vastaa\"])};fn.source=\"Vastaa\";return fn;})(),\n \"favorite\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tykkää\"])};fn.source=\"Tykkää\";return fn;})(),\n \"user_settings\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttäjäasetukset\"])};fn.source=\"Käyttäjäasetukset\";return fn;})(),\n \"add_reaction\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lisää Reaktio\"])};fn.source=\"Lisää Reaktio\";return fn;})(),\n \"accept_follow_request\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hyväksy seurauspyyntö\"])};fn.source=\"Hyväksy seurauspyyntö\";return fn;})(),\n \"reject_follow_request\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hylkää seurauspyyntö\"])};fn.source=\"Hylkää seurauspyyntö\";return fn;})(),\n \"bookmark\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Kirjanmerkki\"])};fn.source=\"Kirjanmerkki\";return fn;})()\n },\n \"upload\": {\n \"error\": {\n \"base\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lataus epäonnistui.\"])};fn.source=\"Lataus epäonnistui.\";return fn;})(),\n \"file_too_big\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, named: _named } = ctx;return _normalize([\"Tiedosto liian suuri [\", _interpolate(_named(\"filesize\")), _interpolate(_named(\"filesizeunit\")), \" / \", _interpolate(_named(\"allowedsize\")), _interpolate(_named(\"allowedsizeunit\")), \"]\"])};fn.source=\"Tiedosto liian suuri [{filesize}{filesizeunit} / {allowedsize}{allowedsizeunit}]\";return fn;})(),\n \"default\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Yritä uudestaan myöhemmin\"])};fn.source=\"Yritä uudestaan myöhemmin\";return fn;})()\n },\n \"file_size_units\": {\n \"B\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"tavua\"])};fn.source=\"tavua\";return fn;})(),\n \"KiB\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"kt\"])};fn.source=\"kt\";return fn;})(),\n \"MiB\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mt\"])};fn.source=\"Mt\";return fn;})(),\n \"GiB\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Gt\"])};fn.source=\"Gt\";return fn;})(),\n \"TiB\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tt\"])};fn.source=\"Tt\";return fn;})()\n }\n },\n \"about\": {\n \"mrf\": {\n \"keyword\": {\n \"keyword_policies\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Avainsanasäännöt\"])};fn.source=\"Avainsanasäännöt\";return fn;})(),\n \"ftl_removal\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poistettu \\\"Koko Tunnettu Verkosto\\\" -aikajanalta\"])};fn.source=\"Poistettu \\\"Koko Tunnettu Verkosto\\\" -aikajanalta\";return fn;})(),\n \"reject\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hylkää\"])};fn.source=\"Hylkää\";return fn;})(),\n \"replace\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Korvaa\"])};fn.source=\"Korvaa\";return fn;})(),\n \"is_replaced_by\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"→\"])};fn.source=\"→\";return fn;})()\n },\n \"simple\": {\n \"accept\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hyväksy\"])};fn.source=\"Hyväksy\";return fn;})(),\n \"reject\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hylkää\"])};fn.source=\"Hylkää\";return fn;})(),\n \"quarantine\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Karanteeni\"])};fn.source=\"Karanteeni\";return fn;})(),\n \"ftl_removal\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poisto \\\"Koko Tunnettu Verkosto\\\" -aikajanalta\"])};fn.source=\"Poisto \\\"Koko Tunnettu Verkosto\\\" -aikajanalta\";return fn;})(),\n \"media_removal\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Media-tiedostojen poisto\"])};fn.source=\"Media-tiedostojen poisto\";return fn;})(),\n \"simple_policies\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Palvelinkohtaiset Säännöt\"])};fn.source=\"Palvelinkohtaiset Säännöt\";return fn;})(),\n \"accept_desc\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä palvelin hyväksyy viestit vain seuraavilta palvelimilta:\"])};fn.source=\"Tämä palvelin hyväksyy viestit vain seuraavilta palvelimilta:\";return fn;})(),\n \"reject_desc\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä palvelin ei hyväksy viestejä seuraavilta palvelimilta:\"])};fn.source=\"Tämä palvelin ei hyväksy viestejä seuraavilta palvelimilta:\";return fn;})(),\n \"quarantine_desc\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä palvelin lähettää vain julkisia viestejä seuraaville palvelimille:\"])};fn.source=\"Tämä palvelin lähettää vain julkisia viestejä seuraaville palvelimille:\";return fn;})(),\n \"ftl_removal_desc\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä palvelin poistaa nämä palvelimet \\\"Koko Tunnettu Verkosto\\\"-aikajanalta:\"])};fn.source=\"Tämä palvelin poistaa nämä palvelimet \\\"Koko Tunnettu Verkosto\\\"-aikajanalta:\";return fn;})(),\n \"media_removal_desc\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä palvelin postaa mediatiedostot viesteistä seuraavilta palvelimilta:\"])};fn.source=\"Tämä palvelin postaa mediatiedostot viesteistä seuraavilta palvelimilta:\";return fn;})(),\n \"media_nsfw\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pakota Media Arkaluontoiseksi\"])};fn.source=\"Pakota Media Arkaluontoiseksi\";return fn;})(),\n \"media_nsfw_desc\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä palvelin pakottaa mediatiedostot arkaluonteisiksi seuraavilta palvelimilta:\"])};fn.source=\"Tämä palvelin pakottaa mediatiedostot arkaluonteisiksi seuraavilta palvelimilta:\";return fn;})()\n },\n \"federation\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Federaatio\"])};fn.source=\"Federaatio\";return fn;})(),\n \"mrf_policies\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aktivoidut MRF-säännöt\"])};fn.source=\"Aktivoidut MRF-säännöt\";return fn;})(),\n \"mrf_policies_desc\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"MRF-säännöt muuttavat federaation toimintaa sivulla. Seuraavat säännöt ovat kytketty päälle:\"])};fn.source=\"MRF-säännöt muuttavat federaation toimintaa sivulla. Seuraavat säännöt ovat kytketty päälle:\";return fn;})()\n },\n \"staff\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Henkilökunta\"])};fn.source=\"Henkilökunta\";return fn;})()\n },\n \"domain_mute_card\": {\n \"mute\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mykistä\"])};fn.source=\"Mykistä\";return fn;})(),\n \"unmute\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poista mykistys\"])};fn.source=\"Poista mykistys\";return fn;})(),\n \"mute_progress\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Mykistetään…\"])};fn.source=\"Mykistetään…\";return fn;})(),\n \"unmute_progress\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Poistetaan mykistystä…\"])};fn.source=\"Poistetaan mykistystä…\";return fn;})()\n },\n \"exporter\": {\n \"export\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Vie\"])};fn.source=\"Vie\";return fn;})(),\n \"processing\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käsitellään, hetken päästä voit tallentaa tiedoston\"])};fn.source=\"Käsitellään, hetken päästä voit tallentaa tiedoston\";return fn;})()\n },\n \"image_cropper\": {\n \"crop_picture\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Rajaa kuva\"])};fn.source=\"Rajaa kuva\";return fn;})(),\n \"save\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tallenna\"])};fn.source=\"Tallenna\";return fn;})(),\n \"save_without_cropping\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tallenna rajaamatta\"])};fn.source=\"Tallenna rajaamatta\";return fn;})(),\n \"cancel\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Peruuta\"])};fn.source=\"Peruuta\";return fn;})()\n },\n \"importer\": {\n \"submit\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hyväksy\"])};fn.source=\"Hyväksy\";return fn;})(),\n \"error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe tapahtui tietoja tuodessa.\"])};fn.source=\"Virhe tapahtui tietoja tuodessa.\";return fn;})(),\n \"success\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tuonti onnistui.\"])};fn.source=\"Tuonti onnistui.\";return fn;})()\n },\n \"media_modal\": {\n \"previous\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Edellinen\"])};fn.source=\"Edellinen\";return fn;})(),\n \"next\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Seuraava\"])};fn.source=\"Seuraava\";return fn;})()\n },\n \"emoji\": {\n \"stickers\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tarrat\"])};fn.source=\"Tarrat\";return fn;})(),\n \"emoji\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Emoji\"])};fn.source=\"Emoji\";return fn;})(),\n \"keep_open\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pidä valitsin auki\"])};fn.source=\"Pidä valitsin auki\";return fn;})(),\n \"search_emoji\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Hae emojia\"])};fn.source=\"Hae emojia\";return fn;})(),\n \"add_emoji\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lisää emoji\"])};fn.source=\"Lisää emoji\";return fn;})(),\n \"custom\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Custom-emoji\"])};fn.source=\"Custom-emoji\";return fn;})(),\n \"load_all\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, named: _named } = ctx;return _normalize([\"Ladataan kaikkia \", _interpolate(_named(\"emojiAmount\")), \" emojia\"])};fn.source=\"Ladataan kaikkia {emojiAmount} emojia\";return fn;})(),\n \"unicode\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Unicode-emoji\"])};fn.source=\"Unicode-emoji\";return fn;})(),\n \"load_all_hint\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, named: _named } = ctx;return _normalize([\"Ensimmäiset \", _interpolate(_named(\"saneAmount\")), \" emojia ladattu, kaikkien emojien lataaminen voi aiheuttaa hidastelua.\"])};fn.source=\"Ensimmäiset {saneAmount} emojia ladattu, kaikkien emojien lataaminen voi aiheuttaa hidastelua.\";return fn;})()\n },\n \"remote_user_resolver\": {\n \"remote_user_resolver\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ulkopuolinen käyttäjä\"])};fn.source=\"Ulkopuolinen käyttäjä\";return fn;})(),\n \"searching_for\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Etsitään käyttäjää\"])};fn.source=\"Etsitään käyttäjää\";return fn;})(),\n \"error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ei löytynyt.\"])};fn.source=\"Ei löytynyt.\";return fn;})()\n },\n \"selectable_list\": {\n \"select_all\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Valitse kaikki\"])};fn.source=\"Valitse kaikki\";return fn;})()\n },\n \"password_reset\": {\n \"check_email\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tarkista sähköpostisi salasanannollausta varten.\"])};fn.source=\"Tarkista sähköpostisi salasanannollausta varten.\";return fn;})(),\n \"instruction\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Syötä sähköpostiosoite tai käyttäjänimi. Lähetämme linkin salasanan nollausta varten.\"])};fn.source=\"Syötä sähköpostiosoite tai käyttäjänimi. Lähetämme linkin salasanan nollausta varten.\";return fn;})(),\n \"password_reset_disabled\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Salasanan nollaus ei käytössä. Ota yhteyttä sivun ylläpitäjään.\"])};fn.source=\"Salasanan nollaus ei käytössä. Ota yhteyttä sivun ylläpitäjään.\";return fn;})(),\n \"password_reset_required_but_mailer_is_disabled\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sinun täytyy vaihtaa salasana, mutta salasanan nollaus on pois käytöstä. Ota yhteyttä sivun ylläpitäjään.\"])};fn.source=\"Sinun täytyy vaihtaa salasana, mutta salasanan nollaus on pois käytöstä. Ota yhteyttä sivun ylläpitäjään.\";return fn;})(),\n \"forgot_password\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Unohditko salasanan?\"])};fn.source=\"Unohditko salasanan?\";return fn;})(),\n \"password_reset\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Salasanan nollaus\"])};fn.source=\"Salasanan nollaus\";return fn;})(),\n \"placeholder\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sähköpostiosoite tai käyttäjänimi\"])};fn.source=\"Sähköpostiosoite tai käyttäjänimi\";return fn;})(),\n \"return_home\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Palaa etusivulle\"])};fn.source=\"Palaa etusivulle\";return fn;})(),\n \"too_many_requests\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Olet käyttänyt kaikki yritykset, yritä uudelleen myöhemmin.\"])};fn.source=\"Olet käyttänyt kaikki yritykset, yritä uudelleen myöhemmin.\";return fn;})(),\n \"password_reset_required\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Sinun täytyy vaihtaa salasana kirjautuaksesi.\"])};fn.source=\"Sinun täytyy vaihtaa salasana kirjautuaksesi.\";return fn;})()\n },\n \"user_reporting\": {\n \"add_comment_description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä raportti lähetetään sivun moderaattoreille. Voit antaa selityksen miksi ilmiannoit tilin:\"])};fn.source=\"Tämä raportti lähetetään sivun moderaattoreille. Voit antaa selityksen miksi ilmiannoit tilin:\";return fn;})(),\n \"title\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Ilmiannetaan \", _interpolate(_list(0))])};fn.source=\"Ilmiannetaan {0}\";return fn;})(),\n \"additional_comments\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lisäkommentit\"])};fn.source=\"Lisäkommentit\";return fn;})(),\n \"forward_description\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Tämä tili on toiselta palvelimelta. Lähetä kopio ilmiannosta sinnekin?\"])};fn.source=\"Tämä tili on toiselta palvelimelta. Lähetä kopio ilmiannosta sinnekin?\";return fn;})(),\n \"forward_to\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([\"Lähetä eteenpäin: \", _interpolate(_list(0))])};fn.source=\"Lähetä eteenpäin: {0}\";return fn;})(),\n \"submit\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Lähetä\"])};fn.source=\"Lähetä\";return fn;})(),\n \"generic_error\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Virhe käsitellessä pyyntöä.\"])};fn.source=\"Virhe käsitellessä pyyntöä.\";return fn;})()\n },\n \"search\": {\n \"people\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Käyttäjät\"])};fn.source=\"Käyttäjät\";return fn;})(),\n \"hashtags\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Aihetunnisteet\"])};fn.source=\"Aihetunnisteet\";return fn;})(),\n \"people_talking\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" käyttäjää puhuvat\"])};fn.source=\"{0} käyttäjää puhuvat\";return fn;})(),\n \"person_talking\": (()=>{const fn=(ctx) => {const { normalize: _normalize, interpolate: _interpolate, list: _list } = ctx;return _normalize([_interpolate(_list(0)), \" käyttäjä puhuu\"])};fn.source=\"{0} käyttäjä puhuu\";return fn;})(),\n \"no_results\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Ei tuloksia\"])};fn.source=\"Ei tuloksia\";return fn;})()\n },\n \"errors\": {\n \"storage_unavailable\": (()=>{const fn=(ctx) => {const { normalize: _normalize } = ctx;return _normalize([\"Pleroma ei voinut käyttää selaimen muistia. Kirjautumisesi ja paikalliset asetukset eivät tallennu ja saatat kohdata odottamattomia ongelmia. Yritä sallia evästeet.\"])};fn.source=\"Pleroma ei voinut käyttää selaimen muistia. Kirjautumisesi ja paikalliset asetukset eivät tallennu ja saatat kohdata odottamattomia ongelmia. Yritä sallia evästeet.\";return fn;})()\n }\n});\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8vLi9zcmMvaTE4bi9maS5qc29uP2YyNTUiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFBZTtBQUNmO0FBQ0EsbUJBQW1CLG1CQUFtQixPQUFPLHdCQUF3QixPQUFPLDZCQUE2QixpQkFBaUIsV0FBVztBQUNySSxHQUFHO0FBQ0g7QUFDQSxrQkFBa0IsbUJBQW1CLE9BQU8sd0JBQXdCLE9BQU8sNkJBQTZCLGlCQUFpQixXQUFXO0FBQ3BJLG9CQUFvQixtQkFBbUIsT0FBTyx3QkFBd0IsT0FBTywrQkFBK0IsbUJBQW1CLFdBQVc7QUFDMUkseUJBQXlCLG1CQUFtQixPQUFPLHdCQUF3QixPQUFPLDhDQUE4QyxrQ0FBa0MsV0FBVztBQUM3SywyQkFBMkIsbUJBQW1CLE9BQU8sd0JBQXdCLE9BQU8sMENBQTBDLDhCQUE4QixXQUFXO0FBQ3ZLLHdCQUF3QixtQkFBbUIsT0FBTyx3QkFBd0IsT0FBTywyQ0FBMkMsK0JBQStCLFdBQVc7QUFDdEssbUJBQW1CLG1CQUFtQixPQUFPLHdCQUF3QixPQUFPLHFDQUFxQyx5QkFBeUIsV0FBVztBQUNySiwyQkFBMkIsbUJBQW1CLE9BQU8sd0JBQXdCLE9BQU8sMENBQTBDLDhCQUE4QixXQUFXO0FBQ3ZLLEdBQUc7QUFDSDtBQUNBLGlDQUFpQyxtQkFBbUIsT0FBTyx3QkFBd0IsT0FBTyxpREFBaUQscUNBQXFDLFdBQVc7QUFDM0wsdUJBQXVCLG1CQUFtQixPQUFPLHdCQUF3QixPQUFPLHFDQUFxQyx5QkFBeUIsV0FBVztBQUN6SixHQUFHO0FBQ0g7QUFDQSxtQkFBbUIsbUJBQW1CLE9BQU8sd0JBQXdCLE9BQU8sOEJBQThCLGtCQUFrQixXQUFXO0FBQ3ZJLG9CQUFvQixtQkFBbUIsT0FBTyx3QkFBd0IsT0FBTywrQkFBK0IsbUJBQW1CLFdBQVc7QUFDMUksa0JBQWtCLG1CQUFtQixPQUFPLHdCQUF3QixPQUFPLDhCQUE4QixrQkFBa0IsV0FBVztBQUN0SSwyQkFBMkIsbUJBQW1CLE9BQU8sd0JB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LG1CQUFtQixPQUFPLGdFQUFnRSxPQUFPLDhEQUE4RCx5QkFBeUIsRUFBRSxFQUFFLFdBQVc7QUFDMU4saUNBQWlDLG1CQUFtQixPQUFPLHdCQUF3QixPQUFPLHNDQUFzQywwQkFBMEIsV0FBVztBQUNySyxpQ0FBaUMsbUJBQW1CLE9BQU8sd0JBQXdCLE9BQU8sK0ZBQStGLG1GQUFtRixXQUFXO0FBQ3ZSLHdCQUF3QixtQkFBbUIsT0FBTyxnRUFBZ0UsT0FBTyxtRUFBbUUsOEJBQThCLEVBQUUsRUFBRSxXQUFXO0FBQ3pPLG9CQUFvQixtQkFBbUIsT0FBTyx3QkFBd0IsT0FBTywrQkFBK0IsbUJBQW1CLFdBQVc7QUFDMUksMkJBQTJCLG1CQUFtQixPQUFPLHdCQUF3QixPQUFPLG9EQUFvRCx3Q0FBd0MsV0FBVztBQUMzTCxHQUFHO0FBQ0g7QUFDQSxvQkFBb0IsbUJBQW1CLE9BQU8sd0JBQXdCLE9BQU8sa0NBQWtDLHNCQUFzQixXQUFXO0FBQ2hKLHNCQUFzQixtQkFBbUIsT0FBTyx3QkFBd0IsT0FBTyx1Q0FBdUMsMkJBQTJCLFdBQVc7QUFDNUosNEJBQTRCLG1CQUFtQixPQUFPLGdFQUFnRSxPQUFPLG1FQUFtRSxZQUFZLEVBQUUsb0JBQW9CLFdBQVc7QUFDN08sNEJBQTRCLG1CQUFtQixPQUFPLGdFQUFnRSxPQUFPLGdFQUFnRSxZQUFZLEVBQUUsaUJBQWlCLFdBQVc7QUFDdk8sd0JBQXdCLG1CQUFtQixPQUFPLHdCQUF3QixPQUFPLG9DQUFvQyx3QkFBd0IsV0FBVztBQUN4SixHQUFHO0FBQ0g7QUFDQSxpQ0FBaUMsbUJBQW1CLE9BQU8sd0JBQXdCLE9BQU8sNkxBQTZMLGlMQUFpTCxXQUFXO0FBQ25kO0FBQ0EsQyIsImZpbGUiOiIuL3NyYy9pMThuL2ZpLmpzb24uanMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCB7XG4gIFwiY2hhdFwiOiB7XG4gICAgXCJ0aXRsZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJDaGF0XCJdKX07Zm4uc291cmNlPVwiQ2hhdFwiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwiZmVhdHVyZXNfcGFuZWxcIjoge1xuICAgIFwiY2hhdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJDaGF0XCJdKX07Zm4uc291cmNlPVwiQ2hhdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZ29waGVyXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkdvcGhlclwiXSl9O2ZuLnNvdXJjZT1cIkdvcGhlclwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibWVkaWFfcHJveHlcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTWVkaWEtdsOkbGl0eXNwYWx2ZWxpblwiXSl9O2ZuLnNvdXJjZT1cIk1lZGlhLXbDpGxpdHlzcGFsdmVsaW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInNjb3BlX29wdGlvbnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTsOka3l2eXlkZW4gcmFqYXVzXCJdKX07Zm4uc291cmNlPVwiTsOka3l2eXlkZW4gcmFqYXVzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ0ZXh0X2xpbWl0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRla3N0aW4gcGl0dXVzcmFqYVwiXSl9O2ZuLnNvdXJjZT1cIlRla3N0aW4gcGl0dXVzcmFqYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidGl0bGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiT21pbmFpc3V1ZGV0XCJdKX07Zm4uc291cmNlPVwiT21pbmFpc3V1ZGV0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ3aG9fdG9fZm9sbG93XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNldXJhdXNlaGRvdHVrc2V0XCJdKX07Zm4uc291cmNlPVwiU2V1cmF1c2VoZG90dWtzZXRcIjtyZXR1cm4gZm47fSkoKVxuICB9LFxuICBcImZpbmRlclwiOiB7XG4gICAgXCJlcnJvcl9mZXRjaGluZ191c2VyXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZpcmhlIGhha2llc3NhIGvDpHl0dMOkasOkw6RcIl0pfTtmbi5zb3VyY2U9XCJWaXJoZSBoYWtpZXNzYSBrw6R5dHTDpGrDpMOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJmaW5kX3VzZXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSGFlIGvDpHl0dMOkasOkXCJdKX07Zm4uc291cmNlPVwiSGFlIGvDpHl0dMOkasOkXCI7cmV0dXJuIGZuO30pKClcbiAgfSxcbiAgXCJnZW5lcmFsXCI6IHtcbiAgICBcImFwcGx5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkFzZXRhXCJdKX07Zm4uc291cmNlPVwiQXNldGFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInN1Ym1pdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMw6RoZXTDpFwiXSl9O2ZuLnNvdXJjZT1cIkzDpGhldMOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJtb3JlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkxpc8Okw6RcIl0pfTtmbi5zb3VyY2U9XCJMaXPDpMOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJnZW5lcmljX2Vycm9yXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZpcmhlIHRhcGFodHVpXCJdKX07Zm4uc291cmNlPVwiVmlyaGUgdGFwYWh0dWlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm9wdGlvbmFsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcInZhbGlubmFpbmVuXCJdKX07Zm4uc291cmNlPVwidmFsaW5uYWluZW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInNob3dfbW9yZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJOw6R5dMOkIGxpc8Okw6RcIl0pfTtmbi5zb3VyY2U9XCJOw6R5dMOkIGxpc8Okw6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInNob3dfbGVzc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJOw6R5dMOkIHbDpGhlbW3DpG5cIl0pfTtmbi5zb3VyY2U9XCJOw6R5dMOkIHbDpGhlbW3DpG5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImRpc21pc3NcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU3VsamVcIl0pfTtmbi5zb3VyY2U9XCJTdWxqZVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiY2FuY2VsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBlcnV1dGFcIl0pfTtmbi5zb3VyY2U9XCJQZXJ1dXRhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJkaXNhYmxlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBvaXN0YSBrw6R5dMO2c3TDpFwiXSl9O2ZuLnNvdXJjZT1cIlBvaXN0YSBrw6R5dMO2c3TDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiY29uZmlybVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJIeXbDpGtzeVwiXSl9O2ZuLnNvdXJjZT1cIkh5dsOka3N5XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ2ZXJpZnlcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFybWVubmFcIl0pfTtmbi5zb3VyY2U9XCJWYXJtZW5uYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZW5hYmxlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk90YSBrw6R5dHTDtsO2blwiXSl9O2ZuLnNvdXJjZT1cIk90YSBrw6R5dHTDtsO2blwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibG9hZGluZ1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMYWRhdGFhbuKAplwiXSl9O2ZuLnNvdXJjZT1cIkxhZGF0YWFu4oCmXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJlcnJvcl9yZXRyeVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJZcml0w6QgdXVkZWxsZWVuXCJdKX07Zm4uc291cmNlPVwiWXJpdMOkIHV1ZGVsbGVlblwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicmV0cnlcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiWXJpdMOkIHV1ZGVsbGVlblwiXSl9O2ZuLnNvdXJjZT1cIllyaXTDpCB1dWRlbGxlZW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImNsb3NlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlN1bGplXCJdKX07Zm4uc291cmNlPVwiU3VsamVcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInBlZWtcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS3Vya2thYVwiXSl9O2ZuLnNvdXJjZT1cIkt1cmtrYWFcIjtyZXR1cm4gZm47fSkoKVxuICB9LFxuICBcImxvZ2luXCI6IHtcbiAgICBcImxvZ2luXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIktpcmphdWR1IHNpc8Okw6RuXCJdKX07Zm4uc291cmNlPVwiS2lyamF1ZHUgc2lzw6TDpG5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImRlc2NyaXB0aW9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIktpcmphdWR1IHNpc8Okw6RuIE9BdXRoaWxsYVwiXSl9O2ZuLnNvdXJjZT1cIktpcmphdWR1IHNpc8Okw6RuIE9BdXRoaWxsYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibG9nb3V0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIktpcmphdWR1IHVsb3NcIl0pfTtmbi5zb3VyY2U9XCJLaXJqYXVkdSB1bG9zXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwYXNzd29yZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTYWxhc2FuYVwiXSl9O2ZuLnNvdXJjZT1cIlNhbGFzYW5hXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwbGFjZWhvbGRlclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJlc2ltLiBTZXBwb1wiXSl9O2ZuLnNvdXJjZT1cImVzaW0uIFNlcHBvXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJyZWdpc3RlclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJSZWtpc3RlcsO2aWR5XCJdKX07Zm4uc291cmNlPVwiUmVraXN0ZXLDtmlkeVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidXNlcm5hbWVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS8OkeXR0w6Rqw6RuaW1pXCJdKX07Zm4uc291cmNlPVwiS8OkeXR0w6Rqw6RuaW1pXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJoaW50XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIktpcmphdWR1IHNpc8Okw6RuIGxpaXR0ecOka3Nlc2kga2Vza3VzdGVsdXVuXCJdKX07Zm4uc291cmNlPVwiS2lyamF1ZHUgc2lzw6TDpG4gbGlpdHR5w6Rrc2VzaSBrZXNrdXN0ZWx1dW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImF1dGhlbnRpY2F0aW9uX2NvZGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVG9kZW5udXNrb29kaVwiXSl9O2ZuLnNvdXJjZT1cIlRvZGVubnVza29vZGlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImVudGVyX3JlY292ZXJ5X2NvZGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU3nDtnTDpCBwYWxhdXR1c2tvb2RpXCJdKX07Zm4uc291cmNlPVwiU3nDtnTDpCBwYWxhdXR1c2tvb2RpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJyZWNvdmVyeV9jb2RlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBhbGF1dHVza29vZGlcIl0pfTtmbi5zb3VyY2U9XCJQYWxhdXR1c2tvb2RpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJoZWFkaW5nXCI6IHtcbiAgICAgIFwidG90cFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJNb25pdmFpaGV0b2Rlbm51c1wiXSl9O2ZuLnNvdXJjZT1cIk1vbml2YWloZXRvZGVubnVzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcInJlY292ZXJ5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk1vbml2YWloZXBhbGF1dHVzXCJdKX07Zm4uc291cmNlPVwiTW9uaXZhaWhlcGFsYXV0dXNcIjtyZXR1cm4gZm47fSkoKVxuICAgIH0sXG4gICAgXCJlbnRlcl90d29fZmFjdG9yX2NvZGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU3nDtnTDpCBtb25pdmFpaGV0b2Rlbm51c2tvb2RpXCJdKX07Zm4uc291cmNlPVwiU3nDtnTDpCBtb25pdmFpaGV0b2Rlbm51c2tvb2RpXCI7cmV0dXJuIGZuO30pKClcbiAgfSxcbiAgXCJuYXZcIjoge1xuICAgIFwiYWJvdXRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVGlldG9qYVwiXSl9O2ZuLnNvdXJjZT1cIlRpZXRvamFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImJhY2tcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVGFrYWlzaW5cIl0pfTtmbi5zb3VyY2U9XCJUYWthaXNpblwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiY2hhdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQYWlrYWxsaW5lbiBDaGF0XCJdKX07Zm4uc291cmNlPVwiUGFpa2FsbGluZW4gQ2hhdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZnJpZW5kX3JlcXVlc3RzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNldXJhdXNweXlubsO2dFwiXSl9O2ZuLnNvdXJjZT1cIlNldXJhdXNweXlubsO2dFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibWVudGlvbnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTWFpbmlubmF0XCJdKX07Zm4uc291cmNlPVwiTWFpbmlubmF0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJpbnRlcmFjdGlvbnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSW50ZXJha3Rpb3RcIl0pfTtmbi5zb3VyY2U9XCJJbnRlcmFrdGlvdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZG1zXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIllrc2l0eWlzdmllc3RpdFwiXSl9O2ZuLnNvdXJjZT1cIllrc2l0eWlzdmllc3RpdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicHVibGljX3RsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkp1bGtpbmVuIEFpa2FqYW5hXCJdKX07Zm4uc291cmNlPVwiSnVsa2luZW4gQWlrYWphbmFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInRpbWVsaW5lXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkFpa2FqYW5hXCJdKX07Zm4uc291cmNlPVwiQWlrYWphbmFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInR3a25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHVubmV0dHUgVmVya29zdG9cIl0pfTtmbi5zb3VyY2U9XCJUdW5uZXR0dSBWZXJrb3N0b1wiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidXNlcl9zZWFyY2hcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS8OkeXR0w6Rqw6RoYWt1XCJdKX07Zm4uc291cmNlPVwiS8OkeXR0w6Rqw6RoYWt1XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ3aG9fdG9fZm9sbG93XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNldXJhdXNlaGRvdHVrc2V0XCJdKX07Zm4uc291cmNlPVwiU2V1cmF1c2VoZG90dWtzZXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInByZWZlcmVuY2VzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkFzZXR1a3NldFwiXSl9O2ZuLnNvdXJjZT1cIkFzZXR1a3NldFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiYWRtaW5pc3RyYXRpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiWWxsw6RwaXRvXCJdKX07Zm4uc291cmNlPVwiWWxsw6RwaXRvXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzZWFyY2hcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSGFrdVwiXSl9O2ZuLnNvdXJjZT1cIkhha3VcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImJvb2ttYXJrc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLaXJqYW5tZXJraXRcIl0pfTtmbi5zb3VyY2U9XCJLaXJqYW5tZXJraXRcIjtyZXR1cm4gZm47fSkoKVxuICB9LFxuICBcIm5vdGlmaWNhdGlvbnNcIjoge1xuICAgIFwiYnJva2VuX2Zhdm9yaXRlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZpZXN0acOkIGVpIGzDtnlkZXR0eeKAplwiXSl9O2ZuLnNvdXJjZT1cIlZpZXN0acOkIGVpIGzDtnlkZXR0eeKAplwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZmF2b3JpdGVkX3lvdVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJ0eWtrw6RzaSB2aWVzdGlzdMOkc2lcIl0pfTtmbi5zb3VyY2U9XCJ0eWtrw6RzaSB2aWVzdGlzdMOkc2lcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZvbGxvd2VkX3lvdVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJzZXVyYWEgc2ludWFcIl0pfTtmbi5zb3VyY2U9XCJzZXVyYWEgc2ludWFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImxvYWRfb2xkZXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTGF0YWEgdmFuaGVtcGlhIGlsbW9pdHVrc2lhXCJdKX07Zm4uc291cmNlPVwiTGF0YWEgdmFuaGVtcGlhIGlsbW9pdHVrc2lhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub3RpZmljYXRpb25zXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIklsbW9pdHVrc2V0XCJdKX07Zm4uc291cmNlPVwiSWxtb2l0dWtzZXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJlYWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTHVlIVwiXSl9O2ZuLnNvdXJjZT1cIkx1ZSFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJlcGVhdGVkX3lvdVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJ0b2lzdGkgdmllc3Rpc2lcIl0pfTtmbi5zb3VyY2U9XCJ0b2lzdGkgdmllc3Rpc2lcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm5vX21vcmVfbm90aWZpY2F0aW9uc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJFaSBlbmVtcMOkw6QgaWxtb2l0dWtzaWFcIl0pfTtmbi5zb3VyY2U9XCJFaSBlbmVtcMOkw6QgaWxtb2l0dWtzaWFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJlYWN0ZWRfd2l0aFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIGxpc3Q6IF9saXN0IH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wibGlzw6RzaSByZWFrdGlvbiBcIiwgX2ludGVycG9sYXRlKF9saXN0KDApKV0pfTtmbi5zb3VyY2U9XCJsaXPDpHNpIHJlYWt0aW9uIHswfVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibWlncmF0ZWRfdG9cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wic2lpcnR5aSBzaXZ1bGxlXCJdKX07Zm4uc291cmNlPVwic2lpcnR5aSBzaXZ1bGxlXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJmb2xsb3dfcmVxdWVzdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJoYWx1YWEgc2V1cmF0YSBzaW51YVwiXSl9O2ZuLnNvdXJjZT1cImhhbHVhYSBzZXVyYXRhIHNpbnVhXCI7cmV0dXJuIGZuO30pKClcbiAgfSxcbiAgXCJwb2xsc1wiOiB7XG4gICAgXCJhZGRfcG9sbFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMaXPDpMOkIMOkw6RuZXN0eXNcIl0pfTtmbi5zb3VyY2U9XCJMaXPDpMOkIMOkw6RuZXN0eXNcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImFkZF9vcHRpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTGlzw6TDpCB2YWlodG9laHRvXCJdKX07Zm4uc291cmNlPVwiTGlzw6TDpCB2YWlodG9laHRvXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJvcHRpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFpaHRvZWh0b1wiXSl9O2ZuLnNvdXJjZT1cIlZhaWh0b2VodG9cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInZvdGVzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIsOkw6RudMOkXCJdKX07Zm4uc291cmNlPVwiw6TDpG50w6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInZvdGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiw4TDpG5lc3TDpFwiXSl9O2ZuLnNvdXJjZT1cIsOEw6RuZXN0w6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInR5cGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiw4TDpG5lc3R5a3NlbiB0eXlwcGlcIl0pfTtmbi5zb3VyY2U9XCLDhMOkbmVzdHlrc2VuIHR5eXBwaVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic2luZ2xlX2Nob2ljZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJZa3NpIHZhbGludGFcIl0pfTtmbi5zb3VyY2U9XCJZa3NpIHZhbGludGFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm11bHRpcGxlX2Nob2ljZXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTW9uaXZhbGludGFcIl0pfTtmbi5zb3VyY2U9XCJNb25pdmFsaW50YVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZXhwaXJ5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIsOEw6RuZXN0eWtzZW4ga2VzdG9cIl0pfTtmbi5zb3VyY2U9XCLDhMOkbmVzdHlrc2VuIGtlc3RvXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJleHBpcmVzX2luXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQw6TDpHR0eXkgXCIsIF9pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwiIHDDpMOkc3TDpFwiXSl9O2ZuLnNvdXJjZT1cIlDDpMOkdHR5eSB7MH0gcMOkw6RzdMOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJleHBpcmVkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQw6TDpHR0eWkgXCIsIF9pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwiIHNpdHRlblwiXSl9O2ZuLnNvdXJjZT1cIlDDpMOkdHR5aSB7MH0gc2l0dGVuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub3RfZW5vdWdoX29wdGlvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMaWlhbiB2w6Row6RuIHVuaWlra2VqYSB2YWlodG9laHRvamEgw6TDpG5lc3R5a3Nlc3PDpFwiXSl9O2ZuLnNvdXJjZT1cIkxpaWFuIHbDpGjDpG4gdW5paWtrZWphIHZhaWh0b2VodG9qYSDDpMOkbmVzdHlrc2Vzc8OkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub3RfZW5vdWdoX29wdGlvbnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTGlpYW4gdsOkaMOkbiBhaW51dGtlcnRhaXNpYSB2YWlodG9laHRvamFcIl0pfTtmbi5zb3VyY2U9XCJMaWlhbiB2w6Row6RuIGFpbnV0a2VydGFpc2lhIHZhaWh0b2VodG9qYVwiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwiaW50ZXJhY3Rpb25zXCI6IHtcbiAgICBcImZhdnNfcmVwZWF0c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUb2lzdG90IGphIHR5a2vDpHlrc2V0XCJdKX07Zm4uc291cmNlPVwiVG9pc3RvdCBqYSB0eWtrw6R5a3NldFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZm9sbG93c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJVdWRldCBzZXVyYXVrc2V0XCJdKX07Zm4uc291cmNlPVwiVXVkZXQgc2V1cmF1a3NldFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibG9hZF9vbGRlclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMYXRhYSB2YW5oZW1waWEgaW50ZXJha3Rpb2l0YVwiXSl9O2ZuLnNvdXJjZT1cIkxhdGFhIHZhbmhlbXBpYSBpbnRlcmFrdGlvaXRhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJtb3Zlc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLw6R5dHTDpGppZW4gc2lpcnR5bWlzZXRcIl0pfTtmbi5zb3VyY2U9XCJLw6R5dHTDpGppZW4gc2lpcnR5bWlzZXRcIjtyZXR1cm4gZm47fSkoKVxuICB9LFxuICBcInBvc3Rfc3RhdHVzXCI6IHtcbiAgICBcIm5ld19zdGF0dXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVXVzaSB2aWVzdGlcIl0pfTtmbi5zb3VyY2U9XCJVdXNpIHZpZXN0aVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiYWNjb3VudF9ub3RfbG9ja2VkX3dhcm5pbmdcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRpbGlzaSBlaSBvbGUgXCIsIF9pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwiLiBLdWthIHZhaW4gdm9pIHNldXJhdGEgc2ludWEgbsOkaGTDpGtzZXNpICd2YWluLXNldXJhYWppbGxlJyAtdmllc3Rpc2kuXCJdKX07Zm4uc291cmNlPVwiVGlsaXNpIGVpIG9sZSB7MH0uIEt1a2EgdmFpbiB2b2kgc2V1cmF0YSBzaW51YSBuw6RoZMOka3Nlc2kgJ3ZhaW4tc2V1cmFhamlsbGUnIC12aWVzdGlzaS5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImFjY291bnRfbm90X2xvY2tlZF93YXJuaW5nX2xpbmtcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wibHVraXR0dVwiXSl9O2ZuLnNvdXJjZT1cImx1a2l0dHVcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImF0dGFjaG1lbnRzX3NlbnNpdGl2ZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJNZXJra2FhIGxpaXR0ZWV0IGFya2FsdW9udGVpc2lrc2lcIl0pfTtmbi5zb3VyY2U9XCJNZXJra2FhIGxpaXR0ZWV0IGFya2FsdW9udGVpc2lrc2lcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImNvbnRlbnRfdHlwZVwiOiB7XG4gICAgICBcInRleHQvcGxhaW5cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVGF2YWxsaW5lbiB0ZWtzdGlcIl0pfTtmbi5zb3VyY2U9XCJUYXZhbGxpbmVuIHRla3N0aVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJ0ZXh0L2h0bWxcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSFRNTFwiXSl9O2ZuLnNvdXJjZT1cIkhUTUxcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwidGV4dC9tYXJrZG93blwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJNYXJrZG93blwiXSl9O2ZuLnNvdXJjZT1cIk1hcmtkb3duXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcInRleHQvYmJjb2RlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkJCQ29kZVwiXSl9O2ZuLnNvdXJjZT1cIkJCQ29kZVwiO3JldHVybiBmbjt9KSgpXG4gICAgfSxcbiAgICBcImNvbnRlbnRfd2FybmluZ1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJBaWhlICh2YWxpbm5haW5lbilcIl0pfTtmbi5zb3VyY2U9XCJBaWhlICh2YWxpbm5haW5lbilcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImRlZmF1bHRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHVsaW4ganV1cmkgc2F1bmFzdGEuXCJdKX07Zm4uc291cmNlPVwiVHVsaW4ganV1cmkgc2F1bmFzdGEuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJkaXJlY3Rfd2FybmluZ1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUw6Rtw6Qgdmllc3RpIG7DpGt5eSB2YWluIG1haW5pdHVpbGxlIGvDpHl0dMOkamlsbGUuXCJdKX07Zm4uc291cmNlPVwiVMOkbcOkIHZpZXN0aSBuw6RreXkgdmFpbiBtYWluaXR1aWxsZSBrw6R5dHTDpGppbGxlLlwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicG9zdGluZ1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMw6RoZXRldMOkw6RuXCJdKX07Zm4uc291cmNlPVwiTMOkaGV0ZXTDpMOkblwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic2NvcGVcIjoge1xuICAgICAgXCJkaXJlY3RcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiWWtzaXR5aXN2aWVzdGkgLSBOw6RreXkgdmFpbiBtYWluaXR1aWxsZSBrw6R5dHTDpGppbGxlXCJdKX07Zm4uc291cmNlPVwiWWtzaXR5aXN2aWVzdGkgLSBOw6RreXkgdmFpbiBtYWluaXR1aWxsZSBrw6R5dHTDpGppbGxlXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcInByaXZhdGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFpbi1zZXVyYWFqaWxsZSAtIE7DpGt5eSB2YWluIHNldXJhYWppbGxlc2lcIl0pfTtmbi5zb3VyY2U9XCJWYWluLXNldXJhYWppbGxlIC0gTsOka3l5IHZhaW4gc2V1cmFhamlsbGVzaVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJwdWJsaWNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSnVsa2luZW4gLSBOw6RreXkganVsa2lzaWxsYSBhaWthamFub2lsbGFcIl0pfTtmbi5zb3VyY2U9XCJKdWxraW5lbiAtIE7DpGt5eSBqdWxraXNpbGxhIGFpa2FqYW5vaWxsYVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJ1bmxpc3RlZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMaXN0YWFtYXRvbiAtIEVpIG7DpHkganVsa2lzaWxsYSBhaWthamFub2lsbGFcIl0pfTtmbi5zb3VyY2U9XCJMaXN0YWFtYXRvbiAtIEVpIG7DpHkganVsa2lzaWxsYSBhaWthamFub2lsbGFcIjtyZXR1cm4gZm47fSkoKVxuICAgIH0sXG4gICAgXCJkaXJlY3Rfd2FybmluZ190b19hbGxcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVMOkbcOkIHZpZXN0aSBuw6RreXkgdmFpbiB2aWVzdGlzc8OkIG1haW5pdHVpbGxlIGvDpHl0dMOkamlsbGUuXCJdKX07Zm4uc291cmNlPVwiVMOkbcOkIHZpZXN0aSBuw6RreXkgdmFpbiB2aWVzdGlzc8OkIG1haW5pdHVpbGxlIGvDpHl0dMOkamlsbGUuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJkaXJlY3Rfd2FybmluZ190b19maXJzdF9vbmx5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlTDpG3DpCB2aWVzdGkgbsOka3l5IHZhaW4gdmllc3RpbiBhbHVzc2EgbWFpbml0dWlsbGUga8OkeXR0w6RqaWxsZS5cIl0pfTtmbi5zb3VyY2U9XCJUw6Rtw6Qgdmllc3RpIG7DpGt5eSB2YWluIHZpZXN0aW4gYWx1c3NhIG1haW5pdHVpbGxlIGvDpHl0dMOkamlsbGUuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzY29wZV9ub3RpY2VcIjoge1xuICAgICAgXCJwdWJsaWNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVMOkbcOkIHZpZXN0aSBuw6RreXkga2Fpa2lsbGVcIl0pfTtmbi5zb3VyY2U9XCJUw6Rtw6Qgdmllc3RpIG7DpGt5eSBrYWlraWxsZVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJwcml2YXRlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlTDpG3DpCB2aWVzdGkgbsOka3l5IHZhaW4gc2ludW4gc2V1cmFhamlsbGVzaVwiXSl9O2ZuLnNvdXJjZT1cIlTDpG3DpCB2aWVzdGkgbsOka3l5IHZhaW4gc2ludW4gc2V1cmFhamlsbGVzaVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJ1bmxpc3RlZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUw6Rtw6Qgdmllc3RpIGVpIG7DpHkgSnVsa2lzZWxsYSBBaWthamFuYWxsYSB0YWkgS29rbyBUdW5uZXR0dSBWZXJrb3N0byAtYWlrYWphbmFsbGFcIl0pfTtmbi5zb3VyY2U9XCJUw6Rtw6Qgdmllc3RpIGVpIG7DpHkgSnVsa2lzZWxsYSBBaWthamFuYWxsYSB0YWkgS29rbyBUdW5uZXR0dSBWZXJrb3N0byAtYWlrYWphbmFsbGFcIjtyZXR1cm4gZm47fSkoKVxuICAgIH0sXG4gICAgXCJwcmV2aWV3XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkVzaWthdHNlbHVcIl0pfTtmbi5zb3VyY2U9XCJFc2lrYXRzZWx1XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwcmV2aWV3X2VtcHR5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlR5aGrDpFwiXSl9O2ZuLnNvdXJjZT1cIlR5aGrDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZW1wdHlfc3RhdHVzX2Vycm9yXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlR5aGrDpMOkIHZpZXN0acOkIGlsbWFuIHRpZWRvc3RvamEgZWkgdm9pIGzDpGhldHTDpMOkXCJdKX07Zm4uc291cmNlPVwiVHloasOkw6Qgdmllc3Rpw6QgaWxtYW4gdGllZG9zdG9qYSBlaSB2b2kgbMOkaGV0dMOkw6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm1lZGlhX2Rlc2NyaXB0aW9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRpZWRvc3RvbiBrdXZhdXNcIl0pfTtmbi5zb3VyY2U9XCJUaWVkb3N0b24ga3V2YXVzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJtZWRpYV9kZXNjcmlwdGlvbl9lcnJvclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUaWVkb3N0b2plbiBww6Rpdml0eXMgZXDDpG9ubmlzdHVpLCB5cml0w6QgdXVkZWxsZWVuXCJdKX07Zm4uc291cmNlPVwiVGllZG9zdG9qZW4gcMOkaXZpdHlzIGVww6Rvbm5pc3R1aSwgeXJpdMOkIHV1ZGVsbGVlblwiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwicmVnaXN0cmF0aW9uXCI6IHtcbiAgICBcImJpb1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLdXZhdXNcIl0pfTtmbi5zb3VyY2U9XCJLdXZhdXNcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImVtYWlsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlPDpGhrw7Zwb3N0aVwiXSl9O2ZuLnNvdXJjZT1cIlPDpGhrw7Zwb3N0aVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZnVsbG5hbWVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS29rbyBuaW1pXCJdKX07Zm4uc291cmNlPVwiS29rbyBuaW1pXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwYXNzd29yZF9jb25maXJtXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNhbGFzYW5hbiB2YWh2aXN0YW1pbmVuXCJdKX07Zm4uc291cmNlPVwiU2FsYXNhbmFuIHZhaHZpc3RhbWluZW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJlZ2lzdHJhdGlvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJSZWtpc3RlcsO2aXR5bWluZW5cIl0pfTtmbi5zb3VyY2U9XCJSZWtpc3RlcsO2aXR5bWluZW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInRva2VuXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkt1dHN1dmFsdHV1c1wiXSl9O2ZuLnNvdXJjZT1cIkt1dHN1dmFsdHV1c1wiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiY2FwdGNoYVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWYXJtZW5uZVwiXSl9O2ZuLnNvdXJjZT1cIlZhcm1lbm5lXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJuZXdfY2FwdGNoYVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQYWluYSBrdXZhYSBzYWFkYWtzZXNpIHV1ZGVuIHZhcm1lbnRlZW5cIl0pfTtmbi5zb3VyY2U9XCJQYWluYSBrdXZhYSBzYWFkYWtzZXNpIHV1ZGVuIHZhcm1lbnRlZW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInZhbGlkYXRpb25zXCI6IHtcbiAgICAgIFwidXNlcm5hbWVfcmVxdWlyZWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiZWkgdm9pIG9sbGEgdHloasOkXCJdKX07Zm4uc291cmNlPVwiZWkgdm9pIG9sbGEgdHloasOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcImZ1bGxuYW1lX3JlcXVpcmVkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcImVpIHZvaSBvbGxhIHR5aGrDpFwiXSl9O2ZuLnNvdXJjZT1cImVpIHZvaSBvbGxhIHR5aGrDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJlbWFpbF9yZXF1aXJlZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJlaSB2b2kgb2xsYSB0eWhqw6RcIl0pfTtmbi5zb3VyY2U9XCJlaSB2b2kgb2xsYSB0eWhqw6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwicGFzc3dvcmRfcmVxdWlyZWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiZWkgdm9pIG9sbGEgdHloasOkXCJdKX07Zm4uc291cmNlPVwiZWkgdm9pIG9sbGEgdHloasOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcInBhc3N3b3JkX2NvbmZpcm1hdGlvbl9yZXF1aXJlZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJlaSB2b2kgb2xsYSB0eWhqw6RcIl0pfTtmbi5zb3VyY2U9XCJlaSB2b2kgb2xsYSB0eWhqw6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwicGFzc3dvcmRfY29uZmlybWF0aW9uX21hdGNoXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcInBpdMOkw6QgdmFzdGF0YSBzYWxhc2FuYWFcIl0pfTtmbi5zb3VyY2U9XCJwaXTDpMOkIHZhc3RhdGEgc2FsYXNhbmFhXCI7cmV0dXJuIGZuO30pKClcbiAgICB9LFxuICAgIFwidXNlcm5hbWVfcGxhY2Vob2xkZXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiZXNpbS4gcGVrZVwiXSl9O2ZuLnNvdXJjZT1cImVzaW0uIHBla2VcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZ1bGxuYW1lX3BsYWNlaG9sZGVyXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcImVzaW0uIFBla2thIFBvc3RhYWphXCJdKX07Zm4uc291cmNlPVwiZXNpbS4gUGVra2EgUG9zdGFhamFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImJpb19wbGFjZWhvbGRlclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJlc2ltLlxcbkhlaSwgb2xlbiBQZWtrYS5cXG5PbGVuIGVzaW1lcmtraWvDpHl0dMOkasOkIHTDpHNzw6QgdmVya29zdG9zc2EuXCJdKX07Zm4uc291cmNlPVwiZXNpbS5cXG5IZWksIG9sZW4gUGVra2EuXFxuT2xlbiBlc2ltZXJra2lrw6R5dHTDpGrDpCB0w6Rzc8OkIHZlcmtvc3Rvc3NhLlwiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwic2V0dGluZ3NcIjoge1xuICAgIFwiYXR0YWNobWVudFJhZGl1c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMaWl0dGVldFwiXSl9O2ZuLnNvdXJjZT1cIkxpaXR0ZWV0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJhdHRhY2htZW50c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMaWl0dGVldFwiXSl9O2ZuLnNvdXJjZT1cIkxpaXR0ZWV0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJhdmF0YXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUHJvZmlpbGlrdXZhXCJdKX07Zm4uc291cmNlPVwiUHJvZmlpbGlrdXZhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJhdmF0YXJBbHRSYWRpdXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUHJvZmlpbGlrdXZhdCAoaWxtb2l0dWtzZXQpXCJdKX07Zm4uc291cmNlPVwiUHJvZmlpbGlrdXZhdCAoaWxtb2l0dWtzZXQpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJhdmF0YXJSYWRpdXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUHJvZmlpbGlrdXZhdFwiXSl9O2ZuLnNvdXJjZT1cIlByb2ZpaWxpa3V2YXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImJhY2tncm91bmRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVGF1c3RhXCJdKX07Zm4uc291cmNlPVwiVGF1c3RhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJiaW9cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS3V2YXVzXCJdKX07Zm4uc291cmNlPVwiS3V2YXVzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJidG5SYWRpdXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTmFwaXRcIl0pfTtmbi5zb3VyY2U9XCJOYXBpdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiY0JsdWVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU2luaW5lbiAoVmFzdGF1a3NldCwgc2V1cmF1a3NldClcIl0pfTtmbi5zb3VyY2U9XCJTaW5pbmVuIChWYXN0YXVrc2V0LCBzZXVyYXVrc2V0KVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiY0dyZWVuXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZpaHJlw6QgKFRvaXN0b3QpXCJdKX07Zm4uc291cmNlPVwiVmlocmXDpCAoVG9pc3RvdClcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImNPcmFuZ2VcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiT3JhbnNzaSAoVHlra8OkeWtzZXQpXCJdKX07Zm4uc291cmNlPVwiT3JhbnNzaSAoVHlra8OkeWtzZXQpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJjUmVkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlB1bmFpbmVuIChQZXJ1bWluZW4pXCJdKX07Zm4uc291cmNlPVwiUHVuYWluZW4gKFBlcnVtaW5lbilcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImNoYW5nZV9wYXNzd29yZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWYWloZGEgc2FsYXNhbmFcIl0pfTtmbi5zb3VyY2U9XCJWYWloZGEgc2FsYXNhbmFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImNoYW5nZV9wYXNzd29yZF9lcnJvclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWaXJoZSB2YWlodGFlc3NhIHNhbGFzYW5hYS5cIl0pfTtmbi5zb3VyY2U9XCJWaXJoZSB2YWlodGFlc3NhIHNhbGFzYW5hYS5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImNoYW5nZWRfcGFzc3dvcmRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU2FsYXNhbmEgdmFpaGRldHR1IVwiXSl9O2ZuLnNvdXJjZT1cIlNhbGFzYW5hIHZhaWhkZXR0dSFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImNvbGxhcHNlX3N1YmplY3RcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTWluaW1vaSB2aWVzdGl0LCBqb2lsbGUgb24gYXNldGV0dHUgYWloZVwiXSl9O2ZuLnNvdXJjZT1cIk1pbmltb2kgdmllc3RpdCwgam9pbGxlIG9uIGFzZXRldHR1IGFpaGVcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImNvbXBvc2luZ1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWaWVzdGllbiBsYWF0aW1pbmVuXCJdKX07Zm4uc291cmNlPVwiVmllc3RpZW4gbGFhdGltaW5lblwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiY29uZmlybV9uZXdfcGFzc3dvcmRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFodmlzdGEgdXVzaSBzYWxhc2FuYVwiXSl9O2ZuLnNvdXJjZT1cIlZhaHZpc3RhIHV1c2kgc2FsYXNhbmFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImN1cnJlbnRfYXZhdGFyXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk55a3lpbmVuIHByb2ZpaWxpa3V2YXNpXCJdKX07Zm4uc291cmNlPVwiTnlreWluZW4gcHJvZmlpbGlrdXZhc2lcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImN1cnJlbnRfcGFzc3dvcmRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTnlreWluZW4gc2FsYXNhbmFcIl0pfTtmbi5zb3VyY2U9XCJOeWt5aW5lbiBzYWxhc2FuYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiY3VycmVudF9wcm9maWxlX2Jhbm5lclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJOeWt5aW5lbiBqdWxpc3RlZXNpXCJdKX07Zm4uc291cmNlPVwiTnlreWluZW4ganVsaXN0ZWVzaVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZGF0YV9pbXBvcnRfZXhwb3J0X3RhYlwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUaWV0b2plbiB0dW9udGkgLyB2aWVudGlcIl0pfTtmbi5zb3VyY2U9XCJUaWV0b2plbiB0dW9udGkgLyB2aWVudGlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImRlZmF1bHRfdmlzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk9sZXR1c27DpGt5dnl5c3JhamF1c1wiXSl9O2ZuLnNvdXJjZT1cIk9sZXR1c27DpGt5dnl5c3JhamF1c1wiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZGVsZXRlX2FjY291bnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUG9pc3RhIHRpbGlcIl0pfTtmbi5zb3VyY2U9XCJQb2lzdGEgdGlsaVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZGVsZXRlX2FjY291bnRfZGVzY3JpcHRpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUG9pc3RhIHRpZXRvc2kgamEgbHVraXRzZSB0aWxpIHB5c3l2w6RzdGkuXCJdKX07Zm4uc291cmNlPVwiUG9pc3RhIHRpZXRvc2kgamEgbHVraXRzZSB0aWxpIHB5c3l2w6RzdGkuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJkZWxldGVfYWNjb3VudF9lcnJvclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWaXJoZSBwb2lzdGFlc3NhIHRpbGnDpHNpLiBKb3MgdmlyaGUgamF0a3V1LCBvdGEgeWh0ZXl0dMOkIHBhbHZlbGltZXNpIHlsbMOkcGl0b29uLlwiXSl9O2ZuLnNvdXJjZT1cIlZpcmhlIHBvaXN0YWVzc2EgdGlsacOkc2kuIEpvcyB2aXJoZSBqYXRrdXUsIG90YSB5aHRleXR0w6QgcGFsdmVsaW1lc2kgeWxsw6RwaXRvb24uXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJkZWxldGVfYWNjb3VudF9pbnN0cnVjdGlvbnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU3nDtnTDpCBzYWxhc2FuYXNpIHZhaHZpc3RhYWtzZXNpIHRpbGluIHBvaXN0b24uXCJdKX07Zm4uc291cmNlPVwiU3nDtnTDpCBzYWxhc2FuYXNpIHZhaHZpc3RhYWtzZXNpIHRpbGluIHBvaXN0b24uXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJlbW9qaV9yZWFjdGlvbnNfb25fdGltZWxpbmVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTsOkeXTDpCBlbW9qaXJlYWt0aW90IGFpa2FqYW5hbGxhXCJdKX07Zm4uc291cmNlPVwiTsOkeXTDpCBlbW9qaXJlYWt0aW90IGFpa2FqYW5hbGxhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJleHBvcnRfdGhlbWVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVGFsbGVubmEgdGVlbWFcIl0pfTtmbi5zb3VyY2U9XCJUYWxsZW5uYSB0ZWVtYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZmlsdGVyaW5nXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlN1b2RhdHVzXCJdKX07Zm4uc291cmNlPVwiU3VvZGF0dXNcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZpbHRlcmluZ19leHBsYW5hdGlvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLYWlra2kgdmllc3RpdCwgam90a2Egc2lzw6RsdMOkdsOkdCBuw6RpdMOkIHNhbm9qYSwgc3VvZGF0ZXRhYW4uIFlrc2kgc2FuYSBwZXIgcml2aS5cIl0pfTtmbi5zb3VyY2U9XCJLYWlra2kgdmllc3RpdCwgam90a2Egc2lzw6RsdMOkdsOkdCBuw6RpdMOkIHNhbm9qYSwgc3VvZGF0ZXRhYW4uIFlrc2kgc2FuYSBwZXIgcml2aS5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZvbGxvd19leHBvcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU2V1cmF1c3RlbiB2aWVudGlcIl0pfTtmbi5zb3VyY2U9XCJTZXVyYXVzdGVuIHZpZW50aVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZm9sbG93X2V4cG9ydF9idXR0b25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmllIHNldXJhdWtzZXNpIENTVi10aWVkb3N0b29uXCJdKX07Zm4uc291cmNlPVwiVmllIHNldXJhdWtzZXNpIENTVi10aWVkb3N0b29uXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJmb2xsb3dfZXhwb3J0X3Byb2Nlc3NpbmdcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS8Okc2l0ZWxsw6TDpG4sIHNpbnVhIHB5eWRldMOkw6RuIGxhdGFhbWFhbiB0aWVkb3N0byBoZXRrZW4gcMOkw6RzdMOkXCJdKX07Zm4uc291cmNlPVwiS8Okc2l0ZWxsw6TDpG4sIHNpbnVhIHB5eWRldMOkw6RuIGxhdGFhbWFhbiB0aWVkb3N0byBoZXRrZW4gcMOkw6RzdMOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJmb2xsb3dfaW1wb3J0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNldXJhdXN0ZW4gdHVvbnRpXCJdKX07Zm4uc291cmNlPVwiU2V1cmF1c3RlbiB0dW9udGlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZvbGxvd19pbXBvcnRfZXJyb3JcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmlyaGUgdHVvZGVzc2Egc2V1cmFrc2lhXCJdKX07Zm4uc291cmNlPVwiVmlyaGUgdHVvZGVzc2Egc2V1cmFrc2lhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJmb2xsb3dzX2ltcG9ydGVkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNldXJhdWtzZXQgdHVvdHUhIE5paWRlbiBrw6RzaXR0ZWx5IHZpZSBoZXRrZW4uXCJdKX07Zm4uc291cmNlPVwiU2V1cmF1a3NldCB0dW90dSEgTmlpZGVuIGvDpHNpdHRlbHkgdmllIGhldGtlbi5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZvcmVncm91bmRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRXR1YWxhXCJdKX07Zm4uc291cmNlPVwiRXR1YWxhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJnZW5lcmFsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIllsZWluZW5cIl0pfTtmbi5zb3VyY2U9XCJZbGVpbmVuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJoaWRlX2F0dGFjaG1lbnRzX2luX2NvbnZvXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBpaWxvdGEgbGlpdHRlZXQga2Vza3VzdGVsdWlzc2FcIl0pfTtmbi5zb3VyY2U9XCJQaWlsb3RhIGxpaXR0ZWV0IGtlc2t1c3RlbHVpc3NhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJoaWRlX2F0dGFjaG1lbnRzX2luX3RsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBpaWxvdGEgbGlpdHRlZXQgYWlrYWphbmFsbGFcIl0pfTtmbi5zb3VyY2U9XCJQaWlsb3RhIGxpaXR0ZWV0IGFpa2FqYW5hbGxhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJtYXhfdGh1bWJuYWlsc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTdXVyaW4gc2FsbGl0dHUgbcOkw6Ryw6QgbGlpdHRlaXTDpCBlc2lrYXRzZWx1c3NhXCJdKX07Zm4uc291cmNlPVwiU3V1cmluIHNhbGxpdHR1IG3DpMOkcsOkIGxpaXR0ZWl0w6QgZXNpa2F0c2VsdXNzYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiaGlkZV9pc3BcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUGlpbG90YSBwYWx2ZWxpbWVua29odGFpbmVuIHJ1dXR1XCJdKX07Zm4uc291cmNlPVwiUGlpbG90YSBwYWx2ZWxpbWVua29odGFpbmVuIHJ1dXR1XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwcmVsb2FkX2ltYWdlc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJFc2lsYXRhYSBrdXZhdFwiXSl9O2ZuLnNvdXJjZT1cIkVzaWxhdGFhIGt1dmF0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ1c2Vfb25lX2NsaWNrX25zZndcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiQXZhYSBOU0ZXLWxpaXR0ZWV0IHloZGVsbMOkIHBhaW5hbGx1a3NlbGxhXCJdKX07Zm4uc291cmNlPVwiQXZhYSBOU0ZXLWxpaXR0ZWV0IHloZGVsbMOkIHBhaW5hbGx1a3NlbGxhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJoaWRlX3Bvc3Rfc3RhdHNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUGlpbG90YSB2aWVzdGllbiBzdGF0aXN0aWlra2EgKGVzaW0uIHR5a2vDpHlzdGVuIG3DpMOkcsOkKVwiXSl9O2ZuLnNvdXJjZT1cIlBpaWxvdGEgdmllc3RpZW4gc3RhdGlzdGlpa2thIChlc2ltLiB0eWtrw6R5c3RlbiBtw6TDpHLDpClcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImhpZGVfdXNlcl9zdGF0c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQaWlsb3RhIGvDpHl0dMOkamllbiBzdGF0aXN0aWlra2EgKGVzaW0uIHNldXJhYWppZW4gbcOkw6Ryw6QpXCJdKX07Zm4uc291cmNlPVwiUGlpbG90YSBrw6R5dHTDpGppZW4gc3RhdGlzdGlpa2thIChlc2ltLiBzZXVyYWFqaWVuIG3DpMOkcsOkKVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiaW1wb3J0X2ZvbGxvd2Vyc19mcm9tX2FfY3N2X2ZpbGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHVvIHNldXJhdWtzZXQgQ1NWLXRpZWRvc3Rvc3RhXCJdKX07Zm4uc291cmNlPVwiVHVvIHNldXJhdWtzZXQgQ1NWLXRpZWRvc3Rvc3RhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJpbXBvcnRfdGhlbWVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHVvIHRhbGxlbm5ldHR1IHRlZW1hXCJdKX07Zm4uc291cmNlPVwiVHVvIHRhbGxlbm5ldHR1IHRlZW1hXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJpbnB1dFJhZGl1c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTecO2dHTDtmtlbnTDpHRcIl0pfTtmbi5zb3VyY2U9XCJTecO2dHTDtmtlbnTDpHRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImNoZWNrYm94UmFkaXVzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZhbGludGFsYWF0aWtvdFwiXSl9O2ZuLnNvdXJjZT1cIlZhbGludGFsYWF0aWtvdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiaW5zdGFuY2VfZGVmYXVsdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIG5hbWVkOiBfbmFtZWQgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCIob2xldHVzOiBcIiwgX2ludGVycG9sYXRlKF9uYW1lZChcInZhbHVlXCIpKSwgXCIpXCJdKX07Zm4uc291cmNlPVwiKG9sZXR1czoge3ZhbHVlfSlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImluc3RhbmNlX2RlZmF1bHRfc2ltcGxlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIihvbGV0dXMpXCJdKX07Zm4uc291cmNlPVwiKG9sZXR1cylcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImludGVyZmFjZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLw6R5dHTDtmxpaXR0eW3DpFwiXSl9O2ZuLnNvdXJjZT1cIkvDpHl0dMO2bGlpdHR5bcOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJpbnRlcmZhY2VMYW5ndWFnZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLw6R5dHTDtmxpaXR0eW3DpG4ga2llbGlcIl0pfTtmbi5zb3VyY2U9XCJLw6R5dHTDtmxpaXR0eW3DpG4ga2llbGlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImludmFsaWRfdGhlbWVfaW1wb3J0ZWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHVvdHUgdGFsbGVubmV0dHUgdGVlbWEgb24gZXDDpGtlbHBvLCBtdXV0b2tzaWEgZWkgdGVodHkgbnlreWlzZWVuIHRlZW1hYXNpLlwiXSl9O2ZuLnNvdXJjZT1cIlR1b3R1IHRhbGxlbm5ldHR1IHRlZW1hIG9uIGVww6RrZWxwbywgbXV1dG9rc2lhIGVpIHRlaHR5IG55a3lpc2VlbiB0ZWVtYWFzaS5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImxpbWl0ZWRfYXZhaWxhYmlsaXR5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkVpIHNhYXRhdmlsbGEgc2VsYWltZXNzYXNpXCJdKX07Zm4uc291cmNlPVwiRWkgc2FhdGF2aWxsYSBzZWxhaW1lc3Nhc2lcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImxpbmtzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkxpbmtpdFwiXSl9O2ZuLnNvdXJjZT1cIkxpbmtpdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibG9ja19hY2NvdW50X2Rlc2NyaXB0aW9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZhaW4gZXJpa3NlZW4gaHl2w6Rrc3l0eXQga8OkeXR0w6Rqw6R0IHZvaXZhdCBzZXVyYXRhIHRpbGnDpHNpXCJdKX07Zm4uc291cmNlPVwiVmFpbiBlcmlrc2VlbiBoeXbDpGtzeXR5dCBrw6R5dHTDpGrDpHQgdm9pdmF0IHNldXJhdGEgdGlsacOkc2lcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImxvb3BfdmlkZW9cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVXVkZWxsZWVudG9pc3RhIHZpZGVvdFwiXSl9O2ZuLnNvdXJjZT1cIlV1ZGVsbGVlbnRvaXN0YSB2aWRlb3RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImxvb3BfdmlkZW9fc2lsZW50X29ubHlcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVXVkZWxsZWVudG9pc3RhIGFpbm9hc3RhYW4gw6TDpG5ldHTDtm3DpHQgdmlkZW90IChWaWRlby1cXFwiZ2lmZml0XFxcIilcIl0pfTtmbi5zb3VyY2U9XCJVdWRlbGxlZW50b2lzdGEgYWlub2FzdGFhbiDDpMOkbmV0dMO2bcOkdCB2aWRlb3QgKFZpZGVvLVxcXCJnaWZmaXRcXFwiKVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicGxheV92aWRlb3NfaW5fbW9kYWxcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVG9pc3RhIHZpZGVvdCBtb2RhYWxpc3NhXCJdKX07Zm4uc291cmNlPVwiVG9pc3RhIHZpZGVvdCBtb2RhYWxpc3NhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ1c2VfY29udGFpbl9maXRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiw4Rsw6QgcmFqYWEgbGlpdHRlaXTDpCBlc2lrYXRzZWx1c3NhXCJdKX07Zm4uc291cmNlPVwiw4Rsw6QgcmFqYWEgbGlpdHRlaXTDpCBlc2lrYXRzZWx1c3NhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJuYW1lXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk5pbWlcIl0pfTtmbi5zb3VyY2U9XCJOaW1pXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJuYW1lX2Jpb1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJOaW1pIGphIGt1dmF1c1wiXSl9O2ZuLnNvdXJjZT1cIk5pbWkgamEga3V2YXVzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJuZXdfcGFzc3dvcmRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVXVzaSBzYWxhc2FuYVwiXSl9O2ZuLnNvdXJjZT1cIlV1c2kgc2FsYXNhbmFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm5vdGlmaWNhdGlvbl92aXNpYmlsaXR5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIklsbW9pdHVzdGVuIG7DpGt5dnl5c1wiXSl9O2ZuLnNvdXJjZT1cIklsbW9pdHVzdGVuIG7DpGt5dnl5c1wiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibm90aWZpY2F0aW9uX3Zpc2liaWxpdHlfZm9sbG93c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTZXVyYXVrc2V0XCJdKX07Zm4uc291cmNlPVwiU2V1cmF1a3NldFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibm90aWZpY2F0aW9uX3Zpc2liaWxpdHlfbGlrZXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHlra8OkeWtzZXRcIl0pfTtmbi5zb3VyY2U9XCJUeWtrw6R5a3NldFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibm90aWZpY2F0aW9uX3Zpc2liaWxpdHlfbWVudGlvbnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTWFpbmlubmF0XCJdKX07Zm4uc291cmNlPVwiTWFpbmlubmF0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub3RpZmljYXRpb25fdmlzaWJpbGl0eV9yZXBlYXRzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRvaXN0b3RcIl0pfTtmbi5zb3VyY2U9XCJUb2lzdG90XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub3RpZmljYXRpb25fdmlzaWJpbGl0eV9lbW9qaV9yZWFjdGlvbnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUmVha3Rpb3RcIl0pfTtmbi5zb3VyY2U9XCJSZWFrdGlvdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibm9fcmljaF90ZXh0X2Rlc2NyaXB0aW9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIsOEbMOkIG7DpHl0w6QgdGVrc3RpbiBtdW90b2lsdWFcIl0pfTtmbi5zb3VyY2U9XCLDhGzDpCBuw6R5dMOkIHRla3N0aW4gbXVvdG9pbHVhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJoaWRlX25ldHdvcmtfZGVzY3JpcHRpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiw4Rsw6QgbsOkeXTDpCBzZXVyYXVrc2lhbmkgdGFpIHNldXJhYWppYW5pXCJdKX07Zm4uc291cmNlPVwiw4Rsw6QgbsOkeXTDpCBzZXVyYXVrc2lhbmkgdGFpIHNldXJhYWppYW5pXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJuc2Z3X2NsaWNrdGhyb3VnaFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQaWlsb3RhIE5TRlcgbGlpdHRlZXQga2xpa2thdWtzZW4gdGFha3NlXCJdKX07Zm4uc291cmNlPVwiUGlpbG90YSBOU0ZXIGxpaXR0ZWV0IGtsaWtrYXVrc2VuIHRhYWtzZVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwib2F1dGhfdG9rZW5zXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk9BdXRoLW1lcmtpdFwiXSl9O2ZuLnNvdXJjZT1cIk9BdXRoLW1lcmtpdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidG9rZW5cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVG9rZW5cIl0pfTtmbi5zb3VyY2U9XCJUb2tlblwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicmVmcmVzaF90b2tlblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQw6Rpdml0w6QgdG9rZW5cIl0pfTtmbi5zb3VyY2U9XCJQw6Rpdml0w6QgdG9rZW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInZhbGlkX3VudGlsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZvaW1hc3NhIGFzdGlcIl0pfTtmbi5zb3VyY2U9XCJWb2ltYXNzYSBhc3RpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJyZXZva2VfdG9rZW5cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUGVydXV0YVwiXSl9O2ZuLnNvdXJjZT1cIlBlcnV1dGFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInBhbmVsUmFkaXVzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlJ1dWR1dFwiXSl9O2ZuLnNvdXJjZT1cIlJ1dWR1dFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicGF1c2Vfb25fdW5mb2N1c2VkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlB5c8OkeXTDpCBhdXRvbWFhdHRpbmVuIHZpZXN0aWVuIG7DpHl0dMO2IHbDpGxpbGVoZGVuIG9sbGVzc2EgcG9pcyBmb2t1a3Nlc3RhXCJdKX07Zm4uc291cmNlPVwiUHlzw6R5dMOkIGF1dG9tYWF0dGluZW4gdmllc3RpZW4gbsOkeXR0w7YgdsOkbGlsZWhkZW4gb2xsZXNzYSBwb2lzIGZva3Vrc2VzdGFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInByZXNldHNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFsbWlpdCB0ZWVtYXRcIl0pfTtmbi5zb3VyY2U9XCJWYWxtaWl0IHRlZW1hdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicHJvZmlsZV9iYWNrZ3JvdW5kXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRhdXN0YWt1dmFcIl0pfTtmbi5zb3VyY2U9XCJUYXVzdGFrdXZhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwcm9maWxlX2Jhbm5lclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJKdWxpc3RlXCJdKX07Zm4uc291cmNlPVwiSnVsaXN0ZVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicHJvZmlsZV90YWJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUHJvZmlpbGlcIl0pfTtmbi5zb3VyY2U9XCJQcm9maWlsaVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicmFkaWlfaGVscFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJBc2V0YSByZXVub2plbiBwecO2cmlzdHlzIChwaWtzZWxlaW7DpClcIl0pfTtmbi5zb3VyY2U9XCJBc2V0YSByZXVub2plbiBwecO2cmlzdHlzIChwaWtzZWxlaW7DpClcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJlcGxpZXNfaW5fdGltZWxpbmVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS2Vza3VzdGVsdXQgYWlrYWphbmFsbGFcIl0pfTtmbi5zb3VyY2U9XCJLZXNrdXN0ZWx1dCBhaWthamFuYWxsYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicmVwbHlfdmlzaWJpbGl0eV9hbGxcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTsOkeXTDpCBrYWlra2kgdmFzdGF1a3NldFwiXSl9O2ZuLnNvdXJjZT1cIk7DpHl0w6Qga2Fpa2tpIHZhc3RhdWtzZXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJlcGx5X3Zpc2liaWxpdHlfZm9sbG93aW5nXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk7DpHl0w6QgdmFpbiB2YXN0YXVrc2V0IG1pbnVsbGUgdGFpIHNldXJhYW1pbGxlbmkga8OkeXR0w6RqaWxsZVwiXSl9O2ZuLnNvdXJjZT1cIk7DpHl0w6QgdmFpbiB2YXN0YXVrc2V0IG1pbnVsbGUgdGFpIHNldXJhYW1pbGxlbmkga8OkeXR0w6RqaWxsZVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicmVwbHlfdmlzaWJpbGl0eV9zZWxmXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk7DpHl0w6QgdmFpbiB2YXN0YXVrc2V0IG1pbnVsbGVcIl0pfTtmbi5zb3VyY2U9XCJOw6R5dMOkIHZhaW4gdmFzdGF1a3NldCBtaW51bGxlXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzYXZpbmdfZXJyXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZpcmhlIHRhbGxlbnRhZXNzYSBhc2V0dWtzaWFcIl0pfTtmbi5zb3VyY2U9XCJWaXJoZSB0YWxsZW50YWVzc2EgYXNldHVrc2lhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzYXZpbmdfb2tcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiQXNldHVrc2V0IHRhbGxlbm5ldHR1XCJdKX07Zm4uc291cmNlPVwiQXNldHVrc2V0IHRhbGxlbm5ldHR1XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzZWN1cml0eV90YWJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVGlldG90dXJ2YVwiXSl9O2ZuLnNvdXJjZT1cIlRpZXRvdHVydmFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInNjb3BlX2NvcHlcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS29waW9pIG7DpGt5dnl5c3JhamF1cyB2YXN0YXRlc3NhIChZa3NpdHlpc3ZpZXN0aXQgYWluYSBrb3Bpb2l2YXQpXCJdKX07Zm4uc291cmNlPVwiS29waW9pIG7DpGt5dnl5c3JhamF1cyB2YXN0YXRlc3NhIChZa3NpdHlpc3ZpZXN0aXQgYWluYSBrb3Bpb2l2YXQpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzZXRfbmV3X2F2YXRhclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJBc2V0YSB1dXNpIHByb2ZpaWxpa3V2YVwiXSl9O2ZuLnNvdXJjZT1cIkFzZXRhIHV1c2kgcHJvZmlpbGlrdXZhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzZXRfbmV3X3Byb2ZpbGVfYmFja2dyb3VuZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJBc2V0YSB1dXNpIHRhdXN0YWt1dmFcIl0pfTtmbi5zb3VyY2U9XCJBc2V0YSB1dXNpIHRhdXN0YWt1dmFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInNldF9uZXdfcHJvZmlsZV9iYW5uZXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiQXNldGEgdXVzaSBqdWxpc3RlXCJdKX07Zm4uc291cmNlPVwiQXNldGEgdXVzaSBqdWxpc3RlXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzZXR0aW5nc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJBc2V0dWtzZXRcIl0pfTtmbi5zb3VyY2U9XCJBc2V0dWtzZXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInN1YmplY3RfaW5wdXRfYWx3YXlzX3Nob3dcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTsOkeXTDpCBhaWhlLWtlbnR0w6RcIl0pfTtmbi5zb3VyY2U9XCJOw6R5dMOkIGFpaGUta2VudHTDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic3ViamVjdF9saW5lX2JlaGF2aW9yXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkFpaGUta2VudMOkbiBrb3Bpb2ludGlcIl0pfTtmbi5zb3VyY2U9XCJBaWhlLWtlbnTDpG4ga29waW9pbnRpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzdWJqZWN0X2xpbmVfZW1haWxcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS3V0ZW4gc8OkaGvDtnBvc3RpOiBcXFwicmU6IGFpaGVcXFwiXCJdKX07Zm4uc291cmNlPVwiS3V0ZW4gc8OkaGvDtnBvc3RpOiBcXFwicmU6IGFpaGVcXFwiXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzdWJqZWN0X2xpbmVfbWFzdG9kb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS29waW9pIHNlbGxhaXNlbmFhblwiXSl9O2ZuLnNvdXJjZT1cIktvcGlvaSBzZWxsYWlzZW5hYW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInN1YmplY3RfbGluZV9ub29wXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIsOEbMOkIGtvcGlvaVwiXSl9O2ZuLnNvdXJjZT1cIsOEbMOkIGtvcGlvaVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic3RvcF9naWZzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRvaXN0YSBnaWZmaXQgdmFpbiBrb2hkaXN0YWVzc2FcIl0pfTtmbi5zb3VyY2U9XCJUb2lzdGEgZ2lmZml0IHZhaW4ga29oZGlzdGFlc3NhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzdHJlYW1pbmdcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTsOkeXTDpCB1dWRldCB2aWVzdGl0IGF1dG9tYWF0dGlzZXN0aSBvbGxlc3Nhc2kgcnV1ZHVuIGh1aXB1bGxhXCJdKX07Zm4uc291cmNlPVwiTsOkeXTDpCB1dWRldCB2aWVzdGl0IGF1dG9tYWF0dGlzZXN0aSBvbGxlc3Nhc2kgcnV1ZHVuIGh1aXB1bGxhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ0ZXh0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRla3N0aVwiXSl9O2ZuLnNvdXJjZT1cIlRla3N0aVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidGhlbWVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVGVlbWFcIl0pfTtmbi5zb3VyY2U9XCJUZWVtYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidGhlbWVfaGVscFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLw6R5dMOkIGhla3NhZGVzaW1hYWxpdsOkcmVqw6QgbXVva2F0YWtzZXNpIHbDpHJpdGVlbWFhc2kuXCJdKX07Zm4uc291cmNlPVwiS8OkeXTDpCBoZWtzYWRlc2ltYWFsaXbDpHJlasOkIG11b2thdGFrc2VzaSB2w6RyaXRlZW1hYXNpLlwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidGhlbWVfaGVscF92Ml8xXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZvaXQgYXNldHRhYSB0aWV0dHlqZW4gb3NpZW4gdsOkcmluIHRhaSBsw6RwaW7DpGt5dnl5ZGVuIHTDpHl0dMOkbcOkbGzDpCB2YWxpbnRhbGFhdGlrb24sIGvDpHl0w6QgXFxcIlR5aGplbm7DpCBrYWlra2lcXFwiLW5hcHBpYSB0eWhqZW50w6TDpGtzZXNpIGthaWtlbi5cIl0pfTtmbi5zb3VyY2U9XCJWb2l0IGFzZXR0YWEgdGlldHR5amVuIG9zaWVuIHbDpHJpbiB0YWkgbMOkcGluw6RreXZ5eWRlbiB0w6R5dHTDpG3DpGxsw6QgdmFsaW50YWxhYXRpa29uLCBrw6R5dMOkIFxcXCJUeWhqZW5uw6Qga2Fpa2tpXFxcIi1uYXBwaWEgdHloamVudMOkw6Rrc2VzaSBrYWlrZW4uXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ0aGVtZV9oZWxwX3YyXzJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSWtvbml0IGtlbnR0aWVuIGFsbGEgb3ZhdCBrb250cmFzdGktaW5kaWthYXR0b3JlaXRhLCBsaXPDpHRpZXRvYSBrb2hkaXN0YW1hbGxhLiBLw6R5dHTDpGVzc8OkIGzDpHBpbsOka3l2eXl0dMOkIG5lIG7DpHl0dMOkdsOkdCBwYWhpbW1hbiBza2VuYWFyaW9uLlwiXSl9O2ZuLnNvdXJjZT1cIklrb25pdCBrZW50dGllbiBhbGxhIG92YXQga29udHJhc3RpLWluZGlrYWF0dG9yZWl0YSwgbGlzw6R0aWV0b2Ega29oZGlzdGFtYWxsYS4gS8OkeXR0w6Rlc3PDpCBsw6RwaW7DpGt5dnl5dHTDpCBuZSBuw6R5dHTDpHbDpHQgcGFoaW1tYW4gc2tlbmFhcmlvbi5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInRvb2x0aXBSYWRpdXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiT2hqZS0gdGFpIGh1b21pb3ZpZXN0aXRcIl0pfTtmbi5zb3VyY2U9XCJPaGplLSB0YWkgaHVvbWlvdmllc3RpdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidXNlcl9zZXR0aW5nc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLw6R5dHTDpGrDpG4gYXNldHVrc2V0XCJdKX07Zm4uc291cmNlPVwiS8OkeXR0w6Rqw6RuIGFzZXR1a3NldFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidmFsdWVzXCI6IHtcbiAgICAgIFwiZmFsc2VcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wicG9pcyBww6TDpGx0w6RcIl0pfTtmbi5zb3VyY2U9XCJwb2lzIHDDpMOkbHTDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJ0cnVlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcInDDpMOkbGzDpFwiXSl9O2ZuLnNvdXJjZT1cInDDpMOkbGzDpFwiO3JldHVybiBmbjt9KSgpXG4gICAgfSxcbiAgICBcImhpZGVfZm9sbG93c19kZXNjcmlwdGlvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCLDhGzDpCBuw6R5dMOkIGtldMOkIHNldXJhYW5cIl0pfTtmbi5zb3VyY2U9XCLDhGzDpCBuw6R5dMOkIGtldMOkIHNldXJhYW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInNob3dfbW9kZXJhdG9yX2JhZGdlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk7DpHl0w6QgTW9kZXJhYXR0b3JpLW1lcmtraSBwcm9maWlsaXNzYW5pXCJdKX07Zm4uc291cmNlPVwiTsOkeXTDpCBNb2RlcmFhdHRvcmktbWVya2tpIHByb2ZpaWxpc3NhbmlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInVzZVN0cmVhbWluZ0FwaVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWYXN0YWFub3RhIHZpZXN0aWVqw6QgamEgaWxtb2l0dWtzaWEgcmVhYWxpYWphc3NhXCJdKX07Zm4uc291cmNlPVwiVmFzdGFhbm90YSB2aWVzdGllasOkIGphIGlsbW9pdHVrc2lhIHJlYWFsaWFqYXNzYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibm90aWZpY2F0aW9uX3NldHRpbmdfZmlsdGVyc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTdW9kYXR0aW1ldFwiXSl9O2ZuLnNvdXJjZT1cIlN1b2RhdHRpbWV0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub3RpZmljYXRpb25fc2V0dGluZ19wcml2YWN5X29wdGlvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQaWlsb3RhIGzDpGhldHTDpGrDpCBqYSBzaXPDpGx0w7Ygc292ZWxsdWtzZW4gdWxrb3B1b2xpc2lzdGEgaWxtb2l0dWtzaXN0YVwiXSl9O2ZuLnNvdXJjZT1cIlBpaWxvdGEgbMOkaGV0dMOkasOkIGphIHNpc8OkbHTDtiBzb3ZlbGx1a3NlbiB1bGtvcHVvbGlzaXN0YSBpbG1vaXR1a3Npc3RhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJlbmFibGVfd2ViX3B1c2hfbm90aWZpY2F0aW9uc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJPdGEga8OkeXR0w7bDtm4gc292ZWxsdWtzZW4gdWxrb3B1b2xpc2V0IGlsbW9pdHVrc2V0XCJdKX07Zm4uc291cmNlPVwiT3RhIGvDpHl0dMO2w7ZuIHNvdmVsbHVrc2VuIHVsa29wdW9saXNldCBpbG1vaXR1a3NldFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiYXBwX25hbWVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU292ZWxsdWtzZW4gbmltaVwiXSl9O2ZuLnNvdXJjZT1cIlNvdmVsbHVrc2VuIG5pbWlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInNlY3VyaXR5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlR1cnZhbGxpc3V1c1wiXSl9O2ZuLnNvdXJjZT1cIlR1cnZhbGxpc3V1c1wiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibWZhXCI6IHtcbiAgICAgIFwib3RwXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk9UUFwiXSl9O2ZuLnNvdXJjZT1cIk9UUFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJzZXR1cF9vdHBcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiT1RQLWFzZXR1a3NldFwiXSl9O2ZuLnNvdXJjZT1cIk9UUC1hc2V0dWtzZXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwid2FpdF9wcmVfc2V0dXBfb3RwXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcImVzaWFzZXRldGFhbiBPVFA6dGFcIl0pfTtmbi5zb3VyY2U9XCJlc2lhc2V0ZXRhYW4gT1RQOnRhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcImNvbmZpcm1fYW5kX2VuYWJsZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJIeXbDpGtzeSBqYSBrw6R5dMOkIE9UUFwiXSl9O2ZuLnNvdXJjZT1cIkh5dsOka3N5IGphIGvDpHl0w6QgT1RQXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcInRpdGxlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk1vbml2YWloZXRvZGVubnVzXCJdKX07Zm4uc291cmNlPVwiTW9uaXZhaWhldG9kZW5udXNcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwiZ2VuZXJhdGVfbmV3X3JlY292ZXJ5X2NvZGVzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkx1byB1dWRldCBwYWxhdXR1c2tvb2RpdFwiXSl9O2ZuLnNvdXJjZT1cIkx1byB1dWRldCBwYWxhdXR1c2tvb2RpdFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJhdXRoZW50aWNhdGlvbl9tZXRob2RzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRvZGVubnVzXCJdKX07Zm4uc291cmNlPVwiVG9kZW5udXNcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwid2FybmluZ19vZl9nZW5lcmF0ZV9uZXdfY29kZXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTHVvZGVzc2FzaSB1dWRldCBwYWxhdXR1c2tvb2RpdCwgdmFuaGF0IGtvb2Rpc2kgbGFra2FhdmF0IHRvaW1pbWFzdGEuXCJdKX07Zm4uc291cmNlPVwiTHVvZGVzc2FzaSB1dWRldCBwYWxhdXR1c2tvb2RpdCwgdmFuaGF0IGtvb2Rpc2kgbGFra2FhdmF0IHRvaW1pbWFzdGEuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcInJlY292ZXJ5X2NvZGVzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBhbGF1dHVza29vZGl0LlwiXSl9O2ZuLnNvdXJjZT1cIlBhbGF1dHVza29vZGl0LlwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJ3YWl0aW5nX2FfcmVjb3ZlcnlfY29kZXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiT2RvdGV0YWFuIHBhbGF1dHVza29vZGVqYeKAplwiXSl9O2ZuLnNvdXJjZT1cIk9kb3RldGFhbiBwYWxhdXR1c2tvb2RlamHigKZcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwicmVjb3ZlcnlfY29kZXNfd2FybmluZ1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLaXJqb2l0YSBrb29kaXQgeWzDtnMgdGFpIHRhbGxlbm5hIG5lIHR1cnZhbGxpc2VzdGksIG11dXRlbiBldCBuw6RlIG5paXTDpCB1dWRlc3RhYW4uIEpvcyBldCB2b2kga8OkeXR0w6TDpCBtb25pdmFpaGV0b2Rlbm51c3RhIGphIHNpbnVsbGEgZWkgb2xlIHBhbGF1dHVza29vZGVqYSwgZXQgdm9pIGVuw6TDpCBraXJqYXV0dWEgc2lzw6TDpG4gdGlsaWxsZXNpLlwiXSl9O2ZuLnNvdXJjZT1cIktpcmpvaXRhIGtvb2RpdCB5bMO2cyB0YWkgdGFsbGVubmEgbmUgdHVydmFsbGlzZXN0aSwgbXV1dGVuIGV0IG7DpGUgbmlpdMOkIHV1ZGVzdGFhbi4gSm9zIGV0IHZvaSBrw6R5dHTDpMOkIG1vbml2YWloZXRvZGVubnVzdGEgamEgc2ludWxsYSBlaSBvbGUgcGFsYXV0dXNrb29kZWphLCBldCB2b2kgZW7DpMOkIGtpcmphdXR1YSBzaXPDpMOkbiB0aWxpbGxlc2kuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcInNjYW5cIjoge1xuICAgICAgICBcInRpdGxlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNrYW5uYWFcIl0pfTtmbi5zb3VyY2U9XCJTa2FubmFhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwic2VjcmV0X2NvZGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiQXZhaW5cIl0pfTtmbi5zb3VyY2U9XCJBdmFpblwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImRlc2NcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS8OkeXTDpCBtb25pdmFpaGV0b2Rlbm51cy1zb3ZlbGx1c3RhIHNrYW5uYWtrc2VzaSB0w6Rtw6RuIFFSLWtvb2RpbmcsIHRhaSBzecO2dMOkIGF2YWluOlwiXSl9O2ZuLnNvdXJjZT1cIkvDpHl0w6QgbW9uaXZhaWhldG9kZW5udXMtc292ZWxsdXN0YSBza2FubmFra3Nlc2kgdMOkbcOkbiBRUi1rb29kaW5nLCB0YWkgc3nDtnTDpCBhdmFpbjpcIjtyZXR1cm4gZm47fSkoKVxuICAgICAgfSxcbiAgICAgIFwidmVyaWZ5XCI6IHtcbiAgICAgICAgXCJkZXNjXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkt5dGtlw6Rrc2VzaSBww6TDpGxsZSBtb25pdmFpaGV0b2Rlbm51a3Nlbiwgc3nDtnTDpCBrb29kaSBtb25pdmFpaGV0b2Rlbm51c3NvdmVsbGtzZXN0YTpcIl0pfTtmbi5zb3VyY2U9XCJLeXRrZcOka3Nlc2kgcMOkw6RsbGUgbW9uaXZhaWhldG9kZW5udWtzZW4sIHN5w7Z0w6Qga29vZGkgbW9uaXZhaWhldG9kZW5udXNzb3ZlbGxrc2VzdGE6XCI7cmV0dXJuIGZuO30pKClcbiAgICAgIH1cbiAgICB9LFxuICAgIFwiYWxsb3dfZm9sbG93aW5nX21vdmVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU2FsbGkgYXV0b21hYXR0aW5lbiBzZXVyYWFtaW5lbiBrdW4ga8OkeXR0w6Rqw6Qgc2lpcnTDpMOkIHRpbGluc8OkXCJdKX07Zm4uc291cmNlPVwiU2FsbGkgYXV0b21hYXR0aW5lbiBzZXVyYWFtaW5lbiBrdW4ga8OkeXR0w6Rqw6Qgc2lpcnTDpMOkIHRpbGluc8OkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJibG9ja19leHBvcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRXN0b2plbiB2aWVudGlcIl0pfTtmbi5zb3VyY2U9XCJFc3RvamVuIHZpZW50aVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiYmxvY2tfZXhwb3J0X2J1dHRvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWaWUgZXN0b3NpIENTVi10aWVkb3N0b29uXCJdKX07Zm4uc291cmNlPVwiVmllIGVzdG9zaSBDU1YtdGllZG9zdG9vblwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiYmxvY2tfaW1wb3J0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkVzdG9qZW4gdHVvbnRpXCJdKX07Zm4uc291cmNlPVwiRXN0b2plbiB0dW9udGlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImJsb2NrX2ltcG9ydF9lcnJvclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWaXJoZSB0dW9kZXNzYSBlc3RvamFcIl0pfTtmbi5zb3VyY2U9XCJWaXJoZSB0dW9kZXNzYSBlc3RvamFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImJsb2Nrc19pbXBvcnRlZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJFc3RvdCB0dW90dSEgS8Okc2l0dGVseSB2aWUgaGV0a2VuLlwiXSl9O2ZuLnNvdXJjZT1cIkVzdG90IHR1b3R1ISBLw6RzaXR0ZWx5IHZpZSBoZXRrZW4uXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJibG9ja3NfdGFiXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkVzdG90XCJdKX07Zm4uc291cmNlPVwiRXN0b3RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImNoYW5nZV9lbWFpbFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWYWloZGEgc8OkaGvDtnBvc3Rpb3NvaXRlXCJdKX07Zm4uc291cmNlPVwiVmFpaGRhIHPDpGhrw7Zwb3N0aW9zb2l0ZVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiY2hhbmdlX2VtYWlsX2Vycm9yXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZpcmhlIHZhaWh0YWVzc2Egc8OkaGvDtnBvc3Rpb3NvaXRldHRhLlwiXSl9O2ZuLnNvdXJjZT1cIlZpcmhlIHZhaWh0YWVzc2Egc8OkaGvDtnBvc3Rpb3NvaXRldHRhLlwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiY2hhbmdlZF9lbWFpbFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTw6Roa8O2cG9zdGlvc29pdGUgdmFpaGRldHR1IVwiXSl9O2ZuLnNvdXJjZT1cIlPDpGhrw7Zwb3N0aW9zb2l0ZSB2YWloZGV0dHUhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJkb21haW5fbXV0ZXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU2l2dXRcIl0pfTtmbi5zb3VyY2U9XCJTaXZ1dFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiYXZhdGFyX3NpemVfaW5zdHJ1Y3Rpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU3Vvc2l0ZWx0dSB2w6RoaW1tw6Rpc2tva28gcHJvZmlpbGlrdXZpbGxlIG9uIDE1MHgxNTAgcGlrc2VsacOkLlwiXSl9O2ZuLnNvdXJjZT1cIlN1b3NpdGVsdHUgdsOkaGltbcOkaXNrb2tvIHByb2ZpaWxpa3V2aWxsZSBvbiAxNTB4MTUwIHBpa3NlbGnDpC5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImFjY2VudFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLb3Jvc3R1c1wiXSl9O2ZuLnNvdXJjZT1cIktvcm9zdHVzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJoaWRlX211dGVkX3Bvc3RzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBpaWxvdGEgbXlraXN0ZXR0eWplbiBrw6R5dHTDpGppZW4gdmllc3RpdFwiXSl9O2ZuLnNvdXJjZT1cIlBpaWxvdGEgbXlraXN0ZXR0eWplbiBrw6R5dHTDpGppZW4gdmllc3RpdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiaGlkZV9maWx0ZXJlZF9zdGF0dXNlc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQaWlsb3RhIG15a2lzdGV0eXQgdmllc3RpdFwiXSl9O2ZuLnNvdXJjZT1cIlBpaWxvdGEgbXlraXN0ZXR5dCB2aWVzdGl0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJpbXBvcnRfYmxvY2tzX2Zyb21fYV9jc3ZfZmlsZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUdW8gZXN0b3QgQ1NWLXRpZWRvc3Rvc3RhXCJdKX07Zm4uc291cmNlPVwiVHVvIGVzdG90IENTVi10aWVkb3N0b3N0YVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibm9fYmxvY2tzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkVpIGVzdG9qYVwiXSl9O2ZuLnNvdXJjZT1cIkVpIGVzdG9qYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibm9fbXV0ZXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRWkgbXlraXN0eWtzacOkXCJdKX07Zm4uc291cmNlPVwiRWkgbXlraXN0eWtzacOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub3RpZmljYXRpb25fdmlzaWJpbGl0eV9tb3Zlc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLw6R5dHTDpGppZW4gc2lpcnR5bWlzZXRcIl0pfTtmbi5zb3VyY2U9XCJLw6R5dHTDpGppZW4gc2lpcnR5bWlzZXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImhpZGVfZm9sbG93ZXJzX2Rlc2NyaXB0aW9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIsOEbMOkIG7DpHl0w6Qga2V0a8OkIHNldXJhYXZhdCBtaW51YVwiXSl9O2ZuLnNvdXJjZT1cIsOEbMOkIG7DpHl0w6Qga2V0a8OkIHNldXJhYXZhdCBtaW51YVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiaGlkZV9mb2xsb3dzX2NvdW50X2Rlc2NyaXB0aW9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIsOEbMOkIG7DpHl0w6Qgc2V1cmF1a3NpZW4gbcOkw6Ryw6TDpFwiXSl9O2ZuLnNvdXJjZT1cIsOEbMOkIG7DpHl0w6Qgc2V1cmF1a3NpZW4gbcOkw6Ryw6TDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiaGlkZV9mb2xsb3dlcnNfY291bnRfZGVzY3JpcHRpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiw4Rsw6QgbsOkeXTDpCBzZXVyYWFqaWVuIG3DpMOkcsOkw6RcIl0pfTtmbi5zb3VyY2U9XCLDhGzDpCBuw6R5dMOkIHNldXJhYWppZW4gbcOkw6Ryw6TDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic2hvd19hZG1pbl9iYWRnZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJOw6R5dMOkIFlsbMOkcGl0w6Rqw6QtbWVya2tpIHByb29maWxpc3NhbmlcIl0pfTtmbi5zb3VyY2U9XCJOw6R5dMOkIFlsbMOkcGl0w6Rqw6QtbWVya2tpIHByb29maWxpc3NhbmlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImF1dG9oaWRlX2Zsb2F0aW5nX3Bvc3RfYnV0dG9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBpaWxvdGEgVXVzaSBWaWVzdGkgLW5hcHBpIGF1dG9tYWF0dGlzZXN0aSAobW9iaWlsaSlcIl0pfTtmbi5zb3VyY2U9XCJQaWlsb3RhIFV1c2kgVmllc3RpIC1uYXBwaSBhdXRvbWFhdHRpc2VzdGkgKG1vYmlpbGkpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzZWFyY2hfdXNlcl90b19ibG9ja1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJIYWUgZXN0ZXR0w6R2acOkIGvDpHl0dMOkamnDpFwiXSl9O2ZuLnNvdXJjZT1cIkhhZSBlc3RldHTDpHZpw6Qga8OkeXR0w6RqacOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzZWFyY2hfdXNlcl90b19tdXRlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkhhZSBteWtpc3RldHTDpHZpw6Qga8OkeXR0w6RqacOkXCJdKX07Zm4uc291cmNlPVwiSGFlIG15a2lzdGV0dMOkdmnDpCBrw6R5dHTDpGppw6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm1pbmltYWxfc2NvcGVzX21vZGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiWWtzaW5rZXJ0YWlzdGEgbsOka3l2eXlkZW5yYWphdWtzZW4gdmFpaHRvZWhkb3RcIl0pfTtmbi5zb3VyY2U9XCJZa3NpbmtlcnRhaXN0YSBuw6RreXZ5eWRlbnJhamF1a3NlbiB2YWlodG9laGRvdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicG9zdF9zdGF0dXNfY29udGVudF90eXBlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlV1ZGVuIHZpZXN0aW4gc2lzw6RsbMO2biBtdW90b1wiXSl9O2ZuLnNvdXJjZT1cIlV1ZGVuIHZpZXN0aW4gc2lzw6RsbMO2biBtdW90b1wiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidXNlcl9tdXRlc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLw6R5dHTDpGrDpHRcIl0pfTtmbi5zb3VyY2U9XCJLw6R5dHTDpGrDpHRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInVzZVN0cmVhbWluZ0FwaVdhcm5pbmdcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiKEtva2VlbGxpbmVuKVwiXSl9O2ZuLnNvdXJjZT1cIihLb2tlZWxsaW5lbilcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInR5cGVfZG9tYWluc190b19tdXRlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkV0c2kgbXlraXN0ZXR0w6R2acOkIHNpdnVzdG9qYVwiXSl9O2ZuLnNvdXJjZT1cIkV0c2kgbXlraXN0ZXR0w6R2acOkIHNpdnVzdG9qYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidXBsb2FkX2FfcGhvdG9cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTGF0YWEga3V2YVwiXSl9O2ZuLnNvdXJjZT1cIkxhdGFhIGt1dmFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZ1blwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJIdXBpXCJdKX07Zm4uc291cmNlPVwiSHVwaVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZ3JlZW50ZXh0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk1lZW1pbnVvbGV0XCJdKX07Zm4uc291cmNlPVwiTWVlbWludW9sZXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm5vdGlmaWNhdGlvbnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSWxtb2l0dWtzZXRcIl0pfTtmbi5zb3VyY2U9XCJJbG1vaXR1a3NldFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic3R5bGVcIjoge1xuICAgICAgXCJzd2l0Y2hlclwiOiB7XG4gICAgICAgIFwic2F2ZV9sb2FkX2hpbnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiXFxcIlPDpGlseXTDpFxcXCIgYXNldHVrc2V0IHPDpGlseXR0w6R2w6R0IHTDpGxsw6QgaGV0a2VsbMOkIGFzZXRldHV0IGFzZXR1a3NldCB2YWxpdHRhZXNzYSB0YWkgbGFkYXRlc3NhIHRlZW1hYSwgc2UgbXnDtnMgdGFsbGVudGFhIGt5c2Vpc2V0IGFzZXR1a3NldCB2aWVkZXNzw6QgdGVlbWFhLiBLdW4ga2Fpa2tpIGxhYXRpa290IG92YXQgdHloasOkbsOkLCB2aWV0eSB0ZWVtYSB0YWxsZW50YWEga2Fpa2VuLlwiXSl9O2ZuLnNvdXJjZT1cIlxcXCJTw6RpbHl0w6RcXFwiIGFzZXR1a3NldCBzw6RpbHl0dMOkdsOkdCB0w6RsbMOkIGhldGtlbGzDpCBhc2V0ZXR1dCBhc2V0dWtzZXQgdmFsaXR0YWVzc2EgdGFpIGxhZGF0ZXNzYSB0ZWVtYWEsIHNlIG15w7ZzIHRhbGxlbnRhYSBreXNlaXNldCBhc2V0dWtzZXQgdmllZGVzc8OkIHRlZW1hYS4gS3VuIGthaWtraSBsYWF0aWtvdCBvdmF0IHR5aGrDpG7DpCwgdmlldHkgdGVlbWEgdGFsbGVudGFhIGthaWtlbi5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJoZWxwXCI6IHtcbiAgICAgICAgICBcIm9sZGVyX3ZlcnNpb25faW1wb3J0ZWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHVvbWFzaSB0aWVkb3N0byBvbiBsdW90dSB2YW5oZW1tYWxsYSB2ZXJzaW9sbGEuXCJdKX07Zm4uc291cmNlPVwiVHVvbWFzaSB0aWVkb3N0byBvbiBsdW90dSB2YW5oZW1tYWxsYSB2ZXJzaW9sbGEuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgXCJmZV91cGdyYWRlZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQbGVyb21hRkU6biB0ZWVtYXVzIHDDpGl2aXRldHR5IHZlcnNpb3DDpGl2aXR5a3NlbiB5aHRleWRlc3PDpC5cIl0pfTtmbi5zb3VyY2U9XCJQbGVyb21hRkU6biB0ZWVtYXVzIHDDpGl2aXRldHR5IHZlcnNpb3DDpGl2aXR5a3NlbiB5aHRleWRlc3PDpC5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgICBcIm1pZ3JhdGlvbl9zbmFwc2hvdF9va1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWYXJtdXVkZW4gdnVva3NpIHRlZW1hbiBrYWFwcGF1cyBsYWRhdHR1LiBWb2l0IGtvaXR0YWEgbGFkYXRhIHRlZW1hbiBzaXPDpGxsw7ZuLlwiXSl9O2ZuLnNvdXJjZT1cIlZhcm11dWRlbiB2dW9rc2kgdGVlbWFuIGthYXBwYXVzIGxhZGF0dHUuIFZvaXQga29pdHRhYSBsYWRhdGEgdGVlbWFuIHNpc8OkbGzDtm4uXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgXCJtaWdyYXRpb25fbmFwc2hvdF9nb25lXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkpvc3RhaW4gc3l5c3TDpCB0ZWVtYW4ga2FhcHBhdXMgcHV1dHR1dSwga2Fpa2tpIGFzaWF0IGVpdsOkdCB2w6RsdHTDpG3DpHR0w6QgbsOkeXTDpCBvaWtlYWx0YS5cIl0pfTtmbi5zb3VyY2U9XCJKb3N0YWluIHN5eXN0w6QgdGVlbWFuIGthYXBwYXVzIHB1dXR0dXUsIGthaWtraSBhc2lhdCBlaXbDpHQgdsOkbHR0w6Rtw6R0dMOkIG7DpHl0w6Qgb2lrZWFsdGEuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgXCJzbmFwc2hvdF9zb3VyY2VfbWlzbWF0Y2hcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmVyc2lvdCBlaXbDpHQgdMOkc23DpMOkOiB0b2Rlbm7DpGvDtmlzZXN0aSB2ZXJzaW8gdmFpaGRldHR1IHZhbmhlbXBhYW4gamEgcMOkaXZpdGV0dHkgdXVkZXN0YWFuLCBqb3MgdmFpaGRvaXQgdGVlbWFhIHZhbmhhbGxhIHZlcnNpb2xsYSwgc2ludW4gdHVsaXNpIGvDpHl0dMOkw6QgdmFuaGFhIHZlcnNpb3RhLCBtdXV0b2luIHV1dHRhLlwiXSl9O2ZuLnNvdXJjZT1cIlZlcnNpb3QgZWl2w6R0IHTDpHNtw6TDpDogdG9kZW5uw6Rrw7Zpc2VzdGkgdmVyc2lvIHZhaWhkZXR0dSB2YW5oZW1wYWFuIGphIHDDpGl2aXRldHR5IHV1ZGVzdGFhbiwgam9zIHZhaWhkb2l0IHRlZW1hYSB2YW5oYWxsYSB2ZXJzaW9sbGEsIHNpbnVuIHR1bGlzaSBrw6R5dHTDpMOkIHZhbmhhYSB2ZXJzaW90YSwgbXV1dG9pbiB1dXR0YS5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgICBcInVwZ3JhZGVkX2Zyb21fdjJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUGxlcm9tYUZFIG9uIHDDpGl2aXRldHR5LCB0ZWVtYXNpIHNhYXR0YWEgbsOkeXR0w6TDpCBlcmlsYWlzZWx0YSBrdWluIG11aXN0YXQuXCJdKX07Zm4uc291cmNlPVwiUGxlcm9tYUZFIG9uIHDDpGl2aXRldHR5LCB0ZWVtYXNpIHNhYXR0YWEgbsOkeXR0w6TDpCBlcmlsYWlzZWx0YSBrdWluIG11aXN0YXQuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgXCJ2Ml9pbXBvcnRlZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUdW9tYXNpIHRpZWRvc3RvIG9uIGx1b3R1IHZhbmhlbW1hbGxhIHZlcnNpb2xsYS4gWWh0ZWVuc29waXZ1dXMgZWkgdsOkbHR0w6Rtw6R0dMOkIG9sZSB0w6R5ZGVsbGluZW4uXCJdKX07Zm4uc291cmNlPVwiVHVvbWFzaSB0aWVkb3N0byBvbiBsdW90dSB2YW5oZW1tYWxsYSB2ZXJzaW9sbGEuIFlodGVlbnNvcGl2dXVzIGVpIHbDpGx0dMOkbcOkdHTDpCBvbGUgdMOkeWRlbGxpbmVuLlwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICAgIFwiZnV0dXJlX3ZlcnNpb25faW1wb3J0ZWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHVvbWFzaSB0aWVkb3N0byBvbiBsdW90dSB1dWRlbW1hbGxhIHZlcnNpb2xsYS5cIl0pfTtmbi5zb3VyY2U9XCJUdW9tYXNpIHRpZWRvc3RvIG9uIGx1b3R1IHV1ZGVtbWFsbGEgdmVyc2lvbGxhLlwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICAgIFwic25hcHNob3RfcHJlc2VudFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUZWVtYW4ga2FhcHBhdXMgbGFkYXR0dSwgam90ZW4ga2Fpa2tpIGFydm90IG92YXQgeWxpa2lyam9pdGV0dHUuIFZvaXQgc2VuIHNpamFhbiBsYWRhdGEgdGVlbWFuIHNpc8OkbGzDtm4uXCJdKX07Zm4uc291cmNlPVwiVGVlbWFuIGthYXBwYXVzIGxhZGF0dHUsIGpvdGVuIGthaWtraSBhcnZvdCBvdmF0IHlsaWtpcmpvaXRldHR1LiBWb2l0IHNlbiBzaWphYW4gbGFkYXRhIHRlZW1hbiBzaXPDpGxsw7ZuLlwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICAgIFwic25hcHNob3RfbWlzc2luZ1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUZWVtYW4ga2FhcHBhdXN0YSBlaSB0aWVkb3N0b3NzYSwgam90ZW4gc2Ugdm9pIG7DpHl0dMOkw6QgZXJpbGFpc2VsdGEga3VpbiBzdXVubml0ZWx0dS5cIl0pfTtmbi5zb3VyY2U9XCJUZWVtYW4ga2FhcHBhdXN0YSBlaSB0aWVkb3N0b3NzYSwgam90ZW4gc2Ugdm9pIG7DpHl0dMOkw6QgZXJpbGFpc2VsdGEga3VpbiBzdXVubml0ZWx0dS5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgICBcImZlX2Rvd25ncmFkZWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUGxlcm9tYUZFOm4gdmVyc2lvIHZhaWh0dW51dCB2YW5oZW1wYWFuLlwiXSl9O2ZuLnNvdXJjZT1cIlBsZXJvbWFGRTpuIHZlcnNpbyB2YWlodHVudXQgdmFuaGVtcGFhbi5cIjtyZXR1cm4gZm47fSkoKVxuICAgICAgICB9LFxuICAgICAgICBcImtlZXBfY29sb3JcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU8OkaWx5dMOkIHbDpHJpdFwiXSl9O2ZuLnNvdXJjZT1cIlPDpGlseXTDpCB2w6RyaXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJrZWVwX3NoYWRvd3NcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU8OkaWx5dMOkIHZhcmpvdFwiXSl9O2ZuLnNvdXJjZT1cIlPDpGlseXTDpCB2YXJqb3RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJrZWVwX29wYWNpdHlcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU8OkaWx5dMOkIGzDpHBpbsOka3l2eXlzXCJdKX07Zm4uc291cmNlPVwiU8OkaWx5dMOkIGzDpHBpbsOka3l2eXlzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwia2VlcF9yb3VuZG5lc3NcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU8OkaWx5dMOkIHB5w7ZyaXN0eXNcIl0pfTtmbi5zb3VyY2U9XCJTw6RpbHl0w6QgcHnDtnJpc3R5c1wiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImtlZXBfZm9udHNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU8OkaWx5dMOkIGZvbnRpdFwiXSl9O2ZuLnNvdXJjZT1cIlPDpGlseXTDpCBmb250aXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJyZXNldFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQYWxhdXRhXCJdKX07Zm4uc291cmNlPVwiUGFsYXV0YVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImNsZWFyX2FsbFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUeWhqZW5uw6Qga2Fpa2tpXCJdKX07Zm4uc291cmNlPVwiVHloamVubsOkIGthaWtraVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImNsZWFyX29wYWNpdHlcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHloamVubsOkIGzDpHBpbsOka3l2eXlzXCJdKX07Zm4uc291cmNlPVwiVHloamVubsOkIGzDpHBpbsOka3l2eXlzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwibG9hZF90aGVtZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMYXRhYSB0ZWVtYVwiXSl9O2ZuLnNvdXJjZT1cIkxhdGFhIHRlZW1hXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwia2VlcF9hc19pc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQaWTDpCBzZWxsYWlzZW5hYW5cIl0pfTtmbi5zb3VyY2U9XCJQaWTDpCBzZWxsYWlzZW5hYW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJ1c2Vfc25hcHNob3RcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFuaGFcIl0pfTtmbi5zb3VyY2U9XCJWYW5oYVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInVzZV9zb3VyY2VcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVXVzaVwiXSl9O2ZuLnNvdXJjZT1cIlV1c2lcIjtyZXR1cm4gZm47fSkoKVxuICAgICAgfSxcbiAgICAgIFwiYWR2YW5jZWRfY29sb3JzXCI6IHtcbiAgICAgICAgXCJzZWxlY3RlZFBvc3RcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFsaXR0dSB2aWVzdGlcIl0pfTtmbi5zb3VyY2U9XCJWYWxpdHR1IHZpZXN0aVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcIl90YWJfbGFiZWxcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRWRpc3R5bnl0XCJdKX07Zm4uc291cmNlPVwiRWRpc3R5bnl0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwiYWxlcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFyb2l0dWtzZW4gdGF1c3RhXCJdKX07Zm4uc291cmNlPVwiVmFyb2l0dWtzZW4gdGF1c3RhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwiYWxlcnRfZXJyb3JcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmlyaGVcIl0pfTtmbi5zb3VyY2U9XCJWaXJoZVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImFsZXJ0X3dhcm5pbmdcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFyb2l0dXNcIl0pfTtmbi5zb3VyY2U9XCJWYXJvaXR1c1wiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImFsZXJ0X25ldXRyYWxcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTmV1dHJhYWxpXCJdKX07Zm4uc291cmNlPVwiTmV1dHJhYWxpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwicG9zdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWaWVzdGl0L0vDpHl0dMOkamllbiBrdXZhdWtzZXRcIl0pfTtmbi5zb3VyY2U9XCJWaWVzdGl0L0vDpHl0dMOkamllbiBrdXZhdWtzZXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJiYWRnZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJNZXJraW4gdGF1c3RhXCJdKX07Zm4uc291cmNlPVwiTWVya2luIHRhdXN0YVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImJhZGdlX25vdGlmaWNhdGlvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJJbG1vaXR1c1wiXSl9O2ZuLnNvdXJjZT1cIklsbW9pdHVzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwicGFuZWxfaGVhZGVyXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlJ1dWR1biBvdHNpa2tvXCJdKX07Zm4uc291cmNlPVwiUnV1ZHVuIG90c2lra29cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJ0b3BfYmFyXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIllsw6RwYWxra2lcIl0pfTtmbi5zb3VyY2U9XCJZbMOkcGFsa2tpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwiYm9yZGVyc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJSZXVuYXRcIl0pfTtmbi5zb3VyY2U9XCJSZXVuYXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJidXR0b25zXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk5hcGl0XCJdKX07Zm4uc291cmNlPVwiTmFwaXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJpbnB1dHNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU3nDtnR0w7ZrZW50w6R0XCJdKX07Zm4uc291cmNlPVwiU3nDtnR0w7ZrZW50w6R0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwiZmFpbnRfdGV4dFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJIw6Rpdnl0ZXR0eSB0ZWtzdGlcIl0pfTtmbi5zb3VyY2U9XCJIw6Rpdnl0ZXR0eSB0ZWtzdGlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJ1bmRlcmxheVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUYXVzdGFwZWl0ZVwiXSl9O2ZuLnNvdXJjZT1cIlRhdXN0YXBlaXRlXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwicG9sbFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCLDhMOkbmVzdHlrc2VuIGt1dmFhamFcIl0pfTtmbi5zb3VyY2U9XCLDhMOkbmVzdHlrc2VuIGt1dmFhamFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJpY29uc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJJa29uaXRcIl0pfTtmbi5zb3VyY2U9XCJJa29uaXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJoaWdobGlnaHRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS29yb3N0ZXR1dCBlbGVtZW50aXRcIl0pfTtmbi5zb3VyY2U9XCJLb3Jvc3RldHV0IGVsZW1lbnRpdFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInByZXNzZWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUGFpbmV0dHVcIl0pfTtmbi5zb3VyY2U9XCJQYWluZXR0dVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInNlbGVjdGVkTWVudVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWYWxpa29uIHZhbGludGFcIl0pfTtmbi5zb3VyY2U9XCJWYWxpa29uIHZhbGludGFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJkaXNhYmxlZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQb2lzIGvDpHl0w7ZzdMOkXCJdKX07Zm4uc291cmNlPVwiUG9pcyBrw6R5dMO2c3TDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInRvZ2dsZWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS3l0a2V0dHlcIl0pfTtmbi5zb3VyY2U9XCJLeXRrZXR0eVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInRhYnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVsOkbGlsZWhkZXRcIl0pfTtmbi5zb3VyY2U9XCJWw6RsaWxlaGRldFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInBvcG92ZXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHnDtmthbHV2aW5raXQsIHZhbGlrb3QsIHBvbm5haGR1c3ZpZXN0aXRcIl0pfTtmbi5zb3VyY2U9XCJUecO2a2FsdXZpbmtpdCwgdmFsaWtvdCwgcG9ubmFoZHVzdmllc3RpdFwiO3JldHVybiBmbjt9KSgpXG4gICAgICB9LFxuICAgICAgXCJjb21tb25cIjoge1xuICAgICAgICBcImNvbG9yXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlbDpHJpXCJdKX07Zm4uc291cmNlPVwiVsOkcmlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJvcGFjaXR5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkzDpHBpbsOka3l2eXlzXCJdKX07Zm4uc291cmNlPVwiTMOkcGluw6RreXZ5eXNcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJjb250cmFzdFwiOiB7XG4gICAgICAgICAgXCJsZXZlbFwiOiB7XG4gICAgICAgICAgICBcImFhYVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJzYWF2dXR0YWEgQUFBLXRhc29uIChzdW9zaXRlbHR1KVwiXSl9O2ZuLnNvdXJjZT1cInNhYXZ1dHRhYSBBQUEtdGFzb24gKHN1b3NpdGVsdHUpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgICBcImFhXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcInNhYXZ1dHRhYSBBQS10YXNvbiAobWluaW1pKVwiXSl9O2ZuLnNvdXJjZT1cInNhYXZ1dHRhYSBBQS10YXNvbiAobWluaW1pKVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICAgICAgXCJiYWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiZWkgc2FhdnV0YSBtaXTDpMOkbiBoZWxwcG9rw6R5dHTDtmlzeXlzc3Vvc2l0dWtzaWFcIl0pfTtmbi5zb3VyY2U9XCJlaSBzYWF2dXRhIG1pdMOkw6RuIGhlbHBwb2vDpHl0dMO2aXN5eXNzdW9zaXR1a3NpYVwiO3JldHVybiBmbjt9KSgpXG4gICAgICAgICAgfSxcbiAgICAgICAgICBcImhpbnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBuYW1lZDogX25hbWVkIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS29udHJhc3Rpc3VoZGUgb24gXCIsIF9pbnRlcnBvbGF0ZShfbmFtZWQoXCJyYXRpb1wiKSksIFwiLCBzZSBcIiwgX2ludGVycG9sYXRlKF9uYW1lZChcImxldmVsXCIpKSwgXCIgXCIsIF9pbnRlcnBvbGF0ZShfbmFtZWQoXCJjb250ZXh0XCIpKV0pfTtmbi5zb3VyY2U9XCJLb250cmFzdGlzdWhkZSBvbiB7cmF0aW99LCBzZSB7bGV2ZWx9IHtjb250ZXh0fVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICAgIFwiY29udGV4dFwiOiB7XG4gICAgICAgICAgICBcIjE4cHRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wic3V1cmVsbGEgKDE4cHQrKSB0ZWtzdGlsbMOkXCJdKX07Zm4uc291cmNlPVwic3V1cmVsbGEgKDE4cHQrKSB0ZWtzdGlsbMOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgICBcInRleHRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1widGVrc3RpbGzDpFwiXSl9O2ZuLnNvdXJjZT1cInRla3N0aWxsw6RcIjtyZXR1cm4gZm47fSkoKVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIFwiY29tbW9uX2NvbG9yc1wiOiB7XG4gICAgICAgIFwiX3RhYl9sYWJlbFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJZbGVpbmVuXCJdKX07Zm4uc291cmNlPVwiWWxlaW5lblwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcIm1haW5cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiWWxlaXNldCB2w6RyaXRcIl0pfTtmbi5zb3VyY2U9XCJZbGVpc2V0IHbDpHJpdFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImZvcmVncm91bmRfaGludFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMw7Z5ZMOkdCBcXFwiRWRpc3R5bnl0XFxcIi12w6RsaWxlaGRlbHTDpCB0YXJrZW1tYXQgYXNldHVrc2V0XCJdKX07Zm4uc291cmNlPVwiTMO2eWTDpHQgXFxcIkVkaXN0eW55dFxcXCItdsOkbGlsZWhkZWx0w6QgdGFya2VtbWF0IGFzZXR1a3NldFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInJnYm9cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSWtvbml0LCBrb3Jvc3R1a3NldCwgbWVya2l0XCJdKX07Zm4uc291cmNlPVwiSWtvbml0LCBrb3Jvc3R1a3NldCwgbWVya2l0XCI7cmV0dXJuIGZuO30pKClcbiAgICAgIH0sXG4gICAgICBcInNoYWRvd3NcIjoge1xuICAgICAgICBcImZpbHRlcl9oaW50XCI6IHtcbiAgICAgICAgICBcImFsd2F5c19kcm9wX3NoYWRvd1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIGxpc3Q6IF9saXN0IH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFyb2l0dXMsIHTDpG3DpCB2YXJqbyBrw6R5dHTDpMOkIGFpbmEgXCIsIF9pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwiIGt1biBzZWxhaW4gdHVrZWUgc2l0w6QuXCJdKX07Zm4uc291cmNlPVwiVmFyb2l0dXMsIHTDpG3DpCB2YXJqbyBrw6R5dHTDpMOkIGFpbmEgezB9IGt1biBzZWxhaW4gdHVrZWUgc2l0w6QuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgXCJhdmF0YXJfaW5zZXRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSHVvbS4gc2lzZW5uZXR0eWplbiBqYSBlaS1zaXNlbm5ldHR5amVuIHZhcmpvamVuIHloZGlzdGVsbcOkdCBzYWF0dGF2YXQgbHVvZGEgZWktb2RvdGV0dHVqYSBsb3BwdXR1bG9rc2lhIGzDpHBpbsOka3l2aWxsw6QgcHJvZmlpbGlrdXZpbGxhLlwiXSl9O2ZuLnNvdXJjZT1cIkh1b20uIHNpc2VubmV0dHlqZW4gamEgZWktc2lzZW5uZXR0eWplbiB2YXJqb2plbiB5aGRpc3RlbG3DpHQgc2FhdHRhdmF0IGx1b2RhIGVpLW9kb3RldHR1amEgbG9wcHV0dWxva3NpYSBsw6RwaW7DpGt5dmlsbMOkIHByb2ZpaWxpa3V2aWxsYS5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgICBcImRyb3Bfc2hhZG93X3N5bnRheFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIGxpc3Q6IF9saXN0IH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW19pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwiIGVpIHR1ZSBcIiwgX2ludGVycG9sYXRlKF9saXN0KDEpKSwgXCIgcGFyYW1ldHJpYSBqYSBcIiwgX2ludGVycG9sYXRlKF9saXN0KDIpKSwgXCIgYXZhaW5zYW5hYS5cIl0pfTtmbi5zb3VyY2U9XCJ7MH0gZWkgdHVlIHsxfSBwYXJhbWV0cmlhIGphIHsyfSBhdmFpbnNhbmFhLlwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICAgIFwic3ByZWFkX3plcm9cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFyam90IGpvaWRlbiBsZXZpdHlzID4gMCBuw6R5dHTDpHbDpHQgc2FtYWx0YSBrdWluIHNlIG9saXNpIG5vbGxhXCJdKX07Zm4uc291cmNlPVwiVmFyam90IGpvaWRlbiBsZXZpdHlzID4gMCBuw6R5dHTDpHbDpHQgc2FtYWx0YSBrdWluIHNlIG9saXNpIG5vbGxhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgXCJpbnNldF9jbGFzc2ljXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTaXNlbm5ldHl0IHZhcmpvdCBrw6R5dHTDpHbDpHQgXCIsIF9pbnRlcnBvbGF0ZShfbGlzdCgwKSldKX07Zm4uc291cmNlPVwiU2lzZW5uZXR5dCB2YXJqb3Qga8OkeXR0w6R2w6R0IHswfVwiO3JldHVybiBmbjt9KSgpXG4gICAgICAgIH0sXG4gICAgICAgIFwiY29tcG9uZW50c1wiOiB7XG4gICAgICAgICAgXCJidXR0b25QcmVzc2VkSG92ZXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTmFwcGkgKHBhaW5ldHR1IGphIGtvaGRpc3RldHR1KVwiXSl9O2ZuLnNvdXJjZT1cIk5hcHBpIChwYWluZXR0dSBqYSBrb2hkaXN0ZXR0dSlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgICBcInBhbmVsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlJ1dXR1XCJdKX07Zm4uc291cmNlPVwiUnV1dHVcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgICBcInBhbmVsSGVhZGVyXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlJ1dWR1biBvdHNpa2tvXCJdKX07Zm4uc291cmNlPVwiUnV1ZHVuIG90c2lra29cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgICBcInRvcEJhclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJZbMOkcGFsa2tpXCJdKX07Zm4uc291cmNlPVwiWWzDpHBhbGtraVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICAgIFwiYXZhdGFyXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlByb2ZpaWxpa3V2YSAocHJvZmlpbGluw6RreW3DpHNzw6QpXCJdKX07Zm4uc291cmNlPVwiUHJvZmlpbGlrdXZhIChwcm9maWlsaW7DpGt5bcOkc3PDpClcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgICBcImF2YXRhclN0YXR1c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQcm9maWlsaWt1dmEgKHZpZXN0aW4geWh0eWVkZXNzw6QpXCJdKX07Zm4uc291cmNlPVwiUHJvZmlpbGlrdXZhICh2aWVzdGluIHlodHllZGVzc8OkKVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICAgIFwicG9wdXBcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUG9ubmFoZHVzdmllc3RpdCBqYSB0ecO2a2FsdXZpbmtpdFwiXSl9O2ZuLnNvdXJjZT1cIlBvbm5haGR1c3ZpZXN0aXQgamEgdHnDtmthbHV2aW5raXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgICBcImJ1dHRvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJOYXBwaVwiXSl9O2ZuLnNvdXJjZT1cIk5hcHBpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgXCJidXR0b25Ib3ZlclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJOYXBwaSAoa29oZGlzdHVzKVwiXSl9O2ZuLnNvdXJjZT1cIk5hcHBpIChrb2hkaXN0dXMpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgXCJidXR0b25QcmVzc2VkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk5hcHBpIChwYWluZXR0dSlcIl0pfTtmbi5zb3VyY2U9XCJOYXBwaSAocGFpbmV0dHUpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgXCJpbnB1dFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTecO2dHTDtmtlbnR0w6RcIl0pfTtmbi5zb3VyY2U9XCJTecO2dHTDtmtlbnR0w6RcIjtyZXR1cm4gZm47fSkoKVxuICAgICAgICB9LFxuICAgICAgICBcImhpbnRWM1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIGxpc3Q6IF9saXN0IH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVm9pdCBrw6R5dHTDpMOkIFwiLCBfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiBtZXJraW50w6TDpCB2YXJqb2lsbGUga8OkeXR0w6TDpGtzZXNpIHbDpHJpw6QgdG9pc2VzdGEgYXNldHVrc2VzdGEuXCJdKX07Zm4uc291cmNlPVwiVm9pdCBrw6R5dHTDpMOkIHswfSBtZXJraW50w6TDpCB2YXJqb2lsbGUga8OkeXR0w6TDpGtzZXNpIHbDpHJpw6QgdG9pc2VzdGEgYXNldHVrc2VzdGEuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwiX3RhYl9sYWJlbFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWYWxvIGphIHZhcmpvc3R1c1wiXSl9O2ZuLnNvdXJjZT1cIlZhbG8gamEgdmFyam9zdHVzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwiY29tcG9uZW50XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIktvbXBvbmVudHRpXCJdKX07Zm4uc291cmNlPVwiS29tcG9uZW50dGlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJvdmVycmlkZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJZbGlraXJqb2l0YVwiXSl9O2ZuLnNvdXJjZT1cIllsaWtpcmpvaXRhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwic2hhZG93X2lkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbmFtZWQ6IF9uYW1lZCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZhcmpvICNcIiwgX2ludGVycG9sYXRlKF9uYW1lZChcInZhbHVlXCIpKV0pfTtmbi5zb3VyY2U9XCJWYXJqbyAje3ZhbHVlfVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImJsdXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU3VtZW5udXNcIl0pfTtmbi5zb3VyY2U9XCJTdW1lbm51c1wiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInNwcmVhZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMZXZpdHlzXCJdKX07Zm4uc291cmNlPVwiTGV2aXR5c1wiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImluc2V0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNpc2VubnlzXCJdKX07Zm4uc291cmNlPVwiU2lzZW5ueXNcIjtyZXR1cm4gZm47fSkoKVxuICAgICAgfSxcbiAgICAgIFwiZm9udHNcIjoge1xuICAgICAgICBcImhlbHBcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFsaXRzZSBmb250dGkga8OkeXR0w7ZsaWl0dHltw6RsbGUuIFxcXCJPbWFcXFwiLXZhaWh0b2hkb2xsZSBvbiBzecO2dGV0dMOkdsOkIGZvbnRpbiBuaW1pIHRhcmthbGxlZW4gc2FtYW5hIGt1aW4gc2Ugb24gasOkcmplc3RlbG3DpHNzw6RzaS5cIl0pfTtmbi5zb3VyY2U9XCJWYWxpdHNlIGZvbnR0aSBrw6R5dHTDtmxpaXR0eW3DpGxsZS4gXFxcIk9tYVxcXCItdmFpaHRvaGRvbGxlIG9uIHN5w7Z0ZXR0w6R2w6QgZm9udGluIG5pbWkgdGFya2FsbGVlbiBzYW1hbmEga3VpbiBzZSBvbiBqw6RyamVzdGVsbcOkc3PDpHNpLlwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcIl90YWJfbGFiZWxcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRm9udGl0XCJdKX07Zm4uc291cmNlPVwiRm9udGl0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwiY29tcG9uZW50c1wiOiB7XG4gICAgICAgICAgXCJpbnRlcmZhY2VcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS8OkeXR0w7ZsaWl0dHltw6RcIl0pfTtmbi5zb3VyY2U9XCJLw6R5dHTDtmxpaXR0eW3DpFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICAgIFwiaW5wdXRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU3nDtnR0w7ZrZW50w6R0XCJdKX07Zm4uc291cmNlPVwiU3nDtnR0w7ZrZW50w6R0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgICAgXCJwb3N0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZpZXN0aW4gdGVrc3RpXCJdKX07Zm4uc291cmNlPVwiVmllc3RpbiB0ZWtzdGlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgICBcInBvc3RDb2RlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRhc2F2w6RsaXN0ZXR0eSB0ZWtzdGkgdmllc3Rpc3PDpFwiXSl9O2ZuLnNvdXJjZT1cIlRhc2F2w6RsaXN0ZXR0eSB0ZWtzdGkgdmllc3Rpc3PDpFwiO3JldHVybiBmbjt9KSgpXG4gICAgICAgIH0sXG4gICAgICAgIFwiZmFtaWx5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkZvbnRpbiBuaW1pXCJdKX07Zm4uc291cmNlPVwiRm9udGluIG5pbWlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJzaXplXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIktva28gKHBpa3NlbGVpc3PDpClcIl0pfTtmbi5zb3VyY2U9XCJLb2tvIChwaWtzZWxlaXNzw6QpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwid2VpZ2h0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBhaW5vc3R1cyAocGFrc3V1cylcIl0pfTtmbi5zb3VyY2U9XCJQYWlub3N0dXMgKHBha3N1dXMpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwiY3VzdG9tXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk9tYVwiXSl9O2ZuLnNvdXJjZT1cIk9tYVwiO3JldHVybiBmbjt9KSgpXG4gICAgICB9LFxuICAgICAgXCJwcmV2aWV3XCI6IHtcbiAgICAgICAgXCJpbnB1dFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUdWxpbiBqdXVyaSBzYXVuYXN0YS5cIl0pfTtmbi5zb3VyY2U9XCJUdWxpbiBqdXVyaSBzYXVuYXN0YS5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJoZWFkZXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRXNpa2F0c2VsdVwiXSl9O2ZuLnNvdXJjZT1cIkVzaWthdHNlbHVcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJjb250ZW50XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNpc8OkbHTDtlwiXSl9O2ZuLnNvdXJjZT1cIlNpc8OkbHTDtlwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImVycm9yXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkVzaW1lcmtraXZpcmhlXCJdKX07Zm4uc291cmNlPVwiRXNpbWVya2tpdmlyaGVcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJidXR0b25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTmFwcGlcIl0pfTtmbi5zb3VyY2U9XCJOYXBwaVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInRleHRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlbDpGjDpG4gbGlzw6TDpCBcIiwgX2ludGVycG9sYXRlKF9saXN0KDApKSwgXCIgamEgXCIsIF9pbnRlcnBvbGF0ZShfbGlzdCgxKSldKX07Zm4uc291cmNlPVwiVsOkaMOkbiBsaXPDpMOkIHswfSBqYSB7MX1cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJtb25vXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcInNpc8OkbHTDtsOkXCJdKX07Zm4uc291cmNlPVwic2lzw6RsdMO2w6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJmYWludF9saW5rXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIm1hbnVhYWxpXCJdKX07Zm4uc291cmNlPVwibWFudWFhbGlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJmaW5lX3ByaW50XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMdWUgbWVpZMOkbiBcIiwgX2ludGVycG9sYXRlKF9saXN0KDApKSwgXCIgdmFpa2thIGh1dmluIHZ1b2tzaSFcIl0pfTtmbi5zb3VyY2U9XCJMdWUgbWVpZMOkbiB7MH0gdmFpa2thIGh1dmluIHZ1b2tzaSFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJoZWFkZXJfZmFpbnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVMOkbcOkIG9uIE9LXCJdKX07Zm4uc291cmNlPVwiVMOkbcOkIG9uIE9LXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwiY2hlY2tib3hcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiT2xlbiBzaWxtw6RpbGx5dCBrw6R5dHTDtmVoZG90XCJdKX07Zm4uc291cmNlPVwiT2xlbiBzaWxtw6RpbGx5dCBrw6R5dHTDtmVoZG90XCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwibGlua1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJraXZhIGxpbmtraVwiXSl9O2ZuLnNvdXJjZT1cImtpdmEgbGlua2tpXCI7cmV0dXJuIGZuO30pKClcbiAgICAgIH0sXG4gICAgICBcInJhZGlpXCI6IHtcbiAgICAgICAgXCJfdGFiX2xhYmVsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlB5w7ZyaXN0eXNcIl0pfTtmbi5zb3VyY2U9XCJQecO2cmlzdHlzXCI7cmV0dXJuIGZuO30pKClcbiAgICAgIH1cbiAgICB9LFxuICAgIFwiZW50ZXJfY3VycmVudF9wYXNzd29yZF90b19jb25maXJtXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlN5w7Z0w6QgbnlreWluZW4gc2FsYXNhbmFzaSB0b2RlbnRhYWtzZXNpIGhlbmtpbMO2bGxpc3l5dGVzaVwiXSl9O2ZuLnNvdXJjZT1cIlN5w7Z0w6QgbnlreWluZW4gc2FsYXNhbmFzaSB0b2RlbnRhYWtzZXNpIGhlbmtpbMO2bGxpc3l5dGVzaVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZGlzY292ZXJhYmxlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNhbGxpIHRpbGlzaSBuw6RreXZ5eXMgaGFrdWtvbmVpc2lpbiBqYSBtdWloaW4gcGFsdmVsdWloaW5cIl0pfTtmbi5zb3VyY2U9XCJTYWxsaSB0aWxpc2kgbsOka3l2eXlzIGhha3Vrb25laXNpaW4gamEgbXVpaGluIHBhbHZlbHVpaGluXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwYWRfZW1vamlcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVsOkbGlzdMOkIGVtb2ppdCB2w6RsaWx5w7ZubmVpbGzDpCBsaXPDpHRlc3PDpHNpIG5paXTDpCB2YWxpdHNpbWVzdGFcIl0pfTtmbi5zb3VyY2U9XCJWw6RsaXN0w6QgZW1vaml0IHbDpGxpbHnDtm5uZWlsbMOkIGxpc8OkdGVzc8Okc2kgbmlpdMOkIHZhbGl0c2ltZXN0YVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibXV0ZXNfdGFiXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk15a2lzdHlrc2V0XCJdKX07Zm4uc291cmNlPVwiTXlraXN0eWtzZXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm5ld19lbWFpbFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJVdXNpIHPDpGhrw7Zwb3N0aW9zb2l0ZVwiXSl9O2ZuLnNvdXJjZT1cIlV1c2kgc8OkaGvDtnBvc3Rpb3NvaXRlXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub3RpZmljYXRpb25fc2V0dGluZ19wcml2YWN5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIllrc2l0eWlzeXlzXCJdKX07Zm4uc291cmNlPVwiWWtzaXR5aXN5eXNcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm5vdGlmaWNhdGlvbl9tdXRlc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJKb3MgZXQgaGFsdWEgaWxtb2l0dWtzaWEgam9sdGFpbiBrw6R5dHTDpGrDpGx0w6QsIGvDpHl0w6QgbXlraXN0eXN0w6QuXCJdKX07Zm4uc291cmNlPVwiSm9zIGV0IGhhbHVhIGlsbW9pdHVrc2lhIGpvbHRhaW4ga8OkeXR0w6Rqw6RsdMOkLCBrw6R5dMOkIG15a2lzdHlzdMOkLlwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibm90aWZpY2F0aW9uX2Jsb2Nrc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJFc3TDpG1pbmVuIHB5c8OkeXR0w6TDpCBrYWlra2kgaWxtb2l0dWtzZXQga8OkeXR0w6Rqw6RsdMOkIGphIHBvaXN0YWEgc2V1cmF1a3Nlbi5cIl0pfTtmbi5zb3VyY2U9XCJFc3TDpG1pbmVuIHB5c8OkeXR0w6TDpCBrYWlra2kgaWxtb2l0dWtzZXQga8OkeXR0w6Rqw6RsdMOkIGphIHBvaXN0YWEgc2V1cmF1a3Nlbi5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInZlcnNpb25cIjoge1xuICAgICAgXCJ0aXRsZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWZXJzaW9cIl0pfTtmbi5zb3VyY2U9XCJWZXJzaW9cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwiYmFja2VuZF92ZXJzaW9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBhbHZlbGltZW4gdmVyc2lvXCJdKX07Zm4uc291cmNlPVwiUGFsdmVsaW1lbiB2ZXJzaW9cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwiZnJvbnRlbmRfdmVyc2lvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLw6R5dHTDtmxpaXR0eW3DpG4gdmVyc2lvXCJdKX07Zm4uc291cmNlPVwiS8OkeXR0w7ZsaWl0dHltw6RuIHZlcnNpb1wiO3JldHVybiBmbjt9KSgpXG4gICAgfSxcbiAgICBcInJlc2V0X3Byb2ZpbGVfYmFja2dyb3VuZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJOb2xsYWEgdGF1c3Rha3V2YVwiXSl9O2ZuLnNvdXJjZT1cIk5vbGxhYSB0YXVzdGFrdXZhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJyZXNldF9iYWNrZ3JvdW5kX2NvbmZpcm1cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSGFsdWF0a28gdG9kZWxsYSBub2xsYXRhIHRhdXN0YWt1dmFuP1wiXSl9O2ZuLnNvdXJjZT1cIkhhbHVhdGtvIHRvZGVsbGEgbm9sbGF0YSB0YXVzdGFrdXZhbj9cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm11dGVzX2FuZF9ibG9ja3NcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTXlraXN0eWtzZXQgamEgRXN0b3RcIl0pfTtmbi5zb3VyY2U9XCJNeWtpc3R5a3NldCBqYSBFc3RvdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiYm90XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlTDpG3DpCBvbiBib3R0aXRpbGlcIl0pfTtmbi5zb3VyY2U9XCJUw6Rtw6Qgb24gYm90dGl0aWxpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwcm9maWxlX2ZpZWxkc1wiOiB7XG4gICAgICBcImxhYmVsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlByb2ZpaWxpbiBtZXRhdGllZG90XCJdKX07Zm4uc291cmNlPVwiUHJvZmlpbGluIG1ldGF0aWVkb3RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwiYWRkX2ZpZWxkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkxpc8Okw6Qga2VudHTDpFwiXSl9O2ZuLnNvdXJjZT1cIkxpc8Okw6Qga2VudHTDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJuYW1lXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk5pbWlcIl0pfTtmbi5zb3VyY2U9XCJOaW1pXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcInZhbHVlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNpc8OkbHTDtlwiXSl9O2ZuLnNvdXJjZT1cIlNpc8OkbHTDtlwiO3JldHVybiBmbjt9KSgpXG4gICAgfSxcbiAgICBcInJlc2V0X2F2YXRhclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJOb2xsYWEgcHJvZmlpbGlrdXZhXCJdKX07Zm4uc291cmNlPVwiTm9sbGFhIHByb2ZpaWxpa3V2YVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicmVzZXRfcHJvZmlsZV9iYW5uZXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTm9sbGFhIHByb2ZpaWxpbiB0YXVzdGFcIl0pfTtmbi5zb3VyY2U9XCJOb2xsYWEgcHJvZmlpbGluIHRhdXN0YVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicmVzZXRfYXZhdGFyX2NvbmZpcm1cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSGFsdWF0a28gdG9kZWxsYSBub2xsYXRhIHByb2ZpaWxpa3V2YW4/XCJdKX07Zm4uc291cmNlPVwiSGFsdWF0a28gdG9kZWxsYSBub2xsYXRhIHByb2ZpaWxpa3V2YW4/XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJyZXNldF9iYW5uZXJfY29uZmlybVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJIYWx1YXRrbyB0b2RlbGxhIG5vbGxhdGEgcHJvZmlpbGluIHRhdXN0YW4/XCJdKX07Zm4uc291cmNlPVwiSGFsdWF0a28gdG9kZWxsYSBub2xsYXRhIHByb2ZpaWxpbiB0YXVzdGFuP1wiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwidGltZVwiOiB7XG4gICAgXCJkYXlcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiBww6RpdsOkXCJdKX07Zm4uc291cmNlPVwiezB9IHDDpGl2w6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImRheXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiBww6RpdsOkw6RcIl0pfTtmbi5zb3VyY2U9XCJ7MH0gcMOkaXbDpMOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJkYXlfc2hvcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcInB2XCJdKX07Zm4uc291cmNlPVwiezB9cHZcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImRheXNfc2hvcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcInB2XCJdKX07Zm4uc291cmNlPVwiezB9cHZcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImhvdXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiB0dW50aVwiXSl9O2ZuLnNvdXJjZT1cInswfSB0dW50aVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiaG91cnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiB0dW50aWFcIl0pfTtmbi5zb3VyY2U9XCJ7MH0gdHVudGlhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJob3VyX3Nob3J0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbX2ludGVycG9sYXRlKF9saXN0KDApKSwgXCJ0XCJdKX07Zm4uc291cmNlPVwiezB9dFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiaG91cnNfc2hvcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcInRcIl0pfTtmbi5zb3VyY2U9XCJ7MH10XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJpbl9mdXR1cmVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiB0dWxldmFpc3V1ZGVzc2FcIl0pfTtmbi5zb3VyY2U9XCJ7MH0gdHVsZXZhaXN1dWRlc3NhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJpbl9wYXN0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbX2ludGVycG9sYXRlKF9saXN0KDApKSwgXCIgc2l0dGVuXCJdKX07Zm4uc291cmNlPVwiezB9IHNpdHRlblwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibWludXRlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbX2ludGVycG9sYXRlKF9saXN0KDApKSwgXCIgbWludXV0dGlcIl0pfTtmbi5zb3VyY2U9XCJ7MH0gbWludXV0dGlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm1pbnV0ZXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiBtaW51dXR0aWFcIl0pfTtmbi5zb3VyY2U9XCJ7MH0gbWludXV0dGlhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJtaW51dGVfc2hvcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIm1pblwiXSl9O2ZuLnNvdXJjZT1cInswfW1pblwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibWludXRlc19zaG9ydFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIGxpc3Q6IF9saXN0IH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW19pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwibWluXCJdKX07Zm4uc291cmNlPVwiezB9bWluXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJtb250aFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIGxpc3Q6IF9saXN0IH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW19pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwiIGt1dWthdXNpXCJdKX07Zm4uc291cmNlPVwiezB9IGt1dWthdXNpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJtb250aHNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiBrdXVrYXV0dGFcIl0pfTtmbi5zb3VyY2U9XCJ7MH0ga3V1a2F1dHRhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJtb250aF9zaG9ydFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIGxpc3Q6IF9saXN0IH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW19pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwia2tcIl0pfTtmbi5zb3VyY2U9XCJ7MH1ra1wiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibW9udGhzX3Nob3J0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbX2ludGVycG9sYXRlKF9saXN0KDApKSwgXCJra1wiXSl9O2ZuLnNvdXJjZT1cInswfWtrXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub3dcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wianV1cmkgbnl0XCJdKX07Zm4uc291cmNlPVwianV1cmkgbnl0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub3dfc2hvcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wibnl0XCJdKX07Zm4uc291cmNlPVwibnl0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzZWNvbmRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiBzZWt1bnRpXCJdKX07Zm4uc291cmNlPVwiezB9IHNla3VudGlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInNlY29uZHNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiBzZWt1bnRpYVwiXSl9O2ZuLnNvdXJjZT1cInswfSBzZWt1bnRpYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic2Vjb25kX3Nob3J0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbX2ludGVycG9sYXRlKF9saXN0KDApKSwgXCJzXCJdKX07Zm4uc291cmNlPVwiezB9c1wiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic2Vjb25kc19zaG9ydFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIGxpc3Q6IF9saXN0IH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW19pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwic1wiXSl9O2ZuLnNvdXJjZT1cInswfXNcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIndlZWtcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiB2aWlra29cIl0pfTtmbi5zb3VyY2U9XCJ7MH0gdmlpa2tvXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ3ZWVrc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIGxpc3Q6IF9saXN0IH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW19pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwiIHZpaWtrb2FcIl0pfTtmbi5zb3VyY2U9XCJ7MH0gdmlpa2tvYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwid2Vla19zaG9ydFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIGxpc3Q6IF9saXN0IH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW19pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwidmtcIl0pfTtmbi5zb3VyY2U9XCJ7MH12a1wiO3JldHVybiBmbjt9KSgpLFxuICAgIFwid2Vla3Nfc2hvcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcInZrXCJdKX07Zm4uc291cmNlPVwiezB9dmtcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInllYXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiB2dW9zaVwiXSl9O2ZuLnNvdXJjZT1cInswfSB2dW9zaVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwieWVhcnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcIiB2dW90dGFcIl0pfTtmbi5zb3VyY2U9XCJ7MH0gdnVvdHRhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ5ZWFyX3Nob3J0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbX2ludGVycG9sYXRlKF9saXN0KDApKSwgXCJ2XCJdKX07Zm4uc291cmNlPVwiezB9dlwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwieWVhcnNfc2hvcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtfaW50ZXJwb2xhdGUoX2xpc3QoMCkpLCBcInZcIl0pfTtmbi5zb3VyY2U9XCJ7MH12XCI7cmV0dXJuIGZuO30pKClcbiAgfSxcbiAgXCJ0aW1lbGluZVwiOiB7XG4gICAgXCJjb2xsYXBzZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTdWxqZVwiXSl9O2ZuLnNvdXJjZT1cIlN1bGplXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJjb252ZXJzYXRpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS2Vza3VzdGVsdVwiXSl9O2ZuLnNvdXJjZT1cIktlc2t1c3RlbHVcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImVycm9yX2ZldGNoaW5nXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZpcmhlIGxhZGF0ZXNzYSB2aWVzdGVqw6RcIl0pfTtmbi5zb3VyY2U9XCJWaXJoZSBsYWRhdGVzc2Egdmllc3RlasOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJsb2FkX29sZGVyXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkxhdGFhIHZhbmhlbXBpYSB2aWVzdGVqw6RcIl0pfTtmbi5zb3VyY2U9XCJMYXRhYSB2YW5oZW1waWEgdmllc3RlasOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub19yZXR3ZWV0X2hpbnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmllc3RpIGVpIG9sZSBqdWxraW5lbiwgZWlrw6Qgc2l0w6Qgdm9pIHRvaXN0YWFcIl0pfTtmbi5zb3VyY2U9XCJWaWVzdGkgZWkgb2xlIGp1bGtpbmVuLCBlaWvDpCBzaXTDpCB2b2kgdG9pc3RhYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicmVwZWF0ZWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1widG9pc3RpXCJdKX07Zm4uc291cmNlPVwidG9pc3RpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzaG93X25ld1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJOw6R5dMOkIHV1ZGV0XCJdKX07Zm4uc291cmNlPVwiTsOkeXTDpCB1dWRldFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidXBfdG9fZGF0ZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJBamFudGFzYWxsYVwiXSl9O2ZuLnNvdXJjZT1cIkFqYW50YXNhbGxhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub19tb3JlX3N0YXR1c2VzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkVpIGVuZW1ww6TDpCB2aWVzdGVqw6RcIl0pfTtmbi5zb3VyY2U9XCJFaSBlbmVtcMOkw6Qgdmllc3RlasOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJub19zdGF0dXNlc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJFaSB2aWVzdGVqw6RcIl0pfTtmbi5zb3VyY2U9XCJFaSB2aWVzdGVqw6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJlbG9hZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQw6Rpdml0w6RcIl0pfTtmbi5zb3VyY2U9XCJQw6Rpdml0w6RcIjtyZXR1cm4gZm47fSkoKVxuICB9LFxuICBcInN0YXR1c1wiOiB7XG4gICAgXCJmYXZvcml0ZXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHlra8OkeWtzZXRcIl0pfTtmbi5zb3VyY2U9XCJUeWtrw6R5a3NldFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicmVwZWF0c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUb2lzdG90XCJdKX07Zm4uc291cmNlPVwiVG9pc3RvdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZGVsZXRlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBvaXN0YVwiXSl9O2ZuLnNvdXJjZT1cIlBvaXN0YVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicGluXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIktpaW5uaXTDpCBwcm9maWlsaWlzaVwiXSl9O2ZuLnNvdXJjZT1cIktpaW5uaXTDpCBwcm9maWlsaWlzaVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidW5waW5cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUG9pc3RhIGtpaW5uaXR5c1wiXSl9O2ZuLnNvdXJjZT1cIlBvaXN0YSBraWlubml0eXNcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInBpbm5lZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLaWlubml0ZXR0eVwiXSl9O2ZuLnNvdXJjZT1cIktpaW5uaXRldHR5XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJkZWxldGVfY29uZmlybVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJIYWx1YXRrbyB2YXJtYXN0aSBwb3N0YWEgdmllc3Rpbj9cIl0pfTtmbi5zb3VyY2U9XCJIYWx1YXRrbyB2YXJtYXN0aSBwb3N0YWEgdmllc3Rpbj9cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJlcGx5X3RvXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZhc3RhdXNcIl0pfTtmbi5zb3VyY2U9XCJWYXN0YXVzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJyZXBsaWVzX2xpc3RcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmFzdGF1a3NldDpcIl0pfTtmbi5zb3VyY2U9XCJWYXN0YXVrc2V0OlwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibXV0ZV9jb252ZXJzYXRpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTXlraXN0w6Qga2Vza3VzdGVsdVwiXSl9O2ZuLnNvdXJjZT1cIk15a2lzdMOkIGtlc2t1c3RlbHVcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInVubXV0ZV9jb252ZXJzYXRpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUG9pc3RhIG15a2lzdHlzXCJdKX07Zm4uc291cmNlPVwiUG9pc3RhIG15a2lzdHlzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzdGF0dXNfdW5hdmFpbGFibGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmllc3RpIGVpIHNhYXRhdmlzc2FcIl0pfTtmbi5zb3VyY2U9XCJWaWVzdGkgZWkgc2FhdGF2aXNzYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiY29weV9saW5rXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIktvcGlvaSBsaW5ra2lcIl0pfTtmbi5zb3VyY2U9XCJLb3Bpb2kgbGlua2tpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJib29rbWFya1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMaXPDpMOkIGtpcmphbm1lcmtrZWloaW5cIl0pfTtmbi5zb3VyY2U9XCJMaXPDpMOkIGtpcmphbm1lcmtrZWloaW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInVuYm9va21hcmtcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUG9pc3RhIGtpcmphbm1lcmtlaXN0w6RcIl0pfTtmbi5zb3VyY2U9XCJQb2lzdGEga2lyamFubWVya2Vpc3TDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidGhyZWFkX211dGVkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIktlc2t1c3RlbHUgbXlraXN0ZXR0eVwiXSl9O2ZuLnNvdXJjZT1cIktlc2t1c3RlbHUgbXlraXN0ZXR0eVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidGhyZWFkX211dGVkX2FuZF93b3Jkc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCIsIHNpc8OkbHTDpMOkIHNhbmF0OlwiXSl9O2ZuLnNvdXJjZT1cIiwgc2lzw6RsdMOkw6Qgc2FuYXQ6XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzaG93X2Z1bGxfc3ViamVjdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJOw6R5dMOkIGtva28gb3RzaWtrb1wiXSl9O2ZuLnNvdXJjZT1cIk7DpHl0w6Qga29rbyBvdHNpa2tvXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJoaWRlX2Z1bGxfc3ViamVjdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQaWlsb3RhIGtva28gb3RzaWtrb1wiXSl9O2ZuLnNvdXJjZT1cIlBpaWxvdGEga29rbyBvdHNpa2tvXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzaG93X2NvbnRlbnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTsOkeXTDpCBzaXPDpGx0w7ZcIl0pfTtmbi5zb3VyY2U9XCJOw6R5dMOkIHNpc8OkbHTDtlwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiaGlkZV9jb250ZW50XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBpaWxvdGEgc2lzw6RsdMO2XCJdKX07Zm4uc291cmNlPVwiUGlpbG90YSBzaXPDpGx0w7ZcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInN0YXR1c19kZWxldGVkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBvaXN0ZXR0dSB2aWVzdGlcIl0pfTtmbi5zb3VyY2U9XCJQb2lzdGV0dHUgdmllc3RpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ5b3VcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiKHNpbsOkKVwiXSl9O2ZuLnNvdXJjZT1cIihzaW7DpClcIjtyZXR1cm4gZm47fSkoKVxuICB9LFxuICBcInVzZXJfY2FyZFwiOiB7XG4gICAgXCJhcHByb3ZlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkh5dsOka3N5XCJdKX07Zm4uc291cmNlPVwiSHl2w6Rrc3lcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImJsb2NrXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkVzdMOkXCJdKX07Zm4uc291cmNlPVwiRXN0w6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImJsb2NrZWRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRXN0ZXR0eSFcIl0pfTtmbi5zb3VyY2U9XCJFc3RldHR5IVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZGVueVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCLDhGzDpCBoeXbDpGtzeVwiXSl9O2ZuLnNvdXJjZT1cIsOEbMOkIGh5dsOka3N5XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJmb2xsb3dcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU2V1cmFhXCJdKX07Zm4uc291cmNlPVwiU2V1cmFhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJmb2xsb3dfc2VudFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQeXludMO2IGzDpGhldGV0dHkhXCJdKX07Zm4uc291cmNlPVwiUHl5bnTDtiBsw6RoZXRldHR5IVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZm9sbG93X3Byb2dyZXNzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlB5eWRldMOkw6Ru4oCmXCJdKX07Zm4uc291cmNlPVwiUHl5ZGV0w6TDpG7igKZcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZvbGxvd191bmZvbGxvd1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCLDhGzDpCBzZXVyYWFcIl0pfTtmbi5zb3VyY2U9XCLDhGzDpCBzZXVyYWFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZvbGxvd2Vlc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTZXVyYWFcIl0pfTtmbi5zb3VyY2U9XCJTZXVyYWFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZvbGxvd2Vyc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTZXVyYWFqYXRcIl0pfTtmbi5zb3VyY2U9XCJTZXVyYWFqYXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZvbGxvd2luZ1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTZXVyYWF0IVwiXSl9O2ZuLnNvdXJjZT1cIlNldXJhYXQhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJmb2xsb3dzX3lvdVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTZXVyYWEgc2ludWEhXCJdKX07Zm4uc291cmNlPVwiU2V1cmFhIHNpbnVhIVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiaXRzX3lvdVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTaW51biB0aWxpIVwiXSl9O2ZuLnNvdXJjZT1cIlNpbnVuIHRpbGkhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJtdXRlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk15a2lzdMOkXCJdKX07Zm4uc291cmNlPVwiTXlraXN0w6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm11dGVkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk15a2lzdGV0dHlcIl0pfTtmbi5zb3VyY2U9XCJNeWtpc3RldHR5XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwZXJfZGF5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcInDDpGl2w6Rzc8OkXCJdKX07Zm4uc291cmNlPVwicMOkaXbDpHNzw6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJlbW90ZV9mb2xsb3dcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU2V1cmFhIG11dWFsdGFcIl0pfTtmbi5zb3VyY2U9XCJTZXVyYWEgbXV1YWx0YVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic3RhdHVzZXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmllc3RpdFwiXSl9O2ZuLnNvdXJjZT1cIlZpZXN0aXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImhpZGRlblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQaWlsb3RldHR1XCJdKX07Zm4uc291cmNlPVwiUGlpbG90ZXR0dVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibWVkaWFcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTWVkaWFcIl0pfTtmbi5zb3VyY2U9XCJNZWRpYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiYmxvY2tfcHJvZ3Jlc3NcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRXN0ZXTDpMOkbuKAplwiXSl9O2ZuLnNvdXJjZT1cIkVzdGV0w6TDpG7igKZcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImFkbWluX21lbnVcIjoge1xuICAgICAgXCJncmFudF9hZG1pblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJBbm5hIFlsbMOkcGl0w7ZvaWtldWRldFwiXSl9O2ZuLnNvdXJjZT1cIkFubmEgWWxsw6RwaXTDtm9pa2V1ZGV0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcImZvcmNlX25zZndcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTWVya2l0c2Uga2Fpa2tpIHZpZXN0aXQgTlNGVzpuw6RcIl0pfTtmbi5zb3VyY2U9XCJNZXJraXRzZSBrYWlra2kgdmllc3RpdCBOU0ZXOm7DpFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJkaXNhYmxlX2FueV9zdWJzY3JpcHRpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRXN0w6Qga8OkeXR0w6Rqw6RuIHNldXJhYW1pbmVuXCJdKX07Zm4uc291cmNlPVwiRXN0w6Qga8OkeXR0w6Rqw6RuIHNldXJhYW1pbmVuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcIm1vZGVyYXRpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTW9kZXJhYXRpb1wiXSl9O2ZuLnNvdXJjZT1cIk1vZGVyYWF0aW9cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwicmV2b2tlX2FkbWluXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBvaXN0YSBZbGzDpHBpdMO2b2lrZXVkZXRcIl0pfTtmbi5zb3VyY2U9XCJQb2lzdGEgWWxsw6RwaXTDtm9pa2V1ZGV0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcImdyYW50X21vZGVyYXRvclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJBbm5hIE1vZGVyYWF0dG9yaW9pa2V1ZGV0XCJdKX07Zm4uc291cmNlPVwiQW5uYSBNb2RlcmFhdHRvcmlvaWtldWRldFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJyZXZva2VfbW9kZXJhdG9yXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBvaXN0YSBNb2RlcmFhdHRvcmlvaWtldWRldFwiXSl9O2ZuLnNvdXJjZT1cIlBvaXN0YSBNb2RlcmFhdHRvcmlvaWtldWRldFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJhY3RpdmF0ZV9hY2NvdW50XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkFrdGl2b2kgdGlsaVwiXSl9O2ZuLnNvdXJjZT1cIkFrdGl2b2kgdGlsaVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJkZWFjdGl2YXRlX2FjY291bnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRGVha3Rpdm9pIHRpbGlcIl0pfTtmbi5zb3VyY2U9XCJEZWFrdGl2b2kgdGlsaVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJkZWxldGVfYWNjb3VudFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQb2lzdGEgdGlsaVwiXSl9O2ZuLnNvdXJjZT1cIlBvaXN0YSB0aWxpXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcInN0cmlwX21lZGlhXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBvaXN0YSBtZWRpYSB2aWVzdGVpc3TDpFwiXSl9O2ZuLnNvdXJjZT1cIlBvaXN0YSBtZWRpYSB2aWVzdGVpc3TDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJmb3JjZV91bmxpc3RlZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQYWtvdGEgdmllc3RpdCBsaXN0YWFtYXR0b21pa3NpXCJdKX07Zm4uc291cmNlPVwiUGFrb3RhIHZpZXN0aXQgbGlzdGFhbWF0dG9taWtzaVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJzYW5kYm94XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBha290YSB2aWVzdGl0IHZhaW4gc2V1cmFhamlsbGVcIl0pfTtmbi5zb3VyY2U9XCJQYWtvdGEgdmllc3RpdCB2YWluIHNldXJhYWppbGxlXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcImRpc2FibGVfcmVtb3RlX3N1YnNjcmlwdGlvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJFc3TDpCBzZXVyYWFtaW5lbiB1bGtvcHVvbGlzaWx0YSBzaXZ1aWx0YVwiXSl9O2ZuLnNvdXJjZT1cIkVzdMOkIHNldXJhYW1pbmVuIHVsa29wdW9saXNpbHRhIHNpdnVpbHRhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcInF1YXJhbnRpbmVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRXN0w6Qga8OkeXR0w6Rqw6RuIHZpZXN0aW4gZmVkZXJvaXR1bWluZW5cIl0pfTtmbi5zb3VyY2U9XCJFc3TDpCBrw6R5dHTDpGrDpG4gdmllc3RpbiBmZWRlcm9pdHVtaW5lblwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJkZWxldGVfdXNlclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQb2lzdGEga8OkeXR0w6Rqw6RcIl0pfTtmbi5zb3VyY2U9XCJQb2lzdGEga8OkeXR0w6Rqw6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwiZGVsZXRlX3VzZXJfY29uZmlybWF0aW9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk9sZXRrbyBhaXZhbiB2YXJtYT8gVMOkdMOkIGVpIHZvaSBrdW1vdGEuXCJdKX07Zm4uc291cmNlPVwiT2xldGtvIGFpdmFuIHZhcm1hPyBUw6R0w6QgZWkgdm9pIGt1bW90YS5cIjtyZXR1cm4gZm47fSkoKVxuICAgIH0sXG4gICAgXCJmYXZvcml0ZXNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHlra8OkeWtzZXRcIl0pfTtmbi5zb3VyY2U9XCJUeWtrw6R5a3NldFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibWVudGlvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJNYWluaXRzZVwiXSl9O2ZuLnNvdXJjZT1cIk1haW5pdHNlXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJyZXBvcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSWxtaWFubmFcIl0pfTtmbi5zb3VyY2U9XCJJbG1pYW5uYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic3Vic2NyaWJlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRpbGFhXCJdKX07Zm4uc291cmNlPVwiVGlsYWFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInVuc3Vic2NyaWJlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBvaXN0YSB0aWxhdXNcIl0pfTtmbi5zb3VyY2U9XCJQb2lzdGEgdGlsYXVzXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ1bmJsb2NrXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBvaXN0YSBlc3RvXCJdKX07Zm4uc291cmNlPVwiUG9pc3RhIGVzdG9cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInVuYmxvY2tfcHJvZ3Jlc3NcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUG9pc3RldGFhbiBlc3RvYeKAplwiXSl9O2ZuLnNvdXJjZT1cIlBvaXN0ZXRhYW4gZXN0b2HigKZcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInVubXV0ZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQb2lzdGEgbXlraXN0eXNcIl0pfTtmbi5zb3VyY2U9XCJQb2lzdGEgbXlraXN0eXNcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInVubXV0ZV9wcm9ncmVzc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQb2lzdGV0YWFuIG15a2lzdHlzdMOk4oCmXCJdKX07Zm4uc291cmNlPVwiUG9pc3RldGFhbiBteWtpc3R5c3TDpOKAplwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibXV0ZV9wcm9ncmVzc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJNeWtpc3RldMOkw6Ru4oCmXCJdKX07Zm4uc291cmNlPVwiTXlraXN0ZXTDpMOkbuKAplwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiaGlkZV9yZXBlYXRzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBpaWxvdGEgdG9pc3RvdFwiXSl9O2ZuLnNvdXJjZT1cIlBpaWxvdGEgdG9pc3RvdFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic2hvd19yZXBlYXRzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk7DpHl0w6QgdG9pc3RvdFwiXSl9O2ZuLnNvdXJjZT1cIk7DpHl0w6QgdG9pc3RvdFwiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwidXNlcl9wcm9maWxlXCI6IHtcbiAgICBcInRpbWVsaW5lX3RpdGxlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkvDpHl0dMOkasOkbiBhaWthamFuYVwiXSl9O2ZuLnNvdXJjZT1cIkvDpHl0dMOkasOkbiBhaWthamFuYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicHJvZmlsZV9kb2VzX25vdF9leGlzdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUw6R0w6QgcHJvZmlpbGlhIGVpIG9sZS5cIl0pfTtmbi5zb3VyY2U9XCJUw6R0w6QgcHJvZmlpbGlhIGVpIG9sZS5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInByb2ZpbGVfbG9hZGluZ19lcnJvclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWaXJoZSBsYWRhdGVzc2EgcHJvZmlpbGlhLlwiXSl9O2ZuLnNvdXJjZT1cIlZpcmhlIGxhZGF0ZXNzYSBwcm9maWlsaWEuXCI7cmV0dXJuIGZuO30pKClcbiAgfSxcbiAgXCJ3aG9fdG9fZm9sbG93XCI6IHtcbiAgICBcIm1vcmVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTGlzw6TDpFwiXSl9O2ZuLnNvdXJjZT1cIkxpc8Okw6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIndob190b19mb2xsb3dcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU2V1cmF1c2VoZG90dWtzZXRcIl0pfTtmbi5zb3VyY2U9XCJTZXVyYXVzZWhkb3R1a3NldFwiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwidG9vbF90aXBcIjoge1xuICAgIFwibWVkaWFfdXBsb2FkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkxhdGFhIHRpZWRvc3RvXCJdKX07Zm4uc291cmNlPVwiTGF0YWEgdGllZG9zdG9cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJlcGVhdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUb2lzdGFcIl0pfTtmbi5zb3VyY2U9XCJUb2lzdGFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJlcGx5XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZhc3RhYVwiXSl9O2ZuLnNvdXJjZT1cIlZhc3RhYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZmF2b3JpdGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVHlra8Okw6RcIl0pfTtmbi5zb3VyY2U9XCJUeWtrw6TDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidXNlcl9zZXR0aW5nc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLw6R5dHTDpGrDpGFzZXR1a3NldFwiXSl9O2ZuLnNvdXJjZT1cIkvDpHl0dMOkasOkYXNldHVrc2V0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJhZGRfcmVhY3Rpb25cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTGlzw6TDpCBSZWFrdGlvXCJdKX07Zm4uc291cmNlPVwiTGlzw6TDpCBSZWFrdGlvXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJhY2NlcHRfZm9sbG93X3JlcXVlc3RcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSHl2w6Rrc3kgc2V1cmF1c3B5eW50w7ZcIl0pfTtmbi5zb3VyY2U9XCJIeXbDpGtzeSBzZXVyYXVzcHl5bnTDtlwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwicmVqZWN0X2ZvbGxvd19yZXF1ZXN0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkh5bGvDpMOkIHNldXJhdXNweXludMO2XCJdKX07Zm4uc291cmNlPVwiSHlsa8Okw6Qgc2V1cmF1c3B5eW50w7ZcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImJvb2ttYXJrXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIktpcmphbm1lcmtraVwiXSl9O2ZuLnNvdXJjZT1cIktpcmphbm1lcmtraVwiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwidXBsb2FkXCI6IHtcbiAgICBcImVycm9yXCI6IHtcbiAgICAgIFwiYmFzZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMYXRhdXMgZXDDpG9ubmlzdHVpLlwiXSl9O2ZuLnNvdXJjZT1cIkxhdGF1cyBlcMOkb25uaXN0dWkuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcImZpbGVfdG9vX2JpZ1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIG5hbWVkOiBfbmFtZWQgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUaWVkb3N0byBsaWlhbiBzdXVyaSBbXCIsIF9pbnRlcnBvbGF0ZShfbmFtZWQoXCJmaWxlc2l6ZVwiKSksIF9pbnRlcnBvbGF0ZShfbmFtZWQoXCJmaWxlc2l6ZXVuaXRcIikpLCBcIiAvIFwiLCBfaW50ZXJwb2xhdGUoX25hbWVkKFwiYWxsb3dlZHNpemVcIikpLCBfaW50ZXJwb2xhdGUoX25hbWVkKFwiYWxsb3dlZHNpemV1bml0XCIpKSwgXCJdXCJdKX07Zm4uc291cmNlPVwiVGllZG9zdG8gbGlpYW4gc3V1cmkgW3tmaWxlc2l6ZX17ZmlsZXNpemV1bml0fSAvIHthbGxvd2Vkc2l6ZX17YWxsb3dlZHNpemV1bml0fV1cIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwiZGVmYXVsdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJZcml0w6QgdXVkZXN0YWFuIG15w7ZoZW1taW5cIl0pfTtmbi5zb3VyY2U9XCJZcml0w6QgdXVkZXN0YWFuIG15w7ZoZW1taW5cIjtyZXR1cm4gZm47fSkoKVxuICAgIH0sXG4gICAgXCJmaWxlX3NpemVfdW5pdHNcIjoge1xuICAgICAgXCJCXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcInRhdnVhXCJdKX07Zm4uc291cmNlPVwidGF2dWFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwiS2lCXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcImt0XCJdKX07Zm4uc291cmNlPVwia3RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwiTWlCXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk10XCJdKX07Zm4uc291cmNlPVwiTXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwiR2lCXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkd0XCJdKX07Zm4uc291cmNlPVwiR3RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgIFwiVGlCXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlR0XCJdKX07Zm4uc291cmNlPVwiVHRcIjtyZXR1cm4gZm47fSkoKVxuICAgIH1cbiAgfSxcbiAgXCJhYm91dFwiOiB7XG4gICAgXCJtcmZcIjoge1xuICAgICAgXCJrZXl3b3JkXCI6IHtcbiAgICAgICAgXCJrZXl3b3JkX3BvbGljaWVzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkF2YWluc2FuYXPDpMOkbm7DtnRcIl0pfTtmbi5zb3VyY2U9XCJBdmFpbnNhbmFzw6TDpG5uw7Z0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwiZnRsX3JlbW92YWxcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUG9pc3RldHR1IFxcXCJLb2tvIFR1bm5ldHR1IFZlcmtvc3RvXFxcIiAtYWlrYWphbmFsdGFcIl0pfTtmbi5zb3VyY2U9XCJQb2lzdGV0dHUgXFxcIktva28gVHVubmV0dHUgVmVya29zdG9cXFwiIC1haWthamFuYWx0YVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInJlamVjdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJIeWxrw6TDpFwiXSl9O2ZuLnNvdXJjZT1cIkh5bGvDpMOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwicmVwbGFjZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLb3J2YWFcIl0pfTtmbi5zb3VyY2U9XCJLb3J2YWFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJpc19yZXBsYWNlZF9ieVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCLihpJcIl0pfTtmbi5zb3VyY2U9XCLihpJcIjtyZXR1cm4gZm47fSkoKVxuICAgICAgfSxcbiAgICAgIFwic2ltcGxlXCI6IHtcbiAgICAgICAgXCJhY2NlcHRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiSHl2w6Rrc3lcIl0pfTtmbi5zb3VyY2U9XCJIeXbDpGtzeVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInJlamVjdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJIeWxrw6TDpFwiXSl9O2ZuLnNvdXJjZT1cIkh5bGvDpMOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwicXVhcmFudGluZVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJLYXJhbnRlZW5pXCJdKX07Zm4uc291cmNlPVwiS2FyYW50ZWVuaVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImZ0bF9yZW1vdmFsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBvaXN0byBcXFwiS29rbyBUdW5uZXR0dSBWZXJrb3N0b1xcXCIgLWFpa2FqYW5hbHRhXCJdKX07Zm4uc291cmNlPVwiUG9pc3RvIFxcXCJLb2tvIFR1bm5ldHR1IFZlcmtvc3RvXFxcIiAtYWlrYWphbmFsdGFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJtZWRpYV9yZW1vdmFsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIk1lZGlhLXRpZWRvc3RvamVuIHBvaXN0b1wiXSl9O2ZuLnNvdXJjZT1cIk1lZGlhLXRpZWRvc3RvamVuIHBvaXN0b1wiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcInNpbXBsZV9wb2xpY2llc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJQYWx2ZWxpbmtvaHRhaXNldCBTw6TDpG5uw7Z0XCJdKX07Zm4uc291cmNlPVwiUGFsdmVsaW5rb2h0YWlzZXQgU8Okw6RubsO2dFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcImFjY2VwdF9kZXNjXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlTDpG3DpCBwYWx2ZWxpbiBoeXbDpGtzeXkgdmllc3RpdCB2YWluIHNldXJhYXZpbHRhIHBhbHZlbGltaWx0YTpcIl0pfTtmbi5zb3VyY2U9XCJUw6Rtw6QgcGFsdmVsaW4gaHl2w6Rrc3l5IHZpZXN0aXQgdmFpbiBzZXVyYWF2aWx0YSBwYWx2ZWxpbWlsdGE6XCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwicmVqZWN0X2Rlc2NcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVMOkbcOkIHBhbHZlbGluIGVpIGh5dsOka3N5IHZpZXN0ZWrDpCBzZXVyYWF2aWx0YSBwYWx2ZWxpbWlsdGE6XCJdKX07Zm4uc291cmNlPVwiVMOkbcOkIHBhbHZlbGluIGVpIGh5dsOka3N5IHZpZXN0ZWrDpCBzZXVyYWF2aWx0YSBwYWx2ZWxpbWlsdGE6XCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwicXVhcmFudGluZV9kZXNjXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlTDpG3DpCBwYWx2ZWxpbiBsw6RoZXR0w6TDpCB2YWluIGp1bGtpc2lhIHZpZXN0ZWrDpCBzZXVyYWF2aWxsZSBwYWx2ZWxpbWlsbGU6XCJdKX07Zm4uc291cmNlPVwiVMOkbcOkIHBhbHZlbGluIGzDpGhldHTDpMOkIHZhaW4ganVsa2lzaWEgdmllc3RlasOkIHNldXJhYXZpbGxlIHBhbHZlbGltaWxsZTpcIjtyZXR1cm4gZm47fSkoKSxcbiAgICAgICAgXCJmdGxfcmVtb3ZhbF9kZXNjXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlTDpG3DpCBwYWx2ZWxpbiBwb2lzdGFhIG7DpG3DpCBwYWx2ZWxpbWV0IFxcXCJLb2tvIFR1bm5ldHR1IFZlcmtvc3RvXFxcIi1haWthamFuYWx0YTpcIl0pfTtmbi5zb3VyY2U9XCJUw6Rtw6QgcGFsdmVsaW4gcG9pc3RhYSBuw6Rtw6QgcGFsdmVsaW1ldCBcXFwiS29rbyBUdW5uZXR0dSBWZXJrb3N0b1xcXCItYWlrYWphbmFsdGE6XCI7cmV0dXJuIGZuO30pKCksXG4gICAgICAgIFwibWVkaWFfcmVtb3ZhbF9kZXNjXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlTDpG3DpCBwYWx2ZWxpbiBwb3N0YWEgbWVkaWF0aWVkb3N0b3Qgdmllc3RlaXN0w6Qgc2V1cmFhdmlsdGEgcGFsdmVsaW1pbHRhOlwiXSl9O2ZuLnNvdXJjZT1cIlTDpG3DpCBwYWx2ZWxpbiBwb3N0YWEgbWVkaWF0aWVkb3N0b3Qgdmllc3RlaXN0w6Qgc2V1cmFhdmlsdGEgcGFsdmVsaW1pbHRhOlwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcIm1lZGlhX25zZndcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUGFrb3RhIE1lZGlhIEFya2FsdW9udG9pc2Vrc2lcIl0pfTtmbi5zb3VyY2U9XCJQYWtvdGEgTWVkaWEgQXJrYWx1b250b2lzZWtzaVwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgICBcIm1lZGlhX25zZndfZGVzY1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUw6Rtw6QgcGFsdmVsaW4gcGFrb3R0YWEgbWVkaWF0aWVkb3N0b3QgYXJrYWx1b250ZWlzaWtzaSBzZXVyYWF2aWx0YSBwYWx2ZWxpbWlsdGE6XCJdKX07Zm4uc291cmNlPVwiVMOkbcOkIHBhbHZlbGluIHBha290dGFhIG1lZGlhdGllZG9zdG90IGFya2FsdW9udGVpc2lrc2kgc2V1cmFhdmlsdGEgcGFsdmVsaW1pbHRhOlwiO3JldHVybiBmbjt9KSgpXG4gICAgICB9LFxuICAgICAgXCJmZWRlcmF0aW9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkZlZGVyYWF0aW9cIl0pfTtmbi5zb3VyY2U9XCJGZWRlcmFhdGlvXCI7cmV0dXJuIGZuO30pKCksXG4gICAgICBcIm1yZl9wb2xpY2llc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJBa3Rpdm9pZHV0IE1SRi1zw6TDpG5uw7Z0XCJdKX07Zm4uc291cmNlPVwiQWt0aXZvaWR1dCBNUkYtc8Okw6RubsO2dFwiO3JldHVybiBmbjt9KSgpLFxuICAgICAgXCJtcmZfcG9saWNpZXNfZGVzY1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJNUkYtc8Okw6RubsO2dCBtdXV0dGF2YXQgZmVkZXJhYXRpb24gdG9pbWludGFhIHNpdnVsbGEuIFNldXJhYXZhdCBzw6TDpG5uw7Z0IG92YXQga3l0a2V0dHkgcMOkw6RsbGU6XCJdKX07Zm4uc291cmNlPVwiTVJGLXPDpMOkbm7DtnQgbXV1dHRhdmF0IGZlZGVyYWF0aW9uIHRvaW1pbnRhYSBzaXZ1bGxhLiBTZXVyYWF2YXQgc8Okw6RubsO2dCBvdmF0IGt5dGtldHR5IHDDpMOkbGxlOlwiO3JldHVybiBmbjt9KSgpXG4gICAgfSxcbiAgICBcInN0YWZmXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkhlbmtpbMO2a3VudGFcIl0pfTtmbi5zb3VyY2U9XCJIZW5raWzDtmt1bnRhXCI7cmV0dXJuIGZuO30pKClcbiAgfSxcbiAgXCJkb21haW5fbXV0ZV9jYXJkXCI6IHtcbiAgICBcIm11dGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiTXlraXN0w6RcIl0pfTtmbi5zb3VyY2U9XCJNeWtpc3TDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidW5tdXRlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBvaXN0YSBteWtpc3R5c1wiXSl9O2ZuLnNvdXJjZT1cIlBvaXN0YSBteWtpc3R5c1wiO3JldHVybiBmbjt9KSgpLFxuICAgIFwibXV0ZV9wcm9ncmVzc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJNeWtpc3RldMOkw6Ru4oCmXCJdKX07Zm4uc291cmNlPVwiTXlraXN0ZXTDpMOkbuKAplwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwidW5tdXRlX3Byb2dyZXNzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBvaXN0ZXRhYW4gbXlraXN0eXN0w6TigKZcIl0pfTtmbi5zb3VyY2U9XCJQb2lzdGV0YWFuIG15a2lzdHlzdMOk4oCmXCI7cmV0dXJuIGZuO30pKClcbiAgfSxcbiAgXCJleHBvcnRlclwiOiB7XG4gICAgXCJleHBvcnRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmllXCJdKX07Zm4uc291cmNlPVwiVmllXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwcm9jZXNzaW5nXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkvDpHNpdGVsbMOkw6RuLCBoZXRrZW4gcMOkw6RzdMOkIHZvaXQgdGFsbGVudGFhIHRpZWRvc3RvblwiXSl9O2ZuLnNvdXJjZT1cIkvDpHNpdGVsbMOkw6RuLCBoZXRrZW4gcMOkw6RzdMOkIHZvaXQgdGFsbGVudGFhIHRpZWRvc3RvblwiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwiaW1hZ2VfY3JvcHBlclwiOiB7XG4gICAgXCJjcm9wX3BpY3R1cmVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUmFqYWEga3V2YVwiXSl9O2ZuLnNvdXJjZT1cIlJhamFhIGt1dmFcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInNhdmVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVGFsbGVubmFcIl0pfTtmbi5zb3VyY2U9XCJUYWxsZW5uYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic2F2ZV93aXRob3V0X2Nyb3BwaW5nXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRhbGxlbm5hIHJhamFhbWF0dGFcIl0pfTtmbi5zb3VyY2U9XCJUYWxsZW5uYSByYWphYW1hdHRhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJjYW5jZWxcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUGVydXV0YVwiXSl9O2ZuLnNvdXJjZT1cIlBlcnV1dGFcIjtyZXR1cm4gZm47fSkoKVxuICB9LFxuICBcImltcG9ydGVyXCI6IHtcbiAgICBcInN1Ym1pdFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJIeXbDpGtzeVwiXSl9O2ZuLnNvdXJjZT1cIkh5dsOka3N5XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJlcnJvclwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJWaXJoZSB0YXBhaHR1aSB0aWV0b2phIHR1b2Rlc3NhLlwiXSl9O2ZuLnNvdXJjZT1cIlZpcmhlIHRhcGFodHVpIHRpZXRvamEgdHVvZGVzc2EuXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzdWNjZXNzXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlR1b250aSBvbm5pc3R1aS5cIl0pfTtmbi5zb3VyY2U9XCJUdW9udGkgb25uaXN0dWkuXCI7cmV0dXJuIGZuO30pKClcbiAgfSxcbiAgXCJtZWRpYV9tb2RhbFwiOiB7XG4gICAgXCJwcmV2aW91c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJFZGVsbGluZW5cIl0pfTtmbi5zb3VyY2U9XCJFZGVsbGluZW5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm5leHRcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiU2V1cmFhdmFcIl0pfTtmbi5zb3VyY2U9XCJTZXVyYWF2YVwiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwiZW1vamlcIjoge1xuICAgIFwic3RpY2tlcnNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVGFycmF0XCJdKX07Zm4uc291cmNlPVwiVGFycmF0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJlbW9qaVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJFbW9qaVwiXSl9O2ZuLnNvdXJjZT1cIkVtb2ppXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJrZWVwX29wZW5cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUGlkw6QgdmFsaXRzaW4gYXVraVwiXSl9O2ZuLnNvdXJjZT1cIlBpZMOkIHZhbGl0c2luIGF1a2lcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInNlYXJjaF9lbW9qaVwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJIYWUgZW1vamlhXCJdKX07Zm4uc291cmNlPVwiSGFlIGVtb2ppYVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiYWRkX2Vtb2ppXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkxpc8Okw6QgZW1vamlcIl0pfTtmbi5zb3VyY2U9XCJMaXPDpMOkIGVtb2ppXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJjdXN0b21cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiQ3VzdG9tLWVtb2ppXCJdKX07Zm4uc291cmNlPVwiQ3VzdG9tLWVtb2ppXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJsb2FkX2FsbFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIG5hbWVkOiBfbmFtZWQgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMYWRhdGFhbiBrYWlra2lhIFwiLCBfaW50ZXJwb2xhdGUoX25hbWVkKFwiZW1vamlBbW91bnRcIikpLCBcIiBlbW9qaWFcIl0pfTtmbi5zb3VyY2U9XCJMYWRhdGFhbiBrYWlra2lhIHtlbW9qaUFtb3VudH0gZW1vamlhXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ1bmljb2RlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlVuaWNvZGUtZW1vamlcIl0pfTtmbi5zb3VyY2U9XCJVbmljb2RlLWVtb2ppXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJsb2FkX2FsbF9oaW50XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbmFtZWQ6IF9uYW1lZCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkVuc2ltbcOkaXNldCBcIiwgX2ludGVycG9sYXRlKF9uYW1lZChcInNhbmVBbW91bnRcIikpLCBcIiBlbW9qaWEgbGFkYXR0dSwga2Fpa2tpZW4gZW1vamllbiBsYXRhYW1pbmVuIHZvaSBhaWhldXR0YWEgaGlkYXN0ZWx1YS5cIl0pfTtmbi5zb3VyY2U9XCJFbnNpbW3DpGlzZXQge3NhbmVBbW91bnR9IGVtb2ppYSBsYWRhdHR1LCBrYWlra2llbiBlbW9qaWVuIGxhdGFhbWluZW4gdm9pIGFpaGV1dHRhYSBoaWRhc3RlbHVhLlwiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwicmVtb3RlX3VzZXJfcmVzb2x2ZXJcIjoge1xuICAgIFwicmVtb3RlX3VzZXJfcmVzb2x2ZXJcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVWxrb3B1b2xpbmVuIGvDpHl0dMOkasOkXCJdKX07Zm4uc291cmNlPVwiVWxrb3B1b2xpbmVuIGvDpHl0dMOkasOkXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJzZWFyY2hpbmdfZm9yXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkV0c2l0w6TDpG4ga8OkeXR0w6Rqw6TDpFwiXSl9O2ZuLnNvdXJjZT1cIkV0c2l0w6TDpG4ga8OkeXR0w6Rqw6TDpFwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZXJyb3JcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRWkgbMO2eXR5bnl0LlwiXSl9O2ZuLnNvdXJjZT1cIkVpIGzDtnl0eW55dC5cIjtyZXR1cm4gZm47fSkoKVxuICB9LFxuICBcInNlbGVjdGFibGVfbGlzdFwiOiB7XG4gICAgXCJzZWxlY3RfYWxsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlZhbGl0c2Uga2Fpa2tpXCJdKX07Zm4uc291cmNlPVwiVmFsaXRzZSBrYWlra2lcIjtyZXR1cm4gZm47fSkoKVxuICB9LFxuICBcInBhc3N3b3JkX3Jlc2V0XCI6IHtcbiAgICBcImNoZWNrX2VtYWlsXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlRhcmtpc3RhIHPDpGhrw7Zwb3N0aXNpIHNhbGFzYW5hbm5vbGxhdXN0YSB2YXJ0ZW4uXCJdKX07Zm4uc291cmNlPVwiVGFya2lzdGEgc8OkaGvDtnBvc3Rpc2kgc2FsYXNhbmFubm9sbGF1c3RhIHZhcnRlbi5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImluc3RydWN0aW9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlN5w7Z0w6Qgc8OkaGvDtnBvc3Rpb3NvaXRlIHRhaSBrw6R5dHTDpGrDpG5pbWkuIEzDpGhldMOkbW1lIGxpbmtpbiBzYWxhc2FuYW4gbm9sbGF1c3RhIHZhcnRlbi5cIl0pfTtmbi5zb3VyY2U9XCJTecO2dMOkIHPDpGhrw7Zwb3N0aW9zb2l0ZSB0YWkga8OkeXR0w6Rqw6RuaW1pLiBMw6RoZXTDpG1tZSBsaW5raW4gc2FsYXNhbmFuIG5vbGxhdXN0YSB2YXJ0ZW4uXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwYXNzd29yZF9yZXNldF9kaXNhYmxlZFwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJTYWxhc2FuYW4gbm9sbGF1cyBlaSBrw6R5dMO2c3PDpC4gT3RhIHlodGV5dHTDpCBzaXZ1biB5bGzDpHBpdMOkasOkw6RuLlwiXSl9O2ZuLnNvdXJjZT1cIlNhbGFzYW5hbiBub2xsYXVzIGVpIGvDpHl0w7Zzc8OkLiBPdGEgeWh0ZXl0dMOkIHNpdnVuIHlsbMOkcGl0w6Rqw6TDpG4uXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwYXNzd29yZF9yZXNldF9yZXF1aXJlZF9idXRfbWFpbGVyX2lzX2Rpc2FibGVkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNpbnVuIHTDpHl0eXkgdmFpaHRhYSBzYWxhc2FuYSwgbXV0dGEgc2FsYXNhbmFuIG5vbGxhdXMgb24gcG9pcyBrw6R5dMO2c3TDpC4gT3RhIHlodGV5dHTDpCBzaXZ1biB5bGzDpHBpdMOkasOkw6RuLlwiXSl9O2ZuLnNvdXJjZT1cIlNpbnVuIHTDpHl0eXkgdmFpaHRhYSBzYWxhc2FuYSwgbXV0dGEgc2FsYXNhbmFuIG5vbGxhdXMgb24gcG9pcyBrw6R5dMO2c3TDpC4gT3RhIHlodGV5dHTDpCBzaXZ1biB5bGzDpHBpdMOkasOkw6RuLlwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiZm9yZ290X3Bhc3N3b3JkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlVub2hkaXRrbyBzYWxhc2FuYW4/XCJdKX07Zm4uc291cmNlPVwiVW5vaGRpdGtvIHNhbGFzYW5hbj9cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInBhc3N3b3JkX3Jlc2V0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNhbGFzYW5hbiBub2xsYXVzXCJdKX07Zm4uc291cmNlPVwiU2FsYXNhbmFuIG5vbGxhdXNcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInBsYWNlaG9sZGVyXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlPDpGhrw7Zwb3N0aW9zb2l0ZSB0YWkga8OkeXR0w6Rqw6RuaW1pXCJdKX07Zm4uc291cmNlPVwiU8OkaGvDtnBvc3Rpb3NvaXRlIHRhaSBrw6R5dHTDpGrDpG5pbWlcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInJldHVybl9ob21lXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlBhbGFhIGV0dXNpdnVsbGVcIl0pfTtmbi5zb3VyY2U9XCJQYWxhYSBldHVzaXZ1bGxlXCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJ0b29fbWFueV9yZXF1ZXN0c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJPbGV0IGvDpHl0dMOkbnl0IGthaWtraSB5cml0eWtzZXQsIHlyaXTDpCB1dWRlbGxlZW4gbXnDtmhlbW1pbi5cIl0pfTtmbi5zb3VyY2U9XCJPbGV0IGvDpHl0dMOkbnl0IGthaWtraSB5cml0eWtzZXQsIHlyaXTDpCB1dWRlbGxlZW4gbXnDtmhlbW1pbi5cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInBhc3N3b3JkX3Jlc2V0X3JlcXVpcmVkXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlNpbnVuIHTDpHl0eXkgdmFpaHRhYSBzYWxhc2FuYSBraXJqYXV0dWFrc2VzaS5cIl0pfTtmbi5zb3VyY2U9XCJTaW51biB0w6R5dHl5IHZhaWh0YWEgc2FsYXNhbmEga2lyamF1dHVha3Nlc2kuXCI7cmV0dXJuIGZuO30pKClcbiAgfSxcbiAgXCJ1c2VyX3JlcG9ydGluZ1wiOiB7XG4gICAgXCJhZGRfY29tbWVudF9kZXNjcmlwdGlvblwiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJUw6Rtw6QgcmFwb3J0dGkgbMOkaGV0ZXTDpMOkbiBzaXZ1biBtb2RlcmFhdHRvcmVpbGxlLiBWb2l0IGFudGFhIHNlbGl0eWtzZW4gbWlrc2kgaWxtaWFubm9pdCB0aWxpbjpcIl0pfTtmbi5zb3VyY2U9XCJUw6Rtw6QgcmFwb3J0dGkgbMOkaGV0ZXTDpMOkbiBzaXZ1biBtb2RlcmFhdHRvcmVpbGxlLiBWb2l0IGFudGFhIHNlbGl0eWtzZW4gbWlrc2kgaWxtaWFubm9pdCB0aWxpbjpcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInRpdGxlXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJJbG1pYW5uZXRhYW4gXCIsIF9pbnRlcnBvbGF0ZShfbGlzdCgwKSldKX07Zm4uc291cmNlPVwiSWxtaWFubmV0YWFuIHswfVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwiYWRkaXRpb25hbF9jb21tZW50c1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJMaXPDpGtvbW1lbnRpdFwiXSl9O2ZuLnNvdXJjZT1cIkxpc8Oka29tbWVudGl0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJmb3J3YXJkX2Rlc2NyaXB0aW9uXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIlTDpG3DpCB0aWxpIG9uIHRvaXNlbHRhIHBhbHZlbGltZWx0YS4gTMOkaGV0w6Qga29waW8gaWxtaWFubm9zdGEgc2lubmVraW4/XCJdKX07Zm4uc291cmNlPVwiVMOkbcOkIHRpbGkgb24gdG9pc2VsdGEgcGFsdmVsaW1lbHRhLiBMw6RoZXTDpCBrb3BpbyBpbG1pYW5ub3N0YSBzaW5uZWtpbj9cIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImZvcndhcmRfdG9cIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplLCBpbnRlcnBvbGF0ZTogX2ludGVycG9sYXRlLCBsaXN0OiBfbGlzdCB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkzDpGhldMOkIGV0ZWVucMOkaW46IFwiLCBfaW50ZXJwb2xhdGUoX2xpc3QoMCkpXSl9O2ZuLnNvdXJjZT1cIkzDpGhldMOkIGV0ZWVucMOkaW46IHswfVwiO3JldHVybiBmbjt9KSgpLFxuICAgIFwic3VibWl0XCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSB9ID0gY3R4O3JldHVybiBfbm9ybWFsaXplKFtcIkzDpGhldMOkXCJdKX07Zm4uc291cmNlPVwiTMOkaGV0w6RcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcImdlbmVyaWNfZXJyb3JcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiVmlyaGUga8Okc2l0ZWxsZXNzw6QgcHl5bnTDtsOkLlwiXSl9O2ZuLnNvdXJjZT1cIlZpcmhlIGvDpHNpdGVsbGVzc8OkIHB5eW50w7bDpC5cIjtyZXR1cm4gZm47fSkoKVxuICB9LFxuICBcInNlYXJjaFwiOiB7XG4gICAgXCJwZW9wbGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiS8OkeXR0w6Rqw6R0XCJdKX07Zm4uc291cmNlPVwiS8OkeXR0w6Rqw6R0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJoYXNodGFnc1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbXCJBaWhldHVubmlzdGVldFwiXSl9O2ZuLnNvdXJjZT1cIkFpaGV0dW5uaXN0ZWV0XCI7cmV0dXJuIGZuO30pKCksXG4gICAgXCJwZW9wbGVfdGFsa2luZ1wiOiAoKCk9Pntjb25zdCBmbj0oY3R4KSA9PiB7Y29uc3QgeyBub3JtYWxpemU6IF9ub3JtYWxpemUsIGludGVycG9sYXRlOiBfaW50ZXJwb2xhdGUsIGxpc3Q6IF9saXN0IH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW19pbnRlcnBvbGF0ZShfbGlzdCgwKSksIFwiIGvDpHl0dMOkasOkw6QgcHVodXZhdFwiXSl9O2ZuLnNvdXJjZT1cInswfSBrw6R5dHTDpGrDpMOkIHB1aHV2YXRcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcInBlcnNvbl90YWxraW5nXCI6ICgoKT0+e2NvbnN0IGZuPShjdHgpID0+IHtjb25zdCB7IG5vcm1hbGl6ZTogX25vcm1hbGl6ZSwgaW50ZXJwb2xhdGU6IF9pbnRlcnBvbGF0ZSwgbGlzdDogX2xpc3QgfSA9IGN0eDtyZXR1cm4gX25vcm1hbGl6ZShbX2ludGVycG9sYXRlKF9saXN0KDApKSwgXCIga8OkeXR0w6Rqw6QgcHVodXVcIl0pfTtmbi5zb3VyY2U9XCJ7MH0ga8OkeXR0w6Rqw6QgcHVodXVcIjtyZXR1cm4gZm47fSkoKSxcbiAgICBcIm5vX3Jlc3VsdHNcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiRWkgdHVsb2tzaWFcIl0pfTtmbi5zb3VyY2U9XCJFaSB0dWxva3NpYVwiO3JldHVybiBmbjt9KSgpXG4gIH0sXG4gIFwiZXJyb3JzXCI6IHtcbiAgICBcInN0b3JhZ2VfdW5hdmFpbGFibGVcIjogKCgpPT57Y29uc3QgZm49KGN0eCkgPT4ge2NvbnN0IHsgbm9ybWFsaXplOiBfbm9ybWFsaXplIH0gPSBjdHg7cmV0dXJuIF9ub3JtYWxpemUoW1wiUGxlcm9tYSBlaSB2b2ludXQga8OkeXR0w6TDpCBzZWxhaW1lbiBtdWlzdGlhLiBLaXJqYXV0dW1pc2VzaSBqYSBwYWlrYWxsaXNldCBhc2V0dWtzZXQgZWl2w6R0IHRhbGxlbm51IGphIHNhYXRhdCBrb2hkYXRhIG9kb3R0YW1hdHRvbWlhIG9uZ2VsbWlhLiBZcml0w6Qgc2FsbGlhIGV2w6RzdGVldC5cIl0pfTtmbi5zb3VyY2U9XCJQbGVyb21hIGVpIHZvaW51dCBrw6R5dHTDpMOkIHNlbGFpbWVuIG11aXN0aWEuIEtpcmphdXR1bWlzZXNpIGphIHBhaWthbGxpc2V0IGFzZXR1a3NldCBlaXbDpHQgdGFsbGVubnUgamEgc2FhdGF0IGtvaGRhdGEgb2RvdHRhbWF0dG9taWEgb25nZWxtaWEuIFlyaXTDpCBzYWxsaWEgZXbDpHN0ZWV0LlwiO3JldHVybiBmbjt9KSgpXG4gIH1cbn0iXSwic291cmNlUm9vdCI6IiJ9\n//# sourceURL=webpack-internal:///./src/i18n/fi.json\n");
|
|
|
|
/***/ })
|
|
|
|
}]); |