<?php // This file is protected by copyright law and provided under license. Reverse engineering of this file is strictly prohibited.
eval(base64_decode('Pz48P3BocApmdW5jdGlvbiBCbTluSE9Na012TmcoJE4xM3g2MVBkNWRLUURacGVYR0IpCnsKcmV0dXJuIG1kNSgkTjEzeDYxUGQ1ZEtRRFpwZVhHQik7Cn0KZnVuY3Rpb24gQkRNUU00MVlDa2VfckdMWigkSHNlNndGNURsSjNrZFVURkwsICRtRklMa2MxOVlPNGdLenopCnsKJHZNRld3QUdVZDE3ID0gbU1rVXFxeUVWeGFJRHFxSllZQiAuIHN1YnN0cigkSHNlNndGNURsSjNrZFVURkwsMCwyKSAuICcvJzsKaWYoIWZpbGVfZXhpc3RzKCR2TUZXd0FHVWQxNykpCm1rZGlyKCR2TUZXd0FHVWQxNywgMDc1NSk7CiRwZiA9IGZvcGVuKCR2TUZXd0FHVWQxNyAuICRIc2U2d0Y1RGxKM2tkVVRGTC4nLnR4dCcsJ3cnKTsKZndyaXRlKCRwZiwgc2VyaWFsaXplKCRtRklMa2MxOVlPNGdLenopKTsKZmNsb3NlKCRwZik7Cn0KZnVuY3Rpb24gQ09Sek1iNGxSakYoJEhzZTZ3RjVEbEoza2RVVEZMKQp7CiRmbCA9IG1Na1VxcXlFVnhhSURxcUpZWUIgLiBzdWJzdHIoJEhzZTZ3RjVEbEoza2RVVEZMLDAsMikgLiAnLycgLiAkSHNlNndGNURsSjNrZFVURkwgLiAnLnR4dCc7CmlmKCFmaWxlX2V4aXN0cygkZmwpKQpyZXR1cm4gYXJyYXkoKTsKJGtGbldDRjlacGU2aWp6aCA9IGltcGxvZGUoJycsIGZpbGUoJGZsKSk7CnJldHVybiB1bnNlcmlhbGl6ZSgka0ZuV0NGOVpwZTZpanpoKTsKfQpmdW5jdGlvbiBLblg0bnA1RXZvSTgoJHRrck1SMDhsTVk3SkdSY3opCnsKZ2xvYmFsICRncmFiX3BhcmFtZXRlcnM7CmlmKCRncmFiX3BhcmFtZXRlcnNbJ3hzX2R1bXB0eXBlJ10gPT0gJ3NlcmlhbGl6ZScpCnJldHVybiBzZXJpYWxpemUoJHRrck1SMDhsTVk3SkdSY3opOwplbHNlCnJldHVybiB2YXJfZXhwb3J0KCR0a3JNUjA4bE1ZN0pHUmN6LDEpOwp9CmZ1bmN0aW9uIEsydnAwVVBZcXhSKCR0a3JNUjA4bE1ZN0pHUmN6KQp7Cmdsb2JhbCAkZ3JhYl9wYXJhbWV0ZXJzOwppZigkZ3JhYl9wYXJhbWV0ZXJzWyd4c19kdW1wdHlwZSddID09ICdzZXJpYWxpemUnKQokVFdPZzVfN0xaID0gdW5zZXJpYWxpemUoJHRrck1SMDhsTVk3SkdSY3opOwplbHNlCmV2YWwgKCRzPSckVFdPZzVfN0xaID0gJy4kdGtyTVIwOGxNWTdKR1Jjei4nOycpOwpyZXR1cm4gJFRXT2c1XzdMWjsKfQpmdW5jdGlvbiBJYkxPelZwbVF1eF9wOVRQeTdNKCRpLCRPcDhwa2JwNWZUdmhmM2Q0ckosJG1HNUt3OTkzUk5FNz1mYWxzZSkKewppZigkbUc1S3c5OTNSTkU3ICYmICRpPDIpIHJldHVybiAkT3A4cGticDVmVHZoZjNkNHJKOwpyZXR1cm4gJGkgPyBwcmVnX3JlcGxhY2UoJyMoLiopXC4jJywnJDAxJy4kaS4nLicsJE9wOHBrYnA1ZlR2aGYzZDRySikgOiAkT3A4cGticDVmVHZoZjNkNHJKOwp9CmZ1bmN0aW9uIEU4RTZoN1hOb0p5YWJBKCROMTN4NjFQZDVkS1FEWnBlWEdCLCAkbzU5T0RocVYzLCAkcW9hZTYwOHNjND1GYWh1TU92bEVVWiwgJGpZWjM1SVoxeTdNMHpWcHFBID0gZmFsc2UpCnsKaWYoJGpZWjM1SVoxeTdNMHpWcHFBICYmIGZ1bmN0aW9uX2V4aXN0cygnZ3plbmNvZGUnKSl7CiROZ1lzcmU5OFNjTG9GV3hoSkZTID0gZ3plbmNvZGUoJG81OU9EaHFWMywgMSk7CnVuc2V0KCRvNTlPRGhxVjMpOwokbzU5T0RocVYzID0gJE5nWXNyZTk4U2NMb0ZXeGhKRlM7CiROMTN4NjFQZDVkS1FEWnBlWEdCIC49ICcuZ3onOwp9CiRwZiA9IGZvcGVuKCRxb2FlNjA4c2M0LiROMTN4NjFQZDVkS1FEWnBlWEdCLCJ3Iik7CmZ3cml0ZSgkcGYsICRvNTlPRGhxVjMpOwpmY2xvc2UoJHBmKTsKQGNobW9kKCRxb2FlNjA4c2M0LiROMTN4NjFQZDVkS1FEWnBlWEdCLCAwNjY2KTsKdW5zZXQoJG81OU9EaHFWMyk7CnJldHVybiAkTjEzeDYxUGQ1ZEtRRFpwZVhHQjsKfQpmdW5jdGlvbiBkMGkyY2NDT3EoJE4xM3g2MVBkNWRLUURacGVYR0IpCnsKcmV0dXJuIGltcGxvZGUoJycsZmlsZSgkTjEzeDYxUGQ1ZEtRRFpwZVhHQikpOwp9CmZ1bmN0aW9uIEFEdk5DQXRPbjQySjk3M0xwYygpCnsKJExDaW56X2RpdCA9IGFycmF5KCk7CiRwZCA9IG9wZW5kaXIoRmFodU1PdmxFVVopOwp3aGlsZSgkZm49cmVhZGRpcigkcGQpKQppZihwcmVnX21hdGNoKCcjXlxkKy4qP1wubG9nJCMnLCRmbikpCiRMQ2luel9kaXRbXSA9ICRmbjsKY2xvc2VkaXIoJHBkKTsKc29ydCgkTENpbnpfZGl0KTsKcmV0dXJuICRMQ2luel9kaXQ7Cn0KZnVuY3Rpb24gbG9CYmlBclE4OF9ReWhQaFk0ZCgkdG0pIHsKJHRtID0gaW50dmFsKCR0bSk7CiRoID0gaW50dmFsKCR0bS82MC82MCk7CiR0bSAtPSAkaCo2MCo2MDsKJG0gPSBpbnR2YWwoJHRtLzYwKTsKJHRtIC09ICRtKjYwOwokcyA9ICR0bTsKaWYoJHM8MTApJHM9IjAkcyI7CmlmKCRtPDEwKSRtPSIwJG0iOwpyZXR1cm4gIiRoOiRtOiRzIjsKfQpmdW5jdGlvbiB1Y1hoclk0OVB0RygkZHIpIHsKJGRyID0gcHJlZ19yZXBsYWNlKCcjXD8uKiMnLCAnJywgJGRyKTsKaWYoJGRyW3N0cmxlbigkZHIpLTFdIT0nLycgJiYgJGRyKQp7CiRkcj1zdHJfcmVwbGFjZSgnXFwnLCcvJyxkaXJuYW1lKCRkcikpOwppZigkZHJbc3RybGVuKCRkciktMV0hPScvJykkZHIuPScvJzsKfQpyZXR1cm4gcHJlZ19yZXBsYWNlKCcjKFteL1w6XS8pLysjJywnXFwxJywkZHIpOwp9CmZ1bmN0aW9uIEFJNFZFVkVmTmhpKCRxb2FlNjA4c2M0LCAkSmN5dV9pVjRZYVN4KQp7CiRwZCA9IG9wZW5kaXIoJHFvYWU2MDhzYzQpOwppZigkcGQpCndoaWxlKCRmbiA9IHJlYWRkaXIoJHBkKSkKaWYoaXNfZmlsZSgkcW9hZTYwOHNjNC4kZm4pICYmIHByZWdfbWF0Y2goJyMnLiRKY3l1X2lWNFlhU3guJyQjJywkZm4pKQp7CkB1bmxpbmsoJHFvYWU2MDhzYzQuJGZuKTsKfWVsc2UKaWYoJGZuWzBdIT0nLicmJmlzX2RpcigkcW9hZTYwOHNjNC4kZm4pKQp7CkFJNFZFVkVmTmhpKCRxb2FlNjA4c2M0LiRmbi4nLycsICRKY3l1X2lWNFlhU3gpOwpAcm1kaXIoJHFvYWU2MDhzYzQuJGZuKTsKfQpjbG9zZWRpcigkcGQpOwp9CmZ1bmN0aW9uIGJDSmUzUWJyS0NpUVh3cygkdkZjdFpNVEN1QSwgJGFVNkFCU2ZxR2EpCnsKJHdzID0gIjx4bWxzaXRlbWFwc19zZXR0aW5ncz4iOwpmb3JlYWNoKCRhVTZBQlNmcUdhIGFzICRrPT4kdikKaWYoc3Ryc3RyKCRrLCd4c18nKSkKJHdzIC49ICJcblx0PG9wdGlvbiBuYW1lPVwiJGtcIj4kdjwvb3B0aW9uPiI7CiR3cyAuPSAiXG48L3htbHNpdGVtYXBzX3NldHRpbmdzPiI7CiRwZiA9IGZvcGVuKCR2RmN0Wk1UQ3VBLCd3Jyk7CmZ3cml0ZSgkcGYsICR3cyk7CmZjbG9zZSgkcGYpOwp9CmZ1bmN0aW9uIFV0T3pQVlJ2aERLNE1MKCR2RmN0Wk1UQ3VBLCAmJGFVNkFCU2ZxR2EsICRMV0xWZTJVaTlaID0gZmFsc2UpCnsKJGZsID0gQGltcGxvZGUoJycsIGZpbGUoJHZGY3RaTVRDdUEpKTsKcHJlZ19tYXRjaF9hbGwoJyM8b3B0aW9uIG5hbWU9IiguKj8pIj4oLio/KTwvb3B0aW9uPiNpcycsICRmbCwgJE5DaGNHRGZ4SzlnaUosIFBSRUdfU0VUX09SREVSKTsKZm9yZWFjaCgkTkNoY0dEZnhLOWdpSiBhcyAkbSkKaWYoISRMV0xWZTJVaTlaIHx8ICRtWzJdKQp7CiRhVTZBQlNmcUdhWyRtWzFdXSA9ICRtWzJdOwp9Cn0KPz4='));
?>