<?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.2.0</version>
  <mincmsversion>1.6.5</mincmsversion>
	<help>PHN0cm9uZz5Ob3RpY2UhIFRoaXMgaXMgYSBtb2R1bGUtZGV2ZWxvcGVyLW9ubHkgbW9kdWxlLiBJZiB5b3UgYXJlIG5vdCBhIGRldmVsb3Blcgp5b3UnbGwgcHJvYmFibHkganVzdCB3YW50IHRvIHNraXAgdGhlIGdvcnkgZGV0YWlscyBvZiB0aGlzIHBhZ2UgYW5kIHJlbHkgb24gdGhhdAp0aGUgbW9kdWxlIGp1c3QgZG9lcyBpdCdzIHdvcmsuPC9zdHJvbmc+Cjxici8+PGJyLz4KPGgzPlB1cnBvc2Ugb2YgdGhlIG1vZHVsZTwvaDM+ClRoZSBwdXJwb3NlIG9mIHRoaXMgbW9kdWxlIGlzIHRvIHByb3ZpZGUgYSBuaWNlIGFuZCBjbGVhbiB3YXkgZm9yIG1vZHVsZXMKdG8gc3RvcmUgZGF0YSBpbiBhIHRhYmxlLWxpa2UgbWFubmVyIGJ1dCB3aXRob3V0IHRoZSBoYXp6bGUgb2YgY3JlYXRpbmcKc3BlY2lmaWMgdGFibGVzIGZvciBpdHNlbGYgYW5kIG1haW50YWluaW5nIHRoZXNlLgoKPGgzPkJ1dCBiZXdhcmUhPC9oMz4KSXQgc2hvdWxkIGJlIGVtcGhhc2l6ZWQKdGhhdCB0aGlzIG1vZHVsZSBpcyBub3QgaW50ZW5kZWQgZm9yIGV4dHJlbWVseSBkYXRhLWludGVuc2l2ZSBvcGVyYXRpb25zCmFzIGl0IHVzZXMgKGEgbG90KSBtb3JlIGRhdGFiYXNlLWNhbGxzIHRoYW4gY3VzdG9tLXdyaXR0ZW4gZGF0YSBhY2Nlc3MgZG9lcywKYnV0IGZvciBub24taW50ZW5zaXZlIHN0dWZmIGl0IHdpbGwgaG9wZWZ1bGx5IGN1dCBvZmYgc29tZSBvZiB0aGUgdGVkaW91cwoiaG91c2VrZWVwaW5nIiB3aGljaCBJIGdvdCByZWFsbHkgZmVkIHVwIHdpdGggaW4gYWxtb3N0IGV2ZXJ5IG1vZHVsZSBJJ3ZlIGRvbmUuCjxici8+ClNvLCB0aGF0J3MgaXQgZm9yIHRoZSBkaXNjbGFpbWVyLCBub3cgZm9yIHRoZSBBUEkgOi0pCjxici8+Cjxici8+CjxoMz5CYXNpYyB1c2Ugb2YgdGhlIG1vZHVsZTwvaDM+ClVzYWdlIG9mIHRoaXMgbW9kdWxlIGFsd2F5cyBzdGFydHMgb2ZmIHdpdGggZ2V0dGluZyBhbiBhY2Nlc3MgdG8gYW4gaW5zdGFuY2UKb2YgdGhlIG1vZHVsZS4gVGhlIG1vc3QgY29tbW9uIHdheSBvZiBkb2luZyB0aGlzIGlzIGNhbGxpbmcgc29tZXRoaW5nIGxpa2UKPHByZT4KCiRuZHM9JHRoaXMtPkdldE1vZHVsZUluc3RhbmNlKCJOZW9EYXRhU3RvcmFnZSIpOwoKPC9wcmU+CllvdSdsbCBwcm9iYWJseSB3YW50IHRvIG1ha2UgeW91ciBtb2R1bGUgZGVwZW5kYW50IG9mIHRoaXMgbW9kdWxlLCBidXQgeW91CnNob3VsZCBrbm93IGhvdyB0byBkbyB0aGlzLi4uCjxici8+CkFmdGVyIGFzc2lnbmluZyB0aGUgbW9kdWxlIHRvIGEgdmFyaWFibGUsIHlvdSBjYW4gc3RhcnQgdXNpbmcgaXQgd2l0aCBBUEktZnVuY3Rpb25zCmxpa2U6CjxwcmU+CgokbXlyZWNvcmQ9JG5kcy0+R2V0RW50aXRpZXMoIm15bW9kdWxlbmFtZSIsICJteXRhYmxlaWQiKTsKCjwvcHJlPgpXaGVyZSAibXltb2R1bGVuYW1lIiBpcyB0aGUgdW5pcXVlIGlkZW50aWZ5ZXIgb2YgeW91ciBtb2R1bGUsIGNvdWxkIGJlCnJlcGxhY2VkIHdpdGggJyR0aGlzLT5HZXROYW1lKCknLCBhbmQgIm15dGFibGVpZCIgaXMgYW4gaWRlbnRpZnllciBvZiB0aGUKdGFibGUgb2YgZGF0YSB3aGljaCB5b3Ugd2FudCB0byBhY2Nlc3MgaW4gdGhlIGRhdGFzdG9yYWdlIGZvciB5b3VyIG1vZHVsZS4KVGhpcyBjYW4gYmUgbGVmdCBibGFuayBpZiBvbmx5IG9uZSB0YWJsZSBpcyBuZWVkZWQgZm9yIHRoZSBtb2R1bGUuCjxici8+CkZvciBhIGNvbXBsZXRlIChyZWFkOiBzb210aW1lcyBjb21wbGV0ZSkgbGlzdCBvZiBtZXRob2RzIHNlZSBsaXN0IGJlbG93LgoKPGgzPlRoZSBOZW9Nb2R1bGUtc2lzdGVyPC9oMz4KQW5vdGhlciwgYW5kIGV2ZW4gZWFzaWVyLCB3YXkgdG8gdXNlIHRoZSBmdW5jdGlvbmFsaXR5IG9mIHRoaXMgbW9kdWxlCmlzIHRvIGxldCB5b3VyIG1vZHVsZSBkZXNjZW5kIGZyb20gYW5vdGhlciBwcm9qZWN0IG9mIG1pbmUsIHRoZSBOZW9Nb2R1bGUsCndoaWNoIHdyYXBzIGFsbCB0aGUgZnVuY3Rpb25zIG9mIE5lb0RhdGFTdG9yYWdlIGJ1dCByZW1vdmluZyB0aGUgbmVlZCBvZgpjb25zdGFudGx5IHN1cHBseWluZyB0aGUgJG1vZHVsZW5hbWUuIEl0IGFsc28gcHJvdmlkZXMgYSBzdGlsbC1ncm93aW5nIGxpc3Qgb2YKb3RoZXIgaGVscGVyLWZ1bmN0aW9ucyB3aGljaCBoYXMgdG8gZG8gd2l0aCBvdGhlciBzdHVmZiB0aGFuIERhdGFTdG9yYWdlLgo8YnIvPgpGb3IgZnVydGhlciBpbnN0cnVjdGlvbnMgb24gaG93IHRvIHVzZSB0aGUgTmVvTW9kdWxlLCBwbGVhc2UgaW5zdGFsbCBpdCBhbmQKY2hlY2sgb3V0IGl0J3MgaGVscC1wYWdlLgoKPGgzPkhvdyB0byBnZXQgaGVscDwvaDM+Ckkgd2lsbCByZXBlYXQsIHRoaXMgbW9kdWxlIGlzIGZvciBkZXZlbG9wZXJzIG9ubHkuIElmIHlvdSBjYW5ub3QgcmVhZCBwaHAtc291cmNlIGNvZGUsCnlvdSBzaG91bGQgdXNlIGl0IGZvciBkZXZlbG9wbWVudCBhbnl3YXkuIElmIHlvdSBjYW4sIGFsd2F5cyBjaGVjayBvdXQgdGhlIGNvZGUKZm9yIGhpbnRzIG9uIGhvdyB0byBtYWtlIGl0IHdvcmsuIElmIHlvdSBzdGlsbCBoYXZlIHF1ZXN0aW9ucyBvciBzdWdnZXN0aW9ucyBmb3IKZml4ZXMvaW1wcm92ZW1lbnRzLCBwbGVhc2UgZmVlbCBmcmVlIHRvIGNhdGNoIG1lIChTaWxtYXJpbGxpb24pIGluIHRoZSBmb3J1bSBvZyAjaXJjLgoKCjxoMz5MaXN0IG9mIG1ldGhvZHM8L2gzPgo8cHJlPgovKgogKgogKiBFbnRpdHkgZnVuY3Rpb25zCiAqCiAqLwpmdW5jdGlvbiBBZGRFbnRpdHkoJG1vZHVsZSwgJHRhYmxlLCAkcHJvcHM9YXJyYXkoKSkKZnVuY3Rpb24gRGVsZXRlRW50aXR5KCRpZCkKZnVuY3Rpb24gR2V0RW50aXR5V2l0aFR5cGUoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpKQpmdW5jdGlvbiBHZXRFbnRpdHkoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpLCAkd2l0aHR5cGU9ZmFsc2UpCmZ1bmN0aW9uIEdldEVudGl0aWVzKCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpCmZ1bmN0aW9uIEdldE9uZUVudGl0eSgkbW9kdWxlLCAkdGFibGUsICRjcml0ZXJpYT1hcnJheSgpLCAkZmFpbGlmbXVsdGlwbGU9ZmFsc2UpCmZ1bmN0aW9uIEdldEVudGl0aWVzRnVsbCgkbW9kdWxlLCAkdGFibGU9IiIsICRjcml0ZXJpYT1hcnJheSgpKQpmdW5jdGlvbiBFbnRpdGllc0NvdW50KCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpCmZ1bmN0aW9uIFNldEVudGl0eVByb3AoJGlkLCRwcm9wbmFtZSwkcHJvcHZhbHVlLCRwcm9wdHlwZT0idW5kZWZpbmVkIikKZnVuY3Rpb24gQ2xlYXJFbnRpdHkoJGlkKQpmdW5jdGlvbiBDbGVhck1vZHVsZUVudGl0aWVzKCRtb2R1bGUpCmZ1bmN0aW9uIENsZWFyRW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSkKZnVuY3Rpb24gQ2xlYXJFbnRpdHlQcm9wcygkaWQpCmZ1bmN0aW9uIFNldEVudGl0eVByb3BzKCRpZCwgJHByb3BzLCAkY2xlYXI9dHJ1ZSkKZnVuY3Rpb24gU2V0RW50aXR5UHJvcHNPbkNyaXRlcmlhKCRtb2R1bGUsJHRhYmxlLCAkcHJvcHMsICRjcml0ZXJpYSwgJGNyZWF0ZT10cnVlLCAkY2xlYXI9ZmFsc2UpIC8vRG9lcyBub3Qgd29yayEKZnVuY3Rpb24gUmVzZXRFbnRpdHlQcm9wcygkaWQsICRuZXdwcm9wcz1hcnJheSgpKQpmdW5jdGlvbiBSZW1vdmVNb2R1bGVFbnRpdGllcygkbW9kdWxlbmFtZSkKCi8qCiAqCiAqIFNvcnRpbmcgZnVuY3Rpb25zCiAqCiAqLwpmdW5jdGlvbiBDb21wYXJlRW50aXRpZXMoJGVudGl0eTEsICRlbnRpdHkyLCAkc29ydGZpZWxkKQpmdW5jdGlvbiBDb21wYXJlRW50aXRpZXNDb21wbGV4KCRlbnRpdHkxLCAkZW50aXR5MiwgJHNvcnRmaWVsZHM9YXJyYXkoKSkgLy9Eb2VzIG5vdCB3b3JrCmZ1bmN0aW9uIFNvcnRFbnRpdGllcygkbGlzdCwgJHNvcnRmaWVsZHM9YXJyYXkoKSBvciBzdHJpbmcpIC8vT25seSB3b3JrcyBvbiBzdHJpbmdzCmZ1bmN0aW9uIE1ha2VTaW1wbGVBcnJheSgkbW9kdWxlLCAkdGFibGUsICRmaWVsZCkKZnVuY3Rpb24gTWFrZUFzc29jQXJyYXkoJG1vZHVsZSwgJHRhYmxlLCAkZmllbGRzKQoKLyoKICoKICogRmllbGRzZXQgZnVuY3Rpb25zCiAqCiAqLwpmdW5jdGlvbiBBZGRGaWVsZFNldCgkbW9kdWxlLCRuYW1lLCRmaWVsZHMpCmZ1bmN0aW9uIEdldEZpZWxkU2V0KCRtb2R1bGUsICRuYW1lKQpmdW5jdGlvbiBFbnRpdHlTZXRVbnNldFByb3BzKCRtb2R1bGUsJGVudGl0eSwkZmllbGRzZXQsJGZpbGx2YWx1ZT0iIikKCi8qCiAqCiAqIENvbm5lY3Rpb24gZnVuY3Rpb25zCiAqCiAqLwpmdW5jdGlvbiBTZXRFbnRpdHlDb25uZWN0aW9uKCRpZDEsICRpZDIsICR0eXBlPSIiKQpmdW5jdGlvbiBDbGVhckVudGl0eUNvbm5lY3Rpb25zKCRpZDEsICRpZDI9LTEsICR0eXBlPSIiKQpmdW5jdGlvbiBDbGVhckVudGl0eUNvbm5lY3Rpb24oJGlkMSwgJGlkMiwgJHR5cGU9IiIpCmZ1bmN0aW9uIENoZWNrRW50aXR5Q29ubmVjdGlvbigkaWQxLCRpZDIsJHR5cGU9IiIpCmZ1bmN0aW9uIEdldEVudGl0eUNvbm5lY3Rpb25zKCRpZDE9LTEsICRpZDI9LTEsICRib3Rod2F5cz10cnVlLCAkdHlwZT0iIikgLy9Eb2VzIG5vdCB3b3JrCgovKgogKgogKiBFcnJvciBoYW5kbGluZwogKgogKi8KZnVuY3Rpb24gRXJyb3IoJGVycm9ydGV4dCwkcmV0dXJudmFsdWU9ZmFsc2UsJHBhcmFtcz1hcnJheSgpKQpmdW5jdGlvbiBHZXRFcnJvcnMoJG5sMmJyPXRydWUsJGNsZWFyPXRydWUpCmZ1bmN0aW9uIFNob3dFcnJvcnMoJGNsZWFyPXRydWUpCmZ1bmN0aW9uIEluRXJyb3IoKSA6IGJvb2wKPC9wcmU+PGgzPlBhcmFtZXRyZTwvaDM+PHVsPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGxhbmc9ImVuX1VTIiAtIFBhcmFtZXRyZXQgYW5naXZlciBodmlsa2V0IHNwcm9nIGRlciBza2FsIGJydWdlcyB0aWwgdmlzbmluZyBmb3IgYmVzJm9zbGFzaDtnZW5kZS4gSWtrZSBhbGxlIG1vZHVsZXIgdW5kZXJzdCZvc2xhc2g7dHRlciBlbGxlciBiZWgmb3NsYXNoO3ZlciBkZXR0ZS48L2xpPjwvdWw+</help>
	<about>PGJyIC8+TGF2ZXQgYWY6IE1vcnRlbiBwb3Vsc2VuICZsdDttb3J0ZW5AcG91bHNlbi5vcmcmZ3Q7PGJyIC8+PGJyIC8+VmVyc2lvbjogMC4yLjA8YnIgLz48YnIgLz5IaXN0b3JpayBvdmVyICZhZWxpZztuZHJpbmdlcjo8YnIgLz48dWw+CjxsaT4wLjIuMCAtIEZpeGVkIHJlc2V0IGZpbHRlciBidXR0b24sIG1hZGUgZmlsdGVyaW5nIG9uIG1vZHVsZSBiYXNlZCBvbiBhIGRyb3Bkb3duLCBidWdmaXhlczwvbGk+CjxsaT4wLjEuMCAtIEluaXRpYWwgcmVsZWFzZTwvbGk+CjwvdWw+PGJyIC8+</about>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7DQppZiAoISR0aGlzLT5WaXNpYmxlVG9BZG1pblVzZXIoKSkgZXhpdDsNCg0KaWYgKGlzc2V0KCRwYXJhbXNbImFwcGx5ZmlsdGVyIl0pKSB7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJpZGZpbHRlciIsJHBhcmFtc1siaWRmaWx0ZXIiXSk7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJtb2R1bGVmaWx0ZXIiLCRwYXJhbXNbIm1vZHVsZWZpbHRlciJdKTsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoInRhYmxlZmlsdGVyIiwkcGFyYW1zWyJ0YWJsZWZpbHRlciJdKTsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoInByb3BmaWx0ZXIiLCRwYXJhbXNbInByb3BmaWx0ZXIiXSk7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJ2YWx1ZWZpbHRlciIsJHBhcmFtc1sidmFsdWVmaWx0ZXIiXSk7DQp9DQppZiAoaXNzZXQoJHBhcmFtc1sicmVzZXRmaWx0ZXIiXSkpIHsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoImlkZmlsdGVyIiwiIik7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJtb2R1bGVmaWx0ZXIiLCIiKTsNCiAgJHRoaXMtPlNldFByZWZlcmVuY2UoInRhYmxlZmlsdGVyIiwiIik7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJwcm9wZmlsdGVyIiwiIik7DQogICR0aGlzLT5TZXRQcmVmZXJlbmNlKCJ2YWx1ZWZpbHRlciIsIiIpOw0KfQ0KDQoNCiRkYj0kdGhpcy0+R2V0RGIoKTsNCiRzcWw9IlNFTEVDVCAqIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZSI7DQokcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsKTsNCiRyb3dzPWFycmF5KCk7DQokdG90YWxjb3VudD0kcmVzdWx0LT5SZWNvcmRDb3VudCgpOw0KaWYgKCRyZXN1bHQgJiYgKCRyZXN1bHQtPlJlY29yZENvdW50KCk+MCkpIHsNCg0KICB3aGlsZSgkcm93PSRyZXN1bHQtPkZldGNoUm93KCkpIHsNCiAgICAkcHJvcHM9JHRoaXMtPkdldEVudGl0eSgkcm93WyJlbnRpdHlpZCJdKTsNCiAgICBpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoImlkZmlsdGVyIikhPSIiKSB7DQogICAgICBpZiAoIWVyZWdpKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJpZGZpbHRlciIpLCRyb3dbImVudGl0eWlkIl0pKSBjb250aW51ZTsNCiAgICB9DQogICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJtb2R1bGVmaWx0ZXIiKSE9IiIpIHsNCiAgICAgIGlmICghZXJlZ2koJHRoaXMtPkdldFByZWZlcmVuY2UoIm1vZHVsZWZpbHRlciIpLCRyb3dbImVudGl0eW1vZHVsZSJdKSkgY29udGludWU7DQogICAgfQ0KICAgIGlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgidGFibGVmaWx0ZXIiKSE9IiIpIHsNCiAgICAgIGlmICghZXJlZ2koJHRoaXMtPkdldFByZWZlcmVuY2UoInRhYmxlZmlsdGVyIiksJHJvd1siZW50aXR5dGFibGUiXSkpIGNvbnRpbnVlOw0KICAgIH0NCg0KDQogICAgZm9yZWFjaCAoJHByb3BzIGFzICRwcm9wbmFtZT0+JHByb3B2YWx1ZSkgew0KICAgICAgaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJwcm9wZmlsdGVyIikhPSIiKSB7DQogICAgICAgIGlmICghZXJlZ2koJHRoaXMtPkdldFByZWZlcmVuY2UoInByb3BmaWx0ZXIiKSwkcHJvcG5hbWUpKSBjb250aW51ZTsNCiAgICAgIH0NCiAgICAgIGlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgidmFsdWVmaWx0ZXIiKSE9IiIpIHsNCiAgICAgICAgaWYgKCFlcmVnaSgkdGhpcy0+R2V0UHJlZmVyZW5jZSgidmFsdWVmaWx0ZXIiKSwkcHJvcHZhbHVlKSkgY29udGludWU7DQogICAgICB9DQogICAgICAkb25lcm93ID0gbmV3IHN0ZENsYXNzKCk7DQogICAgICAkb25lcm93LT5pZD0kcm93WyJlbnRpdHlpZCJdOw0KICAgICAgJG9uZXJvdy0+bW9kdWxlPSRyb3dbImVudGl0eW1vZHVsZSJdOw0KICAgICAgJG9uZXJvdy0+dGFibGU9JHJvd1siZW50aXR5dGFibGUiXTsNCiAgICAgICRvbmVyb3ctPnByb3BuYW1lPSRwcm9wbmFtZTsNCiAgICAgICRvbmVyb3ctPnByb3B2YWx1ZT0kcHJvcHZhbHVlOw0KICAgICAgYXJyYXlfcHVzaCgkcm93cywgJG9uZXJvdyk7DQogICAgfQ0KICAgIGlmIChjb3VudCgkcm93cyk+NTAwKSB7DQogICAgICAkdGhpcy0+c21hcnR5LT5hc3NpZ24oInRvb21hbnlyb3dzIiwkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygidG9vbWFueXJvd3MiKSkpOw0KICAgICAgYnJlYWs7DQogICAgfQ0KICB9DQp9DQokdGhpcy0+c21hcnR5LT5hc3NpZ25fYnlfcmVmKCdpdGVtcycsICRyb3dzKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbl9ieV9yZWYoJ21vZCcsICR0aGlzKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbignaXRlbWNvdW50JywgY291bnQoJHJvd3MpKTsNCg0KDQovKkZpbHRlciovDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oImZvcm1zdGFydCIsJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsImRlZmF1bHRhZG1pbiIpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigiZm9ybWVuZCIsJHRoaXMtPkNyZWF0ZUZvcm1FbmQoJGlkKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oImFwcGx5ZmlsdGVyIiwkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCJhcHBseWZpbHRlciIsJHRoaXMtPkxhbmcoImFwcGx5ZmlsdGVyIikpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigicmVzZXRmaWx0ZXIiLCR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsInJlc2V0ZmlsdGVyIiwkdGhpcy0+TGFuZygicmVzZXRmaWx0ZXIiKSkpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCJpZGZpbHRlcmlucHV0IiwkdGhpcy0+Q3JlYXRlSW5wdXR0ZXh0KCRpZCwiaWRmaWx0ZXIiLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJpZGZpbHRlciIpKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oIm1vZHVsZWZpbHRlcmlucHV0IiwkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsIm1vZHVsZWZpbHRlciIsJHRoaXMtPkdldE1vZHVsZUxpc3QoKSwgIiIsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCJtb2R1bGVmaWx0ZXIiKSkpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCJ0YWJsZWZpbHRlcmlucHV0IiwkdGhpcy0+Q3JlYXRlSW5wdXR0ZXh0KCRpZCwidGFibGVmaWx0ZXIiLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJ0YWJsZWZpbHRlciIpKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oInByb3BmaWx0ZXJpbnB1dCIsJHRoaXMtPkNyZWF0ZUlucHV0dGV4dCgkaWQsInByb3BmaWx0ZXIiLCR0aGlzLT5HZXRQcmVmZXJlbmNlKCJwcm9wZmlsdGVyIikpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigidmFsdWVmaWx0ZXJpbnB1dCIsJHRoaXMtPkNyZWF0ZUlucHV0dGV4dCgkaWQsInZhbHVlZmlsdGVyIiwkdGhpcy0+R2V0UHJlZmVyZW5jZSgidmFsdWVmaWx0ZXIiKSkpOw0KDQovLyR0aGlzLT5TbWFydHlGb3JtU3RhcnQoImRlZmF1bHRhZG1pbiIsYXJyYXkoIm5hbWUiPT4ic3VibWl0ZmlsdGVyIiwidmFsdWUiPT4kdGhpcy0+TGFuZygiYXBwbHlmaWx0ZXIiKSkpOw0KLy8kdGhpcy0+U21hcnR5Rm9ybVN0YXJ0KCJkZWZhdWx0YWRtaW4iLGFycmF5KCJuYW1lIj0+InJlc2V0ZmlsdGVyIiwidmFsdWUiPT4kdGhpcy0+TGFuZygicmVzZXRmaWx0ZXIiKSkpOw0KDQplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ3Nob3dkYXRhLnRwbCcpOw0KDQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbImZyaWVuZGx5bmFtZSJdPSJOZW8gRGF0YSBTdG9yYWdlIjsKJGxhbmdbImluc3RhbGxlZCJdPSJOZW8gRGF0YSBTdG9yYWdlIGhhcyBiZWVuIHN1Y2Nlc3NmdWxseSBpbnN0YWxsZWQiOwokbGFuZ1sidW5pbnN0YWxsZWQiXT0iTmVvIERhdGEgU3RvcmFnZSBoYXMgYmVlbiBzdWNjZXNzZnVsbHkgdW5pbnN0YWxsZWQiOwokbGFuZ1sibm9kYXRhIl09Ik5vIGRhdGEiOwoKJGxhbmdbImlkZmlsdGVyIl09IkVudGl0eSBJRCBpcyI7CiRsYW5nWyJtb2R1bGVmaWx0ZXIiXT0iTW9kdWxlIGlzIjsKJGxhbmdbInRhYmxlZmlsdGVyIl09IlRhYmxlbmFtZSBjb250YWlucyI7CiRsYW5nWyJwcm9wZmlsdGVyIl09IlByb3BlcnR5bmFtZSBjb250YWlucyI7CiRsYW5nWyJ2YWx1ZWZpbHRlciJdPSJWYWx1ZSBjb250YWlucyI7CiRsYW5nWyJhcHBseWZpbHRlciJdPSJBcHBseSBmaWx0ZXIiOwokbGFuZ1sicmVzZXRmaWx0ZXIiXT0iUmVzZXQgZmlsdGVyIjsKJGxhbmdbInNob3dmaWx0ZXJzIl09IlNob3cgZmlsdGVycyI7CiRsYW5nWyJmaWx0ZXJzIl09IkZpbHRlcnMiOwokbGFuZ1sicm93c2ZvdW5kIl09InJvd3MgZm91bmQiOwokbGFuZ1sidG9vbWFueXJvd3MiXT0iVG9vIG1hbnkgcm93cyBmb3VuZCwgbmFycm93IGl0IGRvd24gdXNpbmcgZmlsdGVycyI7CgoKPz4=]]></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/nb_NO.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ05FTyBEYXRhIFN0b3JhZ2UgJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ05FTyBEYXRhIFN0b3JhZ2UgaGFyIGJsaXR0IGluc3RhbGxlcnQnOwokbGFuZ1sndW5pbnN0YWxsZWQnXSA9ICdORU8gRGF0YSBTdG9yYWdlIGhhciBibGl0dCBhdmluc3RhbGxlcnQnOwokbGFuZ1snbm9kYXRhJ10gPSAnSW5nZW4gZGF0YSc7CiRsYW5nWydpZGZpbHRlciddID0gJ0VudGl0ZXRzIElEJiMwMzk7ZW4gZXInOwokbGFuZ1snbW9kdWxlZmlsdGVyJ10gPSAnTW9kdWxlbiBlcic7CiRsYW5nWyd0YWJsZWZpbHRlciddID0gJ1RhYmJlbGxuYXZuZXQgaW5uZWhvbGRlcic7CiRsYW5nWydwcm9wZmlsdGVyJ10gPSAnRWdlbnNrYXBzbmF2bmV0IGlubmVob2xkZXInOwokbGFuZ1sndmFsdWVmaWx0ZXInXSA9ICdWZXJkaSBpbm5laG9sZGVyJzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnU2wmYXJpbmc7IHAmYXJpbmc7IGZpbHRlcic7CiRsYW5nWydyZXNldGZpbHRlciddID0gJ1RpbGJha2VzdGlsbCBmaWx0ZXInOwokbGFuZ1snc2hvd2ZpbHRlcnMnXSA9ICdWaXMgZmlsdHJlJzsKJGxhbmdbJ2ZpbHRlcnMnXSA9ICdGaWx0cmUnOwokbGFuZ1sncm93c2ZvdW5kJ10gPSAncmFkZXIgZnVubmV0JzsKJGxhbmdbJ3Rvb21hbnlyb3dzJ10gPSAnRm9yIG1hbmdlIHJhZGVyIGZ1bm5ldCwgYmVncmVucyBkZXR0ZSB2ZWQgJmFyaW5nOyBiZW55dHRlIGZpbHRyZSc7CiRsYW5nWyd1dG16J10gPSAnMTU2ODYxMzUzLjEyNDUxOTAxOTYuMTQ0NC4zNi51dG1jc3I9dGhlbWVzLmNtc21hZGVzaW1wbGUub3JnfHV0bWNjbj0ocmVmZXJyYWwpfHV0bWNtZD1yZWZlcnJhbHx1dG1jY3Q9L2Rvd25sb2FkX3RoZW1lcy5odG1sJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuMTc5MDUyNjIzMDg0MTEwMTAwLjEyMTA0MjM1NzcuMTI0NzM4Mjg2MC4xMjQ3Mzk0MjE5LjE1NjMnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7CiRsYW5nWyd1dG1iJ10gPSAnMTU2ODYxMzUzJzsKPz4=]]></data>
	</file>
	<file>
	  <filename>/lang/ext/nl_NL.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ05FTyBEYXRhIFN0b3JhZ2UgJzsKJGxhbmdbJ2luc3RhbGxlZCddID0gJ05FTyBEYXRhIFN0b3JhZ2UgbW9kdWxlIGlzIGdlJml1bWw7bnN0YWxsZWVyZCc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ05FTyBEYXRhIFN0b3JhZ2UgbW9kdWxlIGlzIHZlcndpamRlcmQnOwokbGFuZ1snbm9kYXRhJ10gPSAnR2VlbiBkYXRhJzsKJGxhbmdbJ2lkZmlsdGVyJ10gPSAnRW50aXR5IElkIGlzJzsKJGxhbmdbJ21vZHVsZWZpbHRlciddID0gJ01vZHVsZSBpcyAnOwokbGFuZ1sndGFibGVmaWx0ZXInXSA9ICdUYWJlbG5hYW0gYmV2YXQnOwokbGFuZ1sncHJvcGZpbHRlciddID0gJ0VpZ2Vuc2NoYXBuYWFtIGJldmF0JzsKJGxhbmdbJ3ZhbHVlZmlsdGVyJ10gPSAnV2FhcmRlIGJldmF0JzsKJGxhbmdbJ2FwcGx5ZmlsdGVyJ10gPSAnRmlsdGVyIHRvZXBhc3Nlbic7CiRsYW5nWydyZXNldGZpbHRlciddID0gJ0ZpbHRlciBoZXJzdGVsbGVuJzsKJGxhbmdbJ3Nob3dmaWx0ZXJzJ10gPSAnVG9vbiBmaWx0ZXJzJzsKJGxhbmdbJ2ZpbHRlcnMnXSA9ICdGaWx0ZXJzICc7CiRsYW5nWydyb3dzZm91bmQnXSA9ICdyZWdlbHMgZ2V2b25kZW4nOwokbGFuZ1sndG9vbWFueXJvd3MnXSA9ICdUZSB2ZWVsIHJlZ2VscyBnZXZvbmRlbiwgcGFzIGVlbiBmaWx0ZXIgdG9lJzsKJGxhbmdbJ3V0bWEnXSA9ICcxNTY4NjEzNTMuNzA2NzkyMTcyMzc0MDYxMjAwLjEyNDU3MDMzMjkuMTI0NzQzMTUzNC4xMjQ3NDY1Nzc3LjI1JzsKJGxhbmdbJ3V0bXonXSA9ICcxNTY4NjEzNTMuMTI0NTcwMzMyOS4xLjEudXRtY3NyPShkaXJlY3QpfHV0bWNjbj0oZGlyZWN0KXx1dG1jbWQ9KG5vbmUpJzsKJGxhbmdbJ3V0bWInXSA9ICcxNTY4NjEzNTMnOwokbGFuZ1sndXRtYyddID0gJzE1Njg2MTM1Myc7Cj8+]]></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[PD9waHANCi8qDQogIyBOZW9EYXRhU3RvcmFnZS4gQW4gZ2VuZXJhbCBwdXJwb3NlIGRhdGFzdG9yYWdlIG1vZHVsZWNsYXNzIGZvciBDTVMgTWFkZSBTaW1wbGUNCiAjIChjKTIwMDkgYnkgTW9ydGVuIFBvdWxzZW4gKG1vcnRlbkBwb3Vsc2VuLm9yZykNCiAjDQogI0NNUyAtIENNUyBNYWRlIFNpbXBsZQ0KICMoYykyMDA0LTA5IGJ5IFRlZCBLdWxwICh3aXNoeUB1c2Vycy5zZi5uZXQpDQogI1RoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vY21zbWFkZXNpbXBsZS5zZi5uZXQNCiAjDQogI1RoaXMgcHJvamVjdCdzIGhvbWVwYWdlIGlzOiBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnDQogIw0KICNUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KICNpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KICN0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcg0KICMoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KICMNCiAjVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQogI2J1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQogI01FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCiAjR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiAjWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiAjYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUNCiAjRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlLCBTdWl0ZSAzMzAsIEJvc3RvbiwgTUEgIDAyMTExLTEzMDcgIFVTQQ0KICMNCiAjJElkJA0KICMNCiAqLw0KaWYgKCFmdW5jdGlvbl9leGlzdHMoImlzX2Fzc29jIikpIHsNCiAgZnVuY3Rpb24gaXNfYXNzb2MoJGFycmF5KSB7DQogICAgcmV0dXJuIChpc19hcnJheSgkYXJyYXkpICYmIDAgIT09IGNvdW50KGFycmF5X2RpZmZfa2V5KCRhcnJheSwgYXJyYXlfa2V5cyhhcnJheV9rZXlzKCRhcnJheSkpKSkpOw0KICB9DQp9DQoNCmNsYXNzIE5lb0RhdGFTdG9yYWdlIGV4dGVuZHMgQ01TTW9kdWxlIHsNCiAgdmFyICRfc29ydGZpZWxkczsNCiAgdmFyICRfZmllbGRzZXRzPWFycmF5KCk7DQogIHZhciAkX2Vycm9ycz0iIjsNCg0KICBmdW5jdGlvbiBHZXROYW1lKCkgew0KICAgIHJldHVybiAnTmVvRGF0YVN0b3JhZ2UnOw0KICB9DQoNCiAgZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lKCkgew0KICAgIHJldHVybiAkdGhpcy0+TGFuZygiZnJpZW5kbHluYW1lIik7DQogIH0NCg0KICBmdW5jdGlvbiBIYXNBZG1pbigpIHsNCiAgICByZXR1cm4gdHJ1ZTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldFZlcnNpb24oKQl7DQogICAgcmV0dXJuICcwLjIuMCc7DQogIH0NCg0KICBmdW5jdGlvbiBIYXNDYXBhYmlsaXR5KCRjYXBhYmlsaXR5LCAkcGFyYW1zPWFycmF5KCkpIHsNCiAgICBpZiAoJGNhcGFiaWxpdHk9PSJkYXRhc3RvcmFnZSIpIHJldHVybiB0cnVlOw0KICAgIHJldHVybiBmYWxzZTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldEhlbHAoKSB7DQogICAgcmV0dXJuICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2hlbHAudHBsJyk7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRBdXRob3IoKSB7DQogICAgcmV0dXJuICdNb3J0ZW4gcG91bHNlbic7DQogIH0NCg0KDQogIGZ1bmN0aW9uIEdldEF1dGhvckVtYWlsKCkgew0KICAgIHJldHVybiAnbW9ydGVuQHBvdWxzZW4ub3JnJzsNCiAgfQ0KDQoNCiAgZnVuY3Rpb24gR2V0Q2hhbmdlTG9nKCkgew0KICAgIHJldHVybiAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdjaGFuZ2Vsb2cudHBsJyk7DQogIH0NCg0KICBmdW5jdGlvbiBWaXNpYmxlVG9BZG1pblVzZXIoKSB7DQogICAgcmV0dXJuICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ2FjY2Vzc25lb2RhdGFzdG9yYWdlJyk7DQogIH0NCg0KICAvKg0KICAgKg0KICAgKiBBUEktZnVuY3Rpb25zDQogICAqDQogICAqLw0KDQogIGZ1bmN0aW9uIEFkZEVudGl0eSgkbW9kdWxlLCAkdGFibGUsICRwcm9wcz1hcnJheSgpKSB7DQogICAgJGRiPSR0aGlzLT5HZXREYigpOw0KICAgICRuZXdpZD0kZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX3NlcSIpOw0KDQogICAgJHNxbD0iSU5TRVJUIElOVE8gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZSAoZW50aXR5aWQsZW50aXR5bW9kdWxlLGVudGl0eXRhYmxlKSBWQUxVRVMgKD8sPyw/KSI7DQogICAgJHZhbHVlcz1hcnJheSgkbmV3aWQsJG1vZHVsZSwkdGFibGUpOw0KICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkcmVzdWx0KSByZXR1cm4gJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBBZGRFbnRpdHk6IGVycm9yIGFkZGluZyBlbnRpdHkiLGZhbHNlLGFycmF5KCRwcm9wcykpOw0KDQogICAgaWYgKCFlbXB0eSgkcHJvcHMpKSB7DQogICAgICAvL2VjaG8gImhlcmUiOw0KICAgICAgJHRoaXMtPlNldEVudGl0eVByb3BzKCRuZXdpZCwgJHByb3BzLCBmYWxzZSk7DQogICAgfQ0KDQogICAgcmV0dXJuICRuZXdpZDsNCiAgfQ0KDQogIGZ1bmN0aW9uIERlbGV0ZUVudGl0eSgkaWQpIHsNCiAgICAkdGhpcy0+Q2xlYXJFbnRpdHlQcm9wcygkaWQpOw0KICAgICR0aGlzLT5DbGVhckVudGl0eUNvbm5lY3Rpb25zKCRpZCk7DQogICAgJGRiPSR0aGlzLT5HZXREYigpOw0KDQogICAgJHNxbD0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZSBXSEVSRSBlbnRpdHlpZD0/IjsNCiAgICAkdmFsdWVzPWFycmF5KCRpZCk7DQogICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICBpZiAoISRyZXN1bHQpICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gRGVsZXRlRW50aXR5OiBlcnJvciBkZWxldGluZyBlbnRpdHkiLGZhbHNlLGFycmF5KCJpZCI9PiRpZCkpOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gR2V0RW50aXR5V2l0aFR5cGUoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpKSB7DQogICAgcmV0dXJuICR0aGlzLT5HZXRFbnRpdHkoJGlkLCAkb3ZlcnJpZGVwcm9wcywgdHJ1ZSk7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRFbnRpdHkoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpLCAkZmlsbGZpZWxkcz1hcnJheSgpLCAkd2l0aHR5cGU9ZmFsc2UpIHsNCiAgICAkZGI9JHRoaXMtPkdldERiKCk7DQoNCiAgICAkc3FsPSJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfcHJvcHMgV0hFUkUgZW50aXR5aWQ9PyI7DQogICAgJHZhbHVlcz1hcnJheSgkaWQpOw0KICAgICRkYnJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICBpZiAoISRkYnJlc3VsdCB8fCAoJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpPT0wKSkgew0KICAgICAgaWYgKCEkcmVzdWx0KSAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIEdldEVudGl0eTogZXJyb3IgZ2V0dGluZyBlbnRpdHkiLGZhbHNlLGFycmF5KCJpZCI9PiRpZCkpOw0KICAgICAgcmV0dXJuIGZhbHNlOw0KICAgIH0NCiAgICAkcmVzdWx0PWFycmF5KCk7DQogICAgd2hpbGUoJHJvdz0kZGJyZXN1bHQtPkZldGNoUm93KCkpIHsNCiAgICAgIGlmICgkd2l0aHR5cGUpIHsNCiAgICAgICAgJHJlc3VsdFskcm93WyJwcm9wbmFtZSJdXT1hcnJheSgidmFsdWUiPT4kcm93WyJwcm9wdmFsdWUiXSwidHlwZSI9PiRyb3dbInByb3B0eXBlIl0pOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgJHJlc3VsdFskcm93WyJwcm9wbmFtZSJdXT0kcm93WyJwcm9wdmFsdWUiXTsNCiAgICAgIH0NCiAgICAgIGlmIChpc3NldCgkb3ZlcnJpZGVwcm9wc1skcm93WyJwcm9wbmFtZSJdXSkpIHsNCg0KICAgICAgICBpZiAoJHdpdGh0eXBlKSB7DQogICAgICAgICAgLy9Ob3cgdGhpcyBpcyBqdXN0IGJlYXRpZnVsDQogICAgICAgICAgJHJlc3VsdFskcm93WyJwcm9wbmFtZSJdXT0kb3ZlcnJpZGVwcm9wc1skcm93WyJwcm9wbmFtZSJdXTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAkcmVzdWx0WyRyb3dbInByb3BuYW1lIl1dPWFycmF5KCJ2YWx1ZSI9PiRvdmVycmlkZXByb3BzWyRyb3dbInByb3BuYW1lIl1dLCJ0eXBlIj0+InVua25vd24iKTsNCiAgICAgICAgfQ0KDQogICAgICB9DQogICAgfQ0KICAgICRyZXN1bHRbImlkIl09JGlkOw0KICAgICRyZXN1bHRbImVudGl0eWlkIl09JGlkOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gR2V0RW50aXRpZXMoJG1vZHVsZSwgJHRhYmxlPSIiLCAkY3JpdGVyaWE9YXJyYXkoKSkgew0KICAgICRkYj0kdGhpcy0+R2V0RGIoKTsNCiAgICAvL2VjaG8gJG1vZHVsZTsgZWNobyAkdGFibGU7ZGllKCk7DQogICAgJHNxbD0iU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlIFdIRVJFIGVudGl0eW1vZHVsZT0/IjsNCiAgICAkdmFsdWVzPWFycmF5KCRtb2R1bGUpOw0KICAgIGlmICgkdGFibGUhPSIiKSB7DQogICAgICAkc3FsLj0iIEFORCBlbnRpdHl0YWJsZT0/IjsNCiAgICAgICR2YWx1ZXM9YXJyYXkoJG1vZHVsZSwkdGFibGUpOw0KICAgIH0NCg0KICAgICRkYnJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICBpZiAoISRkYnJlc3VsdCB8fCAoJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpPT0wKSkgew0KICAgICAgcmV0dXJuIGZhbHNlOw0KICAgIH0NCiAgICAkcmVzdWx0PWFycmF5KCk7DQogICAgd2hpbGUoJHJvdz0kZGJyZXN1bHQtPkZldGNoUm93KCkpIHsNCiAgICAgICRmYWlsZWQ9ZmFsc2U7DQogICAgICBpZiAoIWVtcHR5KCRjcml0ZXJpYSkpIHsNCiAgICAgICAgJGVudGl0eT0kdGhpcy0+R2V0RW50aXR5KCRyb3dbImVudGl0eWlkIl0pOw0KICAgICAgICBmb3JlYWNoKCRjcml0ZXJpYSBhcyAkY3Byb3A9PiRjdmFsdWUpIHsNCiAgICAgICAgICBpZiAoIWlzc2V0KCRlbnRpdHlbJGNwcm9wXSkgfHwoaXNzZXQoJGVudGl0eVskY3Byb3BdKSAmJiAkZW50aXR5WyRjcHJvcF0hPSRjdmFsdWUpKSB7DQogICAgICAgICAgICAkZmFpbGVkPXRydWU7DQogICAgICAgICAgICBicmVhazsNCiAgICAgICAgICB9DQogICAgICAgIH0NCiAgICAgICAgaWYgKCRmYWlsZWQpIGNvbnRpbnVlOyAvL0NyaXRlcmlhIGZhaWxlZA0KICAgICAgfQ0KICAgICAgJHJvd1siaWQiXT0kcm93WyJlbnRpdHlpZCJdOw0KICAgICAgJHJlc3VsdFtdPSRyb3c7DQogICAgfQ0KICAgIGlmIChjb3VudCgkcmVzdWx0KT09MCkgcmV0dXJuIGZhbHNlOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gR2V0T25lRW50aXR5KCRtb2R1bGUsICR0YWJsZSwgJGNyaXRlcmlhPWFycmF5KCksICRmYWlsaWZtdWx0aXBsZT1mYWxzZSkgew0KICAgIC8vZWNobyAkbW9kdWxlO2VjaG8gJHRhYmxlOw0KICAgIC8vcHJpbnRfcigkY3JpdGVyaWEpO2RpZSgpOy8vDQogICAgJGVudGl0aWVzPSR0aGlzLT5HZXRFbnRpdGllc0Z1bGwoJG1vZHVsZSwgJHRhYmxlLCAkY3JpdGVyaWEpOw0KDQogICAgaWYgKCEkZW50aXRpZXMpIHJldHVybiBmYWxzZTsNCg0KICAgIGlmIChjb3VudCgkZW50aXRpZXMpPjEgJiYgJGZhaWxpZm11bHRpcGxlKSByZXR1cm4gZmFsc2U7DQogICAgLy9wcmludF9yKCRlbnRpdGllcyk7DQogICAgZm9yZWFjaCAoJGVudGl0aWVzIGFzICRlbnRpdHkpIHsNCiAgICAgIHJldHVybiAkZW50aXR5OyAvL0htbSwgdGhpcyBpcyB1Z2x5IHJpZ2h0PyBidXQgd29ya3MgOikNCiAgICB9DQoNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldEVudGl0aWVzRnVsbCgkbW9kdWxlLCAkdGFibGU9IiIsICRjcml0ZXJpYT1hcnJheSgpKSB7DQogICAgJHNpbXBsZWVudGl0aWVzPSR0aGlzLT5HZXRFbnRpdGllcygkbW9kdWxlLCAkdGFibGUsICRjcml0ZXJpYSk7DQogICAgaWYgKCEkc2ltcGxlZW50aXRpZXMgfHwgZW1wdHkoJHNpbXBsZWVudGl0aWVzKSkgcmV0dXJuIGZhbHNlOw0KDQogICAgJGZ1bGxlbnRpdGllcz1hcnJheSgpOw0KICAgIGZvcmVhY2ggKCRzaW1wbGVlbnRpdGllcyBhcyAkc2ltcGxlZW50aXR5KSB7DQogICAgICAkZW50aXR5PSR0aGlzLT5HZXRFbnRpdHkoJHNpbXBsZWVudGl0eVsiZW50aXR5aWQiXSk7DQogICAgICBpZiAoJGVudGl0eSE9PWZhbHNlKSB7DQogICAgICAgIC8vcHJpbnRfcigkZW50aXR5KTtkaWUoKTsNCiAgICAgICAgJGVudGl0eVsiaWQiXT0kZW50aXR5WyJlbnRpdHlpZCJdOw0KICAgICAgICAkZnVsbGVudGl0aWVzW109JGVudGl0eTsNCiAgICAgIH0NCiAgICB9DQogICAgcmV0dXJuICRmdWxsZW50aXRpZXM7DQogIH0NCg0KICBmdW5jdGlvbiBFbnRpdGllc0NvdW50KCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpIHsNCiAgICAkZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzKCRtb2R1bGUsICR0YWJsZSwgJGNyaXRlcmlhKTsNCiAgICByZXR1cm4gY291bnQoJGVudGl0aWVzKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIFNldEVudGl0eVByb3AoJGlkLCRwcm9wbmFtZSwkcHJvcHZhbHVlLCRwcm9wdHlwZT0idW5kZWZpbmVkIikgew0KICAvLyAgZWNobyAkcHJvcG5hbWU7DQogICAgJGRiPSR0aGlzLT5HZXREYigpOw0KICAgICRzcWw9IklOU0VSVCBJTlRPICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfcHJvcHMgKGVudGl0eWlkLHByb3BuYW1lLHByb3B2YWx1ZSxwcm9wdHlwZSkgVkFMVUVTICg/LD8sPyw/KSI7DQogICAgJHZhbHVlcz1hcnJheSgkaWQsJHByb3BuYW1lLCRwcm9wdmFsdWUsJHByb3B0eXBlKTsNCg0KICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkcmVzdWx0KSAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIFNldEVudGl0eVByb3A6IGVycm9yIHNldHRpbmcgZW50aXR5LXByb3AiLGZhbHNlLGFycmF5KCJlbnRpdHlpZCI9PiRpZCwicHJvcHR5cGUiPT4kcHJvcHR5cGUpKTsNCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KDQogIGZ1bmN0aW9uIENsZWFyRW50aXR5KCRpZCkgew0KICAgICR0aGlzLT5DbGVhckVudGl0eUNvbm5lY3Rpb25zKCRpZCwkaWQpOw0KICAgICR0aGlzLT5DbGVhckVudGl0eVByb3BzKCRpZCk7DQogICAgJGRiPSR0aGlzLT5HZXREYigpOw0KICAgICRzcWw9IkRFTEVURSBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2UgV0hFUkUgZW50aXR5aWQ9PyI7DQogICAgJHZhbHVlcz1hcnJheSgkaWQpOw0KICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkcmVzdWx0KSAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIENsZWFyRW50aXR5OiBlcnJvciBjbGVhcmluZyBlbnRpdHkiLGZhbHNlLGFycmF5KCJpZCI9PiRpZCkpOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gQ2xlYXJNb2R1bGVFbnRpdGllcygkbW9kdWxlKSB7DQoNCiAgICAkZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzKCRtb2R1bGUpOw0KDQogICAgaWYgKCEkZW50aXRpZXMpIHJldHVybjsNCi8vZGllKCk7DQogICAgZm9yZWFjaCAoJGVudGl0aWVzIGFzICRlbnRpdHkpIHsNCiAgICAgICR0aGlzLT5DbGVhckVudGl0eSgkZW50aXR5WyJlbnRpdHlpZCJdKTsNCiAgICB9DQogIH0NCg0KICBmdW5jdGlvbiBDbGVhckVudGl0eVByb3AoJGlkLCAkcHJvcG5hbWUpIHsNCiAgICAkZGI9JHRoaXMtPkdldERiKCk7DQogICAgJHNxbD0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9wcm9wcyBXSEVSRSBlbnRpdHlpZD0/IEFORCBwcm9wbmFtZT0/IjsNCiAgICAkdmFsdWVzPWFycmF5KCRpZCwkcHJvcG5hbWUpOw0KICAgICRyZXN1bHQ9JGRiLT5FeGVjdXRlKCRzcWwsJHZhbHVlcyk7DQogICAgaWYgKCEkcmVzdWx0KSAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIENsZWFyRW50aXR5UHJvcDogZXJyb3IgY2xlYXJpbmcgZW50aXR5cHJvcCIsZmFsc2UsYXJyYXkoImlkIj0+JGlkLCJwcm9wbmFtZSI9PiRwcm9wbmFtZSkpOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gQ2xlYXJFbnRpdHlQcm9wcygkaWQpIHsNCiAgICAkZGI9JHRoaXMtPkdldERiKCk7DQogICAgJHNxbD0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9wcm9wcyBXSEVSRSBlbnRpdHlpZD0/IjsNCiAgICAkdmFsdWVzPWFycmF5KCRpZCk7DQogICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICBpZiAoISRyZXN1bHQpICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gQ2xlYXJFbnRpdHlQcm9wczogZXJyb3IgY2xlYXJpbmcgZW50aXR5cHJvcHMiLGZhbHNlLGFycmF5KCJpZCI9PiRpZCkpOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gU2V0RW50aXR5UHJvcHNGcm9tQXJyYXkoJGlkLCAkcHJvcHMsICR2YWx1ZXMsICRjbGVhcj10cnVlKSB7ICAgIA0KICAgIGlmICghaXNfYXJyYXkoJHByb3BzKSB8fCAhaXNfYXJyYXkoJHZhbHVlcykpIHJldHVybiAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIFNldEVudGl0eVByb3BzRnJvbUFycmF5OiBcJHByb3BzIGFuZCBcJHZhbHVlcyBtdXN0IGJlIGFuIGFycmF5cyIpOw0KICAgIA0KICAgIGZvcmVhY2ggKCRwcm9wcyBhcyAkcHJvcG5hbWUpIHsgICAgICANCiAgICAgIGlmIChpc3NldCgkdmFsdWVzWyRwcm9wbmFtZV0pKSB7DQogICAgICAgICR2YWx1ZT0kdmFsdWVzWyRwcm9wbmFtZV07DQogICAgICAgIGlmIChpc19hcnJheSgkdmFsdWUpKSB7ICAgICAgICANCiAgICAgICAgICAkdGhpcy0+U2V0RW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSwgJHZhbHVlWyJ2YWx1ZSJdLCR2YWx1ZVsidHlwZSJdKTsNCiAgICAgICAgfSBlbHNlIHsgICAgICAgIA0KICAgICAgICAgICR0aGlzLT5TZXRFbnRpdHlQcm9wKCRpZCwgJHByb3BuYW1lLCAkdmFsdWUpOw0KICAgICAgICB9DQogICAgICB9IGVsc2Ugew0KICAgICAgICBpZiAoJGNsZWFyKSAkdGhpcy0+Q2xlYXJFbnRpdHlQcm9wKCRpZCwgJHByb3BuYW1lKTsNCiAgICAgIH0NCiAgICB9DQogICAgcmV0dXJuICRpZDsNCiAgfQ0KICANCg0KICBmdW5jdGlvbiBTZXRFbnRpdHlQcm9wcygkaWQsICRwcm9wcy8qLCAkY2xlYXI9dHJ1ZSovKSB7DQogICAgLy9wcmludF9yKCRwcm9wcyk7ICBlY2hvICJoaTIiOyBkaWUoKTsNCiAgICAvL3ByaW50X3IoJHByb3BzKTtlY2hvIjxici8+PGJyLz4iOw0KICAgICAgICAvL2VjaG8gJGlkO2RpZSgpDQogICAgaWYgKCFpc19hcnJheSgkcHJvcHMpIHx8ICFpc19hc3NvYygkcHJvcHMpKSByZXR1cm4gJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBTZXRFbnRpdHlQcm9wczogXCRwcm9wcyBtdXN0IGJlIGFuIGFzc29jIGFycmF5Iik7DQogICAgZm9yZWFjaCAoJHByb3BzIGFzICRwcm9wbmFtZT0+JHByb3B2YWx1ZSkgew0KICAgICAgLy9pZiAoJGNsZWFyKSAkdGhpcy0+Q2xlYXJFbnRpdHlQcm9wKCRpZCwgJHByb3BuYW1lKTsNCiAgICAgIGlmIChpc19hcnJheSgkcHJvcHZhbHVlKSkgew0KICAgICAgICAvLyAgcHJpbnRfcigkcHJvcHZhbHVlKTtkaWUoKTsNCiAgICAgICAgJHRoaXMtPlNldEVudGl0eVByb3AoJGlkLCAkcHJvcG5hbWUsICRwcm9wdmFsdWVbInZhbHVlIl0sJHByb3B2YWx1ZVsidHlwZSJdKTsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgIC8vZWNobyAkcHJvcG5hbWU7DQogICAgICAgIC8vZWNobyAiaGkyIjsgZGllKCk7DQogICAgICAgICR0aGlzLT5TZXRFbnRpdHlQcm9wKCRpZCwgJHByb3BuYW1lLCAkcHJvcHZhbHVlKTsNCiAgICAgIH0NCiAgICB9DQoNCiAgICByZXR1cm4gJGlkOw0KDQogIH0NCg0KICAvL0RvZXMgbm90IHdvcmshDQogIGZ1bmN0aW9uIFNldEVudGl0eVByb3BzT25Dcml0ZXJpYSgkbW9kdWxlLCR0YWJsZSwgJHByb3BzLCAkY3JpdGVyaWEsICRjcmVhdGU9dHJ1ZSwgJGNsZWFyPWZhbHNlKSB7DQogICAgLypwcmludF9yKCRwcm9wcyk7ZWNobyI8YnIvPjxici8+IjsNCiAgICBwcmludF9yKCRjcml0ZXJpYSk7ZGllKCk7Ki8NCiAgICAkZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzKCRtb2R1bGUsJHRhYmxlLCAkY3JpdGVyaWEpOw0KICAgIGlmICghJGVudGl0aWVzKSB7DQogICAgICBpZiAoJGNyZWF0ZSkgew0KICAgICAgICByZXR1cm4gJHRoaXMtPkFkZEVudGl0eSgkbW9kdWxlLCAkdGFibGUsICRwcm9wcyk7DQogICAgICB9DQogICAgfSBlbHNlIHsNCiAgICAgICRjb3VudD0wOw0KICAgICAgZm9yZWFjaCgkZW50aXRpZXMgYXMgJGVudGl0eSkgew0KICAgICAgICAvKnByaW50X3IoJHByb3BzKTtlY2hvIjxici8+PGJyLz4iOw0KICAgICAgICBwcmludF9yKCRlbnRpdHkpO2RpZSgpOyovDQogICAgICAgICRjb3VudCsrOw0KICAgICAgICAkdGhpcy0+U2V0RW50aXR5UHJvcHMoJGVudGl0eVsiaWQiXSwkcHJvcHMsJGNsZWFyKTsNCiAgICAgIH0NCiAgICB9DQoNCiAgICByZXR1cm4gJGNvdW50Ow0KICB9DQoNCiAgZnVuY3Rpb24gUmVzZXRFbnRpdHlQcm9wcygkaWQsICRuZXdwcm9wcz1hcnJheSgpKSB7DQogICAgJHRoaXMtPkNsZWFyRW50aXR5UHJvcHMoJGlkKTsNCiAgICAkdGhpcy0+U2V0RW50aXR5UHJvcHMoJGlkLCAkbmV3cHJvcHMsIGZhbHNlKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIFJlbW92ZU1vZHVsZUVudGl0aWVzKCRtb2R1bGVuYW1lKSB7DQogICAgJGVudGl0aWVzPSR0aGlzLT5HZXRFbnRpdGllcygkbW9kdWxlbmFtZSk7DQogICAgZm9yZWFjaCAoJGVudGl0aWVzIGFzICRlbnRpdHkpIHsNCiAgICAgICR0aGlzLT5EZWxldGVFbnRpdHkoJGVudGl0eVsiaWQiXSk7DQogICAgfQ0KICB9DQoNCg0KDQoNCiAgZnVuY3Rpb24gQ29tcGFyZUVudGl0aWVzKCRlbnRpdHkxLCAkZW50aXR5MiwgJHNvcnRmaWVsZCkgew0KICAgIGlmICghaXNzZXQoJGVudGl0eTFbJHNvcnRmaWVsZF0pKSByZXR1cm4gMDsNCiAgICBpZiAoIWlzc2V0KCRlbnRpdHkyWyRzb3J0ZmllbGRdKSkgcmV0dXJuIDA7DQogICAgaWYgKGlzX251bWVyaWMoJGVudGl0eTFbJHNvcnRmaWVsZF0pICYmIGlzX251bWVyaWMoJGVudGl0eTJbJHNvcnRmaWVsZF0pKSB7DQogICAgICBpZiAoJGVudGl0eTFbJHNvcnRmaWVsZF09PSRlbnRpdHkyWyRzb3J0ZmllbGRdKSByZXR1cm4gMDsNCiAgICAgIGlmICgkZW50aXR5MVskc29ydGZpZWxkXTwkZW50aXR5Mlskc29ydGZpZWxkXSkgcmV0dXJuIC0xOw0KICAgICAgcmV0dXJuIDE7DQogICAgfSBlbHNlIHsNCiAgICAgIHJldHVybiBzdHJjbXAoJGVudGl0eTFbJHNvcnRmaWVsZF0sJGVudGl0eTJbJHNvcnRmaWVsZF0pOw0KICAgIH0NCiAgfQ0KDQogIC8vRG9lcyBub3Qgd29yaw0KICBmdW5jdGlvbiBDb21wYXJlRW50aXRpZXNDb21wbGV4KCRlbnRpdHkxLCAkZW50aXR5MiwgJHNvcnRmaWVsZHMpIHsNCiAgICBpZiAoIWlzc2V0KCRlbnRpdHkxWyRzb3J0ZmllbGRdKSkgcmV0dXJuIDA7DQogICAgaWYgKCFpc3NldCgkZW50aXR5Mlskc29ydGZpZWxkXSkpIHJldHVybiAwOw0KICAgIGlmIChpc19udW1lcmljKCRlbnRpdHkxWyRzb3J0ZmllbGRdKSAmJiBpc19udW1lcmljKCRlbnRpdHkyWyRzb3J0ZmllbGRdKSkgew0KICAgICAgaWYgKCRlbnRpdHkxWyRzb3J0ZmllbGRdPT0kZW50aXR5Mlskc29ydGZpZWxkXSkgcmV0dXJuIDA7DQogICAgICBpZiAoJGVudGl0eTFbJHNvcnRmaWVsZF08JGVudGl0eTJbJHNvcnRmaWVsZF0pIHJldHVybiAtMTsNCiAgICAgIHJldHVybiAxOw0KICAgIH0gZWxzZSB7DQogICAgICByZXR1cm4gc3RyY21wKCRlbnRpdHkxWyRzb3J0ZmllbGRdLCRlbnRpdHkyWyRzb3J0ZmllbGRdKTsNCiAgICB9DQogIH0NCg0KICBmdW5jdGlvbiBJbnRlcm5hbENvbXBhcmVFbnRpdGllcygkZW50aXR5MSwgJGVudGl0eTIpIHsNCiAgICBpZiAoIWlzX2FycmF5KCR0aGlzLT5fc29ydGZpZWxkcykpIHsNCiAgICAgIHJldHVybiAkdGhpcy0+Q29tcGFyZUVudGl0aWVzKCRlbnRpdHkxLCAkZW50aXR5MiwgJHRoaXMtPl9zb3J0ZmllbGRzKTsNCiAgICB9IGVsc2Ugew0KICAgICAgcmV0dXJuICR0aGlzLT5Db21wYXJlRW50aXRpZXNDb21wbGV4KCRlbnRpdHkxLCAkZW50aXR5MiwgJHRoaXMtPl9zb3J0ZmllbGRzKTsNCiAgICB9DQogIH0NCg0KICBmdW5jdGlvbiBTb3J0RW50aXRpZXMoJGxpc3QsICRzb3J0ZmllbGRzKSB7DQogICAgJHRoaXMtPl9zb3J0ZmllbGRzPSRzb3J0ZmllbGRzOw0KICAgIHVzb3J0KCRsaXN0LCBhcnJheSgkdGhpcywiSW50ZXJuYWxDb21wYXJFbnRpdGllcyIpKTsNCiAgICByZXR1cm4gJGxpc3Q7DQogIH0NCg0KICBmdW5jdGlvbiBNYWtlU2ltcGxlQXJyYXkoJG1vZHVsZSwgJHRhYmxlLCRmaWVsZCkgew0KDQogIH0NCg0KICBmdW5jdGlvbiBNYWtlQXNzb2NBcnJheSgkbW9kdWxlLCAkdGFibGUsICRmaWVsZHMpIHsNCiAgICAkZW50aXRpZXM9JHRoaXMtPkdldEVudGl0aWVzRnVsbCgkbW9kdWxlLCR0YWJsZSk7DQogICAgaWYgKCEkZW50aXRpZXMpIHJldHVybiBmYWxzZTsNCiAgICAkcmVzdWx0PWFycmF5KCk7DQoNCiAgICBmb3JlYWNoICgkZW50aXRpZXMgYXMgJGVudGl0eSkgew0KICAgICAgZm9yZWFjaCAoJGZpZWxkcyBhcyAkaW5kZXg9PiR2YWx1ZSkgew0KICAgICAgICBpZiAoIWlzc2V0KCRlbnRpdHlbJGluZGV4XSkgfHwgIWlzc2V0KCRlbnRpdHlbJHZhbHVlXSkpIGNvbnRpbnVlOw0KDQogICAgICAgICRyZXN1bHRbJGVudGl0eVskaW5kZXhdXT0kZW50aXR5WyR2YWx1ZV07DQogICAgICB9DQogICAgfQ0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgLyoNCiAgICoNCiAgICogRmllbGRzZXQgZnVuY3Rpb25zDQogICAqDQogICAqLw0KICBmdW5jdGlvbiBBZGRGaWVsZFNldCgkbW9kdWxlLCRuYW1lLCRmaWVsZHMpIHsNCiAgICBpZiAoIWlzX2FycmF5KCRmaWVsZHMpKSByZXR1cm4gJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBBZGRGaWVsZFNldDogXCRmaWVsZHMgaXMgbm90IGFuIGFycmF5IiwgZmFsc2UsIGFycmF5KCJuYW1lIj0+JG5hbWUpKTsNCiAgICBpZiAoZW1wdHkoJGZpZWxkcykpIHJldHVybiAkdGhpcy0+RXJyb3IoImZ1bmN0aW9uIEFkZEZpZWxkU2V0OiBcJGZpZWxkcyBpcyBhbiBlbXB0eSBhcnJheSIsIGZhbHNlLCBhcnJheSgibmFtZSI9PiRuYW1lKSk7DQogICAgJHRoaXMtPl9maWVsZHNldHNbJG1vZHVsZS4iXyIuJG5hbWVdPSRmaWVsZHM7DQogIH0NCg0KICBmdW5jdGlvbiBHZXRGaWVsZFNldCgkbW9kdWxlLCAkbmFtZSkgew0KICAgIGlmICghaXNzZXQoJHRoaXMtPl9maWVsZHNldHNbJG1vZHVsZS4iXyIuJG5hbWVdKSkgcmV0dXJuICR0aGlzLT5FcnJvcigiZnVuY3Rpb24gR2V0RmllbGRTZXQ6IGZpZWxkc2V0IGlzIG5vdCBwcmVzZW50IiwgZmFsc2UsIGFycmF5KCJuYW1lIj0+JG5hbWUpKTsgICAgDQogICAgcmV0dXJuICR0aGlzLT5fZmllbGRzZXRzWyRtb2R1bGUuIl8iLiRuYW1lXTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEVudGl0eVNldFVuc2V0UHJvcHMoJG1vZHVsZSwkZW50aXR5LCRmaWVsZHNldCwkZmlsbHZhbHVlPSIiKSB7DQogICAgJGZpZWxkcz0kdGhpcy0+R2V0RmllbGRTZXQoJG1vZHVsZSwgJGZpZWxkc2V0KTsNCiAgICBpZiAoISRmaWVsZHMpIHJldHVybiAkZW50aXR5Ow0KICAgIGZvcmVhY2goJGZpZWxkcyBhcyAkZmllbGQpIHsNCiAgICAgIGlmICghaXNzZXQoJGVudGl0eVsiJGZpZWxkIl0pKSB7DQogICAgICAgICRlbnRpdHlbIiRmaWVsZCJdPSRmaWxsdmFsdWU7DQogICAgICB9DQogICAgfQ0KICAgIHJldHVybiAkZW50aXR5Ow0KICB9DQoNCiAgLyoNCiAgICoNCiAgICogQ29ubmVjdGlvbiBmdW5jdGlvbnMNCiAgICoNCiAgICovDQoNCiAgZnVuY3Rpb24gU2V0RW50aXR5Q29ubmVjdGlvbigkaWQxLCAkaWQyLCAkdHlwZT0iIikgew0KICAgIGlmICgkdGhpcy0+Q2hlY2tFbnRpdHlDb25uZWN0aW9uKCRpZDEsJGlkMiwkdHlwZSkpIHJldHVybiB0cnVlOw0KICAgICRkYj0kdGhpcy0+R2V0RGIoKTsNCiAgICAkc3FsPSJJTlNFUlQgSU5UTyAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX2Nvbm5lY3Rpb25zIChlbnRpdHlpZDEsZW50aXR5aWQyLHR5cGUpIFZBTFVFUyAoPyw/LD8pIjsNCiAgICAkdmFsdWVzPWFycmF5KCRpZDEsICRpZDIsICR0eXBlKTsNCiAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIGlmICghJHJlc3VsdCkgJHRoaXMtPkVycm9yKCJmdW5jdGlvbiBTZXRFbnRpdHlDb25uZWN0aW9uOiBlcnJvciBzZXR0aW5nIGVudGl0eSBjb25uZWN0aW9uIixmYWxzZSxhcnJheSgiaWQxIj0+JGlkMSwiaWQyIj0+JGlkMikpOw0KICAgIHJldHVybiAkcmVzdWx0Ow0KICB9DQoNCiAgZnVuY3Rpb24gQ2xlYXJFbnRpdHlDb25uZWN0aW9ucygkaWQxLCAkaWQyPS0xLCAkdHlwZT0iIikgew0KICAgICRkYj0kdGhpcy0+R2V0RGIoKTsNCiAgICBpZiAoJHR5cGU9PSIiKSB7DQogICAgICAkc3FsPSJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX2Nvbm5lY3Rpb25zIFdIRVJFIGVudGl0eWlkMT0/IE9SIGVudGl0eWlkMj0/IjsNCiAgICAgICR2YWx1ZXM9YXJyYXkoJGlkMSwgJGlkMik7DQogICAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIH0gZWxzZSB7DQogICAgICAkc3FsPSJERUxFVEUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX2Nvbm5lY3Rpb25zIFdIRVJFIChlbnRpdHlpZDE9PyBBTkQgdHlwZT0/KSBPUiAoZW50aXR5aWQyPT8gQU5EIHR5cGU9PykiOw0KICAgICAgJHZhbHVlcz1hcnJheSgkaWQxLCAkdHlwZSwgJGlkMiwgJHR5cGUpOw0KICAgICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICB9DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KICBmdW5jdGlvbiBDbGVhckVudGl0eUNvbm5lY3Rpb24oJGlkMSwgJGlkMiwgJHR5cGU9IiIpIHsNCiAgICAkZGI9JHRoaXMtPkdldERiKCk7DQogICAgaWYgKCR0eXBlPT0iIikgew0KICAgICAgJHNxbD0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9jb25uZWN0aW9ucyBXSEVSRSBlbnRpdHlpZDE9PyBBTkQgZW50aXR5aWQyPT8iOw0KICAgICAgJHZhbHVlcz1hcnJheSgkaWQxLCRpZDIpOw0KICAgICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICB9IGVsc2Ugew0KICAgICAgJHNxbD0iREVMRVRFIEZST00gIi5jbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9uZW9kYXRhc3RvcmFnZV9jb25uZWN0aW9ucyBXSEVSRSBlbnRpdHlpZDE9PyBBTkQgZW50aXR5aWQyPT8gQU5EIHR5cGU9PyI7DQogICAgICAkdmFsdWVzPWFycmF5KCRpZDEsJGlkMiwkdHlwZSk7DQogICAgICAkcmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsLCR2YWx1ZXMpOw0KICAgIH0NCiAgICByZXR1cm4gJHJlc3VsdDsNCiAgfQ0KDQogIGZ1bmN0aW9uIENoZWNrRW50aXR5Q29ubmVjdGlvbigkaWQxLCRpZDIsJHR5cGU9IiIpIHsNCiAgICAkZGI9JHRoaXMtPkdldERiKCk7DQogICAgJHNxbD0iIjsgJHZhbHVlcz0iIjsNCiAgICBpZiAoJHR5cGU9PSIiKSB7DQogICAgICAkc3FsPSJTRUxFQ1QgKiBGUk9NICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfbmVvZGF0YXN0b3JhZ2VfY29ubmVjdGlvbnMgV0hFUkUgZW50aXR5aWQxPT8gQU5EIGVudGl0eWlkMj0/IjsNCiAgICAgICR2YWx1ZXM9YXJyYXkoJGlkMSwkaWQyKTsNCiAgICB9IGVsc2Ugew0KICAgICAgJHNxbD0iU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlX2Nvbm5lY3Rpb25zIFdIRVJFIGVudGl0eWlkMT0/IEFORCBlbnRpdHlpZDI9PyBBTkQgdHlwZT0/IjsNCiAgICAgICR2YWx1ZXM9YXJyYXkoJGlkMSwkaWQyLCR0eXBlKTsNCiAgICB9DQogICAgJHJlc3VsdD0kZGItPkV4ZWN1dGUoJHNxbCwkdmFsdWVzKTsNCiAgICBpZiAoJHJlc3VsdCAmJiAoJHJlc3VsdC0+UmVjb3JkQ291bnQoKT4wKSkgew0KICAgICAgcmV0dXJuIHRydWU7DQogICAgfQ0KICAgIHJldHVybiBmYWxzZTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldEVudGl0eUNvbm5lY3Rpb25zKCRpZDE9LTEsICRpZDI9LTEsICRib3Rod2F5cz10cnVlLCAkdHlwZT0iIikgew0KDQogIH0NCg0KICAvKg0KICAgKg0KICAgKiBFcnJvciBoYW5kbGluZw0KICAgKg0KICAgKi8NCiAgZnVuY3Rpb24gRXJyb3IoJGVycm9ydGV4dCwkcmV0dXJudmFsdWU9ZmFsc2UsJHBhcmFtcz1hcnJheSgpKSB7DQogICAgJHRoaXMtPl9lcnJvcnMuPSRlcnJvcnRleHQ7DQogICAgaWYgKCFlbXB0eSgkcGFyYW1zKSAmJiBpc19hcnJheSgkcGFyYW1zKSkgew0KICAgICAgJHRoaXMtPl9lcnJvcnMuPSIgKCI7DQogICAgICAkZmlyc3Q9dHJ1ZTsgLy9IYW5kbGluZyB0aGUgY29tbWENCiAgICAgIGZvcmVhY2ggKCRwYXJhbXMgYXMgJHBhcmFtPT4kdmFsdWUpIHsNCiAgICAgICAgaWYgKCRmaXJzdCkgJGZpcnN0PWZhbHNlOyBlbHNlICR0aGlzLT5fZXJyb3JzLj0iLCI7DQogICAgICAgICR0aGlzLT5fZXJyb3JzLj0kcGFyYW0uIj0+Ii4kdmFsdWUuIiwiOw0KICAgICAgfQ0KICAgICAgJHRoaXMtPl9lcnJvcnMuPSIpIjsNCiAgICB9DQogICAgJHRoaXMtPl9lcnJvcnMuPSJcbiI7DQogICAgcmV0dXJuICRyZXR1cm52YWx1ZTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldEVycm9ycygkbmwyYnI9dHJ1ZSwkY2xlYXI9dHJ1ZSkgew0KICAgICRlcnJvcnM9JHRoaXMtPl9lcnJvcnM7DQogICAgaWYgKCRubDJicikgew0KICAgICAgJGVycm9ycz1ubDJicigkZXJyb3JzKTsNCiAgICB9DQogICAgaWYgKCRjbGVhcikgew0KICAgICAgJHRoaXMtPl9lcnJvcnM9IiI7DQogICAgfQ0KICAgIHJldHVybiAkZXJyb3JzOw0KICB9DQoNCiAgZnVuY3Rpb24gT3V0cHV0RXJyb3JzKCRjbGVhcj10cnVlKSB7DQogICAgZWNobyAiXG5cbjxkaXYgc3R5bGU9J2JvcmRlcjozcHggc29saWQgcmVkPlxuIjsNCiAgICBlY2hvICR0aGlzLT5HZXRFcnJvcnModHJ1ZSwkY2xlYXIpOw0KICAgIGVjaG8gIlxuPC9kaXY+XG5cbiI7DQogIH0NCg0KICBmdW5jdGlvbiBJbkVycm9yKCkgew0KICAgIHJldHVybiAoJHRoaXMtPl9lcnJvcnMhPSIiKTsNCiAgfQ0KDQogIGZ1bmN0aW9uIEdldE1vZHVsZUxpc3QoKSB7DQogICAgJGRiPSR0aGlzLT5HZXREYigpOw0KICAgICRzcWw9IlNFTEVDVCBlbnRpdHltb2R1bGUgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX25lb2RhdGFzdG9yYWdlIjsgICAgDQogICAgJGRicmVzdWx0PSRkYi0+RXhlY3V0ZSgkc3FsKTsNCiAgICBpZiAoISRkYnJlc3VsdCB8fCAoJGRicmVzdWx0LT5SZWNvcmRDb3VudCgpPT0wKSkgeyAgICAgIA0KICAgICAgcmV0dXJuIGFycmF5KCk7DQogICAgfQ0KICAgICRyZXN1bHQ9YXJyYXkoIiI9PiIiKTsNCiAgICB3aGlsZSgkcm93PSRkYnJlc3VsdC0+RmV0Y2hSb3coKSkgew0KICAgICAgaWYgKCFpbl9hcnJheSgkcm93WyJlbnRpdHltb2R1bGUiXSwkcmVzdWx0KSkgew0KICAgICAgICAkcmVzdWx0WyRyb3dbImVudGl0eW1vZHVsZSJdXT0kcm93WyJlbnRpdHltb2R1bGUiXTsNCiAgICAgIH0NCiAgICB9DQogICAgcmV0dXJuICRyZXN1bHQ7DQogIH0NCg0KfQ0KDQo/Pg0K]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/changelog.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPgo8bGk+MC4yLjAgLSBGaXhlZCByZXNldCBmaWx0ZXIgYnV0dG9uLCBtYWRlIGZpbHRlcmluZyBvbiBtb2R1bGUgYmFzZWQgb24gYSBkcm9wZG93biwgYnVnZml4ZXM8L2xpPgo8bGk+MC4xLjAgLSBJbml0aWFsIHJlbGVhc2U8L2xpPgo8L3VsPg==]]></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+Ckkgd2lsbCByZXBlYXQsIHRoaXMgbW9kdWxlIGlzIGZvciBkZXZlbG9wZXJzIG9ubHkuIElmIHlvdSBjYW5ub3QgcmVhZCBwaHAtc291cmNlIGNvZGUsCnlvdSBzaG91bGQgdXNlIGl0IGZvciBkZXZlbG9wbWVudCBhbnl3YXkuIElmIHlvdSBjYW4sIGFsd2F5cyBjaGVjayBvdXQgdGhlIGNvZGUKZm9yIGhpbnRzIG9uIGhvdyB0byBtYWtlIGl0IHdvcmsuIElmIHlvdSBzdGlsbCBoYXZlIHF1ZXN0aW9ucyBvciBzdWdnZXN0aW9ucyBmb3IKZml4ZXMvaW1wcm92ZW1lbnRzLCBwbGVhc2UgZmVlbCBmcmVlIHRvIGNhdGNoIG1lIChTaWxtYXJpbGxpb24pIGluIHRoZSBmb3J1bSBvZyAjaXJjLgoKCjxoMz5MaXN0IG9mIG1ldGhvZHM8L2gzPgo8cHJlPgovKgogKgogKiBFbnRpdHkgZnVuY3Rpb25zCiAqCiAqLwpmdW5jdGlvbiBBZGRFbnRpdHkoJG1vZHVsZSwgJHRhYmxlLCAkcHJvcHM9YXJyYXkoKSkKZnVuY3Rpb24gRGVsZXRlRW50aXR5KCRpZCkKZnVuY3Rpb24gR2V0RW50aXR5V2l0aFR5cGUoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpKQpmdW5jdGlvbiBHZXRFbnRpdHkoJGlkLCAkb3ZlcnJpZGVwcm9wcz1hcnJheSgpLCAkd2l0aHR5cGU9ZmFsc2UpCmZ1bmN0aW9uIEdldEVudGl0aWVzKCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpCmZ1bmN0aW9uIEdldE9uZUVudGl0eSgkbW9kdWxlLCAkdGFibGUsICRjcml0ZXJpYT1hcnJheSgpLCAkZmFpbGlmbXVsdGlwbGU9ZmFsc2UpCmZ1bmN0aW9uIEdldEVudGl0aWVzRnVsbCgkbW9kdWxlLCAkdGFibGU9IiIsICRjcml0ZXJpYT1hcnJheSgpKQpmdW5jdGlvbiBFbnRpdGllc0NvdW50KCRtb2R1bGUsICR0YWJsZT0iIiwgJGNyaXRlcmlhPWFycmF5KCkpCmZ1bmN0aW9uIFNldEVudGl0eVByb3AoJGlkLCRwcm9wbmFtZSwkcHJvcHZhbHVlLCRwcm9wdHlwZT0idW5kZWZpbmVkIikKZnVuY3Rpb24gQ2xlYXJFbnRpdHkoJGlkKQpmdW5jdGlvbiBDbGVhck1vZHVsZUVudGl0aWVzKCRtb2R1bGUpCmZ1bmN0aW9uIENsZWFyRW50aXR5UHJvcCgkaWQsICRwcm9wbmFtZSkKZnVuY3Rpb24gQ2xlYXJFbnRpdHlQcm9wcygkaWQpCmZ1bmN0aW9uIFNldEVudGl0eVByb3BzKCRpZCwgJHByb3BzLCAkY2xlYXI9dHJ1ZSkKZnVuY3Rpb24gU2V0RW50aXR5UHJvcHNPbkNyaXRlcmlhKCRtb2R1bGUsJHRhYmxlLCAkcHJvcHMsICRjcml0ZXJpYSwgJGNyZWF0ZT10cnVlLCAkY2xlYXI9ZmFsc2UpIC8vRG9lcyBub3Qgd29yayEKZnVuY3Rpb24gUmVzZXRFbnRpdHlQcm9wcygkaWQsICRuZXdwcm9wcz1hcnJheSgpKQpmdW5jdGlvbiBSZW1vdmVNb2R1bGVFbnRpdGllcygkbW9kdWxlbmFtZSkKCi8qCiAqCiAqIFNvcnRpbmcgZnVuY3Rpb25zCiAqCiAqLwpmdW5jdGlvbiBDb21wYXJlRW50aXRpZXMoJGVudGl0eTEsICRlbnRpdHkyLCAkc29ydGZpZWxkKQpmdW5jdGlvbiBDb21wYXJlRW50aXRpZXNDb21wbGV4KCRlbnRpdHkxLCAkZW50aXR5MiwgJHNvcnRmaWVsZHM9YXJyYXkoKSkgLy9Eb2VzIG5vdCB3b3JrCmZ1bmN0aW9uIFNvcnRFbnRpdGllcygkbGlzdCwgJHNvcnRmaWVsZHM9YXJyYXkoKSBvciBzdHJpbmcpIC8vT25seSB3b3JrcyBvbiBzdHJpbmdzCmZ1bmN0aW9uIE1ha2VTaW1wbGVBcnJheSgkbW9kdWxlLCAkdGFibGUsICRmaWVsZCkKZnVuY3Rpb24gTWFrZUFzc29jQXJyYXkoJG1vZHVsZSwgJHRhYmxlLCAkZmllbGRzKQoKLyoKICoKICogRmllbGRzZXQgZnVuY3Rpb25zCiAqCiAqLwpmdW5jdGlvbiBBZGRGaWVsZFNldCgkbW9kdWxlLCRuYW1lLCRmaWVsZHMpCmZ1bmN0aW9uIEdldEZpZWxkU2V0KCRtb2R1bGUsICRuYW1lKQpmdW5jdGlvbiBFbnRpdHlTZXRVbnNldFByb3BzKCRtb2R1bGUsJGVudGl0eSwkZmllbGRzZXQsJGZpbGx2YWx1ZT0iIikKCi8qCiAqCiAqIENvbm5lY3Rpb24gZnVuY3Rpb25zCiAqCiAqLwpmdW5jdGlvbiBTZXRFbnRpdHlDb25uZWN0aW9uKCRpZDEsICRpZDIsICR0eXBlPSIiKQpmdW5jdGlvbiBDbGVhckVudGl0eUNvbm5lY3Rpb25zKCRpZDEsICRpZDI9LTEsICR0eXBlPSIiKQpmdW5jdGlvbiBDbGVhckVudGl0eUNvbm5lY3Rpb24oJGlkMSwgJGlkMiwgJHR5cGU9IiIpCmZ1bmN0aW9uIENoZWNrRW50aXR5Q29ubmVjdGlvbigkaWQxLCRpZDIsJHR5cGU9IiIpCmZ1bmN0aW9uIEdldEVudGl0eUNvbm5lY3Rpb25zKCRpZDE9LTEsICRpZDI9LTEsICRib3Rod2F5cz10cnVlLCAkdHlwZT0iIikgLy9Eb2VzIG5vdCB3b3JrCgovKgogKgogKiBFcnJvciBoYW5kbGluZwogKgogKi8KZnVuY3Rpb24gRXJyb3IoJGVycm9ydGV4dCwkcmV0dXJudmFsdWU9ZmFsc2UsJHBhcmFtcz1hcnJheSgpKQpmdW5jdGlvbiBHZXRFcnJvcnMoJG5sMmJyPXRydWUsJGNsZWFyPXRydWUpCmZ1bmN0aW9uIFNob3dFcnJvcnMoJGNsZWFyPXRydWUpCmZ1bmN0aW9uIEluRXJyb3IoKSA6IGJvb2wKPC9wcmU+]]></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+aWR9PC90ZD4NCgkJCTx0ZD57JGVudHJ5LT5tb2R1bGV9PC90ZD4NCgkJCTx0ZD57JGVudHJ5LT50YWJsZX08L3RkPg0KICAgICAgPHRkPnskZW50cnktPnByb3BuYW1lfTwvdGQ+DQogICAgICA8dGQ+eyRlbnRyeS0+cHJvcHZhbHVlfHRydW5jYXRlfTwvdGQ+CQkJDQoJCTwvdHI+DQp7L2ZvcmVhY2h9DQoJPC90Ym9keT4NCjwvdGFibGU+DQp7ZWxzZX0NCjxoND57JG1vZC0+TGFuZygnbm9kYXRhJyl9PC9oND4NCnsvaWZ9DQoNCg==]]></data>
	</file>
</module>
