<?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>NeoDataStorage</name>
	<version>0.3.1</version>
  <mincmsversion>1.9.1</mincmsversion>
	<help><![CDATA[PHN0cm9uZz5Ob3RpY2UhIFRoaXMgaXMgYSBtb2R1bGUtZGV2ZWxvcGVyLW9ubHkgbW9kdWxlLiBJZiB5b3UgYXJlIG5vdCBhIGRldmVsb3Blcgp5b3UnbGwgcHJvYmFibHkganVzdCB3YW50IHRvIHNraXAgdGhlIGdvcnkgZGV0YWlscyBvZiB0aGlzIHBhZ2UgYW5kIHJlbHkgb24gdGhhdAp0aGUgbW9kdWxlIGp1c3QgZG9lcyBpdCdzIHdvcmsuPC9zdHJvbmc+Cjxici8+PGJyLz4KPGgzPlB1cnBvc2Ugb2YgdGhlIG1vZHVsZTwvaDM+ClRoZSBwdXJwb3NlIG9mIHRoaXMgbW9kdWxlIGlzIHRvIHByb3ZpZGUgYSBuaWNlIGFuZCBjbGVhbiB3YXkgZm9yIG1vZHVsZXMKdG8gc3RvcmUgZGF0YSBpbiBhIHRhYmxlLWxpa2UgbWFubmVyIGJ1dCB3aXRob3V0IHRoZSBoYXp6bGUgb2YgY3JlYXRpbmcKc3BlY2lmaWMgdGFibGVzIGZvciBpdHNlbGYgYW5kIG1haW50YWluaW5nIHRoZXNlLgoKPGgzPkJ1dCBiZXdhcmUhPC9oMz4KSXQgc2hvdWxkIGJlIGVtcGhhc2l6ZWQKdGhhdCB0aGlzIG1vZHVsZSBpcyBub3QgaW50ZW5kZWQgZm9yIGV4dHJlbWVseSBkYXRhLWludGVuc2l2ZSBvcGVyYXRpb25zCmFzIGl0IHVzZXMgKGEgbG90KSBtb3JlIGRhdGFiYXNlLWNhbGxzIHRoYW4gY3VzdG9tLXdyaXR0ZW4gZGF0YSBhY2Nlc3MgZG9lcywKYnV0IGZvciBub24taW50ZW5zaXZlIHN0dWZmIGl0IHdpbGwgaG9wZWZ1bGx5IGN1dCBvZmYgc29tZSBvZiB0aGUgdGVkaW91cwoiaG91c2VrZWVwaW5nIiB3aGljaCBJIGdvdCByZWFsbHkgZmVkIHVwIHdpdGggaW4gYWxtb3N0IGV2ZXJ5IG1vZHVsZSBJJ3ZlIGRvbmUuCjxici8+ClNvLCB0aGF0J3MgaXQgZm9yIHRoZSBkaXNjbGFpbWVyLCBub3cgZm9yIHRoZSBBUEkgOi0pCjxici8+Cjxici8+CjxoMz5CYXNpYyB1c2Ugb2YgdGhlIG1vZHVsZTwvaDM+ClVzYWdlIG9mIHRoaXMgbW9kdWxlIGFsd2F5cyBzdGFydHMgb2ZmIHdpdGggZ2V0dGluZyBhbiBhY2Nlc3MgdG8gYW4gaW5zdGFuY2UKb2YgdGhlIG1vZHVsZS4gVGhlIG1vc3QgY29tbW9uIHdheSBvZiBkb2luZyB0aGlzIGlzIGNhbGxpbmcgc29tZXRoaW5nIGxpa2UKPHByZT4KCiRuZHM9JHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCJOZW9EYXRhU3RvcmFnZSIpOwoKPC9wcmU+CllvdSdsbCBwcm9iYWJseSB3YW50IHRvIG1ha2UgeW91ciBtb2R1bGUgZGVwZW5kYW50IG9mIHRoaXMgbW9kdWxlLCBidXQgeW91CnNob3VsZCBrbm93IGhvdyB0byBkbyB0aGlzLi4uCjxici8+CkFmdGVyIGFzc2lnbmluZyB0aGUgbW9kdWxlIHRvIGEgdmFyaWFibGUsIHlvdSBjYW4gc3RhcnQgdXNpbmcgaXQgd2l0aCBBUEktZnVuY3Rpb25zCmxpa2U6CjxwcmU+CgokbXlyZWNvcmQ9JG5kcy0+R2V0RW50aXRpZXMoIm15bW9kdWxlbmFtZSIsICJteXRhYmxlaWQiKTsKCjwvcHJlPgpXaGVyZSAibXltb2R1bGVuYW1lIiBpcyB0aGUgdW5pcXVlIGlkZW50aWZ5ZXIgb2YgeW91ciBtb2R1bGUsIGNvdWxkIGJlCnJlcGxhY2VkIHdpdGggJyR0aGlzLT5HZXROYW1lKCknLCBhbmQgIm15dGFibGVpZCIgaXMgYW4gaWRlbnRpZnllciBvZiB0aGUKdGFibGUgb2YgZGF0YSB3aGljaCB5b3Ugd2FudCB0byBhY2Nlc3MgaW4gdGhlIGRhdGFzdG9yYWdlIGZvciB5b3VyIG1vZHVsZS4KVGhpcyBjYW4gYmUgbGVmdCBibGFuayBpZiBvbmx5IG9uZSB0YWJsZSBpcyBuZWVkZWQgZm9yIHRoZSBtb2R1bGUuCjxici8+CkZvciBhIGNvbXBsZXRlIChyZWFkOiBzb210aW1lcyBjb21wbGV0ZSkgbGlzdCBvZiBtZXRob2RzIHNlZSBsaXN0IGJlbG93LgoKPGgzPlRoZSBOZW9Nb2R1bGUtc2lzdGVyPC9oMz4KQW5vdGhlciwgYW5kIGV2ZW4gZWFzaWVyLCB3YXkgdG8gdXNlIHRoZSBmdW5jdGlvbmFsaXR5IG9mIHRoaXMgbW9kdWxlCmlzIHRvIGxldCB5b3VyIG1vZHVsZSBkZXNjZW5kIGZyb20gYW5vdGhlciBwcm9qZWN0IG9mIG1pbmUsIHRoZSBOZW9Nb2R1bGUsCndoaWNoIHdyYXBzIGFsbCB0aGUgZnVuY3Rpb25zIG9mIE5lb0RhdGFTdG9yYWdlIGJ1dCByZW1vdmluZyB0aGUgbmVlZCBvZgpjb25zdGFudGx5IHN1cHBseWluZyB0aGUgJG1vZHVsZW5hbWUuIEl0IGFsc28gcHJvdmlkZXMgYSBzdGlsbC1ncm93aW5nIGxpc3Qgb2YKb3RoZXIgaGVscGVyLWZ1bmN0aW9ucyB3aGljaCBoYXMgdG8gZG8gd2l0aCBvdGhlciBzdHVmZiB0aGFuIERhdGFTdG9yYWdlLgo8YnIvPgpGb3IgZnVydGhlciBpbnN0cnVjdGlvbnMgb24gaG93IHRvIHVzZSB0aGUgTmVvTW9kdWxlLCBwbGVhc2UgaW5zdGFsbCBpdCBhbmQKY2hlY2sgb3V0IGl0J3MgaGVscC1wYWdlLgoKPGgzPkhvdyB0byBnZXQgaGVscDwvaDM+Ckkgd2lsbCByZXBlYXQsIHRoaXMgbW9kdWxlIGlzIGZvciBkZXZlbG9wZXJzIG9ubHkuIElmIHlvdSBjYW5ub3QgcmVhZCBwaHAtc291cmNlIGNvZGUsCnlvdSBzaG91bGQgdXNlIGl0IGZvciBkZXZlbG9wbWVudCBhbnl3YXkuIElmIHlvdSBjYW4sIGFsd2F5cyBjaGVjayBvdXQgdGhlIGNvZGUKZm9yIGhpbnRzIG9uIGhvdyB0byBtYWtlIGl0IHdvcmsuIElmIHlvdSBzdGlsbCBoYXZlIHF1ZXN0aW9ucyBvciBzdWdnZXN0aW9ucyBmb3IKZml4ZXMvaW1wcm92ZW1lbnRzLCBwbGVhc2UgZmVlbCBmcmVlIHRvIGNhdGNoIG1lIChTaWxtYXJpbGxpb24pIGluIHRoZSBmb3J1bSBvZyAjaXJjLgoKCjxoMz5MaXN0IG9mIG1ldGhvZHM8L2gzPgo8cHJlPgovKgogKgogKiBFbnRpdHkgZnVuY3Rpb25zCiAqCiAqLwpmdW5jdGlvbiBBZGRFbnRpdHkoJG1vZHVsZSwgJHRhYmxlLCAkcHJvcHM9YXJyYXkoKSkKZnVuY3Rpb24gRGVsZXRlRW50aXR5KCRpZCkKZnVuY3Rpb24gR2V0RW50aXR5V2l0aFR5cGUoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpKQpmdW5jdGlvbiBHZXRFbnRpdHkoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpLCAkd2l0aHR5cGU9ZmFsc2UpCmZ1bmN0aW9uIEdldEVudGl0aWVzKCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpCmZ1bmN0aW9uIEdldE9uZUVudGl0eSgkbW9kdWxlLCAkdGFibGUsICRjcml0ZXJpYT1hcnJheSgpLCAkZmFpbGlmbXVsdGlwbGU9ZmFsc2UpCmZ1bmN0aW9uIEdldEVudGl0aWVzRnVsbCgkbW9kdWxlLCAkdGFibGU9IiIsICRjcml0ZXJpYT1hcnJheSgpKQpmdW5jdGlvbiBFbnRpdGllc0NvdW50KCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpCmZ1bmN0aW9uIFNldEVudGl0eVByb3AoJGlkLCRwcm9wbmFtZSwkcHJvcHZhbHVlLCRwcm9wdHlwZT0idW5kZWZpbmVkIikKCmZ1bmN0aW9uIENsZWFyRW50aXR5KCRpZCkKZnVuY3Rpb24gQ2xlYXJNb2R1bGVFbnRpdGllcygkbW9kdWxlKQpmdW5jdGlvbiBDbGVhckVudGl0eVByb3AoJGlkLCAkcHJvcG5hbWUpCmZ1bmN0aW9uIENsZWFyRW50aXR5UHJvcHMoJGlkKQpmdW5jdGlvbiBTZXRFbnRpdHlQcm9wcygkaWQsICRwcm9wcywgJGNsZWFyPXRydWUpCmZ1bmN0aW9uIFNldEVudGl0eVByb3BzRnJvbUFycmF5KCRpZCwgJHByb3BzLCAkdmFsdWVzLCAkY2xlYXI9dHJ1ZSwgJGZpbGw9ZmFsc2UpCmZ1bmN0aW9uIFNldEVudGl0eVByb3BzT25Dcml0ZXJpYSgkbW9kdWxlLCR0YWJsZSwgJHByb3BzLCAkY3JpdGVyaWEsICRjcmVhdGU9dHJ1ZSwgJGNsZWFyPWZhbHNlKSAvL0RvZXMgbm90IHdvcmshCmZ1bmN0aW9uIFJlc2V0RW50aXR5UHJvcHMoJGlkLCAkbmV3cHJvcHM9YXJyYXkoKSkKZnVuY3Rpb24gUmVtb3ZlTW9kdWxlRW50aXRpZXMoJG1vZHVsZW5hbWUpCgovKgogKgogKiBTb3J0aW5nIGZ1bmN0aW9ucwogKgogKi8KZnVuY3Rpb24gQ29tcGFyZUVudGl0aWVzKCRlbnRpdHkxLCAkZW50aXR5MiwgJHNvcnRmaWVsZCkKZnVuY3Rpb24gQ29tcGFyZUVudGl0aWVzQ29tcGxleCgkZW50aXR5MSwgJGVudGl0eTIsICRzb3J0ZmllbGRzPWFycmF5KCkpIC8vRG9lcyBub3Qgd29yawpmdW5jdGlvbiBTb3J0RW50aXRpZXMoJGxpc3QsICRzb3J0ZmllbGRzPWFycmF5KCkgb3Igc3RyaW5nKSAvL09ubHkgd29ya3Mgb24gc3RyaW5ncwpmdW5jdGlvbiBNYWtlU2ltcGxlQXJyYXkoJG1vZHVsZSwgJHRhYmxlLCAkZmllbGQpCmZ1bmN0aW9uIE1ha2VBc3NvY0FycmF5KCRtb2R1bGUsICR0YWJsZSwgJGZpZWxkcykKCi8qCiAqCiAqIEZpZWxkc2V0IGZ1bmN0aW9ucwogKgogKi8KZnVuY3Rpb24gQWRkRmllbGRTZXQoJG1vZHVsZSwkbmFtZSwkZmllbGRzKQpmdW5jdGlvbiBHZXRGaWVsZFNldCgkbW9kdWxlLCAkbmFtZSkKZnVuY3Rpb24gRW50aXR5U2V0VW5zZXRQcm9wcygkbW9kdWxlLCRlbnRpdHksJGZpZWxkc2V0LCRmaWxsdmFsdWU9IiIpCgovKgogKgogKiBDb25uZWN0aW9uIGZ1bmN0aW9ucwogKgogKi8KZnVuY3Rpb24gU2V0RW50aXR5Q29ubmVjdGlvbigkaWQxLCAkaWQyLCAkdHlwZT0iIikKZnVuY3Rpb24gQ2xlYXJFbnRpdHlDb25uZWN0aW9ucygkaWQxLCAkaWQyPS0xLCAkdHlwZT0iIikKZnVuY3Rpb24gQ2xlYXJFbnRpdHlDb25uZWN0aW9uKCRpZDEsICRpZDIsICR0eXBlPSIiKQpmdW5jdGlvbiBDaGVja0VudGl0eUNvbm5lY3Rpb24oJGlkMSwkaWQyLCR0eXBlPSIiKQpmdW5jdGlvbiBHZXRFbnRpdHlDb25uZWN0aW9ucygkaWQxPS0xLCAkaWQyPS0xLCAkYm90aHdheXM9dHJ1ZSwgJHR5cGU9IiIpIC8vRG9lcyBub3Qgd29yawoKLyoKICoKICogRXJyb3IgaGFuZGxpbmcKICoKICovCmZ1bmN0aW9uIEVycm9yKCRlcnJvcnRleHQsJHJldHVybnZhbHVlPWZhbHNlLCRwYXJhbXM9YXJyYXkoKSkKZnVuY3Rpb24gR2V0RXJyb3JzKCRubDJicj10cnVlLCRjbGVhcj10cnVlKQpmdW5jdGlvbiBTaG93RXJyb3JzKCRjbGVhcj10cnVlKQpmdW5jdGlvbiBJbkVycm9yKCkgOiBib29sCjwvcHJlPjxoMz5QYXJhbWV0cmU8L2gzPjx1bD48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsYW5nPSJlbl9VUyIgLSBQYXJhbWV0cmV0IGFuZ2l2ZXIgaHZpbGtldCBzcHJvZyBkZXIgc2thbCBicnVnZXMgdGlsIHZpc25pbmcgZm9yIGJlcyZvc2xhc2g7Z2VuZGUuIElra2UgYWxsZSBtb2R1bGVyIHVuZGVyc3Qmb3NsYXNoO3R0ZXIgZWxsZXIgYmVoJm9zbGFzaDt2ZXIgZGV0dGUuPC9saT48L3VsPg==]]></help>
	<about><![CDATA[PGJyIC8+TGF2ZXQgYWY6IE1vcnRlbiBwb3Vsc2VuICZsdDttb3J0ZW5AcG91bHNlbi5vcmcmZ3Q7PGJyIC8+PGJyIC8+VmVyc2lvbjogMC4zLjE8YnIgLz48YnIgLz5IaXN0b3JpayBvdmVyICZhZWxpZztuZHJpbmdlcjo8YnIgLz48dWw+CjxsaT4wLjMuMSAtIEFkZGVkIGEgRGVsZXRlRW50aXRpZXMgb24gY3JpdGVyaWEtbWV0aG9kPC9saT4KPGxpPjAuMy4wIC0gU3RhcnRlZCBkb2luZyBkYXRhIG1vZGlmaWNhdGlvbnMgbWV0aG9kcywgZGVsZXRpbmcgYSBzcGVjaWZpayBlbnRpdHlpZCBmb3Igc3RhcnRlcnM8L2xpPgo8bGk+MC4yLjMgLSBBZGRlZCBmaWxsIHBhcmFtZXRlciB0byBTZXRFbnRpdHlQcm9wc0Zyb21BcnJheSwgbWFkZSBpcyBwb3NzaWJsZSBmb3IgZmllbGRzIHBhcmFtIHRvIHNvcnRpbmcgYmUgYW4gYXNzb2MgYXJyYXkgdG8gc3VwcG9ydCBkaXJlY3Rpb25zIGluIHNvcnRpbmc8L2xpPgo8bGk+MC4yLjIgLSBBZGRlZCBhIGN1c3RvbSByZXR1cm52YWx1ZSB0byBjaGVja2VudGl0eWNvbm5lY3Rpb25zLE1ha2VTaW1wbGVBcnJheTwvbGk+CjxsaT4wLjIuMSAtIEZpeGVkIGEgdHlwZSBpbiBHZXRFbnRpdHktZnVuY3Rpb248L2xpPgo8bGk+MC4yLjAgLSBGaXhlZCByZXNldCBmaWx0ZXIgYnV0dG9uLCBtYWRlIGZpbHRlcmluZyBvbiBtb2R1bGUgYmFzZWQgb24gYSBkcm9wZG93biwgYnVnZml4ZXM8L2xpPgo8bGk+MC4xLjAgLSBJbml0aWFsIHJlbGVhc2U8L2xpPgo8L3VsPjxiciAvPg==]]></about>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7DQppZiAoISR0aGlzLT5WaXNpYmxlVG9BZG1pblVzZXIoKSkgZXhpdDsNCg0KaWYgKGlzc2V0KCRwYXJhbXNbImFwcGx5ZmlsdGVyIl0pKSB7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJpZGZpbHRlciIsJHBhcmFtc1siaWRmaWx0ZXIiXSk7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJtb2R1bGVmaWx0ZXIiLCRwYXJhbXNbIm1vZHVsZWZpbHRlciJdKTsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoInRhYmxlZmlsdGVyIiwkcGFyYW1zWyJ0YWJsZWZpbHRlciJdKTsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoInByb3BmaWx0ZXIiLCRwYXJhbXNbInByb3BmaWx0ZXIiXSk7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJ2YWx1ZWZpbHRlciIsJHBhcmFtc1sidmFsdWVmaWx0ZXIiXSk7DQp9DQppZiAoaXNzZXQoJHBhcmFtc1sicmVzZXRmaWx0ZXIiXSkpIHsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoImlkZmlsdGVyIiwiIik7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJtb2R1bGVmaWx0ZXIiLCIiKTsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoInRhYmxlZmlsdGVyIiwiIik7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJwcm9wZmlsdGVyIiwiIik7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJ2YWx1ZWZpbHRlciIsIiIpOw0KfQ0KDQokdGhlbWVvYmogPSAmJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddOw0KDQokZGI9JHRoaXMtPkdldERiKCk7DQokc3FsPSJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2UiOw0KJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCk7DQokcm93cz1hcnJheSgpOw0KJHRvdGFsY291bnQ9JHJlc3VsdC0+UmVjb3JkQ291bnQoKTsNCmlmICgkcmVzdWx0ICYmICgkcmVzdWx0LT5SZWNvcmRDb3VudCgpPjApKSB7DQoNCiAgd2hpbGUoJHJvdz0kcmVzdWx0LT5GZXRjaFJvdygpKSB7DQogICAgJHByb3BzPSR0aGlzLT5HZXRFbnRpdHkoJHJvd1siZW50aXR5aWQiXSk7DQogICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJpZGZpbHRlciIpIT0iIikgew0KICAgICAgaWYgKCFlcmVnaSgkdGhpcy0+R2V0UHJlZmVyZW5jZSgiaWRmaWx0ZXIiKSwkcm93WyJlbnRpdHlpZCJdKSkgY29udGludWU7DQogICAgfQ0KICAgIGlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgibW9kdWxlZmlsdGVyIikhPSIiKSB7DQogICAgICBpZiAoIWVyZWdpKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJtb2R1bGVmaWx0ZXIiKSwkcm93WyJlbnRpdHltb2R1bGUiXSkpIGNvbnRpbnVlOw0KICAgIH0NCiAgICBpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoInRhYmxlZmlsdGVyIikhPSIiKSB7DQogICAgICBpZiAoIWVyZWdpKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJ0YWJsZWZpbHRlciIpLCRyb3dbImVudGl0eXRhYmxlIl0pKSBjb250aW51ZTsNCiAgICB9DQoNCiAgICBpZiAoaXNfYXJyYXkoJHByb3BzKSkgew0KICAgICAgZm9yZWFjaCAoJHByb3BzIGFzICRwcm9wbmFtZT0+JHByb3B2YWx1ZSkgew0KICAgICAgICBpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoInByb3BmaWx0ZXIiKSE9IiIpIHsNCiAgICAgICAgICBpZiAoIWVyZWdpKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJwcm9wZmlsdGVyIiksJHByb3BuYW1lKSkgY29udGludWU7DQogICAgICAgIH0NCiAgICAgICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJ2YWx1ZWZpbHRlciIpIT0iIikgew0KICAgICAgICAgIGlmICghZXJlZ2koJHRoaXMtPkdldFByZWZlcmVuY2UoInZhbHVlZmlsdGVyIiksJHByb3B2YWx1ZSkpIGNvbnRpbnVlOw0KICAgICAgICB9DQogICAgICAgICRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MoKTsNCiAgICAgICAgJG9uZXJvdy0+aWQ9JHJvd1siZW50aXR5aWQiXTsNCiAgICAgICAgJG9uZXJvdy0+aWRkZWxldGVsaW5rPSR0aGlzLT5DcmVhdGVMaW5rKCRpZCwibW9kaWZ5ZGF0YSIsJycsJHRoZW1lb2JqLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9kZWxldGUuZ2lmJywgJHRoaXMtPkxhbmcoImRlbGV0ZWlkIiksJycsJycsJ3N5c3RlbWljb24nKSxhcnJheSgid2hhdHRvZG8iPT4iZGVsZXRlaWQiLCJlbnRpdHlpZCI9PiRyb3dbImVudGl0eWlkIl0pLCR0aGlzLT5MYW5nKCJjb25maXJtZGVsZXRlaWQiLCRyb3dbImVudGl0eWlkIl0pKTsNCg0KICAgICAgICAkb25lcm93LT5tb2R1bGU9JHJvd1siZW50aXR5bW9kdWxlIl07DQogICAgICAgICRvbmVyb3ctPnRhYmxlPSRyb3dbImVudGl0eXRhYmxlIl07DQogICAgICAgICRvbmVyb3ctPnRhYmxlZGVsZXRlbGluaz0kdGhpcy0+Q3JlYXRlTGluaygkaWQsIm1vZGlmeWRhdGEiLCcnLCR0aGVtZW9iai0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsICR0aGlzLT5MYW5nKCJkZWxldGV0YWJsZSIpLCcnLCcnLCdzeXN0ZW1pY29uJyksYXJyYXkoIndoYXR0b2RvIj0+ImRlbGV0ZXRhYmxlIiwibW9kdWxlbmFtZSI9PiRyb3dbImVudGl0eW1vZHVsZSJdLCJ0YWJsZW5hbWUiPT4kcm93WyJlbnRpdHl0YWJsZSJdKSwkdGhpcy0+TGFuZygiY29uZmlybWRlbGV0ZXRhYmxlIiwkcm93WyJlbnRpdHl0YWJsZSJdLCRyb3dbImVudGl0eW1vZHVsZSJdKSk7DQogICAgICAgICRvbmVyb3ctPnByb3BuYW1lPSRwcm9wbmFtZTsNCiAgICAgICAgJG9uZXJvdy0+cHJvcGRlbGV0ZWxpbms9JHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCJtb2RpZnlkYXRhIiwnJywkdGhlbWVvYmotPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2RlbGV0ZS5naWYnLCAkdGhpcy0+TGFuZygiZGVsZXRlcHJvcCIpLCcnLCcnLCdzeXN0ZW1pY29uJyksYXJyYXkoIndoYXR0b2RvIj0+ImRlbGV0ZXByb3AiLCJwcm9wbmFtZSI9PiRwcm9wbmFtZSwibW9kdWxlbmFtZSI9PiRyb3dbImVudGl0eW1vZHVsZSJdLCJ0YWJsZW5hbWUiPT4kcm93WyJlbnRpdHl0YWJsZSJdKSwkdGhpcy0+TGFuZygiY29uZmlybWRlbGV0ZXByb3AiLCRwcm9wbmFtZSwkcm93WyJlbnRpdHl0YWJsZSJdLCRyb3dbImVudGl0eW1vZHVsZSJdKSk7DQogICAgICAgICRvbmVyb3ctPnByb3B2YWx1ZT0kcHJvcHZhbHVlOw0KICAgICAgICBhcnJheV9wdXNoKCRyb3dzLCAkb25lcm93KTsNCiAgICAgIH0NCiAgICB9DQogICAgaWYgKGNvdW50KCRyb3dzKT41MDApIHsNCiAgICAgICR0aGlzLT5zbWFydHktPmFzc2lnbigidG9vbWFueXJvd3MiLCR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCJ0b29tYW55cm93cyIpKSk7DQogICAgICBicmVhazsNCiAgICB9DQogIH0NCn0NCiR0aGlzLT5zbWFydHktPmFzc2lnbl9ieV9yZWYoJ2l0ZW1zJywgJHJvd3MpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZignbW9kJywgJHRoaXMpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpdGVtY291bnQnLCBjb3VudCgkcm93cykpOw0KDQoNCi8qRmlsdGVyKi8NCiR0aGlzLT5zbWFydHktPmFzc2lnbigiZm9ybXN0YXJ0IiwkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwiZGVmYXVsdGFkbWluIikpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCJmb3JtZW5kIiwkdGhpcy0+Q3JlYXRlRm9ybUVuZCgkaWQpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigiYXBwbHlmaWx0ZXIiLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsImFwcGx5ZmlsdGVyIiwkdGhpcy0+TGFuZygiYXBwbHlmaWx0ZXIiKSkpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCJyZXNldGZpbHRlciIsJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwicmVzZXRmaWx0ZXIiLCR0aGlzLT5MYW5nKCJyZXNldGZpbHRlciIpKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oImlkZmlsdGVyaW5wdXQiLCR0aGlzLT5DcmVhdGVJbnB1dHRleHQoJGlkLCJpZGZpbHRlciIsJHRoaXMtPkdldFByZWZlcmVuY2UoImlkZmlsdGVyIikpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigibW9kdWxlZmlsdGVyaW5wdXQiLCR0aGlzLT5DcmVhdGVJbnB1dERyb3Bkb3duKCRpZCwibW9kdWxlZmlsdGVyIiwkdGhpcy0+R2V0TW9kdWxlTGlzdCgpLCAiIiwgJHRoaXMtPkdldFByZWZlcmVuY2UoIm1vZHVsZWZpbHRlciIpKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oInRhYmxlZmlsdGVyaW5wdXQiLCR0aGlzLT5DcmVhdGVJbnB1dHRleHQoJGlkLCJ0YWJsZWZpbHRlciIsJHRoaXMtPkdldFByZWZlcmVuY2UoInRhYmxlZmlsdGVyIikpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigicHJvcGZpbHRlcmlucHV0IiwkdGhpcy0+Q3JlYXRlSW5wdXR0ZXh0KCRpZCwicHJvcGZpbHRlciIsJHRoaXMtPkdldFByZWZlcmVuY2UoInByb3BmaWx0ZXIiKSkpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCJ2YWx1ZWZpbHRlcmlucHV0IiwkdGhpcy0+Q3JlYXRlSW5wdXR0ZXh0KCRpZCwidmFsdWVmaWx0ZXIiLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJ2YWx1ZWZpbHRlciIpKSk7DQoNCi8vJHRoaXMtPlNtYXJ0eUZvcm1TdGFydCgiZGVmYXVsdGFkbWluIixhcnJheSgibmFtZSI9PiJzdWJtaXRmaWx0ZXIiLCJ2YWx1ZSI9PiR0aGlzLT5MYW5nKCJhcHBseWZpbHRlciIpKSk7DQovLyR0aGlzLT5TbWFydHlGb3JtU3RhcnQoImRlZmF1bHRhZG1pbiIsYXJyYXkoIm5hbWUiPT4icmVzZXRmaWx0ZXIiLCJ2YWx1ZSI9PiR0aGlzLT5MYW5nKCJyZXNldGZpbHRlciIpKSk7DQoNCmVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnc2hvd2RhdGEudHBsJyk7DQoNCg0KPz4=]]></data>
	</file>
	<file>
	  <filename>/action.modifydata.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CmlmICghJHRoaXMtPlZpc2libGVUb0FkbWluVXNlcigpKSBleGl0OwppZiAoIWlzc2V0KCRwYXJhbXNbIndoYXR0b2RvIl0pKSBleGl0OwoKJG1lc3NhZ2U9IiI7CiRlcnJvcj0iIjsKc3dpdGNoICgkcGFyYW1zWyJ3aGF0dG9kbyJdKSB7CiAgY2FzZSAiZGVsZXRlaWQiIDogewogICAgaWYgKCFpc3NldCgkcGFyYW1zWyJlbnRpdHlpZCJdKSkgewogICAgICAkZXJyb3I9JHRoaXMtPkxhbmcoIm1vZGlmaWNhdGlvbnBhcmFtc2Vycm9yIik7CiAgICAgIGJyZWFrOwogICAgfQogICAgaWYgKCEkdGhpcy0+RGVsZXRlRW50aXR5KCRwYXJhbXNbImVudGl0eWlkIl0pKSB7CiAgICAgICRlcnJvcj0kdGhpcy0+TGFuZygiZW50aXR5aWRkZWxldGVmYWlsZWQiLCRwYXJhbXNbImVudGl0eWlkIl0pOwogICAgfSBlbHNlIHsKICAgICAgJG1lc3NhZ2U9JHRoaXMtPkxhbmcoImVudGl0eWlkZGVsZXRlZCIpOwogICAgfQogICAgYnJlYWs7CiAgfQogIGNhc2UgImRlbGV0ZXByb3AiIDogewogICAgaWYgKCFpc3NldCgkcGFyYW1zWyJwcm9wbmFtZSJdKSB8fCAhaXNzZXQoJHBhcmFtc1sidGFibGVuYW1lIl0pIHx8ICFpc3NldCgkcGFyYW1zWyJtb2R1bGVuYW1lIl0pKSB7CiAgICAgICRlcnJvcj0kdGhpcy0+TGFuZygibW9kaWZpY2F0aW9ucGFyYW1zZXJyb3IiKTsKICAgICAgYnJlYWs7CiAgICB9CiAgICAkZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzKCRwYXJhbXNbIm1vZHVsZW5hbWUiXSwkcGFyYW1zWyJ0YWJsZW5hbWUiXSk7CiAgICBpZiAoISRlbnRpdGllcykgewogICAgICAkZXJyb3I9JHRoaXMtPkxhbmcoIm1vZGlmaWNhdGlvbnBhcmFtc2Vycm9yIik7CiAgICAgIGJyZWFrOwogICAgfQogICAgZm9yZWFjaCAoJGVudGl0aWVzIGFzICRlbnRpdHkpIHsKICAgICAgJHRoaXMtPkNsZWFyRW50aXR5UHJvcCgkZW50aXR5WyJpZCJdLCRwYXJhbXNbInByb3BuYW1lIl0pOwogICAgfSAgICAKICAgICRtZXNzYWdlPSR0aGlzLT5MYW5nKCJwcm9wZXJ0eWRlbGV0ZWQiKTsKICAgIGJyZWFrOwogIH0KICBjYXNlICJkZWxldGV0YWJsZSIgOiB7CiAgICBpZiAoIWlzc2V0KCRwYXJhbXNbInRhYmxlbmFtZSJdKSB8fCAhaXNzZXQoJHBhcmFtc1sibW9kdWxlbmFtZSJdKSkgewogICAgICAkZXJyb3I9JHRoaXMtPkxhbmcoIm1vZGlmaWNhdGlvbnBhcmFtc2Vycm9yIik7CiAgICAgIGJyZWFrOwogICAgfQogICAgJGVudGl0aWVzPSR0aGlzLT5HZXRFbnRpdGllcygkcGFyYW1zWyJtb2R1bGVuYW1lIl0sJHBhcmFtc1sidGFibGVuYW1lIl0pOwogICAgaWYgKCEkZW50aXRpZXMpIHsKICAgICAgJGVycm9yPSR0aGlzLT5MYW5nKCJtb2RpZmljYXRpb25wYXJhbXNlcnJvciIpOwogICAgICBicmVhazsKICAgIH0KICAgIGZvcmVhY2ggKCRlbnRpdGllcyBhcyAkZW50aXR5KSB7CiAgICAgICR0aGlzLT5DbGVhckVudGl0eSgkZW50aXR5WyJpZCJdKTsKICAgIH0KICAgICRtZXNzYWdlPSR0aGlzLT5MYW5nKCJ0YWJsZWRlbGV0ZWQiKTsKICAgIGJyZWFrOwogIH0KfQoKJHRoaXMtPlJlZGlyZWN0KCRpZCwiZGVmYXVsdGFkbWluIiwkcmV0dXJuaWQsYXJyYXkoIm1vZHVsZV9tZXNzYWdlIj0+JG1lc3NhZ2UsIm1vZHVsZV9lcnJvciI9PiRlcnJvcikpOwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbImZyaWVuZGx5bmFtZSJdPSJOZW8gRGF0YSBTdG9yYWdlIjsKJGxhbmdbImluc3RhbGxlZCJdPSJOZW8gRGF0YSBTdG9yYWdlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQiOwokbGFuZ1sidW5pbnN0YWxsZWQiXT0iTmVvIERhdGEgU3RvcmFnZSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgdW5pbnN0YWxsZWQiOwokbGFuZ1sibm9kYXRhIl09Ik5vIGRhdGEiOwoKJGxhbmdbImlkZmlsdGVyIl09IkVudGl0eSBJRCBpcyI7CiRsYW5nWyJtb2R1bGVmaWx0ZXIiXT0iTW9kdWxlIGlzIjsKJGxhbmdbInRhYmxlZmlsdGVyIl09IlRhYmxlbmFtZSBjb250YWlucyI7CiRsYW5nWyJwcm9wZmlsdGVyIl09IlByb3BlcnR5bmFtZSBjb250YWlucyI7CiRsYW5nWyJ2YWx1ZWZpbHRlciJdPSJWYWx1ZSBjb250YWlucyI7CiRsYW5nWyJhcHBseWZpbHRlciJdPSJBcHBseSBmaWx0ZXIiOwokbGFuZ1sicmVzZXRmaWx0ZXIiXT0iUmVzZXQgZmlsdGVyIjsKJGxhbmdbInNob3dmaWx0ZXJzIl09IlNob3cgZmlsdGVycyI7CiRsYW5nWyJmaWx0ZXJzIl09IkZpbHRlcnMiOwokbGFuZ1sicm93c2ZvdW5kIl09InJvd3MgZm91bmQiOwokbGFuZ1sidG9vbWFueXJvd3MiXT0iVG9vIG1hbnkgcm93cyBmb3VuZCwgbmFycm93IGl0IGRvd24gdXNpbmcgZmlsdGVycyI7CgokbGFuZ1sibW9kaWZpY2F0aW9ucGFyYW1zZXJyb3IiXT0iRXJyb3IocykgaW4gdGhlIHBhcmFtZXRlcnMgc2VudCB0byB0aGUgZGF0YSBtb2RpZmljYXRpb24gZnVuY3Rpb25zLiI7CgokbGFuZ1siZGVsZXRlaWQiXT0iRGVsZXRlIHRoaXMgZW50aXR5LWlkIjsKJGxhbmdbImNvbmZpcm1kZWxldGVpZCJdPSJSZWFsbHkgZGVsZXRlIHRoZSBlbnRpdHkgd2l0aCBlbnRpdHlpZD0lZD8iOwokbGFuZ1siZW50aXR5aWRub3Rmb3VuZCJdPSJFbnRpdHkgaWQgbm90IHByb3ZpZGVkIjsKJGxhbmdbImVudGl0eWlkZGVsZXRlZmFpbGVkIl09IkRlbGV0aW5nIGVudGl0eWlkPSVkIGZhaWxlZCI7CiRsYW5nWyJlbnRpdHlpZGRlbGV0ZWQiXT0iRW50aXR5IGRlbGV0ZWQiOwoKJGxhbmdbImRlbGV0ZXByb3AiXT0iRGVsZXRlIHRoaXMgcHJvcGVydHkiOwokbGFuZ1siY29uZmlybWRlbGV0ZXByb3AiXT0iUmVhbGx5IGRlbGV0ZSBhbGwgcHJvcGVydGllcyBjYWxsZWQgJXMgaW4gdGFibGUgJXMgYW5kIG1vZHVsZSAlcz8iOwokbGFuZ1sicHJvcGVydHlkZWxldGVmYWlsZWQiXT0iRGVsZXRpbmcgcHJvcGVydHk9JXMgZmFpbGVkIjsKJGxhbmdbInByb3BlcnR5ZGVsZXRlZCJdPSJQcm9wZXJ0eSBkZWxldGVkIjsKCiRsYW5nWyJkZWxldGV0YWJsZSJdPSJEZWxldGUgdGhpcyB0YWJsZSI7CiRsYW5nWyJjb25maXJtZGVsZXRldGFibGUiXT0iUmVhbGx5IGRlbGV0ZSB0YWJsZSAlcyBpbiBtb2R1bGUgJXM/IjsKJGxhbmdbInRhYmxlZGVsZXRlZmFpbGVkIl09IkRlbGV0aW5nIHRhYmxlICVzIGZhaWxlZCI7CiRsYW5nWyJ0YWJsZWRlbGV0ZWQiXT0iVGFibGUgZGVsZXRlZCI7Cgo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/ext/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/ext/da_DK.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ05lbyBEYXRhIFN0b3JhZ2UnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTmVvIERhdGEgU3RvcmFnZSBibGV2IGtvcnJla3QgaW5zdGFsbGVyZXQnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdOZW8gRGF0YSBTdG9yYWdlIGJsZXYga29ycmVrdCBhZmluc3RhbGxlcmV0JzsKJGxhbmdbJ25vZGF0YSddID0gJ0luZ2VuIGRhdGEnOwokbGFuZ1snaWRmaWx0ZXInXSA9ICdFbnRpdHkgSUQgZXInOwokbGFuZ1snbW9kdWxlZmlsdGVyJ10gPSAnTW9kdWxldCBlcic7CiRsYW5nWyd0YWJsZWZpbHRlciddID0gJ1RhYmVsbmF2biBpbmRlaG9sZGVyJzsKJGxhbmdbJ3Byb3BmaWx0ZXInXSA9ICdFZ2Vuc2thYm5hdm5ldCBpbmRlaG9sZGVyJzsKJGxhbmdbJ3ZhbHVlZmlsdGVyJ10gPSAnViZhZWxpZztyZGllbiBpbmRlaG9sZGVyJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnUCZhcmluZztmJm9zbGFzaDtyIGZpbHRlcic7CiRsYW5nWydyZXNldGZpbHRlciddID0gJ051bHN0aWwgZmlsdGVyJzsKJGxhbmdbJ3Nob3dmaWx0ZXJzJ10gPSAnVmlzIGZpbHRyZSc7CiRsYW5nWydmaWx0ZXJzJ10gPSAnRmlsdHJlJzsKJGxhbmdbJ3Jvd3Nmb3VuZCddID0gJ3ImYWVsaWc7a2tlciBmdW5kZXQnOwokbGFuZ1sndG9vbWFueXJvd3MnXSA9ICdGb3IgbWFuZ2UgciZhZWxpZztra2VyIGZ1bmRldCwgaW5kc2smYWVsaWc7cnAgZGV0IHZoYS4gZmlsdHJlJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuNDQxNzAyMDg5Mjg3Njg0NDUwMC4xMjEzMjUyNjcyLjEyNDc0Mjk0MzEuMTI1Mjk1NjM4OC4yMSc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyNDQ5OTE1MjIuMTkuNS51dG1jc3I9ZGV2LmNtc21hZGVzaW1wbGUub3JnfHV0bWNjbj0ocmVmZXJyYWwpfHV0bWNtZD1yZWZlcnJhbHx1dG1jY3Q9L3Byb2plY3RzL3NpbXBsZXBpZSc7CiRsYW5nWydxY2EnXSA9ICdQMC0xNzQxNjIwODU4LTEyNTIyNjYwNzk0NzUnOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/fr_FR.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ05lbyBEYXRhIFN0b3JhZ2UgJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ0xlIG1vZHVsZSBOZW8gRGF0YSBTdG9yYWdlIGEgJmVhY3V0ZTt0JmVhY3V0ZTsgaW5zdGFsbCZlYWN1dGU7IGF2ZWMgc3VjYyZlZ3JhdmU7cy4nOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdMZSBtb2R1bGUgTmVvIERhdGEgU3RvcmFnZSBhICZlYWN1dGU7dCZlYWN1dGU7IGQmZWFjdXRlO3NpbnN0YWxsJmVhY3V0ZTsgYXZlYyBzdWNjJmVncmF2ZTtzLic7CiRsYW5nWydub2RhdGEnXSA9ICdBdWN1bmUgZG9ubiZlYWN1dGU7ZSc7CiRsYW5nWydpZGZpbHRlciddID0gJ0wmIzAzOTtpZGVudGlmaWFudCBkJiMwMzk7ZW50aXQmZWFjdXRlOyBlc3QnOwokbGFuZ1snbW9kdWxlZmlsdGVyJ10gPSAnTGUgbW9kdWxlIGVzdCc7CiRsYW5nWyd0YWJsZWZpbHRlciddID0gJ1RhYmxlbmFtZSBjb250aWVudCc7CiRsYW5nWydwcm9wZmlsdGVyJ10gPSAnUHJvcGVydHluYW1lIGNvbnRpZW50JzsKJGxhbmdbJ3ZhbHVlZmlsdGVyJ10gPSAnVmFsdWUgY29udGllbnQnOwokbGFuZ1snYXBwbHlmaWx0ZXInXSA9ICdBcHBsaXF1ZXIgbGUgZmlsdHJlJzsKJGxhbmdbJ3Jlc2V0ZmlsdGVyJ10gPSAnUiZlYWN1dGU7aW5pdGlhbGlzZXIgbGUgZmlsdHJlJzsKJGxhbmdbJ3Nob3dmaWx0ZXJzJ10gPSAnQWZmaWNoZXIgbGVzIGZpbHRyZXMnOwokbGFuZ1snZmlsdGVycyddID0gJ0ZpbHRyZXMnOwokbGFuZ1sncm93c2ZvdW5kJ10gPSAnbGlnbmVzIHRyb3V2JmVhY3V0ZTtlcyc7CiRsYW5nWyd0b29tYW55cm93cyddID0gJ1Ryb3AgZGUgbGlnbmVzIG9udCAmZWFjdXRlO3QmZWFjdXRlOyB0cm91diZlYWN1dGU7ZXMuIExpbWl0ZXotbGVzIGVuIHV0aWxpc2FudCBsZXMgZmlsdHJlcy4nOwokbGFuZ1snbW9kaWZpY2F0aW9ucGFyYW1zZXJyb3InXSA9ICdFcnJvcihzKSBpbiB0aGUgcGFyYW1ldGVycyBzZW50IHRvIHRoZSBkYXRhIG1vZGlmaWNhdGlvbiBmdW5jdGlvbnMuJzsKJGxhbmdbJ2RlbGV0ZWlkJ10gPSAnRGVsZXRlIHRoaXMgZW50aXR5LWlkJzsKJGxhbmdbJ2NvbmZpcm1kZWxldGVpZCddID0gJ1JlYWxseSBkZWxldGUgdGhlIGVudGl0eSB3aXRoIGVudGl0eWlkPSVkPyc7CiRsYW5nWydlbnRpdHlpZG5vdGZvdW5kJ10gPSAnRW50aXR5IGlkIG5vdCBwcm92aWRlZCc7CiRsYW5nWydlbnRpdHlpZGRlbGV0ZWZhaWxlZCddID0gJ0RlbGV0aW5nIGVudGl0eWlkPSVkIGZhaWxlZCc7CiRsYW5nWydlbnRpdHlpZGRlbGV0ZWQnXSA9ICdFbnRpdCZlYWN1dGU7IHN1cHByaW0mZWFjdXRlO2UnOwokbGFuZ1snZGVsZXRlcHJvcCddID0gJ1N1cHByaW1lciBjZXR0ZSBwcm9wcmkmZWFjdXRlO3QmZWFjdXRlOyc7CiRsYW5nWydjb25maXJtZGVsZXRlcHJvcCddID0gJ1JlYWxseSBkZWxldGUgYWxsIHByb3BlcnRpZXMgY2FsbGVkICVzIGluIHRhYmxlICVzIGFuZCBtb2R1bGUgJXM/JzsKJGxhbmdbJ3Byb3BlcnR5ZGVsZXRlZmFpbGVkJ10gPSAnRGVsZXRpbmcgcHJvcGVydHk9JXMgZmFpbGVkJzsKJGxhbmdbJ3Byb3BlcnR5ZGVsZXRlZCddID0gJ1Byb3ByaSZlYWN1dGU7dCZlYWN1dGU7IHN1cHByaW0mZWFjdXRlO2UnOwokbGFuZ1snZGVsZXRldGFibGUnXSA9ICdTdXBwcmltZXIgY2V0dGUgdGFibGUnOwokbGFuZ1snY29uZmlybWRlbGV0ZXRhYmxlJ10gPSAnRCZlYWN1dGU7c2lyZXotdm91cyB2cmFpbWVudCBzdXBwcmltZXIgbGEgdGFibGUgJXMgZGFucyBsZSBtb2R1bGUgJXM/JzsKJGxhbmdbJ3RhYmxlZGVsZXRlZmFpbGVkJ10gPSAnTGEgc3VwcHJlc3Npb24gZGUgbGEgdGFibGUgJXMgYSAmZWFjdXRlO2Nob3UmZWFjdXRlOyc7CiRsYW5nWyd0YWJsZWRlbGV0ZWQnXSA9ICdUYWJsZSBzdXBwcmltJmVhY3V0ZTtlJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTkzMTM0NjA3Ny4xMjY5ODE3NjQ5LjEyNzMyODM1ODcuMTI3NDM5NzQ4My4xNic7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyNzMyODM1ODcuMTUuNy51dG1jY249KG9yZ2FuaWMpfHV0bWNzcj1nb29nbGV8dXRtY3RyPWNtcyBtYWRlIHNpbXBsZSB0ZW1wbGF0ZXN8dXRtY21kPW9yZ2FuaWMnOwokbGFuZ1sncWNhJ10gPSAnUDAtMTYxMTg1MTAxOC0xMjY5ODE3NjQ5MTc2JzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ05FTyBEYXRhIFN0b3JhZ2UgJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ05FTyBEYXRhIFN0b3JhZ2UgaGFyIGJsaXR0IGluc3RhbGxlcnQnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdORU8gRGF0YSBTdG9yYWdlIGhhciBibGl0dCBhdmluc3RhbGxlcnQnOwokbGFuZ1snbm9kYXRhJ10gPSAnSW5nZW4gZGF0YSc7CiRsYW5nWydpZGZpbHRlciddID0gJ0VudGl0ZXRzIElEJiMwMzk7ZW4gZXInOwokbGFuZ1snbW9kdWxlZmlsdGVyJ10gPSAnTW9kdWxlbiBlcic7CiRsYW5nWyd0YWJsZWZpbHRlciddID0gJ1RhYmJlbGxuYXZuZXQgaW5uZWhvbGRlcic7CiRsYW5nWydwcm9wZmlsdGVyJ10gPSAnRWdlbnNrYXBzbmF2bmV0IGlubmVob2xkZXInOwokbGFuZ1sndmFsdWVmaWx0ZXInXSA9ICdWZXJkaSBpbm5laG9sZGVyJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnU2wmYXJpbmc7IHAmYXJpbmc7IGZpbHRlcic7CiRsYW5nWydyZXNldGZpbHRlciddID0gJ1RpbGJha2VzdGlsbCBmaWx0ZXInOwokbGFuZ1snc2hvd2ZpbHRlcnMnXSA9ICdWaXMgZmlsdHJlJzsKJGxhbmdbJ2ZpbHRlcnMnXSA9ICdGaWx0cmUnOwokbGFuZ1sncm93c2ZvdW5kJ10gPSAncmFkZXIgZnVubmV0JzsKJGxhbmdbJ3Rvb21hbnlyb3dzJ10gPSAnRm9yIG1hbmdlIHJhZGVyIGZ1bm5ldCwgYmVncmVucyBkZXR0ZSB2ZWQgJmFyaW5nOyBiZW55dHRlIGZpbHRyZSc7CiRsYW5nWydtb2RpZmljYXRpb25wYXJhbXNlcnJvciddID0gJ0ZlaWwgaSBwYXJhbWV0ZXJuZSBzb20gYmxlIHNlbmR0IHRpbCBkYXRhbW9kaWZpc2VyaW5nc2Z1bmtzam9uZW5lLic7CiRsYW5nWydkZWxldGVpZCddID0gJ1NsZXR0IGRlbm5lIGVudGl0ZXRzLWlkJzsKJGxhbmdbJ2NvbmZpcm1kZWxldGVpZCddID0gJ1ZpcmtlbGlnIHNsZXR0ZSBlbnRpdGV0ZW4gbWVkIGVudGl0eWlkPSVkPyc7CiRsYW5nWydlbnRpdHlpZG5vdGZvdW5kJ10gPSAnRW50aXRldHMtaWQgaWtrZSBvcHBnaXR0JzsKJGxhbmdbJ2VudGl0eWlkZGVsZXRlZmFpbGVkJ10gPSAnU2xldHRpbmcgYXYgZW50aXR5aWQ9JWQgZmVpbGV0JzsKJGxhbmdbJ2VudGl0eWlkZGVsZXRlZCddID0gJ0VudGl0ZXQgc2xldHRldCc7CiRsYW5nWydkZWxldGVwcm9wJ10gPSAnU2xldHQgZGVubmUgZWdlbnNrYXBlbic7CiRsYW5nWydjb25maXJtZGVsZXRlcHJvcCddID0gJ1ZyaWtlbGlnIHNsZXR0ZSBhbGxlIGVnZW5za2FwZXIgbWVkIG5hdm4gJXMgaSB0YWJlbGwgJXMgb2cgbW9kdWwgJXM/JzsKJGxhbmdbJ3Byb3BlcnR5ZGVsZXRlZmFpbGVkJ10gPSAnU2xldHRpbmcgYXYgcHJvcGVydHk9JXMgZmVpbGV0JzsKJGxhbmdbJ3Byb3BlcnR5ZGVsZXRlZCddID0gJ0VnZW5za2FwIHNsZXR0ZXQnOwokbGFuZ1snZGVsZXRldGFibGUnXSA9ICdTbGV0dCBkZW5uZSB0YWJlbGxlbic7CiRsYW5nWydjb25maXJtZGVsZXRldGFibGUnXSA9ICdWcmlrZWxpZyBzbGV0dGUgdGFiZWxsICVzIGkgbW9kdWwgJXM/JzsKJGxhbmdbJ3RhYmxlZGVsZXRlZmFpbGVkJ10gPSAnU2xldHRpbmcgYXYgdGFiZWxsICVzIGZlaWxldCc7CiRsYW5nWyd0YWJsZWRlbGV0ZWQnXSA9ICdUYWJlbGwgc2xldHRldCc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyNjkyODQ5MDUuMjUzNi41NS51dG1jc3I9Zm9ydW0uY21zbWFkZXNpbXBsZS5vcmd8dXRtY2NuPShyZWZlcnJhbCl8dXRtY21kPXJlZmVycmFsfHV0bWNjdD0vaW5kZXgucGhwJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTc5MDUyNjIzMDg0MTEwMTAwLjEyMTA0MjM1NzcuMTI3MTExMTE2My4xMjcxMTg4Njc0LjI1OTEnOwokbGFuZ1sncWNhJ10gPSAnMTIxMDk3MTY5MC0yNzMwODA3My04MTk1MjgzMic7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjIuMTAuMTI3MTE4ODY3NCc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ05FTyBEYXRhIFN0b3JhZ2UgJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ05FTyBEYXRhIFN0b3JhZ2UgbW9kdWxlIGlzIGdlJml1bWw7bnN0YWxsZWVyZCc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ05FTyBEYXRhIFN0b3JhZ2UgbW9kdWxlIGlzIHZlcndpamRlcmQnOwokbGFuZ1snbm9kYXRhJ10gPSAnR2VlbiBkYXRhJzsKJGxhbmdbJ2lkZmlsdGVyJ10gPSAnRW50aXR5IElkIGlzJzsKJGxhbmdbJ21vZHVsZWZpbHRlciddID0gJ01vZHVsZSBpcyAnOwokbGFuZ1sndGFibGVmaWx0ZXInXSA9ICdUYWJlbG5hYW0gYmV2YXQnOwokbGFuZ1sncHJvcGZpbHRlciddID0gJ0VpZ2Vuc2NoYXBuYWFtIGJldmF0JzsKJGxhbmdbJ3ZhbHVlZmlsdGVyJ10gPSAnV2FhcmRlIGJldmF0JzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnRmlsdGVyIHRvZXBhc3Nlbic7CiRsYW5nWydyZXNldGZpbHRlciddID0gJ0ZpbHRlciBoZXJzdGVsbGVuJzsKJGxhbmdbJ3Nob3dmaWx0ZXJzJ10gPSAnVG9vbiBmaWx0ZXJzJzsKJGxhbmdbJ2ZpbHRlcnMnXSA9ICdGaWx0ZXJzICc7CiRsYW5nWydyb3dzZm91bmQnXSA9ICdyZWdlbHMgZ2V2b25kZW4nOwokbGFuZ1sndG9vbWFueXJvd3MnXSA9ICdUZSB2ZWVsIHJlZ2VscyBnZXZvbmRlbiwgcGFzIGVlbiBmaWx0ZXIgdG9lJzsKJGxhbmdbJ21vZGlmaWNhdGlvbnBhcmFtc2Vycm9yJ10gPSAnRm91dChlbikgaW4gZGUgcGFyYW1ldGVycyBkaWUgdmVyc3R1dXJkIHppam4gbmFhciBkZSBkYXRhIGJld2Vya2luZ3NmdW5jdGllcy4nOwokbGFuZ1snZGVsZXRlaWQnXSA9ICdWZXJ3aWpkZXIgZGV6ZSBlbnRpdHktaWQnOwokbGFuZ1snY29uZmlybWRlbGV0ZWlkJ10gPSAnVmVyd2lqZGVyIGRlIGVudGl0eSBtZXQgZW50aXR5aWQ9JWQ/JzsKJGxhbmdbJ2VudGl0eWlkbm90Zm91bmQnXSA9ICdFbnRpdHkgaWQgaXMgbmlldCBpbmdldm9lcmQnOwokbGFuZ1snZW50aXR5aWRkZWxldGVmYWlsZWQnXSA9ICdWZXJ3aWpkZXJlbiB2YW4gZW50aXR5aWQ9JWQgbWlzbHVrdCc7CiRsYW5nWydlbnRpdHlpZGRlbGV0ZWQnXSA9ICdFbnRpdHkgdmVyd2lqZGVyZCc7CiRsYW5nWydkZWxldGVwcm9wJ10gPSAnVmVyd2lqZGVyIGRlemUgZWlnZW5zY2hhcCc7CiRsYW5nWydjb25maXJtZGVsZXRlcHJvcCddID0gJ1ZlcndpamRlciBhbGxlIGVpZ2Vuc2NoYXBwZW4gZ2VuYWFtZCAlcyBpbiB0YWJlbCAlcyBlbiBtb2R1bGUgJXM/JzsKJGxhbmdbJ3Byb3BlcnR5ZGVsZXRlZmFpbGVkJ10gPSAnVmVyd2lqZGVyZW4gdmFuIGVpZ2Vuc2NoYXA9JWQgbWlzbHVrdCc7CiRsYW5nWydwcm9wZXJ0eWRlbGV0ZWQnXSA9ICdFaWdlbnNjaGFwIHZlcndpamRlcmQnOwokbGFuZ1snZGVsZXRldGFibGUnXSA9ICdWZXJ3aWpkZXIgZGV6ZSB0YWJlbCc7CiRsYW5nWydjb25maXJtZGVsZXRldGFibGUnXSA9ICdWZXJ3aWpkZXIgdGFiZWwgJXMgaW4gbW9kdWxlICVzPyc7CiRsYW5nWyd0YWJsZWRlbGV0ZWZhaWxlZCddID0gJ1ZlcndpamRlcmVuIHZhbiB0YWJlbCAlcyBtaXNsdWt0JzsKJGxhbmdbJ3RhYmxlZGVsZXRlZCddID0gJ1RhYmVsIHZlcndpamRlcmQnOwokbGFuZ1sndXRtYSddID0gJzE1Njg2MTM1My4xNDkzNTkzNDM4LjEyNjg2NjA5MjYuMTI3MDUzNTc0Ny4xMjcwNTM3MDA1LjYzJzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI2ODY2MDkyOS4xLjEudXRtY3NyPShkaXJlY3QpfHV0bWNjbj0oZGlyZWN0KXx1dG1jbWQ9KG5vbmUpJzsKJGxhbmdbJ3FjYSddID0gJ1AwLTE0OTUwMzQ1MDgtMTI2ODY2MDkyODczMic7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzLjEuMTAuMTI3MDUzNzAwNSc7CiRsYW5nWyd1dG1jJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/ro_RO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ05lbyBTdG9jYXJlIERhdGUnOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTmVvIFN0b2NhcmUgRGF0ZSBhIGZvc3QgaW5zdGFsYXQgY3Ugc3VjY2VzJzsKJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTmVvIFN0b2NhcmUgRGF0ZSBhIGZvc3QgZGV6aW5zdGFsYXQnOwokbGFuZ1snbm9kYXRhJ10gPSAnRmFyYSBkYXRlJzsKJGxhbmdbJ2lkZmlsdGVyJ10gPSAnSUQtdWwgZW50aXRhdGlpIGVzdGUnOwokbGFuZ1snbW9kdWxlZmlsdGVyJ10gPSAnTW9kdWx1bCBlc3RlJzsKJGxhbmdbJ3RhYmxlZmlsdGVyJ10gPSAnTnVtZSB0YWJlbCBjb250aW5lJzsKJGxhbmdbJ3Byb3BmaWx0ZXInXSA9ICdOdW1lIHByb3ByaWV0YXRlIGNvbnRpbmUnOwokbGFuZ1sndmFsdWVmaWx0ZXInXSA9ICdWYWxvYXJlYSBjb250aW5lJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnQXBsaWNhcmUgZmlsdHJ1JzsKJGxhbmdbJ3Jlc2V0ZmlsdGVyJ10gPSAnUmVzZXRhcmUgZmlsdHJ1JzsKJGxhbmdbJ3Nob3dmaWx0ZXJzJ10gPSAnQWZpc2FyZSBmaWx0cmUnOwokbGFuZ1snZmlsdGVycyddID0gJ0ZpbHRyZSc7CiRsYW5nWydyb3dzZm91bmQnXSA9ICdyYW5kdXJpIGdhc2l0ZSc7CiRsYW5nWyd0b29tYW55cm93cyddID0gJ1ByZWEgbXVsdGUgcmFuZHVyaSBnYXNpdGUsIG1pY3NvcmF0aSBudW1hcnVsIGZvbG9zaW5kIGZpbHRyZWxlJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTUyNjAzNzM1MC4xMjUxOTU5MzQzLjEyNTE5ODExOTIuMTI1MTk4NTY4OC41JzsKJGxhbmdbJ3V0bWMnXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRteiddID0gJzE1Njg2MTM1My4xMjUxOTU5MzQzLjEuMS51dG1jc3I9Z29vZ2xlfHV0bWNjbj0ob3JnYW5pYyl8dXRtY21kPW9yZ2FuaWN8dXRtY3RyPWNtc21hZGVzaW1wbGUnOwokbGFuZ1sncWNhJ10gPSAnUDAtOTAxNjUzNDczLTEyNTE5NTkzNDI3MjknOwokbGFuZ1sndXRtYiddID0gJzE1Njg2MTM1Myc7Cj8+]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKICAkZGI9JHRoaXMtPkdldERiKCk7CiAgJGZsZHMgPSAiCgkJCWVudGl0eWlkIEkgS0VZLAoJCQllbnRpdHltb2R1bGUgQyg4MCksCiAgICAgIGVudGl0eXRhYmxlIEMoNDApLAogICAgICBlbnRpdHlleHRyYWtleSBDKDgwKQoJIjsKCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCSR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7Cgkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2UiLCRmbGRzLCAkdGFib3B0YXJyYXkpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoJJGRiLT5DcmVhdGVTZXF1ZW5jZShjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9zZXEiKTsKCiAgJGZsZHMgPSAiCgkJCWVudGl0eWlkIEksCgkJCXByb3BuYW1lIEMoODApLAogICAgICBwcm9wdHlwZSBDKDQwKSwKCQkJcHJvcHZhbHVlIFgKCSI7CgkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7CgkkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwoJJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3Byb3BzIiwkZmxkcywgJHRhYm9wdGFycmF5KTsKCSRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKCiAgJGZsZHMgPSAiCgkJCWVudGl0eWlkMSBJLAoJCQllbnRpdHlpZDIgSSwKICAgICAgdHlwZSBDKDQwKQoJIjsKCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCSR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7Cgkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfY29ubmVjdGlvbnMiLCRmbGRzLCAkdGFib3B0YXJyYXkpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKICAkdGhpcy0+Q3JlYXRlUGVybWlzc2lvbignYWNjZXNzbmVvZGF0YXN0b3JhZ2UnLCdBY2Nlc3MgdG8gdGhlIE5lb0RhdGFTdG9yYWdlLXBhZ2UnKTsKICAKICAkdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwgJHRoaXMtPkxhbmcoJ2luc3RhbGxlZCcsJHRoaXMtPkdldFZlcnNpb24oKSkpOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoKTsKCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2UiICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKJGRiLT5Ecm9wU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3NlcSIgKTsKCiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3Byb3BzIiApOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7Cgokc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9jb25uZWN0aW9ucyIgKTsKJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwokdGhpcy0+UmVtb3ZlUGVybWlzc2lvbignYWNjZXNzbmVvZGF0YXN0b3JhZ2UnKTsKJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksICR0aGlzLT5MYW5nKCd1bmluc3RhbGxlZCcpKTsKPz4=]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCj8+]]></data>
	</file>
	<file>
	  <filename>/NeoDataStorage.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCi8qDQogIyBOZW9EYXRhU3RvcmFnZS4gQW4gZ2VuZXJhbCBwdXJwb3NlIGRhdGFzdG9yYWdlIG1vZHVsZWNsYXNzIGZvciBDTVMgTWFkZSBTaW1wbGUNCiAjIChjKTIwMTAgYnkgTW9ydGVuIFBvdWxzZW4gKG1vcnRlbkBwb3Vsc2VuLm9yZykNCiAjDQogI0NNUyAtIENNUyBNYWRlIFNpbXBsZQ0KICMoYykyMDA0LTEwIGJ5IFRlZCBLdWxwICh3aXNoeUB1c2Vycy5zZi5uZXQpDQogI1RoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogIw0KICNUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KICNpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KICN0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KICMoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KICMNCiAjVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQogI2J1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQogI01FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCiAjR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiAjWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiAjYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCiAjRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgIDAyMTExLTEzMDcgIFVTQQ0KICMNCiAjJElkJA0KICMNCiovDQppZiAoIWZ1bmN0aW9uX2V4aXN0cygiaXNfYXNzb2MiKSkgew0KICBmdW5jdGlvbiBpc19hc3NvYygkYXJyYXkpIHsNCiAgICByZXR1cm4gKGlzX2FycmF5KCRhcnJheSkgJiYgMCAhPT0gY291bnQoYXJyYXlfZGlmZl9rZXkoJGFycmF5LCBhcnJheV9rZXlzKGFycmF5X2tleXMoJGFycmF5KSkpKSk7DQogIH0NCn0NCg0KY2xhc3MgTmVvRGF0YVN0b3JhZ2UgZXh0ZW5kcyBDTVNNb2R1bGUgew0KICB2YXIgJF9zb3J0ZmllbGRzOw0KICB2YXIgJF9maWVsZHNldHM9YXJyYXkoKTsNCiAgdmFyICRfZXJyb3JzPSIiOw0KDQogIGZ1bmN0aW9uIEdldE5hbWUoKSB7DQogICAgcmV0dXJuICdOZW9EYXRhU3RvcmFnZSc7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRGcmllbmRseU5hbWUoKSB7DQogICAgcmV0dXJuICR0aGlzLT5MYW5nKCJmcmllbmRseW5hbWUiKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEhhc0FkbWluKCkgew0KICAgIHJldHVybiB0cnVlOw0KICB9DQoNCiAgZnVuY3Rpb24gR2V0VmVyc2lvbigpIHsNCiAgICByZXR1cm4gJzAuMy4xJzsNCiAgfQ0KDQogIGZ1bmN0aW9uIEhhc0NhcGFiaWxpdHkoJGNhcGFiaWxpdHksICRwYXJhbXM9YXJyYXkoKSkgew0KICAgIGlmICgkY2FwYWJpbGl0eT09ImRhdGFzdG9yYWdlIikgcmV0dXJuIHRydWU7DQogICAgcmV0dXJuIGZhbHNlOw0KICB9DQoNCiAgZnVuY3Rpb24gR2V0SGVscCgpIHsNCiAgICByZXR1cm4gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnaGVscC50cGwnKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldEF1dGhvcigpIHsNCiAgICByZXR1cm4gJ01vcnRlbiBwb3Vsc2VuJzsNCiAgfQ0KDQoNCiAgZnVuY3Rpb24gR2V0QXV0aG9yRW1haWwoKSB7DQogICAgcmV0dXJuICdtb3J0ZW5AcG91bHNlbi5vcmcnOw0KICB9DQoNCg0KICBmdW5jdGlvbiBHZXRDaGFuZ2VMb2coKSB7DQogICAgcmV0dXJuICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2NoYW5nZWxvZy50cGwnKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIFZpc2libGVUb0FkbWluVXNlcigpIHsNCiAgICByZXR1cm4gJHRoaXMtPkNoZWNrUGVybWlzc2lvbignYWNjZXNzbmVvZGF0YXN0b3JhZ2UnKTsNCiAgfQ0KDQogIC8qDQogICAqDQogICAqIEFQSS1mdW5jdGlvbnMNCiAgICoNCiAgKi8NCg0KICBmdW5jdGlvbiBBZGRFbnRpdHkoJG1vZHVsZSwgJHRhYmxlLCAkcHJvcHM9YXJyYXkoKSkgew0KICAgICRkYj0kdGhpcy0+R2V0RGIoKTsNCiAgICAkbmV3aWQ9JGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9zZXEiKTsNCg0KICAgICRzcWw9IklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2UgKGVudGl0eWlkLGVudGl0eW1vZHVsZSxlbnRpdHl0YWJsZSkgVkFMVUVTICg/LD8sPykiOw0KICAgICR2YWx1ZXM9YXJyYXkoJG5ld2lkLCRtb2R1bGUsJHRhYmxlKTsNCiAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIGlmICghJHJlc3VsdCkgcmV0dXJuICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gQWRkRW50aXR5OiBlcnJvciBhZGRpbmcgZW50aXR5IixmYWxzZSxhcnJheSgkcHJvcHMpKTsNCg0KICAgIGlmICghZW1wdHkoJHByb3BzKSkgew0KICAgICAgLy9lY2hvICJoZXJlIjsNCiAgICAgICR0aGlzLT5TZXRFbnRpdHlQcm9wcygkbmV3aWQsICRwcm9wcywgZmFsc2UpOw0KICAgIH0NCg0KICAgIHJldHVybiAkbmV3aWQ7DQogIH0NCg0KICBmdW5jdGlvbiBEZWxldGVFbnRpdHkoJGlkKSB7DQogICAgJHRoaXMtPkNsZWFyRW50aXR5UHJvcHMoJGlkKTsNCiAgICAkdGhpcy0+Q2xlYXJFbnRpdHlDb25uZWN0aW9ucygkaWQpOw0KICAgICRkYj0kdGhpcy0+R2V0RGIoKTsNCg0KICAgICRzcWw9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2UgV0hFUkUgZW50aXR5aWQ9PyI7DQogICAgJHZhbHVlcz1hcnJheSgkaWQpOw0KICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkcmVzdWx0KSAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIERlbGV0ZUVudGl0eTogZXJyb3IgZGVsZXRpbmcgZW50aXR5IixmYWxzZSxhcnJheSgiaWQiPT4kaWQpKTsNCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KDQogIGZ1bmN0aW9uIERlbGV0ZUVudGl0aWVzKCRtb2R1bGUsICR0YWJsYSwgJGNyaXRlcmlhID0gYXJyYXkoKSkgew0KICAgICRlbnRpdGllcz0kdGhpcy0+R2V0RW50aXRpZXMoJG1vZHVsZSwgJHRhYmxlLCAkY3JpdGVyaWEpOw0KDQogICAgaWYgKCRlbnRpdGllcykgew0KICAgICAgZm9yZWFjaCAoJGVudGl0aWVzIGFzICRlbnRpdHkpIHsNCiAgICAgICAgJHRoaXMtPkRlbGV0ZUVudGl0eSgkZW50aXR5WyJpZCJdKTsNCiAgICAgIH0NCiAgICB9IGVsc2Ugew0KICAgICAgJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBEZWxldGVFbnRpdGllczogbm8gZW50aXRpZXMgbWF0Y2hlZCBjcml0ZXJpYSIsZmFsc2UsJGNyaXRlcmlhKTsNCiAgICB9DQogICAgDQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KDQogIGZ1bmN0aW9uIEdldEVudGl0eVdpdGhUeXBlKCRpZCwgJG92ZXJyaWRlcHJvcHM9YXJyYXkoKSkgew0KICAgIHJldHVybiAkdGhpcy0+R2V0RW50aXR5KCRpZCwgJG92ZXJyaWRlcHJvcHMsIHRydWUpOw0KICB9DQoNCiAgZnVuY3Rpb24gR2V0RW50aXR5KCRpZCwgJG92ZXJyaWRlcHJvcHM9YXJyYXkoKSwgJGZpbGxmaWVsZHM9YXJyYXkoKSwgJHdpdGh0eXBlPWZhbHNlKSB7DQogICAgJGRiPSR0aGlzLT5HZXREYigpOw0KDQogICAgJHNxbD0iU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3Byb3BzIFdIRVJFIGVudGl0eWlkPT8iOw0KICAgICR2YWx1ZXM9YXJyYXkoJGlkKTsNCiAgICAkZGJyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkZGJyZXN1bHQgfHwgKCRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKT09MCkpIHsNCiAgICAgIGlmICghJGRicmVzdWx0KSAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIEdldEVudGl0eTogZXJyb3IgZ2V0dGluZyBlbnRpdHkiLGZhbHNlLGFycmF5KCJpZCI9PiRpZCkpOw0KICAgICAgcmV0dXJuIGZhbHNlOw0KICAgIH0NCiAgICAkcmVzdWx0PWFycmF5KCk7DQogICAgd2hpbGUoJHJvdz0kZGJyZXN1bHQtPkZldGNoUm93KCkpIHsNCiAgICAgIC8vcHJpbnRfcigkcm93KTsNCiAgICAgIGlmICgkd2l0aHR5cGUpIHsNCiAgICAgICAgJHJlc3VsdFskcm93WyJwcm9wbmFtZSJdXT1hcnJheSgidmFsdWUiPT4kcm93WyJwcm9wdmFsdWUiXSwidHlwZSI9PiRyb3dbInByb3B0eXBlIl0pOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgJHJlc3VsdFskcm93WyJwcm9wbmFtZSJdXT0kcm93WyJwcm9wdmFsdWUiXTsNCiAgICAgIH0NCiAgICAgIGlmIChpc3NldCgkb3ZlcnJpZGVwcm9wc1skcm93WyJwcm9wbmFtZSJdXSkpIHsNCiAgICAgICAgaWYgKCR3aXRodHlwZSkgew0KICAgICAgICAgIC8vTm93IHRoaXMgaXMganVzdCBiZWF0aWZ1bA0KICAgICAgICAgICRyZXN1bHRbJHJvd1sicHJvcG5hbWUiXV09JG92ZXJyaWRlcHJvcHNbJHJvd1sicHJvcG5hbWUiXV07DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgJHJlc3VsdFskcm93WyJwcm9wbmFtZSJdXT1hcnJheSgidmFsdWUiPT4kb3ZlcnJpZGVwcm9wc1skcm93WyJwcm9wbmFtZSJdXSwidHlwZSI9PiJ1bmtub3duIik7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9DQogICAgJHJlc3VsdFsiaWQiXT0kaWQ7DQogICAgJHJlc3VsdFsiZW50aXR5aWQiXT0kaWQ7DQogICAgLy9pZiAoJGlkPT00KSBwcmludF9yKCRyZXN1bHQpOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gR2V0RW50aXRpZXMoJG1vZHVsZSwgJHRhYmxlPSIiLCAkY3JpdGVyaWE9YXJyYXkoKSkgew0KICAgICRkYj0kdGhpcy0+R2V0RGIoKTsNCiAgICAvL2VjaG8gJG1vZHVsZTsgZWNobyAkdGFibGU7ZGllKCk7DQogICAgJHNxbD0iU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlIFdIRVJFIGVudGl0eW1vZHVsZT0/IjsNCiAgICAkdmFsdWVzPWFycmF5KCRtb2R1bGUpOw0KICAgIGlmICgkdGFibGUhPSIiKSB7DQogICAgICAkc3FsLj0iIEFORCBlbnRpdHl0YWJsZT0/IjsNCiAgICAgICR2YWx1ZXM9YXJyYXkoJG1vZHVsZSwkdGFibGUpOw0KICAgIH0NCiAgICAkZGJyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkZGJyZXN1bHQgfHwgKCRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKT09MCkpIHsNCiAgICAgIHJldHVybiBmYWxzZTsNCiAgICB9DQogICAgJHJlc3VsdD1hcnJheSgpOw0KICAgIHdoaWxlKCRyb3c9JGRicmVzdWx0LT5GZXRjaFJvdygpKSB7DQogICAgICAvL2lmICgkdGFibGU9PSJmYWciKSB7cHJpbnRfcigkY3JpdGVyaWEpO2RpZSgpO30NCiAgICAgIA0KICAgICAgaWYgKCFlbXB0eSgkY3JpdGVyaWEpKSB7DQogICAgICAgICRlbnRpdHk9JHRoaXMtPkdldEVudGl0eSgkcm93WyJlbnRpdHlpZCJdKTsNCiAgICAgICAgLy9lY2hvICRyb3dbImVudGl0eWlkIl07DQogICAgICAgIC8vZWNobyAiaGVyOiI7DQogICAgICAgIC8vcHJpbnRfcigkZW50aXR5KTsNCiAgICAgICAgJGZhaWxlZD1mYWxzZTsNCiAgICAgICAgZm9yZWFjaCgkY3JpdGVyaWEgYXMgJGNwcm9wPT4kY3ZhbHVlKSB7DQogICAgICAgICAgLy9lY2hvICRjcHJvcDsNCiAgICAgICAgICBpZiAoIWlzc2V0KCRlbnRpdHlbJGNwcm9wXSkpIHsgICAgICAgICAgICANCiAgICAgICAgICAgICRmYWlsZWQ9dHJ1ZTsNCiAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgIH0NCiAgICAgICAgICBpZiAoJGVudGl0eVskY3Byb3BdIT0kY3ZhbHVlKSB7ICAgICAgICAgICAgDQogICAgICAgICAgICAkZmFpbGVkPXRydWU7DQogICAgICAgICAgICBicmVhazsNCiAgICAgICAgICB9DQogICAgICAgIH0gICAgICAgIA0KICAgICAgICBpZiAoJGZhaWxlZCkgY29udGludWU7IC8vQ3JpdGVyaWEgZmFpbGVkDQogICAgICB9DQogICAgICAkcm93WyJpZCJdPSRyb3dbImVudGl0eWlkIl07DQogICAgICAkcmVzdWx0W109JHJvdzsNCiAgICB9DQogICAgLy9pZiAoJHRhYmxlPT0iZmFnIikge3ByaW50X3IoJHJlc3VsdCk7ZGllKCk7fQ0KICAgIGlmIChjb3VudCgkcmVzdWx0KT09MCkgcmV0dXJuIGZhbHNlOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gR2V0T25lRW50aXR5KCRtb2R1bGUsICR0YWJsZSwgJGNyaXRlcmlhPWFycmF5KCksICRmYWlsaWZtdWx0aXBsZT1mYWxzZSkgew0KICAgIC8vZWNobyAkbW9kdWxlO2VjaG8gJHRhYmxlOw0KICAgIC8vcHJpbnRfcigkY3JpdGVyaWEpO2RpZSgpOy8vDQogICAgJGVudGl0aWVzPSR0aGlzLT5HZXRFbnRpdGllc0Z1bGwoJG1vZHVsZSwgJHRhYmxlLCAkY3JpdGVyaWEpOw0KLy9pZiAoJHRhYmxlPT0iZmFnIikge3ByaW50X3IoJGVudGl0aWVzKTtkaWUoKTt9DQogICAgLy9pZiAoISRlbnRpdGllcykgZWNobyAiZmFsc2UiOw0KICAgIGlmICghJGVudGl0aWVzKSByZXR1cm4gZmFsc2U7DQoNCiAgICBpZiAoY291bnQoJGVudGl0aWVzKT4xICYmICRmYWlsaWZtdWx0aXBsZSkgcmV0dXJuIGZhbHNlOw0KDQogICAgZm9yZWFjaCAoJGVudGl0aWVzIGFzICRlbnRpdHkpIHsNCiAgICAgIHJldHVybiAkZW50aXR5OyAvL0htbSwgdGhpcyBpcyB1Z2x5IHJpZ2h0PyBidXQgd29ya3MgOikNCiAgICB9DQoNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldEVudGl0aWVzRnVsbCgkbW9kdWxlLCAkdGFibGU9IiIsICRjcml0ZXJpYT1hcnJheSgpKSB7DQogICAgJHNpbXBsZWVudGl0aWVzPSR0aGlzLT5HZXRFbnRpdGllcygkbW9kdWxlLCAkdGFibGUsICRjcml0ZXJpYSk7DQogICAgLy9pZiAoJHRhYmxlPT0iZmFnIikge3ByaW50X3IoJHNpbXBsZWVudGl0aWVzKTtkaWUoKTt9DQogICAgLy9wcmludF9yKCRzaW1wbGVlbnRpdGllcyk7ZGllKCk7DQogICAgLy9wcmludF9yKCRzaW1wbGVlbnRpdGllcyk7DQogICAgaWYgKCEkc2ltcGxlZW50aXRpZXMgfHwgZW1wdHkoJHNpbXBsZWVudGl0aWVzKSkgcmV0dXJuIGZhbHNlOw0KDQogICAgJGZ1bGxlbnRpdGllcz1hcnJheSgpOw0KICAgIGZvcmVhY2ggKCRzaW1wbGVlbnRpdGllcyBhcyAkc2ltcGxlZW50aXR5KSB7DQogICAgICAkZW50aXR5PSR0aGlzLT5HZXRFbnRpdHkoJHNpbXBsZWVudGl0eVsiZW50aXR5aWQiXSk7DQogICAgICBpZiAoJGVudGl0eSE9PWZhbHNlKSB7DQogICAgICAgIC8vcHJpbnRfcigkZW50aXR5KTtkaWUoKTsNCiAgICAgICAgJGVudGl0eVsiaWQiXT0kZW50aXR5WyJlbnRpdHlpZCJdOw0KICAgICAgICAkZnVsbGVudGl0aWVzW109JGVudGl0eTsNCiAgICAgIH0NCiAgICB9DQogICAgcmV0dXJuICRmdWxsZW50aXRpZXM7DQogIH0NCg0KICBmdW5jdGlvbiBFbnRpdGllc0NvdW50KCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpIHsNCiAgICAkZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzKCRtb2R1bGUsICR0YWJsZSwgJGNyaXRlcmlhKTsNCiAgICByZXR1cm4gY291bnQoJGVudGl0aWVzKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIFNldEVudGl0eVByb3AoJGlkLCRwcm9wbmFtZSwkcHJvcHZhbHVlLCRwcm9wdHlwZT0idW5kZWZpbmVkIikgew0KICAgIC8vICBlY2hvICRwcm9wbmFtZTsNCiAgICAvLyR0aGlzLT5DbGVhckVudGl0eVByb3AoJGlkLCRwcm9wbmFtZSk7DQogICAgJGRiPSR0aGlzLT5HZXREYigpOw0KICAgICRzcWw9IlVQREFURSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3Byb3BzIFNFVCBwcm9wdmFsdWU9Pyxwcm9wdHlwZT0/IFdIRVJFIGVudGl0eWlkPT8gQU5EIHByb3BuYW1lPT8iOw0KICAgICR2YWx1ZXM9YXJyYXkoJHByb3B2YWx1ZSwkcHJvcHR5cGUsJGlkLCRwcm9wbmFtZSk7DQogICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICBpZiAoISRyZXN1bHQgfHwgJGRiLT5BZmZlY3RlZF9Sb3dzKCk8MSkgew0KICAgICAgJHNxbD0iSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9wcm9wcyAoZW50aXR5aWQscHJvcG5hbWUscHJvcHZhbHVlLHByb3B0eXBlKSBWQUxVRVMgKD8sPyw/LD8pIjsNCiAgICAgICR2YWx1ZXM9YXJyYXkoJGlkLCRwcm9wbmFtZSwkcHJvcHZhbHVlLCRwcm9wdHlwZSk7DQogICAgfQ0KICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkcmVzdWx0KSByZXR1cm4gJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBTZXRFbnRpdHlQcm9wOiBlcnJvciBzZXR0aW5nIGVudGl0eS1wcm9wIixmYWxzZSxhcnJheSgiZW50aXR5aWQiPT4kaWQsInByb3B0eXBlIj0+JHByb3B0eXBlKSk7DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRFbnRpdHlQcm9wKCRpZCwkcHJvcG5hbWUsICRkZWZhdWx0PWZhbHNlKSB7DQogICAgJGVudGl0eT0kdGhpcy0+R2V0RW50aXR5KCRpZCk7DQogICAgaWYgKCEkZW50aXR5KSByZXR1cm4gZmFsc2U7DQogICAgaWYgKGlzc2V0KCRlbnRpdHlbInByb3BuYW1lIl0pKSByZXR1cm4gJGVudGl0eVsicHJvcG5hbWUiXTsNCiAgICByZXR1cm4gZmFsc2U7DQogIH0NCg0KICBmdW5jdGlvbiBDbGVhckVudGl0eSgkaWQpIHsNCiAgICAkdGhpcy0+Q2xlYXJFbnRpdHlDb25uZWN0aW9ucygkaWQsJGlkKTsNCiAgICAkdGhpcy0+Q2xlYXJFbnRpdHlQcm9wcygkaWQpOw0KICAgICRkYj0kdGhpcy0+R2V0RGIoKTsNCiAgICAkc3FsPSJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlIFdIRVJFIGVudGl0eWlkPT8iOw0KICAgICR2YWx1ZXM9YXJyYXkoJGlkKTsNCiAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIGlmICghJHJlc3VsdCkgcmV0dXJuICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gQ2xlYXJFbnRpdHk6IGVycm9yIGNsZWFyaW5nIGVudGl0eSIsZmFsc2UsYXJyYXkoImlkIj0+JGlkKSk7DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KICBmdW5jdGlvbiBDbGVhck1vZHVsZUVudGl0aWVzKCRtb2R1bGUpIHsNCg0KICAgICRlbnRpdGllcz0kdGhpcy0+R2V0RW50aXRpZXMoJG1vZHVsZSk7DQoNCiAgICBpZiAoISRlbnRpdGllcykgcmV0dXJuOw0KLy9kaWUoKTsNCiAgICBmb3JlYWNoICgkZW50aXRpZXMgYXMgJGVudGl0eSkgew0KICAgICAgJHRoaXMtPkNsZWFyRW50aXR5KCRlbnRpdHlbImVudGl0eWlkIl0pOw0KICAgIH0NCiAgfQ0KDQogIGZ1bmN0aW9uIENsZWFyRW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSkgew0KICAgICRkYj0kdGhpcy0+R2V0RGIoKTsNCiAgICAkc3FsPSJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3Byb3BzIFdIRVJFIGVudGl0eWlkPT8gQU5EIHByb3BuYW1lPT8iOw0KICAgICR2YWx1ZXM9YXJyYXkoJGlkLCRwcm9wbmFtZSk7DQogICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICBpZiAoISRyZXN1bHQpIHJldHVybiAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIENsZWFyRW50aXR5UHJvcDogZXJyb3IgY2xlYXJpbmcgZW50aXR5cHJvcCIsZmFsc2UsYXJyYXkoImlkIj0+JGlkLCJwcm9wbmFtZSI9PiRwcm9wbmFtZSkpOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gQ2xlYXJFbnRpdHlQcm9wcygkaWQpIHsNCiAgICAkZGI9JHRoaXMtPkdldERiKCk7DQogICAgJHNxbD0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9wcm9wcyBXSEVSRSBlbnRpdHlpZD0/IjsNCiAgICAkdmFsdWVzPWFycmF5KCRpZCk7DQogICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICBpZiAoISRyZXN1bHQpICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gQ2xlYXJFbnRpdHlQcm9wczogZXJyb3IgY2xlYXJpbmcgZW50aXR5cHJvcHMiLGZhbHNlLGFycmF5KCJpZCI9PiRpZCkpOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gU2V0RW50aXR5UHJvcHNGcm9tQXJyYXkoJGlkLCAkcHJvcHMsICR2YWx1ZXMsICRjbGVhcj10cnVlLCAkZmlsbD1mYWxzZSkgew0KICAgIGlmICghaXNfYXJyYXkoJHByb3BzKSB8fCAhaXNfYXJyYXkoJHZhbHVlcykpIHJldHVybiAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIFNldEVudGl0eVByb3BzRnJvbUFycmF5OiBcJHByb3BzIGFuZCBcJHZhbHVlcyBtdXN0IGJlIGFuIGFycmF5cyIpOw0KDQogICAgZm9yZWFjaCAoJHByb3BzIGFzICRwcm9wbmFtZSkgew0KICAgICAgaWYgKGlzc2V0KCR2YWx1ZXNbJHByb3BuYW1lXSkpIHsNCiAgICAgICAgJHZhbHVlPSR2YWx1ZXNbJHByb3BuYW1lXTsNCiAgICAgICAgLy9lY2hvICR2YWx1ZTsNCiAgICAgICAgaWYgKGlzX2FycmF5KCR2YWx1ZSkpIHsNCiAgICAgICAgICAkdGhpcy0+U2V0RW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSwgJHZhbHVlWyJ2YWx1ZSJdLCR2YWx1ZVsidHlwZSJdKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAvL2VjaG8gJHByb3BuYW1lLiI9PiIuJHZhbHVlOw0KICAgICAgICAgICR0aGlzLT5TZXRFbnRpdHlQcm9wKCRpZCwgJHByb3BuYW1lLCAkdmFsdWUpOw0KICAgICAgICB9DQogICAgICB9IGVsc2Ugew0KICAgICAgICBpZiAoJGNsZWFyKSAkdGhpcy0+Q2xlYXJFbnRpdHlQcm9wKCRpZCwgJHByb3BuYW1lKTsNCiAgICAgICAgaWYgKCRmaWxsKSAkdGhpcy0+U2V0RW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSwgIiIpOw0KICAgICAgfQ0KICAgIH0NCiAgICAvL2RpZSgpOw0KICAgIHJldHVybiAkaWQ7DQogIH0NCg0KDQogIGZ1bmN0aW9uIFNldEVudGl0eVByb3BzKCRpZCwgJHByb3BzLyosICRjbGVhcj10cnVlKi8pIHsNCiAgICAvL3ByaW50X3IoJHByb3BzKTsgIGVjaG8gImhpMiI7IGRpZSgpOw0KICAgIC8vcHJpbnRfcigkcHJvcHMpO2VjaG8iPGJyLz48YnIvPiI7DQogICAgLy9lY2hvICRpZDtkaWUoKQ0KICAgIGlmICghaXNfYXJyYXkoJHByb3BzKSB8fCAhaXNfYXNzb2MoJHByb3BzKSkgcmV0dXJuICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gU2V0RW50aXR5UHJvcHM6IFwkcHJvcHMgbXVzdCBiZSBhbiBhc3NvYyBhcnJheSIpOw0KICAgIGZvcmVhY2ggKCRwcm9wcyBhcyAkcHJvcG5hbWU9PiRwcm9wdmFsdWUpIHsNCiAgICAgIC8vaWYgKCRjbGVhcikgJHRoaXMtPkNsZWFyRW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSk7DQogICAgICBpZiAoaXNfYXJyYXkoJHByb3B2YWx1ZSkpIHsNCiAgICAgICAgLy8gIHByaW50X3IoJHByb3B2YWx1ZSk7ZGllKCk7DQogICAgICAgICR0aGlzLT5TZXRFbnRpdHlQcm9wKCRpZCwgJHByb3BuYW1lLCAkcHJvcHZhbHVlWyJ2YWx1ZSJdLCRwcm9wdmFsdWVbInR5cGUiXSk7DQogICAgICB9IGVsc2Ugew0KICAgICAgICAvL2VjaG8gJHByb3BuYW1lOw0KICAgICAgICAvL2VjaG8gImhpMiI7IGRpZSgpOw0KICAgICAgICAkdGhpcy0+U2V0RW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSwgJHByb3B2YWx1ZSk7DQogICAgICB9DQogICAgfQ0KDQogICAgcmV0dXJuICRpZDsNCg0KICB9DQoNCiAgLy9Eb2VzIG5vdCB3b3JrIQ0KICBmdW5jdGlvbiBTZXRFbnRpdHlQcm9wc09uQ3JpdGVyaWEoJG1vZHVsZSwkdGFibGUsICRwcm9wcywgJGNyaXRlcmlhLCAkY3JlYXRlPXRydWUsICRjbGVhcj1mYWxzZSkgew0KICAgIC8qcHJpbnRfcigkcHJvcHMpO2VjaG8iPGJyLz48YnIvPiI7DQogICAgcHJpbnRfcigkY3JpdGVyaWEpO2RpZSgpOyovDQogICAgJGVudGl0aWVzPSR0aGlzLT5HZXRFbnRpdGllcygkbW9kdWxlLCR0YWJsZSwgJGNyaXRlcmlhKTsNCiAgICBpZiAoISRlbnRpdGllcykgew0KICAgICAgaWYgKCRjcmVhdGUpIHsNCiAgICAgICAgcmV0dXJuICR0aGlzLT5BZGRFbnRpdHkoJG1vZHVsZSwgJHRhYmxlLCAkcHJvcHMpOw0KICAgICAgfQ0KICAgIH0gZWxzZSB7DQogICAgICAkY291bnQ9MDsNCiAgICAgIGZvcmVhY2goJGVudGl0aWVzIGFzICRlbnRpdHkpIHsNCiAgICAgICAgLypwcmludF9yKCRwcm9wcyk7ZWNobyI8YnIvPjxici8+IjsNCiAgICAgICAgcHJpbnRfcigkZW50aXR5KTtkaWUoKTsqLw0KICAgICAgICAkY291bnQrKzsNCiAgICAgICAgJHRoaXMtPlNldEVudGl0eVByb3BzKCRlbnRpdHlbImlkIl0sJHByb3BzLCRjbGVhcik7DQogICAgICB9DQogICAgfQ0KDQogICAgcmV0dXJuICRjb3VudDsNCiAgfQ0KDQogIGZ1bmN0aW9uIFJlc2V0RW50aXR5UHJvcHMoJGlkLCAkbmV3cHJvcHM9YXJyYXkoKSkgew0KICAgICR0aGlzLT5DbGVhckVudGl0eVByb3BzKCRpZCk7DQogICAgJHRoaXMtPlNldEVudGl0eVByb3BzKCRpZCwgJG5ld3Byb3BzLCBmYWxzZSk7DQogIH0NCg0KICBmdW5jdGlvbiBSZW1vdmVNb2R1bGVFbnRpdGllcygkbW9kdWxlbmFtZSkgew0KICAgICRlbnRpdGllcz0kdGhpcy0+R2V0RW50aXRpZXMoJG1vZHVsZW5hbWUpOw0KICAgIGZvcmVhY2ggKCRlbnRpdGllcyBhcyAkZW50aXR5KSB7DQogICAgICAkdGhpcy0+RGVsZXRlRW50aXR5KCRlbnRpdHlbImlkIl0pOw0KICAgIH0NCiAgfQ0KDQoNCg0KDQogIGZ1bmN0aW9uIF9Db21wYXJlRW50aXRpZXMoJGVudGl0eTEsICRlbnRpdHkyLCAkc29ydGZpZWxkKSB7DQogICAgJGRpcmVjdGlvbj0iYXNjIjsNCiAgICBpZiAoaXNfYXJyYXkoJHNvcnRmaWVsZCkpIHsNCiAgICAgIGZvcmVhY2goJHNvcnRmaWVsZCBhcyAkZmllbGRuYW1lPT4kZGlyKSB7DQogICAgICAgICRkaXJlY3Rpb249JGRpcjsNCiAgICAgICAgJHNvcnRmaWVsZD0kZmllbGRuYW1lOw0KICAgICAgICBicmVhazsNCiAgICAgIH0NCiAgICB9DQogICAgaWYgKCFpc3NldCgkZW50aXR5MVskc29ydGZpZWxkXSkpIHJldHVybiAwOw0KICAgIGlmICghaXNzZXQoJGVudGl0eTJbJHNvcnRmaWVsZF0pKSByZXR1cm4gMDsNCiAgICBpZiAoaXNfbnVtZXJpYygkZW50aXR5MVskc29ydGZpZWxkXSkgJiYgaXNfbnVtZXJpYygkZW50aXR5Mlskc29ydGZpZWxkXSkpIHsNCiAgICAgIGlmICgkZW50aXR5MVskc29ydGZpZWxkXT09JGVudGl0eTJbJHNvcnRmaWVsZF0pIHJldHVybiAwOw0KICAgICAgaWYgKCRlbnRpdHkxWyRzb3J0ZmllbGRdPCRlbnRpdHkyWyRzb3J0ZmllbGRdKSB7DQogICAgICAgIGlmICgkZGlyZWN0aW9uPT0iYXNjIikgew0KICAgICAgICAgIHJldHVybiAtMTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICByZXR1cm4gMTsNCiAgICAgICAgfQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgaWYgKCRkaXJlY3Rpb249PSJhc2MiKSB7DQogICAgICAgICAgcmV0dXJuIDE7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgcmV0dXJuIC0xOw0KICAgICAgICB9DQogICAgICB9DQoNCiAgICB9IGVsc2Ugew0KICAgICAgaWYgKCRkaXJlY3Rpb249PSJhc2MiKSB7DQogICAgICAgIHJldHVybiBzdHJjbXAoJGVudGl0eTJbJHNvcnRmaWVsZF0sJGVudGl0eTFbJHNvcnRmaWVsZF0pOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgcmV0dXJuIHN0cmNtcCgkZW50aXR5Mlskc29ydGZpZWxkXSwkZW50aXR5MVskc29ydGZpZWxkXSk7DQogICAgICB9DQoNCiAgICB9DQoNCiAgfQ0KDQogIC8vRG9lcyBub3Qgd29yaw0KICBmdW5jdGlvbiBfQ29tcGFyZUVudGl0aWVzQ29tcGxleCgkZW50aXR5MSwgJGVudGl0eTIsICRzb3J0ZmllbGRzKSB7DQogICAgaWYgKCFpc3NldCgkZW50aXR5MVskc29ydGZpZWxkXSkpIHJldHVybiAwOw0KICAgIGlmICghaXNzZXQoJGVudGl0eTJbJHNvcnRmaWVsZF0pKSByZXR1cm4gMDsNCiAgICBpZiAoaXNfbnVtZXJpYygkZW50aXR5MVskc29ydGZpZWxkXSkgJiYgaXNfbnVtZXJpYygkZW50aXR5Mlskc29ydGZpZWxkXSkpIHsNCiAgICAgIGlmICgkZW50aXR5MVskc29ydGZpZWxkXT09JGVudGl0eTJbJHNvcnRmaWVsZF0pIHJldHVybiAwOw0KICAgICAgaWYgKCRlbnRpdHkxWyRzb3J0ZmllbGRdPCRlbnRpdHkyWyRzb3J0ZmllbGRdKSByZXR1cm4gLTE7DQogICAgICByZXR1cm4gMTsNCiAgICB9IGVsc2Ugew0KICAgICAgcmV0dXJuIHN0cmNtcCgkZW50aXR5MVskc29ydGZpZWxkXSwkZW50aXR5Mlskc29ydGZpZWxkXSk7DQogICAgfQ0KICB9DQoNCiAgZnVuY3Rpb24gX0ludGVybmFsQ29tcGFyZUVudGl0aWVzKCRlbnRpdHkxLCAkZW50aXR5Mikgew0KICAgIGlmIChpc19hcnJheSgkdGhpcy0+X3NvcnRmaWVsZHMpKSB7DQogICAgICBpZiAoY291bnQoJHRoaXMtPl9zb3J0ZmllbGRzKT09MSkgew0KICAgICAgICBpZiAoaXNfYXNzb2MoJHRoaXMtPl9zb3J0ZmllbGRzKSkgew0KICAgICAgICAgIHJldHVybiAkdGhpcy0+X0NvbXBhcmVFbnRpdGllcygkZW50aXR5MSwgJGVudGl0eTIsICR0aGlzLT5fc29ydGZpZWxkcyk7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgcmV0dXJuICR0aGlzLT5fQ29tcGFyZUVudGl0aWVzKCRlbnRpdHkxLCAkZW50aXR5MiwgJHRoaXMtPl9zb3J0ZmllbGRzWzBdKTsNCiAgICAgICAgfQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgcmV0dXJuICR0aGlzLT5fQ29tcGFyZUVudGl0aWVzQ29tcGxleCgkZW50aXR5MSwgJGVudGl0eTIsICR0aGlzLT5fc29ydGZpZWxkcyk7DQogICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgIHJldHVybiAkdGhpcy0+X0NvbXBhcmVFbnRpdGllcygkZW50aXR5MSwgJGVudGl0eTIsICR0aGlzLT5fc29ydGZpZWxkcyk7DQogICAgfQ0KICB9DQoNCiAgZnVuY3Rpb24gU29ydEVudGl0aWVzKCRsaXN0LCAkc29ydGZpZWxkcykgew0KICAgICR0aGlzLT5fc29ydGZpZWxkcz0kc29ydGZpZWxkczsNCiAgICB1c29ydCgkbGlzdCwgYXJyYXkoJHRoaXMsIl9JbnRlcm5hbENvbXBhckVudGl0aWVzIikpOw0KICAgIHJldHVybiAkbGlzdDsNCiAgfQ0KDQogIGZ1bmN0aW9uIE1ha2VTaW1wbGVBcnJheSgkbW9kdWxlLCAkdGFibGUsJGZpZWxkLCRhc3NvY2lkPXRydWUpIHsNCiAgICAkZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzRnVsbCgkbW9kdWxlLCR0YWJsZSk7DQogICAgaWYgKCEkZW50aXRpZXMpIHJldHVybiBmYWxzZTsNCiAgICAkcmVzdWx0PWFycmF5KCk7DQoNCiAgICBmb3JlYWNoICgkZW50aXRpZXMgYXMgJGVudGl0eSkgew0KDQogICAgICBpZiAoIWlzc2V0KCRlbnRpdHlbJGZpZWxkXSkpIGNvbnRpbnVlOw0KICAgICAgaWYgKCRhc3NvY2lkKSB7DQogICAgICAgICRyZXN1bHRbJGVudGl0eVskZmllbGRdXT0kZW50aXR5WyJlbnRpdHlpZCJdOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgJHJlc3VsdFtdPSRlbnRpdHlbJGZpZWxkXTsNCiAgICAgIH0NCg0KICAgIH0NCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KDQoNCiAgZnVuY3Rpb24gTWFrZUFzc29jQXJyYXkoJG1vZHVsZSwgJHRhYmxlLCAkZmllbGRzKSB7DQogICAgJGVudGl0aWVzPSR0aGlzLT5HZXRFbnRpdGllc0Z1bGwoJG1vZHVsZSwkdGFibGUpOw0KICAgIGlmICghJGVudGl0aWVzKSByZXR1cm4gZmFsc2U7DQogICAgJHJlc3VsdD1hcnJheSgpOw0KDQogICAgZm9yZWFjaCAoJGVudGl0aWVzIGFzICRlbnRpdHkpIHsNCiAgICAgIGZvcmVhY2ggKCRmaWVsZHMgYXMgJGluZGV4PT4kdmFsdWUpIHsNCiAgICAgICAgaWYgKCFpc3NldCgkZW50aXR5WyRpbmRleF0pIHx8ICFpc3NldCgkZW50aXR5WyR2YWx1ZV0pKSBjb250aW51ZTsNCg0KICAgICAgICAkcmVzdWx0WyRlbnRpdHlbJGluZGV4XV09JGVudGl0eVskdmFsdWVdOw0KICAgICAgfQ0KICAgIH0NCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KDQogIC8qDQogICAqDQogICAqIEZpZWxkc2V0IGZ1bmN0aW9ucw0KICAgKg0KICAqLw0KICBmdW5jdGlvbiBBZGRGaWVsZFNldCgkbW9kdWxlLCRuYW1lLCRmaWVsZHMpIHsNCiAgICBpZiAoIWlzX2FycmF5KCRmaWVsZHMpKSByZXR1cm4gJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBBZGRGaWVsZFNldDogXCRmaWVsZHMgaXMgbm90IGFuIGFycmF5IiwgZmFsc2UsIGFycmF5KCJuYW1lIj0+JG5hbWUpKTsNCiAgICBpZiAoZW1wdHkoJGZpZWxkcykpIHJldHVybiAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIEFkZEZpZWxkU2V0OiBcJGZpZWxkcyBpcyBhbiBlbXB0eSBhcnJheSIsIGZhbHNlLCBhcnJheSgibmFtZSI9PiRuYW1lKSk7DQogICAgJHRoaXMtPl9maWVsZHNldHNbJG1vZHVsZS4iXyIuJG5hbWVdPSRmaWVsZHM7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRGaWVsZFNldCgkbW9kdWxlLCAkbmFtZSkgew0KICAgIGlmICghaXNzZXQoJHRoaXMtPl9maWVsZHNldHNbJG1vZHVsZS4iXyIuJG5hbWVdKSkgcmV0dXJuICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gR2V0RmllbGRTZXQ6IGZpZWxkc2V0IGlzIG5vdCBwcmVzZW50IiwgZmFsc2UsIGFycmF5KCJuYW1lIj0+JG5hbWUpKTsNCiAgICByZXR1cm4gJHRoaXMtPl9maWVsZHNldHNbJG1vZHVsZS4iXyIuJG5hbWVdOw0KICB9DQoNCiAgZnVuY3Rpb24gRW50aXR5U2V0VW5zZXRQcm9wcygkbW9kdWxlLCRlbnRpdHksJGZpZWxkc2V0LCRmaWxsdmFsdWU9IiIpIHsNCiAgICAkZmllbGRzPSR0aGlzLT5HZXRGaWVsZFNldCgkbW9kdWxlLCAkZmllbGRzZXQpOw0KICAgIGlmICghJGZpZWxkcykgcmV0dXJuICRlbnRpdHk7DQogICAgZm9yZWFjaCgkZmllbGRzIGFzICRmaWVsZCkgew0KICAgICAgaWYgKCFpc3NldCgkZW50aXR5WyIkZmllbGQiXSkpIHsNCiAgICAgICAgJGVudGl0eVsiJGZpZWxkIl09JGZpbGx2YWx1ZTsNCiAgICAgIH0NCiAgICB9DQogICAgcmV0dXJuICRlbnRpdHk7DQogIH0NCg0KICAvKg0KICAgKg0KICAgKiBDb25uZWN0aW9uIGZ1bmN0aW9ucw0KICAgKg0KICAqLw0KDQogIGZ1bmN0aW9uIFNldEVudGl0eUNvbm5lY3Rpb24oJGlkMSwgJGlkMiwgJHR5cGU9IiIpIHsNCiAgICBpZiAoJHRoaXMtPkNoZWNrRW50aXR5Q29ubmVjdGlvbigkaWQxLCRpZDIsJHR5cGUpKSByZXR1cm4gdHJ1ZTsNCiAgICAkZGI9JHRoaXMtPkdldERiKCk7DQogICAgJHNxbD0iSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9jb25uZWN0aW9ucyAoZW50aXR5aWQxLGVudGl0eWlkMix0eXBlKSBWQUxVRVMgKD8sPyw/KSI7DQogICAgJHZhbHVlcz1hcnJheSgkaWQxLCAkaWQyLCAkdHlwZSk7DQogICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICBpZiAoISRyZXN1bHQpICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gU2V0RW50aXR5Q29ubmVjdGlvbjogZXJyb3Igc2V0dGluZyBlbnRpdHkgY29ubmVjdGlvbiIsZmFsc2UsYXJyYXkoImlkMSI9PiRpZDEsImlkMiI9PiRpZDIpKTsNCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KDQogIGZ1bmN0aW9uIENsZWFyRW50aXR5Q29ubmVjdGlvbnMoJGlkMSwgJGlkMj0tMSwgJHR5cGU9IiIpIHsNCiAgICAkZGI9JHRoaXMtPkdldERiKCk7DQogICAgaWYgKCR0eXBlPT0iIikgew0KICAgICAgJHNxbD0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9jb25uZWN0aW9ucyBXSEVSRSBlbnRpdHlpZDE9PyBPUiBlbnRpdHlpZDI9PyI7DQogICAgICAkdmFsdWVzPWFycmF5KCRpZDEsICRpZDIpOw0KICAgICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICB9IGVsc2Ugew0KICAgICAgJHNxbD0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9jb25uZWN0aW9ucyBXSEVSRSAoZW50aXR5aWQxPT8gQU5EIHR5cGU9PykgT1IgKGVudGl0eWlkMj0/IEFORCB0eXBlPT8pIjsNCiAgICAgICR2YWx1ZXM9YXJyYXkoJGlkMSwgJHR5cGUsICRpZDIsICR0eXBlKTsNCiAgICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgfQ0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gQ2xlYXJFbnRpdHlDb25uZWN0aW9uKCRpZDEsICRpZDIsICR0eXBlPSIiKSB7DQogICAgJGRiPSR0aGlzLT5HZXREYigpOw0KICAgIGlmICgkdHlwZT09IiIpIHsNCiAgICAgICRzcWw9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfY29ubmVjdGlvbnMgV0hFUkUgZW50aXR5aWQxPT8gQU5EIGVudGl0eWlkMj0/IjsNCiAgICAgICR2YWx1ZXM9YXJyYXkoJGlkMSwkaWQyKTsNCiAgICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgfSBlbHNlIHsNCiAgICAgICRzcWw9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfY29ubmVjdGlvbnMgV0hFUkUgZW50aXR5aWQxPT8gQU5EIGVudGl0eWlkMj0/IEFORCB0eXBlPT8iOw0KICAgICAgJHZhbHVlcz1hcnJheSgkaWQxLCRpZDIsJHR5cGUpOw0KICAgICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICB9DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KICBmdW5jdGlvbiBDaGVja0VudGl0eUNvbm5lY3Rpb24oJGlkMSwkaWQyLCR0eXBlPSIiLCRyZXR1cm52YWx1ZT10cnVlKSB7DQogICAgJGRiPSR0aGlzLT5HZXREYigpOw0KICAgICRzcWw9IiI7DQogICAgJHZhbHVlcz0iIjsNCiAgICBpZiAoJHR5cGU9PSIiKSB7DQogICAgICAkc3FsPSJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfY29ubmVjdGlvbnMgV0hFUkUgZW50aXR5aWQxPT8gQU5EIGVudGl0eWlkMj0/IjsNCiAgICAgICR2YWx1ZXM9YXJyYXkoJGlkMSwkaWQyKTsNCiAgICB9IGVsc2Ugew0KICAgICAgJHNxbD0iU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX2Nvbm5lY3Rpb25zIFdIRVJFIGVudGl0eWlkMT0/IEFORCBlbnRpdHlpZDI9PyBBTkQgdHlwZT0/IjsNCiAgICAgICR2YWx1ZXM9YXJyYXkoJGlkMSwkaWQyLCR0eXBlKTsNCiAgICB9DQogICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICBpZiAoJHJlc3VsdCAmJiAoJHJlc3VsdC0+UmVjb3JkQ291bnQoKT4wKSkgew0KICAgICAgcmV0dXJuICRyZXR1cm52YWx1ZTsNCiAgICB9DQogICAgcmV0dXJuIGZhbHNlOw0KICB9DQoNCiAgZnVuY3Rpb24gR2V0RW50aXR5Q29ubmVjdGlvbnMoJGlkMT0tMSwgJGlkMj0tMSwgJGJvdGh3YXlzPXRydWUsICR0eXBlPSIiKSB7DQoNCiAgfQ0KDQogIC8qDQogICAqDQogICAqIEVycm9yIGhhbmRsaW5nDQogICAqDQogICovDQogIGZ1bmN0aW9uIEVycm9yKCRlcnJvcnRleHQsJHJldHVybnZhbHVlPWZhbHNlLCRwYXJhbXM9YXJyYXkoKSkgew0KICAgICR0aGlzLT5fZXJyb3JzLj0kZXJyb3J0ZXh0Ow0KICAgIGlmICghZW1wdHkoJHBhcmFtcykgJiYgaXNfYXJyYXkoJHBhcmFtcykpIHsNCiAgICAgICR0aGlzLT5fZXJyb3JzLj0iICgiOw0KICAgICAgJGZpcnN0PXRydWU7IC8vSGFuZGxpbmcgdGhlIGNvbW1hDQogICAgICBmb3JlYWNoICgkcGFyYW1zIGFzICRwYXJhbT0+JHZhbHVlKSB7DQogICAgICAgIGlmICgkZmlyc3QpICRmaXJzdD1mYWxzZTsgZWxzZSAkdGhpcy0+X2Vycm9ycy49IiwiOw0KICAgICAgICAkdGhpcy0+X2Vycm9ycy49JHBhcmFtLiI9PiIuJHZhbHVlLiIsIjsNCiAgICAgIH0NCiAgICAgICR0aGlzLT5fZXJyb3JzLj0iKSI7DQogICAgfQ0KICAgICR0aGlzLT5fZXJyb3JzLj0iXG4iOw0KICAgIHJldHVybiAkcmV0dXJudmFsdWU7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRFcnJvcnMoJG5sMmJyPXRydWUsJGNsZWFyPXRydWUpIHsNCiAgICAkZXJyb3JzPSR0aGlzLT5fZXJyb3JzOw0KICAgIGlmICgkbmwyYnIpIHsNCiAgICAgICRlcnJvcnM9bmwyYnIoJGVycm9ycyk7DQogICAgfQ0KICAgIGlmICgkY2xlYXIpIHsNCiAgICAgICR0aGlzLT5fZXJyb3JzPSIiOw0KICAgIH0NCiAgICByZXR1cm4gJGVycm9yczsNCiAgfQ0KDQogIGZ1bmN0aW9uIE91dHB1dEVycm9ycygkY2xlYXI9dHJ1ZSkgew0KICAgIGVjaG8gIlxuXG48ZGl2IHN0eWxlPSdib3JkZXI6M3B4IHNvbGlkIHJlZD5cbiI7DQogICAgZWNobyAkdGhpcy0+R2V0RXJyb3JzKHRydWUsJGNsZWFyKTsNCiAgICBlY2hvICJcbjwvZGl2PlxuXG4iOw0KICB9DQoNCiAgZnVuY3Rpb24gSW5FcnJvcigpIHsNCiAgICByZXR1cm4gKCR0aGlzLT5fZXJyb3JzIT0iIik7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRNb2R1bGVMaXN0KCkgew0KICAgICRkYj0kdGhpcy0+R2V0RGIoKTsNCiAgICAkc3FsPSJTRUxFQ1QgZW50aXR5bW9kdWxlIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZSI7DQogICAgJGRicmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsKTsNCiAgICBpZiAoISRkYnJlc3VsdCB8fCAoJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpPT0wKSkgew0KICAgICAgcmV0dXJuIGFycmF5KCk7DQogICAgfQ0KICAgICRyZXN1bHQ9YXJyYXkoIiI9PiIiKTsNCiAgICB3aGlsZSgkcm93PSRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgew0KICAgICAgaWYgKCFpbl9hcnJheSgkcm93WyJlbnRpdHltb2R1bGUiXSwkcmVzdWx0KSkgew0KICAgICAgICAkcmVzdWx0WyRyb3dbImVudGl0eW1vZHVsZSJdXT0kcm93WyJlbnRpdHltb2R1bGUiXTsNCiAgICAgIH0NCiAgICB9DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KfQ0KDQo/Pg0K]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/changelog.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPgo8bGk+MC4zLjEgLSBBZGRlZCBhIERlbGV0ZUVudGl0aWVzIG9uIGNyaXRlcmlhLW1ldGhvZDwvbGk+CjxsaT4wLjMuMCAtIFN0YXJ0ZWQgZG9pbmcgZGF0YSBtb2RpZmljYXRpb25zIG1ldGhvZHMsIGRlbGV0aW5nIGEgc3BlY2lmaWsgZW50aXR5aWQgZm9yIHN0YXJ0ZXJzPC9saT4KPGxpPjAuMi4zIC0gQWRkZWQgZmlsbCBwYXJhbWV0ZXIgdG8gU2V0RW50aXR5UHJvcHNGcm9tQXJyYXksIG1hZGUgaXMgcG9zc2libGUgZm9yIGZpZWxkcyBwYXJhbSB0byBzb3J0aW5nIGJlIGFuIGFzc29jIGFycmF5IHRvIHN1cHBvcnQgZGlyZWN0aW9ucyBpbiBzb3J0aW5nPC9saT4KPGxpPjAuMi4yIC0gQWRkZWQgYSBjdXN0b20gcmV0dXJudmFsdWUgdG8gY2hlY2tlbnRpdHljb25uZWN0aW9ucyxNYWtlU2ltcGxlQXJyYXk8L2xpPgo8bGk+MC4yLjEgLSBGaXhlZCBhIHR5cGUgaW4gR2V0RW50aXR5LWZ1bmN0aW9uPC9saT4KPGxpPjAuMi4wIC0gRml4ZWQgcmVzZXQgZmlsdGVyIGJ1dHRvbiwgbWFkZSBmaWx0ZXJpbmcgb24gbW9kdWxlIGJhc2VkIG9uIGEgZHJvcGRvd24sIGJ1Z2ZpeGVzPC9saT4KPGxpPjAuMS4wIC0gSW5pdGlhbCByZWxlYXNlPC9saT4KPC91bD4=]]></data>
	</file>
	<file>
	  <filename>/templates/help.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHN0cm9uZz5Ob3RpY2UhIFRoaXMgaXMgYSBtb2R1bGUtZGV2ZWxvcGVyLW9ubHkgbW9kdWxlLiBJZiB5b3UgYXJlIG5vdCBhIGRldmVsb3Blcgp5b3UnbGwgcHJvYmFibHkganVzdCB3YW50IHRvIHNraXAgdGhlIGdvcnkgZGV0YWlscyBvZiB0aGlzIHBhZ2UgYW5kIHJlbHkgb24gdGhhdAp0aGUgbW9kdWxlIGp1c3QgZG9lcyBpdCdzIHdvcmsuPC9zdHJvbmc+Cjxici8+PGJyLz4KPGgzPlB1cnBvc2Ugb2YgdGhlIG1vZHVsZTwvaDM+ClRoZSBwdXJwb3NlIG9mIHRoaXMgbW9kdWxlIGlzIHRvIHByb3ZpZGUgYSBuaWNlIGFuZCBjbGVhbiB3YXkgZm9yIG1vZHVsZXMKdG8gc3RvcmUgZGF0YSBpbiBhIHRhYmxlLWxpa2UgbWFubmVyIGJ1dCB3aXRob3V0IHRoZSBoYXp6bGUgb2YgY3JlYXRpbmcKc3BlY2lmaWMgdGFibGVzIGZvciBpdHNlbGYgYW5kIG1haW50YWluaW5nIHRoZXNlLgoKPGgzPkJ1dCBiZXdhcmUhPC9oMz4KSXQgc2hvdWxkIGJlIGVtcGhhc2l6ZWQKdGhhdCB0aGlzIG1vZHVsZSBpcyBub3QgaW50ZW5kZWQgZm9yIGV4dHJlbWVseSBkYXRhLWludGVuc2l2ZSBvcGVyYXRpb25zCmFzIGl0IHVzZXMgKGEgbG90KSBtb3JlIGRhdGFiYXNlLWNhbGxzIHRoYW4gY3VzdG9tLXdyaXR0ZW4gZGF0YSBhY2Nlc3MgZG9lcywKYnV0IGZvciBub24taW50ZW5zaXZlIHN0dWZmIGl0IHdpbGwgaG9wZWZ1bGx5IGN1dCBvZmYgc29tZSBvZiB0aGUgdGVkaW91cwoiaG91c2VrZWVwaW5nIiB3aGljaCBJIGdvdCByZWFsbHkgZmVkIHVwIHdpdGggaW4gYWxtb3N0IGV2ZXJ5IG1vZHVsZSBJJ3ZlIGRvbmUuCjxici8+ClNvLCB0aGF0J3MgaXQgZm9yIHRoZSBkaXNjbGFpbWVyLCBub3cgZm9yIHRoZSBBUEkgOi0pCjxici8+Cjxici8+CjxoMz5CYXNpYyB1c2Ugb2YgdGhlIG1vZHVsZTwvaDM+ClVzYWdlIG9mIHRoaXMgbW9kdWxlIGFsd2F5cyBzdGFydHMgb2ZmIHdpdGggZ2V0dGluZyBhbiBhY2Nlc3MgdG8gYW4gaW5zdGFuY2UKb2YgdGhlIG1vZHVsZS4gVGhlIG1vc3QgY29tbW9uIHdheSBvZiBkb2luZyB0aGlzIGlzIGNhbGxpbmcgc29tZXRoaW5nIGxpa2UKPHByZT4KCiRuZHM9JHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCJOZW9EYXRhU3RvcmFnZSIpOwoKPC9wcmU+CllvdSdsbCBwcm9iYWJseSB3YW50IHRvIG1ha2UgeW91ciBtb2R1bGUgZGVwZW5kYW50IG9mIHRoaXMgbW9kdWxlLCBidXQgeW91CnNob3VsZCBrbm93IGhvdyB0byBkbyB0aGlzLi4uCjxici8+CkFmdGVyIGFzc2lnbmluZyB0aGUgbW9kdWxlIHRvIGEgdmFyaWFibGUsIHlvdSBjYW4gc3RhcnQgdXNpbmcgaXQgd2l0aCBBUEktZnVuY3Rpb25zCmxpa2U6CjxwcmU+CgokbXlyZWNvcmQ9JG5kcy0+R2V0RW50aXRpZXMoIm15bW9kdWxlbmFtZSIsICJteXRhYmxlaWQiKTsKCjwvcHJlPgpXaGVyZSAibXltb2R1bGVuYW1lIiBpcyB0aGUgdW5pcXVlIGlkZW50aWZ5ZXIgb2YgeW91ciBtb2R1bGUsIGNvdWxkIGJlCnJlcGxhY2VkIHdpdGggJyR0aGlzLT5HZXROYW1lKCknLCBhbmQgIm15dGFibGVpZCIgaXMgYW4gaWRlbnRpZnllciBvZiB0aGUKdGFibGUgb2YgZGF0YSB3aGljaCB5b3Ugd2FudCB0byBhY2Nlc3MgaW4gdGhlIGRhdGFzdG9yYWdlIGZvciB5b3VyIG1vZHVsZS4KVGhpcyBjYW4gYmUgbGVmdCBibGFuayBpZiBvbmx5IG9uZSB0YWJsZSBpcyBuZWVkZWQgZm9yIHRoZSBtb2R1bGUuCjxici8+CkZvciBhIGNvbXBsZXRlIChyZWFkOiBzb210aW1lcyBjb21wbGV0ZSkgbGlzdCBvZiBtZXRob2RzIHNlZSBsaXN0IGJlbG93LgoKPGgzPlRoZSBOZW9Nb2R1bGUtc2lzdGVyPC9oMz4KQW5vdGhlciwgYW5kIGV2ZW4gZWFzaWVyLCB3YXkgdG8gdXNlIHRoZSBmdW5jdGlvbmFsaXR5IG9mIHRoaXMgbW9kdWxlCmlzIHRvIGxldCB5b3VyIG1vZHVsZSBkZXNjZW5kIGZyb20gYW5vdGhlciBwcm9qZWN0IG9mIG1pbmUsIHRoZSBOZW9Nb2R1bGUsCndoaWNoIHdyYXBzIGFsbCB0aGUgZnVuY3Rpb25zIG9mIE5lb0RhdGFTdG9yYWdlIGJ1dCByZW1vdmluZyB0aGUgbmVlZCBvZgpjb25zdGFudGx5IHN1cHBseWluZyB0aGUgJG1vZHVsZW5hbWUuIEl0IGFsc28gcHJvdmlkZXMgYSBzdGlsbC1ncm93aW5nIGxpc3Qgb2YKb3RoZXIgaGVscGVyLWZ1bmN0aW9ucyB3aGljaCBoYXMgdG8gZG8gd2l0aCBvdGhlciBzdHVmZiB0aGFuIERhdGFTdG9yYWdlLgo8YnIvPgpGb3IgZnVydGhlciBpbnN0cnVjdGlvbnMgb24gaG93IHRvIHVzZSB0aGUgTmVvTW9kdWxlLCBwbGVhc2UgaW5zdGFsbCBpdCBhbmQKY2hlY2sgb3V0IGl0J3MgaGVscC1wYWdlLgoKPGgzPkhvdyB0byBnZXQgaGVscDwvaDM+Ckkgd2lsbCByZXBlYXQsIHRoaXMgbW9kdWxlIGlzIGZvciBkZXZlbG9wZXJzIG9ubHkuIElmIHlvdSBjYW5ub3QgcmVhZCBwaHAtc291cmNlIGNvZGUsCnlvdSBzaG91bGQgdXNlIGl0IGZvciBkZXZlbG9wbWVudCBhbnl3YXkuIElmIHlvdSBjYW4sIGFsd2F5cyBjaGVjayBvdXQgdGhlIGNvZGUKZm9yIGhpbnRzIG9uIGhvdyB0byBtYWtlIGl0IHdvcmsuIElmIHlvdSBzdGlsbCBoYXZlIHF1ZXN0aW9ucyBvciBzdWdnZXN0aW9ucyBmb3IKZml4ZXMvaW1wcm92ZW1lbnRzLCBwbGVhc2UgZmVlbCBmcmVlIHRvIGNhdGNoIG1lIChTaWxtYXJpbGxpb24pIGluIHRoZSBmb3J1bSBvZyAjaXJjLgoKCjxoMz5MaXN0IG9mIG1ldGhvZHM8L2gzPgo8cHJlPgovKgogKgogKiBFbnRpdHkgZnVuY3Rpb25zCiAqCiAqLwpmdW5jdGlvbiBBZGRFbnRpdHkoJG1vZHVsZSwgJHRhYmxlLCAkcHJvcHM9YXJyYXkoKSkKZnVuY3Rpb24gRGVsZXRlRW50aXR5KCRpZCkKZnVuY3Rpb24gR2V0RW50aXR5V2l0aFR5cGUoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpKQpmdW5jdGlvbiBHZXRFbnRpdHkoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpLCAkd2l0aHR5cGU9ZmFsc2UpCmZ1bmN0aW9uIEdldEVudGl0aWVzKCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpCmZ1bmN0aW9uIEdldE9uZUVudGl0eSgkbW9kdWxlLCAkdGFibGUsICRjcml0ZXJpYT1hcnJheSgpLCAkZmFpbGlmbXVsdGlwbGU9ZmFsc2UpCmZ1bmN0aW9uIEdldEVudGl0aWVzRnVsbCgkbW9kdWxlLCAkdGFibGU9IiIsICRjcml0ZXJpYT1hcnJheSgpKQpmdW5jdGlvbiBFbnRpdGllc0NvdW50KCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpCmZ1bmN0aW9uIFNldEVudGl0eVByb3AoJGlkLCRwcm9wbmFtZSwkcHJvcHZhbHVlLCRwcm9wdHlwZT0idW5kZWZpbmVkIikKCmZ1bmN0aW9uIENsZWFyRW50aXR5KCRpZCkKZnVuY3Rpb24gQ2xlYXJNb2R1bGVFbnRpdGllcygkbW9kdWxlKQpmdW5jdGlvbiBDbGVhckVudGl0eVByb3AoJGlkLCAkcHJvcG5hbWUpCmZ1bmN0aW9uIENsZWFyRW50aXR5UHJvcHMoJGlkKQpmdW5jdGlvbiBTZXRFbnRpdHlQcm9wcygkaWQsICRwcm9wcywgJGNsZWFyPXRydWUpCmZ1bmN0aW9uIFNldEVudGl0eVByb3BzRnJvbUFycmF5KCRpZCwgJHByb3BzLCAkdmFsdWVzLCAkY2xlYXI9dHJ1ZSwgJGZpbGw9ZmFsc2UpCmZ1bmN0aW9uIFNldEVudGl0eVByb3BzT25Dcml0ZXJpYSgkbW9kdWxlLCR0YWJsZSwgJHByb3BzLCAkY3JpdGVyaWEsICRjcmVhdGU9dHJ1ZSwgJGNsZWFyPWZhbHNlKSAvL0RvZXMgbm90IHdvcmshCmZ1bmN0aW9uIFJlc2V0RW50aXR5UHJvcHMoJGlkLCAkbmV3cHJvcHM9YXJyYXkoKSkKZnVuY3Rpb24gUmVtb3ZlTW9kdWxlRW50aXRpZXMoJG1vZHVsZW5hbWUpCgovKgogKgogKiBTb3J0aW5nIGZ1bmN0aW9ucwogKgogKi8KZnVuY3Rpb24gQ29tcGFyZUVudGl0aWVzKCRlbnRpdHkxLCAkZW50aXR5MiwgJHNvcnRmaWVsZCkKZnVuY3Rpb24gQ29tcGFyZUVudGl0aWVzQ29tcGxleCgkZW50aXR5MSwgJGVudGl0eTIsICRzb3J0ZmllbGRzPWFycmF5KCkpIC8vRG9lcyBub3Qgd29yawpmdW5jdGlvbiBTb3J0RW50aXRpZXMoJGxpc3QsICRzb3J0ZmllbGRzPWFycmF5KCkgb3Igc3RyaW5nKSAvL09ubHkgd29ya3Mgb24gc3RyaW5ncwpmdW5jdGlvbiBNYWtlU2ltcGxlQXJyYXkoJG1vZHVsZSwgJHRhYmxlLCAkZmllbGQpCmZ1bmN0aW9uIE1ha2VBc3NvY0FycmF5KCRtb2R1bGUsICR0YWJsZSwgJGZpZWxkcykKCi8qCiAqCiAqIEZpZWxkc2V0IGZ1bmN0aW9ucwogKgogKi8KZnVuY3Rpb24gQWRkRmllbGRTZXQoJG1vZHVsZSwkbmFtZSwkZmllbGRzKQpmdW5jdGlvbiBHZXRGaWVsZFNldCgkbW9kdWxlLCAkbmFtZSkKZnVuY3Rpb24gRW50aXR5U2V0VW5zZXRQcm9wcygkbW9kdWxlLCRlbnRpdHksJGZpZWxkc2V0LCRmaWxsdmFsdWU9IiIpCgovKgogKgogKiBDb25uZWN0aW9uIGZ1bmN0aW9ucwogKgogKi8KZnVuY3Rpb24gU2V0RW50aXR5Q29ubmVjdGlvbigkaWQxLCAkaWQyLCAkdHlwZT0iIikKZnVuY3Rpb24gQ2xlYXJFbnRpdHlDb25uZWN0aW9ucygkaWQxLCAkaWQyPS0xLCAkdHlwZT0iIikKZnVuY3Rpb24gQ2xlYXJFbnRpdHlDb25uZWN0aW9uKCRpZDEsICRpZDIsICR0eXBlPSIiKQpmdW5jdGlvbiBDaGVja0VudGl0eUNvbm5lY3Rpb24oJGlkMSwkaWQyLCR0eXBlPSIiKQpmdW5jdGlvbiBHZXRFbnRpdHlDb25uZWN0aW9ucygkaWQxPS0xLCAkaWQyPS0xLCAkYm90aHdheXM9dHJ1ZSwgJHR5cGU9IiIpIC8vRG9lcyBub3Qgd29yawoKLyoKICoKICogRXJyb3IgaGFuZGxpbmcKICoKICovCmZ1bmN0aW9uIEVycm9yKCRlcnJvcnRleHQsJHJldHVybnZhbHVlPWZhbHNlLCRwYXJhbXM9YXJyYXkoKSkKZnVuY3Rpb24gR2V0RXJyb3JzKCRubDJicj10cnVlLCRjbGVhcj10cnVlKQpmdW5jdGlvbiBTaG93RXJyb3JzKCRjbGVhcj10cnVlKQpmdW5jdGlvbiBJbkVycm9yKCkgOiBib29sCjwvcHJlPg==]]></data>
	</file>
	<file>
	  <filename>/templates/showdata.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGlucHV0IGlkPSJmaWx0ZXJ0b2dnbGUiIHR5cGU9ImNoZWNrYm94IiB7aWYgJGZpbHRlcnN2aXNpYmxlPT0idHJ1ZSJ9Y2hlY2tlZD0iMSJ7L2lmfSBuYW1lPSJzaG93ZmlsdGVyb3B0aW9ucyIgb25DbGljaz0iaWYgKHRoaXMuY2hlY2tlZCkgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2ZpbHRlcicpLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snOyBlbHNlIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdmaWx0ZXInKS5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnOyAiPg0KPGxhYmVsIGZvcj0iZmlsdGVydG9nZ2xlIj57JG1vZC0+TGFuZygic2hvd2ZpbHRlcnMiKX08L2xhYmVsPg0KDQo8ZGl2IGlkPSJmaWx0ZXIiIHN0eWxlPSJkaXNwbGF5OiBub25lIi8+DQp7JGZvcm1zdGFydH0NCjxmaWVsZHNldD4NCjxsZWdlbmQ+eyRtb2QtPkxhbmcoImZpbHRlcnMiKX08L2xlZ2VuZD4NCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQogPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygiaWRmaWx0ZXIiKX08L3A+DQogPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpZGZpbHRlcmlucHV0fTwvcD4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCJtb2R1bGVmaWx0ZXIiKX08L3A+DQogPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRtb2R1bGVmaWx0ZXJpbnB1dH08L3A+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQogPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygidGFibGVmaWx0ZXIiKX08L3A+DQogPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyR0YWJsZWZpbHRlcmlucHV0fTwvcD4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCJwcm9wZmlsdGVyIil9PC9wPg0KIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskcHJvcGZpbHRlcmlucHV0fTwvcD4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCJ2YWx1ZWZpbHRlciIpfTwvcD4NCiA8cCBjbGFzcz0icGFnZWlucHV0Ij57JHZhbHVlZmlsdGVyaW5wdXR9PC9wPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPg0KIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskYXBwbHlmaWx0ZXJ9eyRyZXNldGZpbHRlcn08L3A+PGJyLz4NCjwvZGl2Pg0KeyRmb3JtZW5kfQ0KPC9maWVsZHNldD4NCjwvZGl2Pg0KDQp7aWYgJGl0ZW1jb3VudCA+IDB9DQo8YnIvPg0Ke2lmICR0b29tYW55cm93cyE9IiJ9DQo8c3Ryb25nPnskdG9vbWFueXJvd3N9PC9zdHJvbmc+DQo8YnIvPg0Key9pZn0NCg0KPHRhYmxlIGNlbGxzcGFjaW5nPSIwIiBjbGFzcz0icGFnZXRhYmxlIj4NCgk8dGhlYWQ+DQoJCTx0cj4NCiAgICAgIDx0aD5JZDwvdGg+DQoJCQk8dGg+TW9kdWxlPC90aD4NCgkJCTx0aD5UYWJsZTwvdGg+DQoJCQk8dGg+UHJvcG5hbWU8L3RoPg0KICAgICAgPHRoPlByb3B2YWx1ZTwvdGg+DQoJCTwvdHI+DQoJPC90aGVhZD4NCgk8dGJvZHk+DQp7Zm9yZWFjaCBmcm9tPSRpdGVtcyBpdGVtPWVudHJ5fQ0Ke2N5Y2xlIHZhbHVlcz0icm93MSxyb3cyIiBhc3NpZ249cm93Y2xhc3N9DQoJCTx0ciBjbGFzcz0ieyRyb3djbGFzc30iIG9ubW91c2VvdmVyPSJ0aGlzLmNsYXNzTmFtZT0neyRyb3djbGFzc31ob3Zlcic7IiBvbm1vdXNlb3V0PSJ0aGlzLmNsYXNzTmFtZT0neyRyb3djbGFzc30nOyI+CQkJDQoJCQk8dGQ+eyRlbnRyeS0+aWR9eyRlbnRyeS0+aWRkZWxldGVsaW5rfTwvdGQ+DQoJCQk8dGQ+eyRlbnRyeS0+bW9kdWxlfTwvdGQ+DQoJCQk8dGQ+eyRlbnRyeS0+dGFibGV9eyRlbnRyeS0+dGFibGVkZWxldGVsaW5rfTwvdGQ+DQogICAgICA8dGQ+eyRlbnRyeS0+cHJvcG5hbWV9eyRlbnRyeS0+cHJvcGRlbGV0ZWxpbmt9PC90ZD4NCiAgICAgIDx0ZD57JGVudHJ5LT5wcm9wdmFsdWV8dHJ1bmNhdGV9PC90ZD4JCQkNCgkJPC90cj4NCnsvZm9yZWFjaH0NCgk8L3Rib2R5Pg0KPC90YWJsZT4NCntlbHNlfQ0KPGg0PnskbW9kLT5MYW5nKCdub2RhdGEnKX08L2g0Pg0Key9pZn0NCg0K]]></data>
	</file>
</module>
