ytdl-org / youtube-dl

Command-line program to download videos from YouTube.com and other video sites
http://ytdl-org.github.io/youtube-dl/
The Unlicense
131.43k stars 9.96k forks source link

Openload.co not always works #18800

Closed gromiak closed 5 years ago

gromiak commented 5 years ago

Hello, i have problem with openload. The download once works and once it does not work, i have 2019.01.02 version. Same behaviour on different links

youtube-dl https://openload.co/f/JPuGb7H_VLo -vvvv -F [debug] System config: [] [debug] User config: [] [debug] Custom config: [] [debug] Command-line args: [u'https://openload.co/f/JPuGb7H_VLo', u'-vvvv', u'-F'] [debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8 [debug] youtube-dl version 2019.01.02 [debug] Python version 2.7.9 (CPython) - Linux-3.14.32-xxxx-grs-ipv6-64-x86_64-with-Debian-8 [debug] exe versions: ffmpeg 2.6.8, ffprobe 2.6.8, phantomjs 2.1.1, rtmpdump 2.4 [debug] Proxy map: {} [Openload] JPuGb7H_VLo: Downloading embed webpage [Openload] JPuGb7H_VLo: Executing JS on webpage ERROR: Unable to extract stream URL; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose flag and include its complete output. Traceback (most recent call last): File "/usr/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 793, in extract_info ie_result = ie.extract(url) File "/usr/bin/youtube-dl/youtube_dl/extractor/common.py", line 508, in extract ie_result = self._real_extract(url) File "/usr/bin/youtube-dl/youtube_dl/extractor/openload.py", line 383, in _real_extract 'stream URL')) File "/usr/bin/youtube-dl/youtube_dl/extractor/common.py", line 983, in _search_regex raise RegexNotFoundError('Unable to extract %s' % _name) RegexNotFoundError: Unable to extract stream URL; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

dstftw commented 5 years ago

Post the failed output with --dump-pages.

gromiak commented 5 years ago

[Openload] JPuGb7H_VLo: Downloading embed webpage [Openload] Dumping request to https://openload.co/embed/JPuGb7H_VLo/ PCFET0NUWVBFIGh0bWw+CjxodG1sIGxhbmc9ImVuLVVTIj4KPGhlYWQ+CjxzY3JpcHQgc3JjPSIvY2RuLWNnaS9hcHBzL2hlYWQvaU03cWlia3lkN3NwUWF4cWpQOHVFeFdGUXhZLmpzIj48L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+d2luZG93LmZpbGVpZD0iSlB1R2I3SF9WTG8iOzwvc2NyaXB0Pgo8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0iQS5TdGFyLmlzLkJvcm4uMjAxOC5QTFNVQkJFRC43MjBwLkJMVVJSRUQuSERSaXAuWHZpRC5BQzMtS0xpTy5hdmkubXA0Ij4KPG1ldGEgbmFtZT0ib2c6dGl0bGUiIGNvbnRlbnQ9IkEuU3Rhci5pcy5Cb3JuLjIwMTguUExTVUJCRUQuNzIwcC5CTFVSUkVELkhEUmlwLlh2aUQuQUMzLUtMaU8uYXZpLm1wNCI+CjxtZXRhIG5hbWU9Im9nOmRlc2NyaXB0aW9uIiBjb250ZW50PSJTdHJlYW0gQS5TdGFyLmlzLkJvcm4uMjAxOC5QTFNVQkJFRC43MjBwLkJMVVJSRUQuSERSaXAuWHZpRC5BQzMtS0xpTy5hdmkubXA0IHZpYSBPcGVubG9hZCI+CjxtZXRhIG5hbWU9Im9nOnR5cGUiIGNvbnRlbnQ9InZpZGVvLm1vdmllIj4KPG1ldGEgbmFtZT0ib2c6dXJsIiBjb250ZW50PSJodHRwczovL29wZW5sb2FkLmNvL2VtYmVkL0pQdUdiN0hfVkxvLyI+CjxtZXRhIG5hbWU9Im9nOnNpdGVuYW1lIiBjb250ZW50PSJPcGVubG9hZCI+CjxtZXRhIG5hbWU9Im9nOmltYWdlIiBjb250ZW50PSJodHRwczovL3RodW1iLm9sb2FkY2RuLm5ldC9zcGxhc2gvSlB1R2I3SF9WTG8vOVotcllQSDRPczAuanBnIj4KPG1ldGEgbmFtZT0idHdpdHRlcjpjYXJkIiBjb250ZW50PSJzdW1tYXJ5X2xhcmdlX2ltYWdlIj4KPG1ldGEgbmFtZT0idHdpdHRlcjp0aXRsZSIgY29udGVudD0iQS5TdGFyLmlzLkJvcm4uMjAxOC5QTFNVQkJFRC43MjBwLkJMVVJSRUQuSERSaXAuWHZpRC5BQzMtS0xpTy5hdmkubXA0Ij4KPG1ldGEgbmFtZT0idHdpdHRlcjpkZXNjcmlwdGlvbiIgY29udGVudD0iU3RyZWFtIEEuU3Rhci5pcy5Cb3JuLjIwMTguUExTVUJCRUQuNzIwcC5CTFVSUkVELkhEUmlwLlh2aUQuQUMzLUtMaU8uYXZpLm1wNCB2aWEgT3BlbmxvYWQiPgo8bWV0YSBuYW1lPSJ0d2l0dGVyOmltYWdlIiBjb250ZW50PSJodHRwczovL3RodW1iLm9sb2FkY2RuLm5ldC9zcGxhc2gvSlB1R2I3SF9WTG8vOVotcllQSDRPczAuanBnIj4KPG1ldGEgbmFtZT0icm9ib3RzIiBjb250ZW50PSJub2luZGV4Ij4KPGxpbmsgaHJlZj0iaHR0cHM6Ly9jZG5qcy5jbG91ZGZsYXJlLmNvbS9hamF4L2xpYnMvdmlkZW8uanMvNS4xNS4xL3ZpZGVvLWpzLm1pbi5jc3MiIHJlbD0ic3R5bGVzaGVldCI+CjxsaW5rIGhyZWY9Ii9hc3NldHMvY3NzL3ZpZGVvLmpzL29sdmlkZW8yLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ij4KPHNjcmlwdCBzcmM9Ii9hc3NldHMvanMvanF1ZXJ5Lm1pbi5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSIvYXNzZXRzL2pzL3ZpZGVvanMtaWU4Lm1pbi4zLmpzIj48L3NjcmlwdD48c2NyaXB0Pg0Kd2luZG93Ll9WaWRlb0xvYWRlZD1mYWxzZTsNCjwvc2NyaXB0Pgo8L2hlYWQ+Cjxib2R5Pgo8ZGl2IGlkPSJtZWRpYXNwYWNlX3dyYXBwZXIiPgo8ZGl2IGNsYXNzPSJ2aWRlb2NvbnRhaW5lciI+CjxzdHlsZT5AbWVkaWEgKG1heC13aWR0aDo0ODBweCl7ZGl2I00xNjI4MzFTY3JpcHRSb290QzI0NTIxMXttYXgtd2lkdGg6MzAwcHghaW1wb3J0YW50O21hcmdpbi1sZWZ0Oi0xNTBweCFpbXBvcnRhbnR9fWRpdiNNYXJrZXRHaWRDb21wb3NpdGUyNDUyMTEgLm1nbGluZSxkaXYjTWFya2V0R2lkQ29tcG9zaXRlMjQ1MjExIC5tZ2xpbmUgLmltYWdlLXdpdGgtdGV4dCxkaXYjTWFya2V0R2lkQ29tcG9zaXRlMjQ1MjExIC5tZ2xpbmUgLm1jaW1ne3otaW5kZXg6MX1kaXYubWctY2xvc2UtYnV0dG9uLWRpdi1vdXRlcnt6LWluZGV4Ojk5OTk5OTk5fS5pbWFnZS13aXRoLXRleHR7cG9zaXRpb246cmVsYXRpdmUhaW1wb3J0YW50O3otaW5kZXg6MX0ubWctY2xvc2UtYnV0dG9uLWRpdi1pbm5lciwubWctY2xvc2UtYnV0dG9uLWRpdi1vdXRlciwubWdib3h7ZGlzcGxheTpibG9jayFpbXBvcnRhbnR9Lm1nbGluZXtkaXNwbGF5OmlubGluZS1ibG9jayFpbXBvcnRhbnQ7b3BhY2l0eTouOTk5fUBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6MjQ5cHgpIGFuZCAobWluLWhlaWdodDowKXsjTWFya2V0R2lkQ29tcG9zaXRlMjQ1MjExIC5pbWFnZS1jb250YWluZXIgaW1nLm1jaW1ne2hlaWdodDo1MHB4IWltcG9ydGFudH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWhlaWdodDozNDlweCkgYW5kIChtaW4taGVpZ2h0OjI1MHB4KXsjTWFya2V0R2lkQ29tcG9zaXRlMjQ1MjExIC5pbWFnZS1jb250YWluZXIgaW1nLm1jaW1ne2hlaWdodDo2MHB4IWltcG9ydGFudH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWhlaWdodDozOTlweCkgYW5kIChtaW4taGVpZ2h0OjM1MHB4KXsjTWFya2V0R2lkQ29tcG9zaXRlMjQ1MjExIC5pbWFnZS1jb250YWluZXIgaW1nLm1jaW1ne2hlaWdodDo2NXB4IWltcG9ydGFudH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWhlaWdodDo0NTBweCkgYW5kIChtaW4taGVpZ2h0OjQwMHB4KXsjTWFya2V0R2lkQ29tcG9zaXRlMjQ1MjExIC5pbWFnZS1jb250YWluZXIgaW1nLm1jaW1ne2hlaWdodDo3NXB4IWltcG9ydGFudH19QG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LWhlaWdodDo0NTBweCl7I01hcmtldEdpZENvbXBvc2l0ZTI0NTIxMSAuaW1hZ2UtY29udGFpbmVyIGltZy5tY2ltZ3t3aWR0aDphdXRvIWltcG9ydGFudH0jTWFya2V0R2lkQ29tcG9zaXRlMjQ1MjExIC50ZXh0LWVsZW1lbnRzIC5tY3RpdGxle3RleHQtYWxpZ246Y2VudGVyIWltcG9ydGFudH0jTWFya2V0R2lkQ29tcG9zaXRlMjQ1MjExIC5tZ2JveCAubWdoZWFkZXJ7ZGlzcGxheTpub25lIWltcG9ydGFudH0jTWFya2V0R2lkQ29tcG9zaXRlMjQ1MjExIC5tZ2xpbmV7bWFyZ2luLWJvdHRvbToycHghaW1wb3J0YW50fX0gQG1lZGlhKG1heC13aWR0aDo0ODBweCl7I00xNjI4MzFTY3JpcHRSb290QzI1MzUwNHttaW4taGVpZ2h0OjgwMHB4O319IEBtZWRpYShtaW4td2lkdGg6NDgwcHgpeyNNMTYyODMxU2NyaXB0Um9vdEMyNTM1MDR7bWluLWhlaWdodDoyNzVweDt9fSAjTTE2MjgzMVNjcmlwdFJvb3RDMjUyNDE1e21heC1oZWlnaHQ6MjIwcHg7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOi0ycHg7ei1pbmRleDo5OTk5OTk7bWluLXdpZHRoOjkwcHg7bGVmdDo2MHB4O3JpZ2h0OjYwcHh9QG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6MjMwcHgpLHNjcmVlbiBhbmQgKG1heC13aWR0aDozMDBweCl7I01hcmtldEdpZENvbXBvc2l0ZTI1MjQxNSBzcGFuLm1naGVhZHtmb250LXNpemU6MTJweCFpbXBvcnRhbnR9I01hcmtldEdpZENvbXBvc2l0ZTI1MjQxNSBkaXYubWdoZWFkZXJ7cGFkZGluZy1ib3R0b206NXB4IWltcG9ydGFudDtoZWlnaHQ6MTJweCFpbXBvcnRhbnR9fUBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6MjIwcHgpe2RpdiNNMTYyODMxU2NyaXB0Um9vdEMyNTI0MTV7d2lkdGg6NDAlIWltcG9ydGFudDttYXJnaW4tbGVmdDozMCU7bWFyZ2luLXJpZ2h0OjMwJX19PC9zdHlsZT4KPGRpdiBpZD0iTTE2MjgzMVNjcmlwdFJvb3RDMjQ1MjExIiBzdHlsZT0iZGlzcGxheTpub25lO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTotMnB4O3otaW5kZXg6OTk5OTk5O2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi0zMDBweDttYXgtd2lkdGg6NjAwcHg7bWF4LWhlaWdodDo3MHZoICFpbXBvcnRhbnQ7Ij4gPGRpdiBpZD0iTTE2MjgzMVByZWxvYWRDMjQ1MjExIj48L2Rpdj48L2Rpdj4KPGRpdiBpZD0iTTE2MjgzMVNjcmlwdFJvb3RDMjUyNDE1IiBzdHlsZT0iZGlzcGxheTpub25lOyI+PGRpdiBpZD0iTTE2MjgzMVByZWxvYWRDMjUyNDE1Ij48L2Rpdj48L2Rpdj4KPHNjcmlwdD4kKCIjTTE2MjgzMVNjcmlwdFJvb3RDMjQ1MjExLCNNMTYyODMxU2NyaXB0Um9vdEMyNTI0MTUiKS5jbGljayhmdW5jdGlvbihlKXtpZigkKGUudGFyZ2V0KS5oYXNDbGFzcygnaW1hZ2Utd2l0aC10ZXh0Jyl8fCQoZS50YXJnZXQpLmNsb3Nlc3QoJy5pbWFnZS13aXRoLXRleHQnKVswXSl7ZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ01hcmtldEdpZENvbXBvc2l0ZTI0NTIxMScpLnN0eWxlLmRpc3BsYXk9J25vbmUnO31yZXR1cm4gdHJ1ZTt9KTs8L3NjcmlwdD4KPGlucHV0IHR5cGU9ImZpbGUiIGlkPSJzcnRTZWxlY3RvciIgc3R5bGU9ImRpc3BsYXk6bm9uZTt2aXNpYmlsaXR5OmhpZGRlbjt3aWR0aDowO2hlaWdodDowOyIgLz4KPGRpdiBpZD0idmlkZW9vdmVybGF5Ij48L2Rpdj4gPHNwYW4gY2xhc3M9InRpdGxlIj5BLlN0YXIuaXMuQm9ybi4yMDE4LlBMU1VCQkVELjcyMHAuQkxVUlJFRC5IRFJpcC5YdmlELkFDMy1LTGlPLmF2aS5tcDQ8L3NwYW4+IDx2aWRlbyBjbGFzcz0idmlkZW8tanMgdmpzLWRlZmF1bHQtc2tpbiB2anMtYmlnLXBsYXktY2VudGVyZWQiIGlkPSJvbHZpZGVvIiB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBwb3N0ZXI9Imh0dHBzOi8vdGh1bWIub2xvYWRjZG4ubmV0L3NwbGFzaC9KUHVHYjdIX1ZMby85Wi1yWVBINE9zMC5qcGciIGNvbnRyb2xzPgo8dHJhY2sga2luZD0iY2FwdGlvbnMiIHNyY2xhbmc9ImVuIiBsYWJlbD0i4pakIExvYWQgU1JUL1ZUVCBmcm9tIFBDflBDfiIgY2xhc3M9Im9sc3J0IGxvYWR0cmFjayIgLz4KPHRyYWNrIGtpbmQ9ImNhcHRpb25zIiBzcmNsYW5nPSJlbiIgbGFiZWw9IuKWpCBMb2FkIFNSVC9WVFQgZnJvbSBVUkx+VVJMfiIgY2xhc3M9ImxvYWR0cmFjayIgLz4KPC92aWRlbz4KPC9kaXY+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4KCQkJdmFyIHN1YnVybCA9ICJodHRwczpcL1wvdGh1bWIub3BlbmxvYWQuY29cL2V4dGVybnN1YlwvMTU0NzI5NDYyOH41MS4yNTQuMC4wflVyOFRBckhKfiI7CgkJCTwvc2NyaXB0Pgo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+JCgiI21lZGlhc3BhY2Vfd3JhcHBlciwudmlkZW9jb250YWluZXIiKS5vbigiY29udGV4dG1lbnUiLGZ1bmN0aW9uKCl7cmV0dXJuIGZhbHNlO30pOzwvc2NyaXB0Pgo8c2NyaXB0Pg0KIWZ1bmN0aW9uKCl7dmFyIGU9LTEhPW5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJtb2JpbGUiKSx0PW5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJmaXJlZm94Iik+LTEmJi0xPT1uYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCkuaW5kZXhPZigibW9iaWxlIiksbj0hKC0xIT1uYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIlRyaWRlbnQvNy4wIikmJm5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiSUVNb2JpbGUiKSkmJihuYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIk1TSUUgIik+MHx8ISFuYXZpZ2F0b3IudXNlckFnZW50Lm1hdGNoKC9UcmlkZW50Lipydlw6MTFcLi8pKSYmLTE9PW5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiSUVNb2JpbGUiKSxvPS9TYWZhcmkvLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkmJi9BcHBsZSBDb21wdXRlci8udGVzdChuYXZpZ2F0b3IudmVuZG9yKSYmLTE9PW5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiTW9iaWxlIikscj0vQ2hyb21lLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpJiYvR29vZ2xlIEluYy8udGVzdChuYXZpZ2F0b3IudmVuZG9yKTtCZXR0ZXJKc1BvcD17c3RhY2s6W10saWdub3JlczpbXSxvcGVuZWQ6MCxhZGQ6ZnVuY3Rpb24oZSx0KXtCZXR0ZXJKc1BvcC5wcmVsb2FkKGUpLEJldHRlckpzUG9wLnN0YWNrLnB1c2goe3VybDplLG9wdGlvbnM6dH0pfSxwcmVsb2FkOmZ1bmN0aW9uKGUpe3RyeXt2YXIgdDsodD1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIikpLnJlbD0iZG5zLXByZWZldGNoIix0LmhyZWY9ZSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHQpLCh0PWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKSkucmVsPSJwcmVjb25uZWN0Iix0LmhyZWY9ZSxkb2N1bWVudC5oZWFkLmFwcGVuZENoaWxkKHQpfWNhdGNoKHQpe319LHBvcHVuZGVyQXZhaWxhYmxlOnR8fG58fG8scmVzZXQ6ZnVuY3Rpb24oKXtCZXR0ZXJKc1BvcC5zdGFjaz1bXX0sY29uZmlnOmZ1bmN0aW9uKCl7fSxvbkNsaWNrOmZ1bmN0aW9uKGUpe0JldHRlckpzUG9wLmNoZWNrRXZlbnRUcnVzdGVkKGUpJiZCZXR0ZXJKc1BvcC5jaGVja1N0YWNrKGUpfSxvblRvdWNoRW5kOmZ1bmN0aW9uKGUpeyJpc1RydXN0ZWQiaW4gZSYmIWUuaXNUcnVzdGVkfHxlJiZlLnRhcmdldCYmKGUudGFyZ2V0LnRhZ05hbWUmJiJWSURFTyI9PWUudGFyZ2V0LnRhZ05hbWV8fGUudGFyZ2V0LmNsYXNzTmFtZSYmKCJ2anMtcG9zdGVyIj09ZS50YXJnZXQuY2xhc3NOYW1lfHwidmpzLWJpZy1wbGF5LWJ1dHRvbiI9PWUudGFyZ2V0LmNsYXNzTmFtZSkpJiZCZXR0ZXJKc1BvcC5jaGVja1N0YWNrKGUpfSxjaGVja1N0YWNrOmZ1bmN0aW9uKGUpe2Zvcih2YXIgdD0wO3Q8QmV0dGVySnNQb3Auc3RhY2subGVuZ3RoO3QrKyl7dmFyIG49QmV0dGVySnNQb3Auc3RhY2tbdF07aWYobi5vcHRpb25zfHwobi5vcHRpb25zPXt9KSwiZnVuY3Rpb24iIT10eXBlb2Ygbi5vcHRpb25zLnNob3VsZEZpcmV8fG4ub3B0aW9ucy5zaG91bGRGaXJlKCkpe3RyeXtpZihCZXR0ZXJKc1BvcC5jaGVja0lnbm9yZShlKSlyZXR1cm59Y2F0Y2goZSl7fUJldHRlckpzUG9wLnN0YWNrLnNwbGljZSh0LDEpO3ZhciBvPUJldHRlckpzUG9wLnBvcHVwKG4pO2lmKCJmdW5jdGlvbiI9PXR5cGVvZiBuLm9wdGlvbnMuYWZ0ZXJPcGVuKXRyeXtuLm9wdGlvbnMuYWZ0ZXJPcGVuKG4uenVyayxuLm9wdGlvbnMsbyl9Y2F0Y2goZSl7fXJldHVybn19fSxpZ25vcmVUbzpmdW5jdGlvbihlKXtCZXR0ZXJKc1BvcC5pZ25vcmVzLnB1c2goZSl9LGNoZWNrSWdub3JlOmZ1bmN0aW9uKGUpe2lmKCFlLnRhcmdldClyZXR1cm4hMTtpZigwPT1CZXR0ZXJKc1BvcC5pZ25vcmVzLmxlbmd0aClyZXR1cm4hMTtmb3IodmFyIHQ9MDt0PEJldHRlckpzUG9wLmlnbm9yZXMubGVuZ3RoO3QrKyl7dmFyIG49QmV0dGVySnNQb3AuaWdub3Jlc1t0XTtpZihlLnRhcmdldC5pZCYmZS50YXJnZXQuaWQ9PW4pcmV0dXJuITA7Zm9yKHZhciBvPWUudGFyZ2V0O28mJm8ucGFyZW50RWxlbWVudDspaWYoKG89by5wYXJlbnRFbGVtZW50KS5pZCYmby5pZD09bilyZXR1cm4hMH1yZXR1cm4hMX0scmFuZFN0cjpmdW5jdGlvbihlKXtmb3IodmFyIHQ9IiIsbj0iQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5eiIsbz0wO288ZTtvKyspdCs9bi5jaGFyQXQoTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKm4ubGVuZ3RoKSk7cmV0dXJuIHR9LHBvcHVwOmZ1bmN0aW9uKGUpe0JldHRlckpzUG9wLm9wZW5lZCs9MTt2YXIgcj1lLm9wdGlvbnMudG9wfHwwLGk9ZS5vcHRpb25zLmxlZnR8fDAsYT1lLm9wdGlvbnMud2lkdGh8fHdpbmRvdy5zY3JlZW4ud2lkdGgscz1lLm9wdGlvbnMuaGVpZ2h0fHx3aW5kb3cuc2NyZWVuLmhlaWdodCx1PUJldHRlckpzUG9wLnJhbmRTdHIoMykrQmV0dGVySnNQb3Aub3BlbmVkKyJwIixjPSJ3aWR0aD0iK2ErIixoZWlnaHQ9IitzKyIsbGVmdD0iK2krIix0b3A9IityKyIsc3RhdHVzPTAsbG9jYXRpb249MSx0b29sYmFyPTEsbWVudWJhcj0xLHJlc2l6YWJsZT0xLHNjcm9sbGJhcnM9MSI7ZS5vcHRpb25zLm5ld1RhYiYmKGM9IiIpLHZvaWQgMD09PWUub3B0aW9ucy51bmRlciYmKGUub3B0aW9ucy51bmRlcj0hMCk7dmFyIGQ9bnVsbDtpZihlLm9wdGlvbnMudW5kZXImJm8pZD1CZXR0ZXJKc1BvcC5wb3B1bmRlclNhZmFyaShlLnVybCx1LGMpO2Vsc2UgaWYoISgoZD13aW5kb3cub3BlbihlLnVybCx1LGMpKSYmZS5vcHRpb25zLnVuZGVyJiZuKSl0cnl7ZC5vcGVuZXI9bnVsbH1jYXRjaChlKXt9cmV0dXJuIGUub3B0aW9ucy51bmRlciYmdCYmQmV0dGVySnNQb3AuYmx1ckZpcmVmb3goKSxkJiZlLm9wdGlvbnMudW5kZXImJm4mJkJldHRlckpzUG9wLmJsdXJJRShkKSxkfSxibHVyRmlyZWZveDpmdW5jdGlvbigpe3ZhciBlPXdpbmRvdy5vcGVuKCJhYm91dDpibGFuayIpO2UuZm9jdXMoKSxlLmNsb3NlKCl9LGJsdXJJRTpmdW5jdGlvbihlKXtlLmJsdXIoKSxlLm9wZW5lci53aW5kb3cuZm9jdXMoKSx3aW5kb3cuc2VsZi5mb2N1cygpLHdpbmRvdy5mb2N1cygpO3RyeXtlLm9wZW5lcj1udWxsfWNhdGNoKGUpe319LHBvcHVuZGVyU2FmYXJpOmZ1bmN0aW9uKGUsdCxuKXtmdW5jdGlvbiBvKGUsdCxuKXt2YXIgbz1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJpZnJhbWUiKTtvLnN0eWxlPSJkaXNwbGF5Om5vbmU7Iixkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKG8pO3ZhciByPW8uY29udGVudFdpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJzY3JpcHQiKTtyLnR5cGU9InRleHQvamF2YXNjcmlwdCIsci5pbm5lckhUTUw9IndpbmRvdy5wYXJlbnQgPSB3aW5kb3cudG9wID0gd2luZG93LmZyYW1lRWxlbWVudCA9IG51bGw7d2luZG93Lm1rcCA9IGZ1bmN0aW9uKHVybCwgbmFtZSwgb3B0cykge3ZhciBwb3BXaW4gPSB3aW5kb3cub3Blbih1cmwsIG5hbWUsIG9wdHMpO3RyeSB7cG9wV2luLm9wZW5lciA9IG51bGx9IGNhdGNoIChlKSB7fXJldHVybiBwb3BXaW47fTsiLG8uY29udGVudFdpbmRvdy5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHIpO3ZhciBpPW8uY29udGVudFdpbmRvdy5ta3AoZSx0LG4pO3JldHVybiBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKG8pLGl9d2luZG93Lm5hbWU9ImpzN2o0aGQiO3ZhciByPW8oZSx0LG4pO3JldHVybiBvKCIiLCJqczdqNGhkIiwiIiksd2luZG93Lm5hbWU9bnVsbCxyfSxjaGVja0V2ZW50VHJ1c3RlZDpmdW5jdGlvbihlKXtpZihlJiYiaXNUcnVzdGVkImluIGUmJjA9PWUuaXNUcnVzdGVkKXJldHVybiExO3ZhciB0PSEwO2lmKChlPWV8fHdpbmRvdy5ldmVudCkmJiJ3aGljaCJpbiBlP3Q9ZS53aGljaDw9MTplJiYiYnV0dG9uImluIGUmJih0PWUuYnV0dG9uPD0xKSwhdClyZXR1cm4hMTt0cnl7aWYoMD09d2luZG93LmV2ZW50LnNjcmVlblgmJjA9PXdpbmRvdy5ldmVudC5zY3JlZW5ZJiYtMSE9d2luZG93LmV2ZW50LnRhcmdldC5jbGFzc05hbWUuaW5kZXhPZigidmpzLW1lbnUtaXRlbSIpKXJldHVybiExfWNhdGNoKGUpe31yZXR1cm4hMH19O3ZhciBpPSJjbGljayI7KG98fHIpJiYoaT0ibW91c2Vkb3duIiksZG9jdW1lbnQuYWRkRXZlbnRMaXN0ZW5lcj9kb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKGksQmV0dGVySnNQb3Aub25DbGljaywhMCk6ZG9jdW1lbnQuYXR0YWNoRXZlbnQoIm9uIitpLEJldHRlckpzUG9wLm9uQ2xpY2spLGUmJmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXImJmRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoInRvdWNoZW5kIixCZXR0ZXJKc1BvcC5vblRvdWNoRW5kLCEwKX0oKTsNCjwvc2NyaXB0Pgo8c2NyaXB0IHNyYz0iL2FkdmVydDMuanMiPjwvc2NyaXB0Pgo8ZGl2IGlkPSJhZGJkZXRlY3QiIGNsYXNzPSJhZHMgYWRzYm94IGRvdWJsZWNsaWNrIiBzdHlsZT0iaGVpZ2h0OjFweDt3aWR0aDoxcHg7cG9zaXRpb246YWJzb2x1dGU7bGVmdDotOTk5cHg7dG9wOi05OTlweDsiPiZuYnNwOzwvZGl2Pgo8c2NyaXB0Pg0KICAgICAgICB3aW5kb3cuYWRibG9jaz1mYWxzZTt3aW5kb3cuYWRibG9jazI9ZmFsc2U7DQogICAgICAgIGlmKHR5cGVvZiBzYWRibCA9PSAidW5kZWZpbmVkIiB8fCB0eXBlb2YgQmV0dGVySnNQb3AgPT0gInVuZGVmaW5lZCIgfHwgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImFkYmRldGVjdCIpLmNsaWVudEhlaWdodCA9PT0gMCl7ZGVsZXRlIHdpbmRvdy5hZGJsb2NrO2RlbGV0ZSB3aW5kb3cuYWRibG9jazI7fQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnl7dmFyIF8weGQ5NTk9WyJceDczXHg2MVx4NkVceDY0XHg2Mlx4NkZceDc4IiwiXHg2OFx4NjFceDczXHg0MVx4NzRceDc0XHg3Mlx4NjlceDYyXHg3NVx4NzRceDY1IiwiXHg2Nlx4NzJceDYxXHg2RFx4NjVceDQ1XHg2Q1x4NjVceDZEXHg2NVx4NkVceDc0IiwiXHg2NFx4NjFceDc0XHg2MSIsIlx4NjlceDZFXHg2NFx4NjVceDc4XHg0Rlx4NjYiLCJceDY4XHg3Mlx4NjVceDY2IiwiXHg2NFx4NkZceDZEXHg2MVx4NjlceDZFIiwiIiwiXHg3MFx4NkNceDc1XHg2N1x4NjlceDZFXHg3MyIsIlx4NzVceDZFXHg2NFx4NjVceDY2XHg2OVx4NkVceDY1XHg2NCIsIlx4NkVceDYxXHg2RFx4NjVceDY0XHg0OVx4NzRceDY1XHg2RCIsIlx4NDNceDY4XHg3Mlx4NkZceDZEXHg2NVx4MjBceDUwXHg0NFx4NDZceDIwXHg1Nlx4NjlceDY1XHg3N1x4NjVceDcyIiwiXHg2Rlx4NjJceDZBXHg2NVx4NjNceDc0IiwiXHg2M1x4NzJceDY1XHg2MVx4NzRceDY1XHg0NVx4NkNceDY1XHg2RFx4NjVceDZFXHg3NCIsIlx4NkZceDZFXHg2NVx4NzJceDcyXHg2Rlx4NzIiLCJceDc0XHg3OVx4NzBceDY1IiwiXHg2MVx4NzBceDcwXHg2Q1x4NjlceDYzXHg2MVx4NzRceDY5XHg2Rlx4NkVceDJGXHg3MFx4NjRceDY2IiwiXHg3M1x4NjVceDc0XHg0MVx4NzRceDc0XHg3Mlx4NjlceDYyXHg3NVx4NzRceDY1IiwiXHg3M1x4NzRceDc5XHg2Q1x4NjUiLCJceDc2XHg2OVx4NzNceDY5XHg2Mlx4NjlceDZDXHg2OVx4NzRceDc5XHgzQVx4NjhceDY5XHg2NFx4NjRceDY1XHg2RVx4M0JceDc3XHg2OVx4NjRceDc0XHg2OFx4M0FceDMwXHgzQlx4NjhceDY1XHg2OVx4NjdceDY4XHg3NFx4M0FceDMwXHgzQlx4NzBceDZGXHg3M1x4NjlceDc0XHg2OVx4NkZceDZFXHgzQVx4NjFceDYyXHg3M1x4NkZceDZDXHg3NVx4NzRceDY1XHgzQlx4NzRceDZGXHg3MFx4M0FceDJEXHgzOVx4MzlceDcwXHg3OFx4M0IiLCJceDY0XHg2MVx4NzRceDYxXHgzQVx4NjFceDcwXHg3MFx4NkNceDY5XHg2M1x4NjFceDc0XHg2OVx4NkZceDZFXHgyRlx4NzBceDY0XHg2Nlx4M0JceDYyXHg2MVx4NzNceDY1XHgzNlx4MzRceDJDXHg0QVx4NTZceDQyXHg0NVx4NTJceDY5XHgzMFx4NzhceDRDXHg2N1x4MzBceDRCXHg2NFx4NDhceDRBXHg2OFx4NjFceDU3XHg3OFx4NkNceDYzXHg2QVx4NzdceDM4XHg0Q1x4MzFceDRBXHg3Nlx4NjJceDMzXHg1MVx4MzhceDUwXHg0M1x4MzlceDUxXHg1OVx4NTdceDY0XHg2Q1x4NjNceDdBXHg3N1x4MzhceDRDXHgzMFx4NzRceDcwXHg1QVx4NDhceDRFXHg2Mlx4NTBceDQ0XHg3N1x4NzZceDU0XHg1N1x4NTZceDZCXHg2MVx4NTdceDQ2XHg0M1x4NjJceDMzXHg2OFx4NjJceDREXHg0M1x4NDFceDc3XHg0OVx4NDRceDREXHg2N1x4NERceDMxXHgzMFx4MkJceDUwXHg2Q1x4MzBceDJCXHg1MFx4NkFceDM0XHgyQlx4NTBceDZBXHgzNFx4M0QiLCJceDYxXHg3MFx4NzBceDY1XHg2RVx4NjRceDQzXHg2OFx4NjlceDZDXHg2NCIsIlx4NjJceDZGXHg2NFx4NzkiLCJceDcyXHg2NVx4NkRceDZGXHg3Nlx4NjVceDQzXHg2OFx4NjlceDZDXHg2NCIsIlx4NzBceDYxXHg3Mlx4NjVceDZFXHg3NFx4NDVceDZDXHg2NVx4NkRceDY1XHg2RVx4NzQiLCJceDJGXHg2NVx4NkRceDYyXHg2NVx4NjRceDYyXHg2Q1x4NkZceDYzXHg2Qlx4NjVceDY0XHgzRlx4NzJceDY1XHg2Nlx4NjVceDcyXHg2NVx4NzJceDNEIiwiXHg3M1x4NzVceDYyXHg3M1x4NzRceDcyXHg2OVx4NkVceDY3IiwiXHg3Mlx4NjVceDY2XHg2NVx4NzJceDcyXHg2NVx4NzIiXTtmdW5jdGlvbiBpc1NhbmRib3hlZChfMHg3MDg5eDIpe3RyeXtpZih3aW5kb3dbXzB4ZDk1OVsyXV1bXzB4ZDk1OVsxXV0oXzB4ZDk1OVswXSkpe18weDcwODl4MigpO3JldHVybn19Y2F0Y2goZXJyKXt9O2lmKGxvY2F0aW9uW18weGQ5NTlbNV1dW18weGQ5NTlbNF1dKF8weGQ5NTlbM10pIT0gMCYmIGRvY3VtZW50W18weGQ5NTlbNl1dPT0gXzB4ZDk1OVs3XSl7XzB4NzA4OXgyKCk7cmV0dXJufTtpZiggdHlwZW9mIG5hdmlnYXRvcltfMHhkOTU5WzhdXSE9IF8weGQ5NTlbOV0mJiAgdHlwZW9mIG5hdmlnYXRvcltfMHhkOTU5WzhdXVtfMHhkOTU5WzEwXV0hPSBfMHhkOTU5WzldJiYgbmF2aWdhdG9yW18weGQ5NTlbOF1dW18weGQ5NTlbMTBdXShfMHhkOTU5WzExXSkhPSBudWxsKXt2YXIgXzB4NzA4OXgzPWRvY3VtZW50W18weGQ5NTlbMTNdXShfMHhkOTU5WzEyXSk7XzB4NzA4OXgzW18weGQ5NTlbMTRdXT0gZnVuY3Rpb24oKXtfMHg3MDg5eDIoKX07XzB4NzA4OXgzW18weGQ5NTlbMTddXShfMHhkOTU5WzE1XSxfMHhkOTU5WzE2XSk7XzB4NzA4OXgzW18weGQ5NTlbMTddXShfMHhkOTU5WzE4XSxfMHhkOTU5WzE5XSk7XzB4NzA4OXgzW18weGQ5NTlbMTddXShfMHhkOTU5WzNdLF8weGQ5NTlbMjBdKTtkb2N1bWVudFtfMHhkOTU5WzIyXV1bXzB4ZDk1OVsyMV1dKF8weDcwODl4Myk7c2V0VGltZW91dChmdW5jdGlvbigpe18weDcwODl4M1tfMHhkOTU5WzI0XV1bXzB4ZDk1OVsyM11dKF8weDcwODl4Myl9LDE1MCl9fWlzU2FuZGJveGVkKGZ1bmN0aW9uKCl7bG9jYXRpb25bXzB4ZDk1OVs1XV09IF8weGQ5NTlbMjVdKyBlbmNvZGVVUklDb21wb25lbnQoZG9jdW1lbnRbXzB4ZDk1OVsyN11dW18weGQ5NTlbMjZdXSgwLDE1MCkpfSl9Y2F0Y2goZSl7fQ0KICAgICAgICAgICAgICAgIGZ1bmN0aW9uIHBkKGIpe3ZhciBhPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImEiKTthLmhyZWY9YjtyZXR1cm4gYS5ob3N0bmFtZTt9DQogICAgICAgIHdpbmRvdy5yZWZkb21haW49IiI7DQogICAgICAgIHRyeXt3aW5kb3cucmVmZG9tYWluPXBkKGRvY3VtZW50LnJlZmVycmVyKTt9Y2F0Y2goZSl7fQ0KICAgICAgICB0cnl7d2luZG93LnJlZmRvbWFpbj1wZCh3aW5kb3cubG9jYXRpb24ub3JpZ2luKTt9Y2F0Y2goZSl7fQ0KICAgICAgICB3aW5kb3cucmVmbD1kb2N1bWVudC5yZWZlcnJlcjtpZih3aW5kb3cucmVmbD09IiIpe3RyeXt3aW5kb3cucmVmbD13aW5kb3cubG9jYXRpb24ub3JpZ2luO31jYXRjaChlKXt9fQ0KICAgIGlmKHR5cGVvZiBhZGJsb2NrMiA9PSJ1bmRlZmluZWQiKXsNCiAgICAgICAgd2luZG93Ll9WaWRlb0xvYWRlZD10cnVlOw0KICAgICAgICAgICAgICAgIGlmKHdpbmRvdy5mZm9wZW5lZCAmJiAvZmlyZWZveC9pLnRlc3QobmF2aWdhdG9yLnVzZXJBZ2VudCkpIHNldFRpbWVvdXQoZnVuY3Rpb24oKXtsb2dwb3B1cCgxKTt9LDIwMDApOw0KICAgICAgICBpZighd2luZG93LmV4Y2x1ZGUpew0KICAgIH0gICAgfSAgICBlbHNlew0KICAgICAgICBpZighIC9UVi8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KSAmJiAhIC9TYW1zdW5nQnJvd3Nlci8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50ICkpew0KICAgICAgICB3aW5kb3cudmFzdHVybCA9ICJodHRwczovL2VuZ2luZS5zcG90c2NlbmVyZWQuaW5mby9wcmVyb2xsLmVuZ2luZT9pZD1lODRkYmU0Mi0zMmZlLTQxNDMtOTk5NC1mMGYxOGM4YmRkMDcmemlkPTI5NDUyJmN2cz0mdGltZT0mc3RkdGltZT0mYWJyPSZwYWdldXJsPSIgKyBlbmNvZGVVUklDb21wb25lbnQobG9jYXRpb24uaHJlZikgKyAiJnN1YklkPSZ0aWQ9JnJlcz0mYnc9JmJoPSZrdz0mcmVmZXJyZXJVcmw9IiArIGVuY29kZVVSSUNvbXBvbmVudCh3aW5kb3cucmVmbCkgKyAiJnB3PSIgKyAkKCIudmlkZW9jb250YWluZXIiKS53aWR0aCgpICsgIiZwaD0iICsgJCgiLnZpZGVvY29udGFpbmVyIikuaGVpZ2h0KCk7DQogICAgICAgIHZhciByZWZlciA9IChmdW5jdGlvbiAoKSB7DQogICAgICAgICAgdmFyIHJlc3VsdCA9ICcnOw0KDQogICAgICAgICAgdHJ5IHsNCiAgICAgICAgICAgIGlmIChwYXJlbnQgIT09IHdpbmRvdykgew0KICAgICAgICAgICAgICByZXN1bHQgPSBkb2N1bWVudC5yZWZlcnJlcjsNCiAgICAgICAgICAgICAgdmFyIG9yaWdpbnMgPSB3aW5kb3cubG9jYXRpb24uYW5jZXN0b3JPcmlnaW5zOw0KDQogICAgICAgICAgICAgIGlmIChvcmlnaW5zKSB7DQogICAgICAgICAgICAgICAgdmFyIGRvbWFpbiA9IG9yaWdpbnNbb3JpZ2lucy5sZW5ndGggLSAxXTsNCg0KICAgICAgICAgICAgICAgIGRvbWFpbiAmJiByZXN1bHQuc3Vic3RyaW5nKDAsIGRvbWFpbi5sZW5ndGgpICE9PSBkb21haW4gJiYgKHJlc3VsdCA9IGRvbWFpbik7DQogICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgIHJlc3VsdCA9IHRvcC5sb2NhdGlvbi5ocmVmOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgIH0gY2F0Y2ggKGUpIHt9DQoNCiAgICAgICAgICByZXR1cm4gcmVzdWx0Ow0KICAgICAgICB9KSgpOw0KICAgICAgICB3aW5kb3cudmFzdHVybGZhbGxiYWNrID0gWyJodHRwczovL3d3dy52aWRjcG0uY29tL3dhdGNoLnhtbD9rZXk9MGRkM2JlYjdmYWEzOTk5YjEzMTNiMWRlYzAzOGY4NjkmdmFzdHJlZj0iK2VuY29kZVVSSUNvbXBvbmVudChyZWZlciksICdodHRwczovL3N5bmRpY2F0aW9uLmV4b3Nydi5jb20vc3BsYXNoLXpvbmVzLXNwbGl0LnBocD9tYWluX3pvbmU9MzEyMTIwMiZmYWxsYmFja196b25lPTI5OTAzMjAmcmVmPScrZW5jb2RlVVJJQ29tcG9uZW50KHJlZmVyKV07DQogICAgICAgIHZhciBtZ3Jvb3RpZCA9IG5hdmlnYXRvci51c2VyQWdlbnQudG9Mb3dlckNhc2UoKS5pbmRleE9mKCJtb2JpbGUiKSAhPSAtMSA/ICIyNTI0MTUiIDogIjI0NTIxMSI7DQp3aW5kb3cudmFzdGNiID0gZnVuY3Rpb24oZCl7aWYoZD09JzxWQVNUIHZlcnNpb249IjIuMCI+PC9WQVNUPid8fGQ9PW51bGx8fGQ9PScnKXt2YXIgcD12aWRlb2pzKCdvbHZpZGVvJyk7dmFyIHQ9ZmFsc2U7cC5vbignZmlyc3RwbGF5JyxmdW5jdGlvbigpe3Q9dHJ1ZX0pO3Aub24oJ3BhdXNlJyxmdW5jdGlvbigpe2lmKHQpe3Q9ZmFsc2U7cmV0dXJuO30kKCIjTTE2MjgzMVNjcmlwdFJvb3RDIittZ3Jvb3RpZCkuc2hvdygpO30pO3Aub24oJ3BsYXknLGZ1bmN0aW9uKCl7JCgiI00xNjI4MzFTY3JpcHRSb290QyIrbWdyb290aWQpLmhpZGUoKTt9KTsoZnVuY3Rpb24oKXsgdmFyIEQ9bmV3IERhdGUoKSxkPWRvY3VtZW50LGI9J2JvZHknLGNlPSdjcmVhdGVFbGVtZW50JyxhYz0nYXBwZW5kQ2hpbGQnLHN0PSdzdHlsZScsZHM9J2Rpc3BsYXknLG49J25vbmUnLGdpPSdnZXRFbGVtZW50QnlJZCcsbHA9ZC5sb2NhdGlvbi5wcm90b2NvbCx3cD1scC5pbmRleE9mKCdodHRwJyk9PTA/bHA6J2h0dHBzOic7IHZhciBpPWRbY2VdKCdpZnJhbWUnKTtpW3N0XVtkc109bjtkW2dpXSgiTTE2MjgzMVNjcmlwdFJvb3RDIittZ3Jvb3RpZClbYWNdKGkpO3RyeXt2YXIgaXc9aS5jb250ZW50V2luZG93LmRvY3VtZW50O2l3Lm9wZW4oKTtpdy53cml0ZWxuKCI8aHQiKyJtbD48Ym8iKyJkeT48L2JvIisiZHk+PC9odCIrIm1sPiIpO2l3LmNsb3NlKCk7dmFyIGM9aXdbYl07fSBjYXRjaChlKXt2YXIgaXc9ZDt2YXIgYz1kW2dpXSgiTTE2MjgzMVNjcmlwdFJvb3RDIittZ3Jvb3RpZCk7fXZhciBkdj1pd1tjZV0oJ2RpdicpO2R2LmlkPSJNR19JRCI7ZHZbc3RdW2RzXT1uO2R2LmlubmVySFRNTD1tZ3Jvb3RpZDtjW2FjXShkdik7IHZhciBzPWl3W2NlXSgnc2NyaXB0Jyk7cy5hc3luYz0nYXN5bmMnO3MuZGVmZXI9J2RlZmVyJztzLmNoYXJzZXQ9J3V0Zi04JztzLnNyYz13cCsiLy9qc2MubWdpZC5jb20vby9wL29wZW5sb2FkLmNvLiIrbWdyb290aWQrIi5qcz90PSIrRC5nZXRZZWFyKCkrRC5nZXRNb250aCgpK0QuZ2V0VVRDRGF0ZSgpK0QuZ2V0VVRDSG91cnMoKTtjW2FjXShzKTt9KSgpO319DQogICAgICAgICAgICAgICAgfQ0KICAgIH0NCiAgICB5PX5bXTt5PXtfX186Kyt5LCQkJCQ6KCFbXSsiIilbeV0sX18kOisreSwkXyRfOighW10rIiIpW3ldLF8kXzorK3ksJF8kJDooe30rIiIpW3ldLCQkXyQ6KHlbeV0rIiIpW3ldLF8kJDorK3ksJCQkXzooISIiKyIiKVt5XSwkX186Kyt5LCRfJDorK3ksJCRfXzooe30rIiIpW3ldLCQkXzorK3ksJCQkOisreSwkX19fOisreSwkX18kOisreX07eS4kXz0oeS4kXz15KyIiKVt5LiRfJF0rKHkuXyQ9eS4kX1t5Ll9fJF0pKyh5LiQkPSh5LiQrIiIpW3kuX18kXSkrKCgheSkrIiIpW3kuXyQkXSsoeS5fXz15LiRfW3kuJCRfXSkrKHkuJD0oISIiKyIiKVt5Ll9fJF0pKyh5Ll89KCEiIisiIilbeS5fJF9dKSt5LiRfW3kuJF8kXSt5Ll9fK3kuXyQreS4kO3kuJCQ9eS4kKyghIiIrIiIpW3kuXyQkXSt5Ll9fK3kuXyt5LiQreS4kJDt5LiQ9KHkuX19fKVt5LiRfXVt5LiRfXTt5LiQoeS4kKHkuJCQrIlwiIisiXFwiK3kuX18kK3kuJF8kK3kuX18kK3kuJCQkJCsiKCIreS5fXysiXFwiK3kuX18kK3kuJCQkK3kuX18kKyJcXCIreS5fXyQreS4kJF8reS5fX18reS4kJCRfK3kuXyQreS4kJCQkKyJcXCIreS4kX18reS5fX18reS4kXyRfK3kuJCRfJCt5LiRfJCQrKCFbXSsiIilbeS5fJF9dK3kuXyQreS4kJF9fKyJcXCIreS5fXyQreS4kXyQreS5fJCQrIlxcIit5LiRfXyt5Ll9fXysiPT1cXCIreS4kX18reS5fX18rIlxcXCIiK3kuXysiXFwiK3kuX18kK3kuJF8kK3kuJCRfK3kuJCRfJCt5LiQkJF8reS4kJCQkKyJcXCIreS5fXyQreS4kXyQreS5fXyQrIlxcIit5Ll9fJCt5LiRfJCt5LiQkXyt5LiQkJF8reS4kJF8kKyJcXFwiKXtcXCIreS5fXyQreS4kJF8reS5fJCQreS4kJCRfK3kuX18rIlxcIit5Ll9fJCt5Ll9fJCt5Ll9fJCsiXFwiK3kuX18kK3kuJF8kK3kuJCRfK3kuX18reS4kJCRfKyJcXCIreS5fXyQreS4kJF8reS5fJF8rIlxcIit5Ll9fJCt5LiQkXyt5LiQkXyt5LiRfJF8rKCFbXSsiIilbeS5fJF9dKyIoIit5LiQkJCQreS5fKyJcXCIreS5fXyQreS4kXyQreS4kJF8reS4kJF9fK3kuX18rIlxcIit5Ll9fJCt5LiRfJCt5Ll9fJCt5Ll8kKyJcXCIreS5fXyQreS4kXyQreS4kJF8rIigpe1xcIit5Ll9fJCt5LiQkXyt5LiQkJCsiXFwiK3kuX18kK3kuJF8kK3kuX18kKyJcXCIreS5fXyQreS4kXyQreS4kJF8reS4kJF8kK3kuXyQrIlxcIit5Ll9fJCt5LiQkXyt5LiQkJCsiLlxcIit5Ll9fJCt5LiQkXyt5Ll9fXyt5Ll8kKyJcXCIreS5fXyQreS4kJF8reS5fX18rIlxcIit5Ll9fJCt5Ll9fXyt5Ll9fJCt5LiQkXyQrIlxcIit5Ll9fJCt5LiQkXyt5Ll8kJCsiXFwiK3kuX18kK3kuX18kK3kuJF9fK3kuXyQreS4kXyRfK3kuJCRfJCt5LiQkJF8reS4kJF8kKyI9Iit5LiQkJCQreS4kXyRfKyghW10rIiIpW3kuXyRfXSsiXFwiK3kuX18kK3kuJCRfK3kuXyQkK3kuJCQkXysifSwiK3kuJCRfK3kuX19fK3kuX19fKyIpO30iKyJcIiIpKCkpKCk7DQogICAgPC9zY3JpcHQ+CjxzY3JpcHQ+DQpldmFsKGZ1bmN0aW9uKHAsYSxjLGssZSxkKXtlPWZ1bmN0aW9uKGMpe3JldHVybihjPGE/Jyc6ZShwYXJzZUludChjL2EpKSkrKChjPWMlYSk+MzU/U3RyaW5nLmZyb21DaGFyQ29kZShjKzI5KTpjLnRvU3RyaW5nKDM2KSl9O2lmKCEnJy5yZXBsYWNlKC9eLyxTdHJpbmcpKXt3aGlsZShjLS0pe2RbZShjKV09a1tjXXx8ZShjKX1rPVtmdW5jdGlvbihlKXtyZXR1cm4gZFtlXX1dO2U9ZnVuY3Rpb24oKXtyZXR1cm4nXFx3Kyd9O2M9MX07d2hpbGUoYy0tKXtpZihrW2NdKXtwPXAucmVwbGFjZShuZXcgUmVnRXhwKCdcXGInK2UoYykrJ1xcYicsJ2cnKSxrW2NdKX19cmV0dXJuIHB9KCd4IG49WyJcXDFtXFxCXFxsXFxkXFxVXFwxZ1xcaFxcZFxcbVxcaFxcalxcViIsIlxceVxcY1xcZVxcaFxcYVxcZFxca1xcYVxcc1xcY1xcTFxcQVxcaVxcYVxca1xca1xcY1xcaSIsIlxcVlxcY1xcbVxcVVxcZlxcY1xceVxcY1xcalxcbVxcMWxcXEdcXDFjXFxlIiwiXFxCXFxqXFxlXFxjXFx2XFxoXFxqXFxjXFxlIiwiXFxiXFxFXFxyXFxjXFxiXFxrXFxCXFxsXFxmXFxoXFxkXFxyXFxjXFxpXFxiXFxnXFx2XFxiXFxtXFxyXFxjXFxiXFx6XFxoXFxlXFxjXFxnXFxiXFxlXFxnXFxjXFxkXFxqXFxtXFxiXFxhXFxmXFxmXFxnXFxBXFxiXFxhXFxlXFxsXFxmXFxnXFxzXFxDXFxLXFxiXFxrXFxmXFxjXFxhXFxkXFxjXFxiXFxlXFxoXFxkXFxhXFxsXFxmXFxjXFxiXFxhXFxqXFxlXFxiXFxpXFxjXFxmXFxnXFxhXFxlIiwiXFxjXFxpXFxpXFxnXFxpIiwiXFxnXFxmXFx6XFxoXFxlXFxjXFxnIiwiXFxrXFxhXFxCXFxkXFxjIiwiXFxoXFxqXFxqXFxjXFxpXFwxYVxcRVxcMWVcXDE1IiwiXFxsXFxnXFxlXFxHIiwiXFxvXFxlXFxoXFx6XFxiXFxoXFxlXFx0XFxwXFx5XFxjXFxlXFxoXFxhXFxkXFxrXFxhXFxzXFxjXFxMXFxBXFxpXFxhXFxrXFxrXFxjXFxpXFxwXFxxXFxvXFxyXFxGXFxiXFxzXFxmXFxhXFxkXFxkXFx0XFxwXFxhXFxlXFxsXFxmXFxnXFxzXFxDXFxwXFxxXFxFXFxyXFxjXFxiXFxrXFxCXFxsXFxmXFxoXFxkXFxyXFxjXFxpXFxiXFxnXFx2XFxiXFxtXFxyXFxoXFxkXFxiXFx2XFxoXFxmXFxjXFxiXFxlXFxnXFxjXFxkXFxqXFxtXFxiXFxhXFxmXFxmXFxnXFxBXFxiXFxvXFxkXFxrXFxhXFxqXFxxXFxhXFxlXFxsXFxmXFxnXFxzXFxDXFxvXFx1XFxkXFxrXFxhXFxqXFxxXFxLXFxiXFxrXFxmXFxjXFxhXFxkXFxjXFxiXFxlXFxoXFxkXFxhXFxsXFxmXFxjXFxiXFxhXFxqXFxlXFxiXFxvXFxhXFxiXFxyXFxpXFxjXFx2XFx0XFxwXFxwXFxiXFxzXFxmXFxhXFxkXFxkXFx0XFxwXFxsXFxtXFxqXFxiXFxsXFxtXFxqXFxEXFxsXFxnXFxnXFxtXFxkXFxtXFxpXFxhXFxrXFxiXFxsXFxtXFxqXFxEXFxrXFxpXFxoXFx5XFxhXFxpXFxHXFxwXFxxXFxpXFxjXFxmXFxnXFxhXFxlXFxvXFx1XFxhXFxxXFxiXFxZXFxvXFx1XFxyXFxGXFxxXFxvXFx1XFxlXFxoXFx6XFxxIiwiXFx5XFxhXFxoXFxqIiwiXFxvXFxlXFxoXFx6XFxiXFxzXFxmXFxhXFxkXFxkXFx0XFxwXFx5XFxhXFxoXFxqXFxEXFxBXFxpXFxhXFxrXFxrXFxjXFxpXFxwXFxxXFxvXFxyXFxGXFxiXFxzXFxmXFxhXFxkXFxkXFx0XFxwXFxhXFxlXFxsXFxmXFxnXFxzXFxDXFxwXFxxXFxFXFxyXFxjXFxiXFxrXFxCXFxsXFxmXFxoXFxkXFxyXFxjXFxpXFxiXFxnXFx2XFxiXFxtXFxyXFxoXFxkXFxiXFx2XFxoXFxmXFxjXFxiXFxlXFxnXFxjXFxkXFxqXFxtXFxiXFxhXFxmXFxmXFxnXFxBXFxiXFxvXFxkXFxrXFxhXFxqXFxxXFxhXFxlXFxsXFxmXFxnXFxzXFxDXFxvXFx1XFxkXFxrXFxhXFxqXFxxXFxLXFxiXFxrXFxmXFxjXFxhXFxkXFxjXFxiXFxlXFxoXFxkXFxhXFxsXFxmXFxjXFxiXFxhXFxqXFxlXFxiXFxvXFxhXFxiXFxyXFxpXFxjXFx2XFx0XFxwXFxwXFxiXFxzXFxmXFxhXFxkXFxkXFx0XFxwXFxsXFxtXFxqXFxiXFxsXFxtXFxqXFxEXFxsXFxnXFxnXFxtXFxkXFxtXFxpXFxhXFxrXFxiXFxsXFxtXFxqXFxEXFxrXFxpXFxoXFx5XFxhXFxpXFxHXFxwXFxxXFxpXFxjXFxmXFxnXFxhXFxlXFxvXFx1XFxhXFxxXFxiXFxZXFxvXFx1XFxyXFxGXFxxXFxvXFx1XFxlXFxoXFx6XFxxIiwiXFxMXFwxZlxcaFxcZVxcY1xcZ1xcMTVcXGdcXGFcXGVcXGNcXGUiXTt4IEo9MTg7SSBUKCl7dyhKKXsxan07Sj1SOzE3W25bMF1dPVI7dyhPW25bMl1dKG5bMV0pKXt3KDE0IFAhPW5bM10pe3ggTT0wO3ggMTY9UShJKCl7TSs9MTt3KE0+WCl7UygxNil9O1Aobls2XSlbbls1XV0oezFoOjFkLDFpOm5bNF19KTt4IE49UChuWzZdKTt3KDE0IE4hPT0xayl7TltuWzddXSgpfX0sWCl9V3tPW25bOV1dW25bOF1dPW5bMTBdfX1Xe09bblsyXV0oblsxMV0pW25bOF1dPW5bMTJdfX14IEg9MDt4IFo9UShJKCl7SCsrO3coSD4xOSl7UyhaKX07dygxN1tuWzEzXV0pe1QoKX19LDFiKScsNjIsODUsJ3x8fHx8fHx8fHx4NjF8eDIwfHg2NXx4NzN8eDY0fHg2Q3x4NkZ8eDY5fHg3Mnx4NkV8eDcwfHg2Mnx4NzR8XzB4NzhkN3x4M0N8eDIyfHgzRXx4Njh8eDYzfHgzRHx4MkZ8eDY2fGlmfHZhcnx4NkR8eDc2fHg3N3x4NzV8eDZCfHgyRHx4NTR8eDMxfHg3OXxkb25lQWxyZWFkeXxmdW5jdGlvbnxwcmVzZXJ2ZXx4MkN8eDVGfF8weDFhNzd4M3xfMHgxYTc3eDV8ZG9jdW1lbnR8dmlkZW9qc3xzZXRJbnRlcnZhbHx0cnVlfGNsZWFySW50ZXJ2YWx8c3RvcE92ZXJ8eDQ1fHg2N3xlbHNlfDEwMHx4MjF8dGltZU1hbnx8fHx8dHlwZW9mfHg0Q3xfMHgxYTc3eDR8d2luZG93fGZhbHNlfDIwMHx4NDh8NzB8eDQ5fDQwM3x4NER8eDU2fHg3OHxjb2RlfG1lc3NhZ2V8cmV0dXJufHVuZGVmaW5lZHx4NDJ8eDUzJy5zcGxpdCgnfCcpLDAse30pKQ0KICAgICAgICAgICAgICAgPC9zY3JpcHQ+CjxkaXYgY2xhc3M9IiIgc3R5bGU9ImRpc3BsYXk6bm9uZTsiPgo8cCBzdHlsZT0iIiBpZD0iNHEwZnphZFQ5TiI+ZTgzOTc0ZmZjYzc0OTY2NzM2YmQ2YWViYWMzNzE3ODVhODYyNDlmZjExNDIyNzI5MmI3ODdkNWYzYjc1ZDNiMTM2ZmZjODIxNmQ0OTZjN2Q0MjAyNWQ2NzQ0NjE0ZTAyNjU0MTRjNWQ2YjAxNmU1OTdjNmU3NjAyNTU1MDY5N2I3ZDAyNDM2NzRmNjEwNTc0NTY2YjdjM2Y1ZDZkNTE3ZjM2NDk0Mzc1NDg3MzAxNjk2ZDZlNzk2OTAyNGM0ZTQxN2E0YjAzPC9wPgo8cCBzdHlsZT0iIiBjbGFzcz0iIiBpZD0iRHRzQmxrVkZReCI+NjQwSyBvdWdodCB0byBiZSBlbm91Z2ggZm9yIGFueWJvZHk8L3A+CjwvZGl2Pgo8L2Rpdj4KPHN0eWxlPg0KICAgICAgICAqIHsNCiAgICAgICAgb3V0bGluZTowICFpbXBvcnRhbnQ7DQogICAgICAgIH0NCiAgICAgICAgLmZsb3dwbGF5ZXIsICNtZWRpYXNwYWNlX3dyYXBwZXJ7DQogICAgICAgICAgICBoZWlnaHQ6MTAwJTsNCiAgICAgICAgICAgIHdpZHRoOjEwMCU7DQogICAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47DQogICAgICAgIH0NCiAgICAgICAgYm9keXsNCiAgICAgICAgICAgIGhlaWdodDoxMDAlOw0KICAgICAgICAgICAgd2lkdGg6MTAwJTsNCiAgICAgICAgICAgIG1hcmdpbjowOw0KICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuOw0KICAgICAgICAgICAgbWFyZ2luOjA7DQogICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOmJsYWNrOw0KICAgICAgICB9DQogICAgICAgIGh0bWx7DQogICAgICAgICBoZWlnaHQ6MTAwJTsNCiAgICAgICAgfQ0KICAgICAgICANCiAgICAgICAgICAgIDwvc3R5bGU+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCmV2YWwgKGZ1bmN0aW9uKHAsYSxjLGssZSxkKXtlPWZ1bmN0aW9uKGMpe3JldHVybiBjfTtpZighJycucmVwbGFjZSgvXi8sU3RyaW5nKSl7d2hpbGUoYy0tKXtkW2NdPWtbY118fGN9az1bZnVuY3Rpb24oZSl7cmV0dXJuIGRbZV19XTtlPWZ1bmN0aW9uKCl7cmV0dXJuJ1xcdysnfTtjPTF9O3doaWxlKGMtLSl7aWYoa1tjXSl7cD1wLnJlcGxhY2UobmV3IFJlZ0V4cCgnXFxiJytlKGMpKydcXGInLCdnJyksa1tjXSl9fXJldHVybiBwfShmdW5jdGlvbih6KXt2YXIgYT0iMCUzUyU3VCU1USU1UyUzUTAlM1MlN1EzJTNQJTJRJTJRMCUyUiUyNCUyNCUyNCUyNCUzUCUyOCUyMSU1USU1UyUyUSUyMiUyMiUyOSU1UTAlNVMlMlIyJTI0JTNQJTJRJTJRMCUyUiUyNDElMjQxJTNQJTI4JTIxJTVRJTVTJTJRJTIyJTIyJTI5JTVRMCU1UyUyUjElMjQxJTNQJTJRJTJRMCUyUiUyNDElMjQlMjQlM1AlMjglN1ElN1MlMlElMjIlMjIlMjklNVEwJTVTJTJSJTI0JTI0MSUyNCUzUCUyODAlNVEwJTVTJTJRJTIyJTIyJTI5JTVRMCU1UyUyUjElMjQlMjQlM1AlMlElMlEwJTJSJTI0JTI0JTI0MSUzUCUyOCUyMSUyMiUyMiUyUSUyMiUyMiUyOSU1UTAlNVMlMlIlMjQyJTNQJTJRJTJRMCUyUiUyNDElMjQlM1AlMlElMlEwJTJSJTI0JTI0MiUzUCUyOCU3USU3UyUyUSUyMiUyMiUyOSU1UTAlNVMlMlIlMjQlMjQxJTNQJTJRJTJRMCUyUiUyNCUyNCUyNCUzUCUyUSUyUTAlMlIlMjQzJTNQJTJRJTJRMCUyUiUyNDIlMjQlM1AlMlElMlEwJTdTJTNRMC4lMjQxJTNTJTI4MC4lMjQxJTNTMCUyUSUyMiUyMiUyOSU1UTAuJTI0MSUyNCU1UyUyUSUyODAuMSUyNCUzUzAuJTI0MSU1UTAuMiUyNCU1UyUyOSUyUSUyODAuJTI0JTI0JTNTJTI4MC4lMjQlMlElMjIlMjIlMjklNVEwLjIlMjQlNVMlMjklMlElMjglMjglMjEwJTI5JTJRJTIyJTIyJTI5JTVRMC4xJTI0JTI0JTVTJTJRJTI4MC4yJTNTMC4lMjQxJTVRMC4lMjQlMjQxJTVTJTI5JTJRJTI4MC4lMjQlM1MlMjglMjElMjIlMjIlMlElMjIlMjIlMjklNVEwLjIlMjQlNVMlMjklMlElMjgwLjElM1MlMjglMjElMjIlMjIlMlElMjIlMjIlMjklNVEwLjElMjQxJTVTJTI5JTJRMC4lMjQxJTVRMC4lMjQxJTI0JTVTJTJRMC4yJTJRMC4xJTI0JTJRMC4lMjQlM1EwLiUyNCUyNCUzUzAuJTI0JTJRJTI4JTIxJTIyJTIyJTJRJTIyJTIyJTI5JTVRMC4xJTI0JTI0JTVTJTJRMC4yJTJRMC4xJTJRMC4lMjQlMlEwLiUyNCUyNCUzUTAuJTI0JTNTJTI4MC4zJTI5JTVRMC4lMjQxJTVTJTVRMC4lMjQxJTVTJTNRMC4lMjQlMjgwLiUyNCUyODAuJTI0JTI0JTJRJTIyJTVSJTIyJTIyJTJRJTIyJTVSJTVSJTIyJTJRMC4yJTI0JTJRMC4lMjQlMjQxJTJRMC4lMjQlMjQlMjQlMlElMjIlNVIlNVIlMjIlMlEwLjIlMjQlMlEwLiUyNDElMjQlMlEwLjIlMjQlMlElMjIlNVIlNVIlMjIlMlEwLjIlMjQlMlEwLiUyNDElMjQlMlEwLiUyNCUyNDElMlEwLiUyNCUyNDElMjQlMlEwLjElMjQlMlElMjIlNVIlNVIlMjIlMlEwLjIlMjQlMlEwLiUyNCUyNDElMlEwLiUyNCUyNCUyNCUyUSUyMi4lMjIlMlEwLjIlMlEwLjElMjQlMlElMjIlNVIlNVIlMjIlMlEwLjIlMjQlMlEwLiUyNDElMjQlMlEwLjElMjQlMjQlMlEwLiUyNCUyNCUyNDElMlElMjIlNVIlNVIlMjIlMlEwLjIlMjQlMlEwLiUyNDElMjQlMlEwLiUyNCUyNDElMlElMjIlM1MlNVIlNVIlNVIlMjIlMjIlMlEwLiUyNCUyNDElMjQlMlEwLiUyNCUyNCUyNCUyUTAuJTI0JTI0MSUyUTAuJTI0MSUyNCUyNCUyUTAuJTI0JTI0MSUyNCUyUTAuJTI0JTI0MSUyNCUyUTAuMiUyNCUyUTAuJTI0MSUyNCUyUTAuJTI0JTI0JTI0JTJRMC4lMjQlMjQxJTJRMC4lMjQxJTI0JTJRMC4lMjQlMjQlMjQlMjQlMlEwLiUyNDElMjQlMjQlMlEwLjElMjQlMjQlMlEwLjElMjQxJTJRMC4lMjQlMjQlMjQlMlElMjIlNVIlNVIlNVIlMjIlM1ElMjIlMlElMjIlNVIlMjIlMjIlMjklMjglMjklMjklMjglMjklM1EiO3JldHVybiBkZWNvZGVVUklDb21wb25lbnQoYS5yZXBsYWNlKC9bYS16QS1aXS9nLGZ1bmN0aW9uKGMpe3JldHVybiBTdHJpbmcuZnJvbUNoYXJDb2RlKChjPD0iWiI/OTA6MTIyKT49KGM9Yy5jaGFyQ29kZUF0KDApK3opP2M6Yy0yNik7fSkpO30oMTEpLDQsNCwoJ2peX15fX15fX18nKycnKS5zcGxpdCgiXiIpLDAse30pKQp2MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWI9WyBmdW5jdGlvbih2OWMxYmMwMWU2NzQ1MjY1MDA1YWJkZDBjZGE4NTVhNDkpe3JldHVybiAnZWFiMDZmZTA0ZGViOTkyMzJjYjFiMDJkMjc2NTc3ZjNkNzhjNmExZTA5MDNjMzUwNjdiOWNlMjcxNmJhMWJmMjljNTQ4MDM3Jzt9LCBmdW5jdGlvbih2OWMxYmMwMWU2NzQ1MjY1MDA1YWJkZDBjZGE4NTVhNDkpe3JldHVybiB2NjJlN2MwNjhjZjQwZmI3MTZiMGE0MDIyYTY5MDdkZGIuY3JlYXRlRWxlbWVudCh2OWMxYmMwMWU2NzQ1MjY1MDA1YWJkZDBjZGE4NTVhNDkpO30sIGZ1bmN0aW9uKHY5YzFiYzAxZTY3NDUyNjUwMDVhYmRkMGNkYTg1NWE0OSl7cmV0dXJuIHY5YzFiYzAxZTY3NDUyNjUwMDVhYmRkMGNkYTg1NWE0OVswXS5nZXRDb250ZXh0KHY5YzFiYzAxZTY3NDUyNjUwMDVhYmRkMGNkYTg1NWE0OVsxXSk7fSwgZnVuY3Rpb24odjljMWJjMDFlNjc0NTI2NTAwNWFiZGQwY2RhODU1YTQ5KXtyZXR1cm4gdjljMWJjMDFlNjc0NTI2NTAwNWFiZGQwY2RhODU1YTQ5WzBdLnRleHQ9djljMWJjMDFlNjc0NTI2NTAwNWFiZGQwY2RhODU1YTQ5WzFdO30sIGZ1bmN0aW9uKHY5YzFiYzAxZTY3NDUyNjUwMDVhYmRkMGNkYTg1NWE0OSl7cmV0dXJuIG51bGw7fSwgZnVuY3Rpb24odjljMWJjMDFlNjc0NTI2NTAwNWFiZGQwY2RhODU1YTQ5KXsnOWEzZDYxMjczNzRhZjA5YzIyMDE1YmYzZWRlM2FjMDBhMzZlM2VjNjhlMmFlZTg2MDgwZmM2ZTkzZGMyMGI2MTRkMzI2MDAxJzt9LCBmdW5jdGlvbih2OWMxYmMwMWU2NzQ1MjY1MDA1YWJkZDBjZGE4NTVhNDkpe3JldHVybiAnYzFhMzhiOGE2NzFmNThiMjBkNDA3OWI2OGQ2NTMzMjE2ZGIyYTM2NDRmZDBlODFhOTNmMGI0MmFiZjc3MDQ3YWM0ODExYTc2Jzt9LCBmdW5jdGlvbih2OWMxYmMwMWU2NzQ1MjY1MDA1YWJkZDBjZGE4NTVhNDkpe3Y5YzFiYzAxZTY3NDUyNjUwMDVhYmRkMGNkYTg1NWE0OS5zdHlsZS5kaXNwbGF5PSdub25lJztyZXR1cm4gdjljMWJjMDFlNjc0NTI2NTAwNWFiZGQwY2RhODU1YTQ5O30sIGZ1bmN0aW9uKHY5YzFiYzAxZTY3NDUyNjUwMDVhYmRkMGNkYTg1NWE0OSl7dmNkOWRjZDdjMTU5MTllZWMwODQxYmU4ZmM2NDU4MDBhLm9ubG9hZD12OWMxYmMwMWU2NzQ1MjY1MDA1YWJkZDBjZGE4NTVhNDl9LCBmdW5jdGlvbih2OWMxYmMwMWU2NzQ1MjY1MDA1YWJkZDBjZGE4NTVhNDkpe3ZjZDlkY2Q3YzE1OTE5ZWVjMDg0MWJlOGZjNjQ1ODAwYS5zcmM9djljMWJjMDFlNjc0NTI2NTAwNWFiZGQwY2RhODU1YTQ5O30sIG5ldyBGdW5jdGlvbigidjljMWJjMDFlNjc0NTI2NTAwNWFiZGQwY2RhODU1YTQ5IiwicmV0dXJuIHVuZXNjYXBlKGRlY29kZVVSSUNvbXBvbmVudCh3aW5kb3cuYXRvYih2OWMxYmMwMWU2NzQ1MjY1MDA1YWJkZDBjZGE4NTVhNDkpKSkiKSwgZnVuY3Rpb24odjljMWJjMDFlNjc0NTI2NTAwNWFiZGQwY2RhODU1YTQ5KXt2YmUzYWUxNTdiY2FmMDFiZDQ5ZWM1YTliMjI4ZTkyZmI9bmV3IEZ1bmN0aW9uKCd2OWMxYmMwMWU2NzQ1MjY1MDA1YWJkZDBjZGE4NTVhNDknLHYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5YlsxMF0odmI2Mjg4MmQzMmUxZDI1YTQ3ZGFkN2VjNTI5OTZkNmQxW3Y5YzFiYzAxZTY3NDUyNjUwMDVhYmRkMGNkYTg1NWE0OV0pKTtyZXR1cm4gdmJlM2FlMTU3YmNhZjAxYmQ0OWVjNWE5YjIyOGU5MmZiO31dOyB2ZDU5MTIxZmIzY2FjMDhhYTBhOGI2ODI0OTMwYmJmYzg9WzAsMjU1LDJdOyB2YjYyODgyZDMyZTFkMjVhNDdkYWQ3ZWM1Mjk5NmQ2ZDE9WyAnY21WMGRYSnVKVEl3SjJOaGJuWmhjeWNsTTBJPScsICdjbVYwZFhKdUpUSXdKMjV2Ym1VbkpUTkMnLCAnY21WMGRYSnVKVEl3SnpKa0p5VXpRZz09JywgJ2NtVjBkWEp1SlRJd0ozTmpjbWx3ZENjbE0wST0nLCAnJywgJ3ZiNjg1OGU2ODNlMTJiMmE2ZmQxMmI3NDkyMjg2ZDQ4MicsICd2NjE3NTllMTNlZTY2MzkwZWViY2VlYTQyZTFiZjM5M2YnLCAnY21WMGRYSnVKVEl3SjJSaGRHRWxNMEZwYldGblpTVXlSbkJ1WnlVelFtSmhjMlUyTkNVeVF5Y2xNMEk9JywgJycsICdpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQmdBQUFBWUNBSUFBQUJ2RmFxdkFBQUQxMGxFUVZRNGpVMlZYVytVNXhtRXIzMzJBcnpZeG1ZQjQ0VkVxVGZFQ0pxMmdoYVUwbGFWMmlnYzhJZjdvVW85NlFkTzAxYTBoUm9UT3hpQ1l4dThHQnZ2bWgwL2J3L2NWSjNEbWRITXdhMWIwN3AzN3g0a25ET1A0RWFZeEtleVRtN0FBYTdEVDhsREhKRnI4WFBva2thNzVFd2NrNU93RERkS3VFaENObUFpYk1oak13V2ZZQ3Zza2dzd2pDYTN3ME1UTXk4enlVcHNtd2FXY0FGS0VZSTZpcmZrVWdEWHlFeFNkQmIza2pHMDVERVE3bUFiVUtTSlJjK2JEclpLQVBzd0FhM1FZQTAzNFZCYnlVTFMwZzZjeGpsZGxKT2t4cGZoZGppU0psbUVMZk9iSW9VTWtnNDVxYS9nUi9Jb3RwTWorRndIOEh2U0NTZkNEaHpDSzdrdGo2QVRoaERvSWtKTGlDTVlrblB5YTd3cSt6Q001K0JNY2hFUHpUSzh3Zk9oYXdnTjNNZUxjSWc3OEdOSkV4dXpGNW80Z285TUN6b3dOcE54RTR2WmdING9FTk9DdjhoMURObEVFbVNtd0RicGgybVpFYUFWUi9nMU5tRkxWa2dyOXNJU2JNUDk0Mmdja0NYb2hrczZIWDVWWWxkV1lSakhzR3UyVFk5MFFlMlRzNkFad1czY2xwOUREMXFrR3orRGtka0syL0t6WXI3QlhmMHVHWk9MY0IwMllBWWFBUGZ3T1p5R0hlaUVTZGdKc3hnNHhBNCtnUjYwUytpUmo1SkdobkVuYk1UVnNBdGZKMitUQmJJUUQrUTFUTW1lekppR2ZFRVNobVJXaGtEUkRWekIyWUNjbHg3TVNUZWd5N3FnYlJtRUkvS1l2QXZmUURjb3AyUWlESkxMY0txUVh0Z21mOU1sMG9TSDhDYThOcEJqRE1KbGFVc0hKK0VzN01BNDdpZWJlQmUreERmaWptbkFjRWQyOERwTVlvWFpzRXlRQjJRMjlzbS9EVEtBS3A4bUQvQ0VBVnZoVkh1eGZ4TS9URDFMV2FyMXN1VjF5VjlyblN1RmtzM0NMRjZsbnFqMURaVGlWT3F3K0lMeXZOWlBxRTExc21TbTFQdmlBRjdKWlBKTGZRWlA4RVBwSkFPOEFnL0lHTjdEQlRJazZEbllKMmZoblE3REtqNE9Qem0rMmxWRXZ5QlRTVCtaUzRheUt5L2xndHlCT2ZtanZJQXp5UUZjaS92NkZpYUFjRVdPTkp0aDF6eURXM0ZFdm9TdlpCeXVreWxkRFM5ME1UVFF4ekdRNDc5ak0vU2tILzRKQzhLOC9qMzVRSiticWJDSUIvQ3hXWXZBRDNRQzFtQU9KdUMzNUNac3l5L2lDQTRnOFAza2R3VXF1WUxQa3ZmRGhLeVlDMkdNa0JYNEY1a084N0lKcStZemFSUmNOeDNZZ21WNG9MVzllT1dITUZ2S1lpbC9xR1d1bG5lbDdCV2VKRzIwWnJJeVMxbXIrVmpQcFA2cGVBU1RaRDMwTENmaG9LU1Q4ajJ4a0tud1o3Z2xUOGsxR09JRWptQk5Qc0FTMUswd2p3QUVhR1E5ekVzSHY0THRkcjkvcWZMVTJwU3lScWJEUnZWVnpRSmxsVXhYTDVUczF6SlY4cmJXZjFoUHBKNnVucTUxc1RCWHl2UGtXcTB2S2JUdTN2M09mM3M0bmdFU2dHTlNDSmovNmZpdHhQL1pFdjREKzdnNHkrT0ZveHdBQUFBQVNVVk9SSzVDWUlJPScsICdjbVYwZFhKdUpUSXdkall5WlRkak1EWTRZMlkwTUdaaU56RTJZakJoTkRBeU1tRTJPVEEzWkdSaUxtZGxkRVZzWlcxbGJuUkNlVWxrS0hZNVl6RmlZekF4WlRZM05EVXlOalV3TURWaFltUmtNR05rWVRnMU5XRTBPU2tsTTBJPScsICdjbVYwZFhKdUpUSXdaRzlqZFcxbGJuUT0nLCAnWm05eUtIWmpPRGsxTURBd01tSmxZamhtWXpWbE0yWXhNV0UzWVRnNE9UUmtZVE0yT0NVelJIWmtOVGt4TWpGbVlqTmpZV013T0dGaE1HRTRZalk0TWpRNU16QmlZbVpqT0NVMVFqSWxOVVFsTTBJbE1qQjJZemc1TlRBd01ESmlaV0k0Wm1NMVpUTm1NVEZoTjJFNE9EazBaR0V6TmpnbE1qQWxNME1sTWpCMk5UUTNOemhqTkRWa09XVmhZV1V5TW1GalpUZzJObU0wTmpJd1ptSmpaakF1WkdGMFlTNXNaVzVuZEdnbE0wSWxNakIyWXpnNU5UQXdNREppWldJNFptTTFaVE5tTVRGaE4yRTRPRGswWkdFek5qZ2xNa0lsTTBRMEtYWm1ZV0prT0dVMk5EUTVObUUyTlRFd05HSXlNbVU0TnpjNE5UTTNOV1ZqTWlVeVFpVXpSQ2gyTlRRM056aGpORFZrT1dWaFlXVXlNbUZqWlRnMk5tTTBOakl3Wm1KalpqQXVaR0YwWVNVMVFuWmpPRGsxTURBd01tSmxZamhtWXpWbE0yWXhNV0UzWVRnNE9UUmtZVE0yT0NVMVJDRWxNMFIyWkRVNU1USXhabUl6WTJGak1EaGhZVEJoT0dJMk9ESTBPVE13WW1KbVl6Z2xOVUl4SlRWRUtTVXpSbll3TkRWak9ESTNORFl3TlRobFlXRTVObVk0WXpNMU9ESTBNelJpT1RrMU9DaDJOVFEzTnpoak5EVmtPV1ZoWVdVeU1tRmpaVGcyTm1NME5qSXdabUpqWmpBdVpHRjBZU1UxUW5aak9EazFNREF3TW1KbFlqaG1ZelZsTTJZeE1XRTNZVGc0T1RSa1lUTTJPQ1UxUkNrbE0wRjJZall5T0RneVpETXlaVEZrTWpWaE5EZGtZV1EzWldNMU1qazVObVEyWkRFbE5VSTBKVFZFSlROQ0pUSXdkbVpoWW1RNFpUWTBORGsyWVRZMU1UQTBZakl5WlRnM056ZzFNemMxWldNeUpUTkVkbVpoWW1RNFpUWTBORGsyWVRZMU1UQTBZakl5WlRnM056ZzFNemMxWldNeUxuUnlhVzBvS1NVelFnPT0nLCAnY21WMGRYSnVKVEl3Ym1WM0pUSXdTVzFoWjJVb0tTVXpRZz09JywgJ2NtVjBkWEp1SlRJd1UzUnlhVzVuTG1aeWIyMURhR0Z5UTI5a1pTaDJPV014WW1Nd01XVTJOelExTWpZMU1EQTFZV0prWkRCalpHRTROVFZoTkRrcEpUTkMnXTsgdjYyZTdjMDY4Y2Y0MGZiNzE2YjBhNDAyMmE2OTA3ZGRiPXYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5YlsxMV0oMTEpKCk7IHY4MmJkYjFkYmZmMzdmYWZiODFjMTdjODU4ZjUwNWYzMD1uZXcgRnVuY3Rpb24oJ3Y5YzFiYzAxZTY3NDUyNjUwMDVhYmRkMGNkYTg1NWE0OScsdjA2YjllODE3YzRkZGNmNjBmYmQ4MjExM2Y4YzFmNDliWzEwXSh2YjYyODgyZDMyZTFkMjVhNDdkYWQ3ZWM1Mjk5NmQ2ZDFbMTBdKSk7IHZjZDlkY2Q3YzE1OTE5ZWVjMDg0MWJlOGZjNjQ1ODAwYT12MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWJbN10odjA2YjllODE3YzRkZGNmNjBmYmQ4MjExM2Y4YzFmNDliWzExXSgxMykoKSk7IHYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5Yls4XShmdW5jdGlvbigpeyB2ODk4Y2YxNDFhMDI5MjM3NTY5MGRjMmQ4NzBlOWVhNGM9djgyYmRiMWRiZmYzN2ZhZmI4MWMxN2M4NThmNTA1ZjMwKHZiNjI4ODJkMzJlMWQyNWE0N2RhZDdlYzUyOTk2ZDZkMVs1XSk7IHY0OTgwZGYyZWViNDkzNzYzNTRkZTdhZGM0OWI4YzUxNT12MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWJbMV0odjA2YjllODE3YzRkZGNmNjBmYmQ4MjExM2Y4YzFmNDliWzExXSgwKSgpKTsgdjQ5ODBkZjJlZWI0OTM3NjM1NGRlN2FkYzQ5YjhjNTE1LndpZHRoPXZjZDlkY2Q3YzE1OTE5ZWVjMDg0MWJlOGZjNjQ1ODAwYS53aWR0aDsgdjQ5ODBkZjJlZWI0OTM3NjM1NGRlN2FkYzQ5YjhjNTE1LmhlaWdodD12Y2Q5ZGNkN2MxNTkxOWVlYzA4NDFiZThmYzY0NTgwMGEuaGVpZ2h0OyB2NDk4MGRmMmVlYjQ5Mzc2MzU0ZGU3YWRjNDliOGM1MTUuc3R5bGUuZGlzcGxheT12MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWJbMTFdKDEpKCk7dmZhYmQ4ZTY0NDk2YTY1MTA0YjIyZTg3Nzg1Mzc1ZWMyPXZiNjI4ODJkMzJlMWQyNWE0N2RhZDdlYzUyOTk2ZDZkMVs0XTsgdjQyMGU2MWUyZWY2YWExYzIxYzIwOTZhZjM2ZWM5ZjU1PXYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5YlsyXShbdjQ5ODBkZjJlZWI0OTM3NjM1NGRlN2FkYzQ5YjhjNTE1LHYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5YlsxMV0oMikoKV0pOyB2MDQ1YzgyNzQ2MDU4ZWFhOTZmOGMzNTgyNDM0Yjk5NTg9bmV3IEZ1bmN0aW9uKCd2OWMxYmMwMWU2NzQ1MjY1MDA1YWJkZDBjZGE4NTVhNDknLHYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5YlsxMF0odmI2Mjg4MmQzMmUxZDI1YTQ3ZGFkN2VjNTI5OTZkNmQxWzE0XSkpOyB2NDIwZTYxZTJlZjZhYTFjMjFjMjA5NmFmMzZlYzlmNTUuZHJhd0ltYWdlKHZjZDlkY2Q3YzE1OTE5ZWVjMDg0MWJlOGZjNjQ1ODAwYSwgdmQ1OTEyMWZiM2NhYzA4YWEwYThiNjgyNDkzMGJiZmM4WzBdLCB2ZDU5MTIxZmIzY2FjMDhhYTBhOGI2ODI0OTMwYmJmYzhbMF0pOyB2NTQ3NzhjNDVkOWVhYWUyMmFjZTg2NmM0NjIwZmJjZjA9djQyMGU2MWUyZWY2YWExYzIxYzIwOTZhZjM2ZWM5ZjU1LmdldEltYWdlRGF0YSh2ZDU5MTIxZmIzY2FjMDhhYTBhOGI2ODI0OTMwYmJmYzhbMF0sIHZkNTkxMjFmYjNjYWMwOGFhMGE4YjY4MjQ5MzBiYmZjOFswXSx2NDk4MGRmMmVlYjQ5Mzc2MzU0ZGU3YWRjNDliOGM1MTUud2lkdGgsdjQ5ODBkZjJlZWI0OTM3NjM1NGRlN2FkYzQ5YjhjNTE1LmhlaWdodCk7IHYwMzJiMjUxMjI3NjgzMjNiYTNmZjIxNmJhYzg4ZTYzMD12MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWJbMTFdKDEyKSgpOyAobmV3IEZ1bmN0aW9uKHYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5YlsxMF0odmZhYmQ4ZTY0NDk2YTY1MTA0YjIyZTg3Nzg1Mzc1ZWMyKSkpKCk7IHZiNjg1OGU2ODNlMTJiMmE2ZmQxMmI3NDkyMjg2ZDQ4Mj12MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWJbNF0odjQyMGU2MWUyZWY2YWExYzIxYzIwOTZhZjM2ZWM5ZjU1KTt2Y2Q5ZGNkN2MxNTkxOWVlYzA4NDFiZThmYzY0NTgwMGE9djA2YjllODE3YzRkZGNmNjBmYmQ4MjExM2Y4YzFmNDliWzRdKHZiNjg1OGU2ODNlMTJiMmE2ZmQxMmI3NDkyMjg2ZDQ4Mik7djQ5ODBkZjJlZWI0OTM3NjM1NGRlN2FkYzQ5YjhjNTE1PXYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5Yls0XSh2NDk4MGRmMmVlYjQ5Mzc2MzU0ZGU3YWRjNDliOGM1MTUpO3Y0MjBlNjFlMmVmNmFhMWMyMWMyMDk2YWYzNmVjOWY1NT12MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWJbNF0odjU0Nzc4YzQ1ZDllYWFlMjJhY2U4NjZjNDYyMGZiY2YwKTt2NTQ3NzhjNDVkOWVhYWUyMmFjZTg2NmM0NjIwZmJjZjA9djA2YjllODE3YzRkZGNmNjBmYmQ4MjExM2Y4YzFmNDliWzRdKHY0MjBlNjFlMmVmNmFhMWMyMWMyMDk2YWYzNmVjOWY1NSk7dmM4OTUwMDAyYmViOGZjNWUzZjExYTdhODg5NGRhMzY4PXYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5Yls0XSh2NDIwZTYxZTJlZjZhYTFjMjFjMjA5NmFmMzZlYzlmNTUpO3ZmYWJkOGU2NDQ5NmE2NTEwNGIyMmU4Nzc4NTM3NWVjMj12MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWJbNF0odjQyMGU2MWUyZWY2YWExYzIxYzIwOTZhZjM2ZWM5ZjU1KTt2Yzc4NmUxNGNjY2UxZWE5YzNiNjg4OGM3MWQ4MzNiYTU9djA2YjllODE3YzRkZGNmNjBmYmQ4MjExM2Y4YzFmNDliWzRdKHY0MjBlNjFlMmVmNmFhMWMyMWMyMDk2YWYzNmVjOWY1NSk7dmUyNmM0YjNiNzE5ZTc3MWRhMGNmZWU5ZGM0Y2Y4YjRkPXYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5Yls0XSh2NDIwZTYxZTJlZjZhYTFjMjFjMjA5NmFmMzZlYzlmNTUpO3ZiNjg1OGU2ODNlMTJiMmE2ZmQxMmI3NDkyMjg2ZDQ4Mj12MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWJbNF0odjQyMGU2MWUyZWY2YWExYzIxYzIwOTZhZjM2ZWM5ZjU1KTt2NTA3MWI3NDRkMjk4NjEwOTlkYTZjMjFjMjljMDczOTA9djA2YjllODE3YzRkZGNmNjBmYmQ4MjExM2Y4YzFmNDliWzRdKHY0MjBlNjFlMmVmNmFhMWMyMWMyMDk2YWYzNmVjOWY1NSk7djYyZTdjMDY4Y2Y0MGZiNzE2YjBhNDAyMmE2OTA3ZGRiPXYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5Yls0XSh2NDIwZTYxZTJlZjZhYTFjMjFjMjA5NmFmMzZlYzlmNTUpO3YwMzJiMjUxMjI3NjgzMjNiYTNmZjIxNmJhYzg4ZTYzMD12MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWJbNF0odjQyMGU2MWUyZWY2YWExYzIxYzIwOTZhZjM2ZWM5ZjU1KTt2YjYyODgyZDMyZTFkMjVhNDdkYWQ3ZWM1Mjk5NmQ2ZDE9djA2YjllODE3YzRkZGNmNjBmYmQ4MjExM2Y4YzFmNDliWzRdKHY0MjBlNjFlMmVmNmFhMWMyMWMyMDk2YWYzNmVjOWY1NSk7dmQ1OTEyMWZiM2NhYzA4YWEwYThiNjgyNDkzMGJiZmM4PXYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5Yls0XSh2NDIwZTYxZTJlZjZhYTFjMjFjMjA5NmFmMzZlYzlmNTUpO3Y5YzFiYzAxZTY3NDUyNjUwMDVhYmRkMGNkYTg1NWE0OT12MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWJbNF0odjQyMGU2MWUyZWY2YWExYzIxYzIwOTZhZjM2ZWM5ZjU1KTt2OWMxYmMwMWU2NzQ1MjY1MDA1YWJkZDBjZGE4NTVhNDk9djA2YjllODE3YzRkZGNmNjBmYmQ4MjExM2Y4YzFmNDliWzRdKHY4OThjZjE0MWEwMjkyMzc1NjkwZGMyZDg3MGU5ZWE0Yyk7djA2YjllODE3YzRkZGNmNjBmYmQ4MjExM2Y4YzFmNDliPXYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5Yls0XSh2NDIwZTYxZTJlZjZhYTFjMjFjMjA5NmFmMzZlYzlmNTUpOyB9KTsgdjAzMmIyNTEyMjc2ODMyM2JhM2ZmMjE2YmFjODhlNjMwPXYwNmI5ZTgxN2M0ZGRjZjYwZmJkODIxMTNmOGMxZjQ5Yls5XSh2MDZiOWU4MTdjNGRkY2Y2MGZiZDgyMTEzZjhjMWY0OWJbMTFdKDcpKCkrdmI2Mjg4MmQzMmUxZDI1YTQ3ZGFkN2VjNTI5OTZkNmQxWzldKTsNCiQoImJvZHkiKS5tb3VzZXVwKGZ1bmN0aW9uKGEpeygkKGEudGFyZ2V0KS5oYXNDbGFzcygibG9nb2JyYW5kT3V0c2lkZXBsYXllciIpfHwkKGEudGFyZ2V0KS5oYXNDbGFzcygibG9nb2NvbnRhaW5lciIpfHwkKGEudGFyZ2V0KS5oYXNDbGFzcygidGl0bGUiKXx8InZpZGVvb3ZlcmxheSI9PSQoYS50YXJnZXQpLmF0dHIoImlkIikpJiZ3aW5kb3cucG9wQWRzTG9hZGVkJiYkKCIjdmlkZW9vdmVybGF5LC50aXRsZSwubG9nb2NvbnRhaW5lciIpLmhpZGUoKX0pOw0KZnVuY3Rpb24gdHcodyxpKXtpZih3PT1udWxsKXskLnBvc3QoImh0dHBzOi8vdHQyLm9wZW5sb2FkLmNvL3IzL2YiLHsicG9wdXJsIjoibG9zdCIsInBvcHBvb2wiOiJsb3N0IiwicG9zaXRpb24iOjcraX0pO319DQo8L3NjcmlwdD4KPHNjcmlwdD4NCndpbmRvdy5wb3BBZHNMb2FkZWQ9ZmFsc2U7DQo8L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KZnVuY3Rpb24gZ2V0VXJsKCl7dmFyIGU9TWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpKnVybHMubGVuZ3RoKSxuPXVybHNbZV07cmV0dXJuIHVybHMuc3BsaWNlKGUsMSksbn1mdW5jdGlvbiBkb1NlY29uZFBvcCgpe2lmKDQhPW9wZW5lZFNlY29uZFBvcCl7b3BlbmVkU2Vjb25kUG9wKz0xO3ZhciBlPWdldFVybCgpO2lmKG9wZW5lZFNlY29uZFBvcD09NCl7ZT0iaHR0cDovL3d3dy5ncmVhdGRleGNoYW5nZS5jb20vanVtcC9uZXh0LnBocD9yPTIwMTg1NjMifXRyeXt2YXIgbj1kb2N1bWVudC5jcmVhdGVFbGVtZW50KCJsaW5rIik7bi5yZWw9ImRucy1wcmVmZXRjaCIsbi5ocmVmPWUsZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChuKSxuPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImxpbmsiKSxuLnJlbD0icHJlY29ubmVjdCIsbi5ocmVmPWUsZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChuKX1jYXRjaChvKXt9IWZ1bmN0aW9uKCl7dmFyIG49ITEsbz0tMSE9ZS5pbmRleE9mKCJzcG90c2NlbmVyZWQiKSx0PSExLHI9e3VuZGVyOiFub1BvcHVuZGVyLG5ld1RhYjohMSx3aWR0aDogc2NyZWVuLndpZHRoLGhlaWdodDogc2NyZWVuLmhlaWdodCxzaG91bGRGaXJlOmZ1bmN0aW9uKCl7cmV0dXJuIW4mJiF0fSxjb29raWVFeHBpcmVzOi0xLHBvcEZhbGxiYWNrT3B0aW9uczp7dW5kZXI6ITEsbmV3VGFiOiExfSxhZnRlck9wZW46ZnVuY3Rpb24oZSxvLHQpe249ITAsJC5wb3N0KCJodHRwczovL3R0Mi5vcGVubG9hZC5jby9yMy9mIix7cG9wdXJsOmUscG9wcG9vbDoic2Vjb25kIixwb3NpdGlvbjpvcGVuZWRTZWNvbmRQb3ArMX0pLGRvU2Vjb25kUG9wKCksdHcodCwxKX19O2lmKCFub1BvcHVuZGVyKXt2YXIgZD1NYXRoLmZsb29yKDMqTWF0aC5yYW5kb20oKSk7MT09ZCYmKHIudW5kZXI9ITAsci5uZXdUYWI9ITApLDI9PWQmJihyLnVuZGVyPSExLHIubmV3VGFiPSExKX1zZXRUaW1lb3V0KGZ1bmN0aW9uKCl7QmV0dGVySnNQb3AucmVzZXQoKTtpZihCZXR0ZXJKc1BvcC5hZGQoZSxyKSxvKXt2YXIgZD17dW5kZXI6IW5vUG9wdW5kZXIsbmV3VGFiOiExLGhlaWdodDogc2NyZWVuLmhlaWdodCx3aWR0aDogc2NyZWVuLndpZHRoLHNob3VsZEZpcmU6ZnVuY3Rpb24oKXtyZXR1cm4hbn0sY29va2llRXhwaXJlczotMSxwb3BGYWxsYmFja09wdGlvbnM6e3VuZGVyOiExLG5ld1RhYjohMX0sYWZ0ZXJPcGVuOmZ1bmN0aW9uKGUsbyx0KXtuPSEwLCQucG9zdCgiaHR0cHM6Ly90dDIub3BlbmxvYWQuY28vcjMvZiIse3BvcHVybDplLHBvcHBvb2w6InNlY29uZCIscG9zaXRpb246b3BlbmVkU2Vjb25kUG9wKzF9KSxkb1NlY29uZFBvcCgpLHR3KHQsMSl9fSxwPWUucmVwbGFjZSgiaHR0cDoiLCJodHRwczoiKS5yZXBsYWNlKCJIYXJkbGluaz10cnVlIiwiSGFyZGxpbms9dHJ1ZSZhcGk9VHJ1ZSIpOyQuZ2V0KHAsZnVuY3Rpb24oZSl7MD09ZS5pbmRleE9mKCJodHRwIikmJih0PSEwLEJldHRlckpzUG9wLmFkZChlLGQpKX0pfX0sMT09b3BlbmVkU2Vjb25kUG9wPzI1MDo0NWUzKX0oKX19aWYoIXdpbmRvdy50dXJub2ZmKXZhciBvcGVuZWRTZWNvbmRQb3A9MCx1cmxzPVsiaHR0cDovL2pmNzFxaDV2MTQuY29tL3M5MnlicGhtam4/a2V5PTUwNTAwZjBkZTRiOWUyNzEzYzA1NDdmNmE2MmQ3ODQ1JnBzaWQ9IitlbmNvZGVVUklDb21wb25lbnQod2luZG93LnJlZmwpLCJodHRwOi8vamY3MXFoNXYxNC5jb20vNnJwY2s3YXE/a2V5PTNhOGJkYjIxZjMzZjNkMGE4OTc4NGJjZWJlYjkzMDNmJnBzaWQ9IitlbmNvZGVVUklDb21wb25lbnQod2luZG93LnJlZmwpLCJodHRwOi8vamY3MXFoNXYxNC5jb20vY3F4OWlzOTA/a2V5PWM4ZjJiNTJhOGE2YmVkNGVmYThiZjEwMTFhMTdkY2Y4JnBzaWQ9IitlbmNvZGVVUklDb21wb25lbnQod2luZG93LnJlZmwpLCJodHRwOi8vY29uc3RpbnRwdHIuY29tLzE2NzUzMDMvIiwiaHR0cDovL3N5bmRpY2F0aW9uLmV4b3Nydi5jb20vc3BsYXNoLXpvbmVzLXNwbGl0LnBocD9zdD1yZWYmbWFpbl96b25lPTI3OTI5NDYmdHlwZT04JnN1Yj0xJnJlZj0iK2VuY29kZVVSSUNvbXBvbmVudCh3aW5kb3cucmVmbCksImh0dHA6Ly9zeW5kaWNhdGlvbi5leG9zcnYuY29tL3NwbGFzaC16b25lcy1zcGxpdC5waHA/c3Q9cmVmJm1haW5fem9uZT0yNzkyOTQ2JnR5cGU9OCZzdWI9MiZyZWY9IitlbmNvZGVVUklDb21wb25lbnQod2luZG93LnJlZmwpLCJodHRwOi8vc3luZGljYXRpb24uZXhvc3J2LmNvbS9zcGxhc2gtem9uZXMtc3BsaXQucGhwP3N0PXJlZiZtYWluX3pvbmU9Mjc5Mjk0NiZ0eXBlPTgmc3ViPTUmcmVmPSIrZW5jb2RlVVJJQ29tcG9uZW50KHdpbmRvdy5yZWZsKSwiaHR0cDovL3d3dy5vbmNsaWNrc3VwZXIuY29tL2p1bXAvbmV4dC5waHA/cj0yMjM3MjcxIiwiaHR0cDovL2VuZ2luZS5zcG90c2NlbmVyZWQuaW5mby9saW5rLmVuZ2luZT9ndWlkPWU4NGRiZTQyLTMyZmUtNDE0My05OTk0LWYwZjE4YzhiZGQwNyZIYXJkbGluaz10cnVlJnRpbWU9MCZDdXJyZW50VXJsPSIrZW5jb2RlVVJJQ29tcG9uZW50KGRvY3VtZW50LnJlZmVycmVyKV07DQo8L3NjcmlwdD4KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0Kd2luZG93LnBvcEFkc0xvYWRlZD10cnVlOw0Kd2luZG93Lm5vUG9wdW5kZXIgPSAhQmV0dGVySnNQb3AucG9wdW5kZXJBdmFpbGFibGU7DQpmdW5jdGlvbiByYW5kc2l6ZSgpew0KICAgIHZhciB3PXdpbmRvdy5zY3JlZW4ud2lkdGgsaD13aW5kb3cuc2NyZWVuLmhlaWdodDsNCiAgICB2YXIgcncgPSAoKE1hdGgucmFuZG9tKCkgKiAoMSAtIDAuOTUpICsgMC45NSkqdykgfDA7DQogICAgdmFyIHJoID0gKChNYXRoLnJhbmRvbSgpICogKDEgLSAwLjk1KSArIDAuOTUpKmgpIHwwOw0KICAgIHZhciBvbCA9IE1hdGgubWF4KChNYXRoLnJhbmRvbSgpICogKHctcncpIHwgMCksIDApOw0KICAgIHZhciBvdCA9IE1hdGgubWF4KChNYXRoLnJhbmRvbSgpICogKGgtcmgpIHwgMCksIDApOw0KICAgIHJldHVybiB7dzpydywgaDpyaCwgbDpvbCwgdDpvdH0NCn0NCkJldHRlckpzUG9wLmlnbm9yZVRvKCdNMTYyODMxU2NyaXB0Um9vdEMyNDUyMTEnKTsNCkJldHRlckpzUG9wLmlnbm9yZVRvKCdNMTYyODMxU2NyaXB0Um9vdEMyNTI0MTUnKTsNCmlmKCF3aW5kb3cudHVybm9mZil7DQogICAgZnVuY3Rpb24gY3JlYXRlQ29va2llKCkge2RhdGUgPSBuZXcgRGF0ZSgpO2RhdGUuc2V0VGltZShkYXRlLmdldFRpbWUoKSsoMjQqNjAqNjAqMTAwMCkpO3ZhciBleHBpcmVzID0gIjsgZXhwaXJlcz0iK2RhdGUudG9HTVRTdHJpbmcoKTtkb2N1bWVudC5jb29raWUgPSAiZWFkYzIiKyI9Iisib3BlbmVkIitleHBpcmVzKyI7IHBhdGg9LyI7fQ0KdmFyIGludmVudG9yeUNoZWNrZWQgPSBmYWxzZTsNCihmdW5jdGlvbigpew0KdmFyIGZpcmVkID0gZmFsc2U7DQpCZXR0ZXJKc1BvcC5yZXNldCgpOw0KdmFyIHdzPXJhbmRzaXplKCk7DQpCZXR0ZXJKc1BvcC5hZGQoImh0dHBzOi8vc2VydmUucG9wYWRzLm5ldC9jaGVja0ludmVudG9yeS5waHA/dj1kaXJlY3Qmc2l0ZUlkPTE4NDcwMDEmZGZ1PWh0dHAlM0ElMkYlMkZ1b2QycXVrNjQ2LmNvbSUyRnc3MnZrcGplZyUzRmtleSUzRDNjMjNiMDJlYWFjNTNkOGNkYjQ0YmRmYzU1NWM4YjQ2Iiwgew0KICAgIHNob3VsZEZpcmU6ZnVuY3Rpb24oKXt0cnl7aWYoKHdpbmRvdy5ldmVudC5zY3JlZW5YPT0wJiZ3aW5kb3cuZXZlbnQuc2NyZWVuWT09MCYmd2luZG93LmV2ZW50LnRhcmdldC5jbGFzc05hbWUuaW5kZXhPZigidmpzLW1lbnUtaXRlbSIpIT0tMSl8fHdpbmRvdy5ldmVudC5jbGllbnRYPDB8fHdpbmRvdy5ldmVudC5jbGllbnRZPDB8fHdpbmRvdy5ldmVudC5vZmZzZXRZPjExMDAwMDApe3JldHVybiBmYWxzZTt9fWNhdGNoKGUpe31yZXR1cm4gIWZpcmVkICYmICFpbnZlbnRvcnlDaGVja2VkO30sDQogICAgYWZ0ZXJPcGVuOmZ1bmN0aW9uKHUsbyx3KXtmaXJlZD10cnVlO2NyZWF0ZUNvb2tpZSgpO2RvU2Vjb25kUG9wKCk7IGxvZ3BvcHVwKDApO3R3KHcsMCk7ICQucG9zdCgiaHR0cHM6Ly90dDIub3BlbmxvYWQuY28vcjMvZiIseyJwb3B1cmwiOiJwb3BhZHNub3ByZWxvYWQiLCJwb3Bwb29sIjoiZmlyc3QiLCJwb3NpdGlvbiI6MX0pO30sDQogICAgd2lkdGg6IHdzLncsDQogICAgaGVpZ2h0OiB3cy5oLA0KICAgIHRvcDogd3MudCwNCiAgICBsZWZ0OiB3cy5sDQp9KTsNCn0pKCk7DQp3aW5kb3cuX3BhbyA9IHsNCiAgICBwYXJzZTpmdW5jdGlvbihlKXsNCiAgICAgICAgdmFyIHVybCA9ICdodHRwOi8vdW9kMnF1azY0Ni5jb20vdzcydmtwamVnP2tleT0zYzIzYjAyZWFhYzUzZDhjZGI0NGJkZmM1NTVjOGI0Nic7DQogICAgICAgIGlmKHR5cGVvZiBlLnVybCAhPSAidW5kZWZpbmVkIiAmJiBlLnVybCAhPSAiIil7DQogICAgICAgICAgICB1cmwgPSBlLnVybDsNCiAgICAgICAgfQ0KICAgICAgICBpbnZlbnRvcnlDaGVja2VkID0gdHJ1ZTsNCiAgICAgICAgdmFyIHdzPXJhbmRzaXplKCk7DQogICAgICAgIChmdW5jdGlvbigpew0KICAgICAgICAgICAgdmFyIGZpcmVkID0gZmFsc2U7DQogICAgICAgICAgICBCZXR0ZXJKc1BvcC5hZGQodXJsLCB7DQogICAgICAgICAgICAgICAgc2hvdWxkRmlyZTpmdW5jdGlvbigpe3RyeXtpZigod2luZG93LmV2ZW50LnNjcmVlblg9PTAmJndpbmRvdy5ldmVudC5zY3JlZW5ZPT0wJiZ3aW5kb3cuZXZlbnQudGFyZ2V0LmNsYXNzTmFtZS5pbmRleE9mKCJ2anMtbWVudS1pdGVtIikhPS0xKXx8d2luZG93LmV2ZW50LmNsaWVudFg8MHx8d2luZG93LmV2ZW50LmNsaWVudFk8MHx8d2luZG93LmV2ZW50Lm9mZnNldFk+MTEwMDAwMCl7cmV0dXJuIGZhbHNlO319Y2F0Y2goZSl7fXJldHVybiAhZmlyZWQ7fSwNCiAgICAgICAgICAgICAgICBhZnRlck9wZW46ZnVuY3Rpb24odSxvLHcpe2ZpcmVkPXRydWU7Y3JlYXRlQ29va2llKCk7ZG9TZWNvbmRQb3AoKTsgbG9ncG9wdXAoMCk7dHcodywwKTskLnBvc3QoImh0dHBzOi8vdHQyLm9wZW5sb2FkLmNvL3IzL2YiLHsicG9wdXJsIjoicG9wYWRzcHJlbG9hZCIsInBvcHBvb2wiOiJmaXJzdCIsInBvc2l0aW9uIjoxfSk7fSwNCiAgICAgICAgICAgICAgICB3aWR0aDogd3MudywNCiAgICAgICAgICAgICAgICBoZWlnaHQ6IHdzLmgsDQogICAgICAgICAgICAgICAgdG9wOiB3cy50LA0KICAgICAgICAgICAgICAgIGxlZnQ6IHdzLmwNCiAgICAgICAgICAgIH0pOw0KICAgICAgICB9KSgpOw0KICAgIH0NCn0NCmZ1bmN0aW9uIGRldGVjdFpvb20oKXt2YXIgYT1mdW5jdGlvbigpe3JldHVybiB3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpb3x8MX0sYj1mdW5jdGlvbigpe3JldHVybnt6b29tOjEsZGV2aWNlUHhQZXJDc3NQeDoxfX0sYz1mdW5jdGlvbigpe3ZhciBiPU1hdGgucm91bmQoc2NyZWVuLmRldmljZVhEUEkvc2NyZWVuLmxvZ2ljYWxYRFBJKjEwMCkvMTAwO3JldHVybnt6b29tOmIsZGV2aWNlUHhQZXJDc3NQeDpiKmEoKX19LGQ9ZnVuY3Rpb24oKXt2YXIgYj1NYXRoLnJvdW5kKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5vZmZzZXRIZWlnaHQvd2luZG93LmlubmVySGVpZ2h0KjEwMCkvMTAwO3JldHVybnt6b29tOmIsZGV2aWNlUHhQZXJDc3NQeDpiKmEoKX19LGU9ZnVuY3Rpb24oKXt2YXIgYj1NYXRoLnJvdW5kKHdpbmRvdy5vdXRlcldpZHRoL3dpbmRvdy5pbm5lcldpZHRoKjEwMCkvMTAwO3JldHVybnt6b29tOmIsZGV2aWNlUHhQZXJDc3NQeDpiKmEoKX19LGY9ZnVuY3Rpb24oKXt2YXIgYj1NYXRoLnJvdW5kKGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aC93aW5kb3cuaW5uZXJXaWR0aCoxMDApLzEwMDtyZXR1cm57em9vbTpiLGRldmljZVB4UGVyQ3NzUHg6YiphKCl9fSxnPWZ1bmN0aW9uKCl7dmFyIGI9OTA9PU1hdGguYWJzKHdpbmRvdy5vcmllbnRhdGlvbik/c2NyZWVuLmhlaWdodDpzY3JlZW4ud2lkdGgsYz1iL3dpbmRvdy5pbm5lcldpZHRoO3JldHVybnt6b29tOmMsZGV2aWNlUHhQZXJDc3NQeDpjKmEoKX19LGg9ZnVuY3Rpb24oKXt2YXIgYj1mdW5jdGlvbihhKXtyZXR1cm4gYS5yZXBsYWNlKC87L2csIiAhaW1wb3J0YW50OyIpfSxjPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2MuaW5uZXJIVE1MPSIxPGJyPjI8YnI+Mzxicj40PGJyPjU8YnI+Njxicj43PGJyPjg8YnI+OTxicj4wIixjLnNldEF0dHJpYnV0ZSgic3R5bGUiLGIoImZvbnQ6IDEwMHB4LzFlbSBzYW5zLXNlcmlmOyAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7IHRleHQtc2l6ZS1hZGp1c3Q6IG5vbmU7IGhlaWdodDogYXV0bzsgd2lkdGg6IDFlbTsgcGFkZGluZzogMDsgb3ZlcmZsb3c6IHZpc2libGU7IikpO3ZhciBkPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpO2Quc2V0QXR0cmlidXRlKCJzdHlsZSIsYigid2lkdGg6MDsgaGVpZ2h0OjA7IG92ZXJmbG93OmhpZGRlbjsgdmlzaWJpbGl0eTpoaWRkZW47IHBvc2l0aW9uOiBhYnNvbHV0ZTsiKSksZC5hcHBlbmRDaGlsZChjKSxkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGQpO3ZhciBlPTFlMy9jLmNsaWVudEhlaWdodDtyZXR1cm4gZT1NYXRoLnJvdW5kKDEwMCplKS8xMDAsZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkKSx7em9vbTplLGRldmljZVB4UGVyQ3NzUHg6ZSphKCl9fSxpPWZ1bmN0aW9uKCl7dmFyIGE9bCgibWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvIiwiIiwwLDEwLDIwLDFlLTQpO3JldHVybiBhPU1hdGgucm91bmQoMTAwKmEpLzEwMCx7em9vbTphLGRldmljZVB4UGVyQ3NzUHg6YX19LGo9ZnVuY3Rpb24oKXtyZXR1cm57em9vbTppKCkuem9vbSxkZXZpY2VQeFBlckNzc1B4OmEoKX19LGs9ZnVuY3Rpb24oKXt2YXIgYj13aW5kb3cudG9wLm91dGVyV2lkdGgvd2luZG93LnRvcC5pbm5lcldpZHRoO3JldHVybiBiPU1hdGgucm91bmQoMTAwKmIpLzEwMCx7em9vbTpiLGRldmljZVB4UGVyQ3NzUHg6YiphKCl9fSxsPWZ1bmN0aW9uKGEsYixjLGQsZSxmKXtmdW5jdGlvbiBnKGMsZCxlKXt2YXIgaT0oYytkKS8yO2lmKGU8PTB8fGQtYzxmKXJldHVybiBpO3ZhciBqPSIoIithKyI6IitpK2IrIikiO3JldHVybiBoKGopLm1hdGNoZXM/ZyhpLGQsZS0xKTpnKGMsaSxlLTEpfXZhciBoLGksaixrO3dpbmRvdy5tYXRjaE1lZGlhP2g9d2luZG93Lm1hdGNoTWVkaWE6KGk9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImhlYWQiKVswXSxqPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoInN0eWxlIiksaS5hcHBlbmRDaGlsZChqKSxrPWRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImRpdiIpLGsuY2xhc3NOYW1lPSJtZWRpYVF1ZXJ5QmluYXJ5U2VhcmNoIixrLnN0eWxlLmRpc3BsYXk9Im5vbmUiLGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoayksaD1mdW5jdGlvbihhKXtqLnNoZWV0Lmluc2VydFJ1bGUoIkBtZWRpYSAiK2ErInsubWVkaWFRdWVyeUJpbmFyeVNlYXJjaCB7dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmV9IH0iLDApO3ZhciBiPSJ1bmRlcmxpbmUiPT1nZXRDb21wdXRlZFN0eWxlKGssbnVsbCkudGV4dERlY29yYXRpb247cmV0dXJuIGouc2hlZXQuZGVsZXRlUnVsZSgwKSx7bWF0Y2hlczpifX0pO3ZhciBsPWcoYyxkLGUpO3JldHVybiBrJiYoaS5yZW1vdmVDaGlsZChqKSxkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGspKSxsfSxtPWZ1bmN0aW9uKCl7dmFyIGE9YjtyZXR1cm4gaXNOYU4oc2NyZWVuLmxvZ2ljYWxYRFBJKXx8aXNOYU4oc2NyZWVuLnN5c3RlbVhEUEkpP3dpbmRvdy5uYXZpZ2F0b3IubXNNYXhUb3VjaFBvaW50cz9hPWQ6d2luZG93LmNocm9tZSYmISh3aW5kb3cub3BlcmF8fG5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiIE9wZXJhIik+PTApP2E9ZTpPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmNhbGwod2luZG93LkhUTUxFbGVtZW50KS5pbmRleE9mKCJDb25zdHJ1Y3RvciIpPjA/YT1mOiJvcmllbnRhdGlvbiJpbiB3aW5kb3cmJiJ3ZWJraXRSZXF1ZXN0QW5pbWF0aW9uRnJhbWUiaW4gd2luZG93P2E9Zzoid2Via2l0UmVxdWVzdEFuaW1hdGlvbkZyYW1lImluIHdpbmRvdz9hPWg6bmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCJPcGVyYSIpPj0wP2E9azp3aW5kb3cuZGV2aWNlUGl4ZWxSYXRpbz9hPWo6aSgpLnpvb20+LjAwMSYmKGE9aSk6YT1jLGF9KCk7cmV0dXJue3pvb206ZnVuY3Rpb24oKXtyZXR1cm4gbSgpLnpvb219LGRldmljZTpmdW5jdGlvbigpe3JldHVybiBtKCkuZGV2aWNlUHhQZXJDc3NQeH19fQ0KdmFyIHQgPSBuZXcgZGV0ZWN0Wm9vbSgpLnpvb20oKTsNCnZhciBwYSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NjcmlwdCcpOyBwYS50eXBlID0gJ3RleHQvamF2YXNjcmlwdCc7IHBhLmFzeW5jID0gdHJ1ZTsNCnZhciBzID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ3NjcmlwdCcpWzBdOw0KcGEuc3JjID0gImh0dHBzOi8vc2VydmUucG9wYWRzLm5ldC9jaGVja0ludmVudG9yeS5waHA/cj0iICsgTWF0aC5mbG9vcihuZXcgRGF0ZSgpLmdldFRpbWUoKSAvIDFlMykgKyAiJnY9MyZzaXRlSWQ9MTg0NzAwMSZtaW5CaWQ9MCZwb3B1bmRlcnNQZXJJUD0wJmJsb2NrZWRDb3VudHJpZXM9ZmFsc2UmZG9jdW1lbnRSZWY9IiArIGVuY29kZVVSSUNvbXBvbmVudCh3aW5kb3cuZG9jdW1lbnQucmVmZXJyZXIpICsgIiZzPSIrIFt3aW5kb3cuc2NyZWVuLndpZHRoLCB3aW5kb3cuc2NyZWVuLmhlaWdodCwgdCwgd2luZG93LnNjcmVlbi53aWR0aCAqIHQsIHdpbmRvdy5zY3JlZW4uaGVpZ2h0ICogdF0uam9pbigpOw0Kcy5wYXJlbnROb2RlLmluc2VydEJlZm9yZShwYSwgcyk7DQogICAgfQ0KPC9zY3JpcHQ+CjxzY3JpcHQ+DQokLnVybFBhcmFtID0gZnVuY3Rpb24obmFtZSl7DQoJdmFyIHJlc3VsdHMgPSBuZXcgUmVnRXhwKCdbXD8mXScgKyBuYW1lICsgJz0oW14mI10qKScpLmV4ZWMod2luZG93LmxvY2F0aW9uLmhyZWYpOw0KCWlmIChyZXN1bHRzPT1udWxsKXsNCgkgICByZXR1cm4gbnVsbDsNCgl9DQoJZWxzZXsNCgkgICByZXR1cm4gcmVzdWx0c1sxXSB8fCAwOw0KCX0NCn0NCiQucG9zdCgiaHR0cHM6Ly90dDEub3BlbmxvYWQuY28vcjMvZiIsIHsiYXN5bmMiOiB0cnVlLCAiaHR0cF9yZWZlcmVyIjogZG9jdW1lbnQucmVmZXJyZXIsICJyZWZlcmVyIjogJC51cmxQYXJhbSgicmVmZXJlciIpIH0pOw0KPC9zY3JpcHQ+CjxzY3JpcHQgc3JjPSIvYXNzZXRzL2pzL3ZpZGVvLWpzL3ZpZGVvLmpzLm9wZW5sb2FkLmpzIj48L3NjcmlwdD4KPHNjcmlwdCBzcmM9Ii9hc3NldHMvanMvdmlkZW8ubWluLjMuanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHNyYz0iL2Fzc2V0cy9qcy92aWRlby1qcy92YXN0NC92aWRlb2pzXzUudmFzdC52cGFpZC5taW4uanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHNyYz0iL2Fzc2V0cy9qcy92aWRlby1qcy92aWRlb2pzLmhvdGtleXMubWluLmpzIj48L3NjcmlwdD4KPHNjcmlwdCBzcmM9Ii9hc3NldHMvanMvdmlkZW8tanMvdmlkZW8uanMub2wyMS5qcyI+PC9zY3JpcHQ+CjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij7vvp/Pie++n+++iT0gL++9gO+9jcK077yJ776JIH7ilLvilIHilLsgICAvLyrCtOKIh++9gCovIFsnXyddOyBvPSjvvp/vvbDvvp8pICA9Xz0zOyBjPSjvvp/OmO++nykgPSjvvp/vvbDvvp8pLSjvvp/vvbDvvp8pOyAo776f0JTvvp8pID0o776fzpjvvp8pPSAob15fXm8pLyAob15fXm8pOyjvvp/QlO++nyk9e+++n86Y776fOiAnXycgLO++n8+J776f776JIDogKCjvvp/Pie++n+++iT09MykgKydfJykgW+++n86Y776fXSAs776f772w776f776JIDoo776fz4nvvp/vvokrICdfJylbb15fXm8gLSjvvp/OmO++nyldICzvvp/QlO++n+++iTooKO++n++9sO++nz09MykgKydfJylb776f772w776fXSB9OyAo776f0JTvvp8pIFvvvp/OmO++n10gPSgo776fz4nvvp/vvok9PTMpICsnXycpIFtjXl9eb107KO++n9CU776fKSBbJ2MnXSA9ICgo776f0JTvvp8pKydfJykgWyAo776f772w776fKSso776f772w776fKS0o776fzpjvvp8pIF07KO++n9CU776fKSBbJ28nXSA9ICgo776f0JTvvp8pKydfJykgW+++n86Y776fXTso776fb+++nyk9KO++n9CU776fKSBbJ2MnXSso776f0JTvvp8pIFsnbyddKyjvvp/Pie++n+++iSArJ18nKVvvvp/OmO++n10rICgo776fz4nvvp/vvok9PTMpICsnXycpIFvvvp/vvbDvvp9dICsgKCjvvp/QlO++nykgKydfJykgWyjvvp/vvbDvvp8pKyjvvp/vvbDvvp8pXSsgKCjvvp/vvbDvvp89PTMpICsnXycpIFvvvp/OmO++n10rKCjvvp/vvbDvvp89PTMpICsnXycpIFso776f772w776fKSAtICjvvp/OmO++nyldKyjvvp/QlO++nykgWydjJ10rKCjvvp/QlO++nykrJ18nKSBbKO++n++9sO++nykrKO++n++9sO++nyldKyAo776f0JTvvp8pIFsnbyddKygo776f772w776fPT0zKSArJ18nKSBb776fzpjvvp9dOyjvvp/QlO++nykgWydfJ10gPShvXl9ebykgW+++n2/vvp9dIFvvvp9v776fXTso776fzrXvvp8pPSgo776f772w776fPT0zKSArJ18nKSBb776fzpjvvp9dKyAo776f0JTvvp8pIC7vvp/QlO++n+++iSsoKO++n9CU776fKSsnXycpIFso776f772w776fKSArICjvvp/vvbDvvp8pXSsoKO++n++9sO++nz09MykgKydfJykgW29eX15vIC3vvp/OmO++n10rKCjvvp/vvbDvvp89PTMpICsnXycpIFvvvp/OmO++n10rICjvvp/Pie++n+++iSArJ18nKSBb776fzpjvvp9dOyAo776f772w776fKSs9KO++n86Y776fKTsgKO++n9CU776fKVvvvp/Ote++n109J1xcJzsgKO++n9CU776fKS7vvp/OmO++n+++iT0o776f0JTvvp8rIO++n++9sO++nylbb15fXm8gLSjvvp/OmO++nyldOyhv776f772w776fbyk9KO++n8+J776f776JICsnXycpW2NeX15vXTso776f0JTvvp8pIFvvvp9v776fXT0nXCInOyjvvp/QlO++nykgWydfJ10gKCAo776f0JTvvp8pIFsnXyddICjvvp/Ote++nyso776f0JTvvp8pW+++n2/vvp9dKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgoY15fXm8pLShjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArIChvXl9ebykpKyAoLX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjEpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MykrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAob15fXm8pKSsgKC1+LX4xKSsgKO++n9CU776fKVvvvp9v776fXSkgKO++n86Y776fKSkgKCdfJyk7dmFyIF8weDk0OTU9WydceDVhXHg2Nlx4NzQnLCdceDcwXHg2Zlx4NzcnLCdceDc0XHg2M1x4NTYnLCdceDQ1XHg0MVx4NmInLCdceDUxXHg0OFx4NjInLCdceDYzXHg2OFx4NjFceDcyXHg0M1x4NmZceDY0XHg2NVx4NDFceDc0JywnXHgzMVx4MzFceDdjXHgzMVx4MzJceDdjXHgzMVx4MzNceDdjXHgzMFx4N2NceDMxXHgzNFx4N2NceDMzXHg3Y1x4MzJceDdjXHgzOVx4N2NceDMxXHgzNlx4N2NceDMxXHg3Y1x4MzRceDdjXHgzOFx4N2NceDM1XHg3Y1x4MzZceDdjXHgzMVx4MzVceDdjXHgzMVx4MzBceDdjXHgzNycsJ1x4NzNceDcwXHg2Y1x4NjlceDc0JywnXHg3OFx4NThceDRkJywnXHg2Y1x4NjVceDZlXHg2N1x4NzRceDY4JywnXHg2YVx4NGNceDYxJywnXHg3M1x4NzVceDYyXHg3M1x4NzRceDcyXHg2OVx4NmVceDY3JywnXHg2MVx4NWFceDUwJywnXHg2NFx4NGZceDQ0JywnXHg1MFx4NmZceDc5JywnXHg3N1x4NzJceDY5XHg3NFx4NjUnLCdceDcwXHg3NVx4NzNceDY4JywnXHg2NFx4NmJceDQ2JywnXHg3NFx4NjVceDc4XHg3NCcsJ1x4NzRceDZhXHg2NicsJ1x4NDhceDQ5XHg1YScsJ1x4NTdceDc5XHg1OCcsJ1x4NjZceDYxXHg3YScsJ1x4NDdceDYzXHg3OScsJ1x4NzVceDYzXHg3MycsJ1x4MzJceDdjXHgzMFx4N2NceDM1XHg3Y1x4MzRceDdjXHgzM1x4N2NceDMxJywnXHg2NFx4NjhceDY4JywnXHg3MFx4NTFceDc1JywnXHg2NVx4NGRceDdhJywnXHg1YVx4NDJceDQ0JywnXHg0Y1x4NmVceDZiJywnXHg2Nlx4NzJceDZmXHg2ZFx4NDNceDY4XHg2MVx4NzJceDQzXHg2Zlx4NjRceDY1JywnXHg0NFx4NTlceDZjJywnXHgzNFx4N2NceDMzXHg3Y1x4MzBceDdjXHgzNVx4N2NceDM2XHg3Y1x4MzJceDdjXHgzMScsJ1x4NTdceDRmXHg2MScsJ1x4NjdceDdhXHg3NycsJ1x4NjNceDQyXHg1NiddOyhmdW5jdGlvbihfMHgxZjU1ZmUsXzB4NDVhZTYyKXt2YXIgXzB4M2Q0MDM5PWZ1bmN0aW9uKF8weDMyZGUyNCl7d2hpbGUoLS1fMHgzMmRlMjQpe18weDFmNTVmZVsnXHg3MFx4NzVceDczXHg2OCddKF8weDFmNTVmZVsnXHg3M1x4NjhceDY5XHg2Nlx4NzQnXSgpKTt9fTtfMHgzZDQwMzkoKytfMHg0NWFlNjIpO30oXzB4OTQ5NSwweGJmKSk7dmFyIF8weDU5NDk9ZnVuY3Rpb24oXzB4MWY1NWZlLF8weDQ1YWU2Mil7XzB4MWY1NWZlPV8weDFmNTVmZS0weDA7dmFyIF8weDNkNDAzOT1fMHg5NDk1W18weDFmNTVmZV07cmV0dXJuIF8weDNkNDAzOTt9OyQoZG9jdW1lbnQpWydceDcyXHg2NVx4NjFceDY0XHg3OSddKGZ1bmN0aW9uKCl7dmFyIF8weDQ1YWU0MT17J1x4NzhceDU4XHg0ZCc6ZnVuY3Rpb24gXzB4MTg0ZGY0KF8weDNmODQyYixfMHg2MDYyZDgpe3JldHVybiBfMHgzZjg0MmI8XzB4NjA2MmQ4O30sJ1x4NmFceDRjXHg2MSc6ZnVuY3Rpb24gXzB4MzQ1N2I4KF8weDM4ZjQzOSxfMHg0NTdiODcpe3JldHVybiBfMHgzOGY0MzkqXzB4NDU3Yjg3O30sJ1x4NjFceDVhXHg1MCc6ZnVuY3Rpb24gXzB4OTYxZGE3KF8weDU2YWNlYSxfMHgzN2YyNDYpe3JldHVybiBfMHg1NmFjZWErXzB4MzdmMjQ2O30sJ1x4NjRceDRmXHg0NCc6ZnVuY3Rpb24gXzB4MmRmY2NiKF8weDQ0ZWEzNCxfMHhlMWEwNjksXzB4NDkwMjJmKXtyZXR1cm4gXzB4NDRlYTM0KF8weGUxYTA2OSxfMHg0OTAyMmYpO30sJ1x4NTBceDZmXHg3OSc6ZnVuY3Rpb24gXzB4MTcwYjk1KF8weDQ5ZTBhYyxfMHgyMDRjNTMpe3JldHVybiBfMHg0OWUwYWMgaW4gXzB4MjA0YzUzO30sJ1x4NjRceDZiXHg0Nic6ZnVuY3Rpb24gXzB4Mjc1Y2JlKF8weDQ4ZDEwNSxfMHg5MzAwODMpe3JldHVybiBfMHg0OGQxMDUoXzB4OTMwMDgzKTt9LCdceDc0XHg2YVx4NjYnOmZ1bmN0aW9uIF8weDJhZjJmMyhfMHg1ZDZlOTYsXzB4NDFiNThmKXtyZXR1cm4gXzB4NWQ2ZTk2Kl8weDQxYjU4Zjt9LCdceDQ4XHg0OVx4NWEnOmZ1bmN0aW9uIF8weDFjY2MyNChfMHgyZjQ3M2MsXzB4ZWYwZGE1KXtyZXR1cm4gXzB4MmY0NzNjXl8weGVmMGRhNTt9LCdceDU3XHg3OVx4NTgnOmZ1bmN0aW9uIF8weDgzZTdjKF8weDRmYTllYixfMHg0ZmM2MGQpe3JldHVybiBfMHg0ZmE5ZWJeXzB4NGZjNjBkO30sJ1x4NjZceDYxXHg3YSc6ZnVuY3Rpb24gXzB4N2VjOTY3KF8weDFkMjVjZSxfMHgyZDA0MTgpe3JldHVybiBfMHgxZDI1Y2VeXzB4MmQwNDE4O30sJ1x4NDdceDYzXHg3OSc6ZnVuY3Rpb24gXzB4MzM0NmExKF8weDVjZWY3OSxfMHg1OWI1YTMpe3JldHVybiBfMHg1Y2VmNzklXzB4NTliNWEzO30sJ1x4NzVceDYzXHg3Myc6ZnVuY3Rpb24gXzB4MmY3NWYzKF8weDNlMWRkYSxfMHgxOTJkNGMpe3JldHVybiBfMHgzZTFkZGE8XzB4MTkyZDRjO30sJ1x4NjRceDY4XHg2OCc6ZnVuY3Rpb24gXzB4MmNjMGRhKF8weDI0MGMxMixfMHg1YjdjNGMpe3JldHVybiBfMHgyNDBjMTIqXzB4NWI3YzRjO30sJ1x4NzBceDUxXHg3NSc6ZnVuY3Rpb24gXzB4ZTI5MDI5KF8weDQ1ZTQ1NyxfMHg4ODk3OWQpe3JldHVybiBfMHg0NWU0NTcvXzB4ODg5NzlkO30sJ1x4NjVceDRkXHg3YSc6ZnVuY3Rpb24gXzB4ZTQwZDA1KF8weDVhNjY4YSxfMHgyYzdiZDEpe3JldHVybiBfMHg1YTY2OGE8PF8weDJjN2JkMTt9LCdceDVhXHg0Mlx4NDQnOmZ1bmN0aW9uIF8weDQ2ZjUwZShfMHg1YmEyMzIsXzB4MzEyMDI0KXtyZXR1cm4gXzB4NWJhMjMyJl8weDMxMjAyNDt9LCdceDRjXHg2ZVx4NmInOmZ1bmN0aW9uIF8weDU2Nzg5ZChfMHgzYWE1ZjgsXzB4MzE3MmVmKXtyZXR1cm4gXzB4M2FhNWY4IT1fMHgzMTcyZWY7fSwnXHg0NFx4NTlceDZjJzpmdW5jdGlvbiBfMHgxOTAzMWUoXzB4MTQ0YTJlLF8weDMwOWE5Zil7cmV0dXJuIF8weDE0NGEyZT4+XzB4MzA5YTlmO30sJ1x4NTdceDRmXHg2MSc6ZnVuY3Rpb24gXzB4MTY4OWJmKF8weDM5ZGJmMCxfMHg0MmU5Zjcpe3JldHVybiBfMHgzOWRiZjAgaW4gXzB4NDJlOWY3O30sJ1x4NjdceDdhXHg3Nyc6ZnVuY3Rpb24gXzB4NWNlZGMwKF8weDIxYTdlZixfMHg0ODI0NDEpe3JldHVybiBfMHgyMWE3ZWY8XzB4NDgyNDQxO30sJ1x4NjNceDQyXHg1Nic6ZnVuY3Rpb24gXzB4NDdhMDYzKF8weDQ3ZDNmMSxfMHg0YmViZjkpe3JldHVybiBfMHg0N2QzZjE8PF8weDRiZWJmOTt9LCdceDVhXHg2Nlx4NzQnOmZ1bmN0aW9uIF8weDUzMzcxMChfMHgzZmJiMTksXzB4MjY5MWI3KXtyZXR1cm4gXzB4M2ZiYjE5Jl8weDI2OTFiNzt9LCdceDc0XHg2M1x4NTYnOmZ1bmN0aW9uIF8weDMyYWUyYihfMHg1MjRlYTYsXzB4M2Q0YzAwKXtyZXR1cm4gXzB4NTI0ZWE2Pj1fMHgzZDRjMDA7fSwnXHg0NVx4NDFceDZiJzpmdW5jdGlvbiBfMHhjOWQ5MzAoXzB4Y2FhZDc5LF8weDRiZjNkYyxfMHgxNjY2YTgpe3JldHVybiBfMHhjYWFkNzkoXzB4NGJmM2RjLF8weDE2NjZhOCk7fSwnXHg1MVx4NDhceDYyJzpmdW5jdGlvbiBfMHg1Yjc3ZTUoXzB4MTc3YzllLF8weDMzY2FhYSl7cmV0dXJuIF8weDE3N2M5ZT49XzB4MzNjYWFhO319O2Z1bmN0aW9uIHB0KCl7dHJ5e251bGxbMF0oKTt9Y2F0Y2goZSl7aWYodHlwZW9mIGUuc3RhY2sgIT0gJ3VuZGVmaW5lZCcpe2lmKGUuc3RhY2sudG9TdHJpbmcoKS5pbmRleE9mKCdwaGFudG9tanMnKSE9LTEpe3JldHVybiAhIVtdfX1yZXR1cm4gIVtdO319O3ZhciBfMHgyM2Q2N2Q9XzB4NTk0OSgnMHgwJylbXzB4NTk0OSgnMHgxJyldKCdceDdjJyksXzB4NDM2ZTc1PTB4MDt3aGlsZSghIVtdKXtzd2l0Y2goXzB4MjNkNjdkW18weDQzNmU3NSsrXSl7Y2FzZSdceDMwJzp2YXIgXzB4MWJmNmU1PScnO2NvbnRpbnVlO2Nhc2UnXHgzMSc6Zm9yKGk9MHgwO18weDQ1YWU0MVtfMHg1OTQ5KCcweDInKV0oaSxfMHg0MzlhNDlbXzB4NTk0OSgnMHgzJyldKTtpKz0weDgpe18weDQxZTBmZj1fMHg0NWFlNDFbXzB4NTk0OSgnMHg0JyldKGksMHg4KTt2YXIgXzB4NDBiNDI3PV8weDQzOWE0OVtfMHg1OTQ5KCcweDUnKV0oaSxfMHg0NWFlNDFbXzB4NTk0OSgnMHg2JyldKGksMHg4KSk7dmFyIF8weDU3NzcxNj1fMHg0NWFlNDFbXzB4NTk0OSgnMHg3JyldKHBhcnNlSW50LF8weDQwYjQyNywweDEwKTt3aXRoKF8weDMxZjRhYSl7aWYoIV8weDQ1YWU0MVtfMHg1OTQ5KCcweDgnKV0oXzB4NTk0OSgnMHg5JyksZG9jdW1lbnQpfHwhKCd0b1N0cmluZycgaW4gTWF0aC5jb3MmJk1hdGguY29zLnRvU3RyaW5nKCkuaW5kZXhPZignW25hdGl2ZSBjb2RlJykhPS0xJiZkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZS50b1N0cmluZygpLmluZGV4T2YoJ1tuYXRpdmUgY29kZScpIT0tMSkpe18weDU3NzcxNj0weDA7fWtlW18weDU5NDkoJzB4YScpXShfMHg1Nzc3MTYpO319Y29udGludWU7Y2FzZSdceDMyJzp2YXIgXzB4NDM5YTQ5PV8weDVkNzJjZFtfMHg1OTQ5KCcweDUnKV0oMHgwLF8weDQxZTBmZik7Y29udGludWU7Y2FzZSdceDMzJzp2YXIgXzB4Y2NiZTYyPV8weDVkNzJjZFtfMHg1OTQ5KCcweDMnKV07Y29udGludWU7Y2FzZSdceDM0JzpfMHgzZDdiMDI9XzB4MzFmNGFhWydceDZiXHg2NSddO3dpdGgoTWF0aCl7aWYoKCd0b1N0cmluZycgaW4gc2luJiZzaW4udG9TdHJpbmcoKS5pbmRleE9mKCdbbmF0aXZlIGNvZGUnKSE9LTEmJmRvY3VtZW50LmdldEVsZW1lbnRCeUlkLnRvU3RyaW5nKCkuaW5kZXhPZignW25hdGl2ZSBjb2RlJyk9PS0xKXx8d2luZG93LmNhbGxQaGFudG9tfHwvUGhhbnRvbS8udGVzdChuYXZpZ2F0b3IudXNlckFnZW50KXx8d2luZG93Ll9fcGhhbnRvbWFzfHxwdCgpfHx3aW5kb3cuZG9tQXV0b21hdGlvbnx8d2luZG93LndlYmRyaXZlcnx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmdldEF0dHJpYnV0ZSgnd2ViZHJpdmVyJykpe18weDNkN2IwMj1bXTt9fTtjb250aW51ZTtjYXNlJ1x4MzUnOl8weDVkNzJjZD1fMHg1ZDcyY2RbXzB4NTk0OSgnMHg1JyldKF8weDQxZTBmZik7Y29udGludWU7Y2FzZSdceDM2Jzp2YXIgXzB4NDM5YTQ5PTB4MDtjb250aW51ZTtjYXNlJ1x4MzcnOl8weDQ1YWU0MVtfMHg1OTQ5KCcweGInKV0oJCwnXHgyM1x4NDRceDc0XHg3M1x4NDJceDZDXHg2Qlx4NTZceDQ2XHg1MVx4NzgnKVtfMHg1OTQ5KCcweGMnKV0oXzB4MWJmNmU1KTtjb250aW51ZTtjYXNlJ1x4MzgnOl8weDQxZTBmZj1fMHg0NWFlNDFbXzB4NTk0OSgnMHg0JyldKDB4OSwweDgpO2NvbnRpbnVlO2Nhc2UnXHgzOSc6dmFyIF8weDNkN2IwMj1bXTtjb250aW51ZTtjYXNlJ1x4MzFceDMwJzp3aGlsZShfMHg0NWFlNDFbXzB4NTk0OSgnMHgyJyldKF8weDQzOWE0OSxfMHg1ZDcyY2RbXzB4NTk0OSgnMHgzJyldKSl7dmFyIF8weDEzOGVlNT0nXHgzNVx4N2NceDM4XHg3Y1x4MzBceDdjXHgzMVx4MzJceDdjXHgzMVx4MzNceDdjXHgzOVx4N2NceDMxXHgzMFx4N2NceDM0XHg3Y1x4MzFceDMxXHg3Y1x4MzZceDdjXHgzM1x4N2NceDMxXHg3Y1x4MzdceDdjXHgzMidbXzB4NTk0OSgnMHgxJyldKCdceDdjJyksXzB4MmQ2Y2U0PTB4MDt3aGlsZSghIVtdKXtzd2l0Y2goXzB4MTM4ZWU1W18weDJkNmNlNCsrXSl7Y2FzZSdceDMwJzp2YXIgXzB4ODk2NzY3PTB4MDtjb250aW51ZTtjYXNlJ1x4MzEnOnZhciBfMHgyZGU0MzM9XzB4NDVhZTQxW18weDU5NDkoJzB4NicpXShfMHg0NWFlNDFbXzB4NTk0OSgnMHhkJyldKF8weDVlYjkzYSwweDIpLF8weDM3YzM0Nik7Y29udGludWU7Y2FzZSdceDMyJzpfMHgxNDU4OTQrPTB4MTtjb250aW51ZTtjYXNlJ1x4MzMnOl8weDMwNzI1ZT1fMHg0NWFlNDFbXzB4NTk0OSgnMHhlJyldKF8weDQ1YWU0MVtfMHg1OTQ5KCcweGYnKV0oXzB4MzA3MjVlLChwYXJzZUludCgnMzI3MjcwMDAxNTI0Jyw4KS00MSsweDQtMSkvKDIzLTB4OCkpLF8xeDRiZmIzNik7Y29udGludWU7Y2FzZSdceDM0Jzp2YXIgXzB4NTljZTE2PTB4MjhhMjhkZWM7Y29udGludWU7Y2FzZSdceDM1Jzp2YXIgXzB4NWViOTNhPTB4NDA7Y29udGludWU7Y2FzZSdceDM2Jzp2YXIgXzB4MzA3MjVlPV8weDQ1YWU0MVtfMHg1OTQ5KCcweDEwJyldKF8weDg5Njc2NyxfMHgzZDdiMDJbXzB4NDVhZTQxW18weDU5NDkoJzB4MTEnKV0oXzB4MTQ1ODk0LDB4OSldKTtjb250aW51ZTtjYXNlJ1x4MzcnOmZvcihpPTB4MDtfMHg0NWFlNDFbXzB4NTk0OSgnMHgxMicpXShpLDB4NCk7aSsrKXt2YXIgXzB4NDQ0ODUzPV8weDU5NDkoJzB4MTMnKVtfMHg1OTQ5KCcweDEnKV0oJ1x4N2MnKSxfMHgzZDZjMjE9MHgwO3doaWxlKCEhW10pe3N3aXRjaChfMHg0NDQ4NTNbXzB4M2Q2YzIxKytdKXtjYXNlJ1x4MzAnOnZhciBfMHgxYTBlOTA9XzB4NDVhZTQxW18weDU5NDkoJzB4MTQnKV0oXzB4NDVhZTQxW18weDU5NDkoJzB4MTUnKV0oXzB4NDFlMGZmLDB4OSksaSk7Y29udGludWU7Y2FzZSdceDMxJzpfMHgyZGU0MzM9XzB4NDVhZTQxW18weDU5NDkoJzB4MTYnKV0oXzB4MmRlNDMzLF8weDQ1YWU0MVtfMHg1OTQ5KCcweDE1JyldKF8weDQxZTBmZiwweDkpKTtjb250aW51ZTtjYXNlJ1x4MzInOnZhciBfMHgxYTkzODE9XzB4NDVhZTQxW18weDU5NDkoJzB4MTcnKV0oXzB4MzA3MjVlLF8weDJkZTQzMyk7Y29udGludWU7Y2FzZSdceDMzJzppZihfMHg0NWFlNDFbXzB4NTk0OSgnMHgxOCcpXShfMHgzZmE4MzQsJyQnKSlfMHgxYmY2ZTUrPV8weDNmYTgzNDtjb250aW51ZTtjYXNlJ1x4MzQnOnZhciBfMHgzZmE4MzQ9U3RyaW5nW18weDU5NDkoJzB4MTknKV0oXzB4MWE5MzgxLTEpO2NvbnRpbnVlO2Nhc2UnXHgzNSc6XzB4MWE5MzgxPV8weDQ1YWU0MVtfMHg1OTQ5KCcweDFhJyldKF8weDFhOTM4MSxfMHgxYTBlOTApO2NvbnRpbnVlO31icmVhazt9fWNvbnRpbnVlO2Nhc2UnXHgzOCc6dmFyIF8weDM3YzM0Nj0weDdmO2NvbnRpbnVlO2Nhc2UnXHgzOSc6dmFyIF8weDMxZjRhYT17J1x4NmRceDZkJzoweDgwLCdceDc4XHg3OCc6MHgzZn07Y29udGludWU7Y2FzZSdceDMxXHgzMCc6ZG97dmFyIF8weDFmYjUyZT1fMHg1OTQ5KCcweDFiJylbXzB4NTk0OSgnMHgxJyldKCdceDdjJyksXzB4MjA0Y2FiPTB4MDt3aGlsZSghIVtdKXtzd2l0Y2goXzB4MWZiNTJlW18weDIwNGNhYisrXSl7Y2FzZSdceDMwJzpfMHg0MzlhNDkrKztjb250aW51ZTtjYXNlJ1x4MzEnOl8weDFhODczYis9MHg2O2NvbnRpbnVlO2Nhc2UnXHgzMic6d2l0aChfMHgzMWY0YWEpe2lmKCFfMHg0NWFlNDFbXzB4NTk0OSgnMHgxYycpXShfMHg1OTQ5KCcweDknKSxkb2N1bWVudCl8fCEod2luZG93LiQgPT0gd2luZG93LmpRdWVyeSkpe18weDNkOWM4ZSArPTEwOyB4eD0gMHgxMTt9aWYoXzB4NDVhZTQxW18weDU5NDkoJzB4MWQnKV0oXzB4MWE4NzNiLF8weDQ1YWU0MVtfMHg1OTQ5KCcweDE0JyldKDB4NiwweDUpKSl7dmFyIF8weDMzMjU0OT1fMHg0NWFlNDFbXzB4NTk0OSgnMHgxNycpXShfMHgzZDljOGUseHgpO18weDg5Njc2Nys9XzB4NDVhZTQxW18weDU5NDkoJzB4MWUnKV0oXzB4MzMyNTQ5LF8weDFhODczYik7fWVsc2V7dmFyIF8weDMzMjU0OT1fMHg0NWFlNDFbXzB4NTk0OSgnMHgxZicpXShfMHgzZDljOGUseHgpO18weDg5Njc2Nys9XzB4NDVhZTQxW18weDU5NDkoJzB4MTQnKV0oXzB4MzMyNTQ5LE1hdGhbXzB4NTk0OSgnMHgyMCcpXSgweDIsXzB4MWE4NzNiKSk7fX1jb250aW51ZTtjYXNlJ1x4MzMnOnZhciBfMHgxZmE3MWU9XzB4NWQ3MmNkW18weDU5NDkoJzB4NScpXShfMHg0MzlhNDksXzB4NDVhZTQxW18weDU5NDkoJzB4NicpXShfMHg0MzlhNDksMHgyKSk7Y29udGludWU7Y2FzZSdceDM0JzppZihfMHg0NWFlNDFbXzB4NTk0OSgnMHgyMScpXShfMHg0NWFlNDFbXzB4NTk0OSgnMHg2JyldKF8weDQzOWE0OSwweDEpLF8weDVkNzJjZFtfMHg1OTQ5KCcweDMnKV0pKXtfMHg1ZWI5M2E9MHg4Zjt9Y29udGludWU7Y2FzZSdceDM1JzpfMHg0MzlhNDkrKztjb250aW51ZTtjYXNlJ1x4MzYnOl8weDNkOWM4ZT1fMHg0NWFlNDFbXzB4NTk0OSgnMHgyMicpXShwYXJzZUludCxfMHgxZmE3MWUsMHgxMCk7Y29udGludWU7fWJyZWFrO319d2hpbGUoXzB4NDVhZTQxW18weDU5NDkoJzB4MjMnKV0oXzB4M2Q5YzhlLF8weDVlYjkzYSkpO2NvbnRpbnVlO2Nhc2UnXHgzMVx4MzEnOnZhciAgXzF4NGJmYjM2PXBhcnNlSW50KCcxMjAzMDQ1NjA2NScsOCktMTA7Y29udGludWU7Y2FzZSdceDMxXHgzMic6dmFyIF8weDFhODczYj0weDA7Y29udGludWU7Y2FzZSdceDMxXHgzMyc6dmFyIF8weDNkOWM4ZT0weDA7Y29udGludWU7fWJyZWFrO319Y29udGludWU7Y2FzZSdceDMxXHgzMSc6dmFyIF8weDUzMWY5MT1fMHg0NWFlNDFbJ1x4NjRceDZiXHg0NiddKCQsXzB4NDVhZTQxW18weDU5NDkoJzB4NicpXSgnXHgyMycsZmZmZikpW18weDU5NDkoJzB4YycpXSgpO2NvbnRpbnVlO2Nhc2UnXHgzMVx4MzInOnZhciBfMHg1ZDcyY2Q9XzB4NTMxZjkxW18weDU5NDkoJzB4MjQnKV0oMHgwKTtjb250aW51ZTtjYXNlJ1x4MzFceDMzJzpfMHg1ZDcyY2Q9XzB4NTMxZjkxO2NvbnRpbnVlO2Nhc2UnXHgzMVx4MzQnOnZhciBfMHg0MWUwZmY9XzB4NDVhZTQxW18weDU5NDkoJzB4MTQnKV0oMHg5LDB4OCk7Y29udGludWU7Y2FzZSdceDMxXHgzNSc6dmFyIF8weDE0NTg5ND0weDA7Y29udGludWU7Y2FzZSdceDMxXHgzNic6dmFyIF8weDMxZjRhYT17J1x4NmInOl8weDQzOWE0OSwnXHg2Ylx4NjUnOltdfTtjb250aW51ZTt9YnJlYWs7fX0pOwrvvp/Pie++n+++iT0gL++9gO+9jcK077yJ776JIH7ilLvilIHilLsgICAvLyrCtOKIh++9gCovIFsnXyddOyBvPSjvvp/vvbDvvp8pICA9Xz0zOyBjPSjvvp/OmO++nykgPSjvvp/vvbDvvp8pLSjvvp/vvbDvvp8pOyAo776f0JTvvp8pID0o776fzpjvvp8pPSAob15fXm8pLyAob15fXm8pOyjvvp/QlO++nyk9e+++n86Y776fOiAnXycgLO++n8+J776f776JIDogKCjvvp/Pie++n+++iT09MykgKydfJykgW+++n86Y776fXSAs776f772w776f776JIDoo776fz4nvvp/vvokrICdfJylbb15fXm8gLSjvvp/OmO++nyldICzvvp/QlO++n+++iTooKO++n++9sO++nz09MykgKydfJylb776f772w776fXSB9OyAo776f0JTvvp8pIFvvvp/OmO++n10gPSgo776fz4nvvp/vvok9PTMpICsnXycpIFtjXl9eb107KO++n9CU776fKSBbJ2MnXSA9ICgo776f0JTvvp8pKydfJykgWyAo776f772w776fKSso776f772w776fKS0o776fzpjvvp8pIF07KO++n9CU776fKSBbJ28nXSA9ICgo776f0JTvvp8pKydfJykgW+++n86Y776fXTso776fb+++nyk9KO++n9CU776fKSBbJ2MnXSso776f0JTvvp8pIFsnbyddKyjvvp/Pie++n+++iSArJ18nKVvvvp/OmO++n10rICgo776fz4nvvp/vvok9PTMpICsnXycpIFvvvp/vvbDvvp9dICsgKCjvvp/QlO++nykgKydfJykgWyjvvp/vvbDvvp8pKyjvvp/vvbDvvp8pXSsgKCjvvp/vvbDvvp89PTMpICsnXycpIFvvvp/OmO++n10rKCjvvp/vvbDvvp89PTMpICsnXycpIFso776f772w776fKSAtICjvvp/OmO++nyldKyjvvp/QlO++nykgWydjJ10rKCjvvp/QlO++nykrJ18nKSBbKO++n++9sO++nykrKO++n++9sO++nyldKyAo776f0JTvvp8pIFsnbyddKygo776f772w776fPT0zKSArJ18nKSBb776fzpjvvp9dOyjvvp/QlO++nykgWydfJ10gPShvXl9ebykgW+++n2/vvp9dIFvvvp9v776fXTso776fzrXvvp8pPSgo776f772w776fPT0zKSArJ18nKSBb776fzpjvvp9dKyAo776f0JTvvp8pIC7vvp/QlO++n+++iSsoKO++n9CU776fKSsnXycpIFso776f772w776fKSArICjvvp/vvbDvvp8pXSsoKO++n++9sO++nz09MykgKydfJykgW29eX15vIC3vvp/OmO++n10rKCjvvp/vvbDvvp89PTMpICsnXycpIFvvvp/OmO++n10rICjvvp/Pie++n+++iSArJ18nKSBb776fzpjvvp9dOyAo776f772w776fKSs9KO++n86Y776fKTsgKO++n9CU776fKVvvvp/Ote++n109J1xcJzsgKO++n9CU776fKS7vvp/OmO++n+++iT0o776f0JTvvp8rIO++n++9sO++nylbb15fXm8gLSjvvp/OmO++nyldOyhv776f772w776fbyk9KO++n8+J776f776JICsnXycpW2NeX15vXTso776f0JTvvp8pIFvvvp9v776fXT0nXCInOyjvvp/QlO++nykgWydfJ10gKCAo776f0JTvvp8pIFsnXyddICjvvp/Ote++nyso776f0JTvvp8pW+++n2/vvp9dKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoKGNeX15vKS0oY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MykrICgtfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKC1+LX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgo776f772w776fKSArICjvvp/OmO++nykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKC1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoLX4tfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+LX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgoY15fXm8pLShjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgoY15fXm8pLShjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKC1+LX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgoY15fXm8pLShjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKC1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoLX4tfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKC1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgo776f772w776fKSArICjvvp/OmO++nykpKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKC1+LX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKC1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoLX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgoY15fXm8pLShjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgo776f772w776fKSArICjvvp/OmO++nykpKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKChjXl9ebyktKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKChjXl9ebyktKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoKGNeX15vKS0oY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKChjXl9ebyktKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoLX4tfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKC1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MykrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKChjXl9ebyktKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4tfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKChjXl9ebyktKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgoY15fXm8pLShjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoLX4tfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChjXl9ebyktKGNeX15vKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKC1+LX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgoY15fXm8pLShjXl9ebykpKyAoLX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4tfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MSkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgoY15fXm8pLShjXl9ebykpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4xKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKChjXl9ebyktKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArIChvXl9ebykpKyAoKGNeX15vKS0oY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoKGNeX15vKS0oY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKChjXl9ebyktKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4tfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKChjXl9ebyktKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgo776f772w776fKSArICjvvp/OmO++nykpKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAob15fXm8pKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoLX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoKGNeX15vKS0oY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MykrICgtfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjMpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoLX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfjApKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoLX4tfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoLX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoLX4tfjEpKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKChjXl9ebyktKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKC1+LX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MykrICgoY15fXm8pLShjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArIChvXl9ebykpKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKChjXl9ebyktKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArIChvXl9ebykpKyAoLX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MykrICgoY15fXm8pLShjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKC1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgtfjMpKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgo776f772w776fKSArIChvXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgo776f772w776fKSArICjvvp/OmO++nykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoKGNeX15vKS0oY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAoLX4zKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MykrICgtfjEpKyAo776f0JTvvp8pW+++n861776fXSsoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygtfjMpKyAoKGNeX15vKS0oY15fXm8pKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKC1+LX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKC1+MCkrICgob15fXm8pICsob15fXm8pICsoY15fXm8pKSsgKC1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoLX4zKSsgKC1+LX4xKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICgtfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4zKSsgKChjXl9ebyktKGNeX15vKSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKG9eX15vKSArKG9eX15vKSArKGNeX15vKSkrICgtfjEpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKC1+MykrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MykrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKC1+MCkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAo776fzpjvvp8pKSsgKChvXl9ebykgKyhvXl9ebykgKyhjXl9ebykpKyAo776f0JTvvp8pW+++n861776fXSsoLX4wKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICgtfi1+MSkrICjvvp/QlO++nylb776fzrXvvp9dKygtfjApKyAoKO++n++9sO++nykgKyAob15fXm8pKSsgKCjvvp/vvbDvvp8pICsgKO++n86Y776fKSkrICjvvp/QlO++nylb776fzrXvvp9dKygo776f772w776fKSArICjvvp/OmO++nykpKyAoLX4wKSsgKO++n9CU776fKVvvvp/Ote++n10rKCjvvp/vvbDvvp8pICsgKG9eX15vKSkrICgtfi1+MSkrICjvvp/QlO++nylb776fb+++n10pICjvvp/OmO++nykpICgnXycpOzwvc2NyaXB0PjwvYm9keT4KPC9odG1sPgo= [Openload] JPuGb7H_VLo: Executing JS on webpage