<?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>groupdocs_annotation</name>
	<version>1.0</version>
  <mincmsversion>1.11.4</mincmsversion>
	<help><![CDATA[PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+CjxwPkdyb3VwRG9jcyBXb3JkLCBFeGNlbCwgUG93ZXJwb2ludCwgUERGIEFubm90YXRpb24gRW1iZWRkZXIgbGV0cyB5b3UgZW1iZWQgc2V2ZXJhbCB0eXBlcyBvZiBmaWxlcyBpbnRvIHlvdXIgcGFnZS48L3A+CjxoMz5Ib3cgRG8gSSBVc2UgSXQ8L2gzPgo8cD5BZGQgbmV3IGRvY3VtZW50LiBGaWxsIGFsbCBmaWVsZHMuIFlvdSBjb3VsZCBmaW5kIEdVSUQgd2hlbiB2aWV3aW5nIGRvY3VtZW50IGZyb20geW91ciBHcm91cERvY3MgYWNjb3VudC48L3A+CjxoMz5XaGF0IFBhcmFtZXRlcnMgRG9lcyBJdCBUYWtlPC9oMz4KPHA+V2lkdGggYW5kIEhlaWdodCBhcmUgZm9yIHNpemUgb2YgaWZyYW1lIG9uIHBhZ2UuPC9wPjxoMz5QYXJhbWV0ZXJzPC9oMz48dWw+PGxpPjxlbT4ob3B0aW9uYWwpPC9lbT4gbGFuZz0iZW5fVVMiIC0gUGFyYW1ldGVyIGlzIHVzZWQgdG8gc3BlY2lmeSB3aGF0IGxhbmd1YWdlIHRvIHVzZSBmb3IgZGlzcGxheSBvbiB0aGUgZnJvbnRlbmQuIE5vdCBhbGwgbW9kdWxlcyBzdXBwb3J0IG9yIG5lZWQgdGhpcy48L2xpPjwvdWw+]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBHcm91cERvY3MgVGVhbSAmbHQ7c3VwcG9ydEBncm91cGRvY3MuY29tJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDEuMDxiciAvPjxiciAvPkNoYW5nZSBIaXN0b3J5OjxiciAvPjx1bD4KPGxpPlZlcnNpb24gMS4wIC0gNCBPY3RvYmVyIDIwMTIuIEluaXRpYWwgUmVsZWFzZS48L2xpPgo8L3VsPjxiciAvPg==]]></about>
	<description><![CDATA[Admin Description]]></description>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgovKiAtPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LQoKICAgQ29kZSBmb3IgZ3JvdXBkb2NzX2Fubm90YXRpb24gImRlZmF1bHQiIGFjdGlvbgoKICAgLT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS0KICAgCiAgIFR5cGljYWxseSwgdGhpcyB3aWxsIGRpc3BsYXkgc29tZXRoaW5nIGZyb20gYSB0ZW1wbGF0ZQogICBvciBkbyBzb21lIG90aGVyIHRhc2suCiAgIAoqLwokdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3BhcmFtcycsJHBhcmFtcyk7IAoKZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdkaXNwbGF5LnRwbCcpOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgppZiAoISAkdGhpcy0+Q2hlY2tBY2Nlc3MoKSkKCXsKCXJldHVybiAkdGhpcy0+RGlzcGxheUVycm9yUGFnZSgkaWQsICRwYXJhbXMsICRyZXR1cm5pZCwkdGhpcy0+TGFuZygnYWNjZXNzZGVuaWVkJykpOwoJfQoKJGFkbWludGhlbWUgPSAkZ0Ntcy0+dmFyaWFibGVzWyJhZG1pbnRoZW1lIl07Cgokd2hlcmVjbGF1c2UgPSBhcnJheSgpOwoJCQkJCQkKJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCJhZGRuZXciLCAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICJlZGl0QSIsICRyZXR1cm5pZCwgJGFkbWludGhlbWUtPkRpc3BsYXlJbWFnZSgiaWNvbnMvc3lzdGVtL25ld29iamVjdC5naWYiLCAiIiwiIiwiIiwic3lzdGVtaWNvbiIpLiIgIi4kdGhpcy0+TGFuZygiYWRkX2RvYyIpKSk7CgkJCiRpdGVtbGlzdCA9ICR0aGlzLT5nZXRfZG9jc19saXN0KGlzc2V0KCR3aGVyZWNsYXVzZSk/JHdoZXJlY2xhdXNlOmFycmF5KCksdHJ1ZSwgJGlkLCAkcmV0dXJuaWQsIGZhbHNlKTsKCQkJCiR0aGlzLT5zbWFydHktPmFzc2lnbigiaXRlbWxpc3QiLCAkaXRlbWxpc3QpOwplY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoImFkbWlucGFuZWwudHBsIik7Cj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/action.editA.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCmlmICghaXNzZXQoJGdDbXMpKSBleGl0Ow0KDQppZiAoISAkdGhpcy0+Q2hlY2tBY2Nlc3MoKSkNCgl7DQoJcmV0dXJuICR0aGlzLT5EaXNwbGF5RXJyb3JQYWdlKCRpZCwgJHBhcmFtcywgJHJldHVybmlkLCR0aGlzLT5MYW5nKCdhY2Nlc3NkZW5pZWQnKSk7DQoJfQ0KDQokYWRtaW50aGVtZSA9ICRnQ21zLT52YXJpYWJsZXNbImFkbWludGhlbWUiXTsNCg0KaWYoaXNzZXQoJHBhcmFtc1siY2FuY2VsIl0pKXsNCgkkdGhpcy0+UmVkaXJlY3QoJGlkLCAiZGVmYXVsdGFkbWluIiwgJHJldHVybmlkLCAkbmV3cGFyYW1zKTsNCn0NCg0KJGRiID0mICR0aGlzLT5HZXREYigpOw0KDQovLyBDSEVDSyBJRiBUSEUgRk9STSBJUyBCRUlORyBTVUJNSVRURUQgOg0KLy8gKHdlIG11c3QgZGV0ZWN0IGFsbCBraW5kcyBvZiBzdWJtaXQgYnV0dG9ucywgaW5jbHVkaW5nIGZpbGVzLCBzaW5jZSBpbmZvcm1hdGlvbiBtdXN0IGJlIHNhdmVkIGJlZm9yZSB3ZSBnbyB0byBmaWxlIHN1Ym1pc3Npb24pDQppZiAoaXNzZXQoJHBhcmFtc1sic3VibWl0Il0pIHx8IA0KCWlzc2V0KCRwYXJhbXNbImFwcGx5Il0pIA0KCSkNCnsNCgkNCgkNCglkZWJ1Z19idWZmZXIoIkVkaXQgRm9ybSBoYXMgYmVlbiBzdWJtaXR0ZWQiLl9fTElORV9fKTsNCg0KCS8vIFJFVFJJRVZJTkcgVEhFIEZPUk0gVkFMVUVTIChhbmQgZXNjYXBpbmcgaXQsIGlmIG5lZWRlZCkNCglpZighaXNzZXQoJGl0ZW0pKSAkaXRlbSA9IG5ldyBzdGRDbGFzcygpOw0KCQ0KCSRpdGVtLT53aWR0aCA9ICRwYXJhbXNbIndpZHRoIl07DQoJJGl0ZW0tPmhlaWdodCA9ICRwYXJhbXNbImhlaWdodCJdOw0KCSRpdGVtLT5ndWlkID0gJHBhcmFtc1siZ3VpZCJdOw0KCSRpdGVtLT5uYW1lID0gJHBhcmFtc1sibmFtZSJdOw0KCQ0KCQ0KCS8vIEZJRUxEUyBUTyBVUERBVEUNCgkkcXVlcnkgPSAoaXNzZXQoJGl0ZW0tPmlkKT8iVVBEQVRFICI6IklOU0VSVCBJTlRPICIpLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2dyb3VwZG9jc19hbm5vdGF0aW9uX2RvY3MgU0VUIA0KCQkJd2lkdGg9PywNCgkJCWhlaWdodD0/LA0KCQkJZ3VpZD0/LA0KCQkJbmFtZT0/IjsNCgkJCQ0KCS8vIFZBTFVFUw0KCSR2YWx1ZXMgPSBhcnJheShhZGRzbGFzaGVzKCRpdGVtLT53aWR0aCksDQoJCQlhZGRzbGFzaGVzKCRpdGVtLT5oZWlnaHQpLA0KCQkJYWRkc2xhc2hlcygkaXRlbS0+Z3VpZCksDQoJCQlhZGRzbGFzaGVzKCRpdGVtLT5uYW1lKSwNCgkJCSk7DQoNCgkJaWYoaXNzZXQoJGl0ZW0tPmlkKSl7DQoJCQkkcXVlcnkgLj0gIiBXSEVSRSBpZD0/OyI7DQoJCQlhcnJheV9wdXNoKCR2YWx1ZXMsJGl0ZW0tPmlkKTsNCgkJfSBlbHNlIHsNCgkJCS8vIE5FVyBJVEVNDQoJCQkNCgkJCS8vIGdldCBhIG5ldyBpZCBmcm9tIHRoZSBzZXF1ZW5jZSB0YWJsZQ0KCQkJJGl0ZW0tPmlkID0gJGRiLT5HZW5JRChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9ncm91cGRvY3NfYW5ub3RhdGlvbl9kb2NzX3NlcSIpOw0KCQkNCgkJCSRxdWVyeSAuPSAiLCBpZD0iLiRpdGVtLT5pZDsNCg0KCQl9DQoJCSRkYi0+RXhlY3V0ZSgkcXVlcnksICR2YWx1ZXMpOwkNCgkJDQoJCSRyZWRpcmVjdCA9IHRydWU7DQoJCS8vaWYobXlzcWxfYWZmZWN0ZWRfcm93cygpKXsJLy8gbXlzcWwtb25seQ0KCQlpZigkZGItPkFmZmVjdGVkX1Jvd3MoKSl7DQoJCQkNCgkJfWVsc2VpZihteXNxbF9lcnJvcigpKXsNCgkJCS8vIGRvIG5vdCByZWRpcmVjdCA6DQoJCQkkcmVkaXJlY3QgPSBmYWxzZTsNCgkJCWVjaG8gJHRoaXMtPlNob3dFcnJvcnMobXlzcWxfZXJyb3IoKSk7DQoJCX0NCg0KCQkvLyBSRURJUkVDVElORy4uLg0KCQkJaWYoJHJlZGlyZWN0ID09IGZhbHNlKXsNCgkJCX1lbHNlaWYoaXNzZXQoJHBhcmFtc1siYXBwbHkiXSkpew0KCQkJCWVjaG8gJHRoaXMtPlNob3dNZXNzYWdlKCR0aGlzLT5MYW5nKCJtZXNzYWdlX21vZGlmaWVkIikpOw0KCQkJfWVsc2V7DQoJCQkJJHBhcmFtcyA9IGFycmF5KCJtb2R1bGVfbWVzc2FnZSIgPT4gJHRoaXMtPkxhbmcoIm1lc3NhZ2VfbW9kaWZpZWQiKSk7DQoJCQkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgImRlZmF1bHRhZG1pbiIsICRyZXR1cm5pZCwgJHBhcmFtcyk7CQ0KCQkJfQkNCgkNCgkvLyBFTkQgT0YgRk9STSBTVUJNSVNTSU9ODQp9DQoNCg0KDQovKiAjIyBQUkVQQVJJTkcgU01BUlRZIEVMRU1FTlRTDQpDcmVhdGVJbnB1dFRleHQgOiAoaWQsbmFtZSx2YWx1ZSxzaXplLG1heGxlbmd0aCkNCkNyZWF0ZVRleHRBcmVhIDogKHd5c2l3eWcsaWQsdGV4dCxuYW1lKQ0KQ3JlYXRlSW5wdXRTZWxlY3RMaXN0IDogKGlkLG5hbWUsaXRlbXMsc2VsZWN0ZWRpdGVtcyxzaXplKQ0KQ3JlYXRlSW5wdXREcm9wZG93biA6IChpZCxuYW1lLGl0ZW1zLHNpbmRleCxzdmFsdWUpDQoqLw0KDQoNCiR0aGlzLT5zbWFydHktPmFzc2lnbigid2lkdGhfbGFiZWwiLCAkdGhpcy0+TGFuZygiZ3JvdXBkb2NzX3dpZHRoIikpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCJ3aWR0aF9pbnB1dCIsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCJ3aWR0aCIsaXNzZXQoJGl0ZW0pPyRpdGVtLT53aWR0aDoiIiwzMCwxMCkpOw0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oImhlaWdodF9sYWJlbCIsICR0aGlzLT5MYW5nKCJncm91cGRvY3NfaGVpZ2h0IikpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCJoZWlnaHRfaW5wdXQiLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwiaGVpZ2h0Iixpc3NldCgkaXRlbSk/JGl0ZW0tPmhlaWdodDoiIiwzMCwxMCkpOw0KDQokdGhpcy0+c21hcnR5LT5hc3NpZ24oImd1aWRfbGFiZWwiLCAkdGhpcy0+TGFuZygiZ3JvdXBkb2NzX2d1aWQiKSk7DQokdGhpcy0+c21hcnR5LT5hc3NpZ24oImd1aWRfaW5wdXQiLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwiZ3VpZCIsaXNzZXQoJGl0ZW0pPyRpdGVtLT5ndWlkOiIiLDc1LDIwMDApKTsNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCJuYW1lX2xhYmVsIiwgJHRoaXMtPkxhbmcoImdyb3VwZG9jc19uYW1lIikpOw0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCJuYW1lX2lucHV0IiwgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsIm5hbWUiLGlzc2V0KCRpdGVtKT8kaXRlbS0+Z3VpZDoiIiw3NSwyMDAwKSk7DQoNCg0KJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCJzdWJtaXQiLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAic3VibWl0IiwgbGFuZygic3VibWl0IikpKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigiYXBwbHkiLCAoaXNzZXQoJGl0ZW0pICYmIGlzc2V0KCRpdGVtLT5pZCkpPyR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICJhcHBseSIsIGxhbmcoImFwcGx5IikpOiIiKTsNCiR0aGlzLT5zbWFydHktPmFzc2lnbigiY2FuY2VsIiwgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgImNhbmNlbCIsIGxhbmcoImNhbmNlbCIpKSk7DQoNCg0KLy8gRElTUExBWUlORw0KaWYoaXNzZXQoJGl0ZW0pICYmIGlzc2V0KCRpdGVtLT5pZCkpew0KCQllY2hvICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAiZWRpdEEiLCAkcmV0dXJuaWQpOw0KCQllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoImVkaXRBLnRwbCIpOw0KCQllY2hvICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICJBaWQiLCAkaXRlbS0+aWQpOw0KCQlpZihpc3NldCgkaXRlbSkgJiYgaXNzZXQoJGl0ZW0tPnBhcmVudCkpIGVjaG8gJHRoaXMtPkNyZWF0ZUlucHV0SGlkZGVuKCRpZCwgIm9sZHBhcmVudCIsICRpdGVtLT5wYXJlbnQpOw0KCQllY2hvICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICJBaXRlbV9vcmRlciIsICRpdGVtLT5pdGVtX29yZGVyKTsNCgkJZWNobyAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpOw0KCQ0KDQp9ZWxzZXsNCgllY2hvICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAiZWRpdEEiLCAkcmV0dXJuaWQpOw0KCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgiZWRpdEEudHBsIik7DQoJZWNobyAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpOw0KfQ0KPz4NCg==]]></data>
	</file>
	<file>
	  <filename>/groupdocs_annotation.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBNb2R1bGU6IGdyb3VwZG9jc19hbm5vdGF0aW9uIC0gR3JvdXBEb2NzIEFubm90YXRpb24gbGV0cyB5b3UgYWRkIG5vdGVzIHRvIFBERiBhbmQgV29yZCBkb2N1bWVudHMsIGFzIHdlbGwgYXMgdG8gaW1hZ2UgZmlsZXMg4oCTIGFsbCBkaXJlY3RseSBmcm9tIGEgd2ViIGJyb3dzZXIuIAojIFZlcnNpb246IDEuMCwgR3JvdXBEb2NzIFRlYW0KIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAxMiBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpCiMgVGhpcyBwcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcKIwojIFRoaXMgZmlsZSBvcmlnaW5hbGx5IGNyZWF0ZWQgYnkgTW9kdWxlTWFrZXIgbW9kdWxlLCB2ZXJzaW9uIDAuMy4yCiMgQ29weXJpZ2h0IChjKSAyMDEyIGJ5IFNhbXVlbCBHb2xkc3RlaW4gKHNqZ0BjbXNtYWRlc2ltcGxlLm9yZykgCiMKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIwojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvcgojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiMKIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKIyBGb3VuZGF0aW9uLCBJbmMuLCA1OSBUZW1wbGUgUGxhY2UsIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAwMjExMS0xMzA3IFVTQQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwKIwojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoKIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIyBGb3IgSGVscCBidWlsZGluZyBtb2R1bGVzOgojIC0gUmVhZCB0aGUgRG9jdW1lbnRhdGlvbiBhcyBpdCBiZWNvbWVzIGF2YWlsYWJsZSBhdAojICAgaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy8KIyAtIENoZWNrIG91dCB0aGUgU2tlbGV0b24gTW9kdWxlIGZvciBhIGNvbW1lbnRlZCBleGFtcGxlCiMgLSBMb29rIGF0IG90aGVyIG1vZHVsZXMsIGFuZCBsZWFybiBmcm9tIHRoZSBzb3VyY2UKIyAtIENoZWNrIG91dCB0aGUgZm9ydW1zIGF0IGh0dHA6Ly9mb3J1bXMuY21zbWFkZXNpbXBsZS5vcmcKIyAtIENoYXQgd2l0aCBkZXZlbG9wZXJzIG9uIHRoZSAjY21zIElSQyBjaGFubmVsCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCmNsYXNzIGdyb3VwZG9jc19hbm5vdGF0aW9uIGV4dGVuZHMgQ01TTW9kdWxlCnsKCglmdW5jdGlvbiBHZXROYW1lKCkKCXsKCQlyZXR1cm4gJ2dyb3VwZG9jc19hbm5vdGF0aW9uJzsKCX0KCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJICAgR2V0RnJpZW5kbHlOYW1lKCkKCSAgIFRoaXMgY2FuIHJldHVybiBhbnkgc3RyaW5nLCBwcmVmZXJhYmx5IGEgbG9jYWxpemVkIG5hbWUKCSAgIG9mIHRoZSBtb2R1bGUuIFRoaXMgaXMgdGhlIG5hbWUgdGhhdCdzIHNob3duIGluIHRoZQoJICAgQWRtaW4gTWVudXMgYW5kIHNlY3Rpb24gcGFnZXMgKGlmIHRoZSBtb2R1bGUgaGFzIGFuIGFkbWluCgkgICBjb21wb25lbnQpLgoJICAgCgkgICBTZWUgdGhlIG5vdGUgb24gbG9jYWxpemF0aW9uIGF0IHRoZSB0b3Agb2YgdGhpcyBmaWxlLgoJICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpOwoJfQoKCQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSAgIEdldFZlcnNpb24oKQoJICAgVGhpcyBjYW4gcmV0dXJuIGFueSBzdHJpbmcsIHByZWZlcmFibHkgYSBudW1iZXIgb3IKCSAgIHNvbWV0aGluZyB0aGF0IG1ha2VzIHNlbnNlIGZvciBkZXNpZ25hdGluZyBhIHZlcnNpb24uCgkgICBUaGUgQ01TIHdpbGwgdXNlIHRoaXMgdG8gaWRlbnRpZnkgd2hldGhlciBvciBub3QKCSAgIHRoZSBpbnN0YWxsZWQgdmVyc2lvbiBvZiB0aGUgbW9kdWxlIGlzIGN1cnJlbnQsIGFuZAoJICAgdGhlIG1vZHVsZSB3aWxsIHVzZSBpdCB0byBmaWd1cmUgb3V0IGhvdyB0byB1cGdyYWRlCgkgICBpdHNlbGYgaWYgcmVxdWVzdGVkLgkgICAKCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIEdldFZlcnNpb24oKQoJewoJCXJldHVybiAnMS4wJzsKCX0KCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJICAgR2V0SGVscCgpCgkgICBUaGlzIHJldHVybnMgSFRNTCBpbmZvcm1hdGlvbiBvbiB0aGUgbW9kdWxlLgoJICAgVHlwaWNhbGx5LCB5b3UnbGwgd2FudCB0byBpbmNsdWRlIGluZm9ybWF0aW9uIG9uIGhvdyB0bwoJICAgdXNlIHRoZSBtb2R1bGUuCgkgICAKCSAgIFNlZSB0aGUgbm90ZSBvbiBsb2NhbGl6YXRpb24gYXQgdGhlIHRvcCBvZiB0aGlzIGZpbGUuCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBHZXRIZWxwKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2hlbHAnKTsKCX0KCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJICAgR2V0QXV0aG9yKCkKCSAgIFRoaXMgcmV0dXJucyBhIHN0cmluZyB0aGF0IGlzIHByZXNlbnRlZCBpbiB0aGUgTW9kdWxlCgkgICBBZG1pbiBpZiB5b3UgY2xpY2sgb24gdGhlICJBYm91dCIgbGluay4KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIEdldEF1dGhvcigpCgl7CgkJcmV0dXJuICdHcm91cERvY3MgVGVhbSc7Cgl9CgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSAgIEdldEF1dGhvckVtYWlsKCkKCSAgIFRoaXMgcmV0dXJucyBhIHN0cmluZyB0aGF0IGlzIHByZXNlbnRlZCBpbiB0aGUgTW9kdWxlCgkgICBBZG1pbiBpZiB5b3UgY2xpY2sgb24gdGhlICJBYm91dCIgbGluay4gSXQgaGVscHMgdXNlcnMKCSAgIG9mIHlvdXIgbW9kdWxlIGdldCBpbiB0b3VjaCB3aXRoIHlvdSB0byBzZW5kIGJ1ZyByZXBvcnRzLAoJICAgcXVlc3Rpb25zLCBjYXNlcyBvZiBiZWVyLCBhbmQvb3IgbGFyZ2Ugc3VtcyBvZiBtb25leS4KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIEdldEF1dGhvckVtYWlsKCkKCXsKCQlyZXR1cm4gJ3N1cHBvcnRAZ3JvdXBkb2NzLmNvbSc7Cgl9CgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSAgIEdldENoYW5nZUxvZygpCgkgICBUaGlzIHJldHVybnMgYSBzdHJpbmcgdGhhdCBpcyBwcmVzZW50ZWQgaW4gdGhlIG1vZHVsZQoJICAgQWRtaW4gaWYgeW91IGNsaWNrIG9uIHRoZSBBYm91dCBsaW5rLiBJdCBoZWxwcyB1c2VycwoJICAgZmlndXJlIG91dCB3aGF0J3MgY2hhbmdlZCBiZXR3ZWVuIHJlbGVhc2VzLgoJICAgU2VlIHRoZSBub3RlIG9uIGxvY2FsaXphdGlvbiBhdCB0aGUgdG9wIG9mIHRoaXMgZmlsZS4KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIEdldENoYW5nZUxvZygpCgl7CgkJcmV0dXJuICR0aGlzLT5MYW5nKCdjaGFuZ2Vsb2cnKTsKCX0KCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJICAgSXNQbHVnaW5Nb2R1bGUoKQoJICAgVGhpcyBmdW5jdGlvbiByZXR1cm5zIHRydWUgb3IgZmFsc2UsIGRlcGVuZGluZyB1cG9uCgkgICB3aGV0aGVyIHVzZXJzIGNhbiBpbmNsdWRlIHRoZSBtb2R1bGUgaW4gYSBwYWdlIG9yCgkgICB0ZW1wbGF0ZSB1c2luZyBhIHNtYXJ0eSB0YWcgb2YgdGhlIGZvcm0KCSAgIHtjbXNfbW9kdWxlIG1vZHVsZT0nZ3JvdXBkb2NzX2Fubm90YXRpb24nIHBhcmFtMT12YWwgcGFyYW0yPXZhbC4uLn0KCSAgIAoJICAgSWYgeW91ciBtb2R1bGUgZG9lcyBub3QgZ2V0IGluY2x1ZGVkIGluIHBhZ2VzIG9yCgkgICB0ZW1wbGF0ZXMsIHJldHVybiAiZmFsc2UiIGhlcmUuCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBJc1BsdWdpbk1vZHVsZSgpCgl7CgkJcmV0dXJuIHRydWU7Cgl9CgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSAgIEhhc0FkbWluKCkKCSAgIFRoaXMgZnVuY3Rpb24gcmV0dXJucyBhIGJvb2xlYW4gdmFsdWUsIGRlcGVuZGluZyBvbgoJICAgd2hldGhlciB5b3VyIG1vZHVsZSBhZGRzIGFueXRoaW5nIHRvIHRoZSBBZG1pbiBhcmVhIG9mCgkgICB0aGUgc2l0ZS4gRm9yIHRoZSByZXN0IG9mIHRoZXNlIGNvbW1lbnRzLCBJJ2xsIGJlIGNhbGxpbmcKCSAgIHRoZSBhZG1pbiBwYXJ0IG9mIHlvdXIgbW9kdWxlIHRoZSAiQWRtaW4gUGFuZWwiIGZvcgoJICAgd2FudCBvZiBhIGJldHRlciB0ZXJtLgoJICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gSGFzQWRtaW4oKQoJewoJCXJldHVybiB0cnVlOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJICAgR2V0QWRtaW5TZWN0aW9uKCkKCSAgIElmIHlvdXIgbW9kdWxlIGhhcyBhbiBBZG1pbiBQYW5lbCwgeW91IGNhbiBzcGVjaWZ5CgkgICB3aGljaCBBZG1pbiBTZWN0aW9uIChvciB0b3AtbGV2ZWwgQWRtaW4gTWVudSkgaXQgc2hvd3MKCSAgIHVwIGluLiBUaGlzIG1ldGhvZCByZXR1cm5zIGEgc3RyaW5nIHRvIHNwZWNpZnkgdGhhdAoJICAgc2VjdGlvbi4gVmFsaWQgcmV0dXJuIHZhbHVlcyBhcmU6CgoJICAgbWFpbiAgICAgICAgLSB0aGUgTWFpbiBtZW51IHRhYi4KCSAgIGNvbnRlbnQgICAgIC0gdGhlIENvbnRlbnQgbWVudQoJICAgbGF5b3V0ICAgICAgLSB0aGUgTGF5b3V0IG1lbnUKCSAgIHVzZXJzZ3JvdXBzIC0gdGhlIFVzZXJzIGFuZCBHcm91cHMgbWVudQoJICAgZXh0ZW5zaW9ucyAgLSB0aGUgRXh0ZW5zaW9ucyBtZW51ICh0aGlzIGlzIHRoZSBkZWZhdWx0KQoJICAgc2l0ZWFkbWluICAgLSB0aGUgU2l0ZSBBZG1pbiBtZW51CgkgICB2aWV3c2l0ZSAgICAtIHRoZSBWaWV3IFNpdGUgbWVudSB0YWIKCSAgIGxvZ291dCAgICAgIC0gdGhlIExvZ291dCBtZW51IHRhYgoJICAgCgkgICBOb3RlIHRoYXQgaWYgeW91IHBsYWNlIHlvdXIgbW9kdWxlIGluIHRoZSBtYWluLAoJICAgdmlld3NpdGUsIG9yIGxvZ291dCBzZWN0aW9ucywgaXQgd2lsbCBzaG93IHVwIGluIHRoZQoJICAgbWVudXMsIGJ1dCB3aWxsIG5vdCBiZSB2aXNpYmxlIGluIGFueSB0b3AtbGV2ZWwKCSAgIHNlY3Rpb24gcGFnZXMuCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBHZXRBZG1pblNlY3Rpb24oKQoJewoJCXJldHVybiAnY29udGVudCc7Cgl9CgoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkgICBHZXRBZG1pbkRlc2NyaXB0aW9uKCkKCSAgIElmIHlvdXIgbW9kdWxlIGRvZXMgaGF2ZSBhbiBBZG1pbiBQYW5lbCwgeW91CgkgICBjYW4gaGF2ZSBpdCByZXR1cm4gYSBkZXNjcmlwdGlvbiBzdHJpbmcgdGhhdCBnZXRzIHNob3duCgkgICBpbiB0aGUgQWRtaW4gU2VjdGlvbiBwYWdlIHRoYXQgY29udGFpbnMgdGhlIG1vZHVsZS4KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIEdldEFkbWluRGVzY3JpcHRpb24oKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZygnYWRtaW5kZXNjcmlwdGlvbicpOwoJfQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJICAgVmlzaWJsZVRvQWRtaW5Vc2VyKCkKCSAgIElmIHlvdXIgbW9kdWxlIGRvZXMgaGF2ZSBhbiBBZG1pbiBQYW5lbCwgeW91CgkgICBjYW4gY29udHJvbCB3aGV0aGVyIG9yIG5vdCBpdCdzIGRpc3BsYXllZCBieSB0aGUgYm9vbGVhbgoJICAgdGhhdCBpcyByZXR1cm5lZCBieSB0aGlzIG1ldGhvZC4gVGhpcyBpcyBwcmltYXJpbHkgdXNlZAoJICAgdG8gaGlkZSBtb2R1bGVzIGZyb20gYWRtaW5zIHdobyBsYWNrIHBlcm1pc3Npb24gdG8gdXNlCgkgICB0aGVtLgoJICAgCgkgICBUeXBpY2FsbHksIHlvdSdsbCB1c2Ugc29tZSBwZXJtaXNzaW9uIHRvIHNldCB0aGlzCgkgICAoZS5nLiwgJHRoaXMtPkNoZWNrUGVybWlzc2lvbignU29tZSBQZXJtaXNzaW9uJyk7ICkKCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIFZpc2libGVUb0FkbWluVXNlcigpCgl7CiAgICAgICAgcmV0dXJuIHRydWU7Cgl9CgkKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJICAgQ2hlY2tBY2Nlc3MoKQoJICAgVGhpcyB3cmFwcGVyIGZ1bmN0aW9uIHdpbGwgY2hlY2sgYWdhaW5zdCB0aGUgc3BlY2lmaWVkIHBlcm1pc3Npb24sCgkgICBhbmQgZGlzcGxheSBhbiBlcnJvciBwYWdlIGlmIHRoZSB1c2VyIGRvZXNuJ3QgaGF2ZSBhZGVxdWF0ZSBwZXJtaXNzaW9ucy4KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8KCWZ1bmN0aW9uIENoZWNrQWNjZXNzKCRwZXJtID0gJ01vZGlmeUdyb3VEb2NzQW5ub3RhdGlvbicpCgkJewoJCXJldHVybiAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCRwZXJtKTsKCQl9CgkKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkgICBEaXNwbGF5RXJyb3JQYWdlKCkKCSAgIFRoaXMgaXMgYSBzaW1wbGUgZnVuY3Rpb24gZm9yIGdlbmVyYXRpbmcgZXJyb3IgcGFnZXMuCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCiAgICBmdW5jdGlvbiBEaXNwbGF5RXJyb3JQYWdlKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5faWQsICRtZXNzYWdlPScnKQogICAgewoJCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGl0bGVfZXJyb3InLCAkdGhpcy0+TGFuZygnZXJyb3InKSk7CgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZignbWVzc2FnZScsICRtZXNzYWdlKTsKCiAgICAgICAgLy8gRGlzcGxheSB0aGUgcG9wdWxhdGVkIHRlbXBsYXRlCiAgICAgICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlcnJvci50cGwnKTsKICAgIH0KCQoKCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoJICAgR2V0RGVwZW5kZW5jaWVzKCkKCSAgIFlvdXIgbW9kdWxlIG1heSBuZWVkIGFub3RoZXIgbW9kdWxlIHRvIGFscmVhZHkgYmUgaW5zdGFsbGVkCgkgICBiZWZvcmUgeW91IGNhbiBpbnN0YWxsIGl0LgoJICAgVGhpcyBtZXRob2QgcmV0dXJucyBhIGxpc3Qgb2YgdGhvc2UgZGVwZW5kZW5jaWVzIGFuZAoJICAgbWluaW11bSB2ZXJzaW9uIG51bWJlcnMgdGhhdCB0aGlzIG1vZHVsZSByZXF1aXJlcy4KCSAgIAoJICAgSXQgc2hvdWxkIHJldHVybiBhbiBoYXNoLCBlZy4KCSAgIHJldHVybiBhcnJheSgnc29tZW1vZHVsZSc9PicxLjAnLCAnb3RoZXJtb2R1bGUnPT4nMS4xJyk7CgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCglmdW5jdGlvbiBHZXREZXBlbmRlbmNpZXMoKQoJewoJCXJldHVybiBhcnJheSgpOwoJfQoKCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCgkgICBJbnN0YWxsUG9zdE1lc3NhZ2UoKQoJICAgQWZ0ZXIgaW5zdGFsbGF0aW9uLCB0aGVyZSBtYXkgYmUgdGhpbmdzIHlvdSB3YW50IHRvCgkgICBjb21tdW5pY2F0ZSB0byB5b3VyIGFkbWluLiBUaGlzIGZ1bmN0aW9uIHJldHVybnMgYQoJICAgc3RyaW5nIHdoaWNoIHdpbGwgYmUgZGlzcGxheWVkLgoJICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gSW5zdGFsbFBvc3RNZXNzYWdlKCkKCXsKCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3RpbnN0YWxsJyk7Cgl9CgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSAgIFVuaW5zdGFsbFBvc3RNZXNzYWdlKCkKCSAgIEFmdGVyIHJlbW92aW5nIGEgbW9kdWxlLCB0aGVyZSBtYXkgYmUgdGhpbmdzIHlvdSB3YW50IHRvCgkgICBjb21tdW5pY2F0ZSB0byB5b3VyIGFkbWluLiBUaGlzIGZ1bmN0aW9uIHJldHVybnMgYQoJICAgc3RyaW5nIHdoaWNoIHdpbGwgYmUgZGlzcGxheWVkLgoJICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJZnVuY3Rpb24gVW5pbnN0YWxsUG9zdE1lc3NhZ2UoKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZygncG9zdHVuaW5zdGFsbCcpOwoJfQoKCgoKCS8qKgoJICogVW5pbnN0YWxsUHJlTWVzc2FnZSgpCgkgKiBUaGlzIGFsbG93cyB5b3UgdG8gZGlzcGxheSBhIG1lc3NhZ2UgYWxvbmcgd2l0aCBhIFllcy9ObyBkaWFsb2cgYm94LiBJZiB0aGUgdXNlciByZXNwb25kcwoJICogaW4gdGhlIGFmZmlybWF0aXZlIHRvIHlvdXIgbWVzc2FnZSwgdGhlIHVuaW5zdGFsbCB3aWxsIHByb2NlZWQuIElmIHRoZXkgcmVzcG9uZCBpbiB0aGUKCSAqIG5lZ2F0aXZlLCB0aGUgdW5pbnN0YWxsIHdpbGwgYmUgY2FuY2VsZWQuIFRodXMsIHlvdXIgbWVzc2FnZSBzaG91bGQgYmUgb2YgdGhlIGZvcm0KCSAqICJBbGwgbW9kdWxlIGRhdGEgd2lsbCBiZSBkZWxldGVkLiBBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gdW5pbnN0YWxsIHRoaXMgbW9kdWxlPyIKCSAqCgkgKiBJZiB5b3UgZG9uJ3Qgd2FudCB0aGUgZGlhbG9nLCBoYXZlIHRoaXMgbWV0aG9kIHJldHVybiBhIEZBTFNFLCB3aGljaCB3aWxsIGNhdXNlIHRoZQoJICogbW9kdWxlIHRvIHVuaW5zdGFsbCBpbW1lZGlhdGVseSBpZiB0aGUgdXNlciBjbGlja3MgdGhlICJ1bmluc3RhbGwiIGxpbmsuCgkgKi8KCWZ1bmN0aW9uIFVuaW5zdGFsbFByZU1lc3NhZ2UoKQoJewoJCXJldHVybiAkdGhpcy0+TGFuZygncmVhbGx5X3VuaW5zdGFsbCcpOwoJfQoJCglmdW5jdGlvbiBjb3VudHNvbWV0aGluZygkdGFibGVuYW1lLCR3aGF0PSJpZCIsJHdoZXJlPWFycmF5KCksJHdoZXJlc3RyaW5nPWZhbHNlLCR3aGVyZXZhbHVlcz1hcnJheSgpLCRwYXJlbnQ9ZmFsc2UpewoJCS8vIHJldHVybnMgdGhlIG51bWJlciBvZiBlbGVtZW50cyBpbiBhIHRhYmxlIGNvcnJlc3BvbmRpbmcgdG8gY3JpdGVyaWFzCgkJaWYoISRwYXJlbnQgJiYgaXNzZXQoJHdoZXJlWyJwYXJlbnQiXSkpCXVuc2V0KCR3aGVyZVsicGFyZW50Il0pOwoJCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQlpZigkd2hlcmVzdHJpbmcpewoJCQkkd2hlcmVzdHJpbmcgPSAiIFdIRVJFICIuJHdoZXJlc3RyaW5nOwoJCX1lbHNlewoJCQkkd2hlcmVzdHJpbmcgPSAiIjsKCQkJJHdoZXJldmFsdWVzID0gYXJyYXkoKTsKCQkJZm9yZWFjaCgkd2hlcmUgYXMgJGtleT0+JHZhbHVlKXsKCQkJCWlmKCRrZXkgPT0gInBhcmVudCIpewoJCQkJCSR3aGVyZXN0cmluZyAuPSAoJHdoZXJlc3RyaW5nID09ICIiPyIgV0hFUkUgIjoiIEFORCAiKS4iQS5wYXJlbnQ9Qi5pZCBBTkQgQi5hbGlhcz0/IjsKCQkJCX1lbHNlewoJCQkJCSR3aGVyZXN0cmluZyAuPSAoJHdoZXJlc3RyaW5nID09ICIiPyIgV0hFUkUgIjoiIEFORCAiKS4iQS4iLiRrZXkuIj0/IjsKCQkJCX0KCQkJCSR3aGVyZXZhbHVlc1tdID0gJHZhbHVlOwoJCQl9CgkJfQoJCSRxdWVyeSA9ICJTRUxFQ1QgQ09VTlQoQS4kd2hhdCkgb3VyY291bnQgRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlXyIuJHRoaXMtPkdldE5hbWUoKS4iXyIuJHRhYmxlbmFtZS4iIEEiOwoJCWlmKCRwYXJlbnQgJiYgaXNzZXQoJHdoYXRbInBhcmVudCJdKSkJJHF1ZXJ5IC49ICIsICIuY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfIi4kdGhpcy0+R2V0TmFtZSgpLiJfIi4kcGFyZW50LiIgQiI7CgkJJHF1ZXJ5IC49ICR3aGVyZXN0cmluZzsKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCR3aGVyZXZhbHVlcyk7CgkJaWYgKCRkYnJlc3VsdCAmJiAkcm93ID0gJGRicmVzdWx0LT5GZXRjaFJvdygpKXsKCQkJcmV0dXJuICRyb3dbIm91cmNvdW50Il07CgkJfWVsc2V7CgkJCXJldHVybiAwOwoJCX0KCX0KCglmdW5jdGlvbiBnZXRfZG9jc19saXN0KCR3aGVyZT1hcnJheSgpLCRhZG1pbj1mYWxzZSwkaWQ9IiIsJHJldHVybmlkPSIiLCRvcmRlcj1mYWxzZSwkbGltaXQ9MCwkY3VzdG9td2hlcmU9ZmFsc2UsJGN1c3RvbXZhbHVlcz1hcnJheSgpLCRjdXN0b21vcmRlcj1mYWxzZSl7CgkJZ2xvYmFsICRnQ21zOwoJCSRsb2FkX25iY2hpbGRyZW4gPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgibG9hZF9uYmNoaWxkcmVuIix0cnVlKTsKCQlpZigkYWRtaW4pCSRhZG1pbnRoZW1lID0gJGdDbXMtPnZhcmlhYmxlc1siYWRtaW50aGVtZSJdOwoJCWlmKCEkb3JkZXIpCSRvcmRlciA9ICIiOwoJCSRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCQkkZmllbGRzID0gYXJyYXkoIndpZHRoIiwiaGVpZ2h0IiwiZ3VpZCIsIm5hbWUiKTsKCQkKCQkkcXVlcnkgPSAiU0VMRUNUICogRlJPTSAiLmNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX2dyb3VwZG9jc19hbm5vdGF0aW9uX2RvY3MgQTsiOwoKCQkkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsKCQkJCQoJCSRpdGVtbGlzdCA9IGFycmF5KCk7CgkJJGlkbGlzdCA9ICIiOwoJCXdoaWxlICgkZGJyZXN1bHQgJiYgJHJvdyA9ICRkYnJlc3VsdC0+RmV0Y2hSb3coKSl7CgkJCSRpdGVtID0gbmV3IHN0ZENsYXNzKCk7CgkJCSRpdGVtLT5fX3doYXQgPSAiZG9jcyI7CgkJCWZvcmVhY2goJHJvdyBhcyAka2V5PT4kdmFsdWUpewoJCQkJJGl0ZW0tPiRrZXkgPSAkdmFsdWU7CgkJCX0KCQkJJGl0ZW0tPndpZHRoID0gc3RyaXBzbGFzaGVzKCRpdGVtLT53aWR0aCk7CgkJCSRpdGVtLT5oZWlnaHQgPSBzdHJpcHNsYXNoZXMoJGl0ZW0tPmhlaWdodCk7CgkJCSRpdGVtLT5ndWlkID0gc3RyaXBzbGFzaGVzKCRpdGVtLT5ndWlkKTsKCQkJJGl0ZW0tPm5hbWUgPSBzdHJpcHNsYXNoZXMoJGl0ZW0tPm5hbWUpOwoJCQkkaXRlbS0+aW5zZXJ0VGFnID0gJ3tjbXNfbW9kdWxlIG1vZHVsZT0iZ3JvdXBkb2NzX2Fubm90YXRpb24iIHdpZHRoPSInIC4gJGl0ZW0tPndpZHRoIC4gJyIgaGVpZ2h0PSInIC4gJGl0ZW0tPmhlaWdodCAuICciIGd1aWQ9IicgLiAkaXRlbS0+Z3VpZCAuICcifSc7CgoJCQlhcnJheV9wdXNoKCRpdGVtbGlzdCwkaXRlbSk7CgkJfQoKCQlyZXR1cm4gJGl0ZW1saXN0OwoJfQoJCgkKCQp9Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKJGxhbmdbJ2ZyaWVuZGx5bmFtZSddID0gJ0dyb3VwRG9jcyBBbm5vdGF0aW9uJzsKJGxhbmdbJ3Bvc3RpbnN0YWxsJ10gPSAnUG9zdCBJbnN0YWxsIE1lc3NhZ2UuJzsKJGxhbmdbJ3Bvc3R1bmluc3RhbGwnXSA9ICdQb3N0IFVuaW5zdGFsbCBNZXNzYWdlLCBlLmcuLCAiQ3Vyc2VzISBGb2lsZWQgQWdhaW4hIic7CiRsYW5nWydyZWFsbHlfdW5pbnN0YWxsJ10gPSAnUmVhbGx5PyBBcmUgeW91IHN1cmUKeW91IHdhbnQgdG8gdW5zaW5zdGFsbCB0aGlzIGZpbmUgbW9kdWxlPyc7CiRsYW5nWyd1bmluc3RhbGxlZCddID0gJ01vZHVsZSBVbmluc3RhbGxlZC4nOwokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWxlIHZlcnNpb24gJXMgaW5zdGFsbGVkLic7CiRsYW5nWyd1cGdyYWRlZCddID0gJ01vZHVsZSB1cGdyYWRlZCB0byB2ZXJzaW9uICVzLic7CiRsYW5nWydtb2RkZXNjcmlwdGlvbiddID0gJ0dyb3VwRG9jcyBXb3JkLCBFeGNlbCwgUG93ZXJwb2ludCwgUERGIEFubm90YXRpb24gRW1iZWRkZXIgbGV0cyB5b3UgZW1iZWQgc2V2ZXJhbCB0eXBlcyBvZiBmaWxlcyBpbnRvIHlvdXIgcGFnZS4nOwoKJGxhbmdbJ2Vycm9yJ10gPSAnRXJyb3IhJzsKJGxhbmRbJ2FkbWluX3RpdGxlJ10gPSAnR3JvdXBEb2NzIEFubm90YXRpb24gQWRtaW4gUGFuZWwnOwokbGFuZ1snYWRtaW5kZXNjcmlwdGlvbiddID0gJ0FkbWluIERlc2NyaXB0aW9uJzsKJGxhbmdbJ2FjY2Vzc2RlbmllZCddID0gJ0FjY2VzcyBEZW5pZWQuIFBsZWFzZSBjaGVjayB5b3VyIHBlcm1pc3Npb25zLic7CiRsYW5nWydwb3N0aW5zdGFsbCddID0gJ1Bvc3QgSW5zdGFsbCBNZXNzYWdlLCAoZS5nLiwgQmUgc3VyZSB0byBzZXQgIk1vZGlmeUdyb3VEb2NzQW5ub3RhdGlvbiIgcGVybWlzc2lvbnMgdG8gdXNlIHRoaXMgbW9kdWxlISknOwoKCiRsYW5nWydjaGFuZ2Vsb2cnXSA9ICc8dWw+CjxsaT5WZXJzaW9uIDEuMCAtIDQgT2N0b2JlciAyMDEyLiBJbml0aWFsIFJlbGVhc2UuPC9saT4KPC91bD4nOwokbGFuZ1snaGVscCddID0gJzxoMz5XaGF0IERvZXMgVGhpcyBEbz88L2gzPgo8cD5Hcm91cERvY3MgV29yZCwgRXhjZWwsIFBvd2VycG9pbnQsIFBERiBBbm5vdGF0aW9uIEVtYmVkZGVyIGxldHMgeW91IGVtYmVkIHNldmVyYWwgdHlwZXMgb2YgZmlsZXMgaW50byB5b3VyIHBhZ2UuPC9wPgo8aDM+SG93IERvIEkgVXNlIEl0PC9oMz4KPHA+QWRkIG5ldyBkb2N1bWVudC4gRmlsbCBhbGwgZmllbGRzLiBZb3UgY291bGQgZmluZCBHVUlEIHdoZW4gdmlld2luZyBkb2N1bWVudCBmcm9tIHlvdXIgR3JvdXBEb2NzIGFjY291bnQuPC9wPgo8aDM+V2hhdCBQYXJhbWV0ZXJzIERvZXMgSXQgVGFrZTwvaDM+CjxwPldpZHRoIGFuZCBIZWlnaHQgYXJlIGZvciBzaXplIG9mIGlmcmFtZSBvbiBwYWdlLjwvcD4nOwoKJGxhbmdbJ2FkZF9kb2MnXSA9ICdBZGQgRG9jdW1lbnQnOwoKJGxhbmdbJ2dyb3VwZG9jc193aWR0aCddID0gJ1dpZHRoJzsKJGxhbmdbJ2dyb3VwZG9jc19oZWlnaHQnXSA9ICdIZWlnaHQnOwokbGFuZ1snZ3JvdXBkb2NzX2d1aWQnXSA9ICdHVUlEJzsKJGxhbmdbJ2dyb3VwZG9jc19uYW1lJ10gPSAnTmFtZSc7CgoKPz4K]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSAgIEluc3RhbGwoKQoJICAgV2hlbiB5b3VyIG1vZHVsZSBpcyBpbnN0YWxsZWQsIHlvdSBtYXkgbmVlZCB0byBkbyBzb21lCgkgICBzZXR1cC4gVHlwaWNhbCB0aGluZ3MgdGhhdCBoYXBwZW4gaGVyZSBhcmUgdGhlIGNyZWF0aW9uCgkgICBhbmQgcHJlcG9wdWxhdGlvbiBvZiBkYXRhYmFzZSB0YWJsZXMsIGRhdGFiYXNlIHNlcXVlbmNlcywKCSAgIHBlcm1pc3Npb25zLCBwcmVmZXJlbmNlcywgZXRjLgoJICAgCSAgIAoJICAgRm9yIGluZm9ybWF0aW9uIG9uIHRoZSBjcmVhdGlvbiBvZiBkYXRhYmFzZSB0YWJsZXMsCgkgICBjaGVjayBvdXQgdGhlIEFET0RCIERhdGEgRGljdGlvbmFyeSBwYWdlIGF0CgkgICBodHRwOi8vcGhwbGVucy5jb20vbGVucy9hZG9kYi9kb2NzLWRhdGFkaWN0Lmh0bQoJICAgCgkgICBUaGlzIGZ1bmN0aW9uIGNhbiByZXR1cm4gYSBzdHJpbmcgaW4gY2FzZSBvZiBhbnkgZXJyb3IsCgkgICBhbmQgQ01TIHdpbGwgbm90IGNvbnNpZGVyIHRoZSBtb2R1bGUgaW5zdGFsbGVkLgoJICAgU3VjY2Vzc2Z1bCBpbnN0YWxscyBzaG91bGQgcmV0dXJuIEZBTFNFIG9yIG5vdGhpbmcgYXQgYWxsLgoJICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLwoJCS8qCgkJLy8gVHlwaWNhbCBEYXRhYmFzZSBJbml0aWFsaXphdGlvbgoJCSRkYiA9JiAkZ0Ntcy0+R2V0RGIoKTsKCQkKCQkvLyBteXNxbC1zcGVjaWZpYywgYnV0IGlnbm9yZWQgYnkgb3RoZXIgZGF0YWJhc2UKCQkkdGFib3B0YXJyYXkgPSBhcnJheSgnbXlzcWwnID0+ICdUWVBFPU15SVNBTScpOwoJCSRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCQkKICAgICAgICAvLyB0YWJsZSBzY2hlbWEgZGVzY3JpcHRpb24KICAgICAgICAkZmxkcyA9ICIKCQkJaWQgSSBLRVksCgkJCWRlc2NyaXB0aW9uIEMoODApCgkJCSI7CgoJCS8vIGNyZWF0ZSBpdC4gVGhpcyBzaG91bGQgZG8gZXJyb3IgY2hlY2tpbmcsIGJ1dCBJJ20gYSBsYXp5IHNvZC4KCQkkc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZ3JvdXBkb2NzX2Fubm90YXRpb24iLAoJCQkJJGZsZHMsICR0YWJvcHRhcnJheSk7CgkJJGRpY3QtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOwoKCQkvLyBjcmVhdGUgYSBzZXF1ZW5jZQoJCSRkYi0+Q3JlYXRlU2VxdWVuY2UoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZ3JvdXBkb2NzX2Fubm90YXRpb25fc2VxIik7CgkJKi8KCQkKCQkvLyBwZXJtaXNzaW9ucwoJCSR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKCdNb2RpZnkgR3JvdURvY3NBbm5vdGF0aW9uJywnTW9kaWZ5IEdyb3VEb2NzQW5ub3RhdGlvbicpOwoKCQkKCQkvLyBUeXBpY2FsIERhdGFiYXNlIEluaXRpYWxpemF0aW9uCiRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKCiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoJGRiKTsKCQkKLy8gbXlzcWwtc3BlY2lmaWMsIGJ1dCBpZ25vcmVkIGJ5IG90aGVyIGRhdGFiYXNlCiR0YWJvcHRhcnJheSA9IGFycmF5KCJteXNxbCIgPT4gIlRZUEU9TXlJU0FNIik7CgkJCgovLyBDcmVhdGVzIHRoZSBwbGF5ZXIgdGFibGUKJGZsZHMgPSAiCglndWlkIEMoNjQpLAoJd2lkdGggQygxMCksCgloZWlnaHQgQygxMCksCglpZCBJIEtFWSwKCW5hbWUgQyg2NCkKCSI7Cgokc3FsYXJyYXkgPSAkZGljdC0+Q3JlYXRlVGFibGVTUUwoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZ3JvdXBkb2NzX2Fubm90YXRpb25fZG9jcyIsICRmbGRzLCAkdGFib3B0YXJyYXkpOwokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CiRkYi0+Q3JlYXRlU2VxdWVuY2UoY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZ3JvdXBkb2NzX2Fubm90YXRpb25fZG9jc19zZXEiKTsKCQkKCQkKPz4K]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSAgIFVuaW5zdGFsbCgpCgkgICBTb21ldGltZXMsIGFuIGV4Y2VwdGlvbmFsbHkgdW5lbmxpZ2h0ZW5lZCBvciBpZ25vcmFudAoJICAgYWRtaW4gd2lsbCB3aXNoIHRvIHVuaW5zdGFsbCB5b3VyIG1vZHVsZS4gV2hpbGUgaXQKCSAgIHdvdWxkIGJlIGJlc3QgdG8gbGF5IGludG8gdGhlc2UgaWRpb3RzIHdpdGggYSBjbHVlc3RpY2ssCgkgICB3ZSB3aWxsIGRvIHRoZSBtYWduYW5pbW91cyB0aGluZyBhbmQgcmVtb3ZlIHRoZSBtb2R1bGUKCSAgIGFuZCBjbGVhbiB1cCB0aGUgZGF0YWJhc2UsIHBlcm1pc3Npb25zLCBhbmQgcHJlZmVyZW5jZXMKCSAgIHRoYXQgYXJlIHNwZWNpZmljIHRvIGl0LgoJICAgVGhpcyBpcyB0aGUgbWV0aG9kIHdoZXJlIHdlIGRvIHRoaXMuCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgoJCS8qCgkJLy8gVHlwaWNhbCBEYXRhYmFzZSBSZW1vdmFsCgkJJGRiID0mICRnQ21zLT5HZXREYigpOwoJCQoJCS8vIHJlbW92ZSB0aGUgZGF0YWJhc2UgdGFibGUKCQkkZGljdCA9IE5ld0RhdGFEaWN0aW9uYXJ5KCAkZGIgKTsKCQkkc3FsYXJyYXkgPSAkZGljdC0+RHJvcFRhYmxlU1FMKCBjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9ncm91cGRvY3NfYW5ub3RhdGlvbiIgKTsKCQkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgoJCS8vIHJlbW92ZSB0aGUgc2VxdWVuY2UKCQkkZGItPkRyb3BTZXF1ZW5jZSggY21zX2RiX3ByZWZpeCgpLiJtb2R1bGVfZ3JvdXBkb2NzX2Fubm90YXRpb25fc2VxIiApOwoJCSovCgkJCgkJLy8gcmVtb3ZlIHRoZSBwZXJtaXNzaW9ucwoJCSR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKCdNb2RpZnlHcm91RG9jc0Fubm90YXRpb24nKTsKCgkJCgkJLy8gcHV0IG1lbnRpb24gaW50byB0aGUgYWRtaW4gbG9nCgkJJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksICR0aGlzLT5MYW5nKCd1bmluc3RhbGxlZCcpKTsKCiRkYiA9JiAkdGhpcy0+R2V0RGIoKTsKJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOwoKCgoJJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9ncm91cGRvY3NfYW5ub3RhdGlvbl9kb2NzIik7CgkkZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7CgkkZGItPkRyb3BTZXF1ZW5jZShjbXNfZGJfcHJlZml4KCkuIm1vZHVsZV9ncm91cGRvY3NfYW5ub3RhdGlvbl9kb2NzX3NlcSIpOwo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSAgIFVwZ3JhZGUoKQoJICAgSWYgeW91ciBtb2R1bGUgdmVyc2lvbiBudW1iZXIgZG9lcyBub3QgbWF0Y2ggdGhlIHZlcnNpb24KCSAgIG51bWJlciBvZiB0aGUgaW5zdGFsbGVkIG1vZHVsZSwgdGhlIENNUyBBZG1pbiB3aWxsIGdpdmUKCSAgIHlvdSBhIGNoYW5jZSB0byB1cGdyYWRlIHRoZSBtb2R1bGUuIFRoaXMgaXMgdGhlIGZ1bmN0aW9uCgkgICB0aGF0IGFjdHVhbGx5IGhhbmRsZXMgdGhlIHVwZ3JhZGUuCgkgICBJZGVhbGx5LCB0aGlzIGZ1bmN0aW9uIHNob3VsZCBoYW5kbGUgdXBncmFkZXMgaW5jcmVtZW50YWxseSwKCSAgIHNvIHlvdSBjb3VsZCB1cGdyYWRlIGZyb20gdmVyc2lvbiAwLjAuMSB0byAxMC41Ljcgd2l0aAoJICAgYSBzaW5nbGUgY2FsbC4gRm9yIGEgZ3JlYXQgZXhhbXBsZSBvZiB0aGlzLCBzZWUgdGhlIE5ld3MKCSAgIG1vZHVsZSBpbiB0aGUgc3RhbmRhcmQgQ01TIGluc3RhbGwuCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgkJJGN1cnJlbnRfdmVyc2lvbiA9ICRvbGR2ZXJzaW9uOwoJCXN3aXRjaCgkY3VycmVudF92ZXJzaW9uKQoJCXsKCQkJY2FzZSAiMS4wIjoKCQkJICAgICBicmVhazsKCQkJY2FzZSAiMS4xIjoKCQkJICAgICBicmVhazsKCQl9CgkJCgkJLy8gcHV0IG1lbnRpb24gaW50byB0aGUgYWRtaW4gbG9nCgkJJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksICR0aGlzLT5MYW5nKCd1cGdyYWRlZCcsJHRoaXMtPkdldFZlcnNpb24oKSkpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/adminpanel.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHA+eyRhZGRuZXd9PC9wPgp7aWYgY291bnQoJGl0ZW1saXN0KSA+IDB9CjxkaXYgc3R5bGU9ImNsZWFyOiByaWdodDsiPgo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPgo8dGhlYWQ+PHRyPgoJPHRoPklEPC90aD4KCTx0aD5OYW1lPC90aD4KCTx0aD5HVUlEPC90aD4KCTx0aD5TaG9ydGNvZGU8L3RoPgo8L3RyPjwvdGhlYWQ+Cjx0Ym9keT4KCntjeWNsZSB2YWx1ZXM9InJvdzIscm93MSIgYXNzaWduPXJvd2NsYXNzIHJlc2V0PXRydWV9Cgl7Zm9yZWFjaCBmcm9tPSRpdGVtbGlzdCBpdGVtPW9uZWl0ZW19CntjeWNsZSB2YWx1ZXM9InJvdzIscm93MSIgYXNzaWduPXJvd2NsYXNzfQoJPHRyIGNsYXNzPSJ7JHJvd2NsYXNzfSIgIG9ubW91c2VvdmVyPSJ0aGlzLmNsYXNzTmFtZT0neyRyb3djbGFzc31ob3Zlcic7IiBvbm1vdXNlb3V0PSJ0aGlzLmNsYXNzTmFtZT0neyRyb3djbGFzc30nOyI+CgkJPHRkPnskb25laXRlbS0+aWR9PC90ZD4KCQk8dGQ+eyRvbmVpdGVtLT5uYW1lfTwvdGQ+CgkJPHRkPnskb25laXRlbS0+Z3VpZH08L3RkPgoJCTx0ZD57JG9uZWl0ZW0tPmluc2VydFRhZ308L3RkPgoJPC90cj4KCXsvZm9yZWFjaH0KCgoKPC90Ym9keT4KPC90YWJsZT4KPC9kaXY+CjxwPnskYWRkbmV3fTwvcD4Key9pZn0K]]></data>
	</file>
	<file>
	  <filename>/templates/display.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGlmcmFtZSBzcmM9Imh0dHA6Ly9hcHBzLmdyb3VwZG9jcy5jb20vZG9jdW1lbnQtYW5ub3RhdGlvbi9lbWJlZC97JHBhcmFtc1snZ3VpZCddfT8mcmVmZXJlcj1jbXNtcy8xLjAuMCIgZnJhbWVib3JkZXI9IjAiIHdpZHRoPSJ7JHBhcmFtc1snd2lkdGgnXX0iIGhlaWdodD0ieyRwYXJhbXNbJ2hlaWdodCddfSI+PC9pZnJhbWU+Cg==]]></data>
	</file>
	<file>
	  <filename>/templates/editA.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGJyLz48YnIvPg0KDQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHdpZHRoX2xhYmVsfSA6PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JHdpZHRoX2lucHV0fTwvcD4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskaGVpZ2h0X2xhYmVsfSA6PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGhlaWdodF9pbnB1dH08L3A+DQoJPC9kaXY+DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGd1aWRfbGFiZWx9IDo8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskZ3VpZF9pbnB1dH08L3A+DQoJPC9kaXY+DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG5hbWVfbGFiZWx9IDo8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskbmFtZV9pbnB1dH08L3A+DQoJPC9kaXY+DQoJDQo8YnIvPg0KPHA+eyRzdWJtaXR9IHskYXBwbHl9IHskY2FuY2VsfTwvcD4NCg==]]></data>
	</file>
	<file>
	  <filename>/templates/error.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGVfZXJyb3J9PC9oMz4Ke2lmICRtZXNzYWdlIT0nJ308cD57JG1lc3NhZ2V9PC9wPnsvaWZ9]]></data>
	</file>
</module>
