Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to download webpage #13037

Closed
Mochlate opened this issue May 9, 2017 · 7 comments
Closed

Unable to download webpage #13037

Mochlate opened this issue May 9, 2017 · 7 comments
Labels

Comments

@Mochlate
Copy link

@Mochlate Mochlate commented May 9, 2017

I am trying to execute a search, usually this works. Today I am getting an error.

I am on the current version:

$ node_modules/youtube-dl/bin/youtube-dl --version
2017.05.09
$ node_modules/youtube-dl/bin/youtube-dl --dump-json -f best -c ytsearch: stronger --verbose
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--dump-json', u'-f', u'best', u'-c', u'ytsearch:', u'stronger', u'--verbose']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2017.05.09
[debug] Python version 2.7.13 - Linux-4.10.0-20-generic-x86_64-with-Ubuntu-17.04-zesty
[debug] exe versions: ffmpeg 3.2.4-1build2, ffprobe 3.2.4-1build2
[debug] Proxy map: {}
WARNING: Could not send HEAD request to ytsearch:: <urlopen error unknown url type: ytsearch>
ERROR: Unable to download webpage: <urlopen error unknown url type: ytsearch> (caused by URLError(u'unknown url type: ytsearch',))
  File "/opt/app/node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/common.py", line 502, in _request_webpage
    return self._downloader.urlopen(url_or_request)
  File "/opt/app/node_modules/youtube-dl/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2106, in urlopen
    return self._opener.open(req, timeout=self._socket_timeout)
  File "/usr/lib/python2.7/urllib2.py", line 429, in open
    response = self._open(req, data)
  File "/usr/lib/python2.7/urllib2.py", line 452, in _open
    'unknown_open', req)
  File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 1266, in unknown_open
    raise URLError('unknown url type: %s' % type)
@dstftw
Copy link
Collaborator

@dstftw dstftw commented May 9, 2017

There should no be whitespace after ytsearch:.

@dstftw dstftw closed this May 9, 2017
@dstftw dstftw added the invalid label May 9, 2017
@Mochlate
Copy link
Author

@Mochlate Mochlate commented May 9, 2017

@dstftw

That does not resolve the issue:

node_modules/youtube-dl/bin/youtube-dl --dump-json -f best -c ytsearch:stronger --verbose
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--dump-json', u'-f', u'best', u'-c', u'ytsearch:stronger', u'--verbose']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2017.05.09
[debug] Python version 2.7.12 - Linux-3.14.32-xxxx-grs-ipv6-64-x86_64-with-Ubuntu-16.04-xenial
[debug] exe versions: ffmpeg 2.8.11-0ubuntu0.16.04.1, ffprobe 2.8.11-0ubuntu0.16.04.1
[debug] Proxy map: {}
ERROR: query "stronger": Failed to parse JSON  (caused by ValueError('No JSON object could be decoded',)); 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 "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/common.py", line 676, in _parse_json
    return json.loads(json_string)
  File "/usr/lib/python2.7/json/__init__.py", line 339, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python2.7/json/decoder.py", line 364, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python2.7/json/decoder.py", line 382, in raw_decode
    raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
Traceback (most recent call last):
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 760, in extract_info
    ie_result = ie.extract(url)
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/common.py", line 433, in extract
    ie_result = self._real_extract(url)
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/common.py", line 2531, in _real_extract
    return self._get_n_results(query, 1)
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/youtube.py", line 2478, in _get_n_results
    query={'spf': 'navigate'})
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/common.py", line 670, in _download_json
    json_string, video_id, transform_source=transform_source, fatal=fatal)
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/common.py", line 680, in _parse_json
    raise ExtractorError(errmsg, cause=ve)
ExtractorError: query "stronger": Failed to parse JSON  (caused by ValueError('No JSON object could be decoded',)); 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
Copy link
Collaborator

@dstftw dstftw commented May 9, 2017

Post the output of youtube-dl --dump-pages -v ytsearch:stronger.

@Mochlate
Copy link
Author

@Mochlate Mochlate commented May 9, 2017

node_modules/youtube-dl/bin/youtube-dl --dump-pages -v ytsearch:stronger
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--dump-pages', u'-v', u'ytsearch:stronger']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2017.05.09
[debug] Python version 2.7.12 - Linux-3.14.32-xxxx-grs-ipv6-64-x86_64-with-Ubuntu-16.04-xenial
[debug] exe versions: ffmpeg 2.8.11-0ubuntu0.16.04.1, ffprobe 2.8.11-0ubuntu0.16.04.1
[debug] Proxy map: {}
[youtube:search] query "stronger": Downloading page 1
[youtube:search] Dumping request to https://www.youtube.com/results?search_query=stronger
CiAgICA8IURPQ1RZUEUgaHRtbD48aHRtbCBsYW5nPSJlbiIgZGF0YS1jYXN0LWFwaS1lbmFibGVkPSJ0cnVlIj48aGVhZD48c2NyaXB0PnZhciB5dGNzaSA9IHtndDogZnVuY3Rpb24obikge24gPSAobiB8fCAnJykgKyAnZGF0YV8nO3JldHVybiB5dGNzaVtuXSB8fCAoeXRjc2lbbl0gPSB7dGljazoge30saW5mbzoge319KTt9LG5vdzogd2luZG93LnBlcmZvcm1hbmNlICYmIHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcgJiZ3aW5kb3cucGVyZm9ybWFuY2Uubm93ID8gZnVuY3Rpb24oKSB7cmV0dXJuIHdpbmRvdy5wZXJmb3JtYW5jZS50aW1pbmcubmF2aWdhdGlvblN0YXJ0ICsgd2luZG93LnBlcmZvcm1hbmNlLm5vdygpO30gOiBmdW5jdGlvbigpIHtyZXR1cm4gKG5ldyBEYXRlKCkpLmdldFRpbWUoKTt9LHRpY2s6IGZ1bmN0aW9uKGwsIHQsIG4pIHt0aWNrcyA9IHl0Y3NpLmd0KG4pLnRpY2s7dmFyIHYgPSB0IHx8IHl0Y3NpLm5vdygpO2lmICh0aWNrc1tsXSkge3RpY2tzWydfJyArIGxdID0gKHRpY2tzWydfJyArIGxdIHx8IFt0aWNrc1tsXV0pO3RpY2tzWydfJyArIGxdLnB1c2godik7fXRpY2tzW2xdID0gdjt9LGluZm86IGZ1bmN0aW9uKGssIHYsIG4pIHt5dGNzaS5ndChuKS5pbmZvW2tdID0gdjt9LHNldFN0YXJ0OiBmdW5jdGlvbihzLCB0LCBuKSB7eXRjc2kuaW5mbygneXRfc3RzJywgcywgbik7eXRjc2kudGljaygnX3N0YXJ0JywgdCwgbik7fX07KGZ1bmN0aW9uKHcsIGQpIHt5dGNzaS5zZXRTdGFydCgnZGhzJywgdy5wZXJmb3JtYW5jZSA/IHcucGVyZm9ybWFuY2UudGltaW5nLnJlc3BvbnNlU3RhcnQgOiBudWxsKTt2YXIgaXNQcmVyZW5kZXIgPSAoZC52aXNpYmlsaXR5U3RhdGUgfHwgZC53ZWJraXRWaXNpYmlsaXR5U3RhdGUpID09ICdwcmVyZW5kZXInO3ZhciB2TmFtZSA9IGQud2Via2l0VmlzaWJpbGl0eVN0YXRlID8gJ3dlYmtpdHZpc2liaWxpdHljaGFuZ2UnIDogJ3Zpc2liaWxpdHljaGFuZ2UnO2lmIChpc1ByZXJlbmRlcikge3l0Y3NpLmluZm8oJ3ByZXJlbmRlcicsIDEpO3ZhciBzdGFydFRpY2sgPSBmdW5jdGlvbigpIHt5dGNzaS5zZXRTdGFydCgnZGhzJyk7ZC5yZW1vdmVFdmVudExpc3RlbmVyKHZOYW1lLCBzdGFydFRpY2spO307ZC5hZGRFdmVudExpc3RlbmVyKHZOYW1lLCBzdGFydFRpY2ssIGZhbHNlKTt9aWYgKGQuYWRkRXZlbnRMaXN0ZW5lcikge2QuYWRkRXZlbnRMaXN0ZW5lcih2TmFtZSwgZnVuY3Rpb24oKSB7eXRjc2kudGljaygndmMnKTt9LCBmYWxzZSk7fXZhciBzbHQgPSBmdW5jdGlvbihlbCwgdCkge3NldFRpbWVvdXQoZnVuY3Rpb24oKSB7dmFyIG4gPSB5dGNzaS5ub3coKTtlbC5sb2FkVGltZSA9IG47aWYgKGVsLnNsdCkge2VsLnNsdCgpO319LCB0KTt9O3cuX195dFJJTCA9IGZ1bmN0aW9uKGVsKSB7aWYgKCFlbC5nZXRBdHRyaWJ1dGUoJ2RhdGEtdGh1bWInKSkge2lmICh3LnJlcXVlc3RBbmltYXRpb25GcmFtZSkge3cucmVxdWVzdEFuaW1hdGlvbkZyYW1lKGZ1bmN0aW9uKCkge3NsdChlbCwgMCk7fSk7fSBlbHNlIHtzbHQoZWwsIDE2KTt9fX07fSkod2luZG93LCBkb2N1bWVudCk7PC9zY3JpcHQ+PHNjcmlwdD52YXIgeXRjZmcgPSB7ZDogZnVuY3Rpb24oKSB7cmV0dXJuICh3aW5kb3cueXQgJiYgeXQuY29uZmlnXykgfHwgeXRjZmcuZGF0YV8gfHwgKHl0Y2ZnLmRhdGFfID0ge30pO30sZ2V0OiBmdW5jdGlvbihrLCBvKSB7cmV0dXJuIChrIGluIHl0Y2ZnLmQoKSkgPyB5dGNmZy5kKClba10gOiBvO30sc2V0OiBmdW5jdGlvbigpIHt2YXIgYSA9IGFyZ3VtZW50cztpZiAoYS5sZW5ndGggPiAxKSB7eXRjZmcuZCgpW2FbMF1dID0gYVsxXTt9IGVsc2Uge2ZvciAodmFyIGsgaW4gYVswXSkge3l0Y2ZnLmQoKVtrXSA9IGFbMF1ba107fX19fTs8L3NjcmlwdD4gIDxzY3JpcHQgc3JjPSJodHRwczovL3d3dy5nb29nbGUuY29tL3JlY2FwdGNoYS9hcGkuanM/aGw9ZW4iIGFzeW5jIGRlZmVyPjwvc2NyaXB0PgoKICAKCgoKCiAgPHNjcmlwdD4KICAgICAgICAoZnVuY3Rpb24oKXt2YXIgYj17YToiY29udGVudC1zbmFwLXdpZHRoLTEiLGI6ImNvbnRlbnQtc25hcC13aWR0aC0yIixjOiJjb250ZW50LXNuYXAtd2lkdGgtMyJ9O2Z1bmN0aW9uIGYoKXt2YXIgYT1bXSxjO2ZvcihjIGluIGIpYS5wdXNoKGJbY10pO3JldHVybiBhfQpmdW5jdGlvbiBoKGEpe3ZhciBjPWYoKS5jb25jYXQoWyJndWlkZS1waW5uZWQiLCJzaG93LWd1aWRlIl0pLGU9Yy5sZW5ndGgsZz1bXTthLnJlcGxhY2UoL1xTKy9nLGZ1bmN0aW9uKGEpe2Zvcih2YXIgZD0wO2Q8ZTtkKyspaWYoYT09Y1tkXSlyZXR1cm47Zy5wdXNoKGEpfSk7CnJldHVybiBnfQo7ZnVuY3Rpb24gayhhLGMsZSl7dmFyIGc9ZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoImh0bWwiKVswXSxkPWgoZy5jbGFzc05hbWUpO2EmJjEyNTE8PSh3aW5kb3cuaW5uZXJXaWR0aHx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoKSYmKGQucHVzaCgiZ3VpZGUtcGlubmVkIiksYyYmZC5wdXNoKCJzaG93LWd1aWRlIikpO2UmJihlPSh3aW5kb3cuaW5uZXJXaWR0aHx8ZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoKS0yMS01MCwxMjUxPD0od2luZG93LmlubmVyV2lkdGh8fGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCkmJmEmJmMmJihlLT0yMzApLGQucHVzaCgxMjYyPD1lPyJjb250ZW50LXNuYXAtd2lkdGgtMyI6MTA1Njw9ZT8iY29udGVudC1zbmFwLXdpZHRoLTIiOiJjb250ZW50LXNuYXAtd2lkdGgtMSIpKTtnLmNsYXNzTmFtZT1kLmpvaW4oIiAiKX0KdmFyIGw9WyJ5dCIsInd3dyIsIm1hc3RoZWFkIiwic2l6aW5nIiwicnVuQmVmb3JlQm9keUlzUmVhZHkiXSxtPXRoaXM7bFswXWluIG18fCFtLmV4ZWNTY3JpcHR8fG0uZXhlY1NjcmlwdCgidmFyICIrbFswXSk7Zm9yKHZhciBuO2wubGVuZ3RoJiYobj1sLnNoaWZ0KCkpOylsLmxlbmd0aHx8dm9pZCAwPT09az9tW25dJiZtW25dIT09T2JqZWN0LnByb3RvdHlwZVtuXT9tPW1bbl06bT1tW25dPXt9Om1bbl09azt9KS5jYWxsKHRoaXMpOwoKICAgICAgdHJ5IHt3aW5kb3cueXRidWZmZXIgPSB7fTt5dGJ1ZmZlci5oYW5kbGVDbGljayA9IGZ1bmN0aW9uKGUpIHt2YXIgZWxlbWVudCA9IGUudGFyZ2V0IHx8IGUuc3JjRWxlbWVudDt3aGlsZSAoZWxlbWVudC5wYXJlbnRFbGVtZW50KSB7aWYgKC8oXnwgKXl0LWNhbi1idWZmZXIoIHwkKS8udGVzdChlbGVtZW50LmNsYXNzTmFtZSkpIHt3aW5kb3cueXRidWZmZXIgPSB7YnVmZmVyZWRDbGljazogZX07ZWxlbWVudC5jbGFzc05hbWUgKz0gJyB5dC1pcy1idWZmZXJlZCc7YnJlYWs7fWVsZW1lbnQgPSBlbGVtZW50LnBhcmVudEVsZW1lbnQ7fX07aWYgKGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIpIHtkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIHl0YnVmZmVyLmhhbmRsZUNsaWNrKTt9IGVsc2Uge2RvY3VtZW50LmF0dGFjaEV2ZW50KCdvbmNsaWNrJywgeXRidWZmZXIuaGFuZGxlQ2xpY2spO319IGNhdGNoKGUpIHt9CgogICAgeXQud3d3Lm1hc3RoZWFkLnNpemluZy5ydW5CZWZvcmVCb2R5SXNSZWFkeShmYWxzZSx0cnVlLGZhbHNlKTsKICA8L3NjcmlwdD4KCiAgICAgIDxzY3JpcHQgc3JjPSIveXRzL2pzYmluL3NjaGVkdWxlci12ZmxPLUZ6RDgvc2NoZWR1bGVyLmpzIiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIG5hbWU9InNjaGVkdWxlci9zY2hlZHVsZXIiPjwvc2NyaXB0PgoKCiAgCiAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIveXRzL2Nzc2Jpbi93d3ctY29yZS12ZmxZSS1BUWsuY3NzIiBuYW1lPSJ3d3ctY29yZSI+CiAgPGxpbmsgcmVsPSJzdHlsZXNoZWV0IiBocmVmPSIveXRzL2Nzc2Jpbi93d3ctcGFnZWZyYW1lLXZmbDFoVTh0ZS5jc3MiIG5hbWU9Ind3dy1wYWdlZnJhbWUiPgoKICAgIAo8dGl0bGU+WW91VHViZTwvdGl0bGU+PGxpbmsgcmVsPSJhbHRlcm5hdGUiIG1lZGlhPSJoYW5kaGVsZCIgaHJlZj0iaHR0cHM6Ly9tLnlvdXR1YmUuY29tL3Jlc3VsdHM/c2VhcmNoX3F1ZXJ5PXN0cm9uZ2VyJmFtcDtzcGY9bmF2aWdhdGUiPjxsaW5rIHJlbD0iYWx0ZXJuYXRlIiBtZWRpYT0ib25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSIgaHJlZj0iaHR0cHM6Ly9tLnlvdXR1YmUuY29tL3Jlc3VsdHM/c2VhcmNoX3F1ZXJ5PXN0cm9uZ2VyJmFtcDtzcGY9bmF2aWdhdGUiPjxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJFbmpveSB0aGUgdmlkZW9zIGFuZCBtdXNpYyB5b3UgbG92ZSwgdXBsb2FkIG9yaWdpbmFsIGNvbnRlbnQsIGFuZCBzaGFyZSBpdCBhbGwgd2l0aCBmcmllbmRzLCBmYW1pbHksIGFuZCB0aGUgd29ybGQgb24gWW91VHViZS4iPjxtZXRhIG5hbWU9ImtleXdvcmRzIiBjb250ZW50PSJ2aWRlbywgc2hhcmluZywgY2FtZXJhIHBob25lLCB2aWRlbyBwaG9uZSwgZnJlZSwgdXBsb2FkIj48bGluayByZWw9Im1hbmlmZXN0IiBocmVmPSIvbWFuaWZlc3QuanNvbiI+PGxpbmsgcmVsPSJzZWFyY2giIHR5cGU9ImFwcGxpY2F0aW9uL29wZW5zZWFyY2hkZXNjcmlwdGlvbit4bWwiIGhyZWY9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL29wZW5zZWFyY2g/bG9jYWxlPWVuX1VTIiB0aXRsZT0iWW91VHViZSBWaWRlbyBTZWFyY2giPjxsaW5rIHJlbD0ic2hvcnRjdXQgaWNvbiIgaHJlZj0iaHR0cHM6Ly9zLnl0aW1nLmNvbS95dHMvaW1nL2Zhdmljb24tdmZsejd1aHp3LmljbyIgdHlwZT0iaW1hZ2UveC1pY29uIj4gICAgIDxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iL3l0cy9pbWcvZmF2aWNvbl8zMi12Zmw4TkduNGsucG5nIiBzaXplcz0iMzJ4MzIiPjxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iL3l0cy9pbWcvZmF2aWNvbl80OC12ZmwxczByR2gucG5nIiBzaXplcz0iNDh4NDgiPjxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iL3l0cy9pbWcvZmF2aWNvbl85Ni12ZmxkU0EzY2EucG5nIiBzaXplcz0iOTZ4OTYiPjxsaW5rIHJlbD0iaWNvbiIgaHJlZj0iL3l0cy9pbWcvZmF2aWNvbl8xNDQtdmZsV216b1h3LnBuZyIgc2l6ZXM9IjE0NHgxNDQiPjxtZXRhIG5hbWU9InRoZW1lLWNvbG9yIiBjb250ZW50PSIjZTYyMTE3Ij48c3R5bGU+Lnl0LXVpeC1idXR0b24tcHJpbWFyeSwgLnl0LXVpeC1idXR0b24tcHJpbWFyeVtkaXNhYmxlZF0sIC55dC11aXgtYnV0dG9uLXByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAueXQtdWl4LWJ1dHRvbi1wcmltYXJ5W2Rpc2FibGVkXTphY3RpdmUsIC55dC11aXgtYnV0dG9uLXByaW1hcnlbZGlzYWJsZWRdOmZvY3VzIHsgYmFja2dyb3VuZC1jb2xvcjogIzE2N2FjNjsgfTwvc3R5bGU+PC9oZWFkPgoKICAgICAgPGJvZHkgZGlyPSJsdHIiIGlkPSJib2R5IiBjbGFzcz0iICBsdHIgIGdlY2tvIGdlY2tvLTEwICBleHAtcmVzcG9uc2l2ZSBleHAtc2Nyb2xsYWJsZS1ndWlkZSBleHAtc2VhcmNoLWJpZy10aHVtYnMgICBzaXRlLWNlbnRlci1hbGlnbmVkIHNpdGUtYXMtZ2lhbnQtY2FyZCBhcHBiYXItaGlkZGVuICAgIHZpc2liaWxpdHktbG9nZ2luZy1lbmFibGVkICAgbm90LW5pcnZhbmEtZG9nZm9vZCAgbm90LXl0LWxlZ2FjeS1jc3MgICAgZGVsYXllZC1mcmFtZS1zdHlsZXMtbm90LWluICAiIGRhdGEtc3BmLW5hbWU9Im90aGVyIj4KCiAgPGRpdiBpZD0iZWFybHktYm9keSI+PC9kaXY+CiAgPGRpdiBpZD0iYm9keS1jb250YWluZXIiPjxkaXYgaWQ9ImExMXktYW5ub3VuY2VtZW50cy1jb250YWluZXIiIHJvbGU9ImFsZXJ0Ij48ZGl2IGlkPSJhMTF5LWFubm91bmNlbWVudHMtbWVzc2FnZSI+PC9kaXY+PC9kaXY+PGZvcm0gbmFtZT0ibG9nb3V0Rm9ybSIgbWV0aG9kPSJQT1NUIiBhY3Rpb249Ii9sb2dvdXQiPjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImFjdGlvbl9sb2dvdXQiIHZhbHVlPSIxIj48L2Zvcm0+PGRpdiBpZD0ibWFzdGhlYWQtcG9zaXRpb25lciI+ICA8ZGl2IGlkPSJ0aWNrZXItY29udGVudCI+CiAgICAgICAgCgogIDwvZGl2PgogIDxkaXYgaWQ9Inl0LW1hc3RoZWFkLWNvbnRhaW5lciIgY2xhc3M9ImNsZWFyZml4IHl0LWJhc2UtZ3V0dGVyIj4gIDxidXR0b24gaWQ9ImExMXktc2tpcC1uYXYiIGNsYXNzPSJza2lwLW5hdiIgZGF0YS10YXJnZXQtaWQ9Im1haW4iIHRhYmluZGV4PSIzIj4KU2tpcCBuYXZpZ2F0aW9uCiAgPC9idXR0b24+CjxkaXYgaWQ9Inl0LW1hc3RoZWFkIj48ZGl2IGNsYXNzPSJ5dC1tYXN0aGVhZC1sb2dvLWNvbnRhaW5lciAiPiAgPGJ1dHRvbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbiB5dC11aXgtYnV0dG9uLXNpemUtZGVmYXVsdCB5dC11aXgtYnV0dG9uLXRleHQgeXQtdWl4LWJ1dHRvbi1lbXB0eSB5dC11aXgtYnV0dG9uLWhhcy1pY29uIGFwcGJhci1ndWlkZS10b2dnbGUgYXBwYmFyLWd1aWRlLWNsaWNrYWJsZS1hbmNlc3RvciIgdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSI7cmV0dXJuIGZhbHNlOyIgaWQ9ImFwcGJhci1ndWlkZS1idXR0b24iIGFyaWEtY29udHJvbHM9ImFwcGJhci1ndWlkZS1tZW51IiBhcmlhLWxhYmVsPSJHdWlkZSI+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24taWNvbi13cmFwcGVyIj48c3BhbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbi1pY29uIHl0LXVpeC1idXR0b24taWNvbi1hcHBiYXItZ3VpZGUgeXQtc3ByaXRlIj48L3NwYW4+PC9zcGFuPjwvYnV0dG9uPgogIDxkaXYgaWQ9ImFwcGJhci1tYWluLWd1aWRlLW5vdGlmaWNhdGlvbi1jb250YWluZXIiPjwvZGl2PgogICAgPGEgaWQ9ImxvZ28tY29udGFpbmVyIiBocmVmPSIvIiB0aXRsZT0iWW91VHViZSBob21lIiBjbGFzcz0iIHNwZi1saW5rICBtYXN0aGVhZC1sb2dvLXJlbmRlcmVyIHl0LXVpeC1zZXNzaW9ubGluayIgZGF0YS1zZXNzaW9ubGluaz0iIj48c3BhbiBjbGFzcz0ibG9nbyBtYXN0aGVhZC1sb2dvLXJlbmRlcmVyLWxvZ28geXQtc3ByaXRlIiB0aXRsZT0iWW91VHViZSBob21lIj48L3NwYW4+PC9hPgo8L2Rpdj48ZGl2IGlkPSJ5dC1tYXN0aGVhZC1zaWduaW4iPjxhIGhyZWY9Ii8vd3d3LnlvdXR1YmUuY29tL3VwbG9hZCIgY2xhc3M9Inl0LXVpeC1idXR0b24gICB5dC11aXgtc2Vzc2lvbmxpbmsgeXQtdWl4LWJ1dHRvbi1vcGFjaXR5IHl0LXVpeC1idXR0b24tc2l6ZS1kZWZhdWx0IHl0LXVpeC1idXR0b24taGFzLWljb24geXQtdWl4LXRvb2x0aXAgeXQtdWl4LWJ1dHRvbi1lbXB0eSIgZGF0YS1zZXNzaW9ubGluaz0iZWk9aFJFU1dieWdEYzdBLXdYTG1KTG9BdyZhbXA7ZmVhdHVyZT1taHNiIiBpZD0idXBsb2FkLWJ0biIgdGl0bGU9IlVwbG9hZCI+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24taWNvbi13cmFwcGVyIj48c3BhbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbi1pY29uIHl0LXVpeC1idXR0b24taWNvbi1tYXRlcmlhbC11cGxvYWQgeXQtc3ByaXRlIj48L3NwYW4+PC9zcGFuPjwvYT48ZGl2IGNsYXNzPSJzaWduaW4tY29udGFpbmVyICI+PGJ1dHRvbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbiB5dC11aXgtYnV0dG9uLXNpemUtZGVmYXVsdCB5dC11aXgtYnV0dG9uLXByaW1hcnkiIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0iO3dpbmRvdy5sb2NhdGlvbi5ocmVmPXRoaXMuZ2V0QXR0cmlidXRlKCYjMzk7aHJlZiYjMzk7KTtyZXR1cm4gZmFsc2U7IiByb2xlPSJsaW5rIiBocmVmPSJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20vU2VydmljZUxvZ2luP2hsPWVuJmFtcDtwYXNzaXZlPXRydWUmYW1wO3NlcnZpY2U9eW91dHViZSZhbXA7Y29udGludWU9aHR0cHMlM0ElMkYlMkZ3d3cueW91dHViZS5jb20lMkZzaWduaW4lM0ZhY3Rpb25faGFuZGxlX3NpZ25pbiUzRHRydWUlMjZuZXh0JTNEJTI1MkZyZXN1bHRzJTI1M0ZzZWFyY2hfcXVlcnklMjUzRHN0cm9uZ2VyJTI2YXBwJTNEZGVza3RvcCUyNmZlYXR1cmUlM0RzaWduX2luX2J1dHRvbiUyNmhsJTNEZW4mYW1wO3VpbGVsPTMiPjxzcGFuIGNsYXNzPSJ5dC11aXgtYnV0dG9uLWNvbnRlbnQiPlNpZ24gaW48L3NwYW4+PC9idXR0b24+PC9kaXY+PC9kaXY+PGRpdiBpZD0ieXQtbWFzdGhlYWQtY29udGVudCI+PGZvcm0gaWQ9Im1hc3RoZWFkLXNlYXJjaCIgY2xhc3M9IiAgc2VhcmNoLWZvcm0gY29uc29saWRhdGVkLWZvcm0gIHZ2ZS1jaGVjayIgYWN0aW9uPSIvcmVzdWx0cyIgb25zdWJtaXQ9ImlmIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgmIzM5O21hc3RoZWFkLXNlYXJjaC10ZXJtJiMzOTspLnZhbHVlID09ICYjMzk7JiMzOTspIHJldHVybiBmYWxzZTsiIGRhdGEtY2xpY2t0cmFja2luZz0iIiBkYXRhLXZpc2liaWxpdHktdHJhY2tpbmc9IiI+PGJ1dHRvbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbiB5dC11aXgtYnV0dG9uLXNpemUtZGVmYXVsdCB5dC11aXgtYnV0dG9uLWRlZmF1bHQgc2VhcmNoLWJ0bi1jb21wb25lbnQgc2VhcmNoLWJ1dHRvbiIgdHlwZT0ic3VibWl0IiBvbmNsaWNrPSJpZiAoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJiMzOTttYXN0aGVhZC1zZWFyY2gtdGVybSYjMzk7KS52YWx1ZSA9PSAmIzM5OyYjMzk7KSByZXR1cm4gZmFsc2U7IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCYjMzk7bWFzdGhlYWQtc2VhcmNoJiMzOTspLnN1Ym1pdCgpOyByZXR1cm4gZmFsc2U7O3JldHVybiB0cnVlOyIgdGFiaW5kZXg9IjIiIGlkPSJzZWFyY2gtYnRuIiBkaXI9Imx0ciI+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24tY29udGVudCI+U2VhcmNoPC9zcGFuPjwvYnV0dG9uPjxkaXYgaWQ9Im1hc3RoZWFkLXNlYXJjaC10ZXJtcyIgY2xhc3M9Im1hc3RoZWFkLXNlYXJjaC10ZXJtcy1ib3JkZXIiIGRpcj0ibHRyIj48aW5wdXQgaWQ9Im1hc3RoZWFkLXNlYXJjaC10ZXJtIiBhdXRvY29tcGxldGU9Im9mZiIgIG9ua2V5ZG93bj0iaWYgKCF0aGlzLnZhbHVlICZhbXA7JmFtcDsgKGV2ZW50LmtleUNvZGUgPT0gNDAgfHwgZXZlbnQua2V5Q29kZSA9PSAzMiB8fCBldmVudC5rZXlDb2RlID09IDM0KSkge3RoaXMub25rZXlkb3duID0gbnVsbDsgdGhpcy5ibHVyKCk7fSIgY2xhc3M9InNlYXJjaC10ZXJtIG1hc3RoZWFkLXNlYXJjaC1yZW5kZXJlci1pbnB1dCB5dC11aXgtZm9ybS1pbnB1dC1iaWRpIiBuYW1lPSJzZWFyY2hfcXVlcnkiIHZhbHVlPSIiIHR5cGU9InRleHQiIHRhYmluZGV4PSIxIiBwbGFjZWhvbGRlcj0iU2VhcmNoIiB0aXRsZT0iU2VhcmNoIiBhcmlhLWxhYmVsPSJTZWFyY2giPjwvZGl2PjwvZm9ybT48L2Rpdj48L2Rpdj48L2Rpdj4KICAgIDxkaXYgaWQ9Im1hc3RoZWFkLWFwcGJhci1jb250YWluZXIiIGNsYXNzPSJjbGVhcmZpeCI+PGRpdiBpZD0ibWFzdGhlYWQtYXBwYmFyIj48ZGl2IGlkPSJhcHBiYXItY29udGVudCIgY2xhc3M9IiI+PC9kaXY+PC9kaXY+PC9kaXY+Cgo8L2Rpdj48ZGl2IGlkPSJtYXN0aGVhZC1wb3NpdGlvbmVyLWhlaWdodC1vZmZzZXQiPjwvZGl2PjxkaXYgaWQ9InBhZ2UtY29udGFpbmVyIj48ZGl2IGlkPSJwYWdlIiBjbGFzcz0iIGNsZWFyZml4Ij48ZGl2IGlkPSJndWlkZSIgY2xhc3M9Inl0LXNjcm9sbGJhciI+ICAgICAgPGRpdiBpZD0iYXBwYmFyLWd1aWRlLW1lbnUiIGNsYXNzPSJhcHBiYXItbWVudSBhcHBiYXItZ3VpZGUtbWVudS1sYXlvdXQgYXBwYmFyLWd1aWRlLWNsaWNrYWJsZS1hbmNlc3RvciI+CiAgICA8ZGl2IGlkPSJndWlkZS1jb250YWluZXIiPgogICAgICA8ZGl2IGNsYXNzPSJndWlkZS1tb2R1bGUtY29udGVudCBndWlkZS1tb2R1bGUtbG9hZGluZyI+CiAgICAgICAgICA8cCBjbGFzcz0ieXQtc3Bpbm5lciAiPgogICAgICAgIDxzcGFuIGNsYXNzPSJ5dC1zcGlubmVyLWltZyAgeXQtc3ByaXRlIiB0aXRsZT0iTG9hZGluZyBpY29uIj48L3NwYW4+CgogICAgPHNwYW4gY2xhc3M9Inl0LXNwaW5uZXItbWVzc2FnZSI+CkxvYWRpbmcuLi4KICAgIDwvc3Bhbj4KICA8L3A+CgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2PgoKPC9kaXY+PGRpdiBjbGFzcz0iYWxlcnRzLXdyYXBwZXIiPjxkaXYgaWQ9ImFsZXJ0cyIgY2xhc3M9ImNvbnRlbnQtYWxpZ25tZW50Ij4gIAo8L2Rpdj48L2Rpdj48ZGl2IGlkPSJoZWFkZXIiPjwvZGl2PjxkaXYgaWQ9InBsYXllciIgY2xhc3M9IiAgb2ZmLXNjcmVlbiAgIiByb2xlPSJjb21wbGVtZW50YXJ5Ij48ZGl2IGlkPSJ0aGVhdGVyLWJhY2tncm91bmQiIGNsYXNzPSJwbGF5ZXItaGVpZ2h0Ij48L2Rpdj4gIDxkaXYgaWQ9InBsYXllci1tb2xlLWNvbnRhaW5lciI+CiAgICA8ZGl2IGlkPSJwbGF5ZXItdW5hdmFpbGFibGUiIGNsYXNzPSIgIGhpZCAgIj4KICAgICAgCiAgICA8L2Rpdj4KCiAgICA8ZGl2IGlkPSJwbGF5ZXItYXBpIiBjbGFzcz0icGxheWVyLXdpZHRoIHBsYXllci1oZWlnaHQgb2ZmLXNjcmVlbi10YXJnZXQgcGxheWVyLWFwaSIgdGFiSW5kZXg9Ii0xIj48L2Rpdj4KICAgIAoKICAgIDxkaXYgaWQ9IndhdGNoLXF1ZXVlLW1vbGUiIGNsYXNzPSJ2aWRlby1tb2xlIG1vbGUtY29sbGFwc2VkIGhpZCI+PGRpdiBpZD0id2F0Y2gtcXVldWUiIGNsYXNzPSJ3YXRjaC1wbGF5bGlzdCBwbGF5ZXItaGVpZ2h0Ij48ZGl2IGNsYXNzPSJtYWluLWNvbnRlbnQiPjxkaXYgY2xhc3M9IndhdGNoLXF1ZXVlLWhlYWRlciI+PGRpdiBjbGFzcz0id2F0Y2gtcXVldWUtaW5mbyI+PGRpdiBjbGFzcz0id2F0Y2gtcXVldWUtaW5mby1pY29uIj48c3BhbiBjbGFzcz0idHYtcXVldWUtbGlzdC1pY29uIHl0LXNwcml0ZSI+PC9zcGFuPjwvZGl2PjxoMyBjbGFzcz0id2F0Y2gtcXVldWUtdGl0bGUiPldhdGNoIFF1ZXVlPC9oMz48aDMgY2xhc3M9InR2LXF1ZXVlLXRpdGxlIj5RdWV1ZTwvaDM+PHNwYW4gY2xhc3M9InR2LXF1ZXVlLWRldGFpbHMiPjwvc3Bhbj48L2Rpdj48ZGl2IGNsYXNzPSJ3YXRjaC1xdWV1ZS1jb250cm9sLWJhciBjb250cm9sLWJhci1idXR0b24iPjxkaXYgY2xhc3M9IndhdGNoLXF1ZXVlLW1vbGUtaW5mbyI+PGRpdiBjbGFzcz0id2F0Y2gtcXVldWUtY29udHJvbC1iYXItaWNvbiI+PHNwYW4gY2xhc3M9IndhdGNoLXF1ZXVlLWljb24geXQtc3ByaXRlIj48L3NwYW4+PC9kaXY+PGRpdiBjbGFzcz0id2F0Y2gtcXVldWUtdGl0bGUtY29udGFpbmVyIj48c3BhbiBjbGFzcz0id2F0Y2gtcXVldWUtY291bnQiPjwvc3Bhbj48c3BhbiBjbGFzcz0id2F0Y2gtcXVldWUtdGl0bGUiPldhdGNoIFF1ZXVlPC9zcGFuPjxzcGFuIGNsYXNzPSJ0di1xdWV1ZS10aXRsZSI+UXVldWU8L3NwYW4+PC9kaXY+PC9kaXY+ICA8c3BhbiBjbGFzcz0iZGFyay1vdmVyZmxvdy1hY3Rpb24tbWVudSI+CiAgICAKICAgIAogICAgPGJ1dHRvbiBhcmlhLWhhc3BvcHVwPSJ0cnVlIiBhcmlhLWV4cGFuZGVkPSJmYWxzZSIgb25jbGljaz0iO3JldHVybiBmYWxzZTsiIGNsYXNzPSJmbGlwIGNvbnRyb2wtYmFyLWJ1dHRvbiB5dC11aXgtYnV0dG9uIHl0LXVpeC1idXR0b24tZGFyay1vdmVyZmxvdy1hY3Rpb24tbWVudSB5dC11aXgtYnV0dG9uLXNpemUtZGVmYXVsdCB5dC11aXgtYnV0dG9uLWhhcy1pY29uIG5vLWljb24tbWFya3VwIHl0LXVpeC1idXR0b24tZW1wdHkiIGFyaWEtbGFiZWw9IkFjdGlvbnMgZm9yIHRoZSBxdWV1ZSIgdHlwZT0iYnV0dG9uIiA+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24tYXJyb3cgeXQtc3ByaXRlIj48L3NwYW4+PHVsIGNsYXNzPSJ3YXRjaC1xdWV1ZS1tZW51IHl0LXVpeC1idXR0b24tbWVudSB5dC11aXgtYnV0dG9uLW1lbnUtZGFyay1vdmVyZmxvdy1hY3Rpb24tbWVudSBoaWQiIHJvbGU9Im1lbnUiIGFyaWEtaGFzcG9wdXA9InRydWUiPjxsaSByb2xlPSJtZW51aXRlbSI+PHNwYW4gY2xhc3M9IndhdGNoLXF1ZXVlLW1lbnUtY2hvaWNlIG92ZXJmbG93LW1lbnUtY2hvaWNlIHl0LXVpeC1idXR0b24tbWVudS1pdGVtIiBkYXRhLWFjdGlvbj0icmVtb3ZlLWFsbCIgb25jbGljaz0iO3JldHVybiBmYWxzZTsiID5SZW1vdmUgYWxsPC9zcGFuPjwvbGk+PGxpIHJvbGU9Im1lbnVpdGVtIj48c3BhbiBjbGFzcz0id2F0Y2gtcXVldWUtbWVudS1jaG9pY2Ugb3ZlcmZsb3ctbWVudS1jaG9pY2UgeXQtdWl4LWJ1dHRvbi1tZW51LWl0ZW0iIGRhdGEtYWN0aW9uPSJkaXNjb25uZWN0IiBvbmNsaWNrPSI7cmV0dXJuIGZhbHNlOyIgPkRpc2Nvbm5lY3Q8L3NwYW4+PC9saT48L3VsPjwvYnV0dG9uPgogIDwvc3Bhbj4KICA8ZGl2IGNsYXNzPSJ3YXRjaC1xdWV1ZS1jb250cm9scyI+CiAgICA8YnV0dG9uIGNsYXNzPSJ5dC11aXgtYnV0dG9uIHl0LXVpeC1idXR0b24tc2l6ZS1kZWZhdWx0IHl0LXVpeC1idXR0b24tZW1wdHkgeXQtdWl4LWJ1dHRvbi1oYXMtaWNvbiBjb250cm9sLWJhci1idXR0b24gcHJldi13YXRjaC1xdWV1ZS1idXR0b24geXQtdWl4LWJ1dHRvbi1vcGFjaXR5IHl0LXVpeC10b29sdGlwIHl0LXVpeC10b29sdGlwIiB0eXBlPSJidXR0b24iIG9uY2xpY2s9IjtyZXR1cm4gZmFsc2U7IiB0aXRsZT0iUHJldmlvdXMgdmlkZW8iPjxzcGFuIGNsYXNzPSJ5dC11aXgtYnV0dG9uLWljb24td3JhcHBlciI+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24taWNvbiB5dC11aXgtYnV0dG9uLWljb24td2F0Y2gtcXVldWUtcHJldiB5dC1zcHJpdGUiPjwvc3Bhbj48L3NwYW4+PC9idXR0b24+CgogICAgPGJ1dHRvbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbiB5dC11aXgtYnV0dG9uLXNpemUtZGVmYXVsdCB5dC11aXgtYnV0dG9uLWVtcHR5IHl0LXVpeC1idXR0b24taGFzLWljb24gY29udHJvbC1iYXItYnV0dG9uIHBsYXktd2F0Y2gtcXVldWUtYnV0dG9uIHl0LXVpeC1idXR0b24tb3BhY2l0eSB5dC11aXgtdG9vbHRpcCB5dC11aXgtdG9vbHRpcCIgdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSI7cmV0dXJuIGZhbHNlOyIgdGl0bGU9IlBsYXkiPjxzcGFuIGNsYXNzPSJ5dC11aXgtYnV0dG9uLWljb24td3JhcHBlciI+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24taWNvbiB5dC11aXgtYnV0dG9uLWljb24td2F0Y2gtcXVldWUtcGxheSB5dC1zcHJpdGUiPjwvc3Bhbj48L3NwYW4+PC9idXR0b24+CgogICAgPGJ1dHRvbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbiB5dC11aXgtYnV0dG9uLXNpemUtZGVmYXVsdCB5dC11aXgtYnV0dG9uLWVtcHR5IHl0LXVpeC1idXR0b24taGFzLWljb24gY29udHJvbC1iYXItYnV0dG9uIHBhdXNlLXdhdGNoLXF1ZXVlLWJ1dHRvbiB5dC11aXgtYnV0dG9uLW9wYWNpdHkgeXQtdWl4LXRvb2x0aXAgaGlkIHl0LXVpeC10b29sdGlwIiB0eXBlPSJidXR0b24iIG9uY2xpY2s9IjtyZXR1cm4gZmFsc2U7IiB0aXRsZT0iUGF1c2UiPjxzcGFuIGNsYXNzPSJ5dC11aXgtYnV0dG9uLWljb24td3JhcHBlciI+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24taWNvbiB5dC11aXgtYnV0dG9uLWljb24td2F0Y2gtcXVldWUtcGF1c2UgeXQtc3ByaXRlIj48L3NwYW4+PC9zcGFuPjwvYnV0dG9uPgoKICAgIDxidXR0b24gY2xhc3M9Inl0LXVpeC1idXR0b24geXQtdWl4LWJ1dHRvbi1zaXplLWRlZmF1bHQgeXQtdWl4LWJ1dHRvbi1lbXB0eSB5dC11aXgtYnV0dG9uLWhhcy1pY29uIGNvbnRyb2wtYmFyLWJ1dHRvbiBuZXh0LXdhdGNoLXF1ZXVlLWJ1dHRvbiB5dC11aXgtYnV0dG9uLW9wYWNpdHkgeXQtdWl4LXRvb2x0aXAgeXQtdWl4LXRvb2x0aXAiIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0iO3JldHVybiBmYWxzZTsiIHRpdGxlPSJOZXh0IHZpZGVvIj48c3BhbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbi1pY29uLXdyYXBwZXIiPjxzcGFuIGNsYXNzPSJ5dC11aXgtYnV0dG9uLWljb24geXQtdWl4LWJ1dHRvbi1pY29uLXdhdGNoLXF1ZXVlLW5leHQgeXQtc3ByaXRlIj48L3NwYW4+PC9zcGFuPjwvYnV0dG9uPgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJhdXRvcGxheS1kaXNtaXNzLWJhciBmYWRlLW91dCI+PHNwYW4gY2xhc3M9ImF1dG9wbGF5LWRpc21pc3MtdGl0bGUtbGFiZWwiPlRoZSBuZXh0IHZpZGVvIGlzIHN0YXJ0aW5nPC9zcGFuPjxzcGFuPjxidXR0b24gY2xhc3M9Inl0LXVpeC1idXR0b24geXQtdWl4LWJ1dHRvbi1zaXplLWRlZmF1bHQgYXV0b3BsYXktZGlzbWlzcy1idXR0b24geXQtdWl4LXRvb2x0aXAiIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0iO3JldHVybiBmYWxzZTsiIHRpdGxlPSJzdG9wIj48c3BhbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbi1jb250ZW50Ij5zdG9wPC9zcGFuPjwvYnV0dG9uPjwvc3Bhbj48L2Rpdj48L2Rpdj48ZGl2IGNsYXNzPSJ3YXRjaC1xdWV1ZS1pdGVtcy1jb250YWluZXIgeXQtc2Nyb2xsYmFyLWRhcmsgeXQtc2Nyb2xsYmFyIj48ZGl2IGNsYXNzPSJ5dC11aXgtc2Nyb2xsZXIgcGxheWxpc3QtdmlkZW9zLWxpc3QiPjxvbCBjbGFzcz0id2F0Y2gtcXVldWUtaXRlbXMtbGlzdCIgZGF0YS1zY3JvbGwtYWN0aW9uPSJ5dC53d3cud2F0Y2hxdWV1ZS5sb2FkVGh1bWJuYWlscyI+ICA8cCBjbGFzcz0ieXQtc3Bpbm5lciAiPgogICAgICAgIDxzcGFuIGNsYXNzPSJ5dC1zcGlubmVyLWltZyAgeXQtc3ByaXRlIiB0aXRsZT0iTG9hZGluZyBpY29uIj48L3NwYW4+CgogICAgPHNwYW4gY2xhc3M9Inl0LXNwaW5uZXItbWVzc2FnZSI+CkxvYWRpbmcuLi4KICAgIDwvc3Bhbj4KICA8L3A+Cjwvb2w+PGRpdiBjbGFzcz0iYXV0b3BsYXktY29udHJvbC1jb250YWluZXIgeXQtdWl4LXNjcm9sbGVyLXNjcm9sbC11bml0IGhpZCI+ICA8ZGl2IGNsYXNzPSJhdXRvcGxheS1jb250cm9sLWJhciI+CiAgICA8bGFiZWwgY2xhc3M9ImF1dG9wbGF5LWxhYmVsIiBmb3I9YXV0b3BsYXktdG9nZ2xlLWlkPjwvbGFiZWw+CiAgICA8bGFiZWwgY2xhc3M9Inl0LXVpeC1mb3JtLWlucHV0LWNoZWNrYm94LWNvbnRhaW5lciB5dC11aXgtZm9ybS1pbnB1dC1jb250YWluZXIgeXQtdWl4LWZvcm0taW5wdXQtcGFwZXItdG9nZ2xlLWNvbnRhaW5lciAiPjxpbnB1dCBjbGFzcz0ieXQtdWl4LWZvcm0taW5wdXQtY2hlY2tib3giIHR5cGU9ImNoZWNrYm94IiBpZD0iYXV0b3BsYXktdG9nZ2xlLWlkIi8+PGRpdiBjbGFzcz0ieXQtdWl4LWZvcm0taW5wdXQtcGFwZXItdG9nZ2xlLWJnIHl0LXVpeC1mb3JtLWlucHV0LXBhcGVyLXRvZ2dsZS1iYXIiPjwvZGl2PjxkaXYgY2xhc3M9Inl0LXVpeC1mb3JtLWlucHV0LXBhcGVyLXRvZ2dsZS1iZyB5dC11aXgtZm9ybS1pbnB1dC1wYXBlci10b2dnbGUtYnV0dG9uIj48L2Rpdj48L2xhYmVsPgogIDwvZGl2Pgo8L2Rpdj48ZGl2IGNsYXNzPSJ1cC1uZXh0LWl0ZW0tY29udGFpbmVyIGhpZCI+PC9kaXY+PC9kaXY+PC9kaXY+PC9kaXY+ICA8ZGl2IGNsYXNzPSJoaWQiPgogICAgPGRpdiBpZD0id2F0Y2gtcXVldWUtdGl0bGUtbXNnIj4KV2F0Y2ggUXVldWUKICAgIDwvZGl2PgoKICAgIDxkaXYgaWQ9InR2LXF1ZXVlLXRpdGxlLW1zZyI+UXVldWU8L2Rpdj4KCiAgICA8ZGl2IGlkPSJ3YXRjaC1xdWV1ZS1jb3VudC1tc2ciPgpfX2NvdW50X18vX190b3RhbF9fCiAgICA8L2Rpdj4KCiAgICA8ZGl2IGlkPSJ3YXRjaC1xdWV1ZS1sb2FkaW5nLXRlbXBsYXRlIj4KICAgICAgPCEtLQogICAgICAgICAgPHAgY2xhc3M9Inl0LXNwaW5uZXIgIj4KICAgICAgICA8c3BhbiBjbGFzcz0ieXQtc3Bpbm5lci1pbWcgIHl0LXNwcml0ZSIgdGl0bGU9IkxvYWRpbmcgaWNvbiI+PC9zcGFuPgoKICAgIDxzcGFuIGNsYXNzPSJ5dC1zcGlubmVyLW1lc3NhZ2UiPgpMb2FkaW5nLi4uCiAgICA8L3NwYW4+CiAgPC9wPgoKICAgICAgLS0+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PC9kaXY+CgogICAgPGRpdiBpZD0icGxheWVyLXBsYXlsaXN0IiBjbGFzcz0iICBoaWQgICI+CiAgICAgIAogICAgPC9kaXY+CgogIDwvZGl2PgoKICA8ZGl2IGNsYXNzPSJjbGVhciI+PC9kaXY+CjwvZGl2PjxkaXYgaWQ9ImNvbnRlbnQiIGNsYXNzPSIgIGNvbnRlbnQtYWxpZ25tZW50IiByb2xlPSJtYWluIj48cCBjbGFzcz0nbGFyZ2VUZXh0Jz5Tb3JyeSBmb3IgdGhlIGludGVycnVwdGlvbi4gV2UgaGF2ZSBiZWVuIHJlY2VpdmluZyBhIGxhcmdlIHZvbHVtZSBvZiByZXF1ZXN0cyBmcm9tIHlvdXIgbmV0d29yay48L3A+Cgo8cD5UbyBjb250aW51ZSB3aXRoIHlvdXIgWW91VHViZSBleHBlcmllbmNlLCBwbGVhc2UgZmlsbCBvdXQgdGhlIGZvcm0gYmVsb3cuPC9wPgo8Zm9ybSBhY3Rpb249Ii9kYXNfY2FwdGNoYSIgbWV0aG9kPSJQT1NUIj4KPGRpdiBjbGFzcz0iZy1yZWNhcHRjaGEiIGRhdGEtc2l0ZWtleT0iNkxmMzlBTVRBQUFBQUxQYkxaZGNyV0RhOFlnbWdrX2ZtR21ybFJvZyI+PC9kaXY+Cjxici8+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InNlc3Npb25fdG9rZW4iIHZhbHVlPSJRVUZGTFVocWJtNWpSbWhyTFdSYVYzbGpTREV6ZFhSelpUWnlWR1ZQVDJ0d1ozeEJRM0p0YzB0c2FsWlZhV3h2Y2twT2FuQjVWVEJxTVRFNFRqWTBkSGRyVmxWVVRqSmtjVVF4T0VWYVFYbExWakZLU0hGV05tWlpjVm8yZGtaNlFYbGxVbk01VWtNNVVYQnFRVFpVU25SZk5VOXNWemxKZDJGWmJtWXdaRFZCYVhaWWVGWmphbXhHTm1GR2NHOXdiVXhPTTFGc1QzUXlVVEZvUkZCYVFVczRibFZsUWxaRGNYbElkVFk1V1RkcVpGQTBZM05FVEdSbGVYTmFkVXA0UVU1VVpGRT0iPgo8aW5wdXQgdHlwZT0naGlkZGVuJyBuYW1lPSdhY3Rpb25fcmVjYXB0Y2hhX3ZlcmlmeTInIHZhbHVlPScxJz4KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IlN1Ym1pdCI+CjwvZm9ybT4KPC9ib2R5Pgo8L2h0bWw+Cgo8L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4gIDxkaXYgaWQ9ImZvb3Rlci1jb250YWluZXIiIGNsYXNzPSJ5dC1iYXNlLWd1dHRlciBmb3JjZS1sYXllciI+PGRpdiBpZD0iZm9vdGVyIj48ZGl2IGlkPSJmb290ZXItbWFpbiI+PGRpdiBpZD0iZm9vdGVyLWxvZ28iPjxhIGhyZWY9Ii8iIGlkPSJmb290ZXItbG9nby1saW5rIiB0aXRsZT0iWW91VHViZSBob21lIj48c3BhbiBjbGFzcz0iZm9vdGVyLWxvZ28taWNvbiB5dC1zcHJpdGUiPjwvc3Bhbj48L2E+PC9kaXY+ICA8dWwgY2xhc3M9InBpY2tlcnMgeXQtdWl4LWJ1dHRvbi1ncm91cCIgZGF0YS1idXR0b24tdG9nZ2xlLWdyb3VwPSJvcHRpb25hbCI+CiAgICAgIDxsaT4KICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbiB5dC11aXgtYnV0dG9uLXNpemUtZGVmYXVsdCB5dC11aXgtYnV0dG9uLWRlZmF1bHQgeXQtdWl4LWJ1dHRvbi1oYXMtaWNvbiIgdHlwZT0iYnV0dG9uIiBvbmNsaWNrPSI7cmV0dXJuIGZhbHNlOyIgaWQ9Inl0LXBpY2tlci1sYW5ndWFnZS1idXR0b24iIGRhdGEtYnV0dG9uLW1lbnUtaWQ9ImFycm93LWRpc3BsYXkiIGRhdGEtcGlja2VyLXBvc2l0aW9uPSJmb290ZXIiIGRhdGEtcGlja2VyLWtleT0ibGFuZ3VhZ2UiIGRhdGEtYnV0dG9uLWFjdGlvbj0ieXQud3d3LnBpY2tlci5sb2FkIiBkYXRhLWJ1dHRvbi10b2dnbGU9InRydWUiPjxzcGFuIGNsYXNzPSJ5dC11aXgtYnV0dG9uLWljb24td3JhcHBlciI+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24taWNvbiB5dC11aXgtYnV0dG9uLWljb24tZm9vdGVyLWxhbmd1YWdlIHl0LXNwcml0ZSI+PC9zcGFuPjwvc3Bhbj48c3BhbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbi1jb250ZW50Ij4gIDxzcGFuIGNsYXNzPSJ5dC1waWNrZXItYnV0dG9uLWxhYmVsIj4KTGFuZ3VhZ2U6CiAgPC9zcGFuPgogIEVuZ2xpc2gKPC9zcGFuPjxzcGFuIGNsYXNzPSJ5dC11aXgtYnV0dG9uLWFycm93IHl0LXNwcml0ZSI+PC9zcGFuPjwvYnV0dG9uPgoKCiAgICAgIDwvbGk+CiAgICAgIDxsaT4KICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbiB5dC11aXgtYnV0dG9uLXNpemUtZGVmYXVsdCB5dC11aXgtYnV0dG9uLWRlZmF1bHQiIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0iO3JldHVybiBmYWxzZTsiIGlkPSJ5dC1waWNrZXItY291bnRyeS1idXR0b24iIGRhdGEtYnV0dG9uLW1lbnUtaWQ9ImFycm93LWRpc3BsYXkiIGRhdGEtcGlja2VyLXBvc2l0aW9uPSJmb290ZXIiIGRhdGEtcGlja2VyLWtleT0iY291bnRyeSIgZGF0YS1idXR0b24tYWN0aW9uPSJ5dC53d3cucGlja2VyLmxvYWQiIGRhdGEtYnV0dG9uLXRvZ2dsZT0idHJ1ZSI+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24tY29udGVudCI+ICA8c3BhbiBjbGFzcz0ieXQtcGlja2VyLWJ1dHRvbi1sYWJlbCI+CkNvbnRlbnQgbG9jYXRpb246CiAgPC9zcGFuPgogIFVuaXRlZCBTdGF0ZXMKPC9zcGFuPjxzcGFuIGNsYXNzPSJ5dC11aXgtYnV0dG9uLWFycm93IHl0LXNwcml0ZSI+PC9zcGFuPjwvYnV0dG9uPgoKCiAgICAgIDwvbGk+CiAgICAgIDxsaT4KICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbiB5dC11aXgtYnV0dG9uLXNpemUtZGVmYXVsdCB5dC11aXgtYnV0dG9uLWRlZmF1bHQiIHR5cGU9ImJ1dHRvbiIgb25jbGljaz0iO3JldHVybiBmYWxzZTsiIGlkPSJ5dC1waWNrZXItc2FmZXR5bW9kZS1idXR0b24iIGRhdGEtYnV0dG9uLW1lbnUtaWQ9ImFycm93LWRpc3BsYXkiIGRhdGEtcGlja2VyLXBvc2l0aW9uPSJmb290ZXIiIGRhdGEtcGlja2VyLWtleT0ic2FmZXR5bW9kZSIgZGF0YS1idXR0b24tYWN0aW9uPSJ5dC53d3cucGlja2VyLmxvYWQiIGRhdGEtYnV0dG9uLXRvZ2dsZT0idHJ1ZSI+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24tY29udGVudCI+ICA8c3BhbiBjbGFzcz0ieXQtcGlja2VyLWJ1dHRvbi1sYWJlbCI+ClJlc3RyaWN0ZWQgTW9kZToKICA8L3NwYW4+Ck9mZgo8L3NwYW4+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24tYXJyb3cgeXQtc3ByaXRlIj48L3NwYW4+PC9idXR0b24+CgoKICAgICAgPC9saT4KICA8L3VsPgo8YSBocmVmPSIvZmVlZC9oaXN0b3J5IiBjbGFzcz0ieXQtdWl4LWJ1dHRvbiAgZm9vdGVyLWhpc3RvcnkgeXQtdWl4LXNlc3Npb25saW5rIHl0LXVpeC1idXR0b24tZGVmYXVsdCB5dC11aXgtYnV0dG9uLXNpemUtZGVmYXVsdCB5dC11aXgtYnV0dG9uLWhhcy1pY29uIiBkYXRhLXNlc3Npb25saW5rPSJlaT1oUkVTV2J5Z0RjN0Etd1hMbUpMb0F3Ij48c3BhbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbi1pY29uLXdyYXBwZXIiPjxzcGFuIGNsYXNzPSJ5dC11aXgtYnV0dG9uLWljb24geXQtdWl4LWJ1dHRvbi1pY29uLWZvb3Rlci1oaXN0b3J5IHl0LXNwcml0ZSI+PC9zcGFuPjwvc3Bhbj48c3BhbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbi1jb250ZW50Ij5IaXN0b3J5PC9zcGFuPjwvYT4gICAgPGJ1dHRvbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbiB5dC11aXgtYnV0dG9uLXNpemUtZGVmYXVsdCB5dC11aXgtYnV0dG9uLWRlZmF1bHQgeXQtdWl4LWJ1dHRvbi1oYXMtaWNvbiB5dC11aXgtYnV0dG9uLXJldmVyc2UgeXQtZ29vZ2xlLWhlbHAtbGluayBpbnEtbm8tY2xpY2sgIiB0eXBlPSJidXR0b24iIG9uY2xpY2s9IjtyZXR1cm4gZmFsc2U7IiBpZD0iZ29vZ2xlLWhlbHAiIGRhdGEtZ2hlbHAtdHJhY2tpbmctcGFyYW09IiIgZGF0YS1naGVscC1hbmNob3I9Imdvb2dsZS1oZWxwIiBkYXRhLWxvYWQtY2hhdC1zdXBwb3J0PSIiIGRhdGEtZmVlZGJhY2stcHJvZHVjdC1pZD0iNTkiPjxzcGFuIGNsYXNzPSJ5dC11aXgtYnV0dG9uLWljb24td3JhcHBlciI+PHNwYW4gY2xhc3M9Inl0LXVpeC1idXR0b24taWNvbiB5dC11aXgtYnV0dG9uLWljb24tcXVlc3Rpb25tYXJrIHl0LXNwcml0ZSI+PC9zcGFuPjwvc3Bhbj48c3BhbiBjbGFzcz0ieXQtdWl4LWJ1dHRvbi1jb250ZW50Ij5IZWxwCjwvc3Bhbj48L2J1dHRvbj4KICAgICAgPGRpdiBpZD0ieXQtcGlja2VyLWxhbmd1YWdlLWZvb3RlciIgY2xhc3M9Inl0LXBpY2tlciIgc3R5bGU9ImRpc3BsYXk6IG5vbmUiPgogICAgICA8cCBjbGFzcz0ieXQtc3Bpbm5lciAiPgogICAgICAgIDxzcGFuIGNsYXNzPSJ5dC1zcGlubmVyLWltZyAgeXQtc3ByaXRlIiB0aXRsZT0iTG9hZGluZyBpY29uIj48L3NwYW4+CgogICAgPHNwYW4gY2xhc3M9Inl0LXNwaW5uZXItbWVzc2FnZSI+CkxvYWRpbmcuLi4KICAgIDwvc3Bhbj4KICA8L3A+CgogIDwvZGl2PgoKICAgICAgPGRpdiBpZD0ieXQtcGlja2VyLWNvdW50cnktZm9vdGVyIiBjbGFzcz0ieXQtcGlja2VyIiBzdHlsZT0iZGlzcGxheTogbm9uZSI+CiAgICAgIDxwIGNsYXNzPSJ5dC1zcGlubmVyICI+CiAgICAgICAgPHNwYW4gY2xhc3M9Inl0LXNwaW5uZXItaW1nICB5dC1zcHJpdGUiIHRpdGxlPSJMb2FkaW5nIGljb24iPjwvc3Bhbj4KCiAgICA8c3BhbiBjbGFzcz0ieXQtc3Bpbm5lci1tZXNzYWdlIj4KTG9hZGluZy4uLgogICAgPC9zcGFuPgogIDwvcD4KCiAgPC9kaXY+CgogICAgICA8ZGl2IGlkPSJ5dC1waWNrZXItc2FmZXR5bW9kZS1mb290ZXIiIGNsYXNzPSJ5dC1waWNrZXIiIHN0eWxlPSJkaXNwbGF5OiBub25lIj4KICAgICAgPHAgY2xhc3M9Inl0LXNwaW5uZXIgIj4KICAgICAgICA8c3BhbiBjbGFzcz0ieXQtc3Bpbm5lci1pbWcgIHl0LXNwcml0ZSIgdGl0bGU9IkxvYWRpbmcgaWNvbiI+PC9zcGFuPgoKICAgIDxzcGFuIGNsYXNzPSJ5dC1zcGlubmVyLW1lc3NhZ2UiPgpMb2FkaW5nLi4uCiAgICA8L3NwYW4+CiAgPC9wPgoKICA8L2Rpdj4KCjwvZGl2PjxkaXYgaWQ9ImZvb3Rlci1saW5rcyI+PHVsIGlkPSJmb290ZXItbGlua3MtcHJpbWFyeSI+ICA8bGk+PGEgaHJlZj0iLy93d3cueW91dHViZS5jb20veXQvYWJvdXQvIj5BYm91dDwvYT48L2xpPgogIDxsaT48YSBocmVmPSIvL3d3dy55b3V0dWJlLmNvbS95dC9wcmVzcy8iPlByZXNzPC9hPjwvbGk+CiAgPGxpPjxhIGhyZWY9Ii8vd3d3LnlvdXR1YmUuY29tL3l0L2NvcHlyaWdodC8iPkNvcHlyaWdodDwvYT48L2xpPgogIDxsaT48YSBocmVmPSIvL3d3dy55b3V0dWJlLmNvbS95dC9jcmVhdG9ycy8iPkNyZWF0b3JzPC9hPjwvbGk+CiAgPGxpPjxhIGhyZWY9Ii8vd3d3LnlvdXR1YmUuY29tL3l0L2FkdmVydGlzZS8iPkFkdmVydGlzZTwvYT48L2xpPgogIDxsaT48YSBocmVmPSIvL3d3dy55b3V0dWJlLmNvbS95dC9kZXYvIj5EZXZlbG9wZXJzPC9hPjwvbGk+CiAgPGxpPjxhIGhyZWY9Imh0dHBzOi8vcGx1cy5nb29nbGUuY29tLyt5b3V0dWJlIiBkaXI9Imx0ciI+K1lvdVR1YmU8L2E+PC9saT4KPC91bD48dWwgaWQ9ImZvb3Rlci1saW5rcy1zZWNvbmRhcnkiPiAgPGxpPjxhIGhyZWY9Ii90L3Rlcm1zIj5UZXJtczwvYT48L2xpPgogIDxsaT48YSBocmVmPSJodHRwczovL3d3dy5nb29nbGUuY29tL2ludGwvZW4vcG9saWNpZXMvcHJpdmFjeS8iPlByaXZhY3k8L2E+PC9saT4KICA8bGk+PGEgaHJlZj0iLy93d3cueW91dHViZS5jb20veXQvcG9saWN5YW5kc2FmZXR5LyI+ClBvbGljeSAmYW1wOyBTYWZldHkKICA8L2E+PC9saT4KICA8bGk+PGEgaHJlZj0iLy9zdXBwb3J0Lmdvb2dsZS5jb20veW91dHViZS8/aGw9ZW4iIG9uY2xpY2s9InJldHVybiB5dC53d3cuZmVlZGJhY2suc3RhcnQoNTkpOyIgY2xhc3M9InJlcG9ydGJ1ZyI+U2VuZCBmZWVkYmFjazwvYT48L2xpPgogIDxsaT4KICAgIDxhIGhyZWY9Ii90ZXN0dHViZSI+VGVzdCBuZXcgZmVhdHVyZXM8L2E+CiAgPC9saT4KICA8bGk+PC9saT4KPC91bD48L2Rpdj48L2Rpdj48L2Rpdj4KCgogICAgICA8ZGl2IGNsYXNzPSJ5dC1kaWFsb2cgaGlkICIgaWQ9ImZlZWQtcHJpdmFjeS1sYiI+CiAgICA8ZGl2IGNsYXNzPSJ5dC1kaWFsb2ctYmFzZSI+CiAgICAgIDxzcGFuIGNsYXNzPSJ5dC1kaWFsb2ctYWxpZ24iPjwvc3Bhbj4KICAgICAgPGRpdiBjbGFzcz0ieXQtZGlhbG9nLWZnIiByb2xlPSJkaWFsb2ciPgogICAgICAgIDxkaXYgY2xhc3M9Inl0LWRpYWxvZy1mZy1jb250ZW50Ij4KICAgICAgICAgIDxkaXYgY2xhc3M9Inl0LWRpYWxvZy1sb2FkaW5nIj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5dC1kaWFsb2ctd2FpdGluZy1jb250ZW50Ij4KICAgICAgPHAgY2xhc3M9Inl0LXNwaW5uZXIgIj4KICAgICAgICA8c3BhbiBjbGFzcz0ieXQtc3Bpbm5lci1pbWcgIHl0LXNwcml0ZSIgdGl0bGU9IkxvYWRpbmcgaWNvbiI+PC9zcGFuPgoKICAgIDxzcGFuIGNsYXNzPSJ5dC1zcGlubmVyLW1lc3NhZ2UiPgpMb2FkaW5nLi4uCiAgICA8L3NwYW4+CiAgPC9wPgoKICA8L2Rpdj4KCiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9Inl0LWRpYWxvZy1jb250ZW50Ij4KICAgICAgICAgICAgICA8ZGl2IGlkPSJmZWVkLXByaXZhY3ktZGlhbG9nIj4KICA8L2Rpdj4KCiAgICAgICAgICA8L2Rpdj4KICAgICAgICAgIDxkaXYgY2xhc3M9Inl0LWRpYWxvZy13b3JraW5nIj4KICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJ5dC1kaWFsb2ctd29ya2luZy1vdmVybGF5Ij48L2Rpdj4KICA8ZGl2IGNsYXNzPSJ5dC1kaWFsb2ctd29ya2luZy1idWJibGUiPgogICAgPGRpdiBjbGFzcz0ieXQtZGlhbG9nLXdhaXRpbmctY29udGVudCI+CiAgICAgICAgPHAgY2xhc3M9Inl0LXNwaW5uZXIgIj4KICAgICAgICA8c3BhbiBjbGFzcz0ieXQtc3Bpbm5lci1pbWcgIHl0LXNwcml0ZSIgdGl0bGU9IkxvYWRpbmcgaWNvbiI+PC9zcGFuPgoKICAgIDxzcGFuIGNsYXNzPSJ5dC1zcGlubmVyLW1lc3NhZ2UiPgogICAgICAgIFdvcmtpbmcuLi4KICAgIDwvc3Bhbj4KICA8L3A+CgogICAgICA8L2Rpdj4KICA8L2Rpdj4KCiAgICAgICAgICA8L2Rpdj4KICAgICAgICA8L2Rpdj4KICAgICAgICA8ZGl2IGNsYXNzPSJ5dC1kaWFsb2ctZm9jdXMtdHJhcCIgdGFiaW5kZXg9IjAiPjwvZGl2PgogICAgICA8L2Rpdj4KICAgIDwvZGl2PgogIDwvZGl2PgoKCjxkaXYgaWQ9ImhpZGRlbi1jb21wb25lbnQtdGVtcGxhdGUtd3JhcHBlciIgY2xhc3M9ImhpZCI+ICAgIDxkaXYgaWQ9InNoYXJlZC1hZGR0by13YXRjaC1sYXRlci1sb2dpbiIgY2xhc3M9ImhpZCI+CiAgICAgIDxhIGNsYXNzPSJzaWduLWluLWxpbmsiIGhyZWY9Imh0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbS9TZXJ2aWNlTG9naW4/aGw9ZW4mYW1wO3Bhc3NpdmU9dHJ1ZSZhbXA7c2VydmljZT15b3V0dWJlJmFtcDtjb250aW51ZT1odHRwcyUzQSUyRiUyRnd3dy55b3V0dWJlLmNvbSUyRnNpZ25pbiUzRmFjdGlvbl9oYW5kbGVfc2lnbmluJTNEdHJ1ZSUyNm5leHQlM0QlMjUyRnJlc3VsdHMlMjUzRnNlYXJjaF9xdWVyeSUyNTNEc3Ryb25nZXIlMjZhcHAlM0RkZXNrdG9wJTI2ZmVhdHVyZSUzRHBsYXlsaXN0JTI2aGwlM0RlbiZhbXA7dWlsZWw9MyI+U2lnbiBpbjwvYT4gdG8gYWRkIHRoaXMgdG8gV2F0Y2ggTGF0ZXIKCiAgICA8L2Rpdj4KPGRpdiBpZD0ieXQtdWl4LXZpZGVvYWN0aW9ubWVudS1tZW51IiBjbGFzcz0ieXQtdWktbWVudS1jb250ZW50Ij4gIDxkaXYgY2xhc3M9ImhpZGUtb24tY3JlYXRlLXBsLXBhbmVsIj4KICAgIDxoMz4KQWRkIHRvCiAgICA8L2gzPgogIDwvZGl2PgogIDxkaXYgY2xhc3M9ImFkZC10by13aWRnZXQiPgogICAgICA8cCBjbGFzcz0ieXQtc3Bpbm5lciAiPgogICAgICAgIDxzcGFuIGNsYXNzPSJ5dC1zcGlubmVyLWltZyAgeXQtc3ByaXRlIiB0aXRsZT0iTG9hZGluZyBpY29uIj48L3NwYW4+CgogICAgPHNwYW4gY2xhc3M9Inl0LXNwaW5uZXItbWVzc2FnZSI+CiAgICAgICAgTG9hZGluZyBwbGF5bGlzdHMuLi4KICAgIDwvc3Bhbj4KICA8L3A+CgogIDwvZGl2Pgo8L2Rpdj48L2Rpdj4gICAgPHNjcmlwdD52YXIgeXRzcGYgPSB5dHNwZiB8fCB7fTt5dHNwZi5lbmFibGVkID0gdHJ1ZTt5dHNwZi5jb25maWcgPSB7J3JlbG9hZC1pZGVudGlmaWVyJzogJ3NwZnJlbG9hZCd9O3l0c3BmLmNvbmZpZ1sncmVxdWVzdC1oZWFkZXJzJ10gPSB7J1gtWW91VHViZS1JZGVudGl0eS1Ub2tlbic6IG51bGx9O3l0c3BmLmNvbmZpZ1snZXhwZXJpbWVudGFsLXJlcXVlc3QtaGVhZGVycyddID0geXRzcGYuY29uZmlnWydyZXF1ZXN0LWhlYWRlcnMnXTt5dHNwZi5jb25maWdbJ2NhY2hlLW1heCddID0gNTA7eXRzcGYuY29uZmlnWyduYXZpZ2F0ZS1saW1pdCddID0gNTA7eXRzcGYuY29uZmlnWyduYXZpZ2F0ZS1saWZldGltZSddID0gNjQ4MDAwMDA7eXRzcGYuY29uZmlnWydhbmltYXRpb24tZHVyYXRpb24nXSA9IDA7PC9zY3JpcHQ+CiAgPHNjcmlwdCBzcmM9Ii95dHMvanNiaW4vc3BmLXZmbHotT2hQNC9zcGYuanMiIHR5cGU9InRleHQvamF2YXNjcmlwdCIgbmFtZT0ic3BmL3NwZiI+PC9zY3JpcHQ+CiAgPHNjcmlwdCBzcmM9Ii95dHMvanNiaW4vd3d3LWVuX1VTLXZmbHAwMl9FLS9iYXNlLmpzIiBuYW1lPSJ3d3cvYmFzZSI+PC9zY3JpcHQ+CjxzY3JpcHQ+c3BmLnNjcmlwdC5wYXRoKHsnd3d3Lyc6ICcveXRzL2pzYmluL3d3dy1lbl9VUy12ZmxwMDJfRS0vJ30pO3ZhciB5dGRlcG1hcCA9IHsid3d3L2Jhc2UiOiBudWxsLCAid3d3L2NvbW1vbiI6ICJ3d3cvYmFzZSIsICJ3d3cvYW5ndWxhcl9iYXNlIjogInd3dy9jb21tb24iLCAid3d3L2NoYW5uZWxzX2FjY291bnR1cGxvYWQiOiAid3d3L2NvbW1vbiIsICJ3d3cvY2hhbm5lbHMiOiAid3d3L2NvbW1vbiIsICJ3d3cvZGFzaGJvYXJkIjogInd3dy9jb21tb24iLCAid3d3L2Rvd25sb2FkcmVwb3J0cyI6ICJ3d3cvY29tbW9uIiwgInd3dy9leHBlcmltZW50cyI6ICJ3d3cvY29tbW9uIiwgInd3dy9mZWVkIjogInd3dy9jb21tb24iLCAid3d3L2luc3RhbnQiOiAid3d3L2NvbW1vbiIsICJ3d3cvbGVnb21hcCI6ICJ3d3cvY29tbW9uIiwgInd3dy9wcm9tb19qb2luX25ldHdvcmsiOiAid3d3L2NvbW1vbiIsICJ3d3cvcmVzdWx0c19oYXJsZW1zaGFrZSI6ICJ3d3cvY29tbW9uIiwgInd3dy9yZXN1bHRzIjogInd3dy9jb21tb24iLCAid3d3L3Jlc3VsdHNfc3RhcndhcnMiOiAid3d3L2NvbW1vbiIsICJ3d3cvc3Vic2NyaXB0aW9ubWFuYWdlciI6ICJ3d3cvY29tbW9uIiwgInd3dy91bmxpbWl0ZWQiOiAid3d3L2NvbW1vbiIsICJ3d3cvd2F0Y2giOiAid3d3L2NvbW1vbiIsICJ3d3cveXBjX2Jvb3RzdHJhcCI6ICJ3d3cvY29tbW9uIiwgInd3dy95cGNfY29yZSI6ICJ3d3cvY29tbW9uIiwgInd3dy9jaGFubmVsc19lZGl0IjogInd3dy9jaGFubmVscyIsICJ3d3cvbGl2ZV9kYXNoYm9hcmQiOiAid3d3L2FuZ3VsYXJfYmFzZSIsICJ3d3cvdmlkZW9tYW5hZ2VyIjogInd3dy9hbmd1bGFyX2Jhc2UiLCAid3d3L3dhdGNoX2F1dG9wbGF5cmVuZGVyZXIiOiAid3d3L3dhdGNoIiwgInd3dy93YXRjaF9lZGl0IjogInd3dy93YXRjaCIsICJ3d3cvd2F0Y2hfZWRpdG9yIjogInd3dy93YXRjaCIsICJ3d3cvd2F0Y2hfbGl2ZSI6ICJ3d3cvd2F0Y2giLCAid3d3L3dhdGNoX3Byb21vcyI6ICJ3d3cvd2F0Y2giLCAid3d3L3dhdGNoX3NwZWVkeWciOiAid3d3L3dhdGNoIiwgInd3dy93YXRjaF90cmFuc2NyaXB0IjogInd3dy93YXRjaCIsICJ3d3cvd2F0Y2hfdmlkZW9zaGVsZiI6ICJ3d3cvd2F0Y2giLCAid3d3L2N0X2FkdmFuY2Vkc2VhcmNoIjogInd3dy92aWRlb21hbmFnZXIiLCAid3d3L215X3ZpZGVvcyI6ICJ3d3cvdmlkZW9tYW5hZ2VyIn07c3BmLnNjcmlwdC5kZWNsYXJlKHl0ZGVwbWFwKTs8L3NjcmlwdD48c2NyaXB0PmlmICh3aW5kb3cueXRjc2kpIHt3aW5kb3cueXRjc2kudGljaygiamUiLCBudWxsLCAnJyk7fTwvc2NyaXB0PjxzY3JpcHQ+eXQuc2V0Q29uZmlnKHtJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfTkFNRTogMSxJTk5FUlRVQkVfQ09OVEVYVF9DTElFTlRfVkVSU0lPTjogIjEuMjAxNzA1MDMuMTU1NDAwNzA1LVJDOF9jYW5hcnlfbGl2ZSIsSU5ORVJUVUJFX0FQSV9LRVk6ICJBSXphU3lBT19GSjJTbHFVOFE0U1RFSExHQ2lsd19ZOV8xMXFjVzgiLElOTkVSVFVCRV9BUElfVkVSU0lPTjogInYxIixBUElBUllfSE9TVDogIiIsWEhSX0FQSUFSWV9IT1NUOiAieW91dHViZWkueW91dHViZS5jb20iLEdBUElfSElOVF9QQVJBTVM6ICJtO1wvX1wvc2NzXC9hYmMtc3RhdGljXC9fXC9qc1wvaz1nYXBpLmdhcGkuZW4uRFRQZUJCX1N2T0EuT1wvbT1fX2ZlYXR1cmVzX19cL3J0PWpcL2Q9MVwvcnM9QUhwT29vLUozSjB5cU5ETVBWcm1RVDZqLVNCRmZHeDhvQSIsQVBJQVJZX0hPU1RfRklSU1RQQVJUWTogIiIsJ1ZJU0lUT1JfREFUQSc6ICJDZ3RRUmpOVlpVWjVWakl0V1ElM0QlM0QiLCdHQVBJX0hPU1QnOiAiaHR0cHM6XC9cL2FwaXMuZ29vZ2xlLmNvbSIsJ0dBUElfTE9DQUxFJzogImVuX1VTIiwnSU5ORVJUVUJFX0NPTlRFWFRfSEwnOiAiZW4iLCdJTk5FUlRVQkVfQ09OVEVYVF9HTCc6ICJVUyIsJ1hIUl9BUElBUllfSE9TVCc6ICJ5b3V0dWJlaS55b3V0dWJlLmNvbSJ9KTt5dC5zZXRDb25maWcoeydST09UX1ZFX1RZUEUnOiA0NzI0fSk7eXQuc2V0Q29uZmlnKHsnRVZFTlRfSUQnOiAiaFJFU1dieWdEYzdBLXdYTG1KTG9BdyIsJ1BBR0VfTkFNRSc6ICJyZXN1bHRzIiwnTE9HR0VEX0lOJzogZmFsc2UsJ1NFU1NJT05fSU5ERVgnOiBudWxsLCdWQUxJRF9TRVNTSU9OX1RFTVBEQVRBX0RPTUFJTlMnOiBbInd3dy55b3V0dWJlLmNvbSIsImdhbWluZy55b3V0dWJlLmNvbSJdLCdQQVJFTlRfVFJBQ0tJTkdfUEFSQU1TJzogIiIsJ0ZPUk1BVFNfRklMRV9TSVpFX0pTJzogWyIlcyBCIiwiJXMgS0IiLCIlcyBNQiIsIiVzIEdCIiwiJXMgVEIiXSwnREVMRUdBVEVEX1NFU1NJT05fSUQnOiBudWxsLCdPTkVfUElDS19VUkwnOiAiIiwnVU5JVkVSU0FMX0hPVkVSQ0FSRFMnOiB0cnVlLCdHT09HTEVQTFVTX0hPU1QnOiAiaHR0cHM6XC9cL3BsdXMuZ29vZ2xlLmNvbSIsJ1BBR0VGUkFNRV9KUyc6ICJcL3l0c1wvanNiaW5cL3d3dy1wYWdlZnJhbWUtdmZsbXh6SURNXC93d3ctcGFnZWZyYW1lLmpzIiwnR0FQSV9MT0FERVJfVVJMJzogIlwveXRzXC9qc2Jpblwvd3d3LWdhcGktbG9hZGVyLXZmbGk3TmtKWVwvd3d3LWdhcGktbG9hZGVyLmpzIiwnSlNfQ09NTU9OX01PRFVMRSc6ICJcL3l0c1wvanNiaW5cL3d3dy1lbl9VUy12ZmxwMDJfRS1cL2NvbW1vbi5qcyIsJ1BBR0VfRlJBTUVfREVMQVlMT0FERURfQ1NTJzogIlwveXRzXC9jc3NiaW5cL3d3dy1wYWdlZnJhbWVkZWxheWxvYWRlZC12ZmxvOWRkRjIuY3NzIiwnRVhQRVJJTUVOVF9GTEFHUyc6IHsiYmxvY2tfc3BmX3NlYXJjaF9hZHNfaW1wcmVzc2lvbnMiOnRydWUsImFwcF9zZXR0aW5nc19zbmFwc2hvdF9taW5fdGltZV9iZXR3ZWVuX3NuYXBzaG90c19ob3VycyI6MjQsImF1dG9lc2NhcGVfdGVtcGRhdGFfdXJsIjp0cnVlLCJzZXJ2aWNlX3dvcmtlcl9wdXNoX2hvbWVfb25seSI6dHJ1ZSwic2FtZV9kb21haW5fc3RhdGljX3Jlc291cmNlc19kZXNrdG9wIjp0cnVlLCJjb25zZW50X3VybF9vdmVycmlkZSI6IiIsImVuYWJsZV9tb3JlX3JlbGF0ZWRfdmVfbG9nZ2luZyI6dHJ1ZSwid2F0Y2hfbmV4dF9wYXVzZV9hdXRvcGxheV9sYWN0X3NlYyI6MCwicGxheWVyX2ludGVyYWN0aW9uX2xvZ2dpbmciOnRydWUsIndlYl9sb2dnaW5nX21heF9iYXRjaCI6MjAsImF1dG9wbGF5X3BhdXNlX3NhbXBsaW5nX2ZyYWN0aW9uIjowLjAsInVzZV9wdXNoX2Zvcl9kZXNrdG9wX2xpdmVfY2hhdCI6dHJ1ZSwiZW5hYmxlX3lvdXR1YmVpX2lubmVydHViZSI6dHJ1ZSwieW91dHViZWlfZm9yX3dlYiI6dHJ1ZSwiY29sZF9sb2FkX25hdl9zdGFydF93ZWIiOnRydWUsImRlc2t0b3BfcHl2X29uX3dhdGNoX3ZpYV92YWxvciI6dHJ1ZSwicGxheWVyX3N3ZmNmZ19jbGVhbnVwIjp0cnVlLCJnZmVlZGJhY2tfZm9yX3NpZ25lZF9vdXRfdXNlcnNfZW5hYmxlZCI6dHJ1ZSwiZGVza3RvcF9weXZfb25fd2F0Y2hfbWlzc2luZ19wYXJhbXMiOnRydWUsIndlYl9nZWxfbGFjdCI6dHJ1ZSwiYXBwX3NldHRpbmdzX3NuYXBzaG90X2lzX2xvZ2dpbmdfZW5hYmxlZCI6dHJ1ZSwiY2xlYXJfd2ViX2ltcGxpY2l0X2NsaWNrdHJhY2tpbmciOnRydWUsImRlc2t0b3Bfbm90aWZpY2F0aW9uX3NldF90aXRsZV9iYXIiOnRydWUsImVuYWJsZV9zZXJ2ZXJfc2lkZV9zZWFyY2hfcHl2Ijp0cnVlLCJjaGF0X3Ntb290aGluZ19hbmltYXRpb25zIjo4NCwibG9nX3dpbmRvd19vbmVycm9yX2ZyYWN0aW9uIjowLjEsIndhcm1fbG9hZF9uYXZfc3RhcnRfd2ViIjp0cnVlLCJkZXNrdG9wX3B5dl9vbl93YXRjaF9vdmVycmlkZV9sYWN0Ijp0cnVlLCJzZXJ2aWNlX3dvcmtlcl9lbmFibGVkIjp0cnVlLCJzZXJ2aWNlX3dvcmtlcl9wdXNoX3Byb21wdF9jYXAiOjEsInNlcnZpY2Vfd29ya2VyX3B1c2hfZW5hYmxlZCI6dHJ1ZSwiY29tbWVudF9kZWVwX2xpbmsiOnRydWUsInNlcnZpY2Vfd29ya2VyX3Njb3BlIjoiXC8iLCJuYXZpZ2F0aW9uX29ubHlfY3NpX3Jlc2V0Ijp0cnVlfSwnR1VJREVfREVMQVlfTE9BRCc6IHRydWUsJ0dVSURFX0RFTEFZTE9BREVEX0NTUyc6ICJcL3l0c1wvY3NzYmluXC93d3ctZ3VpZGUtdmZsSkZGaG5xLmNzcyIsJ0hJR0hfQ09OVFJBU1RfTU9ERV9DU1MnOiAiXC95dHNcL2Nzc2Jpblwvd3d3LWhpZ2hjb250cmFzdG1vZGUtdmZsQ3oyRExlLmNzcyIsJ1BSRUZFVENIX0NTU19SRVNPVVJDRVMnIDogWyJcL3l0c1wvY3NzYmluXC9wbGF5ZXItdmZsZWNtVVhWXC93d3ctcGxheWVyLmNzcyJdLCdQUkVGRVRDSF9KU19SRVNPVVJDRVMnOiBbIlwveXRzXC9qc2JpblwvcGxheWVyLXZmbDNEaVZNSVwvZW5fVVNcL2Jhc2UuanMiXSwnUFJFRkVUQ0hfTElOS1MnOiBmYWxzZSwnUFJFRkVUQ0hfTElOS1NfTUFYJzogMSwnUFJFRkVUQ0hfQVVUT1BMQVknOiBmYWxzZSwnUFJFRkVUQ0hfQVVUT1BMQVlfVElNRSc6IDAsJ1BSRUZFVENIX0FVVE9OQVYnOiBmYWxzZSwnUFJFQlVGRkVSX01BWCc6IDEsJ1BSRUJVRkZFUl9MSU5LUyc6IGZhbHNlLCdQUkVCVUZGRVJfQVVUT1BMQVknOiBmYWxzZSwnUFJFQlVGRkVSX0FVVE9OQVYnOiBmYWxzZSwnV0FUQ0hfTEFURVJfQlVUVE9OJzogIlxuXG4gIFx1MDAzY2J1dHRvbiBjbGFzcz1cInl0LXVpeC1idXR0b24geXQtdWl4LWJ1dHRvbi1zaXplLXNtYWxsIHl0LXVpeC1idXR0b24tZGVmYXVsdCB5dC11aXgtYnV0dG9uLWVtcHR5IHl0LXVpeC1idXR0b24taGFzLWljb24gbm8taWNvbi1tYXJrdXAgYWRkdG8tYnV0dG9uIHZpZGVvLWFjdGlvbnMgc3BmLW5vbGluayBoaWRlLXVudGlsLWRlbGF5bG9hZGVkIGFkZHRvLXdhdGNoLWxhdGVyLWJ1dHRvbi1zaWduLWluIHl0LXVpeC10b29sdGlwXCIgdHlwZT1cImJ1dHRvblwiIG9uY2xpY2s9XCI7cmV0dXJuIGZhbHNlO1wiIHJvbGU9XCJidXR0b25cIiB0aXRsZT1cIldhdGNoIExhdGVyXCIgZGF0YS1idXR0b24tbWVudS1pZD1cInNoYXJlZC1hZGR0by13YXRjaC1sYXRlci1sb2dpblwiIGRhdGEtdmlkZW8taWRzPVwiX19WSURFT19JRF9fXCJcdTAwM2VcdTAwM2NzcGFuIGNsYXNzPVwieXQtdWl4LWJ1dHRvbi1hcnJvdyB5dC1zcHJpdGVcIlx1MDAzZVx1MDAzY1wvc3Bhblx1MDAzZVx1MDAzY1wvYnV0dG9uXHUwMDNlXG4iLCdXQVRDSF9RVUVVRV9CVVRUT04nOiAiICBcdTAwM2NidXR0b24gY2xhc3M9XCJ5dC11aXgtYnV0dG9uIHl0LXVpeC1idXR0b24tc2l6ZS1zbWFsbCB5dC11aXgtYnV0dG9uLWRlZmF1bHQgeXQtdWl4LWJ1dHRvbi1lbXB0eSB5dC11aXgtYnV0dG9uLWhhcy1pY29uIG5vLWljb24tbWFya3VwIGFkZHRvLWJ1dHRvbiBhZGR0by1xdWV1ZS1idXR0b24gdmlkZW8tYWN0aW9ucyBzcGYtbm9saW5rIGhpZGUtdW50aWwtZGVsYXlsb2FkZWQgYWRkdG8tdHYtcXVldWUtYnV0dG9uIHl0LXVpeC10b29sdGlwXCIgdHlwZT1cImJ1dHRvblwiIG9uY2xpY2s9XCI7cmV0dXJuIGZhbHNlO1wiIHRpdGxlPVwiUXVldWVcIiBkYXRhLXN0eWxlPVwidHYtcXVldWVcIiBkYXRhLXZpZGVvLWlkcz1cIl9fVklERU9fSURfX1wiXHUwMDNlXHUwMDNjXC9idXR0b25cdTAwM2VcbiIsJ1dBVENIX1FVRVVFX01FTlUnOiAiICBcdTAwM2NzcGFuIGNsYXNzPVwidGh1bWItbWVudSBkYXJrLW92ZXJmbG93LWFjdGlvbi1tZW51IHZpZGVvLWFjdGlvbnNcIlx1MDAzZVxuICAgIFx1MDAzY2J1dHRvbiBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIiBjbGFzcz1cInl0LXVpeC1idXR0b24tcmV2ZXJzZSBmbGlwIGFkZHRvLXdhdGNoLXF1ZXVlLW1lbnUgc3BmLW5vbGluayBoaWRlLXVudGlsLWRlbGF5bG9hZGVkIHl0LXVpeC1idXR0b24geXQtdWl4LWJ1dHRvbi1kYXJrLW92ZXJmbG93LWFjdGlvbi1tZW51IHl0LXVpeC1idXR0b24tc2l6ZS1kZWZhdWx0IHl0LXVpeC1idXR0b24taGFzLWljb24gbm8taWNvbi1tYXJrdXAgeXQtdWl4LWJ1dHRvbi1lbXB0eVwiIGFyaWEtaGFzcG9wdXA9XCJ0cnVlXCIgdHlwZT1cImJ1dHRvblwiIG9uY2xpY2s9XCI7cmV0dXJuIGZhbHNlO1wiIFx1MDAzZVx1MDAzY3NwYW4gY2xhc3M9XCJ5dC11aXgtYnV0dG9uLWFycm93IHl0LXNwcml0ZVwiXHUwMDNlXHUwMDNjXC9zcGFuXHUwMDNlXHUwMDNjdWwgY2xhc3M9XCJ3YXRjaC1xdWV1ZS10aHVtYi1tZW51IHl0LXVpeC1idXR0b24tbWVudSB5dC11aXgtYnV0dG9uLW1lbnUtZGFyay1vdmVyZmxvdy1hY3Rpb24tbWVudSBoaWRcIlx1MDAzZVx1MDAzY2xpIHJvbGU9XCJtZW51aXRlbVwiIGNsYXNzPVwib3ZlcmZsb3ctbWVudS1jaG9pY2UgYWRkdG8td2F0Y2gtcXVldWUtbWVudS1jaG9pY2UgYWRkdG8td2F0Y2gtcXVldWUtcGxheS1uZXh0IHl0LXVpeC1idXR0b24tbWVudS1pdGVtXCIgZGF0YS1hY3Rpb249XCJwbGF5LW5leHRcIiBvbmNsaWNrPVwiO3JldHVybiBmYWxzZTtcIiAgZGF0YS12aWRlby1pZHM9XCJfX1ZJREVPX0lEX19cIlx1MDAzZVx1MDAzY3NwYW4gY2xhc3M9XCJhZGR0by13YXRjaC1xdWV1ZS1tZW51LXRleHRcIlx1MDAzZVBsYXkgbmV4dFx1MDAzY1wvc3Bhblx1MDAzZVx1MDAzY1wvbGlcdTAwM2VcdTAwM2NsaSByb2xlPVwibWVudWl0ZW1cIiBjbGFzcz1cIm92ZXJmbG93LW1lbnUtY2hvaWNlIGFkZHRvLXdhdGNoLXF1ZXVlLW1lbnUtY2hvaWNlIGFkZHRvLXdhdGNoLXF1ZXVlLXBsYXktbm93IHl0LXVpeC1idXR0b24tbWVudS1pdGVtXCIgZGF0YS1hY3Rpb249XCJwbGF5LW5vd1wiIG9uY2xpY2s9XCI7cmV0dXJuIGZhbHNlO1wiICBkYXRhLXZpZGVvLWlkcz1cIl9fVklERU9fSURfX1wiXHUwMDNlXHUwMDNjc3BhbiBjbGFzcz1cImFkZHRvLXdhdGNoLXF1ZXVlLW1lbnUtdGV4dFwiXHUwMDNlUGxheSBub3dcdTAwM2NcL3NwYW5cdTAwM2VcdTAwM2NcL2xpXHUwMDNlXHUwMDNjXC91bFx1MDAzZVx1MDAzY1wvYnV0dG9uXHUwMDNlXG4gIFx1MDAzY1wvc3Bhblx1MDAzZVxuIiwnU0FGRVRZX01PREVfUEVORElORyc6IGZhbHNlLCdaV0lFQkFDS19QSU5HX1VSTFMnOiBbImh0dHBzOlwvXC93d3cuZ29vZ2xlLmNvbVwvcGFnZWFkXC9sdno/ZXZ0aWQ9QUNXVlV1WXBSZHpENi1KVFllYV9yUU5JZnNTbTRjMlExekVPWGJPTEZBWnpjekxRR3BIeklQOWVZc3hyMi1KMDhCa3hQWDV2bjE3N3IwUks3TWl5ZnVDbDdUbnR0QUxwZVFcdTAwMjZwZz1yZXN1bHRzXHUwMDI2cmVxX3RzPTE0OTQzNTYzNTdcdTAwMjZzaWdoPUFHd2M3MXZsSVN6U1dsc3BwVy1qMkstNEljRU9wVlZ0b0EiXSwnTE9DQUxfREFURV9USU1FX0NPTkZJRyc6IHsic2hvcnRXZWVrZGF5cyI6WyJTdW4iLCJNb24iLCJUdWUiLCJXZWQiLCJUaHUiLCJGcmkiLCJTYXQiXSwibW9udGhzIjpbIkphbnVhcnkiLCJGZWJydWFyeSIsIk1hcmNoIiwiQXByaWwiLCJNYXkiLCJKdW5lIiwiSnVseSIsIkF1Z3VzdCIsIlNlcHRlbWJlciIsIk9jdG9iZXIiLCJOb3ZlbWJlciIsIkRlY2VtYmVyIl0sImRhdGVGb3JtYXRzIjpbIk1NTU0gZCwgeXl5eSBoOm1tIGEiLCJNTU1NIGQsIHl5eXkiLCJNTU0gZCwgeXl5eSIsIk1NTSBkLCB5eXl5Il0sImZvcm1hdFNob3J0RGF0ZSI6Ik1NTSBkLCB5eXl5IiwiZm9ybWF0TG9uZ0RhdGUiOiJNTU1NIGQsIHl5eXkgaDptbSBhIiwiZm9ybWF0TG9uZ0RhdGVPbmx5IjoiTU1NTSBkLCB5eXl5Iiwid2Vla2VuZFJhbmdlIjpbNiw1XSwiYW1QbXMiOlsiQU0iLCJQTSJdLCJmaXJzdERheU9mV2VlayI6MCwid2Vla2RheXMiOlsiU3VuZGF5IiwiTW9uZGF5IiwiVHVlc2RheSIsIldlZG5lc2RheSIsIlRodXJzZGF5IiwiRnJpZGF5IiwiU2F0dXJkYXkiXSwiZmlyc3RXZWVrQ3V0b2ZmRGF5IjozLCJzaG9ydE1vbnRocyI6WyJKYW4iLCJGZWIiLCJNYXIiLCJBcHIiLCJNYXkiLCJKdW4iLCJKdWwiLCJBdWciLCJTZXAiLCJPY3QiLCJOb3YiLCJEZWMiXSwiZm9ybWF0V2Vla2RheVNob3J0VGltZSI6IkVFIGg6bW0gYSIsImZvcm1hdFNob3J0VGltZSI6Img6bW0gYSJ9LCdQQUdFX0NMJzogMTU1NDAwNzA1LCdQQUdFX0JVSUxEX0xBQkVMJzogInlvdXR1YmVfMjAxNzA1MDNfMF9SQzgiLCdWQVJJQU5UU19DSEVDS1NVTSc6ICI2MmNkMDRkZTRkMzg2NWVkNDNlNzdiNzYyOGQyOWY1NCIsJ0NMSUVOVF9QUk9UT0NPTCc6ICJIVFRQXC8xLjEiLCdDTElFTlRfVFJBTlNQT1JUJzogInRjcCIsJ01EWF9FTkFCTEVfQ0FTVFYyJzogdHJ1ZSwnTURYX0VOQUJMRV9RVUVVRSc6IHRydWUsJ0ZFRURCQUNLX0JVQ0tFVF9JRCc6ICJPdGhlciIsJ0ZFRURCQUNLX0xPQ0FMRV9MQU5HVUFHRSc6ICJlbiIsJ0ZFRURCQUNLX0xPQ0FMRV9FWFRSQVMnOiB7ImV4cGVyaW1lbnRzIjoiMjE1NjEwMDEsOTQwNzA2MCw5NDE1Mzk4LDk0MTY0NzUsOTQxOTk3OSw5NDIwMjg5LDk0MjI1OTYsOTQyMzU1NSw5NDMxMDEyLDk0MzI5MzksOTQzMzg3MCw5NDM0MDQ2LDk0MzQyODksOTQzNDk0OSw5NDM4MzA5LDk0MzkyOTQsOTQ0MDA1NCw5NDQxMTk0LDk0NDIzODcsOTQ0Mjc0Niw5NDQ0MTg5LDk0NDQ3NzEsOTQ0NTEzOSw5NDQ2MDU0LDk0NDYzNjQsOTQ0ODMwMiw5NDQ5MDcyLDk0NDkyNDMsOTQ1MTgxNCw5NDUxODIzLDk0NTI4MzMsOTQ1MzE2Nyw5NDUzODk3LDk0NTQzOTQsOTQ1NDY1Myw5NDU1MDMxLDk0NTY0NDUsOTQ1NjYyOCw5NDU2NjQwLDk0NTcxMTQsOTQ1NzE0MSw5NDU3MTY5LDk0NTc1NDEsOTQ1NzU5Miw5NDU3NTk1LDk0NTc1OTcsOTQ1ODI2NSw5NDU4NTc2LDk0NTkwNzUsOTQ1OTQ0NCw5NDU5NzkyLDk0NTk3OTgsOTQ2MDA4Nyw5NDYwMDk4LDk0NjAzNTAsOTQ2MDU1NCw5NDYwODI5LDk0NjA5NTksOTQ2MTEyNCw5NDYxNzc3LDk0NjIwMTgsOTQ2MjAzMiw5NDYyMTI3LDk0NjM0NjAsOTQ2MzU5NCw5NDYzNjE3LDk0NjM5MzYsOTQ2Mzk2Myw5NDYzOTY1LDk0NjQxODEsOTQ2NDIwNyw5NDY0NDQwLDk0NjQ4MjMsOTQ2NDg4Nyw5NDY0ODg5LDk0NjU1MTMsOTQ2NTY1Miw5NDY1NjY2LDk0NjU4MTMsOTQ2Njc5Myw5NDY2Nzk1LDk0NjY3OTcsOTQ2NjgzNSw5NDY3MDAxLDk0NjcyMTcsOTQ2NzQwMCw5NDY3NDI2LDk0Njc0NzIsOTQ2NzUwOCw5NDY3NTEwLDk0Njc1MTIsOTQ2NzY2Myw5NDY3NzAwLDk0Njc3OTUsOTQ2NzgwNiw5NDY3ODIwLDk0Njc4MjIsOTQ2Nzg5NSw5NDY4MTEwLDk0NjgxOTUsOTQ2ODIyOCw5NDY4Mjg1LDk0Njg1NTAsOTQ2ODgwNSw5NDY5MDQxLDk0NjkxOTIsOTQ2OTIyNCw5NDY5NjA5LDk0Njk2MTUsOTQ2OTczNCw5NDY5ODYyLDk0Njk4ODMsOTQ2OTg4Nyw5NDY5OTExLDk0NzAyOTksOTQ3MDMxOSw5NDcwNzkxLDk0NzA5MjQsOTQ3MTEyNiw5NDcxMjYzLDk0NzEzNzcsOTQ3MTQxMyw5NDcxNDgzLDk0NzE5NTUsOTQ3MjAxMCw5NDcyMTY5LDk0NzIxNzgsOTQ3MjQwMSw5NDcyNDUwLDk0NzI0ODUsOTQ3MjU2NCw5NDcyNjA5LDk0NzI3MTEsOTQ3Mjc2MCw5NDcyODY0LDk0NzMxOTgsOTQ3MzIwMiw5NDczMjg0LDk0NzMzNzQsOTQ3MzM4Myw5NDczMzk3LDk0NzM1MTQsOTQ3MzU3Niw5NDczNzE5LDk0NzM4OTgsOTQ3Mzk3Nyw5NDc0MDY0LDk0NzQyNTgsOTQ3NDU5Niw5NDc0NzY4LDk0NzQ4MTQiLCJhY2NlcHRfbGFuZ3VhZ2UiOiJlbi11cyxlbjtxPTAuNSIsImxvZ2dlZF9pbiI6ZmFsc2V9fSk7ICAgeXQuc2V0Q29uZmlnKHsKICAgICdHVUlERURfSEVMUF9MT0NBTEUnOiAiZW5fVVMiLAogICAgJ0dVSURFRF9IRUxQX0VOVklST05NRU5UJzogInByb2QiCiAgfSk7Cnl0LnNldENvbmZpZygnU1BGX1NFQVJDSF9CT1gnLCB0cnVlKTt5dC5zZXRNc2coeydBRERUT19DUkVBVEVfTkVXX1BMQVlMSVNUJzogIkNyZWF0ZSBuZXcgcGxheWxpc3RcbiIsJ0FERFRPX0NSRUFURV9QTEFZTElTVF9EWU5BTUlDX1RJVExFJzogIiAgJGR5bmFtaWNfdGl0bGVfcGxhY2Vob2xkZXIgKGNyZWF0ZSBuZXcpXG4iLCdBRERUT19XQVRDSF9MQVRFUic6ICJXYXRjaCBMYXRlciIsJ0FERFRPX1dBVENIX0xBVEVSX0FEREVEJzogIkFkZGVkIiwnQUREVE9fV0FUQ0hfTEFURVJfRVJST1InOiAiRXJyb3IiLCdBRERUT19XQVRDSF9RVUVVRSc6ICJXYXRjaCBRdWV1ZSIsJ0FERFRPX1dBVENIX1FVRVVFX0FEREVEJzogIkFkZGVkIiwnQUREVE9fV0FUQ0hfUVVFVUVfRVJST1InOiAiRXJyb3IiLCdBRERUT19UVl9RVUVVRSc6ICJRdWV1ZSIsJ0FEU19JTlNUUkVBTV9GSVJTVF9QTEFZJzogIkEgdmlkZW8gYWQgaXMgcGxheWluZy4iLCdBRFNfSU5TVFJFQU1fU0tJUFBBQkxFJzogIlZpZGVvIGFkIGNhbiBiZSBza2lwcGVkLiIsJ0FEU19PVkVSTEFZX0lNUFJFU1NJT04nOiAiQWQgZGlzcGxheWVkLiIsJ01BU1RIRUFEX05PVElGSUNBVElPTlNfTEFCRUwnOiB7Im90aGVyIjogIiMgdW5yZWFkIG5vdGlmaWNhdGlvbnMuIiwgImNhc2UwIjogIjAgdW5yZWFkIG5vdGlmaWNhdGlvbnMuIiwgImNhc2UxIjogIjEgdW5yZWFkIG5vdGlmaWNhdGlvbi4ifSwnTUFTVEhFQURfTk9USUZJQ0FUSU9OU19DT1VOVF85OVBMVVMnOiAiOTkrIiwnTURYX0FVVE9QTEFZX09GRic6ICdBdXRvcGxheSBpcyBvZmYnLCdNRFhfQVVUT1BMQVlfT04nOiAnQXV0b3BsYXkgaXMgb24nfSk7ICB5dC5zZXRDb25maWcoJ0ZFRURfUFJJVkFDWV9DU1NfVVJMJywgIlwveXRzXC9jc3NiaW5cL3d3dy1mZWVkcHJpdmFjeWRpYWxvZy12ZmxXaTI2dGguY3NzIik7CiAgeXQuc2V0Q29uZmlnKCdGRUVEX1BSSVZBQ1lfTElHSFRCT1hfRU5BQkxFRCcsIHRydWUpOwp5dC5zZXRDb25maWcoeydTQk9YX0pTX1VSTCc6ICJcL3l0c1wvanNiaW5cL3d3dy1zZWFyY2hib3gtbGVnYWN5LXZmbFJRMWZsWlwvd3d3LXNlYXJjaGJveC1sZWdhY3kuanMiLCdTQk9YX1NFVFRJTkdTJzogeyJJU19GVVNJT04iOmZhbHNlLCJIQVNfT05fU0NSRUVOX0tFWUJPQVJEIjpmYWxzZSwiUFNVR0dFU1RfVE9LRU4iOm51bGwsIlNFU1NJT05fSU5ERVgiOm51bGwsIlJFUVVFU1RfRE9NQUlOIjoidXMiLCJQUSI6InN0cm9uZ2VyIiwiU1VHR19FWFBfSUQiOiIiLCJSRVFVRVNUX0xBTkdVQUdFIjoiZW4ifSwnU0JPWF9MQUJFTFMnOiB7IlNVR0dFU1RJT05fRElTTUlTU0VEX0xBQkVMIjoiU3VnZ2VzdGlvbiBkaXNtaXNzZWQiLCJTVUdHRVNUSU9OX0RJU01JU1NfTEFCRUwiOiJSZW1vdmUifX0pOyAgeXQuc2V0Q29uZmlnKHsKICAgICdZUENfTE9BREVSX0pTJzogIlwveXRzXC9qc2Jpblwvd3d3LXlwYy12ZmxXYXJhUnRcL3d3dy15cGMuanMiLAogICAgJ1lQQ19MT0FERVJfQ1NTJzogIlwveXRzXC9jc3NiaW5cL3d3dy15cGMtdmZsLUFnWE83LmNzcyIsCiAgICAnWVBDX1NJR05JTl9VUkwnOiAiaHR0cHM6XC9cL2FjY291bnRzLmdvb2dsZS5jb21cL1NlcnZpY2VMb2dpbj9obD1lblx1MDAyNnBhc3NpdmU9dHJ1ZVx1MDAyNnNlcnZpY2U9eW91dHViZVx1MDAyNmNvbnRpbnVlPWh0dHAlM0ElMkYlMkZ3d3cueW91dHViZS5jb20lMkZzaWduaW4lM0ZhY3Rpb25faGFuZGxlX3NpZ25pbiUzRHRydWUlMjZuZXh0JTNEJTI1MkYlMjZhcHAlM0RkZXNrdG9wJTI2aGwlM0Rlblx1MDAyNnVpbGVsPTMiLAogICAgJ0RCTENMS19BRFZFUlRJU0VSX0lEJzogIjI1NDIxMTYiLAogICAgJ0RCTENMS19ZUENfQUNUSVZJVFlfR1JPVVAnOiAieW91dHU0NDQiLAogICAgJ1NVQlNDUklQVElPTl9VUkwnOiAiXC9zdWJzY3JpcHRpb25fYWpheCIsCiAgICAnWVBDX1NXSVRDSF9VUkwnOiAiXC9zaWduaW4/YWN0aW9uX2hhbmRsZV9zaWduaW49dHJ1ZVx1MDAyNnNraXBfaWRlbnRpdHlfcHJvbXB0PVRydWVcdTAwMjZuZXh0PSUyRlx1MDAyNmZlYXR1cmU9cHVyY2hhc2VzIiwKICAgICdZUENfR0JfTEFOR1VBR0UnOiAiZW5fVVMiLAogICAgJ1lQQ19NQl9VUkwnOiAiaHR0cHM6XC9cL3BheW1lbnRzLmdvb2dsZS5jb21cL3BheW1lbnRzXC92NFwvanNcL2ludGVncmF0b3IuanM/c3M9bWQiLAogICAgJ1lQQ19UUkFOU0FDVElPTl9VUkwnOiAiXC90cmFuc2FjdGlvbl9oYW5kbGVyIiwKICAgICdZUENfU1VCU0NSSVBUSU9OX1VSTCc6ICJcL3lwY19zdWJzY3JpcHRpb25fYWpheCIsCiAgICAnWVBDX1BPU1RfUFVSQ0hBU0VfVVJMJzogIlwveXBjX3Bvc3RfcHVyY2hhc2VfYWpheCIsCiAgICAnWVRSX0ZBTUlMWV9DUkVBVElPTl9VUkwnOiAiaHR0cHM6XC9cL2ZhbWlsaWVzLmdvb2dsZS5jb21cL3dlYmNyZWF0aW9uP3VzZWdhcGk9MSIsCiAgICAnWVRPX0dUTV9EQVRBJzogeydldmVudCc6ICdwdXJjaGFzZWQnLCAncHVyY2hhc2VTdGF0dXMnOiAnc3VjY2Vzcyd9LAogICAgJ1lUT19HVE1fMV9CVVRUT05fQ0xJQ0tfREFUQSc6IHsnZXZlbnQnOiAnbGFuZGluZ0J1dHRvbkNsaWNrJywgJ2J1dHRvblBvc2l0aW9uJzogJzEnfSwKICAgICdZVE9fR1RNXzJfQlVUVE9OX0NMSUNLX0RBVEEnOiB7J2V2ZW50JzogJ2xhbmRpbmdCdXR0b25DbGljaycsICdidXR0b25Qb3NpdGlvbic6ICcyJ30KICB9KTsKICB5dC5zZXRNc2coewogICAgJ1lQQ19PRkZFUl9PVkVSTEFZJzogIiAgXG4iLAogICAgJ1lQQ19VTlNVQlNDUklCRV9PVkVSTEFZJzogIiAgXG4iCiAgfSk7CiAgeXQuc2V0Q29uZmlnKCdHT09HTEVfSEVMUF9DT05URVhUJywgImRlZmF1bHQiKTsKeXRjc2kuaW5mbygnc3QnLCAxOSk7eXRjZmcuc2V0KHsiVElNSU5HX0FDVElPTiI6IiIsIkNTSV9WSUVXUE9SVCI6dHJ1ZSwiQ1NJX1NFUlZJQ0VfTkFNRSI6InlvdXR1YmUiLCJUSU1JTkdfSU5GTyI6eyJjIjoiV0VCIiwieXRfcmVmIjoiIiwiY3ZlciI6IjEuMjAxNzA1MDMuMTU1NDAwNzA1LVJDOF9jYW5hcnlfbGl2ZSIsInl0X2xpIjowfX0pOzsgIHl0LnNldENvbmZpZyh7CiAgICAgICdYU1JGX1RPS0VOJzogIlFVRkZMVWhxYm01alJtaHJMV1JhVjNsalNERXpkWFJ6WlRaeVZHVlBUMnR3WjN4QlEzSnRjMHRzYWxaVmFXeHZja3BPYW5CNVZUQnFNVEU0VGpZMGRIZHJWbFZVVGpKa2NVUXhPRVZhUVhsTFZqRktTSEZXTm1aWmNWbzJka1o2UVhsbFVuTTVVa001VVhCcVFUWlVTblJmTlU5c1Z6bEpkMkZaYm1Zd1pEVkJhWFpZZUZaamFteEdObUZHY0c5d2JVeE9NMUZzVDNReVVURm9SRkJhUVVzNGJsVmxRbFpEY1hsSWRUWTVXVGRxWkZBMFkzTkVUR1JsZVhOYWRVcDRRVTVVWkZFPSIsCiAgICAgICdYU1JGX0ZJRUxEX05BTUUnOiAic2Vzc2lvbl90b2tlbiIsCgogICAgICAnWFNSRl9SRURJUkVDVF9UT0tFTic6ICJqQkdEd2xadVFWYXVvODBIdUVwcjRqeVhKMWQ4TVRRNU5EUTBNamMxTjBBeE5EazBNelUyTXpVMyIgIH0pOwp5dC5zZXRDb25maWcoJ0lEX1RPS0VOJywgbnVsbCk7d2luZG93Lnl0Y2ZnLnNldCgnU0VSVklDRV9XT1JLRVJfS0lMTFNXSVRDSCcsIGZhbHNlKTsgIHl0LnNldENvbmZpZygnVEhVTUJfREVMQVlfTE9BRF9CVUZGRVInLCAwKTsKaWYgKHdpbmRvdy55dGNzaSkge3dpbmRvdy55dGNzaS50aWNrKCJqbCIsIG51bGwsICcnKTt9PC9zY3JpcHQ+CjwvYm9keT48L2h0bWw+CgoK
ERROR: query "stronger": Failed to parse JSON  (caused by ValueError('No JSON object could be decoded',)); 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 "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/common.py", line 676, in _parse_json
    return json.loads(json_string)
  File "/usr/lib/python2.7/json/__init__.py", line 339, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python2.7/json/decoder.py", line 364, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python2.7/json/decoder.py", line 382, in raw_decode
    raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
Traceback (most recent call last):
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 760, in extract_info
    ie_result = ie.extract(url)
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/common.py", line 433, in extract
    ie_result = self._real_extract(url)
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/common.py", line 2531, in _real_extract
    return self._get_n_results(query, 1)
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/youtube.py", line 2478, in _get_n_results
    query={'spf': 'navigate'})
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/common.py", line 670, in _download_json
    json_string, video_id, transform_source=transform_source, fatal=fatal)
  File "node_modules/youtube-dl/bin/youtube-dl/youtube_dl/extractor/common.py", line 680, in _parse_json
    raise ExtractorError(errmsg, cause=ve)
ExtractorError: query "stronger": Failed to parse JSON  (caused by ValueError('No JSON object could be decoded',)); 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
Copy link
Collaborator

@dstftw dstftw commented May 9, 2017

image

@Mochlate
Copy link
Author

@Mochlate Mochlate commented May 9, 2017

What?

@dstftw
Copy link
Collaborator

@dstftw dstftw commented May 9, 2017

Go to youtube.com from this IP and do what it ask you to do.

@ytdl-org ytdl-org locked and limited conversation to collaborators May 9, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants
You can’t perform that action at this time.