<?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.2</version>
  <mincmsversion>1.10-beta4</mincmsversion>
	<help><![CDATA[PHN0cm9uZz5Ob3RpY2UhIFRoaXMgaXMgYSBtb2R1bGUtZGV2ZWxvcGVyLW9ubHkgbW9kdWxlLiBJZiB5b3UgYXJlIG5vdCBhIGRldmVsb3Blcgp5b3UnbGwgcHJvYmFibHkganVzdCB3YW50IHRvIHNraXAgdGhlIGdvcnkgZGV0YWlscyBvZiB0aGlzIHBhZ2UgYW5kIHJlbHkgb24gdGhhdAp0aGUgbW9kdWxlIGp1c3QgZG9lcyBpdCdzIHdvcmsuPC9zdHJvbmc+Cjxici8+PGJyLz4KPGgzPlB1cnBvc2Ugb2YgdGhlIG1vZHVsZTwvaDM+ClRoZSBwdXJwb3NlIG9mIHRoaXMgbW9kdWxlIGlzIHRvIHByb3ZpZGUgYSBuaWNlIGFuZCBjbGVhbiB3YXkgZm9yIG1vZHVsZXMKdG8gc3RvcmUgZGF0YSBpbiBhIHRhYmxlLWxpa2UgbWFubmVyIGJ1dCB3aXRob3V0IHRoZSBoYXp6bGUgb2YgY3JlYXRpbmcKc3BlY2lmaWMgdGFibGVzIGZvciBpdHNlbGYgYW5kIG1haW50YWluaW5nIHRoZXNlLgoKPGgzPkJ1dCBiZXdhcmUhPC9oMz4KSXQgc2hvdWxkIGJlIGVtcGhhc2l6ZWQKdGhhdCB0aGlzIG1vZHVsZSBpcyBub3QgaW50ZW5kZWQgZm9yIGV4dHJlbWVseSBkYXRhLWludGVuc2l2ZSBvcGVyYXRpb25zCmFzIGl0IHVzZXMgKGEgbG90KSBtb3JlIGRhdGFiYXNlLWNhbGxzIHRoYW4gY3VzdG9tLXdyaXR0ZW4gZGF0YSBhY2Nlc3MgZG9lcywKYnV0IGZvciBub24taW50ZW5zaXZlIHN0dWZmIGl0IHdpbGwgaG9wZWZ1bGx5IGN1dCBvZmYgc29tZSBvZiB0aGUgdGVkaW91cwoiaG91c2VrZWVwaW5nIiB3aGljaCBJIGdvdCByZWFsbHkgZmVkIHVwIHdpdGggaW4gYWxtb3N0IGV2ZXJ5IG1vZHVsZSBJJ3ZlIGRvbmUuCjxici8+ClNvLCB0aGF0J3MgaXQgZm9yIHRoZSBkaXNjbGFpbWVyLCBub3cgZm9yIHRoZSBBUEkgOi0pCjxici8+Cjxici8+CjxoMz5CYXNpYyB1c2Ugb2YgdGhlIG1vZHVsZTwvaDM+ClVzYWdlIG9mIHRoaXMgbW9kdWxlIGFsd2F5cyBzdGFydHMgb2ZmIHdpdGggZ2V0dGluZyBhbiBhY2Nlc3MgdG8gYW4gaW5zdGFuY2UKb2YgdGhlIG1vZHVsZS4gVGhlIG1vc3QgY29tbW9uIHdheSBvZiBkb2luZyB0aGlzIGlzIGNhbGxpbmcgc29tZXRoaW5nIGxpa2UKPHByZT4KCiRuZHM9JHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCJOZW9EYXRhU3RvcmFnZSIpOwoKPC9wcmU+CllvdSdsbCBwcm9iYWJseSB3YW50IHRvIG1ha2UgeW91ciBtb2R1bGUgZGVwZW5kYW50IG9mIHRoaXMgbW9kdWxlLCBidXQgeW91CnNob3VsZCBrbm93IGhvdyB0byBkbyB0aGlzLi4uCjxici8+CkFmdGVyIGFzc2lnbmluZyB0aGUgbW9kdWxlIHRvIGEgdmFyaWFibGUsIHlvdSBjYW4gc3RhcnQgdXNpbmcgaXQgd2l0aCBBUEktZnVuY3Rpb25zCmxpa2U6CjxwcmU+CgokbXlyZWNvcmQ9JG5kcy0+R2V0RW50aXRpZXMoIm15bW9kdWxlbmFtZSIsICJteXRhYmxlaWQiKTsKCjwvcHJlPgpXaGVyZSAibXltb2R1bGVuYW1lIiBpcyB0aGUgdW5pcXVlIGlkZW50aWZ5ZXIgb2YgeW91ciBtb2R1bGUsIGNvdWxkIGJlCnJlcGxhY2VkIHdpdGggJyR0aGlzLT5HZXROYW1lKCknLCBhbmQgIm15dGFibGVpZCIgaXMgYW4gaWRlbnRpZnllciBvZiB0aGUKdGFibGUgb2YgZGF0YSB3aGljaCB5b3Ugd2FudCB0byBhY2Nlc3MgaW4gdGhlIGRhdGFzdG9yYWdlIGZvciB5b3VyIG1vZHVsZS4KVGhpcyBjYW4gYmUgbGVmdCBibGFuayBpZiBvbmx5IG9uZSB0YWJsZSBpcyBuZWVkZWQgZm9yIHRoZSBtb2R1bGUuCjxici8+CkZvciBhIGNvbXBsZXRlIChyZWFkOiBzb210aW1lcyBjb21wbGV0ZSkgbGlzdCBvZiBtZXRob2RzIHNlZSBsaXN0IGJlbG93LgoKPGgzPlRoZSBOZW9Nb2R1bGUtc2lzdGVyPC9oMz4KQW5vdGhlciwgYW5kIGV2ZW4gZWFzaWVyLCB3YXkgdG8gdXNlIHRoZSBmdW5jdGlvbmFsaXR5IG9mIHRoaXMgbW9kdWxlCmlzIHRvIGxldCB5b3VyIG1vZHVsZSBkZXNjZW5kIGZyb20gYW5vdGhlciBwcm9qZWN0IG9mIG1pbmUsIHRoZSBOZW9Nb2R1bGUsCndoaWNoIHdyYXBzIGFsbCB0aGUgZnVuY3Rpb25zIG9mIE5lb0RhdGFTdG9yYWdlIGJ1dCByZW1vdmluZyB0aGUgbmVlZCBvZgpjb25zdGFudGx5IHN1cHBseWluZyB0aGUgJG1vZHVsZW5hbWUuIEl0IGFsc28gcHJvdmlkZXMgYSBzdGlsbC1ncm93aW5nIGxpc3Qgb2YKb3RoZXIgaGVscGVyLWZ1bmN0aW9ucyB3aGljaCBoYXMgdG8gZG8gd2l0aCBvdGhlciBzdHVmZiB0aGFuIERhdGFTdG9yYWdlLgo8YnIvPgpGb3IgZnVydGhlciBpbnN0cnVjdGlvbnMgb24gaG93IHRvIHVzZSB0aGUgTmVvTW9kdWxlLCBwbGVhc2UgaW5zdGFsbCBpdCBhbmQKY2hlY2sgb3V0IGl0J3MgaGVscC1wYWdlLgoKPGgzPkhvdyB0byBnZXQgaGVscDwvaDM+Ckkgd2lsbCByZXBlYXQsIHRoaXMgbW9kdWxlIGlzIGZvciBkZXZlbG9wZXJzIG9ubHkuIElmIHlvdSBjYW5ub3QgcmVhZCBwaHAtc291cmNlIGNvZGUsCnlvdSBzaG91bGQgdXNlIGl0IGZvciBkZXZlbG9wbWVudCBhbnl3YXkuIElmIHlvdSBjYW4sIGFsd2F5cyBjaGVjayBvdXQgdGhlIGNvZGUKZm9yIGhpbnRzIG9uIGhvdyB0byBtYWtlIGl0IHdvcmsuIElmIHlvdSBzdGlsbCBoYXZlIHF1ZXN0aW9ucyBvciBzdWdnZXN0aW9ucyBmb3IKZml4ZXMvaW1wcm92ZW1lbnRzLCBwbGVhc2UgZmVlbCBmcmVlIHRvIGNhdGNoIG1lIChTaWxtYXJpbGxpb24pIGluIHRoZSBmb3J1bSBvZyAjaXJjLgoKCjxoMz5MaXN0IG9mIG1ldGhvZHM8L2gzPgo8cHJlPgovKgogKgogKiBFbnRpdHkgZnVuY3Rpb25zCiAqCiAqLwpmdW5jdGlvbiBBZGRFbnRpdHkoJG1vZHVsZSwgJHRhYmxlLCAkcHJvcHM9YXJyYXkoKSkKZnVuY3Rpb24gRGVsZXRlRW50aXR5KCRpZCkKZnVuY3Rpb24gR2V0RW50aXR5V2l0aFR5cGUoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpKQpmdW5jdGlvbiBHZXRFbnRpdHkoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpLCAkd2l0aHR5cGU9ZmFsc2UpCmZ1bmN0aW9uIEdldEVudGl0aWVzKCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpCmZ1bmN0aW9uIEdldE9uZUVudGl0eSgkbW9kdWxlLCAkdGFibGUsICRjcml0ZXJpYT1hcnJheSgpLCAkZmFpbGlmbXVsdGlwbGU9ZmFsc2UpCmZ1bmN0aW9uIEdldEVudGl0aWVzRnVsbCgkbW9kdWxlLCAkdGFibGU9IiIsICRjcml0ZXJpYT1hcnJheSgpKQpmdW5jdGlvbiBFbnRpdGllc0NvdW50KCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpCmZ1bmN0aW9uIFNldEVudGl0eVByb3AoJGlkLCRwcm9wbmFtZSwkcHJvcHZhbHVlLCRwcm9wdHlwZT0idW5kZWZpbmVkIikKCmZ1bmN0aW9uIENsZWFyRW50aXR5KCRpZCkKZnVuY3Rpb24gQ2xlYXJNb2R1bGVFbnRpdGllcygkbW9kdWxlKQpmdW5jdGlvbiBDbGVhckVudGl0eVByb3AoJGlkLCAkcHJvcG5hbWUpCmZ1bmN0aW9uIENsZWFyRW50aXR5UHJvcHMoJGlkKQpmdW5jdGlvbiBTZXRFbnRpdHlQcm9wcygkaWQsICRwcm9wcywgJGNsZWFyPXRydWUpCmZ1bmN0aW9uIFNldEVudGl0eVByb3BzRnJvbUFycmF5KCRpZCwgJHByb3BzLCAkdmFsdWVzLCAkY2xlYXI9dHJ1ZSwgJGZpbGw9ZmFsc2UpCmZ1bmN0aW9uIFNldEVudGl0eVByb3BzT25Dcml0ZXJpYSgkbW9kdWxlLCR0YWJsZSwgJHByb3BzLCAkY3JpdGVyaWEsICRjcmVhdGU9dHJ1ZSwgJGNsZWFyPWZhbHNlKSAvL0RvZXMgbm90IHdvcmshCmZ1bmN0aW9uIFJlc2V0RW50aXR5UHJvcHMoJGlkLCAkbmV3cHJvcHM9YXJyYXkoKSkKZnVuY3Rpb24gUmVtb3ZlTW9kdWxlRW50aXRpZXMoJG1vZHVsZW5hbWUpCgovKgogKgogKiBTb3J0aW5nIGZ1bmN0aW9ucwogKgogKi8KZnVuY3Rpb24gQ29tcGFyZUVudGl0aWVzKCRlbnRpdHkxLCAkZW50aXR5MiwgJHNvcnRmaWVsZCkKZnVuY3Rpb24gQ29tcGFyZUVudGl0aWVzQ29tcGxleCgkZW50aXR5MSwgJGVudGl0eTIsICRzb3J0ZmllbGRzPWFycmF5KCkpIC8vRG9lcyBub3Qgd29yawpmdW5jdGlvbiBTb3J0RW50aXRpZXMoJGxpc3QsICRzb3J0ZmllbGRzPWFycmF5KCkgb3Igc3RyaW5nKSAvL09ubHkgd29ya3Mgb24gc3RyaW5ncwpmdW5jdGlvbiBNYWtlU2ltcGxlQXJyYXkoJG1vZHVsZSwgJHRhYmxlLCAkZmllbGQpCmZ1bmN0aW9uIE1ha2VBc3NvY0FycmF5KCRtb2R1bGUsICR0YWJsZSwgJGZpZWxkcykKCi8qCiAqCiAqIEZpZWxkc2V0IGZ1bmN0aW9ucwogKgogKi8KZnVuY3Rpb24gQWRkRmllbGRTZXQoJG1vZHVsZSwkbmFtZSwkZmllbGRzKQpmdW5jdGlvbiBHZXRGaWVsZFNldCgkbW9kdWxlLCAkbmFtZSkKZnVuY3Rpb24gRW50aXR5U2V0VW5zZXRQcm9wcygkbW9kdWxlLCRlbnRpdHksJGZpZWxkc2V0LCRmaWxsdmFsdWU9IiIpCgovKgogKgogKiBDb25uZWN0aW9uIGZ1bmN0aW9ucwogKgogKi8KZnVuY3Rpb24gU2V0RW50aXR5Q29ubmVjdGlvbigkaWQxLCAkaWQyLCAkdHlwZT0iIikKZnVuY3Rpb24gQ2xlYXJFbnRpdHlDb25uZWN0aW9ucygkaWQxLCAkaWQyPS0xLCAkdHlwZT0iIikKZnVuY3Rpb24gQ2xlYXJFbnRpdHlDb25uZWN0aW9uKCRpZDEsICRpZDIsICR0eXBlPSIiKQpmdW5jdGlvbiBDaGVja0VudGl0eUNvbm5lY3Rpb24oJGlkMSwkaWQyLCR0eXBlPSIiKQpmdW5jdGlvbiBHZXRFbnRpdHlDb25uZWN0aW9ucygkaWQxPS0xLCAkaWQyPS0xLCAkYm90aHdheXM9dHJ1ZSwgJHR5cGU9IiIpIC8vRG9lcyBub3Qgd29yawoKLyoKICoKICogRXJyb3IgaGFuZGxpbmcKICoKICovCmZ1bmN0aW9uIEVycm9yKCRlcnJvcnRleHQsJHJldHVybnZhbHVlPWZhbHNlLCRwYXJhbXM9YXJyYXkoKSkKZnVuY3Rpb24gR2V0RXJyb3JzKCRubDJicj10cnVlLCRjbGVhcj10cnVlKQpmdW5jdGlvbiBTaG93RXJyb3JzKCRjbGVhcj10cnVlKQpmdW5jdGlvbiBJbkVycm9yKCkgOiBib29sCjwvcHJlPjxoMz5QYXJhbWV0cmU8L2gzPjx1bD48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsYW5nPSJlbl9VUyIgLSBQYXJhbWV0cmV0IGFuZ2l2ZXIgaHZpbGtldCBzcHJvZyBkZXIgc2thbCBicnVnZXMgdGlsIHZpc25pbmcgZm9yIGJlcyZvc2xhc2g7Z2VuZGUuIElra2UgYWxsZSBtb2R1bGVyIHVuZGVyc3Qmb3NsYXNoO3R0ZXIgZWxsZXIgYmVoJm9zbGFzaDt2ZXIgZGV0dGUuPC9saT48L3VsPg==]]></help>
	<about><![CDATA[PGJyIC8+TGF2ZXQgYWY6IE1vcnRlbiBwb3Vsc2VuICZsdDttb3J0ZW5AcG91bHNlbi5vcmcmZ3Q7PGJyIC8+PGJyIC8+VmVyc2lvbjogMC4zLjI8YnIgLz48YnIgLz5IaXN0b3JpayBvdmVyICZhZWxpZztuZHJpbmdlcjo8YnIgLz48dWw+CjxsaT4wLjMuMiAtIENvcnJlY3RvciBmb3IgY21zbXMoKS11c2FnZSBldGMuIGZpeGVkIGJ1Z3MgZGlzY292ZXJlZCBieSBQaHBTdG9ybTwvbGk+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[PD9waHANCg0KaWYgKCFmdW5jdGlvbl9leGlzdHMoImNtc21zIikpIGV4aXQ7DQppZiAoISR0aGlzLT5WaXNpYmxlVG9BZG1pblVzZXIoKSkgZXhpdDsNCg0KaWYgKGlzc2V0KCRwYXJhbXNbImFwcGx5ZmlsdGVyIl0pKSB7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJpZGZpbHRlciIsJHBhcmFtc1siaWRmaWx0ZXIiXSk7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJtb2R1bGVmaWx0ZXIiLCRwYXJhbXNbIm1vZHVsZWZpbHRlciJdKTsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoInRhYmxlZmlsdGVyIiwkcGFyYW1zWyJ0YWJsZWZpbHRlciJdKTsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoInByb3BmaWx0ZXIiLCRwYXJhbXNbInByb3BmaWx0ZXIiXSk7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJ2YWx1ZWZpbHRlciIsJHBhcmFtc1sidmFsdWVmaWx0ZXIiXSk7DQp9DQppZiAoaXNzZXQoJHBhcmFtc1sicmVzZXRmaWx0ZXIiXSkpIHsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoImlkZmlsdGVyIiwiIik7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJtb2R1bGVmaWx0ZXIiLCIiKTsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoInRhYmxlZmlsdGVyIiwiIik7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJwcm9wZmlsdGVyIiwiIik7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJ2YWx1ZWZpbHRlciIsIiIpOw0KfQ0KDQokdGhlbWVvYmogPSAmJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddOw0KDQokZGI9JHRoaXMtPkdldERiKCk7DQokc3FsPSJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2UiOw0KJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCk7DQokcm93cz1hcnJheSgpOw0KJHRvdGFsY291bnQ9JHJlc3VsdC0+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[PD9waHAKaWYgKCFmdW5jdGlvbl9leGlzdHMoImNtc21zIikpIGV4aXQ7CmlmICghJHRoaXMtPlZpc2libGVUb0FkbWluVXNlcigpKSBleGl0OwppZiAoIWlzc2V0KCRwYXJhbXNbIndoYXR0b2RvIl0pKSBleGl0OwoKJG1lc3NhZ2U9IiI7CiRlcnJvcj0iIjsKc3dpdGNoICgkcGFyYW1zWyJ3aGF0dG9kbyJdKSB7CiAgY2FzZSAiZGVsZXRlaWQiIDogewogICAgaWYgKCFpc3NldCgkcGFyYW1zWyJlbnRpdHlpZCJdKSkgewogICAgICAkZXJyb3I9JHRoaXMtPkxhbmcoIm1vZGlmaWNhdGlvbnBhcmFtc2Vycm9yIik7CiAgICAgIGJyZWFrOwogICAgfQogICAgaWYgKCEkdGhpcy0+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[PD9waHAKCmlmICghZnVuY3Rpb25fZXhpc3RzKCJjbXNtcyIpKSBleGl0OwoKCiRkYj0kdGhpcy0+R2V0RGIoKTsKICAkZmxkcyA9ICIKCQkJZW50aXR5aWQgSSBLRVksCgkJCWVudGl0eW1vZHVsZSBDKDgwKSwKICAgICAgZW50aXR5dGFibGUgQyg0MCksCiAgICAgIGVudGl0eWV4dHJha2V5IEMoODApCgkiOwoJJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwoJJHRhYm9wdGFycmF5ID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZSIsJGZsZHMsICR0YWJvcHRhcnJheSk7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkkZGItPkNyZWF0ZVNlcXVlbmNlKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3NlcSIpOwoKICAkZmxkcyA9ICIKCQkJZW50aXR5aWQgSSwKCQkJcHJvcG5hbWUgQyg4MCksCiAgICAgIHByb3B0eXBlIEMoNDApLAoJCQlwcm9wdmFsdWUgWAoJIjsKCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCSR0YWJvcHRhcnJheSA9IGFycmF5KCdteXNxbCcgPT4gJ1RZUEU9TXlJU0FNJyk7Cgkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfcHJvcHMiLCRmbGRzLCAkdGFib3B0YXJyYXkpOwoJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKICAkZmxkcyA9ICIKCQkJZW50aXR5aWQxIEksCgkJCWVudGl0eWlkMiBJLAogICAgICB0eXBlIEMoNDApCgkiOwoJJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwoJJHRhYm9wdGFycmF5ID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsKCSRzcWxhcnJheSA9ICRkaWN0LT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9jb25uZWN0aW9ucyIsJGZsZHMsICR0YWJvcHRhcnJheSk7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgogICR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdhY2Nlc3NuZW9kYXRhc3RvcmFnZScsJ0FjY2VzcyB0byB0aGUgTmVvRGF0YVN0b3JhZ2UtcGFnZScpOwogIAogICR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLCAkdGhpcy0+TGFuZygnaW5zdGFsbGVkJywkdGhpcy0+R2V0VmVyc2lvbigpKSk7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFmdW5jdGlvbl9leGlzdHMoImNtc21zIikpIGV4aXQ7CiRkYj1jbXNtcygpLT5HZXREQigpOwoKJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoKTsKCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2UiICk7CiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsKJGRiLT5Ecm9wU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3NlcSIgKTsKCiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3Byb3BzIiApOwokZGljdC0+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[PD9waHANCi8qDQogIyBOZW9EYXRhU3RvcmFnZS4gQW4gZ2VuZXJhbCBwdXJwb3NlIGRhdGFzdG9yYWdlIG1vZHVsZWNsYXNzIGZvciBDTVMgTWFkZSBTaW1wbGUNCiAjIChjKTIwMTAgYnkgTW9ydGVuIFBvdWxzZW4gKG1vcnRlbkBwb3Vsc2VuLm9yZykNCiAjDQogI0NNUyAtIENNUyBNYWRlIFNpbXBsZQ0KICMoYykyMDA0LTEwIGJ5IFRlZCBLdWxwICh3aXNoeUB1c2Vycy5zZi5uZXQpDQogI1RoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogIw0KICNUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KICNpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KICN0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KICMoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KICMNCiAjVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQogI2J1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQogI01FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCiAjR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiAjWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiAjYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCiAjRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgIDAyMTExLTEzMDcgIFVTQQ0KICMNCiAjJElkJA0KICMNCiovDQppZiAoIWZ1bmN0aW9uX2V4aXN0cygiaXNfYXNzb2MiKSkgew0KICBmdW5jdGlvbiBpc19hc3NvYygkYXJyYXkpIHsNCiAgICByZXR1cm4gKGlzX2FycmF5KCRhcnJheSkgJiYgMCAhPT0gY291bnQoYXJyYXlfZGlmZl9rZXkoJGFycmF5LCBhcnJheV9rZXlzKGFycmF5X2tleXMoJGFycmF5KSkpKSk7DQogIH0NCn0NCg0KY2xhc3MgTmVvRGF0YVN0b3JhZ2UgZXh0ZW5kcyBDTVNNb2R1bGUgew0KICB2YXIgJF9zb3J0ZmllbGRzOw0KICB2YXIgJF9maWVsZHNldHM9YXJyYXkoKTsNCiAgdmFyICRfZXJyb3JzPSIiOw0KDQogIGZ1bmN0aW9uIEdldE5hbWUoKSB7DQogICAgcmV0dXJuICdOZW9EYXRhU3RvcmFnZSc7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRGcmllbmRseU5hbWUoKSB7DQogICAgcmV0dXJuICR0aGlzLT5MYW5nKCJmcmllbmRseW5hbWUiKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEhhc0FkbWluKCkgew0KICAgIHJldHVybiB0cnVlOw0KICB9DQoNCiAgZnVuY3Rpb24gR2V0VmVyc2lvbigpIHsNCiAgICByZXR1cm4gJzAuMy4yJzsNCiAgfQ0KDQogIGZ1bmN0aW9uIEhhc0NhcGFiaWxpdHkoJGNhcGFiaWxpdHksICRwYXJhbXM9YXJyYXkoKSkgew0KICAgIGlmICgkY2FwYWJpbGl0eT09ImRhdGFzdG9yYWdlIikgcmV0dXJuIHRydWU7DQogICAgcmV0dXJuIGZhbHNlOw0KICB9DQoNCiAgZnVuY3Rpb24gR2V0SGVscCgpIHsNCiAgICByZXR1cm4gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnaGVscC50cGwnKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldEF1dGhvcigpIHsNCiAgICByZXR1cm4gJ01vcnRlbiBwb3Vsc2VuJzsNCiAgfQ0KDQoNCiAgZnVuY3Rpb24gR2V0QXV0aG9yRW1haWwoKSB7DQogICAgcmV0dXJuICdtb3J0ZW5AcG91bHNlbi5vcmcnOw0KICB9DQoNCg0KICBmdW5jdGlvbiBHZXRDaGFuZ2VMb2coKSB7DQogICAgcmV0dXJuICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2NoYW5nZWxvZy50cGwnKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIFZpc2libGVUb0FkbWluVXNlcigpIHsNCiAgICByZXR1cm4gJHRoaXMtPkNoZWNrUGVybWlzc2lvbignYWNjZXNzbmVvZGF0YXN0b3JhZ2UnKTsNCiAgfQ0KDQogIC8qDQogICAqDQogICAqIEFQSS1mdW5jdGlvbnMNCiAgICoNCiAgKi8NCg0KICBmdW5jdGlvbiBBZGRFbnRpdHkoJG1vZHVsZSwgJHRhYmxlLCAkcHJvcHM9YXJyYXkoKSkgew0KICAgICRkYj1jbXNtcygpLT5HZXREYigpOw0KICAgICRuZXdpZD0kZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3NlcSIpOw0KDQogICAgJHNxbD0iSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZSAoZW50aXR5aWQsZW50aXR5bW9kdWxlLGVudGl0eXRhYmxlKSBWQUxVRVMgKD8sPyw/KSI7DQogICAgJHZhbHVlcz1hcnJheSgkbmV3aWQsJG1vZHVsZSwkdGFibGUpOw0KICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkcmVzdWx0KSByZXR1cm4gJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBBZGRFbnRpdHk6IGVycm9yIGFkZGluZyBlbnRpdHkiLGZhbHNlLGFycmF5KCRwcm9wcykpOw0KDQogICAgaWYgKCFlbXB0eSgkcHJvcHMpKSB7DQogICAgICAvL2VjaG8gImhlcmUiOw0KICAgICAgJHRoaXMtPlNldEVudGl0eVByb3BzKCRuZXdpZCwgJHByb3BzLCBmYWxzZSk7DQogICAgfQ0KDQogICAgcmV0dXJuICRuZXdpZDsNCiAgfQ0KDQogIGZ1bmN0aW9uIERlbGV0ZUVudGl0eSgkaWQpIHsNCiAgICAkdGhpcy0+Q2xlYXJFbnRpdHlQcm9wcygkaWQpOw0KICAgICR0aGlzLT5DbGVhckVudGl0eUNvbm5lY3Rpb25zKCRpZCk7DQogICAgJGRiPWNtc21zKCktPkdldERiKCk7DQoNCiAgICAkc3FsPSJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlIFdIRVJFIGVudGl0eWlkPT8iOw0KICAgICR2YWx1ZXM9YXJyYXkoJGlkKTsNCiAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIGlmICghJHJlc3VsdCkgJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBEZWxldGVFbnRpdHk6IGVycm9yIGRlbGV0aW5nIGVudGl0eSIsZmFsc2UsYXJyYXkoImlkIj0+JGlkKSk7DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KICBmdW5jdGlvbiBEZWxldGVFbnRpdGllcygkbW9kdWxlLCAkdGFibGUsICRjcml0ZXJpYSA9IGFycmF5KCkpIHsNCiAgICAkZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzKCRtb2R1bGUsICR0YWJsZSwgJGNyaXRlcmlhKTsNCiAgICAkcmVzdWx0PXRydWU7DQogICAgaWYgKCRlbnRpdGllcykgew0KICAgICAgZm9yZWFjaCAoJGVudGl0aWVzIGFzICRlbnRpdHkpIHsNCiAgICAgICAgJHRoaXMtPkRlbGV0ZUVudGl0eSgkZW50aXR5WyJpZCJdKTsNCiAgICAgIH0NCiAgICB9IGVsc2Ugew0KICAgICAgJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBEZWxldGVFbnRpdGllczogbm8gZW50aXRpZXMgbWF0Y2hlZCBjcml0ZXJpYSIsZmFsc2UsJGNyaXRlcmlhKTsNCiAgICAgICRyZXN1bHQ9ZmFsc2U7DQogICAgfQ0KICAgIA0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCg0KICBmdW5jdGlvbiBHZXRFbnRpdHlXaXRoVHlwZSgkaWQsICRvdmVycmlkZXByb3BzPWFycmF5KCkpIHsNCiAgICByZXR1cm4gJHRoaXMtPkdldEVudGl0eSgkaWQsICRvdmVycmlkZXByb3BzLCB0cnVlKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldEVudGl0eSgkaWQsICRvdmVycmlkZXByb3BzPWFycmF5KCksICRmaWxsZmllbGRzPWFycmF5KCksICR3aXRodHlwZT1mYWxzZSkgew0KICAgICRkYj1jbXNtcygpLT5HZXREYigpOw0KDQogICAgJHNxbD0iU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3Byb3BzIFdIRVJFIGVudGl0eWlkPT8iOw0KICAgICR2YWx1ZXM9YXJyYXkoJGlkKTsNCiAgICAkZGJyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkZGJyZXN1bHQgfHwgKCRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKT09MCkpIHsNCiAgICAgIGlmICghJGRicmVzdWx0KSAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIEdldEVudGl0eTogZXJyb3IgZ2V0dGluZyBlbnRpdHkiLGZhbHNlLGFycmF5KCJpZCI9PiRpZCkpOw0KICAgICAgcmV0dXJuIGZhbHNlOw0KICAgIH0NCiAgICAkcmVzdWx0PWFycmF5KCk7DQogICAgd2hpbGUoJHJvdz0kZGJyZXN1bHQtPkZldGNoUm93KCkpIHsNCiAgICAgIC8vcHJpbnRfcigkcm93KTsNCiAgICAgIGlmICgkd2l0aHR5cGUpIHsNCiAgICAgICAgJHJlc3VsdFskcm93WyJwcm9wbmFtZSJdXT1hcnJheSgidmFsdWUiPT4kcm93WyJwcm9wdmFsdWUiXSwidHlwZSI9PiRyb3dbInByb3B0eXBlIl0pOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgJHJlc3VsdFskcm93WyJwcm9wbmFtZSJdXT0kcm93WyJwcm9wdmFsdWUiXTsNCiAgICAgIH0NCiAgICAgIGlmIChpc3NldCgkb3ZlcnJpZGVwcm9wc1skcm93WyJwcm9wbmFtZSJdXSkpIHsNCiAgICAgICAgaWYgKCR3aXRodHlwZSkgew0KICAgICAgICAgIC8vTm93IHRoaXMgaXMganVzdCBiZWF0aWZ1bA0KICAgICAgICAgICRyZXN1bHRbJHJvd1sicHJvcG5hbWUiXV09JG92ZXJyaWRlcHJvcHNbJHJvd1sicHJvcG5hbWUiXV07DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgJHJlc3VsdFskcm93WyJwcm9wbmFtZSJdXT1hcnJheSgidmFsdWUiPT4kb3ZlcnJpZGVwcm9wc1skcm93WyJwcm9wbmFtZSJdXSwidHlwZSI9PiJ1bmtub3duIik7DQogICAgICAgIH0NCiAgICAgIH0NCiAgICB9DQogICAgJHJlc3VsdFsiaWQiXT0kaWQ7DQogICAgJHJlc3VsdFsiZW50aXR5aWQiXT0kaWQ7DQogICAgLy9pZiAoJGlkPT00KSBwcmludF9yKCRyZXN1bHQpOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gR2V0RW50aXRpZXMoJG1vZHVsZSwgJHRhYmxlPSIiLCAkY3JpdGVyaWE9YXJyYXkoKSkgew0KICAgICRkYj1jbXNtcygpLT5HZXREYigpOw0KICAgIC8vZWNobyAkbW9kdWxlOyBlY2hvICR0YWJsZTtkaWUoKTsNCiAgICAkc3FsPSJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2UgV0hFUkUgZW50aXR5bW9kdWxlPT8iOw0KICAgICR2YWx1ZXM9YXJyYXkoJG1vZHVsZSk7DQogICAgaWYgKCR0YWJsZSE9IiIpIHsNCiAgICAgICRzcWwuPSIgQU5EIGVudGl0eXRhYmxlPT8iOw0KICAgICAgJHZhbHVlcz1hcnJheSgkbW9kdWxlLCR0YWJsZSk7DQogICAgfQ0KICAgICRkYnJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICBpZiAoISRkYnJlc3VsdCB8fCAoJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpPT0wKSkgew0KICAgICAgcmV0dXJuIGZhbHNlOw0KICAgIH0NCiAgICAkcmVzdWx0PWFycmF5KCk7DQogICAgd2hpbGUoJHJvdz0kZGJyZXN1bHQtPkZldGNoUm93KCkpIHsNCiAgICAgIC8vaWYgKCR0YWJsZT09ImZhZyIpIHtwcmludF9yKCRjcml0ZXJpYSk7ZGllKCk7fQ0KICAgICAgDQogICAgICBpZiAoIWVtcHR5KCRjcml0ZXJpYSkpIHsNCiAgICAgICAgJGVudGl0eT0kdGhpcy0+R2V0RW50aXR5KCRyb3dbImVudGl0eWlkIl0pOw0KICAgICAgICAvL2VjaG8gJHJvd1siZW50aXR5aWQiXTsNCiAgICAgICAgLy9lY2hvICJoZXI6IjsNCiAgICAgICAgLy9wcmludF9yKCRlbnRpdHkpOw0KICAgICAgICAkZmFpbGVkPWZhbHNlOw0KICAgICAgICBmb3JlYWNoKCRjcml0ZXJpYSBhcyAkY3Byb3A9PiRjdmFsdWUpIHsNCiAgICAgICAgICAvL2VjaG8gJGNwcm9wOw0KICAgICAgICAgIGlmICghaXNzZXQoJGVudGl0eVskY3Byb3BdKSkgeyAgICAgICAgICAgIA0KICAgICAgICAgICAgJGZhaWxlZD10cnVlOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICAgfQ0KICAgICAgICAgIGlmICgkZW50aXR5WyRjcHJvcF0hPSRjdmFsdWUpIHsgICAgICAgICAgICANCiAgICAgICAgICAgICRmYWlsZWQ9dHJ1ZTsNCiAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgIH0NCiAgICAgICAgfSAgICAgICAgDQogICAgICAgIGlmICgkZmFpbGVkKSBjb250aW51ZTsgLy9Dcml0ZXJpYSBmYWlsZWQNCiAgICAgIH0NCiAgICAgICRyb3dbImlkIl09JHJvd1siZW50aXR5aWQiXTsNCiAgICAgICRyZXN1bHRbXT0kcm93Ow0KICAgIH0NCiAgICAvL2lmICgkdGFibGU9PSJmYWciKSB7cHJpbnRfcigkcmVzdWx0KTtkaWUoKTt9DQogICAgaWYgKGNvdW50KCRyZXN1bHQpPT0wKSByZXR1cm4gZmFsc2U7DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRPbmVFbnRpdHkoJG1vZHVsZSwgJHRhYmxlLCAkY3JpdGVyaWE9YXJyYXkoKSwgJGZhaWxpZm11bHRpcGxlPWZhbHNlKSB7DQogICAgLy9lY2hvICRtb2R1bGU7ZWNobyAkdGFibGU7DQogICAgLy9wcmludF9yKCRjcml0ZXJpYSk7ZGllKCk7Ly8NCiAgICAkZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzRnVsbCgkbW9kdWxlLCAkdGFibGUsICRjcml0ZXJpYSk7DQovL2lmICgkdGFibGU9PSJmYWciKSB7cHJpbnRfcigkZW50aXRpZXMpO2RpZSgpO30NCiAgICAvL2lmICghJGVudGl0aWVzKSBlY2hvICJmYWxzZSI7DQogICAgaWYgKCEkZW50aXRpZXMpIHJldHVybiBmYWxzZTsNCg0KICAgIGlmIChjb3VudCgkZW50aXRpZXMpPjEgJiYgJGZhaWxpZm11bHRpcGxlKSByZXR1cm4gZmFsc2U7DQoNCiAgICBmb3JlYWNoICgkZW50aXRpZXMgYXMgJGVudGl0eSkgew0KICAgICAgcmV0dXJuICRlbnRpdHk7IC8vSG1tLCB0aGlzIGlzIHVnbHkgcmlnaHQ/IGJ1dCB3b3JrcyA6KQ0KICAgIH0NCg0KICB9DQoNCiAgZnVuY3Rpb24gR2V0RW50aXRpZXNGdWxsKCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpIHsNCiAgICAkc2ltcGxlZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzKCRtb2R1bGUsICR0YWJsZSwgJGNyaXRlcmlhKTsNCiAgICAvL2lmICgkdGFibGU9PSJmYWciKSB7cHJpbnRfcigkc2ltcGxlZW50aXRpZXMpO2RpZSgpO30NCiAgICAvL3ByaW50X3IoJHNpbXBsZWVudGl0aWVzKTtkaWUoKTsNCiAgICAvL3ByaW50X3IoJHNpbXBsZWVudGl0aWVzKTsNCiAgICBpZiAoISRzaW1wbGVlbnRpdGllcyB8fCBlbXB0eSgkc2ltcGxlZW50aXRpZXMpKSByZXR1cm4gZmFsc2U7DQoNCiAgICAkZnVsbGVudGl0aWVzPWFycmF5KCk7DQogICAgZm9yZWFjaCAoJHNpbXBsZWVudGl0aWVzIGFzICRzaW1wbGVlbnRpdHkpIHsNCiAgICAgICRlbnRpdHk9JHRoaXMtPkdldEVudGl0eSgkc2ltcGxlZW50aXR5WyJlbnRpdHlpZCJdKTsNCiAgICAgIGlmICgkZW50aXR5IT09ZmFsc2UpIHsNCiAgICAgICAgLy9wcmludF9yKCRlbnRpdHkpO2RpZSgpOw0KICAgICAgICAkZW50aXR5WyJpZCJdPSRlbnRpdHlbImVudGl0eWlkIl07DQogICAgICAgICRmdWxsZW50aXRpZXNbXT0kZW50aXR5Ow0KICAgICAgfQ0KICAgIH0NCiAgICByZXR1cm4gJGZ1bGxlbnRpdGllczsNCiAgfQ0KDQogIGZ1bmN0aW9uIEVudGl0aWVzQ291bnQoJG1vZHVsZSwgJHRhYmxlPSIiLCAkY3JpdGVyaWE9YXJyYXkoKSkgew0KICAgICRlbnRpdGllcz0kdGhpcy0+R2V0RW50aXRpZXMoJG1vZHVsZSwgJHRhYmxlLCAkY3JpdGVyaWEpOw0KICAgIHJldHVybiBjb3VudCgkZW50aXRpZXMpOw0KICB9DQoNCiAgZnVuY3Rpb24gU2V0RW50aXR5UHJvcCgkaWQsJHByb3BuYW1lLCRwcm9wdmFsdWUsJHByb3B0eXBlPSJ1bmRlZmluZWQiKSB7DQogICAgLy8gIGVjaG8gJHByb3BuYW1lOw0KICAgIC8vJHRoaXMtPkNsZWFyRW50aXR5UHJvcCgkaWQsJHByb3BuYW1lKTsNCiAgICAkZGI9Y21zbXMoKS0+R2V0RGIoKTsNCiAgICAkc3FsPSJVUERBVEUgIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9wcm9wcyBTRVQgcHJvcHZhbHVlPT8scHJvcHR5cGU9PyBXSEVSRSBlbnRpdHlpZD0/IEFORCBwcm9wbmFtZT0/IjsNCiAgICAkdmFsdWVzPWFycmF5KCRwcm9wdmFsdWUsJHByb3B0eXBlLCRpZCwkcHJvcG5hbWUpOw0KICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkcmVzdWx0IHx8ICRkYi0+QWZmZWN0ZWRfUm93cygpPDEpIHsNCiAgICAgICRzcWw9IklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfcHJvcHMgKGVudGl0eWlkLHByb3BuYW1lLHByb3B2YWx1ZSxwcm9wdHlwZSkgVkFMVUVTICg/LD8sPyw/KSI7DQogICAgICAkdmFsdWVzPWFycmF5KCRpZCwkcHJvcG5hbWUsJHByb3B2YWx1ZSwkcHJvcHR5cGUpOw0KICAgIH0NCiAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIGlmICghJHJlc3VsdCkgcmV0dXJuICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gU2V0RW50aXR5UHJvcDogZXJyb3Igc2V0dGluZyBlbnRpdHktcHJvcCIsZmFsc2UsYXJyYXkoImVudGl0eWlkIj0+JGlkLCJwcm9wdHlwZSI9PiRwcm9wdHlwZSkpOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gR2V0RW50aXR5UHJvcCgkaWQsJHByb3BuYW1lLCAkZGVmYXVsdD1mYWxzZSkgew0KICAgICRlbnRpdHk9JHRoaXMtPkdldEVudGl0eSgkaWQpOw0KICAgIGlmICghJGVudGl0eSkgcmV0dXJuIGZhbHNlOw0KICAgIGlmIChpc3NldCgkZW50aXR5WyJwcm9wbmFtZSJdKSkgcmV0dXJuICRlbnRpdHlbInByb3BuYW1lIl07DQogICAgcmV0dXJuIGZhbHNlOw0KICB9DQoNCiAgZnVuY3Rpb24gQ2xlYXJFbnRpdHkoJGlkKSB7DQogICAgJHRoaXMtPkNsZWFyRW50aXR5Q29ubmVjdGlvbnMoJGlkLCRpZCk7DQogICAgJHRoaXMtPkNsZWFyRW50aXR5UHJvcHMoJGlkKTsNCiAgICAkZGI9Y21zbXMoKS0+R2V0RGIoKTsNCiAgICAkc3FsPSJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlIFdIRVJFIGVudGl0eWlkPT8iOw0KICAgICR2YWx1ZXM9YXJyYXkoJGlkKTsNCiAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIGlmICghJHJlc3VsdCkgcmV0dXJuICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gQ2xlYXJFbnRpdHk6IGVycm9yIGNsZWFyaW5nIGVudGl0eSIsZmFsc2UsYXJyYXkoImlkIj0+JGlkKSk7DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KICBmdW5jdGlvbiBDbGVhck1vZHVsZUVudGl0aWVzKCRtb2R1bGUpIHsNCg0KICAgICRlbnRpdGllcz0kdGhpcy0+R2V0RW50aXRpZXMoJG1vZHVsZSk7DQoNCiAgICBpZiAoISRlbnRpdGllcykgcmV0dXJuOw0KLy9kaWUoKTsNCiAgICBmb3JlYWNoICgkZW50aXRpZXMgYXMgJGVudGl0eSkgew0KICAgICAgJHRoaXMtPkNsZWFyRW50aXR5KCRlbnRpdHlbImVudGl0eWlkIl0pOw0KICAgIH0NCiAgfQ0KDQogIGZ1bmN0aW9uIENsZWFyRW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSkgew0KICAgICRkYj1jbXNtcygpLT5HZXREYigpOw0KICAgICRzcWw9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfcHJvcHMgV0hFUkUgZW50aXR5aWQ9PyBBTkQgcHJvcG5hbWU9PyI7DQogICAgJHZhbHVlcz1hcnJheSgkaWQsJHByb3BuYW1lKTsNCiAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIGlmICghJHJlc3VsdCkgcmV0dXJuICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gQ2xlYXJFbnRpdHlQcm9wOiBlcnJvciBjbGVhcmluZyBlbnRpdHlwcm9wIixmYWxzZSxhcnJheSgiaWQiPT4kaWQsInByb3BuYW1lIj0+JHByb3BuYW1lKSk7DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KICBmdW5jdGlvbiBDbGVhckVudGl0eVByb3BzKCRpZCkgew0KICAgICRkYj1jbXNtcygpLT5HZXREYigpOw0KICAgICRzcWw9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfcHJvcHMgV0hFUkUgZW50aXR5aWQ9PyI7DQogICAgJHZhbHVlcz1hcnJheSgkaWQpOw0KICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkcmVzdWx0KSAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIENsZWFyRW50aXR5UHJvcHM6IGVycm9yIGNsZWFyaW5nIGVudGl0eXByb3BzIixmYWxzZSxhcnJheSgiaWQiPT4kaWQpKTsNCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KDQogIGZ1bmN0aW9uIFNldEVudGl0eVByb3BzRnJvbUFycmF5KCRpZCwgJHByb3BzLCAkdmFsdWVzLCAkY2xlYXI9dHJ1ZSwgJGZpbGw9ZmFsc2UpIHsNCiAgICBpZiAoIWlzX2FycmF5KCRwcm9wcykgfHwgIWlzX2FycmF5KCR2YWx1ZXMpKSByZXR1cm4gJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBTZXRFbnRpdHlQcm9wc0Zyb21BcnJheTogXCRwcm9wcyBhbmQgXCR2YWx1ZXMgbXVzdCBiZSBhbiBhcnJheXMiKTsNCg0KICAgIGZvcmVhY2ggKCRwcm9wcyBhcyAkcHJvcG5hbWUpIHsNCiAgICAgIGlmIChpc3NldCgkdmFsdWVzWyRwcm9wbmFtZV0pKSB7DQogICAgICAgICR2YWx1ZT0kdmFsdWVzWyRwcm9wbmFtZV07DQogICAgICAgIC8vZWNobyAkdmFsdWU7DQogICAgICAgIGlmIChpc19hcnJheSgkdmFsdWUpKSB7DQogICAgICAgICAgJHRoaXMtPlNldEVudGl0eVByb3AoJGlkLCAkcHJvcG5hbWUsICR2YWx1ZVsidmFsdWUiXSwkdmFsdWVbInR5cGUiXSk7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgLy9lY2hvICRwcm9wbmFtZS4iPT4iLiR2YWx1ZTsNCiAgICAgICAgICAkdGhpcy0+U2V0RW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSwgJHZhbHVlKTsNCiAgICAgICAgfQ0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgaWYgKCRjbGVhcikgJHRoaXMtPkNsZWFyRW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSk7DQogICAgICAgIGlmICgkZmlsbCkgJHRoaXMtPlNldEVudGl0eVByb3AoJGlkLCAkcHJvcG5hbWUsICIiKTsNCiAgICAgIH0NCiAgICB9DQogICAgLy9kaWUoKTsNCiAgICByZXR1cm4gJGlkOw0KICB9DQoNCg0KICBmdW5jdGlvbiBTZXRFbnRpdHlQcm9wcygkaWQsICRwcm9wcy8qLCAkY2xlYXI9dHJ1ZSovKSB7DQogICAgLy9wcmludF9yKCRwcm9wcyk7ICBlY2hvICJoaTIiOyBkaWUoKTsNCiAgICAvL3ByaW50X3IoJHByb3BzKTtlY2hvIjxici8+PGJyLz4iOw0KICAgIC8vZWNobyAkaWQ7ZGllKCkNCiAgICBpZiAoIWlzX2FycmF5KCRwcm9wcykgfHwgIWlzX2Fzc29jKCRwcm9wcykpIHJldHVybiAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIFNldEVudGl0eVByb3BzOiBcJHByb3BzIG11c3QgYmUgYW4gYXNzb2MgYXJyYXkiKTsNCiAgICBmb3JlYWNoICgkcHJvcHMgYXMgJHByb3BuYW1lPT4kcHJvcHZhbHVlKSB7DQogICAgICAvL2lmICgkY2xlYXIpICR0aGlzLT5DbGVhckVudGl0eVByb3AoJGlkLCAkcHJvcG5hbWUpOw0KICAgICAgaWYgKGlzX2FycmF5KCRwcm9wdmFsdWUpKSB7DQogICAgICAgIC8vICBwcmludF9yKCRwcm9wdmFsdWUpO2RpZSgpOw0KICAgICAgICAkdGhpcy0+U2V0RW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSwgJHByb3B2YWx1ZVsidmFsdWUiXSwkcHJvcHZhbHVlWyJ0eXBlIl0pOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgLy9lY2hvICRwcm9wbmFtZTsNCiAgICAgICAgLy9lY2hvICJoaTIiOyBkaWUoKTsNCiAgICAgICAgJHRoaXMtPlNldEVudGl0eVByb3AoJGlkLCAkcHJvcG5hbWUsICRwcm9wdmFsdWUpOw0KICAgICAgfQ0KICAgIH0NCg0KICAgIHJldHVybiAkaWQ7DQoNCiAgfQ0KDQogIC8vRG9lcyBub3Qgd29yayENCiAgZnVuY3Rpb24gU2V0RW50aXR5UHJvcHNPbkNyaXRlcmlhKCRtb2R1bGUsJHRhYmxlLCAkcHJvcHMsICRjcml0ZXJpYSwgJGNyZWF0ZT10cnVlLCAkY2xlYXI9ZmFsc2UpIHsNCiAgICAvKnByaW50X3IoJHByb3BzKTtlY2hvIjxici8+PGJyLz4iOw0KICAgIHByaW50X3IoJGNyaXRlcmlhKTtkaWUoKTsqLw0KICAgICRlbnRpdGllcz0kdGhpcy0+R2V0RW50aXRpZXMoJG1vZHVsZSwkdGFibGUsICRjcml0ZXJpYSk7DQogICAgaWYgKCEkZW50aXRpZXMpIHsNCiAgICAgIGlmICgkY3JlYXRlKSB7DQogICAgICAgIHJldHVybiAkdGhpcy0+QWRkRW50aXR5KCRtb2R1bGUsICR0YWJsZSwgJHByb3BzKTsNCiAgICAgIH0NCiAgICB9IGVsc2Ugew0KICAgICAgJGNvdW50PTA7DQogICAgICBmb3JlYWNoKCRlbnRpdGllcyBhcyAkZW50aXR5KSB7DQogICAgICAgIC8qcHJpbnRfcigkcHJvcHMpO2VjaG8iPGJyLz48YnIvPiI7DQogICAgICAgIHByaW50X3IoJGVudGl0eSk7ZGllKCk7Ki8NCiAgICAgICAgJGNvdW50Kys7DQogICAgICAgICR0aGlzLT5TZXRFbnRpdHlQcm9wcygkZW50aXR5WyJpZCJdLCRwcm9wcywkY2xlYXIpOw0KICAgICAgfQ0KICAgIH0NCg0KICAgIHJldHVybiAkY291bnQ7DQogIH0NCg0KICBmdW5jdGlvbiBSZXNldEVudGl0eVByb3BzKCRpZCwgJG5ld3Byb3BzPWFycmF5KCkpIHsNCiAgICAkdGhpcy0+Q2xlYXJFbnRpdHlQcm9wcygkaWQpOw0KICAgICR0aGlzLT5TZXRFbnRpdHlQcm9wcygkaWQsICRuZXdwcm9wcywgZmFsc2UpOw0KICB9DQoNCiAgZnVuY3Rpb24gUmVtb3ZlTW9kdWxlRW50aXRpZXMoJG1vZHVsZW5hbWUpIHsNCiAgICAkZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzKCRtb2R1bGVuYW1lKTsNCiAgICBmb3JlYWNoICgkZW50aXRpZXMgYXMgJGVudGl0eSkgew0KICAgICAgJHRoaXMtPkRlbGV0ZUVudGl0eSgkZW50aXR5WyJpZCJdKTsNCiAgICB9DQogIH0NCg0KDQoNCg0KICBmdW5jdGlvbiBfQ29tcGFyZUVudGl0aWVzKCRlbnRpdHkxLCAkZW50aXR5MiwgJHNvcnRmaWVsZCkgew0KICAgICRkaXJlY3Rpb249ImFzYyI7DQogICAgaWYgKGlzX2FycmF5KCRzb3J0ZmllbGQpKSB7DQogICAgICBmb3JlYWNoKCRzb3J0ZmllbGQgYXMgJGZpZWxkbmFtZT0+JGRpcikgew0KICAgICAgICAkZGlyZWN0aW9uPSRkaXI7DQogICAgICAgICRzb3J0ZmllbGQ9JGZpZWxkbmFtZTsNCiAgICAgICAgYnJlYWs7DQogICAgICB9DQogICAgfQ0KICAgIGlmICghaXNzZXQoJGVudGl0eTFbJHNvcnRmaWVsZF0pKSByZXR1cm4gMDsNCiAgICBpZiAoIWlzc2V0KCRlbnRpdHkyWyRzb3J0ZmllbGRdKSkgcmV0dXJuIDA7DQogICAgaWYgKGlzX251bWVyaWMoJGVudGl0eTFbJHNvcnRmaWVsZF0pICYmIGlzX251bWVyaWMoJGVudGl0eTJbJHNvcnRmaWVsZF0pKSB7DQogICAgICBpZiAoJGVudGl0eTFbJHNvcnRmaWVsZF09PSRlbnRpdHkyWyRzb3J0ZmllbGRdKSByZXR1cm4gMDsNCiAgICAgIGlmICgkZW50aXR5MVskc29ydGZpZWxkXTwkZW50aXR5Mlskc29ydGZpZWxkXSkgew0KICAgICAgICBpZiAoJGRpcmVjdGlvbj09ImFzYyIpIHsNCiAgICAgICAgICByZXR1cm4gLTE7DQogICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgcmV0dXJuIDE7DQogICAgICAgIH0NCiAgICAgIH0gZWxzZSB7DQogICAgICAgIGlmICgkZGlyZWN0aW9uPT0iYXNjIikgew0KICAgICAgICAgIHJldHVybiAxOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgIHJldHVybiAtMTsNCiAgICAgICAgfQ0KICAgICAgfQ0KDQogICAgfSBlbHNlIHsNCiAgICAgIGlmICgkZGlyZWN0aW9uPT0iYXNjIikgew0KICAgICAgICByZXR1cm4gc3RyY21wKCRlbnRpdHkyWyRzb3J0ZmllbGRdLCRlbnRpdHkxWyRzb3J0ZmllbGRdKTsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIHJldHVybiBzdHJjbXAoJGVudGl0eTJbJHNvcnRmaWVsZF0sJGVudGl0eTFbJHNvcnRmaWVsZF0pOw0KICAgICAgfQ0KDQogICAgfQ0KDQogIH0NCg0KICAvL0RvZXMgbm90IHdvcmsNCiAgLypmdW5jdGlvbiBfQ29tcGFyZUVudGl0aWVzQ29tcGxleCgkZW50aXR5MSwgJGVudGl0eTIsICRzb3J0ZmllbGRzKSB7DQogICAgaWYgKCFpc3NldCgkZW50aXR5MVskc29ydGZpZWxkXSkpIHJldHVybiAwOw0KICAgIGlmICghaXNzZXQoJGVudGl0eTJbJHNvcnRmaWVsZF0pKSByZXR1cm4gMDsNCiAgICBpZiAoaXNfbnVtZXJpYygkZW50aXR5MVskc29ydGZpZWxkXSkgJiYgaXNfbnVtZXJpYygkZW50aXR5Mlskc29ydGZpZWxkXSkpIHsNCiAgICAgIGlmICgkZW50aXR5MVskc29ydGZpZWxkXT09JGVudGl0eTJbJHNvcnRmaWVsZF0pIHJldHVybiAwOw0KICAgICAgaWYgKCRlbnRpdHkxWyRzb3J0ZmllbGRdPCRlbnRpdHkyWyRzb3J0ZmllbGRdKSByZXR1cm4gLTE7DQogICAgICByZXR1cm4gMTsNCiAgICB9IGVsc2Ugew0KICAgICAgcmV0dXJuIHN0cmNtcCgkZW50aXR5MVskc29ydGZpZWxkXSwkZW50aXR5Mlskc29ydGZpZWxkXSk7DQogICAgfQ0KICB9Ki8NCg0KICBmdW5jdGlvbiBfSW50ZXJuYWxDb21wYXJlRW50aXRpZXMoJGVudGl0eTEsICRlbnRpdHkyKSB7DQogICAgaWYgKGlzX2FycmF5KCR0aGlzLT5fc29ydGZpZWxkcykpIHsNCiAgICAgIGlmIChjb3VudCgkdGhpcy0+X3NvcnRmaWVsZHMpPT0xKSB7DQogICAgICAgIGlmIChpc19hc3NvYygkdGhpcy0+X3NvcnRmaWVsZHMpKSB7DQogICAgICAgICAgcmV0dXJuICR0aGlzLT5fQ29tcGFyZUVudGl0aWVzKCRlbnRpdHkxLCAkZW50aXR5MiwgJHRoaXMtPl9zb3J0ZmllbGRzKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICByZXR1cm4gJHRoaXMtPl9Db21wYXJlRW50aXRpZXMoJGVudGl0eTEsICRlbnRpdHkyLCAkdGhpcy0+X3NvcnRmaWVsZHNbMF0pOw0KICAgICAgICB9DQogICAgICB9IGVsc2Ugew0KICAgICAgICByZXR1cm4gJHRoaXMtPl9Db21wYXJlRW50aXRpZXNDb21wbGV4KCRlbnRpdHkxLCAkZW50aXR5MiwgJHRoaXMtPl9zb3J0ZmllbGRzKTsNCiAgICAgIH0NCiAgICB9IGVsc2Ugew0KICAgICAgcmV0dXJuICR0aGlzLT5fQ29tcGFyZUVudGl0aWVzKCRlbnRpdHkxLCAkZW50aXR5MiwgJHRoaXMtPl9zb3J0ZmllbGRzKTsNCiAgICB9DQogIH0NCg0KICBmdW5jdGlvbiBTb3J0RW50aXRpZXMoJGxpc3QsICRzb3J0ZmllbGRzKSB7DQogICAgJHRoaXMtPl9zb3J0ZmllbGRzPSRzb3J0ZmllbGRzOw0KICAgIHVzb3J0KCRsaXN0LCBhcnJheSgkdGhpcywiX0ludGVybmFsQ29tcGFyZUVudGl0aWVzIikpOw0KICAgIHJldHVybiAkbGlzdDsNCiAgfQ0KDQogIGZ1bmN0aW9uIE1ha2VTaW1wbGVBcnJheSgkbW9kdWxlLCAkdGFibGUsJGZpZWxkLCRhc3NvY2lkPXRydWUpIHsNCiAgICAkZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzRnVsbCgkbW9kdWxlLCR0YWJsZSk7DQogICAgaWYgKCEkZW50aXRpZXMpIHJldHVybiBmYWxzZTsNCiAgICAkcmVzdWx0PWFycmF5KCk7DQoNCiAgICBmb3JlYWNoICgkZW50aXRpZXMgYXMgJGVudGl0eSkgew0KDQogICAgICBpZiAoIWlzc2V0KCRlbnRpdHlbJGZpZWxkXSkpIGNvbnRpbnVlOw0KICAgICAgaWYgKCRhc3NvY2lkKSB7DQogICAgICAgICRyZXN1bHRbJGVudGl0eVskZmllbGRdXT0kZW50aXR5WyJlbnRpdHlpZCJdOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgJHJlc3VsdFtdPSRlbnRpdHlbJGZpZWxkXTsNCiAgICAgIH0NCg0KICAgIH0NCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KDQoNCiAgZnVuY3Rpb24gTWFrZUFzc29jQXJyYXkoJG1vZHVsZSwgJHRhYmxlLCAkZmllbGRzKSB7DQogICAgJGVudGl0aWVzPSR0aGlzLT5HZXRFbnRpdGllc0Z1bGwoJG1vZHVsZSwkdGFibGUpOw0KICAgIGlmICghJGVudGl0aWVzKSByZXR1cm4gZmFsc2U7DQogICAgJHJlc3VsdD1hcnJheSgpOw0KDQogICAgZm9yZWFjaCAoJGVudGl0aWVzIGFzICRlbnRpdHkpIHsNCiAgICAgIGZvcmVhY2ggKCRmaWVsZHMgYXMgJGluZGV4PT4kdmFsdWUpIHsNCiAgICAgICAgaWYgKCFpc3NldCgkZW50aXR5WyRpbmRleF0pIHx8ICFpc3NldCgkZW50aXR5WyR2YWx1ZV0pKSBjb250aW51ZTsNCg0KICAgICAgICAkcmVzdWx0WyRlbnRpdHlbJGluZGV4XV09JGVudGl0eVskdmFsdWVdOw0KICAgICAgfQ0KICAgIH0NCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KDQogIC8qDQogICAqDQogICAqIEZpZWxkc2V0IGZ1bmN0aW9ucw0KICAgKg0KICAqLw0KICBmdW5jdGlvbiBBZGRGaWVsZFNldCgkbW9kdWxlLCRuYW1lLCRmaWVsZHMpIHsNCiAgICBpZiAoIWlzX2FycmF5KCRmaWVsZHMpKSByZXR1cm4gJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBBZGRGaWVsZFNldDogXCRmaWVsZHMgaXMgbm90IGFuIGFycmF5IiwgZmFsc2UsIGFycmF5KCJuYW1lIj0+JG5hbWUpKTsNCiAgICBpZiAoZW1wdHkoJGZpZWxkcykpIHJldHVybiAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIEFkZEZpZWxkU2V0OiBcJGZpZWxkcyBpcyBhbiBlbXB0eSBhcnJheSIsIGZhbHNlLCBhcnJheSgibmFtZSI9PiRuYW1lKSk7DQogICAgJHRoaXMtPl9maWVsZHNldHNbJG1vZHVsZS4iXyIuJG5hbWVdPSRmaWVsZHM7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRGaWVsZFNldCgkbW9kdWxlLCAkbmFtZSkgew0KICAgIGlmICghaXNzZXQoJHRoaXMtPl9maWVsZHNldHNbJG1vZHVsZS4iXyIuJG5hbWVdKSkgcmV0dXJuICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gR2V0RmllbGRTZXQ6IGZpZWxkc2V0IGlzIG5vdCBwcmVzZW50IiwgZmFsc2UsIGFycmF5KCJuYW1lIj0+JG5hbWUpKTsNCiAgICByZXR1cm4gJHRoaXMtPl9maWVsZHNldHNbJG1vZHVsZS4iXyIuJG5hbWVdOw0KICB9DQoNCiAgZnVuY3Rpb24gRW50aXR5U2V0VW5zZXRQcm9wcygkbW9kdWxlLCRlbnRpdHksJGZpZWxkc2V0LCRmaWxsdmFsdWU9IiIpIHsNCiAgICAkZmllbGRzPSR0aGlzLT5HZXRGaWVsZFNldCgkbW9kdWxlLCAkZmllbGRzZXQpOw0KICAgIGlmICghJGZpZWxkcykgcmV0dXJuICRlbnRpdHk7DQogICAgZm9yZWFjaCgkZmllbGRzIGFzICRmaWVsZCkgew0KICAgICAgaWYgKCFpc3NldCgkZW50aXR5WyIkZmllbGQiXSkpIHsNCiAgICAgICAgJGVudGl0eVsiJGZpZWxkIl09JGZpbGx2YWx1ZTsNCiAgICAgIH0NCiAgICB9DQogICAgcmV0dXJuICRlbnRpdHk7DQogIH0NCg0KICAvKg0KICAgKg0KICAgKiBDb25uZWN0aW9uIGZ1bmN0aW9ucw0KICAgKg0KICAqLw0KDQogIGZ1bmN0aW9uIFNldEVudGl0eUNvbm5lY3Rpb24oJGlkMSwgJGlkMiwgJHR5cGU9IiIpIHsNCiAgICBpZiAoJHRoaXMtPkNoZWNrRW50aXR5Q29ubmVjdGlvbigkaWQxLCRpZDIsJHR5cGUpKSByZXR1cm4gdHJ1ZTsNCiAgICAkZGI9Y21zbXMoKS0+R2V0RGIoKTsNCiAgICAkc3FsPSJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX2Nvbm5lY3Rpb25zIChlbnRpdHlpZDEsZW50aXR5aWQyLHR5cGUpIFZBTFVFUyAoPyw/LD8pIjsNCiAgICAkdmFsdWVzPWFycmF5KCRpZDEsICRpZDIsICR0eXBlKTsNCiAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIGlmICghJHJlc3VsdCkgJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBTZXRFbnRpdHlDb25uZWN0aW9uOiBlcnJvciBzZXR0aW5nIGVudGl0eSBjb25uZWN0aW9uIixmYWxzZSxhcnJheSgiaWQxIj0+JGlkMSwiaWQyIj0+JGlkMikpOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gQ2xlYXJFbnRpdHlDb25uZWN0aW9ucygkaWQxLCAkaWQyPS0xLCAkdHlwZT0iIikgew0KICAgICRkYj1jbXNtcygpLT5HZXREYigpOw0KICAgIGlmICgkdHlwZT09IiIpIHsNCiAgICAgICRzcWw9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfY29ubmVjdGlvbnMgV0hFUkUgZW50aXR5aWQxPT8gT1IgZW50aXR5aWQyPT8iOw0KICAgICAgJHZhbHVlcz1hcnJheSgkaWQxLCAkaWQyKTsNCiAgICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgfSBlbHNlIHsNCiAgICAgICRzcWw9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfY29ubmVjdGlvbnMgV0hFUkUgKGVudGl0eWlkMT0/IEFORCB0eXBlPT8pIE9SIChlbnRpdHlpZDI9PyBBTkQgdHlwZT0/KSI7DQogICAgICAkdmFsdWVzPWFycmF5KCRpZDEsICR0eXBlLCAkaWQyLCAkdHlwZSk7DQogICAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIH0NCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KDQogIGZ1bmN0aW9uIENsZWFyRW50aXR5Q29ubmVjdGlvbigkaWQxLCAkaWQyLCAkdHlwZT0iIikgew0KICAgICRkYj1jbXNtcygpLT5HZXREYigpOw0KICAgIGlmICgkdHlwZT09IiIpIHsNCiAgICAgICRzcWw9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfY29ubmVjdGlvbnMgV0hFUkUgZW50aXR5aWQxPT8gQU5EIGVudGl0eWlkMj0/IjsNCiAgICAgICR2YWx1ZXM9YXJyYXkoJGlkMSwkaWQyKTsNCiAgICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgfSBlbHNlIHsNCiAgICAgICRzcWw9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfY29ubmVjdGlvbnMgV0hFUkUgZW50aXR5aWQxPT8gQU5EIGVudGl0eWlkMj0/IEFORCB0eXBlPT8iOw0KICAgICAgJHZhbHVlcz1hcnJheSgkaWQxLCRpZDIsJHR5cGUpOw0KICAgICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICB9DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KICBmdW5jdGlvbiBDaGVja0VudGl0eUNvbm5lY3Rpb24oJGlkMSwkaWQyLCR0eXBlPSIiLCRyZXR1cm52YWx1ZT10cnVlKSB7DQogICAgJGRiPWNtc21zKCktPkdldERiKCk7DQogICAgJHNxbD0iIjsNCiAgICAkdmFsdWVzPSIiOw0KICAgIGlmICgkdHlwZT09IiIpIHsNCiAgICAgICRzcWw9IlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9jb25uZWN0aW9ucyBXSEVSRSBlbnRpdHlpZDE9PyBBTkQgZW50aXR5aWQyPT8iOw0KICAgICAgJHZhbHVlcz1hcnJheSgkaWQxLCRpZDIpOw0KICAgIH0gZWxzZSB7DQogICAgICAkc3FsPSJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfY29ubmVjdGlvbnMgV0hFUkUgZW50aXR5aWQxPT8gQU5EIGVudGl0eWlkMj0/IEFORCB0eXBlPT8iOw0KICAgICAgJHZhbHVlcz1hcnJheSgkaWQxLCRpZDIsJHR5cGUpOw0KICAgIH0NCiAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIGlmICgkcmVzdWx0ICYmICgkcmVzdWx0LT5SZWNvcmRDb3VudCgpPjApKSB7DQogICAgICByZXR1cm4gJHJldHVybnZhbHVlOw0KICAgIH0NCiAgICByZXR1cm4gZmFsc2U7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRFbnRpdHlDb25uZWN0aW9ucygkaWQxPS0xLCAkaWQyPS0xLCAkYm90aHdheXM9dHJ1ZSwgJHR5cGU9IiIpIHsNCg0KICB9DQoNCiAgLyoNCiAgICoNCiAgICogRXJyb3IgaGFuZGxpbmcNCiAgICoNCiAgKi8NCiAgZnVuY3Rpb24gRXJyb3IoJGVycm9ydGV4dCwkcmV0dXJudmFsdWU9ZmFsc2UsJHBhcmFtcz1hcnJheSgpKSB7DQogICAgJHRoaXMtPl9lcnJvcnMuPSRlcnJvcnRleHQ7DQogICAgaWYgKCFlbXB0eSgkcGFyYW1zKSAmJiBpc19hcnJheSgkcGFyYW1zKSkgew0KICAgICAgJHRoaXMtPl9lcnJvcnMuPSIgKCI7DQogICAgICAkZmlyc3Q9dHJ1ZTsgLy9IYW5kbGluZyB0aGUgY29tbWENCiAgICAgIGZvcmVhY2ggKCRwYXJhbXMgYXMgJHBhcmFtPT4kdmFsdWUpIHsNCiAgICAgICAgaWYgKCRmaXJzdCkgJGZpcnN0PWZhbHNlOyBlbHNlICR0aGlzLT5fZXJyb3JzLj0iLCI7DQogICAgICAgICR0aGlzLT5fZXJyb3JzLj0kcGFyYW0uIj0+Ii4kdmFsdWUuIiwiOw0KICAgICAgfQ0KICAgICAgJHRoaXMtPl9lcnJvcnMuPSIpIjsNCiAgICB9DQogICAgJHRoaXMtPl9lcnJvcnMuPSJcbiI7DQogICAgcmV0dXJuICRyZXR1cm52YWx1ZTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldEVycm9ycygkbmwyYnI9dHJ1ZSwkY2xlYXI9dHJ1ZSkgew0KICAgICRlcnJvcnM9JHRoaXMtPl9lcnJvcnM7DQogICAgaWYgKCRubDJicikgew0KICAgICAgJGVycm9ycz1ubDJicigkZXJyb3JzKTsNCiAgICB9DQogICAgaWYgKCRjbGVhcikgew0KICAgICAgJHRoaXMtPl9lcnJvcnM9IiI7DQogICAgfQ0KICAgIHJldHVybiAkZXJyb3JzOw0KICB9DQoNCiAgZnVuY3Rpb24gT3V0cHV0RXJyb3JzKCRjbGVhcj10cnVlKSB7DQogICAgZWNobyAiXG5cbjxkaXYgc3R5bGU9J2JvcmRlcjozcHggc29saWQgcmVkPlxuIjsNCiAgICBlY2hvICR0aGlzLT5HZXRFcnJvcnModHJ1ZSwkY2xlYXIpOw0KICAgIGVjaG8gIlxuPC9kaXY+XG5cbiI7DQogIH0NCg0KICBmdW5jdGlvbiBJbkVycm9yKCkgew0KICAgIHJldHVybiAoJHRoaXMtPl9lcnJvcnMhPSIiKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldE1vZHVsZUxpc3QoKSB7DQogICAgJGRiPWNtc21zKCktPkdldERiKCk7DQogICAgJHNxbD0iU0VMRUNUIGVudGl0eW1vZHVsZSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2UiOw0KICAgICRkYnJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCk7DQogICAgaWYgKCEkZGJyZXN1bHQgfHwgKCRkYnJlc3VsdC0+UmVjb3JkQ291bnQoKT09MCkpIHsNCiAgICAgIHJldHVybiBhcnJheSgpOw0KICAgIH0NCiAgICAkcmVzdWx0PWFycmF5KCIiPT4iIik7DQogICAgd2hpbGUoJHJvdz0kZGJyZXN1bHQtPkZldGNoUm93KCkpIHsNCiAgICAgIGlmICghaW5fYXJyYXkoJHJvd1siZW50aXR5bW9kdWxlIl0sJHJlc3VsdCkpIHsNCiAgICAgICAgJHJlc3VsdFskcm93WyJlbnRpdHltb2R1bGUiXV09JHJvd1siZW50aXR5bW9kdWxlIl07DQogICAgICB9DQogICAgfQ0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCn0NCg0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/changelog.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPgo8bGk+MC4zLjIgLSBDb3JyZWN0b3IgZm9yIGNtc21zKCktdXNhZ2UgZXRjLiBmaXhlZCBidWdzIGRpc2NvdmVyZWQgYnkgUGhwU3Rvcm08L2xpPgo8bGk+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>
