<?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>Widgets</name>
	<version>1.0</version>
    <mincmsversion>2.1.5</mincmsversion>
	<help><![CDATA[PGgzPldoYXQgZG9lcyB0aGlzIGRvPzwvaDM+DQo8cD4nV2lkZ2V0cycgcHJvdmlkZXMgY29udGVudCBibG9ja3MgdGhhdCBjYW4gYmUgZWFzaWx5IHNob3duIGFjcm9zcyBtdWx0aXBsZSBwYWdlcy4gVGhlICdXaWRnZXQnIGNhbiBiZSBjcmVhdGVkL2VkaXRlZCBvbmNlLCBhbmQgYWRkZWQgdG8gbXVsdGlwbGUgcGFnZXMuIEluY2x1ZGVzIGEgZHJhZy1uLWRyb3Agc2VsZWN0aW9uIG9mIGF2YWlsYWJsZSBXaWRnZXRzIHdpdGhpbiBjb250ZW50IHBhZ2VzLjwvcD48YnI+DQo8cD5FYWNoIFdpZGdldCBpbmNsdWRlcyBhbiBvcHRpb25hbCBoZWFkaW5nIGFuZCBhIHNpbXBsZSBvcHRpb24gZm9yIGxpbmtpbmcgdG8gb3RoZXIgY29udGVudCBwYWdlcy4gRXhhbXBsZXMgb2YgdXNlOiBXaWRnZXRzIHRoYXQgY2FuIGJlIG9wdGlvbmFsbHkgcGxhY2VkIGluIHRoZSBzaWRlYmFyIG9mIGJvdHRvbSBvZiBjb250ZW50IHBhZ2VzLCBjb21tb25seSB1c2VkIGFzIGUuZy4gTGF0ZXN0IE5ld3MsIFNpZGViYXIgRW5xdWlyeSBGb3JtLCBTb2NpYWwgTWVkaWEgU2hhcmluZyBMaW5rcywgQ3VzdG9tZXIgUmV2aWV3cywgLi4uPC9wPg0KPGJyPg0KDQo8aDM+R2V0dGluZyBTdGFydGVkPC9oMz4NCjxwPjEuIEFkZCB0aGUgZm9sbG93aW5nIHRhZyBhdCB0aGUgdG9wIG9mIGEgcGFnZSB0ZW1wbGF0ZSwgKHRoaXMgY3JlYXRlcyB0aGUgZHJhZy1uLWRyb3AgZmllbGRzIGluIHRoZSBDb250ZW50IE1hbmFnZXIgcGFnZSk6PC9wPg0KPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPSdXaWRnZXRzJyBibG9jaz0ndGVzdDEnIGFzc2lnbj10ZXN0MX17JHRlc3QxPSR0ZXN0MSBzY29wZT1nbG9iYWx9PC9wcmU+DQo8cD4yLiBXaXRoaW4gdGhlIGh0bWwgYm9keSAoZS5nLiBpbiBhIHNpZGViYXIgY29sdW1uKSwgYWRkIHRoZSBmb2xsb3dpbmcuIChUaGlzIGdlbmVyYXRlcyB0aGUgb3V0cHV0IG9mIHRoZSBzZWxlY3RlZCBXaWRnZXRzIHVzaW5nIHRoZSBXaWRnZXQgdGVtcGxhdGUsIGVpdGhlciBkZWZhdWx0IG9yIHNwZWNpZmllZCk6PC9wPg0KPHByZT57V2lkZ2V0cyBpdGVtcz0kdGVzdDF9PC9wcmU+DQo8cD4zLiBBZGQgYSBmZXcgdGVzdCBXaWRnZXRzIHdpdGggZHVtbXkgY29udGVudCwgYW5kIHZpZXcgYSBwYWdlIHVzaW5nIHRoYXQgdGVtcGxhdGUgaW4gQ29udGVudCBNYW5hZ2VyLCBhbmQgb24gdGhlIGZyb250IGVuZC48L3A+PGJyPg0KPHA+NC4gU2V0IEdyb3VwIFBlcm1pc3Npb25zIGZvciB0aGlzIG1vZHVsZSBpZiB5b3UgaW50ZW5kIEVkaXRvcnMgb3Igb3RoZXIgZ3JvdXBzIHRvIGVkaXQgV2lkZ2V0cy48L3A+DQo8YnI+DQoNCjxoMz5Db250ZW50IEJsb2NrIHBhcmFtZXRlcnM8L2gzPg0KPHA+dGhlIGZvbGxvd2luZyBvcHRpb25zIGNhbiBiZSBpbmNsdWRlZCBpbiB0aGUgJ1dpZGdldHMnIGNvbnRlbnRfbW9kdWxlIHRhZy4gTWluaW11bSByZXF1aXJlZCBpczo8L3A+DQo8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9J1dpZGdldHMnIGJsb2NrPSd0ZXN0MSd9PC9wcmU+DQo8dWw+DQogICA8bGk+KHJlcXVpcmVkKSBtb2R1bGU9J1dpZGdldHMnIC0gdGVsbHMgQ01TTVMgdG8gcGFzcyB0aGVzZSBkZXRhaWxzIHRvIHRoZSBXaWRnZXRzIG1vZHVsZSo8L2xpPg0KICAgPGxpPihyZXF1aXJlZCkgYmxvY2sgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jaywgdGhhdCBzdG9yZXMgdGhlIHNlbGVjdGVkIFdpZGdldHMqPC9saT4NCiAgIDxsaT4ob3B0aW9uYWwpIGxhYmVsIC0gYSBsYWJlbCBmb3IgdGhlIGNvbnRlbnQgYmxvY2sgZm9yIHVzZSB3aGVuIGVkaXRpbmcgdGhlIHBhZ2UqPC9saT4NCiAgIDxsaT4ob3B0aW9uYWwpIGNhdGVnb3J5IC0gc3BlY2lmeSB0aGUgY2F0ZWdvcnkgb2YgV2lkZ2V0cyBhdmFpbGFibGUgZm9yIHNlbGVjdGlvbiAoZGVmYXVsdCBpcyBhbGwgV2lkZ2V0cyk8L2xpPg0KICAgPGxpPihvcHRpb25hbCkgZGVzY3JpcHRpb24gLSBhbiBhZGRpdGlvbmFsIHRleHQgZGVzY3JpcHRpb24gZm9yIGluc3RydWN0aW9ucyB0byBlZGl0b3JzPC9saT4NCiAgIDxsaT4ob3B0aW9uYWwpIGxhYmVsX2xlZnQgLSBhbHRlcm5hdGl2ZSBsYWJlbCBmb3IgdGhlIGxlZnQgc2V0IG9mICdTZWxlY3RlZCBXaWRnZXRzJzwvbGk+DQogICA8bGk+KG9wdGlvbmFsKSBsYWJlbF9yaWdodCAtIGFsdGVybmF0aXZlIGxhYmVsIGZvciB0aGUgcmlnaHQgc2V0IG9mICdBdmFpbGFibGUgV2lkZ2V0cyc8L2xpPg0KICAgPGxpPihvcHRpb25hbCkgdGFiIC0gdGhlIGRlc2lyZWQgdGFiIHRvIGRpc3BsYXkgdGhpcyBmaWVsZCBvbiB0aGUgQ29udGVudCBNYW5hZ2VyIHBhZ2UqPC9saT4NCiAgIDxsaT4ob3B0aW9uYWwpIGFzc2lnbiAoc3RyaW5nKSAtIGFzc2lnbnMgdGhlIHJlc3VsdCB0byBhIHNtYXJ0eSB2YXJpYWJsZSB3aXRoIHRoYXQgbmFtZSo8L2xpPg0KPC91bD4NCjxwPjxzbWFsbD4oKiA9IGFzIHBlciBkZWZhdWx0IGNvbnRlbnRfbW9kdWxlIHRhZyApPC9zbWFsbD48L3A+DQo8YnI+DQoNCjxoMz5XaWRnZXRzIE91dHB1dDwvaDM+DQo8cD50aGUgZm9sbG93aW5nIG9wdGlvbnMgY2FuIGJlIGluY2x1ZGVkIGluIHRoZSAnV2lkZ2V0cycgdGFnLCB0byBvdXRwdXQgdGhlIHNlbGVjdGVkIFdpZGdldHMuIE1pbmltdW0gcmVxdWlyZWQgaXM6PC9wPg0KPHByZT57V2lkZ2V0c308L3ByZT4NCjxwPlNlZSA8c3Ryb25nPlBhcmFtZXRlcnM8L3N0cm9uZz4gYmVsb3cgZm9yIHBvc3NpYmxlIHBhcmFtZXRlcnMuPC9wPg0KPGJyPg0KDQo8aDM+UGVybWlzc2lvbnM8L2gzPg0KPHA+UGVybWlzc2lvbnMgZXhpc3QgdG86PC9wPg0KPHVsPg0KICAgPGxpPlVzZSBXaWRnZXRzIC0gY2FuIGNyZWF0ZSwgZWRpdCwgZGVsZXRlIFdpZGdldHMgJmFtcDsgQ2F0ZWdvcmllczwvbGk+DQogICA8bGk+TWFuYWdlIFdpZGdldHMgLSBhcyBhYm92ZSwgcGx1cyBjYW4gc2V0IE9wdGlvbnM8L2xpPg0KPC91bD48YnI+DQoNCjxoMz5TdXBwb3J0PC9oMz4NCjxwPkFzIHBlciB0aGUgR1BMIGxpY2VuY2UsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMgaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0IG9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLg0KVGhlIG1vZHVsZSBhdXRob3IgaXMgbm90IG9ibGlnYXRlZCB0byBwcm92aWRlIHN1cHBvcnQgZm9yIHRoaXMgY29kZS4gSG93ZXZlciB5b3UgbWlnaHQgZ2V0IHN1cHBvcnQgdGhyb3VnaCB0aGUgZm9sbG93aW5nOjwvcD4NCjx1bD4NCiAgIDxsaT5Gb3Igc3VwcG9ydCwgZmlyc3QgPHN0cm9uZz5zZWFyY2g8L3N0cm9uZz4gdGhlIDxhIGhyZWY9Ii8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bTwvYT4sIGZvciBpc3N1ZXMgd2l0aCB0aGUgbW9kdWxlIHNpbWlsYXIgdG8gdGhvc2UgeW91IGFyZSBmaW5kaW5nLjwvbGk+DQogICA8bGk+VGhlbiwgaWYgbmVjZXNzYXJ5LCBvcGVuIGEgPHN0cm9uZz5uZXcgZm9ydW0gdG9waWM8L3N0cm9uZz4gdG8gcmVxdWVzdCBoZWxwLCB3aXRoIGEgdGhvcm91Z2ggZGVzY3JpcHRpb24gb2YgeW91ciBpc3N1ZSwgYW5kIHN0ZXBzIHRvIHJlcHJvZHVjZSBpdC48L2xpPg0KICAgPGxpPklmIHlvdSBmaW5kIGEgYnVnIHlvdSBjYW4gPGEgaHJlZj0iLy9kZXYuY21zbWFkZXNpbXBsZS5vcmcvYnVnL2xpc3QvMTM4MyI+c3VibWl0IGEgQnVnIFJlcG9ydDwvYT4uPC9saT4NCiAgIDxsaT5Gb3IgYW55IGdvb2QgaWRlYXMgeW91IGNhbiA8YSBocmVmPSIvL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9mZWF0dXJlX3JlcXVlc3QvbGlzdC8xMzgzIj5zdWJtaXQgYSBGZWF0dXJlIFJlcXVlc3Q8L2E+LjwvbGk+DQogICA8bGk+SWYgeW91IGZvdW5kIHRoZSBNb2R1bGUgdXNlZnVsIC0gc2hvdXQgb3V0IHRvIG1lIG9uIFR3aXR0ZXIgPGEgaHJlZj0iLy90d2l0dGVyLmNvbS9LaXdpQ2hyaXNCVCI+QEtpd2lDaHJpc0JUPC9hPjwvbGk+DQo8L3VsPjxicj4NCg0KPGgzPkNvcHlyaWdodCAmYW1wOyBMaWNlbmNlPC9oMz4NCjxwPkNvcHlyaWdodCDCqSAyMDE2LCBDaHJpcyBUYXlsb3IgPGNocmlzIGF0IGJpbm5vdmF0aXZlIGRvdCBjbyBkb3QgdWs+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+PGJyPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBQdWJsaWMgTGljZW5zZSB2My4gSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuIFlvdSBtYXkgb25seSB1c2UgdGhpcyBzb2Z0d2FyZSB3aGVuIHRoZXJlIGlzIGEgY2xlYXIgYW5kIG9idmlvdXMgaW5kaWNhdGlvbiBpbiB0aGUgYWRtaW4gc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIFNpbXBsZSE8L3A+PGJyPg0KPHA+SW5zcGlyZWQgYnk6IEdsb2JhbCBDb250ZW50IEJsb2NrcywgTElTRSwgRUNCIGFuZCBDR0V4dGVuc2lvbnMuPC9wPjxicj48aDM+UGFyYW1ldGVyczwvaDM+PHVsPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHdpZD0iIiAtIFNwZWNpZnkgYW4gaWQgKGludGVnZXIpIG9mIGEgd2lkZ2V0IHRvIGRpc3BsYXk8L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IHRlbXBsYXRlPSIiIC0gU3BlY2lmeSB0aGUgbmFtZSBvZiB0aGUgV2lkZ2V0IHRlbXBsYXRlIHRvIHVzZS48L2xpPjxsaT48ZW0+KG9wdGlvbmFsKTwvZW0+IGNhdGVnb3J5PSIiIC0gU3BlY2lmeSBhbiBhbGlhcyBvZiB0aGUgY2F0ZWdvcnkgZGlzcGxheWVkIGl0ZW1zIG11c3QgYmUgYSBtZW1iZXIgb2YuPC9saT48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBpdGVtcz0iIiAtIFNwZWNpZnkgYW4gYWxpYXMgb3IgY29tbWEgc2VwYXJhdGVkIGxpc3Qgb2YgV2lkZ2V0IGFsaWFzZXMgdG8gYmUgZGlzcGxheWVkLjwvbGk+PC91bD4=]]></help>
	<about><![CDATA[PGJyIC8+QXV0aG9yOiBDaHJpcyBUYXlsb3IgJmx0O2NocmlzQGJpbm5vdmF0aXZlLmNvLnVrJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDEuMDxiciAvPjxiciAvPkNoYW5nZSBIaXN0b3J5OjxiciAvPjx1bD4NCiAgIDxsaT48c3Ryb25nPlZlcnNpb24gMS4wPC9zdHJvbmc+IC0gMDFEZWMxNg0KICAgICAgPHVsPg0KICAgICAgICAgPGxpPkluaXRpYWwgbW9kdWxlIHJlbGVhc2U8L2xpPg0KICAgICAgPC91bD4NCiAgIDwvbGk+DQo8L3VsPjxiciAvPg==]]></about>
	<description><![CDATA[A module for managing and displaying Widgets - blocks of content that can be added to many pages]]></description>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.admin_converter.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiggIWRlZmluZWQoJ0NNU19WRVJTSU9OJykgKSBleGl0Ow0KaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKFdpZGdldHM6OlVTRV9QRVJNKSApIHJldHVybjsNCg0KJHBhcm1zID0gYXJyYXkoJ2FjdGl2ZV90YWInID0+ICdjb252ZXJ0ZXInKTsNCg0KaWYoaXNzZXQoJHBhcmFtc1snaW1wb3J0X2Zyb21fTElTRVdpZGdldHMnXSkpIHsNCiAgIC8vDQogICAkbW9kX3ByZWZpeCA9IGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlXyc7DQogICAkdGFibGVfbGlzdCA9IGFycmF5KCd3aWRnZXRzJywgJ3dpZGdldHNfY2F0ZWdvcnknKTsNCiAgICRkYiA9IGNtc21zKCktPkdldERiKCk7DQoNCiAgIC8vIHJlbW92ZSBhbGwgY3VycmVudCBXaWRnZXRzICYgY2F0ZWdvcmllcw0KICAgZm9yZWFjaCgkdGFibGVfbGlzdCBhcyAkb25lKSB7DQogICAgICAkc3FsID0gJ0RFTEVURSBGUk9NICcuJG1vZF9wcmVmaXguJG9uZTsNCiAgICAgICRyZXMgPSAkZGItPkV4ZWN1dGUoJHNxbCk7DQoNCiAgICAgIGlmKCEkcmVzKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCAkZGItPkVycm9yTXNnKCkgKTsNCiAgIH0NCg0KICAgLy8gYWRkIGNhdGVnb3JpZXMgZnJvbSBMSVNFV2lkZ2V0cw0KICAgJHNxbCA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3dpZGdldHNfY2F0ZWdvcnkgKGNhdGVnb3J5X2lkLCBjYXRlZ29yeV9uYW1lLCBjYXRlZ29yeV9hbGlhcykNCiAgICAgIFNFTEVDVCBjYXRlZ29yeV9pZCwgY2F0ZWdvcnlfbmFtZSwgY2F0ZWdvcnlfYWxpYXMgRlJPTSAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX2xpc2V3aWRnZXRzX2NhdGVnb3J5JzsNCiAgICRyZXMgPSAkZGItPkV4ZWN1dGUoJHNxbCk7DQogICBpZighJHJlcykgdGhyb3cgbmV3IEV4Y2VwdGlvbiggJGRiLT5FcnJvck1zZygpICk7DQogICAvLyBzZXQgZGVmYXVsdCBjYXRlZ29yeQ0KICAgJHNxbCA9ICdVUERBVEUgJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV93aWRnZXRzX2NhdGVnb3J5IFNFVCBkZWZhdWx0X2NhdGVnb3J5ID0gIjEiIExJTUlUIDEnOw0KICAgJHJlcyA9ICRkYi0+RXhlY3V0ZSgkc3FsKTsNCiAgIGlmKCEkcmVzKSB0aHJvdyBuZXcgRXhjZXB0aW9uKCAkZGItPkVycm9yTXNnKCkgKTsNCg0KICAgJHNxbCA9ICdJTlNFUlQgSU5UTyAnLmNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3dpZGdldHMgKHRpdGxlLCBhbGlhcywgcG9zaXRpb24sIGFjdGl2ZSwgY2F0ZWdvcnlfaWQpDQogICAgICBTRUxFQ1QgTFcudGl0bGUsIExXLmFsaWFzLCBMVy5wb3NpdGlvbiwgTFcuYWN0aXZlLCBMQ0FULmNhdGVnb3J5X2lkDQogICAgICBGUk9NICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfbGlzZXdpZGdldHNfaXRlbSBBUyBMVw0KICAgICAgTEVGVCBKT0lOICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfbGlzZXdpZGdldHNfaXRlbV9jYXRlZ29yaWVzIEFTIExDQVQNCiAgICAgICAgIE9OIExXLml0ZW1faWQ9TENBVC5pdGVtX2lkJzsNCiAgICRyZXMgPSAkZGItPkV4ZWN1dGUoJHNxbCk7DQogICBpZighJHJlcykgdGhyb3cgbmV3IEV4Y2VwdGlvbiggJGRiLT5FcnJvck1zZygpICk7DQoNCiAgIC8vIGZpZWxkTWFwIC0gYXJyYXkgb2YgV2lkZ2V0IGZpZWxkIG5hbWVzID0+IExJU0UgRmllbGQgVmFsdWUgYWxpYXNlcw0KICAgJGZpZWxkTWFwID0gYXJyYXkoJ2hlYWRpbmcnPT4naGVhZGluZycsICdjb250ZW50Jz0+J2NvbnRlbnQnLCAnbGlua190byc9PidsaW5rX3RvJywgJ2xpbmtfdGV4dCc9PidsaW5rX3RleHQnKTsNCiAgIGZvcmVhY2ggKCRmaWVsZE1hcCBhcyAkd2lkZ2V0RmllbGQgPT4gJExJU0VGaWVsZCkgew0KICAgICAgJHNxbCA9ICdVUERBVEUgY21zX21vZHVsZV93aWRnZXRzIEFTIFcNCiAgICAgICAgIEpPSU4gY21zX21vZHVsZV9saXNld2lkZ2V0c19pdGVtIEFTIExXDQogICAgICAgICAgICBPTiBXLmFsaWFzPUxXLmFsaWFzDQogICAgICAgICBKT0lOIGNtc19tb2R1bGVfbGlzZXdpZGdldHNfZmllbGR2YWwgQVMgTEZWDQogICAgICAgICAgICBPTiBMVy5pdGVtX2lkPUxGVi5pdGVtX2lkDQogICAgICAgICBKT0lOIGNtc19tb2R1bGVfbGlzZXdpZGdldHNfZmllbGRkZWYgQVMgTEZEDQogICAgICAgICAgICAgICBPTiBMRlYuZmllbGRkZWZfaWQ9TEZELmZpZWxkZGVmX2lkDQogICAgICAgICBTRVQgVy4nLiR3aWRnZXRGaWVsZC4nPUxGVi52YWx1ZQ0KICAgICAgICAgV0hFUkUgTEZELmFsaWFzPT8nOw0KICAgICAgJHJlcyA9ICRkYi0+RXhlY3V0ZSgkc3FsLCBhcnJheSgkTElTRUZpZWxkKSApOw0KICAgICAgaWYoISRyZXMpIHRocm93IG5ldyBFeGNlcHRpb24oICRkYi0+RXJyb3JNc2coKSApOw0KICAgfQ0KDQogICAvLyBjb21iaW5lIG11bHRpcGxlIExJU0Ugc3R5bGVzIHJlY29yZHMgaW50byBvbmUgY29tbWEgc2VwYXJhdGVkIHRleHQgZmllbGQgJ3N0eWxlX29wdGlvbnMnDQogICAkc3FsID0gJ1NFTEVDVCBMVy5hbGlhcyxMRlYudmFsdWUgRlJPTSBjbXNfbW9kdWxlX3dpZGdldHMgQVMgVw0KICAgICAgSk9JTiBjbXNfbW9kdWxlX2xpc2V3aWRnZXRzX2l0ZW0gQVMgTFcNCiAgICAgICAgIE9OIFcuYWxpYXM9TFcuYWxpYXMNCiAgICAgIEpPSU4gY21zX21vZHVsZV9saXNld2lkZ2V0c19maWVsZHZhbCBBUyBMRlYNCiAgICAgICAgIE9OIExXLml0ZW1faWQ9TEZWLml0ZW1faWQNCiAgICAgIEpPSU4gY21zX21vZHVsZV9saXNld2lkZ2V0c19maWVsZGRlZiBBUyBMRkQNCiAgICAgICAgICAgIE9OIExGVi5maWVsZGRlZl9pZD1MRkQuZmllbGRkZWZfaWQNCiAgICAgIFdIRVJFIExGRC5hbGlhcyA9ID8nOw0KICAgJHJlcyA9ICRkYi0+R2V0QWxsKCRzcWwsIGFycmF5KCdzdHlsZXMnKSApOw0KICAgaWYgKCRyZXMpIHsNCiAgICAgICRjb21iaW5lZFN0eWxlcyA9IGFycmF5KCk7DQogICAgICBmb3JlYWNoICgkcmVzIGFzICRzdHlsZSkgew0KICAgICAgICAgaWYgKCBhcnJheV9rZXlfZXhpc3RzKCRzdHlsZVsnYWxpYXMnXSwgJGNvbWJpbmVkU3R5bGVzKSApIHsNCiAgICAgICAgICAgICRjb21iaW5lZFN0eWxlc1skc3R5bGVbJ2FsaWFzJ11dIC49ICcsJy4kc3R5bGVbJ3ZhbHVlJ107DQogICAgICAgICB9IGVsc2Ugew0KICAgICAgICAgICAgJGNvbWJpbmVkU3R5bGVzWyRzdHlsZVsnYWxpYXMnXV0gPSAkc3R5bGVbJ3ZhbHVlJ107DQogICAgICAgICB9DQogICAgICB9DQogICAgICBmb3JlYWNoICgkY29tYmluZWRTdHlsZXMgYXMgJGFsaWFzID0+ICRzdHlsZSkgew0KICAgICAgICAgJHNxbCA9ICdVUERBVEUgY21zX21vZHVsZV93aWRnZXRzIEFTIFcgU0VUIFcuc3R5bGVfb3B0aW9ucz0/IFdIRVJFIFcuYWxpYXM9Pyc7DQogICAgICAgICAkcmVzID0gJGRiLT5FeGVjdXRlKCRzcWwsIGFycmF5KCRzdHlsZSwgJGFsaWFzKSApOw0KICAgICAgICAgaWYoISRyZXMpIHRocm93IG5ldyBFeGNlcHRpb24oICRkYi0+RXJyb3JNc2coKSApOw0KICAgICAgfQ0KICAgfQ0KDQogICAkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFybXMpOw0KfQ0K]]></data>
	</file>
	<file>
	  <filename>/action.admin_save_options.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiggIWRlZmluZWQoJ0NNU19WRVJTSU9OJykgKSBleGl0Ow0KaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKFdpZGdldHM6Ok1BTkFHRV9QRVJNKSApIHsNCiAgICR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQpOw0KfQ0KDQovLyBTYXZlIFBhcmFtZXRlcnMgT3B0aW9ucyBUYWINCmlmIChpc3NldCgkcGFyYW1zWydpbnB1dF9jdXN0b21Nb2R1bGVOYW1lJ10pKQ0KICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2N1c3RvbU1vZHVsZU5hbWUnLCAkcGFyYW1zWydpbnB1dF9jdXN0b21Nb2R1bGVOYW1lJ10pOw0KDQppZiAoaXNzZXQoJHBhcmFtc1snaW5wdXRfYWRtaW5TZWN0aW9uJ10pKQ0KICAgJHRoaXMtPlNldFByZWZlcmVuY2UoJ2FkbWluU2VjdGlvbicsICRwYXJhbXNbJ2lucHV0X2FkbWluU2VjdGlvbiddKTsNCg0KaWYgKGlzc2V0KCRwYXJhbXNbJ2lucHV0X3N0eWxlT3B0aW9ucyddKSkNCiAgICR0aGlzLT5TZXRQcmVmZXJlbmNlKCdzdHlsZU9wdGlvbnMnLCAkcGFyYW1zWydpbnB1dF9zdHlsZU9wdGlvbnMnXSk7DQoNCi8vIFRvdWNoIG1lbnUgY2FjaGUgZmlsZXMNCmlmICh2ZXJzaW9uX2NvbXBhcmUoQ01TX1ZFUlNJT04sICcxLjk5LWFscGhhMCcsICc8JykpIHsNCiAgIGZvcmVhY2ggKGdsb2IoY21zX2pvaW5fcGF0aChUTVBfQ0FDSEVfTE9DQVRJT04sICJ0aGVtZWluZm8qLmNhY2hlIikpIGFzICRmaWxlbmFtZSkgeyBAdW5saW5rKCRmaWxlbmFtZSk7IH0gLy8gMS4xMQ0KfSBlbHNlIHsNCiAgIGZvcmVhY2ggKGdsb2IoY21zX2pvaW5fcGF0aChUTVBfQ0FDSEVfTE9DQVRJT04sICJjYWNoZSouY21zIikpIGFzICRmaWxlbmFtZSkgeyBAdW5saW5rKCRmaWxlbmFtZSk7IH0gLy8gMi4wDQp9DQoNCi8vIFNob3cgc2F2ZWQgcGFyYW1ldGVycyBpbiBkZWJ1ZyBtb2RlDQpkZWJ1Z19kaXNwbGF5KCRwYXJhbXMpOw0KDQovLyBQdXQgbWVudGlvbiBpbnRvIHRoZSBhZG1pbiBsb2cNCmF1ZGl0KCcnLCAnV2lkZ2V0cyAtIE9wdGlvbnMgdGFiJywgJ1NhdmVkJyk7DQoNCiR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsIGFycmF5KCdtb2R1bGVfbWVzc2FnZScgPT4gJHRoaXMtPkxhbmcoJ3NldHRpbmdzX3NhdmVkJyksICdhY3RpdmVfdGFiJyA9PiAnb3B0aW9ucycpKTsNCg0K]]></data>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiAoICFkZWZpbmVkKCdDTVNfVkVSU0lPTicpICkgZXhpdDsNCg0KJHRlbXBsYXRlID0gbnVsbDsNCmlmIChpc3NldCgkcGFyYW1zWyd0ZW1wbGF0ZSddKSkgew0KICAgJHRlbXBsYXRlID0gdHJpbSgkcGFyYW1zWyd0ZW1wbGF0ZSddKTsNCn0NCmVsc2Ugew0KICAgJHRwbCA9IENtc0xheW91dFRlbXBsYXRlOjpsb2FkX2RmbHRfYnlfdHlwZSgnV2lkZ2V0czo6VGVtcGxhdGUnKTsNCiAgIGlmKCAhaXNfb2JqZWN0KCR0cGwpICkgew0KICAgICAgYXVkaXQoJycsJHRoaXMtPkdldE5hbWUoKSwnTm8gZGVmYXVsdCB0ZW1wbGF0ZSBmb3VuZCcpOw0KICAgICAgcmV0dXJuOw0KICAgfQ0KJHRlbXBsYXRlID0gJHRwbC0+Z2V0X25hbWUoKTsNCn0NCg0KJGl0ZW1zID0gYXJyYXkoKTsNCiRzcWwgPSAnU0VMRUNUIFcuKixDQVRTLmNhdGVnb3J5X25hbWUgRlJPTSAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzIEFTIFcNCiAgIExFRlQgT1VURVIgSk9JTiAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzX2NhdGVnb3J5IENBVFMNCiAgIE9OIENBVFMuY2F0ZWdvcnlfaWQgPSBXLmNhdGVnb3J5X2lkICc7DQppZiAoaXNzZXQoJHBhcmFtc1snY2F0ZWdvcnknXSkpIHsNCiAgICRzcWwgLj0gJ1dIRVJFIENBVFMuY2F0ZWdvcnlfYWxpYXMgPSA/IEFORCBhY3RpdmUgPSAxDQogICAgICBPUkRFUiBCWSBXLnBvc2l0aW9uJzsNCiAgICRkYnJlc3VsdCA9ICRkYi0+RXhlY3V0ZSggJHNxbCwgYXJyYXkoICRwYXJhbXNbJ2NhdGVnb3J5J10pICk7DQp9IGVsc2Ugew0KICAgJHNxbCAuPSAnV0hFUkUgYWN0aXZlID0gMSc7DQogICAkZGJyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHNxbCk7DQp9DQoNCmlmKCBpc19vYmplY3QoJGRicmVzdWx0KSApIHsNCiAgICRkYnJlc3VsdC0+TW92ZUZpcnN0KCk7DQogICB3aGlsZSggJGRicmVzdWx0ICYmICEkZGJyZXN1bHQtPkVPRiApIHsNCiAgICAgICRyb3cgPSAkZGJyZXN1bHQtPmZpZWxkczsNCiAgICAgICRvbmVyb3cgPSBuZXcgc3RkQ2xhc3MoKTsNCg0KICAgICAgJG9uZXJvdy0+aWQgPSAkcm93WydpZCddOw0KICAgICAgJG9uZXJvdy0+Y2F0ZWdvcnlfaWQgPSAkcm93WydjYXRlZ29yeV9pZCddOw0KICAgICAgJG9uZXJvdy0+dGl0bGUgPSAkcm93Wyd0aXRsZSddOw0KICAgICAgJG9uZXJvdy0+YWxpYXMgPSAkcm93WydhbGlhcyddOw0KICAgICAgJG9uZXJvdy0+cG9zaXRpb24gPSAkcm93Wydwb3NpdGlvbiddOw0KICAgICAgJG9uZXJvdy0+YWN0aXZlID0gJHJvd1snYWN0aXZlJ107DQogICAgICAkb25lcm93LT5oZWFkaW5nID0gJHJvd1snaGVhZGluZyddOw0KICAgICAgJG9uZXJvdy0+Y29udGVudCA9ICRyb3dbJ2NvbnRlbnQnXTsNCiAgICAgICRvbmVyb3ctPmxpbmtfdG8gPSAkcm93WydsaW5rX3RvJ107DQogICAgICAkb25lcm93LT5saW5rX3RleHQgPSAkcm93WydsaW5rX3RleHQnXTsNCiAgICAgICRvbmVyb3ctPnN0eWxlX29wdGlvbnMgPSAkcm93WydzdHlsZV9vcHRpb25zJ107DQogICAgICAkb25lcm93LT5jYXRlZ29yeV9uYW1lID0gJHJvd1snY2F0ZWdvcnlfbmFtZSddOw0KDQogICAgICAvLyBmaWVsZGRlZnMgKGRlcHJlY2lhdGVkKSAtIGNvbXBhdGlibGUgd2l0aCBMSVNFDQogICAgICAkb25lcm93LT5maWVsZGRlZnNbJ2hlYWRpbmcnXVsndmFsdWUnXSA9ICRyb3dbJ2hlYWRpbmcnXTsNCiAgICAgICRvbmVyb3ctPmZpZWxkZGVmc1snY29udGVudCddWyd2YWx1ZSddID0gJHJvd1snY29udGVudCddOw0KICAgICAgJG9uZXJvdy0+ZmllbGRkZWZzWydsaW5rX3RvJ11bJ3ZhbHVlJ10gPSAkcm93WydsaW5rX3RvJ107DQogICAgICAkb25lcm93LT5maWVsZGRlZnNbJ2xpbmtfdGV4dCddWyd2YWx1ZSddID0gJHJvd1snbGlua190ZXh0J107DQogICAgICAkb25lcm93LT5maWVsZGRlZnNbJ3N0eWxlcyddWyd2YWx1ZSddID0gJHJvd1snc3R5bGVfb3B0aW9ucyddOw0KDQogICAgICAkaXRlbXNbJG9uZXJvdy0+YWxpYXNdID0gJG9uZXJvdzsNCiAgICAgICRkYnJlc3VsdC0+TW92ZU5leHQoKTsNCiAgIH0NCn0NCg0KLy8gc2VsZWN0ICdpdGVtcycgaW4gb3JkZXIgcHJvdmlkZWQNCmlmIChpc3NldCgkcGFyYW1zWydpdGVtcyddKSkgew0KICAgJGFsbEl0ZW1zID0gJGl0ZW1zOw0KICAgJHNlbGVjdEFsaWFzZXMgPSBleHBsb2RlKCAnLCcsIHN0cl9yZXBsYWNlKCcgJywgJycsICRwYXJhbXNbJ2l0ZW1zJ10pICk7DQogICAkc2VsZWN0SXRlbXMgPSBhcnJheSgpOw0KICAgZm9yZWFjaCAoJHNlbGVjdEFsaWFzZXMgYXMgJGFsaWFzKSB7DQogICAgICAkc2VsZWN0SXRlbXNbJGFsaWFzXSA9ICRpdGVtc1skYWxpYXNdOw0KICAgfQ0KICAgJGl0ZW1zID0gJHNlbGVjdEl0ZW1zOw0KfQ0KDQoNCiR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSgkdGhpcy0+R2V0VGVtcGxhdGVSZXNvdXJjZSgkdGVtcGxhdGUpLG51bGwsbnVsbCwkc21hcnR5KTsNCg0KJHRwbC0+YXNzaWduKCdpdGVtcycsJGl0ZW1zKTsNCg0KLy8gRGlzcGxheSB0ZW1wbGF0ZQ0KJHRwbC0+ZGlzcGxheSgpOw==]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiggIWRlZmluZWQoJ0NNU19WRVJTSU9OJykgKSBleGl0Ow0KaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKFdpZGdldHM6Ok1BTkFHRV9QRVJNKSAmJiAhJHRoaXMtPkNoZWNrUGVybWlzc2lvbihXaWRnZXRzOjpVU0VfUEVSTSkgKSB7DQogICAkdGhpcy0+U2hvd0Vycm9ycyggJHRoaXMtPkxhbmcoJ25lZWRfcGVybWlzc2lvbicpICk7DQogICByZXR1cm47DQp9DQoNCiRsb2FkaW5nSWNvbiA9ICcuLi9tb2R1bGVzL1dpZGdldHMvbGliL2ltYWdlcy9sb2FkaW5nLmdpZic7DQoNCi8vIHNldCAnYWN0aXZlX3RhYicgaWYgcGFyYW0gc2V0DQppZiAoIGlzc2V0KCRwYXJhbXNbJ2FjdGl2ZV90YWInXSkgKSAkdGhpcy0+U2V0Q3VycmVudFRhYiggJHBhcmFtc1snYWN0aXZlX3RhYiddICk7DQoNCi8vIG9wdGlvbmFsIHVwZ3JhZGUgaWYgTElTRVdpZGdldHMgaW5zdGFsbGVkDQokdXBncmFkZVBvc3NpYmxlID0gZmFsc2U7DQokd2lkZ2V0c1VEVHNFeGlzdCA9IGZhbHNlOw0KaWYgKCBjbXNfdXRpbHM6Om1vZHVsZV9hdmFpbGFibGUoJ0xJU0VXaWRnZXRzJykgKSB7DQogICAkdXBncmFkZVBvc3NpYmxlID0gdHJ1ZTsNCn0NCiR0YWdPcHMgPSAkZ0Ntcy0+R2V0VXNlclRhZ09wZXJhdGlvbnMoKTsNCmlmICgkdGFnT3BzLT5Vc2VyVGFnRXhpc3RzKCd3aWRnZXRzUGFnZUJvdHRvbScpIHx8ICR0YWdPcHMtPlVzZXJUYWdFeGlzdHMoJ3dpZGdldHNTaWRlYmFyJykgKSB7DQogICAkd2lkZ2V0c1VEVHNFeGlzdCA9IHRydWU7DQp9DQoNCg0KLy8gQ3JlYXRlIEFkbWluIHRhYnMNCmVjaG8gJHRoaXMtPlN0YXJ0VGFiSGVhZGVycygpOw0KICAgLy8kYWN0aXZlX3RhYiA9IGVtcHR5KCRwYXJhbXNbJ2FjdGl2ZV90YWInXSkgPyAnJyA6ICRwYXJhbXNbJ2FjdGl2ZV90YWInXTsNCg0KICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCJ3aWRnZXRzIiwkdGhpcy0+TGFuZygidGFiX3dpZGdldHMiKSk7DQoNCiAgIGVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcigiY2F0ZWdvcmllcyIsJHRoaXMtPkxhbmcoInRhYl9jYXRlZ29yaWVzIikpOw0KDQogICBpZiAoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oV2lkZ2V0czo6TUFOQUdFX1BFUk0pICkgew0KICAgICAgaWYgKCAkdXBncmFkZVBvc3NpYmxlICkgew0KICAgICAgICAgZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCJjb252ZXJ0ZXIiLCR0aGlzLT5MYW5nKCJjb252ZXJ0ZXIiKSk7DQogICAgICB9DQogICAgICBlY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoIm9wdGlvbnMiLCR0aGlzLT5MYW5nKCJ0YWJfb3B0aW9ucyIpKTsNCiAgIH0NCmVjaG8gJHRoaXMtPkVuZFRhYkhlYWRlcnMoKTsNCg0KDQovLyBjcmVhdGUgVGFiIGNvbnRlbnQNCmVjaG8gJHRoaXMtPlN0YXJ0VGFiQ29udGVudCgpOw0KDQogICBlY2hvICR0aGlzLT5TdGFydFRhYigid2lkZ2V0cyIpOw0KICAgICAgJHF1ZXJ5ID0gbmV3IFdpZGdldFF1ZXJ5Ow0KICAgICAgJHdpZGdldHMgPSAkcXVlcnktPkdldE1hdGNoZXMoKTsNCiAgICAgICRjYXRlZ29yeSA9IG5ldyBXaWRnZXRDYXRlZ29yeSgpOw0KICAgICAgJGNhdGVnb3JpZXMgPSAkY2F0ZWdvcnktPmdldENhdGVnb3JpZXMoKTsNCiAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJHRoaXMtPkdldFRlbXBsYXRlUmVzb3VyY2UoJ2RlZmF1bHRhZG1pbi50cGwnKSwgbnVsbCwgbnVsbCwgJHNtYXJ0eSApOw0KICAgICAgJHRwbC0+YXNzaWduKCd3aWRnZXRzJywkd2lkZ2V0cyk7DQogICAgICAkdHBsLT5hc3NpZ24oJ2NhdGVnb3JpZXMnLCRjYXRlZ29yaWVzKTsNCiAgICAgICR0cGwtPmFzc2lnbignbG9hZGluZ0ljb24nLCRsb2FkaW5nSWNvbik7DQogICAgICAkdHBsLT5kaXNwbGF5KCk7DQogICBlY2hvICR0aGlzLT5FbmRUYWIoKTsNCg0KDQogICBlY2hvICR0aGlzLT5TdGFydFRhYigiY2F0ZWdvcmllcyIpOw0KICAgICAgJHF1ZXJ5ID0gbmV3IFdpZGdldENhdGVnb3J5UXVlcnk7DQogICAgICAkY2F0ZWdvcnkgPSAkcXVlcnktPkdldE1hdGNoZXMoKTsNCiAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSggJHRoaXMtPkdldFRlbXBsYXRlUmVzb3VyY2UoJ2FkbWluX2NhdGVnb3J5LnRwbCcpLCBudWxsLCBudWxsLCAkc21hcnR5ICk7DQogICAgICAkdHBsLT5hc3NpZ24oJ2NhdGVnb3J5JywkY2F0ZWdvcnkpOw0KICAgICAgJHRwbC0+ZGlzcGxheSgpOw0KICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7DQoNCiAgIGlmICggJHRoaXMtPkNoZWNrUGVybWlzc2lvbihXaWRnZXRzOjpNQU5BR0VfUEVSTSkgKSB7DQogICAgICBpZiAoJHVwZ3JhZGVQb3NzaWJsZSB8fCAkd2lkZ2V0c1VEVHNFeGlzdCkgew0KICAgICAgICAgZWNobyAkdGhpcy0+U3RhcnRUYWIoImNvbnZlcnRlciIpOw0KICAgICAgICAgJHRwbCA9ICRzbWFydHktPkNyZWF0ZVRlbXBsYXRlKCAkdGhpcy0+R2V0VGVtcGxhdGVSZXNvdXJjZSgnYWRtaW5fY29udmVydGVyLnRwbCcpLCBudWxsLCBudWxsLCAkc21hcnR5ICk7DQogICAgICAgICAkdHBsLT5hc3NpZ24oJ2J1dHRvbl9pbXBvcnRfZnJvbV9MSVNFV2lkZ2V0cycsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdpbXBvcnRfZnJvbV9MSVNFV2lkZ2V0cycsICdJbXBvcnQgZnJvbSBMSVNFV2lkZ2V0cycsICcnLCAnJywgJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byBkZWxldGUgYWxsIGV4aXN0aW5nIFdpZGdldHMgYW5kIGltcG9ydCBhbGwgZnJvbSBMSVNFV2lkZ2V0cz8nKSk7DQogICAgICAgICAkdHBsLT5hc3NpZ24oJ3dpZGdldHNVRFRzRXhpc3QnLCAkd2lkZ2V0c1VEVHNFeGlzdCk7DQogICAgICAgICAkdHBsLT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoICRpZCwgJ2FkbWluX2NvbnZlcnRlcicsICRyZXR1cm5pZCApKTsNCiAgICAgICAgICR0cGwtPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOw0KICAgICAgICAgJHRwbC0+ZGlzcGxheSgpOw0KICAgICAgICAgZWNobyAkdGhpcy0+RW5kVGFiKCk7DQogICAgICB9DQoNCiAgICAgIGVjaG8gJHRoaXMtPlN0YXJ0VGFiKCJvcHRpb25zIik7DQogICAgICAgICAkdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoICR0aGlzLT5HZXRUZW1wbGF0ZVJlc291cmNlKCdhZG1pbl9vcHRpb25zLnRwbCcpLCBudWxsLCBudWxsLCAkc21hcnR5ICk7DQogICAgICAgICAkdHBsLT5hc3NpZ24oJ3RpdGxlX2N1c3RvbU1vZHVsZU5hbWUnLCAkdGhpcy0+TGFuZygndGl0bGVfY3VzdG9tTW9kdWxlTmFtZScpKTsNCiAgICAgICAgICR0cGwtPmFzc2lnbignaW5wdXRfY3VzdG9tTW9kdWxlTmFtZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnaW5wdXRfY3VzdG9tTW9kdWxlTmFtZScsJHRoaXMtPkdldFByZWZlcmVuY2UoJ2N1c3RvbU1vZHVsZU5hbWUnLCcnKSw1MCwyNTUpKTsNCg0KICAgICAgICAgJHRwbC0+YXNzaWduKCd0aXRsZV9hZG1pblNlY3Rpb24nLCAkdGhpcy0+TGFuZygndGl0bGVfYWRtaW5TZWN0aW9uJykpOw0KICAgICAgICAgJHRwbC0+YXNzaWduKCdpbnB1dF9hZG1pblNlY3Rpb24nLCAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93bigkaWQsICdpbnB1dF9hZG1pblNlY3Rpb24nLA0KICAgICAgICAgICAgICAgYXJyYXkobGFuZygnbWFpbicpID0+ICdtYWluJywNCiAgICAgICAgICAgICAgICAgICAgICAgIGxhbmcoJ2NvbnRlbnQnKSA9PiAnY29udGVudCcsDQogICAgICAgICAgICAgICAgICAgICAgICBsYW5nKCdsYXlvdXQnKSA9PiAnbGF5b3V0JywNCiAgICAgICAgICAgICAgICAgICAgICAgIGxhbmcoJ3VzZXJzZ3JvdXBzJykgPT4gJ3VzZXJzZ3JvdXBzJywNCiAgICAgICAgICAgICAgICAgICAgICAgIGxhbmcoJ2V4dGVuc2lvbnMnKSA9PiAnZXh0ZW5zaW9ucycsDQogICAgICAgICAgICAgICAgICAgICAgICBsYW5nKCdhZG1pbicpID0+ICdhZG1pbicsDQogICAgICAgICAgICAgICAgICAgICAgICBsYW5nKCdteXByZWZzJykgPT4gJ215cHJlZnMnKSwNCiAgICAgICAgICAgICAgIC0xLA0KICAgICAgICAgICAgICAgJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FkbWluU2VjdGlvbicsICdjb250ZW50JykNCiAgICAgICAgICkpOw0KDQogICAgICAgICAkdHBsLT5hc3NpZ24oICd0aXRsZV93aWRnZXRTdHlsZU9wdGlvbnMnLCAkdGhpcy0+TGFuZygndGl0bGVfd2lkZ2V0U3R5bGVPcHRpb25zJykgKTsNCiAgICAgICAgICR0cGwtPmFzc2lnbiggJ2hlbHBfd2lkZ2V0U3R5bGVPcHRpb25zJywgJHRoaXMtPkxhbmcoJ2hlbHBfd2lkZ2V0U3R5bGVPcHRpb25zJykgKTsNCiAgICAgICAgICR0cGwtPmFzc2lnbiggJ3N0eWxlT3B0aW9ucycsICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdzdHlsZU9wdGlvbnMnLCAkdGhpcy0+TGFuZygnZGVmYXVsdF9zdHlsZV9vcHRpb25zJykpICk7DQoNCiAgICAgICAgICR0cGwtPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCggJGlkLCAnYWRtaW5fc2F2ZV9vcHRpb25zJywgJHJldHVybmlkICkpOw0KICAgICAgICAgJHRwbC0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7DQogICAgICAgICAkdHBsLT5kaXNwbGF5KCk7DQogICAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsNCiAgIH0NCg0KDQplY2hvICR0aGlzLT5FbmRUYWJDb250ZW50KCk7]]></data>
	</file>
	<file>
	  <filename>/action.delete_category.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiggIWRlZmluZWQoJ0NNU19WRVJTSU9OJykgKSBleGl0Ow0KaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKFdpZGdldHM6OlVTRV9QRVJNKSApIHJldHVybjsNCg0KaWYgKCBpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSAmJiAkcGFyYW1zWydjYXRlZ29yeV9pZCddID4gMSkgew0KICAgJGNhdGVnb3J5ID0gV2lkZ2V0Q2F0ZWdvcnk6OmxvYWRfYnlfaWQoIChpbnQpJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSApOw0KICAgJGlzRGVsZXRlZCA9ICRjYXRlZ29yeS0+ZGVsZXRlKCk7DQoNCiAgIGlmICggISRpc0RlbGV0ZWQgKSB7DQogICAgICAkdGhpcy0+U2V0RXJyb3IoICR0aGlzLT5MYW5nKCdjYXRlZ29yeV9ub3RfZGVsZXRlZCcpICk7DQogICAgICAkdGhpcy0+UmVkaXJlY3RUb0FkbWluVGFiKCdjYXRlZ29yaWVzJyk7DQogICB9IGVsc2Ugew0KICAgICAgJHRoaXMtPlNldE1lc3NhZ2UoICR0aGlzLT5MYW5nKCdjYXRlZ29yeV9kZWxldGVkJykgKTsNCiAgICAgICR0aGlzLT5SZWRpcmVjdFRvQWRtaW5UYWIoJ2NhdGVnb3JpZXMnKTsNCiAgIH0NCg0KfQ==]]></data>
	</file>
	<file>
	  <filename>/action.delete_widget.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiggIWRlZmluZWQoJ0NNU19WRVJTSU9OJykgKSBleGl0Ow0KaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKFdpZGdldHM6OlVTRV9QRVJNKSApIHJldHVybjsNCg0KaWYgKCBpc3NldCgkcGFyYW1zWyd3aWQnXSkgJiYgJHBhcmFtc1snd2lkJ10gPiAwKSB7DQogICAkd2lkZ2V0ID0gV2lkZ2V0SXRlbTo6bG9hZF9ieV9pZCggKGludCkkcGFyYW1zWyd3aWQnXSApOw0KICAgJHdpZGdldC0+ZGVsZXRlKCk7DQoNCiAgICRxdWVyeSA9IG5ldyBXaWRnZXRRdWVyeTsNCiAgICR1cGRhdGVkID0gJHF1ZXJ5LT51cGRhdGVQb3NpdGlvbnMoKTsNCg0KICAgJHRoaXMtPlNldE1lc3NhZ2UoICR0aGlzLT5MYW5nKCd3aWRnZXRfZGVsZXRlZCcpICk7DQogICAkdGhpcy0+UmVkaXJlY3RUb0FkbWluVGFiKCk7DQp9]]></data>
	</file>
	<file>
	  <filename>/action.edit_category.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiAoICFkZWZpbmVkKCdDTVNfVkVSU0lPTicpICkgZXhpdDsNCmlmICggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oV2lkZ2V0czo6VVNFX1BFUk0pICkgcmV0dXJuOw0KDQokY2F0ZWdvcnkgPSBuZXcgV2lkZ2V0Q2F0ZWdvcnkoKTsNCiRpc05ld0NhdGVnb3J5ID0gdHJ1ZTsNCg0KaWYgKCBpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSAmJiAkcGFyYW1zWydjYXRlZ29yeV9pZCddID4gMCApIHsNCiAgICRjYXRlZ29yeSA9IFdpZGdldENhdGVnb3J5Ojpsb2FkX2J5X2lkKCAoaW50KSRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10gKTsNCiAgICRpc05ld0NhdGVnb3J5ID0gZmFsc2U7DQp9DQppZiAoIGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSApIHsNCiAgICR0aGlzLT5SZWRpcmVjdFRvQWRtaW5UYWIoJ2NhdGVnb3JpZXMnKTsNCg0KfSBlbHNlIGlmICggaXNzZXQoJHBhcmFtc1snc3VibWl0J10pICkgew0KICAgJGVycm9ycyA9IGFycmF5KCk7DQogICAkY2F0ZWdvcnktPmNhdGVnb3J5X25hbWUgPSB0cmltKCRwYXJhbXNbJ2NhdGVnb3J5X25hbWUnXSk7DQogICAkY2F0ZWdvcnktPmNhdGVnb3J5X2FsaWFzID0gdHJpbSgkcGFyYW1zWydjYXRlZ29yeV9hbGlhcyddKTsNCg0KICAgLy8gY2hlY2sgbmFtZQ0KICAgaWYgKCAkY2F0ZWdvcnktPmNhdGVnb3J5X25hbWU9PScnICkgew0KICAgICAgJGVycm9yc1tdID0gJHRoaXMtPkxhbmcoJ2Vycm9yX2NhdGVnb3J5X25hbWUnKTsNCiAgIH0NCiAgIC8vIENoZWNrIGZvciBuYW1lIGR1cGxpY2F0ZQ0KICAgaWYgKCBpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSAmJiAkcGFyYW1zWydjYXRlZ29yeV9pZCddID4gMCApICB7DQogICAgICAkc3FsID0gJ1NFTEVDVCBjYXRlZ29yeV9pZCBGUk9NICcuQ01TX0RCX1BSRUZJWC4nbW9kdWxlX3dpZGdldHNfY2F0ZWdvcnkgV0hFUkUgY2F0ZWdvcnlfbmFtZSA9ICInLiRjYXRlZ29yeS0+Y2F0ZWdvcnlfbmFtZS4nIiBBTkQgY2F0ZWdvcnlfaWQgIT0gIicuJHBhcmFtc1snY2F0ZWdvcnlfaWQnXS4nIic7DQogICAgICAkZXhpc3RzID0gJGRiLT5HZXRPbmUoICRzcWwgKTsNCiAgIH0gZWxzZSB7DQogICAgICAkc3FsID0gJ1NFTEVDVCBjYXRlZ29yeV9pZCBGUk9NICcuQ01TX0RCX1BSRUZJWC4nbW9kdWxlX3dpZGdldHNfY2F0ZWdvcnkgV0hFUkUgY2F0ZWdvcnlfbmFtZSA9ICInLiRjYXRlZ29yeS0+Y2F0ZWdvcnlfbmFtZS4nIic7DQogICAgICAkZXhpc3RzID0gJGRiLT5HZXRPbmUoICRzcWwgKTsNCiAgIH0NCiAgIGlmICgkZXhpc3RzKSB7DQogICAgICAkZXJyb3JzW10gPSAkdGhpcy0+TGFuZygnZXJyb3JfY2F0ZWdvcnlfbmFtZScpOw0KICAgfQ0KDQogICAvLyBjaGVjayBhbGlhcw0KICAgaWYgKCAkY2F0ZWdvcnktPmNhdGVnb3J5X2FsaWFzPT0nJyApIHsNCiAgICAgICRjYXRlZ29yeS0+Y2F0ZWdvcnlfYWxpYXMgPSBXaWRnZXRJdGVtOjpnZW5lcmF0ZV9hbGlhcygkY2F0ZWdvcnktPmNhdGVnb3J5X25hbWUpOw0KICAgfQ0KICAgaWYgKCAhV2lkZ2V0SXRlbTo6aXNfdmFsaWRfYWxpYXMoJGNhdGVnb3J5LT5jYXRlZ29yeV9hbGlhcykgKSB7DQogICAgICAkZXJyb3JzW10gPSAkdGhpcy0+TGFuZygnZXJyb3JfYWxpYXNfaW52YWxpZCcpLiI6ICckY2F0ZWdvcnktPmNhdGVnb3J5X2FsaWFzJyI7DQogICB9DQogICAvLyBDaGVjayBmb3IgYWxpYXMgZHVwbGljYXRlDQogICBpZiAoIGlzc2V0KCRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10pICYmICRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10gPiAwICkgIHsNCiAgICAgICRzcWwgPSAnU0VMRUNUIGNhdGVnb3J5X2lkIEZST00gJy5DTVNfREJfUFJFRklYLidtb2R1bGVfd2lkZ2V0c19jYXRlZ29yeSBXSEVSRSBjYXRlZ29yeV9hbGlhcyA9ICInLiRjYXRlZ29yeS0+Y2F0ZWdvcnlfYWxpYXMuJyIgQU5EIGNhdGVnb3J5X2lkICE9ICInLiRwYXJhbXNbJ2NhdGVnb3J5X2lkJ10uJyInOw0KICAgICAgJGV4aXN0cyA9ICRkYi0+R2V0T25lKCAkc3FsICk7DQogICB9IGVsc2Ugew0KICAgICAgJHNxbCA9ICdTRUxFQ1QgY2F0ZWdvcnlfaWQgRlJPTSAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzX2NhdGVnb3J5IFdIRVJFIGNhdGVnb3J5X2FsaWFzID0gIicuJGNhdGVnb3J5LT5jYXRlZ29yeV9hbGlhcy4nIic7DQogICAgICAkZXhpc3RzID0gJGRiLT5HZXRPbmUoICRzcWwgKTsNCiAgIH0NCiAgIGlmICgkZXhpc3RzKSB7DQogICAgICAkZXJyb3JzW10gPSAkdGhpcy0+TGFuZygnZXJyb3JfYWxpYXNfaW52YWxpZCcpOw0KICAgfQ0KDQoNCiAgIC8vIGVpdGhlciBkaXNwbGF5IGVycm9ycyBvciBzYXZlIENhdGVnb3J5DQogICAkZm9ybWF0dGVkRXJyb3JzID0gJyc7DQogICBpZiAoICFlbXB0eSgkZXJyb3JzKSApIHsNCiAgICAgIGZvcmVhY2ggKCRlcnJvcnMgYXMgJGVycm9yKSB7DQogICAgICAgICAkZm9ybWF0dGVkRXJyb3JzIC49ICc8bGk+Jy4kZXJyb3IuJzwvbGk+JzsNCiAgICAgIH0NCiAgICAgICR0aGlzLT5TaG93RXJyb3JzKCc8dWw+Jy4kZm9ybWF0dGVkRXJyb3JzLic8L3VsPicpOw0KDQogICB9IGVsc2Ugew0KICAgICAgJGlzU2F2ZWQgPSAkY2F0ZWdvcnktPnNhdmUoKTsNCiAgICAgIGlmICggISRpc1NhdmVkICkgew0KICAgICAgICAgJHRoaXMtPlNldEVycm9yKCAkdGhpcy0+TGFuZygnY2F0ZWdvcnlfbm90c2F2ZWQnKSApOw0KDQogICAgICB9IGVsc2Ugew0KICAgICAgICAgJHRoaXMtPlNldE1lc3NhZ2UoICR0aGlzLT5MYW5nKCdjYXRlZ29yeV9zYXZlZCcpICk7DQogICAgICAgICAkdGhpcy0+UmVkaXJlY3RUb0FkbWluVGFiKCdjYXRlZ29yaWVzJyk7DQogICAgICB9DQogICB9DQp9DQoNCg0KLy8gc21hcnR5IHByb2Nlc3NpbmcgdG8gZGlzcGxheSBhZG1pbiBwYWdlDQokdHBsID0gJHNtYXJ0eS0+Q3JlYXRlVGVtcGxhdGUoJHRoaXMtPkdldFRlbXBsYXRlUmVzb3VyY2UoJ2VkaXRfY2F0ZWdvcnkudHBsJyksIG51bGwsIG51bGwsICRzbWFydHkpOw0KJHRwbC0+YXNzaWduKCdjYXRlZ29yeScsJGNhdGVnb3J5KTsNCiR0cGwtPmFzc2lnbignaXNOZXdDYXRlZ29yeScsJGlzTmV3Q2F0ZWdvcnkpOw0KDQokdHBsLT5kaXNwbGF5KCk7DQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/action.edit_widget.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiAoICFkZWZpbmVkKCdDTVNfVkVSU0lPTicpICkgZXhpdDsNCmlmICggISR0aGlzLT5DaGVja1Blcm1pc3Npb24oV2lkZ2V0czo6VVNFX1BFUk0pICkgcmV0dXJuOw0KDQokd2lkZ2V0ID0gbmV3IFdpZGdldEl0ZW0oKTsNCiRpc05ld1dpZGdldCA9IHRydWU7DQppZiAoIGlzc2V0KCRwYXJhbXNbJ3dpZCddKSAmJiAkcGFyYW1zWyd3aWQnXSA+IDAgKSB7DQogICAkd2lkZ2V0ID0gV2lkZ2V0SXRlbTo6bG9hZF9ieV9pZCgoaW50KSRwYXJhbXNbJ3dpZCddKTsNCiAgICRpc05ld1dpZGdldCA9IGZhbHNlOw0KfQ0KaWYgKCBpc3NldCgkcGFyYW1zWydjYW5jZWwnXSkgKSB7DQogICAkdGhpcy0+UmVkaXJlY3RUb0FkbWluVGFiKCk7DQoNCn0gZWxzZSBpZiAoIGlzc2V0KCRwYXJhbXNbJ3N1Ym1pdCddKSApIHsNCiAgICRlcnJvcnMgPSBhcnJheSgpOw0KDQoNCiAgICR3aWRnZXQtPnRpdGxlID0gdHJpbSgkcGFyYW1zWyd0aXRsZSddKTsNCiAgICR3aWRnZXQtPmNhdGVnb3J5X2lkID0gKGludCkgJHBhcmFtc1snY2F0ZWdvcnlfaWQnXTsNCiAgICR3aWRnZXQtPmFsaWFzID0gdHJpbSgkcGFyYW1zWydhbGlhcyddKTsNCiAgICR3aWRnZXQtPmFjdGl2ZSA9IChib29sKSAkcGFyYW1zWydhY3RpdmUnXTsNCiAgICR3aWRnZXQtPmhlYWRpbmcgPSB0cmltKCRwYXJhbXNbJ2hlYWRpbmcnXSk7DQogICAkd2lkZ2V0LT5jb250ZW50ID0gdHJpbSgkcGFyYW1zWydjb250ZW50J10pOw0KICAgJHdpZGdldC0+bGlua190byA9IChpbnQpICRwYXJhbXNbJ2xpbmtfdG8nXTsNCiAgICR3aWRnZXQtPmxpbmtfdGV4dCA9IHRyaW0oJHBhcmFtc1snbGlua190ZXh0J10pOw0KICAgaWYgKCFlbXB0eSgkcGFyYW1zWydzdHlsZV9vcHRpb25zJ10pKQ0KICAgICAgJHdpZGdldC0+c3R5bGVfb3B0aW9ucyA9IHRyaW0oIGltcGxvZGUoJywnLCAkcGFyYW1zWydzdHlsZV9vcHRpb25zJ10pICk7DQoNCiAgIC8vIGNoZWNrIHRpdGxlDQogICBpZiAoICR3aWRnZXQtPnRpdGxlPT0nJyApIHsNCiAgICAgICRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl90aXRsZV9lbXB0eScpOw0KICAgfQ0KDQogICAvLyBjaGVjayBhbGlhcw0KICAgaWYgKCAkd2lkZ2V0LT5hbGlhcz09JycgKSB7DQogICAgICAkd2lkZ2V0LT5hbGlhcyA9IFdpZGdldEl0ZW06OmdlbmVyYXRlX2FsaWFzKCR3aWRnZXQtPnRpdGxlKTsNCiAgIH0NCiAgIGlmICggIVdpZGdldEl0ZW06OmlzX3ZhbGlkX2FsaWFzKCR3aWRnZXQtPmFsaWFzKSApIHsNCiAgICAgICRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9hbGlhc19pbnZhbGlkJykuIjogJyR3aWRnZXQtPmFsaWFzJyI7DQogICB9DQogICAvLyBDaGVjayBmb3IgYWxpYXMgZHVwbGljYXRlDQogICBpZiAoIGlzc2V0KCRwYXJhbXNbJ3dpZCddKSAmJiAkcGFyYW1zWyd3aWQnXSA+IDAgKSAgew0KICAgICAgJHNxbCA9ICdTRUxFQ1QgaWQgRlJPTSAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzIFdIRVJFIGFsaWFzID0gIicuJHdpZGdldC0+YWxpYXMuJyIgQU5EIGlkICE9ICInLiRwYXJhbXNbJ3dpZCddLiciJzsNCiAgICAgICRleGlzdHMgPSAkZGItPkdldE9uZSggJHNxbCApOw0KICAgfSBlbHNlIHsNCiAgICAgICRzcWwgPSAnU0VMRUNUIGlkIEZST00gJy5DTVNfREJfUFJFRklYLidtb2R1bGVfd2lkZ2V0cyBXSEVSRSBhbGlhcyA9ICInLiR3aWRnZXQtPmFsaWFzLiciJzsNCiAgICAgICRleGlzdHMgPSAkZGItPkdldE9uZSggJHNxbCApOw0KICAgfQ0KICAgaWYgKCRleGlzdHMpIHsNCiAgICAgICRlcnJvcnNbXSA9ICR0aGlzLT5MYW5nKCdlcnJvcl9hbGlhc19pbnZhbGlkJyk7DQogICB9DQoNCiAgIC8vIHNldCBwb3NpdGlvbiB0byBsYXN0IHBvc2l0aW9uIGZvciBuZXcgV2lkZ2V0cw0KICAgaWYgKCRpc05ld1dpZGdldCkgew0KICAgICAgJHNxbCA9ICJTRUxFQ1QgTUFYKHBvc2l0aW9uKSBBUyBtYXhwb3NpdGlvbiBGUk9NICIuQ01TX0RCX1BSRUZJWC4ibW9kdWxlX3dpZGdldHMiOw0KICAgICAgJG1heHBvc2l0aW9uID0gJGRiLT5HZXRPbmUoJHNxbCk7DQogICAgICBpZiAoJG1heHBvc2l0aW9uKSAkd2lkZ2V0LT5wb3NpdGlvbiA9ICRtYXhwb3NpdGlvbiArIDE7DQogICB9DQoNCiAgIC8vIGVpdGhlciBkaXNwbGF5IGVycm9ycyBvciBzYXZlIFdpZGdldA0KICAgJGZvcm1hdHRlZEVycm9ycyA9ICcnOw0KICAgaWYgKCAhZW1wdHkoJGVycm9ycykgKSB7DQogICAgICBmb3JlYWNoICgkZXJyb3JzIGFzICRlcnJvcikgew0KICAgICAgICAgJGZvcm1hdHRlZEVycm9ycyAuPSAnPGxpPicuJGVycm9yLic8L2xpPic7DQogICAgICB9DQogICAgICAkdGhpcy0+U2hvd0Vycm9ycygnPHVsPicuJGZvcm1hdHRlZEVycm9ycy4nPC91bD4nKTsNCg0KICAgfSBlbHNlIHsNCiAgICAgICRpc1NhdmVkID0gJHdpZGdldC0+c2F2ZSgpOw0KICAgICAgaWYgKCAhJGlzU2F2ZWQgKSB7DQogICAgICAgICAkdGhpcy0+U2V0RXJyb3IoICR0aGlzLT5MYW5nKCd3aWRnZXRfbm90c2F2ZWQnKSApOw0KDQogICAgICB9IGVsc2Ugew0KICAgICAgICAgJHRoaXMtPlNldE1lc3NhZ2UoICR0aGlzLT5MYW5nKCd3aWRnZXRfc2F2ZWQnKSApOw0KICAgICAgICAgaWYgKCRpc05ld1dpZGdldCkgew0KICAgICAgICAgICAgJHF1ZXJ5ID0gbmV3IFdpZGdldFF1ZXJ5Ow0KICAgICAgICAgICAgJHVwZGF0ZWQgPSAkcXVlcnktPnVwZGF0ZVBvc2l0aW9ucygpOw0KICAgICAgICAgfQ0KICAgICAgICAgJHRoaXMtPlJlZGlyZWN0VG9BZG1pblRhYigpOw0KICAgICAgfQ0KICAgfQ0KfQ0KDQoNCi8vIGNyZWF0ZSBzdHlsZU9wdGlvbnMgJiBzZWxlY3RlZE9wdGlvbnMgYXJyYXkNCiRzZWxlY3RlZE9wdGlvbnMgPSBleHBsb2RlKCcsJywgJHdpZGdldC0+c3R5bGVfb3B0aW9ucyk7DQokc3R5bGVPcHRpb25zID0gYXJyYXkoKTsNCiRsaXN0ID0gZXhwbG9kZSggIlxuIiwgJHRoaXMtPkdldFByZWZlcmVuY2UoJ3N0eWxlT3B0aW9ucycpICk7DQpmb3JlYWNoKCRsaXN0IGFzICRvcHRpb24pIHsNCiAgICRvcHRpb24gPSBleHBsb2RlKCI9IiwgJG9wdGlvbiwgMik7DQogICBpZihjb3VudCgkb3B0aW9uKSA+IDEpIHsNCiAgICAgICRzdHlsZU9wdGlvbnNbdHJpbSgkb3B0aW9uWzBdKV0gPSB0cmltKCRvcHRpb25bMV0pOw0KICAgfSBlbHNlIHsNCiAgICAgICRzdHlsZU9wdGlvbnNbdHJpbSgkb3B0aW9uWzBdKV0gPSB0cmltKCRvcHRpb25bMF0pOw0KICAgfQ0KfQ0KDQoNCi8vIGNyZWF0ZSBMaW5rX3RvIGRyb3Bkb3ducw0KJGNvbnRlbnRvcHMgPSBjbXNtcygpLT5HZXRDb250ZW50T3BlcmF0aW9ucygpOw0KJGxpbmtUbyA9ICRjb250ZW50b3BzLT5DcmVhdGVIaWVyYXJjaHlEcm9wZG93bignJywgJHdpZGdldC0+bGlua190bywgJGlkLidsaW5rX3RvJywgdHJ1ZSk7DQoNCi8vIGdldCBjYXRlZ29yaWVzICYgZGVmYXVsdHMNCiRjYXRlZ29yeSA9IG5ldyBXaWRnZXRDYXRlZ29yeSgpOw0KJGNhdGVnb3JpZXMgPSAkY2F0ZWdvcnktPmdldENhdGVnb3JpZXMoKTsNCiRhY3RpdmUgPSBpc19udWxsKCR3aWRnZXQtPmFjdGl2ZSkgPyAxIDogJHdpZGdldC0+YWN0aXZlOw0KDQoNCi8vIHNtYXJ0eSBwcm9jZXNzaW5nIHRvIGRpc3BsYXkgYWRtaW4gcGFnZQ0KJHRwbCA9ICRzbWFydHktPkNyZWF0ZVRlbXBsYXRlKCR0aGlzLT5HZXRUZW1wbGF0ZVJlc291cmNlKCdlZGl0X3dpZGdldC50cGwnKSwgbnVsbCwgbnVsbCwgJHNtYXJ0eSk7DQokdHBsLT5hc3NpZ24oJ3dpZGdldCcsJHdpZGdldCk7DQokdHBsLT5hc3NpZ24oJ2lucHV0X2FjdGl2ZScsICR0aGlzLT5DcmVhdGVJbnB1dGNoZWNrYm94KCRpZCwgJ2FjdGl2ZScsIDEsICRhY3RpdmUpKTsNCiR0cGwtPmFzc2lnbignaXNOZXdXaWRnZXQnLCRpc05ld1dpZGdldCk7DQokdHBsLT5hc3NpZ24oJ2lucHV0X3N0eWxlT3B0aW9ucycsICR0aGlzLT5DcmVhdGVJbnB1dFNlbGVjdExpc3QoICRpZCwgJ3N0eWxlX29wdGlvbnMnLCAkc3R5bGVPcHRpb25zLCAkc2VsZWN0ZWRPcHRpb25zLCBjb3VudCgkc3R5bGVPcHRpb25zKSwgJycsIHRydWUpKTsNCiR0cGwtPmFzc2lnbignaW5wdXRfY2F0ZWdvcnlfaWQnLCAkdGhpcy0+Q3JlYXRlSW5wdXREcm9wZG93biggJGlkLCAnY2F0ZWdvcnlfaWQnLCBhcnJheV9mbGlwKCRjYXRlZ29yaWVzKSwgJycsICR3aWRnZXQtPmNhdGVnb3J5X2lkICkpOw0KJHRwbC0+YXNzaWduKCdpbnB1dF9saW5rX3RvJywkbGlua1RvKTsNCiR0cGwtPmFzc2lnbignY2F0ZWdvcmllcycsJGNhdGVnb3JpZXMpOw0KDQokdHBsLT5kaXNwbGF5KCk7DQo=]]></data>
	</file>
	<file>
	  <filename>/action.reorder_widget.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiggIWRlZmluZWQoJ0NNU19WRVJTSU9OJykgKSBleGl0Ow0KaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKFdpZGdldHM6OlVTRV9QRVJNKSApIHJldHVybjsNCg0KaWYgKCBlbXB0eSgkcGFyYW1zWyd3aWQnXSkgfHwgIWlzc2V0KCRwYXJhbXNbJ2FmdGVyJ10pIHx8ICRwYXJhbXNbJ2FmdGVyJ108MCApIHJldHVybjsNCg0KDQokd2lkZ2V0ID0gbmV3IFdpZGdldEl0ZW0oKTsNCmlmICgkcGFyYW1zWydhZnRlciddPT0wKSB7DQogICAkYWZ0ZXJQb3NpdGlvbiA9IDA7DQp9IGVsc2Ugew0KICAgJHdpZGdldCA9IFdpZGdldEl0ZW06OmxvYWRfYnlfaWQoKGludCkkcGFyYW1zWydhZnRlciddKTsNCiAgICRhZnRlclBvc2l0aW9uID0gJHdpZGdldC0+X19nZXQoJ3Bvc2l0aW9uJyk7DQp9DQokd2lkZ2V0ID0gV2lkZ2V0SXRlbTo6bG9hZF9ieV9pZCgoaW50KSRwYXJhbXNbJ3dpZCddKTsNCiRmcm9tUG9zaXRpb24gPSAkd2lkZ2V0LT5fX2dldCgncG9zaXRpb24nKTsNCg0KJGRiID0gXGNtc191dGlsczo6Z2V0X2RiKCk7DQppZiAoJGZyb21Qb3NpdGlvbj4kYWZ0ZXJQb3NpdGlvbikgew0KICAgJHNxbCA9ICJVUERBVEUgIi5DTVNfREJfUFJFRklYLiJtb2R1bGVfd2lkZ2V0cw0KICAgICAgU0VUIHBvc2l0aW9uPXBvc2l0aW9uKzENCiAgICAgIFdIRVJFIHBvc2l0aW9uID4gJyRhZnRlclBvc2l0aW9uJyBBTkQgcG9zaXRpb24gPCAnJGZyb21Qb3NpdGlvbiciOw0KICAgJHJlcyA9ICRkYi0+RXhlY3V0ZSgkc3FsKTsNCg0KICAgJHNxbCA9ICJVUERBVEUgIi5DTVNfREJfUFJFRklYLiJtb2R1bGVfd2lkZ2V0cw0KICAgICAgU0VUIHBvc2l0aW9uPSRhZnRlclBvc2l0aW9uKzENCiAgICAgIFdIRVJFIGlkPSIuKGludCkkcGFyYW1zWyd3aWQnXTsNCiAgICRyZXMgPSAkZGItPkV4ZWN1dGUoJHNxbCk7DQoNCn0gZWxzZSB7DQogICAkc3FsID0gIlVQREFURSAiLkNNU19EQl9QUkVGSVguIm1vZHVsZV93aWRnZXRzDQogICAgICBTRVQgcG9zaXRpb249cG9zaXRpb24tMQ0KICAgICAgV0hFUkUgcG9zaXRpb24gPiAnJGZyb21Qb3NpdGlvbicgQU5EIHBvc2l0aW9uIDw9ICckYWZ0ZXJQb3NpdGlvbiciOw0KICAgJHJlcyA9ICRkYi0+RXhlY3V0ZSgkc3FsKTsNCg0KICAgJHNxbCA9ICJVUERBVEUgIi5DTVNfREJfUFJFRklYLiJtb2R1bGVfd2lkZ2V0cw0KICAgICAgU0VUIHBvc2l0aW9uPSRhZnRlclBvc2l0aW9uDQogICAgICBXSEVSRSBpZD0iLihpbnQpJHBhcmFtc1snd2lkJ107DQogICAkcmVzID0gJGRiLT5FeGVjdXRlKCRzcWwpOw0KfQ==]]></data>
	</file>
	<file>
	  <filename>/action.set_default_category.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiggIWRlZmluZWQoJ0NNU19WRVJTSU9OJykgKSBleGl0Ow0KaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKFdpZGdldHM6OlVTRV9QRVJNKSApIHJldHVybjsNCg0KaWYgKCBpc3NldCgkcGFyYW1zWydjYXRlZ29yeV9pZCddKSAmJiAkcGFyYW1zWydjYXRlZ29yeV9pZCddID4gMCkgew0KICAgJGNhdGVnb3J5ID0gV2lkZ2V0Q2F0ZWdvcnk6OmxvYWRfYnlfaWQoIChpbnQpJHBhcmFtc1snY2F0ZWdvcnlfaWQnXSApOw0KICAgJGRlZmF1bHRTZXQgPSAkY2F0ZWdvcnktPnNldEFzRGVmYXVsdCgpOw0KDQogICBpZiAoICEkZGVmYXVsdFNldCApIHsNCiAgICAgICR0aGlzLT5TZXRFcnJvciggJHRoaXMtPkxhbmcoJ2RlZmF1bHRfY2F0ZWdvcnlfbm90X3NldCcpICk7DQogICB9IGVsc2Ugew0KICAgICAgJHRoaXMtPlNldE1lc3NhZ2UoICR0aGlzLT5MYW5nKCdkZWZhdWx0X2NhdGVnb3J5X3NldCcpICk7DQogICAgICAkdGhpcy0+UmVkaXJlY3RUb0FkbWluVGFiKCdjYXRlZ29yaWVzJyk7DQogICB9DQoNCn0=]]></data>
	</file>
	<file>
	  <filename>/action.toggle_active_widget.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiggIWRlZmluZWQoJ0NNU19WRVJTSU9OJykgKSBleGl0Ow0KaWYoICEkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKFdpZGdldHM6OlVTRV9QRVJNKSApIHJldHVybjsNCg0KaWYgKCBpc3NldCgkcGFyYW1zWyd3aWQnXSkgJiYgJHBhcmFtc1snd2lkJ10gPiAwKSB7DQogICAkd2lkZ2V0ID0gV2lkZ2V0SXRlbTo6bG9hZF9ieV9pZCggKGludCkkcGFyYW1zWyd3aWQnXSApOw0KICAgJHdpZGdldC0+dG9nZ2xlX2FjdGl2ZSgpOw0KICAgJHRoaXMtPlJlZGlyZWN0VG9BZG1pblRhYignd2lkZ2V0cycpOw0KfQ==]]></data>
	</file>
	<file>
	  <filename>/doc/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/doc/changelog.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHVsPg0KICAgPGxpPjxzdHJvbmc+VmVyc2lvbiAxLjA8L3N0cm9uZz4gLSAwMURlYzE2DQogICAgICA8dWw+DQogICAgICAgICA8bGk+SW5pdGlhbCBtb2R1bGUgcmVsZWFzZTwvbGk+DQogICAgICA8L3VsPg0KICAgPC9saT4NCjwvdWw+]]></data>
	</file>
	<file>
	  <filename>/doc/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBEVU1NWSBIVE1MIEZJTEUgLS0+]]></data>
	</file>
	<file>
	  <filename>/doc/LICENCE.txt</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Iy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgTW9kdWxlOiBXaWRnZXRzDQojIEF1dGhvcjogQ2hyaXMgVGF5bG9yDQojIENvcHlyaWdodDogKEMpIDIwMTYgQ2hyaXMgVGF5bG9yLCBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51aw0KIyBMaWNlbmNlOiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2ZXJzaW9uIDMNCiMgICAgICAgICAgc2VlIC9XaWRnZXRzL2RvYy9MSUNFTkNFLnR4dCBvciA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIENNUyAtIENNUyBNYWRlIFNpbXBsZSBpcyAoYykgMjAxMSBieSBUZWQgS3VscCAod2lzaHlAY21zbWFkZXNpbXBsZS5vcmcpDQojIFByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZw0KIyBNb2R1bGUncyBob21lcGFnZSBpczogaHR0cDovL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9wcm9qZWN0cy9XaWRnZXRzDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQ0KIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQ0KIyB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcg0KIyAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLg0KIw0KIyBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwNCiMgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YNCiMgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQ0KIyBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLg0KIw0KIyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQ0KIyBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbS4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4NCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCiAgICAgICAgICAgICAgICAgICAgR05VIEdFTkVSQUwgUFVCTElDIExJQ0VOU0UNCiAgICAgICAgICAgICAgICAgICAgICAgVmVyc2lvbiAzLCAyOSBKdW5lIDIwMDcNCg0KIENvcHlyaWdodCAoQykgMjAwNyBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4gPGh0dHA6Ly9mc2Yub3JnLz4NCiBFdmVyeW9uZSBpcyBwZXJtaXR0ZWQgdG8gY29weSBhbmQgZGlzdHJpYnV0ZSB2ZXJiYXRpbSBjb3BpZXMNCiBvZiB0aGlzIGxpY2Vuc2UgZG9jdW1lbnQsIGJ1dCBjaGFuZ2luZyBpdCBpcyBub3QgYWxsb3dlZC4NCg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByZWFtYmxlDQoNCiAgVGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGlzIGEgZnJlZSwgY29weWxlZnQgbGljZW5zZSBmb3INCnNvZnR3YXJlIGFuZCBvdGhlciBraW5kcyBvZiB3b3Jrcy4NCg0KICBUaGUgbGljZW5zZXMgZm9yIG1vc3Qgc29mdHdhcmUgYW5kIG90aGVyIHByYWN0aWNhbCB3b3JrcyBhcmUgZGVzaWduZWQNCnRvIHRha2UgYXdheSB5b3VyIGZyZWVkb20gdG8gc2hhcmUgYW5kIGNoYW5nZSB0aGUgd29ya3MuICBCeSBjb250cmFzdCwNCnRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBpcyBpbnRlbmRlZCB0byBndWFyYW50ZWUgeW91ciBmcmVlZG9tIHRvDQpzaGFyZSBhbmQgY2hhbmdlIGFsbCB2ZXJzaW9ucyBvZiBhIHByb2dyYW0tLXRvIG1ha2Ugc3VyZSBpdCByZW1haW5zIGZyZWUNCnNvZnR3YXJlIGZvciBhbGwgaXRzIHVzZXJzLiAgV2UsIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIHVzZSB0aGUNCkdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3N0IG9mIG91ciBzb2Z0d2FyZTsgaXQgYXBwbGllcyBhbHNvIHRvDQphbnkgb3RoZXIgd29yayByZWxlYXNlZCB0aGlzIHdheSBieSBpdHMgYXV0aG9ycy4gIFlvdSBjYW4gYXBwbHkgaXQgdG8NCnlvdXIgcHJvZ3JhbXMsIHRvby4NCg0KICBXaGVuIHdlIHNwZWFrIG9mIGZyZWUgc29mdHdhcmUsIHdlIGFyZSByZWZlcnJpbmcgdG8gZnJlZWRvbSwgbm90DQpwcmljZS4gIE91ciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlcyBhcmUgZGVzaWduZWQgdG8gbWFrZSBzdXJlIHRoYXQgeW91DQpoYXZlIHRoZSBmcmVlZG9tIHRvIGRpc3RyaWJ1dGUgY29waWVzIG9mIGZyZWUgc29mdHdhcmUgKGFuZCBjaGFyZ2UgZm9yDQp0aGVtIGlmIHlvdSB3aXNoKSwgdGhhdCB5b3UgcmVjZWl2ZSBzb3VyY2UgY29kZSBvciBjYW4gZ2V0IGl0IGlmIHlvdQ0Kd2FudCBpdCwgdGhhdCB5b3UgY2FuIGNoYW5nZSB0aGUgc29mdHdhcmUgb3IgdXNlIHBpZWNlcyBvZiBpdCBpbiBuZXcNCmZyZWUgcHJvZ3JhbXMsIGFuZCB0aGF0IHlvdSBrbm93IHlvdSBjYW4gZG8gdGhlc2UgdGhpbmdzLg0KDQogIFRvIHByb3RlY3QgeW91ciByaWdodHMsIHdlIG5lZWQgdG8gcHJldmVudCBvdGhlcnMgZnJvbSBkZW55aW5nIHlvdQ0KdGhlc2UgcmlnaHRzIG9yIGFza2luZyB5b3UgdG8gc3VycmVuZGVyIHRoZSByaWdodHMuICBUaGVyZWZvcmUsIHlvdSBoYXZlDQpjZXJ0YWluIHJlc3BvbnNpYmlsaXRpZXMgaWYgeW91IGRpc3RyaWJ1dGUgY29waWVzIG9mIHRoZSBzb2Z0d2FyZSwgb3IgaWYNCnlvdSBtb2RpZnkgaXQ6IHJlc3BvbnNpYmlsaXRpZXMgdG8gcmVzcGVjdCB0aGUgZnJlZWRvbSBvZiBvdGhlcnMuDQoNCiAgRm9yIGV4YW1wbGUsIGlmIHlvdSBkaXN0cmlidXRlIGNvcGllcyBvZiBzdWNoIGEgcHJvZ3JhbSwgd2hldGhlcg0KZ3JhdGlzIG9yIGZvciBhIGZlZSwgeW91IG11c3QgcGFzcyBvbiB0byB0aGUgcmVjaXBpZW50cyB0aGUgc2FtZQ0KZnJlZWRvbXMgdGhhdCB5b3UgcmVjZWl2ZWQuICBZb3UgbXVzdCBtYWtlIHN1cmUgdGhhdCB0aGV5LCB0b28sIHJlY2VpdmUNCm9yIGNhbiBnZXQgdGhlIHNvdXJjZSBjb2RlLiAgQW5kIHlvdSBtdXN0IHNob3cgdGhlbSB0aGVzZSB0ZXJtcyBzbyB0aGV5DQprbm93IHRoZWlyIHJpZ2h0cy4NCg0KICBEZXZlbG9wZXJzIHRoYXQgdXNlIHRoZSBHTlUgR1BMIHByb3RlY3QgeW91ciByaWdodHMgd2l0aCB0d28gc3RlcHM6DQooMSkgYXNzZXJ0IGNvcHlyaWdodCBvbiB0aGUgc29mdHdhcmUsIGFuZCAoMikgb2ZmZXIgeW91IHRoaXMgTGljZW5zZQ0KZ2l2aW5nIHlvdSBsZWdhbCBwZXJtaXNzaW9uIHRvIGNvcHksIGRpc3RyaWJ1dGUgYW5kL29yIG1vZGlmeSBpdC4NCg0KICBGb3IgdGhlIGRldmVsb3BlcnMnIGFuZCBhdXRob3JzJyBwcm90ZWN0aW9uLCB0aGUgR1BMIGNsZWFybHkgZXhwbGFpbnMNCnRoYXQgdGhlcmUgaXMgbm8gd2FycmFudHkgZm9yIHRoaXMgZnJlZSBzb2Z0d2FyZS4gIEZvciBib3RoIHVzZXJzJyBhbmQNCmF1dGhvcnMnIHNha2UsIHRoZSBHUEwgcmVxdWlyZXMgdGhhdCBtb2RpZmllZCB2ZXJzaW9ucyBiZSBtYXJrZWQgYXMNCmNoYW5nZWQsIHNvIHRoYXQgdGhlaXIgcHJvYmxlbXMgd2lsbCBub3QgYmUgYXR0cmlidXRlZCBlcnJvbmVvdXNseSB0bw0KYXV0aG9ycyBvZiBwcmV2aW91cyB2ZXJzaW9ucy4NCg0KICBTb21lIGRldmljZXMgYXJlIGRlc2lnbmVkIHRvIGRlbnkgdXNlcnMgYWNjZXNzIHRvIGluc3RhbGwgb3IgcnVuDQptb2RpZmllZCB2ZXJzaW9ucyBvZiB0aGUgc29mdHdhcmUgaW5zaWRlIHRoZW0sIGFsdGhvdWdoIHRoZSBtYW51ZmFjdHVyZXINCmNhbiBkbyBzby4gIFRoaXMgaXMgZnVuZGFtZW50YWxseSBpbmNvbXBhdGlibGUgd2l0aCB0aGUgYWltIG9mDQpwcm90ZWN0aW5nIHVzZXJzJyBmcmVlZG9tIHRvIGNoYW5nZSB0aGUgc29mdHdhcmUuICBUaGUgc3lzdGVtYXRpYw0KcGF0dGVybiBvZiBzdWNoIGFidXNlIG9jY3VycyBpbiB0aGUgYXJlYSBvZiBwcm9kdWN0cyBmb3IgaW5kaXZpZHVhbHMgdG8NCnVzZSwgd2hpY2ggaXMgcHJlY2lzZWx5IHdoZXJlIGl0IGlzIG1vc3QgdW5hY2NlcHRhYmxlLiAgVGhlcmVmb3JlLCB3ZQ0KaGF2ZSBkZXNpZ25lZCB0aGlzIHZlcnNpb24gb2YgdGhlIEdQTCB0byBwcm9oaWJpdCB0aGUgcHJhY3RpY2UgZm9yIHRob3NlDQpwcm9kdWN0cy4gIElmIHN1Y2ggcHJvYmxlbXMgYXJpc2Ugc3Vic3RhbnRpYWxseSBpbiBvdGhlciBkb21haW5zLCB3ZQ0Kc3RhbmQgcmVhZHkgdG8gZXh0ZW5kIHRoaXMgcHJvdmlzaW9uIHRvIHRob3NlIGRvbWFpbnMgaW4gZnV0dXJlIHZlcnNpb25zDQpvZiB0aGUgR1BMLCBhcyBuZWVkZWQgdG8gcHJvdGVjdCB0aGUgZnJlZWRvbSBvZiB1c2Vycy4NCg0KICBGaW5hbGx5LCBldmVyeSBwcm9ncmFtIGlzIHRocmVhdGVuZWQgY29uc3RhbnRseSBieSBzb2Z0d2FyZSBwYXRlbnRzLg0KU3RhdGVzIHNob3VsZCBub3QgYWxsb3cgcGF0ZW50cyB0byByZXN0cmljdCBkZXZlbG9wbWVudCBhbmQgdXNlIG9mDQpzb2Z0d2FyZSBvbiBnZW5lcmFsLXB1cnBvc2UgY29tcHV0ZXJzLCBidXQgaW4gdGhvc2UgdGhhdCBkbywgd2Ugd2lzaCB0bw0KYXZvaWQgdGhlIHNwZWNpYWwgZGFuZ2VyIHRoYXQgcGF0ZW50cyBhcHBsaWVkIHRvIGEgZnJlZSBwcm9ncmFtIGNvdWxkDQptYWtlIGl0IGVmZmVjdGl2ZWx5IHByb3ByaWV0YXJ5LiAgVG8gcHJldmVudCB0aGlzLCB0aGUgR1BMIGFzc3VyZXMgdGhhdA0KcGF0ZW50cyBjYW5ub3QgYmUgdXNlZCB0byByZW5kZXIgdGhlIHByb2dyYW0gbm9uLWZyZWUuDQoNCiAgVGhlIHByZWNpc2UgdGVybXMgYW5kIGNvbmRpdGlvbnMgZm9yIGNvcHlpbmcsIGRpc3RyaWJ1dGlvbiBhbmQNCm1vZGlmaWNhdGlvbiBmb2xsb3cuDQoNCiAgICAgICAgICAgICAgICAgICAgICAgVEVSTVMgQU5EIENPTkRJVElPTlMNCg0KICAwLiBEZWZpbml0aW9ucy4NCg0KICAiVGhpcyBMaWNlbnNlIiByZWZlcnMgdG8gdmVyc2lvbiAzIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZS4NCg0KICAiQ29weXJpZ2h0IiBhbHNvIG1lYW5zIGNvcHlyaWdodC1saWtlIGxhd3MgdGhhdCBhcHBseSB0byBvdGhlciBraW5kcyBvZg0Kd29ya3MsIHN1Y2ggYXMgc2VtaWNvbmR1Y3RvciBtYXNrcy4NCg0KICAiVGhlIFByb2dyYW0iIHJlZmVycyB0byBhbnkgY29weXJpZ2h0YWJsZSB3b3JrIGxpY2Vuc2VkIHVuZGVyIHRoaXMNCkxpY2Vuc2UuICBFYWNoIGxpY2Vuc2VlIGlzIGFkZHJlc3NlZCBhcyAieW91Ii4gICJMaWNlbnNlZXMiIGFuZA0KInJlY2lwaWVudHMiIG1heSBiZSBpbmRpdmlkdWFscyBvciBvcmdhbml6YXRpb25zLg0KDQogIFRvICJtb2RpZnkiIGEgd29yayBtZWFucyB0byBjb3B5IGZyb20gb3IgYWRhcHQgYWxsIG9yIHBhcnQgb2YgdGhlIHdvcmsNCmluIGEgZmFzaGlvbiByZXF1aXJpbmcgY29weXJpZ2h0IHBlcm1pc3Npb24sIG90aGVyIHRoYW4gdGhlIG1ha2luZyBvZiBhbg0KZXhhY3QgY29weS4gIFRoZSByZXN1bHRpbmcgd29yayBpcyBjYWxsZWQgYSAibW9kaWZpZWQgdmVyc2lvbiIgb2YgdGhlDQplYXJsaWVyIHdvcmsgb3IgYSB3b3JrICJiYXNlZCBvbiIgdGhlIGVhcmxpZXIgd29yay4NCg0KICBBICJjb3ZlcmVkIHdvcmsiIG1lYW5zIGVpdGhlciB0aGUgdW5tb2RpZmllZCBQcm9ncmFtIG9yIGEgd29yayBiYXNlZA0Kb24gdGhlIFByb2dyYW0uDQoNCiAgVG8gInByb3BhZ2F0ZSIgYSB3b3JrIG1lYW5zIHRvIGRvIGFueXRoaW5nIHdpdGggaXQgdGhhdCwgd2l0aG91dA0KcGVybWlzc2lvbiwgd291bGQgbWFrZSB5b3UgZGlyZWN0bHkgb3Igc2Vjb25kYXJpbHkgbGlhYmxlIGZvcg0KaW5mcmluZ2VtZW50IHVuZGVyIGFwcGxpY2FibGUgY29weXJpZ2h0IGxhdywgZXhjZXB0IGV4ZWN1dGluZyBpdCBvbiBhDQpjb21wdXRlciBvciBtb2RpZnlpbmcgYSBwcml2YXRlIGNvcHkuICBQcm9wYWdhdGlvbiBpbmNsdWRlcyBjb3B5aW5nLA0KZGlzdHJpYnV0aW9uICh3aXRoIG9yIHdpdGhvdXQgbW9kaWZpY2F0aW9uKSwgbWFraW5nIGF2YWlsYWJsZSB0byB0aGUNCnB1YmxpYywgYW5kIGluIHNvbWUgY291bnRyaWVzIG90aGVyIGFjdGl2aXRpZXMgYXMgd2VsbC4NCg0KICBUbyAiY29udmV5IiBhIHdvcmsgbWVhbnMgYW55IGtpbmQgb2YgcHJvcGFnYXRpb24gdGhhdCBlbmFibGVzIG90aGVyDQpwYXJ0aWVzIHRvIG1ha2Ugb3IgcmVjZWl2ZSBjb3BpZXMuICBNZXJlIGludGVyYWN0aW9uIHdpdGggYSB1c2VyIHRocm91Z2gNCmEgY29tcHV0ZXIgbmV0d29yaywgd2l0aCBubyB0cmFuc2ZlciBvZiBhIGNvcHksIGlzIG5vdCBjb252ZXlpbmcuDQoNCiAgQW4gaW50ZXJhY3RpdmUgdXNlciBpbnRlcmZhY2UgZGlzcGxheXMgIkFwcHJvcHJpYXRlIExlZ2FsIE5vdGljZXMiDQp0byB0aGUgZXh0ZW50IHRoYXQgaXQgaW5jbHVkZXMgYSBjb252ZW5pZW50IGFuZCBwcm9taW5lbnRseSB2aXNpYmxlDQpmZWF0dXJlIHRoYXQgKDEpIGRpc3BsYXlzIGFuIGFwcHJvcHJpYXRlIGNvcHlyaWdodCBub3RpY2UsIGFuZCAoMikNCnRlbGxzIHRoZSB1c2VyIHRoYXQgdGhlcmUgaXMgbm8gd2FycmFudHkgZm9yIHRoZSB3b3JrIChleGNlcHQgdG8gdGhlDQpleHRlbnQgdGhhdCB3YXJyYW50aWVzIGFyZSBwcm92aWRlZCksIHRoYXQgbGljZW5zZWVzIG1heSBjb252ZXkgdGhlDQp3b3JrIHVuZGVyIHRoaXMgTGljZW5zZSwgYW5kIGhvdyB0byB2aWV3IGEgY29weSBvZiB0aGlzIExpY2Vuc2UuICBJZg0KdGhlIGludGVyZmFjZSBwcmVzZW50cyBhIGxpc3Qgb2YgdXNlciBjb21tYW5kcyBvciBvcHRpb25zLCBzdWNoIGFzIGENCm1lbnUsIGEgcHJvbWluZW50IGl0ZW0gaW4gdGhlIGxpc3QgbWVldHMgdGhpcyBjcml0ZXJpb24uDQoNCiAgMS4gU291cmNlIENvZGUuDQoNCiAgVGhlICJzb3VyY2UgY29kZSIgZm9yIGEgd29yayBtZWFucyB0aGUgcHJlZmVycmVkIGZvcm0gb2YgdGhlIHdvcmsNCmZvciBtYWtpbmcgbW9kaWZpY2F0aW9ucyB0byBpdC4gICJPYmplY3QgY29kZSIgbWVhbnMgYW55IG5vbi1zb3VyY2UNCmZvcm0gb2YgYSB3b3JrLg0KDQogIEEgIlN0YW5kYXJkIEludGVyZmFjZSIgbWVhbnMgYW4gaW50ZXJmYWNlIHRoYXQgZWl0aGVyIGlzIGFuIG9mZmljaWFsDQpzdGFuZGFyZCBkZWZpbmVkIGJ5IGEgcmVjb2duaXplZCBzdGFuZGFyZHMgYm9keSwgb3IsIGluIHRoZSBjYXNlIG9mDQppbnRlcmZhY2VzIHNwZWNpZmllZCBmb3IgYSBwYXJ0aWN1bGFyIHByb2dyYW1taW5nIGxhbmd1YWdlLCBvbmUgdGhhdA0KaXMgd2lkZWx5IHVzZWQgYW1vbmcgZGV2ZWxvcGVycyB3b3JraW5nIGluIHRoYXQgbGFuZ3VhZ2UuDQoNCiAgVGhlICJTeXN0ZW0gTGlicmFyaWVzIiBvZiBhbiBleGVjdXRhYmxlIHdvcmsgaW5jbHVkZSBhbnl0aGluZywgb3RoZXINCnRoYW4gdGhlIHdvcmsgYXMgYSB3aG9sZSwgdGhhdCAoYSkgaXMgaW5jbHVkZWQgaW4gdGhlIG5vcm1hbCBmb3JtIG9mDQpwYWNrYWdpbmcgYSBNYWpvciBDb21wb25lbnQsIGJ1dCB3aGljaCBpcyBub3QgcGFydCBvZiB0aGF0IE1ham9yDQpDb21wb25lbnQsIGFuZCAoYikgc2VydmVzIG9ubHkgdG8gZW5hYmxlIHVzZSBvZiB0aGUgd29yayB3aXRoIHRoYXQNCk1ham9yIENvbXBvbmVudCwgb3IgdG8gaW1wbGVtZW50IGEgU3RhbmRhcmQgSW50ZXJmYWNlIGZvciB3aGljaCBhbg0KaW1wbGVtZW50YXRpb24gaXMgYXZhaWxhYmxlIHRvIHRoZSBwdWJsaWMgaW4gc291cmNlIGNvZGUgZm9ybS4gIEENCiJNYWpvciBDb21wb25lbnQiLCBpbiB0aGlzIGNvbnRleHQsIG1lYW5zIGEgbWFqb3IgZXNzZW50aWFsIGNvbXBvbmVudA0KKGtlcm5lbCwgd2luZG93IHN5c3RlbSwgYW5kIHNvIG9uKSBvZiB0aGUgc3BlY2lmaWMgb3BlcmF0aW5nIHN5c3RlbQ0KKGlmIGFueSkgb24gd2hpY2ggdGhlIGV4ZWN1dGFibGUgd29yayBydW5zLCBvciBhIGNvbXBpbGVyIHVzZWQgdG8NCnByb2R1Y2UgdGhlIHdvcmssIG9yIGFuIG9iamVjdCBjb2RlIGludGVycHJldGVyIHVzZWQgdG8gcnVuIGl0Lg0KDQogIFRoZSAiQ29ycmVzcG9uZGluZyBTb3VyY2UiIGZvciBhIHdvcmsgaW4gb2JqZWN0IGNvZGUgZm9ybSBtZWFucyBhbGwNCnRoZSBzb3VyY2UgY29kZSBuZWVkZWQgdG8gZ2VuZXJhdGUsIGluc3RhbGwsIGFuZCAoZm9yIGFuIGV4ZWN1dGFibGUNCndvcmspIHJ1biB0aGUgb2JqZWN0IGNvZGUgYW5kIHRvIG1vZGlmeSB0aGUgd29yaywgaW5jbHVkaW5nIHNjcmlwdHMgdG8NCmNvbnRyb2wgdGhvc2UgYWN0aXZpdGllcy4gIEhvd2V2ZXIsIGl0IGRvZXMgbm90IGluY2x1ZGUgdGhlIHdvcmsncw0KU3lzdGVtIExpYnJhcmllcywgb3IgZ2VuZXJhbC1wdXJwb3NlIHRvb2xzIG9yIGdlbmVyYWxseSBhdmFpbGFibGUgZnJlZQ0KcHJvZ3JhbXMgd2hpY2ggYXJlIHVzZWQgdW5tb2RpZmllZCBpbiBwZXJmb3JtaW5nIHRob3NlIGFjdGl2aXRpZXMgYnV0DQp3aGljaCBhcmUgbm90IHBhcnQgb2YgdGhlIHdvcmsuICBGb3IgZXhhbXBsZSwgQ29ycmVzcG9uZGluZyBTb3VyY2UNCmluY2x1ZGVzIGludGVyZmFjZSBkZWZpbml0aW9uIGZpbGVzIGFzc29jaWF0ZWQgd2l0aCBzb3VyY2UgZmlsZXMgZm9yDQp0aGUgd29yaywgYW5kIHRoZSBzb3VyY2UgY29kZSBmb3Igc2hhcmVkIGxpYnJhcmllcyBhbmQgZHluYW1pY2FsbHkNCmxpbmtlZCBzdWJwcm9ncmFtcyB0aGF0IHRoZSB3b3JrIGlzIHNwZWNpZmljYWxseSBkZXNpZ25lZCB0byByZXF1aXJlLA0Kc3VjaCBhcyBieSBpbnRpbWF0ZSBkYXRhIGNvbW11bmljYXRpb24gb3IgY29udHJvbCBmbG93IGJldHdlZW4gdGhvc2UNCnN1YnByb2dyYW1zIGFuZCBvdGhlciBwYXJ0cyBvZiB0aGUgd29yay4NCg0KICBUaGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgbmVlZCBub3QgaW5jbHVkZSBhbnl0aGluZyB0aGF0IHVzZXJzDQpjYW4gcmVnZW5lcmF0ZSBhdXRvbWF0aWNhbGx5IGZyb20gb3RoZXIgcGFydHMgb2YgdGhlIENvcnJlc3BvbmRpbmcNClNvdXJjZS4NCg0KICBUaGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgZm9yIGEgd29yayBpbiBzb3VyY2UgY29kZSBmb3JtIGlzIHRoYXQNCnNhbWUgd29yay4NCg0KICAyLiBCYXNpYyBQZXJtaXNzaW9ucy4NCg0KICBBbGwgcmlnaHRzIGdyYW50ZWQgdW5kZXIgdGhpcyBMaWNlbnNlIGFyZSBncmFudGVkIGZvciB0aGUgdGVybSBvZg0KY29weXJpZ2h0IG9uIHRoZSBQcm9ncmFtLCBhbmQgYXJlIGlycmV2b2NhYmxlIHByb3ZpZGVkIHRoZSBzdGF0ZWQNCmNvbmRpdGlvbnMgYXJlIG1ldC4gIFRoaXMgTGljZW5zZSBleHBsaWNpdGx5IGFmZmlybXMgeW91ciB1bmxpbWl0ZWQNCnBlcm1pc3Npb24gdG8gcnVuIHRoZSB1bm1vZGlmaWVkIFByb2dyYW0uICBUaGUgb3V0cHV0IGZyb20gcnVubmluZyBhDQpjb3ZlcmVkIHdvcmsgaXMgY292ZXJlZCBieSB0aGlzIExpY2Vuc2Ugb25seSBpZiB0aGUgb3V0cHV0LCBnaXZlbiBpdHMNCmNvbnRlbnQsIGNvbnN0aXR1dGVzIGEgY292ZXJlZCB3b3JrLiAgVGhpcyBMaWNlbnNlIGFja25vd2xlZGdlcyB5b3VyDQpyaWdodHMgb2YgZmFpciB1c2Ugb3Igb3RoZXIgZXF1aXZhbGVudCwgYXMgcHJvdmlkZWQgYnkgY29weXJpZ2h0IGxhdy4NCg0KICBZb3UgbWF5IG1ha2UsIHJ1biBhbmQgcHJvcGFnYXRlIGNvdmVyZWQgd29ya3MgdGhhdCB5b3UgZG8gbm90DQpjb252ZXksIHdpdGhvdXQgY29uZGl0aW9ucyBzbyBsb25nIGFzIHlvdXIgbGljZW5zZSBvdGhlcndpc2UgcmVtYWlucw0KaW4gZm9yY2UuICBZb3UgbWF5IGNvbnZleSBjb3ZlcmVkIHdvcmtzIHRvIG90aGVycyBmb3IgdGhlIHNvbGUgcHVycG9zZQ0Kb2YgaGF2aW5nIHRoZW0gbWFrZSBtb2RpZmljYXRpb25zIGV4Y2x1c2l2ZWx5IGZvciB5b3UsIG9yIHByb3ZpZGUgeW91DQp3aXRoIGZhY2lsaXRpZXMgZm9yIHJ1bm5pbmcgdGhvc2Ugd29ya3MsIHByb3ZpZGVkIHRoYXQgeW91IGNvbXBseSB3aXRoDQp0aGUgdGVybXMgb2YgdGhpcyBMaWNlbnNlIGluIGNvbnZleWluZyBhbGwgbWF0ZXJpYWwgZm9yIHdoaWNoIHlvdSBkbw0Kbm90IGNvbnRyb2wgY29weXJpZ2h0LiAgVGhvc2UgdGh1cyBtYWtpbmcgb3IgcnVubmluZyB0aGUgY292ZXJlZCB3b3Jrcw0KZm9yIHlvdSBtdXN0IGRvIHNvIGV4Y2x1c2l2ZWx5IG9uIHlvdXIgYmVoYWxmLCB1bmRlciB5b3VyIGRpcmVjdGlvbg0KYW5kIGNvbnRyb2wsIG9uIHRlcm1zIHRoYXQgcHJvaGliaXQgdGhlbSBmcm9tIG1ha2luZyBhbnkgY29waWVzIG9mDQp5b3VyIGNvcHlyaWdodGVkIG1hdGVyaWFsIG91dHNpZGUgdGhlaXIgcmVsYXRpb25zaGlwIHdpdGggeW91Lg0KDQogIENvbnZleWluZyB1bmRlciBhbnkgb3RoZXIgY2lyY3Vtc3RhbmNlcyBpcyBwZXJtaXR0ZWQgc29sZWx5IHVuZGVyDQp0aGUgY29uZGl0aW9ucyBzdGF0ZWQgYmVsb3cuICBTdWJsaWNlbnNpbmcgaXMgbm90IGFsbG93ZWQ7IHNlY3Rpb24gMTANCm1ha2VzIGl0IHVubmVjZXNzYXJ5Lg0KDQogIDMuIFByb3RlY3RpbmcgVXNlcnMnIExlZ2FsIFJpZ2h0cyBGcm9tIEFudGktQ2lyY3VtdmVudGlvbiBMYXcuDQoNCiAgTm8gY292ZXJlZCB3b3JrIHNoYWxsIGJlIGRlZW1lZCBwYXJ0IG9mIGFuIGVmZmVjdGl2ZSB0ZWNobm9sb2dpY2FsDQptZWFzdXJlIHVuZGVyIGFueSBhcHBsaWNhYmxlIGxhdyBmdWxmaWxsaW5nIG9ibGlnYXRpb25zIHVuZGVyIGFydGljbGUNCjExIG9mIHRoZSBXSVBPIGNvcHlyaWdodCB0cmVhdHkgYWRvcHRlZCBvbiAyMCBEZWNlbWJlciAxOTk2LCBvcg0Kc2ltaWxhciBsYXdzIHByb2hpYml0aW5nIG9yIHJlc3RyaWN0aW5nIGNpcmN1bXZlbnRpb24gb2Ygc3VjaA0KbWVhc3VyZXMuDQoNCiAgV2hlbiB5b3UgY29udmV5IGEgY292ZXJlZCB3b3JrLCB5b3Ugd2FpdmUgYW55IGxlZ2FsIHBvd2VyIHRvIGZvcmJpZA0KY2lyY3VtdmVudGlvbiBvZiB0ZWNobm9sb2dpY2FsIG1lYXN1cmVzIHRvIHRoZSBleHRlbnQgc3VjaCBjaXJjdW12ZW50aW9uDQppcyBlZmZlY3RlZCBieSBleGVyY2lzaW5nIHJpZ2h0cyB1bmRlciB0aGlzIExpY2Vuc2Ugd2l0aCByZXNwZWN0IHRvDQp0aGUgY292ZXJlZCB3b3JrLCBhbmQgeW91IGRpc2NsYWltIGFueSBpbnRlbnRpb24gdG8gbGltaXQgb3BlcmF0aW9uIG9yDQptb2RpZmljYXRpb24gb2YgdGhlIHdvcmsgYXMgYSBtZWFucyBvZiBlbmZvcmNpbmcsIGFnYWluc3QgdGhlIHdvcmsncw0KdXNlcnMsIHlvdXIgb3IgdGhpcmQgcGFydGllcycgbGVnYWwgcmlnaHRzIHRvIGZvcmJpZCBjaXJjdW12ZW50aW9uIG9mDQp0ZWNobm9sb2dpY2FsIG1lYXN1cmVzLg0KDQogIDQuIENvbnZleWluZyBWZXJiYXRpbSBDb3BpZXMuDQoNCiAgWW91IG1heSBjb252ZXkgdmVyYmF0aW0gY29waWVzIG9mIHRoZSBQcm9ncmFtJ3Mgc291cmNlIGNvZGUgYXMgeW91DQpyZWNlaXZlIGl0LCBpbiBhbnkgbWVkaXVtLCBwcm92aWRlZCB0aGF0IHlvdSBjb25zcGljdW91c2x5IGFuZA0KYXBwcm9wcmlhdGVseSBwdWJsaXNoIG9uIGVhY2ggY29weSBhbiBhcHByb3ByaWF0ZSBjb3B5cmlnaHQgbm90aWNlOw0Ka2VlcCBpbnRhY3QgYWxsIG5vdGljZXMgc3RhdGluZyB0aGF0IHRoaXMgTGljZW5zZSBhbmQgYW55DQpub24tcGVybWlzc2l2ZSB0ZXJtcyBhZGRlZCBpbiBhY2NvcmQgd2l0aCBzZWN0aW9uIDcgYXBwbHkgdG8gdGhlIGNvZGU7DQprZWVwIGludGFjdCBhbGwgbm90aWNlcyBvZiB0aGUgYWJzZW5jZSBvZiBhbnkgd2FycmFudHk7IGFuZCBnaXZlIGFsbA0KcmVjaXBpZW50cyBhIGNvcHkgb2YgdGhpcyBMaWNlbnNlIGFsb25nIHdpdGggdGhlIFByb2dyYW0uDQoNCiAgWW91IG1heSBjaGFyZ2UgYW55IHByaWNlIG9yIG5vIHByaWNlIGZvciBlYWNoIGNvcHkgdGhhdCB5b3UgY29udmV5LA0KYW5kIHlvdSBtYXkgb2ZmZXIgc3VwcG9ydCBvciB3YXJyYW50eSBwcm90ZWN0aW9uIGZvciBhIGZlZS4NCg0KICA1LiBDb252ZXlpbmcgTW9kaWZpZWQgU291cmNlIFZlcnNpb25zLg0KDQogIFlvdSBtYXkgY29udmV5IGEgd29yayBiYXNlZCBvbiB0aGUgUHJvZ3JhbSwgb3IgdGhlIG1vZGlmaWNhdGlvbnMgdG8NCnByb2R1Y2UgaXQgZnJvbSB0aGUgUHJvZ3JhbSwgaW4gdGhlIGZvcm0gb2Ygc291cmNlIGNvZGUgdW5kZXIgdGhlDQp0ZXJtcyBvZiBzZWN0aW9uIDQsIHByb3ZpZGVkIHRoYXQgeW91IGFsc28gbWVldCBhbGwgb2YgdGhlc2UgY29uZGl0aW9uczoNCg0KICAgIGEpIFRoZSB3b3JrIG11c3QgY2FycnkgcHJvbWluZW50IG5vdGljZXMgc3RhdGluZyB0aGF0IHlvdSBtb2RpZmllZA0KICAgIGl0LCBhbmQgZ2l2aW5nIGEgcmVsZXZhbnQgZGF0ZS4NCg0KICAgIGIpIFRoZSB3b3JrIG11c3QgY2FycnkgcHJvbWluZW50IG5vdGljZXMgc3RhdGluZyB0aGF0IGl0IGlzDQogICAgcmVsZWFzZWQgdW5kZXIgdGhpcyBMaWNlbnNlIGFuZCBhbnkgY29uZGl0aW9ucyBhZGRlZCB1bmRlciBzZWN0aW9uDQogICAgNy4gIFRoaXMgcmVxdWlyZW1lbnQgbW9kaWZpZXMgdGhlIHJlcXVpcmVtZW50IGluIHNlY3Rpb24gNCB0bw0KICAgICJrZWVwIGludGFjdCBhbGwgbm90aWNlcyIuDQoNCiAgICBjKSBZb3UgbXVzdCBsaWNlbnNlIHRoZSBlbnRpcmUgd29yaywgYXMgYSB3aG9sZSwgdW5kZXIgdGhpcw0KICAgIExpY2Vuc2UgdG8gYW55b25lIHdobyBjb21lcyBpbnRvIHBvc3Nlc3Npb24gb2YgYSBjb3B5LiAgVGhpcw0KICAgIExpY2Vuc2Ugd2lsbCB0aGVyZWZvcmUgYXBwbHksIGFsb25nIHdpdGggYW55IGFwcGxpY2FibGUgc2VjdGlvbiA3DQogICAgYWRkaXRpb25hbCB0ZXJtcywgdG8gdGhlIHdob2xlIG9mIHRoZSB3b3JrLCBhbmQgYWxsIGl0cyBwYXJ0cywNCiAgICByZWdhcmRsZXNzIG9mIGhvdyB0aGV5IGFyZSBwYWNrYWdlZC4gIFRoaXMgTGljZW5zZSBnaXZlcyBubw0KICAgIHBlcm1pc3Npb24gdG8gbGljZW5zZSB0aGUgd29yayBpbiBhbnkgb3RoZXIgd2F5LCBidXQgaXQgZG9lcyBub3QNCiAgICBpbnZhbGlkYXRlIHN1Y2ggcGVybWlzc2lvbiBpZiB5b3UgaGF2ZSBzZXBhcmF0ZWx5IHJlY2VpdmVkIGl0Lg0KDQogICAgZCkgSWYgdGhlIHdvcmsgaGFzIGludGVyYWN0aXZlIHVzZXIgaW50ZXJmYWNlcywgZWFjaCBtdXN0IGRpc3BsYXkNCiAgICBBcHByb3ByaWF0ZSBMZWdhbCBOb3RpY2VzOyBob3dldmVyLCBpZiB0aGUgUHJvZ3JhbSBoYXMgaW50ZXJhY3RpdmUNCiAgICBpbnRlcmZhY2VzIHRoYXQgZG8gbm90IGRpc3BsYXkgQXBwcm9wcmlhdGUgTGVnYWwgTm90aWNlcywgeW91cg0KICAgIHdvcmsgbmVlZCBub3QgbWFrZSB0aGVtIGRvIHNvLg0KDQogIEEgY29tcGlsYXRpb24gb2YgYSBjb3ZlcmVkIHdvcmsgd2l0aCBvdGhlciBzZXBhcmF0ZSBhbmQgaW5kZXBlbmRlbnQNCndvcmtzLCB3aGljaCBhcmUgbm90IGJ5IHRoZWlyIG5hdHVyZSBleHRlbnNpb25zIG9mIHRoZSBjb3ZlcmVkIHdvcmssDQphbmQgd2hpY2ggYXJlIG5vdCBjb21iaW5lZCB3aXRoIGl0IHN1Y2ggYXMgdG8gZm9ybSBhIGxhcmdlciBwcm9ncmFtLA0KaW4gb3Igb24gYSB2b2x1bWUgb2YgYSBzdG9yYWdlIG9yIGRpc3RyaWJ1dGlvbiBtZWRpdW0sIGlzIGNhbGxlZCBhbg0KImFnZ3JlZ2F0ZSIgaWYgdGhlIGNvbXBpbGF0aW9uIGFuZCBpdHMgcmVzdWx0aW5nIGNvcHlyaWdodCBhcmUgbm90DQp1c2VkIHRvIGxpbWl0IHRoZSBhY2Nlc3Mgb3IgbGVnYWwgcmlnaHRzIG9mIHRoZSBjb21waWxhdGlvbidzIHVzZXJzDQpiZXlvbmQgd2hhdCB0aGUgaW5kaXZpZHVhbCB3b3JrcyBwZXJtaXQuICBJbmNsdXNpb24gb2YgYSBjb3ZlcmVkIHdvcmsNCmluIGFuIGFnZ3JlZ2F0ZSBkb2VzIG5vdCBjYXVzZSB0aGlzIExpY2Vuc2UgdG8gYXBwbHkgdG8gdGhlIG90aGVyDQpwYXJ0cyBvZiB0aGUgYWdncmVnYXRlLg0KDQogIDYuIENvbnZleWluZyBOb24tU291cmNlIEZvcm1zLg0KDQogIFlvdSBtYXkgY29udmV5IGEgY292ZXJlZCB3b3JrIGluIG9iamVjdCBjb2RlIGZvcm0gdW5kZXIgdGhlIHRlcm1zDQpvZiBzZWN0aW9ucyA0IGFuZCA1LCBwcm92aWRlZCB0aGF0IHlvdSBhbHNvIGNvbnZleSB0aGUNCm1hY2hpbmUtcmVhZGFibGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgdW5kZXIgdGhlIHRlcm1zIG9mIHRoaXMgTGljZW5zZSwNCmluIG9uZSBvZiB0aGVzZSB3YXlzOg0KDQogICAgYSkgQ29udmV5IHRoZSBvYmplY3QgY29kZSBpbiwgb3IgZW1ib2RpZWQgaW4sIGEgcGh5c2ljYWwgcHJvZHVjdA0KICAgIChpbmNsdWRpbmcgYSBwaHlzaWNhbCBkaXN0cmlidXRpb24gbWVkaXVtKSwgYWNjb21wYW5pZWQgYnkgdGhlDQogICAgQ29ycmVzcG9uZGluZyBTb3VyY2UgZml4ZWQgb24gYSBkdXJhYmxlIHBoeXNpY2FsIG1lZGl1bQ0KICAgIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlLg0KDQogICAgYikgQ29udmV5IHRoZSBvYmplY3QgY29kZSBpbiwgb3IgZW1ib2RpZWQgaW4sIGEgcGh5c2ljYWwgcHJvZHVjdA0KICAgIChpbmNsdWRpbmcgYSBwaHlzaWNhbCBkaXN0cmlidXRpb24gbWVkaXVtKSwgYWNjb21wYW5pZWQgYnkgYQ0KICAgIHdyaXR0ZW4gb2ZmZXIsIHZhbGlkIGZvciBhdCBsZWFzdCB0aHJlZSB5ZWFycyBhbmQgdmFsaWQgZm9yIGFzDQogICAgbG9uZyBhcyB5b3Ugb2ZmZXIgc3BhcmUgcGFydHMgb3IgY3VzdG9tZXIgc3VwcG9ydCBmb3IgdGhhdCBwcm9kdWN0DQogICAgbW9kZWwsIHRvIGdpdmUgYW55b25lIHdobyBwb3NzZXNzZXMgdGhlIG9iamVjdCBjb2RlIGVpdGhlciAoMSkgYQ0KICAgIGNvcHkgb2YgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIGZvciBhbGwgdGhlIHNvZnR3YXJlIGluIHRoZQ0KICAgIHByb2R1Y3QgdGhhdCBpcyBjb3ZlcmVkIGJ5IHRoaXMgTGljZW5zZSwgb24gYSBkdXJhYmxlIHBoeXNpY2FsDQogICAgbWVkaXVtIGN1c3RvbWFyaWx5IHVzZWQgZm9yIHNvZnR3YXJlIGludGVyY2hhbmdlLCBmb3IgYSBwcmljZSBubw0KICAgIG1vcmUgdGhhbiB5b3VyIHJlYXNvbmFibGUgY29zdCBvZiBwaHlzaWNhbGx5IHBlcmZvcm1pbmcgdGhpcw0KICAgIGNvbnZleWluZyBvZiBzb3VyY2UsIG9yICgyKSBhY2Nlc3MgdG8gY29weSB0aGUNCiAgICBDb3JyZXNwb25kaW5nIFNvdXJjZSBmcm9tIGEgbmV0d29yayBzZXJ2ZXIgYXQgbm8gY2hhcmdlLg0KDQogICAgYykgQ29udmV5IGluZGl2aWR1YWwgY29waWVzIG9mIHRoZSBvYmplY3QgY29kZSB3aXRoIGEgY29weSBvZiB0aGUNCiAgICB3cml0dGVuIG9mZmVyIHRvIHByb3ZpZGUgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlLiAgVGhpcw0KICAgIGFsdGVybmF0aXZlIGlzIGFsbG93ZWQgb25seSBvY2Nhc2lvbmFsbHkgYW5kIG5vbmNvbW1lcmNpYWxseSwgYW5kDQogICAgb25seSBpZiB5b3UgcmVjZWl2ZWQgdGhlIG9iamVjdCBjb2RlIHdpdGggc3VjaCBhbiBvZmZlciwgaW4gYWNjb3JkDQogICAgd2l0aCBzdWJzZWN0aW9uIDZiLg0KDQogICAgZCkgQ29udmV5IHRoZSBvYmplY3QgY29kZSBieSBvZmZlcmluZyBhY2Nlc3MgZnJvbSBhIGRlc2lnbmF0ZWQNCiAgICBwbGFjZSAoZ3JhdGlzIG9yIGZvciBhIGNoYXJnZSksIGFuZCBvZmZlciBlcXVpdmFsZW50IGFjY2VzcyB0byB0aGUNCiAgICBDb3JyZXNwb25kaW5nIFNvdXJjZSBpbiB0aGUgc2FtZSB3YXkgdGhyb3VnaCB0aGUgc2FtZSBwbGFjZSBhdCBubw0KICAgIGZ1cnRoZXIgY2hhcmdlLiAgWW91IG5lZWQgbm90IHJlcXVpcmUgcmVjaXBpZW50cyB0byBjb3B5IHRoZQ0KICAgIENvcnJlc3BvbmRpbmcgU291cmNlIGFsb25nIHdpdGggdGhlIG9iamVjdCBjb2RlLiAgSWYgdGhlIHBsYWNlIHRvDQogICAgY29weSB0aGUgb2JqZWN0IGNvZGUgaXMgYSBuZXR3b3JrIHNlcnZlciwgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlDQogICAgbWF5IGJlIG9uIGEgZGlmZmVyZW50IHNlcnZlciAob3BlcmF0ZWQgYnkgeW91IG9yIGEgdGhpcmQgcGFydHkpDQogICAgdGhhdCBzdXBwb3J0cyBlcXVpdmFsZW50IGNvcHlpbmcgZmFjaWxpdGllcywgcHJvdmlkZWQgeW91IG1haW50YWluDQogICAgY2xlYXIgZGlyZWN0aW9ucyBuZXh0IHRvIHRoZSBvYmplY3QgY29kZSBzYXlpbmcgd2hlcmUgdG8gZmluZCB0aGUNCiAgICBDb3JyZXNwb25kaW5nIFNvdXJjZS4gIFJlZ2FyZGxlc3Mgb2Ygd2hhdCBzZXJ2ZXIgaG9zdHMgdGhlDQogICAgQ29ycmVzcG9uZGluZyBTb3VyY2UsIHlvdSByZW1haW4gb2JsaWdhdGVkIHRvIGVuc3VyZSB0aGF0IGl0IGlzDQogICAgYXZhaWxhYmxlIGZvciBhcyBsb25nIGFzIG5lZWRlZCB0byBzYXRpc2Z5IHRoZXNlIHJlcXVpcmVtZW50cy4NCg0KICAgIGUpIENvbnZleSB0aGUgb2JqZWN0IGNvZGUgdXNpbmcgcGVlci10by1wZWVyIHRyYW5zbWlzc2lvbiwgcHJvdmlkZWQNCiAgICB5b3UgaW5mb3JtIG90aGVyIHBlZXJzIHdoZXJlIHRoZSBvYmplY3QgY29kZSBhbmQgQ29ycmVzcG9uZGluZw0KICAgIFNvdXJjZSBvZiB0aGUgd29yayBhcmUgYmVpbmcgb2ZmZXJlZCB0byB0aGUgZ2VuZXJhbCBwdWJsaWMgYXQgbm8NCiAgICBjaGFyZ2UgdW5kZXIgc3Vic2VjdGlvbiA2ZC4NCg0KICBBIHNlcGFyYWJsZSBwb3J0aW9uIG9mIHRoZSBvYmplY3QgY29kZSwgd2hvc2Ugc291cmNlIGNvZGUgaXMgZXhjbHVkZWQNCmZyb20gdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIGFzIGEgU3lzdGVtIExpYnJhcnksIG5lZWQgbm90IGJlDQppbmNsdWRlZCBpbiBjb252ZXlpbmcgdGhlIG9iamVjdCBjb2RlIHdvcmsuDQoNCiAgQSAiVXNlciBQcm9kdWN0IiBpcyBlaXRoZXIgKDEpIGEgImNvbnN1bWVyIHByb2R1Y3QiLCB3aGljaCBtZWFucyBhbnkNCnRhbmdpYmxlIHBlcnNvbmFsIHByb3BlcnR5IHdoaWNoIGlzIG5vcm1hbGx5IHVzZWQgZm9yIHBlcnNvbmFsLCBmYW1pbHksDQpvciBob3VzZWhvbGQgcHVycG9zZXMsIG9yICgyKSBhbnl0aGluZyBkZXNpZ25lZCBvciBzb2xkIGZvciBpbmNvcnBvcmF0aW9uDQppbnRvIGEgZHdlbGxpbmcuICBJbiBkZXRlcm1pbmluZyB3aGV0aGVyIGEgcHJvZHVjdCBpcyBhIGNvbnN1bWVyIHByb2R1Y3QsDQpkb3VidGZ1bCBjYXNlcyBzaGFsbCBiZSByZXNvbHZlZCBpbiBmYXZvciBvZiBjb3ZlcmFnZS4gIEZvciBhIHBhcnRpY3VsYXINCnByb2R1Y3QgcmVjZWl2ZWQgYnkgYSBwYXJ0aWN1bGFyIHVzZXIsICJub3JtYWxseSB1c2VkIiByZWZlcnMgdG8gYQ0KdHlwaWNhbCBvciBjb21tb24gdXNlIG9mIHRoYXQgY2xhc3Mgb2YgcHJvZHVjdCwgcmVnYXJkbGVzcyBvZiB0aGUgc3RhdHVzDQpvZiB0aGUgcGFydGljdWxhciB1c2VyIG9yIG9mIHRoZSB3YXkgaW4gd2hpY2ggdGhlIHBhcnRpY3VsYXIgdXNlcg0KYWN0dWFsbHkgdXNlcywgb3IgZXhwZWN0cyBvciBpcyBleHBlY3RlZCB0byB1c2UsIHRoZSBwcm9kdWN0LiAgQSBwcm9kdWN0DQppcyBhIGNvbnN1bWVyIHByb2R1Y3QgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoZSBwcm9kdWN0IGhhcyBzdWJzdGFudGlhbA0KY29tbWVyY2lhbCwgaW5kdXN0cmlhbCBvciBub24tY29uc3VtZXIgdXNlcywgdW5sZXNzIHN1Y2ggdXNlcyByZXByZXNlbnQNCnRoZSBvbmx5IHNpZ25pZmljYW50IG1vZGUgb2YgdXNlIG9mIHRoZSBwcm9kdWN0Lg0KDQogICJJbnN0YWxsYXRpb24gSW5mb3JtYXRpb24iIGZvciBhIFVzZXIgUHJvZHVjdCBtZWFucyBhbnkgbWV0aG9kcywNCnByb2NlZHVyZXMsIGF1dGhvcml6YXRpb24ga2V5cywgb3Igb3RoZXIgaW5mb3JtYXRpb24gcmVxdWlyZWQgdG8gaW5zdGFsbA0KYW5kIGV4ZWN1dGUgbW9kaWZpZWQgdmVyc2lvbnMgb2YgYSBjb3ZlcmVkIHdvcmsgaW4gdGhhdCBVc2VyIFByb2R1Y3QgZnJvbQ0KYSBtb2RpZmllZCB2ZXJzaW9uIG9mIGl0cyBDb3JyZXNwb25kaW5nIFNvdXJjZS4gIFRoZSBpbmZvcm1hdGlvbiBtdXN0DQpzdWZmaWNlIHRvIGVuc3VyZSB0aGF0IHRoZSBjb250aW51ZWQgZnVuY3Rpb25pbmcgb2YgdGhlIG1vZGlmaWVkIG9iamVjdA0KY29kZSBpcyBpbiBubyBjYXNlIHByZXZlbnRlZCBvciBpbnRlcmZlcmVkIHdpdGggc29sZWx5IGJlY2F1c2UNCm1vZGlmaWNhdGlvbiBoYXMgYmVlbiBtYWRlLg0KDQogIElmIHlvdSBjb252ZXkgYW4gb2JqZWN0IGNvZGUgd29yayB1bmRlciB0aGlzIHNlY3Rpb24gaW4sIG9yIHdpdGgsIG9yDQpzcGVjaWZpY2FsbHkgZm9yIHVzZSBpbiwgYSBVc2VyIFByb2R1Y3QsIGFuZCB0aGUgY29udmV5aW5nIG9jY3VycyBhcw0KcGFydCBvZiBhIHRyYW5zYWN0aW9uIGluIHdoaWNoIHRoZSByaWdodCBvZiBwb3NzZXNzaW9uIGFuZCB1c2Ugb2YgdGhlDQpVc2VyIFByb2R1Y3QgaXMgdHJhbnNmZXJyZWQgdG8gdGhlIHJlY2lwaWVudCBpbiBwZXJwZXR1aXR5IG9yIGZvciBhDQpmaXhlZCB0ZXJtIChyZWdhcmRsZXNzIG9mIGhvdyB0aGUgdHJhbnNhY3Rpb24gaXMgY2hhcmFjdGVyaXplZCksIHRoZQ0KQ29ycmVzcG9uZGluZyBTb3VyY2UgY29udmV5ZWQgdW5kZXIgdGhpcyBzZWN0aW9uIG11c3QgYmUgYWNjb21wYW5pZWQNCmJ5IHRoZSBJbnN0YWxsYXRpb24gSW5mb3JtYXRpb24uICBCdXQgdGhpcyByZXF1aXJlbWVudCBkb2VzIG5vdCBhcHBseQ0KaWYgbmVpdGhlciB5b3Ugbm9yIGFueSB0aGlyZCBwYXJ0eSByZXRhaW5zIHRoZSBhYmlsaXR5IHRvIGluc3RhbGwNCm1vZGlmaWVkIG9iamVjdCBjb2RlIG9uIHRoZSBVc2VyIFByb2R1Y3QgKGZvciBleGFtcGxlLCB0aGUgd29yayBoYXMNCmJlZW4gaW5zdGFsbGVkIGluIFJPTSkuDQoNCiAgVGhlIHJlcXVpcmVtZW50IHRvIHByb3ZpZGUgSW5zdGFsbGF0aW9uIEluZm9ybWF0aW9uIGRvZXMgbm90IGluY2x1ZGUgYQ0KcmVxdWlyZW1lbnQgdG8gY29udGludWUgdG8gcHJvdmlkZSBzdXBwb3J0IHNlcnZpY2UsIHdhcnJhbnR5LCBvciB1cGRhdGVzDQpmb3IgYSB3b3JrIHRoYXQgaGFzIGJlZW4gbW9kaWZpZWQgb3IgaW5zdGFsbGVkIGJ5IHRoZSByZWNpcGllbnQsIG9yIGZvcg0KdGhlIFVzZXIgUHJvZHVjdCBpbiB3aGljaCBpdCBoYXMgYmVlbiBtb2RpZmllZCBvciBpbnN0YWxsZWQuICBBY2Nlc3MgdG8gYQ0KbmV0d29yayBtYXkgYmUgZGVuaWVkIHdoZW4gdGhlIG1vZGlmaWNhdGlvbiBpdHNlbGYgbWF0ZXJpYWxseSBhbmQNCmFkdmVyc2VseSBhZmZlY3RzIHRoZSBvcGVyYXRpb24gb2YgdGhlIG5ldHdvcmsgb3IgdmlvbGF0ZXMgdGhlIHJ1bGVzIGFuZA0KcHJvdG9jb2xzIGZvciBjb21tdW5pY2F0aW9uIGFjcm9zcyB0aGUgbmV0d29yay4NCg0KICBDb3JyZXNwb25kaW5nIFNvdXJjZSBjb252ZXllZCwgYW5kIEluc3RhbGxhdGlvbiBJbmZvcm1hdGlvbiBwcm92aWRlZCwNCmluIGFjY29yZCB3aXRoIHRoaXMgc2VjdGlvbiBtdXN0IGJlIGluIGEgZm9ybWF0IHRoYXQgaXMgcHVibGljbHkNCmRvY3VtZW50ZWQgKGFuZCB3aXRoIGFuIGltcGxlbWVudGF0aW9uIGF2YWlsYWJsZSB0byB0aGUgcHVibGljIGluDQpzb3VyY2UgY29kZSBmb3JtKSwgYW5kIG11c3QgcmVxdWlyZSBubyBzcGVjaWFsIHBhc3N3b3JkIG9yIGtleSBmb3INCnVucGFja2luZywgcmVhZGluZyBvciBjb3B5aW5nLg0KDQogIDcuIEFkZGl0aW9uYWwgVGVybXMuDQoNCiAgIkFkZGl0aW9uYWwgcGVybWlzc2lvbnMiIGFyZSB0ZXJtcyB0aGF0IHN1cHBsZW1lbnQgdGhlIHRlcm1zIG9mIHRoaXMNCkxpY2Vuc2UgYnkgbWFraW5nIGV4Y2VwdGlvbnMgZnJvbSBvbmUgb3IgbW9yZSBvZiBpdHMgY29uZGl0aW9ucy4NCkFkZGl0aW9uYWwgcGVybWlzc2lvbnMgdGhhdCBhcmUgYXBwbGljYWJsZSB0byB0aGUgZW50aXJlIFByb2dyYW0gc2hhbGwNCmJlIHRyZWF0ZWQgYXMgdGhvdWdoIHRoZXkgd2VyZSBpbmNsdWRlZCBpbiB0aGlzIExpY2Vuc2UsIHRvIHRoZSBleHRlbnQNCnRoYXQgdGhleSBhcmUgdmFsaWQgdW5kZXIgYXBwbGljYWJsZSBsYXcuICBJZiBhZGRpdGlvbmFsIHBlcm1pc3Npb25zDQphcHBseSBvbmx5IHRvIHBhcnQgb2YgdGhlIFByb2dyYW0sIHRoYXQgcGFydCBtYXkgYmUgdXNlZCBzZXBhcmF0ZWx5DQp1bmRlciB0aG9zZSBwZXJtaXNzaW9ucywgYnV0IHRoZSBlbnRpcmUgUHJvZ3JhbSByZW1haW5zIGdvdmVybmVkIGJ5DQp0aGlzIExpY2Vuc2Ugd2l0aG91dCByZWdhcmQgdG8gdGhlIGFkZGl0aW9uYWwgcGVybWlzc2lvbnMuDQoNCiAgV2hlbiB5b3UgY29udmV5IGEgY29weSBvZiBhIGNvdmVyZWQgd29yaywgeW91IG1heSBhdCB5b3VyIG9wdGlvbg0KcmVtb3ZlIGFueSBhZGRpdGlvbmFsIHBlcm1pc3Npb25zIGZyb20gdGhhdCBjb3B5LCBvciBmcm9tIGFueSBwYXJ0IG9mDQppdC4gIChBZGRpdGlvbmFsIHBlcm1pc3Npb25zIG1heSBiZSB3cml0dGVuIHRvIHJlcXVpcmUgdGhlaXIgb3duDQpyZW1vdmFsIGluIGNlcnRhaW4gY2FzZXMgd2hlbiB5b3UgbW9kaWZ5IHRoZSB3b3JrLikgIFlvdSBtYXkgcGxhY2UNCmFkZGl0aW9uYWwgcGVybWlzc2lvbnMgb24gbWF0ZXJpYWwsIGFkZGVkIGJ5IHlvdSB0byBhIGNvdmVyZWQgd29yaywNCmZvciB3aGljaCB5b3UgaGF2ZSBvciBjYW4gZ2l2ZSBhcHByb3ByaWF0ZSBjb3B5cmlnaHQgcGVybWlzc2lvbi4NCg0KICBOb3R3aXRoc3RhbmRpbmcgYW55IG90aGVyIHByb3Zpc2lvbiBvZiB0aGlzIExpY2Vuc2UsIGZvciBtYXRlcmlhbCB5b3UNCmFkZCB0byBhIGNvdmVyZWQgd29yaywgeW91IG1heSAoaWYgYXV0aG9yaXplZCBieSB0aGUgY29weXJpZ2h0IGhvbGRlcnMgb2YNCnRoYXQgbWF0ZXJpYWwpIHN1cHBsZW1lbnQgdGhlIHRlcm1zIG9mIHRoaXMgTGljZW5zZSB3aXRoIHRlcm1zOg0KDQogICAgYSkgRGlzY2xhaW1pbmcgd2FycmFudHkgb3IgbGltaXRpbmcgbGlhYmlsaXR5IGRpZmZlcmVudGx5IGZyb20gdGhlDQogICAgdGVybXMgb2Ygc2VjdGlvbnMgMTUgYW5kIDE2IG9mIHRoaXMgTGljZW5zZTsgb3INCg0KICAgIGIpIFJlcXVpcmluZyBwcmVzZXJ2YXRpb24gb2Ygc3BlY2lmaWVkIHJlYXNvbmFibGUgbGVnYWwgbm90aWNlcyBvcg0KICAgIGF1dGhvciBhdHRyaWJ1dGlvbnMgaW4gdGhhdCBtYXRlcmlhbCBvciBpbiB0aGUgQXBwcm9wcmlhdGUgTGVnYWwNCiAgICBOb3RpY2VzIGRpc3BsYXllZCBieSB3b3JrcyBjb250YWluaW5nIGl0OyBvcg0KDQogICAgYykgUHJvaGliaXRpbmcgbWlzcmVwcmVzZW50YXRpb24gb2YgdGhlIG9yaWdpbiBvZiB0aGF0IG1hdGVyaWFsLCBvcg0KICAgIHJlcXVpcmluZyB0aGF0IG1vZGlmaWVkIHZlcnNpb25zIG9mIHN1Y2ggbWF0ZXJpYWwgYmUgbWFya2VkIGluDQogICAgcmVhc29uYWJsZSB3YXlzIGFzIGRpZmZlcmVudCBmcm9tIHRoZSBvcmlnaW5hbCB2ZXJzaW9uOyBvcg0KDQogICAgZCkgTGltaXRpbmcgdGhlIHVzZSBmb3IgcHVibGljaXR5IHB1cnBvc2VzIG9mIG5hbWVzIG9mIGxpY2Vuc29ycyBvcg0KICAgIGF1dGhvcnMgb2YgdGhlIG1hdGVyaWFsOyBvcg0KDQogICAgZSkgRGVjbGluaW5nIHRvIGdyYW50IHJpZ2h0cyB1bmRlciB0cmFkZW1hcmsgbGF3IGZvciB1c2Ugb2Ygc29tZQ0KICAgIHRyYWRlIG5hbWVzLCB0cmFkZW1hcmtzLCBvciBzZXJ2aWNlIG1hcmtzOyBvcg0KDQogICAgZikgUmVxdWlyaW5nIGluZGVtbmlmaWNhdGlvbiBvZiBsaWNlbnNvcnMgYW5kIGF1dGhvcnMgb2YgdGhhdA0KICAgIG1hdGVyaWFsIGJ5IGFueW9uZSB3aG8gY29udmV5cyB0aGUgbWF0ZXJpYWwgKG9yIG1vZGlmaWVkIHZlcnNpb25zIG9mDQogICAgaXQpIHdpdGggY29udHJhY3R1YWwgYXNzdW1wdGlvbnMgb2YgbGlhYmlsaXR5IHRvIHRoZSByZWNpcGllbnQsIGZvcg0KICAgIGFueSBsaWFiaWxpdHkgdGhhdCB0aGVzZSBjb250cmFjdHVhbCBhc3N1bXB0aW9ucyBkaXJlY3RseSBpbXBvc2Ugb24NCiAgICB0aG9zZSBsaWNlbnNvcnMgYW5kIGF1dGhvcnMuDQoNCiAgQWxsIG90aGVyIG5vbi1wZXJtaXNzaXZlIGFkZGl0aW9uYWwgdGVybXMgYXJlIGNvbnNpZGVyZWQgImZ1cnRoZXINCnJlc3RyaWN0aW9ucyIgd2l0aGluIHRoZSBtZWFuaW5nIG9mIHNlY3Rpb24gMTAuICBJZiB0aGUgUHJvZ3JhbSBhcyB5b3UNCnJlY2VpdmVkIGl0LCBvciBhbnkgcGFydCBvZiBpdCwgY29udGFpbnMgYSBub3RpY2Ugc3RhdGluZyB0aGF0IGl0IGlzDQpnb3Zlcm5lZCBieSB0aGlzIExpY2Vuc2UgYWxvbmcgd2l0aCBhIHRlcm0gdGhhdCBpcyBhIGZ1cnRoZXINCnJlc3RyaWN0aW9uLCB5b3UgbWF5IHJlbW92ZSB0aGF0IHRlcm0uICBJZiBhIGxpY2Vuc2UgZG9jdW1lbnQgY29udGFpbnMNCmEgZnVydGhlciByZXN0cmljdGlvbiBidXQgcGVybWl0cyByZWxpY2Vuc2luZyBvciBjb252ZXlpbmcgdW5kZXIgdGhpcw0KTGljZW5zZSwgeW91IG1heSBhZGQgdG8gYSBjb3ZlcmVkIHdvcmsgbWF0ZXJpYWwgZ292ZXJuZWQgYnkgdGhlIHRlcm1zDQpvZiB0aGF0IGxpY2Vuc2UgZG9jdW1lbnQsIHByb3ZpZGVkIHRoYXQgdGhlIGZ1cnRoZXIgcmVzdHJpY3Rpb24gZG9lcw0Kbm90IHN1cnZpdmUgc3VjaCByZWxpY2Vuc2luZyBvciBjb252ZXlpbmcuDQoNCiAgSWYgeW91IGFkZCB0ZXJtcyB0byBhIGNvdmVyZWQgd29yayBpbiBhY2NvcmQgd2l0aCB0aGlzIHNlY3Rpb24sIHlvdQ0KbXVzdCBwbGFjZSwgaW4gdGhlIHJlbGV2YW50IHNvdXJjZSBmaWxlcywgYSBzdGF0ZW1lbnQgb2YgdGhlDQphZGRpdGlvbmFsIHRlcm1zIHRoYXQgYXBwbHkgdG8gdGhvc2UgZmlsZXMsIG9yIGEgbm90aWNlIGluZGljYXRpbmcNCndoZXJlIHRvIGZpbmQgdGhlIGFwcGxpY2FibGUgdGVybXMuDQoNCiAgQWRkaXRpb25hbCB0ZXJtcywgcGVybWlzc2l2ZSBvciBub24tcGVybWlzc2l2ZSwgbWF5IGJlIHN0YXRlZCBpbiB0aGUNCmZvcm0gb2YgYSBzZXBhcmF0ZWx5IHdyaXR0ZW4gbGljZW5zZSwgb3Igc3RhdGVkIGFzIGV4Y2VwdGlvbnM7DQp0aGUgYWJvdmUgcmVxdWlyZW1lbnRzIGFwcGx5IGVpdGhlciB3YXkuDQoNCiAgOC4gVGVybWluYXRpb24uDQoNCiAgWW91IG1heSBub3QgcHJvcGFnYXRlIG9yIG1vZGlmeSBhIGNvdmVyZWQgd29yayBleGNlcHQgYXMgZXhwcmVzc2x5DQpwcm92aWRlZCB1bmRlciB0aGlzIExpY2Vuc2UuICBBbnkgYXR0ZW1wdCBvdGhlcndpc2UgdG8gcHJvcGFnYXRlIG9yDQptb2RpZnkgaXQgaXMgdm9pZCwgYW5kIHdpbGwgYXV0b21hdGljYWxseSB0ZXJtaW5hdGUgeW91ciByaWdodHMgdW5kZXINCnRoaXMgTGljZW5zZSAoaW5jbHVkaW5nIGFueSBwYXRlbnQgbGljZW5zZXMgZ3JhbnRlZCB1bmRlciB0aGUgdGhpcmQNCnBhcmFncmFwaCBvZiBzZWN0aW9uIDExKS4NCg0KICBIb3dldmVyLCBpZiB5b3UgY2Vhc2UgYWxsIHZpb2xhdGlvbiBvZiB0aGlzIExpY2Vuc2UsIHRoZW4geW91cg0KbGljZW5zZSBmcm9tIGEgcGFydGljdWxhciBjb3B5cmlnaHQgaG9sZGVyIGlzIHJlaW5zdGF0ZWQgKGEpDQpwcm92aXNpb25hbGx5LCB1bmxlc3MgYW5kIHVudGlsIHRoZSBjb3B5cmlnaHQgaG9sZGVyIGV4cGxpY2l0bHkgYW5kDQpmaW5hbGx5IHRlcm1pbmF0ZXMgeW91ciBsaWNlbnNlLCBhbmQgKGIpIHBlcm1hbmVudGx5LCBpZiB0aGUgY29weXJpZ2h0DQpob2xkZXIgZmFpbHMgdG8gbm90aWZ5IHlvdSBvZiB0aGUgdmlvbGF0aW9uIGJ5IHNvbWUgcmVhc29uYWJsZSBtZWFucw0KcHJpb3IgdG8gNjAgZGF5cyBhZnRlciB0aGUgY2Vzc2F0aW9uLg0KDQogIE1vcmVvdmVyLCB5b3VyIGxpY2Vuc2UgZnJvbSBhIHBhcnRpY3VsYXIgY29weXJpZ2h0IGhvbGRlciBpcw0KcmVpbnN0YXRlZCBwZXJtYW5lbnRseSBpZiB0aGUgY29weXJpZ2h0IGhvbGRlciBub3RpZmllcyB5b3Ugb2YgdGhlDQp2aW9sYXRpb24gYnkgc29tZSByZWFzb25hYmxlIG1lYW5zLCB0aGlzIGlzIHRoZSBmaXJzdCB0aW1lIHlvdSBoYXZlDQpyZWNlaXZlZCBub3RpY2Ugb2YgdmlvbGF0aW9uIG9mIHRoaXMgTGljZW5zZSAoZm9yIGFueSB3b3JrKSBmcm9tIHRoYXQNCmNvcHlyaWdodCBob2xkZXIsIGFuZCB5b3UgY3VyZSB0aGUgdmlvbGF0aW9uIHByaW9yIHRvIDMwIGRheXMgYWZ0ZXINCnlvdXIgcmVjZWlwdCBvZiB0aGUgbm90aWNlLg0KDQogIFRlcm1pbmF0aW9uIG9mIHlvdXIgcmlnaHRzIHVuZGVyIHRoaXMgc2VjdGlvbiBkb2VzIG5vdCB0ZXJtaW5hdGUgdGhlDQpsaWNlbnNlcyBvZiBwYXJ0aWVzIHdobyBoYXZlIHJlY2VpdmVkIGNvcGllcyBvciByaWdodHMgZnJvbSB5b3UgdW5kZXINCnRoaXMgTGljZW5zZS4gIElmIHlvdXIgcmlnaHRzIGhhdmUgYmVlbiB0ZXJtaW5hdGVkIGFuZCBub3QgcGVybWFuZW50bHkNCnJlaW5zdGF0ZWQsIHlvdSBkbyBub3QgcXVhbGlmeSB0byByZWNlaXZlIG5ldyBsaWNlbnNlcyBmb3IgdGhlIHNhbWUNCm1hdGVyaWFsIHVuZGVyIHNlY3Rpb24gMTAuDQoNCiAgOS4gQWNjZXB0YW5jZSBOb3QgUmVxdWlyZWQgZm9yIEhhdmluZyBDb3BpZXMuDQoNCiAgWW91IGFyZSBub3QgcmVxdWlyZWQgdG8gYWNjZXB0IHRoaXMgTGljZW5zZSBpbiBvcmRlciB0byByZWNlaXZlIG9yDQpydW4gYSBjb3B5IG9mIHRoZSBQcm9ncmFtLiAgQW5jaWxsYXJ5IHByb3BhZ2F0aW9uIG9mIGEgY292ZXJlZCB3b3JrDQpvY2N1cnJpbmcgc29sZWx5IGFzIGEgY29uc2VxdWVuY2Ugb2YgdXNpbmcgcGVlci10by1wZWVyIHRyYW5zbWlzc2lvbg0KdG8gcmVjZWl2ZSBhIGNvcHkgbGlrZXdpc2UgZG9lcyBub3QgcmVxdWlyZSBhY2NlcHRhbmNlLiAgSG93ZXZlciwNCm5vdGhpbmcgb3RoZXIgdGhhbiB0aGlzIExpY2Vuc2UgZ3JhbnRzIHlvdSBwZXJtaXNzaW9uIHRvIHByb3BhZ2F0ZSBvcg0KbW9kaWZ5IGFueSBjb3ZlcmVkIHdvcmsuICBUaGVzZSBhY3Rpb25zIGluZnJpbmdlIGNvcHlyaWdodCBpZiB5b3UgZG8NCm5vdCBhY2NlcHQgdGhpcyBMaWNlbnNlLiAgVGhlcmVmb3JlLCBieSBtb2RpZnlpbmcgb3IgcHJvcGFnYXRpbmcgYQ0KY292ZXJlZCB3b3JrLCB5b3UgaW5kaWNhdGUgeW91ciBhY2NlcHRhbmNlIG9mIHRoaXMgTGljZW5zZSB0byBkbyBzby4NCg0KICAxMC4gQXV0b21hdGljIExpY2Vuc2luZyBvZiBEb3duc3RyZWFtIFJlY2lwaWVudHMuDQoNCiAgRWFjaCB0aW1lIHlvdSBjb252ZXkgYSBjb3ZlcmVkIHdvcmssIHRoZSByZWNpcGllbnQgYXV0b21hdGljYWxseQ0KcmVjZWl2ZXMgYSBsaWNlbnNlIGZyb20gdGhlIG9yaWdpbmFsIGxpY2Vuc29ycywgdG8gcnVuLCBtb2RpZnkgYW5kDQpwcm9wYWdhdGUgdGhhdCB3b3JrLCBzdWJqZWN0IHRvIHRoaXMgTGljZW5zZS4gIFlvdSBhcmUgbm90IHJlc3BvbnNpYmxlDQpmb3IgZW5mb3JjaW5nIGNvbXBsaWFuY2UgYnkgdGhpcmQgcGFydGllcyB3aXRoIHRoaXMgTGljZW5zZS4NCg0KICBBbiAiZW50aXR5IHRyYW5zYWN0aW9uIiBpcyBhIHRyYW5zYWN0aW9uIHRyYW5zZmVycmluZyBjb250cm9sIG9mIGFuDQpvcmdhbml6YXRpb24sIG9yIHN1YnN0YW50aWFsbHkgYWxsIGFzc2V0cyBvZiBvbmUsIG9yIHN1YmRpdmlkaW5nIGFuDQpvcmdhbml6YXRpb24sIG9yIG1lcmdpbmcgb3JnYW5pemF0aW9ucy4gIElmIHByb3BhZ2F0aW9uIG9mIGEgY292ZXJlZA0Kd29yayByZXN1bHRzIGZyb20gYW4gZW50aXR5IHRyYW5zYWN0aW9uLCBlYWNoIHBhcnR5IHRvIHRoYXQNCnRyYW5zYWN0aW9uIHdobyByZWNlaXZlcyBhIGNvcHkgb2YgdGhlIHdvcmsgYWxzbyByZWNlaXZlcyB3aGF0ZXZlcg0KbGljZW5zZXMgdG8gdGhlIHdvcmsgdGhlIHBhcnR5J3MgcHJlZGVjZXNzb3IgaW4gaW50ZXJlc3QgaGFkIG9yIGNvdWxkDQpnaXZlIHVuZGVyIHRoZSBwcmV2aW91cyBwYXJhZ3JhcGgsIHBsdXMgYSByaWdodCB0byBwb3NzZXNzaW9uIG9mIHRoZQ0KQ29ycmVzcG9uZGluZyBTb3VyY2Ugb2YgdGhlIHdvcmsgZnJvbSB0aGUgcHJlZGVjZXNzb3IgaW4gaW50ZXJlc3QsIGlmDQp0aGUgcHJlZGVjZXNzb3IgaGFzIGl0IG9yIGNhbiBnZXQgaXQgd2l0aCByZWFzb25hYmxlIGVmZm9ydHMuDQoNCiAgWW91IG1heSBub3QgaW1wb3NlIGFueSBmdXJ0aGVyIHJlc3RyaWN0aW9ucyBvbiB0aGUgZXhlcmNpc2Ugb2YgdGhlDQpyaWdodHMgZ3JhbnRlZCBvciBhZmZpcm1lZCB1bmRlciB0aGlzIExpY2Vuc2UuICBGb3IgZXhhbXBsZSwgeW91IG1heQ0Kbm90IGltcG9zZSBhIGxpY2Vuc2UgZmVlLCByb3lhbHR5LCBvciBvdGhlciBjaGFyZ2UgZm9yIGV4ZXJjaXNlIG9mDQpyaWdodHMgZ3JhbnRlZCB1bmRlciB0aGlzIExpY2Vuc2UsIGFuZCB5b3UgbWF5IG5vdCBpbml0aWF0ZSBsaXRpZ2F0aW9uDQooaW5jbHVkaW5nIGEgY3Jvc3MtY2xhaW0gb3IgY291bnRlcmNsYWltIGluIGEgbGF3c3VpdCkgYWxsZWdpbmcgdGhhdA0KYW55IHBhdGVudCBjbGFpbSBpcyBpbmZyaW5nZWQgYnkgbWFraW5nLCB1c2luZywgc2VsbGluZywgb2ZmZXJpbmcgZm9yDQpzYWxlLCBvciBpbXBvcnRpbmcgdGhlIFByb2dyYW0gb3IgYW55IHBvcnRpb24gb2YgaXQuDQoNCiAgMTEuIFBhdGVudHMuDQoNCiAgQSAiY29udHJpYnV0b3IiIGlzIGEgY29weXJpZ2h0IGhvbGRlciB3aG8gYXV0aG9yaXplcyB1c2UgdW5kZXIgdGhpcw0KTGljZW5zZSBvZiB0aGUgUHJvZ3JhbSBvciBhIHdvcmsgb24gd2hpY2ggdGhlIFByb2dyYW0gaXMgYmFzZWQuICBUaGUNCndvcmsgdGh1cyBsaWNlbnNlZCBpcyBjYWxsZWQgdGhlIGNvbnRyaWJ1dG9yJ3MgImNvbnRyaWJ1dG9yIHZlcnNpb24iLg0KDQogIEEgY29udHJpYnV0b3IncyAiZXNzZW50aWFsIHBhdGVudCBjbGFpbXMiIGFyZSBhbGwgcGF0ZW50IGNsYWltcw0Kb3duZWQgb3IgY29udHJvbGxlZCBieSB0aGUgY29udHJpYnV0b3IsIHdoZXRoZXIgYWxyZWFkeSBhY3F1aXJlZCBvcg0KaGVyZWFmdGVyIGFjcXVpcmVkLCB0aGF0IHdvdWxkIGJlIGluZnJpbmdlZCBieSBzb21lIG1hbm5lciwgcGVybWl0dGVkDQpieSB0aGlzIExpY2Vuc2UsIG9mIG1ha2luZywgdXNpbmcsIG9yIHNlbGxpbmcgaXRzIGNvbnRyaWJ1dG9yIHZlcnNpb24sDQpidXQgZG8gbm90IGluY2x1ZGUgY2xhaW1zIHRoYXQgd291bGQgYmUgaW5mcmluZ2VkIG9ubHkgYXMgYQ0KY29uc2VxdWVuY2Ugb2YgZnVydGhlciBtb2RpZmljYXRpb24gb2YgdGhlIGNvbnRyaWJ1dG9yIHZlcnNpb24uICBGb3INCnB1cnBvc2VzIG9mIHRoaXMgZGVmaW5pdGlvbiwgImNvbnRyb2wiIGluY2x1ZGVzIHRoZSByaWdodCB0byBncmFudA0KcGF0ZW50IHN1YmxpY2Vuc2VzIGluIGEgbWFubmVyIGNvbnNpc3RlbnQgd2l0aCB0aGUgcmVxdWlyZW1lbnRzIG9mDQp0aGlzIExpY2Vuc2UuDQoNCiAgRWFjaCBjb250cmlidXRvciBncmFudHMgeW91IGEgbm9uLWV4Y2x1c2l2ZSwgd29ybGR3aWRlLCByb3lhbHR5LWZyZWUNCnBhdGVudCBsaWNlbnNlIHVuZGVyIHRoZSBjb250cmlidXRvcidzIGVzc2VudGlhbCBwYXRlbnQgY2xhaW1zLCB0bw0KbWFrZSwgdXNlLCBzZWxsLCBvZmZlciBmb3Igc2FsZSwgaW1wb3J0IGFuZCBvdGhlcndpc2UgcnVuLCBtb2RpZnkgYW5kDQpwcm9wYWdhdGUgdGhlIGNvbnRlbnRzIG9mIGl0cyBjb250cmlidXRvciB2ZXJzaW9uLg0KDQogIEluIHRoZSBmb2xsb3dpbmcgdGhyZWUgcGFyYWdyYXBocywgYSAicGF0ZW50IGxpY2Vuc2UiIGlzIGFueSBleHByZXNzDQphZ3JlZW1lbnQgb3IgY29tbWl0bWVudCwgaG93ZXZlciBkZW5vbWluYXRlZCwgbm90IHRvIGVuZm9yY2UgYSBwYXRlbnQNCihzdWNoIGFzIGFuIGV4cHJlc3MgcGVybWlzc2lvbiB0byBwcmFjdGljZSBhIHBhdGVudCBvciBjb3ZlbmFudCBub3QgdG8NCnN1ZSBmb3IgcGF0ZW50IGluZnJpbmdlbWVudCkuICBUbyAiZ3JhbnQiIHN1Y2ggYSBwYXRlbnQgbGljZW5zZSB0byBhDQpwYXJ0eSBtZWFucyB0byBtYWtlIHN1Y2ggYW4gYWdyZWVtZW50IG9yIGNvbW1pdG1lbnQgbm90IHRvIGVuZm9yY2UgYQ0KcGF0ZW50IGFnYWluc3QgdGhlIHBhcnR5Lg0KDQogIElmIHlvdSBjb252ZXkgYSBjb3ZlcmVkIHdvcmssIGtub3dpbmdseSByZWx5aW5nIG9uIGEgcGF0ZW50IGxpY2Vuc2UsDQphbmQgdGhlIENvcnJlc3BvbmRpbmcgU291cmNlIG9mIHRoZSB3b3JrIGlzIG5vdCBhdmFpbGFibGUgZm9yIGFueW9uZQ0KdG8gY29weSwgZnJlZSBvZiBjaGFyZ2UgYW5kIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGlzIExpY2Vuc2UsIHRocm91Z2ggYQ0KcHVibGljbHkgYXZhaWxhYmxlIG5ldHdvcmsgc2VydmVyIG9yIG90aGVyIHJlYWRpbHkgYWNjZXNzaWJsZSBtZWFucywNCnRoZW4geW91IG11c3QgZWl0aGVyICgxKSBjYXVzZSB0aGUgQ29ycmVzcG9uZGluZyBTb3VyY2UgdG8gYmUgc28NCmF2YWlsYWJsZSwgb3IgKDIpIGFycmFuZ2UgdG8gZGVwcml2ZSB5b3Vyc2VsZiBvZiB0aGUgYmVuZWZpdCBvZiB0aGUNCnBhdGVudCBsaWNlbnNlIGZvciB0aGlzIHBhcnRpY3VsYXIgd29yaywgb3IgKDMpIGFycmFuZ2UsIGluIGEgbWFubmVyDQpjb25zaXN0ZW50IHdpdGggdGhlIHJlcXVpcmVtZW50cyBvZiB0aGlzIExpY2Vuc2UsIHRvIGV4dGVuZCB0aGUgcGF0ZW50DQpsaWNlbnNlIHRvIGRvd25zdHJlYW0gcmVjaXBpZW50cy4gICJLbm93aW5nbHkgcmVseWluZyIgbWVhbnMgeW91IGhhdmUNCmFjdHVhbCBrbm93bGVkZ2UgdGhhdCwgYnV0IGZvciB0aGUgcGF0ZW50IGxpY2Vuc2UsIHlvdXIgY29udmV5aW5nIHRoZQ0KY292ZXJlZCB3b3JrIGluIGEgY291bnRyeSwgb3IgeW91ciByZWNpcGllbnQncyB1c2Ugb2YgdGhlIGNvdmVyZWQgd29yaw0KaW4gYSBjb3VudHJ5LCB3b3VsZCBpbmZyaW5nZSBvbmUgb3IgbW9yZSBpZGVudGlmaWFibGUgcGF0ZW50cyBpbiB0aGF0DQpjb3VudHJ5IHRoYXQgeW91IGhhdmUgcmVhc29uIHRvIGJlbGlldmUgYXJlIHZhbGlkLg0KDQogIElmLCBwdXJzdWFudCB0byBvciBpbiBjb25uZWN0aW9uIHdpdGggYSBzaW5nbGUgdHJhbnNhY3Rpb24gb3INCmFycmFuZ2VtZW50LCB5b3UgY29udmV5LCBvciBwcm9wYWdhdGUgYnkgcHJvY3VyaW5nIGNvbnZleWFuY2Ugb2YsIGENCmNvdmVyZWQgd29yaywgYW5kIGdyYW50IGEgcGF0ZW50IGxpY2Vuc2UgdG8gc29tZSBvZiB0aGUgcGFydGllcw0KcmVjZWl2aW5nIHRoZSBjb3ZlcmVkIHdvcmsgYXV0aG9yaXppbmcgdGhlbSB0byB1c2UsIHByb3BhZ2F0ZSwgbW9kaWZ5DQpvciBjb252ZXkgYSBzcGVjaWZpYyBjb3B5IG9mIHRoZSBjb3ZlcmVkIHdvcmssIHRoZW4gdGhlIHBhdGVudCBsaWNlbnNlDQp5b3UgZ3JhbnQgaXMgYXV0b21hdGljYWxseSBleHRlbmRlZCB0byBhbGwgcmVjaXBpZW50cyBvZiB0aGUgY292ZXJlZA0Kd29yayBhbmQgd29ya3MgYmFzZWQgb24gaXQuDQoNCiAgQSBwYXRlbnQgbGljZW5zZSBpcyAiZGlzY3JpbWluYXRvcnkiIGlmIGl0IGRvZXMgbm90IGluY2x1ZGUgd2l0aGluDQp0aGUgc2NvcGUgb2YgaXRzIGNvdmVyYWdlLCBwcm9oaWJpdHMgdGhlIGV4ZXJjaXNlIG9mLCBvciBpcw0KY29uZGl0aW9uZWQgb24gdGhlIG5vbi1leGVyY2lzZSBvZiBvbmUgb3IgbW9yZSBvZiB0aGUgcmlnaHRzIHRoYXQgYXJlDQpzcGVjaWZpY2FsbHkgZ3JhbnRlZCB1bmRlciB0aGlzIExpY2Vuc2UuICBZb3UgbWF5IG5vdCBjb252ZXkgYSBjb3ZlcmVkDQp3b3JrIGlmIHlvdSBhcmUgYSBwYXJ0eSB0byBhbiBhcnJhbmdlbWVudCB3aXRoIGEgdGhpcmQgcGFydHkgdGhhdCBpcw0KaW4gdGhlIGJ1c2luZXNzIG9mIGRpc3RyaWJ1dGluZyBzb2Z0d2FyZSwgdW5kZXIgd2hpY2ggeW91IG1ha2UgcGF5bWVudA0KdG8gdGhlIHRoaXJkIHBhcnR5IGJhc2VkIG9uIHRoZSBleHRlbnQgb2YgeW91ciBhY3Rpdml0eSBvZiBjb252ZXlpbmcNCnRoZSB3b3JrLCBhbmQgdW5kZXIgd2hpY2ggdGhlIHRoaXJkIHBhcnR5IGdyYW50cywgdG8gYW55IG9mIHRoZQ0KcGFydGllcyB3aG8gd291bGQgcmVjZWl2ZSB0aGUgY292ZXJlZCB3b3JrIGZyb20geW91LCBhIGRpc2NyaW1pbmF0b3J5DQpwYXRlbnQgbGljZW5zZSAoYSkgaW4gY29ubmVjdGlvbiB3aXRoIGNvcGllcyBvZiB0aGUgY292ZXJlZCB3b3JrDQpjb252ZXllZCBieSB5b3UgKG9yIGNvcGllcyBtYWRlIGZyb20gdGhvc2UgY29waWVzKSwgb3IgKGIpIHByaW1hcmlseQ0KZm9yIGFuZCBpbiBjb25uZWN0aW9uIHdpdGggc3BlY2lmaWMgcHJvZHVjdHMgb3IgY29tcGlsYXRpb25zIHRoYXQNCmNvbnRhaW4gdGhlIGNvdmVyZWQgd29yaywgdW5sZXNzIHlvdSBlbnRlcmVkIGludG8gdGhhdCBhcnJhbmdlbWVudCwNCm9yIHRoYXQgcGF0ZW50IGxpY2Vuc2Ugd2FzIGdyYW50ZWQsIHByaW9yIHRvIDI4IE1hcmNoIDIwMDcuDQoNCiAgTm90aGluZyBpbiB0aGlzIExpY2Vuc2Ugc2hhbGwgYmUgY29uc3RydWVkIGFzIGV4Y2x1ZGluZyBvciBsaW1pdGluZw0KYW55IGltcGxpZWQgbGljZW5zZSBvciBvdGhlciBkZWZlbnNlcyB0byBpbmZyaW5nZW1lbnQgdGhhdCBtYXkNCm90aGVyd2lzZSBiZSBhdmFpbGFibGUgdG8geW91IHVuZGVyIGFwcGxpY2FibGUgcGF0ZW50IGxhdy4NCg0KICAxMi4gTm8gU3VycmVuZGVyIG9mIE90aGVycycgRnJlZWRvbS4NCg0KICBJZiBjb25kaXRpb25zIGFyZSBpbXBvc2VkIG9uIHlvdSAod2hldGhlciBieSBjb3VydCBvcmRlciwgYWdyZWVtZW50IG9yDQpvdGhlcndpc2UpIHRoYXQgY29udHJhZGljdCB0aGUgY29uZGl0aW9ucyBvZiB0aGlzIExpY2Vuc2UsIHRoZXkgZG8gbm90DQpleGN1c2UgeW91IGZyb20gdGhlIGNvbmRpdGlvbnMgb2YgdGhpcyBMaWNlbnNlLiAgSWYgeW91IGNhbm5vdCBjb252ZXkgYQ0KY292ZXJlZCB3b3JrIHNvIGFzIHRvIHNhdGlzZnkgc2ltdWx0YW5lb3VzbHkgeW91ciBvYmxpZ2F0aW9ucyB1bmRlciB0aGlzDQpMaWNlbnNlIGFuZCBhbnkgb3RoZXIgcGVydGluZW50IG9ibGlnYXRpb25zLCB0aGVuIGFzIGEgY29uc2VxdWVuY2UgeW91IG1heQ0Kbm90IGNvbnZleSBpdCBhdCBhbGwuICBGb3IgZXhhbXBsZSwgaWYgeW91IGFncmVlIHRvIHRlcm1zIHRoYXQgb2JsaWdhdGUgeW91DQp0byBjb2xsZWN0IGEgcm95YWx0eSBmb3IgZnVydGhlciBjb252ZXlpbmcgZnJvbSB0aG9zZSB0byB3aG9tIHlvdSBjb252ZXkNCnRoZSBQcm9ncmFtLCB0aGUgb25seSB3YXkgeW91IGNvdWxkIHNhdGlzZnkgYm90aCB0aG9zZSB0ZXJtcyBhbmQgdGhpcw0KTGljZW5zZSB3b3VsZCBiZSB0byByZWZyYWluIGVudGlyZWx5IGZyb20gY29udmV5aW5nIHRoZSBQcm9ncmFtLg0KDQogIDEzLiBVc2Ugd2l0aCB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLg0KDQogIE5vdHdpdGhzdGFuZGluZyBhbnkgb3RoZXIgcHJvdmlzaW9uIG9mIHRoaXMgTGljZW5zZSwgeW91IGhhdmUNCnBlcm1pc3Npb24gdG8gbGluayBvciBjb21iaW5lIGFueSBjb3ZlcmVkIHdvcmsgd2l0aCBhIHdvcmsgbGljZW5zZWQNCnVuZGVyIHZlcnNpb24gMyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGludG8gYSBzaW5nbGUNCmNvbWJpbmVkIHdvcmssIGFuZCB0byBjb252ZXkgdGhlIHJlc3VsdGluZyB3b3JrLiAgVGhlIHRlcm1zIG9mIHRoaXMNCkxpY2Vuc2Ugd2lsbCBjb250aW51ZSB0byBhcHBseSB0byB0aGUgcGFydCB3aGljaCBpcyB0aGUgY292ZXJlZCB3b3JrLA0KYnV0IHRoZSBzcGVjaWFsIHJlcXVpcmVtZW50cyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLA0Kc2VjdGlvbiAxMywgY29uY2VybmluZyBpbnRlcmFjdGlvbiB0aHJvdWdoIGEgbmV0d29yayB3aWxsIGFwcGx5IHRvIHRoZQ0KY29tYmluYXRpb24gYXMgc3VjaC4NCg0KICAxNC4gUmV2aXNlZCBWZXJzaW9ucyBvZiB0aGlzIExpY2Vuc2UuDQoNCiAgVGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiBtYXkgcHVibGlzaCByZXZpc2VkIGFuZC9vciBuZXcgdmVyc2lvbnMgb2YNCnRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmcm9tIHRpbWUgdG8gdGltZS4gIFN1Y2ggbmV3IHZlcnNpb25zIHdpbGwNCmJlIHNpbWlsYXIgaW4gc3Bpcml0IHRvIHRoZSBwcmVzZW50IHZlcnNpb24sIGJ1dCBtYXkgZGlmZmVyIGluIGRldGFpbCB0bw0KYWRkcmVzcyBuZXcgcHJvYmxlbXMgb3IgY29uY2VybnMuDQoNCiAgRWFjaCB2ZXJzaW9uIGlzIGdpdmVuIGEgZGlzdGluZ3Vpc2hpbmcgdmVyc2lvbiBudW1iZXIuICBJZiB0aGUNClByb2dyYW0gc3BlY2lmaWVzIHRoYXQgYSBjZXJ0YWluIG51bWJlcmVkIHZlcnNpb24gb2YgdGhlIEdOVSBHZW5lcmFsDQpQdWJsaWMgTGljZW5zZSAib3IgYW55IGxhdGVyIHZlcnNpb24iIGFwcGxpZXMgdG8gaXQsIHlvdSBoYXZlIHRoZQ0Kb3B0aW9uIG9mIGZvbGxvd2luZyB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgZWl0aGVyIG9mIHRoYXQgbnVtYmVyZWQNCnZlcnNpb24gb3Igb2YgYW55IGxhdGVyIHZlcnNpb24gcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlDQpGb3VuZGF0aW9uLiAgSWYgdGhlIFByb2dyYW0gZG9lcyBub3Qgc3BlY2lmeSBhIHZlcnNpb24gbnVtYmVyIG9mIHRoZQ0KR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UsIHlvdSBtYXkgY2hvb3NlIGFueSB2ZXJzaW9uIGV2ZXIgcHVibGlzaGVkDQpieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLg0KDQogIElmIHRoZSBQcm9ncmFtIHNwZWNpZmllcyB0aGF0IGEgcHJveHkgY2FuIGRlY2lkZSB3aGljaCBmdXR1cmUNCnZlcnNpb25zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBjYW4gYmUgdXNlZCwgdGhhdCBwcm94eSdzDQpwdWJsaWMgc3RhdGVtZW50IG9mIGFjY2VwdGFuY2Ugb2YgYSB2ZXJzaW9uIHBlcm1hbmVudGx5IGF1dGhvcml6ZXMgeW91DQp0byBjaG9vc2UgdGhhdCB2ZXJzaW9uIGZvciB0aGUgUHJvZ3JhbS4NCg0KICBMYXRlciBsaWNlbnNlIHZlcnNpb25zIG1heSBnaXZlIHlvdSBhZGRpdGlvbmFsIG9yIGRpZmZlcmVudA0KcGVybWlzc2lvbnMuICBIb3dldmVyLCBubyBhZGRpdGlvbmFsIG9ibGlnYXRpb25zIGFyZSBpbXBvc2VkIG9uIGFueQ0KYXV0aG9yIG9yIGNvcHlyaWdodCBob2xkZXIgYXMgYSByZXN1bHQgb2YgeW91ciBjaG9vc2luZyB0byBmb2xsb3cgYQ0KbGF0ZXIgdmVyc2lvbi4NCg0KICAxNS4gRGlzY2xhaW1lciBvZiBXYXJyYW50eS4NCg0KICBUSEVSRSBJUyBOTyBXQVJSQU5UWSBGT1IgVEhFIFBST0dSQU0sIFRPIFRIRSBFWFRFTlQgUEVSTUlUVEVEIEJZDQpBUFBMSUNBQkxFIExBVy4gIEVYQ0VQVCBXSEVOIE9USEVSV0lTRSBTVEFURUQgSU4gV1JJVElORyBUSEUgQ09QWVJJR0hUDQpIT0xERVJTIEFORC9PUiBPVEhFUiBQQVJUSUVTIFBST1ZJREUgVEhFIFBST0dSQU0gIkFTIElTIiBXSVRIT1VUIFdBUlJBTlRZDQpPRiBBTlkgS0lORCwgRUlUSEVSIEVYUFJFU1NFRCBPUiBJTVBMSUVELCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywNClRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVINClBVUlBPU0UuICBUSEUgRU5USVJFIFJJU0sgQVMgVE8gVEhFIFFVQUxJVFkgQU5EIFBFUkZPUk1BTkNFIE9GIFRIRSBQUk9HUkFNDQpJUyBXSVRIIFlPVS4gIFNIT1VMRCBUSEUgUFJPR1JBTSBQUk9WRSBERUZFQ1RJVkUsIFlPVSBBU1NVTUUgVEhFIENPU1QgT0YNCkFMTCBORUNFU1NBUlkgU0VSVklDSU5HLCBSRVBBSVIgT1IgQ09SUkVDVElPTi4NCg0KICAxNi4gTGltaXRhdGlvbiBvZiBMaWFiaWxpdHkuDQoNCiAgSU4gTk8gRVZFTlQgVU5MRVNTIFJFUVVJUkVEIEJZIEFQUExJQ0FCTEUgTEFXIE9SIEFHUkVFRCBUTyBJTiBXUklUSU5HDQpXSUxMIEFOWSBDT1BZUklHSFQgSE9MREVSLCBPUiBBTlkgT1RIRVIgUEFSVFkgV0hPIE1PRElGSUVTIEFORC9PUiBDT05WRVlTDQpUSEUgUFJPR1JBTSBBUyBQRVJNSVRURUQgQUJPVkUsIEJFIExJQUJMRSBUTyBZT1UgRk9SIERBTUFHRVMsIElOQ0xVRElORyBBTlkNCkdFTkVSQUwsIFNQRUNJQUwsIElOQ0lERU5UQUwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIEFSSVNJTkcgT1VUIE9GIFRIRQ0KVVNFIE9SIElOQUJJTElUWSBUTyBVU0UgVEhFIFBST0dSQU0gKElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gTE9TUyBPRg0KREFUQSBPUiBEQVRBIEJFSU5HIFJFTkRFUkVEIElOQUNDVVJBVEUgT1IgTE9TU0VTIFNVU1RBSU5FRCBCWSBZT1UgT1IgVEhJUkQNClBBUlRJRVMgT1IgQSBGQUlMVVJFIE9GIFRIRSBQUk9HUkFNIFRPIE9QRVJBVEUgV0lUSCBBTlkgT1RIRVIgUFJPR1JBTVMpLA0KRVZFTiBJRiBTVUNIIEhPTERFUiBPUiBPVEhFUiBQQVJUWSBIQVMgQkVFTiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRg0KU1VDSCBEQU1BR0VTLg0KDQogIDE3LiBJbnRlcnByZXRhdGlvbiBvZiBTZWN0aW9ucyAxNSBhbmQgMTYuDQoNCiAgSWYgdGhlIGRpc2NsYWltZXIgb2Ygd2FycmFudHkgYW5kIGxpbWl0YXRpb24gb2YgbGlhYmlsaXR5IHByb3ZpZGVkDQphYm92ZSBjYW5ub3QgYmUgZ2l2ZW4gbG9jYWwgbGVnYWwgZWZmZWN0IGFjY29yZGluZyB0byB0aGVpciB0ZXJtcywNCnJldmlld2luZyBjb3VydHMgc2hhbGwgYXBwbHkgbG9jYWwgbGF3IHRoYXQgbW9zdCBjbG9zZWx5IGFwcHJveGltYXRlcw0KYW4gYWJzb2x1dGUgd2FpdmVyIG9mIGFsbCBjaXZpbCBsaWFiaWxpdHkgaW4gY29ubmVjdGlvbiB3aXRoIHRoZQ0KUHJvZ3JhbSwgdW5sZXNzIGEgd2FycmFudHkgb3IgYXNzdW1wdGlvbiBvZiBsaWFiaWxpdHkgYWNjb21wYW5pZXMgYQ0KY29weSBvZiB0aGUgUHJvZ3JhbSBpbiByZXR1cm4gZm9yIGEgZmVlLg0KDQogICAgICAgICAgICAgICAgICAgICBFTkQgT0YgVEVSTVMgQU5EIENPTkRJVElPTlM=]]></data>
	</file>
	<file>
	  <filename>/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBEVU1NWSBIVE1MIEZJTEUgLS0+]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQokbGFuZ1snZnJpZW5kbHluYW1lJ10gPSAnV2lkZ2V0cyc7DQokbGFuZ1snYWRtaW5kZXNjcmlwdGlvbiddID0gJ0EgbW9kdWxlIGZvciBtYW5hZ2luZyBhbmQgZGlzcGxheWluZyBXaWRnZXRzIC0gYmxvY2tzIG9mIGNvbnRlbnQgdGhhdCBjYW4gYmUgYWRkZWQgdG8gbWFueSBwYWdlcyc7DQokbGFuZ1snYXNrX3VuaW5zdGFsbCddID0gJ0FyZSB5b3Ugc3VyZSB5b3Ugd2FudCB0byB1bmluc3RhbGwgdGhlIFdpZGdldHMgbW9kdWxlPyBBbGwgd2lkZ2V0DQpkYXRhIHdpbGwgYmUgcGVybWFuZW50bHkgZGVsZXRlZC4nOw0KDQokbGFuZ1snYWRkX3dpZGdldCddID0gJ0NyZWF0ZSBOZXcgV2lkZ2V0JzsNCiRsYW5nWydlZGl0X3dpZGdldCddID0gJ0VkaXQgV2lkZ2V0JzsNCg0KJGxhbmdbJ3dpZGdldF9zYXZlZCddID0gJ1RoaXMgd2lkZ2V0IGlzIG5vdyBzYXZlZCc7DQokbGFuZ1snd2lkZ2V0X25vdHNhdmVkJ10gPSAnVGhpcyB3aWRnZXQgZGlkIG5vdCBzYXZlJzsNCiRsYW5nWydzdWJtaXQnXSA9ICdTdWJtaXQnOw0KJGxhbmdbJ2NhbmNlbCddID0gJ0NhbmNlbCc7DQokbGFuZ1snbmFtZSddID0gJ05hbWUnOw0KJGxhbmdbJ2RhdGUnXSA9ICdEYXRlJzsNCiRsYW5nWydwdWJsaXNoZWQnXSA9ICdQdWJsaXNoZWQnOw0KJGxhbmdbJ2Rlc2NyaXB0aW9uJ10gPSAnRGVzY3JpcHRpb24nOw0KDQokbGFuZ1snZWRpdCddID0gJ0VkaXQgdGhpcyc7DQoNCiRsYW5nWydkZWxldGUnXSA9ICdEZWxldGUgdGhpcyc7DQokbGFuZ1snY29uZmlybV9kZWxldGUnXSA9ICdBcmUgeW91IHN1cmUgdGhhdCB5b3Ugd2FudCB0byBkZWxldGUgdGhpcyBXaWRnZXQnOw0KJGxhbmdbJ3dpZGdldF9kZWxldGVkJ10gPSAnVGhpcyB3aWRnZXQgaXMgbm93IGRlbGV0ZWQnOw0KDQokbGFuZ1snc29ycnlfbm93aWRnZXRzJ10gPSAnU29ycnksIHdlIGNvdWxkIG5vdCBmaW5kIGFueSB3aWRnZXRzIHRoYXQgbWF0Y2ggdGhlIHNwZWNpZmllZCBjcml0ZXJpYSc7DQoNCiRsYW5nWyd3aWRnZXRfZGV0YWlsJ10gPSAnd2lkZ2V0IERldGFpbCc7DQokbGFuZ1snZXJyb3Jfbm90Zm91bmQnXSA9ICdUaGUgd2lkZ2V0IHNwZWNpZmllZCBjb3VsZCBub3QgYmUgZGlzcGxheWVkJzsNCiRsYW5nWydwYXJhbV93aWQnXSA9ICdTcGVjaWZ5IGFuIGlkIChpbnRlZ2VyKSBvZiBhIHdpZGdldCB0byBkaXNwbGF5JzsNCiRsYW5nWydwYXJhbV90ZW1wbGF0ZSddID0gJ1NwZWNpZnkgdGhlIG5hbWUgb2YgdGhlIFdpZGdldCB0ZW1wbGF0ZSB0byB1c2UuJzsNCiRsYW5nWydwYXJhbV9jYXRlZ29yeSddID0gJ1NwZWNpZnkgYW4gYWxpYXMgb2YgdGhlIGNhdGVnb3J5IGRpc3BsYXllZCBpdGVtcyBtdXN0IGJlIGEgbWVtYmVyIG9mLic7DQokbGFuZ1sncGFyYW1faXRlbXMnXSA9ICdTcGVjaWZ5IGFuIGFsaWFzIG9yIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIFdpZGdldCBhbGlhc2VzIHRvIGJlIGRpc3BsYXllZC4nOw0KDQokbGFuZ1sncHJldmlldyddID0gJ1ByZXZpZXcnOw0KDQokbGFuZ1snbmVlZF9wZXJtaXNzaW9uJ10gPSAnWW91IG5lZWQgcGVybWlzc2lvbiB0byB1c2UgdGhpcyBtb2R1bGUnOw0KDQokbGFuZ1sndGFiX3dpZGdldHMnXSA9ICdXaWRnZXRzJzsNCiRsYW5nWyd0YWJfY2F0ZWdvcmllcyddID0gJ0NhdGVnb3JpZXMnOw0KJGxhbmdbJ3RhYl9vcHRpb25zJ10gPSAnT3B0aW9ucyc7DQoNCiRsYW5nWyd0aXRsZV9jdXN0b21Nb2R1bGVOYW1lJ10gPSAnQ3VzdG9tIE1vZHVsZSBOYW1lJzsNCiRsYW5nWyd0aXRsZV9hZG1pblNlY3Rpb24nXSA9ICdNb2R1bGUgQWRtaW4gU2VjdGlvbic7DQokbGFuZ1sndGl0bGVfd2lkZ2V0U3R5bGVPcHRpb25zJ10gPSAnV2lkZ2V0IFN0eWxlIE9wdGlvbnMnOw0KJGxhbmdbJ2hlbHBfd2lkZ2V0U3R5bGVPcHRpb25zJ10gPSAnQ1NTIGNsYXNzZXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQgZm9yIGVhY2ggV2lkZ2V0Lg0KICAgRWFjaCBvcHRpb24gaXMgc2VwYXJhdGVkIGJ5IGEgbGluZSBicmVha3MuIERlc2NyaXB0aW9ucyBjYW4gYmUgc2VwYXJhdGVkIGZyb20gQ1NTIGNsYXNzIHdpdGggYSA9IGNoYXJhY3Rlci4gRm9yIGV4YW1wbGU6IEhpZGUgb24gUGhvbmVzPWhpZGRlbi14cyc7DQoNCiRsYW5nWydzZXR0aW5nc19zYXZlZCddID0gJ1lvdXIgY2hhbmdlcyBoYXZlIGJlZW4gc3VjY2Vzc2Z1bGx5IHNhdmVkLic7DQoNCg0KJGxhbmdbJ3RpdGxlX3RpdGxlJ10gPSAnVGl0bGUnOw0KJGxhbmdbJ3RpdGxlX2FsaWFzJ10gPSAnQWxpYXMnOw0KJGxhbmdbJ3RpdGxlX2NhdGVnb3J5J10gPSAnQ2F0ZWdvcnknOw0KJGxhbmdbJ3RpdGxlX2FjdGl2ZSddID0gJ0FjdGl2ZSc7DQokbGFuZ1sndGl0bGVfaGVhZGluZyddID0gJ0hlYWRpbmcnOw0KJGxhbmdbJ3RpdGxlX2NvbnRlbnQnXSA9ICdDb250ZW50JzsNCiRsYW5nWyd0aXRsZV9saW5rX3RvJ10gPSAnTGluayBUbyc7DQokbGFuZ1sndGl0bGVfbGlua190ZXh0J10gPSAnTGluayBUZXh0JzsNCiRsYW5nWyd0aXRsZV9zdHlsZV9vcHRpb25zJ10gPSAnV2lkZ2V0IFN0eWxlIE9wdGlvbnMnOw0KJGxhbmdbJ3RpdGxlX2RlZmF1bHQnXSA9ICdEZWZhdWx0JzsNCg0KJGxhbmdbJ2hlbHBfdGl0bGUnXSA9ICdvbmx5IHZpc2libGUgaW4gQ01TJzsNCiRsYW5nWydoZWxwX2hlYWRpbmcnXSA9ICdvcHRpb25hbCc7DQokbGFuZ1snaGVscF9jb250ZW50J10gPSAnSW5jbHVkaW5nIFRleHQgJiBJbWFnZXMsIHVzZSBIMiBvciBIMyBmb3IgaGVhZGluZ3MnOw0KJGxhbmdbJ2hlbHBfbGlua190byddID0gJ3NlbGVjdCBwYWdlIHRvIGxpbmsgdG8gLSBvcHRpb25hbCc7DQokbGFuZ1snaGVscF9saW5rX3RleHQnXSA9ICdUZXh0IGZvciBsaW5rIGJ1dHRvbiAoZGVmYXVsdDogUmVhZCBtb3JlKSc7DQokbGFuZ1snaGVscF9zdHlsZV9vcHRpb25zJ10gPSAnQ3RybCtjbGljayB0byBzZWxlY3QgbXVsdGlwbGUgb3B0aW9ucyBiZWxvdyB0byBjaGFuZ2UgaG93IHRoZSB3aWRnZXQgaXMgZGlzcGxheWVkJzsNCiRsYW5nWydoZWxwJ10gPSA8PDwnRU9EJw0KPGgzPldoYXQgZG9lcyB0aGlzIGRvPzwvaDM+DQo8cD4nV2lkZ2V0cycgcHJvdmlkZXMgY29udGVudCBibG9ja3MgdGhhdCBjYW4gYmUgZWFzaWx5IHNob3duIGFjcm9zcyBtdWx0aXBsZSBwYWdlcy4gVGhlICdXaWRnZXQnIGNhbiBiZSBjcmVhdGVkL2VkaXRlZCBvbmNlLCBhbmQgYWRkZWQgdG8gbXVsdGlwbGUgcGFnZXMuIEluY2x1ZGVzIGEgZHJhZy1uLWRyb3Agc2VsZWN0aW9uIG9mIGF2YWlsYWJsZSBXaWRnZXRzIHdpdGhpbiBjb250ZW50IHBhZ2VzLjwvcD48YnI+DQo8cD5FYWNoIFdpZGdldCBpbmNsdWRlcyBhbiBvcHRpb25hbCBoZWFkaW5nIGFuZCBhIHNpbXBsZSBvcHRpb24gZm9yIGxpbmtpbmcgdG8gb3RoZXIgY29udGVudCBwYWdlcy4gRXhhbXBsZXMgb2YgdXNlOiBXaWRnZXRzIHRoYXQgY2FuIGJlIG9wdGlvbmFsbHkgcGxhY2VkIGluIHRoZSBzaWRlYmFyIG9mIGJvdHRvbSBvZiBjb250ZW50IHBhZ2VzLCBjb21tb25seSB1c2VkIGFzIGUuZy4gTGF0ZXN0IE5ld3MsIFNpZGViYXIgRW5xdWlyeSBGb3JtLCBTb2NpYWwgTWVkaWEgU2hhcmluZyBMaW5rcywgQ3VzdG9tZXIgUmV2aWV3cywgLi4uPC9wPg0KPGJyPg0KDQo8aDM+R2V0dGluZyBTdGFydGVkPC9oMz4NCjxwPjEuIEFkZCB0aGUgZm9sbG93aW5nIHRhZyBhdCB0aGUgdG9wIG9mIGEgcGFnZSB0ZW1wbGF0ZSwgKHRoaXMgY3JlYXRlcyB0aGUgZHJhZy1uLWRyb3AgZmllbGRzIGluIHRoZSBDb250ZW50IE1hbmFnZXIgcGFnZSk6PC9wPg0KPHByZT57Y29udGVudF9tb2R1bGUgbW9kdWxlPSdXaWRnZXRzJyBibG9jaz0ndGVzdDEnIGFzc2lnbj10ZXN0MX17JHRlc3QxPSR0ZXN0MSBzY29wZT1nbG9iYWx9PC9wcmU+DQo8cD4yLiBXaXRoaW4gdGhlIGh0bWwgYm9keSAoZS5nLiBpbiBhIHNpZGViYXIgY29sdW1uKSwgYWRkIHRoZSBmb2xsb3dpbmcuIChUaGlzIGdlbmVyYXRlcyB0aGUgb3V0cHV0IG9mIHRoZSBzZWxlY3RlZCBXaWRnZXRzIHVzaW5nIHRoZSBXaWRnZXQgdGVtcGxhdGUsIGVpdGhlciBkZWZhdWx0IG9yIHNwZWNpZmllZCk6PC9wPg0KPHByZT57V2lkZ2V0cyBpdGVtcz0kdGVzdDF9PC9wcmU+DQo8cD4zLiBBZGQgYSBmZXcgdGVzdCBXaWRnZXRzIHdpdGggZHVtbXkgY29udGVudCwgYW5kIHZpZXcgYSBwYWdlIHVzaW5nIHRoYXQgdGVtcGxhdGUgaW4gQ29udGVudCBNYW5hZ2VyLCBhbmQgb24gdGhlIGZyb250IGVuZC48L3A+PGJyPg0KPHA+NC4gU2V0IEdyb3VwIFBlcm1pc3Npb25zIGZvciB0aGlzIG1vZHVsZSBpZiB5b3UgaW50ZW5kIEVkaXRvcnMgb3Igb3RoZXIgZ3JvdXBzIHRvIGVkaXQgV2lkZ2V0cy48L3A+DQo8YnI+DQoNCjxoMz5Db250ZW50IEJsb2NrIHBhcmFtZXRlcnM8L2gzPg0KPHA+dGhlIGZvbGxvd2luZyBvcHRpb25zIGNhbiBiZSBpbmNsdWRlZCBpbiB0aGUgJ1dpZGdldHMnIGNvbnRlbnRfbW9kdWxlIHRhZy4gTWluaW11bSByZXF1aXJlZCBpczo8L3A+DQo8cHJlPntjb250ZW50X21vZHVsZSBtb2R1bGU9J1dpZGdldHMnIGJsb2NrPSd0ZXN0MSd9PC9wcmU+DQo8dWw+DQogICA8bGk+KHJlcXVpcmVkKSBtb2R1bGU9J1dpZGdldHMnIC0gdGVsbHMgQ01TTVMgdG8gcGFzcyB0aGVzZSBkZXRhaWxzIHRvIHRoZSBXaWRnZXRzIG1vZHVsZSo8L2xpPg0KICAgPGxpPihyZXF1aXJlZCkgYmxvY2sgLSB0aGUgbmFtZSBvZiB0aGUgY29udGVudCBibG9jaywgdGhhdCBzdG9yZXMgdGhlIHNlbGVjdGVkIFdpZGdldHMqPC9saT4NCiAgIDxsaT4ob3B0aW9uYWwpIGxhYmVsIC0gYSBsYWJlbCBmb3IgdGhlIGNvbnRlbnQgYmxvY2sgZm9yIHVzZSB3aGVuIGVkaXRpbmcgdGhlIHBhZ2UqPC9saT4NCiAgIDxsaT4ob3B0aW9uYWwpIGNhdGVnb3J5IC0gc3BlY2lmeSB0aGUgY2F0ZWdvcnkgb2YgV2lkZ2V0cyBhdmFpbGFibGUgZm9yIHNlbGVjdGlvbiAoZGVmYXVsdCBpcyBhbGwgV2lkZ2V0cyk8L2xpPg0KICAgPGxpPihvcHRpb25hbCkgZGVzY3JpcHRpb24gLSBhbiBhZGRpdGlvbmFsIHRleHQgZGVzY3JpcHRpb24gZm9yIGluc3RydWN0aW9ucyB0byBlZGl0b3JzPC9saT4NCiAgIDxsaT4ob3B0aW9uYWwpIGxhYmVsX2xlZnQgLSBhbHRlcm5hdGl2ZSBsYWJlbCBmb3IgdGhlIGxlZnQgc2V0IG9mICdTZWxlY3RlZCBXaWRnZXRzJzwvbGk+DQogICA8bGk+KG9wdGlvbmFsKSBsYWJlbF9yaWdodCAtIGFsdGVybmF0aXZlIGxhYmVsIGZvciB0aGUgcmlnaHQgc2V0IG9mICdBdmFpbGFibGUgV2lkZ2V0cyc8L2xpPg0KICAgPGxpPihvcHRpb25hbCkgdGFiIC0gdGhlIGRlc2lyZWQgdGFiIHRvIGRpc3BsYXkgdGhpcyBmaWVsZCBvbiB0aGUgQ29udGVudCBNYW5hZ2VyIHBhZ2UqPC9saT4NCiAgIDxsaT4ob3B0aW9uYWwpIGFzc2lnbiAoc3RyaW5nKSAtIGFzc2lnbnMgdGhlIHJlc3VsdCB0byBhIHNtYXJ0eSB2YXJpYWJsZSB3aXRoIHRoYXQgbmFtZSo8L2xpPg0KPC91bD4NCjxwPjxzbWFsbD4oKiA9IGFzIHBlciBkZWZhdWx0IGNvbnRlbnRfbW9kdWxlIHRhZyApPC9zbWFsbD48L3A+DQo8YnI+DQoNCjxoMz5XaWRnZXRzIE91dHB1dDwvaDM+DQo8cD50aGUgZm9sbG93aW5nIG9wdGlvbnMgY2FuIGJlIGluY2x1ZGVkIGluIHRoZSAnV2lkZ2V0cycgdGFnLCB0byBvdXRwdXQgdGhlIHNlbGVjdGVkIFdpZGdldHMuIE1pbmltdW0gcmVxdWlyZWQgaXM6PC9wPg0KPHByZT57V2lkZ2V0c308L3ByZT4NCjxwPlNlZSA8c3Ryb25nPlBhcmFtZXRlcnM8L3N0cm9uZz4gYmVsb3cgZm9yIHBvc3NpYmxlIHBhcmFtZXRlcnMuPC9wPg0KPGJyPg0KDQo8aDM+UGVybWlzc2lvbnM8L2gzPg0KPHA+UGVybWlzc2lvbnMgZXhpc3QgdG86PC9wPg0KPHVsPg0KICAgPGxpPlVzZSBXaWRnZXRzIC0gY2FuIGNyZWF0ZSwgZWRpdCwgZGVsZXRlIFdpZGdldHMgJmFtcDsgQ2F0ZWdvcmllczwvbGk+DQogICA8bGk+TWFuYWdlIFdpZGdldHMgLSBhcyBhYm92ZSwgcGx1cyBjYW4gc2V0IE9wdGlvbnM8L2xpPg0KPC91bD48YnI+DQoNCjxoMz5TdXBwb3J0PC9oMz4NCjxwPkFzIHBlciB0aGUgR1BMIGxpY2VuY2UsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMgaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0IG9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLg0KVGhlIG1vZHVsZSBhdXRob3IgaXMgbm90IG9ibGlnYXRlZCB0byBwcm92aWRlIHN1cHBvcnQgZm9yIHRoaXMgY29kZS4gSG93ZXZlciB5b3UgbWlnaHQgZ2V0IHN1cHBvcnQgdGhyb3VnaCB0aGUgZm9sbG93aW5nOjwvcD4NCjx1bD4NCiAgIDxsaT5Gb3Igc3VwcG9ydCwgZmlyc3QgPHN0cm9uZz5zZWFyY2g8L3N0cm9uZz4gdGhlIDxhIGhyZWY9Ii8vZm9ydW0uY21zbWFkZXNpbXBsZS5vcmciPkNNUyBNYWRlIFNpbXBsZSBGb3J1bTwvYT4sIGZvciBpc3N1ZXMgd2l0aCB0aGUgbW9kdWxlIHNpbWlsYXIgdG8gdGhvc2UgeW91IGFyZSBmaW5kaW5nLjwvbGk+DQogICA8bGk+VGhlbiwgaWYgbmVjZXNzYXJ5LCBvcGVuIGEgPHN0cm9uZz5uZXcgZm9ydW0gdG9waWM8L3N0cm9uZz4gdG8gcmVxdWVzdCBoZWxwLCB3aXRoIGEgdGhvcm91Z2ggZGVzY3JpcHRpb24gb2YgeW91ciBpc3N1ZSwgYW5kIHN0ZXBzIHRvIHJlcHJvZHVjZSBpdC48L2xpPg0KICAgPGxpPklmIHlvdSBmaW5kIGEgYnVnIHlvdSBjYW4gPGEgaHJlZj0iLy9kZXYuY21zbWFkZXNpbXBsZS5vcmcvYnVnL2xpc3QvMTM4MyI+c3VibWl0IGEgQnVnIFJlcG9ydDwvYT4uPC9saT4NCiAgIDxsaT5Gb3IgYW55IGdvb2QgaWRlYXMgeW91IGNhbiA8YSBocmVmPSIvL2Rldi5jbXNtYWRlc2ltcGxlLm9yZy9mZWF0dXJlX3JlcXVlc3QvbGlzdC8xMzgzIj5zdWJtaXQgYSBGZWF0dXJlIFJlcXVlc3Q8L2E+LjwvbGk+DQogICA8bGk+SWYgeW91IGZvdW5kIHRoZSBNb2R1bGUgdXNlZnVsIC0gc2hvdXQgb3V0IHRvIG1lIG9uIFR3aXR0ZXIgPGEgaHJlZj0iLy90d2l0dGVyLmNvbS9LaXdpQ2hyaXNCVCI+QEtpd2lDaHJpc0JUPC9hPjwvbGk+DQo8L3VsPjxicj4NCg0KPGgzPkNvcHlyaWdodCAmYW1wOyBMaWNlbmNlPC9oMz4NCjxwPkNvcHlyaWdodCDCqSAyMDE2LCBDaHJpcyBUYXlsb3IgPGNocmlzIGF0IGJpbm5vdmF0aXZlIGRvdCBjbyBkb3QgdWs+LiBBbGwgUmlnaHRzIEFyZSBSZXNlcnZlZC48L3A+PGJyPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBQdWJsaWMgTGljZW5zZSB2My4gSG93ZXZlciwgYXMgYSBzcGVjaWFsIGV4Y2VwdGlvbiB0byB0aGUgR1BMLCB0aGlzIHNvZnR3YXJlIGlzIGRpc3RyaWJ1dGVkIGFzIGFuIGFkZG9uIG1vZHVsZSB0byBDTVMgTWFkZSBTaW1wbGUuIFlvdSBtYXkgb25seSB1c2UgdGhpcyBzb2Z0d2FyZSB3aGVuIHRoZXJlIGlzIGEgY2xlYXIgYW5kIG9idmlvdXMgaW5kaWNhdGlvbiBpbiB0aGUgYWRtaW4gc2VjdGlvbiB0aGF0IHRoZSBzaXRlIHdhcyBidWlsdCB3aXRoIENNUyBNYWRlIFNpbXBsZSE8L3A+PGJyPg0KPHA+SW5zcGlyZWQgYnk6IEdsb2JhbCBDb250ZW50IEJsb2NrcywgTElTRSwgRUNCIGFuZCBDR0V4dGVuc2lvbnMuPC9wPjxicj4NCkVPRDsNCg0KJGxhbmdbJ2Vycm9yX3RpdGxlX2VtcHR5J10gPSAnQSB0aXRsZSBpcyByZXF1aXJlZCc7DQokbGFuZ1snZXJyb3JfYWxpYXNfaW52YWxpZCddID0gJ0FsaWFzIGlzIGludmFsaWQgb3IgYWxyZWFkeSBpbiB1c2UnOw0KJGxhbmdbJ2Vycm9yX2NhdGVnb3J5X25hbWUnXSA9ICdBIHVuaXF1ZSBuYW1lIGlzIHJlcXVpcmVkJzsNCg0KJGxhbmdbJ2RlZmF1bHRfc3R5bGVfb3B0aW9ucyddID0gJ0VudGlyZSBXaWRnZXQgQ2xpY2thYmxlPWNsaWNrYWJsZQ0KSGlkZSBCb3JkZXI9aGlkZS1ib3JkZXINCkhpZGUgb24gVGFibGV0cz1oaWRkZW4tc20NCkhpZGUgb24gUGhvbmVzPWhpZGRlbi14cyc7DQoNCiRsYW5nWydjYXRlZ29yeV9zYXZlZCddID0gJ1RoaXMgY2F0ZWdvcnkgaXMgbm93IHNhdmVkJzsNCiRsYW5nWydjYXRlZ29yeV9ub3RzYXZlZCddID0gJ1RoaXMgY2F0ZWdvcnkgZGlkIG5vdCBzYXZlJzsNCiRsYW5nWydjYXRlZ29yeV9kZWxldGVkJ10gPSAnVGhlIGNhdGVnb3J5IHdhcyBkZWxldGVkJzsNCiRsYW5nWydjYXRlZ29yeV9ub3RfZGVsZXRlZCddID0gJ1RoZSBjYXRlZ29yeSB3YXMgbm90IGRlbGV0ZWQnOw0KDQokbGFuZ1snYWRkX2NhdGVnb3J5J10gPSAnQWRkIENhdGVnb3J5JzsNCiRsYW5nWydlZGl0X2NhdGVnb3J5J10gPSAnRWRpdCBDYXRlZ29yeSc7DQoNCiRsYW5nWydpc19kZWZhdWx0J10gPSAnRGVmYXVsdCBjYXRlZ29yeSc7DQokbGFuZ1snc2V0X2RlZmF1bHQnXSA9ICdTZXQgYXMgZGVmYXVsdCBjYXRlZ29yeSc7DQoNCiRsYW5nWydkZWZhdWx0X2NhdGVnb3J5X3NldCddID0gJ05ldyBkZWZhdWx0IGNhdGVnb3J5IHNldCc7DQokbGFuZ1snZGVmYXVsdF9jYXRlZ29yeV9ub3Rfc2V0J10gPSAnRGVmYXVsdCBjYXRlZ29yeSBub3QgY2hhbmdlZCc7DQoNCiRsYW5nWyd0eXBlX1dpZGdldHMnXSA9ICdXaWRnZXRzJzsNCiRsYW5nWyd0eXBlX1N1bW1hcnknXSA9ICdTdW1tYXJ5JzsNCiRsYW5nWyd0eXBlX1RlbXBsYXRlJ10gPSAnVGVtcGxhdGUnOw0KDQokbGFuZ1snY29udGVudF9ibG9ja19sYWJlbF9sZWZ0J10gPSAnU2VsZWN0ZWQnOw0KJGxhbmdbJ2NvbnRlbnRfYmxvY2tfbGFiZWxfcmlnaHQnXSA9ICdBdmFpbGFibGUnOw0KJGxhbmdbJ2NvbnRlbnRfYmxvY2tfbGFiZWxfc2VsZWN0ZWQnXSA9ICdTZWxlY3RlZCBXaWRnZXRzJzsNCiRsYW5nWydjb250ZW50X2Jsb2NrX2xhYmVsX2F2YWlsYWJsZSddID0gJ0F2YWlsYWJsZSBXaWRnZXRzJzsNCg0KJGxhbmdbJ2NvbnZlcnRlciddID0gJ0NvbnZlcnRlcic7DQokbGFuZ1sndXBncmFkZV93YXJuaW5nJ10gPSAnQW4gZWFybGllciB2ZXJzaW9uIG9mIExJU0VXaWRnZXRzIGhhcyBiZWVuIGRldGVjdGVkLiBCZWxvdyBhcmUgdGhlIG9wdGlvbnMgdG8gYXV0b21hdGUgdGhlIHVwZ3JhZGUgdG8gdGhlIFwnV2lkZ2V0c1wnIG1vZHVsZS4gVXNlIHdpdGggY2FyZSEnOw0KJGxhbmdbJ2Ryb3BfaXRlbXMnXSA9ICdObyBXaWRnZXRzIHNlbGVjdGVkIC0gZHJvcCBzZWxlY3RlZCB3aWRnZXRzIGhlcmUnOw0KJGxhbmdbJ3JlbW92ZSddID0gJ1JlbW92ZSc7DQovLyAkbGFuZ1snJ10gPSAnJzsNCi8vICRsYW5nWycnXSA9ICcnOw0KLy8gJGxhbmdbJyddID0gJyc7DQovLyAkbGFuZ1snJ10gPSAnJzsNCg0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lang/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBEVU1NWSBIVE1MIEZJTEUgLS0+]]></data>
	</file>
	<file>
	  <filename>/lib/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/class.WidgetCategory.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBXaWRnZXRDYXRlZ29yeSB7DQoNCiAgIHByaXZhdGUgJF9kYXRhID0gYXJyYXkoICdjYXRlZ29yeV9pZCc9Pm51bGwsICdjYXRlZ29yeV9uYW1lJz0+bnVsbCwgJ2NhdGVnb3J5X2FsaWFzJz0+bnVsbCwgJ2RlZmF1bHRfY2F0ZWdvcnknPT5udWxsICk7DQoNCiAgIHB1YmxpYyBmdW5jdGlvbiBfX2dldCgka2V5KSB7DQogICAgICBzd2l0Y2goICRrZXkgKSB7DQogICAgICAgICBjYXNlICdjYXRlZ29yeV9pZCc6DQogICAgICAgICBjYXNlICdjYXRlZ29yeV9uYW1lJzoNCiAgICAgICAgIGNhc2UgJ2NhdGVnb3J5X2FsaWFzJzoNCiAgICAgICAgIGNhc2UgJ2RlZmF1bHRfY2F0ZWdvcnknOg0KICAgICAgICAgcmV0dXJuICR0aGlzLT5fZGF0YVska2V5XTsNCiAgICAgIH0NCiAgIH0NCg0KICAgcHVibGljIGZ1bmN0aW9uIF9fc2V0KCRrZXksJHZhbCkgew0KICAgICAgc3dpdGNoKCAka2V5ICkgew0KICAgICAgICAgY2FzZSAnY2F0ZWdvcnlfbmFtZSc6DQogICAgICAgICAgICAkdGhpcy0+X2RhdGFbJGtleV0gPSB0cmltKCR2YWwpOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICBjYXNlICdjYXRlZ29yeV9hbGlhcyc6DQogICAgICAgICAgICAkdGhpcy0+X2RhdGFbJGtleV0gPSB0cmltKCR2YWwpOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICBjYXNlICdkZWZhdWx0X2NhdGVnb3J5JzoNCiAgICAgICAgICAgICR0aGlzLT5fZGF0YVska2V5XSA9IChib29sKSAkdmFsOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICB9DQogICB9DQoNCiAgIHB1YmxpYyBmdW5jdGlvbiBzYXZlKCkgew0KICAgICAgLy8gdGVzdCBpZiB2YWxpZCBiZWZvcmUgY2FsbGluZyBzYXZlKCkNCiAgICAgIGlmICggJHRoaXMtPmNhdGVnb3J5X2lkID4gMCApIHsNCiAgICAgICAgICRzYXZlZCA9ICR0aGlzLT51cGRhdGUoKTsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgICAkc2F2ZWQgPSAkdGhpcy0+aW5zZXJ0KCk7DQogICAgICB9DQogICAgICByZXR1cm4gJHNhdmVkOw0KICAgfQ0KDQoNCiAgIHByb3RlY3RlZCBmdW5jdGlvbiBpbnNlcnQoKSB7DQogICAgICAkZGIgPSBcY21zX3V0aWxzOjpnZXRfZGIoKTsNCiAgICAgICRzcWwgPSAnSU5TRVJUIElOVE8gJy5DTVNfREJfUFJFRklYLidtb2R1bGVfd2lkZ2V0c19jYXRlZ29yeSAoY2F0ZWdvcnlfbmFtZSwgY2F0ZWdvcnlfYWxpYXMpIFZBTFVFUyAoPyw/KSc7DQogICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCAkc3FsLCBhcnJheSgkdGhpcy0+Y2F0ZWdvcnlfbmFtZSwgJHRoaXMtPmNhdGVnb3J5X2FsaWFzKSApOw0KICAgICAgaWYoICEkZGJyICkgcmV0dXJuIEZBTFNFOw0KICAgICAgJHRoaXMtPl9kYXRhWydjYXRlZ29yeV9pZCddID0gJGRiLT5JbnNlcnRfSUQoKTsNCiAgICAgIHJldHVybiBUUlVFOw0KICAgfQ0KDQogICBwcm90ZWN0ZWQgZnVuY3Rpb24gdXBkYXRlKCkgew0KICAgICAgJGRiID0gXGNtc191dGlsczo6Z2V0X2RiKCk7DQogICAgICAkc3FsID0gJ1VQREFURSAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzX2NhdGVnb3J5IFNFVCBjYXRlZ29yeV9uYW1lID0gPywgY2F0ZWdvcnlfYWxpYXM9PyBXSEVSRSBjYXRlZ29yeV9pZCA9ID8nOw0KICAgICAgJGRiciA9ICRkYi0+RXhlY3V0ZSgkc3FsLCBhcnJheSgkdGhpcy0+Y2F0ZWdvcnlfbmFtZSwgJHRoaXMtPmNhdGVnb3J5X2FsaWFzLCAkdGhpcy0+Y2F0ZWdvcnlfaWQpKTsNCiAgICAgIGlmKCAhJGRiciApIHJldHVybiBGQUxTRTsNCiAgICAgIHJldHVybiBUUlVFOw0KICAgfQ0KDQogICBwdWJsaWMgZnVuY3Rpb24gZGVsZXRlKCkgew0KICAgICAgaWYoICEkdGhpcy0+Y2F0ZWdvcnlfaWQgfHwgJHRoaXMtPmRlZmF1bHRfY2F0ZWdvcnk9PVRSVUUpIHJldHVybiBGQUxTRTsNCiAgICAgICRkYiA9IFxjbXNfdXRpbHM6OmdldF9kYigpOw0KICAgICAgJHNxbCA9ICdERUxFVEUgRlJPTSAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzX2NhdGVnb3J5IFdIRVJFIGNhdGVnb3J5X2lkID0gPyc7DQogICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRzcWwsIGFycmF5KCR0aGlzLT5jYXRlZ29yeV9pZCkpOw0KICAgICAgaWYoICEkZGJyICkgcmV0dXJuIEZBTFNFOw0KICAgICAgJHRoaXMtPl9kYXRhWydjYXRlZ29yeV9pZCddID0gbnVsbDsNCiAgICAgIHJldHVybiBUUlVFOw0KICAgfQ0KDQogICBwdWJsaWMgZnVuY3Rpb24gc2V0QXNEZWZhdWx0KCkgew0KICAgICAgaWYoICEkdGhpcy0+Y2F0ZWdvcnlfaWQgKSByZXR1cm4gRkFMU0U7DQogICAgICAkZGIgPSBcY21zX3V0aWxzOjpnZXRfZGIoKTsNCiAgICAgICRzcWwgPSAnVVBEQVRFICcuQ01TX0RCX1BSRUZJWC4nbW9kdWxlX3dpZGdldHNfY2F0ZWdvcnkgU0VUIGRlZmF1bHRfY2F0ZWdvcnkgPSBGQUxTRSc7DQogICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRzcWwpOw0KICAgICAgaWYoICEkZGJyICkgcmV0dXJuIEZBTFNFOw0KICAgICAgJHNxbCA9ICdVUERBVEUgJy5DTVNfREJfUFJFRklYLidtb2R1bGVfd2lkZ2V0c19jYXRlZ29yeSBTRVQgZGVmYXVsdF9jYXRlZ29yeSA9IFRSVUUgV0hFUkUgY2F0ZWdvcnlfaWQgPSA/JzsNCiAgICAgICRkYnIgPSAkZGItPkV4ZWN1dGUoJHNxbCwgYXJyYXkoJHRoaXMtPmNhdGVnb3J5X2lkKSk7DQogICAgICBpZiggISRkYnIgKSByZXR1cm4gRkFMU0U7DQogICAgICByZXR1cm4gVFJVRTsNCiAgIH0NCg0KICAgLyoqIGludGVybmFsICovDQogICBwdWJsaWMgZnVuY3Rpb24gZmlsbF9mcm9tX2FycmF5KCRyb3cpIHsNCiAgICAgIGZvcmVhY2goICRyb3cgYXMgJGtleSA9PiAkdmFsICkgew0KICAgICAgICAgaWYoIGFycmF5X2tleV9leGlzdHMoJGtleSwkdGhpcy0+X2RhdGEpICkgew0KICAgICAgICAgICAgJHRoaXMtPl9kYXRhWyRrZXldID0gJHZhbDsNCiAgICAgICAgIH0NCiAgICAgIH0NCiAgIH0NCg0KICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiAmbG9hZF9ieV9pZCgkY2F0ZWdvcnlfaWQpIHsNCiAgICAgICRjYXRlZ29yeV9pZCA9IChpbnQpICRjYXRlZ29yeV9pZDsNCiAgICAgICRkYiA9IFxjbXNfdXRpbHM6OmdldF9kYigpOw0KICAgICAgJHNxbCA9ICdTRUxFQ1QgKiBGUk9NICcuQ01TX0RCX1BSRUZJWC4nbW9kdWxlX3dpZGdldHNfY2F0ZWdvcnkgV0hFUkUgY2F0ZWdvcnlfaWQgPSA/JzsNCiAgICAgICRyb3cgPSAkZGItPkdldFJvdygkc3FsLGFycmF5KCRjYXRlZ29yeV9pZCkpOw0KICAgICAgaWYoIGlzX2FycmF5KCRyb3cpICkgew0KICAgICAgICAgJG9iaiA9IG5ldyBzZWxmKCk7DQogICAgICAgICAkb2JqLT5maWxsX2Zyb21fYXJyYXkoJHJvdyk7DQogICAgICAgICByZXR1cm4gJG9iajsNCiAgICAgIH0NCiAgIH0NCg0KICAgcHVibGljIGZ1bmN0aW9uIGdldENhdGVnb3JpZXMoKSB7DQogICAgICAvLyByZXR1cm4gZnVsbCBDYXRlZ29yaWVzIGFycmF5LCB3aXRoIGRlZmF1bHQgY2F0ZWdvcnkgZmlyc3QNCiAgICAgICRkYiA9IFxjbXNfdXRpbHM6OmdldF9kYigpOw0KICAgICAgJHNxbCA9ICdTRUxFQ1QgY2F0ZWdvcnlfaWQsY2F0ZWdvcnlfbmFtZSwgY2F0ZWdvcnlfYWxpYXMgRlJPTSAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzX2NhdGVnb3J5ICcuDQogICAgICAgICAnT1JERVIgQlkgZGVmYXVsdF9jYXRlZ29yeSBERVNDLGNhdGVnb3J5X2lkJzsNCiAgICAgICRyZXMgPSAkZGItPkdldEFsbCgkc3FsKTsNCiAgICAgICRjYXRlZ29yaWVzID0gYXJyYXkoKTsNCiAgICAgIGZvcmVhY2goJHJlcyBhcyAkY2F0KSB7DQogICAgICAgICAkY2F0ZWdvcmllc1skY2F0WydjYXRlZ29yeV9pZCddXSA9ICRjYXRbJ2NhdGVnb3J5X25hbWUnXTsNCiAgICAgIH0NCiAgICAgIHJldHVybiAkY2F0ZWdvcmllczsNCiAgIH0NCg0KDQp9DQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/class.WidgetCategoryQuery.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBXaWRnZXRDYXRlZ29yeVF1ZXJ5IGV4dGVuZHMgQ21zRGJRdWVyeUJhc2Ugew0KDQogICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJGFyZ3MgPSAnJykgew0KICAgICAgcGFyZW50OjpfX2NvbnN0cnVjdCgkYXJncyk7DQogICB9DQoNCiAgIHB1YmxpYyBmdW5jdGlvbiBleGVjdXRlKCkgew0KICAgICAgaWYoICFpc19udWxsKCR0aGlzLT5fcnMpICkgcmV0dXJuOw0KICAgICAgJHNxbCA9ICdTRUxFQ1QgU1FMX0NBTENfRk9VTkRfUk9XUyBDLiogRlJPTSAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzX2NhdGVnb3J5IEMnOw0KICAgICAgJHNxbCAuPSAnIE9SREVSIEJZIGNhdGVnb3J5X2lkJzsNCiAgICAgICRkYiA9IFxjbXNfdXRpbHM6OmdldF9kYigpOw0KICAgICAgJHRoaXMtPl9ycyA9ICRkYi0+ZXhlY3V0ZSgkc3FsKTsNCiAgICAgIGlmICggJGRiLT5FcnJvck1zZygpICkgdGhyb3cgbmV3IFxDbXNTUUxFcnJvckV4Y2VwdGlvbiggJGRiLT5zcWwuJyAtLSAnLiRkYi0+RXJyb3JNc2coKSApOw0KICAgICAgJHRoaXMtPl90b3RhbG1hdGNoaW5ncm93cyA9ICRkYi0+R2V0T25lKCdTRUxFQ1QgRk9VTkRfUk9XUygpJyk7DQogICB9DQoNCiAgIHB1YmxpYyBmdW5jdGlvbiAmR2V0T2JqZWN0KCkgew0KICAgICAgJG9iaiA9IG5ldyBXaWRnZXRDYXRlZ29yeTsNCiAgICAgICRvYmotPmZpbGxfZnJvbV9hcnJheSgkdGhpcy0+ZmllbGRzKTsNCiAgICAgIHJldHVybiAkb2JqOw0KICAgfQ0KfQ0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.WidgetItem.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBXaWRnZXRJdGVtIHsNCg0KICAgcHJpdmF0ZSAkX2RhdGEgPSBhcnJheSggJ2lkJz0+bnVsbCwgJ2NhdGVnb3J5X2lkJz0+bnVsbCwgJ3RpdGxlJz0+bnVsbCwgJ2FsaWFzJz0+bnVsbCwgJ3Bvc2l0aW9uJz0+bnVsbCwgJ2FjdGl2ZSc9Pm51bGwsICdoZWFkaW5nJz0+bnVsbCwgJ2NvbnRlbnQnPT5udWxsLCAnbGlua190byc9Pm51bGwsICdsaW5rX3RleHQnPT5udWxsLCAnc3R5bGVfb3B0aW9ucyc9Pm51bGwgKTsNCg0KICAgcHVibGljIGZ1bmN0aW9uIF9fZ2V0KCRrZXkpIHsNCiAgICAgIHN3aXRjaCggJGtleSApIHsNCiAgICAgICAgIGNhc2UgJ2lkJzoNCiAgICAgICAgIGNhc2UgJ2NhdGVnb3J5X2lkJzoNCiAgICAgICAgIGNhc2UgJ3RpdGxlJzoNCiAgICAgICAgIGNhc2UgJ2FsaWFzJzoNCiAgICAgICAgIGNhc2UgJ3Bvc2l0aW9uJzoNCiAgICAgICAgIGNhc2UgJ2FjdGl2ZSc6DQogICAgICAgICBjYXNlICdoZWFkaW5nJzoNCiAgICAgICAgIGNhc2UgJ2NvbnRlbnQnOg0KICAgICAgICAgY2FzZSAnbGlua190byc6DQogICAgICAgICBjYXNlICdsaW5rX3RleHQnOg0KICAgICAgICAgY2FzZSAnc3R5bGVfb3B0aW9ucyc6DQogICAgICAgICByZXR1cm4gJHRoaXMtPl9kYXRhWyRrZXldOw0KICAgICAgfQ0KICAgfQ0KDQogICBwdWJsaWMgZnVuY3Rpb24gX19zZXQoJGtleSwkdmFsKSB7DQogICAgICBzd2l0Y2goICRrZXkgKSB7DQogICAgICAgICBjYXNlICd0aXRsZSc6DQogICAgICAgICAgICAkdGhpcy0+X2RhdGFbJGtleV0gPSB0cmltKCR2YWwpOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICBjYXNlICdjYXRlZ29yeV9pZCc6DQogICAgICAgICAgICAkdGhpcy0+X2RhdGFbJGtleV0gPSAoaW50KSAkdmFsOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICBjYXNlICdhbGlhcyc6DQogICAgICAgICAgICAkdGhpcy0+X2RhdGFbJGtleV0gPSB0cmltKCR2YWwpOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICBjYXNlICdwb3NpdGlvbic6DQogICAgICAgICAgICAkdGhpcy0+X2RhdGFbJGtleV0gPSAoaW50KSAkdmFsOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICBjYXNlICdhY3RpdmUnOg0KICAgICAgICAgICAgJHRoaXMtPl9kYXRhWyRrZXldID0gKGJvb2wpICR2YWw7DQogICAgICAgICAgICBicmVhazsNCiAgICAgICAgIGNhc2UgJ2hlYWRpbmcnOg0KICAgICAgICAgICAgJHRoaXMtPl9kYXRhWyRrZXldID0gdHJpbSgkdmFsKTsNCiAgICAgICAgICAgIGJyZWFrOw0KICAgICAgICAgY2FzZSAnY29udGVudCc6DQogICAgICAgICAgICAkdGhpcy0+X2RhdGFbJGtleV0gPSB0cmltKCR2YWwpOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICBjYXNlICdsaW5rX3RvJzoNCiAgICAgICAgICAgICR0aGlzLT5fZGF0YVska2V5XSA9IChpbnQpICR2YWw7DQogICAgICAgICAgICBicmVhazsNCiAgICAgICAgIGNhc2UgJ2xpbmtfdGV4dCc6DQogICAgICAgICAgICAkdGhpcy0+X2RhdGFbJGtleV0gPSB0cmltKCR2YWwpOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgICBjYXNlICdzdHlsZV9vcHRpb25zJzoNCiAgICAgICAgICAgICR0aGlzLT5fZGF0YVska2V5XSA9IHRyaW0oJHZhbCk7DQogICAgICAgICAgICBicmVhazsNCiAgICAgIH0NCiAgIH0NCg0KICAgcHVibGljIGZ1bmN0aW9uIHNhdmUoKSB7DQogICAgICAvLyB0ZXN0IGlmIHZhbGlkIGJlZm9yZSBjYWxsaW5nIHNhdmUoKQ0KICAgICAgLy9pZiAoICEkdGhpcy0+aXNfdmFsaWQoKSApIHJldHVybiBGQUxTRTsNCiAgICAgIGlmICggJHRoaXMtPmlkID4gMCApIHsNCiAgICAgICAgICRzYXZlZCA9ICR0aGlzLT51cGRhdGUoKTsNCiAgICAgIH0gZWxzZSB7DQogICAgICAgICAkc2F2ZWQgPSAkdGhpcy0+aW5zZXJ0KCk7DQogICAgICB9DQogICAgICByZXR1cm4gJHNhdmVkOw0KICAgfQ0KDQoNCiAgIHByb3RlY3RlZCBmdW5jdGlvbiBpbnNlcnQoKSB7DQogICAgICAkZGIgPSBcY21zX3V0aWxzOjpnZXRfZGIoKTsNCiAgICAgICRzcWwgPSAnSU5TRVJUIElOVE8gJy5DTVNfREJfUFJFRklYLidtb2R1bGVfd2lkZ2V0cyAoY2F0ZWdvcnlfaWQsIHRpdGxlLCBhbGlhcywgcG9zaXRpb24sIGFjdGl2ZSwgaGVhZGluZywgY29udGVudCwgbGlua190bywgbGlua190ZXh0LCBzdHlsZV9vcHRpb25zKSBWQUxVRVMgKD8sPyw/LD8sPyw/LD8sPyw/LD8pJzsNCiAgICAgICRkYnIgPSAkZGItPkV4ZWN1dGUoJHNxbCwgYXJyYXkoJHRoaXMtPmNhdGVnb3J5X2lkLCAkdGhpcy0+dGl0bGUsICR0aGlzLT5hbGlhcywgJHRoaXMtPnBvc2l0aW9uLCAkdGhpcy0+YWN0aXZlLCAkdGhpcy0+aGVhZGluZywgJHRoaXMtPmNvbnRlbnQsICR0aGlzLT5saW5rX3RvLCAkdGhpcy0+bGlua190ZXh0LCAkdGhpcy0+c3R5bGVfb3B0aW9ucykpOw0KICAgICAgaWYoICEkZGJyICkgcmV0dXJuIEZBTFNFOw0KICAgICAgJHRoaXMtPl9kYXRhWydpZCddID0gJGRiLT5JbnNlcnRfSUQoKTsNCiAgICAgIHJldHVybiBUUlVFOw0KICAgfQ0KDQogICBwcm90ZWN0ZWQgZnVuY3Rpb24gdXBkYXRlKCkgew0KICAgICAgJGRiID0gXGNtc191dGlsczo6Z2V0X2RiKCk7DQogICAgICAkc3FsID0gJ1VQREFURSAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzIFNFVCBjYXRlZ29yeV9pZCA9ID8sIHRpdGxlID0gPywgYWxpYXMgPSA/LCBwb3NpdGlvbiA9ID8sIGFjdGl2ZSA9ID8sIGhlYWRpbmcgPSA/LCBjb250ZW50ID0gPywgbGlua190byA9ID8sIGxpbmtfdGV4dCA9ID8sIHN0eWxlX29wdGlvbnMgPSA/IFdIRVJFIGlkID0gPyc7DQogICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRzcWwsIGFycmF5KCR0aGlzLT5jYXRlZ29yeV9pZCwgJHRoaXMtPnRpdGxlLCAkdGhpcy0+YWxpYXMsICR0aGlzLT5wb3NpdGlvbiwgJHRoaXMtPmFjdGl2ZSwgJHRoaXMtPmhlYWRpbmcsICR0aGlzLT5jb250ZW50LCAkdGhpcy0+bGlua190bywgJHRoaXMtPmxpbmtfdGV4dCwgJHRoaXMtPnN0eWxlX29wdGlvbnMsICR0aGlzLT5pZCkpOw0KICAgICAgaWYoICEkZGJyICkgcmV0dXJuIEZBTFNFOw0KICAgICAgcmV0dXJuIFRSVUU7DQogICB9DQoNCiAgIHB1YmxpYyBmdW5jdGlvbiBkZWxldGUoKSB7DQogICAgICBpZiggISR0aGlzLT5pZCApIHJldHVybiBGQUxTRTsNCiAgICAgICRkYiA9IFxjbXNfdXRpbHM6OmdldF9kYigpOw0KICAgICAgJHNxbCA9ICdERUxFVEUgRlJPTSAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzIFdIRVJFIGlkID0gPyc7DQogICAgICAkZGJyID0gJGRiLT5FeGVjdXRlKCRzcWwsYXJyYXkoJHRoaXMtPmlkKSk7DQogICAgICBpZiggISRkYnIgKSByZXR1cm4gRkFMU0U7DQogICAgICAkdGhpcy0+X2RhdGFbJ2lkJ10gPSBudWxsOw0KICAgICAgcmV0dXJuIFRSVUU7DQogICB9DQoNCiAgIHB1YmxpYyBmdW5jdGlvbiB0b2dnbGVfYWN0aXZlKCkgew0KICAgICAgaWYoICEkdGhpcy0+aWQgKSByZXR1cm4gRkFMU0U7DQogICAgICAkZGIgPSBcY21zX3V0aWxzOjpnZXRfZGIoKTsNCiAgICAgICRzcWwgPSAnVVBEQVRFICcuQ01TX0RCX1BSRUZJWC4nbW9kdWxlX3dpZGdldHMgU0VUIGFjdGl2ZSA9ID8gV0hFUkUgaWQgPSA/JzsNCiAgICAgICRkYnIgPSAkZGItPkV4ZWN1dGUoJHNxbCxhcnJheSghKGJvb2wpJHRoaXMtPmFjdGl2ZSwgJHRoaXMtPmlkKSk7DQogICAgICBpZiggISRkYnIgKSByZXR1cm4gRkFMU0U7DQogICAgICByZXR1cm4gVFJVRTsNCiAgIH0NCg0KICAgLyoqIGludGVybmFsICovDQogICBwdWJsaWMgZnVuY3Rpb24gZmlsbF9mcm9tX2FycmF5KCRyb3cpIHsNCiAgICAgIGZvcmVhY2goICRyb3cgYXMgJGtleSA9PiAkdmFsICkgew0KICAgICAgICAgaWYoIGFycmF5X2tleV9leGlzdHMoJGtleSwkdGhpcy0+X2RhdGEpICkgew0KICAgICAgICAgICAgJHRoaXMtPl9kYXRhWyRrZXldID0gJHZhbDsNCiAgICAgICAgIH0NCiAgICAgIH0NCiAgIH0NCg0KICAgcHVibGljIHN0YXRpYyBmdW5jdGlvbiAmbG9hZF9ieV9pZCgkaWQpIHsNCiAgICAgICRpZCA9IChpbnQpICRpZDsNCiAgICAgICRkYiA9IFxjbXNfdXRpbHM6OmdldF9kYigpOw0KICAgICAgJHNxbCA9ICdTRUxFQ1QgKiBGUk9NICcuQ01TX0RCX1BSRUZJWC4nbW9kdWxlX3dpZGdldHMgV0hFUkUgaWQgPSA/JzsNCiAgICAgICRyb3cgPSAkZGItPkdldFJvdygkc3FsLGFycmF5KCRpZCkpOw0KICAgICAgaWYoIGlzX2FycmF5KCRyb3cpICkgew0KICAgICAgICAgJG9iaiA9IG5ldyBzZWxmKCk7DQogICAgICAgICAkb2JqLT5maWxsX2Zyb21fYXJyYXkoJHJvdyk7DQogICAgICAgICByZXR1cm4gJG9iajsNCiAgICAgIH0NCiAgIH0NCg0KDQogICBwdWJsaWMgc3RhdGljIGZpbmFsIGZ1bmN0aW9uIGdlbmVyYXRlX2FsaWFzKCR0aXRsZSkgew0KICAgICAgLy8gYWxzbyB1c2VkIGZvciBjYXRlZ29yeSBhbGlhcw0KICAgICAgaWYgKCFpc19zdHJpbmcoJHRpdGxlKSkgcmV0dXJuOw0KDQogICAgICAkYWxpYXMgPSAkdGl0bGU7DQogICAgICAvLyBsZWZ0IHRyaW0gdXAgdG8gdGhlIGZpcnN0IGxldHRlcg0KICAgICAgJGFsaWFzID0gcHJlZ19yZXBsYWNlKCcvXlteYS16QS1aXHg3Zi1ceGZmXSovJywgJycsICRhbGlhcyk7DQogICAgICAvLyByZXBsYWNlIGFueSBpbnZhbGlkIGNoYXJhY3RlcnMgd2l0aCBhbiB1bmRlcnNjb3JlDQogICAgICAkYWxpYXMgPSBwcmVnX3JlcGxhY2UoJy9bXmEtekEtWjAtOV9cLVx4N2YtXHhmZl0vJywgJ18nLCAkYWxpYXMpOw0KICAgICAgLy8gcmVwbGFjZSBtdWx0aXBsZSB1bmRlcnNjb3JlcyB3aXRoIHNpbmdsZSB1bmRlcnNjb3JlDQogICAgICAkYWxpYXMgPSBwcmVnX3JlcGxhY2UoJy9fKy8nLCAnXycsICRhbGlhcyk7DQogICAgICAvLyBjb252ZXJ0IHRvIGxvd2VyY2FzZQ0KICAgICAgJGFsaWFzID0gc3RydG9sb3dlcigkYWxpYXMpOw0KICAgICAgLy8gcmVtb3ZlIHVuZGVyc2NvcmUgZnJvbSBzdGFydCBhbmQgZW5kDQogICAgICAkYWxpYXMgPSB0cmltKCRhbGlhcywgJ18nKTsNCiAgICAgIHJldHVybiAkYWxpYXM7DQogICB9DQoNCg0KICAgcHVibGljIHN0YXRpYyBmaW5hbCBmdW5jdGlvbiBpc192YWxpZF9hbGlhcygkYWxpYXMpIHsNCiAgICAgIC8vIGFsc28gdXNlZCBmb3IgY2F0ZWdvcnkgYWxpYXMNCiAgICAgIGlmICghaXNfc3RyaW5nKCRhbGlhcykpDQogICAgICAgICByZXR1cm4gZmFsc2U7DQogICAgICAvLyBodHRwOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL2xhbmd1YWdlLnZhcmlhYmxlcy5iYXNpY3MucGhwDQogICAgICBpZiAocHJlZ19tYXRjaCgnL15bYS16QS1aX1x4N2YtXHhmZl1bYS16QS1aMC05X1wtXHg3Zi1ceGZmXSokLycsICRhbGlhcykpIHsNCiAgICAgICAgIHJldHVybiB0cnVlOw0KICAgICAgfSBlbHNlIHsNCiAgICAgICAgIHJldHVybiBmYWxzZTsNCiAgICAgIH0NCiAgIH0NCg0KDQp9DQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/lib/class.WidgetQuery.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBXaWRnZXRRdWVyeSBleHRlbmRzIENtc0RiUXVlcnlCYXNlIHsNCg0KICAgcHVibGljIGZ1bmN0aW9uIF9fY29uc3RydWN0KCRhcmdzID0gJycpIHsNCiAgICAgICAgIHBhcmVudDo6X19jb25zdHJ1Y3QoJGFyZ3MpOw0KICAgICAgICAgaWYgKCBpc3NldCgkdGhpcy0+X2FyZ3NbJ2xpbWl0J10pICkgJHRoaXMtPl9saW1pdCA9IChpbnQpICR0aGlzLT5fYXJnc1snbGltaXQnXTsNCiAgICAgIH0NCg0KICAgcHVibGljIGZ1bmN0aW9uIGV4ZWN1dGUoKSB7DQogICAgICBpZiggIWlzX251bGwoJHRoaXMtPl9ycykgKSByZXR1cm47DQogICAgICAkc3FsID0gJ1NFTEVDVCBTUUxfQ0FMQ19GT1VORF9ST1dTIFcuKiBGUk9NICcuQ01TX0RCX1BSRUZJWC4nbW9kdWxlX3dpZGdldHMgQVMgVyc7DQogICAgICBpZiggaXNzZXQoJHRoaXMtPl9hcmdzWydhY3RpdmUnXSkgKSB7DQogICAgICAgICAvLyBzdG9yZSBvbmx5IGFjdGl2ZSBvciBub24tYWN0aXZlIGl0ZW1zDQogICAgICAgICAkdG1wID0gJHRoaXMtPl9hcmdzWydhY3RpdmUnXTsNCiAgICAgICAgIGlmKCAkdG1wID09PSAwICkgew0KICAgICAgICAgICAgJHNxbCAuPSAnIFdIRVJFIGFjdGl2ZSA9IDAnOw0KICAgICAgICAgfSBlbHNlIGlmKCAkdG1wID09PSAxICkgew0KICAgICAgICAgICAgJHNxbCAuPSAnIFdIRVJFIGFjdGl2ZSA9IDEnOw0KICAgICAgICAgfQ0KICAgICAgfQ0KICAgICAgJHNxbCAuPSAnIE9SREVSIEJZIHBvc2l0aW9uJzsNCiAgICAgICRkYiA9IFxjbXNfdXRpbHM6OmdldF9kYigpOw0KICAgICAgJHRoaXMtPl9ycyA9ICRkYi0+U2VsZWN0TGltaXQoJHNxbCwkdGhpcy0+X2xpbWl0LCR0aGlzLT5fb2Zmc2V0KTsNCiAgICAgIGlmICggJGRiLT5FcnJvck1zZygpICkgdGhyb3cgbmV3IFxDbXNTUUxFcnJvckV4Y2VwdGlvbiggJGRiLT5zcWwuJyAtLSAnLiRkYi0+RXJyb3JNc2coKSApOw0KICAgICAgJHRoaXMtPl90b3RhbG1hdGNoaW5ncm93cyA9ICRkYi0+R2V0T25lKCdTRUxFQ1QgRk9VTkRfUk9XUygpJyk7DQogICB9DQoNCiAgIHB1YmxpYyBmdW5jdGlvbiAmR2V0T2JqZWN0KCkgew0KICAgICAgJG9iaiA9IG5ldyBXaWRnZXRJdGVtOw0KICAgICAgJG9iai0+ZmlsbF9mcm9tX2FycmF5KCR0aGlzLT5maWVsZHMpOw0KICAgICAgcmV0dXJuICRvYmo7DQogICB9DQoNCiAgIHB1YmxpYyBmdW5jdGlvbiB1cGRhdGVQb3NpdGlvbnMoKSB7DQogICAgICAkZGIgPSBcY21zX3V0aWxzOjpnZXRfZGIoKTsNCiAgICAgICRzcWwgPSAnU0VUIEByb3dudW1iZXIgPSAwJzsNCiAgICAgICRyZXMgPSAkZGItPkV4ZWN1dGUoJHNxbCk7DQogICAgICAkc3FsID0gJ1VQREFURSAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzDQogICAgICAgICBTRVQgcG9zaXRpb24gPSAoQHJvd251bWJlcjo9QHJvd251bWJlcisxKQ0KICAgICAgICAgT1JERVIgQlkgcG9zaXRpb24nOw0KICAgICAgJHJlcyA9ICRkYi0+RXhlY3V0ZSgkc3FsKTsNCiAgICAgIGlmICggJGRiLT5FcnJvck1zZygpICkgdGhyb3cgbmV3IFxDbXNTUUxFcnJvckV4Y2VwdGlvbiggJGRiLT5zcWwuJyAtLSAnLiRkYi0+RXJyb3JNc2coKSApOw0KICAgICAgcmV0dXJuICRyZXM7DQogICB9DQoNCg0KfQ0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/lib/class.widget_tools.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyB3aWRnZXRfdG9vbHMgew0KDQogICAgcHJpdmF0ZSAkYmxvY2tfbmFtZSA9ICcnOw0KICAgIHByaXZhdGUgJHZhbHVlID0gJyc7DQogICAgcHJpdmF0ZSAkYWRkaW5nID0gZmFsc2U7DQogICAgcHJpdmF0ZSAkb3B0aW9ucyA9IGFycmF5KCk7DQogICAgcHJpdmF0ZSAkYWxpYXMgPSAnJzsNCiAgICBwcml2YXRlICR0eHQgPSAnJzsNCg0KICAgIC8vcHJpdmF0ZSAkaXNfZGF0ZXBpY2tlcl9saWJfbG9hZCA9IGZhbHNlOw0KDQogICAgLyoqDQogICAgICoNCiAgICAgKiBAcGFyYW0gc3RyaWJuZyAkYmxvY2tOYW1lDQogICAgICogQHBhcmFtIHN0cmluZyAkdmFsdWUNCiAgICAgKiBAcGFyYW0gYXJyYXkgJHBhcmFtcw0KICAgICAqIEBwYXJhbSBib29sZWFuICRhZGRpbmcNCiAgICAgKi8NCiAgICBwdWJsaWMgZnVuY3Rpb24gX19jb25zdHJ1Y3QoJGJsb2NrTmFtZSwgJHZhbHVlLCAkcGFyYW1zLCAkYWRkaW5nKSB7DQoNCiAgICAgICAgJHRoaXMtPmJsb2NrX25hbWUgPSAkYmxvY2tOYW1lOw0KICAgICAgICAkdGhpcy0+YWxpYXMgPSBtdW5nZV9zdHJpbmdfdG9fdXJsKCRibG9ja05hbWUsIHRydWUpOw0KICAgICAgICAkdGhpcy0+dmFsdWUgPSAkdmFsdWU7DQogICAgICAgICR0aGlzLT5hZGRpbmcgPSAkYWRkaW5nOw0KDQogICAgICAgICRtb2QgPSBcY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdXaWRnZXRzJyk7DQoNCiAgICAgICAgLy8gc2V0IG9wdGlvbnMgJiBhbGwgZGVmYXVsdHMNCiAgICAgICAgJG9wdGlvbnMgPSBhcnJheSgNCiAgICAgICAgICAgIC8vICdhbGxvd2R1cGxpY2F0ZXMnID0+IGZhbHNlLA0KICAgICAgICAgICAgLy8gJ21heF9zZWxlY3RlZCcgPT4gLTEsDQogICAgICAgICAgICAnY2F0ZWdvcnknID0+ICcnLA0KICAgICAgICAgICAgJ2Rlc2NyaXB0aW9uJyA9PiAnJywNCiAgICAgICAgICAgICdsYWJlbF9sZWZ0JyA9PiAnJywNCiAgICAgICAgICAgICdsYWJlbF9yaWdodCcgPT4gJycNCiAgICAgICAgKTsNCiAgICAgICAgaWYgKCAhZW1wdHkoJHBhcmFtcykgKSB7DQogICAgICAgICAgICBmb3JlYWNoICgkb3B0aW9ucyBhcyAka2V5ID0+ICRvcHRpb24pIHsNCiAgICAgICAgICAgICAgICBpZiAoIGlzU2V0KCRwYXJhbXNbJGtleV0pICYmICRwYXJhbXNbJGtleV0hPScnICkNCiAgICAgICAgICAgICAgICAgICAgJG9wdGlvbnNbJGtleV0gPSAkcGFyYW1zWyRrZXldOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgICR0aGlzLT5vcHRpb25zID0gJG9wdGlvbnM7DQogICAgfQ0KDQogICAgLyoqDQogICAgICogIGdldCBjb250ZW50IGJsb2NrDQogICAgICogQHJldHVybiBzdHJpbmcNCiAgICAgKi8NCiAgICBwdWJsaWMgZnVuY3Rpb24gZ2V0X2NvbnRlbnRfYmxvY2tfaW5wdXQoKSB7DQogICAgICAgICRtb2QgPSBcY21zX3V0aWxzOjpnZXRfbW9kdWxlKCdXaWRnZXRzJyk7DQogICAgICAgICRkZXNjcmlwdGlvbiA9ICR0aGlzLT5vcHRpb25zWydkZXNjcmlwdGlvbiddOw0KICAgICAgICAkY2F0ZWdvcnkgPSAkdGhpcy0+b3B0aW9uc1snY2F0ZWdvcnknXTsNCiAgICAgICAgJGxhYmVsTGVmdCA9ICAkdGhpcy0+b3B0aW9uc1snbGFiZWxfbGVmdCddOw0KICAgICAgICAkbGFiZWxSaWdodCA9ICAkdGhpcy0+b3B0aW9uc1snbGFiZWxfcmlnaHQnXTsNCg0KICAgICAgICAkc2VsZWN0ZWRMaXN0ID0gZXhwbG9kZSgnLCcsICR0aGlzLT52YWx1ZSk7DQogICAgICAgICR0aGlzLT5nZXRXaWRnZXRMaXN0KCRjYXRlZ29yeSk7DQogICAgICAgICRhdmFpbGFibGUgPSAkdGhpcy0+d2lkZ2V0TGlzdDsNCiAgICAgICAgJHNlbGVjdGVkID0gYXJyYXkoKTsNCiAgICAgICAgZm9yZWFjaCAoJHNlbGVjdGVkTGlzdCBhcyAkaXRlbSkgew0KICAgICAgICAgICAgaWYgKCBhcnJheV9rZXlfZXhpc3RzKCRpdGVtLCAkYXZhaWxhYmxlKSApIHsNCiAgICAgICAgICAgICAgICAkc2VsZWN0ZWRbJGl0ZW1dID0gJGF2YWlsYWJsZVskaXRlbV07DQogICAgICAgICAgICAgICAgdW5zZXQoJGF2YWlsYWJsZVskaXRlbV0pOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQoNCiAgICAgICAgJGlkID0gJyc7DQogICAgICAgICRuYW1lID0gJHRoaXMtPmJsb2NrX25hbWU7DQogICAgICAgICRzZWxlY3RlZF9zdHIgPSAkdGhpcy0+dmFsdWU7DQogICAgICAgIC8vICRhbGxvd2R1cGxpY2F0ZXMgPSAkdGhpcy0+b3B0aW9uc1siYWxsb3dkdXBsaWNhdGVzIl07DQogICAgICAgIC8vICRtYXhfc2VsZWN0ZWQgPSAkdGhpcy0+b3B0aW9uc1sibWF4X3NlbGVjdGVkIl07DQogICAgICAgICR0ZW1wbGF0ZSA9ICcnOw0KDQogICAgICAgIC8vIHNtYXJ0eSBwcm9jZXNzaW5nIHRvIGRpc3BsYXkgYWRtaW4gcGFnZQ0KICAgICAgICAkc21hcnR5ID0gU21hcnR5X0NNUzo6Z2V0X2luc3RhbmNlKCk7DQogICAgICAgICR0cGwgPSAkc21hcnR5LT5DcmVhdGVUZW1wbGF0ZSgkbW9kLT5HZXRUZW1wbGF0ZVJlc291cmNlKCdzb3J0YWJsZWxpc3RfdGVtcGxhdGUudHBsJyksIG51bGwsIG51bGwsICRzbWFydHkpOw0KICAgICAgICAkdHBsLT5hc3NpZ24oJ3NlbGVjdGFyZWFfcHJlZml4JywkaWQuJG5hbWUpOw0KICAgICAgICAkdHBsLT5hc3NpZ24oJ3NlbGVjdGVkX3N0cicsJHNlbGVjdGVkX3N0cik7DQogICAgICAgICR0cGwtPmFzc2lnbignc2VsZWN0ZWQnLCRzZWxlY3RlZCk7DQogICAgICAgICR0cGwtPmFzc2lnbignYXZhaWxhYmxlJywgJGF2YWlsYWJsZSk7DQogICAgICAgICR0cGwtPmFzc2lnbignZGVzY3JpcHRpb24nLCAkZGVzY3JpcHRpb24pOw0KICAgICAgICAkdHBsLT5hc3NpZ24oJ2xhYmVsTGVmdCcsICRsYWJlbExlZnQpOw0KICAgICAgICAkdHBsLT5hc3NpZ24oJ2xhYmVsUmlnaHQnLCAkbGFiZWxSaWdodCk7DQogICAgICAgICR0cGwtPmFzc2lnbignbW9kJywkbW9kKTsNCg0KICAgICAgICAkY2JUZW1wbGF0ZSA9ICR0cGwtPmZldGNoKCk7DQoNCiAgICAgICAgcmV0dXJuICRjYlRlbXBsYXRlOw0KICAgIH0NCg0KDQogICAgcHJpdmF0ZSBmdW5jdGlvbiBnZXRXaWRnZXRMaXN0KCRjYXRlZ29yeV9hbGlhcz0nJykgew0KICAgICAgICAkZGIgPSBcY21zX3V0aWxzOjpnZXRfZGIoKTsNCiAgICAgICAgaWYgKCRjYXRlZ29yeV9hbGlhcz09JycpIHsNCiAgICAgICAgICAgICRzcWwgPSAnU0VMRUNUIGFsaWFzLHRpdGxlIEZST00gJy5DTVNfREJfUFJFRklYLidtb2R1bGVfd2lkZ2V0cw0KICAgICAgICAgICAgICAgIFdIRVJFIGFjdGl2ZT0xJzsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICAgICRzcWwgPSAnU0VMRUNUIGFsaWFzLHRpdGxlIEZST00gJy5DTVNfREJfUFJFRklYLidtb2R1bGVfd2lkZ2V0cyBXDQogICAgICAgICAgICAgICAgSk9JTiAnLkNNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzX2NhdGVnb3J5IFdDDQogICAgICAgICAgICAgICAgT04gVy5jYXRlZ29yeV9pZD1XQy5jYXRlZ29yeV9pZA0KICAgICAgICAgICAgICAgIFdIRVJFIFcuYWN0aXZlPTEgQU5EIFdDLmNhdGVnb3J5X2FsaWFzPSInLiRjYXRlZ29yeV9hbGlhcy4nIic7DQogICAgICAgIH0NCg0KICAgICAgICAkcmVzID0gJGRiLT5HZXRBbGwoJHNxbCk7DQogICAgICAgICR3aWRnZXRzID0gYXJyYXkoKTsNCiAgICAgICAgZm9yZWFjaCAoJHJlcyBhcyAkaXRlbSkgew0KICAgICAgICAgICAgJHdpZGdldHNbJGl0ZW1bJ2FsaWFzJ11dID0gJGl0ZW1bJ3RpdGxlJ107DQogICAgICAgIH0NCiAgICAgICAgJHRoaXMtPndpZGdldExpc3QgPSAkd2lkZ2V0czsNCiAgICB9DQoNCg0KICAgIHB1YmxpYyBmdW5jdGlvbiBnZXRfY29udGVudF9ibG9ja19qcygpIHsNCiAgICAgICAgJGpzID0gJw0KICAgICAgICAgICAgPHNjcmlwdCBsYW5ndWFnZT0iamF2YXNjcmlwdCIgc3JjPSIuLi9tb2R1bGVzL1dpZGdldHMvbGliL2pzL3dpZGdldF9jb250ZW50X2Jsb2NrLmpzIj48L3NjcmlwdD4nOw0KDQogICAgICAgIHJldHVybiAkanM7DQogICAgfQ0KDQoNCn0NCg0KPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/css/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/css/widgets_admin.css</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Lyogd2lkZ2V0c19hZG1pbi5jc3MgKi8NCg0KLnNvcnRhYmxlLXdpZGdldC1saXN0IHRyIHtjdXJzb3I6bW92ZTt9DQouc29ydGFibGUtd2lkZ2V0LWxpc3QgLnVpLXNvcnRhYmxlLWhlbHBlciB7Ym9yZGVyOjFweCBzb2xpZCAjQ0NDO30NCiNsb2FkZXIge3BhZGRpbmctbGVmdDo1MHB4O30NCg==]]></data>
	</file>
	<file>
	  <filename>/lib/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/images/loading.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA==]]></data>
	</file>
	<file>
	  <filename>/lib/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBEVU1NWSBIVE1MIEZJTEUgLS0+]]></data>
	</file>
	<file>
	  <filename>/lib/js/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/js/widgets_admin.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[Ly8gd2lkZ2V0c19hZG1pbi5qcw0KJChmdW5jdGlvbigpIHsNCiAgICQoJy5zb3J0YWJsZS13aWRnZXQtbGlzdCcpLnNvcnRhYmxlKHsNCiAgICAgIGRlbGF5OiAxNTAsDQogICAgICByZXZlcnQ6IDMwMCwNCiAgICAgIHBsYWNlaG9sZGVyOiAndWktc3RhdGUtaGlnaGxpZ2h0JywNCiAgICAgIGhlbHBlcjogZnVuY3Rpb24gKGV2ZW50LCB1aSkgew0KICAgICAgICAgdWkuY2hpbGRyZW4oKS5lYWNoKGZ1bmN0aW9uKCkgeyAvLyBmaXhlcyB3aWR0aCAmIGhlaWdodCBvZiBkcmFnZ2VkIGNlbGxzDQogICAgICAgICAgICAkKHRoaXMpLndpZHRoKCQodGhpcykud2lkdGgoKSkuaGVpZ2h0KCQodGhpcykuaGVpZ2h0KCkpOw0KICAgICAgICAgfSk7DQogICAgICAgICByZXR1cm4gdWk7DQogICAgICB9LA0KICAgICAgc3RvcDogZnVuY3Rpb24gKGV2ZW50LCB1aSkgew0KICAgICAgICAgJCh1aS5pdGVtKS5wYXJlbnQoKS5jaGlsZHJlbigpLmVhY2goZnVuY3Rpb24oIGluZGV4ICkgew0KICAgICAgICAgICAgJCh0aGlzKS5yZW1vdmVDbGFzcygncm93MSByb3cyJykuYWRkQ2xhc3MoJ3JvdycrKGluZGV4JTIrMSkpOw0KICAgICAgICAgfSk7DQogICAgICAgICB2YXIgbW92ZVRvQWZ0ZXIgPSAkKHVpLml0ZW0pLnByZXYoJ3RyJykuZGF0YSgnaWQnKTsNCiAgICAgICAgIGlmICh0eXBlb2YgbW92ZVRvQWZ0ZXI9PSd1bmRlZmluZWQnKSB7DQogICAgICAgICAgICBtb3ZlVG9BZnRlciA9ICdfYWZ0ZXI9JyArICcwJzsNCiAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICBtb3ZlVG9BZnRlciA9ICdfYWZ0ZXI9JyArIG1vdmVUb0FmdGVyOw0KICAgICAgICAgfQ0KICAgICAgICAgdmFyIHJlb3JkZXJVcmwgPSAkKHVpLml0ZW0pLmRhdGEoJ3Jlb3JkZXInKS5yZXBsYWNlKCdfYWZ0ZXI9LTEnLCBtb3ZlVG9BZnRlcikgKyAnJnNob3d0ZW1wbGF0ZT1mYWxzZSc7DQogICAgICAgICB2YXIgbG9hZGluZ0ljb24gPSAkKCcjbG9hZGVyJykuZGF0YSgnaWNvbicpOw0KICAgICAgICAgaWYgKGxvYWRpbmdJY29uIT0nJykgew0KICAgICAgICAgICAgbG9hZGluZ0ljb24gPSAnPGltZyBzcmM9IicrbG9hZGluZ0ljb24rJyIgYWx0PSJ1cGRhdGluZyI+JzsNCiAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICBsb2FkaW5nSWNvbiA9ICd1cGRhdGluZyc7DQogICAgICAgICB9DQogICAgICAgICAkKCcjbG9hZGVyJykuaHRtbChsb2FkaW5nSWNvbikubG9hZCggcmVvcmRlclVybCApOw0KICAgICAgfQ0KICAgfSk7DQoNCn0pOw0KDQo=]]></data>
	</file>
	<file>
	  <filename>/lib/js/widget_content_block.js</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[JChmdW5jdGlvbigpIHsNCg0KICAgICQoJ3VsLnNvcnRhYmxlLXdpZGdldHMnKS5lYWNoKGZ1bmN0aW9uKCkgew0KICAgICAgICB2YXIgJHBhcmVudCA9ICQodGhpcykuY2xvc2VzdCgnLndpZGdldC1jYicpOw0KICAgICAgICB2YXIgJHNlbGVjdGVkID0gJHBhcmVudC5maW5kKCd1bC5zZWxlY3RlZC13aWRnZXRzJyk7DQogICAgICAgICQodGhpcykuc29ydGFibGUoew0KICAgICAgICAgICAgY29ubmVjdFdpdGg6ICRzZWxlY3RlZCwNCiAgICAgICAgICAgIGRlbGF5OiAxNTAsDQogICAgICAgICAgICByZXZlcnQ6IDMwMCwNCiAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAndWktc3RhdGUtaGlnaGxpZ2h0JywNCiAgICAgICAgICAgIGl0ZW1zOiAnbGk6bm90KC5uby1zb3J0KScsDQogICAgICAgICAgICBoZWxwZXI6IGZ1bmN0aW9uIChldmVudCwgdWkpIHsNCiAgICAgICAgICAgICAgICBpZiAoIXVpLmhhc0NsYXNzKCdzZWxlY3RlZCcpKSB7DQogICAgICAgICAgICAgICAgICAgIHVpLmFkZENsYXNzKCdzZWxlY3RlZCcpDQogICAgICAgICAgICAgICAgICAgICAgLnNpYmxpbmdzKCkNCiAgICAgICAgICAgICAgICAgICAgICAucmVtb3ZlQ2xhc3MoJ3NlbGVjdGVkJyk7DQogICAgICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIHZhciBlbGVtZW50cyA9IHVpLnBhcmVudCgpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY2hpbGRyZW4oJy5zZWxlY3RlZCcpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY2xvbmUoKSwNCiAgICAgICAgICAgICAgICAgICAgaGVscGVyID0gJCgnPGxpLz4nKTsNCiAgICAgICAgICAgICAgICB1aS5kYXRhKCdtdWx0aWRyYWcnLCBlbGVtZW50cykuc2libGluZ3MoJy5zZWxlY3RlZCcpLnJlbW92ZSgpOw0KICAgICAgICAgICAgICAgIHJldHVybiBoZWxwZXIuYXBwZW5kKGVsZW1lbnRzKTsNCiAgICAgICAgICAgIH0sDQogICAgICAgICAgICBzdG9wOiBmdW5jdGlvbiAoZXZlbnQsIHVpKSB7DQogICAgICAgICAgICAgICAgdmFyIGVsZW1lbnRzID0gdWkuaXRlbS5kYXRhKCdtdWx0aWRyYWcnKTsNCiAgICAgICAgICAgICAgICB2YXIgJHVsU2VsZWN0ZWQgPSAkKHVpLml0ZW0pLnBhcmVudCgpOw0KICAgICAgICAgICAgICAgIHVpLml0ZW0uYWZ0ZXIoZWxlbWVudHMpLnJlbW92ZSgpOw0KICAgICAgICAgICAgICAgIHVwZGF0ZVdpZGdldENCSW5wdXQoJHVsU2VsZWN0ZWQpOw0KICAgICAgICAgICAgfSwNCiAgICAgICAgICAgIHJlY2VpdmU6IGZ1bmN0aW9uKGV2ZW50LCB1aSkgew0KICAgICAgICAgICAgICAgIHZhciBlbGVtZW50cyA9IHVpLml0ZW0uZGF0YSgnbXVsdGlkcmFnJyk7DQogICAgICAgICAgICAgICAgJCh1aS5pdGVtKS5wYXJlbnQoKS5jaGlsZHJlbignLnBsYWNlaG9sZGVyJykuYWRkQ2xhc3MoJ2hpZGRlbicpOw0KICAgICAgICAgICAgICAgICQoZWxlbWVudHMpLnJlbW92ZUNsYXNzKCdzZWxlY3RlZCB1aS1zdGF0ZS1ob3ZlcicpDQogICAgICAgICAgICAgICAgICAgICAgICAgICAuZmluZCgnLnNvcnRhYmxlLXJlbW92ZScpLnJlbW92ZUNsYXNzKCdoaWRkZW4nKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgfSk7DQogICAgfSk7DQoNCiAgICAvLyByZW1vdmUgZnJvbSBzZWxlY3RlZCBsaXN0DQogICAgJChkb2N1bWVudCkub24oJ2NsaWNrJywgJyNzZWxlY3RlZC13aWRnZXRzIC5zb3J0YWJsZS1yZW1vdmUnLCBmdW5jdGlvbihlKSB7DQogICAgICAgIHZhciAkdWxTZWxlY3RlZCA9ICQodGhpcykuY2xvc2VzdCgndWwuc2VsZWN0ZWQtd2lkZ2V0cycpOw0KICAgICAgICB2YXIgJHVsQXZhaWxhYmxlID0gJCh0aGlzKS5jbG9zZXN0KCcud2lkZ2V0LWNiJykuZmluZCgnLmF2YWlsYWJsZS13aWRnZXRzJyk7DQogICAgICAgICQodGhpcykuYWRkQ2xhc3MoJ2hpZGRlbicpDQogICAgICAgICAgICAgICAucGFyZW50KCdsaScpLnJlbW92ZUNsYXNzKCduby1zb3J0JykNCiAgICAgICAgICAgICAgIC5hcHBlbmRUbygkdWxBdmFpbGFibGUpOw0KICAgICAgICB1cGRhdGVXaWRnZXRDQklucHV0KCR1bFNlbGVjdGVkKTsNCg0KICAgICAgICBpZiAoICQoJHVsU2VsZWN0ZWQpLmNoaWxkcmVuKCkubGVuZ3RoPT0xICkNCiAgICAgICAgICAgICR1bFNlbGVjdGVkLmNoaWxkcmVuKCcucGxhY2Vob2xkZXInKS5yZW1vdmVDbGFzcygnaGlkZGVuJyk7DQogICAgICAgIGUucHJldmVudERlZmF1bHQoKTsNCiAgICB9KTsNCg0KICAgIGZ1bmN0aW9uIHVwZGF0ZVdpZGdldENCSW5wdXQoJHVsU2VsZWN0ZWQpIHsNCiAgICAgICAgdmFyICRhbGxTZWxlY3RlZCA9ICR1bFNlbGVjdGVkLmNoaWxkcmVuKCdsaTpub3QoLnBsYWNlaG9sZGVyKScpOw0KICAgICAgICB2YXIgJHRhcmdldElucHV0ID0gJCggJyMnICsgJHVsU2VsZWN0ZWQuZGF0YSgnY21zbXMtY2ItaW5wdXQnKSApOw0KICAgICAgICB2YXIgc2VsZWN0ZWRTdHIgPSAnJzsNCiAgICAgICAgJGFsbFNlbGVjdGVkLmVhY2goZnVuY3Rpb24oKSB7DQogICAgICAgICAgICBpZiAoc2VsZWN0ZWRTdHI9PScnKSB7DQogICAgICAgICAgICAgICAgc2VsZWN0ZWRTdHIgPSAkKHRoaXMpLmRhdGEoJ2Ntc21zLWl0ZW0taWQnKTsNCiAgICAgICAgICAgIH0gZWxzZSB7DQogICAgICAgICAgICAgICAgc2VsZWN0ZWRTdHIgPSBzZWxlY3RlZFN0cisnLCcrJCh0aGlzKS5kYXRhKCdjbXNtcy1pdGVtLWlkJyk7DQogICAgICAgICAgICB9DQogICAgICAgIH0pOw0KICAgICAgICAkdGFyZ2V0SW5wdXQudmFsKHNlbGVjdGVkU3RyKTsNCiAgICB9DQoNCn0pOw0K]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiggIWRlZmluZWQoJ0NNU19WRVJTSU9OJykgKSBleGl0Ow0KDQokdWlkID0gbnVsbDsNCmlmKCBjbXNtcygpLT50ZXN0X3N0YXRlKENtc0FwcDo6U1RBVEVfSU5TVEFMTCkgKSB7DQogICAkdWlkID0gMTsgLy8gaGFyZGNvZGUgdG8gZmlyc3QgdXNlcg0KfSBlbHNlIHsNCiAgICR1aWQgPSBnZXRfdXNlcmlkKCk7DQp9DQoNCi8vIHNldHVwIE1vZHVsZSBwZXJtaXNzaW9ucw0KJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oV2lkZ2V0czo6TUFOQUdFX1BFUk0sJ1dpZGdldHMgLSBNYW5hZ2UnKTsNCiR0aGlzLT5DcmVhdGVQZXJtaXNzaW9uKFdpZGdldHM6OlVTRV9QRVJNLCdXaWRnZXRzIC0gVXNlJyk7DQoNCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdjdXN0b21Nb2R1bGVOYW1lJywgJ1dpZGdldHMnKTsNCiR0aGlzLT5TZXRQcmVmZXJlbmNlKCdhZG1pblNlY3Rpb24nLCAnY29udGVudCcpOw0KJHRoaXMtPlNldFByZWZlcmVuY2UoJ3N0eWxlT3B0aW9ucycsICR0aGlzLT5MYW5nKCdkZWZhdWx0X3N0eWxlX29wdGlvbnMnKSk7DQoNCi8vIENyZWF0ZSBUYWJsZXMNCiRkYiA9ICR0aGlzLT5HZXREYigpOw0KJGRpY3QgPSBOZXdEYXRhRGljdGlvbmFyeSgkZGIpOw0KJHRhYm9wdGFycmF5ID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsNCg0KLy8gY3JlYXRlIHdpZGdldHMgdGFibGUNCiRmaWVsZHMgPSAiDQogICBpZCBJIEtFWSBBVVRPLA0KICAgY2F0ZWdvcnlfaWQgSSBLRVksDQogICB0aXRsZSBDKDI1NSkgTk9UTlVMTCwNCiAgIGFsaWFzIEMoMjU1KSBLRVksDQogICBwb3NpdGlvbiBJLA0KICAgYWN0aXZlIEkxLA0KICAgaGVhZGluZyBDKDI1NSksDQogICBjb250ZW50IFgsDQogICBsaW5rX3RvIEksDQogICBsaW5rX3RleHQgQygyNTUpLA0KICAgc3R5bGVfb3B0aW9ucyBYDQogICAiOw0KJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKENNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzJywgJGZpZWxkcywgJHRhYm9wdGFycmF5KTsNCiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsNCg0KLy8gY3JlYXRlIGNhdGVnb3J5IHRhYmxlDQokZmllbGRzID0gJw0KICAgY2F0ZWdvcnlfaWQgSSBLRVkgQVVUTywNCiAgIGNhdGVnb3J5X25hbWUgQygyNTUpLA0KICAgY2F0ZWdvcnlfYWxpYXMgQygyNTUpIE5PVE5VTEwsDQogICBkZWZhdWx0X2NhdGVnb3J5IEkxDQogICAnOw0KJHNxbGFycmF5ID0gJGRpY3QtPkNyZWF0ZVRhYmxlU1FMKENNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzX2NhdGVnb3J5JywgJGZpZWxkcywgJHRhYm9wdGFycmF5KTsNCiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsNCg0KLy8gY3JlYXRlIGRlZmF1bHQgY2F0ZWdvcnkNCiRzcWwgPSAnSU5TRVJUIElOVE8gJy5DTVNfREJfUFJFRklYLidtb2R1bGVfd2lkZ2V0c19jYXRlZ29yeSAoY2F0ZWdvcnlfbmFtZSwgZGVmYXVsdF9jYXRlZ29yeSkgVkFMVUVTICg/LD8pJzsNCiRkYnIgPSAkZGItPkV4ZWN1dGUoJHNxbCwgYXJyYXkoJ0dlbmVyYWwnLCBUUlVFKSk7DQoNCg0KDQovLyBTZXR1cCBTdW1tYXJ5IHRlbXBsYXRlDQp0cnkgew0KICAkdGVtcGxhdGVfdHlwZSA9IG5ldyBDbXNMYXlvdXRUZW1wbGF0ZVR5cGUoKTsNCiAgJHRlbXBsYXRlX3R5cGUtPnNldF9vcmlnaW5hdG9yKCR0aGlzLT5HZXROYW1lKCkpOw0KICAkdGVtcGxhdGVfdHlwZS0+c2V0X25hbWUoJ1RlbXBsYXRlJyk7DQogICR0ZW1wbGF0ZV90eXBlLT5zZXRfZGZsdF9mbGFnKFRSVUUpOw0KICAkdGVtcGxhdGVfdHlwZS0+c2V0X2xhbmdfY2FsbGJhY2soJ1dpZGdldHM6OnBhZ2VfdHlwZV9sYW5nX2NhbGxiYWNrJyk7DQogICR0ZW1wbGF0ZV90eXBlLT5zZXRfY29udGVudF9jYWxsYmFjaygnV2lkZ2V0czo6cmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzJyk7DQogICR0ZW1wbGF0ZV90eXBlLT5yZXNldF9jb250ZW50X3RvX2ZhY3RvcnkoKTsNCiAgJHRlbXBsYXRlX3R5cGUtPnNhdmUoKTsNCn0NCmNhdGNoKCBDbXNFeGNlcHRpb24gJGUgKSB7DQogIC8vIGxvZyBpdA0KICBkZWJ1Z190b19sb2coX19GSUxFX18uJzonLl9fTElORV9fLicgJy4kZS0+R2V0TWVzc2FnZSgpKTsNCiAgYXVkaXQoJycsJHRoaXMtPkdldE5hbWUoKSwnSW5zdGFsbGF0aW9uIEVycm9yOiAnLiRlLT5HZXRNZXNzYWdlKCkpOw0KfQ0KDQp0cnkgew0KICAkZm4gPSBkaXJuYW1lKF9fRklMRV9fKS5ESVJFQ1RPUllfU0VQQVJBVE9SLid0ZW1wbGF0ZXMnLkRJUkVDVE9SWV9TRVBBUkFUT1IuJ29yaWdfdGVtcGxhdGUudHBsJzsNCiAgaWYoIGZpbGVfZXhpc3RzKCAkZm4gKSApIHsNCiAgICAkdGVtcGxhdGUgPSBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsNCiAgICAkdHBsID0gbmV3IENtc0xheW91dFRlbXBsYXRlKCk7DQogICAgJHRwbC0+c2V0X25hbWUoJ1dpZGdldHMgU2FtcGxlJyk7DQogICAgJHRwbC0+c2V0X293bmVyKCR1aWQpOw0KICAgICR0cGwtPnNldF9jb250ZW50KCR0ZW1wbGF0ZSk7DQogICAgJHRwbC0+c2V0X3R5cGUoJHRlbXBsYXRlX3R5cGUpOw0KICAgICR0cGwtPnNldF90eXBlX2RmbHQoVFJVRSk7DQogICAgJHRwbC0+c2F2ZSgpOw0KICB9DQp9DQpjYXRjaCggQ21zRXhjZXB0aW9uICRlICkgew0KICAvLyBsb2cgaXQNCiAgZGVidWdfdG9fbG9nKF9fRklMRV9fLic6Jy5fX0xJTkVfXy4nICcuJGUtPkdldE1lc3NhZ2UoKSk7DQogIGF1ZGl0KCcnLCR0aGlzLT5HZXROYW1lKCksJ0luc3RhbGxhdGlvbiBFcnJvcjogJy4kZS0+R2V0TWVzc2FnZSgpKTsNCn0NCg==]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQppZiggIWRlZmluZWQoJ0NNU19WRVJTSU9OJykgKSBleGl0Ow0KDQokZGIgPSAkdGhpcy0+R2V0RGIoKTsNCg0KLy8gcmVtb3ZlIHRoZSBkYXRhYmFzZSB0YWJsZXMNCiRkaWN0ID0gTmV3RGF0YURpY3Rpb25hcnkoICRkYiApOw0KJHNxbGFycmF5ID0gJGRpY3QtPkRyb3BUYWJsZVNRTCggQ01TX0RCX1BSRUZJWC4nbW9kdWxlX3dpZGdldHMnKTsNCiRkaWN0LT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsNCiRzcWxhcnJheSA9ICRkaWN0LT5Ecm9wVGFibGVTUUwoIENNU19EQl9QUkVGSVguJ21vZHVsZV93aWRnZXRzX2NhdGVnb3J5Jyk7DQokZGljdC0+RXhlY3V0ZVNRTEFycmF5KCRzcWxhcnJheSk7DQoNCi8vIHJlbW92ZSB0aGUgcGVybWlzc2lvbnMNCiR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKFdpZGdldHM6Ok1BTkFHRV9QRVJNKTsNCiR0aGlzLT5SZW1vdmVQZXJtaXNzaW9uKFdpZGdldHM6OlVTRV9QRVJNKTsNCg0KLy8gcmVtb3ZlIGFsbCBwcmVmZXJlbmNlcw0KJHRoaXMtPlJlbW92ZVByZWZlcmVuY2UoKTsNCg0KLy8gcmVtb3ZlIHRlbXBsYXRlcyBhbmQgdGVtcGxhdGUgdHlwZXMNCnRyeSB7DQogICAkdHlwZXMgPSBDbXNMYXlvdXRUZW1wbGF0ZVR5cGU6OmxvYWRfYWxsX2J5X29yaWdpbmF0b3IoJHRoaXMtPkdldE5hbWUoKSk7DQogICBpZiggaXNfYXJyYXkoJHR5cGVzKSAmJiBjb3VudCgkdHlwZXMpICkgew0KICAgICAgZm9yZWFjaCggJHR5cGVzIGFzICR0eXBlICkgew0KICAgICAgICAgJHRlbXBsYXRlcyA9ICR0eXBlLT5nZXRfdGVtcGxhdGVfbGlzdCgpOw0KICAgICAgICAgaWYoIGlzX2FycmF5KCR0ZW1wbGF0ZXMpICYmIGNvdW50KCR0ZW1wbGF0ZXMpICkgew0KICAgICAgICAgICAgZm9yZWFjaCggJHRlbXBsYXRlcyBhcyAkdGVtcGxhdGUgKSB7DQogICAgICAgICAgICAgICAkdGVtcGxhdGUtPmRlbGV0ZSgpOw0KICAgICAgICAgICAgfQ0KICAgICAgICAgfQ0KICAgICAgICAgJHR5cGUtPmRlbGV0ZSgpOw0KICAgICAgfQ0KICAgfQ0KfQ0KY2F0Y2goIEV4Y2VwdGlvbiAkZSApIHsNCiAgLy8gbG9nIGl0DQogIGF1ZGl0KCcnLCR0aGlzLT5HZXROYW1lKCksJ1VuaW5zdGFsbCBFcnJvcjogJy4kZS0+R2V0TWVzc2FnZSgpKTsNCn0NCg==]]></data>
	</file>
	<file>
	  <filename>/moduleinfo.ini</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[W21vZHVsZV0KbmFtZSA9IFdpZGdldHMKdmVyc2lvbiA9IDEuMApkZXNjcmlwdGlvbiA9IAphdXRob3IgPSBDaHJpcyBUYXlsb3IKYXV0aG9yZW1haWwgPSBjaHJpc0BiaW5ub3ZhdGl2ZS5jby51awptaW5jbXN2ZXJzaW9uID0gMi4xLjUKbGF6eWxvYWRhZG1pbiA9IDAKbGF6eWxvYWRmcm9udGVuZCA9IDAK]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/admin_category.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKSB7DQogICAgICAkKCdhLmRlbF9jYXRlZ29yeScpLmNsaWNrKGZ1bmN0aW9uKCkgew0KICAgICAgICAgcmV0dXJuIGNvbmZpcm0oJ3skbW9kLT5MYW5nKCdjb25maXJtX2RlbGV0ZScsICRtb2QtPkxhbmcoJ3RpdGxlX2NhdGVnb3J5JykgKX0nKTsNCiAgICAgIH0pDQogICB9KTsNCjwvc2NyaXB0Pg0KDQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+DQogICA8YSBocmVmPSJ7Y21zX2FjdGlvbl91cmwgYWN0aW9uPWVkaXRfY2F0ZWdvcnl9Ij57YWRtaW5faWNvbiBpY29uPSduZXdvYmplY3QuZ2lmJ30geyRtb2QtPkxhbmcoJ2FkZF9jYXRlZ29yeScpfTwvYT4NCjwvZGl2Pg0Ke2lmICFlbXB0eSgkY2F0ZWdvcnkpfQ0KPHRhYmxlIGNsYXNzPSJwYWdldGFibGUiPg0KICAgPHRoZWFkPg0KICAgICAgPHRyPg0KICAgICAgICAgPHRoPnskbW9kLT5MYW5nKCd0aXRsZV9jYXRlZ29yeScpfTwvdGg+DQogICAgICAgICA8dGg+eyRtb2QtPkxhbmcoJ3RpdGxlX2FsaWFzJyl9PC90aD4NCiAgICAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPnskbW9kLT5MYW5nKCd0aXRsZV9kZWZhdWx0Jyl9PC90aD4NCiAgICAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+DQogICAgICAgICA8dGggY2xhc3M9InBhZ2VpY29uIj4mbmJzcDs8L3RoPg0KICAgICAgPC90cj4NCiAgIDwvdGhlYWQ+DQogICA8dGJvZHk+DQp7Zm9yZWFjaCAkY2F0ZWdvcnkgYXMgJGNhdH0NCntjbXNfYWN0aW9uX3VybCBhY3Rpb249ZWRpdF9jYXRlZ29yeSBjYXRlZ29yeV9pZD0kY2F0LT5jYXRlZ29yeV9pZCBhc3NpZ249J2VkaXRfdXJsJ30NCiAgICAgIDx0cj4NCiAgICAgICAgIDx0ZD48YSBocmVmPSJ7JGVkaXRfdXJsfSIgdGl0bGU9InskbW9kLT5MYW5nKCdlZGl0Jyl9Ij57JGNhdC0+Y2F0ZWdvcnlfbmFtZX08L2E+PC90ZD4NCiAgICAgICAgIDx0ZD57JGNhdC0+Y2F0ZWdvcnlfYWxpYXN9PC90ZD4NCntpZiAkY2F0LT5kZWZhdWx0X2NhdGVnb3J5fQ0KICAgICAgICAgPHRkPjxzcGFuIHRpdGxlPSJ7JG1vZC0+TGFuZygnaXNfZGVmYXVsdCcpfSI+e2FkbWluX2ljb24gaWNvbj0ndHJ1ZS5naWYnfTwvc3Bhbj48L3RkPg0KICAgICAgICAgPHRkPjxhIGhyZWY9InskZWRpdF91cmx9IiB0aXRsZT0ieyRtb2QtPkxhbmcoJ2VkaXQnKX0iPnthZG1pbl9pY29uIGljb249J2VkaXQuZ2lmJ308L2E+PC90ZD4NCiAgICAgICAgIDx0ZD48c3Bhbj4mbmJzcDs8L2E+PC90ZD4NCntlbHNlfQ0KICAgICAgICAgPHRkPjxhIGNsYXNzPSJpbml0LWFqYXgtdG9nZ2xlIGFwcHJvdmUtY2F0ZWdvcnkiIGhyZWY9IntjbXNfYWN0aW9uX3VybCBhY3Rpb249c2V0X2RlZmF1bHRfY2F0ZWdvcnkgY2F0ZWdvcnlfaWQ9JGNhdC0+Y2F0ZWdvcnlfaWR9IiB0aXRsZT0ieyRtb2QtPkxhbmcoJ3NldF9kZWZhdWx0Jyl9Ij57YWRtaW5faWNvbiBpY29uPSdmYWxzZS5naWYnfTwvYT48L3RkPg0KICAgICAgICAgPHRkPjxhIGhyZWY9InskZWRpdF91cmx9IiB0aXRsZT0ieyRtb2QtPkxhbmcoJ2VkaXQnKX0iPnthZG1pbl9pY29uIGljb249J2VkaXQuZ2lmJ308L2E+PC90ZD4NCiAgICAgICAgIDx0ZD48YSBjbGFzcz0iZGVsX2NhdGVnb3J5IiBocmVmPSJ7Y21zX2FjdGlvbl91cmwgYWN0aW9uPWRlbGV0ZV9jYXRlZ29yeSBjYXRlZ29yeV9pZD0kY2F0LT5jYXRlZ29yeV9pZH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygnZGVsZXRlJyl9Ij57YWRtaW5faWNvbiBpY29uPSdkZWxldGUuZ2lmJ308L2E+PC90ZD4NCnsvaWZ9DQogICAgICA8L3RyPg0Key9mb3JlYWNofQ0KICAgPC90Ym9keT4NCjwvdGFibGU+DQp7L2lmfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/admin_converter.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogYWRtaW5fY29udmVydGVyLnRwbA0KDQogICBOb3RlOiBkb24ndCBib3RoZXIgdG8gdXNlICRsYW5nIGFzIG9ubHkgZm9yIG93biB1c2UNCg0KKn0NCnskc3RhcnRmb3JtfQ0KDQogICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4xLiBJbXBvcnQgZnJvbSBMSVNFV2lkZ2V0czo8L3A+DQogICAgICA8ZGl2IGNsYXNzPSJwYWdld2FybmluZyAiPldhcm5pbmc6IFRoaXMgd2lsbCByZW1vdmUgQUxMIGV4aXRpbmcgV2lkZ2V0cyBkYXRhITwvZGl2Pg0KICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRidXR0b25faW1wb3J0X2Zyb21fTElTRVdpZGdldHN9PC9wPjxicj4NCiAgIDwvZGl2Pg0KICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Mi4gVXBkYXRlIGFsbCBQYWdlIFRlbXBsYXRlczwvcD4NCiAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPkVkaXQgdGhlIGNvbnRlbnQgYmxvY2sgdGFncyBhdCB0aGUgdG9wIG9mIGFsbCBwYWdlIHRlbXBsYXRlczo8YnI+DQo8cHJlPnJlcGxhY2U6IHtsaXRlcmFsfXtjb250ZW50X21vZHVsZSBtb2R1bGU9J0VDQjInIGZpZWxkPSdzb3J0YWJsZWxpc3QnIC4uLiB1ZHQ9J3dpZGdldHNTaWRlYmFyJyAuLi4NCndpdGg6ICAgIHtjb250ZW50X21vZHVsZSBtb2R1bGU9J1dpZGdldHMnIGNhdGVnb3J5PSdzaWRlYmFyV2lkZ2V0JyAuLi4gb3IgLi4uIGNhdGVnb3J5PSdwYWdlQm90dG9tV2lkZ2V0JyAuLi4gey9saXRlcmFsfTwvcHJlPjwvcD4NCiAgICAgIDxicj4NCiAgICAgIFJlcGxhY2UgdGhlIHRhZ3MgaW4gdGhlIGJvZHkgb2YgdGhlIHRlbXBsYXRlOjxicj4NCjxwcmU+cmVwbGFjZToge2xpdGVyYWx9e3dpZGdldHNTaWRlYmFyIG9wdGlvbnM9JHJpZ2h0U2lkZWJhck9wdGlvbnN9DQp3aXRoOiAgICB7V2lkZ2V0cyBpdGVtcz0kcmlnaHRTaWRlYmFyT3B0aW9uc30gey9saXRlcmFsfTwvcHJlPg0KICAgICAgPGJyPg0KPHByZT5yZXBsYWNlOiB7bGl0ZXJhbH17d2lkZ2V0c1BhZ2VCb3R0b20gb3B0aW9ucz0kcGFnZUJvdHRvbU9wdGlvbnN9DQp3aXRoOiAgICB7V2lkZ2V0cyBpdGVtcz0kcGFnZUJvdHRvbU9wdGlvbnN9IHsvbGl0ZXJhbH08L3ByZT48L3A+PGJyPg0KICAgPC9kaXY+DQp7aWYgJHdpZGdldHNVRFRzRXhpc3R9DQogICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij4zLiBSZW1vdmUgV2lkZ2V0cyBVRFRzOiA8L3A+DQogICAgICA8ZGl2IGNsYXNzPSJwYWdld2FybmluZyBncmlkXzEyIj5VRFRzOiAnd2lkZ2V0c1NpZGViYXInIG9yICd3aWRnZXRzUGFnZUJvdHRvbScgc3RpbGwgZXhpc3QgLSBkZWxldGUgdGhlbSBub3cuPC9kaXY+DQogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4uLi48L3A+PGJyPg0KICAgPC9kaXY+DQp7L2lmfQ0KICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+NC4gQUxMIERPTkUgOik8L3A+DQogICA8L2Rpdj4NCg0KeyRlbmRmb3JtfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/admin_options.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19DQogICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICAgICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JHRpdGxlX2N1c3RvbU1vZHVsZU5hbWV9OjwvcD4NCiAgICAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfY3VzdG9tTW9kdWxlTmFtZX08L3A+DQogICA8L2Rpdj4NCiAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQogICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfYWRtaW5TZWN0aW9ufTo8L3A+DQogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0X2FkbWluU2VjdGlvbn08L3A+DQogICA8L2Rpdj4NCiAgIDxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQogICAgICA8cCBjbGFzcz0icGFnZXRleHQiPnskdGl0bGVfd2lkZ2V0U3R5bGVPcHRpb25zfTo8L3A+DQogICAgICA8cCBjbGFzcz0icGFnZWlucHV0Ij4NCiAgICAgICAgIHskaGVscF93aWRnZXRTdHlsZU9wdGlvbnN8bmwyYnJ9DQogICAgICAgICB7Y21zX3RleHRhcmVhIHByZWZpeD0kYWN0aW9uaWQgbmFtZT1pbnB1dF9zdHlsZU9wdGlvbnMgdmFsdWU9JHN0eWxlT3B0aW9uc30NCiAgICAgIDwvcD4NCiAgIDwvZGl2Pg0KICAgPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgICAgIDxwIGNsYXNzPSJwYWdldGV4dCI+Jm5ic3A7PC9wPg0KICAgICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+DQogICAgICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfXN1Ym1pdCIgdmFsdWU9InskbW9kLT5MYW5nKCdzdWJtaXQnKX0iLz4NCiAgICAgIDwvcD4NCiAgIDwvZGl2Pg0KeyRlbmRmb3JtfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/defaultadmin.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KICAgJChkb2N1bWVudCkucmVhZHkoZnVuY3Rpb24oKSB7DQogICAgICAkKCdhLmRlbF93aWRnZXQnKS5jbGljayhmdW5jdGlvbigpIHsNCiAgICAgICAgIHJldHVybiBjb25maXJtKCd7JG1vZC0+TGFuZygnY29uZmlybV9kZWxldGUnKX0nICsgJyAiJyArICQodGhpcykuZGF0YSgndGl0bGUnKSArICciPycpOw0KICAgICAgfSkNCiAgIH0pOw0KPC9zY3JpcHQ+DQoNCjxkaXYgY2xhc3M9InBhZ2VvcHRpb25zIj4NCiAgIDxhIGhyZWY9IntjbXNfYWN0aW9uX3VybCBhY3Rpb249ZWRpdF93aWRnZXR9Ij57YWRtaW5faWNvbiBpY29uPSduZXdvYmplY3QuZ2lmJ30geyRtb2QtPkxhbmcoJ2FkZF93aWRnZXQnKX08L2E+DQogICA8c3BhbiBpZD0ibG9hZGVyIiBkYXRhLWljb249InskbG9hZGluZ0ljb259Ij4gPC9zcGFuPg0KPC9kaXY+DQoNCntpZiAhZW1wdHkoJHdpZGdldHMpfQ0KPHRhYmxlIGNsYXNzPSJwYWdldGFibGUiPg0KICAgPHRoZWFkPg0KICAgICAgPHRyPg0KICAgICAgICAgPHRoPnskbW9kLT5MYW5nKCd0aXRsZV90aXRsZScpfTwvdGg+DQogICAgICAgICA8dGg+eyRtb2QtPkxhbmcoJ3RpdGxlX2NhdGVnb3J5Jyl9PC90aD4NCiAgICAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPnskbW9kLT5MYW5nKCd0aXRsZV9hY3RpdmUnKX08L3RoPg0KICAgICAgICAgPHRoIGNsYXNzPSJwYWdlaWNvbiI+eyogZWRpdCBpY29uICp9PC90aD4NCiAgICAgICAgIDx0aCBjbGFzcz0icGFnZWljb24iPnsqIGRlbGV0ZSBpY29uICp9PC90aD4NCiAgICAgIDwvdHI+DQogICA8L3RoZWFkPg0KICAgPHRib2R5IGNsYXNzPSJzb3J0YWJsZS13aWRnZXQtbGlzdCI+DQp7Zm9yZWFjaCAkd2lkZ2V0cyBhcyAkd2lkZ2V0fQ0Ke2Ntc19hY3Rpb25fdXJsIGFjdGlvbj1lZGl0X3dpZGdldCB3aWQ9JHdpZGdldC0+aWQgYXNzaWduPSdlZGl0X3VybCd9DQogICAgICA8dHIgY2xhc3M9IntpZiAkd2lkZ2V0QGluZGV4IGlzIGV2ZW59cm93MXtlbHNlfXJvdzJ7L2lmfSIgZGF0YS1pZD0ieyR3aWRnZXQtPmlkfSIgZGF0YS1yZW9yZGVyPSJ7Y21zX2FjdGlvbl91cmwgYWN0aW9uPXJlb3JkZXJfd2lkZ2V0IHdpZD0kd2lkZ2V0LT5pZCBhZnRlcj0tMSBmb3Jqcz0xfSI+DQogICAgICAgICA8dGQ+PGEgaHJlZj0ieyRlZGl0X3VybH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygnZWRpdCcpfSI+eyR3aWRnZXQtPnRpdGxlfTwvYT48L3RkPg0KICAgICAgICAgPHRkPnskY2F0ZWdvcmllc1skd2lkZ2V0LT5jYXRlZ29yeV9pZF19PC90ZD4NCiAgICAgICAgIDx0ZD48YSBjbGFzcz0iYWN0aXZlX3dpZGdldCIgaHJlZj0ie2Ntc19hY3Rpb25fdXJsIGFjdGlvbj10b2dnbGVfYWN0aXZlX3dpZGdldCB3aWQ9JHdpZGdldC0+aWR9IiA+e2lmICR3aWRnZXQtPmFjdGl2ZX17YWRtaW5faWNvbiBpY29uPSd0cnVlLmdpZid9e2Vsc2V9e2FkbWluX2ljb24gaWNvbj0nZmFsc2UuZ2lmJ317L2lmfTwvYT4NCiAgICAgICAgIDwvdGQ+DQogICAgICAgICA8dGQ+PGEgaHJlZj0ieyRlZGl0X3VybH0iIHRpdGxlPSJ7JG1vZC0+TGFuZygnZWRpdCcpfSI+e2FkbWluX2ljb24gaWNvbj0nZWRpdC5naWYnfTwvYT48L3RkPg0KICAgICAgICAgPHRkPjxhIGNsYXNzPSJkZWxfd2lkZ2V0IiBocmVmPSJ7Y21zX2FjdGlvbl91cmwgYWN0aW9uPWRlbGV0ZV93aWRnZXQgd2lkPSR3aWRnZXQtPmlkfSIgdGl0bGU9InskbW9kLT5MYW5nKCdkZWxldGUnKX0iIGRhdGEtdGl0bGU9Inskd2lkZ2V0LT50aXRsZX0iPnthZG1pbl9pY29uIGljb249J2RlbGV0ZS5naWYnfTwvYT48L3RkPg0KICAgICAgPC90cj4NCnsvZm9yZWFjaH0NCiAgIDwvdGJvZHk+DQo8L3RhYmxlPg0Key9pZn0=]]></data>
	</file>
	<file>
	  <filename>/templates/edit_category.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPntpZiAkaXNOZXdDYXRlZ29yeX17JG1vZC0+TGFuZygnYWRkX2NhdGVnb3J5Jyl9e2Vsc2V9eyRtb2QtPkxhbmcoJ2VkaXRfY2F0ZWdvcnknKX17L2lmfTwvaDM+DQp7Zm9ybV9zdGFydCBjYXRlZ29yeV9pZD0kY2F0ZWdvcnktPmNhdGVnb3J5X2lkfQ0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3RpdGxlX2NhdGVnb3J5Jyl9OjwvcD4NCiAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPg0KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9Y2F0ZWdvcnlfbmFtZSIgdmFsdWU9InskY2F0ZWdvcnktPmNhdGVnb3J5X25hbWV9IiBzaXplPSI1MCIvPg0KICAgPC9wPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndGl0bGVfYWxpYXMnKX06PC9wPg0KICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+DQogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1jYXRlZ29yeV9hbGlhcyIgdmFsdWU9InskY2F0ZWdvcnktPmNhdGVnb3J5X2FsaWFzfSIgc2l6ZT0iNTAiLz4NCiAgIDwvcD4NCjwvZGl2Pg0KPHA+Jm5ic3A7PC9wPg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPg0KICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+DQogICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iLz4NCiAgIDwvcD4NCjwvZGl2Pg0Ke2Zvcm1fZW5kfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/edit_widget.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPntpZiAkaXNOZXdXaWRnZXR9eyRtb2QtPkxhbmcoJ2FkZF93aWRnZXQnKX17ZWxzZX17JG1vZC0+TGFuZygnZWRpdF93aWRnZXQnKX17L2lmfTwvaDM+DQoNCntmb3JtX3N0YXJ0IHdpZD0kd2lkZ2V0LT5pZH0NCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4NCiAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InskYWN0aW9uaWR9c3VibWl0IiB2YWx1ZT0ieyRtb2QtPkxhbmcoJ3N1Ym1pdCcpfSIvPg0KICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1jYW5jZWwiIHZhbHVlPSJ7JG1vZC0+TGFuZygnY2FuY2VsJyl9Ii8+DQogICA8L3A+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQogICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCd0aXRsZV9hY3RpdmUnKX06PC9wPg0KICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dF9hY3RpdmV9PC9wPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndGl0bGVfdGl0bGUnKX06PC9wPg0KICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+DQogICAgICB7JG1vZC0+TGFuZygnaGVscF90aXRsZScpfTxicj4NCiAgICAgIDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7JGFjdGlvbmlkfXRpdGxlIiB2YWx1ZT0ieyR3aWRnZXQtPnRpdGxlfSIgc2l6ZT0iNTAiLz4NCiAgIDwvcD4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3RpdGxlX2NhdGVnb3J5Jyl9OjwvcD4NCiAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRfY2F0ZWdvcnlfaWR9PC9wPg0KPC9kaXY+DQoNCnsqcG9zaXRpb24qfQ0KDQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndGl0bGVfaGVhZGluZycpfTo8L3A+DQogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4NCiAgICAgIHskbW9kLT5MYW5nKCdoZWxwX2hlYWRpbmcnKX08YnI+DQogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1oZWFkaW5nIiB2YWx1ZT0ieyR3aWRnZXQtPmhlYWRpbmd9IiBzaXplPSI2MCIvPg0KICAgPC9wPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndGl0bGVfY29udGVudCcpfTo8L3A+DQogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4NCiAgICAgIHskbW9kLT5MYW5nKCdoZWxwX2NvbnRlbnQnKX08YnI+DQogICAgICB7Y21zX3RleHRhcmVhIHByZWZpeD0kYWN0aW9uaWQgbmFtZT1jb250ZW50IHZhbHVlPSR3aWRnZXQtPmNvbnRlbnQgZW5hYmxld3lzaXd5Zz10cnVlfQ0KICAgPC9wPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndGl0bGVfbGlua190bycpfTo8L3A+DQogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4NCiAgICAgIHskbW9kLT5MYW5nKCdoZWxwX2xpbmtfdG8nKX08YnI+DQogICAgICB7JGlucHV0X2xpbmtfdG99DQogICA8L3A+DQo8L2Rpdj4NCjxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQogICA8cCBjbGFzcz0icGFnZXRleHQiPnskbW9kLT5MYW5nKCd0aXRsZV9saW5rX3RleHQnKX06PC9wPg0KICAgPHAgY2xhc3M9InBhZ2VpbnB1dCI+DQogICAgICB7JG1vZC0+TGFuZygnaGVscF9saW5rX3RleHQnKX08YnI+DQogICAgICA8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ieyRhY3Rpb25pZH1saW5rX3RleHQiIHZhbHVlPSJ7JHdpZGdldC0+bGlua190ZXh0fSIvPg0KICAgPC9wPg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KICAgPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JG1vZC0+TGFuZygndGl0bGVfc3R5bGVfb3B0aW9ucycpfTo8L3A+DQogICA8cCBjbGFzcz0icGFnZWlucHV0Ij4NCiAgICAgIHskbW9kLT5MYW5nKCdoZWxwX3N0eWxlX29wdGlvbnMnKX08YnI+DQogICAgICB7JGlucHV0X3N0eWxlT3B0aW9uc30NCiAgIDwvcD4NCjwvZGl2Pg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgIDxwIGNsYXNzPSJwYWdldGV4dCI+eyRtb2QtPkxhbmcoJ3RpdGxlX2FsaWFzJyl9OjwvcD4NCiAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPg0KICAgICAgPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InskYWN0aW9uaWR9YWxpYXMiIHZhbHVlPSJ7JHdpZGdldC0+YWxpYXN9IiIgc2l6ZT0iNTAiLz4NCiAgIDwvcD4NCjwvZGl2Pg0KPHA+Jm5ic3A7PC9wPg0KPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCiAgIDxwIGNsYXNzPSJwYWdlaW5wdXQiPg0KICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ieyRhY3Rpb25pZH1zdWJtaXQiIHZhbHVlPSJ7JG1vZC0+TGFuZygnc3VibWl0Jyl9Ii8+DQogICAgICA8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJ7JGFjdGlvbmlkfWNhbmNlbCIgdmFsdWU9InskbW9kLT5MYW5nKCdjYW5jZWwnKX0iLz4NCiAgIDwvcD4NCjwvZGl2Pg0Ke2Zvcm1fZW5kfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PCEtLSBEVU1NWSBIVE1MIEZJTEUgLS0+]]></data>
	</file>
	<file>
	  <filename>/templates/orig_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogb3JpZ190ZW1wbGF0ZS50cGwgdjAuOSAtIDIxT2N0MTYgKn0NCntmb3JlYWNoICRpdGVtcyBhcyAkaXRlbX0NCiAgICAgIDxkaXYgY2xhc3M9IndpZGdldC1vdXRlciBjb2wteHMtMTIiPg0KICAgICAgICAgPGRpdiBjbGFzcz0ieypzZWN0aW9uICp9d2lkZ2V0IHskaXRlbS0+YWxpYXN9IHskc3R5bGVzPSIsInxleHBsb2RlOiRpdGVtLT5maWVsZGRlZnMuc3R5bGVzLnZhbHVlfXtmb3JlYWNoICRzdHlsZXMgYXMgJHN0eWxlfSB7JHN0eWxlfXsvZm9yZWFjaH0gY29sLXhzLTEyIGVxdWFsLWhlaWdodCI+DQp7aWYgJGl0ZW0tPmZpZWxkZGVmcy5oZWFkaW5nLnZhbHVlIT0nJ30NCiAgICAgICAgICAgIDxoMiBjbGFzcz0iaGVhZGluZyBjb2wteHMtMTIiPnskaXRlbS0+ZmllbGRkZWZzLmhlYWRpbmcudmFsdWV8ZXNjYXBlfTwvaDI+DQp7L2lmfQ0Ke2lmICRpdGVtLT5maWVsZGRlZnMuY29udGVudC52YWx1ZX0NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImNvbnRlbnQgY29sLXhzLTEyIj4NCiAgICAgICAgICAgICAgIHtldmFsIHZhcj0kaXRlbS0+ZmllbGRkZWZzLmNvbnRlbnQudmFsdWV9DQogICAgICAgICAgICA8L2Rpdj4NCnsvaWZ9DQp7aWYgJGl0ZW0tPmZpZWxkZGVmcy5saW5rX3RvLnZhbHVlPicwJ30NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9ImxpbmsgY29sLXhzLTEyIj4NCiAgICAgICAgICAgICAgIDxhIGNsYXNzPSJidG4gYnRuLWRlZmF1bHQgYnRuLXNtIiBocmVmPSJ7Y21zX3NlbGZsaW5rIGhyZWY9JGl0ZW0tPmZpZWxkZGVmcy5saW5rX3RvLnZhbHVlfSI+e2lmICRpdGVtLT5saW5rX3RleHQhPScnfXskaXRlbS0+bGlua190ZXh0fGVzY2FwZX17ZWxzZX1SZWFkIG1vcmV7L2lmfTwvYT4NCiAgICAgICAgICAgIDwvZGl2Pg0Key9pZn0NCiAgICAgICAgIDwvZGl2Pg0KICAgICAgPC9kaXY+DQp7L2ZvcmVhY2h9]]></data>
	</file>
	<file>
	  <filename>/templates/sortablelist_template.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyogc29ydGFibGVsaXN0X3RlbXBsYXRlLnRwbA0KDQoqfQ0Ke2lmICFlbXB0eSgkZGVzY3JpcHRpb24pfTxzcGFuIGNsYXNzPSJ3aWRnZXQtZGVzY3JpcHRpb24iPnskZGVzY3JpcHRpb259PC9zcGFuPiB7L2lmfQ0KPGlucHV0IHR5cGU9ImhpZGRlbiIgaWQ9Inskc2VsZWN0YXJlYV9wcmVmaXh9IiBuYW1lPSJ7JHNlbGVjdGFyZWFfcHJlZml4fSIgdmFsdWU9Inskc2VsZWN0ZWRfc3RyfSIgc2l6ZT0iMTAwIi8+DQo8ZGl2IGNsYXNzPSJjX2Z1bGwgY2Ygd2lkZ2V0LWNiIHskc2VsZWN0YXJlYV9wcmVmaXh9Ij4NCiAgICA8ZGl2IGNsYXNzPSJncmlkXzYgYWxwaGEiPg0KICAgICAgICA8ZmllbGRzZXQ+DQogICAgICAgICAgICA8bGVnZW5kPntpZiAkbGFiZWxMZWZ0IT0nJ317JGxhYmVsTGVmdH17ZWxzZX17JG1vZC0+TGFuZygnY29udGVudF9ibG9ja19sYWJlbF9zZWxlY3RlZCcpfXsvaWZ9PC9sZWdlbmQ+DQogICAgICAgICAgICA8ZGl2IGlkPSJzZWxlY3RlZC13aWRnZXRzIj4NCiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9InNvcnRhYmxlLXdpZGdldHMgc29ydGFibGUtbGlzdCBzZWxlY3RlZC13aWRnZXRzIiBkYXRhLWNtc21zLWNiLWlucHV0PSJ7JHNlbGVjdGFyZWFfcHJlZml4fSI+DQogICAgICAgICAgICAgICAgICAgIDxsaSBjbGFzcz0icGxhY2Vob2xkZXIgbm8tc29ydCB7aWYgJHNlbGVjdGVkfEBjb3VudD4wfSBoaWRkZW57L2lmfSI+eyRtb2QtPkxhbmcoJ2Ryb3BfaXRlbXMnKX08L2xpPg0KICAgICAgICAgICAgICAgICAgICB7Zm9yZWFjaCAkc2VsZWN0ZWQgYXMgJGFsaWFzID0+ICRuYW1lfQ0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IGNmIHNvcnRhYmxlLWl0ZW0iIGRhdGEtY21zbXMtaXRlbS1pZD0ieyRhbGlhc30iPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHskbmFtZX0NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIiB0aXRsZT0ieyRtb2QtPkxhbmcoJ3JlbW92ZScpfSIgY2xhc3M9InVpLWljb24gdWktaWNvbi10cmFzaCBzb3J0YWJsZS1yZW1vdmUiPnskbW9kLT5MYW5nKCdyZW1vdmUnKX08L2E+DQogICAgICAgICAgICAgICAgICAgICAgICA8L2xpPg0KICAgICAgICAgICAgICAgICAgICB7L2ZvcmVhY2h9DQogICAgICAgICAgICAgICAgPC91bD4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8L2ZpZWxkc2V0Pg0KICAgIDwvZGl2Pg0KICAgIDxkaXYgY2xhc3M9ImdyaWRfNiBvbWVnYSBkcmFnZ2FibGUtYXJlYSI+DQogICAgICAgIDxmaWVsZHNldD4NCiAgICAgICAgICAgIDxsZWdlbmQ+e2lmICRsYWJlbFJpZ2h0IT0nJ317JGxhYmVsUmlnaHR9e2Vsc2V9eyRtb2QtPkxhbmcoJ2NvbnRlbnRfYmxvY2tfbGFiZWxfYXZhaWxhYmxlJyl9ey9pZn08L2xlZ2VuZD4NCiAgICAgICAgICAgIDxkaXYgaWQ9ImF2YWlsYWJsZS13aWRnZXRzIj4NCiAgICAgICAgICAgICAgICA8dWwgY2xhc3M9InNvcnRhYmxlLXdpZGdldHMgc29ydGFibGUtbGlzdCBhdmFpbGFibGUtaXRlbXMgYXZhaWxhYmxlLXdpZGdldHMiPg0KICAgICAgICAgICAgICAgIHtmb3JlYWNoICRhdmFpbGFibGUgYXMgJGFsaWFzID0+ICRuYW1lfQ0KICAgICAgICAgICAgICAgICAgICAgICAgPGxpIGNsYXNzPSJ1aS1zdGF0ZS1kZWZhdWx0IiBkYXRhLWNtc21zLWl0ZW0taWQ9InskYWxpYXN9Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7JG5hbWV9DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgaHJlZj0iIyIgdGl0bGU9InskbW9kLT5MYW5nKCdyZW1vdmUnKX0iIGNsYXNzPSJ1aS1pY29uIHVpLWljb24tdHJhc2ggc29ydGFibGUtcmVtb3ZlIGhpZGRlbiI+eyRtb2QtPkxhbmcoJ3JlbW92ZScpfTwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvbGk+DQogICAgICAgICAgICAgICAgey9mb3JlYWNofQ0KICAgICAgICAgICAgICAgIDwvdWw+DQogICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgPC9maWVsZHNldD4NCiAgICA8L2Rpdj4NCjwvZGl2Pg==]]></data>
	</file>
	<file>
	  <filename>/Widgets.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogV2lkZ2V0cw0KIyBBdXRob3I6IENocmlzIFRheWxvcg0KIyBDb3B5cmlnaHQ6IChDKSAyMDE2IENocmlzIFRheWxvciwgY2hyaXNAYmlubm92YXRpdmUuY28udWsNCiMgTGljZW5jZTogR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgdmVyc2lvbiAzDQojICAgICAgICAgIHNlZSAvV2lkZ2V0cy9kb2MvTElDRU5DRS50eHQgb3IgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+DQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMTEgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQ0KIyBQcm9qZWN0J3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcNCiMgTW9kdWxlJ3MgaG9tZXBhZ2UgaXM6IGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvcHJvamVjdHMvV2lkZ2V0cw0KIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiMgVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkNCiMgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkNCiMgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3INCiMgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4NCiMNCiMgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsDQojIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mDQojIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUNCiMgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4NCiMNCiMgWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UNCiMgYWxvbmcgd2l0aCB0aGlzIHByb2dyYW0uICBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQpjbGFzcyBXaWRnZXRzIGV4dGVuZHMgQ01TTW9kdWxlIHsNCg0KICAgY29uc3QgTUFOQUdFX1BFUk0gPSAnbWFuYWdlX3dpZGdldHMnOw0KICAgY29uc3QgVVNFX1BFUk0gPSAndXNlX3dpZGdldHMnOw0KDQogICBwcm90ZWN0ZWQgJF9pc0NvbnRlbnRCbG9ja0pzTG9hZGVkOw0KDQogICBwdWJsaWMgZnVuY3Rpb24gR2V0VmVyc2lvbigpIHsgcmV0dXJuICcxLjAnOyB9DQogICBwdWJsaWMgZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lKCkgeyByZXR1cm4gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2N1c3RvbU1vZHVsZU5hbWUnKTsgfQ0KICAgcHVibGljIGZ1bmN0aW9uIEdldEFkbWluRGVzY3JpcHRpb24oKSB7IHJldHVybiAkdGhpcy0+TGFuZygnYWRtaW5kZXNjcmlwdGlvbicpOyB9DQogICBwdWJsaWMgZnVuY3Rpb24gSXNQbHVnaW5Nb2R1bGUoKSB7IHJldHVybiBUUlVFOyB9DQogICBwdWJsaWMgZnVuY3Rpb24gSGFzQWRtaW4oKSB7IHJldHVybiBUUlVFOyB9DQogICBwdWJsaWMgZnVuY3Rpb24gR2V0QWRtaW5TZWN0aW9uKCkgeyByZXR1cm4gJHRoaXMtPkdldFByZWZlcmVuY2UoJ2FkbWluU2VjdGlvbicsICdjb250ZW50Jyk7IH0NCiAgIHB1YmxpYyBmdW5jdGlvbiBWaXNpYmxlVG9BZG1pblVzZXIoKSB7IHJldHVybiAoICR0aGlzLT5DaGVja1Blcm1pc3Npb24oc2VsZjo6VVNFX1BFUk0pIHx8ICR0aGlzLT5DaGVja1Blcm1pc3Npb24oc2VsZjo6TUFOQUdFX1BFUk0pICk7IH0NCiAgIHB1YmxpYyBmdW5jdGlvbiBHZXRIZWxwKCkgeyByZXR1cm4gJHRoaXMtPkxhbmcoJ2hlbHAnKTsgfQ0KICAgcHVibGljIGZ1bmN0aW9uIEdldEF1dGhvcigpIHsgcmV0dXJuICdDaHJpcyBUYXlsb3InOyB9DQogICBwdWJsaWMgZnVuY3Rpb24gR2V0QXV0aG9yRW1haWwoKSB7IHJldHVybiAnY2hyaXNAYmlubm92YXRpdmUuY28udWsnOyB9DQogICBwdWJsaWMgZnVuY3Rpb24gR2V0Q2hhbmdlTG9nKCkgeyByZXR1cm4gZmlsZV9nZXRfY29udGVudHMoZGlybmFtZShfX0ZJTEVfXykuJy9kb2MvY2hhbmdlbG9nLmluYycpOyB9DQoNCg0KICAgZnVuY3Rpb24gX19jb25zdHJ1Y3QoKSB7DQogICAgICAkdGhpcy0+X2lzQ29udGVudEJsb2NrSnNMb2FkZWQgPSBmYWxzZTsNCiAgICAgIHBhcmVudDo6X19jb25zdHJ1Y3QoKTsNCiAgIH0NCg0KICAgcHVibGljIGZ1bmN0aW9uIFVuaW5zdGFsbFByZU1lc3NhZ2UoKSB7DQogICAgICByZXR1cm4gJHRoaXMtPkxhbmcoJ2Fza191bmluc3RhbGwnKTsNCiAgIH0NCg0KICAgcHVibGljIGZ1bmN0aW9uIEluaXRpYWxpemVGcm9udGVuZCgpIHsNCiAgICAgICR0aGlzLT5TZXRQYXJhbWV0ZXJUeXBlKCd3aWQnLCBDTEVBTl9JTlQpOw0KICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ3RlbXBsYXRlJyxDTEVBTl9TVFJJTkcpOw0KICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2NhdGVnb3J5JyxDTEVBTl9TVFJJTkcpOw0KICAgICAgJHRoaXMtPlNldFBhcmFtZXRlclR5cGUoJ2l0ZW1zJyxDTEVBTl9TVFJJTkcpOw0KICAgICAgJHRoaXMtPlJlZ2lzdGVyTW9kdWxlUGx1Z2luKCk7DQogICB9DQoNCiAgIHB1YmxpYyBmdW5jdGlvbiBJbml0aWFsaXplQWRtaW4oKSB7DQogICAgICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCAnd2lkJywgbnVsbCwgJHRoaXMtPkxhbmcoJ3BhcmFtX3dpZCcpICk7DQogICAgICAkdGhpcy0+Q3JlYXRlUGFyYW1ldGVyKCAndGVtcGxhdGUnLCBudWxsLCAkdGhpcy0+bGFuZygncGFyYW1fdGVtcGxhdGUnKSApOw0KICAgICAgJHRoaXMtPkNyZWF0ZVBhcmFtZXRlciggJ2NhdGVnb3J5JywgbnVsbCwgJHRoaXMtPmxhbmcoJ3BhcmFtX2NhdGVnb3J5JykgKTsNCiAgICAgICR0aGlzLT5DcmVhdGVQYXJhbWV0ZXIoICdpdGVtcycsIG51bGwsICR0aGlzLT5sYW5nKCdwYXJhbV9pdGVtcycpICk7DQogICB9DQoNCiAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gcGFnZV90eXBlX2xhbmdfY2FsbGJhY2soJHN0cikgew0KICAgICAgJG1vZCA9IGNtc191dGlsczo6Z2V0X21vZHVsZSgnV2lkZ2V0cycpOw0KICAgICAgaWYoIGlzX29iamVjdCgkbW9kKSApIHJldHVybiAkbW9kLT5MYW5nKCd0eXBlXycuJHN0cik7DQogICB9DQoNCiAgIHB1YmxpYyBmdW5jdGlvbiBHZXRIZWFkZXJIVE1MKCkgew0KICAgICAgJHRtcCA9ICcNCiAgICAgICAgIDxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL21vZHVsZXMvV2lkZ2V0cy9saWIvY3NzL3dpZGdldHNfYWRtaW4uY3NzIj4NCiAgICAgICAgIDxzY3JpcHQgbGFuZ3VhZ2U9ImphdmFzY3JpcHQiIHNyYz0iLi4vbW9kdWxlcy9XaWRnZXRzL2xpYi9qcy93aWRnZXRzX2FkbWluLmpzIj48L3NjcmlwdD4nOw0KICAgICAgcmV0dXJuICR0bXA7DQogICB9DQoNCiAgIHB1YmxpYyBzdGF0aWMgZnVuY3Rpb24gcmVzZXRfcGFnZV90eXBlX2RlZmF1bHRzKENtc0xheW91dFRlbXBsYXRlVHlwZSAkdHlwZSkgew0KICAgICAgaWYoICR0eXBlLT5nZXRfb3JpZ2luYXRvcigpICE9ICdXaWRnZXRzJyApIHRocm93IG5ldyBDbXNMb2dpY0V4Y2VwdGlvbignQ2Fubm90IHJlc2V0IGNvbnRlbnRzIGZvciB0aGlzIHRlbXBsYXRlIHR5cGUnKTsNCg0KICAgICAgJGZuID0gbnVsbDsNCiAgICAgIGlmICggJHR5cGUtPmdldF9uYW1lKCk9PSdUZW1wbGF0ZScgKSB7DQogICAgICAgICAkZm4gPSAnb3JpZ190ZW1wbGF0ZS50cGwnOw0KICAgICAgfQ0KICAgICAgJGZuID0gY21zX2pvaW5fcGF0aChfX0RJUl9fLCd0ZW1wbGF0ZXMnLCRmbik7DQogICAgICBpZiggZmlsZV9leGlzdHMoJGZuKSApIHJldHVybiBAZmlsZV9nZXRfY29udGVudHMoJGZuKTsNCiAgIH0NCg0KDQoNCiAgIC8qKg0KICAgKiBAbGluayBodHRwOi8vd3d3LmNtc21hZGVzaW1wbGUub3JnL2FwaWRvYy9DTVMvQ01TTW9kdWxlLmh0bWwjSGFzQ2FwYWJpbGl0eQ0KICAgKiBAaWdub3JlDQogICAqLw0KICAgZnVuY3Rpb24gSGFzQ2FwYWJpbGl0eSgkY2FwYWJpbGl0eSwgJHBhcmFtcyA9IGFycmF5KCkpIHsNCiAgICAgIHN3aXRjaCAoJGNhcGFiaWxpdHkpIHsNCiAgICAgICAgIGNhc2UgJ2NvbnRlbnRibG9ja3MnOg0KICAgICAgICAgICAgIHJldHVybiBUUlVFOw0KICAgICAgICAgZGVmYXVsdDoNCiAgICAgICAgICAgICByZXR1cm4gRkFMU0U7DQogICAgICB9DQogICB9DQoNCg0KICAgLy8gY29udGVudCBibG9jaw0KICAgLyoqDQogICAqIEBsaW5rIGh0dHA6Ly93d3cuY21zbWFkZXNpbXBsZS5vcmcvQVBJRE9DMl8wL2NsYXNzZXMvQ01TTW9kdWxlLmh0bWwjbWV0aG9kX0dldENvbnRlbnRCbG9ja0ZpZWxkSW5wdXQNCiAgICovDQogICBwdWJsaWMgZnVuY3Rpb24gR2V0Q29udGVudEJsb2NrRmllbGRJbnB1dCgkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmc9ZmFsc2UsDQogICAgICBDb250ZW50QmFzZSAkY29udGVudF9vYmopIHsNCg0KICAgICAgJHdpZGdldENCID0gbmV3IHdpZGdldF90b29scygkYmxvY2tOYW1lLCAkdmFsdWUsICRwYXJhbXMsICRhZGRpbmcpOw0KICAgICAgJGNiID0gJHdpZGdldENCLT5nZXRfY29udGVudF9ibG9ja19pbnB1dCgpOw0KDQogICAgICAvLyBsb2FkIGpzIG9uY2Ugb25seQ0KICAgICAgaWYgKCEkdGhpcy0+X2lzQ29udGVudEJsb2NrSnNMb2FkZWQpIHsNCiAgICAgICAgICRjYiAuPSAkd2lkZ2V0Q0ItPmdldF9jb250ZW50X2Jsb2NrX2pzKCk7DQogICAgICAgICAkdGhpcy0+X2lzQ29udGVudEJsb2NrSnNMb2FkZWQgPSB0cnVlOw0KICAgICAgfQ0KDQogICAgICByZXR1cm4gJGNiOw0KICAgfQ0KDQoNCn0=]]></data>
	</file>
</module>
