mountebank

mountebank - over the wire test doubles


the apothecary

Logs

Follow log

info: [mb:40206] mountebank v2.9.1 now taking orders - point your browser to http://localhost:40206/ for help
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v1.9.0
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/stubs
info: [mb:40206] GET /releases/v1.1.0
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/commandLine
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/injection
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/behaviors
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v2.3.2
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/commandLine
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /?c=utils&m=upload&formname=form2&editname=simg&uppath=static/upfile&pn=
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/overview
info: [mb:40206] GET /releases/v2.4.0
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v1.1.0
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/proxies
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/commandLine
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/proxies
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/predicates
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] HEAD /docs/mentalModel
info: [mb:40206] GET /docs/mentalModel
info: [mb:40206] GET /
info: [mb:40206] GET /docs/api/behaviors
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v1.3.0
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/xpath
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/behaviors
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] POST /Public/admin/webuploader/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /Public/admin/webuploader/server/preview.php
info: [mb:40206] POST /lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /public/static/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /static/admin/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /static/admin/hui/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /public/static/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /public/static/admin/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /static/admin/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /Public/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /static/admin/hui/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /public/static/admin/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /static/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /Public/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /admin/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /static/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /Public/admin/Widget/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /admin/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /Public/admin/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /Public/admin/Widget/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] POST /Public/admin/lib/webuploader/0.1.5/server/preview.php
error: [mb:40206] Invalid JSON: data:image/php;base64,PCFET0NUWVBFIGh0bWw+DQo8aHRtbCBsYW5nPSJlbiI+DQoNCjxoZWFkPg0KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ij4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiIGNvbnRlbnQ9IklFPWVkZ2UiPg0KICAgIDxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wIj4NCiAgICA8dGl0bGU+I0kgTE9WRSBZT1UgRVZFUkRBWSM8L3RpdGxlPg0KICAgIDxsaW5rIGhyZWY9Imh0dHBzOi8vY2RuLmpzZGVsaXZyLm5ldC9ucG0vYm9vdHN0cmFwQDUuMy4wLWFscGhhMS9kaXN0L2Nzcy9ib290c3RyYXAubWluLmNzcyIgcmVsPSJzdHlsZXNoZWV0Ig0KICAgICAgICBpbnRlZ3JpdHk9InNoYTM4NC1HTGhsVFE4aVJBQmRaTGw2TzNvVk1XU2t0UU9wNmI3SW4xWmwzL0pyNTliNkVHR29JMWFGa3c3Y21EQTZqNmdEIiBjcm9zc29yaWdpbj0iYW5vbnltb3VzIj4NCiAgICA8bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Imh0dHBzOi8vY2RuanMuY2xvdWRmbGFyZS5jb20vYWpheC9saWJzL2ZvbnQtYXdlc29tZS82LjMuMC9jc3MvYWxsLm1pbi5jc3MiDQogICAgICAgIGludGVncml0eT0ic2hhNTEyLVN6bHJ4V1VscGZ1elErcGNVQ29zeGNnbFFSTkFxL0RaalZzQzBsRTQweHNBRHNmZVFvRXlwRStlbndjT2lHamsvYlN1R0dLSEV5alNvUTF6VmlzYW5RPT0iDQogICAgICAgIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIHJlZmVycmVycG9saWN5PSJuby1yZWZlcnJlciIgLz4NCjwvaGVhZD4NCg0KPGJvZHk+DQoNCiAgICA8P3BocA0KDQoNCiAgICAvL2Z1bmN0aW9uDQogICAgZnVuY3Rpb24gZm9ybWF0U2l6ZVVuaXRzKCRieXRlcykNCiAgICB7DQogICAgICAgIGlmICgkYnl0ZXMgPj0gMTA3Mzc0MTgyNCkgew0KICAgICAgICAgICAgJGJ5dGVzID0gbnVtYmVyX2Zvcm1hdCgkYnl0ZXMgLyAxMDczNzQxODI0LCAyKSAuICcgR0InOw0KICAgICAgICB9IGVsc2VpZiAoJGJ5dGVzID49IDEwNDg1NzYpIHsNCiAgICAgICAgICAgICRieXRlcyA9IG51bWJlcl9mb3JtYXQoJGJ5dGVzIC8gMTA0ODU3NiwgMikgLiAnIE1CJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA+PSAxMDI0KSB7DQogICAgICAgICAgICAkYnl0ZXMgPSBudW1iZXJfZm9ybWF0KCRieXRlcyAvIDEwMjQsIDIpIC4gJyBLQic7DQogICAgICAgIH0gZWxzZWlmICgkYnl0ZXMgPiAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGVzJzsNCiAgICAgICAgfSBlbHNlaWYgKCRieXRlcyA9PSAxKSB7DQogICAgICAgICAgICAkYnl0ZXMgPSAkYnl0ZXMgLiAnIGJ5dGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGJ5dGVzID0gJzAgYnl0ZXMnOw0KICAgICAgICB9DQogICAgICAgIHJldHVybiAkYnl0ZXM7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUV4dGVuc2lvbigkZmlsZSkNCiAgICB7DQogICAgICAgIHJldHVybiBzdWJzdHIoc3RycmNocigkZmlsZSwgJy4nKSwgMSk7DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZmlsZUljb24oJGZpbGUpDQogICAgew0KICAgICAgICAkaW1ncyA9IGFycmF5KCJhcG5nIiwgImF2aWYiLCAiZ2lmIiwgImpwZyIsICJqcGVnIiwgImpmaWYiLCAicGpwZWciLCAicGpwIiwgInBuZyIsICJzdmciLCAid2VicCIpOw0KICAgICAgICAkYXVkaW8gPSBhcnJheSgid2F2IiwgIm00YSIsICJtNGIiLCAibXAzIiwgIm9nZyIsICJ3ZWJtIiwgIm1wYyIpOw0KICAgICAgICAkZXh0ID0gc3RydG9sb3dlcihmaWxlRXh0ZW5zaW9uKCRmaWxlKSk7DQogICAgICAgIGlmICgkZmlsZSA9PSAiZXJyb3JfbG9nIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc2hhcnAgZmEtc29saWQgZmEtYnVnIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZmlsZSA9PSAiLmh0YWNjZXNzIikgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtaGFtbWVyIj48L2k+ICc7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRleHQgPT0gImh0bWwiIHx8ICRleHQgPT0gImh0bSIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1odG1sNSI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicGhwIiB8fCAkZXh0ID09ICJwaHRtbCIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1waHAiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRpbWdzKSkgew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtcmVndWxhciBmYS1pbWFnZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKCRleHQgPT0gImNzcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1jc3MzIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJ0eHQiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1yZWd1bGFyIGZhLWZpbGUtbGluZXMiPjwvaT4gJzsNCiAgICAgICAgfSBlbHNlaWYgKGluX2FycmF5KCRleHQsICRhdWRpbykpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWR1b3RvbmUgZmEtZmlsZS1tdXNpYyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2VpZiAoJGV4dCA9PSAicHkiKSB7DQogICAgICAgICAgICByZXR1cm4gJzxpIGNsYXNzPSJmYS1icmFuZHMgZmEtcHl0aG9uIj48L2k+ICc7DQogICAgICAgIH0gZWxzZWlmICgkZXh0ID09ICJqcyIpIHsNCiAgICAgICAgICAgIHJldHVybiAnPGkgY2xhc3M9ImZhLWJyYW5kcyBmYS1qcyI+PC9pPiAnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgcmV0dXJuICc8aSBjbGFzcz0iZmEtc29saWQgZmEtZmlsZSI+PC9pPiAnOw0KICAgICAgICB9DQogICAgfQ0KDQogICAgZnVuY3Rpb24gZW5jb2RlUGF0aCgkcGF0aCkNCiAgICB7DQogICAgICAgICRhID0gYXJyYXkoIi8iLCAiXFwiLCAiLiIsICI6Iik7DQogICAgICAgICRiID0gYXJyYXkoIuCmlSIsICLgppYiLCAi4KaXIiwgIuCmmCIpOw0KICAgICAgICByZXR1cm4gc3RyX3JlcGxhY2UoJGEsICRiLCAkcGF0aCk7DQogICAgfQ0KICAgIGZ1bmN0aW9uIGRlY29kZVBhdGgoJHBhdGgpDQogICAgew0KICAgICAgICAkYSA9IGFycmF5KCIvIiwgIlxcIiwgIi4iLCAiOiIpOw0KICAgICAgICAkYiA9IGFycmF5KCLgppUiLCAi4KaWIiwgIuCmlyIsICLgppgiKTsNCiAgICAgICAgcmV0dXJuIHN0cl9yZXBsYWNlKCRiLCAkYSwgJHBhdGgpOw0KICAgIH0NCg0KDQoNCiAgICAkcm9vdF9wYXRoID0gX19ESVJfXzsNCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3AnXSkpIHsNCiAgICAgICAgaWYgKGVtcHR5KCRfR0VUWydwJ10pKSB7DQogICAgICAgICAgICAkcCA9ICRyb290X3BhdGg7DQogICAgICAgIH0gZWxzZWlmICghaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5cbmFsZXJ0KCdEaXJlY3RvcnkgaXMgQ29ycnVwdGVkIGFuZCBVbnJlYWRhYmxlLicpO1xud2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz8nKTtcbjwvc2NyaXB0PiIpOw0KICAgICAgICB9IGVsc2VpZiAoaXNfZGlyKGRlY29kZVBhdGgoJF9HRVRbJ3AnXSkpKSB7DQogICAgICAgICAgICAkcCA9IGRlY29kZVBhdGgoJF9HRVRbJ3AnXSk7DQogICAgICAgIH0NCiAgICB9IGVsc2VpZiAoaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgaWYgKCFpc19kaXIoZGVjb2RlUGF0aCgkX0dFVFsncSddKSkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcihkZWNvZGVQYXRoKCRfR0VUWydxJ10pKSkgew0KICAgICAgICAgICAgJHAgPSBkZWNvZGVQYXRoKCRfR0VUWydxJ10pOw0KICAgICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICAgJHAgPSAkcm9vdF9wYXRoOw0KICAgIH0NCiAgICBkZWZpbmUoIlBBVEgiLCAkcCk7DQoNCiAgICBlY2hvICgnDQo8bmF2IGNsYXNzPSJuYXZiYXIgbmF2YmFyLWxpZ2h0IiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2UzZjJmZDsiPg0KICA8ZGl2IGNsYXNzPSJuYXZiYXItYnJhbmQiPg0KICA8YSBocmVmPSI/Ij48aW1nIHNyYz0iaHR0cHM6Ly9naXRodWIuY29tL2ZsdWlkaWNvbi5wbmciIHdpZHRoPSIzMCIgaGVpZ2h0PSIzMCIgYWx0PSIiPjwvYT4NCicpOw0KDQogICAgJHBhdGggPSBzdHJfcmVwbGFjZSgnXFwnLCAnLycsIFBBVEgpOw0KICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCAkcGF0aCk7DQogICAgZm9yZWFjaCAoJHBhdGhzIGFzICRpZCA9PiAkZGlyX3BhcnQpIHsNCiAgICAgICAgaWYgKCRkaXJfcGFydCA9PSAnJyAmJiAkaWQgPT0gMCkgew0KICAgICAgICAgICAgJGEgPSB0cnVlOw0KICAgICAgICAgICAgZWNobyAiPGEgaHJlZj1cIj9wPS9cIj4vPC9hPiI7DQogICAgICAgICAgICBjb250aW51ZTsNCiAgICAgICAgfQ0KICAgICAgICBpZiAoJGRpcl9wYXJ0ID09ICcnKQ0KICAgICAgICAgICAgY29udGludWU7DQogICAgICAgIGVjaG8gIjxhIGhyZWY9Jz9wPSI7DQogICAgICAgIGZvciAoJGkgPSAwOyAkaSA8PSAkaWQ7ICRpKyspIHsNCiAgICAgICAgICAgIGVjaG8gc3RyX3JlcGxhY2UoIjoiLCAi4KaYIiwgJHBhdGhzWyRpXSk7DQogICAgICAgICAgICBpZiAoJGkgIT0gJGlkKQ0KICAgICAgICAgICAgICAgIGVjaG8gIuCmlSI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiJz4iIC4gJGRpcl9wYXJ0IC4gIjwvYT4vIjsNCiAgICB9DQogICAgZWNobyAoJw0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJmb3JtLWlubGluZSI+DQo8YSBocmVmPSI/dXBsb2FkJnE9JyAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICciPjxidXR0b24gY2xhc3M9ImJ0biBidG4tZGFyayIgdHlwZT0iYnV0dG9uIj5VcGxvYWQgRmlsZTwvYnV0dG9uPjwvYT4NCjxhIGhyZWY9Ij8iPjxidXR0b24gdHlwZT0iYnV0dG9uIiBjbGFzcz0iYnRuIGJ0bi1kYXJrIj5IT01FPC9idXR0b24+PC9hPiANCjwvZGl2Pg0KPC9uYXY+Jyk7DQoNCg0KICAgIGlmIChpc3NldCgkX0dFVFsncCddKSkgew0KDQogICAgICAgIC8vZmV0Y2ggZmlsZXMNCiAgICAgICAgaWYgKGlzX3JlYWRhYmxlKFBBVEgpKSB7DQogICAgICAgICAgICAkZmV0Y2hfb2JqID0gc2NhbmRpcihQQVRIKTsNCiAgICAgICAgICAgICRmb2xkZXJzID0gYXJyYXkoKTsNCiAgICAgICAgICAgICRmaWxlcyA9IGFycmF5KCk7DQogICAgICAgICAgICBmb3JlYWNoICgkZmV0Y2hfb2JqIGFzICRvYmopIHsNCiAgICAgICAgICAgICAgICBpZiAoJG9iaiA9PSAnLicgfHwgJG9iaiA9PSAnLi4nKSB7DQogICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOw0KICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgICAkbmV3X29iaiA9IFBBVEggLiAnLycgLiAkb2JqOw0KICAgICAgICAgICAgICAgIGlmIChpc19kaXIoJG5ld19vYmopKSB7DQogICAgICAgICAgICAgICAgICAgIGFycmF5X3B1c2goJGZvbGRlcnMsICRvYmopOw0KICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc19maWxlKCRuZXdfb2JqKSkgew0KICAgICAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCRmaWxlcywgJG9iaik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVjaG8gJw0KPHRhYmxlIGNsYXNzPSJ0YWJsZSB0YWJsZS1ob3ZlciI+DQogIDx0aGVhZD4NCiAgICA8dHI+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TmFtZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+U2l6ZTwvdGg+DQogICAgICA8dGggc2NvcGU9ImNvbCI+TW9kaWZpZWQ8L3RoPg0KICAgICAgPHRoIHNjb3BlPSJjb2wiPlBlcm1zPC90aD4NCiAgICAgIDx0aCBzY29wZT0iY29sIj5BY3Rpb25zPC90aD4NCiAgICA8L3RyPg0KICA8L3RoZWFkPg0KICA8dGJvZHk+DQonOw0KICAgICAgICBmb3JlYWNoICgkZm9sZGVycyBhcyAkZm9sZGVyKSB7DQogICAgICAgICAgICBlY2hvICIgICAgPHRyPg0KICAgICAgPHRkPjxpIGNsYXNzPSdmYS1zb2xpZCBmYS1mb2xkZXInPjwvaT4gPGEgaHJlZj0nP3A9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEggLiAiLyIgLiAkZm9sZGVyKSkgLiAiJz4iIC4gJGZvbGRlciAuICI8L2E+PC90ZD4NCiAgICAgIDx0ZD48Yj4tLS08L2I+PC90ZD4NCiAgICAgIDx0ZD4iLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmb2xkZXIpKSAuICI8L3RkPg0KICAgICAgPHRkPjAiIC4gc3Vic3RyKGRlY29jdChmaWxlcGVybXMoUEFUSCAuICIvIiAuICRmb2xkZXIpKSwgLTMpIC4gIjwvYT48L3RkPg0KICAgICAgPHRkPg0KICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZvbGRlciAuICInPjxpIGNsYXNzPSdmYS1zaGFycCBmYS1yZWd1bGFyIGZhLXBlbi10by1zcXVhcmUnPjwvaT48L2E+DQogICAgICA8YSB0aXRsZT0nRGVsZXRlJyBocmVmPSc/cT0iIC4gdXJsZW5jb2RlKGVuY29kZVBhdGgoUEFUSCkpIC4gIiZkPSIgLiAkZm9sZGVyIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgIDx0ZD4NCiAgICA8L3RyPg0KIjsNCiAgICAgICAgfQ0KICAgICAgICBmb3JlYWNoICgkZmlsZXMgYXMgJGZpbGUpIHsNCiAgICAgICAgICAgIGVjaG8gIiAgICA8dHI+DQogICAgICAgICAgPHRkPiIgLiBmaWxlSWNvbigkZmlsZSkgLiAkZmlsZSAuICI8L3RkPg0KICAgICAgICAgIDx0ZD4iIC4gZm9ybWF0U2l6ZVVuaXRzKGZpbGVzaXplKFBBVEggLiAiLyIgLiAkZmlsZSkpIC4gIjwvdGQ+DQogICAgICAgICAgPHRkPiIgLiBkYXRlKCJGIGQgWSBIOmk6cy4iLCBmaWxlbXRpbWUoUEFUSCAuICIvIiAuICRmaWxlKSkgLiAiPC90ZD4NCiAgICAgICAgICA8dGQ+MCIuIHN1YnN0cihkZWNvY3QoZmlsZXBlcm1zKFBBVEggLiAiLyIgLiRmaWxlKSksIC0zKSAuICI8L2E+PC90ZD4NCiAgICAgICAgICA8dGQ+DQogICAgICAgICAgPGEgdGl0bGU9J0VkaXQgRmlsZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImZT0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc29saWQgZmEtZmlsZS1wZW4nPjwvaT48L2E+DQogICAgICAgICAgPGEgdGl0bGU9J1JlbmFtZScgaHJlZj0nP3E9IiAuIHVybGVuY29kZShlbmNvZGVQYXRoKFBBVEgpKSAuICImcj0iIC4gJGZpbGUgLiAiJz48aSBjbGFzcz0nZmEtc2hhcnAgZmEtcmVndWxhciBmYS1wZW4tdG8tc3F1YXJlJz48L2k+PC9hPg0KICAgICAgICAgIDxhIHRpdGxlPSdEZWxldGUnIGhyZWY9Jz9xPSIgLiB1cmxlbmNvZGUoZW5jb2RlUGF0aChQQVRIKSkgLiAiJmQ9IiAuICRmaWxlIC4gIic+PGkgY2xhc3M9J2ZhIGZhLXRyYXNoJyBhcmlhLWhpZGRlbj0ndHJ1ZSc+PC9pPjwvYT4NCiAgICAgICAgICA8dGQ+DQogICAgPC90cj4NCiI7DQogICAgICAgIH0NCiAgICAgICAgZWNobyAiICA8L3Rib2R5Pg0KPC90YWJsZT4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgIGlmIChlbXB0eSgkX0dFVCkpIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PndpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0nKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfQ0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3VwbG9hZCddKSkgew0KICAgICAgICBlY2hvICcNCiAgICA8Zm9ybSBtZXRob2Q9InBvc3QiIGVuY3R5cGU9Im11bHRpcGFydC9mb3JtLWRhdGEiPg0KICAgICAgICBTZWxlY3QgZmlsZSB0byB1cGxvYWQ6DQogICAgICAgIDxpbnB1dCB0eXBlPSJmaWxlIiBuYW1lPSJmaWxlVG9VcGxvYWQiIGlkPSJmaWxlVG9VcGxvYWQiPg0KICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBjbGFzcz0iYnRuIGJ0bi1kYXJrIiB2YWx1ZT0iVXBsb2FkIiBuYW1lPSJ1cGxvYWQiPg0KICAgIDwvZm9ybT4nOw0KICAgIH0NCiAgICBpZiAoaXNzZXQoJF9HRVRbJ3InXSkpIHsNCiAgICAgICAgaWYgKCFlbXB0eSgkX0dFVFsnciddKSAmJiBpc3NldCgkX0dFVFsncSddKSkgew0KICAgICAgICAgICAgZWNobyAnDQogICAgPGZvcm0gbWV0aG9kPSJwb3N0Ij4NCiAgICAgICAgUmVuYW1lOg0KICAgICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ibmFtZSIgdmFsdWU9IicgLiAkX0dFVFsnciddIC4gJyI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJSZW5hbWUiIG5hbWU9InJlbmFtZSI+DQogICAgPC9mb3JtPic7DQogICAgICAgICAgICBpZiAoaXNzZXQoJF9QT1NUWydyZW5hbWUnXSkpIHsNCiAgICAgICAgICAgICAgICAkbmFtZSA9IFBBVEggLiAiLyIgLiAkX0dFVFsnciddOw0KICAgICAgICAgICAgICAgIGlmKHJlbmFtZSgkbmFtZSwgUEFUSCAuICIvIiAuICRfUE9TVFsnbmFtZSddKSkgew0KICAgICAgICAgICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnUmVuYW1lZC4nKTsgd2luZG93LmxvY2F0aW9uLnJlcGxhY2UoJz9wPSIgLiBlbmNvZGVQYXRoKFBBVEgpIC4gIicpOzwvc2NyaXB0PiIpOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgfQ0KDQogICAgaWYgKGlzc2V0KCRfR0VUWydlJ10pKSB7DQogICAgICAgIGlmICghZW1wdHkoJF9HRVRbJ2UnXSkgJiYgaXNzZXQoJF9HRVRbJ3EnXSkpIHsNCiAgICAgICAgICAgIGVjaG8gJw0KICAgIDxmb3JtIG1ldGhvZD0icG9zdCI+DQogICAgICAgIDx0ZXh0YXJlYSBzdHlsZT0iaGVpZ2h0OiA1MDBweDsNCiAgICAgICAgd2lkdGg6IDkwJTsiIG5hbWU9ImRhdGEiPicgLiBodG1sc3BlY2lhbGNoYXJzKGZpbGVfZ2V0X2NvbnRlbnRzKFBBVEguIi8iLiRfR0VUWydlJ10pKSAuICc8L3RleHRhcmVhPg0KICAgICAgICA8YnI+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIGNsYXNzPSJidG4gYnRuLWRhcmsiIHZhbHVlPSJTYXZlIiBuYW1lPSJlZGl0Ij4NCiAgICA8L2Zvcm0+JzsNCg0KICAgIGlmKGlzc2V0KCRfUE9TVFsnZWRpdCddKSkgew0KICAgICAgICAkZmlsZW5hbWUgPSBQQVRILiIvIi4kX0dFVFsnZSddOw0KICAgICAgICAkZGF0YSA9ICRfUE9TVFsnZGF0YSddOw0KICAgICAgICAkb3BlbiA9IGZvcGVuKCRmaWxlbmFtZSwidyIpOw0KICAgICAgICBpZihmd3JpdGUoJG9wZW4sJGRhdGEpKSB7DQogICAgICAgICAgICBlY2hvICgiPHNjcmlwdD5hbGVydCgnU2F2ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgIH0NCiAgICAgICAgZmNsb3NlKCRvcGVuKTsNCiAgICB9DQogICAgICAgIH0NCiAgICB9DQoNCiAgICBpZiAoaXNzZXQoJF9QT1NUWyJ1cGxvYWQiXSkpIHsNCiAgICAgICAgJHRhcmdldF9maWxlID0gUEFUSCAuICIvIiAuICRfRklMRVNbImZpbGVUb1VwbG9hZCJdWyJuYW1lIl07DQogICAgICAgIGlmIChtb3ZlX3VwbG9hZGVkX2ZpbGUoJF9GSUxFU1siZmlsZVRvVXBsb2FkIl1bInRtcF9uYW1lIl0sICR0YXJnZXRfZmlsZSkpIHsNCiAgICAgICAgICAgIGVjaG8gIjxwPiIuaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0ZJTEVTWyJmaWxlVG9VcGxvYWQiXVsibmFtZSJdKSkgLiAiIGhhcyBiZWVuIHVwbG9hZGVkLjwvcD4iOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgZWNobyAiPHA+U29ycnksIHRoZXJlIHdhcyBhbiBlcnJvciB1cGxvYWRpbmcgeW91ciBmaWxlLjwvcD4iOw0KICAgICAgICB9DQoNCiAgICB9DQogICAgaWYgKGlzc2V0KCRfR0VUWydkJ10pICYmIGlzc2V0KCRfR0VUWydxJ10pKSB7DQogICAgICAgICRuYW1lID0gUEFUSCAuICIvIiAuICRfR0VUWydkJ107DQogICAgICAgIGlmIChpc19maWxlKCRuYW1lKSkgew0KICAgICAgICAgICAgaWYodW5saW5rKCRuYW1lKSkgew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdGaWxlIHJlbW92ZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ1NvbWUgZXJyb3Igb2NjdXJyZWQuJyk7IHdpbmRvdy5sb2NhdGlvbi5yZXBsYWNlKCc/cD0iIC4gZW5jb2RlUGF0aChQQVRIKSAuICInKTs8L3NjcmlwdD4iKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSBlbHNlaWYgKGlzX2RpcigkbmFtZSkpIHsNCiAgICAgICAgICAgIGlmKHJtZGlyKCRuYW1lKSA9PSB0cnVlKSB7DQogICAgICAgICAgICAgICAgZWNobyAoIjxzY3JpcHQ+YWxlcnQoJ0RpcmVjdG9yeSByZW1vdmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgIGVjaG8gKCI8c2NyaXB0PmFsZXJ0KCdTb21lIGVycm9yIG9jY3VycmVkLicpOyB3aW5kb3cubG9jYXRpb24ucmVwbGFjZSgnP3A9IiAuIGVuY29kZVBhdGgoUEFUSCkgLiAiJyk7PC9zY3JpcHQ+Iik7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgPz4NCg0KICAgIDxzY3JpcHQgc3JjPSJodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL2Jvb3RzdHJhcEA1LjMuMC1hbHBoYTEvZGlzdC9qcy9ib290c3RyYXAuYnVuZGxlLm1pbi5qcyINCiAgICAgICAgaW50ZWdyaXR5PSJzaGEzODQtdzc2QXFQZkRrTUJEWG8zMGpTMVNnZXo2cHIzeDVNbFExWkFHQytudVpCK0VZZGdSWmdpd3hoVEJUa0Y3Q1h2TiINCiAgICAgICAgY3Jvc3NvcmlnaW49ImFub255bW91cyI+PC9zY3JpcHQ+DQo8L2JvZHk+DQoNCjwvaHRtbD4=
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/protocols/tcp
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v2.9.0
info: [mb:40206] GET /docs/mentalModel
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v1.2.103
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v1.4.3
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /feed
info: [mb:40206] GET /faqs
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/overview
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v1.11.0
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /
info: [mb:40206] GET /releases/v1.7.2
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/behaviors
info: [mb:40206] GET /feed
info: [mb:40206] GET /docs/api/contracts?type=config
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /xmlrpc.php
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /xmlrpc.php
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/clientLibraries
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v1.4.1
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/errors
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /docs/api/contracts
info: [mb:40206] GET /docs/api/stubs
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /
info: [mb:40206] GET /
info: [mb:40206] GET /feed
info: [mb:40206] GET /
info: [mb:40206] GET /docs/api/contracts?type=imposter
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /license
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/gettingStarted
info: [mb:40206] GET /releases/v2.8.2
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /xmlrpc.php
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /xmlrpc.php
info: [mb:40206] GET /
info: [mb:40206] GET /docs/gettingStarted
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v2.2.0
info: [mb:40206] GET /
info: [mb:40206] GET /.env
info: [mb:40206] POST /
error: [mb:40206] Invalid JSON: 0x%5B%5D=androxgh0st
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /.env
info: [mb:40206] POST /
error: [mb:40206] Invalid JSON: 0x%5B%5D=androxgh0st
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/predicates
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /.env
info: [mb:40206] POST /
error: [mb:40206] Invalid JSON: 0x%5B%5D=androxgh0st
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /.env
info: [mb:40206] POST /
error: [mb:40206] Invalid JSON: 0x%5B%5D=androxgh0st
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v2.9.1
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v1.3.1
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET //_profiler/empty/search/results
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /
info: [mb:40206] GET //_profiler/empty/search/results
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET //_profiler/empty/search/results
info: [mb:40206] GET /
info: [mb:40206] GET //_profiler/empty/search/results
info: [mb:40206] GET /metrics
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/contracts?type=stubs
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /releases
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/proxies
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v2.5.0
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/contracts?type=addStub
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /license
info: [mb:40206] GET /
info: [mb:40206] GET /feed
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /releases
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /docs/commandLine
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /adadaddadad
info: [mb:40206] GET /feed
info: [mb:40206] GET /
info: [mb:40206] GET //_profiler/empty/search/results
info: [mb:40206] GET /docs/api/json
info: [mb:40206] HEAD /docs/api/proxies
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /metrics
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /support
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/protocols/smtp
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/mentalModel
info: [mb:40206] GET /
info: [mb:40206] GET /docs/api/predicates
info: [mb:40206] GET /
info: [mb:40206] GET /data/admin/allowurl.txt
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] HEAD /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v2.2.1
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /xmlrpc.php
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /xmlrpc.php
info: [mb:40206] GET /feed
info: [mb:40206] GET /docs/api/overview
info: [mb:40206] GET /sitemap
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/mocks
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/protocols/http
info: [mb:40206] GET /feed
info: [mb:40206] GET /docs/security
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /docs/protocols/smtp
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /
info: [mb:40206] GET /feed
info: [mb:40206] GET /releases/v2.7.0
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] HEAD /
info: [mb:40206] GET /releases/v1.5.1
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /
info: [mb:40206] GET /docs/api/overview
info: [mb:40206] GET /feed
info: [mb:40206] GET /
info: [mb:40206] GET /config
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/xpath
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/contracts?type=logs
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /releases/v2.3.3
info: [mb:40206] HEAD /robots.txt
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /releases/v1.9.0
info: [mb:40206] GET /feed
info: [mb:40206] HEAD /
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /docs/api/predicates
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/proxies
info: [mb:40206] GET /docs/protocols/smtp
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/protocols/custom
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /docs/api/errors
info: [mb:40206] GET /
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /xmlrpc.php
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /xmlrpc.php
info: [mb:40206] GET /docs/api/predicates
info: [mb:40206] GET /docs/api/stubs
info: [mb:40206] GET /docs/api/overview
info: [mb:40206] GET /docs/api/jsonpath
info: [mb:40206] GET /docs/api/xpath
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] HEAD /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/overview
info: [mb:40206] GET /releases/v1.3.1
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /docs/api/json
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v1.14.0
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /
info: [mb:40206] GET /feed
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /xmlrpc.php
info: [mb:40206] GET /wp-login.php
info: [mb:40206] GET /xmlrpc.php
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /support
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/protocols/https
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] HEAD /docs
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /docs/clientLibraries
info: [mb:40206] GET /sitemap.xml
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v1.4.1
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/faults
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /robots.txt
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /docs/api/faults
info: [mb:40206] GET /docs/api/faults
info: [mb:40206] HEAD /docs/api/faults
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /releases/v1.4.0
info: [mb:40206] HEAD /docs/api/faults
info: [mb:40206] HEAD /docs/api/faults
info: [mb:40206] GET /images/book.jpg
info: [mb:40206] GET /feed