Na poskytovanie tých najlepších skúsenost9nZXRWZXJzaW9uKHVhLCJNU0lFICIpOl9nZXRWZXJzaW9uKHVhLCJydjoiKX1lbHNlIGlmKGJyb3dzZXI9PT0iU2FmYXJpIil7cmV0dXJuIF9nZXRWZXJzaW9uKHVhLCJWZXJzaW9uLyIpfWVsc2UgaWYoYnJvd3Nlcj09PSJXZWJLaXQiKXtyZXR1cm4gX2dldFZlcnNpb24odWEsIldlYktpdC8iKX0KcmV0dXJuIjAuMC4wIn0KZnVuY3Rpb24gX2dldFZlcnNpb24odWEsdG9rZW4pe3RyeXtyZXR1cm4gX25vcm1hbGl6ZVNlbXZlclN0cmluZyh1YS5zcGxpdCh0b2tlbilbMV0udHJpbSgpLnNwbGl0KC9bXlx3XC5dLylbMF0pfWNhdGNoKG9fTyl7fQpyZXR1cm4iMC4wLjAifQpmdW5jdGlvbiBfbm9ybWFsaXplU2VtdmVyU3RyaW5nKHZlcnNpb24pe2NvbnN0IGFyeT12ZXJzaW9uLnNwbGl0KC9bXC5fXS8pO3JldHVybihwYXJzZUludChhcnlbMF0sMTApfHwwKSsiLiIrKHBhcnNlSW50KGFyeVsxXSwxMCl8fDApKyIuIisocGFyc2VJbnQoYXJ5WzJdLDEwKXx8MCl9CmZ1bmN0aW9uIF9pc1dlYlZpZXcodWEsb3MsYnJvd3Nlcix2ZXJzaW9uLG9wdGlvbnMpe3N3aXRjaChvcyticm93c2VyKXtjYXNlICJpT1NTYWZhcmkiOnJldHVybiExO2Nhc2UgImlPU1dlYktpdCI6cmV0dXJuIF9pc1dlYlZpZXdfaU9TKG9wdGlvbnMpO2Nhc2UgIkFuZHJvaWRBT1NQIjpyZXR1cm4hMTtjYXNlICJBbmRyb2lkQ2hyb21lIjpyZXR1cm4gcGFyc2VGbG9hdCh2ZXJzaW9uKT49NDI/Lzt3di8udGVzdCh1YSk6L1xkezJ9XC4wXC4wLy50ZXN0KHZlcnNpb24pPyEwOl9pc1dlYlZpZXdfQW5kcm9pZChvcHRpb25zKX0KcmV0dXJuITF9CmZ1bmN0aW9uIF9pc1dlYlZpZXdfaU9TKG9wdGlvbnMpe2NvbnN0IGRvY3VtZW50PSh3aW5kb3cuZG9jdW1lbnR8fHt9KTtpZigiV0VCX1ZJRVciIGluIG9wdGlvbnMpe3JldHVybiBvcHRpb25zLldFQl9WSUVXfQpyZXR1cm4hKCJmdWxsc2NyZWVuRW5hYmxlZCIgaW4gZG9jdW1lbnR8fCJ3ZWJraXRGdWxsc2NyZWVuRW5hYmxlZCIgaW4gZG9jdW1lbnR8fCExKX0KZnVuY3Rpb24gX2lzV2ViVmlld19BbmRyb2lkKG9wdGlvbnMpe2lmKCJXRUJfVklFVyIgaW4gb3B0aW9ucyl7cmV0dXJuIG9wdGlvbnMuV0VCX1ZJRVd9CnJldHVybiEoInJlcXVlc3RGaWxlU3lzdGVtIiBpbiB3aW5kb3d8fCJ3ZWJraXRSZXF1ZXN0RmlsZVN5c3RlbSIgaW4gd2luZG93fHwhMSl9CmNvbnN0IG9wdGlvbnM9e30sbmF2PXdpbmRvdy5uYXZpZ2F0b3J8fHt9LHVhPW5hdi51c2VyQWdlbnR8fCIiLG9zPV9kZXRlY3RPUyh1YSksYnJvd3Nlcj1fZGV0ZWN0QnJvd3Nlcih1YSksYnJvd3NlclZlcnNpb249X2RldGVjdEJyb3dzZXJWZXJzaW9uKHVhLGJyb3dzZXIpO2lzV2ViVmlldz1faXNXZWJWaWV3KHVhLG9zLGJyb3dzZXIsYnJvd3NlclZlcnNpb24sb3B0aW9ucyl9CnJldHVybiBpc1dlYlZpZXd9CmZ1bmN0aW9uIGlzQWxsb3dlZFdlYlZpZXdGb3JVc2VyQWdlbnQocHJvdmlkZXIpe2NvbnN0IGZhY2Vib29rQWxsb3dlZFdlYlZpZXdzPVsnSW5zdGFncmFtJywnRkJBVicsJ0ZCQU4nXTtsZXQgd2hpdGVsaXN0PVtdO2lmKHByb3ZpZGVyJiZwcm92aWRlcj09PSdmYWNlYm9vaycpe3doaXRlbGlzdD1mYWNlYm9va0FsbG93ZWRXZWJWaWV3c30KY29uc3QgbmF2PXdpbmRvdy5uYXZpZ2F0b3J8fHt9LHVhPW5hdi51c2VyQWdlbnR8fCIiO2lmKHdoaXRlbGlzdC5sZW5ndGgmJnVhLm1hdGNoKG5ldyBSZWdFeHAod2hpdGVsaXN0LmpvaW4oJ3wnKSkpKXtyZXR1cm4hMH0KcmV0dXJuITF9CmZ1bmN0aW9uIGRpc2FibGVCdXR0b25JbldlYlZpZXcocHJvdmlkZXJCdXR0b25FbGVtZW50KXtpZihwcm92aWRlckJ1dHRvbkVsZW1lbnQpe3Byb3ZpZGVyQnV0dG9uRWxlbWVudC5jbGFzc0xpc3QuYWRkKCduc2wtZGlzYWJsZWQtcHJvdmlkZXInKTtwcm92aWRlckJ1dHRvbkVsZW1lbnQuc2V0QXR0cmlidXRlKCdocmVmJywnIycpO3Byb3ZpZGVyQnV0dG9uRWxlbWVudC5hZGRFdmVudExpc3RlbmVyKCdwb2ludGVyZG93bicsKGUpPT57aWYoIXdpbmRvdy5fbnNsV2ViVmlld05vdGljZUVsZW1lbnQpe3dpbmRvdy5fbnNsV2ViVmlld05vdGljZUVsZW1lbnQ9ZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7d2luZG93Ll9uc2xXZWJWaWV3Tm90aWNlRWxlbWVudC5pZD0ibnNsLW5vdGljZXMtZmFsbGJhY2siO3dpbmRvdy5fbnNsV2ViVmlld05vdGljZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcigncG9pbnRlcmRvd24nLGZ1bmN0aW9uKGUpe3RoaXMucGFyZW50Tm9kZS5yZW1vdmVDaGlsZCh0aGlzKTt3aW5kb3cuX25zbFdlYlZpZXdOb3RpY2VFbGVtZW50PW51bGx9KTtjb25zdCB3ZWJ2aWV3Tm90aWNlSFRNTD0nPGRpdiBjbGFzcz0iZXJyb3IiPjxwPicrc2NyaXB0T3B0aW9ucy5fbG9jYWxpemVkU3RyaW5ncy53ZWJ2aWV3X25vdGlmaWNhdGlvbl90ZXh0Kyc8L3A+PC9kaXY+Jzt3aW5kb3cuX25zbFdlYlZpZXdOb3RpY2VFbGVtZW50Lmluc2VydEFkamFjZW50SFRNTCgiYWZ0ZXJiZWdpbiIsd2Vidmlld05vdGljZUhUTUwpO2RvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQod2luZG93Ll9uc2xXZWJWaWV3Tm90aWNlRWxlbWVudCl9fSl9fQp3aW5kb3cuX25zbERPTVJlYWR5KGZ1bmN0aW9uKCl7d2luZG93Lm5zbFJlZGlyZWN0PWZ1bmN0aW9uKHVybCl7aWYoc2NyaXB0T3B0aW9ucy5fcmVkaXJlY3RPdmVybGF5KXtjb25zdCBvdmVybGF5PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO292ZXJsYXkuaWQ9Im5zbC1yZWRpcmVjdC1vdmVybGF5IjtsZXQgb3ZlcmxheUhUTUw9Jyc7Y29uc3Qgb3ZlcmxheUNvbnRhaW5lcj0iPGRpdiBpZD0nbnNsLXJlZGlyZWN0LW92ZXJsYXktY29udGFpbmVyJz4iLG92ZXJsYXlDb250YWluZXJDbG9zZT0iPC9kaXY+IixvdmVybGF5U3Bpbm5lcj0iPGRpdiBpZD0nbnNsLXJlZGlyZWN0LW92ZXJsYXktc3Bpbm5lcic+PC9kaXY+IixvdmVybGF5VGl0bGU9IjxwIGlkPSduc2wtcmVkaXJlY3Qtb3ZlcmxheS10aXRsZSc+IitzY3JpcHRPcHRpb25zLl9sb2NhbGl6ZWRTdHJpbmdzLnJlZGlyZWN0X292ZXJsYXlfdGl0bGUrIjwvcD4iLG92ZXJsYXlUZXh0PSI8cCBpZD0nbnNsLXJlZGlyZWN0LW92ZXJsYXktdGV4dCc+IitzY3JpcHRPcHRpb25zLl9sb2NhbGl6ZWRTdHJpbmdzLnJlZGlyZWN0X292ZXJsYXlfdGV4dCsiPC9wPiI7c3dpdGNoKHNjcmlwdE9wdGlvbnMuX3JlZGlyZWN0T3ZlcmxheSl7Y2FzZSAib3ZlcmxheS1vbmx5IjpicmVhaztjYXNlICJvdmVybGF5LXdpdGgtc3Bpbm5lciI6b3ZlcmxheUhUTUw9b3ZlcmxheUNvbnRhaW5lcitvdmVybGF5U3Bpbm5lcitvdmVybGF5Q29udGFpbmVyQ2xvc2U7YnJlYWs7ZGVmYXVsdDpvdmVybGF5SFRNTD1vdmVybGF5Q29udGFpbmVyK292ZXJsYXlTcGlubmVyK292ZXJsYXlUaXRsZStvdmVybGF5VGV4dCtvdmVybGF5Q29udGFpbmVyQ2xvc2U7YnJlYWt9Cm92ZXJsYXkuaW5zZXJ0QWRqYWNlbnRIVE1MKCJhZnRlcmJlZ2luIixvdmVybGF5SFRNTCk7ZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChvdmVybGF5KX0Kd2luZG93LmxvY2F0aW9uPXVybH07bGV0IHRhcmdldFdpbmRvdz1zY3JpcHRPcHRpb25zLl90YXJnZXRXaW5kb3d8fCdwcmVmZXItcG9wdXAnLGxhc3RQb3B1cD0hMTtjb25zdCBidXR0b25MaW5rcz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcgYVtkYXRhLXBsdWdpbj0ibnNsIl1bZGF0YS1hY3Rpb249ImNvbm5lY3QiXSwgYVtkYXRhLXBsdWdpbj0ibnNsIl1bZGF0YS1hY3Rpb249ImxpbmsiXScpO2J1dHRvbkxpbmtzLmZvckVhY2goZnVuY3Rpb24oYnV0dG9uTGluayl7YnV0dG9uTGluay5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsZnVuY3Rpb24oZSl7aWYobGFzdFBvcHVwJiYhbGFzdFBvcHVwLmNsb3NlZCl7ZS5wcmV2ZW50RGVmYXVsdCgpO2xhc3RQb3B1cC5mb2N1cygpfWVsc2V7bGV0IGhyZWY9dGhpcy5ocmVmLHN1Y2Nlc3M9ITE7aWYoaHJlZi5pbmRleE9mKCc/JykhPT0tMSl7aHJlZis9JyYnfWVsc2V7aHJlZis9Jz8nfQpjb25zdCByZWRpcmVjdFRvPXRoaXMuZGF0YXNldC5yZWRpcmVjdDtpZihyZWRpcmVjdFRvPT09J2N1cnJlbnQnKXtocmVmKz0ncmVkaXJlY3Q9JytlbmNvZGVVUklDb21wb25lbnQod2luZG93LmxvY2F0aW9uLmhyZWYpKycmJ31lbHNlIGlmKHJlZGlyZWN0VG8mJnJlZGlyZWN0VG8hPT0nJyl7aHJlZis9J3JlZGlyZWN0PScrZW5jb2RlVVJJQ29tcG9uZW50KHJlZGlyZWN0VG8pKycmJ30KaWYodGFyZ2V0V2luZG93IT09J3ByZWZlci1zYW1lLXdpbmRvdycmJmNoZWNrV2ViVmlldygpKXt0YXJnZXRXaW5kb3c9J3ByZWZlci1zYW1lLXdpbmRvdyd9CmlmKHRhcmdldFdpbmRvdz09PSdwcmVmZXItcG9wdXAnKXtsYXN0UG9wdXA9TlNMUG9wdXAoaHJlZisnZGlzcGxheT1wb3B1cCcsJ25zbC1zb2NpYWwtY29ubmVjdCcsdGhpcy5kYXRhc2V0LnBvcHVwd2lkdGgsdGhpcy5kYXRhc2V0LnBvcHVwaGVpZ2h0KTtpZihsYXN0UG9wdXApe3N1Y2Nlc3M9ITA7ZS5wcmV2ZW50RGVmYXVsdCgpfX1lbHNlIGlmKHRhcmdldFdpbmRvdz09PSdwcmVmZXItbmV3LXRhYicpe2NvbnN0IG5ld1RhYj13aW5kb3cub3BlbihocmVmKydkaXNwbGF5PXBvcHVwJywnX2JsYW5rJyk7aWYobmV3VGFiKXtpZih3aW5kb3cuZm9jdXMpe25ld1RhYi5mb2N1cygpfQpzdWNjZXNzPSEwO3dpbmRvdy5fbnNsSGFzT3BlbmVkUG9wdXA9ITA7ZS5wcmV2ZW50RGVmYXVsdCgpfX0KaWYoIXN1Y2Nlc3Mpe3dpbmRvdy5sb2NhdGlvbj1ocmVmO2UucHJldmVudERlZmF1bHQoKX19fSl9KTtsZXQgYnV0dG9uQ291bnRDaGFuZ2VkPSExO2NvbnN0IGdvb2dsZUxvZ2luQnV0dG9ucz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcgYVtkYXRhLXBsdWdpbj0ibnNsIl1bZGF0YS1wcm92aWRlcj0iZ29vZ2xlIl0nKTtpZihnb29nbGVMb2dpbkJ1dHRvbnMubGVuZ3RoJiZjaGVja1dlYlZpZXcoKSl7Z29vZ2xlTG9naW5CdXR0b25zLmZvckVhY2goZnVuY3Rpb24oZ29vZ2xlTG9naW5CdXR0b24pe2lmKHNjcmlwdE9wdGlvbnMuX3Vuc3VwcG9ydGVkV2Vidmlld0JlaGF2aW9yPT09J2Rpc2FibGUtYnV0dG9uJyl7ZGlzYWJsZUJ1dHRvbkluV2ViVmlldyhnb29nbGVMb2dpbkJ1dHRvbil9ZWxzZXtnb29nbGVMb2dpbkJ1dHRvbi5yZW1vdmUoKTtidXR0b25Db3VudENoYW5nZWQ9ITB9fSl9CmNvbnN0IGZhY2Vib29rTG9naW5CdXR0b25zPWRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJyBhW2RhdGEtcGx1Z2luPSJuc2wiXVtkYXRhLXByb3ZpZGVyPSJmYWNlYm9vayJdJyk7aWYoZmFjZWJvb2tMb2dpbkJ1dHRvbnMubGVuZ3RoJiZjaGVja1dlYlZpZXcoKSYmL0FuZHJvaWQvLnRlc3Qod2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQpJiYhaXNBbGxvd2VkV2ViVmlld0ZvclVzZXJBZ2VudCgnZmFjZWJvb2snKSl7ZmFjZWJvb2tMb2dpbkJ1dHRvbnMuZm9yRWFjaChmdW5jdGlvbihmYWNlYm9va0xvZ2luQnV0dG9uKXtpZihzY3JpcHRPcHRpb25zLl91bnN1cHBvcnRlZFdlYnZpZXdCZWhhdmlvcj09PSdkaXNhYmxlLWJ1dHRvbicpe2Rpc2FibGVCdXR0b25JbldlYlZpZXcoZmFjZWJvb2tMb2dpbkJ1dHRvbil9ZWxzZXtmYWNlYm9va0xvZ2luQnV0dG9uLnJlbW92ZSgpO2J1dHRvbkNvdW50Q2hhbmdlZD0hMH19KX0KY29uc3Qgc2VwYXJhdG9ycz1kb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdkaXYubnNsLXNlcGFyYXRvcicpO2lmKGJ1dHRvbkNvdW50Q2hhbmdlZCYmc2VwYXJhdG9ycy5sZW5ndGgpe3NlcGFyYXRvcnMuZm9yRWFjaChmdW5jdGlvbihzZXBhcmF0b3Ipe2NvbnN0IHNlcGFyYXRvclBhcmVudE5vZGU9c2VwYXJhdG9yLnBhcmVudE5vZGU7aWYoc2VwYXJhdG9yUGFyZW50Tm9kZSl7Y29uc3Qgc2VwYXJhdG9yQnV0dG9uQ29udGFpbmVyPXNlcGFyYXRvclBhcmVudE5vZGUucXVlcnlTZWxlY3RvcignZGl2Lm5zbC1jb250YWluZXItYnV0dG9ucycpO2lmKHNlcGFyYXRvckJ1dHRvbkNvbnRhaW5lciYmIXNlcGFyYXRvckJ1dHRvbkNvbnRhaW5lci5oYXNDaGlsZE5vZGVzKCkpe3NlcGFyYXRvci5yZW1vdmUoKX19fSl9fSk7aWYodHlwZW9mIEJyb2FkY2FzdENoYW5uZWw9PT0iZnVuY3Rpb24iKXtjb25zdCBfbnNsTG9naW5Ccm9hZENhc3RDaGFubmVsPW5ldyBCcm9hZGNhc3RDaGFubmVsKCduc2xfbG9naW5fYnJvYWRjYXN0X2NoYW5uZWwnKTtfbnNsTG9naW5Ccm9hZENhc3RDaGFubmVsLm9ubWVzc2FnZT0oZXZlbnQpPT57aWYod2luZG93Py5fbnNsSGFzT3BlbmVkUG9wdXAmJmV2ZW50LmRhdGE/LmFjdGlvbj09PSdyZWRpcmVjdCcpe3dpbmRvdy5fbnNsSGFzT3BlbmVkUG9wdXA9ITE7Y29uc3QgdXJsPWV2ZW50LmRhdGE/LmhyZWY7X25zbExvZ2luQnJvYWRDYXN0Q2hhbm5lbC5jbG9zZSgpO2lmKHR5cGVvZiB3aW5kb3cubnNsUmVkaXJlY3Q9PT0nZnVuY3Rpb24nKXt3aW5kb3cubnNsUmVkaXJlY3QodXJsKX1lbHNle3dpbmRvdy5vcGVuZXIubG9jYXRpb249dXJsfX19fX0pKCk=" defer>