Online PHP and Javascript Decoder decode hidden script to uncover its real functionality


$GLOBALS['_____2037934825'] = array(IncludeModuleLangFile);
$GLOBALS['____964198387'] = array(define strrev strtoupper sprintf sprintf substr strrev base64_decode substr strlen strlen chr ord ord mktime intval intval intval ksort substr implode defined base64_decode constant strrev sprintf strlen strlen chr ord ord mktime intval intval intval substr substr time mktime mktime date date define define intval intval microtime is_array count array_merge intval is_array count is_array is_array str_replace htmlspecialchars_decode explode strip_tags in_array implode count trim in_array is_array implode is_array is_array count implode is_array count implode is_array is_array is_array count strlen intval preg_match_all is_array count array_merge array_unique explode str_replace count trim count str_replace is_array preg_split is_array count trim count explode str_replace implode is_array preg_split is_array count trim count str_replace explode count explode preg_match count count ksort count preg_match implode file_exists md5 filemtime file_get_contents file_exists file_get_contents explode is_array explode trim trim explode trim str_replace explode count count explode preg_match str_replace file_exists md5 filemtime explode file_get_contents is_array explode explode trim count explode str_replace trim explode str_replace implode defined defined preg_replace count str_replace explode preg_replace in_array trim implode is_array explode in_array in_array implode is_array explode trim is_array count preg_match str_replace microtime md5 is_array count is_array count count implode round microtime is_array count is_array implode md5 array_keys microtime is_array explode count md5 implode implode array_keys implode array_keys round microtime count count array_merge count implode count count implode array_values array_unique md5 preg_match function_exists min microtime round microtime array_search round microtime count array_unique round microtime count usort str_replace str_replace trim trim round microtime preg_match levenshtein levenshtein similar_text count usort round microtime explode preg_replace trim md5 count implode count count array_merge count count array_values array_merge count array_merge explode str_replace sort implode md5 md5 defined strlen);
if (!function_exists(__NAMESPACE__ . '\\___335180002')) {
    function ___335180002($_248854980)
    {
        static $_1479878777 = false;
        if ($_1479878777 == false) $_1479878777 = array('ZXhwaXJlX21lc3NfY3VzdG9tMg==', 'YXJ0dXJnb2x1YmV2X3NtYXJ0c2VhcmNoXw==', 'b21lZA==', 'WQ==', 'ZHJtX3N0ZXJnb2tj', 'JTAxMHMK', 'dXJnb2x1', 'YXJ0dXJnb2x1YmV2LnNtYXJ0c2VhcmNo', 'JXMlcw==', 'fmJz', 'ZXRhZF9wbw==', 'YWRtaW4=', 'bW9kdWxlcw==', 'dXNlcl9kYXRlX2JzbS5waHA=', 'YXJ0dXJnb2x1YmV2LnNtYXJ0c2VhcmNo', 'Yml0cml4', 'Ukh1cmdvbHU=', 'Yzc4MjUwNTdjYjloeXRvcw==', '', 'Zjk4', 'MzM4MjIzNzg0NTE3M2FjMDkz', 'MGRmNjg4Yw==', 'aHR0cHM6Ly9iaXRyaXhzb2Z0LmNvbS9iaXRyaXgvYnMucGhw', 'YXJ0', 'YmV2X3NtYXJ0c2VhcmNoX09MRFNJVEVFWFBJUkVEQVRFUw==', 'RE9DVU1FTlRfUk9PVA==', 'Lw==', 'Lw==', 'YXJ0dXJnb2x1YmV2X3NtYXJ0c2VhcmNoX1RFTVBPUkFSWV9DQUNIRQ==', 'YXJ0dXJnb2x1YmV2X3NtYXJ0c2VhcmNoX1RFTVBPUkFSWV9DQUNIRQ==', '', 'NDZmYTY=', 'JXMlcw==', 'Nzg4YzE2MTNmN2IzYzIxZWVhYTE=', 'YXJ0', 'YmV2X3NtYXJ0c2VhcmNoX1NJVEVFWFBJUkVEQVRFTUFQRVI=', 'bQ==', 'ZA==', 'WQ==', 'U2l0ZUV4cGlyZURhdGVfYXJ0dXJnb2x1YmV2X3NtYXJ0c2VhcmNo', 'RE9DVU1FTlRfUk9PVA==', 'L2JpdHJpeC9tb2R1bGVzL2FydHVyZ29sdWJldi5zbWFydHNlYXJjaC9pbmNsdWRlLnBocA==', 'YXV0b2xvYWQucGhw', 'anNjb3JlLnBocA==', 'UFJPUEVSVFlfVFlQRQ==', 'RQ==', 'VkFMVUU=', 'SUQ=', 'VkFMVUU=', 'blBhZ2VTaXpl', 'SUQ=', 'TkFNRQ==', 'VElUTEU=', 'IA==', 'TkFNRQ==', 'VVNFUl9UWVBF', 'RWxlbWVudFhtbElE', 'VkFMVUU=', 'WE1MX0lE', 'VkFMVUU=', 'blBhZ2VTaXpl', 'SUQ=', 'TkFNRQ==', 'VElUTEU=', 'IA==', 'TkFNRQ==', 'ZXhjbHVkZV9ieV9wcmljZQ==', 'WQ==', 'UFJPRFVDVF9JRA==', 'aWJsb2Nr', 'UFJPRFVDVF9JRA==', 'SUQ=', 'aWJsb2Nr', 'SUQ=', 'VElUTEU=', '', 'Qk9EWQ==', '', 'VEFHUw==', '', 'TU9EVUxFX0lE', 'aWJsb2Nr', 'VElUTEU=', 'SVRFTV9JRA==', '', 'VElUTEU=', 'SVRFTV9JRA==', 'UEFSQU0y', 'Q1VTVE9NX1JBTks=', 'dGFncw==', 'VEFHUw==', '', 'VEFHUw==', '', 'aXNfc2VjdGlvbg==', 'U0VDVElPTl9FWENMVURF', 'WQ==', 'dXNlX3Nlb190aXRsZQ==', 'c2VjdGlvbg==', 'IA==', 'aWRfaW5jbHVkZQ==', 'IA==', 'cHJvcHM=', 'SUJMT0NLX0lE', 'SUQ=', 'SUQ=', 'TkFNRQ==', 'SUJMT0NLX0lE', 'IA==', 'c2VjdGlvbl9maW5kYnlfcGFyZW50', 'SUQ=', 'TkFNRQ==', 'QUNUSVZF', 'SUQ=', 'IA==', 'TkFNRQ==', 'c2VjdGlvbl9maXJzdA==', 'Q1VTVE9NX1JBTks=', 'UEFSQU1T', 'Y2F0YWxvZ19hdmFpbGFibGU=', 'WQ==', 'VElUTEU=', '', 'Qk9EWQ==', '', 'VEFHUw==', '', 'aXNfc3Vic2VjdGlvbg==', 'c2VjdGlvbl9maXJzdA==', 'Q1VTVE9NX1JBTks=', 'UEFSQU1T', 'Y2F0YWxvZ19hdmFpbGFibGU=', 'WQ==', 'SUQ=', 'SUJMT0NLX0lE', 'TkFNRQ==', 'SUJMT0NLX1NFQ1RJT05fSUQ=', 'SUJMT0NLX0lE', 'SUQ=', 'Y2F0YWxvZw==', 'Q0FUQUxPR19BVkFJTEFCTEU=', 'Q0FUQUxPR19RVUFOVElUWQ==', 'cGljdHVyZV9maXJzdA==', 'UFJFVklFV19QSUNUVVJF', 'REVUQUlMX1BJQ1RVUkU=', 'cHJvcHM=', 'SUQ=', 'SUQ=', 'SUQ=', 'dXNlX3Nlb190aXRsZQ==', 'ZWxlbWVudA==', 'IA==', 'aWRfaW5jbHVkZQ==', 'IA==', 'dGFncw==', 'VEFHUw==', '', 'IA==', 'VEFHUw==', 'blBhZ2VTaXpl', 'SUJMT0NLX0lE', 'SUQ=', 'SUQ=', 'VkFMVUU=', 'SUQ=', 'Q09ERQ==', 'ZXhjbHVkZV9ieV93b19zZWN0aW9u', 'SUJMT0NLX1NFQ1RJT05fSUQ=', 'Q0FUQUxPR19UWVBF', 'V08gc2VjdGlvbg==', 'Q01MMl9MSU5L', 'Q01MMl9MSU5L', 'VkFMVUU=', 'cGljdHVyZV9maXJzdA==', 'UFJFVklFV19QSUNUVVJF', 'REVUQUlMX1BJQ1RVUkU=', 'ZXhjbHVkZV9ieV9wcm9kdWN0', 'ZXhjbHVkZV9ieV9zZWN0aW9u', 'SUQ=', 'SUJMT0NLX0lE', 'QUNUSVZF', 'SUJMT0NLX1NFQ1RJT05fSUQ=', 'UFJFVklFV19QSUNUVVJF', 'REVUQUlMX1BJQ1RVUkU=', 'SUQ=', 'Q01MMl9MSU5L', 'VkFMVUU=', 'blBhZ2VTaXpl', 'SUQ=', 'SUJMT0NLX0lE', 'QUNUSVZF', 'SUJMT0NLX1NFQ1RJT05fSUQ=', 'UFJFVklFV19QSUNUVVJF', 'REVUQUlMX1BJQ1RVUkU=', 'UFJFVklFV19QSUNUVVJF', 'UFJFVklFV19QSUNUVVJF', 'REVUQUlMX1BJQ1RVUkU=', 'REVUQUlMX1BJQ1RVUkU=', 'ZXhjbHVkZV9ieV9wcm9kdWN0', 'QUNUSVZF', 'Tg==', 'QWN0aXZlIE1haW4gcHJvZHVjdA==', 'ZXhjbHVkZV9ieV9zZWN0aW9u', 'SUJMT0NLX1NFQ1RJT05fSUQ=', 'SUJMT0NLX0lE', 'SUJMT0NLX1NFQ1RJT05fSUQ=', 'QUNUSVZF', 'Tg==', 'QWN0aXZlIE1haW4gcHJvZHVjdCBTZWN0aW9u', 'Q0FUQUxPR19BVkFJTEFCTEU=', 'ZXhjbHVkZV9ieV9hdmFpbGFibGU=', 'Q0FUQUxPR19BVkFJTEFCTEU=', 'Tg==', 'Q2F0YWxvZyBhdmFpbGFibGU=', 'ZXhjbHVkZV9ieV9xdWFudGl0eQ==', 'Q0FUQUxPR19UWVBF', 'Q0FUQUxPR19RVUFOVElUWQ==', 'Q2F0YWxvZyBxdWFudGl0eQ==', 'ZXhjbHVkZV9ieV9wcmljZQ==', 'Q2F0YWxvZyBwcmljZQ==', 'IA==', 'Q0FUQUxPR19BVkFJTEFCTEU=', 'YXZhaWxhYmxlX2ZpcnN0', 'Q0FUQUxPR19BVkFJTEFCTEU=', 'WQ==', 'YXZhaWxhYmxlX3F0X2ZpcnN0', 'Q0FUQUxPR19RVUFOVElUWQ==', 'Q0FUQUxPR19UWVBF', 'Q1VTVE9NX1JBTks=', 'Q1VTVE9NX1JBTks=', 'YXZhaWxhYmxlX3F0X2ZpcnN0', 'Q0FUQUxPR19RVUFOVElUWQ==', 'Q1VTVE9NX1JBTks=', 'cGljdHVyZV9maXJzdA==', 'UFJFVklFV19QSUNUVVJF', 'REVUQUlMX1BJQ1RVUkU=', 'Q1VTVE9NX1JBTks=', 'UEFSQU1T', 'Y2F0YWxvZ19hdmFpbGFibGU=', 'Q0FUQUxPR19BVkFJTEFCTEU=', 'Q0FUQUxPR19BVkFJTEFCTEU=', 'WQ==', 'SUJMT0NLX1NFQ1RJT05fSUQ=', 'ZXhjbHVkZV9ieV9vcHRpb24=', 'Qnkgc2VjdGlvbiBleGNsdWRlIHBhcmFt', 'ZXhjbHVkZV9ieV9zZWN0aW9u', 'ZXhjbHVkZQ==', 'Qnkgc2VjdGlvbg==', 'c25hbWVfaW5jbHVkZQ==', 'IA==', 'bmFtZV9wYXRo', 'Q1VTVE9NX1JBTks=', 'd2VpZ2h0', 'VElUTEU=', '', 'Qk9EWQ==', '', 'VEFHUw==', '', 'VElUTEU=', 'IDs=', 'cGFnZV9zdG9wX2JvZHk=', 'Qk9EWQ==', '', 'Qk9EWQ==', 'Qk9EWQ==', 'Qk9EWQ==', 'Qk9EWQ==', 'Qk9EWQ==', 'Qk9EWQ==', 'Qk9EWQ==', 'Qk9EWQ==', 'Qk9EWQ==', 'Qk9EWQ==', 'Qk9EWQ==', 'IA==', 'IA==', 'YWdfc21hcnRzZWFyY2hfcHJpY2UybGlzdA==', 'L2FydHVyZ29sdWJldi5zbWFydHNlYXJjaC8=', 'Xw==', 'L3ByaWNlcw==', 'ZmlsdGVy', 'R1JPVVBfSUQ=', 'QUNDRVNT', 'WQ==', 'c2VsZWN0', 'Kg==', 'Q0FUQUxPR19HUk9VUF9JRA==', 'c2VsZWN0', 'UFJJQ0U=', 'ZmlsdGVy', 'Q0FUQUxPR19HUk9VUF9JRA==', 'UFJPRFVDVF9JRA==', 'SUQ=', 'PlBSSUNF', 'cHJvcHM=', 'dXNlX3RpdGxlX3Byb3Bfc2VhcmNo', 'WQ==', 'aWRfaW5jbHVkZQ==', 'dXNlX3RpdGxlX2lk', 'WQ==', 'c25hbWVfaW5jbHVkZQ==', 'dXNlX3RpdGxlX3NuYW1l', 'WQ==', 'cGFnZV9zdG9wX2JvZHk=', 'dXNlX3BhZ2VfdGV4dF9ub3NlYXJjaA==', 'WQ==', 'c2VjdGlvbl9maW5kYnlfcGFyZW50', 'ZmluZF9zZWN0aW9uX2J5X3BhcmVudA==', 'WQ==', 'c2VjdGlvbl9maXJzdA==', 'c29ydF9zZWN0b25fZmlyc3Q=', 'WQ==', 'YXZhaWxhYmxlX2ZpcnN0', 'c29ydF9hdmFpbGFibGVfZmlyc3Q=', 'WQ==', 'YXZhaWxhYmxlX3F0X2ZpcnN0', 'c29ydF9hdmFpbGFibGVfcXRfZmlyc3Q=', 'WQ==', 'cGljdHVyZV9maXJzdA==', 'c29ydF9waWN0dXJlX2ZpcnN0', 'WQ==', 'WQ==', 'ZXhjbHVkZV9ieV9zZWN0aW9u', 'ZXhjbHVkZV9ieV9zZWN0aW9u', 'WQ==', 'ZXhjbHVkZV9ieV93b19zZWN0aW9u', 'ZXhjbHVkZV9ieV93b19zZWN0aW9u', 'WQ==', 'ZXhjbHVkZV9ieV9wcm9kdWN0', 'ZXhjbHVkZV9ieV9wcm9kdWN0', 'WQ==', 'ZXhjbHVkZV9ieV9hdmFpbGFibGU=', 'ZXhjbHVkZV9ieV9hdmFpbGFibGU=', 'WQ==', 'ZXhjbHVkZV9ieV9xdWFudGl0eQ==', 'ZXhjbHVkZV9ieV9xdWFudGl0eQ==', 'WQ==', 'ZXhjbHVkZV9ieV9wcmljZQ==', 'ZXhjbHVkZV9ieV9wcmljZQ==', 'WQ==', 'dXNlX3Nlb190aXRsZQ==', 'dXNlX3Nlb190aXRsZQ==', 'WQ==', 'aWJfc21hcnRzZWFyY2hfaGludHM=', 'ZXhjbHVkZV9ieV93b19zZWN0aW9u', 'TU9EVUxFX0lE', 'VElUTEU=', 'SVRFTV9JRA==', 'LA==', 'TU9EVUxFX0lE', 'SVRFTV9JRA==', 'Q09ERQ==', 'Q01MMl9MSU5L', 'Q09ERQ==', 'UFJPUEVSVFlfVFlQRQ==', 'Uw==', 'UFJPUEVSVFlfVFlQRQ==', 'Tg==', 'VVNFUl9UWVBF', 'VkFMVUU=', 'IA==', 'IA==', 'VkFMVUU=', 'VkFMVUU=', '', 'IA==', 'VkFMVUU=', 'UFJPUEVSVFlfVFlQRQ==', 'TA==', 'VVNFUl9UWVBF', 'VkFMVUU=', 'VkFMVUU=', 'VkFMVUU=', 'VkFMVUU=', 'VkFMVUU=', 'VkFMVUU=', 'VkFMVUU=', 'SUQ=', 'VkFMVUU=', 'VkFMVUU=', 'IA==', 'IA==', 'VkFMVUU=', 'UFJPUEVSVFlfVFlQRQ==', 'Uw==', 'VVNFUl9UWVBF', 'ZGlyZWN0b3J5', 'VkFMVUU=', 'VkFMVUU=', 'VkFMVUU=', 'IA==', 'IA==', 'UFJPUEVSVFlfVFlQRQ==', 'Uw==', 'VVNFUl9UWVBF', 'SFRNTA==', 'VkFMVUU=', 'VkFMVUU=', 'VkFMVUU=', 'VkFMVUU=', 'VkFMVUU=', 'VEVYVA==', 'IA==', 'VkFMVUU=', 'VEVYVA==', 'SUQ=', 'QUNUSVZF', 'WQ==', 'U0VDVElPTl9FWENMVURF', 'Tg==', 'SUQ=', 'QUNUSVZF', 'SUQ=', 'QUNUSVZF', 'Tg==', 'QUNUSVZF', 'Tg==', 'SUQ=', 'QVND', 'SUJMT0NLX0lE', 'SUQ=', 'SUQ=', 'VUZfU0VBUkNIX0VYQ0xVREU=', 'VUZfU0VBUkNIX0VYQ0xVREU=', 'U0VDVElPTl9FWENMVURF', 'WQ==', 'c2VjdGlvbl9jYWNoZQ==', 'c2VjdGlvbl8=', 'SUQ=', 'SUQ=', 'YmFzZV9ncm91cHM=', 'SUQ=', 'YmFzZV9ncm91cHM=', 'c2VjdGlvbl9pbmZvX2NhY2hl', 'SUJMT0NLX0lE', 'SUQ=', 'TkFNRQ==', 'QUNUSVZF', 'QUNUSVZF', 'Tg==', 'ZXhjbHVkZQ==', 'bmFtZV9wYXRo', 'IA==', 'TkFNRQ==', 'SUQ=', 'QVND', 'SUJMT0NLX0lE', 'SUJMT0NLX0lE', 'SUQ=', 'SUQ=', 'SUQ=', 'SUJMT0NLX0lE', 'TkFNRQ==', 'VUZfUFJPRF9XRUlHSFQ=', 'VUZfU0VBUkNIX0VYQ0xVREU=', 'VUZfUFJPRF9XRUlHSFQ=', 'd2VpZ2h0', 'VUZfUFJPRF9XRUlHSFQ=', 'VUZfU0VBUkNIX0VYQ0xVREU=', 'ZXhjbHVkZV9ieV9vcHRpb24=', 'c2VjdGlvbl9pbmZvX2NhY2hl', 'ZXhjbHVkZQ==', 'ZXhjbHVkZQ==', 'ZXhjbHVkZV9ieV9vcHRpb24=', 'ZXhjbHVkZV9ieV9vcHRpb24=', 'bmFtZV9wYXRo', 'bmFtZV9wYXRo', 'd2VpZ2h0', 'd2VpZ2h0', 'd2VpZ2h0', 'd2VpZ2h0', 'L1w8Ylw+KC4qKVw8XC9iXD4vVXNp', 'IA==', 'Cg==', 'IA==', 'PGI+', 'PC9iPg==', 'YnJlYWtfbGV0dGVycw==', 'IyM=', 'cHJlcGFyZWRfc2V0dGluZ3M=', 'YnJlYWtfbGV0dGVycw==', 'IA==', 'IA==', 'IA==', 'IA==', 'c2VwYXJhdGlvbl9sZXR0ZXJz', 'IyM=', 'cHJlcGFyZWRfc2V0dGluZ3M=', 'c2VwYXJhdGlvbl9sZXR0ZXJz', 'IA==', 'IA==', 'bWFueQ==', 'bWFueQ==', 'IA==', 'cmVndWxhcg==', 'L14=', 'JC8=', 'd29yZA==', 'b25l', 'b25l', 'cmVndWxhcg==', 'L14=', 'JC8=', 'd29yZA==', 'd29yZA==', 'IA==', 'RE9DVU1FTlRfUk9PVA==', 'YWdfc21hcnRzZWFyY2hfcnVsZXNf', 'L2FydHVyZ29sdWJldi5zbWFydHNlYXJjaC8=', 'Xw==', 'L3J1bGVz', 'cnVsZXM=', 'RE9DVU1FTlRfUk9PVA==', 'Cg==', 'fHw=', 'fA==', 'Kg==', 'Lg==', 'Kg==', 'XC4=', 'Lio=', 'IA==', 'bWFueQ==', 'cmVndWxhcg==', 'd29yZA==', 'b25l', 'cmVndWxhcg==', 'd29yZA==', 'cnVsZXM=', 'IA==', 'L14=', 'JC9p', 'MzAxIE1vdmVkIHBlcm1hbmVudGx5', 'RE9DVU1FTlRfUk9PVA==', 'U0lURV9JRA==', 'YWdzbV9yZHJ1bGVzXw==', 'Xw==', 'L2FydHVyZ29sdWJldi5zbWFydHNlYXJjaC8=', 'Xw==', 'L3JkcnVsZXMv', 'cnVsZXM=', 'fHw=', 'fA==', 'IA==', 'Lg==', 'Kg==', 'XC4=', 'Lio=', 'cnVsZXM=', 'Kg==', 'IA==', 'Kg==', 'LQ==', 'IA==', 'QVJUVVJHT0xVQkVWX1NNQVJUU0VBUkNIX0VfUkVQTEFDRQ==', 'QVJUVVJHT0xVQkVWX1NNQVJUU0VBUkNIX0VfUkVQTEFDRQ==', 'QVJUVVJHT0xVQkVWX1NNQVJUU0VBUkNIX0VfUkVQTEFDRV9T', 'U01BUlRTRUFSQ0hfUkVQTEFDRV9SRUdVTEFS', 'QlhfVVRG', 'L1teXHdcZF0vdWk=', 'Xw==', '', 'L1snXCI/ITpefnxAJD0rKiYuLDsoKVwtXyNcW1xdXDxcPlwvXS9p', 'LyhccyspL2k=', 'LyhbXGQrXSlbXCo=', 'QVJUVVJHT0xVQkVWX1NNQVJUU0VBUkNIX1hfUlU=', 'XSsoW1xkK10pLw==', 'IA==', 'JDF4JDI=', 'IA==', '', 'IA==', 'IA==', 'IA==', 'ZXhjZXB0aW9uX3dvcmRzX2xpc3Q=', 'LA==', 'cGFnZV9jYWNoZQ==', 'ZXhjZXB0aW9uX3dvcmRz', 'L1tcZF0rL2k=', 'cw==', 'Yw==', 'cnU=', 'cnU=', 'YmFzZV9jYWNoZV9zbWFydF9zZWFyY2hfbWl4ZWRf', 'ZmlsdGVyX21hcA==', 'L2FydHVyZ29sdWJldi5zbWFydHNlYXJjaC8=', 'Xw==', 'L2Jk', 'Y2FjaGU=', 'cmVzdWx0', 'cXVlcnk=', 'TE9XRVIoV09SRCkgYXMgV09SRA==', 'Yl9zZWFyY2hfY29udGVudF90aXRsZSBhcyBzdCBpbm5lciBqb2luIGJfc2VhcmNoX2NvbnRlbnQgc2Mgb24gc2MuSUQgPSBzdC5TRUFSQ0hfQ09OVEVOVF9JRA==', 'c3QuU0lURV9JRCA9ICc=', 'Jw==', 'ZmlsdGVy', 'ZmlsdGVy', '', 'ZmlsdGVy', 'IE9SIA==', 'KA==', 'TU9EVUxFX0lE', 'c2MuTU9EVUxFX0lEID0gIg==', 'TU9EVUxFX0lE', 'Ig==', 'UEFSQU0x', 'IEFORCA=', 'c2MuUEFSQU0xID0gIg==', 'UEFSQU0x', 'Ig==', 'UEFSQU0y', 'UEFSQU0y', 'IEFORCA=', 'UEFSQU0y', 'c2MuUEFSQU0yID0g', 'UEFSQU0y', 'c2MuUEFSQU0yIElOKA==', 'LCA=', 'UEFSQU0y', 'KQ==', 'KQ==', 'IEFORCAo', 'KQ==', 'U0VMRUNUIERJU1RJTkNUIA==', 'IEZST00g', 'IFdIRVJFIA==', 'Ow==', 'V09SRA==', 'cmVzdWx0', 'ZGVidWc=', 'R2V0IGRiIHdvcmRzIG1hcDog', 'ICg=', 'KQ==', 'ZmlsdGVy', 'ZmlsdGVy', 'ZmlsdGVy', 'TU9EVUxFX0lE', 'ZmlsdGVyX21hcA==', 'TU9EVUxFX0lE', 'Xw==', 'UEFSQU0x', 'ZmlsdGVyX21hcA==', 'UEFSQU0x', 'Og==', 'UEFSQU0y', 'ZmlsdGVyX21hcA==', 'Xw==', 'UEFSQU0y', 'Xw==', 'ZGVidWc=', 'ZGVidWc=', 'WQ==', 'Y2FjaGU=', 'ZGlzYWJsZV9jYWNoZQ==', 'WQ==', 'ZW5naW5l', 'c2VhcmNo', 'ZnVsbF90ZXh0X2VuZ2luZQ==', 'YmFzZV9jYWNoZV9zbWFydF9zZWFyY2hfY2xlYXJf', 'ZmlsdGVyX21hcA==', 'L2FydHVyZ29sdWJldi5zbWFydHNlYXJjaC8=', 'Xw==', 'L2Jk', 'cmVzdWx0', 'cmVzdWx0', 'IA==', 'dGl0bGU=', 'bW9kZV9zdGl0bGU=', 'bW9kZV9zcGFnZQ==', 'Xw==', 'ZmlsdGVyX21hcA==', 'L2FydHVyZ29sdWJldi5zbWFydHNlYXJjaC8=', 'Xw==', 'L2NvbWJpbmF0aW9uc18=', 'Lw==', 'Xw==', 'Y2FjaGU=', 'Y2FjaGU=', 'cmVzdWx0', 'cXVlcnk=', 'cmVzdWx0', 'ZGVidWc=', 'U2ltaWxhcml0eSBXb3JkcyA=', 'LA==', 'IA==', 'ICg=', 'KQ==', 'Y2FjaGU=', 'ZGlzYWJsZV9jYWNoZQ==', 'WQ==', 'd29yZA==', 'dHJhbnM=', 'dHlwZQ==', 'd29yZHNjb3VudA==', 'bW9kZQ==', 'ZW5naW5l', 'c3BoaW54', 'c3RhbmRhcnQ=', 'bW9kZV9yZWFs', 'ZW5naW5l', 'ZW5naW5l', 'ZmlsdGVyX21hcA==', 'ZmlsdGVyX21hcA==', 'IA==', 'IA==', 'dHlwZQ==', 'Xw==', 'd29yZA==', 'Xw==', 'bW9kZQ==', 'ZmlsdGVyX21hcA==', 'L2FydHVyZ29sdWJldi5zbWFydHNlYXJjaC8=', 'Xw==', 'L3dvcmRzXw==', 'dHlwZQ==', 'Lw==', 'dHJhbnM=', 'Y2FjaGU=', 'ZnJvbQ==', 'Y2FjaGU=', 'cmVzdWx0cw==', 'ZnJvbQ==', 'Z2V0', 'cmVzdWx0cw==', 'bWV0YXBob25lX21vZGU=', 'bW9kZV9tZXRhcGhvbmU=', 'Tg==', 'c3RyaXBvc19tb2Rl', 'ZXh0ZW5kZWRfbW9kZQ==', 'dHlwZQ==', 'ZnVsbA==', 'aXNfbnVt', 'L1tcZF0rL2k=', 'dHJhbnM=', 'bW9kZV9zcGxpdA==', 'bW9kZV9zcGxpdA==', 'WQ==', 'WQ==', 'aXNfbnVt', 'ZXh0ZW5kZWRfbW9kZQ==', 'c3RlbW1pbmc=', 'c3RlbW1pbmdfZnVsbA==', 'd29yZA==', 'c3RlbW1pbmdfZnVsbA==', 'c3RlbW1pbmdfZnVsbA==', 'd29yZF9zdGVtbWluZw==', 'd29yZF9sZW4=', 'dHJhbnM=', 'd29yZA==', 'd29yZF9sZW4=', 'd29yZF9sZW5fY2hlY2s=', 'd29yZF9sZW4=', 'd29yZF9sZW5fY2hlY2s=', 'd29yZF9sZW5fY2hlY2s=', 'bWluX2xlbmd0aA==', 'c3RhcnQ=', 'ZW5naW5l', 'c3BoaW54', 'Kg==', 'Ig==', 'cHJlcGFyZQ==', 'c3RhcnQ=', 'dHJhbnM=', 'd29yZHNjb3VudA==', 'd29yZF9zdGVtbWluZw==', 'd29yZA==', 'd29yZF9zdGVtbWluZw==', 'dHlwZQ==', 'dGl0bGU=', 'dHlwZQ==', 'ZnVsbA==', 'ZXh0ZW5kZWRfbW9kZQ==', 'bWV0YXBob25lX21vZGU=', 'c3RyaXBvc19tb2Rl', 'a2V5c2VhcmNo', 'c3RhcnQ=', 'c3RyaXBvc19tb2Rl', 'c3RyaXBvc19zdGVtbWluZw==', 'd29yZF9zdGVtbWluZw==', 'd29yZF9zdGVtbWluZw==', 'd29yZA==', 'c3RyaXBvc19zdGVtbWluZw==', 'ZXh0ZW5kZWRfbW9kZQ==', 'ZXh0ZW5kZWRfbW9kZQ==', 'dHlwZQ==', 'dGl0bGU=', 'c3RyaXBvc19zdGVtbWluZw==', 'c3RyaXBvc19zdGVtbWluZw==', 'ZW5naW5l', 'c3BoaW54', 'bW9kZV9yZWFs', 'ZXh0ZW5kZWQ=', 'c3RyaXBvcw==', 'c3RhcnQ=', 'bW9kZV9zcGxpdA==', 'd29yZHNjb3VudA==', 'd29yZA==', 'bGVu', 'bGVu', 'bGVu', 'd29yZA==', 'd29yZA==', 'd29yZA==', 'd29yZA==', 'bGVu', 'bGVu', '', 'd29yZA==', '', 'aXNfbnVt', 'bGVu', 'bWluX2xlbmd0aA==', 'd29yZA==', 'd29yZA==', 'd29yZA==', 'IA==', 'd29yZA==', '', 'dHlwZQ==', 'ZnVsbA==', 'IA==', 'IA==', 'c3BsaXQ=', 'c3RhcnQ=', 'bWV0YXBob25lX21vZGU=', 'aXNfbnVt', 'd29yZF9sZW4=', 'L1tcZF0rL2k=', 'dHJhbnM=', 'd29yZF9sZW5fY2hlY2s=', 'd29yZA==', 'd29yZA==', 'd29yZA==', 'Y2hlY2s=', 'd29yZA==', 'dHJhbnM=', 'c2ltaWxhcml0eQ==', 'c2ltaWxhcml0eV8y', 'c2ltaWxhcml0eV8z', 'Q0FydHVyZ29sdWJldlNtYXJ0c2VhcmNo', 'Y21wU2ltaWxhcml0eVNvcnQ=', 'd29yZA==', 'bWV0YXBob25l', 'c3RhcnQ=', 'c2ltaWxhcml0eV8z', 'c2ltaWxhcml0eV8z', 'c2ltaWxhcml0eV8y', 'c2ltaWxhcml0eV8y', 'c2ltaWxhcml0eQ==', 'c2ltaWxhcml0eQ==', 'cmVzdWx0', 'dmFyaWFudHM=', 'ZXJyb3I=', 'Y2ljbGU=', 'bWFpbl9hcnI=', 'IA==', 'LyhccyspL2k=', 'IA==', 'bWFpbl9hcnI=', 'ZW4=', 'cnU=', 'dmFyaWFudHM=', 'cnU=', 'cnU=', 'ZW4=', 'dmFyaWFudHM=', 'ZW4=', 'dmFyaWFudHM=', 'cnU=', 'dmFyaWFudHM=', 'ZW4=', 'cnU=', 'L2FydHVyZ29sdWJldi5zbWFydHNlYXJjaC8=', 'Xw==', 'L2d1ZXNzX3dvcmQv', 'dHlwZQ==', 'Xw==', 'ZmluZA==', 'Y2ljbGU=', 'Y2ljbGU=', 'ZmluZA==', 'cmVzdWx0', 'cmVzdWx0', 'cmVzdWx0', 'IA==', 'cmVzdWx0', 'Xw==', 'L2FydHVyZ29sdWJldi5zbWFydHNlYXJjaC8=', 'Xw==', 'L2VtcHR5bGluZXM=', 'ZW1wdHk=', 'WQ==', 'L2FydHVyZ29sdWJldi5zbWFydHNlYXJjaC8=', 'Xw==', 'L2VtcHR5bGluZXM=', 'ZW1wdHk=', 'WQ==', 'YXJ0dXJnb2x1YmV2X3NtYXJ0c2VhcmNoX09MRFNJVEVFWFBJUkVEQVRF', 'ZXhwaXJlX21lc3NfY3VzdG9tMg==');
        return ;
    }
};
$_2084814655 = GetMessage(___335180002(0));
$_725529671 = (830 - 2 * 415);
@$GLOBALS['____964198387'][0](___335180002(1) . $GLOBALS['____964198387'][1]($GLOBALS['____964198387'][2](___335180002(2))), ___335180002(3));
$_1116813353 = round(0 + 0.25 + 0.25 + 0.25 + 0.25);
$_1970314268 = ___335180002(4);
unset($_1116638231);
$_1066461412 = $GLOBALS['____964198387'][3](___335180002(5), ___335180002(6));
$_1116638231 = \COption::GetOptionString(___335180002(7), $GLOBALS['____964198387'][4](___335180002(8), ___335180002(9), $GLOBALS['____964198387'][5]($_1970314268, round(0 + 0.4 + 0.4 + 0.4 + 0.4 + 0.4), round(0 + 0.8 + 0.8 + 0.8 + 0.8 + 0.8))) . $GLOBALS['____964198387'][6](___335180002(10)));
$_325650130 = array(round(0 + 5.6666666666667 + 5.6666666666667 + 5.6666666666667) => ___335180002(11), round(0 + 1.4 + 1.4 + 1.4 + 1.4 + 1.4) => ___335180002(12), round(0 + 4.4 + 4.4 + 4.4 + 4.4 + 4.4) => ___335180002(13), round(0 + 6 + 6) => ___335180002(14), round(0 + 1.5 + 1.5) => ___335180002(15));
$_290152850 = ___335180002(16);
while ($_1116638231) {
    $_709035263 = ___335180002(17);
    $_2009431911 = $GLOBALS['____964198387'][7]($_1116638231);
    $_1212375241 = ___335180002(18);
    $_709035263 = $GLOBALS['____964198387'][8](___335180002(19) . $_709035263, (1228 / 2 - 614), -round(0 + 1 + 1 + 1 + 1 + 1)) . ___335180002(20);
    $_437038517 = $GLOBALS['____964198387'][9]($_709035263);
    $_209731116 = (250 * 2 - 500);
    for ($_183601192 = (1456 / 2 - 728); $_183601192 < $GLOBALS['____964198387'][10]($_2009431911); $_183601192++) {
        $_1212375241 .= $GLOBALS['____964198387'][11]($GLOBALS['____964198387'][12]($_2009431911[$_183601192]) ^ $GLOBALS['____964198387'][13]($_709035263[$_209731116]));
        if ($_209731116 == $_437038517 - round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2)) $_209731116 = min(118, 0, 39.333333333333); else $_209731116 = $_209731116 + round(0 + 0.25 + 0.25 + 0.25 + 0.25);
    }
    $_1116813353 = $GLOBALS['____964198387'][14]((936 - 2 * 468), (182 * 2 - 364), (138 * 2 - 276), $GLOBALS['____964198387'][15]($_1212375241[round(0 + 1.2 + 1.2 + 1.2 + 1.2 + 1.2)] . $_1212375241[round(0 + 3)]), $GLOBALS['____964198387'][16]($_1212375241[round(0 + 1)] . $_1212375241[round(0 + 4.6666666666667 + 4.6666666666667 + 4.6666666666667)]), $GLOBALS['____964198387'][17]($_1212375241[round(0 + 2.5 + 2.5 + 2.5 + 2.5)] . $_1212375241[round(0 + 6 + 6 + 6)] . $_1212375241[round(0 + 2.3333333333333 + 2.3333333333333 + 2.3333333333333)] . $_1212375241[round(0 + 12)]));
    unset($_709035263);
    break;
}
$_944444867 = ___335180002(21);
$GLOBALS['____964198387'][18]($_325650130);
$_1719175758 = ___335180002(22);
$_290152850 = ___335180002(23) . $GLOBALS['____964198387'][19]($_290152850 . ___335180002(24), round(0 + 0.66666666666667 + 0.66666666666667 + 0.66666666666667), -round(0 + 0.25 + 0.25 + 0.25 + 0.25));
@include($_SERVER[___335180002(25)] . ___335180002(26) . $GLOBALS['____964198387'][20](___335180002(27), $_325650130));
$_1909617544 = round(0 + 1 + 1);
while ($GLOBALS['____964198387'][21](___335180002(28))) {
    $_122411245 = $GLOBALS['____964198387'][22]($GLOBALS['____964198387'][23](___335180002(29)));
    $_2096157016 = ___335180002(30);
    $_944444867 = $GLOBALS['____964198387'][24](___335180002(31)) . $GLOBALS['____964198387'][25](___335180002(32), $_944444867, ___335180002(33));
    $_289052773 = $GLOBALS['____964198387'][26]($_944444867);
    $_209731116 = (1108 / 2 - 554);
    for ($_183601192 = (230 * 2 - 460); $_183601192 < $GLOBALS['____964198387'][27]($_122411245); $_183601192++) {
        $_2096157016 .= $GLOBALS['____964198387'][28]($GLOBALS['____964198387'][29]($_122411245[$_183601192]) ^ $GLOBALS['____964198387'][30]($_944444867[$_209731116]));
        if ($_209731116 == $_289052773 - round(0 + 0.5 + 0.5)) $_209731116 = (1176 / 2 - 588); else $_209731116 = $_209731116 + round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333);
    }
    $_1909617544 = $GLOBALS['____964198387'][31](min(148, 0, 49.333333333333), min(52, 0, 17.333333333333), (1264 / 2 - 632), $GLOBALS['____964198387'][32]($_2096157016[round(0 + 1.5 + 1.5 + 1.5 + 1.5)] . $_2096157016[round(0 + 4 + 4 + 4 + 4)]), $GLOBALS['____964198387'][33]($_2096157016[round(0 + 4.5 + 4.5)] . $_2096157016[round(0 + 0.4 + 0.4 + 0.4 + 0.4 + 0.4)]), $GLOBALS['____964198387'][34]($_2096157016[round(0 + 2.4 + 2.4 + 2.4 + 2.4 + 2.4)] . $_2096157016[round(0 + 7)] . $_2096157016[round(0 + 7 + 7)] . $_2096157016[round(0 + 3)]));
    unset($_944444867);
    break;
}
$_1066461412 = ___335180002(34) . $GLOBALS['____964198387'][35]($GLOBALS['____964198387'][36]($_1066461412, round(0 + 3), -round(0 + 0.25 + 0.25 + 0.25 + 0.25)) . ___335180002(35), round(0 + 1), -round(0 + 2.5 + 2.5));
for ($_183601192 = (168 * 2 - 336), $_1331975436 = ($GLOBALS['____964198387'][37]() < $GLOBALS['____964198387'][38]((1204 / 2 - 602), min(236, 0, 78.666666666667), min(62, 0, 20.666666666667), round(0 + 1.25 + 1.25 + 1.25 + 1.25), round(0 + 0.25 + 0.25 + 0.25 + 0.25), round(0 + 2010)) || $_1116813353 <= round(0 + 2.5 + 2.5 + 2.5 + 2.5)), $_834056921 = ($_1116813353 < $GLOBALS['____964198387'][39]((968 - 2 * 484), (842 - 2 * 421), (1132 / 2 - 566), Date(___335180002(36)), $GLOBALS['____964198387'][40](___335180002(37)) - $_725529671, $GLOBALS['____964198387'][41](___335180002(38)))); $_183601192 < round(0 + 2.5 + 2.5 + 2.5 + 2.5), $_1331975436 || $_834056921 || $_1116813353 != $_1909617544; $_183601192++) return false;
$GLOBALS['____964198387'][42]($_290152850, $_1116813353);
$GLOBALS['____964198387'][43]($_1066461412, $_1909617544);
$GLOBALS[___335180002(39)] = arturgolubev_smartsearch_OLDSITEEXPIREDATE;

use Arturgolubev\Smartsearch\Encoding;
use Arturgolubev\Smartsearch\Hl;
use Arturgolubev\Smartsearch\Serialize;
use Arturgolubev\Smartsearch\Tools as Tools;
use Arturgolubev\Smartsearch\Unitools as UTools;
use Bitrix\Main\Loader;
use Bitrix\Main\Localization\Loc;

$GLOBALS['_____2037934825'][0]($_SERVER[___335180002(40)] . ___335180002(41));
include ___335180002(42);
include ___335180002(43);

class CArturgolubevSmartsearch
{
    const MODULE_ID = 'arturgolubev.smartsearch';
    const BASE_RULES_FILE = '/bitrix/modules/arturgolubev.smartsearch/install/tools/arturgolubev.smartsearch/base_rules.txt';
    const RULES_FILE = '/bitrix/tools/arturgolubev.smartsearch/rules.txt';
    const REDIRECT_FILE = '/bitrix/tools/arturgolubev.smartsearch/redirect_SITE_ID.txt';
    const CATALOG_TYPE_SKU = 3;
    const CACHE_TIME = 86400;
    const CACHE_VERSION = 'v663';

    static function iblockLinkPropHandler($_1486812868, $_873646782, $_1283529465)
    {
        if ($_1486812868["MODULE_ID"] == 'iblock' && $_1486812868["TITLE"] && $_1486812868["ITEM_ID"]) {
            if ($_1486812868["PARAM2"] == $_873646782 && !empty($_1283529465) && Encoding::exSubstr($_1486812868["ITEM_ID"], 0, 1) != "S" && Loader::includeModule("iblock")) {
                foreach ($_1283529465 as $_1907522601) {
                    $_2022638854 = CIBlockElement::GetProperty($_1486812868["PARAM2"], $_1486812868["ITEM_ID"], array("sort" => "asc"), array("ID" => $_1907522601));
                    while ($_1967986693 = $_2022638854->Fetch()) {
                        if ($_1967986693[___335180002(44)] == ___335180002(45) && $_1967986693[___335180002(46)]) {
                            $_1502203569 = CIBlockElement::GetList([], array(___335180002(47) => $_1967986693[___335180002(48)]), false, array(___335180002(49) => round(0 + 0.25 + 0.25 + 0.25 + 0.25)), array(___335180002(50), ___335180002(51)));
                            while ($_1705009988 = $_1502203569->Fetch()) {
                                $_1486812868[___335180002(52)] .= ___335180002(53) . $_1705009988[___335180002(54)];
                            }
                        }
                        if ($_1967986693[___335180002(55)] == ___335180002(56) && $_1967986693[___335180002(57)]) {
                            $_1502203569 = CIBlockElement::GetList([], array(___335180002(58) => $_1967986693[___335180002(59)]), false, array(___335180002(60) => round(0 + 0.5 + 0.5)), array(___335180002(61), ___335180002(62)));
                            while ($_1705009988 = $_1502203569->Fetch()) {
                                $_1486812868[___335180002(63)] .= ___335180002(64) . $_1705009988[___335180002(65)];
                            }
                        }
                    }
                }
            }
        }
        return $_1486812868;
    }

    static function onPriceChange(\Bitrix\Main\Entity\Event $_2044141197)
    {
        $_1571022703 = $_2044141197->getParameter("fields");
        if (UTools::getSetting(___335180002(66)) == ___335180002(67)) {
            if ($GLOBALS['____964198387'][44]($_1571022703[___335180002(68)]) && Loader::includeModule(___335180002(69))) {
                CIBlockElement::UpdateSearch($_1571022703[___335180002(70)], true);
            }
        }
    }

    static function onProductChange(\Bitrix\Main\Entity\Event $_2044141197)
    {
        $_1343877099 = $_2044141197->getParameter("id");
        if ($GLOBALS['____964198387'][45]($_1343877099[___335180002(71)]) && Loader::includeModule(___335180002(72))) {
            CIBlockElement::UpdateSearch($_1343877099[___335180002(73)], true);
        }
    }

    static function onIndexHandler($_1486812868)
    {
        $_954529114 = $GLOBALS['____964198387'][46](true);
        if (self::_indexSkipByModule($_1486812868)) {
            $_1486812868[___335180002(74)] = ___335180002(75);
            $_1486812868[___335180002(76)] = ___335180002(77);
            $_1486812868[___335180002(78)] = ___335180002(79);
        }
        if ($_1486812868[___335180002(80)] == ___335180002(81) && $_1486812868[___335180002(82)] && $_1486812868[___335180002(83)]) {
            $_1980940182 = (812 - 2 * 406);
            $_1561342905 = ___335180002(84);
            $_1284106020 = $_1486812868[___335180002(85)];
            $_1297540388 = $_1486812868[___335180002(86)];
            $_1111466511 = $_1486812868[___335180002(87)];
            $_1486812868[___335180002(88)] = (236 * 2 - 472);
            $_905099376 = self::_indexGetSettings($_1111466511, $_1297540388);
            if (!$_905099376[___335180002(89)] && $_1486812868[___335180002(90)] != ___335180002(91)) {
                $_1486812868[___335180002(92)] = ___335180002(93);
            }
            if ($_905099376[___335180002(94)]) {
                $_1297540388 = Encoding::exSubstr($_1297540388, round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333));
                $_1745301033 = self::_getSectionActiveInfo($_1111466511, $_1297540388);
                if ($_1745301033[___335180002(95)] == ___335180002(96)) {
                    $_1980940182 = round(0 + 1);
                }
                if (!$_1980940182) {
                    if ($_905099376[___335180002(97)]) {
                        $_2133657574 = Tools::_indexGetSEOTitle(___335180002(98), $_1111466511, $_1297540388);
                        if ($_2133657574) {
                            $_1284106020 = $_2133657574 . ___335180002(99) . $_1284106020;
                        }
                    }
                    if ($_905099376[___335180002(100)]) {
                        $_1284106020 .= ___335180002(101) . $_1297540388;
                    }
                    if ($_905099376[___335180002(102)]) {
                        $_156217951 = Tools::_indexGetSectionSProps($_1111466511);
                        if ($GLOBALS['____964198387'][47]($_156217951) && $GLOBALS['____964198387'][48]($_156217951)) {
                            $_1900104780 = array(___335180002(103) => $_1111466511, ___335180002(104) => $_1297540388);
                            $_1500425676 = CIBlockSection::GetList(array($_1934679600 => $_268109702), $_1900104780, false, $GLOBALS['____964198387'][49]($_156217951, array(___335180002(105), ___335180002(106), ___335180002(107))));
                            while ($_1270042672 = $_1500425676->GetNext()) {
                                foreach ($_156217951 as $_716793688) {
                                    if ($_1270042672[$_716793688]) {
                                        $_1284106020 .= ___335180002(108) . $_1270042672[$_716793688];
                                    }
                                }
                            }
                        }
                    }
                    if ($_905099376[___335180002(109)]) {
                        $_1873340437 = CIBlockSection::GetNavChain($_1111466511, $_1297540388, array(___335180002(110), ___335180002(111), ___335180002(112)), true);
                        foreach ($_1873340437 as $_1200645115) {
                            if ($_1200645115[___335180002(113)] != $_1297540388) {
                                $_1284106020 .= ___335180002(114) . $_1200645115[___335180002(115)];
                            }
                        }
                    }
                    if ($_905099376[___335180002(116)]) {
                        $_1486812868[___335180002(117)] = round(0 + 5000 + 5000 + 5000 + 5000);
                    }
                    $_1486812868[___335180002(118)][___335180002(119)] = ___335180002(120);
                }
                if ($_1980940182) {
                    $_1486812868[___335180002(121)] = ___335180002(122);
                    $_1486812868[___335180002(123)] = ___335180002(124);
                    $_1486812868[___335180002(125)] = ___335180002(126);
                    return $_1486812868;
                }
            } elseif ($_905099376[___335180002(127)]) {
                if ($_905099376[___335180002(128)]) {
                    $_1486812868[___335180002(129)] = round(0 + 8750 + 8750);
                }
                $_1486812868[___335180002(130)][___335180002(131)] = ___335180002(132);
            } elseif ($GLOBALS['____964198387'][50]($_1297540388)) {
                $_705334900 = [___335180002(133), ___335180002(134), ___335180002(135), ___335180002(136)];
                $_394880463 = [___335180002(137) => $_1111466511, ___335180002(138) => $_1297540388];
                if (Loader::includeModule(___335180002(139))) {
                    $_705334900[] = ___335180002(140);
                    $_705334900[] = ___335180002(141);
                }
                if ($_905099376[___335180002(142)]) {
                    $_705334900[] = ___335180002(143);
                    $_705334900[] = ___335180002(144);
                }
                if ($_905099376[___335180002(145)]) {
                    $_156217951 = Tools::_indexGetElementSProps($_1111466511);
                    $_360019284 = [___335180002(146) => []];
                    foreach ($_156217951 as $_1917016989) {
                        $_360019284[___335180002(147)][] = $_1917016989[___335180002(148)];
                    }
                }
                if ($_905099376[___335180002(149)]) {
                    $_2133657574 = Tools::_indexGetSEOTitle(___335180002(150), $_1111466511, $_1297540388);
                    if ($_2133657574) {
                        $_1284106020 = $_2133657574 . ___335180002(151) . $_1284106020;
                    }
                }
                if ($_905099376[___335180002(152)]) {
                    $_1284106020 .= ___335180002(153) . $_1297540388;
                }
                if ($_905099376[___335180002(154)] && $_1486812868[___335180002(155)] != ___335180002(156)) {
                    $_1284106020 .= ___335180002(157) . $_1486812868[___335180002(158)];
                }
                if (true) {
                    $_1502203569 = CIBlockElement::GetList([], $_394880463, false, array(___335180002(159) => round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333)), $_705334900);
                    if ($_1412372905 = $_1502203569->GetNextElement(true, false)) {
                        $_1749887140 = $_1412372905->GetFields();
                        $_1916253957 = [];
                        if ($GLOBALS['____964198387'][51]($_156217951) && $GLOBALS['____964198387'][52]($_156217951)) {
                            $_83170515 = CIBlockElement::GetPropertyValues($_1749887140[___335180002(160)], [___335180002(161) => $_1749887140[___335180002(162)]], false, $_360019284);
                            while ($_1480877129 = $_83170515->Fetch()) {
                                foreach ($_156217951 as $_1917016989) {
                                    $_1917016989[___335180002(163)] = $_1480877129[$_1917016989[___335180002(164)]];
                                    $_1916253957[$_1917016989[___335180002(165)]] = $_1917016989;
                                }
                            }
                        }
                    }
                    if ($GLOBALS['____964198387'][53]($_1749887140)) {
                        if ($_905099376[___335180002(166)] && !$_1749887140[___335180002(167)] && $_1749887140[___335180002(168)] != round(0 + 4)) {
                            $_1980940182 = round(0 + 1);
                            $_1561342905 = ___335180002(169);
                        }
                        if (!$_1980940182 && $GLOBALS['____964198387'][54]($_1916253957[___335180002(170)]) && $_1916253957[___335180002(171)][___335180002(172)]) {
                            $_33760380 = ($_905099376[___335180002(173)] && !$_1749887140[___335180002(174)] && !$_1749887140[___335180002(175)]);
                            if ($_905099376[___335180002(176)] || $_905099376[___335180002(177)] || $_33760380) {
                                $_1950935492 = [___335180002(178), ___335180002(179), ___335180002(180), ___335180002(181)];
                                if ($_33760380) {
                                    $_1950935492[] = ___335180002(182);
                                    $_1950935492[] = ___335180002(183);
                                }
                                $_1900149204 = CIBlockElement::GetList([], array(___335180002(184) => $_1916253957[___335180002(185)][___335180002(186)]), false, array(___335180002(187) => round(0 + 1)), array(___335180002(188), ___335180002(189), ___335180002(190), ___335180002(191), ___335180002(192), ___335180002(193)));
                                if ($_701269981 = $_1900149204->Fetch()) {
                                    if ($_33760380) {
                                        $_1749887140[___335180002(194)] = $_701269981[___335180002(195)];
                                        $_1749887140[___335180002(196)] = $_701269981[___335180002(197)];
                                    }
                                    if ($_905099376[___335180002(198)] && $_701269981[___335180002(199)] == ___335180002(200)) {
                                        $_1980940182 = round(0 + 1);
                                        $_1561342905 = ___335180002(201);
                                    }
                                    if (!$_1980940182 && $_905099376[___335180002(202)] && $_701269981[___335180002(203)]) {
                                        $_1745301033 = self::_getSectionActiveInfo($_701269981[___335180002(204)], $_701269981[___335180002(205)]);
                                        if ($_1745301033[___335180002(206)] == ___335180002(207)) {
                                            $_1980940182 = round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333);
                                            $_1561342905 = ___335180002(208);
                                        }
                                    }
                                }
                            }
                        }
                        if ($_1749887140[___335180002(209)]) {
                            if ($_905099376[___335180002(210)] && $_1749887140[___335180002(211)] == ___335180002(212)) {
                                $_1980940182 = round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2);
                                $_1561342905 = ___335180002(213);
                            }
                            if ($_905099376[___335180002(214)] && $_1749887140[___335180002(215)] != self::CATALOG_TYPE_SKU && $_1749887140[___335180002(216)] < round(0 + 0.25 + 0.25 + 0.25 + 0.25)) {
                                $_1980940182 = round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2);
                                $_1561342905 = ___335180002(217);
                            }
                            if ($_905099376[___335180002(218)]) {
                                $_1832855685 = self::_indexCheckPriceExclude($_1749887140);
                                if ($_1832855685) {
                                    $_1980940182 = round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333);
                                    $_1561342905 = ___335180002(219);
                                }
                            }
                        }
                        if (!$_1980940182) {
                            $_1284106020 .= ___335180002(220) . self::_indexGetElementPropsString($_156217951, $_1916253957);
                            if ($_1749887140[___335180002(221)]) {
                                if ($_905099376[___335180002(222)] && $_1749887140[___335180002(223)] == ___335180002(224)) {
                                    if ($_905099376[___335180002(225)] && ($_1749887140[___335180002(226)] > min(152, 0, 50.666666666667) || $_1749887140[___335180002(227)] == self::CATALOG_TYPE_SKU)) {
                                        $_1486812868[___335180002(228)] += round(0 + 10010);
                                    } else {
                                        $_1486812868[___335180002(229)] += round(0 + 10000);
                                    }
                                } elseif ($_905099376[___335180002(230)] && $_1749887140[___335180002(231)] > min(162, 0, 54)) {
                                    $_1486812868[___335180002(232)] += round(0 + 5000 + 5000);
                                }
                            }
                            if ($_905099376[___335180002(233)]) {
                                if ($_1749887140[___335180002(234)] || $_1749887140[___335180002(235)]) {
                                    $_1486812868[___335180002(236)] += round(0 + 1);
                                }
                            }
                            $_1486812868[___335180002(237)][___335180002(238)] = ($_1749887140[___335180002(239)]) ? $_1749887140[___335180002(240)] : ___335180002(241);
                        }
                    }
                }
                if (!$_1980940182 && $_1749887140[___335180002(242)]) {
                    $_493054791 = self::_getSectionsInfo($_1749887140);
                    if ($_493054791[___335180002(243)]) {
                        $_1980940182 = round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333);
                        $_1561342905 = ___335180002(244);
                    }
                    if ($_905099376[___335180002(245)] && $_493054791[___335180002(246)]) {
                        $_1980940182 = round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333);
                        $_1561342905 = ___335180002(247);
                    }
                    if ($_905099376[___335180002(248)]) {
                        $_1284106020 .= ___335180002(249) . $_493054791[___335180002(250)];
                    }
                    $_1486812868[___335180002(251)] += $_493054791[___335180002(252)];
                }
                if ($_1980940182) {
                    $_1486812868[___335180002(253)] = ___335180002(254);
                    $_1486812868[___335180002(255)] = ___335180002(256);
                    $_1486812868[___335180002(257)] = ___335180002(258);
                    return $_1486812868;
                }
            }
            $_1284106020 = self::_strip_tags($_1284106020);
            $_1284106020 = self::checkReplaceSymbols($_1284106020);
            $_1284106020 = self::checkReplaceRules($_1284106020);
            $_1284106020 = self::checkSeparationSymbols($_1284106020);
            $_1284106020 = self::applyIndexWordsRules($_1284106020);
            $_1284106020 = self::applyBaseWordsRules($_1284106020);
            $_1284106020 = self::checkReplaceRules($_1284106020);
            $_1284106020 = self::clearExceptionsWords($_1284106020);
            $_1486812868[___335180002(259)] = $_1284106020 . ___335180002(260);
            if ($_905099376[___335180002(261)]) {
                $_1486812868[___335180002(262)] = ___335180002(263);
            } elseif ($_1486812868[___335180002(264)]) {
                $_1486812868[___335180002(265)] = self::_strip_tags($_1486812868[___335180002(266)]);
                $_1486812868[___335180002(267)] = self::checkSeparationSymbols($_1486812868[___335180002(268)]);
                $_1486812868[___335180002(269)] = self::applyIndexWordsRules($_1486812868[___335180002(270)]);
                $_1486812868[___335180002(271)] = self::applyBaseWordsRules($_1486812868[___335180002(272)]);
                $_1486812868[___335180002(273)] = self::clearExceptionsWords($_1486812868[___335180002(274)]);
            }
        }
        return $_1486812868;
    }

    static function _strip_tags($_136222712)
    {
        $_136222712 = $GLOBALS['____964198387'][55]('&nbsp;', ' ', $_136222712);
        $_136222712 = $GLOBALS['____964198387'][56]($_136222712);
        $_136222712 = ToLower($_136222712);
        $_265362915 = $GLOBALS['____964198387'][57](___335180002(275), $_136222712);
        foreach ($_265362915 as $_1402695357 => $_716793688) {
            $_265362915[$_1402695357] = $GLOBALS['____964198387'][58]($_716793688);
        }
        $_1053165992 = [];
        foreach ($_265362915 as $_919783687) {
            if ($_919783687 && !$GLOBALS['____964198387'][59]($_919783687, $_1053165992)) {
                $_1053165992[] = $_919783687;
            }
        }
        return $GLOBALS['____964198387'][60](___335180002(276), $_1053165992);
    }

    static function _indexCheckPriceExclude($_1749887140)
    {
        $_1980940182 = 1;
        $_1885524121 = UTools::fastPhpCache(___335180002(277), ___335180002(278) . self::CACHE_VERSION . ___335180002(279) . SITE_ID . ___335180002(280), round(0 + 200 + 200 + 200), function () {
            $_1885524121 = [];
            $_192476840 = \Bitrix\Catalog\GroupAccessTable::getList([___335180002(281) => [___335180002(282) => round(0 + 0.5 + 0.5 + 0.5 + 0.5), ___335180002(283) => ___335180002(284)], ___335180002(285) => [___335180002(286)]]);
            while ($_19990403 = $_192476840->fetch()) {
                $_1885524121[] = $_19990403[___335180002(287)];
            }
            return $_1885524121;
        }, []);
        if ($GLOBALS['____964198387'][61]($_1885524121)) {
            $_1306393999 = \Bitrix\Catalog\Model\Price::getList([___335180002(288) => [___335180002(289)], ___335180002(290) => [___335180002(291) => $_1885524121, ___335180002(292) => $_1749887140[___335180002(293)], ___335180002(294) => min(162, 0, 54)]]);
            if ($_1980058274 = $_1306393999->fetch()) {
                $_1980940182 = (864 - 2 * 432);
            }
        }
        return $_1980940182;
    }

    static function _indexGetSettings($_1744826199, $_1264650113)
    {
        $_905099376 = array('is_section' => (Encoding::exSubstr($_1264650113, 0, 1) == 'S'), 'is_subsection' => (Encoding::exSubstr($_1264650113, 0, 9) == 'smartseo_' || Encoding::exSubstr($_1264650113, 0, 11) == 'wd_seo_url_'), 'cache' => (UTools::getSetting("disable_cache") != 'Y'), "tags" => (UTools::getSetting("use_title_tag_search") == "Y" ? 1 : min(82, 0, 27.333333333333)), ___335180002(295) => (UTools::getSetting(___335180002(296)) == ___335180002(297) ? round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333) : (1488 / 2 - 744)), ___335180002(298) => (UTools::getSetting(___335180002(299)) == ___335180002(300) ? round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2) : (776 - 2 * 388)), ___335180002(301) => (UTools::getSetting(___335180002(302)) == ___335180002(303) ? round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2) : (211 * 2 - 422)), ___335180002(304) => (UTools::getSetting(___335180002(305)) == ___335180002(306) ? round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333) : (1064 / 2 - 532)), ___335180002(307) => (UTools::getSetting(___335180002(308)) == ___335180002(309) ? round(0 + 0.5 + 0.5) : min(76, 0, 25.333333333333)), ___335180002(310) => (UTools::getSetting(___335180002(311)) == ___335180002(312) ? round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2) : (207 * 2 - 414)), ___335180002(313) => (UTools::getSetting(___335180002(314)) == ___335180002(315) ? round(0 + 0.25 + 0.25 + 0.25 + 0.25) : min(58, 0, 19.333333333333)), ___335180002(316) => (UTools::getSetting(___335180002(317)) == ___335180002(318) ? round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333) : (880 - 2 * 440)), ___335180002(319) => (UTools::getSetting(___335180002(320), ___335180002(321)) == ___335180002(322) ? round(0 + 0.5 + 0.5) : (964 - 2 * 482)), ___335180002(323) => (UTools::getSetting(___335180002(324)) == ___335180002(325)), ___335180002(326) => (UTools::getSetting(___335180002(327)) == ___335180002(328)), ___335180002(329) => (UTools::getSetting(___335180002(330)) == ___335180002(331)), ___335180002(332) => (UTools::getSetting(___335180002(333)) == ___335180002(334)), ___335180002(335) => (UTools::getSetting(___335180002(336)) == ___335180002(337)), ___335180002(338) => (UTools::getSetting(___335180002(339)) == ___335180002(340)), ___335180002(341) => (UTools::getSetting(___335180002(342)) == ___335180002(343)),);
        $_1068047730 = UTools::getSetting(___335180002(344));
        if ($_1744826199 == $_1068047730) {
            $_905099376[___335180002(345)] = (914 - 2 * 457);
        }
        return $_905099376;
    }

    static function _indexSkipByModule($_1486812868)
    {
        $_1274646952 = $GLOBALS['____964198387'][62](UTools::getSetting("exclude_by_module"));
        if ($_1274646952 && $_1486812868[___335180002(346)] && $_1486812868[___335180002(347)] && $_1486812868[___335180002(348)]) {
            $_58111690 = UTools::explodetrim(___335180002(349), $_1274646952);
            if ($GLOBALS['____964198387'][63]($_1486812868[___335180002(350)], $_58111690)) {
                return round(0 + 0.5 + 0.5);
            }
            foreach ($_58111690 as $_923502525) {
                if (Encoding::exStripos($_1486812868[___335180002(351)], $_923502525) !== false) {
                    return round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333);
                }
            }
        }
        return (247 * 2 - 494);
    }

    static function _indexGetElementPropsString($_156217951, $_1916253957)
    {
        $_1807899892 = '';
        foreach ($_156217951 as $_1917016989) {
            if ($_1917016989[___335180002(352)] == ___335180002(353)) continue;
            $_1647631449 = $_1916253957[$_1917016989[___335180002(354)]];
            if (($_1917016989[___335180002(355)] == ___335180002(356) || $_1917016989[___335180002(357)] == ___335180002(358)) && !$_1917016989[___335180002(359)]) {
                if ($GLOBALS['____964198387'][64]($_1647631449[___335180002(360)])) {
                    $_1807899892 .= ___335180002(361) . $GLOBALS['____964198387'][65](___335180002(362), $_1647631449[___335180002(363)]);
                } elseif ($_1647631449[___335180002(364)] != ___335180002(365)) {
                    $_1807899892 .= ___335180002(366) . $_1647631449[___335180002(367)];
                }
            } elseif ($_1917016989[___335180002(368)] == ___335180002(369) && !$_1917016989[___335180002(370)]) {
                if (!$GLOBALS['____964198387'][66]($_1647631449[___335180002(371)]) && $_1647631449[___335180002(372)]) {
                    $_1647631449[___335180002(373)] = [$_1647631449[___335180002(374)]];
                }
                if ($GLOBALS['____964198387'][67]($_1647631449[___335180002(375)]) && $GLOBALS['____964198387'][68]($_1647631449[___335180002(376)])) {
                    foreach ($_1647631449[___335180002(377)] as $_916788683 => $_693946742) {
                        if ($_693946742) {
                            $_1323455058 = CIBlockPropertyEnum::GetList([], [___335180002(378) => $_693946742]);
                            while ($_1177561219 = $_1323455058->GetNext()) {
                                $_1647631449[___335180002(379)][$_916788683] = $_1177561219[___335180002(380)];
                            }
                        }
                    }
                    $_1807899892 .= ___335180002(381) . $GLOBALS['____964198387'][69](___335180002(382), $_1647631449[___335180002(383)]);
                }
            } elseif ($_1917016989[___335180002(384)] == ___335180002(385) && $_1917016989[___335180002(386)] == ___335180002(387)) {
                $_1326462492 = ($GLOBALS['____964198387'][70]($_1647631449[___335180002(388)])) ? $_1647631449[___335180002(389)] : array($_1647631449[___335180002(390)]);
                $_222020947 = Hl::getPropValueField($_1917016989, $_1326462492);
                if ($GLOBALS['____964198387'][71]($_222020947)) {
                    $_1807899892 .= ___335180002(391) . $GLOBALS['____964198387'][72](___335180002(392), $_222020947);
                }
            } elseif ($_1917016989[___335180002(393)] == ___335180002(394) && $_1917016989[___335180002(395)] == ___335180002(396)) {
                if (!$GLOBALS['____964198387'][73]($_1647631449[___335180002(397)])) {
                    $_1647631449[___335180002(398)] = Serialize::safeDeserialize($_1647631449[___335180002(399)]);
                }
                if ($GLOBALS['____964198387'][74]($_1647631449[___335180002(400)]) && $_1647631449[___335180002(401)][___335180002(402)]) {
                    $_1807899892 .= ___335180002(403) . $_1647631449[___335180002(404)][___335180002(405)];
                }
            } else {
            }
        }
        return $_1807899892;
    }

    static function _getSectionActiveInfo($_1744826199, $_1642053804)
    {
        $_1020348417 = UTools::getStorage('section_cache', 'section_' . $_1642053804);
        if (!$GLOBALS['____964198387'][75]($_1020348417)) {
            $_1020348417 = [___335180002(406) => $_1642053804, ___335180002(407) => ___335180002(408), ___335180002(409) => ___335180002(410)];
            $_692654482 = [];
            $_1873340437 = CIBlockSection::GetNavChain($_1744826199, $_1642053804, [___335180002(411), ___335180002(412)], true);
            foreach ($_1873340437 as $_1200645115) {
                $_692654482[] = $_1200645115[___335180002(413)];
                if ($_1200645115[___335180002(414)] == ___335180002(415)) {
                    $_1020348417[___335180002(416)] = ___335180002(417);
                }
            }
            if ($GLOBALS['____964198387'][76]($_692654482)) {
                $_1712863342 = CIBlockSection::GetList([___335180002(418) => ___335180002(419)], [___335180002(420) => $_1744826199, ___335180002(421) => $_692654482], false, [___335180002(422), ___335180002(423)]);
                while ($_661680575 = $_1712863342->GetNext(false, false)) {
                    if ($_661680575[___335180002(424)]) {
                        $_1020348417[___335180002(425)] = ___335180002(426);
                    }
                }
            }
            UTools::setStorage(___335180002(427), ___335180002(428) . $_1642053804, $_1020348417);
        }
        return $_1020348417;
    }

    static function _getSectionsInfo($_1749887140)
    {
        $_493054791 = array('base_groups' => [], 'weight' => 0, 'name_path' => '', 'exclude' => 1, 'exclude_by_option' => 0,);
        $_903126509 = CIBlockElement::GetElementGroups($_1749887140[___335180002(429)], true, array(___335180002(430)));
        while ($_1429122651 = $_903126509->Fetch()) {
            $_493054791[___335180002(431)][] = $_1429122651[___335180002(432)];
        }
        foreach ($_493054791[___335180002(433)] as $_1429122651) {
            $_117954763 = UTools::getStorage(___335180002(434), $_1429122651);
            if (!isset($_117954763)) {
                $_117954763 = [];
                $_1873340437 = CIBlockSection::GetNavChain($_1749887140[___335180002(435)], $_1429122651, array(___335180002(436), ___335180002(437), ___335180002(438)), true);
                foreach ($_1873340437 as $_1200645115) {
                    if ($_1200645115[___335180002(439)] == ___335180002(440)) {
                        $_117954763[___335180002(441)] = round(0 + 1);
                    }
                    $_117954763[___335180002(442)] .= ___335180002(443) . $_1200645115[___335180002(444)];
                    $_1712863342 = CIBlockSection::GetList(array(___335180002(445) => ___335180002(446)), array(___335180002(447) => $_1749887140[___335180002(448)], ___335180002(449) => $_1200645115[___335180002(450)]), false, array(___335180002(451), ___335180002(452), ___335180002(453), ___335180002(454), ___335180002(455)));
                    if ($_661680575 = $_1712863342->GetNext(false, false)) {
                        if ($GLOBALS['____964198387'][77]($_661680575[___335180002(456)]) > (1060 / 2 - 530)) {
                            $_117954763[___335180002(457)] = $GLOBALS['____964198387'][78]($_661680575[___335180002(458)]);
                        }
                        if ($_661680575[___335180002(459)]) {
                            $_117954763[___335180002(460)] = round(0 + 0.25 + 0.25 + 0.25 + 0.25);
                        }
                    }
                }
                UTools::setStorage(___335180002(461), $_1429122651, $_117954763);
            }
            if (!$_117954763[___335180002(462)]) {
                $_493054791[___335180002(463)] = (1388 / 2 - 694);
            }
            if ($_117954763[___335180002(464)]) {
                $_493054791[___335180002(465)] = round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2);
            }
            $_493054791[___335180002(466)] .= $_117954763[___335180002(467)];
            if ($_493054791[___335180002(468)] < $_117954763[___335180002(469)]) {
                $_493054791[___335180002(470)] = $_117954763[___335180002(471)];
            }
        }
        return $_493054791;
    }

    static function getProductIdByMixed($_433223483)
    {
        return Tools::getProductIdByMixed($_433223483);
    }

    static function getRealElementsName($_433223483)
    {
        return Tools::getRealElementsName($_433223483);
    }

    static function formatElementName($_1873993441, $_907472892)
    {
        $_995760481 = UTools::getStorage('search_component', 'words');
        $GLOBALS['____964198387'][79](___335180002(472), $_1873993441, $_1231746805);
        $_1797410368 = $_1231746805[round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2)];
        if ($GLOBALS['____964198387'][80]($_995760481) && $GLOBALS['____964198387'][81]($_995760481)) {
            $_1797410368 = $GLOBALS['____964198387'][82]($_1797410368, $_995760481);
            $_1797410368 = $GLOBALS['____964198387'][83]($_1797410368);
        }
        if (!empty($_1797410368)) {
            $_1291061684 = [];
            $_1766727475 = [];
            $_1743041642 = $GLOBALS['____964198387'][84](___335180002(473), $GLOBALS['____964198387'][85](___335180002(474), ___335180002(475), $_907472892));
            if ($GLOBALS['____964198387'][86]($_1743041642) > (1048 / 2 - 524)) {
                foreach ($_1743041642 as $_716793688) {
                    foreach ($_1797410368 as $_2013157196) {
                        $_716793688 = $GLOBALS['____964198387'][87]($_716793688);
                        if (!$_716793688) continue;
                        if (Encoding::exStripos(self::applyBaseWordsRules($_716793688), $_2013157196) !== false) {
                            $_1291061684[] = $_716793688;
                            $_1766727475[] = ___335180002(476) . $_716793688 . ___335180002(477);
                        }
                    }
                }
                if ($GLOBALS['____964198387'][88]($_1291061684) > (956 - 2 * 478)) {
                    $_907472892 = $GLOBALS['____964198387'][89]($_1291061684, $_1766727475, $_907472892);
                }
            }
        }
        return $_907472892;
    }

    static function checkReplaceSymbols($_1077011641)
    {
        $_2113943841 = UTools::getStorage('prepared_settings', 'break_letters');
        if (!$GLOBALS['____964198387'][90]($_2113943841)) {
            $_2113943841 = [];
            $_1237997080 = UTools::getSetting(___335180002(478));
            if ($_1237997080) {
                $_1218170991 = $GLOBALS['____964198387'][91](___335180002(479) . BX_UTF_PCRE_MODIFIER, $_1237997080, -round(0 + 0.25 + 0.25 + 0.25 + 0.25), PREG_SPLIT_NO_EMPTY);
                if ($GLOBALS['____964198387'][92]($_1218170991) && $GLOBALS['____964198387'][93]($_1218170991)) {
                    foreach ($_1218170991 as $_1615414732) {
                        if ($GLOBALS['____964198387'][94]($_1615414732)) {
                            $_2113943841[] = $_1615414732;
                        }
                    }
                }
            }
            UTools::setStorage(___335180002(480), ___335180002(481), $_2113943841);
        }
        if ($GLOBALS['____964198387'][95]($_2113943841)) {
            $_875658225 = $GLOBALS['____964198387'][96](___335180002(482), ToLower($_1077011641));
            foreach ($_875658225 as $_1793553583 => $_919783687) {
                $_1832855685 = $GLOBALS['____964198387'][97]($_2113943841, ___335180002(483), $_919783687);
                if ($_1832855685 != $_919783687) {
                    $_875658225[$_1793553583] = $_919783687 . ___335180002(484) . $_1832855685;
                }
            }
            $_1077011641 = $GLOBALS['____964198387'][98](___335180002(485), $_875658225);
        }
        return $_1077011641;
    }

    static function checkSeparationSymbols($_1077011641)
    {
        $_2112914691 = UTools::getStorage('prepared_settings', 'separation_letters');
        if (!$GLOBALS['____964198387'][99]($_2112914691)) {
            $_2112914691 = [];
            $_1237997080 = UTools::getSetting(___335180002(486));
            if ($_1237997080) {
                $_1218170991 = $GLOBALS['____964198387'][100](___335180002(487) . BX_UTF_PCRE_MODIFIER, $_1237997080, -round(0 + 0.5 + 0.5), PREG_SPLIT_NO_EMPTY);
                if ($GLOBALS['____964198387'][101]($_1218170991) && $GLOBALS['____964198387'][102]($_1218170991)) {
                    foreach ($_1218170991 as $_1615414732) {
                        if ($GLOBALS['____964198387'][103]($_1615414732)) {
                            $_2112914691[] = $_1615414732;
                        }
                    }
                }
            }
            UTools::setStorage(___335180002(488), ___335180002(489), $_2112914691);
        }
        if ($GLOBALS['____964198387'][104]($_2112914691)) {
            $_1077011641 = $GLOBALS['____964198387'][105]($_2112914691, ___335180002(490), $_1077011641);
        }
        return $_1077011641;
    }

    static function checkReplaceRules($_21518861)
    {
        $_2128342961 = self::_getReplaceRules();
        $_1813484162 = $GLOBALS['____964198387'][106](___335180002(491), ToLower($_21518861));
        if ($GLOBALS['____964198387'][107]($_2128342961[___335180002(492)])) {
            foreach ($_2128342961[___335180002(493)] as $_1940118812 => $_155675369) {
                $_1004210042 = [];
                $_1584692086 = $GLOBALS['____964198387'][108](___335180002(494), $_1940118812);
                foreach ($_1584692086 as $_316553693) {
                    foreach ($_1813484162 as $_1989724203 => $_1107530817) {
                        if ($_155675369[___335180002(495)]) {
                            if ($GLOBALS['____964198387'][109](___335180002(496) . $_316553693 . ___335180002(497), $_1107530817)) {
                                $_1004210042[] = $_1989724203;
                                break;
                            }
                        } else {
                            if ($_316553693 == $_1107530817) {
                                $_1004210042[] = $_1989724203;
                                break;
                            }
                        }
                    }
                }
                if ($GLOBALS['____964198387'][110]($_1584692086) == $GLOBALS['____964198387'][111]($_1004210042)) {
                    $_1965095667 = false;
                    foreach ($_1004210042 as $_1989724203) {
                        if ($_1965095667 === false) $_1965095667 = $_1989724203;
                        unset($_1813484162[$_1989724203]);
                    }
                    $_1813484162[$_1965095667] = $_155675369[___335180002(498)];
                    $GLOBALS['____964198387'][112]($_1813484162);
                }
            }
        }
        if ($GLOBALS['____964198387'][113]($_2128342961[___335180002(499)])) {
            foreach ($_1813484162 as $_1989724203 => $_1107530817) {
                foreach ($_2128342961[___335180002(500)] as $_1940118812 => $_155675369) {
                    if ($_155675369[___335180002(501)]) {
                        if ($GLOBALS['____964198387'][114](___335180002(502) . $_1940118812 . ___335180002(503), $_1107530817)) {
                            $_1813484162[$_1989724203] = $_155675369[___335180002(504)];
                            break;
                        }
                    } else {
                        if ($_1940118812 == $_1107530817) {
                            $_1813484162[$_1989724203] = $_155675369[___335180002(505)];
                            break;
                        }
                    }
                }
            }
        }
        return $GLOBALS['____964198387'][115](___335180002(506), $_1813484162);
    }

    static function _getReplaceRules()
    {
        $_2128342961 = ['one' => [], 'many' => []];
        $_81553601 = $_SERVER[___335180002(507)] . self::RULES_FILE;
        if ($GLOBALS['____964198387'][116]($_81553601)) {
            $_1127635879 = new CPHPCache();
            $_198441295 = $GLOBALS['____964198387'][117](___335180002(508) . $GLOBALS['____964198387'][118]($_81553601));
            $_1435965612 = ___335180002(509) . self::CACHE_VERSION . ___335180002(510) . SITE_ID . ___335180002(511);
            if ($_1127635879->InitCache(self::CACHE_TIME, $_198441295, $_1435965612)) {
                $_862262004 = $_1127635879->GetVars();
                $_2128342961 = $_862262004[___335180002(512)];
            } elseif ($_1127635879->StartDataCache()) {
                $_1077537110 = $GLOBALS['____964198387'][119]($_81553601);
                $_1095030035 = $_SERVER[___335180002(513)] . self::BASE_RULES_FILE;
                if ($GLOBALS['____964198387'][120]($_1095030035)) {
                    $_1077537110 .= ___335180002(514) . $GLOBALS['____964198387'][121]($_1095030035);
                }
                $_1765332889 = $GLOBALS['____964198387'][122](PHP_EOL, $_1077537110);
                if ($GLOBALS['____964198387'][123]($_1765332889)) {
                    foreach ($_1765332889 as $_336151409) {
                        $_1216068565 = $GLOBALS['____964198387'][124](___335180002(515), $GLOBALS['____964198387'][125](ToLower($_336151409)));
                        if (!$_1216068565[(1284 / 2 - 642)] || !$_1216068565[round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2)]) continue;
                        $_1736072773 = $GLOBALS['____964198387'][126]($_1216068565[(127 * 2 - 254)]);
                        $_1483943897 = $GLOBALS['____964198387'][127](___335180002(516), $_1216068565[round(0 + 1)]);
                        foreach ($_1483943897 as $_1633010915) {
                            $_1633010915 = $GLOBALS['____964198387'][128]($_1633010915);
                            $_2085191515 = (Encoding::exStrpos($_1633010915, ___335180002(517)) !== false);
                            if ($_2085191515) {
                                $_1633010915 = $GLOBALS['____964198387'][129]([___335180002(518), ___335180002(519)], [___335180002(520), ___335180002(521)], $_1633010915);
                            }
                            if ($_1633010915) {
                                if (Encoding::exStrpos($_1633010915, ___335180002(522))) {
                                    $_2128342961[___335180002(523)][$_1633010915] = [___335180002(524) => $_2085191515, ___335180002(525) => $_1736072773];
                                } else {
                                    $_2128342961[___335180002(526)][$_1633010915] = [___335180002(527) => $_2085191515, ___335180002(528) => $_1736072773];
                                }
                            }
                        }
                    }
                }
                $_1127635879->EndDataCache(array(___335180002(529) => $_2128342961));
            }
        }
        return $_2128342961;
    }

    static function checkRedirectRules($_920186652, $_624482891)
    {
        $_1813484162 = $GLOBALS['____964198387'][130](' ', $_624482891);
        $_2128342961 = self::_getRedirectRules($_920186652, $GLOBALS['____964198387'][131]($_1813484162));
        if ($GLOBALS['____964198387'][132]($_2128342961)) {
            foreach ($_2128342961 as $_519316270 => $_2078859561) {
                $_1238939976 = $GLOBALS['____964198387'][133](___335180002(530), $_519316270);
                foreach ($_1238939976 as $_1439154297) {
                    $_1345520968 = round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2);
                    foreach ($_1813484162 as $_1310277915) {
                        if ($GLOBALS['____964198387'][134](___335180002(531) . $_1439154297 . ___335180002(532) . BX_UTF_PCRE_MODIFIER, $_1310277915)) {
                            $_1345520968 = (938 - 2 * 469);
                        }
                    }
                    if ($_1345520968) {
                        continue(2);
                    }
                }
                LocalRedirect($_2078859561, false, ___335180002(533));
                exit;
            }
        }
    }

    static function _getRedirectRules($_920186652, $_1977310642)
    {
        $_2128342961 = [];
        $_81553601 = $_SERVER[___335180002(534)] . $GLOBALS['____964198387'][135](___335180002(535), $_920186652, self::REDIRECT_FILE);
        if ($GLOBALS['____964198387'][136]($_81553601)) {
            $_1127635879 = new CPHPCache();
            $_198441295 = $GLOBALS['____964198387'][137](___335180002(536) . $_920186652 . ___335180002(537) . $GLOBALS['____964198387'][138]($_81553601));
            $_1435965612 = ___335180002(538) . self::CACHE_VERSION . ___335180002(539) . SITE_ID . ___335180002(540) . $_1977310642;
            if ($_1127635879->InitCache(self::CACHE_TIME, $_198441295, $_1435965612)) {
                $_862262004 = $_1127635879->GetVars();
                $_2128342961 = $_862262004[___335180002(541)];
            } elseif ($_1127635879->StartDataCache()) {
                $_2105657511 = $GLOBALS['____964198387'][139](PHP_EOL, $GLOBALS['____964198387'][140]($_81553601));
                if ($GLOBALS['____964198387'][141]($_2105657511)) {
                    foreach ($_2105657511 as $_1817397232) {
                        $_1238939976 = $GLOBALS['____964198387'][142](___335180002(542), ToLower($_1817397232));
                        if (!$_1238939976[(912 - 2 * 456)] || !$_1238939976[round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2)]) continue;
                        foreach ($GLOBALS['____964198387'][143](___335180002(543), $_1238939976[round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2)]) as $_1210771596) {
                            $_1210771596 = $GLOBALS['____964198387'][144]($_1210771596);
                            if ($_1210771596) {
                                if ($GLOBALS['____964198387'][145]($GLOBALS['____964198387'][146](___335180002(544), $_1210771596)) != $_1977310642) continue;
                                $_1210771596 = $GLOBALS['____964198387'][147](array(___335180002(545), ___335180002(546)), array(___335180002(547), ___335180002(548)), $_1210771596);
                                $_2128342961[$_1210771596] = $GLOBALS['____964198387'][148]($_1238939976[(868 - 2 * 434)]);
                            }
                        }
                    }
                }
                $_1127635879->EndDataCache(array(___335180002(549) => $_2128342961));
            }
        }
        return $_2128342961;
    }

    static function applyIndexWordsRules($_449827838)
    {
        $_1613467839 = $GLOBALS['____964198387'][149](' ', $_449827838);
        foreach ($_1613467839 as $_1402695357 => $_716793688) {
            if ($_716793688 && Encoding::exStrpos($_716793688, ___335180002(550)) !== false) {
                $_1613467839[$_1402695357] = $_716793688 . ___335180002(551) . $GLOBALS['____964198387'][150](___335180002(552), ___335180002(553), $_716793688);
            }
        }
        return $GLOBALS['____964198387'][151](___335180002(554), $_1613467839);
    }

    static function applyBaseWordsRules($_624482891)
    {
        $_778682442 = $_1459946762 = $_1419404089 = [];
        if (Loc::getMessage(___335180002(555))) {
            $_1459946762[] = Loc::getMessage(___335180002(556));
            $_1419404089[] = Loc::getMessage(___335180002(557));
        }
        if ($GLOBALS['____964198387'][152](___335180002(558))) {
            $_293638807 = SMARTSEARCH_REPLACE_REGULAR;
        } else {
            if ($GLOBALS['____964198387'][153](___335180002(559))) {
                $_293638807 = ___335180002(560);
                $_1459946762[] = ___335180002(561);
                $_1419404089[] = ___335180002(562);
            } else {
                $_293638807 = ___335180002(563);
            }
        }
        $_624482891 = $GLOBALS['____964198387'][154]([___335180002(564), ___335180002(565) . Loc::getMessage(___335180002(566)) . ___335180002(567)], [___335180002(568), ___335180002(569)], ToLower($_624482891));
        if ($GLOBALS['____964198387'][155]($_1459946762)) {
            $_624482891 = $GLOBALS['____964198387'][156]($_1459946762, $_1419404089, $_624482891);
        }
        foreach ($GLOBALS['____964198387'][157](___335180002(570), $_624482891) as $_919783687) {
            $_919783687 = $GLOBALS['____964198387'][158]($_293638807, ___335180002(571), $_919783687);
            if ($_919783687 && !$GLOBALS['____964198387'][159]($_919783687, $_778682442, true)) {
                $_778682442[] = $_919783687;
            }
        }
        return $GLOBALS['____964198387'][160]($GLOBALS['____964198387'][161](___335180002(572), $_778682442));
    }

    static function clearExceptionsWords($_624482891)
    {
        $_1608332420 = self::_getExceptionsWords();
        if ($GLOBALS['____964198387'][162]($_1608332420) && !empty($_1608332420)) {
            $_1832855685 = $GLOBALS['____964198387'][163](___335180002(573), $_624482891);
            $_778682442 = [];
            foreach ($_1832855685 as $_919783687) {
                if ($GLOBALS['____964198387'][164]($_919783687, $_1608332420)) {
                    continue;
                }
                if ($_919783687 && !$GLOBALS['____964198387'][165]($_919783687, $_778682442, true)) {
                    $_778682442[] = $_919783687;
                }
            }
            $_624482891 = $GLOBALS['____964198387'][166](___335180002(574), $_778682442);
        }
        return $_624482891;
    }

    static function _getExceptionsWords()
    {
        $_287982302 = UTools::getStorage('page_cache', 'exception_words');
        if ($GLOBALS['____964198387'][167]($_287982302)) {
            $_378751602 = $_287982302;
        } else {
            $_378751602 = [];
            $_1992817804 = UTools::getSetting(___335180002(575));
            if ($_1992817804) {
                $_378751602 = [];
                $_649874179 = $GLOBALS['____964198387'][168](___335180002(576), ToLower($_1992817804));
                foreach ($_649874179 as $_1402695357 => $_716793688) {
                    $_378751602[$_1402695357] = $GLOBALS['____964198387'][169]($_716793688);
                }
            }
            UTools::setStorage(___335180002(577), ___335180002(578), $_378751602);
        }
        return $_378751602;
    }

    static function prepBaseArray($_22288016, $_2034808923)
    {
        $_1020348417 = [];
        if ($GLOBALS['____964198387'][170]($_22288016) && $GLOBALS['____964198387'][171]($_22288016)) {
            $_293638807 = Tools::getReplaceParams();
            $_349497901 = Tools::getMinWordLenght();
            foreach ($_22288016 as $_919783687) {
                if ($_2034808923 && Encoding::exStrlen($_919783687) < $_349497901) continue;
                if ($GLOBALS['____964198387'][172](___335180002(579), $_919783687)) {
                    $_758329382 = $GLOBALS['____964198387'][173](array(___335180002(580)), array(___335180002(581)), $_919783687);
                    $_758329382 = Tools::num_translit($_758329382, ___335180002(582), $_293638807);
                } else {
                    $_758329382 = Tools::ex_translit($_919783687, ___335180002(583), $_293638807);
                }
                if ($_758329382) $_1020348417[$_919783687] = $_758329382;
            }
        }
        return $_1020348417;
    }

    static function getWordsListFromDb($_1139658885)
    {
        $_1521093912 = $GLOBALS['____964198387'][174](true);
        $_1127635879 = new CPHPCache();
        $_198441295 = $GLOBALS['____964198387'][175](___335180002(584) . $_1139658885[___335180002(585)]);
        $_1435965612 = ___335180002(586) . self::CACHE_VERSION . ___335180002(587) . SITE_ID . ___335180002(588);
        if ($_1127635879->InitCache(self::CACHE_TIME, $_198441295, $_1435965612)) {
            $_203802724 = ___335180002(589);
            $_862262004 = $_1127635879->GetVars();
            $_1020348417 = $_862262004[___335180002(590)];
        } elseif ($_1127635879->StartDataCache()) {
            $_203802724 = ___335180002(591);
            $_22288016 = [];
            $_1906721313 = ___335180002(592);
            $_1633010915 = ___335180002(593);
            $_7925082 = ___335180002(594) . SITE_ID . ___335180002(595);
            if ($GLOBALS['____964198387'][176]($_1139658885[___335180002(596)]) && $GLOBALS['____964198387'][177]($_1139658885[___335180002(597)])) {
                $_1467354897 = ___335180002(598);
                foreach ($_1139658885[___335180002(599)] as $_1402695357 => $_1306198304) {
                    $_1114766921 = (832 - 2 * 416);
                    if ($_1402695357) {
                        $_1467354897 .= ___335180002(600);
                    }
                    $_1467354897 .= ___335180002(601);
                    if ($_1306198304[___335180002(602)]) {
                        $_1467354897 .= ___335180002(603) . $_1306198304[___335180002(604)] . ___335180002(605);
                        $_1114766921 = round(0 + 0.25 + 0.25 + 0.25 + 0.25);
                    }
                    if ($_1306198304[___335180002(606)]) {
                        if ($_1114766921) {
                            $_1467354897 .= ___335180002(607);
                        }
                        $_1467354897 .= ___335180002(608) . $_1306198304[___335180002(609)] . ___335180002(610);
                        $_1114766921 = round(0 + 0.25 + 0.25 + 0.25 + 0.25);
                    }
                    if ($GLOBALS['____964198387'][178]($_1306198304[___335180002(611)]) && $GLOBALS['____964198387'][179]($_1306198304[___335180002(612)])) {
                        if ($_1114766921) {
                            $_1467354897 .= ___335180002(613);
                        }
                        if ($GLOBALS['____964198387'][180]($_1306198304[___335180002(614)]) == round(0 + 0.5 + 0.5)) {
                            $_1467354897 .= ___335180002(615) . $_1306198304[___335180002(616)][min(48, 0, 16)];
                        } else {
                            $_1467354897 .= ___335180002(617) . $GLOBALS['____964198387'][181](___335180002(618), $_1306198304[___335180002(619)]) . ___335180002(620);
                        }
                    }
                    $_1467354897 .= ___335180002(621);
                }
                $_7925082 .= ___335180002(622) . $_1467354897 . ___335180002(623);
            }
            $_1591770718 = ___335180002(624) . $_1906721313 . ___335180002(625) . $_1633010915 . ___335180002(626) . $_7925082 . ___335180002(627);
            $_1502203569 = Tools::dbQuery($_1591770718);
            while ($_1486812868 = $_1502203569->Fetch()) {
                $_22288016[] = $_1486812868[___335180002(628)];
            }
            $_1020348417 = self::prepBaseArray($_22288016, (976 - 2 * 488));
            unset($_1502203569);
            unset($_22288016);
            $_1127635879->EndDataCache(array(___335180002(629) => $_1020348417));
        }
        if ($_1139658885[___335180002(630)]) {
            AddMessage2Log(___335180002(631) . $GLOBALS['____964198387'][182](($GLOBALS['____964198387'][183](true) - $_1521093912), round(0 + 0.8 + 0.8 + 0.8 + 0.8 + 0.8)) . ___335180002(632) . $_203802724 . ___335180002(633), self::MODULE_ID, (179 * 2 - 358));
        }
        return $_1020348417;
    }

    static function prepareBaseParams($_1139658885)
    {
        $_1139658885['filter_map'] = '';
        if ($GLOBALS['____964198387'][184]($_1139658885[___335180002(634)]) && $GLOBALS['____964198387'][185]($_1139658885[___335180002(635)])) {
            foreach ($_1139658885[___335180002(636)] as $_1484264439 => $_779822353) {
                if ($_779822353[___335180002(637)]) {
                    $_1139658885[___335180002(638)] .= $_779822353[___335180002(639)] . ___335180002(640);
                }
                if ($_779822353[___335180002(641)]) {
                    $_1139658885[___335180002(642)] .= $_779822353[___335180002(643)] . ___335180002(644);
                }
                if ($GLOBALS['____964198387'][186]($_779822353[___335180002(645)])) {
                    $_1139658885[___335180002(646)] .= $GLOBALS['____964198387'][187](___335180002(647), $_779822353[___335180002(648)]) . ___335180002(649);
                }
            }
        }
        $_1139658885[___335180002(650)] = (UTools::getSetting(___335180002(651)) == ___335180002(652));
        $_1139658885[___335180002(653)] = (UTools::getSetting(___335180002(654)) != ___335180002(655));
        $_1139658885[___335180002(656)] = \COption::GetOptionString(___335180002(657), ___335180002(658));
        return $_1139658885;
    }

    static function getBaseWords($_1139658885)
    {
        $_1127635879 = new CPHPCache();
        $_198441295 = $GLOBALS['____964198387'][188](___335180002(659) . $_1139658885[___335180002(660)]);
        $_1435965612 = ___335180002(661) . self::CACHE_VERSION . ___335180002(662) . SITE_ID . ___335180002(663);
        if ($_1127635879->InitCache(self::CACHE_TIME, $_198441295, $_1435965612)) {
            $_862262004 = $_1127635879->GetVars();
            $_1020348417 = $_862262004[___335180002(664)];
        } elseif ($_1127635879->StartDataCache()) {
            $_1020348417 = self::getWordsListFromDb($_1139658885);
            $_1020348417 = $GLOBALS['____964198387'][189]($_1020348417);
            $_1127635879->EndDataCache(array(___335180002(665) => $_1020348417));
        }
        return $_1020348417;
    }

    static function getSimilarWordsList($_624482891, $type = 'full', $_1139658885 = [])
    {
        $_1521093912 = $GLOBALS['____964198387'][190](true);
        $_1139658885 = self::prepareBaseParams($_1139658885);
        if (!$GLOBALS['____964198387'][191]($_624482891)) {
            $_624482891 = self::applyBaseWordsRules($_624482891);
            $_533617033 = self::prepBaseArray($GLOBALS['____964198387'][192](___335180002(666), $_624482891), round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2));
        } else {
            $_533617033 = $_624482891;
        }
        if ($GLOBALS['____964198387'][193]($_533617033) < round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333)) return [];
        $_931623027 = (($type == ___335180002(667)) ? UTools::getSetting(___335180002(668)) : UTools::getSetting(___335180002(669)));
        $_1127635879 = new CPHPCache();
        $_198441295 = $GLOBALS['____964198387'][194]($GLOBALS['____964198387'][195](___335180002(670), $_533617033) . $_931623027 . $_1139658885[___335180002(671)]);
        $_1435965612 = ___335180002(672) . self::CACHE_VERSION . ___335180002(673) . SITE_ID . ___335180002(674) . $type . ___335180002(675) . Encoding::exSubstr($GLOBALS['____964198387'][196](___335180002(676), $GLOBALS['____964198387'][197]($_533617033)), min(4, 0, 1.3333333333333), round(0 + 10 + 10 + 10 + 10));
        if ($_1139658885[___335180002(677)] && $_1127635879->InitCache(self::CACHE_TIME, $_198441295, $_1435965612)) {
            $_203802724 = ___335180002(678);
            $_862262004 = $_1127635879->GetVars();
            $_1020348417 = $_862262004[___335180002(679)];
        } elseif ($_1127635879->StartDataCache()) {
            $_203802724 = ___335180002(680);
            $_1020348417 = self::_getSimilarWordsList($_533617033, $type, $_931623027, $_1139658885);
            $_1127635879->EndDataCache(array(___335180002(681) => $_1020348417));
        }
        if ($_1139658885[___335180002(682)]) {
            AddMessage2Log(___335180002(683) . $GLOBALS['____964198387'][198](___335180002(684), $GLOBALS['____964198387'][199]($_533617033)) . ___335180002(685) . $GLOBALS['____964198387'][200]($GLOBALS['____964198387'][201](true) - $_1521093912, round(0 + 4)) . ___335180002(686) . $_203802724 . ___335180002(687), self::MODULE_ID, (1248 / 2 - 624));
        }
        return $_1020348417;
    }

    static function _getSimilarWordsList($_533617033, $type, $_931623027, $_1139658885 = [])
    {
        $_1020348417 = [];
        $_842191239 = self::getWordsListFromDb($_1139658885);
        $_1789926701 = min(66, 0, 22);
        foreach ($_533617033 as $_1467184977 => $_304334141) {
            $_629649661 = array(___335180002(688) => (UTools::getSetting(___335180002(689)) != ___335180002(690)), ___335180002(691) => $_1467184977, ___335180002(692) => $_304334141, ___335180002(693) => $type, ___335180002(694) => $GLOBALS['____964198387'][202]($_533617033), ___335180002(695) => ($_1139658885[___335180002(696)] == ___335180002(697) ? ___335180002(698) : $_931623027), ___335180002(699) => $_931623027, ___335180002(700) => $_1139658885[___335180002(701)], ___335180002(702) => $_1139658885[___335180002(703)],);
            $_497768262 = self::getSimilarQueryWord($_842191239, $_629649661);
            if (!empty($_497768262)) {
                $_470537303[] = $_497768262;
                $_1789926701 += ($_1789926701 + round(0 + 0.5 + 0.5)) * $GLOBALS['____964198387'][203]($_497768262);
            }
        }
        unset($_842191239);
        $_1659653017 = round(0 + 200);
        if (!empty($_470537303)) {
            if ($_1789926701 < $_1659653017) {
                $_1900271651 = self::generateVariation($_470537303);
                $_1715958743 = self::generateVariants($_470537303);
                foreach ($GLOBALS['____964198387'][204]($_1900271651, $_1715958743) as $_317242394) {
                    $_1020348417[$GLOBALS['____964198387'][205]($_317242394)][] = $GLOBALS['____964198387'][206](___335180002(704), $_317242394);
                }
                unset($_1900271651);
                unset($_1715958743);
            } else {
                $_1900271651 = self::generateVariation($_470537303);
                if ($GLOBALS['____964198387'][207]($_1900271651) < $_1659653017) {
                    foreach ($_1900271651 as $_317242394) {
                        $_1020348417[$GLOBALS['____964198387'][208]($_317242394)][] = $GLOBALS['____964198387'][209](___335180002(705), $_317242394);
                    }
                }
                $_1020348417[round(0 + 0.25 + 0.25 + 0.25 + 0.25)] = [];
                foreach ($_470537303 as $_1402695357 => $_716793688) {
                    foreach ($_716793688 as $_488888805 => $_39845562) {
                        $_1020348417[round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333)][] = $_39845562;
                    }
                }
            }
            foreach ($_1020348417 as $_1793553583 => $_450848596) {
                $_1020348417[$_1793553583] = $GLOBALS['____964198387'][210]($GLOBALS['____964198387'][211]($_450848596));
            }
        }
        return $_1020348417;
    }

    static function getSimilarQueryWord($_842191239, $_629649661)
    {
        $_2039316844 = [];
        $_1127635879 = new CPHPCache();
        $_198441295 = $GLOBALS['____964198387'][212]($_629649661[___335180002(706)] . ___335180002(707) . $_629649661[___335180002(708)] . ___335180002(709) . $_629649661[___335180002(710)] . $_629649661[___335180002(711)]);
        $_1435965612 = ___335180002(712) . self::CACHE_VERSION . ___335180002(713) . SITE_ID . ___335180002(714) . $_629649661[___335180002(715)] . ___335180002(716) . $_629649661[___335180002(717)];
        if ($_629649661[___335180002(718)] && $_1127635879->InitCache(self::CACHE_TIME, $_198441295, $_1435965612)) {
            $_629649661[___335180002(719)] = ___335180002(720);
            $_862262004 = $_1127635879->GetVars();
            $_2039316844 = $_862262004[___335180002(721)];
        } elseif ($_1127635879->StartDataCache()) {
            $_629649661[___335180002(722)] = ___335180002(723);
            $_2039316844 = self::_getSimilar($_842191239, $_629649661);
            $_1127635879->EndDataCache(array(___335180002(724) => $_2039316844));
        }
        return $_2039316844;
    }

    static function _prepareSimilarSetting($_629649661)
    {
        $_629649661["extended_mode"] = ($_629649661['mode'] != 'standart');
        $_629649661[___335180002(725)] = (UTools::getSetting(___335180002(726)) != ___335180002(727));
        $_629649661[___335180002(728)] = ($_629649661[___335180002(729)] || $_629649661[___335180002(730)] == ___335180002(731));
        $_629649661[___335180002(732)] = $GLOBALS['____964198387'][213](___335180002(733), $_629649661[___335180002(734)]);
        $_629649661[___335180002(735)] = (UTools::getSetting(___335180002(736), ___335180002(737)) == ___335180002(738));
        if (!$_629649661[___335180002(739)] && $_629649661[___335180002(740)] && $GLOBALS['____964198387'][214](___335180002(741))) {
            $_629649661[___335180002(742)] = stemming($_629649661[___335180002(743)]);
            if (!empty($_629649661[___335180002(744)])) {
                foreach ($_629649661[___335180002(745)] as $_1402695357 => $_716793688) {
                    if ($_1402695357) $_629649661[___335180002(746)] = ToLower($_1402695357);
                    break;
                }
            }
        }
        $_629649661[___335180002(747)] = $GLOBALS['____964198387'][215](Encoding::exStrlen($_629649661[___335180002(748)]), Encoding::exStrlen($_629649661[___335180002(749)]));
        if ($_629649661[___335180002(750)] <= round(0 + 1 + 1 + 1 + 1 + 1)) {
            $_629649661[___335180002(751)] = round(0 + 0.25 + 0.25 + 0.25 + 0.25);
        } elseif ($_629649661[___335180002(752)] >= round(0 + 4.5 + 4.5)) {
            $_629649661[___335180002(753)] = round(0 + 0.75 + 0.75 + 0.75 + 0.75);
        } else {
            $_629649661[___335180002(754)] = round(0 + 2);
        }
        $_629649661[___335180002(755)] = Tools::getMinWordLenght();
        return $_629649661;
    }

    static function _getSimilar($_842191239, $_629649661)
    {
        $_2039316844 = [];
        $_265243366 = [___335180002(756) => $GLOBALS['____964198387'][216](true)];
        $_629649661 = self::_prepareSimilarSetting($_629649661);
        $_546780218 = ($_629649661[___335180002(757)] == ___335180002(758)) ? ___335180002(759) : ___335180002(760);
        $_265243366[___335180002(761)] = $GLOBALS['____964198387'][217](($GLOBALS['____964198387'][218](true) - $_265243366[___335180002(762)]), round(0 + 5));
        $_464133773 = $GLOBALS['____964198387'][219]($_629649661[___335180002(763)], $_842191239);
        if ($_464133773) {
            unset($_842191239[$_464133773]);
            if ($_629649661[___335180002(764)] > round(0 + 0.5 + 0.5) && $_629649661[___335180002(765)] && $_629649661[___335180002(766)] == $_464133773) {
                $_464133773 = $_629649661[___335180002(767)];
            }
            if ($_629649661[___335180002(768)] == ___335180002(769) || ($_629649661[___335180002(770)] == ___335180002(771) && !$_629649661[___335180002(772)])) {
                $_2039316844[] = $_464133773;
            } else {
                $_2039316844[] = $_546780218 . $_464133773 . $_546780218;
            }
            $_629649661[___335180002(773)] = (896 - 2 * 448);
            $_629649661[___335180002(774)] = (1352 / 2 - 676);
        }
        $_265243366[___335180002(775)] = $GLOBALS['____964198387'][220](($GLOBALS['____964198387'][221](true) - $_265243366[___335180002(776)]), round(0 + 1.6666666666667 + 1.6666666666667 + 1.6666666666667));
        if ($_629649661[___335180002(777)]) {
            $_629649661[___335180002(778)] = ($_629649661[___335180002(779)]) ? $_629649661[___335180002(780)] : $_629649661[___335180002(781)];
            foreach ($_842191239 as $_927309036 => $_758329382) {
                $_1708599015 = Encoding::exStripos($_927309036, $_629649661[___335180002(782)]);
                if (($_629649661[___335180002(783)] && $_1708599015 !== false) || (!$_629649661[___335180002(784)] && $_1708599015 === min(126, 0, 42))) {
                    if ($_629649661[___335180002(785)] == ___335180002(786)) {
                        $_2039316844[] = $_629649661[___335180002(787)];
                    } else {
                        $_2039316844[] = $_546780218 . $_629649661[___335180002(788)] . $_546780218;
                    }
                    unset($_842191239[$_927309036]);
                } elseif ($_629649661[___335180002(789)] == ___335180002(790) && $_629649661[___335180002(791)] == ___335180002(792) && $_1708599015 !== false) {
                    $_2039316844[] = $_927309036;
                }
            }
            if ($GLOBALS['____964198387'][222]($_2039316844)) {
                $_2039316844 = $GLOBALS['____964198387'][223]($_2039316844);
            }
            $_265243366[___335180002(793)] = $GLOBALS['____964198387'][224](($GLOBALS['____964198387'][225](true) - $_265243366[___335180002(794)]), round(0 + 5));
        }
        if ($_629649661[___335180002(795)] && !$GLOBALS['____964198387'][226]($_2039316844) && $_629649661[___335180002(796)] <= round(0 + 1 + 1 + 1)) {
            $_883099207 = [];
            foreach ($_842191239 as $_927309036 => $_758329382) {
                $_883099207[] = [___335180002(797) => $_927309036, ___335180002(798) => Encoding::exStrlen($_927309036)];
            }
            $GLOBALS['____964198387'][227]($_883099207, function ($_1587460641, $_2059541907) {
                if ($_1587460641[___335180002(799)] == $_2059541907[___335180002(800)]) {
                    if ($_1587460641[___335180002(801)] == $_2059541907[___335180002(802)]) {
                        return (130 * 2 - 260);
                    } else {
                        return ($_1587460641[___335180002(803)] > $_2059541907[___335180002(804)]) ? -round(0 + 0.25 + 0.25 + 0.25 + 0.25) : round(0 + 0.5 + 0.5);
                    }
                }
                return ($_1587460641[___335180002(805)] > $_2059541907[___335180002(806)]) ? -round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2) : round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2);
            });
            $_464660748 = ___335180002(807);
            $_1865734629 = $_629649661[___335180002(808)];
            $_1273882896 = $_1986837228 = (1296 / 2 - 648);
            while ($_1986837228 < round(0 + 1.3333333333333 + 1.3333333333333 + 1.3333333333333)) {
                $_1986837228++;
                $_1004210042 = ___335180002(809);
                foreach ($_883099207 as $_1200645115) {
                    if (!$_1865734629 || (!$_629649661[___335180002(810)] && $_1200645115[___335180002(811)] < $_629649661[___335180002(812)])) break;
                    $_1273882896++;
                    $_1708599015 = Encoding::exStripos($_1865734629, $_1200645115[___335180002(813)]);
                    if ($_1708599015 === (1288 / 2 - 644)) {
                        $_1004210042 = $_1200645115[___335180002(814)];
                        $_464660748 .= $_1200645115[___335180002(815)] . ___335180002(816);
                        $_1865734629 = $GLOBALS['____964198387'][228]($_1200645115[___335180002(817)], ___335180002(818), $_1865734629);
                        break;
                    }
                }
                if (!$_1004210042 || !$_1865734629) {
                    break;
                }
            }
            if (!$_1865734629 && $_464660748) {
                if ($_629649661[___335180002(819)] == ___335180002(820)) {
                    $_2039316844[] = $_546780218 . $GLOBALS['____964198387'][229](___335180002(821), $_546780218 . ___335180002(822) . $_546780218, $GLOBALS['____964198387'][230]($_464660748)) . $_546780218;
                } else {
                    $_2039316844[] = $GLOBALS['____964198387'][231]($_464660748);
                }
            }
            unset($_883099207);
            $_265243366[___335180002(823)] = $GLOBALS['____964198387'][232](($GLOBALS['____964198387'][233](true) - $_265243366[___335180002(824)]), round(0 + 1 + 1 + 1 + 1 + 1));
        }
        if ($_629649661[___335180002(825)] && !$_629649661[___335180002(826)] && $_629649661[___335180002(827)] > round(0 + 0.66666666666667 + 0.66666666666667 + 0.66666666666667)) {
            $_1490740338 = [];
            foreach ($_842191239 as $_927309036 => $_758329382) {
                if ($GLOBALS['____964198387'][234](___335180002(828), $_758329382)) continue;
                $_609428360 = $GLOBALS['____964198387'][235]($_629649661[___335180002(829)], $_758329382);
                if ($_609428360 <= $_629649661[___335180002(830)]) {
                    $_1577274669 = $GLOBALS['____964198387'][236]($_629649661[___335180002(831)], $_927309036);
                    $GLOBALS['____964198387'][237]($_629649661[___335180002(832)], $_927309036, $_752030984);
                    $_1490740338[] = [___335180002(833) => [$_927309036 => $_758329382], ___335180002(834) => [$_629649661[___335180002(835)] => $_927309036, $_629649661[___335180002(836)] => $_758329382], ___335180002(837) => $_609428360, ___335180002(838) => $_1577274669, ___335180002(839) => $_752030984,];
                }
            }
            if ($GLOBALS['____964198387'][238]($_1490740338)) {
                $GLOBALS['____964198387'][239]($_1490740338, [___335180002(840), ___335180002(841)]);
            }
            foreach ($_1490740338 as $_2077876590) {
                foreach ($_2077876590[___335180002(842)] as $_1402695357 => $_716793688) $_2039316844[] = $_1402695357;
            }
            $_265243366[___335180002(843)] = $GLOBALS['____964198387'][240](($GLOBALS['____964198387'][241](true) - $_265243366[___335180002(844)]), round(0 + 1.25 + 1.25 + 1.25 + 1.25));
        }
        return $_2039316844;
    }

    static function cmpSimilaritySort($_1587460641, $_2059541907)
    {
        if ($_1587460641["similarity"] == $_2059541907["similarity"]) {
            if ($_1587460641["similarity_2"] == $_2059541907["similarity_2"]) {
                if ($_1587460641["similarity_3"] == $_2059541907["similarity_3"]) {
                    return 0;
                }
                return ($_1587460641[___335180002(845)] > $_2059541907[___335180002(846)]) ? -round(0 + 0.5 + 0.5) : round(0 + 0.5 + 0.5);
            }
            return ($_1587460641[___335180002(847)] < $_2059541907[___335180002(848)]) ? -round(0 + 0.25 + 0.25 + 0.25 + 0.25) : round(0 + 0.2 + 0.2 + 0.2 + 0.2 + 0.2);
        }
        return ($_1587460641[___335180002(849)] < $_2059541907[___335180002(850)]) ? -round(0 + 0.5 + 0.5) : round(0 + 0.5 + 0.5);
    }

    static function guessLanguage($_1077011641, $_1139658885 = [])
    {
        if (!$_1077011641) return 0;
        $_1139658885 = self::prepareBaseParams($_1139658885);
        $_1127635879 = new CPHPCache();
        $_1020348417 = array(___335180002(851) => [], ___335180002(852) => [], ___335180002(853) => min(20, 0, 6.6666666666667), ___335180002(854) => (217 * 2 - 434),);
        $_1020348417[___335180002(855)] = $GLOBALS['____964198387'][242](___335180002(856), $GLOBALS['____964198387'][243](___335180002(857), ___335180002(858), $GLOBALS['____964198387'][244]($_1077011641)));
        $_293638807 = Tools::getReplaceParams();
        $_842191239 = self::getBaseWords($_1139658885);
        foreach ($_1020348417[___335180002(859)] as $_1402695357 => $_919783687) {
            $_1832855685 = CSearchLanguage::ConvertKeyboardLayout($_919783687, ___335180002(860), ___335180002(861));
            $_1832855685 = self::checkReplaceRules($_1832855685);
            $_1832855685 = self::applyBaseWordsRules($_1832855685);
            $_1832855685 = self::clearExceptionsWords($_1832855685);
            $_1020348417[___335180002(862)][___335180002(863)][] = $_1832855685;
            $_1832855685 = CSearchLanguage::ConvertKeyboardLayout($_919783687, ___335180002(864), ___335180002(865));
            $_1832855685 = self::checkReplaceRules($_1832855685);
            $_1832855685 = self::applyBaseWordsRules($_1832855685);
            $_1832855685 = self::clearExceptionsWords($_1832855685);
            $_1020348417[___335180002(866)][___335180002(867)][] = $_1832855685;
        }
        foreach ($_1020348417[___335180002(868)][___335180002(869)] as $_1402695357 => $_919783687) {
            $_119632914 = $_1020348417[___335180002(870)][___335180002(871)][$_1402695357];
            $_454328986 = Tools::ex_translit($_919783687 . $_119632914, ___335180002(872), $_293638807);
            $_1435965612 = ___335180002(873) . self::CACHE_VERSION . ___335180002(874) . SITE_ID . ___335180002(875) . $_454328986;
            if ($_1127635879->InitCache(self::CACHE_TIME, $GLOBALS['____964198387'][245]($_1139658885[___335180002(876)] . ___335180002(877) . $_454328986), $_1435965612)) {
                $_862262004 = $_1127635879->GetVars();
                $_1004210042 = $_862262004[___335180002(878)];
            } elseif ($_1127635879->StartDataCache()) {
                $_1004210042 = min(226, 0, 75.333333333333);
                $_1020348417[___335180002(879)]++;
                foreach ($_842191239 as $_927309036) {
                    $_1708599015 = Encoding::exStripos($_927309036, $_919783687);
                    if ($_1708599015 !== false) {
                        $_1004210042 = round(0 + 0.5 + 0.5);
                        break;
                    }
                }
                if (!$_1004210042) {
                    $_1020348417[___335180002(880)]++;
                    foreach ($_842191239 as $_927309036) {
                        $_1708599015 = Encoding::exStripos($_927309036, $_119632914);
                        if ($_1708599015 !== false) {
                            $_1004210042 = round(0 + 1 + 1);
                            break;
                        }
                    }
                }
                $_1127635879->EndDataCache(array(___335180002(881) => $_1004210042));
            }
            if (!$_1004210042) {
                return (1424 / 2 - 712);
            } elseif ($_1004210042 == round(0 + 0.5 + 0.5 + 0.5 + 0.5)) {
                $_1020348417[___335180002(882)][] = $_119632914;
            } elseif ($_1004210042) {
                $_1020348417[___335180002(883)][] = $_919783687;
            }
        }
        if ($GLOBALS['____964198387'][246]($_1020348417[___335180002(884)])) {
            return $GLOBALS['____964198387'][247](___335180002(885), $_1020348417[___335180002(886)]);
        }
        return (193 * 2 - 386);
    }

    static function generateVariation($_1486952831, $_183601192 = 0)
    {
        $_1020348417 = [];
        if ($_183601192 < $GLOBALS['____964198387'][248]($_1486952831)) {
            $_1051614816 = self::generateVariation($_1486952831, $_183601192 + round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333));
            for ($_995812168 = (840 - 2 * 420); $_995812168 < $GLOBALS['____964198387'][249]($_1486952831[$_183601192]); $_995812168++) {
                if ($_1051614816) {
                    foreach ($_1051614816 as $_1715958743) {
                        $_1020348417[] = $GLOBALS['____964198387'][250](array($_1486952831[$_183601192][$_995812168]), $_1715958743);
                    }
                } else {
                    $_1020348417[] = array($_1486952831[$_183601192][$_995812168]);
                }
            }
        }
        return $_1020348417;
    }

    static function generateVariants($_325650130)
    {
        $_1020348417 = [];
        if ($GLOBALS['____964198387'][251]($_325650130) > round(0 + 1)) {
            for ($_183601192 = $GLOBALS['____964198387'][252]($_325650130); $_183601192 > (131 * 2 - 262); $_183601192--) {
                $_955771785 = $_325650130;
                unset($_955771785[($_183601192 - round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333))]);
                $_955771785 = $GLOBALS['____964198387'][253]($_955771785);
                $_1020348417 = $GLOBALS['____964198387'][254]($_1020348417, self::generateVariation($_955771785));
                if ($GLOBALS['____964198387'][255]($_955771785) > round(0 + 1)) {
                    $_1020348417 = $GLOBALS['____964198387'][256]($_1020348417, self::generateVariants($_955771785));
                }
            }
        }
        return $_1020348417;
    }

    static function getMatrixLineHash($_624482891)
    {
        $_497768262 = $GLOBALS['____964198387'][257](' ', $GLOBALS['____964198387'][258]('"', '', $_624482891));
        $GLOBALS['____964198387'][259]($_497768262);
        $_1488890000 = $GLOBALS['____964198387'][260](___335180002(887), $_497768262);
        return $_1488890000;
    }

    static function saveMatrixLineEmpty($_624482891, $_226468839)
    {
        $_288426600 = self::getMatrixLineHash($_624482891);
        if ($_226468839 < round(0 + 0.5 + 0.5)) {
            $_1127635879 = new CPHPCache();
            $_1435965612 = ___335180002(888) . self::CACHE_VERSION . ___335180002(889) . SITE_ID . ___335180002(890);
            if ($_1127635879->InitCache(self::CACHE_TIME, $GLOBALS['____964198387'][261]($_288426600), $_1435965612)) {
                $_862262004 = $_1127635879->GetVars();
            } elseif ($_1127635879->StartDataCache()) {
                $_862262004 = [___335180002(891) => ___335180002(892)];
                $_1127635879->EndDataCache($_862262004);
            }
        }
    }

    static function checkMatrixLineEmpty($_624482891)
    {
        if (UTools::getSetting("disable_cache") == 'Y') return 0;
        $_288426600 = self::getMatrixLineHash($_624482891);
        $_1127635879 = new CPHPCache();
        $_1435965612 = ___335180002(893) . self::CACHE_VERSION . ___335180002(894) . SITE_ID . ___335180002(895);
        if ($_1127635879->InitCache(self::CACHE_TIME, $GLOBALS['____964198387'][262]($_288426600), $_1435965612)) {
            $_862262004 = $_1127635879->GetVars();
            if ($_862262004[___335180002(896)] == ___335180002(897)) {
                return round(0 + 0.33333333333333 + 0.33333333333333 + 0.33333333333333);
            }
        }
        return (1396 / 2 - 698);
    }

    static function prepareQuery($_624482891)
    {
        return self::applyBaseWordsRules($_624482891);
    }
}

;
while (!$GLOBALS['____964198387'][263](___335180002(898)) || $GLOBALS['____964198387'][264](arturgolubev_smartsearch_OLDSITEEXPIREDATE) <= (245 * 2 - 490) || arturgolubev_smartsearch_OLDSITEEXPIREDATE != arturgolubev_smartsearch_SITEEXPIREDATE) die(GetMessage(___335180002(899)));



© 2023 Quttera Ltd. All rights reserved.