Jelentkezés

[fusion_builder_container admin_label=”ütemezés” hundred_percent=”no” hundred_percent_height=”no” hundred_percent_height_scroll=”no” hundred_percent_height_center_content=”yes” equal_height_columns=”no” menu_anchor=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”rgba(255,255,255,0)” background_image=”” background_position=”center center” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ video_mp4=”” video_webm=”” video_ogv=”” video_url=”” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” video_preview_image=”” border_size=”” border_color=”” border_style=”solid” margin_top=”” margin_bottom=”35″ padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” admin_toggled=”yes”][fusion_builder_row][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” undefined=”” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” margin_top=”15″ margin_bottom=”15″ animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_text columns=”” column_min_width=”” column_spacing=”” rule_style=”default” rule_size=”” rule_color=”” class=”” id=””]

Ütemezés

Csoport létszám: fix 5 fő/csoport
csoportos oktatás: 4 órás alkalmak, 14 alkalom, összesen 52 óra
Hétvégi csoport: szombat reggel 9:30-13:30
Hétköznapi csoport: péntek 14:30-18:30
Következő képzés indul: 2019. február

[/fusion_text][fusion_button link=”#urlap” text_transform=”” title=”” target=”_self” link_attributes=”” alignment=”center” modal=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” color=”custom” button_gradient_top_color=”#ff0000″ button_gradient_bottom_color=”#ff0400″ button_gradient_top_color_hover=”#0800ff” button_gradient_bottom_color_hover=”#0800ff” accent_color=”” accent_hover_color=”” type=”” bevel_color=”” border_width=”” size=”medium” stretch=”default” shape=”” icon=”” icon_position=”left” icon_divider=”no” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=””]BEBIZTOSÍTOM A HELYEM![/fusion_button][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container][fusion_builder_container admin_label=” elválasztó” hundred_percent=”yes” hundred_percent_height=”no” hundred_percent_height_scroll=”no” hundred_percent_height_center_content=”yes” equal_height_columns=”no” menu_anchor=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”#fcfcfc” background_image=”” background_position=”center center” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ video_mp4=”” video_webm=”” video_ogv=”” video_url=”” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” video_preview_image=”” border_size=”” border_color=”” border_style=”solid” margin_top=”” margin_bottom=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” admin_toggled=”yes”][fusion_builder_row][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” dimension_margin=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_separator style_type=”single solid” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” sep_color=”#0a0a0a” top_margin=”15″ bottom_margin=”15″ border_size=”2″ icon=”” icon_circle=”” icon_circle_color=”” width=”1000″ alignment=”center” /][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container][fusion_builder_container hundred_percent=”no” hundred_percent_height=”no” hundred_percent_height_scroll=”no” hundred_percent_height_center_content=”yes” equal_height_columns=”no” menu_anchor=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”center center” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ video_mp4=”” video_webm=”” video_ogv=”” video_url=”” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” video_preview_image=”” border_size=”” border_color=”” border_style=”solid” margin_top=”” margin_bottom=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” admin_label=”a képzés díja” admin_toggled=”yes”][fusion_builder_row][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” undefined=”” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” margin_top=”” margin_bottom=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_text columns=”” column_min_width=”” column_spacing=”” rule_style=”default” rule_size=”” rule_color=”” class=”” id=””]

A képzés díja

A kurzus teljes díja nettó 580.000 Ft.

[/fusion_text][fusion_text columns=”” column_min_width=”” column_spacing=”” rule_style=”default” rule_size=”” rule_color=”” class=”” id=””]

Részletfizetési lehetőség van! Részletfizetés: 02.13-ig 280.000 Ft, 03.15-ig: 150.000 Ft, 2019.04.15-ig: 150.000 Ft.

Hogyan biztosíthatod be a helyed?

Feliratkozol az oldal alján található űrlapra 2019.02.10-ig. Ezután hamarosan felveszem veled a kapcsolatot és egy rövid telefonos konzultáció keretében megbeszéljük a részleteket.

Ahhoz, hogy a helyed biztosítva legyen, be kell fizetned a határidőig a tandíjat!

Ne feledd, hogy 100%-os elégedettségi garanciát vállalok a képzésemre, tehát nem kockáztatsz a tandíj befizetésével semmit!

[/fusion_text][fusion_button link=”#urlap” text_transform=”” title=”” target=”_self” link_attributes=”” alignment=”center” modal=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” color=”custom” button_gradient_top_color=”#ff0000″ button_gradient_bottom_color=”#ff0400″ button_gradient_top_color_hover=”#0800ff” button_gradient_bottom_color_hover=”#0800ff” accent_color=”” accent_hover_color=”” type=”” bevel_color=”” border_width=”” size=”large” stretch=”default” shape=”” icon=”” icon_position=”left” icon_divider=”no” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=””]BEBIZTOSÍTOM A HELYEM![/fusion_button][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container][fusion_builder_container admin_label=” elválasztó” hundred_percent=”yes” hundred_percent_height=”no” hundred_percent_height_scroll=”no” hundred_percent_height_center_content=”yes” equal_height_columns=”no” menu_anchor=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”#fcfcfc” background_image=”” background_position=”center center” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ video_mp4=”” video_webm=”” video_ogv=”” video_url=”” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” video_preview_image=”” border_size=”” border_color=”” border_style=”solid” margin_top=”” margin_bottom=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” admin_toggled=”yes”][fusion_builder_row][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” dimension_margin=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_separator style_type=”single solid” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” sep_color=”#0a0a0a” top_margin=”15″ bottom_margin=”15″ border_size=”2″ icon=”” icon_circle=”” icon_circle_color=”” width=”1000″ alignment=”center” /][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container][fusion_builder_container admin_label=”miért éri ez meg neked?” hundred_percent=”no” hundred_percent_height=”no” hundred_percent_height_scroll=”no” hundred_percent_height_center_content=”yes” equal_height_columns=”no” menu_anchor=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”#242323″ background_image=”” background_position=”center center” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ video_mp4=”” video_webm=”” video_ogv=”” video_url=”” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” video_preview_image=”” border_size=”” border_color=”” border_style=”solid” margin_top=”-15″ margin_bottom=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” admin_toggled=”yes”][fusion_builder_row][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” undefined=”” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” margin_top=”50″ margin_bottom=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_text]

MIÉRT ÉRI EZ MEG NEKED?

[/fusion_text][fusion_images picture_size=”auto” hover_type=”none” autoplay=”no” columns=”5″ column_spacing=”13″ scroll_items=”” show_nav=”yes” mouse_scroll=”no” border=”no” lightbox=”no” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=””][fusion_image image=”https://headshotacademy.com/wp-content/uploads/2018/08/elegedettsegi-garancia.jpg” image_id=”” link=”” linktarget=”_self” alt=”” /][fusion_image image=”https://headshotacademy.com/wp-content/uploads/2018/08/csapatunk-tagja-lehetsz.jpg” image_id=”” link=”” linktarget=”_self” alt=”” /][fusion_image image=”https://headshotacademy.com/wp-content/uploads/2018/08/gyors-megterules.jpg” image_id=”” link=”” linktarget=”_self” alt=”” /][/fusion_images][/fusion_builder_column][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” undefined=”” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” margin_top=”” margin_bottom=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][/fusion_builder_column][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” dimension_margin=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_button link=”#urlap” text_transform=”” title=”” target=”_blank” link_attributes=”” alignment=”center” modal=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” color=”custom” button_gradient_top_color=”#ff0000″ button_gradient_bottom_color=”#ff0000″ button_gradient_top_color_hover=”#00008b” button_gradient_bottom_color_hover=”#00008b” accent_color=”#ffffff” accent_hover_color=”#ffffff” type=”” bevel_color=”” border_width=”0″ size=”xlarge” stretch=”no” shape=”” icon=”” icon_position=”left” icon_divider=”no” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=””]Ez tényleg megéri, jelentkezem![/fusion_button][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container][fusion_builder_container admin_label=”mibe fektetsz ezért a pénzért?” hundred_percent=”yes” hundred_percent_height=”no” hundred_percent_height_scroll=”no” hundred_percent_height_center_content=”yes” equal_height_columns=”no” menu_anchor=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”#000000″ background_image=”” background_position=”center center” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ video_mp4=”” video_webm=”” video_ogv=”” video_url=”” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” video_preview_image=”” border_size=”” border_color=”” border_style=”solid” margin_top=”” margin_bottom=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” admin_toggled=”yes”][fusion_builder_row][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” undefined=”” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”20″ padding_right=”” padding_bottom=”20″ padding_left=”” margin_top=”” margin_bottom=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_text]

Mibe fektetsz ezért a pénzért?

[/fusion_text][/fusion_builder_column][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” dimension_margin=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_content_boxes layout=”icon-boxed” columns=”4″ title_size=”” title_color=”#ffffff” body_color=”#ffffff” backgroundcolor=”” icon=”” iconflip=”” iconrotate=”” iconspin=”no” iconcolor=”” icon_circle=”yes” icon_circle_radius=”” circlecolor=”#000000″ circlebordersize=”0″ circlebordercolor=”” outercirclebordersize=”0″ outercirclebordercolor=”” icon_size=”” icon_hover_type=”fade” hover_accent_color=”#000000″ image=”” image_width=”” image_height=”” link_type=”” link_area=”link-icon” link_target=”” icon_align=”left” animation_type=”” animation_delay=”” animation_offset=”” animation_direction=”left” animation_speed=”0.3″ margin_top=”” margin_bottom=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=””][fusion_content_box title=”52 ÓRA INTENZÍV KÉPZÉS” backgroundcolor=”#03a9f4″ icon=”fa-clock-o” iconflip=”” iconrotate=”” iconspin=”no” iconcolor=”#ffffff” circlecolor=”#000000″ circlebordersize=”0″ circlebordercolor=”” outercirclebordersize=”0″ outercirclebordercolor=”” image=”” image_width=”35″ image_height=”35″ link=”” linktext=”Read More” link_target=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=””]

  • 13 alkalom x 4 órás képzés

  • 5 fős csoportokban

  • gyakorlati vizsga

[/fusion_content_box][fusion_content_box title=”OKTATÁSI SEGÉDLETEK” backgroundcolor=”#0080b7″ icon=”fa-book” iconflip=”” iconrotate=”” iconspin=”no” iconcolor=”#ffffff” circlecolor=”#000000″ circlebordersize=”0″ circlebordercolor=”” outercirclebordersize=”0″ outercirclebordercolor=”” image=”” image_width=”35″ image_height=”35″ link=”” linktext=”Read More” link_target=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=””]

  • Nyomtatott segédanyagok

  • Oktató videókhoz hozzáférés

  • Online szakmai fórumhoz hozzáférés

[/fusion_content_box][fusion_content_box title=”AJÁNDÉK! HEADSHOT FOTÓK RÓLAD” backgroundcolor=”#edbb07″ icon=”fa-gift” iconflip=”” iconrotate=”” iconspin=”no” iconcolor=”#ffffff” circlecolor=”#000000″ circlebordersize=”0″ circlebordercolor=”” outercirclebordersize=”0″ outercirclebordercolor=”” image=”” image_width=”35″ image_height=”35″ link=”” linktext=”Read More” link_target=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=””]

Nekünk fotósoknak is szükségünk van ütős képekre. Kipróbálhatod magad a kamerám előtt!
45.000 Ft értékű!

[/fusion_content_box][fusion_content_box title=”AJÁNDÉK! 2 X 1,5 ÓRA EGYÉNI KONZULTÁCIÓ” backgroundcolor=”#edbb07″ icon=”fa-gift” iconflip=”” iconrotate=”” iconspin=”no” iconcolor=”#ffffff” circlecolor=”#000000″ circlebordersize=”0″ circlebordercolor=”” outercirclebordersize=”0″ outercirclebordercolor=”” image=”” image_width=”35″ image_height=”35″ link=”” linktext=”Read More” link_target=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=””]

Személyes konzultáció velem, előre egyeztetett időpontban a képzés ideje alatt.
40.000 Ft értékű!

[/fusion_content_box][/fusion_content_boxes][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container][fusion_builder_container hundred_percent=”no” hundred_percent_height=”no” hundred_percent_height_scroll=”no” hundred_percent_height_center_content=”yes” equal_height_columns=”no” menu_anchor=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”#ffffff” background_image=”” background_position=”center center” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ video_mp4=”” video_webm=”” video_ogv=”” video_url=”” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” video_preview_image=”” border_size=”” border_color=”” border_style=”solid” margin_top=”70″ margin_bottom=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” admin_label=”bizonytalan vagy?” admin_toggled=”yes”][fusion_builder_row][fusion_builder_column type=”1_2″ layout=”1_2″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” dimension_margin=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_text]

BIZONYTALAN VAGY? GYERE EL EGY KONZULTÁCIÓRA!

Ha nem vagy még biztos benne, hogy neked való a Headshot Academy, vagy csak egy külső szakértői véleményre lenne szükséged a fotós karriered építéséhez, akkor gyere el a stúdiónkba egy 1,5 órás személyes konzultációra. Hozd el a portfóliódat, gyűjtsd össze a legnagyobb kérdéseid, és én segítek jó irányba állnod. Ismerjük meg egymást, és hamar kiderül, hogy jól együtt tudnánk-e dolgozni!

A konzultáció díja bruttó 20.000 Ft. Amennyiben úgy döntesz, hogy belépsz a Headshot Academy-be, akkor ezt a díjat levonjuk a regisztrációs díjadból!

[/fusion_text][/fusion_builder_column][fusion_builder_column type=”1_2″ layout=”1_2″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”https://headshotacademy.com/wp-content/uploads/2018/08/Sebastian-079v2.jpg” background_position=”center center” undefined=”” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”120px” padding_left=”” margin_top=”” margin_bottom=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][/fusion_builder_column][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” dimension_margin=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_button link=”#urlap” text_transform=”” title=”” target=”_self” link_attributes=”” alignment=”” modal=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” color=”custom” button_gradient_top_color=”#ff0000″ button_gradient_bottom_color=”#ff0400″ button_gradient_top_color_hover=”#0800ff” button_gradient_bottom_color_hover=”#0800ff” accent_color=”” accent_hover_color=”” type=”” bevel_color=”” border_width=”” size=”” stretch=”default” shape=”” icon=”” icon_position=”left” icon_divider=”no” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=””]KONZULTÁCIÓS IDŐPONT FOGLALÁSA[/fusion_button][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container][fusion_builder_container admin_label=” elválasztó” hundred_percent=”yes” hundred_percent_height=”no” hundred_percent_height_scroll=”no” hundred_percent_height_center_content=”yes” equal_height_columns=”no” menu_anchor=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”#fcfcfc” background_image=”” background_position=”center center” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ video_mp4=”” video_webm=”” video_ogv=”” video_url=”” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” video_preview_image=”” border_size=”” border_color=”” border_style=”solid” margin_top=”” margin_bottom=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” admin_toggled=”yes”][fusion_builder_row][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” dimension_margin=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_separator style_type=”single solid” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” sep_color=”#0a0a0a” top_margin=”15″ bottom_margin=”15″ border_size=”2″ icon=”” icon_circle=”” icon_circle_color=”” width=”1000″ alignment=”center” /][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container][fusion_builder_container admin_label=”honnan tudod, hogy neked szól a képzés?” hundred_percent=”no” hundred_percent_height=”no” hundred_percent_height_scroll=”no” hundred_percent_height_center_content=”yes” equal_height_columns=”no” menu_anchor=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”center center” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ video_mp4=”” video_webm=”” video_ogv=”” video_url=”” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” video_preview_image=”” border_size=”” border_color=”” border_style=”solid” margin_top=”” margin_bottom=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” admin_toggled=”yes”][fusion_builder_row][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” dimension_margin=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_text]

Honnan tudod, hogy neked szól a képzés?

Haladó szintű a fotós tudásod:

  • Expozíció elmélete, elemeinek ismerete (rekesz, záridő, ISO kapcsolata) a kisujjadban van
  • Saját fényképezőgéped funkcióinak és beállításait ismered
  • Elkezdtél foglalkozni a Photoshoppal
  • A felszerelésedben megtalálhatóak:
  • Saját cserélhető objektíves fényképezőgép (tükörreflexes, középformátumú vagy mirrorless)
  • Saját objektív 35mm-esre formátumra átszámítva 85-110mm közötti gyújtótávval
  • Fényképezőgépedhez való USB kábel
  • Nagy teljesítményű laptop vagy otthoni számítógép (Photoshop és Capture One programok)
  • Ajánlott: stabil, középoszloppal rendelkező, gömbefejes állvány

[/fusion_text][/fusion_builder_column][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” dimension_margin=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_text]

Jó, ha tudod, hogy

A kurzus elvégzésével nem kapsz szakképesítést. Ahhoz, hogy Magyarországon portréfotózás címszó alatt számlát tudj kiállítani, a kormányrendelet szerint szakirányú képesítéssel kell rendelkezned (sehol máshol nincs ilyen szabály Európában sem az USA-ban…). Hivatalosan el kell tehát végezned egy Fotográfus és termékkereskedő című OKJ-s tanfolyamot, vagy diplomát szerezned a 3 fotós szakot indító egyetem közül.
Ezzel a témával kapcsolatban kérd a személyes konzultációt!

[/fusion_text][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container][fusion_builder_container admin_label=”űrlap helye” hundred_percent=”no” hundred_percent_height=”no” hundred_percent_height_scroll=”no” hundred_percent_height_center_content=”yes” equal_height_columns=”no” menu_anchor=”urlap” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”center center” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ video_mp4=”” video_webm=”” video_ogv=”” video_url=”” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” video_preview_image=”” border_size=”” border_color=”” border_style=”solid” margin_top=”” margin_bottom=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” admin_toggled=”yes”][fusion_builder_row][fusion_builder_column type=”1_1″ layout=”1_1″ spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” class=”” id=”” background_color=”” background_image=”” background_position=”left top” background_repeat=”no-repeat” hover_type=”none” border_size=”0″ border_color=”” border_style=”solid” border_position=”all” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” dimension_margin=”” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” last=”no”][fusion_code]PGxpbmsgaHJlZj0naHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU9wZW4rU2Fuczo0MDAsMzAwJnN1YnNldD1sYXRpbixjeXJpbGxpYy1leHQsZ3JlZWstZXh0LGdyZWVrLGxhdGluLWV4dCxjeXJpbGxpYycgcmVsPSdzdHlsZXNoZWV0JyB0eXBlPSd0ZXh0L2Nzcyc+CjxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdGl0bGU9IiIgaHJlZj0iaHR0cHM6Ly9kMXVyc3locXM1eDloMS5jbG91ZGZyb250Lm5ldC9zdy9tYWlsbWFzdGVyL2Nzcy9mb3JtLXRlbXBsYXRlLW1pbmltYWwtbGlnaHQuY3NzIiB0eXBlPSJ0ZXh0L2NzcyI+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vZDF1cnN5aHFzNXg5aDEuY2xvdWRmcm9udC5uZXQvc3cvc2NyaXB0cy9qcXVlcnktMS4xMS4wLm1pbi5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHBzOi8vZDF1cnN5aHFzNXg5aDEuY2xvdWRmcm9udC5uZXQvc3cvc2NyaXB0cy9tYWlsbWFzdGVyLXNjcmlwdHMtMS4wLmpzIj48L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly9kMXVyc3locXM1eDloMS5jbG91ZGZyb250Lm5ldC9zdy9zY3JpcHRzL21tdXRpbHMubWluLmpzIj48L3NjcmlwdD4KPHNjcmlwdCBzcmM9Imh0dHBzOi8vZDF1cnN5aHFzNXg5aDEuY2xvdWRmcm9udC5uZXQvc3cvc2NyaXB0cy9qcXVlcnkuaW5wdXRtYXNrLmJ1bmRsZS5taW4uanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KdmFyIHN1Ym1pdFByb2dyZXNzID0gZmFsc2U7CnZhciBwcm9kdWN0VGF4UmF0ZXMgPSAnJzsKdmFyIHByb2R1Y3RUYXhSYXRlRGVmYXVsdCA9ICcnOwp2YXIgdGF4UmF0ZVZhdCA9ICcnOwp2YXIgdGF4UmF0ZUJydXR0byA9ICcnOwp2YXIgdGF4UmF0ZVZhdFN1bSA9ICcnOwp2YXIgc2hpcHBpbmdUYXhSYXRlcyA9ICcnOwp2YXIgc2hpcHBpbmdUYXhSYXRlRGVmYXVsdCA9ICcnOwp2YXIgcmVjYXB0Y2hhUmVzcG9uc2UgPSAnJzsKZ2xzUG9udG9rID0gJyc7Cm1talF1ZXJ5ID0galF1ZXJ5Lm5vQ29uZmxpY3QoKTsKCm1talF1ZXJ5KHdpbmRvdykubG9hZChmdW5jdGlvbigpIHsKCXZhciBwYXJlbnRfdXJsID0gZGVjb2RlVVJJQ29tcG9uZW50KCBkb2N1bWVudC5sb2NhdGlvbi5oYXNoLnJlcGxhY2UoIC9eIy8sICcnICkgKSxsaW5rOwoJdmFyIGZvcm1BY3Rpb25VUkwgPSBtbWpRdWVyeSgiI21zc3lzZm9ybTE1NzkwOTE1MzU5ODQ3OTAiKS5hdHRyKCdhY3Rpb24nKTsKCW1talF1ZXJ5KCIjbXNzeXNmb3JtMTU3OTA5MTUzNTk4NDc5MCIpLmF0dHIoJ2FjdGlvbicsZm9ybUFjdGlvblVSTCsnIycrcGFyZW50X3VybCk7CgkKCXZhciBlcnJvciA9IGZhbHNlOwoJdmFyIGVtYWlsdW5pcXVlZmFpbCA9IGZhbHNlOwoJdmFyIGVtYWlsdW5pcXVlY2hlY2sgPSBmYWxzZTsKCXZhciBjaGVja051bSA9IDA7CgogICAgZnVuY3Rpb24gc2V0SGVpZ2h0KGV4dHJhSGVpZ2h0KSB7CgkJdHJ5IHsKCQkJbWVzc2FnaW5nLnBvc3RNZXNzYWdlKHsgaWZfaGVpZ2h0OiBwYXJzZUludChtbWpRdWVyeS5nZXREb2NIZWlnaHQoKSkrZXh0cmFIZWlnaHQsZm9ybV9pZDogMTU3OTA5fSwgcGFyZW50X3VybCwgcGFyZW50ICk7CgkJCS8qIFNldCByZWZlcmVyIGhpZGRlbiBmaWVsZCAqLwoJCQlpZiAobW1qUXVlcnkoIiNtc3N5c2Zvcm0xNTc5MDkxNTM1OTg0NzkwIGlucHV0W25hbWU9J21zc3lzX3JlZmVyZXJfcGFnZSddIikubGVuZ3RoID09IDApIHsKCQkJCW1talF1ZXJ5KCIjbXNzeXNmb3JtMTU3OTA5MTUzNTk4NDc5MCIpLmFwcGVuZCgnPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0ibXNzeXNfcmVmZXJlcl9wYWdlIiB2YWx1ZT0iJytwYXJlbnRfdXJsKyciPicpOwoJCQl9CgkJfSBjYXRjaChlcnIpIHsKCQkJLyogVGhlcmUgaXMgbm8gcGFyZW50IHdpbmRvdyAqLwoJCX0KCX07CgogICAgICAgICAgICB2YXIgcHJldmVudF9tdWx0aXBsZV9zdWJtaXRfY29kZSA9IE1hdGguZmxvb3IoRGF0ZS5ub3coKSAvIDEwMDApICsgJycgKyBNYXRoLmZsb29yKChNYXRoLnJhbmRvbSgpICogOTk5OTk5OTk5OSkgKyAxKTsKICAgICAgICBtbWpRdWVyeSgiI21zc3lzZm9ybTE1NzkwOTE1MzU5ODQ3OTAgaW5wdXRbbmFtZT0nbXNzeXNfc3VibWl0X3BhcmFtcyddIikudmFsKHByZXZlbnRfbXVsdGlwbGVfc3VibWl0X2NvZGUpOwogICAgCiAgICAKICAgIAogICAgCgoJCQkJCQoJSW5wdXRtYXNrLmV4dGVuZERlZmluaXRpb25zKHsKCQkneCc6IHsKCQkJdmFsaWRhdG9yOiAiKDIwfDMwfDMxfDcwKSIsCgkJCWNhcmRpbmFsaXR5OjIsCgkJCXByZXZhbGlkYXRvcjogWwoJCSAgICAgIHsgdmFsaWRhdG9yOiAiWzIzN10iLCBjYXJkaW5hbGl0eTogMSB9LAoJCSAgICAgIHsgdmFsaWRhdG9yOiAiKDIwfDMwfDMxfDcwKSIsIGNhcmRpbmFsaXR5OiAyIH0sCgkJICAgIF0KCQl9Cgl9KTsKCQoJCSAgICAKICAgIG1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgaW5wdXRbbmFtZV49J21zc3lzX21vYmlsZSddIikuaW5wdXRtYXNrKCIrMzZ4OTk5OTk5OSIsIHsKICAgICAgICBvbkJlZm9yZU1hc2s6IGZ1bmN0aW9uICh2YWx1ZSwgb3B0cykgewogICAgICAgICAgICByZXR1cm4gKHZhbHVlLnJlcGxhY2UoL15cKzM2LywgIiIpKS5yZXBsYWNlKC9eMDAzNi8sICIiKS5yZXBsYWNlKC9eMzYvLCAiIik7CiAgICAgICAgfSwKICAgICAgICBwbGFjZWhvbGRlcjogIiIKICAgIH0pOwogICAgCiAgICAgICAJCQkKCgkJbW1qUXVlcnkoIi5tZXpvODY0MTg5IikuaGlkZSgpOwoJCQkKCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgLnN1Ym1pdGJ1dHRvbiIpLmNsaWNrKGZ1bmN0aW9uIChlKSB7CiAgICAgICAgdmF0Q2hlY2sgPSBmYWxzZTsKCQlpZiAobW1qUXVlcnkodGhpcykuYXR0cignaWQnKSA9PSAnd2FudF91cHNlbGwnKSB7CgkJCW1talF1ZXJ5KCIjbXNzeXNmb3JtMTU3OTA5MTUzNTk4NDc5MCBpbnB1dFtuYW1lPSdtc3N5c193YW50X3Vwc2VsbCddIikudmFsKCcxJyk7CgkJfSBlbHNlIGlmIChtbWpRdWVyeSh0aGlzKS5hdHRyKCdpZCcpID09ICdkb250X3dhbnRfdXBzZWxsJykgewoJCQltbWpRdWVyeSgiI21zc3lzZm9ybTE1NzkwOTE1MzU5ODQ3OTAgaW5wdXRbbmFtZT0nbXNzeXNfd2FudF91cHNlbGwnXSIpLnZhbCgnMCcpOwoJCX0KICAgICAgICAJCW1talF1ZXJ5KCIjbXNzeXNmb3JtMTU3OTA5MTUzNTk4NDc5MCIpLnRyaWdnZXIoJ3N1Ym1pdCcpOwogICAgICAgIAl9KTsKCQlpZiAobW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAucG9zdGFsc2FtZWNoayIpLmxlbmd0aCA+IDApIHsKCQlpZiAobW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAucG9zdGFsc2FtZWNoayIpLmlzKCI6Y2hlY2tlZCIpKSB7CgkJCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgZGl2W2lkXj0nY29udGFpbmVybXNzeXNfcG9zdGFsXyddIikuaGlkZSgpOwoJCX0KCX0KCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgLnBvc3RhbHNhbWVjaGsiKS5jbGljayhmdW5jdGlvbiAoKSB7CgkJaWYgKG1talF1ZXJ5KHRoaXMpLnByb3AoJ2NoZWNrZWQnKSkgewoJCQltbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwIGRpdltpZF49J2NvbnRhaW5lcm1zc3lzX3Bvc3RhbF8nXSIpLmhpZGUoKTsKCQl9IGVsc2UgewoJCQltbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwIGRpdltpZF49J2NvbnRhaW5lcm1zc3lzX3Bvc3RhbF8nXSIpLnNob3coKTsKCQl9CgkJc2V0SGVpZ2h0KDApOwoJfSk7CglpZiAobW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAuYmlsbHNhbWVjaGsiKS5sZW5ndGggPiAwKSB7CgkJaWYgKG1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgLmJpbGxzYW1lY2hrIikuaXMoIjpjaGVja2VkIikpIHsKCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCBkaXZbaWRePSdjb250YWluZXJtc3N5c19iaWxsXyddIikuaGlkZSgpOwoJCX0KCX0KCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgLmJpbGxzYW1lY2hrIikuY2xpY2soZnVuY3Rpb24gKCkgewoJCWlmIChtbWpRdWVyeSh0aGlzKS5wcm9wKCdjaGVja2VkJykpIHsKCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCBkaXZbaWRePSdjb250YWluZXJtc3N5c19iaWxsXyddIikuaGlkZSgpOwoJCX0gZWxzZSB7CgkJCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgZGl2W2lkXj0nY29udGFpbmVybXNzeXNfYmlsbF8nXSIpLnNob3coKTsKCQl9CgkJc2V0SGVpZ2h0KDApOwoJfSk7CgkKCgkJbW1qUXVlcnkoIiNtc3N5c2Zvcm0xNTc5MDkxNTM1OTg0NzkwIikuc3VibWl0KGZ1bmN0aW9uIChldmVudCkgewoJCWlmIChzdWJtaXRQcm9ncmVzcykgewoJCQlldmVudC5wcmV2ZW50RGVmYXVsdCgpOwoJCQlyZXR1cm4gZmFsc2U7CgkJfQoJCWVycm9yID0gZmFsc2U7CgkJZW1haWx1bmlxdWVmYWlsID0gZmFsc2U7CgkJc3VibWl0UHJvZ3Jlc3MgPSB0cnVlOwogICAgICAgIAogICAgICAgIHZhciBvc21fc2hpcHBpbmdfbWV0aG9kX3R5cGUgPSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwIGlucHV0W25hbWU9J3NoaXBwaW5nX21ldGhvZCddOmNoZWNrZWQiKS5hdHRyKCJvc21fc2hpcHBpbmdfbWV0aG9kcyIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAuZXJyb3ItY29udGFpbmVyIikuaGlkZSgpOwogICAgICAgICAgICAgICAgbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAuZXJyb3ItZmllbGQiKS5yZW1vdmVDbGFzcygnZXJyb3ItZmllbGQnKTsKICAgICAgICAKCQkvKm1talF1ZXJ5KCJpbnB1dFtuYW1lPSdmb3JtX3N1Ym1pdCddIikuYXR0cignZGlzYWJsZWQnLHRydWUpOyovCgkJaWYgKG1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgLnN1Ym1pdGJ1dHRvbiBpbWciKS5sZW5ndGggPT0gMCkgewoJCQltbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwIC5zdWJtaXRidXR0b24iKS5odG1sKCJGZWxkb2xnb3rDoXMuLi4iKTsKCQl9CiAgICAgCWlmIChtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwIC5wb3N0YWxzYW1lY2hrIikucHJvcCgnY2hlY2tlZCcpICYmIG9zbV9zaGlwcGluZ19tZXRob2RfdHlwZSAhPSAncGlja3BhY2twb250JyAmJiBvc21fc2hpcHBpbmdfbWV0aG9kX3R5cGUgIT0gJ3NoaXBwaW5nX2dsc3BvbnQnICYmIG9zbV9zaGlwcGluZ19tZXRob2RfdHlwZSAhPSAnbXBscG9udCcpIHsKCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjbXNzeXNfcG9zdGFsX2NvbXBhbnkiKS52YWwobW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjbXNzeXNfYmlsbF9jb21wYW55IikudmFsKCkpOwoJCQltbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNtc3N5c19wb3N0YWxfY291bnRyeSIpLnZhbChtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNtc3N5c19iaWxsX2NvdW50cnkgb3B0aW9uOnNlbGVjdGVkIikudmFsKCkpOwoJCQltbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNtc3N5c19wb3N0YWxfemlwIikudmFsKG1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX2JpbGxfemlwIikudmFsKCkpOwoJCQltbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNtc3N5c19wb3N0YWxfY2l0eSIpLnZhbChtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNtc3N5c19iaWxsX2NpdHkiKS52YWwoKSk7CgkJCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX3Bvc3RhbF9hZGRyZXNzIikudmFsKG1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX2JpbGxfYWRkcmVzcyIpLnZhbCgpKTsKCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjbXNzeXNfcG9zdGFsX3N0YXRlIikudmFsKG1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX2JpbGxfc3RhdGUiKS52YWwoKSk7CgkJfQoJCWlmIChtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwIC5iaWxsc2FtZWNoayIpLnByb3AoJ2NoZWNrZWQnKSkgewoJCSAgICBpZiAob3NtX3NoaXBwaW5nX21ldGhvZF90eXBlID09ICdwaWNrcGFja3BvbnQnIHx8IG9zbV9zaGlwcGluZ19tZXRob2RfdHlwZSA9PSAnc2hpcHBpbmdfZ2xzcG9udCcgfHwgb3NtX3NoaXBwaW5nX21ldGhvZF90eXBlID09ICdtcGxwb250JyAmJiAobW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjbXNzeXNfbGFzdG5hbWUiKS52YWwoKSAhPSAnJyB8fCBtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNtc3N5c19maXJzdG5hbWUiKS52YWwoKSAhPSAnJykpIHsKICAgIAkJCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX2JpbGxfY29tcGFueSIpLnZhbChtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNtc3N5c19sYXN0bmFtZSIpLnZhbCgpICsgJyAnICsgbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjbXNzeXNfZmlyc3RuYW1lIikudmFsKCkpOyAgICAgICAgICAgICAgICAJCSAgICAgIAoJCSAgICB9IGVsc2UgewogICAgCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjbXNzeXNfYmlsbF9jb21wYW55IikudmFsKG1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX3Bvc3RhbF9jb21wYW55IikudmFsKCkpOyAgICAgICAgICAgIAoJCSAgICB9CgkJCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX2JpbGxfY291bnRyeSIpLnZhbChtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNtc3N5c19wb3N0YWxfY291bnRyeSBvcHRpb246c2VsZWN0ZWQiKS52YWwoKSk7CgkJCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX2JpbGxfemlwIikudmFsKG1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX3Bvc3RhbF96aXAiKS52YWwoKSk7CgkJCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX2JpbGxfY2l0eSIpLnZhbChtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNtc3N5c19wb3N0YWxfY2l0eSIpLnZhbCgpKTsKCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjbXNzeXNfYmlsbF9hZGRyZXNzIikudmFsKG1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX3Bvc3RhbF9hZGRyZXNzIikudmFsKCkpOwoJCQltbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNtc3N5c19iaWxsX3N0YXRlIikudmFsKG1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI21zc3lzX3Bvc3RhbF9zdGF0ZSIpLnZhbCgpKTsKCQl9CgoJCW1talF1ZXJ5KCdpbnB1dFt0eXBlPSJmaWxlIl0nKS5lYWNoKGZ1bmN0aW9uKCl7CgkJCXZhciBlcnJvcm1zZyA9ICcnOwoJCQlpZiAoIWNoZWNrRXh0ZW5zaW9uKG1talF1ZXJ5KHRoaXMpLnZhbCgpKSkgewoJCQkJZXJyb3Jtc2cgPSAiQSBmZWx0w7ZsdGVuZMWRIGbDoWpsIGtpdGVyamVzenTDqXNlIG5lbSBlbmdlZMOpbHllemV0dC4iOwoJCQkJZXJyb3IgPSB0cnVlOwoJCQkJbW1qUXVlcnkodGhpcykuZm9jdXMoKTsKCQkJfQoJCQlpZiAoZXJyb3Jtc2cgIT0gJycpIHsKCQkJCWFsZXJ0KGVycm9ybXNnKTsKCQkJfQoJCX0pOwoKCQkJCWlmICghZW1haWx1bmlxdWVjaGVjaykgewoJCQlpZiAobW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVyZW1haWwgaW5wdXRbbmFtZT0nZW1haWwnXSIpLnZhbCgpICE9ICcnKSB7CgkJCQltbWpRdWVyeS5hamF4KHsKCQkJCSB0eXBlOiAiR0VUIiwKCQkJCSB1cmw6ICJodHRwczovL3N3Lm1hcmtldGluZ3N6b2Z0dmVyZWsuaHUvYXBpL2NoZWNrLWVtYWlsLXVuaXF1ZW5lc3MtanNvbi5waHAiLAoJCQkJIGRhdGE6IHtuc19pZDonMTU3OTA5Jyx0b2tlbjonbkt6Rk1IdzVIQWVRTUN2U2pxcUpqR0lJRnNVSGIwNU5nT3N2c0RMUXVpYVJmbnp3NkkxNTM1OTgzOTUyJyxlbWFpbDptbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwIGlucHV0W25hbWU9J2VtYWlsJ10iKS52YWwoKX0sCgkJCQkgY2FjaGU6IGZhbHNlLAoJCQkJIGRhdGFUeXBlOiAianNvbnAiLAoJCQkJIGpzb25wOiAnanNvbnBfY2FsbGJhY2snLAoJCQkJIGFzeW5jOiBmYWxzZSwKCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihtc2cpewoJCQkJCSAvKm1talF1ZXJ5KCJpbnB1dFtuYW1lPSdmb3JtX3N1Ym1pdCddIikucmVtb3ZlQXR0cigiZGlzYWJsZWQiKTsqLwoJCQkJCSBpZiAobXNnLnJlc3BvbnNlID09ICcxJykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJlbWFpbCAuZXJyb3ItY29udGFpbmVyIikuc2hvdygpLmh0bWwoJ0V6emVsIGF6IGVtYWlsIGPDrW1tZWwgbcOhciBmZWxpcmF0a296b3R0IGtvcsOhYmJhbiEnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCgkJCQkJCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgLnN1Ym1pdGJ1dHRvbiIpLnJlbW92ZUNsYXNzKCdtbS1zdWJtaXQtZGlzYWJsZWQnKTsKICAJCQkJICAgICAgICBtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwIC5zdWJtaXRidXR0b24iKS5odG1sKCJKRUxFTlRLRVpFTSEiKTsKCQkJCQkJZW1haWx1bmlxdWVmYWlsID0gdHJ1ZTsKCQkJCQkJc3VibWl0UHJvZ3Jlc3MgPSBmYWxzZTsKCQkJCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCBpbnB1dFtuYW1lPSdlbWFpbCddIikuZm9jdXMoKTsKCQkJCQkgfSBlbHNlIHsKCQkJCQkJaWYgKCFlcnJvcikgewoJCQkJCQkJZW1haWx1bmlxdWVjaGVjayA9IHRydWU7CgkJCQkJCQllbWFpbHVuaXF1ZWZhaWwgPSBmYWxzZTsKCQkJCQkJCXN1Ym1pdFByb2dyZXNzID0gZmFsc2U7CgkJCQkJCQltbWpRdWVyeSgiI21zc3lzZm9ybTE1NzkwOTE1MzU5ODQ3OTAiKS50cmlnZ2VyKCJzdWJtaXQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJlbWFpbCAuZXJyb3ItY29udGFpbmVyIikuaGlkZSgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAoJCQkJCQl9IGVsc2UgewoJCQkJCQkJZW1haWx1bmlxdWVjaGVjayA9IGZhbHNlOwoJCQkJCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCBpbnB1dFtuYW1lPSdlbWFpbCddIikuZm9jdXMoKTsKCQkJCQkJfQoJCQkJCSB9CgkJCQl9CgkJCQl9KTsKCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCX0KCQl9CgoJCWlmIChlbWFpbHVuaXF1ZWZhaWwpIHsKICAgICAgICAgICAgCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVyZW1haWwgLmVycm9yLWNvbnRhaW5lciIpLnNob3coKTsKCQkJICAgICAgICAgICAgbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCBpbnB1dFtuYW1lPSdlbWFpbCddIikuYWRkQ2xhc3MoJ2Vycm9yLWZpZWxkJyk7CiAgICAgICAgICAgIAoJCQllcnJvciA9IHRydWU7CgkJfQoJCQoJCQoJCQkJaWYgKCFjaGVja01haWwobW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCBpbnB1dFtuYW1lPSdlbWFpbCddIikudmFsKCkpICkgewogICAgICAgICAgICAJCQltbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJlbWFpbCAuZXJyb3ItY29udGFpbmVyIikuc2hvdygpOwoJCQkgICAgICAgICAgICBtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwIGlucHV0W25hbWU9J2VtYWlsJ10iKS5hZGRDbGFzcygnZXJyb3ItZmllbGQnKS5mb2N1cygpOwogICAgICAgICAgICAKCQkJZXJyb3IgPSB0cnVlOwoJCX0KCQkKICAgICAgICAKCQkKCQkKCQkJCSAgICAgICAgCQkJCQkJCQkJCQkJCQoJCQkJdmFyIHRtcF9pbnB1dF92YWwgPSBtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJtc3N5c19sYXN0bmFtZSBpbnB1dFt0eXBlPSd0ZXh0J10sIisKCQkJCQkJICAgIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVybXNzeXNfbGFzdG5hbWUgW3R5cGU9J2VtYWlsJ10sIisKCQkJCQkJICAgIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVybXNzeXNfbGFzdG5hbWUgW3R5cGU9J3VybCddLCIrCgkJCQkJCSAgICIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI2NvbnRhaW5lcm1zc3lzX2xhc3RuYW1lIFt0eXBlPSdudW1iZXInXSwiKwoJCQkJCQkgICAiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJtc3N5c19sYXN0bmFtZSBbdHlwZT0ncGFzc3dvcmQnXSwiKwoJCQkJCQkgICAiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJtc3N5c19sYXN0bmFtZSBbdHlwZT0ndGVsJ10iKS52YWwoKTsKCQkJCWlmIChtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJtc3N5c19sYXN0bmFtZSIpLmlzKCI6dmlzaWJsZSIpICYmICh0bXBfaW5wdXRfdmFsID09ICcnIHx8IHRtcF9pbnB1dF92YWwgPT0gJzAwMDAtMDAtMDAnIHx8IHRtcF9pbnB1dF92YWwgPT0gJzAwMDAuMDAuMDAnKSkgewoJCQkJCQkJCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVybXNzeXNfbGFzdG5hbWUgLmVycm9yLWNvbnRhaW5lciIpLnNob3coKTsKCQkJCQkJCQkJCQoJCQkJCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI2NvbnRhaW5lcm1zc3lzX2xhc3RuYW1lIGlucHV0IikuYWRkQ2xhc3MoJ2Vycm9yLWZpZWxkJykuZm9jdXMoKTsKCQkJCQllcnJvciA9IHRydWU7CgkJCQl9CgkJCQkKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQoJCQkJdmFyIHRtcF9pbnB1dF92YWwgPSBtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJtc3N5c19maXJzdG5hbWUgaW5wdXRbdHlwZT0ndGV4dCddLCIrCgkJCQkJCSAgICIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI2NvbnRhaW5lcm1zc3lzX2ZpcnN0bmFtZSBbdHlwZT0nZW1haWwnXSwiKwoJCQkJCQkgICAiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJtc3N5c19maXJzdG5hbWUgW3R5cGU9J3VybCddLCIrCgkJCQkJCSAgICIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI2NvbnRhaW5lcm1zc3lzX2ZpcnN0bmFtZSBbdHlwZT0nbnVtYmVyJ10sIisKCQkJCQkJICAgIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVybXNzeXNfZmlyc3RuYW1lIFt0eXBlPSdwYXNzd29yZCddLCIrCgkJCQkJCSAgICIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI2NvbnRhaW5lcm1zc3lzX2ZpcnN0bmFtZSBbdHlwZT0ndGVsJ10iKS52YWwoKTsKCQkJCWlmIChtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJtc3N5c19maXJzdG5hbWUiKS5pcygiOnZpc2libGUiKSAmJiAodG1wX2lucHV0X3ZhbCA9PSAnJyB8fCB0bXBfaW5wdXRfdmFsID09ICcwMDAwLTAwLTAwJyB8fCB0bXBfaW5wdXRfdmFsID09ICcwMDAwLjAwLjAwJykpIHsKCQkJCQkJCQkJCW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI2NvbnRhaW5lcm1zc3lzX2ZpcnN0bmFtZSAuZXJyb3ItY29udGFpbmVyIikuc2hvdygpOwoJCQkJCQkJCQkJCgkJCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVybXNzeXNfZmlyc3RuYW1lIGlucHV0IikuYWRkQ2xhc3MoJ2Vycm9yLWZpZWxkJykuZm9jdXMoKTsKCQkJCQllcnJvciA9IHRydWU7CgkJCQl9CgkJCQkKCQkJCQkJCQkJCQkJCQkJCQkJCQkJCgkJCQl2YXIgcmVnZXhwID0gL14oWytdMzYpKDIwfDMwfDMxfDcwKShbMC05XXs3fSkkL2k7CgkJCQlpZiAobW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVybXNzeXNfbW9iaWxlIikuaXMoIjp2aXNpYmxlIikgJiYgbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVybXNzeXNfbW9iaWxlIGlucHV0W25hbWU9J21zc3lzX21vYmlsZSddIikudmFsKCkgPT0gJycgfHwgKG1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI2NvbnRhaW5lcm1zc3lzX21vYmlsZSBpbnB1dFtuYW1lPSdtc3N5c19tb2JpbGUnXSIpLnZhbCgpICE9ICcnICYmICFyZWdleHAudGVzdChtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJtc3N5c19tb2JpbGUgaW5wdXRbbmFtZT0nbXNzeXNfbW9iaWxlJ10iKS52YWwoKSkpKSB7CiAgICAgICAgICAgICAgICAgICAgCQkJCQltbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJtc3N5c19tb2JpbGUgaW5wdXRbbmFtZT0nbXNzeXNfbW9iaWxlJ10iKS5hZGRDbGFzcygnZXJyb3ItZmllbGQnKS5mb2N1cygpOwoJCQkJCQkJCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVybXNzeXNfbW9iaWxlIC5lcnJvci1jb250YWluZXIiKS5zaG93KCk7CiAgICAgICAgICAgICAgICAgICAgCgkJCQkJZXJyb3IgPSB0cnVlOwoJCQkJfQoJCQkJCiAgICAgICAgICAgIAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkKCQkJCWlmIChtbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwICNjb250YWluZXJhc3pmX2VzX2FkYXR2ZWRlbG1pIikuaXMoIjp2aXNpYmxlIikgJiYgIW1talF1ZXJ5KCIjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgI2NvbnRhaW5lcmFzemZfZXNfYWRhdHZlZGVsbWkgaW5wdXRbdHlwZT0nY2hlY2tib3gnXSIpLnByb3AoJ2NoZWNrZWQnKSkgewoJCQkJICAgIAkJCQkgICAgbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVyYXN6Zl9lc19hZGF0dmVkZWxtaSAuZXJyb3ItY29udGFpbmVyIikuc2hvdygpOwoJCQkJCQkJCQkJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAjY29udGFpbmVyYXN6Zl9lc19hZGF0dmVkZWxtaSBpbnB1dFt0eXBlPSdjaGVja2JveCddOmZpcnN0IikuZm9jdXMoKTsKICAgICAgICAgICAgICAgICAgICAKCQkJCQllcnJvciA9IHRydWU7CgkJCQl9CgkJCQkKCQkJCQkJCQkJCQkJCQkJCQkJc2V0SGVpZ2h0KDApOwoKCQlpZiAoZXJyb3IpIHsKCQkJc3VibWl0UHJvZ3Jlc3MgPSBmYWxzZTsKCQkJLyptbWpRdWVyeSgiaW5wdXRbbmFtZT0nZm9ybV9zdWJtaXQnXSIpLnJlbW92ZUF0dHIoImRpc2FibGVkIik7Ki8KICAgICAgICAgICAgbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAuc3VibWl0YnV0dG9uIikucmVtb3ZlQ2xhc3MoJ21tLXN1Ym1pdC1kaXNhYmxlZCcpOwoJCQlpZiAobW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAuc3VibWl0YnV0dG9uIGltZyIpLmxlbmd0aCA9PSAwKSB7CgkJCQltbWpRdWVyeSgiI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwIC5zdWJtaXRidXR0b24iKS5odG1sKCJKRUxFTlRLRVpFTSEiKTsKCQkJfQoJCQlyZXR1cm4gZmFsc2U7CgkJfSBlbHNlIHsKCQkJLyptbWpRdWVyeSgiaW5wdXRbbmFtZT0nZm9ybV9zdWJtaXQnXSIpLnJlbW92ZUF0dHIoImRpc2FibGVkIik7Ki8KCQkJCgkJCQkJCW1lc3NhZ2luZy5wb3N0TWVzc2FnZSh7c2V0bW1jb29raWU6MX0sIHBhcmVudF91cmwsIHBhcmVudCApOwoJCQlyZXR1cm4gdHJ1ZTsKCQl9Cgl9KTsKCgkgCgkJICAgIAkJICAgIAkJICAgIAkJICAgIAkJICAgIAkJICAgIAkJICAgIAkJICAgIAkJICAgIAkJICAgIAkKCWlmIChkb2N1bWVudC5jaGFyc2V0ICE9IHVuZGVmaW5lZCkgewoJCW1talF1ZXJ5KCcjbXNzeXMtY2hhcmFjdGVyLWVuY29kaW5nJykudmFsKGRvY3VtZW50LmNoYXJzZXQpOwoJfSBlbHNlIGlmIChkb2N1bWVudC5jaGFyYWN0ZXJTZXQgIT0gJycpIHsKCQltbWpRdWVyeSgnI21zc3lzLWNoYXJhY3Rlci1lbmNvZGluZycpLnZhbChkb2N1bWVudC5jaGFyYWN0ZXJTZXQpOwoJfQoJbW1qUXVlcnkoIiNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCAucHJvZHF0eSwjbW1mb3JtLWNvbnRhaW5lcjE1MzU5ODQ3OTAgLnNoaXBwaW5nbWV0aG9kcmFkaW8sI21tZm9ybS1jb250YWluZXIxNTM1OTg0NzkwIC5wcm9kY2hrLCNtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCBpbnB1dFtuYW1lPSdwcm9kX2lkJ10iKS50cmlnZ2VyKCdjaGFuZ2UnKTsKCXNldEhlaWdodCgwKTtzZXRUaW1lb3V0KGZ1bmN0aW9uKCl7c2V0SGVpZ2h0KDApfSwxMDAwKTsKCQltbVV0aWxpdHkuc2F2ZVV0bVBhcmFtcygpOwoKCQoJfSk7Cm1talF1ZXJ5LmdldERvY0hlaWdodCA9IGZ1bmN0aW9uKCl7CiAgICByZXR1cm4gTWF0aC5tYXgoCiAgICAgICAgbW1qUXVlcnkoZG9jdW1lbnQpLmhlaWdodCgpLAogICAgICAgIG1talF1ZXJ5KHdpbmRvdykuaGVpZ2h0KCksCiAgICAgICAgLyogRm9yIG9wZXJhOiAqLwogICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQKICAgICk7Cn07CgpmdW5jdGlvbiBtbU51bWJlckZvcm1hdChudW1iZXIsIGRlY2ltYWxzLCBkZWNfcG9pbnQsIHRob3VzYW5kc19zZXApIHsKCiAgICB2YXIgbiA9IG51bWJlciwgYyA9IGlzTmFOKGRlY2ltYWxzID0gTWF0aC5hYnMoZGVjaW1hbHMpKSA/IDIgOiBkZWNpbWFsczsKCXZhciBkID0gZGVjX3BvaW50ID09IHVuZGVmaW5lZCA/ICIsIiA6IGRlY19wb2ludDsKCXZhciB0ID0gdGhvdXNhbmRzX3NlcCA9PSB1bmRlZmluZWQgPyAiLiIgOiB0aG91c2FuZHNfc2VwLCBzID0gbiA8IDAgPyAiLSIgOiAiIjsKCXZhciBpID0gcGFyc2VJbnQobiA9IE1hdGguYWJzKCtuIHx8IDApLnRvRml4ZWQoYykpICsgIiIsIGogPSAoaiA9IGkubGVuZ3RoKSA+IDMgPyBqICUgMyA6IDA7CgoJcmV0dXJuIHMgKyAoaiA/IGkuc3Vic3RyKDAsIGopICsgdCA6ICIiKSArIGkuc3Vic3RyKGopLnJlcGxhY2UoLyhcZHszfSkoPz1cZCkvZywgIiQxIiArIHQpICsgKGMgPyBkICsgTWF0aC5hYnMobiAtIGkpLnRvRml4ZWQoYykuc2xpY2UoMikgOiAiIik7Cn0KCmZ1bmN0aW9uIGlzTnVtYmVyKG4pIHsKICByZXR1cm4gIWlzTmFOKHBhcnNlRmxvYXQobikpICYmIGlzRmluaXRlKG4pOwp9CgoKPC9zY3JpcHQ+Cjxmb3JtIGFjdGlvbj0iaHR0cDovL3N3Lm1hcmtldGluZ3N6b2Z0dmVyZWsuaHUvdC9zdWIiIG1ldGhvZD0icG9zdCIgZW5jdHlwZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSIgaWQ9Im1zc3lzZm9ybTE1NzkwOTE1MzU5ODQ3OTAiIGNsYXNzPSJtc3N5c2Zvcm0gbXNzeXNuc2lkMTU3OTA5IiB0YXJnZXQ9Il9zZWxmIj4KPGlucHV0IG5hbWU9Im5sX2lkIiB0eXBlPSJoaWRkZW4iIHZhbHVlPSI4NTIxNyI+CjxpbnB1dCBuYW1lPSJuc19pZCIgdHlwZT0iaGlkZGVuIiB2YWx1ZT0iMTU3OTA5Ij4KCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImNoYXJhY3Rlci1lbmNvZGluZyIgaWQ9Im1zc3lzLWNoYXJhY3Rlci1lbmNvZGluZyIgdmFsdWU9IiI+Cgo8ZGl2IGlkPSJtbWZvcm0tY29udGFpbmVyMTUzNTk4NDc5MCIgY2xhc3M9Im1tZm9ybS1jb250YWluZXIiPgoJPGZpZWxkc2V0IGNsYXNzPSJ0aXRsZXBhcnQiPgoJCTxoMj5KRUxFTlRLRVrDiVNJIMWwUkxBUDwvaDI+CgkJPGRpdiBjbGFzcz0iZm9ybS1kZXNjIj48L2Rpdj4KCTwvZmllbGRzZXQ+Cgk8ZmllbGRzZXQgY2xhc3M9ImRhdGFmaWVsZHMiPgoJCTxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9Im1zc3lzX3N1Ym1pdF9wYXJhbXMiIHZhbHVlPSIiIC8+CgoKCjxkaXYgaWQ9ImNvbnRhaW5lcm1zc3lzX2xhc3RuYW1lIiBjbGFzcz0iZm9ybXJvd2NvbnRhaW5lciI+CgkJCQkJCTxsYWJlbCBjbGFzcz0iZm9ybWxhYmVsIiA+VmV6ZXTDqWtuw6l2PC9sYWJlbD4KCQk8ZGl2IGNsYXNzPSJmaWVsZGNvbnRhaW5lciI+CgkJCQk8aW5wdXQgaWQ9Im1zc3lzX2xhc3RuYW1lIiBuYW1lPSJtc3N5c19sYXN0bmFtZSIgdHlwZT0idGV4dCIgdmFsdWU9IiI+CiAgICAJCTwvZGl2PgoJPGRpdiBzdHlsZT0iY2xlYXI6IGJvdGg7Ij48L2Rpdj4KCQkJPGRpdiBjbGFzcz0iZXJyb3ItY29udGFpbmVyIj5Lw6lyasO8aywgZXp0IGEgbWV6xZF0IGlzIGxlZ3llbiBzesOtdmVzIGtpdMO2bHRlbmkhPC9kaXY+CgkJCTwvZGl2Pgo8ZGl2IHN0eWxlPSJjbGVhcjogYm90aDsiPjwvZGl2Pgo8ZGl2IGlkPSJjb250YWluZXJhZGRyZXNzXzE1MzU5ODQ0NjUiIGNsYXNzPSJmb3Jtcm93Y29udGFpbmVyIG1lem84NjQxODkiPgoJCQkJCQk8bGFiZWwgY2xhc3M9ImZvcm1sYWJlbCIgPkFkZHJlc3M8L2xhYmVsPgoJCTxkaXYgY2xhc3M9ImZpZWxkY29udGFpbmVyIj4KCQkJCTxpbnB1dCBpZD0iYWRkcmVzc18xNTM1OTg0NDY1IiBuYW1lPSJhZGRyZXNzXzE1MzU5ODQ0NjUiIHR5cGU9InRleHQiIHZhbHVlPSIiPgogICAgCQk8L2Rpdj4KCTxkaXYgc3R5bGU9ImNsZWFyOiBib3RoOyI+PC9kaXY+CgkJCQk8L2Rpdj4KPGRpdiBzdHlsZT0iY2xlYXI6IGJvdGg7Ij48L2Rpdj4KPGRpdiBpZD0iY29udGFpbmVybXNzeXNfZmlyc3RuYW1lIiBjbGFzcz0iZm9ybXJvd2NvbnRhaW5lciI+CgkJCQkJCTxsYWJlbCBjbGFzcz0iZm9ybWxhYmVsIiA+S2VyZXN6dG7DqXY8L2xhYmVsPgoJCTxkaXYgY2xhc3M9ImZpZWxkY29udGFpbmVyIj4KCQkJCTxpbnB1dCBpZD0ibXNzeXNfZmlyc3RuYW1lIiBuYW1lPSJtc3N5c19maXJzdG5hbWUiIHR5cGU9InRleHQiIHZhbHVlPSIiPgogICAgCQk8L2Rpdj4KCTxkaXYgc3R5bGU9ImNsZWFyOiBib3RoOyI+PC9kaXY+CgkJCTxkaXYgY2xhc3M9ImVycm9yLWNvbnRhaW5lciI+S8OpcmrDvGssIGV6dCBhIG1lesWRdCBpcyBsZWd5ZW4gc3rDrXZlcyBraXTDtmx0ZW5pITwvZGl2PgoJCQk8L2Rpdj4KPGRpdiBzdHlsZT0iY2xlYXI6IGJvdGg7Ij48L2Rpdj4KPGRpdiBpZD0iY29udGFpbmVyZW1haWwiIGNsYXNzPSJmb3Jtcm93Y29udGFpbmVyIj4KCQkJCQkJPGxhYmVsIGNsYXNzPSJmb3JtbGFiZWwiID5FLW1haWw8L2xhYmVsPgoJCTxkaXYgY2xhc3M9ImZpZWxkY29udGFpbmVyIj4KCQkJCTxpbnB1dCBpZD0iZW1haWwiIG5hbWU9ImVtYWlsIiB0eXBlPSJlbWFpbCIgdmFsdWU9IiI+CgkJCTwvZGl2PgoJPGRpdiBzdHlsZT0iY2xlYXI6IGJvdGg7Ij48L2Rpdj4KCQkJPGRpdiBjbGFzcz0iZXJyb3ItY29udGFpbmVyIj5Lw6lyasO8aywgZXp0IGEgbWV6xZF0IGlzIGxlZ3llbiBzesOtdmVzIGtpdMO2bHRlbmkhPC9kaXY+CgkJCTwvZGl2Pgo8ZGl2IHN0eWxlPSJjbGVhcjogYm90aDsiPjwvZGl2Pgo8ZGl2IGlkPSJjb250YWluZXJtc3N5c19tb2JpbGUiIGNsYXNzPSJmb3Jtcm93Y29udGFpbmVyIj4KCQkJCQkJPGxhYmVsIGNsYXNzPSJmb3JtbGFiZWwiID5CZWxmw7ZsZGkgbW9iaWwgdGVsZWZvbnN6w6FtPC9sYWJlbD4KCQk8ZGl2IGNsYXNzPSJmaWVsZGNvbnRhaW5lciI+CgkJCQkJCTxpbnB1dCBpZD0ibXNzeXNfbW9iaWxlIiBuYW1lPSJtc3N5c19tb2JpbGUiIHR5cGU9InRlbCIgdmFsdWU9IiI+CgkJCQkJPC9kaXY+Cgk8ZGl2IHN0eWxlPSJjbGVhcjogYm90aDsiPjwvZGl2PgoJCQk8ZGl2IGNsYXNzPSJlcnJvci1jb250YWluZXIiPkvDqXJqw7xrLCBlenQgYSBtZXrFkXQgaXMgbGVneWVuIHN6w612ZXMga2l0w7ZsdGVuaSE8L2Rpdj4KCQkJPC9kaXY+CjxkaXYgc3R5bGU9ImNsZWFyOiBib3RoOyI+PC9kaXY+CjxkaXYgaWQ9ImNvbnRhaW5lcnRleHRib3gxNTM1OTg0MTQzNDgxIiBjbGFzcz0iZm9ybXJvd2NvbnRhaW5lciI+CgkJCQkJCTxwPjxzdHJvbmc+SmVsZW50a2V6w6lzIHTDoXJneWEgPC9zdHJvbmc+PC9wPgoKPHA+VsOhbGFzemQga2ksIGhvZ3kgbWVseWlrZXQgc3plcmV0bsOpZCE8L3A+CgoJCTxkaXYgY2xhc3M9ImZpZWxkY29udGFpbmVyIj4KCQkJCQkJCTwvZGl2PgoJPGRpdiBzdHlsZT0iY2xlYXI6IGJvdGg7Ij48L2Rpdj4KCQkJCTwvZGl2Pgo8ZGl2IHN0eWxlPSJjbGVhcjogYm90aDsiPjwvZGl2Pgo8ZGl2IGlkPSJjb250YWluZXJlbG96ZXRlc19rb256dWx0YWNpbyIgY2xhc3M9ImZvcm1yb3djb250YWluZXIiPgoJCQk8aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJlbG96ZXRlc19rb256dWx0YWNpbyIgbmFtZT0iZWxvemV0ZXNfa29uenVsdGFjaW8iICAgID4gPGxhYmVsIGZvcj0iZWxvemV0ZXNfa29uenVsdGFjaW8iIGNsYXNzPSJjaGVja2JveC1mb3JtbGFiZWwiIHN0eWxlPSJkaXNwbGF5OmlubGluZTsiPkVsxZF6ZXRlcyBrb256dWx0w6FjacOzPC9sYWJlbD4JPGRpdiBjbGFzcz0iZXJyb3ItY29udGFpbmVyIj5Lw6lyasO8aywgZXp0IGEgbWV6xZF0IGlzIGxlZ3llbiBzesOtdmVzIGtpdMO2bHRlbmkhPC9kaXY+CQk8L2Rpdj4KPGRpdiBzdHlsZT0iY2xlYXI6IGJvdGg7Ij48L2Rpdj4KPGRpdiBpZD0iY29udGFpbmVyaGVhZHNob3RfYWNhZGVteV9iZWlyYXRrb3phcyIgY2xhc3M9ImZvcm1yb3djb250YWluZXIiPgoJCQk8aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJoZWFkc2hvdF9hY2FkZW15X2JlaXJhdGtvemFzIiBuYW1lPSJoZWFkc2hvdF9hY2FkZW15X2JlaXJhdGtvemFzIiAgICA+IDxsYWJlbCBmb3I9ImhlYWRzaG90X2FjYWRlbXlfYmVpcmF0a296YXMiIGNsYXNzPSJjaGVja2JveC1mb3JtbGFiZWwiIHN0eWxlPSJkaXNwbGF5OmlubGluZTsiPkhlYWRzaG90IGFjYWRlbXkgYmVpcmF0a296w6FzPC9sYWJlbD4JPGRpdiBjbGFzcz0iZXJyb3ItY29udGFpbmVyIj5Lw6lyasO8aywgZXp0IGEgbWV6xZF0IGlzIGxlZ3llbiBzesOtdmVzIGtpdMO2bHRlbmkhPC9kaXY+CQk8L2Rpdj4KPGRpdiBzdHlsZT0iY2xlYXI6IGJvdGg7Ij48L2Rpdj4KPGRpdiBpZD0iY29udGFpbmVyYXN6Zl9lc19hZGF0dmVkZWxtaSIgY2xhc3M9ImZvcm1yb3djb250YWluZXIiPgoJCQk8aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJhc3pmX2VzX2FkYXR2ZWRlbG1pIiBuYW1lPSJhc3pmX2VzX2FkYXR2ZWRlbG1pIiAgICA+IDxsYWJlbCBmb3I9ImFzemZfZXNfYWRhdHZlZGVsbWkiIGNsYXNzPSJjaGVja2JveC1mb3JtbGFiZWwiIHN0eWxlPSJkaXNwbGF5OmlubGluZTsiPlR1ZG9tw6FzdWwgdmV0dGVtIMOpcyBlbGZvZ2Fkb20gYXogPGEgaHJlZj0iaHR0cDovL2hlYWRzaG90YWNhZGVteS5jb20vYXN6ZiIgdGFyZ2V0PSJibGFuayI+w4FTWkYtYmVuIMOpcyBheiBBZGF0dsOpZGVsbWkgdMOhasOpa296dGF0w7NiYW48L2E+IGxlw61ydGFrYXQuPC9sYWJlbD4JPGRpdiBjbGFzcz0iZXJyb3ItY29udGFpbmVyIj5Lw6lyasO8aywgZXp0IGEgbWV6xZF0IGlzIGxlZ3llbiBzesOtdmVzIGtpdMO2bHRlbmkhPC9kaXY+CQk8L2Rpdj4KPGRpdiBzdHlsZT0iY2xlYXI6IGJvdGg7Ij48L2Rpdj4KPGRpdiBpZD0iY29udGFpbmVyc3pvdmVnYmV2aXRlbGlfbWV6byIgY2xhc3M9ImZvcm1yb3djb250YWluZXIiPgoJCQkJCQk8bGFiZWwgY2xhc3M9ImZvcm1sYWJlbCIgPk1lZ2plZ3l6w6lzPC9sYWJlbD4KCQk8ZGl2IGNsYXNzPSJmaWVsZGNvbnRhaW5lciI+CgkJCQk8aW5wdXQgaWQ9InN6b3ZlZ2Jldml0ZWxpX21lem8iIG5hbWU9InN6b3ZlZ2Jldml0ZWxpX21lem8iIHR5cGU9InRleHQiIHZhbHVlPSIiPgogICAgCQk8L2Rpdj4KCTxkaXYgc3R5bGU9ImNsZWFyOiBib3RoOyI+PC9kaXY+CgkJCQk8L2Rpdj4KPGRpdiBzdHlsZT0iY2xlYXI6IGJvdGg7Ij48L2Rpdj4KCgoKCgoKCgo8c3R5bGU+CgouYmVsb3dzdWJtaXRjb250YWluZXItdXBzZWxsIHsKICAgIG1hcmdpbi1ib3R0b206MTVweDsKfQouYmVsb3ctc3VibWl0LWl0ZW0gewogICAgbWFyZ2luLXRvcDoxNXB4Owp9Ci5jaGVja2JveC1mb3JtbGFiZWwgPiBwIHsKCW1hcmdpbjowcHg7CiAgICBwYWRkaW5nOjBweDsKfQo8L3N0eWxlPgoJPC9maWVsZHNldD4KCTxmaWVsZHNldCBjbGFzcz0ic3VibWl0cGFydCI+CgkJPGRpdiBjbGFzcz0ic3VibWl0Y29udGFpbmVyIj4KCQkJPGJ1dHRvbiB0eXBlPSJidXR0b24iIGNsYXNzPSJzdWJtaXRidXR0b24iPkpFTEVOVEtFWkVNITwvYnV0dG9uPgoJCTwvZGl2Pgo8ZGl2IGNsYXNzPSJiZWxvd3N1Ym1pdGNvbnRhaW5lciI+PC9kaXY+Cgk8L2ZpZWxkc2V0Pgo8L2Rpdj4KPC9mb3JtPgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgogICBtbWpRdWVyeShkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKSB7CiAgICAgICAgbW1qUXVlcnkoJy5mb3Jtcm93Y29udGFpbmVyJykuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIHBsYWNlSG9sZGVyID0gbW1qUXVlcnkodGhpcykuY2hpbGRyZW4oJ2xhYmVsJykudGV4dCgpOwogICAgICAgICAgICBpZiAocGxhY2VIb2xkZXIgIT0gJycpIHsKICAgICAgICAgICAgICAgIGlmICgobW1qUXVlcnkodGhpcykuZmluZCgnaW5wdXRbdHlwZT0idGV4dCJdJykucHJvcCgnY2xhc3MnKSAhPSAnZGF0ZScpICYmIChtbWpRdWVyeSh0aGlzKS5maW5kKCdpbnB1dFt0eXBlPSJ0ZXh0Il0nKS5wcm9wKCdjbGFzcycpICE9ICd0aW1lJykpIHsKICAgICAgICAgICAgICAgICAgICBtbWpRdWVyeSh0aGlzKS5maW5kKCdpbnB1dFt0eXBlPSJ0ZXh0Il0nKS5wcm9wKCdwbGFjZWhvbGRlcicsIHBsYWNlSG9sZGVyKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgbW1qUXVlcnkodGhpcykuZmluZCgnaW5wdXRbdHlwZT0iZW1haWwiXScpLnByb3AoJ3BsYWNlaG9sZGVyJywgcGxhY2VIb2xkZXIpOwogICAgICAgICAgICAgICAgbW1qUXVlcnkodGhpcykuZmluZCgnaW5wdXRbdHlwZT0idGVsIl0nKS5wcm9wKCdwbGFjZWhvbGRlcicsIHBsYWNlSG9sZGVyKTsKICAgICAgICAgICAgICAgIG1talF1ZXJ5KHRoaXMpLmZpbmQoJ2lucHV0W3R5cGU9InVybCJdJykucHJvcCgncGxhY2Vob2xkZXInLCBwbGFjZUhvbGRlcik7CgogICAgICAgICAgICAgICAgaWYgKG1talF1ZXJ5KHRoaXMpLnBhcmVudHMoIiNicmFpbnRyZWUtcGF5bWVudGluZm8tY29udGFpbmVyIikubGVuZ3RoID09IDAgJiYgbW1qUXVlcnkodGhpcykuZmluZCgnaW5wdXQnKS5wcm9wKCd0eXBlJykgIT0gJ2NoZWNrYm94JyAmJiBtbWpRdWVyeSh0aGlzKS5maW5kKCdpbnB1dCcpLnByb3AoJ3R5cGUnKSAhPSAncmFkaW8nICYmIG1talF1ZXJ5KHRoaXMpLmZpbmQoJ2lucHV0JykucHJvcCgnY2xhc3MnKSAhPSAnZGF0ZScgJiYgbW1qUXVlcnkodGhpcykuZmluZCgnaW5wdXQnKS5wcm9wKCdjbGFzcycpICE9ICd0aW1lJyAmJiBtbWpRdWVyeSh0aGlzKS5maW5kKCdzZWxlY3QnKS5sZW5ndGggPT0gMCAmJiBtbWpRdWVyeSh0aGlzKS5maW5kKCdpbnB1dCcpLnByb3AoJ3R5cGUnKSAhPSAnZmlsZScgJiYgbW1qUXVlcnkodGhpcykuZmluZCgndGV4dGFyZWEnKS5sZW5ndGggPT0gMCkgewogICAgICAgICAgICAgICAgICAgIG1talF1ZXJ5KHRoaXMpLmNoaWxkcmVuKCdsYWJlbCcpLnJlbW92ZSgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfSk7IAoKICAgICAgICBmdW5jdGlvbiBzZXRSYWRpb0J1dHRvbih0eXBlLHNlbGVjdG9yKSB7ICAgICAgICAgICAgCiAgICAgICAgICAgIGlmICh0eXBlID09ICdpbnRlcmFjdCcpIHsKICAgICAgICAgICAgICAgIHZhciBtbV9pbnB1dF9uYW1lID0gbW1qUXVlcnkoc2VsZWN0b3IpLmF0dHIoIm5hbWUiKTsKICAgICAgICAgICAgICAgIHZhciBtbV9pbnB1dF9pZCA9IG1talF1ZXJ5KHNlbGVjdG9yKS5hdHRyKCJpZCIpOwogICAgICAgICAgICAgICAgbW1qUXVlcnkoJ2lucHV0W25hbWU9IicgKyBtbV9pbnB1dF9uYW1lICsgJyJdJykuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICBtbWpRdWVyeSgnbGFiZWxbZm9yPSInICsgbW1qUXVlcnkodGhpcykuYXR0cigiaWQiKSArICciXScpLmFkZENsYXNzKCdyYWRpby1sYWJlbCcpLnJlbW92ZUNsYXNzKCdyYWRpby1zZWxlY3RlZCcpOwogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICBpZiAobW1qUXVlcnkoc2VsZWN0b3IpLnByb3AoJ2NoZWNrZWQnKSkgewogICAgICAgICAgICAgICAgICAgIG1talF1ZXJ5KCdsYWJlbFtmb3I9IicgKyBtbV9pbnB1dF9pZCArICciXScpLmFkZENsYXNzKCdyYWRpby1zZWxlY3RlZCcpLnJlbW92ZUNsYXNzKCdyYWRpby1sYWJlbCcpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKG1talF1ZXJ5KHNlbGVjdG9yKS5wcm9wKCduYW1lJykgPT09ICdzaGlwcGluZ19tZXRob2QnIHx8IG1talF1ZXJ5KHNlbGVjdG9yKS5wcm9wKCduYW1lJykgPT09ICdvbmxpbmVfcGF5bWVudF9tZXRob2QnKSB7CiAgICAgICAgICAgICAgICAgICAgbW1qUXVlcnkoJ2lucHV0W3R5cGU9InJhZGlvIl06Y2hlY2tlZCcpLm5leHQoJ2xhYmVsJykuYWRkQ2xhc3MoJ3JhZGlvLXNlbGVjdGVkJykucmVtb3ZlQ2xhc3MoJ3JhZGlvLWxhYmVsJyk7CiAgICAgICAgICAgICAgICAgICAgbW1qUXVlcnkoJ2lucHV0W3R5cGU9InJhZGlvIl06bm90KDpjaGVja2VkKScpLm5leHQoJ2xhYmVsJykuYWRkQ2xhc3MoJ3JhZGlvLWxhYmVsJykucmVtb3ZlQ2xhc3MoJ3JhZGlvLXNlbGVjdGVkJyk7IAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgbW1qUXVlcnkoJ2lucHV0W3R5cGU9InJhZGlvIl06Y2hlY2tlZCcpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgbW1qUXVlcnkoJ2xhYmVsW2Zvcj0iJyArIG1talF1ZXJ5KHRoaXMpLmF0dHIoImlkIikgKyAnIl0nKS5hZGRDbGFzcygncmFkaW8tc2VsZWN0ZWQnKS5yZW1vdmVDbGFzcygncmFkaW8tbGFiZWwnKTsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgbW1qUXVlcnkoJ2lucHV0W3R5cGU9InJhZGlvIl06bm90KDpjaGVja2VkKScpLmVhY2goZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgbW1qUXVlcnkoJ2xhYmVsW2Zvcj0iJyArIG1talF1ZXJ5KHRoaXMpLmF0dHIoImlkIikgKyAnIl0nKS5hZGRDbGFzcygncmFkaW8tbGFiZWwnKS5yZW1vdmVDbGFzcygncmFkaW8tc2VsZWN0ZWQnKTsKICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBzZXRDaGVja2JveCh0eXBlLHNlbGVjdG9yKSB7CiAgICAgICAgICAgIGlmICh0eXBlID09ICdpbnRlcmFjdCcpIHsKICAgICAgICAgICAgICAgIHZhciBjaGVja2JveFNlbGVjdG9yID0gbW1qUXVlcnkoc2VsZWN0b3IpLnByb3AoJ2lkJyk7CiAgICAgICAgICAgICAgICBpZiAobW1qUXVlcnkoc2VsZWN0b3IpLmlzKCc6Y2hlY2tlZCcpKSB7CiAgICAgICAgICAgICAgICAgICAgbW1qUXVlcnkoJ2xhYmVsLmNoZWNrYm94LWZvcm1sYWJlbFtmb3I9JyArIGNoZWNrYm94U2VsZWN0b3IgKyAnXScpLmFkZENsYXNzKCdjaGVja2JveC1jaGVja2VkJyk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIG1talF1ZXJ5KCdsYWJlbC5jaGVja2JveC1jaGVja2VkW2Zvcj0nICsgY2hlY2tib3hTZWxlY3RvciArICddJykucmVtb3ZlQ2xhc3MoJ2NoZWNrYm94LWNoZWNrZWQnKS5hZGRDbGFzcygnY2hlY2tib3gtZm9ybWxhYmVsJyk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAKICAgICAgICAgICAgICAgIHZhciBjaGVja2JveFNlbGVjdG9yID0gbW1qUXVlcnkoc2VsZWN0b3IpLnByb3AoJ2lkJyk7CiAgICAgICAgICAgICAgICBpZiAobW1qUXVlcnkoc2VsZWN0b3IpLmlzKCc6Y2hlY2tlZCcpKSB7CiAgICAgICAgICAgICAgICAgICAgbW1qUXVlcnkoJ2xhYmVsLmNoZWNrYm94LWZvcm1sYWJlbFtmb3I9JyArIGNoZWNrYm94U2VsZWN0b3IgKyAnXScpLmFkZENsYXNzKCdjaGVja2JveC1jaGVja2VkJyk7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIG1talF1ZXJ5KCdsYWJlbC5jaGVja2JveC1jaGVja2VkW2Zvcj0nICsgY2hlY2tib3hTZWxlY3RvciArICddJykucmVtb3ZlQ2xhc3MoJ2NoZWNrYm94LWNoZWNrZWQnKS5hZGRDbGFzcygnY2hlY2tib3gtZm9ybWxhYmVsJyk7CiAgICAgICAgICAgICAgICB9CiAgICAKICAgICAgICAgICAgICAgIG1talF1ZXJ5KCdpbnB1dFt0eXBlPSJjaGVja2JveCJdJykuZWFjaChmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICB2YXIgY2hlY2tib3hTZWxlY3RvciA9IG1talF1ZXJ5KHRoaXMpLnByb3AoJ2lkJyk7CiAgICAKICAgICAgICAgICAgICAgICAgICBpZiAobW1qUXVlcnkodGhpcykuaXMoJzpjaGVja2VkJykpIHsKICAgICAgICAgICAgICAgICAgICAgICAgbW1qUXVlcnkoJ2xhYmVsLmNoZWNrYm94LWZvcm1sYWJlbFtmb3I9JyArIGNoZWNrYm94U2VsZWN0b3IgKyAnXScpLmFkZENsYXNzKCdjaGVja2JveC1jaGVja2VkJyk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICBtbWpRdWVyeSgnbGFiZWwuY2hlY2tib3gtY2hlY2tlZFtmb3I9JyArIGNoZWNrYm94U2VsZWN0b3IgKyAnXScpLnJlbW92ZUNsYXNzKCdjaGVja2JveC1jaGVja2VkJykuYWRkQ2xhc3MoJ2NoZWNrYm94LWZvcm1sYWJlbCcpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIG1talF1ZXJ5KCdpbnB1dFt0eXBlPSJyYWRpbyJdJykuY2hhbmdlKGZ1bmN0aW9uKCkgewogICAgICAgICAgICBzZXRSYWRpb0J1dHRvbignaW50ZXJhY3QnLG1talF1ZXJ5KHRoaXMpKTsKICAgICAgICB9KTsgLyogU2V0IHJhZGlvIGJ1dHRvbnMgKi8KICAgICAKICAgICAgICBtbWpRdWVyeSgnaW5wdXRbdHlwZT0iY2hlY2tib3giXScpLmNoYW5nZShmdW5jdGlvbigpIHsKICAgICAgICAgICAgc2V0Q2hlY2tib3goJ2ludGVyYWN0JyxtbWpRdWVyeSh0aGlzKSk7CiAgICAgICAgfSk7IC8qIFNldCBjaGVja2JveGVzICovCgogICAgICAgIHNldFJhZGlvQnV0dG9uKCdpbml0aWFsJyk7CiAgICAgICAgc2V0Q2hlY2tib3goJ2luaXRpYWwnKTsKCiAgICAgICAgaWYgKG1talF1ZXJ5KCIucG9zdGFsc2FtZWNoayIpLmlzKCI6Y2hlY2tlZCIpKSB7CiAgICAgICAgICAgICBtbWpRdWVyeSgnbGFiZWwuY2hlY2tib3gtZm9ybWxhYmVsW2Zvcj0nICsgbW1qUXVlcnkoIi5wb3N0YWxzYW1lY2hrIikucHJvcCgnaWQnKSArICddJykuYWRkQ2xhc3MoJ2NoZWNrYm94LWNoZWNrZWQnKTsKICAgICAgICB9CiAgICAgICAgaWYgKG1talF1ZXJ5KCIuYmlsbHNhbWVjaGsiKS5pcygiOmNoZWNrZWQiKSkgewogICAgICAgICAgICAgbW1qUXVlcnkoJ2xhYmVsLmNoZWNrYm94LWZvcm1sYWJlbFtmb3I9JyArIG1talF1ZXJ5KCIuYmlsbHNhbWVjaGsiKS5wcm9wKCdpZCcpICsgJ10nKS5hZGRDbGFzcygnY2hlY2tib3gtY2hlY2tlZCcpOwogICAgICAgIH0KCiAgICB9KTsKCjwvc2NyaXB0Pg==[/fusion_code][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container]