UNPKG

kepler.gl

Version:

kepler.gl is a webgl based application to visualize large scale location data in the browser

428 lines (427 loc) 54.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; // Copyright (c) 2020 Uber Technologies, Inc. // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal // in the Software without restriction, including without limitation the rights // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell // copies of the Software, and to permit persons to whom the Software is // furnished to do so, subject to the following conditions: // // The above copyright notice and this permission notice shall be included in // all copies or substantial portions of the Software. // // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. var _default = { property: { weight: 'painotus', label: 'nimiö', fillColor: 'täyttöväri', color: 'väri', strokeColor: 'viivan väri', radius: 'säde', outline: 'ääriviiva', stroke: 'viiva', density: 'tiheys', coverage: 'kattavuus', sum: 'summa', pointCount: 'pisteiden lukumäärä' }, placeholder: { search: 'Etsi', selectField: 'Valitse kenttä', yAxis: 'Y-akseli', selectType: 'Valitse tyyppi', selectValue: 'Valitse arvo', enterValue: 'Anna arvo', empty: 'tyhjä' }, misc: { by: '', valuesIn: 'Arvot joukossa:', valueEquals: 'Arvo on yhtäsuuri kuin', dataSource: 'Aineistolähde', brushRadius: 'Harjan säde (km)', empty: ' ' }, mapLayers: { title: 'Kartan tasot', label: 'Nimiöt', road: 'Tiet', border: 'Rajat', building: 'Rakennukset', water: 'Vesi', land: 'Maa', '3dBuilding': '3d-rakennukset' }, panel: { text: { label: 'Nimiö', labelWithId: 'Nimiö {labelId}', fontSize: 'Fontin koko', fontColor: 'Fontin väri', textAnchor: 'Tekstin ankkuri', alignment: 'Sijoittelu', addMoreLabel: 'Lisää uusia nimiöitä' } }, sidebar: { panels: { layer: 'Tasot', filter: 'Suodattimet', interaction: 'Interaktiot', basemap: 'Taustakartta' } }, layer: { required: 'Pakollinen*', radius: 'Säde', weight: 'Painotus', propertyBasedOn: '{property} perustuen arvoon', color: 'Väri', fillColor: 'Täytön väri', outline: 'ääriviiva', coverage: 'Kattavuus', stroke: 'Viiva', strokeWidth: 'Viivan paksuus', strokeColor: 'Viivan väri', basic: 'Perus', trailLength: 'Jäljen pituus', trailLengthDescription: 'Jäljen kesto sekunteina, ennenkuin se himmenee näkyvistä', newLayer: 'uusi taso', elevationByDescription: 'Kun asetus on pois päältä, korkeus perustuu pisteiden määrään', colorByDescription: 'Kun asetus on pois päältä, väri perustuu pisteiden määrään', aggregateBy: 'Aggregoi kenttä {field} by', '3DModel': '3D-malli', '3DModelOptions': '3D-mallin asetukset', type: { point: 'piste', arc: 'kaari', line: 'viiva', grid: 'ruudukko', hexbin: 'hexbin', polygon: 'polygoni', geojson: 'geojson', cluster: 'klusteri', icon: 'kuva', heatmap: ' lämpökartta', h3: 'H3', trip: 'matka', s2: 'S2', '3d': '3D' } }, layerVisConfigs: { strokeWidth: 'Viivan paksuus', strokeWidthRange: 'Viivan paksuuden rajat', radius: 'Säde', fixedRadius: 'Vakiosäde metreinä', fixedRadiusDescription: 'Kartan säde absoluuttiseksi säteeksi metreinä, esim. 5 -> 5 metriin', radiusRange: 'Säteen rajat', clusterRadius: 'Klusterien säde pikseleinä', radiusRangePixels: 'Säteen rajat pikseleinä', opacity: 'Läpinäkyvyys', coverage: 'Kattavuus', outline: 'Ääriviiva', colorRange: 'Värien rajat', stroke: 'Viiva', strokeColor: 'Viivan väri', strokeColorRange: 'Viivan värin rajat', targetColor: 'Kohteen väri', colorAggregation: 'Värien aggregointi', heightAggregation: 'Korkeuden aggregointi', resolutionRange: 'Resoluution rajat', sizeScale: 'Koon skaala', worldUnitSize: 'Yksikkö', elevationScale: 'Korottamisen skaala', heightScale: 'Korkeuden skaala', coverageRange: 'Peittävyyden rajat', highPrecisionRendering: 'Tarkka renderöinti', highPrecisionRenderingDescription: 'Tarkka renderöinti johtaa hitaampaan suorittamiseen', height: 'Korkeus', heightDescription: 'Klikkaa oikeasta ylänurkasta nappia vaihtaaksesi 3D-näkymään', fill: 'Täyttö', enablePolygonHeight: 'Salli polygonien korkeus', showWireframe: 'Näytä rautalankamalli', weightIntensity: 'Painotuksen intensiteetti', zoomScale: 'Zoomausskaala', heightRange: 'Korkeuden rajat' }, layerManager: { addData: 'Lisää aineisto', addLayer: 'Lisää taso', layerBlending: 'Tasojen sekoittuvuus' }, mapManager: { mapStyle: 'Kartan tyyli', addMapStyle: 'Lisää tyyli kartalle', '3dBuildingColor': '3D-rakennusten väri' }, layerConfiguration: { defaultDescription: 'Laske suureen {property} arvo valitun kentän perusteella', howTo: 'Miten toimii' }, filterManager: { addFilter: 'Lisää suodatin' }, datasetTitle: { showDataTable: 'Näytä attribuuttitaulu', removeDataset: 'Poista aineisto' }, datasetInfo: { rowCount: '{rowCount} riviä' }, tooltip: { hideLayer: 'Piilota taso', showLayer: 'Näytä taso', hideFeature: 'Piilota kohde', showFeature: 'Näytä kohde', hide: 'piilota', show: 'näytä', removeLayer: 'Poista taso', layerSettings: 'Tason asetukset', closePanel: 'Sulje paneeli', switchToDualView: 'Vaihda kaksoiskarrtanäkymään', showLegend: 'Näytä selite', disable3DMap: 'Poistu 3D-näkymästä', DrawOnMap: 'Piirrä kartalle', selectLocale: 'Valitse kielisyys', hideLayerPanel: 'Piilota tasopaneeli', showLayerPanel: 'Näytä tasopaneeli', moveToTop: 'Siirrä tasojen päällimmäiseksi', selectBaseMapStyle: 'Valitse taustakarttatyyli', "delete": 'Poista', timePlayback: 'Ajan animointi', cloudStorage: 'Pilvitallennus', '3DMap': '3D-näkymä' }, toolbar: { exportImage: 'Vie kuva', exportData: 'Vie aineistot', exportMap: 'Vie kartta', shareMapURL: 'Jaa kartan URL', saveMap: 'Tallenna kartta', select: 'valitse', polygon: 'polygoni', rectangle: 'nelikulmio', hide: 'piilota', show: 'näytä', en: 'English', fi: 'Suomi' }, modal: { title: { deleteDataset: 'Poista aineisto', addDataToMap: 'Lisää aineistoja kartalle', exportImage: 'Vie kuva', exportData: 'Vie aineistot', exportMap: 'Vie kartta', addCustomMapboxStyle: 'Lisää oma Mapbox-tyyli', saveMap: 'Tallenna kartta', shareURL: 'Jaa URL' }, button: { "delete": 'Poista', download: 'Lataa', "export": 'Vie', addStyle: 'Lisää tyyli', save: 'Tallenna', defaultCancel: 'Peru', defaultConfirm: 'Vahvista' }, exportImage: { ratioTitle: 'Kuvasuhde', ratioDescription: 'Valitse sopiva kuvasuhde käyttötapaustasi varten.', ratioOriginalScreen: 'Alkuperäinen näyttö', ratioCustom: 'Kustomoitu', ratio4_3: '4:3', ratio16_9: '16:9', resolutionTitle: 'Resoluutio', resolutionDescription: 'Korkea resoluutio on parempi tulostamista varten.', mapLegendTitle: 'Kartan selite', mapLegendAdd: 'Lisää selite karttaan' }, exportData: { datasetTitle: 'Aineistot', datasetSubtitle: 'Valitse aineisto, jonka aiot viedä', allDatasets: 'Kaikki', dataTypeTitle: 'Aineistojen formaatti', dataTypeSubtitle: 'Valitse aineistoformaatti valitsemillesi aineistoille', filterDataTitle: 'Suodata aineistoja', filterDataSubtitle: 'Voit viedä joko alkuperäiset aineistot tai suodatetut aineistot', filteredData: 'Suodatetut aineistot', unfilteredData: 'Suodattamattomat aineistot', fileCount: '{fileCount} tiedostoa', rowCount: '{rowCount} riviä' }, deleteData: { warning: 'aiot poistaa tämän aineiston. Aineostoa käyttävien tasojen lukumäärä: {length}' }, addStyle: { publishTitle: '1. Julkaise tyylisi Mapboxissa tai anna tunniste', publishSubtitle1: 'Voit luoda oman karttatyylisi sivulla', publishSubtitle2: 'ja', publishSubtitle3: 'julkaista', publishSubtitle4: 'sen.', publishSubtitle5: 'Käyttääksesi yksityistä tyyliä, liitä', publishSubtitle6: 'tunnisteesi', publishSubtitle7: 'tänne. *kepler.gl on client-side sovellus, data pysyy vain selaimessasi...', exampleToken: 'esim. pk.abcdefg.xxxxxx', pasteTitle: '2. Liitä tyyli-URL', pasteSubtitle1: 'Mikä on', pasteSubtitle2: 'tyyli-URL?', namingTitle: '3. Nimeä tyylisi' }, shareMap: { shareUriTitle: 'Jaa kartan URL', shareUriSubtitle: 'Luo kartalle URL, jonka voit jakaa muiden kanssa', cloudTitle: 'Pilvitallennus', cloudSubtitle: 'Kirjaudu sisään ja lataa kartta ja aineistot henkilökohtaiseen pilvipalveluun', shareDisclaimer: 'kepler.gl tallentaa kartan datan henkilökohtaiseen pilvitallennustilaasi, vain ihmiset, joilla on URL, voivat päästä käsiksi karttaan ja aineistoihin. ' + 'Voit muokata tiedostoja tai poistaa ne pilvipalvelustasi milloin vain.', gotoPage: 'Mene Kepler.gl {currentProvider} sivullesi' }, statusPanel: { mapUploading: 'Karttaa ladataan', error: 'Virhe' }, saveMap: { title: 'Pilvitallennus', subtitle: 'Kirjaudu sisään pilvipalveluusi tallentaaksesi kartan' }, exportMap: { formatTitle: 'Kartan formaatti', formatSubtitle: 'Valitse formaatti, jossa viet kartan', html: { selection: 'Vie kartta interaktiivisena html-tiedostona', tokenTitle: 'Mapbox-tunniste', tokenSubtitle: 'Käytä omaa Mapbox-tunnistettasi html-tiedostossa (valinnainen)', tokenPlaceholder: 'Liitä Mapbox-tunnisteesi', tokenMisuseWarning: '* Jos et käytä omaa tunnistettasi, kartta voi lakata toimimasta milloin vain kun vaihdamme omaa tunnistettamme väärinkäytön estämiseksi. ', tokenDisclaimer: 'Voit vaihtaa Mapbox-tunnisteesi näiden ohjeiden avulla: ', tokenUpdate: 'Kuinka vaihtaa olemassaoleva Mapbox-tunniste', modeTitle: 'Kartan tila', modeSubtitle1: 'Valitse kartan tila.', modeSubtitle2: 'Lisätietoja', modeDescription: 'Anna käyttäjien {mode} karttaa', read: 'lukea', edit: 'muokata' }, json: { configTitle: 'Kartan asetukset', configDisclaimer: 'Kartan asetukset sisältyvät Json-tiedostoon. Jos käytät kirjastoa kepler.gl omassa sovelluksessasi. Voit kopioida asetukset ja antaa ne funktiolle: ', selection: 'Vie kyseisen kartan aineistot ja asetukset yhdessä json-tiedostossa. Voit myöhemmin avata saman kartan lataamalla tiedoston kepler.gl:n', disclaimer: '* Kartan asetukset ovat sidoksissa ladattuihin aineistoihin. Arvoa ‘dataId’ käytetään tasojen, suodattimien ja vihjeiden liittämiseksi tiettyyn aineistoon. ' + 'Varmista, että aineiston dataId:t vastaavat asetusten arvoja jos lataat asetukset käyttäen `addDataToMap`-funktiolle.' } }, loadingDialog: { loading: 'Ladataan...' }, loadData: { upload: 'Lataa tiedostot', storage: 'Lataa tallennustilasta' }, tripInfo: { title: 'Kuinka käyttää matka-animaatiota', description1: 'Reitin animoimiseksi geoJSON-aineiston täytyy olla geometriatyypiltään `LineString`, LineString-koordinaattien täytyy sisältää 4 elementtiä formaatissa:', code: ' [pituusaste, leveysaste, korkeus, aikaleima] ', description2: 'siten, että viimeinen elementti on aikaleima. Aikaleima voi olla muodoltaan unix-sekunteja, kuten `1564184363` tai millisekunteja, kuten `1564184363000`.', example: 'Esimerkki:' }, iconInfo: { title: 'Miten piirtää kuvia', description1: 'csv-tiedostossasi, luo sarake nimeltä icon. Voit jättää sen tyhjäksi jos et halua piirtää kuvaa joillain pisteillä. Kun sarakkeen nimi on ', code: 'icon', description2: ' kepler.gl luo automaattisesti kuvatason sinua varten.', example: 'Esimerkki:', icons: 'Kuvat' }, storageMapViewer: { lastModified: 'Viimeksi muokattu {lastUpdated} sitten', back: 'Takaisin' }, overwriteMap: { title: 'Tallennetaan karttaa...', alreadyExists: 'on jo {mapSaved}:ssa. Haluatko ylikirjoittaa sen?' }, loadStorageMap: { back: 'Takaisin', goToPage: 'Mene Kepler.gl {displayName} sivullesi', storageMaps: 'Tallennus / Kartat', noSavedMaps: 'Ei tallennettuja karttoja vielä' } }, header: { visibleLayers: 'Näkyvissä olevat tasot', layerLegend: 'Tason selite' }, interactions: { tooltip: 'Vihje', brush: 'Harja', coordinate: 'Koordinaatit' }, layerBlending: { title: 'Tasojen sekoittuvuus', additive: 'lisäävä', normal: 'normaali', subtractive: 'vähentävä' }, columns: { title: 'Sarakkeet', lat: 'lat', lng: 'lng', altitude: 'korkeus', icon: 'kuva', geojson: 'geojson', arc: { lat0: 'lähdön lat', lng0: 'lähdön lng', lat1: 'kohteen lat', lng1: 'kohteen lng' }, grid: { worldUnitSize: 'Ruutujen koko (km)' }, hexagon: { worldUnitSize: 'Hexagonien säde (km)' } }, color: { customPalette: 'Mukautettu paletti', steps: 'askeleet', type: 'tyyppi', reversed: 'käänteinen' }, scale: { colorScale: 'Värin skaala', sizeScale: 'Koon skaala', strokeScale: 'Viivan paksuuden skaala', scale: 'Skaala' }, fileUploader: { message: 'Raahaa ja pudota tiedostosi tänne', chromeMessage: '*Chromen käyttäjä: Rajoita tiedostokokosi 250Mb:hen. Jos haluat suurempia tiedostoja, kokeile Safaria', disclaimer: '*kepler.gl on client-side sovellus, data pysyy vain selaimessasi...' + 'Tietoja ei lähetetä palvelimelle.', configUploadMessage: 'Lisää **CSV**, **GeoJson** tai tallennettu kartta **Json**. Lue lisää [**tuetuista formaateista**]', browseFiles: 'selaa tiedostojasi', uploading: 'ladataan', fileNotSupported: 'Tiedosto {errorFiles} ei ole tuettu.', or: 'tai' }, density: 'tiheys', 'Bug Report': 'Bugiraportointi', 'User Guide': 'Opas', Save: 'Tallenna', Share: 'Jaa' }; exports["default"] = _default; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2NhbGl6YXRpb24vZmkuanMiXSwibmFtZXMiOlsicHJvcGVydHkiLCJ3ZWlnaHQiLCJsYWJlbCIsImZpbGxDb2xvciIsImNvbG9yIiwic3Ryb2tlQ29sb3IiLCJyYWRpdXMiLCJvdXRsaW5lIiwic3Ryb2tlIiwiZGVuc2l0eSIsImNvdmVyYWdlIiwic3VtIiwicG9pbnRDb3VudCIsInBsYWNlaG9sZGVyIiwic2VhcmNoIiwic2VsZWN0RmllbGQiLCJ5QXhpcyIsInNlbGVjdFR5cGUiLCJzZWxlY3RWYWx1ZSIsImVudGVyVmFsdWUiLCJlbXB0eSIsIm1pc2MiLCJieSIsInZhbHVlc0luIiwidmFsdWVFcXVhbHMiLCJkYXRhU291cmNlIiwiYnJ1c2hSYWRpdXMiLCJtYXBMYXllcnMiLCJ0aXRsZSIsInJvYWQiLCJib3JkZXIiLCJidWlsZGluZyIsIndhdGVyIiwibGFuZCIsInBhbmVsIiwidGV4dCIsImxhYmVsV2l0aElkIiwiZm9udFNpemUiLCJmb250Q29sb3IiLCJ0ZXh0QW5jaG9yIiwiYWxpZ25tZW50IiwiYWRkTW9yZUxhYmVsIiwic2lkZWJhciIsInBhbmVscyIsImxheWVyIiwiZmlsdGVyIiwiaW50ZXJhY3Rpb24iLCJiYXNlbWFwIiwicmVxdWlyZWQiLCJwcm9wZXJ0eUJhc2VkT24iLCJzdHJva2VXaWR0aCIsImJhc2ljIiwidHJhaWxMZW5ndGgiLCJ0cmFpbExlbmd0aERlc2NyaXB0aW9uIiwibmV3TGF5ZXIiLCJlbGV2YXRpb25CeURlc2NyaXB0aW9uIiwiY29sb3JCeURlc2NyaXB0aW9uIiwiYWdncmVnYXRlQnkiLCJ0eXBlIiwicG9pbnQiLCJhcmMiLCJsaW5lIiwiZ3JpZCIsImhleGJpbiIsInBvbHlnb24iLCJnZW9qc29uIiwiY2x1c3RlciIsImljb24iLCJoZWF0bWFwIiwiaDMiLCJ0cmlwIiwiczIiLCJsYXllclZpc0NvbmZpZ3MiLCJzdHJva2VXaWR0aFJhbmdlIiwiZml4ZWRSYWRpdXMiLCJmaXhlZFJhZGl1c0Rlc2NyaXB0aW9uIiwicmFkaXVzUmFuZ2UiLCJjbHVzdGVyUmFkaXVzIiwicmFkaXVzUmFuZ2VQaXhlbHMiLCJvcGFjaXR5IiwiY29sb3JSYW5nZSIsInN0cm9rZUNvbG9yUmFuZ2UiLCJ0YXJnZXRDb2xvciIsImNvbG9yQWdncmVnYXRpb24iLCJoZWlnaHRBZ2dyZWdhdGlvbiIsInJlc29sdXRpb25SYW5nZSIsInNpemVTY2FsZSIsIndvcmxkVW5pdFNpemUiLCJlbGV2YXRpb25TY2FsZSIsImhlaWdodFNjYWxlIiwiY292ZXJhZ2VSYW5nZSIsImhpZ2hQcmVjaXNpb25SZW5kZXJpbmciLCJoaWdoUHJlY2lzaW9uUmVuZGVyaW5nRGVzY3JpcHRpb24iLCJoZWlnaHQiLCJoZWlnaHREZXNjcmlwdGlvbiIsImZpbGwiLCJlbmFibGVQb2x5Z29uSGVpZ2h0Iiwic2hvd1dpcmVmcmFtZSIsIndlaWdodEludGVuc2l0eSIsInpvb21TY2FsZSIsImhlaWdodFJhbmdlIiwibGF5ZXJNYW5hZ2VyIiwiYWRkRGF0YSIsImFkZExheWVyIiwibGF5ZXJCbGVuZGluZyIsIm1hcE1hbmFnZXIiLCJtYXBTdHlsZSIsImFkZE1hcFN0eWxlIiwibGF5ZXJDb25maWd1cmF0aW9uIiwiZGVmYXVsdERlc2NyaXB0aW9uIiwiaG93VG8iLCJmaWx0ZXJNYW5hZ2VyIiwiYWRkRmlsdGVyIiwiZGF0YXNldFRpdGxlIiwic2hvd0RhdGFUYWJsZSIsInJlbW92ZURhdGFzZXQiLCJkYXRhc2V0SW5mbyIsInJvd0NvdW50IiwidG9vbHRpcCIsImhpZGVMYXllciIsInNob3dMYXllciIsImhpZGVGZWF0dXJlIiwic2hvd0ZlYXR1cmUiLCJoaWRlIiwic2hvdyIsInJlbW92ZUxheWVyIiwibGF5ZXJTZXR0aW5ncyIsImNsb3NlUGFuZWwiLCJzd2l0Y2hUb0R1YWxWaWV3Iiwic2hvd0xlZ2VuZCIsImRpc2FibGUzRE1hcCIsIkRyYXdPbk1hcCIsInNlbGVjdExvY2FsZSIsImhpZGVMYXllclBhbmVsIiwic2hvd0xheWVyUGFuZWwiLCJtb3ZlVG9Ub3AiLCJzZWxlY3RCYXNlTWFwU3R5bGUiLCJ0aW1lUGxheWJhY2siLCJjbG91ZFN0b3JhZ2UiLCJ0b29sYmFyIiwiZXhwb3J0SW1hZ2UiLCJleHBvcnREYXRhIiwiZXhwb3J0TWFwIiwic2hhcmVNYXBVUkwiLCJzYXZlTWFwIiwic2VsZWN0IiwicmVjdGFuZ2xlIiwiZW4iLCJmaSIsIm1vZGFsIiwiZGVsZXRlRGF0YXNldCIsImFkZERhdGFUb01hcCIsImFkZEN1c3RvbU1hcGJveFN0eWxlIiwic2hhcmVVUkwiLCJidXR0b24iLCJkb3dubG9hZCIsImFkZFN0eWxlIiwic2F2ZSIsImRlZmF1bHRDYW5jZWwiLCJkZWZhdWx0Q29uZmlybSIsInJhdGlvVGl0bGUiLCJyYXRpb0Rlc2NyaXB0aW9uIiwicmF0aW9PcmlnaW5hbFNjcmVlbiIsInJhdGlvQ3VzdG9tIiwicmF0aW80XzMiLCJyYXRpbzE2XzkiLCJyZXNvbHV0aW9uVGl0bGUiLCJyZXNvbHV0aW9uRGVzY3JpcHRpb24iLCJtYXBMZWdlbmRUaXRsZSIsIm1hcExlZ2VuZEFkZCIsImRhdGFzZXRTdWJ0aXRsZSIsImFsbERhdGFzZXRzIiwiZGF0YVR5cGVUaXRsZSIsImRhdGFUeXBlU3VidGl0bGUiLCJmaWx0ZXJEYXRhVGl0bGUiLCJmaWx0ZXJEYXRhU3VidGl0bGUiLCJmaWx0ZXJlZERhdGEiLCJ1bmZpbHRlcmVkRGF0YSIsImZpbGVDb3VudCIsImRlbGV0ZURhdGEiLCJ3YXJuaW5nIiwicHVibGlzaFRpdGxlIiwicHVibGlzaFN1YnRpdGxlMSIsInB1Ymxpc2hTdWJ0aXRsZTIiLCJwdWJsaXNoU3VidGl0bGUzIiwicHVibGlzaFN1YnRpdGxlNCIsInB1Ymxpc2hTdWJ0aXRsZTUiLCJwdWJsaXNoU3VidGl0bGU2IiwicHVibGlzaFN1YnRpdGxlNyIsImV4YW1wbGVUb2tlbiIsInBhc3RlVGl0bGUiLCJwYXN0ZVN1YnRpdGxlMSIsInBhc3RlU3VidGl0bGUyIiwibmFtaW5nVGl0bGUiLCJzaGFyZU1hcCIsInNoYXJlVXJpVGl0bGUiLCJzaGFyZVVyaVN1YnRpdGxlIiwiY2xvdWRUaXRsZSIsImNsb3VkU3VidGl0bGUiLCJzaGFyZURpc2NsYWltZXIiLCJnb3RvUGFnZSIsInN0YXR1c1BhbmVsIiwibWFwVXBsb2FkaW5nIiwiZXJyb3IiLCJzdWJ0aXRsZSIsImZvcm1hdFRpdGxlIiwiZm9ybWF0U3VidGl0bGUiLCJodG1sIiwic2VsZWN0aW9uIiwidG9rZW5UaXRsZSIsInRva2VuU3VidGl0bGUiLCJ0b2tlblBsYWNlaG9sZGVyIiwidG9rZW5NaXN1c2VXYXJuaW5nIiwidG9rZW5EaXNjbGFpbWVyIiwidG9rZW5VcGRhdGUiLCJtb2RlVGl0bGUiLCJtb2RlU3VidGl0bGUxIiwibW9kZVN1YnRpdGxlMiIsIm1vZGVEZXNjcmlwdGlvbiIsInJlYWQiLCJlZGl0IiwianNvbiIsImNvbmZpZ1RpdGxlIiwiY29uZmlnRGlzY2xhaW1lciIsImRpc2NsYWltZXIiLCJsb2FkaW5nRGlhbG9nIiwibG9hZGluZyIsImxvYWREYXRhIiwidXBsb2FkIiwic3RvcmFnZSIsInRyaXBJbmZvIiwiZGVzY3JpcHRpb24xIiwiY29kZSIsImRlc2NyaXB0aW9uMiIsImV4YW1wbGUiLCJpY29uSW5mbyIsImljb25zIiwic3RvcmFnZU1hcFZpZXdlciIsImxhc3RNb2RpZmllZCIsImJhY2siLCJvdmVyd3JpdGVNYXAiLCJhbHJlYWR5RXhpc3RzIiwibG9hZFN0b3JhZ2VNYXAiLCJnb1RvUGFnZSIsInN0b3JhZ2VNYXBzIiwibm9TYXZlZE1hcHMiLCJoZWFkZXIiLCJ2aXNpYmxlTGF5ZXJzIiwibGF5ZXJMZWdlbmQiLCJpbnRlcmFjdGlvbnMiLCJicnVzaCIsImNvb3JkaW5hdGUiLCJhZGRpdGl2ZSIsIm5vcm1hbCIsInN1YnRyYWN0aXZlIiwiY29sdW1ucyIsImxhdCIsImxuZyIsImFsdGl0dWRlIiwibGF0MCIsImxuZzAiLCJsYXQxIiwibG5nMSIsImhleGFnb24iLCJjdXN0b21QYWxldHRlIiwic3RlcHMiLCJyZXZlcnNlZCIsInNjYWxlIiwiY29sb3JTY2FsZSIsInN0cm9rZVNjYWxlIiwiZmlsZVVwbG9hZGVyIiwibWVzc2FnZSIsImNocm9tZU1lc3NhZ2UiLCJjb25maWdVcGxvYWRNZXNzYWdlIiwiYnJvd3NlRmlsZXMiLCJ1cGxvYWRpbmciLCJmaWxlTm90U3VwcG9ydGVkIiwib3IiLCJTYXZlIiwiU2hhcmUiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO2VBRWU7QUFDYkEsRUFBQUEsUUFBUSxFQUFFO0FBQ1JDLElBQUFBLE1BQU0sRUFBRSxVQURBO0FBRVJDLElBQUFBLEtBQUssRUFBRSxPQUZDO0FBR1JDLElBQUFBLFNBQVMsRUFBRSxZQUhIO0FBSVJDLElBQUFBLEtBQUssRUFBRSxNQUpDO0FBS1JDLElBQUFBLFdBQVcsRUFBRSxhQUxMO0FBTVJDLElBQUFBLE1BQU0sRUFBRSxNQU5BO0FBT1JDLElBQUFBLE9BQU8sRUFBRSxXQVBEO0FBUVJDLElBQUFBLE1BQU0sRUFBRSxPQVJBO0FBU1JDLElBQUFBLE9BQU8sRUFBRSxRQVREO0FBVVJDLElBQUFBLFFBQVEsRUFBRSxXQVZGO0FBV1JDLElBQUFBLEdBQUcsRUFBRSxPQVhHO0FBWVJDLElBQUFBLFVBQVUsRUFBRTtBQVpKLEdBREc7QUFlYkMsRUFBQUEsV0FBVyxFQUFFO0FBQ1hDLElBQUFBLE1BQU0sRUFBRSxNQURHO0FBRVhDLElBQUFBLFdBQVcsRUFBRSxnQkFGRjtBQUdYQyxJQUFBQSxLQUFLLEVBQUUsVUFISTtBQUlYQyxJQUFBQSxVQUFVLEVBQUUsZ0JBSkQ7QUFLWEMsSUFBQUEsV0FBVyxFQUFFLGNBTEY7QUFNWEMsSUFBQUEsVUFBVSxFQUFFLFdBTkQ7QUFPWEMsSUFBQUEsS0FBSyxFQUFFO0FBUEksR0FmQTtBQXdCYkMsRUFBQUEsSUFBSSxFQUFFO0FBQ0pDLElBQUFBLEVBQUUsRUFBRSxFQURBO0FBRUpDLElBQUFBLFFBQVEsRUFBRSxpQkFGTjtBQUdKQyxJQUFBQSxXQUFXLEVBQUUsd0JBSFQ7QUFJSkMsSUFBQUEsVUFBVSxFQUFFLGVBSlI7QUFLSkMsSUFBQUEsV0FBVyxFQUFFLGtCQUxUO0FBTUpOLElBQUFBLEtBQUssRUFBRTtBQU5ILEdBeEJPO0FBZ0NiTyxFQUFBQSxTQUFTLEVBQUU7QUFDVEMsSUFBQUEsS0FBSyxFQUFFLGNBREU7QUFFVDFCLElBQUFBLEtBQUssRUFBRSxRQUZFO0FBR1QyQixJQUFBQSxJQUFJLEVBQUUsTUFIRztBQUlUQyxJQUFBQSxNQUFNLEVBQUUsT0FKQztBQUtUQyxJQUFBQSxRQUFRLEVBQUUsYUFMRDtBQU1UQyxJQUFBQSxLQUFLLEVBQUUsTUFORTtBQU9UQyxJQUFBQSxJQUFJLEVBQUUsS0FQRztBQVFULGtCQUFjO0FBUkwsR0FoQ0U7QUEwQ2JDLEVBQUFBLEtBQUssRUFBRTtBQUNMQyxJQUFBQSxJQUFJLEVBQUU7QUFDSmpDLE1BQUFBLEtBQUssRUFBRSxPQURIO0FBRUprQyxNQUFBQSxXQUFXLEVBQUUsaUJBRlQ7QUFHSkMsTUFBQUEsUUFBUSxFQUFFLGFBSE47QUFJSkMsTUFBQUEsU0FBUyxFQUFFLGFBSlA7QUFLSkMsTUFBQUEsVUFBVSxFQUFFLGlCQUxSO0FBTUpDLE1BQUFBLFNBQVMsRUFBRSxZQU5QO0FBT0pDLE1BQUFBLFlBQVksRUFBRTtBQVBWO0FBREQsR0ExQ007QUFxRGJDLEVBQUFBLE9BQU8sRUFBRTtBQUNQQyxJQUFBQSxNQUFNLEVBQUU7QUFDTkMsTUFBQUEsS0FBSyxFQUFFLE9BREQ7QUFFTkMsTUFBQUEsTUFBTSxFQUFFLGFBRkY7QUFHTkMsTUFBQUEsV0FBVyxFQUFFLGFBSFA7QUFJTkMsTUFBQUEsT0FBTyxFQUFFO0FBSkg7QUFERCxHQXJESTtBQTZEYkgsRUFBQUEsS0FBSyxFQUFFO0FBQ0xJLElBQUFBLFFBQVEsRUFBRSxhQURMO0FBRUwxQyxJQUFBQSxNQUFNLEVBQUUsTUFGSDtBQUdMTCxJQUFBQSxNQUFNLEVBQUUsVUFISDtBQUlMZ0QsSUFBQUEsZUFBZSxFQUFFLDZCQUpaO0FBS0w3QyxJQUFBQSxLQUFLLEVBQUUsTUFMRjtBQU1MRCxJQUFBQSxTQUFTLEVBQUUsYUFOTjtBQU9MSSxJQUFBQSxPQUFPLEVBQUUsV0FQSjtBQVFMRyxJQUFBQSxRQUFRLEVBQUUsV0FSTDtBQVNMRixJQUFBQSxNQUFNLEVBQUUsT0FUSDtBQVVMMEMsSUFBQUEsV0FBVyxFQUFFLGdCQVZSO0FBV0w3QyxJQUFBQSxXQUFXLEVBQUUsYUFYUjtBQVlMOEMsSUFBQUEsS0FBSyxFQUFFLE9BWkY7QUFhTEMsSUFBQUEsV0FBVyxFQUFFLGVBYlI7QUFjTEMsSUFBQUEsc0JBQXNCLEVBQUUsMERBZG5CO0FBZUxDLElBQUFBLFFBQVEsRUFBRSxXQWZMO0FBZ0JMQyxJQUFBQSxzQkFBc0IsRUFBRSwrREFoQm5CO0FBaUJMQyxJQUFBQSxrQkFBa0IsRUFBRSw0REFqQmY7QUFrQkxDLElBQUFBLFdBQVcsRUFBRSw0QkFsQlI7QUFtQkwsZUFBVyxVQW5CTjtBQW9CTCxzQkFBa0IscUJBcEJiO0FBcUJMQyxJQUFBQSxJQUFJLEVBQUU7QUFDSkMsTUFBQUEsS0FBSyxFQUFFLE9BREg7QUFFSkMsTUFBQUEsR0FBRyxFQUFFLE9BRkQ7QUFHSkMsTUFBQUEsSUFBSSxFQUFFLE9BSEY7QUFJSkMsTUFBQUEsSUFBSSxFQUFFLFVBSkY7QUFLSkMsTUFBQUEsTUFBTSxFQUFFLFFBTEo7QUFNSkMsTUFBQUEsT0FBTyxFQUFFLFVBTkw7QUFPSkMsTUFBQUEsT0FBTyxFQUFFLFNBUEw7QUFRSkMsTUFBQUEsT0FBTyxFQUFFLFVBUkw7QUFTSkMsTUFBQUEsSUFBSSxFQUFFLE1BVEY7QUFVSkMsTUFBQUEsT0FBTyxFQUFFLGNBVkw7QUFXSkMsTUFBQUEsRUFBRSxFQUFFLElBWEE7QUFZSkMsTUFBQUEsSUFBSSxFQUFFLE9BWkY7QUFhSkMsTUFBQUEsRUFBRSxFQUFFLElBYkE7QUFjSixZQUFNO0FBZEY7QUFyQkQsR0E3RE07QUFtR2JDLEVBQUFBLGVBQWUsRUFBRTtBQUNmdEIsSUFBQUEsV0FBVyxFQUFFLGdCQURFO0FBRWZ1QixJQUFBQSxnQkFBZ0IsRUFBRSx3QkFGSDtBQUdmbkUsSUFBQUEsTUFBTSxFQUFFLE1BSE87QUFJZm9FLElBQUFBLFdBQVcsRUFBRSxvQkFKRTtBQUtmQyxJQUFBQSxzQkFBc0IsRUFBRSxxRUFMVDtBQU1mQyxJQUFBQSxXQUFXLEVBQUUsY0FORTtBQU9mQyxJQUFBQSxhQUFhLEVBQUUsNEJBUEE7QUFRZkMsSUFBQUEsaUJBQWlCLEVBQUUseUJBUko7QUFTZkMsSUFBQUEsT0FBTyxFQUFFLGNBVE07QUFVZnJFLElBQUFBLFFBQVEsRUFBRSxXQVZLO0FBV2ZILElBQUFBLE9BQU8sRUFBRSxXQVhNO0FBWWZ5RSxJQUFBQSxVQUFVLEVBQUUsY0FaRztBQWFmeEUsSUFBQUEsTUFBTSxFQUFFLE9BYk87QUFjZkgsSUFBQUEsV0FBVyxFQUFFLGFBZEU7QUFlZjRFLElBQUFBLGdCQUFnQixFQUFFLG9CQWZIO0FBZ0JmQyxJQUFBQSxXQUFXLEVBQUUsY0FoQkU7QUFpQmZDLElBQUFBLGdCQUFnQixFQUFFLG9CQWpCSDtBQWtCZkMsSUFBQUEsaUJBQWlCLEVBQUUsdUJBbEJKO0FBbUJmQyxJQUFBQSxlQUFlLEVBQUUsbUJBbkJGO0FBb0JmQyxJQUFBQSxTQUFTLEVBQUUsYUFwQkk7QUFxQmZDLElBQUFBLGFBQWEsRUFBRSxTQXJCQTtBQXNCZkMsSUFBQUEsY0FBYyxFQUFFLHFCQXRCRDtBQXVCZkMsSUFBQUEsV0FBVyxFQUFFLGtCQXZCRTtBQXdCZkMsSUFBQUEsYUFBYSxFQUFFLG9CQXhCQTtBQXlCZkMsSUFBQUEsc0JBQXNCLEVBQUUsb0JBekJUO0FBMEJmQyxJQUFBQSxpQ0FBaUMsRUFBRSxxREExQnBCO0FBMkJmQyxJQUFBQSxNQUFNLEVBQUUsU0EzQk87QUE0QmZDLElBQUFBLGlCQUFpQixFQUFFLDhEQTVCSjtBQTZCZkMsSUFBQUEsSUFBSSxFQUFFLFFBN0JTO0FBOEJmQyxJQUFBQSxtQkFBbUIsRUFBRSwwQkE5Qk47QUErQmZDLElBQUFBLGFBQWEsRUFBRSx1QkEvQkE7QUFnQ2ZDLElBQUFBLGVBQWUsRUFBRSwyQkFoQ0Y7QUFpQ2ZDLElBQUFBLFNBQVMsRUFBRSxlQWpDSTtBQWtDZkMsSUFBQUEsV0FBVyxFQUFFO0FBbENFLEdBbkdKO0FBdUliQyxFQUFBQSxZQUFZLEVBQUU7QUFDWkMsSUFBQUEsT0FBTyxFQUFFLGdCQURHO0FBRVpDLElBQUFBLFFBQVEsRUFBRSxZQUZFO0FBR1pDLElBQUFBLGFBQWEsRUFBRTtBQUhILEdBdklEO0FBNEliQyxFQUFBQSxVQUFVLEVBQUU7QUFDVkMsSUFBQUEsUUFBUSxFQUFFLGNBREE7QUFFVkMsSUFBQUEsV0FBVyxFQUFFLHNCQUZIO0FBR1YsdUJBQW1CO0FBSFQsR0E1SUM7QUFpSmJDLEVBQUFBLGtCQUFrQixFQUFFO0FBQ2xCQyxJQUFBQSxrQkFBa0IsRUFBRSwwREFERjtBQUVsQkMsSUFBQUEsS0FBSyxFQUFFO0FBRlcsR0FqSlA7QUFxSmJDLEVBQUFBLGFBQWEsRUFBRTtBQUNiQyxJQUFBQSxTQUFTLEVBQUU7QUFERSxHQXJKRjtBQXdKYkMsRUFBQUEsWUFBWSxFQUFFO0FBQ1pDLElBQUFBLGFBQWEsRUFBRSx3QkFESDtBQUVaQyxJQUFBQSxhQUFhLEVBQUU7QUFGSCxHQXhKRDtBQTRKYkMsRUFBQUEsV0FBVyxFQUFFO0FBQ1hDLElBQUFBLFFBQVEsRUFBRTtBQURDLEdBNUpBO0FBK0piQyxFQUFBQSxPQUFPLEVBQUU7QUFDUEMsSUFBQUEsU0FBUyxFQUFFLGNBREo7QUFFUEMsSUFBQUEsU0FBUyxFQUFFLFlBRko7QUFHUEMsSUFBQUEsV0FBVyxFQUFFLGVBSE47QUFJUEMsSUFBQUEsV0FBVyxFQUFFLGFBSk47QUFLUEMsSUFBQUEsSUFBSSxFQUFFLFNBTEM7QUFNUEMsSUFBQUEsSUFBSSxFQUFFLE9BTkM7QUFPUEMsSUFBQUEsV0FBVyxFQUFFLGFBUE47QUFRUEMsSUFBQUEsYUFBYSxFQUFFLGlCQVJSO0FBU1BDLElBQUFBLFVBQVUsRUFBRSxlQVRMO0FBVVBDLElBQUFBLGdCQUFnQixFQUFFLDhCQVZYO0FBV1BDLElBQUFBLFVBQVUsRUFBRSxjQVhMO0FBWVBDLElBQUFBLFlBQVksRUFBRSxxQkFaUDtBQWFQQyxJQUFBQSxTQUFTLEVBQUUsaUJBYko7QUFjUEMsSUFBQUEsWUFBWSxFQUFFLG1CQWRQO0FBZVBDLElBQUFBLGNBQWMsRUFBRSxxQkFmVDtBQWdCUEMsSUFBQUEsY0FBYyxFQUFFLG1CQWhCVDtBQWlCUEMsSUFBQUEsU0FBUyxFQUFFLGdDQWpCSjtBQWtCUEMsSUFBQUEsa0JBQWtCLEVBQUUsMkJBbEJiO0FBbUJQLGNBQVEsUUFuQkQ7QUFvQlBDLElBQUFBLFlBQVksRUFBRSxnQkFwQlA7QUFxQlBDLElBQUFBLFlBQVksRUFBRSxnQkFyQlA7QUFzQlAsYUFBUztBQXRCRixHQS9KSTtBQXVMYkMsRUFBQUEsT0FBTyxFQUFFO0FBQ1BDLElBQUFBLFdBQVcsRUFBRSxVQUROO0FBRVBDLElBQUFBLFVBQVUsRUFBRSxlQUZMO0FBR1BDLElBQUFBLFNBQVMsRUFBRSxZQUhKO0FBSVBDLElBQUFBLFdBQVcsRUFBRSxnQkFKTjtBQUtQQyxJQUFBQSxPQUFPLEVBQUUsaUJBTEY7QUFNUEMsSUFBQUEsTUFBTSxFQUFFLFNBTkQ7QUFPUGpGLElBQUFBLE9BQU8sRUFBRSxVQVBGO0FBUVBrRixJQUFBQSxTQUFTLEVBQUUsWUFSSjtBQVNQdkIsSUFBQUEsSUFBSSxFQUFFLFNBVEM7QUFVUEMsSUFBQUEsSUFBSSxFQUFFLE9BVkM7QUFXUHVCLElBQUFBLEVBQUUsRUFBRSxTQVhHO0FBWVBDLElBQUFBLEVBQUUsRUFBRTtBQVpHLEdBdkxJO0FBcU1iQyxFQUFBQSxLQUFLLEVBQUU7QUFDTHpILElBQUFBLEtBQUssRUFBRTtBQUNMMEgsTUFBQUEsYUFBYSxFQUFFLGlCQURWO0FBRUxDLE1BQUFBLFlBQVksRUFBRSwyQkFGVDtBQUdMWCxNQUFBQSxXQUFXLEVBQUUsVUFIUjtBQUlMQyxNQUFBQSxVQUFVLEVBQUUsZUFKUDtBQUtMQyxNQUFBQSxTQUFTLEVBQUUsWUFMTjtBQU1MVSxNQUFBQSxvQkFBb0IsRUFBRSx3QkFOakI7QUFPTFIsTUFBQUEsT0FBTyxFQUFFLGlCQVBKO0FBUUxTLE1BQUFBLFFBQVEsRUFBRTtBQVJMLEtBREY7QUFXTEMsSUFBQUEsTUFBTSxFQUFFO0FBQ04sZ0JBQVEsUUFERjtBQUVOQyxNQUFBQSxRQUFRLEVBQUUsT0FGSjtBQUdOLGdCQUFRLEtBSEY7QUFJTkMsTUFBQUEsUUFBUSxFQUFFLGFBSko7QUFLTkMsTUFBQUEsSUFBSSxFQUFFLFVBTEE7QUFNTkMsTUFBQUEsYUFBYSxFQUFFLE1BTlQ7QUFPTkMsTUFBQUEsY0FBYyxFQUFFO0FBUFYsS0FYSDtBQW9CTG5CLElBQUFBLFdBQVcsRUFBRTtBQUNYb0IsTUFBQUEsVUFBVSxFQUFFLFdBREQ7QUFFWEMsTUFBQUEsZ0JBQWdCLEVBQUUsbURBRlA7QUFHWEMsTUFBQUEsbUJBQW1CLEVBQUUscUJBSFY7QUFJWEMsTUFBQUEsV0FBVyxFQUFFLFlBSkY7QUFLWEMsTUFBQUEsUUFBUSxFQUFFLEtBTEM7QUFNWEMsTUFBQUEsU0FBUyxFQUFFLE1BTkE7QUFPWEMsTUFBQUEsZUFBZSxFQUFFLFlBUE47QUFRWEMsTUFBQUEscUJBQXFCLEVBQUUsbURBUlo7QUFTWEMsTUFBQUEsY0FBYyxFQUFFLGVBVEw7QUFVWEMsTUFBQUEsWUFBWSxFQUFFO0FBVkgsS0FwQlI7QUFnQ0w1QixJQUFBQSxVQUFVLEVBQUU7QUFDVjVCLE1BQUFBLFlBQVksRUFBRSxXQURKO0FBRVZ5RCxNQUFBQSxlQUFlLEVBQUUsb0NBRlA7QUFHVkMsTUFBQUEsV0FBVyxFQUFFLFFBSEg7QUFJVkMsTUFBQUEsYUFBYSxFQUFFLHVCQUpMO0FBS1ZDLE1BQUFBLGdCQUFnQixFQUFFLHVEQUxSO0FBTVZDLE1BQUFBLGVBQWUsRUFBRSxvQkFOUDtBQU9WQyxNQUFBQSxrQkFBa0IsRUFBRSxpRUFQVjtBQVFWQyxNQUFBQSxZQUFZLEVBQUUsc0JBUko7QUFTVkMsTUFBQUEsY0FBYyxFQUFFLDRCQVROO0FBVVZDLE1BQUFBLFNBQVMsRUFBRSx1QkFWRDtBQVdWN0QsTUFBQUEsUUFBUSxFQUFFO0FBWEEsS0FoQ1A7QUE2Q0w4RCxJQUFBQSxVQUFVLEVBQUU7QUFDVkMsTUFBQUEsT0FBTyxFQUFFO0FBREMsS0E3Q1A7QUFnREx4QixJQUFBQSxRQUFRLEVBQUU7QUFDUnlCLE1BQUFBLFlBQVksRUFBRSxrREFETjtBQUVSQyxNQUFBQSxnQkFBZ0IsRUFBRSx1Q0FGVjtBQUdSQyxNQUFBQSxnQkFBZ0IsRUFBRSxJQUhWO0FBSVJDLE1BQUFBLGdCQUFnQixFQUFFLFdBSlY7QUFLUkMsTUFBQUEsZ0JBQWdCLEVBQUUsTUFMVjtBQU1SQyxNQUFBQSxnQkFBZ0IsRUFBRSx1Q0FOVjtBQU9SQyxNQUFBQSxnQkFBZ0IsRUFBRSxhQVBWO0FBUVJDLE1BQUFBLGdCQUFnQixFQUNkLDRFQVRNO0FBVVJDLE1BQUFBLFlBQVksRUFBRSx5QkFWTjtBQVdSQyxNQUFBQSxVQUFVLEVBQUUsb0JBWEo7QUFZUkMsTUFBQUEsY0FBYyxFQUFFLFNBWlI7QUFhUkMsTUFBQUEsY0FBYyxFQUFFLFlBYlI7QUFjUkMsTUFBQUEsV0FBVyxFQUFFO0FBZEwsS0FoREw7QUFnRUxDLElBQUFBLFFBQVEsRUFBRTtBQUNSQyxNQUFBQSxhQUFhLEVBQUUsZ0JBRFA7QUFFUkMsTUFBQUEsZ0JBQWdCLEVBQUUsa0RBRlY7QUFHUkMsTUFBQUEsVUFBVSxFQUFFLGdCQUhKO0FBSVJDLE1BQUFBLGFBQWEsRUFDWCwrRUFMTTtBQU1SQyxNQUFBQSxlQUFlLEVBQ2IsNEpBQ0Esd0VBUk07QUFTUkMsTUFBQUEsUUFBUSxFQUFFO0FBVEYsS0FoRUw7QUEyRUxDLElBQUFBLFdBQVcsRUFBRTtBQUNYQyxNQUFBQSxZQUFZLEVBQUUsa0JBREg7QUFFWEMsTUFBQUEsS0FBSyxFQUFFO0FBRkksS0EzRVI7QUErRUwzRCxJQUFBQSxPQUFPLEVBQUU7QUFDUHBILE1BQUFBLEtBQUssRUFBRSxnQkFEQTtBQUVQZ0wsTUFBQUEsUUFBUSxFQUFFO0FBRkgsS0EvRUo7QUFtRkw5RCxJQUFBQSxTQUFTLEVBQUU7QUFDVCtELE1BQUFBLFdBQVcsRUFBRSxrQkFESjtBQUVUQyxNQUFBQSxjQUFjLEVBQUUsc0NBRlA7QUFHVEMsTUFBQUEsSUFBSSxFQUFFO0FBQ0pDLFFBQUFBLFNBQVMsRUFBRSw2Q0FEUDtBQUVKQyxRQUFBQSxVQUFVLEVBQUUsaUJBRlI7QUFHSkMsUUFBQUEsYUFBYSxFQUFFLGdFQUhYO0FBSUpDLFFBQUFBLGdCQUFnQixFQUFFLDBCQUpkO0FBS0pDLFFBQUFBLGtCQUFrQixFQUNoQiwySUFORTtBQU9KQyxRQUFBQSxlQUFlLEVBQUUsMERBUGI7QUFRSkMsUUFBQUEsV0FBVyxFQUFFLDhDQVJUO0FBU0pDLFFBQUFBLFNBQVMsRUFBRSxhQVRQO0FBVUpDLFFBQUFBLGFBQWEsRUFBRSxzQkFWWDtBQVdKQyxRQUFBQSxhQUFhLEVBQUUsYUFYWDtBQVlKQyxRQUFBQSxlQUFlLEVBQUUsZ0NBWmI7QUFhSkMsUUFBQUEsSUFBSSxFQUFFLE9BYkY7QUFjSkMsUUFBQUEsSUFBSSxFQUFFO0FBZEYsT0FIRztBQW1CVEMsTUFBQUEsSUFBSSxFQUFFO0FBQ0pDLFFBQUFBLFdBQVcsRUFBRSxrQkFEVDtBQUVKQyxRQUFBQSxnQkFBZ0IsRUFDZCxzSkFIRTtBQUlKZixRQUFBQSxTQUFTLEVBQ1AseUlBTEU7QUFNSmdCLFFBQUFBLFVBQVUsRUFDUixpS0FDQTtBQVJFO0FBbkJHLEtBbkZOO0FBaUhMQyxJQUFBQSxhQUFhLEVBQUU7QUFDYkMsTUFBQUEsT0FBTyxFQUFFO0FBREksS0FqSFY7QUFvSExDLElBQUFBLFFBQVEsRUFBRTtBQUNSQyxNQUFBQSxNQUFNLEVBQUUsaUJBREE7QUFFUkMsTUFBQUEsT0FBTyxFQUFFO0FBRkQsS0FwSEw7QUF3SExDLElBQUFBLFFBQVEsRUFBRTtBQUNSMU0sTUFBQUEsS0FBSyxFQUFFLGtDQURDO0FBRVIyTSxNQUFBQSxZQUFZLEVBQ1YsMEpBSE07QUFJUkMsTUFBQUEsSUFBSSxFQUFFLGdEQUpFO0FBS1JDLE1BQUFBLFlBQVksRUFDViwySkFOTTtBQU9SQyxNQUFBQSxPQUFPLEVBQUU7QUFQRCxLQXhITDtBQWlJTEMsSUFBQUEsUUFBUSxFQUFFO0FBQ1IvTSxNQUFBQSxLQUFLLEVBQUUscUJBREM7QUFFUjJNLE1BQUFBLFlBQVksRUFDViw0SUFITTtBQUlSQyxNQUFBQSxJQUFJLEVBQUUsTUFKRTtBQUtSQyxNQUFBQSxZQUFZLEVBQUUsd0RBTE47QUFNUkMsTUFBQUEsT0FBTyxFQUFFLFlBTkQ7QUFPUkUsTUFBQUEsS0FBSyxFQUFFO0FBUEMsS0FqSUw7QUEwSUxDLElBQUFBLGdCQUFnQixFQUFFO0FBQ2hCQyxNQUFBQSxZQUFZLEVBQUUsd0NBREU7QUFFaEJDLE1BQUFBLElBQUksRUFBRTtBQUZVLEtBMUliO0FBOElMQyxJQUFBQSxZQUFZLEVBQUU7QUFDWnBOLE1BQUFBLEtBQUssRUFBRSx5QkFESztBQUVacU4sTUFBQUEsYUFBYSxFQUFFO0FBRkgsS0E5SVQ7QUFrSkxDLElBQUFBLGNBQWMsRUFBRTtBQUNkSCxNQUFBQSxJQUFJLEVBQUUsVUFEUTtBQUVkSSxNQUFBQSxRQUFRLEVBQUUsd0NBRkk7QUFHZEMsTUFBQUEsV0FBVyxFQUFFLG9CQUhDO0FBSWRDLE1BQUFBLFdBQVcsRUFBRTtBQUpDO0FBbEpYLEdBck1NO0FBOFZiQyxFQUFBQSxNQUFNLEVBQUU7QUFDTkMsSUFBQUEsYUFBYSxFQUFFLHdCQURUO0FBRU5DLElBQUFBLFdBQVcsRUFBRTtBQUZQLEdBOVZLO0FBa1diQyxFQUFBQSxZQUFZLEVBQUU7QUFDWm5JLElBQUFBLE9BQU8sRUFBRSxPQURHO0FBRVpvSSxJQUFBQSxLQUFLLEVBQUUsT0FGSztBQUdaQyxJQUFBQSxVQUFVLEVBQUU7QUFIQSxHQWxXRDtBQXVXYm5KLEVBQUFBLGFBQWEsRUFBRTtBQUNiNUUsSUFBQUEsS0FBSyxFQUFFLHNCQURNO0FBRWJnTyxJQUFBQSxRQUFRLEVBQUUsU0FGRztBQUdiQyxJQUFBQSxNQUFNLEVBQUUsVUFISztBQUliQyxJQUFBQSxXQUFXLEVBQUU7QUFKQSxHQXZXRjtBQTZXYkMsRUFBQUEsT0FBTyxFQUFFO0FBQ1BuTyxJQUFBQSxLQUFLLEVBQUUsV0FEQTtBQUVQb08sSUFBQUEsR0FBRyxFQUFFLEtBRkU7QUFHUEMsSUFBQUEsR0FBRyxFQUFFLEtBSEU7QUFJUEMsSUFBQUEsUUFBUSxFQUFFLFNBSkg7QUFLUC9MLElBQUFBLElBQUksRUFBRSxNQUxDO0FBTVBGLElBQUFBLE9BQU8sRUFBRSxTQU5GO0FBT1BMLElBQUFBLEdBQUcsRUFBRTtBQUNIdU0sTUFBQUEsSUFBSSxFQUFFLFlBREg7QUFFSEMsTUFBQUEsSUFBSSxFQUFFLFlBRkg7QUFHSEMsTUFBQUEsSUFBSSxFQUFFLGFBSEg7QUFJSEMsTUFBQUEsSUFBSSxFQUFFO0FBSkgsS0FQRTtBQWFQeE0sSUFBQUEsSUFBSSxFQUFFO0FBQ0p5QixNQUFBQSxhQUFhLEVBQUU7QUFEWCxLQWJDO0FBZ0JQZ0wsSUFBQUEsT0FBTyxFQUFFO0FBQ1BoTCxNQUFBQSxhQUFhLEVBQUU7QUFEUjtBQWhCRixHQTdXSTtBQWlZYm5GLEVBQUFBLEtBQUssRUFBRTtBQUNMb1EsSUFBQUEsYUFBYSxFQUFFLG9CQURWO0FBRUxDLElBQUFBLEtBQUssRUFBRSxVQUZGO0FBR0wvTSxJQUFBQSxJQUFJLEVBQUUsUUFIRDtBQUlMZ04sSUFBQUEsUUFBUSxFQUFFO0FBSkwsR0FqWU07QUF1WWJDLEVBQUFBLEtBQUssRUFBRTtBQUNMQyxJQUFBQSxVQUFVLEVBQUUsY0FEUDtBQUVMdEwsSUFBQUEsU0FBUyxFQUFFLGFBRk47QUFHTHVMLElBQUFBLFdBQVcsRUFBRSx5QkFIUjtBQUlMRixJQUFBQSxLQUFLLEVBQUU7QUFKRixHQXZZTTtBQTZZYkcsRUFBQUEsWUFBWSxFQUFFO0FBQ1pDLElBQUFBLE9BQU8sRUFBRSxtQ0FERztBQUVaQyxJQUFBQSxhQUFhLEVBQ1gsdUdBSFU7QUFJWmhELElBQUFBLFVBQVUsRUFDUix3RUFDQSxtQ0FOVTtBQU9aaUQsSUFBQUEsbUJBQW1CLEVBQ2pCLG9HQVJVO0FBU1pDLElBQUFBLFdBQVcsRUFBRSxvQkFURDtBQVVaQyxJQUFBQSxTQUFTLEVBQUUsVUFWQztBQVdaQyxJQUFBQSxnQkFBZ0IsRUFBRSxzQ0FYTjtBQVlaQyxJQUFBQSxFQUFFLEVBQUU7QUFaUSxHQTdZRDtBQTJaYjVRLEVBQUFBLE9BQU8sRUFBRSxRQTNaSTtBQTRaYixnQkFBYyxpQkE1WkQ7QUE2WmIsZ0JBQWMsTUE3WkQ7QUE4WmI2USxFQUFBQSxJQUFJLEVBQUUsVUE5Wk87QUErWmJDLEVBQUFBLEtBQUssRUFBRTtBQS9aTSxDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIwIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuZXhwb3J0IGRlZmF1bHQge1xuICBwcm9wZXJ0eToge1xuICAgIHdlaWdodDogJ3BhaW5vdHVzJyxcbiAgICBsYWJlbDogJ25pbWnDticsXG4gICAgZmlsbENvbG9yOiAndMOkeXR0w7Z2w6RyaScsXG4gICAgY29sb3I6ICd2w6RyaScsXG4gICAgc3Ryb2tlQ29sb3I6ICd2aWl2YW4gdsOkcmknLFxuICAgIHJhZGl1czogJ3PDpGRlJyxcbiAgICBvdXRsaW5lOiAnw6TDpHJpdmlpdmEnLFxuICAgIHN0cm9rZTogJ3ZpaXZhJyxcbiAgICBkZW5zaXR5OiAndGloZXlzJyxcbiAgICBjb3ZlcmFnZTogJ2thdHRhdnV1cycsXG4gICAgc3VtOiAnc3VtbWEnLFxuICAgIHBvaW50Q291bnQ6ICdwaXN0ZWlkZW4gbHVrdW3DpMOkcsOkJ1xuICB9LFxuICBwbGFjZWhvbGRlcjoge1xuICAgIHNlYXJjaDogJ0V0c2knLFxuICAgIHNlbGVjdEZpZWxkOiAnVmFsaXRzZSBrZW50dMOkJyxcbiAgICB5QXhpczogJ1ktYWtzZWxpJyxcbiAgICBzZWxlY3RUeXBlOiAnVmFsaXRzZSB0eXlwcGknLFxuICAgIHNlbGVjdFZhbHVlOiAnVmFsaXRzZSBhcnZvJyxcbiAgICBlbnRlclZhbHVlOiAnQW5uYSBhcnZvJyxcbiAgICBlbXB0eTogJ3R5aGrDpCdcbiAgfSxcbiAgbWlzYzoge1xuICAgIGJ5OiAnJyxcbiAgICB2YWx1ZXNJbjogJ0Fydm90IGpvdWtvc3NhOicsXG4gICAgdmFsdWVFcXVhbHM6ICdBcnZvIG9uIHlodMOkc3V1cmkga3VpbicsXG4gICAgZGF0YVNvdXJjZTogJ0FpbmVpc3RvbMOkaGRlJyxcbiAgICBicnVzaFJhZGl1czogJ0hhcmphbiBzw6RkZSAoa20pJyxcbiAgICBlbXB0eTogJyAnXG4gIH0sXG4gIG1hcExheWVyczoge1xuICAgIHRpdGxlOiAnS2FydGFuIHRhc290JyxcbiAgICBsYWJlbDogJ05pbWnDtnQnLFxuICAgIHJvYWQ6ICdUaWV0JyxcbiAgICBib3JkZXI6ICdSYWphdCcsXG4gICAgYnVpbGRpbmc6ICdSYWtlbm51a3NldCcsXG4gICAgd2F0ZXI6ICdWZXNpJyxcbiAgICBsYW5kOiAnTWFhJyxcbiAgICAnM2RCdWlsZGluZyc6ICczZC1yYWtlbm51a3NldCdcbiAgfSxcbiAgcGFuZWw6IHtcbiAgICB0ZXh0OiB7XG4gICAgICBsYWJlbDogJ05pbWnDticsXG4gICAgICBsYWJlbFdpdGhJZDogJ05pbWnDtiB7bGFiZWxJZH0nLFxuICAgICAgZm9udFNpemU6ICdGb250aW4ga29rbycsXG4gICAgICBmb250Q29sb3I6ICdGb250aW4gdsOkcmknLFxuICAgICAgdGV4dEFuY2hvcjogJ1Rla3N0aW4gYW5ra3VyaScsXG4gICAgICBhbGlnbm1lbnQ6ICdTaWpvaXR0ZWx1JyxcbiAgICAgIGFkZE1vcmVMYWJlbDogJ0xpc8Okw6QgdXVzaWEgbmltacO2aXTDpCdcbiAgICB9XG4gIH0sXG4gIHNpZGViYXI6IHtcbiAgICBwYW5lbHM6IHtcbiAgICAgIGxheWVyOiAnVGFzb3QnLFxuICAgICAgZmlsdGVyOiAnU3VvZGF0dGltZXQnLFxuICAgICAgaW50ZXJhY3Rpb246ICdJbnRlcmFrdGlvdCcsXG4gICAgICBiYXNlbWFwOiAnVGF1c3Rha2FydHRhJ1xuICAgIH1cbiAgfSxcbiAgbGF5ZXI6IHtcbiAgICByZXF1aXJlZDogJ1Bha29sbGluZW4qJyxcbiAgICByYWRpdXM6ICdTw6RkZScsXG4gICAgd2VpZ2h0OiAnUGFpbm90dXMnLFxuICAgIHByb3BlcnR5QmFzZWRPbjogJ3twcm9wZXJ0eX0gcGVydXN0dWVuIGFydm9vbicsXG4gICAgY29sb3I6ICdWw6RyaScsXG4gICAgZmlsbENvbG9yOiAnVMOkeXTDtm4gdsOkcmknLFxuICAgIG91dGxpbmU6ICfDpMOkcml2aWl2YScsXG4gICAgY292ZXJhZ2U6ICdLYXR0YXZ1dXMnLFxuICAgIHN0cm9rZTogJ1ZpaXZhJyxcbiAgICBzdHJva2VXaWR0aDogJ1ZpaXZhbiBwYWtzdXVzJyxcbiAgICBzdHJva2VDb2xvcjogJ1ZpaXZhbiB2w6RyaScsXG4gICAgYmFzaWM6ICdQZXJ1cycsXG4gICAgdHJhaWxMZW5ndGg6ICdKw6RsamVuIHBpdHV1cycsXG4gICAgdHJhaWxMZW5ndGhEZXNjcmlwdGlvbjogJ0rDpGxqZW4ga2VzdG8gc2VrdW50ZWluYSwgZW5uZW5rdWluIHNlIGhpbW1lbmVlIG7DpGt5dmlzdMOkJyxcbiAgICBuZXdMYXllcjogJ3V1c2kgdGFzbycsXG4gICAgZWxldmF0aW9uQnlEZXNjcmlwdGlvbjogJ0t1biBhc2V0dXMgb24gcG9pcyBww6TDpGx0w6QsIGtvcmtldXMgcGVydXN0dXUgcGlzdGVpZGVuIG3DpMOkcsOkw6RuJyxcbiAgICBjb2xvckJ5RGVzY3JpcHRpb246ICdLdW4gYXNldHVzIG9uIHBvaXMgcMOkw6RsdMOkLCB2w6RyaSBwZXJ1c3R1dSBwaXN0ZWlkZW4gbcOkw6Ryw6TDpG4nLFxuICAgIGFnZ3JlZ2F0ZUJ5OiAnQWdncmVnb2kga2VudHTDpCB7ZmllbGR9IGJ5JyxcbiAgICAnM0RNb2RlbCc6ICczRC1tYWxsaScsXG4gICAgJzNETW9kZWxPcHRpb25zJzogJzNELW1hbGxpbiBhc2V0dWtzZXQnLFxuICAgIHR5cGU6IHtcbiAgICAgIHBvaW50OiAncGlzdGUnLFxuICAgICAgYXJjOiAna2FhcmknLFxuICAgICAgbGluZTogJ3ZpaXZhJyxcbiAgICAgIGdyaWQ6ICdydXVkdWtrbycsXG4gICAgICBoZXhiaW46ICdoZXhiaW4nLFxuICAgICAgcG9seWdvbjogJ3BvbHlnb25pJyxcbiAgICAgIGdlb2pzb246ICdnZW9qc29uJyxcbiAgICAgIGNsdXN0ZXI6ICdrbHVzdGVyaScsXG4gICAgICBpY29uOiAna3V2YScsXG4gICAgICBoZWF0bWFwOiAnIGzDpG1ww7ZrYXJ0dGEnLFxuICAgICAgaDM6ICdIMycsXG4gICAgICB0cmlwOiAnbWF0a2EnLFxuICAgICAgczI6ICdTMicsXG4gICAgICAnM2QnOiAnM0QnXG4gICAgfVxuICB9LFxuICBsYXllclZpc0NvbmZpZ3M6IHtcbiAgICBzdHJva2VXaWR0aDogJ1ZpaXZhbiBwYWtzdXVzJyxcbiAgICBzdHJva2VXaWR0aFJhbmdlOiAnVmlpdmFuIHBha3N1dWRlbiByYWphdCcsXG4gICAgcmFkaXVzOiAnU8OkZGUnLFxuICAgIGZpeGVkUmFkaXVzOiAnVmFraW9zw6RkZSBtZXRyZWluw6QnLFxuICAgIGZpeGVkUmFkaXVzRGVzY3JpcHRpb246ICdLYXJ0YW4gc8OkZGUgYWJzb2x1dXR0aXNla3NpIHPDpHRlZWtzaSBtZXRyZWluw6QsIGVzaW0uIDUgLT4gNSBtZXRyaWluJyxcbiAgICByYWRpdXNSYW5nZTogJ1PDpHRlZW4gcmFqYXQnLFxuICAgIGNsdXN0ZXJSYWRpdXM6ICdLbHVzdGVyaWVuIHPDpGRlIHBpa3NlbGVpbsOkJyxcbiAgICByYWRpdXNSYW5nZVBpeGVsczogJ1PDpHRlZW4gcmFqYXQgcGlrc2VsZWluw6QnLFxuICAgIG9wYWNpdHk6ICdMw6RwaW7DpGt5dnl5cycsXG4gICAgY292ZXJhZ2U6ICdLYXR0YXZ1dXMnLFxuICAgIG91dGxpbmU6ICfDhMOkcml2aWl2YScsXG4gICAgY29sb3JSYW5nZTogJ1bDpHJpZW4gcmFqYXQnLFxuICAgIHN0cm9rZTogJ1ZpaXZhJyxcbiAgICBzdHJva2VDb2xvcjogJ1ZpaXZhbiB2w6RyaScsXG4gICAgc3Ryb2tlQ29sb3JSYW5nZTogJ1ZpaXZhbiB2w6RyaW4gcmFqYXQnLFxuICAgIHRhcmdldENvbG9yOiAnS29odGVlbiB2w6RyaScsXG4gICAgY29sb3JBZ2dyZWdhdGlvbjogJ1bDpHJpZW4gYWdncmVnb2ludGknLFxuICAgIGhlaWdodEFnZ3JlZ2F0aW9uOiAnS29ya2V1ZGVuIGFnZ3JlZ29pbnRpJyxcbiAgICByZXNvbHV0aW9uUmFuZ2U6ICdSZXNvbHV1dGlvbiByYWphdCcsXG4gICAgc2l6ZVNjYWxlOiAnS29vbiBza2FhbGEnLFxuICAgIHdvcmxkVW5pdFNpemU6ICdZa3Npa2vDticsXG4gICAgZWxldmF0aW9uU2NhbGU6ICdLb3JvdHRhbWlzZW4gc2thYWxhJyxcbiAgICBoZWlnaHRTY2FsZTogJ0tvcmtldWRlbiBza2FhbGEnLFxuICAgIGNvdmVyYWdlUmFuZ2U6ICdQZWl0dMOkdnl5ZGVuIHJhamF0JyxcbiAgICBoaWdoUHJlY2lzaW9uUmVuZGVyaW5nOiAnVGFya2thIHJlbmRlcsO2aW50aScsXG4gICAgaGlnaFByZWNpc2lvblJlbmRlcmluZ0Rlc2NyaXB0aW9uOiAnVGFya2thIHJlbmRlcsO2aW50aSBqb2h0YWEgaGl0YWFtcGFhbiBzdW9yaXR0YW1pc2VlbicsXG4gICAgaGVpZ2h0OiAnS29ya2V1cycsXG4gICAgaGVpZ2h0RGVzY3JpcHRpb246ICdLbGlra2FhIG9pa2Vhc3RhIHlsw6RudXJrYXN0YSBuYXBwaWEgdmFpaHRhYWtzZXNpIDNELW7DpGt5bcOkw6RuJyxcbiAgICBmaWxsOiAnVMOkeXR0w7YnLFxuICAgIGVuYWJsZVBvbHlnb25IZWlnaHQ6ICdTYWxsaSBwb2x5Z29uaWVuIGtvcmtldXMnLFxuICAgIHNob3dXaXJlZnJhbWU6ICdOw6R5dMOkIHJhdXRhbGFua2FtYWxsaScsXG4gICAgd2VpZ2h0SW50ZW5zaXR5OiAnUGFpbm90dWtzZW4gaW50ZW5zaXRlZXR0aScsXG4gICAgem9vbVNjYWxlOiAnWm9vbWF1c3NrYWFsYScsXG4gICAgaGVpZ2h0UmFuZ2U6ICdLb3JrZXVkZW4gcmFqYXQnXG4gIH0sXG4gIGxheWVyTWFuYWdlcjoge1xuICAgIGFkZERhdGE6ICdMaXPDpMOkIGFpbmVpc3RvJyxcbiAgICBhZGRMYXllcjogJ0xpc8Okw6QgdGFzbycsXG4gICAgbGF5ZXJCbGVuZGluZzogJ1Rhc29qZW4gc2Vrb2l0dHV2dXVzJ1xuICB9LFxuICBtYXBNYW5hZ2VyOiB7XG4gICAgbWFwU3R5bGU6ICdLYXJ0YW4gdHl5bGknLFxuICAgIGFkZE1hcFN0eWxlOiAnTGlzw6TDpCB0eXlsaSBrYXJ0YWxsZScsXG4gICAgJzNkQnVpbGRpbmdDb2xvcic6ICczRC1yYWtlbm51c3RlbiB2w6RyaSdcbiAgfSxcbiAgbGF5ZXJDb25maWd1cmF0aW9uOiB7XG4gICAgZGVmYXVsdERlc2NyaXB0aW9uOiAnTGFza2Ugc3V1cmVlbiB7cHJvcGVydHl9IGFydm8gdmFsaXR1biBrZW50w6RuIHBlcnVzdGVlbGxhJyxcbiAgICBob3dUbzogJ01pdGVuIHRvaW1paSdcbiAgfSxcbiAgZmlsdGVyTWFuYWdlcjoge1xuICAgIGFkZEZpbHRlcjogJ0xpc8Okw6Qgc3VvZGF0aW4nXG4gIH0sXG4gIGRhdGFzZXRUaXRsZToge1xuICAgIHNob3dEYXRhVGFibGU6ICdOw6R5dMOkIGF0dHJpYnV1dHRpdGF1bHUnLFxuICAgIHJlbW92ZURhdGFzZXQ6ICdQb2lzdGEgYWluZWlzdG8nXG4gIH0sXG4gIGRhdGFzZXRJbmZvOiB7XG4gICAgcm93Q291bnQ6ICd7cm93Q291bnR9IHJpdmnDpCdcbiAgfSxcbiAgdG9vbHRpcDoge1xuICAgIGhpZGVMYXllcjogJ1BpaWxvdGEgdGFzbycsXG4gICAgc2hvd0xheWVyOiAnTsOkeXTDpCB0YXNvJyxcbiAgICBoaWRlRmVhdHVyZTogJ1BpaWxvdGEga29oZGUnLFxuICAgIHNob3dGZWF0dXJlOiAnTsOkeXTDpCBrb2hkZScsXG4gICAgaGlkZTogJ3BpaWxvdGEnLFxuICAgIHNob3c6ICduw6R5dMOkJyxcbiAgICByZW1vdmVMYXllcjogJ1BvaXN0YSB0YXNvJyxcbiAgICBsYXllclNldHRpbmdzOiAnVGFzb24gYXNldHVrc2V0JyxcbiAgICBjbG9zZVBhbmVsOiAnU3VsamUgcGFuZWVsaScsXG4gICAgc3dpdGNoVG9EdWFsVmlldzogJ1ZhaWhkYSBrYWtzb2lza2FycnRhbsOka3ltw6TDpG4nLFxuICAgIHNob3dMZWdlbmQ6ICdOw6R5dMOkIHNlbGl0ZScsXG4gICAgZGlzYWJsZTNETWFwOiAnUG9pc3R1IDNELW7DpGt5bcOkc3TDpCcsXG4gICAgRHJhd09uTWFwOiAnUGlpcnLDpCBrYXJ0YWxsZScsXG4gICAgc2VsZWN0TG9jYWxlOiAnVmFsaXRzZSBraWVsaXN5eXMnLFxuICAgIGhpZGVMYXllclBhbmVsOiAnUGlpbG90YSB0YXNvcGFuZWVsaScsXG4gICAgc2hvd0xheWVyUGFuZWw6ICdOw6R5dMOkIHRhc29wYW5lZWxpJyxcbiAgICBtb3ZlVG9Ub3A6ICdTaWlycsOkIHRhc29qZW4gcMOkw6RsbGltbcOkaXNla3NpJyxcbiAgICBzZWxlY3RCYXNlTWFwU3R5bGU6ICdWYWxpdHNlIHRhdXN0YWthcnR0YXR5eWxpJyxcbiAgICBkZWxldGU6ICdQb2lzdGEnLFxuICAgIHRpbWVQbGF5YmFjazogJ0FqYW4gYW5pbW9pbnRpJyxcbiAgICBjbG91ZFN0b3JhZ2U6ICdQaWx2aXRhbGxlbm51cycsXG4gICAgJzNETWFwJzogJzNELW7DpGt5bcOkJ1xuICB9LFxuICB0b29sYmFyOiB7XG4gICAgZXhwb3J0SW1hZ2U6ICdWaWUga3V2YScsXG4gICAgZXhwb3J0RGF0YTogJ1ZpZSBhaW5laXN0b3QnLFxuICAgIGV4cG9ydE1hcDogJ1ZpZSBrYXJ0dGEnLFxuICAgIHNoYXJlTWFwVVJMOiAnSmFhIGthcnRhbiBVUkwnLFxuICAgIHNhdmVNYXA6ICdUYWxsZW5uYSBrYXJ0dGEnLFxuICAgIHNlbGVjdDogJ3ZhbGl0c2UnLFxuICAgIHBvbHlnb246ICdwb2x5Z29uaScsXG4gICAgcmVjdGFuZ2xlOiAnbmVsaWt1bG1pbycsXG4gICAgaGlkZTogJ3BpaWxvdGEnLFxuICAgIHNob3c6ICduw6R5dMOkJyxcbiAgICBlbjogJ0VuZ2xpc2gnLFxuICAgIGZpOiAnU3VvbWknXG4gIH0sXG4gIG1vZGFsOiB7XG4gICAgdGl0bGU6IHtcbiAgICAgIGRlbGV0ZURhdGFzZXQ6ICdQb2lzdGEgYWluZWlzdG8nLFxuICAgICAgYWRkRGF0YVRvTWFwOiAnTGlzw6TDpCBhaW5laXN0b2phIGthcnRhbGxlJyxcbiAgICAgIGV4cG9ydEltYWdlOiAnVmllIGt1dmEnLFxuICAgICAgZXhwb3J0RGF0YTogJ1ZpZSBhaW5laXN0b3QnLFxuICAgICAgZXhwb3J0TWFwOiAnVmllIGthcnR0YScsXG4gICAgICBhZGRDdXN0b21NYXBib3hTdHlsZTogJ0xpc8Okw6Qgb21hIE1hcGJveC10eXlsaScsXG4gICAgICBzYXZlTWFwOiAnVGFsbGVubmEga2FydHRhJyxcbiAgICAgIHNoYXJlVVJMOiAnSmFhIFVSTCdcbiAgICB9LFxuICAgIGJ1dHRvbjoge1xuICAgICAgZGVsZXRlOiAnUG9pc3RhJyxcbiAgICAgIGRvd25sb2FkOiAnTGF0YWEnLFxuICAgICAgZXhwb3J0OiAnVmllJyxcbiAgICAgIGFkZFN0eWxlOiAnTGlzw6TDpCB0eXlsaScsXG4gICAgICBzYXZlOiAnVGFsbGVubmEnLFxuICAgICAgZGVmYXVsdENhbmNlbDogJ1BlcnUnLFxuICAgICAgZGVmYXVsdENvbmZpcm06ICdWYWh2aXN0YSdcbiAgICB9LFxuICAgIGV4cG9ydEltYWdlOiB7XG4gICAgICByYXRpb1RpdGxlOiAnS3V2YXN1aGRlJyxcbiAgICAgIHJhdGlvRGVzY3JpcHRpb246ICdWYWxpdHNlIHNvcGl2YSBrdXZhc3VoZGUga8OkeXR0w7Z0YXBhdXN0YXNpIHZhcnRlbi4nLFxuICAgICAgcmF0aW9PcmlnaW5hbFNjcmVlbjogJ0Fsa3VwZXLDpGluZW4gbsOkeXR0w7YnLFxuICAgICAgcmF0aW9DdXN0b206ICdLdXN0b21vaXR1JyxcbiAgICAgIHJhdGlvNF8zOiAnNDozJyxcbiAgICAgIHJhdGlvMTZfOTogJzE2OjknLFxuICAgICAgcmVzb2x1dGlvblRpdGxlOiAnUmVzb2x1dXRpbycsXG4gICAgICByZXNvbHV0aW9uRGVzY3JpcHRpb246ICdLb3JrZWEgcmVzb2x1dXRpbyBvbiBwYXJlbXBpIHR1bG9zdGFtaXN0YSB2YXJ0ZW4uJyxcbiAgICAgIG1hcExlZ2VuZFRpdGxlOiAnS2FydGFuIHNlbGl0ZScsXG4gICAgICBtYXBMZWdlbmRBZGQ6ICdMaXPDpMOkIHNlbGl0ZSBrYXJ0dGFhbidcbiAgICB9LFxuICAgIGV4cG9ydERhdGE6IHtcbiAgICAgIGRhdGFzZXRUaXRsZTogJ0FpbmVpc3RvdCcsXG4gICAgICBkYXRhc2V0U3VidGl0bGU6ICdWYWxpdHNlIGFpbmVpc3RvLCBqb25rYSBhaW90IHZpZWTDpCcsXG4gICAgICBhbGxEYXRhc2V0czogJ0thaWtraScsXG4gICAgICBkYXRhVHlwZVRpdGxlOiAnQWluZWlzdG9qZW4gZm9ybWFhdHRpJyxcbiAgICAgIGRhdGFUeXBlU3VidGl0bGU6ICdWYWxpdHNlIGFpbmVpc3RvZm9ybWFhdHRpIHZhbGl0c2VtaWxsZXNpIGFpbmVpc3RvaWxsZScsXG4gICAgICBmaWx0ZXJEYXRhVGl0bGU6ICdTdW9kYXRhIGFpbmVpc3RvamEnLFxuICAgICAgZmlsdGVyRGF0YVN1YnRpdGxlOiAnVm9pdCB2aWVkw6Qgam9rbyBhbGt1cGVyw6Rpc2V0IGFpbmVpc3RvdCB0YWkgc3VvZGF0ZXR1dCBhaW5laXN0b3QnLFxuICAgICAgZmlsdGVyZWREYXRhOiAnU3VvZGF0ZXR1dCBhaW5laXN0b3QnLFxuICAgICAgdW5maWx0ZXJlZERhdGE6ICdTdW9kYXR0YW1hdHRvbWF0IGFpbmVpc3RvdCcsXG4gICAgICBmaWxlQ291bnQ6ICd7ZmlsZUNvdW50fSB0aWVkb3N0b2EnLFxuICAgICAgcm93Q291bnQ6ICd7cm93Q291bnR9IHJpdmnDpCdcbiAgICB9LFxuICAgIGRlbGV0ZURhdGE6IHtcbiAgICAgIHdhcm5pbmc6ICdhaW90IHBvaXN0YWEgdMOkbcOkbiBhaW5laXN0b24uIEFpbmVvc3RvYSBrw6R5dHTDpHZpZW4gdGFzb2plbiBsdWt1bcOkw6Ryw6Q6IHtsZW5ndGh9J1xuICAgIH0sXG4gICAgYWRkU3R5bGU6IHtcbiAgICAgIHB1Ymxpc2hUaXRsZTogJzEuIEp1bGthaXNlIHR5eWxpc2kgTWFwYm94aXNzYSB0YWkgYW5uYSB0dW5uaXN0ZScsXG4gICAgICBwdWJsaXNoU3VidGl0bGUxOiAnVm9pdCBsdW9kYSBvbWFuIGthcnR0YXR5eWxpc2kgc2l2dWxsYScsXG4gICAgICBwdWJsaXNoU3VidGl0bGUyOiAnamEnLFxuICAgICAgcHVibGlzaFN1YnRpdGxlMzogJ2p1bGthaXN0YScsXG4gICAgICBwdWJsaXNoU3VidGl0bGU0OiAnc2VuLicsXG4gICAgICBwdWJsaXNoU3VidGl0bGU1OiAnS8OkeXR0w6TDpGtzZXNpIHlrc2l0eWlzdMOkIHR5eWxpw6QsIGxpaXTDpCcsXG4gICAgICBwdWJsaXNoU3VidGl0bGU2OiAndHVubmlzdGVlc2knLFxuICAgICAgcHVibGlzaFN1YnRpdGxlNzpcbiAgICAgICAgJ3TDpG5uZS4gKmtlcGxlci5nbCBvbiBjbGllbnQtc2lkZSBzb3ZlbGx1cywgZGF0YSBweXN5eSB2YWluIHNlbGFpbWVzc2FzaS4uLicsXG4gICAgICBleGFtcGxlVG9rZW46ICdlc2ltLiBway5hYmNkZWZnLnh4eHh4eCcsXG4gICAgICBwYXN0ZVRpdGxlOiAnMi4gTGlpdMOkIHR5eWxpLVVSTCcsXG4gICAgICBwYXN0ZVN1YnRpdGxlMTogJ01pa8OkIG9uJyxcbiAgICAgIHBhc3RlU3VidGl0bGUyOiAndHl5bGktVVJMPycsXG4gICAgICBuYW1pbmdUaXRsZTogJzMuIE5pbWXDpCB0eXlsaXNpJ1xuICAgIH0sXG4gICAgc2hhcmVNYXA6IHtcbiAgICAgIHNoYXJlVXJpVGl0bGU6ICdKYWEga2FydGFuIFVSTCcsXG4gICAgICBzaGFyZVVyaVN1YnRpdGxlOiAnTHVvIGthcnRhbGxlIFVSTCwgam9ua2Egdm9pdCBqYWthYSBtdWlkZW4ga2Fuc3NhJyxcbiAgICAgIGNsb3VkVGl0bGU6ICdQaWx2aXRhbGxlbm51cycsXG4gICAgICBjbG91ZFN1YnRpdGxlOlxuICAgICAgICAnS2lyamF1ZHUgc2lzw6TDpG4gamEgbGF0YWEga2FydHRhIGphIGFpbmVpc3RvdCBoZW5raWzDtmtvaHRhaXNlZW4gcGlsdmlwYWx2ZWx1dW4nLFxuICAgICAgc2hhcmVEaXNjbGFpbWVyOlxuICAgICAgICAna2VwbGVyLmdsIHRhbGxlbnRhYSBrYXJ0YW4gZGF0YW4gaGVua2lsw7Zrb2h0YWlzZWVuIHBpbHZpdGFsbGVubnVzdGlsYWFzaSwgdmFpbiBpaG1pc2V0LCBqb2lsbGEgb24gVVJMLCB2b2l2YXQgcMOkw6RzdMOkIGvDpHNpa3NpIGthcnR0YWFuIGphIGFpbmVpc3RvaWhpbi4gJyArXG4gICAgICAgICdWb2l0IG11b2thdGEgdGllZG9zdG9qYSB0YWkgcG9pc3RhYSBuZSBwaWx2aXBhbHZlbHVzdGFzaSBtaWxsb2luIHZhaW4uJyxcbiAgICAgIGdvdG9QYWdlOiAnTWVuZSBLZXBsZXIuZ2wge2N1cnJlbnRQcm92aWRlcn0gc2l2dWxsZXNpJ1xuICAgIH0sXG4gICAgc3RhdHVzUGFuZWw6IHtcbiAgICAgIG1hcFVwbG9hZGluZzogJ0thcnR0YWEgbGFkYXRhYW4nLFxuICAgICAgZXJyb3I6ICdWaXJoZSdcbiAgICB9LFxuICAgIHNhdmVNYXA6IHtcbiAgICAgIHRpdGxlOiAnUGlsdml0YWxsZW5udXMnLFxuICAgICAgc3VidGl0bGU6ICdLaXJqYXVkdSBzaXPDpMOkbiBwaWx2aXBhbHZlbHV1c2kgdGFsbGVudGFha3Nlc2kga2FydGFuJ1xuICAgIH0sXG4gICAgZXhwb3J0TWFwOiB7XG4gICAgICBmb3JtYXRUaXRsZTogJ0thcnRhbiBmb3JtYWF0dGknLFxuICAgICAgZm9ybWF0U3VidGl0bGU6ICdWYWxpdHNlIGZvcm1hYXR0aSwgam9zc2EgdmlldCBrYXJ0YW4nLFxuICAgICAgaHRtbDoge1xuICAgICAgICBzZWxlY3Rpb246ICdWaWUga2FydHRhIGludGVyYWt0aWl2aXNlbmEgaHRtbC10aWVkb3N0b25hJyxcbiAgICAgICAgdG9rZW5UaXRsZTogJ01hcGJveC10dW5uaXN0ZScsXG4gICAgICAgIHRva2VuU3VidGl0bGU6ICdLw6R5dMOkIG9tYWEgTWFwYm94LXR1bm5pc3RldHRhc2kgaHRtbC10aWVkb3N0b3NzYSAodmFsaW5uYWluZW4pJyxcbiAgICAgICAgdG9rZW5QbGFjZWhvbGRlcjogJ0xpaXTDpCBNYXBib3gtdHVubmlzdGVlc2knLFxuICAgICAgICB0b2tlbk1pc3VzZVdhcm5pbmc6XG4gICAgICAgICAgJyogSm9zIGV0IGvDpHl0w6Qgb21hYSB0dW5uaXN0ZXR0YXNpLCBrYXJ0dGEgdm9pIGxha2F0YSB0b2ltaW1hc3RhIG1pbGxvaW4gdmFpbiBrdW4gdmFpaGRhbW1lIG9tYWEgdHVubmlzdGV0dGFtbWUgdsOkw6RyaW5rw6R5dMO2biBlc3TDpG1pc2Vrc2kuICcsXG4gICAgICAgIHRva2VuRGlzY2xhaW1lcjogJ1ZvaXQgdmFpaHRhYSBNYXBib3gtdHVubmlzdGVlc2kgbsOkaWRlbiBvaGplaWRlbiBhdnVsbGE6ICcsXG4gICAgICAgIHRva2VuVXBkYXRlOiAnS3VpbmthIHZhaWh0YWEgb2xlbWFzc2FvbGV2YSBNYXBib3gtdHVubmlzdGUnLFxuICAgICAgICBtb2RlVGl0bGU6ICdLYXJ0YW4gdGlsYScsXG4gICAgICAgIG1vZGVTdWJ0aXRsZTE6ICdWYWxpdHNlIGthcnRhbiB0aWxhLicsXG4gICAgICAgIG1vZGVTdWJ0aXRsZTI6ICdMaXPDpHRpZXRvamEnLFxuICAgICAgICBtb2RlRGVzY3JpcHRpb246ICdBbm5hIGvDpHl0dMOkamllbiB7bW9kZX0ga2FydHRhYScsXG4gICAgICAgIHJlYWQ6ICdsdWtlYScsXG4gICAgICAgIGVkaXQ6ICdtdW9rYXRhJ1xuICAgICAgfSxcbiAgICAgIGpzb246IHtcbiAgICAgICAgY29uZmlnVGl0bGU6ICdLYXJ0YW4gYXNldHVrc2V0JyxcbiAgICAgICAgY29uZmlnRGlzY2xhaW1lcjpcbiAgICAgICAgICAnS2FydGFuIGFzZXR1a3NldCBzaXPDpGx0eXbDpHQgSnNvbi10aWVkb3N0b29uLiBKb3Mga8OkeXTDpHQga2lyamFzdG9hIGtlcGxlci5nbCBvbWFzc2Egc292ZWxsdWtzZXNzYXNpLiBWb2l0IGtvcGlvaWRhIGFzZXR1a3NldCBqYSBhbnRhYSBuZSBmdW5rdGlvbGxlOiAnLFxuICAgICAgICBzZWxlY3Rpb246XG4gICAgICAgICAgJ1ZpZSBreXNlaXNlbiBrYXJ0YW4gYWluZWlzdG90IGphIGFzZXR1a3NldCB5aGRlc3PDpCBqc29uLXRpZWRvc3Rvc3NhLiBWb2l0IG15w7ZoZW1taW4gYXZhdGEgc2FtYW4ga2FydGFuIGxhdGFhbWFsbGEgdGllZG9zdG9uIGtlcGxlci5nbDpuJyxcbiAgICAgICAgZGlzY2xhaW1lcjpcbiAgICAgICAgICAnKiBLYXJ0YW4gYXNldHVrc2V0IG92YXQgc2lkb2tzaXNzYSBsYWRhdHR1aWhpbiBhaW5laXN0b2loaW4uIEFydm9hIOKAmGRhdGFJZOKAmSBrw6R5dGV0w6TDpG4gdGFzb2plbiwgc3VvZGF0dGltaWVuIGphIHZpaGplaWRlbiBsaWl0dMOkbWlzZWtzaSB0aWV0dHl5biBhaW5laXN0b29uLiAnICtcbiAgICAgICAgICAnVmFybWlzdGEsIGV0dMOkIGFpbmVpc3RvbiBkYXRhSWQ6dCB2YXN0YWF2YXQgYXNldHVzdGVuIGFydm9qYSBqb3MgbGF0YWF0IGFzZXR1a3NldCBrw6R5dHTDpGVuIGBhZGREYXRhVG9NYXBgLWZ1bmt0aW9sbGUuJ1xuICAgICAgfVxuICAgIH0sXG4gICAgbG9hZGluZ0RpYWxvZzoge1xuICAgICAgbG9hZGluZzogJ0xhZGF0YWFuLi4uJ1xuICAgIH0sXG4gICAgbG9hZERhdGE6IHtcbiAgICAgIHVwbG9hZDogJ0xhdGFhIHRpZWRvc3RvdCcsXG4gICAgICBzdG9yYWdlOiAnTGF0YWEgdGFsbGVubnVzdGlsYXN0YSdcbiAgICB9LFxuICAgIHRyaXBJbmZvOiB7XG4gICAgICB0aXRsZTogJ0t1aW5rYSBrw6R5dHTDpMOkIG1hdGthLWFuaW1hYXRpb3RhJyxcbiAgICAgIGRlc2NyaXB0aW9uMTpcbiAgICAgICAgJ1JlaXRpbiBhbmltb2ltaXNla3NpIGdlb0pTT04tYWluZWlzdG9uIHTDpHl0eXkgb2xsYSBnZW9tZXRyaWF0eXlwaWx0w6TDpG4gYExpbmVTdHJpbmdgLCBMaW5lU3RyaW5nLWtv