{"id":352,"date":"2026-03-17T15:22:08","date_gmt":"2026-03-17T12:22:08","guid":{"rendered":"https:\/\/roke.cc\/?page_id=352"},"modified":"2026-03-31T16:50:11","modified_gmt":"2026-03-31T13:50:11","slug":"newsletter","status":"publish","type":"page","link":"https:\/\/roke.cc\/en\/newsletter\/","title":{"rendered":"Newsletter"},"content":{"rendered":"[vc_row type=&#8221;in_container&#8221; full_screen_row_position=&#8221;middle&#8221; column_margin=&#8221;default&#8221; column_direction=&#8221;default&#8221; column_direction_tablet=&#8221;default&#8221; column_direction_phone=&#8221;default&#8221; scene_position=&#8221;center&#8221; bottom_padding=&#8221;50&#8243; text_color=&#8221;dark&#8221; text_align=&#8221;left&#8221; row_border_radius=&#8221;none&#8221; row_border_radius_applies=&#8221;bg&#8221; row_position_desktop=&#8221;default&#8221; row_position_tablet=&#8221;inherit&#8221; row_position_phone=&#8221;inherit&#8221; overflow=&#8221;visible&#8221; overlay_strength=&#8221;0.3&#8243; gradient_direction=&#8221;left_to_right&#8221; shape_divider_position=&#8221;bottom&#8221; bg_image_animation=&#8221;none&#8221; gradient_type=&#8221;default&#8221; shape_type=&#8221;&#8221;][vc_column column_padding=&#8221;no-extra-padding&#8221; column_padding_tablet=&#8221;inherit&#8221; column_padding_phone=&#8221;inherit&#8221; column_padding_position=&#8221;all&#8221; column_element_direction_desktop=&#8221;horizontal&#8221; column_element_alignment=&#8221;center&#8221; column_element_spacing=&#8221;default&#8221; desktop_text_alignment=&#8221;default&#8221; tablet_text_alignment=&#8221;default&#8221; phone_text_alignment=&#8221;default&#8221; background_color_opacity=&#8221;1&#8243; background_hover_color_opacity=&#8221;1&#8243; column_backdrop_filter=&#8221;none&#8221; column_shadow=&#8221;none&#8221; column_border_radius=&#8221;none&#8221; column_link_target=&#8221;_self&#8221; column_position=&#8221;default&#8221; gradient_direction=&#8221;left_to_right&#8221; overlay_strength=&#8221;0.3&#8243; width=&#8221;2\/3&#8243; tablet_width_inherit=&#8221;default&#8221; animation_type=&#8221;default&#8221; bg_image_animation=&#8221;none&#8221; border_type=&#8221;simple&#8221; column_border_width=&#8221;none&#8221; column_border_style=&#8221;solid&#8221; column_padding_type=&#8221;default&#8221; content_layout=&#8221;default&#8221; gradient_type=&#8221;default&#8221;][vc_raw_html css=&#8221;&#8221;]PGRpdiBpZD0ibWNfZW1iZWRfc2hlbGwiPgogICAgICA8bGluayBocmVmPSIvL2Nkbi1pbWFnZXMubWFpbGNoaW1wLmNvbS9lbWJlZGNvZGUvY2xhc3NpYy0wNjE1MjMuY3NzIiByZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIj4KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgogICAgICAgICNtY19lbWJlZF9zaWdudXB7YmFja2dyb3VuZDojZmZmOyBmYWxzZTtjbGVhcjpsZWZ0OyBmb250OjE0cHggSGVsdmV0aWNhLEFyaWFsLHNhbnMtc2VyaWY7IHdpZHRoOiA4MDBweDt9CiAgICAgICAgLyogQWRkIHlvdXIgb3duIE1haWxjaGltcCBmb3JtIHN0eWxlIG92ZXJyaWRlcyBpbiB5b3VyIHNpdGUgc3R5bGVzaGVldCBvciBpbiB0aGlzIHN0eWxlIGJsb2NrLgogICAgICAgICAgIFdlIHJlY29tbWVuZCBtb3ZpbmcgdGhpcyBibG9jayBhbmQgdGhlIHByZWNlZGluZyBDU1MgbGluayB0byB0aGUgSEVBRCBvZiB5b3VyIEhUTUwgZmlsZS4gKi8KPC9zdHlsZT48c3R5bGUgdHlwZT0idGV4dC9jc3MiPgogICAgICAgICNtYy1lbWJlZGRlZC1zdWJzY3JpYmUtZm9ybSBpbnB1dFt0eXBlPWNoZWNrYm94XXtkaXNwbGF5OiBpbmxpbmU7IHdpZHRoOiBhdXRvO21hcmdpbi1yaWdodDogMTBweDt9CiNtZXJnZVJvdy1nZHByIHttYXJnaW4tdG9wOiAyMHB4O30KI21lcmdlUm93LWdkcHIgZmllbGRzZXQgbGFiZWwge2ZvbnQtd2VpZ2h0OiBub3JtYWw7fQojbWMtZW1iZWRkZWQtc3Vic2NyaWJlLWZvcm0gLm1jX2ZpZWxkc2V0e2JvcmRlcjpub25lO21pbi1oZWlnaHQ6IDBweDtwYWRkaW5nLWJvdHRvbTowcHg7fQo8L3N0eWxlPgo8ZGl2IGlkPSJtY19lbWJlZF9zaWdudXAiPgogICAgPGZvcm0gYWN0aW9uPSJodHRwczovL3Jva2UudXMxNy5saXN0LW1hbmFnZS5jb20vc3Vic2NyaWJlL3Bvc3Q\/dT1kYTg5ZTkzNDc3NTU4MjFjMTRlNWM3MmRkJmFtcDtpZD1mMTRlOTBlMDQwJmFtcDt2X2lkPTYmYW1wO2ZfaWQ9MDBkM2MzZTFmMCIgbWV0aG9kPSJwb3N0IiBpZD0ibWMtZW1iZWRkZWQtc3Vic2NyaWJlLWZvcm0iIG5hbWU9Im1jLWVtYmVkZGVkLXN1YnNjcmliZS1mb3JtIiBjbGFzcz0idmFsaWRhdGUiIHRhcmdldD0iX2JsYW5rIj4KICAgICAgICA8ZGl2IGlkPSJtY19lbWJlZF9zaWdudXBfc2Nyb2xsIj48aDI+U3Vic2NyaWJlPC9oMj4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iaW5kaWNhdGVzLXJlcXVpcmVkIj48c3BhbiBjbGFzcz0iYXN0ZXJpc2siPiogaTwvc3Bhbj5uZGljYXRlcyByZXF1aXJlZDwvZGl2PgogICAgICAgICAgICA8ZGl2IGNsYXNzPSJtYy1maWVsZC1ncm91cCI+PGxhYmVsIGZvcj0ibWNlLUVNQUlMIj5FbWFpbCBBZGRyZXNzPHNwYW4gY2xhc3M9ImFzdGVyaXNrIj4gKjwvc3Bhbj48L2xhYmVsPjxpbnB1dCB0eXBlPSJlbWFpbCIgbmFtZT0iRU1BSUwiIGNsYXNzPSJyZXF1aXJlZCBlbWFpbCIgaWQ9Im1jZS1FTUFJTCIgcmVxdWlyZWQ9IiIgdmFsdWU9IiI+PC9kaXY+PGRpdiBjbGFzcz0ibWMtZmllbGQtZ3JvdXAiPjxsYWJlbCBmb3I9Im1jZS1GTkFNRSI+Rmlyc3QgTmFtZSA8L2xhYmVsPjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJGTkFNRSIgY2xhc3M9IiB0ZXh0IiBpZD0ibWNlLUZOQU1FIiB2YWx1ZT0iIj48L2Rpdj48ZGl2IGNsYXNzPSJtYy1maWVsZC1ncm91cCI+PGxhYmVsIGZvcj0ibWNlLUxOQU1FIj5MYXN0IE5hbWUgPC9sYWJlbD48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iTE5BTUUiIGNsYXNzPSIgdGV4dCIgaWQ9Im1jZS1MTkFNRSIgdmFsdWU9IiI+PC9kaXY+PGRpdiBpZD0ibWVyZ2VSb3ctZ2RwciIgY2xhc3M9Im1lcmdlUm93IGdkcHItbWVyZ2VSb3cgY29udGVudF9fZ2RwckJsb2NrIG1jLWZpZWxkLWdyb3VwIj48ZGl2IGNsYXNzPSJjb250ZW50X19nZHByIj48bGFiZWw+TWFya2V0aW5nIHBlcm1pc3Npb25zPC9sYWJlbD48cD5QbGVhc2Ugc2VsZWN0IGFsbCB0aGUgd2F5cyB5b3Ugd291bGQgbGlrZSB0byBoZWFyIGZyb20gQXNvY2lhyJtpYSBDYW1lcmEgZGUgQ29tZXLImyBSb23Dom5pYS1LZW55YTwvcD48ZmllbGRzZXQgY2xhc3M9Im1jX2ZpZWxkc2V0IGdkcHJSZXF1aXJlZCBtYy1maWVsZC1ncm91cCIgbmFtZT0iaW50ZXJlc3Rncm91cF9maWVsZCI+PGxhYmVsIGNsYXNzPSJjaGVja2JveCBzdWJmaWVsZCIgZm9yPSJnZHByMzgiPjxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImdkcHJfMzgiIG5hbWU9ImdkcHJbMzhdIiBjbGFzcz0iZ2RwciIgdmFsdWU9IlkiPjxzcGFuPkVtYWlsPC9zcGFuPjwvbGFiZWw+PC9maWVsZHNldD48cD5Zb3UgY2FuIHVuc3Vic2NyaWJlIGF0IGFueSB0aW1lIGJ5IGNsaWNraW5nIHRoZSBsaW5rIGluIHRoZSBmb290ZXIgb2Ygb3VyIGVtYWlscy4gRm9yIGluZm9ybWF0aW9uIGFib3V0IG91ciBwcml2YWN5IHByYWN0aWNlcywgcGxlYXNlIHZpc2l0IG91ciB3ZWJzaXRlLiA8L3A+PC9kaXY+PGRpdiBjbGFzcz0iY29udGVudF9fZ2RwckxlZ2FsIj48cD5XZSB1c2UgTWFpbGNoaW1wIGFzIG91ciBtYXJrZXRpbmcgcGxhdGZvcm0uIEJ5IGNsaWNraW5nIGJlbG93IHRvIHN1YnNjcmliZSwgeW91IGFja25vd2xlZGdlIHRoYXQgeW91ciBpbmZvcm1hdGlvbiB3aWxsIGJlIHRyYW5zZmVycmVkIHRvIE1haWxjaGltcCBmb3IgcHJvY2Vzc2luZy4gPGEgaHJlZj0iaHR0cHM6Ly9tYWlsY2hpbXAuY29tL2xlZ2FsL3Rlcm1zIj5MZWFybiBtb3JlPC9hPiBhYm91dCBNYWlsY2hpbXAncyBwcml2YWN5IHByYWN0aWNlcy4gPC9wPjwvZGl2PjwvZGl2PgogICAgICAgIDxkaXYgaWQ9Im1jZS1yZXNwb25zZXMiIGNsYXNzPSJjbGVhciBmb290Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0icmVzcG9uc2UiIGlkPSJtY2UtZXJyb3ItcmVzcG9uc2UiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+PC9kaXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InJlc3BvbnNlIiBpZD0ibWNlLXN1Y2Nlc3MtcmVzcG9uc2UiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA8ZGl2IGFyaWEtaGlkZGVuPSJ0cnVlIiBzdHlsZT0icG9zaXRpb246IGFic29sdXRlOyBsZWZ0OiAtNTAwMHB4OyI+CiAvKiByZWFsIHBlb3BsZSBzaG91bGQgbm90IGZpbGwgdGhpcyBpbiBhbmQgZXhwZWN0IGdvb2QgdGhpbmdzIC0gZG8gbm90IHJlbW92ZSB0aGlzIG9yIHJpc2sgZm9ybSBib3Qgc2lnbnVwcyAqLwogICAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJiX2RhODllOTM0Nzc1NTgyMWMxNGU1YzcyZGRfZjE0ZTkwZTA0MCIgdGFiaW5kZXg9Ii0xIiB2YWx1ZT0iIj4KICAgIDwvZGl2PgogICAgICAgIDxkaXYgY2xhc3M9Im9wdGlvbmFsUGFyZW50Ij4KICAgICAgICAgICAgPGRpdiBjbGFzcz0iY2xlYXIgZm9vdCI+CiAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJzdWJzY3JpYmUiIGlkPSJtYy1lbWJlZGRlZC1zdWJzY3JpYmUiIGNsYXNzPSJidXR0b24iIHZhbHVlPSJTdWJzY3JpYmUiPgogICAgICAgICAgICAgICAgPHAgc3R5bGU9Im1hcmdpbjogMHB4IGF1dG87Ij48YSBocmVmPSJodHRwOi8vZWVwdXJsLmNvbS9qQ2FqWTYiIHRpdGxlPSJNYWlsY2hpbXAgLSBlbWFpbCBtYXJrZXRpbmcgbWFkZSBlYXN5IGFuZCBmdW4iPjxzcGFuIHN0eWxlPSJkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyBib3JkZXItcmFkaXVzOiA0cHg7Ij48aW1nIGNsYXNzPSJyZWZmZXJhbF9iYWRnZSIgc3JjPSJodHRwczovL2RpZ2l0YWxhc3NldC5pbnR1aXQuY29tL3JlbmRlci9jb250ZW50L2RhbS9pbnR1aXQvbWMtZmUvZW5fdXMvaW1hZ2VzL2ludHVpdC1tYy1yZXdhcmRzLXRleHQtZGFyay5zdmciIGFsdD0iSW50dWl0IE1haWxjaGltcCIgc3R5bGU9IndpZHRoOiAyMjBweDsgaGVpZ2h0OiA0MHB4OyBkaXNwbGF5OiBmbGV4OyBwYWRkaW5nOiAycHggMHB4OyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgYWxpZ24taXRlbXM6IGNlbnRlcjsiPjwvc3Bhbj48L2E+PC9wPgogICAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgIDwvZGl2Pgo8L2Zvcm0+CjwvZGl2Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSIvL3MzLmFtYXpvbmF3cy5jb20vZG93bmxvYWRzLm1haWxjaGltcC5jb20vanMvbWMtdmFsaWRhdGUuanMiPjwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4oZnVuY3Rpb24oJCkge3dpbmRvdy5mbmFtZXMgPSBuZXcgQXJyYXkoKTsgd2luZG93LmZ0eXBlcyA9IG5ldyBBcnJheSgpO2ZuYW1lc1swXT0nRU1BSUwnO2Z0eXBlc1swXT0nZW1haWwnO2ZuYW1lc1sxXT0nRk5BTUUnO2Z0eXBlc1sxXT0ndGV4dCc7Zm5hbWVzWzJdPSdMTkFNRSc7ZnR5cGVzWzJdPSd0ZXh0JztmbmFtZXNbM109J0FERFJFU1MnO2Z0eXBlc1szXT0nYWRkcmVzcyc7Zm5hbWVzWzRdPSdQSE9ORSc7ZnR5cGVzWzRdPSdwaG9uZSc7Zm5hbWVzWzVdPSdCSVJUSERBWSc7ZnR5cGVzWzVdPSdiaXJ0aGRheSc7Zm5hbWVzWzZdPSdDT01QQU5ZJztmdHlwZXNbNl09J3RleHQnOy8qCiAqIFRyYW5zbGF0ZWQgZGVmYXVsdCBtZXNzYWdlcyBmb3IgdGhlICQgdmFsaWRhdGlvbiBwbHVnaW4uCiAqIExvY2FsZTogUk8KICovCiQuZXh0ZW5kKCQudmFsaWRhdG9yLm1lc3NhZ2VzLCB7CiAgcmVxdWlyZWQ6ICJBY2VzdCBjw6JtcCBlc3RlIG9ibGlnYXRvcml1LiIsCiAgcmVtb3RlOiAiVGUgcnVnxINtIHPEgyBjb21wbGV0ZXppIGFjZXN0IGPDom1wLiIsCiAgZW1haWw6ICJUZSBydWfEg20gc8SDIGludHJvZHVjaSBvIGFkcmVzxIMgZGUgZW1haWwgdmFsaWTEgyIsCiAgdXJsOiAiVGUgcnVnxINtIHNhIGludHJvZHVjaSBvIGFkcmVzxIMgVVJMIHZhbGlkxIMuIiwKICBkYXRlOiAiVGUgcnVnxINtIHPEgyBpbnRyb2R1Y2kgbyBkYXTEgyBjb3JlY3TEgy4iLAogIGRhdGVJU086ICJUZSBydWfEg20gc8SDIGludHJvZHVjaSBvIGRhdMSDIChJU08pIGNvcmVjdMSDLiIsCiAgbnVtYmVyOiAiVGUgcnVnxINtIHPEgyBpbnRyb2R1Y2kgdW4gbnVtxINyIMOubnRyZWcgdmFsaWQuIiwKICBkaWdpdHM6ICJUZSBydWfEg20gc8SDIGludHJvZHVjaSBkb2FyIGNpZnJlLiIsCiAgY3JlZGl0Y2FyZDogIlRlIHJ1Z8SDbSBzxIMgaW50cm9kdWNpIHVuIG51bWFyIGRlIGNhcnRlIGRlIGNyZWRpdCB2YWxpZC4iLAogIGVxdWFsVG86ICJUZSBydWfEg20gc8SDIHJlaW50cm9kdWNpIHZhbG9hcmVhLiIsCiAgYWNjZXB0OiAiVGUgcnVnxINtIHPEgyBpbnRyb2R1Y2kgbyB2YWxvYXJlIGN1IG8gZXh0ZW5zaWUgdmFsaWTEgy4iLAogIG1heGxlbmd0aDogJC52YWxpZGF0b3IuZm9ybWF0KCJUZSBydWfEg20gc8SDIG51IGludHJvZHVjaSBtYWkgbXVsdCBkZSB7MH0gY2FyYWN0ZXJlLiIpLAogIG1pbmxlbmd0aDogJC52YWxpZGF0b3IuZm9ybWF0KCJUZSBydWfEg20gc8SDIGludHJvZHVjaSBjZWwgcHXIm2luIHswfSBjYXJhY3RlcmUuIiksCiAgcmFuZ2VsZW5ndGg6ICQudmFsaWRhdG9yLmZvcm1hdCgiVGUgcnVnxINtIHPEgyBpbnRyb2R1Y2kgbyB2YWxvYXJlIMOubnRyZSB7MH0gyJlpIHsxfSBjYXJhY3RlcmUuIiksCiAgcmFuZ2U6ICQudmFsaWRhdG9yLmZvcm1hdCgiVGUgcnVnxINtIHPEgyBpbnRyb2R1Y2kgbyB2YWxvYXJlIMOubnRyZSB7MH0gyJlpIHsxfS4iKSwKICBtYXg6ICQudmFsaWRhdG9yLmZvcm1hdCgiVGUgcnVnxINtIHPEgyBpbnRyb2R1Y2kgbyB2YWxvYXJlIGVnYWwgc2F1IG1haSBtaWPEgyBkZWPDonQgezB9LiIpLAogIG1pbjogJC52YWxpZGF0b3IuZm9ybWF0KCJUZSBydWfEg20gc8SDIGludHJvZHVjaSBvIHZhbG9hcmUgZWdhbCBzYXUgbWFpIG1hcmUgZGVjw6J0IHswfS4iKQp9KTt9KGpRdWVyeSkpO3ZhciAkbWNqID0galF1ZXJ5Lm5vQ29uZmxpY3QodHJ1ZSk7CiAgICAvLyBTTVMgUGhvbmUgTXVsdGktQ291bnRyeSBGdW5jdGlvbmFsaXR5CiAgICBpZighd2luZG93Lk1DKSB7CiAgICAgIHdpbmRvdy5NQyA9IHt9OwogICAgfQogICAgd2luZG93Lk1DLnNtc1Bob25lRGF0YSA9IHsKICAgICAgZGVmYXVsdENvdW50cnlDb2RlOiAnUk8nLAogICAgICBwcm9ncmFtczogW10sCiAgICAgIHNtc1Byb2dyYW1EYXRhQ291bnRyeU5hbWVzOiBbXQogICAgfTsKCiAgICBmdW5jdGlvbiBnZXRDb3VudHJ5VW5pY29kZUZsYWcoY291bnRyeUNvZGUpIHsKICAgICAgIHJldHVybiBjb3VudHJ5Q29kZS50b1VwcGVyQ2FzZSgpLnJlcGxhY2UoLy4vZywgKGNoYXIpID0+IFN0cmluZy5mcm9tQ29kZVBvaW50KGNoYXIuY2hhckNvZGVBdCgwKSArIDEyNzM5NykpCiAgICB9OwoKICAgIC8vIEhUTUwgc2FuaXRpemF0aW9uIGZ1bmN0aW9uIHRvIHByZXZlbnQgWFNTCiAgICBmdW5jdGlvbiBzYW5pdGl6ZUh0bWwoc3RyKSB7CiAgICAgIGlmICh0eXBlb2Ygc3RyICE9PSAnc3RyaW5nJykgcmV0dXJuICcnOwogICAgICByZXR1cm4gc3RyCiAgICAgICAgLnJlcGxhY2UoLyYvZywgJyYnKQogICAgICAgIC5yZXBsYWNlKC88L2csICcnKQogICAgICAgIC5yZXBsYWNlKC8+L2csICc+JykKICAgICAgICAucmVwbGFjZSgvIi9nLCAnIicpCiAgICAgICAgLnJlcGxhY2UoLycvZywgJycnKQogICAgICAgIC5yZXBsYWNlKC9cLy9nLCAnLycpOwogICAgfQoKICAgIC8vIFVSTCBzYW5pdGl6YXRpb24gZnVuY3Rpb24gdG8gcHJldmVudCBqYXZhc2NyaXB0OiBhbmQgZGF0YTogVVJMcwogICAgZnVuY3Rpb24gc2FuaXRpemVVcmwodXJsKSB7CiAgICAgIGlmICh0eXBlb2YgdXJsICE9PSAnc3RyaW5nJykgcmV0dXJuICcnOwogICAgICBjb25zdCB0cmltbWVkVXJsID0gdXJsLnRyaW0oKS50b0xvd2VyQ2FzZSgpOwogICAgICBpZiAodHJpbW1lZFVybC5zdGFydHNXaXRoKCdqYXZhc2NyaXB0OicpIHx8IHRyaW1tZWRVcmwuc3RhcnRzV2l0aCgnZGF0YTonKSB8fCB0cmltbWVkVXJsLnN0YXJ0c1dpdGgoJ3Zic2NyaXB0OicpKSB7CiAgICAgICAgcmV0dXJuICcjJzsKICAgICAgfQogICAgICByZXR1cm4gdXJsOwogICAgfQoKICAgIGNvbnN0IGdldEJyb3dzZXJMYW5ndWFnZSA9ICgpID0+IHsKICAgICAgaWYgKCF3aW5kb3c\/Lm5hdmlnYXRvcj8ubGFuZ3VhZ2U\/LnNwbGl0KCctJylbMV0pIHsKICAgICAgICByZXR1cm4gd2luZG93Py5uYXZpZ2F0b3I\/Lmxhbmd1YWdlPy50b1VwcGVyQ2FzZSgpOwogICAgICB9CiAgICAgIHJldHVybiB3aW5kb3c\/Lm5hdmlnYXRvcj8ubGFuZ3VhZ2U\/LnNwbGl0KCctJylbMV07CiAgICB9OwoKICAgIGZ1bmN0aW9uIGdldERlZmF1bHRDb3VudHJ5UHJvZ3JhbShkZWZhdWx0Q291bnRyeUNvZGUsIHNtc1Byb2dyYW1EYXRhKSB7CiAgICAgIGlmICghc21zUHJvZ3JhbURhdGEgfHwgc21zUHJvZ3JhbURhdGEubGVuZ3RoID09PSAwKSB7CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgIH0KCiAgICAgIGNvbnN0IGJyb3dzZXJMYW5ndWFnZSA9IGdldEJyb3dzZXJMYW5ndWFnZSgpOwoKICAgICAgaWYgKGJyb3dzZXJMYW5ndWFnZSkgewogICAgICAgIGNvbnN0IGZvdW5kUHJvZ3JhbSA9IHNtc1Byb2dyYW1EYXRhLmZpbmQoCiAgICAgICAgICAocHJvZ3JhbSkgPT4gcHJvZ3JhbT8uY291bnRyeUNvZGUgPT09IGJyb3dzZXJMYW5ndWFnZSwKICAgICAgICApOwogICAgICAgIGlmIChmb3VuZFByb2dyYW0pIHsKICAgICAgICAgIHJldHVybiBmb3VuZFByb2dyYW07CiAgICAgICAgfQogICAgICB9CgogICAgICBpZiAoZGVmYXVsdENvdW50cnlDb2RlKSB7CiAgICAgICAgY29uc3QgZm91bmRQcm9ncmFtID0gc21zUHJvZ3JhbURhdGEuZmluZCgKICAgICAgICAgIChwcm9ncmFtKSA9PiBwcm9ncmFtPy5jb3VudHJ5Q29kZSA9PT0gZGVmYXVsdENvdW50cnlDb2RlLAogICAgICAgICk7CiAgICAgICAgaWYgKGZvdW5kUHJvZ3JhbSkgewogICAgICAgICAgcmV0dXJuIGZvdW5kUHJvZ3JhbTsKICAgICAgICB9CiAgICAgIH0KCiAgICAgIHJldHVybiBzbXNQcm9ncmFtRGF0YVswXTsKICAgIH0KCiAgICBmdW5jdGlvbiB1cGRhdGVTbXNMZWdhbFRleHQoY291bnRyeUNvZGUsIGZpZWxkTmFtZSkgewogICAgICBpZiAoIWNvdW50cnlDb2RlIHx8ICFmaWVsZE5hbWUpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgCiAgICAgIGNvbnN0IHByb2dyYW1zID0gd2luZG93Py5NQz8uc21zUGhvbmVEYXRhPy5wcm9ncmFtczsKICAgICAgaWYgKCFwcm9ncmFtcyB8fCAhQXJyYXkuaXNBcnJheShwcm9ncmFtcykpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgCiAgICAgIGNvbnN0IHByb2dyYW0gPSBwcm9ncmFtcy5maW5kKHByb2dyYW0gPT4gcHJvZ3JhbT8uY291bnRyeUNvZGUgPT09IGNvdW50cnlDb2RlKTsKICAgICAgaWYgKCFwcm9ncmFtIHx8ICFwcm9ncmFtLnJlcXVpcmVkVGVtcGxhdGUpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgCiAgICAgIGNvbnN0IGxlZ2FsVGV4dEVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjbGVnYWwtdGV4dC0nICsgZmllbGROYW1lKTsKICAgICAgaWYgKCFsZWdhbFRleHRFbGVtZW50KSB7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIAogICAgICAvLyBSZW1vdmUgSFRNTCB0YWdzIGFuZCBjbGVhbiB1cCB0aGUgdGV4dAogICAgICBjb25zdCBkaXZSZWdleCA9IG5ldyBSZWdFeHAoJzwvP1tkaXZdW14+XSo+JywgJ2dpJyk7CiAgICAgIGNvbnN0IGZ1bGxBbmNob3JSZWdleCA9IG5ldyBSZWdFeHAoJzxhLio\/PC9hPicsICdnJyk7CiAgICAgIGNvbnN0IGFuY2hvclJlZ2V4ID0gbmV3IFJlZ0V4cCgnPGEgaHJlZj0iKC4qPykiIHRhcmdldD0iKC4qPykiPiguKj8pPC9hPicpOwogICAgICAKICAgICAgY29uc3QgdGVtcGxhdGUgPSBwcm9ncmFtLnJlcXVpcmVkVGVtcGxhdGUucmVwbGFjZShkaXZSZWdleCwgJycpOwogICAgICAKICAgICAgCgogICAgICBsZWdhbFRleHRFbGVtZW50LnRleHRDb250ZW50ID0gJyc7CiAgICAgIGNvbnN0IHBhcnRzID0gdGVtcGxhdGUuc3BsaXQoLyg8YSBocmVmPSIuKj8iIHRhcmdldD0iLio\/Ij4uKj88XC9hPikvZyk7CiAgICAgIHBhcnRzLmZvckVhY2goZnVuY3Rpb24ocGFydCkgewogICAgICAgIGlmICghcGFydCkgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBjb25zdCBhbmNob3JNYXRjaCA9IHBhcnQubWF0Y2goLzxhIGhyZWY9IiguKj8pIiB0YXJnZXQ9IiguKj8pIj4oLio\/KTxcL2E+Lyk7CiAgICAgICAgaWYgKGFuY2hvck1hdGNoKSB7CiAgICAgICAgICBjb25zdCBsaW5rRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTsKICAgICAgICAgIGxpbmtFbGVtZW50LmhyZWYgPSBzYW5pdGl6ZVVybChhbmNob3JNYXRjaFsxXSk7CiAgICAgICAgICBsaW5rRWxlbWVudC50YXJnZXQgPSBzYW5pdGl6ZUh0bWwoYW5jaG9yTWF0Y2hbMl0pOwogICAgICAgICAgbGlua0VsZW1lbnQudGV4dENvbnRlbnQgPSBzYW5pdGl6ZUh0bWwoYW5jaG9yTWF0Y2hbM10pOwogICAgICAgICAgbGVnYWxUZXh0RWxlbWVudC5hcHBlbmRDaGlsZChsaW5rRWxlbWVudCk7CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgIGxlZ2FsVGV4dEVsZW1lbnQuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUocGFydCkpOwogICAgICAgIH0KICAgICAgfSk7CiAgICAgICAgICAKICAgIH0KCiAgICBmdW5jdGlvbiBnZW5lcmF0ZURyb3Bkb3duT3B0aW9ucyhzbXNQcm9ncmFtRGF0YSkgewogICAgICBpZiAoIXNtc1Byb2dyYW1EYXRhIHx8IHNtc1Byb2dyYW1EYXRhLmxlbmd0aCA9PT0gMCkgewogICAgICAgIHJldHVybiAnJzsKICAgICAgfQogICAgICAKICAgICAgcmV0dXJuIHNtc1Byb2dyYW1EYXRhLm1hcChwcm9ncmFtID0+IHsKICAgICAgICBjb25zdCBmbGFnID0gZ2V0Q291bnRyeVVuaWNvZGVGbGFnKHByb2dyYW0uY291bnRyeUNvZGUpOwogICAgICAgIGNvbnN0IGNvdW50cnlOYW1lID0gZ2V0Q291bnRyeU5hbWUocHJvZ3JhbS5jb3VudHJ5Q29kZSk7CiAgICAgICAgY29uc3QgY2FsbGluZ0NvZGUgPSBwcm9ncmFtLmNvdW50cnlDYWxsaW5nQ29kZSB8fCAnJzsKICAgICAgICAvLyBTYW5pdGl6ZSBhbGwgdmFsdWVzIHRvIHByZXZlbnQgWFNTCiAgICAgICAgY29uc3Qgc2FuaXRpemVkQ291bnRyeUNvZGUgPSBzYW5pdGl6ZUh0bWwocHJvZ3JhbS5jb3VudHJ5Q29kZSB8fCAnJyk7CiAgICAgICAgY29uc3Qgc2FuaXRpemVkQ291bnRyeU5hbWUgPSBzYW5pdGl6ZUh0bWwoY291bnRyeU5hbWUgfHwgJycpOwogICAgICAgIGNvbnN0IHNhbml0aXplZENhbGxpbmdDb2RlID0gc2FuaXRpemVIdG1sKGNhbGxpbmdDb2RlIHx8ICcnKTsKICAgICAgICByZXR1cm4gJzxvcHRpb24gdmFsdWU9IicgKyBzYW5pdGl6ZWRDb3VudHJ5Q29kZSArICciPicgKyBzYW5pdGl6ZWRDb3VudHJ5TmFtZSArICcgJyArIHNhbml0aXplZENhbGxpbmdDb2RlICsgJzwvb3B0aW9uPic7CiAgICAgIH0pLmpvaW4oJycpOwogICAgfQoKICAgIGZ1bmN0aW9uIGdldENvdW50cnlOYW1lKGNvdW50cnlDb2RlKSB7CiAgICAgIGlmICh3aW5kb3cuTUM\/LnNtc1Bob25lRGF0YT8uc21zUHJvZ3JhbURhdGFDb3VudHJ5TmFtZXMgJiYgQXJyYXkuaXNBcnJheSh3aW5kb3cuTUMuc21zUGhvbmVEYXRhLnNtc1Byb2dyYW1EYXRhQ291bnRyeU5hbWVzKSkgewogICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgd2luZG93Lk1DLnNtc1Bob25lRGF0YS5zbXNQcm9ncmFtRGF0YUNvdW50cnlOYW1lcy5sZW5ndGg7IGkrKykgewogICAgICAgICAgaWYgKHdpbmRvdy5NQy5zbXNQaG9uZURhdGEuc21zUHJvZ3JhbURhdGFDb3VudHJ5TmFtZXNbaV0uY29kZSA9PT0gY291bnRyeUNvZGUpIHsKICAgICAgICAgICAgcmV0dXJuIHdpbmRvdy5NQy5zbXNQaG9uZURhdGEuc21zUHJvZ3JhbURhdGFDb3VudHJ5TmFtZXNbaV0ubmFtZTsKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIH0KICAgICAgcmV0dXJuIGNvdW50cnlDb2RlOwogICAgfQoKICAgIGZ1bmN0aW9uIGdldERlZmF1bHRQbGFjZWhvbGRlcihjb3VudHJ5Q29kZSkgewogICAgICBpZiAoIWNvdW50cnlDb2RlIHx8IHR5cGVvZiBjb3VudHJ5Q29kZSAhPT0gJ3N0cmluZycpIHsKICAgICAgICByZXR1cm4gJysxIDAwMCAwMDAgMDAwMCc7IC8vIERlZmF1bHQgVVMgcGxhY2Vob2xkZXIKICAgICAgfQogICAgICAKICAgICAgICAgICAgdmFyIG1vY2tQbGFjZWhvbGRlcnMgPSBbCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdVUycsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJysxIDAwMCAwMDAgMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0luY2x1ZGUgdGhlIFVTIGNvdW50cnkgY29kZSArMSBiZWZvcmUgdGhlIHBob25lIG51bWJlcicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0dCJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzQ0IDAwMDAgMDAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVkZSB0aGUgR0IgY291bnRyeSBjb2RlICs0NCBiZWZvcmUgdGhlIHBob25lIG51bWJlcicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0NBJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzEgMDAwIDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVkZSB0aGUgQ0EgY291bnRyeSBjb2RlICsxIGJlZm9yZSB0aGUgcGhvbmUgbnVtYmVyJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnQVUnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNjEgMDAwIDAwMCAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlIHRoZSBBVSBjb3VudHJ5IGNvZGUgKzYxIGJlZm9yZSB0aGUgcGhvbmUgbnVtYmVyJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnREUnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDkgMDAwIDAwMDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdGw7xnZW4gU2llIHZvciBkZXIgVGVsZWZvbm51bW1lciBkaWUgREUtTMOkbmRlcnZvcndhaGwgKzQ5IGVpbicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0ZSJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzMzIDAgMDAgMDAgMDAgMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWV6IGxlIGNvZGUgcGF5cyBGUiArMzMgYXZhbnQgbGUgbnVtw6lybyBkZSB0w6lsw6lwaG9uZScsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0VTJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM0IDAwMCAwMDAgMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHV5YSBlbCBjw7NkaWdvIGRlIHBhw61zIEVTICszNCBhbnRlcyBkZWwgbsO6bWVybyBkZSB0ZWzDqWZvbm8nLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdOTCcsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszMSAwIDAwMDAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnVm9lZyBkZSBOTC1sYW5kY29kZSArMzEgdG9lIHbDs8OzciBoZXQgdGVsZWZvb25udW1tZXInLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdCRScsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszMiAwMDAgMDAgMDAgMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWV6IGxlIGNvZGUgcGF5cyBCRSArMzIgYXZhbnQgbGUgbnVtw6lybyBkZSB0w6lsw6lwaG9uZScsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0NIJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzQxIDAwIDAwMCAwMCAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0bDvGdlbiBTaWUgdm9yIGRlciBUZWxlZm9ubnVtbWVyIGRpZSBDSC1Mw6RuZGVydm9yd2FobCArNDEgZWluJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnQVQnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDMgMDAwIDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnRsO8Z2VuIFNpZSB2b3IgZGVyIFRlbGVmb25udW1tZXIgZGllIEFULUzDpG5kZXJ2b3J3YWhsICs0MyBlaW4nLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdJRScsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszNTMgMDAgMDAwIDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlIHRoZSBJRSBjb3VudHJ5IGNvZGUgKzM1MyBiZWZvcmUgdGhlIHBob25lIG51bWJlcicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0lUJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM5IDAwMCAwMDAgMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0luY2x1ZGVyZSBpbCBwcmVmaXNzbyBpbnRlcm5hemlvbmFsZSBJVCArMzkgcHJpbWEgZGVsIG51bWVybyBkaSB0ZWxlZm9ubycsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ05PJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzQ3IDAwMCAwMCAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmtsdWRlciBOTyBsYW5kc2tvZGUgKzQ3IGbDuHIgdGVsZWZvbm51bW1lcmV0JywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnU0UnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDYgMDAgMDAwIDAwIDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5rbHVkZXJhIFNFIGxhbmRza29kICs0NiBmw7ZyZSB0ZWxlZm9ubnVtcmV0JywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnREsnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDUgMDAgMDAgMDAgMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmtsdWRlciBESyBsYW5kZWtvZGUgKzQ1IGbDuHIgdGVsZWZvbm51bW1lcmV0JywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnRkknLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzU4IDAwIDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnU2lzw6RsbHl0w6QgRkktbWFha29vZGkgKzM1OCBlbm5lbiBwdWhlbGlubnVtZXJvYScsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0VFJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM3MiAwMDAwIDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdMaXNhZ2UgRUUgcmlpZ2lrb29kICszNzIgdGVsZWZvbmludW1icmkgZXR0ZScsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ1BMJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzQ4IDAwMCAwMDAgMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnUG9kYWogbnVtZXIga2llcnVua293eSBQTCArNDggcHJ6ZWQgbnVtZXJlbSB0ZWxlZm9udScsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ1NLJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzQyMSAwMDAgMDAwIDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ1ByZWQgdGVsZWbDs25uZSDEjcOtc2xvIHV2ZcSPdGUga8OzZCBrcmFqaW55IFNLICs0MjEnLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdMVicsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszNzEgMDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSWVrxLxhdWppZXQgTFYgdmFsc3RzIGtvZHUgKzM3MSBwaXJtcyB0xIFscnXFhmEgbnVtdXJhJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnTFQnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzcwIDAwMDAgMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ8SudHJhdWtpdGUgTFQgxaFhbGllcyBrb2TEhSArMzcwIHByaWXFoSB0ZWxlZm9ubyBudW1lcsSvJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnR1InLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzAgMDAwIDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnzqPPhc68z4DOtc+BzrnOu86szrLOtc+EzrUgz4TOv869IM66z4nOtM65zrrPjCDPh8+Oz4HOsc+CIEdSICszMCDPgM+BzrnOvSDOsc+Az4wgz4TOv869IM6xz4HOuc64zrzPjCDPhM63zrvOtc+Gz47Ovc6\/z4UnLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdQVCcsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszNTEgMDAwIDAwMCAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWEgbyBjw7NkaWdvIGRlIHBhw61zIFBUICszNTEgYW50ZXMgZG8gbsO6bWVybyBkZSB0ZWxlZm9uZScsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0hSJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM4NSAwMCAwMDAgMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ1VrbGp1xI1pdGUgSFIgcG96aXZuaSBicm9qIGRyxb5hdmUgKzM4NSBwcmlqZSB0ZWxlZm9uc2tvZyBicm9qYScsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ1NJJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM4NiAwMCAwMDAgMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnVmtsanXEjWl0ZSBTSSBrb2RvIGRyxb5hdmUgKzM4NiBwcmVkIHRlbGVmb25za28gxaF0ZXZpbGtvJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnSVMnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzU0IDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnTMOhdHR1IElTIGxhbmRzbsO6bWVyICszNTQgZnlsZ2phIMOhIHVuZGFuIHPDrW1hbsO6bWVyaW51JywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnTFUnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzUyIDAwMCAwMDAgMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVleiBsZSBjb2RlIHBheXMgTFUgKzM1MiBhdmFudCBsZSBudW3DqXJvIGRlIHTDqWzDqXBob25lJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnTUMnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzc3IDAwIDAwIDAwIDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVleiBsZSBjb2RlIHBheXMgTUMgKzM3NyBhdmFudCBsZSBudW3DqXJvIGRlIHTDqWzDqXBob25lJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnQUQnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzc2IDAwMCAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsb2V1IGVsIGNvZGkgZGUgcGHDrXMgQUQgKzM3NiBhYmFucyBkZWwgbsO6bWVybyBkZSB0ZWzDqGZvbicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0pFJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzQ0IDAwMDAgMDAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVkZSB0aGUgSkUgY291bnRyeSBjb2RlICs0NCBiZWZvcmUgdGhlIHBob25lIG51bWJlcicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0lNJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzQ0IDAwMDAgMDAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVkZSB0aGUgSU0gY291bnRyeSBjb2RlICs0NCBiZWZvcmUgdGhlIHBob25lIG51bWJlcicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0dHJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzQ0IDAwMDAgMDAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVkZSB0aGUgR0cgY291bnRyeSBjb2RlICs0NCBiZWZvcmUgdGhlIHBob25lIG51bWJlcicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0FMJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM1NSAwMCAwMDAgMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ1DDq3Jmc2hpbmkga29kaW4gZSB2ZW5kaXQgQUwgKzM1NSBwYXJhIG51bXJpdCB0w6sgdGVsZWZvbml0JywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnU00nLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzc4IDAwMDAgMDAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVkZXJlIGlsIHByZWZpc3NvIGludGVybmF6aW9uYWxlIFNNICszNzggcHJpbWEgZGVsIG51bWVybyBkaSB0ZWxlZm9ubycsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0ZPJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzI5OCAwMDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmtsdWRlciBGTyBsYW5kZWtvZGUgKzI5OCBmw7hyIHRlbGVmb25udW1tZXJldCcsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ01UJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM1NiAwMDAwIDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlIHRoZSBNVCBjb3VudHJ5IGNvZGUgKzM1NiBiZWZvcmUgdGhlIHBob25lIG51bWJlcicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0xJJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzQyMyAwMDAgMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0bDvGdlbiBTaWUgdm9yIGRlciBUZWxlZm9ubnVtbWVyIGRpZSBMSS1Mw6RuZGVydm9yd2FobCArNDIzIGVpbicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0dJJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM1MCAwMDAgMDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlIHRoZSBHSSBjb3VudHJ5IGNvZGUgKzM1MCBiZWZvcmUgdGhlIHBob25lIG51bWJlcicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ01EJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM3MyAwMCAwMDAgMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVkZcibaSBjb2R1bCBkZSDIm2FyxIMgTUQgKzM3MyDDrm5haW50ZWEgbnVtxINydWx1aSBkZSB0ZWxlZm9uJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnSFUnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzYgMDAgMDAwIDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdBIHRlbGVmb25zesOhbSBlbMWRdHQgYWRqYSBtZWcgYSBIVSBvcnN6w6Fna8OzZG90ICszNicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ05aJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzY0IDAwIDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVkZSB0aGUgTlogY291bnRyeSBjb2RlICs2NCBiZWZvcmUgdGhlIHBob25lIG51bWJlcicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ01FJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM4MiAwMCAwMDAgMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnVWtsanXEjWl0ZSBNRSBwb3ppdm5pIGJyb2ogZHLFvmF2ZSArMzgyIHByaWplIHRlbGVmb25za29nIGJyb2phJywKICAgICAgICB9LAogICAgICBdOwoKICAgICAgY29uc3Qgc2VsZWN0ZWRQbGFjZWhvbGRlciA9IG1vY2tQbGFjZWhvbGRlcnMuZmluZChmdW5jdGlvbihpdGVtKSB7CiAgICAgICAgcmV0dXJuIGl0ZW0gJiYgaXRlbS5jb3VudHJ5Q29kZSA9PT0gY291bnRyeUNvZGU7CiAgICAgIH0pOwogICAgICAKICAgICAgcmV0dXJuIHNlbGVjdGVkUGxhY2Vob2xkZXIgPyBzZWxlY3RlZFBsYWNlaG9sZGVyLnBsYWNlaG9sZGVyIDogbW9ja1BsYWNlaG9sZGVyc1swXS5wbGFjZWhvbGRlcjsKICAgIH0KCiAgICBmdW5jdGlvbiB1cGRhdGVQbGFjZWhvbGRlcihjb3VudHJ5Q29kZSwgZmllbGROYW1lKSB7CiAgICAgIGlmICghY291bnRyeUNvZGUgfHwgIWZpZWxkTmFtZSkgewogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICAKICAgICAgY29uc3QgcGhvbmVJbnB1dCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNtY2UtJyArIGZpZWxkTmFtZSk7CiAgICAgIGlmICghcGhvbmVJbnB1dCkgewogICAgICAgIHJldHVybjsKICAgICAgfQogICAgICAKICAgICAgY29uc3QgcGxhY2Vob2xkZXIgPSBnZXREZWZhdWx0UGxhY2Vob2xkZXIoY291bnRyeUNvZGUpOwogICAgICBpZiAocGxhY2Vob2xkZXIpIHsKICAgICAgICBwaG9uZUlucHV0LnBsYWNlaG9sZGVyID0gcGxhY2Vob2xkZXI7CiAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiB1cGRhdGVDb3VudHJ5Q29kZUluc3RydWN0aW9uKGNvdW50cnlDb2RlLCBmaWVsZE5hbWUpIHsKICAgICAgdXBkYXRlUGxhY2Vob2xkZXIoY291bnRyeUNvZGUsIGZpZWxkTmFtZSk7CiAgICAgIAogICAgfQoKICAgIGZ1bmN0aW9uIGdldERlZmF1bHRIZWxwVGV4dChjb3VudHJ5Q29kZSkgewogICAgICB2YXIgbW9ja1BsYWNlaG9sZGVycyA9IFsKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ1VTJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzEgMDAwIDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVkZSB0aGUgVVMgY291bnRyeSBjb2RlICsxIGJlZm9yZSB0aGUgcGhvbmUgbnVtYmVyJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnR0InLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDQgMDAwMCAwMDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlIHRoZSBHQiBjb3VudHJ5IGNvZGUgKzQ0IGJlZm9yZSB0aGUgcGhvbmUgbnVtYmVyJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnQ0EnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMSAwMDAgMDAwIDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlIHRoZSBDQSBjb3VudHJ5IGNvZGUgKzEgYmVmb3JlIHRoZSBwaG9uZSBudW1iZXInLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdBVScsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJys2MSAwMDAgMDAwIDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0luY2x1ZGUgdGhlIEFVIGNvdW50cnkgY29kZSArNjEgYmVmb3JlIHRoZSBwaG9uZSBudW1iZXInLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdERScsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJys0OSAwMDAgMDAwMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0bDvGdlbiBTaWUgdm9yIGRlciBUZWxlZm9ubnVtbWVyIGRpZSBERS1Mw6RuZGVydm9yd2FobCArNDkgZWluJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnRlInLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzMgMCAwMCAwMCAwMCAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0luY2x1ZXogbGUgY29kZSBwYXlzIEZSICszMyBhdmFudCBsZSBudW3DqXJvIGRlIHTDqWzDqXBob25lJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnRVMnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzQgMDAwIDAwMCAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdXlhIGVsIGPDs2RpZ28gZGUgcGHDrXMgRVMgKzM0IGFudGVzIGRlbCBuw7ptZXJvIGRlIHRlbMOpZm9ubycsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ05MJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzMxIDAgMDAwMDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdWb2VnIGRlIE5MLWxhbmRjb2RlICszMSB0b2UgdsOzw7NyIGhldCB0ZWxlZm9vbm51bW1lcicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0JFJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzMyIDAwMCAwMCAwMCAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0luY2x1ZXogbGUgY29kZSBwYXlzIEJFICszMiBhdmFudCBsZSBudW3DqXJvIGRlIHTDqWzDqXBob25lJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnQ0gnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDEgMDAgMDAwIDAwIDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnRsO8Z2VuIFNpZSB2b3IgZGVyIFRlbGVmb25udW1tZXIgZGllIENILUzDpG5kZXJ2b3J3YWhsICs0MSBlaW4nLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdBVCcsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJys0MyAwMDAgMDAwIDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdGw7xnZW4gU2llIHZvciBkZXIgVGVsZWZvbm51bW1lciBkaWUgQVQtTMOkbmRlcnZvcndhaGwgKzQzIGVpbicsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0lFJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM1MyAwMCAwMDAgMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0luY2x1ZGUgdGhlIElFIGNvdW50cnkgY29kZSArMzUzIGJlZm9yZSB0aGUgcGhvbmUgbnVtYmVyJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnSVQnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzkgMDAwIDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnSW5jbHVkZXJlIGlsIHByZWZpc3NvIGludGVybmF6aW9uYWxlIElUICszOSBwcmltYSBkZWwgbnVtZXJvIGRpIHRlbGVmb25vJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnTk8nLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDcgMDAwIDAwIDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0lua2x1ZGVyIE5PIGxhbmRza29kZSArNDcgZsO4ciB0ZWxlZm9ubnVtbWVyZXQnLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdTRScsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJys0NiAwMCAwMDAgMDAgMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmtsdWRlcmEgU0UgbGFuZHNrb2QgKzQ2IGbDtnJlIHRlbGVmb25udW1yZXQnLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdESycsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJys0NSAwMCAwMCAwMCAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0lua2x1ZGVyIERLIGxhbmRla29kZSArNDUgZsO4ciB0ZWxlZm9ubnVtbWVyZXQnLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdGSScsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszNTggMDAgMDAwIDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdTaXPDpGxseXTDpCBGSS1tYWFrb29kaSArMzU4IGVubmVuIHB1aGVsaW5udW1lcm9hJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnRUUnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzcyIDAwMDAgMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0xpc2FnZSBFRSByaWlnaWtvb2QgKzM3MiB0ZWxlZm9uaW51bWJyaSBldHRlJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnUEwnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDggMDAwIDAwMCAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdQb2RhaiBudW1lciBraWVydW5rb3d5IFBMICs0OCBwcnplZCBudW1lcmVtIHRlbGVmb251JywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnU0snLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDIxIDAwMCAwMDAgMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnUHJlZCB0ZWxlZsOzbm5lIMSNw61zbG8gdXZlxI90ZSBrw7NkIGtyYWppbnkgU0sgKzQyMScsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ0xWJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM3MSAwMDAwIDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJZWvEvGF1amlldCBMViB2YWxzdHMga29kdSArMzcxIHBpcm1zIHTEgWxydcWGYSBudW11cmEnLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdMVCcsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszNzAgMDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnxK50cmF1a2l0ZSBMVCDFoWFsaWVzIGtvZMSFICszNzAgcHJpZcWhIHRlbGVmb25vIG51bWVyxK8nLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdHUicsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszMCAwMDAgMDAwIDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICfOo8+FzrzPgM61z4HOuc67zqzOss61z4TOtSDPhM6\/zr0gzrrPic60zrnOus+MIM+Hz47Pgc6xz4IgR1IgKzMwIM+Az4HOuc69IM6xz4DPjCDPhM6\/zr0gzrHPgc65zrjOvM+MIM+EzrfOu861z4bPjs69zr\/PhScsCiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBjb3VudHJ5Q29kZTogJ1BUJywKICAgICAgICAgIHBsYWNlaG9sZGVyOiAnKzM1MSAwMDAgMDAwIDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0luY2x1YSBvIGPDs2RpZ28gZGUgcGHDrXMgUFQgKzM1MSBhbnRlcyBkbyBuw7ptZXJvIGRlIHRlbGVmb25lJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnSFInLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzg1IDAwIDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnVWtsanXEjWl0ZSBIUiBwb3ppdm5pIGJyb2ogZHLFvmF2ZSArMzg1IHByaWplIHRlbGVmb25za29nIGJyb2phJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnU0knLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzg2IDAwIDAwMCAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdWa2xqdcSNaXRlIFNJIGtvZG8gZHLFvmF2ZSArMzg2IHByZWQgdGVsZWZvbnNrbyDFoXRldmlsa28nLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdJUycsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszNTQgMDAwIDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdMw6F0dHUgSVMgbGFuZHNuw7ptZXIgKzM1NCBmeWxnamEgw6EgdW5kYW4gc8OtbWFuw7ptZXJpbnUnLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdMVScsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszNTIgMDAwIDAwMCAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWV6IGxlIGNvZGUgcGF5cyBMVSArMzUyIGF2YW50IGxlIG51bcOpcm8gZGUgdMOpbMOpcGhvbmUnLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdNQycsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszNzcgMDAgMDAgMDAgMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWV6IGxlIGNvZGUgcGF5cyBNQyArMzc3IGF2YW50IGxlIG51bcOpcm8gZGUgdMOpbMOpcGhvbmUnLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdBRCcsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszNzYgMDAwIDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0luY2xvZXUgZWwgY29kaSBkZSBwYcOtcyBBRCArMzc2IGFiYW5zIGRlbCBuw7ptZXJvIGRlIHRlbMOoZm9uJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnSkUnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDQgMDAwMCAwMDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlIHRoZSBKRSBjb3VudHJ5IGNvZGUgKzQ0IGJlZm9yZSB0aGUgcGhvbmUgbnVtYmVyJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnSU0nLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDQgMDAwMCAwMDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlIHRoZSBJTSBjb3VudHJ5IGNvZGUgKzQ0IGJlZm9yZSB0aGUgcGhvbmUgbnVtYmVyJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnR0cnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDQgMDAwMCAwMDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlIHRoZSBHRyBjb3VudHJ5IGNvZGUgKzQ0IGJlZm9yZSB0aGUgcGhvbmUgbnVtYmVyJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnQUwnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzU1IDAwIDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnUMOrcmZzaGluaSBrb2RpbiBlIHZlbmRpdCBBTCArMzU1IHBhcmEgbnVtcml0IHTDqyB0ZWxlZm9uaXQnLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdTTScsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszNzggMDAwMCAwMDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlcmUgaWwgcHJlZmlzc28gaW50ZXJuYXppb25hbGUgU00gKzM3OCBwcmltYSBkZWwgbnVtZXJvIGRpIHRlbGVmb25vJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnRk8nLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMjk4IDAwMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0lua2x1ZGVyIEZPIGxhbmRla29kZSArMjk4IGbDuHIgdGVsZWZvbm51bW1lcmV0JywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnTVQnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzU2IDAwMDAgMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0luY2x1ZGUgdGhlIE1UIGNvdW50cnkgY29kZSArMzU2IGJlZm9yZSB0aGUgcGhvbmUgbnVtYmVyJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnTEknLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNDIzIDAwMCAwMDAwJywKICAgICAgICAgIGhlbHBUZXh0OiAnRsO8Z2VuIFNpZSB2b3IgZGVyIFRlbGVmb25udW1tZXIgZGllIExJLUzDpG5kZXJ2b3J3YWhsICs0MjMgZWluJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnR0knLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzUwIDAwMCAwMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0luY2x1ZGUgdGhlIEdJIGNvdW50cnkgY29kZSArMzUwIGJlZm9yZSB0aGUgcGhvbmUgbnVtYmVyJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnTUQnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzczIDAwIDAwMCAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlyJtpIGNvZHVsIGRlIMibYXLEgyBNRCArMzczIMOubmFpbnRlYSBudW3Eg3J1bHVpIGRlIHRlbGVmb24nLAogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgY291bnRyeUNvZGU6ICdIVScsCiAgICAgICAgICBwbGFjZWhvbGRlcjogJyszNiAwMCAwMDAgMDAwMCcsCiAgICAgICAgICBoZWxwVGV4dDogJ0EgdGVsZWZvbnN6w6FtIGVsxZF0dCBhZGphIG1lZyBhIEhVIG9yc3rDoWdrw7Nkb3QgKzM2JywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnTlonLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrNjQgMDAgMDAwIDAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdJbmNsdWRlIHRoZSBOWiBjb3VudHJ5IGNvZGUgKzY0IGJlZm9yZSB0aGUgcGhvbmUgbnVtYmVyJywKICAgICAgICB9LAogICAgICAgIHsKICAgICAgICAgIGNvdW50cnlDb2RlOiAnTUUnLAogICAgICAgICAgcGxhY2Vob2xkZXI6ICcrMzgyIDAwIDAwMCAwMDAnLAogICAgICAgICAgaGVscFRleHQ6ICdVa2xqdcSNaXRlIE1FIHBveml2bmkgYnJvaiBkcsW+YXZlICszODIgcHJpamUgdGVsZWZvbnNrb2cgYnJvamEnLAogICAgICAgIH0sCiAgICAgIF07CiAgICAgIAogICAgICBpZiAoIWNvdW50cnlDb2RlIHx8IHR5cGVvZiBjb3VudHJ5Q29kZSAhPT0gJ3N0cmluZycpIHsKICAgICAgICByZXR1cm4gbW9ja1BsYWNlaG9sZGVyc1swXS5oZWxwVGV4dDsKICAgICAgfQogICAgICAKICAgICAgY29uc3Qgc2VsZWN0ZWRIZWxwVGV4dCA9IG1vY2tQbGFjZWhvbGRlcnMuZmluZChmdW5jdGlvbihpdGVtKSB7CiAgICAgICAgICByZXR1cm4gaXRlbSAmJiBpdGVtLmNvdW50cnlDb2RlID09PSBjb3VudHJ5Q29kZTsKICAgICAgICB9KTsKICAgICAgICAKICAgICAgICByZXR1cm4gc2VsZWN0ZWRIZWxwVGV4dCA\/IHNlbGVjdGVkSGVscFRleHQuaGVscFRleHQgOiBtb2NrUGxhY2Vob2xkZXJzWzBdLmhlbHBUZXh0OwogICAgfQoKICAgIGZ1bmN0aW9uIHNldERlZmF1bHRIZWxwVGV4dChjb3VudHJ5Q29kZSkgewogICAgICBjb25zdCBoZWxwVGV4dFNwYW4gPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjaGVscC10ZXh0Jyk7CiAgICAgIGlmICghaGVscFRleHRTcGFuKSB7CiAgICAgICAgcmV0dXJuOwogICAgICB9CgogICAgICAgIAogICAgfQoKICAgIGZ1bmN0aW9uIHVwZGF0ZUhlbHBUZXh0Q291bnRyeUNvZGUoY291bnRyeUNvZGUsIGZpZWxkTmFtZSkgewogICAgICBpZiAoIWNvdW50cnlDb2RlIHx8ICFmaWVsZE5hbWUpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KICAgICAgCiAgICAgIHNldERlZmF1bHRIZWxwVGV4dChjb3VudHJ5Q29kZSk7CiAgICB9CgogICAgZnVuY3Rpb24gaW5pdGlhbGl6ZVNtc1Bob25lRHJvcGRvd24oZmllbGROYW1lKSB7CiAgICAgIGlmICghZmllbGROYW1lIHx8IHR5cGVvZiBmaWVsZE5hbWUgIT09ICdzdHJpbmcnKSB7CiAgICAgICAgcmV0dXJuOwogICAgICB9CiAgICAgIAogICAgICBjb25zdCBkcm9wZG93biA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNjb3VudHJ5LXNlbGVjdC0nICsgZmllbGROYW1lKTsKICAgICAgY29uc3QgZGlzcGxheUZsYWcgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjZmxhZy1kaXNwbGF5LScgKyBmaWVsZE5hbWUpOwogICAgICAKICAgICAgaWYgKCFkcm9wZG93biB8fCAhZGlzcGxheUZsYWcpIHsKICAgICAgICByZXR1cm47CiAgICAgIH0KCiAgICAgIGNvbnN0IHNtc1Bob25lRGF0YSA9IHdpbmRvdy5NQz8uc21zUGhvbmVEYXRhOwogICAgICBpZiAoc21zUGhvbmVEYXRhICYmIHNtc1Bob25lRGF0YS5wcm9ncmFtcyAmJiBBcnJheS5pc0FycmF5KHNtc1Bob25lRGF0YS5wcm9ncmFtcykpIHsKICAgICAgICBkcm9wZG93bi5pbm5lckhUTUwgPSBnZW5lcmF0ZURyb3Bkb3duT3B0aW9ucyhzbXNQaG9uZURhdGEucHJvZ3JhbXMpOwogICAgICB9CgogICAgICBjb25zdCBkZWZhdWx0UHJvZ3JhbSA9IGdldERlZmF1bHRDb3VudHJ5UHJvZ3JhbShzbXNQaG9uZURhdGE\/LmRlZmF1bHRDb3VudHJ5Q29kZSwgc21zUGhvbmVEYXRhPy5wcm9ncmFtcyk7CiAgICAgIGlmIChkZWZhdWx0UHJvZ3JhbSAmJiBkZWZhdWx0UHJvZ3JhbS5jb3VudHJ5Q29kZSkgewogICAgICAgIGRyb3Bkb3duLnZhbHVlID0gZGVmYXVsdFByb2dyYW0uY291bnRyeUNvZGU7CiAgICAgICAgCiAgICAgICAgY29uc3QgZmxhZ1NwYW4gPSBkaXNwbGF5RmxhZz8ucXVlcnlTZWxlY3RvcignI2ZsYWctZW1vamktJyArIGZpZWxkTmFtZSk7CiAgICAgICAgaWYgKGZsYWdTcGFuKSB7CiAgICAgICAgICBmbGFnU3Bhbi50ZXh0Q29udGVudCA9IGdldENvdW50cnlVbmljb2RlRmxhZyhkZWZhdWx0UHJvZ3JhbS5jb3VudHJ5Q29kZSk7CiAgICAgICAgICBmbGFnU3Bhbi5zZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnLCBzYW5pdGl6ZUh0bWwoZGVmYXVsdFByb2dyYW0uY291bnRyeUNvZGUpICsgJyBmbGFnJyk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIHVwZGF0ZVNtc0xlZ2FsVGV4dChkZWZhdWx0UHJvZ3JhbS5jb3VudHJ5Q29kZSwgZmllbGROYW1lKTsKICAgICAgICB1cGRhdGVQbGFjZWhvbGRlcihkZWZhdWx0UHJvZ3JhbS5jb3VudHJ5Q29kZSwgZmllbGROYW1lKTsKICAgICAgICB1cGRhdGVDb3VudHJ5Q29kZUluc3RydWN0aW9uKGRlZmF1bHRQcm9ncmFtLmNvdW50cnlDb2RlLCBmaWVsZE5hbWUpOwogICAgICB9CgogICAgIAogICAgICB2YXIgc21zTm90UmVxdWlyZWRSZW1vdmVDb3VudHJ5Q29kZUVuYWJsZWQgPSB0cnVlOwogICAgICB2YXIgc21zRmllbGQgPSBPYmplY3QudmFsdWVzKHsiRU1BSUwiOnsibmFtZSI6IkVNQUlMIiwibGFiZWwiOiJFbWFpbCBBZGRyZXNzIiwiaGVscGVyX3RleHQiOiIiLCJ0eXBlIjoiZW1haWwiLCJyZXF1aXJlZCI6dHJ1ZSwiYXVkaWVuY2VfZmllbGRfbmFtZSI6IkVtYWlsIEFkZHJlc3MiLCJtZXJnZV9pZCI6MCwiaGVscF90ZXh0X2VuYWJsZWQiOmZhbHNlLCJlbmFibGVkIjp0cnVlLCJvcmRlciI6MCwiZmllbGRfdHlwZSI6Im1lcmdlIn0sIkZOQU1FIjp7Im5hbWUiOiJGTkFNRSIsImxhYmVsIjoiRmlyc3QgTmFtZSIsImhlbHBlcl90ZXh0IjoiIiwidHlwZSI6InRleHQiLCJyZXF1aXJlZCI6ZmFsc2UsImF1ZGllbmNlX2ZpZWxkX25hbWUiOiJGaXJzdCBOYW1lIiwibWVyZ2VfaWQiOjEsImhlbHBfdGV4dF9lbmFibGVkIjpmYWxzZSwiZW5hYmxlZCI6dHJ1ZSwib3JkZXIiOjEsImZpZWxkX3R5cGUiOiJtZXJnZSJ9LCJMTkFNRSI6eyJuYW1lIjoiTE5BTUUiLCJsYWJlbCI6Ikxhc3QgTmFtZSIsImhlbHBlcl90ZXh0IjoiIiwidHlwZSI6InRleHQiLCJyZXF1aXJlZCI6ZmFsc2UsImF1ZGllbmNlX2ZpZWxkX25hbWUiOiJMYXN0IE5hbWUiLCJtZXJnZV9pZCI6MiwiaGVscF90ZXh0X2VuYWJsZWQiOmZhbHNlLCJlbmFibGVkIjp0cnVlLCJvcmRlciI6MiwiZmllbGRfdHlwZSI6Im1lcmdlIn0sIkFERFJFU1MiOnsibmFtZSI6IkFERFJFU1MiLCJsYWJlbCI6IkFkZHJlc3MiLCJoZWxwZXJfdGV4dCI6IiIsInR5cGUiOiJhZGRyZXNzIiwicmVxdWlyZWQiOmZhbHNlLCJhdWRpZW5jZV9maWVsZF9uYW1lIjoiQWRkcmVzcyIsImVuYWJsZWQiOmZhbHNlLCJvcmRlciI6bnVsbCwiZmllbGRfdHlwZSI6Im1lcmdlIiwibWVyZ2VfaWQiOjMsImNvdW50cmllcyI6eyIyIjoiQWxiYW5pYSIsIjMiOiJBbGdlcmlhIiwiNCI6IkFuZG9ycmEiLCI1IjoiQW5nb2xhIiwiNiI6IkFyZ2VudGluYSIsIjciOiJBcm1lbmlhIiwiOCI6IkF1c3RyYWxpYSIsIjkiOiJBdXN0cmlhIiwiMTAiOiJBemVyYmFpamFuIiwiMTEiOiJCYWhhbWFzIiwiMTIiOiJCYWhyYWluIiwiMTMiOiJCYW5nbGFkZXNoIiwiMTQiOiJCYXJiYWRvcyIsIjE1IjoiQmVsYXJ1cyIsIjE2IjoiQmVsZ2l1bSIsIjE3IjoiQmVsaXplIiwiMTgiOiJCZW5pbiIsIjE5IjoiQmVybXVkYSIsIjIwIjoiQmh1dGFuIiwiMjEiOiJCb2xpdmlhIiwiMjIiOiJCb3NuaWEgYW5kIEhlcnplZ292aW5hIiwiMjMiOiJCb3Rzd2FuYSIsIjI0IjoiQnJhemlsIiwiMjUiOiJCdWxnYXJpYSIsIjI2IjoiQnVya2luYSBGYXNvIiwiMjciOiJCdXJ1bmRpIiwiMjgiOiJDYW1ib2RpYSIsIjI5IjoiQ2FtZXJvb24iLCIzMCI6IkNhbmFkYSIsIjMxIjoiQ2FwZSBWZXJkZSIsIjMyIjoiQ2F5bWFuIElzbGFuZHMiLCIzMyI6IkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpYyIsIjM0IjoiQ2hhZCIsIjM1IjoiQ2hpbGUiLCIzNiI6IkNoaW5hIiwiMzciOiJDb2xvbWJpYSIsIjM4IjoiQ29uZ28iLCI0MCI6IkNyb2F0aWEiLCI0MSI6IkN5cHJ1cyIsIjQyIjoiQ3plY2ggUmVwdWJsaWMiLCI0MyI6IkRlbm1hcmsiLCI0NCI6IkRqaWJvdXRpIiwiNDUiOiJFY3VhZG9yIiwiNDYiOiJFZ3lwdCIsIjQ3IjoiRWwgU2FsdmFkb3IiLCI0OCI6IkVxdWF0b3JpYWwgR3VpbmVhIiwiNDkiOiJFcml0cmVhIiwiNTAiOiJFc3RvbmlhIiwiNTEiOiJFdGhpb3BpYSIsIjUyIjoiRmlqaSIsIjUzIjoiRmlubGFuZCIsIjU0IjoiRnJhbmNlIiwiNTYiOiJHYWJvbiIsIjU3IjoiR2FtYmlhIiwiNTgiOiJHZW9yZ2lhIiwiNTkiOiJHZXJtYW55IiwiNjAiOiJHaGFuYSIsIjYxIjoiR3JlZWNlIiwiNjIiOiJHdWFtIiwiNjMiOiJHdWluZWEiLCI2NCI6Ikd1aW5lYS1CaXNzYXUiLCI2NSI6Ikd1eWFuYSIsIjY2IjoiSG9uZHVyYXMiLCI2NyI6IkhvbmcgS29uZyIsIjY4IjoiSHVuZ2FyeSIsIjY5IjoiSWNlbGFuZCIsIjcwIjoiSW5kaWEiLCI3MSI6IkluZG9uZXNpYSIsIjc0IjoiSXJlbGFuZCIsIjc1IjoiSXNyYWVsIiwiNzYiOiJJdGFseSIsIjc4IjoiSmFwYW4iLCI3OSI6IkpvcmRhbiIsIjgwIjoiS2F6YWtoc3RhbiIsIjgxIjoiS2VueWEiLCI4MiI6Ikt1d2FpdCIsIjgzIjoiS3lyZ3l6c3RhbiIsIjg0IjoiTGFvIFBlb3BsZSdzIERlbW9jcmF0aWMgUmVwdWJsaWMiLCI4NSI6IkxhdHZpYSIsIjg2IjoiTGViYW5vbiIsIjg3IjoiTGVzb3RobyIsIjg4IjoiTGliZXJpYSIsIjkwIjoiTGllY2h0ZW5zdGVpbiIsIjkxIjoiTGl0aHVhbmlhIiwiOTIiOiJMdXhlbWJvdXJnIiwiOTMiOiJNYWNlZG9uaWEiLCI5NCI6Ik1hZGFnYXNjYXIiLCI5NSI6Ik1hbGF3aSIsIjk2IjoiTWFsYXlzaWEiLCI5NyI6Ik1hbGRpdmVzIiwiOTgiOiJNYWxpIiwiOTkiOiJNYWx0YSIsIjEwMCI6Ik1hdXJpdGFuaWEiLCIxMDEiOiJNZXhpY28iLCIxMDIiOiJNb2xkb3ZhIiwiMTAzIjoiTW9uYWNvIiwiMTA0IjoiTW9uZ29saWEiLCIxMDUiOiJNb3JvY2NvIiwiMTA2IjoiTW96YW1iaXF1ZSIsIjEwNyI6Ik5hbWliaWEiLCIxMDgiOiJOZXBhbCIsIjEwOSI6Ik5ldGhlcmxhbmRzIiwiMTEwIjoiTmV0aGVybGFuZHMgQW50aWxsZXMiLCIxMTEiOiJOZXcgWmVhbGFuZCIsIjExMiI6Ik5pY2FyYWd1YSIsIjExMyI6Ik5pZ2VyIiwiMTE0IjoiTmlnZXJpYSIsIjExNiI6Ik5vcndheSIsIjExNyI6Ik9tYW4iLCIxMTgiOiJQYWtpc3RhbiIsIjExOSI6IlBhbmFtYSIsIjEyMCI6IlBhcmFndWF5IiwiMTIxIjoiUGVydSIsIjEyMiI6IlBoaWxpcHBpbmVzIiwiMTIzIjoiUG9sYW5kIiwiMTI0IjoiUG9ydHVnYWwiLCIxMjYiOiJRYXRhciIsIjEyNyI6IlJldW5pb24iLCIxMjgiOiJSb21hbmlhIiwiMTI5IjoiUnVzc2lhIiwiMTMwIjoiUndhbmRhIiwiMTMyIjoiU2Ftb2EgKEluZGVwZW5kZW50KSIsIjEzMyI6IlNhdWRpIEFyYWJpYSIsIjEzNCI6IlNlbmVnYWwiLCIxMzUiOiJTZXljaGVsbGVzIiwiMTM2IjoiU2llcnJhIExlb25lIiwiMTM3IjoiU2luZ2Fwb3JlIiwiMTM4IjoiU2xvdmFraWEiLCIxMzkiOiJTbG92ZW5pYSIsIjE0MCI6IlNvbWFsaWEiLCIxNDEiOiJTb3V0aCBBZnJpY2EiLCIxNDIiOiJTb3V0aCBLb3JlYSIsIjE0MyI6IlNwYWluIiwiMTQ0IjoiU3JpIExhbmthIiwiMTQ2IjoiU3VyaW5hbWUiLCIxNDciOiJTd2F6aWxhbmQiLCIxNDgiOiJTd2VkZW4iLCIxNDkiOiJTd2l0emVybGFuZCIsIjE1MiI6IlRhaXdhbiIsIjE1MyI6IlRhbnphbmlhIiwiMTU0IjoiVGhhaWxhbmQiLCIxNTUiOiJUb2dvIiwiMTU2IjoiVHVuaXNpYSIsIjE1NyI6IlR1cmtpeWUiLCIxNTgiOiJUdXJrbWVuaXN0YW4iLCIxNTkiOiJVZ2FuZGEiLCIxNjEiOiJVa3JhaW5lIiwiMTYyIjoiVW5pdGVkIEFyYWIgRW1pcmF0ZXMiLCIxNjMiOiJVcnVndWF5IiwiMTY0IjoiVVNBIiwiMTY1IjoiVXpiZWtpc3RhbiIsIjE2NiI6IlZhdGljYW4gQ2l0eSBTdGF0ZSAoSG9seSBTZWUpIiwiMTY3IjoiVmVuZXp1ZWxhIiwiMTY4IjoiVmlldG5hbSIsIjE2OSI6IlZpcmdpbiBJc2xhbmRzIChCcml0aXNoKSIsIjE3MCI6IlllbWVuIiwiMTczIjoiWmFtYmlhIiwiMTc0IjoiWmltYmFid2UiLCIxNzUiOiJBbnRpZ3VhIEFuZCBCYXJidWRhIiwiMTc2IjoiQW5ndWlsbGEiLCIxNzgiOiJBbWVyaWNhbiBTYW1vYSIsIjE3OSI6IkFydWJhIiwiMTgwIjoiQnJ1bmVpIERhcnVzc2FsYW0iLCIxODEiOiJCb3V2ZXQgSXNsYW5kIiwiMTgzIjoiQ29vayBJc2xhbmRzIiwiMTg1IjoiQ2hyaXN0bWFzIElzbGFuZCIsIjE4NyI6IkRvbWluaWNhbiBSZXB1YmxpYyIsIjE4OCI6Ildlc3Rlcm4gU2FoYXJhIiwiMTg5IjoiRmFsa2xhbmQgSXNsYW5kcyIsIjE5MSI6IkZhcm9lIElzbGFuZHMiLCIxOTIiOiJHcmVuYWRhIiwiMTkzIjoiRnJlbmNoIEd1aWFuYSIsIjE5NCI6IkdpYnJhbHRhciIsIjE5NSI6IkdyZWVubGFuZCIsIjE5NiI6Ikd1YWRlbG91cGUiLCIxOTgiOiJHdWF0ZW1hbGEiLCIyMDAiOiJIYWl0aSIsIjIwMiI6IkphbWFpY2EiLCIyMDMiOiJLaXJpYmF0aSIsIjIwNCI6IkNvbW9yb3MiLCIyMDUiOiJTYWludCBLaXR0cyBhbmQgTmV2aXMiLCIyMDYiOiJTYWludCBMdWNpYSIsIjIwNyI6Ik1hcnNoYWxsIElzbGFuZHMiLCIyMDgiOiJNYWNhdSIsIjIxMCI6Ik1hcnRpbmlxdWUiLCIyMTIiOiJNYXVyaXRpdXMiLCIyMTMiOiJOZXcgQ2FsZWRvbmlhIiwiMjE0IjoiTm9yZm9sayBJc2xhbmQiLCIyMTUiOiJOYXVydSIsIjIxNyI6Ik5pdWUiLCIyMTkiOiJQYXB1YSBOZXcgR3VpbmVhIiwiMjIxIjoiUGl0Y2Fpcm4iLCIyMjIiOiJQYWxhdSIsIjIyMyI6IlNvbG9tb24gSXNsYW5kcyIsIjIyNSI6IlN2YWxiYXJkIGFuZCBKYW4gTWF5ZW4gSXNsYW5kcyIsIjIyNyI6IlNhbiBNYXJpbm8iLCIyMzIiOiJUb25nYSIsIjIzMyI6IlRpbW9yLUxlc3RlIiwiMjM0IjoiVHJpbmlkYWQgYW5kIFRvYmFnbyIsIjIzNSI6IlR1dmFsdSIsIjIzNyI6IlNhaW50IFZpbmNlbnQgYW5kIHRoZSBHcmVuYWRpbmVzIiwiMjM4IjoiVmlyZ2luIElzbGFuZHMgKFUuUy4pIiwiMjM5IjoiVmFudWF0dSIsIjI0MSI6Ik1heW90dGUiLCIyNDIiOiJNeWFubWFyIiwiMjU1IjoiU2FvIFRvbWUgYW5kIFByaW5jaXBlIiwiMjU3IjoiU291dGggR2VvcmdpYSBhbmQgdGhlIFNvdXRoIFNhbmR3aWNoIElzbGFuZHMiLCIyNjAiOiJUYWppa2lzdGFuIiwiMjYyIjoiVW5pdGVkIEtpbmdkb20iLCIyNjgiOiJDb3N0YSBSaWNhIiwiMjcwIjoiR3Vlcm5zZXkiLCIyNzIiOiJOb3J0aCBLb3JlYSIsIjI3NCI6IkFmZ2hhbmlzdGFuIiwiMjc1IjoiQ290ZSBEJ0l2b2lyZSIsIjI3NiI6IkN1YmEiLCIyNzciOiJGcmVuY2ggUG9seW5lc2lhIiwiMjc4IjoiSXJhbiIsIjI3OSI6IklyYXEiLCIyODEiOiJMaWJ5YSIsIjI4MiI6IlBhbGVzdGluZSIsIjI4NSI6IlN5cmlhIiwiMjg2IjoiQWFsYW5kIElzbGFuZHMiLCIyODciOiJUdXJrcyAmIENhaWNvcyBJc2xhbmRzIiwiMjg4IjoiSmVyc2V5ICAoQ2hhbm5lbCBJc2xhbmRzKSIsIjI4OSI6IkRvbWluaWNhIiwiMjkwIjoiTW9udGVuZWdybyIsIjI5MyI6IlN1ZGFuIiwiMjk0IjoiTW9udHNlcnJhdCIsIjI5OCI6IkN1cmFjYW8iLCIzMDIiOiJTaW50IE1hYXJ0ZW4iLCIzMTEiOiJTb3V0aCBTdWRhbiIsIjMxNSI6IlJlcHVibGljIG9mIEtvc292byIsIjMxOCI6IkNvbmdvLCBEZW1vY3JhdGljIFJlcHVibGljIG9mIHRoZSIsIjMyMyI6IklzbGUgb2YgTWFuIiwiMzI0IjoiU2FpbnQgTWFydGluIiwiMzI1IjoiQm9uYWlyZSwgU2FpbnQgRXVzdGF0aXVzIGFuZCBTYWJhIiwiMzI2IjoiU2VyYmlhIn0sImRlZmF1bHRjb3VudHJ5IjoxNjR9LCJQSE9ORSI6eyJuYW1lIjoiUEhPTkUiLCJsYWJlbCI6IlBob25lIE51bWJlciIsImhlbHBlcl90ZXh0IjoiIiwidHlwZSI6InBob25lIiwicmVxdWlyZWQiOmZhbHNlLCJhdWRpZW5jZV9maWVsZF9uYW1lIjoiUGhvbmUgTnVtYmVyIiwicGhvbmVmb3JtYXQiOiIiLCJlbmFibGVkIjpmYWxzZSwib3JkZXIiOm51bGwsImZpZWxkX3R5cGUiOiJtZXJnZSIsIm1lcmdlX2lkIjo0fSwiQklSVEhEQVkiOnsibmFtZSI6IkJJUlRIREFZIiwibGFiZWwiOiJCaXJ0aGRheSIsImhlbHBlcl90ZXh0IjoiIiwidHlwZSI6ImJpcnRoZGF5IiwicmVxdWlyZWQiOmZhbHNlLCJhdWRpZW5jZV9maWVsZF9uYW1lIjoiQmlydGhkYXkiLCJkYXRlZm9ybWF0IjoiTU0vREQiLCJlbmFibGVkIjpmYWxzZSwib3JkZXIiOm51bGwsImZpZWxkX3R5cGUiOiJtZXJnZSIsIm1lcmdlX2lkIjo1fSwiQ09NUEFOWSI6eyJuYW1lIjoiQ09NUEFOWSIsImxhYmVsIjoiQ29tcGFueSIsImhlbHBlcl90ZXh0IjoiIiwidHlwZSI6InRleHQiLCJyZXF1aXJlZCI6ZmFsc2UsImF1ZGllbmNlX2ZpZWxkX25hbWUiOiJDb21wYW55IiwiZW5hYmxlZCI6ZmFsc2UsIm9yZGVyIjpudWxsLCJmaWVsZF90eXBlIjoibWVyZ2UiLCJtZXJnZV9pZCI6Nn19KS5maW5kKGZ1bmN0aW9uKGYpIHsgcmV0dXJuIGYubmFtZSA9PT0gZmllbGROYW1lICYmIGYudHlwZSA9PT0gJ3Ntc3Bob25lJzsgfSk7CiAgICAgIHZhciBpc1JlcXVpcmVkID0gc21zRmllbGQgPyBzbXNGaWVsZC5yZXF1aXJlZCA6IGZhbHNlOwogICAgICB2YXIgc2hvdWxkQXBwZW5kQ291bnRyeUNvZGUgPSBzbXNOb3RSZXF1aXJlZFJlbW92ZUNvdW50cnlDb2RlRW5hYmxlZCA\/IGlzUmVxdWlyZWQgOiB0cnVlOwogICAgICAKICAgICAgdmFyIHBob25lSW5wdXQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjbWNlLScgKyBmaWVsZE5hbWUpOwogICAgICBpZiAocGhvbmVJbnB1dCAmJiBkZWZhdWx0UHJvZ3JhbS5jb3VudHJ5Q2FsbGluZ0NvZGUgJiYgc2hvdWxkQXBwZW5kQ291bnRyeUNvZGUpIHsKICAgICAgICBwaG9uZUlucHV0LnZhbHVlID0gZGVmYXVsdFByb2dyYW0uY291bnRyeUNhbGxpbmdDb2RlOwogICAgICB9CiAgICAgIAoKCiAgICAgIGRpc3BsYXlGbGFnPy5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKGUpIHsKICAgICAgICBkcm9wZG93bi5mb2N1cygpOwogICAgICB9KTsKCgogICAgICBkcm9wZG93bj8uYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgZnVuY3Rpb24oKSB7CiAgICAgICAgY29uc3Qgc2VsZWN0ZWRDb3VudHJ5ID0gdGhpcy52YWx1ZTsKICAgICAgICAKICAgICAgICBpZiAoIXNlbGVjdGVkQ291bnRyeSB8fCB0eXBlb2Ygc2VsZWN0ZWRDb3VudHJ5ICE9PSAnc3RyaW5nJykgewogICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICAKICAgICAgICBjb25zdCBmbGFnU3BhbiA9IGRpc3BsYXlGbGFnPy5xdWVyeVNlbGVjdG9yKCcjZmxhZy1lbW9qaS0nICsgZmllbGROYW1lKTsKICAgICAgICBpZiAoZmxhZ1NwYW4pIHsKICAgICAgICAgIGZsYWdTcGFuLnRleHRDb250ZW50ID0gZ2V0Q291bnRyeVVuaWNvZGVGbGFnKHNlbGVjdGVkQ291bnRyeSk7CiAgICAgICAgICBmbGFnU3Bhbi5zZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnLCBzYW5pdGl6ZUh0bWwoc2VsZWN0ZWRDb3VudHJ5KSArICcgZmxhZycpOwogICAgICAgIH0KCiAgICAgICAgIAogICAgICAgIGNvbnN0IHNlbGVjdGVkUHJvZ3JhbSA9IHdpbmRvdy5NQz8uc21zUGhvbmVEYXRhPy5wcm9ncmFtcy5maW5kKGZ1bmN0aW9uKHByb2dyYW0pIHsKICAgICAgICAgIHJldHVybiBwcm9ncmFtICYmIHByb2dyYW0uY291bnRyeUNvZGUgPT09IHNlbGVjdGVkQ291bnRyeTsKICAgICAgICB9KTsKCiAgICAgICAgdmFyIHNtc05vdFJlcXVpcmVkUmVtb3ZlQ291bnRyeUNvZGVFbmFibGVkID0gdHJ1ZTsKICAgICAgICB2YXIgc21zRmllbGQgPSBPYmplY3QudmFsdWVzKHsiRU1BSUwiOnsibmFtZSI6IkVNQUlMIiwibGFiZWwiOiJFbWFpbCBBZGRyZXNzIiwiaGVscGVyX3RleHQiOiIiLCJ0eXBlIjoiZW1haWwiLCJyZXF1aXJlZCI6dHJ1ZSwiYXVkaWVuY2VfZmllbGRfbmFtZSI6IkVtYWlsIEFkZHJlc3MiLCJtZXJnZV9pZCI6MCwiaGVscF90ZXh0X2VuYWJsZWQiOmZhbHNlLCJlbmFibGVkIjp0cnVlLCJvcmRlciI6MCwiZmllbGRfdHlwZSI6Im1lcmdlIn0sIkZOQU1FIjp7Im5hbWUiOiJGTkFNRSIsImxhYmVsIjoiRmlyc3QgTmFtZSIsImhlbHBlcl90ZXh0IjoiIiwidHlwZSI6InRleHQiLCJyZXF1aXJlZCI6ZmFsc2UsImF1ZGllbmNlX2ZpZWxkX25hbWUiOiJGaXJzdCBOYW1lIiwibWVyZ2VfaWQiOjEsImhlbHBfdGV4dF9lbmFibGVkIjpmYWxzZSwiZW5hYmxlZCI6dHJ1ZSwib3JkZXIiOjEsImZpZWxkX3R5cGUiOiJtZXJnZSJ9LCJMTkFNRSI6eyJuYW1lIjoiTE5BTUUiLCJsYWJlbCI6Ikxhc3QgTmFtZSIsImhlbHBlcl90ZXh0IjoiIiwidHlwZSI6InRleHQiLCJyZXF1aXJlZCI6ZmFsc2UsImF1ZGllbmNlX2ZpZWxkX25hbWUiOiJMYXN0IE5hbWUiLCJtZXJnZV9pZCI6MiwiaGVscF90ZXh0X2VuYWJsZWQiOmZhbHNlLCJlbmFibGVkIjp0cnVlLCJvcmRlciI6MiwiZmllbGRfdHlwZSI6Im1lcmdlIn0sIkFERFJFU1MiOnsibmFtZSI6IkFERFJFU1MiLCJsYWJlbCI6IkFkZHJlc3MiLCJoZWxwZXJfdGV4dCI6IiIsInR5cGUiOiJhZGRyZXNzIiwicmVxdWlyZWQiOmZhbHNlLCJhdWRpZW5jZV9maWVsZF9uYW1lIjoiQWRkcmVzcyIsImVuYWJsZWQiOmZhbHNlLCJvcmRlciI6bnVsbCwiZmllbGRfdHlwZSI6Im1lcmdlIiwibWVyZ2VfaWQiOjMsImNvdW50cmllcyI6eyIyIjoiQWxiYW5pYSIsIjMiOiJBbGdlcmlhIiwiNCI6IkFuZG9ycmEiLCI1IjoiQW5nb2xhIiwiNiI6IkFyZ2VudGluYSIsIjciOiJBcm1lbmlhIiwiOCI6IkF1c3RyYWxpYSIsIjkiOiJBdXN0cmlhIiwiMTAiOiJBemVyYmFpamFuIiwiMTEiOiJCYWhhbWFzIiwiMTIiOiJCYWhyYWluIiwiMTMiOiJCYW5nbGFkZXNoIiwiMTQiOiJCYXJiYWRvcyIsIjE1IjoiQmVsYXJ1cyIsIjE2IjoiQmVsZ2l1bSIsIjE3IjoiQmVsaXplIiwiMTgiOiJCZW5pbiIsIjE5IjoiQmVybXVkYSIsIjIwIjoiQmh1dGFuIiwiMjEiOiJCb2xpdmlhIiwiMjIiOiJCb3NuaWEgYW5kIEhlcnplZ292aW5hIiwiMjMiOiJCb3Rzd2FuYSIsIjI0IjoiQnJhemlsIiwiMjUiOiJCdWxnYXJpYSIsIjI2IjoiQnVya2luYSBGYXNvIiwiMjciOiJCdXJ1bmRpIiwiMjgiOiJDYW1ib2RpYSIsIjI5IjoiQ2FtZXJvb24iLCIzMCI6IkNhbmFkYSIsIjMxIjoiQ2FwZSBWZXJkZSIsIjMyIjoiQ2F5bWFuIElzbGFuZHMiLCIzMyI6IkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpYyIsIjM0IjoiQ2hhZCIsIjM1IjoiQ2hpbGUiLCIzNiI6IkNoaW5hIiwiMzciOiJDb2xvbWJpYSIsIjM4IjoiQ29uZ28iLCI0MCI6IkNyb2F0aWEiLCI0MSI6IkN5cHJ1cyIsIjQyIjoiQ3plY2ggUmVwdWJsaWMiLCI0MyI6IkRlbm1hcmsiLCI0NCI6IkRqaWJvdXRpIiwiNDUiOiJFY3VhZG9yIiwiNDYiOiJFZ3lwdCIsIjQ3IjoiRWwgU2FsdmFkb3IiLCI0OCI6IkVxdWF0b3JpYWwgR3VpbmVhIiwiNDkiOiJFcml0cmVhIiwiNTAiOiJFc3RvbmlhIiwiNTEiOiJFdGhpb3BpYSIsIjUyIjoiRmlqaSIsIjUzIjoiRmlubGFuZCIsIjU0IjoiRnJhbmNlIiwiNTYiOiJHYWJvbiIsIjU3IjoiR2FtYmlhIiwiNTgiOiJHZW9yZ2lhIiwiNTkiOiJHZXJtYW55IiwiNjAiOiJHaGFuYSIsIjYxIjoiR3JlZWNlIiwiNjIiOiJHdWFtIiwiNjMiOiJHdWluZWEiLCI2NCI6Ikd1aW5lYS1CaXNzYXUiLCI2NSI6Ikd1eWFuYSIsIjY2IjoiSG9uZHVyYXMiLCI2NyI6IkhvbmcgS29uZyIsIjY4IjoiSHVuZ2FyeSIsIjY5IjoiSWNlbGFuZCIsIjcwIjoiSW5kaWEiLCI3MSI6IkluZG9uZXNpYSIsIjc0IjoiSXJlbGFuZCIsIjc1IjoiSXNyYWVsIiwiNzYiOiJJdGFseSIsIjc4IjoiSmFwYW4iLCI3OSI6IkpvcmRhbiIsIjgwIjoiS2F6YWtoc3RhbiIsIjgxIjoiS2VueWEiLCI4MiI6Ikt1d2FpdCIsIjgzIjoiS3lyZ3l6c3RhbiIsIjg0IjoiTGFvIFBlb3BsZSdzIERlbW9jcmF0aWMgUmVwdWJsaWMiLCI4NSI6IkxhdHZpYSIsIjg2IjoiTGViYW5vbiIsIjg3IjoiTGVzb3RobyIsIjg4IjoiTGliZXJpYSIsIjkwIjoiTGllY2h0ZW5zdGVpbiIsIjkxIjoiTGl0aHVhbmlhIiwiOTIiOiJMdXhlbWJvdXJnIiwiOTMiOiJNYWNlZG9uaWEiLCI5NCI6Ik1hZGFnYXNjYXIiLCI5NSI6Ik1hbGF3aSIsIjk2IjoiTWFsYXlzaWEiLCI5NyI6Ik1hbGRpdmVzIiwiOTgiOiJNYWxpIiwiOTkiOiJNYWx0YSIsIjEwMCI6Ik1hdXJpdGFuaWEiLCIxMDEiOiJNZXhpY28iLCIxMDIiOiJNb2xkb3ZhIiwiMTAzIjoiTW9uYWNvIiwiMTA0IjoiTW9uZ29saWEiLCIxMDUiOiJNb3JvY2NvIiwiMTA2IjoiTW96YW1iaXF1ZSIsIjEwNyI6Ik5hbWliaWEiLCIxMDgiOiJOZXBhbCIsIjEwOSI6Ik5ldGhlcmxhbmRzIiwiMTEwIjoiTmV0aGVybGFuZHMgQW50aWxsZXMiLCIxMTEiOiJOZXcgWmVhbGFuZCIsIjExMiI6Ik5pY2FyYWd1YSIsIjExMyI6Ik5pZ2VyIiwiMTE0IjoiTmlnZXJpYSIsIjExNiI6Ik5vcndheSIsIjExNyI6Ik9tYW4iLCIxMTgiOiJQYWtpc3RhbiIsIjExOSI6IlBhbmFtYSIsIjEyMCI6IlBhcmFndWF5IiwiMTIxIjoiUGVydSIsIjEyMiI6IlBoaWxpcHBpbmVzIiwiMTIzIjoiUG9sYW5kIiwiMTI0IjoiUG9ydHVnYWwiLCIxMjYiOiJRYXRhciIsIjEyNyI6IlJldW5pb24iLCIxMjgiOiJSb21hbmlhIiwiMTI5IjoiUnVzc2lhIiwiMTMwIjoiUndhbmRhIiwiMTMyIjoiU2Ftb2EgKEluZGVwZW5kZW50KSIsIjEzMyI6IlNhdWRpIEFyYWJpYSIsIjEzNCI6IlNlbmVnYWwiLCIxMzUiOiJTZXljaGVsbGVzIiwiMTM2IjoiU2llcnJhIExlb25lIiwiMTM3IjoiU2luZ2Fwb3JlIiwiMTM4IjoiU2xvdmFraWEiLCIxMzkiOiJTbG92ZW5pYSIsIjE0MCI6IlNvbWFsaWEiLCIxNDEiOiJTb3V0aCBBZnJpY2EiLCIxNDIiOiJTb3V0aCBLb3JlYSIsIjE0MyI6IlNwYWluIiwiMTQ0IjoiU3JpIExhbmthIiwiMTQ2IjoiU3VyaW5hbWUiLCIxNDciOiJTd2F6aWxhbmQiLCIxNDgiOiJTd2VkZW4iLCIxNDkiOiJTd2l0emVybGFuZCIsIjE1MiI6IlRhaXdhbiIsIjE1MyI6IlRhbnphbmlhIiwiMTU0IjoiVGhhaWxhbmQiLCIxNTUiOiJUb2dvIiwiMTU2IjoiVHVuaXNpYSIsIjE1NyI6IlR1cmtpeWUiLCIxNTgiOiJUdXJrbWVuaXN0YW4iLCIxNTkiOiJVZ2FuZGEiLCIxNjEiOiJVa3JhaW5lIiwiMTYyIjoiVW5pdGVkIEFyYWIgRW1pcmF0ZXMiLCIxNjMiOiJVcnVndWF5IiwiMTY0IjoiVVNBIiwiMTY1IjoiVXpiZWtpc3RhbiIsIjE2NiI6IlZhdGljYW4gQ2l0eSBTdGF0ZSAoSG9seSBTZWUpIiwiMTY3IjoiVmVuZXp1ZWxhIiwiMTY4IjoiVmlldG5hbSIsIjE2OSI6IlZpcmdpbiBJc2xhbmRzIChCcml0aXNoKSIsIjE3MCI6IlllbWVuIiwiMTczIjoiWmFtYmlhIiwiMTc0IjoiWmltYmFid2UiLCIxNzUiOiJBbnRpZ3VhIEFuZCBCYXJidWRhIiwiMTc2IjoiQW5ndWlsbGEiLCIxNzgiOiJBbWVyaWNhbiBTYW1vYSIsIjE3OSI6IkFydWJhIiwiMTgwIjoiQnJ1bmVpIERhcnVzc2FsYW0iLCIxODEiOiJCb3V2ZXQgSXNsYW5kIiwiMTgzIjoiQ29vayBJc2xhbmRzIiwiMTg1IjoiQ2hyaXN0bWFzIElzbGFuZCIsIjE4NyI6IkRvbWluaWNhbiBSZXB1YmxpYyIsIjE4OCI6Ildlc3Rlcm4gU2FoYXJhIiwiMTg5IjoiRmFsa2xhbmQgSXNsYW5kcyIsIjE5MSI6IkZhcm9lIElzbGFuZHMiLCIxOTIiOiJHcmVuYWRhIiwiMTkzIjoiRnJlbmNoIEd1aWFuYSIsIjE5NCI6IkdpYnJhbHRhciIsIjE5NSI6IkdyZWVubGFuZCIsIjE5NiI6Ikd1YWRlbG91cGUiLCIxOTgiOiJHdWF0ZW1hbGEiLCIyMDAiOiJIYWl0aSIsIjIwMiI6IkphbWFpY2EiLCIyMDMiOiJLaXJpYmF0aSIsIjIwNCI6IkNvbW9yb3MiLCIyMDUiOiJTYWludCBLaXR0cyBhbmQgTmV2aXMiLCIyMDYiOiJTYWludCBMdWNpYSIsIjIwNyI6Ik1hcnNoYWxsIElzbGFuZHMiLCIyMDgiOiJNYWNhdSIsIjIxMCI6Ik1hcnRpbmlxdWUiLCIyMTIiOiJNYXVyaXRpdXMiLCIyMTMiOiJOZXcgQ2FsZWRvbmlhIiwiMjE0IjoiTm9yZm9sayBJc2xhbmQiLCIyMTUiOiJOYXVydSIsIjIxNyI6Ik5pdWUiLCIyMTkiOiJQYXB1YSBOZXcgR3VpbmVhIiwiMjIxIjoiUGl0Y2Fpcm4iLCIyMjIiOiJQYWxhdSIsIjIyMyI6IlNvbG9tb24gSXNsYW5kcyIsIjIyNSI6IlN2YWxiYXJkIGFuZCBKYW4gTWF5ZW4gSXNsYW5kcyIsIjIyNyI6IlNhbiBNYXJpbm8iLCIyMzIiOiJUb25nYSIsIjIzMyI6IlRpbW9yLUxlc3RlIiwiMjM0IjoiVHJpbmlkYWQgYW5kIFRvYmFnbyIsIjIzNSI6IlR1dmFsdSIsIjIzNyI6IlNhaW50IFZpbmNlbnQgYW5kIHRoZSBHcmVuYWRpbmVzIiwiMjM4IjoiVmlyZ2luIElzbGFuZHMgKFUuUy4pIiwiMjM5IjoiVmFudWF0dSIsIjI0MSI6Ik1heW90dGUiLCIyNDIiOiJNeWFubWFyIiwiMjU1IjoiU2FvIFRvbWUgYW5kIFByaW5jaXBlIiwiMjU3IjoiU291dGggR2VvcmdpYSBhbmQgdGhlIFNvdXRoIFNhbmR3aWNoIElzbGFuZHMiLCIyNjAiOiJUYWppa2lzdGFuIiwiMjYyIjoiVW5pdGVkIEtpbmdkb20iLCIyNjgiOiJDb3N0YSBSaWNhIiwiMjcwIjoiR3Vlcm5zZXkiLCIyNzIiOiJOb3J0aCBLb3JlYSIsIjI3NCI6IkFmZ2hhbmlzdGFuIiwiMjc1IjoiQ290ZSBEJ0l2b2lyZSIsIjI3NiI6IkN1YmEiLCIyNzciOiJGcmVuY2ggUG9seW5lc2lhIiwiMjc4IjoiSXJhbiIsIjI3OSI6IklyYXEiLCIyODEiOiJMaWJ5YSIsIjI4MiI6IlBhbGVzdGluZSIsIjI4NSI6IlN5cmlhIiwiMjg2IjoiQWFsYW5kIElzbGFuZHMiLCIyODciOiJUdXJrcyAmIENhaWNvcyBJc2xhbmRzIiwiMjg4IjoiSmVyc2V5ICAoQ2hhbm5lbCBJc2xhbmRzKSIsIjI4OSI6IkRvbWluaWNhIiwiMjkwIjoiTW9udGVuZWdybyIsIjI5MyI6IlN1ZGFuIiwiMjk0IjoiTW9udHNlcnJhdCIsIjI5OCI6IkN1cmFjYW8iLCIzMDIiOiJTaW50IE1hYXJ0ZW4iLCIzMTEiOiJTb3V0aCBTdWRhbiIsIjMxNSI6IlJlcHVibGljIG9mIEtvc292byIsIjMxOCI6IkNvbmdvLCBEZW1vY3JhdGljIFJlcHVibGljIG9mIHRoZSIsIjMyMyI6IklzbGUgb2YgTWFuIiwiMzI0IjoiU2FpbnQgTWFydGluIiwiMzI1IjoiQm9uYWlyZSwgU2FpbnQgRXVzdGF0aXVzIGFuZCBTYWJhIiwiMzI2IjoiU2VyYmlhIn0sImRlZmF1bHRjb3VudHJ5IjoxNjR9LCJQSE9ORSI6eyJuYW1lIjoiUEhPTkUiLCJsYWJlbCI6IlBob25lIE51bWJlciIsImhlbHBlcl90ZXh0IjoiIiwidHlwZSI6InBob25lIiwicmVxdWlyZWQiOmZhbHNlLCJhdWRpZW5jZV9maWVsZF9uYW1lIjoiUGhvbmUgTnVtYmVyIiwicGhvbmVmb3JtYXQiOiIiLCJlbmFibGVkIjpmYWxzZSwib3JkZXIiOm51bGwsImZpZWxkX3R5cGUiOiJtZXJnZSIsIm1lcmdlX2lkIjo0fSwiQklSVEhEQVkiOnsibmFtZSI6IkJJUlRIREFZIiwibGFiZWwiOiJCaXJ0aGRheSIsImhlbHBlcl90ZXh0IjoiIiwidHlwZSI6ImJpcnRoZGF5IiwicmVxdWlyZWQiOmZhbHNlLCJhdWRpZW5jZV9maWVsZF9uYW1lIjoiQmlydGhkYXkiLCJkYXRlZm9ybWF0IjoiTU0vREQiLCJlbmFibGVkIjpmYWxzZSwib3JkZXIiOm51bGwsImZpZWxkX3R5cGUiOiJtZXJnZSIsIm1lcmdlX2lkIjo1fSwiQ09NUEFOWSI6eyJuYW1lIjoiQ09NUEFOWSIsImxhYmVsIjoiQ29tcGFueSIsImhlbHBlcl90ZXh0IjoiIiwidHlwZSI6InRleHQiLCJyZXF1aXJlZCI6ZmFsc2UsImF1ZGllbmNlX2ZpZWxkX25hbWUiOiJDb21wYW55IiwiZW5hYmxlZCI6ZmFsc2UsIm9yZGVyIjpudWxsLCJmaWVsZF90eXBlIjoibWVyZ2UiLCJtZXJnZV9pZCI6Nn19KS5maW5kKGZ1bmN0aW9uKGYpIHsgcmV0dXJuIGYubmFtZSA9PT0gZmllbGROYW1lICYmIGYudHlwZSA9PT0gJ3Ntc3Bob25lJzsgfSk7CiAgICAgICAgdmFyIGlzUmVxdWlyZWQgPSBzbXNGaWVsZCA\/IHNtc0ZpZWxkLnJlcXVpcmVkIDogZmFsc2U7CiAgICAgICAgdmFyIHNob3VsZEFwcGVuZENvdW50cnlDb2RlID0gc21zTm90UmVxdWlyZWRSZW1vdmVDb3VudHJ5Q29kZUVuYWJsZWQgPyBpc1JlcXVpcmVkIDogdHJ1ZTsKICAgICAgICAKICAgICAgICB2YXIgcGhvbmVJbnB1dCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJyNtY2UtJyArIGZpZWxkTmFtZSk7CiAgICAgICAgaWYgKHBob25lSW5wdXQgJiYgc2VsZWN0ZWRQcm9ncmFtLmNvdW50cnlDYWxsaW5nQ29kZSAmJiBzaG91bGRBcHBlbmRDb3VudHJ5Q29kZSkgewogICAgICAgICAgcGhvbmVJbnB1dC52YWx1ZSA9IHNlbGVjdGVkUHJvZ3JhbS5jb3VudHJ5Q2FsbGluZ0NvZGU7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIAogICAgICAgIHVwZGF0ZVNtc0xlZ2FsVGV4dChzZWxlY3RlZENvdW50cnksIGZpZWxkTmFtZSk7CiAgICAgICAgdXBkYXRlUGxhY2Vob2xkZXIoc2VsZWN0ZWRDb3VudHJ5LCBmaWVsZE5hbWUpOwogICAgICAgIHVwZGF0ZUNvdW50cnlDb2RlSW5zdHJ1Y3Rpb24oc2VsZWN0ZWRDb3VudHJ5LCBmaWVsZE5hbWUpOwogICAgICB9KTsKICAgIH0KCiAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgZnVuY3Rpb24oKSB7CiAgICAgIGNvbnN0IHNtc1Bob25lRmllbGRzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnW2lkXj0iY291bnRyeS1zZWxlY3QtIl0nKTsKICAgICAgCiAgICAgIHNtc1Bob25lRmllbGRzLmZvckVhY2goZnVuY3Rpb24oZHJvcGRvd24pIHsKICAgICAgICBjb25zdCBmaWVsZE5hbWUgPSBkcm9wZG93bj8uaWQucmVwbGFjZSgnY291bnRyeS1zZWxlY3QtJywgJycpOwogICAgICAgIGluaXRpYWxpemVTbXNQaG9uZURyb3Bkb3duKGZpZWxkTmFtZSk7CiAgICAgIH0pOwogICAgfSk7CiAgICA8L3NjcmlwdD48L2Rpdj4KPC9kaXY+[\/vc_raw_html][\/vc_column][vc_column column_padding=&#8221;no-extra-padding&#8221; column_padding_tablet=&#8221;inherit&#8221; column_padding_phone=&#8221;inherit&#8221; column_padding_position=&#8221;all&#8221; column_element_direction_desktop=&#8221;horizontal&#8221; column_element_alignment=&#8221;center&#8221; column_element_spacing=&#8221;default&#8221; desktop_text_alignment=&#8221;default&#8221; tablet_text_alignment=&#8221;default&#8221; phone_text_alignment=&#8221;default&#8221; background_color_opacity=&#8221;1&#8243; background_hover_color_opacity=&#8221;1&#8243; column_backdrop_filter=&#8221;none&#8221; column_shadow=&#8221;none&#8221; column_border_radius=&#8221;none&#8221; column_link_target=&#8221;_self&#8221; column_position=&#8221;default&#8221; gradient_direction=&#8221;left_to_right&#8221; overlay_strength=&#8221;0.3&#8243; width=&#8221;1\/3&#8243; tablet_width_inherit=&#8221;default&#8221; animation_type=&#8221;default&#8221; bg_image_animation=&#8221;none&#8221; border_type=&#8221;simple&#8221; column_border_width=&#8221;none&#8221; column_border_style=&#8221;solid&#8221; column_padding_type=&#8221;default&#8221; content_layout=&#8221;default&#8221; gradient_type=&#8221;default&#8221;][\/vc_column][\/vc_row]\n","protected":false},"excerpt":{"rendered":"<p>[vc_row type=&#8221;in_container&#8221; full_screen_row_position=&#8221;middle&#8221; column_margin=&#8221;default&#8221; column_direction=&#8221;default&#8221; column_direction_tablet=&#8221;default&#8221; column_direction_phone=&#8221;default&#8221; scene_position=&#8221;center&#8221; bottom_padding=&#8221;50&#8243; text_color=&#8221;dark&#8221; text_align=&#8221;left&#8221; row_border_radius=&#8221;none&#8221; row_border_radius_applies=&#8221;bg&#8221; row_position_desktop=&#8221;default&#8221; row_position_tablet=&#8221;inherit&#8221; row_position_phone=&#8221;inherit&#8221; overflow=&#8221;visible&#8221; overlay_strength=&#8221;0.3&#8243; gradient_direction=&#8221;left_to_right&#8221; shape_divider_position=&#8221;bottom&#8221; bg_image_animation=&#8221;none&#8221; gradient_type=&#8221;default&#8221; shape_type=&#8221;&#8221;][vc_column column_padding=&#8221;no-extra-padding&#8221; column_padding_tablet=&#8221;inherit&#8221; column_padding_phone=&#8221;inherit&#8221; column_padding_position=&#8221;all&#8221; column_element_direction_desktop=&#8221;horizontal&#8221; column_element_alignment=&#8221;center&#8221; column_element_spacing=&#8221;default&#8221;&#8230;<\/p>\n","protected":false},"author":1,"featured_media":281,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-352","page","type-page","status-publish","has-post-thumbnail"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Newsletter &#187; ROKE.CC<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/roke.cc\/newsletter\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Newsletter &#187; ROKE.CC\" \/>\n<meta property=\"og:description\" content=\"[vc_row type=&#8221;in_container&#8221; full_screen_row_position=&#8221;middle&#8221; column_margin=&#8221;default&#8221; column_direction=&#8221;default&#8221; column_direction_tablet=&#8221;default&#8221; column_direction_phone=&#8221;default&#8221; scene_position=&#8221;center&#8221; bottom_padding=&#8221;50&#8243; text_color=&#8221;dark&#8221; text_align=&#8221;left&#8221; row_border_radius=&#8221;none&#8221; row_border_radius_applies=&#8221;bg&#8221; row_position_desktop=&#8221;default&#8221; row_position_tablet=&#8221;inherit&#8221; row_position_phone=&#8221;inherit&#8221; overflow=&#8221;visible&#8221; overlay_strength=&#8221;0.3&#8243; gradient_direction=&#8221;left_to_right&#8221; shape_divider_position=&#8221;bottom&#8221; bg_image_animation=&#8221;none&#8221; gradient_type=&#8221;default&#8221; shape_type=&#8221;&#8221;][vc_column column_padding=&#8221;no-extra-padding&#8221; column_padding_tablet=&#8221;inherit&#8221; column_padding_phone=&#8221;inherit&#8221; column_padding_position=&#8221;all&#8221; column_element_direction_desktop=&#8221;horizontal&#8221; column_element_alignment=&#8221;center&#8221; column_element_spacing=&#8221;default&#8221;...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/roke.cc\/newsletter\/\" \/>\n<meta property=\"og:site_name\" content=\"ROKE.CC\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/share\/1E72giVkXf\/?mibextid=wwXIfr\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-31T13:50:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/roke.cc\/wp-content\/uploads\/2026\/03\/Screenshot-2026-03-30-at-14.38.21-scaled.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1083\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/roke.cc\\\/newsletter\\\/\",\"url\":\"https:\\\/\\\/roke.cc\\\/newsletter\\\/\",\"name\":\"Newsletter &#187; ROKE.CC\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/roke.cc\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/roke.cc\\\/newsletter\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/roke.cc\\\/newsletter\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/roke.cc\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/Screenshot-2026-03-30-at-14.38.21-scaled.webp\",\"datePublished\":\"2026-03-17T12:22:08+00:00\",\"dateModified\":\"2026-03-31T13:50:11+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/roke.cc\\\/newsletter\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/roke.cc\\\/newsletter\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/roke.cc\\\/newsletter\\\/#primaryimage\",\"url\":\"https:\\\/\\\/roke.cc\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/Screenshot-2026-03-30-at-14.38.21-scaled.webp\",\"contentUrl\":\"https:\\\/\\\/roke.cc\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/Screenshot-2026-03-30-at-14.38.21-scaled.webp\",\"width\":2560,\"height\":1083},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/roke.cc\\\/newsletter\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/roke.cc\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Newsletter\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/roke.cc\\\/#website\",\"url\":\"https:\\\/\\\/roke.cc\\\/\",\"name\":\"Camera de Comer\u021b Rom\u00e2nia \u2013 Kenya\",\"description\":\"Kenya, the key to Africa!\",\"publisher\":{\"@id\":\"https:\\\/\\\/roke.cc\\\/#organization\"},\"alternateName\":\"ROKE.CC\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/roke.cc\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/roke.cc\\\/#organization\",\"name\":\"Camera de Comer\u021b Rom\u00e2nia \u2013 Kenya\",\"url\":\"https:\\\/\\\/roke.cc\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/roke.cc\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/roke.cc\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/ROKECC-en.png\",\"contentUrl\":\"https:\\\/\\\/roke.cc\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/ROKECC-en.png\",\"width\":859,\"height\":359,\"caption\":\"Camera de Comer\u021b Rom\u00e2nia \u2013 Kenya\"},\"image\":{\"@id\":\"https:\\\/\\\/roke.cc\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/share\\\/1E72giVkXf\\\/?mibextid=wwXIfr\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/romania-kenya-chamber-of-commerce-rokecc\\\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Newsletter &#187; ROKE.CC","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/roke.cc\/newsletter\/","og_locale":"en_US","og_type":"article","og_title":"Newsletter &#187; ROKE.CC","og_description":"[vc_row type=&#8221;in_container&#8221; full_screen_row_position=&#8221;middle&#8221; column_margin=&#8221;default&#8221; column_direction=&#8221;default&#8221; column_direction_tablet=&#8221;default&#8221; column_direction_phone=&#8221;default&#8221; scene_position=&#8221;center&#8221; bottom_padding=&#8221;50&#8243; text_color=&#8221;dark&#8221; text_align=&#8221;left&#8221; row_border_radius=&#8221;none&#8221; row_border_radius_applies=&#8221;bg&#8221; row_position_desktop=&#8221;default&#8221; row_position_tablet=&#8221;inherit&#8221; row_position_phone=&#8221;inherit&#8221; overflow=&#8221;visible&#8221; overlay_strength=&#8221;0.3&#8243; gradient_direction=&#8221;left_to_right&#8221; shape_divider_position=&#8221;bottom&#8221; bg_image_animation=&#8221;none&#8221; gradient_type=&#8221;default&#8221; shape_type=&#8221;&#8221;][vc_column column_padding=&#8221;no-extra-padding&#8221; column_padding_tablet=&#8221;inherit&#8221; column_padding_phone=&#8221;inherit&#8221; column_padding_position=&#8221;all&#8221; column_element_direction_desktop=&#8221;horizontal&#8221; column_element_alignment=&#8221;center&#8221; column_element_spacing=&#8221;default&#8221;...","og_url":"https:\/\/roke.cc\/newsletter\/","og_site_name":"ROKE.CC","article_publisher":"https:\/\/www.facebook.com\/share\/1E72giVkXf\/?mibextid=wwXIfr","article_modified_time":"2026-03-31T13:50:11+00:00","og_image":[{"width":2560,"height":1083,"url":"https:\/\/roke.cc\/wp-content\/uploads\/2026\/03\/Screenshot-2026-03-30-at-14.38.21-scaled.webp","type":"image\/webp"}],"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/roke.cc\/newsletter\/","url":"https:\/\/roke.cc\/newsletter\/","name":"Newsletter &#187; ROKE.CC","isPartOf":{"@id":"https:\/\/roke.cc\/#website"},"primaryImageOfPage":{"@id":"https:\/\/roke.cc\/newsletter\/#primaryimage"},"image":{"@id":"https:\/\/roke.cc\/newsletter\/#primaryimage"},"thumbnailUrl":"https:\/\/roke.cc\/wp-content\/uploads\/2026\/03\/Screenshot-2026-03-30-at-14.38.21-scaled.webp","datePublished":"2026-03-17T12:22:08+00:00","dateModified":"2026-03-31T13:50:11+00:00","breadcrumb":{"@id":"https:\/\/roke.cc\/newsletter\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/roke.cc\/newsletter\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/roke.cc\/newsletter\/#primaryimage","url":"https:\/\/roke.cc\/wp-content\/uploads\/2026\/03\/Screenshot-2026-03-30-at-14.38.21-scaled.webp","contentUrl":"https:\/\/roke.cc\/wp-content\/uploads\/2026\/03\/Screenshot-2026-03-30-at-14.38.21-scaled.webp","width":2560,"height":1083},{"@type":"BreadcrumbList","@id":"https:\/\/roke.cc\/newsletter\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/roke.cc\/en\/"},{"@type":"ListItem","position":2,"name":"Newsletter"}]},{"@type":"WebSite","@id":"https:\/\/roke.cc\/#website","url":"https:\/\/roke.cc\/","name":"Camera de Comer\u021b Rom\u00e2nia \u2013 Kenya","description":"Kenya, the key to Africa!","publisher":{"@id":"https:\/\/roke.cc\/#organization"},"alternateName":"ROKE.CC","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/roke.cc\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/roke.cc\/#organization","name":"Camera de Comer\u021b Rom\u00e2nia \u2013 Kenya","url":"https:\/\/roke.cc\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/roke.cc\/#\/schema\/logo\/image\/","url":"https:\/\/roke.cc\/wp-content\/uploads\/2026\/03\/ROKECC-en.png","contentUrl":"https:\/\/roke.cc\/wp-content\/uploads\/2026\/03\/ROKECC-en.png","width":859,"height":359,"caption":"Camera de Comer\u021b Rom\u00e2nia \u2013 Kenya"},"image":{"@id":"https:\/\/roke.cc\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/share\/1E72giVkXf\/?mibextid=wwXIfr","https:\/\/www.linkedin.com\/company\/romania-kenya-chamber-of-commerce-rokecc\/"]}]}},"_links":{"self":[{"href":"https:\/\/roke.cc\/en\/wp-json\/wp\/v2\/pages\/352","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/roke.cc\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/roke.cc\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/roke.cc\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/roke.cc\/en\/wp-json\/wp\/v2\/comments?post=352"}],"version-history":[{"count":6,"href":"https:\/\/roke.cc\/en\/wp-json\/wp\/v2\/pages\/352\/revisions"}],"predecessor-version":[{"id":460,"href":"https:\/\/roke.cc\/en\/wp-json\/wp\/v2\/pages\/352\/revisions\/460"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/roke.cc\/en\/wp-json\/wp\/v2\/media\/281"}],"wp:attachment":[{"href":"https:\/\/roke.cc\/en\/wp-json\/wp\/v2\/media?parent=352"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}