<?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>RSS2HTML</name>
	<version>1.2.4</version>
  <mincmsversion>1.0</mincmsversion>
	<help>PGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+DQo8cD5UaGUgUlNTMkhUTUwgbW9kdWxlIGFsbG93cyB5b3UgdG8gb3V0cHV0IGFuIFJTUy9BdG9tIGZlZWQgYXMgSFRNTC4gVGhlIG91dHB1dCBpcyBmdWxseSBjdXN0b21pemFibGUgdmlhIFNtYXJ0eSB0ZW1wbGF0ZXMuPC9wPg0KPGgzPkhvdyBEbyBJIFVzZSBJdDwvaDM+DQo8cD5GaXJzdCwgZ28gdG8gQ29udGVudC0+UlNTMkhUTUwgYW5kIGNyZWF0ZSBhIGZlZWQuIFRoZSBmZWVkJ3MgbmFtZSBtdXN0IGJlIHVuaXF1ZSBhbmQgdGhlIGZlZWQgdXJsIG11c3QgYmUgYSB2YWxpZCBSU1MgZmVlZC48L3A+DQo8cD5UbyBkaXNwbGF5IGEgZmVlZCBiYXNlZCBvbiB0aGUgZGVmYXVsdCB0ZW1wbGF0ZSAoaW5jbHVkZWQpLCBwdXQgdGhlIGZvbGxvd2luZyBjb2RlIGluIHlvdXIgcGFnZTo8L3A+DQo8cCBzdHlsZT0iZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3OyBmb250LXNpemU6IDhwdDsiPntjbXNfbW9kdWxlIG1vZHVsZT0iUlNTMkhUTUwiIGZlZWQ9IkZFRUQgTkFNRSBHT0VTIEhFUkUifTwvcD4NCjxwPklmIHlvdSdkIGxpa2UgdG8gdXNlIGEgZGlmZmVyZW50IHRlbXBsYXRlIHRoYXQgeW91IGhhdmUgZGVmaW5lZCwgdXNlIHRoZSBmb2xsb3dpbmc6PC9wPg0KPHAgc3R5bGU9ImZvbnQtZmFtaWx5OiBDb3VyaWVyIE5ldzsgZm9udC1zaXplOiA4cHQ7Ij57Y21zX21vZHVsZSBtb2R1bGU9IlJTUzJIVE1MIiBmZWVkPSJGRUVEIE5BTUUgR09FUyBIRVJFIiB0ZW1wbGF0ZT0iVEVNUExBVEUgTkFNRSBHT0VTIEhFUkUifTwvcD4NCjxoMz5XaGF0IFBhcmFtZXRlcnMgRG9lcyBJdCBUYWtlPC9oMz4NCjx1bD4NCgk8bGk+KHJlcXVpcmVkKSBmZWVkPSJGRUVEIE5BTUUiIC0gd2hlcmUgRkVFRCBOQU1FIGlzIHRoZSBuYW1lIGdpdmVuIHRvIHRoZSBmZWVkPC9saT4NCgk8bGk+KG9wdGlvbmFsKSB0ZW1wbGF0ZT0iVEVNUExBVEUgTkFNRSIgLSB3aGVyZSBURU1QTEFURSBOQU1FIGlzIHRoZSBuYW1lIG9mIHRoZSB0ZW1wbGF0ZSB0byB1c2U8L2xpPg0KCTxsaT4ob3B0aW9uYWwpIG51bWl0ZW1zPTxlbT54PC9lbT4gd2hlcmUgPGVtPng8L2VtPiBpcyB0aGUgbnVtYmVyIG9mIGl0ZW1zIHRvIGRpc3BsYXkgZnJvbSB0aGUgZmVlZDwvbGk+DQoJPGxpPihvcHRpb25hbCkgY2FjaGVfYWdlPTxlbT55PC9lbT4gd2hlcmUgPGVtPnk8L2VtPiBpcyB0aGUgY2FjaGUgYWdlIGluIG51bWJlciBvZiBzZWNvbmRzPC9saT4NCiAgICA8bGk+KG9wdGlvbmFsKSBlbmNvZGluZz0iRU5DT0RJTkcgVFlQRSIgLSB3aGVyZSBFTkNPRElORyBUWVBFIGlzIHRoZSB0eXBlIG9mIGVuY29kaW5nIChmb3IgZXhhbXBsZSBJU08tODg1OS0xIG9yIFVURi04KS4gVGhpcyB3aWxsIG92ZXJyaWRlIHRoZSBkZWZhdWx0IGVuY29kaW5nIHNwZWNpZmllZCBvbiB0aGUgJ1ByZWZlcmVuY2VzJyB0YWIgLiA8L2xpPg0KPC91bD4NCjxoMz5QcmVmZXJlbmNlczwvaDM+DQo8cD5UaGVyZSBhcmUgdGhyZWUgY2F0ZWdvcmllcyBvZiBwcmVmZXJlbmNlcyBsb2NhdGVkIHVuZGVyIHRoZSAnUHJlZmVyZW5jZXMnIHRhYjo8L3A+DQo8dWw+DQogICAgPGxpPjxzdHJvbmc+Q2FjaGluZw0KICAgICAgICA8L3N0cm9uZz4NCiAgICAgICAgPHVsPg0KICAgICAgICAgICAgPGxpPjxlbT5DYWNoZSBFbmFibGVkPC9lbT4gLSB0dXJucyBjYWNoaW5nIG9uLiBFYWNoIGZlZWQgd2lsbCBiZSBjYWNoZWQgZm9yIGEgdGltZSBwZXJpb2QgYmFzZWQgb24gdGhlIERlZmF1bHQgQ2FjaGUgQWdlLiBDYWNoZSBhZ2UgY2FuIGJlIGN1c3RvbWl6ZWQgb24gYSBwZXItZmVlZCBiYXNpcyAoc2VlIHBhcmFtZXRlcnMgYWJvdmUpLjwvbGk+DQogICAgICAgICAgICA8bGk+PGVtPkRlZmF1bHQgQ2FjaGUgQWdlPC9lbT4gLSBpZiBubyBjYWNoZSBhZ2UgaXMgc3BlY2lmaWVkIGluIHRoZSB0YWcsIHRoaXMgaXMgdGhlIGRlZmF1bHQgYW1vdW50IG9mIHRpbWUgdGhlIGZlZWQgd2lsbCBiZSBjYWNoZWQuIFRoZSB0aW1lIGlzIGluIHNlY29uZHMuIFlvdSBtYXkgdXNlIGFuIGV4cHJlc3Npb25zIHN1Y2ggYXMgNjAgKiA2MCwgd2hpY2ggPSAzNjAwIHNlY29uZHMgd2hpY2ggPSAxIGhvdXIuPC9saT4NCiAgICAgICAgICAgIDxsaT48ZW0+Q2FjaGUgRGlyZWN0b3J5IDwvZW0+LSB0aGlzIGlzIHdoZXJlIHRoZSBjYWNoZSBmaWxlcyB3aWxsIGJlIHN0b3JlZC4gTm90ZSB0aGUgcHJvY2VzcyBvd25lciBtdXN0IGhhdmUgd3JpdGUgcGVybWlzc2lvbnMgaGVyZS48L2xpPg0KICAgICAgICA8L3VsPg0KICAgIDwvbGk+DQogICAgPGxpPjxzdHJvbmc+RW5jb2RpbmcNCiAgICAgICAgPC9zdHJvbmc+DQogICAgICAgIDx1bD4NCiAgICAgICAgICAgIDxsaT48ZW0+U3luYyB3aXRoIENNU01TIGVuY29kaW5nPC9lbT4gLSB0aGlzIHdpbGwgYXR0ZW1wdCB0byBvdXRwdXQgdGhlIGZlZWQgdXNpbmcgdGhlIGRlZmF1bHQgZW5jb2Rpbmcgc3BlY2lmaWVkIGJ5IENNU01TIGluIHRoZSBjb25maWcucGhwIGZpbGUuIElmIHRoaXMgaXMgZW5hYmxlZCwgdGhlIG5leHQgcHJlZmVyZW5jZSwgJnF1b3Q7RGVmYXVsdCBPdXRwdXQgRW5jb2RpbmcmcXVvdDsgd2lsbCBiZSBpZ25vcmVkLiBUaGlzIHByZWZlcmVuY2UgY2FuIGJlIG92ZXJyaWRlbiBieSBzcGVjaWZ5aW5nIHRoZSBlbmNvZGluZyBmcm9tIHdpdGhpbiB0aGUgdGFnIChzZWUgcGFyYW1ldGVycyBhYm92ZSkuPC9saT4NCiAgICAgICAgICAgIDxsaT48ZW0+RGVmYXVsdCBPdXRwdXQgRW5jb2Rpbmc8L2VtPiAtIHRoaXMgaXMgdGhlIGRlZmF1bHQgZW5jb2RpbmcgZm9yIGZlZWRzIGlmIHRoZSBkZWZhdWx0IENNU01TIGVuY29kaW5nIG9yIGZlZWQtc3BlY2lmaWMgZW5jb2RpbmcgaXMgbm90IHVzZWQuPC9saT4NCiAgICAgICAgPC91bD4NCiAgICA8L2xpPg0KCSAgICA8bGk+PHN0cm9uZz5Qcm94eQ0KICAgICAgICA8L3N0cm9uZz4NCiAgICAgICAgPHVsPg0KICAgICAgICAgICAgPGxpPjxlbT5FbmFibGUgUHJveHk8L2VtPiAtIGlmIHRoaXMgaXMgZW5hYmxlZCwgUlNTMkhUTUwgd2lsbCBhdHRlbXB0IHRvIGNvbm5lY3QgdG8gdGhlIHByb3h5IHNlcnZlciBzcGVjaWZpZWQgYnkgdGhlIGZvbGxvd2luZyBob3N0IGFuZCBwb3J0PC9saT4NCiAgICAgICAgICAgIDxsaT48ZW0+SG9zdDwvZW0+IC0gdGhlIHByb3h5IHNlcnZlciB0byBjb25uZWN0IHRvPC9saT4NCiAgICAgICAgICAgIDxsaT48ZW0+UG9ydDwvZW0+IC0gdGhlIHBvcnQgb2YgdGhlIHByb3h5IHNlcnZlciB0byBjb25uZWN0IHRvPC9saT4JCQkNCiAgICAgICAgPC91bD4NCiAgICA8L2xpPg0KICAgIDxsaT48c3Ryb25nPk1pc2NlbGxhbmVvdXM8L3N0cm9uZz4NCiAgICAgICAgPHVsPg0KICAgICAgICAgICAgPGxpPjxlbT5FbmFibGUgRGVidWcgTW9kZTwvZW0+IC0gdGhpcyB0dXJucyBvbiB0aGUgZGVidWcgbW9kZSBpbiB0aGUgTWFncGllUlNTIHBhcnNlci4gVGhpcyBtYXkgb3IgbWF5IG5vdCBiZSB2ZXJ5IHVzZWZ1bCwgYnV0IGhhcyBiZWVuIGluY2x1ZGVkIGFueXdheXMuICAgPC9saT4NCiAgICAgICAgPC91bD4NCiAgICA8L2xpPg0KPC91bD4NCjxoMz5EZXRhaWxzPC9oMz48cD5UaGUgdmFyaWFibGUgJ3JzcycgY29udGFpbnMgYWxsIHRoZSBlbGVtZW50cyBvZiBhbiBSU1MgZmVlZCBwYXJzZWQgaW50byBhIG51bWJlciBvZiBhcnJheXMuICBCZWxvdyBpcyBhbiBleGFtcGxlIG9mIGhvdyB0byBhY2Nlc3MgdmFyaW91cyBwYXJ0cyBvZiB0aGUgZmVlZCAodGhpcyBpcyBieSBubyBtZWFucyBhIGNvbXBsZXRlIGxpc3QpOiA8L3A+DQo8dWw+DQogICAgPGxpPlRoZSAnY2hhbm5lbCcgYXJyYXkuIDxzdHJvbmc+Tm90ZSB0aGF0IG1vcmUgZWxlbWVudHMgbWF5IGJlIGF2YWlsYWJsZSBkZXBlbmRpbmcgb24gdGhlIGZlZWQuDQogICAgICAgIDwvc3Ryb25nPg0KICAgICAgICA8dWw+DQogICAgICAgICAgICA8bGk+VGhlIHRpdGxlIG9mIHRoZSBmZWVkIC0gPGVtPiRyc3MtJmd0O2NoYW5uZWwudGl0bGU8L2VtPjwvbGk+DQogICAgICAgICAgICA8bGk+VGhlICBsYW5ndWFnZSBvZiB0aGUgZmVlZCAtIDxlbT4kcnNzLSZndDtjaGFubmVsLmxhbmd1YWdlPC9lbT48L2xpPg0KICAgICAgICAgICAgPGxpPlRoZSBzaXRlIG9mIHdoZXJlIHRoZSBmZWVkIG9yaWdpbmF0ZXMgLSA8ZW0+JHJzcy0mZ3Q7Y2hhbm5lbC5saW5rPC9lbT48L2xpPg0KICAgICAgICAgICAgPGxpPlRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgZmVlZCAtIDxlbT4kcnNzLSZndDtjaGFubmVsLmRlc2NyaXB0aW9uPC9lbT48L2xpPg0KICAgICAgICAgICAgPGxpPlRoZSBmZWVkJ3MgdGFnbGluZSAtIDxlbT4kcnNzLSZndDtjaGFubmVsLnRhZ2xpbmU8L2VtPjwvbGk+DQogICAgICAgIDwvdWw+DQogICAgPC9saT4NCgk8YnIgLz4NCiAgICA8bGk+VGhlICdpdGVtcycgYXJyYXkuIDxzdHJvbmc+Tm90ZSB0aGF0IG1vcmUgZWxlbWVudHMgbWF5IGJlIGF2YWlsYWJsZSBkZXBlbmRpbmcgb24gdGhlIGZlZWQuICAgDQogICAgICAgIDwvc3Ryb25nPg0KICAgICAgICA8dWw+DQogICAgICAgICAgICA8bGk+VGhlIHRpdGxlIG9mIHRoZSBpdGVtIC0gPGVtPiRpdGVtLnRpdGxlIDwvZW0+PC9saT4NCiAgICAgICAgICAgIDxsaT5UaGUgbGluayB0byB0aGUgaXRlbSAtIDxlbT4kaXRlbS5saW5rIDwvZW0+PC9saT4NCiAgICAgICAgICAgIDxsaT5UaGUgZGVzY3JpcHRpb24gb2YgdGhlIGl0ZW0gLSA8ZW0+JGl0ZW0uZGVzY3JpcHRpb24gPC9lbT48L2xpPg0KICAgICAgICAgICAgPGxpPlRoZSBwdWJsaXNoIGRhdGUgb2YgdGhlIGl0ZW0gLSA8ZW0+JGl0ZW0ucHViZGF0ZSA8L2VtPjwvbGk+DQogICAgICAgICAgICA8bGk+VGhlIEdVSUQgb2YgdGhlIGl0ZW0gLSA8ZW0+JGl0ZW0uZ3VpZCA8L2VtPjwvbGk+DQogICAgICAgICAgICA8bGk+VGhlIHN1bW1hcnkgb2YgdGhlIGl0ZW0gLSA8ZW0+JGl0ZW0uc3VtbWFyeSA8L2VtPjwvbGk+DQogICAgICAgICAgICA8bGk+VGhlIGRhdGUvdGltZXN0YW1wIG9mIHRoZSBpdGVtIC0gIDxlbT4kaXRlbS5kYXRlX3RpbWVzdGFtcCA8L2VtPjwvbGk+DQogICAgICAgIDwvdWw+DQogICAgPC9saT4NCgk8bGk+PHNwYW4gc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkIj5BdHRyaWJ1dGVzIGNhbiBiZSBhY2Nlc3NlZCB2aWEgdGhlIHNhbWUgZG90IG5vdGF0aW9uLjwvc3Bhbj4NCgk8dWw+PGxpPkZvciBleGFtcGxlLCB0byBhY2Nlc3MgdGhlIGZpcnN0TmFtZSBhdHRyaWJ1dGUgZnJvbSB0aGUgcGVyc29uIGVsZW1lbnQgeW91IHdvdWxkIGRvIHRoZSBmb2xsb3dpbmc6IHskaXRlbS5wZXJzb24uZmlyc3ROYW1lfS48L2xpPg0KPGxpPklmIHRoZSBzb3VyY2UgaW5jbHVkZXMgdGFnIGF0dHJpYnV0ZXMsIHlvdSBjYW4gYWNjZXNzIHRoZW0gdXNpbmcgdGhlDQpoeXBoZW4gb3BlcmF0b3IsIGUuZy4sICZsdDtwZXJzb246aW1hZ2UgdXJsPSJmb28iJmd0OyBjYW4gYmUgYWNjZXNzZWQgdXNpbmcgeyRpdGVtLnBlcnNvbi5pbWFnZS11cmx9PC9saT48L3VsPjwvbGk+DQo8L3VsPg0KPGgzPlN1cHBvcnQ8L2gzPg0KPHA+QXMgcGVyIHRoZSBHUEwsIHRoaXMgc29mdHdhcmUgaXMgcHJvdmlkZWQgYXMtaXMuIFBsZWFzZSByZWFkIHRoZSB0ZXh0IG9mIHRoZSBsaWNlbnNlIGZvciB0aGUgZnVsbCBkaXNjbGFpbWVyLjwvcD4NCjxoMz5Db3B5cmlnaHQgYW5kIExpY2Vuc2U8L2gzPg0KPHA+Q29weXJpZ2h0ICZjb3B5OyAyMDA3LCBKYW1lcyBEaXhvbiA8YSBocmVmPSJtYWlsdG86amltLncuZGl4b25AZ21haWwuY29tIj4mbHQ7amltLncuZGl4b25AZ21haWwuY29tJmd0OzwvYT4uIEFsbCBSaWdodHMgQXJlIFJlc2VydmVkLjwvcD4NCjxwPlRoaXMgbW9kdWxlIGhhcyBiZWVuIHJlbGVhc2VkIHVuZGVyIHRoZSA8YSBocmVmPSJodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwiPkdOVSBQdWJsaWMgTGljZW5zZTwvYT4uIFlvdSBtdXN0IGFncmVlIHRvIHRoaXMgbGljZW5zZSBiZWZvcmUgdXNpbmcgdGhlIG1vZHVsZS48L3A+PGgzPlBhcmFtZXRlcnM8L2gzPjx1bD48bGk+PGVtPihvcHRpb25hbCk8L2VtPiBsYW5nPSJlbl9VUyIgLSBQYXJhbWV0ZXIgaXMgdXNlZCB0byBzcGVjaWZ5IHdoYXQgbGFuZ3VhZ2UgdG8gdXNlIGZvciBkaXNwbGF5IG9uIHRoZSBmcm9udGVuZC4gTm90IGFsbCBtb2R1bGVzIHN1cHBvcnQgb3IgbmVlZCB0aGlzLjwvbGk+PC91bD4=</help>
	<about>PGJyIC8+QXV0aG9yOiBKYW1lcyBEaXhvbiAmbHQ7amltLncuZGl4b25AZ21haWwuY29tJmd0OzxiciAvPjxiciAvPlZlcnNpb246IDEuMi40PGJyIC8+PGJyIC8+Q2hhbmdlIEhpc3Rvcnk6PGJyIC8+PGgzPkNoYW5nZSBMb2c8L2gzPg0KPGg0PlZlcnNpb24gMS4yLjQ8L2g0Pg0KPHA+PHVsPjxsaT5CdW1wZWQgbWF4IHZlcnNpb24gb2YgQ01TTVMgc3VwcG9ydGVkPC9saT48L3VsPjwvcD4NCjxoND5WZXJzaW9uIDEuMi4zPC9oND4NCjxwPjx1bD48bGk+VXBncmFkZWQgdG8gbW9kaWZpZWQgbWFncGllIGxpYnJhcnk8L2xpPg0KPGxpPkNoYW5nZWQgdG8gc3VwcG9ydCBDTVNNUyAxLjY8L2xpPg0KPC91bD48L3A+DQo8aDQ+VmVyc2lvbiAxLjIuMjwvaDQ+DQo8cD4NCjx1bD4NCiAgICA8bGk+Rml4ZWQgYSBwZXJtaXNzaW9ucyBpc3N1ZTwvbGk+DQoJPGxpPlVwZGF0ZWQgZG9jdW1lbnRhdGlvbiB0byByZWZsZWN0IGhvdyB0byBhY2Nlc3MgYXR0cmlidXRlczwvbGk+DQo8L3VsPg0KPGg0PlZlcnNpb24gMS4yLjE8L2g0Pg0KPHA+DQo8dWw+DQogICAgPGxpPkFiaWxpdHkgdG8gc3BlY2lmeSBhIHByb3h5IHNlcnZlciBpbiB0aGUgY2FzZSB0aGF0IHlvdXIgc2VydmVyIGlzIGJlaGluZCBhIHByb3h5LiBUaGFua3MgdG8gVGFyZWsgZm9yIGRpc2NvdmVyaW5nIHRoaXMgaXNzdWUuPC9saT4NCgk8bGk+TWFkZSBhIGNvdXBsZSBvZiBjaGFuZ2VzIHRvIHRoZSBoZWxwIGZpbGUgdG8gbWFrZSB0aGluZ3MgbW9yZSBjbGVhci4gVGhhbmtzIHRvIEVkdWFyZG8gZm9yIHRoZSBzdWdnZXN0aW9uLjwvbGk+DQo8L3VsPg0KPGg0PlZlcnNpb24gMS4yPC9oND4NCjxwPg0KPHVsPg0KICAgIDxsaT5GaXhlZCBhbiBpbnN0YWxsYXRpb24gaXNzdWUgd2hlcmUgdGhlIGNtc19tb2R1bGVfcnNzMmh0bWxfZmVlZHMgdGFibGUgd2FzIG5vdCBiZWluZyBjcmVhdGVkLiBUaGFua3MgdG8gUmFpbmVyIGZvciB0cmFja2luZyB0aGlzIGRvd24uPC9saT4NCiAgICA8bGk+QWRkZWQgYWJpbGl0eSB0byB1c2UgdGhlIG91dHB1dCBlbmNvZGluZyBvZiB0aGUgQ01TTVMgaW5zdGFsbGF0aW9uIGZvciBhbGwgZmVlZHMuPC9saT4NCiAgICA8bGk+QWRkZWQgYWJpbGl0eSB0byBzcGVjaWZ5IGEgZ2xvYmFsIG91dHB1dCBlbmNvZGluZyBpZiB5b3UgZG8gbm90IHdpc2ggdG8gdXNlIHRoYXQgb2YgdGhlIENNU01TIGluc3RhbGxhdGlvbi48L2xpPg0KICAgIDxsaT5BZGRlZCBhYmlsaXR5IHRvIHNwZWNpZnkgdGhlIGVuY29kaW5nIG9uIGEgcGVyLWZlZWQgYmFzaXMuPC9saT4NCiAgICA8bGk+QWRkZWQgdGhlIGFiaWxpdHkgdG8gZW5hYmxlL2Rpc2FibGUgdGhlIERFQlVHIG1vZGUgb2YgdGhlIE1hZ3BpZVJTUyBwYXJzZXIuICAgPC9saT4NCiAgICA8bGk+QWRkZWQgYSBidXR0b24gdG8gY2xlYXIgdGhlIGNhY2hlLjwvbGk+DQo8L3VsPg0KPGg0PlZlcnNpb24gMS4xLjE8L2g0Pg0KPHA+DQo8dWw+DQogICAgPGxpPk5vdyB3b3JrcyB3aXRoIHZlcnNpb25zIG9mIENNU01TICZndDsgMS4yLjEgPC9saT4NCjwvdWw+DQo8aDQ+VmVyc2lvbiAxLjE8L2g0Pg0KPHA+DQo8dWw+DQo8bGk+QWRkZWQgdGhlIGFiaWxpdHkgdG8gc2V0IHRoZSBjYWNoZSBhZ2Ugb24gYSBwZXItZmVlZCBiYXNpcy4gU2VlIEhlbHAgZm9yIG1vcmUgaW5mb3JtYXRpb24uPC9saT4NCjxsaT5GaXhlZCBidWcgd2l0aCBhbGwgYXNzb2NpYXRlZCB0ZW1wbGF0ZXMgbm90IGJlaW5nIHJlbW92ZWQgd2hlbiB1bmluc3RhbGxlZC48L2xpPjwvdWw+DQo8L3A+DQo8aDQ+VmVyc2lvbiAxLjA8L2g0Pg0KPHA+DQo8dWw+PGxpPkluaXRpYWwgcmVsZWFzZSBvZiBSU1MySFRNTDwvbGk+PC91bD4NCjwvcD48YnIgLz4=</about>
	<description>Allows RSS/Atom Feeds to be displayed as HTML.</description>
	<file>
	  <filename>/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/action.addfeed.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCgllcnJvcl9yZXBvcnRpbmcoRV9FUlJPUik7DQoNCglpZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCgkNCgkvLyBtYWtlIHN1cmUgdGhlIHVzZXIgaGFzIHBlcm1pc3Npb24NCglpZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBSU1MySFRNTCcpKQ0KCXsNCgkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnbmVlZHBlcm1pc3Npb24nLCBhcnJheSgnTW9kaWZ5IFJTUzJIVE1MJykpKTsNCgkJcmV0dXJuOw0KCX0NCg0KCS8vIGlmIHRoZSB1c2VyIGNhbmNlbGxlZCwgcmV0dXJuIHRoZW0gdG8gdGhlIGRlZmF1bHQgYWRtaW4gc2NyZWVuDQoJaWYgKGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSkNCgl7DQoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQpOw0KCX0NCgkNCgkvLyBwZXJmb3JtIHRoZSBhY3Rpb24NCgkNCgkvLyBnaXZlIHRoZSBmb3JtIGlkIHRvIHNtYXJ0eQ0KCSRzbWFydHktPmFzc2lnbignZm9ybWlkJywgJGlkKTsNCg0KCSRmZWVkaWQgPSBOVUxMOw0KCSRmZWVkbmFtZSA9ICcnOw0KCSRmZWVkdXJsID0gJyc7DQoNCgkvLyBjaGVjayB0byBzZWUgaWYgdGhlIGZvcm0gaGFzIHBvc3RlZA0KCWlmIChzdHJ0b2xvd2VyKCRfU0VSVkVSWydSRVFVRVNUX01FVEhPRCddKSA9PSAncG9zdCcpDQoJew0KCQkvLyB3ZSBuZWVkIHRvIGdyYWIgdGhlIG1hZ3BpZSBsaWJyYXJ5IGluIG9yZGVyIHRvIG1ha2Ugc3VyZSB0aGUgdXNlciBpcyBhZGRpbmcgYSB2YWxpZCBmZWVkDQoJCXJlcXVpcmVfb25jZShkaXJuYW1lKF9fRklMRV9fKSAuICcvbGliL21hZ3BpZXJzcy9yc3NfZmV0Y2guaW5jJyk7DQoJCQ0KCQkkZXJyb3JzID0gZmFsc2U7DQoJCQ0KCQlpZiAoaXNzZXQoJHBhcmFtc1snZmVlZGlkJ10pICYmIGlzX251bWVyaWMoJHBhcmFtc1snZmVlZGlkJ10pKQ0KCQl7DQoJCQkkZmVlZGlkID0gJHBhcmFtc1snZmVlZGlkJ107DQoJCX0NCgkJDQoJCWlmIChpc3NldCgkcGFyYW1zWydmZWVkbmFtZSddKSAmJiAkcGFyYW1zWydmZWVkbmFtZSddICE9ICcnKQ0KCQl7DQoJCQkkZmVlZG5hbWUgPSAkcGFyYW1zWydmZWVkbmFtZSddOw0KCQl9DQoJCWVsc2UNCgkJew0KCQkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnZXJyb3Jfbm9mZWVkbmFtZScpKTsNCgkJCSRlcnJvcnMgPSB0cnVlOw0KCQl9DQoJCQ0KCQlpZiAoaXNzZXQoJHBhcmFtc1snZmVlZHVybCddKSAmJiAkcGFyYW1zWydmZWVkdXJsJ10gIT0gJycpDQoJCXsNCgkJCSRmZWVkdXJsID0gJHBhcmFtc1snZmVlZHVybCddOw0KCQkJDQoJCQkvLyByZWdleCB0byBjaGVjayBmb3IgYSBzeW50YWN0aWNhbGx5LWNvcnJlY3QgdXJsDQoJCQlpZiAoIXByZWdfbWF0Y2goJy9eKGh0dHB8aHR0cHN8ZnRwKTpcL1wvKChbQS1aMC05XVtBLVowLTlfLV0qKShcLltBLVowLTldW0EtWjAtOV8tXSopKykoOihcZCspKT9cLz8vaScsICRmZWVkdXJsKSkNCgkJCXsNCgkJCQllY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdlcnJvcl9pbnZhbGlkZmVlZHVybCcpKTsNCgkJCQkkZXJyb3JzID0gdHJ1ZTsNCgkJCX0NCgkJCS8vIGlmIHRoZSB1cmwgd2FzIHZhbGlkLCBjaGVjayB0byBtYWtlIHN1cmUgdGhlIHVybCBwb2ludHMgdG8gYSB2YWxpZCBSU1MgZmVlZA0KCQkJZWxzZQ0KCQkJew0KCQkJCSRyc3MgPSBmZXRjaF9yc3MoJGZlZWR1cmwpOw0KCQkJCQ0KCQkJCWlmICghJHJzcykNCgkJCQl7DQoJCQkJCWVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ2Vycm9yX2ludmFsaWRmZWVkJykpOw0KCQkJCQkkZXJyb3JzID0gdHJ1ZTsNCgkJCQl9DQoJCQl9DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQllY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdlcnJvcl9ub2ZlZWR1cmwnKSk7DQoJCQkkZXJyb3JzID0gdHJ1ZTsNCgkJfQ0KCQkNCgkJLy8gaWYgdGhlcmUgd2VyZSBubyBlcnJvcnMsIHByb2NlZWQgdG8gYWRkL2VkaXQgdGhlIGZlZWQNCgkJaWYgKCEkZXJyb3JzKQ0KCQl7DQoJCQlpZiAoJHBhcmFtc1snYWN0aW9uJ10gPT0gJ2FkZGZlZWQnKQ0KCQkJew0KCQkJCSRxdWVyeSA9ICJTRUxFQ1QgaWQgRlJPTSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9yc3MyaHRtbF9mZWVkcyBXSEVSRSBmZWVkX25hbWUgPSA/IExJTUlUIDEiOw0KCQkJCSRyZXN1bHQgPSAkZGItPkdldFJvdygkcXVlcnksIGFycmF5KCRmZWVkbmFtZSkpOw0KCQkJCQ0KCQkJCWlmICghJHJlc3VsdCkNCgkJCQl7DQoJCQkJCSRmZWVkaWQgPSAkZGItPkdlbklEKGNtc19kYl9wcmVmaXgoKS4ibW9kdWxlX3JzczJodG1sX2ZlZWRzX3NlcSIpOw0KCQkJCQkkcXVlcnkgPSAnSU5TRVJUIElOVE8gJy5jbXNfZGJfcHJlZml4KCkuJ21vZHVsZV9yc3MyaHRtbF9mZWVkcyAoaWQsIGZlZWRfbmFtZSwgZmVlZF91cmwpIFZBTFVFUyAoPyw/LD8pJzsNCgkJCQkJJHJlc3VsdCA9ICRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRmZWVkaWQsICRmZWVkbmFtZSwgJGZlZWR1cmwpKTsNCgkJCQkJDQoJCQkJCWlmICghJHJlc3VsdCkNCgkJCQkJew0KCQkJCQkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnZXJyb3JfYWRkZmVlZCcpIC4gIjxiciAvPiIgLiAkZGItPkVycm9yTXNnKCkpOw0KCQkJCQl9DQoJCQkJCWVsc2UNCgkJCQkJewkJCQkNCgkJCQkJCSRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ2ZlZWRhZGRlZCcsICdhY3RpdmVfdGFiJyA9PiAnZmVlZHMnKTsNCgkJCQkJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsICRwYXJhbXMpOw0KCQkJCQl9DQoJCQkJfQ0KCQkJCWVsc2UNCgkJCQl7DQoJCQkJCWVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ2Vycm9yX2ZlZWRleGlzdHMnKSk7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJfQ0KCQ0KCS8vIHNldHVwIHRlbXBsYXRlDQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdoaWRkZW4nLCAnJyk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ2FkZGZlZWQnLCAkcmV0dXJuaWQpKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2VuZGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybUVuZCgpKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2ZlZWRuYW1ldGV4dCcsICR0aGlzLT5MYW5nKCdmZWVkbmFtZScpKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0ZmVlZG5hbWUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2ZlZWRuYW1lJywgJGZlZWRuYW1lLCAzMCwgMTAwKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmZWVkdXJsdGV4dCcsICR0aGlzLT5MYW5nKCdmZWVkdXJsJykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXRmZWVkdXJsJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdmZWVkdXJsJywgJGZlZWR1cmwsIDMwLCAyMDAwKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdWJtaXQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnc3VibWl0JywgbGFuZygnc3VibWl0JykpKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2NhbmNlbCcsICR0aGlzLT5DcmVhdGVJbnB1dFN1Ym1pdCgkaWQsICdjYW5jZWwnLCBsYW5nKCdjYW5jZWwnKSkpOw0KCQ0KCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnZWRpdGZlZWQudHBsJyk7DQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.addtemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCglpZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCgkNCgkvLyBtYWtlIHN1cmUgdGhlIHVzZXIgaGFzIHBlcm1pc3Npb24NCglpZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBSU1MySFRNTCcpKQ0KCXsNCgkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnbmVlZHBlcm1pc3Npb24nLCBhcnJheSgnTW9kaWZ5IFJTUzJIVE1MJykpKTsNCgkJcmV0dXJuOw0KCX0NCg0KCS8vIGlmIHRoZSB1c2VyIGNhbmNlbGxlZCwgcmV0dXJuIHRoZW0gdG8gdGhlIGRlZmF1bHQgYWRtaW4gc2NyZWVuDQoJaWYgKGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSkNCgl7DQoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsIGFycmF5KCdhY3RpdmVfdGFiJyA9PiAndGVtcGxhdGVzJykpOw0KCX0NCgkNCgkvLyBnaXZlIHRoZSBmb3JtIGlkIHRvIHNtYXJ0eQ0KCSRzbWFydHktPmFzc2lnbignZm9ybWlkJywgJGlkKTsNCg0KCS8vIGluaXRpYWxpemUNCgkkdGVtcGxhdGVuYW1lID0gKGlzc2V0KCRwYXJhbXNbJ3RlbXBsYXRlbmFtZSddKSA/ICRwYXJhbXNbJ3RlbXBsYXRlbmFtZSddIDogJycpOw0KCSR0ZW1wbGF0ZWNvbnRlbnQgPSAoaXNzZXQoJHBhcmFtc1sndGVtcGxhdGVjb250ZW50J10pID8gJHBhcmFtc1sndGVtcGxhdGVjb250ZW50J10gOiAnJyk7DQoJDQoJLy8gY2hlY2sgdG8gc2VlIGlmIHRoZSBmb3JtIGhhcyBwb3N0ZWQNCglpZiAoc3RydG9sb3dlcigkX1NFUlZFUlsnUkVRVUVTVF9NRVRIT0QnXSkgPT0gJ3Bvc3QnKQ0KCXsNCgkJaWYgKCR0ZW1wbGF0ZW5hbWUgPT0gJycpDQoJCQllY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdlcnJvcl90ZW1wbGF0ZW5hbWVfcmVxJykpOw0KCQkJDQoJCWlmICgkdGVtcGxhdGVjb250ZW50ID09ICcnKQ0KCQkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnZXJyb3JfdGVtcGxhdGVjb250ZW50X3JlcScpKTsNCgkJDQoJCWlmICgkdGVtcGxhdGVuYW1lICE9ICcnICYmICR0ZW1wbGF0ZWNvbnRlbnQgIT0gJycpDQoJCXsNCgkJCSRxdWVyeSA9ICdTRUxFQ1QgKiBGUk9NICcgLiBjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX3RlbXBsYXRlcyBXSEVSRSBtb2R1bGVfbmFtZSA9ID8gQU5EIHRlbXBsYXRlX25hbWUgPSA/IExJTUlUIDEnOw0KCQkJJHJlc3VsdCA9ICRkYi0+R2V0Um93KCRxdWVyeSwgYXJyYXkoJHRoaXMtPkdldE5hbWUoKSwgJHRlbXBsYXRlbmFtZSkpOw0KDQoJCQlpZiAoZW1wdHkoJHJlc3VsdCkpDQoJCQl7CQ0KCQkJCSR0aGlzLT5TZXRUZW1wbGF0ZSgkdGVtcGxhdGVuYW1lLCAkdGVtcGxhdGVjb250ZW50KTsNCgkJCQkNCgkJCQkkcGFyYW1zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICd0ZW1wbGF0ZWFkZGVkJywgJ2FjdGl2ZV90YWInID0+ICd0ZW1wbGF0ZXMnKTsNCgkJCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFyYW1zKTsNCgkJCX0NCgkJCWVsc2UNCgkJCXsNCgkJCQllY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCd0ZW1wbGF0ZWV4aXN0cycpKTsNCgkJCX0NCgkJfQ0KCX0NCgkNCgkvLyBzZXR1cCB0ZW1wbGF0ZQ0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignaGlkZGVuJywgJycpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3RhcnRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1TdGFydCgkaWQsICdhZGR0ZW1wbGF0ZScsICRyZXR1cm5pZCkpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGVtcGxhdGVuYW1ldGV4dCcsICR0aGlzLT5MYW5nKCd0ZW1wbGF0ZW5hbWV0ZXh0JykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXR0ZW1wbGF0ZW5hbWUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ3RlbXBsYXRlbmFtZScsICR0ZW1wbGF0ZW5hbWUsIDMwLCAxMDApKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlY29udGVudHRleHQnLCAkdGhpcy0+TGFuZygndGVtcGxhdGVjb250ZW50dGV4dCcpKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0dGVtcGxhdGVjb250ZW50JywgJHRoaXMtPkNyZWF0ZVRleHRBcmVhKGZhbHNlLCAkaWQsICR0ZW1wbGF0ZWNvbnRlbnQsICd0ZW1wbGF0ZWNvbnRlbnQnLCAnJywgJycsICcnLCAnJywgJzgwJywgJzIwJywgJycsICdodG1sJykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsIGxhbmcoJ3N1Ym1pdCcpKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2FuY2VsJywgbGFuZygnY2FuY2VsJykpKTsNCgkNCgllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXR0ZW1wbGF0ZS50cGwnKTsNCj8+]]></data>
	</file>
	<file>
	  <filename>/action.default.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCmlmICghaXNzZXQoJGdDbXMpKSBleGl0Ow0KDQovKiAtPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LQ0KDQogICBDb2RlIGZvciBSU1MySFRNTCAiZGVmYXVsdCIgYWN0aW9uDQoNCiAgIC09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tDQogICANCiAgIFR5cGljYWxseSwgdGhpcyB3aWxsIGRpc3BsYXkgc29tZXRoaW5nIGZyb20gYSB0ZW1wbGF0ZQ0KICAgb3IgZG8gc29tZSBvdGhlciB0YXNrLg0KICAgDQoqLw0KDQovLyB3ZSBuZWVkIHRvIGdyYWIgdGhlIG1hZ3BpZSBsaWJyYXJ5IGluIG9yZGVyIHRvIG1ha2Ugc3VyZSB0aGUgdXNlciBpcyBhZGRpbmcgYSB2YWxpZCBmZWVkDQpyZXF1aXJlX29uY2UoZGlybmFtZShfX0ZJTEVfXykgLiAnL2xpYi9tYWdwaWVyc3MvcnNzX2ZldGNoLmluYycpOw0KcmVxdWlyZV9vbmNlKGRpcm5hbWUoX19GSUxFX18pIC4gJy9saWIvZnVuY3Rpb24uZW5jb2RpbmcuaW5jJyk7DQoNCi8vIGRlZmF1bHQgY2FjaGUgYWdlIDEgaG91cg0KJGNhY2hlX2FnZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdDQUNIRV9BR0UnLCAnNjAqNjAnKTsNCg0KLy8gc2VlIGlmIGEgY2FjaGUgYWdlIHdhcyBzZXQsIGlmIG5vdCwgdXNlIHRoZSBkZWZhdWx0DQppZiAoaXNzZXQoJHBhcmFtc1snY2FjaGVfYWdlJ10pKQ0Kew0KCWlmIChpc19udW1lcmljKCRwYXJhbXNbJ2NhY2hlX2FnZSddKSAmJiAkcGFyYW1zWydjYWNoZV9hZ2UnXSA+IDApDQoJew0KCQkkY2FjaGVfYWdlID0gdHJpbSgkcGFyYW1zWydjYWNoZV9hZ2UnXSk7DQoJfQ0KfQ0KDQovLyBhbGxvdyB1c2VyIHRvIHBhc3MgaW4gZGlmZmVyZW50IGVuY29kaW5ncyBmb3IgZGlmZmVyZW50IGZlZWRzLiBub3Qgc3VyZSBpZiB0aGlzIHdpbGwgYmUgdXNlZCB2ZXJ5IG9mdGVuLCBidXQgdGhlIG9wdGlvbiBpcyB0aGVyZS4NCmlmIChpc3NldCgkcGFyYW1zWydlbmNvZGluZyddKSkNCnsNCgkkZW5jb2RpbmcgPSB0cmltKCRwYXJhbXNbJ2VuY29kaW5nJ10pOw0KCQ0KCS8vIGNoZWNrIHRvIHNlZSBpZiBlbmNvZGluZyBpcyB2YWxpZCwgaWYgbm90IGRlZmF1bHQgdG8gVVRGLTgNCglpZiAoIWlzVmFsaWRPdXRwdXRFbmNvZGluZygkZW5jb2RpbmcpKQ0KCXsNCgkJJGVuY29kaW5nID0gJ1VURi04JzsNCgl9DQp9DQovLyBkZXRlcm1pbmUgd2hhdCBlbmNvZGluZyB0byB1c2UgLSBDTVNNUyBkZWZhdWx0IG9yIHVzZXIgZGVmaW5lZCAtIG92ZXJhbGwgZGVmYXVsdCBpcyBVVEYtOA0KZWxzZQ0Kew0KCWlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnU1lOQ19DTVNfRU5DT0RJTkdfRU5BQkxFRCcsICd0cnVlJykgPT0gJ3RydWUnKQ0KCXsNCgkJaWYgKCRjb25maWdbJ2FkbWluX2VuY29kaW5nJ10gIT0gJycpDQoJCQkkZW5jb2RpbmcgPSAkY29uZmlnWydhZG1pbl9lbmNvZGluZyddOw0KCQllbHNlIGlmICgkY29uZmlnWydkZWZhdWx0X2VuY29kaW5nJ10gIT0gJycpDQoJCQkkZW5jb2RpbmcgPSAkY29uZmlnWydkZWZhdWx0X2VuY29kaW5nJ107DQoJCWVsc2UNCgkJCSRlbmNvZGluZyA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdPVVRQVVRfRU5DT0RJTkcnLCAnVVRGLTgnKTsNCgl9DQoJZWxzZQ0KCXsNCgkJCSRlbmNvZGluZyA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdPVVRQVVRfRU5DT0RJTkcnLCAnVVRGLTgnKTsNCgl9CQ0KfQ0KDQovLyBzZXR1cCBwcmVmcyAtIHRoaXMgZnVuY3Rpb25zIG11c3QgYmUgY2FsbGVkIGJlZm9yZSBmZXRjaF9yc3MNCmluaXQoJHRoaXMtPkdldFByZWZlcmVuY2UoJ0NBQ0hJTkdfRU5BQkxFRCcsICd0cnVlJyksIA0KCSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnQ0FDSEVfRElSJywgJy4vbW9kdWxlcy9SU1MySFRNTC9jYWNoZScpLA0KCSAkY2FjaGVfYWdlLA0KCSAkZW5jb2RpbmcsDQoJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdERUJVR19FTkFCTEVEJywgZmFsc2UpLA0KCSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnUFJPWFlfRU5BQkxFRCcsIGZhbHNlKSwNCgkgJHRoaXMtPkdldFByZWZlcmVuY2UoJ1BST1hZX0hPU1QnLCAiIiksDQoJICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdQUk9YWV9QT1JUJywgIiIpKTsNCg0KJHRlbXBsYXRlID0gIkRlZmF1bHQiOw0KDQovLyBjaGVjayB0byBzZWUgaWYgdGhlIHVzZXIgcGFzc2VkIGEgdGVtcGxhdGUNCmlmIChpc3NldCgkcGFyYW1zWyd0ZW1wbGF0ZSddKSkNCnsNCgkkdGVtcGxhdGUgPSAkcGFyYW1zWyd0ZW1wbGF0ZSddOw0KfQ0KDQovLyBzZWUgaWYgYSBmZWVkIG5hbWUgd2FzIHBhc3NlZCwgaWYgbm90LCBub3RpZnkgdGhlIHVzZXIgYW5kIGRvIG5vdGhpbmcNCmlmIChpc3NldCgkcGFyYW1zWydmZWVkJ10pKQ0Kew0KCSRmZWVkID0gJHBhcmFtc1snZmVlZCddOw0KfQ0KZWxzZQ0Kew0KCWVjaG8gIlJTUzJIVE1MOiBObyBmZWVkIHNwZWNpZmllZCI7DQoJcmV0dXJuOw0KfQ0KDQokbnVtaXRlbXMgPSAwOwkJLy8gdW5saW1pdGVkDQoNCmlmIChpc3NldCgkcGFyYW1zWydudW1pdGVtcyddKSAmJiBpc19udW1lcmljKCRwYXJhbXNbJ251bWl0ZW1zJ10pKQ0Kew0KCSRudW1pdGVtcyA9ICRwYXJhbXNbJ251bWl0ZW1zJ107DQp9DQoNCi8vIGdyYWIgdGhlIGZlZWQgaW5mb3JtYXRpb24NCiRxdWVyeSA9ICJTRUxFQ1QgZmVlZF91cmwgRlJPTSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9yc3MyaHRtbF9mZWVkcyBXSEVSRSBmZWVkX25hbWUgPSA/IExJTUlUIDEiOw0KJHJlc3VsdCA9ICRkYi0+R2V0Um93KCRxdWVyeSwgYXJyYXkoJGZlZWQpKTsNCg0KLy8gYXR0ZW1wdCB0byBwYXJzZSB0aGUgZmVlZA0KaWYgKCRyZXN1bHQpDQp7DQoJJHJzcyA9IGZldGNoX3JzcygkcmVzdWx0WydmZWVkX3VybCddKTsNCg0KCWlmICgkcnNzKQ0KCXsNCgkJaWYgKCRudW1pdGVtcyA+IDApDQoJCXsNCgkJCSRpdGVtcyA9IGFycmF5X3NsaWNlKCRyc3MtPml0ZW1zLCAwLCAkbnVtaXRlbXMpOw0KCQkJJHJzcy0+aXRlbXMgPSAkaXRlbXM7DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQkkaXRlbXMgPSAkcnNzLT5pdGVtczsNCgkJfQ0KCQkNCgkJJHNtYXJ0eS0+YXNzaWduKCJyc3MiLCAkcnNzKTsNCgkJJHJzcy0+aXRlbXMgPSAkaXRlbXM7DQoJCQ0KCQllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGVGcm9tRGF0YWJhc2UoJHRlbXBsYXRlKTsNCgl9DQoJZWxzZQ0KCXsNCgkJJHNtYXJ0eS0+YXNzaWduKCJmZWVkdGl0bGUiLCJQcm9ibGVtIHdpdGg6ICR1cmwiKTsNCgl9DQp9DQoNCj8+DQo=]]></data>
	</file>
	<file>
	  <filename>/action.defaultadmin.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCmlmICghaXNzZXQoJGdDbXMpKSBleGl0Ow0KDQovLyBtYWtlIHN1cmUgdGhlIHVzZXIgaGFzIHBlcm1pc3Npb24NCglpZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBSU1MySFRNTCcpKQ0KCXsNCgkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnbmVlZHBlcm1pc3Npb24nLCBhcnJheSgnTW9kaWZ5IFJTUzJIVE1MJykpKTsNCgkJcmV0dXJuOw0KCX0NCg0KLyogLT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS0NCg0KICAgQ29kZSBmb3IgUlNTMkhUTUwgImRlZmF1bHRhZG1pbiIgYWRtaW4gYWN0aW9uDQogICANCiAgIC09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tPS09LT0tDQogICANCiAgIFR5cGljYWxseSwgdGhpcyB3aWxsIGRpc3BsYXkgc29tZXRoaW5nIGZyb20gYSB0ZW1wbGF0ZQ0KICAgb3IgZG8gc29tZSBvdGhlciB0YXNrLg0KICAgDQoqLw0KDQplY2hvICR0aGlzLT5TdGFydFRhYkhlYWRlcnMoKTsNCgkNCglpZiAoRkFMU0UgPT0gZW1wdHkoJHBhcmFtc1snYWN0aXZlX3RhYiddKSkNCgkgIHsNCgkJJHRhYiA9ICRwYXJhbXNbJ2FjdGl2ZV90YWInXTsNCgkgIH0gZWxzZSB7DQoJICAkdGFiID0gJyc7DQoJfQ0KCQ0KCWVjaG8gJHRoaXMtPlNldFRhYkhlYWRlcignZmVlZHMnLCR0aGlzLT5MYW5nKCdmZWVkcycpLCAoJ2ZlZWRzJyA9PSAkdGFiKSA/IHRydWUgOiBmYWxzZSk7DQoJZWNobyAkdGhpcy0+U2V0VGFiSGVhZGVyKCd0ZW1wbGF0ZXMnLCR0aGlzLT5MYW5nKCd0ZW1wbGF0ZXMnKSwgKCd0ZW1wbGF0ZXMnID09ICR0YWIpID8gdHJ1ZSA6IGZhbHNlKTsNCgllY2hvICR0aGlzLT5TZXRUYWJIZWFkZXIoJ3ByZWZlcmVuY2VzJywkdGhpcy0+TGFuZygncHJlZmVyZW5jZXMnKSwgKCdwcmVmZXJlbmNlcycgPT0gJHRhYikgPyB0cnVlIDogZmFsc2UpOw0KCQ0KZWNobyAkdGhpcy0+RW5kVGFiSGVhZGVycygpOw0KDQovKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gYmVnaW4gdGFiIGNvbnRlbnQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovDQoNCmVjaG8gJHRoaXMtPlN0YXJ0VGFiQ29udGVudCgpOw0KDQoJZWNobyAkdGhpcy0+U3RhcnRUYWIoJ2ZlZWRzJywgJHBhcmFtcyk7DQogICAgaW5jbHVkZShkaXJuYW1lKF9fRklMRV9fKS4nL2Z1bmN0aW9uLmFkbWluX2ZlZWRzdGFiLnBocCcpOw0KICAgIGVjaG8gJHRoaXMtPkVuZFRhYigpOw0KCQ0KCWVjaG8gJHRoaXMtPlN0YXJ0VGFiKCd0ZW1wbGF0ZXMnLCAkcGFyYW1zKTsNCiAgICBpbmNsdWRlKGRpcm5hbWUoX19GSUxFX18pLicvZnVuY3Rpb24uYWRtaW5fdGVtcGxhdGVzdGFiLnBocCcpOw0KICAgIGVjaG8gJHRoaXMtPkVuZFRhYigpOw0KCQ0KCWVjaG8gJHRoaXMtPlN0YXJ0VGFiKCdwcmVmZXJlbmNlcycsICRwYXJhbXMpOw0KICAgIGluY2x1ZGUoZGlybmFtZShfX0ZJTEVfXykuJy9mdW5jdGlvbi5hZG1pbl9wcmVmZXJlbmNlc3RhYi5waHAnKTsNCiAgICBlY2hvICR0aGlzLT5FbmRUYWIoKTsNCgkNCmVjaG8gJHRoaXMtPkVuZFRhYkNvbnRlbnQoKTsNCg0KDQovL2VjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnYWRtaW5wYW5lbC50cGwnKTsNCg0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.deletefeed.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCglpZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCgkNCglpZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBSU1MySFRNTCcpKQ0KCXsNCgkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnbmVlZHBlcm1pc3Npb24nLCBhcnJheSgnTW9kaWZ5IFJTUzJIVE1MJykpKTsNCgkJcmV0dXJuOw0KCX0NCg0KCS8vIHNlZSBpZiB0aGVyZSBpcyBhIGZlZWQgaWQNCgkkZmVlZGlkID0gJyc7DQoJaWYgKGlzc2V0KCRwYXJhbXNbJ2ZlZWRpZCddKSAmJiBpc19udW1lcmljKCRwYXJhbXNbJ2ZlZWRpZCddKSAmJiAkcGFyYW1zWydmZWVkaWQnXSA+PSAwKQ0KCXsNCgkJJGZlZWRpZCA9ICRwYXJhbXNbJ2ZlZWRpZCddOw0KCX0NCgkvLyBpZiBub3QsIGV4aXQgdGhlIHNjcmlwdA0KCWVsc2UNCgl7DQoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsICRwYXJhbXMpOw0KCX0NCg0KCS8vIHJlbW92ZSB0aGUgZmVlZA0KCSRxdWVyeSA9ICJERUxFVEUgRlJPTSAiIC4gY21zX2RiX3ByZWZpeCgpIC4gIm1vZHVsZV9yc3MyaHRtbF9mZWVkcyBXSEVSRSBpZCA9ID8iOw0KCSRkYi0+RXhlY3V0ZSgkcXVlcnksIGFycmF5KCRmZWVkaWQpKTsNCg0KCSRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ2ZlZWRkZWxldGVkJywgJ2FjdGl2ZV90YWInID0+ICdmZWVkcycpOw0KCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsICRwYXJhbXMpOw0KPz4=]]></data>
	</file>
	<file>
	  <filename>/action.deletetemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCg0KICBpZiggISAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdNb2RpZnkgVGVtcGxhdGVzJykgKQ0KICAgIHsNCiAgICAgIC8vIHRvZG8sIHBlcm1pc3Npb25zIG1lc3NhZ2UgaGVyZQ0KICAgICAgcmV0dXJuOw0KICAgIH0NCg0KICBpZiggIShpc3NldCgkcGFyYW1zWyd0ZW1wbGF0ZW5hbWUnXSkpICkNCiAgICB7DQogICAgICAkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkKTsNCiAgICB9DQoNCiAgJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCRwYXJhbXNbJ3RlbXBsYXRlbmFtZSddKTsNCg0KICAkb3B0aW9ucyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAndGVtcGxhdGVkZWxldGVkJywgJ2FjdGl2ZV90YWInID0+ICd0ZW1wbGF0ZXMnKTsNCiAgJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJG9wdGlvbnMpOw0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.editfeed.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCglpZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCgkNCgkvLyBtYWtlIHN1cmUgdGhlIHVzZXIgaGFzIHBlcm1pc3Npb24NCglpZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBSU1MySFRNTCcpKQ0KCXsNCgkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnbmVlZHBlcm1pc3Npb24nLCBhcnJheSgnTW9kaWZ5IFJTUzJIVE1MJykpKTsNCgkJcmV0dXJuOw0KCX0NCg0KCS8vIGlmIHRoZSB1c2VyIGNhbmNlbGxlZCwgcmV0dXJuIHRoZW0gdG8gdGhlIGRlZmF1bHQgYWRtaW4gc2NyZWVuDQoJaWYgKGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSkNCgl7DQoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQpOw0KCX0NCgkNCgkvLyBnaXZlIHRoZSBmb3JtIGlkIHRvIHNtYXJ0eQ0KCSRzbWFydHktPmFzc2lnbignZm9ybWlkJywgJGlkKTsNCgkNCgkvLyBpbml0aWFsaXplDQoJJGZlZWRpZCA9IE5VTEw7DQoJJGZlZWRuYW1lID0gJyc7DQoJJGZlZWR1cmwgPSAnJzsNCgkJDQoJLy8gY2hlY2sgdG8gc2VlIGlmIHRoZSBmb3JtIGhhcyBwb3N0ZWQNCglpZiAoc3RydG9sb3dlcigkX1NFUlZFUlsnUkVRVUVTVF9NRVRIT0QnXSkgPT0gJ3Bvc3QnKQ0KCXsNCgkJJGVycm9ycyA9IGZhbHNlOw0KCQkNCgkJaWYgKGlzc2V0KCRwYXJhbXNbJ2ZlZWRpZCddKSAmJiBpc19udW1lcmljKCRwYXJhbXNbJ2ZlZWRpZCddKSkNCgkJew0KCQkJJGZlZWRpZCA9ICRwYXJhbXNbJ2ZlZWRpZCddOw0KCQl9DQoJCQ0KCQlpZiAoaXNzZXQoJHBhcmFtc1snZmVlZG5hbWUnXSkgJiYgJHBhcmFtc1snZmVlZG5hbWUnXSAhPSAnJykNCgkJew0KCQkJJGZlZWRuYW1lID0gJHBhcmFtc1snZmVlZG5hbWUnXTsNCgkJfQ0KCQllbHNlDQoJCXsNCgkJCWVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ2Vycm9yX25vZmVlZG5hbWUnKSk7DQoJCQkkZXJyb3JzID0gdHJ1ZTsNCgkJfQ0KCQkNCgkJaWYgKGlzc2V0KCRwYXJhbXNbJ2ZlZWR1cmwnXSkgJiYgJHBhcmFtc1snZmVlZHVybCddICE9ICcnKQ0KCQl7DQoJCQkkZmVlZHVybCA9ICRwYXJhbXNbJ2ZlZWR1cmwnXTsNCgkJCQ0KCQkJLy8gcmVnZXggdG8gY2hlY2sgZm9yIGEgc3ludGFjdGljYWxseS1jb3JyZWN0IHVybA0KCQkJaWYgKCFwcmVnX21hdGNoKCcvXihodHRwfGh0dHBzfGZ0cCk6XC9cLygoW0EtWjAtOV1bQS1aMC05Xy1dKikoXC5bQS1aMC05XVtBLVowLTlfLV0qKSspKDooXGQrKSk/XC8/L2knLCAkZmVlZHVybCkpDQoJCQl7DQoJCQkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnZXJyb3JfaW52YWxpZGZlZWR1cmwnKSk7DQoJCQkJJGVycm9ycyA9IHRydWU7DQoJCQl9DQoJCX0NCgkJZWxzZQ0KCQl7DQoJCQllY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdlcnJvcl9ub2ZlZWR1cmwnKSk7DQoJCQkkZXJyb3JzID0gdHJ1ZTsNCgkJfQ0KCQkNCgkJLy8gaWYgdGhlcmUgd2VyZSBubyBlcnJvcnMsIHByb2NlZWQgdG8gYWRkL2VkaXQgdGhlIGZlZWQNCgkJaWYgKCEkZXJyb3JzKQ0KCQl7DQoJCQlpZiAoJHBhcmFtc1snYWN0aW9uJ10gPT0gJ2VkaXRmZWVkJykNCgkJCXsNCgkJCQkkcXVlcnkgPSAnVVBEQVRFICcuY21zX2RiX3ByZWZpeCgpLidtb2R1bGVfcnNzMmh0bWxfZmVlZHMgU0VUIGZlZWRfbmFtZSA9ID8sIGZlZWRfdXJsID0gPyBXSEVSRSBpZCA9ID8nOw0KCQkJCSRyZXN1bHQgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5LCBhcnJheSgkZmVlZG5hbWUsICRmZWVkdXJsLCAkZmVlZGlkKSk7DQoJCQkJDQoJCQkJaWYgKCEkcmVzdWx0KQ0KCQkJCXsNCgkJCQkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnZXJyb3JfZWRpdGZlZWQnKSAuICI8YnIgLz4iIC4gJGRiLT5FcnJvck1zZygpKTsNCgkJCQl9DQoJCQkJZWxzZQ0KCQkJCXsJCQkJDQoJCQkJCSRvcHRpb25zID0gYXJyYXkoJ3RhYl9tZXNzYWdlJz0+ICdmZWVkZWRpdGVkJywgJ2FjdGl2ZV90YWInID0+ICdmZWVkcycpOw0KCQkJCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkb3B0aW9ucyk7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJfQ0KCWVsc2UNCgl7DQoJCWlmIChpc3NldCgkcGFyYW1zWydmZWVkaWQnXSkgJiYgaXNfbnVtZXJpYygkcGFyYW1zWydmZWVkaWQnXSkpDQoJCXsJDQoJCQkkZmVlZGlkID0gJHBhcmFtc1snZmVlZGlkJ107DQoJCQkkcXVlcnkgPSAnU0VMRUNUICogRlJPTSAnIC4gY21zX2RiX3ByZWZpeCgpIC4gJ21vZHVsZV9yc3MyaHRtbF9mZWVkcyBXSEVSRSBpZCA9ID8gTElNSVQgMSc7DQoJCQkkcmVzdWx0ID0gJGRiLT5HZXRSb3coJHF1ZXJ5LCBhcnJheSgkZmVlZGlkKSk7DQoJCQkNCgkJCWlmICgkcmVzdWx0KQ0KCQkJew0KCQkJCSRmZWVkbmFtZSA9ICRyZXN1bHRbJ2ZlZWRfbmFtZSddOw0KCQkJCSRmZWVkdXJsID0gJHJlc3VsdFsnZmVlZF91cmwnXTsNCgkJCX0NCgkJCWVsc2UNCgkJCXsNCgkJCQllY2hvICR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdub2ZlZWR3aXRodGhhdGlkJykpOw0KCQkJfQ0KCQl9DQoJCWVsc2UNCgkJew0KCQkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgYXJyYXkoKSk7DQoJCX0NCgl9DQoJDQoJLy8gc2V0dXAgdGVtcGxhdGUNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICdmZWVkaWQnLCAkZmVlZGlkKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ2VkaXRmZWVkJywgJHJldHVybmlkKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdmZWVkbmFtZXRleHQnLCAkdGhpcy0+TGFuZygnZmVlZG5hbWUnKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdpbnB1dGZlZWRuYW1lJywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdmZWVkbmFtZScsICRmZWVkbmFtZSwgMzAsIDEwMCkpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignZmVlZHVybHRleHQnLCAkdGhpcy0+TGFuZygnZmVlZHVybCcpKTsNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2lucHV0ZmVlZHVybCcsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnZmVlZHVybCcsICRmZWVkdXJsLCAzMCwgMjAwMCkpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsIGxhbmcoJ3N1Ym1pdCcpKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2FuY2VsJywgbGFuZygnY2FuY2VsJykpKTsNCgkNCgllY2hvICR0aGlzLT5Qcm9jZXNzVGVtcGxhdGUoJ2VkaXRmZWVkLnRwbCcpOw0KPz4=]]></data>
	</file>
	<file>
	  <filename>/action.editprefs.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCglpZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCgkNCgkvLyBtYWtlIHN1cmUgdGhlIHVzZXIgaGFzIHBlcm1pc3Npb24NCglpZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBSU1MySFRNTCcpKQ0KCXsNCgkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnbmVlZHBlcm1pc3Npb24nLCBhcnJheSgnTW9kaWZ5IFJTUzJIVE1MJykpKTsNCgkJcmV0dXJuOw0KCX0NCg0KCS8vIGlmIHRoZSB1c2VyIGNhbmNlbGxlZCwgcmV0dXJuIHRoZW0gdG8gdGhlIGRlZmF1bHQgYWRtaW4gc2NyZWVuDQoJaWYgKGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSkNCgl7DQoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQpOw0KCX0NCg0KCS8vIGNsZWFyIHRoZSBjYWNoZSBpZiB0aGUgYnV0dG9uIHdhcyBjbGlja2VkDQoJaWYgKGlzc2V0KCRwYXJhbXNbJ2NsZWFyY2FjaGUnXSkpDQoJew0KCQkkZGlyZWN0b3J5ID0gJHRoaXMtPkdldE1vZHVsZVBhdGgoKSAuICcvY2FjaGUnOw0KCQllY2hvICRkaXJlY3Rvcnk7DQoJCWlmKCAhJGRpcmhhbmRsZSA9IEBvcGVuZGlyKCRkaXJlY3RvcnkpICkNCgkJCQlyZXR1cm47DQoNCgkJd2hpbGUoIGZhbHNlICE9PSAoJGZpbGVuYW1lID0gcmVhZGRpcigkZGlyaGFuZGxlKSkgKSANCgkJew0KCQkJCWlmKCAkZmlsZW5hbWUgIT0gIi4iICYmICRmaWxlbmFtZSAhPSAiLi4iICkgDQoJCQkJew0KCQkJCQkkZmlsZW5hbWUgPSAkZGlyZWN0b3J5LiAiLyIuICRmaWxlbmFtZTsNCgkJCQkJQHVubGluaygkZmlsZW5hbWUpOw0KCQkJCX0NCgkJfQ0KCQkJCQkNCgkJLy8gcmVkaXJlY3QNCgkJJHBhcmFtcyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAnY2FjaGVjbGVhcmVkJywgJ2FjdGl2ZV90YWInID0+ICdwcmVmZXJlbmNlcycpOw0KCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFyYW1zKTsNCgl9DQoJDQoJcmVxdWlyZV9vbmNlKGRpcm5hbWUoX19GSUxFX18pIC4gJy9saWIvZnVuY3Rpb24uZW5jb2RpbmcuaW5jJyk7DQoJDQoJLy8gaW5pdGlhbGl6ZQ0KCSRjYWNoZWVuYWJsZWQgPSBOVUxMOw0KCSRjYWNoZWFnZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdDQUNIRV9BR0UnLCAnNjAqNjAnKTsNCgkkY2FjaGVkaXIgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnQ0FDSEVfRElSJywgJy4vbW9kdWxlcy9SU1MySFRNTC9jYWNoZScpOw0KCSRzeW5jY21zZW5jb2RpbmdlbmFibGVkID0gTlVMTDsNCgkkb3V0cHV0ZW5jb2RpbmcgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnT1VUUFVUX0VOQ09ESU5HJywgJ1VURi04Jyk7DQoJJGVuYWJsZXByb3h5ID0gTlVMTDsNCgkkcHJveHlob3N0ID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ1BST1hZX0hPU1QnLCAiIik7DQoJJHByb3h5cG9ydCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdQUk9YWV9QT1JUJywgIiIpOw0KCSRkZWJ1Z2VuYWJsZWQgPSBOVUxMOw0KCQ0KCS8vIGdpdmUgdGhlIGZvcm0gaWQgdG8gc21hcnR5DQoJJHNtYXJ0eS0+YXNzaWduKCdmb3JtaWQnLCAkaWQpOw0KCQ0KCWlmIChpc3NldCgkcGFyYW1zWydhY3Rpb24nXSkgJiYgJHBhcmFtc1snYWN0aW9uJ10gPT0gJ2VkaXRwcmVmcycpDQoJew0KCQlpZiAoaXNzZXQoJHBhcmFtc1snY2FjaGVlbmFibGVkJ10pKQ0KCQl7DQoJCQkkY2FjaGVlbmFibGVkID0gJHBhcmFtc1snY2FjaGVlbmFibGVkJ10gPyAidHJ1ZSIgOiAiZmFsc2UiOw0KCQl9DQoJCQ0KCQlpZiAoaXNzZXQoJHBhcmFtc1snY2FjaGVhZ2UnXSkpDQoJCXsNCgkJCSRjYWNoZWFnZSA9ICRwYXJhbXNbJ2NhY2hlYWdlJ107DQoJCX0NCgkJDQoJCWlmIChpc3NldCgkcGFyYW1zWydjYWNoZWRpciddKSkNCgkJew0KCQkJJGNhY2hlZGlyID0gJHBhcmFtc1snY2FjaGVkaXInXTsNCgkJfQ0KCQkNCgkJaWYgKGlzc2V0KCRwYXJhbXNbJ3N5bmNjbXNlbmNvZGluZyddKSkNCgkJew0KCQkJJHN5bmNjbXNlbmNvZGluZ2VuYWJsZWQgPSAkcGFyYW1zWydzeW5jY21zZW5jb2RpbmcnXSA/ICJ0cnVlIiA6ICJmYWxzZSI7DQoJCQkNCgkJCWlmICgkc3luY2Ntc2VuY29kaW5nZW5hYmxlZCA9PSAndHJ1ZScpDQoJCQl7DQoJCQkJaWYgKCFpc1ZhbGlkT3V0cHV0RW5jb2RpbmcoJGNvbmZpZ1snYWRtaW5fZW5jb2RpbmcnXSkpDQoJCQkJew0KCQkJCQkkcGFyYW1zID0gYXJyYXkoJ21vZHVsZV9lcnJvcic9PiAkdGhpcy0+TGFuZygnY21zaW52YWxpZGVuY29kaW5nJyksICdhY3RpdmVfdGFiJyA9PiAncHJlZmVyZW5jZXMnKTsNCgkJCQkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyk7DQoJCQkJfQ0KCQkJfQ0KCQl9DQoJCQ0KCQlpZiAoaXNzZXQoJHBhcmFtc1snb3V0cHV0ZW5jb2RpbmcnXSkpDQoJCXsNCgkJCSRvdXRwdXRlbmNvZGluZyA9ICRwYXJhbXNbJ291dHB1dGVuY29kaW5nJ107DQoJCQkNCgkJCWlmICgkc3luY2Ntc2VuY29kaW5nZW5hYmxlZCAhPSAnZmFsc2UnKQ0KCQkJew0KCQkJCWlmICghaXNWYWxpZE91dHB1dEVuY29kaW5nKCRvdXRwdXRlbmNvZGluZykpDQoJCQkJew0KCQkJCQkkcGFyYW1zID0gYXJyYXkoJ21vZHVsZV9lcnJvcic9PiAkdGhpcy0+TGFuZygndmFsaWRlbmNvZGluZ3MnKSwgJ2FjdGl2ZV90YWInID0+ICdwcmVmZXJlbmNlcycpOw0KCQkJCQkkdGhpcy0+UmVkaXJlY3QoJGlkLCAnZGVmYXVsdGFkbWluJywgJHJldHVybmlkLCAkcGFyYW1zKTsNCgkJCQl9DQoJCQl9DQoJCX0NCg0KCQlpZiAoaXNzZXQoJHBhcmFtc1snZW5hYmxlcHJveHknXSkpDQoJCXsNCgkJCSRlbmFibGVwcm94eSA9ICRwYXJhbXNbJ2VuYWJsZXByb3h5J10gPyB0cnVlIDogZmFsc2U7DQoJCQkNCgkJfQ0KCQkNCgkJaWYgKCRlbmFibGVwcm94eSkNCgkJew0KCQkJaWYgKGlzc2V0KCRwYXJhbXNbJ3Byb3h5aG9zdCddKSkNCgkJCXsNCgkJCQkkcHJveHlob3N0ID0gJHBhcmFtc1sncHJveHlob3N0J107DQoJCQl9DQoJCQkNCgkJCWlmIChpc3NldCgkcGFyYW1zWydwcm94eXBvcnQnXSkpDQoJCQl7DQoJCQkJJHByb3h5cG9ydCA9ICRwYXJhbXNbJ3Byb3h5cG9ydCddOw0KCQkJfQ0KCQl9DQoJCWVsc2UNCgkJew0KCQkJJHByb3h5aG9zdCA9ICIiOw0KCQkJJHByb3h5cG9ydCA9ICIiOw0KCQl9DQoNCgkJaWYgKGlzc2V0KCRwYXJhbXNbJ2RlYnVnZW5hYmxlZCddKSkNCgkJew0KCQkJJGRlYnVnZW5hYmxlZCA9ICRwYXJhbXNbJ2RlYnVnZW5hYmxlZCddID8gJ3RydWUnIDogJ2ZhbHNlJzsNCgkJfQ0KCQkNCgkJLy8gdXBkYXRlIHByZWZlcmVuY2VzDQoJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdDQUNISU5HX0VOQUJMRUQnLCAkY2FjaGVlbmFibGVkKTsNCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ0NBQ0hFX0FHRScsICRjYWNoZWFnZSk7DQoJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdDQUNIRV9ESVInLCAkY2FjaGVkaXIpOw0KCQkkdGhpcy0+U2V0UHJlZmVyZW5jZSgnU1lOQ19DTVNfRU5DT0RJTkdfRU5BQkxFRCcsICRzeW5jY21zZW5jb2RpbmdlbmFibGVkKTsNCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ09VVFBVVF9FTkNPRElORycsICRvdXRwdXRlbmNvZGluZyk7DQoJCSR0aGlzLT5TZXRQcmVmZXJlbmNlKCdQUk9YWV9FTkFCTEVEJywgJGVuYWJsZXByb3h5KTsNCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ1BST1hZX0hPU1QnLCAkcHJveHlob3N0KTsNCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ1BST1hZX1BPUlQnLCAkcHJveHlwb3J0KTsNCgkJJHRoaXMtPlNldFByZWZlcmVuY2UoJ0RFQlVHX0VOQUJMRUQnLCAkZGVidWdlbmFibGVkKTsNCgkJDQoJCS8vIHJlZGlyZWN0DQoJCSRwYXJhbXMgPSBhcnJheSgndGFiX21lc3NhZ2UnPT4gJ3ByZWZzdXBkYXRlZCcsICdhY3RpdmVfdGFiJyA9PiAncHJlZmVyZW5jZXMnKTsNCgkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyk7DQoJfQ0KDQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/action.edittemplate.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCglpZiAoIWlzc2V0KCRnQ21zKSkgZXhpdDsNCgkNCgkvLyBtYWtlIHN1cmUgdGhlIHVzZXIgaGFzIHBlcm1pc3Npb24NCglpZiAoISR0aGlzLT5DaGVja1Blcm1pc3Npb24oJ01vZGlmeSBSU1MySFRNTCcpKQ0KCXsNCgkJZWNobyAkdGhpcy0+U2hvd0Vycm9ycygkdGhpcy0+TGFuZygnbmVlZHBlcm1pc3Npb24nLCBhcnJheSgnTW9kaWZ5IFJTUzJIVE1MJykpKTsNCgkJcmV0dXJuOw0KCX0NCg0KCS8vIGlmIHRoZSB1c2VyIGNhbmNlbGxlZCwgcmV0dXJuIHRoZW0gdG8gdGhlIGRlZmF1bHQgYWRtaW4gc2NyZWVuDQoJaWYgKGlzc2V0KCRwYXJhbXNbJ2NhbmNlbCddKSkNCgl7DQoJCSR0aGlzLT5SZWRpcmVjdCgkaWQsICdkZWZhdWx0YWRtaW4nLCAkcmV0dXJuaWQsIGFycmF5KCdhY3RpdmVfdGFiJyA9PiAndGVtcGxhdGVzJykpOw0KCX0NCgkNCgkvLyBnaXZlIHRoZSBmb3JtIGlkIHRvIHNtYXJ0eQ0KCSRzbWFydHktPmFzc2lnbignZm9ybWlkJywgJGlkKTsNCg0KCS8vIGluaXRpYWxpemUNCgkkdGVtcGxhdGVuYW1lID0gKGlzc2V0KCRwYXJhbXNbJ3RlbXBsYXRlbmFtZSddKSA/ICRwYXJhbXNbJ3RlbXBsYXRlbmFtZSddIDogJycpOw0KCSR0ZW1wbGF0ZWNvbnRlbnQgPSAoaXNzZXQoJHBhcmFtc1sndGVtcGxhdGVjb250ZW50J10pID8gJHBhcmFtc1sndGVtcGxhdGVjb250ZW50J10gOiAnJyk7DQoJDQoJDQoJLy8gY2hlY2sgdG8gc2VlIGlmIHRoZSBmb3JtIGhhcyBwb3N0ZWQNCglpZiAoc3RydG9sb3dlcigkX1NFUlZFUlsnUkVRVUVTVF9NRVRIT0QnXSkgPT0gJ3Bvc3QnKQ0KCXsJCQ0KCQlpZiAoJHRlbXBsYXRlY29udGVudCA9PSAnJykNCgkJCWVjaG8gJHRoaXMtPlNob3dFcnJvcnMoJHRoaXMtPkxhbmcoJ2Vycm9yX3RlbXBsYXRlY29udGVudF9yZXEnKSk7DQoJCQ0KCQlpZiAoJHRlbXBsYXRlbmFtZSAhPSAnJyAmJiAkdGVtcGxhdGVjb250ZW50ICE9ICcnKQ0KCQl7DQoJCQkkdGVtcGxhdGUgPSAkdGhpcy0+R2V0VGVtcGxhdGUoJHRlbXBsYXRlbmFtZSwgJHRoaXMtPkdldE5hbWUoKSk7DQoNCgkJCSR0aGlzLT5TZXRUZW1wbGF0ZSgkdGVtcGxhdGVuYW1lLCAkdGVtcGxhdGVjb250ZW50KTsNCgkJCQ0KCQkJJHBhcmFtcyA9IGFycmF5KCd0YWJfbWVzc2FnZSc9PiAndGVtcGxhdGVlZGl0ZWQnLCAnYWN0aXZlX3RhYicgPT4gJ3RlbXBsYXRlcycpOw0KCQkJJHRoaXMtPlJlZGlyZWN0KCRpZCwgJ2RlZmF1bHRhZG1pbicsICRyZXR1cm5pZCwgJHBhcmFtcyk7DQoJCX0NCgl9DQoJZWxzZSBpZiAoJHRlbXBsYXRlbmFtZSAhPSAnJykNCgl7DQoJCSR0ZW1wbGF0ZSA9ICR0aGlzLT5HZXRUZW1wbGF0ZSgkdGVtcGxhdGVuYW1lLCAkdGhpcy0+R2V0TmFtZSgpKTsNCg0KCQlpZiAoIWVtcHR5KCR0ZW1wbGF0ZSkpDQoJCXsJDQoJCQkkdGVtcGxhdGVjb250ZW50ID0gJHRlbXBsYXRlOw0KCQl9DQoJfQ0KCWVsc2UNCgl7DQoJCSR0aGlzLT5TaG93RXJyb3JzKCR0aGlzLT5MYW5nKCdub3RlbXBsYXRlYnl0aGF0bmFtZScpKTsNCgl9DQoJDQoJLy8gc2V0dXAgdGVtcGxhdGUNCgkkdGhpcy0+c21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsICR0aGlzLT5DcmVhdGVJbnB1dEhpZGRlbigkaWQsICd0ZW1wbGF0ZW5hbWUnLCAkdGVtcGxhdGVuYW1lKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCdzdGFydGZvcm0nLCAkdGhpcy0+Q3JlYXRlRm9ybVN0YXJ0KCRpZCwgJ2VkaXR0ZW1wbGF0ZScsICRyZXR1cm5pZCkpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignZW5kZm9ybScsICR0aGlzLT5DcmVhdGVGb3JtRW5kKCkpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGVtcGxhdGVuYW1ldGV4dCcsICR0aGlzLT5MYW5nKCd0ZW1wbGF0ZW5hbWV0ZXh0JykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXR0ZW1wbGF0ZW5hbWUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ3RlbXBsYXRlbmFtZScsICR0ZW1wbGF0ZW5hbWUsIDMwLCAxMDAsICdkaXNhYmxlZD0iZGlzYWJsZWQiJykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbigndGVtcGxhdGVjb250ZW50dGV4dCcsICR0aGlzLT5MYW5nKCd0ZW1wbGF0ZWNvbnRlbnR0ZXh0JykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignaW5wdXR0ZW1wbGF0ZWNvbnRlbnQnLCAkdGhpcy0+Q3JlYXRlVGV4dEFyZWEoZmFsc2UsICRpZCwgJHRlbXBsYXRlY29udGVudCwgJ3RlbXBsYXRlY29udGVudCcsICcnLCAnJywgJycsICcnLCAnODAnLCAnMjAnLCAnJywgJ2h0bWwnKSk7DQoJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0ZW1wbGF0ZWhlbHAnLCAkdGhpcy0+TGFuZygndGVtcGxhdGVoZWxwJykpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3VwZGF0ZScsICR0aGlzLT5MYW5nKCd1cGRhdGUnKSkpOw0KCSR0aGlzLT5zbWFydHktPmFzc2lnbignY2FuY2VsJywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ2NhbmNlbCcsIGxhbmcoJ2NhbmNlbCcpKSk7DQoJDQoJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlZGl0dGVtcGxhdGUudHBsJyk7DQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/cache/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/function.admin_feedstab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCgkvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gdGFibGUgaGVhZGVycyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovDQoJJHNtYXJ0eS0+YXNzaWduKCdmZWVkaWR0ZXh0JywgJHRoaXMtPkxhbmcoJ2ZlZWRpZCcpKTsNCgkkc21hcnR5LT5hc3NpZ24oJ2ZlZWRuYW1ldGV4dCcsICR0aGlzLT5MYW5nKCdmZWVkbmFtZScpKTsNCgkkc21hcnR5LT5hc3NpZ24oJ2ZlZWR1cmx0ZXh0JywgJHRoaXMtPkxhbmcoJ2ZlZWR1cmwnKSk7DQoJDQoJLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0gZ2V0IHRoZSBmZWVkIGxpc3QgLS0tLS0tLS0tLS0tLS0tLS0tLSAqLw0KCSRxdWVyeSA9ICJTRUxFQ1QgKiBGUk9NICIgLiBjbXNfZGJfcHJlZml4KCkgLiAibW9kdWxlX3JzczJodG1sX2ZlZWRzIE9SREVSIEJZIGlkIEFTQyI7DQoJJHJlc3VsdHMgPSAkZGItPkV4ZWN1dGUoJHF1ZXJ5KTsNCgkkZmVlZHMgPSBhcnJheSgpOw0KCQ0KCXdoaWxlICgkcmVzdWx0cyAmJiAkcm93ID0gJHJlc3VsdHMtPkZldGNoUm93KCkpDQogIAl7DQogICAgCSRmZWVkID0gbmV3IHN0ZENsYXNzKCk7DQoJCQ0KCQkkZmVlZC0+aWQgPSAkcm93WydpZCddOw0KCQkkZmVlZC0+bmFtZSA9ICRyb3dbJ2ZlZWRfbmFtZSddOw0KCQkkZmVlZC0+dXJsID0gJHJvd1snZmVlZF91cmwnXTsNCgkJDQoJCSRmZWVkLT5lZGl0bGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2VkaXRmZWVkJywgJHJldHVybmlkLCAkZ0Ntcy0+dmFyaWFibGVzWydhZG1pbnRoZW1lJ10tPkRpc3BsYXlJbWFnZSgnaWNvbnMvc3lzdGVtL2VkaXQuZ2lmJywgJHRoaXMtPkxhbmcoJ2VkaXQnKSwnJywnJywnc3lzdGVtaWNvbicpLCBhcnJheSgnZmVlZGlkJz0+JHJvd1snaWQnXSkpOw0KICAgIAkkZmVlZC0+ZGVsZXRlbGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2RlbGV0ZWZlZWQnLCAkcmV0dXJuaWQsICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsICR0aGlzLT5MYW5nKCdkZWxldGUnKSwnJywnJywnc3lzdGVtaWNvbicpLCBhcnJheSgnZmVlZGlkJz0+JHJvd1snaWQnXSksICR0aGlzLT5MYW5nKCdhcmV5b3VzdXJlJykpOw0KDQoJCSRmZWVkc1tdID0gJGZlZWQ7DQoJfQ0KCQ0KCSRzbWFydHktPmFzc2lnbignZmVlZHMnLCAkZmVlZHMpOw0KCSRzbWFydHktPmFzc2lnbignZmVlZF9jb3VudCcsIGNvdW50KCRmZWVkcykpOw0KCQ0KCSRzbWFydHktPmFzc2lnbignYWRkbGluaycsICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkZGZlZWQnLCAkcmV0dXJuaWQsICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vbmV3b2JqZWN0LmdpZicsICR0aGlzLT5MYW5nKCdhZGRmZWVkJyksJycsJycsJ3N5c3RlbWljb24nKSwgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJycpIC4nICcuICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkZGZlZWQnLCAkcmV0dXJuaWQsICR0aGlzLT5MYW5nKCdhZGRmZWVkJyksIGFycmF5KCksICcnLCBmYWxzZSwgZmFsc2UsICdjbGFzcz0icGFnZW9wdGlvbnMiJykpOw0KCQ0KCWVjaG8gJHRoaXMtPlByb2Nlc3NUZW1wbGF0ZSgnZmVlZGxpc3QudHBsJyk7DQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_preferencestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCgkNCgkvKiAtLS0tLS0tLS0tLS0tLS0tLS0tIGluaXRpYWxpemUgZGVmYXVsdHMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovDQoJaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdDQUNISU5HX0VOQUJMRUQnLCAndHJ1ZScpID09ICd0cnVlJykNCgkJJGNhY2hlZW5hYmxlZCA9IHRydWU7DQoJZWxzZQ0KCQkkY2FjaGVlbmFibGVkID0gZmFsc2U7DQoJCQ0KCSRjYWNoZWFnZSA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdDQUNIRV9BR0UnLCA2MCo2MCk7DQoJJGNhY2hlZGlyID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ0NBQ0hFX0RJUicsICcuL21vZHVsZXMvUlNTMkhUTUwvY2FjaGUnKTsNCgkNCglpZiAoJHRoaXMtPkdldFByZWZlcmVuY2UoJ1NZTkNfQ01TX0VOQ09ESU5HX0VOQUJMRUQnLCAndHJ1ZScpID09ICd0cnVlJykNCgkJJHN5bmNjbXNlbmNvZGluZ2VuYWJsZWQgPSB0cnVlOw0KCWVsc2UNCgkJJHN5bmNjbXNlbmNvZGluZ2VuYWJsZWQgPSBmYWxzZTsNCgkJDQoJaWYgKCR0aGlzLT5HZXRQcmVmZXJlbmNlKCdQUk9YWV9FTkFCTEVEJywgZmFsc2UpKQ0KCQkkcHJveHllbmFibGVkID0gdHJ1ZTsNCgllbHNlDQoJCSRwcm94eWVuYWJsZWQgPSBmYWxzZTsNCgkJDQoJJHByb3h5aG9zdCA9ICR0aGlzLT5HZXRQcmVmZXJlbmNlKCdQUk9YWV9IT1NUJywgIiIpOw0KCSRwcm94eXBvcnQgPSAkdGhpcy0+R2V0UHJlZmVyZW5jZSgnUFJPWFlfUE9SVCcsICIiKTsNCgkJDQoJJG91dHB1dGVuY29kaW5nID0gJHRoaXMtPkdldFByZWZlcmVuY2UoJ09VVFBVVF9FTkNPRElORycsICdVVEYtOCcpOw0KCQ0KCWlmICgkdGhpcy0+R2V0UHJlZmVyZW5jZSgnREVCVUdfRU5BQkxFRCcsICdmYWxzZScpID09ICd0cnVlJykNCgkJJGRlYnVnZW5hYmxlZCA9IHRydWU7DQoJZWxzZQ0KCQkkZGVidWdlbmFibGVkID0gZmFsc2U7DQoJDQoJLyogLS0tLS0tLS0tLS0tLS0tLS0tLSBmaWVsZCBuYW1lcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8NCgkkc21hcnR5LT5hc3NpZ24oJ2NsZWFydGV4dCcsICR0aGlzLT5MYW5nKCdjbGVhcmNhY2hlJykpOw0KCSRzbWFydHktPmFzc2lnbignZW5hYmxlZHRleHQnLCAkdGhpcy0+TGFuZygnZW5hYmxlZHRleHQnKSk7DQoJJHNtYXJ0eS0+YXNzaWduKCdhZ2V0ZXh0JywgJHRoaXMtPkxhbmcoJ2FnZXRleHQnKSk7DQoJJHNtYXJ0eS0+YXNzaWduKCdhZ2V0ZXh0MicsICR0aGlzLT5MYW5nKCdhZ2V0ZXh0MicpKTsNCgkkc21hcnR5LT5hc3NpZ24oJ2RpcnRleHQnLCAkdGhpcy0+TGFuZygnZGlydGV4dCcpKTsNCgkkc21hcnR5LT5hc3NpZ24oJ3N5bmNjbXNlbmNvZGluZ3RleHQnLCAkdGhpcy0+TGFuZygnc3luY2Ntc2VuY29kaW5ndGV4dCcpKTsNCgkkc21hcnR5LT5hc3NpZ24oJ291dHB1dGVuY29kaW5ndGV4dCcsICR0aGlzLT5MYW5nKCdvdXRwdXRlbmNvZGluZ3RleHQnKSk7DQoJJHNtYXJ0eS0+YXNzaWduKCdkZWJ1Z3RleHQnLCAkdGhpcy0+TGFuZygnZGVidWd0ZXh0JykpOw0KCSRzbWFydHktPmFzc2lnbignZW5hYmxlcHJveHl0ZXh0JywgJHRoaXMtPkxhbmcoJ2VuYWJsZXByb3h5dGV4dCcpKTsNCgkkc21hcnR5LT5hc3NpZ24oJ3Byb3h5aG9zdHRleHQnLCAkdGhpcy0+TGFuZygncHJveHlob3N0dGV4dCcpKTsNCgkkc21hcnR5LT5hc3NpZ24oJ3Byb3h5cG9ydHRleHQnLCAkdGhpcy0+TGFuZygncHJveHlwb3J0dGV4dCcpKTsNCgkNCgkvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tIGZpZWxkcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi8NCgkkc21hcnR5LT5hc3NpZ24oJ2NsZWFyY2FjaGUnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2xlYXJjYWNoZScsICR0aGlzLT5MYW5nKCdjbGVhcicpKSk7DQoJJHNtYXJ0eS0+YXNzaWduKCdpbnB1dGVuYWJsZWQnLCAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdjYWNoZWVuYWJsZWQnLCB0cnVlLCAkY2FjaGVlbmFibGVkKSk7DQoJJHNtYXJ0eS0+YXNzaWduKCdpbnB1dGFnZScsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnY2FjaGVhZ2UnLCAkY2FjaGVhZ2UsIDUsIDEwMCkpOw0KCSRzbWFydHktPmFzc2lnbignaW5wdXRkaXInLCAkdGhpcy0+Q3JlYXRlSW5wdXRUZXh0KCRpZCwgJ2NhY2hlZGlyJywgJGNhY2hlZGlyLCAzMCwgMjU1KSk7DQoJJHNtYXJ0eS0+YXNzaWduKCdpbnB1dHN5bmNjbXNlbmNvZGluZycsICR0aGlzLT5DcmVhdGVJbnB1dENoZWNrYm94KCRpZCwgJ3N5bmNjbXNlbmNvZGluZycsIHRydWUsICRzeW5jY21zZW5jb2RpbmdlbmFibGVkLCAnb25jbGljaz0idG9nZ2xlRW5jb2RpbmcoKTsiIGlkPSJtMV9zeW5jY21zZW5jb2RpbmciJykpOw0KCSRzbWFydHktPmFzc2lnbignaW5wdXRvdXRwdXRlbmNvZGluZycsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAnb3V0cHV0ZW5jb2RpbmcnLCAkb3V0cHV0ZW5jb2RpbmcsIDE1LCAxMDApKTsNCgkkc21hcnR5LT5hc3NpZ24oJ2lucHV0ZW5hYmxlcHJveHknLCAkdGhpcy0+Q3JlYXRlSW5wdXRDaGVja2JveCgkaWQsICdlbmFibGVwcm94eScsIHRydWUsICRwcm94eWVuYWJsZWQsICdvbmNsaWNrPSJ0b2dnbGVQcm94eSgpOyIgaWQ9Im0xX2VuYWJsZXByb3h5IicpKTsNCgkkc21hcnR5LT5hc3NpZ24oJ2lucHV0cHJveHlob3N0JywgJHRoaXMtPkNyZWF0ZUlucHV0VGV4dCgkaWQsICdwcm94eWhvc3QnLCAkcHJveHlob3N0LCAzMCwgMjU1KSk7DQoJJHNtYXJ0eS0+YXNzaWduKCdpbnB1dHByb3h5cG9ydCcsICR0aGlzLT5DcmVhdGVJbnB1dFRleHQoJGlkLCAncHJveHlwb3J0JywgJHByb3h5cG9ydCwgMTAsIDEwKSk7DQoJJHNtYXJ0eS0+YXNzaWduKCdpbnB1dGRlYnVnJywgJHRoaXMtPkNyZWF0ZUlucHV0Q2hlY2tib3goJGlkLCAnZGVidWdlbmFibGVkJywgdHJ1ZSwgJGRlYnVnZW5hYmxlZCkpOw0KCSRzbWFydHktPmFzc2lnbignc3VibWl0JywgJHRoaXMtPkNyZWF0ZUlucHV0U3VibWl0KCRpZCwgJ3N1Ym1pdCcsIGxhbmcoJ3N1Ym1pdCcpKSk7DQoJJHNtYXJ0eS0+YXNzaWduKCdjYW5jZWwnLCAkdGhpcy0+Q3JlYXRlSW5wdXRTdWJtaXQoJGlkLCAnY2FuY2VsJywgbGFuZygnY2FuY2VsJykpKTsNCgkNCgkNCgkkc21hcnR5LT5hc3NpZ24oJ2hpZGRlbicsICcnKTsNCgkkc21hcnR5LT5hc3NpZ24oJ3N0YXJ0Zm9ybScsICR0aGlzLT5DcmVhdGVGb3JtU3RhcnQoJGlkLCAnZWRpdHByZWZzJywgJHJldHVybmlkKSk7DQoJJHNtYXJ0eS0+YXNzaWduKCdlbmRmb3JtJywgJHRoaXMtPkNyZWF0ZUZvcm1FbmQoKSk7DQoJDQoJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCJlZGl0cHJlZnMudHBsIik7DQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/function.admin_templatestab.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCgkvKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0gdGFibGUgaGVhZGVycyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovDQoJJHNtYXJ0eS0+YXNzaWduKCd0ZW1wbGF0ZW5hbWV0ZXh0JywgJHRoaXMtPkxhbmcoJ3RlbXBsYXRlbmFtZXRleHQnKSk7DQoJDQoJLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0gZ2V0IHRoZSBmZWVkIGxpc3QgLS0tLS0tLS0tLS0tLS0tLS0tLSAqLw0KCSR0ZW1wbGF0ZXMgPSAkdGhpcy0+TGlzdFRlbXBsYXRlcygpOw0KCSR0ZW1wbGF0ZXMyID0gYXJyYXkoKTsNCgkNCglmb3JlYWNoICgkdGVtcGxhdGVzIGFzICR0ZW1wbGF0ZSkNCiAgCXsNCiAgICAJJHRlbXBsYXRlMiA9IG5ldyBzdGRDbGFzcygpOw0KCQkkdGVtcGxhdGUyLT5uYW1lID0gJHRlbXBsYXRlOw0KCQkkdGVtcGxhdGUyLT5lZGl0bGluayA9ICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2VkaXR0ZW1wbGF0ZScsICRyZXR1cm5pZCwgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9lZGl0LmdpZicsICR0aGlzLT5MYW5nKCdlZGl0JyksJycsJycsJ3N5c3RlbWljb24nKSwgYXJyYXkoJ3RlbXBsYXRlbmFtZSc9PiR0ZW1wbGF0ZSkpOw0KICAgIAkkdGVtcGxhdGUyLT5kZWxldGVsaW5rID0gJHRoaXMtPkNyZWF0ZUxpbmsoJGlkLCAnZGVsZXRldGVtcGxhdGUnLCAkcmV0dXJuaWQsICRnQ21zLT52YXJpYWJsZXNbJ2FkbWludGhlbWUnXS0+RGlzcGxheUltYWdlKCdpY29ucy9zeXN0ZW0vZGVsZXRlLmdpZicsICR0aGlzLT5MYW5nKCdkZWxldGUnKSwnJywnJywnc3lzdGVtaWNvbicpLCBhcnJheSgndGVtcGxhdGVuYW1lJz0+JHRlbXBsYXRlKSwgJHRoaXMtPkxhbmcoJ2FyZXlvdXN1cmV0ZW1wbGF0ZScpKTsNCg0KCQkkdGVtcGxhdGVzMltdID0gJHRlbXBsYXRlMjsNCgl9DQoNCgkkc21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlcycsICR0ZW1wbGF0ZXMyKTsNCgkkc21hcnR5LT5hc3NpZ24oJ3RlbXBsYXRlX2NvdW50JywgY291bnQoJHRlbXBsYXRlczIpKTsNCgkNCgkkc21hcnR5LT5hc3NpZ24oJ2FkZGxpbmsnLCAkdGhpcy0+Q3JlYXRlTGluaygkaWQsICdhZGR0ZW1wbGF0ZScsICRyZXR1cm5pZCwgJGdDbXMtPnZhcmlhYmxlc1snYWRtaW50aGVtZSddLT5EaXNwbGF5SW1hZ2UoJ2ljb25zL3N5c3RlbS9uZXdvYmplY3QuZ2lmJywgJHRoaXMtPkxhbmcoJ2FkZHRlbXBsYXRlJyksJycsJycsJ3N5c3RlbWljb24nKSwgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJycpIC4nICcuICR0aGlzLT5DcmVhdGVMaW5rKCRpZCwgJ2FkZHRlbXBsYXRlJywgJHJldHVybmlkLCAkdGhpcy0+TGFuZygnYWRkdGVtcGxhdGUnKSwgYXJyYXkoKSwgJycsIGZhbHNlLCBmYWxzZSwgJ2NsYXNzPSJwYWdlb3B0aW9ucyInKSk7DQoJDQoJZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCd0ZW1wbGF0ZWxpc3QudHBsJyk7DQo/Pg==]]></data>
	</file>
	<file>
	  <filename>/images/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/images/icon.gif</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[R0lGODlhIAAgAMQfAKurq/Pz8+Pj4+qzfPC9ie7k2VtbW5WVlfj4+Nzc3O/Prejo6OJwMe/v7+qOQ+7byPXElviaPOuCOMHBwe3p5dqodPaoYvKOOoB+fMycaayUe/3w5Ovr6//58////+zs7CH5BAEAAB8ALAAAAAAgACAAAAX/4MdRRWmeaPE8xee+8EcpxGDfeD5oShvDBYJnSCwaEZ4IRvEDDoiIaDRApTYaHMTEAGm+Ck+ptGq9ZgFcrwvsESPIgasZge6q2dGHZC+5+CMRDg9nXBx3YQgSDBZ7f4CBCwFoFhA9JRRObYkMQxsQj4AXkQAHCRMTFjsPmW97lBseGxahopITmkiFX09UexCzAx0dFhd7owAIcgEGBJhrFR5Ufp0EFh0bxRICDQDIZsvNX9DSFxEEsDYeBAza3N4cHODOHwXjAeUWBBEbGxIbBQwYbOuGAF48ZvPqRQsAqIM6IZQ8BByIDF4khOI8XAFUoEMgD+kUUSy4YEEDjC4e20C74iDUnoAwBXIgWNIkyg8qNTZ44MAPn5gKEnA4ACBAzZPhUq40WLOkgKdPhRI1umDbzQcZPDCtCRVqAqlFq1pNijMrh6Zdo35NsGAqVKTzsOKaIgeLxQUIDhwIAJXDVQ0aDmAYrLew4cIG2Pa9WUBBhcGDDZyaTPmU4sVkZTxQAAHCgAwNNMG5Ijaq38wxsEba6jStALY3f6gOcJdr17ULYqfOsPqsba9rT8/7US/Cm9FyDMJLoBvGDAwGokufTl26AkN3aBDYzr27dwI91MAYQaG8+fPosbsIAQA7]]></data>
	</file>
	<file>
	  <filename>/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[]]></data>
	</file>
	<file>
	  <filename>/lang/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lang/en_US.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiRsYW5nWydmcmllbmRseW5hbWUnXSA9ICdSU1MySFRNTCc7DQokbGFuZ1sncG9zdGluc3RhbGwnXSA9ICdSU1MySFRNTCBTdWNjZXNzZnVsbHkgSW5zdGFsbGVkISBTZXQgIlVzZSBSU1MySFRNTCIgcGVybWlzc2lvbnMgdG8gdXNlIHRoaXMgbW9kdWxlISc7DQokbGFuZ1sncG9zdHVuaW5zdGFsbCddID0gJ1JTUzJIVE1MIFN1Y2Nlc3NmdWxseSBVbmluc3RhbGxlZCc7DQokbGFuZ1sncmVhbGx5X3VuaW5zdGFsbCddID0gJ1JlYWxseT8gQXJlIHlvdSBzdXJlDQp5b3Ugd2FudCB0byB1bmluc3RhbGwgUlNTMkhUTUw/JzsNCiRsYW5nWyduZWVkcGVybWlzc2lvbiddID0gJ1lvdSBkbyBub3QgaGF2ZSBwZXJtaXNzaW9uIHRvIGFjY2VzcyB0aGlzIG1vZHVsZS4gUGxlYXNlIGNvbnRhY3QgdGhlIHNpdGUgYWRtaW5pc3RyYXRvciBmb3IgYXNzaXN0YW5jZS4nOw0KJGxhbmdbJ3VuaW5zdGFsbGVkJ10gPSAnTW9kdWxlIFVuaW5zdGFsbGVkLic7DQokbGFuZ1snaW5zdGFsbGVkJ10gPSAnTW9kdWxlIHZlcnNpb24gJXMgaW5zdGFsbGVkLic7DQokbGFuZ1sndXBncmFkZWQnXSA9ICdNb2R1bGUgdXBncmFkZWQgdG8gdmVyc2lvbiAlcy4nOw0KJGxhbmdbJ21vZGRlc2NyaXB0aW9uJ10gPSAnVGhlIFJTUzJIVE1MIG1vZHVsZSBhbGxvd3MgeW91IHRvIG91dHB1dCBhbiBSU1MgZmVlZCBhcyBIVE1MLiBUaGUgb3V0cHV0IGlzIGZ1bGx5IGN1c3RvbWl6YWJsZSB2aWEgU21hcnR5IHRlbXBsYXRlcy4nOw0KJGxhbmdbJ2NsZWFyY2FjaGUnXSA9ICJDbGVhciBDYWNoZSI7DQokbGFuZ1snY2xlYXInXSA9ICJDbGVhciI7DQokbGFuZ1snY2FjaGVjbGVhcmVkJ10gPSAiQ2FjaGUgQ2xlYXJlZCEiOw0KJGxhbmdbJ3ZhbGlkZW5jb2RpbmdzJ10gPSAiU3VwcG9ydGVkIHRhcmdldCBlbmNvZGluZ3MgYXJlIElTTy04ODU5LTEsIFVTLUFTQ0lJIGFuZCBVVEYtOC4gRGVmYXVsdGluZyB0byBVVEYtOCI7DQokbGFuZ1snY21zaW52YWxpZGVuY29kaW5nJ10gPSAiQ01TTVMgRW5jb2RpbmcgTm90IHN1cHBvcnRlZC4gIiAuICRsYW5nWyd2YWxpZGVuY29kaW5ncyddIC4gIiBEZWZhdWx0aW5nIHRvIFVURi04IiA7DQokbGFuZ1snZW5hYmxlcHJveHl0ZXh0J10gPSAiRW5hYmxlIFByb3h5PyI7DQokbGFuZ1sncHJveHlob3N0dGV4dCddID0gIkhvc3QiOw0KJGxhbmdbJ3Byb3h5cG9ydHRleHQnXSA9ICJQb3J0IjsNCiRsYW5nWydlcnJvciddID0gJ0Vycm9yISc7DQokbGFuZFsnYWRtaW5fdGl0bGUnXSA9ICdSU1MySFRNTCBBZG1pbiBQYW5lbCc7DQokbGFuZ1snYWRtaW5kZXNjcmlwdGlvbiddID0gJ1JTUzJIVE1MJzsNCiRsYW5nWydhY2Nlc3NkZW5pZWQnXSA9ICdBY2Nlc3MgRGVuaWVkLiBQbGVhc2UgY2hlY2sgeW91ciBwZXJtaXNzaW9ucy4nOw0KJGxhbmdbJ2ZlZWRzJ10gPSAnRmVlZHMnOw0KJGxhbmdbJ3RlbXBsYXRlcyddID0gJ1RlbXBsYXRlcyc7DQokbGFuZ1sncHJlZmVyZW5jZXMnXSA9ICdQcmVmZXJlbmNlcyc7DQokbGFuZ1sndGl0bGVfZmVlZHMnXSA9ICdGZWVkcyc7DQokbGFuZ1sndGl0bGVfdGVtcGxhdGVzJ10gPSAnVGVtcGxhdGVzJzsNCiRsYW5nWyd0aXRsZV9wcmVmZXJlbmNlcyddID0gJ1ByZWZlcmVuY2VzJzsNCiRsYW5nWydmZWVkaWQnXSA9ICdGZWVkIElEJzsNCiRsYW5nWydmZWVkbmFtZSddID0gJ0ZlZWQgTmFtZSc7DQokbGFuZ1snZmVlZHVybCddID0gJ0ZlZWQgVVJMJzsNCiRsYW5nWydhZGRmZWVkJ10gPSAnQWRkIGEgRmVlZCc7DQokbGFuZ1snZXJyb3Jfbm9mZWVkbmFtZSddID0gJ1BsZWFzZSBwcm92aWRlIGEgbmFtZSBmb3IgdGhlIFJTUyBmZWVkLic7DQokbGFuZ1snZXJyb3Jfbm9mZWVkdXJsJ10gPSAnUGxlYXNlIHByb3ZpZGUgYSBVUkwgdG8gdGhlIFJTUyBmZWVkLic7DQokbGFuZ1snZXJyb3JfaW52YWxpZGZlZWR1cmwnXSA9ICdQbGVhc2UgcHJvdmlkZSBhIFZBTElEIFVSTCB0byB0aGUgUlNTIGZlZWQuJzsNCiRsYW5nWydlcnJvcl9hZGRmZWVkJ10gPSAnVGhlcmUgd2FzIGFuIHVua25vd24gZXJyb3Igd2hlbiBhZGRpbmcgdGhlIGZlZWQuIFBsZWFzZSB0cnkgYWdhaW4nOw0KJGxhbmdbJ2ZlZWRhZGRlZCddID0gIlRoZSBmZWVkIHdhcyBzdWNjZXNzZnVsbHkgYWRkZWQhIjsNCiRsYW5nWydlcnJvcl9hZGRmZWVkJ10gPSAnVGhlcmUgd2FzIGFuIHVua25vd24gZXJyb3Igd2hlbiBlZGl0aW5nIHRoZSBmZWVkLiBQbGVhc2UgdHJ5IGFnYWluJzsNCiRsYW5nWydmZWVkZWRpdGVkJ10gPSAiVGhlIGZlZWQgd2FzIHN1Y2Nlc3NmdWxseSBlZGl0ZWQhIjsNCiRsYW5nWydhcmV5b3VzdXJlJ10gPSAiQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHJlbW92ZSB0aGlzIGZlZWQ/IjsNCiRsYW5nWydmZWVkZGVsZXRlZCddID0gIlRoZSBmZWVkIGhhcyBzdWNjZXNzZnVsbHkgYmVlbiByZW1vdmVkLiI7DQokbGFuZ1snbm9mZWVkd2l0aHRoYXRpZCddID0gIlRoZXJlIGlzIG5vIGZlZWQgd2l0aCB0aGUgcHJvdmlkZWQgaWQuIFBsZWFzZSBjaGVjayB0aGUgaWQgYW5kIHRyeSBhZ2Fpbi4iOw0KJGxhbmdbJ2VkaXQnXSA9ICJFZGl0IjsNCiRsYW5nWyd1cGRhdGUnXSA9ICJVcGRhdGUiOw0KJGxhbmdbJ2RlbGV0ZSddID0gIlJlbW92ZSI7DQokbGFuZ1snZXJyb3JfaW52YWxpZGZlZWQnXSA9ICJUaGUgZmVlZCBwcm92aWRlZCB3YXMgbm90IGluIGEgdmFsaWQgZm9ybWF0LiBQbGVhc2UgcHJvdmlkZSBhIFVSTCB0byBhIHZhbGlkIFJTUyBmZWVkLiI7DQokbGFuZ1snZXJyb3JfZmVlZGV4aXN0cyddID0gICJBIGZlZWQgd2l0aCB0aGF0IG5hbWUgYWxyZWFkeSBleGlzdHMuIFBsZWFzZSBnaXZlIHRoZSBmZWVkIGEgdW5pcXVlIG5hbWUiOw0KDQokbGFuZ1snYWRkdGVtcGxhdGUnXSA9ICJBZGQgVGVtcGxhdGUiOw0KJGxhbmdbJ3RlbXBsYXRlbmFtZXRleHQnXSA9ICJUZW1wbGF0ZSBOYW1lIjsNCiRsYW5nWyd0ZW1wbGF0ZWNvbnRlbnR0ZXh0J10gPSAiVGVtcGxhdGUgQ29udGVudCI7DQokbGFuZ1snbm90ZW1wbGF0ZWJ5dGhhdG5hbWUnXSA9ICJObyB0ZW1wbGF0ZSBieSB0aGF0IG5hbWUgY291bGQgYmUgZm91bmQuIjsNCiRsYW5nWyd0ZW1wbGF0ZWFkZGVkJ10gPSAiVGhlIHRlbXBsYXRlIHdhcyBhZGRlZCBzdWNjZXNzZnVsbHkhIjsNCiRsYW5nWydlcnJvcl90ZW1wbGF0ZW5hbWVfcmVxJ10gPSAiJ1RlbXBsYXRlIE5hbWUnIGlzIGEgcmVxdWlyZWQgZmllbGQuIjsNCiRsYW5nWydlcnJvcl90ZW1wbGF0ZWNvbnRlbnRfcmVxJ10gPSAiJ1RlbXBsYXRlIENvbnRlbnQnIGlzIGEgcmVxdWlyZWQgZmllbGQuIjsNCiRsYW5nWyd0ZW1wbGF0ZWV4aXN0cyddID0gIkEgdGVtcGxhdGUgYnkgdGhhdCBuYW1lIGFscmVhZHkgZXhpc3RzLiBQbGVhc2UgZW50ZXIgYSBkaWZmZXJlbnQgbmFtZS4iOw0KJGxhbmdbJ3RlbXBsYXRlZWRpdGVkJ10gPSAiVGhlIHRlbXBsYXRlIHdhcyBzdWNjZXNzZnVsbHkgdXBkYXRlZCEiOw0KJGxhbmdbJ3RlbXBsYXRlZGVsZXRlZCddID0gIlRoZSB0ZW1wbGF0ZSB3YXMgc3VjY2Vzc2Z1bGx5IGRlbGV0ZWQhIjsNCiRsYW5nWydhcmV5b3VzdXJldGVtcGxhdGUnXSA9ICJBcmUgeW91IHN1cmUgeW91IHdhbnQgdG8gZGVsZXRlIHRoaXMgdGVtcGxhdGU/IjsNCiRsYW5nWyd0ZW1wbGF0ZWhlbHAnXSA9ICc8aDM+RGV0YWlsczwvaDM+PHA+VGhlIHZhcmlhYmxlIFwncnNzXCcgY29udGFpbnMgYWxsIHRoZSBlbGVtZW50cyBvZiBhbiBSU1MgZmVlZCBwYXJzZWQgaW50byBhIG51bWJlciBvZiBhcnJheXMuICBCZWxvdyBpcyBhbiBleGFtcGxlIG9mIGhvdyB0byBhY2Nlc3MgdmFyaW91cyBwYXJ0cyBvZiB0aGUgZmVlZCAodGhpcyBpcyBieSBubyBtZWFucyBhIGNvbXBsZXRlIGxpc3QpOiA8L3A+DQo8dWw+DQogICAgPGxpPlRoZSBcJ2NoYW5uZWxcJyBhcnJheS4gPHN0cm9uZz5Ob3RlIHRoYXQgbW9yZSBlbGVtZW50cyBtYXkgYmUgYXZhaWxhYmxlIGRlcGVuZGluZyBvbiB0aGUgZmVlZC4NCiAgICAgICAgPC9zdHJvbmc+DQogICAgICAgIDx1bD4NCiAgICAgICAgICAgIDxsaT5UaGUgdGl0bGUgb2YgdGhlIGZlZWQgLSA8ZW0+JHJzcy0mZ3Q7Y2hhbm5lbC50aXRsZTwvZW0+PC9saT4NCiAgICAgICAgICAgIDxsaT5UaGUgIGxhbmd1YWdlIG9mIHRoZSBmZWVkIC0gPGVtPiRyc3MtJmd0O2NoYW5uZWwubGFuZ3VhZ2U8L2VtPjwvbGk+DQogICAgICAgICAgICA8bGk+VGhlIHNpdGUgb2Ygd2hlcmUgdGhlIGZlZWQgb3JpZ2luYXRlcyAtIDxlbT4kcnNzLSZndDtjaGFubmVsLmxpbms8L2VtPjwvbGk+DQogICAgICAgICAgICA8bGk+VGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBmZWVkIC0gPGVtPiRyc3MtJmd0O2NoYW5uZWwuZGVzY3JpcHRpb248L2VtPjwvbGk+DQogICAgICAgICAgICA8bGk+VGhlIGZlZWRcJ3MgdGFnbGluZSAtIDxlbT4kcnNzLSZndDtjaGFubmVsLnRhZ2xpbmU8L2VtPjwvbGk+DQogICAgICAgIDwvdWw+DQogICAgPC9saT4NCgk8YnIgLz4NCiAgICA8bGk+VGhlIFwnaXRlbXNcJyBhcnJheS4gPHN0cm9uZz5Ob3RlIHRoYXQgbW9yZSBlbGVtZW50cyBtYXkgYmUgYXZhaWxhYmxlIGRlcGVuZGluZyBvbiB0aGUgZmVlZC4gICANCiAgICAgICAgPC9zdHJvbmc+DQogICAgICAgIDx1bD4NCiAgICAgICAgICAgIDxsaT5UaGUgdGl0bGUgb2YgdGhlIGl0ZW0gLSA8ZW0+JGl0ZW0udGl0bGUgPC9lbT48L2xpPg0KICAgICAgICAgICAgPGxpPlRoZSBsaW5rIHRvIHRoZSBpdGVtIC0gPGVtPiRpdGVtLmxpbmsgPC9lbT48L2xpPg0KICAgICAgICAgICAgPGxpPlRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgaXRlbSAtIDxlbT4kaXRlbS5kZXNjcmlwdGlvbiA8L2VtPjwvbGk+DQogICAgICAgICAgICA8bGk+VGhlIHB1Ymxpc2ggZGF0ZSBvZiB0aGUgaXRlbSAtIDxlbT4kaXRlbS5wdWJkYXRlIDwvZW0+PC9saT4NCiAgICAgICAgICAgIDxsaT5UaGUgR1VJRCBvZiB0aGUgaXRlbSAtIDxlbT4kaXRlbS5ndWlkIDwvZW0+PC9saT4NCiAgICAgICAgICAgIDxsaT5UaGUgc3VtbWFyeSBvZiB0aGUgaXRlbSAtIDxlbT4kaXRlbS5zdW1tYXJ5IDwvZW0+PC9saT4NCiAgICAgICAgICAgIDxsaT5UaGUgZGF0ZS90aW1lc3RhbXAgb2YgdGhlIGl0ZW0gLSAgPGVtPiRpdGVtLmRhdGVfdGltZXN0YW1wIDwvZW0+PC9saT4NCiAgICAgICAgPC91bD4NCiAgICA8L2xpPg0KCTxsaT48c3BhbiBzdHlsZT0iZm9udC13ZWlnaHQ6IGJvbGQiPkF0dHJpYnV0ZXMgY2FuIGJlIGFjY2Vzc2VkIHZpYSB0aGUgc2FtZSBkb3Qgbm90YXRpb24uPC9zcGFuPg0KCTx1bD48bGk+Rm9yIGV4YW1wbGUsIHRvIGFjY2VzcyB0aGUgZmlyc3ROYW1lIGF0dHJpYnV0ZSBmcm9tIHRoZSBwZXJzb24gZWxlbWVudCB5b3Ugd291bGQgZG8gdGhlIGZvbGxvd2luZzogeyRpdGVtLnBlcnNvbi5maXJzdE5hbWV9LjwvbGk+DQo8bGk+SWYgdGhlIHNvdXJjZSBpbmNsdWRlcyB0YWcgYXR0cmlidXRlcywgeW91IGNhbiBhY2Nlc3MgdGhlbSB1c2luZyB0aGUNCmh5cGhlbiBvcGVyYXRvciwgZS5nLiwgJmx0O3BlcnNvbjppbWFnZSB1cmw9ImZvbyImZ3Q7IGNhbiBiZSBhY2Nlc3NlZCB1c2luZyB7JGl0ZW0ucGVyc29uLmltYWdlLXVybH08L2xpPjwvdWw+PC9saT4NCjwvdWw+JzsNCg0KJGxhbmdbJ2VuYWJsZWR0ZXh0J10gPSAiQ2FjaGUgRW5hYmxlZCI7DQokbGFuZ1snYWdldGV4dCddID0gIkRlZmF1bHQgQ2FjaGUgQWdlIjsNCiRsYW5nWydhZ2V0ZXh0MiddID0gIihpbiBzZWNvbmRzLCBtYXkgdXNlIGFuIGV4cHJlc3Npb24pIjsNCiRsYW5nWydkaXJ0ZXh0J10gPSAiQ2FjaGUgRGlyZWN0b3J5IjsNCiRsYW5nWydzeW5jY21zZW5jb2Rpbmd0ZXh0J10gPSAiU3luYyB3aXRoIENNU01TIGVuY29kaW5nPyI7DQokbGFuZ1snb3V0cHV0ZW5jb2Rpbmd0ZXh0J10gPSAiRGVmYXVsdCBPdXRwdXQgRW5jb2RpbmciOw0KJGxhbmdbJ3ByZWZzdXBkYXRlZCddID0gIlByZWZlcmVuY2VzIHVwZGF0ZWQgc3VjY2Vzc2Z1bGx5ISI7DQokbGFuZ1snZGVidWd0ZXh0J10gPSAiRW5hYmxlIERlYnVnIE1vZGU/IjsNCg0KJGxhbmdbJ2FkbWluZGVzY3JpcHRpb24nXSA9ICJBbGxvd3MgUlNTL0F0b20gRmVlZHMgdG8gYmUgZGlzcGxheWVkIGFzIEhUTUwuIjsNCiRsYW5nWydoZWxwJ10gPSAnPGgzPldoYXQgRG9lcyBUaGlzIERvPzwvaDM+DQo8cD5UaGUgUlNTMkhUTUwgbW9kdWxlIGFsbG93cyB5b3UgdG8gb3V0cHV0IGFuIFJTUy9BdG9tIGZlZWQgYXMgSFRNTC4gVGhlIG91dHB1dCBpcyBmdWxseSBjdXN0b21pemFibGUgdmlhIFNtYXJ0eSB0ZW1wbGF0ZXMuPC9wPg0KPGgzPkhvdyBEbyBJIFVzZSBJdDwvaDM+DQo8cD5GaXJzdCwgZ28gdG8gQ29udGVudC0+UlNTMkhUTUwgYW5kIGNyZWF0ZSBhIGZlZWQuIFRoZSBmZWVkXCdzIG5hbWUgbXVzdCBiZSB1bmlxdWUgYW5kIHRoZSBmZWVkIHVybCBtdXN0IGJlIGEgdmFsaWQgUlNTIGZlZWQuPC9wPg0KPHA+VG8gZGlzcGxheSBhIGZlZWQgYmFzZWQgb24gdGhlIGRlZmF1bHQgdGVtcGxhdGUgKGluY2x1ZGVkKSwgcHV0IHRoZSBmb2xsb3dpbmcgY29kZSBpbiB5b3VyIHBhZ2U6PC9wPg0KPHAgc3R5bGU9ImZvbnQtZmFtaWx5OiBDb3VyaWVyIE5ldzsgZm9udC1zaXplOiA4cHQ7Ij57Y21zX21vZHVsZSBtb2R1bGU9IlJTUzJIVE1MIiBmZWVkPSJGRUVEIE5BTUUgR09FUyBIRVJFIn08L3A+DQo8cD5JZiB5b3VcJ2QgbGlrZSB0byB1c2UgYSBkaWZmZXJlbnQgdGVtcGxhdGUgdGhhdCB5b3UgaGF2ZSBkZWZpbmVkLCB1c2UgdGhlIGZvbGxvd2luZzo8L3A+DQo8cCBzdHlsZT0iZm9udC1mYW1pbHk6IENvdXJpZXIgTmV3OyBmb250LXNpemU6IDhwdDsiPntjbXNfbW9kdWxlIG1vZHVsZT0iUlNTMkhUTUwiIGZlZWQ9IkZFRUQgTkFNRSBHT0VTIEhFUkUiIHRlbXBsYXRlPSJURU1QTEFURSBOQU1FIEdPRVMgSEVSRSJ9PC9wPg0KPGgzPldoYXQgUGFyYW1ldGVycyBEb2VzIEl0IFRha2U8L2gzPg0KPHVsPg0KCTxsaT4ocmVxdWlyZWQpIGZlZWQ9IkZFRUQgTkFNRSIgLSB3aGVyZSBGRUVEIE5BTUUgaXMgdGhlIG5hbWUgZ2l2ZW4gdG8gdGhlIGZlZWQ8L2xpPg0KCTxsaT4ob3B0aW9uYWwpIHRlbXBsYXRlPSJURU1QTEFURSBOQU1FIiAtIHdoZXJlIFRFTVBMQVRFIE5BTUUgaXMgdGhlIG5hbWUgb2YgdGhlIHRlbXBsYXRlIHRvIHVzZTwvbGk+DQoJPGxpPihvcHRpb25hbCkgbnVtaXRlbXM9PGVtPng8L2VtPiB3aGVyZSA8ZW0+eDwvZW0+IGlzIHRoZSBudW1iZXIgb2YgaXRlbXMgdG8gZGlzcGxheSBmcm9tIHRoZSBmZWVkPC9saT4NCgk8bGk+KG9wdGlvbmFsKSBjYWNoZV9hZ2U9PGVtPnk8L2VtPiB3aGVyZSA8ZW0+eTwvZW0+IGlzIHRoZSBjYWNoZSBhZ2UgaW4gbnVtYmVyIG9mIHNlY29uZHM8L2xpPg0KICAgIDxsaT4ob3B0aW9uYWwpIGVuY29kaW5nPSJFTkNPRElORyBUWVBFIiAtIHdoZXJlIEVOQ09ESU5HIFRZUEUgaXMgdGhlIHR5cGUgb2YgZW5jb2RpbmcgKGZvciBleGFtcGxlIElTTy04ODU5LTEgb3IgVVRGLTgpLiBUaGlzIHdpbGwgb3ZlcnJpZGUgdGhlIGRlZmF1bHQgZW5jb2Rpbmcgc3BlY2lmaWVkIG9uIHRoZSBcJ1ByZWZlcmVuY2VzXCcgdGFiIC4gPC9saT4NCjwvdWw+DQo8aDM+UHJlZmVyZW5jZXM8L2gzPg0KPHA+VGhlcmUgYXJlIHRocmVlIGNhdGVnb3JpZXMgb2YgcHJlZmVyZW5jZXMgbG9jYXRlZCB1bmRlciB0aGUgXCdQcmVmZXJlbmNlc1wnIHRhYjo8L3A+DQo8dWw+DQogICAgPGxpPjxzdHJvbmc+Q2FjaGluZw0KICAgICAgICA8L3N0cm9uZz4NCiAgICAgICAgPHVsPg0KICAgICAgICAgICAgPGxpPjxlbT5DYWNoZSBFbmFibGVkPC9lbT4gLSB0dXJucyBjYWNoaW5nIG9uLiBFYWNoIGZlZWQgd2lsbCBiZSBjYWNoZWQgZm9yIGEgdGltZSBwZXJpb2QgYmFzZWQgb24gdGhlIERlZmF1bHQgQ2FjaGUgQWdlLiBDYWNoZSBhZ2UgY2FuIGJlIGN1c3RvbWl6ZWQgb24gYSBwZXItZmVlZCBiYXNpcyAoc2VlIHBhcmFtZXRlcnMgYWJvdmUpLjwvbGk+DQogICAgICAgICAgICA8bGk+PGVtPkRlZmF1bHQgQ2FjaGUgQWdlPC9lbT4gLSBpZiBubyBjYWNoZSBhZ2UgaXMgc3BlY2lmaWVkIGluIHRoZSB0YWcsIHRoaXMgaXMgdGhlIGRlZmF1bHQgYW1vdW50IG9mIHRpbWUgdGhlIGZlZWQgd2lsbCBiZSBjYWNoZWQuIFRoZSB0aW1lIGlzIGluIHNlY29uZHMuIFlvdSBtYXkgdXNlIGFuIGV4cHJlc3Npb25zIHN1Y2ggYXMgNjAgKiA2MCwgd2hpY2ggPSAzNjAwIHNlY29uZHMgd2hpY2ggPSAxIGhvdXIuPC9saT4NCiAgICAgICAgICAgIDxsaT48ZW0+Q2FjaGUgRGlyZWN0b3J5IDwvZW0+LSB0aGlzIGlzIHdoZXJlIHRoZSBjYWNoZSBmaWxlcyB3aWxsIGJlIHN0b3JlZC4gTm90ZSB0aGUgcHJvY2VzcyBvd25lciBtdXN0IGhhdmUgd3JpdGUgcGVybWlzc2lvbnMgaGVyZS48L2xpPg0KICAgICAgICA8L3VsPg0KICAgIDwvbGk+DQogICAgPGxpPjxzdHJvbmc+RW5jb2RpbmcNCiAgICAgICAgPC9zdHJvbmc+DQogICAgICAgIDx1bD4NCiAgICAgICAgICAgIDxsaT48ZW0+U3luYyB3aXRoIENNU01TIGVuY29kaW5nPC9lbT4gLSB0aGlzIHdpbGwgYXR0ZW1wdCB0byBvdXRwdXQgdGhlIGZlZWQgdXNpbmcgdGhlIGRlZmF1bHQgZW5jb2Rpbmcgc3BlY2lmaWVkIGJ5IENNU01TIGluIHRoZSBjb25maWcucGhwIGZpbGUuIElmIHRoaXMgaXMgZW5hYmxlZCwgdGhlIG5leHQgcHJlZmVyZW5jZSwgJnF1b3Q7RGVmYXVsdCBPdXRwdXQgRW5jb2RpbmcmcXVvdDsgd2lsbCBiZSBpZ25vcmVkLiBUaGlzIHByZWZlcmVuY2UgY2FuIGJlIG92ZXJyaWRlbiBieSBzcGVjaWZ5aW5nIHRoZSBlbmNvZGluZyBmcm9tIHdpdGhpbiB0aGUgdGFnIChzZWUgcGFyYW1ldGVycyBhYm92ZSkuPC9saT4NCiAgICAgICAgICAgIDxsaT48ZW0+RGVmYXVsdCBPdXRwdXQgRW5jb2Rpbmc8L2VtPiAtIHRoaXMgaXMgdGhlIGRlZmF1bHQgZW5jb2RpbmcgZm9yIGZlZWRzIGlmIHRoZSBkZWZhdWx0IENNU01TIGVuY29kaW5nIG9yIGZlZWQtc3BlY2lmaWMgZW5jb2RpbmcgaXMgbm90IHVzZWQuPC9saT4NCiAgICAgICAgPC91bD4NCiAgICA8L2xpPg0KCSAgICA8bGk+PHN0cm9uZz5Qcm94eQ0KICAgICAgICA8L3N0cm9uZz4NCiAgICAgICAgPHVsPg0KICAgICAgICAgICAgPGxpPjxlbT5FbmFibGUgUHJveHk8L2VtPiAtIGlmIHRoaXMgaXMgZW5hYmxlZCwgUlNTMkhUTUwgd2lsbCBhdHRlbXB0IHRvIGNvbm5lY3QgdG8gdGhlIHByb3h5IHNlcnZlciBzcGVjaWZpZWQgYnkgdGhlIGZvbGxvd2luZyBob3N0IGFuZCBwb3J0PC9saT4NCiAgICAgICAgICAgIDxsaT48ZW0+SG9zdDwvZW0+IC0gdGhlIHByb3h5IHNlcnZlciB0byBjb25uZWN0IHRvPC9saT4NCiAgICAgICAgICAgIDxsaT48ZW0+UG9ydDwvZW0+IC0gdGhlIHBvcnQgb2YgdGhlIHByb3h5IHNlcnZlciB0byBjb25uZWN0IHRvPC9saT4JCQkNCiAgICAgICAgPC91bD4NCiAgICA8L2xpPg0KICAgIDxsaT48c3Ryb25nPk1pc2NlbGxhbmVvdXM8L3N0cm9uZz4NCiAgICAgICAgPHVsPg0KICAgICAgICAgICAgPGxpPjxlbT5FbmFibGUgRGVidWcgTW9kZTwvZW0+IC0gdGhpcyB0dXJucyBvbiB0aGUgZGVidWcgbW9kZSBpbiB0aGUgTWFncGllUlNTIHBhcnNlci4gVGhpcyBtYXkgb3IgbWF5IG5vdCBiZSB2ZXJ5IHVzZWZ1bCwgYnV0IGhhcyBiZWVuIGluY2x1ZGVkIGFueXdheXMuICAgPC9saT4NCiAgICAgICAgPC91bD4NCiAgICA8L2xpPg0KPC91bD4NCicgLiAkbGFuZ1sndGVtcGxhdGVoZWxwJ10gLiAnDQo8aDM+U3VwcG9ydDwvaDM+DQo8cD5BcyBwZXIgdGhlIEdQTCwgdGhpcyBzb2Z0d2FyZSBpcyBwcm92aWRlZCBhcy1pcy4gUGxlYXNlIHJlYWQgdGhlIHRleHQgb2YgdGhlIGxpY2Vuc2UgZm9yIHRoZSBmdWxsIGRpc2NsYWltZXIuPC9wPg0KPGgzPkNvcHlyaWdodCBhbmQgTGljZW5zZTwvaDM+DQo8cD5Db3B5cmlnaHQgJmNvcHk7IDIwMDcsIEphbWVzIERpeG9uIDxhIGhyZWY9Im1haWx0bzpqaW0udy5kaXhvbkBnbWFpbC5jb20iPiZsdDtqaW0udy5kaXhvbkBnbWFpbC5jb20mZ3Q7PC9hPi4gQWxsIFJpZ2h0cyBBcmUgUmVzZXJ2ZWQuPC9wPg0KPHA+VGhpcyBtb2R1bGUgaGFzIGJlZW4gcmVsZWFzZWQgdW5kZXIgdGhlIDxhIGhyZWY9Imh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy9saWNlbnNlcy5odG1sI0dQTCI+R05VIFB1YmxpYyBMaWNlbnNlPC9hPi4gWW91IG11c3QgYWdyZWUgdG8gdGhpcyBsaWNlbnNlIGJlZm9yZSB1c2luZyB0aGUgbW9kdWxlLjwvcD4nOw0KJGxhbmdbJ2NoYW5nZWxvZyddPSc8aDM+Q2hhbmdlIExvZzwvaDM+DQo8aDQ+VmVyc2lvbiAxLjIuNDwvaDQ+DQo8cD48dWw+PGxpPkJ1bXBlZCBtYXggdmVyc2lvbiBvZiBDTVNNUyBzdXBwb3J0ZWQ8L2xpPjwvdWw+PC9wPg0KPGg0PlZlcnNpb24gMS4yLjM8L2g0Pg0KPHA+PHVsPjxsaT5VcGdyYWRlZCB0byBtb2RpZmllZCBtYWdwaWUgbGlicmFyeTwvbGk+DQo8bGk+Q2hhbmdlZCB0byBzdXBwb3J0IENNU01TIDEuNjwvbGk+DQo8L3VsPjwvcD4NCjxoND5WZXJzaW9uIDEuMi4yPC9oND4NCjxwPg0KPHVsPg0KICAgIDxsaT5GaXhlZCBhIHBlcm1pc3Npb25zIGlzc3VlPC9saT4NCgk8bGk+VXBkYXRlZCBkb2N1bWVudGF0aW9uIHRvIHJlZmxlY3QgaG93IHRvIGFjY2VzcyBhdHRyaWJ1dGVzPC9saT4NCjwvdWw+DQo8aDQ+VmVyc2lvbiAxLjIuMTwvaDQ+DQo8cD4NCjx1bD4NCiAgICA8bGk+QWJpbGl0eSB0byBzcGVjaWZ5IGEgcHJveHkgc2VydmVyIGluIHRoZSBjYXNlIHRoYXQgeW91ciBzZXJ2ZXIgaXMgYmVoaW5kIGEgcHJveHkuIFRoYW5rcyB0byBUYXJlayBmb3IgZGlzY292ZXJpbmcgdGhpcyBpc3N1ZS48L2xpPg0KCTxsaT5NYWRlIGEgY291cGxlIG9mIGNoYW5nZXMgdG8gdGhlIGhlbHAgZmlsZSB0byBtYWtlIHRoaW5ncyBtb3JlIGNsZWFyLiBUaGFua3MgdG8gRWR1YXJkbyBmb3IgdGhlIHN1Z2dlc3Rpb24uPC9saT4NCjwvdWw+DQo8aDQ+VmVyc2lvbiAxLjI8L2g0Pg0KPHA+DQo8dWw+DQogICAgPGxpPkZpeGVkIGFuIGluc3RhbGxhdGlvbiBpc3N1ZSB3aGVyZSB0aGUgY21zX21vZHVsZV9yc3MyaHRtbF9mZWVkcyB0YWJsZSB3YXMgbm90IGJlaW5nIGNyZWF0ZWQuIFRoYW5rcyB0byBSYWluZXIgZm9yIHRyYWNraW5nIHRoaXMgZG93bi48L2xpPg0KICAgIDxsaT5BZGRlZCBhYmlsaXR5IHRvIHVzZSB0aGUgb3V0cHV0IGVuY29kaW5nIG9mIHRoZSBDTVNNUyBpbnN0YWxsYXRpb24gZm9yIGFsbCBmZWVkcy48L2xpPg0KICAgIDxsaT5BZGRlZCBhYmlsaXR5IHRvIHNwZWNpZnkgYSBnbG9iYWwgb3V0cHV0IGVuY29kaW5nIGlmIHlvdSBkbyBub3Qgd2lzaCB0byB1c2UgdGhhdCBvZiB0aGUgQ01TTVMgaW5zdGFsbGF0aW9uLjwvbGk+DQogICAgPGxpPkFkZGVkIGFiaWxpdHkgdG8gc3BlY2lmeSB0aGUgZW5jb2Rpbmcgb24gYSBwZXItZmVlZCBiYXNpcy48L2xpPg0KICAgIDxsaT5BZGRlZCB0aGUgYWJpbGl0eSB0byBlbmFibGUvZGlzYWJsZSB0aGUgREVCVUcgbW9kZSBvZiB0aGUgTWFncGllUlNTIHBhcnNlci4gICA8L2xpPg0KICAgIDxsaT5BZGRlZCBhIGJ1dHRvbiB0byBjbGVhciB0aGUgY2FjaGUuPC9saT4NCjwvdWw+DQo8aDQ+VmVyc2lvbiAxLjEuMTwvaDQ+DQo8cD4NCjx1bD4NCiAgICA8bGk+Tm93IHdvcmtzIHdpdGggdmVyc2lvbnMgb2YgQ01TTVMgJmd0OyAxLjIuMSA8L2xpPg0KPC91bD4NCjxoND5WZXJzaW9uIDEuMTwvaDQ+DQo8cD4NCjx1bD4NCjxsaT5BZGRlZCB0aGUgYWJpbGl0eSB0byBzZXQgdGhlIGNhY2hlIGFnZSBvbiBhIHBlci1mZWVkIGJhc2lzLiBTZWUgSGVscCBmb3IgbW9yZSBpbmZvcm1hdGlvbi48L2xpPg0KPGxpPkZpeGVkIGJ1ZyB3aXRoIGFsbCBhc3NvY2lhdGVkIHRlbXBsYXRlcyBub3QgYmVpbmcgcmVtb3ZlZCB3aGVuIHVuaW5zdGFsbGVkLjwvbGk+PC91bD4NCjwvcD4NCjxoND5WZXJzaW9uIDEuMDwvaDQ+DQo8cD4NCjx1bD48bGk+SW5pdGlhbCByZWxlYXNlIG9mIFJTUzJIVE1MPC9saT48L3VsPg0KPC9wPic7DQo/Pg0K]]></data>
	</file>
	<file>
	  <filename>/lib/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/function.encoding.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCglmdW5jdGlvbiBpc1ZhbGlkT3V0cHV0RW5jb2RpbmcoJGVuY29kaW5nKQ0KCXsNCgkJJGVuY29kaW5nID0gc3RydG9sb3dlcigkZW5jb2RpbmcpOw0KDQoJCS8vIGVuY29kaW5ncyBzdXBwb3J0ZWQgYnkgdGhlIHhtbCBwYXJzZXINCgkJLy8gc2VlIGh0dHA6Ly91czIucGhwLm5ldC94bWxfcGFyc2VyX3NldF9vcHRpb24NCgkJaWYgKCRlbmNvZGluZyA9PSAndXRmLTgnIHx8DQoJCQkkZW5jb2RpbmcgPT0gJ2lzby04ODU5LTEnIHx8DQoJCQkkZW5jb2RpbmcgPT0gJ3VzLWFzY2lpJykNCgkJew0KCQkJcmV0dXJuIHRydWU7DQoJCX0NCgkJZWxzZQ0KCQl7CQ0KCQkJcmV0dXJuIGZhbHNlOw0KCQl9DQoJfQ0KPz4=]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/magpierss/AUTHORS</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[a2VsbGFuIDxrZWxsYW5AcHJvdGVzdC5uZXQ+Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/ChangeLog</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[MjAwNS0xMC0yOCAxNDoxMSAga2VsbGFuCgoJKiBleHRsaWIvU25vb3B5LmNsYXNzLmluYzogYSBiZXR0ZXIgc29sdXRpb24KCjIwMDUtMTAtMjggMTE6NTEgIGtlbGxhbgoKCSogZXh0bGliL1Nub29weS5jbGFzcy5pbmM6IGZpeCBhcmJ0cmlhcnkgY29kZSBleGVjdXRpb24KCSAgdnVsbmVyYWJpbGl0eSB3aGVuIHVzaW5nIGN1cmwrc3NsCgoJICBodHRwOi8vd3d3LnNlYy1jb25zdWx0LmNvbS8yMTYuaHRtbAoKMjAwNS0wMy0wOCAxMDo0NiAga2VsbGFuCgoJKiByc3NfcGFyc2UuaW5jOiBmaXggYnVnIHcvIGF0b20gYW5kIGRhdGUgbm9ybWFsaXphdGlvbgoKMjAwNS0wMi0wOSAxNDo1OSAga2VsbGFuCgoJKiByc3NfZmV0Y2guaW5jOiBmaXggc3RhbGUgY2FjaGUgYnVnCgoyMDA1LTAxLTI4IDAyOjI3ICBrZWxsYW4KCgkqIHJzc19wYXJzZS5pbmM6IHN1cHBvcnQgcGhwIHcvbyBhcnJheV9jaGFuZ2VfY2FzZQoKMjAwNS0wMS0yMyAyMDowMiAga2VsbGFuCgoJKiByc3NfZmV0Y2guaW5jOiBmaXggY2FjaGUgYnVnIGludHJvZHVjZWQgYnkgY2hhcnNldCBlbmNvZGluZwoKMjAwNS0wMS0xMiAwOToxNCAga2VsbGFuCgoJKiByc3NfY2FjaGUuaW5jLCByc3NfZmV0Y2guaW5jOiBtb3JlIHNhbml0eSBjaGVja3MgZm9yIHdoZW4gdGhpbmdzCgkgIGdvIHdyb25nCgoyMDA0LTEyLTEyIDEzOjQ0ICBrZWxsYW4KCgkqIElOU1RBTEwsIHJzc19jYWNoZS5pbmMsIHJzc191dGlscy5pbmM6IGRldGFiCgoyMDA0LTExLTIzIDIwOjE1ICBrZWxsYW4KCgkqIHJzc19wYXJzZS5pbmM6IGZpeCBjYWxsaW5nIGljb252IGluc3RlYWQgb2YgbWJfY29udmVydF9lbmNvZGluZwoKMjAwNC0xMS0yMiAwMjoxMSAga2VsbGFuCgoJKiBDSEFOR0VTLCBDaGFuZ2VMb2csIHJzc19wYXJzZS5pbmMsIHNjcmlwdHMvbWFncGllX2RlYnVnLnBocDogbGFzdAoJICBiaXQgb2YgdGlkeWluZwoKMjAwNC0xMS0yMiAwMTo0NSAga2VsbGFuCgoJKiByc3NfZmV0Y2guaW5jOiBkZXRhYiwgYnVtcCB2ZXJzaW9uCgoyMDA0LTExLTIyIDAxOjQzICBrZWxsYW4KCgkqIHJzc19wYXJzZS5pbmM6IHdhcyBmaWx0ZXJpbmcgdG9vIG11Y2gKCjIwMDQtMTEtMjIgMDA6MDMgIGtlbGxhbgoKCSogcnNzX2ZldGNoLmluYywgcnNzX3BhcnNlLmluYzogY2FjaGUgb24gJHVybCAuICRvdXRwdXRfZW5jb2RpbmcKCSAgb3RoZXJ3aXNlIHdlIGNhbiBnZXQgbXVuZ2VkIG91dHB1dAoKMjAwNC0xMS0yMSAyMzo1MiAga2VsbGFuCgoJKiByc3NfcGFyc2UuaW5jOiBhZGQgV0FSTklORwoKMjAwNC0xMS0yMSAyMzo0NSAga2VsbGFuCgoJKiByc3NfcGFyc2UuaW5jOiBkb24ndCBzZXQgRVJST1Igb24gbm90aWNlIG9yIHdhcm5pbmcgKHJzc19mZXRjaAoJICBkaWVzIG9uIHBhcnNlIGVycm9ycykKCjIwMDQtMTEtMjEgMjM6NDQgIGtlbGxhbgoKCSogcnNzX2ZldGNoLmluYzogYWRkIGVuY29kaW5nIGRlZmluZXMgKGZpeCB0aW1lb3V0IGVycm9yIHJlcG9ydGluZykKCjIwMDQtMTEtMjEgMjA6MjEgIGtlbGxhbgoKCSogcnNzX3BhcnNlLmluYzogaW5jb3Jwb3JhdGUgc3RldmUncyBwYXRjaAoKMjAwNC0xMS0yMSAxOToyNiAga2VsbGFuCgoJKiByc3NfcGFyc2UuaW5jOiByZW1vdmUgb2xkIGRlYnVnZ2luZyBmdW5jdGlvbnMsIHRvdGFsbHkKCSAgYXJiaXRyYXJpbHkuCW1pZ2h0IGJyZWFrIHN0dWZmLiAgY2FuJ3QgcmVhbGx5IGV4cGxhaW4gd2h5IGknbQoJICBkb2luZyB0aGlzLgoKMjAwNC0xMC0yOCAxNTo1MiAga2VsbGFuCgoJKiByc3NfcGFyc2UuaW5jOiBmaXhlZCAnPScgaW5zdGVhZCBvZiAnPT0nCgoyMDA0LTEwLTI2IDAwOjQ4ICBrZWxsYW4KCgkqIHJzc19wYXJzZS5pbmM6IGNoYW5jZSBlcG9jaCB0byB0aW1lc3RhbXAgdG8gY29uZm9ybSB3LyBwaHAgbmFtaW5nCgkgIGNvbnZlbnRpb25zCgoyMDA0LTA2LTE1IDEyOjAwICBrZWxsYW4KCgkqIHJzc19wYXJzZS5pbmM6IFtubyBsb2cgbWVzc2FnZV0KCjIwMDQtMDQtMjYgMTQ6MTYgIGtlbGxhbgoKCSogcnNzX2ZldGNoLmluYzogYnVtcCB2ZXJzaW9uCgoyMDA0LTA0LTI2IDEyOjM2ICBrZWxsYW4KCgkqIHJzc19wYXJzZS5pbmM6IGZpeCBmaWVsZCBkb3VibGluZwoKMjAwNC0wNC0yNCAxNzo0NyAga2VsbGFuCgoJKiBDSEFOR0VTLCBDaGFuZ2VMb2c6IHVwZGF0ZWQKCjIwMDQtMDQtMjQgMTc6MzUgIGtlbGxhbgoKCSogcnNzX2ZldGNoLmluYzogYnVtcGVkIHZlcnNpb24KCjIwMDQtMDQtMjQgMTY6NTIgIGtlbGxhbgoKCSogcnNzX3BhcnNlLmluYzogc3VwcG9ydCBhcmJpdHJhcnkgYXRvbSBjb250ZW50IGNvbnN0cnVjdHMKCgkgIHNvbWUgcmVmYWN0b3JpbmcKCjIwMDQtMDQtMjQgMTY6MTUgIGtlbGxhbgoKCSogcnNzX3BhcnNlLmluYzogc3VwcG9ydCBzdW1tYXJ5IGNvbnRlbnQgY29udHN0cnVjdC4gIGFkZCBub3JtYWxpemUKCSAgZnVuY3Rpb24KCjIwMDQtMDMtMjcgMTY6MjkgIGtlbGxhbgoKCSogZXh0bGliL1Nub29weS5jbGFzcy5pbmM6IGFjY2VwdCBzZWxmLXNpZ25lZCBjZXJ0cwoKMjAwNC0wMy0yNyAxMjo1MyAga2VsbGFuCgoJKiBleHRsaWIvU25vb3B5LmNsYXNzLmluYzogZml4ZWQgU1NMIHN1cHBvcnQgICAqIHNldCBzdGF0dXMgICAqIHNldAoJICBlcnJvciBvbiBiYWQgY3VybAoKCSAgKGFsc28gcmlwcGVkIG91dCBiaWcgY2h1bmtzIG9mIGRlYWQgd2VpZ2h0IChzdWJtaXRfZm9ybSkgd2hpY2gKCSAgd2VyZSBnZXR0aW5nIGluIG15IHdheQoKMjAwNC0wMS0yNSAwMjoyNSAga2VsbGFuCgoJKiByc3NfcGFyc2UuaW5jOiBtYWtlIFJTUyAxLjAncyByZGY6YWJvdXQgYXZhaWxhYmxlCgoyMDA0LTAxLTI1IDAyOjA3ICBrZWxsYW4KCgkqIHJzc19wYXJzZS5pbmM6IGNsZWFuIHVwIHRleHQsIGFuZCBsaW5lIGZvcm1hdHMuICBhZGQgc3VwcG9ydCBpdGVtCgkgIHJkZjphYm91dAoKMjAwNC0wMS0yNCAyMzo0MCAga2VsbGFuCgoJKiBDSEFOR0VTLCBDaGFuZ2VMb2c6IHVwZGF0ZSBjaGFuZ2VzCgoyMDA0LTAxLTI0IDIzOjM3ICBrZWxsYW4KCgkqIHJzc19mZXRjaC5pbmM6IHVwZGF0ZWQgdmVyc2lvbgoKMjAwNC0wMS0yNCAyMzozNSAga2VsbGFuCgoJKiByc3NfcGFyc2UuaW5jOiB3aGl0ZXNwYWNlCgoyMDA0LTAxLTI0IDIzOjIzICBrZWxsYW4KCgkqIGV4dGxpYi9Tbm9vcHkuY2xhc3MuaW5jOiBzdXBwb3J0IGJhZGx5IGZvcm1hdHRlZCBodHRwIGhlYWRlcnMKCjIwMDQtMDEtMjQgMjM6MjAgIGtlbGxhbgoKCSogcnNzX3BhcnNlLmluYzogYWRkZWQgYWxwaGEgYXRvbSBwYXJzaW5nIHN1cHBvcnQKCjIwMDMtMDYtMjUgMjI6MzQgIGtlbGxhbgoKCSogZXh0bGliL1Nub29weS5jbGFzcy5pbmM6IGZpeGVkIGZyZWFkIDQuMy4yIGNvbXBhdGliaWxpdHkgcHJvYmxlbXMKCjIwMDMtMDYtMTMgMTE6MzEgIGtlbGxhbgoKCSogcnNzX2ZldGNoLmluYzogcmVzZXQgY2FjaGUgb24gMzA0CgoyMDAzLTA2LTEyIDIxOjM3ICBrZWxsYW4KCgkqIHJzc19jYWNoZS5pbmMsIHJzc19mZXRjaC5pbmMsIHJzc19wYXJzZS5pbmMsIHJzc191dGlscy5pbmM6CgkgIGJ1bXBlZCB1cCB2ZXJzaW9uIG51bWJlcnMKCjIwMDMtMDYtMTIgMjE6MzIgIGtlbGxhbgoKCSogaHRkb2NzL2luZGV4Lmh0bWw6IHVwZGF0ZWQgbmV3cwoKMjAwMy0wNi0xMiAyMToyNyAga2VsbGFuCgoJKiBORVdTOiBhIG1hbnVhbCBibG9nIDopCgoyMDAzLTA2LTEyIDIxOjIyICBrZWxsYW4KCgkqIGh0ZG9jcy9pbmRleC5odG1sOiBmdWxseSBxdWFsaWZpZWQgaW1nCgoyMDAzLTA2LTEyIDIxOjIwICBrZWxsYW4KCgkqIGh0ZG9jcy9pbmRleC5odG1sOiBjbGVhbiB1cC4JYWRkZWQgYmFkZ2UuCgoyMDAzLTA2LTEyIDIxOjA0ICBrZWxsYW4KCgkqIHJzc191dGlscy5pbmM6IGNsZWFuIHVwIHJlZ2V4CgoyMDAzLTA2LTEyIDIxOjAyICBrZWxsYW4KCgkqIHJzc19jYWNoZS5pbmM6IHN1cHByZXNzIHNvbWUgd2FybmluZ3MKCjIwMDMtMDUtMzAgMjA6NDQgIGtlbGxhbgoKCSogZXh0bGliL1Nub29weS5jbGFzcy5pbmM6IG1vcmUgY29tbWVudHMsIGNsZWFuZWQgdXAgbm90aWNlCgoyMDAzLTA1LTMwIDE1OjE0ICBrZWxsYW4KCgkqIGV4dGxpYi9Tbm9vcHkuY2xhc3MuaW5jOiBkb24ndCBhZHZlcnRpc2UgZ3ppcCBzdXBwb3J0IGlmIHRoZSB1c2VyCgkgIGhhc24ndCBidWlsdCBwaHAgd2l0aCBnemluZmxhdGUgc3VwcG9ydAoKMjAwMy0wNS0xMiAyMjozMiAga2VsbGFuCgoJKiBDaGFuZ2VMb2c6IGNoYW5nZXMKCjIwMDMtMDUtMTIgMjI6MTEgIGtlbGxhbgoKCSogaHRkb2NzL2luZGV4Lmh0bWw6IGFubm91bmNlIDAuNQoKMjAwMy0wNS0xMiAyMTo0MiAga2VsbGFuCgoJKiBodGRvY3MvaW5kZXguaHRtbDogY2hhbmdlCgoyMDAzLTA1LTEyIDIxOjM5ICBrZWxsYW4KCgkqIHJzc19mZXRjaC5pbmM6IHVzZSBnemlwCgoyMDAzLTA1LTEyIDIxOjM3ICBrZWxsYW4KCgkqIGV4dGxpYi9Tbm9vcHkuY2xhc3MuaW5jOiBhZGRlZCBzdXBwb3J0IGd6aXAgZW5jb2RlZCBjb250ZW50CgkgIG5lZ29pYXRpb24KCjIwMDMtMDUtMTIgMjE6MzIgIGtlbGxhbgoKCSogcnNzX2NhY2hlLmluYywgcnNzX2ZldGNoLmluYywgcnNzX3BhcnNlLmluYywgcnNzX3V0aWxzLmluYzogZml4ZWQKCSAgdHlwb2VzCgoyMDAzLTA0LTI2IDIxOjQ0ICBrZWxsYW4KCgkqIHJzc19wYXJzZS5pbmM6IGZpeCBtaW5vciB0eXBvCgoyMDAzLTA0LTE4IDA4OjE5ICBrZWxsYW4KCgkqIGh0ZG9jcy9jb29rYm9vay5odG1sOiB1cGRhdGVkIGNvb2tib29rIHRvIHNob3cgbW9yZSBjb2RlIGZvcgoJICBsaW1pdGluZyBpdGVtcwoKMjAwMy0wMy0wMyAxNjowMiAga2VsbGFuCgoJKiByc3NfcGFyc2UuaW5jLCBzY3JpcHRzL21hZ3BpZV9zbGFzaGJveC5waHA6IGNvbW1pdHRlZCAob3IKCSAgYWRwYXRlZCkgcGF0Y2ggZnJvbSBOaWNvbGEgKHd3dy50ZWNobmljay5jb20pIHRvIHF1ZWxsICdVbmRlZmluZWQKCSAgSW5kZXhlcycgbm90aWNlcwoKMjAwMy0wMy0wMyAxNTo1OSAga2VsbGFuCgoJKiByc3NfZmV0Y2guaW5jOiBjb21taXRlZCBwYXRjaCBmcm9tIG5pY29sYSAod3d3LnRlY2huaWNrLmNvbSkgdG8KCSAgcXVlbGwgJ3VuZGVmaW5lZCBpbmRleGVzJyBub3RpY2VzLgoKCSAgKiBNYWdwaWUgbm93IGF1dG9tYXRpY2FsbHkgaW5jbHVkZXMgaXRzIHZlcnNpb24gaW4gdGhlCgkgIHVzZXItYWdlbnQsICYgd2hldGhlciBjYWNoZWluZyBpcyB0dXJuZWQgb24uCgoyMDAzLTAyLTEyIDAxOjIyICBrZWxsYW4KCgkqIENIQU5HRVMsIENoYW5nZUxvZzogQ2hhbmdlTG9nIG5vdyBhdXRvLWdlbmVyYXRlZCBieSBjdnMyY2wKCjIwMDMtMDItMTIgMDA6MjEgIGtlbGxhbgoKCSogcnNzX2ZldGNoLmluYzogYmV0dGVyIGVycm9ycywgaG9wZWZ1bGx5IHN0b21wZWQgb24gcGVza3kgbm90aWNlcwoKMjAwMy0wMi0xMiAwMDoxOSAga2VsbGFuCgoJKiByc3NfcGFyc2UuaW5jOiBjaGVjayB0byBzZWUgaXMgeG1sIGlzIHN1cHBvcnRlZCwgaWYgbm90IGRpZQoKCSAgYWxzbyB0aHJvdyBiZXR0ZXIgeG1sIGVycm9ycwoKMjAwMy0wMi0xMiAwMDoxOCAga2VsbGFuCgoJKiByc3NfY2FjaGUuaW5jOiBob3BlZnVsbHkgY2xlYXJlZCB1cCBzb21lIG5vdGljZXMgdGhhdCB3ZXJlIGJlaW5nCgkgIHRocm93biBpbnRvIHRoZSBsb2cKCgkgIGZpeGVkIGEgZGVidWcgc3RhdGVtZW50IHRoYXQgd2FzIGJlaW5nIGNhbGxlZCBhcyBhbiBlcnJvcgoKMjAwMy0wMi0xMiAwMDoxNSAga2VsbGFuCgoJKiBzY3JpcHRzLzogbWFncGllX3NpbXBsZS5waHAsIG1hZ3BpZV9zbGFzaGJveC5waHA6IG1vdmVkCgkgIG1hZ3BpZV9zaW1wbGUgdG8gbWFncGllX3NsYXNoYm94LCBhbmQgcmVwbGFjZWQgaXQgd2l0aCBhIHNpbXBsZXIKCSAgZGVtby4KCjIwMDMtMDItMTIgMDA6MDIgIGtlbGxhbgoKCSogSU5TVEFMTCwgUkVBRE1FLCBUUk9VQkxFU0hPT1RJTkc6IEltcHJvdmVkIGRvY3VtZW50YXRpb24uICBCZXR0ZXIKCSAgaW5zdGFsbCBpbnN0cnVjdGlvbnMuCgoJICBUUk9VQkxFU0hPT1RJTkcgY292ZXIgY29tbW9uIGluc3RhbGxhdGlvbiBhbmQgdXNhZ2UgcHJvYmxlbXMKCjIwMDMtMDEtMjIgMTQ6NDAgIGtlbGxhbgoKCSogaHRkb2NzL2Nvb2tib29rLmh0bWw6IGFkZGVkIGNvb2tib29rLmh0bWwKCjIwMDMtMDEtMjEgMjM6NDcgIGtlbGxhbgoKCSogY29va2Jvb2s6IGEgbWFncGllIGNvb2tib29rCgoyMDAzLTAxLTIwIDEwOjA5ICBrZWxsYW4KCgkqIENoYW5nZUxvZzogdXBkYXRlZAoKMjAwMy0wMS0yMCAwOToyMyAga2VsbGFuCgoJKiBzY3JpcHRzL3NpbXBsZV9zbWFydHkucGhwOiBtaW5vciBjbGVhbiB1cAoKMjAwMy0wMS0yMCAwOToxNSAga2VsbGFuCgoJKiBzY3JpcHRzL1JFQURNRTogYWRkZWQgc21hcnR5IHVybAoKMjAwMy0wMS0yMCAwOToxNCAga2VsbGFuCgoJKiBtYWdwaWVfc2ltcGxlLnBocCwgaHRkb2NzL2luZGV4Lmh0bWwsIHNjcmlwdHMvUkVBRE1FLAoJICBzY3JpcHRzL21hZ3BpZV9kZWJ1Zy5waHAsIHNjcmlwdHMvbWFncGllX3NpbXBsZS5waHAsCgkgIHNjcmlwdHMvc2ltcGxlX3NtYXJ0eS5waHAsCgkgIHNjcmlwdHMvc21hcnR5X3BsdWdpbi9tb2RpZmllci5yc3NfZGF0ZV9wYXJzZS5waHAsCgkgIHNjcmlwdHMvdGVtcGxhdGVzL3NpbXBsZS5zbWFydHk6IEFkZGVkIHNjcmlwdHMgZGlyZWN0b3J5IGZvcgoJICBleGFtcGxlcyBvbiBob3cgdG8gdXNlIE1hZ3BpZVJTUwoKCSAgbWFncGllX3NpbXBsZSAtIGlzIGEgc2ltcGxlIGV4YW1wbGUgbWFncGllX2RlYnVnIC0gc3BldyBhbGwgdGhlCgkgIGluZm9ybWF0aW9uIGZyb20gYSBwYXJzZWQgUlNTIGZlZWQgc2ltcGxlX3NtYXJ5IC0gZXhhbXBsZSBvZgoJICB1c2luZyBtYWdwaWUgd2l0aCBTbWFydHkgdGVtcGxhdGUgc3lzdGVtCgkgIHNtYXJ0eV9wbHVnaW4vbW9kaWZpZXIucnNzX2RhdGVfcGFyc2UucGhwIC0gc3VwcG9ydCBmaWxlIGZvciB0aGUKCSAgc21hcnR5IGRlbW8gdGVtcGxhdGVzL3NpbXBsZS5zbWFyeSAtIHRlbXBsYXRlIGZvciB0aGUgc21hcnR5IGRlbW8KCjIwMDMtMDEtMjAgMDk6MTEgIGtlbGxhbgoKCSogcnNzX2ZldGNoLmluYywgcnNzX3BhcnNlLmluYzogY2hhbmdlcyB0byBlcnJvciBoYW5kbGluZyB0byBnaXZlCgkgIHNjcmlwdCBhdXRob3JzIG1vcmUgYWNjZXNzIHRvIG1hZ3BpZSdzIGVycm9ycy4KCgkgIGFkZGVkIG1ldGhvZCBtYWdwaWVfZXJyb3IoKSB0byByZXRyaWV2ZSBnbG9iYWwgTUFHUElFX0VSUk9SCgkgIHZhcmlhYmxlIGZvciB3aGVuIGZldGNoX3JzcygpIHJldHVybnMgZmFsc2UKCjIwMDItMTAtMjYgMTk6MDIgIGtlbGxhbgoKCSogaHRkb2NzL2luZGV4Lmh0bWw6IHB1dHRpbmcgdGhlIHdlYnNpdGUgdW5kZXIgc291cmNlIGNvbnRyb2wKCjIwMDItMTAtMjYgMTg6NDMgIGtlbGxhbgoKCSogQVVUSE9SUywgQ2hhbmdlTG9nLCBJTlNUQUxMLCBSRUFETUU6IHNvbWUgZG9jdW1lbnRhdGlvbiB0byBtYWtlCgkgIGl0IGFsbCBsb29rIG9mZmljaWFsIDopCgoyMDAyLTEwLTI1IDIzOjA0ICBrZWxsYW4KCgkqIG1hZ3BpZV9zaW1wbGUucGhwOiBxdXh4CgoyMDAyLTEwLTI1IDIzOjA0ICBrZWxsYW4KCgkqIHJzc19wYXJzZS5pbmM6IGFkZGVkIHN1cHBvcnQgZm9yIHRleHRpbnB1dCBhbmQgaW1hZ2UKCjIwMDItMTAtMjUgMTk6MjMgIGtlbGxhbgoKCSogbWFncGllX3NpbXBsZS5waHAsIHJzc19jYWNoZS5pbmMsIHJzc19mZXRjaC5pbmMsIHJzc19wYXJzZS5pbmMsCgkgIHJzc191dGlscy5pbmM6IHN3aXRjaGVkIHRvIHVzaW5nIFNub29weSBmb3IgZmV0Y2hpbmcgcmVtb3RlIFJTUwoJICBmaWxlcy4KCgkgIGFkZGVkIHN1cHBvcnQgZm9yIGNvbmRpdGlvbmFsIGdldHMKCjIwMDItMTAtMjUgMTk6MjIgIGtlbGxhbgoKCSogcnNzX2NhY2hlLmluYywgcnNzX2ZldGNoLmluYywgcnNzX3BhcnNlLmluYywgcnNzX3V0aWxzLmluYzoKCSAgQ2hhbmdlIGNvbW1lbnQgc3R5bGUgdG8gc2xhdmlzaGx5IGltaXRhdGUgdGhlIHBocGluc2lkZXIgc3R5bGUKCSAgZm91bmQgaW4gU21hcnR5IGFuZCBTbm9vcHkgOikKCjIwMDItMTAtMjUgMTk6MTggIGtlbGxhbgoKCSogZXh0bGliL1Nub29weS5jbGFzcy5pbmM6IGFkZGVkIFNub29weSBpbiBvcmRlciB0byBzdXBwb3J0CgkgIGNvbmRpdGlvbmFsIGdldHMKCjIwMDItMTAtMjMgMjM6MTkgIGtlbGxhbgoKCSogbWFncGllX3NpbXBsZS5waHAsIHJzc19jYWNoZS5pbmMsIHJzc19mZXRjaC5pbmMsIHJzc19wYXJzZS5pbmM6CgkgIE1BSk9SIENMRUFOVVAhCgoJICAqIHJzc19mZXRjaCBnb3QgcmlkIG9mIHRoZSBvcHRpb25zIGFycmF5LCByZXBsYWNlZCBpdCB3aXRoIGEgbW9yZQoJICBQSFAtbGlrZSBzb2x1dGlvbiBvZiB1c2luZyBkZWZpbmVzLiAgY29uc3RhbnRzIGFyZSBzZXR1cCwgd2l0aAoJICBkZWZhdWx0cywgaW4gdGhlIGZ1bmN0aW9uIGluaXQoKQoKCSAgZ290IHJpZCBvZiB0aGUgaWRpb20gb2YgcGFzc2luZyBiYWNrIGFuIGFycmF5LCBpdHMgd2FzIGF3a3dhcmQgdG8KCSAgZGVhbCB3aXRoIGluIFBIUCwgYW5kIHVudXN1YWwgKGFuZCBjb25zcXVlbnRseSBjb25mdXNpbmcgdG8KCSAgcGVvcGxlKS4gIG5vdyBpIHJldHVybiB0cnVlL2ZhbHNlIHZhbHVlcywgYW5kIHRyeSB0byBzZXR1cCBlcnJvcgoJICBzdHJpbmcgd2hlcmUgYXBwcm9waWF0ZSAocnNzX2NhY2hlIGhhcyB0aGUgbW9zdCBjb21wbGV0ZSBleGFtcGxlCgkgIG9mIHRoaXMpCgoJICBjaGFuZ2UgdGhlIGxvZ2ljIGZvciBpbnRlcmFjdGluZyB3aXRoIHRoZSBjYWNoZQoKCSAgKiByc3NfY2FjaGUgbWFqb3IgcmUtd29ya2luZyBvZiBob3cgZXJyb3IgYXJlIGhhbmRsZWQuICB0cmllZCB0bwoJICBtYWtlIHRoZSBjb2RlIG1vcmUgcmVzaWxsaWVudC4gIHRoZSBjYWNoZSBpcyBub3cgbXVjaCBtb3JlIGF3YXJlCgkgIG9mIE1BWF9BR0UsIHdoZXJlIGJlZm9yZSB0aGlzIHdhcyBiZWluZyBkcml2ZW4gb3V0IG9mIHJzc19mZXRjaAoJICAod2hpY2ggd2FzIHNpbGx5KQoKCSAgKiByc3NfcGFyc2UgcHJvcGVybHkgaGFuZGxlcyB4bWwgcGFyc2UgZXJyb3JzLiAgdXNlZCB0byBzYWlsCgkgIGFsb25nIGJsaXRoZWx5IHVuYXdhcmUuCgoyMDAyLTA5LTExIDExOjExICBrZWxsYW4KCgkqIHJzc19jYWNoZS5pbmMsIHJzc19wYXJzZS5pbmMsIG1hZ3BpZV9zaW1wbGUucGhwLCByc3NfZmV0Y2guaW5jLAoJICByc3NfdXRpbHMuaW5jOiBJbml0aWFsIHJldmlzaW9uCgoyMDAyLTA5LTExIDExOjExICBrZWxsYW4KCgkqIHJzc19jYWNoZS5pbmMsIHJzc19wYXJzZS5pbmMsIG1hZ3BpZV9zaW1wbGUucGhwLCByc3NfZmV0Y2guaW5jLAoJICByc3NfdXRpbHMuaW5jOiBpbml0aWFsIGltcG9ydAoK]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/CHANGES</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[VmVyc2lvbiAwLjcyCi0tLS0tLS0tLS0tCiAgICAtIGZpeCBzZWN1cml0eSBleHBsb2l0OiBodHRwOi8vd3d3LnNlYy1jb25zdWx0LmNvbS8yMTYuaHRtbAogICAgClZlcnNpb24gMC43Ci0tLS0tLS0tLS0tCiAgICAtIHN1cHBvcnQgZm9yIGlucHV0IGFuZCBvdXRwdXQgY2hhcnNldCBlbmNvZGluZwogICAgICBiYXNlZCBvbiB0aGUgd29yayBpbiBGb0YsIHVzZXMgaWNvbnYgb3IgbWJzdHJpbmcgaWYgYXZhaWxhYmxlCiAgICAtCgpWZXJzaW9uIDAuNgotLS0tLS0tLS0tLQogICAgLSBiYXNpYyBzdXBwb3J0IGZvciBBdG9tIHN5bmRpY2F0aW9uIGZvcm1hdAogICAgICBpbmNsdWRpbmcgc3VwcG9ydCBmb3IgQXRvbSBjb250ZW50IGNvbnN0cnVjdHMKICAgIC0gZml4ZWQgc3VwcG9ydCBmb3IgcHJpdmF0ZSBmZWVkcyAoSFRUUCBBdXRoIGFuZCBTU0wpCiAgICAgICh0aGFua3MgdG8gc2lsdmVyb3JhbmdlLmNvbSBmb3IgcHJvdmlkaW5nIHRlc3QgZmVlZHMpCgktIHN1cHBvcnQgZm9yIHNvbWUgYnJva2VuIHdlYnNlcnZlcnMKClZlcnNpb24gMC41MgotLS0tLS0tLS0tLQogICAgLSBzdXBwb3J0IEdaSVAgY29udGVudCBuZWdvaWF0aW9uCiAgICAtIFBIUCA0LjMuMiBzdXBwb3J0CgpWZXJzaW9uIDAuNAotLS0tLS0tLS0tLQoJLSBpbXByb3ZlZCBlcnJvciBoYW5kbGluZywgYmV0dGVyIGFjY2VzcyBmb3Igc2NyaXB0IGF1dGhvcnMKCS0gaW5jbHVkZWQgZXhhbXBsZSBzY3JpcHRzIG9mIHdvcmtpbmcgd2l0aCBNYWdwaWVSU1MKCS0gbmV3IFNtYXJ0eSBwbHVnaW4gZm9yIFJTUyBkYXRlIHBhcnNpbmcKClZlcnNpb24gMC4zCi0tLS0tLS0tLS0tCgktIGFkZGVkIHN1cHBvcnQgZm9yIGNvbmRpdGlvbmFsIGdldHMgKExhc3QtTW9kaWZpZWQsIEVUYWcpCgktIG5vdyB1c2UgU25vb3B5IHRvIGhhbmRsZSBmZXRjaGluZyBSU1MgZmlsZXMKCQpWZXJzaW9uIDAuMgotLS0tLS0tLS0tLQoJLSBNQUpPUiBDTEVBTiBVUAoJLSByZW1vdmVkIGtsdWRneSAkb3B0aW9ucyBhcnJheSBpbiBmYXZvdXIgb2YgY29uc3RhbnRzCgktIHBoYXNlZCBvdXQgcmV0dXJuaW5nIGFycmF5cwoJLSBhZGRlZCBiZXR0ZXIgZXJyb3IgaGFuZGxpbmcKCS0gcmUtd29ya2VkIGNvbW1lbnRzCg==]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/cookbook</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[TUFHUElFUlNTIFJFQ0lQRVM6ICBDb29raW5nIHdpdGggQ29yYmllcwoKICAgICAgICAgIkZvdXIgYW5kIHR3ZW50eSBibGFja2JpcmRzIGJha2VkIGluIGEgcGllLiIKCjEuIExJTUlUIFRIRSBOVU1CRVIgT0YgSEVBRExJTkVTKEFLQSBJVEVNUykgUkVUVVJORUQuCgpQUk9CTEVNOgoKWW91IHdhbnQgdG8gZGlzcGxheSB0aGUgMTAgKG9yIDMpIG1vc3QgcmVjZW50IGhlYWRsaW5lcywgYnV0IHRoZSBSU1MgZmVlZApjb250YWlucyAxNS4KClNPTFVUSU9OOgoKJG51bV9pdGVtcyA9IDEwOwokcnNzID0gZmV0Y2hfcnNzKCR1cmwpOwoKJGl0ZW1zID0gYXJyYXlfc2xpY2UoJHJzcy0+aXRlbXMsIDAsICRudW1faXRlbXMpOwoKRElTQ1VTU0lPTjoKClJhdGhlciB0aGVuIHRyeWluZyB0byBsaW1pdCB0aGUgbnVtYmVyIG9mIGl0ZW1zIE1hZ3BpZSBwYXJzZXMsIGEgbXVjaCBzaW1wbGVyLAphbmQgbW9yZSBmbGV4aWJsZSBhcHByb2FjaCBpcyB0byB0YWtlIGEgInNsaWNlIiBvZiB0aGUgYXJyYXkgb2YgaXRlbXMuICBBbmQKYXJyYXlfc2xpY2UoKSBpcyBzbWFydCBlbm91Z2ggdG8gZG8gdGhlIHJpZ2h0IHRoaW5nIGlmIHRoZSBmZWVkIGhhcyBsZXNzIGl0ZW1zCnRoZW4gJG51bV9pdGVtcy4KClNlZTogaHR0cDovL3d3dy5waHAubmV0L2FycmF5X3NsaWNlCgoKMi4gRElTUExBWSBBIENVU1RPTSBFUlJPUiBNRVNTQUdFIElGIFNPTUVUSElORyBHT0VTIFdST05HCgpQUk9CTEVNOgoKWW91IGRvbid0IHdhbnQgTWFncGllJ3MgZXJyb3IgbWVzc2FnZXMgc2hvd2luZyB1cCBpZiBzb21ldGhpbmcgZ29lcyB3cm9uZy4KClNPTFVUSU9OOgoKIyBNYWdwaWUgdGhyb3dzIFVTRVJfV0FSTklOR1Mgb25seQojIHNvIHlvdSBjYW4gY2xvYWsgdGhlc2UsIGJ5IG9ubHkgc2hvd2luZyBFUlJPUnMKZXJyb3JfcmVwb3J0aW5nKEVfRVJST1IpOwoKIyBjaGVjayB0aGUgcmV0dXJuIHZhbHVlIG9mIGZldGNoX3JzcygpCgokcnNzID0gZmV0Y2hfcnNzKCR1cmwpOwoKaWYgKCAkcnNzICkgewouLi5kaXNwbGF5IHJzcyBmZWVkLi4uCn0KZWxzZSB7CgllY2hvICJBbiBlcnJvciBvY2N1cmVkISAgIiAuCgkgICAgICJDb25zaWRlciBkb25hdGluZyBtb3JlICQkJCBmb3IgcmVzdG9yYXRpb24gb2Ygc2VydmljZXMuIiAuCgkJICI8YnI+RXJyb3IgTWVzc2FnZTogIgkuIG1hZ3BpZV9lcnJvcigpOwp9CgpESVNDVVNTSU9OOgoKTWFncGllUlNTIHRyaWdnZXJzIGEgd2FybmluZyBpbiBhIG51bWJlciBvZiBjaXJjdW1zdGFuY2VzLiAgVGhlIDIgbW9zdCBjb21tb24KY2lyY3Vtc3RhbmNlcyBhcmU6ICBpZiB0aGUgc3BlY2lmaWVkIFJTUyBmaWxlIGlzbid0IHByb3Blcmx5IGZvcm1lZCAodXN1YWxseQpiZWNhdXNlIGl0IGluY2x1ZGVzIGlsbGVnYWwgSFRNTCksIG9yIGlmIE1hZ3BpZSBjYW4ndCBkb3dubG9hZCB0aGUgcmVtb3RlIFJTUwpmaWxlLCBhbmQgdGhlcmUgaXMgbm8gY2FjaGVkIHZlcnNpb24uICAKCklmIHlvdSBkb24ndCB3YW50IHlvdXIgdXNlcnMgdG8gc2VlIHRoZXNlIHdhcm5pbmdzIGNoYW5nZSB5b3VyIGVycm9yX3JlcG9ydGluZwpzZXR0aW5ncyB0byBvbmx5IGRpc3BsYXkgRVJST1JzLiAgQW5vdGhlciBvcHRpb24gaXMgdG8gdHVybiBvZmYgZGlzcGxheV9lcnJvciwKc28gdGhhdCBXQVJOSU5HcywgYW5kIE5PVElDRXMgc3RpbGwgZ28gdG8gdGhlIGVycm9yX2xvZyBidXQgbm90IHRvIHRoZSB3ZWJwYWdlcy4KCllvdSBjYW4gZG8gdGhpcyB3aXRoOgoKaW5pX3NldCgnZGlzcGxheV9lcnJvcnMnLCAwKTsKClNlZTogaHR0cDovL3d3dy5waHAubmV0L2Vycm9yX3JlcG9ydGluZywKICAgICBodHRwOi8vd3d3LnBocC5uZXQvaW5pX3NldCwgCgkgaHR0cDovL3d3dy5waHAubmV0L21hbnVhbC9lbi9yZWYuZXJyb3JmdW5jLnBocAoKMy4gR0VORVJBVEUgQSBORVcgUlNTIEZFRUQKClBST0JMRU06CgpDcmVhdGUgYW4gUlNTIGZlZWQgZm9yIG90aGVyIHBlb3BsZSB0byB1c2UuCgpTT0xVVElPTjoKClVzZSBVc2VmdWwgSW5jJ3MgUlNTV3JpdGVyIChodHRwOi8vdXNlZnVsaW5jLmNvbS9yc3MvcnNzd3JpdGVyLykKCkRJU0NVU1NJT046CgpBbiBleGFtcGxlIG9mIHR1cm5pbmcgYSBNYWdwaWUgcGFyc2VkIFJTUyBvYmplY3QgYmFjayBpbnRvIGFuIFJTUyBmaWxlIGlzIGZvcnRoCmNvbWluZy4gIEluIHRoZSBtZWFudGltZSBSU1NXcml0ZXIgaGFzIGdyZWF0IGRvY3VtZW50YXRpb24uCgo0LiBESVNQTEFZIEhFQURMSU5FUyBNT1JFIFJFQ0VOVCBUSEVOIFggREFURQoKUFJPQkxFTToKCllvdSBvbmx5IHdhbnQgdG8gZGlzcGxheSBoZWFkbGluZXMgdGhhdCB3ZXJlIHB1Ymxpc2hlZCBvbiwgb3IgYWZ0ZXIgYSBjZXJ0YWluCmRhdGUuCgoKU09MVVRJT046CgpyZXF1aXJlICdyc3NfdXRpbHMuaW5jJzsKCiMgZ2V0IGFsbCBoZWFkbGluZXMgcHVibGlzaGVkIHRvZGF5CiR0b2RheSA9IGdldGRhdGUoKTsKCiMgdG9kYXksIDEyQU0KJGRhdGUgPSBta3RpbWUoMCwwLDAsJHRvZGF5Wydtb24nXSwgJHRvZGF5WydtZGF5J10sICR0b2RheVsneWVhciddKTsKCiRyc3MgPSBmZXRjaF9yc3MoJHVybCk7Cgpmb3JlYWNoICggJHJzcy0+aXRlbXMgYXMgJGl0ZW0gKSB7CgkkcHVibGlzaGVkID0gcGFyc2VfdzNjZHRmKCRpdGVtWydkYyddWydkYXRlJ10pOwoJaWYgKCAkcHVibGlzaGVkID49ICRkYXRlICkgewoJCWVjaG8gIlRpdGxlOiAiIC4gJGl0ZW1bJ3RpdGxlJ107CgkJZWNobyAiUHVibGlzaGVkOiAiIC4gZGF0ZSgiaDppOnMgQSIsICRwdWJsaXNoZWQpOwoJCWVjaG8gIjxwPiI7Cgl9Cn0KCkRJU0NVU1NJT046CgpUaGlzIHJlY2lwZSBvbmx5IHdvcmtzIGZvciBSU1MgMS4wIGZlZWRzIHRoYXQgaW5jbHVkZSB0aGUgPGRjOmRhdGU+IGZpZWxkLgood2hpY2ggaXMgdmVyeSBnb29kIFJTUyBzdHlsZSkKCnBhcnNlX3czY2R0ZiBpcyBkZWZpbmVkIGluIHJzc191dGlscy5pbmMsIGFuZCBwYXJzZXMgUlNTIHN0eWxlIGRhdGVzIGludG8gVW5peAplcG9jaCBzZWNvbmRzLiAgCgpTZWU6IGh0dHA6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vcmVmLmRhdGV0aW1lLnBocAo=]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/extlib/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/magpierss/extlib/Snoopy.class.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCgpTbm9vcHkgLSB0aGUgUEhQIG5ldCBjbGllbnQKQXV0aG9yOiBNb250ZSBPaHJ0IDxtb250ZUBpc3BpLm5ldD4KQ29weXJpZ2h0IChjKTogMTk5OS0yMDAwIGlzcGksIGFsbCByaWdodHMgcmVzZXJ2ZWQKVmVyc2lvbjogMS4wCgogKiBUaGlzIGxpYnJhcnkgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKICogTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyCiAqIHZlcnNpb24gMi4xIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgogKgogKiBUaGlzIGxpYnJhcnkgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKICogTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYwogKiBMaWNlbnNlIGFsb25nIHdpdGggdGhpcyBsaWJyYXJ5OyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BICAwMjExMS0xMzA3ICBVU0EKCllvdSBtYXkgY29udGFjdCB0aGUgYXV0aG9yIG9mIFNub29weSBieSBlLW1haWwgYXQ6Cm1vbnRlQGlzcGkubmV0CgpPciwgd3JpdGUgdG86Ck1vbnRlIE9ocnQKQ1RPLCBpc3BpCjIzNyBTLiA3MHRoIHN1aXRlIDIyMApMaW5jb2xuLCBORSA2ODUxMAoKVGhlIGxhdGVzdCB2ZXJzaW9uIG9mIFNub29weSBjYW4gYmUgb2J0YWluZWQgZnJvbToKaHR0cDovL3Nub29weS5zb3VyY2Vmb3JnZS5jb20KCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCgpjbGFzcyBTbm9vcHkKewoJLyoqKiogUHVibGljIHZhcmlhYmxlcyAqKioqLwoJCgkvKiB1c2VyIGRlZmluYWJsZSB2YXJzICovCgoJdmFyICRob3N0CQkJPQkid3d3LnBocC5uZXQiOwkJLy8gaG9zdCBuYW1lIHdlIGFyZSBjb25uZWN0aW5nIHRvCgl2YXIgJHBvcnQJCQk9CTgwOwkJCQkJLy8gcG9ydCB3ZSBhcmUgY29ubmVjdGluZyB0bwoJdmFyICRwcm94eV9ob3N0CQk9CSIiOwkJCQkJLy8gcHJveHkgaG9zdCB0byB1c2UKCXZhciAkcHJveHlfcG9ydAkJPQkiIjsJCQkJCS8vIHByb3h5IHBvcnQgdG8gdXNlCgl2YXIgJGFnZW50CQkJPQkiU25vb3B5IHYxLjAiOwkJLy8gYWdlbnQgd2UgbWFzcXVlcmFkZSBhcwoJdmFyCSRyZWZlcmVyCQk9CSIiOwkJCQkJLy8gcmVmZXJlciBpbmZvIHRvIHBhc3MKCXZhciAkY29va2llcwkJPQlhcnJheSgpOwkJCS8vIGFycmF5IG9mIGNvb2tpZXMgdG8gcGFzcwoJCQkJCQkJCQkJCQkvLyAkY29va2llc1sidXNlcm5hbWUiXT0iam9lIjsKCXZhcgkkcmF3aGVhZGVycwkJPQlhcnJheSgpOwkJCS8vIGFycmF5IG9mIHJhdyBoZWFkZXJzIHRvIHNlbmQKCQkJCQkJCQkJCQkJLy8gJHJhd2hlYWRlcnNbIkNvbnRlbnQtdHlwZSJdPSJ0ZXh0L2h0bWwiOwoKCXZhciAkbWF4cmVkaXJzCQk9CTU7CQkJCQkvLyBodHRwIHJlZGlyZWN0aW9uIGRlcHRoIG1heGltdW0uIDAgPSBkaXNhbGxvdwoJdmFyICRsYXN0cmVkaXJlY3RhZGRyCT0JIiI7CQkJCS8vIGNvbnRhaW5zIGFkZHJlc3Mgb2YgbGFzdCByZWRpcmVjdGVkIGFkZHJlc3MKCXZhcgkkb2Zmc2l0ZW9rCQk9CXRydWU7CQkJCS8vIGFsbG93cyByZWRpcmVjdGlvbiBvZmYtc2l0ZQoJdmFyICRtYXhmcmFtZXMJCT0JMDsJCQkJCS8vIGZyYW1lIGNvbnRlbnQgZGVwdGggbWF4aW11bS4gMCA9IGRpc2FsbG93Cgl2YXIgJGV4cGFuZGxpbmtzCT0JdHJ1ZTsJCQkJLy8gZXhwYW5kIGxpbmtzIHRvIGZ1bGx5IHF1YWxpZmllZCBVUkxzLgoJCQkJCQkJCQkJCQkvLyB0aGlzIG9ubHkgYXBwbGllcyB0byBmZXRjaGxpbmtzKCkKCQkJCQkJCQkJCQkJLy8gb3Igc3VibWl0bGlua3MoKQoJdmFyICRwYXNzY29va2llcwk9CXRydWU7CQkJCS8vIHBhc3Mgc2V0IGNvb2tpZXMgYmFjayB0aHJvdWdoIHJlZGlyZWN0cwoJCQkJCQkJCQkJCQkvLyBOT1RFOiB0aGlzIGN1cnJlbnRseSBkb2VzIG5vdCByZXNwZWN0CgkJCQkJCQkJCQkJCS8vIGRhdGVzLCBkb21haW5zIG9yIHBhdGhzLgoJCgl2YXIJJHVzZXIJCQk9CSIiOwkJCQkJLy8gdXNlciBmb3IgaHR0cCBhdXRoZW50aWNhdGlvbgoJdmFyCSRwYXNzCQkJPQkiIjsJCQkJCS8vIHBhc3N3b3JkIGZvciBodHRwIGF1dGhlbnRpY2F0aW9uCgkKCS8vIGh0dHAgYWNjZXB0IHR5cGVzCgl2YXIgJGFjY2VwdAkJCT0JImltYWdlL2dpZiwgaW1hZ2UveC14Yml0bWFwLCBpbWFnZS9qcGVnLCBpbWFnZS9wanBlZywgKi8qIjsKCQoJdmFyICRyZXN1bHRzCQk9CSIiOwkJCQkJLy8gd2hlcmUgdGhlIGNvbnRlbnQgaXMgcHV0CgkJCgl2YXIgJGVycm9yCQkJPQkiIjsJCQkJCS8vIGVycm9yIG1lc3NhZ2VzIHNlbnQgaGVyZQoJdmFyCSRyZXNwb25zZV9jb2RlCT0JIiI7CQkJCQkvLyByZXNwb25zZSBjb2RlIHJldHVybmVkIGZyb20gc2VydmVyCgl2YXIJJGhlYWRlcnMJCT0JYXJyYXkoKTsJCQkvLyBoZWFkZXJzIHJldHVybmVkIGZyb20gc2VydmVyIHNlbnQgaGVyZQoJdmFyCSRtYXhsZW5ndGgJCT0JNTAwMDAwOwkJCQkvLyBtYXggcmV0dXJuIGRhdGEgbGVuZ3RoIChib2R5KQoJdmFyICRyZWFkX3RpbWVvdXQJPQkwOwkJCQkJLy8gdGltZW91dCBvbiByZWFkIG9wZXJhdGlvbnMsIGluIHNlY29uZHMKCQkJCQkJCQkJCQkJLy8gc3VwcG9ydGVkIG9ubHkgc2luY2UgUEhQIDQgQmV0YSA0CgkJCQkJCQkJCQkJCS8vIHNldCB0byAwIHRvIGRpc2FsbG93IHRpbWVvdXRzCgl2YXIgJHRpbWVkX291dAkJPQlmYWxzZTsJCQkJLy8gaWYgYSByZWFkIG9wZXJhdGlvbiB0aW1lZCBvdXQKCXZhcgkkc3RhdHVzCQkJPQkwOwkJCQkJLy8gaHR0cCByZXF1ZXN0IHN0YXR1cwoJCgl2YXIJJGN1cmxfcGF0aAkJPQkiL3Vzci9iaW4vY3VybCI7CgkJCQkJCQkJCQkJCS8vIFNub29weSB3aWxsIHVzZSBjVVJMIGZvciBmZXRjaGluZwoJCQkJCQkJCQkJCQkvLyBTU0wgY29udGVudCBpZiBhIGZ1bGwgc3lzdGVtIHBhdGggdG8KCQkJCQkJCQkJCQkJLy8gdGhlIGNVUkwgYmluYXJ5IGlzIHN1cHBsaWVkIGhlcmUuCgkJCQkJCQkJCQkJCS8vIHNldCB0byBmYWxzZSBpZiB5b3UgZG8gbm90IGhhdmUKCQkJCQkJCQkJCQkJLy8gY1VSTCBpbnN0YWxsZWQuIFNlZSBodHRwOi8vY3VybC5oYXh4LnNlCgkJCQkJCQkJCQkJCS8vIGZvciBkZXRhaWxzIG9uIGluc3RhbGxpbmcgY1VSTC4KCQkJCQkJCQkJCQkJLy8gU25vb3B5IGRvZXMgKm5vdCogdXNlIHRoZSBjVVJMCgkJCQkJCQkJCQkJCS8vIGxpYnJhcnkgZnVuY3Rpb25zIGJ1aWx0IGludG8gcGhwLAoJCQkJCQkJCQkJCQkvLyBhcyB0aGVzZSBmdW5jdGlvbnMgYXJlIG5vdCBzdGFibGUKCQkJCQkJCQkJCQkJLy8gYXMgb2YgdGhpcyBTbm9vcHkgcmVsZWFzZS4KCQoJLy8gc2VuZCBBY2NlcHQtZW5jb2Rpbmc6IGd6aXA/Cgl2YXIgJHVzZV9nemlwCQk9IHRydWU7CQoJCgkvKioqKiBQcml2YXRlIHZhcmlhYmxlcyAqKioqLwkKCQoJdmFyCSRfbWF4bGluZWxlbgk9CTQwOTY7CQkJCS8vIG1heCBsaW5lIGxlbmd0aCAoaGVhZGVycykKCQoJdmFyICRfaHR0cG1ldGhvZAk9CSJHRVQiOwkJCQkvLyBkZWZhdWx0IGh0dHAgcmVxdWVzdCBtZXRob2QKCXZhciAkX2h0dHB2ZXJzaW9uCT0JIkhUVFAvMS4wIjsJCQkvLyBkZWZhdWx0IGh0dHAgcmVxdWVzdCB2ZXJzaW9uCgl2YXIgJF9zdWJtaXRfbWV0aG9kCT0JIlBPU1QiOwkJCQkvLyBkZWZhdWx0IHN1Ym1pdCBtZXRob2QKCXZhciAkX3N1Ym1pdF90eXBlCT0JImFwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCI7CS8vIGRlZmF1bHQgc3VibWl0IHR5cGUKCXZhciAkX21pbWVfYm91bmRhcnkJPSAgICIiOwkJCQkJLy8gTUlNRSBib3VuZGFyeSBmb3IgbXVsdGlwYXJ0L2Zvcm0tZGF0YSBzdWJtaXQgdHlwZQoJdmFyICRfcmVkaXJlY3RhZGRyCT0JZmFsc2U7CQkJCS8vIHdpbGwgYmUgc2V0IGlmIHBhZ2UgZmV0Y2hlZCBpcyBhIHJlZGlyZWN0Cgl2YXIgJF9yZWRpcmVjdGRlcHRoCT0JMDsJCQkJCS8vIGluY3JlbWVudHMgb24gYW4gaHR0cCByZWRpcmVjdAoJdmFyICRfZnJhbWV1cmxzCQk9IAlhcnJheSgpOwkJCS8vIGZyYW1lIHNyYyB1cmxzCgl2YXIgJF9mcmFtZWRlcHRoCT0JMDsJCQkJCS8vIGluY3JlbWVudHMgb24gZnJhbWUgZGVwdGgKCQoJdmFyICRfaXNwcm94eQkJPQlmYWxzZTsJCQkJLy8gc2V0IGlmIHVzaW5nIGEgcHJveHkgc2VydmVyCgl2YXIgJF9mcF90aW1lb3V0CT0JMzA7CQkJCQkvLyB0aW1lb3V0IGZvciBzb2NrZXQgY29ubmVjdGlvbgoKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KlwKCUZ1bmN0aW9uOglmZXRjaAoJUHVycG9zZToJZmV0Y2ggdGhlIGNvbnRlbnRzIG9mIGEgd2ViIHBhZ2UKCQkJCShhbmQgcG9zc2libHkgb3RoZXIgcHJvdG9jb2xzIGluIHRoZQoJCQkJZnV0dXJlIGxpa2UgZnRwLCBubnRwLCBnb3BoZXIsIGV0Yy4pCglJbnB1dDoJCSRVUkkJdGhlIGxvY2F0aW9uIG9mIHRoZSBwYWdlIHRvIGZldGNoCglPdXRwdXQ6CQkkdGhpcy0+cmVzdWx0cwl0aGUgb3V0cHV0IHRleHQgZnJvbSB0aGUgZmV0Y2gKXCo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KCglmdW5jdGlvbiBmZXRjaCgkVVJJKQoJewoJCgkJLy9wcmVnX21hdGNoKCJ8XihbXjpdKyk6Ly8oW146L10rKSg6W1xkXSspKiguKil8IiwkVVJJLCRVUklfUEFSVFMpOwoJCSRVUklfUEFSVFMgPSBwYXJzZV91cmwoJFVSSSk7CgkJaWYgKCFlbXB0eSgkVVJJX1BBUlRTWyJ1c2VyIl0pKQoJCQkkdGhpcy0+dXNlciA9ICRVUklfUEFSVFNbInVzZXIiXTsKCQlpZiAoIWVtcHR5KCRVUklfUEFSVFNbInBhc3MiXSkpCgkJCSR0aGlzLT5wYXNzID0gJFVSSV9QQVJUU1sicGFzcyJdOwoJCQkJCgkJc3dpdGNoKCRVUklfUEFSVFNbInNjaGVtZSJdKQoJCXsKCQkJY2FzZSAiaHR0cCI6CgkJCQkkdGhpcy0+aG9zdCA9ICRVUklfUEFSVFNbImhvc3QiXTsKCQkJCWlmKCFlbXB0eSgkVVJJX1BBUlRTWyJwb3J0Il0pKQoJCQkJCSR0aGlzLT5wb3J0ID0gJFVSSV9QQVJUU1sicG9ydCJdOwoJCQkJaWYoJHRoaXMtPl9jb25uZWN0KCRmcCkpCgkJCQl7CgkJCQkJaWYoJHRoaXMtPl9pc3Byb3h5KQoJCQkJCXsKCQkJCQkJLy8gdXNpbmcgcHJveHksIHNlbmQgZW50aXJlIFVSSQoJCQkJCQkkdGhpcy0+X2h0dHByZXF1ZXN0KCRVUkksJGZwLCRVUkksJHRoaXMtPl9odHRwbWV0aG9kKTsKCQkJCQl9CgkJCQkJZWxzZQoJCQkJCXsKCQkJCQkJJHBhdGggPSAkVVJJX1BBUlRTWyJwYXRoIl0uKGlzc2V0KCRVUklfUEFSVFNbInF1ZXJ5Il0pID8gIj8iLiRVUklfUEFSVFNbInF1ZXJ5Il0gOiAiIik7CgkJCQkJCS8vIG5vIHByb3h5LCBzZW5kIG9ubHkgdGhlIHBhdGgKCQkJCQkJJHRoaXMtPl9odHRwcmVxdWVzdCgkcGF0aCwgJGZwLCAkVVJJLCAkdGhpcy0+X2h0dHBtZXRob2QpOwoJCQkJCX0KCQkJCQkKCQkJCQkkdGhpcy0+X2Rpc2Nvbm5lY3QoJGZwKTsKCgkJCQkJaWYoJHRoaXMtPl9yZWRpcmVjdGFkZHIpCgkJCQkJewoJCQkJCQkvKiB1cmwgd2FzIHJlZGlyZWN0ZWQsIGNoZWNrIGlmIHdlJ3ZlIGhpdCB0aGUgbWF4IGRlcHRoICovCgkJCQkJCWlmKCR0aGlzLT5tYXhyZWRpcnMgPiAkdGhpcy0+X3JlZGlyZWN0ZGVwdGgpCgkJCQkJCXsKCQkJCQkJCS8vIG9ubHkgZm9sbG93IHJlZGlyZWN0IGlmIGl0J3Mgb24gdGhpcyBzaXRlLCBvciBvZmZzaXRlb2sgaXMgdHJ1ZQoJCQkJCQkJaWYocHJlZ19tYXRjaCgifF5odHRwOi8vIi5wcmVnX3F1b3RlKCR0aGlzLT5ob3N0KS4ifGkiLCR0aGlzLT5fcmVkaXJlY3RhZGRyKSB8fCAkdGhpcy0+b2Zmc2l0ZW9rKQoJCQkJCQkJewoJCQkJCQkJCS8qIGZvbGxvdyB0aGUgcmVkaXJlY3QgKi8KCQkJCQkJCQkkdGhpcy0+X3JlZGlyZWN0ZGVwdGgrKzsKCQkJCQkJCQkkdGhpcy0+bGFzdHJlZGlyZWN0YWRkcj0kdGhpcy0+X3JlZGlyZWN0YWRkcjsKCQkJCQkJCQkkdGhpcy0+ZmV0Y2goJHRoaXMtPl9yZWRpcmVjdGFkZHIpOwoJCQkJCQkJfQoJCQkJCQl9CgkJCQkJfQoKCQkJCQlpZigkdGhpcy0+X2ZyYW1lZGVwdGggPCAkdGhpcy0+bWF4ZnJhbWVzICYmIGNvdW50KCR0aGlzLT5fZnJhbWV1cmxzKSA+IDApCgkJCQkJewoJCQkJCQkkZnJhbWV1cmxzID0gJHRoaXMtPl9mcmFtZXVybHM7CgkJCQkJCSR0aGlzLT5fZnJhbWV1cmxzID0gYXJyYXkoKTsKCQkJCQkJCgkJCQkJCXdoaWxlKGxpc3QoLCRmcmFtZXVybCkgPSBlYWNoKCRmcmFtZXVybHMpKQoJCQkJCQl7CgkJCQkJCQlpZigkdGhpcy0+X2ZyYW1lZGVwdGggPCAkdGhpcy0+bWF4ZnJhbWVzKQoJCQkJCQkJewoJCQkJCQkJCSR0aGlzLT5mZXRjaCgkZnJhbWV1cmwpOwoJCQkJCQkJCSR0aGlzLT5fZnJhbWVkZXB0aCsrOwoJCQkJCQkJfQoJCQkJCQkJZWxzZQoJCQkJCQkJCWJyZWFrOwoJCQkJCQl9CgkJCQkJfQkJCQkJCgkJCQl9CgkJCQllbHNlCgkJCQl7CgkJCQkJcmV0dXJuIGZhbHNlOwoJCQkJfQoJCQkJcmV0dXJuIHRydWU7CQkJCQkKCQkJCWJyZWFrOwoJCQljYXNlICJodHRwcyI6CgkJCQlpZighJHRoaXMtPmN1cmxfcGF0aCB8fCAoIWlzX2V4ZWN1dGFibGUoJHRoaXMtPmN1cmxfcGF0aCkpKSB7CgkJCQkJJHRoaXMtPmVycm9yID0gIkJhZCBjdXJsICgkdGhpcy0+Y3VybF9wYXRoKSwgY2FuJ3QgZmV0Y2ggSFRUUFMgXG4iOwoJCQkJCXJldHVybiBmYWxzZTsKCQkJCX0KCQkJCSR0aGlzLT5ob3N0ID0gJFVSSV9QQVJUU1siaG9zdCJdOwoJCQkJaWYoIWVtcHR5KCRVUklfUEFSVFNbInBvcnQiXSkpCgkJCQkJJHRoaXMtPnBvcnQgPSAkVVJJX1BBUlRTWyJwb3J0Il07CgkJCQlpZigkdGhpcy0+X2lzcHJveHkpCgkJCQl7CgkJCQkJLy8gdXNpbmcgcHJveHksIHNlbmQgZW50aXJlIFVSSQoJCQkJCSR0aGlzLT5faHR0cHNyZXF1ZXN0KCRVUkksJFVSSSwkdGhpcy0+X2h0dHBtZXRob2QpOwoJCQkJfQoJCQkJZWxzZQoJCQkJewoJCQkJCSRwYXRoID0gJFVSSV9QQVJUU1sicGF0aCJdLigkVVJJX1BBUlRTWyJxdWVyeSJdID8gIj8iLiRVUklfUEFSVFNbInF1ZXJ5Il0gOiAiIik7CgkJCQkJLy8gbm8gcHJveHksIHNlbmQgb25seSB0aGUgcGF0aAoJCQkJCSR0aGlzLT5faHR0cHNyZXF1ZXN0KCRwYXRoLCAkVVJJLCAkdGhpcy0+X2h0dHBtZXRob2QpOwoJCQkJfQoKCQkJCWlmKCR0aGlzLT5fcmVkaXJlY3RhZGRyKQoJCQkJewoJCQkJCS8qIHVybCB3YXMgcmVkaXJlY3RlZCwgY2hlY2sgaWYgd2UndmUgaGl0IHRoZSBtYXggZGVwdGggKi8KCQkJCQlpZigkdGhpcy0+bWF4cmVkaXJzID4gJHRoaXMtPl9yZWRpcmVjdGRlcHRoKQoJCQkJCXsKCQkJCQkJLy8gb25seSBmb2xsb3cgcmVkaXJlY3QgaWYgaXQncyBvbiB0aGlzIHNpdGUsIG9yIG9mZnNpdGVvayBpcyB0cnVlCgkJCQkJCWlmKHByZWdfbWF0Y2goInxeaHR0cDovLyIucHJlZ19xdW90ZSgkdGhpcy0+aG9zdCkuInxpIiwkdGhpcy0+X3JlZGlyZWN0YWRkcikgfHwgJHRoaXMtPm9mZnNpdGVvaykKCQkJCQkJewoJCQkJCQkJLyogZm9sbG93IHRoZSByZWRpcmVjdCAqLwoJCQkJCQkJJHRoaXMtPl9yZWRpcmVjdGRlcHRoKys7CgkJCQkJCQkkdGhpcy0+bGFzdHJlZGlyZWN0YWRkcj0kdGhpcy0+X3JlZGlyZWN0YWRkcjsKCQkJCQkJCSR0aGlzLT5mZXRjaCgkdGhpcy0+X3JlZGlyZWN0YWRkcik7CgkJCQkJCX0KCQkJCQl9CgkJCQl9CgoJCQkJaWYoJHRoaXMtPl9mcmFtZWRlcHRoIDwgJHRoaXMtPm1heGZyYW1lcyAmJiBjb3VudCgkdGhpcy0+X2ZyYW1ldXJscykgPiAwKQoJCQkJewoJCQkJCSRmcmFtZXVybHMgPSAkdGhpcy0+X2ZyYW1ldXJsczsKCQkJCQkkdGhpcy0+X2ZyYW1ldXJscyA9IGFycmF5KCk7CgoJCQkJCXdoaWxlKGxpc3QoLCRmcmFtZXVybCkgPSBlYWNoKCRmcmFtZXVybHMpKQoJCQkJCXsKCQkJCQkJaWYoJHRoaXMtPl9mcmFtZWRlcHRoIDwgJHRoaXMtPm1heGZyYW1lcykKCQkJCQkJewoJCQkJCQkJJHRoaXMtPmZldGNoKCRmcmFtZXVybCk7CgkJCQkJCQkkdGhpcy0+X2ZyYW1lZGVwdGgrKzsKCQkJCQkJfQoJCQkJCQllbHNlCgkJCQkJCQlicmVhazsKCQkJCQl9CgkJCQl9CQkJCQkKCQkJCXJldHVybiB0cnVlOwkJCQkJCgkJCQlicmVhazsKCQkJZGVmYXVsdDoKCQkJCS8vIG5vdCBhIHZhbGlkIHByb3RvY29sCgkJCQkkdGhpcy0+ZXJyb3IJPQknSW52YWxpZCBwcm90b2NvbCAiJy4kVVJJX1BBUlRTWyJzY2hlbWUiXS4nIlxuJzsKCQkJCXJldHVybiBmYWxzZTsKCQkJCWJyZWFrOwoJCX0JCQoJCXJldHVybiB0cnVlOwoJfQoKCgovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qXAoJUHJpdmF0ZSBmdW5jdGlvbnMKXCo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KCQoJCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCglGdW5jdGlvbjoJX3N0cmlwbGlua3MKCVB1cnBvc2U6CXN0cmlwIHRoZSBoeXBlcmxpbmtzIGZyb20gYW4gaHRtbCBkb2N1bWVudAoJSW5wdXQ6CQkkZG9jdW1lbnQJZG9jdW1lbnQgdG8gc3RyaXAuCglPdXRwdXQ6CQkkbWF0Y2gJCWFuIGFycmF5IG9mIHRoZSBsaW5rcwpcKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwoKCWZ1bmN0aW9uIF9zdHJpcGxpbmtzKCRkb2N1bWVudCkKCXsJCgkJcHJlZ19tYXRjaF9hbGwoIic8XHMqYVxzKy4qaHJlZlxzKj1ccyoJCQkjIGZpbmQgPGEgaHJlZj0KCQkJCQkJKFtcIlwnXSk/CQkJCQkjIGZpbmQgc2luZ2xlIG9yIGRvdWJsZSBxdW90ZQoJCQkJCQkoPygxKSAoLio/KVxcMSB8IChbXlxzXD5dKykpCQkjIGlmIHF1b3RlIGZvdW5kLCBtYXRjaCB1cCB0byBuZXh0IG1hdGNoaW5nCgkJCQkJCQkJCQkJCQkjIHF1b3RlLCBvdGhlcndpc2UgbWF0Y2ggdXAgdG8gbmV4dCBzcGFjZQoJCQkJCQknaXN4IiwkZG9jdW1lbnQsJGxpbmtzKTsKCQkJCQkJCgoJCS8vIGNhdGVuYXRlIHRoZSBub24tZW1wdHkgbWF0Y2hlcyBmcm9tIHRoZSBjb25kaXRpb25hbCBzdWJwYXR0ZXJuCgoJCXdoaWxlKGxpc3QoJGtleSwkdmFsKSA9IGVhY2goJGxpbmtzWzJdKSkKCQl7CgkJCWlmKCFlbXB0eSgkdmFsKSkKCQkJCSRtYXRjaFtdID0gJHZhbDsKCQl9CQkJCQoJCQoJCXdoaWxlKGxpc3QoJGtleSwkdmFsKSA9IGVhY2goJGxpbmtzWzNdKSkKCQl7CgkJCWlmKCFlbXB0eSgkdmFsKSkKCQkJCSRtYXRjaFtdID0gJHZhbDsKCQl9CQkKCQkKCQkvLyByZXR1cm4gdGhlIGxpbmtzCgkJcmV0dXJuICRtYXRjaDsKCX0KCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCglGdW5jdGlvbjoJX3N0cmlwZm9ybQoJUHVycG9zZToJc3RyaXAgdGhlIGZvcm0gZWxlbWVudHMgZnJvbSBhbiBodG1sIGRvY3VtZW50CglJbnB1dDoJCSRkb2N1bWVudAlkb2N1bWVudCB0byBzdHJpcC4KCU91dHB1dDoJCSRtYXRjaAkJYW4gYXJyYXkgb2YgdGhlIGxpbmtzClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCgoJZnVuY3Rpb24gX3N0cmlwZm9ybSgkZG9jdW1lbnQpCgl7CQoJCXByZWdfbWF0Y2hfYWxsKCInPFwvPyhGT1JNfElOUFVUfFNFTEVDVHxURVhUQVJFQXwoT1BUSU9OKSlbXjw+XSo+KD8oMikoLiooPz08XC8/KG9wdGlvbnxzZWxlY3QpW148Pl0qPltcclxuXSopfCg/PVtcclxuXSopKXwoPz1bXHJcbl0qKSknVXNpIiwkZG9jdW1lbnQsJGVsZW1lbnRzKTsKCQkKCQkvLyBjYXRlbmF0ZSB0aGUgbWF0Y2hlcwoJCSRtYXRjaCA9IGltcGxvZGUoIlxyXG4iLCRlbGVtZW50c1swXSk7CgkJCQkKCQkvLyByZXR1cm4gdGhlIGxpbmtzCgkJcmV0dXJuICRtYXRjaDsKCX0KCgkKCQovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qXAoJRnVuY3Rpb246CV9zdHJpcHRleHQKCVB1cnBvc2U6CXN0cmlwIHRoZSB0ZXh0IGZyb20gYW4gaHRtbCBkb2N1bWVudAoJSW5wdXQ6CQkkZG9jdW1lbnQJZG9jdW1lbnQgdG8gc3RyaXAuCglPdXRwdXQ6CQkkdGV4dAkJdGhlIHJlc3VsdGluZyB0ZXh0ClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCgoJZnVuY3Rpb24gX3N0cmlwdGV4dCgkZG9jdW1lbnQpCgl7CgkJCgkJLy8gSSBkaWRuJ3QgdXNlIHByZWcgZXZhbCAoLy9lKSBzaW5jZSB0aGF0IGlzIG9ubHkgYXZhaWxhYmxlIGluIFBIUCA0LjAuCgkJLy8gc28sIGxpc3QgeW91ciBlbnRpdGllcyBvbmUgYnkgb25lIGhlcmUuIEkgaW5jbHVkZWQgc29tZSBvZiB0aGUKCQkvLyBtb3JlIGNvbW1vbiBvbmVzLgoJCQkJCQkJCQoJCSRzZWFyY2ggPSBhcnJheSgiJzxzY3JpcHRbXj5dKj8+Lio/PC9zY3JpcHQ+J3NpIiwJLy8gc3RyaXAgb3V0IGphdmFzY3JpcHQKCQkJCQkJIic8W1wvXCFdKj9bXjw+XSo/PidzaSIsCQkJLy8gc3RyaXAgb3V0IGh0bWwgdGFncwoJCQkJCQkiJyhbXHJcbl0pW1xzXSsnIiwJCQkJCS8vIHN0cmlwIG91dCB3aGl0ZSBzcGFjZQoJCQkJCQkiJyYocXVvdGV8IzM0KTsnaSIsCQkJCQkvLyByZXBsYWNlIGh0bWwgZW50aXRpZXMKCQkJCQkJIicmKGFtcHwjMzgpOydpIiwKCQkJCQkJIicmKGx0fCM2MCk7J2kiLAoJCQkJCQkiJyYoZ3R8IzYyKTsnaSIsCgkJCQkJCSInJihuYnNwfCMxNjApOydpIiwKCQkJCQkJIicmKGlleGNsfCMxNjEpOydpIiwKCQkJCQkJIicmKGNlbnR8IzE2Mik7J2kiLAoJCQkJCQkiJyYocG91bmR8IzE2Myk7J2kiLAoJCQkJCQkiJyYoY29weXwjMTY5KTsnaSIKCQkJCQkJKTsJCQkJCgkJJHJlcGxhY2UgPSBhcnJheSgJIiIsCgkJCQkJCQkiIiwKCQkJCQkJCSJcXDEiLAoJCQkJCQkJIlwiIiwKCQkJCQkJCSImIiwKCQkJCQkJCSI8IiwKCQkJCQkJCSI+IiwKCQkJCQkJCSIgIiwKCQkJCQkJCWNocigxNjEpLAoJCQkJCQkJY2hyKDE2MiksCgkJCQkJCQljaHIoMTYzKSwKCQkJCQkJCWNocigxNjkpKTsKCQkJCQkKCQkkdGV4dCA9IHByZWdfcmVwbGFjZSgkc2VhcmNoLCRyZXBsYWNlLCRkb2N1bWVudCk7CgkJCQkJCQkJCgkJcmV0dXJuICR0ZXh0OwoJfQoKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KlwKCUZ1bmN0aW9uOglfZXhwYW5kbGlua3MKCVB1cnBvc2U6CWV4cGFuZCBlYWNoIGxpbmsgaW50byBhIGZ1bGx5IHF1YWxpZmllZCBVUkwKCUlucHV0OgkJJGxpbmtzCQkJdGhlIGxpbmtzIHRvIHF1YWxpZnkKCQkJCSRVUkkJCQl0aGUgZnVsbCBVUkkgdG8gZ2V0IHRoZSBiYXNlIGZyb20KCU91dHB1dDoJCSRleHBhbmRlZExpbmtzCXRoZSBleHBhbmRlZCBsaW5rcwpcKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwoKCWZ1bmN0aW9uIF9leHBhbmRsaW5rcygkbGlua3MsJFVSSSkKCXsKCQkKCQlwcmVnX21hdGNoKCIvXlteXD9dKy8iLCRVUkksJG1hdGNoKTsKCgkJJG1hdGNoID0gcHJlZ19yZXBsYWNlKCJ8L1teXC9cLl0rXC5bXlwvXC5dKyR8IiwiIiwkbWF0Y2hbMF0pOwoJCQkJCgkJJHNlYXJjaCA9IGFycmF5KCAJInxeaHR0cDovLyIucHJlZ19xdW90ZSgkdGhpcy0+aG9zdCkuInxpIiwKCQkJCQkJCSJ8Xig/IWh0dHA6Ly8pKFwvKT8oPyFtYWlsdG86KXxpIiwKCQkJCQkJCSJ8L1wuL3wiLAoJCQkJCQkJInwvW15cL10rL1wuXC4vfCIKCQkJCQkJKTsKCQkJCQkJCgkJJHJlcGxhY2UgPSBhcnJheSgJIiIsCgkJCQkJCQkkbWF0Y2guIi8iLAoJCQkJCQkJIi8iLAoJCQkJCQkJIi8iCgkJCQkJCSk7CQkJCgkJCQkKCQkkZXhwYW5kZWRMaW5rcyA9IHByZWdfcmVwbGFjZSgkc2VhcmNoLCRyZXBsYWNlLCRsaW5rcyk7CgoJCXJldHVybiAkZXhwYW5kZWRMaW5rczsKCX0KCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCglGdW5jdGlvbjoJX2h0dHByZXF1ZXN0CglQdXJwb3NlOglnbyBnZXQgdGhlIGh0dHAgZGF0YSBmcm9tIHRoZSBzZXJ2ZXIKCUlucHV0OgkJJHVybAkJdGhlIHVybCB0byBmZXRjaAoJCQkJJGZwCQkJdGhlIGN1cnJlbnQgb3BlbiBmaWxlIHBvaW50ZXIKCQkJCSRVUkkJCXRoZSBmdWxsIFVSSQoJCQkJJGJvZHkJCWJvZHkgY29udGVudHMgdG8gc2VuZCBpZiBhbnkgKFBPU1QpCglPdXRwdXQ6CQkKXCo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KCQoJZnVuY3Rpb24gX2h0dHByZXF1ZXN0KCR1cmwsJGZwLCRVUkksJGh0dHBfbWV0aG9kLCRjb250ZW50X3R5cGU9IiIsJGJvZHk9IiIpCgl7CgkJaWYoJHRoaXMtPnBhc3Njb29raWVzICYmICR0aGlzLT5fcmVkaXJlY3RhZGRyKQoJCQkkdGhpcy0+c2V0Y29va2llcygpOwoJCQkKCQkkVVJJX1BBUlRTID0gcGFyc2VfdXJsKCRVUkkpOwoJCWlmKGVtcHR5KCR1cmwpKQoJCQkkdXJsID0gIi8iOwoJCSRoZWFkZXJzID0gJGh0dHBfbWV0aG9kLiIgIi4kdXJsLiIgIi4kdGhpcy0+X2h0dHB2ZXJzaW9uLiJcclxuIjsJCQoJCWlmKCFlbXB0eSgkdGhpcy0+YWdlbnQpKQoJCQkkaGVhZGVycyAuPSAiVXNlci1BZ2VudDogIi4kdGhpcy0+YWdlbnQuIlxyXG4iOwoJCWlmKCFlbXB0eSgkdGhpcy0+aG9zdCkgJiYgIWlzc2V0KCR0aGlzLT5yYXdoZWFkZXJzWydIb3N0J10pKQoJCQkkaGVhZGVycyAuPSAiSG9zdDogIi4kdGhpcy0+aG9zdC4iXHJcbiI7CgkJaWYoIWVtcHR5KCR0aGlzLT5hY2NlcHQpKQoJCQkkaGVhZGVycyAuPSAiQWNjZXB0OiAiLiR0aGlzLT5hY2NlcHQuIlxyXG4iOwoJCQoJCWlmKCR0aGlzLT51c2VfZ3ppcCkgewoJCQkvLyBtYWtlIHN1cmUgUEhQIHdhcyBidWlsdCB3aXRoIC0td2l0aC16bGliCgkJCS8vIGFuZCB3ZSBjYW4gaGFuZGxlIGd6aXBwJ2VkIGRhdGEKCQkJaWYgKCBmdW5jdGlvbl9leGlzdHMoZ3ppbmZsYXRlKSApIHsKCQkJICAgJGhlYWRlcnMgLj0gIkFjY2VwdC1lbmNvZGluZzogZ3ppcFxyXG4iOwoJCQl9CgkJCWVsc2UgewoJCQkgICB0cmlnZ2VyX2Vycm9yKAoJCQkgICAJInVzZV9nemlwIGlzIG9uLCBidXQgUEhQIHdhcyBidWlsdCB3aXRob3V0IHpsaWIgc3VwcG9ydC4iLgoJCQkJIiAgUmVxdWVzdGluZyBmaWxlKHMpIHdpdGhvdXQgZ3ppcCBlbmNvZGluZy4iLCAKCQkJCUVfVVNFUl9OT1RJQ0UpOwoJCQl9CgkJfQoJCQoJCWlmKCFlbXB0eSgkdGhpcy0+cmVmZXJlcikpCgkJCSRoZWFkZXJzIC49ICJSZWZlcmVyOiAiLiR0aGlzLT5yZWZlcmVyLiJcclxuIjsKCQlpZighZW1wdHkoJHRoaXMtPmNvb2tpZXMpKQoJCXsJCQkKCQkJaWYoIWlzX2FycmF5KCR0aGlzLT5jb29raWVzKSkKCQkJCSR0aGlzLT5jb29raWVzID0gKGFycmF5KSR0aGlzLT5jb29raWVzOwoJCgkJCXJlc2V0KCR0aGlzLT5jb29raWVzKTsKCQkJaWYgKCBjb3VudCgkdGhpcy0+Y29va2llcykgPiAwICkgewoJCQkJJGNvb2tpZV9oZWFkZXJzIC49ICdDb29raWU6ICc7CgkJCQlmb3JlYWNoICggJHRoaXMtPmNvb2tpZXMgYXMgJGNvb2tpZUtleSA9PiAkY29va2llVmFsICkgewoJCQkJJGNvb2tpZV9oZWFkZXJzIC49ICRjb29raWVLZXkuIj0iLnVybGVuY29kZSgkY29va2llVmFsKS4iOyAiOwoJCQkJfQoJCQkJJGhlYWRlcnMgLj0gc3Vic3RyKCRjb29raWVfaGVhZGVycywwLC0yKSAuICJcclxuIjsKCQkJfSAKCQl9CgkJaWYoIWVtcHR5KCR0aGlzLT5yYXdoZWFkZXJzKSkKCQl7CgkJCWlmKCFpc19hcnJheSgkdGhpcy0+cmF3aGVhZGVycykpCgkJCQkkdGhpcy0+cmF3aGVhZGVycyA9IChhcnJheSkkdGhpcy0+cmF3aGVhZGVyczsKCQkJd2hpbGUobGlzdCgkaGVhZGVyS2V5LCRoZWFkZXJWYWwpID0gZWFjaCgkdGhpcy0+cmF3aGVhZGVycykpCgkJCQkkaGVhZGVycyAuPSAkaGVhZGVyS2V5LiI6ICIuJGhlYWRlclZhbC4iXHJcbiI7CgkJfQoJCWlmKCFlbXB0eSgkY29udGVudF90eXBlKSkgewoJCQkkaGVhZGVycyAuPSAiQ29udGVudC10eXBlOiAkY29udGVudF90eXBlIjsKCQkJaWYgKCRjb250ZW50X3R5cGUgPT0gIm11bHRpcGFydC9mb3JtLWRhdGEiKQoJCQkJJGhlYWRlcnMgLj0gIjsgYm91bmRhcnk9Ii4kdGhpcy0+X21pbWVfYm91bmRhcnk7CgkJCSRoZWFkZXJzIC49ICJcclxuIjsKCQl9CgkJaWYoIWVtcHR5KCRib2R5KSkJCgkJCSRoZWFkZXJzIC49ICJDb250ZW50LWxlbmd0aDogIi5zdHJsZW4oJGJvZHkpLiJcclxuIjsKCQlpZighZW1wdHkoJHRoaXMtPnVzZXIpIHx8ICFlbXB0eSgkdGhpcy0+cGFzcykpCQoJCQkkaGVhZGVycyAuPSAiQXV0aG9yaXphdGlvbjogQkFTSUMgIi5iYXNlNjRfZW5jb2RlKCR0aGlzLT51c2VyLiI6Ii4kdGhpcy0+cGFzcykuIlxyXG4iOwoKCQkkaGVhZGVycyAuPSAiXHJcbiI7CgkJCgkJLy8gc2V0IHRoZSByZWFkIHRpbWVvdXQgaWYgbmVlZGVkCgkJaWYgKCR0aGlzLT5yZWFkX3RpbWVvdXQgPiAwKQoJCQlzb2NrZXRfc2V0X3RpbWVvdXQoJGZwLCAkdGhpcy0+cmVhZF90aW1lb3V0KTsKCQkkdGhpcy0+dGltZWRfb3V0ID0gZmFsc2U7CgkJCgkJZndyaXRlKCRmcCwkaGVhZGVycy4kYm9keSxzdHJsZW4oJGhlYWRlcnMuJGJvZHkpKTsKCQkKCQkkdGhpcy0+X3JlZGlyZWN0YWRkciA9IGZhbHNlOwoJCXVuc2V0KCR0aGlzLT5oZWFkZXJzKTsKCQkKCQkvLyBjb250ZW50IHdhcyByZXR1cm5lZCBnemlwIGVuY29kZWQ/CgkJJGlzX2d6aXBwZWQgPSBmYWxzZTsKCQkJCQkJCgkJd2hpbGUoJGN1cnJlbnRIZWFkZXIgPSBmZ2V0cygkZnAsJHRoaXMtPl9tYXhsaW5lbGVuKSkKCQl7CgkJCWlmICgkdGhpcy0+cmVhZF90aW1lb3V0ID4gMCAmJiAkdGhpcy0+X2NoZWNrX3RpbWVvdXQoJGZwKSkKCQkJewoJCQkJJHRoaXMtPnN0YXR1cz0tMTAwOwoJCQkJcmV0dXJuIGZhbHNlOwoJCQl9CgkJCQkKCQkvLwlpZigkY3VycmVudEhlYWRlciA9PSAiXHJcbiIpCgkJCWlmKHByZWdfbWF0Y2goIi9eXHI/XG4kLyIsICRjdXJyZW50SGVhZGVyKSApCgkJCSAgICAgIGJyZWFrOwoJCQkJCQkKCQkJLy8gaWYgYSBoZWFkZXIgYmVnaW5zIHdpdGggTG9jYXRpb246IG9yIFVSSTosIHNldCB0aGUgcmVkaXJlY3QKCQkJaWYocHJlZ19tYXRjaCgiL14oTG9jYXRpb246fFVSSTopL2kiLCRjdXJyZW50SGVhZGVyKSkKCQkJewoJCQkJLy8gZ2V0IFVSTCBwb3J0aW9uIG9mIHRoZSByZWRpcmVjdAoJCQkJcHJlZ19tYXRjaCgiL14oTG9jYXRpb246fFVSSTopXHMrKC4qKS8iLGNob3AoJGN1cnJlbnRIZWFkZXIpLCRtYXRjaGVzKTsKCQkJCS8vIGxvb2sgZm9yIDovLyBpbiB0aGUgTG9jYXRpb24gaGVhZGVyIHRvIHNlZSBpZiBob3N0bmFtZSBpcyBpbmNsdWRlZAoJCQkJaWYoIXByZWdfbWF0Y2goInxcOlwvXC98IiwkbWF0Y2hlc1syXSkpCgkJCQl7CgkJCQkJLy8gbm8gaG9zdCBpbiB0aGUgcGF0aCwgc28gcHJlcGVuZAoJCQkJCSR0aGlzLT5fcmVkaXJlY3RhZGRyID0gJFVSSV9QQVJUU1sic2NoZW1lIl0uIjovLyIuJHRoaXMtPmhvc3QuIjoiLiR0aGlzLT5wb3J0OwoJCQkJCS8vIGVsaW1pbmF0ZSBkb3VibGUgc2xhc2gKCQkJCQlpZighcHJlZ19tYXRjaCgifF4vfCIsJG1hdGNoZXNbMl0pKQoJCQkJCQkJJHRoaXMtPl9yZWRpcmVjdGFkZHIgLj0gIi8iLiRtYXRjaGVzWzJdOwoJCQkJCWVsc2UKCQkJCQkJCSR0aGlzLT5fcmVkaXJlY3RhZGRyIC49ICRtYXRjaGVzWzJdOwoJCQkJfQoJCQkJZWxzZQoJCQkJCSR0aGlzLT5fcmVkaXJlY3RhZGRyID0gJG1hdGNoZXNbMl07CgkJCX0KCQkKCQkJaWYocHJlZ19tYXRjaCgifF5IVFRQL3wiLCRjdXJyZW50SGVhZGVyKSkKCQkJewogICAgICAgICAgICAgICAgaWYocHJlZ19tYXRjaCgifF5IVFRQL1teXHNdKlxzKC4qPylcc3wiLCRjdXJyZW50SGVhZGVyLCAkc3RhdHVzKSkKCQkJCXsKCQkJCQkkdGhpcy0+c3RhdHVzPSAkc3RhdHVzWzFdOwogICAgICAgICAgICAgICAgfQkJCQkKCQkJCSR0aGlzLT5yZXNwb25zZV9jb2RlID0gJGN1cnJlbnRIZWFkZXI7CgkJCX0KCQkJCgkJCWlmIChwcmVnX21hdGNoKCIvQ29udGVudC1FbmNvZGluZzogZ3ppcC8iLCAkY3VycmVudEhlYWRlcikgKSB7CgkJCQkkaXNfZ3ppcHBlZCA9IHRydWU7CgkJCX0KCQkJCgkJCSR0aGlzLT5oZWFkZXJzW10gPSAkY3VycmVudEhlYWRlcjsKCQl9CgoJCSMgJHJlc3VsdHMgPSBmcmVhZCgkZnAsICR0aGlzLT5tYXhsZW5ndGgpOwoJCSRyZXN1bHRzID0gIiI7CgkJd2hpbGUgKCAkZGF0YSA9IGZyZWFkKCRmcCwgJHRoaXMtPm1heGxlbmd0aCkgKSB7CgkJICAgICRyZXN1bHRzIC49ICRkYXRhOwoJCSAgICBpZiAoCgkJICAgICAgICBzdHJsZW4oJHJlc3VsdHMpID4gJHRoaXMtPm1heGxlbmd0aCApIHsKCQkgICAgICAgIGJyZWFrOwoJCSAgICB9CgkJfQoJCQoJCS8vIGd1bnppcAoJCWlmICggJGlzX2d6aXBwZWQgKSB7CgkJCS8vIHBlciBodHRwOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL2Z1bmN0aW9uLmd6ZW5jb2RlLnBocAoJCQkkcmVzdWx0cyA9IHN1YnN0cigkcmVzdWx0cywgMTApOwoJCQkkcmVzdWx0cyA9IGd6aW5mbGF0ZSgkcmVzdWx0cyk7CgkJfQoJCQoJCWlmICgkdGhpcy0+cmVhZF90aW1lb3V0ID4gMCAmJiAkdGhpcy0+X2NoZWNrX3RpbWVvdXQoJGZwKSkKCQl7CgkJCSR0aGlzLT5zdGF0dXM9LTEwMDsKCQkJcmV0dXJuIGZhbHNlOwoJCX0KCQkKCQkvLyBjaGVjayBpZiB0aGVyZSBpcyBhIGEgcmVkaXJlY3QgbWV0YSB0YWcKCQkKCQlpZihwcmVnX21hdGNoKCInPG1ldGFbXHNdKmh0dHAtZXF1aXZbXj5dKj9jb250ZW50W1xzXSo9W1xzXSpbXCJcJ10/XGQrO1tcc10rVVJMW1xzXSo9W1xzXSooW15cIlwnXSo/KVtcIlwnXT8+J2kiLCRyZXN1bHRzLCRtYXRjaCkpCgkJewoJCQkkdGhpcy0+X3JlZGlyZWN0YWRkciA9ICR0aGlzLT5fZXhwYW5kbGlua3MoJG1hdGNoWzFdLCRVUkkpOwkKCQl9CgoJCS8vIGhhdmUgd2UgaGl0IG91ciBmcmFtZSBkZXB0aCBhbmQgaXMgdGhlcmUgZnJhbWUgc3JjIHRvIGZldGNoPwoJCWlmKCgkdGhpcy0+X2ZyYW1lZGVwdGggPCAkdGhpcy0+bWF4ZnJhbWVzKSAmJiBwcmVnX21hdGNoX2FsbCgiJzxmcmFtZVxzKy4qc3JjW1xzXSo9W1wnXCJdPyhbXlwnXCJcPl0rKSdpIiwkcmVzdWx0cywkbWF0Y2gpKQoJCXsKCQkJJHRoaXMtPnJlc3VsdHNbXSA9ICRyZXN1bHRzOwoJCQlmb3IoJHg9MDsgJHg8Y291bnQoJG1hdGNoWzFdKTsgJHgrKykKCQkJCSR0aGlzLT5fZnJhbWV1cmxzW10gPSAkdGhpcy0+X2V4cGFuZGxpbmtzKCRtYXRjaFsxXVskeF0sJFVSSV9QQVJUU1sic2NoZW1lIl0uIjovLyIuJHRoaXMtPmhvc3QpOwoJCX0KCQkvLyBoYXZlIHdlIGFscmVhZHkgZmV0Y2hlZCBmcmFtZWQgY29udGVudD8KCQllbHNlaWYoaXNfYXJyYXkoJHRoaXMtPnJlc3VsdHMpKQoJCQkkdGhpcy0+cmVzdWx0c1tdID0gJHJlc3VsdHM7CgkJLy8gbm8gZnJhbWVkIGNvbnRlbnQKCQllbHNlCgkJCSR0aGlzLT5yZXN1bHRzID0gJHJlc3VsdHM7CgkJCgkJcmV0dXJuIHRydWU7Cgl9CgovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qXAoJRnVuY3Rpb246CV9odHRwc3JlcXVlc3QKCVB1cnBvc2U6CWdvIGdldCB0aGUgaHR0cHMgZGF0YSBmcm9tIHRoZSBzZXJ2ZXIgdXNpbmcgY3VybAoJSW5wdXQ6CQkkdXJsCQl0aGUgdXJsIHRvIGZldGNoCgkJCQkkVVJJCQl0aGUgZnVsbCBVUkkKCQkJCSRib2R5CQlib2R5IGNvbnRlbnRzIHRvIHNlbmQgaWYgYW55IChQT1NUKQoJT3V0cHV0OgkJClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCgkKCWZ1bmN0aW9uIF9odHRwc3JlcXVlc3QoJHVybCwkVVJJLCRodHRwX21ldGhvZCwkY29udGVudF90eXBlPSIiLCRib2R5PSIiKQoJewoJCWlmKCR0aGlzLT5wYXNzY29va2llcyAmJiAkdGhpcy0+X3JlZGlyZWN0YWRkcikKCQkJJHRoaXMtPnNldGNvb2tpZXMoKTsKCgkJJGhlYWRlcnMgPSBhcnJheSgpOwkJCgkJCQkJCgkJJFVSSV9QQVJUUyA9IHBhcnNlX3VybCgkVVJJKTsKCQlpZihlbXB0eSgkdXJsKSkKCQkJJHVybCA9ICIvIjsKCQkvLyBHRVQgLi4uIGhlYWRlciBub3QgbmVlZGVkIGZvciBjdXJsCgkJLy8kaGVhZGVyc1tdID0gJGh0dHBfbWV0aG9kLiIgIi4kdXJsLiIgIi4kdGhpcy0+X2h0dHB2ZXJzaW9uOwkJCgkJaWYoIWVtcHR5KCR0aGlzLT5hZ2VudCkpCgkJCSRoZWFkZXJzW10gPSAiVXNlci1BZ2VudDogIi4kdGhpcy0+YWdlbnQ7CgkJaWYoIWVtcHR5KCR0aGlzLT5ob3N0KSkKCQkJJGhlYWRlcnNbXSA9ICJIb3N0OiAiLiR0aGlzLT5ob3N0OwoJCWlmKCFlbXB0eSgkdGhpcy0+YWNjZXB0KSkKCQkJJGhlYWRlcnNbXSA9ICJBY2NlcHQ6ICIuJHRoaXMtPmFjY2VwdDsKCQlpZighZW1wdHkoJHRoaXMtPnJlZmVyZXIpKQoJCQkkaGVhZGVyc1tdID0gIlJlZmVyZXI6ICIuJHRoaXMtPnJlZmVyZXI7CgkJaWYoIWVtcHR5KCR0aGlzLT5jb29raWVzKSkKCQl7CQkJCgkJCWlmKCFpc19hcnJheSgkdGhpcy0+Y29va2llcykpCgkJCQkkdGhpcy0+Y29va2llcyA9IChhcnJheSkkdGhpcy0+Y29va2llczsKCQoJCQlyZXNldCgkdGhpcy0+Y29va2llcyk7CgkJCWlmICggY291bnQoJHRoaXMtPmNvb2tpZXMpID4gMCApIHsKCQkJCSRjb29raWVfc3RyID0gJ0Nvb2tpZTogJzsKCQkJCWZvcmVhY2ggKCAkdGhpcy0+Y29va2llcyBhcyAkY29va2llS2V5ID0+ICRjb29raWVWYWwgKSB7CgkJCQkkY29va2llX3N0ciAuPSAkY29va2llS2V5LiI9Ii51cmxlbmNvZGUoJGNvb2tpZVZhbCkuIjsgIjsKCQkJCX0KCQkJCSRoZWFkZXJzW10gPSBzdWJzdHIoJGNvb2tpZV9zdHIsMCwtMik7CgkJCX0KCQl9CgkJaWYoIWVtcHR5KCR0aGlzLT5yYXdoZWFkZXJzKSkKCQl7CgkJCWlmKCFpc19hcnJheSgkdGhpcy0+cmF3aGVhZGVycykpCgkJCQkkdGhpcy0+cmF3aGVhZGVycyA9IChhcnJheSkkdGhpcy0+cmF3aGVhZGVyczsKCQkJd2hpbGUobGlzdCgkaGVhZGVyS2V5LCRoZWFkZXJWYWwpID0gZWFjaCgkdGhpcy0+cmF3aGVhZGVycykpCgkJCQkkaGVhZGVyc1tdID0gJGhlYWRlcktleS4iOiAiLiRoZWFkZXJWYWw7CgkJfQoJCWlmKCFlbXB0eSgkY29udGVudF90eXBlKSkgewoJCQlpZiAoJGNvbnRlbnRfdHlwZSA9PSAibXVsdGlwYXJ0L2Zvcm0tZGF0YSIpCgkJCQkkaGVhZGVyc1tdID0gIkNvbnRlbnQtdHlwZTogJGNvbnRlbnRfdHlwZTsgYm91bmRhcnk9Ii4kdGhpcy0+X21pbWVfYm91bmRhcnk7CgkJCWVsc2UKCQkJCSRoZWFkZXJzW10gPSAiQ29udGVudC10eXBlOiAkY29udGVudF90eXBlIjsKCQl9CgkJaWYoIWVtcHR5KCRib2R5KSkJCgkJCSRoZWFkZXJzW10gPSAiQ29udGVudC1sZW5ndGg6ICIuc3RybGVuKCRib2R5KTsKCQlpZighZW1wdHkoJHRoaXMtPnVzZXIpIHx8ICFlbXB0eSgkdGhpcy0+cGFzcykpCQoJCQkkaGVhZGVyc1tdID0gIkF1dGhvcml6YXRpb246IEJBU0lDICIuYmFzZTY0X2VuY29kZSgkdGhpcy0+dXNlci4iOiIuJHRoaXMtPnBhc3MpOwoJCQkKCQlmb3IoJGN1cnJfaGVhZGVyID0gMDsgJGN1cnJfaGVhZGVyIDwgY291bnQoJGhlYWRlcnMpOyAkY3Vycl9oZWFkZXIrKykgewoJCQkkY21kbGluZV9wYXJhbXMgLj0gIiAtSCBcIiIuJGhlYWRlcnNbJGN1cnJfaGVhZGVyXS4iXCIiOwoJCX0KCQkJICAJICAgICAgICAgICAgICAgICAgICAgICAgIAoJCWlmKCFlbXB0eSgkYm9keSkpCgkJCSRjbWRsaW5lX3BhcmFtcyAuPSAiIC1kIFwiJGJvZHlcIiI7CgkJCgkJaWYoJHRoaXMtPnJlYWRfdGltZW91dCA+IDApCgkJCSRjbWRsaW5lX3BhcmFtcyAuPSAiIC1tICIuJHRoaXMtPnJlYWRfdGltZW91dDsKCQkKCQkkaGVhZGVyZmlsZSA9IHVuaXFpZCh0aW1lKCkpOwoJCQoJCSMgYWNjZXB0IHNlbGYtc2lnbmVkIGNlcnRzCgkJJGNtZGxpbmVfcGFyYW1zIC49ICIgLWsiOyAKCQlleGVjKCR0aGlzLT5jdXJsX3BhdGguIiAtRCBcIi90bXAvJGhlYWRlcmZpbGVcIiIuZXNjYXBlc2hlbGxjbWQoJGNtZGxpbmVfcGFyYW1zKS4iICIuZXNjYXBlc2hlbGxjbWQoJFVSSSksJHJlc3VsdHMsJHJldHVybik7CgkJCgkJaWYoJHJldHVybikKCQl7CgkJCSR0aGlzLT5lcnJvciA9ICJFcnJvcjogY1VSTCBjb3VsZCBub3QgcmV0cmlldmUgdGhlIGRvY3VtZW50LCBlcnJvciAkcmV0dXJuLiI7CgkJCXJldHVybiBmYWxzZTsKCQl9CgkJCQoJCQkKCQkkcmVzdWx0cyA9IGltcGxvZGUoIlxyXG4iLCRyZXN1bHRzKTsKCQkKCQkkcmVzdWx0X2hlYWRlcnMgPSBmaWxlKCIvdG1wLyRoZWFkZXJmaWxlIik7CgkJCQkJCQoJCSR0aGlzLT5fcmVkaXJlY3RhZGRyID0gZmFsc2U7CgkJdW5zZXQoJHRoaXMtPmhlYWRlcnMpOwoJCQkJCQkKCQlmb3IoJGN1cnJlbnRIZWFkZXIgPSAwOyAkY3VycmVudEhlYWRlciA8IGNvdW50KCRyZXN1bHRfaGVhZGVycyk7ICRjdXJyZW50SGVhZGVyKyspCgkJewoJCQkKCQkJLy8gaWYgYSBoZWFkZXIgYmVnaW5zIHdpdGggTG9jYXRpb246IG9yIFVSSTosIHNldCB0aGUgcmVkaXJlY3QKCQkJaWYocHJlZ19tYXRjaCgiL14oTG9jYXRpb246IHxVUkk6ICkvaSIsJHJlc3VsdF9oZWFkZXJzWyRjdXJyZW50SGVhZGVyXSkpCgkJCXsKCQkJCS8vIGdldCBVUkwgcG9ydGlvbiBvZiB0aGUgcmVkaXJlY3QKCQkJCXByZWdfbWF0Y2goIi9eKExvY2F0aW9uOiB8VVJJOikoLiopLyIsY2hvcCgkcmVzdWx0X2hlYWRlcnNbJGN1cnJlbnRIZWFkZXJdKSwkbWF0Y2hlcyk7CgkJCQkvLyBsb29rIGZvciA6Ly8gaW4gdGhlIExvY2F0aW9uIGhlYWRlciB0byBzZWUgaWYgaG9zdG5hbWUgaXMgaW5jbHVkZWQKCQkJCWlmKCFwcmVnX21hdGNoKCJ8XDpcL1wvfCIsJG1hdGNoZXNbMl0pKQoJCQkJewoJCQkJCS8vIG5vIGhvc3QgaW4gdGhlIHBhdGgsIHNvIHByZXBlbmQKCQkJCQkkdGhpcy0+X3JlZGlyZWN0YWRkciA9ICRVUklfUEFSVFNbInNjaGVtZSJdLiI6Ly8iLiR0aGlzLT5ob3N0LiI6Ii4kdGhpcy0+cG9ydDsKCQkJCQkvLyBlbGltaW5hdGUgZG91YmxlIHNsYXNoCgkJCQkJaWYoIXByZWdfbWF0Y2goInxeL3wiLCRtYXRjaGVzWzJdKSkKCQkJCQkJCSR0aGlzLT5fcmVkaXJlY3RhZGRyIC49ICIvIi4kbWF0Y2hlc1syXTsKCQkJCQllbHNlCgkJCQkJCQkkdGhpcy0+X3JlZGlyZWN0YWRkciAuPSAkbWF0Y2hlc1syXTsKCQkJCX0KCQkJCWVsc2UKCQkJCQkkdGhpcy0+X3JlZGlyZWN0YWRkciA9ICRtYXRjaGVzWzJdOwoJCQl9CgkJCgkJCWlmKHByZWdfbWF0Y2goInxeSFRUUC98IiwkcmVzdWx0X2hlYWRlcnNbJGN1cnJlbnRIZWFkZXJdKSkKCQkJewoJCQkgICAgJHRoaXMtPnJlc3BvbnNlX2NvZGUgPSAkcmVzdWx0X2hlYWRlcnNbJGN1cnJlbnRIZWFkZXJdOwoJCQkgICAgaWYocHJlZ19tYXRjaCgifF5IVFRQL1teXHNdKlxzKC4qPylcc3wiLCR0aGlzLT5yZXNwb25zZV9jb2RlLCAkbWF0Y2gpKQoJCQkgICAgewoJCQkJJHRoaXMtPnN0YXR1cz0gJG1hdGNoWzFdOwogICAgICAgICAgICAgICAgCSAgICB9CgkJCX0KCQkJJHRoaXMtPmhlYWRlcnNbXSA9ICRyZXN1bHRfaGVhZGVyc1skY3VycmVudEhlYWRlcl07CgkJfQoKCQkvLyBjaGVjayBpZiB0aGVyZSBpcyBhIGEgcmVkaXJlY3QgbWV0YSB0YWcKCQkKCQlpZihwcmVnX21hdGNoKCInPG1ldGFbXHNdKmh0dHAtZXF1aXZbXj5dKj9jb250ZW50W1xzXSo9W1xzXSpbXCJcJ10/XGQrO1tcc10rVVJMW1xzXSo9W1xzXSooW15cIlwnXSo/KVtcIlwnXT8+J2kiLCRyZXN1bHRzLCRtYXRjaCkpCgkJewoJCQkkdGhpcy0+X3JlZGlyZWN0YWRkciA9ICR0aGlzLT5fZXhwYW5kbGlua3MoJG1hdGNoWzFdLCRVUkkpOwkKCQl9CgoJCS8vIGhhdmUgd2UgaGl0IG91ciBmcmFtZSBkZXB0aCBhbmQgaXMgdGhlcmUgZnJhbWUgc3JjIHRvIGZldGNoPwoJCWlmKCgkdGhpcy0+X2ZyYW1lZGVwdGggPCAkdGhpcy0+bWF4ZnJhbWVzKSAmJiBwcmVnX21hdGNoX2FsbCgiJzxmcmFtZVxzKy4qc3JjW1xzXSo9W1wnXCJdPyhbXlwnXCJcPl0rKSdpIiwkcmVzdWx0cywkbWF0Y2gpKQoJCXsKCQkJJHRoaXMtPnJlc3VsdHNbXSA9ICRyZXN1bHRzOwoJCQlmb3IoJHg9MDsgJHg8Y291bnQoJG1hdGNoWzFdKTsgJHgrKykKCQkJCSR0aGlzLT5fZnJhbWV1cmxzW10gPSAkdGhpcy0+X2V4cGFuZGxpbmtzKCRtYXRjaFsxXVskeF0sJFVSSV9QQVJUU1sic2NoZW1lIl0uIjovLyIuJHRoaXMtPmhvc3QpOwoJCX0KCQkvLyBoYXZlIHdlIGFscmVhZHkgZmV0Y2hlZCBmcmFtZWQgY29udGVudD8KCQllbHNlaWYoaXNfYXJyYXkoJHRoaXMtPnJlc3VsdHMpKQoJCQkkdGhpcy0+cmVzdWx0c1tdID0gJHJlc3VsdHM7CgkJLy8gbm8gZnJhbWVkIGNvbnRlbnQKCQllbHNlCgkJCSR0aGlzLT5yZXN1bHRzID0gJHJlc3VsdHM7CgoJCXVubGluaygiL3RtcC8kaGVhZGVyZmlsZSIpOwoJCQoJCXJldHVybiB0cnVlOwoJfQoKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KlwKCUZ1bmN0aW9uOglzZXRjb29raWVzKCkKCVB1cnBvc2U6CXNldCBjb29raWVzIGZvciBhIHJlZGlyZWN0aW9uClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCgkKCWZ1bmN0aW9uIHNldGNvb2tpZXMoKQoJewoJCWZvcigkeD0wOyAkeDxjb3VudCgkdGhpcy0+aGVhZGVycyk7ICR4KyspCgkJewoJCWlmKHByZWdfbWF0Y2goIi9ec2V0LWNvb2tpZTpbXHNdKyhbXj1dKyk9KFteO10rKS9pIiwgJHRoaXMtPmhlYWRlcnNbJHhdLCRtYXRjaCkpCgkJCSR0aGlzLT5jb29raWVzWyRtYXRjaFsxXV0gPSAkbWF0Y2hbMl07CgkJfQoJfQoKCQovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qXAoJRnVuY3Rpb246CV9jaGVja190aW1lb3V0CglQdXJwb3NlOgljaGVja3Mgd2hldGhlciB0aW1lb3V0IGhhcyBvY2N1cnJlZAoJSW5wdXQ6CQkkZnAJZmlsZSBwb2ludGVyClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCgoJZnVuY3Rpb24gX2NoZWNrX3RpbWVvdXQoJGZwKQoJewoJCWlmICgkdGhpcy0+cmVhZF90aW1lb3V0ID4gMCkgewoJCQkkZnBfc3RhdHVzID0gc29ja2V0X2dldF9zdGF0dXMoJGZwKTsKCQkJaWYgKCRmcF9zdGF0dXNbInRpbWVkX291dCJdKSB7CgkJCQkkdGhpcy0+dGltZWRfb3V0ID0gdHJ1ZTsKCQkJCXJldHVybiB0cnVlOwoJCQl9CgkJfQoJCXJldHVybiBmYWxzZTsKCX0KCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCglGdW5jdGlvbjoJX2Nvbm5lY3QKCVB1cnBvc2U6CW1ha2UgYSBzb2NrZXQgY29ubmVjdGlvbgoJSW5wdXQ6CQkkZnAJZmlsZSBwb2ludGVyClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCgkKCWZ1bmN0aW9uIF9jb25uZWN0KCYkZnApCgl7CgkJaWYoIWVtcHR5KCR0aGlzLT5wcm94eV9ob3N0KSAmJiAhZW1wdHkoJHRoaXMtPnByb3h5X3BvcnQpKQoJCQl7CgkJCQkkdGhpcy0+X2lzcHJveHkgPSB0cnVlOwoJCQkJJGhvc3QgPSAkdGhpcy0+cHJveHlfaG9zdDsKCQkJCSRwb3J0ID0gJHRoaXMtPnByb3h5X3BvcnQ7CgkJCX0KCQllbHNlCgkJewoJCQkkaG9zdCA9ICR0aGlzLT5ob3N0OwoJCQkkcG9ydCA9ICR0aGlzLT5wb3J0OwoJCX0KCQoJCSR0aGlzLT5zdGF0dXMgPSAwOwoJCQoJCWlmKCRmcCA9IGZzb2Nrb3BlbigKCQkJCQkkaG9zdCwKCQkJCQkkcG9ydCwKCQkJCQkkZXJybm8sCgkJCQkJJGVycnN0ciwKCQkJCQkkdGhpcy0+X2ZwX3RpbWVvdXQKCQkJCQkpKQoJCXsKCQkJLy8gc29ja2V0IGNvbm5lY3Rpb24gc3VjY2VlZGVkCgoJCQlyZXR1cm4gdHJ1ZTsKCQl9CgkJZWxzZQoJCXsKCQkJLy8gc29ja2V0IGNvbm5lY3Rpb24gZmFpbGVkCgkJCSR0aGlzLT5zdGF0dXMgPSAkZXJybm87CgkJCXN3aXRjaCgkZXJybm8pCgkJCXsKCQkJCWNhc2UgLTM6CgkJCQkJJHRoaXMtPmVycm9yPSJzb2NrZXQgY3JlYXRpb24gZmFpbGVkICgtMykiOwoJCQkJY2FzZSAtNDoKCQkJCQkkdGhpcy0+ZXJyb3I9ImRucyBsb29rdXAgZmFpbHVyZSAoLTQpIjsKCQkJCWNhc2UgLTU6CgkJCQkJJHRoaXMtPmVycm9yPSJjb25uZWN0aW9uIHJlZnVzZWQgb3IgdGltZWQgb3V0ICgtNSkiOwoJCQkJZGVmYXVsdDoKCQkJCQkkdGhpcy0+ZXJyb3I9ImNvbm5lY3Rpb24gZmFpbGVkICgiLiRlcnJuby4iKSI7CgkJCX0KCQkJcmV0dXJuIGZhbHNlOwoJCX0KCX0KLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KlwKCUZ1bmN0aW9uOglfZGlzY29ubmVjdAoJUHVycG9zZToJZGlzY29ubmVjdCBhIHNvY2tldCBjb25uZWN0aW9uCglJbnB1dDoJCSRmcAlmaWxlIHBvaW50ZXIKXCo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KCQoJZnVuY3Rpb24gX2Rpc2Nvbm5lY3QoJGZwKQoJewoJCXJldHVybihmY2xvc2UoJGZwKSk7Cgl9CgoJCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCglGdW5jdGlvbjoJX3ByZXBhcmVfcG9zdF9ib2R5CglQdXJwb3NlOglQcmVwYXJlIHBvc3QgYm9keSBhY2NvcmRpbmcgdG8gZW5jb2RpbmcgdHlwZQoJSW5wdXQ6CQkkZm9ybXZhcnMgIC0gZm9ybSB2YXJpYWJsZXMKCQkJCSRmb3JtZmlsZXMgLSBmb3JtIHVwbG9hZCBmaWxlcwoJT3V0cHV0OgkJcG9zdCBib2R5ClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCgkKCWZ1bmN0aW9uIF9wcmVwYXJlX3Bvc3RfYm9keSgkZm9ybXZhcnMsICRmb3JtZmlsZXMpCgl7CgkJc2V0dHlwZSgkZm9ybXZhcnMsICJhcnJheSIpOwoJCXNldHR5cGUoJGZvcm1maWxlcywgImFycmF5Iik7CgoJCWlmIChjb3VudCgkZm9ybXZhcnMpID09IDAgJiYgY291bnQoJGZvcm1maWxlcykgPT0gMCkKCQkJcmV0dXJuOwoJCQoJCXN3aXRjaCAoJHRoaXMtPl9zdWJtaXRfdHlwZSkgewoJCQljYXNlICJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQiOgoJCQkJcmVzZXQoJGZvcm12YXJzKTsKCQkJCXdoaWxlKGxpc3QoJGtleSwkdmFsKSA9IGVhY2goJGZvcm12YXJzKSkgewoJCQkJCWlmIChpc19hcnJheSgkdmFsKSB8fCBpc19vYmplY3QoJHZhbCkpIHsKCQkJCQkJd2hpbGUgKGxpc3QoJGN1cl9rZXksICRjdXJfdmFsKSA9IGVhY2goJHZhbCkpIHsKCQkJCQkJCSRwb3N0ZGF0YSAuPSB1cmxlbmNvZGUoJGtleSkuIltdPSIudXJsZW5jb2RlKCRjdXJfdmFsKS4iJiI7CgkJCQkJCX0KCQkJCQl9IGVsc2UKCQkJCQkJJHBvc3RkYXRhIC49IHVybGVuY29kZSgka2V5KS4iPSIudXJsZW5jb2RlKCR2YWwpLiImIjsKCQkJCX0KCQkJCWJyZWFrOwoKCQkJY2FzZSAibXVsdGlwYXJ0L2Zvcm0tZGF0YSI6CgkJCQkkdGhpcy0+X21pbWVfYm91bmRhcnkgPSAiU25vb3B5Ii5tZDUodW5pcWlkKG1pY3JvdGltZSgpKSk7CgkJCQkKCQkJCXJlc2V0KCRmb3JtdmFycyk7CgkJCQl3aGlsZShsaXN0KCRrZXksJHZhbCkgPSBlYWNoKCRmb3JtdmFycykpIHsKCQkJCQlpZiAoaXNfYXJyYXkoJHZhbCkgfHwgaXNfb2JqZWN0KCR2YWwpKSB7CgkJCQkJCXdoaWxlIChsaXN0KCRjdXJfa2V5LCAkY3VyX3ZhbCkgPSBlYWNoKCR2YWwpKSB7CgkJCQkJCQkkcG9zdGRhdGEgLj0gIi0tIi4kdGhpcy0+X21pbWVfYm91bmRhcnkuIlxyXG4iOwoJCQkJCQkJJHBvc3RkYXRhIC49ICJDb250ZW50LURpc3Bvc2l0aW9uOiBmb3JtLWRhdGE7IG5hbWU9XCIka2V5XFtcXVwiXHJcblxyXG4iOwoJCQkJCQkJJHBvc3RkYXRhIC49ICIkY3VyX3ZhbFxyXG4iOwoJCQkJCQl9CgkJCQkJfSBlbHNlIHsKCQkJCQkJJHBvc3RkYXRhIC49ICItLSIuJHRoaXMtPl9taW1lX2JvdW5kYXJ5LiJcclxuIjsKCQkJCQkJJHBvc3RkYXRhIC49ICJDb250ZW50LURpc3Bvc2l0aW9uOiBmb3JtLWRhdGE7IG5hbWU9XCIka2V5XCJcclxuXHJcbiI7CgkJCQkJCSRwb3N0ZGF0YSAuPSAiJHZhbFxyXG4iOwoJCQkJCX0KCQkJCX0KCQkJCQoJCQkJcmVzZXQoJGZvcm1maWxlcyk7CgkJCQl3aGlsZSAobGlzdCgkZmllbGRfbmFtZSwgJGZpbGVfbmFtZXMpID0gZWFjaCgkZm9ybWZpbGVzKSkgewoJCQkJCXNldHR5cGUoJGZpbGVfbmFtZXMsICJhcnJheSIpOwoJCQkJCXdoaWxlIChsaXN0KCwgJGZpbGVfbmFtZSkgPSBlYWNoKCRmaWxlX25hbWVzKSkgewoJCQkJCQlpZiAoIWlzX3JlYWRhYmxlKCRmaWxlX25hbWUpKSBjb250aW51ZTsKCgkJCQkJCSRmcCA9IGZvcGVuKCRmaWxlX25hbWUsICJyIik7CgkJCQkJCSRmaWxlX2NvbnRlbnQgPSBmcmVhZCgkZnAsIGZpbGVzaXplKCRmaWxlX25hbWUpKTsKCQkJCQkJZmNsb3NlKCRmcCk7CgkJCQkJCSRiYXNlX25hbWUgPSBiYXNlbmFtZSgkZmlsZV9uYW1lKTsKCgkJCQkJCSRwb3N0ZGF0YSAuPSAiLS0iLiR0aGlzLT5fbWltZV9ib3VuZGFyeS4iXHJcbiI7CgkJCQkJCSRwb3N0ZGF0YSAuPSAiQ29udGVudC1EaXNwb3NpdGlvbjogZm9ybS1kYXRhOyBuYW1lPVwiJGZpZWxkX25hbWVcIjsgZmlsZW5hbWU9XCIkYmFzZV9uYW1lXCJcclxuXHJcbiI7CgkJCQkJCSRwb3N0ZGF0YSAuPSAiJGZpbGVfY29udGVudFxyXG4iOwoJCQkJCX0KCQkJCX0KCQkJCSRwb3N0ZGF0YSAuPSAiLS0iLiR0aGlzLT5fbWltZV9ib3VuZGFyeS4iLS1cclxuIjsKCQkJCWJyZWFrOwoJCX0KCgkJcmV0dXJuICRwb3N0ZGF0YTsKCX0KfQoKPz4K]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/htdocs/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/magpierss/htdocs/cookbook.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGh0bWw+Cgk8aGVhZD4KCTx0aXRsZT5NYWdpZSBSU1MgUmVjaXBlczogIFNpbXBsZSBQSFAgUlNTIEhvdyBUbzwvdGl0bGU+Cgk8c3R5bGU+Cglib2R5IHsKCQlmb250LWZhbWlseTp0cmVidWNoZXQgTVMsIHRyZWJ1Y2hldCwgdmVyZGFuYSwgYXJpYWwsIHNhbnMtc2VyaWY7IAoJCWZvbnQtc2l6ZTogMTFweDsgCgkKCX0KCQoJcHJlIHsgZm9udC1mYW1pbHk6ICJDb3VyaWVyIE5ldyIsIG1vbm9zcGFjZTsgCiAgICAgIHBhZGRpbmc6IDFlbTsgCiAgICAgIG1hcmdpbjogMC4yZW0gMi41ZW0gMC4yZW0gM2VtOwogICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmY1OwogICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2ZjZmNmOwogICAgICB3aGl0ZS1zcGFjZTogcHJlOwogCX0KCgk8L3N0eWxlPgoJPC9oZWFkPgoJPGJvZHk+CjxwPgo8aDE+TWFncGllUlNTIFJlY2lwZXM6ICBDb29raW5nIHdpdGggQ29yYmllczwvaDE+Cgo8ZGl2IGFsaWduPSJjZW50ZXIiPjxoMz48ZW0+IkZvdXIgYW5kIHR3ZW50eSBibGFja2JpcmRzIGJha2VkIGluIGEKcGllLiI8L2VtPjwvaDM+PC9kaXY+CjwvcD4KPHA+CjxvbD4KPGxpPjxhIGhyZWY9IiNsaW1pdCI+TGltaXQgdGhlIE51bWJlciBvZiBIZWFkbGluZXMoYWthIEl0ZW1zKSBSZXR1cm5lZDwvYT48L2xpPgo8bGk+PGEgaHJlZj0iI2Vycm9yX21lc3NhZ2UiPkRpc3BsYXkgYSBDdXN0b20gRXJyb3IgTWVzc2FnZSBpZiBTb21ldGhpbmcgR29lcwpXcm9uZzwvYT48L2xpPgo8bGk+PGEgaHJlZj0iI3dyaXRlX3JzcyI+R2VuZXJhdGUgYSBOZXcgUlNTIEZlZWQ8L2E+PC9saT4KPGxpPjxhIGhyZWY9IiNieV9kYXRlIj5EaXNwbGF5IEhlYWRsaW5lcyBNb3JlIFJlY2VudCB0aGVuIFggRGF0ZTwvYT48L2xpPgo8bGk+PGEgaHJlZj0iI2Zyb21fZmlsZSI+UGFyc2UgYSBMb2NhbCBGaWxlIENvbnRhaW5pbmcgUlNTPC9hPjwvbGk+Cgo8L29sPgo8L3A+Cgo8YSBuYW1lPSJsaW1pdCI+PC9hPjxoMj4xLiBMaW1pdCB0aGUgTnVtYmVyIG9mIEhlYWRsaW5lcyhha2EgSXRlbXMpIFJldHVybmVkLjwvaDI+Cgo8aDM+UHJvYmxlbTo8L2gzPgoKWW91IHdhbnQgdG8gZGlzcGxheSB0aGUgMTAgKG9yIDMgb3Igd2hhdGV2ZXIpIG1vc3QgcmVjZW50IGhlYWRsaW5lcywgYnV0IHRoZSBSU1MgZmVlZApjb250YWlucyAxNS4KCjxoMz5Tb2x1dGlvbjo8L2gzPgoKPHByZT4KJG51bV9pdGVtcyA9IDEwOwokcnNzID0gZmV0Y2hfcnNzKCR1cmwpOwoKJGl0ZW1zID0gYXJyYXlfc2xpY2UoJHJzcy0+aXRlbXMsIDAsICRudW1faXRlbXMpOwoKZm9yZWFjaCAoICRpdGVtcyBhcyAkaXRlbSApIHsKPC9wcmU+CjxoMz5EaXNjdXNzaW9uOjwvaDM+CgpSYXRoZXIgdGhlbiB0cnlpbmcgdG8gbGltaXQgdGhlIG51bWJlciBvZiBpdGVtcyBNYWdwaWUgcGFyc2VzLCBhIG11Y2ggc2ltcGxlciwKYW5kIG1vcmUgZmxleGlibGUgYXBwcm9hY2ggaXMgdG8gdGFrZSBhICJzbGljZSIgb2YgdGhlIGFycmF5IG9mIGl0ZW1zLiAgQW5kCmFycmF5X3NsaWNlKCkgaXMgc21hcnQgZW5vdWdoIHRvIGRvIHRoZSByaWdodCB0aGluZyBpZiB0aGUgZmVlZCBoYXMgbGVzcyBpdGVtcwp0aGVuICRudW1faXRlbXMuCgo8aDM+U2VlOjwvaDM+IDxhIGhyZWY9Imh0dHA6Ly93d3cucGhwLm5ldC9hcnJheV9zbGljZSI+aHR0cDovL3d3dy5waHAubmV0L2FycmF5X3NsaWNlPC9hPgo8L3A+Cgo8YSBuYW1lPSJlcnJvcl9tZXNzYWdlIj48L2E+PGgyPjIuIERpc3BsYXkgYSBDdXN0b20gRXJyb3IgTWVzc2FnZSBpZiBTb21ldGhpbmcgR29lcyBXcm9uZzwvaDI+Cgo8aDM+UHJvYmxlbTo8L2gzPgoKWW91IGRvbid0IHdhbnQgTWFncGllJ3MgZXJyb3IgbWVzc2FnZXMgc2hvd2luZyB1cCBpZiBzb21ldGhpbmcgZ29lcyB3cm9uZy4KCjxoMz5Tb2x1dGlvbjo8L2gzPgo8cHJlPgojIE1hZ3BpZSB0aHJvd3MgVVNFUl9XQVJOSU5HUyBvbmx5CiMgc28geW91IGNhbiBjbG9hayB0aGVzZSwgYnkgb25seSBzaG93aW5nIEVSUk9ScwplcnJvcl9yZXBvcnRpbmcoRV9FUlJPUik7CgojIGNoZWNrIHRoZSByZXR1cm4gdmFsdWUgb2YgZmV0Y2hfcnNzKCkKCiRyc3MgPSBmZXRjaF9yc3MoJHVybCk7CgppZiAoICRyc3MgKSB7Ci4uLmRpc3BsYXkgcnNzIGZlZWQuLi4KfQplbHNlIHsKICAgZWNobyAiQW4gZXJyb3Igb2NjdXJlZCEgICIgLgogICAgICAgICJDb25zaWRlciBkb25hdGluZyBtb3JlICQkJCBmb3IgcmVzdG9yYXRpb24gb2Ygc2VydmljZXMuIiAuCiAgICAgICAgIiZsdDticiZndDtFcnJvciBNZXNzYWdlOiAiIC4gbWFncGllX2Vycm9yKCk7Cn0KPC9wcmU+CjxoMz5EaXNjdXNzaW9uOjwvaDM+CgpNYWdwaWVSU1MgdHJpZ2dlcnMgYSB3YXJuaW5nIGluIGEgbnVtYmVyIG9mIGNpcmN1bXN0YW5jZXMuICBUaGUgMiBtb3N0IGNvbW1vbgpjaXJjdW1zdGFuY2VzIGFyZTogIGlmIHRoZSBzcGVjaWZpZWQgUlNTIGZpbGUgaXNuJ3QgcHJvcGVybHkgZm9ybWVkICh1c3VhbGx5CmJlY2F1c2UgaXQgaW5jbHVkZXMgaWxsZWdhbCBIVE1MKSwgb3IgaWYgTWFncGllIGNhbid0IGRvd25sb2FkIHRoZSByZW1vdGUgUlNTCmZpbGUsIGFuZCB0aGVyZSBpcyBubyBjYWNoZWQgdmVyc2lvbi4gIAoKSWYgeW91IGRvbid0IHdhbnQgeW91ciB1c2VycyB0byBzZWUgdGhlc2Ugd2FybmluZ3MgY2hhbmdlIHlvdXIgZXJyb3JfcmVwb3J0aW5nCnNldHRpbmdzIHRvIG9ubHkgZGlzcGxheSBFUlJPUnMuPGJyIC8+CkFub3RoZXIgb3B0aW9uIGlzIHRvIHR1cm4gb2ZmIGRpc3BsYXlfZXJyb3IsCnNvIHRoYXQgV0FSTklOR3MsIGFuZCBOT1RJQ0VzIHN0aWxsIGdvIHRvIHRoZSBlcnJvcl9sb2cgYnV0IG5vdCB0byB0aGUgd2VicGFnZXMuCgpZb3UgY2FuIGRvIHRoaXMgd2l0aDoKCjxwcmU+CiMgeW91IGNhbiBhbHNvIGRvIHRoaXMgaW4geW91ciBwaHAuaW5pIGZpbGUKaW5pX3NldCgnZGlzcGxheV9lcnJvcnMnLCAwKTsKPC9wcmU+Cgo8aDM+U2VlOjwvaDM+CjxhCmhyZWY9Imh0dHA6Ly93d3cucGhwLm5ldC9lcnJvcl9yZXBvcnRpbmciPmh0dHA6Ly93d3cucGhwLm5ldC9lcnJvcl9yZXBvcnRpbmc8L2E+LDxicgovPgo8YSBocmVmPSJodHRwOi8vd3d3LnBocC5uZXQvaW5pX3NldCI+aHR0cDovL3d3dy5waHAubmV0L2luaV9zZXQ8L2E+LCA8YnIgLz4KPGEKaHJlZj0iaHR0cDovL3d3dy5waHAubmV0L21hbnVhbC9lbi9yZWYuZXJyb3JmdW5jLnBocCI+aHR0cDovL3d3dy5waHAubmV0L21hbnVhbC9lbi9yZWYuZXJyb3JmdW5jLnBocDwvYT48YnIKLz4KCjxhIG5hbWU9IndyaXRlX3JzcyI+PC9hPjxoMj4zLiBHZW5lcmF0ZSBhIE5ldyBSU1MgRmVlZDwvaDI+Cgo8aDM+UHJvYmxlbTo8L2gzPgoKQ3JlYXRlIGFuIFJTUyBmZWVkIGZvciBvdGhlciBwZW9wbGUgdG8gdXNlLgoKPGgzPlNvbHV0aW9uOjwvaDM+CgpVc2UgVXNlZnVsIEluYydzIDxhIGhyZWY9Imh0dHA6Ly91c2VmdWxpbmMuY29tL3Jzcy9yc3N3cml0ZXIvIj5SU1NXcml0ZXI8L2E+LgoKPGgzPkRpc2N1c3Npb246PC9oMz4KCkFuIGV4YW1wbGUgb2YgdHVybmluZyBhIE1hZ3BpZSBwYXJzZWQgUlNTIG9iamVjdCBiYWNrIGludG8gYW4gUlNTIGZpbGUgaXMKZm9ydGhjb21pbmcuICBJbiB0aGUgbWVhbnRpbWUgUlNTV3JpdGVyIGlzIHdlbGwgZG9jdW1lbnRlZC4KCjxhIG5hbWU9ImJ5X2RhdGUiPjwvYT48aDI+NC4gRGlzcGxheSBIZWFkbGluZXMgTW9yZSBSZWNlbnQgdGhlbiBYIERhdGU8L2gyPgoKPGgzPlByb2JsZW06PC9oMz4KCllvdSBvbmx5IHdhbnQgdG8gZGlzcGxheSBoZWFkbGluZXMgdGhhdCB3ZXJlIHB1Ymxpc2hlZCBvbiwgb3IgYWZ0ZXIgYSBjZXJ0YWluCmRhdGUuCgoKPGgzPlNvbHV0aW9uOjwvaDM+CjxwcmU+CnJlcXVpcmVfb25jZSgncnNzX3V0aWxzLmluYycpOwoKIyBnZXQgYWxsIGhlYWRsaW5lcyBwdWJsaXNoZWQgdG9kYXkKJHRvZGF5ID0gZ2V0ZGF0ZSgpOwoKIyB0b2RheSwgMTJBTQokZGF0ZSA9IG1rdGltZSgwLDAsMCwkdG9kYXlbJ21vbiddLCAkdG9kYXlbJ21kYXknXSwgJHRvZGF5Wyd5ZWFyJ10pOwoKJHJzcyA9IGZldGNoX3JzcygkdXJsKTsKCmZvcmVhY2ggKCAkcnNzLT5pdGVtcyBhcyAkaXRlbSApIHsKICAgJHB1Ymxpc2hlZCA9IHBhcnNlX3czY2R0ZigkaXRlbVsnZGMnXVsnZGF0ZSddKTsKICAgaWYgKCAkcHVibGlzaGVkICZndDs9ICRkYXRlICkgewogICAgICAgIGVjaG8gIlRpdGxlOiAiIC4gJGl0ZW1bJ3RpdGxlJ107CiAgICAgICAgZWNobyAiUHVibGlzaGVkOiAiIC4gZGF0ZSgiaDppOnMgQSIsICRwdWJsaXNoZWQpOwogICAgICAgIGVjaG8gIiZsdDtwJmd0OyI7CiAgICB9Cn0KPC9wcmU+CjxoMz5EaXNjdXNzaW9uOjwvaDM+CgpUaGlzIHJlY2lwZSBvbmx5IHdvcmtzIGZvciBSU1MgMS4wIGZlZWRzIHRoYXQgaW5jbHVkZSB0aGUgPGRjOmRhdGU+IGZpZWxkLgood2hpY2ggaXMgdmVyeSBnb29kIFJTUyBzdHlsZSkgPGJyIC8+IAo8Y29kZT5wYXJzZV93M2NkdGYoKTwvY29kZT4gaXMgZGVmaW5lZCBpbgo8Y29kZT5yc3NfdXRpbHMuaW5jPC9jb2RlPiwgYW5kIHBhcnNlcyBSU1Mgc3R5bGUgZGF0ZXMgaW50byBVbml4IGVwb2NoCnNlY29uZHMuICAKCjxoMz5TZWU6IDwvaDM+CjxhCmhyZWY9Imh0dHA6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vcmVmLmRhdGV0aW1lLnBocCI+aHR0cDovL3d3dy5waHAubmV0L21hbnVhbC9lbi9yZWYuZGF0ZXRpbWUucGhwPC9hPgoKPGEgbmFtZT0iZnJvbV9maWxlIj48L2E+CjxoMj41LiBQYXJzZSBhIExvY2FsIEZpbGUgQ29udGFpbmluZyBSU1M8L2gyPgo8aDM+UHJvYmxlbTo8L2gzPgpNYWdwaWVSU1MgcHJvdmlkZXMgPGNvZGU+ZmV0Y2hfcnNzKCk8L2NvZGU+IHdoaWNoIHRha2VzIGEgVVJMIGFuZCByZXR1cm5zIGEKcGFyc2VkIFJTUyBvYmplY3QsIGJ1dCB3aGF0IGlmIHlvdSB3YW50IHRvIHBhcnNlIGEgZmlsZSBzdG9yZWQgbG9jYWxseSB0aGF0CmRvZXNuJ3QgaGF2ZSBhIFVSTD8KCjxoMz5Tb2x1dGlvbjwvaDM+CjxwcmU+CnJlcXVpcmVfb25jZSgncnNzX3BhcnNlLmluYycpOwoKJHJzc19maWxlID0gJ3NvbWVfcnNzX2ZpbGUucmRmJzsKJHJzc19zdHJpbmcgPSByZWFkX2ZpbGUoJHJzc19maWxlKTsKJHJzcyA9IG5ldyBNYWdwaWVSU1MoICRyc3Nfc3RyaW5nICk7CgppZiAoICRyc3MgYW5kICEkcnNzLT5FUlJPUikgewouLi5kaXNwbGF5IHJzcy4uLgp9CmVsc2UgewogICAgZWNobyAiRXJyb3I6ICIgLiAkcnNzLT5FUlJPUjsKfQoKIyBlZmZpY2llbnRseSByZWFkIGEgZmlsZSBpbnRvIGEgc3RyaW5nCiMgaW4gcGhwID49IDQuMy4wIHlvdSBjYW4gc2ltcGx5IHVzZSBmaWxlX2dldF9jb250ZW50cygpCiMKZnVuY3Rpb24gcmVhZF9maWxlKCRmaWxlbmFtZSkgewogICAgJGZoID0gZm9wZW4oJGZpbGVuYW1lLCAncicpIG9yIGRpZSgkcGhwX2Vycm9ybXNnKTsKICAgICRyc3Nfc3RyaW5nID0gZnJlYWQoJGZoLCBmaWxlc2l6ZSgkZmlsZW5hbWUpICk7CiAgICBmY2xvc2UoJGZoKTsKICAgIHJldHVybiAkcnNzX3N0cmluZzsKfQo8L3ByZT4KCjxoMz5EaXNjdXNzaW9uPC9oMz4KSGVyZSB3ZSBhcmUgdXNpbmcgTWFncGllUlNTJ3MgUlNTIHBhcnNlciBkaXJlY3RseSB3aXRob3V0IHRoZSBjb252aWVuY2Ugd3JhcHBlcgpvZiA8Y29kZT5mZXRjaF9yc3MoKTwvY29kZT4uICBXZSByZWFkIHRoZSBjb250ZW50cyBvZiB0aGUgUlNTIGZpbGUgaW50byBhCnN0cmluZywgYW5kIHBhc3MgaXQgdG8gdGhlIHBhcnNlciBjb25zdHJ1Y3Rvci4gIE5vdGljZSBhbHNvIHRoYXQgZXJyb3IgaGFuZGxpbmcKaXMgc3VidGx5IGRpZmZlcmVudC4KCjxoMz5TZWU6IDwvaDM+CjxhCmhyZWY9Imh0dHA6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vcmVmLmZpbGVzeXN0ZW0ucGhwIj5odHRwOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL3JlZi5maWxlc3lzdGVtLnBocDwvYT4sPGJyCi8+CjxhCmhyZWY9Imh0dHA6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vbGFuZ3VhZ2Uub29wLnBocCI+aHR0cDovL3d3dy5waHAubmV0L21hbnVhbC9lbi9sYW5ndWFnZS5vb3AucGhwPC9hPgoKPCEtLSAKPGEgbmFtZT0ibGluayI+PC9hPjxoMj4jLiBSZWNpcGU8L2gyPgo8aDM+UHJvYmxlbTo8L2gzPgpQcm9ibGVtIGRlc2NyaXB0aW9uCjxoMz5Tb2x1dGlvbjwvaDM+CjxwcmU+CmNvZGUKPC9wcmU+CjxoMz5EaXNjdXNzaW9uL2gzPgpEaXNjdXNzIGNvZGUKPGgzPlNlZTogPC9oMz4KRG9jdW1lbnRhdGlvbiBsaW5rczoKLS0+Cgo8L2JvZHk+CjwvaHRtbD4K]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/htdocs/index.html</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGh0bWw+CiAgPGhlYWQ+CiAgPHRpdGxlPk1hZ3BpZSBSU1MgLSBQSFAgUlNTIFBhcnNlcjwvdGl0bGU+CiAgPGxpbmsgcmVsPSJhbHRlcm5hdGUiIHR5cGU9ImFwcGxpY2F0aW9uL3Jzcyt4bWwiIHRpdGxlPSJSU1MiCiAgICAgICAgaHJlZj0iaHR0cDovL2xhdWdoaW5nbWVtZS5vcmcvbWFncGllcnNzLnJkZiIgLz4KICA8c3R5bGU+Cglib2R5IHsKCQlmb250LWZhbWlseTp0cmVidWNoZXQgTVMsIHRyZWJ1Y2hldCwgdmVyZGFuYSwgYXJpYWwsIHNhbnMtc2VyaWY7IAoJCWZvbnQtc2l6ZTogMTFweDsgCgkKCX0KCQoJcHJlIHsgZm9udC1mYW1pbHk6ICJDb3VyaWVyIE5ldyIsIG1vbm9zcGFjZTsgCiAgICAgIHBhZGRpbmc6IDFlbTsgCiAgICAgIG1hcmdpbjogMC4yZW0gMi41ZW0gMC4yZW0gM2VtOwogICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmY1OwogICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2ZjZmNmOwogICAgICB3aGl0ZS1zcGFjZTogcHJlOwogfQoKCWxpLm5ld3MgewoJCXBhZGRpbmctYm90dG9tOjE1cHg7Cgl9CgoJYS5uYXYgeyBjb2xvcjogI0ZGRkZGRjsgfQoJCglkaXYubmF2IHsKCQl3aWR0aDogMmluOwoJCWZsb2F0OiByaWdodDsKCQlib3JkZXI6IDJweCBzb2xpZCAjY2ZjZmNmOwoJCXBhZGRpbmc6IDVweDsKCQliYWNrZ3JvdW5kLWNvbG9yOiAjOTk2Njk5OwoJfQoJCiAgPC9zdHlsZT4gCiAgPC9oZWFkPgogIDxib2R5PgogIAk8aW1nIHNyYz0ibWFncGllLXBob3RvLmpwZyI+Cgk8aDE+TWFncGllUlNTPC9oMT4KCTxwPgoJPGgyPk1hZ3BpZVJTUyBwcm92aWRlcyBhbiBYTUwtYmFzZWQgKGV4cGF0KSBSU1MgcGFyc2VyIGluIFBIUC48L2gyPgoJPHA+CglNYWdwaWVSU1MgaXMgY29tcGF0aWJsZSB3aXRoIFJTUyAuOSB0aHJvdWdoIFJTUyAxLjAsIGFuZCBzdXBwb3J0cyB0aGUKCVJTUyAxLjAncyBtb2R1bGVzLiAod2l0aCBhIGZldyBleGNlcHRpb25zKQoJPHA+Cgk8ZGl2IGNsYXNzPSJuYXYiPgoJPGNlbnRlcj48aDM+UHJvamVjdCBJbmZvPC9oMz48L2NlbnRlcj4KCTx1bD4KCTxsaT48YSBjbGFzcz0ibmF2IgpocmVmPSJodHRwOi8vc291cmNlZm9yZ2UubmV0L3Byb2plY3Qvc2hvd2ZpbGVzLnBocD9ncm91cF9pZD01NTY5MSI+RG93bmxvYWQKTWFncGllPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9Im5hdiIKaHJlZj0iaHR0cDovL3NvdXJjZWZvcmdlLm5ldC9tYWlsLz9ncm91cF9pZD01NTY5MSI+TWFpbGluZwpMaXN0czwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJuYXYiIGhyZWY9IiNuZXdzIj5OZXdzITwvYT48L2xpPgoJPGxpPjxhIGNsYXNzPSJuYXYiIGhyZWY9IiN3aHkiPldoeT88L2E+PC9saT4KCTxsaT48YSBjbGFzcz0ibmF2IiBocmVmPSIjZmVhdHVyZXMiPkZlYXR1cmVzPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9Im5hdiIgaHJlZj0iI3BoaWxvc29waHkiPlBoaWxvc29waHk8L2E+PC9saT4KCTxsaT48YSBjbGFzcz0ibmF2IiBocmVmPSIjdXNhZ2UiPlVzYWdlIEV4YW1wbGVzPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9Im5hdiIgaHJlZj0iL2Nvb2tib29rLmh0bWwiPkNvb2tib29rPC9hPjwvbGk+Cgk8bGk+PGEgY2xhc3M9Im5hdiIgaHJlZj0iI3RvZG8iPlRvZG88L2E+PC9saT4KPGxpIHN0eWxlPSJsaXN0LXN0eWxlOiBub25lOyBwYWRkaW5nLXRvcDogNXB4OyI+PGEgdGl0bGU9IktlZXAgdXAgb24gTWFncGllUlNTIG5ld3MgdmlhIFJTUyIgaHJlZj0iaHR0cDovL2xhdWdoaW5nbWVtZS5vcmcvbWFncGllcnNzLnJkZiI+PGltZwpzcmM9Imh0dHA6Ly9tYWdwaWVyc3Muc2YubmV0L2JsYWNrX2dyZXlfbWFncGllX25ld3MuZ2lmIiBib3JkZXI9IjAiPjwvYT48L2xpPgo8L3VsPgo8L2Rpdj4KCTxhIG5hbWU9Im5ld3MiPjwvYT4KCTxoMz5OZXdzITwvaDM+Cgk8dWw+Cgo8bGkgY2xhc3M9Im5ld3MiPgoJCTxhIApocmVmPSJodHRwOi8vc291cmNlZm9yZ2UubmV0L3Byb2plY3Qvc2hvd2ZpbGVzLnBocD9ncm91cF9pZD01NTY5MSI+TWFncGllUlNTCjAuNTEgUmVsZWFzZWQ8L2E+Cjx1bD4KPGxpPiBpbXBvcnRhbnQgYnVnZml4ITwvbGk+CjxsaT4gZml4IDxhIGhyZWY9Imh0dHA6Ly9sYXVnaGluZ21lbWUub3JnL2FyY2hpdmVzLzAwMDgxMS5odG1sCiI+InNpbGVudCBmYWlsdXJlIjwvYT4gd2hlbiBQSFAgZG9lc24ndCBoYXZlIHpsaWI8L2xpPgo8L3VsPgoKPC9saT4KCjxsaSBjbGFzcz0ibmV3cyI+CgkJPGEgaHJlZj0iaHR0cDovL21pbnV0aWxsby5jb20vc3RldmUvZmVlZG9uZmVlZHMvIj5GZWVkIE9uIEZlZWRzIFVzZXMgTWFncGllPC9hPgo8dWw+CjxsaT4gc2VydmVyIGJhc2VkIFBIUCBSU1MgYWdncmVnYXRvciBidWlsdCB3aXRoIE1hZ3BpZVJTUzwvbGk+CjxsaT4gZWFzeSB0byBpbnN0YWxsLCBlYXN5IHRvIHVzZS48L2xpPgo8L3VsPgoKPC9saT4KCgo8bGkgY2xhc3M9Im5ld3MiPgoJCTxhIApocmVmPSJodHRwOi8vc291cmNlZm9yZ2UubmV0L3Byb2plY3Qvc2hvd2ZpbGVzLnBocD9ncm91cF9pZD01NTY5MSZyZWxlYXNlX2lkPTE1ODg5NyI+TWFncGllUlNTCjAuNSBSZWxlYXNlZDwvYT4KPHVsPgo8bGk+IHN1cHBvcnRzIHRyYW5zcGFyZW50IEhUVFAgZ3ppcCBjb250ZW50IG5lZ290aWF0aW9uIGZvciByZWR1Y2VkIGJhbmR3aWR0aCB1c2FnZTwvbGk+IAo8bGk+IHF1YXNoZWQgc29tZSB1bmRlZmluZWQgaW5kZXggbm90aWNlczwvbGk+CjwvdWw+Cgo8L2xpPgoKCjxsaSBjbGFzcz0ibmV3cyI+CgkJPGEgCmhyZWY9Imh0dHA6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdC9zaG93ZmlsZXMucGhwP2dyb3VwX2lkPTU1NjkxJnJlbGVhc2VfaWQ9MTM5NjQzIj5NYWdwaWVSU1MKMC40NiBSZWxlYXNlZDwvYT4KPHVsPgo8bGk+IG1pbm9yIHJlbGVhc2UsIG1vcmUgZXJyb3IgaGFuZGxpbmcgY2xlYW4gdXA8L2xpPiAKPGxpPiBkb2N1bWVudGF0aW9uIGZpeGVzLCBzaW1wbGVyIGV4YW1wbGU8L2xpPgo8bGk+IG5ldyA8YSBocmVmPSIvVFJPVUJMRVNIT09USU5HIj50cm91YmxlIHNob290aW5nPC9hPiBndWlkZSBmb3IgaW5zdGFsbGF0aW9uIGFuZCB1c2FnZSBwcm9ibGVtczwvYT4KPC91bD4KCjwvbGk+Cgo8bGkgY2xhc3M9Im5ld3MiPgoJCTxhIApocmVmPSJodHRwOi8vbGF1Z2hpbmdtZW1lLm9yZy9tYWdwaWVyc3MucmRmIj5NYWdwaWUgTmV3cyBhcyBSU1M8L2E+Cjx1bD4KPGxpPiByZWxlYXNlcywgYnVnIGZpeGVzLCByZWxlYXRlZCBzdG9yaWVzIGFzIGFuIFJTUyBmZWVkPC9saT4gCjwvdWw+Cgo8L2xpPgoKCjxsaSBjbGFzcz0ibmV3cyI+CgkJPGEgCmhyZWY9Imh0dHA6Ly9tYWdwaWVyc3Muc291cmNlZm9yZ2UubmV0L2Nvb2tib29rLmh0bWwiPk1hZ3BpZVJTUwpDb29rYm9vazogU2ltcGxlIFBIUCBSU1MgSG93IFRvczwvYT4KPHVsPgo8bGk+IGFuc3dlcnMgc29tZSBvZiB0aGUgbW9zdCBmcmVxdWVudGx5IGFza2VkIE1hZ3BpZSBxdWVzdGlvbnM8L2xpPiAKPGxpPiBmZWVkYmFjaywgc3VnZ2VzdGlvbnMsIHJlcXVlc3RzLCByZWNpcGVzIHdlbGNvbWU8L2xpPgo8L3VsPgoKPC9saT4KCjxsaSBjbGFzPSJuZXdzIj4KIDxhIGhyZWY9Imh0dHA6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdC9zaG93ZmlsZXMucGhwP2dyb3VwX2lkPTU1NjkxJnJlbGVhc2VfaWQ9MTM0ODUwIj5NYWdwaWVSU1MgMC40IFJlbGVhc2VkITwvYT4KPHVsPgo8bGk+IGltcHJvdmVkIGVycm9yIGhhbmRsaW5nLCBtb3JlIGZsZXhpYmlsaXR5IGZvciBzY3JpcHQgYXV0aG9ycywKYmFja3dhcmRzIGNvbXBhdGlibGU8L2xpPgo8bGk+IG5ldyBhbmQgYmV0dGVyIGV4YW1wbGVzISAgaW5jbHVkaW5nIHVzaW5nIE1hZ3BpZVJTUyBhbmQgPGEKaHJlZj0iaHR0cDovL3NtYXJ0eS5waHAubmV0Ij5TbWFydHk8L2E+PC9saT4KPGxpPiBuZXcgU21hcnR5IHBsdWdpbiBmb3IgUlNTIGRhdGUgcGFyc2luZzwvbGk+CjwvdWw+CjxiciAvPgo8L2xpPgo8IS0tCjxsaSBjbGFzcz0ibmV3cyI+CjxhIGhyZWY9Imh0dHA6Ly93d3cuaW5maW5pdGVwZW5ndWlucy5uZXQvcnNzLyI+SW5maW5pdGUgUGVuZ3VpbiBub3cKc3VwcG9ydHMgTWFncGllIDAuMzwvYT4KPHVsPgo8bGk+IHNpbXBsZSwgc29waGlzdGljYXRlZCBSU1Mgdmlld2VyPC9saT4gCjxsaT4gaW5jbHVkZXMgYXV0by1nZW5lcmF0ZWQgamF2YXNjcmlwdCB0aWNrZXIgZnJvbSBSU1MgZmVlZDwvbGk+CjwvdWw+Cgo8L2xpPgoKCjxsaSBjbGFzcz0ibmV3cyI+CjxhCmhyZWY9Imh0dHA6Ly90cmF1bXdpbmQudGllcnBmYWQuZGUvYmxvZy9tYWdwaWUvbWFncGllX2FsaWtlLnBocCI+VHJhdW13aW5kCnJlbGVhc2VzIFJFWCBiYWNrZW5kIGZvciBNYWdwaWVSU1M8L2E+Cjx1bD4KPGxpPmRyb3AgaW4gc3VwcG9ydCB1c2luZyByZWdleCBiYXNlZCBYTUwgcGFyc2VyPC9saT4KPGxpPnBhcnNlcyBpbXByb3Blcmx5IGZvcm1lZCBYTUwgdGhhdCBjaG9rZXMgZXhwYXQ8L2xpPgo8L3VsPgoKPC9saT4KCjxsaSBjbGFzcz0ibmV3cyI+CgkJPGEKaHJlZj0iaHR0cDovL3NvdXJjZWZvcmdlLm5ldC9wcm9qZWN0L3Nob3dmaWxlcy5waHA/Z3JvdXBfaWQ9NTU2OTEmcmVsZWFzZV9pZD0xMTg2NTIiPgoJCU1hZ3BpZVJTUyAwLjMgUmVsZWFzZWQhPC9hPgoJCTx1bD4KCQkgIDxsaT5TdXBwb3J0IGFkZGVkIGZvciAKCQkJIDxhIGhyZWY9Imh0dHA6Ly9maXNoYm93bC5wYXN0aWNoZS5vcmcvYXJjaGl2ZXMvMDAxMTMyLmh0bWwiPkhUVFAKCQkJIENvbmRpdGlvbmFsIEdFVHM8L2E+LjwvbGk+CgkJICA8bGk+U2VlIDxhIGhyZWY9Imh0dHA6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdC9zaG93bm90ZXMucGhwP2dyb3VwX2lkPTU1NjkxJnJlbGVhc2VfaWQ9MTE4NjUyIj5DaGFuZ2VMb2c8L2E+CgkJICBmb3IgbW9yZSBpbmZvLjwvbGk+CgkgICAgPC91bD4KCQk8L2xpPgoJCTxsaSBjbGFzcz0ibmV3cyI+TWFncGllUlNTIDAuMiE8L2E+CgkJPHVsPgoJCSAgPGxpPk1ham9yIGNsZWFuIHVwIG9mIHRoZSBjb2RlLiAgRWFzaWVyIHRvIHVzZS48L2xpPgoJCSAgPGxpPlNpbXBsZXIgaW5zdGFsbCBvbiBzaGFyZWQgaG9zdHMuPC9saT4KCSAgICAgIDxsaT5CZXR0ZXIgZG9jdW1lbnRhdGlvbiBhbmQgY29tbWVudHMuPC9saT4KCQk8L3VsPgoJCTwvbGk+CgkJPGxpIGNsYXNzPSJuZXdzIj5XZSd2ZSA8YSBocmVmPSJodHRwOi8vc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL21hZ3BpZXJzcy8iPm1vdmVkIHRvCgkJU291cmNlZm9yZ2UhPC9hPjwvbGk+CgktLT4KCTwvdWw+Cgk8L3A+Cgk8cD4KCTxhIG5hbWU9IndoeSI+PC9hPgoJPGgzPldoeT88L2gzPgoJSSB3cm90ZSBNYWdwaWVSU1Mgb3V0IG9mIGEgZnJ1c3RyYXRpb24gd2l0aCB0aGUgbGltaXRhdGlvbnMgb2YgZXhpc3RpbmcKCXNvbHV0aW9ucy4gICBJbiBwYXJ0aWN1bGFyIG1hbnkgb2YgdGhlIGV4aXN0aW5nIFBIUCBzb2x1dGlvbnMgc2VlbWVkIHRvOgoJPHVsPgoJPGxpPnVzZSBhIHBhcnNlciBiYXNlZCBvbiByZWd1bGFyIGV4cHJlc3Npb25zLCBtYWtpbmcgZm9yIGFuIGluaGVyZW50bHkKCWZyYWdpbGUgc29sdXRpb24KCTxsaT5vbmx5IHN1cHBvcnQgZWFybHkgdmVyc2lvbnMgb2YgUlNTCgk8bGk+ZGlzY2FyZCBhbGwgdGhlIGludGVyZXN0aW5nIGluZm9ybWF0aW9uIGJlc2lkZXMgaXRlbSB0aXRsZSwgZGVzY3JpcHRpb24sCglhbmQgbGluay4KCTxsaT5ub3QgYnVpbGQgcHJvcGVyIHNlcGFyYXRpb24gYmV0d2VlbiBwYXJzaW5nIHRoZSBSU1MgYW5kIGRpc3BsYXlpbmcgaXQuCgk8L3VsPgoJSW4gcGFydGljdWxhciBJIGZhaWxlZCB0byBmaW5kIGFueSBQSFAgUlNTIHBhcnNlcnMgdGhhdCBjb3VsZCBzdWZmaWNpZW50bHkKCXBhcnNlIFJTUyAxLjAgZmVlZHMsIHRvIGJlIHVzZWZ1bCBvbiB0aGUgUlNTIGJhc2VkIGV2ZW50IGZlZWRzIHdlIGdlbmVyYXRlCglhdCA8YSBocmVmPSJodHRwOi8vcHJvdGVzdC5uZXQiPlByb3Rlc3QubmV0PC9hPi4KCTwvcD4KCTxwPgoJPGEgbmFtZT0iZmVhdHVyZXMiPjwvYT4KCTxoMz5GZWF0dXJlczwvaDM+Cgo8dWw+Cgk8bGkgY2xhc3M9InRvcGxldmVsIj4KCTxoND5FYXN5IHRvIFVzZTwvaDQ+CglBcyBzaW1wbGUgYXM6CjxwcmU+CnJlcXVpcmUoJ3Jzc19mZXRjaC5pbmMnKTsKJHJzcyA9IGZldGNoX3JzcygkdXJsKTsKPC9wcmU+CgoJPC9saT4KCTxsaSBjbGFzcz0idG9wbGV2ZWwiPgoJCTxoND5QYXJzZXMgUlNTIDAuOSAtIFJTUyAxLjA8L2g0PgoKCQlQYXJzZXMgbW9zdCBSU1MgZm9ybWF0cywgaW5jbHVkaW5nIHN1cHBvcnQgZm9yIAoJCTxhIGhyZWY9Imh0dHA6Ly93d3cucHVybC5vcmcvcnNzLzEuMC9tb2R1bGVzLyI+MS4wIG1vZHVsZXM8L2E+IGFuZCBsaW1pdGVkCgkJbmFtZXNwYWNlIHN1cHBvcnQuICBSU1MgaXMgcGFja2VkIGludG8gY29udmVuaWVudCBkYXRhIHN0cnVjdHVyZXM7IGVhc3kgdG8KCQl1c2UgaW4gUEhQLCBhbmQgYXBwcm9wcmlhdGUgZm9yIHBhc3NpbmcgdG8gYSB0ZW1wbGF0aW5nIHN5c3RlbSwgbGlrZSAKCQk8YSBocmVmPSJodHRwOi8vc21hcnR5LnBocC5uZXQiPlNtYXJ0eTwvYT4uCgk8L2xpPgoJPGxpPgoJPGg0PkludGVncmF0ZWQgT2JqZWN0IENhY2hlPC9oND4KCQoJQ2FjaGluZyB0aGUgcGFyc2VkIFJTUyBtZWFucyB0aGF0IHRoZSAybmQgcmVxdWVzdCBpcyBmYXN0LCBhbmQgdGhhdAppbmNsdWRpbmcgdGhlIHJzc19mZXRjaCBjYWxsIGluIHlvdXIgUEhQIHBhZ2Ugd29uJ3QgZGVzdHJveSB5b3VyIHBlcmZvcm1hbmNlLAphbmQgZm9yY2UgeW91IHRvIHJlcGx5IG9uIGFuIGV4dGVybmFsIGNyb24gam9iLiBBbmQgaXQgaGFwcGVucyB0cmFuc3BhcmVudGx5LgoKCTwvbGk+Cgk8bGk+Cgk8aDQ+SFRUUCBDb25kaXRpb25hbCBHRVRzPC9oND4KCQoJU2F2ZSBiYW5kd2lkdGggYW5kIHNwZWVkIHVwIGRvd25sb2FkIHRpbWVzIHdpdGggaW50ZWxsaWdlbnQgdXNlIG9mCglMYXN0LU1vZGlmaWVkIGFuZCBFVGFnLjxiciAvPiBTZWUgPGEKCWhyZWY9Imh0dHA6Ly9maXNoYm93bC5wYXN0aWNoZS5vcmcvYXJjaGl2ZXMvMDAxMTMyLmh0bWwiPkhUVFAgQ29uZGl0aW9uYWwgR2V0IGZvciBSU1MgSGFja2VyczwvYT4KCTwvbGk+CgkKCTxsaT48aDQ+Q29uZmlndXJhYmxlPC9oND4KCQoJTWFrZXMgZXh0ZW5zaXZlIHVzZSBvZiBjb25zdGFudHMgdG8gYWxsb3cgb3ZlcnJpZGluZyBkZWZhdWx0IGJlaGF2aW91ciwgYW5kCglpbnN0YWxsYXRpb24gb24gc2hhcmVkIGhvc3RzLgoJPC9saT4KCTxsaT48aDQ+TW9kdWxhcjwvaDQ+Cgk8dWw+CgkJPGxpPnJzc19mZXRjaC5pbmMgLSB3cmFwcyBhIHNpbXBsZSBpbnRlcmZhY2UgKDxjb2RlPmZldGNoX3JzcygpPC9jb2RlPikKCQlhcm91bmQgdGhlIGxpYnJhcnkuCgkJPGxpPnJzc19wYXJzZS5pbmMgLSBwcm92aWRlcyB0aGUgUlNTIHBhcnNlciwgYW5kIHRoZSBSU1Mgb2JqZWN0CgkJPGxpPnJzc19jYWNoZS5pbmMgLSBhIHNpbXBsZSAobm8gR0MpIG9iamVjdCBjYWNoZSwgb3B0aW1pemVkIGZvciBSU1Mgb2JqZWN0cwoJCTxsaT5yc3NfdXRpbHMuaW5jIC0gdXRpbGl0eSBmdW5jdGlvbnMgZm9yIHdvcmtpbmcgd2l0aCBSU1MuICBjdXJyZW50bHkKCQlwcm92aWRlcyA8Y29kZT5wYXJzZV93M2NkdGYoKTwvY29kZT4sIGZvciBwYXJzaW5nIDxhCgkJaHJlZj0iaHR0cDovL3d3dy53My5vcmcvVFIvTk9URS1kYXRldGltZSI+VzNDRFRGPC9hPiBpbnRvIGVwb2NoIHNlY29uZHMuCgk8L3VsPgo8L3VsPgoKCQoJPC9wPgo8cD4KCTxhIG5hbWU9InBoaWxvc29waHkiPjwvYT4KCTxoMz5NYWdwaWUncyBhcHByb2FjaCB0byBwYXJzaW5nIFJTUzwvaDM+CgoJTWFncGllIHRha2VzIGEgbmFpdmUsIGFuZCBpbmNsdXNpdmUgYXBwcm9hY2guIEFic29sdXRlbHkKCW5vbi12YWxpZGF0aW5nLCBhcyBsb25nIGFzIHRoZSBSU1MgZmVlZCBpcyB3ZWxsIGZvcm1lZCwgTWFncGllIHdpbGwKCWNoZWVyZnVsbHkgcGFyc2UgbmV3LCBhbmQgbmV2ZXIgYmVmb3JlIHNlZW4gdGFncyBpbiB5b3VyIFJTUyBmZWVkcy4KCTwvcD4KCTxwPgoJVGhpcyBtYWtlcyBpdCB2ZXJ5IHNpbXBsZSBzdXBwb3J0IHRoZSB2YXJpZWQgdmVyc2lvbnMgb2YgUlNTIHNpbXBseSwgYnV0Cglmb3JjZXMgdGhlIGNvbnN1bWVyIG9mIGEgUlNTIGZlZWQgdG8gYmUgY29nbml6YW50IG9mIGhvdyBpdCBpcwoJc3RydWN0dXJlZC4oYXQgbGVhc3QgaWYgeW91IHdhbnQgdG8gZG8gc29tZXRoaW5nIGZhbmN5KQoJPC9wPgoJPHA+CglNYWdwaWUgcGFyc2VzIGEgUlNTIGZlZWQgaW50byBhIHNpbXBsZSBvYmplY3QsIHdpdGggNCBmaWVsZHM6Cgk8Y29kZT5jaGFubmVsPC9jb2RlPiwgPGNvZGU+aXRlbXM8L2NvZGU+LCA8Y29kZT5pbWFnZTwvY29kZT4sIGFuZAoJPGNvZGU+dGV4dGlucHV0PC9jb2RlPi4KCTwvcD4JCgk8cD4KCTxoND5jaGFubmVsPC9oND4KCTxjb2RlPiRyc3MtPmNoYW5uZWw8L2NvZGU+IGNvbnRhaW5zIGtleS12YWx1ZSBwYWlycyBvZiBhbGwgdGFncywgd2l0aG91dAoJbmVzdGVkIHRhZ3MsIGZvdW5kIGJldHdlZW4gdGhlIHJvb3QgdGFnICgmbHQ7cmRmOlJERiZndDssIG9yICZsdDtyc3MmZ3Q7KSAKCWFuZCB0aGUgZW5kIG9mIHRoZSBkb2N1bWVudC4KCTwvcD4KCTxwPgoJPGg0Pml0ZW1zPC9oND4KCTxjb2RlPiRyc3MtPml0ZW1zPC9jb2RlPiBpcyBhbiBhcnJheSBvZiBhc3NvY2lhdGl2ZSBhcnJheXMsIGVhY2ggb25lCglkZXNjcmliaW5nIGEgc2luZ2xlIGl0ZW0uICBBbiBleGFtcGxlIHRoYXQgbG9va3MgbGlrZToKCTxwcmU+CiZsdDtpdGVtIHJkZjphYm91dD0iaHR0cDovL3Byb3Rlc3QubmV0L05vcnRoRWFzdC9jYWxlbmRyb21lLmNnaT9zcGFuPWV2ZW50JiMzODtJRD0yMTAyNTciJmd0OwombHQ7dGl0bGUmZ3Q7V2Vla2x5IFBlYWNlIFZpZ2lsJmx0Oy90aXRsZSZndDsKJmx0O2xpbmsmZ3Q7aHR0cDovL3Byb3Rlc3QubmV0L05vcnRoRWFzdC9jYWxlbmRyb21lLmNnaT9zcGFuPWV2ZW50JiMzODtJRD0yMTAyNTcmbHQ7L2xpbmsmZ3Q7CiZsdDtkZXNjcmlwdGlvbiZndDtXZWFyIGEgd2hpdGUgcmliYm9uJmx0Oy9kZXNjcmlwdGlvbiZndDsKJmx0O2RjOnN1YmplY3QmZ3Q7UGVhY2UmbHQ7L2RjOnN1YmplY3QmZ3Q7CiZsdDtldjpzdGFydGRhdGUmZ3Q7MjAwMi0wNi0wMVQxMTowMDowMCZsdDsvZXY6c3RhcnRkYXRlJmd0OwombHQ7ZXY6bG9jYXRpb24mZ3Q7Tm9ydGhhbXB0b24sIE1BJmx0Oy9ldjpsb2NhdGlvbiZndDsKJmx0O2V2OmVuZGRhdGUmZ3Q7MjAwMi0wNi0wMVQxMjowMDowMCZsdDsvZXY6ZW5kZGF0ZSZndDsKJmx0O2V2OnR5cGUmZ3Q7UHJvdGVzdCZsdDsvZXY6dHlwZSZndDsKJmx0Oy9pdGVtJmd0OwoJPC9wcmU+PHA+CglJcyBwYXJzZWQsIGFuZCBwdXNoZWQgb24gdGhlIDxjb2RlPiRyc3MtJmd0O2l0ZW1zPC9jb2RlPiBhcnJheSBhczoKCTxwPjxwcmU+CmFycmF5KAoJdGl0bGUgPSZndDsgJ1dlZWtseSBQZWFjZSBWaWdpbCcsCglsaW5rID0mZ3Q7ICdodHRwOi8vcHJvdGVzdC5uZXQvTm9ydGhFYXN0L2NhbGVuZHJvbWUuY2dpP3NwYW49ZXZlbnQmIzM4O0lEPTIxMDI1NycsCglkZXNjcmlwdGlvbiA9Jmd0OyAnV2VhciBhIHdoaXRlIHJpYmJvbicsCglkYyA9Jmd0OyBhcnJheSAoCgkJCXN1YmplY3QgPSZndDsgJ1BlYWNlJwoJCSksCglldiA9Jmd0OyBhcnJheSAoCgkJc3RhcnRkYXRlID0mZ3Q7ICcyMDAyLTA2LTAxVDExOjAwOjAwJywKCQllbmRkYXRlID0mZ3Q7ICcyMDAyLTA2LTAxVDEyOjAwOjAwJywKCQl0eXBlID0mZ3Q7ICdQcm90ZXN0JywKCQlsb2NhdGlvbiA9Jmd0OyAnTm9ydGhhbXB0b24sIE1BJwoJKQopOwo8L3ByZT4KPC9wPgo8cD4KPGg0PmltYWdlIGFuZCB0ZXh0aW5wdXQ8L2g0Pgo8Y29kZT4kcnNzLT5pbWFnZTwvY29kZT4gYW5kIDxjb2RlPiRyc3MtdGV4dGlucHV0PC9jb2RlPiBhcmUgYXNzb2NpYXRpdmUgYXJyYXlzCmluY2x1ZGluZyBuYW1lLXZhbHVlIHBhaXJzIGZvciBhbnl0aGluZyBmb3VuZCBiZXR3ZWVuIHRoZSByZXNwZWN0aXZlIHBhcmVudAp0YWdzLgo8L3A+CjxwPgo8YSBuYW1lPSJ1c2FnZSI+PC9hPgo8aDM+VXNhZ2UgRXhhbXBsZXM6PC9oMz4KCkEgdmVyeSBzaW1wbGUgZXhhbXBsZSB3b3VsZCBiZToKPHByZT4KcmVxdWlyZV9vbmNlICdyc3NfZmV0Y2guaW5jJzsKCiR1cmwgPSAnaHR0cDovL21hZ3BpZS5zZi5uZXQvc2FtcGxlcy9pbWMuMS0wLnJkZic7CiRyc3MgPSBmZXRjaF9yc3MoJHVybCk7CgplY2hvICJTaXRlOiAiLCAkcnNzLT5jaGFubmVsWyd0aXRsZSddLCAiJmx0O2JyJmd0O1xuIjsKZm9yZWFjaCAoJHJzcy0+aXRlbXMgYXMgJGl0ZW0gKSB7CgkkdGl0bGUgPSAkaXRlbVt0aXRsZV07CgkkdXJsICAgPSAkaXRlbVtsaW5rXTsKCWVjaG8gIiZsdDthIGhyZWY9JHVybCZndDskdGl0bGUmbHQ7L2EmZ3Q7Jmx0Oy9saSZndDsmbHQ7YnImZ3Q7XG4iOwp9CjwvcHJlPgpNb3JlIHNvb24uLi4uaW4gdGhlIG1lYW50aW1lIHlvdSBjYW4gY2hlY2sgb3V0IGEgCjxhIGhyZWY9Imh0dHA6Ly93d3cuaW5maW5pdGVwZW5ndWlucy5uZXQvcnNzLyI+Y29vbCB0b29sIGJ1aWx0IHdpdGgKTWFncGllUlNTPC9hPiwgdmVyc2lvbiAwLjEuCjwvcD4KPHA+CjxhIG5hbWU9InRvZG8iPjwvYT4KPGgzPlRvZG9zPC9oMz4KCTxoND5SU1MgUGFyc2VyPC9oND4KCTx1bD4KCQk8bGk+U3dhcCBpbiBhIHNtYXJ0ZXIgcGFyc2VyIHRoYXQgaW5jbHVkZXMgb3B0aW9uYWwgCgkJc3VwcG9ydCBmb3IgdmFsaWRhdGlvbiwgYW5kIHJlcXVpcmVkIGZpZWxkcy48L2xpPgoJCQoJCTxsaT5TdXBwb3J0IFJTUyAyLjAgKGFzIG11Y2ggYXMgSSdtIGFubm95ZWQgYnkgaXQpPC9saT4KCQkKCQk8bGk+SW1wcm92ZSBzdXBwb3J0IGZvciBtb2R1bGVzIHRoYXQgcmVseSBvbiBhdHRyaWJ1dGVzPC9saT4KCTwvdWw+CgkKCTxoND5SU1MgQ2FjaGU8L2g0PgoJPHVsPgoJCTxsaT5MaWdodC13ZWlnaHQgZ2FyYmFnZSBjb2xsZWN0aW9uCgk8L3VsPgoJCgk8aDQ+RmV0Y2ggUlNTPC9oND4KCTx1bD4KCTxsaT5BdHRlbXB0IHRvIDxhCglocmVmPSJodHRwOi8vZGl2ZWludG9tYXJrLm9yZy9hcmNoaXZlcy8yMDAyLzA4LzE1Lmh0bWwiPmF1dG8tZGV0ZWN0IGFuCglSU1MgZmVlZDwvYT4sIGdpdmVuIGEgVVJMIGZvbGxvd2luZywgbXVjaCBsaWtlIDxhCglocmVmPSJodHRwOi8vZGl2ZWludG9tYXJrLm9yZy9wcm9qZWN0cy9taXNjL3Jzc2ZpbmRlci5weS50eHQiPnJzc2ZpbmRlci5weTwvYT5kb2VzLgoJPC9saT4KCTwvdWw+Cgk8aDQ+TWlzYzwvaDQ+CgkJPHVsPgoJCTxsaT5Nb3JlIGV4YW1wbGVzPC9saT4KCQk8bGk+QSB0ZXN0IHN1aXRlPC9saT4KCQk8bGk+UlNTIGdlbmVyYXRpb24sIHBlcmhhcHMgd2l0aCA8YQoJaHJlZj0iaHR0cDovL3VzZWZ1bGluYy5jb20vcnNzL3Jzc3dyaXRlci8iPlJTU3dyaXRlcjwvYT4/CgkJPC9saT4KCQk8L3VsPgoJCjwvcD4KPHA+CjxoMz5SU1MgUmVzb3VyY2VzPC9oMz4KCTx1bD4KCTxsaT48YSBocmVmPSJodHRwOi8vbW5vdC5uZXQvcnNzL3R1dG9yaWFsLyI+UlNTIFR1dG9yaWFsIGZvciBDb250ZW50IFB1Ymxpc2hlcnMKCWFuZCBXZWJtYXN0ZXJzPC9hPiBpcyBhIGdyZWF0IHBsYWNlIHRvIHN0YXJ0LgoJPGxpPjxhIGhyZWY9Imh0dHA6Ly9naWxzLnV0YWguZ292L3Jzcy8iPlJTUyBXb3Jrc2hvcDogIFB1Ymxpc2ggYW5kIFN5bmRpY2F0ZQoJWW91ciBOZXdzIHRvIHRoZSBXZWI8L2E+IGlzIGFsc28gYSBnb29kIGludHJvZHVjdGlvbjwvbGk+Cgk8bGk+PGEgaHJlZj0iaHR0cDovL3d3dy5kaXNvYmV5LmNvbS9hbXBoZXRhZGVzay9maW5kaW5nX21vcmUuaHRtbCI+RmluZGluZwoJTW9yZSBDaGFubmVsczwvYT4gb24gaG93IHRvIGZpbmQgUlNTIGZlZWRzLgoJPGxpPkhhbW1lcnNsZXkncyA8YSBocmVmPSJodHRwOi8vcnNzLmJlbmhhbW1lcnNsZXkuY29tLyI+Q29udGVudCBTeW5kaWNhdGlvbgoJd2l0aCBYTUwgYW5kIFJTUzwvYT4gaXMgYSBibG9nIGNvdmVyaW5nIFJTUyBjdXJyZW50IGV2ZW50cy4KCTxsaT48YSBocmVmPSJodHRwOi8vZ3JvdXBzLnlhaG9vLmNvbS9ncm91cC9yc3MtZGV2LyI+UlNTLURFViBtYWlsaW5nCglsaXN0PC9hPiBpcyBnZW5lcmFsbHkgYSB2ZXJ5IGhlbHBmdWwsIGluZm9ybWF0aXZlIHNwYWNlLCB3aXRoIHRoZSBvY2Nhc2lvbmFsCgloZWF0ZWQgZGViYXRlCQoJPGxpPjxhIGhyZWY9Imh0dHA6Ly9mZWVkcy5hcmNoaXZlLm9yZy92YWxpZGF0b3IvIj5SU1MgVmFsaWRhdG9yPC9hPgoJPC91bD4uCjwvcD4KPGgzPkxpY2Vuc2UgYW5kIENvbnRhY3QgSW5mbzwvaDM+Ck1hZ3BpZSBpcyBkaXN0cmlidXRlZCB1bmRlciB0aGUgR1BMIGxpY2Vuc2UuLi4KPHA+CmNvZGVkIGJ5OiBrZWxsYW4gKGF0KSBwcm90ZXN0Lm5ldCwgZmVlZGJhY2sgaXMgYWx3YXlzIGFwcHJlY2lhdGVkLgo8cD4KPGEgaHJlZj0iaHR0cDovL3NvdXJjZWZvcmdlLm5ldCI+PGltZwpzcmM9Imh0dHA6Ly9zb3VyY2Vmb3JnZS5uZXQvc2Zsb2dvLnBocD9ncm91cF9pZD01NTY5MSZhbXA7dHlwZT0zIiAKd2lkdGg9IjEyNSIgaGVpZ2h0PSIzNyIgYm9yZGVyPSIwIiBhbHQ9IlNvdXJjZUZvcmdlLm5ldCBMb2dvIj48L2E+CjxpbWcgc3JjPSJodHRwOi8vbGF1Z2hpbmdtZW1lLm9yZy9tYWdwaWVfdmlld3MuZ2lmIj4KPC9ib2R5Pgo8L2h0bWw+Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/INSTALL</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[UkVRVUlSRU1FTlRTCgogICAgTWFwaWVSU1MgcmVxdWlyZXMgYSByZWNlbnQgUEhQIDQrIChkZXZlbG9wZWQgd2l0aCA0LjIuMCkKICAgIHdpdGggeG1sIChleHBhdCkgc3VwcG9ydC4KICAgIAogICAgT3B0aW9uYWxseToKICAgICAgKiBQSFA1IHdpdGggbGlieG1sMiBzdXBwb3J0LgogICAgICAqIGNVUkwgZm9yIFNTTCBzdXBwb3J0CiAgICAgICogaWNvbnYgKHByZWZlcnJlZCkgb3IgbWJfc3RyaW5nIGZvciBleHBhbmRlZCBjaGFyYWN0ZXIgc2V0IHN1cHBvcnQKICAgIApRVUlDSyBTVEFSVAoKICAgIE1hZ3BpZSBjb25zaXN0cyBvZiA0IGZpbGVzIChyc3NfZmV0Y2guaW5jLCByc3NfcGFyc2VyLmluYywgcnNzX2NhY2hlLmluYywgCiAgICBhbmQgcnNzX3V0aWxzLmluYyksIGFuZCB0aGUgZGlyZWN0b3J5IGV4dGxpYiAod2hpY2ggY29udGFpbnMgYSBtb2RpZmllZCAKICAgIHZlcnNpb24gb2YgdGhlIFNub29weSBIVFRQIGNsaWVudCkKICAgIAogICAgQ29weSB0aGVzZSA1IHJlc291cmNlcyB0byBhIGRpcmVjdG9yeSBuYW1lZCAnbWFncGllcnNzJyBpbiB0aGUgc2FtZSAKICAgIGRpcmVjdG9yeSBhcyB5b3VyIFBIUCBzY3JpcHQuCiAgICAKICAgIEF0IHRoZSB0b3Agb2YgeW91ciBzY3JpcHQgYWRkIHRoZSBmb2xsb3dpbmcgbGluZToKICAgIAogICAgICAgIHJlcXVpcmVfb25jZSgnbWFncGllcnNzL3Jzc19mZXRjaC5pbmMnKTsKICAgIAogICAgTm93IHlvdSBjYW4gdXNlIHRoZSBmZXRjaF9yc3MoKSBtZXRob2Q6CiAgICAgIAogICAgICAgICRyc3MgPSBmZXRjaF9yc3MoJHVybCk7CiAgICAgICAgCiAgICBEb25lLiAgVGhhdCdzIGl0LiAgIFNlZSBSRUFETUUgZm9yIG1vcmUgZGV0YWlscyBvbiB1c2luZyBNYWdwaWVSU1MuCgpORVhUIFNURVBTCgogICAgSW1wb3J0YW50OiAgeW91J2xsIHByb2JhYmx5IHdhbnQgdG8gZ2V0IHRoZSBjYWNoZSBkaXJlY3Rvcnkgd29ya2luZyBpbiAKICAgIG9yZGVyIHRvIHNwZWVkIHVwIHlvdXIgYXBwbGljYXRpb24sIGFuZCBub3QgYWJ1c2UgdGhlIHdlYnNlcnZlciB5b3UncmUgCiAgICBkb3dubG9hZGluZyB0aGUgUlNTIGZyb20uCiAgICAKICAgIE9wdGlvbmFsbHkgeW91IGNhbiBpbnN0YWxsIE1hZ3BpZVJTUyBpbiB5b3VyIFBIUCBpbmNsdWRlIHBhdGggaW4gb3JkZXIgdG8gCiAgICBtYWtlIGl0IGF2YWlsYWJsZSBzZXJ2ZXIgd2lkZS4KICAgIAogICAgTGFzdGx5IHlvdSBtaWdodCB3YW50IHRvIGxvb2sgdGhyb3VnaCB0aGUgY29uc3RhbnRzIGluIHJzc19mZXRjaC5pbmMgc2VlIGlmIAogICAgdGhlcmUgaXMgYW55dGhpbmcgeW91IHdhbnQgdG8gb3ZlcnJpZGUgKHRoZSBkZWZhdWx0cyBhcmUgcHJldHR5IGdvb2QpCgogICAgRm9yIG1vcmUgaW5mbywgb3IgaWYgeW91IGhhdmUgdHJvdWJsZSwgc2VlIFRST1VCTEVTSE9PVElORwoKU0VUVElORyBVUCBDQUNISU5HCgogICAgTWFncGllIGhhcyBidWlsdC1pbiB0cmFuc3BhcmVudCBjYWNoaW5nLiAgV2l0aCBjYWNoaW5nIE1hZ3BpZSB3aWxsIG9ubHkgCiAgICBmZXRjaCBhbmQgcGFyc2UgUlNTIGZlZWRzIHdoZW4gdGhlcmUgaXMgbmV3IGNvbnRlbnQuICBXaXRob3V0IHRoaXMgZmVhdHVyZSAKICAgIHlvdXIgcGFnZXMgd2lsbCBiZSBzbG93LCBhbmQgdGhlIHNpdGVzIHNlcnZpbmcgdGhlIFJTUyBmZWVkIHdpbGwgYmUgYW5ub3llZCAKICAgIHdpdGggeW91LgogICAgCioqIFNpbXBsZSBhbmQgQXV0b21hdGljICoqCiAgICAKICAgIEJ5IGRlZmF1bHQgTWFncGllIHdpbGwgdHJ5IHRvIGNyZWF0ZSBhIGNhY2hlIGRpcmVjdG9yeSBuYW1lZCAnY2FjaGUnIGluIHRoZQogICAgc2FtZSBkaXJlY3RvcnkgYXMgeW91ciBQSFAgc2NyaXB0LgogICAgCioqIENyZWF0aW5nIGEgTG9jYWwgQ2FjaGUgRGlyZWN0b3J5ICoqCiAgICAKICAgIE9mdGVuIHRoaXMgd2lsbCBmYWlsLCBiZWNhdXNlIHlvdXIgd2Vic2VydmVyIGRvZXNuJ3QgaGF2ZSBzdWZmaWNpZW50IAogICAgcGVybWlzc2lvbnMgdG8gY3JlYXRlIHRoZSBkaXJlY3RvcnkuIAogICAgCiAgICBFeGFjdCBpbnN0cnVjdGlvbnMgZm9yIGhvdyB0byBkbyB0aGlzIHdpbGwgdmFyeSBmcm9tIGluc3RhbGwgdG8gaW5zdGFsbCBhbmQgCiAgICBwbGF0Zm9ybSB0byBwbGF0Zm9ybS4gIFRoZSBzdGVwcyBhcmU6CiAgICAKICAgIDEuICBNYWtlIGEgZGlyZWN0b3J5IG5hbWVkICdjYWNoZScKICAgIDIuICBHaXZlIHRoZSB3ZWIgc2VydmVyIHdyaXRlIGFjY2VzcyB0byB0aGF0IGRpcmVjdG9yeS4KICAgIAogICAgQW4gZXhhbXBsZSBvZiBob3cgdG8gZG8gdGhpcyBvbiBEZWJpYW4gd291bGQgYmU6CiAgICAKICAgIDEuICBta2RpciAvcGF0aC90by9zY3JpcHQvY2FjaGUKICAgIDIuICBjaGdycCB3d3ctZGF0YSAvcGF0aC90by9zY3JpcHQvY2FjaGUKICAgIDMuICBjaG1vZCA3NzUgL3BhdGgvdG8vc2NyaXB0L2NhY2hlCiAgICAKICAgIE9uIG90aGVyIFVuaXhlcyB5b3UnbGwgbmVlZCB0byBjaGFuZ2UgJ3d3dy1kYXRhJyB0byB3aGF0IGV2ZXIgdXNlciBBcGFjaGUgCiAgICBydW5zIGFzLiAob24gTWFjT1MgWCB0aGUgdXNlciB3b3VsZCBiZSAnd3d3JykKICAgIAoqKiBDYWNoZSBpbiAvdG1wICoqCiAgICAKICAgIFNvbWV0aW1lcyB5b3Ugd29uJ3QgYmUgYWJsZSB0byBjcmVhdGUgYSBsb2NhbCBjYWNoZSBkaXJlY3RvcnkuICBTb21lIHJlYXNvbnMgCiAgICBtaWdodCBiZToKICAgIAogICAgMS4gIE5vIHNoZWxsIGFjY291bnQKICAgIDIuICBJbnN1ZmZpY2llbnQgcGVybWlzc2lvbnMgdG8gY2hhbmdlIG93bmVyc2hpcCBvZiBhIGRpcmVjdG9yeQogICAgMy4gIFdlYnNlcnZlciBydW5zIGFzICdub2JvZHknCiAgICAKICAgIEluIHRoZXNlIHNpdHVhdGlvbnMgdXNpbmcgYSBjYWNoZSBkaXJlY3RvcnkgaW4gL3RtcCBjYW4gb2Z0ZW4gYmUgYSBnb29kIAogICAgb3B0aW9uLgogICAgCiAgICBUaGUgZHJhd2JhY2sgaXMgL3RtcCBpcyBwdWJsaWMsIHNvIGFueW9uZSBvbiB0aGUgYm94IGNhbiByZWFkIHRoZSBjYWNoZSAKICAgIGZpbGVzLiAgVXN1YWxseSBSU1MgZmVlZHMgYXJlIHB1YmxpYyBpbmZvcm1hdGlvbiwgc28geW91J2xsIGhhdmUgdG8gZGVjaWRlIAogICAgaG93IG11Y2ggb2YgYW4gaXNzdWUgdGhhdCBpcy4KCiAgICBUbyB1c2UgL3RtcCBhcyB5b3VyIGNhY2hlIGRpcmVjdG9yeSB5b3UgbmVlZCB0byBhZGQgdGhlIGZvbGxvd2luZyBsaW5lIHRvIAogICAgeW91ciBzY3JpcHQ6CiAgICAgICAgCiAgICAgICAgZGVmaW5lKCdNQUdQSUVfQ0FDSEVfRElSJywgJy90bXAvbWFncGllX2NhY2hlJyk7CiAgICAgICAgCioqIEdsb2JhbCBDYWNoZSAqKgoKICAgIElmIHlvdSBoYXZlIHNldmVyYWwgYXBwbGljYXRpb25zIHVzaW5nIE1hZ3BpZSwgeW91IGNhbiBjcmVhdGUgYSBzaW5nbGUgCiAgICBzaGFyZWQgY2FjaGUgZGlyZWN0b3J5LCBlaXRoZXIgdXNpbmcgdGhlIC90bXAgY2FjaGUsIG9yIHNvbWV3aGVyZSBlbHNlIG9uIAogICAgdGhlIHN5c3RlbS4KICAgIAogICAgVGhlIHVwc2lkZSBpcyB0aGF0IHlvdSdsbCBkaXN0cmlidXRlIGZldGNoaW5nIGFuZCBwYXJzaW5nIGZlZWRzIGFjcm9zcyAKICAgIHNldmVyYWwgYXBwbGljYXRpb25zLgogICAgCklOU1RBTExJTkcgTUFHUElFIFNFUlZFUiBXSURFCgogICAgUmF0aGVyIHRoZW4gZm9sbG93aW5nIHRoZSBRdWlja3N0YXJ0IGluc3RydWN0aW9ucyB3aGljaCByZXF1aXJlcyB5b3UgdG8gaGF2ZSAKICAgIGEgY29weSBvZiBNYWdwaWUgcGVyIGFwcGxpY2F0aW9uLCBhbHRlcm5hdGVseSB5b3UgY2FuIHBsYWNlIGl0IGluIHNvbWUgCiAgICBzaGFyZWQgbG9jYXRpb24uCiAgICAKKiogQWRkaW5nIE1hZ3BpZSB0byBZb3VyIEluY2x1ZGUgUGF0aCAqKgoKICAgIENvcHkgdGhlIDUgcmVzb3VyY2VzIChyc3NfZmV0Y2guaW5jLCByc3NfcGFyc2VyLmluYywgcnNzX2NhY2hlLmluYywgICAgICAgICAKICAgIHJzc191dGlscy5pbmMsIGFuZCBleHRsaWIpIHRvIGEgZGlyZWN0b3J5IG5hbWVkICdtYWdwaWVyc3MnIGluIHlvdXIgaW5jbHVkZSAKICAgIHBhdGguICBOb3cgYW55IFBIUCBmaWxlIG9uIHlvdXIgc3lzdGVtIGNhbiB1c2UgTWFncGllIHdpdGg6CiAgICAKICAgICAgICByZXF1aXJlX29uY2UoJ21hZ3BpZXJzcy9yc3NfZmV0Y2guaW5jJyk7CgogICAgRGlmZmVyZW50IGluc3RhbGxzIGhhdmUgZGlmZmVyZW50IGluY2x1ZGUgcGF0aHMsIGFuZCB5b3UnbGwgaGF2ZSB0byBmaWd1cmUgCiAgICBvdXQgd2hhdCB5b3VyIGluY2x1ZGVfcGF0aCBpcy4KICAgIAogICAgRnJvbSBzaGVsbCB5b3UgY2FuIHRyeTogCiAgICAgICAgCiAgICAgICAgcGhwIC1pIHwgZ3JlcCAnaW5jbHVkZV9wYXRoJwoKICAgIEFsdGVybmF0bGV5IHlvdSBjYW4gY3JlYXRlIGEgcGhwaW5mby5waHAgZmlsZSB3aXRoIGNvbnRhaW5zOgogICAgCiAgICAgICAgPD9waHAgcGhwaW5mbygpOyA/PgogICAgCiAgICBEZWJpYW4ncyBkZWZhdWx0IGlzOiAgCiAgICAgICAgCiAgICAgICAgL3Vzci9zaGFyZS9waHAgCiAgICAgICAgCiAgICAodGhvdWdoIG1vcmUgaWRlYWxvZ2ljYWxseSBwdXJlIGxvY2F0aW9uIHdvdWxkIGJlIC91c3IvbG9jYWwvc2hhcmUvcGhwKQogICAgCiAgICBBcHBsZSdzIGRlZmF1bHQgaW5jbHVkZSBwYXRoIGlzOgogICAgCiAgICAgICAgL3Vzci9saWIvcGhwCiAgICAgICAgCiAgICBXaGlsZSB0aGUgRW50cm9weSBQSFAgYnVpbGQgc2VlbXMgdG8gdXNlOgogICAgCiAgICAgICAgL3Vzci9sb2NhbC9waHAvbGliL3BocA==]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/NEWS</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[TWFncGllUlNTIE5ld3MKCk1BR1BJRVJTUyAwLjUxIFJFTEVBU0VECgkqIGltcG9ydGFudCBidWdmaXghCgkqIGZpeCAic2lsZW50IGZhaWx1cmUiIHdoZW4gUEhQIGRvZXNuJ3QgaGF2ZSB6bGliCgpGRUVEIE9OIEZFRURTIFVTRVMgTUFHUElFCgkqIHdlYi1iYXNlZCBSU1MgYWdncmVnYXRvciBidWlsdCB3aXRoIE1hZ3BpZQoJKiBlYXN5IHRvIGluc3RhbGwsIGVhc3kgdG8gdXNlLgoJaHR0cDovL21pbnV0aWxsby5jb20vc3RldmUvZmVlZG9uZmVlZHMvCgkKTUFHUElFUlNTIDAuNSBSRUxFQVNFRAoJKiBzdXBwb3J0cyB0cmFuc3BhcmVudCBIVFRQIGd6aXAgY29udGVudCBuZWdvdGlhdGlvbiBmb3IgcmVkdWNlZCBiYW5kd2lkdGggdXNhZ2UKICAgICogcXVhc2hlZCBzb21lIHVuZGVmaW5lZCBpbmRleCBub3RpY2VzCgpNQUdQSUVSU1MgMC40NiBSRUxFQVNFRAogICAgKiBtaW5vciByZWxlYXNlLCBtb3JlIGVycm9yIGhhbmRsaW5nIGNsZWFuIHVwCiAgICAqIGRvY3VtZW50YXRpb24gZml4ZXMsIHNpbXBsZXIgZXhhbXBsZQogICAgKiBuZXcgdHJvdWJsZSBzaG9vdGluZyBndWlkZSBmb3IgaW5zdGFsbGF0aW9uIGFuZCB1c2FnZSBwcm9ibGVtcyAKICAgICAgaHR0cDovL21hZ3BpZXJzcy5zb3VyY2Vmb3JnZS5uZXQvVFJPVUJMRVNIT09USU5HCgpNQUdQSUUgTkVXUyBBUyBSU1MKICAgICogcmVsZWFzZXMsIGJ1ZyBmaXhlcywgcmVsZWF0ZWQgc3RvcmllcyBpbiBSU1MKICAgIApNQUdQSUVSU1MgQ09PS0JPT0s6IFNJTVBMRSBQSFAgUlNTIEhPVyBUT1MKICAgICogYW5zd2VycyBzb21lIG9mIHRoZSBtb3N0IGZyZXF1ZW50bHkgYXNrZWQgTWFncGllIHF1ZXN0aW9ucwogICAgKiBmZWVkYmFjaywgc3VnZ2VzdGlvbnMsIHJlcXVlc3RzLCByZWNpcGVzIHdlbGNvbWUKICAgICAgaHR0cDovL21hZ3BpZXJzcy5zb3VyY2Vmb3JnZS5uZXQvY29va2Jvb2suaHRtbAoKTUFHUElFUlNTIDAuNCBSRUxFQVNFRCEKICAgICogaW1wcm92ZWQgZXJyb3IgaGFuZGxpbmcsIG1vcmUgZmxleGliaWxpdHkgZm9yIHNjcmlwdCBhdXRob3JzLCBiYWNrd2FyZHMgY29tcGF0aWJsZQogICAgKiBuZXcgYW5kIGJldHRlciBleGFtcGxlcyEgaW5jbHVkaW5nIHVzaW5nIE1hZ3BpZVJTUyBhbmQgU21hcnR5CiAgICAqIG5ldyBTbWFydHkgcGx1Z2luIGZvciBSU1MgZGF0ZSBwYXJzaW5nCiAgICAgIGh0dHA6Ly9zbWFydHkucGhwLm5ldAoKSU5GSU5JVEUgUEVOR1VJTiBOT1cgU1VQUE9SVFMgTUFHUElFIDAuMwogICAgKiBzaW1wbGUsIHNvcGhpc3RpY2F0ZWQgUlNTIHZpZXdlcgogICAgKiBpbmNsdWRlcyBhdXRvLWdlbmVyYXRlZCBqYXZhc2NyaXB0IHRpY2tlciBmcm9tIFJTUyBmZWVkCiAgICAgIGh0dHA6Ly93d3cuaW5maW5pdGVwZW5ndWlucy5uZXQvcnNzLwoKVFJBVU1XSU5EIFJFTEVBU0VTIFJFWCBCQUNLRU5EIEZPUiBNQUdQSUVSU1MKICAgICogZHJvcCBpbiBzdXBwb3J0IHVzaW5nIHJlZ2V4IGJhc2VkIFhNTCBwYXJzZXIKICAgICogcGFyc2VzIGltcHJvcGVybHkgZm9ybWVkIFhNTCB0aGF0IGNob2tlcyBleHBhdAogICAgICBodHRwOi8vdHJhdW13aW5kLmRlL2Jsb2cvbWFncGllL21hZ3BpZV9hbGlrZS5waHAKCk1BR1BJRVJTUyAwLjMgUkVMRUFTRUQhCiAgICAqIFN1cHBvcnQgYWRkZWQgZm9yIEhUVFAgQ29uZGl0aW9uYWwgR0VUcy4KICAgICAgaHR0cDovL2Zpc2hib3dsLnBhc3RpY2hlLm9yZy9hcmNoaXZlcy8wMDExMzIuaHRtbAoKTUFHUElFUlNTIDAuMiEKICAgICogTWFqb3IgY2xlYW4gdXAgb2YgdGhlIGNvZGUuIEVhc2llciB0byB1c2UuCiAgICAqIFNpbXBsZXIgaW5zdGFsbCBvbiBzaGFyZWQgaG9zdHMuCiAgICAqIEJldHRlciBkb2N1bWVudGF0aW9uIGFuZCBjb21tZW50cy4K]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/README</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[TkFNRQoKCU1hZ3BpZVJTUyAtIGEgc2ltcGxlIFJTUyBpbnRlZ3JhdGlvbiB0b29sCgpTWU5PUFNJUwoKCXJlcXVpcmVfb25jZShyc3NfZmV0Y2guaW5jKTsKCSR1cmwgPSAkX0dFVFsndXJsJ107CgkkcnNzID0gZmV0Y2hfcnNzKCAkdXJsICk7CgkKCWVjaG8gIkNoYW5uZWwgVGl0bGU6ICIgLiAkcnNzLT5jaGFubmVsWyd0aXRsZSddIC4gIjxwPiI7CgllY2hvICI8dWw+IjsKCWZvcmVhY2ggKCRyc3MtPml0ZW1zIGFzICRpdGVtKSB7CgkJJGhyZWYgPSAkaXRlbVsnbGluayddOwoJCSR0aXRsZSA9ICRpdGVtWyd0aXRsZSddOwoJCWVjaG8gIjxsaT48YSBocmVmPSRocmVmPiR0aXRsZTwvYT48L2xpPiI7Cgl9CgllY2hvICI8L3VsPiI7CgpERVNDUklQVElPTgoKCU1hcGllUlNTIGlzIGFuIFhNTC1iYXNlZCBSU1MgcGFyc2VyIGluIFBIUC4gIEl0IGF0dGVtcHRzIHRvIGJlICJQSFAtbGlrZSIsCglhbmQgc2ltcGxlIHRvIHVzZS4KCQoJU29tZSBmZWF0dXJlcyBpbmNsdWRlOgoJCgkqIHN1cHBvcnRzIFJTUyAwLjkgLSAxLjAsIHdpdGggbGltaXRlZCBSU1MgMi4wIHN1cHBvcnQKCSogc3VwcG9ydHMgbmFtZXNwYWNlcywgYW5kIG1vZHVsZXMsIGluY2x1ZGluZyBtb2RfY29udGVudCBhbmQgbW9kX2V2ZW50CgkqIG9wZW4gbWluZGVkIFsxXQoJKiBzaW1wbGUsIGZ1bmN0aW9uYWwgaW50ZXJmYWNlLCB0byBvYmplY3Qgb3JpZW50ZWQgYmFja2VuZCBwYXJzZXIKCSogYXV0b21hdGljIGNhY2hpbmcgb2YgcGFyc2VkIFJTUyBvYmplY3RzIG1ha2VzIGl0cyBlYXN5IHRvIGludGVncmF0ZQoJKiBzdXBwb3J0cyBjb25kaXRpb25hbCBHRVQgd2l0aCBMYXN0LU1vZGlmaWVkLCBhbmQgRVRhZwoJKiB1c2VzIGNvbnN0YW50cyBmb3IgZWFzeSBvdmVycmlkZSBvZiBkZWZhdWx0IGJlaGF2aW91ciAKCSogaGVhdmlseSBjb21tZW50ZWQKCgoxLiBCeSBvcGVuIG1pbmRlZCBJIG1lYW4gTWFncGllIHdpbGwgYWNjZXB0IGFueSB0YWcgaXQgZmluZHMgaW4gZ29vZCBmYWl0aCB0aGF0CiAgIGl0IHdhcyBzdXBwb3NlZCB0byBiZSBoZXJlLiAgRm9yIHN0cmljdCB2YWxpZGF0aW9uLCBsb29rIGVsc2V3aGVyZS4KCgpHRVRUSU5HIFNUQVJURUQKCgkKCkNPUFlSSUdIVDoKCUNvcHlyaWdodChjKSAyMDAyIGtlbGxhbkBwcm90ZXN0Lm5ldC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KCVRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlLgoJUGxlYXNlIHJlYWQgdGhlIGRpc2NsYWltZXIgYXQgdGhlIHRvcCBvZiB0aGUgU25vb3B5LmNsYXNzLmluYyBmaWxlLgo=]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/rss_cache.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKLyoKICogUHJvamVjdDogICAgIE1hZ3BpZVJTUzogYSBzaW1wbGUgUlNTIGludGVncmF0aW9uIHRvb2wKICogRmlsZTogICAgICAgIHJzc19jYWNoZS5pbmMsIGEgc2ltcGxlLCByb2xsaW5nKG5vIEdDKSwgY2FjaGUgCiAqICAgICAgICAgICAgICBmb3IgUlNTIG9iamVjdHMsIGtleWVkIG9uIFVSTC4KICogQXV0aG9yOiAgICAgIEtlbGxhbiBFbGxpb3R0LU1jQ3JlYSA8a2VsbGFuQHByb3Rlc3QubmV0PgogKiBWZXJzaW9uOiAgICAgMC41MQogKiBMaWNlbnNlOiAgICAgR1BMCiAqCiAqIFRoZSBsYXN0ZXN0IHZlcnNpb24gb2YgTWFncGllUlNTIGNhbiBiZSBvYnRhaW5lZCBmcm9tOgogKiBodHRwOi8vbWFncGllcnNzLnNvdXJjZWZvcmdlLm5ldAogKgogKiBGb3IgcXVlc3Rpb25zLCBoZWxwLCBjb21tZW50cywgZGlzY3Vzc2lvbiwgZXRjLiwgcGxlYXNlIGpvaW4gdGhlCiAqIE1hZ3BpZSBtYWlsaW5nIGxpc3Q6CiAqIGh0dHA6Ly9saXN0cy5zb3VyY2Vmb3JnZS5uZXQvbGlzdHMvbGlzdGluZm8vbWFncGllcnNzLWdlbmVyYWwKICoKICovCgpjbGFzcyBSU1NDYWNoZSB7CiAgICB2YXIgJEJBU0VfQ0FDSEUgPSAnLi9jYWNoZSc7ICAgIC8vIHdoZXJlIHRoZSBjYWNoZSBmaWxlcyBhcmUgc3RvcmVkCiAgICB2YXIgJE1BWF9BR0UgICAgPSAzNjAwOyAgICAgICAgIC8vIHdoZW4gYXJlIGZpbGVzIHN0YWxlLCBkZWZhdWx0IG9uZSBob3VyCiAgICB2YXIgJEVSUk9SICAgICAgPSAiIjsgICAgICAgICAgIC8vIGFjY3VtdWxhdGUgZXJyb3IgbWVzc2FnZXMKICAgIAogICAgZnVuY3Rpb24gUlNTQ2FjaGUgKCRiYXNlPScnLCAkYWdlPScnKSB7CiAgICAgICAgaWYgKCAkYmFzZSApIHsKICAgICAgICAgICAgJHRoaXMtPkJBU0VfQ0FDSEUgPSAkYmFzZTsKICAgICAgICB9CiAgICAgICAgaWYgKCAkYWdlICkgewogICAgICAgICAgICAkdGhpcy0+TUFYX0FHRSA9ICRhZ2U7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8vIGF0dGVtcHQgdG8gbWFrZSB0aGUgY2FjaGUgZGlyZWN0b3J5CiAgICAgICAgaWYgKCAhIGZpbGVfZXhpc3RzKCAkdGhpcy0+QkFTRV9DQUNIRSApICkgewogICAgICAgICAgICAkc3RhdHVzID0gQG1rZGlyKCAkdGhpcy0+QkFTRV9DQUNIRSwgMDc1NSApOwogICAgICAgICAgICAKICAgICAgICAgICAgLy8gaWYgbWFrZSBmYWlsZWQgCiAgICAgICAgICAgIGlmICggISAkc3RhdHVzICkgewogICAgICAgICAgICAgICAgJHRoaXMtPmVycm9yKAogICAgICAgICAgICAgICAgICAgICJDYWNoZSBjb3VsZG4ndCBtYWtlIGRpciAnIiAuICR0aGlzLT5CQVNFX0NBQ0hFIC4gIicuIgogICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIAovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KlwKICAgIEZ1bmN0aW9uOiAgIHNldAogICAgUHVycG9zZTogICAgYWRkIGFuIGl0ZW0gdG8gdGhlIGNhY2hlLCBrZXllZCBvbiB1cmwKICAgIElucHV0OiAgICAgIHVybCBmcm9tIHdpY2ggdGhlIHJzcyBmaWxlIHdhcyBmZXRjaGVkCiAgICBPdXRwdXQ6ICAgICB0cnVlIG9uIHN1Y2VzcyAgClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwogICAgZnVuY3Rpb24gc2V0ICgkdXJsLCAkcnNzKSB7CiAgICAgICAgJHRoaXMtPkVSUk9SID0gIiI7CiAgICAgICAgJGNhY2hlX2ZpbGUgPSAkdGhpcy0+ZmlsZV9uYW1lKCAkdXJsICk7CiAgICAgICAgJGZwID0gQGZvcGVuKCAkY2FjaGVfZmlsZSwgJ3cnICk7CiAgICAgICAgCiAgICAgICAgaWYgKCAhICRmcCApIHsKICAgICAgICAgICAgJHRoaXMtPmVycm9yKAogICAgICAgICAgICAgICAgIkNhY2hlIHVuYWJsZSB0byBvcGVuIGZpbGUgZm9yIHdyaXRpbmc6ICRjYWNoZV9maWxlIgogICAgICAgICAgICApOwogICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgCiAgICAgICAgJGRhdGEgPSAkdGhpcy0+c2VyaWFsaXplKCAkcnNzICk7CiAgICAgICAgZndyaXRlKCAkZnAsICRkYXRhICk7CiAgICAgICAgZmNsb3NlKCAkZnAgKTsKICAgICAgICAKICAgICAgICByZXR1cm4gJGNhY2hlX2ZpbGU7CiAgICB9CiAgICAKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBGdW5jdGlvbjogICBnZXQKICAgIFB1cnBvc2U6ICAgIGZldGNoIGFuIGl0ZW0gZnJvbSB0aGUgY2FjaGUKICAgIElucHV0OiAgICAgIHVybCBmcm9tIHdpY2ggdGhlIHJzcyBmaWxlIHdhcyBmZXRjaGVkCiAgICBPdXRwdXQ6ICAgICBjYWNoZWQgb2JqZWN0IG9uIEhJVCwgZmFsc2Ugb24gTUlTUyAKXCo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovIAogICAgZnVuY3Rpb24gZ2V0ICgkdXJsKSB7CiAgICAgICAgJHRoaXMtPkVSUk9SID0gIiI7CiAgICAgICAgJGNhY2hlX2ZpbGUgPSAkdGhpcy0+ZmlsZV9uYW1lKCAkdXJsICk7CiAgICAgICAgCiAgICAgICAgaWYgKCAhIGZpbGVfZXhpc3RzKCAkY2FjaGVfZmlsZSApICkgewogICAgICAgICAgICAkdGhpcy0+ZGVidWcoIAogICAgICAgICAgICAgICAgIkNhY2hlIGRvZXNuJ3QgY29udGFpbjogJHVybCAoY2FjaGUgZmlsZTogJGNhY2hlX2ZpbGUpIgogICAgICAgICAgICApOwogICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgJGZwID0gQGZvcGVuKCRjYWNoZV9maWxlLCAncicpOwogICAgICAgIGlmICggISAkZnAgKSB7CiAgICAgICAgICAgICR0aGlzLT5lcnJvcigKICAgICAgICAgICAgICAgICJGYWlsZWQgdG8gb3BlbiBjYWNoZSBmaWxlIGZvciByZWFkaW5nOiAkY2FjaGVfZmlsZSIKICAgICAgICAgICAgKTsKICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGlmICgkZmlsZXNpemUgPSBmaWxlc2l6ZSgkY2FjaGVfZmlsZSkgKSB7CiAgICAgICAgCSRkYXRhID0gZnJlYWQoICRmcCwgZmlsZXNpemUoJGNhY2hlX2ZpbGUpICk7CiAgICAgICAgCSRyc3MgPSAkdGhpcy0+dW5zZXJpYWxpemUoICRkYXRhICk7CiAgICAgICAgCiAgICAgICAgCXJldHVybiAkcnNzOwogICAgCX0KICAgIAkKICAgIAlyZXR1cm4gMDsKICAgIH0KCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qXAogICAgRnVuY3Rpb246ICAgY2hlY2tfY2FjaGUKICAgIFB1cnBvc2U6ICAgIGNoZWNrIGEgdXJsIGZvciBtZW1iZXJzaGlwIGluIHRoZSBjYWNoZQogICAgICAgICAgICAgICAgYW5kIHdoZXRoZXIgdGhlIG9iamVjdCBpcyBvbGRlciB0aGVuIE1BWF9BR0UgKGllLiBTVEFMRSkKICAgIElucHV0OiAgICAgIHVybCBmcm9tIHdpY2ggdGhlIHJzcyBmaWxlIHdhcyBmZXRjaGVkCiAgICBPdXRwdXQ6ICAgICBjYWNoZWQgb2JqZWN0IG9uIEhJVCwgZmFsc2Ugb24gTUlTUyAKXCo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovICAgICAKICAgIGZ1bmN0aW9uIGNoZWNrX2NhY2hlICggJHVybCApIHsKICAgICAgICAkdGhpcy0+RVJST1IgPSAiIjsKICAgICAgICAkZmlsZW5hbWUgPSAkdGhpcy0+ZmlsZV9uYW1lKCAkdXJsICk7CiAgICAgICAgCiAgICAgICAgaWYgKCBmaWxlX2V4aXN0cyggJGZpbGVuYW1lICkgKSB7CiAgICAgICAgICAgIC8vIGZpbmQgaG93IGxvbmcgYWdvIHRoZSBmaWxlIHdhcyBhZGRlZCB0byB0aGUgY2FjaGUKICAgICAgICAgICAgLy8gYW5kIHdoZXRoZXIgdGhhdCBpcyBsb25nZXIgdGhlbiBNQVhfQUdFCiAgICAgICAgICAgICRtdGltZSA9IGZpbGVtdGltZSggJGZpbGVuYW1lICk7CiAgICAgICAgICAgICRhZ2UgPSB0aW1lKCkgLSAkbXRpbWU7CiAgICAgICAgICAgIGlmICggJHRoaXMtPk1BWF9BR0UgPiAkYWdlICkgewogICAgICAgICAgICAgICAgLy8gb2JqZWN0IGV4aXN0cyBhbmQgaXMgY3VycmVudAogICAgICAgICAgICAgICAgcmV0dXJuICdISVQnOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgLy8gb2JqZWN0IGV4aXN0cyBidXQgaXMgb2xkCiAgICAgICAgICAgICAgICByZXR1cm4gJ1NUQUxFJzsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgLy8gb2JqZWN0IGRvZXMgbm90IGV4aXN0CiAgICAgICAgICAgIHJldHVybiAnTUlTUyc7CiAgICAgICAgfQogICAgfQoKCWZ1bmN0aW9uIGNhY2hlX2FnZSggJGNhY2hlX2tleSApIHsKCQkkZmlsZW5hbWUgPSAkdGhpcy0+ZmlsZV9uYW1lKCAkdXJsICk7CgkJaWYgKCBmaWxlX2V4aXN0cyggJGZpbGVuYW1lICkgKSB7CgkJCSRtdGltZSA9IGZpbGVtdGltZSggJGZpbGVuYW1lICk7CiAgICAgICAgICAgICRhZ2UgPSB0aW1lKCkgLSAkbXRpbWU7CgkJCXJldHVybiAkYWdlOwoJCX0KCQllbHNlIHsKCQkJcmV0dXJuIC0xOwkKCQl9Cgl9CgkKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBGdW5jdGlvbjogICBzZXJpYWxpemUKXCo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovICAgICAKICAgIGZ1bmN0aW9uIHNlcmlhbGl6ZSAoICRyc3MgKSB7CiAgICAgICAgcmV0dXJuIHNlcmlhbGl6ZSggJHJzcyApOwogICAgfQoKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBGdW5jdGlvbjogICB1bnNlcmlhbGl6ZQpcKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8gICAgIAogICAgZnVuY3Rpb24gdW5zZXJpYWxpemUgKCAkZGF0YSApIHsKICAgICAgICByZXR1cm4gdW5zZXJpYWxpemUoICRkYXRhICk7CiAgICB9CiAgICAKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBGdW5jdGlvbjogICBmaWxlX25hbWUKICAgIFB1cnBvc2U6ICAgIG1hcCB1cmwgdG8gbG9jYXRpb24gaW4gY2FjaGUKICAgIElucHV0OiAgICAgIHVybCBmcm9tIHdpY2ggdGhlIHJzcyBmaWxlIHdhcyBmZXRjaGVkCiAgICBPdXRwdXQ6ICAgICBhIGZpbGUgbmFtZQpcKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8gICAgIAogICAgZnVuY3Rpb24gZmlsZV9uYW1lICgkdXJsKSB7CiAgICAgICAgJGZpbGVuYW1lID0gbWQ1KCAkdXJsICk7CiAgICAgICAgcmV0dXJuIGpvaW4oIERJUkVDVE9SWV9TRVBBUkFUT1IsIGFycmF5KCAkdGhpcy0+QkFTRV9DQUNIRSwgJGZpbGVuYW1lICkgKTsKICAgIH0KCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qXAogICAgRnVuY3Rpb246ICAgZXJyb3IKICAgIFB1cnBvc2U6ICAgIHJlZ2lzdGVyIGVycm9yClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLyAgICAgICAgIAogICAgZnVuY3Rpb24gZXJyb3IgKCRlcnJvcm1zZywgJGx2bD1FX1VTRVJfV0FSTklORykgewogICAgICAgIC8vIGFwcGVuZCBQSFAncyBlcnJvciBtZXNzYWdlIGlmIHRyYWNrX2Vycm9ycyBlbmFibGVkCiAgICAgICAgaWYgKCBpc3NldCgkcGhwX2Vycm9ybXNnKSApIHsgCiAgICAgICAgICAgICRlcnJvcm1zZyAuPSAiICgkcGhwX2Vycm9ybXNnKSI7CiAgICAgICAgfQogICAgICAgICR0aGlzLT5FUlJPUiA9ICRlcnJvcm1zZzsKICAgICAgICBpZiAoIE1BR1BJRV9ERUJVRyApIHsKICAgICAgICAgICAgdHJpZ2dlcl9lcnJvciggJGVycm9ybXNnLCAkbHZsKTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIGVycm9yX2xvZyggJGVycm9ybXNnLCAwKTsKICAgICAgICB9CiAgICB9CiAgICAKICAgIGZ1bmN0aW9uIGRlYnVnICgkZGVidWdtc2csICRsdmw9RV9VU0VSX05PVElDRSkgewogICAgICAgIGlmICggTUFHUElFX0RFQlVHICkgewogICAgICAgICAgICAkdGhpcy0+ZXJyb3IoIk1hZ3BpZVJTUyBbZGVidWddICRkZWJ1Z21zZyIsICRsdmwpOwogICAgICAgIH0KICAgIH0KCn0KCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/rss_fetch.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKLyoKICogUHJvamVjdDogICAgIE1hZ3BpZVJTUzogYSBzaW1wbGUgUlNTIGludGVncmF0aW9uIHRvb2wKICogRmlsZTogICAgICAgIHJzc19mZXRjaC5pbmMsIGEgc2ltcGxlIGZ1bmN0aW9uYWwgaW50ZXJmYWNlCiAgICAgICAgICAgICAgICB0byBmZXRjaGluZyBhbmQgcGFyc2luZyBSU1MgZmlsZXMsIHZpYSB0aGUKICAgICAgICAgICAgICAgIGZ1bmN0aW9uIGZldGNoX3JzcygpCiAqIEF1dGhvcjogICAgICBLZWxsYW4gRWxsaW90dC1NY0NyZWEgPGtlbGxhbkBwcm90ZXN0Lm5ldD4KICogTGljZW5zZTogICAgIEdQTAogKgogKiBUaGUgbGFzdGVzdCB2ZXJzaW9uIG9mIE1hZ3BpZVJTUyBjYW4gYmUgb2J0YWluZWQgZnJvbToKICogaHR0cDovL21hZ3BpZXJzcy5zb3VyY2Vmb3JnZS5uZXQKICoKICogRm9yIHF1ZXN0aW9ucywgaGVscCwgY29tbWVudHMsIGRpc2N1c3Npb24sIGV0Yy4sIHBsZWFzZSBqb2luIHRoZQogKiBNYWdwaWUgbWFpbGluZyBsaXN0OgogKiBtYWdwaWVyc3MtZ2VuZXJhbEBsaXN0cy5zb3VyY2Vmb3JnZS5uZXQKICoKICovCiAKLy8gU2V0dXAgTUFHUElFX0RJUiBmb3IgdXNlIG9uIGhvc3RzIHRoYXQgZG9uJ3QgaW5jbHVkZQovLyB0aGUgY3VycmVudCBwYXRoIGluIGluY2x1ZGVfcGF0aC4KLy8gd2l0aCB0aGFua3MgdG8gcmFqaXYgYW5kIHNtYXJ0eQppZiAoIWRlZmluZWQoJ0RJUl9TRVAnKSkgewogICAgZGVmaW5lKCdESVJfU0VQJywgRElSRUNUT1JZX1NFUEFSQVRPUik7Cn0KCmlmICghZGVmaW5lZCgnTUFHUElFX0RJUicpKSB7CiAgICBkZWZpbmUoJ01BR1BJRV9ESVInLCBkaXJuYW1lKF9fRklMRV9fKSAuIERJUl9TRVApOwp9CgpyZXF1aXJlX29uY2UoIE1BR1BJRV9ESVIgLiAncnNzX3BhcnNlLmluYycgKTsKcmVxdWlyZV9vbmNlKCBNQUdQSUVfRElSIC4gJ3Jzc19jYWNoZS5pbmMnICk7CgovLyBmb3IgaW5jbHVkaW5nIDNyZCBwYXJ0eSBsaWJyYXJpZXMKZGVmaW5lKCdNQUdQSUVfRVhUTElCJywgTUFHUElFX0RJUiAuICdleHRsaWInIC4gRElSX1NFUCk7CnJlcXVpcmVfb25jZSggTUFHUElFX0VYVExJQiAuICdTbm9vcHkuY2xhc3MuaW5jJyk7CgoKLyogCiAqIENPTlNUQU5UUyAtIHJlZGVmaW5lIHRoZXNlIGluIHlvdXIgc2NyaXB0IHRvIGNoYW5nZSB0aGUKICogYmVoYXZpb3VyIG9mIGZldGNoX3JzcygpIGN1cnJlbnRseSwgbW9zdCBvcHRpb25zIGVmZmVjdCB0aGUgY2FjaGUKICoKICogTUFHUElFX0NBQ0hFX09OIC0gU2hvdWxkIE1hZ3BpZSBjYWNoZSBwYXJzZWQgUlNTIG9iamVjdHM/IAogKiBGb3IgbWUgYSBidWlsdCBpbiBjYWNoZSB3YXMgZXNzZW50aWFsIHRvIGNyZWF0aW5nIGEgIlBIUC1saWtlIiAKICogZmVlbCB0byBNYWdwaWUsIHNlZSByc3NfY2FjaGUuaW5jIGZvciByYXRpb25hbGUKICoKICoKICogTUFHUElFX0NBQ0hFX0RJUiAtIFdoZXJlIHNob3VsZCBNYWdwaWUgY2FjaGUgcGFyc2VkIFJTUyBvYmplY3RzPwogKiBUaGlzIHNob3VsZCBiZSBhIGxvY2F0aW9uIHRoYXQgdGhlIHdlYnNlcnZlciBjYW4gd3JpdGUgdG8uICAgSWYgdGhpcyAKICogZGlyZWN0b3J5IGRvZXMgbm90IGFscmVhZHkgZXhpc3QgTWFwaWUgd2lsbCB0cnkgdG8gYmUgc21hcnQgYW5kIGNyZWF0ZSAKICogaXQuICBUaGlzIHdpbGwgb2Z0ZW4gZmFpbCBmb3IgcGVybWlzc2lvbnMgcmVhc29ucy4KICoKICoKICogTUFHUElFX0NBQ0hFX0FHRSAtIEhvdyBsb25nIHRvIHN0b3JlIGNhY2hlZCBSU1Mgb2JqZWN0cz8gSW4gc2Vjb25kcy4KICoKICoKICogTUFHUElFX0NBQ0hFX0ZSRVNIX09OTFkgLSBJZiByZW1vdGUgZmV0Y2ggZmFpbHMsIHRocm93IGVycm9yCiAqIGluc3RlYWQgb2YgcmV0dXJuaW5nIHN0YWxlIG9iamVjdD8KICoKICogTUFHUElFX0RFQlVHIC0gRGlzcGxheSBkZWJ1Z2dpbmcgbm90aWNlcz8KICoKKi8KCgovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KlwKICAgIEZ1bmN0aW9uOiBmZXRjaF9yc3M6IAogICAgUHVycG9zZTogIHJldHVybiBSU1Mgb2JqZWN0IGZvciB0aGUgZ2l2ZSB1cmwKICAgICAgICAgICAgICBtYWludGFpbiB0aGUgY2FjaGUKICAgIElucHV0OiAgICB1cmwgb2YgUlNTIGZpbGUKICAgIE91dHB1dDogICBwYXJzZWQgUlNTIG9iamVjdCAoc2VlIHJzc19wYXJzZS5pbmMpCgogICAgTk9URVMgT04gQ0FDSEVJTkc6ICAKICAgIElmIGNhY2hpbmcgaXMgb24gKE1BR1BJRV9DQUNIRV9PTikgZmV0Y2hfcnNzIHdpbGwgZmlyc3QgY2hlY2sgdGhlIGNhY2hlLgogICAgCiAgICBOT1RFUyBPTiBSRVRSSUVWSU5HIFJFTU9URSBGSUxFUzoKICAgIElmIGNvbmRpdGlvbmFsIGdldHMgYXJlIG9uIChNQUdQSUVfQ09ORElUSU9OQUxfR0VUX09OKSBmZXRjaF9yc3Mgd2lsbAogICAgcmV0dXJuIGEgY2FjaGVkIG9iamVjdCwgYW5kIHRvdWNoIHRoZSBjYWNoZSBvYmplY3QgdXBvbiByZWNpZXZpbmcgYQogICAgMzA0LgogICAgCiAgICBOT1RFUyBPTiBGQUlMRUQgUkVRVUVTVFM6CiAgICBJZiB0aGVyZSBpcyBhbiBIVFRQIGVycm9yIHdoaWxlIGZldGNoaW5nIGFuIFJTUyBvYmplY3QsIHRoZSBjYWNoZWQKICAgIHZlcnNpb24gd2lsbCBiZSByZXR1cm4sIGlmIGl0IGV4aXN0cyAoYW5kIGlmIE1BR1BJRV9DQUNIRV9GUkVTSF9PTkxZIGlzIG9mZikKXCo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCgpkZWZpbmUoJ01BR1BJRV9WRVJTSU9OJywgJzAuNzlhJyk7CgokTUFHUElFX0VSUk9SID0gIiI7CgpmdW5jdGlvbiBmZXRjaF9yc3MgKCR1cmwpIHsKICAgIC8vIGluaXRpYWxpemUgY29uc3RhbnRzCiAgICBpbml0KCk7CiAgICAKICAgIGlmICggIWlzc2V0KCR1cmwpICkgewogICAgICAgIGVycm9yKCJmZXRjaF9yc3MgY2FsbGVkIHdpdGhvdXQgYSB1cmwiKTsKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9CiAgICAKICAgIC8vIGlmIGNhY2hlIGlzIGRpc2FibGVkCiAgICBpZiAoICFNQUdQSUVfQ0FDSEVfT04gKSB7CiAgICAgICAgLy8gZmV0Y2ggZmlsZSwgYW5kIHBhcnNlIGl0CiAgICAgICAgJHJlc3AgPSBfZmV0Y2hfcmVtb3RlX2ZpbGUoICR1cmwgKTsKICAgICAgICBpZiAoIGlzX3N1Y2Nlc3MoICRyZXNwLT5zdGF0dXMgKSApIHsKICAgICAgICAgICAgcmV0dXJuIF9yZXNwb25zZV90b19yc3MoICRyZXNwICk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICBlcnJvcigiRmFpbGVkIHRvIGZldGNoICR1cmwgYW5kIGNhY2hlIGlzIG9mZiIpOwogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgfSAKICAgIC8vIGVsc2UgY2FjaGUgaXMgT04KICAgIGVsc2UgewogICAgICAgIC8vIEZsb3cKICAgICAgICAvLyAxLiBjaGVjayBjYWNoZQogICAgICAgIC8vIDIuIGlmIHRoZXJlIGlzIGEgaGl0LCBtYWtlIHN1cmUgaXRzIGZyZXNoCiAgICAgICAgLy8gMy4gaWYgY2FjaGVkIG9iaiBmYWlscyBmcmVzaG5lc3MgY2hlY2ssIGZldGNoIHJlbW90ZQogICAgICAgIC8vIDQuIGlmIHJlbW90ZSBmYWlscywgcmV0dXJuIHN0YWxlIG9iamVjdCwgb3IgZXJyb3IKICAgICAgICAKICAgICAgICAkY2FjaGUgPSBuZXcgUlNTQ2FjaGUoIE1BR1BJRV9DQUNIRV9ESVIsIE1BR1BJRV9DQUNIRV9BR0UgKTsKICAgICAgICAKICAgICAgICBpZiAoTUFHUElFX0RFQlVHIGFuZCAkY2FjaGUtPkVSUk9SKSB7CiAgICAgICAgICAgIGRlYnVnKCRjYWNoZS0+RVJST1IsIEVfVVNFUl9XQVJOSU5HKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgCiAgICAgICAgJGNhY2hlX3N0YXR1cyAgICA9IDA7ICAgICAgIC8vIHJlc3BvbnNlIG9mIGNoZWNrX2NhY2hlCiAgICAgICAgJHJlcXVlc3RfaGVhZGVycyA9IGFycmF5KCk7IC8vIEhUVFAgaGVhZGVycyB0byBzZW5kIHdpdGggZmV0Y2gKICAgICAgICAkcnNzICAgICAgICAgICAgID0gMDsgICAgICAgLy8gcGFyc2VkIFJTUyBvYmplY3QKICAgICAgICAkZXJyb3Jtc2cgICAgICAgID0gMDsgICAgICAgLy8gZXJyb3JzLCBpZiBhbnkKICAgICAgICAKICAgICAgICAvLyBzdG9yZSBwYXJzZWQgWE1MIGJ5IGRlc2lyZWQgb3V0cHV0IGVuY29kaW5nCiAgICAgICAgLy8gYXMgY2hhcmFjdGVyIG11bmdpbmcgaGFwcGVucyBhdCBwYXJzZSB0aW1lCiAgICAgICAgJGNhY2hlX2tleSAgICAgICA9ICR1cmwgLiBNQUdQSUVfT1VUUFVUX0VOQ09ESU5HOwogICAgICAgIAogICAgICAgIGlmICghJGNhY2hlLT5FUlJPUikgewogICAgICAgICAgICAvLyByZXR1cm4gY2FjaGUgSElULCBNSVNTLCBvciBTVEFMRQogICAgICAgICAgICAkY2FjaGVfc3RhdHVzID0gJGNhY2hlLT5jaGVja19jYWNoZSggJGNhY2hlX2tleSk7CiAgICAgICAgfQogICAgICAgICAgICAgICAgCiAgICAgICAgLy8gaWYgb2JqZWN0IGNhY2hlZCwgYW5kIGNhY2hlIGlzIGZyZXNoLCByZXR1cm4gY2FjaGVkIG9iagogICAgICAgIGlmICggJGNhY2hlX3N0YXR1cyA9PSAnSElUJyApIHsKICAgICAgICAgICAgJHJzcyA9ICRjYWNoZS0+Z2V0KCAkY2FjaGVfa2V5ICk7CiAgICAgICAgICAgIGlmICggaXNzZXQoJHJzcykgYW5kICRyc3MgKSB7CiAgICAgICAgICAgICAgICAvLyBzaG91bGQgYmUgY2FjaGUgYWdlCiAgICAgICAgICAgICAgICAkcnNzLT5mcm9tX2NhY2hlID0gMTsKICAgICAgICAgICAgICAgIGlmICggTUFHUElFX0RFQlVHID4gMSkgewogICAgICAgICAgICAgICAgICAgIGRlYnVnKCJNYWdwaWVSU1M6IENhY2hlIEhJVCIsIEVfVVNFUl9OT1RJQ0UpOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgcmV0dXJuICRyc3M7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLy8gZWxzZSBhdHRlbXB0IGEgY29uZGl0aW9uYWwgZ2V0CiAgICAgICAgCiAgICAgICAgLy8gc2V0dXAgaGVhZGVycwogICAgICAgIGlmICggJGNhY2hlX3N0YXR1cyA9PSAnU1RBTEUnICkgewogICAgICAgICAgICAkcnNzID0gJGNhY2hlLT5nZXQoICRjYWNoZV9rZXkgKTsKICAgICAgICAgICAgaWYgKCAkcnNzIGFuZCAkcnNzLT5ldGFnIGFuZCAkcnNzLT5sYXN0X21vZGlmaWVkICkgewogICAgICAgICAgICAgICAgJHJlcXVlc3RfaGVhZGVyc1snSWYtTm9uZS1NYXRjaCddID0gJHJzcy0+ZXRhZzsKICAgICAgICAgICAgICAgICRyZXF1ZXN0X2hlYWRlcnNbJ0lmLUxhc3QtTW9kaWZpZWQnXSA9ICRyc3MtPmxhc3RfbW9kaWZpZWQ7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgCiAgICAgICAgJHJlc3AgPSBfZmV0Y2hfcmVtb3RlX2ZpbGUoICR1cmwsICRyZXF1ZXN0X2hlYWRlcnMgKTsKICAgICAgICAKICAgICAgICBpZiAoaXNzZXQoJHJlc3ApIGFuZCAkcmVzcCkgewogICAgICAgICAgaWYgKCRyZXNwLT5zdGF0dXMgPT0gJzMwNCcgKSB7CiAgICAgICAgICAgICAgICAvLyB3ZSBoYXZlIHRoZSBtb3N0IGN1cnJlbnQgY29weQogICAgICAgICAgICAgICAgaWYgKCBNQUdQSUVfREVCVUcgPiAxKSB7CiAgICAgICAgICAgICAgICAgICAgZGVidWcoIkdvdCAzMDQgZm9yICR1cmwiKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIC8vIHJlc2V0IGNhY2hlIG9uIDMwNCAoYXQgbWludXRpbGxvIGluc2lzdGVudCBwcm9kZGluZykKICAgICAgICAgICAgICAgICRjYWNoZS0+c2V0KCRjYWNoZV9rZXksICRyc3MpOwogICAgICAgICAgICAgICAgcmV0dXJuICRyc3M7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZWlmICggaXNfc3VjY2VzcyggJHJlc3AtPnN0YXR1cyApICkgewogICAgICAgICAgICAgICAgJHJzcyA9IF9yZXNwb25zZV90b19yc3MoICRyZXNwICk7CiAgICAgICAgICAgICAgICBpZiAoICRyc3MgKSB7CiAgICAgICAgICAgICAgICAgICAgaWYgKE1BR1BJRV9ERUJVRyA+IDEpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZGVidWcoIkZldGNoIHN1Y2Nlc3NmdWwiKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgLy8gYWRkIG9iamVjdCB0byBjYWNoZQogICAgICAgICAgICAgICAgICAgICRjYWNoZS0+c2V0KCAkY2FjaGVfa2V5LCAkcnNzICk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuICRyc3M7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgICAkZXJyb3Jtc2cgPSAiRmFpbGVkIHRvIGZldGNoICR1cmwgIjsKICAgICAgICAgICAgICAgIGlmICggJHJlc3AtPnN0YXR1cyA9PSAnLTEwMCcgKSB7CiAgICAgICAgICAgICAgICAgICAgJGVycm9ybXNnIC49ICIoUmVxdWVzdCB0aW1lZCBvdXQgYWZ0ZXIgIiAuIE1BR1BJRV9GRVRDSF9USU1FX09VVCAuICIgc2Vjb25kcykiOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZWlmICggJHJlc3AtPmVycm9yICkgewogICAgICAgICAgICAgICAgICAgICMgY29tcGVuc2F0ZSBmb3IgU25vb3B5J3MgYW5ub3lpbmcgaGFiYml0IHRvIHRhY2tpbmcKICAgICAgICAgICAgICAgICAgICAjIG9uICdcbicKICAgICAgICAgICAgICAgICAgICAkaHR0cF9lcnJvciA9IHN1YnN0cigkcmVzcC0+ZXJyb3IsIDAsIC0yKTsgCiAgICAgICAgICAgICAgICAgICAgJGVycm9ybXNnIC49ICIoSFRUUCBFcnJvcjogJGh0dHBfZXJyb3IpIjsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICAgICAgICRlcnJvcm1zZyAuPSAgIihIVFRQIFJlc3BvbnNlOiAiIC4gJHJlc3AtPnJlc3BvbnNlX2NvZGUgLicpJzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgJGVycm9ybXNnID0gIlVuYWJsZSB0byByZXRyaWV2ZSBSU1MgZmlsZSBmb3IgdW5rbm93biByZWFzb25zLiI7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIC8vIGVsc2UgZmV0Y2ggZmFpbGVkCiAgICAgICAgCiAgICAgICAgLy8gYXR0ZW1wdCB0byByZXR1cm4gY2FjaGVkIG9iamVjdAogICAgICAgIGlmICgkcnNzKSB7CiAgICAgICAgICAgIGlmICggTUFHUElFX0RFQlVHICkgewogICAgICAgICAgICAgICAgZGVidWcoIlJldHVybmluZyBTVEFMRSBvYmplY3QgZm9yICR1cmwiKTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gJHJzczsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLy8gZWxzZSB3ZSB0b3RhbGx5IGZhaWxlZAogICAgICAgIGVycm9yKCAkZXJyb3Jtc2cgKTsgCiAgICAgICAgCiAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIAogICAgfSAvLyBlbmQgaWYgKCAhTUFHUElFX0NBQ0hFX09OICkgewp9IC8vIGVuZCBmZXRjaF9yc3MoKQoKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBGdW5jdGlvbjogICBlcnJvcgogICAgUHVycG9zZTogICAgc2V0IE1BR1BJRV9FUlJPUiwgYW5kIHRyaWdnZXIgZXJyb3IKXCo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCgpmdW5jdGlvbiBlcnJvciAoJGVycm9ybXNnLCAkbHZsPUVfVVNFUl9XQVJOSU5HKSB7CiAgICAgICAgZ2xvYmFsICRNQUdQSUVfRVJST1I7CiAgICAgICAgCiAgICAgICAgLy8gYXBwZW5kIFBIUCdzIGVycm9yIG1lc3NhZ2UgaWYgdHJhY2tfZXJyb3JzIGVuYWJsZWQKICAgICAgICBpZiAoIGlzc2V0KCRwaHBfZXJyb3Jtc2cpICkgeyAKICAgICAgICAgICAgJGVycm9ybXNnIC49ICIgKCRwaHBfZXJyb3Jtc2cpIjsKICAgICAgICB9CiAgICAgICAgaWYgKCAkZXJyb3Jtc2cgKSB7CiAgICAgICAgICAgICRlcnJvcm1zZyA9ICJNYWdwaWVSU1M6ICRlcnJvcm1zZyI7CiAgICAgICAgICAgICRNQUdQSUVfRVJST1IgPSAkZXJyb3Jtc2c7CiAgICAgICAgICAgIHRyaWdnZXJfZXJyb3IoICRlcnJvcm1zZywgJGx2bCk7ICAgICAgICAgICAgICAgIAogICAgICAgIH0KfQoKZnVuY3Rpb24gZGVidWcgKCRkZWJ1Z21zZywgJGx2bD1FX1VTRVJfTk9USUNFKSB7CiAgICB0cmlnZ2VyX2Vycm9yKCJNYWdwaWVSU1MgW2RlYnVnXSAkZGVidWdtc2ciLCAkbHZsKTsKfQogICAgICAgICAgICAKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBGdW5jdGlvbjogICBtYWdwaWVfZXJyb3IKICAgIFB1cnBvc2U6ICAgIGFjY2Vzc29yIGZvciB0aGUgbWFncGllIGVycm9yIHZhcmlhYmxlClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwpmdW5jdGlvbiBtYWdwaWVfZXJyb3IgKCRlcnJvcm1zZz0iIikgewogICAgZ2xvYmFsICRNQUdQSUVfRVJST1I7CiAgICAKICAgIGlmICggaXNzZXQoJGVycm9ybXNnKSBhbmQgJGVycm9ybXNnICkgeyAKICAgICAgICAkTUFHUElFX0VSUk9SID0gJGVycm9ybXNnOwogICAgfQogICAgCiAgICByZXR1cm4gJE1BR1BJRV9FUlJPUjsgICAKfQoKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBGdW5jdGlvbjogICBfZmV0Y2hfcmVtb3RlX2ZpbGUKICAgIFB1cnBvc2U6ICAgIHJldHJpZXZlIGFuIGFyYml0cmFyeSByZW1vdGUgZmlsZQogICAgSW5wdXQ6ICAgICAgdXJsIG9mIHRoZSByZW1vdGUgZmlsZQogICAgICAgICAgICAgICAgaGVhZGVycyB0byBzZW5kIGFsb25nIHdpdGggdGhlIHJlcXVlc3QgKG9wdGlvbmFsKQogICAgT3V0cHV0OiAgICAgYW4gSFRUUCByZXNwb25zZSBvYmplY3QgKHNlZSBTbm9vcHkuY2xhc3MuaW5jKSAgClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwpmdW5jdGlvbiBfZmV0Y2hfcmVtb3RlX2ZpbGUgKCR1cmwsICRoZWFkZXJzID0gIiIgKSB7CiAgICAvLyBTbm9vcHkgaXMgYW4gSFRUUCBjbGllbnQgaW4gUEhQCiAgICAkY2xpZW50ID0gbmV3IFNub29weSgpOwogICAgJGNsaWVudC0+YWdlbnQgPSBNQUdQSUVfVVNFUl9BR0VOVDsKICAgICRjbGllbnQtPnJlYWRfdGltZW91dCA9IE1BR1BJRV9GRVRDSF9USU1FX09VVDsKICAgICRjbGllbnQtPnVzZV9nemlwID0gTUFHUElFX1VTRV9HWklQOwogICAgaWYgKGlzX2FycmF5KCRoZWFkZXJzKSApIHsKICAgICAgICAkY2xpZW50LT5yYXdoZWFkZXJzID0gJGhlYWRlcnM7CiAgICB9CiAgICAKICAgIEAkY2xpZW50LT5mZXRjaCgkdXJsKTsKICAgIHJldHVybiAkY2xpZW50OwoKfQoKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBGdW5jdGlvbjogICBfcmVzcG9uc2VfdG9fcnNzCiAgICBQdXJwb3NlOiAgICBwYXJzZSBhbiBIVFRQIHJlc3BvbnNlIG9iamVjdCBpbnRvIGFuIFJTUyBvYmplY3QKICAgIElucHV0OiAgICAgIGFuIEhUVFAgcmVzcG9uc2Ugb2JqZWN0IChzZWUgU25vb3B5KQogICAgT3V0cHV0OiAgICAgcGFyc2VkIFJTUyBvYmplY3QgKHNlZSByc3NfcGFyc2UpClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwpmdW5jdGlvbiBfcmVzcG9uc2VfdG9fcnNzICgkcmVzcCkgewogICAgJHJzcyA9IG5ldyBNYWdwaWVSU1MoICRyZXNwLT5yZXN1bHRzLCBNQUdQSUVfT1VUUFVUX0VOQ09ESU5HLCBNQUdQSUVfSU5QVVRfRU5DT0RJTkcsIE1BR1BJRV9ERVRFQ1RfRU5DT0RJTkcgKTsKICAgIAogICAgLy8gaWYgUlNTIHBhcnNlZCBzdWNjZXNzZnVsbHkgICAgICAgCiAgICBpZiAoICRyc3MgYW5kICEkcnNzLT5FUlJPUikgewogICAgICAgIAogICAgICAgIC8vIGZpbmQgRXRhZywgYW5kIExhc3QtTW9kaWZpZWQKICAgICAgICBmb3JlYWNoKCRyZXNwLT5oZWFkZXJzIGFzICRoKSB7CiAgICAgICAgICAgIC8vIDIwMDMtMDMtMDIgLSBOaWNvbGEgQXN1bmkgKHd3dy50ZWNuaWNrLmNvbSkgLSBmaXhlZCBidWcgIlVuZGVmaW5lZCBvZmZzZXQ6IDEiCiAgICAgICAgICAgIGlmIChzdHJwb3MoJGgsICI6ICIpKSB7CiAgICAgICAgICAgICAgICBsaXN0KCRmaWVsZCwgJHZhbCkgPSBleHBsb2RlKCI6ICIsICRoLCAyKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICRmaWVsZCA9ICRoOwogICAgICAgICAgICAgICAgJHZhbCA9ICIiOwogICAgICAgICAgICB9CiAgICAgICAgICAgIAogICAgICAgICAgICBpZiAoICRmaWVsZCA9PSAnRVRhZycgKSB7CiAgICAgICAgICAgICAgICAkcnNzLT5ldGFnID0gJHZhbDsKICAgICAgICAgICAgfQogICAgICAgICAgICAKICAgICAgICAgICAgaWYgKCAkZmllbGQgPT0gJ0xhc3QtTW9kaWZpZWQnICkgewogICAgICAgICAgICAgICAgJHJzcy0+bGFzdF9tb2RpZmllZCA9ICR2YWw7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgCiAgICAgICAgcmV0dXJuICRyc3M7ICAgIAogICAgfSAvLyBlbHNlIGNvbnN0cnVjdCBlcnJvciBtZXNzYWdlCiAgICBlbHNlIHsKICAgICAgICAkZXJyb3Jtc2cgPSAiRmFpbGVkIHRvIHBhcnNlIFJTUyBmaWxlLiI7CiAgICAgICAgCiAgICAgICAgaWYgKCRyc3MpIHsKICAgICAgICAgICAgJGVycm9ybXNnIC49ICIgKCIgLiAkcnNzLT5FUlJPUiAuICIpIjsKICAgICAgICB9CiAgICAgICAgZXJyb3IoJGVycm9ybXNnKTsKICAgICAgICAKICAgICAgICByZXR1cm4gZmFsc2U7CiAgICB9IC8vIGVuZCBpZiAoJHJzcyBhbmQgISRyc3MtPmVycm9yKQp9CgovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KlwKICAgIEZ1bmN0aW9uOiAgIGluaXQKICAgIFB1cnBvc2U6ICAgIHNldHVwIGNvbnN0YW50cyB3aXRoIGRlZmF1bHQgdmFsdWVzCiAgICAgICAgICAgICAgICBjaGVjayBmb3IgdXNlciBvdmVycmlkZXMKXCo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCmZ1bmN0aW9uIGluaXQgKCkgewogICAgaWYgKCBkZWZpbmVkKCdNQUdQSUVfSU5JVEFMSVpFRCcpICkgewogICAgICAgIHJldHVybjsKICAgIH0KICAgIGVsc2UgewogICAgICAgIGRlZmluZSgnTUFHUElFX0lOSVRBTElaRUQnLCB0cnVlKTsKICAgIH0KICAgIAogICAgaWYgKCAhZGVmaW5lZCgnTUFHUElFX0NBQ0hFX09OJykgKSB7CiAgICAgICAgZGVmaW5lKCdNQUdQSUVfQ0FDSEVfT04nLCB0cnVlKTsKICAgIH0KCiAgICBpZiAoICFkZWZpbmVkKCdNQUdQSUVfQ0FDSEVfRElSJykgKSB7CiAgICAgICAgZGVmaW5lKCdNQUdQSUVfQ0FDSEVfRElSJywgJy4vY2FjaGUnKTsKICAgIH0KCiAgICBpZiAoICFkZWZpbmVkKCdNQUdQSUVfQ0FDSEVfQUdFJykgKSB7CiAgICAgICAgZGVmaW5lKCdNQUdQSUVfQ0FDSEVfQUdFJywgNjAqNjApOyAvLyBvbmUgaG91cgogICAgfQoKICAgIGlmICggIWRlZmluZWQoJ01BR1BJRV9DQUNIRV9GUkVTSF9PTkxZJykgKSB7CiAgICAgICAgZGVmaW5lKCdNQUdQSUVfQ0FDSEVfRlJFU0hfT05MWScsIGZhbHNlKTsKICAgIH0KCiAgICBpZiAoICFkZWZpbmVkKCdNQUdQSUVfT1VUUFVUX0VOQ09ESU5HJykgKSB7CiAgICAgICAgZGVmaW5lKCdNQUdQSUVfT1VUUFVUX0VOQ09ESU5HJywgJ0lTTy04ODU5LTEnKTsKICAgIH0KICAgIAogICAgaWYgKCAhZGVmaW5lZCgnTUFHUElFX0lOUFVUX0VOQ09ESU5HJykgKSB7CiAgICAgICAgZGVmaW5lKCdNQUdQSUVfSU5QVVRfRU5DT0RJTkcnLCBudWxsKTsKICAgIH0KICAgIAogICAgaWYgKCAhZGVmaW5lZCgnTUFHUElFX0RFVEVDVF9FTkNPRElORycpICkgewogICAgICAgIGRlZmluZSgnTUFHUElFX0RFVEVDVF9FTkNPRElORycsIHRydWUpOwogICAgfQogICAgCiAgICBpZiAoICFkZWZpbmVkKCdNQUdQSUVfREVCVUcnKSApIHsKICAgICAgICBkZWZpbmUoJ01BR1BJRV9ERUJVRycsIDApOwogICAgfQogICAgCiAgICBpZiAoICFkZWZpbmVkKCdNQUdQSUVfVVNFUl9BR0VOVCcpICkgewogICAgICAgICR1YSA9ICdNYWdwaWVSU1MvJy4gTUFHUElFX1ZFUlNJT04gLiAnICgraHR0cDovL21hZ3BpZXJzcy5zZi5uZXQnOwogICAgICAgIAogICAgICAgIGlmICggTUFHUElFX0NBQ0hFX09OICkgewogICAgICAgICAgICAkdWEgPSAkdWEgLiAnKSc7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkdWEgPSAkdWEgLiAnOyBObyBjYWNoZSknOwogICAgICAgIH0KICAgICAgICAKICAgICAgICBkZWZpbmUoJ01BR1BJRV9VU0VSX0FHRU5UJywgJHVhKTsKICAgIH0KICAgIAogICAgaWYgKCAhZGVmaW5lZCgnTUFHUElFX0ZFVENIX1RJTUVfT1VUJykgKSB7CiAgICAgICAgZGVmaW5lKCdNQUdQSUVfRkVUQ0hfVElNRV9PVVQnLCA1KTsgLy8gNSBzZWNvbmQgdGltZW91dAogICAgfQogICAgCiAgICAvLyB1c2UgZ3ppcCBlbmNvZGluZyB0byBmZXRjaCByc3MgZmlsZXMgaWYgc3VwcG9ydGVkPwogICAgaWYgKCAhZGVmaW5lZCgnTUFHUElFX1VTRV9HWklQJykgKSB7CiAgICAgICAgZGVmaW5lKCdNQUdQSUVfVVNFX0daSVAnLCB0cnVlKTsgICAgCiAgICB9Cn0KCi8vIE5PVEU6IHRoZSBmb2xsb3dpbmcgY29kZSBzaG91bGQgcmVhbGx5IGJlIGluIFNub29weSwgb3IgYXQgbGVhc3QKLy8gc29tZXdoZXJlIG90aGVyIHRoZW4gcnNzX2ZldGNoIQoKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBIVFRQIFNUQVRVUyBDT0RFIFBSRURJQ0FURVMKICAgIFRoZXNlIGZ1bmN0aW9ucyBhdHRlbXB0IHRvIGNsYXNzaWZ5IGFuIEhUVFAgc3RhdHVzIGNvZGUKICAgIGJhc2VkIG9uIFJGQyAyNjE2IGFuZCBSRkMgMjUxOC4KICAgIAogICAgQWxsIG9mIHRoZW0gdGFrZSBhbiBIVFRQIHN0YXR1cyBjb2RlIGFzIGlucHV0LCBhbmQgcmV0dXJuIHRydWUgb3IgZmFsc2UKCiAgICBBbGwgdGhpcyBjb2RlIGlzIGFkYXB0ZWQgZnJvbSBMV1AncyBIVFRQOjpTdGF0dXMuClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwoKCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qXAogICAgRnVuY3Rpb246ICAgaXNfaW5mbwogICAgUHVycG9zZTogICAgcmV0dXJuIHRydWUgaWYgSW5mb3JtYXRpb25hbCBzdGF0dXMgY29kZQpcKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KZnVuY3Rpb24gaXNfaW5mbyAoJHNjKSB7IAogICAgcmV0dXJuICRzYyA+PSAxMDAgJiYgJHNjIDwgMjAwOyAKfQoKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBGdW5jdGlvbjogICBpc19zdWNjZXNzCiAgICBQdXJwb3NlOiAgICByZXR1cm4gdHJ1ZSBpZiBTdWNjZXNzZnVsIHN0YXR1cyBjb2RlClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwpmdW5jdGlvbiBpc19zdWNjZXNzICgkc2MpIHsgCiAgICByZXR1cm4gJHNjID49IDIwMCAmJiAkc2MgPCAzMDA7IAp9CgovKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09KlwKICAgIEZ1bmN0aW9uOiAgIGlzX3JlZGlyZWN0CiAgICBQdXJwb3NlOiAgICByZXR1cm4gdHJ1ZSBpZiBSZWRpcmVjdGlvbiBzdGF0dXMgY29kZQpcKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KZnVuY3Rpb24gaXNfcmVkaXJlY3QgKCRzYykgeyAKICAgIHJldHVybiAkc2MgPj0gMzAwICYmICRzYyA8IDQwMDsgCn0KCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qXAogICAgRnVuY3Rpb246ICAgaXNfZXJyb3IKICAgIFB1cnBvc2U6ICAgIHJldHVybiB0cnVlIGlmIEVycm9yIHN0YXR1cyBjb2RlClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwpmdW5jdGlvbiBpc19lcnJvciAoJHNjKSB7IAogICAgcmV0dXJuICRzYyA+PSA0MDAgJiYgJHNjIDwgNjAwOyAKfQoKLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBGdW5jdGlvbjogICBpc19jbGllbnRfZXJyb3IKICAgIFB1cnBvc2U6ICAgIHJldHVybiB0cnVlIGlmIEVycm9yIHN0YXR1cyBjb2RlLCBhbmQgaXRzIGEgY2xpZW50IGVycm9yClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qLwpmdW5jdGlvbiBpc19jbGllbnRfZXJyb3IgKCRzYykgeyAKICAgIHJldHVybiAkc2MgPj0gNDAwICYmICRzYyA8IDUwMDsgCn0KCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qXAogICAgRnVuY3Rpb246ICAgaXNfY2xpZW50X2Vycm9yCiAgICBQdXJwb3NlOiAgICByZXR1cm4gdHJ1ZSBpZiBFcnJvciBzdGF0dXMgY29kZSwgYW5kIGl0cyBhIHNlcnZlciBlcnJvcgpcKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki8KZnVuY3Rpb24gaXNfc2VydmVyX2Vycm9yICgkc2MpIHsgCiAgICByZXR1cm4gJHNjID49IDUwMCAmJiAkc2MgPCA2MDA7IAp9Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/rss_parse.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCi8qKgoqIFByb2plY3Q6ICAgICBNYWdwaWVSU1M6IGEgc2ltcGxlIFJTUyBpbnRlZ3JhdGlvbiB0b29sCiogRmlsZTogICAgICAgIHJzc19wYXJzZS5pbmMgIC0gcGFyc2UgYW4gUlNTIG9yIEF0b20gZmVlZAoqICAgICAgICAgICAgICAgcmV0dXJuIGFzIGEgc2ltcGxlIG9iamVjdC4KKgoqIEhhbmRsZXMgUlNTIDAuOXgsIFJTUyAyLjAsIFJTUyAxLjAsIEF0b20gMC4zLCBhbmQgQXRvbSAxLjAKKgoqIFRoZSBsYXN0ZXN0IHZlcnNpb24gb2YgTWFncGllUlNTIGNhbiBiZSBvYnRhaW5lZCBmcm9tOgoqIGh0dHA6Ly9tYWdwaWVyc3Muc291cmNlZm9yZ2UubmV0CioKKiBGb3IgcXVlc3Rpb25zLCBoZWxwLCBjb21tZW50cywgZGlzY3Vzc2lvbiwgZXRjLiwgcGxlYXNlIGpvaW4gdGhlCiogTWFncGllIG1haWxpbmcgbGlzdDoKKiBtYWdwaWVyc3MtZ2VuZXJhbEBsaXN0cy5zb3VyY2Vmb3JnZS5uZXQKKgoqIEBhdXRob3IgICAgICAgICAgIEtlbGxhbiBFbGxpb3R0LU1jQ3JlYSA8a2VsbGFuQHByb3Rlc3QubmV0PgoqIEB2ZXJzaW9uICAgICAgICAgIDAuOAoqIEBsaWNlbnNlICAgICAgICAgIEdQTAoqCiovCgpkZWZpbmUoJ1JTUycsICdSU1MnKTsKZGVmaW5lKCdBVE9NJywgJ0F0b20nKTsKCnJlcXVpcmVfb25jZSAoTUFHUElFX0RJUiAuICdyc3NfdXRpbHMuaW5jJyk7CgovKioKKiBIeWJyaWQgcGFyc2VyLCBhbmQgb2JqZWN0LCB0YWtlcyBSU1MgYXMgYSBzdHJpbmcgYW5kIHJldHVybnMgYSBzaW1wbGUgb2JqZWN0LgoqCiogc2VlOiByc3NfZmV0Y2guaW5jIGZvciBhIHNpbXBsZXIgaW50ZXJmYWNlIHdpdGggaW50ZWdyYXRlZCBjYWNoaW5nIHN1cHBvcnQKKgoqLwpjbGFzcyBNYWdwaWVSU1MgewogICAgdmFyICRwYXJzZXI7CiAgICAKICAgIHZhciAkY3VycmVudF9pdGVtICAgPSBhcnJheSgpOyAgLy8gaXRlbSBjdXJyZW50bHkgYmVpbmcgcGFyc2VkCiAgICB2YXIgJGl0ZW1zICAgICAgICAgID0gYXJyYXkoKTsgIC8vIGNvbGxlY3Rpb24gb2YgcGFyc2VkIGl0ZW1zCiAgICB2YXIgJGNoYW5uZWwgICAgICAgID0gYXJyYXkoKTsgIC8vIGhhc2ggb2YgY2hhbm5lbCBmaWVsZHMKICAgIHZhciAkdGV4dGlucHV0ICAgICAgPSBhcnJheSgpOwogICAgdmFyICRpbWFnZSAgICAgICAgICA9IGFycmF5KCk7CiAgICB2YXIgJGZlZWRfdHlwZTsKICAgIHZhciAkZmVlZF92ZXJzaW9uOwogICAgdmFyICRlbmNvZGluZyAgICAgICA9ICcnOyAgICAgICAvLyBvdXRwdXQgZW5jb2Rpbmcgb2YgcGFyc2VkIHJzcwogICAgCiAgICB2YXIgJF9zb3VyY2VfZW5jb2RpbmcgPSAnJzsgICAgIC8vIG9ubHkgc2V0IGlmIHdlIGhhdmUgdG8gcGFyc2UgeG1sIHByb2xvZwogICAgCiAgICB2YXIgJEVSUk9SID0gIiI7CiAgICB2YXIgJFdBUk5JTkcgPSAiIjsKICAgIAogICAgLy8gZGVmaW5lIHNvbWUgY29uc3RhbnRzCiAgICAKICAgIHZhciAkX0FUT01fQ09OVEVOVF9DT05TVFJVQ1RTID0gYXJyYXkoCiAgICAgICAgJ2NvbnRlbnQnLCAnc3VtbWFyeScsICd0aXRsZScsIC8qIGNvbW1vbiAqLwogICAgJ2luZm8nLCAndGFnbGluZScsICdjb3B5cmlnaHQnLCAvKiBBdG9tIDAuMyAqLwogICAgICAgICdyaWdodHMnLCAnc3VidGl0bGUnLCAvKiBBdG9tIDEuMCAqLwogICAgKTsKICAgIHZhciAkX1hIVE1MX0NPTlRFTlRfQ09OU1RSVUNUUyA9IGFycmF5KCdib2R5JywgJ2RpdicpOwogICAgdmFyICRfS05PV05fRU5DT0RJTkdTICAgID0gYXJyYXkoJ1VURi04JywgJ1VTLUFTQ0lJJywgJ0lTTy04ODU5LTEnKTsKCiAgICAvLyBwYXJzZXIgdmFyaWFibGVzLCB1c2VsZXNzIGlmIHlvdSdyZSBub3QgYSBwYXJzZXIsIHRyZWF0IGFzIHByaXZhdGUKICAgIHZhciAkc3RhY2sgICAgICAgICAgICAgID0gYXJyYXkoKTsgLy8gcGFyc2VyIHN0YWNrCiAgICB2YXIgJGluY2hhbm5lbCAgICAgICAgICA9IGZhbHNlOwogICAgdmFyICRpbml0ZW0gICAgICAgICAgICAgPSBmYWxzZTsKICAgIAogICAgdmFyICRpbmNvbnRlbnQgICAgICAgICAgPSBhcnJheSgpOyAvLyBub24tZW1wdHkgaWYgaW4gbmFtZXNwYWNlZCBYTUwgY29udGVudCBmaWVsZAogICAgdmFyICRleGNsdWRlX3RvcCAgICAgICAgPSBmYWxzZTsgLy8gdHJ1ZSB3aGVuIEF0b20gMS4wIHR5cGU9InhodG1sIgoKICAgIHZhciAkaW50ZXh0aW5wdXQgICAgICAgID0gZmFsc2U7CiAgICB2YXIgJGluaW1hZ2UgICAgICAgICAgICA9IGZhbHNlOwogICAgdmFyICRjdXJyZW50X25hbWVzcGFjZSAgPSBmYWxzZTsKICAgIAogICAgLyoqCiAgICAgKiAgU2V0IHVwIFhNTCBwYXJzZXIsIHBhcnNlIHNvdXJjZSwgYW5kIHJldHVybiBwb3B1bGF0ZWQgUlNTIG9iamVjdC4uCiAgICAgKiAgIAogICAgICogIEBwYXJhbSBzdHJpbmcgJHNvdXJjZSAgICAgICAgICAgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIFJTUyB0byBiZSBwYXJzZWQKICAgICAqCiAgICAgKiAgTk9URTogIFByb2JhYmx5IGEgZ29vZCBpZGVhIHRvIGxlYXZlIHRoZSBlbmNvZGluZyBvcHRpb25zIGFsb25lIHVubGVzcwogICAgICogICAgICAgICB5b3Uga25vdyB3aGF0IHlvdSdyZSBkb2luZyBhcyBQSFAncyBjaGFyYWN0ZXIgc2V0IHN1cHBvcnQgaXMKICAgICAqICAgICAgICAgYSBsaXR0bGUgd2VpcmQuCiAgICAgKgogICAgICogIE5PVEU6ICBBIGxvdCBvZiB0aGlzIGlzIHVubmVjZXNzYXJ5IGJ1dCBoYXJtbGVzcyB3aXRoIFBIUDUgCiAgICAgKgogICAgICoKICAgICAqICBAcGFyYW0gc3RyaW5nICRvdXRwdXRfZW5jb2RpbmcgIG91dHB1dCB0aGUgcGFyc2VkIFJTUyBpbiB0aGlzIGNoYXJhY3RlciAKICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNldCBkZWZhdWx0cyB0byBJU08tODg1OS0xIGFzIHRoaXMgaXMgUEhQJ3MKICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHQuCiAgICAgKgogICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTk9URTogbWlnaHQgYmUgY2hhbmdlZCB0byBVVEYtOCBpbiBmdXR1cmUKICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZlcnNpb25zLgogICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgKiAgQHBhcmFtIHN0cmluZyAkaW5wdXRfZW5jb2RpbmcgICB0aGUgY2hhcmFjdGVyIHNldCBvZiB0aGUgaW5jb21pbmcgUlNTIHNvdXJjZS4gCiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZWF2ZSBibGFuayBhbmQgTWFncGllIHdpbGwgdHJ5IHRvIGZpZ3VyZSBpdAogICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0LgogICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgKiAgQHBhcmFtIGJvb2wgICAkZGV0ZWN0X2VuY29kaW5nICBpZiBmYWxzZSBNYWdwaWUgd29uJ3QgYXR0ZW1wdCB0byBkZXRlY3QKICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNvdXJjZSBlbmNvZGluZy4gKGNhdmVhdCBlbXB0b3IpCiAgICAgKgogICAgICovCiAgICBmdW5jdGlvbiBNYWdwaWVSU1MgKCRzb3VyY2UsICRvdXRwdXRfZW5jb2Rpbmc9J0lTTy04ODU5LTEnLCAKICAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0X2VuY29kaW5nPW51bGwsICRkZXRlY3RfZW5jb2Rpbmc9dHJ1ZSkgCiAgICB7ICAgCiAgICAgICAgIyBpZiBQSFAgeG1sIGlzbid0IGNvbXBpbGVkIGluLCBkaWUKICAgICAgICAjCiAgICAgICAgaWYgKCFmdW5jdGlvbl9leGlzdHMoJ3htbF9wYXJzZXJfY3JlYXRlJykpIHsKICAgICAgICAgICAgJHRoaXMtPmVycm9yKCAiRmFpbGVkIHRvIGxvYWQgUEhQJ3MgWE1MIEV4dGVuc2lvbi4gIiAuIAogICAgICAgICAgICAgICAgICAgICAgICAgICJodHRwOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL3JlZi54bWwucGhwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgRV9VU0VSX0VSUk9SICk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGxpc3QoJHBhcnNlciwgJHNvdXJjZSkgPSAkdGhpcy0+Y3JlYXRlX3BhcnNlcigkc291cmNlLCAKICAgICAgICAgICAgICAgICRvdXRwdXRfZW5jb2RpbmcsICRpbnB1dF9lbmNvZGluZywgJGRldGVjdF9lbmNvZGluZyk7CiAgICAgICAgCiAgICAgICAgCiAgICAgICAgaWYgKCFpc19yZXNvdXJjZSgkcGFyc2VyKSkgewogICAgICAgICAgICAkdGhpcy0+ZXJyb3IoICJGYWlsZWQgdG8gY3JlYXRlIGFuIGluc3RhbmNlIG9mIFBIUCdzIFhNTCBwYXJzZXIuICIgLgogICAgICAgICAgICAgICAgICAgICAgICAgICJodHRwOi8vd3d3LnBocC5uZXQvbWFudWFsL2VuL3JlZi54bWwucGhwIiwKICAgICAgICAgICAgICAgICAgICAgICAgICBFX1VTRVJfRVJST1IgKTsKICAgICAgICB9CgogICAgICAgIAogICAgICAgICR0aGlzLT5wYXJzZXIgPSAkcGFyc2VyOwogICAgICAgIAogICAgICAgICMgcGFzcyBpbiBwYXJzZXIsIGFuZCBhIHJlZmVyZW5jZSB0byB0aGlzIG9iamVjdAogICAgICAgICMgc2V0dXAgaGFuZGxlcnMKICAgICAgICAjCiAgICAgICAgeG1sX3NldF9vYmplY3QoICR0aGlzLT5wYXJzZXIsICR0aGlzICk7CiAgICAgICAgeG1sX3NldF9lbGVtZW50X2hhbmRsZXIoJHRoaXMtPnBhcnNlciwgCiAgICAgICAgICAgICAgICAnZmVlZF9zdGFydF9lbGVtZW50JywgJ2ZlZWRfZW5kX2VsZW1lbnQnICk7CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgIHhtbF9zZXRfY2hhcmFjdGVyX2RhdGFfaGFuZGxlciggJHRoaXMtPnBhcnNlciwgJ2ZlZWRfY2RhdGEnICk7IAogICAgCiAgICAgICAgJHN0YXR1cyA9IHhtbF9wYXJzZSggJHRoaXMtPnBhcnNlciwgJHNvdXJjZSApOwogICAgICAgIAogICAgICAgIGlmICghICRzdGF0dXMgKSB7CiAgICAgICAgICAgICRlcnJvcmNvZGUgPSB4bWxfZ2V0X2Vycm9yX2NvZGUoICR0aGlzLT5wYXJzZXIgKTsKICAgICAgICAgICAgaWYgKCAkZXJyb3Jjb2RlICE9IFhNTF9FUlJPUl9OT05FICkgewogICAgICAgICAgICAgICAgJHhtbF9lcnJvciA9IHhtbF9lcnJvcl9zdHJpbmcoICRlcnJvcmNvZGUgKTsKICAgICAgICAgICAgICAgICRlcnJvcl9saW5lID0geG1sX2dldF9jdXJyZW50X2xpbmVfbnVtYmVyKCR0aGlzLT5wYXJzZXIpOwogICAgICAgICAgICAgICAgJGVycm9yX2NvbCA9IHhtbF9nZXRfY3VycmVudF9jb2x1bW5fbnVtYmVyKCR0aGlzLT5wYXJzZXIpOwogICAgICAgICAgICAgICAgJGVycm9ybXNnID0gIiR4bWxfZXJyb3IgYXQgbGluZSAkZXJyb3JfbGluZSwgY29sdW1uICRlcnJvcl9jb2wiOwoKICAgICAgICAgICAgICAgICR0aGlzLT5lcnJvciggJGVycm9ybXNnICk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgCiAgICAgICAgeG1sX3BhcnNlcl9mcmVlKCAkdGhpcy0+cGFyc2VyICk7CgogICAgICAgICR0aGlzLT5ub3JtYWxpemUoKTsKICAgIH0KICAgIAogICAgZnVuY3Rpb24gZmVlZF9zdGFydF9lbGVtZW50KCRwLCAkZWxlbWVudCwgJiRhdHRycykgewogICAgICAgICRlbCA9ICRlbGVtZW50ID0gc3RydG9sb3dlcigkZWxlbWVudCk7CiAgICAgICAgJGF0dHJzID0gYXJyYXlfY2hhbmdlX2tleV9jYXNlKCRhdHRycywgQ0FTRV9MT1dFUik7CiAgICAgICAgCiAgICAgICAgLy8gY2hlY2sgZm9yIGEgbmFtZXNwYWNlLCBhbmQgc3BsaXQgaWYgZm91bmQKICAgICAgICAvLyBEb24ndCBtdW5nZSBjb250ZW50IHRhZ3MKICAgICAgICBpZiAoIGVtcHR5KCR0aGlzLT5pbmNvbnRlbnQpICkgeyAgIAogICAgICAgICAgICAgICAgJG5zID0gZmFsc2U7CiAgICAgICAgICAgICAgICBpZiAoIHN0cnBvcyggJGVsZW1lbnQsICc6JyApICkgewogICAgICAgICAgICAgICAgICAgbGlzdCgkbnMsICRlbCkgPSBzcGxpdCggJzonLCAkZWxlbWVudCwgMik7IAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKCAkbnMgYW5kICRucyAhPSAncmRmJyApIHsKICAgICAgICAgICAgICAgICAgICR0aGlzLT5jdXJyZW50X25hbWVzcGFjZSA9ICRuczsKICAgICAgICAgICAgICAgfQogICAgICAgICAgfQoKICAgICAgICAjIGlmIGZlZWQgdHlwZSBpc24ndCBzZXQsIHRoZW4gdGhpcyBpcyBmaXJzdCBlbGVtZW50IG9mIGZlZWQKICAgICAgICAjIGlkZW50aWZ5IGZlZWQgZnJvbSByb290IGVsZW1lbnQKICAgICAgICAjCiAgICAgICAgaWYgKCFpc3NldCgkdGhpcy0+ZmVlZF90eXBlKSApIHsKICAgICAgICAgICAgaWYgKCAkZWwgPT0gJ3JkZicgKSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+ZmVlZF90eXBlID0gUlNTOwogICAgICAgICAgICAgICAgJHRoaXMtPmZlZWRfdmVyc2lvbiA9ICcxLjAnOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2VpZiAoICRlbCA9PSAncnNzJyApIHsKICAgICAgICAgICAgICAgICR0aGlzLT5mZWVkX3R5cGUgPSBSU1M7CiAgICAgICAgICAgICAgICAkdGhpcy0+ZmVlZF92ZXJzaW9uID0gJGF0dHJzWyd2ZXJzaW9uJ107CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZWlmICggJGVsID09ICdmZWVkJyApIHsKICAgICAgICAgICAgICAgICR0aGlzLT5mZWVkX3R5cGUgPSBBVE9NOwogICAgICAgICAgICAgICAgICAgIGlmICgkYXR0cnNbJ3htbG5zJ10gPT0gJ2h0dHA6Ly93d3cudzMub3JnLzIwMDUvQXRvbScpIHsgLy8gQXRvbSAxLjAKICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmZlZWRfdmVyc2lvbiA9ICcxLjAnOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBlbHNlIHsgLy8gQXRvbSAwLjMsIHByb2JhYmx5LgogICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+ZmVlZF92ZXJzaW9uID0gJGF0dHJzWyd2ZXJzaW9uJ107CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgJHRoaXMtPmluY2hhbm5lbCA9IHRydWU7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgIAogICAgICAgIC8vIGlmIHdlJ3JlIGluc2lkZSBhIG5hbWVzcGFjZWQgY29udGVudCBjb25zdHJ1Y3QsIHRyZWF0IHRhZ3MgYXMgdGV4dAogICAgICAgIGlmICggIWVtcHR5KCR0aGlzLT5pbmNvbnRlbnQpICkgCiAgICAgICAgewogICAgICAgICAgICAgICAgaWYgKChjb3VudCgkdGhpcy0+aW5jb250ZW50KSA+IDEpIG9yICEkdGhpcy0+ZXhjbHVkZV90b3ApIHsKICAgICAgICAgICAgICAgICAgICAgIC8vIGlmIHRhZ3MgYXJlIGlubGluZWQsIHRoZW4gZmxhdHRlbgogICAgICAgICAgICAgICAgICAgICAgJGF0dHJzX3N0ciA9IGpvaW4oJyAnLCAKICAgICAgICAgICAgICAgICAgICAgICAgICBhcnJheV9tYXAoJ21hcF9hdHRycycsIAogICAgICAgICAgICAgICAgICAgICAgICAgIGFycmF5X2tleXMoJGF0dHJzKSwgCiAgICAgICAgICAgICAgICAgICAgICAgICAgYXJyYXlfdmFsdWVzKCRhdHRycykgKSAKICAgICAgICAgICAgICAgICAgICAgICAgKTsKICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHN0cmxlbigkYXR0cnNfc3RyKSA+IDApIHsgJGF0dHJzX3N0ciA9ICcgJy4kYXR0cnNfc3RyOyB9CiAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5hcHBlbmRfY29udGVudCggIjx7JGVsZW1lbnR9eyRhdHRyc19zdHJ9PiIgICk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBhcnJheV9wdXNoKCR0aGlzLT5pbmNvbnRlbnQsICRlbCk7IC8vIHN0YWNrIGZvciBwYXJzaW5nIGNvbnRlbnQgWE1MCiAgICAgICAgfSAKICAgICAgICAKICAgICAgICBlbHNlaWYgKCAkZWwgPT0gJ2NoYW5uZWwnICkgIHsKICAgICAgICAgICAgJHRoaXMtPmluY2hhbm5lbCA9IHRydWU7CiAgICAgICAgfQogICAgCiAgICAgICAgZWxzZWlmICgkZWwgPT0gJ2l0ZW0nIG9yICRlbCA9PSAnZW50cnknICkgCiAgICAgICAgewogICAgICAgICAgICAkdGhpcy0+aW5pdGVtID0gdHJ1ZTsKICAgICAgICAgICAgaWYgKCBpc3NldCgkYXR0cnNbJ3JkZjphYm91dCddKSApIHsKICAgICAgICAgICAgICAgICR0aGlzLT5jdXJyZW50X2l0ZW1bJ2Fib3V0J10gPSAkYXR0cnNbJ3JkZjphYm91dCddOyAKICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgLy8gaWYgd2UncmUgaW4gdGhlIGRlZmF1bHQgbmFtZXNwYWNlIG9mIGFuIFJTUyBmZWVkLAogICAgICAgIC8vICByZWNvcmQgdGV4dGlucHV0IG9yIGltYWdlIGZpZWxkcwogICAgICAgIGVsc2VpZiAoIAogICAgICAgICAgICAkdGhpcy0+ZmVlZF90eXBlID09IFJTUyBhbmQgCiAgICAgICAgICAgICR0aGlzLT5jdXJyZW50X25hbWVzcGFjZSA9PSAnJyBhbmQgCiAgICAgICAgICAgICRlbCA9PSAndGV4dGlucHV0JyApIAogICAgICAgIHsKICAgICAgICAgICAgJHRoaXMtPmludGV4dGlucHV0ID0gdHJ1ZTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgZWxzZWlmICgKICAgICAgICAgICAgJHRoaXMtPmZlZWRfdHlwZSA9PSBSU1MgYW5kIAogICAgICAgICAgICAkdGhpcy0+Y3VycmVudF9uYW1lc3BhY2UgPT0gJycgYW5kIAogICAgICAgICAgICAkZWwgPT0gJ2ltYWdlJyApIAogICAgICAgIHsKICAgICAgICAgICAgJHRoaXMtPmluaW1hZ2UgPSB0cnVlOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAvLyBzZXQgc3RhY2tbMF0gdG8gY3VycmVudCBlbGVtZW50CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgICAgLy8gQXRvbSBzdXBwb3J0IG1hbnkgbGlua3MgcGVyIGNvbnRhaW5pbmcgZWxlbWVudC4KICAgICAgICAgICAgICAvLyBNYWdwaWUgdHJlYXRzIGxpbmsgZWxlbWVudHMgb2YgdHlwZSByZWw9J2FsdGVybmF0ZScKICAgICAgICAgICAgICAvLyBhcyBiZWluZyBlcXVpdmFsZW50IHRvIFJTUydzIHNpbXBsZSBsaW5rIGVsZW1lbnQuCgogICAgICAgICAgICAgICRhdG9tX2xpbmsgPSBmYWxzZTsKICAgICAgICAgICAgICBpZiAoJHRoaXMtPmZlZWRfdHlwZSA9PSBBVE9NIGFuZCAkZWwgPT0gJ2xpbmsnKSB7CiAgICAgICAgICAgICAgICAgICAgJGF0b21fbGluayA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgaWYgKGlzc2V0KCRhdHRyc1sncmVsJ10pIGFuZCAkYXR0cnNbJ3JlbCddICE9ICdhbHRlcm5hdGUnKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgJGVsID0gJGVsIC4gIl8iIC4gJGF0dHJzWydyZWwnXTsgIC8vIHBzZXVkby1lbGVtZW50IG5hbWVzIGZvciBBdG9tIGxpbmsgZWxlbWVudHMKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICMgaGFuZGxlIGF0b20gY29udGVudCBjb25zdHJ1Y3RzCiAgICAgICAgICAgICAgZWxzZWlmICggJHRoaXMtPmZlZWRfdHlwZSA9PSBBVE9NIGFuZCBpbl9hcnJheSgkZWwsICR0aGlzLT5fQVRPTV9DT05URU5UX0NPTlNUUlVDVFMpICkKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgLy8gYXZvaWQgY2xhc2hpbmcgdy8gUlNTIG1vZF9jb250ZW50CiAgICAgICAgICAgICAgICAgICAgaWYgKCRlbCA9PSAnY29udGVudCcgKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgJGVsID0gJ2F0b21fY29udGVudCc7CiAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAvLyBhc3N1bWUgdGhhdCBldmVyeXRoaW5nIGFjY2VwdHMgbmFtZXNwYWNlZCBYTUwKICAgICAgICAgICAgICAgICAgICAvLyAodGhhdCB3aWxsIHBhc3MgdGhyb3VnaCBzb21lIG5vbi12YWxpZGF0aW5nIGZlZWRzOwogICAgICAgICAgICAgICAgICAgIC8vIGJ1dCBzbyB3aGF0PyB0aGlzIGlzbid0IGEgdmFsaWRhdGluZyBwYXJzZXIpCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluY29udGVudCA9IGFycmF5KCk7CiAgICAgICAgICAgICAgICAgICAgYXJyYXlfcHVzaCgkdGhpcy0+aW5jb250ZW50LCAkZWwpOyAvLyBzdGFydCBhIHN0YWNrCgogICAgICAgICAgICAgICAgICAgIGlmICggaXNzZXQoJGF0dHJzWyd0eXBlJ10pIGFuZCB0cmltKHN0cnRvbG93ZXIoJGF0dHJzWyd0eXBlJ10pKT09J3hodG1sJykgewogICAgICAgICAgICAgICAgICAgICAgICAkdGhpcy0+ZXhjbHVkZV90b3AgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICAgICAgICAgICR0aGlzLT5leGNsdWRlX3RvcCA9IGZhbHNlOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIyBIYW5kbGUgaW5saW5lIFhIVE1MIGJvZHkgZWxlbWVudHMgLS1DV0oKICAgICAgICAgICAgICBlbHNlaWYgKCgkdGhpcy0+Y3VycmVudF9uYW1lc3BhY2U9PSd4aHRtbCcgb3IgCiAgICAgICAgICAgICAgICAgICAgICAgIChpc3NldCgkYXR0cnNbJ3htbG5zJ10pIGFuZCAkYXR0cnNbJ3htbG5zJ10gPT0gJ2h0dHA6Ly93d3cudzMub3JnLzE5OTkveGh0bWwnKSkKICAgICAgICAgICAgICAgICAgICAgIGFuZCBpbl9hcnJheSgkZWwsICR0aGlzLT5fWEhUTUxfQ09OVEVOVF9DT05TVFJVQ1RTKSApCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICR0aGlzLT5jdXJyZW50X25hbWVzcGFjZSA9ICd4aHRtbCc7CiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmluY29udGVudCA9IGFycmF5KCk7CiAgICAgICAgICAgICAgICAgICAgYXJyYXlfcHVzaCgkdGhpcy0+aW5jb250ZW50LCAkZWwpOyAvLyBzdGFydCBhIHN0YWNrCiAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmV4Y2x1ZGVfdG9wID0gZmFsc2U7CiAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICBhcnJheV91bnNoaWZ0KCR0aGlzLT5zdGFjaywgJGVsKTsKICAgICAgICAgICAgICAkZWxwYXRoID0gam9pbignXycsIGFycmF5X3JldmVyc2UoJHRoaXMtPnN0YWNrKSk7CiAgICAgICAgCiAgICAgICAgICAgICAgJG4gPSAkdGhpcy0+ZWxlbWVudF9jb3VudCgkZWxwYXRoKTsKICAgICAgICAgICAgICAkdGhpcy0+ZWxlbWVudF9jb3VudCgkZWxwYXRoLCAkbisxKTsKICAgICAgICAKICAgICAgICAgICAgICBpZiAoJG4gPiAwKSB7CiAgICAgICAgICAgICAgICAgIGFycmF5X3NoaWZ0KCR0aGlzLT5zdGFjayk7CiAgICAgICAgICAgICAgICAgIGFycmF5X3Vuc2hpZnQoJHRoaXMtPnN0YWNrLCAkZWwuJyMnLigkbisxKSk7CiAgICAgICAgICAgICAgICAgICRlbHBhdGggPSBqb2luKCdfJywgYXJyYXlfcmV2ZXJzZSgkdGhpcy0+c3RhY2spKTsKICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgIC8vIHRoaXMgbWFrZXMgdGhlIGJhYnkgSmVzdXMgY3J5LCBidXQgd2UgY2FuJ3QgZG8gaXQgaW4gbm9ybWFsaXplKCkKICAgICAgICAgICAgICAvLyBiZWNhdXNlIHdlJ3ZlIG1hZGUgdGhlIGVsZW1lbnQgbmFtZSBmb3IgQXRvbSBsaW5rcyB1bnByZWRpY3RhYmxlCiAgICAgICAgICAgICAgLy8gYnkgdGFja2luZyBvbiB0aGUgcmVsYXRpb24gdG8gdGhlIGVuZC4gLUNXSgogICAgICAgICAgICAgIGlmICgkYXRvbV9saW5rIGFuZCBpc3NldCgkYXR0cnNbJ2hyZWYnXSkpIHsKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+YXBwZW5kKCRlbHBhdGgsICRhdHRyc1snaHJlZiddKTsKICAgICAgICAgICAgICB9CiAgICAgICAgCiAgICAgICAgICAgICAgLy8gYWRkIGF0dHJpYnV0ZXMKICAgICAgICAgICAgICBpZiAoY291bnQoJGF0dHJzKSA+IDApIHsKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+YXBwZW5kKCRlbHBhdGguJ18nLCBqb2luKCcsJywgYXJyYXlfa2V5cygkYXR0cnMpKSk7CiAgICAgICAgICAgICAgICAgICAgZm9yZWFjaCAoJGF0dHJzIGFzICRhdHRyID0+ICR2YWx1ZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgJHRoaXMtPmFwcGVuZCgkZWxwYXRoLidfJy4kYXR0ciwgJHZhbHVlKTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgfQogICAgfQogICAgCgogICAgCiAgICBmdW5jdGlvbiBmZWVkX2NkYXRhICgkcCwgJHRleHQpIHsKICAgICAgICAKICAgICAgICBpZiAoJHRoaXMtPmluY29udGVudCkgewogICAgICAgICAgICAkdGhpcy0+YXBwZW5kX2NvbnRlbnQoICR0ZXh0ICk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICAkY3VycmVudF9lbCA9IGpvaW4oJ18nLCBhcnJheV9yZXZlcnNlKCR0aGlzLT5zdGFjaykpOwogICAgICAgICAgICAkdGhpcy0+YXBwZW5kKCRjdXJyZW50X2VsLCAkdGV4dCk7CiAgICAgICAgfQogICAgfQogICAgCiAgICBmdW5jdGlvbiBmZWVkX2VuZF9lbGVtZW50ICgkcCwgJGVsKSB7CiAgICAgICAgJGVsID0gc3RydG9sb3dlcigkZWwpOwoKICAgICAgICBpZiAoICR0aGlzLT5pbmNvbnRlbnQgKSB7CiAgICAgICAgJG9wZW5lciA9IGFycmF5X3BvcCgkdGhpcy0+aW5jb250ZW50KTsKCiAgICAgICAgLy8gRG9uJ3QgZ2V0IGJhbWJvb3psZWQgYnkgbmFtZXNwYWNlIHZvb2RvbwogICAgICAgIGlmIChzdHJwb3MoJGVsLCAnOicpKSB7IGxpc3QoJG5zLCAkY2xvc2VyKSA9IHNwbGl0KCc6JywgJGVsKTsgfQogICAgICAgIGVsc2UgeyAkbnMgPSBmYWxzZTsgJGNsb3NlciA9ICRlbDsgfQoKICAgICAgICAvLyBEb24ndCBnZXQgYmFtYm9vemxlZCBieSBvdXIgbXVuZ2luZyBvZiA8YXRvbTpjb250ZW50PiwgZWl0aGVyCiAgICAgICAgaWYgKCR0aGlzLT5mZWVkX3R5cGUgPT0gQVRPTSBhbmQgJGNsb3NlciA9PSAnY29udGVudCcpIHsKICAgICAgICAgICAgJGNsb3NlciA9ICdhdG9tX2NvbnRlbnQnOwogICAgICAgIH0KCiAgICAgICAgLy8gYmFsYW5jZSB0YWdzIHByb3Blcmx5CiAgICAgICAgLy8gbm90ZTogIGkgZG9uJ3QgdGhpbmsgdGhpcyBpcyBhY3R1YWxseSBuZWNjZXNzYXJ5CiAgICAgICAgaWYgKCRvcGVuZXIgIT0gJGNsb3NlcikgewogICAgICAgICAgICBhcnJheV9wdXNoKCR0aGlzLT5pbmNvbnRlbnQsICRvcGVuZXIpOwogICAgICAgICAgICAkdGhpcy0+YXBwZW5kX2NvbnRlbnQoIjwkZWwgLz4iKTsKICAgICAgICB9IGVsc2VpZiAoJHRoaXMtPmluY29udGVudCkgeyAvLyBhcmUgd2UgaW4gdGhlIGNvbnRlbnQgY29uc3RydWN0IHN0aWxsPwogICAgICAgICAgICBpZiAoKGNvdW50KCR0aGlzLT5pbmNvbnRlbnQpID4gMSkgb3IgISR0aGlzLT5leGNsdWRlX3RvcCkgewogICAgICAgICAgICAgICAgJHRoaXMtPmFwcGVuZF9jb250ZW50KCI8LyRlbD4iKTsKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7IC8vIHNoaWZ0IHRoZSBvcGVuaW5nIG9mIHRoZSBjb250ZW50IGNvbnN0cnVjdCBvZmYgdGhlIG5vcm1hbCBzdGFjawogICAgICAgICAgICBhcnJheV9zaGlmdCggJHRoaXMtPnN0YWNrICk7CiAgICAgICAgfQogICAgICAgIH0KICAgICAgICBlbHNlaWYgKCAkZWwgPT0gJ2l0ZW0nIG9yICRlbCA9PSAnZW50cnknICkgCiAgICAgICAgewogICAgICAgICAgICAkdGhpcy0+aXRlbXNbXSA9ICR0aGlzLT5jdXJyZW50X2l0ZW07CiAgICAgICAgICAgICR0aGlzLT5jdXJyZW50X2l0ZW0gPSBhcnJheSgpOwogICAgICAgICAgICAkdGhpcy0+aW5pdGVtID0gZmFsc2U7CgogICAgICAgICR0aGlzLT5jdXJyZW50X2NhdGVnb3J5ID0gMDsKICAgICAgICB9CiAgICAgICBlbHNlaWYgKCR0aGlzLT5mZWVkX3R5cGUgPT0gUlNTIGFuZCAkdGhpcy0+Y3VycmVudF9uYW1lc3BhY2UgPT0gJycgYW5kICRlbCA9PSAndGV4dGlucHV0JyApIAogICAgICAgIHsKICAgICAgICAgICAgJHRoaXMtPmludGV4dGlucHV0ID0gZmFsc2U7CiAgICAgICAgfQogICAgICAgIGVsc2VpZiAoJHRoaXMtPmZlZWRfdHlwZSA9PSBSU1MgYW5kICR0aGlzLT5jdXJyZW50X25hbWVzcGFjZSA9PSAnJyBhbmQgJGVsID09ICdpbWFnZScgKSAKICAgICAgICB7CiAgICAgICAgICAgICR0aGlzLT5pbmltYWdlID0gZmFsc2U7CiAgICAgICAgfQogICAgICAgIGVsc2VpZiAoJGVsID09ICdjaGFubmVsJyBvciAkZWwgPT0gJ2ZlZWQnICkgCiAgICAgICAgewogICAgICAgICAgICAkdGhpcy0+aW5jaGFubmVsID0gZmFsc2U7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgIGFycmF5X3NoaWZ0KCAkdGhpcy0+c3RhY2sgKTsKICAgICAgICB9CiAgICAgICAgCiAgICBpZiAoICEkdGhpcy0+aW5jb250ZW50ICkgeyAvLyBEb24ndCBtdW5nZSB0aGUgbmFtZXNwYWNlIGFmdGVyIGZpbmlzaGluZyB3aXRoIGVsZW1lbnRzIGluIG5hbWVzcGFjZWQgY29udGVudCBjb25zdHJ1Y3RzIC1DV0oKICAgICAgICAkdGhpcy0+Y3VycmVudF9uYW1lc3BhY2UgPSBmYWxzZTsKICAgIH0KICAgIH0KICAgIAogICAgZnVuY3Rpb24gY29uY2F0ICgmJHN0cjEsICRzdHIyPSIiKSB7CiAgICAgICAgaWYgKCFpc3NldCgkc3RyMSkgKSB7CiAgICAgICAgICAgICRzdHIxPSIiOwogICAgICAgIH0KICAgICAgICAkc3RyMSAuPSAkc3RyMjsKICAgIH0KICAgIAogICAgZnVuY3Rpb24gYXBwZW5kX2NvbnRlbnQoJHRleHQpIHsKICAgIGlmICggJHRoaXMtPmluaXRlbSApIHsKICAgICAgICBpZiAoJHRoaXMtPmN1cnJlbnRfbmFtZXNwYWNlKSB7CiAgICAgICAgICAgICR0aGlzLT5jb25jYXQoICR0aGlzLT5jdXJyZW50X2l0ZW1bJHRoaXMtPmN1cnJlbnRfbmFtZXNwYWNlXVsgcmVzZXQoJHRoaXMtPmluY29udGVudCkgXSwgJHRleHQgKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAkdGhpcy0+Y29uY2F0KCAkdGhpcy0+Y3VycmVudF9pdGVtWyByZXNldCgkdGhpcy0+aW5jb250ZW50KSBdLCAkdGV4dCApOwogICAgICAgIH0KICAgIH0KICAgIGVsc2VpZiAoICR0aGlzLT5pbmNoYW5uZWwgKSB7CiAgICAgICAgaWYgKCR0aGlzLT5jdXJyZW50X25hbWVzcGFjZSkgewogICAgICAgICAgICAkdGhpcy0+Y29uY2F0KCAkdGhpcy0+Y2hhbm5lbFskdGhpcy0+Y3VycmVudF9uYW1lc3BhY2VdWyByZXNldCgkdGhpcy0+aW5jb250ZW50KSBdLCAkdGV4dCApOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICR0aGlzLT5jb25jYXQoICR0aGlzLT5jaGFubmVsWyByZXNldCgkdGhpcy0+aW5jb250ZW50KSBdLCAkdGV4dCApOwogICAgICAgIH0KICAgIH0KICAgIH0KICAgIAogICAgLy8gc21hcnQgYXBwZW5kIC0gZmllbGQgYW5kIG5hbWVzcGFjZSBhd2FyZQogICAgZnVuY3Rpb24gYXBwZW5kKCRlbCwgJHRleHQpIHsKICAgICAgICBpZiAoISRlbCkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmICggJHRoaXMtPmN1cnJlbnRfbmFtZXNwYWNlICkgCiAgICAgICAgewogICAgICAgICAgICBpZiAoICR0aGlzLT5pbml0ZW0gKSB7CiAgICAgICAgICAgICR0aGlzLT5jb25jYXQoCiAgICAgICAgICAgICAgICAkdGhpcy0+Y3VycmVudF9pdGVtWyAkdGhpcy0+Y3VycmVudF9uYW1lc3BhY2UgXVsgJGVsIF0sICR0ZXh0KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlaWYgKCR0aGlzLT5pbmNoYW5uZWwpIHsKICAgICAgICAkdGhpcy0+Y29uY2F0KAogICAgICAgICAgICAkdGhpcy0+Y2hhbm5lbFsgJHRoaXMtPmN1cnJlbnRfbmFtZXNwYWNlXVsgJGVsIF0sICR0ZXh0ICk7CiAgICAgICAgfQogICAgICAgICAgICBlbHNlaWYgKCR0aGlzLT5pbnRleHRpbnB1dCkgewogICAgICAgICAgICAgICAgJHRoaXMtPmNvbmNhdCgKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+dGV4dGlucHV0WyAkdGhpcy0+Y3VycmVudF9uYW1lc3BhY2VdWyAkZWwgXSwgJHRleHQgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlaWYgKCR0aGlzLT5pbmltYWdlKSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+Y29uY2F0KAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbWFnZVsgJHRoaXMtPmN1cnJlbnRfbmFtZXNwYWNlIF1bICRlbCBdLCAkdGV4dCApOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICBpZiAoICR0aGlzLT5pbml0ZW0gKSB7CiAgICAgICAgJHRoaXMtPmNvbmNhdCgKICAgICAgICAgICAgJHRoaXMtPmN1cnJlbnRfaXRlbVsgJGVsIF0sICR0ZXh0KTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlaWYgKCR0aGlzLT5pbnRleHRpbnB1dCkgewogICAgICAgICAgICAgICAgJHRoaXMtPmNvbmNhdCgKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+dGV4dGlucHV0WyAkZWwgXSwgJHRleHQgKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlaWYgKCR0aGlzLT5pbmltYWdlKSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+Y29uY2F0KAogICAgICAgICAgICAgICAgICAgICR0aGlzLT5pbWFnZVsgJGVsIF0sICR0ZXh0ICk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZWlmICgkdGhpcy0+aW5jaGFubmVsKSB7CiAgICAgICAgJHRoaXMtPmNvbmNhdCgKICAgICAgICAgICAgJHRoaXMtPmNoYW5uZWxbICRlbCBdLCAkdGV4dCApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIAogICAgICAgIH0KICAgIH0KCiAgICAvLyBzbWFydCBjb3VudCAtIGZpZWxkIGFuZCBuYW1lc3BhY2UgYXdhcmUKICAgIGZ1bmN0aW9uIGVsZW1lbnRfY291bnQgKCRlbCwgJHNldCA9IE5VTEwpIHsKICAgICAgICBpZiAoISRlbCkgewogICAgICAgICAgICByZXR1cm47CiAgICAgICAgfQogICAgICAgIGlmICggJHRoaXMtPmN1cnJlbnRfbmFtZXNwYWNlICkgCiAgICAgICAgewogICAgICAgICAgICBpZiAoICR0aGlzLT5pbml0ZW0gKSB7CiAgICAgICAgICAgIGlmICghaXNfbnVsbCgkc2V0KSkgeyAkdGhpcy0+Y3VycmVudF9pdGVtWyAkdGhpcy0+Y3VycmVudF9uYW1lc3BhY2UgXVsgJGVsLicjJyBdID0gJHNldDsgfQogICAgICAgICAgICAkcmV0ID0gKGlzc2V0KCR0aGlzLT5jdXJyZW50X2l0ZW1bICR0aGlzLT5jdXJyZW50X25hbWVzcGFjZSBdWyAkZWwuJyMnIF0pID8KICAgICAgICAgICAgJHRoaXMtPmN1cnJlbnRfaXRlbVsgJHRoaXMtPmN1cnJlbnRfbmFtZXNwYWNlIF1bICRlbC4nIycgXSA6IDApOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2VpZiAoJHRoaXMtPmluY2hhbm5lbCkgewogICAgICAgICAgICBpZiAoIWlzX251bGwoJHNldCkpIHsgJHRoaXMtPmNoYW5uZWxbICR0aGlzLT5jdXJyZW50X25hbWVzcGFjZSBdWyAkZWwuJyMnIF0gPSAkc2V0OyB9CiAgICAgICAgICAgICRyZXQgPSAoaXNzZXQoJHRoaXMtPmNoYW5uZWxbICR0aGlzLT5jdXJyZW50X25hbWVzcGFjZV1bICRlbC4nIycgXSkgPwogICAgICAgICAgICAkdGhpcy0+Y2hhbm5lbFsgJHRoaXMtPmN1cnJlbnRfbmFtZXNwYWNlXVsgJGVsLicjJyBdIDogMCk7CiAgICAgICAgfQogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgaWYgKCAkdGhpcy0+aW5pdGVtICkgewogICAgICAgICAgICBpZiAoIWlzX251bGwoJHNldCkpIHsgJHRoaXMtPmN1cnJlbnRfaXRlbVsgJGVsLicjJyBdID0gJHNldDsgfQogICAgICAgICAgICAkcmV0ID0gKGlzc2V0KCR0aGlzLT5jdXJyZW50X2l0ZW1bICRlbC4nIycgXSkgPwogICAgICAgICAgICAkdGhpcy0+Y3VycmVudF9pdGVtWyAkZWwuJyMnIF0gOiAwKTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlaWYgKCR0aGlzLT5pbmNoYW5uZWwpIHsKICAgICAgICAgICAgaWYgKCFpc19udWxsKCRzZXQpKSB7JHRoaXMtPmNoYW5uZWxbICRlbC4nIycgXSA9ICRzZXQ7IH0KICAgICAgICAgICAgJHJldCA9IChpc3NldCgkdGhpcy0+Y2hhbm5lbFsgJGVsLicjJyBdKSA/CiAgICAgICAgICAgICR0aGlzLT5jaGFubmVsWyAkZWwuJyMnIF0gOiAwKTsKICAgICAgICB9CiAgICAgICAgfQogICAgcmV0dXJuICRyZXQ7CiAgICB9CgogICAgZnVuY3Rpb24gbm9ybWFsaXplX2VuY2xvc3VyZSAoJiRzb3VyY2UsICRmcm9tLCAmJGRlc3QsICR0bywgJGkpIHsKICAgICAgICAkaWRfZnJvbSA9ICR0aGlzLT5lbGVtZW50X2lkKCRmcm9tLCAkaSk7CiAgICAgICAgJGlkX3RvID0gJHRoaXMtPmVsZW1lbnRfaWQoJHRvLCAkaSk7CiAgICAgICAgaWYgKGlzc2V0KCRzb3VyY2VbInskaWRfZnJvbX1AIl0pKSB7CiAgICAgICAgICAgIGZvcmVhY2ggKGV4cGxvZGUoJywnLCAkc291cmNlWyJ7JGlkX2Zyb219QCJdKSBhcyAkYXR0cikgewogICAgICAgICAgICAgICAgaWYgKCRmcm9tPT0nbGlua19lbmNsb3N1cmUnIGFuZCAkYXR0cj09J2hyZWYnKSB7IC8vIGZyb20gQXRvbQogICAgICAgICAgICAgICAgICAgICRkZXN0WyJ7JGlkX3RvfUB1cmwiXSA9ICRzb3VyY2VbInskaWRfZnJvbX1AeyRhdHRyfSJdOwogICAgICAgICAgICAgICAgICAgICRkZXN0WyJ7JGlkX3RvfSJdID0gJHNvdXJjZVsieyRpZF9mcm9tfUB7JGF0dHJ9Il07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBlbHNlaWYgKCRmcm9tPT0nZW5jbG9zdXJlJyBhbmQgJGF0dHI9PSd1cmwnKSB7IC8vIGZyb20gUlNTCiAgICAgICAgICAgICAgICAgICAgJGRlc3RbInskaWRfdG99QGhyZWYiXSA9ICRzb3VyY2VbInskaWRfZnJvbX1AeyRhdHRyfSJdOwogICAgICAgICAgICAgICAgICAgICRkZXN0WyJ7JGlkX3RvfSJdID0gJHNvdXJjZVsieyRpZF9mcm9tfUB7JGF0dHJ9Il07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAkZGVzdFsieyRpZF90b31AeyRhdHRyfSJdID0gJHNvdXJjZVsieyRpZF9mcm9tfUB7JGF0dHJ9Il07CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9CgogICAgZnVuY3Rpb24gbm9ybWFsaXplX2F0b21fcGVyc29uICgmJHNvdXJjZSwgJHBlcnNvbiwgJiRkZXN0LCAkdG8sICRpKSB7CiAgICAgICAgJGlkID0gJHRoaXMtPmVsZW1lbnRfaWQoJHBlcnNvbiwgJGkpOwogICAgICAgICRpZF90byA9ICR0aGlzLT5lbGVtZW50X2lkKCR0bywgJGkpOwoKICAgICAgICAgICAgLy8gQXRvbSAwLjMgPD0+IEF0b20gMS4wCiAgICAgICAgaWYgKCR0aGlzLT5mZWVkX3ZlcnNpb24gPj0gMS4wKSB7ICR1c2VkID0gJ3VyaSc7ICRub3JtID0gJ3VybCc7IH0KICAgICAgICBlbHNlIHsgJHVzZWQgPSAndXJsJzsgJG5vcm0gPSAndXJpJzsgfQoKICAgICAgICBpZiAoaXNzZXQoJHNvdXJjZVsieyRpZH1feyR1c2VkfSJdKSkgewogICAgICAgICAgICAkZGVzdFsieyRpZF90b31feyRub3JtfSJdID0gJHNvdXJjZVsieyRpZH1feyR1c2VkfSJdOwogICAgICAgIH0KCiAgICAgICAgLy8gQXRvbSB0byBSU1MgMi4wIGFuZCBEdWJsaW4gQ29yZQogICAgICAgIC8vIFJTUyAyLjAgcGVyc29uIHN0cmluZ3Mgc2hvdWxkIGJlIHZhbGlkIGUtbWFpbCBhZGRyZXNzZXMgaWYgcG9zc2libGUuCiAgICAgICAgaWYgKGlzc2V0KCRzb3VyY2VbInskaWR9X2VtYWlsIl0pKSB7CiAgICAgICAgICAgICRyc3NfYXV0aG9yID0gJHNvdXJjZVsieyRpZH1fZW1haWwiXTsKICAgICAgICB9CiAgICAgICAgaWYgKGlzc2V0KCRzb3VyY2VbInskaWR9X25hbWUiXSkpIHsKICAgICAgICAgICAgJHJzc19hdXRob3IgPSAkc291cmNlWyJ7JGlkfV9uYW1lIl0KICAgICAgICAgICAgICAgIC4gKGlzc2V0KCRyc3NfYXV0aG9yKSA/ICIgPCRyc3NfYXV0aG9yPiIgOiAnJyk7CiAgICAgICAgfQogICAgICAgIGlmIChpc3NldCgkcnNzX2F1dGhvcikpIHsKICAgICAgICAgICAgJHNvdXJjZVskaWRdID0gJHJzc19hdXRob3I7IC8vIGdvZXMgdG8gdG9wLWxldmVsIGF1dGhvciBvciBjb250cmlidXRvcgogICAgICAgICRkZXN0WyRpZF90b10gPSAkcnNzX2F1dGhvcjsgLy8gZ29lcyB0byBkYzpjcmVhdG9yIG9yIGRjOmNvbnRyaWJ1dG9yCiAgICAgICAgfQogICAgfQoKICAgIC8vIE5vcm1hbGl6ZSBBdG9tIDEuMCBhbmQgUlNTIDIuMCBjYXRlZ29yaWVzIHRvIER1YmxpbiBDb3JlLi4uCiAgICBmdW5jdGlvbiBub3JtYWxpemVfY2F0ZWdvcnkgKCYkc291cmNlLCAkZnJvbSwgJiRkZXN0LCAkdG8sICRpKSB7CiAgICAgICAgJGNhdF9pZCA9ICR0aGlzLT5lbGVtZW50X2lkKCRmcm9tLCAkaSk7CiAgICAgICAgJGRjX2lkID0gJHRoaXMtPmVsZW1lbnRfaWQoJHRvLCAkaSk7CgogICAgICAgIC8vIGZpcnN0IG5vcm1hbGl6ZSBjYXRlZ29yeSBlbGVtZW50czogQXRvbSAxLjAgPD0+IFJTUyAyLjAKICAgICAgICBpZiAoIGlzc2V0KCRzb3VyY2VbInskY2F0X2lkfUB0ZXJtIl0pICkgeyAvLyBjYXRlZ29yeSBpZGVudGlmaWVyCiAgICAgICAgICAgICRzb3VyY2VbJGNhdF9pZF0gPSAkc291cmNlWyJ7JGNhdF9pZH1AdGVybSJdOwogICAgICAgIH0gZWxzZWlmICggJHRoaXMtPmZlZWRfdHlwZSA9PSBSU1MgKSB7CiAgICAgICAgICAgICRzb3VyY2VbInskY2F0X2lkfUB0ZXJtIl0gPSAkc291cmNlWyRjYXRfaWRdOwogICAgICAgIH0KICAgICAgICAKICAgICAgICBpZiAoIGlzc2V0KCRzb3VyY2VbInskY2F0X2lkfUBzY2hlbWUiXSkgKSB7IC8vIFVSSSB0byB0YXhvbm9teQogICAgICAgICAgICAkc291cmNlWyJ7JGNhdF9pZH1AZG9tYWluIl0gPSAkc291cmNlWyJ7JGNhdF9pZH1Ac2NoZW1lIl07CiAgICAgICAgfSBlbHNlaWYgKCBpc3NldCgkc291cmNlWyJ7JGNhdF9pZH1AZG9tYWluIl0pICkgewogICAgICAgICAgICAkc291cmNlWyJ7JGNhdF9pZH1Ac2NoZW1lIl0gPSAkc291cmNlWyJ7JGNhdF9pZH1AZG9tYWluIl07CiAgICAgICAgfQoKICAgICAgICAvLyBOb3cgcHV0IHRoZSBpZGVudGlmaWVyIGludG8gZGM6c3ViamVjdAogICAgICAgICRkZXN0WyRkY19pZF0gPSAkc291cmNlWyRjYXRfaWRdOwogICAgfQogICAgCiAgICAvLyAuLi4gb3IgdmljZSB2ZXJzYQogICAgZnVuY3Rpb24gbm9ybWFsaXplX2RjX3N1YmplY3QgKCYkc291cmNlLCAkZnJvbSwgJiRkZXN0LCAkdG8sICRpKSB7CiAgICAgICAgJGRjX2lkID0gJHRoaXMtPmVsZW1lbnRfaWQoJGZyb20sICRpKTsKICAgICAgICAkY2F0X2lkID0gJHRoaXMtPmVsZW1lbnRfaWQoJHRvLCAkaSk7CgogICAgICAgICRkZXN0WyRjYXRfaWRdID0gJHNvdXJjZVskZGNfaWRdOyAgICAgICAvLyBSU1MgMi4wCiAgICAgICAgJGRlc3RbInskY2F0X2lkfUB0ZXJtIl0gPSAkc291cmNlWyRkY19pZF07ICAvLyBBdG9tIDEuMAogICAgfQoKICAgIC8vIHNpbXBsaWZ5IHRoZSBsb2dpYyBmb3Igbm9ybWFsaXplKCkuIE1ha2VzIHN1cmUgdGhhdCBjb3VudCBvZiBlbGVtZW50cyBhbmQKICAgIC8vIGVhY2ggb2YgbXVsdGlwbGUgZWxlbWVudHMgaXMgbm9ybWFsaXplZCBwcm9wZXJseS4gSWYgeW91IG5lZWQgdG8gbWVzcwogICAgLy8gd2l0aCB0aGluZ3MgbGlrZSBhdHRyaWJ1dGVzIG9yIGNoYW5nZSBmb3JtYXRzIG9yIHRoZSBsaWtlLCBwYXNzIGl0IGEKICAgIC8vIGNhbGxiYWNrIHRvIGhhbmRsZSBlYWNoIGVsZW1lbnQuCiAgICBmdW5jdGlvbiBub3JtYWxpemVfZWxlbWVudCAoJiRzb3VyY2UsICRmcm9tLCAmJGRlc3QsICR0bywgJHZpYSA9IE5VTEwpIHsKICAgICAgICBpZiAoaXNzZXQoJHNvdXJjZVskZnJvbV0pIG9yIGlzc2V0KCRzb3VyY2VbInskZnJvbX0jIl0pKSB7CiAgICAgICAgICAgIGlmIChpc3NldCgkc291cmNlWyJ7JGZyb219IyJdKSkgewogICAgICAgICAgICAgICAgJG4gPSAkc291cmNlWyJ7JGZyb219IyJdOwogICAgICAgICAgICAgICAgJGRlc3RbInskdG99IyJdID0gJHNvdXJjZVsieyRmcm9tfSMiXTsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsgJG4gPSAxOyB9CgogICAgICAgICAgICBmb3IgKCRpID0gMTsgJGkgPD0gJG47ICRpKyspIHsKICAgICAgICAgICAgICAgIGlmIChpc3NldCgkdmlhKSkgeyAvLyBjdXN0b20gY2FsbGJhY2sgZm9yIG5pbmphIGF0dGFja3MKICAgICAgICAgICAgICAgICAgICAkdGhpcy0+eyR2aWF9KCRzb3VyY2UsICRmcm9tLCAkZGVzdCwgJHRvLCAkaSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBlbHNlIHsgLy8ganVzdCBtYWtlIGl0IHRoZSBzYW1lCiAgICAgICAgICAgICAgICAgICAgJGZyb21faWQgPSAkdGhpcy0+ZWxlbWVudF9pZCgkZnJvbSwgJGkpOwogICAgICAgICAgICAgICAgICAgICR0b19pZCA9ICR0aGlzLT5lbGVtZW50X2lkKCR0bywgJGkpOwogICAgICAgICAgICAgICAgICAgICRkZXN0WyR0b19pZF0gPSAkc291cmNlWyRmcm9tX2lkXTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBmdW5jdGlvbiBub3JtYWxpemUgKCkgewogICAgICAgIC8vIGlmIGF0b20gcG9wdWxhdGUgcnNzIGZpZWxkcyBhbmQgbm9ybWFsaXplIDAuMyBhbmQgMS4wIGZlZWRzCiAgICAgICAgaWYgKCAkdGhpcy0+aXNfYXRvbSgpICkgewogICAgICAgIC8vIEF0b20gMS4wIGVsZW1lbnRzIDw9PiBBdG9tIDAuMyBlbGVtZW50cyAoVGhhbmtzLCBvIGJyaWxsaWFudCB3b3Jkc21pdGhzIG9mIHRoZSBBdG9tIDEuMCBzdGFuZGFyZCEpCiAgICAgICAgaWYgKCR0aGlzLT5mZWVkX3ZlcnNpb24gPCAxLjApIHsKICAgICAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCR0aGlzLT5jaGFubmVsLCAndGFnbGluZScsICR0aGlzLT5jaGFubmVsLCAnc3VidGl0bGUnKTsKICAgICAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCR0aGlzLT5jaGFubmVsLCAnY29weXJpZ2h0JywgJHRoaXMtPmNoYW5uZWwsICdyaWdodHMnKTsKICAgICAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCR0aGlzLT5jaGFubmVsLCAnbW9kaWZpZWQnLCAkdGhpcy0+Y2hhbm5lbCwgJ3VwZGF0ZWQnKTsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAkdGhpcy0+bm9ybWFsaXplX2VsZW1lbnQoJHRoaXMtPmNoYW5uZWwsICdzdWJ0aXRsZScsICR0aGlzLT5jaGFubmVsLCAndGFnbGluZScpOwogICAgICAgICAgICAkdGhpcy0+bm9ybWFsaXplX2VsZW1lbnQoJHRoaXMtPmNoYW5uZWwsICdyaWdodHMnLCAkdGhpcy0+Y2hhbm5lbCwgJ2NvcHlyaWdodCcpOwogICAgICAgICAgICAkdGhpcy0+bm9ybWFsaXplX2VsZW1lbnQoJHRoaXMtPmNoYW5uZWwsICd1cGRhdGVkJywgJHRoaXMtPmNoYW5uZWwsICdtb2RpZmllZCcpOwogICAgICAgIH0KICAgICAgICAkdGhpcy0+bm9ybWFsaXplX2VsZW1lbnQoJHRoaXMtPmNoYW5uZWwsICdhdXRob3InLCAkdGhpcy0+Y2hhbm5lbFsnZGMnXSwgJ2NyZWF0b3InLCAnbm9ybWFsaXplX2F0b21fcGVyc29uJyk7CiAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCR0aGlzLT5jaGFubmVsLCAnY29udHJpYnV0b3InLCAkdGhpcy0+Y2hhbm5lbFsnZGMnXSwgJ2NvbnRyaWJ1dG9yJywgJ25vcm1hbGl6ZV9hdG9tX3BlcnNvbicpOwoKICAgICAgICAvLyBBdG9tIGVsZW1lbnRzIHRvIFJTUyBlbGVtZW50cwogICAgICAgICR0aGlzLT5ub3JtYWxpemVfZWxlbWVudCgkdGhpcy0+Y2hhbm5lbCwgJ3N1YnRpdGxlJywgJHRoaXMtPmNoYW5uZWwsICdkZXNjcmlwdGlvbicpOwogICAgICAgIAogICAgICAgIGlmICggaXNzZXQoJHRoaXMtPmNoYW5uZWxbJ2xvZ28nXSkgKSB7CiAgICAgICAgICAgICR0aGlzLT5ub3JtYWxpemVfZWxlbWVudCgkdGhpcy0+Y2hhbm5lbCwgJ2xvZ28nLCAkdGhpcy0+aW1hZ2UsICd1cmwnKTsKICAgICAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCR0aGlzLT5jaGFubmVsLCAnbGluaycsICR0aGlzLT5pbWFnZSwgJ2xpbmsnKTsKICAgICAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCR0aGlzLT5jaGFubmVsLCAndGl0bGUnLCAkdGhpcy0+aW1hZ2UsICd0aXRsZScpOwogICAgICAgIH0KCiAgICAgICAgZm9yICggJGkgPSAwOyAkaSA8IGNvdW50KCR0aGlzLT5pdGVtcyk7ICRpKyspIHsKICAgICAgICAgICAgJGl0ZW0gPSAkdGhpcy0+aXRlbXNbJGldOwoKICAgICAgICAgICAgLy8gQXRvbSAxLjAgZWxlbWVudHMgPD0+IEF0b20gMC4zIGVsZW1lbnRzCiAgICAgICAgICAgIGlmICgkdGhpcy0+ZmVlZF92ZXJzaW9uIDwgMS4wKSB7CiAgICAgICAgICAgICAgICAkdGhpcy0+bm9ybWFsaXplX2VsZW1lbnQoJGl0ZW0sICdtb2RpZmllZCcsICRpdGVtLCAndXBkYXRlZCcpOwogICAgICAgICAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCRpdGVtLCAnaXNzdWVkJywgJGl0ZW0sICdwdWJsaXNoZWQnKTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICR0aGlzLT5ub3JtYWxpemVfZWxlbWVudCgkaXRlbSwgJ3VwZGF0ZWQnLCAkaXRlbSwgJ21vZGlmaWVkJyk7CiAgICAgICAgICAgICAgICAkdGhpcy0+bm9ybWFsaXplX2VsZW1lbnQoJGl0ZW0sICdwdWJsaXNoZWQnLCAkaXRlbSwgJ2lzc3VlZCcpOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyAiSWYgYW4gYXRvbTplbnRyeSBlbGVtZW50IGRvZXMgbm90IGNvbnRhaW4KICAgICAgICAgICAgLy8gYXRvbTphdXRob3IgZWxlbWVudHMsIHRoZW4gdGhlIGF0b206YXV0aG9yIGVsZW1lbnRzCiAgICAgICAgICAgIC8vIG9mIHRoZSBjb250YWluZWQgYXRvbTpzb3VyY2UgZWxlbWVudCBhcmUgY29uc2lkZXJlZAogICAgICAgICAgICAvLyB0byBhcHBseS4gSW4gYW4gQXRvbSBGZWVkIERvY3VtZW50LCB0aGUgYXRvbTphdXRob3IKICAgICAgICAgICAgLy8gZWxlbWVudHMgb2YgdGhlIGNvbnRhaW5pbmcgYXRvbTpmZWVkIGVsZW1lbnQgYXJlCiAgICAgICAgICAgIC8vIGNvbnNpZGVyZWQgdG8gYXBwbHkgdG8gdGhlIGVudHJ5IGlmIHRoZXJlIGFyZSBubwogICAgICAgICAgICAvLyBhdG9tOmF1dGhvciBlbGVtZW50cyBpbiB0aGUgbG9jYXRpb25zIGRlc2NyaWJlZAogICAgICAgICAgICAvLyBhYm92ZS4iIDxodHRwOi8vYXRvbXB1Yi5vcmcvMjAwNS8wOC8xNy9kcmFmdC1pZXRmLWF0b21wdWItZm9ybWF0LTExLmh0bWwjcmZjLnNlY3Rpb24uNC4yLjE+CiAgICAgICAgICAgIGlmICghaXNzZXQoJGl0ZW1bImF1dGhvciMiXSkpIHsKICAgICAgICAgICAgICAgIGlmIChpc3NldCgkaXRlbVsic291cmNlX2F1dGhvciMiXSkpIHsgLy8gZnJvbSBhZ2dyZWdhdGlvbiBzb3VyY2UKICAgICAgICAgICAgICAgICAgICAkc291cmNlID0gJGl0ZW07CiAgICAgICAgICAgICAgICAgICAgJGF1dGhvciA9ICJzb3VyY2VfYXV0aG9yIjsKICAgICAgICAgICAgICAgIH0gZWxzZWlmIChpc3NldCgkdGhpcy0+Y2hhbm5lbFsiYXV0aG9yIyJdKSkgeyAvLyBmcm9tIGNvbnRhaW5pbmcgZmVlZAogICAgICAgICAgICAgICAgICAgICRzb3VyY2UgPSAkdGhpcy0+Y2hhbm5lbDsKICAgICAgICAgICAgICAgICAgICAkYXV0aG9yID0gImF1dGhvciI7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgJGl0ZW1bImF1dGhvciMiXSA9ICRzb3VyY2VbInskYXV0aG9yfSMiXTsKICAgICAgICAgICAgICAgIGZvciAoJGF1ID0gMTsgJGF1IDw9ICRpdGVtWyJhdXRob3IjIl07ICRhdSsrKSB7CiAgICAgICAgICAgICAgICAgICAgJGlkX3RvID0gJHRoaXMtPmVsZW1lbnRfaWQoJ2F1dGhvcicsICRhdSk7CiAgICAgICAgICAgICAgICAgICAgJGlkX2Zyb20gPSAkdGhpcy0+ZWxlbWVudF9pZCgkYXV0aG9yLCAkYXUpOwogICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICRpdGVtWyRpZF90b10gPSAkc291cmNlWyRpZF9mcm9tXTsKICAgICAgICAgICAgICAgICAgICBmb3JlYWNoIChhcnJheSgnbmFtZScsICdlbWFpbCcsICd1cmknLCAndXJsJykgYXMgJHdoYXQpIHsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlzc2V0KCRzb3VyY2VbInskaWRfZnJvbX1feyR3aGF0fSJdKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGl0ZW1bInskaWRfdG99X3skd2hhdH0iXSA9ICRzb3VyY2VbInskaWRfZnJvbX1feyR3aGF0fSJdOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBBdG9tIGVsZW1lbnRzIHRvIFJTUyBlbGVtZW50cwogICAgICAgICAgICAkdGhpcy0+bm9ybWFsaXplX2VsZW1lbnQoJGl0ZW0sICdhdXRob3InLCAkaXRlbVsnZGMnXSwgJ2NyZWF0b3InLCAnbm9ybWFsaXplX2F0b21fcGVyc29uJyk7CiAgICAgICAgICAgICR0aGlzLT5ub3JtYWxpemVfZWxlbWVudCgkaXRlbSwgJ2NvbnRyaWJ1dG9yJywgJGl0ZW1bJ2RjJ10sICdjb250cmlidXRvcicsICdub3JtYWxpemVfYXRvbV9wZXJzb24nKTsKICAgICAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCRpdGVtLCAnc3VtbWFyeScsICRpdGVtLCAnZGVzY3JpcHRpb24nKTsKICAgICAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCRpdGVtLCAnYXRvbV9jb250ZW50JywgJGl0ZW1bJ2NvbnRlbnQnXSwgJ2VuY29kZWQnKTsKICAgICAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCRpdGVtLCAnbGlua19lbmNsb3N1cmUnLCAkaXRlbSwgJ2VuY2xvc3VyZScsICdub3JtYWxpemVfZW5jbG9zdXJlJyk7CgogICAgICAgICAgICAvLyBDYXRlZ29yaWVzCiAgICAgICAgICAgIGlmICggaXNzZXQoJGl0ZW1bJ2NhdGVnb3J5IyddKSApIHsgLy8gQXRvbSAxLjAgY2F0ZWdvcmllcyB0byBkYzpzdWJqZWN0IGFuZCBSU1MgMi4wIGNhdGVnb3JpZXMKICAgICAgICAgICAgICAgICR0aGlzLT5ub3JtYWxpemVfZWxlbWVudCgkaXRlbSwgJ2NhdGVnb3J5JywgJGl0ZW1bJ2RjJ10sICdzdWJqZWN0JywgJ25vcm1hbGl6ZV9jYXRlZ29yeScpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2VpZiAoIGlzc2V0KCRpdGVtWydkYyddWydzdWJqZWN0IyddKSApIHsgLy8gZGM6c3ViamVjdCB0byBBdG9tIDEuMCBhbmQgUlNTIDIuMCBjYXRlZ29yaWVzCiAgICAgICAgICAgICAgICAkdGhpcy0+bm9ybWFsaXplX2VsZW1lbnQoJGl0ZW1bJ2RjJ10sICdzdWJqZWN0JywgJGl0ZW0sICdjYXRlZ29yeScsICdub3JtYWxpemVfZGNfc3ViamVjdCcpOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyBOb3JtYWxpemVkIGl0ZW0gdGltZXN0YW1wCiAgICAgICAgICAgICRhdG9tX2RhdGUgPSAoaXNzZXQoJGl0ZW1bJ3B1Ymxpc2hlZCddKSApID8gJGl0ZW1bJ3B1Ymxpc2hlZCddIDogJGl0ZW1bJ3VwZGF0ZWQnXTsKICAgICAgICAgICAgaWYgKCAkYXRvbV9kYXRlICkgewogICAgICAgICAgICAgICAgJGVwb2NoID0gQHBhcnNlX3czY2R0ZigkYXRvbV9kYXRlKTsKICAgICAgICAgICAgICAgIGlmICgkZXBvY2ggYW5kICRlcG9jaCA+IDApIHsKICAgICAgICAgICAgICAgICAgICAkaXRlbVsnZGF0ZV90aW1lc3RhbXAnXSA9ICRlcG9jaDsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgJHRoaXMtPml0ZW1zWyRpXSA9ICRpdGVtOwogICAgICAgIH0KICAgICAgICB9CiAgICAgICAgZWxzZWlmICggJHRoaXMtPmlzX3JzcygpICkgewogICAgICAgIC8vIFJTUyBlbGVtZW50cyB0byBBdG9tIGVsZW1lbnRzCiAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCR0aGlzLT5jaGFubmVsLCAnZGVzY3JpcHRpb24nLCAkdGhpcy0+Y2hhbm5lbCwgJ3RhZ2xpbmUnKTsgLy8gQXRvbSAwLjMKICAgICAgICAkdGhpcy0+bm9ybWFsaXplX2VsZW1lbnQoJHRoaXMtPmNoYW5uZWwsICdkZXNjcmlwdGlvbicsICR0aGlzLT5jaGFubmVsLCAnc3VidGl0bGUnKTsgLy8gQXRvbSAxLjAgKHlheSB3b3Jkc21pdGhpbmchKQogICAgICAgICR0aGlzLT5ub3JtYWxpemVfZWxlbWVudCgkdGhpcy0+aW1hZ2UsICd1cmwnLCAkdGhpcy0+Y2hhbm5lbCwgJ2xvZ28nKTsKCiAgICAgICAgICAgIGZvciAoICRpID0gMDsgJGkgPCBjb3VudCgkdGhpcy0+aXRlbXMpOyAkaSsrKSB7CiAgICAgICAgICAgICAgICAkaXRlbSA9ICR0aGlzLT5pdGVtc1skaV07CiAgICAgICAgCiAgICAgICAgLy8gUlNTIGVsZW1lbnRzIHRvIEF0b20gZWxlbWVudHMKICAgICAgICAkdGhpcy0+bm9ybWFsaXplX2VsZW1lbnQoJGl0ZW0sICdkZXNjcmlwdGlvbicsICRpdGVtLCAnc3VtbWFyeScpOwogICAgICAgICAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCRpdGVtWydjb250ZW50J10sICdlbmNvZGVkJywgJGl0ZW0sICdhdG9tX2NvbnRlbnQnKTsKICAgICAgICAkdGhpcy0+bm9ybWFsaXplX2VsZW1lbnQoJGl0ZW0sICdlbmNsb3N1cmUnLCAkaXRlbSwgJ2xpbmtfZW5jbG9zdXJlJywgJ25vcm1hbGl6ZV9lbmNsb3N1cmUnKTsKCiAgICAgICAgLy8gQ2F0ZWdvcmllcwogICAgICAgIGlmICggaXNzZXQoJGl0ZW1bJ2NhdGVnb3J5IyddKSApIHsgLy8gUlNTIDIuMCBjYXRlZ29yaWVzIHRvIGRjOnN1YmplY3QgYW5kIEF0b20gMS4wIGNhdGVnb3JpZXMKICAgICAgICAgICAgJHRoaXMtPm5vcm1hbGl6ZV9lbGVtZW50KCRpdGVtLCAnY2F0ZWdvcnknLCAkaXRlbVsnZGMnXSwgJ3N1YmplY3QnLCAnbm9ybWFsaXplX2NhdGVnb3J5Jyk7CiAgICAgICAgfQogICAgICAgIGVsc2VpZiAoIGlzc2V0KCRpdGVtWydkYyddWydzdWJqZWN0IyddKSApIHsgLy8gZGM6c3ViamVjdCB0byBBdG9tIDEuMCBhbmQgUlNTIDIuMCBjYXRlZ29yaWVzCiAgICAgICAgICAgICR0aGlzLT5ub3JtYWxpemVfZWxlbWVudCgkaXRlbVsnZGMnXSwgJ3N1YmplY3QnLCAkaXRlbSwgJ2NhdGVnb3J5JywgJ25vcm1hbGl6ZV9kY19zdWJqZWN0Jyk7CiAgICAgICAgfQoKICAgICAgICAvLyBOb3JtYWxpemVkIGl0ZW0gdGltZXN0YW1wCiAgICAgICAgICAgICAgICBpZiAoICR0aGlzLT5pc19yc3MoKSA9PSAnMS4wJyBhbmQgaXNzZXQoJGl0ZW1bJ2RjJ11bJ2RhdGUnXSkgKSB7CiAgICAgICAgICAgICAgICAgICAgJGVwb2NoID0gQHBhcnNlX3czY2R0ZigkaXRlbVsnZGMnXVsnZGF0ZSddKTsKICAgICAgICAgICAgICAgICAgICBpZiAoJGVwb2NoIGFuZCAkZXBvY2ggPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICRpdGVtWydkYXRlX3RpbWVzdGFtcCddID0gJGVwb2NoOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2VpZiAoIGlzc2V0KCRpdGVtWydwdWJkYXRlJ10pICkgewogICAgICAgICAgICAgICAgICAgICRlcG9jaCA9IEBzdHJ0b3RpbWUoJGl0ZW1bJ3B1YmRhdGUnXSk7CiAgICAgICAgICAgICAgICAgICAgaWYgKCRlcG9jaCA+IDApIHsKICAgICAgICAgICAgICAgICAgICAgICAgJGl0ZW1bJ2RhdGVfdGltZXN0YW1wJ10gPSAkZXBvY2g7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICR0aGlzLT5pdGVtc1skaV0gPSAkaXRlbTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIAogICAgCiAgICBmdW5jdGlvbiBpc19yc3MgKCkgewogICAgICAgIGlmICggJHRoaXMtPmZlZWRfdHlwZSA9PSBSU1MgKSB7CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+ZmVlZF92ZXJzaW9uOyAKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgICB9CiAgICB9CiAgICAKICAgIGZ1bmN0aW9uIGlzX2F0b20oKSB7CiAgICAgICAgaWYgKCAkdGhpcy0+ZmVlZF90eXBlID09IEFUT00gKSB7CiAgICAgICAgICAgIHJldHVybiAkdGhpcy0+ZmVlZF92ZXJzaW9uOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgIH0KCiAgICAvKioKICAgICogcmV0dXJuIFhNTCBwYXJzZXIsIGFuZCBwb3NzaWJseSByZS1lbmNvZGVkIHNvdXJjZQogICAgKgogICAgKi8KICAgIGZ1bmN0aW9uIGNyZWF0ZV9wYXJzZXIoJHNvdXJjZSwgJG91dF9lbmMsICRpbl9lbmMsICRkZXRlY3QpIHsKICAgICAgICBpZiAoIHN1YnN0cihwaHB2ZXJzaW9uKCksMCwxKSA9PSA1KSB7CiAgICAgICAgICAgICRwYXJzZXIgPSAkdGhpcy0+cGhwNV9jcmVhdGVfcGFyc2VyKCRpbl9lbmMsICRkZXRlY3QpOwogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgbGlzdCgkcGFyc2VyLCAkc291cmNlKSA9ICR0aGlzLT5waHA0X2NyZWF0ZV9wYXJzZXIoJHNvdXJjZSwgJGluX2VuYywgJGRldGVjdCk7CiAgICAgICAgfQogICAgICAgIGlmICgkb3V0X2VuYykgewogICAgICAgICAgICAkdGhpcy0+ZW5jb2RpbmcgPSAkb3V0X2VuYzsKICAgICAgICAgICAgeG1sX3BhcnNlcl9zZXRfb3B0aW9uKCRwYXJzZXIsIFhNTF9PUFRJT05fVEFSR0VUX0VOQ09ESU5HLCAkb3V0X2VuYyk7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIHJldHVybiBhcnJheSgkcGFyc2VyLCAkc291cmNlKTsKICAgIH0KICAgIAogICAgLyoqCiAgICAqIEluc3RhbnRpYXRlIGFuIFhNTCBwYXJzZXIgdW5kZXIgUEhQNQogICAgKgogICAgKiBQSFA1IHdpbGwgZG8gYSBmaW5lIGpvYiBvZiBkZXRlY3RpbmcgaW5wdXQgZW5jb2RpbmcKICAgICogaWYgcGFzc2VkIGFuIGVtcHR5IHN0cmluZyBhcyB0aGUgZW5jb2RpbmcuIAogICAgKgogICAgKiBBbGwgaGFpbCBsaWJ4bWwyIQogICAgKgogICAgKi8KICAgIGZ1bmN0aW9uIHBocDVfY3JlYXRlX3BhcnNlcigkaW5fZW5jLCAkZGV0ZWN0KSB7CiAgICAgICAgLy8gYnkgZGVmYXVsdCBwaHA1IGRvZXMgYSBmaW5lIGpvYiBvZiBkZXRlY3RpbmcgaW5wdXQgZW5jb2RpbmdzCiAgICAgICAgaWYoISRkZXRlY3QgJiYgJGluX2VuYykgewogICAgICAgICAgICByZXR1cm4geG1sX3BhcnNlcl9jcmVhdGUoJGluX2VuYyk7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICByZXR1cm4geG1sX3BhcnNlcl9jcmVhdGUoJycpOwogICAgICAgIH0KICAgIH0KICAgIAogICAgLyoqCiAgICAqIEluc3RhbmlhdGUgYW4gWE1MIHBhcnNlciB1bmRlciBQSFA0CiAgICAqCiAgICAqIFVuZm9ydHVuYXRlbHkgUEhQNCdzIHN1cHBvcnQgZm9yIGNoYXJhY3RlciBlbmNvZGluZ3MKICAgICogYW5kIGVzcGVjaWFsbHkgWE1MIGFuZCBjaGFyYWN0ZXIgZW5jb2RpbmdzIHN1Y2tzLiAgQXMKICAgICogbG9uZyBhcyB0aGUgZG9jdW1lbnRzIHlvdSBwYXJzZSBvbmx5IGNvbnRhaW4gY2hhcmFjdGVycwogICAgKiBmcm9tIHRoZSBJU08tODg1OS0xIGNoYXJhY3RlciBzZXQgKGEgc3VwZXJzZXQgb2YgQVNDSUksCiAgICAqIGFuZCBhIHN1YnNldCBvZiBVVEYtOCkgeW91J3JlIGZpbmUuICBIb3dldmVyIG9uY2UgeW91CiAgICAqIHN0ZXAgb3V0IG9mIHRoYXQgY29tZnkgbGl0dGxlIHdvcmxkIHRoaW5ncyBnZXQgbWFkLCBiYWQsCiAgICAqIGFuZCBkYW5nZXJvdXMgdG8ga25vdy4KICAgICoKICAgICogVGhlIGZvbGxvd2luZyBjb2RlIGlzIGJhc2VkIG9uIFNKTSdzIHdvcmsgd2l0aCBGb0YKICAgICogQHNlZSBodHRwOi8vbWludXRpbGxvLmNvbS9zdGV2ZS93ZWJsb2cvMjAwNC82LzE3L3BocC14bWwtYW5kLWNoYXJhY3Rlci1lbmNvZGluZ3MtYS10YWxlLW9mLXNhZG5lc3MtcmFnZS1hbmQtZGF0YS1sb3NzCiAgICAqCiAgICAqLwogICAgZnVuY3Rpb24gcGhwNF9jcmVhdGVfcGFyc2VyKCRzb3VyY2UsICRpbl9lbmMsICRkZXRlY3QpIHsKICAgICAgICBpZiAoICEkZGV0ZWN0ICkgewogICAgICAgICAgICByZXR1cm4gYXJyYXkoeG1sX3BhcnNlcl9jcmVhdGUoJGluX2VuYyksICRzb3VyY2UpOwogICAgICAgIH0KICAgICAgICAKICAgICAgICBpZiAoISRpbl9lbmMpIHsKICAgICAgICAgICAgaWYgKHByZWdfbWF0Y2goJy88P3htbC4qZW5jb2Rpbmc9W1wnIl0oLio/KVtcJyJdLio/Pi9tJywgJHNvdXJjZSwgJG0pKSB7CiAgICAgICAgICAgICAgICAkaW5fZW5jID0gc3RydG91cHBlcigkbVsxXSk7CiAgICAgICAgICAgICAgICAkdGhpcy0+c291cmNlX2VuY29kaW5nID0gJGluX2VuYzsKICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlIHsKICAgICAgICAgICAgICAgICRpbl9lbmMgPSAnVVRGLTgnOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGlmICgkdGhpcy0+a25vd25fZW5jb2RpbmcoJGluX2VuYykpIHsKICAgICAgICAgICAgcmV0dXJuIGFycmF5KHhtbF9wYXJzZXJfY3JlYXRlKCRpbl9lbmMpLCAkc291cmNlKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgLy8gdGhlIGRlY3RlY3RlZCBlbmNvZGluZyBpcyBub3Qgb25lIG9mIHRoZSBzaW1wbGUgZW5jb2RpbmdzIFBIUCBrbm93cwogICAgICAgIAogICAgICAgIC8vIGF0dGVtcHQgdG8gdXNlIHRoZSBpY29udiBleHRlbnNpb24gdG8KICAgICAgICAvLyBjYXN0IHRoZSBYTUwgdG8gYSBrbm93biBlbmNvZGluZwogICAgICAgIC8vIEBzZWUgaHR0cDovL3BocC5uZXQvaWNvbnYKICAgICAgIAogICAgICAgIGlmIChmdW5jdGlvbl9leGlzdHMoJ2ljb252JykpICB7CiAgICAgICAgICAgICRlbmNvZGVkX3NvdXJjZSA9IGljb252KCRpbl9lbmMsJ1VURi04JywgJHNvdXJjZSk7CiAgICAgICAgICAgIGlmICgkZW5jb2RlZF9zb3VyY2UpIHsKICAgICAgICAgICAgICAgIHJldHVybiBhcnJheSh4bWxfcGFyc2VyX2NyZWF0ZSgnVVRGLTgnKSwgJGVuY29kZWRfc291cmNlKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAKICAgICAgICAvLyBpY29udiBkaWRuJ3Qgd29yaywgdHJ5IG1iX2NvbnZlcnRfZW5jb2RpbmcKICAgICAgICAvLyBAc2VlIGh0dHA6Ly9waHAubmV0L21ic3RyaW5nCiAgICAgICAgaWYoZnVuY3Rpb25fZXhpc3RzKCdtYl9jb252ZXJ0X2VuY29kaW5nJykpIHsKICAgICAgICAgICAgJGVuY29kZWRfc291cmNlID0gbWJfY29udmVydF9lbmNvZGluZygkc291cmNlLCAnVVRGLTgnLCAkaW5fZW5jICk7CiAgICAgICAgICAgIGlmICgkZW5jb2RlZF9zb3VyY2UpIHsKICAgICAgICAgICAgICAgIHJldHVybiBhcnJheSh4bWxfcGFyc2VyX2NyZWF0ZSgnVVRGLTgnKSwgJGVuY29kZWRfc291cmNlKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICAKICAgICAgICAvLyBlbHNlIAogICAgICAgICR0aGlzLT5lcnJvcigiRmVlZCBpcyBpbiBhbiB1bnN1cHBvcnRlZCBjaGFyYWN0ZXIgZW5jb2RpbmcuICgkaW5fZW5jKSAiIC4KICAgICAgICAgICAgICAgICAgICAgIllvdSBtYXkgc2VlIHN0cmFuZ2UgYXJ0aWZhY3RzLCBhbmQgbWFuZ2xlZCBjaGFyYWN0ZXJzLiIsCiAgICAgICAgICAgICAgICAgICAgIEVfVVNFUl9OT1RJQ0UpOwogICAgICAgICAgICAKICAgICAgICByZXR1cm4gYXJyYXkoeG1sX3BhcnNlcl9jcmVhdGUoKSwgJHNvdXJjZSk7CiAgICB9CiAgICAKICAgIGZ1bmN0aW9uIGtub3duX2VuY29kaW5nKCRlbmMpIHsKICAgICAgICAkZW5jID0gc3RydG91cHBlcigkZW5jKTsKICAgICAgICBpZiAoIGluX2FycmF5KCRlbmMsICR0aGlzLT5fS05PV05fRU5DT0RJTkdTKSApIHsKICAgICAgICAgICAgcmV0dXJuICRlbmM7CiAgICAgICAgfQogICAgICAgIGVsc2UgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgfQoKICAgIGZ1bmN0aW9uIGVycm9yICgkZXJyb3Jtc2csICRsdmw9RV9VU0VSX1dBUk5JTkcpIHsKICAgICAgICAvLyBhcHBlbmQgUEhQJ3MgZXJyb3IgbWVzc2FnZSBpZiB0cmFja19lcnJvcnMgZW5hYmxlZAogICAgICAgIGlmICggaXNzZXQoJHBocF9lcnJvcm1zZykgKSB7IAogICAgICAgICAgICAkZXJyb3Jtc2cgLj0gIiAoJHBocF9lcnJvcm1zZykiOwogICAgICAgIH0KICAgICAgICBpZiAoIE1BR1BJRV9ERUJVRyApIHsKICAgICAgICAgICAgdHJpZ2dlcl9lcnJvciggJGVycm9ybXNnLCAkbHZsKTsgICAgICAgIAogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgZXJyb3JfbG9nKCAkZXJyb3Jtc2csIDApOwogICAgICAgIH0KICAgICAgICAKICAgICAgICAkbm90aWNlcyA9IEVfVVNFUl9OT1RJQ0V8RV9OT1RJQ0U7CiAgICAgICAgaWYgKCAkbHZsJiRub3RpY2VzICkgewogICAgICAgICAgICAkdGhpcy0+V0FSTklORyA9ICRlcnJvcm1zZzsKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAkdGhpcy0+RVJST1IgPSAkZXJyb3Jtc2c7CiAgICAgICAgfQogICAgfQoKICAgIC8vIG1hZ2ljIElEIGZ1bmN0aW9uIGZvciBtdWx0aXBsZSBlbGVtZW5ldHMuCiAgICAvLyBjYW4gYmUgY2FsbGVkIGFzIHN0YXRpYyBNYWdwaWVSU1M6OmVsZW1lbnRfaWQoKQogICAgZnVuY3Rpb24gZWxlbWVudF9pZCAoJGVsLCAkY291bnRlcikgewogICAgICAgIHJldHVybiAkZWwgLiAoKCRjb3VudGVyID4gMSkgPyAnIycuJGNvdW50ZXIgOiAnJyk7CiAgICB9Cn0gLy8gZW5kIGNsYXNzIFJTUwoKZnVuY3Rpb24gbWFwX2F0dHJzKCRrLCAkdikgewogICAgcmV0dXJuICIkaz1cIiR2XCIiOwp9CgovLyBwYXRjaCB0byBzdXBwb3J0IG1lZGlldmFsIHZlcnNpb25zIG9mIFBIUDQuMS54LCAKLy8gY291cnRlc3ksIFJ5YW4gQ3VycmllLCByeWFuQGRpZ2libGlzcy5jb20KCmlmICghZnVuY3Rpb25fZXhpc3RzKCdhcnJheV9jaGFuZ2Vfa2V5X2Nhc2UnKSkgewogICAgZGVmaW5lKCJDQVNFX1VQUEVSIiwxKTsKICAgIGRlZmluZSgiQ0FTRV9MT1dFUiIsMCk7CgoKICAgIGZ1bmN0aW9uIGFycmF5X2NoYW5nZV9rZXlfY2FzZSgkYXJyYXksJGNhc2U9Q0FTRV9MT1dFUikgewogICAgICAgaWYgKCRjYXNlPT1DQVNFX0xPV0VSKSAkY21kPSdzdHJ0b2xvd2VyJzsKICAgICAgIGVsc2VpZiAoJGNhc2U9PUNBU0VfVVBQRVIpICRjbWQ9J3N0cnRvdXBwZXInOwogICAgICAgZm9yZWFjaCgkYXJyYXkgYXMgJGtleT0+JHZhbHVlKSB7CiAgICAgICAgICAgICAgICRvdXRwdXRbJGNtZCgka2V5KV09JHZhbHVlOwogICAgICAgfQogICAgICAgcmV0dXJuICRvdXRwdXQ7CiAgICB9Cgp9Cgo/Pgo=]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/rss_utils.inc</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKLyoKICogUHJvamVjdDogICAgIE1hZ3BpZVJTUzogYSBzaW1wbGUgUlNTIGludGVncmF0aW9uIHRvb2wKICogRmlsZTogICAgICAgIHJzc191dGlscy5pbmMsIHV0aWxpdHkgbWV0aG9kcyBmb3Igd29ya2luZyB3aXRoIFJTUwogKiBBdXRob3I6ICAgICAgS2VsbGFuIEVsbGlvdHQtTWNDcmVhIDxrZWxsYW5AcHJvdGVzdC5uZXQ+CiAqIFZlcnNpb246ICAgICAwLjUxCiAqIExpY2Vuc2U6ICAgICBHUEwKICoKICogVGhlIGxhc3Rlc3QgdmVyc2lvbiBvZiBNYWdwaWVSU1MgY2FuIGJlIG9idGFpbmVkIGZyb206CiAqIGh0dHA6Ly9tYWdwaWVyc3Muc291cmNlZm9yZ2UubmV0CiAqCiAqIEZvciBxdWVzdGlvbnMsIGhlbHAsIGNvbW1lbnRzLCBkaXNjdXNzaW9uLCBldGMuLCBwbGVhc2Ugam9pbiB0aGUKICogTWFncGllIG1haWxpbmcgbGlzdDoKICogbWFncGllcnNzLWdlbmVyYWxAbGlzdHMuc291cmNlZm9yZ2UubmV0CiAqLwoKCi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSpcCiAgICBGdW5jdGlvbjogcGFyc2VfdzNjZHRmCiAgICBQdXJwb3NlOiAgcGFyc2UgYSBXM0NEVEYgZGF0ZSBpbnRvIHVuaXggZXBvY2gKCiAgICBOT1RFOiBodHRwOi8vd3d3LnczLm9yZy9UUi9OT1RFLWRhdGV0aW1lClwqPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovCgpmdW5jdGlvbiBwYXJzZV93M2NkdGYgKCAkZGF0ZV9zdHIgKSB7CiAgICAKICAgICMgcmVnZXggdG8gbWF0Y2ggd2MzZHRmCiAgICAkcGF0ID0gIi8oXGR7NH0pLShcZHsyfSktKFxkezJ9KVQoXGR7Mn0pOihcZHsyfSkoOihcZHsyfSkpPyg/OihbLStdKShcZHsyfSk6PyhcZHsyfSl8KFopKT8vIjsKICAgIAogICAgaWYgKCBwcmVnX21hdGNoKCAkcGF0LCAkZGF0ZV9zdHIsICRtYXRjaCApICkgewogICAgICAgIGxpc3QoICR5ZWFyLCAkbW9udGgsICRkYXksICRob3VycywgJG1pbnV0ZXMsICRzZWNvbmRzKSA9IAogICAgICAgICAgICBhcnJheSggJG1hdGNoWzFdLCAkbWF0Y2hbMl0sICRtYXRjaFszXSwgJG1hdGNoWzRdLCAkbWF0Y2hbNV0sICRtYXRjaFs2XSk7CiAgICAgICAgCiAgICAgICAgIyBjYWxjIGVwb2NoIGZvciBjdXJyZW50IGRhdGUgYXNzdW1pbmcgR01UCiAgICAgICAgJGVwb2NoID0gZ21ta3RpbWUoICRob3VycywgJG1pbnV0ZXMsICRzZWNvbmRzLCAkbW9udGgsICRkYXksICR5ZWFyKTsKICAgICAgICAKICAgICAgICAkb2Zmc2V0ID0gMDsKICAgICAgICBpZiAoICRtYXRjaFsxMF0gPT0gJ1onICkgewogICAgICAgICAgICAjIHp1bHUgdGltZSwgYWthIEdNVAogICAgICAgIH0KICAgICAgICBlbHNlIHsKICAgICAgICAgICAgbGlzdCggJHR6X21vZCwgJHR6X2hvdXIsICR0el9taW4gKSA9CiAgICAgICAgICAgICAgICBhcnJheSggJG1hdGNoWzhdLCAkbWF0Y2hbOV0sICRtYXRjaFsxMF0pOwogICAgICAgICAgICAKICAgICAgICAgICAgIyB6ZXJvIG91dCB0aGUgdmFyaWFibGVzCiAgICAgICAgICAgIGlmICggISAkdHpfaG91ciApIHsgJHR6X2hvdXIgPSAwOyB9CiAgICAgICAgICAgIGlmICggISAkdHpfbWluICkgeyAkdHpfbWluID0gMDsgfQogICAgICAgIAogICAgICAgICAgICAkb2Zmc2V0X3NlY3MgPSAoKCR0el9ob3VyKjYwKSskdHpfbWluKSo2MDsKICAgICAgICAgICAgCiAgICAgICAgICAgICMgaXMgdGltZXpvbmUgYWhlYWQgb2YgR01UPyAgdGhlbiBzdWJ0cmFjdCBvZmZzZXQKICAgICAgICAgICAgIwogICAgICAgICAgICBpZiAoICR0el9tb2QgPT0gJysnICkgewogICAgICAgICAgICAgICAgJG9mZnNldF9zZWNzID0gJG9mZnNldF9zZWNzICogLTE7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgCiAgICAgICAgICAgICRvZmZzZXQgPSAkb2Zmc2V0X3NlY3M7IAogICAgICAgIH0KICAgICAgICAkZXBvY2ggPSAkZXBvY2ggKyAkb2Zmc2V0OwogICAgICAgIHJldHVybiAkZXBvY2g7CiAgICB9CiAgICBlbHNlIHsKICAgICAgICByZXR1cm4gLTE7CiAgICB9Cn0KCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/scripts/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/magpierss/scripts/magpie_debug.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCmluaV9zZXQoJ2Rpc3BsYXlfZXJyb3JzJywgMSk7CmluaV9zZXQoJ2Vycm9yX3JlcG9ydGluZycsIEVfQUxMKTsKZGVmaW5lKCdNQUdQSUVfT1VUUFVUX0VOQ09ESU5HJywgJ1VURi04Jyk7CmRlZmluZSgnTUFHUElFX0RJUicsICcuLi8nKTsKZGVmaW5lKCdNQUdQSUVfREVCVUcnLCAxKTsKCi8vIGZsdXNoIGNhY2hlIHF1aWNrbHkgZm9yIGRlYnVnZ2luZyBwdXJwb3NlcywgZG9uJ3QgZG8gdGhpcyBvbiBhIGxpdmUgc2l0ZQpkZWZpbmUoJ01BR1BJRV9DQUNIRV9BR0UnLCAxMCk7CgpyZXF1aXJlX29uY2UoTUFHUElFX0RJUi4ncnNzX2ZldGNoLmluYycpOwoKCmlmICggaXNzZXQoJF9HRVRbJ3VybCddKSApIHsKCSR1cmwgPSAkX0dFVFsndXJsJ107Cn0KZWxzZSB7CgkkdXJsID0gJ2h0dHA6Ly9tYWdwaWVyc3Muc2YubmV0L3Rlc3QucnNzJzsKfQoKCnRlc3RfbGlicmFyeV9zdXBwb3J0KCk7CgokcnNzID0gZmV0Y2hfcnNzKCAkdXJsICk7CgkKaWYgKCRyc3MpIHsKCWVjaG8gIjxoMz5FeGFtcGxlIE91dHB1dDwvaDM+IjsKCWVjaG8gIkNoYW5uZWw6ICIgLiAkcnNzLT5jaGFubmVsWyd0aXRsZSddIC4gIjxwPiI7CgllY2hvICI8dWw+IjsKCWZvcmVhY2ggKCRyc3MtPml0ZW1zIGFzICRpdGVtKSB7CgkJJGhyZWYgPSAkaXRlbVsnbGluayddOwoJCSR0aXRsZSA9ICRpdGVtWyd0aXRsZSddOwkKCQllY2hvICI8bGk+PGEgaHJlZj0kaHJlZj4kdGl0bGU8L2E+PC9saT4iOwoJfQoJZWNobyAiPC91bD4iOwp9CmVsc2UgewoJZWNobyAiRXJyb3I6ICIgLiBtYWdwaWVfZXJyb3IoKTsKfQo/PgoKPGZvcm0+CglSU1MgVVJMOiA8aW5wdXQgdHlwZT0idGV4dCIgc2l6ZT0iMzAiIG5hbWU9InVybCIgdmFsdWU9Ijw/cGhwIGVjaG8gJHVybCA/PiI+PGJyIC8+Cgk8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iUGFyc2UgUlNTIj4KPC9mb3JtPgoKPGgzPlBhcnNlZCBSZXN1bHRzICh2YXJfZHVtcCdlZCk8L2gzPgo8cHJlPgo8P3BocCB2YXJfZHVtcCgkcnNzKTsgPz4KPC9wcmU+Cgo8P3BocAoKZnVuY3Rpb24gdGVzdF9saWJyYXJ5X3N1cHBvcnQoKSB7CiAgIGlmICghZnVuY3Rpb25fZXhpc3RzKCd4bWxfcGFyc2VyX2NyZWF0ZScpKSB7CgkgICBlY2hvICI8Yj5FcnJvcjo8L2I+IFBIUCBjb21waWxlZCB3aXRob3V0IFhNTCBzdXBwb3J0ICgtLXdpdGgteG1sKSwgTWFwZ2llIHdvbid0IHdvcmsgd2l0aG91dCBQSFAgc3VwcG9ydCBmb3IgWE1MLjxiciAvPlxuIjsKCSAgIGV4aXQ7CiAgIH0KICAgZWxzZSB7CgkgICBlY2hvICI8Yj5PSzo8L2I+IEZvdW5kIGFuIFhNTCBwYXJzZXIuIDxiciAvPlxuIjsKICAgfQogICAKICAgaWYgKCAhIGZ1bmN0aW9uX2V4aXN0cygnZ3ppbmZsYXRlJykgKSB7CgkgICBlY2hvICI8Yj5XYXJuaW5nOjwvYj4gIFBIUCBjb21waWxlZCB3aXRob3V0IFpsaWIgc3VwcG9ydCAoLS13aXRoLXpsaWIpLiBObyBzdXBwb3J0IGZvciBHWklQIGVuY29kaW5nLjxiciAvPlxuIjsKICAgfQogICBlbHNlIHsKCSAgIGVjaG8gIjxiPk9LOjwvYj4gIFN1cHBvcnQgZm9yIEdaSVAgZW5jb2RpbmcuPGJyIC8+XG4iOwogICB9CiAgIAogICBpZiAoICEgKGZ1bmN0aW9uX2V4aXN0cygnaWNvbnYnKSBhbmQgZnVuY3Rpb25fZXhpc3RzKCdtYl9jb252ZXJ0X2VuY29kaW5nJykgKSApIHsKCSAgIGVjaG8gIjxiPldhcm5pbmc6PC9iPiAgTm8gc3VwcG9ydCBmb3IgaWNvbnYgKC0td2l0aC1pY29udikgb3IgbXVsdGktYnl0ZSBzdHJpbmdzICgtLWVuYWJsZS1tYnN0cmluZykuIiAuICAKCQkgICAiTm8gc3VwcG9ydCBjaGFyYWN0ZXIgc2V0IG11bmdpbmcuPGJyIC8+XG4iOwogICB9CiAgIGVsc2UgewoJICAgZWNobyAiPGI+T0s6PC9iPiAgU3VwcG9ydCBmb3IgY2hhcmFjdGVyIG11bmdpbmcuPGJyIC8+XG4iOwogICB9Cn0KCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/scripts/magpie_simple.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCmRlZmluZSgnTUFHUElFX0RJUicsICcuLi8nKTsKcmVxdWlyZV9vbmNlKE1BR1BJRV9ESVIuJ3Jzc19mZXRjaC5pbmMnKTsKCiR1cmwgPSAkX0dFVFsndXJsJ107CgppZiAoICR1cmwgKSB7CgkkcnNzID0gZmV0Y2hfcnNzKCAkdXJsICk7CgllY2hvICJDaGFubmVsOiAiIC4gJHJzcy0+Y2hhbm5lbFsndGl0bGUnXSAuICI8cD4iOwoJZWNobyAiPHVsPiI7Cglmb3JlYWNoICgkcnNzLT5pdGVtcyBhcyAkaXRlbSkgewoJCSRocmVmID0gJGl0ZW1bJ2xpbmsnXTsKCQkkdGl0bGUgPSAkaXRlbVsndGl0bGUnXTsJCgkJZWNobyAiPGxpPjxhIGhyZWY9JGhyZWY+JHRpdGxlPC9hPjwvbGk+IjsKCX0KCWVjaG8gIjwvdWw+IjsKfQo/PgoKPGZvcm0+CglSU1MgVVJMOiA8aW5wdXQgdHlwZT0idGV4dCIgc2l6ZT0iMzAiIG5hbWU9InVybCIgdmFsdWU9Ijw/cGhwIGVjaG8gJHVybCA/PiI+PGJyIC8+Cgk8aW5wdXQgdHlwZT0ic3VibWl0IiB2YWx1ZT0iUGFyc2UgUlNTIj4KPC9mb3JtPgogIAo8cD4KPGgyPlNlY3VyaXR5IE5vdGU6PC9oMj4KVGhpcyBpcyBhIHNpbXBsZSA8Yj5leGFtcGxlPC9iPiBzY3JpcHQuICBJZiB0aGlzIHdhcyBhIDxiPnJlYWw8L2I+IHNjcmlwdCB3ZSBwcm9iYWJseSB3b3VsZG4ndCBhbGxvdyAgc3RyYW5nZXJzIHRvIHN1Ym1pdCByYW5kb20gVVJMcywgYW5kIHdlIGNlcnRhaW5seSB3b3VsZG4ndCBzaW1wbHkgZWNobyBhbnl0aGluZyBwYXNzZWQgaW4gdGhlIFVSTC4gIEFkZGl0aW9uYWxseSBpdHMgYSBiYWQgaWRlYSB0byBsZWF2ZSB0aGlzIGV4YW1wbGUgc2NyaXB0IGx5aW5nIGFyb3VuZC4KPC9wPg==]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/scripts/magpie_slashbox.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCmRlZmluZSgnTUFHUElFX0RJUicsICcuLi8nKTsKcmVxdWlyZV9vbmNlKE1BR1BJRV9ESVIuJ3Jzc19mZXRjaC5pbmMnKTsKCQokdXJsID0gJF9HRVRbJ3Jzc191cmwnXTsKCj8+Cgo8aHRtbAo8Ym9keSBMSU5LPSIjOTk5OTk5IiBWTElOSz0iIzAwMDAwMCI+Cgo8Zm9ybT4KPGlucHV0IHR5cGU9InRleHQiIG5hbWU9InJzc191cmwiIHNpemU9IjQwIiB2YWx1ZT0iPD9waHAgZWNobyAkdXJsID8+Ij48aW5wdXQgdHlwZT0iU3VibWl0Ij4KPC9mb3JtPgoKPD9waHAKCmlmICggJHVybCApIHsKCWVjaG8gImRpc3BsYXlpbmc6ICR1cmw8cD4iOwoJJHJzcyA9IGZldGNoX3JzcyggJHVybCApOwoJZWNobyBzbGFzaGJveCAoJHJzcyk7Cn0KCmVjaG8gIjxwcmU+IjsKcHJpbnRfcigkcnNzKTsKZWNobyAiPC9wcmU+IjsKPz4KCjwvYm9keT4KPC9odG1sPgoKPD9waHAKCiMganVzdCBzb21lIHF1aWNrIGFuZCB1Z2x5IHBocCB0byBnZW5lcmF0ZSBodG1sCiMKIwpmdW5jdGlvbiBzbGFzaGJveCAoJHJzcykgewoJZWNobyAiPHRhYmxlIGNlbGxwYWRkaW5nPTIgY2VsbHNwYWNpbmc9MD48dHI+IjsKCWVjaG8gIjx0ZCBiZ2NvbG9yPSMwMDY2NjY+IjsKCQoJIyBnZXQgdGhlIGNoYW5uZWwgdGl0bGUgYW5kIGxpbmsgcHJvcGVydGllcyBvZmYgb2YgdGhlIHJzcyBvYmplY3QKCSMKCSR0aXRsZSA9ICRyc3MtPmNoYW5uZWxbJ3RpdGxlJ107CgkkbGluayA9ICRyc3MtPmNoYW5uZWxbJ2xpbmsnXTsKCQoJZWNobyAiPGEgaHJlZj0kbGluaz48Zm9udCBjb2xvcj0jRkZGRkZGPjxiPiR0aXRsZTwvYj48L2ZvbnQ+PC9hPiI7CgllY2hvICI8L3RkPjwvdHI+IjsKCQoJIyBmb3JlYWNoIG92ZXIgZWFjaCBpdGVtIGluIHRoZSBhcnJheS4KCSMgZGlzcGxheWluZyBzaW1wbGUgbGlua3MKCSMKCSMgd2UgY291bGQgYmUgZG9pbmcgYWxsIHNvcnRzIG9mIG5lYXQgdGhpbmdzIHdpdGggdGhlIGR1YmxpbiBjb3JlCgkjIGluZm8sIG9yIHRoZSBldmVudCBpbmZvLCBvciB3aGF0IG5vdCwgYnV0IGtlZXBpbmcgaXQgc2ltcGxlIGZvciBub3cuCgkjCglmb3JlYWNoICgkcnNzLT5pdGVtcyBhcyAkaXRlbSApIHsKCQllY2hvICI8dHI+PHRkIGJnY29sb3I9I2NjY2NjYz4iOwoJCWVjaG8gIjxhIGhyZWY9JGl0ZW1bbGlua10+IjsKCQllY2hvICRpdGVtWyd0aXRsZSddOwoJCWVjaG8gIjwvYT48L3RkPjwvdHI+IjsKCX0JCQoJCgllY2hvICI8L3RhYmxlPiI7Cn0KCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/scripts/README</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[U29tZSBleGFtcGxlIG9uIGhvdyB0byB1c2UgTWFncGllOgoKKiBtYWdwaWVfc2ltcGxlLnBocCAqCiAgU2ltcGxlIGV4YW1wbGUgb2YgZmV0Y2hpbmcgYW5kIHBhcnNpbmcgYW4gUlNTIGZpbGUuIEV4cGVjdHMgdG8gYmUKICBjYWxsZWQgd2l0aCBhIHF1ZXJ5IHBhcmFtICdyc3NfdXJsPWh0dHA6Ly88c29tZSByc3MgZmlsZT4nCgoqIHNpbXBsZV9zbWFydHkucGhwICoKICBTaW1pbGlhciB0byBtYWdwaWVfc2ltcGxlLCBidXQgdXNpbmcgdGhlIFNtYXJ0eSB0ZW1wbGF0ZSBlbmdpbmUgdG8gZG8KICBkaXNwbGF5LiAgQWxzbyBkZW1vc3RyYXRlcyB1c2luZyByc3NfdXRpbHMuaW5jIGFuZCBhIHNtYXJ0eSBwbHVnaW4gdG8KICBwYXJzZSBhbmQgZGlzcGxheSB3aGVuIGVhY2ggUlNTIGl0ZW0gd2FzIHB1Ymxpc2hlZC4KCiogbWFncGllX2RlYnVnLnBocCAqCiAgRGlzcGxheXMgYWxsIHRoZSBpbmZvcm1hdGlvbiBhdmFpbGFibGUgZnJvbSBhIHBhcnNlZCBmZWVkLgoKKiBzbWFydHlfcGx1Z2luL21vZGlmaWVyLnJzc19kYXRlX3BhcnNlLnBocCAqCiAKICBBIFNtYXJ0eSBwbHVnaW4gZm9yIHBhcnNpbmcgUlNTIHN0eWxlIGRhdGVzLiAgWW91IG11c3QgaW5jbHVkZSByc3NfdXRpbHMuaW5jCiAgZm9yIHRoaXMgcGx1Z2luIHRvIHdvcmsuICBJdCBhbHNvIG11c3QgYmUgaW5zdGFsbGVkIGluIHRoZSBTbWFydHkgcGx1Z2luCiAgZGlyZWN0b3J5LCBzZWUgdGhlIFNtYXJ0eSBkb2NzIGZvciBkZXRhaWxzLgoKKiB0ZW1wbGF0ZXMvc2ltcGxlLnNtYXJ0eQogIEEgU21hcnR5IHRlbXBsYXRlIHVzZWQgYnkgc2ltcGxlX3NtYXJ0eS5waHAgd2hpY2ggZGVtb3N0cmF0ZXMKICBkaXNwbGF5aW5nIGFuIFJTUyBmZWVkIGFuZCB1c2luZyB0aGUgZGF0ZSBwYXJzZSBwbHVnaW4uCiAgCiAgClRoZSBTbWFydHkgdGVtcGxhdGUgZW5naW5lIGFuZCBkb2N1bWVudGF0aW9uIG9uIGhvdyB0byB1c2UgaXQgYXJlIGF2YWlsYWJsZSBmcm9tCmh0dHA6Ly9zbWFydHkucGhwLm5ldAo=]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/scripts/simple_smarty.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCi8vIERlZmluZSBwYXRoIHRvIFNtYXJ0eSBmaWxlcyAoZG9uJ3QgZm9yZ2V0IHRyYWlsaW5nIHNsYXNoKQovLyBhbmQgbG9hZCBsaWJyYXJ5LiAgKHlvdSdsbCB3YW50IHRvIGNoYW5nZSB0aGlzIHZhbHVlKQovLwovLyBOT1RFOiAgeW91IGNhbiBhbHNvIHNpbXBseSBhZGQgU21hcnR5IHRvIHlvdXIgaW5jbHVkZSBwYXRoCmRlZmluZSgnU01BUlRZX0RJUicsICcvaG9tZS9rZWxsYW4vcHJvanMvbWFncGllcnNzL3NjcmlwdHMvU21hcnR5LycpOwpyZXF1aXJlX29uY2UoU01BUlRZX0RJUi4nU21hcnR5LmNsYXNzLnBocCcpOwoKLy8gZGVmaW5lIHBhdGggdG8gTWFncGllIGZpbGVzIGFuZCBsb2FkIGxpYnJhcnkKLy8gKHlvdSdsbCB3YW50IHRvIGNoYW5nZSB0aGlzIHZhbHVlKQovLwovLyBOT1RFOiB5b3UgY2FuIGFsc28gc2ltcGxlIGFkZCBNYWdwaWVSU1MgdG8geW91ciBpbmNsdWRlIHBhdGgKZGVmaW5lKCdNQUdQSUVfRElSJywgJy9ob21lL2tlbGxhbi9wcm9qcy9tYWdwaWVyc3MvJyk7CnJlcXVpcmVfb25jZShNQUdQSUVfRElSLidyc3NfZmV0Y2guaW5jJyk7CnJlcXVpcmVfb25jZShNQUdQSUVfRElSLidyc3NfdXRpbHMuaW5jJyk7CgoKLy8gb3B0aW9uYWxseSBzaG93IGxvdHMgb2YgZGVidWdnaW5nIGluZm8KIyBkZWZpbmUoJ01BR1BJRV9ERUJVRycsIDIpOwoKLy8gb3B0aW9uYWxseSBmbHVzaCBjYWNoZSBxdWlja2x5IGZvciBkZWJ1Z2dpbmcgcHVycG9zZXMsIAovLyBkb24ndCBkbyB0aGlzIG9uIGEgbGl2ZSBzaXRlCiMgZGVmaW5lKCdNQUdQSUVfQ0FDSEVfQUdFJywgMTApOwoKLy8gdXNlIGNhY2hlPyAgZGVmYXVsdCBpcyB5ZXMuICBzZWUgcnNzX2ZldGNoIGZvciBvdGhlciBNYWdwaWUgb3B0aW9ucwojIGRlZmluZSgnTUFHUElFX0NBQ0hFX09OJywgMSkKCi8vIHNldHVwIHRlbXBsYXRlIG9iamVjdAokc21hcnR5ID0gbmV3IFNtYXJ0eTsKJHNtYXJ0eS0+Y29tcGlsZV9jaGVjayA9IHRydWU7CgovLyB1cmwgb2YgYW4gcnNzIGZpbGUKJHVybCA9ICRfR0VUWydyc3NfdXJsJ107CgoKaWYgKCAkdXJsICkgewoJLy8gYXNzaWduIGEgdmFyaWFibGUgdG8gc21hcnR5IGZvciB1c2UgaW4gdGhlIHRlbXBsYXRlCgkkc21hcnR5LT5hc3NpZ24oJ3Jzc191cmwnLCAkdXJsKTsKCQoJLy8gdXNlIE1hZ3BpZVJTUyB0byBmZXRjaCByZW1vdGUgUlNTIGZpbGUsIGFuZCBwYXJzZSBpdAoJJHJzcyA9IGZldGNoX3JzcyggJHVybCApOwoJCgkvLyBpZiBmZXRjaF9yc3MgcmV0dXJuZWQgZmFsc2UsIHdlIGVuY291bnRlcmVkIGFuIGVycm9yCglpZiAoICEkcnNzICkgewoJCSRzbWFydHktPmFzc2lnbiggJ2Vycm9yJywgbWFncGllX2Vycm9yKCkgKTsKCX0KCSRzbWFydHktPmFzc2lnbigncnNzJywgJHJzcyApOwoJCgkkaXRlbSA9ICRyc3MtPml0ZW1zWzBdOwoJJGRhdGUgPSBwYXJzZV93M2NkdGYoICRpdGVtWydkYyddWydkYXRlJ10gKTsKCSRzbWFydHktPmFzc2lnbiggJ2RhdGUnLCAkZGF0ZSApOwp9CgovLyBwYXJzZSBzbWFydHkgdGVtcGxhdGUsIGFuZCBkaXNwbGF5IHVzaW5nIHRoZSB2YXJpYWJsZXMgd2UgYXNzaWduZWQKJHNtYXJ0eS0+ZGlzcGxheSgnc2ltcGxlLnNtYXJ0eScpOwoKPz4K]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/scripts/smarty_plugin/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/magpierss/scripts/smarty_plugin/modifier.rss_date_parse.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKCi8qCiAqIFNtYXJ0eSBwbHVnaW4KICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogKiBUeXBlOiAgICAgbW9kaWZpZXIKICogTmFtZTogICAgIHJzc19kYXRlX3BhcnNlCiAqIFB1cnBvc2U6ICBwYXJzZSByc3MgZGF0ZSBpbnRvIHVuaXggZXBvY2gKICogSW5wdXQ6ICAgIHN0cmluZzogcnNzIGRhdGUKICoJCQkgZGVmYXVsdF9kYXRlOiAgZGVmYXVsdCBkYXRlIGlmICRyc3NfZGF0ZSBpcyBlbXB0eQogKgogKiBOT1RFISEhICBwYXJzZV93M2NkdGYgcHJvdmlkZWQgYnkgTWFncGllUlNTJ3MgcnNzX3V0aWxzLmluYwogKiAgICAgICAgICB0aGlzIGZpbGUgbmVlZHMgdG8gYmUgaW5jbHVkZWQgc29tZXdoZXJlIGluIHlvdXIgc2NyaXB0CiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KICovCiAKZnVuY3Rpb24gc21hcnR5X21vZGlmaWVyX3Jzc19kYXRlX3BhcnNlICgkcnNzX2RhdGUsICRkZWZhdWx0X2RhdGU9bnVsbCkKewoJaWYoJHJzc19kYXRlICE9ICcnKSB7CiAgICAJcmV0dXJuIHBhcnNlX3czY2R0ZiggJHJzc19kYXRlICk7Cgl9IGVsc2VpZiAoaXNzZXQoJGRlZmF1bHRfZGF0ZSkgJiYgJGRlZmF1bHRfZGF0ZSAhPSAnJykgewkJCiAgICAJcmV0dXJuIHBhcnNlX3czY2R0ZiggJGRlZmF1bHRfZGF0ZSApOwoJfSBlbHNlIHsKCQlyZXR1cm47Cgl9Cn0KCgoKCj8+Cg==]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/scripts/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/lib/magpierss/scripts/templates/simple.smarty</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGh0bWw+CjxoZWFkPgo8dGl0bGU+QSBTaW1wbGUgUlNTIEJveDogIEknbSBub3QgYSBkZXNpZ25lcjwvdGl0bGU+CjwvaGVhZD4KPGJvZHk+Cgo8Zm9ybT4KPGI+UlNTIEZpbGU6PC9iPiAKPGlucHV0IHR5cGU9dGV4dCIgbmFtZT0icnNzX3VybCIgdmFsdWU9InskcnNzX3VybH0iIHNpemU9IjUwIj4gCjxpbnB1dCB0eXBlPSJzdWJtaXQiPgo8L2Zvcm0+Cgo8Yj5EaXNwbGF5aW5nOjwvYj4geyRyc3NfdXJsfQo8cD4KCnsqIGlmICRlcnJvciBkaXNwbGF5IHRoZSBlcnJvciAKICBlbHNlaWYgcGFyc2VkIFJTUyBvYmplY3QgZGlzcGxheSB0aGUgUlNTIAogIGVsc2Ugc29saWNpdCB1c2VyIGZvciBhIFVSTCAKKn0KCntpZiAkZXJyb3IgfQo8Yj5FcnJvcjo8L2I+IHskZXJyb3J9CntlbHNlaWYgJHJzc30KPHRhYmxlIGJvcmRlcj0xPgogIDx0cj4KICAgIDx0aCBjb2xzcGFuPTI+CiAgICAgIDxhIGhyZWY9InskcnNzLT5jaGFubmVsLmxpbmt9Ij57JHJzcy0+Y2hhbm5lbC50aXRsZX08L2E+CiAgICA8L3RoPgogIDwvdHI+CiAgCXtmb3JlYWNoIGZyb209JHJzcy0+aXRlbXMgaXRlbT1pdGVtfQogIAkgPHRyPgoJICA8dGQ+CgkgIDxhIGhyZWY9InskaXRlbS5saW5rfSI+eyRpdGVtLnRpdGxlfTwvYT4KICAJICA8L3RkPgoJICA8dGQ+CgkgICB7JGl0ZW0uZGMuZGF0ZXxyc3NfZGF0ZV9wYXJzZXxkYXRlX2Zvcm1hdDoiJUEsICVCICVlLCAlWSJ9CgkgIDwvdGQ+Cgk8L3RyPgoJey9mb3JlYWNofQo8L3RhYmxlPgp7ZWxzZX0KICBFbnRlciB0aGUgVVJMIG9mIGFuIFJTUyBmaWxlIHRvIGRpc3BsYXkuCnsvaWZ9Cgo8L2JvZHk+CjwvaHRtbD4K]]></data>
	</file>
	<file>
	  <filename>/lib/magpierss/TROUBLESHOOTING</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[VFJPVUJMRVNIT09USU5HCgoKVHJvdWJsZSBJbnN0YWxsaW5nIE1hZ3BpZVJTUzoKCjEuCUZhdGFsIGVycm9yOiBGYWlsZWQgb3BlbmluZyByZXF1aXJlZCAnL3BhdGgvdG8vc2NyaXB0L3Jzc19mZXRjaC5pbmMnIAoJKGluY2x1ZGVfcGF0aD0nLjovdXNyL2xvY2FsL2xpYi9waHA6L3Vzci9sb2NhbC9saWIvcGhwL3BlYXInKSAKCjIuCUNhY2hlIGNvdWxkbid0IG1ha2UgZGlyICcuL2NhY2hlJy4KCjMuCUZhdGFsIGVycm9yOiBGYWlsZWQgdG8gbG9hZCBQSFAncyBYTUwgRXh0ZW5zaW9uLiAKCWh0dHA6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vcmVmLnhtbC5waHAKClRyb3VibGUgVXNpbmcgTWFncGllUlNTCgo0LglXYXJuaW5nOiBNYWdwaWVSU1M6IEZhaWxlZCB0byBmZXRjaCBleGFtcGxlLmNvbS9pbmRleC5yZGYuIAoJKEhUVFAgRXJyb3I6IEludmFsaWQgcHJvdG9jb2wgIiIpCgo1LglXYXJuaW5nOiBNYWdwaWVSU1M6IEZhaWxlZCB0byBwYXJzZSBSU1MgZmlsZS4gCgkobm90IHdlbGwtZm9ybWVkIChpbnZhbGlkIHRva2VuKSBhdCBsaW5lIDE5LCBjb2x1bW4gOTgpCgo2LglXYXJuaW5nOiBNYWdwaWVSU1M6IEZhaWxlZCB0byBmZXRjaCBodHRwOi8vbG9jYWxob3N0L3Jzcy9mZWF0dXJlcy4xLTAucnNzLiAKCShIVFRQIFJlc3BvbnNlOiBIVFRQLzEuMSA0MDQgTm90IEZvdW5kKQoKSWYgeW91IHdvdWxkIHJhdGhlciBwcm92aWRlIGEgY3VzdG9tIGVycm9yLCBzZWUgdGhlIENPT0tCT09LCihodHRwOi8vbWFncGllcnNzLnNmLm5ldC9jb29rYm9vay5odG1sKSByZWNpcGUgMi4KCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKMS4JRmF0YWwgZXJyb3I6IEZhaWxlZCBvcGVuaW5nIHJlcXVpcmVkICcvcGF0aC90by9zY3JpcHQvcnNzX2ZldGNoLmluYycgCgkoaW5jbHVkZV9wYXRoPScuOi91c3IvbG9jYWwvbGliL3BocDovdXNyL2xvY2FsL2xpYi9waHAvcGVhcicpIAoJCglUaGlzIGNvdWxkIG1lYW4gdGhhdDoKCQoJYSkgUEhQIGNhbid0IGZpbmQgdGhlIE1hZ3BpZVJTUyBmaWxlcy4KCWIpIFBIUCBmb3VuZCB0aGVtIHRoZSBNYWdwaWVSU1MgZmlsZXMsIGJ1dCBjYW4ndCByZWFkIHRoZW0uCgkKCWEuIFRlbGxpbmcgUEhQIHdoZXJlIHRvIGxvb2sgZm9yIE1hZ3BpZVJTUyBmaWxlLgoJCglUaGlzIG1pZ2h0IG1lYW4geW91ciBQSFAgcHJvZ3JhbSBjYW4ndCBmaW5kIHRoZSBNYWdwaWVSU1MgbGlicmFyaWVzLiAKCU1hZ3BpZSByZWxpZXMgb24gNCBpbmNsdWRlIGZpbGVzLCByc3NfZmV0Y2guaW5jLCByc3NfcGFyc2UuaW5jLAoJcnNzX2NhY2hlLmluYywgcnNzX3V0aWwuaW5jLCBhbmQgZm9yIG5vcm1hbCB1c2UgeW91J2xsIG5lZWQgYWxsIDQgKHNlZSB0aGUKCWNvb2tib29rIGZvciBleGNlcHRpb25zKS4KCglUaGlzIGNhbiBiZSBmaXhlZCBieSBtYWtpbmcgc3VyZSB0aGUgTWFncGllUlNTIGZpbGVzIGFyZSBpbiB5b3VyIGluY2x1ZGUKCXBhdGguCgkKCUlmIHlvdSBjYW4gZWRpdCB5b3VyIGluY2x1ZGUgcGF0aCAoZm9yIGV4YW1wbGUgeW91ciBvbiBhIHNoYXJlZCBob3N0KSB0aGVuCgl5b3UgbmVlZCB0byByZXBsYWNlOgoJCglyZXF1aXJlX29uY2UoJ3Jzc19mZXRjaC5pbmMnKTsKCQkKCS13aXRoLQoJCQoJZGVmaW5lKCdNQUdQSUVfRElSJywgJy9wYXRoL3RvL21hZ3BpZXJzcy8nKTsKCXJlcXVpcmVfb25jZShNQUdQSUVfRElSLidyc3NfZmV0Y2guaW5jJyk7CgoJYi4gIFBIUCBjYW4ndCByZWFkIHRoZSBNYWdwaWVSU1MgZmlsZXMKCQoJQWxsIFBIUCBsaWJyYXJpZXMgbmVlZCB0byBiZSByZWFkYWJsZSBieSB5b3VyIHdlYnNlcnZlci4KCQoJT24gVW5peCB5b3UgY2FuIGFjY29tcGxpc2ggdGhpcyB3aXRoOgoJCgljaG1vZCA3NTUgcnNzX2ZldGNoLmluYyByc3NfcGFyc2UuaW5jIHJzc19jYWNoZS5pbmMgcnNzX3V0aWwuaW5jCgkKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgoyLiBDYWNoZSBjb3VsZG4ndCBtYWtlIGRpciAnLi9jYWNoZScuCgoJTWFncGllUlNTIGNhY2hlcyB0aGUgcmVzdWx0cyBvZiBmZXRjaGVkIGFuZCBwYXJzZWQgUlNTIHRvIHJlZHVjZSB0aGUgbG9hZCBvbgoJYm90aCB5b3VyIHNlcnZlciwgYW5kIHRoZSByZW1vdGUgc2VydmVyIHByb3ZpZGluZyB0aGUgUlNTLiAgSXQgZG9lcyB0aGlzIGJ5Cgl3cml0aW5nIGZpbGVzIHRvIGEgY2FjaGUgZGlyZWN0b3J5LgoKCVRoaXMgZXJyb3IgbWVhbnMgdGhlIHdlYnNlcnZlciBkb2Vzbid0IGhhdmUgd3JpdGUgYWNjZXNzIHRvIHRoZSBjdXJyZW50CglkaXJlY3RvcnkuCgkKCWEuIE1ha2UgYSB3ZWJzZXJ2ZXIgd3JpdGVhYmxlIGNhY2hlIGRpcmVjdG9yeQoJCglGaW5kIHRoZSB3ZWJzZXJ2ZXIncyBncm91cC4gKG9uIG15IHN5c3RlbSBpdCBpcyAnd3d3JykKCQoJbWtkaXIgLi9jYWNoZQoJY2hncnAgd3d3IGRpcmVjdG9yeV9uYW1lCgljaG1vZCBnK3cgZGlyZWN0b3J5X25hbWUKCQoJKHRoaXMgaXMgdGhlIGJlc3QsIGFuZCBkZXNpcmVkIHNvbHV0aW9uKQoJCgliLiBUZWxsIE1hZ3BpZVJTUyB0byBjcmVhdGUgdGhlIGNhY2hlIGRpcmVjdG9yeSBzb21ld2hlcmUgdGhlIHdlYnNlcnZlciBjYW4KCXdyaXRlIHRvLgoJCglkZWZpbmUoJ01BR1BJRV9DQUNIRV9ESVInLCAnL3RtcC9tYWdwaWVyc3MnKTsKCgkodGhpcyBpcyBub3QgYSBncmVhdCBzb2x1dGlvbiwgYW5kIG1pZ2h0IGhhdmUgc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMpCgkJCgljLiBUdXJuIG9mZiBjYWNoZWluZy4gIAoJCglNYWdwaWUgY2FuIHdvcmsgZmluZSB3aXRoIGNhY2hlaW5nLCBidXQgaXQgd2lsbCBiZSBzbG93ZXIsIGFuZCB5b3UgbWlnaHQKCWJlY29tZSBhIG51aWFuY2UgdG8gdGhlIFJTUyBwcm92aWRlciwgYnV0IGl0IGlzIGFuIG9wdGlvbi4KCQoJZGVmaW5lKCdNQUdQSUVfQ0FDSEVfT04nLCAwKTsKCQoJZC4gQW5kIGxhc3RseSwgZG8gTk9UCgkKCWNobW9kIDc3NyAuL2NhY2hlCgkKCUFueSBvZiB0aGUgYWJvdmUgc29sdXRpb25zIGFyZSBiZXR0ZXIgdGhlbiB0aGlzLgoKCU5PVEU6IElmIG5vbmUgb2YgdGhpcyB3b3JrcyBmb3IgeW91LCBsZXQgbWUga25vdy4gIEkndmUgZ290IHJvb3QsIGFuZCBhCgljdXN0b20gY29tcGlsZWQgQXBhY2hlIG9uIGFsbW9zdCBhbnkgYm94IEkgZXZlciB0b3VjaCwgc28gSSBjYW4gYmUgYSBsaXR0bGUKCW91dCBvZiB0b3VjaCB3aXRoIHJlYWxpdHkuICBCdXQgSSB3b24ndCBrbm93IHRoYXQgaWYgSSBkb24ndCBmZWVkYmFjay4KCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogMy4KMy4JRmF0YWwgZXJyb3I6IEZhaWxlZCB0byBsb2FkIFBIUCdzIFhNTCBFeHRlbnNpb24uIAoJaHR0cDovL3d3dy5waHAubmV0L21hbnVhbC9lbi9yZWYueG1sLnBocAoKCS1vci0KCQoJRmF0YWwgZXJyb3I6IEZhaWxlZCB0byBjcmVhdGUgYW4gaW5zdGFuY2Ugb2YgUEhQJ3MgWE1MIHBhcnNlci4KCWh0dHA6Ly93d3cucGhwLm5ldC9tYW51YWwvZW4vcmVmLnhtbC5waHAKCQoJTWFrZSBzdXJlIHlvdXIgUEhQIHdhcyBidWlsdCB3aXRoIC0td2l0aC14bWwKCQoJVGhpcyBoYXMgYmVlbiB0dXJuZWQgb24gYnkgZGVmYXVsdCBmb3Igc2V2ZXJhbCB2ZXJzaW9ucyBvZiBQSFAsIGJ1dCBpdCBtaWdodAoJYmUgdHVybmVkIG9mZiBpbiB5b3VyIGJ1aWxkLgoJCglTZWUgcGhwLm5ldCBmb3IgZGV0YWlscyBvbiBidWlsZGluZyBhbmQgY29uZmlndXJpbmcgUEhQLgoKCioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKNC4JV2FybmluZzogTWFncGllUlNTOiBGYWlsZWQgdG8gZmV0Y2ggaW5kZXgucmRmLiAKCShIVFRQIEVycm9yOiBJbnZhbGlkIHByb3RvY29sICIiKQoJCglZb3UgbmVlZCB0byBwdXQgaHR0cDovLyBpbiBmcm9udCBvZiB5b3VyIHRoZSBVUkwgdG8geW91ciBSU1MgZmVlZAoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgkKNS4JV2FybmluZzogTWFncGllUlNTOiBGYWlsZWQgdG8gcGFyc2UgUlNTIGZpbGUuIAoJKG5vdCB3ZWxsLWZvcm1lZCAoaW52YWxpZCB0b2tlbikgYXQgbGluZSAxOSwgY29sdW1uIDk4KQoKCVRoZXJlIGlzIGEgcHJvYmxlbSB3aXRoIHRoZSBSU1MgZmVlZCB5b3UgYXJlIHRyeWluZyB0byByZWFkLiAKCU1hZ3BpZVJTUyBpcyBhbiBYTUwgcGFyc2VyLCBhbmQgdGhlcmVmb3JlIGNhbid0IHBhcnNlIFJTUyBmZWVkIHdpdGggaW52YWxpZAoJY2hhcmFjdGVycy4gIFNvbWUgUlNTIHBhcnNlciBhcmUgYmFzZWQgb24gcmVndWxhciBleHByZXNzaW9ucywgYW5kIGNhbgoJcGFyc2UgaW52YWxpZCBSU1MgYnV0IHRoZXkgaGF2ZSB0aGVpciBvd24gcHJvYmxlbXMuCgoJWW91IGNvdWxkIHRyeSBjb250YWN0aW5nIHRoZSBhdXRob3Igb2YgdGhlIFJTUyBmZWVkLCBhbmQgcG9pbnRpbmcgdGhlbSB0bwoJdGhlIG9ubGluZSBSU1MgdmFsaWRhdG9yIGF0OgoJCglodHRwOi8vZmVlZHMuYXJjaGl2ZS5vcmcvdmFsaWRhdG9yLwoKKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgkKNi4JV2FybmluZzogTWFncGllUlNTOiBGYWlsZWQgdG8gZmV0Y2ggaHR0cDovL2V4YW1wbGUuY29tL2luZGV4LnJkZiAKCShIVFRQIFJlc3BvbnNlOiBIVFRQLzEuMSA0MDQgTm90IEZvdW5kKQoKCUl0cyBhIDQwNCEgIFRoZSBSU1MgZmlsZSBhaW4ndCB0aGVyZS4KCQoJCg==]]></data>
	</file>
	<file>
	  <filename>/method.install.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCmlmICghaXNzZXQoJGdDbXMpKSBleGl0Ow0KDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBJbnN0YWxsKCkNCgkgICBXaGVuIHlvdXIgbW9kdWxlIGlzIGluc3RhbGxlZCwgeW91IG1heSBuZWVkIHRvIGRvIHNvbWUNCgkgICBzZXR1cC4gVHlwaWNhbCB0aGluZ3MgdGhhdCBoYXBwZW4gaGVyZSBhcmUgdGhlIGNyZWF0aW9uDQoJICAgYW5kIHByZXBvcHVsYXRpb24gb2YgZGF0YWJhc2UgdGFibGVzLCBkYXRhYmFzZSBzZXF1ZW5jZXMsDQoJICAgcGVybWlzc2lvbnMsIHByZWZlcmVuY2VzLCBldGMuDQoJICAgCSAgIA0KCSAgIEZvciBpbmZvcm1hdGlvbiBvbiB0aGUgY3JlYXRpb24gb2YgZGF0YWJhc2UgdGFibGVzLA0KCSAgIGNoZWNrIG91dCB0aGUgQURPREIgRGF0YSBEaWN0aW9uYXJ5IHBhZ2UgYXQNCgkgICBodHRwOi8vcGhwbGVucy5jb20vbGVucy9hZG9kYi9kb2NzLWRhdGFkaWN0Lmh0bQ0KCSAgIA0KCSAgIFRoaXMgZnVuY3Rpb24gY2FuIHJldHVybiBhIHN0cmluZyBpbiBjYXNlIG9mIGFueSBlcnJvciwNCgkgICBhbmQgQ01TIHdpbGwgbm90IGNvbnNpZGVyIHRoZSBtb2R1bGUgaW5zdGFsbGVkLg0KCSAgIFN1Y2Nlc3NmdWwgaW5zdGFsbHMgc2hvdWxkIHJldHVybiBGQUxTRSBvciBub3RoaW5nIGF0IGFsbC4NCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJCQ0KCQkvLyBnZXQgYSByZWZlcmVuY2UgdG8gdGhlIGRhdGFiYXNlDQoJCSRkYiA9ICR0aGlzLT5jbXMtPmRiOw0KCQkNCgkJLy8gbXlzcWwtc3BlY2lmaWMsIGlnbm9yZWQgYnkgb3RoZXIgZGF0YWJhc2VzDQoJCS8vIHNldHMgdXAgb3B0aW9ucyBmb3IgdGhlIHRhYmxlDQoJCSR0YWJsZV9vcHRpb25zID0gYXJyYXkoJ215c3FsJyA9PiAnVFlQRT1NeUlTQU0nKTsNCgkJDQoJCS8vIGNyZWF0ZSB0YWJsZSB0byBzdG9yZSBmZWVkIGluZm9ybWF0aW9uDQoJCSR0YWJsZSA9IE5ld0RhdGFEaWN0aW9uYXJ5KCRkYik7DQoJCQ0KCQkJLy8gYWRkIHNvbWUgZmllbGRzIHRvIHRoZSB0YWJsZS4uLg0KCQkJJHRhYmxlX2ZpZWxkcyA9ICJpZCBJIEtFWSwNCgkJCQkJCQkgZmVlZF9uYW1lIEMoMTAwKSwNCgkJCQkJCQkgZmVlZF91cmwgWCI7DQoJCQkJCQkJIA0KCQkJLy8gYWRkIHRoZSB0YWJsZSAibW9kdWxlX3JzczJodG1sX2ZlZWRzIg0KCQkJJHNxbGFycmF5ID0gJHRhYmxlLT5DcmVhdGVUYWJsZVNRTChjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX3JzczJodG1sX2ZlZWRzJywgJHRhYmxlX2ZpZWxkcywgJHRhYmxlX29wdGlvbnMpOw0KCQkJJHRhYmxlLT5FeGVjdXRlU1FMQXJyYXkoJHNxbGFycmF5KTsNCgkJCQ0KCQkJLy8gY3JlYXRlIHRoZSBzZXF1ZW5jZSB0YWJsZQ0KCQkJJGRiLT5DcmVhdGVTZXF1ZW5jZShjbXNfZGJfcHJlZml4KCkgLiAnbW9kdWxlX3JzczJodG1sX2ZlZWRzX3NlcScpOw0KCQkJDQoJCS8vIGluc3RhbGwgYSBkZWZhdWx0IHRlbXBsYXRlDQoJCSR0aGlzLT5TZXRUZW1wbGF0ZSgnRGVmYXVsdCcsDQoJCQknPGgyPnskcnNzLT5jaGFubmVsLnRpdGxlfTwvaDI+DQoJCQkJPHA+PGVtPnskcnNzLT5jaGFubmVsLmxpbmt9PC9lbT48L3A+DQoJCQkJPHRhYmxlIHdpZHRoPSIxMDAlIiBib3JkZXI9IjAiIGNlbGxzcGFjaW5nPSIwIiBjZWxscGFkZGluZz0iMCI+DQoJCQkJe2ZvcmVhY2ggZnJvbT0kcnNzLT5pdGVtcyBpdGVtPWl0ZW19DQoJCQkJCTx0ciBzdHlsZT0iYmFja2dyb3VuZDoge2N5Y2xlIHZhbHVlcz0iI0NDQ0NDQywgI0ZGRkZGRiJ9Ij4NCgkJCQkJCTx0ZD48aDMgc3R5bGU9Im1hcmdpbjogMDsgZGlzcGxheTogaW5saW5lOyI+PHN0cm9uZz48YSBocmVmPSJ7JGl0ZW0ubGlua30iPnskaXRlbS50aXRsZX08L2E+PC9oMz48L3N0cm9uZz4gLSA8ZW0+eyRpdGVtLnB1YmRhdGV9PC9lbT4NCgkJCQkJCTxwIHN0eWxlPSJtYXJnaW46IDA7Ij57JGl0ZW0uc3VtbWFyeX08L3A+PC90ZD4NCgkJCQkJPC90cj4NCgkJCQl7L2ZvcmVhY2h9DQoJCQkJPC90YWJsZT4nKTsNCgkJDQoJCQkNCgkJLy8gcGVybWlzc2lvbnMNCgkJJHRoaXMtPkNyZWF0ZVBlcm1pc3Npb24oJ01vZGlmeSBSU1MySFRNTCcsJ01vZGlmeSBSU1MySFRNTCcpOw0KDQoJCS8vIHB1dCBtZW50aW9uIGludG8gdGhlIGFkbWluIGxvZw0KCQkkdGhpcy0+QXVkaXQoIDAsICR0aGlzLT5MYW5nKCdmcmllbmRseW5hbWUnKSwgJHRoaXMtPkxhbmcoJ2luc3RhbGxlZCcsJHRoaXMtPkdldFZlcnNpb24oKSkpOw0KCQkNCj8+]]></data>
	</file>
	<file>
	  <filename>/method.uninstall.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCmlmICghaXNzZXQoJGdDbXMpKSBleGl0Ow0KDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBVbmluc3RhbGwoKQ0KCSAgIFNvbWV0aW1lcywgYW4gZXhjZXB0aW9uYWxseSB1bmVubGlnaHRlbmVkIG9yIGlnbm9yYW50DQoJICAgYWRtaW4gd2lsbCB3aXNoIHRvIHVuaW5zdGFsbCB5b3VyIG1vZHVsZS4gV2hpbGUgaXQNCgkgICB3b3VsZCBiZSBiZXN0IHRvIGxheSBpbnRvIHRoZXNlIGlkaW90cyB3aXRoIGEgY2x1ZXN0aWNrLA0KCSAgIHdlIHdpbGwgZG8gdGhlIG1hZ25hbmltb3VzIHRoaW5nIGFuZCByZW1vdmUgdGhlIG1vZHVsZQ0KCSAgIGFuZCBjbGVhbiB1cCB0aGUgZGF0YWJhc2UsIHBlcm1pc3Npb25zLCBhbmQgcHJlZmVyZW5jZXMNCgkgICB0aGF0IGFyZSBzcGVjaWZpYyB0byBpdC4NCgkgICBUaGlzIGlzIHRoZSBtZXRob2Qgd2hlcmUgd2UgZG8gdGhpcy4NCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJCQ0KCQkvL0dldCBhIHJlZmVyZW5jZSB0byB0aGUgZGF0YWJhc2UNCiAgICAJJGRiID0gJHRoaXMtPmNtcy0+ZGI7DQoNCgkJLy9SZW1vdmUgdGhlIGRhdGFiYXNlIHRhYmxlDQoJCSR0YWJsZSA9IE5ld0RhdGFEaWN0aW9uYXJ5KCAkZGIgKTsNCgkJJHNxbGFycmF5ID0gJHRhYmxlLT5Ecm9wVGFibGVTUUwoIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3JzczJodG1sX2ZlZWRzJyApOw0KCQkkdGFibGUtPkV4ZWN1dGVTUUxBcnJheSgkc3FsYXJyYXkpOw0KCQ0KCQkvL1JlbW92ZSB0aGUgc2VxdWVuY2UNCgkJJGRiLT5Ecm9wU2VxdWVuY2UoIGNtc19kYl9wcmVmaXgoKS4nbW9kdWxlX3JzczJodG1sX2ZlZWRzX3NlcScgKTsNCgkJDQoJCS8vIHJlbW92ZSBhbGwgdGVtcGxhdGVzDQoJCSR0ZW1wbGF0ZXMgPSAkdGhpcy0+TGlzdFRlbXBsYXRlcygpOw0KCQlmb3JlYWNoICgkdGVtcGxhdGVzIGFzICR0ZW1wbGF0ZSkNCgkJew0KCQkJJHRoaXMtPkRlbGV0ZVRlbXBsYXRlKCR0ZW1wbGF0ZSwgIlJTUzJIVE1MIik7DQoJCX0NCgkJDQoJCS8vIHJlbW92ZSB0aGUgcGVybWlzc2lvbnMNCgkJJHRoaXMtPlJlbW92ZVBlcm1pc3Npb24oJ1VzZSBSU1MySFRNTCcpOw0KCQkNCgkJLy8gcHV0IG1lbnRpb24gaW50byB0aGUgYWRtaW4gbG9nDQoJCSR0aGlzLT5BdWRpdCggMCwgJHRoaXMtPkxhbmcoJ2ZyaWVuZGx5bmFtZScpLCAkdGhpcy0+TGFuZygndW5pbnN0YWxsZWQnKSk7DQoNCj8+]]></data>
	</file>
	<file>
	  <filename>/method.upgrade.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHAKaWYgKCFpc3NldCgkZ0NtcykpIGV4aXQ7CgoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KCSAgIFVwZ3JhZGUoKQoJICAgSWYgeW91ciBtb2R1bGUgdmVyc2lvbiBudW1iZXIgZG9lcyBub3QgbWF0Y2ggdGhlIHZlcnNpb24KCSAgIG51bWJlciBvZiB0aGUgaW5zdGFsbGVkIG1vZHVsZSwgdGhlIENNUyBBZG1pbiB3aWxsIGdpdmUKCSAgIHlvdSBhIGNoYW5jZSB0byB1cGdyYWRlIHRoZSBtb2R1bGUuIFRoaXMgaXMgdGhlIGZ1bmN0aW9uCgkgICB0aGF0IGFjdHVhbGx5IGhhbmRsZXMgdGhlIHVwZ3JhZGUuCgkgICBJZGVhbGx5LCB0aGlzIGZ1bmN0aW9uIHNob3VsZCBoYW5kbGUgdXBncmFkZXMgaW5jcmVtZW50YWxseSwKCSAgIHNvIHlvdSBjb3VsZCB1cGdyYWRlIGZyb20gdmVyc2lvbiAwLjAuMSB0byAxMC41Ljcgd2l0aAoJICAgYSBzaW5nbGUgY2FsbC4gRm9yIGEgZ3JlYXQgZXhhbXBsZSBvZiB0aGlzLCBzZWUgdGhlIE5ld3MKCSAgIG1vZHVsZSBpbiB0aGUgc3RhbmRhcmQgQ01TIGluc3RhbGwuCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovCgkJJGN1cnJlbnRfdmVyc2lvbiA9ICRvbGR2ZXJzaW9uOwoJCXN3aXRjaCgkY3VycmVudF92ZXJzaW9uKQoJCXsKCQkJY2FzZSAiMS4wIjoKCQkJICAgICBicmVhazsKCQkJY2FzZSAiMS4xIjoKCQkJICAgICBicmVhazsKCQl9CgkJCgkJLy8gcHV0IG1lbnRpb24gaW50byB0aGUgYWRtaW4gbG9nCgkJJHRoaXMtPkF1ZGl0KCAwLCAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyksICR0aGlzLT5MYW5nKCd1cGdyYWRlZCcsJHRoaXMtPkdldFZlcnNpb24oKSkpOwoKPz4=]]></data>
	</file>
	<file>
	  <filename>/RSS2HTML.module.php</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PD9waHANCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIE1vZHVsZTogUlNTMkhUTUwgLSBUaGUgUlNTMkhUTUwgbW9kdWxlIGFsbG93cyB5b3UgdG8gb3V0cHV0IGFuIFJTUyBmZWVkIGFzIEhUTUwuIFRoZSBvdXRwdXQgaXMgZnVsbHkgY3VzdG9taXphYmxlIHZpYSBTbWFydHkgdGVtcGxhdGVzLg0KIyBWZXJzaW9uOiAwLjEsIEphbWVzIERpeG9uDQojDQojLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KIyBDTVMgLSBDTVMgTWFkZSBTaW1wbGUgaXMgKGMpIDIwMDcgYnkgVGVkIEt1bHAgKHdpc2h5QGNtc21hZGVzaW1wbGUub3JnKQ0KIyBUaGlzIHByb2plY3QncyBob21lcGFnZSBpczogaHR0cDovL3d3dy5jbXNtYWRlc2ltcGxlLm9yZw0KIw0KIyBUaGlzIGZpbGUgb3JpZ2luYWxseSBjcmVhdGVkIGJ5IE1vZHVsZU1ha2VyIG1vZHVsZSwgdmVyc2lvbiAwLjMuMQ0KIyBDb3B5cmlnaHQgKGMpIDIwMDcgYnkgU2FtdWVsIEdvbGRzdGVpbiAoc2pnQGNtc21hZGVzaW1wbGUub3JnKSANCiMNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojDQojIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5DQojIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5DQojIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yDQojIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uDQojDQojIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLA0KIyBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZg0KIyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlDQojIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuDQojIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlDQojIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlDQojIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSwgU3VpdGUgMzMwLCBCb3N0b24sIE1BIDAyMTExLTEzMDcgVVNBDQojIE9yIHJlYWQgaXQgb25saW5lOiBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvbGljZW5zZXMuaHRtbCNHUEwNCiMNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQojIEZvciBIZWxwIGJ1aWxkaW5nIG1vZHVsZXM6DQojIC0gUmVhZCB0aGUgRG9jdW1lbnRhdGlvbiBhcyBpdCBiZWNvbWVzIGF2YWlsYWJsZSBhdA0KIyAgIGh0dHA6Ly9kZXYuY21zbWFkZXNpbXBsZS5vcmcvDQojIC0gQ2hlY2sgb3V0IHRoZSBTa2VsZXRvbiBNb2R1bGUgZm9yIGEgY29tbWVudGVkIGV4YW1wbGUNCiMgLSBMb29rIGF0IG90aGVyIG1vZHVsZXMsIGFuZCBsZWFybiBmcm9tIHRoZSBzb3VyY2UNCiMgLSBDaGVjayBvdXQgdGhlIGZvcnVtcyBhdCBodHRwOi8vZm9ydW1zLmNtc21hZGVzaW1wbGUub3JnDQojIC0gQ2hhdCB3aXRoIGRldmVsb3BlcnMgb24gdGhlICNjbXMgSVJDIGNoYW5uZWwNCiMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQpjbGFzcyBSU1MySFRNTCBleHRlbmRzIENNU01vZHVsZQ0Kew0KDQoJZnVuY3Rpb24gR2V0TmFtZSgpDQoJew0KCQlyZXR1cm4gJ1JTUzJIVE1MJzsNCgl9DQoNCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCSAgIEdldEZyaWVuZGx5TmFtZSgpDQoJICAgVGhpcyBjYW4gcmV0dXJuIGFueSBzdHJpbmcsIHByZWZlcmFibHkgYSBsb2NhbGl6ZWQgbmFtZQ0KCSAgIG9mIHRoZSBtb2R1bGUuIFRoaXMgaXMgdGhlIG5hbWUgdGhhdCdzIHNob3duIGluIHRoZQ0KCSAgIEFkbWluIE1lbnVzIGFuZCBzZWN0aW9uIHBhZ2VzIChpZiB0aGUgbW9kdWxlIGhhcyBhbiBhZG1pbg0KCSAgIGNvbXBvbmVudCkuDQoJICAgDQoJICAgU2VlIHRoZSBub3RlIG9uIGxvY2FsaXphdGlvbiBhdCB0aGUgdG9wIG9mIHRoaXMgZmlsZS4NCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJZnVuY3Rpb24gR2V0RnJpZW5kbHlOYW1lKCkNCgl7DQoJCXJldHVybiAkdGhpcy0+TGFuZygnZnJpZW5kbHluYW1lJyk7DQoJfQ0KDQoJDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBHZXRWZXJzaW9uKCkNCgkgICBUaGlzIGNhbiByZXR1cm4gYW55IHN0cmluZywgcHJlZmVyYWJseSBhIG51bWJlciBvcg0KCSAgIHNvbWV0aGluZyB0aGF0IG1ha2VzIHNlbnNlIGZvciBkZXNpZ25hdGluZyBhIHZlcnNpb24uDQoJICAgVGhlIENNUyB3aWxsIHVzZSB0aGlzIHRvIGlkZW50aWZ5IHdoZXRoZXIgb3Igbm90DQoJICAgdGhlIGluc3RhbGxlZCB2ZXJzaW9uIG9mIHRoZSBtb2R1bGUgaXMgY3VycmVudCwgYW5kDQoJICAgdGhlIG1vZHVsZSB3aWxsIHVzZSBpdCB0byBmaWd1cmUgb3V0IGhvdyB0byB1cGdyYWRlDQoJICAgaXRzZWxmIGlmIHJlcXVlc3RlZC4JICAgDQoJICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KCWZ1bmN0aW9uIEdldFZlcnNpb24oKQ0KCXsNCgkJcmV0dXJuICcxLjIuNCc7DQoJfQ0KDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBHZXRIZWxwKCkNCgkgICBUaGlzIHJldHVybnMgSFRNTCBpbmZvcm1hdGlvbiBvbiB0aGUgbW9kdWxlLg0KCSAgIFR5cGljYWxseSwgeW91J2xsIHdhbnQgdG8gaW5jbHVkZSBpbmZvcm1hdGlvbiBvbiBob3cgdG8NCgkgICB1c2UgdGhlIG1vZHVsZS4NCgkgICANCgkgICBTZWUgdGhlIG5vdGUgb24gbG9jYWxpemF0aW9uIGF0IHRoZSB0b3Agb2YgdGhpcyBmaWxlLg0KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCglmdW5jdGlvbiBHZXRIZWxwKCkNCgl7DQoJCXJldHVybiAkdGhpcy0+TGFuZygnaGVscCcpOw0KCX0NCg0KCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoJICAgR2V0QXV0aG9yKCkNCgkgICBUaGlzIHJldHVybnMgYSBzdHJpbmcgdGhhdCBpcyBwcmVzZW50ZWQgaW4gdGhlIE1vZHVsZQ0KCSAgIEFkbWluIGlmIHlvdSBjbGljayBvbiB0aGUgIkFib3V0IiBsaW5rLg0KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCglmdW5jdGlvbiBHZXRBdXRob3IoKQ0KCXsNCgkJcmV0dXJuICdKYW1lcyBEaXhvbic7DQoJfQ0KDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBHZXRBdXRob3JFbWFpbCgpDQoJICAgVGhpcyByZXR1cm5zIGEgc3RyaW5nIHRoYXQgaXMgcHJlc2VudGVkIGluIHRoZSBNb2R1bGUNCgkgICBBZG1pbiBpZiB5b3UgY2xpY2sgb24gdGhlICJBYm91dCIgbGluay4gSXQgaGVscHMgdXNlcnMNCgkgICBvZiB5b3VyIG1vZHVsZSBnZXQgaW4gdG91Y2ggd2l0aCB5b3UgdG8gc2VuZCBidWcgcmVwb3J0cywNCgkgICBxdWVzdGlvbnMsIGNhc2VzIG9mIGJlZXIsIGFuZC9vciBsYXJnZSBzdW1zIG9mIG1vbmV5Lg0KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCglmdW5jdGlvbiBHZXRBdXRob3JFbWFpbCgpDQoJew0KCQlyZXR1cm4gJ2ppbS53LmRpeG9uQGdtYWlsLmNvbSc7DQoJfQ0KDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBHZXRDaGFuZ2VMb2coKQ0KCSAgIFRoaXMgcmV0dXJucyBhIHN0cmluZyB0aGF0IGlzIHByZXNlbnRlZCBpbiB0aGUgbW9kdWxlDQoJICAgQWRtaW4gaWYgeW91IGNsaWNrIG9uIHRoZSBBYm91dCBsaW5rLiBJdCBoZWxwcyB1c2Vycw0KCSAgIGZpZ3VyZSBvdXQgd2hhdCdzIGNoYW5nZWQgYmV0d2VlbiByZWxlYXNlcy4NCgkgICBTZWUgdGhlIG5vdGUgb24gbG9jYWxpemF0aW9uIGF0IHRoZSB0b3Agb2YgdGhpcyBmaWxlLg0KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCglmdW5jdGlvbiBHZXRDaGFuZ2VMb2coKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5MYW5nKCdjaGFuZ2Vsb2cnKTsNCgl9DQoNCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCSAgIElzUGx1Z2luTW9kdWxlKCkNCgkgICBUaGlzIGZ1bmN0aW9uIHJldHVybnMgdHJ1ZSBvciBmYWxzZSwgZGVwZW5kaW5nIHVwb24NCgkgICB3aGV0aGVyIHVzZXJzIGNhbiBpbmNsdWRlIHRoZSBtb2R1bGUgaW4gYSBwYWdlIG9yDQoJICAgdGVtcGxhdGUgdXNpbmcgYSBzbWFydHkgdGFnIG9mIHRoZSBmb3JtDQoJICAge2Ntc19tb2R1bGUgbW9kdWxlPSdSU1MySFRNTCcgcGFyYW0xPXZhbCBwYXJhbTI9dmFsLi4ufQ0KCSAgIA0KCSAgIElmIHlvdXIgbW9kdWxlIGRvZXMgbm90IGdldCBpbmNsdWRlZCBpbiBwYWdlcyBvcg0KCSAgIHRlbXBsYXRlcywgcmV0dXJuICJmYWxzZSIgaGVyZS4NCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJZnVuY3Rpb24gSXNQbHVnaW5Nb2R1bGUoKQ0KCXsNCgkJcmV0dXJuIHRydWU7DQoJfQ0KDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBIYXNBZG1pbigpDQoJICAgVGhpcyBmdW5jdGlvbiByZXR1cm5zIGEgYm9vbGVhbiB2YWx1ZSwgZGVwZW5kaW5nIG9uDQoJICAgd2hldGhlciB5b3VyIG1vZHVsZSBhZGRzIGFueXRoaW5nIHRvIHRoZSBBZG1pbiBhcmVhIG9mDQoJICAgdGhlIHNpdGUuIEZvciB0aGUgcmVzdCBvZiB0aGVzZSBjb21tZW50cywgSSdsbCBiZSBjYWxsaW5nDQoJICAgdGhlIGFkbWluIHBhcnQgb2YgeW91ciBtb2R1bGUgdGhlICJBZG1pbiBQYW5lbCIgZm9yDQoJICAgd2FudCBvZiBhIGJldHRlciB0ZXJtLg0KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCglmdW5jdGlvbiBIYXNBZG1pbigpDQoJew0KCQlyZXR1cm4gdHJ1ZTsNCgl9DQoNCg0KCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoJICAgR2V0QWRtaW5TZWN0aW9uKCkNCgkgICBJZiB5b3VyIG1vZHVsZSBoYXMgYW4gQWRtaW4gUGFuZWwsIHlvdSBjYW4gc3BlY2lmeQ0KCSAgIHdoaWNoIEFkbWluIFNlY3Rpb24gKG9yIHRvcC1sZXZlbCBBZG1pbiBNZW51KSBpdCBzaG93cw0KCSAgIHVwIGluLiBUaGlzIG1ldGhvZCByZXR1cm5zIGEgc3RyaW5nIHRvIHNwZWNpZnkgdGhhdA0KCSAgIHNlY3Rpb24uIFZhbGlkIHJldHVybiB2YWx1ZXMgYXJlOg0KDQoJICAgbWFpbiAgICAgICAgLSB0aGUgTWFpbiBtZW51IHRhYi4NCgkgICBjb250ZW50ICAgICAtIHRoZSBDb250ZW50IG1lbnUNCgkgICBsYXlvdXQgICAgICAtIHRoZSBMYXlvdXQgbWVudQ0KCSAgIHVzZXJzZ3JvdXBzIC0gdGhlIFVzZXJzIGFuZCBHcm91cHMgbWVudQ0KCSAgIGV4dGVuc2lvbnMgIC0gdGhlIEV4dGVuc2lvbnMgbWVudSAodGhpcyBpcyB0aGUgZGVmYXVsdCkNCgkgICBzaXRlYWRtaW4gICAtIHRoZSBTaXRlIEFkbWluIG1lbnUNCgkgICB2aWV3c2l0ZSAgICAtIHRoZSBWaWV3IFNpdGUgbWVudSB0YWINCgkgICBsb2dvdXQgICAgICAtIHRoZSBMb2dvdXQgbWVudSB0YWINCgkgICANCgkgICBOb3RlIHRoYXQgaWYgeW91IHBsYWNlIHlvdXIgbW9kdWxlIGluIHRoZSBtYWluLA0KCSAgIHZpZXdzaXRlLCBvciBsb2dvdXQgc2VjdGlvbnMsIGl0IHdpbGwgc2hvdyB1cCBpbiB0aGUNCgkgICBtZW51cywgYnV0IHdpbGwgbm90IGJlIHZpc2libGUgaW4gYW55IHRvcC1sZXZlbA0KCSAgIHNlY3Rpb24gcGFnZXMuDQoJICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KCWZ1bmN0aW9uIEdldEFkbWluU2VjdGlvbigpDQoJew0KCQlyZXR1cm4gJ2NvbnRlbnQnOw0KCX0NCg0KDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBHZXRBZG1pbkRlc2NyaXB0aW9uKCkNCgkgICBJZiB5b3VyIG1vZHVsZSBkb2VzIGhhdmUgYW4gQWRtaW4gUGFuZWwsIHlvdQ0KCSAgIGNhbiBoYXZlIGl0IHJldHVybiBhIGRlc2NyaXB0aW9uIHN0cmluZyB0aGF0IGdldHMgc2hvd24NCgkgICBpbiB0aGUgQWRtaW4gU2VjdGlvbiBwYWdlIHRoYXQgY29udGFpbnMgdGhlIG1vZHVsZS4NCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJZnVuY3Rpb24gR2V0QWRtaW5EZXNjcmlwdGlvbigpDQoJew0KCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ2FkbWluZGVzY3JpcHRpb24nKTsNCgl9DQoNCg0KCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoJICAgVmlzaWJsZVRvQWRtaW5Vc2VyKCkNCgkgICBJZiB5b3VyIG1vZHVsZSBkb2VzIGhhdmUgYW4gQWRtaW4gUGFuZWwsIHlvdQ0KCSAgIGNhbiBjb250cm9sIHdoZXRoZXIgb3Igbm90IGl0J3MgZGlzcGxheWVkIGJ5IHRoZSBib29sZWFuDQoJICAgdGhhdCBpcyByZXR1cm5lZCBieSB0aGlzIG1ldGhvZC4gVGhpcyBpcyBwcmltYXJpbHkgdXNlZA0KCSAgIHRvIGhpZGUgbW9kdWxlcyBmcm9tIGFkbWlucyB3aG8gbGFjayBwZXJtaXNzaW9uIHRvIHVzZQ0KCSAgIHRoZW0uDQoJICAgDQoJICAgVHlwaWNhbGx5LCB5b3UnbGwgdXNlIHNvbWUgcGVybWlzc2lvbiB0byBzZXQgdGhpcw0KCSAgIChlLmcuLCAkdGhpcy0+Q2hlY2tQZXJtaXNzaW9uKCdTb21lIFBlcm1pc3Npb24nKTsgKQ0KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCglmdW5jdGlvbiBWaXNpYmxlVG9BZG1pblVzZXIoKQ0KCXsNCiAgICAgICAgcmV0dXJuIHRydWU7DQoJfQ0KCQ0KDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBDaGVja0FjY2VzcygpDQoJICAgVGhpcyB3cmFwcGVyIGZ1bmN0aW9uIHdpbGwgY2hlY2sgYWdhaW5zdCB0aGUgc3BlY2lmaWVkIHBlcm1pc3Npb24sDQoJICAgYW5kIGRpc3BsYXkgYW4gZXJyb3IgcGFnZSBpZiB0aGUgdXNlciBkb2Vzbid0IGhhdmUgYWRlcXVhdGUgcGVybWlzc2lvbnMuDQoJICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KCWZ1bmN0aW9uIENoZWNrQWNjZXNzKCRwZXJtID0gJycpDQoJCXsNCgkJcmV0dXJuICR0aGlzLT5DaGVja1Blcm1pc3Npb24oJHBlcm0pOw0KCQl9DQoJDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBEaXNwbGF5RXJyb3JQYWdlKCkNCgkgICBUaGlzIGlzIGEgc2ltcGxlIGZ1bmN0aW9uIGZvciBnZW5lcmF0aW5nIGVycm9yIHBhZ2VzLg0KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCiAgICBmdW5jdGlvbiBEaXNwbGF5RXJyb3JQYWdlKCRpZCwgJiRwYXJhbXMsICRyZXR1cm5faWQsICRtZXNzYWdlPScnKQ0KICAgIHsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduKCd0aXRsZV9lcnJvcicsICR0aGlzLT5MYW5nKCdlcnJvcicpKTsNCgkJJHRoaXMtPnNtYXJ0eS0+YXNzaWduX2J5X3JlZignbWVzc2FnZScsICRtZXNzYWdlKTsNCg0KICAgICAgICAvLyBEaXNwbGF5IHRoZSBwb3B1bGF0ZWQgdGVtcGxhdGUNCiAgICAgICAgZWNobyAkdGhpcy0+UHJvY2Vzc1RlbXBsYXRlKCdlcnJvci50cGwnKTsNCiAgICB9DQoJDQoNCg0KCS8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQoJICAgR2V0RGVwZW5kZW5jaWVzKCkNCgkgICBZb3VyIG1vZHVsZSBtYXkgbmVlZCBhbm90aGVyIG1vZHVsZSB0byBhbHJlYWR5IGJlIGluc3RhbGxlZA0KCSAgIGJlZm9yZSB5b3UgY2FuIGluc3RhbGwgaXQuDQoJICAgVGhpcyBtZXRob2QgcmV0dXJucyBhIGxpc3Qgb2YgdGhvc2UgZGVwZW5kZW5jaWVzIGFuZA0KCSAgIG1pbmltdW0gdmVyc2lvbiBudW1iZXJzIHRoYXQgdGhpcyBtb2R1bGUgcmVxdWlyZXMuDQoJICAgDQoJICAgSXQgc2hvdWxkIHJldHVybiBhbiBoYXNoLCBlZy4NCgkgICByZXR1cm4gYXJyYXkoJ3NvbWVtb2R1bGUnPT4nMS4wJywgJ290aGVybW9kdWxlJz0+JzEuMScpOw0KCSAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCglmdW5jdGlvbiBHZXREZXBlbmRlbmNpZXMoKQ0KCXsNCgkJcmV0dXJuIGFycmF5KCk7DQoJfQ0KDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBNaW5pbXVtQ01TVmVyc2lvbigpDQoJICAgWW91ciBtb2R1bGUgbWF5IHJlcXVpcmUgZnVuY3Rpb25zIG9yIG9iamVjdHMgZnJvbQ0KCSAgIGEgc3BlY2lmaWMgdmVyc2lvbiBvZiBDTVMgTWFkZSBTaW1wbGUuDQoJICAgRXZlciBzaW5jZSB2ZXJzaW9uIDAuMTEsIHlvdSBjYW4gc3BlY2lmeSB3aGljaCBtaW5pbXVtDQoJICAgQ01TIE1TIHZlcnNpb24gaXMgcmVxdWlyZWQgZm9yIHlvdXIgbW9kdWxlLCB3aGljaCB3aWxsDQoJICAgcHJldmVudCBpdCBmcm9tIGJlaW5nIGluc3RhbGxlZCBieSBhIHZlcnNpb24gb2YgQ01TIHRoYXQNCgkgICBjYW4ndCBydW4gaXQuDQoJICAgDQoJICAgVGhpcyBtZXRob2QgcmV0dXJucyBhIHN0cmluZyByZXByZXNlbnRpbmcgdGhlDQoJICAgbWluaW11bSB2ZXJzaW9uIHRoYXQgdGhpcyBtb2R1bGUgcmVxdWlyZXMuDQoJICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCglmdW5jdGlvbiBNaW5pbXVtQ01TVmVyc2lvbigpDQoJew0KCQlyZXR1cm4gIjEuMCI7DQoJfQ0KDQoNCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCSAgIE1heGltdW1DTVNWZXJzaW9uKCkNCgkgICBZb3UgbWF5IHdhbnQgdG8gcHJldmVudCBwZW9wbGUgZnJvbSB1c2luZyB5b3VyIG1vZHVsZSBpbg0KCSAgIGZ1dHVyZSB2ZXJzaW9ucyBvZiBDTVMgTWFkZSBTaW1wbGUsIGVzcGVjaWFsbHkgaWYgeW91DQoJICAgdGhpbmsgQVBJIGZlYXR1cmVzIHlvdSB1c2UgbWF5IGNoYW5nZSAtLSBhZnRlciBhbGwsIHlvdQ0KCSAgIG5ldmVyIHJlYWxseSBrbm93IGhvdyB0aGUgQ01TIE1TIEFQSSBjb3VsZCBldm9sdmUuDQoJICAgDQoJICAgU28sIHRvIHByZXZlbnQgcGVvcGxlIGZyb20gZmxvb2RpbmcgeW91IHdpdGggYnVnIHJlcG9ydHMNCgkgICB3aGVuIGEgbmV3IHZlcnNpb24gb2YgQ01TIE1TIGlzIHJlbGVhc2VkLCB5b3UgY2FuIHNpbXBseQ0KCSAgIHJlc3RyaWN0IHRoZSB2ZXJzaW9uLiBUaGVuLCBvZiBjb3Vyc2UsIHRoZSBvbnVzIGlzIG9uIHlvdQ0KCSAgIHRvIHJlbGVhc2UgYSBuZXcgdmVyc2lvbiBvZiB5b3VyIG1vZHVsZSB3aGVuIGEgbmV3IHZlcnNpb24NCgkgICBvZiB0aGUgQ01TIGlzIHJlbGVhc2VkLi4uDQoJICAgDQoJICAgVGhpcyBtZXRob2QgcmV0dXJucyBhIHN0cmluZyByZXByZXNlbnRpbmcgdGhlDQoJICAgbWF4aW11bSB2ZXJzaW9uIHRoYXQgdGhpcyBtb2R1bGUgc3VwcG9ydHMuDQoJICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi8NCglmdW5jdGlvbiBNYXhpbXVtQ01TVmVyc2lvbigpDQoJew0KCQlyZXR1cm4gIjEuNi42IjsNCgl9DQoNCgkvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KCSAgIEluc3RhbGxQb3N0TWVzc2FnZSgpDQoJICAgQWZ0ZXIgaW5zdGFsbGF0aW9uLCB0aGVyZSBtYXkgYmUgdGhpbmdzIHlvdSB3YW50IHRvDQoJICAgY29tbXVuaWNhdGUgdG8geW91ciBhZG1pbi4gVGhpcyBmdW5jdGlvbiByZXR1cm5zIGENCgkgICBzdHJpbmcgd2hpY2ggd2lsbCBiZSBkaXNwbGF5ZWQuDQoJICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLw0KCWZ1bmN0aW9uIEluc3RhbGxQb3N0TWVzc2FnZSgpDQoJew0KCQlyZXR1cm4gJHRoaXMtPkxhbmcoJ3Bvc3RpbnN0YWxsJyk7DQoJfQ0KDQoJLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCgkgICBVbmluc3RhbGxQb3N0TWVzc2FnZSgpDQoJICAgQWZ0ZXIgcmVtb3ZpbmcgYSBtb2R1bGUsIHRoZXJlIG1heSBiZSB0aGluZ3MgeW91IHdhbnQgdG8NCgkgICBjb21tdW5pY2F0ZSB0byB5b3VyIGFkbWluLiBUaGlzIGZ1bmN0aW9uIHJldHVybnMgYQ0KCSAgIHN0cmluZyB3aGljaCB3aWxsIGJlIGRpc3BsYXllZC4NCgkgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovDQoJZnVuY3Rpb24gVW5pbnN0YWxsUG9zdE1lc3NhZ2UoKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5MYW5nKCdwb3N0dW5pbnN0YWxsJyk7DQoJfQ0KDQoNCg0KDQoJLyoqDQoJICogVW5pbnN0YWxsUHJlTWVzc2FnZSgpDQoJICogVGhpcyBhbGxvd3MgeW91IHRvIGRpc3BsYXkgYSBtZXNzYWdlIGFsb25nIHdpdGggYSBZZXMvTm8gZGlhbG9nIGJveC4gSWYgdGhlIHVzZXIgcmVzcG9uZHMNCgkgKiBpbiB0aGUgYWZmaXJtYXRpdmUgdG8geW91ciBtZXNzYWdlLCB0aGUgdW5pbnN0YWxsIHdpbGwgcHJvY2VlZC4gSWYgdGhleSByZXNwb25kIGluIHRoZQ0KCSAqIG5lZ2F0aXZlLCB0aGUgdW5pbnN0YWxsIHdpbGwgYmUgY2FuY2VsZWQuIFRodXMsIHlvdXIgbWVzc2FnZSBzaG91bGQgYmUgb2YgdGhlIGZvcm0NCgkgKiAiQWxsIG1vZHVsZSBkYXRhIHdpbGwgYmUgZGVsZXRlZC4gQXJlIHlvdSBzdXJlIHlvdSB3YW50IHRvIHVuaW5zdGFsbCB0aGlzIG1vZHVsZT8iDQoJICoNCgkgKiBJZiB5b3UgZG9uJ3Qgd2FudCB0aGUgZGlhbG9nLCBoYXZlIHRoaXMgbWV0aG9kIHJldHVybiBhIEZBTFNFLCB3aGljaCB3aWxsIGNhdXNlIHRoZQ0KCSAqIG1vZHVsZSB0byB1bmluc3RhbGwgaW1tZWRpYXRlbHkgaWYgdGhlIHVzZXIgY2xpY2tzIHRoZSAidW5pbnN0YWxsIiBsaW5rLg0KCSAqLw0KCWZ1bmN0aW9uIFVuaW5zdGFsbFByZU1lc3NhZ2UoKQ0KCXsNCgkJcmV0dXJuICR0aGlzLT5MYW5nKCdyZWFsbHlfdW5pbnN0YWxsJyk7DQoJfQ0KCQ0KfQ0KDQo/Pg0K]]></data>
	</file>
	<file>
	  <filename>/templates/</filename>
	  <isdir>1</isdir>
	</file>
	<file>
	  <filename>/templates/adminpanel.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGVfc2VjdGlvbn08L2gzPgo8cD5UaGlzIGlzIGNvbnRlbnQgdGhhdCBpcyBzaG93biBpbiB0aGUgQWRtaW4gUGFuZWwsIGFib3ZlIHRoZSB0YWJiZWQgaW50ZXJmYWNlIGFyZWEuPC9wPgp7JHRhYl9oZWFkZXJzfQoKeyRzdGFydF9mZWVkc190YWJ9CjxwPlRoaXMgaXMgdGhlIGNvbnRlbnRzIG9mIHRoZSBGZWVkcyB0YWIgaW4gdGhlIGFkbWluIHBhbmVsLjwvcD4KeyRlbmRfdGFifQoKeyRzdGFydF90ZW1wbGF0ZXNfdGFifQo8cD5UaGlzIGlzIHRoZSBjb250ZW50cyBvZiB0aGUgVGVtcGxhdGVzIHRhYiBpbiB0aGUgYWRtaW4gcGFuZWwuPC9wPgp7JGVuZF90YWJ9Cgp7JHN0YXJ0X3ByZWZlcmVuY2VzX3RhYn0KPHA+VGhpcyBpcyB0aGUgY29udGVudHMgb2YgdGhlIFByZWZlcmVuY2VzIHRhYiBpbiB0aGUgYWRtaW4gcGFuZWwuPC9wPgp7JGVuZF90YWJ9Cgp7JHRhYl9mb290ZXJzfQoKPHA+VGhpcyBjb250ZW50IHNob3dzIHVwIGFzIGEgZm9vdGVyIGZvciBhbGwgdGFicyBpbiB0aGUgYWRtaW4gcGFuZWwuPC9wPgo=]]></data>
	</file>
	<file>
	  <filename>/templates/editfeed.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4qeyRmZWVkbmFtZXRleHR9OjwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dGZlZWRuYW1lfTwvcD4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPip7JGZlZWR1cmx0ZXh0fTo8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRmZWVkdXJsfTwvcD4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRzdWJtaXR9eyRjYW5jZWx9PC9wPg0KCTwvZGl2Pg0KeyRlbmRmb3JtfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/editprefs.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCntsaXRlcmFsfQ0KCWRpdi5wYWdlY29udGFpbmVyIHAucGFnZXRleHQgeyB3aWR0aDogMTdlbTsgfQ0Key9saXRlcmFsfQ0KPC9zdHlsZT4NCnskc3RhcnRmb3JtfQ0KCTxoMz5DYWNoaW5nPC9oMz4NCiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskY2xlYXJ0ZXh0fTwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRjbGVhcmNhY2hlfTwvcD4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskZW5hYmxlZHRleHR9OjwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dGVuYWJsZWR9PC9wPg0KCTwvZGl2Pg0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRhZ2V0ZXh0fTo8YnIgLz57JGFnZXRleHQyfTwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dGFnZX08L3A+DQoJPC9kaXY+DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij57JGRpcnRleHR9OjwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dGRpcn08L3A+DQoJPC9kaXY+DQoJPGhyIC8+DQoJPGgzPkVuY29kaW5nPC9oMz4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskc3luY2Ntc2VuY29kaW5ndGV4dH08L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRzeW5jY21zZW5jb2Rpbmd9PC9wPg0KCTwvZGl2Pg0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQoJCTxwIGNsYXNzPSJwYWdldGV4dCI+eyRvdXRwdXRlbmNvZGluZ3RleHR9OjwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dG91dHB1dGVuY29kaW5nfTwvcD4NCgk8L2Rpdj4NCgk8aHIgLz4NCiAgICA8aDM+UHJveHk8L2gzPg0KICAgIDxwPklmIHlvdSBhcmUgaGF2aW5nIHRyb3VibGUgY29ubmVjdGluZyB0byBhIGZlZWQgdGhhdCBpcyBrbm93biB0byBiZSB2YWxpZCwgeW91IG1heSBiZSBiZWhpbmQgYSBwcm94eSBhbmQgdGhlcmVmb3JlIHdpbGwgbmVlZCB0byBlbnRlciB5b3VyIHByb3h5IGluZm9ybWF0aW9uIGluIG9yZGVyIHRvIGNvbm5lY3Qgc3VjY2Vzc2Z1bGx5LjwvcD4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskZW5hYmxlcHJveHl0ZXh0fTwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dGVuYWJsZXByb3h5fTwvcD4NCgk8L2Rpdj4NCiAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskcHJveHlob3N0dGV4dH08L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRwcm94eWhvc3R9PC9wPg0KCTwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskcHJveHlwb3J0dGV4dH08L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXRwcm94eXBvcnR9PC9wPg0KCTwvZGl2Pg0KICAgIDxociAvPg0KCTxoMz5NaXNjZWxsYW5lb3VzPC9oMz4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPnskZGVidWd0ZXh0fTwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRpbnB1dGRlYnVnfTwvcD4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRzdWJtaXR9eyRjYW5jZWx9PC9wPg0KCTwvZGl2Pg0KeyRlbmRmb3JtfQ0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0Ke2xpdGVyYWx9DQoJZnVuY3Rpb24gdG9nZ2xlRW5jb2RpbmcoKQ0KCXsNCgkJaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtMV9zeW5jY21zZW5jb2RpbmcnKS5jaGVja2VkKSANCgkJew0KCQkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ20xX291dHB1dGVuY29kaW5nJykuZGlzYWJsZWQgPSB0cnVlOw0KCQl9DQoJCWVsc2UNCgkJew0KCQkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ20xX291dHB1dGVuY29kaW5nJykuZGlzYWJsZWQgPSBmYWxzZTsNCgkJfQ0KCX0NCgkNCgl0b2dnbGVFbmNvZGluZygpOw0KCQ0KCWZ1bmN0aW9uIHRvZ2dsZVByb3h5KCkNCgl7DQoJCWlmIChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbTFfZW5hYmxlcHJveHknKS5jaGVja2VkKSANCgkJew0KCQkJZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ20xX3Byb3h5aG9zdCcpLmRpc2FibGVkID0gZmFsc2U7DQoJCQlkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbTFfcHJveHlwb3J0JykuZGlzYWJsZWQgPSBmYWxzZTsNCgkJfQ0KCQllbHNlDQoJCXsNCgkJCWRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdtMV9wcm94eWhvc3QnKS5kaXNhYmxlZCA9IHRydWU7DQoJCQlkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnbTFfcHJveHlwb3J0JykuZGlzYWJsZWQgPSB0cnVlOw0KCQl9DQoJfQ0KCQ0KCXRvZ2dsZVByb3h5KCk7DQp7L2xpdGVyYWx9DQo8L3NjcmlwdD4=]]></data>
	</file>
	<file>
	  <filename>/templates/edittemplate.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[eyRzdGFydGZvcm19DQoJPGRpdiBjbGFzcz0icGFnZW92ZXJmbG93Ij4NCgkJPHAgY2xhc3M9InBhZ2V0ZXh0Ij4qeyR0ZW1wbGF0ZW5hbWV0ZXh0fTo8L3A+DQoJCTxwIGNsYXNzPSJwYWdlaW5wdXQiPnskaW5wdXR0ZW1wbGF0ZW5hbWV9PC9wPg0KCTwvZGl2Pg0KCQk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8ZGl2IHN0eWxlPSJ3aWR0aDogNjAwcHg7IHBhZGRpbmctbGVmdDogMTcxcHgiPnskdGVtcGxhdGVoZWxwfTwvZGl2Pg0KCTwvZGl2Pg0KCTxkaXYgY2xhc3M9InBhZ2VvdmVyZmxvdyI+DQoJCTxwIGNsYXNzPSJwYWdldGV4dCI+KnskdGVtcGxhdGVjb250ZW50dGV4dH06PC9wPg0KCQk8cCBjbGFzcz0icGFnZWlucHV0Ij57JGlucHV0dGVtcGxhdGVjb250ZW50fTwvcD4NCgk8L2Rpdj4NCgk8ZGl2IGNsYXNzPSJwYWdlb3ZlcmZsb3ciPg0KCQk8cCBjbGFzcz0icGFnZXRleHQiPiZuYnNwOzwvcD4NCgkJPHAgY2xhc3M9InBhZ2VpbnB1dCI+eyRoaWRkZW59eyRzdWJtaXR9eyRjYW5jZWx9PC9wPg0KCTwvZGl2Pg0KeyRlbmRmb3JtfQ==]]></data>
	</file>
	<file>
	  <filename>/templates/error.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGgzPnskdGl0bGVfZXJyb3J9PC9oMz4Ke2lmICRtZXNzYWdlIT0nJ308cD57JG1lc3NhZ2V9PC9wPnsvaWZ9]]></data>
	</file>
	<file>
	  <filename>/templates/feedlist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW9wdGlvbnMiPg0KCTxwIGNsYXNzPSJwYWdlb3B0aW9ucyI+eyRhZGRsaW5rfTwvcD4NCjwvZGl2Pg0KDQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPg0KCTx0aGVhZD4NCgkJPHRyPg0KCQkJPHRoPnskZmVlZGlkdGV4dH08L3RoPg0KCQkJPHRoPnskZmVlZG5hbWV0ZXh0fTwvdGg+DQogICAgICAgICAgICA8dGg+eyRmZWVkdXJsdGV4dH08L3RoPg0KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4NCgkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+DQoJCTwvdHI+DQoJPC90aGVhZD4NCgk8dGJvZHk+DQoJe2lmICRmZWVkX2NvdW50IGxlIDB9DQoJCTx0ciBjbGFzcz0icm93MSI+DQoJCQk8dGQgY29sc3Bhbj0iNSI+Tm8gRmVlZHMgQXZhaWxhYmxlPC90ZD4NCgkJPC90cj4NCgl7L2lmfQ0KCXtmb3JlYWNoIGZyb209JGZlZWRzIGl0ZW09ZmVlZH0NCgkJPHRyIGNsYXNzPSJ7Y3ljbGUgdmFsdWVzPSdyb3cxLCByb3cyJ30iIG9ubW91c2VvdmVyPSJ0aGlzLmNsYXNzTmFtZT0ne2N5Y2xlIHZhbHVlcz0ncm93MSwgcm93Mid9aG92ZXInOyIgb25tb3VzZW91dD0idGhpcy5jbGFzc05hbWU9J3tjeWNsZSB2YWx1ZXM9J3JvdzEsIHJvdzInfSc7Ij4NCgkJCTx0ZD57JGZlZWQtPmlkfTwvdGQ+DQoJCQk8dGQ+eyRmZWVkLT5uYW1lfTwvdGQ+DQogICAgICAgICAgICA8dGQ+eyRmZWVkLT51cmx9PC90ZD4NCgkJCTx0ZD57JGZlZWQtPmVkaXRsaW5rfTwvdGQ+DQoJCQk8dGQ+eyRmZWVkLT5kZWxldGVsaW5rfTwvdGQ+DQoJCTwvdHI+DQoJey9mb3JlYWNofQ0KCTwvdGJvZHk+DQo8L3RhYmxlPg0KDQo8ZGl2IGNsYXNzPSJwYWdlb3B0aW9ucyI+DQoJPHAgY2xhc3M9InBhZ2VvcHRpb25zIj57JGFkZGxpbmt9PC9wPg0KPC9kaXY+]]></data>
	</file>
	<file>
	  <filename>/templates/templatelist.tpl</filename>
	  <isdir>0</isdir>
	  <data><![CDATA[PGRpdiBjbGFzcz0icGFnZW9wdGlvbnMiPg0KCTxwIGNsYXNzPSJwYWdlb3B0aW9ucyI+eyRhZGRsaW5rfTwvcD4NCjwvZGl2Pg0KDQo8dGFibGUgY2VsbHNwYWNpbmc9IjAiIGNsYXNzPSJwYWdldGFibGUiPg0KCTx0aGVhZD4NCgkJPHRyPg0KCQkJPHRoPnskdGVtcGxhdGVuYW1ldGV4dH08L3RoPg0KCQkJPHRoIGNsYXNzPSJwYWdlaWNvbiI+Jm5ic3A7PC90aD4NCgkJCTx0aCBjbGFzcz0icGFnZWljb24iPiZuYnNwOzwvdGg+DQoJCTwvdHI+DQoJPC90aGVhZD4NCgk8dGJvZHk+DQoJe2lmICR0ZW1wbGF0ZV9jb3VudCBsZSAwfQ0KCQk8dHIgY2xhc3M9InJvdzEiPg0KCQkJPHRkIGNvbHNwYW49IjQiPk5vIFRlbXBsYXRlcyBBdmFpbGFibGU8L3RkPg0KCQk8L3RyPg0KCXsvaWZ9DQoJe2ZvcmVhY2ggZnJvbT0kdGVtcGxhdGVzIGl0ZW09dGVtcGxhdGV9DQoJCTx0ciBjbGFzcz0ie2N5Y2xlIHZhbHVlcz0ncm93MSwgcm93Mid9IiBvbm1vdXNlb3Zlcj0idGhpcy5jbGFzc05hbWU9J3tjeWNsZSB2YWx1ZXM9J3JvdzEsIHJvdzInfWhvdmVyJzsiIG9ubW91c2VvdXQ9InRoaXMuY2xhc3NOYW1lPSd7Y3ljbGUgdmFsdWVzPSdyb3cxLCByb3cyJ30nOyI+DQoJCQk8dGQ+eyR0ZW1wbGF0ZS0+bmFtZX08L3RkPg0KCQkJPHRkPnskdGVtcGxhdGUtPmVkaXRsaW5rfTwvdGQ+DQoJCQk8dGQ+eyR0ZW1wbGF0ZS0+ZGVsZXRlbGlua308L3RkPg0KCQk8L3RyPg0KCXsvZm9yZWFjaH0NCgk8L3Rib2R5Pg0KPC90YWJsZT4NCg0KPGRpdiBjbGFzcz0icGFnZW9wdGlvbnMiPg0KCTxwIGNsYXNzPSJwYWdlb3B0aW9ucyI+eyRhZGRsaW5rfTwvcD4NCjwvZGl2Pg==]]></data>
	</file>
</module>
