<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE module [
  <!ELEMENT module (dtdversion,name,version,description*,help*,about*,requires*,file+)>
  <!ELEMENT dtdversion (#PCDATA)>
  <!ELEMENT name (#PCDATA)>
  <!ELEMENT version (#PCDATA)>
  <!ELEMENT mincmsversion (#PCDATA)>
  <!ELEMENT description (#PCDATA)>
  <!ELEMENT help (#PCDATA)>
  <!ELEMENT about (#PCDATA)>
  <!ELEMENT requires (requiredname,requiredversion)>
  <!ELEMENT requiredname (#PCDATA)>
  <!ELEMENT requiredversion (#PCDATA)>
  <!ELEMENT file (filename,isdir,data)>
  <!ELEMENT filename (#PCDATA)>
  <!ELEMENT isdir (#PCDATA)>
  <!ELEMENT data (#PCDATA)>
]>
<module>
	<dtdversion>1.3</dtdversion>
	<name>ErrorEmailer</name>
	<version>0.2</version>
  <mincmsversion>1.0.3</mincmsversion>
	<help>PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPkVtYWlscyB5b3UgUEhQIGFuZCBNeVNRTCBlcnJvcnMgaWYgJGNvbmZpZ1snZGVidWcnXSA9IGZhbHNlLiBJZiAkY29uZmlnWydkZWJ1ZyddID0gdHJ1ZSB0aGVuIGl0IGRpc3BsYXlzIHRoZSBlcnJvcnMuPC9wPgo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4KPHA+U2V0IHRoZSBlbWFpbCB5b3Ugd2FudCB0byByZWNlaXZlIHRoZSBlcnJvcnMgaW4gdGhlIG9wdGlvbnMuIEFsc28geW91IGNhbiBzZXQgYSBkaXJlY3RvcnkgdG8gYmUgZXhjbHVkZWQgZnJvbSBlcnJvciByZXBvcnRpbmcuPC9wPgo8aDM+V2hhdCBQYXJhbWV0ZXJzIERvZXMgSXQgVGFrZTwvaDM+CjxwPk5vbmUsIHNpbmNlIGl0IGlzIG5vdCBhIHRhZy48L3A+CjxoMz5TdXBwb3J0PC9oMz4KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0IG9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+CjxwPkNvcHlyaWdodCAmY29weTsgMjAwNiwgRWxpamFoIExvZmdyZW4gPGEgaHJlZj0ibWFpbHRvOmVsaWphaGxvZmdyZW5AZWxpamFobG9mZ3Jlbi5jb20iPiZsdDtlbGlqYWhsb2ZncmVuQGVsaWphaGxvZmdyZW4uY29tJmd0OzwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4=</help>
	<about>PGJyIC8+QXV0aG9yOiBFbGlqYWggTG9mZ3JlbiAmbHQ7ZWxpamFobG9mZ3JlbkBlbGlqYWhsb2ZncmVuLmNvbSZndDs8YnIgLz48YnIgLz5WZXJzaW9uOiAwLjI8YnIgLz48YnIgLz5DaGFuZ2UgSGlzdG9yeTo8YnIgLz48dWw+PGxpPlZlcnNpb24gMC4xLiAyNCBKdW5lIDIwMDYuIEluaXRpYWwgUmVsZWFzZS48L2xpPjwvdWw+PGJyIC8+</about>
	<description>Allows errors to be emailed or displayed with source context.</description>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CmlmKCEgJHRoaXMtPkNoZWNrQWNjZXNzKCRpZCwgJHBhcmFtcywgJHJldHVybmlkKSApIGV4aXQ7CgovLyBUaGUgdGFicwplY2hvICR0aGlzLT5TdGFydFRhYkhlYWRlcnMoKTsKJGFjdGl2ZV90YWIgPSBpc3NldCgkcGFyYW1zWydhY3RpdmVfdGFiJ10pID8gJHBhcmFtc1snYWN0aXZlX3RhYiddIDogRkFMU0U7CmVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignb3B0aW9ucycsICR0aGlzLT5MYW5nKCdvcHRpb25zJyksICgnb3B0aW9ucycgPT0gJGFjdGl2ZV90YWIpKTsKCmVjaG8gJHRoaXMtPkVuZFRhYkhlYWRlcnMoKTsKZWNobyAkdGhpcy0+U3RhcnRUYWJDb250ZW50KCk7CgoKCgllY2hvICR0aGlzLT5TdGFydFRhYignb3B0aW9ucycsICRwYXJhbXMpOwoJCgkJZWNobyAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ3VwZGF0ZW9wdGlvbnMnKTsKCgkJZWNobyAnPHA+JyAuICR0aGlzLT5MYW5nKCdub3RpZnllbWFpbCcpIC4gJzonIC4gJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdub3RpZnknLCAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnbm90aWZ5JywgJycpLCAnNTAnLCAnMjU1JykuJzwvcD4nOwoKCQllY2hvICc8cD4nIC4gJHRoaXMtPkxhbmcoJ2V4Y2x1ZGVfZGlyJykgLiAnOicgLiAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2V4Y2x1ZGVfZGlyJywgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2V4Y2x1ZGVfZGlyJywgJycpLCAnNTAnLCAnMjU1JykuJzwvcD4nOwoKCQllY2hvICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdvcHRpb25zc3VibWl0YnV0dG9uJywgJHRoaXMtPkxhbmcoJ3N1Ym1pdCcpKTsKCgoJCWVjaG8gJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKTsKCgplY2hvICR0aGlzLT5FbmRUYWIoKTsKCmVjaG8gJHRoaXMtPkVuZFRhYkNvbnRlbnQoKTsKPz4gCg==]]></data>
	</file>
	<file>
	  <filename>/action.updateoptions.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oICdNb2RpZnkgU2l0ZSBQcmVmZXJlbmNlcycgKSApCnsKICByZXR1cm47Cn0KJHRoaXMtPlNldFByZWZlcmVuY2UoJ25vdGlmeScsICRwYXJhbXNbJ25vdGlmeSddKTsKJHRoaXMtPlNldFByZWZlcmVuY2UoJ2V4Y2x1ZGVfZGlyJywgJHBhcmFtc1snZXhjbHVkZV9kaXInXSk7CiRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ29wdGlvbnNfdXBkYXRlZCcsICdhY3RpdmVfdGFiJyA9PiAnb3B0aW9ucycpOwokdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJycsICRwYXJhbXMpOwo/PgoK]]></data>
	</file>
	<file>
	  <filename>/ErrorEmailer.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IEVycm9ySGFuZGxlciAtIFNlbmRzIGFuIEVtYWlsIG5vdGlmaWNhdGlvbiB3aGVuIHRoZXJlIGFyZSBQSFAgb3IgTXlTUUwgZXJyb3JzIG9yIHByaW50cyBpdCBvdXQgaWYgZGVidWcgaXMgb24uCiMgVmVyc2lvbjogMC4xLCBFbGlqYWggTG9mZ3JlbgojCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiMgQ01TIC0gQ01TIE1hZGUgU2ltcGxlIGlzIChjKSAyMDA2IGJ5IFRlZCBLdWxwICh3aXNoeUBjbXNtYWRlc2ltcGxlLm9yZykKIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZwojCiMgVGhpcyBmaWxlIG9yaWdpbmFsbHkgY3JlYXRlZCBieSBNb2R1bGVNYWtlciBtb2R1bGUsIHZlcnNpb24gMC4yCiMgQ29weXJpZ2h0IChjKSAyMDA2IGJ5IFNhbXVlbCBHb2xkc3RlaW4gKHNqZ0BjbXNtYWRlc2ltcGxlLm9yZykgCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBGb3IgSGVscCBidWlsZGluZyBtb2R1bGVzOgojIC0gUmVhZCB0aGUgRG9jdW1lbnRhdGlvbiBhcyBpdCBiZWNvbWVzIGF2YWlsYWJsZSBhdAojICAgaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy8KIyAtIENoZWNrIG91dCB0aGUgU2tlbGV0b24gTW9kdWxlIGZvciBhIGNvbW1lbnRlZCBleGFtcGxlCiMgLSBMb29rIGF0IG90aGVyIG1vZHVsZXMsIGFuZCBsZWFybiBmcm9tIHRoZSBzb3VyY2UKIyAtIENoZWNrIG91dCB0aGUgZm9ydW1zIGF0IGh0dHA6Ly9mb3J1bXMuY21zbWFkZXNpbXBsZS5vcmcKIyAtIENoYXQgd2l0aCBkZXZlbG9wZXJzIG9uIHRoZSAjY21zIElSQyBjaGFubmVsCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiRkaXJuYW1lID0gZGlybmFtZShfX0ZJTEVfXyk7CmNsYXNzIEVycm9yRW1haWxlciBleHRlbmRzIENNU01vZHVsZQp7CgogICAvLyBBbiBhcnJheSBvZiB2YXJpYWJsZXMgdG8gZXhjbHVkZSBmcm9tIHRoZSBlbnZpcm9tZW50IHZhcmlhYmxlIGxpc3QKICAgIHZhciAkZXhjbHVkZXMgPSBhcnJheSgpOwogICAgLy8gTnVtYmVyIG9mIGxpbmVzIG9mIGNvZGUgdG8gaW5jbHVkZSBpbiB0aGUgY29kZSBjb250ZXh0CiAgICB2YXIgJHNvdXJjZV9jb250ZXh0X29wdGlvbnMgPSBhcnJheSgnbGluZXMnID0+IDUpOwogICAgLy8gV2hldGhlciBhIG5vdGljZSBoYXMgYmVlbiBzaG93biBzYXlpbmcgdGhhdCB3ZSBhcmUgaGF2aW5nIHRlY2ggcHJvYmxlbXMKICAgIHZhciAkbVRlY2hQcm9ibGVtc3Nob3duID0gRkFMU0U7CgoJZnVuY3Rpb24gRXJyb3JFbWFpbGVyKCkKCXsKCQkkdGhpcy0+c3RhcnRIYW5kbGVyKCk7Cgl9CgoJZnVuY3Rpb24gR2V0TmFtZSgpCgl7CgkJcmV0dXJuICdFcnJvckVtYWlsZXInOwoJfQoKCgogICAgZnVuY3Rpb24gc3RhcnRIYW5kbGVyKCkKICAgIHsKICAgICAgICAvLyBTYW1lIGFzIGVycm9yX3JlcG9ydGluZyhFX0FMTCk7CiAgICAgICAgLy8gaW5pX3NldCgnZXJyb3JfcmVwb3J0aW5nJywgRV9BTEwpOwoKICAgICAgICAvLyBoYWNrIHRvIHdvcmsgYXJvdW5kIHRoZSBpbmFiaWxpdHkgdG8gdXNlIGEgbWV0aG9kIGFzIGEKICAgICAgICAvLyBjYWxsYmFjayBmb3IgdGhlIHNldF9lcnJvcl9oYW5kbGVyIGZ1bmN0aW9uIHByaW9yIHRvIFBIUCA0LjMKICAgICAgICAvLyBOT1RFOiBpZiB5b3UgZm9yR2V0IHRoZSAnJicsIHRoZW4gYWxsIG9mIHRoZSBzZXR0aW5ncwogICAgICAgIC8vIHRvIGNsYXNzIHByb3BlcnRpZXMgYWZ0ZXIgdGhpcyBleGVjdXRpb24gcG9pbnQgd2lsbCBiZSBsb3N0CgogICAgICAgICRHTE9CQUxTWydfRVJST1JfSEFORExFUl9PQkpFQ1QnXSA9ICYgJHRoaXM7CiAgICAgICAgJEdMT0JBTFNbJ19FUlJPUl9IQU5ETEVSX01FVEhPRCddID0gJ2hhbmRsZUVycm9yJzsKCiAgICAgICAgLy8gIGluc2lkZSBmdW5jdGlvbiB0byBoYW5kbGUgcmVkaXJlY3Rpb24gdG8gYSBjbGFzcyBtZXRob2QKICAgICAgICBmdW5jdGlvbiBlaCgkZXJyTm8sICRlcnJTdHIsICRmaWxlLCAkbGluZSwgJGNvbnRleHQpCiAgICAgICAgewogICAgICAgICAgICBjYWxsX3VzZXJfZnVuYygKICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXkoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYkR0xPQkFMU1snX0VSUk9SX0hBTkRMRVJfT0JKRUNUJ10sCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRHTE9CQUxTWydfRVJST1JfSEFORExFUl9NRVRIT0QnXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLAogICAgICAgICAgICAgICAgICAgICAgICAgICAkZXJyTm8sICRlcnJTdHIsICRmaWxlLCAkbGluZSwgJGNvbnRleHQKICAgICAgICAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICB9CiAgICAgICAgLy8gIHN0YXJ0IGhhbmRsaW5nIGVycm9ycwogICAgICAgIHNldF9lcnJvcl9oYW5kbGVyKCdlaCcpOwogICAgfQoKICAgIGZ1bmN0aW9uIHNldEV4Y2x1ZGVzKCRleGNsdWRlcykKICAgIHsKICAgICAgICAkdGhpcy0+ZXhjbHVkZXMgPSAkZXhjbHVkZXM7CiAgICB9CgogICAgZnVuY3Rpb24gX2V4Y2x1ZGVWYXJzKCRjb250ZXh0KQogICAgewogICAgICAgIGZvcmVhY2ggKCR0aGlzLT5leGNsdWRlcyBhcyAkbmFtZSkgewogICAgICAgICAgICBpZiAoaXNzZXQoJGNvbnRleHRbJG5hbWVdKSkgewogICAgICAgICAgICAgICAgdW5zZXQoJGNvbnRleHRbJG5hbWVdKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gJGNvbnRleHQ7CiAgICB9CgogICAgZnVuY3Rpb24gaGFuZGxlRXJyb3IoJGVycm9yTnVtYmVyLCAkZXJyb3JNZXNzYWdlLCAkZmlsZSwgJGxpbmUsICRjb250ZXh0KQogICAgewoJJGV4Y2x1ZGVzID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2V4Y2x1ZGVfZGlyJywgJycpOwoJaWYgKEZBTFNFID09IGVtcHR5KCRleGNsdWRlcykpCgl7CgkJJGhpZGUgPSBzdHJwb3MoJGZpbGUsICRleGNsdWRlcyk7Cgl9CgllbHNlCgl7CgkJJGhpZGUgPSBmYWxzZTsKCX0KCWlmICgkaGlkZSA9PT0gZmFsc2UpCgl7CiAgICAgIGdsb2JhbCAkZ0NtczsKICAgICAgICBzd2l0Y2ggKCRlcnJvck51bWJlcikgewogICAgICAgIGNhc2UgMToKICAgICAgICAgICAgJHR5cGUgPSAnRXJyb3InOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDI6CiAgICAgICAgICAgICR0eXBlID0gJ1dhcm5pbmcnOwogICAgICAgICAgICBicmVhazsKICAgICAgICBjYXNlIDg6CiAgICAgICAgICAgICR0eXBlID0gJ05vdGljZSc7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIGNhc2UgMjU2OgogICAgICAgICAgICAkdHlwZSA9ICdVc2VyIEVycm9yJzsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgJHR5cGUgPSAkZXJyb3JOdW1iZXI7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KCS8vIERvbid0IHNob3cgZXJyb3JzIGFib3V0IHN0cmljdCBwcm9ibGVtcwoJaWYgKDIwNDggIT0gJHR5cGUpCgkgIHsKICAgICAgICBpZiAoRkFMU0UgIT0gICRnQ21zLT5jb25maWdbJ2RlYnVnJ10pIHsKICAgICAgICAgICAgJGVycm9yX3RleHQgPSAnPGRpdiBzdHlsZT0iY29sb3I6YmxhY2s7cGFkZGluZzo1cHg7YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTtib3JkZXI6MnB4IGRvdHRlZCByZWQ7Ij4nLiR0eXBlLic6ICcuJGVycm9yTWVzc2FnZS4nIGluIDxiPicuJGZpbGUuJzwvYj4gb24gbGluZSAnLiRsaW5lCiAgICAgICAgICAgIC4nPHA+PGI+U291cmNlIENvbnRleHQ6PC9iPjxwPjxwcmU+Jy4iXG4iCiAgICAgICAgICAgIC5odG1sZW50aXRpZXMoJHRoaXMtPl9nZXRTb3VyY2VDb250ZXh0KCRmaWxlLCAkbGluZSkpLic8L3ByZT48L2Rpdj4nOwogICAgICAgICAgIGVjaG8gKCRlcnJvcl90ZXh0KTsKICAgICAgICB9IGVsc2UgewogICAgICAgCgogICAgICAgICAgICAvLyBPbmx5IHNob3cgaWYgdGhlIGVycm9yIGhhcyBub3QgYmVlbiBzaG93IGFuZCBpcyBub3QgYWJvdXQgRV9TVFJJQ1QKICAgICAgICAgICAgaWYgKEZBTFNFID09ICR0aGlzLT5tVGVjaFByb2JsZW1zc2hvd24gICYmICRlcnJvck51bWJlciAhPSAyMDQ4KSB7CgkgICAgICAvLyBNYWtlIHN1cmUgZW1haWwgZXhpc3RzIGJlZm9yZSBzZW5kaW5nIGVtYWlsCgkgICAgICBpZiAoJycgIT0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ25vdGlmeScsICcnKSkKCQl7CgkJICAkdGhpcy0+U2VuZEVycm9yRW1haWwoJHR5cGUsICRlcnJvck1lc3NhZ2UsICRmaWxlLCAkbGluZSwgJGNvbnRleHQpOwoJCX0KICAgICAgICAgICAgICAgIGVjaG8gJzxkaXYgc3R5bGU9ImNvbG9yOmJsYWNrO3BhZGRpbmc6NXB4O2JhY2tncm91bmQtY29sb3I6d2hpdGU7Ym9yZGVyOjJweCBkb3R0ZWQgcmVkOyI+V2UgYXJlIGN1cnJlbnRseSBleHBlcmllbmNpbmcgdGVjaG5pY2FsIGRpZmZpY3VsdGllcy4gV2Ugd2lsbCB0cnkgdG8gZml4IHRoZSBwcm9ibGVtIGFzIHNvb24gYXMgcG9zc2libGUuIFNvcnJ5IGZvciB0aGUgaW5jb252ZW5pZW5jZS48L2Rpdj4nOwogICAgICAgICAgICAgICAgJHRoaXMtPm1UZWNoUHJvYmxlbXNzaG93biA9IFRSVUU7CiAgICAgICAgICAgIH0KICAgICAgICB9CgkgIH0KCX0KICAgIH0KCgogICAgZnVuY3Rpb24gc2VuZEVycm9yRW1haWwoJHR5cGUsICRlcnJvck1lc3NhZ2UsICRmaWxlLCAkbGluZSwgJGNvbnRleHQpCiAgICB7CiAgICAgICAgJGZyb20gICAgPSAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ25vdGlmeScsICcnKTsKICAgICAgICAkc3ViamVjdCA9ICAkdHlwZS4nOiAnLiRlcnJvck1lc3NhZ2U7CgogICAgICAgIC8vICByZW1vdmUgdmFycyBmcm9tIGNvbnRleHQgb3V0cHV0CiAgICAgICAgJGNvbnRleHQgPSAkdGhpcy0+X2V4Y2x1ZGVWYXJzKCRjb250ZXh0KTsKCiAgICAgICAgLy8gdGltZXN0YW1wIGZvciB0aGUgZXJyb3IgZW50cnkKICAgICAgICAkdGltZXN0YW1wID0gZGF0ZSgiWS1tLWQgSDppOnMgKFQpIik7CgogICAgICAgICRtZXNzYWdlID0gJ01lc3NhZ2U6ICcuJGVycm9yTWVzc2FnZS4iXG4iCiAgICAgICAgICAgIC4nRmlsZTogJy4kZmlsZS4iXG4iCiAgICAgICAgICAgIC4nTGluZTogJy4kbGluZS4iXG4iCiAgICAgICAgICAgIC4nRGF0ZTogJy4kdGltZXN0YW1wLiJcblxuIgogICAgICAgICAgICAuJ1NvdXJjZSBDb250ZXh0OicuIlxuIgogICAgICAgICAgICAuJHRoaXMtPl9nZXRTb3VyY2VDb250ZXh0KCRmaWxlLCAkbGluZSkKICAgICAgICAgICAgLiJcbiIKICAgICAgICAgICAgLidWYXJpYWJsZSBDb250ZXh0OicuIlxuIjsKICAgICAgICBvYl9zdGFydCgpOwogICAgICAgIHByaW50X3IoJGNvbnRleHQpOwogICAgICAgIHByaW50X3IoJF9TRVJWRVIpOwogICAgICAgICR2YXJfY29udGV4dCA9IG9iX2dldF9jb250ZW50cygpOwogICAgICAgIG9iX2VuZF9jbGVhbigpOwogICAgICAgIC8vICAkdmFyX2NvbnRleHQgPSBodG1sc3BlY2lhbGNoYXJzKCR2YXJfY29udGV4dCwgRU5UX1FVT1RFUyk7CiAgICAgICAgJG1lc3NhZ2UgLj0gJHZhcl9jb250ZXh0OwogICAgICAgIC8vICRtZXNzYWdlIC49ICc8L3ByZT48L2JvZHk+PC9odG1sPic7CgogICAgICAgICRoZWFkZXJzICA9ICAiRnJvbTogJGZyb21cclxuIjsKICAgICAgICAvLyAkaGVhZGVycyAuPSAnQ29udGVudC1UeXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9VVRGLTgnLiJcclxuIjsKICAgICAgICAkaGVhZGVycyAuPSAgIlJlcGx5LVRvOiAkZnJvbVxyXG4iOwogICAgICAgICRoZWFkZXJzIC49ICAiWC1NYWlsZXI6IFBIUC8iLnBocHZlcnNpb24oKS4iXHJcbiI7CgogICAgICAgIC8vIFNlbmQgdGhlIGVycm9yIHRvIHRoZSAkc2V0dGluZ3NbJ2Vycm9yX2VtYWlsJ10gZW1haWwgYWRkcmVzcwogICAgICAgIG1haWwoJHRoaXMtPkdldFByZWZlcmVuY2UoJ25vdGlmeScsICcnKSwgJHN1YmplY3QsICRtZXNzYWdlLCAkaGVhZGVycyApOwogICAgfQoKICAgIC8qKgogICAgICogR2V0cyB0aGUgbGluZXMgb2YgY29kZSB3aGVyZSB0aGUgZXJyb3Igb2NjdXJyZWQuCiAgICAgKgogICAgICovCiAgICBmdW5jdGlvbiBfZ2V0U291cmNlQ29udGV4dCgkZmlsZSwgJGxpbmUpCiAgICB7CiAgICAgICAgaWYgKEZBTFNFID09IGZpbGVfZXhpc3RzKCRmaWxlKSkgewogICAgICAgICAgICAvLyAgY2hlY2sgdGhhdCBmaWxlIGV4aXN0cwogICAgICAgICAgICByZXR1cm4gIkNvbnRleHQgY2Fubm90IGJlIHNob3duIC0gKCRmaWxlKSBkb2VzIG5vdCBleGlzdCI7CiAgICAgICAgfSBlbHNlaWYgKChGQUxTRSA9PSBpc19pbnQoJGxpbmUpKSB8fCAoJGxpbmUgPD0gMCkpIHsKICAgICAgICAgICAgLy8gIGNoZWNrIGlmIGxpbmUgbnVtYmVyIGlzIHZhbGlkCiAgICAgICAgICAgIHJldHVybiAiQ29udGV4dCBjYW5ub3QgYmUgc2hvd24gLSAoJGxpbmUpIGlzIGFuIGludmFsaWQgbGluZSBudW1iZXIiOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIC8vICBHZXQgdGhlIHNvdXJjZQogICAgICAgICAgICAvLyBnZXQgY29udGVudHMgb2YgYSBmaWxlIGludG8gYSBzdHJpbmcKICAgICAgICAgICAgJGhhbmRsZSA9IGZvcGVuKCRmaWxlLCAiciIpOwogICAgICAgICAgICAkc291cmNlID0gZnJlYWQoJGhhbmRsZSwgZmlsZXNpemUoJGZpbGUpKTsKICAgICAgICAgICAgZmNsb3NlKCRoYW5kbGUpOwogICAgICAgICAgICAvLyAkc291cmNlID0gaGlnaGxpZ2h0X2ZpbGUoJGZpbGUsIFRSVUUpOwogICAgICAgICAgICAkbGluZXMgPSBzcGxpdCgiXG4iLCAkc291cmNlKTsKICAgICAgICAgICAgJG51bV9saW5lcyA9IGNvdW50KCRsaW5lcyk7IC8vIEdldCB0aGUgbnVtYmVyIG9mIGxpbmVzIGluIHRoZSBmaWxlCiAgICAgICAgICAgIC8vICBHZXQgbGluZSBudW1iZXJzCiAgICAgICAgICAgICRzdGFydCA9ICRsaW5lIC0gJHRoaXMtPnNvdXJjZV9jb250ZXh0X29wdGlvbnNbJ2xpbmVzJ10gLSAxOwogICAgICAgICAgICAkZmluaXNoID0gJGxpbmUgKyAkdGhpcy0+c291cmNlX2NvbnRleHRfb3B0aW9uc1snbGluZXMnXTsKICAgICAgICAgICAgLy8gIEdldCBsaW5lcwogICAgICAgICAgICBpZiAoJHN0YXJ0IDwgMCkgewogICAgICAgICAgICAgICAgJHN0YXJ0ID0gMDsKICAgICAgICAgICAgfQogICAgICAgICAgICBpZiAoJHN0YXJ0ID49IGNvdW50KCRsaW5lcykpIHsKICAgICAgICAgICAgICAgICRzdGFydCA9IGNvdW50KCRsaW5lcykgLTE7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZm9yICgkaSA9ICRzdGFydDsgJGkgPCAkZmluaXNoOyAkaSsrKSB7CiAgICAgICAgICAgICAgICAvLyAgaGlnaGxpZ2h0IGxpbmUgaW4gcXVlc3Rpb24KICAgICAgICAgICAgICAgIGlmICgkaSA9PSAoJGxpbmUgLTEpKSB7CiAgICAgICAgICAgICAgICAgICAgJGNvbnRleHRfbGluZXNbXSA9ICc9PT09PT09PiAnIC4gKCRpICsgMSkgLgogICAgICAgICAgICAgICAgICAgICAgICAiXHQiIC4gJGxpbmVzWyRpXSAuICcgPD09PT09PSc7CiAgICAgICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgICAgIC8vIE9ubHkgdHJ5IHRvIHNob3cgdGhlIGxpbmUgaWYgdGhlcmUgYXJlIHJlYWxseSB0aGF0CiAgICAgICAgICAgICAgICAgICAgLy8gbWFueSBsaW5lcyBpbiB0aGUgZmlsZQogICAgICAgICAgICAgICAgICAgIGlmICgkaSA8ICRudW1fbGluZXMpIHsKICAgICAgICAgICAgICAgICAgICAgICAgJGNvbnRleHRfbGluZXNbXSA9ICgkaSArIDEpIC4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICJcdCIgLiAkbGluZXNbJGldOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gdHJpbShqb2luKCJcbiIsICRjb250ZXh0X2xpbmVzKSkgLiAiXG4iOwogICAgICAgIH0KICAgIH0KCgovLyBwcmludCAnPGgyPkVycm9yIGRlbW8gLSBzdGFydDwvaDI+JzsKLy8gJGZvbyA9ICYgbmV3IEVycm9ySGFuZGxlcigpOwovKiAkZm9vLT5zZXRfZXhjbHVkZXMoYXJyYXkoCiAgICAnSFRUUF9QT1NUX1ZBUlMnLAogICAgJ0hUVFBfR0VUX1ZBUlMnLAogICAgJ0hUVFBfU0VSVkVSX1ZBUlMnLAogICAgJ0hUVFBfQ09PS0lFX1ZBUlMnLAogICAgJ0hUVFBfRU5WX1ZBUlMnLAogICAgJ0hUVFBfUE9TVF9GSUxFUycsCiAgICAnX1BPU1QnLAogICAgJ19HRVQnLAogICAgJ19TRVJWRVInLAogICAgJ19DT09LSUUnLAogICAgJ19FTlYnLAogICAgJ19GSUxFUycsCiAgICAnX1JFUVVFU1QnLAogICAgJ2ZvbycsCiAgICApKTsKKi8KCi8vICRmb28tPnN0YXJ0X2hhbmRsZXIoKTsKLyoKJGVkc2ZlID0gJ3NkZmV3ZXInOwokZnAgPSAnbm90X2FfZmlsZV9oYW5kbGUnOwphcnJheSAoc2VyZXd3ZHNmZXdlcjMpOwpwcmludCAkc2Rmd2V3cjsKJHJvdyA9IGZnZXRzKCRmcCwgMTAyNCk7CiovCi8vIHByaW50ICc8aDI+RXJyb3IgZGVtbyAtIGZpbmlzaDwvaDI+JzsKCgoJZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpOwoJfQoKCQoJZnVuY3Rpb24gR2V0VmVyc2lvbigpCgl7CgkJcmV0dXJuICcwLjInOwoJfQoKCWZ1bmN0aW9uIEdldEhlbHAoKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZygnaGVscCcpOwoJfQoKCWZ1bmN0aW9uIEdldEF1dGhvcigpCgl7CgkJcmV0dXJuICdFbGlqYWggTG9mZ3Jlbic7Cgl9CgoJZnVuY3Rpb24gR2V0QXV0aG9yRW1haWwoKQoJewoJCXJldHVybiAnZWxpamFobG9mZ3JlbkBlbGlqYWhsb2ZncmVuLmNvbSc7Cgl9CgoJZnVuY3Rpb24gR2V0Q2hhbmdlTG9nKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2NoYW5nZWxvZycpOwoJfQoJZnVuY3Rpb24gSXNQbHVnaW5Nb2R1bGUoKQoJewoJCXJldHVybiBmYWxzZTsKCX0KCWZ1bmN0aW9uIEhhc0FkbWluKCkKCXsKCQlyZXR1cm4gdHJ1ZTsKCX0KCWZ1bmN0aW9uIEdldEFkbWluU2VjdGlvbigpCgl7CgkJcmV0dXJuICdleHRlbnNpb25zJzsKCX0KCWZ1bmN0aW9uIEdldEFkbWluRGVzY3JpcHRpb24oKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZygnYWRtaW5kZXNjcmlwdGlvbicpOwoJfQoJZnVuY3Rpb24gVmlzaWJsZVRvQWRtaW5Vc2VyKCkKCXsKICAgICAgICByZXR1cm4gdHJ1ZTsKCX0KCQoJZnVuY3Rpb24gQ2hlY2tBY2Nlc3MoJGlkLCAkcGFyYW1zLCAkcmV0dXJuX2lkLCRwZXJtID0gJycpCgkJewoJCWlmICghICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJHBlcm0pKQogICAgICAgICAgICB7CiAgICAgICAgICAgICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybl9pZCwKICAgICAgICAgICAgCQkJJHRoaXMtPkxhbmcoJ2FjY2Vzc2RlbmllZCcpKTsKCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgkJcmV0dXJuIHRydWU7CgkJfQoJCiAgICBmdW5jdGlvbiBEaXNwbGF5RXJyb3JQYWdlKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5faWQsICRtZXNzYWdlPScnKQogICAgewoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZXJyb3InLCAkdGhpcy0+TGFuZygnZXJyb3InKSk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZignbWVzc2FnZScsICRtZXNzYWdlKTsKCiAgICAgICAgLy8gRGlzcGxheSB0aGUgcG9wdWxhdGVkIHRlbXBsYXRlCiAgICAgICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlcnJvci50cGwnKTsKICAgIH0KCQoJZnVuY3Rpb24gR2V0RGVwZW5kZW5jaWVzKCkKCXsKCQlyZXR1cm4gYXJyYXkoKTsKCX0KCglmdW5jdGlvbiBNaW5pbXVtQ01TVmVyc2lvbigpCgl7CgkJcmV0dXJuICIxLjAuMyI7Cgl9CgoJZnVuY3Rpb24gSW5zdGFsbFBvc3RNZXNzYWdlKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3RpbnN0YWxsJyk7Cgl9CglmdW5jdGlvbiBVbmluc3RhbGxQb3N0TWVzc2FnZSgpCgl7CgkJcmV0dXJuICR0aGlzLT5MYW5nKCdwb3N0dW5pbnN0YWxsJyk7Cgl9Cn0KPz4K]]></data>
	</file>
	<file>
	  <filename>/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0Vycm9yIEVtYWlsZXInOwokbGFuZ1snb3B0aW9ucyddID0gJ09wdGlvbnMnOwokbGFuZ1snb3B0aW9uc191cGRhdGVkJ10gPSAnVGhlIG9wdGlvbnMgd2VyZSBzdWNlc3NmdWxseSBzYXZlZC4nOwokbGFuZ1snbm90aWZ5ZW1haWwnXSA9ICdFbWFpbCB0byBzZW5kIG5vdGlmaWNhdGlvbnMgKGFsc28gdXNlZCBhcyBmcm9tIGFkZHJlc3MpJzsKJGxhbmdbJ21vdmVkcGFnZXNhdmVkJ10gPSAnVGhlIG1vdmVkIHBhZ2Ugd2FzIHN1Y2Nlc3NmdWxseSB1cGRhdGVkLic7CiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOwokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ0Vycm9yIEVtYWlsZXIgaXMgbm93IHVuaW5zdGFsbGVkLic7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsZSBVbmluc3RhbGxlZC4nOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWxlIHZlcnNpb24gJXMgaW5zdGFsbGVkLic7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsZSB1cGdyYWRlZCB0byB2ZXJzaW9uICVzLic7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0FsbG93cyBlcnJvcnMgdG8gYmUgZW1haWxlZCBvciBkaXNwbGF5ZWQgd2l0aCBzb3VyY2UgY29udGV4dC4nOwoKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3IhJzsKJGxhbmRbJ2FkbWluX3RpdGxlJ10gPSAnTW92ZWQgUGFnZXMgQWRtaW4gUGFuZWwnOwokbGFuZ1snYWRtaW5kZXNjcmlwdGlvbiddID0gJ0FsbG93cyBlcnJvcnMgdG8gYmUgZW1haWxlZCBvciBkaXNwbGF5ZWQgd2l0aCBzb3VyY2UgY29udGV4dC4nOwokbGFuZ1snYWNjZXNzZGVuaWVkJ10gPSAnQWNjZXNzIERlbmllZC4gUGxlYXNlIGNoZWNrIHlvdXIgcGVybWlzc2lvbnMuJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnRXJyb3JFbWFpbGVyIGlzIG5vdyBpbnN0YWxsZWQuJzsKCiRsYW5nWydleGNsdWRlX2RpciddID0gJ0V4Y2x1ZGUgdGhpcyBkaXJlY3RvcnkgKHlvdSBjYW4ganVzdCB1c2UgcGFydCBvZiB0aGUgbmFtZSkuIEZvciBleGFtcGxlIHB1dCAiL3RtcC90ZW1wbGF0ZXNfYy8iIGhlcmUgdG8gZXhjbHVkZSBlcnJvcnMgYWJvdXQgU21hcnR5IHRlbXBsYXRlIHZhcnMuJzsKJGxhbmdbJ2NoYW5nZWxvZyddID0gJzx1bD48bGk+VmVyc2lvbiAwLjEuIDI0IEp1bmUgMjAwNi4gSW5pdGlhbCBSZWxlYXNlLjwvbGk+PC91bD4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPgo8cD5FbWFpbHMgeW91IFBIUCBhbmQgTXlTUUwgZXJyb3JzIGlmICRjb25maWdbXCdkZWJ1Z1wnXSA9IGZhbHNlLiBJZiAkY29uZmlnW1wnZGVidWdcJ10gPSB0cnVlIHRoZW4gaXQgZGlzcGxheXMgdGhlIGVycm9ycy48L3A+CjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8cD5TZXQgdGhlIGVtYWlsIHlvdSB3YW50IHRvIHJlY2VpdmUgdGhlIGVycm9ycyBpbiB0aGUgb3B0aW9ucy4gQWxzbyB5b3UgY2FuIHNldCBhIGRpcmVjdG9yeSB0byBiZSBleGNsdWRlZCBmcm9tIGVycm9yIHJlcG9ydGluZy48L3A+CjxoMz5XaGF0IFBhcmFtZXRlcnMgRG9lcyBJdCBUYWtlPC9oMz4KPHA+Tm9uZSwgc2luY2UgaXQgaXMgbm90IGEgdGFnLjwvcD4KPGgzPlN1cHBvcnQ8L2gzPgo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQgb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPgo8aDM+Q29weXJpZ2h0IGFuZCBMaWNlbnNlPC9oMz4KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA2LCBFbGlqYWggTG9mZ3JlbiA8YSBocmVmPSJtYWlsdG86ZWxpamFobG9mZ3JlbkBlbGlqYWhsb2ZncmVuLmNvbSI+Jmx0O2VsaWphaGxvZmdyZW5AZWxpamFobG9mZ3Jlbi5jb20mZ3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPgo8cD5UaGlzIG1vZHVsZSBoYXMgYmVlbiByZWxlYXNlZCB1bmRlciB0aGUgPGEgaHJlZj0iaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2xpY2Vuc2VzLmh0bWwjR1BMIj5HTlUgUHVibGljIExpY2Vuc2U8L2E+LiBZb3UgbXVzdCBhZ3JlZSB0byB0aGlzIGxpY2Vuc2UgYmVmb3JlIHVzaW5nIHRoZSBtb2R1bGUuPC9wPic7Cj8+Cg==]]></data>
	</file>
</module>
