SPA & Wellness

Naszą prawdziwą perełką
jest Centrum SPA



Uczta dla Duszy i Ciała

Zabiegi

SPA & Wellness

Poniżej znajdą Państwo dokładny opis oraz ceny poszczególnych zabiegów.

Absolute Hydration (Zabieg nawilżający) – czas trwania: 60 min, cena: 150 zł

Zabieg Absolute Hydratation to pielęgnacja, regulująca stopień nawilżenia warstwy rogowej naskórka oraz optymalizująca procesy wiązania wody. To naturalny skarbiec związków o działaniu nawilżającym pozyskany z alg morskich Laminaria Digitata, Chondrus Chrispus i naturalnej wody morskiej Thalasso Oligo. Składniki te chronią skórę przed nadmierną utratą wilgoci, wzmacniają barierę hydrolipidową, zwiększają tolerancję skóry. Zabieg idealnie sprawdza się w przypadku skóry suchej, ściągniętej i odwodnionej – przywrócony zostaje balans wodny oraz wzmocniony system ochronny.

Intense Nutrition (Zabieg odżywczy) – czas trwania: 60 min, cena: 150 zł

Jest to zabieg wzmacniający dla skóry suchej, ubogiej lipidowo, wrażliwej. Łączy w sobie regenerujące i witalizujące właściwości ekstraktów morskich. Idealnie sprawdza się podczas jesiennych słot i zimowych chłodów, kiedy skóra narażona jest na niekorzystne działanie zewnętrznych czynników atmosferycznych. Uzupełnia niedobór NNKT, poprawia stopień wiązania wody w skórze, zwiększa elastyczność i miękkość naskórka. Zapewnia komfort ściągniętej, silnie przesuszonej i podrażnionej skórze, dostarcza niezbędnych oligoelementów i witamin.

Oxygen Expert (Zabieg dotleniający) –  czas trwania: 60 min, cena: 170 zł

Morskie minerały, mikroelementy, witaminy i pierwiastki śladowe jako katalizatory procesów odnowy komórkowej skóry. Wzmacniają naturalną ochronę przed stresem środowiska, redukują oznaki nietolerancji i dyskomfortu. Prawdziwy zastrzyk tlenowy dla szarej i zmęczonej cery.

Anti-ageing Expert (Zabieg przeciwzmarszczkowy) – czas trwania: 60 min, cena: 170 zł

Zabieg  zawierający unikalny związek czystej witaminy C i morski kompleks CPA o silnym antyrodnikowym działaniu, przywracający starzejącym się komórkom młodzieńcze cechy, Stanowi połączenie mikrokolagenu, glikoprotein soi, enzymów alg Ulva Luctuca, które pobudzają syntezę kolagenu i elastyny, zapobiegają procesom elastazy, liftingują i modelują rysy twarzy, chronią przed szkodliwym promieniowaniem UV. To prawdziwy zastrzyk młodości przeciw starzeniu się komórek skóry, młodszy wygląd – już po pierwszym zabiegu.

Velvet Radiance (Zabieg „Czysta skóra”) – czas trwania: 35 min., cena: 110 zł

Zabieg pozwalający na dokładne oczyszczenie skóry całego ciała, usuwający zrogowaciałą warstwę naskórka, odnawiający i odtwarzający barierę hydrolipidową. Gładka i oczyszczona skóra ułatwia wnikanie składników aktywnych, stosowanych w kolejnych etapach pobytowych naszego SPA.

Absolute Recovery Care (Zabieg „Nowa skóra”) – czas trwania: 60 min., cena: 160 zł

Zabieg relaksujący z masażem całościowym ciała, ułatwiający gruntowne oczyszczenie skóry, usuwający martwe komórki naskórka, rozluźniający i relaksujący muskulaturę.

Relaxing Back Treatment (Zabieg Antystress) – czas trwania: 45 min., cena: 160 zł

Zabieg łączący w sobie naturalne składniki – muł morski, który stymuluje metabolizm komórkowy, poprawia krążenie i detoksykację organizmu – i szerokie właściwości termoregulacji. Stosowany miejscowo rozgrzewa określone partie, powoduje rozluźnienie, zmniejszenie napięcia i relaks. Zabieg polecany jest w szczególności dla osób zestresowanych i przemęczonych.

Energizing Back Treatment (Zabieg Energetyzujący) – czas trwania: 45 min., cena: 160 zł

Zabieg, który dzięki zawartości aktywnych składników na bazie mikronizowanych alg Spirulina przynosi poprawę elastyczności i jędrności skóry. Dzięki wysokiej zawartości protein i krzemu wzmacnia, zmiękcza i wygładza skórę. Dodatkowe wykorzystanie aromaterapii przynosi powrót sił witalnych i poprawę samopoczucia dla osób zmęczonych i pomaga powrócić do formy.

Velvet Hands Care (Zabieg „Piękne dłonie”) – czas trwania: 30 min., cena: 70 zł

Zabieg o silnych właściwościach regeneracyjnych i odżywczych. Wzmacnia paznokcie, leczy zniszczone i szorstkie dłonie, które po zabiegu są pełne blasku, świeżości oraz nabierają eleganckiego wyglądu.

Zabieg SPA na dłonie – czas trwania: 45 min., cena: 110 zł

Zabieg pielęgnacyjny, wygładza i pielęgnuje dłonie, pozostawiając wrażenie aksamitnej skóry. Składa się z peelingu, masażu dłoni, kąpieli parafinowej oraz nałożenia kremu.

Choco SPA (Zabieg czekoladowy) – czas trwania: 120 min., cena: 220 zł

Aromatyczna ceremonia opierająca się na czekoladowym masażu dająca relaks i odprężenie. Wyciąg z ziaren kakaowca o niepowtarzalnym zapachu zapewnia wspaniałe samopoczucie, ma zdolność redukcji tkanki tłuszczowej i głębokiego odżywienia skóry. Polewanie ciała gorącą czekoladą koi zmysły, dodaje energii, modeluje sylwetkę oraz pobudza siły witalne. Podczas zabiegu mózg produkuje więcej hormonów szczęścia – przynosząc relaks i dobre samopoczucie.

Stone Therapy (Masaż gorącymi kamieniami) – czas trwania: 60 min., cena: 170 zł

Oddaj się holistycznej ceremonii wellness inspirowanej Technikami Wschodu. Masaż wykonywany jest gorącymi i zimnymi kamieniami bazaltowymi, które mają niepowtarzalną strukturę i są przyjemne w dotyku. To oaza spokoju dla osób zapracowanych i zestresowanych – podczas zabiegu łagodzimy napięcia mięśni, likwidujemy stres i zmęczenie. Dotyk kamieni działa kojąco i uspokajająco, a zastosowane olejki na bazie alg pozostawiają skórę gładką i aksamitną.

Sanshui Aroma SPA (Masaż gorącymi stemplami) – czas trwania: 60 min., cena: 200 zł

Ceremonia Sanshui przenosi Cię w świat starożytnej chińskiej medycyny ludowej, świat, w którym pobudzamy i oddziałujemy na wszystkie zmysły ludzkiego organizmu. Sanshui to terapia Wellness, przywracająca harmonię i zdrowie naszym zmysłom i ciału. Usuwa blokady, łagodzi stres i napięcie, pobudza mechanizmy obronne. Pozwala osiągnąć równowagę we wszystkich aspektach życia, także w odniesieniu do uczuć, emocji, relacji międzyludzkich, życia zawodowego oraz Twojego wnętrza.

Piwna regenerująca maska do twarzy – czas trwania: 45 min, cena: 100 zł

Zabieg ten regeneruje i nawilża skórę twarzy. Zawiera drożdże piwowarskie, które nadają pyszny słodko-gorzki zapach, uzdrawiający pantenol, zmiękczający kaolin i glicerynę. Czyni skórę jedwabiście miękką, elastyczną i nadaje młodzieńczy wygląd.

Piwny masaż odprężający – czas trwania: 45 min, cena: 110 zł

Piwne masło do ciała zawiera wiele cennych składników wit. B, E , kakao, masło shea, które słynie z nawilżających i ochronnych właściwości. Olejek migdałowy, drożdże piwne nadają pyszny słodko-gorzki zapach.

Piwny masaż relaksujący – czas trwania: 45 min, cena: 110 zł

Masaż ziołowy z piwa, relaksujący, odprężający, o właściwościach odżywczych i regeneracyjnych – skuteczny w leczeniu suchej skóry. Olejek migdałowy, słonecznikowy, winogronowy, morelowy opóźniają starzenie się skóry, nawilżają, chronią i wspierają jej regenerację. Kojący ekstrakt chmielu podczas masażu uwalnia wspaniały, slodko-gorzki zapach.

Kąpiel piwna – czas trwania: 30 min, cena: 70 zł

Kąpiel bazuje na renomowanym produkcie z Czech. Jest to specjał piwowarski o delikatnym aromacie. Odświeżanie twarzy i ciała piwem było stosowane wśród Egipcjanek, a także od średniowiecza w Europie. Piwo kąpielowe jest całkowicie naturalnym produktem na bazie substancji aktywnych zawartych w dwutlenku węgla, drożdży piwnych, chmielu i alkoholu.

Peeling „Kokosowa rozkosz” – czas trwania: 30 min., cena: 65 zł

Najdrobniejszy piasek z egzotycznych wysp Bora Bora, połączony z kokosową koprą i ekstraktami morskich wodorstów tworzą delikatny preparat peelingujący o magicznym zapachu. Subtelnie oczyszcza i wygładza naskórek, rozświetla, pozostawiając go cudownie miękkim i elastycznym.

Peeling „Trzy herbaty” – czas trwania: 30 min., cena: 65 zł

Oryginalna mieszanka kryształków soli morskiej oraz sproszkowanych liści białej, zielonej i czarnej herbaty. Dobroczynne działanie polifenoli i tanin zawartych w aromaterycznych liściach pomaga odtoksycznić skórę, chroni przed działaniem wolnych rodników. Skóra odzyskuje jedwabistą miękkość i połysk.

Masaż klasyczny całego ciała – czas trwania: 30/60 min., cena: 80/110 zł

Masaż kręgosłupa – czas trwania: 20 min., cena: 70 zł

Masaż twarzy, szyi i dekoltu – czas trwania: 30 min., cena: 60 zł

Masaż „Cynamonowa fantazja” (Masaż relaksujący) – czas trwania: 45 min., cena: 120 zł

Krem do harmonizujących masaży ciała wzbogacony naturalnymi olejkami eterycznym kurkumy, imbiru i cynamonu. Działa rogrzewająco i drenująco, oczyszcza i wysubtelnia naskórek, rozluźnia napięte i bolące mięśnie. Sylwetka odzyskuje harmonijne kształty i młodzieńczą gibkość.

Masaż „Egzotyczna Pokusa” (Masaż odprężający) – czas trwania: 45 min., cena: 120 zł

Krystaliczny wosk o egzotycznym aromacie z olejkami orzeszków brazylijskich do masażu ciała, daje doskonały poślizg, wspaniale pielęgnuje skórę, pozostawia długotrwałe uczucie świeżości.

Kąpiel „Leśny zagajnik” – czas trwania: 25 min, cena: 70 zł

Terapia kąpielowa z kryształami soli morskiej i olejkiem eterycznym krzewu janowca ciernistego. Reguluje balans mineralny organizmu, leśna nuta zapachowa pozytywnie nastraja umysł, przywodząc na myśl odpoczynek na leśnej polanie. Idealna terapia kąpielowa wellness o działaniu relaksującym i stymulującym.

Kąpiel „Harmonia Oceanu” – czas trwania: 25 min, cena: 70 zł

Kąpiel w wodzie morskiej z morskimi minerałami, bogata w magnez, wapń, sole mineralne i pierwiastki śladowe. Odżywia i regeneruje naskórek, polepsza kondycję i dobre samopoczucie.

Kąpiel „Morska Bryza” – czas trwania: 25 min, cena: 70 zł

Koncentrat morskich mikro- i makroelementów, które relaksują duszę i ciało – to typowa kąpiel Wellness. Tabletki podczas kąpieli delikatnie musują, uwalniając bogactwo „morskiego świata”, które nawilża i wygładza naskórek, wyrównuje ubytki mineralne organizmu. Produkt posiada piękny morski kolor i odświeżający zapach morskiej bryzy.

Sauna parowa – czas trwania: 15 min., cena: 60 zł

Efekty uzyskane w saunie parowej są znaczące a pomysł wykorzystania pary jest prosty. Para wodna oczyszcza skórę, największy organ ludzkiego ciała. Pomaga to w usunięciu zanieczyszczeń i polepsza jędrność, elastyczność i gładkość skóry. Ciepło przyspiesza procesy chemiczne w całym ciele, co sprawia, że kąpiel parowa jest jednym z najprostszych i najwygodniejszych sposobów pozbywania się zalegających toksyn z ciała.

Sauna IR (podczerwień) – czas trwania: 15 min., cena: 60 zł

Łagodne podgrzewanie podczerwienią przenika tkanki skóry i wywołuje nagrzanie całego ciała, powodując natychmiastowe złagodzenie stresu i zmęczenia. Sauna na podczerwień pobudza pozytywne zmiany w skórze powodując jej odmłodzenie, spala kalorie i pomaga w degradacji tłuszczu.

Sauna parowa + sauna IR (podczerwień) – czas trwania: 10 min., cena: 90 zł

Prysznic Vichy – czas trwania: 10 min., cena: 50 zł

Jest to wiele wąskich strug wodnych, podobnych do silnego deszczu, które początkowo pobudzają, a następnie relaksują.

Sauna fińska – czas trwania: 60 min., cena: 80 zł (max 4 os.)

Nordic Walking (wypożyczenie kijków) – czas trwania: 180 min., cena: 10 zł

Wypożyczenie ręcznika kąpielowego – 10 zł

Wypożyczenie szlafroka – 15 zł

*Zabiegi wykonywane są wyłącznie po wcześniejszej rezerwacji.


Pałacyk Łąkomin

Zapraszamy do zapoznania się z naszą ofertą. W poszczególnych działach znajdą Państwo szczegółowe i aktualne informacje na temat naszego obiektu,


PRZEJDŹ DO OFERTY
ZAPYTANIE
REZERWACYJNE
PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgovKiA8IVtDREFUQVsgKi8KdmFyIGdmb3JtO2dmb3JtfHwoZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZ2Zvcm1fbWFpbl9zY3JpcHRzX2xvYWRlZCIsZnVuY3Rpb24oKXtnZm9ybS5zY3JpcHRzTG9hZGVkPSEwfSksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZ2Zvcm0vdGhlbWUvc2NyaXB0c19sb2FkZWQiLGZ1bmN0aW9uKCl7Z2Zvcm0udGhlbWVTY3JpcHRzTG9hZGVkPSEwfSksd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLGZ1bmN0aW9uKCl7Z2Zvcm0uZG9tTG9hZGVkPSEwfSksZ2Zvcm09e2RvbUxvYWRlZDohMSxzY3JpcHRzTG9hZGVkOiExLHRoZW1lU2NyaXB0c0xvYWRlZDohMSxpc0Zvcm1FZGl0b3I6KCk9PiJmdW5jdGlvbiI9PXR5cGVvZiBJbml0aWFsaXplRWRpdG9yLGNhbGxJZkxvYWRlZDpmdW5jdGlvbihvKXtyZXR1cm4hKCFnZm9ybS5kb21Mb2FkZWR8fCFnZm9ybS5zY3JpcHRzTG9hZGVkfHwhZ2Zvcm0udGhlbWVTY3JpcHRzTG9hZGVkJiYhZ2Zvcm0uaXNGb3JtRWRpdG9yKCl8fChnZm9ybS5pc0Zvcm1FZGl0b3IoKSYmY29uc29sZS53YXJuKCJUaGUgdXNlIG9mIGdmb3JtLmluaXRpYWxpemVPbkxvYWRlZCgpIGlzIGRlcHJlY2F0ZWQgaW4gdGhlIGZvcm0gZWRpdG9yIGNvbnRleHQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiBHcmF2aXR5IEZvcm1zIDMuMS4iKSxvKCksMCkpfSxpbml0aWFsaXplT25Mb2FkZWQ6ZnVuY3Rpb24obyl7Z2Zvcm0uY2FsbElmTG9hZGVkKG8pfHwoZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigiZ2Zvcm1fbWFpbl9zY3JpcHRzX2xvYWRlZCIsKCk9PntnZm9ybS5zY3JpcHRzTG9hZGVkPSEwLGdmb3JtLmNhbGxJZkxvYWRlZChvKX0pLGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoImdmb3JtL3RoZW1lL3NjcmlwdHNfbG9hZGVkIiwoKT0+e2dmb3JtLnRoZW1lU2NyaXB0c0xvYWRlZD0hMCxnZm9ybS5jYWxsSWZMb2FkZWQobyl9KSx3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsKCk9PntnZm9ybS5kb21Mb2FkZWQ9ITAsZ2Zvcm0uY2FsbElmTG9hZGVkKG8pfSkpfSxob29rczp7YWN0aW9uOnt9LGZpbHRlcjp7fX0sYWRkQWN0aW9uOmZ1bmN0aW9uKG8scixlLHQpe2dmb3JtLmFkZEhvb2soImFjdGlvbiIsbyxyLGUsdCl9LGFkZEZpbHRlcjpmdW5jdGlvbihvLHIsZSx0KXtnZm9ybS5hZGRIb29rKCJmaWx0ZXIiLG8scixlLHQpfSxkb0FjdGlvbjpmdW5jdGlvbihvKXtnZm9ybS5kb0hvb2soImFjdGlvbiIsbyxhcmd1bWVudHMpfSxhcHBseUZpbHRlcnM6ZnVuY3Rpb24obyl7cmV0dXJuIGdmb3JtLmRvSG9vaygiZmlsdGVyIixvLGFyZ3VtZW50cyl9LHJlbW92ZUFjdGlvbjpmdW5jdGlvbihvLHIpe2dmb3JtLnJlbW92ZUhvb2soImFjdGlvbiIsbyxyKX0scmVtb3ZlRmlsdGVyOmZ1bmN0aW9uKG8scixlKXtnZm9ybS5yZW1vdmVIb29rKCJmaWx0ZXIiLG8scixlKX0sYWRkSG9vazpmdW5jdGlvbihvLHIsZSx0LG4pe251bGw9PWdmb3JtLmhvb2tzW29dW3JdJiYoZ2Zvcm0uaG9va3Nbb11bcl09W10pO3ZhciBkPWdmb3JtLmhvb2tzW29dW3JdO251bGw9PW4mJihuPXIrIl8iK2QubGVuZ3RoKSxnZm9ybS5ob29rc1tvXVtyXS5wdXNoKHt0YWc6bixjYWxsYWJsZTplLHByaW9yaXR5OnQ9bnVsbD09dD8xMDp0fSl9LGRvSG9vazpmdW5jdGlvbihyLG8sZSl7dmFyIHQ7aWYoZT1BcnJheS5wcm90b3R5cGUuc2xpY2UuY2FsbChlLDEpLG51bGwhPWdmb3JtLmhvb2tzW3JdW29dJiYoKG89Z2Zvcm0uaG9va3Nbcl1bb10pLnNvcnQoZnVuY3Rpb24obyxyKXtyZXR1cm4gby5wcmlvcml0eS1yLnByaW9yaXR5fSksby5mb3JFYWNoKGZ1bmN0aW9uKG8peyJmdW5jdGlvbiIhPXR5cGVvZih0PW8uY2FsbGFibGUpJiYodD13aW5kb3dbdF0pLCJhY3Rpb24iPT1yP3QuYXBwbHkobnVsbCxlKTplWzBdPXQuYXBwbHkobnVsbCxlKX0pKSwiZmlsdGVyIj09cilyZXR1cm4gZVswXX0scmVtb3ZlSG9vazpmdW5jdGlvbihvLHIsdCxuKXt2YXIgZTtudWxsIT1nZm9ybS5ob29rc1tvXVtyXSYmKGU9KGU9Z2Zvcm0uaG9va3Nbb11bcl0pLmZpbHRlcihmdW5jdGlvbihvLHIsZSl7cmV0dXJuISEobnVsbCE9biYmbiE9by50YWd8fG51bGwhPXQmJnQhPW8ucHJpb3JpdHkpfSksZ2Zvcm0uaG9va3Nbb11bcl09ZSl9fSk7Ci8qIF1dPiAqLwo8L3NjcmlwdD4KCiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdnZl9icm93c2VyX3Vua25vd24gZ2Zvcm1fd3JhcHBlciBnZm9ybV9sZWdhY3lfbWFya3VwX3dyYXBwZXIgZ2Zvcm0tdGhlbWUtLW5vLWZyYW1ld29yayBva2llbmtvX3dyYXBwZXInIGRhdGEtZm9ybS10aGVtZT0nbGVnYWN5JyBkYXRhLWZvcm0taW5kZXg9JzAnIGlkPSdnZm9ybV93cmFwcGVyXzUnID48ZGl2IGlkPSdnZl81JyBjbGFzcz0nZ2Zvcm1fYW5jaG9yJyB0YWJpbmRleD0nLTEnPjwvZGl2Pjxmb3JtIG1ldGhvZD0ncG9zdCcgZW5jdHlwZT0nbXVsdGlwYXJ0L2Zvcm0tZGF0YScgdGFyZ2V0PSdnZm9ybV9hamF4X2ZyYW1lXzUnIGlkPSdnZm9ybV81JyBjbGFzcz0nb2tpZW5rbycgYWN0aW9uPScvb2ZlcnRhL3NwYS96YWJpZWdpc3BhLXdlbGxuZXNzLyNnZl81JyBkYXRhLWZvcm1pZD0nNScgbm92YWxpZGF0ZT4KICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0nZ2Zvcm0tYm9keSBnZm9ybV9ib2R5Jz48dWwgaWQ9J2dmb3JtX2ZpZWxkc181JyBjbGFzcz0nZ2Zvcm1fZmllbGRzIHRvcF9sYWJlbCBmb3JtX3N1YmxhYmVsX2JlbG93IGRlc2NyaXB0aW9uX2JlbG93IHZhbGlkYXRpb25fYmVsb3cnPjxsaSBpZD0iZmllbGRfNV8xMSIgY2xhc3M9ImdmaWVsZCBnZmllbGQtLXR5cGUtc2VsZWN0IGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBnZmllbGQtLW5vLWRlc2NyaXB0aW9uIGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGhpZGRlbl9sYWJlbCBmaWVsZF92YWxpZGF0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUiICA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwgZ2Zvcm0tZmllbGQtbGFiZWwnIGZvcj0naW5wdXRfNV8xMSc+Um9kemFqIHBva29qdTxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQiPjxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQgZ2ZpZWxkX3JlcXVpcmVkX2FzdGVyaXNrIj4qPC9zcGFuPjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXIgZ2lucHV0X2NvbnRhaW5lcl9zZWxlY3QnPjxzZWxlY3QgbmFtZT0naW5wdXRfMTEnIGlkPSdpbnB1dF81XzExJyBjbGFzcz0nbGFyZ2UgZ2ZpZWxkX3NlbGVjdCcgICAgYXJpYS1yZXF1aXJlZD0idHJ1ZSIgYXJpYS1pbnZhbGlkPSJmYWxzZSIgPjxvcHRpb24gdmFsdWU9Jycgc2VsZWN0ZWQ9J3NlbGVjdGVkJyBjbGFzcz0nZ2ZfcGxhY2Vob2xkZXInPlJvZHphaiBwb2tvanU8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYcWCYWN5ayAtIHBva8OzaiBqZWRub29zb2Jvd3knID5QYcWCYWN5ayAtIHBva8OzaiBqZWRub29zb2Jvd3k8L29wdGlvbj48b3B0aW9uIHZhbHVlPSdQYcWCYWN5ayAtIHBva8OzaiBkd3Vvc29ib3d5JyA+UGHFgmFjeWsgLSBwb2vDs2ogZHd1b3NvYm93eTwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BhxYJhY3lrIC0gYXBhcnRhbWVudCcgPlBhxYJhY3lrIC0gYXBhcnRhbWVudDwvb3B0aW9uPjxvcHRpb24gdmFsdWU9J1BhxYJhY3lrIC0gYXBhcnRhbWVudCB6IHRhcmFzZW0nID5QYcWCYWN5ayAtIGFwYXJ0YW1lbnQgeiB0YXJhc2VtPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTcWCeW4gLSBkd3Vvc29ib3d5JyA+TcWCeW4gLSBkd3Vvc29ib3d5PC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0nTcWCeW4gLSBzdHVkaW8gZHd1cG9rb2pvd2UnID5NxYJ5biAtIHN0dWRpbyBkd3Vwb2tvam93ZTwvb3B0aW9uPjwvc2VsZWN0PjwvZGl2PjwvbGk+PGxpIGlkPSJmaWVsZF81XzEyIiBjbGFzcz0iZ2ZpZWxkIGdmaWVsZC0tdHlwZS10ZXh0IGdmX2xlZnRfaGFsZiBnZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZmllbGRfc3VibGFiZWxfYmVsb3cgZ2ZpZWxkLS1uby1kZXNjcmlwdGlvbiBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBoaWRkZW5fbGFiZWwgZmllbGRfdmFsaWRhdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlIiAgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsIGdmb3JtLWZpZWxkLWxhYmVsJyBmb3I9J2lucHV0XzVfMTInPlRlcm1pbiBvZDxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQiPjxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQgZ2ZpZWxkX3JlcXVpcmVkX2FzdGVyaXNrIj4qPC9zcGFuPjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXIgZ2lucHV0X2NvbnRhaW5lcl90ZXh0Jz48aW5wdXQgbmFtZT0naW5wdXRfMTInIGlkPSdpbnB1dF81XzEyJyB0eXBlPSd0ZXh0JyB2YWx1ZT0nJyBjbGFzcz0nbGFyZ2UnICAgIHBsYWNlaG9sZGVyPSdUZXJtaW4gb2QnIGFyaWEtcmVxdWlyZWQ9InRydWUiIGFyaWEtaW52YWxpZD0iZmFsc2UiICAgLz48L2Rpdj48L2xpPjxsaSBpZD0iZmllbGRfNV8xMyIgY2xhc3M9ImdmaWVsZCBnZmllbGQtLXR5cGUtdGV4dCBnZl9yaWdodF9oYWxmIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBnZmllbGQtLW5vLWRlc2NyaXB0aW9uIGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGhpZGRlbl9sYWJlbCBmaWVsZF92YWxpZGF0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUiICA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwgZ2Zvcm0tZmllbGQtbGFiZWwnIGZvcj0naW5wdXRfNV8xMyc+VGVybWluIGRvPHNwYW4gY2xhc3M9ImdmaWVsZF9yZXF1aXJlZCI+PHNwYW4gY2xhc3M9ImdmaWVsZF9yZXF1aXJlZCBnZmllbGRfcmVxdWlyZWRfYXN0ZXJpc2siPio8L3NwYW4+PC9zcGFuPjwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lciBnaW5wdXRfY29udGFpbmVyX3RleHQnPjxpbnB1dCBuYW1lPSdpbnB1dF8xMycgaWQ9J2lucHV0XzVfMTMnIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdsYXJnZScgICAgcGxhY2Vob2xkZXI9J1Rlcm1pbiBkbycgYXJpYS1yZXF1aXJlZD0idHJ1ZSIgYXJpYS1pbnZhbGlkPSJmYWxzZSIgICAvPjwvZGl2PjwvbGk+PGxpIGlkPSJmaWVsZF81XzIiIGNsYXNzPSJnZmllbGQgZ2ZpZWxkLS10eXBlLXRleHQgZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGdmaWVsZC0tbm8tZGVzY3JpcHRpb24gZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgaGlkZGVuX2xhYmVsIGZpZWxkX3ZhbGlkYXRpb25fYmVsb3cgZ2ZpZWxkX3Zpc2liaWxpdHlfdmlzaWJsZSIgID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCBnZm9ybS1maWVsZC1sYWJlbCcgZm9yPSdpbnB1dF81XzInPkltacSZIGkgbmF6d2lza288c3BhbiBjbGFzcz0iZ2ZpZWxkX3JlcXVpcmVkIj48c3BhbiBjbGFzcz0iZ2ZpZWxkX3JlcXVpcmVkIGdmaWVsZF9yZXF1aXJlZF9hc3RlcmlzayI+Kjwvc3Bhbj48L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfdGV4dCc+PGlucHV0IG5hbWU9J2lucHV0XzInIGlkPSdpbnB1dF81XzInIHR5cGU9J3RleHQnIHZhbHVlPScnIGNsYXNzPSdsYXJnZScgICAgcGxhY2Vob2xkZXI9J0ltacSZIGkgbmF6d2lza28nIGFyaWEtcmVxdWlyZWQ9InRydWUiIGFyaWEtaW52YWxpZD0iZmFsc2UiICAgLz48L2Rpdj48L2xpPjxsaSBpZD0iZmllbGRfNV80IiBjbGFzcz0iZ2ZpZWxkIGdmaWVsZC0tdHlwZS10ZXh0IGdmX2xlZnRfaGFsZiBnZmllbGRfY29udGFpbnNfcmVxdWlyZWQgZmllbGRfc3VibGFiZWxfYmVsb3cgZ2ZpZWxkLS1uby1kZXNjcmlwdGlvbiBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBoaWRkZW5fbGFiZWwgZmllbGRfdmFsaWRhdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlIiAgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsIGdmb3JtLWZpZWxkLWxhYmVsJyBmb3I9J2lucHV0XzVfNCc+VGVsZWZvbjxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQiPjxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQgZ2ZpZWxkX3JlcXVpcmVkX2FzdGVyaXNrIj4qPC9zcGFuPjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXIgZ2lucHV0X2NvbnRhaW5lcl90ZXh0Jz48aW5wdXQgbmFtZT0naW5wdXRfNCcgaWQ9J2lucHV0XzVfNCcgdHlwZT0ndGV4dCcgdmFsdWU9JycgY2xhc3M9J2xhcmdlJyAgICBwbGFjZWhvbGRlcj0nVGVsZWZvbicgYXJpYS1yZXF1aXJlZD0idHJ1ZSIgYXJpYS1pbnZhbGlkPSJmYWxzZSIgICAvPjwvZGl2PjwvbGk+PGxpIGlkPSJmaWVsZF81XzUiIGNsYXNzPSJnZmllbGQgZ2ZpZWxkLS10eXBlLWVtYWlsIGdmX3JpZ2h0X2hhbGYgZ2ZpZWxkX2NvbnRhaW5zX3JlcXVpcmVkIGZpZWxkX3N1YmxhYmVsX2JlbG93IGdmaWVsZC0tbm8tZGVzY3JpcHRpb24gZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgaGlkZGVuX2xhYmVsIGZpZWxkX3ZhbGlkYXRpb25fYmVsb3cgZ2ZpZWxkX3Zpc2liaWxpdHlfdmlzaWJsZSIgID48bGFiZWwgY2xhc3M9J2dmaWVsZF9sYWJlbCBnZm9ybS1maWVsZC1sYWJlbCcgZm9yPSdpbnB1dF81XzUnPkUtbWFpbDxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQiPjxzcGFuIGNsYXNzPSJnZmllbGRfcmVxdWlyZWQgZ2ZpZWxkX3JlcXVpcmVkX2FzdGVyaXNrIj4qPC9zcGFuPjwvc3Bhbj48L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXIgZ2lucHV0X2NvbnRhaW5lcl9lbWFpbCc+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aW5wdXQgbmFtZT0naW5wdXRfNScgaWQ9J2lucHV0XzVfNScgdHlwZT0nZW1haWwnIHZhbHVlPScnIGNsYXNzPSdsYXJnZScgICBwbGFjZWhvbGRlcj0nRS1tYWlsJyBhcmlhLXJlcXVpcmVkPSJ0cnVlIiBhcmlhLWludmFsaWQ9ImZhbHNlIiAgLz4KICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+PC9saT48bGkgaWQ9ImZpZWxkXzVfOSIgY2xhc3M9ImdmaWVsZCBnZmllbGQtLXR5cGUtdGV4dGFyZWEgZmllbGRfc3VibGFiZWxfYmVsb3cgZ2ZpZWxkLS1uby1kZXNjcmlwdGlvbiBmaWVsZF9kZXNjcmlwdGlvbl9iZWxvdyBoaWRkZW5fbGFiZWwgZmllbGRfdmFsaWRhdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlIiAgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsIGdmb3JtLWZpZWxkLWxhYmVsJyBmb3I9J2lucHV0XzVfOSc+xbt5Y3plbmlhLCB1d2FnaTwvbGFiZWw+PGRpdiBjbGFzcz0nZ2lucHV0X2NvbnRhaW5lciBnaW5wdXRfY29udGFpbmVyX3RleHRhcmVhJz48dGV4dGFyZWEgbmFtZT0naW5wdXRfOScgaWQ9J2lucHV0XzVfOScgY2xhc3M9J3RleHRhcmVhIG1lZGl1bScgICAgcGxhY2Vob2xkZXI9J8W7eWN6ZW5pYSwgdXdhZ2knICBhcmlhLWludmFsaWQ9ImZhbHNlIiAgIHJvd3M9JzEwJyBjb2xzPSc1MCc+PC90ZXh0YXJlYT48L2Rpdj48L2xpPjxsaSBpZD0iZmllbGRfNV83IiBjbGFzcz0iZ2ZpZWxkIGdmaWVsZC0tdHlwZS1jaGVja2JveCBnZmllbGQtLXR5cGUtY2hvaWNlIGdmaWVsZF9jb250YWluc19yZXF1aXJlZCBmaWVsZF9zdWJsYWJlbF9iZWxvdyBnZmllbGQtLW5vLWRlc2NyaXB0aW9uIGZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IGhpZGRlbl9sYWJlbCBmaWVsZF92YWxpZGF0aW9uX2JlbG93IGdmaWVsZF92aXNpYmlsaXR5X3Zpc2libGUiICA+PGxhYmVsIGNsYXNzPSdnZmllbGRfbGFiZWwgZ2Zvcm0tZmllbGQtbGFiZWwgZ2ZpZWxkX2xhYmVsX2JlZm9yZV9jb21wbGV4JyA+WmdvZGE8c3BhbiBjbGFzcz0iZ2ZpZWxkX3JlcXVpcmVkIj48c3BhbiBjbGFzcz0iZ2ZpZWxkX3JlcXVpcmVkIGdmaWVsZF9yZXF1aXJlZF9hc3RlcmlzayI+Kjwvc3Bhbj48L3NwYW4+PC9sYWJlbD48ZGl2IGNsYXNzPSdnaW5wdXRfY29udGFpbmVyIGdpbnB1dF9jb250YWluZXJfY2hlY2tib3gnPjx1bCBjbGFzcz0nZ2ZpZWxkX2NoZWNrYm94JyBpZD0naW5wdXRfNV83Jz48bGkgY2xhc3M9J2djaG9pY2UgZ2Nob2ljZV81XzdfMSc+CgkJCQkJCQkJPGlucHV0IGNsYXNzPSdnZmllbGQtY2hvaWNlLWlucHV0JyBuYW1lPSdpbnB1dF83LjEnIHR5cGU9J2NoZWNrYm94JyAgdmFsdWU9J1d5cmHFvGFtIHpnb2TEmSBuYSBwcnpldHdhcnphbmllIG1vaWNoIGRhbnljaCBvc29ib3d5Y2ggZGxhIHBvdHJ6ZWIgUGHFgmFjeWt1IMWBxIVrb21pbiB6Z29kbmllIHogVXN0YXfEhSB6IGRuaWEgMjkuMDguMTk5NyBvIE9jaHJvbmllIERhbnljaCBPc29ib3d5Y2ggRHouIFVzdC4gbnIgMTMzIHBvenljamEgODgzLicgIGlkPSdjaG9pY2VfNV83XzEnICAgLz4KCQkJCQkJCQk8bGFiZWwgZm9yPSdjaG9pY2VfNV83XzEnIGlkPSdsYWJlbF81XzdfMScgY2xhc3M9J2dmb3JtLWZpZWxkLWxhYmVsIGdmb3JtLWZpZWxkLWxhYmVsLS10eXBlLWlubGluZSc+V3lyYcW8YW0gemdvZMSZIG5hIHByemV0d2FyemFuaWUgbW9pY2ggZGFueWNoIG9zb2Jvd3ljaCBkbGEgcG90cnplYiBQYcWCYWN5a3UgxYHEhWtvbWluIHpnb2RuaWUgeiBVc3Rhd8SFIHogZG5pYSAyOS4wOC4xOTk3IG8gT2Nocm9uaWUgRGFueWNoIE9zb2Jvd3ljaCBEei4gVXN0LiBuciAxMzMgcG96eWNqYSA4ODMuPC9sYWJlbD4KCQkJCQkJCTwvbGk+PC91bD48L2Rpdj48L2xpPjxsaSBpZD0iZmllbGRfNV8xNCIgY2xhc3M9ImdmaWVsZCBnZmllbGQtLXR5cGUtaG9uZXlwb3QgZ2Zvcm1fdmFsaWRhdGlvbl9jb250YWluZXIgZmllbGRfc3VibGFiZWxfYmVsb3cgZ2ZpZWxkLS1oYXMtZGVzY3JpcHRpb24gZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgZmllbGRfdmFsaWRhdGlvbl9iZWxvdyBnZmllbGRfdmlzaWJpbGl0eV92aXNpYmxlIiAgPjxsYWJlbCBjbGFzcz0nZ2ZpZWxkX2xhYmVsIGdmb3JtLWZpZWxkLWxhYmVsJyBmb3I9J2lucHV0XzVfMTQnPk5hbWU8L2xhYmVsPjxkaXYgY2xhc3M9J2dpbnB1dF9jb250YWluZXInPjxpbnB1dCBuYW1lPSdpbnB1dF8xNCcgaWQ9J2lucHV0XzVfMTQnIHR5cGU9J3RleHQnIHZhbHVlPScnIGF1dG9jb21wbGV0ZT0nbmV3LXBhc3N3b3JkJy8+PC9kaXY+PGRpdiBjbGFzcz0nZ2ZpZWxkX2Rlc2NyaXB0aW9uJyBpZD0nZ2ZpZWxkX2Rlc2NyaXB0aW9uXzVfMTQnPlRvIHBvbGUgamVzdCB1xbx5d2FuZSBkbyB3YWxpZGFjamkgaSBwb3dpbm5vIHBvem9zdGHEhyBuaWV6bWllbmlvbmUuPC9kaXY+PC9saT48L3VsPjwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9J2dmb3JtLWZvb3RlciBnZm9ybV9mb290ZXIgdG9wX2xhYmVsJz4gPGlucHV0IHR5cGU9J3N1Ym1pdCcgaWQ9J2dmb3JtX3N1Ym1pdF9idXR0b25fNScgY2xhc3M9J2dmb3JtX2J1dHRvbiBidXR0b24nIG9uY2xpY2s9J2dmb3JtLnN1Ym1pc3Npb24uaGFuZGxlQnV0dG9uQ2xpY2sodGhpcyk7JyBkYXRhLXN1Ym1pc3Npb24tdHlwZT0nc3VibWl0JyB2YWx1ZT0nV1nFmkxJSicgIC8+IDxpbnB1dCB0eXBlPSdoaWRkZW4nIG5hbWU9J2dmb3JtX2FqYXgnIHZhbHVlPSdmb3JtX2lkPTUmYW1wO3RpdGxlPSZhbXA7ZGVzY3JpcHRpb249JmFtcDt0YWJpbmRleD0wJmFtcDt0aGVtZT1sZWdhY3kmYW1wO3N0eWxlcz1bXSZhbXA7aGFzaD04MDQzYzQ0MGJiYTQ5NGFkMDhjYzhkZTRkYTg3YTRlZScgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fc3VibWlzc2lvbl9tZXRob2QnIGRhdGEtanM9J2dmb3JtX3N1Ym1pc3Npb25fbWV0aG9kXzUnIHZhbHVlPSdpZnJhbWUnIC8+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2dmb3JtX3RoZW1lJyBkYXRhLWpzPSdnZm9ybV90aGVtZV81JyBpZD0nZ2Zvcm1fdGhlbWVfNScgdmFsdWU9J2xlZ2FjeScgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fc3R5bGVfc2V0dGluZ3MnIGRhdGEtanM9J2dmb3JtX3N0eWxlX3NldHRpbmdzXzUnIGlkPSdnZm9ybV9zdHlsZV9zZXR0aW5nc181JyB2YWx1ZT0nW10nIC8+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2lzX3N1Ym1pdF81JyB2YWx1ZT0nMScgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fc3VibWl0JyB2YWx1ZT0nNScgLz4KICAgICAgICAgICAgCiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGNsYXNzPSdnZm9ybV9oaWRkZW4nIG5hbWU9J2dmb3JtX3VuaXF1ZV9pZCcgdmFsdWU9JycgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nc3RhdGVfNScgdmFsdWU9J1d5SmJYU0lzSWpJM01XRXlaV1ZrWVdOalpEUTFZekkyTldZeE5qa3hObVUxTXpreFpUWTRJbDA9JyAvPgogICAgICAgICAgICA8aW5wdXQgdHlwZT0naGlkZGVuJyBhdXRvY29tcGxldGU9J29mZicgY2xhc3M9J2dmb3JtX2hpZGRlbicgbmFtZT0nZ2Zvcm1fdGFyZ2V0X3BhZ2VfbnVtYmVyXzUnIGlkPSdnZm9ybV90YXJnZXRfcGFnZV9udW1iZXJfNScgdmFsdWU9JzAnIC8+CiAgICAgICAgICAgIDxpbnB1dCB0eXBlPSdoaWRkZW4nIGF1dG9jb21wbGV0ZT0nb2ZmJyBjbGFzcz0nZ2Zvcm1faGlkZGVuJyBuYW1lPSdnZm9ybV9zb3VyY2VfcGFnZV9udW1iZXJfNScgaWQ9J2dmb3JtX3NvdXJjZV9wYWdlX251bWJlcl81JyB2YWx1ZT0nMScgLz4KICAgICAgICAgICAgPGlucHV0IHR5cGU9J2hpZGRlbicgbmFtZT0nZ2Zvcm1fZmllbGRfdmFsdWVzJyB2YWx1ZT0nJyAvPgogICAgICAgICAgICAKICAgICAgICA8L2Rpdj4KICAgICAgICAgICAgICAgICAgICAgICAgPC9mb3JtPgogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4KCQkgICAgICAgICAgICAgICAgPGlmcmFtZSBzdHlsZT0nZGlzcGxheTpub25lO3dpZHRoOjBweDtoZWlnaHQ6MHB4Oycgc3JjPSdhYm91dDpibGFuaycgbmFtZT0nZ2Zvcm1fYWpheF9mcmFtZV81JyBpZD0nZ2Zvcm1fYWpheF9mcmFtZV81JyB0aXRsZT0nVGVuIGVsZW1lbnQgaWZyYW1lIHphd2llcmEgbG9naWvEmSB3eW1hZ2FuxIUgZG8gb2JzxYJ1Z2kgR3Jhdml0eSBGb3JtcyB1xbx5d2FqxIVjeWNoIHRlY2hub2xvZ2lpIEFqYXguJz48L2lmcmFtZT4KCQkgICAgICAgICAgICAgICAgPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgovKiA8IVtDREFUQVsgKi8KIGdmb3JtLmluaXRpYWxpemVPbkxvYWRlZCggZnVuY3Rpb24oKSB7Z2Zvcm1Jbml0U3Bpbm5lciggNSwgJ2h0dHBzOi8vbGFrb21pbi5wbC93cC1jb250ZW50L3BsdWdpbnMvZ3Jhdml0eWZvcm1zL2ltYWdlcy9zcGlubmVyLnN2ZycsIHRydWUgKTtqUXVlcnkoJyNnZm9ybV9hamF4X2ZyYW1lXzUnKS5vbignbG9hZCcsZnVuY3Rpb24oKXt2YXIgY29udGVudHMgPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcqJykuaHRtbCgpO3ZhciBpc19wb3N0YmFjayA9IGNvbnRlbnRzLmluZGV4T2YoJ0dGX0FKQVhfUE9TVEJBQ0snKSA+PSAwO2lmKCFpc19wb3N0YmFjayl7cmV0dXJuO312YXIgZm9ybV9jb250ZW50ID0galF1ZXJ5KHRoaXMpLmNvbnRlbnRzKCkuZmluZCgnI2dmb3JtX3dyYXBwZXJfNScpO3ZhciBpc19jb25maXJtYXRpb24gPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcjZ2Zvcm1fY29uZmlybWF0aW9uX3dyYXBwZXJfNScpLmxlbmd0aCA+IDA7dmFyIGlzX3JlZGlyZWN0ID0gY29udGVudHMuaW5kZXhPZignZ2Zvcm1SZWRpcmVjdCgpeycpID49IDA7dmFyIGlzX2Zvcm0gPSBmb3JtX2NvbnRlbnQubGVuZ3RoID4gMCAmJiAhIGlzX3JlZGlyZWN0ICYmICEgaXNfY29uZmlybWF0aW9uO3ZhciBtdCA9IHBhcnNlSW50KGpRdWVyeSgnaHRtbCcpLmNzcygnbWFyZ2luLXRvcCcpLCAxMCkgKyBwYXJzZUludChqUXVlcnkoJ2JvZHknKS5jc3MoJ21hcmdpbi10b3AnKSwgMTApICsgMTAwO2lmKGlzX2Zvcm0pe2pRdWVyeSgnI2dmb3JtX3dyYXBwZXJfNScpLmh0bWwoZm9ybV9jb250ZW50Lmh0bWwoKSk7aWYoZm9ybV9jb250ZW50Lmhhc0NsYXNzKCdnZm9ybV92YWxpZGF0aW9uX2Vycm9yJykpe2pRdWVyeSgnI2dmb3JtX3dyYXBwZXJfNScpLmFkZENsYXNzKCdnZm9ybV92YWxpZGF0aW9uX2Vycm9yJyk7fSBlbHNlIHtqUXVlcnkoJyNnZm9ybV93cmFwcGVyXzUnKS5yZW1vdmVDbGFzcygnZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvcicpO31zZXRUaW1lb3V0KCBmdW5jdGlvbigpIHsgLyogZGVsYXkgdGhlIHNjcm9sbCBieSA1MCBtaWxsaXNlY29uZHMgdG8gZml4IGEgYnVnIGluIGNocm9tZSAqLyBqUXVlcnkoZG9jdW1lbnQpLnNjcm9sbFRvcChqUXVlcnkoJyNnZm9ybV93cmFwcGVyXzUnKS5vZmZzZXQoKS50b3AgLSBtdCk7IH0sIDUwICk7aWYod2luZG93WydnZm9ybUluaXREYXRlcGlja2VyJ10pIHtnZm9ybUluaXREYXRlcGlja2VyKCk7fWlmKHdpbmRvd1snZ2Zvcm1Jbml0UHJpY2VGaWVsZHMnXSkge2dmb3JtSW5pdFByaWNlRmllbGRzKCk7fXZhciBjdXJyZW50X3BhZ2UgPSBqUXVlcnkoJyNnZm9ybV9zb3VyY2VfcGFnZV9udW1iZXJfNScpLnZhbCgpO2dmb3JtSW5pdFNwaW5uZXIoIDUsICdodHRwczovL2xha29taW4ucGwvd3AtY29udGVudC9wbHVnaW5zL2dyYXZpdHlmb3Jtcy9pbWFnZXMvc3Bpbm5lci5zdmcnLCB0cnVlICk7alF1ZXJ5KGRvY3VtZW50KS50cmlnZ2VyKCdnZm9ybV9wYWdlX2xvYWRlZCcsIFs1LCBjdXJyZW50X3BhZ2VdKTt3aW5kb3dbJ2dmX3N1Ym1pdHRpbmdfNSddID0gZmFsc2U7fWVsc2UgaWYoIWlzX3JlZGlyZWN0KXt2YXIgY29uZmlybWF0aW9uX2NvbnRlbnQgPSBqUXVlcnkodGhpcykuY29udGVudHMoKS5maW5kKCcuR0ZfQUpBWF9QT1NUQkFDSycpLmh0bWwoKTtpZighY29uZmlybWF0aW9uX2NvbnRlbnQpe2NvbmZpcm1hdGlvbl9jb250ZW50ID0gY29udGVudHM7fWpRdWVyeSgnI2dmb3JtX3dyYXBwZXJfNScpLnJlcGxhY2VXaXRoKGNvbmZpcm1hdGlvbl9jb250ZW50KTtqUXVlcnkoZG9jdW1lbnQpLnNjcm9sbFRvcChqUXVlcnkoJyNnZl81Jykub2Zmc2V0KCkudG9wIC0gbXQpO2pRdWVyeShkb2N1bWVudCkudHJpZ2dlcignZ2Zvcm1fY29uZmlybWF0aW9uX2xvYWRlZCcsIFs1XSk7d2luZG93WydnZl9zdWJtaXR0aW5nXzUnXSA9IGZhbHNlO3dwLmExMXkuc3BlYWsoalF1ZXJ5KCcjZ2Zvcm1fY29uZmlybWF0aW9uX21lc3NhZ2VfNScpLnRleHQoKSk7fWVsc2V7alF1ZXJ5KCcjZ2Zvcm1fNScpLmFwcGVuZChjb250ZW50cyk7aWYod2luZG93WydnZm9ybVJlZGlyZWN0J10pIHtnZm9ybVJlZGlyZWN0KCk7fX1qUXVlcnkoZG9jdW1lbnQpLnRyaWdnZXIoImdmb3JtX3ByZV9wb3N0X3JlbmRlciIsIFt7IGZvcm1JZDogIjUiLCBjdXJyZW50UGFnZTogImN1cnJlbnRfcGFnZSIsIGFib3J0OiBmdW5jdGlvbigpIHsgdGhpcy5wcmV2ZW50RGVmYXVsdCgpOyB9IH1dKTsgICAgICAgIGlmIChldmVudCAmJiBldmVudC5kZWZhdWx0UHJldmVudGVkKSB7ICAgICAgICAgICAgICAgIHJldHVybjsgICAgICAgIH0gICAgICAgIGNvbnN0IGdmb3JtV3JhcHBlckRpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCAiZ2Zvcm1fd3JhcHBlcl81IiApOyAgICAgICAgaWYgKCBnZm9ybVdyYXBwZXJEaXYgKSB7ICAgICAgICAgICAgY29uc3QgdmlzaWJpbGl0eVNwYW4gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCAic3BhbiIgKTsgICAgICAgICAgICB2aXNpYmlsaXR5U3Bhbi5pZCA9ICJnZm9ybV92aXNpYmlsaXR5X3Rlc3RfNSI7ICAgICAgICAgICAgZ2Zvcm1XcmFwcGVyRGl2Lmluc2VydEFkamFjZW50RWxlbWVudCggImFmdGVyZW5kIiwgdmlzaWJpbGl0eVNwYW4gKTsgICAgICAgIH0gICAgICAgIGNvbnN0IHZpc2liaWxpdHlUZXN0RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoICJnZm9ybV92aXNpYmlsaXR5X3Rlc3RfNSIgKTsgICAgICAgIGxldCBwb3N0UmVuZGVyRmlyZWQgPSBmYWxzZTsgICAgICAgIGZ1bmN0aW9uIHRyaWdnZXJQb3N0UmVuZGVyKCkgeyAgICAgICAgICAgIGlmICggcG9zdFJlbmRlckZpcmVkICkgeyAgICAgICAgICAgICAgICByZXR1cm47ICAgICAgICAgICAgfSAgICAgICAgICAgIHBvc3RSZW5kZXJGaXJlZCA9IHRydWU7ICAgICAgICAgICAgZ2Zvcm0uY29yZS50cmlnZ2VyUG9zdFJlbmRlckV2ZW50cyggNSwgY3VycmVudF9wYWdlICk7ICAgICAgICAgICAgaWYgKCB2aXNpYmlsaXR5VGVzdERpdiApIHsgICAgICAgICAgICAgICAgdmlzaWJpbGl0eVRlc3REaXYucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCggdmlzaWJpbGl0eVRlc3REaXYgKTsgICAgICAgICAgICB9ICAgICAgICB9ICAgICAgICBmdW5jdGlvbiBkZWJvdW5jZSggZnVuYywgd2FpdCwgaW1tZWRpYXRlICkgeyAgICAgICAgICAgIHZhciB0aW1lb3V0OyAgICAgICAgICAgIHJldHVybiBmdW5jdGlvbigpIHsgICAgICAgICAgICAgICAgdmFyIGNvbnRleHQgPSB0aGlzLCBhcmdzID0gYXJndW1lbnRzOyAgICAgICAgICAgICAgICB2YXIgbGF0ZXIgPSBmdW5jdGlvbigpIHsgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBudWxsOyAgICAgICAgICAgICAgICAgICAgaWYgKCAhaW1tZWRpYXRlICkgZnVuYy5hcHBseSggY29udGV4dCwgYXJncyApOyAgICAgICAgICAgICAgICB9OyAgICAgICAgICAgICAgICB2YXIgY2FsbE5vdyA9IGltbWVkaWF0ZSAmJiAhdGltZW91dDsgICAgICAgICAgICAgICAgY2xlYXJUaW1lb3V0KCB0aW1lb3V0ICk7ICAgICAgICAgICAgICAgIHRpbWVvdXQgPSBzZXRUaW1lb3V0KCBsYXRlciwgd2FpdCApOyAgICAgICAgICAgICAgICBpZiAoIGNhbGxOb3cgKSBmdW5jLmFwcGx5KCBjb250ZXh0LCBhcmdzICk7ICAgICAgICAgICAgfTsgICAgICAgIH0gICAgICAgIGNvbnN0IGRlYm91bmNlZFRyaWdnZXJQb3N0UmVuZGVyID0gZGVib3VuY2UoIGZ1bmN0aW9uKCkgeyAgICAgICAgICAgIHRyaWdnZXJQb3N0UmVuZGVyKCk7ICAgICAgICB9LCAyMDAgKTsgICAgICAgIGlmICggdmlzaWJpbGl0eVRlc3REaXYgJiYgdmlzaWJpbGl0eVRlc3REaXYub2Zmc2V0UGFyZW50ID09PSBudWxsICkgeyAgICAgICAgICAgIGNvbnN0IG9ic2VydmVyID0gbmV3IE11dGF0aW9uT2JzZXJ2ZXIoICggbXV0YXRpb25zICkgPT4geyAgICAgICAgICAgICAgICBtdXRhdGlvbnMuZm9yRWFjaCggKCBtdXRhdGlvbiApID0+IHsgICAgICAgICAgICAgICAgICAgIGlmICggbXV0YXRpb24udHlwZSA9PT0gJ2F0dHJpYnV0ZXMnICYmIHZpc2liaWxpdHlUZXN0RGl2Lm9mZnNldFBhcmVudCAhPT0gbnVsbCApIHsgICAgICAgICAgICAgICAgICAgICAgICBkZWJvdW5jZWRUcmlnZ2VyUG9zdFJlbmRlcigpOyAgICAgICAgICAgICAgICAgICAgICAgIG9ic2VydmVyLmRpc2Nvbm5lY3QoKTsgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgfSk7ICAgICAgICAgICAgfSk7ICAgICAgICAgICAgb2JzZXJ2ZXIub2JzZXJ2ZSggZG9jdW1lbnQuYm9keSwgeyAgICAgICAgICAgICAgICBhdHRyaWJ1dGVzOiB0cnVlLCAgICAgICAgICAgICAgICBjaGlsZExpc3Q6IGZhbHNlLCAgICAgICAgICAgICAgICBzdWJ0cmVlOiB0cnVlLCAgICAgICAgICAgICAgICBhdHRyaWJ1dGVGaWx0ZXI6IFsgJ3N0eWxlJywgJ2NsYXNzJyBdLCAgICAgICAgICAgIH0pOyAgICAgICAgfSBlbHNlIHsgICAgICAgICAgICB0cmlnZ2VyUG9zdFJlbmRlcigpOyAgICAgICAgfSAgICB9ICk7fSApOyAKLyogXV0+ICovCjwvc2NyaXB0Pgo=