--- http_interactions: - request: method: get uri: http://vk.com/video39576223_108370515 body: encoding: US-ASCII string: '' headers: User-Agent: - VideoInfo/2.0.0 Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - '*/*' response: status: code: 200 message: OK headers: Server: - nginx/1.2.4 Date: - Fri, 25 Oct 2013 20:34:00 GMT Content-Type: - text/html; charset=windows-1251 Content-Length: - '13002' Connection: - keep-alive X-Powered-By: - PHP/3.2914 Set-Cookie: - remixlang=3; expires=Tue, 21-Oct-2014 20:33:48 GMT; path=/; domain=.vk.com Pragma: - no-cache Cache-Control: - no-store body: encoding: ASCII-8BIT string: !binary |- PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAg U3RyaWN0Ly9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQv eGh0bWwxLXN0cmljdC5kdGQiPgo8aHRtbCB4bWxucz0iaHR0cDovL3d3dy53 My5vcmcvMTk5OS94aHRtbCIgeG1sbnM6b2c9Imh0dHA6Ly9vZ3AubWUvbnMj IiB4bWw6bGFuZz0iZW4iIGxhbmc9ImVuIj4KPGhlYWQ+CjxtZXRhIGh0dHAt ZXF1aXY9IlgtVUEtQ29tcGF0aWJsZSIgY29udGVudD0iSUU9ZWRnZSIgLz4K PGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSIvaW1hZ2VzL2Zhdmlj b25fdmsuaWNvIiAvPgoKPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBl IiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9d2luZG93cy0xMjUxIiAv Pgo8bWV0YSBuYW1lPSJkZXNjcmlwdGlvbiIgY29udGVudD0i/fLuIMLH0NvC IMzOx8PAJiMzMzsmIzMzOyYjMzM7IM/w7vHy7iDu8uLg6yDh4Pjq6C4uLiIg Lz4KCjx0aXRsZT7fIPPy7vfq4CkpKSkpIHwgVks8L3RpdGxlPgoKPG5vc2Ny aXB0PjxtZXRhIGh0dHAtZXF1aXY9InJlZnJlc2giIGNvbnRlbnQ9IjA7IFVS TD0vYmFkYnJvd3Nlci5waHAiPjwvbm9zY3JpcHQ+Cgo8c2NyaXB0IHR5cGU9 InRleHQvamF2YXNjcmlwdCI+CnZhciB2ayA9IHsKICBhZHNfcm90YXRlX2lu dGVydmFsOiAxMjAwMDAsCiAgYWw6IHBhcnNlSW50KCc0JykgfHwgNCwKICBp ZDogMCwKICBpbnRuYXQ6ICcxJyA/IHRydWUgOiBmYWxzZSwKICBob3N0OiAn dmsuY29tJywKICBsYW5nOiAzLAogIHJ0bDogcGFyc2VJbnQoJycpIHx8IDAs CiAgdmVyc2lvbjogMTQxNTksCiAgc3REb21haW5zOiAzLAogIHplcm86IGZh bHNlLAogIGNvbnRsZW46IDE2MDc0LAogIGxvZ2luc2NoZW1lOiAnaHR0cHMn LAogIGlwX2g6ICdjMzk5OTZhMzA1NGUxMDFmZTUnLAogIHZjX2g6ICc2ZmJl MmVkZGMxMThkNzEwY2NiMjQwODI4MzZjNTIxYicsCiAgbmF2UHJlZml4OiAn LycsCiAgZHQ6IHBhcnNlSW50KCcwJykgfHwgMCwKICBmczogcGFyc2VJbnQo JzExJykgfHwgMTEsCiAgdHM6IDEzODI3MzMyNDAsCiAgcGQ6IDAsCiAgcGFk czogMSwKICB0aW1lOiBbMjAxMywgMTAsIDI2LCAwLCAzNCwgMF0KfQoKd2lu ZG93LmxvY0RvbWFpbiA9IHZrLmhvc3QubWF0Y2goL1thLXpBLVpdK1wuW2Et ekEtWl0rXC4/JC8pWzBdOwp2YXIgX3VhID0gbmF2aWdhdG9yLnVzZXJBZ2Vu dC50b0xvd2VyQ2FzZSgpOwppZiAoL29wZXJhL2kudGVzdChfdWEpIHx8ICEv bXNpZSA2L2kudGVzdChfdWEpIHx8IGRvY3VtZW50LmRvbWFpbiAhPSBsb2NE b21haW4pIGRvY3VtZW50LmRvbWFpbiA9IGxvY0RvbWFpbjsKdmFyIF9fX2h0 ZXN0ID0gKGxvY2F0aW9uLnRvU3RyaW5nKCkubWF0Y2goLyMoLiopLykgfHwg e30pWzFdIHx8ICcnLCBfX190bzsKaWYgKHZrLmFsICE9IDEgJiYgX19faHRl c3QubGVuZ3RoICYmIF9fX2h0ZXN0LnN1YnN0cigwLCAxKSA9PSB2ay5uYXZQ cmVmaXgpIHsKICBpZiAodmsuYWwgIT0gMyB8fCB2ay5uYXZQcmVmaXggIT0g JyEnKSB7CiAgICBfX190byA9IF9fX2h0ZXN0LnJlcGxhY2UoL14oXC98ISkv LCAnJyk7CiAgICBpZiAoX19fdG8ubWF0Y2goL14oW15cP10qXC5waHB8bG9n aW4pKFteYS16MC05XC5dfCQpLykpIF9fX3RvID0gJyc7CiAgICBsb2NhdGlv bi5yZXBsYWNlKGxvY2F0aW9uLnByb3RvY29sICsgJy8vJyArIGxvY2F0aW9u Lmhvc3QgKyAnLycgKyBfX190byk7CiAgfQp9Cgp2YXIgU3RhdGljRmlsZXMg PSB7CiAgJ2NvbW1vbi5qcycgOiB7djogMTA5Nn0sCiAgJ2NvbW1vbi5jc3Mn OiB7djogNDI3fSwKICAnaWU2LmNzcycgICA6IHt2OiAyNn0sCiAgJ2llNy5j c3MnICAgOiB7djogMTh9CiAgLCdsYW5nM18wLmpzJzp7djozMzUwfSwndmlk ZW8uY3NzJzp7djoxMDl9LCd2aWRlby5qcyc6e3Y6MTI3fSwnaW5kZXhlci5q cyc6e3Y6MTl9LCd1aV9jb250cm9scy5qcyc6e3Y6MTQ3fSwndWlfY29udHJv bHMuY3NzJzp7djo0N30sJ3ZpZGVvdmlldy5qcyc6e3Y6MTk0fSwndmlkZW92 aWV3LmNzcyc6e3Y6MTE3fSwncGFnZS5jc3MnOnt2OjYzMH0sJ3BhZ2UuanMn Ont2Ojc5MX0KfQo8L3NjcmlwdD4KCjxsaW5rIHJlbD0ic3R5bGVzaGVldCIg dHlwZT0idGV4dC9jc3MiIGhyZWY9Imh0dHA6Ly9zdDAudmsubWUvY3NzL2Fs L2NvbW1vbi5jc3M/NDI3IiAvPgo8IS0tW2lmIGx0ZSBJRSA2XT48c3R5bGUg dHlwZT0idGV4dC9jc3MiIG1lZGlhPSJzY3JlZW4iPi8qIDwhW0NEQVRBWyAq LyBAaW1wb3J0IHVybChodHRwOi8vc3QwLnZrLm1lL2Nzcy9hbC9pZTYuY3Nz PzI2KTsgLyogXV0+ICovPC9zdHlsZT48IVtlbmRpZl0tLT4KPCEtLVtpZiBJ RSA3XT48c3R5bGUgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJzY3JlZW4iPi8q IDwhW0NEQVRBWyAqLyBAaW1wb3J0IHVybChodHRwOi8vc3QwLnZrLm1lL2Nz cy9hbC9pZTcuY3NzPzE4KTsgLyogXV0+ICovPC9zdHlsZT48IVtlbmRpZl0t LT4KPGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVzaGVldCIgaHJl Zj0iaHR0cDovL3N0MC52ay5tZS9jc3MvYWwvdmlkZW8uY3NzPzEwOSI+PC9s aW5rPjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQiIGhy ZWY9Imh0dHA6Ly9zdDAudmsubWUvY3NzL3VpX2NvbnRyb2xzLmNzcz80NyI+ PC9saW5rPjxsaW5rIHR5cGU9InRleHQvY3NzIiByZWw9InN0eWxlc2hlZXQi IGhyZWY9Imh0dHA6Ly9zdDAudmsubWUvY3NzL2FsL3ZpZGVvdmlldy5jc3M/ MTE3Ij48L2xpbms+PGxpbmsgdHlwZT0idGV4dC9jc3MiIHJlbD0ic3R5bGVz aGVldCIgaHJlZj0iaHR0cDovL3N0MC52ay5tZS9jc3MvYWwvcGFnZS5jc3M/ NjMwIj48L2xpbms+CjxtZXRhIHByb3BlcnR5PSJvZzp0aXRsZSIgY29udGVu dD0i3yDz8u736uApKSkpKSIgLz4KPG1ldGEgcHJvcGVydHk9Im9nOmRlc2Ny aXB0aW9uIiBjb250ZW50PSL98u4gwsfQ28IgzM7Hw8AmIzMzOyYjMzM7JiMz Mzsgz/Du8fLuIO7y4uDrIOHg+OroLi4uIiAvPgo8bWV0YSBwcm9wZXJ0eT0i b2c6dHlwZSIgY29udGVudD0idmlkZW8iPgo8bWV0YSBwcm9wZXJ0eT0ib2c6 dXJsIiBjb250ZW50PSJodHRwOi8vdmsuY29tL3ZpZGVvMzk1NzYyMjNfMTA4 MzcwNTE1IiAvPgo8bWV0YSBwcm9wZXJ0eT0ib2c6c2l0ZV9uYW1lIiBjb250 ZW50PSJWSyIgLz4KPG1ldGEgcHJvcGVydHk9Im9nOmltYWdlIiBjb250ZW50 PSJodHRwOi8vdmlkZW80MzMudmthZHJlLnJ1L2Fzc2V0cy90aHVtYm5haWxz Lzg4NjE1Y2E5ODExOTY5MDMuMzIwLnZrLmpwZyIgLz4KPG1ldGEgcHJvcGVy dHk9Im9nOnZpZGVvOmR1cmF0aW9uIiBjb250ZW50PSIxODMiIC8+Cgo8bWV0 YSBwcm9wZXJ0eT0ib2c6dmlkZW8iIGNvbnRlbnQ9Imh0dHA6Ly92ay5jb20v dmlkZW8/YWN0PWdldF9zd2Ymb2lkPTM5NTc2MjIzJnZpZD0xMDgzNzA1MTUm ZW1iZWRfaGFzaD0xNTE4NGRiZDA4NWM0N2FmIiAvPgo8bWV0YSBwcm9wZXJ0 eT0ib2c6dmlkZW86dHlwZSIgY29udGVudD0iYXBwbGljYXRpb24veC1zaG9j a3dhdmUtZmxhc2giIC8+CjxtZXRhIHByb3BlcnR5PSJvZzp2aWRlbzp3aWR0 aCIgY29udGVudD0iNzIwIiAvPgo8bWV0YSBwcm9wZXJ0eT0ib2c6dmlkZW86 aGVpZ2h0IiBjb250ZW50PSI0MTAiIC8+CjxzY3JpcHQgdHlwZT0idGV4dC9q YXZhc2NyaXB0IiBzcmM9Ii9qcy9sb2FkZXJfbmF2MTQxNTlfMy5qcyI+PC9z Y3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0 cDovL3N0My52ay5tZS9qcy9hbC9jb21tb24uanM/MTA5Nl8zNCI+PC9zY3Jp cHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2pzL2xh bmczXzAuanM/MzM1MCI+PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2ph dmFzY3JpcHQiIHNyYz0iaHR0cDovL3N0My52ay5tZS9qcy9hbC92aWRlby5q cz8xMjciPjwvc2NyaXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0 IiBzcmM9Imh0dHA6Ly9zdDMudmsubWUvanMvYWwvaW5kZXhlci5qcz8xOSI+ PC9zY3JpcHQ+PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0i aHR0cDovL3N0Mi52ay5tZS9qcy9saWIvdWlfY29udHJvbHMuanM/MTQ3Ij48 L3NjcmlwdD48c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCIgc3JjPSJo dHRwOi8vc3QzLnZrLm1lL2pzL2FsL3ZpZGVvdmlldy5qcz8xOTQiPjwvc2Ny aXB0PjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0IiBzcmM9Imh0dHA6 Ly9zdDIudmsubWUvanMvYWwvcGFnZS5qcz83OTEiPjwvc2NyaXB0PgoKPC9o ZWFkPgoKPGJvZHkgb25yZXNpemU9Im9uQm9keVJlc2l6ZSgpIiBjbGFzcz0i aXNfcnRsIGZvbnRfZGVmYXVsdCBwYWRzICI+CiAgPGRpdiBpZD0ic3lzdGVt X21zZyIgY2xhc3M9ImZpeGVkIj48L2Rpdj4KICA8ZGl2IGlkPSJ1dGlscyI+ PC9kaXY+CgogIDxkaXYgaWQ9ImxheWVyX2JnIiBjbGFzcz0iZml4ZWQiPjwv ZGl2PjxkaXYgaWQ9ImxheWVyX3dyYXAiIGNsYXNzPSJzY3JvbGxfZml4X3dy YXAgZml4ZWQiPjxkaXYgaWQ9ImxheWVyIj48L2Rpdj48L2Rpdj4KICA8ZGl2 IGlkPSJib3hfbGF5ZXJfYmciIGNsYXNzPSJmaXhlZCI+PC9kaXY+PGRpdiBp ZD0iYm94X2xheWVyX3dyYXAiIGNsYXNzPSJzY3JvbGxfZml4X3dyYXAgZml4 ZWQiPjxkaXYgaWQ9ImJveF9sYXllciI+PGRpdiBpZD0iYm94X2xvYWRlciI+ PGRpdiBjbGFzcz0ibG9hZGVyIj48L2Rpdj48ZGl2IGNsYXNzPSJiYWNrIj48 L2Rpdj48L2Rpdj48L2Rpdj48L2Rpdj4KCiAgPGRpdiBpZD0ic3RsX2xlZnQi PjwvZGl2PjxkaXYgaWQ9InN0bF9zaWRlIj48L2Rpdj4KCiAgPHNjcmlwdCB0 eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPmRvbVN0YXJ0ZWQoKTs8L3NjcmlwdD4K CiAgPGRpdiBjbGFzcz0ic2Nyb2xsX2ZpeF93cmFwIiBpZD0icGFnZV93cmFw Ij48ZGl2IGlkPSJyZWdfYmFyIiBjbGFzcz0idG9wX2luZm9fd3JhcCBmaXhl ZCI+CiAgPGRpdiBjbGFzcz0ic2Nyb2xsX2ZpeCI+CiAgICA8ZGl2IGlkPSJy ZWdfYmFyX2NvbnRlbnQiPgogICAgICBKb2luIFZLIG5vdyBhbmQgYWx3YXlz IHN0YXkgaW4gY29udGFjdCB3aXRoIHlvdXIgZnJpZW5kcyBhbmQgcmVsYXRp dmVzCiAgICAgIDxkaXYgY2xhc3M9ImJ1dHRvbl9ibHVlIiBpZD0icmVnX2Jh cl9idXR0b24iPjxhIGNsYXNzPSJidXR0b25fbGluayIgaHJlZj0iL2pvaW4i IG9uY2xpY2s9InJldHVybiAhc2hvd0JveCgnam9pbi5waHAnLCB7YWN0OiAn Ym94JywgZnJvbTogbmF2LnN0ckxvY30sIHt9LCBldmVudCkiPjxidXR0b24g aWQ9InJlZ19iYXJfYnRuIj48c3BhbiBpZD0icmVnX2Jhcl93aXRoX2FyciI+ U2lnbiB1cDwvc3Bhbj48L2J1dHRvbj48L2E+PC9kaXY+CiAgICA8L2Rpdj4K ICA8L2Rpdj4KPC9kaXY+CjxkaXY+PGRpdiBjbGFzcz0ic2Nyb2xsX2ZpeCI+ CiAgPGRpdiBpZD0icGFnZV9sYXlvdXQiIHN0eWxlPSJ3aWR0aDogNzkxcHg7 Ij4KICAgIDxkaXYgaWQ9InBhZ2VfaGVhZGVyIiBjbGFzcz0icF9oZWFkMSBw X2hlYWRfbDMiPgogICAgICA8ZGl2IGNsYXNzPSJiYWNrIj48L2Rpdj4KICAg ICAgPGRpdiBjbGFzcz0ibGVmdCI+PC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9 InJpZ2h0Ij48L2Rpdj4KICAgICAgPGRpdiBjbGFzcz0iY29udGVudCI+CiAg ICAgICAgPGRpdiBpZD0idG9wX25hdiIgY2xhc3M9ImhlYWRfbmF2Ij4KICA8 ZGl2IGlkPSJ0b3BfbG9nb19kb3duIiBjbGFzcz0iZmxfbCI+PC9kaXY+CiAg PGEgaWQ9InRvcF9ob21lX2xpbmsiIGNsYXNzPSJ0b3BfaG9tZV9saW5rIGZs X2wiIGhyZWY9Ii8iIG9ubW91c2Vkb3duPSJhZGRDbGFzcygndG9wX2xvZ29f ZG93bicsJ3RsZF9kJyk7IiBvbmNsaWNrPSJyZXR1cm4gbmF2LmdvKHRoaXMs IGV2ZW50KTsiPjwvYT4KICA8ZGl2IGlkPSJ0b3BfbGlua3MiPgogICAgPGRp diBjbGFzcz0iZmxfciIgaWQ9InRvcF9tZW51X3dyYXAiIHN0eWxlPSIiPgog ICAgICA8YSBpZD0idG9wX3JlZ19saW5rIiBjbGFzcz0iZmxfciB0b3BfbmF2 X2xpbmsiIGhyZWY9Ii9qb2luIiBzdHlsZT0iIiBvbmNsaWNrPSJyZXR1cm4g IXNob3dCb3goJ2pvaW4ucGhwJywge2FjdDogJ2JveCcsIGZyb206IG5hdi5z dHJMb2N9LCB7fSwgZXZlbnQpIiBvbm1vdXNlZG93bj0idG5BY3RpdmUodGhp cykiPnNpZ24gdXA8L2E+CiAgICAgIDxhIGlkPSJ0b3Bfc3dpdGNoX2xhbmci IGNsYXNzPSJmbF9yIHRvcF9uYXZfbGluayIgIHN0eWxlPSJkaXNwbGF5OiBu b25lOyIgb25jbGljaz0iYWpheC5wb3N0KCdhbF9pbmRleC5waHAnLCB7YWN0 OiAnY2hhbmdlX2xhbmcnLCBsYW5nX2lkOiAzLCBoYXNoOiAnJ30pOyIgb25t b3VzZWRvd249InRuQWN0aXZlKHRoaXMpIj5Td2l0Y2ggdG8gRW5nbGlzaDwv YT4KICAgIDwvZGl2PgogICAgPGEgY2xhc3M9ImZsX2wgdG9wX25hdl9saW5r IiBocmVmPSIiIGlkPSJ0b3BfYmFja19saW5rIiBvbmNsaWNrPSJyZXR1cm4g bmF2LmdvKHRoaXMsIGV2ZW50LCB7YmFjazogdHJ1ZX0pIiBvbm1vdXNlZG93 bj0idG5BY3RpdmUodGhpcykiPjwvYT4KICA8L2Rpdj4KPC9kaXY+CiAgICAg IDwvZGl2PgogICAgPC9kaXY+CgogICAgPGRpdiBpZD0ic2lkZV9iYXIiIGNs YXNzPSJmbF9sIiBzdHlsZT0iIj4KICAgICAgPGRpdiBpZD0icXVpY2tfbG9n aW4iPgogIDxmb3JtIG1ldGhvZD0iUE9TVCIgbmFtZT0ibG9naW4iIGlkPSJx dWlja19sb2dpbl9mb3JtIiBhY3Rpb249Imh0dHBzOi8vbG9naW4udmsuY29t Lz9hY3Q9bG9naW4iIG9uc3VibWl0PSJpZiAodmtsb2dpbikge3JldHVybiB0 cnVlfSBlbHNlIHtxdWlja19sb2dpbigpO3JldHVybiBmYWxzZTt9Ij4KICAg IDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImFjdCIgdmFsdWU9ImxvZ2lu IiAvPgogICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0icm9sZSIgdmFs dWU9ImFsX2ZyYW1lIiAvPgogICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFt ZT0iZXhwaXJlIiBpZD0icXVpY2tfZXhwaXJlX2lucHV0IiB2YWx1ZT0iIiAv PgogICAgPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0iY2FwdGNoYV9zaWQi IGlkPSJxdWlja19jYXB0Y2hhX3NpZCIgdmFsdWU9IiIgLz4KICAgIDxpbnB1 dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImNhcHRjaGFfa2V5IiBpZD0icXVpY2tf Y2FwdGNoYV9rZXkiIHZhbHVlPSIiIC8+CiAgICA8aW5wdXQgdHlwZT0iaGlk ZGVuIiBuYW1lPSJfb3JpZ2luIiB2YWx1ZT0iaHR0cDovL3ZrLmNvbSIgLz4K ICAgIDxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9ImlwX2giIHZhbHVlPSJj Mzk5OTZhMzA1NGUxMDFmZTUiIC8+CiAgICA8ZGl2IGNsYXNzPSJsYWJlbCI+ UGhvbmUgb3IgZW1haWw8L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImxhYmVsZWQi PjxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJlbWFpbCIgY2xhc3M9InRleHQi IGlkPSJxdWlja19lbWFpbCIgLz48L2Rpdj4KICAgIDxkaXYgY2xhc3M9Imxh YmVsIj5QYXNzd29yZDwvZGl2PgogICAgPGRpdiBjbGFzcz0ibGFiZWxlZCI+ PGlucHV0IHR5cGU9InBhc3N3b3JkIiBuYW1lPSJwYXNzIiBjbGFzcz0idGV4 dCIgaWQ9InF1aWNrX3Bhc3MiIG9ua2V5dXA9InRvZ2dsZSgncXVpY2tfZXhw aXJlJywgISF0aGlzLnZhbHVlKTt0b2dnbGUoJ3F1aWNrX2ZvcmdvdCcsICF0 aGlzLnZhbHVlKSIgLz48L2Rpdj4KICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQi IGNsYXNzPSJzdWJtaXQiIC8+CiAgPC9mb3JtPgogIDxkaXYgY2xhc3M9ImJ1 dHRvbl9ibHVlIGJ1dHRvbl93aWRlIGJ1dHRvbl9iaWciIGlkPSJxdWlja19h dXRoX2J1dHRvbiI+PGJ1dHRvbiBpZD0icXVpY2tfbG9naW5fYnV0dG9uIj5M b2cgaW48L2J1dHRvbj48L2Rpdj4KICA8ZGl2IGNsYXNzPSJidXR0b25fYmx1 ZSBidXR0b25fd2lkZSBidXR0b25fYmlnIiBpZD0icXVpY2tfcmVnX2J1dHRv biIgc3R5bGU9IiI+PGJ1dHRvbiBvbmNsaWNrPSJ0b3Auc2hvd0JveCgnam9p bi5waHAnLCB7YWN0OiAnYm94JywgZnJvbTogbmF2LnN0ckxvY30pIj5TaWdu IHVwPC9idXR0b24+PC9kaXY+CiAgPGRpdiBjbGFzcz0iY2xlYXIgZm9yZ290 Ij48YSBpZD0icXVpY2tfZm9yZ290IiBocmVmPSIvcmVzdG9yZSIgdGFyZ2V0 PSJfdG9wIj5Gb3Jnb3QgeW91ciBwYXNzd29yZD88L2E+PGRpdiBjbGFzcz0i Y2hlY2tib3ggdGFfbCIgaWQ9InF1aWNrX2V4cGlyZSIgb25jbGljaz0iY2hl Y2tib3godGhpcyk7Z2UoJ3F1aWNrX2V4cGlyZV9pbnB1dCcpLnZhbHVlPWlz Q2hlY2tlZCh0aGlzKT8xOicnOyI+PGRpdj48L2Rpdj5Eb24mIzM5O3QgcmVt ZW1iZXIgbWU8L2Rpdj48L2Rpdj4KPC9kaXY+CiAgICA8L2Rpdj4KCiAgICA8 ZGl2IGlkPSJwYWdlX2JvZHkiIGNsYXNzPSJmbF9yIiBzdHlsZT0id2lkdGg6 IDYzMXB4OyI+CiAgICAgIDxkaXYgaWQ9ImhlYWRlcl93cmFwMiI+CiAgICAg ICAgPGRpdiBpZD0iaGVhZGVyX3dyYXAxIj4KICAgICAgICAgIDxkaXYgaWQ9 ImhlYWRlciIgc3R5bGU9ImRpc3BsYXk6IG5vbmUiPgogICAgICAgICAgICA8 aDEgaWQ9InRpdGxlIj48L2gxPgogICAgICAgICAgPC9kaXY+CiAgICAgICAg PC9kaXY+CiAgICAgIDwvZGl2PgogICAgICA8ZGl2IGlkPSJ3cmFwX2JldHdl ZW4iPjwvZGl2PgogICAgICA8ZGl2IGlkPSJ3cmFwMyI+PGRpdiBpZD0id3Jh cDIiPgogIDxkaXYgaWQ9IndyYXAxIj4KICAgIDxkaXYgaWQ9ImNvbnRlbnQi PjxkaXYgaXRlbXByb3A9InZpZGVvIiBpdGVtc2NvcGUgaXRlbXR5cGU9Imh0 dHA6Ly9zY2hlbWEub3JnL1ZpZGVvT2JqZWN0Ij4KICA8bGluayBpdGVtcHJv cD0idXJsIiBocmVmPSJodHRwOi8vdmsuY29tL3ZpZGVvMzk1NzYyMjNfMTA4 MzcwNTE1IiAvPgogIDxtZXRhIGl0ZW1wcm9wPSJuYW1lIiBjb250ZW50PSLf IPPy7vfq4CkpKSkpIiAvPgogIDxtZXRhIGl0ZW1wcm9wPSJkZXNjcmlwdGlv biIgY29udGVudD0i/fLuIMLH0NvCIMzOx8PAJiMzMzsmIzMzOyYjMzM7IM/w 7vHy7iDu8uLg6yDh4Pjq6C4uLiIgLz4KICA8bWV0YSBpdGVtcHJvcD0iZHVy YXRpb24iIGNvbnRlbnQ9IlBUM00zUyIgLz4KICA8bGluayBpdGVtcHJvcD0i dGh1bWJuYWlsVXJsIiBocmVmPSJodHRwOi8vdmlkZW80MzMudmthZHJlLnJ1 L2Fzc2V0cy90aHVtYm5haWxzLzg4NjE1Y2E5ODExOTY5MDMuNDYwLnZrLmpw ZyIgLz4KICA8c3BhbiBpdGVtcHJvcD0idGh1bWJuYWlsIiBpdGVtc2NvcGUg aXRlbXR5cGU9Imh0dHA6Ly9zY2hlbWEub3JnL0ltYWdlT2JqZWN0Ij4KICAg IDxsaW5rIGl0ZW1wcm9wPSJ1cmwiIGhyZWY9Imh0dHA6Ly92aWRlbzQzMy52 a2FkcmUucnUvYXNzZXRzL3RodW1ibmFpbHMvODg2MTVjYTk4MTE5NjkwMy4z MjAudmsuanBnIiAvPgogICAgPG1ldGEgaXRlbXByb3A9IndpZHRoIiBjb250 ZW50PSIzMjAiIC8+CiAgICA8bWV0YSBpdGVtcHJvcD0iaGVpZ2h0IiBjb250 ZW50PSIyNDAiIC8+CiAgPC9zcGFuPgo8L2Rpdj48ZGl2IGNsYXNzPSJ0X2Jh ciBjbGVhcl9maXgiIGlkPSJ2aWRlb190YWJzIj4KICA8dWwgY2xhc3M9InQw Ij48bGkgY2xhc3M9IiBhY3RpdmVfbGluayIgaWQ9InZpZGVvX3RhYl9hbGwi PgogIDxhIGhyZWY9Ii92aWRlb3MzOTU3NjIyMyIgb25jbGljaz0icmV0dXJu IGNoZWNrRXZlbnQoZXZlbnQpOyIgb25tb3VzZWRvd249InJldHVybiBuYXYu Y2hhbmdlKHtzZWN0aW9uOiAnYWxsJ30pOyI+CiAgICA8YiBjbGFzcz0idGwx Ij48Yj48L2I+PC9iPgogICAgPGIgY2xhc3M9InRsMiI+PC9iPgogICAgPGIg Y2xhc3M9InRhYl93b3JkIj48bm9icj5BbGwgdmlkZW9zPC9ub2JyPjwvYj4K ICA8L2E+CjwvbGk+PGxpIGNsYXNzPSJ2aWRlb190YWJfaGlkZGVuIiBpZD0i dmlkZW9fdGFiX2hpZGRlbiI+CiAgPGEgaHJlZj0iL3ZpZGVvczM5NTc2MjIz IiBvbmNsaWNrPSJyZXR1cm4gY2hlY2tFdmVudChldmVudCk7IiBvbm1vdXNl ZG93bj0icmV0dXJuIGZhbHNlOyI+CiAgICA8YiBjbGFzcz0idGwxIj48Yj48 L2I+PC9iPgogICAgPGIgY2xhc3M9InRsMiI+PC9iPgogICAgPGIgY2xhc3M9 InRhYl93b3JkIj48bm9icj48L25vYnI+PC9iPgogIDwvYT4KPC9saT48bGkg Y2xhc3M9InRfciI+PGRpdiBpZD0idmlkZW9fdGFic19wcm9ncmVzcyIgY2xh c3M9InByb2dyZXNzIj48L2Rpdj48L2xpPjwvdWw+CjwvZGl2Pgo8ZGl2IGlk PSJ2aWRlb19jb250ZW50IiBjbGFzcz0idmlkZW9fYWxidW1zX2hpZGRlbiB2 aWRlb19ub19hbGJ1bXMiPgogIDxkaXYgaWQ9InZpZGVvX3NlYXJjaCIgc3R5 bGU9ImRpc3BsYXk6IG5vbmU7IiBjbGFzcz0idmlkZW9fc2VhcmNoIHRvcF9z ZWFyY2hfd3JhcCBub192aWRlb191cGxvYWQiPgogICAgCiAgICA8ZGl2IGNs YXNzPSJ2aWRlb19sb2FkaW5nX2NvbnQiPgogICAgICA8ZGl2IGNsYXNzPSJ2 aWRlb19sb2FkaW5nIj48L2Rpdj4KICAgIDwvZGl2PgogICAgPGRpdiBpZD0i dmlkZW9fcmVzZXRfc2VhcmNoIiBjbGFzcz0idmlkZW9fcmVzZXRfc2VhcmNo IiBvbm1vdXNlb3Zlcj0ic2V0U3R5bGUodGhpcywge29wYWNpdHk6IDF9KTsi IG9ubW91c2VvdXQ9InNldFN0eWxlKHRoaXMsIHtvcGFjaXR5OiAwLjZ9KTsi IG9uY2xpY2s9IlZpZGVvLnNlYXJjaFZpZGVvcyhmYWxzZSk7Ij48L2Rpdj4K ICAgIDxkaXYgaWQ9InZpZGVvX3NlYXJjaF9jb250cm9scyI+CiAgICAgIDxk aXYgY2xhc3M9InZpZGVvX3NlYXJjaF9jb250Ij4KICAgICAgICA8ZGl2IGNs YXNzPSJ2aWRlb19jaGVja2JveCBjaGVja2JveCBmbF9sIiBpZD0idmlkZW9f aGRfb3B0aW9uIiBvbmNsaWNrPSJjaGVja2JveCh0aGlzKTsgVmlkZW8udG9n Z2xlSEQoMSk7Ij48ZGl2PjwvZGl2PkhpZ2gtZGVmaW5pdGlvbiBvbmx5PC9k aXY+CiAgICAgICAgICAgIDxkaXYgY2xhc3M9InZpZGVvX2NoZWNrYm94IGNo ZWNrYm94IG9uIGZsX2wiIGlkPSJ2aWRlb19hZHVsdF9vcHRpb24iIG9uY2xp Y2s9ImNoZWNrYm94KHRoaXMpOyBWaWRlby50b2dnbGVBZHVsdCgpOyI+PGRp dj48L2Rpdj5TYWZlIHNlYXJjaDwvZGl2PgogICAgICAgIDxhIGlkPSJ2aWRl b19sZW5ndGhfMCIgY2xhc3M9InZpZGVvX2xlbmd0aCB2aWRlb19sZW5ndGhf c2VsIGZsX3IiIG9uY2xpY2s9InJldHVybiBWaWRlby50b2dnbGVMZW5ndGgo dGhpcywgMCk7Ij5BbGwgdmlkZW9zPC9hPgogICAgICAgIDxhIGlkPSJ2aWRl b19sZW5ndGhfMSIgY2xhc3M9InZpZGVvX2xlbmd0aCBmbF9yIiBvbmNsaWNr PSJyZXR1cm4gVmlkZW8udG9nZ2xlTGVuZ3RoKHRoaXMsIDEpOyI+U2hvcnQ8 L2E+CiAgICAgICAgPGEgaWQ9InZpZGVvX2xlbmd0aF8yIiBjbGFzcz0idmlk ZW9fbGVuZ3RoIGZsX3IiIG9uY2xpY2s9InJldHVybiBWaWRlby50b2dnbGVM ZW5ndGgodGhpcywgMik7Ij5Mb25nPC9hPgoKICAgICAgICA8L2Rpdj4KICAg ICAgICA8YnIgY2xhc3M9ImNsZWFyIiAvPgogICAgPC9kaXY+CiAgICA8aW5w dXQgdHlwZT0idGV4dCIgaWQ9InZfc2VhcmNoIiBvbmtleWRvd249IlZpZGVv LnVwZGF0ZUxpc3QoZXZlbnQsIHRoaXMpOyIgb25wYXN0ZT0iVmlkZW8udXBk YXRlTGlzdChldmVudCwgdGhpcyk7IiBvbmN1dD0iVmlkZW8udXBkYXRlTGlz dChldmVudCwgdGhpcyk7IiBjbGFzcz0idGV4dCB2aWRlb19zZWFyY2hfaW5w dXQgdG9wX3NlYXJjaF9pbnAiIHBsYWNlaG9sZGVyPSJTZWFyY2ggdmlkZW9z IiBvbmZvY3VzPSJhZGRDbGFzcyhjdXIudkxpc3QsICdzZWFyY2hfZm9jdXMn KTsiIG9uYmx1cj0icmVtb3ZlQ2xhc3MoY3VyLnZMaXN0LCAnc2VhcmNoX2Zv Y3VzJyk7IiAvPgogIDwvZGl2PgogIDxkaXYgaWQ9InZpZGVvX2FsYnVtc19s aXN0IiBzdHlsZT0iIiBjbGFzcz0iIj4KCiAgICA8ZGl2IGNsYXNzPSJzdW1t YXJ5X3dyYXAiPgogICAgICA8ZGl2IGNsYXNzPSJjbGVhcl9maXgiPgogICAg ICAgIDxhIGlkPSJ2aWRlb19jcmVhdGVfYWxidW0iIGNsYXNzPSJmbF9yIiBv bmNsaWNrPSJWaWRlby5jcmVhdGVBbGJ1bSgpIiBzdHlsZT0iZGlzcGxheTog bm9uZTsiPk5ldyBmb2xkZXI8L2E+CiAgICAgICAgPGRpdiBpZD0idmlkZW9f YWxidW1zX3N1bW1hcnkiIGNsYXNzPSJzdW1tYXJ5ICI+QWxleGFuZGVyIGhh cyAwIGZvbGRlcnM8L2Rpdj4KICAgICAgPC9kaXY+CiAgICA8L2Rpdj4KICAg IDxkaXYgY2xhc3M9InZpZGVvX2FsYnVtc19jb250IiBpZD0idmlkZW9fYWxi dW1zX2NvbnQiPgogICAgICAKICAgIDwvZGl2PgogIDwvZGl2PgogIDxkaXYg Y2xhc3M9InN1bW1hcnlfd3JhcCB2aWRlb19tYWluX3N1bW1hcnkiPgogICAg PGRpdiBjbGFzcz0iY2xlYXJfZml4Ij4KICAgICAgPGEgaWQ9InZpZGVvX2Nv bW1lbnRzX2xpbmsiIHN0eWxlPSIiIGhyZWY9Ii92aWRlb3MzOTU3NjIyMz9z ZWN0aW9uPWNvbW1lbnRzIiBjbGFzcz0iZmxfciIgb25jbGljaz0icmV0dXJu IG5hdi5jaGFuZ2Uoe3NlY3Rpb246ICdjb21tZW50cyd9KTsiPkJyb3dzZSBj b21tZW50czwvYT4KICAgICAgPGRpdiBpZD0idmlkZW9fc3VtbWFyeSIgY2xh c3M9InN1bW1hcnkgZmxfbCI+NSB2aWRlb3M8L2Rpdj4KICAgICAgCiAgICA8 L2Rpdj4KICA8L2Rpdj4KICA8ZGl2IGlkPSJ2aWRlb19saXN0IiBjbGFzcz0i dmlkZW9fbGlzdCI+CiAgICA8ZGl2IGlkPSJ2aWRlb19yb3dzIiBjbGFzcz0i Y2xlYXJfYWxsICI+PGRpdiBpZD0idmlkZW9fY29udDM5NTc2MjIzXzE2NjMx NTU0MyIgY2xhc3M9InZpZGVvX3Jvd19jb250Ij48ZGl2IGNsYXNzPSJ2aWRl b19yb3dfaW5uZXJfY29udCI+PGEgaHJlZj0iL3ZpZGVvMzk1NzYyMjNfMTY2 MzE1NTQzIiBjbGFzcz0idmlkZW9fcm93X3JlbGF0aXZlIiBpZD0idmlkZW9f cm93Mzk1NzYyMjNfMTY2MzE1NTQzIiBvbm1vdXNlb3Zlcj0iVmlkZW8ucm93 T3Zlcih0aGlzKTsiIG9ubW91c2VvdXQ9IlZpZGVvLnJvd091dCh0aGlzKSIg b25jbGljaz0iaWYgKGN1ci5jYW5jZWxDbGljaykgcmV0dXJuIChjdXIuY2Fu Y2VsQ2xpY2sgPSBmYWxzZSk7IHJldHVybiBWaWRlby5zaG93KGV2ZW50LCAn Mzk1NzYyMjNfMTY2MzE1NTQzJywge30sIHRoaXMpOyI+CiAgICAKICAgIDxk aXYgY2xhc3M9InZpZGVvX3Jvd19pbmZvX2xpbmUiPjxkaXYgY2xhc3M9InZp ZGVvX3Jhd19pbmZvX25hbWUiPtDl6uvg7OAgJnF1b3Q7zOXt8u7xJnF1b3Q7 ICjv8Ojq7uspPC9kaXY+PGRpdiBjbGFzcz0idmlkZW9fcm93X2R1cmF0aW9u Ij4wOjI5PC9kaXY+PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJ2aWRlb19yb3df aW5mb19wbGF5Ij48L2Rpdj4KICAgIAogICAgPGRpdiBjbGFzcz0idmlkZW9f cm93X2NvbnRyb2xzIj4KICAgICAgPGRpdiBjbGFzcz0idmlkZW9fcm93X2lj b25fZWRpdCBmbF9sIiBvbm1vdXNlb3Zlcj0iVmlkZW8uYWN0aXZhdGUodGhp cyk7IiBvbm1vdXNlb3V0PSJWaWRlby5kZWFjdGl2YXRlKHRoaXMpOyIgb25j bGljaz0icmV0dXJuIHZpZGVvdmlldy5zaG93RWRpdEJveCgxNjYzMTU1NDMs IDM5NTc2MjIzLCBldmVudCk7Ij48ZGl2IGNsYXNzPSJ2aWRlb19yb3dfaWNv biI+PC9kaXY+PC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InZpZGVvX3Jvd19p Y29uX2RlbGV0ZSBmbF9sIiBvbm1vdXNlb3Zlcj0iVmlkZW8uYWN0aXZhdGUo dGhpcyk7IiBvbm1vdXNlb3V0PSJWaWRlby5kZWFjdGl2YXRlKHRoaXMpOyIg b25jbGljaz0icmV0dXJuIFZpZGVvLm9uRGVsZXRlQ2xpY2soMTY2MzE1NTQz LCAzOTU3NjIyMywgJ19hMGEzNmI2Y2EzYjI1MDBkYWUnLCB0aGlzLCBldmVu dCk7Ij48ZGl2IGNsYXNzPSJ2aWRlb19yb3dfaWNvbiI+PC9kaXY+PC9kaXY+ CiAgICAgIDxiciBjbGFzcz0iY2xlYXIiIC8+CiAgICA8L2Rpdj4KICAgIDxk aXYgY2xhc3M9InZpZGVvX2ltYWdlX2RpdiIgc3R5bGU9ImJhY2tncm91bmQt aW1hZ2U6IHVybCgnaHR0cDovL3ZpZGVvNDQ4LnZrYWRyZS5ydS9hc3NldHMv dGh1bWJuYWlscy8zZWRhYmZjNTc3MDMxNTgwLjMyMC52ay5qcGcnKTsiPjwv ZGl2PgogIDwvYT48L2Rpdj4KPC9kaXY+PGRpdiBpZD0idmlkZW9fY29udDM5 NTc2MjIzXzE2NTYwNzQ0NSIgY2xhc3M9InZpZGVvX3Jvd19jb250Ij48ZGl2 IGNsYXNzPSJ2aWRlb19yb3dfaW5uZXJfY29udCI+PGEgaHJlZj0iL3ZpZGVv Mzk1NzYyMjNfMTY1NjA3NDQ1IiBjbGFzcz0idmlkZW9fcm93X3JlbGF0aXZl IiBpZD0idmlkZW9fcm93Mzk1NzYyMjNfMTY1NjA3NDQ1IiBvbm1vdXNlb3Zl cj0iVmlkZW8ucm93T3Zlcih0aGlzKTsiIG9ubW91c2VvdXQ9IlZpZGVvLnJv d091dCh0aGlzKSIgb25jbGljaz0iaWYgKGN1ci5jYW5jZWxDbGljaykgcmV0 dXJuIChjdXIuY2FuY2VsQ2xpY2sgPSBmYWxzZSk7IHJldHVybiBWaWRlby5z aG93KGV2ZW50LCAnMzk1NzYyMjNfMTY1NjA3NDQ1Jywge30sIHRoaXMpOyI+ CiAgICAKICAgIDxkaXYgY2xhc3M9InZpZGVvX3Jvd19pbmZvX2xpbmUiPjxk aXYgY2xhc3M9InZpZGVvX3Jhd19pbmZvX25hbWUiPvUv9CAmcXVvdDvR5ezl 6e3u5SDk5evuJnF1b3Q7PC9kaXY+PGRpdiBjbGFzcz0idmlkZW9fcm93X2R1 cmF0aW9uIj4yOjQwPC9kaXY+PC9kaXY+CiAgICA8ZGl2IGNsYXNzPSJ2aWRl b19yb3dfaW5mb19wbGF5Ij48L2Rpdj4KICAgIAogICAgPGRpdiBjbGFzcz0i dmlkZW9fcm93X2NvbnRyb2xzIj4KICAgICAgPGRpdiBjbGFzcz0idmlkZW9f cm93X2ljb25fZWRpdCBmbF9sIiBvbm1vdXNlb3Zlcj0iVmlkZW8uYWN0aXZh dGUodGhpcyk7IiBvbm1vdXNlb3V0PSJWaWRlby5kZWFjdGl2YXRlKHRoaXMp OyIgb25jbGljaz0icmV0dXJuIHZpZGVvdmlldy5zaG93RWRpdEJveCgxNjU2 MDc0NDUsIDM5NTc2MjIzLCBldmVudCk7Ij48ZGl2IGNsYXNzPSJ2aWRlb19y b3dfaWNvbiI+PC9kaXY+PC9kaXY+CiAgICAgIDxkaXYgY2xhc3M9InZpZGVv X3Jvd19pY29uX2RlbGV0ZSBmbF9sIiBvbm1vdXNlb3Zlcj0iVmlkZW8uYWN0 aXZhdGUodGhpcyk7IiBvbm1vdXNlb3V0PSJWaWRlby5kZWFjdGl2YXRlKHRo aXMpOyIgb25jbGljaz0icmV0dXJuIFZpZGVvLm9uRGVsZXRlQ2xpY2soMTY1 NjA3NDQ1LCAzOTU3NjIyMywgJ185MzQ5ZjFiNDUwMTRmNjc0ZGUnLCB0aGlz LCBldmVudCk7Ij48ZGl2IGNsYXNzPSJ2aWRlb19yb3dfaWNvbiI+PC9kaXY+ PC9kaXY+CiAgICAgIDxiciBjbGFzcz0iY2xlYXIiIC8+CiAgICA8L2Rpdj4K ICAgIDxkaXYgY2xhc3M9InZpZGVvX2ltYWdlX2RpdiIgc3R5bGU9ImJhY2tn cm91bmQtaW1hZ2U6IHVybCgnaHR0cDovL2NzMTI5NDcudmsubWUvdTI3MDkx NDgvdmlkZW8vbF83Y2FlYjE1ZS5qcGcnKTsiPjwvZGl2PgogIDwvYT48L2Rp dj4KPC9kaXY+PGRpdiBpZD0idmlkZW9fY29udDM5NTc2MjIzXzE2NTU1Mzc2 NiIgY2xhc3M9InZpZGVvX3Jvd19jb250Ij48ZGl2IGNsYXNzPSJ2aWRlb19y b3dfaW5uZXJfY29udCI+PGEgaHJlZj0iL3ZpZGVvMzk1NzYyMjNfMTY1NTUz NzY2IiBjbGFzcz0idmlkZW9fcm93X3JlbGF0aXZlIiBpZD0idmlkZW9fcm93 Mzk1NzYyMjNfMTY1NTUzNzY2IiBvbm1vdXNlb3Zlcj0iVmlkZW8ucm93T3Zl cih0aGlzKTsiIG9ubW91c2VvdXQ9IlZpZGVvLnJvd091dCh0aGlzKSIgb25j bGljaz0iaWYgKGN1ci5jYW5jZWxDbGljaykgcmV0dXJuIChjdXIuY2FuY2Vs Q2xpY2sgPSBmYWxzZSk7IHJldHVybiBWaWRlby5zaG93KGV2ZW50LCAnMzk1 NzYyMjNfMTY1NTUzNzY2Jywge30sIHRoaXMpOyI+CiAgICAKICAgIDxkaXYg Y2xhc3M9InZpZGVvX3Jvd19pbmZvX2xpbmUiPjxkaXYgY2xhc3M9InZpZGVv X3Jhd19pbmZvX25hbWUiPtHo7O/x7u37IC8gVGhlIFNpbXBzb25zIDI0IPHl 5+7tIDE3IPHl8Oj/PC9kaXY+PGRpdiBjbGFzcz0idmlkZW9fcm93X2R1cmF0 aW9uIj4yMTo1MjwvZGl2PjwvZGl2PgogICAgPGRpdiBjbGFzcz0idmlkZW9f cm93X2luZm9fcGxheSI+PC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9InZp ZGVvX3Jvd19jb250cm9scyI+CiAgICAgIDxkaXYgY2xhc3M9InZpZGVvX3Jv d19pY29uX2VkaXQgZmxfbCIgb25tb3VzZW92ZXI9IlZpZGVvLmFjdGl2YXRl KHRoaXMpOyIgb25tb3VzZW91dD0iVmlkZW8uZGVhY3RpdmF0ZSh0aGlzKTsi IG9uY2xpY2s9InJldHVybiB2aWRlb3ZpZXcuc2hvd0VkaXRCb3goMTY1NTUz NzY2LCAzOTU3NjIyMywgZXZlbnQpOyI+PGRpdiBjbGFzcz0idmlkZW9fcm93 X2ljb24iPjwvZGl2PjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJ2aWRlb19y b3dfaWNvbl9kZWxldGUgZmxfbCIgb25tb3VzZW92ZXI9IlZpZGVvLmFjdGl2 YXRlKHRoaXMpOyIgb25tb3VzZW91dD0iVmlkZW8uZGVhY3RpdmF0ZSh0aGlz KTsiIG9uY2xpY2s9InJldHVybiBWaWRlby5vbkRlbGV0ZUNsaWNrKDE2NTU1 Mzc2NiwgMzk1NzYyMjMsICdfZmM5ZjBmOGZjMTRhNjMyOTQyJywgdGhpcywg ZXZlbnQpOyI+PGRpdiBjbGFzcz0idmlkZW9fcm93X2ljb24iPjwvZGl2Pjwv ZGl2PgogICAgICA8YnIgY2xhc3M9ImNsZWFyIiAvPgogICAgPC9kaXY+CiAg ICA8ZGl2IGNsYXNzPSJ2aWRlb19pbWFnZV9kaXYiIHN0eWxlPSJiYWNrZ3Jv dW5kLWltYWdlOiB1cmwoJ2h0dHA6Ly9jczUyNjQwNC52ay5tZS91ODYzMzIw NzYvdmlkZW8vbF9iMDAxYjdlMy5qcGcnKTsiPjwvZGl2PgogIDwvYT48L2Rp dj4KPC9kaXY+PGRpdiBpZD0idmlkZW9fY29udDM5NTc2MjIzXzE2MTU5ODU0 NCIgY2xhc3M9InZpZGVvX3Jvd19jb250Ij48ZGl2IGNsYXNzPSJ2aWRlb19y b3dfaW5uZXJfY29udCI+PGEgaHJlZj0iL3ZpZGVvMzk1NzYyMjNfMTYxNTk4 NTQ0IiBjbGFzcz0idmlkZW9fcm93X3JlbGF0aXZlIiBpZD0idmlkZW9fcm93 Mzk1NzYyMjNfMTYxNTk4NTQ0IiBvbm1vdXNlb3Zlcj0iVmlkZW8ucm93T3Zl cih0aGlzKTsiIG9ubW91c2VvdXQ9IlZpZGVvLnJvd091dCh0aGlzKSIgb25j bGljaz0iaWYgKGN1ci5jYW5jZWxDbGljaykgcmV0dXJuIChjdXIuY2FuY2Vs Q2xpY2sgPSBmYWxzZSk7IHJldHVybiBWaWRlby5zaG93KGV2ZW50LCAnMzk1 NzYyMjNfMTYxNTk4NTQ0Jywge30sIHRoaXMpOyI+CiAgICAKICAgIDxkaXYg Y2xhc3M9InZpZGVvX3Jvd19pbmZvX2xpbmUiPjxkaXYgY2xhc3M9InZpZGVv X3Jhd19pbmZvX25hbWUiPkhhcnJ5IFBhcnRyaWRnZSAtIFNreXJpbSAo8PPx 8erg/yDu5+Lz9+rgKTwvZGl2PjxkaXYgY2xhc3M9InZpZGVvX3Jvd19kdXJh dGlvbiI+MToyNTwvZGl2PjwvZGl2PgogICAgPGRpdiBjbGFzcz0idmlkZW9f cm93X2luZm9fcGxheSI+PC9kaXY+CiAgICAKICAgIDxkaXYgY2xhc3M9InZp ZGVvX3Jvd19jb250cm9scyI+CiAgICAgIDxkaXYgY2xhc3M9InZpZGVvX3Jv d19pY29uX2VkaXQgZmxfbCIgb25tb3VzZW92ZXI9IlZpZGVvLmFjdGl2YXRl KHRoaXMpOyIgb25tb3VzZW91dD0iVmlkZW8uZGVhY3RpdmF0ZSh0aGlzKTsi IG9uY2xpY2s9InJldHVybiB2aWRlb3ZpZXcuc2hvd0VkaXRCb3goMTYxNTk4 NTQ0LCAzOTU3NjIyMywgZXZlbnQpOyI+PGRpdiBjbGFzcz0idmlkZW9fcm93 X2ljb24iPjwvZGl2PjwvZGl2PgogICAgICA8ZGl2IGNsYXNzPSJ2aWRlb19y b3dfaWNvbl9kZWxldGUgZmxfbCIgb25tb3VzZW92ZXI9IlZpZGVvLmFjdGl2 YXRlKHRoaXMpOyIgb25tb3VzZW91dD0iVmlkZW8uZGVhY3RpdmF0ZSh0aGlz KTsiIG9uY2xpY2s9InJldHVybiBWaWRlby5vbkRlbGV0ZUNsaWNrKDE2MTU5 ODU0NCwgMzk1NzYyMjMsICdfN2NjMTU0MjI2ZWYxMjU4MDYyJywgdGhpcywg ZXZlbnQpOyI+PGRpdiBjbGFzcz0idmlkZW9fcm93X2ljb24iPjwvZGl2Pjwv ZGl2PgogICAgICA8YnIgY2xhc3M9ImNsZWFyIiAvPgogICAgPC9kaXY+CiAg ICA8ZGl2IGNsYXNzPSJ2aWRlb19pbWFnZV9kaXYiIHN0eWxlPSJiYWNrZ3Jv dW5kLWltYWdlOiB1cmwoJ2h0dHA6Ly9jczQ2NDkudmsubWUvdTU1MTg0MDAv dmlkZW8vbF82ZWQ4NWRlMC5qcGcnKTsiPjwvZGl2PgogIDwvYT48L2Rpdj4K PC9kaXY+PGRpdiBpZD0idmlkZW9fY29udDM5NTc2MjIzXzEwODM3MDUxNSIg Y2xhc3M9InZpZGVvX3Jvd19jb250Ij48ZGl2IGNsYXNzPSJ2aWRlb19yb3df aW5uZXJfY29udCI+PGEgaHJlZj0iL3ZpZGVvMzk1NzYyMjNfMTA4MzcwNTE1 IiBjbGFzcz0idmlkZW9fcm93X3JlbGF0aXZlIiBpZD0idmlkZW9fcm93Mzk1 NzYyMjNfMTA4MzcwNTE1IiBvbm1vdXNlb3Zlcj0iVmlkZW8ucm93T3Zlcih0 aGlzKTsiIG9ubW91c2VvdXQ9IlZpZGVvLnJvd091dCh0aGlzKSIgb25jbGlj az0iaWYgKGN1ci5jYW5jZWxDbGljaykgcmV0dXJuIChjdXIuY2FuY2VsQ2xp Y2sgPSBmYWxzZSk7IHJldHVybiBWaWRlby5zaG93KGV2ZW50LCAnMzk1NzYy MjNfMTA4MzcwNTE1Jywge30sIHRoaXMpOyI+CiAgICAKICAgIDxkaXYgY2xh c3M9InZpZGVvX3Jvd19pbmZvX2xpbmUiPjxkaXYgY2xhc3M9InZpZGVvX3Jh d19pbmZvX25hbWUiPt8g8/Lu9+rgKSkpKSk8L2Rpdj48ZGl2IGNsYXNzPSJ2 aWRlb19yb3dfZHVyYXRpb24iPjM6MDM8L2Rpdj48L2Rpdj4KICAgIDxkaXYg Y2xhc3M9InZpZGVvX3Jvd19pbmZvX3BsYXkiPjwvZGl2PgogICAgCiAgICA8 ZGl2IGNsYXNzPSJ2aWRlb19yb3dfY29udHJvbHMiPgogICAgICA8ZGl2IGNs YXNzPSJ2aWRlb19yb3dfaWNvbl9lZGl0IGZsX2wiIG9ubW91c2VvdmVyPSJW aWRlby5hY3RpdmF0ZSh0aGlzKTsiIG9ubW91c2VvdXQ9IlZpZGVvLmRlYWN0 aXZhdGUodGhpcyk7IiBvbmNsaWNrPSJyZXR1cm4gdmlkZW92aWV3LnNob3dF ZGl0Qm94KDEwODM3MDUxNSwgMzk1NzYyMjMsIGV2ZW50KTsiPjxkaXYgY2xh c3M9InZpZGVvX3Jvd19pY29uIj48L2Rpdj48L2Rpdj4KICAgICAgPGRpdiBj bGFzcz0idmlkZW9fcm93X2ljb25fZGVsZXRlIGZsX2wiIG9ubW91c2VvdmVy PSJWaWRlby5hY3RpdmF0ZSh0aGlzKTsiIG9ubW91c2VvdXQ9IlZpZGVvLmRl YWN0aXZhdGUodGhpcyk7IiBvbmNsaWNrPSJyZXR1cm4gVmlkZW8ub25EZWxl dGVDbGljaygxMDgzNzA1MTUsIDM5NTc2MjIzLCAnXzNhNTlhOTliOTg0OWQ4 ZTdlMScsIHRoaXMsIGV2ZW50KTsiPjxkaXYgY2xhc3M9InZpZGVvX3Jvd19p Y29uIj48L2Rpdj48L2Rpdj4KICAgICAgPGJyIGNsYXNzPSJjbGVhciIgLz4K ICAgIDwvZGl2PgogICAgPGRpdiBjbGFzcz0idmlkZW9faW1hZ2VfZGl2IiBz dHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCdodHRwOi8vdmlkZW80MzMu dmthZHJlLnJ1L2Fzc2V0cy90aHVtYm5haWxzLzg4NjE1Y2E5ODExOTY5MDMu MzIwLnZrLmpwZycpOyI+PC9kaXY+CiAgPC9hPjwvZGl2Pgo8L2Rpdj48L2Rp dj4KICAgIDxkaXYgaWQ9InZpZGVvX3NlYXJjaF9zdW1tYXJ5IiBjbGFzcz0i c3VtbWFyeV93cmFwIGNsZWFyIiBzdHlsZT0iZGlzcGxheTogbm9uZSI+PC9k aXY+CiAgICA8YSBpZD0idmlkZW9fc29ydF9kZCIgY2xhc3M9ImRkX2xpbmsg ZmxfciI+QnkgcmVsZXZhbmNlPC9hPgogICAgPGRpdiBpZD0idmlkZW9fc2Vh cmNoX3Jvd3MiPgogICAgPC9kaXY+CiAgICA8ZGl2IGlkPSJzaG93X21vcmUi IGNsYXNzPSJzaG93X21vcmUiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+CiAg ICAgIDxhIGhyZWY9IiIgb25jbGljaz0iVmlkZW8uc2hvd01vcmUoKTsgcmV0 dXJuIGZhbHNlOyIgY2xhc3M9Im1vcmUiPgogICAgICAgIFNob3cgbW9yZQog ICAgICA8L2E+CiAgICA8L2Rpdj4KICAgIDxkaXYgY2xhc3M9ImNsZWFyIj4K ICAgICAgPGRpdiBpZD0ibm90X2ZvdW5kIiBjbGFzcz0idmlkZW9faW5mb19t c2cgIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPgogIDxzcGFuIGNsYXNzPSJ2 aWRlb19lbXB0eSI+VGhlcmUgYXJlIG5vIHZpZGVvcy48L3NwYW4+CiAgPHNw YW4gY2xhc3M9InZpZGVvX2J5X3NlYXJjaCI+WW91ciBzZWFyY2ggZm9yIDxi PjxzcGFuIGlkPSJzZWFyY2hfcGgiPjwvc3Bhbj48L2I+IHJldHVybmVkIG5v IHZpZGVvcy48L3NwYW4+CiAgPHNwYW4gY2xhc3M9InZpZGVvX2VtcHR5X2Fs YnVtIj5ObyB2aWRlb3MgaW4gdGhpcyBmb2xkZXIgeWV0Ljwvc3Bhbj4KPC9k aXY+CiAgICA8L2Rpdj4KICA8L2Rpdj4KPC9kaXY+CjxkaXYgaWQ9InBhZ2Vf ZW5kIj48L2Rpdj48L2Rpdj4KICA8L2Rpdj4KPC9kaXY+PC9kaXY+CiAgICA8 L2Rpdj4KCiAgICA8ZGl2IGlkPSJmb290ZXJfd3JhcCIgY2xhc3M9ImZsX3Ii IHN0eWxlPSJ3aWR0aDogNjYxcHg7Ij4KICAgICAgPGRpdiBpZD0iYm90dG9t X25hdiI+CiAgPGEgY2xhc3M9ImJuYXZfYSIgaHJlZj0iL2Fib3V0Ij5hYm91 dDwvYT4KICA8YSBjbGFzcz0iYm5hdl9hIiBocmVmPSIvc3VwcG9ydD9hY3Q9 bmV3IiBvbmNsaWNrPSJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KTsiIHN0 eWxlPSJkaXNwbGF5OiBub25lOyI+aGVscDwvYT4KICA8YSBjbGFzcz0iYm5h dl9hIiBocmVmPSIvdGVybXMiPnRlcm1zPC9hPgogIDxhIGNsYXNzPSJibmF2 X2EiIGhyZWY9Ii9wZW9wbGUiPnBlb3BsZTwvYT48YSBjbGFzcz0iYm5hdl9h IiBocmVmPSIvY29tbXVuaXRpZXMiPmNvbW11bml0aWVzPC9hPgogIDxhIGNs YXNzPSJibmF2X2EiIGhyZWY9Ii9kZXYiPmRldmVsb3BlcnM8L2E+CjwvZGl2 Pgo8cCBpZD0iZm9vdGVyIj4KICA8ZGl2IGNsYXNzPSJjb3B5X2xhbmciPjxh IGhyZWY9Ii9hYm91dCI+Vks8L2E+ICZjb3B5OyAyMDEzIDxhIGNsYXNzPSJi bmF2X2xhbmciIG9uY2xpY2s9ImFqYXgucG9zdCgnYWxfaW5kZXgucGhwJywg e2FjdDogJ2NoYW5nZV9sYW5nJywgbGFuZ19pZDogMywgaGFzaDogJzM5N2Zh NGQxMWQxNjkxMGY3Myd9KSI+RW5nbGlzaDwvYT48YSBjbGFzcz0iYm5hdl9s YW5nIiBvbmNsaWNrPSJhamF4LnBvc3QoJ2FsX2luZGV4LnBocCcsIHthY3Q6 ICdjaGFuZ2VfbGFuZycsIGxhbmdfaWQ6IDAsIGhhc2g6ICczOTdmYTRkMTFk MTY5MTBmNzMnfSkiPtDz8fHq6Ok8L2E+PGEgY2xhc3M9ImJuYXZfbGFuZyIg b25jbGljaz0iYWpheC5wb3N0KCdhbF9pbmRleC5waHAnLCB7YWN0OiAnY2hh bmdlX2xhbmcnLCBsYW5nX2lkOiAxLCBoYXNoOiAnMzk3ZmE0ZDExZDE2OTEw ZjczJ30pIj7T6vDgv+3x/OrgPC9hPjxhIGNsYXNzPSJibmF2X2xhbmciIG9u Y2xpY2s9InNob3dCb3goJ2xhbmcucGhwJywge2FjdDogJ2xhbmdfZGlhbG9n J30sIHtub3JlbG9hZDogdHJ1ZX0pIj5hbGwgbGFuZ3VhZ2VzILs8L2E+PC9k aXY+CiAgCiAgPGRpdj4KICAgIAogICAgCiAgPC9kaXY+CjwvcD4KICAgIDwv ZGl2PgogICAgPGRpdiBjbGFzcz0iY2xlYXIiPjwvZGl2PgogIDwvZGl2Pgo8 L2Rpdj48L2Rpdj48L2Rpdj4KICA8ZGl2IGNsYXNzPSJwcm9ncmVzcyIgaWQ9 Imdsb2JhbF9wcmciPjwvZGl2PgoKICA8c2NyaXB0IHR5cGU9InRleHQvamF2 YXNjcmlwdCI+CiAgICBpZiAocGFyZW50ICYmIHBhcmVudCAhPSB3aW5kb3cg JiYgKGJyb3dzZXIubXNpZSB8fCBicm93c2VyLm9wZXJhIHx8IGJyb3dzZXIu bW96aWxsYSB8fCBicm93c2VyLmNocm9tZSB8fCBicm93c2VyLnNhZmFyaSB8 fCBicm93c2VyLmlwaG9uZSkpIHsKICAgICAgZG9jdW1lbnQuZ2V0RWxlbWVu dHNCeVRhZ05hbWUoJ2JvZHknKVswXS5pbm5lckhUTUwgPSAnJzsKICAgIH0g ZWxzZSB7CiAgICAgIGRvbVJlYWR5KCk7CiAgICAgIHVwZGF0ZU1vbmV5KDAp OwpnU2VhcmNoLmluaXQoKTsKaWYgKHdpbmRvdy5xQXJyICYmIHFBcnJbNV0p IHFBcnJbNV0gPSBbNSwgImJ5IGl0ZW0iLCAiIiwgImdvb2RzIiwgMHgwMDAw MDEwMF07CmlmIChicm93c2VyLmlwaG9uZSB8fCBicm93c2VyLmlwYWQgfHwg YnJvd3Nlci5pcG9kKSB7CiAgc2V0U3R5bGUoYm9keU5vZGUsIHt3ZWJraXRU ZXh0U2l6ZUFkanVzdDogJ25vbmUnfSk7Cn12YXIgcWYgPSBnZSgncXVpY2tf bG9naW5fZm9ybScpLCBxbCA9IGdlKCdxdWlja19sb2dpbicpLCBxZSA9IGdl KCdxdWlja19lbWFpbCcpLCBxcCA9IGdlKCdxdWlja19wYXNzJyk7CnZhciBx bGIgPSBnZSgncXVpY2tfbG9naW5fYnV0dG9uJyksIHByZ0J0biA9IHFsYjsK CnZhciBxaW5pdCA9IGZ1bmN0aW9uKCkgewogIHNldFRpbWVvdXQoZnVuY3Rp b24oKSB7CiAgICBxbC5pbnNlcnRCZWZvcmUoY2UoJ2RpdicsIHtpbm5lckhU TUw6ICc8aWZyYW1lIGNsYXNzPSJ1cGxvYWRfZnJhbWUiIGlkPSJxdWlja19s b2dpbl9mcmFtZSIgbmFtZT0icXVpY2tfbG9naW5fZnJhbWUiPjwvaWZyYW1l Pid9KSwgcWYpOwogICAgcWYudGFyZ2V0ID0gJ3F1aWNrX2xvZ2luX2ZyYW1l JzsKICB9LCAxKTsKfQoKaWYgKHdpbmRvdy50b3AgJiYgd2luZG93LnRvcCAh PSB3aW5kb3cpIHsKICB3aW5kb3cub25sb2FkID0gcWluaXQ7Cn0gZWxzZSB7 CiAgc2V0VGltZW91dChxaW5pdCwgMCk7Cn0KCnFmLm9uc3VibWl0ID0gZnVu Y3Rpb24oKSB7CiAgaWYgKCFnZSgncXVpY2tfbG9naW5fZnJhbWUnKSkgcmV0 dXJuIGZhbHNlOwogIGlmICghdHJpbShxZS52YWx1ZSkpIHsKICAgIG5vdGFC ZW5lKHFlKTsKICAgIHJldHVybiBmYWxzZTsKICB9IGVsc2UgaWYgKCF0cmlt KHFwLnZhbHVlKSkgewogICAgbm90YUJlbmUocXApOwogICAgcmV0dXJuIGZh bHNlOwogIH0KICBsb2NrQnV0dG9uKHdpbmRvdy5fX3FmQnRuID0gcHJnQnRu KTsKICBwcmdCdG4gPSBxbGI7CiAgY2xlYXJUaW1lb3V0KF9fcWxUaW1lcik7 CiAgX19xbFRpbWVyID0gc2V0VGltZW91dChsb2dpblN1Ym1pdEVycm9yLCAz MDAwMCk7CiAgZG9tRkMoZG9tUFMocWYpKS5vbmxvYWQgPSBmdW5jdGlvbigp IHsKICAgIGNsZWFyVGltZW91dChfX3FsVGltZXIpOwogICAgX19xbFRpbWVy ID0gc2V0VGltZW91dChsb2dpblN1Ym1pdEVycm9yLCAyNTAwKTsKICB9CiAg cmV0dXJuIHRydWU7Cn0KCndpbmRvdy5sb2dpblN1Ym1pdEVycm9yID0gZnVu Y3Rpb24oKSB7CiAgc2hvd0Zhc3RCb3goJ1dhcm5pbmcnLCAnVW5hYmxlIHRv IGNvbXBsZXRlIGVuY3J5cHRlZCBhdXRob3JpemF0aW9uLiBUaGlzIGNhbiBo YXBwZW4gaWYgeW91ciB0aGUgZGF0ZSBhbmQgdGltZSBzZXR0aW5ncyBhcmUg bm90IGNvbmZpZ3VyZWQgY29ycmVjdGx5IG9uIHlvdXIgc3lzdGVtLiBQbGVh c2UgY2hlY2sgeW91ciBkYXRlICZhbXA7IHRpbWUgc2V0dGluZ3MgYW5kIHJl c3RhcnQgdGhlIGJyb3dzZXIuJyk7Cn0Kd2luZG93LmZvY3VzTG9naW5JbnB1 dCA9IGZ1bmN0aW9uKCkgewogIHNjcm9sbFRvVG9wKDApOwogIG5vdGFCZW5l KCdxdWlja19lbWFpbCcpOwp9CndpbmRvdy5jaGFuZ2VRdWlja1JlZ0J1dHRv biA9IGZ1bmN0aW9uKG5vU2hvdykgewogIGlmIChub1Nob3cpIHsKICAgIGhp ZGUoJ3RvcF9yZWdfbGluaycsICdxdWlja19yZWdfYnV0dG9uJyk7CiAgICBz aG93KCd0b3Bfc2VhcmNoX2xpbmsnKTsKICB9IGVsc2UgewogICAgaGlkZSgn dG9wX3NlYXJjaF9saW5rJyk7CiAgICBzaG93KCd0b3BfcmVnX2xpbmsnLCAn cXVpY2tfcmVnX2J1dHRvbicpOwogIH0KICB0b2dnbGUoJ3RvcF9zd2l0Y2hf bGFuZycsIG5vU2hvdyAmJiB3aW5kb3cubGFuZ0NvbmZpZyAmJiB3aW5kb3cu bGFuZ0NvbmZpZy5pZCAhPSAzKTsKfQp3aW5kb3cuc3VibWl0UXVpY2tMb2dp bkZvcm0gPSBmdW5jdGlvbihlbWFpbCwgcGFzcywgb3B0cykgewogIHNldFF1 aWNrTG9naW5EYXRhKGVtYWlsLCBwYXNzLCBvcHRzKTsKICBpZiAob3B0cyAm JiBvcHRzLnByZykgcHJnQnRuID0gb3B0cy5wcmc7CiAgaWYgKHFmLm9uc3Vi bWl0KCkpIHFmLnN1Ym1pdCgpOwp9CndpbmRvdy5zZXRRdWlja0xvZ2luRGF0 YSA9IGZ1bmN0aW9uKGVtYWlsLCBwYXNzLCBvcHRzKSB7CiAgaWYgKGVtYWls ICE9PSB1bmRlZmluZWQpIGdlKCdxdWlja19lbWFpbCcpLnZhbHVlID0gZW1h aWw7CiAgaWYgKHBhc3MgIT09IHVuZGVmaW5lZCkgZ2UoJ3F1aWNrX3Bhc3Mn KS52YWx1ZSA9IHBhc3M7CiAgdmFyIHBhcmFtcyA9IG9wdHMgJiYgb3B0cy5w YXJhbXMgfHwge307CiAgZm9yICh2YXIgaSBpbiBwYXJhbXMpIHsKICAgIHZh ciBlbCA9IGdlKCdxdWlja19sb2dpbl8nICsgaSk7CiAgICBpZiAoZWwpIHsK ICAgICAgdmFsKGVsLCBwYXJhbXNbaV0pOwogICAgfSBlbHNlIHsKICAgICAg cWYuYXBwZW5kQ2hpbGQoY2UoJ2lucHV0Jywge3R5cGU6ICdoaWRkZW4nLCBu YW1lOiBpLCBpZDogJ3F1aWNrX2xvZ2luXycgKyBpLCB2YWx1ZTogcGFyYW1z W2ldfSkpOwogICAgfQogIH0KfQoKaWYgKHFsYikgewogIHFsYi5vbmNsaWNr ID0gZnVuY3Rpb24oKSB7IGlmIChxZi5vbnN1Ym1pdCgpKSBxZi5zdWJtaXQo KTsgfTsKfQoKaWYgKGJyb3dzZXIub3BlcmFfbW9iaWxlKSBzaG93KCdxdWlj a19leHBpcmUnKTsKCmlmICgxKSB7CiAgaGlkZSgnc3VwcG9ydF9saW5rX3Rk Jyk7Cn0KdmFyIHRzX2lucHV0ID0gZ2UoJ3RzX2lucHV0JyksIG9sZEZGID0g YnJvd3Nlci5tb3ppbGxhICYmIHBhcnNlSW50KGJyb3dzZXIudmVyc2lvbikg PCA4OwppZiAoYnJvd3Nlci5tb3ppbGxhICYmICFvbGRGRikgewogIHNldFN0 eWxlKHRzX2lucHV0LCB7cGFkZGluZzogKHZrLnJ0bCA/ICczcHggMjBweCA2 cHggNDBweCcgOiAnM3B4IDQxcHggNnB4IDIwcHgnKX0pOwp9CnBsYWNlaG9s ZGVyU2V0dXAodHNfaW5wdXQsIHtiYWNrOiBmYWxzZSwgcmVsb2FkOiB0cnVl fSk7CmlmIChicm93c2VyLm9wZXJhIHx8IGJyb3dzZXIubXNpZSB8fCBicm93 c2VyLm1vemlsbGEpIHsKICBzZXRTdHlsZSh0c19pbnB1dCwge3BhZGRpbmc6 ICh2ay5ydGwgPyAnNHB4IDIwcHggNXB4IDQwcHgnIDogJzRweCA0MXB4IDVw eCAyMHB4Jyl9KTsKfSBlbHNlIGlmIChicm93c2VyLmNocm9tZSB8fCBicm93 c2VyLnNhZmFyaSkgewogIHNldFN0eWxlKHRzX2lucHV0LCB7cGFkZGluZzog KHZrLnJ0bCA/ICc0cHggMjFweCA1cHggNDBweCcgOiAnNHB4IDQwcHggNXB4 IDIxcHgnKX0pOwp9CgpUb3BTZWFyY2guaW5pdCgpOwppZiAoYnJvd3Nlci5t c2llOCB8fCBicm93c2VyLm1zaWU3KSB7CiAgdmFyIHN0ID0ge2JvcmRlcjog JzFweCBzb2xpZCAjYTZiNmM2J307CiAgaWYgKGhhc0NsYXNzKGdlKCd0c193 cmFwJyksICd2aycpKSB7CiAgICBpZiAodmsucnRsKSBzdC5sZWZ0ID0gJzFw eCc7CiAgICBlbHNlIHN0LnJpZ2h0ID0gJzBweCc7CiAgfSBlbHNlIHsKICAg IGlmICh2ay5ydGwpIHN0LnJpZ2h0ID0gJzE0NnB4JzsKICAgIGVsc2Ugc3Qu bGVmdCA9ICcxNDZweCc7CiAgfQogIHNldFN0eWxlKGdlKCd0c19jb250X3dy YXAnKSwgc3QpOwp9CndpbmRvdy50c0hpbnRzRW5hYmxlZCA9IDE7CnNldFRp bWVvdXQoek5hdi5wYmluZChbXSwge3F1ZXVlOjF9KSwgMCk7CmhhbmRsZVBh Z2VQYXJhbXMoeyJpZCI6MCwicGFkcyI6MSwibm9fYWRzIjoxLCJsb2MiOiI/ YWN0PXMmb2lkPTM5NTc2MjIzJnZpZD0xMDgzNzA1MTUiLCJ3cmFwX3BhZ2Ui OjEsIndpZHRoIjo3OTEsIndpZHRoX2RlYyI6MTYwLCJ3aWR0aF9kZWNfZm9v dGVyIjoxMzAsImNvdW50ZXJzIjoiIiwicHZiaWciOjAsInB2ZGFyayI6MX0p O3Nob3dCYWNrTGluaygnL2RyYWttYWlsJywgJ0FsZXhhbmRlciBNYXNsb3Yn KTthZGRFdmVudChkb2N1bWVudCwgJ2NsaWNrJywgb25Eb2N1bWVudENsaWNr KTtWaWRlby5pbml0KGV4dGVuZCh7CiAgdmlkZW9MaXN0OiB7J2FsbCc6IFtb Mzk1NzYyMjMsIDE2NjMxNTU0MywgJ2h0dHA6Ly92aWRlbzQ0OC52a2FkcmUu cnUvYXNzZXRzL3RodW1ibmFpbHMvM2VkYWJmYzU3NzAzMTU4MC4zMjAudmsu anBnJywgJ9Dl6uvg7OAgJnF1b3Q7zOXt8u7xJnF1b3Q7ICjv8Ojq7uspJywg JycsICcwJywgMCwgMCwgMCwgJzA6MjknLCAnMCcsICdfYTBhMzZiNmNhM2Iy NTAwZGFlJywgJyddLFszOTU3NjIyMywgMTY1NjA3NDQ1LCAnaHR0cDovL2Nz MTI5NDcudmsubWUvdTI3MDkxNDgvdmlkZW8vbF83Y2FlYjE1ZS5qcGcnLCAn 9S/0ICZxdW90O9Hl7OXp7e7lIOTl6+4mcXVvdDsnLCAnJywgJzAnLCAwLCAw LCAwLCAnMjo0MCcsICczJywgJ185MzQ5ZjFiNDUwMTRmNjc0ZGUnLCAnJ10s WzM5NTc2MjIzLCAxNjU1NTM3NjYsICdodHRwOi8vY3M1MjY0MDQudmsubWUv dTg2MzMyMDc2L3ZpZGVvL2xfYjAwMWI3ZTMuanBnJywgJ9Ho7O/x7u37IC8g VGhlIFNpbXBzb25zIDI0IPHl5+7tIDE3IPHl8Oj/JywgJycsICcwJywgMCwg MCwgMCwgJzIxOjUyJywgJzMnLCAnX2ZjOWYwZjhmYzE0YTYzMjk0MicsICcn XSxbMzk1NzYyMjMsIDE2MTU5ODU0NCwgJ2h0dHA6Ly9jczQ2NDkudmsubWUv dTU1MTg0MDAvdmlkZW8vbF82ZWQ4NWRlMC5qcGcnLCAnSGFycnkgUGFydHJp ZGdlIC0gU2t5cmltICjw8/Hx6uD/IO7n4vP36uApJywgJycsICcwJywgMCwg MCwgMCwgJzE6MjUnLCAnMCcsICdfN2NjMTU0MjI2ZWYxMjU4MDYyJywgJydd LFszOTU3NjIyMywgMTA4MzcwNTE1LCAnaHR0cDovL3ZpZGVvNDMzLnZrYWRy ZS5ydS9hc3NldHMvdGh1bWJuYWlscy84ODYxNWNhOTgxMTk2OTAzLjMyMC52 ay5qcGcnLCAn3yDz8u736uApKSkpKScsICcnLCAnMCcsIDAsIDIsIDAsICcz OjAzJywgJzAnLCAnXzNhNTlhOTliOTg0OWQ4ZTdlMScsICcnXV19LAogIHNo b3duOiA1LAogIHZpZGVvVHBsOiBmdW5jdGlvbih2LCBjYW5lZGl0KSB7CnZh ciB0YWdMYWJlbCA9ICcnLCB0YWdzID0gJycsIHZpZGVvUmF3ID0gdlswXSAr ICdfJyArIHZbMV07CgppZiAodls4XSAmIDIpIHsKICB0YWdMYWJlbCA9ICc8 ZGl2IGNsYXNzPSJ2aWRlb190YWdfbGFiZWwiPicrZ2V0TGFuZygndmlkZW9f bmV3X3RhZycpKyc8L2Rpdj4nOwp9CmlmICh2WzEwXSkgewogIGZvciAodmFy IGkgPSAxOyBpIDw9IHZbMTBdOyBpKyspIHsKICAgIHZhciBsYWJlbCA9ICcn OwogICAgc3dpdGNoIChpKSB7CiAgICAgIGNhc2UgMzogbGFiZWwgPSA3MjA7 IGJyZWFrOwogICAgICBjYXNlIDI6IGxhYmVsID0gNDgwOyBicmVhazsKICAg ICAgZGVmYXVsdDogbGFiZWwgPSAzNjA7IGJyZWFrOwogICAgfQogICAgdGFn cyArPSAnPGEgY2xhc3M9InF1YWxpdHkgZmxfbCIgaHJlZj0iL3ZpZGVvJyAr IHZpZGVvUmF3ICsgJyIgb25jbGljaz0icmV0dXJuIFZpZGVvLnNob3coZXZl bnQsIFwnJyArIHZpZGVvUmF3ICsgJ1wnLCB7cGFyYW1zOiB7YWN0OiBcJ3No b3dcJywgdmlkZW86IFwnJyArIHZpZGVvUmF3ICsgJ1wnLCBmb3JjZV9oZDog XCcnICsgaSArICdcJywgYXV0b3BsYXk6IDF9fSk7Ij4nICsgbGFiZWwgKyAn PC9hPic7CiAgfQogIGlmICh0YWdzKSB0YWdzID0gJzxkaXYgY2xhc3M9InZp ZGVvX3F1YWxpdHkgY2xlYXJfZml4Ij4nICsgdGFncyArICc8L2Rpdj4nOwp9 CmlmICh2WzVdICYgMSkgewogIHZbM10gKz0gJzxzcGFuIGNsYXNzPSJ2aWRl b19pc19wcml2YXRlIiBvbm1vdXNlb3Zlcj0icmV0dXJuIFZpZGVvLnByaXZh dGVUb29sdGlwKHRoaXMpOyIgb25jbGljaz0icmV0dXJuIFZpZGVvLnByaXZh dGVDbGljayh0aGlzLCBldmVudCk7Ij48L3NwYW4+JzsKfQp2YXIgYWRkQnRu ID0gJyc7CmlmICghY2FuZWRpdCAmJiB2ay5pZCAmJiB2ay5pZCAhPSB2WzBd KSB7CiAgYWRkQnRuID0gJzxkaXYgY2xhc3M9InZpZGVvX3Jvd19hZGQiPjxk aXYgY2xhc3M9InZpZGVvX3Jvd19pY29uX2FkZCBmbF9sIiBvbm1vdXNlb3Zl cj0iVmlkZW8uYWN0aXZhdGUodGhpcywgXCdhZGRfdHRcJywgMSk7IiBvbm1v dXNlb3V0PSJWaWRlby5kZWFjdGl2YXRlKHRoaXMpOyIgb25jbGljaz0icmV0 dXJuIFZpZGVvLmFkZEZyb21MaXN0KFwnJyt2WzBdKydfJyt2WzFdKydcJywg XCcnK3ZbMTFdLnN1YnN0cigxKSsnXCcsIGV2ZW50KTsiPjxkaXYgY2xhc3M9 InZpZGVvX3Jvd19pY29uIj48L2Rpdj48L2Rpdj48L2Rpdj4nOwp9CnJldHVy biBycyhjdXIudmlkZW9UcGxIVE1MLCB7CiAgb2lkOiB2WzBdLAogIHZpZDog dlsxXSwKICB0aHVtYjogdlsyXSwKICB0aXRsZTogdlszXSwKICBkdXJhdGlv bjogdls5XSwKICBkZXNjcjogdls0XSwKICBhZHVsdDogdlsxM10gfHwgJycs CiAgbGlua2NsYXNzOiB2WzEyXSwKICBoYXNoOiB2WzExXSwKICBjYW5lZGl0 OiBjYW5lZGl0LAogIHJvd19hY3RzOiAnJywKICBhY3RzOiAnJywKICBuZXd0 YWdzOiB0YWdMYWJlbCwKICBhZGRidG46IGFkZEJ0biwKfSk7Cn0sCiAgYWxi dW1zVHBsOiBmdW5jdGlvbihhaWQsIHYsIHQpIHsKICByZXR1cm4gcnMoY3Vy LmFsYnVtc1RwbEhUTUwsIHsKICAgIGFsYnVtX2lkOiBhaWQsCiAgICBtYWlu X2hyZWY6ICcvdmlkZW9zMzk1NzYyMjMnLAogICAgc2VjdGlvbl9uYW1lOiAo YWlkID09IC0xKSA/ICd0YWdnZWQnIDogJ2FsYnVtXycrYWlkLAogICAgdGl0 bGU6IHQsCiAgICB0aHVtYjogdlsyXSwKICAgIGNvdW50OiB2WzNdLAogICAg bmV3X3RhZ3M6IChhaWQgPT0gLTEgJiYgY3VyLm5ld190YWdzX3N0cikgPyBj dXIubmV3X3RhZ3Nfc3RyIDogJycsCiAgICBjbGFzc19uYW1lOiAoYWlkID09 IC0xKSA/ICcnIDogJyB2aWRlb19hbGJ1bV9jYW5kcm9wJywKICAgIG5vZHJh ZzogKGFpZCA9PSAtMSkgPyAnbm9kcmFnPSIxIicgOiAnJwogIH0pOwp9LAog IHZpZGVvVHBsSFRNTDogIjxkaXYgaWQ9XCJ2aWRlb19jb250JW9pZCVfJXZp ZCVcIiBjbGFzcz1cInZpZGVvX3Jvd19jb250XCI+PGRpdiBjbGFzcz1cInZp ZGVvX3Jvd19pbm5lcl9jb250JWNhbmVkaXQlXCI+PGEgaHJlZj1cIlwvdmlk ZW8lb2lkJV8ldmlkJVwiIGNsYXNzPVwidmlkZW9fcm93X3JlbGF0aXZlJWxp bmtjbGFzcyVcIiBpZD1cInZpZGVvX3JvdyVvaWQlXyV2aWQlXCIgb25tb3Vz ZW92ZXI9XCJWaWRlby5yb3dPdmVyKHRoaXMpO1wiIG9ubW91c2VvdXQ9XCJW aWRlby5yb3dPdXQodGhpcylcIiBvbmNsaWNrPVwiaWYgKGN1ci5jYW5jZWxD bGljaykgcmV0dXJuIChjdXIuY2FuY2VsQ2xpY2sgPSBmYWxzZSk7IHJldHVy biBWaWRlby5zaG93KGV2ZW50LCAnJW9pZCVfJXZpZCUnLCB7fSwgdGhpcyk7 XCI+XG4gICAgJW5ld3RhZ3MlJWFkdWx0JVxuICAgIDxkaXYgY2xhc3M9XCJ2 aWRlb19yb3dfaW5mb19saW5lXCI+PGRpdiBjbGFzcz1cInZpZGVvX3Jhd19p bmZvX25hbWVcIj4ldGl0bGUlPFwvZGl2PjxkaXYgY2xhc3M9XCJ2aWRlb19y b3dfZHVyYXRpb25cIj4lZHVyYXRpb24lPFwvZGl2PjxcL2Rpdj5cbiAgICA8 ZGl2IGNsYXNzPVwidmlkZW9fcm93X2luZm9fcGxheVwiPjxcL2Rpdj5cbiAg ICAlYWRkYnRuJVxuICAgIDxkaXYgY2xhc3M9XCJ2aWRlb19yb3dfY29udHJv bHNcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJ2aWRlb19yb3dfaWNvbl9lZGl0 IGZsX2xcIiBvbm1vdXNlb3Zlcj1cIlZpZGVvLmFjdGl2YXRlKHRoaXMpO1wi IG9ubW91c2VvdXQ9XCJWaWRlby5kZWFjdGl2YXRlKHRoaXMpO1wiIG9uY2xp Y2s9XCJyZXR1cm4gdmlkZW92aWV3LnNob3dFZGl0Qm94KCV2aWQlLCAlb2lk JSwgZXZlbnQpO1wiPjxkaXYgY2xhc3M9XCJ2aWRlb19yb3dfaWNvblwiPjxc L2Rpdj48XC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwidmlkZW9fcm93X2lj b25fZGVsZXRlIGZsX2xcIiBvbm1vdXNlb3Zlcj1cIlZpZGVvLmFjdGl2YXRl KHRoaXMpO1wiIG9ubW91c2VvdXQ9XCJWaWRlby5kZWFjdGl2YXRlKHRoaXMp O1wiIG9uY2xpY2s9XCJyZXR1cm4gVmlkZW8ub25EZWxldGVDbGljaygldmlk JSwgJW9pZCUsICclaGFzaCUnLCB0aGlzLCBldmVudCk7XCI+PGRpdiBjbGFz cz1cInZpZGVvX3Jvd19pY29uXCI+PFwvZGl2PjxcL2Rpdj5cbiAgICAgIDxi ciBjbGFzcz1cImNsZWFyXCIgXC8+XG4gICAgPFwvZGl2PlxuICAgIDxkaXYg Y2xhc3M9XCJ2aWRlb19pbWFnZV9kaXZcIiBzdHlsZT1cImJhY2tncm91bmQt aW1hZ2U6IHVybCgnJXRodW1iJScpO1wiPjxcL2Rpdj5cbiAgPFwvYT48XC9k aXY+XG48XC9kaXY+IiwKICBhbGJ1bXNUcGxIVE1MOiAiPGEgaWQ9XCJ2aWRl b19hbGJ1bV8lYWxidW1faWQlXCIgaHJlZj1cIiVtYWluX2hyZWYlP3NlY3Rp b249JXNlY3Rpb25fbmFtZSVcIiBvbmNsaWNrPVwiaWYgKGN1ci5jYW5jZWxD bGljaykgcmV0dXJuIChjdXIuY2FuY2VsQ2xpY2sgPSBmYWxzZSk7IHJldHVy biBuYXYuY2hhbmdlKHtzZWN0aW9uOiclc2VjdGlvbl9uYW1lJSd9KTtcIiBj bGFzcz1cInZpZGVvX2FsYnVtJWNsYXNzX25hbWUlXCIgb25tb3VzZW92ZXI9 XCJWaWRlby5hbGJ1bU92ZXIodGhpcyk7XCIgb25tb3VzZW91dD1cIlZpZGVv LmFsYnVtT3V0KHRoaXMpXCIgJW5vZHJhZyU+PGRpdiBjbGFzcz1cInZpZGVv X2FsYnVtX3Jvd19pbm5lclwiPlxuICAlbmV3X3RhZ3MlXG4gIDxkaXYgY2xh c3M9XCJ2aWRlb19hbGJ1bV9jb250cm9sc1wiPlxuICAgIDxkaXYgY2xhc3M9 XCJ2aWRlb19yb3dfaWNvbl9lZGl0IGZsX2xcIiBvbm1vdXNlb3Zlcj1cIlZp ZGVvLmFjdGl2YXRlKHRoaXMpO1wiIG9ubW91c2VvdXQ9XCJWaWRlby5kZWFj dGl2YXRlKHRoaXMpO1wiIG9uY2xpY2s9XCJyZXR1cm4gVmlkZW8uZWRpdEFs YnVtKCVhbGJ1bV9pZCUsIGV2ZW50KTtcIj48ZGl2IGNsYXNzPVwidmlkZW9f cm93X2ljb25cIj48XC9kaXY+PFwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ2 aWRlb19yb3dfaWNvbl9kZWxldGUgZmxfbFwiIG9ubW91c2VvdmVyPVwiVmlk ZW8uYWN0aXZhdGUodGhpcyk7XCIgb25tb3VzZW91dD1cIlZpZGVvLmRlYWN0 aXZhdGUodGhpcyk7XCIgb25jbGljaz1cInJldHVybiBWaWRlby5kZWxldGVB bGJ1bSgnYWxidW1fJWFsYnVtX2lkJScsIGV2ZW50KTtcIj48ZGl2IGNsYXNz PVwidmlkZW9fcm93X2ljb25cIj48XC9kaXY+PFwvZGl2PlxuICAgIDxiciBj bGFzcz1cImNsZWFyXCIgXC8+XG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1c InZpZGVvX2FsYnVtX2luZm9cIj48ZGl2IGNsYXNzPVwidmlkZW9fYWxidW1f dGV4dCBmbF9sXCI+JXRpdGxlJTxcL2Rpdj48ZGl2IGNsYXNzPVwidmlkZW9f YWxidW1fY291bnQgZmxfclwiPjxkaXYgY2xhc3M9XCJ2aWRlb19yb3dfaWNv biB2aWRlb19hbGJ1bV9jb3VudF9pY29uXCI+PFwvZGl2PiVjb3VudCU8XC9k aXY+PGJyIGNsYXNzPVwiY2xlYXJcIiBcLz48XC9kaXY+XG4gIDxkaXYgY2xh c3M9XCJ2aWRlb19hbGJ1bV9iZ1wiIHN0eWxlPVwiYmFja2dyb3VuZC1pbWFn ZTogdXJsKCcldGh1bWIlJylcIj48XC9kaXY+PFwvZGl2PlxuPFwvYT4iLAog IGxhbmc6IHsidmlkZW9fTl92aWV3cyI6WyIiLCIlcyB2aWV3IiwiJXMgdmll d3MiXSwidmlkZW9fbmV3X3RhZyI6IllvdSB3ZXJlIHRhZ2dlZCBpbiBhIHZp ZGVvIiwiZ2xvYmFsX05fY29tbWVudHMiOlsiIiwiJXMgY29tbWVudCIsIiVz IGNvbW1lbnRzIl0sInZpZGVvZmlsZV9udW0iOlsiIiwidmlkZW8iLCJ2aWRl b3MiXSwidmlkZW9fbnVtX2ZvdW5kX2ZpbGVzIjpbIiIsIiVzIHZpZGVvIGZv dW5kIiwiJXMgdmlkZW9zIGZvdW5kIl0sInZpZGVvX25vdmlkZW8iOiJObyB2 aWRlb3MiLCJ2aWRlb19kZWxldGVfdGFnIjoiRGVsZXRlIFRhZyIsInZpZGVv X3N1bWFyeV90b191c2VyX3BhZ2UiOiI8YSBocmVmPVwiXC9kcmFrbWFpbFwi PmdvIHRvIEFsZXhhbmRlciYjMzk7cyBwcm9maWxlPFwvYT4iLCJ2aWRlb19Y X2NvbW1zIjpbIiIsIiVzIGNvbW1lbnQiLCIlcyBjb21tZW50cyJdLCJ2aWRl b19ub19jb21tZW50cyI6Ik5vIGNvbW1lbnRzIiwidmlkZW9fZGVsZXRlX2Fs YnVtIjoiRGVsZXRlIGZvbGRlciIsInZpZGVvX25vX2FsYnVtIjoiTm8gZm9s ZGVyIiwidmlkZW9fYWRkX3RvX2FsYnVtIjoiQWRkIHRvIGZvbGRlciIsInZp ZGVvX2NoYW5nZV9hbGJ1bSI6IntsaW5rfUZvbGRlcntcL2xpbmt9OiB7dGl0 bGV9IiwidmlkZW9fcmVtb3ZlX2FsbF90YWdzIjoiRGVsZXRlIG5ldyB0YWdz IiwidmlkZW9fdGl0bGVfWF92aWRlb3MiOlsiIiwiJXMgdmlkZW8iLCIlcyB2 aWRlb3MiXSwidmlkZW9fdGl0bGVfWF92aWRlb3NfdGFnZ2VkIjpbIiIsIiVz IHZpZGVvIG9mIHt1c2VyfSIsIiVzIHZpZGVvcyBvZiB7dXNlcn0iXSwidmlk ZW9fdGl0bGVfc2VhcmNoIjoiVmlkZW8gc2VhcmNoIHJlc3VsdHMgZm9yIHtx fSIsInZpZGVvX3RpdGxlX3NlYXJjaF9YX2ZvdW5kIjpbIiIsIiVzIFJlc3Vs dCIsIiVzIFJlc3VsdHMiXSwidmlkZW9fYWR1bHRfYm94X3RpdGxlIjoiU2Fm ZSBzZWFyY2giLCJ2aWRlb19hZHVsdF9ib3hfdGV4dCI6IlNhZmUgc2VhcmNo IHByZXZlbnRzIHJlcG9ydGVkIGFkdWx0IGNvbnRlbnQgZnJvbSBzaG93aW5n IHVwIGluIHlvdXIgc2VhcmNoIHJlc3VsdHMuPGJyPjxicj5CeSBkaXNhYmxp bmcgc2FmZSBzZWFyY2ggeW91IGNvbmZpcm0gdGhhdCB5b3UgaGF2ZSByZWFj aGVkIGFuIGFwcHJvcHJpYXRlIGFnZSBmb3Igdmlld2luZyBzdWNoIGNvbnRl bnQuIiwidmlkZW9fY2xhaW1zX25vX3VwbG9hZCI6IllvdSBjYW5ub3QgdXBs b2FkIGFueSBtb3JlIHZpZGVvcywgZHVlIHRvIG51bWVyb3VzIGNvcHlyaWdo dC1yZWxhdGVkIGNvbXBsYWludHMuIiwidmlkZW9fbm9fdXBsb2FkX3RpdGxl IjoiVXBsb2FkaW5nIHVuYXZhaWxhYmxlIiwidmlkZW9fZHJvcF90b19tb3Zl IjoiUmVsZWFzZSB0byBtb3ZlIHZpZGVvIHRvIGZvbGRlciIsInZpZGVvX2Fs YnVtc19mb3VuZF9zdW1tYXJ5IjpbIiIsIiVzIGZvbGRlciBmb3VuZCIsIiVz IGZvbGRlcnMgZm91bmQiXSwidmlkZW9fYWxidW1zX3N1bW1hcnkiOlsiIiwi QWxleGFuZGVyIGhhcyAlcyBmb2xkZXIiLCJBbGV4YW5kZXIgaGFzICVzIGZv bGRlcnMiXSwidmlkZW9fc2hvd19hbGxfYWxidW1zIjpbIiIsIlNob3cgb25l IG1vcmUgZm9sZGVyIiwiU2hvdyAlcyBtb3JlIGZvbGRlcnMiXSwidmlkZW9f Y29tbWVudHNfcmV2aWV3IjoiQnJvd3NlIGNvbW1lbnRzIiwidmlkZW9faXNf cHJpdmF0ZV90dCI6IlRoaXMgdmlkZW8gaXMgcHJpdmF0ZSIsInZpZGVvX2Fk ZF90dCI6IkFkZCB0byBteSB2aWRlb3MiLCJ2aWRlb19wbGVhc2Vfc2lnbl9p biI6IlBsZWFzZSBsb2cgaW4gb3IgPGEgaHJlZj1cIlwvam9pblwiIG9uY2xp Y2s9XCJyZXR1cm4gIXNob3dCb3goJ2pvaW4ucGhwJywge2FjdDogJ2JveCcs IGZyb206IG5hdi5zdHJMb2N9LCB7fSwgZXZlbnQpXCI+c2lnbiB1cDxcL2E+ IHRvIHZpZXcgdGhpcyB2aWRlby4ifSwKICBvaWQ6IDM5NTc2MjIzLAogIHZT ZWN0aW9uOiAnYWxsJwp9LCB7InBlclBhZ2UiOjIwLCJoYXNoIjoiZjI5NWQw ZjE3MzYyOGJhNzc1IiwidmlkZW9Db3VudCI6NSwic2VjdGlvbnMiOltdLCJ1 cGxvYWRCYW5uZWQiOmZhbHNlLCJodGl0bGVfdmlkZW9zIjoiIEFsZXhhbmRl ciBNYXNsb3YmIzM5O3MgVmlkZW9zIiwiaHRpdGxlX2NvbW1lbnRzIjoiQ29t bWVudHMgQWxleGFuZGVyIE1hc2xvdiYjMzk7cyBWaWRlb3MiLCJodGl0bGVf dGFnZ2VkX3VzZXIiOiJBbGV4YW5kZXIiLCJ2U3RyIjoiXCJcIiIsIm1vdmVI YXNoIjoiMDE4MzUyNDUyMTBiNGMwZjIxIn0pKTsKd2luZG93LnJhZGlvQnRu c1snbGVuZ3RoJ10gPSB7CiAgZWxzOiBBcnJheS5wcm90b3R5cGUuc2xpY2Uu YXBwbHkoZ2VCeUNsYXNzKCdyYWRpb2J0bicsIGdlKCd2aWRlb19sZW5ndGhf ZmlsdGVyJykpKSwKICB2YWw6IDAKfTsKdmFyIGZpbHRlclR5cGVzID0gW1sy LCAnQnkgcmVsZXZhbmNlJ10sIFswLCAnQnkgZGF0ZSBhZGRlZCddLCBbMSwg J1NvcnQgYnkgZHVyYXRpb24nXV07CmlmIChjdXIuc29ydEREKSB7CiAgcmUo Y3VyLnNvcnRERC5jb250YWluZXIpOwp9CmN1ci5zb3J0REQgPSBuZXcgRHJv cGRvd25NZW51KGZpbHRlclR5cGVzLCB7CiAgdGFyZ2V0OiBnZSgndmlkZW9f c29ydF9kZCcpLAogIHZhbHVlOiAyLAogIGZhZGVTcGVlZDogMCwKICBvblNl bGVjdDogZnVuY3Rpb24oZXZlbnQpIHsKICAgIGlmIChldmVudCkgVmlkZW8u dG9nZ2xlT3JkZXIoZXZlbnQudGFyZ2V0LmluZGV4IHx8IDApOwogIH0KfSk7 CmlmIChnZSgndmlkZW9fZXh0ZXJuYWxfZGQnKSkgewogIHZhciBleHRUeXBl cyA9IFtbMCwgJ0FsbCB2aWRlb3MnXSwgWy0xLCAnVksnXSwgWzEsICdZb3V0 dWJlJ10sIFsyLCAnVmltZW8nXSwgWzMsICdSdVR1YmUnXSwgWzMyLCAnS2lu b3BvaXNrJ10sIFszMywgJ01vbG9kZWpqLnR2J10sIFszNCwgJ0NhcmFtYmFU ViddXTsKICBjdXIuZXh0REQgPSBuZXcgRHJvcGRvd25NZW51KGV4dFR5cGVz LCB7CiAgICB0YXJnZXQ6IGdlKCd2aWRlb19leHRlcm5hbF9kZCcpLAogICAg dmFsdWU6IDAsCiAgICBmYWRlU3BlZWQ6IDAsCiAgICBvblNlbGVjdDogZnVu Y3Rpb24oZXZlbnQpIHsKICAgICAgaWYgKGV2ZW50KSBWaWRlby50b2dnbGVF eHQoZXZlbnQudGFyZ2V0LmluZGV4IHx8IDApOwogICAgfQogIH0pOwp9Cgph amF4LnByZWxvYWQoJ2FsX3ZpZGVvLnBocCcsIHsiYWN0Ijoic2hvdyIsInZp ZGVvIjoiMzk1NzYyMjNfMTA4MzcwNTE1In0sIFsi3yDz8u736uApKSkpKSIs IjxkaXYgY2xhc3M9XCJ2aWRlb19ib3hcIj5cbiAgPGRpdiBjbGFzcz1cIndy YXBcIj5cbiAgICA8ZGl2IGlkPVwidmlkZW9fYmFja2dyb3VuZDM5NTc2MjIz XzEwODM3MDUxNVwiIGFsaWduPVwiY2VudGVyXCI+XG4gICAgICA8aW1nIHNy Yz1cImh0dHA6XC9cL3ZpZGVvNDMzLnZrYWRyZS5ydVwvYXNzZXRzXC90aHVt Ym5haWxzXC84ODYxNWNhOTgxMTk2OTAzLjMyMC52ay5qcGdcIiBzdHlsZT1c IndpZHRoOiA0ODBweDsgaGVpZ2h0OiAzNjBweDtcIiBcLz5cbiAgICA8XC9k aXY+XG4gICAgPGRpdiBpZD1cInZpZGVvX2JveF93cmFwMzk1NzYyMjNfMTA4 MzcwNTE1XCIgY2xhc3M9XCJ2aWRlb19ib3hfd3JhcFwiPlxuICAgICAgPGRp diBjbGFzcz1cInBhZ2Vfbm9fZmxhc2hfd3JhcFwiPlxuICAgICAgICA8ZGl2 IGNsYXNzPVwidmlkZW9fbm9fZmxhc2hcIj5cbiAgICAgICAgICA8ZGl2PlRo ZSBsYXRlc3QgdmVyc2lvbiBvZiA8YSBocmVmPVwiaHR0cDpcL1wvZ2V0LmFk b2JlLmNvbVwvZmxhc2hcIj5GbGFzaCBQbGF5ZXI8XC9hPiBpcyByZXF1aXJl ZCB0byB2aWV3IHZpZGVvcy48XC9kaXY+XG4gICAgICAgIDxcL2Rpdj5cbiAg ICAgIDxcL2Rpdj5cbiAgICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj4i LCJjdXIuYWRkTWVWaWRlbyA9IGZ1bmN0aW9uKCkge1xuICBpZiAoaXNWaXNp YmxlKGJveC5wcm9ncmVzcykpIHJldHVybjtcblxuICB2YXIgdG9SZXBsYWNl ID0gW107XG4gIGZvciAodmFyIGkgPSAwOyBpIDwgYXJndW1lbnRzLmxlbmd0 aDsgKytpKSB7XG4gICAgdG9SZXBsYWNlLnB1c2goYXJndW1lbnRzW2ldKTtc biAgfVxuICBjdXIucmVsb2FkQWZ0ZXJDbG9zZSA9IHRydWU7XG4gIGFqYXgu cG9zdCgndmlkZW8ucGhwJywge2FjdDogJ2FfYWRkJywgdmlkZW86ICczOTU3 NjIyM18xMDgzNzA1MTUnLCBoYXNoOiAnM2E1OWE5OWI5ODQ5ZDhlN2UxJywg ZnJvbTogY3VyLnNlY3Rpb259LCB7XG4gICAgb25Eb25lOiBmdW5jdGlvbigp IHtcbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdG9SZXBsYWNlLmxlbmd0 aDsgKytpKSB7XG4gICAgICAgIHZhciBlbCA9IGdlKHRvUmVwbGFjZVtpXSk7 XG4gICAgICAgIGlmIChlbCkge1xuICAgICAgICAgIGlmIChpIDwgYXJndW1l bnRzLmxlbmd0aCkge1xuICAgICAgICAgICAgZWwucGFyZW50Tm9kZS5pbm5l ckhUTUwgPSBhcmd1bWVudHNbaV07XG4gICAgICAgICAgfSBlbHNlIHtcbiAg ICAgICAgICAgIGhpZGUoZWwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxu ICAgICAgfVxuICAgIH0sXG4gICAgc2hvd1Byb2dyZXNzOiBib3guc2hvd1By b2dyZXNzLFxuICAgIGhpZGVQcm9ncmVzczogYm94LmhpZGVQcm9ncmVzc1xu ICB9KTtcbn1cblxud2luZG93LmluY1ZpZXdDb3VudGVyID0gZnVuY3Rpb24o b2lkLCB2aWQsIGhhc2gpIHtcbiAgYWpheC5wb3N0KCdhbF92aWRlby5waHAn LCB7YWN0OiAnaW5jX3ZpZXdfY291bnRlcicsIG9pZDogb2lkLCB2aWQ6IHZp ZCwgaGFzaDogaGFzaH0sIHtcbiAgICBvbkRvbmU6IGZ1bmN0aW9uKHQpIHt9 XG4gIH0pO1xufVxuXG53aW5kb3cucm90YXRlVmlkZW8gPSBmdW5jdGlvbihv aWQsIHZpZCwgYW5nbGUsIGhhc2gpIHtcbiAgXC9cLyBhamF4LnBvc3QoJ2Fs X3ZpZGVvLnBocCcsIHthY3Q6ICdyb3RhdGVfdmlkZW8nLCBvaWQ6IG9pZCwg dmlkOiB2aWQsIGFuZ2xlOiBhbmdsZSwgaGFzaDogaGFzaH0sIHtcbiAgXC9c LyAgIG9uRG9uZTogZnVuY3Rpb24odCkge31cbiAgXC9cLyB9KTtcbn1cblxu d2luZG93LmNoYW5nZUNhbnZhc1NpemUgPSBmdW5jdGlvbih3LCBoKSB7XG4g IGlmICh0eXBlb2YobXZjdXIpICE9ICd1bmRlZmluZWQnICYmIG12Y3VyLmNo YW5nZUNhbnZhc1NpemUpIHtcbiAgICBtdmN1ci5jaGFuZ2VDYW52YXNTaXpl KCk7XG4gIH1cbiAgaWYgKCFicm93c2VyLm9wZXJhIHx8IGludHZhbChicm93 c2VyLnZlcnNpb24pID49IDEwKSB7XG4gICAgaGlkZSgndmlkZW9fYmFja2dy b3VuZDM5NTc2MjIzXzEwODM3MDUxNScpO1xuICAgIHNldFN0eWxlKGdlKCd2 aWRlb19wbGF5ZXInKSwge3dpZHRoOiB3LCBoZWlnaHQ6IGh9KTtcbiAgICBz ZXRTdHlsZShnZSgndmlkZW9fYm94X3dyYXAzOTU3NjIyM18xMDgzNzA1MTUn KSwge3dpZHRoOiB3LCBoZWlnaHQ6IGh9KTtcbiAgICBpZiAoYm94KSB7XG4g ICAgICBib3guc2V0T3B0aW9ucyh7d2lkdGg6IHcgKyAyMn0pO1xuICAgIH1c biAgfVxufTtcblxudmFyIF9uID0gd2luZG93Lk5vdGlmaWVyO1xuaWYgKF9u KSB7XG4gIF9uLmFkZFJlY3ZDbGJrKCdhdWRpb19zdGFydCcsICd2aWRlbycs IGZ1bmN0aW9uIChkYXRhKSB7XG4gICAgaWYgKGdlKCd2aWRlb19wbGF5ZXIn KSAmJiBnZSgndmlkZW9fcGxheWVyJykucGxheVZpZGVvKSBnZSgndmlkZW9f cGxheWVyJykucGxheVZpZGVvKGZhbHNlKTtcbiAgfSk7XG4gIF9uLmFkZFJl Y3ZDbGJrKCd2aWRlb19zdGFydCcsICd2aWRlbycsIGZ1bmN0aW9uIChkYXRh KSB7XG4gICAgaWYgKGdlKCd2aWRlb19wbGF5ZXInKSAmJiBnZSgndmlkZW9f cGxheWVyJykucGxheVZpZGVvKSBnZSgndmlkZW9fcGxheWVyJykucGxheVZp ZGVvKGZhbHNlKTtcbiAgfSk7XG4gIF9uLmFkZFJlY3ZDbGJrKCd2aWRlb2Nh bGxfc3RhcnQnLCAndmlkZW8nLCBmdW5jdGlvbiAoZGF0YSkge1xuICAgIGlm IChnZSgndmlkZW9fcGxheWVyJykgJiYgZ2UoJ3ZpZGVvX3BsYXllcicpLnBs YXlWaWRlbykgZ2UoJ3ZpZGVvX3BsYXllcicpLnBsYXlWaWRlbyhmYWxzZSk7 XG4gIH0pO1xufVxudmFyIHZhcnMgPSB7XCJ1aWRcIjpcIjBcIixcInZpZFwi OjEwODM3MDUxNSxcIm9pZFwiOjM5NTc2MjIzLFwiaG9zdFwiOlwidmlkZW80 MzMudmthZHJlLnJ1XCIsXCJ2dGFnXCI6XCI1N2E0ZjI1YzkzYWMtXCIsXCJs dGFnXCI6XCI4ODYxNWNhOVwiLFwidmtpZFwiOjgxMTk2OTAzLFwibWRfdGl0 bGVcIjpcIt8g8/Lu9+rgKSkpKSlcIixcIm1kX2F1dGhvclwiOlwiQWxleGFu ZGVyIE1hc2xvdlwiLFwiaGRcIjowLjAwMDAwMCxcIm5vX2ZsdlwiOjAsXCJo ZF9kZWZcIjotMSxcImRiZ19vblwiOjAsXCJ0XCI6XCJcIixcImFuZ2xlXCI6 MC4wMDAwMDAsXCJpbWdfYW5nbGVcIjowLjAwMDAwMCxcInJlcGVhdFwiOjAs XCJzaG93X2Fkc1wiOjAsXCJwdWlkMVwiOjIsXCJwdWlkMjJcIjoxNCxcInB1 aWQzN1wiOlwiXCIsXCJwdWlkMzhcIjpcIlwiLFwiY2FuX3JvdGF0ZVwiOjEs XCJoYXNoXCI6XCJiZTcwZWU1MTI1MDc3NzFhMDA3MWM5YjUzN2FmY2FkYlwi LFwiaGFzaDJcIjpcIjE1MTg0ZGJkMDg1YzQ3YWZcIixcImlzX3ZrXCI6XCIx XCIsXCJpc19leHRcIjpcIjBcIixcInJlZmVycmVyXCI6XCJcIixcImxhbmdf YWRkXCI6XCJBZGQgdG8gTXkgVmlkZW9zXCIsXCJsYW5nX2FkZGVkXCI6XCJW aWRlbyBhZGRlZCB0byBNeSBWaWRlb3NcIixcImxhbmdfc2hhcmVcIjpcIlNo YXJlXCIsXCJsYW5nX2xpa2VcIjpcIkxpa2VcIixcImxhbmdfdm9sdW1lX29u XCI6XCJVbm11dGVcIixcImxhbmdfdm9sdW1lX29mZlwiOlwiTXV0ZVwiLFwi bGFuZ192b2x1bWVcIjpcIlZvbHVtZVwiLFwibGFuZ19oZHNkXCI6XCJDaGFu Z2UgVmlkZW8gUXVhbGl0eVwiLFwibGFuZ19mdWxsc2NyZWVuXCI6XCJGdWxs IFNjcmVlblwiLFwibGFuZ193aW5kb3dcIjpcIk1pbmltaXplXCIsXCJsYW5n X3JvdGF0ZVwiOlwiUm90YXRlXCIsXCJsYW5nX2Fkc19saW5rXCI6XCJBZHZl cnRpc2VyJiMzOTtzIFNpdGVcIixcImxhbmdfYWRzXCI6XCJBZHNcIixcImxh bmdfYWRzX3NraXBcIjpcIlNraXAgYWRcIixcImxhbmdfYWRzX3NraXBfdGlt ZVwiOlwiU2tpcCBhZHMgaW4ge3RpbWV9XCIsXCJsYW5nX3JlcG9ydF9wcm9i bGVtXCI6XCJSZXBvcnQgYSBwcm9ibGVtLi5cIixcInZpZGVvX3BsYXlfaGRc IjpcIldhdGNoIGluIEhEXCIsXCJ2aWRlb19zdG9wX2xvYWRpbmdcIjpcIlN0 b3AgRG93bmxvYWRcIixcInZpZGVvX3BsYXllcl92ZXJzaW9uXCI6XCJWSyBW aWRlbyBQbGF5ZXJcIixcInZpZGVvX3BsYXllcl9hdXRob3JcIjpcIkF1dGhv ciAtIEFsZXhleSBLaGFya292XCIsXCJnb3RvX29yaWdfdmlkZW9cIjpcIkdv IHRvIFZpZGVvXCIsXCJ2aWRlb19nZXRfdmlkZW9fY29kZVwiOlwiQ29weSB2 aWRlbyBjb2RlXCIsXCJ2aWRlb19sb2FkX2Vycm9yXCI6XCJUaGUgdmlkZW8g aGFzIG5vdCB1cGxvYWRlZCB5ZXQgb3IgdGhlIHNlcnZlciBpcyBub3QgYXZh aWxhYmxlXCIsXCJ2aWRlb19nZXRfY3VycmVudF91cmxcIjpcIkNvcHkgZnJh bWUgbGlua1wiLFwidXJsMjQwXCI6XCJodHRwOlxcXC9cXFwvdmlkZW80MzMu dmthZHJlLnJ1XFxcL2Fzc2V0c1xcXC92aWRlb1xcXC81N2E0ZjI1YzkzYWMt ODExOTY5MDMudmsuZmx2XCIsXCJqcGdcIjpcImh0dHA6XFxcL1xcXC92aWRl bzQzMy52a2FkcmUucnVcXFwvYXNzZXRzXFxcL3RodW1ibmFpbHNcXFwvODg2 MTVjYTk4MTE5NjkwMy4zMjAudmsuanBnXCIsXCJpcF9zdWJtXCI6MSxcIm5v bG9nb1wiOjEsXCJsaWtlZFwiOjAsXCJhZGRfaGFzaFwiOlwiM2E1OWE5OWI5 ODQ5ZDhlN2UxXCIsXCJhZGRlZFwiOjF9O1xudmFyIGFsbG93X2h0bWw1ID0g MDtcbnZhciBjaGVja0h0bWw1VmlkZW8gPSBmdW5jdGlvbigpIHtcbiAgdmFy IHYgPSBjZSgndmlkZW8nKSwgY2FuUGxheSA9IHYuY2FuUGxheVR5cGUoJ3Zp ZGVvXC9tcDQnKTtcbiAgcmV0dXJuIChjYW5QbGF5ICE9ICdubycpICYmIChj YW5QbGF5ICE9ICcnKTtcbn1cbmxvYWRIdG1sNVBsYXllciA9IGZ1bmN0aW9u KCkge1xuICBpZiAoIWNoZWNrSHRtbDVWaWRlbygpIHx8ICF2YXJzLm5vX2Zs dikge1xuICAgIHN0TWFuYWdlci5hZGQoJ3BhZ2UuY3NzJyk7XG4gICAgcmV0 dXJuO1xuICB9XG4gIHZhciBwbGF5ZXJXcmFwID0gZ2UoJ3ZpZGVvX2JveF93 cmFwMzk1NzYyMjNfMTA4MzcwNTE1Jyk7XG4gIGlmIChwYXJzZUludCgnMCcp KSB7XG4gICAgdmFyIHNpemUgPSBnZXRTaXplKHBsYXllcldyYXAucGFyZW50 Tm9kZSk7XG4gIH0gZWxzZSB7XG4gICAgdmFyIHNpemUgPSBbNzIwLCA0MTBd O1xuICB9XG4gIGhpZGUoJ3ZpZGVvX2JhY2tncm91bmQzOTU3NjIyM18xMDgz NzA1MTUnKTtcbiAgcGxheWVyV3JhcC5pbm5lckhUTUwgPSAnJztcbiAgc3RN YW5hZ2VyLmFkZChbJ2h0bWw1dmlkZW8uanMnLCAnaHRtbDV2aWRlby5jc3Mn XSwgZnVuY3Rpb24oKSB7XG4gICAgaHRtbDV2aWRlby5pbml0SFRNTDVWaWRl byh2YXJzLCBzaXplWzBdLCBzaXplWzFdKTtcbiAgfSk7XG59XG53aW5kb3cu dmlkZW9fYm94X2lkID0gJ3ZpZGVvX2JveF93cmFwMzk1NzYyMjNfMTA4Mzcw NTE1JztcblxudmFyIG9wdHMgPSB7XG4gIHVybDogJ1wvc3dmXC92aWRlby5z d2Y/MTcnLFxuICBpZDogJ3ZpZGVvX3BsYXllcicsXG4gIHdpZHRoOiA3MjAs XG4gIGhlaWdodDogNDEwLFxuICB2ZXJzaW9uOiAxMFxufVxuXG5pZiAoYnJv d3Nlci5mbGFzaCA8IDEwKSB7XG4gIGxvYWRIdG1sNVBsYXllcigpO1xuICBy ZXR1cm47XG59XG5cbnZhciBwbGF5ZXJXcmFwID0gZ2UoJ3ZpZGVvX2JveF93 cmFwMzk1NzYyMjNfMTA4MzcwNTE1Jyk7XG5oaWRlKCd2aWRlb19iYWNrZ3Jv dW5kMzk1NzYyMjNfMTA4MzcwNTE1Jyk7XG5wbGF5ZXJXcmFwLmlubmVySFRN TCA9ICcnO1xuXG52YXIgcGFyYW1zID0ge1xuICBhbGxvd2Z1bGxzY3JlZW46 ICd0cnVlJyxcbiAgYWxsb3dzY3JpcHRhY2Nlc3M6ICdhbHdheXMnXG59XG5c L1wvaWYgKGJyb3dzZXIubXNpZSB8fCBicm93c2VyLmNocm9tZSkge1xuICBv cHRzLnByZXZlbnRoaWRlID0gMTtcbiAgcGFyYW1zLndtb2RlID0gJ29wYXF1 ZSc7XG5cL1wvfVxuc2V0U3R5bGUocGxheWVyV3JhcCwge3dpZHRoOiBvcHRz LndpZHRoLCBoZWlnaHQ6IG9wdHMuaGVpZ2h0fSk7XG5cbndpbmRvdy52aWRl b19ob3N0ID0gdmFycy5ob3N0O1xud2luZG93LnZpZGVvX3VpZCA9IHZhcnMu dWlkO1xud2luZG93LnZpZGVvX3Z0YWcgPSB2YXJzLnZ0YWc7XG53aW5kb3cu dmlkZW9fbm9fZmx2ID0gdmFycy5ub19mbHY7XG53aW5kb3cudmlkZW9fbWF4 X2hkID0gdmFycy5oZDtcbndpbmRvdy52aWRlb190aXRsZSA9IHZhcnMubWRf dGl0bGU7XG53aW5kb3cudmlkZW9fYXV0aG9yID0gdmFycy5tZF9hdXRob3I7 XG53aW5kb3cuZml4ZWRfcGxheWVyX3NpemUgPSB0cnVlO1xuXG5yZW5kZXJG bGFzaChwbGF5ZXJXcmFwLCBvcHRzLCBwYXJhbXMsIHZhcnMpO1xubXZjdXIu bXZEYXRhLmFkZGVkVmlkZW8gPSAnMzk1NzYyMjNfMTA4MzcwNTE1JzsgXG5t dmN1ci5tdkRhdGEuYWRkZWRWaWRlb0hhc2ggPSAnMzk2ZWI1ZWRiZmNiYzNj OTNjJzsgXG5tdmN1ci5tdkRhdGEuYWRkZWRWaWRlb1NoYXJlSGFzaCA9ICcw MzgxNmNiOGEzNmQ4MGUwNTEnO1xubXZjdXIubXZEYXRhLm5lZWRzTmV3ID0g MTsiLCI8ZGl2IGlkPVwibXZfZGVzY3JpcHRpb25cIiBjbGFzcz1cIm12X2Rl c2NcIj798u4gwsfQ28IgzM7Hw8AmIzMzOyYjMzM7JiMzMzs8YnI+z/Du8fLu IO7y4uDrIOHg+OroLi4uPFwvZGl2PjxkaXYgaWQ9XCJtdl9hY3Rpb25faW5m b1wiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIj48XC9kaXY+PGRpdiBpZD1c Im12X3RhZ3NcIiBzdHlsZT1cImRpc3BsYXk6IG5vbmU7XCI+SW4gdGhpcyB2 aWRlbzo8c3BhbiBpZD1cIm12X3RhZ3NfbGlzdFwiPjxcL3NwYW4+PFwvZGl2 PjxkaXYgaWQ9XCJtdl9kYXRlX3dyYXBcIiBjbGFzcz1cImZsX2xcIj5BZGRl ZCBKdW4gMSwgMjAwOSBhdCAxMDo0MSBwbTxcL2Rpdj48YnIgY2xhc3M9XCJj bGVhclwiIFwvPjxkaXYgaWQ9XCJtdl9jb21tZW50c193cmFwXCI+XG4gIDxk aXYgaWQ9XCJtdl9jb21tZW50c19oZWFkZXJcIiBvbmNsaWNrPVwidmlkZW92 aWV3LmNvbW1lbnRzKCk7XCIgc3R5bGU9XCJkaXNwbGF5OiBub25lO1wiPjxc L2Rpdj5cbiAgPGRpdiBpZD1cIm12X2NvbW1lbnRzXCIgY2xhc3M9XCJ3YWxs X21vZHVsZVwiPjxkaXYgY2xhc3M9XCJjbGVhcl9maXggbXZfY29tbWVudCBc IiBpZD1cIm12X2NvbW1lbnQzOTU3NjIyM18xXCIgb25jbGljaz1cIlZpZGVv dmlldy5jb21tZW50Q2xpY2sodGhpcywgZXZlbnQsIDI3MDkxNDgpXCIgb25t b3VzZW92ZXI9XCJXYWxsLnJlcGx5T3ZlcignMzk1NzYyMjN2aWRlb18xbXYn KVwiIG9ubW91c2VvdXQ9XCJXYWxsLnJlcGx5T3V0KCczOTU3NjIyM3ZpZGVv XzFtdicpXCI+PGRpdiBjbGFzcz1cInJlcGx5X3RhYmxlXCI+XG4gIDxkaXYg Y2xhc3M9XCJmbF9sIG12X3RodW1iXCI+XG4gICAgPGEgaHJlZj1cIlwvYXJ0 cnVsa1wiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2ZW50KTtc Ij48aW1nIHNyYz1cImh0dHA6XC9cL2NzNzAxMS52ay5tZVwvYzMyMDYyMVwv djMyMDYyMTE0OFwvNDAwOFwvS01mWEM4Z2ZQc28uanBnXCIgXC8+PFwvYT5c biAgPFwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiZmxfbCBtdl9jb21tXCI+XG4g ICAgPGRpdiBjbGFzcz1cImZsX3IgcmVwbHlfYWN0aW9uc193cmFwXCI+PGRp diBjbGFzcz1cInJlcGx5X2FjdGlvbnNcIj48ZGl2IGlkPVwicmVwbHlfZGVs ZXRlMzk1NzYyMjN2aWRlb18xbXZcIiBjbGFzcz1cInJlcGx5X2RlbGV0ZV9i dXR0b24gZmxfclwiIG9uY2xpY2s9XCJWaWRlb3ZpZXcuY29tbUFjdGlvbign c3BhbScsICczOTU3NjIyM18xJywgJzM5YzM5NjAyMGJhZDM4MDE5OScsICdt dicpXCIgb25tb3VzZW92ZXI9XCJXYWxsLmFjdGl2ZURlbGV0ZVBvc3QoJzM5 NTc2MjIzdmlkZW9fMW12JywgJ1JlcG9ydCBzcGFtJywgJ3JlcGx5X2RlbGV0 ZScpXCIgb25tb3VzZW91dD1cIldhbGwuZGVhY3RpdmVEZWxldGVQb3N0KCcz OTU3NjIyM3ZpZGVvXzFtdicsICdyZXBseV9kZWxldGUnKVwiPjxcL2Rpdj48 XC9kaXY+PFwvZGl2PlxuICAgIDxhIGhyZWY9XCJcL2FydHJ1bGtcIiBjbGFz cz1cImF1dGhvclwiIG9uY2xpY2s9XCJyZXR1cm4gbmF2LmdvKHRoaXMsIGV2 ZW50KTtcIj5BcnR5b20gQW50b255YW48XC9hPlxuICAgIDxkaXYgaWQ9XCJ3 cHQzOTU3NjIyM3ZpZGVvXzFtdlwiPjxkaXYgY2xhc3M9XCJtdl9jb21tdGV4 dFwiPsrz8/Pz8/Pz8/Pz8/Pz8OXl5eXl5eXl5eXl5eXl4u4g3fLuIOL7IOLx 5SDy4Oro5SDt4CDE5ev88uAg8eXw4uXw5T88XC9kaXY+PFwvZGl2PlxuICAg IDxkaXYgY2xhc3M9XCJsaWtlX3dyYXAgZmxfclwiIG9uY2xpY2s9XCJXYWxs Lmxpa2UoJzM5NTc2MjIzdmlkZW9fY29tbWVudDFtdicsICcnKTsgZXZlbnQu Y2FuY2VsQnViYmxlID0gdHJ1ZTtcIiBvbm1vdXNlb3Zlcj1cIldhbGwubGlr ZU92ZXIoJzM5NTc2MjIzdmlkZW9fY29tbWVudDFtdicpXCIgb25tb3VzZW91 dD1cIldhbGwubGlrZU91dCgnMzk1NzYyMjN2aWRlb19jb21tZW50MW12Jylc Ij5cbiAgPHNwYW4gY2xhc3M9XCJsaWtlX2xpbmsgZmxfbFwiIGlkPVwibGlr ZV9saW5rMzk1NzYyMjN2aWRlb19jb21tZW50MW12XCI+PFwvc3Bhbj5cbiAg PGkgY2xhc3M9XCJub19saWtlcyBmbF9sXCIgaWQ9XCJsaWtlX2ljb24zOTU3 NjIyM3ZpZGVvX2NvbW1lbnQxbXZcIj48XC9pPlxuICA8c3BhbiBjbGFzcz1c Imxpa2VfY291bnQgZmxfbFwiIGlkPVwibGlrZV9jb3VudDM5NTc2MjIzdmlk ZW9fY29tbWVudDFtdlwiPjxcL3NwYW4+XG48XC9kaXY+XG4gICAgPGRpdiBj bGFzcz1cIm12X2NvbW1kYXRhXCIgaWQ9XCJ3cGVfYm90dG9tMzk1NzYyMjN2 aWRlb18xbXZcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiZmxfbFwiPjIgSnVu IDIwMDk8XC9zcGFuPlxuICAgICAgPGRpdiBjbGFzcz1cImZsX3IgcHJvZ3Jl c3NcIiBpZD1cIm12X3Byb2dyZXNzMzk1NzYyMjNfMVwiPjxcL2Rpdj5cbiAg ICA8XC9kaXY+XG4gIDxcL2Rpdj5cbjxcL2Rpdj48XC9kaXY+PGRpdiBjbGFz cz1cImNsZWFyX2ZpeCBtdl9jb21tZW50IFwiIGlkPVwibXZfY29tbWVudDM5 NTc2MjIzXzJcIiBvbmNsaWNrPVwiVmlkZW92aWV3LmNvbW1lbnRDbGljayh0 aGlzLCBldmVudCwgNDA5ODAzMylcIiBvbm1vdXNlb3Zlcj1cIldhbGwucmVw bHlPdmVyKCczOTU3NjIyM3ZpZGVvXzJtdicpXCIgb25tb3VzZW91dD1cIldh bGwucmVwbHlPdXQoJzM5NTc2MjIzdmlkZW9fMm12JylcIj48ZGl2IGNsYXNz PVwicmVwbHlfdGFibGVcIj5cbiAgPGRpdiBjbGFzcz1cImZsX2wgbXZfdGh1 bWJcIj5cbiAgICA8YSBocmVmPVwiXC9qdXN0X293aW5nXCIgb25jbGljaz1c InJldHVybiBuYXYuZ28odGhpcywgZXZlbnQpO1wiPjxpbWcgc3JjPVwiaHR0 cDpcL1wvY3M0MTYzMjIudmsubWVcL3Y0MTYzMjIwMzNcLzZmMTFcLy14MWdy MnVhZHJzLmpwZ1wiIFwvPjxcL2E+XG4gIDxcL2Rpdj5cbiAgPGRpdiBjbGFz cz1cImZsX2wgbXZfY29tbVwiPlxuICAgIDxkaXYgY2xhc3M9XCJmbF9yIHJl cGx5X2FjdGlvbnNfd3JhcFwiPjxkaXYgY2xhc3M9XCJyZXBseV9hY3Rpb25z XCI+PGRpdiBpZD1cInJlcGx5X2RlbGV0ZTM5NTc2MjIzdmlkZW9fMm12XCIg Y2xhc3M9XCJyZXBseV9kZWxldGVfYnV0dG9uIGZsX3JcIiBvbmNsaWNrPVwi VmlkZW92aWV3LmNvbW1BY3Rpb24oJ3NwYW0nLCAnMzk1NzYyMjNfMicsICcw NGEzOWU0ZDgyNTAwOTQ1OTYnLCAnbXYnKVwiIG9ubW91c2VvdmVyPVwiV2Fs bC5hY3RpdmVEZWxldGVQb3N0KCczOTU3NjIyM3ZpZGVvXzJtdicsICdSZXBv cnQgc3BhbScsICdyZXBseV9kZWxldGUnKVwiIG9ubW91c2VvdXQ9XCJXYWxs LmRlYWN0aXZlRGVsZXRlUG9zdCgnMzk1NzYyMjN2aWRlb18ybXYnLCAncmVw bHlfZGVsZXRlJylcIj48XC9kaXY+PFwvZGl2PjxcL2Rpdj5cbiAgICA8YSBo cmVmPVwiXC9qdXN0X293aW5nXCIgY2xhc3M9XCJhdXRob3JcIiBvbmNsaWNr PVwicmV0dXJuIG5hdi5nbyh0aGlzLCBldmVudCk7XCI+VmxhZGltaXIgUGV0 dWtob3Y8XC9hPlxuICAgIDxkaXYgaWQ9XCJ3cHQzOTU3NjIyM3ZpZGVvXzJt dlwiPjxkaXYgY2xhc3M9XCJtdl9jb21tdGV4dFwiPsLl8fwg7OjwIPLg6u7p LCD17uT/8iDoIOTz7OD+IO/w7iDx5eH/IPfy7iDzIOru4+4g7eAg8+zlIDpE PFwvZGl2PjxcL2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwibGlrZV93cmFwIGZs X3JcIiBvbmNsaWNrPVwiV2FsbC5saWtlKCczOTU3NjIyM3ZpZGVvX2NvbW1l bnQybXYnLCAnJyk7IGV2ZW50LmNhbmNlbEJ1YmJsZSA9IHRydWU7XCIgb25t b3VzZW92ZXI9XCJXYWxsLmxpa2VPdmVyKCczOTU3NjIyM3ZpZGVvX2NvbW1l bnQybXYnKVwiIG9ubW91c2VvdXQ9XCJXYWxsLmxpa2VPdXQoJzM5NTc2MjIz dmlkZW9fY29tbWVudDJtdicpXCI+XG4gIDxzcGFuIGNsYXNzPVwibGlrZV9s aW5rIGZsX2xcIiBpZD1cImxpa2VfbGluazM5NTc2MjIzdmlkZW9fY29tbWVu dDJtdlwiPjxcL3NwYW4+XG4gIDxpIGNsYXNzPVwibm9fbGlrZXMgZmxfbFwi IGlkPVwibGlrZV9pY29uMzk1NzYyMjN2aWRlb19jb21tZW50Mm12XCI+PFwv aT5cbiAgPHNwYW4gY2xhc3M9XCJsaWtlX2NvdW50IGZsX2xcIiBpZD1cImxp a2VfY291bnQzOTU3NjIyM3ZpZGVvX2NvbW1lbnQybXZcIj48XC9zcGFuPlxu PFwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJtdl9jb21tZGF0YVwiIGlkPVwi d3BlX2JvdHRvbTM5NTc2MjIzdmlkZW9fMm12XCI+XG4gICAgICA8c3BhbiBj bGFzcz1cImZsX2xcIj4zIEp1biAyMDA5PFwvc3Bhbj5cbiAgICAgIDxkaXYg Y2xhc3M9XCJmbF9yIHByb2dyZXNzXCIgaWQ9XCJtdl9wcm9ncmVzczM5NTc2 MjIzXzJcIj48XC9kaXY+XG4gICAgPFwvZGl2PlxuICA8XC9kaXY+XG48XC9k aXY+PFwvZGl2PjxcL2Rpdj5cbjxcL2Rpdj48ZGl2IGNsYXNzPVwidmlkZW9f Y29tbWVudHNfbXNnXCI+Q29tbWVudGluZyBmb3IgdGhpcyB2aWRlbyBkaXNh YmxlZCBieSB0aGUgb3duZXIuPFwvZGl2PiIsIjxkaXYgY2xhc3M9XCJtdl9p bmZvIG12X251bV92aWV3c1wiPjExIHZpZXdzPFwvZGl2PjxkaXYgY2xhc3M9 XCJtdl9pbmZvXCI+QWRkZWQgYnk6PFwvZGl2PjxkaXYgaWQ9XCJtdl9hdXRo b3JcIj48YSBjbGFzcz1cIm1lbV9saW5rXCIgaHJlZj1cIlwvZHJha21haWxc Ij5BbGV4YW5kZXIgTWFzbG92PFwvYT48XC9kaXY+PGRpdiBpZD1cIm12X2Fj dGlvbnNcIj48YSBpZD1cIm12X3NoYXJlXCIgb25jbGljaz1cInZpZGVvdmll dy5zaG93U2hhcmUoKTtcIiwgc3R5bGU9XCJkaXNwbGF5OiBub25lO1wiPlxu ICA8c3BhbiBjbGFzcz1cIm12X3NoYXJlX3RleHRcIj5TaGFyZTxcL3NwYW4+ XG48XC9hPlxuPGRpdiBvbm1vdXNlb3Zlcj1cInZpZGVvdmlldy5zaG93U2hh cmUoKVwiIG9ubW91c2VvdXQ9XCJ2aWRlb3ZpZXcuaGlkZVNoYXJlKDUwMClc IiBvbmNsaWNrPVwidmlkZW92aWV3LmhpZGVTaGFyZSgtMSlcIiBpZD1cIm12 c19kZFwiIGNsYXNzPVwiZml4ZWRcIj5cbjx0YWJsZSBjZWxsc3BhY2luZz1c IjBcIiBjZWxscGFkZGluZz1cIjBcIj48dGJvZHk+PHRyPlxuXG48dGQgY2xh c3M9XCJtdnNfc2lkZV9zaFwiPlxuICA8ZGl2IGNsYXNzPVwibXZzX3NpZGVf c2hfZWxcIj48XC9kaXY+XG48XC90ZD48dGQ+XG4gIDxkaXYgY2xhc3M9XCJt dnNfaGVhZGVyX3dyYXBcIj5cbiAgICA8ZGl2IGNsYXNzPVwibXZzX2hlYWRl clwiPlxuICAgICAgPHNwYW4gY2xhc3M9XCJtdnNfaGVhZGVyX3RleHRcIj5T aGFyZTxcL3NwYW4+XG4gICAgPFwvZGl2PlxuICA8XC9kaXY+XG4gIDxkaXYg Y2xhc3M9XCJtdnNfYWN0c1wiPlxuICAgIDxhIGNsYXNzPVwibXZzX2FjdFwi IG9uY2xpY2s9XCJ2aWRlb3ZpZXcuc2VuZFZpZGVvKClcIj48c3BhbiBjbGFz cz1cIm12c19hY3RfdGV4dFwiPlNlbmQgdG8gYSBmcmllbmQ8XC9zcGFuPjxc L2E+XG4gICAgPGEgY2xhc3M9XCJtdnNfYWN0XCIgb25jbGljaz1cInZpZGVv dmlldy5nZXRWaWRlb0NvZGUoMzk1NzYyMjMsIDEwODM3MDUxNSk7XCI+XG4g ICAgICA8c3BhbiBjbGFzcz1cIm12c19hY3RfdGV4dFwiPkV4cG9ydCB2aWRl bzxcL3NwYW4+XG4gICAgPFwvYT5cbiAgPFwvZGl2PlxuICA8ZGl2IGNsYXNz PVwibXZzX3NoMVwiPjxcL2Rpdj5cbiAgPGRpdiBjbGFzcz1cIm12c19zaDJc Ij48XC9kaXY+XG48XC90ZD48dGQgY2xhc3M9XCJtdnNfc2lkZV9zaFwiPlxu ICA8ZGl2IGNsYXNzPVwibXZzX3NpZGVfc2hfZWxcIj48XC9kaXY+XG48XC90 ZD5cblxuPFwvdHI+PFwvdGJvZHk+PFwvdGFibGU+PFwvZGl2PjxcL2Rpdj4i LCI8YSBjbGFzcz1cIm12X3Nob3dfaW5mb1wiIGlkPVwibXZfc2hvd19pbmZv XCIgb25tb3VzZW92ZXI9XCJ2aWRlb3ZpZXcuYWN0aXZhdGUodGhpcywgMik7 XCIgb25tb3VzZW91dD1cInZpZGVvdmlldy5kZWFjdGl2YXRlKHRoaXMsIDIp O1wiIG9uY2xpY2s9XCJyZXR1cm4gdmlkZW92aWV3LnNob3dJbmZvKCk7XCI+ U2hvdyBDb21tZW50czxcL2E+PGEgY2xhc3M9XCJtdl9oaWRlX2luZm9cIiBp ZD1cIm12X2hpZGVfaW5mb1wiIG9ubW91c2VvdmVyPVwidmlkZW92aWV3LmFj dGl2YXRlKHRoaXMsIDIpO1wiIG9ubW91c2VvdXQ9XCJ2aWRlb3ZpZXcuZGVh Y3RpdmF0ZSh0aGlzLCAyKTtcIiBvbmNsaWNrPVwicmV0dXJuIHZpZGVvdmll dy5oaWRlSW5mbygpO1wiPkhpZGUgY29tbWVudHM8XC9hPiIseyJsYW5nIjp7 InJlcGx5X3RvX3Bvc3QiOiJZb3VyIGNvbW1lbnQuLiIsIndhbGxfTV9yZXBs aWVzX29mX04iOlsiIiwiJXMgY29tbWVudCBvZiB7bGlua317YWxsfXtcL2xp bmt9IiwiJXMgY29tbWVudHMgb2Yge2xpbmt9e2FsbH17XC9saW5rfSJdLCJ3 YWxsX21vcmVfcmVwbGllcyI6WyIiLCJzaG93ICVzIG1vcmUgY29tbWVudCIs InNob3cgJXMgbW9yZSBjb21tZW50cyJdLCJ3YWxsX2FsbF9yZXBsaWVzIjoi YWxsIGNvbW1lbnRzIiwiZG9udF9hdHRhY2giOiJSZW1vdmUgYXR0YWNobWVu dCIsInZpZGVvX1hfY29tbXMiOlsiIiwiJXMgY29tbWVudCIsIiVzIGNvbW1l bnRzIl0sInZpZGVvX3Nob3dfcHJldmlvdXNfY29tbWVudHMiOlsiIiwiU2hv dyAlcyBwcmV2aW91cyBjb21tZW50IiwiU2hvdyAlcyBwcmV2aW91cyBjb21t ZW50cyJdLCJ2aWRlb19hcmVfeW91X3N1cmVfY2xvc2UiOiJBcmUgeW91IHN1 cmUgeW91IHdhbnQgdG8gY2xvc2UgdGhpcyB2aWRlbz8iLCJ2aWRlb19hcmVf eW91X3N1cmVfY2xvc2VfdGl0bGUiOiJDbG9zZSB2aWRlbyIsInByb2ZpbGVf bWVudGlvbl9ub3RfZm91bmQiOiJVc2VyIHdhcyBub3QgZm91bmQiLCJwcm9m aWxlX21lbnRpb25fc3RhcnRfdHlwaW5nIjoiU3RhcnQgdHlwaW5nIGEgbmFt ZS4uIn0sImNvbW1saW1pdCI6MTYzODQsIm12RGF0YSI6eyJ0aXRsZSI6It8g 8/Lu9+rgKSkpKSkiLCJvaWQiOjM5NTc2MjIzLCJ2aWQiOjEwODM3MDUxNSwi dmlkZW9SYXciOiIzOTU3NjIyM18xMDgzNzA1MTUiLCJoYXNoIjoiN2ZlNjAx OGYxNjk2YjVkYzE5IiwibGlrZUhhc2giOiJhZjUyYzljZTU5OWEzMDFlYTMi LCJjb21tc2hvd24iOjIsImNvbW1jb3VudCI6MiwibGlrZWQiOmZhbHNlLCJs aWtlcyI6MCwiZHVyYXRpb24iOjE4M30sInRhZ2dlZEluZm8iOiIiLCJzaG93 SW5mbyI6MH1dKTsKc2hvd1ZpZGVvKCczOTU3NjIyM18xMDgzNzA1MTUnLCAn dmlkZW9zMzk1NzYyMjMnLCB7cm9vdDogMSwgZnJvbVByZWxvYWQ6IDEsIG5v TG9jQ2hhbmdlOiAxLCBwcmV2VGl0bGU6ICcgQWxleGFuZGVyIE1hc2xvdiYj Mzk7cyBWaWRlb3MgfCA1IHZpZGVvcycsIHBhcmFtczogeyJhY3QiOiJzaG93 IiwidmlkZW8iOiIzOTU3NjIyM18xMDgzNzA1MTUifX0pOwogICAgfQogIDwv c2NyaXB0Pgo8L2JvZHk+Cgo8L2h0bWw+ http_version: recorded_at: Fri, 25 Oct 2013 20:34:00 GMT - request: method: get uri: http://vk.com/video_ body: encoding: US-ASCII string: '' headers: User-Agent: - VideoInfo/2.0.0 Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: - '*/*' response: status: code: 404 message: Not Found headers: Server: - nginx/1.2.4 Date: - Sat, 26 Oct 2013 11:12:57 GMT Content-Type: - text/html Content-Length: - '397' Connection: - keep-alive body: encoding: UTF-8 string: |